<!DOCTYPE KigDocument>
<KigDocument axes="1" grid="1" Version="0.7.0" >
 <CoordinateSystem>Euclidean</CoordinateSystem>
 <Hierarchy>
  <Data type="string" id="1" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="double" id="2" >0.811312</Data>
  <Data type="string" id="3" >connect in the given order by hyperbolic segments</Data>
  <Data type="int" id="4" >1</Data>
  <Data type="point" id="5" >
   <x>-0.000758328</x>
   <y>-0.0872991</y>
  </Data>
  <Data type="string" id="6" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="string" id="7" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="double" id="8" >0.900981</Data>
  <Data type="string" id="9" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="double" id="10" >0.330512</Data>
  <Data type="string" id="11" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="double" id="12" >2</Data>
  <Data type="string" id="13" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="string" id="14" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="int" id="15" >0</Data>
  <Data type="double" id="16" >0</Data>
  <Data type="double" id="17" >1.26708</Data>
  <Data type="double" id="18" >2.70008</Data>
  <Data type="double" id="19" >0.2529</Data>
  <Data type="double" id="20" >0.171111</Data>
  <Data type="double" id="21" >1.49455</Data>
  <Data type="double" id="22" >2.871</Data>
  <Data type="double" id="23" >0.175942</Data>
  <Data type="double" id="24" >2.09262</Data>
  <Data type="string" id="25" >2</Data>
  <Data type="string" id="26" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="double" id="27" >0.467627</Data>
  <Data type="double" id="28" >0.632617</Data>
  <Data type="double" id="29" >0.841198</Data>
  <Data type="double" id="30" >1.49253</Data>
  <Data type="int" id="31" >0</Data>
  <Data type="double" id="32" >0.934191</Data>
  <Data type="string" id="33" >def calc( arg1, arg2 ):
	# Calculate whatever you want to show here, and return it.
	# For example, to implement a mid point, you would put this 
	# code here:
	#	return Point( ( arg1.coordinate() + arg2.coordinate() ) / 2 )
	# Please refer to the manual for more information.
        a=arg1.coordinate();
        b=arg2.coordinate();
        ax=a.x
        ay=a.y
        if ay < 0:
           return InvalidObject()
        bx=b.x
        by=b.y
        if by < 0:
           return InvalidObject()
        asq=ax*ax + ay*ay
        bsq=bx*bx + by*by
        den = 2*(bx - ax)
        if den == 0:
          return Segment(a,b)
        x = (bsq - asq)/den
        c = Coordinate(x,0)
        rsq = asq + x*x - 2*x*ax
        r = sqrt (rsq)
        if rsq > 100*asq:
          return Segment(a,b)
        alfa = atan2(ay, ax-x)
        beta = atan2(by, bx-x)
        return Arc(c,r,alfa,beta-alfa)
