\def\curve#1{\curvetyp3\gridflag0\yfinal0%
\immediate\openout\eIns\jobname.co1\nosymbol#1\nosymbol%
\immediate\write\eIns{-1}\immediate\closeout\eIns%
\ifnum\gridflag<2\messAge{\curveIgnored}\fi\relax%
\ifnum\gridflag=2\advance\xfinal\yfinal\relax%
\ifnum\xfinal=0\immediate\openin\eIns\jobname.co1%
\immediate\read\eIns to\zeIle%
\immediate\read\eIns to\zeIle\dhelptwo=\zeIle%
\immediate\read\eIns to\zeIle\ynumbering=\zeIle%
\immediate\closein\eIns\docOnnect\zEro;\fi\else%
\axmark\eIns\chelpseven\zwEi\chelpsix\dhelpone%
\divide\chelpsix175\multiply\chelpsix\chelpsix%
\chelpeight0\loop\chelpnine0\ifnum\axmark=\eIns%
\immediate\openin\axmark\jobname.co1%
\immediate\openout\chelpseven\jobname.co2\else%
\immediate\openin\axmark\jobname.co2%
\immediate\openout\chelpseven\jobname.co1\fi%
\gridflag0\readAxmark\yfinal=\zeIle\relax%
\dacApo\ifnum\yfinal>-1\dhelptwenty\dhelptwo\xfraclen\ynumbering%
\readAxmark\dhelptwo=\zeIle\readAxmark%
\ynumbering=\zeIle\advance\gridflag1\relax\ifnum\gridflag=2%
\dhelpfour\dhelptwo\dhelpfive\ynumbering\chelpten\yfinal%
\dhelpeight\dhelptwo\dhelpnine\ynumbering\chelpeleven\yfinal\fi%
\ifnum\gridflag=1\dhelptwelve\dhelptwo\dhelpthirteen\ynumbering%
\chelptwelve\yfinal\dhelpfourteen\dhelptwo\dhelpfifteen\ynumbering%
\yprint\yfinal\fi\ifnum\gridflag=3\strok\dhelptwo%
\dhelpsixteen\ynumbering\chelpthirteen\yfinal\ifnum\chelptwelve=0%
\ifnum\chelpten=2\dhelpeleven\dhelpthirteen\dhelpten\dhelpfour%
\multiply\dhelpten2\negadvAnce\dhelpten\dhelptwelve\fi\relax%
\ifnum\chelpten=1\dhelpten\dhelptwelve\dhelpeleven\dhelpfive%
\multiply\dhelpeleven2\negadvAnce\dhelpeleven\dhelpthirteen\fi\relax%
\ifnum\chelpten=0\dhelpten\dhelptwo\dhelpeleven\ynumbering\fi%
\fi\fi\relax\ifnum\gridflag>3\helpdOcurve\strok\dhelptwo%
\dhelpsixteen\ynumbering\chelpthirteen\yfinal\fi\relax%
\ifnum\gridflag>2\reallydOcurve\fi\chelpfourteen\yfinal%
\readAxmark\yfinal=\zeIle\fi\relax\ifnum\yfinal>-1\alfIne\relax%
\ifnum\gridflag=2\ifnum\chelptwelve=2\dhelpeleven\dhelpfive%
\dhelpten\dhelptwelve\multiply\dhelpten2%
\negadvAnce\dhelpten\dhelpfour\chelpten0\fi\relax%
\ifnum\chelptwelve=1\dhelpten\dhelpfour\dhelpeleven\dhelpthirteen%
\multiply\dhelpeleven2\negadvAnce\dhelpeleven\dhelpfive\chelpten0%
\fi\relax%
\ifnum\chelpten=2\dhelpeleven\dhelpthirteen\dhelpten\dhelpfour%
\multiply\dhelpten2\negadvAnce\dhelpten\dhelptwelve\fi%
\ifnum\chelpten=1\dhelpten\dhelptwelve\dhelpeleven\dhelpfive%
\multiply\dhelpeleven2\negadvAnce\dhelpeleven\dhelpthirteen\fi%
\strok\dhelpten\dhelpsixteen\dhelpeleven\else\dhelptwenty\dhelptwo%
\xfraclen\ynumbering\chelpfourteen\chelpthirteen\helpdOcurve%
\strok\dhelpten\dhelpsixteen\dhelpeleven\chelpthirteen\xprint\fi%
\reallydOcurve\immediate\write\chelpseven{\the\chelpfourteen}%
\immediate\write\chelpseven{\the\dhelptwo}%
\immediate\write\chelpseven{\the\ynumbering}%
\immediate\write\chelpseven{-1}%
\immediate\closein\axmark\immediate\closeout\chelpseven%
\advance\chelpnine1\message{\the\chelpnine}%
\xvalint\chelpseven\chelpseven\axmark\axmark\xvalint%
\ifnum\chelpnine=\chelpeight\chelpnine999\else%
\chelpeight\chelpnine\fi\relax%
\relax\ifnum\chelpnine<99\repeat\relax\ifnum\axmark=\eIns%
\immediate\openin\axmark\jobname.co1\else%
\immediate\openin\axmark\jobname.co2\fi%
\readAxmark\yfinal=\zeIle\readAxmark%
\dhelpfourteen=\zeIle\advance\dhelpfourteen\hAlf\wd1%
\readAxmark\dhelpfifteen=\zeIle\readAxmark%
\yfinal=\zeIle\relax\dacApo\readAxmark\dhelpeight=\zeIle%
\advance\dhelpeight\hAlf\wd1\readAxmark\dhelpnine=\zeIle%
\dhelptwo\dhelpfourteen\ynumbering\dhelpfifteen%
\dhelptwenty\dhelpeight\xfraclen\dhelpnine\dhelpfourteen\dhelpeight%
\dhelpfifteen\dhelpnine\docOnnect\zEro;\readAxmark\yfinal=\zeIle%
\relax\ifnum\yfinal>-1\alfIne\immediate\closein\axmark\relax%
\fi}%
%
\def\lsqline#1{\ownsymbol{\kern.02\em{\tt x}}\curvetyp2\gridflag0%
\xscaling0\chelptwentyone0\chelptwentytwo0\chelptwelve0\relax#1%
\nosymbol\xprint\chelptwentyone\divthOusand\xprint%
\divide\xprint\gridflag\divide\chelptwentytwo\xprint%
\multiply\chelptwentytwo-\thOusand\advance\chelptwentytwo\xscaling%
\divide\chelptwelve\xprint\multiply\chelptwelve-\thOusand%
\advance\chelptwelve\chelptwentyone\multiply\chelptwentytwo10%
\divide\chelptwelve100%
\divide\chelptwentytwo\chelptwelve% 1000 slope
\multiply\xprint\chelptwentytwo\divide\xscaling\gridflag%
\negadvAnce\xscaling\xprint% intercept
\dhelptwenty\zEro\xfraclen\xscaling sp\relax%
\ifdim\xfraclen>\ylength\dhelptwenty\ylength%
\negadvAnce\dhelptwenty\xfraclen\xfraclen\ylength%
\multiply\dhelptwenty\thOusand\divide\dhelptwenty\chelptwentytwo\fi%
\ifdim\xfraclen<\zEro\dhelptwenty-\xfraclen\xfraclen\zEro%
\multiply\dhelptwenty\thOusand\divide\dhelptwenty\chelptwentytwo\fi%
\advance\xfraclen\ypos\advance\dhelptwenty\xpos%
\dhelptwo\xlength\yscaling\dhelptwo\divthOusand\yscaling%
\multiply\yscaling\chelptwentytwo\advance\yscaling\xscaling%
\ynumbering\yscaling sp\relax%
\ifdim\ynumbering>\ylength\dhelptwo\ylength\ynumbering\ylength%
\advance\dhelptwo-\xscaling sp\multiply\dhelptwo\thOusand%
\divide\dhelptwo\chelptwentytwo\fi%
\ifdim\ynumbering<\zEro\dhelptwo-\xscaling sp\ynumbering\zEro%
\multiply\dhelptwo\thOusand\divide\dhelptwo\chelptwentytwo\fi%
\advance\ynumbering\ypos\advance\dhelptwo\xpos\docOnnect\zEro;}%
%
\def\docOnnect#1;{\ifdim\dhelptwo=\dhelptwenty%
\advance\dhelptwenty\hAlf\wd2%
\advance\ynumbering\hAlf\dp2%
\advance\ynumbering\hAlf\ht2%
\advance\xfraclen\hAlf\dp2%
\advance\xfraclen\hAlf\ht2%
\kern\dhelptwenty%
\ifdim\ynumbering>\xfraclen%
  \negadvAnce\xfraclen\dhelpone%
{\negadvAnce\ynumbering#1%
\advance\xfraclen#1%
  \vrUl\dhelpone\ynumbering{-\xfraclen}%
}%
\else%
  \negadvAnce\ynumbering\dhelpone%
{\advance\ynumbering#1%
\negadvAnce\xfraclen#1%
  \vrUl\dhelpone\xfraclen{-\ynumbering}%
}%
\fi%
\kern-\dhelpone\kern-\dhelptwenty%
\else%
\ifdim\ynumbering=\xfraclen%
  \advance\dhelptwenty\hAlf\wd2%
  \advance\dhelptwo\hAlf\wd2%
  \ifdim\dhelptwo>\dhelptwenty%
    \ynumbering\dhelptwo%
    \dhelptwo\dhelptwenty%
    \dhelptwenty\ynumbering%
  \fi%
  \negadvAnce\dhelptwenty\dhelptwo%
  \advance\xfraclen\hAlf\dp2%
  \advance\xfraclen\hAlf\ht2%
  \ynumbering\xfraclen%
  \negadvAnce\ynumbering\dhelpone%
  \kern\dhelptwo%
  \negadvAnce\dhelptwenty#1%
  \negadvAnce\dhelptwenty#1%
  \kern#1%
  \vrUl\dhelptwenty\xfraclen{-\ynumbering}%
  \kern-#1%
  \kern-\dhelptwo%
  \kern-\dhelptwenty%
