[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

gEDA-cvs: gaf.git: branch: master updated (1.5.0-20080706-305-g626cf78)



The branch, master has been updated
       via  626cf786f28b1c8f5f7727f30576947de1e30509 (commit)
       via  1d9a97190ebf91c11ae29bbab69c4871033f92bb (commit)
       via  27fc407b656e2996e31922be1352eea21de85422 (commit)
       via  75f53b0b7a1a2859a604b70dfecc6a439b8b57da (commit)
      from  4cb7cfe82698bb20f0afc92bb354415143ec4a8c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


=========
 Summary
=========

 gschem/src/i_callbacks.c                     |   79 +--
 gschem/tests/alignment.sch                   |  864 ++++++++++------
 libgeda/docs/images/Makefile                 |    4 +-
 libgeda/docs/images/o_text_font_overview.svg |  544 ++++++++++
 libgeda/docs/images/o_text_text_overview.svg | 1463 ++++++++++++++++++++++++++
 libgeda/src/o_text_basic.c                   |  564 +++++-----
 6 files changed, 2835 insertions(+), 683 deletions(-)
 create mode 100644 libgeda/docs/images/o_text_font_overview.svg
 create mode 100644 libgeda/docs/images/o_text_text_overview.svg


=================
 Commit Messages
=================

commit 626cf786f28b1c8f5f7727f30576947de1e30509
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Thu Nov 13 23:17:00 2008 +0100

    doxygen: libgeda text and and font documentation
    
    Added some more detailed description and pictures to the
    o_text_basic.c file.

:100644 100644 20caf89... e076528... M	libgeda/docs/images/Makefile
:000000 100644 0000000... e85aaf1... A	libgeda/docs/images/o_text_font_overview.svg
:000000 100644 0000000... cfe0818... A	libgeda/docs/images/o_text_text_overview.svg
:100644 100644 4e66dc0... 856e114... M	libgeda/src/o_text_basic.c

commit 1d9a97190ebf91c11ae29bbab69c4871033f92bb
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Sun Nov 9 18:23:04 2008 +0100

    libgeda: rewrote parts of o_text_create_string [#2247421]
    
    Fixed the text overbar issue if the negation line spans over
    more than one line:
      \_negation line
      with newline\_
    
    Rewrote the logic of the function, splitted it into a state
    machine part and an exectution part.
    
    It's much easier now to follow the meaning of the code, now.

:100644 100644 8821d03... 4e66dc0... M	libgeda/src/o_text_basic.c

commit 27fc407b656e2996e31922be1352eea21de85422
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Sun Nov 9 18:21:09 2008 +0100

    updated text and alignment test schematic
    
    Added all kinds of overbar and tabulator tests.
    Use multiline text for all alignment tests.

:100644 100644 71419bc... f6223ac... M	gschem/tests/alignment.sch

commit 75f53b0b7a1a2859a604b70dfecc6a439b8b57da
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Wed Oct 29 22:37:13 2008 +0100

    gschem: replaced fnameext* functions with glib functions
    
    Removed the functions fnameext_get, fnameext_remove and fnameext_add.

:100644 100644 c280201... 52c630d... M	gschem/src/i_callbacks.c

=========
 Changes
=========

commit 626cf786f28b1c8f5f7727f30576947de1e30509
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Thu Nov 13 23:17:00 2008 +0100

    doxygen: libgeda text and and font documentation
    
    Added some more detailed description and pictures to the
    o_text_basic.c file.

diff --git a/libgeda/docs/images/Makefile b/libgeda/docs/images/Makefile
index 20caf89..e076528 100644
--- a/libgeda/docs/images/Makefile
+++ b/libgeda/docs/images/Makefile
@@ -1,7 +1,9 @@
 
 svg_images = \
 	s_conn_overview.svg \
-	s_tile_overview.svg
+	s_tile_overview.svg \
+	o_text_font_overview.svg \
+	o_text_text_overview.svg
 
 
 png_images = $(patsubst %.svg, %.png, $(svg_images))
diff --git a/libgeda/docs/images/o_text_font_overview.svg b/libgeda/docs/images/o_text_font_overview.svg
new file mode 100644
index 0000000..e85aaf1
--- /dev/null
+++ b/libgeda/docs/images/o_text_font_overview.svg
@@ -0,0 +1,544 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="600"
+   height="200"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="o_text_font_overview.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="Arrow1Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Mend"
+       style="overflow:visible">
+      <path
+         id="path3406"
+         d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="matrix(-0.4,0,0,-0.4,-4,0)" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       id="perspective6425"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       sodipodi:type="inkscape:persp3d" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#c0c0c0"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.715"
+     inkscape:cx="184.2311"
+     inkscape:cy="56.240633"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1197"
+     inkscape:window-height="879"
+     inkscape:window-x="1280"
+     inkscape:window-y="96"
+     showborder="true"
+     inkscape:showpageshadow="false"
+     inkscape:snap-global="false"
+     showguides="true"
+     inkscape:guide-bbox="true">
+    <inkscape:grid
+       type="xygrid"
+       id="grid11127"
+       visible="true"
+       enabled="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Ebene 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect3363"
+       width="620.66296"
+       height="219.65079"
+       x="-9.9625845"
+       y="-11.477481" />
+    <text
+       xml:space="preserve"
+       style="font-size:13.15679836px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="-81.490654"
+       y="67.002098"
+       id="text3175"
+       transform="matrix(0.4084879,-0.9127637,0.9127637,0.4084879,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan3177"
+         x="-81.490654"
+         y="67.002098">basic lines</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203995px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="201.45422"
+       y="48.469925"
+       id="text3199"><tspan
+         sodipodi:role="line"
+         x="201.45422"
+         y="48.469925"
+         id="tspan3209" /></text>
+    <path
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M -61.032455,-2.6070407 L -2.3474025,-2.6070407 L -2.3474025,-53.076186"
+       id="path2579"
+       sodipodi:nodetypes="ccc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3357"
+       d="M 663.66426,204.59257 L 604.97921,204.59257 L 604.97921,255.06171"
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 661.16048,-2.1669001 L 602.47543,-2.1669001 L 602.47543,-52.63605"
+       id="path3359"
+       sodipodi:nodetypes="ccc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3361"
+       d="M 0.4497956,264.15791 L 0.4497956,205.47285 L -50.019343,205.47285"
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <g
+       id="g2519"
+       transform="translate(-179.42696,63.468433)">
+      <rect
+         y="45.505901"
+         x="268.63367"
+         height="74.912155"
+         width="139.16444"
+         id="rect3211"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.28850329;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <text
+         id="text2501"
+         y="57.838566"
+         x="271.61014"
+         style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+         xml:space="preserve"><tspan
+           y="57.838566"
+           x="271.61014"
+           id="tspan2503"
+           sodipodi:role="line">v 20031231 1</tspan><tspan
+           id="tspan2505"
+           y="72.838562"
+           x="271.61014"
+           sodipodi:role="line">F A 29</tspan><tspan
+           id="tspan2507"
+           y="87.838562"
+           x="271.61014"
+           sodipodi:role="line">L 0 0 10 26 3 0 0 0 -1 -1</tspan><tspan
+           id="tspan2509"
+           y="102.83856"
+           x="271.61014"
+           sodipodi:role="line">L 10 26 20 0 3 0 0 0 -1 -1</tspan><tspan
+           id="tspan2511"
+           y="117.83856"
+           x="271.61014"
+           sodipodi:role="line">L 4 10 16 10 3 0 0 0 -1 -1</tspan><tspan
+           id="tspan2513"
+           y="132.83856"
+           x="271.61014"
+           sodipodi:role="line" /></text>
+    </g>
+    <rect
+       style="fill:#cccccc;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.28900003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2828"
+       width="0"
+       height="26"
+       x="23.74456"
+       y="1139.9318"
+       transform="matrix(0,-1,1,0,0,0)" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4186"
+       d="M 134.84497,67.837763 C 134.07292,87.612363 163.84102,70.657093 163.80492,105.46387"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       y="25.10778"
+       x="67.542603"
+       height="44.739956"
+       width="49.902256"
+       id="rect11071"
+       style="fill:#feff93;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.28900003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <text
+       id="text11073"
+       y="44.036217"
+       x="127.7695"
+       style="font-size:20.64921188px;font-style:normal;font-weight:normal;fill:#ff0000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;font-family:Bitstream Vera Sans"
+       xml:space="preserve"><tspan
+         y="44.036217"
+         x="127.7695"
+         id="tspan11075"
+         sodipodi:role="line">A</tspan></text>
+    <text
+       id="text11077"
+       y="66.406059"
+       x="127.7695"
+       style="font-size:20.64921188px;font-style:normal;font-weight:normal;fill:#ff0000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;font-family:Bitstream Vera Sans"
+       xml:space="preserve"><tspan
+         y="66.406059"
+         x="127.7695"
+         id="tspan11079"
+         sodipodi:role="line">A.sym</tspan></text>
+    <path
+       sodipodi:nodetypes="cc"
+       id="path11081"
+       d="M 67.542632,69.847653 L 84.750522,25.107713"
+       style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:1.7207675px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path11083"
+       d="M 84.750522,25.107713 L 101.95812,69.847653"
+       style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:1.7207675px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path11085"
+       d="M 74.425902,52.639993 L 95.075142,52.639993"
+       style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:1.7207675px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 108.29702,128.6411 C 107.93569,96.347413 121.13812,64.130673 130.12805,46.626363"
+       id="path11087"
+       sodipodi:nodetypes="cz" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path11089"
+       d="M 43.199002,74.607173 C 53.044082,62.883013 43.008762,49.339243 75.579512,39.593383"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 40.711712,78.295203 C 58.190162,49.588943 66.680762,84.332643 80.725602,55.374723"
+       id="path11091"
+       sodipodi:nodetypes="cz" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path11093"
+       d="M 91.658002,163.11991 C 22.050652,151.51569 11.036282,66.365233 86.900912,43.367183"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 67.242222,69.794533 C 67.756832,77.513663 88.341192,75.112153 88.341192,75.112153 L 89.370402,81.287463 L 90.742692,75.112153 C 90.742692,75.112153 113.72856,78.714423 116.98775,70.652213"
+       id="path11103"
+       sodipodi:nodetypes="ccccs" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path11105"
+       d="M 113.78618,136.87484 C 66.766982,146.95061 67.447262,120.0515 88.101662,83.506663"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="-94.891174"
+       y="109.30846"
+       id="text11107"
+       transform="matrix(0.3761066,-0.9265764,0.9265764,0.3761066,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan11109"
+         x="-94.891174"
+         y="109.30846">char width</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="143.40433"
+       y="78.371346"
+       id="text11111"><tspan
+         sodipodi:role="line"
+         id="tspan11113"
+         x="143.40433"
+         y="78.371346">font</tspan><tspan
+         sodipodi:role="line"
+         x="143.40433"
+         y="93.371346"
+         id="tspan11115">file</tspan></text>
+    <rect
+       y="91.452408"
+       x="498.17795"
+       height="57.969727"
+       width="64.658539"
+       id="rect11145"
+       style="fill:#ffeeaa;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.28900003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       y="91.233742"
+       x="440.00745"
+       height="57.969727"
+       width="57.969727"
+       id="rect11153"
+       style="fill:#ffdd55;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.28900003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       y="91.233627"
+       x="374.6409"
+       height="57.969727"
+       width="64.658539"
+       id="rect11206"
+       style="fill:#ffeeaa;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.28900003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       y="91.212288"
+       x="320.24371"
+       height="57.969727"
+       width="53.510521"
+       id="rect11223"
+       style="fill:#ffdd55;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.28900003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000080;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 318.96169,75.830831 L 588.19422,75.830831"
+       id="path11403"
+       sodipodi:nodetypes="cc" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path11405"
+       d="M 320.01064,113.33084 L 588.6887,113.33084"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000080;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000080;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 298.33232,149.8693 L 590.17214,149.8693"
+       id="path11407"
+       sodipodi:nodetypes="cc" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path11409"
+       d="M 319.66099,162.80637 L 590.17214,162.80637"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000080;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000080;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 298.33232,91.128035 L 588.19422,91.128035"
+       id="path11411"
+       sodipodi:nodetypes="cc" />
+    <g
+       id="g11373"
+       transform="translate(-10.758584,19.911251)">
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 508.93641,129.51083 L 531.23273,71.541108"
+         id="path11147"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 531.23273,71.541108 L 553.52869,129.51083"
+         id="path11149"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 517.85508,107.21479 L 544.61037,107.21479"
+         id="path11151"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 450.76598,129.2921 L 477.52128,129.2921"
+         id="path11155"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 477.52128,129.2921 L 490.89892,120.37368"
+         id="path11157"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 490.89892,120.37368 L 495.35826,106.99603"
+         id="path11159"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 495.35826,106.99603 L 495.35826,93.618415"
+         id="path11161"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 495.35826,93.618415 L 490.89892,80.240766"
+         id="path11163"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 490.89892,80.240766 L 477.52128,71.322381"
+         id="path11165"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 477.52128,71.322381 L 450.76598,71.322381"
+         id="path11167"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#feff93;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 450.76598,71.322381 L 450.76598,129.2921"
+         id="path11169"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 425.53263,129.29207 L 385.39968,129.29207"
+         id="path11208"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 385.39968,129.29207 L 385.39968,71.322353"
+         id="path11210"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 385.39968,71.322353 L 425.53263,71.322353"
+         id="path11212"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 385.39968,98.077616 L 416.61431,98.077616"
+         id="path11214"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 335.46143,138.18912 L 339.92076,142.64831"
+         id="path11225"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 339.92076,142.64831 L 353.29841,142.64831"
+         id="path11227"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 353.29841,142.64831 L 362.21673,138.18912"
+         id="path11229"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 362.21673,138.18912 L 362.21673,93.597012"
+         id="path11231"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 362.21673,124.81147 L 353.29841,129.2707"
+         id="path11233"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 353.29841,129.2707 L 344.3801,129.2707"
+         id="path11235"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 344.3801,129.2707 L 335.46143,124.81147"
+         id="path11237"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 335.46143,124.81147 L 331.00245,115.89308"
+         id="path11239"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 331.00245,115.89308 L 331.00245,106.97463"
+         id="path11241"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 331.00245,106.97463 L 335.46143,98.056205"
+         id="path11243"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 335.46143,98.056205 L 344.3801,93.597012"
+         id="path11245"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 344.3801,93.597012 L 353.29841,93.597012"
+         id="path11247"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.22960496px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 353.29841,93.597012 L 362.21673,98.056205"
+         id="path11249"
+         sodipodi:nodetypes="cc" />
+    </g>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="289.24146"
+       y="153.36578"
+       id="text11413"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan11415"
+         x="289.24146"
+         y="153.36578">0</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="306.02466"
+       y="167.70146"
+       id="text11417"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan11419"
+         x="306.02466"
+         y="167.70146">-6</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="302.52814"
+       y="117.70147"
+       id="text11421"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan11423"
+         x="302.52814"
+         y="117.70147">16</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="283.29736"
+       y="95.673477"
+       id="text11425"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan11427"
+         x="283.29736"
+         y="95.673477">26</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="304.2764"
+       y="79.239922"
+       id="text11429"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan11431"
+         x="304.2764"
+         y="79.239922">32</tspan></text>
+  </g>
+</svg>
diff --git a/libgeda/docs/images/o_text_text_overview.svg b/libgeda/docs/images/o_text_text_overview.svg
new file mode 100644
index 0000000..cfe0818
--- /dev/null
+++ b/libgeda/docs/images/o_text_text_overview.svg
@@ -0,0 +1,1463 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="600"
+   height="200"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="o_text_text_overview.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="Arrow1Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Mend"
+       style="overflow:visible">
+      <path
+         id="path3406"
+         d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="matrix(-0.4,0,0,-0.4,-4,0)" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       id="perspective6425"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective2517"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective2672"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       sodipodi:type="inkscape:persp3d" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#c0c0c0"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.0223254"
+     inkscape:cx="192.50133"
+     inkscape:cy="64.742376"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1197"
+     inkscape:window-height="879"
+     inkscape:window-x="1280"
+     inkscape:window-y="96"
+     showborder="true"
+     inkscape:showpageshadow="false"
+     inkscape:snap-global="false"
+     showguides="true"
+     inkscape:guide-bbox="true">
+    <inkscape:grid
+       type="xygrid"
+       id="grid11127"
+       visible="true"
+       enabled="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Ebene 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect3363"
+       width="620.66296"
+       height="219.65079"
+       x="-9.9625845"
+       y="-7.2816706" />
+    <rect
+       style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.19177949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect6063"
+       width="210.58673"
+       height="86.810509"
+       x="21.813946"
+       y="106.60504" />
+    <text
+       xml:space="preserve"
+       style="font-size:13.15679455px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="200.19473"
+       y="11.958162"
+       id="text3175"
+       transform="matrix(0.9999977,2.1264989e-3,-2.1264989e-3,0.9999977,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan3177"
+         x="200.19473"
+         y="11.958162">gEDA file format</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203995px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="201.45422"
+       y="48.469925"
+       id="text3199"><tspan
+         sodipodi:role="line"
+         x="201.45422"
+         y="48.469925"
+         id="tspan3209" /></text>
+    <path
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M -61.032455,-2.6070407 L -2.3474025,-2.6070407 L -2.3474025,-53.076186"
+       id="path2579"
+       sodipodi:nodetypes="ccc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3357"
+       d="M 663.66426,204.59257 L 604.97921,204.59257 L 604.97921,255.06171"
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 661.16048,-2.1669001 L 602.47543,-2.1669001 L 602.47543,-52.63605"
+       id="path3359"
+       sodipodi:nodetypes="ccc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3361"
+       d="M 0.4497956,264.15791 L 0.4497956,205.47285 L -50.019343,205.47285"
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <g
+       id="g2519"
+       transform="translate(-17.160086,55.656144)">
+      <rect
+         y="-37.519444"
+         x="215.27713"
+         height="79.762283"
+         width="222.14243"
+         id="rect3211"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.38318443;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <text
+         id="text2501"
+         y="-24.069031"
+         x="218.0766"
+         style="font-size:11.85688591px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Courier New;-inkscape-font-specification:Courier New"
+         xml:space="preserve"
+         sodipodi:linespacing="125%"><tspan
+           id="tspan2513"
+           y="-24.069031"
+           x="218.0766"
+           sodipodi:role="line">T 43200 44100 9 10 1 0 0 0 2</tspan><tspan
+           y="-9.2479239"
+           x="218.0766"
+           sodipodi:role="line"
+           id="tspan2480">Text with \_overbar\_</tspan><tspan
+           y="5.573184"
+           x="218.0766"
+           sodipodi:role="line"
+           id="tspan2482">...     and tabulator</tspan><tspan
+           y="20.394291"
+           x="218.0766"
+           sodipodi:role="line"
+           id="tspan2484">T 43200 43800 9 10 1 1 0 0 1</tspan><tspan
+           y="35.215401"
+           x="218.0766"
+           sodipodi:role="line"
+           id="tspan2486">attribute_name=attribute_value</tspan><tspan
+           y="50.036507"
+           x="218.0766"
+           sodipodi:role="line"
+           id="tspan2488" /></text>
+    </g>
+    <rect
+       style="fill:#cccccc;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.28900003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2828"
+       width="0"
+       height="26"
+       x="23.74456"
+       y="1139.9318"
+       transform="matrix(0,-1,1,0,0,0)" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 428.35996,59.383428 C 457.72015,64.915002 470.05495,77.626385 484.06478,101.17715"
+       id="path11087"
+       sodipodi:nodetypes="cz"
+       inkscape:transform-center-x="246.15385" />
+    <rect
+       style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.08677149;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect6083"
+       width="140.06236"
+       height="81.186577"
+       x="438.62952"
+       y="105.44359" />
+    <g
+       id="g6075"
+       transform="translate(153.00629,-8.6958243)">
+      <path
+         d="M 355.98558,120.98975 L 401.42391,120.98975"
+         style="fill:none;stroke:#000000;stroke-width:1.34049296;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path2553" />
+      <g
+         id="g2555"
+         transform="matrix(0,2.144329,2.144329,0,-92.200628,-614.00474)">
+        <text
+           transform="matrix(0,1,1,0,349.014,182.263)"
+           id="text2557">
+          <tspan
+             style="font-size:6.25133991px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Helvetica;-inkscape-font-specification:Helvetica"
+             x="0 3.8195686 7.2953138 10.420983 12.158856 13.896729 18.410196 19.797995 21.535866 25.011612 26.749483 30.225229 33.350899 36.826645 38.90834 42.384087 45.859829"
+             y="0"
+             sodipodi:role="line"
+             id="tspan2559">Text with overbar</tspan>
+          <tspan
+             style="font-size:6.25133991px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Helvetica;-inkscape-font-specification:Helvetica"
+             x="0 1.7378725 3.475745 5.2136173 17.378725 20.854469 24.330215 27.80596 29.543833 31.281706 34.75745 38.233196 41.708939 43.096737 46.572483 48.310356 51.786102"
+             y="11.7023"
+             sodipodi:role="line"
+             id="tspan2561">... and tabulator</tspan>
+          <tspan
+             style="font-size:6.25133991px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Helvetica;-inkscape-font-specification:Helvetica"
+             x="0 3.475745 5.2136173 6.9514899 9.033186 10.420983 13.896729 17.372475 19.110346 22.586092 26.061836 29.187506 32.66325 34.051048 37.526794"
+             y="25.2054"
+             sodipodi:role="line"
+             id="tspan2563">attribute_value</tspan>
+        </text>
+      </g>
+    </g>
+    <g
+       id="g5770"
+       transform="translate(12.072347,-10.129567)">
+      <path
+         d="M 19.579875,127.83188 L 19.579875,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3086" />
+      <path
+         d="M 23.922141,127.83188 L 15.235464,127.83188"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3088" />
+      <path
+         d="M 31.161396,140.37835 L 33.091292,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3090" />
+      <path
+         d="M 29.229355,140.37835 L 31.161396,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3092" />
+      <path
+         d="M 27.299459,139.4134 L 29.229355,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3094" />
+      <path
+         d="M 26.334511,137.48351 L 27.299459,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3096" />
+      <path
+         d="M 26.334511,135.55361 L 26.334511,137.48351"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3098" />
+      <path
+         d="M 27.299459,133.62157 L 26.334511,135.55361"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3100" />
+      <path
+         d="M 29.229355,132.65662 L 27.299459,133.62157"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3102" />
+      <path
+         d="M 31.161396,132.65662 L 29.229355,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3104" />
+      <path
+         d="M 33.091292,133.62157 L 31.161396,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3106" />
+      <path
+         d="M 34.05624,136.51856 L 26.334511,136.51856"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3108" />
+      <path
+         d="M 34.05624,135.55361 L 34.05624,136.51856"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3110" />
+      <path
+         d="M 33.091292,133.62157 L 34.05624,135.55361"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3112" />
+      <path
+         d="M 42.742917,132.65662 L 35.986136,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3114" />
+      <path
+         d="M 42.742917,140.37835 L 35.986136,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3116" />
+      <path
+         d="M 49.015079,131.69168 L 45.155287,131.69168"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3118" />
+      <path
+         d="M 47.085183,139.4134 L 47.085183,127.83188"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3120" />
+      <path
+         d="M 48.050131,140.37835 L 47.085183,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3122" />
+      <path
+         d="M 49.015079,140.37835 L 48.050131,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3124" />
+      <path
+         d="M 59.151322,140.37835 L 56.254334,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3126" />
+      <path
+         d="M 62.046166,132.65662 L 59.151322,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3128" />
+      <path
+         d="M 64.941011,140.37835 L 62.046166,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3130" />
+      <path
+         d="M 67.835855,132.65662 L 64.941011,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3132" />
+      <path
+         d="M 70.732843,132.65662 L 70.732843,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3134" />
+      <path
+         d="M 70.732843,129.76178 L 70.732843,130.24425"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3136" />
+      <path
+         d="M 77.48748,131.69168 L 73.627687,131.69168"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3138" />
+      <path
+         d="M 75.557583,139.4134 L 75.557583,127.83188"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3140" />
+      <path
+         d="M 76.522531,140.37835 L 75.557583,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3142" />
+      <path
+         d="M 77.48748,140.37835 L 76.522531,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3144" />
+      <path
+         d="M 79.41952,127.83188 L 79.41952,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3146" />
+      <path
+         d="M 81.349416,132.65662 L 79.41952,133.62157"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3148" />
+      <path
+         d="M 84.24426,132.65662 L 81.349416,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3150" />
+      <path
+         d="M 86.174156,134.58652 L 84.24426,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3152" />
+      <path
+         d="M 86.174156,140.37835 L 86.174156,134.58652"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3154" />
+      <path
+         d="M 95.343307,139.4134 L 97.273203,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3156" />
+      <path
+         d="M 94.378359,137.48351 L 95.343307,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3158" />
+      <path
+         d="M 94.378359,135.55361 L 94.378359,137.48351"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3160" />
+      <path
+         d="M 95.343307,133.62157 L 94.378359,135.55361"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3162" />
+      <path
+         d="M 97.273203,132.65662 L 95.343307,133.62157"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3164" />
+      <path
+         d="M 98.238151,132.65662 L 97.273203,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3166" />
+      <path
+         d="M 100.16805,133.62157 L 98.238151,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3168" />
+      <path
+         d="M 101.133,135.55361 L 100.16805,133.62157"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3170" />
+      <path
+         d="M 101.133,137.48351 L 101.133,135.55361"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3172" />
+      <path
+         d="M 100.16805,139.4134 L 101.133,137.48351"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3174" />
+      <path
+         d="M 98.238151,140.37835 L 100.16805,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3176" />
+      <path
+         d="M 97.273203,140.37835 L 98.238151,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3178" />
+      <path
+         d="M 107.88978,140.37835 L 104.02998,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3180" />
+      <path
+         d="M 111.75171,132.65662 L 107.88978,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3182" />
+      <path
+         d="M 118.50635,140.37835 L 120.43625,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3184" />
+      <path
+         d="M 116.57645,140.37835 L 118.50635,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3186" />
+      <path
+         d="M 114.64656,139.4134 L 116.57645,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3188" />
+      <path
+         d="M 113.68161,137.48351 L 114.64656,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3190" />
+      <path
+         d="M 113.68161,135.55361 L 113.68161,137.48351"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3192" />
+      <path
+         d="M 114.64656,133.62157 L 113.68161,135.55361"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3194" />
+      <path
+         d="M 116.57645,132.65662 L 114.64656,133.62157"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3196" />
+      <path
+         d="M 118.50635,132.65662 L 116.57645,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3198" />
+      <path
+         d="M 120.43625,133.62157 L 118.50635,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3200" />
+      <path
+         d="M 121.40334,136.51856 L 113.68161,136.51856"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3202" />
+      <path
+         d="M 121.40334,135.55361 L 121.40334,136.51856"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3204" />
+      <path
+         d="M 120.43625,133.62157 L 121.40334,135.55361"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3206" />
+      <path
+         d="M 123.33323,132.65662 L 123.33323,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3208" />
+      <path
+         d="M 125.26313,132.65662 L 123.33323,133.62157"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3210" />
+      <path
+         d="M 127.19303,132.65662 L 125.26313,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3212" />
+      <path
+         d="M 128.15797,133.62157 L 127.19303,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3214" />
+      <path
+         d="M 130.09001,127.83188 L 130.09001,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3216" />
+      <path
+         d="M 132.01991,140.37835 L 130.09001,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3218" />
+      <path
+         d="M 133.94981,140.37835 L 132.01991,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3220" />
+      <path
+         d="M 135.8797,139.4134 L 133.94981,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3222" />
+      <path
+         d="M 136.84465,137.48351 L 135.8797,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3224" />
+      <path
+         d="M 136.84465,135.55361 L 136.84465,137.48351"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3226" />
+      <path
+         d="M 135.8797,133.62157 L 136.84465,135.55361"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3228" />
+      <path
+         d="M 133.94981,132.65662 L 135.8797,133.62157"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3230" />
+      <path
+         d="M 132.01991,132.65662 L 133.94981,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3232" />
+      <path
+         d="M 130.09001,133.62157 L 132.01991,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3234" />
+      <path
+         d="M 147.46122,139.4134 L 148.42832,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3236" />
+      <path
+         d="M 147.46122,134.58652 L 147.46122,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3238" />
+      <path
+         d="M 145.53133,132.65662 L 147.46122,134.58652"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3240" />
+      <path
+         d="M 142.63648,132.65662 L 145.53133,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3242" />
+      <path
+         d="M 141.67154,133.62157 L 142.63648,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3244" />
+      <path
+         d="M 145.53133,140.37835 L 147.46122,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3246" />
+      <path
+         d="M 142.63648,140.37835 L 145.53133,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3248" />
+      <path
+         d="M 140.70659,139.4134 L 142.63648,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3250" />
+      <path
+         d="M 140.70659,138.44846 L 140.70659,139.4134"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3252" />
+      <path
+         d="M 142.63648,136.51856 L 140.70659,138.44846"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3254" />
+      <path
+         d="M 147.46122,136.51856 L 142.63648,136.51856"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3256" />
+      <path
+         d="M 152.28811,132.65662 L 152.28811,140.37835"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3258" />
+      <path
+         d="M 154.218,132.65662 L 152.28811,133.62157"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3260" />
+      <path
+         d="M 156.1479,132.65662 L 154.218,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3262" />
+      <path
+         d="M 157.11285,133.62157 L 156.1479,132.65662"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3264" />
+      <path
+         d="M 159.04274,124.74191 L 94.378359,124.74191"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3266" />
+      <path
+         d="M 16.682886,165.95376 L 16.200412,165.95376"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3268" />
+      <path
+         d="M 17.16536,165.47129 L 16.682886,165.95376"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3270" />
+      <path
+         d="M 17.16536,164.98882 L 17.16536,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3272" />
+      <path
+         d="M 16.682886,164.50634 L 17.16536,164.98882"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3274" />
+      <path
+         d="M 16.200412,164.50634 L 16.682886,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3276" />
+      <path
+         d="M 15.717938,164.98882 L 16.200412,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3278" />
+      <path
+         d="M 15.717938,165.47129 L 15.717938,164.98882"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3280" />
+      <path
+         d="M 16.200412,165.95376 L 15.717938,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3282" />
+      <path
+         d="M 22.474719,165.95376 L 21.992245,165.95376"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3284" />
+      <path
+         d="M 22.957193,165.47129 L 22.474719,165.95376"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3286" />
+      <path
+         d="M 22.957193,164.98882 L 22.957193,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3288" />
+      <path
+         d="M 22.474719,164.50634 L 22.957193,164.98882"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3290" />
+      <path
+         d="M 21.992245,164.50634 L 22.474719,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3292" />
+      <path
+         d="M 21.509771,164.98882 L 21.992245,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3294" />
+      <path
+         d="M 21.509771,165.47129 L 21.509771,164.98882"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3296" />
+      <path
+         d="M 21.992245,165.95376 L 21.509771,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3298" />
+      <path
+         d="M 28.264407,165.95376 L 27.781933,165.95376"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3300" />
+      <path
+         d="M 28.746881,165.47129 L 28.264407,165.95376"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3302" />
+      <path
+         d="M 28.746881,164.98882 L 28.746881,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3304" />
+      <path
+         d="M 28.264407,164.50634 L 28.746881,164.98882"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3306" />
+      <path
+         d="M 27.781933,164.50634 L 28.264407,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3308" />
+      <path
+         d="M 27.299459,164.98882 L 27.781933,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3310" />
+      <path
+         d="M 27.299459,165.47129 L 27.299459,164.98882"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3312" />
+      <path
+         d="M 27.781933,165.95376 L 27.299459,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3314" />
+      <path
+         d="M 106.92483,164.50634 L 107.88978,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3316" />
+      <path
+         d="M 106.92483,159.6816 L 106.92483,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3318" />
+      <path
+         d="M 104.99493,157.75171 L 106.92483,159.6816"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3320" />
+      <path
+         d="M 102.10009,157.75171 L 104.99493,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3322" />
+      <path
+         d="M 101.133,158.71665 L 102.10009,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3324" />
+      <path
+         d="M 104.99493,165.47129 L 106.92483,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3326" />
+      <path
+         d="M 102.10009,165.47129 L 104.99493,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3328" />
+      <path
+         d="M 100.16805,164.50634 L 102.10009,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3330" />
+      <path
+         d="M 100.16805,163.54139 L 100.16805,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3332" />
+      <path
+         d="M 102.10009,161.6115 L 100.16805,163.54139"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3334" />
+      <path
+         d="M 106.92483,161.6115 L 102.10009,161.6115"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3336" />
+      <path
+         d="M 111.75171,157.75171 L 111.75171,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3338" />
+      <path
+         d="M 113.68161,157.75171 L 111.75171,158.71665"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3340" />
+      <path
+         d="M 116.57645,157.75171 L 113.68161,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3342" />
+      <path
+         d="M 118.50635,159.6816 L 116.57645,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3344" />
+      <path
+         d="M 118.50635,165.47129 L 118.50635,159.6816"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3346" />
+      <path
+         d="M 128.15797,152.92482 L 128.15797,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3348" />
+      <path
+         d="M 126.22808,165.47129 L 128.15797,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3350" />
+      <path
+         d="M 124.29818,165.47129 L 126.22808,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3352" />
+      <path
+         d="M 122.36829,164.50634 L 124.29818,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3354" />
+      <path
+         d="M 121.40334,162.57645 L 122.36829,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3356" />
+      <path
+         d="M 121.40334,160.64655 L 121.40334,162.57645"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3358" />
+      <path
+         d="M 122.36829,158.71665 L 121.40334,160.64655"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3360" />
+      <path
+         d="M 124.29818,157.75171 L 122.36829,158.71665"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3362" />
+      <path
+         d="M 126.22808,157.75171 L 124.29818,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3364" />
+      <path
+         d="M 128.15797,158.71665 L 126.22808,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3366" />
+      <path
+         d="M 140.22197,156.78676 L 136.36218,156.78676"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3368" />
+      <path
+         d="M 138.29207,164.50634 L 138.29207,152.92482"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3370" />
+      <path
+         d="M 139.25702,165.47129 L 138.29207,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3372" />
+      <path
+         d="M 140.22197,165.47129 L 139.25702,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3374" />
+      <path
+         d="M 148.91079,164.50634 L 149.87574,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3376" />
+      <path
+         d="M 148.91079,159.6816 L 148.91079,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3378" />
+      <path
+         d="M 146.97875,157.75171 L 148.91079,159.6816"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3380" />
+      <path
+         d="M 144.08391,157.75171 L 146.97875,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3382" />
+      <path
+         d="M 143.11896,158.71665 L 144.08391,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3384" />
+      <path
+         d="M 146.97875,165.47129 L 148.91079,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3386" />
+      <path
+         d="M 144.08391,165.47129 L 146.97875,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3388" />
+      <path
+         d="M 142.15401,164.50634 L 144.08391,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3390" />
+      <path
+         d="M 142.15401,163.54139 L 142.15401,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3392" />
+      <path
+         d="M 144.08391,161.6115 L 142.15401,163.54139"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3394" />
+      <path
+         d="M 148.91079,161.6115 L 144.08391,161.6115"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3396" />
+      <path
+         d="M 153.73553,152.92482 L 153.73553,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3398" />
+      <path
+         d="M 155.66543,165.47129 L 153.73553,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3400" />
+      <path
+         d="M 157.59532,165.47129 L 155.66543,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3402" />
+      <path
+         d="M 159.52522,164.50634 L 157.59532,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3404" />
+      <path
+         d="M 160.49231,162.57645 L 159.52522,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path4043" />
+      <path
+         d="M 160.49231,160.64655 L 160.49231,162.57645"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3408" />
+      <path
+         d="M 159.52522,158.71665 L 160.49231,160.64655"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3410" />
+      <path
+         d="M 157.59532,157.75171 L 159.52522,158.71665"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3412" />
+      <path
+         d="M 155.66543,157.75171 L 157.59532,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3414" />
+      <path
+         d="M 153.73553,158.71665 L 155.66543,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3416" />
+      <path
+         d="M 164.3521,163.54139 L 164.3521,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3418" />
+      <path
+         d="M 166.282,165.47129 L 164.3521,163.54139"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3420" />
+      <path
+         d="M 169.17899,165.47129 L 166.282,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3422" />
+      <path
+         d="M 171.10888,164.50634 L 169.17899,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3424" />
+      <path
+         d="M 171.10888,157.75171 L 171.10888,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3426" />
+      <path
+         d="M 174.4862,152.92482 L 174.4862,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3428" />
+      <path
+         d="M 184.6203,164.50634 L 185.58525,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3430" />
+      <path
+         d="M 184.6203,159.6816 L 184.6203,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3432" />
+      <path
+         d="M 182.6904,157.75171 L 184.6203,159.6816"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3434" />
+      <path
+         d="M 179.79556,157.75171 L 182.6904,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3436" />
+      <path
+         d="M 178.82847,158.71665 L 179.79556,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3438" />
+      <path
+         d="M 182.6904,165.47129 L 184.6203,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3440" />
+      <path
+         d="M 179.79556,165.47129 L 182.6904,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3442" />
+      <path
+         d="M 177.86352,164.50634 L 179.79556,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3444" />
+      <path
+         d="M 177.86352,163.54139 L 177.86352,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3446" />
+      <path
+         d="M 179.79556,161.6115 L 177.86352,163.54139"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3448" />
+      <path
+         d="M 184.6203,161.6115 L 179.79556,161.6115"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3450" />
+      <path
+         d="M 193.30698,156.78676 L 189.44504,156.78676"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3452" />
+      <path
+         d="M 191.37708,164.50634 L 191.37708,152.92482"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3454" />
+      <path
+         d="M 192.34203,165.47129 L 191.37708,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3456" />
+      <path
+         d="M 193.30698,165.47129 L 192.34203,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3458" />
+      <path
+         d="M 196.20182,164.50634 L 198.13172,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3460" />
+      <path
+         d="M 195.23687,162.57645 L 196.20182,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3462" />
+      <path
+         d="M 195.23687,160.64655 L 195.23687,162.57645"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3464" />
+      <path
+         d="M 196.20182,158.71665 L 195.23687,160.64655"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3466" />
+      <path
+         d="M 198.13172,157.75171 L 196.20182,158.71665"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3468" />
+      <path
+         d="M 199.09881,157.75171 L 198.13172,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3470" />
+      <path
+         d="M 201.02871,158.71665 L 199.09881,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3472" />
+      <path
+         d="M 201.99365,160.64655 L 201.02871,158.71665"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3474" />
+      <path
+         d="M 201.99365,162.57645 L 201.99365,160.64655"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3476" />
+      <path
+         d="M 201.02871,164.50634 L 201.99365,162.57645"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3478" />
+      <path
+         d="M 199.09881,165.47129 L 201.02871,164.50634"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3480" />
+      <path
+         d="M 198.13172,165.47129 L 199.09881,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3482" />
+      <path
+         d="M 204.8885,157.75171 L 204.8885,165.47129"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3484" />
+      <path
+         d="M 206.81839,157.75171 L 204.8885,158.71665"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3486" />
+      <path
+         d="M 208.74829,157.75171 L 206.81839,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3488" />
+      <path
+         d="M 209.71324,158.71665 L 208.74829,157.75171"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3490" />
+      <path
+         d="M 21.992245,193.46122 L 22.957193,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3492" />
+      <path
+         d="M 21.992245,188.63648 L 21.992245,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3494" />
+      <path
+         d="M 20.062349,186.70658 L 21.992245,188.63648"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3496" />
+      <path
+         d="M 17.16536,186.70658 L 20.062349,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3498" />
+      <path
+         d="M 16.200412,187.67153 L 17.16536,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3500" />
+      <path
+         d="M 20.062349,194.42831 L 21.992245,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3502" />
+      <path
+         d="M 17.16536,194.42831 L 20.062349,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3504" />
+      <path
+         d="M 15.235464,193.46122 L 17.16536,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3506" />
+      <path
+         d="M 15.235464,192.49627 L 15.235464,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3508" />
+      <path
+         d="M 17.16536,190.56637 L 15.235464,192.49627"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3510" />
+      <path
+         d="M 21.992245,190.56637 L 17.16536,190.56637"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3512" />
+      <path
+         d="M 30.676777,185.73949 L 26.816985,185.73949"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3514" />
+      <path
+         d="M 28.746881,193.46122 L 28.746881,181.8797"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3516" />
+      <path
+         d="M 29.711829,194.42831 L 28.746881,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3518" />
+      <path
+         d="M 30.676777,194.42831 L 29.711829,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3520" />
+      <path
+         d="M 36.46861,185.73949 L 32.608818,185.73949"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3522" />
+      <path
+         d="M 34.538714,193.46122 L 34.538714,181.8797"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3524" />
+      <path
+         d="M 35.503662,194.42831 L 34.538714,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3526" />
+      <path
+         d="M 36.46861,194.42831 L 35.503662,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3528" />
+      <path
+         d="M 38.398506,186.70658 L 38.398506,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3530" />
+      <path
+         d="M 40.330547,186.70658 L 38.398506,187.67153"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3532" />
+      <path
+         d="M 42.260443,186.70658 L 40.330547,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3534" />
+      <path
+         d="M 43.225391,187.67153 L 42.260443,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3536" />
+      <path
+         d="M 46.120235,186.70658 L 46.120235,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3538" />
+      <path
+         d="M 46.120235,183.80959 L 46.120235,184.29207"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3540" />
+      <path
+         d="M 49.015079,181.8797 L 49.015079,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3542" />
+      <path
+         d="M 50.94712,194.42831 L 49.015079,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3544" />
+      <path
+         d="M 52.877016,194.42831 L 50.94712,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3546" />
+      <path
+         d="M 54.806912,193.46122 L 52.877016,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3548" />
+      <path
+         d="M 55.77186,191.53132 L 54.806912,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3550" />
+      <path
+         d="M 55.77186,189.60142 L 55.77186,191.53132"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3552" />
+      <path
+         d="M 54.806912,187.67153 L 55.77186,189.60142"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3554" />
+      <path
+         d="M 52.877016,186.70658 L 54.806912,187.67153"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3556" />
+      <path
+         d="M 50.94712,186.70658 L 52.877016,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3558" />
+      <path
+         d="M 49.015079,187.67153 L 50.94712,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3560" />
+      <path
+         d="M 59.633796,192.49627 L 59.633796,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3562" />
+      <path
+         d="M 61.563692,194.42831 L 59.633796,192.49627"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3564" />
+      <path
+         d="M 64.458537,194.42831 L 61.563692,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3566" />
+      <path
+         d="M 66.388433,193.46122 L 64.458537,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3568" />
+      <path
+         d="M 66.388433,186.70658 L 66.388433,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3570" />
+      <path
+         d="M 72.662739,185.73949 L 68.800803,185.73949"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3572" />
+      <path
+         d="M 70.732843,193.46122 L 70.732843,181.8797"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3574" />
+      <path
+         d="M 71.697791,194.42831 L 70.732843,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3576" />
+      <path
+         d="M 72.662739,194.42831 L 71.697791,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3578" />
+      <path
+         d="M 79.41952,194.42831 L 81.349416,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3580" />
+      <path
+         d="M 77.48748,194.42831 L 79.41952,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3582" />
+      <path
+         d="M 75.557583,193.46122 L 77.48748,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3584" />
+      <path
+         d="M 74.592635,191.53132 L 75.557583,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3586" />
+      <path
+         d="M 74.592635,189.60142 L 74.592635,191.53132"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3588" />
+      <path
+         d="M 75.557583,187.67153 L 74.592635,189.60142"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3590" />
+      <path
+         d="M 77.48748,186.70658 L 75.557583,187.67153"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3592" />
+      <path
+         d="M 79.41952,186.70658 L 77.48748,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3594" />
+      <path
+         d="M 81.349416,187.67153 L 79.41952,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3596" />
+      <path
+         d="M 82.314364,190.56637 L 74.592635,190.56637"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3598" />
+      <path
+         d="M 82.314364,189.60142 L 82.314364,190.56637"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3600" />
+      <path
+         d="M 81.349416,187.67153 L 82.314364,189.60142"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3602" />
+      <path
+         d="M 93.895885,193.46122 L 84.24426,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3604" />
+      <path
+         d="M 100.16805,194.42831 L 96.308255,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3606" />
+      <path
+         d="M 104.02998,186.70658 L 100.16805,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3608" />
+      <path
+         d="M 112.71666,193.46122 L 113.68161,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3610" />
+      <path
+         d="M 112.71666,188.63648 L 112.71666,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3612" />
+      <path
+         d="M 110.78676,186.70658 L 112.71666,188.63648"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3614" />
+      <path
+         d="M 107.88978,186.70658 L 110.78676,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3616" />
+      <path
+         d="M 106.92483,187.67153 L 107.88978,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3618" />
+      <path
+         d="M 110.78676,194.42831 L 112.71666,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3620" />
+      <path
+         d="M 107.88978,194.42831 L 110.78676,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3622" />
+      <path
+         d="M 105.95988,193.46122 L 107.88978,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3624" />
+      <path
+         d="M 105.95988,192.49627 L 105.95988,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3626" />
+      <path
+         d="M 107.88978,190.56637 L 105.95988,192.49627"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3628" />
+      <path
+         d="M 112.71666,190.56637 L 107.88978,190.56637"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3630" />
+      <path
+         d="M 118.50635,181.8797 L 118.50635,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3632" />
+      <path
+         d="M 121.88581,192.49627 L 121.88581,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3634" />
+      <path
+         d="M 123.81571,194.42831 L 121.88581,192.49627"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3636" />
+      <path
+         d="M 126.71055,194.42831 L 123.81571,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3638" />
+      <path
+         d="M 128.64259,193.46122 L 126.71055,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3640" />
+      <path
+         d="M 128.64259,186.70658 L 128.64259,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3642" />
+      <path
+         d="M 135.8797,194.42831 L 137.8096,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3644" />
+      <path
+         d="M 133.94981,194.42831 L 135.8797,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3646" />
+      <path
+         d="M 132.01991,193.46122 L 133.94981,194.42831"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3648" />
+      <path
+         d="M 131.05496,191.53132 L 132.01991,193.46122"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3650" />
+      <path
+         d="M 131.05496,189.60142 L 131.05496,191.53132"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3652" />
+      <path
+         d="M 132.01991,187.67153 L 131.05496,189.60142"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3654" />
+      <path
+         d="M 133.94981,186.70658 L 132.01991,187.67153"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3656" />
+      <path
+         d="M 135.8797,186.70658 L 133.94981,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3658" />
+      <path
+         d="M 137.8096,187.67153 L 135.8797,186.70658"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3660" />
+      <path
+         d="M 138.77455,190.56637 L 131.05496,190.56637"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3662" />
+      <path
+         d="M 138.77455,189.60142 L 138.77455,190.56637"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3664" />
+      <path
+         d="M 137.8096,187.67153 L 138.77455,189.60142"
+         style="fill:none;stroke:#008000;stroke-width:0.96515387;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
+         id="path3666" />
+    </g>
+    <path
+       inkscape:transform-center-x="-246.15385"
+       sodipodi:nodetypes="cz"
+       id="path6085"
+       d="M 193.50503,55.886924 C 179.46487,63.399086 153.89909,78.316086 144.47445,98.874425"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <text
+       transform="matrix(0.9999977,2.1264992e-3,-2.1264992e-3,0.9999977,0,0)"
+       id="text6087"
+       y="67.559654"
+       x="32.480427"
+       style="font-size:13.15679169px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       xml:space="preserve"><tspan
+         y="67.559654"
+         x="32.480427"
+         id="tspan6089"
+         sodipodi:role="line">graphical representation</tspan><tspan
+         y="84.005646"
+         x="32.480427"
+         sodipodi:role="line"
+         id="tspan6097">of the text elements</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:13.15679264px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="477.93393"
+       y="66.612389"
+       id="text6091"
+       transform="matrix(0.9999977,2.1264991e-3,-2.1264991e-3,0.9999977,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan6093"
+         x="477.93393"
+         y="66.612389">postscript output</tspan><tspan
+         sodipodi:role="line"
+         x="477.93393"
+         y="83.05838"
+         id="tspan6095">of the text</tspan></text>
+  </g>
+</svg>
diff --git a/libgeda/src/o_text_basic.c b/libgeda/src/o_text_basic.c
index 4e66dc0..856e114 100644
--- a/libgeda/src/o_text_basic.c
+++ b/libgeda/src/o_text_basic.c
@@ -20,6 +20,51 @@
 
 /*! \file o_text_basic.c
  *  \brief functions for the text and fonts
+ *
+ *  \par The font definitions 
+ *
+ *  Each letter of the font is defined in a single font symbol file. In
+ *  the font symbol file, the character width is defined in the second
+ *  line. The first line contains the file format version.
+ *
+ *  All remaining lines are basic graphical lines. They build the
+ *  appearance of the character.
+ *
+ *  \image html o_text_font_overview.png
+ *  \image latex o_text_font_overview.pdf "font overview" width=14cm
+ *
+ *  The height of capital characters in the font files is 26. The size
+ *  of small letters is 16. The space below the zero line is used by
+ *  characters like <b>g</b>, <b>p</b> or <b>q</b>. The space above 26
+ *  is used by diacritic marks like accents, breve, circumflex mostly in
+ *  european characters.
+ *
+ *  When loading a font definition the basic line objects are stored in
+ *  <b>OBJECT->font_prim_objs</b> as a list of OBJECTs.
+ *  
+ *  All font objects are stored in the hash table #font_loaded when they 
+ *  are loaded.
+ *
+ *  \par The text definitions
+ *
+ *  The text is stored and printed in several different representations.
+ *
+ *  In the gEDA files the text is just a string. It is stored unmodified 
+ *  in <b>OBJECT->text->string</b>.
+ *
+ *  If the string is an attribute with an equal sign as delimiter between
+ *  an attribute name and an attribute value, then it is possible to
+ *  hide some parts of the text. The still visible part of an attribute
+ *  is stored in <b>OBJECT->text->disp_string</b>.
+ *
+ *  \image html o_text_text_overview.png
+ *  \image latex o_text_text_overview.pdf "text overview" width=14cm
+ *
+ *  To draw the text in gschem, the string is interpreted and converted
+ *  to a list of basic graphical objects. The basic line objects are
+ *  collected from the font character objects.
+ *  All basic graphical objects are stored in
+ *  <b>OBJECT->text->prim_objs</b>.
  */
 
 #include <config.h>
@@ -43,14 +88,16 @@
 /*! Default setting for text draw function. */
 void (*text_draw_func)() = NULL;
 
-/*! \note
- *  font storage and friends are staying global so that all can access
+/*! Hashtable storing font_character (string) as a key, and pointer to data 
+ *  \note
+ *  This table stays global, thus all functions can access it.
  */
-
-/*! Hashtable storing font_character (string) as a key, and pointer to data */
 GHashTable *font_loaded = NULL;
 
-/*! Hashtable storing mapping between character and font definition file */
+/*! Hashtable storing mapping between character and font definition file
+ *  \note
+ *  This table stays global, thus all functions can access it.
+ */
 GHashTable *font_char_to_file = NULL;
 
 /*! Size of a tab in characters */

commit 1d9a97190ebf91c11ae29bbab69c4871033f92bb
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Sun Nov 9 18:23:04 2008 +0100

    libgeda: rewrote parts of o_text_create_string [#2247421]
    
    Fixed the text overbar issue if the negation line spans over
    more than one line:
      \_negation line
      with newline\_
    
    Rewrote the logic of the function, splitted it into a state
    machine part and an exectution part.
    
    It's much easier now to follow the meaning of the code, now.

diff --git a/libgeda/src/o_text_basic.c b/libgeda/src/o_text_basic.c
index 8821d03..4e66dc0 100644
--- a/libgeda/src/o_text_basic.c
+++ b/libgeda/src/o_text_basic.c
@@ -485,22 +485,20 @@ OBJECT *o_text_create_string(TOPLEVEL *toplevel, OBJECT *object_list,
   int overbar_startx=0, overbar_starty=0;
   int overbar_endx=0, overbar_endy=0;
   int overbar_height_offset = 0;
-  int last_char_width;
-  gboolean overbar_started = FALSE;
   gchar *ptr;
-  gchar aux_string[7];
   OBJECT *o_font_set;
-  gunichar c=0, previous_char = 0, next_char = 0;
-  int escapes_counter = 0;
+  gunichar current_char;
+  gboolean escape = FALSE, overbar_started = FALSE;
+  gboolean finish_overbar, start_overbar, leave_parser = FALSE;
+  gboolean draw_character, draw_tabulator, draw_newline;
 
   temp_list = object_list;
 
-
   /* error condition hack */
   if (string == NULL) {
     return(NULL);
   }
-	
+
   /* now read in the chars */
   temp_tail = toplevel->page_current->object_tail;
 
@@ -532,7 +530,7 @@ OBJECT *o_text_create_string(TOPLEVEL *toplevel, OBJECT *object_list,
       x_offset = x;
       y_offset = y;
       break;
-		
+
       case(MIDDLE_LEFT):
       x_offset = x;
       y_offset = y + sign*0.5*text_height;
@@ -592,43 +590,43 @@ OBJECT *o_text_create_string(TOPLEVEL *toplevel, OBJECT *object_list,
       x_offset = x;
       y_offset = y;
       break;
-		
+
       case(MIDDLE_LEFT):
       x_offset = x + sign*0.5*text_height;
       y_offset = y;
       break;
-	
+
       case(UPPER_LEFT):
       x_offset = x + sign*text_height;
       y_offset = y;
       break;
-	
+
       case(LOWER_MIDDLE):
       x_offset = x;
       y_offset = y - sign*0.5*text_width;
       break;
-	
+
       case(MIDDLE_MIDDLE):
       x_offset = x + sign*0.5*text_height;
       y_offset = y - sign*0.5*text_width;
       break;
-	
+
       case(UPPER_MIDDLE):
       x_offset = x + sign*text_height;
       y_offset = y - sign*0.5*text_width;
-	
+
       break;
-	
+
       case(LOWER_RIGHT):
       x_offset = x;
       y_offset = y - sign*text_width;
       break;
-	
+
       case(MIDDLE_RIGHT):
       x_offset = x + sign*0.5*text_height;
       y_offset = y - sign*text_width;
       break;
-	
+
       case(UPPER_RIGHT):
       x_offset = x + sign*text_height;
       y_offset = y - sign*text_width;
@@ -662,287 +660,242 @@ OBJECT *o_text_create_string(TOPLEVEL *toplevel, OBJECT *object_list,
   line_start_x = x_offset;
   line_start_y = y_offset;
 
+  /* the overbar is 1/4 above the char height. */
+  overbar_height_offset = char_height + char_height/4;
+
   for (ptr = string;
-       ptr != NULL && *ptr != 0;
-       previous_char = 
-	 g_utf8_get_char_validated (ptr, -1),
-	 ptr = g_utf8_find_next_char (ptr, NULL),
-	 next_char = g_utf8_get_char_validated(g_utf8_find_next_char (ptr, NULL),-1)) {
-    /* Keep track of the previous character and its width.
-       They will be used in the overbar and escape characters */
-    /*   - build a char string out of the gunichar previous_char */
-    gint l = g_unichar_to_utf8 (previous_char, aux_string);
-    /*   - end the string */
-    aux_string[l] = '\0';
-    /*   - finally get the width of the previous character */
-    last_char_width = o_text_width(toplevel, aux_string, size/2);
+       ptr != NULL && !leave_parser;
+       ptr = g_utf8_find_next_char (ptr, NULL)) {
+
+    current_char = g_utf8_get_char_validated (ptr, -1);
+
+    /* reset all actions */
+    finish_overbar = FALSE;
+    start_overbar = FALSE;
+    leave_parser = FALSE;
+    draw_character = FALSE;
+    draw_tabulator = FALSE;
+    draw_newline = FALSE;
+
+    /* state machine to interpret the string:
+     * there are two independant state variables overbar_started and escape.
+     * The actions are set according to the current character and
+     * the two state variables.
+     */
+    switch (current_char) {
+    case '\0':
+      /* end of the string */
+      if (overbar_started)
+        finish_overbar = TRUE;
+      leave_parser = TRUE;
+      break;
+    case '\\':
+      if (escape == TRUE) {
+        draw_character = TRUE;
+        escape = FALSE;
+      } else {
+        escape = TRUE;
+      }
+      break;
+    case '_':
+      if (escape == TRUE) {
+        escape = FALSE;
+        if (overbar_started == TRUE) {
+          finish_overbar = TRUE;
+          overbar_started = FALSE;
+        } else {
+          start_overbar = TRUE;
+          overbar_started = TRUE;
+        }
+      } else {
+        draw_character = TRUE;
+      }
+      break;
+    case '\n':
+      draw_newline = TRUE;
+      if (overbar_started == TRUE) {
+        finish_overbar = TRUE;
+        start_overbar = TRUE;
+      }
+      escape = FALSE;
+      break;
+    case '\t':
+      draw_tabulator = TRUE;
+      escape = FALSE;
+      break;
+    default:
+      draw_character = TRUE;
+      escape = FALSE;
+    }
 
-    c = g_utf8_get_char_validated (ptr, -1);
+    /* execute all actions set by the state machine
+     * Note: It's important that the three actions
+     * finish_overbar, draw_newline, start_overbar are executed
+     * in exacly that order. It's required to continue overbars
+     * over newlines.
+     */
+    if (draw_character) {
+      /* get the character from the hash table */
+      o_font_set = g_hash_table_lookup (font_loaded,
+                                        GUINT_TO_POINTER (current_char));
+      if (o_font_set == NULL) {
+        o_text_load_font(toplevel, (gunichar) current_char);
+        o_font_set = g_hash_table_lookup (font_loaded,
+                                          GUINT_TO_POINTER (current_char));
+      }
+
+      /* Only add the character if there are primary object.
+         e.g. the space character doesn't have those */
+      if (o_font_set->font_prim_objs->next != NULL) {
+        start_of_char = temp_list;
+        temp_list = o_list_copy_all(toplevel,
+                                    o_font_set->font_prim_objs->next,
+                                    temp_list, NORMAL_FLAG);
+
+        if (start_of_char != NULL)
+          start_of_char = start_of_char->next;
 
-    o_font_set = g_hash_table_lookup (font_loaded, GUINT_TO_POINTER (c));
-    if (o_font_set == NULL) {
-      o_text_load_font(toplevel, (gunichar) c);
-      o_font_set = g_hash_table_lookup (font_loaded, GUINT_TO_POINTER (c));
+        o_complex_set_color(start_of_char, color);
+        o_scale(toplevel, start_of_char, size/2, size/2);
+
+        /* Rotate and translate the character to its world position */
+        o_list_rotate_world(toplevel, 0, 0, angle, start_of_char);
+        o_list_translate_world(toplevel, x_offset, y_offset, start_of_char);
+      }
+
+      /* Calcule the position of the next character */
+      switch(angle) {
+      case(0):
+        x_offset = (x_offset) + size/2*o_font_set->font_text_size;
+        break;
+      case(90):
+        y_offset = (y_offset) + size/2*o_font_set->font_text_size;
+        break;
+      case(180):
+        x_offset = (x_offset) - size/2*o_font_set->font_text_size;
+        break;
+      case(270):
+        y_offset = (y_offset) - size/2*o_font_set->font_text_size;
+        break;
+      }
     }
 
-    start_of_char = temp_list;
-
-    if (o_font_set->font_prim_objs->next != NULL) {
-      int rel_char_coord;
-      int size_of_tab_in_coord;
-      OBJECT *o_font_set_aux;
-
-      /* Make sure TAB_CHAR_MODEL is loaded before trying to use its text */
-      /* size */
-      o_font_set_aux = g_hash_table_lookup (
-        font_loaded, GUINT_TO_POINTER ((gunichar)TAB_CHAR_MODEL[0]));
-      if (o_font_set_aux == NULL) {
-         o_text_load_font(toplevel, (gunichar) TAB_CHAR_MODEL[0]);
-         o_font_set_aux = g_hash_table_lookup (
-           font_loaded, GUINT_TO_POINTER ((gunichar)TAB_CHAR_MODEL[0]));
-       }
-    
+    if (draw_tabulator) {
+      gint size_of_tab_in_coord;
+      gint rel_char_coord;
       /* Get the maximum tab width's in coordinates */
-      size_of_tab_in_coord = tab_in_chars * 
-                 o_text_width(toplevel, TAB_CHAR_MODEL, size/2);
-
-      /* Count escape characters. Notice it includes the current character */
-      if (c == '\\') {
-	escapes_counter++;
+      size_of_tab_in_coord = (tab_in_chars *
+                              o_text_width(toplevel, TAB_CHAR_MODEL, size/2));
+
+      switch (angle) {
+      case 0:
+      case 180:
+        rel_char_coord = x_offset - line_start_x;
+        x_offset += (size_of_tab_in_coord -
+                     (rel_char_coord % size_of_tab_in_coord));
+        break;
+      case 90:
+        rel_char_coord = y_offset - line_start_y;
+        y_offset += (size_of_tab_in_coord -
+                     (rel_char_coord % size_of_tab_in_coord));
+        break;
+      case 270:
+        rel_char_coord = line_start_y - y_offset;
+        y_offset -= (size_of_tab_in_coord -
+                     (rel_char_coord % size_of_tab_in_coord));
+        break;
+      default:
+        fprintf(stderr, "o_text_create_string: Angle not supported\n");
+        break;
       }
-      
-      /* Ignore escape characters */
-      if ( ((c == '\\') && (previous_char != '\\')) ||
-	   ((c == '\\') && (escapes_counter == 1)) )
-	continue;
-
-      if (c != '\n' && c != '\t') {
-         /* only add the character if it is not a newline, a tab character
-	    a escape character or the overbar delimiter escape sequence.
-	    Add it if it is the escaped escape character */
-	if ( ( (c != '\\') &&
-	       (!(previous_char == '\\' && c == '_')) ) ||
-	     (previous_char == '\\' && c == '\\' && (escapes_counter > 1)) ) {
-	  temp_list = o_list_copy_all(toplevel,
-				      o_font_set->font_prim_objs->next, 
-				      temp_list, NORMAL_FLAG);
-	  if (start_of_char != NULL)
-	    start_of_char = start_of_char->next;
-	  /* does not get here if the character was a newline, tab, or
-	     special character.
-	     This is correct. */ 
-	  o_complex_set_color(start_of_char, color);	
-	  o_scale(toplevel, start_of_char, size/2, size/2);
-	  
-	  /* do this if you want to stack chars */
-	  /* we don't want to do that for now */
-	  /* Rotate and translate the character to its world position */
-	  o_list_rotate_world(toplevel, 0, 0, angle, start_of_char);
-	  o_list_translate_world(toplevel, x_offset, y_offset, start_of_char);
-	  
-	  /* Reset the escapes counter after being processed. Otherwise, 
-	     if the next character is also a backslash, it will
-	     be processed as if were also escaped */
-	  if (previous_char == '\\' && c == '\\') {
-	    escapes_counter = 0;
-	  }
-	} 
+    }
+
+    if (finish_overbar) {
+      switch (angle) {
+      case 0:
+        overbar_endx = x_offset;
+        overbar_endy = y_offset + overbar_height_offset;
+        break;
+      case 90:
+        overbar_endx = x_offset - overbar_height_offset;
+        overbar_endy = y_offset;
+        break;
+      case 180:
+        overbar_endx = x_offset;
+        overbar_endy = y_offset - overbar_height_offset;
+        break;
+      case 270:
+        overbar_endx = x_offset + overbar_height_offset;
+        overbar_endy = y_offset;
+        break;
+      default:
+        fprintf(stderr, "o_text_create_string: Angle not supported\n");
+        break;
       }
-      
-      /* Now check for special characters */
-      
-      if ( (c == '_' && previous_char == '\\') || 
-	   (c == '\n' && overbar_started) || 
-	   (previous_char == '\n' && overbar_started) ||
-	   (overbar_started && next_char == 0) ) { 
-	/* Found the overbar delimiter sequence 
-	   If the character is the newline and the overbar was started,
-	   then end it and start it again in the next character, after
-	   processing the newline. */
-	overbar_height_offset = char_height + (char_height >> 2);
-	if ( (!overbar_started) ||
-	     (overbar_started && previous_char == '\n') ){
-	  /* Start point of the overbar */
-	  overbar_started = TRUE;
-	  switch (angle) {
-	    case 0:
-	      overbar_startx = x_offset;
-	      overbar_starty = y_offset + overbar_height_offset;
-	      break;
-	    case 90:
-	      overbar_startx = x_offset - overbar_height_offset;
-	      overbar_starty = y_offset;
-	      break;
-	    case 180:
-	      overbar_startx = x_offset;
-	      overbar_starty = y_offset - overbar_height_offset;
-	      break;
-	    case 270:
-	      overbar_startx = x_offset + overbar_height_offset;
-	      overbar_starty = y_offset;
-	      break;
-	    default:
-	      fprintf(stderr, "o_text_create_string: Angle not supported\n");
-	      break;
-	  }
-	} else {
-	  /* Then this is the end point of the overbar */
-	  if (overbar_started && next_char == 0 &&
-	      !(c == '_' && previous_char == '\\')) {
-	    /* Instead of ending in the last character, end the overbar
-	       after the current character (its width is 
-	       size/2*o_font_set->font_text_size */
-	    last_char_width = -size/2*o_font_set->font_text_size;
-	  }
-	  switch (angle) {
-	    case 0:
-	      overbar_endx = x_offset - last_char_width;
-	      overbar_endy = y_offset + overbar_height_offset;
-	      break;
-	    case 90:
-	      overbar_endx = x_offset - overbar_height_offset;
-	      overbar_endy = y_offset - last_char_width;
-	      break;
-	    case 180:
-	      overbar_endx = x_offset + last_char_width;
-	      overbar_endy = y_offset - overbar_height_offset;
-	      break;
-	    case 270:
-	      overbar_endx = x_offset + overbar_height_offset;
-	      overbar_endy = y_offset + last_char_width;
-	      break;
-	    default:
-	      fprintf(stderr, "o_text_create_string: Angle not supported\n");
-	      break;
-	  }
-	  /* Now add the overbar (if it is not a zero length overbar) */
-	  if ( (overbar_startx != overbar_endx) ||
-	       (overbar_starty != overbar_endy) ) {
-	    temp_obj = o_line_new(toplevel, OBJ_LINE, color,
-				   overbar_startx, overbar_starty,
-				   overbar_endx, overbar_endy);
-      temp_list = s_basic_link_object(temp_obj, temp_list);
-	  }
-
-	  if (!((c == '\n') && (overbar_started))) {
-	    /* If it's the newline character, keep the overbar started, since
-	       we have to end this one & start another one in the next line */
-	    overbar_started = FALSE;
-	  }
-	}
-	if (c != '\n')
-	  continue;
+      /* Now add the overbar (if it is not a zero length overbar) */
+      if ((overbar_startx != overbar_endx)
+          || (overbar_starty != overbar_endy)) {
+        temp_obj = o_line_new(toplevel, OBJ_LINE, color,
+                              overbar_startx, overbar_starty,
+                              overbar_endx, overbar_endy);
+        temp_list = s_basic_link_object(temp_obj, temp_list);
       }
-     
-      /* If the character is a newline or tab, this code will "continue" */
-      switch (c) {
-      case '\n':
-	/* The character is a newline. Calcule the start of the next line */
-        switch (angle) {
-            case 0:
-              x_offset = line_start_x;
-              y_offset = line_start_y - char_height * LINE_SPACING;
-              line_start_x = x_offset;
-              line_start_y = y_offset;
-              continue;	
-              break;
-            case 90:
-              x_offset = line_start_x + char_height * LINE_SPACING;
-              y_offset = line_start_y;
-              line_start_x = x_offset;
-              line_start_y = y_offset;
-              continue;	
-              break;
-            case 180:
-              x_offset = line_start_x;
-              y_offset = line_start_y + char_height * LINE_SPACING;
-              line_start_x = x_offset;
-              line_start_y = y_offset;
-              continue;	
-              break;
-            case 270:
-              x_offset = line_start_x - char_height * LINE_SPACING;
-              y_offset = line_start_y;
-              line_start_x = x_offset;
-              line_start_y = y_offset;
-              continue;	
-              break;
-            default:
-              fprintf(stderr, "o_text_create_string: Angle not supported\n");
-              break;
-        }
-          case '\t':
-#if DEBUG
-            printf("Found tab character.\n");
-            printf("Tab size in coord: %i\n", size_of_tab_in_coord);
-            printf("Line start: %i,%i\n", line_start_x, line_start_y);
-            printf("Position: %i, %i\n", x_offset, y_offset);
-#endif
-            switch (angle) {
-                case 0:
-                case 180:
-                  rel_char_coord = x_offset - line_start_x;
-#if DEBUG
-                  printf("Add: %i\n", (size_of_tab_in_coord - (rel_char_coord % size_of_tab_in_coord)));
-#endif
-                  x_offset += (size_of_tab_in_coord - (rel_char_coord % size_of_tab_in_coord));
-                  continue;	
-                  break;
-                case 90:
-                  rel_char_coord = y_offset - line_start_y;
-#if DEBUG
-                  printf("Add: %i\n", (size_of_tab_in_coord - (rel_char_coord % size_of_tab_in_coord)));
-#endif
-                  y_offset += (size_of_tab_in_coord - (rel_char_coord % size_of_tab_in_coord));
-                  continue;	
-                  break;
-                case 270:
-                  rel_char_coord = line_start_y - y_offset;
-#if DEBUG
-                  printf("Add: %i\n", (size_of_tab_in_coord - (rel_char_coord % size_of_tab_in_coord)));
-#endif
-                  y_offset -= (size_of_tab_in_coord - (rel_char_coord % size_of_tab_in_coord));
-                  continue;	
-                  break;
-                default:
-                  fprintf(stderr, "o_text_create_string: Angle not supported\n");
-                  break;
-            }
-      }      
     }
 
-    /* Calcule the position of the next character */
-    switch(angle) {
-      case(0):	
-        x_offset = (x_offset) + 
-          size/2*o_font_set->font_text_size;
+    if (draw_newline) {
+      switch (angle) {
+      case 0:
+        x_offset = line_start_x;
+        y_offset = line_start_y - char_height * LINE_SPACING;
         break;
-		
-      case(90):
-        y_offset = (y_offset) + 
-          size/2*o_font_set->font_text_size;
+      case 90:
+        x_offset = line_start_x + char_height * LINE_SPACING;
+        y_offset = line_start_y;
         break;
+      case 180:
+        x_offset = line_start_x;
+        y_offset = line_start_y + char_height * LINE_SPACING;
+        break;
+      case 270:
+        x_offset = line_start_x - char_height * LINE_SPACING;
+        y_offset = line_start_y;
+        break;
+      default:
+        fprintf(stderr, "o_text_create_string: Angle not supported\n");
+        break;
+      }
+      line_start_x = x_offset;
+      line_start_y = y_offset;
+    }
 
-      case(180):
-        x_offset = (x_offset) - 
-          size/2*o_font_set->font_text_size;
+    if (start_overbar) {
+      switch (angle) {
+      case 0:
+        overbar_startx = x_offset;
+        overbar_starty = y_offset + overbar_height_offset;
         break;
-		
-      case(270):
-        y_offset = (y_offset) - 
-          size/2*o_font_set->font_text_size;
+      case 90:
+        overbar_startx = x_offset - overbar_height_offset;
+        overbar_starty = y_offset;
+        break;
+      case 180:
+        overbar_startx = x_offset;
+        overbar_starty = y_offset - overbar_height_offset;
+        break;
+      case 270:
+        overbar_startx = x_offset + overbar_height_offset;
+        overbar_starty = y_offset;
+        break;
+      default:
+        fprintf(stderr, "o_text_create_string: Angle not supported\n");
         break;
+      }
     }
   }
 
-  /* don't set the head */	
-
   toplevel->page_current->object_tail = temp_tail;
 
-#if DEBUG
-  printf("2 %d %d\n", x_offset, y_offset);
-#endif
-  return(object_list);
+  return object_list;
 }
 
 /*! \brief Creates a text OBJECT and the graphical objects representing it

commit 27fc407b656e2996e31922be1352eea21de85422
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Sun Nov 9 18:21:09 2008 +0100

    updated text and alignment test schematic
    
    Added all kinds of overbar and tabulator tests.
    Use multiline text for all alignment tests.

diff --git a/gschem/tests/alignment.sch b/gschem/tests/alignment.sch
index 71419bc..f6223ac 100644
--- a/gschem/tests/alignment.sch
+++ b/gschem/tests/alignment.sch
@@ -1,331 +1,533 @@
-v 20080706 1
-T 28600 57000 9 10 1 0 0 0 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 28600 56700 9 10 1 0 0 1 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 28600 56700 28400 56700 2 0 0 0 -1 -1
-L 28600 57000 28400 57000 2 0 0 0 -1 -1
-T 28600 56400 9 10 1 0 0 2 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 28600 56400 28400 56400 2 0 0 0 -1 -1
-T 30700 55800 9 10 1 0 0 3 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 30700 55800 30700 55600 2 0 0 0 -1 -1
-T 30700 55500 9 10 1 0 0 4 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 30700 55500 30700 55300 2 0 0 0 -1 -1
-T 30700 55200 9 10 1 0 0 5 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 30700 55200 30700 54900 2 0 0 0 -1 -1
-L 30800 55300 30600 55300 2 0 0 0 -1 -1
-L 30600 55600 30800 55600 2 0 0 0 -1 -1
-L 30800 54900 30600 54900 2 0 0 0 -1 -1
-L 28400 56500 28400 56300 2 0 0 0 -1 -1
-L 28400 56800 28400 56600 2 0 0 0 -1 -1
-L 28400 57100 28400 56900 2 0 0 0 -1 -1
-T 32700 54500 9 10 1 0 0 6 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 32700 54500 32900 54500 2 0 0 0 -1 -1
-L 32900 54400 32900 54600 2 0 0 0 -1 -1
-T 32700 54200 9 10 1 0 0 7 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 32700 54200 32900 54200 2 0 0 0 -1 -1
-L 32900 54300 32900 54100 2 0 0 0 -1 -1
-B 28300 56100 4400 1200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-B 28600 54800 4200 1200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-T 32700 53900 9 10 1 0 0 8 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 32700 53900 32900 53900 2 0 0 0 -1 -1
-L 32900 53800 32900 54000 2 0 0 0 -1 -1
-B 28600 53600 4400 1100 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 34100 54000 34100 53800 2 0 0 0 -1 -1
-L 33800 54000 33800 53800 2 0 0 0 -1 -1
-L 34400 54000 34400 53800 2 0 0 0 -1 -1
-L 35000 56100 35200 56100 2 0 0 0 -1 -1
-L 35300 56100 35500 56100 2 0 0 0 -1 -1
-L 35600 56100 35900 56100 2 0 0 0 -1 -1
-L 35500 56200 35500 56000 2 0 0 0 -1 -1
-L 35200 56000 35200 56200 2 0 0 0 -1 -1
-L 35900 56200 35900 56000 2 0 0 0 -1 -1
-L 34300 53800 34500 53800 2 0 0 0 -1 -1
-L 34000 53800 34200 53800 2 0 0 0 -1 -1
-L 33700 53800 33900 53800 2 0 0 0 -1 -1
-L 36300 58100 36300 58300 2 0 0 0 -1 -1
-L 36400 58300 36200 58300 2 0 0 0 -1 -1
-L 36600 58100 36600 58300 2 0 0 0 -1 -1
-L 36500 58300 36700 58300 2 0 0 0 -1 -1
-B 33500 53700 1200 4400 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-B 34800 54000 1200 4200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 36900 58100 36900 58300 2 0 0 0 -1 -1
-L 37000 58300 36800 58300 2 0 0 0 -1 -1
-B 36100 54000 1100 4400 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-T 33800 54000 9 10 1 0 90 0 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 34100 54000 9 10 1 0 90 1 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 34400 54000 9 10 1 0 90 2 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 35000 56100 9 10 1 0 90 3 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 35300 56100 9 10 1 0 90 4 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 35600 56100 9 10 1 0 90 5 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 36300 58100 9 10 1 0 90 6 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 36600 58100 9 10 1 0 90 7 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 36900 58100 9 10 1 0 90 8 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 32400 58300 32600 58300 2 0 0 0 -1 -1
-L 32400 58000 32600 58000 2 0 0 0 -1 -1
-L 32400 58600 32600 58600 2 0 0 0 -1 -1
-L 30300 59200 30300 59400 2 0 0 0 -1 -1
-L 30300 59500 30300 59700 2 0 0 0 -1 -1
-L 30300 59800 30300 60100 2 0 0 0 -1 -1
-L 30200 59700 30400 59700 2 0 0 0 -1 -1
-L 30400 59400 30200 59400 2 0 0 0 -1 -1
-L 30200 60100 30400 60100 2 0 0 0 -1 -1
-L 32600 58500 32600 58700 2 0 0 0 -1 -1
-L 32600 58200 32600 58400 2 0 0 0 -1 -1
-L 32600 57900 32600 58100 2 0 0 0 -1 -1
-L 28300 60500 28100 60500 2 0 0 0 -1 -1
-L 28100 60600 28100 60400 2 0 0 0 -1 -1
-L 28300 60800 28100 60800 2 0 0 0 -1 -1
-L 28100 60700 28100 60900 2 0 0 0 -1 -1
-B 28300 57700 4400 1200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-B 28200 59000 4200 1200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 28300 61100 28100 61100 2 0 0 0 -1 -1
-L 28100 61200 28100 61000 2 0 0 0 -1 -1
-B 28000 60300 4400 1100 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-T 32400 58000 9 10 1 0 180 0 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 32400 58300 9 10 1 0 180 1 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 32400 58600 9 10 1 0 180 2 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 30300 59200 9 10 1 0 180 3 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 30300 59500 9 10 1 0 180 4 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 30300 59800 9 10 1 0 180 5 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 28300 60500 9 10 1 0 180 6 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 28300 60800 9 10 1 0 180 7 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 28300 61100 9 10 1 0 180 8 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 27200 57800 27200 58000 2 0 0 0 -1 -1
-L 27500 57800 27500 58000 2 0 0 0 -1 -1
-L 26900 57800 26900 58000 2 0 0 0 -1 -1
-L 26300 55700 26100 55700 2 0 0 0 -1 -1
-L 26000 55700 25800 55700 2 0 0 0 -1 -1
-L 25700 55700 25400 55700 2 0 0 0 -1 -1
-L 25800 55600 25800 55800 2 0 0 0 -1 -1
-L 26100 55800 26100 55600 2 0 0 0 -1 -1
-L 25400 55600 25400 55800 2 0 0 0 -1 -1
-L 27000 58000 26800 58000 2 0 0 0 -1 -1
-L 27300 58000 27100 58000 2 0 0 0 -1 -1
-L 27600 58000 27400 58000 2 0 0 0 -1 -1
-L 25000 53700 25000 53500 2 0 0 0 -1 -1
-L 24900 53500 25100 53500 2 0 0 0 -1 -1
-L 24700 53700 24700 53500 2 0 0 0 -1 -1
-L 24800 53500 24600 53500 2 0 0 0 -1 -1
-B 26600 53700 1200 4400 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-B 25300 53600 1200 4200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 24400 53700 24400 53500 2 0 0 0 -1 -1
-L 24300 53500 24500 53500 2 0 0 0 -1 -1
-B 24100 53400 1100 4400 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-T 27500 57800 9 10 1 0 270 0 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 27200 57800 9 10 1 0 270 1 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 26900 57800 9 10 1 0 270 2 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 26300 55700 9 10 1 0 270 3 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 26000 55700 9 10 1 0 270 4 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 25700 55700 9 10 1 0 270 5 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 25000 53700 9 10 1 0 270 6 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 24700 53700 9 10 1 0 270 7 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 24400 53700 9 10 1 0 270 8 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-L 33000 66200 33200 66200 2 0 0 0 -1 -1
-L 33000 66500 33200 66500 2 0 0 0 -1 -1
-L 33000 65900 33200 65900 2 0 0 0 -1 -1
-L 30900 65300 30900 65100 2 0 0 0 -1 -1
-L 30900 65000 30900 64800 2 0 0 0 -1 -1
-L 30900 64700 30900 64400 2 0 0 0 -1 -1
-L 30800 64800 31000 64800 2 0 0 0 -1 -1
-L 31000 65100 30800 65100 2 0 0 0 -1 -1
-L 30800 64400 31000 64400 2 0 0 0 -1 -1
-L 33200 66000 33200 65800 2 0 0 0 -1 -1
-L 33200 66300 33200 66100 2 0 0 0 -1 -1
-L 33200 66600 33200 66400 2 0 0 0 -1 -1
-L 28900 64000 28700 64000 2 0 0 0 -1 -1
-L 28700 63900 28700 64100 2 0 0 0 -1 -1
-L 28900 63700 28700 63700 2 0 0 0 -1 -1
-L 28700 63800 28700 63600 2 0 0 0 -1 -1
-B 28900 65600 4400 1200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-B 28800 64300 4200 1200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 28900 63400 28700 63400 2 0 0 0 -1 -1
-L 28700 63300 28700 63500 2 0 0 0 -1 -1
-B 28600 63100 4400 1100 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 27500 63500 27500 63300 2 0 0 0 -1 -1
-L 27800 63500 27800 63300 2 0 0 0 -1 -1
-L 27200 63500 27200 63300 2 0 0 0 -1 -1
-L 26600 65600 26400 65600 2 0 0 0 -1 -1
-L 26300 65600 26100 65600 2 0 0 0 -1 -1
-L 26000 65600 25700 65600 2 0 0 0 -1 -1
-L 26100 65700 26100 65500 2 0 0 0 -1 -1
-L 26400 65500 26400 65700 2 0 0 0 -1 -1
-L 25700 65700 25700 65500 2 0 0 0 -1 -1
-L 27300 63300 27100 63300 2 0 0 0 -1 -1
-L 27600 63300 27400 63300 2 0 0 0 -1 -1
-L 27900 63300 27700 63300 2 0 0 0 -1 -1
-L 25300 67600 25300 67800 2 0 0 0 -1 -1
-L 25200 67800 25400 67800 2 0 0 0 -1 -1
-L 25000 67600 25000 67800 2 0 0 0 -1 -1
-L 25100 67800 24900 67800 2 0 0 0 -1 -1
-B 26900 63200 1200 4400 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-B 25600 63500 1200 4200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 24700 67600 24700 67800 2 0 0 0 -1 -1
-L 24600 67800 24800 67800 2 0 0 0 -1 -1
-B 24400 63500 1100 4400 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 29200 67800 29000 67800 2 0 0 0 -1 -1
-L 29200 67500 29000 67500 2 0 0 0 -1 -1
-L 29200 68100 29000 68100 2 0 0 0 -1 -1
-L 31300 68700 31300 68900 2 0 0 0 -1 -1
-L 31300 69000 31300 69200 2 0 0 0 -1 -1
-L 31300 69300 31300 69600 2 0 0 0 -1 -1
-L 31400 69200 31200 69200 2 0 0 0 -1 -1
-L 31200 68900 31400 68900 2 0 0 0 -1 -1
-L 31400 69600 31200 69600 2 0 0 0 -1 -1
-L 29000 68000 29000 68200 2 0 0 0 -1 -1
-L 29000 67700 29000 67900 2 0 0 0 -1 -1
-L 29000 67400 29000 67600 2 0 0 0 -1 -1
-L 33300 70000 33500 70000 2 0 0 0 -1 -1
-L 33500 70100 33500 69900 2 0 0 0 -1 -1
-L 33300 70300 33500 70300 2 0 0 0 -1 -1
-L 33500 70200 33500 70400 2 0 0 0 -1 -1
-B 28900 67200 4400 1200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-B 29200 68500 4200 1200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 33300 70600 33500 70600 2 0 0 0 -1 -1
-L 33500 70700 33500 70500 2 0 0 0 -1 -1
-B 29200 69800 4400 1100 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 34400 67300 34400 67500 2 0 0 0 -1 -1
-L 34100 67300 34100 67500 2 0 0 0 -1 -1
-L 34700 67300 34700 67500 2 0 0 0 -1 -1
-L 35300 65200 35500 65200 2 0 0 0 -1 -1
-L 35600 65200 35800 65200 2 0 0 0 -1 -1
-L 35900 65200 36200 65200 2 0 0 0 -1 -1
-L 35800 65100 35800 65300 2 0 0 0 -1 -1
-L 35500 65300 35500 65100 2 0 0 0 -1 -1
-L 36200 65100 36200 65300 2 0 0 0 -1 -1
-L 34600 67500 34800 67500 2 0 0 0 -1 -1
-L 34300 67500 34500 67500 2 0 0 0 -1 -1
-L 34000 67500 34200 67500 2 0 0 0 -1 -1
-L 36600 63200 36600 63000 2 0 0 0 -1 -1
-L 36700 63000 36500 63000 2 0 0 0 -1 -1
-L 36900 63200 36900 63000 2 0 0 0 -1 -1
-L 36800 63000 37000 63000 2 0 0 0 -1 -1
-B 33800 63200 1200 4400 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-B 35100 63100 1200 4200 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-L 37200 63200 37200 63000 2 0 0 0 -1 -1
-L 37300 63000 37100 63000 2 0 0 0 -1 -1
-B 36400 62900 1100 4400 15 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-T 33000 66500 9 10 1 0 0 6 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 33000 66200 9 10 1 0 0 7 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 33000 65900 9 10 1 0 0 8 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 30900 65300 9 10 1 0 0 3 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 30900 65000 9 10 1 0 0 4 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 30900 64700 9 10 1 0 0 5 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 28900 64000 9 10 1 0 0 0 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 28900 63700 9 10 1 0 0 1 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 28900 63400 9 10 1 0 0 2 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 27800 63500 9 10 1 0 90 2 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 27500 63500 9 10 1 0 90 1 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 27200 63500 9 10 1 0 90 0 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 26600 65600 9 10 1 0 90 5 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 26300 65600 9 10 1 0 90 4 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 26000 65600 9 10 1 0 90 3 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 25300 67600 9 10 1 0 90 8 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 25000 67600 9 10 1 0 90 7 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 24700 67600 9 10 1 0 90 6 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 29200 67500 9 10 1 0 180 6 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 29200 67800 9 10 1 0 180 7 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 29200 68100 9 10 1 0 180 8 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 31300 68700 9 10 1 0 180 3 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 31300 69000 9 10 1 0 180 4 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 31300 69300 9 10 1 0 180 5 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 33300 70000 9 10 1 0 180 0 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 33300 70300 9 10 1 0 180 1 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 33300 70600 9 10 1 0 180 2 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 34100 67300 9 10 1 0 270 2 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 34400 67300 9 10 1 0 270 1 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 34700 67300 9 10 1 0 270 0 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 35300 65200 9 10 1 0 270 5 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 35600 65200 9 10 1 0 270 4 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 35900 65200 9 10 1 0 270 3 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 36600 63200 9 10 1 0 270 8 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 36900 63200 9 10 1 0 270 7 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 37200 63200 9 10 1 0 270 6 1
-This is some text. ABC abc 1 2 3 4 5 6 7 8 9 0
-T 27000 68800 9 10 1 0 0 0 1
-Mirrored
-T 21800 59100 9 10 1 0 0 0 1
-text with a	tab
-T 21600 59400 9 10 1 0 90 0 1
-text with a	tab
-T 21300 59200 9 10 1 0 180 0 1
-text with a	tab
-T 21500 58900 9 10 1 0 270 0 1
-text with a	tab
-T 21100 68500 9 10 1 0 0 6 1
-text with a	tab
-T 21600 68600 9 10 1 0 180 6 1
-text with a	tab
-T 21300 68800 9 10 1 0 90 2 1
-text with a	tab
-T 21400 68300 9 10 1 0 270 2 1
-text with a	tab
+v 20080706 2
+B 15000 69200 7300 3700 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+T 15400 72500 9 10 1 0 0 2 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+L 15400 72500 15300 72600 2 0 0 0 -1 -1
+L 15200 72500 15400 72700 2 0 0 0 -1 -1
+T 15400 71000 9 10 1 0 0 1 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 15400 69600 9 10 1 0 0 0 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18600 72500 9 10 1 0 0 5 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18600 71000 9 10 1 0 0 4 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18600 69600 9 10 1 0 0 3 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 21900 72500 9 10 1 0 0 8 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 21900 71000 9 10 1 0 0 7 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 21900 69600 9 10 1 0 0 6 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+L 18600 72500 18600 72700 2 0 0 0 -1 -1
+L 18400 72700 18800 72700 2 0 0 0 -1 -1
+L 21900 72500 22000 72600 2 0 0 0 -1 -1
+L 21900 72700 22100 72500 2 0 0 0 -1 -1
+L 21900 71000 22100 71000 2 0 0 0 -1 -1
+L 22100 71200 22100 70800 2 0 0 0 -1 -1
+L 21900 69600 22000 69500 2 0 0 0 -1 -1
+L 22100 69600 21900 69400 2 0 0 0 -1 -1
+L 18600 69600 18600 69400 2 0 0 0 -1 -1
+L 18400 69400 18800 69400 2 0 0 0 -1 -1
+L 15400 69600 15300 69500 2 0 0 0 -1 -1
+L 15200 69600 15400 69400 2 0 0 0 -1 -1
+L 15400 71000 15200 71000 2 0 0 0 -1 -1
+L 15200 71200 15200 70800 2 0 0 0 -1 -1
+L 18500 71100 18700 70900 2 0 0 0 -1 -1
+L 18500 70900 18700 71100 2 0 0 0 -1 -1
+T 12100 59300 9 24 1 0 90 0 1
+Rotation
+T 22800 75000 9 24 1 0 0 0 1
+Mirroring
+L 14600 75000 14600 48500 3 0 0 0 -1 -1
+L 13900 73500 33500 73500 3 0 0 0 -1 -1
+T 17200 73800 9 24 1 0 0 0 1
+Unmirrord Text
+T 27100 73800 9 24 1 0 0 0 1
+Mirrored Text
+T 14000 70200 9 24 1 0 90 0 1
+0 degree
+T 14000 64300 9 24 1 0 90 0 1
+90 degree
+T 13900 57800 9 24 1 0 90 0 1
+180 degree
+T 14000 51300 9 24 1 0 90 0 1
+270 degree
+L 23900 74400 23900 48700 3 0 0 0 -1 -1
+B 16800 61400 3700 7300 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+L 17200 61800 17100 61700 2 0 0 0 -1 -1
+L 17200 61600 17000 61800 2 0 0 0 -1 -1
+L 17200 65000 17000 65000 2 0 0 0 -1 -1
+L 17000 64800 17000 65200 2 0 0 0 -1 -1
+L 17200 68300 17100 68400 2 0 0 0 -1 -1
+L 17000 68300 17200 68500 2 0 0 0 -1 -1
+L 18700 68300 18700 68500 2 0 0 0 -1 -1
+L 18500 68500 18900 68500 2 0 0 0 -1 -1
+L 20100 68300 20200 68400 2 0 0 0 -1 -1
+L 20100 68500 20300 68300 2 0 0 0 -1 -1
+L 20100 65000 20300 65000 2 0 0 0 -1 -1
+L 20300 64800 20300 65200 2 0 0 0 -1 -1
+L 20100 61800 20200 61700 2 0 0 0 -1 -1
+L 20100 61600 20300 61800 2 0 0 0 -1 -1
+L 18700 61800 18700 61600 2 0 0 0 -1 -1
+L 18500 61600 18900 61600 2 0 0 0 -1 -1
+L 18600 64900 18800 65100 2 0 0 0 -1 -1
+L 18800 64900 18600 65100 2 0 0 0 -1 -1
+T 17200 61800 9 10 1 0 90 2 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18700 61800 9 10 1 0 90 1 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 20100 61800 9 10 1 0 90 0 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 17200 65000 9 10 1 0 90 5 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18700 65000 9 10 1 0 90 4 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 20100 65000 9 10 1 0 90 3 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 17200 68300 9 10 1 0 90 8 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18700 68300 9 10 1 0 90 7 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 20100 68300 9 10 1 0 90 6 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+B 15600 56800 7300 3700 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+L 22500 57200 22600 57100 2 0 0 0 -1 -1
+L 22700 57200 22500 57000 2 0 0 0 -1 -1
+L 19300 57200 19300 57000 2 0 0 0 -1 -1
+L 19500 57000 19100 57000 2 0 0 0 -1 -1
+L 16000 57200 15900 57100 2 0 0 0 -1 -1
+L 16000 57000 15800 57200 2 0 0 0 -1 -1
+L 16000 58700 15800 58700 2 0 0 0 -1 -1
+L 15800 58500 15800 58900 2 0 0 0 -1 -1
+L 16000 60100 15900 60200 2 0 0 0 -1 -1
+L 15800 60100 16000 60300 2 0 0 0 -1 -1
+L 19300 60100 19300 60300 2 0 0 0 -1 -1
+L 19500 60300 19100 60300 2 0 0 0 -1 -1
+L 22500 60100 22600 60200 2 0 0 0 -1 -1
+L 22700 60100 22500 60300 2 0 0 0 -1 -1
+L 22500 58700 22700 58700 2 0 0 0 -1 -1
+L 22700 58500 22700 58900 2 0 0 0 -1 -1
+L 19400 58600 19200 58800 2 0 0 0 -1 -1
+L 19400 58800 19200 58600 2 0 0 0 -1 -1
+T 22500 57200 9 10 1 0 180 2 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 22500 58700 9 10 1 0 180 1 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 22500 60100 9 10 1 0 180 0 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 19300 57200 9 10 1 0 180 5 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 19300 58700 9 10 1 0 180 4 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 19300 60100 9 10 1 0 180 3 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 16000 57200 9 10 1 0 180 8 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 16000 58700 9 10 1 0 180 7 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 16000 60100 9 10 1 0 180 6 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+B 17000 48700 3700 7300 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+L 20300 55600 20400 55700 2 0 0 0 -1 -1
+L 20300 55800 20500 55600 2 0 0 0 -1 -1
+L 20300 52400 20500 52400 2 0 0 0 -1 -1
+L 20500 52600 20500 52200 2 0 0 0 -1 -1
+L 20300 49100 20400 49000 2 0 0 0 -1 -1
+L 20500 49100 20300 48900 2 0 0 0 -1 -1
+L 18800 49100 18800 48900 2 0 0 0 -1 -1
+L 19000 48900 18600 48900 2 0 0 0 -1 -1
+L 17400 49100 17300 49000 2 0 0 0 -1 -1
+L 17400 48900 17200 49100 2 0 0 0 -1 -1
+L 17400 52400 17200 52400 2 0 0 0 -1 -1
+L 17200 52600 17200 52200 2 0 0 0 -1 -1
+L 17400 55600 17300 55700 2 0 0 0 -1 -1
+L 17400 55800 17200 55600 2 0 0 0 -1 -1
+L 18800 55600 18800 55800 2 0 0 0 -1 -1
+L 19000 55800 18600 55800 2 0 0 0 -1 -1
+L 18900 52500 18700 52300 2 0 0 0 -1 -1
+L 18700 52500 18900 52300 2 0 0 0 -1 -1
+T 20300 55600 9 10 1 0 270 2 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18800 55600 9 10 1 0 270 1 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 17400 55600 9 10 1 0 270 0 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 20300 52400 9 10 1 0 270 5 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18800 52400 9 10 1 0 270 4 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 17400 52400 9 10 1 0 270 3 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 20300 49100 9 10 1 0 270 8 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 18800 49100 9 10 1 0 270 7 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 17400 49100 9 10 1 0 270 6 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+B 25700 69200 7300 3700 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+L 32600 72500 32700 72600 2 0 0 0 -1 -1
+L 32800 72500 32600 72700 2 0 0 0 -1 -1
+L 29400 72500 29400 72700 2 0 0 0 -1 -1
+L 29600 72700 29200 72700 2 0 0 0 -1 -1
+L 26100 72500 26000 72600 2 0 0 0 -1 -1
+L 26100 72700 25900 72500 2 0 0 0 -1 -1
+L 26100 71000 25900 71000 2 0 0 0 -1 -1
+L 25900 71200 25900 70800 2 0 0 0 -1 -1
+L 26100 69600 26000 69500 2 0 0 0 -1 -1
+L 25900 69600 26100 69400 2 0 0 0 -1 -1
+L 29400 69600 29400 69400 2 0 0 0 -1 -1
+L 29600 69400 29200 69400 2 0 0 0 -1 -1
+L 32600 69600 32700 69500 2 0 0 0 -1 -1
+L 32800 69600 32600 69400 2 0 0 0 -1 -1
+L 32600 71000 32800 71000 2 0 0 0 -1 -1
+L 32800 71200 32800 70800 2 0 0 0 -1 -1
+L 29500 71100 29300 70900 2 0 0 0 -1 -1
+L 29500 70900 29300 71100 2 0 0 0 -1 -1
+B 27500 61400 3700 7300 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+L 30800 61800 30900 61700 2 0 0 0 -1 -1
+L 30800 61600 31000 61800 2 0 0 0 -1 -1
+L 30800 65000 31000 65000 2 0 0 0 -1 -1
+L 31000 64800 31000 65200 2 0 0 0 -1 -1
+L 30800 68300 30900 68400 2 0 0 0 -1 -1
+L 31000 68300 30800 68500 2 0 0 0 -1 -1
+L 29300 68300 29300 68500 2 0 0 0 -1 -1
+L 29500 68500 29100 68500 2 0 0 0 -1 -1
+L 27900 68300 27800 68400 2 0 0 0 -1 -1
+L 27900 68500 27700 68300 2 0 0 0 -1 -1
+L 27900 65000 27700 65000 2 0 0 0 -1 -1
+L 27700 64800 27700 65200 2 0 0 0 -1 -1
+L 27900 61800 27800 61700 2 0 0 0 -1 -1
+L 27900 61600 27700 61800 2 0 0 0 -1 -1
+L 29300 61800 29300 61600 2 0 0 0 -1 -1
+L 29500 61600 29100 61600 2 0 0 0 -1 -1
+L 29400 64900 29200 65100 2 0 0 0 -1 -1
+L 29200 64900 29400 65100 2 0 0 0 -1 -1
+B 25100 56800 7300 3700 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+L 25500 57200 25400 57100 2 0 0 0 -1 -1
+L 25300 57200 25500 57000 2 0 0 0 -1 -1
+L 28700 57200 28700 57000 2 0 0 0 -1 -1
+L 28500 57000 28900 57000 2 0 0 0 -1 -1
+L 32000 57200 32100 57100 2 0 0 0 -1 -1
+L 32000 57000 32200 57200 2 0 0 0 -1 -1
+L 32000 58700 32200 58700 2 0 0 0 -1 -1
+L 32200 58500 32200 58900 2 0 0 0 -1 -1
+L 32000 60100 32100 60200 2 0 0 0 -1 -1
+L 32200 60100 32000 60300 2 0 0 0 -1 -1
+L 28700 60100 28700 60300 2 0 0 0 -1 -1
+L 28500 60300 28900 60300 2 0 0 0 -1 -1
+L 25500 60100 25400 60200 2 0 0 0 -1 -1
+L 25300 60100 25500 60300 2 0 0 0 -1 -1
+L 25500 58700 25300 58700 2 0 0 0 -1 -1
+L 25300 58500 25300 58900 2 0 0 0 -1 -1
+L 28600 58600 28800 58800 2 0 0 0 -1 -1
+L 28600 58800 28800 58600 2 0 0 0 -1 -1
+B 27300 48700 3700 7300 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+L 27700 55600 27600 55700 2 0 0 0 -1 -1
+L 27700 55800 27500 55600 2 0 0 0 -1 -1
+L 27700 52400 27500 52400 2 0 0 0 -1 -1
+L 27500 52600 27500 52200 2 0 0 0 -1 -1
+L 27700 49100 27600 49000 2 0 0 0 -1 -1
+L 27500 49100 27700 48900 2 0 0 0 -1 -1
+L 29200 49100 29200 48900 2 0 0 0 -1 -1
+L 29000 48900 29400 48900 2 0 0 0 -1 -1
+L 30600 49100 30700 49000 2 0 0 0 -1 -1
+L 30600 48900 30800 49100 2 0 0 0 -1 -1
+L 30600 52400 30800 52400 2 0 0 0 -1 -1
+L 30800 52600 30800 52200 2 0 0 0 -1 -1
+L 30600 55600 30700 55700 2 0 0 0 -1 -1
+L 30600 55800 30800 55600 2 0 0 0 -1 -1
+L 29200 55600 29200 55800 2 0 0 0 -1 -1
+L 29000 55800 29400 55800 2 0 0 0 -1 -1
+L 29100 52500 29300 52300 2 0 0 0 -1 -1
+L 29300 52500 29100 52300 2 0 0 0 -1 -1
+T 32600 72500 9 10 1 0 0 8 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 32600 71000 9 10 1 0 0 7 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 32600 69600 9 10 1 0 0 6 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29400 72500 9 10 1 0 0 5 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29400 71000 9 10 1 0 0 4 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29400 69600 9 10 1 0 0 3 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 26100 72500 9 10 1 0 0 2 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 26100 71000 9 10 1 0 0 1 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 26100 69600 9 10 1 0 0 0 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 30800 61800 9 10 1 0 90 0 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29300 61800 9 10 1 0 90 1 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 27900 61800 9 10 1 0 90 2 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 30800 65000 9 10 1 0 90 3 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29300 65000 9 10 1 0 90 4 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 27900 65000 9 10 1 0 90 5 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 30800 68300 9 10 1 0 90 6 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29300 68300 9 10 1 0 90 7 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 27900 68300 9 10 1 0 90 8 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 25500 57200 9 10 1 0 180 8 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 25500 58700 9 10 1 0 180 7 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 25500 60100 9 10 1 0 180 6 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 28700 57200 9 10 1 0 180 5 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 28700 58700 9 10 1 0 180 4 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 28700 60100 9 10 1 0 180 3 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 32000 57200 9 10 1 0 180 2 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 32000 58700 9 10 1 0 180 1 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 32000 60100 9 10 1 0 180 0 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 27700 55600 9 10 1 0 270 0 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29200 55600 9 10 1 0 270 1 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 30600 55600 9 10 1 0 270 2 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 27700 52400 9 10 1 0 270 3 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29200 52400 9 10 1 0 270 4 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 30600 52400 9 10 1 0 270 5 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 27700 49100 9 10 1 0 270 6 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 29200 49100 9 10 1 0 270 7 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 30600 49100 9 10 1 0 270 8 3
+Text 	first line
+Text	second \_line
+Text	third\_ line
+T 16800 77100 9 36 1 0 0 0 1
+alignment, rotation and mirroring test
+L 13900 69000 33500 69000 3 0 0 0 -1 -1
+L 13900 61000 33500 61000 3 0 0 0 -1 -1
+L 13900 56400 33500 56400 3 0 0 0 -1 -1
+T 40500 77100 9 36 1 0 0 0 1
+tabulator tests
+T 40500 72350 9 10 1 0 0 0 7
+bbbbbbbbaaaaaaaaaa
+	tab without prefix
+aa	tab with prefix aa
+		two tabs
+bbbbbbbb	bbbbbbbb
+bbbbbbb	short tab
+more	than	one	tab
+L 40700 73700 41000 73700 2 0 0 0 -1 -1
+L 41000 73700 40900 73750 2 0 0 0 -1 -1
+L 41000 73700 40900 73650 2 0 0 0 -1 -1
+L 40900 73450 41200 73450 2 0 0 0 -1 -1
+L 41200 73450 41100 73500 2 0 0 0 -1 -1
+L 41200 73450 41100 73400 2 0 0 0 -1 -1
+L 40750 73150 41050 73150 2 0 0 0 -1 -1
+L 41050 73150 40950 73200 2 0 0 0 -1 -1
+L 41050 73150 40950 73100 2 0 0 0 -1 -1
+L 41650 73150 41950 73150 2 0 0 0 -1 -1
+L 41950 73150 41850 73200 2 0 0 0 -1 -1
+L 41950 73150 41850 73100 2 0 0 0 -1 -1
+L 41650 72950 41950 72950 2 0 0 0 -1 -1
+L 41950 72950 41850 73000 2 0 0 0 -1 -1
+L 41950 72950 41850 72900 2 0 0 0 -1 -1
+L 41250 72650 41350 72650 2 0 0 0 -1 -1
+L 41350 72650 41250 72700 2 0 0 0 -1 -1
+L 41350 72650 41250 72600 2 0 0 0 -1 -1
+L 41000 72400 41300 72400 2 0 0 0 -1 -1
+L 41300 72400 41200 72450 2 0 0 0 -1 -1
+L 41300 72400 41200 72350 2 0 0 0 -1 -1
+L 41900 72400 42200 72400 2 0 0 0 -1 -1
+L 42200 72400 42100 72450 2 0 0 0 -1 -1
+L 42200 72400 42100 72350 2 0 0 0 -1 -1
+L 42650 72400 42950 72400 2 0 0 0 -1 -1
+L 42950 72400 42850 72450 2 0 0 0 -1 -1
+L 42950 72400 42850 72350 2 0 0 0 -1 -1
+T 47500 77100 9 36 1 0 0 0 1
+overbar tests
+T 47500 73900 9 10 1 0 0 0 1
+simple \_overbar\_
+T 47500 73500 9 10 1 0 0 0 1
+\_overbar	with 	tabs\_
+T 47500 73100 9 10 1 0 0 0 1
+attribute_name=\_attribute_value\_
+T 51800 73100 9 10 1 1 0 0 1
+attribute_name=\_attribute_value\_
+T 50450 73200 9 10 1 0 0 0 1
+show_value
+T 47500 72300 9 10 1 0 0 0 2
+multiline \_overbar
+continued\_ on the second line
+L 50400 73150 51600 73150 2 0 0 0 -1 -1
+L 51600 73150 51500 73200 2 0 0 0 -1 -1
+L 51600 73150 51500 73100 2 0 0 0 -1 -1
+T 47500 71900 9 10 1 0 0 0 1
+escaped backslash character _\\_
+T 47500 71500 9 10 1 0 0 0 1
+escaped normal characters \a\b\c\d
+T 47500 70500 9 10 1 0 0 0 3
+escaped\	tab and escaped \
+newline character, both are treated
+as normal characters
+L 48200 71100 48350 71100 2 0 0 0 -1 -1
+L 48350 71100 48250 71150 2 0 0 0 -1 -1
+L 48350 71100 48250 71050 2 0 0 0 -1 -1
+T 47500 70000 9 10 1 0 0 0 1
+unbalanced \_overbar

commit 75f53b0b7a1a2859a604b70dfecc6a439b8b57da
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Wed Oct 29 22:37:13 2008 +0100

    gschem: replaced fnameext* functions with glib functions
    
    Removed the functions fnameext_get, fnameext_remove and fnameext_add.

diff --git a/gschem/src/i_callbacks.c b/gschem/src/i_callbacks.c
index c280201..52c630d 100644
--- a/gschem/src/i_callbacks.c
+++ b/gschem/src/i_callbacks.c
@@ -41,65 +41,6 @@
  *  \par Function Description
  *
  */
-/* Kazu Hirata <kazu@xxxxxxxx> on July 25, 1999 - Returns a pointer to
- * the last '.' in the given string. If there is none, the function
- * returns a pointer to the first null character in the string. If you
- * want to change the extention using the return value of the
- * function, you need to do pointer arithmetic, assuming your fname is
- * defined as a constant. :-) Note that, if the only '.' appears as
- * the first character, it is ignored. */
-static const char *fnameext_get(const char* fname)
-{
-  const char *p = strrchr(fname, '.');
-
-  if((p == NULL) || (p == fname)) {
-    p = &fname[strlen(fname)];
-  }
-  return p;
-}
-
-/*! \todo Finish function documentation!!!
- *  \brief
- *  \par Function Description
- *
- */
-/* Kazu Hirata <kazu@xxxxxxxx> on July 25, 1999 - The function removes
- * an extention including a '.' if any and returns the new string in a
- * newly allocated memory. If there is no '.' after the first
- * character, then the function simply returns a copy of fname. If
- * memory allocation fails, the function returns NULL. */
-static char *fnameext_remove(const char *fname)
-{
-  const char *p = fnameext_get(fname);
-  char *fname_new = NULL;
-
-  if(*p == '\0') {
-    fname_new = g_strdup (fname);
-  } else {
-    fname_new = g_strndup (fname, p - fname);
-  }
-  return fname_new;
-}
-
-/*! \todo Finish function documentation!!!
- *  \brief
- *  \par Function Description
- *
- */
-/* Kazu Hirata <kazu@xxxxxxxx> on July 25, 1999 - The function adds an
- * extention and returns the new string in a newly allocated
- * memory. ext must have '.'  as the first character. If memory
- * allocation fails, the function returns NULL. */
-static char *fnameext_add(const char *fname, const char* ext)
-{
-  return g_strconcat (fname, ext, NULL);
-}
-
-/*! \todo Finish function documentation!!!
- *  \brief
- *  \par Function Description
- *
- */
 /* Egil Kvaleberg <egil@xxxxxxxxxxxx> on October 7, 2002 - 
  * Initiate the gschemdoc utility to provide the used with as much
  * documentation on the symbol (i.e. component) as we can manage.
@@ -364,26 +305,26 @@ DEFINE_I_CALLBACK(file_save_as)
 DEFINE_I_CALLBACK(file_print)
 {
   GSCHEM_TOPLEVEL *w_current = (GSCHEM_TOPLEVEL*) data;
-  char *base=NULL;
+  char *base=NULL, *filename;
   char *ps_filename=NULL;
   
   exit_if_null(w_current);
+  exit_if_null(w_current->toplevel->page_current->page_filename);
+
+  /* shortcut */
+  filename = w_current->toplevel->page_current->page_filename;
 
   /* get the base file name */
-  if (strcmp(fnameext_get(w_current->toplevel->page_current->page_filename),
-             ".sch") == 0) {
-    /* the filename ends with .sch */
-    base = fnameext_remove(w_current->toplevel->page_current->page_filename);
+  if (g_str_has_suffix(filename, ".sch")) {
+    /* the filename ends with ".sch", remove it */
+    base = g_strndup(filename, strlen(filename) - strlen(".sch"));
   } else {
     /* the filename does not end with .sch */
-    base = g_strdup (w_current->toplevel->page_current->page_filename);
-  }
-  if(base == NULL) {
-    /*! \todo do something */
+    base = g_strdup (filename);
   }
 
   /* add ".ps" tp the base filename */
-  ps_filename = fnameext_add(base, ".ps");
+  ps_filename = g_strconcat (base, ".ps", NULL);
   g_free(base);
 
   if (output_filename) {




_______________________________________________
geda-cvs mailing list
geda-cvs@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-cvs