</Data>
  <Data type="double" id="34" >2.15154</Data>
  <Data type="string" id="35" >5</Data>
  <Data type="int" id="36" >0</Data>
  <Data type="int" id="37" >0</Data>
  <Data type="string" id="38" >7</Data>
  <Data type="int" id="39" >0</Data>
  <Data type="int" id="40" >0</Data>
  <Data type="string" id="41" >6</Data>
  <Data type="string" id="42" >4</Data>
  <Data type="int" id="43" >0</Data>
  <Data type="double" id="44" >0</Data>
  <Data type="double" id="45" >2.12327</Data>
  <Data type="double" id="46" >0</Data>
  <Data type="double" id="47" >0.242</Data>
  <Data type="point" id="48" >
   <x>0.564893</x>
   <y>0.341635</y>
  </Data>
  <Data type="string" id="49" >3</Data>
  <Data type="double" id="50" >0.296018</Data>
  <Data type="double" id="51" >1.03607</Data>
  <Data type="double" id="52" >2.06078</Data>
  <Data type="double" id="53" >1.39921</Data>
  <Data type="double" id="54" >0.0406477</Data>
  <Data type="double" id="55" >1.37143</Data>
  <Data type="string" id="56" >1</Data>
  <Data type="double" id="57" >1.08064</Data>
  <Data type="double" id="58" >0.638</Data>
  <Data type="double" id="59" >1.71058</Data>
  <Data type="double" id="60" >2.11172</Data>
  <Data type="double" id="61" >1.93972</Data>
  <Data type="double" id="62" >1.20617</Data>
  <Data type="double" id="63" >0.0479634</Data>
  <Data type="double" id="64" >1.22712</Data>
  <Data type="double" id="65" >1.75412</Data>
  <Data type="string" id="66" >9</Data>
  <Data type="int" id="67" >0</Data>
  <Data type="int" id="68" >0</Data>
  <Data type="string" id="69" >8</Data>
  <Data type="double" id="70" >0.869132</Data>
  <Object type="PythonCompileType" id="71" >
   <Parent id="1" />
  </Object>
  <Object type="Label" id="72" >
   <Parent id="4" />
   <Parent id="5" />
   <Parent id="3" />
  </Object>
  <Object type="PythonCompileType" id="73" >
   <Parent id="6" />
  </Object>
  <Object type="PythonCompileType" id="74" >
   <Parent id="7" />
  </Object>
  <Object type="PythonCompileType" id="75" >
   <Parent id="9" />
  </Object>
  <Object type="PythonCompileType" id="76" >
   <Parent id="11" />
  </Object>
  <Object type="PythonCompileType" id="77" >
   <Parent id="13" />
  </Object>
  <Object type="PythonCompileType" id="78" >
   <Parent id="14" />
  </Object>
  <Object type="FixedPoint" id="79" >
   <Parent id="12" />
   <Parent id="16" />
  </Object>
  <Object type="FixedPoint" id="80" >
   <Parent id="22" />
   <Parent id="20" />
  </Object>
  <Object type="PythonCompileType" id="81" >
   <Parent id="26" />
  </Object>
  <Object type="FixedPoint" id="82" >
   <Parent id="32" />
   <Parent id="24" />
  </Object>
  <Object type="PythonCompileType" id="83" >
   <Parent id="33" />
  </Object>
  <Object type="FixedPoint" id="84" >
   <Parent id="17" />
   <Parent id="34" />
  </Object>
  <Object type="FixedPoint" id="85" >
   <Parent id="45" />
   <Parent id="18" />
  </Object>
  <Object type="FixedPoint" id="86" >
   <Parent id="44" />
   <Parent id="46" />
  </Object>
  <Object type="FixedPoint" id="87" >
   <Parent id="51" />
   <Parent id="52" />
  </Object>
  <Object type="FixedPoint" id="88" >
   <Parent id="53" />
   <Parent id="30" />
  </Object>
  <Object type="FixedPoint" id="89" >
   <Parent id="50" />
   <Parent id="55" />
  </Object>
  <Object type="FixedPoint" id="90" >
   <Parent id="58" />
   <Parent id="47" />
  </Object>
  <Object type="FixedPoint" id="91" >
   <Parent id="19" />
   <Parent id="59" />
  </Object>
  <Object type="FixedPoint" id="92" >
   <Parent id="57" />
   <Parent id="60" />
  </Object>
  <Object type="FixedPoint" id="93" >
   <Parent id="62" />
   <Parent id="61" />
  </Object>
  <Object type="FixedPoint" id="94" >
   <Parent id="63" />
   <Parent id="21" />
  </Object>
  <Object type="FixedPoint" id="95" >
   <Parent id="23" />
   <Parent id="64" />
  </Object>
  <Object type="FixedPoint" id="96" >
   <Parent id="54" />
   <Parent id="65" />
  </Object>
  <Object type="Label" id="97" >
   <Parent id="43" />
   <Parent id="48" />
   <Parent id="66" />
  </Object>
  <Object type="Label" id="98" >
   <Parent id="36" />
   <Parent id="80" />
   <Parent id="25" />
  </Object>
  <Object type="Label" id="99" >
   <Parent id="39" />
   <Parent id="84" />
   <Parent id="35" />
  </Object>
  <Object type="Label" id="100" >
   <Parent id="31" />
   <Parent id="85" />
   <Parent id="42" />
  </Object>
  <Object type="LineAB" id="101" >
   <Parent id="86" />
   <Parent id="79" />
  </Object>
  <Object type="Label" id="102" >
   <Parent id="15" />
   <Parent id="88" />
   <Parent id="69" />
  </Object>
  <Object type="Label" id="103" >
   <Parent id="67" />
   <Parent id="90" />
   <Parent id="56" />
  </Object>
  <Object type="PythonExecuteType" id="104" >
   <Parent id="77" />
   <Parent id="92" />
   <Parent id="82" />
  </Object>
  <Object type="Label" id="105" >
   <Parent id="68" />
   <Parent id="93" />
   <Parent id="49" />
  </Object>
  <Object type="Label" id="106" >
   <Parent id="37" />
   <Parent id="94" />
   <Parent id="38" />
  </Object>
  <Object type="PythonExecuteType" id="107" >
   <Parent id="74" />
   <Parent id="88" />
   <Parent id="94" />
  </Object>
  <Object type="PythonExecuteType" id="108" >
   <Parent id="73" />
   <Parent id="89" />
   <Parent id="95" />
  </Object>
  <Object type="Label" id="109" >
   <Parent id="40" />
   <Parent id="96" />
   <Parent id="41" />
  </Object>
  <Object type="PythonExecuteType" id="110" >
   <Parent id="75" />
   <Parent id="94" />
   <Parent id="96" />
  </Object>
  <Object type="ConstrainedPoint" id="111" >
   <Parent id="8" />
   <Parent id="107" />
  </Object>
  <Object type="ConstrainedPoint" id="112" >
   <Parent id="70" />
   <Parent id="107" />
  </Object>
  <Object type="ConstrainedPoint" id="113" >
   <Parent id="29" />
   <Parent id="107" />
  </Object>
  <Object type="ConstrainedPoint" id="114" >
   <Parent id="2" />
   <Parent id="107" />
  </Object>
  <Object type="ConstrainedPoint" id="115" >
   <Parent id="28" />
   <Parent id="108" />
  </Object>
  <Object type="ConstrainedPoint" id="116" >
   <Parent id="10" />
   <Parent id="108" />
  </Object>
  <Object type="ConstrainedPoint" id="117" >
   <Parent id="27" />
   <Parent id="110" />
  </Object>
  <Object type="PythonExecuteType" id="118" >
   <Parent id="83" />
   <Parent id="95" />
   <Parent id="111" />
  </Object>
  <Object type="PythonExecuteType" id="119" >
   <Parent id="76" />
   <Parent id="89" />
   <Parent id="114" />
  </Object>
  <Object type="PythonExecuteType" id="120" >
   <Parent id="71" />
   <Parent id="115" />
   <Parent id="112" />
  </Object>
  <Object type="PythonExecuteType" id="121" >
   <Parent id="78" />
   <Parent id="116" />
   <Parent id="113" />
  </Object>
  <Object type="PythonExecuteType" id="122" >
   <Parent id="81" />
   <Parent id="91" />
   <Parent id="117" />
  </Object>
 </Hierarchy>
 <View>
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="72" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="false" color="#0000ff" object="86" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="120" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="117" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="false" color="#0000ff" object="110" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="104" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="119" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="105" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="false" color="#0000ff" object="79" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="88" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="84" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="85" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="98" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="102" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="100" />
  <Draw width="9" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="87" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="false" color="#0000ff" object="107" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="115" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="92" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="93" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="95" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="97" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="118" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="112" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="108" />
  <Draw width="5" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="101" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="91" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="94" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="82" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="113" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="116" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="111" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="106" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="103" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="89" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="96" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="114" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="122" />
  <Draw width="3" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="121" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="99" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="109" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="90" />
  <Draw width="-1" point-style="Round" namecalcer="none" style="SolidLine" shown="true" color="#0000ff" object="80" />
 </View>
</KigDocument>