\else\dhelpnineteen\dhelptwo%
\negadvAnce\dhelpnineteen\dhelptwenty%
\divide\dhelpnineteen\thOusand0\dhelpseventeen\ynumbering%
\negadvAnce\dhelpseventeen\xfraclen\divide\dhelpseventeen\thOusand0%
\cthree\dhelpnineteen\multiply\cthree\dhelpnineteen%
\cfour\dhelpseventeen\multiply\cfour\dhelpseventeen%
\advance\cfour\cthree\rOot%
\cfour\thOusand0%
\dhelptwelve#1 \chelpthree\dhelptwelve%
\divide\chelpthree\cthree%
%\multiply\chelpthree\cfour%
\negadvAnce\cfour\chelpthree%
\csix\wd1\multiply\csix2%
\divide\csix3\divide\csix\cthree\advance\xfraclen\hAlf\dp2%
\advance\dhelptwenty\hAlf\wd2\advance\xfraclen\hAlf\ht2%
\kern\dhelptwenty%
\loop\dhelptwelve\zEro%
\advance\dhelptwelve\chelpthree\dhelpnineteen%
\dhelpeighteen\xfraclen%
\advance\dhelpeighteen\chelpthree\dhelpseventeen%
\kern\dhelptwelve%
\raise\dhelpeighteen\copy1%
\kern-\wd1%
\kern-\dhelptwelve%
\advance\chelpthree\csix%
\ifnum\chelpthree<\cfour\repeat%
\kern-\dhelptwenty\fi\fi}%
%
\def\link#1#2{\dhelptwo#1 \curvetyp\dhelptwo\relax%
\ifnum\curvetyp<4 \curvetyp4\fi%
\gridflag0\nosymbol#2}%
%
\def\point#1.#2,#3.#4;{\dhelptwo#1.#2\pt\ynumbering\dimthree%
\negadvAnce\dhelptwo\dimone\relax\chelpone\dhelptwo%
\chelpthree\ynumbering\multiply\chelpone10%
\poInt\cthree\poInt\cfour\poInt\cfive\poInt\csix\poInt\cseven%
\ceight\chelpone\divide\ceight\chelpthree%
\ynumbering\xpos\dhelpthree\xlength%
\pOint\cthree\pOint\cfour\pOint\cfive\pOint\csix\pOint\ceight%
\dhelptwo\ynumbering\dhelpten\dhelptwo\negadvAnce\dhelpten\xpos%
\advance\dhelptwo-\hAlf\wd2%
\ynumbering#3.#4\pt\dhelpthree\dimfour\negadvAnce\ynumbering\dimtwo%
\chelpone\ynumbering\chelpthree\dhelpthree\multiply\chelpone10%
\poInt\cthree\poInt\cfour\poInt\cfive\poInt\csix\poInt\cseven%
\ceight\chelpone\divide\ceight\chelpthree%
\ynumbering\ypos\dhelpthree\ylength%
\pOint\cthree\pOint\cfour\pOint\cfive\pOint\csix\pOint\ceight%
\dhelptwelve\ynumbering\negadvAnce\dhelptwelve\ypos%
\advance\ynumbering-\hAlf\ht2\advance\ynumbering-\hAlf\dp2%
\raise\ynumbering\hbox to\xtotal{\kern\dhelptwo\copy2\hss}%
\kern-\xtotal%
%
\ifnum\curvetyp=2\advance\gridflag1\xvalint\dhelpten%
\advance\chelptwentyone\xvalint\divthOusand\xvalint%
\xvalfrac\dhelptwelve\advance\xscaling\xvalfrac\cthree\xvalint%
\multiply\cthree\xvalint\advance\chelptwelve\cthree%
\divthOusand\xvalfrac\multiply\xvalfrac\xvalint%
\advance\chelptwentytwo\xvalfrac\fi\relax%
%
\ifnum\curvetyp=3\advance\dhelptwelve\ypos%
\advance\dhelpten\xpos\immediate\write\eIns{\the\yfinal}%
\advance\dhelpten-\hAlf\dhelpone\immediate\write\eIns{\the\dhelpten}%
\advance\dhelptwelve\hAlf\dhelpone%
\immediate\write\eIns{\the\dhelptwelve}\advance\gridflag1%
\ifnum\gridflag=2\dhelpten\dhelptwenty\dhelptwelve\xfraclen\fi\fi%
\relax%
%
\ifnum\curvetyp=1\ifnum\gridflag=0\gridflag1\else%
\dhelpten\dhelptwo\dhelpeleven\ynumbering\docOnnect\zEro;%
\ynumbering\dhelpeleven\dhelptwo\dhelpten\fi\fi%
%
\ifnum\curvetyp>3\ifnum\gridflag=0\gridflag1\else%
\dhelpten\dhelptwo\dhelpeleven\ynumbering\docOnnect\number\curvetyp sp;%
\ynumbering\dhelpeleven\dhelptwo\dhelpten\fi\fi%
%
\dhelptwenty\dhelptwo\xfraclen\ynumbering\xfinal\yfinal\yfinal0}%
%
\def\nomOrediagrams{\def\nogrid{}\def\noscale{}%
\def\noaxis{}\def\xaxis{}\def\yaxis{}\def\printsymbol{}%
\def\ownsymbol{}\def\symbol{}\def\nosymbol{}\def\values{}%
\def\curve{}\def\rOot{}\def\connect{}\def\absdOcurve{}%
\def\readAxmark{}\def\helpdOcurve{}\def\reallydOcurve{}%
\def\kreisdOcurve{}\def\lsqline{}\def\dacApo{}\def\rOo{}%
\def\roOt{}\def\dacApoal{}\def\docOnnect{}\def\poInt{}%
\def\hpoint{}\def\vpoint{}\def\point{}\def\diagram{}%
\def\pOint{}\def\negadvAnce{}\def\hAlve{}%
\def\divthOusand{}\def\vrUl{}\def\kreisdOloop{}%
\def\zEro{}\def\thOusand{}\def\hAlf{}\def\link{}%
%\ifnum\count17=\zwEi\advance\count17-2\fi}%
\ifnum\count17=\zwEi\global\advance\count17-2\fi}%
%
