summaryrefslogtreecommitdiff
path: root/graphics/pstricks/contrib/numericplots
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /graphics/pstricks/contrib/numericplots
Initial commit
Diffstat (limited to 'graphics/pstricks/contrib/numericplots')
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilter.m79
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilterHull.m104
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilterMinMax.m104
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/dspace2latex.m90
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/dspace2struct.m147
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/export2latex.m386
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/export2pst.m332
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/genlatexnames.m38
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/roman.m58
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/struct2latex.m187
-rw-r--r--graphics/pstricks/contrib/numericplots/MatlabFunctions/struct2pst.m127
-rw-r--r--graphics/pstricks/contrib/numericplots/README30
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/License.txt674
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/NumericPlots.pdfbin0 -> 370930 bytes
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/BasicFunctionality.tex621
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/FurtherExamples.tex306
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/MatlabSupport.tex137
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/MultiplePlots.tex45
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/NumericPlotsDoc.tex210
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/Roll406_Ref2288.tex1759
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/TechnicalDetails.tex254
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/TestPlots.tex122
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/BodeDiagramm.tex44
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/DataTestRealData.tex174
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/DefineData.tex47
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/LabelsNTickLabels.tex49
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/NyquistPlot.tex76
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/Sprungantwort_PT1Glied.tex39
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Boxes.tex22
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_EasyPlot.tex9
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Grid.tex13
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Labels.tex17
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Legend.tex3
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendI.tex4
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendII.tex8
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendIII.tex7
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LineStyles.tex27
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Lines.tex18
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicI.tex8
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicII.tex8
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicIII.tex8
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_MultipleData.tex20
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Objects.tex29
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlaceObjects.tex31
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlaceObjectsII.tex25
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlotWHoles.tex8
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_UseRput.tex29
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/basic_UserLinestyles.tex27
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/data_BodeDiagrammLinearerTerm.tex1028
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/data_Nyquist.tex302
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/data_SprungantwortPT1Glied.tex69
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/furtherEx_TickLabels.tex18
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleI.tex76
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleII.tex24
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleIII.tex24
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/fig_NoiseData_ClosedLine.eps8412
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/fig_NoiseData_OpenLine.eps8413
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/history.tex171
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/keys_NumericDataPlot.tex73
-rw-r--r--graphics/pstricks/contrib/numericplots/doc/src/options.tex44
-rw-r--r--graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots.sty957
-rw-r--r--graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_TickLabels.tex144
-rw-r--r--graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_labels.tex156
-rw-r--r--graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_legend.tex112
-rw-r--r--graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_macros.tex155
-rw-r--r--graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_styles.tex70
66 files changed, 26808 insertions, 0 deletions
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilter.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilter.m
new file mode 100644
index 0000000000..ea0c0899eb
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilter.m
@@ -0,0 +1,79 @@
+%------------------------------------------------
+% 2011/01/02 version 1.0
+%
+% [xxx, yyy] = LatexFilter(x, y, tol)
+%
+% This function may be used before exporting data to latex for intelligent
+% filtering.
+% If you want to plot data with NumericPlots one problem might be that you
+% have to plot way to many points and get an TexCapacityExceeded-Error. One
+% way to address this is this filter. Given x- and y-data and a tolerance
+% tol, unnecessary data may be removed without changing the look of your
+% plot.
+% Example:
+% x=[1 2 3 4 5 6 7 8 9 10];
+% y=[0.01 -0.01 0.02 0.04 -0.03 100.03 100.01 99.97 99.98 100.01];
+% [a b] = LatexFilter(x,y, 0.5)
+% returns
+% a = 1 5 6 10
+% b = 0.0100 -0.0300 100.0300 100.0100
+% thus preserving the step from 0 to 100 at x=5 but removing the 'noise'.
+%------------------------------------------------
+% output:
+% xxx, yyy: filtered data
+% input:
+% x, y: data to be filtered
+% tol: tolerance
+
+% author: Thomas Koenig
+% date: 2011/01/02
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+function [xxx, yyy] = LatexFilter(x, y, tol)
+
+% fprintf('LatexFilter: Input - %i ...', length(x));
+
+xx = zeros(size(x));
+yy = zeros(size(y));
+xx(:,1) = x(:,1);
+yy(:,1) = y(:,1);
+k = 1;
+LastI = 1;
+for i=2:length(x)-1
+ if max(abs(y(:,i) - yy(:,k)))>tol
+ if LastI<i-1
+ k=k+1;
+ xx(:,k) = x(:,i-1);
+ yy(:,k) = y(:,i-1);
+ end
+ k=k+1;
+ xx(:,k) = x(:,i);
+ yy(:,k) = y(:,i);
+ end
+end
+k = k+1;
+xx(:,k) = x(:,i+1);
+yy(:,k) = y(:,i+1);
+
+xxx = xx(:,1:k);
+yyy = yy(:,1:k);
+
+% fprintf(' Output - %i .\n', length(xxx));
+
+end \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilterHull.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilterHull.m
new file mode 100644
index 0000000000..e6fef03e40
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilterHull.m
@@ -0,0 +1,104 @@
+%------------------------------------------------
+% 2011/01/02 version 1.0
+%
+% [xxx, yyy] = LatexFilterHullCurve(x, y, NumberOfPoints)
+%
+%------------------------------------------------
+% output:
+% xxx, yyy: filtered data
+% input:
+% x, y: data to be filtered
+% tol: tolerance
+
+% author: Thomas Koenig
+% date: 2011/01/02
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+function [xx, yy] = LatexFilterHull(x, y, NumberOfPoints)
+
+% fprintf('LatexFilter: Input - %i ...', size(x,2));
+
+ if (NumberOfPoints - round(NumberOfPoints))~=0
+ error('NumberOfPoints must be an integer.');
+ end
+ if NumberOfPoints<3
+ error('NumberOfPoints<3 does not make much sense.');
+ end
+ if NumberOfPoints>size(x, 2)/2
+ % This would mean, that the filtered data would have more points than
+ % the input data. This filter is not meant to do that.
+ error('NumberOfPoints>length(x)');
+ end
+
+ IntLength = floor(size(x, 2)/NumberOfPoints);
+ % The last NrLongInt intervals are enlarged by one to get all points in
+ % x.
+ NrLongInt = size(x,2)-(IntLength*NumberOfPoints);
+ IntLengthLong = IntLength+1;
+
+ xx = nan(size(x, 1), NumberOfPoints*2+2);
+ yy = nan(size(y, 1), NumberOfPoints*2+2);
+
+ xxx = nan(size(x, 1), NumberOfPoints*2);
+ yyy = nan(size(y, 1), NumberOfPoints*2);
+
+ % Search maximum and minimum in each interval of length IntLength
+ a = 1;
+ b = 2; % always minimum first! -> easier to reorder
+ for k=0:NumberOfPoints-NrLongInt-1
+ [mi, mi_idx] = min(y(:,(k*IntLength+1):(k+1)*IntLength), [], 2);
+ [ma, ma_idx] = max(y(:,(k*IntLength+1):(k+1)*IntLength), [], 2);
+ xxx(:, 2*k+a) = x(:, k*IntLength+mi_idx);
+ xxx(:, 2*k+b) = x(:, k*IntLength+ma_idx);
+ yyy(:, 2*k+a) = mi;
+ yyy(:, 2*k+b) = ma;
+ end
+ sIdx = (NumberOfPoints-NrLongInt)*IntLength;
+ for k=0:NrLongInt-1
+ [mi, mi_idx] = min(y(:,(sIdx+k*IntLengthLong+1):(sIdx+(k+1)*IntLengthLong)), [], 2);
+ [ma, ma_idx] = max(y(:,(sIdx+k*IntLengthLong+1):(sIdx+(k+1)*IntLengthLong)), [], 2);
+ xxx(:, 2*(k+NumberOfPoints-NrLongInt)+a) = x(:, sIdx+k*IntLengthLong+mi_idx);
+ xxx(:, 2*(k+NumberOfPoints-NrLongInt)+b) = x(:, sIdx+k*IntLengthLong+ma_idx);
+ yyy(:, 2*(k+NumberOfPoints-NrLongInt)+a) = mi;
+ yyy(:, 2*(k+NumberOfPoints-NrLongInt)+b) = ma;
+ end
+
+ % always use first and last value
+ xx(:, 1) = x(:, 1);
+ yy(:, 1) = y(:, 1);
+ xx(:, NumberOfPoints+2) = x(:, end);
+ yy(:, NumberOfPoints+2) = y(:, end);
+ % re-order points for use as a hull in latex
+ for k=0:NumberOfPoints-1
+ % minima
+ xx(:, k+1+1) = xxx(:, 2*k+1);
+ yy(:, k+1+1) = yyy(:, 2*k+1);
+ % maxima
+ xx(:, 2*NumberOfPoints-k+2) = xxx(:, 2*k+2);
+ yy(:, 2*NumberOfPoints-k+2) = yyy(:, 2*k+2);
+ end
+
+% fprintf(' Output - %i .\n', length(xx));
+%
+% figure;
+% plot(x, y, 'r');
+% hold on;
+% plot(xx, yy);
+
+end \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilterMinMax.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilterMinMax.m
new file mode 100644
index 0000000000..33418fbc95
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/LatexFilterMinMax.m
@@ -0,0 +1,104 @@
+%------------------------------------------------
+% 2011/01/02 version 1.0
+%
+% [xxx, yyy] = LatexFilterHullCurve(x, y, NumberOfPoints)
+%
+%------------------------------------------------
+% output:
+% xxx, yyy: filtered data
+% input:
+% x, y: data to be filtered
+% tol: tolerance
+
+% author: Thomas Koenig
+% date: 2011/01/02
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+function [xxx, yyy] = LatexFilterMinMax(x, y, NumberOfPoints)
+
+% fprintf('LatexFilter: Input - %i ...', size(x,2));
+
+ if (NumberOfPoints - round(NumberOfPoints))~=0
+ error('NumberOfPoints must be an integer.');
+ end
+ if NumberOfPoints<3
+ error('NumberOfPoints<3 does not make much sense.');
+ end
+ if NumberOfPoints>size(x, 2)/2
+ % This would mean, that the filtered data would have more points than
+ % the input data. This filter is not meant to do that.
+ error('NumberOfPoints>length(x)');
+ end
+
+ IntLength = floor(size(x, 2)/NumberOfPoints);
+ % The last NrLongInt intervals are enlarged by one to get all points in
+ % x.
+ NrLongInt = size(x,2)-(IntLength*NumberOfPoints);
+ IntLengthLong = IntLength+1;
+
+ xxx = nan(size(x, 1), NumberOfPoints*2+2);
+ yyy = nan(size(y, 1), NumberOfPoints*2+2);
+
+ % always use first and last value
+ xxx(:,1) = x(:,1);
+ yyy(:,1) = y(:,1);
+ xxx(:,end) = x(:,end);
+ yyy(:,end) = y(:,end);
+ % Search maximum and minimum in each interval of length IntLength
+ for k=0:NumberOfPoints-NrLongInt-1
+ [mi, mi_idx] = min(y(:,(k*IntLength+1):(k+1)*IntLength), [], 2);
+ [ma, ma_idx] = max(y(:,(k*IntLength+1):(k+1)*IntLength), [], 2);
+ if mi_idx<ma_idx
+ a=1;
+ b=2;
+ else
+ a=2;
+ b=1;
+ end
+ xxx(:, 2*k+a+1) = x(:, k*IntLength+mi_idx);
+ xxx(:, 2*k+b+1) = x(:, k*IntLength+ma_idx);
+ yyy(:, 2*k+a+1) = mi;
+ yyy(:, 2*k+b+1) = ma;
+ end
+ sIdx = (NumberOfPoints-NrLongInt)*IntLength;
+ for k=0:NrLongInt-1
+ [mi, mi_idx] = min(y(:,(sIdx+k*IntLengthLong+1):(sIdx+(k+1)*IntLengthLong)), [], 2);
+ [ma, ma_idx] = max(y(:,(sIdx+k*IntLengthLong+1):(sIdx+(k+1)*IntLengthLong)), [], 2);
+ if mi_idx<ma_idx
+ a=1;
+ b=2;
+ else
+ a=2;
+ b=1;
+ end
+ xxx(:, 2*(k+NumberOfPoints-NrLongInt)+a+1) = x(:, sIdx+k*IntLengthLong+mi_idx);
+ xxx(:, 2*(k+NumberOfPoints-NrLongInt)+b+1) = x(:, sIdx+k*IntLengthLong+ma_idx);
+ yyy(:, 2*(k+NumberOfPoints-NrLongInt)+a+1) = mi;
+ yyy(:, 2*(k+NumberOfPoints-NrLongInt)+b+1) = ma;
+ end
+
+% fprintf(' Output - %i .\n', length(xxx));
+%
+% figure;
+% plot(x, y, 'r');
+% hold on;
+% plot(xxx, yyy);
+
+
+end \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/dspace2latex.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/dspace2latex.m
new file mode 100644
index 0000000000..dbce4777d9
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/dspace2latex.m
@@ -0,0 +1,90 @@
+function num = dspace2latex(dspacename,texname)
+%------------------------------------------------
+%num = dspace2tex(data,xname,downsample,filename)
+%Function to export a dSPACE-mat-file to a tex-file for using NumericPlots.
+%dspace2latex is based on the function struct2tex and export2latex.
+%------------------------------------------------
+%output:
+%num ...number of y-data exported
+%input:
+%dspacename ...dspace file name (optional, default io)
+%texname ...name of the tex-file (optional, default io)
+%
+%author: Alexander Michel
+% date: 2010/08/09
+%
+% function struct2latex.m required to convert structs to export2latex format.
+% function export2latex.m required to export datavectors to latex.
+%
+
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+
+
+% choose dSpace File
+if(nargin<1)
+ data = dspace2struct;
+else
+ data = dspace2struct(dspacename);
+end
+
+
+% define begin, end and downsampling
+options.Resize='on';
+options.WindowStyle='normal';
+options.Interpreter='tex';
+prompt={'t0','t1','downsampling'};
+title=['define datapoints. sampling time = ' num2str(data.time(2)-data.time(1)) ' s'];
+numlines=1;
+defaultanswer={num2str(data.time(1)),num2str(data.time(end)),'1'};
+
+answer=inputdlg(prompt,title,numlines,defaultanswer,options);
+starttime = str2double(answer{1});
+endtime = str2double(answer{2});
+downsample = str2double(answer{3});
+
+% define downsampling
+istart = find(data.time<=starttime);
+istart = istart(end);
+iend = find(data.time<=endtime);
+iend = iend(end);
+
+idx = istart:downsample:iend;
+
+% choose data which should be exportet
+fnames = fieldnames(data);
+idxtimename = strmatch('time',fnames,'exact');
+idxdatanames = setdiff(1:length(fnames),idxtimename);
+
+[iplots,selected] = listdlg('PromptString','choose data for export:','ListString',fnames(idxdatanames));
+if (selected==0)
+ error('no data chosen');
+end
+
+dat.time = data.time;
+for ii = iplots
+ dat = setfield(dat,fnames{ii},getfield(data,fnames{ii}));
+end
+
+% export data
+if(nargin<2)
+ num = struct2latex(dat,'time',downsample);
+else
+ num = struct2latex(dat,'time',downsample,texname);
+end
+ \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/dspace2struct.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/dspace2struct.m
new file mode 100644
index 0000000000..f1195fc933
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/dspace2struct.m
@@ -0,0 +1,147 @@
+function dat = dspace2struct(filename,version,alternative_struct_name)
+% ------------------------------------------------
+% dat = dspace2struct(dspacename,version)
+% Function to export dSPACE-mat-file to Matlab struct.
+% The fieldnames of the struct are the same as the dSPACE-signalnames.
+% ------------------------------------------------
+% Output:
+% dat ... matlab struct
+%
+% Input:
+% filename ... (optional) .mat-File generated by dSPACE (string) (
+% version ... (optional) version = 'NG' if using dSpace Next Genertion
+% alternative_struct_name ...(optional) needed if structname is different
+% from filename. Often caused by renaming .mat
+% files after saving.
+%
+% author: Alexander Michel
+% date: 2010/08/09
+%
+% changes: - 2011/06/29 Alexander Michel: - customized for dSpace Next
+% Generation data structure
+% - 2011/07/29 Alexander Michel: - GUI added when no file is
+% provided
+% - Path can be provided
+% - 2012/05/02 Alexander Michel: - Bug fixing for dSpace NG naming
+% of calculations
+% - Multiple XData for dSpace NG
+% added
+% - 2013/06/17 Alexander Michel: - Array out for dSpace NG support
+% added
+% - 2013/07/11 Alexander Michel: - alternative structname support
+%
+% Copyright 2012 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+if(nargin<1 || strcmp(filename,''))
+ [fname datapath] = uigetfile('*.mat','choose .mat-file generated by dSPACE');
+ filename = fullfile(datapath, fname);
+ if isequal(fname,0) || isequal(datapath,0)
+ disp('User pressed cancel')
+ return;
+ else
+ disp(['User selected ', filename])
+ end
+end
+
+if(isempty(strfind(filename,'\')))
+ idx1name = 1;
+else
+ idxes = strfind(filename,'\');
+ idx1name = idxes(end)+1;
+end
+
+if(nargin>2)
+ dspacename = alternative_struct_name;
+else
+ if(isempty(strfind(filename,'.mat')))
+ dspacename = filename(idx1name:end);
+ else
+ dspacename = filename(idx1name:end-4);
+ end
+end
+
+
+if(nargin<2)
+ version = 'OG';
+end
+
+load(filename);
+
+dspace = eval(genvarname(dspacename));
+if(strcmp(version,'NG'))
+ for ii = 1:length(dspace.X)
+ dat.time{ii} = dspace.X(ii).Data;
+ end
+else
+ dat.time = dspace.X.Data;
+end
+validx = [];
+for ii = 1:length(dspace.Y)
+ if(strcmp(version,'NG'))
+ if(isempty(dspace.Y(ii).Path))
+ newfieldname = dspace.Y(ii).Name;
+ else
+ stridx = strfind(dspace.Y(ii).Path,'/');
+ newfieldname = dspace.Y(ii).Path(stridx(end)+1:end);
+ end
+ else
+ stridx = strfind(dspace.Y(ii).Name,'"');
+ lastname = dspace.Y(ii).Name(stridx(end-1)+1:stridx(end)-1);
+ stridxM1 = strfind(lastname,'[');
+ if(~isempty(stridxM1))
+ stridxM2 = strfind(lastname,']');
+ if(~isempty(stridxM2))
+ validx = sscanf(lastname(stridxM1:stridxM2),'[%i,%i]');
+ possiblefieldname = lastname(1:stridxM1-1);
+ end
+ else
+ possiblefieldname = lastname;
+ end
+ if(isempty(strfind(possiblefieldname,'In1')) && isempty(strfind(possiblefieldname,'Out1')))
+ newfieldname = possiblefieldname;
+ else
+ newfieldname = dspace.Y(ii).Name(stridx(end-3)+1:stridx(end-2)-1);
+ end
+ end
+ if(isvarname(newfieldname) == 0)
+ newfieldname = newfieldname(isstrprop(newfieldname,'alphanum'));
+ if(isvarname(newfieldname) == 0)
+ newfieldname = newfieldname(2:end);
+ end
+ end
+ if(strcmp(version,'NG'))
+ if(isfield(dat,newfieldname))
+ dat.(newfieldname).Data = [dat.(newfieldname).Data; dspace.Y(ii).Data];
+ else
+ dat.(newfieldname).Data = dspace.Y(ii).Data;
+ end
+ dat.(newfieldname).timeidx = dspace.Y(ii).XIndex;
+ else
+ if(isempty(validx))
+ dat.(newfieldname) = dspace.Y(ii).Data;
+ else
+ dat.(newfieldname){validx(2)} = dspace.Y(ii).Data;
+ validx = [];
+ end
+ end
+end
+if(~strcmp(version,'NG'));
+ dat.dSPACESettings.Capture = dspace.Capture;
+ dat.dSPACESettings.Description = dspace.Description;
+ dat.dSPACESettings.RTProgram = dspace.RTProgram;
+end
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/export2latex.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/export2latex.m
new file mode 100644
index 0000000000..a0da1e8dd8
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/export2latex.m
@@ -0,0 +1,386 @@
+% export2latex(EPLdata, filename, options)
+%
+% This function may be used to export numeric data in a latex file for later
+% use with, e.g., NumericPlots.sty.
+% If the data is provided as an 1xK array, each entry of the array will be exported
+% to the file <filename>. Each entry of the array must be a structure which contains
+% x, y and ident. x and y must be arrays of the same size MxN. If M>1, each column
+% of the array is exported to the file and may later be used by \Data<ident><rm>, where
+% <rm> is the roman representation of the column number. If M=1, the data may later
+% be used with the latex command \Data<ident>
+%
+% EPLdata(1, i).x = x-matrix
+% EPLdata(1, i).y = y-matrix
+% EPLdata(1, i).ident = identifier (has to be a string without numbers ->
+% latex command name)
+% EPLdata(1, i).descr = description (optional)
+% EPLdata(1, i).group = GroupNr (optional) use numbers from 1 to n to define groups. For
+% each group, the maximum and minimum values will be written to the output file and may be
+% accessed with identifier Group<RomanNumber> where RomanNumber is the roman represenation
+% of the group number. All data without group or with group number 0 is put into the group
+% Dummy
+% EPLdata(1, i).precision (optional) = number of decimal places to be written
+% filename = filename (with path, without extension)
+% options (optional) define which output is required
+% - options.DataBoundaries [true]: if true, the min/max values of the data
+% will be written to the output file.
+% - options.AxisBoundaries [false]: if true, values which may be set as
+% min/max values for the axis are written to the output file. These are
+% the min/max values -/+ a gap.
+% - options.AxisBoundariesGap [10]: defines the gap used for the axis
+% min/max values in percent of the total range of the data.
+% - options.SuppressWarning [false]: suppresses the warning about max/min values being to
+% close together
+% - options.precision [empty]: how many decimal places should be printed for x and y
+% values. Will be calculated automatically if left empty.
+% - options.NaNsplit [false]: if true, the data will be split at NaN
+% values. See \multilistplot for how to plot them.
+%
+% function roman.m required to convert a number to its roman representation.
+%
+
+% author: Thomas König
+% date: 2010/04/01
+% ed. by Pfeffer Andreas July 2010 ->Axis nearly tight -> xMaxAxis,xMinAxis,... added
+% 2010/08/03 Thomas König: Options added
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+
+function ret = export2latex(EPLdata, filename, options)
+ if size(EPLdata, 1)>1
+ error('EPLdata must be of size [1, n]');
+ end
+
+ % define standard options
+ if ((nargin<3) || ~isfield(options, 'DataBoundaries'))
+ % DataBoundaries should be in the output file (xMin, xMax, yMin,
+ % yMax)
+ options.DataBoundaries = true;
+ end
+ if ~isfield(options, 'AxisBoundaries')
+ % axis boundaries (xMinAxis, xMaxAxis, yMinAxis, yMaxAxis)
+ options.AxisBoundaries = false;
+ end
+ if ~isfield(options, 'AxisBoundariesGap')
+ % gap for the axis boundaries in percent of full scale
+ options.AxisBoundariesGap = 10;
+ end
+ if ~isfield(options, 'SuppressWarning')
+ options.SuppressWarning = false;
+ end
+ if ~isfield(options, 'NaNsplit')
+ options.NaNsplit = false;
+ end
+
+ % open file if possible
+ [pathstr, ~, ext] = fileparts(filename);
+ if ~isempty(pathstr) && ~exist(pathstr, 'dir')
+ mkdir(pathstr);
+ end
+ if strcmp(ext, '.tex')
+ fname = fullfile(filename);
+ else
+ fname = fullfile([filename, '.tex']);
+ end
+ [fid, msg] = fopen(fname, 'wt');
+ if fid<0
+ display(msg);
+ error('Matlab:FileError', 'Could not open the file %s.', fname);
+ end
+
+ % write file header
+ fprintf(fid, '%% EPLdata written by export2latex\n');
+ fprintf(fid, '%% date: %s\n\n', date);
+ fprintf(fid, '\\def\\ExpDate{%s}\n', date);
+ fclose(fid);
+
+ % process data
+ for i=1:size(EPLdata,2)
+ % Ident='';
+ My = size(EPLdata(i).y, 1);
+ Mx = size(EPLdata(i).x, 1);
+ if ( Mx>1 && Mx~=My )
+ error('Matlab:export2latex', 'EPLdata.x and EPLdata.y must have the same size or EPLdata.x must have one column only');
+ end
+ if (any(any(isnan(EPLdata(i).x))) || any(any(isnan(EPLdata(i).y)))) && ~options.NaNsplit
+ error('Matlab:export2latex', 'EPLdata.x or EPLdata.y contain NaN which Latex cannot process. Consider setting options.NaNsplit = true.');
+ end
+ if ( Mx==1 )
+ idx_x = ones(1, My);
+ else
+ idx_x = 1:Mx;
+ end
+
+ % data header
+ if(isfield(EPLdata(1,i), 'descr'))
+ fid = fopen(fname, 'at');
+ fprintf(fid, '\\expandafter\\def\\csname Descr%s\\endcsname{%s}\n', EPLdata(1,i).ident, EPLdata(1,i).descr);
+ fclose(fid);
+ end
+ if ~isfield(EPLdata(1,i), 'group')
+ EPLdata(1,i).group = 0;
+ end
+ if isempty(EPLdata(1,i).group)
+ EPLdata(1,i).group = 0;
+ end
+
+ % xMax, xMin, Dx
+ fid = fopen(fname, 'at');
+ xMax = max(max(EPLdata(1,i).x));
+ xMin = min(min(EPLdata(1,i).x));
+
+ % axis boundaries
+ xMinAxis = xMin-(xMax-xMin)*options.AxisBoundariesGap/100; % -10% axis nearly tight
+ xMaxAxis = xMax+(xMax-xMin)*options.AxisBoundariesGap/100; % +10% axis nearly tight
+
+
+ if (abs(xMax-xMin)<1e-16)
+ xMax = 1.0;
+ xMin = -1.0;
+ if ~options.SuppressWarning
+ fprintf('export2latex - Warning: |xMax-xMin|<1e-16\n');
+ end
+ end
+ DxV = (xMax-xMin)/5;
+ NrUnsigX = 0;
+ while (fix(DxV*10^(NrUnsigX)) == 0)
+ NrUnsigX = NrUnsigX+1;
+ end
+
+ % yMin, yMax, Dy
+ yMax = max(max(EPLdata(1,i).y));
+ yMin = min(min(EPLdata(1,i).y));
+
+ % axis boundaries
+ yMinAxis = yMin-(yMax-yMin)*options.AxisBoundariesGap/100; % -10% axis nearly tight
+ yMaxAxis = yMax+(yMax-yMin)*options.AxisBoundariesGap/100; % +10% axis nearly tight
+
+ % save min/max values for groupes
+ group(i) = EPLdata(1,i).group+1;
+ groupXmax(i) = xMax;
+ groupXmin(i) = xMin;
+ groupYmax(i) = yMax;
+ groupYmin(i) = yMin;
+
+ if (abs(yMax-yMin)<1e-16)
+ yMax = 1.0;
+ yMin = -1.0;
+ if ~options.SuppressWarning
+ fprintf('export2latex - Warning: |yMax-yMin|<1e-16\n');
+ end
+ end
+ DyV = (yMax-yMin)/5;
+
+ DxVAxis = (xMaxAxis-xMinAxis)/5;
+ DyVAxis = (yMaxAxis-yMinAxis)/5;
+ NrUnsigYAxis = 0;
+ while (fix(DyVAxis*10^(NrUnsigYAxis)) == 0)
+ NrUnsigYAxis = NrUnsigYAxis+1;
+ end
+ NrUnsigXAxis = 0;
+ while (fix(DxVAxis*10^(NrUnsigXAxis)) == 0)
+ NrUnsigXAxis = NrUnsigXAxis+1;
+ end
+
+ % check how many significant numbers DyV has. This number will be used for the precision of all Min/Max values so
+ % latex prints all of them with the same number of decimal places.
+ NrUnsigY = 0;
+ while (fix(DyV*10^(NrUnsigY)) == 0)
+ NrUnsigY = NrUnsigY+1;
+ end
+
+ if options.DataBoundaries
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sXmin\\endcsname{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, floor(xMin*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sXmax\\endcsname{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, ceil(xMax*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sYmin\\endcsname{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, floor(yMin*10^NrUnsigY)/(10^NrUnsigY));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sYmax\\endcsname{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, ceil(yMax*10^NrUnsigY)/(10^NrUnsigY));
+ end
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sDxV\\endcsname{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, DxV);
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sDyV\\endcsname{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, DyV);
+ if options.AxisBoundaries
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sXminAxis\\endcsname{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, floor(xMinAxis*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sXmaxAxis\\endcsname{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, ceil(xMaxAxis*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sYminAxis\\endcsname{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, floor(yMinAxis*10^NrUnsigY)/(10^NrUnsigY));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sYmaxAxis\\endcsname{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, ceil(yMaxAxis*10^NrUnsigY)/(10^NrUnsigY));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sDxV\\endcsname{%1.', num2str(NrUnsigXAxis), 'f}\n'], EPLdata(1,i).ident, DxVAxis);
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sDyV\\endcsname{%1.', num2str(NrUnsigYAxis), 'f}\n'], EPLdata(1,i).ident, DyVAxis);
+ end
+ fclose(fid);
+
+ % write actual data
+ for j=1:My
+ % what precision is needed to output the data?
+ yyMax = max(EPLdata(1,i).y(idx_x(j),:));
+ yyMin = min(EPLdata(1,i).y(idx_x(j),:));
+ if (abs(yyMax-yyMin)<1e-16)
+ yNrPrecision = 1;
+ else
+ yNrPrecision = ceil(log10(10000/(yyMax-yyMin)));
+ end
+ xxMax = max(EPLdata(1,i).x(idx_x(j),:));
+ xxMin = min(EPLdata(1,i).x(idx_x(j),:));
+ if (abs(xxMax-xxMin)<1e-16)
+ xNrPrecision = 1;
+ else
+ xNrPrecision = ceil(log10(10000/(xxMax-xxMin)));
+ end
+ if isfield(EPLdata(1,i), 'precision')
+ NrPrecision = EPLdata(1,i).precision;
+ if isempty(NrPrecision)
+ NrPrecision = max(yNrPrecision, xNrPrecision);
+ end
+ else
+ NrPrecision = max(yNrPrecision, xNrPrecision);
+ end
+
+ % write the data to the file
+ xData = EPLdata(1,i).x(idx_x(j),:);
+ yData = EPLdata(1,i).y(j,:);
+ if My > 1; Ident = roman(num2str(j)); else Ident=''; end;
+
+ if options.NaNsplit
+ % look for the ranges where the data exists (~isnan)
+ yData(isnan(xData)) = NaN;
+
+ KeepLooking = true;
+ nrRanges = 0;
+ Ranges = zeros(0);
+ b = 0;
+ while KeepLooking
+ a = find(~isnan(yData((b+1):end)), 1, 'first') + b;
+ if ~isempty(a)
+ b = find(isnan(yData(a:end)), 1, 'first') + a-1;
+ if isempty(b)
+ b = length(yData);
+ KeepLooking = false;
+ end
+ nrRanges = nrRanges+1;
+ Ranges(nrRanges, :) = [a, b-1];
+ else
+ KeepLooking = false;
+ end
+ end
+
+ % data does not contain NaN:
+ if nrRanges<1
+ nrRanges = 1;
+ Ranges(1, :) = [1, length(yData)];
+ end
+
+ fid = fopen(fname, 'at');
+ fprintf(fid, '\\expandafter\\def\\csname Data%s%sNrRanges\\endcsname{%i}\n', EPLdata(1,i).ident, Ident, nrRanges);
+ fclose(fid);
+ for iRange = 1:nrRanges
+ fid = fopen(fname, 'at');
+ fprintf(fid, '\\expandafter\\def\\csname Data%s%s%i\\endcsname{\n', EPLdata(1,i).ident, Ident, iRange);
+ fclose(fid);
+ dlmwrite(fname, [xData(Ranges(iRange,1):Ranges(iRange,2)); yData(Ranges(iRange,1):Ranges(iRange,2))]', '-append', 'delimiter', ' ', 'precision', ['%.', num2str(NrPrecision), 'f']);
+ fid = fopen(fname, 'at');
+ fprintf(fid, '}\n\n');
+ fclose(fid);
+ end
+
+ else
+ % options.NaN = false
+
+ fid = fopen(fname, 'at');
+ fprintf(fid, '\\expandafter\\def\\csname Data%s%s\\endcsname{\n', EPLdata(1,i).ident, Ident);
+ fclose(fid);
+ dlmwrite(fname, [xData; yData]', '-append', 'delimiter', ' ', 'precision', ['%.', num2str(NrPrecision), 'f']);
+ fid = fopen(fname, 'at');
+ fprintf(fid, '}\n\n');
+ fclose(fid);
+ end
+ end
+ end
+
+ % write group values
+ fid = fopen(fname, 'at');
+ for i = 1:max(group)
+ xMax = max(groupXmax(group==i));
+ xMin = min(groupXmin(group==i));
+ yMax = max(groupYmax(group==i));
+ yMin = min(groupYmin(group==i));
+ if (abs(yMax-yMin)<1e-16)
+ yMax = 1.0;
+ yMin = -1.0;
+ end
+ if (abs(xMax-xMin)<1e-16)
+ xMax = 1.0;
+ xMin = -1.0;
+ end
+
+
+ % axis boundaries
+ xMinAxis = xMin-(xMax-xMin)*options.AxisBoundariesGap/100;
+ xMaxAxis = xMax+(xMax-xMin)*options.AxisBoundariesGap/100;
+ yMinAxis = yMin-(yMax-yMin)*options.AxisBoundariesGap/100;
+ yMaxAxis = yMax+(yMax-yMin)*options.AxisBoundariesGap/100;
+
+ DxV = (xMax-xMin)/5;
+ DyV = (yMax-yMin)/5;
+ DxVAxis = (xMaxAxis-xMinAxis)/5;
+ DyVAxis = (yMaxAxis-yMinAxis)/5;
+
+ % check how many significant numbers DyV has. This number will be used for the precision of all Min/Max values so
+ % latex prints all of them with the same number of decimal places.
+ NrUnsigY = 0;
+ while (fix(DyV*10^(NrUnsigY)) == 0)
+ NrUnsigY = NrUnsigY+1;
+ end
+ NrUnsigX = 0;
+ while (fix(DxV*10^(NrUnsigX)) == 0)
+ NrUnsigX = NrUnsigX+1;
+ end
+ NrUnsigYAxis = 0;
+ while (fix(DyVAxis*10^(NrUnsigYAxis)) == 0)
+ NrUnsigYAxis = NrUnsigYAxis+1;
+ end
+ NrUnsigXAxis = 0;
+ while (fix(DxVAxis*10^(NrUnsigXAxis)) == 0)
+ NrUnsigXAxis = NrUnsigXAxis+1;
+ end
+
+ if i>1.5
+ ident = strcat('Group', roman(num2str(i-1)));
+ else
+ ident = 'GroupDummy';
+ end
+
+ if options.DataBoundaries
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sXmin\\endcsname{%1.', num2str(NrUnsigX), 'f}\n'], ident, floor(xMin*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sXmax\\endcsname{%1.', num2str(NrUnsigX), 'f}\n'], ident, ceil(xMax*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sYmin\\endcsname{%1.', num2str(NrUnsigY), 'f}\n'], ident, floor(yMin*10^NrUnsigY)/(10^NrUnsigY));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sYmax\\endcsname{%1.', num2str(NrUnsigY), 'f}\n'], ident, ceil(yMax*10^NrUnsigY)/(10^NrUnsigY));
+ end
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sDxV\\endcsname{%1.', num2str(NrUnsigX), 'f}\n'], ident, DxV);
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sDyV\\endcsname{%1.', num2str(NrUnsigY), 'f}\n'], ident, DyV);
+ if options.AxisBoundaries
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sXminAxis\\endcsname{%1.', num2str(NrUnsigXAxis), 'f}\n'], ident, floor(xMinAxis*10^NrUnsigXAxis)/(10^NrUnsigXAxis));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sXmaxAxis\\endcsname{%1.', num2str(NrUnsigXAxis), 'f}\n'], ident, ceil(xMaxAxis*10^NrUnsigXAxis)/(10^NrUnsigXAxis));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sYminAxis\\endcsname{%1.', num2str(NrUnsigYAxis), 'f}\n'], ident, floor(yMinAxis*10^NrUnsigYAxis)/(10^NrUnsigYAxis));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sYmaxAxis\\endcsname{%1.', num2str(NrUnsigYAxis), 'f}\n'], ident, ceil(yMaxAxis*10^NrUnsigYAxis)/(10^NrUnsigYAxis));
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sDxVAxis\\endcsname{%1.', num2str(NrUnsigXAxis), 'f}\n'], ident, DxVAxis);
+ fprintf(fid, ['\\expandafter\\def\\csname Data%sDyVAxis\\endcsname{%1.', num2str(NrUnsigYAxis), 'f}\n'], ident, DyVAxis);
+ end
+
+ end
+ fclose(fid);
+ ret = 1;
+end \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/export2pst.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/export2pst.m
new file mode 100644
index 0000000000..4c1aadfe34
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/export2pst.m
@@ -0,0 +1,332 @@
+% export2pst(EPLdata, projectname, options)
+%
+% This function may be used to export numeric data in a latex file for later
+% use with, e.g., NumericPlots.sty.
+% If the data is provided as an 1xK array, each entry of the array will be exported
+% to the file <projectname>. Each entry of the array must be a structure which contains
+% x, y and ident. x and y must be arrays of the same size MxN. If M>1, each column
+% of the array is exported to the file and may later be used by \Data<ident><rm>, where
+% <rm> is the roman representation of the column number. If M=1, the data may later
+% be used with the latex command \Data<ident>
+%
+% EPLdata(1, i).x = x-matrix
+% EPLdata(1, i).y = y-matrix
+% EPLdata(1, i).ident = identifier (has to be a string without numbers ->
+% latex command name)
+% EPLdata(1, i).descr = description (optional)
+% EPLdata(1, i).Group = GroupNr (optional) use numbers from 1 to n to define groups. For
+% each group, the maximum and minimum values will be written to the output file and may be
+% accessed with identifier Group<RomanNumber> where RomanNumber is the roman represenation
+% of the group number. All data without group or with group number 0 is put into the group
+% Dummy
+% EPLdata(1, i).precision (optional) = number of decimal places to be written
+% projectname = projectname (with path, without extension)
+% options (optional) define which output is required
+% - options.DataBoundaries [true]: if true, the min/max values of the data
+% will be written to the output file.
+% - options.AxisBoundaries [false]: if true, values which may be set as
+% min/max values for the axis are written to the output file. These are
+% the min/max values -/+ a gap.
+% - options.AxisBoundariesGap [10]: defines the gap used for the axis
+% min/max values in percent of the total range of the data.
+% - options.SuppressWarning [false]: suppresses the warning about max/min values being to
+% close together
+% - options.precision [empty]: how many decimal places should be printed for x and y
+% values. Will be calculated automatically if left empty.
+%
+% function roman.m required to convert a number to its roman representation.
+%
+
+% author: Alexander Michel
+% date: 2011/08/26
+% based on export2pst created by Thomas König
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+
+function ret = export2pst(EPLdata, projectname, options)
+ workpath = cd;
+ Extension = 'tex';
+ if size(EPLdata, 1)>1
+ error('EPLdata must be of size [1, n]');
+ end
+
+ % define standard options
+ if ((nargin<3) || ~isfield(options, 'DataBoundaries'))
+ % DataBoundaries should be in the output file (xMin, xMax, yMin,
+ % yMax)
+ options.DataBoundaries = true;
+ end
+ if ~isfield(options, 'AxisBoundaries')
+ % axis boundaries (xMinAxis, xMaxAxis, yMinAxis, yMaxAxis)
+ options.AxisBoundaries = false;
+ end
+ if ~isfield(options, 'AxisBoundariesGap')
+ % gap for the axis boundaries in percent of full scale
+ options.AxisBoundariesGap = 10;
+ end
+ if ~isfield(options, 'SuppressWarning')
+ options.SuppressWarning = false;
+ end
+ if ~isfield(options, 'FastRead')
+ options.FastRead = true;
+ end
+
+ % create datafolder if necessary
+ datapath = [projectname '_data'];
+ if(exist(datapath,'dir'))
+ cd(datapath)
+ delete(['*.' Extension]);
+ cd(workpath);
+ else
+ mkdir(datapath);
+ end
+ % open file if possible
+ if strcmp(projectname(end-3:end), '.tex')
+ fname = fullfile(projectname);
+ else
+ fname = fullfile([projectname, '.tex']);
+ end
+ [fid, msg] = fopen(fname, 'wt');
+ if fid<0
+ display(msg);
+ error('Matlab:FileError', ['Could not open the file ', fname '.']);
+ end
+
+ % write file header
+ fprintf(fid, '%% EPLdata written by export2pst\n');
+ fprintf(fid, '%% date: %s\n\n', date);
+ fprintf(fid, '\\def\\ExpDate{%s}\n', date);
+ fclose(fid);
+
+ % process data
+ for i=1:size(EPLdata,2)
+ % Ident='';
+ My = size(EPLdata(i).y, 1);
+ Mx = size(EPLdata(i).x, 1);
+ if ( Mx>1 && Mx~=My )
+ error('Matlab:export2pst', 'EPLdata.x and EPLdata.y must have the same size or EPLdata.x must have one column only');
+ end
+ if ( Mx==1 )
+ idx_x = ones(1, My);
+ else
+ idx_x = 1:Mx;
+ end
+
+ % data header
+ if(isfield(EPLdata(1,i), 'descr'))
+ fid = fopen(fname, 'at');
+ fprintf(fid, '\\def\\Descr%s{%s}\n', EPLdata(1,i).ident, EPLdata(1,i).descr);
+ fclose(fid);
+ end
+ if ~isfield(EPLdata(1,i), 'group')
+ EPLdata(1,i).group = 0;
+ end
+ if isempty(EPLdata(1,i).group)
+ EPLdata(1,i).group = 0;
+ end
+
+ % xMax, xMin, Dx
+ xMax = max(max(EPLdata(1,i).x));
+ xMin = min(min(EPLdata(1,i).x));
+
+ % axis boundaries
+ xMinAxis = xMin-(xMax-xMin)*options.AxisBoundariesGap/100; % -10% axis nearly tight
+ xMaxAxis = xMax+(xMax-xMin)*options.AxisBoundariesGap/100; % +10% axis nearly tight
+
+
+ if (abs(xMax-xMin)<1e-16)
+ xMax = 1.0;
+ xMin = -1.0;
+ if ~options.SuppressWarning
+ fprintf('export2pst - Warning: |xMax-xMin|<1e-16\n');
+ end
+ end
+ DxV = (xMax-xMin)/5;
+ NrUnsigX = 0;
+ while (fix(DxV*10^(NrUnsigX)) == 0)
+ NrUnsigX = NrUnsigX+1;
+ end
+
+ % yMin, yMax, Dy
+ yMax = max(max(EPLdata(1,i).y));
+ yMin = min(min(EPLdata(1,i).y));
+
+ % axis boundaries
+ yMinAxis = yMin-(yMax-yMin)*options.AxisBoundariesGap/100; % -10% axis nearly tight
+ yMaxAxis = yMax+(yMax-yMin)*options.AxisBoundariesGap/100; % +10% axis nearly tight
+
+ % save min/max values for groupes
+ group(i) = EPLdata(1,i).group+1;
+ groupXmax(i) = xMax;
+ groupXmin(i) = xMin;
+ groupYmax(i) = yMax;
+ groupYmin(i) = yMin;
+
+ if (abs(yMax-yMin)<1e-16)
+ yMax = 1.0;
+ yMin = -1.0;
+ if ~options.SuppressWarning
+ fprintf('export2pst - Warning: |yMax-yMin|<1e-16\n');
+ end
+ end
+ DyV = (yMax-yMin)/5;
+
+ % check how many significant numbers DyV has. This number will be used for the precision of all Min/Max values so
+ % latex prints all of them with the same number of decimal places.
+ NrUnsigY = 0;
+ while (fix(DyV*10^(NrUnsigY)) == 0)
+ NrUnsigY = NrUnsigY+1;
+ end
+
+ fid = fopen(fname, 'at');
+ if options.DataBoundaries
+ fprintf(fid, ['\\def\\Data%sXmin{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, floor(xMin*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\def\\Data%sXmax{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, ceil(xMax*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\def\\Data%sYmin{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, floor(yMin*10^NrUnsigY)/(10^NrUnsigY));
+ fprintf(fid, ['\\def\\Data%sYmax{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, ceil(yMax*10^NrUnsigY)/(10^NrUnsigY));
+ end
+ fprintf(fid, ['\\def\\Data%sDxV{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, DxV);
+ fprintf(fid, ['\\def\\Data%sDyV{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, DyV);
+ if options.AxisBoundaries
+ fprintf(fid, ['\\def\\Data%sXminAxis{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, floor(xMinAxis*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\def\\Data%sXmaxAxis{%1.', num2str(NrUnsigX), 'f}\n'], EPLdata(1,i).ident, ceil(xMaxAxis*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\def\\Data%sYminAxis{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, floor(yMinAxis*10^NrUnsigY)/(10^NrUnsigY));
+ fprintf(fid, ['\\def\\Data%sYmaxAxis{%1.', num2str(NrUnsigY), 'f}\n'], EPLdata(1,i).ident, ceil(yMaxAxis*10^NrUnsigY)/(10^NrUnsigY));
+ end
+ fclose(fid);
+
+ cd(datapath);
+ % write actual data
+ for j=1:My
+ yyMax = max(EPLdata(1,i).y(idx_x(j),:));
+ yyMin = min(EPLdata(1,i).y(idx_x(j),:));
+ if (abs(yyMax-yyMin)<1e-16)
+ yNrPrecision = 1;
+ else
+ yNrPrecision = ceil(log10(10000/(yyMax-yyMin)));
+ end
+ xxMax = max(EPLdata(1,i).x(idx_x(j),:));
+ xxMin = min(EPLdata(1,i).x(idx_x(j),:));
+ if (abs(xxMax-xxMin)<1e-16)
+ xNrPrecision = 1;
+ else
+ xNrPrecision = ceil(log10(10000/(xxMax-xxMin)));
+ end
+ if isfield(EPLdata(1,i), 'precision')
+ NrPrecision = EPLdata(1,i).precision;
+ if isempty(NrPrecision)
+ NrPrecision = max(yNrPrecision, xNrPrecision);
+ end
+ else
+ NrPrecision = max(yNrPrecision, xNrPrecision);
+ end
+
+ if(My > 1)
+ Ident = roman(num2str(j));
+ else
+ Ident='';
+ end;
+ datafilename = [EPLdata(1,i).ident Ident '.' Extension];
+ fid = fopen(datafilename, 'w+');
+ fclose(fid);
+ if(options.FastRead)
+ fid = fopen(datafilename, 'w+');
+ fprintf(fid, '%% EPLdata written by export2pst\n');
+ fprintf(fid, '%% date: %s\n\n', date);
+ fprintf(fid,'\\def\\FigureToPlot{');
+ %fprintf(fid,'[');
+ fclose(fid);
+ dlmwrite(datafilename, [EPLdata(1,i).x(idx_x(j),:); EPLdata(1,i).y(j,:)]','-append', 'delimiter', ' ', 'precision', ['%.', num2str(NrPrecision), 'f']);
+ fid = fopen(datafilename, 'a');
+ fprintf(fid,'}');
+ %fprintf(fid,']');
+ fclose(fid);
+ else
+ fid = fopen(datafilename, 'w+');
+ fprintf(fid, '%% EPLdata written by export2pst\n');
+ fprintf(fid, '%% date: %s\n\n', date);
+ fclose(fid);
+ dlmwrite(datafilename, [EPLdata(1,i).x(idx_x(j),:); EPLdata(1,i).y(j,:)]','-append', 'delimiter', ' ', 'precision', ['%.', num2str(NrPrecision), 'f']);
+ end
+ end
+ cd(workpath)
+ end
+
+
+ % write group values
+ for i = 1:max(group)
+ xMax = max(groupXmax(group==i));
+ xMin = min(groupXmin(group==i));
+ yMax = max(groupYmax(group==i));
+ yMin = min(groupYmin(group==i));
+ if (abs(yMax-yMin)<1e-16)
+ yMax = 1.0;
+ yMin = -1.0;
+ end
+ if (abs(xMax-xMin)<1e-16)
+ xMax = 1.0;
+ xMin = -1.0;
+ end
+
+
+ % axis boundaries
+ xMinAxis = xMin-(xMax-xMin)*options.AxisBoundariesGap/100;
+ xMaxAxis = xMax+(xMax-xMin)*options.AxisBoundariesGap/100;
+ yMinAxis = yMin-(yMax-yMin)*options.AxisBoundariesGap/100;
+ yMaxAxis = yMax+(yMax-yMin)*options.AxisBoundariesGap/100;
+
+ DxV = (xMax-xMin)/5;
+ DyV = (yMax-yMin)/5;
+
+ % check how many significant numbers DyV has. This number will be used for the precision of all Min/Max values so
+ % latex prints all of them with the same number of decimal places.
+ NrUnsigY = 0;
+ while (fix(DyV*10^(NrUnsigY)) == 0)
+ NrUnsigY = NrUnsigY+1;
+ end
+ NrUnsigX = 0;
+ while (fix(DxV*10^(NrUnsigX)) == 0)
+ NrUnsigX = NrUnsigX+1;
+ end
+
+ if i>1.5
+ ident = strcat('Group', roman(num2str(i-1)));
+ else
+ ident = 'GroupDummy';
+ end
+
+ fid = fopen(fname, 'at');
+ if options.DataBoundaries
+ fprintf(fid, ['\\def\\Data%sXmin{%1.', num2str(NrUnsigX), 'f}\n'], ident, floor(xMin*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\def\\Data%sXmax{%1.', num2str(NrUnsigX), 'f}\n'], ident, ceil(xMax*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\def\\Data%sYmin{%1.', num2str(NrUnsigY), 'f}\n'], ident, floor(yMin*10^NrUnsigY)/(10^NrUnsigY));
+ fprintf(fid, ['\\def\\Data%sYmax{%1.', num2str(NrUnsigY), 'f}\n'], ident, ceil(yMax*10^NrUnsigY)/(10^NrUnsigY));
+ end
+ fprintf(fid, ['\\def\\Data%sDxV{%1.', num2str(NrUnsigX), 'f}\n'], ident, DxV);
+ fprintf(fid, ['\\def\\Data%sDyV{%1.', num2str(NrUnsigY), 'f}\n'], ident, DyV);
+ if options.AxisBoundaries
+ fprintf(fid, ['\\def\\Data%sXminAxis{%1.', num2str(NrUnsigX), 'f}\n'], ident, floor(xMinAxis*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\def\\Data%sXmaxAxis{%1.', num2str(NrUnsigX), 'f}\n'], ident, ceil(xMaxAxis*10^NrUnsigX)/(10^NrUnsigX));
+ fprintf(fid, ['\\def\\Data%sYminAxis{%1.', num2str(NrUnsigY), 'f}\n'], ident, floor(yMinAxis*10^NrUnsigY)/(10^NrUnsigY));
+ fprintf(fid, ['\\def\\Data%sYmaxAxis{%1.', num2str(NrUnsigY), 'f}\n'], ident, ceil(yMaxAxis*10^NrUnsigY)/(10^NrUnsigY));
+ end
+
+ fclose(fid);
+ ret = 1;
+end \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/genlatexnames.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/genlatexnames.m
new file mode 100644
index 0000000000..0e48e8b2ea
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/genlatexnames.m
@@ -0,0 +1,38 @@
+function latexnames = genlatexnames(names)
+%------------------------------------------------
+%2013/06/26 version 1.0
+%latexnames = genlatexnames(names)
+%Generates proper names for latex commandos
+%------------------------------------------------
+% author: Alexander Michel
+% date: 2013/06/26
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+%
+
+excludelist = {'\','_','-','1','2','3','4','5','6','7','8','9','0'};
+for ii = 1:length(names)
+ idx = [];
+ teststr = names{ii};
+ strlength = length(teststr);
+ for jj=1:length(excludelist)
+ idx = [idx strfind(teststr,excludelist{jj})];
+ end
+ latexnames{ii} = teststr(setdiff(1:strlength,idx));
+end
+ \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/roman.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/roman.m
new file mode 100644
index 0000000000..1642a917e6
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/roman.m
@@ -0,0 +1,58 @@
+function [romnum] = roman(num)
+% ------------------------------------------------
+% [romnum] = int2roman(num)
+% Function converts a integer 2 a roman number (string)
+% ------------------------------------------------
+% output:
+% num ...roman number to be converted (number or string)
+%
+
+% author: Alexander Michel
+% date: 2010/08/09
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+if(isstr(num))
+ numint = str2num(num);
+else
+ numint = num;
+end
+numint = round(numint);
+
+rest = numint;
+div = [1000 900 500 400 100 90 50 40 10 9 5 4 1];
+letters = {'M','CM','D', 'CD','C','XC','L','XL','X','IX','V','IV','I'};
+ii = 1;
+while(rest~=0)
+ z(ii) = floor(rest/div(ii));
+ rest = mod(rest,div(ii));
+ ii = ii+1;
+end
+romnum = '';
+
+for(ii=1:length(z));
+ for(jj=1:z(ii))
+ romnum = [romnum letters{ii}];
+ end
+end
+
+end
+
+
+
+ \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/struct2latex.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/struct2latex.m
new file mode 100644
index 0000000000..8edb5d543a
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/struct2latex.m
@@ -0,0 +1,187 @@
+function num = struct2latex(data,xname,downsample,filtertype,filename,postfix,options)
+%------------------------------------------------
+%2010/09/14 version 1.0
+%num = struct2latex(data,xname,downsample,filename,postfix,options)
+%Function to export a matlabstruct to a tex-file for using NumericPlots.
+%xname, downsample, filename, postfix and options are optional parameters.
+%struct2latex is based on the function export2latex.
+%------------------------------------------------
+%output:
+%num ...number of y-data exported
+%input:
+%data ...datastruct
+%xname ...name of the x-Axis
+%downsample ...downsampling factor (optional, default = 1)
+%filtertype ...using filtering data {'none','MinMax','Hull'}(optional, default = 'none')
+%filename ...name of the tex-file (optional, default io)
+%postfix ...postfix for fieldnames in the tex-file (optional, default '')
+%options ...options for export2latex (optional)
+%
+
+% author: Alexander Michel
+% date: 2010/08/09
+% changed by Alexander Michel:
+% 2010/09/14 mapping of column-vectors
+% 2010/09/14 postfix option added
+% 2012/08/03 filters added
+% 2013/06/26 data consistency check added
+% 2013/08/09 data consistency check for x-vector dimension added
+% bugfixing of mapping of column-vectors
+% bugfixing of fnamesExcludelist
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+
+%choose x-Axis
+allfnames = fieldnames(data);
+if(nargin<2)
+ [xnamenum,selected] = listdlg('PromptString','Choose x-Axis:','SelectionMode','single','ListString',allfnames(1:end));
+ if (selected==0)
+ error('No x-Axis chosen!');
+ end
+ xname = allfnames{xnamenum};
+end
+
+%exclude special fields from export
+fnamesExcludelist = {xname,'dSPACESettings'};
+kk = 1;
+for ii = 1:length(allfnames)
+ if(~strcmp(allfnames{ii},fnamesExcludelist))
+ fnames{kk} = allfnames{ii};
+ kk = kk+1;
+ end
+end
+
+
+% check x data consistency and
+% convert to column vectors if necessary
+[nor,noc] = size(data.(xname));
+if(nor>1)
+ if(noc>1)
+ error('struct2latex supports only vectors as x-vectors');
+ else
+ data.(xname) = data.(xname)';
+ end
+end
+
+% check y data consistency and
+% convert to column vectors if necessary
+for ii = 1:length(fnames)
+ [nor,noc] = size(data.(fnames{ii}));
+ if(nor>1)
+ if(noc>1)
+ error('struct2latex supports only vectors as y-vectors');
+ else
+ data.(fnames{ii}) = data.(fnames{ii})';
+ end
+ end
+ if(length(data.(xname))~=length(data.(fnames{ii})))
+ error(['Error in ' fnames{ii} '! Only vectors of the same length are supported!']);
+ end
+end
+
+%downsample
+if(nargin<3)
+ downsample = 1;
+end
+idx = 1:downsample:length(data.(xname));
+
+%downsample
+if(nargin<4)
+ filtertype = 'none';
+end
+
+
+%postfix
+if(nargin<6)
+ postfix = '';
+end
+
+if(length(idx)>5000)
+ buttonname = questdlg('Warning! Number of points exceeds 5000! It is recommended to increase the downsampling factor!','Increase the downsampling factor?','Yes','No','Yes');
+ switch buttonname
+ case 'Yes'
+ dlgoptions.Resize='on';
+ dlgoptions.WindowStyle='normal';
+ dlgoptions.Interpreter='tex';
+ defans{1} = num2str(ceil(length(data.(xname))/5000));
+ answer = inputdlg('Downsampling factor','Input Downsampling factor',1,defans,dlgoptions);
+ downsample = str2num(answer{1});
+ idx = 1:downsample:length(data.(xname));
+ case 'No'
+ warning('number of points exceeds 5000');
+ end
+end
+
+
+% get x-data
+xbuffer = data.(xname);
+[nor,noc] = size(xbuffer);
+if(nor>1)
+ if(noc>1)
+ error('struct2latex supports only vectors');
+ else
+ xbuffer = xbuffer';
+ end
+end
+
+% get y-data
+latexfnames = genlatexnames(fnames);
+for ii = 1:length(fnames)
+ ybuffer = data.(fnames{ii});
+ switch(filtertype)
+ case{'none'}
+ ydata = ybuffer(idx);
+ xdata = xbuffer(idx);
+ case{'MinMax'}
+ [xdata,ydata] = LatexFilterMinMax(xbuffer,ybuffer,floor(length(idx)/2));
+ case{'Hull'}
+ [xdata,ydata] = LatexFilterHull(xbuffer,ybuffer,floor(length(idx)/2));
+ otherwise
+ ydata = ybuffer(idx);
+ xdata = xbuffer(idx);
+ end
+ texdata(ii).x = xdata;
+ texdata(ii).y = ydata;
+ texdata(ii).ident = [latexfnames{ii} postfix];
+end
+
+if(nargin<4)
+ [texname,texpname] = uiputfile('*.tex','Save Tex-File as ...','data');
+ filename = [texpname texname(1:end-4)];
+end
+if(ischar(filename))
+ if(exist('options','var'))
+ export2latex(texdata,filename,options);
+ else
+ export2latex(texdata,filename);
+ end
+else
+ error('no savefile chosen or illegal name');
+end
+
+% output info
+num = length(fnames);
+disp([num2str(length(fnames)) ' data sets exported.']);
+disp(['x-data name:']);
+disp(['''' xname '''']);
+disp(['y-data name:']);
+for ii=1:length(latexfnames)
+ fprintf(['''' latexfnames{ii} '''' ' ']);
+end
+fprintf(['\n']);
diff --git a/graphics/pstricks/contrib/numericplots/MatlabFunctions/struct2pst.m b/graphics/pstricks/contrib/numericplots/MatlabFunctions/struct2pst.m
new file mode 100644
index 0000000000..478ec75d9f
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/MatlabFunctions/struct2pst.m
@@ -0,0 +1,127 @@
+function num = struct2pst(data,xname,downsample,filename,postfix,options)
+%------------------------------------------------
+%2011/09/08 version 1.0
+%num = struct2pst(data,xname,downsample,filename,postfix,options)
+%Function to export a matlabstruct to a tex-file for using NumericPlots.
+%xname, downsample, filename, postfix and options are optional parameters.
+%struct2pstis based on the function export2latex.
+%------------------------------------------------
+%output:
+%num ...number of y-data exported
+%input:
+%data ...datastruct
+%xname ...name of the x-Axis
+%downsample ...downsampling factor (optional, default = 1)
+%filename ...name of the tex-file (optional, default io)
+%postfix ...postfix for fieldnames in the tex-file (optional, default '')
+%options ...options for export2latex (optional)
+%
+
+%author: Alexander Michel
+% date: 2010/08/09
+% changed by Alexander Michel:
+% 2010/09/14 mapping of column-vectors
+% 2010/09/14 postfix option added
+%
+% Copyright 2010 Thomas König, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+
+%choose x-Axis
+fnames = fieldnames(data);
+if(nargin<2)
+ [xnamenum,selected] = listdlg('PromptString','Choose x-Axis:','SelectionMode','single','ListString',fnames(1:end));
+ if (selected==0)
+ error('No x-Axis chosen!');
+ end
+ xname = fnames{xnamenum};
+end
+
+%downsample
+if(nargin<3)
+ downsample = 1;
+end
+idx = 1:downsample:length(data.(xname));
+
+%postfix
+if(nargin<5)
+ postfix = '';
+end
+
+if(length(idx)>5000)
+ buttonname = questdlg(['Warning! Number of points exceeds 5000 and is equal to ' num2str(length(idx)) '! It is recommended to increase the downsampling factor!'],'Increase the downsampling factor?','Yes','No','Yes');
+ switch buttonname
+ case 'Yes'
+ dlgoptions.Resize='on';
+ dlgoptions.WindowStyle='normal';
+ dlgoptions.Interpreter='tex';
+ defans{1} = num2str(ceil(length(data.(xname))/5000));
+ answer = inputdlg('Downsampling factor','Input Downsampling factor',1,defans,dlgoptions);
+ downsample = str2double(answer{1});
+ idx = 1:downsample:length(data.(xname));
+ case 'No'
+ warning(['number of points exceeds 5000 and is equal to ' num2str(length(idx))]);
+ end
+end
+
+
+% get x-data
+xdata = data.(xname);
+[nor noc] = size(xdata);
+if(nor>1)
+ if(noc>1)
+ error('struct2latex supports only vectors');
+ else
+ xdata = xdata';
+ end
+end
+
+% get y-data
+jj = 1;
+for ii = 1:length(fnames)
+ if(strcmp(xname,fnames{ii})~=1 && strcmp('dSPACESettings',fnames{ii})~=1)
+ texdata(jj).x = xdata(idx);
+ buffer = data.(fnames{ii});
+ [nor noc] = size(buffer);
+ if(nor>1)
+ if(noc>1)
+ error('struct2latex supports only vectors');
+ else
+ buffer = buffer';
+ end
+ end
+ texdata(jj).y = buffer(idx);
+ texdata(jj).ident = [fnames{ii} postfix];
+ jj = jj+1;
+ end
+end
+
+if(nargin<4)
+ [texname texpname] = uiputfile('*.tex','Save Tex-File as ...','data');
+ filename = [texpname texname(1:end-4)];
+end
+if(isstr(filename))
+ if(exist('options','var'))
+ export2pst(texdata,filename,options);
+ else
+ export2pst(texdata,filename);
+ end
+else
+ error('no savefile chosen or illegal name');
+end
+
+num = jj-1; \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/README b/graphics/pstricks/contrib/numericplots/README
new file mode 100644
index 0000000000..9642772a09
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/README
@@ -0,0 +1,30 @@
+---------------------------------------------------------------------------
+The NumericPlots package --- LaTeX package to plot numeric data using pstricks
+Maintained by Thomas Koenig, Alexander Michel, Michael Baumgart
+E-mail: NumericPlots@tikey.de
+Released under the GNU General Public License version 3 or later
+See <http://www.gnu.org/licenses/>
+----------------------------------------------------------------------------
+
+Copyright 2010 Thomas Koenig, Alexander Michel, Michael Baumgart
+
+Plotting numeric data is a task which often has to be done for scientific
+papers. In \LaTeX, however, it is only possible to include graphics created with
+an external program. The pstricks-packages provide very many commands to
+generate graphics in \LaTeX. To generate simple graphics from numeric data,
+however, it is difficult to use. This package provides a simpler interface for
+the pstricks-package to plot numeric data.
+
+NumericPlots is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+any later version.
+
+NumericPlots is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
diff --git a/graphics/pstricks/contrib/numericplots/doc/License.txt b/graphics/pstricks/contrib/numericplots/doc/License.txt
new file mode 100644
index 0000000000..94a9ed024d
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/License.txt
@@ -0,0 +1,674 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ <program> Copyright (C) <year> <name of author>
+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<http://www.gnu.org/licenses/>.
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+<http://www.gnu.org/philosophy/why-not-lgpl.html>.
diff --git a/graphics/pstricks/contrib/numericplots/doc/NumericPlots.pdf b/graphics/pstricks/contrib/numericplots/doc/NumericPlots.pdf
new file mode 100644
index 0000000000..48f441583a
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/NumericPlots.pdf
Binary files differ
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/BasicFunctionality.tex b/graphics/pstricks/contrib/numericplots/doc/src/BasicFunctionality.tex
new file mode 100644
index 0000000000..b1550768f4
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/BasicFunctionality.tex
@@ -0,0 +1,621 @@
+% Copyright 2010 Thomas Koenig, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+\part{Using the package}
+
+\section{Basic Functionality}
+
+The package NumericPlots\\
+\verb+\usepackage{NumericPlots}+
+\\
+is intended to be used to plot numeric data which
+may, e.g., be exported from Matlab by export2latex.m. The data must be defined
+in the form
+\lstinputlisting[lastline=9]{examples/DefineData}
+where the first column contains the x, the second column the y-data.
+
+\emph{Please note that the package relies on the \texttt{listplot}-command from
+pstricks!}
+
+\subsection{plots}
+
+
+The easiest plot may be done by
+
+\begin{minipage}[T]{0.45\linewidth}
+ \lstinputlisting{examples/basic_EasyPlot}
+\end{minipage}
+\hspace{0.05\linewidth}
+\begin{minipage}[T]{0.45\linewidth}
+ \input{examples/basic_EasyPlot}
+\end{minipage}
+
+if you want to add a legend, you simply call
+
+\begin{minipage}[T]{0.45\linewidth}
+ \lstinputlisting{examples/basic_Legend}
+\end{minipage}
+\hspace{0.05\linewidth}
+\begin{minipage}[T]{0.45\linewidth}
+ \input{examples/basic_Legend}
+\end{minipage}
+
+To plot multiple data in one plot call
+
+\begin{minipage}[T]{0.45\linewidth}
+ \lstinputlisting{examples/basic_MultipleData}
+\end{minipage}
+\hspace{0.05\linewidth}
+\begin{minipage}[T]{0.45\linewidth}
+ \centering
+ \input{examples/basic_MultipleData}
+\end{minipage}
+
+
+\subsection{Label and TickLabels}
+
+The commands \texttt{plotxAxis} and \texttt{plotyAxis} take the options
+\texttt{NoLabel}, \texttt{NoTicks}, \texttt{NoTickLabel} as well as
+\texttt{LabelOption} and \texttt{TickLabelOption} which may be used to eliminate
+or change the look of the labels.
+
+Standard values for \texttt{LabelOption} and \texttt{TickLabelOption} may be set\\
+by \verb|\newcommand{\StdLabelOption}{\color{blue}|\\
+and \verb|\newcommand{\StdTickLabelOption}{\small}|.
+
+The option \texttt{LabelSep} may be used for \verb|\plotxAxis| and
+\verb|\plotyAxis| to set the seperation between the axis and the label. Standard
+value is \verb|\baselineskip+1ex| for the x-label and \verb|7ex| for the
+y-label.
+
+\begin{minipage}[T]{0.45\linewidth}
+ \lstinputlisting{examples/basic_Labels}
+\end{minipage}
+\hspace{0.05\linewidth}
+\begin{minipage}[T]{0.45\linewidth}
+ \input{examples/basic_Labels}
+\end{minipage}
+
+It is furthermore possible to change the position and the rotation of the labels
+and tick labels, see the example in section \ref{sec:Details:Labels}.
+
+It is also possible to put single tick labels, see the example in section
+\ref{sec:Details:Labels}.
+
+\subsection{Place ``Objects'' in the plot.}\label{sec:PlaceObjects}
+
+There are basically two different options to place objects in the plot. To
+understand the difference one has to keep in mind that the axis have two
+different coordinate systems. One is the system defined by xMin, xMax, yMin and
+yMax (refered to as ``DataCoordinateSystem''), the other ist the system defined
+by xCoordMin, xCoordMax, yCoordMin and yCoordMax (refered to as
+``PictureCoordinateSystem''), see section \ref{sec:MultiplePlots}.
+
+It is now possible to place stuff in the graph with the DataCoordinates with the
+command NDPput, see the following example.
+
+\begin{minipage}[T]{0.45\linewidth}
+ \lstinputlisting{examples/basic_PlaceObjects}
+\end{minipage}
+\hspace{0.05\linewidth}
+\begin{minipage}[T]{0.45\linewidth}
+ \input{examples/basic_PlaceObjects}
+\end{minipage}
+
+
+For convenience the commands \verb|\putXX{object}| where
+$XX\in\left(N,S,E,W,NW,NE,SW,SE\right)$ are defined to place something in the
+North, South,\ldots, SouthEast corner of the plot. Also, the command
+\verb|\putExpY{xx}| and \verb|\putExpX{xx}| may be used to place exponents at
+the axes.
+
+\begin{minipage}[T]{0.45\linewidth}
+ \lstinputlisting[firstline=14,lastline=24]{examples/basic_PlaceObjectsII}
+\end{minipage}
+\hspace{0.05\linewidth}
+\begin{minipage}[T]{0.45\linewidth}
+ \input{examples/basic_PlaceObjectsII}
+\end{minipage}
+
+Alternatively, stuff can be placed
+within the plot with \verb|\rput|.
+
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting[firstline=14,lastline=28]{examples/basic_UseRput}
+\end{minipage}
+\begin{minipage}[T]{0.5\linewidth}
+ \input{examples/basic_UseRput}
+\end{minipage}
+
+
+% =================================
+% | |
+% | Linestyles and colors |
+% | |
+% =================================
+
+\subsection{Linestyles and colors}
+
+While using the package, there are predefined linestyles which may be used:
+
+\begin{minipage}{0.55\linewidth}
+ \centering
+ \small
+
+ \begin{NumericDataPlot}[lly=1cm,llx=1cm,urx=0.25cm,ury=0.25cm]{\linewidth}{0.85\linewidth}
+ \setxAxis{xMin=2, xMax=17, xO=5, Dx=4}
+ \setyAxis{yMin=20, yMax=70, yO=20, Dy=20}
+
+ \plotxAxis[NoLabel, AxisStyle=Boxed]{}
+ \plotyAxis[NoLabel, AxisStyle=Boxed]{}
+
+ \listplot[style=StdLineStyA]{\DataA}
+ \listplot[style=StdLineStyB]{\DataB}
+ \listplot[style=StdLineStyC]{\DataC}
+ \listplot[style=StdLineStyD]{\DataD}
+ \listplot[style=StdLineStyE]{\DataE}
+ \listplot[style=StdLineStyF]{\DataF}
+ \listplot[style=StdLineStyG]{\DataG}
+ \end{NumericDataPlot}
+\end{minipage}
+\begin{minipage}{0.4\linewidth}
+ \centering
+ \LegendDefinition{
+ \LegLine{style=StdLineStyA} & StdLineStyA \\
+ \LegLine{style=StdLineStyB} & StdLineStyB \\
+ \LegLine{style=StdLineStyC} & StdLineStyC \\
+ \LegLine{style=StdLineStyD} & StdLineStyD \\
+ \LegLine{style=StdLineStyE} & StdLineStyE \\
+ \LegLine{style=StdLineStyF} & StdLineStyF \\
+ \LegLine{style=StdLineStyG} & StdLineStyG \\
+ }
+\end{minipage}
+
+When using the package option \texttt{BW} the standard line styles will be
+replaced by their black and white counterparts:
+
+\begin{minipage}{0.6\linewidth}
+ \centering
+ \small
+
+ \begin{NumericDataPlot}[lly=1cm,llx=1cm,urx=0.25cm,ury=0.25cm]{\linewidth}{0.85\linewidth}
+ \setxAxis{xMin=2, xMax=17, xO=5, Dx=4}
+ \setyAxis{yMin=20, yMax=70, yO=20, Dy=20}
+
+ \plotxAxis[NoLabel, AxisStyle=Boxed]{}
+ \plotyAxis[NoLabel, AxisStyle=Boxed]{}
+
+ \listplot[style=BWStdLineStyA]{\DataA}
+ \listplot[style=BWStdLineStyB]{\DataB}
+ \listplot[style=BWStdLineStyC]{\DataC}
+ \listplot[style=BWStdLineStyD]{\DataD}
+ \listplot[style=BWStdLineStyE]{\DataE}
+ \listplot[style=BWStdLineStyF]{\DataF}
+ \listplot[style=BWStdLineStyG]{\DataG}
+ \end{NumericDataPlot}
+\end{minipage}
+\begin{minipage}{0.4\linewidth}
+ \centering
+ \LegendDefinition{
+ \LegLine{style=BWStdLineStyA} & BWStdLineStyA \\
+ \LegLine{style=BWStdLineStyB} & BWStdLineStyB \\
+ \LegLine{style=BWStdLineStyC} & BWStdLineStyC \\
+ \LegLine{style=BWStdLineStyD} & BWStdLineStyD \\
+ \LegLine{style=BWStdLineStyE} & BWStdLineStyE \\
+ \LegLine{style=BWStdLineStyF} & BWStdLineStyF \\
+ \LegLine{style=BWStdLineStyG} & BWStdLineStyG \\
+ }
+\end{minipage}
+
+For values which are nearly the same (reference and measurement, e.g.) the
+following line styles may be used:
+
+\begin{minipage}{0.58\linewidth}
+ \centering
+ \small
+
+ \begin{NumericDataPlot}[lly=1cm,llx=1cm,urx=0.25cm,ury=0.25cm]{\linewidth}{0.85\linewidth}
+ \setxAxis{xMin=2, xMax=17, xO=5, Dx=4}
+ \setyAxis{yMin=20, yMax=70, yO=20, Dy=20}
+
+ \plotxAxis[NoLabel, AxisStyle=Boxed]{}
+ \plotyAxis[NoLabel, AxisStyle=Boxed]{}
+
+ \listplot[style=StdLineStyX]{\DataC}
+ \listplot[style=StdLineStyY]{\DataC}
+
+ \listplot[style=BWStdLineStyX]{\DataD}
+ \listplot[style=BWStdLineStyY]{\DataD}
+ \end{NumericDataPlot}
+\end{minipage}
+\begin{minipage}{0.38\linewidth}
+ \centering
+ \LegendDefinition{
+ \LegLine{style=StdLineStyX} & StdLineStyX \\
+ \LegLine{style=StdLineStyY} & StdLineStyY \\
+ \LegLine{style=BWStdLineStyX} & BWStdLineStyX \\
+ \LegLine{style=BWStdLineStyY} & BWStdLineStyY \\
+ }
+\end{minipage}
+
+It is, of course, possible to redefine the available linestyles or to define new
+linestyles.
+
+\begin{minipage}[T]{0.48\linewidth}
+ \lstinputlisting[firstline=4,lastline=26]{examples/basic_UserLinestyles}
+\end{minipage}
+\begin{minipage}[T]{0.48\linewidth}
+ \input{examples/basic_UserLinestyles}
+\end{minipage}
+
+
+
+% =================================
+% | |
+% | Legend |
+% | |
+% =================================
+
+\subsection{Legend}
+
+The legend may be created with \verb|\LegendDefinition|. The command takes the
+two optional arguments \texttt{nrCols} and \texttt{LabelOrientation=[l|c|r]}.
+The mandatory argument is the definition of a table as demonstrated in the
+follwing examples.
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting{examples/basic_LegendI}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_LegendI}
+\end{minipage}
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting{examples/basic_LegendII}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_LegendII}
+\end{minipage}
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting{examples/basic_LegendIII}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_LegendIII}
+\end{minipage}
+
+
+\subsection{Add Lines to the Plot}
+
+Horizontal and vertical lines may be added to the plot with the commands
+\verb|\NDPhline{coord}|, \verb|\NDPvline{coord}| and \verb|\NDPline{coord}|. It is also possible to put
+nodes and draw lines between them, see section \ref{sec:PlaceObjects}.
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting[firstline=14,lastline=17]{examples/basic_Lines}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_Lines}
+\end{minipage}
+
+
+\subsection{Add Boxes to the Plot}
+
+Horizontal and vertical boxes may be added to the plot with the commands
+\verb|\NDPhbox{coord}|, \verb|\NDPvbox{coord}| and \verb|\NDPbox{coord}|. It is also possible to put
+nodes and draw lines between them, see section \ref{sec:PlaceObjects}.
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting[firstline=11,lastline=21]{examples/basic_Boxes}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_Boxes}
+\end{minipage}
+
+
+\subsection{Grid}
+
+As shwon in the example below, it is possible to plot a fine grid but not have a
+tick label at each of the grid lines. While the options \texttt{Dx} and
+\texttt{Dy} define the distance between the grid lines, the options \texttt{DDx}
+and \texttt{DDy} define the distance between the tick labels. If \texttt{DDx} or
+\texttt{DDy} are not set, they take the values of \texttt{Dx} and \texttt{Dy}.
+
+One may choose not to plot the grid with
+the option \texttt{NoGrid} for the commands \verb|\plotxAxis| and \verb|\plotyAxis|.
+
+If the grid is plottet with the axis it may happen that the grid is plottet over
+the axis. To avoid this, plot the grid first and then plot the axis as shown.
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting{examples/basic_Grid}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_Grid}
+\end{minipage}
+
+
+
+\subsection{Logarithmic axes}
+
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting{examples/basic_LogarithmicI}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_LogarithmicI}
+\end{minipage}
+
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting{examples/basic_LogarithmicII}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_LogarithmicII}
+\end{minipage}
+
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting{examples/basic_LogarithmicIII}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_LogarithmicIII}
+\end{minipage}
+
+
+\subsection{plots with holes}
+
+If plotting data, one might not want to plot some part of this data, e.g. if
+only the data in a certain y-range is interesting. If one chooses to eliminate the
+invalid data either by using \verb+yStart+ or \verb+yEnd+ or by eliminating the
+data before the export, pstricks will always connect the last valid point of an
+interval with the first valid point of the next interval. In Matlab e.g.,
+invalid data (NaN) is just ignored. This behavior is also possible with NumericPlots and
+export2latex. If export2latex is called with data which contains NaN and with
+the option.NaNsplit=true, it will split the data in several intervals and append
+a consecutive number to the identifier for each interval. The exported yMax,
+yMin values etc. will still be valid for the whole data-vector. The exported
+data might look like:
+
+\begin{verbatim}
+\expandafter\def\csname DataIdentNrRanges\endcsname{3}
+\expandafter\def\csname DataIdent1\endcsname{
+560.00 5.40
+...
+574.72 6.25
+}
+
+\expandafter\def\csname DataIdent2\endcsname{
+588.73 4.78
+...
+609.53 12.09
+}
+
+
+\expandafter\def\csname DataIdent3\endcsname{
+620.56 27.81
+...
+649.56 27.32
+}
+\end{verbatim}
+
+
+\expandafter\def\csname DataIdentNrRanges\endcsname{3}
+\expandafter\def\csname DataIdent1\endcsname{
+560.00 5.40
+560.30 6.25
+560.59 4.74
+560.90 6.25
+561.60 5.18
+561.65 6.25
+561.70 4.73
+562.60 4.75
+562.63 6.06
+563.75 6.12
+563.75 5.00
+564.50 6.25
+564.76 4.71
+564.90 4.88
+565.51 6.25
+565.63 5.00
+566.13 5.69
+566.61 6.78
+567.10 4.88
+567.60 4.89
+567.66 6.25
+568.30 4.88
+568.31 6.25
+569.10 4.77
+569.51 6.25
+569.60 6.13
+570.35 4.85
+570.63 6.25
+570.71 5.00
+571.30 4.64
+571.31 6.25
+572.30 4.66
+572.62 6.06
+572.90 5.00
+572.93 5.61
+573.68 5.00
+574.11 6.25
+574.66 4.76
+574.72 6.25
+}
+
+\expandafter\def\csname DataIdent2\endcsname{
+588.73 4.78
+588.90 6.15
+589.50 4.76
+589.67 4.90
+589.74 6.25
+590.66 5.96
+590.73 4.55
+591.25 6.25
+591.69 4.68
+592.10 4.91
+592.31 6.25
+593.20 6.25
+593.55 5.36
+593.64 4.79
+593.74 6.25
+594.64 4.74
+594.75 6.11
+595.25 4.67
+595.31 6.12
+596.00 5.84
+596.30 11.90
+597.10 10.69
+597.20 12.00
+597.69 12.00
+598.15 10.00
+598.50 11.97
+598.67 10.00
+599.31 10.00
+599.69 11.91
+600.13 12.22
+600.79 10.79
+600.83 10.31
+600.86 11.72
+601.74 10.56
+601.80 11.25
+602.78 11.98
+602.94 10.00
+603.72 12.08
+603.94 10.00
+604.54 10.00
+604.70 11.96
+605.14 11.25
+605.24 10.83
+605.69 11.92
+605.80 10.00
+606.70 11.72
+607.03 10.00
+607.49 11.15
+607.54 10.00
+608.23 12.15
+608.72 10.00
+609.30 10.87
+609.53 12.09
+}
+
+\expandafter\def\csname DataIdent3\endcsname{
+620.56 27.81
+620.78 26.25
+620.85 27.80
+621.56 27.32
+621.74 27.78
+622.00 27.32
+622.74 26.36
+623.08 28.75
+623.31 27.79
+623.71 26.31
+624.05 27.32
+624.65 27.79
+625.18 27.83
+625.45 27.35
+625.95 27.74
+626.28 27.30
+626.75 26.34
+626.88 27.81
+627.54 28.75
+627.72 26.38
+628.23 27.29
+628.36 27.74
+628.88 26.25
+629.28 27.82
+629.78 28.84
+629.93 27.32
+631.13 26.27
+631.22 27.76
+631.94 28.75
+631.98 27.33
+632.54 26.25
+632.66 27.78
+632.89 27.29
+633.33 28.88
+633.76 26.45
+633.94 27.85
+634.76 26.33
+635.14 27.74
+635.68 27.82
+635.84 26.35
+636.08 27.84
+636.46 27.34
+637.04 27.74
+637.19 27.32
+637.70 27.34
+638.31 27.84
+638.50 27.78
+638.65 27.33
+639.45 27.79
+639.83 26.34
+640.03 27.38
+640.68 27.83
+641.45 27.31
+641.50 27.77
+642.08 27.80
+642.18 27.32
+642.76 27.93
+642.86 26.25
+643.75 27.32
+643.91 27.76
+644.38 27.30
+644.74 27.83
+645.06 27.37
+645.08 27.80
+645.80 28.80
+646.13 26.47
+646.76 26.57
+647.09 27.81
+647.26 27.83
+647.98 26.25
+648.20 27.33
+648.34 28.75
+648.93 28.91
+649.56 27.32
+}
+
+This data can then easily be plotted using the command\\
+\verb+\multilistplot{<options>}{<Identifier>}+\footnote{Please notice, that the
+first argument of multilistplot is a mandatory argument. Also notice, that the
+second argument ist only the name of the data including ``Data'' but not the
+command as it would be for the listplot command}.
+The command will call\\
+\verb+\listplot[<options>]{\<Identifier>}+ for each of
+the intervals. The first argument is directly passed to the listplot command which is part of the
+pstricks package. The second argument is the identifier of the data that should
+be plotted.
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting{examples/basic_PlotWHoles}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/basic_PlotWHoles}
+\end{minipage}
+
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/FurtherExamples.tex b/graphics/pstricks/contrib/numericplots/doc/src/FurtherExamples.tex
new file mode 100644
index 0000000000..14ba60b090
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/FurtherExamples.tex
@@ -0,0 +1,306 @@
+\section{Further Examples}
+
+\def\MoreData{
+0 5
+1 7
+2 10
+3 11
+4 11.5
+5 10
+6 5
+7 4
+8 9
+9 12
+10 11
+11 5
+}
+
+\def\MoreDataI{
+0 -5
+1 -7
+2 -10
+3 -11
+4 -11.5
+5 -10
+6 10
+7 15
+8 10
+9 -12
+10 -11
+11 -5
+}
+
+\def\NoiseData{
+0 5
+0.1 5.4
+0.2 4.6
+0.3 5.3
+0.4 4.9
+0.5 4.6
+}
+Here, some features of the pst-plot command \verb|listplot| are illustrated. With xStart, xEnd (yStart, yEnd), the data can be truncated. Note that all visible data points are connected by a straight line which may render a misleading plot, cf. the blue and green line in the next plot below.
+
+\begin{minipage}{0.5\linewidth}
+\begin{verbatim}
+ \listplot
+ [style=StdLineStyA]
+ {\MoreData}
+ \listplot
+ [style=StdLineStyB, yEnd=10]
+ {\MoreData}
+ \listplot
+ [style=StdLineStyC, xStart=5, xEnd=9]
+ {\MoreData}
+ \listplot
+ [style=StdLineStyD, showpoints=true, nStep=2]
+ {\MoreData}
+\end{verbatim}
+\end{minipage}
+\begin{minipage}{0.45\linewidth}
+\centering
+\begin{NumericDataPlot}{\textwidth}{5cm}
+ \setxAxis{xMin=0, xMax=15, Dx=5, xO=0}
+ \setyAxis{yMin=0, yMax=15, Dy=5, yO=0}
+
+ \plotxAxis[NoLabel]{x-axis label}
+ \plotyAxis[NoLabel]{y-axis label}
+
+ \listplot[style=StdLineStyA]{\MoreData}
+ \listplot[style=StdLineStyB, yEnd=10]{\MoreData}
+ \listplot[style=StdLineStyC, xStart=5, xEnd=9]{\MoreData}
+ \listplot[style=StdLineStyD, showpoints=true, nStep=2]{\MoreData}
+\end{NumericDataPlot}
+\end{minipage}
+
+
+
+\subsection{Fill area between plots}
+\label{sec:FillArea}
+
+\begin{minipage}{0.5\linewidth}
+\begin{verbatim}
+ \begin{NumericDataPlot}%
+ {\textwidth}{5cm}
+ \setxAxis
+ {xMin=0, xMax=15, Dx=5, xO=0}
+ \setyAxis
+ {yMin=-15, yMax=15, Dy=5, yO=10}
+
+ \plotxAxis{x-axis label}
+ \plotyAxis[NoLabel]{}
+
+ \pscustom%
+ [style=StdLineStyA, fillstyle=solid, %
+ fillcolor=blue!40]{%
+ \listplot{\MoreData}%
+ \listplot[ChangeOrder]{\MoreDataI}%
+ }
+ \end{NumericDataPlot}
+\end{verbatim}
+\end{minipage}
+\begin{minipage}{0.45\linewidth}
+\centering
+ \begin{NumericDataPlot}{\textwidth}{5cm}
+ \setxAxis{xMin=0, xMax=15, Dx=5, xO=0}
+ \setyAxis{yMin=-15, yMax=15, Dy=5, yO=10}
+
+ \plotxAxis{x-axis label}
+ \plotyAxis[NoLabel]{}
+
+ \pscustom[style=StdLineStyA, fillstyle=solid, fillcolor=blue!40]{%
+ \listplot{\MoreData}%
+ \listplot[ChangeOrder]{\MoreDataI}%
+ }
+ \end{NumericDataPlot}
+\end{minipage}
+
+
+
+
+
+
+\begin{minipage}{0.5\linewidth}
+\begin{verbatim}
+ ...
+ \pscustom%
+ [style=StdLineStyA, fillstyle=solid, %
+ fillcolor=green!40]{%
+ \NDPhline{0}
+ \listplot[ChangeOrder]{\MoreDataI}%
+ }
+ ...
+\end{verbatim}
+\end{minipage}\begin{minipage}{0.45\linewidth}
+\centering
+ \begin{NumericDataPlot}{\textwidth}{5cm}
+ \setxAxis{xMin=0, xMax=15, Dx=5, xO=0}
+ \setyAxis{yMin=-15, yMax=15, Dy=5, yO=10}
+
+ \plotxAxis{x-axis label}
+ \plotyAxis[NoLabel]{}
+
+ \pscustom%
+ [style=StdLineStyA, fillstyle=solid, %
+ fillcolor=green!40]{%
+ \NDPhline{0}
+ \listplot[ChangeOrder]{\MoreDataI}%
+ }
+ \end{NumericDataPlot}
+\end{minipage}
+
+
+\begin{minipage}{0.5\linewidth}
+\begin{verbatim}
+ ...
+ \pscustom%
+ [style=StdLineStyA, fillstyle=solid, %
+ fillcolor=red!40]{%
+ \NDPline{0}{5}{11}{10}
+ \listplot[ChangeOrder]{\MoreDataI}%
+ }
+ ...
+\end{verbatim}
+\end{minipage}
+\begin{minipage}{0.45\linewidth}
+\centering
+ \begin{NumericDataPlot}{\textwidth}{5cm}
+ \setxAxis{xMin=0, xMax=15, Dx=5, xO=0}
+ \setyAxis{yMin=-15, yMax=15, Dy=5, yO=10}
+
+ \plotxAxis{x-axis label}
+ \plotyAxis[NoLabel]{}
+
+ \pscustom%
+ [fillstyle=solid, linestyle=none,%
+ fillcolor=red!40]{%
+ \NDPline{0}{5}{11}{10}
+ \listplot[ChangeOrder]{\MoreDataI}%
+ }
+ \listplot[style=StdLineStyB]{\MoreDataI}
+ \end{NumericDataPlot}
+\end{minipage}
+
+
+\subsection{Custom Grid}
+
+To plot a custom grid (grid-lines are not equidistant) the following procedure
+may be used if working with Matlab:
+
+Add the following code after export2latex (XTick is a vector containing the
+positions of the desired x-gridlines):
+\begin{verbatim}
+ % export positions of the x-Tick-Marks
+ fid = fopen(TargetTexFile, 'at');
+ fprintf(fid, '\n\\def\\CustomXGrid{\n');
+ for i=1:length(XTick)
+ fprintf(fid, ...
+ '\\NDPvline[style=CustomXGridStyle]{%f}\n', adj.XTick(i));
+ end
+ fprintf(fid, '}\n');
+ fclose(fid);
+\end{verbatim}
+
+In Latex just define the style ``CustomXGridStyle'' and use the command
+\verb+\CustomXGrid+ after defining the axis.
+
+
+\subsection{Plotting noisy data}
+\label{sec:FurtherExamples:NoisyData}
+
+Plotting measurement data with a lot of noise may be a little tricky. First, you
+often have a lot of data to plot which may lead to memory problems in \TeX.
+When filtering the data, the appearance of the noise may change which is not
+what you intend to do. To solve this problem, the two Matlab-functions
+``LatexFilterMinMax'' and ``LatexFilterHull'' are provided. Both take x- and
+y-data and divide it in NrOfPoints equally intervals. The filter returns the
+maximum and the minimum value of each interval.
+
+The filter ``LatexFilterHull'' returns a vector which contains the minima first
+and then the maxima. This data may be plotted with ``fillstyle=solid'' as in
+section~\ref{sec:FillArea}.
+
+The filter ``LatexFilterMinMax'' returns maximum and minimum value of each
+interval (with corresponding x-data). This data may be plotted as a ``normal
+line''. As pstricks-lines are normally closed lines, this may lead to a plot
+where the noise seems exagerated. You may therefore use the option linejoin as
+demonstrated in the following examples. The red dots mark the actual data.
+Notice that the measurement data seems noisier than it is if it is plotted with
+linejoin=0. Plotting with linejoin=2 represents the data much better. The
+standard for linejoin is 0. The StdLineStyXX defined in this package are defined
+with linejoin=1.
+
+\begin{minipage}{0.4\linewidth}
+\begin{verbatim}
+ ...
+ % linejoin=0:
+ \listplot[linewidth=5pt]%
+ {\NoiseData}%
+ ...
+ % linejoin=1:
+ \listplot[linejoin=1, %
+ linewidth=5pt]{\NoiseData}%
+ ...
+ % linejoin=2:
+ \listplot[linejoin=1, %
+ linewidth=5pt]{\NoiseData}%
+ ...
+\end{verbatim}
+\end{minipage}
+\begin{minipage}{0.55\linewidth}
+\centering
+ \begin{NumericDataPlot}{\textwidth}{5cm}
+ \setxAxis{xMin=0.00, xMax=0.5, Dx=0.25, xO=0.00,
+ xCoordMin=0, xCoordMax=300}
+ \setyAxis{yMin=4.5, yMax=5.5, Dy=0.5}
+
+ \plotxAxis{linejoin=0}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[linewidth=5pt]{\NoiseData}%
+ \listplot[plotstyle=dots, linecolor=red, dotsize=2pt]{\NoiseData}
+
+ \setxAxis{xMin=0.00, xMax=0.5, Dx=0.25, xO=0.00,
+ xCoordMin=330, xCoordMax=630}
+ \setyAxis{yMin=4.5, yMax=5.5, Dy=0.5}
+
+ \plotxAxis{linejoin=1}
+ \plotyAxis[NoTickLabel,NoLabel]{}
+
+ \listplot[linejoin=1, linewidth=5pt]{\NoiseData}%
+ \listplot[plotstyle=dots, linecolor=red, dotsize=2pt]{\NoiseData}
+
+ \setxAxis{xMin=0.00, xMax=0.5, Dx=0.25, xO=0.00,
+ xCoordMin=660, xCoordMax=1000}
+ \setyAxis{yMin=4.5, yMax=5.5, Dy=0.5}
+
+ \plotxAxis{linejoin=2}
+ \plotyAxis[NoTickLabel,NoLabel]{}
+
+ \listplot[linejoin=2, linewidth=5pt]{\NoiseData}%
+ \listplot[plotstyle=dots, linecolor=red, dotsize=2pt]{\NoiseData}
+
+ \end{NumericDataPlot}
+\end{minipage}
+
+\begin{minipage}{0.48\linewidth}
+ \centering
+ \includegraphics{fig_NoiseData_ClosedLine}
+\end{minipage}
+\begin{minipage}{0.48\linewidth}
+ \centering
+ \includegraphics{fig_NoiseData_OpenLine}
+\end{minipage}
+
+
+
+\subsection{Customized Tick Labels}\label{sec:CustomTickLabels}
+
+A common task is to plot a graph without numeric tick labels but with selected customized labels. This is easily accomplished by setting the option \verb|NoTickLabel| when plotting the axis and adding the customized labels with the commands \verb|PutTickLabelXaxis| and \verb|PutTickLabelYaxis|. Note that when setting \verb|NoTickLabel| for an axis, the option \verb|ax| has to be set in each call of \verb|PutTickLabelXaxis| and \verb|PutTickLabelYaxis| according to the axis one wishes to place the label at. This is also required if only the lower x-axis or left y-axis are plotted and tick labelled.
+
+\begin{minipage}[T]{0.5\linewidth}
+ \lstinputlisting[linerange=5-12]{examples/furtherEx_TickLabels}
+\end{minipage}
+\hspace{1ex}
+\begin{minipage}[T]{0.4\linewidth}
+ \input{examples/furtherEx_TickLabels}
+\end{minipage}
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/MatlabSupport.tex b/graphics/pstricks/contrib/numericplots/doc/src/MatlabSupport.tex
new file mode 100644
index 0000000000..6d6a5fe80d
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/MatlabSupport.tex
@@ -0,0 +1,137 @@
+
+\section{Matlab Support}
+
+
+\subsection{export2latex.m}
+The function \texttt{export2latex(data, filename, [options])} may be used to
+export data from Matlab to be used with NumericPlots.sty. The function takes the
+two parameters data and filename, where filename is the name of the file where
+the data should be stored with full path but without extension. Data is a
+structure with the three entries x, y, and ident, where x are the x-data, y the
+y-data and ident is an identifier to have access to the data in Latex. To access
+the data in Latex the command \verb+\Data<ident>+ is used.
+
+The parameter data may be provided as an 1xK array if each entry of the array is
+a structure with the entries x, y and ident. There may be an additional entry
+descr.
+\begin{itemize}
+ \item data(1,i).x = $X_i$
+ \item data(1,i).y = $Y_i$
+ \item data(1,i).ident = Identifier
+ \item (data(1,i).descr = Description)
+ \item (data(1,i).group = GroupNr)
+\end{itemize}
+Identifier must be a valid Latex command name, which basically means it must be
+a string without numbers.
+
+For every entry of data, $X$ and $Y$ must be arrays of the same size
+$M\text{x}N$. If $M>1$, each column of the array is exported to the file and the
+identifier is expanded by the roman representation of the column number.
+
+It might be useful to do a \texttt{interp1} before exporting the data to get
+smaller files and to use less of \TeX's memory. ($\rightarrow$ script
+Patrick?!?)
+
+The optional parameter \texttt{options} might be used to control which
+additional information is provided in the output file.
+\begin{itemize}
+ \item \texttt{options.DataBoundaries} [true] If set to true, the output file
+ contains the commands \verb+\DataXmin+, \verb+\DataXmax+, \verb+\DataYmin+ and
+ \verb+\DataYmax+ which may be used to define the axis.
+ \item \texttt{options.AxisBoundaries} [false] If set to true, the output file
+ contains the commands \verb+\DataXminAxis+, \verb+\DataXmaxAxis+,
+ \verb+\DataYminAxis+ and \verb+\DataYmaxAxis+ which may be used to define the
+ axis. In contrary to the DataBoundaries the AxisBoundaries add an additional
+ gap of \texttt{options.AxisBoundariesGap} [10] percent of the full scale to
+ the data boundaries such that the plot doesn't touch the axis.
+ \item \texttt{options.SuppressWarning} [false] suppresses the warning about
+ max/min values being to close together
+ \item \texttt{options.precision} [empty] how many decimal places should be
+ printed for x and y values. Will be calculated automatically if left empty.
+ \item \texttt{options.NaNsplit [false]} if true, the data will be split at NaN
+ values. See \verb+\multilistplot+ for how to plot them.
+\end{itemize}
+
+\subsection{struct2latex.m}
+The function\\
+\texttt{struct2latex(data,[xname],[downsample],[filtertype],[filename],[postfix],[options])}\\
+may be used to export a Matlab struct to be used with NumericPlots.sty. The
+function is based on export2latex and the \verb+options+ argument is given to
+export2latex. The optional argument \verb+xname+ specifies the fieldname of the
+x-data. If no \verb+xname+ is given, you have to chose one via popup. All other
+fields are treated like y-data. Furthermore, the identifier of the y-data are
+equal to the fieldnames and have to be valid Latex commands (fieldnames with
+numbers are not supported). The struct2latex command only supports 1 dimensional
+arrays (row vectors). Column vectors are mapped for propper export without
+warning. With the optional argument \verb+downsample+ (integer$>0$) it is
+possible to downsample the data for smaller files. A warning is given when data
+points exceed $5000$. Usually $1000$ data points are enough for a propper plot
+in latex. The optional argument \verb+filename+ specifies the outputname with
+path of the texfile. If no filename is given, it has to be chosen via popup. The
+optional argument \verb+postfix+ can be used to put a postfix after the
+fieldname in the identifier of the y-data. The \verb+options+ argument is also
+optional and equal to the options argument of the function export2latex.
+
+Filter may be one of \verb+{'none','MinMax','Hull'}+. The corresponding
+filter will be applied to the data before exporting it. See
+\ref{sec:FurtherExamples:NoisyData} for further details.
+
+Matlab example.
+\begin{verbatim}
+ % data for struct2latex should be row-vectors. anyway, column-vectors are
+ % mapped to row-vectors. matrices are not supported
+
+ %% export row-vectors
+ t = [1:0.1:10];
+
+ data.time = t;
+ data.sin = sin(t);
+ data.cos = cos(t);
+ data.exp = exp(t);
+ data.tan = tan(t);
+
+ %struct2latex(data,xname,downsample,filename,filtertype,postfix,options)
+ %downsample,filename,postfix,options are optional arguments
+ struct2latex(data,'time',1,'none','texdataA','row');
+\end{verbatim}
+
+\subsection{dspace2struct}
+The function \texttt{dspace2struct(dataname,version)} may be used to import
+\texttt{.mat} created by \textsc{dSpace} to \textsc{Matlab}. It returns a
+\textsc{Matlab} struct out of the provided variables \verb+dataname+ and
+\verb+version+. Thereby \verb+dataname+ is the name of the \textsc{dSpace}
+\verb+.mat+ file and the optional string argument \verb+version+ has to be equal
+\verb+version = 'NG'+ if \textsc{dSpace Control Desk Next Generation} is used.
+It is convenient to chose a unique signal name in \textsc{Matlab/Simulink}
+because they will be the same in \textsc{dSpace}. The function
+\texttt{dspace2struct(dataname,version)} just adopts the names provided by
+\textsc{dSpace} and use them as fieldnames. The time vector will always be
+called \verb+.time+.
+
+Matlab example:
+\begin{verbatim}
+ % Old Control Desk:
+ dataOG = dspace2struct(measurements)
+ % Control Desk Next Generation:
+ dataNG = dspace2struct(measurements,'NG')
+\end{verbatim}
+
+The resulting structs \verb+dataOG+ and \verb+dataNG+ differ in way of
+structuring. In the older versions of \textsc{dSpace} it was only possible to
+save one time vector. The \textsc{dSpace Control Desk Next Generation} allows to
+save several time vectors. So it was necessary to save the index of the time
+vector with the signal name. Typical plot commands for the two data structures
+look as follows:
+\begin{verbatim}
+ %Old Control Desk
+ plot(dataOG.time,dataOG.signalname);
+
+ %Control Desk Next Generation
+ plot(dataNG.time(dataNG.signalname.timeidx),dataNG.signalname.Data);
+\end{verbatim}
+\subsection{dspace2latex}
+The function \texttt{dspace2latex} is just a combination of
+\texttt{dspace2struct} and \texttt{struct2latex} with commonly used arguments.
+It is a simple and quick way to export measurements from \textsc{dSpace} to
+\LaTeX{} without any revision of the data. However, the current implementation
+allows only data structures of the old version of \textsc{dSpace Control Desk}.
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/MultiplePlots.tex b/graphics/pstricks/contrib/numericplots/doc/src/MultiplePlots.tex
new file mode 100644
index 0000000000..9985b8614e
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/MultiplePlots.tex
@@ -0,0 +1,45 @@
+% Copyright 2010 Thomas Koenig, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+
+\section{Multiple plots in one picture}\label{sec:MultiplePlots}
+
+xPicMin, xPicMax, yPicMin and yPicMax are the inner coordinates of one picture.
+The position of the axes are defined in this coordinate system via xCoordMin,
+xCoordMax, yCoordMin and yCoordMax.
+
+Example:
+
+
+\lstinputlisting[firstline=8]{examples/multiplots_exampleI}
+
+\input{examples/multiplots_exampleI}
+
+
+An example with different y-axes on the left and on the right side:
+
+\lstinputlisting{examples/multiplots_exampleII}
+
+\input{examples/multiplots_exampleII}
+
+
+It is also possible to rotate the labels of the axes (LabelRot and LabelRefPt
+have to be set after AxisStyle!):
+
+\lstinputlisting[firstline=12, lastline=20]{examples/multiplots_exampleIII}
+
+\input{examples/multiplots_exampleIII}
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/NumericPlotsDoc.tex b/graphics/pstricks/contrib/numericplots/doc/src/NumericPlotsDoc.tex
new file mode 100644
index 0000000000..8ce4b122bd
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/NumericPlotsDoc.tex
@@ -0,0 +1,210 @@
+% Copyright 2013 Thomas Koenig, Alexander Michel, Michael Baumgart
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+
+\documentclass[parskip]{scrartcl}
+
+\usepackage[ansinew]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{lmodern}
+
+\usepackage{amsmath}
+\usepackage{siunitx}
+% \usepackage{floatbarrier}
+% \usepackage{showexpl}
+\usepackage{etex} % use e-TeX’s extended register set
+
+% options for package:
+% BW: black and white
+% AxisStyle=<style>: set standard axis style ([Boxed], Frame, FrameI, None)
+\usepackage[
+ %BW,
+ xAxisStyle=Lower,
+ yAxisStyle=Left,
+ ]{NumericPlots}
+
+\usepackage[
+ ps2pdf, %% similar to dvips but redefines some macros for use with ps2pdf
+ final,
+ bookmarks=true, %% if true, generate PDF bookmarks (requires two passes of pdflatex)
+ bookmarksopen=false, %% if true, show all PDF bookmarks expanded
+ bookmarksnumbered=true, %% if true, add the section numbers to the bookmarks
+% linkbordercolor=acin_red,
+% urlbordercolor=acin_red,
+% citebordercolor=acin_red,
+% filebordercolor=acin_red,
+ pdfpagemode=UseOutlines, %% None, UseOutlines (=show bookmarks), UseThumbs (show thumbnails), FullScreen
+% breaklinks,
+ pdfauthor = {Thomas Koenig Alexander Michel Michael Baumgart},
+ pdftitle = {NumericPlots - plot numeric data with latex},
+ pdfsubject = {},
+ plainpages=false,
+ hyperindex=true,
+]{hyperref}
+
+\usepackage{graphicx}
+
+\definecolor{NumericPlotsCommands}{RGB}{0, 102, 153}
+\usepackage{listings}
+\lstset{language=[latex]tex,tabsize=2,basicstyle=\small\ttfamily,%
+ numbers=none, numberstyle=\tiny,%
+ breaklines=true, breakatwhitespace=false,%
+ emptylines=*1,%
+ columns=flexible,%
+ keywordstyle=\color{black},commentstyle=\color{gray},%
+ keywordstyle={[2]\color{NumericPlotsCommands}},%
+ morekeywords={[2]setxAxis, setyAxis, NumericDataPlot, plotxAxis, plotyAxis,%
+ NDPput,putExpX,putExpY,%
+ putN,putNE,putE,putSE,putS,putSW,putW,putNW,%
+ PutTickLabelYaxis,PutTickLabelXaxis,%
+ NDPhline, NDPvline, NDPline, NDPhbox, NDPvbox, NDPbox,%
+ LegendDefinition, LegLine,%
+ StdLabelOption,StdTickLabelOption,%
+ multilistplot, testframe}%
+ }
+
+\title{NumericPlots - plot numeric data with latex}
+\author{Thomas K\"{o}nig, Alexander Michel, Michael Baumgart}
+\date{\today}
+
+% \includeonly{TestPlots}
+% \includeonly{TechnicalDetails}
+
+% input DefineData here, as the examples from DefineData are used throughout the
+% document (includeonly still works).
+\input{examples/DefineData}
+\input{examples/DataTestRealData}
+
+\begin{document}
+
+% redefining the StdLabelOption and StdTickLabelOption applies to all following
+% plots.
+% \renewcommand{\StdLabelOption}{\LARGE}
+% \renewcommand{\StdTickLabelOption}{\LARGE}
+
+\maketitle
+
+Plotting numeric data is a task which often has to be done for scientific
+papers. In \LaTeX, however, it is only possible to include graphics created with
+an external program. The pstricks-packages provide many commands to
+generate graphics in \LaTeX. To generate simple graphics from numeric data,
+however, it is difficult to use. This package provides a simpler interface for
+the pstricks-package to plot numeric data.
+
+The authors may be reached at
+\href{mailto:numericplots@tikey.de}{numericplots@tikey.de}.
+
+\tableofcontents
+
+\part{Introduction}
+
+Plotting numeric data is a task which often has to be done for scientific
+papers. In \LaTeX, however, it is only possible to include graphics created with
+an external program. The pstricks-packages provide very many commands to
+generate graphics in \LaTeX. To generate simple graphics from numeric data,
+however, it is difficult to use. This package provides a simpler interface for
+the pstricks-package to plot numeric data.
+
+NumericPlots is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+any later version.
+
+NumericPlots is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with NumericPlots. If not, see http://www.gnu.org/licenses/.
+
+Copyright 2013 Thomas K\"{o}nig, Alexander Michel, Michael Baumgart
+
+
+% \part{Using the package} -> in BasicFunctionality
+
+\include{BasicFunctionality}
+
+\include{MultiplePlots}
+
+\input{MatlabSupport}
+
+%\section{package options}
+
+%\section{list of commands and options}
+
+\include{options}
+
+\include{TechnicalDetails}
+
+% \part{Examples}
+
+\include{FurtherExamples}
+
+\include{TestPlots}
+
+
+% \part{Version}
+
+\include{history}
+
+% \section{Test Calculations}
+%
+% Teste setkeys
+%
+% Watch:
+%
+% \setkeys*[NumericDataPlot]{Axis}{xO=34, xMin=10}
+% \setrmkeys[NumericDataPlot]{AxisWait}
+% \begin{tabular}{ll}
+% xMin & \NumDataPlotxMin\\
+% \textbf{xO:} & \NumDataPlotxO \\
+% \end{tabular}
+%
+% \setkeys*[NumericDataPlot]{Axis}{xMin=10, xO=34}
+% \setrmkeys[NumericDataPlot]{AxisWait}
+% \begin{tabular}{ll}
+% xMin & \NumDataPlotxMin\\
+% \textbf{xO:} & \NumDataPlotxO \\
+% \end{tabular}
+%
+% \setkeys*[NumericDataPlot]{Axis}{xMin=10}
+% \setrmkeys[NumericDataPlot]{AxisWait}
+% \begin{tabular}{ll}
+% xMin & \NumDataPlotxMin\\
+% \textbf{xO:} & \NumDataPlotxO \\
+% \end{tabular}
+%
+% calculation example:
+
+% \setkeys*[NumericDataPlot]{Axis}{xO=34, xMax=20, xMin=10, Dx=2}
+% \setrmkeys[NumericDataPlot]{AxisWait}
+% \begin{tabular}{ll}
+% xCoordMin & \NumDataPlotxCoordMin\\
+% xCoordMax & \NumDataPlotxCoordMax \\
+% xMin: & \NumDataPlotxMin \\
+% xMax: & \NumDataPlotxMax \\
+% xCoordMax: & \NumDataPlotxCoordMax \\
+% xCoordMin: & \NumDataPlotxCoordMin \\
+% Dx: & \NumDataPlotDx \\
+% \textit{xNrTicks:} & \xNrTicks \\
+% %\textit{NumDataPlotdx} & \NumDataPlotdx\\
+% %\textit{NumDataPlotxCoordOrig} & \NumDataPlotdx\\
+% \textbf{xO:} & \NumDataPlotxO \\
+% \end{tabular}
+
+\end{document}
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/Roll406_Ref2288.tex b/graphics/pstricks/contrib/numericplots/doc/src/Roll406_Ref2288.tex
new file mode 100644
index 0000000000..4a58064d7c
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/Roll406_Ref2288.tex
@@ -0,0 +1,1759 @@
+% EPLdata written by export2latex
+% date: 04-Apr-2011
+
+\def\ExpDate{04-Apr-2011}
+\def\DataRadiusNewXmin{-2.40}
+\def\DataRadiusNewXmax{2.40}
+\def\DataRadiusNewYmin{545.57}
+\def\DataRadiusNewYmax{545.75}
+\def\DataRadiusNewDxV{0.96}
+\def\DataRadiusNewDyV{0.03}
+\def\DataRadiusNew{
+-2.40000 545.74005
+-2.30000 545.72656
+-2.20000 545.71364
+-2.10000 545.70130
+-2.00000 545.68953
+-1.90000 545.67834
+-1.80000 545.66772
+-1.70000 545.65768
+-1.60000 545.64821
+-1.50000 545.63932
+-1.40000 545.63101
+-1.30000 545.62327
+-1.20000 545.61610
+-1.10000 545.60951
+-1.00000 545.60350
+-0.90000 545.59806
+-0.80000 545.59320
+-0.70000 545.58891
+-0.60000 545.58519
+-0.50000 545.58206
+-0.40000 545.57949
+-0.30000 545.57751
+-0.20000 545.57610
+-0.10000 545.57526
+0.00000 545.57500
+0.10000 545.57531
+0.20000 545.57620
+0.30000 545.57767
+0.40000 545.57971
+0.50000 545.58233
+0.60000 545.58552
+0.70000 545.58928
+0.80000 545.59363
+0.90000 545.59854
+1.00000 545.60404
+1.10000 545.61010
+1.20000 545.61675
+1.30000 545.62397
+1.40000 545.63176
+1.50000 545.64013
+1.60000 545.64907
+1.70000 545.65859
+1.80000 545.66869
+1.90000 545.67936
+2.00000 545.69061
+2.10000 545.70243
+2.20000 545.71482
+2.30000 545.72780
+2.40000 545.74134
+}
+
+\def\DataRMeasuredXmin{-1.0}
+\def\DataRMeasuredXmax{1.0}
+\def\DataRMeasuredYmin{-1.0}
+\def\DataRMeasuredYmax{1.0}
+\def\DataRMeasuredDxV{0.4}
+\def\DataRMeasuredDyV{0.4}
+\def\DataRMeasured{
+0.00000 545.57500
+0.00000 545.57500
+}
+
+\def\DataShapeMeasuredXmin{-1.76}
+\def\DataShapeMeasuredXmax{1.76}
+\def\DataShapeMeasuredYmin{-0.37}
+\def\DataShapeMeasuredYmax{-0.26}
+\def\DataShapeMeasuredDxV{0.70}
+\def\DataShapeMeasuredDyV{0.02}
+\def\DataShapeMeasured{
+-1.76000 -0.27350
+-1.75500 -0.27350
+-1.75000 -0.27300
+-1.74500 -0.27150
+-1.74000 -0.27300
+-1.73500 -0.27350
+-1.73000 -0.27400
+-1.72500 -0.27450
+-1.72000 -0.27550
+-1.71500 -0.27550
+-1.71000 -0.27600
+-1.70500 -0.27700
+-1.70000 -0.27800
+-1.69500 -0.27900
+-1.69000 -0.28000
+-1.68500 -0.28050
+-1.68000 -0.28000
+-1.67500 -0.28250
+-1.67000 -0.28200
+-1.66500 -0.28350
+-1.66000 -0.28350
+-1.65500 -0.28350
+-1.65000 -0.28250
+-1.64500 -0.28300
+-1.64000 -0.28350
+-1.63500 -0.28400
+-1.63000 -0.28550
+-1.62500 -0.28550
+-1.62000 -0.28500
+-1.61500 -0.28550
+-1.61000 -0.28750
+-1.60500 -0.28950
+-1.60000 -0.28950
+-1.59500 -0.28950
+-1.59000 -0.29150
+-1.58500 -0.29250
+-1.58000 -0.29250
+-1.57500 -0.29150
+-1.57000 -0.29250
+-1.56500 -0.29250
+-1.56000 -0.29250
+-1.55500 -0.29300
+-1.55000 -0.29250
+-1.54500 -0.29300
+-1.54000 -0.29350
+-1.53500 -0.29350
+-1.53000 -0.29350
+-1.52500 -0.29500
+-1.52000 -0.29650
+-1.51500 -0.29650
+-1.51000 -0.29750
+-1.50500 -0.29750
+-1.50000 -0.29850
+-1.49500 -0.29900
+-1.49000 -0.29950
+-1.48500 -0.29950
+-1.48000 -0.30000
+-1.47500 -0.30000
+-1.47000 -0.30000
+-1.46500 -0.30000
+-1.46000 -0.30050
+-1.45500 -0.30100
+-1.45000 -0.30150
+-1.44500 -0.30200
+-1.44000 -0.30250
+-1.43500 -0.30250
+-1.43000 -0.30500
+-1.42500 -0.30550
+-1.42000 -0.30450
+-1.41500 -0.30550
+-1.41000 -0.30650
+-1.40500 -0.30750
+-1.40000 -0.30750
+-1.39500 -0.30800
+-1.39000 -0.30800
+-1.38500 -0.30750
+-1.38000 -0.30800
+-1.37500 -0.30800
+-1.37000 -0.30750
+-1.36500 -0.30700
+-1.36000 -0.30750
+-1.35500 -0.30850
+-1.35000 -0.30950
+-1.34500 -0.31100
+-1.34000 -0.31250
+-1.33500 -0.31250
+-1.33000 -0.31250
+-1.32500 -0.31250
+-1.32000 -0.31200
+-1.31500 -0.31350
+-1.31000 -0.31350
+-1.30500 -0.31300
+-1.30000 -0.31450
+-1.29500 -0.31400
+-1.29000 -0.31400
+-1.28500 -0.31400
+-1.28000 -0.31500
+-1.27500 -0.31550
+-1.27000 -0.31450
+-1.26500 -0.31500
+-1.26000 -0.31650
+-1.25500 -0.31750
+-1.25000 -0.31800
+-1.24500 -0.31800
+-1.24000 -0.31750
+-1.23500 -0.31850
+-1.23000 -0.32000
+-1.22500 -0.31950
+-1.22000 -0.31850
+-1.21500 -0.31850
+-1.21000 -0.32050
+-1.20500 -0.31950
+-1.20000 -0.32050
+-1.19500 -0.32000
+-1.19000 -0.32050
+-1.18500 -0.32050
+-1.18000 -0.32100
+-1.17500 -0.32100
+-1.17000 -0.32200
+-1.16500 -0.32100
+-1.16000 -0.32100
+-1.15500 -0.32300
+-1.15000 -0.32300
+-1.14500 -0.32400
+-1.14000 -0.32450
+-1.13500 -0.32500
+-1.13000 -0.32500
+-1.12500 -0.32500
+-1.12000 -0.32600
+-1.11500 -0.32500
+-1.11000 -0.32600
+-1.10500 -0.32650
+-1.10000 -0.32700
+-1.09500 -0.32700
+-1.09000 -0.32700
+-1.08500 -0.32650
+-1.08000 -0.32850
+-1.07500 -0.32950
+-1.07000 -0.32750
+-1.06500 -0.32750
+-1.06000 -0.32900
+-1.05500 -0.33150
+-1.05000 -0.33050
+-1.04500 -0.33000
+-1.04000 -0.32850
+-1.03500 -0.32900
+-1.03000 -0.33000
+-1.02500 -0.32950
+-1.02000 -0.33050
+-1.01500 -0.33050
+-1.01000 -0.33100
+-1.00500 -0.33150
+-1.00000 -0.33200
+-0.99500 -0.33250
+-0.99000 -0.33450
+-0.98500 -0.33400
+-0.98000 -0.33350
+-0.97500 -0.33300
+-0.97000 -0.33450
+-0.96500 -0.33550
+-0.96000 -0.33450
+-0.95500 -0.33450
+-0.95000 -0.33400
+-0.94500 -0.33400
+-0.94000 -0.33350
+-0.93500 -0.33500
+-0.93000 -0.33450
+-0.92500 -0.33600
+-0.92000 -0.33650
+-0.91500 -0.33650
+-0.91000 -0.33650
+-0.90500 -0.33800
+-0.90000 -0.33900
+-0.89500 -0.33850
+-0.89000 -0.33750
+-0.88500 -0.33750
+-0.88000 -0.33950
+-0.87500 -0.33950
+-0.87000 -0.33800
+-0.86500 -0.33800
+-0.86000 -0.33850
+-0.85500 -0.33800
+-0.85000 -0.33800
+-0.84500 -0.33900
+-0.84000 -0.33950
+-0.83500 -0.34050
+-0.83000 -0.34000
+-0.82500 -0.34050
+-0.82000 -0.34100
+-0.81500 -0.34200
+-0.81000 -0.34300
+-0.80500 -0.34150
+-0.80000 -0.34100
+-0.79500 -0.34300
+-0.79000 -0.34250
+-0.78500 -0.34150
+-0.78000 -0.34200
+-0.77500 -0.34050
+-0.77000 -0.34100
+-0.76500 -0.34100
+-0.76000 -0.34150
+-0.75500 -0.34350
+-0.75000 -0.34100
+-0.74500 -0.34350
+-0.74000 -0.34450
+-0.73500 -0.34450
+-0.73000 -0.34550
+-0.72500 -0.34600
+-0.72000 -0.34600
+-0.71500 -0.34500
+-0.71000 -0.34550
+-0.70500 -0.34600
+-0.70000 -0.34650
+-0.69500 -0.34450
+-0.69000 -0.34500
+-0.68500 -0.34350
+-0.68000 -0.34500
+-0.67500 -0.34450
+-0.67000 -0.34550
+-0.66500 -0.34600
+-0.66000 -0.34500
+-0.65500 -0.34550
+-0.65000 -0.34650
+-0.64500 -0.34750
+-0.64000 -0.34900
+-0.63500 -0.34800
+-0.63000 -0.34800
+-0.62500 -0.34850
+-0.62000 -0.34800
+-0.61500 -0.35100
+-0.61000 -0.34850
+-0.60500 -0.34800
+-0.60000 -0.34850
+-0.59500 -0.34750
+-0.59000 -0.34800
+-0.58500 -0.34700
+-0.58000 -0.34850
+-0.57500 -0.34950
+-0.57000 -0.34800
+-0.56500 -0.34850
+-0.56000 -0.35000
+-0.55500 -0.35050
+-0.55000 -0.35150
+-0.54500 -0.35200
+-0.54000 -0.35050
+-0.53500 -0.35200
+-0.53000 -0.35200
+-0.52500 -0.35250
+-0.52000 -0.35150
+-0.51500 -0.35100
+-0.51000 -0.35100
+-0.50500 -0.35100
+-0.50000 -0.35200
+-0.49500 -0.35150
+-0.49000 -0.35150
+-0.48500 -0.35100
+-0.48000 -0.35300
+-0.47500 -0.35200
+-0.47000 -0.35350
+-0.46500 -0.35400
+-0.46000 -0.35500
+-0.45500 -0.35500
+-0.45000 -0.35400
+-0.44500 -0.35550
+-0.44000 -0.35600
+-0.43500 -0.35500
+-0.43000 -0.35400
+-0.42500 -0.35500
+-0.42000 -0.35550
+-0.41500 -0.35500
+-0.41000 -0.35400
+-0.40500 -0.35400
+-0.40000 -0.35500
+-0.39500 -0.35450
+-0.39000 -0.35600
+-0.38500 -0.35600
+-0.38000 -0.35700
+-0.37500 -0.35850
+-0.37000 -0.35650
+-0.36500 -0.35550
+-0.36000 -0.35700
+-0.35500 -0.35850
+-0.35000 -0.35800
+-0.34500 -0.35750
+-0.34000 -0.35650
+-0.33500 -0.35650
+-0.33000 -0.35600
+-0.32500 -0.35550
+-0.32000 -0.35600
+-0.31500 -0.35700
+-0.31000 -0.35650
+-0.30500 -0.35800
+-0.30000 -0.35750
+-0.29500 -0.35800
+-0.29000 -0.35900
+-0.28500 -0.36000
+-0.28000 -0.35850
+-0.27500 -0.35750
+-0.27000 -0.35950
+-0.26500 -0.36050
+-0.26000 -0.36000
+-0.25500 -0.35700
+-0.25000 -0.35850
+-0.24500 -0.35850
+-0.24000 -0.35900
+-0.23500 -0.35900
+-0.23000 -0.35950
+-0.22500 -0.35950
+-0.22000 -0.35850
+-0.21500 -0.35900
+-0.21000 -0.35900
+-0.20500 -0.36050
+-0.20000 -0.36100
+-0.19500 -0.36150
+-0.19000 -0.35950
+-0.18500 -0.35950
+-0.18000 -0.36150
+-0.17500 -0.36100
+-0.17000 -0.36200
+-0.16500 -0.35950
+-0.16000 -0.36050
+-0.15500 -0.36000
+-0.15000 -0.36050
+-0.14500 -0.36000
+-0.14000 -0.36050
+-0.13500 -0.36050
+-0.13000 -0.35950
+-0.12500 -0.36050
+-0.12000 -0.36100
+-0.11500 -0.36200
+-0.11000 -0.36100
+-0.10500 -0.36200
+-0.10000 -0.36250
+-0.09500 -0.36250
+-0.09000 -0.36300
+-0.08500 -0.36350
+-0.08000 -0.36200
+-0.07500 -0.36150
+-0.07000 -0.36200
+-0.06500 -0.36200
+-0.06000 -0.36200
+-0.05500 -0.36150
+-0.05000 -0.36200
+-0.04500 -0.36150
+-0.04000 -0.36150
+-0.03500 -0.36150
+-0.03000 -0.36100
+-0.02500 -0.36300
+-0.02000 -0.36250
+-0.01500 -0.36250
+-0.01000 -0.36150
+-0.00500 -0.36350
+0.00000 -0.36400
+0.00500 -0.36250
+0.01000 -0.36250
+0.01500 -0.36250
+0.02000 -0.36250
+0.02500 -0.36200
+0.03000 -0.36250
+0.03500 -0.36200
+0.04000 -0.36150
+0.04500 -0.36150
+0.05000 -0.36100
+0.05500 -0.36150
+0.06000 -0.36250
+0.06500 -0.36300
+0.07000 -0.36200
+0.07500 -0.36200
+0.08000 -0.36250
+0.08500 -0.36400
+0.09000 -0.36250
+0.09500 -0.36250
+0.10000 -0.36150
+0.10500 -0.36200
+0.11000 -0.36150
+0.11500 -0.36200
+0.12000 -0.36050
+0.12500 -0.36100
+0.13000 -0.36150
+0.13500 -0.36150
+0.14000 -0.36100
+0.14500 -0.36050
+0.15000 -0.36200
+0.15500 -0.36300
+0.16000 -0.36150
+0.16500 -0.36200
+0.17000 -0.36200
+0.17500 -0.36250
+0.18000 -0.36150
+0.18500 -0.36050
+0.19000 -0.36050
+0.19500 -0.36000
+0.20000 -0.36000
+0.20500 -0.35950
+0.21000 -0.36000
+0.21500 -0.36000
+0.22000 -0.36100
+0.22500 -0.36000
+0.23000 -0.36000
+0.23500 -0.36100
+0.24000 -0.36000
+0.24500 -0.36100
+0.25000 -0.36050
+0.25500 -0.36050
+0.26000 -0.36000
+0.26500 -0.36150
+0.27000 -0.36000
+0.27500 -0.36050
+0.28000 -0.35900
+0.28500 -0.35800
+0.29000 -0.35850
+0.29500 -0.35850
+0.30000 -0.35800
+0.30500 -0.35750
+0.31000 -0.35850
+0.31500 -0.35750
+0.32000 -0.35900
+0.32500 -0.35900
+0.33000 -0.35900
+0.33500 -0.35900
+0.34000 -0.35900
+0.34500 -0.35900
+0.35000 -0.35900
+0.35500 -0.35850
+0.36000 -0.35750
+0.36500 -0.35700
+0.37000 -0.35750
+0.37500 -0.35750
+0.38000 -0.35750
+0.38500 -0.35650
+0.39000 -0.35650
+0.39500 -0.35600
+0.40000 -0.35600
+0.40500 -0.35650
+0.41000 -0.35700
+0.41500 -0.35800
+0.42000 -0.35650
+0.42500 -0.35650
+0.43000 -0.35600
+0.43500 -0.35500
+0.44000 -0.35600
+0.44500 -0.35600
+0.45000 -0.35550
+0.45500 -0.35450
+0.46000 -0.35450
+0.46500 -0.35350
+0.47000 -0.35300
+0.47500 -0.35350
+0.48000 -0.35250
+0.48500 -0.35300
+0.49000 -0.35350
+0.49500 -0.35350
+0.50000 -0.35400
+0.50500 -0.35400
+0.51000 -0.35250
+0.51500 -0.35250
+0.52000 -0.35350
+0.52500 -0.35450
+0.53000 -0.35350
+0.53500 -0.35200
+0.54000 -0.35200
+0.54500 -0.35200
+0.55000 -0.35100
+0.55500 -0.35000
+0.56000 -0.34950
+0.56500 -0.35000
+0.57000 -0.35050
+0.57500 -0.34900
+0.58000 -0.35000
+0.58500 -0.35200
+0.59000 -0.35150
+0.59500 -0.35100
+0.60000 -0.35050
+0.60500 -0.35000
+0.61000 -0.34950
+0.61500 -0.35000
+0.62000 -0.35000
+0.62500 -0.34850
+0.63000 -0.34900
+0.63500 -0.34850
+0.64000 -0.34800
+0.64500 -0.34800
+0.65000 -0.34700
+0.65500 -0.34650
+0.66000 -0.34650
+0.66500 -0.34650
+0.67000 -0.34800
+0.67500 -0.34850
+0.68000 -0.34850
+0.68500 -0.34850
+0.69000 -0.34700
+0.69500 -0.34600
+0.70000 -0.34650
+0.70500 -0.34650
+0.71000 -0.34600
+0.71500 -0.34550
+0.72000 -0.34400
+0.72500 -0.34450
+0.73000 -0.34400
+0.73500 -0.34400
+0.74000 -0.34400
+0.74500 -0.34400
+0.75000 -0.34400
+0.75500 -0.34400
+0.76000 -0.34250
+0.76500 -0.34450
+0.77000 -0.34400
+0.77500 -0.34400
+0.78000 -0.34400
+0.78500 -0.34300
+0.79000 -0.34200
+0.79500 -0.34300
+0.80000 -0.34150
+0.80500 -0.34150
+0.81000 -0.34100
+0.81500 -0.33900
+0.82000 -0.34050
+0.82500 -0.34050
+0.83000 -0.34000
+0.83500 -0.34000
+0.84000 -0.34000
+0.84500 -0.33850
+0.85000 -0.34050
+0.85500 -0.34050
+0.86000 -0.34000
+0.86500 -0.34000
+0.87000 -0.34100
+0.87500 -0.33850
+0.88000 -0.33950
+0.88500 -0.33850
+0.89000 -0.33700
+0.89500 -0.33700
+0.90000 -0.33750
+0.90500 -0.33650
+0.91000 -0.33600
+0.91500 -0.33650
+0.92000 -0.33550
+0.92500 -0.33500
+0.93000 -0.33500
+0.93500 -0.33450
+0.94000 -0.33550
+0.94500 -0.33450
+0.95000 -0.33450
+0.95500 -0.33450
+0.96000 -0.33600
+0.96500 -0.33450
+0.97000 -0.33450
+0.97500 -0.33450
+0.98000 -0.33400
+0.98500 -0.33350
+0.99000 -0.33250
+0.99500 -0.33200
+1.00000 -0.33250
+1.00500 -0.33150
+1.01000 -0.33100
+1.01500 -0.33100
+1.02000 -0.33000
+1.02500 -0.33200
+1.03000 -0.33150
+1.03500 -0.33200
+1.04000 -0.33200
+1.04500 -0.33150
+1.05000 -0.33050
+1.05500 -0.33000
+1.06000 -0.33100
+1.06500 -0.33000
+1.07000 -0.32850
+1.07500 -0.32800
+1.08000 -0.32800
+1.08500 -0.32700
+1.09000 -0.32700
+1.09500 -0.32600
+1.10000 -0.32650
+1.10500 -0.32600
+1.11000 -0.32650
+1.11500 -0.32650
+1.12000 -0.32600
+1.12500 -0.32500
+1.13000 -0.32600
+1.13500 -0.32700
+1.14000 -0.32550
+1.14500 -0.32550
+1.15000 -0.32550
+1.15500 -0.32450
+1.16000 -0.32300
+1.16500 -0.32250
+1.17000 -0.32250
+1.17500 -0.32200
+1.18000 -0.32100
+1.18500 -0.32100
+1.19000 -0.32050
+1.19500 -0.32100
+1.20000 -0.32150
+1.20500 -0.32100
+1.21000 -0.32050
+1.21500 -0.32150
+1.22000 -0.32100
+1.22500 -0.32100
+1.23000 -0.31950
+1.23500 -0.32000
+1.24000 -0.31950
+1.24500 -0.31950
+1.25000 -0.31800
+1.25500 -0.31800
+1.26000 -0.31650
+1.26500 -0.31550
+1.27000 -0.31550
+1.27500 -0.31550
+1.28000 -0.31500
+1.28500 -0.31500
+1.29000 -0.31450
+1.29500 -0.31450
+1.30000 -0.31500
+1.30500 -0.31500
+1.31000 -0.31450
+1.31500 -0.31400
+1.32000 -0.31350
+1.32500 -0.31200
+1.33000 -0.31150
+1.33500 -0.31250
+1.34000 -0.31050
+1.34500 -0.31050
+1.35000 -0.31000
+1.35500 -0.30950
+1.36000 -0.30950
+1.36500 -0.30850
+1.37000 -0.30850
+1.37500 -0.30800
+1.38000 -0.30750
+1.38500 -0.30700
+1.39000 -0.30750
+1.39500 -0.30700
+1.40000 -0.30500
+1.40500 -0.30550
+1.41000 -0.30550
+1.41500 -0.30600
+1.42000 -0.30500
+1.42500 -0.30350
+1.43000 -0.30350
+1.43500 -0.30250
+1.44000 -0.30150
+1.44500 -0.30250
+1.45000 -0.30150
+1.45500 -0.30200
+1.46000 -0.30000
+1.46500 -0.29950
+1.47000 -0.30000
+1.47500 -0.29900
+1.48000 -0.30000
+1.48500 -0.29900
+1.49000 -0.29750
+1.49500 -0.29650
+1.50000 -0.29650
+1.50500 -0.29650
+1.51000 -0.29500
+1.51500 -0.29400
+1.52000 -0.29450
+1.52500 -0.29350
+1.53000 -0.29300
+1.53500 -0.29300
+1.54000 -0.29250
+1.54500 -0.29300
+1.55000 -0.29300
+1.55500 -0.29100
+1.56000 -0.28950
+1.56500 -0.29000
+1.57000 -0.29000
+1.57500 -0.28950
+1.58000 -0.28800
+1.58500 -0.28700
+1.59000 -0.28750
+1.59500 -0.28700
+1.60000 -0.28550
+1.60500 -0.28400
+1.61000 -0.28350
+1.61500 -0.28450
+1.62000 -0.28400
+1.62500 -0.28300
+1.63000 -0.28300
+1.63500 -0.28200
+1.64000 -0.28100
+1.64500 -0.28050
+1.65000 -0.28050
+1.65500 -0.28000
+1.66000 -0.27900
+1.66500 -0.27800
+1.67000 -0.27700
+1.67500 -0.27600
+1.68000 -0.27650
+1.68500 -0.27500
+1.69000 -0.27350
+1.69500 -0.27350
+1.70000 -0.27350
+1.70500 -0.27150
+1.71000 -0.27100
+1.71500 -0.27100
+1.72000 -0.27050
+1.72500 -0.27000
+1.73000 -0.27000
+1.73500 -0.26850
+1.74000 -0.26850
+1.74500 -0.26850
+1.75000 -0.26700
+1.75500 -0.26450
+1.76000 -0.26450
+}
+
+\def\DataShapeFittedXmin{-2.40}
+\def\DataShapeFittedXmax{2.40}
+\def\DataShapeFittedYmin{-0.37}
+\def\DataShapeFittedYmax{-0.19}
+\def\DataShapeFittedDxV{0.96}
+\def\DataShapeFittedDyV{0.03}
+\def\DataShapeFitted{
+-2.40000 -0.19595
+-2.30000 -0.20945
+-2.20000 -0.22237
+-2.10000 -0.23471
+-2.00000 -0.24648
+-1.90000 -0.25767
+-1.80000 -0.26828
+-1.70000 -0.27833
+-1.60000 -0.28779
+-1.50000 -0.29668
+-1.40000 -0.30500
+-1.30000 -0.31274
+-1.20000 -0.31990
+-1.10000 -0.32649
+-1.00000 -0.33251
+-0.90000 -0.33795
+-0.80000 -0.34281
+-0.70000 -0.34710
+-0.60000 -0.35081
+-0.50000 -0.35395
+-0.40000 -0.35651
+-0.30000 -0.35850
+-0.20000 -0.35991
+-0.10000 -0.36074
+0.00000 -0.36100
+0.10000 -0.36069
+0.20000 -0.35980
+0.30000 -0.35833
+0.40000 -0.35629
+0.50000 -0.35368
+0.60000 -0.35049
+0.70000 -0.34672
+0.80000 -0.34238
+0.90000 -0.33746
+1.00000 -0.33197
+1.10000 -0.32590
+1.20000 -0.31926
+1.30000 -0.31204
+1.40000 -0.30424
+1.50000 -0.29587
+1.60000 -0.28693
+1.70000 -0.27741
+1.80000 -0.26732
+1.90000 -0.25664
+2.00000 -0.24540
+2.10000 -0.23358
+2.20000 -0.22118
+2.30000 -0.20821
+2.40000 -0.19466
+}
+
+\def\DataRadiusXmin{-2.40}
+\def\DataRadiusXmax{2.40}
+\def\DataRadiusYmin{545.29}
+\def\DataRadiusYmax{545.75}
+\def\DataRadiusDxV{0.96}
+\def\DataRadiusDyV{0.09}
+\def\DataRadius{
+-2.40000 545.74005
+-2.30000 545.72656
+-2.20000 545.71364
+-2.10000 545.70130
+-2.00000 545.68953
+-1.90000 545.67834
+-1.80000 545.55480
+-1.70000 545.47646
+-1.60000 545.45875
+-1.50000 545.44509
+-1.40000 545.43527
+-1.30000 545.42238
+-1.20000 545.37810
+-1.10000 545.35977
+-1.00000 545.34183
+-0.90000 545.33194
+-0.80000 545.31895
+-0.70000 545.31302
+-0.60000 545.30891
+-0.50000 545.30577
+-0.40000 545.30321
+-0.30000 545.30123
+-0.20000 545.29981
+-0.10000 545.29898
+0.00000 545.29872
+0.10000 545.29903
+0.20000 545.29992
+0.30000 545.30139
+0.40000 545.30343
+0.50000 545.30604
+0.60000 545.30924
+0.70000 545.31340
+0.80000 545.31938
+0.90000 545.33243
+1.00000 545.34236
+1.10000 545.36036
+1.20000 545.37874
+1.30000 545.42308
+1.40000 545.43602
+1.50000 545.44589
+1.60000 545.45961
+1.70000 545.47737
+1.80000 545.55576
+1.90000 545.67936
+2.00000 545.69061
+2.10000 545.70243
+2.20000 545.71482
+2.30000 545.72780
+2.40000 545.74134
+}
+
+\def\DataWearXmin{-2.40}
+\def\DataWearXmax{2.40}
+\def\DataWearYmin{-0.28}
+\def\DataWearYmax{0.00}
+\def\DataWearDxV{0.96}
+\def\DataWearDyV{0.06}
+\def\DataWear{
+-2.40000 0.00000
+-2.30000 0.00000
+-2.20000 0.00000
+-2.10000 0.00000
+-2.00000 0.00000
+-1.90000 0.00000
+-1.80000 -0.11292
+-1.70000 -0.18122
+-1.60000 -0.18946
+-1.50000 -0.19423
+-1.40000 -0.19574
+-1.30000 -0.20088
+-1.20000 -0.23800
+-1.10000 -0.24974
+-1.00000 -0.26167
+-0.90000 -0.26612
+-0.80000 -0.27425
+-0.70000 -0.27589
+-0.60000 -0.27628
+-0.50000 -0.27628
+-0.40000 -0.27628
+-0.30000 -0.27628
+-0.20000 -0.27628
+-0.10000 -0.27628
+0.00000 -0.27628
+0.10000 -0.27628
+0.20000 -0.27628
+0.30000 -0.27628
+0.40000 -0.27628
+0.50000 -0.27628
+0.60000 -0.27628
+0.70000 -0.27589
+0.80000 -0.27425
+0.90000 -0.26612
+1.00000 -0.26167
+1.10000 -0.24974
+1.20000 -0.23800
+1.30000 -0.20088
+1.40000 -0.19574
+1.50000 -0.19423
+1.60000 -0.18946
+1.70000 -0.18122
+1.80000 -0.11292
+1.90000 0.00000
+2.00000 0.00000
+2.10000 0.00000
+2.20000 0.00000
+2.30000 0.00000
+2.40000 0.00000
+}
+
+\def\DataRadiusUsedXmin{-1.77}
+\def\DataRadiusUsedXmax{1.77}
+\def\DataRadiusUsedYmin{545.21}
+\def\DataRadiusUsedYmax{545.50}
+\def\DataRadiusUsedDxV{0.71}
+\def\DataRadiusUsedDyV{0.06}
+\def\DataRadiusUsed{
+-1.77000 545.48417
+-1.76500 545.48317
+-1.76000 545.48317
+-1.75500 545.48267
+-1.75000 545.48117
+-1.74500 545.47967
+-1.74000 545.47717
+-1.73500 545.47617
+-1.73000 545.47417
+-1.72500 545.47167
+-1.72000 545.47067
+-1.71500 545.46867
+-1.71000 545.46767
+-1.70500 545.46717
+-1.70000 545.46667
+-1.69500 545.46567
+-1.69000 545.46367
+-1.68500 545.46267
+-1.68000 545.46267
+-1.67500 545.46067
+-1.67000 545.45917
+-1.66500 545.45717
+-1.66000 545.45617
+-1.65500 545.45367
+-1.65000 545.45167
+-1.64500 545.44867
+-1.64000 545.44767
+-1.63500 545.44517
+-1.63000 545.44217
+-1.62500 545.43917
+-1.62000 545.43717
+-1.61500 545.43317
+-1.61000 545.42967
+-1.60500 545.42517
+-1.60000 545.42117
+-1.59500 545.41667
+-1.59000 545.41217
+-1.58500 545.40767
+-1.58000 545.40367
+-1.57500 545.40017
+-1.57000 545.39717
+-1.56500 545.39467
+-1.56000 545.39117
+-1.55500 545.38767
+-1.55000 545.38617
+-1.54500 545.38317
+-1.54000 545.38117
+-1.53500 545.38117
+-1.53000 545.37917
+-1.52500 545.37817
+-1.52000 545.37517
+-1.51500 545.37367
+-1.51000 545.37217
+-1.50500 545.36967
+-1.50000 545.36917
+-1.49500 545.36817
+-1.49000 545.36567
+-1.48500 545.36517
+-1.48000 545.36267
+-1.47500 545.36267
+-1.47000 545.36017
+-1.46500 545.35917
+-1.46000 545.35917
+-1.45500 545.35667
+-1.45000 545.35567
+-1.44500 545.35567
+-1.44000 545.35417
+-1.43500 545.35517
+-1.43000 545.35417
+-1.42500 545.35167
+-1.42000 545.35117
+-1.41500 545.34967
+-1.41000 545.34867
+-1.40500 545.34867
+-1.40000 545.34817
+-1.39500 545.34567
+-1.39000 545.34567
+-1.38500 545.34367
+-1.38000 545.34267
+-1.37500 545.34217
+-1.37000 545.34217
+-1.36500 545.34017
+-1.36000 545.33817
+-1.35500 545.33717
+-1.35000 545.33467
+-1.34500 545.33167
+-1.34000 545.32867
+-1.33500 545.32667
+-1.33000 545.32517
+-1.32500 545.32167
+-1.32000 545.31917
+-1.31500 545.31667
+-1.31000 545.31567
+-1.30500 545.31067
+-1.30000 545.30867
+-1.29500 545.30567
+-1.29000 545.30367
+-1.28500 545.30267
+-1.28000 545.29817
+-1.27500 545.29467
+-1.27000 545.29267
+-1.26500 545.29217
+-1.26000 545.29117
+-1.25500 545.29017
+-1.25000 545.28817
+-1.24500 545.28817
+-1.24000 545.28567
+-1.23500 545.28367
+-1.23000 545.28317
+-1.22500 545.28267
+-1.22000 545.28117
+-1.21500 545.27867
+-1.21000 545.27617
+-1.20500 545.27667
+-1.20000 545.27567
+-1.19500 545.27267
+-1.19000 545.27117
+-1.18500 545.27117
+-1.18000 545.27067
+-1.17500 545.27067
+-1.17000 545.27017
+-1.16500 545.26867
+-1.16000 545.26817
+-1.15500 545.26717
+-1.15000 545.26867
+-1.14500 545.26867
+-1.14000 545.26567
+-1.13500 545.26417
+-1.13000 545.26417
+-1.12500 545.26217
+-1.12000 545.26267
+-1.11500 545.26117
+-1.11000 545.26067
+-1.10500 545.26017
+-1.10000 545.25867
+-1.09500 545.25717
+-1.09000 545.25717
+-1.08500 545.25767
+-1.08000 545.25617
+-1.07500 545.25517
+-1.07000 545.25417
+-1.06500 545.25367
+-1.06000 545.25517
+-1.05500 545.25517
+-1.05000 545.25217
+-1.04500 545.25017
+-1.04000 545.24867
+-1.03500 545.24917
+-1.03000 545.24717
+-1.02500 545.24667
+-1.02000 545.24617
+-1.01500 545.24267
+-1.01000 545.24217
+-1.00500 545.24017
+-1.00000 545.23917
+-0.99500 545.23817
+-0.99000 545.23667
+-0.98500 545.23617
+-0.98000 545.23717
+-0.97500 545.23617
+-0.97000 545.23817
+-0.96500 545.23617
+-0.96000 545.23617
+-0.95500 545.23467
+-0.95000 545.23167
+-0.94500 545.23067
+-0.94000 545.23017
+-0.93500 545.23067
+-0.93000 545.23167
+-0.92500 545.23067
+-0.92000 545.23167
+-0.91500 545.23067
+-0.91000 545.23017
+-0.90500 545.22967
+-0.90000 545.22917
+-0.89500 545.22917
+-0.89000 545.23017
+-0.88500 545.22867
+-0.88000 545.22867
+-0.87500 545.22817
+-0.87000 545.22767
+-0.86500 545.22917
+-0.86000 545.22867
+-0.85500 545.22867
+-0.85000 545.22817
+-0.84500 545.22767
+-0.84000 545.22917
+-0.83500 545.22717
+-0.83000 545.22817
+-0.82500 545.22717
+-0.82000 545.22617
+-0.81500 545.22667
+-0.81000 545.22717
+-0.80500 545.22667
+-0.80000 545.22717
+-0.79500 545.22867
+-0.79000 545.22717
+-0.78500 545.22367
+-0.78000 545.22217
+-0.77500 545.22167
+-0.77000 545.22267
+-0.76500 545.22467
+-0.76000 545.22717
+-0.75500 545.22767
+-0.75000 545.22817
+-0.74500 545.22967
+-0.74000 545.22967
+-0.73500 545.22917
+-0.73000 545.23017
+-0.72500 545.22917
+-0.72000 545.22717
+-0.71500 545.22617
+-0.71000 545.22667
+-0.70500 545.22667
+-0.70000 545.22817
+-0.69500 545.22667
+-0.69000 545.22617
+-0.68500 545.22667
+-0.68000 545.22667
+-0.67500 545.22817
+-0.67000 545.22567
+-0.66500 545.22567
+-0.66000 545.22717
+-0.65500 545.22767
+-0.65000 545.22617
+-0.64500 545.22667
+-0.64000 545.22617
+-0.63500 545.22617
+-0.63000 545.22617
+-0.62500 545.22467
+-0.62000 545.22517
+-0.61500 545.22567
+-0.61000 545.22667
+-0.60500 545.22667
+-0.60000 545.22517
+-0.59500 545.22617
+-0.59000 545.22817
+-0.58500 545.22967
+-0.58000 545.23067
+-0.57500 545.22867
+-0.57000 545.22817
+-0.56500 545.22817
+-0.56000 545.22817
+-0.55500 545.22767
+-0.55000 545.22767
+-0.54500 545.22967
+-0.54000 545.22967
+-0.53500 545.22967
+-0.53000 545.22917
+-0.52500 545.23017
+-0.52000 545.23117
+-0.51500 545.23017
+-0.51000 545.23017
+-0.50500 545.22917
+-0.50000 545.22867
+-0.49500 545.22917
+-0.49000 545.22917
+-0.48500 545.22917
+-0.48000 545.22917
+-0.47500 545.23017
+-0.47000 545.22917
+-0.46500 545.22967
+-0.46000 545.22917
+-0.45500 545.22817
+-0.45000 545.22867
+-0.44500 545.22767
+-0.44000 545.22767
+-0.43500 545.22567
+-0.43000 545.22517
+-0.42500 545.22617
+-0.42000 545.22767
+-0.41500 545.23067
+-0.41000 545.23017
+-0.40500 545.22867
+-0.40000 545.22867
+-0.39500 545.22767
+-0.39000 545.22817
+-0.38500 545.22817
+-0.38000 545.22717
+-0.37500 545.22567
+-0.37000 545.22417
+-0.36500 545.22367
+-0.36000 545.22367
+-0.35500 545.22617
+-0.35000 545.22667
+-0.34500 545.22617
+-0.34000 545.22617
+-0.33500 545.22517
+-0.33000 545.22367
+-0.32500 545.22417
+-0.32000 545.22417
+-0.31500 545.22367
+-0.31000 545.22417
+-0.30500 545.22367
+-0.30000 545.22417
+-0.29500 545.22517
+-0.29000 545.22317
+-0.28500 545.22267
+-0.28000 545.22517
+-0.27500 545.22467
+-0.27000 545.22667
+-0.26500 545.22517
+-0.26000 545.22467
+-0.25500 545.22317
+-0.25000 545.22217
+-0.24500 545.22167
+-0.24000 545.22367
+-0.23500 545.22517
+-0.23000 545.22517
+-0.22500 545.22267
+-0.22000 545.22117
+-0.21500 545.22117
+-0.21000 545.22267
+-0.20500 545.22467
+-0.20000 545.22617
+-0.19500 545.22667
+-0.19000 545.22667
+-0.18500 545.22817
+-0.18000 545.22817
+-0.17500 545.22717
+-0.17000 545.22617
+-0.16500 545.22517
+-0.16000 545.22417
+-0.15500 545.22417
+-0.15000 545.22317
+-0.14500 545.22467
+-0.14000 545.22317
+-0.13500 545.22117
+-0.13000 545.22167
+-0.12500 545.22417
+-0.12000 545.22217
+-0.11500 545.22217
+-0.11000 545.22167
+-0.10500 545.22167
+-0.10000 545.21967
+-0.09500 545.21967
+-0.09000 545.21917
+-0.08500 545.21967
+-0.08000 545.21817
+-0.07500 545.21917
+-0.07000 545.21967
+-0.06500 545.22067
+-0.06000 545.22067
+-0.05500 545.22117
+-0.05000 545.22367
+-0.04500 545.22367
+-0.04000 545.22317
+-0.03500 545.22317
+-0.03000 545.22417
+-0.02500 545.22317
+-0.02000 545.22317
+-0.01500 545.22167
+-0.01000 545.22167
+-0.00500 545.22017
+0.00000 545.22017
+0.00500 545.21967
+0.01000 545.22067
+0.01500 545.21967
+0.02000 545.21967
+0.02500 545.22117
+0.03000 545.21917
+0.03500 545.21867
+0.04000 545.21867
+0.04500 545.22017
+0.05000 545.22017
+0.05500 545.22167
+0.06000 545.22067
+0.06500 545.22017
+0.07000 545.21967
+0.07500 545.21967
+0.08000 545.22067
+0.08500 545.22117
+0.09000 545.22067
+0.09500 545.22217
+0.10000 545.22067
+0.10500 545.21817
+0.11000 545.21917
+0.11500 545.21867
+0.12000 545.21867
+0.12500 545.21717
+0.13000 545.21867
+0.13500 545.21917
+0.14000 545.22067
+0.14500 545.22267
+0.15000 545.22367
+0.15500 545.22417
+0.16000 545.22267
+0.16500 545.22217
+0.17000 545.22367
+0.17500 545.22267
+0.18000 545.22517
+0.18500 545.22717
+0.19000 545.22617
+0.19500 545.22717
+0.20000 545.22667
+0.20500 545.22717
+0.21000 545.22667
+0.21500 545.22717
+0.22000 545.22767
+0.22500 545.22667
+0.23000 545.22617
+0.23500 545.22667
+0.24000 545.22467
+0.24500 545.22367
+0.25000 545.22417
+0.25500 545.22317
+0.26000 545.22417
+0.26500 545.22367
+0.27000 545.22467
+0.27500 545.22267
+0.28000 545.22317
+0.28500 545.22217
+0.29000 545.22467
+0.29500 545.22717
+0.30000 545.22717
+0.30500 545.22817
+0.31000 545.22717
+0.31500 545.22767
+0.32000 545.22767
+0.32500 545.22817
+0.33000 545.22817
+0.33500 545.22717
+0.34000 545.22717
+0.34500 545.22667
+0.35000 545.22817
+0.35500 545.22667
+0.36000 545.22617
+0.36500 545.22717
+0.37000 545.22617
+0.37500 545.22767
+0.38000 545.22867
+0.38500 545.22767
+0.39000 545.22817
+0.39500 545.22867
+0.40000 545.22867
+0.40500 545.22967
+0.41000 545.22817
+0.41500 545.22867
+0.42000 545.22867
+0.42500 545.22967
+0.43000 545.22867
+0.43500 545.22867
+0.44000 545.23017
+0.44500 545.22817
+0.45000 545.22667
+0.45500 545.22517
+0.46000 545.22667
+0.46500 545.22767
+0.47000 545.22817
+0.47500 545.22917
+0.48000 545.22967
+0.48500 545.22967
+0.49000 545.22917
+0.49500 545.22817
+0.50000 545.23017
+0.50500 545.23217
+0.51000 545.23067
+0.51500 545.23017
+0.52000 545.23067
+0.52500 545.22967
+0.53000 545.22867
+0.53500 545.22867
+0.54000 545.22867
+0.54500 545.22867
+0.55000 545.22617
+0.55500 545.22467
+0.56000 545.22367
+0.56500 545.22217
+0.57000 545.22217
+0.57500 545.22167
+0.58000 545.22317
+0.58500 545.22417
+0.59000 545.22567
+0.59500 545.22567
+0.60000 545.22517
+0.60500 545.22517
+0.61000 545.22467
+0.61500 545.22317
+0.62000 545.22367
+0.62500 545.22417
+0.63000 545.22417
+0.63500 545.22367
+0.64000 545.22117
+0.64500 545.22067
+0.65000 545.22067
+0.65500 545.22017
+0.66000 545.22067
+0.66500 545.21917
+0.67000 545.21867
+0.67500 545.21817
+0.68000 545.21667
+0.68500 545.21717
+0.69000 545.21617
+0.69500 545.21417
+0.70000 545.21267
+0.70500 545.21317
+0.71000 545.21267
+0.71500 545.21267
+0.72000 545.21517
+0.72500 545.21717
+0.73000 545.21767
+0.73500 545.21967
+0.74000 545.22317
+0.74500 545.22467
+0.75000 545.22717
+0.75500 545.22717
+0.76000 545.22767
+0.76500 545.22867
+0.77000 545.22967
+0.77500 545.23117
+0.78000 545.23467
+0.78500 545.23667
+0.79000 545.23917
+0.79500 545.24167
+0.80000 545.24267
+0.80500 545.24267
+0.81000 545.24267
+0.81500 545.24317
+0.82000 545.24317
+0.82500 545.24417
+0.83000 545.24567
+0.83500 545.24467
+0.84000 545.24567
+0.84500 545.24517
+0.85000 545.24517
+0.85500 545.24517
+0.86000 545.24667
+0.86500 545.24617
+0.87000 545.24617
+0.87500 545.24667
+0.88000 545.24667
+0.88500 545.24617
+0.89000 545.24567
+0.89500 545.24767
+0.90000 545.24717
+0.90500 545.24567
+0.91000 545.24617
+0.91500 545.24717
+0.92000 545.24717
+0.92500 545.24967
+0.93000 545.25117
+0.93500 545.25117
+0.94000 545.25117
+0.94500 545.25067
+0.95000 545.25167
+0.95500 545.25117
+0.96000 545.25317
+0.96500 545.25317
+0.97000 545.25517
+0.97500 545.25667
+0.98000 545.25517
+0.98500 545.25667
+0.99000 545.25667
+0.99500 545.25817
+1.00000 545.25917
+1.00500 545.25917
+1.01000 545.26017
+1.01500 545.26217
+1.02000 545.26367
+1.02500 545.26367
+1.03000 545.26417
+1.03500 545.26417
+1.04000 545.26467
+1.04500 545.26617
+1.05000 545.26667
+1.05500 545.26567
+1.06000 545.26667
+1.06500 545.26517
+1.07000 545.26217
+1.07500 545.26217
+1.08000 545.26067
+1.08500 545.26217
+1.09000 545.26317
+1.09500 545.26367
+1.10000 545.26317
+1.10500 545.26267
+1.11000 545.26267
+1.11500 545.26417
+1.12000 545.26517
+1.12500 545.26717
+1.13000 545.27017
+1.13500 545.27317
+1.14000 545.27467
+1.14500 545.27717
+1.15000 545.27717
+1.15500 545.27917
+1.16000 545.28017
+1.16500 545.27867
+1.17000 545.28067
+1.17500 545.28117
+1.18000 545.28317
+1.18500 545.28267
+1.19000 545.28117
+1.19500 545.27967
+1.20000 545.28017
+1.20500 545.27867
+1.21000 545.28017
+1.21500 545.28217
+1.22000 545.28517
+1.22500 545.28667
+1.23000 545.28617
+1.23500 545.28617
+1.24000 545.28717
+1.24500 545.28967
+1.25000 545.29317
+1.25500 545.29167
+1.26000 545.29317
+1.26500 545.29367
+1.27000 545.29617
+1.27500 545.29817
+1.28000 545.30117
+1.28500 545.30317
+1.29000 545.30617
+1.29500 545.30617
+1.30000 545.30867
+1.30500 545.31217
+1.31000 545.31617
+1.31500 545.31917
+1.32000 545.32217
+1.32500 545.32267
+1.33000 545.32617
+1.33500 545.32767
+1.34000 545.33117
+1.34500 545.33467
+1.35000 545.33617
+1.35500 545.33867
+1.36000 545.33917
+1.36500 545.34067
+1.37000 545.34267
+1.37500 545.34567
+1.38000 545.34717
+1.38500 545.34867
+1.39000 545.34967
+1.39500 545.35217
+1.40000 545.35317
+1.40500 545.35317
+1.41000 545.35367
+1.41500 545.35467
+1.42000 545.35667
+1.42500 545.35767
+1.43000 545.35917
+1.43500 545.35867
+1.44000 545.35917
+1.44500 545.35917
+1.45000 545.35967
+1.45500 545.36067
+1.46000 545.36167
+1.46500 545.36167
+1.47000 545.36417
+1.47500 545.36467
+1.48000 545.36317
+1.48500 545.36217
+1.49000 545.36067
+1.49500 545.36067
+1.50000 545.36217
+1.50500 545.36567
+1.51000 545.36817
+1.51500 545.37117
+1.52000 545.37217
+1.52500 545.37367
+1.53000 545.37217
+1.53500 545.37017
+1.54000 545.37117
+1.54500 545.37367
+1.55000 545.37867
+1.55500 545.38617
+1.56000 545.39317
+1.56500 545.39717
+1.57000 545.40017
+1.57500 545.40367
+1.58000 545.40867
+1.58500 545.41217
+1.59000 545.41517
+1.59500 545.41867
+1.60000 545.42167
+1.60500 545.42717
+1.61000 545.42867
+1.61500 545.43417
+1.62000 545.43767
+1.62500 545.44167
+1.63000 545.44367
+1.63500 545.44667
+1.64000 545.44917
+1.64500 545.45317
+1.65000 545.45567
+1.65500 545.45917
+1.66000 545.46017
+1.66500 545.46117
+1.67000 545.46367
+1.67500 545.46517
+1.68000 545.46717
+1.68500 545.46917
+1.69000 545.47067
+1.69500 545.47217
+1.70000 545.47367
+1.70500 545.47567
+1.71000 545.47817
+1.71500 545.48017
+1.72000 545.48167
+1.72500 545.48417
+1.73000 545.48567
+1.73500 545.48517
+1.74000 545.48767
+1.74500 545.48917
+1.75000 545.49167
+1.75500 545.49217
+1.76000 545.49267
+1.76500 545.49267
+1.77000 545.49367
+}
+
+\def\DataRMeasuredUsedXmin{-1.70}
+\def\DataRMeasuredUsedXmax{1.70}
+\def\DataRMeasuredUsedYmin{545.22}
+\def\DataRMeasuredUsedYmax{545.48}
+\def\DataRMeasuredUsedDxV{0.68}
+\def\DataRMeasuredUsedDyV{0.05}
+\def\DataRMeasuredUsed{
+-1.70000 545.47600
+0.00000 545.22250
+1.70000 545.46200
+}
+
+\def\DataMeasuredWearXmin{-1.70}
+\def\DataMeasuredWearXmax{1.70}
+\def\DataMeasuredWearYmin{-0.38}
+\def\DataMeasuredWearYmax{-0.18}
+\def\DataMeasuredWearDxV{0.68}
+\def\DataMeasuredWearDyV{0.04}
+\def\DataMeasuredWear{
+-1.70000 -0.19101
+-1.60000 -0.22705
+-1.50000 -0.27015
+-1.40000 -0.28284
+-1.30000 -0.31460
+-1.20000 -0.34043
+-1.10000 -0.35084
+-1.00000 -0.36433
+-0.90000 -0.36889
+-0.80000 -0.36603
+-0.70000 -0.36074
+-0.60000 -0.36003
+-0.50000 -0.35339
+-0.40000 -0.35083
+-0.30000 -0.35334
+-0.20000 -0.34993
+-0.10000 -0.35559
+0.00000 -0.35483
+0.10000 -0.35465
+0.20000 -0.34954
+0.30000 -0.35050
+0.40000 -0.35104
+0.50000 -0.35216
+0.60000 -0.36035
+0.70000 -0.37662
+0.80000 -0.35096
+0.90000 -0.35138
+1.00000 -0.34487
+1.10000 -0.34694
+1.20000 -0.33658
+1.30000 -0.31530
+1.40000 -0.27859
+1.50000 -0.27796
+1.60000 -0.22741
+1.70000 -0.18493
+}
+
+\def\DataGroupDummyXmin{}
+\def\DataGroupDummyXmax{}
+\def\DataGroupDummyYmin{}
+\def\DataGroupDummyYmax{}
+\def\DataGroupDummyDxV{1}
+\def\DataGroupDummyDyV{}
+\def\DataGroupIXmin{-2.4}
+\def\DataGroupIXmax{2.4}
+\def\DataGroupIYmin{545.2}
+\def\DataGroupIYmax{545.8}
+\def\DataGroupIDxV{0.7}
+\def\DataGroupIDyV{0.1}
+\def\DataGroupIIXmin{-2.40}
+\def\DataGroupIIXmax{2.40}
+\def\DataGroupIIYmin{-0.37}
+\def\DataGroupIIYmax{-0.19}
+\def\DataGroupIIDxV{0.68}
+\def\DataGroupIIDyV{0.03}
+\def\DataGroupIIIXmin{-2.40}
+\def\DataGroupIIIXmax{2.40}
+\def\DataGroupIIIYmin{-0.38}
+\def\DataGroupIIIYmax{0.00}
+\def\DataGroupIIIDxV{0.68}
+\def\DataGroupIIIDyV{0.08}
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/TechnicalDetails.tex b/graphics/pstricks/contrib/numericplots/doc/src/TechnicalDetails.tex
new file mode 100644
index 0000000000..9b5bdb7df1
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/TechnicalDetails.tex
@@ -0,0 +1,254 @@
+% Copyright 2013 Thomas Koenig, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+\section{Details}
+
+\subsection{Labels and TickLabels}\label{sec:Details:Labels}
+
+% mit input und lstinputlisting liese sich auch eine Umgebung definieren, mit
+% der Beispiele automatisch gesetzt werden können.
+
+The following example shows some possibilities to format the axis labels and the
+tick labels. The example is not intended to be pretty nor useful in any other
+way than just showing some labels. More examples of customized tick labels are listed in Sec.~\ref{sec:CustomTickLabels}.
+
+\input{examples/LabelsNTickLabels}
+
+\lstinputlisting{examples/LabelsNTickLabels.tex}
+
+
+
+
+\subsection{Coordinate Systems}
+
+This section should just give some hints how to use the different coordinate
+systems.
+
+A new plot is created with the environment
+\texttt{NumericDataPlot}. The options are illustrated in the following example.
+
+Consider the plot drawn below which is defined by the following code. Note that the example parameters deviate from the standard values to clarify the general possibilities.
+
+\begin{minipage}[T]{0.5\linewidth}
+ \begin{verbatim}
+ \begin{NumericDataPlot}
+ [xPicMin=300, xPicMax=700, yPicMin=200, yPicMax=700,
+ llx=2cm, lly=1.5cm, urx=1cm, ury=1cm]
+ {8cm}{6.5cm}
+...
+% some axes and stuff
+ ...
+ \end{NumericDataPlot}
+ \end{verbatim}
+\end{minipage}
+
+The total width and total height of the plot object are set with the mandatory arguments of \texttt{NumericDataPlot}. These dimensions define the bounding box of the plot object (dashed box in the plot below), as it is seen by the \TeX~interpreter\footnote{Because the elements inside a \texttt{NumericDataPlot} environment are set relative to an internal coordinate system, content may be placed outside the bounding box and may overlap with surrounding elements.}. The internal, dimensionless coordinate system, in which the actual axes will be placed, is defined by the optional xPicMin, xPicMax, yPicMin and yPicMax values. The location of the horizontal and vertical axes x=xPicMin, x=xPicMax, and y=yPicMin, y=yPicMax, respectively, relative to the bounding box is controlled by the padding values llx, lly, urx and ury. Thus, the actual length Wx of the range xPicMax-xPicMin on the page is calculated by
+\begin{align*}
+\mathrm{Wx} = \mathrm{total\ width} - \mathrm{llx} - \mathrm{urx},
+\end{align*}
+and alike for the y direction. Obviously, the padding values should be positive.
+
+The standard values of the padding values are chosen such that single line axis labels and 3-4 digit tick labels should be within the bounding box.
+
+\vspace{1cm}
+
+\begin{center}
+\psframebox[framesep=0pt,boxsep=false,linestyle=dashed]{%
+ \begin{NumericDataPlot}
+ [xPicMin=300, xPicMax=700, yPicMin=200, yPicMax=700,
+ llx=2cm, lly=1.5cm, urx=1cm, ury=1cm]
+ {8cm}{6.5cm}
+
+ \psline(300,200)(700,200)(700,700)(300,700)(300,200)
+ \pnode(300,200){PicLL}
+ \pnode(700,200){PicLR}
+ \pnode(700,700){PicUR}
+ \pnode(300,700){PicUL}
+ \rput(200,100){\Rnode{CapLL}{(xPicMin, yPicMin)}}
+ \ncline{->}{CapLL}{PicLL}
+ \rput(800,100){\Rnode{CapLR}{(xPicMax, yPicMin)}}
+ \ncline{->}{CapLR}{PicLR}
+ \rput(800,800){\Rnode{CapUR}{(xPicMax, yPicMax)}}
+ \ncline{->}{CapUR}{PicUR}
+ \rput(200,800){\Rnode{CapUL}{(xPicMin, yPicMax)}}
+ \ncline{->}{CapUL}{PicUL}
+
+ % \pnode(400,400){PlotLL}
+ % \pnode(600,400){PlotLR}
+ % \pnode(600,600){PlotUR}
+ % \pnode(400,600){PlotUL}
+ % \rput(350,300){\Rnode{PCapLL}{(xCoordMin, yCoordMin)}}
+ % \ncline{->}{PCapLL}{PlotLL}
+ % \rput(800,450){\Rnode{PCapLR}{(xCoordMax, yCoordMin)}}
+ % \ncline{->}{PCapLR}{PlotLR}
+ % \rput(800,650){\Rnode{PCapUR}{(xCoordMax, yCoordMax)}}
+ % \ncline{->}{PCapUR}{PlotUR}
+ % \rput(500,870){\Rnode{PCapUL}{(xCoordMin, yCoordMax)}}
+ % \ncline{->}{PCapUL}{PlotUL}
+
+ \rput(140,350){\pnode{LLXA}}
+ \rput(300,350){\pnode{LLXB}}
+ \ncline{<->}{LLXA}{LLXB}
+ \naput{llx}
+
+ \rput(350,200){\pnode{LLXA}}
+ \rput(350,12.5){\pnode{LLXB}}
+ \ncline{<->}{LLXA}{LLXB}
+ \naput{lly}
+
+ \rput(780,350){\pnode{URXA}}
+ \rput(700,350){\pnode{URXB}}
+ \ncline{<->}{URXA}{URXB}
+ \naput{urx}
+
+ \rput(350,825){\pnode{URXA}}
+ \rput(350,700){\pnode{URXB}}
+ \ncline{<->}{URXA}{URXB}
+ \naput{ury}
+
+ \rput(795,825){\pnode{HU}}
+ \rput(795,12.5){\pnode{HL}}
+ \ncline{<->}{HL}{HU}
+ \nbput[nrot=:U]{total height}
+
+\rput(140,-6.25){\pnode{WU}}
+ \rput(780,-6.25){\pnode{WL}}
+ \ncline{<->}{WU}{WL}
+ \nbput[nrot=:U]{total width}
+
+ % \setxAxis{xCoordMin=400, xCoordMax=600,
+ % xMin=1, xMax=1.6, Dx=0.2}
+ % \setyAxis
+ % {yCoordMin=400, yCoordMax=600,
+ % yMin=50, yMax=150, Dy=25}
+
+ % \plotxAxis[NoLabel]{}
+ % \plotyAxis[NoLabel]{}
+
+ % \listplot[style=StdLineStyA]{\IdentI}
+ \end{NumericDataPlot}}
+
+\end{center}
+
+In the next example, the placement of multiple axes in the internal coordinate frame is illustrated. The coordinate frame settings are the same as above, but standard padding values are used.
+
+\begin{verbatim}
+ \begin{NumericDataPlot}
+ [xPicMin=300, xPicMax=700, yPicMin=200, yPicMax=700]
+ {0.8\textwidth}{7cm}
+
+% set and draw 1. (lower) axes
+\setxAxis{xCoordMin=300, xCoordMax=600, xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis{yCoordMin=200, yCoordMax=400, yMin=50, yMax=150, Dy=25}
+
+\plotxAxis{x-label}
+\plotyAxis{y-label}
+
+\listplot[style=StdLineStyA]{\IdentI}
+
+% set and draw 2. (upper) axes
+\setxAxis{xCoordMin=400, xCoordMax=700, xMin=1, xMax=1.6, Dx=0.2}
+\setyAxis{yCoordMin=450, yCoordMax=700, yMin=50, yMax=150, Dy=25}
+
+\plotxAxis[NoLabel]{}
+\plotyAxis[NoLabel]{}
+
+\listplot[style=StdLineStyA]{\IdentI}
+
+\end{NumericDataPlot}
+\end{verbatim}
+
+\begin{center}
+\psframebox[framesep=0pt,boxsep=false,linestyle=dashed]{%
+ \begin{NumericDataPlot}%
+ [xPicMin=300, xPicMax=700, yPicMin=200, yPicMax=700]
+ {8cm}{7cm}
+
+ \psline(300,200)(700,200)(700,700)(300,700)(300,200) \pnode(300,200){PicLL}
+ \pnode(700,200){PicLR} \pnode(700,700){PicUR} \pnode(300,700){PicUL}
+ \rput(250,80){\Rnode{CapLL}{(xPicMin, yPicMin)}}
+ \ncline{->}{CapLL}{PicLL}
+ \rput(750,80){\Rnode{CapLR}{(xPicMax, yPicMin)}}
+ \ncline{->}{CapLR}{PicLR}
+ \rput(750,750){\Rnode{CapUR}{(xPicMax, yPicMax)}}
+ \ncline{->}{CapUR}{PicUR}
+ \rput(250,750){\Rnode{CapUL}{(xPicMin, yPicMax)}}
+ \ncline{->}{CapUL}{PicUL}
+
+ \pnode(300,200){PlotLL} \pnode(600,400){PlotUR}
+ \rput[l](325,235){\Rnode{PCapLL}{(xCoordMin$_{1}$, yCoordMin$_{1}$)}}
+ \ncline{->}{PCapLL}{PlotLL}
+ \rput(500,365){\Rnode{PCapUR}{(xCoordMax$_{1}$, yCoordMax$_{1}$)}}
+ \ncline{->}{PCapUR}{PlotUR}
+
+ \pnode(400,450){PlotLL}
+ \pnode(700,700){PlotUR} \rput[l](425,485){\Rnode{PCapLL}{(xCoordMin$_{2}$,yCoordMin$_{2}$)}}
+ \ncline{->}{PCapLL}{PlotLL}
+ \rput[r](675,665){\Rnode{PCapUR}{(xCoordMax$_{2}$, yCoordMax$_{2}$)}}
+ \ncline{->}{PCapUR}{PlotUR}
+
+
+ \setxAxis{xCoordMin=300, xCoordMax=600, xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis{yCoordMin=200, yCoordMax=400, yMin=50, yMax=150, Dy=25}
+ \plotxAxis{x-label $gj$}
+ \plotyAxis{y-label $\hat{E}$}
+
+ \listplot[style=StdLineStyA]{\IdentI}
+
+
+ \setxAxis{xCoordMin=400, xCoordMax=700,
+ xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis{yCoordMin=450, yCoordMax=700,
+ yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis[NoLabel]{}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[style=StdLineStyA]{\IdentI}
+
+ \end{NumericDataPlot}
+ }
+\end{center}
+
+
+\subsection{Undistorted plot}
+
+To get an undistorted plot, the following example may be helpful. The width $w$ of
+the graphic is set manually. The calculation of the total height $h$ is
+\begin{align*}
+ h &=\left(\frac{yMax-yMin}{xMax-xMin}\right)
+ \left(\frac{xCoordMax-xCoordMin}{yCoordMax-yCoordMin}\right)\\
+ &\hphantom{=} \qquad \left(\frac{yPicMax-yPicMin}{xPicMax-yPicMin}\right)\left(
+ w-llx-urx
+ \right) + lly + ury,
+\intertext{which simplifies for default values ($xCoordMax=yCoordMax=xPicMax=yPicMax=1000$, $xCoordMin=yCoordMin=xPicMin=yPicMin=0$) to}
+ h &=\left(\frac{yMax-yMin}{xMax-xMin}\right)
+ \left(
+ w-llx-urx
+ \right) + lly + ury
+\end{align*}
+
+
+\input{examples/data_Nyquist}
+
+\input{examples/NyquistPlot}
+\lstinputlisting[firstline=2,lastline=22]{examples/NyquistPlot.tex}
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "NumericPlotsDoc"
+%%% End:
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/TestPlots.tex b/graphics/pstricks/contrib/numericplots/doc/src/TestPlots.tex
new file mode 100644
index 0000000000..9530a120c9
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/TestPlots.tex
@@ -0,0 +1,122 @@
+% Copyright 2010 Thomas Koenig, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+\section{Some test plots}
+
+
+% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+\subsection{example}
+
+\input{Roll406_Ref2288.tex}
+
+\newpsstyle{PlotTitle}{fillstyle=solid, fillcolor=white, framearc=0.5, opacity=0.85, linestyle=none}
+
+\newpsstyle{Rnew}{style=StdLineStyC, linestyle=dashed}
+\newpsstyle{R}{style=StdLineStyC}
+\newpsstyle{Rused}{linestyle=dashed}
+\newpsstyle{ShapeMeasured}{style=StdLineStyB}
+\newpsstyle{ShapeFitted}{style=StdLineStyA}
+\newpsstyle{Dia}{style=StdLineStyD, showpoints=true, dotstyle=asterisk,
+linestyle=none, dotsize=5pt}
+\newpsstyle{DiaUsed}{style=Dia, dotstyle=+}
+
+\begin{minipage}{0.7\linewidth}
+ \begin{NumericDataPlot}{\textwidth}{8.3cm}
+
+ \setxAxis{xMin=-2.4, xMax=2.4, Dx=1.0, xO=0.0}
+ \setyAxis{yMin=-0.45, yMax=-0.05, Dy=0.1, yO=-0.2,
+ yCoordMin=750}
+ \plotxAxis[NoLabel, NoTickLabel]{$z$ in m}
+ \plotyAxis{$\Delta r$ in mm}
+ \listplot[style=ShapeMeasured]{\DataShapeMeasured}
+ \listplot[style=ShapeFitted]{\DataShapeFitted}
+ \putN{\psframebox[style=PlotTitle]{Formmessung}}
+
+
+ \setyAxis{yMin=545.15, yMax=545.85, yO=545.4, Dy=0.2,
+ yCoordMin=300, yCoordMax=700}
+ \plotxAxis[NoLabel, NoTickLabel]{$z$ in m}
+ \plotyAxis{$r$ in mm}
+ \listplot[style=Rnew]{\DataRadiusNew}
+ \listplot[style=Dia]{\DataRMeasured}
+
+ \listplot[style=R]{\DataRadius}
+ \ifx \DataRadiusUsed \empty
+ \else
+ \listplot[style=Rused]{\DataRadiusUsed}
+ \listplot[style=DiaUsed]{\DataRMeasuredUsed}
+ \fi
+
+ \putN{\psframebox[style=PlotTitle]{Walzenprofil}}
+
+ \setyAxis{yMin=-0.45, yMax=0.05, yO=0.0, Dy=0.1, yCoordMax=250}
+ \plotxAxis{$z$ in m}
+ \plotyAxis{$w$ in mm}
+
+ \listplot[style=StdLineStyX]{\DataWear}
+ \listplot[style=StdLineStyY]{\DataMeasuredWear}
+
+ \putN{\psframebox[style=PlotTitle]{Verschleiß}}
+
+ \end{NumericDataPlot}
+\end{minipage}
+\begin{minipage}{0.3\linewidth}
+ \renewcommand{\arraystretch}{1.5}
+ \newlength{\mylen}\settowidth{\mylen}{Approximation}
+ \begin{tabular}{|p{15pt}p{\mylen}|}%
+ \hline
+ \LegLine[LegLineWidth=15pt]{style=ShapeMeasured} & Formmessung\\
+ \LegLine[LegLineWidth=15pt]{style=ShapeFitted} & Approximation\\
+ \hline\hline
+ \LegLine[LegLineWidth=15pt]{style=Dia} & Durchmesser\-messung\\
+ \LegLine[LegLineWidth=15pt]{style=Rnew} & $R_\text{new}$\\
+ \hline
+ \LegLine[LegLineWidth=15pt]{style=R} & $R = R_\text{new} + w_\text{DB}$\\
+ \LegLine[LegLineWidth=15pt]{style=Rused} & $R_\text{used}$\\
+ \LegLine[LegLineWidth=15pt]{style=DiaUsed} & Durchmesser\-messung\\
+ \hline\hline
+ \LegLine[LegLineWidth=15pt]{style=StdLineStyX} & $w_\text{DB}$\\
+ \LegLine[LegLineWidth=15pt]{style=StdLineStyY} &
+ $w_\text{Messung}=R_\text{used}-R_\text{new}$\\
+ \hline
+ \end{tabular}%
+ \renewcommand{\arraystretch}{1}
+\end{minipage}
+
+
+
+% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+
+
+\subsection{bode plot}
+
+\input{examples/data_BodeDiagrammLinearerTerm}
+\input{examples/BodeDiagramm}
+
+\lstinputlisting{examples/BodeDiagramm.tex}
+
+
+% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+
+\subsection{areas in a plot}
+
+\input{examples/data_SprungantwortPT1Glied}
+\input{examples/Sprungantwort_PT1Glied}
+
+\lstinputlisting{examples/Sprungantwort_PT1Glied.tex} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/BodeDiagramm.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/BodeDiagramm.tex
new file mode 100644
index 0000000000..3400f19745
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/BodeDiagramm.tex
@@ -0,0 +1,44 @@
+ \begin{NumericDataPlot}{0.85\textwidth}{6.5cm}
+
+ \setxAxis{xMin=1, xMax=100, Dx=10, xLog}
+ \setyAxis{yMin=-20, yMax=0, Dy=5, yO=0, yCoordMin=525}
+
+ \plotxAxis[NoTickLabel,NoLabel]{}
+ \plotyAxis{$\left|G\left(I\omega\right)\right|$ in \si{\decibel}}
+
+ \NDPline[style=StdLineStyA]{0}{0}{1}{0}
+ \NDPline[style=StdLineStyA]{1}{0}{2}{-20}
+
+ \listplot[style=StdLineStyC]{\DataBetrag}
+
+ \NDPput[x=1, y=0]{\pnode{Pa}}
+ \NDPput[x=1, y=-3]{\pnode{Pb}}
+ \ncline{-}{Pb}{Pa}
+ \NDPput[x=1, y=-1.5]{\pnode{Pc}}
+ \NDPput[x=2, y=-2.5, RefPoint=r]%
+ {\Rnode{Pd}{
+ \psframebox[fillstyle=solid,fillcolor=white,linestyle=none,framesep=0pt]{%
+ \SI{-3}{\decibel} Betragskorrektur}}}
+ \pscustom[linewidth=0.5pt]{\ncline[angleA=0]{->}{Pd}{Pc}}
+
+ \NDPput[x=0.8, y=0]{\pnode{Pf}}
+ \NDPput[x=1.25, y=-5]{\pnode{Pg}}
+ \NDPput[x=0.9, y=-12.5, RefPoint=r]%
+ {\Rnode{Pe}{
+ \psframebox[fillstyle=solid,fillcolor=white,linestyle=none]%
+ {Asymptoten}}}
+ \pscustom[linewidth=0.5pt]{\ncline{->}{Pe}{Pf}}
+ \pscustom[linewidth=0.5pt]{\ncline{->}{Pe}{Pg}}
+
+
+ \setyAxis{yMin=-90, yMax=0, Dy=45, yO=0, yCoordMax=475}
+
+ \plotxAxis{$\omega$ in $\si{\radian\per\second}$}
+ \plotyAxis{$\arg\left(G\left(I\omega\right)\right)$ in $\si{\degree}$}
+
+ \listplot[style=StdLineStyC]{\DataPhase}
+
+ \listplot[plotstyle=dots]{10 -45}
+ \NDPput[x=1, y=-45, RefPoint=lb]{ \SI{-45}{\degree}}
+
+ \end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/DataTestRealData.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/DataTestRealData.tex
new file mode 100644
index 0000000000..985ee468f2
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/DataTestRealData.tex
@@ -0,0 +1,174 @@
+% data written by export2latex
+% date: 10-Mar-2010
+
+\def\DataA{
+2 58.828
+3 56.353
+4 58.817
+5 55.814
+6 56.713
+7 52.671
+8 56.493
+9 48.933
+10 52.068
+11 45.674
+12 48.869
+13 48.317
+14 49.677
+15 62.636
+16 51.374
+17 48.876
+}
+
+\def\DataB{
+2 62.894
+3 59.824
+4 59.908
+5 56.158
+6 54.775
+7 50.489
+8 50.897
+9 44.732
+10 44.923
+11 39.731
+12 39.663
+13 37.731
+14 36.13
+15 38.342
+16 30.646
+17 28.224
+}
+\def\DataC{
+ 2.0000 52.5244
+ 3.0000 52.9925
+ 4.0000 52.7279
+ 5.0000 51.7954
+ 6.0000 50.4234
+ 7.0000 48.9477
+ 8.0000 47.7296
+ 9.0000 47.0674
+ 10.0000 47.1232
+ 11.0000 47.8834
+ 12.0000 49.1618
+ 13.0000 50.6454
+ 14.0000 51.9710
+ 15.0000 52.8140
+ 16.0000 52.9681
+ 17.0000 52.3955
+}
+
+\def\DataD{
+2.0000 48.9294
+ 3.0000 47.7015
+ 4.0000 46.1762
+ 5.0000 44.5214
+ 6.0000 42.9193
+ 7.0000 41.5462
+ 8.0000 40.5534
+ 9.0000 40.0500
+ 10.0000 40.0916
+ 11.0000 40.6736
+ 12.0000 41.7318
+ 13.0000 43.1498
+ 14.0000 44.7715
+ 15.0000 46.4183
+ 16.0000 47.9090
+ 17.0000 49.0795
+}
+
+\def\DataE{
+ 2.0000 55.0918
+ 3.0000 57.2074
+ 4.0000 58.8597
+ 5.0000 59.9770
+ 6.0000 60.5465
+ 7.0000 60.6154
+ 8.0000 60.2864
+ 9.0000 59.7056
+ 10.0000 59.0472
+ 11.0000 58.4936
+ 12.0000 58.2160
+ 13.0000 58.3549
+ 14.0000 59.0052
+ 15.0000 60.2054
+ 16.0000 61.9334
+ 17.0000 64.1090
+}
+
+\def\DataF{
+2 20.828
+3 20.353
+4 26.817
+5 20.828
+6 20.353
+7 26.817
+8 22.828
+9 23.353
+10 24.817
+11 20.828
+12 28.353
+13 26.817
+14 22.828
+15 27.353
+16 26.817
+17 24.9
+}
+
+\def\DataG{
+ 2.0000 34.2537
+ 3.0000 33.1056
+ 4.0000 32.5301
+ 5.0000 32.3504
+ 6.0000 32.4343
+ 7.0000 32.6791
+ 8.0000 33.0000
+ 9.0000 33.3209
+ 10.0000 33.5657
+ 11.0000 33.6496
+ 12.0000 33.4699
+ 13.0000 32.8944
+ 14.0000 31.7463
+ 15.0000 29.7847
+ 16.0000 26.6776
+ 17.0000 21.9643
+}
+
+
+\def\DataDBhex{
+2 93
+3 87.09
+4 80.44
+5 74.57
+6 68.55
+7 63.55
+8 57.9
+9 53.86
+10 49.4
+11 46.09
+12 42.51
+13 39.17
+14 35.98
+15 32.39
+16 30.25
+17 28.53
+}
+
+\def\DataREShexint{
+2 88.312
+3 82.771
+4 76.83
+5 71.332
+6 65.886
+7 61.094
+8 56.068
+9 52.002
+10 48.015
+11 44.735
+12 41.543
+13 38.397
+14 35.457
+15 32.409
+16 29.98
+17 28.332
+}
+
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/DefineData.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/DefineData.tex
new file mode 100644
index 0000000000..d1650b67d0
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/DefineData.tex
@@ -0,0 +1,47 @@
+\def\IdentI{
+ 1.0 1.0e2
+ 1.1 11e1
+ 1.2 1.25e2
+ 1.3 110
+ 1.4 100
+ 1.5 90
+ 1.6 80
+ }
+\def\IdentII{
+ 1.0 125
+ 1.05 100
+ 1.1 75
+ 1.15 85
+ 1.2 90
+ 1.3 115
+ 1.4 130
+ 1.5 125
+ 1.6 120
+ }
+\def\LogData{
+ 6 6
+ 10 10
+ 20 20
+ 30 30
+ 40 40
+ 50 50
+ 60 60
+ 70 70
+ 80 80
+ 90 90
+ 100 100
+ 200 200
+ 300 300
+ 400 400
+ 500 500
+ 600 600
+ 700 700
+ 800 800
+ 900 900
+ 1000 1000
+ 1100 1100
+ 1200 1200
+ 1300 1300
+ 1400 1400
+ 1500 1500
+} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/LabelsNTickLabels.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/LabelsNTickLabels.tex
new file mode 100644
index 0000000000..332e4995b4
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/LabelsNTickLabels.tex
@@ -0,0 +1,49 @@
+\begin{center}
+\renewcommand{\testframe}[1]{\frame{#1}}
+\testframe{
+\begin{NumericDataPlot}%
+ [urx=2.2cm,ury=2.5cm,llx=2.0cm,lly=1.8cm]%
+ {0.8\textwidth}{12cm}
+
+ \setxAxis{xMin=1.0, xMax=1.6, Dx=0.2}
+ \setyAxis{yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis%
+ [TickLabelSep=2\baselineskip, LabelSep=0em, LabelOption=\color{blue},
+ LabelPos=1, LabelRefPt=tr, LabelOrientation=l]%
+ {x-label\\2 lines 0 em}
+
+ \plotyAxis%
+ [TickLabelSep=3em, LabelSep=0em, LabelPos=0.25, %
+ LabelRefPt=bl]%
+ {y-label\\testing 0em}
+
+ \PutTickLabelYaxis[y=60,TickLabelSep=0pt]{$60$}
+ \PutTickLabelXaxis[x=1.1]{$1.1$}
+ \PutTickLabelXaxis[x=1.05,TickLabelSep=0em]{$1.05$}
+ \PutTickLabelXaxis%
+ [x=1.2,TickLabelSep=1ex,TickLabelRot=45,TickLabelRefPt=tr]%
+ {test at $1.2$}
+
+ \listplot[style=StdLineStyA]{\IdentI}
+
+ \setxAxis{xMin=1000, xMax=1600, Dx=60}
+ \setyAxis{yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis%
+ [TickLabelSep=1em, LabelSep=3em, AxisStyle=Upper, NoGrid, %
+ LabelOption=\Large,TickLabelRot=45,TickLabelRefPt=bl]%
+ {x-label\\test 3em}
+ \plotyAxis%
+ [TickLabelSep=0em, LabelSep=3em, AxisStyle=Right, NoGrid, %
+ LabelOrientation=r]%
+ {y-label\\test 3em text}
+
+ \PutTickLabelXaxis[x=1500]{$1500$}
+ \PutTickLabelYaxis[ax=right,y=135]{$135$}
+ \PutTickLabelYaxis[y=140,TickLabelSep=1em]{$140$}
+ \PutTickLabelYaxis[y=120,TickLabelSep=0em,TickLabelRot=-45]{$120$}
+\end{NumericDataPlot}
+}
+%\renewcommand{\testframe}[1]{#1}
+\end{center} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/NyquistPlot.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/NyquistPlot.tex
new file mode 100644
index 0000000000..5af97bbff9
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/NyquistPlot.tex
@@ -0,0 +1,76 @@
+
+ \newlength{\GRheight}
+ \newlength{\GRwidth}
+
+ % desired width of the graphic
+ \setlength{\GRwidth}{0.5\textwidth}
+ % calculate height:
+ % first intermediate step
+ % axis width: GRwidth - (llx+urx)
+ \setlength{\GRheight}%
+ {\GRwidth-7ex-\baselineskip-2pt-2ex}
+ % sec. intermediate step
+ % scale with data range ration
+ % factor 0.7692 = (yMax-yMin)/(xMax-xMin)
+ \setlength{\GRheight}{0.7692\GRheight}
+ % third intermediate step
+ % add padding values to axis height to obtain total height.
+ \begin{NumericDataPlot}%
+ {\GRwidth}{\GRheight+2\baselineskip+1ex+2pt+0.5em}
+
+ \setxAxis{xMin=-1.1, xMax=1.5, Dx=0.5, xO=0}
+ \setyAxis{yMin=-1, yMax=1, Dy=0.5, yO=0}
+
+ \plotxAxis{$Real\left(G\left(I\omega\right)\right)$}
+ \plotyAxis{$Imag\left(G\left(I\omega\right)\right)$}
+
+ \listplot[style=StdLineStyA]{\DataNyquistNeg}
+ \listplot[style=StdLineStyA]{\DataNyquistPos}
+
+ % Pfeile
+ \listplot%
+ [style=StdLineStyA, arrows=->, linestyle=none]{\DataNyquistArrowPos}
+ \listplot%
+ [style=StdLineStyA, arrows=<-, linestyle=none]{\DataNyquistArrowNeg}
+
+ % Beschriftung
+% 1.00000 -0.00000
+% 0.80000 0.40000
+% 0.00000 0.00000
+ \NDPput[x=1.0, y=0.0]{\pnode{Pa1}}
+ \NDPput[x=0.8, y=-0.4]{\pnode{Pa2}}
+ \NDPput[x=0.0, y=0.0]{\pnode{Pa3}}
+ \NDPput[x=1.1, y=0.1, RefPoint=l]%
+ {\Rnode{Pb1}{
+ \psframebox[fillstyle=solid,fillcolor=white,linestyle=none]{%
+ $\omega=0$}}}
+ \ncline{-}{Pb1}{Pa1}
+ \NDPput[x=0.9, y=-0.6, RefPoint=l]%
+ {\Rnode{Pb2}{
+ \psframebox[fillstyle=solid,fillcolor=white,linestyle=none]{%
+ $\omega=0.5$}}}
+ \ncline{-}{Pb2}{Pa2}
+ \NDPput[x=-0.1, y=-0.15, RefPoint=r]%
+ {\Rnode{Pb3}{
+ \psframebox[fillstyle=solid,fillcolor=white,linestyle=none]{%
+ $\omega=\infty$}}}
+ \ncline{-}{Pb3}{Pa3}
+ \NDPput[x=-0.1, y=0.15, RefPoint=r]%
+ {\Rnode{Pc3}{
+ \psframebox[fillstyle=solid,fillcolor=white,linestyle=none]{%
+ $\omega=-\infty$}}}
+ \ncline{-}{Pc3}{Pa3}
+
+ % Pfeil
+ \ncline{->}{Pa3}{Pa2}
+
+ % Marker
+ \listplot[style=StdLineStyC, plotstyle=dots]{\DataNyquistMarkPos}
+ \listplot[style=StdLineStyC, plotstyle=dots, dotstyle=x, dotsize=10pt]{-1 0}
+
+ \end{NumericDataPlot}
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "../NumericPlotsDoc"
+%%% End:
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/Sprungantwort_PT1Glied.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/Sprungantwort_PT1Glied.tex
new file mode 100644
index 0000000000..d7fee5c910
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/Sprungantwort_PT1Glied.tex
@@ -0,0 +1,39 @@
+ \begin{NumericDataPlot}{0.75\textwidth}{6cm}
+
+ \setxAxis{xMin=0.0, xMax=4.0, Dx=0.5}
+ \setyAxis{yMin=0, yMax=11.5, Dy=2}
+
+ \plotxAxis{$t$}
+ \plotyAxis{$h\left(t\right)$}
+
+ % Markiere Fläche
+ \pscustom[fillstyle=solid, fillcolor=blue!30, linestyle=none]{
+ \listplot{\DataSprungantwort}
+ \NDPline{4}{10}{0}{10}
+ }
+
+ % Hilfslinien
+ \NDPline{0}{0}{0.5}{10}
+ \NDPvline[linestyle=dashed, linewidth=0.5pt]{0.5}
+ \NDPhline[linestyle=dashed, linewidth=0.5pt]{10}
+
+
+ % plotte Sprungantwort
+ \listplot[style=StdLineStyC]{\DataSprungantwort}
+
+
+ % Beschriftung
+ \NDPput[x=0,y=10.3]{\pnode{A}}
+ \NDPput[x=0.5,y=10.3]{\pnode{B}}
+ \ncline[linewidth=0.5pt]{<->}{A}{B}
+ \naput{$T$}
+
+ \NDPput[x=0.75, y=9]{\pnode{Fl1}}
+ \NDPput[x=1.25, y=7]{\Rnode{Fl2}{$A$}}
+ \ncline[linewidth=0.5pt]{->}{Fl2}{Fl1}
+
+ \NDPput[x=1.1,y=10]{\pnode{V1}}
+ \NDPput[x=1.3, y=10.75]{\Rnode{V2}{$V$}}
+ \ncline[linewidth=0.5pt]{->}{V2}{V1}
+
+ \end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Boxes.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Boxes.tex
new file mode 100644
index 0000000000..47243a1df2
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Boxes.tex
@@ -0,0 +1,22 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6cm}
+ \setxAxis
+ {xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis[NoLabel]{}
+ \plotyAxis[NoLabel]{}
+
+ \NDPhbox[fillstyle=solid,fillcolor = green]%
+ {75.0}{100.0}%
+
+ \listplot[style=StdLineStyA] {\IdentI}
+
+ \NDPvbox[fillstyle=solid,fillcolor=red]
+ {1.4}{1.5}
+
+ \NDPbox[fillstyle=solid,%
+ fillcolor=orange, opacity=0.2, linestyle=none]%
+ {1.1}{60}{1.15}{130}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_EasyPlot.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_EasyPlot.tex
new file mode 100644
index 0000000000..0a226a1f9f
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_EasyPlot.tex
@@ -0,0 +1,9 @@
+\begin{NumericDataPlot}{\textwidth}{6.5cm}
+ \setxAxis{xMin=-1, xMax=2, Dx=0.5, xO=0}
+ \setyAxis{yMin=-50, yMax=150, Dy=25, yO=0}
+
+ \plotxAxis{x-axis label}
+ \plotyAxis{y-axis label}
+
+ \listplot[style=StdLineStyA]{\IdentI}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Grid.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Grid.tex
new file mode 100644
index 0000000000..1b98d0cd70
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Grid.tex
@@ -0,0 +1,13 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6.5cm}
+ \setxAxis{xMin=1, xMax=1.6, Dx=0.1, DDx=0.2}
+ \setyAxis{yMin=50, yMax=150, Dy=12.5, DDy=25}
+
+ \plotxGrid
+ \plotyGrid
+ \plotxAxis[NoLabel, NoGrid, AxisStyle=Boxed]{}
+ \plotyAxis[NoLabel, NoGrid, AxisStyle=Boxed]{}
+
+ \listplot[style=StdLineStyA]{\IdentI}
+
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Labels.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Labels.tex
new file mode 100644
index 0000000000..f48318cab8
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Labels.tex
@@ -0,0 +1,17 @@
+\begin{NumericDataPlot}{\textwidth}{6.5cm}
+ \setxAxis{xMin=1, xMax=1.6, Dx=0.1, DDx=0.2}
+ \setyAxis{yMin=75, yMax=130, Dy=12.5}
+
+ \plotxAxis
+ [LabelOption=\LARGE,%
+ TickLabelOption=\color{red},%
+ LabelSep=40pt]
+ {x-axis label}
+ \plotyAxis
+ [NoLabel, NoTicks, NoTickLabel]
+ {y-axis label}
+
+ \listplot[style=StdLineStyA]{\IdentI}
+ \listplot[style=StdLineStyB]{\IdentII}
+
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Legend.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Legend.tex
new file mode 100644
index 0000000000..0078b241b7
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Legend.tex
@@ -0,0 +1,3 @@
+\LegendDefinition{
+ \LegLine{style=StdLineStyA} & IdentI
+} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendI.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendI.tex
new file mode 100644
index 0000000000..c6872619bc
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendI.tex
@@ -0,0 +1,4 @@
+\LegendDefinition{
+ \LegLine{style=StdLineStyA} & IdentI\\
+ \LegLine{style=StdLineStyB, linewidth=3pt} & second legend
+} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendII.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendII.tex
new file mode 100644
index 0000000000..9958a7830f
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendII.tex
@@ -0,0 +1,8 @@
+ \newpsstyle{LegendBoxStyle}%
+ {framearc=0.2, fillstyle=solid, fillcolor=yellow, opacity=0.2}
+ \LegendDefinition[nrCols=2]{
+ \LegLine{style=StdLineStyA} & IdentI &
+ \LegLine{style=StdLineStyB, linewidth=3pt} & legend 2
+ }
+ \newpsstyle{LegendBoxStyle}%
+ {fillstyle=solid, fillcolor=white} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendIII.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendIII.tex
new file mode 100644
index 0000000000..769f11f0ad
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LegendIII.tex
@@ -0,0 +1,7 @@
+\LegendDefinition[LabelOrientation=c]{
+ \LegLine{style=StdLineStyA} & IdentI\\
+ \LegLine{style=StdLineStyB, linewidth=3pt} & second legend\\
+ \LegLine{style=StdLineStyC} & whatever this data is\ldots\\
+ \LegLine{style=StdLineStyD} & and more data\\
+ \LegDot{style=StdLineStyC, plotstyle=dots} & plotstyle=dots
+} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LineStyles.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LineStyles.tex
new file mode 100644
index 0000000000..0f0675b798
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LineStyles.tex
@@ -0,0 +1,27 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6.5cm}
+
+ \definecolor{MyColor}{cmyk}{0.6 0.21 1.0 0.2}
+ \newpsstyle{MyLine}{linecolor=MyColor, linewidth=2pt, linestyle=dashed,
+ dash=1pt 1pt 4pt 1pt 1pt 3pt, dotstyle=*, showpoints=true, dotsize=5pt}
+ \newpsstyle{MyLineA}{linecolor=blue, linestyle=dotted,
+ dotstyle=asterisk, showpoints=true}
+
+ \setxAxis
+ {xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis[NoLabel]{}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[style=MyLine]
+ {\IdentI}
+ \listplot[style=MyLineA]
+ {\IdentII}
+
+ \putSE{\LegendDefinition{
+ \LegLine{style=MyLine} & IdentI\\
+ \LegLine{style=MyLineA} & IdentII
+ }}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Lines.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Lines.tex
new file mode 100644
index 0000000000..3c6219e089
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Lines.tex
@@ -0,0 +1,18 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6cm}
+ \setxAxis
+ {xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis[NoLabel]{}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[style=StdLineStyA]
+ {\IdentI}
+
+ \NDPhline[linecolor=LineColorD]{73}
+ \NDPvline[linecolor=LineColorE, %
+ linestyle=dashed]{1.5}
+ \NDPline[linecolor=red]{1.1}{75}{1.3}{125}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicI.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicI.tex
new file mode 100644
index 0000000000..7ab769f477
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicI.tex
@@ -0,0 +1,8 @@
+\begin{NumericDataPlot}{\textwidth}{6.5cm}
+ \setxAxis{xMin=6, xMax=2500, xLog}
+ \setyAxis{yMin=0, yMax=2500, Dy=500}
+ \plotxAxis{}
+ \plotyAxis{}
+
+ \listplot{\LogData}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicII.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicII.tex
new file mode 100644
index 0000000000..01227ed903
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicII.tex
@@ -0,0 +1,8 @@
+\begin{NumericDataPlot}{\textwidth}{6.5cm}
+ \setxAxis{xMin=1, xMax=1500, xLog}
+ \setyAxis{yMin=1, yMax=1500, yLog}
+ \plotxAxis{}
+ \plotyAxis{}
+
+ \listplot{\LogData}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicIII.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicIII.tex
new file mode 100644
index 0000000000..c5e1388aae
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_LogarithmicIII.tex
@@ -0,0 +1,8 @@
+\begin{NumericDataPlot}{\textwidth}{6.5cm}
+ \setxAxis{xMin=1, xMax=1500, xLog, xLogNoSubGrid}
+ \setyAxis{yMin=1, yMax=1500, yLog, yLogNoSubGrid}
+ \plotxAxis{}
+ \plotyAxis{}
+
+ \listplot{\LogData}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_MultipleData.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_MultipleData.tex
new file mode 100644
index 0000000000..e12ed83290
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_MultipleData.tex
@@ -0,0 +1,20 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6.5cm}
+ \setxAxis
+ {xMin=1, xMax=2, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis{x-axis label}
+ \plotyAxis{y-axis label}
+
+ \listplot[style=StdLineStyA]
+ {\IdentI}
+ \listplot[style=StdLineStyB]
+ {\IdentII}
+
+ \putSE{\LegendDefinition{
+ \LegLine{style=StdLineStyA} & IdentI \\
+ \LegLine{style=StdLineStyB} & IdentII
+ }}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Objects.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Objects.tex
new file mode 100644
index 0000000000..f02df7e841
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_Objects.tex
@@ -0,0 +1,29 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6.5cm}
+ \setxAxis
+ {xMin=1, xMax=2, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis[LabelPos=1, LabelRefPt=tr]%
+ {x-axis label}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[style=StdLineStyA]
+ {\IdentI}
+
+ % put some stuff somewhere
+ \NDPput[x=1.2, y=75, RefPoint=br]{text}
+ \NDPput[x=1.2, y=100, Rot=45]{$a^2+b^2$}
+
+ % or put nodes...
+ \NDPput[x=1.6, y=100]{\pnode{A}}
+ \NDPput[x=1.8, y=150]{\pnode{B}}
+ % ...and draw a line between them
+ \ncline{A}{B}
+
+ % or put the legend at a specific position
+ \NDPput[x=1.8, y=75]{\LegendDefinition{
+ \LegLine{style=StdLineStyA} & IdentI
+ }}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlaceObjects.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlaceObjects.tex
new file mode 100644
index 0000000000..ddacb061a1
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlaceObjects.tex
@@ -0,0 +1,31 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6.5cm}
+ \setxAxis
+ {xMin=1, xMax=2, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis[LabelPos=1, LabelRefPt=tr]%
+ {x-axis label}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[style=StdLineStyA]
+ {\IdentI}
+
+ % put some stuff somewhere
+ \NDPput[x=1.2, y=75, RefPoint=br]{text}
+ \NDPput[x=1.2, y=100, Rot=45]{$a^2+b^2$}
+
+ % or put nodes...
+ \NDPput[x=1.6, y=100]{\pnode{A}}
+ \NDPput[x=1.8, y=150]{\pnode{B}}
+ % ...and draw a line between them
+ \ncline{A}{B}
+ % .. with text
+ \naput{$e^2$}
+
+ % or put the legend at a specific position
+ \NDPput[x=1.8, y=75]{\LegendDefinition{
+ \LegLine{style=StdLineStyA} & IdentI
+ }}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlaceObjectsII.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlaceObjectsII.tex
new file mode 100644
index 0000000000..9b10a7d9a4
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlaceObjectsII.tex
@@ -0,0 +1,25 @@
+ \begin{NumericDataPlot}
+ {\textwidth}{6.5cm}
+ \setxAxis
+ {xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis{x-axis label}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[style=StdLineStyA]
+ {\IdentI}
+
+ \putExpY{$\times 10^{-3}$}
+ \putExpX{$\times 10^{-6}$}
+
+ \putN{N}
+ \putS{S}
+ \putW{W}
+ \putE{E}
+ \putNW{NW}
+ \putNE{NE}
+ \putSW{SW}
+ \putSE{SE}
+ \end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlotWHoles.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlotWHoles.tex
new file mode 100644
index 0000000000..2a255e3ecb
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_PlotWHoles.tex
@@ -0,0 +1,8 @@
+\begin{NumericDataPlot}{\textwidth}{6.5cm}
+ \setxAxis{xMin=560, xMax=650, Dx=20}
+ \setyAxis{yMin=4, yMax=30, Dy=5, yO=5}
+ \plotxAxis{}
+ \plotyAxis{}
+
+ \multilistplot{style=StdLineStyA}{DataIdent}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_UseRput.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_UseRput.tex
new file mode 100644
index 0000000000..c3cb5e304e
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_UseRput.tex
@@ -0,0 +1,29 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6.5cm}
+ \setxAxis
+ {xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis{x-axis label}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[style=StdLineStyA]
+ {\IdentI}
+
+ % put text in the middle of the plot
+ \rput{45}(500,500){text}
+ % put a formula in the lower left corner
+ \rput[bl](0,0){$a^2+b^2=c^2$}
+
+ % or put nodes...
+ \NDPput[x=1.2, y=125]{\pnode{A}}
+ \rput(750,900){\Rnode{B}{peak}}
+ % ...and draw a line between them
+ \ncline{<-}{A}{B}
+
+ % or put the legend at a specific position
+ \rput{-45}(750,250){\LegendDefinition{
+ \LegLine{style=StdLineStyA} & IdentI
+ }}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_UserLinestyles.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_UserLinestyles.tex
new file mode 100644
index 0000000000..ce78d5f5bc
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/basic_UserLinestyles.tex
@@ -0,0 +1,27 @@
+\begin{NumericDataPlot}
+ {\textwidth}{6.5cm}
+
+ \definecolor{MyColor}{cmyk}{0.6 0.21 1.0 0.2}
+ \newpsstyle{MyLine}{linecolor=MyColor, linewidth=2pt, linestyle=dashed,
+ dash=1pt 1pt 4pt 1pt 1pt 3pt, dotstyle=*, showpoints=true, dotsize=5pt}
+ \newpsstyle{MyLineA}{linecolor=blue, linestyle=dotted, dotstyle=asterisk,
+ showpoints=true}
+
+ \setxAxis
+ {xMin=1, xMax=1.6, Dx=0.2}
+ \setyAxis
+ {yMin=50, yMax=150, Dy=25}
+
+ \plotxAxis[NoLabel]{}
+ \plotyAxis[NoLabel]{}
+
+ \listplot[style=MyLine]
+ {\IdentI}
+ \listplot[style=MyLineA]
+ {\IdentII}
+
+ \putSE{\LegendDefinition{
+ \LegLine{style=MyLine} & IdentI\\
+ \LegLine{style=MyLineA} & IdentII
+ }}
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/data_BodeDiagrammLinearerTerm.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/data_BodeDiagrammLinearerTerm.tex
new file mode 100644
index 0000000000..1e48347f04
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/data_BodeDiagrammLinearerTerm.tex
@@ -0,0 +1,1028 @@
+% EPLdata written by export2latex
+% date: 26-Sep-2011
+
+\def\ExpDate{26-Sep-2011}
+\def\DataBetragXmin{1}
+\def\DataBetragXmax{100}
+\def\DataBetragYmin{-21}
+\def\DataBetragYmax{-0}
+\def\DataBetragDxV{20}
+\def\DataBetragDyV{4}
+\def\DataBetrag{
+1.00000 -0.04321
+1.00927 -0.04401
+1.01863 -0.04483
+1.02807 -0.04566
+1.03761 -0.04651
+1.04723 -0.04737
+1.05693 -0.04825
+1.06673 -0.04914
+1.07662 -0.05005
+1.08661 -0.05098
+1.09668 -0.05192
+1.10685 -0.05288
+1.11711 -0.05386
+1.12747 -0.05486
+1.13792 -0.05587
+1.14847 -0.05691
+1.15912 -0.05796
+1.16987 -0.05903
+1.18071 -0.06013
+1.19166 -0.06124
+1.20271 -0.06237
+1.21386 -0.06352
+1.22511 -0.06470
+1.23647 -0.06590
+1.24794 -0.06711
+1.25951 -0.06835
+1.27118 -0.06962
+1.28297 -0.07090
+1.29486 -0.07221
+1.30687 -0.07355
+1.31899 -0.07491
+1.33122 -0.07629
+1.34356 -0.07770
+1.35602 -0.07913
+1.36859 -0.08059
+1.38128 -0.08208
+1.39408 -0.08359
+1.40701 -0.08514
+1.42005 -0.08671
+1.43322 -0.08831
+1.44651 -0.08993
+1.45992 -0.09159
+1.47345 -0.09328
+1.48712 -0.09500
+1.50090 -0.09675
+1.51482 -0.09853
+1.52886 -0.10034
+1.54304 -0.10219
+1.55734 -0.10407
+1.57178 -0.10599
+1.58636 -0.10794
+1.60106 -0.10992
+1.61591 -0.11195
+1.63089 -0.11400
+1.64601 -0.11610
+1.66127 -0.11823
+1.67668 -0.12041
+1.69222 -0.12262
+1.70791 -0.12487
+1.72374 -0.12716
+1.73973 -0.12950
+1.75586 -0.13187
+1.77214 -0.13429
+1.78857 -0.13675
+1.80515 -0.13926
+1.82189 -0.14181
+1.83878 -0.14441
+1.85583 -0.14706
+1.87303 -0.14975
+1.89040 -0.15249
+1.90792 -0.15528
+1.92561 -0.15812
+1.94347 -0.16101
+1.96149 -0.16396
+1.97967 -0.16695
+1.99803 -0.17000
+2.01655 -0.17311
+2.03525 -0.17627
+2.05412 -0.17949
+2.07316 -0.18276
+2.09238 -0.18609
+2.11178 -0.18948
+2.13136 -0.19294
+2.15112 -0.19645
+2.17107 -0.20003
+2.19120 -0.20367
+2.21151 -0.20737
+2.23202 -0.21114
+2.25271 -0.21498
+2.27360 -0.21889
+2.29468 -0.22286
+2.31595 -0.22691
+2.33742 -0.23102
+2.35910 -0.23521
+2.38097 -0.23948
+2.40304 -0.24381
+2.42532 -0.24823
+2.44781 -0.25272
+2.47050 -0.25729
+2.49341 -0.26194
+2.51653 -0.26668
+2.53986 -0.27149
+2.56341 -0.27639
+2.58717 -0.28138
+2.61116 -0.28645
+2.63537 -0.29161
+2.65980 -0.29686
+2.68446 -0.30221
+2.70935 -0.30764
+2.73447 -0.31317
+2.75983 -0.31879
+2.78541 -0.32452
+2.81124 -0.33034
+2.83730 -0.33626
+2.86361 -0.34228
+2.89016 -0.34841
+2.91696 -0.35464
+2.94400 -0.36098
+2.97130 -0.36743
+2.99884 -0.37399
+3.02665 -0.38066
+3.05471 -0.38744
+3.08303 -0.39434
+3.11162 -0.40136
+3.14047 -0.40850
+3.16958 -0.41575
+3.19897 -0.42313
+3.22863 -0.43064
+3.25856 -0.43827
+3.28877 -0.44603
+3.31927 -0.45392
+3.35004 -0.46194
+3.38110 -0.47009
+3.41245 -0.47839
+3.44409 -0.48682
+3.47602 -0.49539
+3.50825 -0.50410
+3.54077 -0.51296
+3.57360 -0.52196
+3.60673 -0.53111
+3.64017 -0.54042
+3.67392 -0.54987
+3.70799 -0.55948
+3.74237 -0.56925
+3.77706 -0.57918
+3.81208 -0.58927
+3.84743 -0.59952
+3.88310 -0.60994
+3.91910 -0.62053
+3.95544 -0.63129
+3.99211 -0.64222
+4.02912 -0.65333
+4.06648 -0.66461
+4.10418 -0.67608
+4.14223 -0.68772
+4.18064 -0.69956
+4.21940 -0.71158
+4.25852 -0.72379
+4.29800 -0.73619
+4.33785 -0.74878
+4.37807 -0.76158
+4.41866 -0.77457
+4.45963 -0.78777
+4.50098 -0.80117
+4.54271 -0.81478
+4.58482 -0.82859
+4.62733 -0.84262
+4.67023 -0.85687
+4.71353 -0.87133
+4.75724 -0.88601
+4.80134 -0.90092
+4.84586 -0.91605
+4.89079 -0.93141
+4.93613 -0.94700
+4.98190 -0.96282
+5.02809 -0.97888
+5.07471 -0.99517
+5.12176 -1.01171
+5.16924 -1.02849
+5.21717 -1.04551
+5.26554 -1.06279
+5.31436 -1.08032
+5.36363 -1.09810
+5.41336 -1.11614
+5.46355 -1.13443
+5.51421 -1.15299
+5.56533 -1.17181
+5.61693 -1.19091
+5.66901 -1.21027
+5.72157 -1.22990
+5.77462 -1.24981
+5.82815 -1.26999
+5.88219 -1.29046
+5.93673 -1.31120
+5.99177 -1.33224
+6.04732 -1.35356
+6.10339 -1.37517
+6.15998 -1.39707
+6.21709 -1.41927
+6.27473 -1.44176
+6.33291 -1.46456
+6.39162 -1.48766
+6.45088 -1.51106
+6.51069 -1.53477
+6.57106 -1.55879
+6.63198 -1.58312
+6.69347 -1.60776
+6.75553 -1.63272
+6.81816 -1.65800
+6.88138 -1.68360
+6.94518 -1.70952
+7.00957 -1.73577
+7.07456 -1.76234
+7.14015 -1.78924
+7.20635 -1.81648
+7.27317 -1.84404
+7.34060 -1.87195
+7.40866 -1.90018
+7.47735 -1.92876
+7.54667 -1.95768
+7.61664 -1.98693
+7.68726 -2.01654
+7.75853 -2.04648
+7.83047 -2.07678
+7.90307 -2.10742
+7.97634 -2.13842
+8.05029 -2.16976
+8.12493 -2.20146
+8.20026 -2.23351
+8.27629 -2.26592
+8.35302 -2.29869
+8.43047 -2.33181
+8.50863 -2.36529
+8.58752 -2.39914
+8.66714 -2.43334
+8.74750 -2.46791
+8.82860 -2.50284
+8.91045 -2.53813
+8.99307 -2.57379
+9.07645 -2.60982
+9.16060 -2.64621
+9.24553 -2.68297
+9.33125 -2.72009
+9.41777 -2.75759
+9.50508 -2.79545
+9.59321 -2.83368
+9.68215 -2.87228
+9.77192 -2.91126
+9.86252 -2.95060
+9.95396 -2.99031
+10.04625 -3.03039
+10.13939 -3.07084
+10.23340 -3.11166
+10.32828 -3.15285
+10.42404 -3.19440
+10.52069 -3.23633
+10.61823 -3.27863
+10.71668 -3.32130
+10.81604 -3.36433
+10.91632 -3.40773
+11.01753 -3.45150
+11.11968 -3.49564
+11.22277 -3.54014
+11.32683 -3.58500
+11.43184 -3.63023
+11.53783 -3.67582
+11.64481 -3.72178
+11.75277 -3.76810
+11.86174 -3.81478
+11.97171 -3.86181
+12.08271 -3.90921
+12.19473 -3.95696
+12.30780 -4.00507
+12.42191 -4.05353
+12.53708 -4.10234
+12.65332 -4.15151
+12.77063 -4.20103
+12.88904 -4.25089
+13.00854 -4.30111
+13.12915 -4.35166
+13.25087 -4.40257
+13.37373 -4.45381
+13.49772 -4.50539
+13.62287 -4.55732
+13.74917 -4.60958
+13.87665 -4.66217
+14.00531 -4.71510
+14.13516 -4.76835
+14.26621 -4.82194
+14.39848 -4.87585
+14.53198 -4.93009
+14.66671 -4.98465
+14.80269 -5.03954
+14.93993 -5.09474
+15.07845 -5.15025
+15.21825 -5.20608
+15.35935 -5.26222
+15.50175 -5.31867
+15.64548 -5.37543
+15.79053 -5.43249
+15.93694 -5.48986
+16.08469 -5.54752
+16.23382 -5.60549
+16.38434 -5.66374
+16.53624 -5.72229
+16.68956 -5.78113
+16.84430 -5.84026
+17.00047 -5.89967
+17.15809 -5.95937
+17.31717 -6.01934
+17.47773 -6.07960
+17.63977 -6.14013
+17.80332 -6.20093
+17.96838 -6.26200
+18.13498 -6.32333
+18.30312 -6.38493
+18.47281 -6.44680
+18.64409 -6.50892
+18.81694 -6.57130
+18.99141 -6.63393
+19.16748 -6.69682
+19.34520 -6.75995
+19.52456 -6.82333
+19.70558 -6.88695
+19.88828 -6.95082
+20.07267 -7.01492
+20.25878 -7.07926
+20.44661 -7.14383
+20.63618 -7.20863
+20.82751 -7.27366
+21.02061 -7.33892
+21.21550 -7.40440
+21.41220 -7.47009
+21.61073 -7.53601
+21.81109 -7.60214
+22.01331 -7.66848
+22.21741 -7.73504
+22.42340 -7.80180
+22.63130 -7.86876
+22.84112 -7.93593
+23.05289 -8.00329
+23.26663 -8.07086
+23.48235 -8.13861
+23.70006 -8.20657
+23.91980 -8.27471
+24.14157 -8.34303
+24.36540 -8.41155
+24.59130 -8.48024
+24.81930 -8.54912
+25.04942 -8.61817
+25.28166 -8.68740
+25.51606 -8.75680
+25.75263 -8.82637
+25.99140 -8.89611
+26.23238 -8.96602
+26.47559 -9.03609
+26.72106 -9.10632
+26.96881 -9.17672
+27.21885 -9.24727
+27.47121 -9.31797
+27.72591 -9.38883
+27.98297 -9.45984
+28.24241 -9.53099
+28.50426 -9.60230
+28.76854 -9.67374
+29.03527 -9.74533
+29.30447 -9.81706
+29.57617 -9.88893
+29.85038 -9.96094
+30.12714 -10.03307
+30.40646 -10.10534
+30.68838 -10.17775
+30.97291 -10.25028
+31.26007 -10.32293
+31.54990 -10.39571
+31.84242 -10.46862
+32.13764 -10.54164
+32.43561 -10.61478
+32.73634 -10.68804
+33.03985 -10.76142
+33.34618 -10.83491
+33.65535 -10.90851
+33.96739 -10.98222
+34.28231 -11.05605
+34.60016 -11.12997
+34.92096 -11.20401
+35.24473 -11.27814
+35.57150 -11.35238
+35.90130 -11.42672
+36.23416 -11.50116
+36.57011 -11.57569
+36.90917 -11.65033
+37.25137 -11.72505
+37.59675 -11.79987
+37.94533 -11.87478
+38.29714 -11.94978
+38.65221 -12.02487
+39.01058 -12.10004
+39.37226 -12.17530
+39.73730 -12.25064
+40.10573 -12.32607
+40.47757 -12.40158
+40.85286 -12.47717
+41.23163 -12.55284
+41.61391 -12.62858
+41.99973 -12.70441
+42.38913 -12.78030
+42.78214 -12.85627
+43.17880 -12.93232
+43.57913 -13.00843
+43.98317 -13.08462
+44.39097 -13.16087
+44.80254 -13.23720
+45.21792 -13.31359
+45.63716 -13.39004
+46.06029 -13.46656
+46.48734 -13.54314
+46.91835 -13.61979
+47.35335 -13.69650
+47.79239 -13.77327
+48.23549 -13.85009
+48.68271 -13.92698
+49.13407 -14.00392
+49.58962 -14.08092
+50.04939 -14.15798
+50.51342 -14.23509
+50.98176 -14.31225
+51.45444 -14.38947
+51.93150 -14.46674
+52.41298 -14.54406
+52.89893 -14.62143
+53.38938 -14.69885
+53.88438 -14.77632
+54.38397 -14.85383
+54.88820 -14.93139
+55.39709 -15.00900
+55.91071 -15.08665
+56.42908 -15.16435
+56.95227 -15.24209
+57.48030 -15.31988
+58.01323 -15.39770
+58.55110 -15.47557
+59.09396 -15.55348
+59.64185 -15.63143
+60.19482 -15.70942
+60.75292 -15.78744
+61.31619 -15.86551
+61.88468 -15.94361
+62.45845 -16.02175
+63.03753 -16.09992
+63.62198 -16.17813
+64.21186 -16.25638
+64.80720 -16.33466
+65.40806 -16.41297
+66.01449 -16.49132
+66.62655 -16.56969
+67.24427 -16.64810
+67.86773 -16.72655
+68.49697 -16.80502
+69.13204 -16.88352
+69.77300 -16.96205
+70.41990 -17.04061
+71.07280 -17.11920
+71.73175 -17.19782
+72.39681 -17.27647
+73.06804 -17.35514
+73.74549 -17.43384
+74.42922 -17.51257
+75.11929 -17.59132
+75.81576 -17.67010
+76.51869 -17.74890
+77.22814 -17.82772
+77.94416 -17.90657
+78.66682 -17.98545
+79.39618 -18.06435
+80.13230 -18.14327
+80.87525 -18.22221
+81.62509 -18.30117
+82.38187 -18.38016
+83.14568 -18.45916
+83.91656 -18.53819
+84.69460 -18.61724
+85.47985 -18.69631
+86.27237 -18.77540
+87.07225 -18.85450
+87.87954 -18.93363
+88.69432 -19.01277
+89.51665 -19.09194
+90.34660 -19.17112
+91.18425 -19.25032
+92.02967 -19.32953
+92.88292 -19.40877
+93.74409 -19.48802
+94.61324 -19.56728
+95.49045 -19.64657
+96.37579 -19.72587
+97.26934 -19.80518
+98.17117 -19.88451
+99.08137 -19.96385
+100.00000 -20.04321
+}
+
+\def\DataPhaseXmin{1}
+\def\DataPhaseXmax{100}
+\def\DataPhaseYmin{-85}
+\def\DataPhaseYmax{-5}
+\def\DataPhaseDxV{20}
+\def\DataPhaseDyV{16}
+\def\DataPhase{
+1.00000 -5.71059
+1.00927 -5.76318
+1.01863 -5.81625
+1.02807 -5.86980
+1.03761 -5.92384
+1.04723 -5.97837
+1.05693 -6.03339
+1.06673 -6.08891
+1.07662 -6.14493
+1.08661 -6.20146
+1.09668 -6.25851
+1.10685 -6.31607
+1.11711 -6.37415
+1.12747 -6.43275
+1.13792 -6.49188
+1.14847 -6.55155
+1.15912 -6.61176
+1.16987 -6.67251
+1.18071 -6.73381
+1.19166 -6.79566
+1.20271 -6.85807
+1.21386 -6.92104
+1.22511 -6.98458
+1.23647 -7.04869
+1.24794 -7.11337
+1.25951 -7.17864
+1.27118 -7.24449
+1.28297 -7.31094
+1.29486 -7.37798
+1.30687 -7.44562
+1.31899 -7.51387
+1.33122 -7.58272
+1.34356 -7.65220
+1.35602 -7.72229
+1.36859 -7.79301
+1.38128 -7.86437
+1.39408 -7.93636
+1.40701 -8.00899
+1.42005 -8.08227
+1.43322 -8.15620
+1.44651 -8.23079
+1.45992 -8.30604
+1.47345 -8.38196
+1.48712 -8.45855
+1.50090 -8.53583
+1.51482 -8.61379
+1.52886 -8.69243
+1.54304 -8.77178
+1.55734 -8.85182
+1.57178 -8.93258
+1.58636 -9.01404
+1.60106 -9.09622
+1.61591 -9.17913
+1.63089 -9.26277
+1.64601 -9.34714
+1.66127 -9.43225
+1.67668 -9.51811
+1.69222 -9.60472
+1.70791 -9.69209
+1.72374 -9.78022
+1.73973 -9.86912
+1.75586 -9.95880
+1.77214 -10.04926
+1.78857 -10.14051
+1.80515 -10.23255
+1.82189 -10.32539
+1.83878 -10.41903
+1.85583 -10.51349
+1.87303 -10.60876
+1.89040 -10.70486
+1.90792 -10.80178
+1.92561 -10.89954
+1.94347 -10.99814
+1.96149 -11.09759
+1.97967 -11.19790
+1.99803 -11.29906
+2.01655 -11.40109
+2.03525 -11.50399
+2.05412 -11.60776
+2.07316 -11.71243
+2.09238 -11.81798
+2.11178 -11.92442
+2.13136 -12.03177
+2.15112 -12.14003
+2.17107 -12.24921
+2.19120 -12.35930
+2.21151 -12.47032
+2.23202 -12.58227
+2.25271 -12.69517
+2.27360 -12.80900
+2.29468 -12.92379
+2.31595 -13.03954
+2.33742 -13.15625
+2.35910 -13.27393
+2.38097 -13.39258
+2.40304 -13.51222
+2.42532 -13.63284
+2.44781 -13.75446
+2.47050 -13.87708
+2.49341 -14.00070
+2.51653 -14.12533
+2.53986 -14.25098
+2.56341 -14.37766
+2.58717 -14.50536
+2.61116 -14.63410
+2.63537 -14.76388
+2.65980 -14.89470
+2.68446 -15.02658
+2.70935 -15.15952
+2.73447 -15.29351
+2.75983 -15.42858
+2.78541 -15.56472
+2.81124 -15.70194
+2.83730 -15.84025
+2.86361 -15.97965
+2.89016 -16.12014
+2.91696 -16.26173
+2.94400 -16.40443
+2.97130 -16.54824
+2.99884 -16.69317
+3.02665 -16.83922
+3.05471 -16.98639
+3.08303 -17.13470
+3.11162 -17.28413
+3.14047 -17.43471
+3.16958 -17.58644
+3.19897 -17.73931
+3.22863 -17.89334
+3.25856 -18.04852
+3.28877 -18.20487
+3.31927 -18.36238
+3.35004 -18.52106
+3.38110 -18.68091
+3.41245 -18.84194
+3.44409 -19.00415
+3.47602 -19.16755
+3.50825 -19.33213
+3.54077 -19.49790
+3.57360 -19.66487
+3.60673 -19.83303
+3.64017 -20.00239
+3.67392 -20.17295
+3.70799 -20.34472
+3.74237 -20.51769
+3.77706 -20.69187
+3.81208 -20.86726
+3.84743 -21.04386
+3.88310 -21.22168
+3.91910 -21.40071
+3.95544 -21.58096
+3.99211 -21.76242
+4.02912 -21.94511
+4.06648 -22.12901
+4.10418 -22.31413
+4.14223 -22.50047
+4.18064 -22.68804
+4.21940 -22.87682
+4.25852 -23.06682
+4.29800 -23.25804
+4.33785 -23.45048
+4.37807 -23.64413
+4.41866 -23.83901
+4.45963 -24.03509
+4.50098 -24.23239
+4.54271 -24.43090
+4.58482 -24.63062
+4.62733 -24.83155
+4.67023 -25.03368
+4.71353 -25.23701
+4.75724 -25.44154
+4.80134 -25.64726
+4.84586 -25.85417
+4.89079 -26.06227
+4.93613 -26.27156
+4.98190 -26.48202
+5.02809 -26.69365
+5.07471 -26.90645
+5.12176 -27.12041
+5.16924 -27.33554
+5.21717 -27.55181
+5.26554 -27.76923
+5.31436 -27.98778
+5.36363 -28.20747
+5.41336 -28.42828
+5.46355 -28.65021
+5.51421 -28.87325
+5.56533 -29.09738
+5.61693 -29.32262
+5.66901 -29.54893
+5.72157 -29.77632
+5.77462 -30.00478
+5.82815 -30.23429
+5.88219 -30.46485
+5.93673 -30.69645
+5.99177 -30.92907
+6.04732 -31.16271
+6.10339 -31.39735
+6.15998 -31.63298
+6.21709 -31.86959
+6.27473 -32.10717
+6.33291 -32.34571
+6.39162 -32.58518
+6.45088 -32.82559
+6.51069 -33.06692
+6.57106 -33.30915
+6.63198 -33.55226
+6.69347 -33.79625
+6.75553 -34.04110
+6.81816 -34.28680
+6.88138 -34.53333
+6.94518 -34.78067
+7.00957 -35.02880
+7.07456 -35.27772
+7.14015 -35.52741
+7.20635 -35.77785
+7.27317 -36.02901
+7.34060 -36.28090
+7.40866 -36.53348
+7.47735 -36.78674
+7.54667 -37.04066
+7.61664 -37.29523
+7.68726 -37.55042
+7.75853 -37.80621
+7.83047 -38.06260
+7.90307 -38.31955
+7.97634 -38.57705
+8.05029 -38.83508
+8.12493 -39.09362
+8.20026 -39.35265
+8.27629 -39.61214
+8.35302 -39.87209
+8.43047 -40.13246
+8.50863 -40.39324
+8.58752 -40.65440
+8.66714 -40.91593
+8.74750 -41.17780
+8.82860 -41.43999
+8.91045 -41.70249
+8.99307 -41.96526
+9.07645 -42.22829
+9.16060 -42.49155
+9.24553 -42.75502
+9.33125 -43.01869
+9.41777 -43.28252
+9.50508 -43.54650
+9.59321 -43.81061
+9.68215 -44.07481
+9.77192 -44.33909
+9.86252 -44.60343
+9.95396 -44.86781
+10.04625 -45.13219
+10.13939 -45.39657
+10.23340 -45.66091
+10.32828 -45.92519
+10.42404 -46.18939
+10.52069 -46.45350
+10.61823 -46.71748
+10.71668 -46.98131
+10.81604 -47.24498
+10.91632 -47.50845
+11.01753 -47.77171
+11.11968 -48.03474
+11.22277 -48.29751
+11.32683 -48.56001
+11.43184 -48.82220
+11.53783 -49.08407
+11.64481 -49.34560
+11.75277 -49.60676
+11.86174 -49.86754
+11.97171 -50.12791
+12.08271 -50.38786
+12.19473 -50.64735
+12.30780 -50.90638
+12.42191 -51.16492
+12.53708 -51.42295
+12.65332 -51.68045
+12.77063 -51.93740
+12.88904 -52.19379
+13.00854 -52.44958
+13.12915 -52.70477
+13.25087 -52.95934
+13.37373 -53.21326
+13.49772 -53.46652
+13.62287 -53.71910
+13.74917 -53.97099
+13.87665 -54.22215
+14.00531 -54.47259
+14.13516 -54.72228
+14.26621 -54.97120
+14.39848 -55.21933
+14.53198 -55.46667
+14.66671 -55.71320
+14.80269 -55.95890
+14.93993 -56.20375
+15.07845 -56.44774
+15.21825 -56.69085
+15.35935 -56.93308
+15.50175 -57.17441
+15.64548 -57.41482
+15.79053 -57.65429
+15.93694 -57.89283
+16.08469 -58.13041
+16.23382 -58.36702
+16.38434 -58.60265
+16.53624 -58.83729
+16.68956 -59.07093
+16.84430 -59.30355
+17.00047 -59.53515
+17.15809 -59.76571
+17.31717 -59.99522
+17.47773 -60.22368
+17.63977 -60.45107
+17.80332 -60.67738
+17.96838 -60.90262
+18.13498 -61.12675
+18.30312 -61.34979
+18.47281 -61.57172
+18.64409 -61.79253
+18.81694 -62.01222
+18.99141 -62.23077
+19.16748 -62.44819
+19.34520 -62.66446
+19.52456 -62.87959
+19.70558 -63.09355
+19.88828 -63.30635
+20.07267 -63.51798
+20.25878 -63.72844
+20.44661 -63.93773
+20.63618 -64.14583
+20.82751 -64.35274
+21.02061 -64.55846
+21.21550 -64.76299
+21.41220 -64.96632
+21.61073 -65.16845
+21.81109 -65.36938
+22.01331 -65.56910
+22.21741 -65.76761
+22.42340 -65.96491
+22.63130 -66.16099
+22.84112 -66.35587
+23.05289 -66.54952
+23.26663 -66.74196
+23.48235 -66.93318
+23.70006 -67.12318
+23.91980 -67.31196
+24.14157 -67.49953
+24.36540 -67.68587
+24.59130 -67.87099
+24.81930 -68.05489
+25.04942 -68.23758
+25.28166 -68.41904
+25.51606 -68.59929
+25.75263 -68.77832
+25.99140 -68.95614
+26.23238 -69.13274
+26.47559 -69.30813
+26.72106 -69.48231
+26.96881 -69.65528
+27.21885 -69.82705
+27.47121 -69.99761
+27.72591 -70.16697
+27.98297 -70.33513
+28.24241 -70.50210
+28.50426 -70.66787
+28.76854 -70.83245
+29.03527 -70.99585
+29.30447 -71.15806
+29.57617 -71.31909
+29.85038 -71.47894
+30.12714 -71.63762
+30.40646 -71.79513
+30.68838 -71.95148
+30.97291 -72.10666
+31.26007 -72.26069
+31.54990 -72.41356
+31.84242 -72.56529
+32.13764 -72.71587
+32.43561 -72.86530
+32.73634 -73.01361
+33.03985 -73.16078
+33.34618 -73.30683
+33.65535 -73.45176
+33.96739 -73.59557
+34.28231 -73.73827
+34.60016 -73.87986
+34.92096 -74.02035
+35.24473 -74.15975
+35.57150 -74.29806
+35.90130 -74.43528
+36.23416 -74.57142
+36.57011 -74.70649
+36.90917 -74.84048
+37.25137 -74.97342
+37.59675 -75.10530
+37.94533 -75.23612
+38.29714 -75.36590
+38.65221 -75.49464
+39.01058 -75.62234
+39.37226 -75.74902
+39.73730 -75.87467
+40.10573 -75.99930
+40.47757 -76.12292
+40.85286 -76.24554
+41.23163 -76.36716
+41.61391 -76.48778
+41.99973 -76.60742
+42.38913 -76.72607
+42.78214 -76.84375
+43.17880 -76.96046
+43.57913 -77.07621
+43.98317 -77.19100
+44.39097 -77.30483
+44.80254 -77.41773
+45.21792 -77.52968
+45.63716 -77.64070
+46.06029 -77.75079
+46.48734 -77.85997
+46.91835 -77.96823
+47.35335 -78.07558
+47.79239 -78.18202
+48.23549 -78.28757
+48.68271 -78.39224
+49.13407 -78.49601
+49.58962 -78.59891
+50.04939 -78.70094
+50.51342 -78.80210
+50.98176 -78.90241
+51.45444 -79.00186
+51.93150 -79.10046
+52.41298 -79.19822
+52.89893 -79.29514
+53.38938 -79.39124
+53.88438 -79.48651
+54.38397 -79.58097
+54.88820 -79.67461
+55.39709 -79.76745
+55.91071 -79.85949
+56.42908 -79.95074
+56.95227 -80.04120
+57.48030 -80.13088
+58.01323 -80.21978
+58.55110 -80.30791
+59.09396 -80.39528
+59.64185 -80.48189
+60.19482 -80.56775
+60.75292 -80.65286
+61.31619 -80.73723
+61.88468 -80.82087
+62.45845 -80.90378
+63.03753 -80.98596
+63.62198 -81.06742
+64.21186 -81.14818
+64.80720 -81.22822
+65.40806 -81.30757
+66.01449 -81.38621
+66.62655 -81.46417
+67.24427 -81.54145
+67.86773 -81.61804
+68.49697 -81.69396
+69.13204 -81.76921
+69.77300 -81.84380
+70.41990 -81.91773
+71.07280 -81.99101
+71.73175 -82.06364
+72.39681 -82.13563
+73.06804 -82.20699
+73.74549 -82.27771
+74.42922 -82.34780
+75.11929 -82.41728
+75.81576 -82.48613
+76.51869 -82.55438
+77.22814 -82.62202
+77.94416 -82.68906
+78.66682 -82.75551
+79.39618 -82.82136
+80.13230 -82.88663
+80.87525 -82.95131
+81.62509 -83.01542
+82.38187 -83.07896
+83.14568 -83.14193
+83.91656 -83.20434
+84.69460 -83.26619
+85.47985 -83.32749
+86.27237 -83.38824
+87.07225 -83.44845
+87.87954 -83.50812
+88.69432 -83.56725
+89.51665 -83.62585
+90.34660 -83.68393
+91.18425 -83.74149
+92.02967 -83.79854
+92.88292 -83.85507
+93.74409 -83.91109
+94.61324 -83.96661
+95.49045 -84.02163
+96.37579 -84.07616
+97.26934 -84.13020
+98.17117 -84.18375
+99.08137 -84.23682
+100.00000 -84.28941
+}
+
+\def\DataGroupDummyXmin{1}
+\def\DataGroupDummyXmax{100}
+\def\DataGroupDummyYmin{-85}
+\def\DataGroupDummyYmax{-0}
+\def\DataGroupDummyDxV{20}
+\def\DataGroupDummyDyV{17}
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/data_Nyquist.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/data_Nyquist.tex
new file mode 100644
index 0000000000..ae8e7aa77e
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/data_Nyquist.tex
@@ -0,0 +1,302 @@
+% EPLdata written by export2latex
+% date: 14-Oct-2011
+
+\def\ExpDate{14-Oct-2011}
+\def\DataNyquistPosXmin{0.0}
+\def\DataNyquistPosXmax{1.0}
+\def\DataNyquistPosYmin{-0.50}
+\def\DataNyquistPosYmax{0.00}
+\def\DataNyquistPosDxV{0.2}
+\def\DataNyquistPosDyV{0.10}
+\def\DataNyquistPos{
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00001
+1.00000 -0.00002
+1.00000 -0.00010
+1.00000 -0.00100
+1.00000 -0.00200
+0.99990 -0.01000
+0.99960 -0.01999
+0.99948 -0.02273
+0.99933 -0.02583
+0.99914 -0.02936
+0.99889 -0.03337
+0.99856 -0.03792
+0.99814 -0.04310
+0.99760 -0.04897
+0.99690 -0.05563
+0.99599 -0.06319
+0.99483 -0.07175
+0.99332 -0.08144
+0.99139 -0.09241
+0.99010 -0.09901
+0.98890 -0.10479
+0.98569 -0.11875
+0.98159 -0.13444
+0.97633 -0.15202
+0.96962 -0.17163
+0.96108 -0.19340
+0.95027 -0.21740
+0.93664 -0.24360
+0.91961 -0.27190
+0.89848 -0.30201
+0.87258 -0.33345
+0.84123 -0.36546
+0.80391 -0.39704
+0.76031 -0.42690
+0.71051 -0.45353
+0.65505 -0.47535
+0.59503 -0.49089
+0.53202 -0.49897
+0.50000 -0.50000
+0.46798 -0.49897
+0.40497 -0.49089
+0.34495 -0.47535
+0.28949 -0.45353
+0.23969 -0.42690
+0.19609 -0.39704
+0.15877 -0.36546
+0.12742 -0.33345
+0.10152 -0.30201
+0.08039 -0.27190
+0.06336 -0.24360
+0.04973 -0.21740
+0.03892 -0.19340
+0.03038 -0.17163
+0.02367 -0.15202
+0.01841 -0.13444
+0.01431 -0.11875
+0.01110 -0.10479
+0.00990 -0.09901
+0.00861 -0.09241
+0.00668 -0.08144
+0.00517 -0.07175
+0.00401 -0.06319
+0.00310 -0.05563
+0.00240 -0.04897
+0.00186 -0.04310
+0.00144 -0.03792
+0.00111 -0.03337
+0.00086 -0.02936
+0.00067 -0.02583
+0.00052 -0.02273
+0.00040 -0.01999
+0.00010 -0.01000
+0.00000 -0.00200
+0.00000 -0.00100
+0.00000 -0.00010
+0.00000 -0.00002
+0.00000 -0.00001
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+0.00000 -0.00000
+}
+
+\def\DataNyquistNegXmin{0.0}
+\def\DataNyquistNegXmax{1.0}
+\def\DataNyquistNegYmin{-0.00}
+\def\DataNyquistNegYmax{0.50}
+\def\DataNyquistNegDxV{0.2}
+\def\DataNyquistNegDyV{0.10}
+\def\DataNyquistNeg{
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 -0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00000
+1.00000 0.00001
+1.00000 0.00002
+1.00000 0.00010
+1.00000 0.00100
+1.00000 0.00200
+0.99990 0.01000
+0.99960 0.01999
+0.99948 0.02273
+0.99933 0.02583
+0.99914 0.02936
+0.99889 0.03337
+0.99856 0.03792
+0.99814 0.04310
+0.99760 0.04897
+0.99690 0.05563
+0.99599 0.06319
+0.99483 0.07175
+0.99332 0.08144
+0.99139 0.09241
+0.99010 0.09901
+0.98890 0.10479
+0.98569 0.11875
+0.98159 0.13444
+0.97633 0.15202
+0.96962 0.17163
+0.96108 0.19340
+0.95027 0.21740
+0.93664 0.24360
+0.91961 0.27190
+0.89848 0.30201
+0.87258 0.33345
+0.84123 0.36546
+0.80391 0.39704
+0.76031 0.42690
+0.71051 0.45353
+0.65505 0.47535
+0.59503 0.49089
+0.53202 0.49897
+0.50000 0.50000
+0.46798 0.49897
+0.40497 0.49089
+0.34495 0.47535
+0.28949 0.45353
+0.23969 0.42690
+0.19609 0.39704
+0.15877 0.36546
+0.12742 0.33345
+0.10152 0.30201
+0.08039 0.27190
+0.06336 0.24360
+0.04973 0.21740
+0.03892 0.19340
+0.03038 0.17163
+0.02367 0.15202
+0.01841 0.13444
+0.01431 0.11875
+0.01110 0.10479
+0.00990 0.09901
+0.00861 0.09241
+0.00668 0.08144
+0.00517 0.07175
+0.00401 0.06319
+0.00310 0.05563
+0.00240 0.04897
+0.00186 0.04310
+0.00144 0.03792
+0.00111 0.03337
+0.00086 0.02936
+0.00067 0.02583
+0.00052 0.02273
+0.00040 0.01999
+0.00010 0.01000
+0.00000 0.00200
+0.00000 0.00100
+0.00000 0.00010
+0.00000 0.00002
+0.00000 0.00001
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+0.00000 0.00000
+}
+
+\def\DataNyquistArrowPosXmin{0.495}
+\def\DataNyquistArrowPosXmax{0.506}
+\def\DataNyquistArrowPosYmin{-0.49997525}
+\def\DataNyquistArrowPosYmax{-0.49997474}
+\def\DataNyquistArrowPosDxV{0.002}
+\def\DataNyquistArrowPosDyV{0.00000010}
+\def\DataNyquistArrowPos{
+0.50502499874 -0.49997474875
+0.49502499876 -0.49997524875
+}
+
+\def\DataNyquistArrowNegXmin{0.495}
+\def\DataNyquistArrowNegXmax{0.506}
+\def\DataNyquistArrowNegYmin{0.49997474}
+\def\DataNyquistArrowNegYmax{0.49997525}
+\def\DataNyquistArrowNegDxV{0.002}
+\def\DataNyquistArrowNegDyV{0.00000010}
+\def\DataNyquistArrowNeg{
+0.50502499874 0.49997474875
+0.49502499876 0.49997524875
+}
+
+\def\DataNyquistMarkPosXmin{0.0}
+\def\DataNyquistMarkPosXmax{1.0}
+\def\DataNyquistMarkPosYmin{-0.40}
+\def\DataNyquistMarkPosYmax{0.00}
+\def\DataNyquistMarkPosDxV{0.2}
+\def\DataNyquistMarkPosDyV{0.08}
+\def\DataNyquistMarkPos{
+1.00000 0.00000
+0.80000 -0.40000
+0.00000 -0.00000
+}
+
+\def\DataNyquistMarkNegXmin{0.0}
+\def\DataNyquistMarkNegXmax{1.0}
+\def\DataNyquistMarkNegYmin{-0.00}
+\def\DataNyquistMarkNegYmax{0.40}
+\def\DataNyquistMarkNegDxV{0.2}
+\def\DataNyquistMarkNegDyV{0.08}
+\def\DataNyquistMarkNeg{
+1.00000 -0.00000
+0.80000 0.40000
+0.00000 0.00000
+}
+
+\def\DataGroupDummyXmin{0.0}
+\def\DataGroupDummyXmax{1.0}
+\def\DataGroupDummyYmin{-0.5}
+\def\DataGroupDummyYmax{0.5}
+\def\DataGroupDummyDxV{0.2}
+\def\DataGroupDummyDyV{0.2}
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/data_SprungantwortPT1Glied.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/data_SprungantwortPT1Glied.tex
new file mode 100644
index 0000000000..4fba2df986
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/data_SprungantwortPT1Glied.tex
@@ -0,0 +1,69 @@
+% EPLdata written by export2latex
+% date: 27-Sep-2011
+
+\def\ExpDate{27-Sep-2011}
+\def\DataSprungantwortXmin{0.0}
+\def\DataSprungantwortXmax{4.0}
+\def\DataSprungantwortYmin{0}
+\def\DataSprungantwortYmax{10}
+\def\DataSprungantwortDxV{0.8}
+\def\DataSprungantwortDyV{2}
+\def\DataSprungantwort{
+0.0000 0.0000
+0.0816 1.5063
+0.1633 2.7858
+0.2449 3.8725
+0.3265 4.7955
+0.4082 5.5795
+0.4898 6.2454
+0.5714 6.8109
+0.6531 7.2913
+0.7347 7.6993
+0.8163 8.0459
+0.8980 8.3403
+0.9796 8.5903
+1.0612 8.8026
+1.1429 8.9830
+1.2245 9.1362
+1.3061 9.2663
+1.3878 9.3768
+1.4694 9.4707
+1.5510 9.5504
+1.6327 9.6181
+1.7143 9.6757
+1.7959 9.7245
+1.8776 9.7660
+1.9592 9.8013
+2.0408 9.8312
+2.1224 9.8566
+2.2041 9.8782
+2.2857 9.8966
+2.3673 9.9121
+2.4490 9.9254
+2.5306 9.9366
+2.6122 9.9462
+2.6939 9.9543
+2.7755 9.9612
+2.8571 9.9670
+2.9388 9.9720
+3.0204 9.9762
+3.1020 9.9798
+3.1837 9.9828
+3.2653 9.9854
+3.3469 9.9876
+3.4286 9.9895
+3.5102 9.9911
+3.5918 9.9924
+3.6735 9.9936
+3.7551 9.9945
+3.8367 9.9953
+3.9184 9.9961
+4.0000 9.9966
+}
+
+\def\DataGroupDummyXmin{0.0}
+\def\DataGroupDummyXmax{4.0}
+\def\DataGroupDummyYmin{0}
+\def\DataGroupDummyYmax{10}
+\def\DataGroupDummyDxV{0.8}
+\def\DataGroupDummyDyV{2}
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/furtherEx_TickLabels.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/furtherEx_TickLabels.tex
new file mode 100644
index 0000000000..4b42a10ca7
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/furtherEx_TickLabels.tex
@@ -0,0 +1,18 @@
+\begin{NumericDataPlot}{\textwidth}{6cm}
+ \setxAxis{xMin=1, xMax=1.6, Dx=0.1, DDx=0.2}
+ \setyAxis{yMin=75, yMax=130, Dy=12.5}
+
+ \plotxAxis[NoTickLabel]{x-axis label}
+ \plotyAxis[NoLabel, NoTickLabel]{y-axis label}
+
+ \PutTickLabelXaxis[x=1.2, ax=lower]{test}
+ \PutTickLabelXaxis[x=1.1, ax=upper]{test1}
+
+ \PutTickLabelYaxis[y=80, ax=left]{test}
+ \PutTickLabelYaxis[y=100, ax=right]{test1}
+
+
+ \listplot[style=StdLineStyA]{\IdentI}
+ \listplot[style=StdLineStyB]{\IdentII}
+
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleI.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleI.tex
new file mode 100644
index 0000000000..f115f4bf30
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleI.tex
@@ -0,0 +1,76 @@
+% define linestyles
+\newpsstyle{Database}{linecolor=LineColorA, linestyle=none, dotstyle=*,
+showpoints=true, dotsize=5pt}
+\newpsstyle{Result}{linecolor=LineColorB, linestyle=none, dotstyle=+,
+showpoints=true, dotsize=10pt}
+
+\begin{center}
+ \begin{NumericDataPlot}[xPicMin=0, xPicMax=1050,
+ yPicMin=0, yPicMax=1450]{\textwidth}{0.85\textheight}
+
+ % --- definition of the axis and the grid ---
+ % set the axis of the lower left corner
+ \setxAxis{xMin=2, xMax=17, Dx=4, xCoordMin=0, xCoordMax=500}
+ \setyAxis{yMin=20, yMax=70, Dy=20, yCoordMin=0, yCoordMax=500}
+
+ % plot the axis of the lower left corner
+ \plotxAxis{Stichnummer}
+ \plotyAxis{$F_{roll}$ in $\si{\mega\newton}$}
+
+
+
+
+
+ \listplot[style=Database]{\DataA}
+ \listplot[style=Result]{\DataB}
+ \listplot[style=StdLineStyC]{\DataC}
+ \listplot[style=StdLineStyD]{\DataD}
+ \listplot[style=StdLineStyE]{\DataE}
+ \listplot[style=StdLineStyF]{\DataF}
+ \listplot[style=StdLineStyG]{\DataG}
+
+ % set the y-axis for the plot in the middle of the left side
+ % x-axis remains the same
+ \setyAxis{yMin=20, yMax=70, Dy=20, yCoordMin=550, yCoordMax=1050}
+ % plot the axis (x-axis without ticklabels)
+ \plotxAxis[NoTickLabel,LabelSep=1ex]{a) Ein plot}
+ \plotyAxis{$F_{roll}$ in $\si{\mega\newton}$}
+
+ \listplot[style=Database]{\DataA}
+ \listplot[style=Result]{\DataB}
+
+ % set axis for the plot at the right side
+ \setxAxis{xMin=2, xMax=17, Dx=4, xCoordMin=600, xCoordMax=1050}
+ \setyAxis{yMin=20, yMax=70, Dy=10, yCoordMin=0, yCoordMax=1050}
+
+ % plot the axis at the right side (y-axis without label)
+ \plotxAxis{Stichnummer}
+ \plotyAxis[NoLabel]{$F_{roll}$ in $\mega\newton$}
+
+ \listplot[style=Database]{\DataA}
+ \listplot[style=Result]{\DataB}
+ \listplot[style=StdLineStyC]{\DataC}
+ \listplot[style=StdLineStyD]{\DataD}
+ \listplot[style=StdLineStyE]{\DataE}
+ \listplot[style=StdLineStyF]{\DataF}
+ \listplot[style=StdLineStyG]{\DataG}
+
+ % set the axis for the plot at the top
+ \setxAxis{xMin=8, xMax=17, Dx=1, xCoordMin=0, xCoordMax=1050}
+ \setyAxis{yMin=35, yMax=65, Dy=10, yO=40, yCoordMin=1150, yCoordMax=1450}
+
+ % plot the axis for the plot at the top
+ \plotxAxis[NoLabel]{Stichnummer}
+ \plotyAxis[NoLabel]{$F_{roll}$ in $\mega\newton$}
+
+ % plot only part of the data
+ \listplot[style=Database, xStart=11, xEnd=17]{\DataA}
+ \listplot[style=Result, xStart=8, xEnd=13]{\DataB}
+
+ \end{NumericDataPlot}
+
+ % put legend outside of the plot
+ \LegendDefinition[nrCols=1, LabelOrientation=r]{
+ \LegLine{style=Database} & Werte aus der Datenbank \\
+ \LegLine{style=Result} & Modell}
+\end{center} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleII.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleII.tex
new file mode 100644
index 0000000000..7c956e943a
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleII.tex
@@ -0,0 +1,24 @@
+\newpsstyle{Database}{linecolor=LineColorA, linestyle=none, dotstyle=*,
+showpoints=true, dotsize=5pt}
+\newpsstyle{Result}{linecolor=LineColorB, linestyle=none, dotstyle=+,
+showpoints=true, dotsize=10pt}
+
+\begin{NumericDataPlot}{\textwidth}{0.25\textheight}
+
+ % --- definition of the axis and the grid ---
+ \setxAxis{xMin=2, xMax=17, Dx=4}
+ \setyAxis{yMin=20, yMax=70, Dy=20}
+
+ % plot the axis of the lower left corner
+ \plotxAxis{Stichnummer}
+ \plotyAxis{$F_{roll}$ in $\si{\mega\newton}$}
+
+ \listplot[style=Database]{\DataA}
+
+ % define a second y-axis
+ \setyAxis{yMin=40, yMax=90, Dy=20}
+ \plotyAxis[AxisStyle=Right, NoGrid]{$F_{roll}$}
+
+ \listplot[style=Result]{\DataA}
+
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleIII.tex b/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleIII.tex
new file mode 100644
index 0000000000..5be87bb1b1
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/examples/multiplots_exampleIII.tex
@@ -0,0 +1,24 @@
+\newpsstyle{Database}{linecolor=LineColorA, linestyle=none, dotstyle=*,
+showpoints=true, dotsize=5pt}
+\newpsstyle{Result}{linecolor=LineColorB, linestyle=none, dotstyle=+,
+showpoints=true, dotsize=10pt}
+
+\begin{NumericDataPlot}{\textwidth}{0.25\textheight}
+
+ % --- definition of the axis and the grid ---
+ \setxAxis{xMin=2, xMax=17, Dx=4}
+ \setyAxis{yMin=20, yMax=70, Dy=20}
+
+ % plot the axis of the lower left corner
+ \plotxAxis[LabelRot=15]{Stichnummer}
+ \plotyAxis[LabelRot=30, LabelRefPt=tr]{$F_{roll}$ in $\si{\mega\newton}$}
+
+ \listplot[style=Database]{\DataA}
+
+ % define a second y-axis
+ \setyAxis{yMin=40, yMax=90, Dy=20}
+ \plotyAxis[AxisStyle=Right, NoGrid, LabelRot=90]{$F_{roll}$}
+
+ \listplot[style=Result]{\DataA}
+
+\end{NumericDataPlot} \ No newline at end of file
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/fig_NoiseData_ClosedLine.eps b/graphics/pstricks/contrib/numericplots/doc/src/fig_NoiseData_ClosedLine.eps
new file mode 100644
index 0000000000..43cd87b3e1
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/fig_NoiseData_ClosedLine.eps
@@ -0,0 +1,8412 @@
+%!PS-Adobe-2.0 EPSF-1.2
+%%Pages: 1
+%%DocumentFonts:
+%%BoundingBox: 131 676 316 781
+%%HiResBoundingBox: 131.826441 676.583979 315.618178 780.912328
+%%EndComments
+
+%%BeginProlog
+%%BeginPreview: 185 104 8 520
+% 11b67669445044444b4b444450444444504444445044444b4b4444504444765c44444b4b44445044
+% 4444504444445044444b4b4444504444445044444b4b444450444444504444445044444b4b444450
+% 4444445044444b4b4444504444445044444450444450444444504444445044444b4b444450444444
+% 5044444450444450444444504444445044444b4b4444504444445044444b4b444450444444504444
+% 445044444b4b4444504444445044444b4b4444504450769e71
+% 22f2c9b88c9c8888949488889c8c8888a088888c9c8890d6948888a08888abbd8888949488889c8c
+% 8888a088b9b09c888894948888a088888c9c8888949488889c8cd688a088888c9c888894948888a0
+% 88888c9c88889494d6889c8c8888a088888c9c88889c8c8888a088888ca1d388949488889c8c8888
+% a088888c9c88889c8c8888d9ad888c9c8888949488889c8c8888a0888894948888db8c8888a08888
+% 8c9c8888949488889c8c8888a08888d99488889c8c98c7eace
+% 00df0000000000000000000000000000000000000000008800000000000066aa0000000000000000
+% 00006600444400000000000000004400000000000000000000008800000000000000000000000000
+% 00000000000000008800000000000000000000000000000000000000000088000000000000000000
+% 00000000000000000000008844000000000000000000000000000000000000000088000000000000
+% 00000000000000000000000000000088000000000000004488
+% 00df00000000000000000000000000000000000000000088000000000000bbff0000000000000000
+% 0000cc0044440000000000000022bb00000000000000000000008800000000000000000000000000
+% 00000000000000008800000000000000000000000000000000000000000088000000000000000000
+% 00000000000000000000008844000044002200003355000000440011000000000088000000000000
+% 00000000000000000000000000000088000000000000004488
+% 00ab0000000000000000000000000000000000000000091a000000000000bbff0000000000000000
+% 0011ff331a090000000000000044ee00000000000000000000002200000000000000000000000000
+% 0000220055110000220000000000000000000000000000000000000000091a000000000000000000
+% 00000000000000000000001a090000774444000066bb000033444466008800440022000000000000
+% 00000000000000000000000000000022000000000000004488
+% 00ab0000000000000000000000000000000000000000091a000000000000bbff0000000000000000
+% 0088ff881a090000000000000044ff44000000000000000000002200000000000000000000000000
+% 00339944ff660000220000000000000000000000000000000000000000091a000000000000000000
+% 00000000000000000000001a090000bbbb99000088ee0000556644bb00aa00880022110000000000
+% 00000000000000000000000000000022000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 00aaff8800000000000000000066ff44000000000000000000000000000000000000000000000011
+% 66aaffffffbb00000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000011ddffff0000bbff6666889966ee66dd33dd9977997700000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 00eeff8800000000000000000099ff44000000000000000000000000000000000000000000000044
+% ffffffffffff00000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000044ffffff0000eeffffffbbffffffffffbbffffffffff00000000
+% 00000000000000000000000000000000000000000000004488
+% 009f0000000000000000000000000000000000000000112b000000000000bbff0000000000000000
+% 33ffff882b1100000000000000eeff44000000000000000000003c00000000000000000000000044
+% ff885566ffff00003c0000000000000000000000000000000000000000112b000000000000000000
+% 00000000000000000000002b110044ffffff0000bbffffffbbffffffffffbbffffffffff00000000
+% 0000000000000000000000000000003c000000000000004488
+% 00b700000000000000000000000000000000000000000009000000000000bbff0000000000000000
+% 44ffff88090000000000000044ffff44000000000000000000000900000000000000000000000044
+% ff330011eedd00000900000000000000000000000000000000000000000009000000000000000000
+% 000000000000000000000009000044ffeeff0000bbccffffbbffffffffffbbffffffffff00000000
+% 00000000000000000000000000000009000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 44ffff88000000000000000044dddd44000000000000000000000000000000000000000000000044
+% cc00000055bb33000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000044ffbbff0000bbbbffffbbffffffffffbbffffffccbb00000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 44ffff88000000000000000044bbbb44000000000000000000000000000000000000000000000044
+% bb00000022bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000044ffbbff0000bbbbffffbbffffddffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 009c00000000000000000000000000000000000000001133000000000000eeff0000000000000000
+% 44bb8888331100000000000044bbbb44000000000000000000004400000000000000000000000044
+% bb00000000bb44004400000000000000000000000000000000000000001133000000000000000000
+% 000000000000000000000033110044ffbbff0000bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000044000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000022ffff0000000000000000
+% 77bb8888000000000000000044bbbb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000088ffbbff0000bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000088ffff0000000000000000
+% 88bb8888000000000000000044bbbb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000088ffbbff0000bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00b7000000000000000000000000000000000000000000090000000000bbffff0000000000000000
+% bbbb8888090000000000000077bbbb44000000000000000000000900000000000000000000000044
+% bb00000000bb44000900000000000000000000000000000000000000000009000000000000000000
+% 000000000000000000000009000088ffbbff0022bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000000000000000000000000000000000000112b0000000000bbeeff0000000000000000
+% eebb88882b11000000000000ddbbbb44000000000000000000003c00000000000000000000000044
+% bb00000000bb44003c0000000000000000000000000000000000000000112b000000000000000000
+% 00000000000000000000002b110088ffbbff0044bbbbffffbbffff88ffffbbfffff2bbbb44000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000bbbbff0000000000000000
+% ffbb88880000000000000000ffbbbb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000088ffbbff0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00dd8c66092b00001a1a00002b090000330000092b00001a1a00003300bb8cff00001a1a00002b09
+% ff77a08800092b00001a1a00ffa0bb44092b00001a1a00002b090000330000092b00001a1a000069
+% bb00092b00bb571a00002b090000330000092b00002b090000330000092b00001a1a00002b090000
+% 330000092b00002b0900003300008cffbbff1a57bbbbffffbbffff88ffffc2ffffffbdbb44330000
+% 092b00001a1a00002b0900003300001a1a00002b092288b998
+% 00a2000000110000090900001100000011000000110011310900001100bb55ff0000090900001122
+% ff4490882b11110000090900ff60bb44001100000909000011003c00110000001100000909000050
+% bb00001100bb4b093c0011000000110000001100001100000011000000202b000909000011000000
+% 110000001100001100000036110088ffbbff094bbbbbffffbbffff88ffffbdffffffbbbb44110000
+% 00110000090900001100000011000041090000110000005088
+% 00b7000000000000000000000000000000000000000000090000000000bb44ff0000000000000044
+% bb3388880900000000000000ff22bb44000000000000000000000900000000000000000000000044
+% bb00000000bb44000900000000000000000000000000000000000000000009000000000000000000
+% 0000000000000000000000090000888800bb0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000009000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000bb44ff0000000000000044
+% bb0088880000000000000000ff00bb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000000000000000000000000000888800bb0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000bb44ff0000000000000044
+% bb0088880000000000000000ff00bb44000000000000000000000000000000000000001100001144
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000000000000022110000000000888800bb0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 009c000000000000000000000000000000000000000011330000000044cc44ff0000000000000088
+% bb0088883311000000000033ff00bb44000000000000000000004400000000000000008899338899
+% bb00000000bb44004400000000000000000000000000000000000000001133000000000000000000
+% 0000663355551188882222331122888800bb0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000044000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000ccff44ff00000000000000ee
+% bb00888800000000000000aaff00bb4400000000000000000000000000000000000000ffff55ccee
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000088aa88bb44bbcc9988443344bb8800bb0044bbbbffffbbffff88ffffccffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000033ffff44ff00000000000000ff
+% aa00888800000000000000bbee00bb4400000000000000000000000000000000000011ffffbbffff
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000bbff88ff88ffffffee998855ff8800bb0044bbbbffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00b70000000000000000000000000000000000000000000900000044ffff44ff00000000000000ff
+% 1100888809000000000000bb8800bb4400000000000000000000090000000000000077ffffffffff
+% bb00000000bb44000900000000000000000000000000000000000000000009000000000000000000
+% 0000ddffffffddffffffffefeeddff8800bb0044bbbbffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000000000000000000000000000000000000112b00000044ffdd22ff00000000000000ff
+% 000088882b110000000000bb6600bb44000000000000000000003c0000000000000088ffffaaffff
+% 8800000000bb44003c0000000000000000000000000000000000000000112b000000000000000000
+% 0000ffffffffffffffffffffffffff8800bb0044bbbbffffbbffff88ffffffffffffbbbb44000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000044ffbb00ff00000000000033ff
+% 0000888800000000000000dd4400bb440000000000000000000000000000000000008899bb44ffff
+% 4400000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000ffffffffffffddddffffffffff8800bb0044bbbbffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000044ff6600ff00000000000066ff
+% 0000448800000000000000ff4400bb440000000000000000000000000000000000008888aa44dd88
+% 4400000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000ffddffffffffbb88ffffffffff8800bb1155bb88ffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00ab0000000000000000000000000000000000001100091a11000044cc1100ff00000000000088ff
+% 000044881a090000001100ff4400bb44000000000000000000002200000033000000888855334411
+% 0000000000bb44002200000000000000000000000000000000000000002a1a110000110000331133
+% 1100ff88ffffffffbb88ffffffffff8800bb4488bb88ffffbbffff88ffffffffffffbbbb44000000
+% 44000000000000000000000000000022000000000000004488
+% 00ab00000000000000000000000000000000001177002a4888008855bb0000ff00000000000088ff
+% 000044881a090000004433ff4400bb44000000000000000000002222000066441122888800000000
+% 0000000000bb44002200000000000000000000000000000000000000446b1a550000660000888888
+% 5500ff88ffffffffbb88ffffffffff8800bb44aabb88ffffbbffff88ffffffffffffbbbb44000033
+% 77000055000000000000000000000022000000000000004488
+% 00bb000000000000000000000000000000000055aa669955ff33eeffbb0000ff000000000000bbff
+% 000044880000000000ccbbff4400bb440000000000000000000011887722cc8888bb888800000000
+% 0000000000bb4400000000000000000000000000000000000000000044bb88882222887711ff88bb
+% 8800ff88ffffffffbb88ffffffffff8800bb99ffbb88ffffbbffff88ffffffffffffbbbb55000066
+% 991133ff000000000000000000000000000000000000004488
+% 00bb000000000022000000000000000000002299eeeeccddff99ffff880000ff000000000088ee55
+% 000044880000000000ffffff0000bb440000000000000000000088ffaa88ffeeffffaa8800000000
+% 0000000000bb4400000000000000000000000000000000000000000044ffccbb99bb88bb88ffaabb
+% bb77ff88ffffffffbb88ffffffffff8800bbffffbb88ffffeeffff88ffffffffffffbbbbaa99bbee
+% cc8899ff000000000000000022000000000000000000004488
+% 009c0000000044ff00000000000000000000aaffffffffffffffffff880000ff0000000033ffff44
+% 000044993311000088ffffcc0000bb4400000000001100223300a8ffffffffffffffff8800000000
+% 0000000000bb66334400000000330000000000000000000000000000eeffffffffffffffeeffffff
+% ffeeff88ffffffffbb88ffffffffff8800bbffffbb88ffffffffff88ffffffffffffbbbbffffffff
+% ffffffff3300000000000000cc110044000000000000004488
+% 00bb0000000044ff00000000000000000000bbeeddddffeeffffff99440000ff6611000044ffdd11
+% 000044ff0022000088ffff660000bb880000000000444455884488ffffddffffffbb880000000000
+% 000000000088aa881166000000880000000000000000000000003300ffffffffffffffffffffffff
+% ffffcc88ffffffffbb88ffffffffff440088ffee5588ffffffffff88ffffffffffffbb66bbffbbff
+% ddddffff4400000000000000ff440000000000000000004488
+% 00f1e0d6bdcbccffc4c4bbbbcbbdbbbbcdbbee7ca4bb77c498ff885d220009ffcc88222244ffa409
+% 000076ff554b3c0088ffb5220044bbbb093c000022984488e5deddffa877ee9de533002222000044
+% 0000093c0088ffb57799569d44ff760000093c00003c090000447777fff2cc88f0ffffffffdeffff
+% ffffbb8cffffffffbd88ffffffffce3c000089c41188ffffffffff88ffffffffffffbd0088a877dd
+% 8c4988ffd3c4bbbbcbbdbbbbffccbbc4c4bbbbcbbdc4dfee98
+% 00b70000000044ff3300000000000000000000446644117c33004400000000bbffbb000044ff1100
+% 000044ffce44000088ff55000000bbff7722000066eeaabbffff0966004477118800000000000000
+% 000000000088ffddceffccffddff44000000007700000000000088eeff886b11bbffffffff88ffff
+% ffffbb88ffffffffaa88ffffffff8800000000770088ffffffffff88ffffffffffffbb0066770033
+% 33000055000000000000000000000009000000000000004488
+% 009f0000000044ff0000000000000000000000112200113900000000000000bbffbb000044cc0000
+% 000044ffff50000088cc00000000bbffff660000bbffffffffff3c33000011003300000000000000
+% 000000000088ffffffffffffffff8800000000ff330000000000aaffee312b00aaffffeeff55ffff
+% ffffaa88ffffffff8888ffffffff8800000000220088ffffffffff88ffffffffffffbb0044330000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb0000000000bb000000000000000000000000000000000000000000000055ffcc220044bb0000
+% 000022ccdd99000088440000000022ccddbb0000bbffcc77ff550000000000000000000000000000
+% 000000000055ffffeeffffffeeff8800000000ff440000000000bbff6600000066ccee887700ccaa
+% 66dd1188ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb000000000099000000000000000000000000000000000000000000000033ddffbb0044bb0000
+% 00000033bbff00008844000000000066bbff0000bbee8800ff000000000000000000000000000000
+% 000000000033ffee8888998866cc8800000011ff440000000000bbee000000000011883300001155
+% 44880088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00ab0000000000770000000000000000000000000000091a00000000000000008888bb0044bb0000
+% 00000000b3ff0000884400000000001100ff0000bb660000dd002200000000000000000000000000
+% 000000000000aa993f00665533bb8800000044ff440000000000bb7700091a000000440000000011
+% 44550088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000022000000000000004488
+% 00ab0000000000330000000000000000000000000000091a00000000000000001144bb0044bb0000
+% 0000000094ef1100884400000000000000ff0000bb44000066002200000000000000000000000000
+% 00000000000077002200222200bbaa00552266ff440000000000bb4400091a000000000000000000
+% 00110088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000022000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044bb0044bb0000
+% 0000000088bb4400884400000000000000ff0000bb44000000000000000000000000000000000000
+% 0000000000000000000000000077bbaa8899bbff440000000000bb44000000000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044bb0044bb0000
+% 0000000044bb5500884400000000000000ff0000bb44000000000000000000000000000000000000
+% 0000000000000000000000000044ffffbbddffff440000000000bb44000000000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 009f0000000000000000000000000000000000000000112b00000000000000000044ee0044bb0000
+% 000000002bc0aa00884400000000000000ff5500bb44000000003c00000000000000000000000000
+% 00000000000000003c0000000044ffffffffffff440000000000bb4400112b000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00b70000000000000000000000000000000000000000000900000000000000000044ff0044bb0000
+% 0000000009bbee00884400000000000000ffbb00bb44000000000900000000000000000000000000
+% 0000000000000000090000000044ffffffffffff440000000000bb44000009000000000000000000
+% 00000088ffffeeee8866ffffeeff6600000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000009000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044ff2244bb0000
+% 0000000000bbff00884400000000000000ffbb00bb44000000000000000000000000000000000000
+% 0000000000000000000000000022ffffffffffff440000000000bb44000000000000000000000000
+% 00000022cc8877bb6600113388330000000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00b70000000000000000000000000000000000000000000900000000000000000044ff8844bb0000
+% 0000000009bbff00884400000000000000eebb00bb44000000000900000000000000000000000000
+% 0000000000000000090000000000eeee55bbaaff440000000000bb44000009000000000000000000
+% 00000000881111991100000955000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000000000000000000000000000000000000112b00000000000000000044ff8844bb0000
+% 000000002b90ff00884400000000000000aabb00bb44000000003c00000000000000000000000000
+% 00000000000000003c000000000088aa004444ff440000000000bb4400112b000000000000000000
+% 00000000440000440000002b21000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044ff8844bb0000
+% 000000000055ff0088440000000000000066bb00bb44000000000000000000000000000000000000
+% 00000000000000000000000000001100001100bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044ff8844bb0000
+% 000000000033ff0088440000000000000044bb00bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00ab0000000000000000000000000000000000000000091a00000000000000000033ff8844990000
+% 000000001a09ff0088440000000000000044dd00bb44000000002200000000000000000000000000
+% 00000000000000002200000000000000000000bb440000000000bb4400091a000000000000000000
+% 00000000000000000000001a09000000000000000088ffddffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000022000000000000004488
+% 00ab0000000000000000000000000000000000000000091a00000000000000000000bb8844880000
+% 000000001a09ff2288440000000000000044ff00bb44000000002200000000000000000000000000
+% 00000000000000002200000000000000000000bb440000000000bb4400091a000000000000000000
+% 00000000000000000000001a09000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000022000000000000004488
+% 00e08c66093c0000222200003c090000440000093c000022220000440000093c000098a744883c09
+% 000044000009ff44885d2200004400000970ff22c45d00003c090000440000093c00002222000044
+% 0000093c0000222200003c090000440000093cbb443c09000044bb44093c0000222200003c090000
+% 440000093c00003c090000440000093c000022220088ffbdffffff88ffffffffffffbd0000440000
+% 093c0000222200003c090000440000222200003c092288bf98
+% 00bb000000000000000000000000000000000000000000000000000000000000000088ee66880000
+% 000000000000ff99bb440000000000000044ff88bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 009f0000000000000000000000000000000000000000112b0000000000000000000077ff88880000
+% 000000002b11ddbbbb440000000000000022ff88bb44000000003c00000000000000000000000000
+% 00000000000000003c00000000000000000000bb440000000000bb4400112b000000000000000000
+% 00000000000000000000002b11000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00b7000000000000000000000000000000000000000000090000000000000000000044ff88880000
+% 000000000900bbbbbb4400000000000000008888bb44000000000900000000000000000000000000
+% 00000000000000000900000000000000000000bb440000000000bb44000009000000000000000000
+% 00000000000000000000000900000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000009000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000000000000044ff88880000
+% 00000000000066bbbb4400000000000000008888bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000000000000033cc88880000
+% 00000000000044bbbb4400000000000000008888bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffffffffffff990000000000
+% 00000000000000000000000000000000000000000000004488
+% 009c000000000000000000000000000000000000000011330000000000000000000000bbaa880000
+% 00000000331111bbbb4400000000000000008888bb44000000004400000000000000000000000000
+% 00000000000000004400000000000000000000bb440000000000bb44001133000000000000000000
+% 00000000000000000000003311000000000000000088ffbbffffff88ffbbffffffff880000000000
+% 00000000000000000000000000000044000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000000000000000bbee880000
+% 00000000000000ccbb4400000000000000008888bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb550000110000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffbbffffffff880000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000000000000000bbff880000
+% 00000000000000ffbb44000000000000000088bbdd44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb994411441100bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffbbffffffff880000000000
+% 00000000000000000000000000000000000000000000004488
+% 00b7000000000000000000000000000000000000000000090000000000000000000000bbff880000
+% 00000000090000ffff44000000000000000088ffff00000000000900000000000000000000000000
+% 00000000000000000900000000000000000000bbccaa88444455bb44000009000000000000000000
+% 00000000000000000000000900000000000000000088ffbbffffff88ffbbffbbffff880000000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000000000000000000000000000000000000112b0000000000000000000000aaff880000
+% 000000002b1100ffff44000000000000000044ffff00000000003c00000000000000000000000000
+% 00000000000000003c00000000000000000000bbffffffaaaaaacc4400112b000000000000000000
+% 00000000000000000000002b11000000000000000088ffbbffffff88ffbbffbbffff880000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000000000000055ff880000
+% 00000000000000bbff44000000000000000044ffff00000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bbffffffffffffff44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffddff88ffbbffbbffff880000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000000000000022ff880000
+% 0000000000000088ff44000000000000000044aaff00000000000000000000000000000000000000
+% 0000000000000000000000000000000000000088ddffeeddaaffcc11000000000000000000000000
+% 00000000000000000000000000000000000000000088dd99ff779911ff99aa88bb66440000000000
+% 00000000000000000000000000000000000000000000004488
+% 009f0000000000000000000000000000000000000000112b000000000000000000000000ff880000
+% 000000002b110088ff4400000000000000000088ff00000000003c00000000000000000000000000
+% 00000000000000003c0000000000000000000000aa9988aa00ffbb0000112b000000000000000000
+% 00000000000000000000002b11000000000000000088668833445500bb883344773c000000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00b700000000000000000000000000000000000000000009000000000000000000000000ff550000
+% 0000000009000033ee3300000000000000000055dd00000000000900000000000000000000000000
+% 00000000000000000900000000000000000000008866668800aabb00000009000000000000000000
+% 00000000000000000000000900000000000000000088007700442200442200004409000000000000
+% 00000000000000000000000000000009000000000000004488
+% 00df00000000000000000000000000000000000000000088000000000000000000000000ff000000
+% 0000000044440000880000000000000000000000aa00000000008800000000000000000000000000
+% 00000000000000008800000000000000000000004433224400666600000088000000000000000000
+% 00000000000000000000008844000000000000000044004400110000000000001188000000000000
+% 00000000000000000000000000000088000000000000004488
+% 00df00000000000000000000000000000000000000000088000000000000000000000000dd000000
+% 00000000444400000000000000000000000000008800000000008800000000000000000000000000
+% 00000000000000008800000000000000000000001100001100110000000088000000000000000000
+% 00000000000000000000008844000000000000000000000000000000000000000088000000000000
+% 00000000000000000000000000000088000000000000004488
+% 11e77669445044444b4b44445044444450444444504450bc4b4444504444445044444b4b69445044
+% 44445044917f5044444b4b4444504444445044447b4b44445044bf44504444445044444b4b444450
+% 4444445044444b4bbf44504444445044444450444450444444504444445bb9444b4b444450444444
+% 5044444450444450444444bc7f44445044444b4b4444504444445044444b4b4444c1444444504444
+% 445044444b4b444450444444504444c14b444450445076bec9
+% 22ceaba08c9c8888949488889c8c8888a088888c9c888894948888a088888c9c8888949488889c8c
+% 8888a088888c9c888894948888a088888c9c8888949488889c8c8888a088888c9c888894948888a0
+% 88888c9c8888949488889c8c8888a088888c9c88889c8c8888a088888c9c8888949488889c8c8888
+% a088888c9c88889c8c8888a088888c9c8888949488889c8c8888a08888949488889c8c8888a08888
+% 8c9c8888949488889c8c8888a08888949488889c8c90a8cf7c
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000003399001177000000
+% 00000000000000000077000000000000117700000000000000000000000000000044224400000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb001177000000
+% 00000000000000000077000000000000117700000000000000000000000000003366007722000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb003344003344
+% 22330000445522002244000022442200334433442233000000000000000000008844004488000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb0000bb0000dd
+% 1144775566009900008800446600664400bb00dd1144770033888888888888118844004488000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb0000bb0000bb
+% 004488aa55448800008800aa110044aa00bb00bb0044880000000000000000008844004488000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb0000bb0000bb
+% 0044889933001100008800993300449900bb00bb0044880033888888888888117744005566000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000033dd2233dd2233dd
+% 2277aa2177445500008800227744771133dd4edd2277aa1100000000000000001188008811000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000111188000000000000000000000000000000000000000000000000440000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000338888000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+%%EndImage
+%%EndPreview
+%%Page: 1 1
+%%BeginDocument: D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\tex\graphics\ag_eps\fig_NoiseData_ClosedLine.eps
+/InitDictCount countdictstack def gsave save mark newpath
+userdict /setpagedevice /pop load put
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.992 Copyright 2012 Radical Eye Software
+%%Title: D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\tex\graphics\tmp\figure_main.dvi
+%%CreationDate: Wed Aug 08 09:40:23 2012
+%%Pages: 1
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 596 842
+%%DocumentFonts: LMRoman10-Regular
+%%DocumentPaperSizes: a4
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips -Ppdf -q -R0 -o
+%+ D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\tex\graphics\tmp\fig_NoiseData_ClosedLine.ps
+%+ D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\tex\graphics\tmp\figure_main.dvi
+%DVIPSParameters: dpi=8000
+%DVIPSSource: TeX output 2012.08.08:0940
+%%BeginProcSet: tex.pro 0 0
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
+/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
+setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
+restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
+def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
+rotate}{show}ifelse}ifelse}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0
+N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop
+false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A
+length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}
+forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{
+BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat
+{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch
+round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0
+rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B
+/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}
+B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
+-3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{
+0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: alt-rule.pro 0 0
+%!
+% Patch by TVZ
+% Makes dvips files draw rules with stroke rather than fill.
+% Makes narrow rules more predictable at low resolutions
+% after distilling to PDF.
+% May have unknown consequences for very thick rules.
+% Tested only with dvips 5.85(k).
+TeXDict begin
+/QV {
+ gsave newpath /ruleY X /ruleX X
+ Rx Ry gt
+ { ruleX ruleY Ry 2 div sub moveto Rx 0 rlineto Ry }
+ { ruleX Rx 2 div add ruleY moveto 0 Ry neg rlineto Rx }
+ ifelse
+ setlinewidth 0 setlinecap stroke grestore
+} bind def
+end
+
+%%EndProcSet
+%%BeginProcSet: psfrag.pro 0 0
+%%
+%% This is file `psfrag.pro',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% psfrag.dtx (with options: `filepro')
+%%
+%% Copyright (c) 1996 Craig Barratt, Michael C. Grant, and David Carlisle.
+%% All rights reserved.
+%%
+%% This file is part of the PSfrag package.
+%%
+userdict begin
+/PSfragLib 90 dict def
+/PSfragDict 6 dict def
+/PSfrag { PSfragLib begin load exec end } bind def
+end
+PSfragLib begin
+/RO /readonly load def
+/CP /currentpoint load def
+/CM /currentmatrix load def
+/B { bind RO def } bind def
+/X { exch def } B
+/MD { { X } forall } B
+/OE { end exec PSfragLib begin } B
+/S false def
+/tstr 8 string def
+/islev2 { languagelevel } stopped { false } { 2 ge } ifelse def
+[ /sM /tM /srcM /dstM /dM /idM /srcFM /dstFM ] { matrix def } forall
+sM currentmatrix RO pop
+dM defaultmatrix RO idM invertmatrix RO pop
+srcFM identmatrix pop
+/Hide { gsave { CP } stopped not newpath clip { moveto } if } B
+/Unhide { { CP } stopped not grestore { moveto } if } B
+/setrepl islev2 {{ /glob currentglobal def true setglobal array astore
+ globaldict exch /PSfrags exch put glob setglobal }}
+ {{ array astore /PSfrags X }} ifelse B
+/getrepl islev2 {{ globaldict /PSfrags get aload length }}
+ {{ PSfrags aload length }} ifelse B
+/convert {
+ /src X src length string
+ /c 0 def src length {
+ dup c src c get dup 32 lt { pop 32 } if put /c c 1 add def
+ } repeat
+} B
+/Begin {
+ /saver save def
+ srcFM exch 3 exch put
+ 0 ne /debugMode X 0 setrepl
+ dup /S exch dict def { S 3 1 roll exch convert exch put } repeat
+ srcM CM dup invertmatrix pop
+ mark { currentdict { end } stopped { pop exit } if } loop
+ PSfragDict counttomark { begin } repeat pop
+} B
+/End {
+ mark { currentdict end dup PSfragDict eq { pop exit } if } loop
+ counttomark { begin } repeat pop
+ getrepl saver restore
+ 7 idiv dup /S exch dict def {
+ 6 array astore /mtrx X tstr cvs /K X
+ S K [ S K known { S K get aload pop } if mtrx ] put
+ } repeat
+} B
+/Place {
+ tstr cvs /K X
+ S K known {
+ bind /proc X tM CM pop
+ CP /cY X /cX X
+ 0 0 transform idtransform neg /aY X neg /aX X
+ S K get dup length /maxiter X
+ /iter 1 def {
+ iter maxiter ne { /saver save def } if
+ tM setmatrix aX aY translate
+ [ exch aload pop idtransform ] concat
+ cX neg cY neg translate cX cY moveto
+ /proc load OE
+ iter maxiter ne { saver restore /iter iter 1 add def } if
+ } forall
+ /noXY { CP /cY X /cX X } stopped def
+ tM setmatrix noXY { newpath } { cX cY moveto } ifelse
+ } {
+ Hide OE Unhide
+ } ifelse
+} B
+/normalize {
+ 2 index dup mul 2 index dup mul add sqrt div
+ dup 4 -1 roll exch mul 3 1 roll mul
+} B
+/replace {
+ aload pop MD
+ CP /bY X /lX X gsave sM setmatrix
+ str stringwidth abs exch abs add dup 0 eq
+ { pop } { 360 exch div dup scale } ifelse
+ lX neg bY neg translate newpath lX bY moveto
+ str { /ch X ( ) dup 0 ch put false charpath ch Kproc } forall
+ flattenpath pathbbox [ /uY /uX /lY /lX ] MD
+ CP grestore moveto
+ currentfont /FontMatrix get dstFM copy dup
+ 0 get 0 lt { uX lX /uX X /lX X } if
+ 3 get 0 lt { uY lY /uY X /lY X } if
+ /cX uX lX add 0.5 mul def
+ /cY uY lY add 0.5 mul def
+ debugMode { gsave 0 setgray 1 setlinewidth
+ lX lY moveto lX uY lineto uX uY lineto uX lY lineto closepath
+ lX bY moveto uX bY lineto lX cY moveto uX cY lineto
+ cX lY moveto cX uY lineto stroke
+ grestore } if
+ dstFM dup invertmatrix dstM CM srcM
+ 2 { dstM concatmatrix } repeat pop
+ getrepl /temp X
+ S str convert get {
+ aload pop [ /rot /scl /loc /K ] MD
+ /aX cX def /aY cY def
+ loc {
+ dup 66 eq { /aY bY def } { % B
+ dup 98 eq { /aY lY def } { % b
+ dup 108 eq { /aX lX def } { % l
+ dup 114 eq { /aX uX def } { % r
+ dup 116 eq { /aY uY def } % t
+ if } ifelse } ifelse } ifelse } ifelse pop
+ } forall
+ K srcFM rot tM rotate dstM
+ 2 { tM concatmatrix } repeat aload pop pop pop
+ 2 { scl normalize 4 2 roll } repeat
+ aX aY transform
+ /temp temp 7 add def
+ } forall
+ temp setrepl
+} B
+/Rif {
+ S 3 index convert known { pop replace } { exch pop OE } ifelse
+} B
+/XA { bind [ /Kproc /str } B /XC { ] 2 array astore def } B
+/xs { pop } XA XC
+/xks { /kern load OE } XA /kern XC
+/xas { pop ax ay rmoveto } XA /ay /ax XC
+/xws { c eq { cx cy rmoveto } if } XA /c /cy /cx XC
+/xaws { ax ay rmoveto c eq { cx cy rmoveto } if }
+ XA /ay /ax /c /cy /cx XC
+/raws { xaws { awidthshow } Rif } B
+/rws { xws { widthshow } Rif } B
+/rks { xks { kshow } Rif } B
+/ras { xas { ashow } Rif } B
+/rs { xs { show } Rif } B
+/rrs { getrepl dup 2 add -1 roll //restore exec setrepl } B
+PSfragDict begin
+islev2 not { /restore { /rrs PSfrag } B } if
+/show { /rs PSfrag } B
+/kshow { /rks PSfrag } B
+/ashow { /ras PSfrag } B
+/widthshow { /rws PSfrag } B
+/awidthshow { /raws PSfrag } B
+end PSfragDict RO pop
+end
+
+%%EndProcSet
+%%BeginProcSet: pstricks.pro 0 0
+% $Id: pstricks.pro 647 2012-02-12 15:03:40Z herbert $
+%
+%% PostScript prologue for pstricks.tex.
+%% Version 1.12, 2012/02/12
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%
+%
+% Define the follwing gs-functions if not known, eg when using distiller
+%
+systemdict /.setopacityalpha known not {/.setopacityalpha { pop } def } if
+systemdict /.setblendmode known not {/.setblendmode { pop } def } if
+systemdict /.setshapealpha known not {/.setshapealpha { pop } def } if
+%
+/tx@Dict 200 dict def % the main PSTricks dictionary
+tx@Dict begin
+/ADict 25 dict def % The arrow dictionaray
+/CM { matrix currentmatrix } bind def
+/SLW /setlinewidth load def
+/CLW /currentlinewidth load def
+/CP /currentpoint load def
+/ED { exch def } bind def
+/L /lineto load def
+/T /translate load def
+/TMatrix { } def
+/RAngle { 0 } def
+/Sqrt { dup 0 lt { pop 0 } { sqrt } ifelse } def % return 0 for negative arguments
+/Atan { /atan load stopped { pop pop 0 } if } def % return 0 if atan not known
+/ATAN1 {neg -1 atan 180 sub } def % atan(x) (only one parameter)
+/Div { dup 0 eq { pop } { div } ifelse } def % control the division
+/tan { dup cos abs 1.e-10 lt
+ { pop 1.e10 } % return 1.e10 as infinit
+ { dup sin exch cos div } ifelse % default sin/cos
+} def
+/Tan { dup sin exch cos Div } def % sin(x)/cos(x) x in degrees
+/Acos {dup dup mul neg 1 add dup 0 lt { % arc cos, returns 0 when negative root
+ pop pop 0 }{ sqrt exch atan} ifelse } def
+/NET { neg exch neg exch T } def % change coordinate system to the negative one
+/Pyth { dup mul exch dup mul add sqrt } def % Pythagoras, expects 2 parameter
+/Pyth2 { % Pythagoras, xA yA xB yB
+ 3 -1 roll % xA xB yB yA
+ sub % xA xB yB-yA
+ 3 1 roll % yB-yA xA xB
+ sub % yB-yA xA-xB
+ Pyth } def
+/PtoC { 2 copy cos mul 3 1 roll sin mul } def % Polar to Cartesian
+/Rand { rand 4294967295 div } def % a real random number
+%----------------- hv added 20050516 ---------------
+/PiDiv2 1.57079632680 def
+/Pi 3.14159265359 def
+/TwoPi 6.28318530718 def
+/Euler 2.71828182846 def
+%/e Euler bind def
+%
+/RadtoDeg { 180 mul Pi div } bind def % convert from radian to degrees
+/DegtoRad { Pi mul 180 div } bind def % viceversa
+%----------------- hv end---------------------------
+/PathLength@ { /z z y y1 sub x x1 sub Pyth add def /y1 y def /x1 x def } def
+%
+/PathLength {
+ flattenpath /z 0 def
+ { /y1 ED /x1 ED /y2 y1 def /x2 x1 def }
+ { /y ED /x ED PathLength@ }
+ {}
+ { /y y2 def /x x2 def PathLength@ }
+ /pathforall load stopped { pop pop pop pop } if
+ z
+} def
+%
+/STP { .996264 dup scale } def % BP/PT scaling
+/STV { SDict begin normalscale end STP } def %
+%
+/DashLine {
+ dup 0 gt
+ { /a .5 def PathLength exch div }
+ { pop /a 1 def PathLength } ifelse
+ /b ED % pattern should fit evenly in b
+ dup /X ED % pattern array
+ 0 get /y ED % length of first black segment
+ /z 0 X {add} forall def % length of the full pattern
+ %% Computation of the scaling factor as described by van Zandt:
+ b a .5 sub 2 mul y mul sub z Div round
+ z mul a .5 sub 2 mul y mul add b exch Div
+ %%%% scaling factor on stack.
+ /z ED %% now, z is the scaling factor
+ false % for the length test below
+ X { z mul } forall X astore %% modification TN 04-08-07
+ %%% Checking whether at least one dash in X has positive length:
+ {0 gt or} forall
+ { X 1 a sub y mul }
+ { [ 1 0 ] 0 }
+ ifelse
+ setdash stroke
+} def
+%
+/DotLine {
+ /b PathLength def
+ /a ED /z ED /y CLW def
+ /z y z add def
+ a 0 gt {
+ /b b a div def
+ }{
+ a 0 eq {
+ /b b y sub def
+ }{ a -3 eq {
+ /b b y add def } if
+ } ifelse
+ } ifelse
+ [ 0 b b z Div round Div dup 0 le { pop 1 } if ]
+ a 0 gt { 0 }{ y 2 div a -2 gt { neg }if } ifelse
+ setdash 1 setlinecap stroke
+} def
+%
+/SymbolLine { % on stack [ x y x y ...
+ counttomark % number of elements
+ 2 div cvi /n ED % n pairs
+ /YA ED /XA ED % the start point
+ n 1 sub {
+ /YB ED /XB ED
+ /XLength XB XA sub def
+ /YLength YB YA sub def
+ /PAngle YLength XLength Atan def
+ /XYLength XLength YLength Pyth def
+
+ %% for negative SymStep we calculate the distance
+ SymStep 0 lt
+ { %XYLength SymStep div abs cvi
+ /nSym SymStep abs cvi def }
+ { /nSym XYLength SymStep div cvi def }
+ ifelse
+ 0.5 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ /deltaX XLength nSym div def
+ /deltaY YLength nSym div def
+ curveticks
+ { XA YA moveto }
+ { XA Shift sub YA Shift sub moveto }
+ ifelse
+ nSym {
+ gsave
+ curveticks
+ { PAngle 180 sub CorrAngle sub tickAngle add /rotAngle ED
+ currentpoint translate rotAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ {
+ rotateSymbol { PAngle 180 sub CorrAngle sub rotate } if
+ Symbol show
+ }
+ ifelse
+ grestore
+ deltaX deltaY rmoveto
+ } repeat
+ /YA YB def /XA XB def
+ } repeat
+ curveticks
+ { XA YA moveto }
+ { XA Shift sub YA Shift sub moveto }
+ ifelse
+ gsave
+ curveticks
+ { PAngle 180 sub CorrAngle sub tickAngle add /rotAngle ED
+ XA YA translate rotAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ {
+ rotateSymbol { PAngle 180 sub CorrAngle sub rotate } if
+ Symbol show
+ }
+ ifelse
+ grestore
+ pop % delete the mark symbol
+} def
+%
+/LineFill { % hv ------------ patch 7 -------------
+ gsave
+ abs /hatchWidthInc ED
+ abs /hatchSepInc ED
+ abs CLW add /a ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform pathbbox
+ /y2 ED
+ a Div ceiling cvi /x2 ED /y1 ED
+ a Div cvi /x1 ED /y2 y2 y1 sub def
+ clip
+ newpath
+ 2 setlinecap
+ systemdict
+ /setstrokeadjust known { true setstrokeadjust } if
+ x2 x1 sub 1 add {
+ x1 a mul y1 moveto 0 y2 rlineto stroke
+ /x1 x1 1 add
+ hatchWidthInc 0 gt { CLW add } if
+ def
+ hatchSepInc 0 gt hatchWidthInc 0 gt or {
+ /a a hatchSepInc add def
+ CLW hatchWidthInc add SLW
+ } if
+ } repeat
+ grestore
+ pop pop } def
+%
+/DotFill {% on stack: dot radius
+ /dotRadius ED
+ abs CLW add /a ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform
+ pathbbox % llx lly urx ury of smallest bounding box
+ /y2 ED /x2 ED /y1 ED /x1 ED
+ y2 y1 sub a div 2 add cvi /Ny ED
+ x2 x1 sub a div 2 add cvi /Nx ED
+ clip
+ newpath
+ /yA y1 dotRadius add CLW add def
+ /xA0 x1 dotRadius add CLW add def
+ Ny {
+ /xA xA0 def
+ Nx {
+ newpath
+ xA yA dotRadius 0 360 arc
+ SolidDot { gsave fill grestore } if
+ stroke
+ xA a add /xA ED
+ } repeat
+ yA a add /yA ED
+ } repeat
+ grestore
+} def
+%
+/PenroseFill {% on stack: scaling factor
+ dup dup scale
+ 1 exch div round /penroseFactor ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform pathbbox
+ /y2 ED
+ a Div ceiling cvi /x2 ED /y1 ED
+ a Div cvi /x1 ED /y2 y2 y1 sub def
+ clip
+ newpath
+ systemdict
+ /setstrokeadjust known { true setstrokeadjust } if
+ /I/S/L/W/G/+/Z/F/E/D[/def/exch/for{E D}/add{s E get mul}
+ { Z -36.2001 1 33 }{25 E S rlineto}{/q Z dup q G E q 1 + G}{Z 2 2}]{cvx def}forall
+ [0 72 1008 {dup sin E cos }F ]1 setlinejoin/s W{/a W{/b I 10{/i I 4{/m I moveto
+ i m +/j I 10{/l Z b m l + G a l G sub s m get div .2 + floor .3 + 25
+ mul j l + S rmoveto}F i L j L stroke }F}F}F}F
+ grestore
+ pop pop
+} def
+%
+/TruchetFill { % on stack: scaling factor
+ 10 dict begin
+ dup dup scale
+ 1 exch div round /penroseFactor ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform pathbbox
+ /y2 ED
+ a Div ceiling cvi /x2 ED /y1 ED
+ a Div cvi /x1 ED /y2 y2 y1 sub def
+ clip
+ newpath
+ systemdict
+ /setstrokeadjust known { true setstrokeadjust } if
+ /ma a neg def
+ /ha a 2 div def
+ /mha ha neg def
+ /tile {
+ rand dup 2 idiv 2 mul eq { 90 rotate } if
+ mha mha moveto ha mha lineto
+ ha ha lineto mha ha lineto
+% closepath .1 setlinewidth stroke
+ contents
+ } def
+ /contents{
+ 0 ha moveto ha 0 lineto
+ 0 mha moveto mha 0 lineto
+% 1 setlinewidth stroke
+ } def
+ /dotiling {
+ f ma mul a f a mul {
+ /i exch def
+ f ma mul a f a mul {
+ /j exch def
+ gsave i j translate
+ tile stroke grestore
+ } for
+ } for
+ } def
+%
+ /f 3 def
+ 5 srand dotiling
+ end % local user dict
+} def
+%
+/BeginArrow {
+ ADict begin % hold it local, for end see EndArrow
+ /@mtrx CM def
+ gsave
+ 2 copy T
+ 2 index sub neg exch
+ 3 index sub exch Atan
+ rotate newpath
+} def
+%
+/EndArrow { @mtrx setmatrix CP grestore end } def % end the ADict
+%
+/Arrow {
+ CLW mul add dup
+ 2 div /w ED
+ mul dup /h ED
+ mul /a ED
+ { 0 h T 1 -1 scale } if
+ w neg h moveto
+ 0 0 L w h L w neg a neg rlineto
+ gsave fill grestore
+} def
+%
+/ArrowD { % the sides are drawn as curves (hv 20071211)
+ CLW mul add dup
+ 2 div /w ED
+ mul dup /h ED
+ mul /Inset ED
+ { 0 h T 1 -1 scale } if % changes the direction
+% we use y=w/h^2 * x^2 as equation for the control points
+% for the coordinates the arrow is seen from top to bottom
+% the bottom (tip) is (0;0)
+ w neg h moveto % lower left of >
+ w 9 div 4 mul neg h 3 div 2 mul
+ w 9 div neg h 3 div
+ 0 0 curveto % tip of >
+ w 9 div h 3 div
+ w 9 div 4 mul h 3 div 2 mul
+ w h curveto % upper left of >
+ w neg Inset neg rlineto % move to x=0 and inset
+ gsave fill grestore
+} def
+%
+/Tbar {
+ CLW mul add /z ED
+ z -2 div CLW 2 div moveto
+ z 0 rlineto stroke
+ 0 CLW moveto
+} def
+%
+/Bracket {
+ CLW mul add dup CLW sub 2 div
+ /x ED mul CLW add /y ED /z CLW 2 div def
+ x neg y moveto
+ x neg CLW 2 div L x CLW 2 div L x y L stroke
+ 0 CLW moveto
+} def
+%
+/RoundBracket {
+ CLW mul add dup 2 div
+ /x ED mul /y ED /mtrx CM def
+ 0 CLW 2 div T x y mul 0 ne { x y scale } if
+ 1 1 moveto
+ .85 .5 .35 0 0 0 curveto
+ -.35 0 -.85 .5 -1 1 curveto
+ mtrx setmatrix stroke 0 CLW moveto
+} def
+%
+/SD { 0 360 arc fill } def
+%
+/EndDot { % DS is the dot size
+ { /z DS def } { /z 0 def } ifelse % outer or inner dimen
+ /b ED % the color definition
+ 0 z DS SD
+ b { 0 z DS CLW sub SD } if
+ 0 DS z add CLW 4 div sub
+ moveto
+} def
+%
+/Shadow { [ { /moveto load } { /lineto load } { /curveto load } {
+ /closepath load } /pathforall load stopped { pop pop pop pop CP /moveto
+ load } if ] cvx newpath 3 1 roll T exec } def
+%
+/NArray { % holds the coordinates and on top of stack the showpoints boolean
+ /showpoints ED
+ counttomark 2 div dup cvi /n ED % n 2 div on stack
+ n eq not { exch pop } if % even numbers of points? delete one
+ ] aload /Points ED
+ showpoints not { Points aload pop } if
+% { ] aload /Points ED }
+% { n 2 mul 1 add -1 roll pop } ifelse % delete the mark symbol
+} def
+%
+/Line {
+ NArray n 0 eq not
+ { n 1 eq { 0 0 /n 2 def } if ArrowA /n n 2 sub def
+ n { Lineto } repeat
+ CP 4 2 roll ArrowB L pop pop
+ } if
+} def
+%
+/LineToYAxis {
+ /Ox ED % Save the x origin value
+ NArray % all x-y pairs on stack
+ n { 2 copy moveto % go to current point
+ Ox exch Lineto % line to y-axis
+ pop % delete old x-value
+ } repeat
+} def
+%
+/LineToXAxis{
+ /Oy ED % Save the y origin value
+ NArray % all x-y pairs on stack
+ n 0 eq not
+ { n 1 eq { 0 0 /n 2 def } if
+ ArrowA
+ /n n 2 sub def
+ CP 2 copy moveto pop Oy Lineto
+ n { 2 copy moveto pop Oy Lineto } repeat
+ CP
+ 4 2 roll
+ ArrowB
+ 2 copy moveto pop Oy
+ L
+ pop pop } if
+} def
+%
+/Arcto {
+ /a [ 6 -2 roll ] cvx def
+ a r
+ /arcto load stopped { 5 } { 4 } ifelse { pop } repeat
+ a
+} def
+%
+/CheckClosed {
+ dup n 2 mul 1 sub index eq 2 index n 2 mul 1 add index eq
+ and { pop pop /n n 1 sub def } if
+} def
+%
+/Polygon {
+ NArray n 2 eq { 0 0 /n 3 def } if
+ n 3 lt
+ { n { pop pop } repeat }
+ { n 3 gt { CheckClosed } if
+ n 2 mul -2 roll
+ /y0 ED /x0 ED /y1 ED /x1 ED
+ x1 y1
+ /x1 x0 x1 add 2 div def
+ /y1 y0 y1 add 2 div def
+ x1 y1 moveto
+ /n n 2 sub def
+ n { Lineto } repeat
+ x1 y1 x0 y0 6 4 roll Lineto
+ Lineto pop pop closepath } ifelse
+} def
+%
+/SymbolPolygon { % on stack [ x y x y ...
+ counttomark % number of elements
+ 2 add /m ED
+ 2 copy m 2 roll % copy last two
+ m 2 div cvi /n ED % n pairs
+ /YA ED /XA ED % the start point
+ n 1 sub {
+ /YB ED /XB ED
+ /XLength XB XA sub def
+ /YLength YB YA sub def
+ /PAngle YLength XLength Atan def
+ /XYLength XLength YLength Pyth def
+ /nSym XYLength SymStep Div cvi def
+ /Shift Symbol stringwidth pop 2 Div def
+ /deltaX XLength nSym Div def
+ /deltaY YLength nSym Div def
+ XA Shift sub YA Shift sub moveto
+ nSym {
+ gsave rotateSymbol { PAngle 180 sub CorrAngle sub rotate } if
+ Symbol show
+ grestore
+ deltaX deltaY rmoveto
+ } repeat
+% XB Shift sub YB Shift sub moveto Symbol show
+ /YA YB def /XA XB def
+ } repeat
+ pop % delete the mark symbol
+} def
+%
+/Diamond {
+ /mtrx CM def
+ T rotate
+ /h ED
+ /w ED
+ dup 0 eq { pop } { CLW mul neg
+ /d ED
+ /a w h Atan def
+ /h d a sin Div h add def
+ /w d a cos Div w add def } ifelse
+ mark w 2 div h 2 div w 0 0 h neg w neg 0 0 h w 2 div h 2 div
+ /ArrowA { moveto } def
+ /ArrowB { } def
+ false Line
+ closepath mtrx setmatrix } def
+%
+/Triangle {
+ /mtrx CM def
+ translate
+ rotate /h ED 2 div /w ED
+ dup CLW mul /d ED
+ /h h d w h Atan sin Div sub def
+ /w w d h w Atan 2 div dup cos exch sin Div mul sub def
+ mark
+ 0 d w neg d 0 h w d 0 d
+ /ArrowA { moveto } def
+ /ArrowB { } def
+ false
+ Line
+ closepath
+ mtrx
+% DG/SR modification begin - Jun. 1, 1998 - Patch 3 (from Michael Vulis)
+% setmatrix } def
+ setmatrix pop
+} def
+% DG/SR modification end
+%
+/CCA {
+ /y ED /x ED
+ 2 copy y sub /dy1 ED
+ x sub /dx1 ED
+ /l1 dx1 dy1 Pyth def
+} def
+%
+/CC {
+ /l0 l1 def
+ /x1 x dx sub def
+ /y1 y dy sub def
+ /dx0 dx1 def
+ /dy0 dy1 def
+ CCA
+ /dx dx0 l1 c exp mul dx1 l0 c exp mul add def
+ /dy dy0 l1 c exp mul dy1 l0 c exp mul add def
+ /m dx0 dy0 Atan dx1 dy1 Atan sub 2 div cos abs b exp a mul dx dy Pyth Div 2 div def
+ /x2 x l0 dx mul m mul sub def
+ /y2 y l0 dy mul m mul sub def
+ /dx l1 dx mul m mul neg def
+ /dy l1 dy mul m mul neg def
+} def
+%
+/IC {
+ /c c 1 add def
+ c 0 lt { /c 0 def } { c 3 gt { /c 3 def } if } ifelse
+ /a a 2 mul 3 div 45 cos b exp div def
+ CCA
+ /dx 0 def
+ /dy 0 def
+} def
+%
+/BOC { IC CC x2 y2 x1 y1 ArrowA CP 4 2 roll x y curveto } def
+/NC { CC x1 y1 x2 y2 x y curveto } def
+/EOC { x dx sub y dy sub 4 2 roll ArrowB 2 copy curveto } def
+/BAC { IC CC x y moveto CC x1 y1 CP ArrowA } def
+/NAC { x2 y2 x y curveto CC x1 y1 } def
+/EAC { x2 y2 x y ArrowB curveto pop pop } def
+%
+/OpenCurve {
+ NArray n 3 lt
+ { n { pop pop } repeat }
+ { BOC /n n 3 sub def n { NC } repeat EOC } ifelse
+} def
+%
+/CurvePath {
+ %% for negative SymStep we calculate the distance
+ SymStep 0 lt { gsave PathLength SymStep div abs /SymStep ED grestore } if
+ 0.5 setflat
+ flattenpath /z 0 def /z0 0 def
+ { /y1 ED /x1 ED /y2 y1 def /x2 x1 def
+ x1 Shift sub y1 Shift sub moveto
+ gsave
+ curveticks
+ { x1 y1 translate startAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ { startAngle rotate Symbol show }
+ ifelse
+ grestore /z0 z def }
+ { /y ED /x ED PathLength@ z z0 sub SymStep ge {
+ x Shift sub y Shift sub moveto
+ gsave
+ curveticks
+ { y yOld sub x xOld sub Atan 180 sub CorrAngle sub /rotAngle ED
+ x y translate rotAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ {
+ rotateSymbol { y yOld sub x xOld sub Atan 180 sub CorrAngle sub rotate } if
+ Symbol show
+ }
+ ifelse
+ grestore /z0 z def } if
+ /yOld y def /xOld x def }
+ {} %% the lineto part
+ { /y y2 def /x x2 def PathLength@
+ x Shift sub y Shift sub moveto
+ gsave
+ curveticks
+ { y yOld sub x xOld sub Atan 180 sub /rotAngle ED
+ x y translate rotAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ {
+ x Shift sub y Shift sub moveto
+ rotateSymbol { y yOld sub x xOld sub Atan 180 sub CorrAngle sub rotate } if
+ Symbol show
+ }
+ ifelse
+ grestore
+ }
+ pathforall
+% curveticks
+% { gsave
+% x y translate rotAngle rotate
+% 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+% SymbolLinewidth setlinewidth stroke grestore
+% } if
+ z
+} def
+%
+/OpenSymbolCurve {
+ OpenCurve
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+%
+/AltCurve {
+ { false NArray n 2 mul 2 roll
+ [ n 2 mul 3 sub 1 roll ] aload
+ /Points ED
+ n 2 mul -2 roll }
+ { false NArray } ifelse
+ n 4 lt { n { pop pop } repeat } { BAC /n n 4 sub def n { NAC } repeat EAC } ifelse
+} def
+%
+/AltOpenSymbolCurve {
+ AltCurve
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+%
+/ClosedCurve {
+ NArray n 3 lt
+ { n { pop pop } repeat }
+ { n 3 gt { CheckClosed } if
+ 6 copy n 2 mul 6 add 6 roll
+ IC CC x y moveto n { NC } repeat
+ closepath pop pop
+ } ifelse
+} def
+%
+/ClosedSymbolCurve {
+ ClosedCurve
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+%
+/SQ { /r ED r r moveto r r neg L r neg r neg L r neg r L fill } def
+/ST { /y ED /x ED x y moveto x neg y L 0 x L fill } def
+/SP { /r ED gsave 0 r moveto 4 { 72 rotate 0 r L } repeat fill grestore } def
+%
+/FontDot {
+ DS 2 mul dup
+ matrix scale matrix concatmatrix exch matrix
+ rotate matrix concatmatrix exch
+ findfont exch makefont setfont
+} def
+%
+/Rect {
+ x1 y1 y2 add 2 div moveto
+ x1 y2 lineto
+ x2 y2 lineto
+ x2 y1 lineto
+ x1 y1 lineto
+ closepath
+} def
+%
+/OvalFrame {
+ x1 x2 eq y1 y2 eq or
+ { pop pop x1 y1 moveto x2 y2 L }
+ { y1 y2 sub abs x1 x2 sub abs 2 copy gt
+ { exch pop } { pop } ifelse
+ 2 div exch { dup 3 1 roll mul exch } if
+ 2 copy lt { pop } { exch pop } ifelse
+ /b ED
+ x1 y1 y2 add 2 div moveto
+ x1 y2 x2 y2 b arcto
+ x2 y2 x2 y1 b arcto
+ x2 y1 x1 y1 b arcto
+ x1 y1 x1 y2 b arcto
+ 16 { pop } repeat
+ closepath
+ } ifelse
+} def
+%
+/Frame {
+ CLW mul /a ED
+ 3 -1 roll
+ 2 copy gt { exch } if
+ a sub /y2 ED
+ a add /y1 ED
+ 2 copy gt { exch } if
+ a sub /x2 ED
+ a add /x1 ED
+ 1 index 0 eq { pop pop Rect } { OvalFrame } ifelse
+} def
+%
+/BezierNArray {
+ /f ED
+ counttomark 2 div dup cvi /n ED
+ n eq not { exch pop } if
+ n 1 sub neg 3 mod 3 add 3 mod { 0 0 /n n 1 add def } repeat
+ f { ] aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse
+} def
+%
+/OpenBezier {
+ BezierNArray
+ n 1 eq
+ { pop pop }
+ { ArrowA n 4 sub 3 idiv
+ { 6 2 roll 4 2 roll curveto } repeat
+ 6 2 roll 4 2 roll ArrowB curveto } ifelse
+} def
+%
+/OpenSymbolBezier {
+ OpenBezier
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+%
+/ClosedBezier {
+ BezierNArray
+ n 1 eq
+ { pop pop }
+ { moveto n 1 sub 3 idiv
+ { 6 2 roll 4 2 roll curveto } repeat
+ closepath } ifelse
+} def
+%
+/ClosedSymbolBezier {
+ /f ED % save showpoints value
+ 2 copy /yEnd ED /xEnd ED
+ counttomark -2 roll 2 copy /yStart ED /xStart ED
+ counttomark 2 roll
+ f
+ ClosedBezier
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+ [ xEnd yEnd xStart yStart SymbolLine
+} def
+%
+/BezierShowPoints {
+ gsave
+ Points aload length 2 div cvi /n ED
+ moveto
+ n 1 sub { lineto } repeat
+ CLW 2 div SLW [ 4 4 ] 0 setdash stroke
+ grestore
+} def
+%
+/Parab {
+ /y0 ED /x0 ED /y1 ED /x1 ED
+ /dx x0 x1 sub 3 div def
+ /dy y0 y1 sub 3 div def
+ x0 dx sub y0 dy add x1 y1 ArrowA
+ x0 dx add y0 dy add x0 2 mul x1 sub y1 ArrowB
+ curveto
+ /Points [ x1 y1 x0 y0 x0 2 mul x1 sub y1 ] def
+} def
+%
+/Parab1 { % 1 end | 0 SP
+ /ySP ED /xSP ED /y1 ED /x1 ED
+ /dx xSP x1 sub 3 div def
+ /dy ySP y1 sub 3 div def
+ newpath x1 y1 moveto xSP y1 lineto xSP ySP lineto
+ x1 ySP lineto closepath clip
+ currentpoint
+ newpath moveto
+ xSP dx sub ySP dy add x1 y1 ArrowA
+ xSP dx add ySP dy add xSP 2 mul x1 sub y1 ArrowB
+ curveto
+ /Points [ x1 y1 xSP ySP xSP 2 mul x1 sub y1 ] def
+} def
+%
+/Grid {
+ newpath
+ /a 4 string def
+ /b ED % psk@gridlabels in pt
+ /c ED % { \pst@usecolor\psgridlabelcolor }
+ /n ED % psk@griddots
+ cvi dup 1 lt { pop 1 } if
+ /s ED % \psk@subgriddiv
+ s div dup 0 eq { pop 1 } if
+ /dy ED s div dup 0 eq { pop 1 } if % \pst@number\psyunit abs
+ /dx ED dy div round dy mul % \pst@number\psxunit abs
+ /y0 ED dx div round dx mul
+ /x0 ED dy div round cvi
+ /y2 ED dx div round cvi
+ /x2 ED dy div round cvi
+ /y1 ED dx div round cvi
+ /x1 ED
+ /h y2 y1 sub 0 gt { 1 } { -1 } ifelse def
+ /w x2 x1 sub 0 gt { 1 } { -1 } ifelse def
+ b 0 gt {
+ /z1 b 4 div CLW 2 div add def
+% /Helvetica findfont b scalefont setfont
+ /b b .95 mul CLW 2 div add def } if
+ systemdict /setstrokeadjust known
+ { true setstrokeadjust /t { } def }
+ { /t { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add
+ exch itransform } bind def } ifelse
+ gsave n 0 gt { 1 setlinecap [ 0 dy n div ] dy n div 2 div setdash } { 2 setlinecap } ifelse
+ /i x1 def
+ /f y1 dy mul n 0 gt { dy n div 2 div h mul sub } if def
+ /g y2 dy mul n 0 gt { dy n div 2 div h mul add } if def
+ x2 x1 sub w mul 1 add dup 1000 gt { pop 1000 } if
+ { i dx mul dup y0 moveto
+ b 0 gt
+ { gsave c i a cvs dup stringwidth pop
+ /z2 ED w 0 gt {z1} {z1 z2 add neg} ifelse
+ h 0 gt {b neg}{z1} ifelse
+ rmoveto show grestore } if
+ dup t f moveto
+ g t L stroke
+ /i i w add def
+ } repeat
+ grestore
+ gsave
+ n 0 gt
+ % DG/SR modification begin - Nov. 7, 1997 - Patch 1
+ %{ 1 setlinecap [ 0 dx n div ] dy n div 2 div setdash }
+ { 1 setlinecap [ 0 dx n div ] dx n div 2 div setdash }
+ % DG/SR modification end
+ { 2 setlinecap } ifelse
+ /i y1 def
+ /f x1 dx mul n 0 gt { dx n div 2 div w mul sub } if def
+ /g x2 dx mul n 0 gt { dx n div 2 div w mul add } if def
+ y2 y1 sub h mul 1 add dup 1000 gt { pop 1000 } if
+ { newpath i dy mul dup x0 exch moveto
+ b 0 gt { gsave c i a cvs dup stringwidth pop
+ /z2 ED
+ w 0 gt {z1 z2 add neg} {z1} ifelse
+ h 0 gt {z1} {b neg} ifelse
+ rmoveto show grestore } if
+ dup f exch t moveto
+ g exch t L stroke
+ /i i h add def
+ } repeat
+ grestore
+} def
+%
+/ArcArrow {
+ /d ED /b ED /a ED
+ gsave
+ newpath 0 -1000 moveto clip
+ newpath
+ 0 1 0 0 b
+ grestore
+ c mul
+ /e ED
+ pop pop pop r a e d PtoC y add exch x add
+ exch r a PtoC y add exch x add exch b pop pop pop pop a e d CLW 8 div c
+ mul neg d
+} def
+%
+/Ellipse {
+ /rotAngle ED
+ /mtrx CM def
+ T
+ rotAngle rotate
+ scale 0 0 1 5 3 roll arc
+ mtrx setmatrix
+} def
+%
+/ArcAdjust { %%%% Vincent Guirardel
+% given a target length (targetLength) and an initial angle (angle0) [in the stack],
+% let M(angle0)=(rx*cos(angle0),ry*sin(angle0))=(x0,y0).
+% This computes an angle t such that (x0,y0) is at distance
+% targetLength from the point M(t)=(rx*cos(t),ry*sin(t)).
+% NOTE: this an absolute angle, it does not have to be added or substracted to angle0
+% contrary to TvZ's code.
+% To achieve, this, one iterates the following process: start with some angle t,
+% compute the point M' at distance targetLength of (x0,y0) on the semi-line [(x0,y0) M(t)].
+% Now take t' (= new angle) so that (0,0) M(t') and M' are aligned.
+%
+% Another difference with TvZ's code is that we need d (=add/sub) to be defined.
+% the value of d = add/sub is used to know on which side we have to move.
+% It is only used in the initialisation of the angle before the iteration.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Input stack: 1: target length 2: initial angle
+% variables used : rx, ry, d (=add/sub)
+%
+ /targetLength ED /angle0 ED
+ /x0 rx angle0 cos mul def
+ /y0 ry angle0 sin mul def
+% we are looking for an angle t such that (x0,y0) is at distance targetLength
+% from the point M(t)=(rx*cos(t),ry*sin(t)))
+%initialisation of angle (using 1st order approx = TvZ's code)
+ targetLength 57.2958 mul
+ angle0 sin rx mul dup mul
+ angle0 cos ry mul dup mul
+ add sqrt div
+% if initialisation angle is two large (more than 90 degrees) set it to 90 degrees
+% (if the ellipse is very curved at the point where we draw the arrow, %
+% the value can be much more than 360 degrees !)
+% this should avoid going on the wrong side (more than 180 degrees) or go near
+% a bad attractive point (at 180 degrees)
+ dup 90 ge { pop 90 } if
+ angle0 exch d % add or sub
+% maximum number of times to iterate the iterative procedure:
+% iterative procedure: takes an angle t on top of stack, computes a
+% better angle (and put it on top of stack)
+ 30 { dup
+% compute distance D between (x0,y0) and M(t)
+ dup cos rx mul x0 sub dup mul exch sin ry mul y0 sub dup mul add sqrt
+% if D almost equals targetLength, we stop
+ dup targetLength sub abs 1e-5 le { pop exit } if
+% stack now contains D t
+% compute the point M(t') at distance targetLength of (x0,y0) on the semi-line [(x0,y0) M(t)]:
+% M(t')= ( (x(t)-x0)*targetLength/d+x0 , (y(t)-y0)*targetLength/d+y0 )
+ exch dup cos rx mul x0 sub exch sin ry mul y0 sub
+% stack contains: y(t)-y0, x(t)-x0, d
+ 2 index Div targetLength mul y0 add ry Div exch
+ 2 index Div targetLength mul x0 add rx Div
+% stack contains x(t')/rx , y(t')/ry , d
+% now compute t', and remove D from stack
+ atan exch pop
+ } repeat
+% we don't look at what happened... in particular, if targetLength is greater
+% than the diameter of the ellipse...
+% the final angle will be around /angle0 + 180. maybe we should treat this pathological case...
+% after iteration, stack contains an angle t such that M(t) is the tail of the arrow
+% to give back the result as a an angle relative to angle0 we could add the following line:
+% angle0 sub 0 exch d
+%
+% begin bug fix 2006-01-11
+% we want to adjust the new angle t' by a multiple of 360 so that | t'-angle0 | <= 180
+%(we don't want to make the ellipse turn more or less than it should)...
+dup angle0 sub dup abs 180 gt { 180 add 360 div floor 360 mul sub } { pop } ifelse
+% end bug fix
+} def
+%
+/EllipticArcArrow {
+ /d ED % is add or sub
+ /b ED % arrow procedure
+ /a1 ED % angle
+ gsave
+ newpath
+ 0 -1000 moveto
+ clip % Set clippath far from arrow.
+ newpath
+ 0 1 0 0 b % Draw arrow to determine length.
+ grestore
+% Length of arrow is on top of stack. Next 3 numbers are junk.
+%
+ a1 exch ArcAdjust % Angular position of base of arrow.
+ /a2 ED
+ pop pop pop
+ a2 cos rx mul xOrig add % hv 2007-08-29 x->xOrig
+ a2 sin ry mul yOrig add % hv 2007-08-29 y->yOrig
+ a1 cos rx mul xOrig add %
+ a1 sin ry mul yOrig add %
+% Now arrow tip coor and base coor are on stack.
+ b pop pop pop pop % Draw arrow, and discard coordinates.
+ a2 CLW 8 div
+% change value of d (test it by looking if `` 1 1 d '' gives 2 or not )
+ 1 1 d 2 eq { /d { sub } def } { /d { add } def } ifelse
+ ArcAdjust
+% resets original value of d
+ 1 1 d 2 eq { /d { sub } def } { /d { add } def } ifelse % Adjust angle to give overlap.
+} def
+%%------------------ tvz/DG/hv (2004-05-10) end -------------------%%
+%
+/Rot { CP CP translate 3 -1 roll neg rotate NET } def
+%
+/RotBegin {
+ tx@Dict /TMatrix known not { /TMatrix { } def /RAngle { 0 } def } if
+ /TMatrix [ TMatrix CM ] cvx def
+ /a ED
+ a Rot /RAngle [ RAngle dup a add ] cvx def
+} def
+%
+/RotEnd {
+ /TMatrix [ TMatrix setmatrix ] cvx def
+ /RAngle [ RAngle pop ] cvx def
+} def
+%
+/PutCoor { gsave CP T CM STV exch exec moveto setmatrix CP grestore } def
+/PutBegin { /TMatrix [ TMatrix CM ] cvx def CP 4 2 roll T moveto } def
+/PutEnd { CP /TMatrix [ TMatrix setmatrix ] cvx def moveto } def
+%
+/Uput {
+ /a ED
+ add 2 div /h ED 2
+ div /w ED
+ /s a sin def
+ /c a cos def
+ /b s abs c abs 2 copy gt dup
+ /q ED
+ { pop } { exch pop } ifelse def
+ /w1 c b div w mul def
+ /h1 s b div h mul def
+ q { w1 abs w sub dup c mul abs }{ h1 abs h sub dup s mul abs } ifelse
+} def
+%
+/UUput {
+ /z ED
+ abs /y ED
+ /x ED
+ q { x s div c mul abs y gt }{ x c div s mul abs y gt } ifelse
+ { x x mul y y mul sub z z mul add sqrt z add }
+ { q { x s div } { x c div } ifelse abs
+ } ifelse
+ a PtoC
+ h1 add exch
+ w1 add exch
+} def
+%
+/BeginOL {
+ dup (all) eq exch TheOL eq or
+ { IfVisible not { Visible /IfVisible true def } if }
+ { IfVisible { Invisible /IfVisible false def } if } ifelse
+} def
+%
+/InitOL {
+ /OLUnit [ 3000 3000 matrix defaultmatrix dtransform ] cvx def
+ /Visible { CP OLUnit idtransform T moveto } def
+ /Invisible { CP OLUnit neg exch neg exch idtransform T moveto } def
+ /BOL { BeginOL } def
+ /IfVisible true def
+} def
+%
+%%%%%%%%%%%%%%%%% tools %%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% ### bubblesort ###
+%% syntax : array bubblesort --> array2 trie par ordre croissant
+%% code de Bill Casselman
+%% http://www.math.ubc.ca/people/faculty/cass/graphics/text/www/
+/bubblesort {
+4 dict begin
+ /a exch def
+ /n a length 1 sub def
+ n 0 gt {
+ % at this point only the n+1 items in the bottom of a remain to
+ % the sorted largest item in that blocks is to be moved up into
+ % position n
+ n {
+ 0 1 n 1 sub {
+ /i exch def
+ a i get a i 1 add get gt {
+ % if a[i] > a[i+1] swap a[i] and a[i+1]
+ a i 1 add
+ a i get
+ a i a i 1 add get
+ % set new a[i] = old a[i+1]
+ put
+ % set new a[i+1] = old a[i]
+ put
+ } if
+ } for
+ /n n 1 sub def
+ } repeat
+ } if
+ a
+end
+} def
+%
+%
+/concatstringarray{ % [(a) (b) ... (z)] --> (ab...z) 20100422
+ 0 1 index { length add } forall
+ string
+ 0 3 2 roll
+ { 3 copy putinterval length add }forall
+ pop
+} bind def
+%
+/dot2comma {% on stack a string (...)
+ 2 dict begin
+ /Output exch def
+ 0 1 Output length 1 sub {
+ /Index exch def
+ Output Index get 46 eq { Output Index 44 put } if
+ } for
+ Output
+ end
+} def
+%
+end
+%-----------------------------------------------------------------------------%
+%
+% END pstricks.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-algparser.pro 0 0
+% $Id: pst-algparser.pro 594 2011-10-31 18:13:18Z herbert $
+%%
+%% PostScript prologue for PSTricks algorithm parser
+%% Version 0.04, 2011/10/21
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%%
+%%-----------------------------------------------------------------------------%
+%
+/AlgParser { tx@AlgToPs begin AlgToPs end } def % Dominique Rodriguez
+%
+/tx@CoreAnalyzerDict 100 dict def tx@CoreAnalyzerDict begin
+%
+% PS ANALYZER FOR ALGEBRAIC EXPRESSION V1.13
+%
+% 09/2011 DR factorial with ! added
+%
+% E->T|E+T
+% T->FS|T*FS
+% FS -> F | +FS | -FS
+% F->P|F^SF|P!
+% P->(E)|literal
+% literal->number|var|var[E]|func(params)
+% params->E|E,param
+% number->TOBEFINISHED
+%
+%% E expression, T term, SF signed factor, F factor, P power
+%
+%% parser
+%
+%% str
+%
+%% C->E<condition_operators>E
+%% STR index -> STR index+lenExpr
+/AnalyzeCond { AnalyzeExpr ReadCondOp AnalyzeExpr EvalCondOp } def
+%
+%% analyze Expression List (separator , or | )
+%% STR index -> STR index+lenExpr
+%% /AnalyzeListOfE {
+%% { NextNonBlankChar pop AnalyzeExpr%%dup Strlen eq { exit } if NextNonBlankChar
+%% NextNonBlankChar dup 0 eq { pop exit } if
+%% dup 44 ne 1 index 124 ne and { dup 41 ne { PROBLEMCONTACTBILLOU } { pop exit } ifelse } if
+%% pop NextNonBlankChar dup 0 eq { exit } if 124 ne { PROBLEMCONTACTBILLOU } if 1 add NextNonBlankChar 0 eq {toto} if } loop
+%% AnalyzeListOfEPostHook
+%% } def
+/AnalyzeListOfE {
+ /NotFirst false def
+ { NextNonBlankChar pop AnalyzeExpr
+ NotFirst { EvalListOfExpr } { /NotFirst true def } ifelse
+ dup Strlen eq { exit } if NextNonBlankChar
+ dup 44 ne 1 index 124 ne and
+ { dup 41 ne { PROBLEMCONTACTBILLOU } { pop exit } ifelse }
+ if pop 1 add } loop
+ AnalyzeListOfEPostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% E->T|E+T
+%% STR index -> STR index+lenExpr
+/AnalyzeExpr {
+ AnalyzePreHook AnalyzeTerm IsEndingExpr
+ { dup 0 ne { 32 eq { NextNonBlankChar } if } { pop } ifelse }
+ { { RollOp 1 add NextNonBlankChar pop AnalyzeTerm PreEvalHook EvalAddSub IsEndingExpr { pop exit } if } loop }
+ ifelse
+ AnalyzePostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% T->FS|T*FS
+%% STR index
+/AnalyzeTerm {
+ AnalyzePreHook AnalyzeSignedFactor IsEndingTerm
+ { dup 0 ne { 32 eq { NextNonBlankChar } if } { pop } ifelse }
+ { { RollOp 1 add NextNonBlankChar pop AnalyzeSignedFactor PreEvalHook EvalMulDiv IsEndingTerm { pop exit } if} loop }
+ ifelse
+ AnalyzePostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% FS -> F | +FS | -FS
+%% STR index
+/AnalyzeSignedFactor {
+ AnalyzePreHook 2 copy get dup IsUnaryOp
+ { RollOp 1 add NextNonBlankChar pop AnalyzeSignedFactor EvalUnaryOp }
+ { pop AnalyzeFactor }
+ ifelse AnalyzePostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% F->P|F^P|P!
+%% STR index
+/AnalyzeFactor {
+ AnalyzePreHook AnalyzePower IsEndingFactor
+ { dup 0 ne { 32 eq { NextNonBlankChar } if } { pop } ifelse }
+ { { dup 33 eq%% is there a ! DR 09/2011
+ { pop 1 add NextNonBlankChar pop EvalFactorial }
+ { RollOp 1 add NextNonBlankChar pop AnalyzePower PreEvalHook EvalPower }
+ ifelse
+ IsEndingFactor { pop exit } if } loop }
+ ifelse AnalyzePostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% P->(E)|literal
+%% STR index
+/AnalyzePower {
+ %% depending of first char either a number, or a literal
+ 2 copy get dup 40 eq%%an open par
+ { pop 1 add NextNonBlankChar pop AnalyzeExpr 1 add NextNonBlankChar pop }
+ { AnalyzeLiteral }
+ ifelse
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% STR index STR[index] -> STR index
+%/AnalyzeLiteral { IsNumber { EvalNumber } { EvalLiteral } ifelse } def
+/AnalyzeLiteral { dup IsUnaryOp exch IsNumber or { EvalNumber } { EvalLiteral } ifelse } def%%dr 09102006
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% recognize + or -
+%% chr -> T/F
+/IsUnaryOp { dup 43 eq exch 45 eq or } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a number can contain only : 0123456789.
+%% chr -> T/F
+/IsNumber { dup 48 ge exch dup 57 le 3 -1 roll and exch 46 eq or } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% STR index -> STR index number
+%% a number can be of the form [0-9]*.[0-9]*\([eE][+-]?[0-9]+\)?
+%% STR index -> STR index' number
+/ReadNumber {
+ exch dup 3 -1 roll dup 3 1 roll
+ %%read mantissa
+ { 1 add 2 copy dup Strlen eq { pop pop 0 exit } if get dup IsNumber not { exit } if pop } loop
+ dup 101 eq exch 69 eq or
+ %%% there is a "e" or "E" -> read exponant
+ { 1 add 2 copy get dup IsUnaryOp
+ { pop 1 add 2 copy get } if
+ { IsNumber not { exit } if 1 add 2 copy get } loop }
+ if
+ dup 4 1 roll
+ 3 -1 roll exch 1 index sub getinterval
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a number can contain only : 0123456789.
+%% chr -> T/F
+/IsCondOp { dup 30 eq exch dup 60 ge exch 62 le and or } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% STR index -> STR index number
+%% a number can be of the form [0-9]*.[0-9]*\([eE][+-]?[0-9]+\)?
+%% STR index -> STR index' number
+/ReadCondOp {
+ NextNonBlankChar 1 index 4 1 roll
+ { IsCondOp not { exit } if 1 add 2 copy get } loop
+ 2 copy 5 -1 roll
+ exch 1 index sub getinterval 3 1 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a literal can contain only : 0123456789.
+%% chr -> T/F
+/IsLiteral {%
+ dup 48 ge exch dup 57 le 3 -1 roll and exch
+ dup 65 ge exch dup 90 le 3 -1 roll and 3 -1 roll or exch
+ dup 97 ge exch 122 le and or } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a literal can be of the form [a-zA-Z][a-zA-Z0-9]*\(\((Expression)\)|\(\[Expression\]\)\)?
+%% STR index -> literal STR index' nextchr
+/ReadLiteral {
+ exch dup 3 -1 roll dup 3 1 roll
+ %%read literal core
+ { 2 copy dup Strlen eq { pop pop 0 exit } if get dup IsLiteral not { exit } if pop 1 add } loop
+ 4 1 roll dup 5 1 roll 3 -1 roll exch 1 index sub getinterval 4 1 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% expr is ended by end of str or a clpar
+%% STR index -> STR index STR[index] T/F
+/IsEndingExpr {%
+ 2 copy dup Strlen eq
+ %% if end of str is reached -> end !
+ { pop pop 0 true }
+ %% ending chr -> clpar, comma, |, <, >, =, !,
+ {get dup dup 41 eq
+ exch dup 124 eq
+ exch dup 93 eq
+ exch dup 44 eq
+ exch dup 30 eq
+ exch dup 60 ge exch 62 le and or or or or or}
+ ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% expr is ended by end of str or a +-
+%% STR index -> STR index STR[index] T/F
+/IsEndingTerm { IsEndingExpr { true } { dup dup 43 eq exch 45 eq or } ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% expr is ended by end of str or */
+%% STR index -> STR index STR[index] T/F
+/IsEndingFactor { IsEndingTerm { true } { dup dup 42 eq exch 47 eq or } ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% expr is ended by end of str or ^
+%% STR index -> STR index STR[index] T/F
+/IsEndingPower { IsEndingFactor { true } { dup 94 eq } ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% STR index -> STR index STR[index]
+/NextNonBlankChar { { dup Strlen eq { 0 exit } if 2 copy get dup neBlkChar { exit } if pop 1 add } loop } bind def
+/neBlkChar { dup 32 ne exch dup 10 ne exch 9 ne and and } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%
+%% DEBUG
+/BRK {false} def
+/BRKtrue {/BRK true def} def
+/BRKStop {BRK {BRKtoto} if } def
+/BRKEvalStop {BRK exch if } def
+/BRKBRK2true {BRK {BRK2true} if } def
+/BRK2 {false} def
+/BRK2true {/BRK2 true def} def
+/BRK2Stop {BRK2 {BRK2toto} if } def/BRK {false} def
+end
+%
+%-------------------------------------------------------------------------------%
+%
+/tx@AlgToPs 12 dict def tx@AlgToPs begin
+%
+%% algExpr -> PSVector
+/AlgToPs { tx@CoreAnalyzerDict begin InitParser AnalyzeListOfE pop pop EndingSequence end } def
+/EndingSequence { ExpressionVector aload length /end cvx exch 1 add array astore } def
+/InitParser { /ExpressionVector [ /tx@AddMathFunc cvx /begin cvx ] def dup length /Strlen exch def 0 } def
+/Strlen 0 def
+/EvalListOfExpr {} def%
+/EvalNumber {%
+ ReadNumber cvr /ExpressionVector ExpressionVector aload length dup 3 add -1 roll cvx
+ exch 1 add array astore def NextNonBlankChar pop } def
+/EvalAddSub {%
+ /ExpressionVector ExpressionVector aload length dup 5 add -1 roll
+ 43 eq { /add } { /sub } ifelse cvx exch 1 add array astore def
+} def
+/EvalMulDiv {%
+ /ExpressionVector ExpressionVector aload length dup 5 add -1 roll
+ 42 eq { /mul } { /div } ifelse cvx exch 1 add array astore def
+} def
+/EvalPower {%
+ /ExpressionVector ExpressionVector aload length dup 5 add -1 roll
+ pop /exp cvx exch 1 add array astore def
+} def
+/EvalFactorial {% DR 09/2011
+ /ExpressionVector ExpressionVector aload length
+ /fact cvx exch 1 add array astore def
+} def
+/EvalLiteral {%
+ ReadLiteral
+ dup 40 eq%%% there is an open par -> function call
+ { pop 2 index
+ dup (Sum) eq { EvalSum }
+ { dup (IfTE) eq { EvalCond }
+ { dup (Derive) eq { pop EvalDerive }
+ { pop 1 add NextNonBlankChar pop AnalyzeListOfE 2 index TrigoFunc
+ /ExpressionVector ExpressionVector aload length dup 5 add -1 roll cvn cvx
+ exch 1 add array astore def 1 add NextNonBlankChar pop } ifelse } ifelse} ifelse }
+ { /ExpressionVector ExpressionVector aload length dup 6 add -1 roll cvn cvx exch 1 add array astore def
+ dup 91 eq%%% there is an open bracket -> vector element
+ { pop 1 add NextNonBlankChar pop AnalyzeExpr
+ /ExpressionVector ExpressionVector aload length /cvi cvx exch /get cvx exch 2 add array astore def 1 add }
+ { pop NextNonBlankChar pop }
+ ifelse}
+ ifelse
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% the derive function : Derive(n,f(x))
+%% firstparindex lastparindex ->
+/EvalDerive {
+ %% manage the function descripiton
+ 1 add ReadNumber 3 1 roll NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ 1 add NextNonBlankChar pop
+ 3 -1 roll cvi
+ dup 0 eq
+ { pop AnalyzeExpr 3 -1 roll pop 1 add }
+ { 1 sub 3 1 roll (x) exch tx@Derive begin DeriveIndexed end 4 -1 roll
+ { (x) tx@Derive begin Derive end } repeat
+ ExpressionVector exch /ExpressionVector [] def
+ AlgToPs aload length
+ /ExpressionVector 1 index 3 add -1 roll aload length dup 3 add -1 roll /l2 exch def /l1 exch def
+ l1 l2 add 1 add l2 neg roll l1 l2 add array astore def 3 -1 roll pop 1 add
+ 1 index length /Strlen exch def } ifelse
+} def
+/EvalSum {%
+ pop 1 add NextNonBlankChar pop
+ %% read the variable name
+ ReadLiteral pop NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_first_comma_in_Sum } if
+ %% read the initial value
+ 1 add NextNonBlankChar pop ReadNumber cvi 3 1 roll
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ %% read the increment value
+ 1 add NextNonBlankChar pop ReadNumber cvi 3 1 roll
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ %% read the limit value
+ 1 add NextNonBlankChar pop ReadNumber cvi 3 1 roll
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ /ExpressionVector ExpressionVector aload length dup 7 add -3 roll 0 4 1 roll
+ 5 -1 roll 4 add array astore def
+ %% keep ExpressionVector for later and create a new one for internal Sum computation
+ ExpressionVector 3 1 roll /ExpressionVector [ 6 -1 roll cvn /exch cvx /def cvx ] def
+ 1 add NextNonBlankChar pop AnalyzeExpr
+ %% add each term
+ /ExpressionVector ExpressionVector aload length 1 add /add cvx exch array astore def
+ /ExpressionVector 4 -1 roll aload length ExpressionVector cvx /for cvx 3 -1 roll 2 add
+ array astore def 3 -1 roll pop 1 add
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Convert to radians if trigo function call
+%% (name) ->
+/TrigoFunc {
+ dup (cos) eq 1 index (sin) eq or exch (tan) eq or
+ { /ExpressionVector ExpressionVector aload length Pi /div cvx 180 /mul cvx 5 -1 roll 4 add
+ array astore def
+ } if
+} def
+/EvalCond {%
+ pop 1 add AnalyzeCond NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_first_comma_in_IfTE } if
+ ExpressionVector 3 1 roll /ExpressionVector [] def
+ 1 add AnalyzeExpr ExpressionVector 3 1 roll /ExpressionVector [] def
+ NextNonBlankChar 44 ne { ANALYZER_ERROR_missing_second_comma_in_IfTE } if
+ 1 add AnalyzeExpr
+ NextNonBlankChar 41 ne { ANALYZER_ERROR_missing_ending parenthesis_in_IfTE } if
+ ExpressionVector
+ /ExpressionVector 6 -1 roll aload length dup
+ 6 add -1 roll cvx exch dup 4 add -1 roll cvx /ifelse cvx 3 -1 roll 3 add array astore def
+ 1 add 3 -1 roll pop
+} def
+%% CondOp STR index
+/EvalCondOp {%
+ 3 -1 roll
+ dup (=) eq { /eq } {%
+ dup (<) eq { /lt } {%
+ dup (>) eq { /gt } {%
+ dup (>=) eq { /ge } {%
+ dup (<=) eq { /ge } {%
+ dup (!=) eq { /ne } { ERROR_non_valid_conditional_operator }
+ ifelse } ifelse } ifelse } ifelse } ifelse } ifelse
+ cvx exch pop
+ /ExpressionVector ExpressionVector aload length dup 3 add -1 roll exch 1 add array astore def } def
+/EvalUnaryOp {
+ 3 -1 roll 45 eq { /ExpressionVector ExpressionVector aload length /neg cvx exch 1 add array astore def } if
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% H O O K S
+/AnalyzePreHook {} bind def
+/PreEvalHook {} bind def
+/AnalyzeListOfEPostHook {} bind def
+/AnalyzePostHook {} def
+/RollOp { 3 1 roll } bind def
+end %tx@CoreAnalyzerDict
+%
+%--------------------------------------------------------------------%
+%
+/tx@Derive 41 dict def tx@Derive begin
+%%increase ^^ for each function added
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% algExpr variable -> PSVector
+/Derive {%
+ 10240 string 3 1 roll 0 3 1 roll
+ /Variable exch def
+ tx@CoreAnalyzerDict begin InitParser AnalyzeListOfE end
+} def
+/Strlen 0 def
+/InitParser { dup length /Strlen exch def 0 } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% algExpr variable index -> PSVector
+/DeriveIndexed {%
+ 3 1 roll 10240 string 3 1 roll 0 3 1 roll
+ /Variable exch def
+ tx@CoreAnalyzerDict begin InitParser pop 4 -1 roll AnalyzeExpr 4 -2 roll pop pop 4 -2 roll exch pop end
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u,v)'=-(u',v')
+/EvalListOfExpr {%
+ 4 2 roll 2 copy 9 -1 roll dup length 4 1 roll putinterval add AddPipe
+ 2 copy 7 -1 roll dup length 4 1 roll putinterval add
+ 6 -2 roll pop pop
+ 2 copy pop 0 6 2 roll GetIntervalNewStr 5 1 roll 2 copy 0 exch getinterval 6 1 roll } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (-u)'=-(u')
+/EvalUnaryOp {
+ 4 -2 roll 4 index (0) eq
+ { (0) StrConcat 7 -1 roll pop }
+ { 7 -1 roll 45 eq
+ { AddSub AddOpPar true } { false } ifelse
+ 3 1 roll 5 index StrConcat 3 -1 roll { AddClPar } if } ifelse
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ 7 -2 roll pop pop 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (number)'=0
+/EvalNumber { ReadNumber (0) 6 2 roll } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u+v)'=u'+v'
+/EvalAddSub {%
+ 7 index dup (0) eq
+ { pop true }%% du=0 nothing added
+ { dup length exch 5 index 5 index 3 -1 roll putinterval 4 -1 roll add 3 1 roll false }
+ ifelse
+ 5 index dup (0) eq
+ { pop { (0) } { 4 -2 roll 2 copy pop 0 6 2 roll GetIntervalNewStr } ifelse }%%dv=0
+ { exch
+ { 5 -2 roll 7 index 45 eq { AddSub } if false } %%nothing yet added
+ { 5 -2 roll 7 index 43 eq%%something yet added
+ { AddAdd false } { AddSub AddOpPar true } ifelse }
+ ifelse 11 1 roll
+ 3 -1 roll StrConcat 10 -1 roll { AddClPar } if
+ 2 copy pop 0 6 2 roll GetIntervalNewStr }
+ ifelse
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u*v)' or (u/v)'
+/EvalMulDiv { 6 index 42 eq {EvalMul} {EvalDiv} ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u*v)'=u'*v+u*v'
+/EvalMul {%
+ 4 -2 roll 7 index dup (0) eq
+ { pop false }%%du=0
+ { (1) eq%%du=1
+ { false }
+ { AddOpPar 7 index StrConcat AddClPar AddMul AddOpPar true } ifelse
+ 3 1 roll 6 index StrConcat 3 -1 roll { AddClPar } if
+ true }%%du!=0
+ ifelse
+ 5 1 roll 5 index (0) eq
+ { 5 -1 roll not { (0) StrConcat } if }%%dv=0
+ { 5 -1 roll { AddAdd } if
+ 4 index (1) eq
+ { 8 index StrConcat }
+ { AddOpPar 8 index StrConcat AddClPar AddMul AddOpPar 4 index StrConcat AddClPar }
+ ifelse
+ }%%dv!=0
+ ifelse
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u/v)'=(u'*v-u*v')/v^2
+/EvalDiv {%
+ 4 -2 roll
+ 4 index (0) eq%%dv=0 -> u'/v
+ { 7 index (0) eq { (0) StrConcat } { AddOpPar 7 index StrConcat AddClPar AddDiv 5 index StrConcat } ifelse }
+ { 7 index dup (0) eq
+ { pop }%%du=0
+ { (1) eq%%du=1
+ { false }
+ { AddOpPar 7 index StrConcat AddClPar AddMul AddOpPar true } ifelse
+ 3 1 roll 6 index StrConcat 3 -1 roll { AddClPar } if}%%du!=0
+ ifelse
+ AddSub
+ 4 index (1) eq
+ { 8 index StrConcat }
+ { AddOpPar 8 index StrConcat AddClPar AddMul AddOpPar 4 index StrConcat AddClPar }
+ ifelse
+ %}%%dv!=0
+ 2 copy GetIntervalNewStr 3 1 roll pop 0 AddOpPar 3 -1 roll StrConcat AddClPar
+ AddDiv AddOpPar 5 index StrConcat AddClPar 2 copy (^2) putinterval 2 add }
+ ifelse
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% str1 index str2 -> str1 index
+/StrConcat { dup length 4 2 roll 2 copy 6 -1 roll putinterval 3 -1 roll add } bind def
+/GetIntervalNewStr { 0 exch getinterval dup length string copy } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u^v)'=(u^v)'=u'vu^(v-1)+v'u^(v)ln(u)
+/EvalPower {%
+ 4 -2 roll 7 index (0) eq
+ {%%if du=0 then (u^v)'=v'ln(u)u^v
+ 4 index (0) eq
+ { (0) StrConcat }%%if dv=0 then (u^v)'=0
+ { 4 index (1) ne { AddOpPar 4 index StrConcat (\)*) StrConcat } if
+ 8 index (e) ne { (ln\() StrConcat 8 index StrConcat (\)*) StrConcat } if
+ AddOpPar 8 index StrConcat (\)^\() StrConcat 5 index StrConcat AddClPar } ifelse
+ }
+ {%%du!=0
+ 4 index (0) eq
+ {%%if dv=0 then (u^v)'=vu'u^(v-1)
+ 5 index dup IsStrNumber
+ { dup (0) eq
+ { StrConcat }
+ { dup dup (1) eq exch (1.0) eq or
+ { StrConcat }
+ { StrConcat
+ 7 index dup (1) ne exch (1.0) ne and%%%dr 09102006 insert du if <> 1
+ { (*\() StrConcat 7 index StrConcat (\)) StrConcat } if%%%dr 09102006
+ (*\() StrConcat 8 index StrConcat (\)) StrConcat
+ 5 index dup dup (2) eq exch (2.0) eq or
+ { pop } { cvr 1 sub 20 string cvs 3 1 roll (^) StrConcat 3 -1 roll StrConcat } ifelse } ifelse } ifelse }
+ { pop AddOpPar 5 index StrConcat (\)*\() StrConcat 8 index StrConcat (\)^\() StrConcat
+ 5 index StrConcat (-1\)) StrConcat } ifelse
+ }
+ {%%if dv!=0 and du!=0 then (u^v)'=u'vu^(v-1)+v'u^(v)ln(u)
+ 7 index (1) ne { AddOpPar 7 index StrConcat (\)*) StrConcat } if
+ AddOpPar 5 index StrConcat (\)*\() StrConcat
+ 8 index StrConcat (\)^\() StrConcat
+ 5 index StrConcat (-1\)+\() StrConcat
+ 4 index (1) ne { 4 index StrConcat (\)*\() StrConcat } if
+ 8 index StrConcat (\)^\() StrConcat
+ 5 index StrConcat (\)*ln\() StrConcat
+ 8 index StrConcat AddClPar
+ } ifelse
+ } ifelse
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% No derivative for factorial ! only cst => null derivative
+/EvalFactorial {% DR 09/2011
+ 4 index (0) eq
+ { (0) mark 8 -2 roll cleartomark 2 index 7 index dup 4 index exch sub getinterval exch 6 2 roll }
+ { DERIVATIVE_ENGINE_ERROR_no_variable_in_factorial } ifelse
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% str -> true/false
+/IsStrNumber {%
+ true exch
+ { dup 48 lt exch dup 57 gt 3 -1 roll or
+ exch dup 46 ne%%.
+ exch dup 43 ne%%+
+ exch 45 ne%%-
+ and and and { pop false } if } forall
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% literal switch -> func call, vector, variables
+/EvalLiteral {%
+ ReadLiteral dup 40 eq%%% there is an open par -> function call
+ { pop (EvalFunc_ ) 9 4 index StrConcat 0 exch getinterval cvn cvx exec }
+ { dup 91 eq%%% there is an open bracket -> vector element
+ { DERIVATIVE_ENGINE_ERROR_vector_not_yet_implemented }
+ { pop EvalVariable }
+ ifelse }
+ ifelse
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% first last parpos Expr[first:parpos-1] ->
+/EvalVariable { 2 index Variable eq { (1) } { (0) } ifelse 4 -1 roll exch 6 2 roll } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (f(u))'=u'f'(u)
+/EvalFunc {
+ 4 2 roll 4 index (1) ne
+ { AddOpPar 4 index StrConcat (\)*) StrConcat } if
+ (Eval ) 4 8 index StrConcat 0 exch getinterval cvn cvx exec
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 9 -3 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Func derivative -> Eval<func>
+/EvalFunc_sin {%
+ PreCommonFunc
+ { (cos\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_cos {%
+ PreCommonFunc
+ { (\(-sin\() StrConcat 5 index StrConcat (\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_tan {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/cos\() StrConcat 5 index StrConcat (\)^2) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_asin {%
+ PreCommonFunc
+ { (1/sqrt\(1-\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_acos {%
+ PreCommonFunc
+ { (-1/sqrt\(1-\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_atg {%
+ PreCommonFunc
+ { (1/\(1+\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_ln {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_exp {%
+ PreCommonFunc
+ { (exp\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_EXP {%
+ PreCommonFunc
+ { (EXP\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_sqrt {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/\(2*sqrt\() StrConcat 5 index StrConcat (\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_Fact {%
+ PreCommonFunc { DERIVATIVE_ENGINE_ERROR_no_variable_expression_in_Fact } if
+ PostCommonFunc } def
+/EvalFunc_sh {%
+ PreCommonFunc
+ { (ch\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_ch {%
+ PreCommonFunc
+ { (sh\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_th {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/ch\() StrConcat 5 index StrConcat (\)^2) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_Argsh {%
+ PreCommonFunc
+ { (1/sqrt\(1+\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_Argch {%
+ PreCommonFunc
+ { (1/sqrt\(\() StrConcat 5 index StrConcat (\)^2-1\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_Argth {%
+ PreCommonFunc
+ { (1/\(1-\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/PreCommonFunc {
+ 1 add NextNonBlankChar pop 3 -1 roll 5 1 roll AnalyzeExpr 1 add NextNonBlankChar pop
+ 4 2 roll 4 index (0) eq
+ { (0) StrConcat false }
+ { 4 index (1) ne { AddOpPar 4 index StrConcat (\)*) StrConcat } if true } ifelse
+} def
+/PostCommonFunc {
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 9 -3 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+/EvalFunc_Derive {%
+ 1 add ReadNumber cvi 1 add dup cvr log 1 add cvi string cvs
+ 4 -1 roll pop 5 1 roll 1 add NextNonBlankChar pop AnalyzeExpr 1 add
+ 4 -2 roll (Derive\() StrConcat 7 -1 roll StrConcat (,) StrConcat 6 -1 roll StrConcat AddClPar
+ 2 copy pop 0 6 2 roll GetIntervalNewStr 6 -1 roll pop 2 index 6 index dup 4 index exch sub getinterval
+ exch 6 2 roll } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% literal switch -> func call, vector, variables
+/EvalFunc_Sum {%
+ 1 add NextNonBlankChar pop
+ %% read the variable name
+ ReadLiteral pop 3 -1 roll pop NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_first_comma_in_Sum } if
+ %% read the initial value
+ 1 add NextNonBlankChar pop ReadNumber pop
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ %% read the increment value
+ 1 add NextNonBlankChar pop ReadNumber pop
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_third_comma_in_Sum } if
+ %% read the limit value
+ 1 add NextNonBlankChar pop ReadNumber pop
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_fourth_comma_in_Sum } if
+ 1 add NextNonBlankChar pop dup 6 1 roll 3 -1 roll pop AnalyzeExpr 1 add NextNonBlankChar pop
+ 4 -2 roll 3 index 8 index dup 9 index exch sub getinterval StrConcat
+ 4 index StrConcat AddClPar
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 9 -3 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% literal switch -> func call, vector, variables
+/EvalFunc_IfTE {%
+ 3 -1 roll pop 1 add NextNonBlankChar pop SkipCond
+ NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_first_comma_in_IfTE } if
+ 1 add NextNonBlankChar pop dup 5 1 roll
+ AnalyzeExpr NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_second_comma_in_IfTE } if
+ 1 add NextNonBlankChar pop
+ AnalyzeExpr 1 add NextNonBlankChar pop
+ 4 -2 roll 3 index 10 index dup 11 index exch sub getinterval StrConcat
+ 6 index StrConcat (,) StrConcat 4 index StrConcat AddClPar
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% advance in str until a comma is found (no error detection!)
+%% str index -> str index'
+/SkipCond { { 1 add 2 copy get 44 eq {exit } if } loop } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Convert to radians if trigo function call
+%% (name) ->
+/TrigoFunc {
+ dup (cos) eq 1 index (sin) eq or exch (tan) eq or
+ { /ExpressionVector ExpressionVector aload length Pi /div cvx 180 /mul cvx 5 -1 roll 4 add
+ array astore def
+ } if
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% No derivative for condition....
+/EvalCondOp { 3 -1 roll pop } bind def
+/PutIntervalOneAdd {putinterval 1 add} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add open parenthesis in string at the given index
+%% str index -> str index+1
+/AddOpPar {2 copy (\() PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add close parenthesis in string at the given index
+%% str index -> str index+1
+/AddClPar {2 copy (\)) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add 0 in string at the given index
+%% str index -> str index+1
+/AddZero {2 copy (0) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add open parenthesis in string at the given index
+%% str index -> str index+1
+/AddMul {2 copy (*) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add open parenthesis in string at the given index
+%% str index -> str index+1
+/AddDiv {2 copy (/) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add a plus sign in string at the given index
+%% str index -> str index+1
+/AddAdd {2 copy (+) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add a minus sign in string at the given index
+%% str index -> str index+1
+/AddSub {2 copy (-) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add a pipe sign in string at the given index
+%% str index -> str index+1
+/AddPipe {2 copy (|) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% H O O K S
+/AnalyzePreHook { dup 5 1 roll } bind def
+/PreEvalHook {} def
+/AnalyzePostHook { 7 -1 roll pop } bind def
+/AnalyzeListOfEPostHook { 6 -1 roll mark 6 1 roll cleartomark } bind def
+/RollOp { 5 1 roll } bind def
+end%%%tx@CoreAnalyzerDict
+/tx@AddMathFunc 12 dict def tx@AddMathFunc begin
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% NEW FUNC
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% function arcsine in radians asin(x)=atan(x/sqrt(1-x^2))
+%% x -> theta
+/asin {%
+ dup abs 1 gt { EQDFasinrangeerror } if
+ dup dup dup mul 1 exch sub sqrt atan exch 0 lt { 360 sub } if DegtoRad
+} def
+%% function arccosine in radians acos(x)=atan(sqrt(1-x^2)/x)
+%% x -> theta
+/acos {%
+ dup abs 1 gt { EQDFacosrangeerror } if
+ dup dup mul 1 exch sub sqrt exch atan DegtoRad
+} def
+%% function arctangent in radians
+%% x -> theta
+/atg { 1 atan dup 90 gt { 360 sub } if DegtoRad } bind def
+%% HYPERBOLIC FUNCTIONS
+/sh { dup Ex exch neg Ex sub 2 div } def
+/ch { dup Ex exch neg Ex add 2 div } def
+/th { dup sh exch ch div } def
+/Argsh { dup dup mul 1 add sqrt add ln } def
+/Argch { dup dup mul 1 sub sqrt add ln } def
+/Argth { dup 1 add exch 1 exch sub div ln 2 div } def
+%% modified exponential funtion for 0
+%% x n -> x^n
+/Exp { dup 0 eq { pop pop 1 } { exp } ifelse } bind def
+%% modified exponential funtion for 0
+%% x -> e^x
+/Ex { Euler exch exp } bind def
+%%
+%% factorial function
+%% n -> n!
+/Fact { 1 exch 2 exch 1 exch { mul } for } bind def
+/fact { Fact } bind def
+/! { Fact } bind def
+end
+%
+% END pst-algparser.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-tools.pro 0 0
+% $Id: pst-tools.pro 622 2012-01-01 15:36:14Z herbert $
+%
+%% PostScript tools prologue for pstricks.tex.
+%% Version 0.02, 2012/01/01
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%
+%
+/Pi2 1.57079632679489661925640 def
+/factorial { % n on stack, returns n!
+ dup 0 eq { 1 }{
+ dup 1 gt { dup 1 sub factorial mul } if }
+ ifelse } def
+%
+/MoverN { % m n on stack, returns the binomial coefficient m over n
+ 2 dict begin
+ /n exch def /m exch def
+ n 0 eq { 1 }{
+ m n eq { 1 }{
+ m factorial n factorial m n sub factorial mul div } ifelse } ifelse
+ end
+} def
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% subroutines for complex numbers, given as an array [a b]
+% which is a+bi = Real+i Imag
+%
+/cxadd { % [a1 b1] [a2 b2] = [a1+a2 b1+b2]
+ dup 0 get % [a1 b1] [a2 b2] a2
+ 3 -1 roll % [a2 b2] a2 [a1 b1]
+ dup 0 get % [a2 b2] a2 [a1 b1] a1
+ 3 -1 roll % [a2 b2] [a1 b1] a1 a2
+ add % [a2 b2] [a1 b1] a1+a2
+ 3 1 roll % a1+a2 [a2 b2] [a1 b1]
+ 1 get % a1+a2 [a2 b2] b1
+ exch 1 get % a1+a2 b1 b2
+ add 2 array astore
+} def
+%
+/cxneg { % [a b]
+ dup 1 get % [a b] b
+ exch 0 get % b a
+ neg exch neg % -a -b
+ 2 array astore
+} def
+%
+/cxsub { cxneg cxadd } def % same as negative addition
+%
+% [a1 b1][a2 b2] = [a1a2-b1b2 a1b2+b1a2] = [a3 b3]
+/cxmul { % [a1 b1] [a2 b2]
+ dup 0 get % [a1 b1] [a2 b2] a2
+ exch 1 get % [a1 b1] a2 b2
+ 3 -1 roll % a2 b2 [a1 b1]
+ dup 0 get % a2 b2 [a1 b1] a1
+ exch 1 get % a2 b2 a1 b1
+ dup % a2 b2 a1 b1 b1
+ 5 -1 roll dup % b2 a1 b1 b1 a2 a2
+ 3 1 roll mul % b2 a1 b1 a2 b1a2
+ 5 -2 roll dup % b1 a2 b1a2 b2 a1 a1
+ 3 -1 roll dup % b1 a2 b1a2 a1 a1 b2 b2
+ 3 1 roll mul % b1 a2 b1a2 a1 b2 a1b2
+ 4 -1 roll add % b1 a2 a1 b2 b3
+ 4 2 roll mul % b1 b2 b3 a1a2
+ 4 2 roll mul sub % b3 a3
+ exch 2 array astore
+} def
+%
+% [a b]^2 = [a^2-b^2 2ab] = [a2 b2]
+/cxsqr { % [a b] square root
+ dup 0 get exch 1 get % a b
+ dup dup mul % a b b^2
+ 3 -1 roll % b b^2 a
+ dup dup mul % b b^2 a a^2
+ 3 -1 roll sub % b a a2
+ 3 1 roll mul 2 mul % a2 b2
+ 2 array astore
+} def
+%
+/cxsqrt { % [a b]
+% dup cxnorm sqrt /r exch def
+% cxarg 2 div RadtoDeg dup cos r mul exch sin r mul cxmake2
+ cxlog % log[a b]
+ 2 cxrdiv % log[a b]/2
+ aload pop exch % b a
+ 2.781 exch exp % b exp(a)
+ exch cxconv exch % [Re +iIm] exp(a)
+ cxrmul %
+} def
+%
+/cxarg { % [a b]
+ aload pop % a b
+ exch atan % arctan b/a
+ DegtoRad % arg(z)=atan(b/a)
+} def
+%
+% log[a b] = [a^2-b^2 2ab] = [a2 b2]
+/cxlog { % [a b]
+ dup % [a b][a b]
+ cxnorm % [a b] |z|
+ log % [a b] log|z|
+ exch % log|z|[a b]
+ cxarg % log|z| Theta
+ cxmake2 % [log|z| Theta]
+} def
+%
+% square of magnitude of complex number
+/cxnorm2 { % [a b]
+ dup 0 get exch 1 get % a b
+ dup mul % a b^2
+ exch dup mul add % a^2+b^2
+} def
+%
+/cxnorm { % [a b]
+ cxnorm2 sqrt
+} def
+%
+/cxconj { % conjugent complex
+ dup 0 get exch 1 get % a b
+ neg 2 array astore % [a -b]
+} def
+%
+/cxre { 0 get } def % real value
+/cxim { 1 get } def % imag value
+%
+% 1/[a b] = ([a -b]/(a^2+b^2)
+/cxrecip { % [a b]
+ dup cxnorm2 exch % n2 [a b]
+ dup 0 get exch 1 get % n2 a b
+ 3 -1 roll % a b n2
+ dup % a b n2 n2
+ 4 -1 roll exch div % b n2 a/n2
+ 3 1 roll div % a/n2 b/n2
+ neg 2 array astore
+} def
+%
+/cxmake1 { 0 2 array astore } def % make a complex number, real given
+/cxmake2 { 2 array astore } def % dito, both given
+%
+/cxdiv { cxrecip cxmul } def
+%
+% multiplikation by a real number
+/cxrmul { % [a b] r
+ exch aload pop % r a b
+ 3 -1 roll dup % a b r r
+ 3 1 roll mul % a r b*r
+ 3 1 roll mul % b*r a*r
+ exch 2 array astore % [a*r b*r]
+} def
+%
+% division by a real number
+/cxrdiv { % [a b] r
+ 1 exch div % [a b] 1/r
+ cxrmul
+} def
+%
+% exp(i theta) = cos(theta)+i sin(theta) polar<->cartesian
+/cxconv { % theta
+ RadtoDeg dup sin exch cos cxmake2
+} def
+
+%%%%% ### bubblesort ###
+%% syntax : array bubblesort --> array2 trie par ordre croissant
+%% code de Bill Casselman
+%% http://www.math.ubc.ca/people/faculty/cass/graphics/text/www/
+/bubblesort { % on stack must be an array [ ... ]
+4 dict begin
+ /a exch def
+ /n a length 1 sub def
+ n 0 gt {
+ % at this point only the n+1 items in the bottom of a remain to
+ % the sorted largest item in that blocks is to be moved up into
+ % position n
+ n {
+ 0 1 n 1 sub {
+ /i exch def
+ a i get a i 1 add get gt {
+ % if a[i] > a[i+1] swap a[i] and a[i+1]
+ a i 1 add
+ a i get
+ a i a i 1 add get
+ % set new a[i] = old a[i+1]
+ put
+ % set new a[i+1] = old a[i]
+ put
+ } if
+ } for
+ /n n 1 sub def
+ } repeat
+ } if
+ a % return the sorted array
+end
+} def
+%
+/concatstringarray{ % [(a) (b) ... (z)] --> (ab...z) 20100422
+ 0 1 index { length add } forall
+ string
+ 0 3 2 roll
+ { 3 copy putinterval length add }forall
+ pop
+} bind def
+%
+/dot2comma {% on stack a string (...)
+ 2 dict begin
+ /Output exch def
+ 0 1 Output length 1 sub {
+ /Index exch def
+ Output Index get 46 eq { Output Index 44 put } if
+ } for
+ Output
+ end
+} def
+%
+%-----------------------------------------------------------------------------%
+% END pst-tools.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-dots.pro 0 0
+% $Id: pst-dots.pro 130 2009-08-27 08:55:03Z herbert $
+%
+%% PostScript prologue for pstricks.tex.
+%% Version 2.02, 2009/06/16
+%%
+%% For distribution, see pstricks.tex.
+%%
+%% Timothy Van Zandt <tvz@Princeton.EDU>
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%%
+%% Modified by Etienne Riga - Dec. 16, 1999
+%% Modified by Etienne Riga - 2005/01/01 (er)
+%% to add /Diamond, /SolidDiamond and /BoldDiamond
+%% Modified by Herbert Voss (hv) - 2008/04/17
+%
+10 dict dup begin % hold local
+ /FontType 3 def
+ /FontMatrix [.001 0 0 .001 0 0] def
+% /FontBBox [-571.5 -742.5 571.5 742.5] def % changed to next line 20060616 hv
+ /FontBBox [-1000 -1000 1000 1000] def % See end of file in /BuildGlyph
+ /Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for % fill the array with /.notdef
+ Encoding % replace with given dot names
+ dup (b) 0 get /Bullet put % get the numerical position of b in ASCII
+% % and save /Bullet at this place in Encoding
+ dup (c) 0 get /Circle put
+ dup (C) 0 get /BoldCircle put % 67
+ dup (u) 0 get /SolidTriangle put
+ dup (t) 0 get /Triangle put
+ dup (T) 0 get /BoldTriangle put
+ dup (r) 0 get /SolidSquare put
+ dup (s) 0 get /Square put
+ dup (S) 0 get /BoldSquare put
+ dup (q) 0 get /SolidPentagon put
+ dup (p) 0 get /Pentagon put
+ dup (P) 0 get /BoldPentagon put
+%%%
+ dup (k) 0 get /Asterisk put
+ dup (K) 0 get /BoldAsterisk put
+ dup (J) 0 get /SolidAsterisk put
+ dup (h) 0 get /Hexagon put
+ dup (H) 0 get /BoldHexagon put
+ dup (G) 0 get /SolidHexagon put
+ dup (f) 0 get /Octogon put % 2008-04-18 hv
+ dup (F) 0 get /BoldOctogon put % 2008-04-18 hv
+ dup (g) 0 get /SolidOctogon put % 2008-04-18 hv
+ dup (a) 0 get /Add put
+ dup (A) 0 get /BoldAdd put % 65
+ dup (x) 0 get /Mul put
+ dup (X) 0 get /BoldMul put
+ dup (m) 0 get /Oplus put
+ dup (M) 0 get /BOplus put
+ dup (e) 0 get /SolidOplus put
+ dup (n) 0 get /Otimes put
+ dup (N) 0 get /BOtimes put
+ dup (E) 0 get /SolidOtimes put
+ dup (i) 0 get /Bar put
+ dup (I) 0 get /BoldBar put
+ dup (l) 0 get /SolidDiamond put
+ dup (d) 0 get /Diamond put
+ (D) 0 get /BoldDiamond put
+%%%
+/CharProcs 47 dict def
+CharProcs begin
+ /CirclePath {0 0 500 0 360 arc closepath} def
+ /Bullet {CirclePath fill} def
+ /Circle {CirclePath .9 .9 scale CirclePath eofill} def
+ /BoldCircle {CirclePath .8 .8 scale CirclePath eofill} def
+ /TrianglePath {0 660 moveto -571.5 -330 lineto 571.5 -330 lineto closepath} def
+ /SolidTriangle {TrianglePath fill} def
+ /Triangle {TrianglePath .85 .85 scale TrianglePath eofill} def
+ /BoldTriangle {TrianglePath .7 .7 scale TrianglePath eofill} def
+ /SquarePath {-450 450 moveto 450 450 lineto 450 -450 lineto -450 -450 lineto closepath} def
+ /SolidSquare {SquarePath fill} def
+ /Square {SquarePath .89 .89 scale SquarePath eofill} def
+ /BoldSquare {SquarePath .78 .78 scale SquarePath eofill} def
+ /PentagonPath {
+ -337.8 -465 moveto 337.8 -465 lineto 546.6 177.6 lineto
+ 0 574.7 lineto -546.6 177.6 lineto closepath
+ } def
+ /SolidPentagon {PentagonPath fill} def
+ /Pentagon {PentagonPath .89 .89 scale PentagonPath eofill} def
+ /BoldPentagon {PentagonPath .78 .78 scale PentagonPath eofill} def
+%-------------- hv begin 2004/07/25 from: er 2003/03/24
+ /HexagonPath {
+ 0 550 moveto -476 275 lineto -476 -275 lineto
+ 0 -550 lineto 476 -275 lineto 476 275 lineto closepath
+ } def
+ /SolidHexagon {HexagonPath fill} def
+ /Hexagon {HexagonPath .89 .89 scale HexagonPath eofill} def
+ /BoldHexagon {HexagonPath .79 .79 scale HexagonPath eofill} def
+% 2008-04-18 hv
+ /OctogonPath {
+ 550 dup 22.5 tan mul dup neg dup add /xMove exch def
+ exch moveto 7 { xMove 0 rlineto 45 rotate } repeat closepath } def
+ /SolidOctogon { OctogonPath fill } def
+ /Octogon { OctogonPath .89 .89 scale OctogonPath eofill } def
+ /BoldOctogon { OctogonPath .79 .79 scale OctogonPath eofill } def
+%
+ /AsteriskPath {
+ 20 0 moveto 10 250 180 500 0 500 curveto
+ -180 500 -10 250 -20 0 curveto closepath
+ } def
+ /Asterisk {
+ AsteriskPath 60 rotate AsteriskPath 60 rotate AsteriskPath
+ 60 rotate AsteriskPath 60 rotate AsteriskPath 60 rotate AsteriskPath fill
+ } def
+%
+ /Basterp {50 250 220 500 0 500 curveto -220 500 -50 250 -50 30 cos 100 mul curveto} def
+ /BoldAsteriskPath {
+ 50 30 cos 100 mul moveto Basterp
+ 60 rotate Basterp 60 rotate Basterp
+ 60 rotate Basterp 60 rotate Basterp
+ 60 rotate Basterp closepath
+ } def
+ /BoldAsterisk {BoldAsteriskPath fill} def
+ /SolidAsterisk {CirclePath .9 .9 scale BoldAsteriskPath eofill} def
+ /CrossPath {
+ 40 550 moveto -40 550 lineto -40 40 lineto -550 40 lineto
+ -550 -40 lineto -40 -40 lineto -40 -550 lineto 40 -550 lineto
+ 40 -40 lineto 550 -40 lineto 550 40 lineto 40 40 lineto closepath
+ } def
+ /BoldCrossPath {80 550 moveto -80 550 lineto -80 80 lineto -550 80 lineto
+ -550 -80 lineto -80 -80 lineto -80 -550 lineto 80 -550 lineto
+ 80 -80 lineto 550 -80 lineto 550 80 lineto 80 80 lineto closepath
+ } def
+ /Add {CrossPath fill} def
+ /Mul {45 rotate CrossPath fill} def
+ /BoldAdd {BoldCrossPath fill} def
+ /BoldMul {45 rotate BoldCrossPath fill} def
+ /Oplus {CirclePath .9 .9 scale CirclePath eofill .775 .775 scale CrossPath fill } def
+ /SolidOplus {CirclePath .775 .775 scale BoldCrossPath eofill} def
+ /BOplus {CirclePath .8 .8 scale CirclePath eofill .775 .775 scale BoldCrossPath fill} def
+ /Otimes {CirclePath .9 .9 scale CirclePath eofill 45 rotate .775 .775 scale CrossPath fill} def
+ /BOtimes {CirclePath .8 .8 scale CirclePath eofill 45 rotate .775 .775 scale BoldCrossPath fill } def
+ /SolidOtimes {CirclePath 45 rotate .775 .775 scale BoldCrossPath eofill} def
+ /BarPath {40 660 moveto -40 660 lineto -40 -660 lineto 40 -660 lineto closepath} def
+ /Bar {BarPath fill} def
+ /BoldBarPath {80 660 moveto -80 660 lineto -80 -660 lineto 80 -660 lineto closepath} def
+ /BoldBar {BoldBarPath fill} def
+ /DiamondPath {0 742.5 moveto -428.5 0 lineto 0 -742.5 lineto 428.5 0 lineto closepath} def
+ /SolidDiamond {DiamondPath fill} def
+ /Diamond {DiamondPath .865 .865 scale DiamondPath eofill} def
+ /BoldDiamond {DiamondPath .73 .73 scale DiamondPath eofill} def
+%%%
+ /.notdef { } def
+end
+%
+/BuildGlyph {
+ exch
+ begin
+% Metrics 1 index get exec 0
+ 0 0
+% BBoxes 3 index get exec
+ -1000 -1000 1000 1000
+% -571.5 -742.5 571.5 742.5
+ setcachedevice
+ CharProcs begin load exec end
+ end
+} def
+%
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+%
+end
+/PSTricksDotFont exch definefont pop
+%
+%% end
+
+%%EndProcSet
+%%BeginProcSet: pst-node.pro 0 0
+% $Id: pst-node.pro 645 2012-02-12 09:09:51Z herbert $
+%%
+%% PostScript prologue for pst-node.tex.
+%% Version 1.13, 2011/11/21.
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%
+/tx@NodeDict 400 dict def tx@NodeDict begin
+tx@Dict begin % from main pstricks dict
+ /T /translate load def
+ /CP /currentpoint load def
+end
+/NewNode { % on stack: { x y } boolean N@name type InitXnode
+ gsave
+ NodeScale % a bugfix for xelatex, it's empty for dvips
+ /next exch def % { x y } boolean N@name type
+ dict dup % { x y } boolean N@name dict dict
+ 3 1 roll def % { x y } boolean dict N@name dict def
+ exch { dup 3 1 roll def } if % { x y } dict boolean
+ begin % { x y } dict begin
+ tx@Dict begin
+ STV CP T exec % set scaling
+ end
+ /NodeMtrx CM def % save CM
+ next % InitXNode
+ end
+ grestore
+} def
+%
+/InitPnode {
+ /Y ED /X ED
+ /NodePos { NodeSep Cos mul NodeSep Sin mul } def
+} def
+%
+/InitCnode {
+ /r ED /Y ED /X ED
+ /NodePos { NodeSep r add dup Cos mul exch Sin mul } def
+} def
+%
+/GetRnodePos {
+ Cos 0 gt { /dx r NodeSep add def } { /dx l NodeSep sub def } ifelse
+ Sin 0 gt { /dy u NodeSep add def } { /dy d NodeSep sub def } ifelse
+ dx Sin mul abs dy
+ Cos mul abs gt { dy Cos mul Sin div dy } { dx dup Sin mul Cos Div } ifelse
+} def
+%
+/InitRnode {
+ /Y ED /X ED X sub /r ED /l X neg def Y add neg /d ED Y sub /u ED
+ /NodePos { GetRnodePos } def
+} def
+%
+/DiaNodePos {
+ w h mul w Sin mul abs h Cos mul abs add Div NodeSep add dup
+ Cos mul exch Sin mul
+} def
+%
+/TriNodePos {
+ Sin s lt
+ { d NodeSep sub dup Cos mul Sin Div exch }
+ { w h mul w Sin mul h Cos abs mul add Div
+ NodeSep add dup Cos mul exch Sin mul
+ } ifelse
+} def
+%
+/InitTriNode {
+ sub 2 div exch
+ 2 div exch
+ 2 copy T
+ 2 copy 4 index index /d ED
+ pop pop pop pop
+ -90 mul rotate
+ /NodeMtrx CM def
+ /X 0 def /Y 0 def
+ d sub abs neg /d ED
+ d add /h ED
+ 2 div h mul h d sub Div /w ED
+ /s d w Atan sin def
+ /NodePos { TriNodePos } def
+} def
+%
+/OvalNodePos {
+ /ww w NodeSep add def
+ /hh h NodeSep add def
+ Sin ww mul Cos hh mul Atan dup cos ww mul exch sin hh mul
+} def
+%
+/GetCenter { begin X Y NodeMtrx transform CM itransform end } def
+%
+/XYPos {
+ dup sin exch cos Do
+ /Cos ED /Sin ED /Dist ED
+ Cos 0 gt
+ { Dist Dist Sin mul Cos div }
+ { Cos 0 lt
+ { Dist neg Dist Sin mul Cos div neg }
+ { 0 Dist Sin mul } ifelse
+ } ifelse
+ Do
+} def
+%
+/GetEdge {
+ dup 0 eq
+ { pop begin 1 0 NodeMtrx dtransform
+ CM idtransform
+ exch atan sub
+ dup
+ sin /Sin ED
+ cos /Cos ED
+ /NodeSep ED
+ NodePos NodeMtrx dtransform CM idtransform end }
+ { 1 eq {{exch}} {{}} ifelse /Do ED pop XYPos } ifelse
+} def
+%
+/AddOffset {
+ 1 index 0 eq
+ { pop pop }
+ { 2 copy 5 2 roll cos mul add 4 1 roll sin mul sub exch } ifelse
+} def
+%
+/GetEdgeA {
+ NodeSepA AngleA NodeA NodeSepTypeA GetEdge
+ OffsetA AngleA AddOffset
+ yA add /yA1 ED
+ xA add /xA1 ED
+} def
+%
+/GetEdgeB {
+ NodeSepB AngleB NodeB NodeSepTypeB GetEdge
+ OffsetB AngleB AddOffset
+ yB add /yB1 ED
+ xB add /xB1 ED
+} def
+%
+/GetArmA {
+ ArmTypeA 0 eq
+ { /xA2 ArmA AngleA cos mul xA1 add def
+ /yA2 ArmA AngleA sin mul yA1 add def }
+ { ArmTypeA 1 eq {{exch}} {{}} ifelse
+ /Do ED
+ ArmA AngleA XYPos OffsetA AngleA AddOffset
+ yA add /yA2 ED
+ xA add /xA2 ED } ifelse
+} def
+%
+/GetArmB {
+ ArmTypeB 0 eq
+ { /xB2 ArmB AngleB cos mul xB1 add def
+ /yB2 ArmB AngleB sin mul yB1 add def }
+ { ArmTypeB 1 eq {{exch}} {{}} ifelse
+ /Do ED
+ ArmB AngleB XYPos OffsetB AngleB AddOffset
+ yB add /yB2 ED
+ xB add /xB2 ED } ifelse
+} def
+%
+/InitNC {
+ /b ED /a ED % second and first node
+ /NodeSepTypeB ED /NodeSepTypeA ED
+ /NodeSepB ED /NodeSepA ED
+ /OffsetB ED /OffsetA ED
+ tx@NodeDict a known tx@NodeDict b known and dup {
+ /NodeA a load def
+ /NodeB b load def
+ NodeA GetCenter /yA ED /xA ED
+ NodeB GetCenter /yB ED /xB ED } if
+} def
+%
+/LPutLine {
+ 4 copy
+ 3 -1 roll sub neg 3 1 roll sub Atan /NAngle ED
+ 1 t sub mul
+ 3 1 roll 1 t sub mul
+ 4 1 roll t mul add /Y ED
+ t mul add /X ED
+} def
+%
+/LPutLines {
+ mark LPutVar counttomark 2 div 1 sub /n ED
+% t floor dup n gt
+ t floor dup n ge % to allow npos<= hv 2008-08-14
+ { pop n 1 sub /t 1 def } { dup t sub neg /t ED } ifelse
+ cvi 2 mul { pop } repeat
+ LPutLine
+ cleartomark
+} def
+%
+/BezierMidpoint {
+ /y3 ED /x3 ED /y2 ED /x2 ED /y1 ED /x1 ED /y0 ED /x0 ED /t ED
+ /cx x1 x0 sub 3 mul def
+ /cy y1 y0 sub 3 mul def
+ /bx x2 x1 sub 3 mul cx sub def
+ /by y2 y1 sub 3 mul cy sub def
+ /ax x3 x0 sub cx sub bx sub def
+ /ay y3 y0 sub cy sub by sub def
+ ax t 3 exp mul bx t t mul mul add
+ cx t mul add x0 add ay t 3 exp mul
+ by t t mul mul add cy t mul add
+ y0 add 3 ay t t mul mul mul 2
+ by t mul mul add cy add 3 ax t t mul mul mul
+ 2 bx t mul mul add cx add atan /NAngle ED
+ /Y ED /X ED
+} def
+%
+/HPosBegin { yB yA ge { /t 1 t sub def } if /Y yB yA sub t mul yA add def
+} def
+/HPosEnd { /X Y yyA sub yyB yyA sub Div xxB xxA sub mul xxA add def
+/NAngle yyB yyA sub xxB xxA sub Atan def } def
+/HPutLine { HPosBegin /yyA ED /xxA ED /yyB ED /xxB ED HPosEnd } def
+/HPutLines { HPosBegin yB yA ge { /check { le } def } { /check { ge } def
+} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { dup Y check { exit
+} { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark HPosEnd
+} def
+/VPosBegin { xB xA lt { /t 1 t sub def } if /X xB xA sub t mul xA add def
+} def
+/VPosEnd { /Y X xxA sub xxB xxA sub Div yyB yyA sub mul yyA add def
+/NAngle yyB yyA sub xxB xxA sub Atan def } def
+/VPutLine { VPosBegin /yyA ED /xxA ED /yyB ED /xxB ED VPosEnd } def
+/VPutLines { VPosBegin xB xA ge { /check { le } def } { /check { ge } def
+} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { 1 index X check {
+exit } { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark
+VPosEnd } def
+/HPutCurve { gsave newpath /SaveLPutVar /LPutVar load def LPutVar 8 -2
+roll moveto curveto flattenpath /LPutVar [ {} {} {} {} pathforall ] cvx
+def grestore exec /LPutVar /SaveLPutVar load def } def
+/NCCoor { /AngleA yB yA sub xB xA sub Atan def /AngleB AngleA 180 add def
+GetEdgeA GetEdgeB /LPutVar [ xB1 yB1 xA1 yA1 ] cvx def /LPutPos {
+LPutVar LPutLine } def /HPutPos { LPutVar HPutLine } def /VPutPos {
+LPutVar VPutLine } def LPutVar } def
+%
+/NCLine {
+ NCCoor
+ tx@Dict begin
+ ArrowA CP 4 2 roll
+ ArrowB
+ lineto pop pop
+ end
+} def
+%
+/NCLines {
+ false NArray
+ n 0 eq
+ { NCLine }
+ { 2 copy yA sub exch xA sub Atan /AngleA ED
+ n 2 mul dup index exch index yB sub exch xB sub
+ Atan /AngleB ED
+ GetEdgeA GetEdgeB
+ /LPutVar [ xB1 yB1 n 2 mul 4 add 4 roll xA1 yA1 ] cvx def
+ mark LPutVar
+ tx@Dict begin false Line end
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+ } ifelse
+} def
+%
+/NCCurve {
+ GetEdgeA
+ GetEdgeB
+ xA1 xB1 sub yA1 yB1 sub Pyth 2 div dup 3 -1
+roll mul /ArmA ED mul /ArmB ED /ArmTypeA 0 def /ArmTypeB 0 def GetArmA
+GetArmB xA2 yA2 xA1 yA1 tx@Dict begin ArrowA end xB2 yB2 xB1 yB1 tx@Dict
+begin ArrowB end curveto /LPutVar [ xA1 yA1 xA2 yA2 xB2 yB2 xB1 yB1 ]
+cvx def /LPutPos { t LPutVar BezierMidpoint } def /HPutPos { { HPutLines
+} HPutCurve } def /VPutPos { { VPutLines } HPutCurve } def } def
+%
+/NCAngles {
+ GetEdgeA GetEdgeB GetArmA GetArmB
+ /mtrx AngleA matrix rotate def
+ xA2 yA2 mtrx transform pop
+ xB2 yB2 mtrx transform exch pop
+ mtrx itransform
+ /y0 ED /x0 ED
+ mark ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 x0 y0 xA2 yA2
+ ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 x0 y0 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def } def
+%
+/NCAngle {
+ GetEdgeA GetEdgeB GetArmB
+ /mtrx AngleA matrix rotate def
+ xB2 yB2 mtrx itransform pop xA1 yA1 mtrx itransform exch pop mtrx transform
+ /y0 ED /x0 ED
+ mark
+ ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 x0 y0 xA1 yA1
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 x0 y0 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+} def
+%
+/NCBar {
+ GetEdgeA GetEdgeB GetArmA GetArmB
+ /mtrx AngleA matrix rotate def
+ xA2 yA2 mtrx itransform pop
+ xB2 yB2 mtrx itransform pop
+ sub dup 0 mtrx transform
+ 3 -1 roll 0 gt
+ { /yB2 exch yB2 add def /xB2 exch xB2 add def }
+ { /yA2 exch neg yA2 add def /xA2 exch neg xA2 add def } ifelse
+ mark
+ ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 xA2 yA2 ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+} def
+%
+/NCDiag {
+ /lineAngle ED
+ GetEdgeA GetEdgeB GetArmA GetArmB mark
+ lineAngle abs 0 gt {
+ /xTemp xA2 10 add def
+ /yTemp yA2 lineAngle dup sin exch cos div 10 mul add def
+ /dY1 yTemp yA2 sub def
+ /dX1 xTemp xA2 sub def
+ /dY2 yB2 yB1 sub def
+ /dX2 xB2 xB1 sub def
+ dX1 abs 0.01 lt {
+ /m2 dY2 dX2 div def
+ /xB2 xA2 def
+ /yB2 xA2 xB1 sub m2 mul yB1 add def
+ }{
+ dX2 abs 0.01 lt {
+ /m1 dY1 dX1 div def
+ /xB2 xB1 def
+ /yB2 xB1 xA2 sub m1 mul yA2 add def
+ }{%
+ /m1 dY1 dX1 div def
+ /m2 dY2 dX2 div def
+ /xB2 m1 xA2 mul m2 xB1 mul sub yA2 sub yB1 add m1 m2 sub div def
+ /yB2 xB2 xA2 sub m1 mul yA2 add def
+ } ifelse
+ } ifelse
+ } if
+ ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 xA2 yA2
+ ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+%
+% GetEdgeA GetEdgeB GetArmA GetArmB mark
+% ArmB 0 ne { xB1 yB1 } if
+% xB2 yB2 xA2 yA2
+% ArmA 0 ne { xA1 yA1 } if
+% tx@Dict begin false Line end
+% /LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx def
+% /LPutPos { LPutLines } def
+% /HPutPos { HPutLines } def
+% /VPutPos { VPutLines } def
+} def
+%
+/NCDiagg {
+ /lineAngle ED
+ GetEdgeA GetArmA
+ lineAngle abs 0 gt
+ { lineAngle }
+ { yB yA2 sub xB xA2 sub Atan 180 add } ifelse
+ /AngleB ED
+ GetEdgeB mark
+ lineAngle abs 0 gt {
+ /dY2 yA2 yA1 sub def
+ /dX2 xA2 xA1 sub def
+ lineAngle abs 90 eq {
+ /m2 dY2 dX2 div def
+ /yA2 xB xA2 sub m2 mul yA2 add def
+ /xA2 xB def
+ }{
+ /m1 lineAngle dup sin exch cos div def % tan alpha
+ dX2 abs 0.01 lt {
+ /yA2 xA1 xB sub m1 mul yB add def
+ /xA2 xA1 def
+ }{%
+ /m2 dY2 dX2 div def
+ /xA2 m1 xB mul m2 xA2 mul sub yA2 add yB sub m1 m2 sub div def
+ /yA2 xA2 xB sub m1 mul yB add def
+ } ifelse
+ } ifelse
+ } if
+ xB1 yB1 xA2 yA2
+ ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+%
+% GetEdgeA GetArmA
+% yB yA2 sub xB xA2 sub Atan 180 add /AngleB ED
+% GetEdgeB
+% mark
+% xB1 yB1 xA2 yA2
+% ArmA 0 ne { xA1 yA1 } if
+% tx@Dict begin false Line end
+% /LPutVar [ xB1 yB1 xA2 yA2 xA1 yA1 ] cvx def
+% /LPutPos { LPutLines } def
+% /HPutPos { HPutLines } def
+% /VPutPos { VPutLines } def
+} def
+%
+/NCLoop {
+ GetEdgeA GetEdgeB GetArmA GetArmB
+ /mtrx AngleA matrix rotate def
+ xA2 yA2 mtrx transform loopsize add /yA3 ED /xA3 ED
+ /xB3 xB2 yB2 mtrx transform pop def
+ xB3 yA3 mtrx itransform /yB3 ED /xB3 ED
+ xA3 yA3 mtrx itransform /yA3 ED /xA3 ED
+ mark ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 xB3 yB3 xA3 yA3 xA2 yA2 ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 xB3 yB3 xA3 yA3 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+} def
+%
+% DG/SR modification begin - May 9, 1997 - Patch 1
+%/NCCircle { 0 0 NodesepA nodeA \tx@GetEdge pop xA sub 2 div dup 2 exp r
+%r mul sub abs sqrt atan 2 mul /a ED r AngleA 90 add PtoC yA add exch xA add
+%exch 2 copy /LPutVar [ 4 2 roll r AngleA ] cvx def /LPutPos { LPutVar t 360
+%mul add dup 5 1 roll 90 sub \tx@PtoC 3 -1 roll add /Y ED add /X ED /NAngle ED
+%
+/NCCircle {
+ NodeSepA 0 NodeA 0 GetEdge pop
+ 2 div dup 2 exp r r mul sub abs sqrt
+ atan 2 mul /a ED
+ r AngleA 90 add PtoC yA add exch xA add
+ exch 2 copy
+ /LPutVar [ 4 2 roll r AngleA ] cvx def
+ /LPutPos {
+ LPutVar t 360 mul add dup 5 1 roll 90 sub PtoC
+ 3 -1 roll add
+ /Y ED add /X ED /NAngle ED
+% DG/SR modification end
+ } def
+ /HPutPos { LPutPos } def
+ /VPutPos { LPutPos } def
+ r AngleA 90 sub a add AngleA 270 add a sub
+ tx@Dict begin
+ /angleB ED /angleA ED /r ED
+ /c 57.2957 r Div def
+ /y ED /x ED
+} def
+%
+/NCBox {
+ /d ED /h ED
+ /AngleB yB yA sub xB xA sub Atan def
+ /AngleA AngleB 180 add def
+ GetEdgeA GetEdgeB
+ /dx d AngleB sin mul def
+ /dy d AngleB cos mul neg def
+ /hx h AngleB sin mul neg def
+ /hy h AngleB cos mul def
+ /LPutVar [
+ xA1 hx add yA1 hy add xB1 hx add yB1 hy add
+ xB1 dx add yB1 dy add xA1 dx add yA1 dy add ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { xB yB xA yA LPutLine } def
+ /VPutPos { HPutPos } def
+ mark
+ LPutVar tx@Dict begin false Polygon end
+} def
+%
+/NCArcBox {
+ /l ED neg /d ED /h ED /a ED
+ /AngleA yB yA sub xB xA sub Atan def
+ /AngleB AngleA 180 add def
+ /tA AngleA a sub 90 add def
+ /tB tA a 2 mul add def
+ /r xB xA sub tA cos tB cos sub Div dup 0 eq { pop 1 } if def
+ /x0 xA r tA cos mul add def
+ /y0 yA r tA sin mul add def
+ /c 57.2958 r div def
+ /AngleA AngleA a sub 180 add def
+ /AngleB AngleB a add 180 add def
+ GetEdgeA GetEdgeB
+ /AngleA tA 180 add yA yA1 sub xA xA1 sub Pyth c mul sub def
+ /AngleB tB 180 add yB yB1 sub xB xB1 sub Pyth c mul add def
+ l 0 eq {
+ x0 y0 r h add AngleA AngleB arc x0 y0 r d add AngleB AngleA arcn
+ }{
+ x0 y0 translate
+ /tA AngleA l c mul add def
+ /tB AngleB l c mul sub def
+ 0 0 r h add tA tB arc r h add
+ AngleB PtoC r d add
+ AngleB PtoC 2 copy
+ 6 2 roll l arcto 4 { pop } repeat
+ r d add tB PtoC l arcto 4 { pop } repeat
+ 0 0 r d add tB tA arcn r d add
+ AngleA PtoC r h add
+ AngleA PtoC 2 copy 6 2 roll
+ l arcto 4 { pop } repeat
+ r h add tA PtoC l arcto 4 { pop } repeat
+ } ifelse
+ closepath
+ /LPutVar [ x0 y0 r AngleA AngleB h d ] cvx def
+ /LPutPos {
+ LPutVar /d ED /h ED
+ /AngleB ED /AngleA ED
+ /r ED /y0 ED /x0 ED
+ t 1 le {
+ r h add AngleA 1 t sub mul AngleB t mul add dup 90 add /NAngle ED PtoC
+ }{t 2 lt {
+ /NAngle AngleB 180 add def r 2 t sub
+ h mul t 1 sub d mul add add AngleB PtoC
+ }{
+ t 3 lt {
+ r d add AngleB 3 t sub mul AngleA 2 t sub
+ mul add dup 90 sub /NAngle ED PtoC
+ }{
+ /NAngle AngleA 180 add def
+ r 4 t sub d mul t 3 sub h mul add add AngleA PtoC
+ } ifelse
+ } ifelse
+ } ifelse
+ y0 add /Y ED x0 add /X ED
+ } def
+ /HPutPos { LPutPos } def
+ /VPutPos { LPutPos } def
+} def
+%
+/Tfan { /AngleA yB yA sub xB xA sub Atan def GetEdgeA w xA1 xB sub yA1 yB
+sub Pyth Pyth w Div CLW 2 div mul 2 div dup AngleA sin mul yA1 add /yA1
+ED AngleA cos mul xA1 add /xA1 ED /LPutVar [ xA1 yA1 m { xB w add yB xB
+w sub yB } { xB yB w sub xB yB w add } ifelse xA1 yA1 ] cvx def /LPutPos
+{ LPutLines } def /VPutPos@ { LPutVar flag { 8 4 roll pop pop pop pop }
+{ pop pop pop pop 4 2 roll } ifelse } def /VPutPos { VPutPos@ VPutLine }
+def /HPutPos { VPutPos@ HPutLine } def mark LPutVar tx@Dict begin
+/ArrowA { moveto } def /ArrowB { } def false Line closepath end } def
+%
+/LPutCoor {
+ NAngle
+ tx@Dict begin /NAngle ED end
+ gsave
+ CM STV
+ CP Y sub neg exch X sub neg exch moveto
+ setmatrix CP
+ grestore
+} def
+%
+/LPut {
+ tx@NodeDict /LPutPos known
+ { LPutPos } { CP /Y ED /X ED /NAngle 0 def } ifelse
+ LPutCoor
+} def
+%
+/HPutAdjust {
+ Sin Cos mul 0 eq
+ { 0 }
+ { d Cos mul Sin div flag not { neg } if
+ h Cos mul Sin div flag { neg } if
+ 2 copy gt { pop } { exch pop } ifelse
+ } ifelse
+ s add flag { r add neg }{ l add } ifelse
+ X add /X ED
+} def
+%
+/VPutAdjust {
+ Sin Cos mul
+ 0 eq
+ { 0 }
+ { l Sin mul Cos div flag { neg } if
+ r Sin mul Cos div flag not { neg } if
+ 2 copy gt { pop } { exch pop } ifelse
+ } ifelse
+ s add flag { d add } { h add neg } ifelse
+ Y add /Y ED
+} def
+%
+%
+end
+%
+% END pst-node.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-3d.pro 0 0
+%% $Id: pst-3d.pro 247 2010-01-04 22:45:42Z herbert $
+% PostScript prologue for pst-3d.tex.
+% Version 0.01, 2010/01/01
+%
+/tx@3Ddict 300 dict def
+tx@3Ddict begin
+%
+/SetMatrixThreeD {
+ dup sin /e ED cos /f ED
+ /p3 ED /p2 ED /p1 ED
+ p1 0 eq
+ { /a 0 def /b p2 0 le { 1 } { -1 } ifelse def
+ p3 p2 abs
+ }
+ { p2 0 eq
+ { /a p1 0 lt { -1 } { 1 } ifelse def /b 0 def
+ p3 p1 abs
+ }
+ { p1 dup mul p2 dup mul add sqrt dup
+ p1 exch div /a ED
+ p2 exch div neg /b ED
+ p3 p1 a div
+ }
+ ifelse
+ }
+ ifelse
+ atan dup sin /c ED cos /d ED
+ /Matrix3D
+ [
+ b f mul c a mul e mul sub
+ a f mul c b mul e mul add
+ d e mul
+ b e mul neg c a mul f mul sub
+ a e mul neg c b mul f mul add
+ d f mul
+ ] def
+} def
+%
+/ProjThreeD {
+ /z ED /y ED /x ED
+ Matrix3D aload pop
+ z mul exch y mul add exch x mul add
+ 4 1 roll
+ z mul exch y mul add exch x mul add
+ exch
+} def
+%
+/SetMatrixEmbed {
+ SetMatrixThreeD
+ Matrix3D aload pop
+ /z3 ED /z2 ED /z1 ED /x3 ED /x2 ED /x1 ED
+ SetMatrixThreeD
+ [
+ Matrix3D aload pop
+ z3 mul exch z2 mul add exch z1 mul add 4 1 roll
+ z3 mul exch z2 mul add exch z1 mul add
+ Matrix3D aload pop
+ x3 mul exch x2 mul add exch x1 mul add 4 1 roll
+ x3 mul exch x2 mul add exch x1 mul add
+ 3 -1 roll 3 -1 roll 4 -1 roll 8 -3 roll 3 copy
+ x3 mul exch x2 mul add exch x1 mul add 4 1 roll
+ z3 mul exch z2 mul add exch z1 mul add
+ ]
+ concat
+} def
+%
+/TMSave {
+ tx@Dict /TMatrix known not { /TMatrix { } def /RAngle { 0 } def } if
+ /TMatrix [ TMatrix CM ] cvx def
+} def
+%
+/TMRestore { CP /TMatrix [ TMatrix setmatrix ] cvx def moveto } def
+%
+/TMChange {
+ TMSave
+ /cp [ currentpoint ] cvx def % ??? Check this later.
+ CM
+ CP T STV
+ CM matrix invertmatrix % Inv(M')
+ matrix concatmatrix % M Inv(M')
+ exch exec
+ concat cp moveto
+} def
+%
+end % of tx@3Ddict
+%%
+%% End of file `pst-3d.pro'.
+
+%%EndProcSet
+%%BeginProcSet: pst-math.pro 0 0
+% -*- Mode: Postscript -*-
+% pst-math.pro --- PostScript header file pst-math.pro
+%
+% Author : Christophe JORSSEN
+% Author : Herbert Voß <hvoss@tug.org>
+% Created the : Sat 20 March 2004
+% Last Mod : $Date: 2010/10/02 $
+% Version : 0.62 $
+%
+/PI 3.14159265359 def
+/ENeperian 2.71828182846 def
+%
+/DegToRad {PI mul 180 div} bind def
+/RadToDeg {180 mul PI div} bind def
+%
+/COS {RadToDeg cos} bind def
+/SIN {RadToDeg sin} bind def
+/TAN {dup SIN exch COS Div} bind def
+/tan {dup sin exch cos Div} bind def
+/ATAN {neg -1 atan 180 sub DegToRad} bind def
+/ACOS {dup dup mul neg 1 add sqrt exch atan DegToRad} bind def
+/acos {dup dup mul neg 1 add sqrt exch atan} bind def
+/ASIN {neg dup dup mul neg 1 add sqrt neg atan 180 sub DegToRad} bind def
+/asin {neg dup dup mul neg 1 add sqrt neg atan 180 sub} bind def
+%
+/EXP {ENeperian exch exp} bind def
+%
+/COSH {dup EXP exch neg EXP add 2 div} bind def
+/SINH {dup EXP exch neg EXP sub 2 div} bind def
+/TANH {dup SINH exch COSH div} bind def
+/ACOSH {dup dup mul 1 sub sqrt add ln} bind def
+/ASINH {dup dup mul 1 add sqrt add ln} bind def
+/ATANH {dup 1 add exch neg 1 add Div ln 2 div} bind def
+%
+%/SINC {dup SIN exch Div} bind def
+/SINC { dup 0 eq { pop 1 } { dup SIN exch div } ifelse } bind def
+
+/GAUSS {dup mul 2 mul dup 4 -2 roll sub dup mul exch div neg EXP exch PI mul sqrt div} bind def
+%
+/GAMMA { 2 dict begin % hv 2007-08-30
+ /z exch def
+ 1.000000000190015 % p(0)
+ 0 1 5 { % on stack is 0 1 2 3 4 5
+ dup % n-1 n-1
+ [ 76.18009172947146
+ -86.50532032941677
+ 24.0140982483091
+ -1.231739572450155
+ 0.1208650973866179E-2
+ -0.5395239384953E-5 ] exch get exch % p(n) n-1
+ 1 add z add div % p(n)/(z+n)
+ add % build the sum
+ } for
+ Pi 2 mul sqrt z div mul
+ z 5.5 add z 0.5 add exp mul ENeperian z 5.5 add neg exp mul
+ end } bind def
+%
+/GAMMALN {dup dup dup 5.5 add dup ln 3 -1 roll .5 add mul sub neg 1.000000000190015
+ 0 1 5 {
+ [76.18009172947146 -86.50532032941677 24.0140982483091 -1.231739572450155
+ .1208650973866179E-2 -.5395239384953E-5 2.5066282746310005] exch get
+ 4 -1 roll 1 add dup 5 1 roll div add} for
+ 4 -1 roll div 2.5066282746310005 mul ln add exch pop} bind def
+/BETA {2 copy add GAMMALN neg exch GAMMALN 3 -1 roll GAMMALN EXP} bind def
+%
+/HORNER {aload length
+ dup 2 add -1 roll
+ exch 1 sub {
+ dup 4 1 roll
+ mul add exch
+ } repeat
+ pop
+} bind def
+%
+/BESSEL_J0 {dup abs 8 lt {
+ dup mul dup [57568490574 -13362590354 651619640.7 -11214424.18 77392.33017 -184.9052456] HORNER
+ exch [57568490411 1029532985 9494680.718 59272.64853 267.8532712 1] HORNER
+ Div}
+ {abs dup .636619772 exch div sqrt exch dup .785398164 sub exch 8 exch div dup dup mul dup
+ [1 -1.098628627E-2 .2734510407E-4 -.2073370639E-5 .2093887211E-6] HORNER
+ 3 index COS mul
+ exch [-.1562499995E-1 .1430488765E-3 -.6911147651E-5 .7621095161E-6 -.934945152E-7] HORNER
+ 4 -1 roll SIN mul 3 -1 roll mul neg add mul}
+ ifelse} bind def
+%
+/BESSEL_Y0 {dup 8 lt {
+ dup dup mul dup [-2957821389 7062834065 -512359803.6 10879881.29 -86327.92757 228.4622733] HORNER
+ exch [40076544269 745249964.8 7189466.438 47447.26470 226.1030244 1] HORNER
+ Div exch dup ln exch BESSEL_J0 .636619772 mul mul add}
+ {dup .636619772 exch div sqrt exch dup .785398164 sub exch 8 exch div dup dup mul dup
+ [1 -.1098628627E-2 .2734510407E-4 -.2073370639E-5 .2093887211E-6] HORNER
+ 3 index SIN mul
+ exch [-.1562499995E-1 .1430488765E-3 -.6911147651E-5 .7621095161E-6 -.934945152E-7] HORNER
+ 4 -1 roll COS mul 3 -1 roll mul add mul}
+ ifelse} bind def
+%
+/BESSEL_J1 {dup abs 8 lt {
+ dup dup mul dup 3 -2 roll [72362614232 -7895059235 242396853.1 -2972611.439 15704.48260 -30.16036606] HORNER mul
+ exch [144725228442 2300535178 18583304.74 99447.43394 376.9991397 1] HORNER
+ Div}
+ {dup abs dup .636619772 exch div sqrt exch dup 2.356194491 sub exch 8 exch div dup dup mul dup
+ [1 .183105E-2 -.3516396496E-4 .2457520174E-5 -.240337019E-6] HORNER
+ 3 index COS mul
+ exch [.04687499995 6.2002690873E-3 .8449199096E-5 -.88228987E-6 .105787412E-6] HORNER
+ 4 -1 roll SIN mul 3 -1 roll mul neg add mul exch dup abs Div mul}
+ ifelse} bind def
+%
+/BESSEL_Y1 {dup 8 lt {
+ dup dup dup mul dup [-.4900604943E13 .1275274390E13 -.5153428139E11 .7349264551E9 -.4237922726E7 .8511937935E4] HORNER
+ exch [.2499580570E14 .4244419664E12 .3733650367E10 .2245904002E8 .1020426050E6 .3549632885E3 1] HORNER
+ Div mul exch dup dup ln exch BESSEL_J1 mul exch 1 exch div sub .636619772 mul add}
+ {dup .636619772 exch div sqrt exch dup 2.356194491 sub exch 8 exch div dup dup mul dup
+ [1 .183105E-2 -.3516396496E-4 .2457520174E-5 -.240337019E-6] HORNER
+ 3 index SIN mul
+ exch [.04687499995 -.2002690873E-3 .8449199096E-5 6.88228987E-6 .105787412E-6] HORNER
+ 4 -1 roll COS mul 3 -1 roll mul add mul}
+ ifelse} bind def
+%
+% En cours...
+/BESSEL_Yn {dup 0 eq {pop BESSEL_Y0}{dup 1 eq {pop BESSEL_Y1}{
+ exch dup BESSEL_Y0 exch dup BESSEL_Y1 exch 2 exch Div {
+ mul 3 -1 roll mul 2 index sub pstack} for
+ } ifelse } ifelse } bind def
+%
+/SIMPSON { 1 dict begin %% on stack a b var f ierr Dominik Rodriguez
+ 3 index 5 index sub % compute h
+ 1 % a b var f ierr h n
+ 4 index 7 index def 3 index exec % a b var f ierr h n f(a)
+ 5 index 7 index def 4 index exec add % a b var f ierr h n f(a)+f(b)
+ 5 index 8 index 4 index 2 div add def 4 index exec % a b var f ierr h n f(a)+f(b) f(a+h/2)
+ exch 1 index 4 mul add 0 % a b var f ierr h n old=f(a+h/2) Estim=f(a)+f(b)+4f(a+h/2) NbLoop
+ { % a b var f ierr h n old Estim NbLoop
+ 5 -1 roll 2 div dup 6 1 roll % h<-h/2
+ 5 -1 roll 2 mul 5 1 roll % n<-2n
+ % a b var f ierr h n old Estim NbLoop h
+ 2 div 10 index add 0 % a b var f ierr h n old Estim NbLoop a+h/2 Cumul
+ 5 index {
+ 1 index 10 index exch def 8 index exec add exch 6 index add exch
+ } repeat % a b var f ierr h n old Estim NbLoop a+nh/2 Cumul
+ exch pop % a b var f ierr h n old Estim NbLoop New
+ 2 index 1 index 4 mul 6 -1 roll 2 mul sub sub % a b var f ierr h n Estim NbLoop New Diff
+ 4 -1 roll 2 mul 1 index sub 4 1 roll % a b var f ierr h n Estim NbLoop New Diff
+ exch 4 1 roll % a b var f ierr h n old Estim NbLoop Diff
+ 5 index 6 div mul abs 6 index lt { exit } if
+ 1 add dup 9 eq { exit } if
+ } loop % a b var f ierr h n old Estim NbLoop
+ exch 5 -1 roll 6 div mul mark 10 2 roll cleartomark
+end
+} def
+% ------------------------------------ math stuff ----------------------------------
+%
+% Matrix A in arrays of rows A[[row1][row2]...]
+% with [row1]=[a11 a12 ... b1]
+% returns on stack solution vector X=[x1 x2 ... xn]
+/SolveLinEqSystem { % on stack matrix M=[A,b] (A*x=b)
+ 10 dict begin % hold all ocal
+ /A exch def
+ /Rows A length def % Rows = number of rows
+ /Cols A 0 get length def % Cols = number of columns
+ /Index [ 0 1 Rows 1 sub { } for ] def % Index = [0 1 2 ... Rows-1]
+ /col 0 def
+ /row 0 def
+ /PR Rows array def % PR[c] = pivot row for row row
+ { % starts the loop, find pivot entry in row r
+ col Cols ge row Rows ge or { exit } if % col < Cols and row < Rows else exit
+ /pRow row def % pRow = pivot row
+ /max A row get col get abs def % get A[row[col]], first A[0,0]
+ row 1 add 1 Rows 1 sub { % starts for loop 1 1 Rows-1
+ /j exch def % index counter
+ /x A j get col get abs def % get A[j[r]]
+ x max gt { % x>max, then save position
+ /pRow j def
+ /max x def
+ } if
+ } for % now we have the row with biggest A[0,1]
+ % with pRow = the pivot row
+ max 0 gt { % swap entries pRow and row in i
+ /tmp Index row get def
+ Index row Index pRow get put
+ Index pRow tmp put % and columns pRow and row in A
+ /tmp A row get def
+ A row A pRow get put
+ A pRow tmp put % pivot
+ /row0 A row get def % the pivoting row
+ /p0 row0 col get def % the pivot value
+ row 1 add 1 Rows 1 sub { % start for loop
+ /j exch def
+ /c1 A j get def
+ /p c1 col get p0 div def
+ c1 col p put % subtract (p1/p0)*row[i] from row[j]
+ col 1 add 1 Cols 1 sub { % start for loop
+ /i exch def
+ c1 dup i exch % c1 i c1
+ i get row0 i get p mul sub put
+ } for
+ } for
+ PR row col put
+ /col col 1 add def
+ /row row 1 add def
+ }{ % all zero entries
+ /row row 1 add def % continue loop with same row
+ } ifelse
+ } loop
+ /X A def % solution vector
+ A Rows 1 sub get dup
+ Cols 1 sub get exch
+ Cols 2 sub get div
+ X Rows 1 sub 3 -1 roll put % X[n]
+ Rows 2 sub -1 0 { % for loop to calculate X[i]
+ /xi exch def % current index
+ A xi get % i-th row
+ /Axi exch def
+ /sum 0 def
+ Cols 2 sub -1 xi 1 add {
+ /n exch def
+ /sum sum Axi n get X n get mul add def
+ } for
+ Axi Cols 1 sub get % b=Axi[Cols-1]
+ sum sub % b-sum
+ Axi xi get div % b-sum / Axi[xi]
+ X xi 3 -1 roll put % X[xi]
+ } for
+ X
+ end
+} def
+%
+/c@_0 2.515517 def
+/c@_1 0.802853 def
+/c@_2 0.010328 def
+/d@_1 1.432788 def
+/d@_2 0.189269 def
+/d@_3 0.001308 def
+/norminv {
+ 5 dict begin
+ neg 1 add 1 exch div ln 2 mul sqrt
+ /t exch def
+ /t2 t dup mul def
+ /t3 t2 t mul def
+ c@_0 c@_1 t mul add c@_2 t2 mul add 1 d@_1 t mul add
+ d@_2 t2 mul add d@_3 t3 mul add div neg t add
+ end
+} def
+%end{norminv Michael Sharpe}
+%
+%
+% END pst-math.pro
+
+%%EndProcSet
+%%BeginProcSet: pstricks-add.pro 0 0
+%% $Id: pstricks-add.pro 328 2010-05-24 15:56:43Z herbert $
+% PostScript prologue for pstricks-add.tex.
+% Version 0.23, 2009/12/17
+%
+/tx@addDict 410 dict def tx@addDict begin
+%%
+realtime srand % set random generator
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/GTriangle {
+ gsave
+ /mtrx CM def
+ /colorA ED /colorB ED /colorC ED % save the colors
+ /yA ED /xA ED % save the origin
+ xA yA translate
+ rotate % \psk@gangle
+ /yB ED /xB ED /yC ED /xC ED % save other coordinates
+ /ds [ % save data in a array
+ 0 0 0 colorA aload pop % fd x y xr xg xb
+ 0 xB xA sub yB yA sub colorB aload pop
+ 0 xC xA sub yC yA sub colorC aload pop
+% 1 xC xB add yB colorA aload pop % for use with 4 points ABCD
+ ] def
+ newpath
+ <<
+ /ShadingType 4 % single Gouraud
+ /ColorSpace [ /DeviceRGB ]
+ /DataSource ds
+ >>
+ shfill
+ closepath
+ mtrx
+ setmatrix grestore} def
+%
+/RGBtoCMYK { % on stack r g b -> C M Y K
+ 3 dict begin
+ /Blue ED /Green ED /Red ED
+ 1 Red sub % Cyan
+ 1 Green sub % Magenta
+ 1 Blue sub % Yellow
+ 0 % Black
+ end
+} def
+%
+/CMYKtoGRAY { % on stack c m y k -> gray
+ exch 0.11 mul add
+ exch 0.59 mul add
+ exch 0.3 mul add
+ dup 1 gt { pop 1 } if
+ neg 1 add
+} def
+%
+/RGBtoGRAY { % on stack r g b -> gray
+ 0.11 mul
+ exch 0.59 mul add
+ exch 0.3 mul add
+} def
+%
+/HSBtoGRAY {
+ 6 dict begin
+ /b exch def
+ /s exch def 6 mul dup cvi dup
+ /i exch def sub
+ /f exch def
+ /F [[0 1 f sub 1][f 0 1][1 0 1 f sub][1 f 0][1 f sub 1 0][0 1 f][0 1 1]] def
+ F i get { s mul neg 1 add b mul} forall
+ 0.11 mul
+ exch 0.59 mul add
+ exch 0.3 mul add
+ end
+} def
+%
+%% convertisseur longueur d'onde ->R,G,B Manuel Luque
+%% lambda max=780 nanometres
+%% lambda min=380 nanometres
+%% adaptation de :
+%% http://www.physics.sfasu.edu/astro/color.html
+%% www.efg2.com/lab
+%
+/Gamma 0.8 def
+/calculateRGB {
+ lambda 379 le {/Red 0 def /Green 0 def /Blue 0 def} if
+ lambda 781 ge {/Red 0 def /Green 0 def /Blue 0 def} if
+ lambda 380 ge {lambda 439 le {
+ /R {lambda 440 sub neg 440 380 sub div} def
+ /Red R factor mul Gamma exp def
+ /G 0 def
+ /Green G factor mul Gamma exp def
+ /B 1 def
+ /Blue B factor mul Gamma exp def} if
+ } if
+ lambda 440 ge { lambda 489 le {
+ /G {lambda 440 sub 490 440 sub div} def
+ /Green G factor mul Gamma exp def
+ /R 0 def /Red 0 def
+ /B 1 def
+ /Blue B factor mul Gamma exp def } if
+ } if
+ lambda 490 ge {lambda 509 le {
+ /B {lambda 510 sub neg 510 490 sub div} def
+ /Blue B factor mul Gamma exp def
+ /R 0 def /Red 0 def
+ /G 1 def
+ /Green G factor mul Gamma exp def } if
+ } if
+ lambda 510 ge {lambda 579 le {
+ /R {lambda 510 sub 580 510 sub div } def
+ /Red R factor mul Gamma exp def
+ /Blue 0 def
+ /G 1 def
+ /Green G factor mul Gamma exp def } if
+ } if
+ lambda 580 ge {lambda 644 le {
+ /G {lambda 645 sub neg 645 580 sub div } def
+ /Green G factor mul Gamma exp def
+ /Blue 0 def
+ /R 1 def
+ /Red R factor mul Gamma exp def } if
+ } if
+ lambda 645 ge { lambda 780 le {
+ /Red 1 factor mul Gamma exp def
+ /Blue 0 def
+ /Green 0 def } if
+ } if
+} def
+%
+/factor {
+ lambda 380 ge {lambda 419 le { 0.3 0.7 lambda 380 sub mul 420 380 sub div add} if } if
+ lambda 420 ge {lambda 700 le { 1 } if } if
+ lambda 701 ge {lambda 780 le { 0.3 0.7 780 lambda sub mul 780 700 sub div add} if } if
+} def
+%
+/wavelengthToRGB { % the wavelength in nm must be on top of the stack
+ cvi /lambda exch def % no floating point here
+ calculateRGB
+} def % now the colors are saved in Red Green Blue
+%
+/wavelengthToGRAY { % the wavelength in nm must be on top of the stack
+ cvi /lambda exch def % no floating point here
+ calculateRGB
+ Red Green Blue RGBtoGRAY
+} def % now the gray color is on the stack
+%
+/wavelengthToCMYK { % the wavelength in nm must be on top of the stack
+ cvi /lambda exch def % no floating point here
+ gsave
+ calculateRGB Red Green Blue RGBtoCMYK
+ /Black ED /Yellow ED /Magenta ED /Cyan ED
+ grestore
+} def % now the colors are saved in Cyan Magenta Yellow Black
+%
+/axfill {
+ 8 dict begin
+ /xw exch def /nl exch def
+ /C1 exch def /y1 exch def/x1 exch def
+ /C0 exch def /y0 exch def/x0 exch def
+ << /ShadingType 2
+ /ColorSpace /DeviceRGB
+ /Coords [ x0 y0 x1 y1 ]
+ /EmulatorHints [ xw 2 div dup ]
+ /Function <<
+ /FunctionType 2
+ /Domain [0 1]
+ /C0 C0
+ /C1 C1
+ /N 1
+ >>
+ >> shfill
+ end
+} bind def
+%
+%/amplHand {.8} def
+%/dtHand 2 def
+/varHand { rand sin amplHand mul add } def
+/MovetoByHand { moveto } def
+%/MovetoByHand { /y0 ED /x0 ED x0 y0 moveto } def
+/LinetoByHand { 4 dict begin
+ /y1 ED /x1 ED
+ currentpoint /y0 ED /x0 ED
+ x0 x1 sub dup mul y0 y1 sub dup mul add sqrt /dEnd ED
+ 0 dtHand dEnd { dup
+ x1 x0 sub mul dEnd div x0 add varHand exch
+ y1 y0 sub mul dEnd div y0 add varHand lineto
+ } for
+% /x0 x1 def /y0 y1 def
+ end
+} def
+%
+end
+%
+% END pstricks-add.pro
+
+%%EndProcSet
+%%BeginProcSet: OpenLine.pro 0 0
+%%%%%%%%%%%%%%%%%%%%%%%%%% OpenLine %%%%%%%%%%%%%%%%%%%%%%%%
+% copy of /Line
+% removed possibility to plot arrows
+/OpenLine {
+ NArray
+ n 0 eq not
+ { n 1 eq
+ { 0 0 /n 2 def } if
+ /n n 1 sub def % last point in stack is first point from plot (to plot closed curves)
+ n { moveto 2 copy Lineto } repeat
+ pop pop % remove first point from stack
+ } if
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%EndProcSet
+%%BeginProcSet: lm-ec.enc 0 0
+% This file belongs to the Latin Modern package. The work is released
+% under the GUST Font License. See the MANIFEST-Latin-Modern.txt and
+% README-Latin-Modern.txt files for the details. For the most recent version of
+% this license see http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt
+% or http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt
+
+/enclmec[
+/grave
+/acute
+/circumflex
+/tilde
+/dieresis
+/hungarumlaut
+/ring
+/caron
+/breve
+/macron
+/dotaccent
+/cedilla
+/ogonek
+/quotesinglbase
+/guilsinglleft
+/guilsinglright
+/quotedblleft
+/quotedblright
+/quotedblbase
+/guillemotleft
+/guillemotright
+/endash
+/emdash
+/cwm
+/perthousandzero
+/dotlessi
+/dotlessj
+/ff
+/fi
+/fl
+/ffi
+/ffl
+/uni2423
+/exclam
+/quotedbl
+/numbersign
+/dollar
+/percent
+/ampersand
+/quoteright
+/parenleft
+/parenright
+/asterisk
+/plus
+/comma
+/hyphen
+/period
+/slash
+/zero
+/one
+/two
+/three
+/four
+/five
+/six
+/seven
+/eight
+/nine
+/colon
+/semicolon
+/less
+/equal
+/greater
+/question
+/at
+/A
+/B
+/C
+/D
+/E
+/F
+/G
+/H
+/I
+/J
+/K
+/L
+/M
+/N
+/O
+/P
+/Q
+/R
+/S
+/T
+/U
+/V
+/W
+/X
+/Y
+/Z
+/bracketleft
+/backslash
+/bracketright
+/asciicircum
+/underscore
+/quoteleft
+/a
+/b
+/c
+/d
+/e
+/f
+/g
+/h
+/i
+/j
+/k
+/l
+/m
+/n
+/o
+/p
+/q
+/r
+/s
+/t
+/u
+/v
+/w
+/x
+/y
+/z
+/braceleft
+/bar
+/braceright
+/asciitilde
+/hyphen.alt
+/Abreve
+/Aogonek
+/Cacute
+/Ccaron
+/Dcaron
+/Ecaron
+/Eogonek
+/Gbreve
+/Lacute
+/Lcaron
+/Lslash
+/Nacute
+/Ncaron
+/Eng
+/Ohungarumlaut
+/Racute
+/Rcaron
+/Sacute
+/Scaron
+/Scedilla
+/Tcaron
+/Tcedilla
+/Uhungarumlaut
+/Uring
+/Ydieresis
+/Zacute
+/Zcaron
+/Zdotaccent
+/IJ
+/Idotaccent
+/dcroat
+/section
+/abreve
+/aogonek
+/cacute
+/ccaron
+/dcaron
+/ecaron
+/eogonek
+/gbreve
+/lacute
+/lcaron
+/lslash
+/nacute
+/ncaron
+/eng
+/ohungarumlaut
+/racute
+/rcaron
+/sacute
+/scaron
+/scedilla
+/tcaron
+/tcedilla
+/uhungarumlaut
+/uring
+/ydieresis
+/zacute
+/zcaron
+/zdotaccent
+/ij
+/exclamdown
+/questiondown
+/sterling
+/Agrave
+/Aacute
+/Acircumflex
+/Atilde
+/Adieresis
+/Aring
+/AE
+/Ccedilla
+/Egrave
+/Eacute
+/Ecircumflex
+/Edieresis
+/Igrave
+/Iacute
+/Icircumflex
+/Idieresis
+/Eth
+/Ntilde
+/Ograve
+/Oacute
+/Ocircumflex
+/Otilde
+/Odieresis
+/OE
+/Oslash
+/Ugrave
+/Uacute
+/Ucircumflex
+/Udieresis
+/Yacute
+/Thorn
+/Germandbls
+/agrave
+/aacute
+/acircumflex
+/atilde
+/adieresis
+/aring
+/ae
+/ccedilla
+/egrave
+/eacute
+/ecircumflex
+/edieresis
+/igrave
+/iacute
+/icircumflex
+/idieresis
+/eth
+/ntilde
+/ograve
+/oacute
+/ocircumflex
+/otilde
+/odieresis
+/oe
+/oslash
+/ugrave
+/uacute
+/ucircumflex
+/udieresis
+/yacute
+/thorn
+/germandbls
+] def
+
+%%EndProcSet
+%%BeginProcSet: texps.pro 0 0
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginProcSet: special.pro 0 0
+%!
+TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
+/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
+/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
+/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
+/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
+X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
+/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
+/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
+{userdict/md get type/dicttype eq{userdict begin md length 10 add md
+maxlength ge{/md md dup length 20 add dict copy def}if end md begin
+/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
+atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
+itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
+transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
+curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
+pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
+if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
+-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
+get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
+yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
+neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
+noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
+90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
+neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
+1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
+2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
+-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
+TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
+Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
+}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
+save N userdict maxlength dict begin/magscale true def normalscale
+currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
+/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
+psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
+psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
+TR/showpage{}N/erasepage{}N/setpagedevice{pop}N/copypage{}N/p 3 def
+@MacSetUp}N/doclip{psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll
+newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto
+closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N
+/@beginspecial{SDict begin/SpecialSave save N gsave normalscale
+currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}
+N/@setspecial{CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs
+neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate
+rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse
+scale llx neg lly neg TR}{rhiSeen{rhi ury lly sub div dup scale llx neg
+lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx
+ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N
+/setpagedevice{pop}N/copypage{}N newpath}N/@endspecial{count ocount sub{
+pop}repeat countdictstack dcount sub{end}repeat grestore SpecialSave
+restore end}N/@defspecial{SDict begin}N/@fedspecial{end}B/li{lineto}B
+/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1
+setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY
+moveto}N/ellipse{/endangle X/startangle X/yrad X/xrad X/savematrix
+matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc
+savematrix setmatrix}N end
+
+%%EndProcSet
+%%BeginProcSet: color.pro 0 0
+%!
+TeXDict begin/setcmykcolor where{pop}{/setcmykcolor{dup 10 eq{pop
+setrgbcolor}{1 sub 4 1 roll 3{3 index add neg dup 0 lt{pop 0}if 3 1 roll
+}repeat setrgbcolor pop}ifelse}B}ifelse/TeXcolorcmyk{setcmykcolor}def
+/TeXcolorrgb{setrgbcolor}def/TeXcolorgrey{setgray}def/TeXcolorgray{
+setgray}def/TeXcolorhsb{sethsbcolor}def/currentcmykcolor where{pop}{
+/currentcmykcolor{currentrgbcolor 10}B}ifelse/DC{exch dup userdict exch
+known{pop pop}{X}ifelse}B/GreenYellow{0.15 0 0.69 0 setcmykcolor}DC
+/Yellow{0 0 1 0 setcmykcolor}DC/Goldenrod{0 0.10 0.84 0 setcmykcolor}DC
+/Dandelion{0 0.29 0.84 0 setcmykcolor}DC/Apricot{0 0.32 0.52 0
+setcmykcolor}DC/Peach{0 0.50 0.70 0 setcmykcolor}DC/Melon{0 0.46 0.50 0
+setcmykcolor}DC/YellowOrange{0 0.42 1 0 setcmykcolor}DC/Orange{0 0.61
+0.87 0 setcmykcolor}DC/BurntOrange{0 0.51 1 0 setcmykcolor}DC
+/Bittersweet{0 0.75 1 0.24 setcmykcolor}DC/RedOrange{0 0.77 0.87 0
+setcmykcolor}DC/Mahogany{0 0.85 0.87 0.35 setcmykcolor}DC/Maroon{0 0.87
+0.68 0.32 setcmykcolor}DC/BrickRed{0 0.89 0.94 0.28 setcmykcolor}DC/Red{
+0 1 1 0 setcmykcolor}DC/OrangeRed{0 1 0.50 0 setcmykcolor}DC/RubineRed{
+0 1 0.13 0 setcmykcolor}DC/WildStrawberry{0 0.96 0.39 0 setcmykcolor}DC
+/Salmon{0 0.53 0.38 0 setcmykcolor}DC/CarnationPink{0 0.63 0 0
+setcmykcolor}DC/Magenta{0 1 0 0 setcmykcolor}DC/VioletRed{0 0.81 0 0
+setcmykcolor}DC/Rhodamine{0 0.82 0 0 setcmykcolor}DC/Mulberry{0.34 0.90
+0 0.02 setcmykcolor}DC/RedViolet{0.07 0.90 0 0.34 setcmykcolor}DC
+/Fuchsia{0.47 0.91 0 0.08 setcmykcolor}DC/Lavender{0 0.48 0 0
+setcmykcolor}DC/Thistle{0.12 0.59 0 0 setcmykcolor}DC/Orchid{0.32 0.64 0
+0 setcmykcolor}DC/DarkOrchid{0.40 0.80 0.20 0 setcmykcolor}DC/Purple{
+0.45 0.86 0 0 setcmykcolor}DC/Plum{0.50 1 0 0 setcmykcolor}DC/Violet{
+0.79 0.88 0 0 setcmykcolor}DC/RoyalPurple{0.75 0.90 0 0 setcmykcolor}DC
+/BlueViolet{0.86 0.91 0 0.04 setcmykcolor}DC/Periwinkle{0.57 0.55 0 0
+setcmykcolor}DC/CadetBlue{0.62 0.57 0.23 0 setcmykcolor}DC
+/CornflowerBlue{0.65 0.13 0 0 setcmykcolor}DC/MidnightBlue{0.98 0.13 0
+0.43 setcmykcolor}DC/NavyBlue{0.94 0.54 0 0 setcmykcolor}DC/RoyalBlue{1
+0.50 0 0 setcmykcolor}DC/Blue{1 1 0 0 setcmykcolor}DC/Cerulean{0.94 0.11
+0 0 setcmykcolor}DC/Cyan{1 0 0 0 setcmykcolor}DC/ProcessBlue{0.96 0 0 0
+setcmykcolor}DC/SkyBlue{0.62 0 0.12 0 setcmykcolor}DC/Turquoise{0.85 0
+0.20 0 setcmykcolor}DC/TealBlue{0.86 0 0.34 0.02 setcmykcolor}DC
+/Aquamarine{0.82 0 0.30 0 setcmykcolor}DC/BlueGreen{0.85 0 0.33 0
+setcmykcolor}DC/Emerald{1 0 0.50 0 setcmykcolor}DC/JungleGreen{0.99 0
+0.52 0 setcmykcolor}DC/SeaGreen{0.69 0 0.50 0 setcmykcolor}DC/Green{1 0
+1 0 setcmykcolor}DC/ForestGreen{0.91 0 0.88 0.12 setcmykcolor}DC
+/PineGreen{0.92 0 0.59 0.25 setcmykcolor}DC/LimeGreen{0.50 0 1 0
+setcmykcolor}DC/YellowGreen{0.44 0 0.74 0 setcmykcolor}DC/SpringGreen{
+0.26 0 0.76 0 setcmykcolor}DC/OliveGreen{0.64 0 0.95 0.40 setcmykcolor}
+DC/RawSienna{0 0.72 1 0.45 setcmykcolor}DC/Sepia{0 0.83 1 0.70
+setcmykcolor}DC/Brown{0 0.81 1 0.60 setcmykcolor}DC/Tan{0.14 0.42 0.56 0
+setcmykcolor}DC/Gray{0 0 0 0.50 setcmykcolor}DC/Black{0 0 0 1
+setcmykcolor}DC/White{0 0 0 0 setcmykcolor}DC end
+
+%%EndProcSet
+TeXDict begin @defspecial
+
+ systemdict /pdfmark known{userdict /?pdfmark systemdict /exec get
+put}{userdict /?pdfmark systemdict /pop get put userdict /pdfmark systemdict
+/cleartomark get put}ifelse
+
+ /DvipsToPDF{72.27 mul Resolution div} def/PDFToDvips{72.27 div Resolution
+mul} def/BPToDvips{72 div Resolution mul}def/BorderArrayPatch{[exch{dup
+dup type/integertype eq exch type/realtype eq or{BPToDvips}if}forall]}def/HyperBorder
+{1 PDFToDvips} def/H.V {pdf@hoff pdf@voff null} def/H.B {/Rect[pdf@llx
+pdf@lly pdf@urx pdf@ury]} def/H.S {currentpoint HyperBorder add /pdf@lly
+exch def dup DvipsToPDF 72 add /pdf@hoff exch def HyperBorder sub /pdf@llx
+exch def} def/H.L {2 sub dup/HyperBasePt exch def PDFToDvips /HyperBaseDvips
+exch def currentpoint HyperBaseDvips sub /pdf@ury exch def/pdf@urx
+exch def} def/H.A {H.L currentpoint exch pop vsize 72 sub exch DvipsToPDF
+HyperBasePt sub sub /pdf@voff exch def} def/H.R {currentpoint HyperBorder
+sub /pdf@ury exch def HyperBorder add /pdf@urx exch def currentpoint
+exch pop vsize 72 sub exch DvipsToPDF sub /pdf@voff exch def} def
+
+ /burl@stx null def /BU.S { /burl@stx null def } def /BU.SS { currentpoint
+/burl@lly exch def /burl@llx exch def burl@stx null ne {burl@endx burl@llx
+ne {BU.FL BU.S} if} if burl@stx null eq { burl@llx dup /burl@stx exch
+def /burl@endx exch def burl@lly dup /burl@boty exch def /burl@topy
+exch def } if burl@lly burl@boty gt {/burl@boty burl@lly def} if }
+def /BU.SE { currentpoint /burl@ury exch def dup /burl@urx exch def
+/burl@endx exch def burl@ury burl@topy lt {/burl@topy burl@ury def}
+if } def /BU.E { BU.FL } def /BU.FL { burl@stx null ne {BU.DF} if }
+def /BU.DF { BU.BB [ /H /I /Border [burl@border] /Color [burl@bordercolor]
+/Action << /Subtype /URI /URI BU.L >> /Subtype /Link BU.B /ANN pdfmark
+/burl@stx null def } def /BU.BB { burl@stx HyperBorder sub /burl@stx
+exch def burl@endx HyperBorder add /burl@endx exch def burl@boty HyperBorder
+add /burl@boty exch def burl@topy HyperBorder sub /burl@topy exch def
+} def /BU.B { /Rect[burl@stx burl@boty burl@endx burl@topy] } def /eop
+where { begin /@ldeopburl /eop load def /eop { SDict begin BU.FL end
+@ldeopburl } def end } { /eop { SDict begin BU.FL end } def } ifelse
+
+@fedspecial end
+%%BeginFont: LMRoman10-Regular
+%!PS-AdobeFont-1.0: LMRoman10-Regular 2.004
+%%CreationDate: 7th October 2009
+% Generated by MetaType1 (a MetaPost-based engine)
+% Copyright 2003--2009 by B. Jackowski and J.M. Nowacki (on behalf of TeX USERS GROUPS).
+% Supported by CSTUG, DANTE eV, GUST, GUTenberg, NTG, and TUG.
+% METATYPE1/Type 1 version by B. Jackowski & J. M. Nowacki
+% from GUST (http://www.gust.org.pl).
+% This work is released under the GUST Font License.
+% For the most recent version of this license see
+% This work has the LPPL maintenance status `maintained'.
+% The Current Maintainer of this work is Bogus\l{}aw Jackowski and Janusz M. Nowacki.
+% This work consists of the files listed in the MANIFEST-Latin-Modern.txt file.
+% ADL: 806 194 0
+%%EndComments
+FontDirectory/LMRoman10-Regular known{/LMRoman10-Regular findfont dup/UniqueID known{dup
+/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+17 dict begin
+/FontInfo 9 dict dup begin
+/version(2.004)readonly def
+/Notice(Copyright 2003--2009 by B. Jackowski and J.M. Nowacki (on behalf of TeX USERS GROUPS).)readonly def
+/FullName(LMRoman10-Regular)readonly def
+/FamilyName(LMRoman10)readonly def
+/Weight(Normal)readonly def
+/isFixedPitch false def
+/ItalicAngle 0 def
+/UnderlinePosition -146 def
+/UnderlineThickness 40 def
+end readonly def
+/FontName /LMRoman10-Regular def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/PaintType 0 def
+/FontType 1 def
+/StrokeWidth 0 def
+/FontMatrix[0.001 0 0 0.001 0 0]readonly def
+%/UniqueID 0 def
+/FontBBox{-430 -290 1417 1127}readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
+1B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
+B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
+4A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
+DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
+2AD360A28616CB4A0670C1BF13E4018CA53FFC8B28E49B3AF8134528F971DEDA
+55E9075B8973BD0B1C001D7F241CAA67472027935C0A16779AC34D17950388CF
+0E0191A473BE7581A249D043279E83EA19B511D1D8FA3933F37C594054DB8297
+45ECDBC2E8976B243A996D477A529B8667BB3FB7783D0B773B952A4520909BA1
+EB4AB2FA4D38CD9B2CF575F8E0FDB2E85A6D59CB0AFEE208F8B5D960088A941E
+6E9BEBBF2E02CBA386FDEE2F4A0A453A960D80C90142B34FE01BF72F67105E03
+114D181D6A3990035A36F1ACEF46E884A818302042894B42069DD5885B97B047
+D34FBF7245DEF708B5E500E71FACA6F55938C1C9E03601F110B9B96EB91E0E1C
+58D594B02A771F8480466FDC743843460B3AFF1867367D645017E2A7C96B0FBB
+A9189D995DAB0521ADF024FABC33682BDB8605155E5D1813E23B4A9890D852DB
+2AC72D7543ED8D34C8E29A88758EF0B5364C156A3D213BCD9060892C3754E0C8
+E5ECD8CD5A580EA0561ACA1E90AC5D7729DFA7B1CFCCC98DB829C1B2EA250F4E
+B54CDFB18B56D98AFCD392F4DA49FE9F9CFC94137C35FA857342908ECF4D0019
+6506644F2611FF4E67B09224177126E4E059D7C2A941A01BD875FEAD28864048
+1DDE56A671FBC3511A79E5EF3F153E265FD840474B66B830CA5A09455CA1AFBE
+B124FF3365AD824CDBE10A17B08E3A47282CE6140B0966D4EB82CB5B034DC6DC
+5D6CBE6E1C99160BB1F4A87545E4D6D3EC7E30BF52F8F79A877416F69BBB5EA4
+07530D50EAFE96BF6AC0F277A8A357761836E499F221A6DDE9AC0A03ADD0EF91
+31B26E4332321F4FD59C51B515530BEA1AB37479F31B9E6E94E5470A0BF30403
+FDB51DBE8C7D053D1B5FF78EA8CA01F3CE6E1E8E573F5EE8C282321B49B73D9D
+3E9CC4C3005DEB4CA3A2828B2D8BCDAC49F4AEFA7101055E20CD98B420454D0A
+2C7C4B3933BC81AC0FF01C1D51D262D6B85AD7B970750CD0D6F2500EDBAB25C3
+46F96A6028A1106D2DA63EA507C07F1ADDACFDC3CF4D1F9037F027E63B522C41
+BCC160FB1D794455CBED4C049ED67502630A8A1C2ED11A53852E7B9910D008B8
+DF64C3DA1E469128BF3B45D99837E560B852F87024C48C184E2BC4358D34EBE8
+48ACC9B93C575C363FAC585CA35C2C450B5929783DA0ACF374733D7447051366
+BA3065066563083DE0E1494B6433BC4BD86CBFF1A9034F40380C333A5F16A4F9
+9BA2C4BB3D31412356B9E978BADC3548EC4946749CDC981002C4414156DFE0D7
+83460C816ED040C9568CC2EFE4A607C3EB4A6C06AD50B3CB1C886ACB3D1022F7
+70E256CD75521A8C02071A25B0C96706BB7AE920C15804482D69A32FE000AF1E
+D8CB928BA33D61D0F17C1E7D2A1403C4ACB7D923E66F10354BDAECB0ADC7DC3F
+A7B24303B3C291B987C490B04B0CA0A969E41E3F04FA629E2B6649661FBF165F
+F099E2D5173413B3995A7DB9B4C56C828F8C614AD3607A91673A3DF62988DE97
+DA96C5C43CC63C14EF7C24C48C184E2BC4350D72B6956D0C2F549618A0061284
+E6AF01D8B9FAEE674122BA926D2DB941B0C26F6274027559A8B3843FCFFBC8C6
+E51250F22B812E47ED46E67410144A520F7F66B64A927F0A67BB50BF09591782
+F8A664335F67B9DDE36DBA793EC77E5D84F6E298C4F428617BADEE752997B940
+93316F759F1A0053B7E9268CF93B9763BA70C77A82B01C2B17479DFF58CA2C67
+01C4D3E39979022FEFF095DA482A4E99A4A3259B2FBC52122E7974849DD398C0
+44CB32F94F500BA9BFC908A2BAC4B3062E37B68DCA401224AD75DCA40F5946D9
+266E07CBF681164FEAF332C19BB64203E7291357E4C4F9A6725247F3ACB29005
+4C79132FBC49F5FDFCA8BE38549AE53F72B85A6F03B58AE0D30DCF02DECFD422
+DAB156ABDF73CBA7DE351875F5131518D2DB628C3C99D0EBAC0F0017D917875B
+D4F18169CFFB98AD6151A16BCAA3540A85AA395D5B94927C063B7A789EB1E6F3
+A07B777B22BE5EA7B6D8F1664CE0DD8F43CC580213BEB59D15D30B7292FD83B6
+E52EA4270D0D5D9C6112033C467CA867769AC53093BCE223CB286B1721B357D8
+D51AC9DE1E9043D7770D32C6E8EF9FF13E29DC064F3C70730B6B567A9AA1CD0C
+FB337558AA398E37BF984F934C66986C2EE9A510A314AD971D82FC1EE6868FE3
+D060DD7B5AA766C4DF53407517CF6F42243C234413756CA68A0F125A0E7C1E17
+E4E9F3C905DC814982B1A40503E899AAA09B2362DF13DE0E31E5E08B89B0E394
+1460CCB0AA4CE5F70F9D19F59A963E9F90F4A84685377B43F208A3F331979D1F
+51377E69B684C70E9F76F39FC77A46FBA5A77FC361C55F6D7C5ADF691D4C1638
+83BB2994826A94CC906E41B4251518F5F104AE5CD4A2FDD0DDF0A49EB8F32036
+94BD7EC9430C3C2F7970B696DA577C21452508DA6E9E32F903296B80F87B1797
+19D633875594913678A3833636F8B33B0C66ED837176BEE6E6A8F6BF1EF66105
+F277E5B6745FF4A5CB0EE90FA42E1529406562EFCA1E621ED2A65D66DFDB2098
+887BC845E63B067BC2A4FFE2D0208EDA333AA5F4CAB0ABD7E1CB78637494E68E
+34391E2542903355658BD278E67696111019DB87C73771A6CED0715EFF43475A
+0FD680DDA2CFAB8D802B28E97E3B1E097CB13153378D85500BB10C661AF17841
+FDBD5D61718DE52EB4F11723D1D646B9E9110E87700E6D1522A71B0D0018368E
+79712A5AB20318C6045977231D86C8BEB851B96CD7BF88F9A172949DC2969A27
+784051AB9E62CBD50ABE89F5DA433EA9D4D67FD60C7A551828813067EED8B44F
+8F9316E6E062F1DF68BCC50EAB2B6C8E7EC2B798E2E8BBB1AD5D775F54B78C79
+4B35A41FCAB99493DBECF6620AF09020F0544340C3B4C147A3CA6B939B4B19E8
+1AB5B2D968F0729A5A1D1EB41ABB67B9BA1735E4E0555B0ACE192B694582DBC0
+21CFE1217CF272748BB9CD72E80B52E247D95BAD5D9ACED37A7E9CDA86B3581F
+EA2C336C627BABC4737FC72F8F4F6BB7D73551EE33D7036243002C75ABD706FF
+6272EC8B127F512CD94B4F514F2DE812CF0A27F44E3AA88DE45F8F70D60AEE94
+B39756DD3301F4C4EB5F7A46D1EF564F9D4A077B55856BE8070C46525A7DDD5F
+F93B34767BA45CBA4B18ABA32A3E4DC1E0F3236A1106CD1CF46CF2748A3D67A4
+57945BE9186686583FA8B733579DE8AAE808C8916EB45BAA486A85DBC2F45566
+226D9EA08B48360A2C2119A60384F37D44F4096D8AE632FB2EBC0DDDFE6490E3
+D854243B2D272CF5C16F0AAD1815A417E0437145718C421391BC4E0BDBECE4A7
+FC58DCC2F00B5F262263EE95A66B7B588B417B20D3AE846ECF2693940F268C17
+45E0FB4E607854D32C6D52E83F24A890B95D6C169E9E7AB8A1ACCA1756D2D72F
+0D4A81042FCDF505FFC4FB38AECDEA912516F3828A9480D6179690438CD92FF2
+BFB06CA814AD933409C99883AA5D858ADC659C1BA0E3A080CB1E4463CB90DC8A
+841CD8A67977D90CEA876880C4118254A19147D1389963C41CFBAC11A51ED614
+E0C7FBC7335681207464ABF8C4ED5B859592A3376F58135BCFA5DE0696385BB0
+FFB6345B71555B7BADE49A8ACA8D973CC3DF7BED1F3B5D595DFEB596AF649E3C
+C9D18701E91F5A47FF6E933E21F0FB9FFB3221EA47B964FDCF13CCAB1353A21A
+0CE2631E8E588A4AFA85AB3502A3832F0FA6E4A9E942F3C6B70266EDA218C6D2
+606A4B7C2D112FB1E3B5437964E2431F7B614CD62017182AB7C7BCF37B79B1F6
+5339265C3BDC27CD99AC7D748CFD1DC2AE04CD5590CD3E0042091DA9CC585AF0
+DB968876792926E857CED60024172E360E4B169DA93627BF5BE4A89B8816D5ED
+80C3BB5B5A45B52A16879526DFA881D0B5EC317437135C50B27CEFD1F5022BE5
+B15E1D75D8A3950397E5EF6999E30CE159C111A6468D2DAB04B3ACAC61986BC3
+AF3401CE4FAA2ABE187EEF62A1F70DE1CA0418BA7012133257153F687ADDBEBE
+CDCE5D5144613798CBF687FC96944DB5C206999107D67FF7C8989C512DA066D6
+D6B8CBC71F9DA6B570B4451375B9EAEDEA1115846E0DE7A3B686AAD19F4E39A7
+3DC2E00310DB85AF8D9080EC153CFC0AF60E785B8B723C16F77F4F3568097B60
+E1B564F8EBFCC4E3F3D8112A7E8FF270331D2FB475491A51A87210248F9338A5
+8F8A83C0D8481C4B7FB4BD0946A0F62F2FA95D10FAA84DFFE90A240EF474ACBB
+9E6B044896D3DC2832BF258013E878EE3C5CC43D6AB4C81C1936C442CEDD2F6C
+DB3575B617296CDD6A514F2DBED85F14FEF3F00A0A3C2A83A328B249EBF2C31A
+EA9D19FABD50B54736FE13D6FFE686B1CFD0EE0B6B7F873F7E4A94CDC4F13B8E
+F85867862B8FFA7167A39E37833AFDB4BBAAB388CB87F0B73A502C34012F783B
+EE1DD3D04EB580E6D4BE162E2D45F7EF6BBEDD9A5A3A74BE4EB0759ADDD89E44
+9CD6AAC616784D91B39AD85200341B4B33127E9AD95910F7642FF192B1241525
+D1262B52C70DE1120705CA2197DCEE72A404199E546857DBBB84B62F0E5DDFBA
+B3258AABC24AE22C90AA37B1DA67BC83A83F169F626859F00E85979BE5B24381
+9BC3EAE9E2425C10CA412982FC6A2B7ED8669633E05B89ABD3332811E39DB955
+6E7C9C2A8E6DD1D0D5A8590FA66FE389609A47A92464C8B4B45DFF97719A22BF
+F5D31C9C6C0FF56F9B3DF1963735BB55978429DEC75D2A0E8B21B62BEF5EB66D
+79C82CEBC2C519EFAAB524A94577EF320491A3FA8CB2D730293FE9ADFC8A933B
+E0BC10053DFECF68261DC400897B7D28327E144D9CB0089C91D6A134411D948A
+A2F90ED6A01B7306C993D991D70B5EAAC7A639213EC0F82A1D7750F3F799A585
+5AA9D1DC181EE715CB577C4DFC25482A27A090A0715E76B238A94A5329C67932
+4059B942FBA2C6D3066808AAA990E81BE87FEA27BCD1382A83DC20215D1BA29E
+4200DD53397B02197B6FA86ABDCF97ACC1B898DC7DCA38485DDEBAF95388BB7F
+6588A5E347A760B51AD502DFED343F64C6CAC65D8218E75ECDA7292A0F2FBB4A
+643454F84888CA17948C9FB31CF86E555B4815AA6C81B114399CA1169BDC7F10
+4FEF092A2CC807FFFFC7383FDAC67933D28585B6D59163EDAE458E91E7EA641E
+A38F9F9AC61A41F2B4CCCA221C3A72AB7584D24400671CD39F2175378C945F31
+C26697A7ED159B5292769952925EC981049396532635B98C5018A15684F9BCC7
+9AD6DB7694B1DBA4107593EDBBEFF3B140B7CF51BD51B0990458B6C31767179A
+1B63E40EAE3829BF4CE47841CC9958B3379E0C407E5604911B96C587E65FD005
+8E0576018C746EBA88A44B23A3F56EBCD82E0702C4A95FEE93D8A53178218FF7
+4CCFA54911ACD0FF16FEF122729B6E985FA02F7CCBD6BCE95597FC3CE99538FB
+17A8238471AD59C3BD9BC4CEA7AFF4075A15327318F6A5962CB9AE8BA6D3F045
+E64B4E57F282A1DE2049B163A4288A69ED6EDE22A89902434ACE821D263606A3
+74B64A01E25C9C7B71D745FE9F7C891290A2643009F7C21A10C45E2BD3C3439F
+E1A8058C20F4C3ECD7CC083D70252227836371FF8387DFECCCE19FA7B3BA9FA1
+400F1A17B257DE3F0661DD7CD280C58A33C57BF883777AD1B0FFD5C8C14C34C3
+638979F4590D49978B1325CC654E70D7C81F03A2AD9E74B12C90F0BE89FEB4B8
+4CC0A3F6BE1B968E6F1750A2379DB3758BF397810D1370567A791629B4F9CDCA
+D4A6DC453244EC5932E79727ACF464295E75CFC635036CF27FFBA1DDC816801A
+DBE116E0E90E6199B6C6B3594E3B700621EFF790C6D0A2E6E82E6840E51B38C4
+579FB95337423C15A8486882520611165AAF3711B005AD3DFBE56FD60AB643DE
+608AA42A1678786D34C701AA0836863119C3FBAEDC3D0A32CFC097B05F9D90CC
+4B614AE7F58F3BF9C630BC15F2BB7C9625F4B09ADB0BCD6162C0BA1320D30AAD
+45EE4BDB168DBA8E27EB9DA43541D7D09EC9520161FE013B8ABE63165ABA1554
+5146ED2FCB21B0345A1CA0E4BC2591A87D0CE5AEDA30DA4F11EEEA1031376182
+EF54B78FA2E8AA6A9433272C23534CF0E8DE3B2E3D413751D6316C41F695807F
+3BC8A261F1C47C4E740A606A97D5EE4608A524C4F1A641735601161669B687EB
+8F76B9ABADF9D24B2EB524C6AABD7EFB03CF1B8F6668C8B23694C916BF9A6BDA
+A24DE24D6CD65831B8E50C195D028F2DD9BA757902C2B35C13487F0BED5FDC37
+8F9CA52C1643CEAD5F98337B73527537B8FA58F86F01329F1C4F14040FAC9792
+851F1CC40481634C777018C2E5F8ECF61328625A631D4636B2687B40395531AE
+88840CAA74199E48E9FFCAA2C6A2BD03A17B76FAAE9CB0493E6294A9E3D78E70
+3FF2732D0D1797B70A52A1BE26E3051FE2211ED58221883665C31B5361DD832C
+513510C5F90752F44DBF4736328A6C3A12420D7323D134784C686EBA666E15F4
+78D542A4724BC1E122D7DE13083516551E7BDF1BFBB7DCA007DBB44F3C4C41FD
+BBFC530D7798851581D0812AFF6F4C8AFE9F42F44BA1841F3AC128FE6CE93C05
+1E13CE2DFE658B0A72CFB65D719821DF82B89E2DD0885CA956529EA49D7B9133
+7D1C028A665FFFB23654B08776938DFC3DCEEFBBAC6F7EDCD010DB67630CA95C
+BD688B57D54C27B00C6A7067BAD1BF473137EE9A79EC3F588762C66D9860B6D4
+FA7E3EE93321E82E96046449A558A88D426B6C046E9A088FA25C5A7D0E46716D
+81039491DB446916FA5F10B5FF1AE7AC47CBA274592C953BD5A9CBC996C9AE76
+5B71717C60CF979FD06C0E2DC5B99D42C49601D06164CF75F70F6E3AF3B31609
+AC2AF79ABC77A6717A1AECF7A81906803F86D7FE8BC6D819708103BB963F6F0B
+DA611B948CBECB5EFA2B291DA84FC40DFB85321175A3684F32D311455D14F6DA
+D759BD39211540C0297FC1BD9FB9D2B58A91DEE10E7F6A0635F4D60C3D5A5D5A
+A54D4566C36A1DE47827C4384E996D072E87FBEF1A4EF1FE73D48B3ED3EE3499
+8AFA73811F0D3764780499D425F0E19E39718217D80D4D8B9D494D9E203D158F
+B6C7637B9996E2CD033AA4E4A7DFAE20ABDE997CE19D34AAAE2E6CB30732E502
+C92D35A0618E0A1BE754949F6174DA69822968706EB94D1720FB2879E596D3A7
+EF942AC32C93E8D7CBEDD8B5CD37443C40F8CECF61496F87967FEF934783E30F
+224E6CD4E1AFA9E60E7D5DF243A1FB709EB59718AA5429ED39CDE4F9CD1F9283
+7B1EDAC16B811C28AF2BEBA473AB452018BAE8ECD5B2A3593234E5EF06B6756F
+2281E0400F776034AA7370C867BDF8F8CBE63E3506F5C42C194788D20A71C7AB
+8A5E0EF0CFB34688BCA5CD32D55AA3E61DCAE5E57A9D3AD3DED4F1EB821AE5ED
+C955695970C7A1BAF6614606243C6256300F76B13E2338CDFCE1F3CB0E7863E7
+9AA792B335CB8D72978536465393A7DEB7DA08B3012A99FB2FC7F6FF7AE5716D
+93FA028DF04128F86348FB9A511FC9C5F2A4948AB8E3D65FB8D395DBC847CFC3
+AC4C36967A941825BEAB6AE19FBD2EFE727F36708ECD6D4CA39743D90725B633
+A0AB66791DFFB4FF1570574EAC7E17C772540440EA91FE9F951EDF7B8CA9B4FF
+039FE7704B8D86E980962317F542C11DA249BA44E0D0D3F6724561ACB8D1BB8C
+C89389CE95BFAA2284F02BD11FDE0E5BA107C68B49F80BC01FE2995CB415F1EC
+1B57DDF194B61D4473594BC46DCA84D668564C86ADF67D4754AAE8B5021D9EB1
+2338ADB319A937E9AA44ECB7649E3347035449BCD936328FEDB5C4A337A0AADE
+BEA9D1A4C30F51E9B375D24D089EEF4FE4DB3B91A97827D2AF45C8379364325D
+D8DC1AE11DD1E9A881708298C154CA1CBC5A2347AC28E960123A04365E01A049
+0FB3CC3086401733F50F636A4C7426584812DB1B205A2BD31BC49F3F6D36A5F9
+79FCF84EDC4C4D95FAC2A87D7BA88D58E2EDD30493564B38F53F50A4B25DC768
+AD975A9DCFB0A4BE6947FC780F2D4ABE4714DC4CA1197F5D4EF9391026D75CE7
+A11CA281E861BB0E2F6D917A8C9416FE9F85C938662C95D21E3C1AD3600CFE96
+CA34669E8020FB501C223F493D0FA587209565FAEEC1CEE45AFA1F1C691B9F6A
+82EC74B3996022FD4532F533EB63B3D043797EDC00F6DF91C9A02958EA01F55F
+00D575182E0D693391DEA7CB26D4A418E48A2989167B7DCE251DA099A2B2F592
+AAFA87A5D2351E00F3470C278AC43DEB3772671D5A020E9A7811DD9012B45CF0
+DF0644B2E66039C8109064F1B79385F1F09F222B545B1E00A91B39D3337C67CA
+2A599F1F4BA039BBB26179F2A72599892F0CEBEFE8DDD98B55CACEA45D4046B0
+46D2BD09D8972E014EE0030656C55146644AB4081DD7906687B7E22B39FD0D42
+52A18ADD5626450A2914B9892E0147A245EE0BED473D485AB9858152E3FA121F
+9BDD04B7EA8A00B2A245EB7685488691EF21286FD15A93FF6A0468C6D06CC08E
+36EFDA76E57E0A60E1ED9EFD4BA27631BB1FCFAC57659DB0F25B3F1098D001D6
+7BABD8AC9E34D9D40FD4B5ADCAC8484B378AD48CDFB645FF9DCE1B9456A8F32C
+F9F8ECF3AC649FD0A0C09F19E9C0302071E598DDE8D62114030EB580E8B7B48E
+CA10C3B9FD2498D84BAC4D649597EBCFE7DA6DEB238A87FDC41A647D79A3E56C
+4B5AB27930AE3392E4D5B7DF63406467FC8E6A63DE565844A055D76B779C8609
+E85E4BCFE84319532B3AC9D62BD413CC130A5364EF1F6F3A8F40FC28A8F80062
+CD6C9CA9EA841C25782D7534C5486448FC86B1CD00AC242FB0ED93447AFAFDE1
+4EE8DC4F4D6AA70536BD8E66FEAAA8CE3B4BEABF5450D66D3003483BB525E726
+24E6CDD62EB5BBD375B908144FD6A49D62B4AA487C72F456899AB0902462A452
+FC4FB95130181253E90EEDE1268161B9A03DDFEF4110456758B49C4B75E97026
+A70A7D06D47649CBEAE4DE9FCBBD8F6DA5C9DCF1E682A24EE12B834A6D01EAA7
+B7D7102CFA11FECE107BBD8ADE967101D476F63193BB25A9BF2F4841144E5B06
+E3583F5C997211E5081EBB453FB0D89232567FEF3D544A8F9B896303A47E29FB
+09B3F2248934502D0364D400AAC31575417A295DA0B1789F738A6ED721F20116
+6F975A39E6DD50A266D0935A38079AA7033BDA2A7CC21BA34994E0C3A0CA9068
+3DEF984D2F0CDAE87B801C0C536C101AA0D77A3B65651CDF745B150A22A0FA95
+05D9A09C8FD62172610A719CD4E8F67603C4E5E9DC24349F29614784C3339DBF
+4C4D4D9524310C3E12D61B75EBF89FD2010C13D41324F365EDBEE47F280A5ED2
+A5165A9A2EBC4A7516246D99C18A0A61F65D32B60456344BDB08C929F9453553
+452C97E016C26B55893F2D2098D94298EEBD3E93E848FDEB52363762FD7E6B45
+3AB36E6E325AEDAC9D82657F8ED07C3F4BAB14F04F84FF171362B3551FF7356C
+84CF0F2434A53A3873EF60F407CA937D4D90887795B84C8A54C899C531EFCDD5
+E8F4304327B11C6AD9295E00BDAF29369F62CB781E07F75A30CFD72807F18859
+2F0A82200400C10C6DFF085FD50CD7AAC72A99F351D824F86D33CC89BD70DD41
+F5E2414906C86EAB1DF73EEC1E8AFA68C7E230DAD77D995F5615DE0DA8F40992
+ED9BCE277024155EE3A67C4311F57D2F983D6B19A9B435B32E268C5C50DA95EF
+3F0F921E54FE0F2EBBB1972248F0E4BB8AE3948A408FAA0CB608FB551AC48207
+62C25577BE27D8FDBE6424EE94CA99A97DD2A7A9362E8EDD114145042751E6A5
+DAFD97118BE5B8681B248F0CE3D77AEF339FB455F3817CF7182D1C2D452F250D
+FC5608982CE8CFA119B586A83E8FEA614BF10DC8D2140B854F2E7C3CCABAAE3D
+2A80837BF7F8C88090B5C75BD053588563850206DAEFE33E4C6725EEDDFA70FD
+5DF78932BA7924543317680052CED9038CEFD1B642973E31253DAD08488B1C71
+AA6F08A5FE3F6222ADB66F0401E33DFD17F6080B00A9B3BB548FD2D8337553B1
+F01137667331B98B6E645E4CAF177E39995BF7AFCB57856350661189F7EB8082
+ABD4364A7B1630CA0BD029D0CD9175762CB58143266F22BF8D0512F7C77FA590
+13B731670B06E01630670DC48DEB43518B241CFF20023158FA3213ECF7D1A49B
+E7AD6D6BAACE6C3E98644BEC821046C9246699909AC060DCC4606454904FB9E7
+BC9FCBF739E57645355991B4511E39D8B71F1B8622A7A5D19975D41ADEFC852D
+2E598734CDCCCFD8C05DDC3040E38DF0B9608179C8BF28994732BCC57D928BC8
+83B8E7606DE2F7128954373F9718877DA7599DE0AFF6ABB520C27D7186077CE7
+67994941E9A5D75A8FBBEDA2F3FDF20CF337C7E72EADA68F6A0DDC1BF80268E5
+088BDBE5E056BBDB0F1BFEC6663C275934BF33671BD55C838F4ABD354B2B3DDE
+8CBB6FB74CEBCFFD03DA113B0397D52763EB0358D32C0912CBF14A1982227AB2
+14371C060C9383278C825595196DB28B1A5318E868D3EFBB90D58EEFD17FB2A3
+E1910BD6004EAB05E713C3C62B0853381B561B1DF0A772DFD5D1048DC87D9F8B
+BF3A28847AFE8A99CC319CC0C31760E7B2BD1AB594E30D797581F5A0E81AB0F7
+ADA196F2F7001A3D0E8A24476CEB3AF69E875DE4F79039F09792A2B6E296CE4A
+007648C0CE655612567DA35A9C3D178828BB42507B524B622F10AC8781B19CE8
+AA2759D809D76A28F8E732D208E54844EC9B612458EFC5CF430FF322BCA2FBAF
+E2290E8AA03A28847AFE8A99CC319CC1F503AC7AFC361DAE2FFE5D3A5A1A22A3
+8C2194EFBF239251391B49C6C4867AFCC7CF8CC9CFC4121A19F0FF02B25FF5F6
+677DCA7F1C959023B655F22809D752B9BB789B0DBE3B1EC0269ADC9B69CDB6C1
+8852EAAA0B86CD0327468A199E5E7725983CFD34457404F15BA85E1CDFC6092E
+D33B200AE21D0404DCF32BCB28A7373F882020CFAB2CE65E3881311E524EA91E
+461343A313A28A9AB1E3CA825BC78C601A18AFF7605F9C0F5FBFF0300C0F80D2
+9D5213CF690386FF773A42C48EF4AD284AF072BE9A8807DF023342C9FC75F522
+C40645058A7E9FA3759899720C8B5DE64CE29BC8EAD802462F66F3EDF479FDED
+A1324A62D57D3887204302AD80B6BB6EC73304F7A0711BA650528FEF25493DB9
+5F657BD97C468C4ADA7CA6ECEE11D86AE6CC86E8B493367C1BAB3BC0C3405741
+CAD56CC6B38FDA806B70BC9271B58F35434A12E8F25CC476C953554B6B26741D
+C8FF8BCA6575A33B49AF35102458627C9B8957F5A70AB9F9C732D51259D2F95F
+A6D2DE2B21ECD7B4941370B9CE7E88DDDA40AD9C0ED36BE45455AC0E5577CE23
+E3FF07B8CD35DF6320A1EE1E270FC43E30A6CDAB5FB566F57018D82B15A9C80C
+550CDEC09BDF5E1A2B8A7F771483C26BB2F7622736A0FDD2D813AB436C474A9E
+2C7C0817245326322B9CC4939BAAD44192B4775CED10C504360FCB236B33EA5B
+A6233B2973A1A4A64E1305380CE6ED74FCE37B423285E2237841A9EAC0E76760
+D05EF0BD4D1B9997140FF1532F9E69A3B8E2E4C0071C2336CEB7BE8A5C27AE95
+2F4946D01DD1D65C1D50D2AC8BFEC9EFB184F8A92781EA228C2F15AD9AB1DA75
+01DFA0715C3E6AB79D37E3F452F951612427A24B996F9F1C794B9F20199F90DF
+5B338501403614E907DECA0184C1BF7F12425CF626FADD7F013DBD6E18D63CF4
+6DACB9DE664E66E374AAEB6D371130CBE4C5A0CB74BF1B5AEC6E58FF642949FB
+1EE1DEFA6146BFE98336D9D7487F82C2C89DE00C87705C1928CBC84B7F92DCD8
+A43E34700F117147DBB782F33CA61BC587A5E04E813E4AE6CBABF4BD22339E88
+CAC8229E3E4620062C519339F0002D2F23A6444B97678044D4C814D594945543
+90A1735A9D9538E5897256EF93E55E3119ECA4FAE72F7554F52D563A806FB4EC
+884B26DCAA25E29F413C3847ED2852F4A6B7BA4694F804EC6DC2182FDE51196F
+72328E5AC0653BD817FAFCFA53893D1A325A4C1E1DBAEEB2506A2D8E2F1C6538
+43A05DCE23E9D6C1339D085BF92634D01FAD9EF8A294FDDA952D6D1DCB0481C4
+DBE8A6CC290469F2963CADC84DA9CE87D81D4F2306F0F4CD8882D55FCBEB8B72
+8581AA72EC3A00921D30E42D3DAA179D9F9C42585F80B2FEA256EF66888CC3CA
+21D9B855B9419307FB37044448355F808ADBE045E6CE6D9398755417A2C73C7E
+3106049D6C9FAA13FD406182B5F62D26C28668C8B1EE1ADA526F99362C7693B0
+1E7ECF132C62BDF74FFEA56969BF76C5EE35D36E883E3362E8151A38AD6FA6A5
+661E44A6A5FA8A32C70F2B0FD9F9B61C3966A802421486E77C9454FE6BD3B4E6
+1241D3F7236270F4F8EBAF62925195487C7FF69DAB764D521EA0D98F68FCDB34
+504DA38E7080137F0B54892446EB7FDE7F92D9F8B4CE14C689DF3B5B7F23CD96
+597C5D225B4C7A3FD940B5B7DAD21231DA6564E63E4448BD86AAF678BCB0B56B
+FF435FC4E3608505738399691E13A39724DB49888E5D912DC57F981060D7C2D3
+174873F55307E929B392CE3475109E23FF8E0A7E8FD29F50BEC1BD11A79BF0A0
+89884DF1DBD2151B45CB09CADBA91F8B83C1C576806B25604B266B8D669AA7BD
+AC0A231CE71C48F0B53915E2BA2EC06F3F0994974459D4296BC3A584610663AF
+1C2FF053C1379F429CEFA9495B072911CC814C19D53B95DE0071E3A439D16DA8
+0C2D7D25073BF52A79FE5CFEBD81172C3E68D485222ED1260B7A39E0F87E7AD5
+FCF013B3EA4C39D7A98FF71A8E6B50D46337619F86AF1FB6373D0CEE6B46717B
+F786CD0F49911A0A346813FDDD1DE9E1A13608EFD1AE2C773029CD583F640582
+8CA8C05E7325F9077349C9673FBD6D313032C031B298E84EA6F33C2AD3AC042A
+E92707844D622C39534F12614E0DF155D72F1EB25082796665A69149FFF9ECC8
+14325EE561E11685F37D1CB4C432E1D7B3ED5A0DA71350E6329E4F082C00FBD7
+3BC06D85EF4F225B2A6F846CE65D5869318FE640DE6C8C6BA0967E64D69D6D5B
+F8B24AF382484337EDE6D846886EF1FCC45828328970333D68C7090E454AF9E4
+5392F1B4CA72CEE9100B3D3F7436A5F496503A3E108CBCD7AB1104D13E639C19
+685AB5068BB7842242BD3CEA3A0C38E38CCA9F78169A266871978FFA3BFECE34
+65E9F0918267336ACB7205713A9B31042BB5A1A3B74395F8AD7A723EC10716C9
+8C5EE93D23665172A82B6CDBA3264DA68BC3F9195E1BA39307CCE2C1B99B8FF8
+D5F1651E70F35D9809BDBD3651191055025C731C764200BAC03D1AA472AD0ACD
+30767160EE6EA3E6E8FB3190B7E1BF4C2BD3DC8A877334136E65293B2C06D757
+7E63341BE08A9EBD674FA754E8942B51280BE9A7F7253F7F8A49CCD3C1B4F9F9
+1890561F9B9AFC48061FF5440E6474701B7CF41EDA7BB3B85DBB85DB55C3ECC1
+B8B7230CE67686A55FE9B3144ECD1F17625F5BA9D0C0242E277C782811CF61B3
+714077BFA04B53EB63496BE00FAAA681420DA7DC25AFA04AD42EB0B6706170B6
+7822A5FF7C730360CF6EB23BC007F53388640FC9C58E6C4A95E1027273D38482
+DCFC5F6F6E6594CDC6717F5D94FBA532977DE4721520D9476D3BBCBF8622A21A
+60DDB2317D3C80B1A70B71AA537516A6AE92870469B68A357DDA4E9A4396479F
+D092AA676650FF0C8A394D15E091902C8368DFCF9AA0F11EA6E3E3EEAF36D86B
+5B7A2CEF0B8831E122CFEEC2DECF76AAB9B3BC31154700B4E36A89586CE50FC9
+C168281F59F45D49BE82037063D9EF68329D5CAE9EFC75DC15A9494E876104F9
+402A58A479B4A21449B2F252B70C4E6A2E6A34DC95A020C39DE00C87705C1928
+CBC84B7F92DCD8A43E347008B07B96D477243DAE2474C372E77FE73362D1F9A0
+90458BD41CE731EA372572B28F41AEC501195D34460B4CB7D1BEA6268AC96F70
+91245F034BD65542DF47BC7BBAD3DA18848795C2BC29B689EEFD40F525663D02
+25B4FC11E5361900BAAF4D8B1B920CEF7D5709BC60E2B71D713C1153C4E828D6
+1D7937837DF89B62C6E21AB81DFA802D4232580FCF14B26666E8F75B6BC6389E
+7A85FDEBC0D692A273966CA2B53DB31F0659208BB467DEDED13A24A221FF4B48
+628FF2D0C8A9CBE157055A933CAA161CE5875A06F294CE1BC740EC90A0764E90
+27D61CE5938B121921C1185AB61EEA65500D048E11CB8A8E505E9E31AC0A41DC
+B89904A846BEB906269EF691B4B66A9FBF2F42F9193970F9A37D5032501CA2C9
+04FD0300ECCAD06E7BDABF259E71DB74E88971C070FBAE2C25A7104589EF3883
+F57824A0067A893DFFFD64DB0BCC9760C91E86284AA37940E886BB13021AADC9
+950E2EF1FB69E5350B281CAF559EEFFBC27B3A08467E29D17E5932C4535B3AC4
+9BB6EB2BE96C095EED5449C6319F2DB9F1065F9997AC8863A5ECFDA2D8193F43
+FF146ACC2771C893B96FE305B9AFEBEF12F3AC9421A46A3FA3F6BE1B968E6F17
+50A237984C0F3C91F1F66DE67304C8151ECB8BAA2419D4B6FAD9785924AF2D6C
+DB429757D2C24C9344CD28DA71588E5637C028E89C5355F29E7EE697BFFECCAE
+75C27AEA6C773BC70CBE3C3A1D7324B1ECD5C04ED54B8456404A37FED6FDA830
+6BA583EC24398D56F651C57BA87A22D823D8A0B655256CECAE9184C1E3851FCE
+2BA9A86A1DEAE13D34736CF9A6D08728DA3D95ADF1C5C812B03E2569E0FCD8BF
+B7177AD139137E1E992023356C5C546DEE5401E764F00070BC8F6E8102B0C247
+A145F11797379AE23EAF519AB4E26D499FBE545C804154DD343D0FCCA88D2997
+325438C0C2899042585D01A59AAA201B4F06C7E8832176EF267E68ED11C7C5A9
+7895C63B7B93E614D298236D82FB78BD5AC554C7A94BFD3A91B3FFD4F252EC70
+527FD1ADA9F799FACB6315A2110148ACF5E1BC35CAB95FEEE3B7684B67355C6E
+B30D38D487488A571F1CF7A9B70325EA81CF70228085BE334806070B534E0DB9
+5151759FA42EA09050F2086F0B643A4E89E630F99516B2597A048EA07ACB5ED2
+8FA1E9FCB1CE83942637B2A6BD6CF81806E9A7711B75C6AFECFF846191F4C6B5
+73815A3AA97EE6A7797738C1773B9AD2B42BC431C60418D244656DBD5D95F949
+B0E4980653F01704F8963B8BF87DC9CA5CEA5A11F2DCA7F1FFEA417A55A919D4
+B9734D9FB7982A53EE2D38D459A241F1D79D4958D052E0B8752B7DA94D3B3AFD
+1912DDF6CFDCB995609788A176928BEB2B6E6000CFE3A4CE375DF221D42B25F5
+A9CA888CDE224CB1128890185040E8E0A478831E6A602104412F850A481EB75D
+3D70B37F2088FA9735C944C04B919B7BB6A60DD4DDF93FAABC66F5CB056A88A3
+E2D04DFBE0E746C1915B6A75B0F74F0BAA5B6F3E6DBEDDECE528707A7A31EAF5
+A8AB4FFAE9D159BC5086CFE6D15C4CFE00627CD8309098C29C20846239EB7928
+E4FEB7C2BDB9732C0BF2947543F6B361096BBAFFB905CD432197FCCE5217C8D1
+38D9E07D4081C4C3AB5B333511F10A6E751064074A52C138FBD5BD0725925E58
+EB63AB2045E56C4B20C4A5320055F8ED0603A9768824045B88C5088B012E8286
+9A09552C19980502F5A167ECA9FE1DCB131CA0D3F76762C4F3F49140D1A8B8A3
+7DCC221CE80014F807A53945E21FB4794951F17D2C393B778B7611053D31BBC4
+670C6FFE45FF252E990649FCE2D6B4C7A6EB87525DB21C6036850CA9188C3A1C
+57114767FEC20D2DBA71C87061EE8BF523D5911E3C9A4CD31F2397BD6B4EA476
+4C0C9CBF8588E301FED081B04C4A599DDBB64D567D7F1814E550BB18DF86BE7F
+7128D73D5AECB9A0B0D0BCF4999F3780DD65EE06920040C11AC2EFB424F73D1C
+B7518F207500359B651D485E25BBE2FE4E9C61DA16A1DA992F01F3B0BACE3AF2
+4DADC46EE3E17CA208450468258082D6400021C593C2475F18AECEAF23100219
+B1CF3A1F09D967E429545A65BB9BC3D55B13BC74CDBE6EFC6692B1EC142E866C
+E75F1FBF73BF2C4E2EF1070EC9528F0BC7ED87DA4B04088C5EFA7B528CA349BB
+5801C9FCFBABCF7FFCF4829B5CF57B8B6BDA81C34E62D5E268088D47B520976C
+FC21F029256E252935A599C58E9CB8EAE9A2064A6CD3A2BD1F6014889D6AE0B5
+008F455D72387C1C42775FF674A31B8E86E1C90502CED6B56AB56737158CF03B
+694FC508079D3A31A39E58F3876009CC5D804B153916371ADF86031250027C32
+39C772AB771A74EB93E3DAC78B1A952BCB3C63AEC213E327B928E4410E361E59
+D541ECE44496E5D0B74C362E54EC62508D026B7772AC32D66D201E49B504C1AE
+B2D86F9D30BF27F857FFFC90C7BF80F1363A04FABAF51253332A80CA5C31C593
+81BBA33B750675786A99B89AE2B3FC5DF8A50E6F0C48860C52FEEFAA70B59533
+455377CAEFD6C3CE7A4BE86E4A6713587A4A5E4093F98C795F9482918633C66D
+46CBB936BBB429D2A39239E748F88760477D48E5D1B1CA9524457069D854689A
+DC65E63E19B8C8CB205DE87280206EBD32BB042F46824DA25035F0C33FE3730E
+533349E8F1489D91F013E82CFB4AAC7660C1EF005C040A9C6FDBFBE1B6577633
+973D5A09174E1A3B2FC78678B5FB7A9D371CAAB9A8A382A36EAB6BA0CAB66B15
+9EF695080C2C3A5459F52DF5237EE2205F8489F1DEA902493E1600B69EAF1217
+B9DF2607B0397160B8327688863BBEFC23C72C059694F342BADE4B4D44A8F0E3
+8DFA8BC885FAE09A9446DFDF923961AE5C061626A5E6A618276284CF0B0724C8
+4017A881CA94A329EDE40F01108315E38FFF635A3F57C728E8D8020D71C1703D
+0D889740C38207AF9F7F3A479B0D3A6A587952E2FD4B47854B12E020C9DECF71
+C7CB5B1C295DE9C0DE56949183FCFB8CC7A4CFE322EBEEE15E3395B062B933EB
+55FE9443D41D9F3FFACA55A9F6FBD5A2798FF873B61D70D949501BEE28D7319A
+BCDFA4A21B5DE536B34845B32A34EBE7542FDC8DDC2993BAA42FADD50EE2FC15
+1AC9B706CAF068D277777AD2F477516B6676A165AE58B26B9DEDED555C52A951
+BB4ECDA998E774FAAF6542A07BA30903C669F04482C41CB74EBB80E94653064E
+169344F16D62675D27A9F0DC4B7EF5BFDE9EA4A64D445BECC73A40BE1A583B7C
+3CAFA5F99ABE792B377B97E059D705A0D83F80A26A3AAC7F87B1FD8620A5A695
+852F2FF71CD16FA79F016883AB1D2D1A624F58B382C2FE2DECA6AE8458D55B29
+B52E5D383DC3DE34556B64F1B8F1585F2DA9A244BD32B8806D34BDE286AF7846
+4D9FBF4D80433243428C8D0DCD27DD1FDF56247DD3F1CE4AAF3A3C3E59B2D164
+529C3881D5E3552A086DCF93168397474BFC8C2081F0602547ECC40BBC6A204C
+4B3EE9D4F4361F8DF9E1C1AA1229E63CC875F86A646F1492C18B24E84633052E
+A5DDC388712A2E622AC7CEE39A99E500F295F231061251AA90C16F6CDFBEA8F5
+6A2BCA48DBD42C11E120CBD1E6BA77390694949F1BD28A6201A92B2B37B9D012
+B8BC5C0D5AD5E2BBE984B17FE9303F13428A68D6A1959288FFB2E4C5B70A4C41
+2C426AA66336CC565BF624D326317DEFC32732A59B9D4E948DAFC6D574A33B9C
+E67A5639E34C8F8A09B5D1B4520FF18D626A206F1F615DF055CFE15A2F0DE266
+A8DCB1D744C660C00716A9BE748675E4908117CA003DFE467E6FD1B5291ECBF6
+B1AC7A25C002DEECF40373B7AB13AFD20D5219A7156212A7B57DD9965B115654
+A2C09112706B19396BFBA6BCAAF617825376C9716E8C09EB0B4B6D62DAFF949F
+576A5621DBB3569022BA31A712693071218A7309D4A9FF6AC39477FA40778E99
+4F3386B6EF38C81511BA8FF4887F3EE4357A4215752326F11612DF8E6B72A5B8
+C1F72A3001FCD5BAAE8A4A47BA546E8EC8426FEC458D2C2AFDCCAB87B9008191
+9E031BB6C0B0BED28A8EFEE408340C3F96875DB7161905999A2E271280ABB91D
+54CC819680322EAB72E1250A76097FE71C4099C3807A01337FA4063B87047466
+804D6AAF4225EEB6134FD6F15A5A9ACD38589F75C1C940C0650A92DD7E1B7B1B
+1505B3F1266FB8568E4BFF0410C07750AAC4AB3C0B29796D2BD1DE1D4B673B0D
+41B850D1C55DE662FEE879AFD9523A5B47463EC3AA91AA60CE1A2304709FBBD4
+7048FA041670EB4449713CF2EF210D0BF5C8DA5F3BADC0B6FA3628B1EB9EAA51
+B861EEC948584C890625E9CF94103AC36D2E1E53C13785F134CDC2B76DF5F11C
+7C8DAEBC28D7DE5CB57A30F23A2859902409CD482FCF66F63AA2D015BF620BA5
+3B1985060B8735BBAF56ACF6E84C4C83A1E016DF6698C27D64E77CF58D522F7F
+1C337EBD094C8C2D415C6D4470DD8901269120B0F07771E03905EFF7027AF901
+7AD7735E1F131F51421F247C275CEEC3A27B18E547B77AB0DD203BA47E66E3B8
+9323B2D76A13AB49D23BBBA5D38653AAC7B813F29F450714E366B393A23358BA
+E52FED3B270124639DD0A56CA6A2B7C2214A8BD4A0ACDBCB32850EAE125EAA7F
+5977208951C5EEF80AF06A0B3E3A704A3B79B914B6737628E56F043FA8F1EB48
+AC809BE050BAD39813DCF287E7B822B33E39B5502C46DF4A11ACA54D221B4422
+4932D25E0EB45AF8CC1CB0A36DFE6CC684A0EDA74B41A51B8B3930FF3035C129
+ADF44E706DE035D39F97FE4CBE4766554959925A8D3449EAADC717918F453F38
+24D61FFBB85FDC0223F7060F086B4D3A1CAABB2A29D93DAB8EC44A72154981C9
+263642FA5DF59E7F3AF5AFFE939F56F9162BA8BFF55CBC7621C7DE55DC385B2E
+2E3B2B5CC33DE5CE03DEE5CCD5F930F3B3F5C994D3214A2D0851F039E95FCB19
+6CD2E9ACB79888AF725FDD44F3B23F8FBACF1E5FFBEDD74FD8A0E83AD725089C
+8E78B68456B61D69BD45526F5A2E6B64F780D2947F2AFF2E0FFF984F022FE12D
+3D448D0363EADDD822C4806C9910021263EC419BCE1D83343DF0CDD6BB000E56
+7E0110BDE9EDF9D742EEFF2C755CF897FE90C29498A23277FF1E33D93913C29A
+0FE8B685B014431FE391C16E60AE53C9151DA7B72ABD919C5BE6CAB9BCC2D016
+EF4B68FE6C549FFD52BC02589DFAE6B0A152B06B99685BA8DD4359D2922BE9F1
+809A78FBB5DC2FEA47F82CB65B3193DA760614BFF4F1E9B18DFC863F0FB0DBA5
+91729E1267D8D7B831C8203FD54703BE1ECA733C617CA186D413D7FBDE7A1DE1
+6C177B128893D0D93F80BBDAB5EE420B6D136FDC941CE819C6D2BD022A0F571A
+38BEE3601773287512DFA96E2CE6100C36281295AB7BE62C2A2A65CE330E8051
+7256C2ECB6269D49C448561E1A36517CDB9A1FFAB816CE911091C1E8512ADFDE
+54F30DAD1AD150F70634FD5D3F4A2AE9B3C0E326E0B12370BF4871314D5D009B
+EC8C5951422C3492BE918861FD311B5BE972A7E5CE4B4EF7AFFCEB13D08E9F8A
+345A08C890B1E0B6FEEE1E3DF06973DBC08C1F72289D2F0EA508EBA7F76CD61A
+C53096FAA3425090497B76761468B5EA635A6261D204B3F0A74072A491F62A09
+D70000B7F0F6584F7DCAE9619544FE8CBD926AB84D5AAFEF35500A144959D189
+74C288F493E8B146CED8AED058C502166783330FEF033234F6BD0B4AED7624A3
+A6043E519AD2ED8F06B993088E210C91279AAD5922A3546551F93A076A736821
+14E8629D27C2D02EA91900F6E7B049B1C436C326ABF617176B028A8325608946
+AAC90B2AB081EEFBDAE538F977D177263F336ABCDA9311B576B832C9D4CF1824
+C71E14F43A14610FD35B8923779D601A7DFC1676A3C60E9E31DF32B0592DBF8A
+17D56001B514B0EA4381CAA3F02F0A60826353C14EC3158CAA7C489E995BC2CC
+0295849BD661AF7304D9C82F7BBEEA2D43795701E8C9AF80913316964246EB06
+F8C54700858169402F825129521D59CDA4CEF4BE191F133CDF84EB369FAB9B71
+54DA4BEA83F0986EA79609D42F02100F16EFA05F3922C53A814EAA7809F0EF54
+8329BFC949FFD786A0AFE6EAE3F7751A3CE5CF1EC4C6CBF15C4B410A7E7D1DA3
+C64540A72F795250FF7C4A7F013776BF15B01DE069ADFD8EC4CC57FE5F682589
+E70C92C80EC1F8DA6C339D3B6AB675D4383484B56DEFA4EC127104A75C295D74
+B99D5F9BE29911748B9F0971B21CC4CE7364B48BB892A77C3774F2937171750B
+119D471AF7B8FA78A8AF560791110E0CC15011072BF3E5A602F79AFDD1254142
+08D72483DD8EE227926096F165FAB755DAB5D72515E7E8FB57C5A9F564C6E807
+3325CF6C091DEE5EFECC8EA16B166F8F8956A8603E807FF945B24970EC6078E5
+A48D2C0CDAE87B801C0C536C101AA0D77A3B65651CDF7003FBB921DB46042C72
+0348F83ACEFFA78929F4CFB5CF6880B323A31BF1830B1ED3BB924EE2CF3F5C75
+28E7A7EAC28BCB655AB02646E5BA327D730638DA6B918A381D9862B4F48C0B7D
+BD8AD9FF3B7B5B4A1B7CA05420725DB755F1D972AFABF04478516C42AF46BBEB
+C7271938CE24EFD075E348A8169D782F3416E6E89E8B884C3DA9CD7507CD38B5
+901221B1DC3066AEFE92E3FBB7E4176DAB13FF0F4C1EDBB5DF0BACD8C9385A18
+202E78D9E7ABAE4810434EF11317DC8D95979C461AA69DDB99797D1DA9F4BF93
+97438B458C082BE1ED198790146F93E17C349FEA5881BB3F33199D07E7274EFD
+220A7CDCC83D6BC591FD876FE935A3B843B11BBD38F2CAC861A5E9181583B076
+DD29EA4C24C9DF046B45A65F6115942CED06A73B799C7C42CB25C09D28DE3012
+7E287DD8B16DBE8473E15C33C740035F7D3FA51F889AE00ABD0CF9A96365BAA6
+2E20BEA72242A099D69E30F242662DDEB54855AB5A8226615DE5CB8F686C1919
+BBA14602BA5474FF7E82E9C5CE62CC36956DBFDB57FE6275D1873E08F3DE5886
+EACBFF2E5099BA123FBAA321C56E2584CEC64C4C769C96DC633C9A472DE9CDCF
+42546F422F2272A77C7B24EA082C8B28D4CFA5FC5B4DEECAFD111614267B7A44
+683D07E37FE1402E6889703D3A1C1883546956E7937175AAE5CE002CFF71200D
+7DAEA34997488D21D2A972C997ADE862B3A2B1821B296E64308B79CE361461B6
+7AB6BBADDD0A2CE2EF69A64C28BB69B72294DEA5A3DD0D5EC59897D9FE990CAA
+20E365A27437522FDC407FF8B4C766EC834127B278FA649D6626B1BD577E38DE
+7C917F8545BD6D696AE7B5E2FF38A99470D10F396AE89524407562CFA8B2F15E
+D477673AFDE287E72E5E9C0AC0313213923A0E69D24DA292AB092D52FAA80F47
+282D973F4DAAD148D6E58CF8102B09B0CA478A6A6BAC8CD12D58C8F832CE2ED2
+7DA4A0F8B83154BBFE9F13E4F119193F651E057D48C64C19A374D2E21792BC0C
+BEF817DCE1BA46D7EB0676A861BB5FF8B74EE25981C24E8C36BFA67F746E1EE4
+1B0D34B1C162C462433906C4A7DB04C45FD6C1A4697D039985F2625EA0B5B6DB
+576B177A69483B21753636B7AD283A44C701B0C5803D57FAFACDC9F059CFDD70
+C2DAC00B70148474D02C65B8EA6907856EB27BBC296BE0054E364844F0BF03BE
+50426089EC7071143F51732FB7451532B9E75E499A4499A52A7E549AE4DD1FA1
+B0F4586739F883F7465E6C0DDDD8970909777818CD7362FCE1278EEDA0833C35
+F798D66B30AD10FF770C9A08125D6A6E38251125385AF1647A4E4169D825AAC0
+866A04CA4BC3FE500071536523BE6CE38B2BDED7B82D188B4ACC770A4E33288F
+F3508ABFBC38F3AFD684646C1339537C682E755BCAF6AB8F5B958F7B91385E51
+0CDAC287EF89CF06C2E49CD8D7CF9FB27D90834AFF6D3AF0118FBF13A2AF916D
+59437C10F28C43761EDC0E66A5E026E1A9DC45C3FA4C157F5B8C568B6005F598
+9022DC463B7539282CCA80400840A563CE4648B26718FE184DB3337DEEBCB18A
+2C24D781EAEFEFB6AA49B036F3A5D6B2E57AC826BD7E6882D804A6EEA79B7034
+C1128484ADB7FA41251DF209EF0F76FAF0533551DD2C8C2BDDCB8A5F93239FD6
+D3F1241E39637EFDC805B266B494001747473ED6CDF1AC386C1FBC1311951F03
+9F1D9A37844C7C6D9D856940EAA9E583703F6DB868C99D17F0EC62300B94D15A
+A9B55BDCC6382F1041168253BD30434BFBA0EC53913CE94B46B698D2308DB214
+A96AFBA73D3EC6EF8C6493DB3500BE3640262FBE15DEED450E81E397D0ABD05A
+9CB3E301C9DA96F7CA93B7288B2491380B2F4F87646F6BA425E85C2862CCFE1F
+D43197B1C7953BD8F4DA1AEDEC773A37A7C538C885519815287BB419BD974BF7
+95D871B9E5D36BC2991D2EAF8F1F26C506DECA2CB27E92FED95B5EB191A98848
+2D22A585867F2B8469A5DFC4AAE701C1AA0CA4058F26CA737FA1492D6F089069
+00399BC707F7B275CCD3D07BB06DA2289639219FD191769B35782143BA0BC571
+BAEA6C706C3433977EC0AC0CB08D9B02969B7303534DD6544595D1EA952901FD
+D537C1B1EF54E133B2867B5ED0C0A9F051084E452C075130628DA275FD4F4A74
+528E5B64EAC7FEE09C6B193C4E6E66142EF709DD5A925C6AC9CB4E4BC1D7C224
+8A8F6E5A7695FE9B0A14BAE8D51C17C7949D74660C459ECD143ECFCCFD9F43D0
+85489CCEC318224D07AF1DDC35BF7074ACEA54B605DA2DB74995B78CCDDCBCB2
+13F2702DD37EAB12B0EBAFFE55A2A1D87F3FCEBF2730D812FDDDD016B803C38B
+892385BC830B869CCDB7AE4EE70D46F3B11BC74281190FC62B43E3C46858AC72
+36A130C5BAA5744ECED5515C36F27984E2A2F72B4F6B519FB73BA2A718C13717
+4824F59FE93CEAA85111B083E17AA5F20F50789D3B48E824D87505F79BD01BAE
+3BB56977F0E8D21158CD18F6523CF7B631697C1995617A900BAAC5DEBB31C678
+B49D88365E7B7FC4A7A87D4A69365579571DE66F500A75420DCB24BFEF381246
+F9AEABB44123F0FAC85927E3BA0ED1CC6D6B36A027BE66F462F417FC15EE79D9
+8B2F15FFA7271DF32AC94B62D6403E3B41787E1449587E28093E66A9837BBA75
+04A5D130F81567439AF718D3B7B02416DF5DECABA35DE59F93C37C5FC2502E45
+9B18ED19CF7AABFC7D4591EA7ADFA5428CD87225C7FF28FDCD4FB898A052A0B1
+A167489098D9EC60165DE651EC614F6696E844A143C633E32F9470EEC62B0333
+7F0CA3C59EE43951BFAD362AEFE66E4B84D116EE6F2F9709180CA6A8CA11AE14
+47F805AF0D4EA82B6239609D959B3A287A5C204F10FB3A470E4FF419BBB3279A
+A7ADF85D6FB7E8C21EFB8029A04FA627A9A041EE6C0911C5AE8348F559D6AD28
+E78DB185758B4AA264F37E7F9262FC8C671FB33550D3CCC11A0022F426132783
+984FBAD6600FB6C2EF0B13196C7ABB96AF649E3CC9D18701E91F5A47FF6E933E
+21F0F5E9D17CC9D8394F8FD589D20B5D27E480E276C6EC7D7A2615596EB9150A
+402C5C350AC7EEAB82D64F9A5EB6A5FEEBA6191A51723300EA98739492C91EE7
+75E06E20F0297F7DB16730051EDAFC10D2A983B5A2CE0505CD25181723B491DC
+E3489FA322F968E512AC8A5FB7C4DADB72BC5F13210AEC71AED9831718624440
+4D4812EB1E27AAD2AB6D6868488718BE003D4E96D46552563B36DA5DA85A199B
+9863B4ED64CD18471A493651318ADCFA538E4ED97BFB65417CC39F0AE8A2EB94
+A28798982FECAE804854F84988A9B88F2DF4C2FA7187167902BDA1E48DAA51D2
+E55EE43250F660B0361529D811FE8DCF23C73C1F725870E1EDE2146917E5C273
+40B373D417016817C6D279CC08B0868589E1176C43EDDB37864049CBAB6CF4D2
+9FFADA86B2C55B598A4750D9F6C92EBFC774E82C81D58DD157C1E7187A89779D
+D8E5D98795FB0A08C894BAF2BF8E26A9102AD70A369EDE9399E5B127D646FAB0
+A8612DCA1CC8DA7A3E351F19AF3C96D8B886441B1B129C103CE971961454C71B
+6D47C34467F9E2C9A038545B2C9E6A18CACF57593B08D45CA5AA9DBDFFC35B83
+99330235BF13206A3DA1E621E464BE0532CA2D8205BD6EAAF03A971F6814D3F9
+F8402B8CF855891180493205BD9016FBF72C42CBEC9CA2981B1B470A62638055
+42515AA19B5E0E9FA83A47EBD3F770897589C1F0806C014F8B9B511C2B3420A7
+A62D9A3896481D1B738D0627F2FBF797615694450C2484D2FD80EADB6077A009
+A078C7ECB146F7D048955B1E11897E0DE8B62E0FC37BFC5FD730634E2E5C3F61
+A28CDF1B9F644DAE04E8C4F911B346B8EC57A4DA26D80D31ECB293AA04F961F6
+E6BED4A1655EDC31C235D20B206326C7E21AE74990475FC4232A38D8F3903D81
+C9A329939DB53C8EC96EAE85CBA7D0FCFEE888CC7FFDEFCBD573725716B9B60F
+8596FCDCD85BDAB9EDEE5A57CEEDF7D8FFC0B38D1F23F35A56025DDC8BA58221
+4CBAD469249AF698F88B3132A0F08DC7B007337B680C9E0CF3E5440B37DFE8C4
+9AEAC2702369DFC8CD27783C6CE8F4217C2A536AA4D3E5BBC352BE2CDD01A6B2
+628A48571587D75B1E1BBD6EBFC3134C59FAE8DB8EFA707B43D3EBA7D9183C5C
+6870119F8B0F4C80FD9ED2073D21FF50B841774BC20AAB13B7E83A478F2D9DB1
+F9B65E818E39285BCDB6D08748A8A665B2D50284860A8999BEF98BE5292433CC
+DCC16EFD64DBB7350D5408C621CDED6AC22293A666201A11E909B310492714BB
+F952A4EF7713EFC7017A63899555D360F40D77691187756FD690E1853DD2DCF4
+706E92106FCC71411D49A70AEDF1E3BC6928629AAC98C5002914FB4D818BD0DF
+359CCD59FA104F69E76ED1704A37090340AAD36FEDC22F60DDCFA343856CBA77
+3553E69D68E57589A437A6CFF712A5A5B77500099D1AE96EB4CC354B33828276
+F2264F3155D4DD61B26E19AA9AEB426146DBAF38651053E5EAE46AF5F5F1973E
+91AEA21087764A217B1E957C7F35FB2F904B8BD5FC1D4CD2607D60C5F1E0C780
+12268AC3B7A4D7446696487010057471F40AA31896C6DE2A54F2DA9D4ECDBC04
+87C6AD42BF7E5D940928D79AE4C033417461CA5BCE2189CE8B22EE690EFC3058
+A33A87D0409B34925087CD091B55AA5156B5D49E23EC0368E3F06BE8A2F5BCB0
+06353591162AFA3E5BEF8D7B942444975C89293EDCE4112DB7B3B07A93E4553C
+8610D9DF31C42A62BF096B816BF1E6EDB306FAF7AB4D8D807961392FB22C4F86
+80188E87C658987A62922FC625AE3CF4A4D2C34A38B9F346E5FBC03A18D4F7A8
+08F1DD37AAA08EF4F57EA64B4B2273798781459769B91477249D08F7EC9005E5
+F4D03ECCDA8987494EABD55602A2234943DC1C617EF756440F870DA4B4492C1E
+2D97BA8D3BAB84CF7068EB16D13BA07154D1F65AF8828FC150E294DA02F9F261
+95C7191EAC5BB67EFCCA148B380A42D3AB886A9197C0079E12D9A79FE6FD19AC
+52E47F7EF0AB7CE7E6D8524ADBEA8FB5746CCE8AE08E5E7AAFF1AAB5EB6BBB58
+BE6AD339C572D0B9CB60F17EEA09D678C2C287675D73154A460057914C456336
+CB4C49F34CEB512EAB95AC899D7B774B507859A6D73160C97A5A1FEC0452DB03
+2189B0081F505C6BAE09E9DE0A967642209AD8BFDAE064992A2C14B13F18D804
+8B24FAB2FC59D248C6D982B908FDFF6E6135A30D1F0CCA7F0C2338B3BF4E30B7
+F299551C64CDC751AF70E5CFB610D087E400961DD0EDCEE6CE7F6AD035A43501
+7F8EDC6CA9E68937C3BC9598A1164C54C878B02839FBDFB30634D11992445FC3
+2005C6BE4758530F02C10DAA800CFA681B5C89DE74BE36312504D8F7F6AC051C
+E1ED882DB34E16B8FE0E68B149014BB6E8E6BB46A4EF699D07E116C343549BEC
+484577AC6B2EE3FF223DB92A482534A58D7FC32DE1A5204F51014203021E481D
+F4FC81BB0EDC41DFBF9416178311FA4DC6B27A1A5982211AAABBA90479824FEE
+BABF7D54B8ED9F821BE9EB51B17D6F00284F0663CA6F950CF0F71F72FF52A8A4
+C819D119551A8B29CCFE994396392ABC25BAA1ABE59A48F46683AE927088B156
+ADD866F5CDFAAF3113D089D7C85E5859F27B8DC4C5D867195BC5C8814DFEC5DB
+F19D4E978ACA929567928879289EB56EF6F87873EEBBCBE4C081538F314A503D
+0C44B467BF7DF1433F70E4003E7B7FE30D31721B0ADF552294F3AEAF6C9A4163
+98F433C7064934FB530B35AD9155EF03D074AB51FE5324D8C0FB19279F86AE6C
+8C6B3B5D4AB4CFAC6400D77DDCDBCAF6751D42E294852AAF5F35B78CD823562D
+6A17C97FE4C654C9E122065BA46297F7D142D0E8D87C3604B2E037FB2EE97F52
+90CC0000476C0235F3CD2DC56072D994731C0513A20ED79233548C37269B71E4
+8E07AAABBD5B179C5C3F2FA8A9D8446A8F7217744839EAE2440188FFC83E4168
+467A22AE09E5C7F478ADCEDDDBC1CF422856E5573D30CBD27D95C4B672323894
+D5B24CDDE97C172CA75144E70BEA368A35947E11D1311B45DE5D4C1D3BEF5DD4
+7FD0D033108561B7D3DC69279DD7ADD41A2024062AA5ED79C834DCC1BD67FC27
+503B1B3AF560AAD8F7A25928DD7DB751EC8C146E17EAAFC942F80C2313118CDD
+069FA7073FA66D7782371D3D4804C4AAA13362501DB2BB80F99837A04DF37531
+82CE92EEA0500C8A735DF316A6872E53A5A15F4BAA4D77BCA32DE67243C4871F
+75B38BD86B966CC50A05E7BAD92538EB40128CACBF5E2B298146157269186B09
+51AF6C0F9683B4423D49ACE48AB66C92C6B9C8C8DBEF05911B631E9EE13317E8
+FBB485151A43E15B9B5BCF07AC8B45C2A83664140E70CA62DCB31539217F74C3
+779C8AE4A89B2B8ADCAAFC569580B22876B08A589A37ECA08C8BFC9A9956FDFC
+914BA1149810446645B2132800EECF73E62E6B46F76D950132B8B91CC2309E1B
+86DF0C8DB362171EE6945F7B3B383BD93111D71466023A451D92D2873049D872
+88A8DDC2D7BD0DDCE24918E7772CAB23D9CE5BB9930CAA6262AB6280CF987C7E
+1D37BB623E8C75DCF88EB2184643179D449E7298539CE426CB40D1DAFA83D894
+B657908A112B91C0E426E31325892518C12DD5F849263DA8B6B2C38E47412123
+95174EDCB28BEE5E71772C8921D69D11ACDDE095D43077D02FCF6A00F80A1422
+E72A76924FC2E03DEA3E95A47440C7990156F9B61F975798ECD5D9EB5672C321
+F5D6A82C3B032C8A71E443E19808D80B366E84FBEFACF55316F9F405B529C5D7
+4FA1FBFB1C177AED502F9F054D68CB91DE6F38D05EF38327EBE4A4D710788817
+31C0445AFD7EA20ABF2FBDA07459F115741BF4FAE80E86C1DA16AD5995856F67
+15A54F2879BB03C350A0B6C5ECDAD7BAA8CECDDEC6C3C67C2D25384D8E7B9EB3
+1D79E2C460742138982CEEBD17B33A66CCFF19080C55E0BF551F3127591BCAB8
+918A2E3B71C5E962B170365409C18D0019453B405179418D442351D5CBAD32CC
+CAF251A9F2C4CF3C022BC1A94E21E4B13948F568CE739D1DBEA0F7EBBED6B1E2
+9CD1AFE6B897C9761127F2236D6993269EDC2D5F82436DB6A29FC61A41F2B4CC
+CA221C3A72AB7584D24400671CDA60B2C9892DF4A062BEA11998D025B544A987
+BAA117D73821FFE9F98963FC566AE808AE20CAAE74590B3DD207F35353B3A955
+FFBE9EBF4BDAC587E59837487288B5519B20F4F670314DEA782F6841C154C174
+4E8637736F8CA25642F9FD69A927D3CAB630A9A2D3227FF0ADAE13A9C9B3E4AA
+470CFF413429B3CBDE2628B4A301C4AEEEFABF3A03609C7F9164990AFAA86C04
+ED313ECBFF60CA346FF70B8865CE249E002FD5D87E084DF388082996940F44A1
+CF3F247852BA56D5637DA0A204945533BCBDBA14B925F84A6734B92BCBCF2726
+63ACFD83E27409C5183CD6C0BEAE9A4370CBCC6A3B60E897A2A10ACC9590B7DD
+566E564C86ADF67D4754AAE8B5021D9EB12338ADB313F33A4BAC54E37D32E33A
+B25D55A1BBFA3E1FF9624DF65943F17174168F3236BA41889C5669C3216F7ACA
+6108ACB0A013B9D7B1B7E0041EF68AB5AF9B946FF93660731AFD52BE18F0CE10
+3B2A5565A54C85367A7519E343C0D1CA90ECDEA5EBC9DE866B035FFEEBA5AA77
+C19171BB52B9CAE2313AE910CF60A7C26619584A454909CB0B5D8A2DDDCDAC84
+C3FEFED3EB63AB8603C1ADA3A7DD72A8A021EA222FCCDA3CD2A9C193BC563E5B
+01C3DA1CFC8868FD70382359AA3162320D340D735A86A08EADD2C91CF0BC1176
+13E2F558D269B00092DCE88C14EDCB7AA606B894192330E9CA13D9C379F6D4BF
+688ACAF9F67A3677B20D37F9582F33B2E198934294E52A2A25163FDF224610CC
+2BE91C762DF8E6D8F1E3DECF77A703341F4D58707594246D471693F2DF2608C2
+8329316045535EB92039B793D5316C334A0F24E515988031B97A5FFF84A6E421
+1FAB13F3ABF883222A8596B542EBF54E9DCE327B568BE9F61259C4DE58DBD2DF
+DCFC03E61F0DEF4EF5FB31683247CB7232023DFC1D7D4C4FAF55E151C39FEF8B
+47E9418A0B812141083A67AE2001F137F7BBC1C5B682179C83CE2E4FAE61EA1D
+3E2DA8EF502EF888B7009B1D939B43E9774D50DFF8486F20890332071C3280F5
+71B74506E208839634A81ECF5A229D2B16EF77A39178507E41D2A0E7CCE364DA
+954F895436AD8E34AB6B32B5003F5D14B297D56D2C38B8BF73E85DA1EF9EB934
+479F0419EF5B3A7F62FAFDBE73F8F6F99550EAB6973C075EA14B3055A459EF36
+829B0DF494ADDD3500D4FFA3CCCFB7A33180CF97FADC15213545D7EB212CD298
+41E176122E3D1E1F1DFE2FB6CC5E7E81AA4BFAE2931190270D36854E494C191C
+3996AEC4092C1B220F544989112CBD3BC3406165B5810B30F96DE8440B8B6C0A
+4A50043A59F3B636DFD8684F844F51FA314E48DEADBA1FABE0BFD016F19EAFF2
+8457A2709D6973CE3C2DAB27202B6994A1C8118C566F01E4D83D5A2230B46736
+92A3A3E95A52591D7947341483B2F8CE1F77C3E72A5B7F902B17D5DD45584778
+429AA681FDDA2B2BF423D86A97B82DC6DECDFDCD66BFDF9C35C9FEF9FB191F54
+E8D774D319DEDAF328D2355A892CEB7924FD7621376F7C4AB309D930D7253BFF
+CD5CB24078C275148C516079A8DDEAB46B0EA1E33E9099FAA5385CDB5D0FA0FC
+CCC6146ED741776DE2AD9639A63326A76BC002BD78A1F7F6F3D06B09B50F86CD
+B7722E297692FCD064185E001642D2622F20FA0557D2982D578B2505DF6E1E29
+564E95C4FDBADAC59559140056E02F5DD694DAF94EB5343F1E7004586344B293
+594F260C7116F85754226CF2211478C67B82BB56904BA47A792EE470AAD35BA3
+FA7407299CA089F7320D1B9BA2B36FC1628DD2B5E4AE2E13F722F44946482BCF
+9A6AF99DD54576617B7601D740C0686E3F7333DEECAEE1AC8D7A7CC65F86B1A4
+270CAC14E1F8B40D5825462F18356BA9BCC7930BED4D2DFCCBB41E1272EECD85
+2D1359A3EBD7F97FA23F354F8256EC70B762DE5FDC0C8D5BF2E7D0F3D9FF1DA1
+D79764A2CA9229B7F7F0BE7686A3C54532B07F88F12AD789E75794AAFEF133D1
+C03D0038257CCBE8BB71311387BA7FAD1086AFA09726BBB10C5F8BCB95AEB088
+70DB22CBCA46ED10706DE1C78BABE17BAC35F9C5CD92244D989F09026741774E
+5BC4A64CF89E1B4A8EA7D5890BB11C09BFAFE533F23EA6758FDC2DC5ABA12C00
+16B27AFACC7DCDDEA9F8172C2AD3FC1C131C5693678DA2E476A7DCBFC49972E9
+45CBEE64483D5362086144179843E9662E1930BB18315DA940
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+TeXDict begin 39158278 55380994 1000 8000 8000
+(D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\te)
+@start /Fa 144[553 615 1[307 1[338 307 3[492 39[861 12[553
+48[{ enclmec ReEncodeFont }8 1106.96 /LMRoman10-Regular
+rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 8000dpi
+TeXDict begin
+%%BeginPaperSize: a4
+/setpagedevice where
+{ pop << /PageSize [595 842] >> setpagedevice }
+{ /a4 where { pop a4 } if }
+ifelse
+%%EndPaperSize
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 0 0 a
+SDict begin [/Producer (dvips + Distiller)/Title (Example with noise - Closed Line)/Subject
+(Versuchsauswertung)/Creator (LaTeX with hyperref package)/Author (Thomas Koenig)/Keywords
+() /DOCINFO pdfmark end
+ 0 0 a 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 663 -5569
+a
+SDict begin H.S end
+ 663 -5569 a 663 -5569 a
+SDict begin H.R end
+ 663 -5569 a 663 -5569 a
+SDict begin [/View [/XYZ H.V]/Dest (page.1) cvn /DEST pdfmark end
+ 663
+-5569 a 0 TeXcolorgray Black 0 TeXcolorgray 774 -1318
+a
+tx@Dict begin gsave STV CP T /ps@rot 0 def grestore end
+ 774 -1318 a 774 -1318 a
+tx@Dict begin gsave STV CP T /ps@refangle 0. def grestore end
+ 774 -1318 a 774 -1318 a
+tx@Dict begin gsave STV CP T /ps@rot 0 def grestore end
+ 774
+-1318 a 774 -1318 a
+SDict begin [/PageMode /UseOutlines/Page 1/View [/Fit] /DOCVIEW pdfmark
+end
+ 774 -1318 a 774 -1318 a
+SDict begin [ {Catalog}<<>> /PUT pdfmark end
+ 774 -1318
+a 774 -1318 a
+SDict begin H.S end
+ 774 -1318 a 774 -1318 a
+SDict begin 13.6 H.A end
+ 774 -1318 a 774
+-1318 a
+SDict begin [/View [/XYZ H.V]/Dest (Doc-Start) cvn /DEST pdfmark end
+ 774 -1318 a 6710 6778 a @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 17.78412 0.0 17.78412
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 250.00
+0.07114 mul exch 0.18335 mul exch 0.0 17.78412 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 250.00
+0.07114 mul exch 0.18335 mul exch 183.34961 17.78412 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 35.56824 0.0 35.56824
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 500.00
+0.07114 mul exch 0.18335 mul exch 0.0 35.56824 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 500.00
+0.07114 mul exch 0.18335 mul exch 183.34961 35.56824 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 53.35236 0.0 53.35236
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 750.00
+0.07114 mul exch 0.18335 mul exch 0.0 53.35236 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 750.00
+0.07114 mul exch 0.18335 mul exch 183.34961 53.35236 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 71.13647 0.0 71.13647
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 1000.00
+0.07114 mul exch 0.18335 mul exch 0.0 71.13647 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 1000.00
+0.07114 mul exch 0.18335 mul exch 183.34961 71.13647 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 0.0 0.0 0.0 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.75 SLW 0.5 setgray
+ 1. .setopacityalpha 3.0 0 0 add DotLine grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 0.00 0.07114
+mul exch 0.18335 mul exch 0.0 0.0 /Lineto /lineto load def 0 setlinejoin
+false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def } if () length 0 gt
+{ 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul neg add /arrowlength
+exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1
+sub Atan def ArrowA x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength
+mul add /n n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1
+0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.5 SLW 0 setgray 1. .setopacityalpha 0 setlinejoin
+0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 0.00
+0.07114 mul exch 0.18335 mul exch 183.34961 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { BeginArrow 1. 1. scale 2 setlinecap
+0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow moveto } def /ArrowB
+{ BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0
+0 moveto EndArrow } def /ArrowInside { } def 0.8 SLW 0 setgray
+ /ArrowA { BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L
+stroke 0 0 moveto EndArrow moveto } def /ArrowB { BeginArrow 1.
+1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow
+ } def /ArrowInside { } def [ 0.0 71.13647 0.0 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.8 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { BeginArrow 1. 1. scale 2 setlinecap
+0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow moveto } def /ArrowB
+{ BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0
+0 moveto EndArrow } def /ArrowInside { } def 0.8 SLW 0 setgray
+ /ArrowA { BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L
+stroke 0 0 moveto EndArrow moveto } def /ArrowB { BeginArrow 1.
+1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow
+ } def /ArrowInside { } def [ 183.34961 71.13647 183.34961 0.0
+/Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not {
+n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.8 SLW 0 setgray 1. .setopacityalpha 0 setlinejoin 0 setlinecap
+stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 21.83327 71.13647 21.83327
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 119.08 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 21.83327 0.0 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 119.08 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 21.83327 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 43.66653 71.13647 43.66653
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 238.16 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 43.66653 0.0 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 238.16 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 43.66653 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 65.4998 71.13647 65.4998 0.0
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 357.24 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 65.4998 0.0 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 357.24 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 65.4998 71.13647 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 87.33308 71.13647 87.33308
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 476.32 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 87.33308 0.0 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 476.32 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 87.33308 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 109.16635 71.13647 109.16635
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 595.40 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 109.16635 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 595.40 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 109.16635 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 130.99962 71.13647 130.99962
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 714.48 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 130.99962 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 714.48 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 130.99962 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 152.83289 71.13647 152.83289
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 833.56 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 152.83289 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 833.56 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 152.83289 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 174.66617 71.13647 174.66617
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 952.64 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 174.66617 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 952.64 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 174.66617 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 0.0 71.13647 0.0 0.0 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.75 SLW 0.5 setgray
+ 1. .setopacityalpha 3.0 0 0 add DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0.00 0 -40.000000000000000000 sub 0.07114
+mul exch 0.18335 mul exch 0.0 0.0 /Lineto /lineto load def 0 setlinejoin
+false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def } if () length 0 gt
+{ 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul neg add /arrowlength
+exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1
+sub Atan def ArrowA x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength
+mul add /n n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1
+0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.5 SLW 0 setgray 1. .setopacityalpha 0 setlinejoin
+0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0.00 1000 -40.000000000000000000 add
+0.07114 mul exch 0.18335 mul exch 0.0 71.13647 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { BeginArrow 1. 1. scale 2 setlinecap
+0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow moveto } def /ArrowB
+{ BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0
+0 moveto EndArrow } def /ArrowInside { } def 0.8 SLW 0 setgray
+ /ArrowA { BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L
+stroke 0 0 moveto EndArrow moveto } def /ArrowB { BeginArrow 1.
+1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow
+ } def /ArrowInside { } def [ 183.34961 0.0 0.0 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.8 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial 6710 6778 a
+tx@Dict begin gsave STV CP T /ps@rot 0 0 add def grestore end
+ 6710 6778 a 6710
+6778 a
+tx@Dict begin { 1000.000000000000000000 0.5 mul 0 add 0 0.07114 mul
+exch 0.18335 mul exch } PutCoor PutBegin end
+ 6710 6778 a 6710 6778 a
+tx@Dict begin ps@rot RotBegin end
+ 6710 6778 a 4420 10143
+a Fa(linejoin=0)6710 6778 y
+tx@Dict begin RotEnd end
+ 6710 6778 a 6710 6778 a
+tx@Dict begin PutEnd end
+ 6710
+6778 a @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { BeginArrow 1. 1. scale 2 setlinecap
+0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow moveto } def /ArrowB
+{ BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0
+0 moveto EndArrow } def /ArrowInside { } def 0.8 SLW 0 setgray
+ /ArrowA { BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L
+stroke 0 0 moveto EndArrow moveto } def /ArrowB { BeginArrow 1.
+1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow
+ } def /ArrowInside { } def [ 183.34961 71.13647 0.0 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.8 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.8 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def /D {} def mark 0.00 0.00 0.00 0.00 0.00
+0.00 0.84 0.00 0.84 0.00 1.68 0.00 1.68 0.00 2.52 0.00 2.52 0.00 3.36
+0.00 3.36 0.00 4.20 0.00 4.20 0.00 5.04 0.00 5.04 0.00 5.88 0.00 5.88
+0.00 6.72 0.00 6.72 0.00 7.56 0.00 7.56 0.00 8.40 0.00 8.40 0.00 9.24
+0.00 9.24 0.00 10.08 0.00 10.08 0.00 10.92 0.00 10.92 0.00 11.76 0.00
+11.76 0.00 12.60 0.00 12.60 0.00 13.44 0.00 13.44 0.00 14.28 0.00 14.28
+0.00 15.12 0.00 15.12 0.00 15.96 0.00 15.96 0.00 16.80 0.00 16.80 0.00
+17.64 0.00 17.64 0.00 18.48 0.00 18.48 0.00 19.32 0.00 19.32 0.00 20.16
+0.00 20.16 0.00 21.00 0.00 21.00 0.00 21.84 0.00 21.84 0.00 22.68 0.00
+22.68 0.00 23.52 0.00 23.52 0.00 24.36 0.00 24.36 0.00 25.20 0.00 25.20
+0.00 26.04 0.00 26.04 0.00 26.88 0.00 26.88 0.00 27.72 0.00 27.72 0.00
+28.56 0.00 28.56 0.00 29.40 0.00 29.40 0.00 30.24 0.00 30.24 0.00 31.08
+0.00 31.08 0.00 31.92 0.00 31.92 0.00 32.76 0.00 32.76 0.00 33.60 0.00
+33.60 0.00 34.44 0.00 34.44 0.00 35.28 0.00 35.28 0.00 36.12 0.00 36.12
+0.00 36.96 0.00 36.96 0.00 37.80 0.00 37.80 0.00 38.64 0.00 38.64 0.00
+39.48 0.00 39.48 0.00 40.32 0.00 40.32 0.00 41.16 0.00 41.16 0.00 42.00
+0.00 42.00 0.00 42.84 0.00 42.84 0.00 43.68 0.00 43.68 0.00 44.52 0.00
+44.52 0.00 45.36 0.00 45.36 0.00 46.20 0.00 46.20 0.00 47.04 0.00 47.04
+0.00 47.88 0.00 47.88 0.00 48.72 0.00 48.72 0.00 49.56 0.00 49.56 0.00
+50.40 0.00 50.40 0.00 51.24 0.00 51.24 0.00 52.08 0.00 52.08 0.00 52.92
+0.00 52.92 0.00 53.76 0.00 53.76 0.00 54.60 0.00 54.60 0.00 55.44 0.00
+55.44 0.00 56.28 0.00 56.28 0.00 57.12 0.00 57.12 0.00 57.96 0.00 57.96
+0.00 58.80 0.00 58.80 0.00 59.64 0.00 59.64 0.00 60.48 0.00 60.48 0.00
+61.32 0.00 61.32 0.00 62.16 0.00 62.16 0.00 63.00 0.00 63.00 0.00 63.84
+0.00 63.84 0.00 64.68 0.00 64.68 0.00 65.52 0.00 65.52 0.00 66.36 0.00
+66.36 0.00 67.20 0.00 67.20 0.00 68.04 0.00 68.04 0.00 68.88 0.00 68.88
+0.00 69.72 0.00 69.72 0.00 70.56 0.00 70.56 0.00 71.40 0.00 71.40 0.00
+72.24 0.00 72.24 0.00 73.08 0.00 73.08 0.00 73.92 0.00 73.92 0.00 74.76
+0.00 74.76 0.00 75.60 0.00 75.60 0.00 76.44 0.00 76.44 0.00 77.28 0.00
+77.28 0.00 78.12 0.00 78.12 0.00 78.96 0.00 78.96 0.00 79.80 0.00 79.80
+0.00 80.64 0.00 80.64 0.00 81.48 0.00 81.48 0.00 82.32 0.00 82.32 0.00
+83.16 0.00 83.16 0.00 84.00 0.00 84.00 0.00 84.84 0.00 84.84 0.00 85.68
+0.00 85.68 0.00 86.52 0.00 86.52 0.00 87.36 0.00 87.36 0.00 88.20 0.00
+88.20 0.00 89.04 0.00 89.04 0.00 89.88 0.00 89.88 0.00 90.72 0.00 90.72
+0.00 91.56 0.00 91.56 0.00 92.40 0.00 92.40 0.00 93.24 0.00 93.24 0.00
+94.08 0.00 94.08 0.00 94.92 0.00 94.92 0.00 95.76 0.00 95.76 0.00 96.60
+0.00 96.60 0.00 97.44 0.00 97.44 0.00 98.28 0.00 98.28 0.00 99.12 0.00
+99.12 0.00 99.96 0.00 99.96 0.00 100.80 0.00 100.80 0.00 101.64 0.00
+101.64 0.00 102.48 0.00 102.48 0.00 103.32 0.00 103.32 0.00 104.16
+0.00 104.16 0.00 105.00 0.00 105.00 0.00 105.84 0.00 105.84 0.00 106.68
+0.00 106.68 0.00 107.52 0.00 107.52 0.00 108.36 0.00 108.36 0.00 109.20
+0.00 109.20 0.00 110.04 0.00 110.04 0.00 110.88 0.00 110.88 0.00 111.72
+0.00 111.72 0.00 112.56 0.00 112.56 0.00 113.40 0.00 113.40 0.00 114.24
+0.00 114.24 0.00 115.08 0.00 115.08 0.00 115.92 0.00 115.92 0.00 116.76
+0.00 116.76 0.00 117.60 0.00 117.60 0.00 118.44 0.00 118.44 0.00 119.28
+0.00 119.28 0.00 120.12 0.00 120.12 0.00 120.96 0.00 120.96 0.00 121.80
+0.00 121.80 0.00 122.64 0.00 122.64 0.00 123.48 0.00 123.48 0.00 124.32
+0.00 124.32 0.00 125.16 0.00 125.16 0.00 126.00 0.00 126.00 0.00 126.84
+0.00 126.84 0.00 127.68 0.00 127.68 0.00 128.52 0.00 128.52 0.00 129.36
+0.00 129.36 0.00 130.20 0.00 130.20 0.00 131.04 0.00 131.04 0.00 131.88
+0.00 131.88 0.00 132.72 0.00 132.72 0.00 133.56 0.00 133.56 0.00 134.40
+0.00 134.91 6.25 135.32 6.25 136.02 -6.21 136.25 -6.33 136.52 -5.00
+137.00 -6.10 137.06 -4.71 138.03 -6.40 138.08 -4.78 138.71 -6.25 139.42
+0.55 139.44 0.00 140.26 5.89 140.30 6.49 141.10 4.85 141.71 4.88 141.72
+6.25 142.11 6.25 142.80 -5.59 143.10 -6.48 143.11 -5.00 143.68 -5.65
+144.36 0.44 144.48 0.00 144.60 0.34 145.32 0.00 145.32 0.00 146.16
+0.00 146.16 0.00 147.00 0.00 147.00 0.00 147.84 0.00 147.84 0.00 148.68
+0.00 148.68 0.00 149.52 0.00 149.52 0.00 150.36 0.00 150.36 0.00 151.20
+0.00 151.20 0.00 152.04 0.00 152.04 0.00 152.88 0.00 152.88 0.00 153.72
+0.00 153.72 0.00 154.56 0.00 154.56 0.00 155.40 0.00 155.40 0.00 156.24
+0.00 156.24 0.00 157.08 0.00 157.08 0.00 157.92 0.00 157.92 0.00 158.76
+0.00 158.76 0.00 159.60 0.00 159.60 0.00 160.44 0.00 160.44 0.00 161.28
+0.00 161.28 0.00 162.12 0.00 162.12 0.00 162.96 0.00 162.96 0.00 163.80
+0.00 163.80 0.00 164.64 0.00 164.64 0.00 165.48 0.00 165.48 0.00 166.32
+0.00 166.32 0.00 167.16 0.00 167.16 0.00 168.00 0.00 168.00 0.00 168.84
+0.00 168.84 0.00 169.68 0.00 169.68 0.00 170.52 0.00 170.52 0.00 171.36
+0.00 171.36 0.00 172.20 0.00 172.20 0.00 173.04 0.00 173.04 0.00 173.88
+0.00 173.88 0.00 174.72 0.00 174.72 0.00 175.56 0.00 175.56 0.00 176.40
+0.00 176.40 0.00 177.24 0.00 177.24 0.00 178.08 0.00 178.08 0.00 178.92
+0.00 178.92 0.00 179.76 0.00 179.76 0.00 180.60 0.00 180.60 0.00 181.44
+0.00 181.44 0.00 182.28 0.00 182.28 0.00 183.12 0.00 183.12 0.00 183.96
+0.00 183.96 0.00 184.80 0.00 184.80 0.00 185.64 0.00 185.64 0.00 186.48
+0.00 186.48 0.00 187.32 0.00 187.32 0.00 188.16 0.00 188.16 0.00 189.00
+0.00 189.00 0.00 189.84 0.00 189.84 0.00 190.68 0.00 190.68 0.00 191.52
+0.00 191.52 0.00 192.36 0.00 192.36 0.00 193.20 0.00 193.20 0.00 194.04
+0.00 194.04 0.00 194.88 0.00 194.88 0.00 195.72 0.00 195.72 0.00 196.56
+0.00 196.56 0.00 197.40 0.00 197.40 0.00 198.24 0.00 198.24 0.00 199.08
+0.00 199.08 0.00 199.92 0.00 199.92 0.00 200.76 0.00 200.76 0.00 201.60
+0.00 201.60 0.00 202.44 0.00 202.44 0.00 203.28 0.00 203.28 0.00 204.12
+0.00 204.12 0.00 204.96 0.00 204.96 0.00 205.80 0.00 205.80 0.00 206.64
+0.00 206.64 0.00 207.48 0.00 207.48 0.00 208.32 0.00 208.32 0.00 209.16
+0.00 209.16 0.00 210.00 0.00 210.00 0.00 210.84 0.00 210.84 0.00 211.68
+0.00 211.68 0.00 212.52 0.00 212.52 0.00 213.36 0.00 213.36 0.00 214.20
+0.00 214.20 0.00 215.04 0.00 215.04 0.00 215.88 0.00 215.88 0.00 216.72
+0.00 216.72 0.00 217.56 0.00 217.56 0.00 218.40 0.00 218.40 0.00 219.24
+0.00 219.24 0.00 220.08 0.00 220.08 0.00 220.92 0.00 220.92 0.00 221.76
+0.00 221.76 0.00 222.60 0.00 222.60 0.00 223.44 0.00 223.44 0.00 224.28
+0.00 224.28 0.00 225.12 0.00 225.12 0.00 225.96 0.00 225.96 0.00 226.80
+0.00 226.80 0.00 227.64 0.00 227.64 0.00 228.48 0.00 228.48 0.00 229.32
+0.00 229.32 0.00 230.16 0.00 230.16 0.00 231.00 0.00 231.00 0.00 231.84
+0.00 231.84 0.00 232.68 0.00 232.68 0.00 233.52 0.00 233.52 0.00 234.36
+0.00 234.36 0.00 235.20 0.00 235.20 0.00 236.04 0.00 236.04 0.00 236.88
+0.00 236.88 0.00 237.72 0.00 237.72 0.00 238.56 0.00 238.56 0.00 239.40
+0.00 239.40 0.00 240.24 0.00 240.24 0.00 241.08 0.00 241.08 0.00 241.92
+0.00 241.92 0.00 242.76 0.00 242.76 0.00 243.60 0.00 243.60 0.00 244.44
+0.00 244.44 0.00 245.28 0.00 245.28 0.00 246.12 0.00 246.12 0.00 246.96
+0.00 246.96 0.00 247.80 0.00 247.80 0.00 248.64 0.00 248.64 0.00 249.48
+0.00 249.48 0.00 250.32 0.00 250.32 0.00 251.16 0.00 251.16 0.00 252.00
+0.00 252.00 0.00 252.84 0.00 252.84 0.00 253.68 0.00 253.68 0.00 254.52
+0.00 254.52 0.00 255.36 0.00 255.36 0.00 256.20 0.00 256.20 0.00 257.04
+0.00 257.04 0.00 257.88 0.00 257.88 0.00 258.72 0.00 258.72 0.00 259.56
+0.00 259.56 0.00 260.40 0.00 260.40 0.00 261.24 0.00 261.24 0.00 262.08
+0.00 262.08 0.00 262.92 0.00 262.92 0.00 263.76 0.00 263.76 0.00 264.60
+0.00 264.60 0.00 265.44 0.00 265.44 0.00 266.28 0.00 266.28 0.00 267.12
+0.00 267.12 0.00 267.96 0.00 267.96 0.00 268.80 0.00 268.80 0.00 269.64
+0.00 269.64 0.00 270.48 0.00 270.48 0.00 271.32 0.00 271.32 0.00 272.16
+0.00 272.16 0.00 273.00 0.00 273.00 0.00 273.84 0.00 273.84 0.00 274.68
+0.00 274.68 0.00 275.52 0.00 275.52 0.00 276.36 0.00 276.36 0.00 277.20
+0.00 277.20 0.00 278.04 0.00 278.04 0.00 278.88 0.00 278.88 0.00 279.72
+0.00 279.72 0.00 280.56 0.00 280.56 0.00 281.40 0.00 281.40 0.00 282.24
+0.00 282.24 0.00 283.08 0.00 283.08 0.00 283.92 0.00 283.92 0.00 284.76
+0.00 284.76 0.00 285.60 0.00 285.60 0.00 286.44 0.00 286.44 0.00 287.28
+0.00 287.28 0.00 288.12 0.00 288.12 0.00 288.96 0.00 288.96 0.00 289.80
+0.00 289.80 0.00 290.64 0.00 290.64 0.00 291.48 0.00 291.48 0.00 292.32
+0.00 292.32 0.00 293.16 0.00 293.16 0.00 294.00 0.00 294.00 0.00 294.84
+0.00 294.84 0.00 295.68 0.00 295.68 0.00 296.52 0.00 296.52 0.00 297.36
+0.00 297.36 0.00 298.20 0.00 298.20 0.00 299.04 0.00 299.04 0.00 299.88
+0.00 299.88 0.00 300.72 0.00 300.72 0.00 301.56 0.00 301.56 0.00 302.40
+0.00 302.40 0.00 303.24 0.00 303.24 0.00 304.08 0.00 304.08 0.00 304.92
+0.00 304.92 0.00 305.76 0.00 305.76 0.00 306.60 0.00 306.60 0.00 307.44
+0.00 307.44 0.00 308.28 0.00 308.28 0.00 309.12 0.00 309.12 0.00 309.96
+0.00 309.96 0.00 310.80 0.00 310.80 0.00 311.64 0.00 311.64 0.00 312.48
+0.00 312.48 0.00 313.32 0.00 313.32 0.00 314.16 0.00 314.16 0.00 315.00
+0.00 315.00 0.00 315.84 0.00 315.84 0.00 316.68 0.00 316.68 0.00 317.52
+0.00 317.52 0.00 318.36 0.00 318.36 0.00 319.20 0.00 319.20 0.00 320.04
+0.00 320.04 0.00 320.88 0.00 320.88 0.00 321.72 0.00 321.72 0.00 322.56
+0.00 322.56 0.00 323.40 0.00 323.40 0.00 324.24 0.00 324.24 0.00 325.08
+0.00 325.08 0.00 325.92 0.00 325.92 0.00 326.76 0.00 326.76 0.00 327.60
+0.00 327.60 0.00 328.44 0.00 328.44 0.00 329.28 0.00 329.28 0.00 330.12
+0.00 330.12 0.00 330.96 0.00 330.96 0.00 331.80 0.00 331.80 0.00 332.64
+0.00 332.64 0.00 333.48 0.00 333.48 0.00 334.32 0.00 334.32 0.00 335.16
+0.00 335.16 0.00 336.00 0.00 336.00 0.00 336.84 0.00 336.84 0.00 337.68
+0.00 337.68 0.00 338.52 0.00 338.52 0.00 339.36 0.00 339.36 0.00 340.20
+0.00 340.20 0.00 341.04 0.00 341.04 0.00 341.88 0.00 341.88 0.00 342.72
+0.00 342.72 0.00 343.56 0.00 343.56 0.00 344.40 0.00 344.40 0.00 345.24
+0.00 345.24 0.00 346.08 0.00 346.08 0.00 346.92 0.00 346.92 0.00 347.76
+0.00 347.76 0.00 348.60 0.00 348.60 0.00 349.44 0.00 349.44 0.00 350.28
+0.00 350.28 0.00 351.12 0.00 351.12 0.00 351.96 0.00 351.96 0.00 352.80
+0.00 352.80 0.00 353.64 0.00 353.64 0.00 354.48 0.00 354.48 0.00 355.32
+0.00 355.32 0.00 356.16 0.00 356.16 0.00 357.00 0.00 357.00 0.00 357.84
+0.00 357.84 0.00 358.68 0.00 358.68 0.00 359.52 0.00 359.52 0.00 360.36
+0.00 360.36 0.00 361.20 0.00 361.20 0.00 362.04 0.00 362.04 0.00 362.88
+0.00 362.88 0.00 363.72 0.00 363.72 0.00 364.56 0.00 364.56 0.00 365.40
+0.00 365.40 0.00 366.24 0.00 366.24 0.00 367.08 0.00 367.08 0.00 367.92
+0.00 367.92 0.00 368.76 0.00 368.76 0.00 369.60 0.00 369.60 0.00 370.44
+0.00 370.44 0.00 371.28 0.00 371.28 0.00 372.12 0.00 372.12 0.00 372.96
+0.00 372.96 0.00 373.80 0.00 373.80 0.00 374.64 0.00 374.64 0.00 375.48
+0.00 375.48 0.00 376.32 0.00 376.32 0.00 377.16 0.00 377.16 0.00 378.00
+0.00 378.00 0.00 378.84 0.00 378.84 0.00 379.68 0.00 379.68 0.00 380.52
+0.00 380.52 0.00 381.36 0.00 381.36 0.00 382.20 0.00 382.20 0.00 383.04
+0.00 383.04 0.00 383.88 0.00 383.88 0.00 384.72 0.00 384.72 0.00 385.56
+0.00 385.56 0.00 386.40 0.00 386.40 0.00 387.24 0.00 387.24 0.00 388.08
+0.00 388.08 0.00 388.92 0.00 388.92 0.00 389.76 0.00 389.76 0.00 390.60
+0.00 390.60 0.00 391.44 0.00 391.44 0.00 392.28 0.00 392.28 0.00 393.12
+0.00 393.12 0.00 393.96 0.00 393.96 0.00 394.80 0.00 394.80 0.00 395.64
+0.00 396.36 6.46 396.50 6.25 397.10 5.00 397.42 6.25 397.46 5.28 398.65
+6.25 398.90 4.68 399.25 6.25 399.39 4.71 399.90 6.25 400.46 4.70 401.10
+4.77 401.31 6.25 401.70 6.25 402.34 4.87 402.39 4.70 402.91 6.25 403.36
+4.76 403.38 6.25 404.37 4.65 404.48 6.25 405.42 4.89 405.47 6.25 406.38
+6.25 406.47 4.67 407.20 5.62 407.37 4.56 407.47 4.55 408.11 6.25 408.38
+4.86 408.48 6.25 409.36 4.91 409.44 6.25 410.37 4.70 410.70 6.25 411.39
+6.19 411.44 4.72 411.70 4.81 411.71 6.25 412.50 4.68 412.70 6.25 413.40
+4.85 413.91 6.25 414.41 4.89 414.48 6.25 415.05 6.25 415.70 4.86 416.38
+6.12 416.47 4.67 417.37 4.84 417.43 6.40 417.49 6.25 418.10 4.77 418.70
+4.77 418.72 6.25 419.31 6.25 419.38 4.77 420.10 6.25 420.55 4.74 421.38
+6.72 421.46 4.68 422.45 6.17 422.50 4.78 422.91 6.25 423.18 5.39 423.50
+4.59 424.10 6.10 424.41 5.98 424.46 4.70 425.41 6.42 425.51 5.33 425.90
+5.00 426.44 6.35 427.40 4.86 427.44 6.36 428.28 5.62 428.40 4.89 428.70
+4.78 429.04 5.62 429.40 4.74 429.42 6.25 430.30 5.00 430.47 6.25 431.15
+4.76 431.75 6.25 432.31 6.25 432.51 4.77 432.90 5.00 433.04 5.62 433.50
+6.13 433.51 4.70 434.44 4.81 434.51 6.25 435.42 6.54 435.50 4.87 436.10
+6.25 436.44 4.67 437.30 6.25 437.45 4.68 438.42 5.19 438.46 6.63 438.48
+4.84 438.52 6.25 439.52 6.12 439.70 4.79 440.49 6.15 440.51 4.69 441.40
+4.89 441.48 6.25 442.11 5.00 442.43 6.52 442.75 4.70 443.10 6.25 443.82
+5.62 444.30 4.70 444.50 4.69 444.71 6.25 445.44 5.00 445.52 6.57 446.15
+6.25 446.52 4.70 447.43 4.67 447.48 6.52 448.43 4.68 448.51 6.42 448.91
+6.25 449.11 4.66 449.49 5.20 449.55 6.25 450.56 5.00 450.71 6.25 451.65
+5.00 451.71 6.25 452.45 4.68 452.53 5.81 453.44 4.72 453.52 6.51 454.10
+5.00 454.35 6.25 454.46 6.25 454.53 4.89 455.30 6.25 455.43 4.79 456.43
+4.71 456.55 6.11 457.44 4.91 457.54 6.70 457.85 6.25 458.49 4.67 458.71
+6.25 459.44 4.87 459.48 6.15 459.50 4.68 460.46 6.10 460.51 4.84 461.49
+4.70 461.52 6.25 462.45 6.41 462.49 4.88 462.91 6.25 463.43 4.71 463.92
+6.25 464.48 4.78 464.52 4.90 465.11 6.25 465.44 6.18 465.57 5.00 466.53
+4.69 466.90 6.12 467.15 6.25 467.57 4.75 468.11 5.00 468.47 6.25 469.31
+6.25 469.55 4.76 469.57 4.66 469.70 5.61 470.47 4.68 470.55 5.88 471.40
+6.25 471.46 4.67 472.47 4.67 472.55 6.25 473.10 4.88 473.20 6.16 474.31
+6.25 474.53 4.84 475.10 6.12 475.11 5.00 475.48 4.68 475.70 6.17 476.31
+5.00 476.60 6.25 477.20 6.25 477.57 4.77 478.11 6.25 478.75 4.77 479.58
+4.88 479.60 6.25 479.71 6.25 480.10 4.87 480.63 4.74 481.10 6.09 481.49
+6.25 481.58 4.87 482.48 4.89 482.57 6.07 483.33 5.37 483.50 6.53 483.95
+4.87 484.54 6.82 484.90 5.00 485.49 6.13 485.58 4.70 486.30 6.25 486.58
+4.89 486.95 6.25 487.55 6.25 487.58 5.00 488.53 6.74 488.59 4.71 489.15
+6.25 489.52 4.89 490.00 5.00 490.56 6.25 490.56 6.25 490.58 5.34 491.54
+4.65 491.74 5.60 492.50 6.12 492.52 4.67 493.53 4.67 493.71 6.25 494.31
+6.25 494.51 4.67 495.51 6.15 495.55 4.68 495.70 4.90 496.11 6.25 496.71
+6.25 496.75 4.70 497.61 6.25 498.10 4.71 498.48 4.69 498.61 6.25 499.10
+6.25 499.45 4.68 500.52 6.38 500.61 4.75 500.70 4.78 500.71 6.25 501.51
+6.42 501.58 4.76 502.55 6.05 502.80 4.65 503.54 4.84 503.55 6.25 504.10
+6.25 504.62 5.35 505.54 5.92 505.57 4.68 505.71 5.00 506.52 6.60 506.52
+6.60 507.31 4.77 507.55 6.25 507.70 4.78 508.60 4.70 508.63 6.25 509.56
+4.69 509.62 6.25 510.52 6.43 510.63 4.69 511.31 6.25 511.53 5.25 511.56
+6.08 511.61 4.69 512.52 6.62 512.56 4.77 513.35 6.25 513.53 5.27 514.51
+5.32 514.55 6.25 515.52 4.67 515.59 5.84 516.11 6.25 516.58 5.28 516.71
+6.25 517.30 4.90 517.55 4.71 517.64 6.25 518.30 5.00 518.58 6.25 519.56
+6.25 519.59 4.71 520.57 4.68 520.60 6.25 521.30 4.87 521.64 6.49 521.64
+6.49 521.90 4.79 522.56 6.25 522.61 4.69 523.55 6.25 523.59 4.72 524.51
+6.25 524.64 5.00 525.25 6.25 525.57 4.72 525.91 6.25 526.10 4.67 526.75
+5.00 527.10 6.25 527.57 4.72 527.71 6.25 528.55 6.25 528.63 4.70 529.54
+6.16 529.88 5.40 530.12 5.00 530.55 6.50 531.05 6.25 531.30 4.88 531.91
+6.25 532.50 4.76 532.63 6.14 533.30 4.67 533.60 4.70 533.70 6.25 534.31
+5.00 534.70 6.25 535.51 6.25 535.64 4.73 536.57 4.66 536.66 6.41 537.30
+4.88 537.58 6.41 537.65 4.74 537.71 6.25 538.50 4.91 538.66 6.13 539.51
+6.25 539.61 4.71 540.50 4.88 540.68 6.25 541.55 4.71 541.61 6.52 542.10
+6.25 542.57 5.00 542.80 4.78 543.05 6.25 543.57 4.65 544.00 6.25 544.55
+6.25 544.67 4.69 545.61 4.86 545.67 6.25 546.65 4.66 546.76 5.60 547.25
+4.66 547.58 6.07 548.25 4.68 548.30 5.60 548.66 4.68 548.68 6.25 549.65
+6.25 549.70 4.79 550.34 5.62 550.58 4.76 551.67 4.66 551.68 6.25 552.11
+6.25 552.43 5.38 553.11 6.25 553.53 0.00 553.56 0.44 553.59 -1.15 554.40
+0.00 554.42 0.03 555.24 0.00 555.24 0.00 556.08 0.00 556.92 5.05 557.60
+6.12 557.65 4.79 557.90 6.25 558.10 4.89 558.69 6.18 558.71 5.00 559.63
+6.25 559.66 5.00 560.30 6.25 560.59 4.74 561.51 6.25 561.70 4.73 562.60
+4.75 562.63 6.06 563.00 5.36 563.60 5.85 563.75 5.00 564.35 6.19 564.50
+6.25 564.76 4.71 565.51 6.25 565.63 5.00 566.61 6.78 566.66 5.00 567.10
+4.88 567.66 6.25 567.95 6.25 568.30 4.88 569.10 4.77 569.51 6.25 569.60
+6.13 570.35 4.85 570.63 6.25 570.71 5.00 571.30 4.64 571.31 6.25 572.30
+4.66 572.62 6.06 572.90 5.00 573.60 6.13 573.78 5.36 574.11 6.25 574.66
+4.76 574.72 6.25 575.51 6.25 575.66 4.71 576.30 4.77 576.80 6.25 577.31
+5.00 577.72 6.25 578.50 4.91 578.72 6.55 578.90 6.25 579.50 5.00 579.72
+5.16 579.73 6.25 580.62 6.72 581.10 4.71 581.67 4.77 581.68 6.25 582.61
+6.17 582.71 4.84 583.63 6.15 583.66 4.75 583.81 5.61 583.90 4.85 584.67
+4.67 584.90 6.25 585.50 6.25 585.95 4.68 586.63 4.69 587.15 6.25 587.30
+4.67 587.68 6.39 588.60 6.25 588.73 4.78 588.90 6.15 589.50 4.76 589.74
+6.25 590.30 5.00 590.73 4.55 591.25 6.25 591.50 6.25 591.69 4.68 592.31
+6.25 592.64 5.18 593.20 6.25 593.64 4.79 594.05 6.25 594.64 4.74 595.25
+4.67 595.31 6.12 595.72 4.76 596.30 11.90 597.10 10.69 597.20 12.00
+597.69 12.00 597.73 10.69 598.15 10.00 598.50 11.97 599.31 10.00 599.69
+11.91 600.10 10.84 600.13 12.22 600.83 10.31 600.86 11.72 601.74 10.56
+601.80 11.25 602.78 11.98 602.94 10.00 603.72 12.08 603.94 10.00 604.54
+10.00 604.70 11.96 605.14 11.25 605.24 10.83 605.69 11.92 605.80 10.00
+606.70 11.72 607.03 10.00 607.54 10.00 608.14 11.25 608.23 12.15 608.72
+10.00 609.53 12.09 609.78 10.86 610.13 10.63 610.33 11.96 610.76 12.05
+610.80 10.00 611.79 12.22 611.84 10.00 612.71 10.53 612.80 11.93 613.71
+12.10 613.80 10.68 614.13 12.27 614.75 10.43 615.14 11.25 615.33 10.76
+616.33 12.19 616.43 10.00 616.80 11.95 617.43 10.56 617.45 10.54 618.24
+24.13 618.28 23.96 619.01 27.62 619.51 27.31 619.76 27.81 620.56 27.81
+620.78 26.25 620.80 26.25 620.85 27.80 621.74 27.78 622.00 27.32 622.74
+26.36 623.08 28.75 623.32 27.79 623.71 26.31 624.18 27.34 624.98 27.82
+625.18 27.83 625.45 27.35 625.95 27.74 626.28 27.30 626.75 26.34 627.34
+27.82 627.54 28.75 627.72 26.38 628.88 26.25 629.05 27.78 629.78 28.84
+629.93 27.32 630.55 27.75 630.68 27.27 631.13 26.27 631.51 27.80 631.94
+28.75 632.54 26.25 632.89 27.29 633.33 28.88 633.76 26.45 633.94 27.85
+634.76 26.33 634.85 27.74 635.68 27.82 635.84 26.35 636.08 27.84 636.46
+27.34 637.04 27.74 637.19 27.32 637.70 27.34 638.31 27.84 638.50 27.78
+638.65 27.33 639.45 27.79 639.83 26.34 640.22 27.39 640.68 27.83 641.45
+27.31 641.66 27.80 642.08 27.80 642.18 27.32 642.76 27.93 642.86 26.25
+643.75 27.32 644.24 27.77 644.38 27.30 644.74 27.83 645.80 28.80 645.84
+26.47 646.13 26.47 646.76 27.79 647.26 27.83 647.28 27.37 647.98 26.25
+648.34 28.75 648.93 28.91 649.28 27.35 649.55 27.83 649.56 27.32 650.31
+27.31 650.81 28.91 651.19 27.36 651.86 44.65 651.88 44.80 652.48 61.92
+652.81 59.86 653.44 61.53 653.93 59.26 654.33 62.50 654.46 61.81 654.48
+59.63 655.36 61.30 655.91 59.75 656.48 61.37 656.85 59.79 657.16 59.74
+657.18 61.45 658.29 59.43 658.30 61.82 658.78 59.69 659.23 61.36 659.78
+61.67 659.86 59.89 660.54 61.62 660.86 59.75 661.48 61.36 661.83 59.61
+662.53 61.57 662.76 59.69 662.86 61.27 662.88 60.00 663.78 61.25 663.84
+60.00 664.75 59.88 665.21 61.25 665.54 59.97 665.56 61.61 666.83 59.81
+666.87 61.69 667.13 60.00 667.77 61.29 668.09 59.87 668.10 61.34 668.68
+61.33 669.08 59.67 669.58 61.33 669.73 59.99 670.73 61.18 670.78 59.91
+671.58 59.43 671.59 61.83 672.46 59.94 672.85 71.25 672.88 70.88 673.71
+84.94 673.72 84.94 674.18 95.00 674.79 94.60 674.82 93.24 675.91 93.98
+675.94 92.57 676.53 94.05 676.80 92.50 677.53 93.30 677.80 94.08 677.94
+92.50 678.41 94.15 678.80 93.38 679.08 94.05 679.73 94.08 679.85 93.29
+680.74 92.50 681.03 94.03 681.43 92.50 681.93 94.54 682.30 94.01 682.53
+93.24 682.96 94.06 683.24 93.38 683.86 92.50 684.26 94.02 684.70 94.01
+685.15 93.35 685.81 93.07 685.85 94.39 686.68 93.99 687.05 93.35 687.85
+94.65 687.91 92.49 688.33 93.08 688.58 94.08 688.90 92.40 689.21 94.09
+689.88 94.12 690.29 93.30 690.79 95.00 690.90 93.23 691.74 93.95 692.19
+79.83 692.20 79.83 693.03 42.57 693.04 42.57 693.87 5.81 693.88 5.81
+694.19 -0.79 694.72 0.00 695.55 -5.67 695.73 -6.41 695.88 -4.74 696.83
+-6.32 697.13 -4.63 697.83 -6.61 697.86 -4.90 698.74 -6.25 698.91 -4.63
+698.92 -4.63 699.74 -6.25 700.34 -6.25 700.58 -4.63 700.92 -6.70 700.96
+-5.30 701.48 -5.00 701.88 -6.25 702.43 -6.25 702.92 -4.87 703.55 -5.33
+703.81 -6.13 704.03 -6.25 704.54 -5.00 704.84 -6.11 704.84 -4.83 705.86
+-4.82 706.14 -6.25 706.73 -4.88 706.83 -6.10 707.34 -6.25 707.94 -5.00
+708.88 -4.85 708.93 -6.16 709.14 -6.25 709.73 -4.62 709.95 -4.82 710.33
+-6.10 710.68 -6.25 710.94 -4.43 711.85 -4.76 711.92 -6.03 712.88 -4.64
+712.93 -6.18 713.48 -5.64 713.83 -4.62 714.53 -6.25 714.85 -4.76 714.90
+-6.25 715.53 -4.89 715.88 -4.85 715.92 -6.08 716.83 -4.58 716.95 -6.25
+717.86 -6.11 717.91 -4.63 718.54 -6.25 718.90 -4.60 719.54 -6.25 719.86
+-5.00 719.92 -6.25 720.38 -4.60 720.96 -4.89 721.34 -6.25 721.86 -6.27
+721.95 -5.25 722.73 -6.25 722.91 -4.87 723.74 -6.25 723.91 -4.87 724.86
+-4.66 724.90 -6.12 725.54 -4.62 725.54 -6.25 725.88 -4.90 726.13 -6.25
+726.86 -6.61 726.90 -4.62 727.86 -6.15 727.87 -4.66 728.68 -6.25 728.87
+-4.84 729.53 -4.60 729.88 -5.98 730.13 -5.00 730.48 -6.25 730.88 -6.15
+730.92 -4.63 731.74 -6.25 731.94 -4.61 732.53 -6.25 733.03 -5.00 733.53
+-4.86 733.94 -6.62 734.88 -6.25 734.93 -4.66 735.20 -5.32 735.63 -11.37
+736.28 -11.89 736.53 -10.70 736.88 -12.21 736.99 -10.00 737.94 -10.74
+737.94 -11.79 738.90 -10.00 739.00 -11.25 739.94 -12.13 739.99 -10.00
+740.34 -11.25 740.88 -10.53 740.92 -10.70 741.53 -12.29 741.89 -10.00
+742.14 -11.25 742.74 -10.00 742.98 -11.25 743.91 -10.00 743.97 -11.85
+744.54 -11.25 744.96 -10.57 745.48 -10.00 745.73 -11.92 745.98 -11.93
+746.74 -10.81 746.94 -10.39 746.98 -12.15 747.88 -10.68 747.94 -11.53
+748.94 -12.24 749.14 -10.00 749.74 -10.00 750.00 -11.61 750.34 -10.00
+750.95 -11.25 751.00 -10.73 751.54 -11.25 751.88 -11.85 752.01 -10.00
+752.74 -11.25 752.91 -10.00 753.91 -12.04 754.01 -10.00 755.01 -12.17
+755.13 -10.58 755.20 -11.06 756.02 -33.57 756.04 -32.56 756.50 -44.73
+756.96 -44.85 757.33 -43.10 757.72 -44.11 758.28 -32.30 759.03 -33.55
+759.14 -32.36 759.90 -33.60 759.98 -32.08 760.94 -33.76 761.01 -32.30
+761.34 -33.75 761.69 -32.84 762.54 -32.43 762.73 -33.83 762.96 -32.32
+763.01 -33.82 763.73 -32.39 764.34 -33.75 764.93 -32.18 764.97 -33.75
+765.53 -32.16 765.54 -33.75 766.13 -33.75 766.73 -32.20 767.13 -33.75
+767.73 -32.07 768.03 -33.89 768.14 -32.79 768.96 -32.75 769.03 -33.75
+769.54 -32.50 769.92 -33.83 770.94 -32.20 771.02 -33.56 771.33 -32.36
+771.99 -41.61 772.00 -41.61 772.78 -55.71 772.94 -54.49 772.96 -55.61
+774.00 -56.25 774.13 -54.31 775.08 -54.86 775.14 -55.49 775.38 -55.17
+775.94 -53.97 776.31 -55.30 776.81 -54.97 777.19 -54.94 777.74 -56.25
+778.34 -56.25 778.49 -54.98 779.44 -54.90 779.51 -55.26 779.73 -55.40
+779.95 -54.19 780.62 -54.85 780.73 -56.25 781.50 -54.83 781.95 -55.48
+782.15 -54.93 782.73 -55.38 782.95 -54.35 783.01 -56.25 783.94 -55.52
+783.97 -54.05 784.95 -54.08 785.00 -55.62 785.98 -56.25 786.00 -54.84
+786.35 -54.95 786.63 -55.24 787.16 -55.35 787.89 -53.85 788.00 -53.75
+788.79 -74.77 788.80 -74.77 788.93 -77.91 789.96 -78.18 790.13 -76.25
+790.57 -78.01 791.00 -76.25 791.73 -76.25 791.95 -77.74 792.53 -77.83
+792.88 -76.25 793.06 -78.25 793.33 -76.25 794.43 -76.59 794.53 -78.78
+795.06 -76.54 795.13 -77.88 795.68 -77.50 796.07 -76.25 796.96 -78.28
+797.13 -76.25 797.48 -76.77 797.73 -78.14 798.13 -77.78 798.83 -76.80
+798.94 -76.62 799.33 -78.48 799.81 -76.82 800.07 -78.46 800.94 -76.25
+801.07 -77.89 801.73 -78.11 802.18 -76.65 802.98 -76.25 803.04 -78.19
+803.28 -75.93 803.81 -88.89 804.07 -89.13 804.25 -87.78 805.02 -88.99
+805.43 -87.42 805.81 -87.22 806.01 -89.14 806.93 -88.75 806.97 -87.15
+807.33 -89.11 807.58 -87.50 808.13 -88.75 808.74 -87.50 809.06 -87.17
+809.23 -88.81 810.08 -89.10 810.53 -87.36 810.93 -87.32 811.10 -88.75
+811.54 -87.50 811.93 -89.08 812.53 -88.71 813.00 -87.37 813.16 -87.81
+813.99 -89.04 814.09 -88.75 814.53 -87.14 815.00 -87.88 815.09 -88.93
+816.04 -87.18 816.08 -88.96 816.53 -87.38 816.94 -88.75 818.00 -89.48
+818.04 -87.41 818.73 -87.50 819.00 -88.92 819.04 -86.99 819.14 -88.75
+820.01 -87.21 820.06 -88.87 820.88 -88.75 821.55 -69.69 821.56 -69.69
+822.39 -32.56 822.40 -32.56 823.22 0.25 823.24 0.00 824.05 5.54 824.25
+6.04 824.73 4.71 825.01 6.48 825.13 4.85 826.01 4.83 826.41 5.63 826.93
+6.25 827.07 4.61 827.54 5.00 827.73 6.25 828.54 6.25 829.06 4.65 829.13
+4.82 829.73 6.11 830.33 4.69 830.54 6.25 830.93 6.25 831.02 4.85 832.10
+6.75 832.13 5.00 832.73 4.67 833.01 6.44 834.08 6.25 834.11 4.83 834.53
+4.84 834.88 6.13 835.11 4.83 835.14 6.25 836.03 5.14 836.33 6.25 836.94
+6.25 837.10 4.63 837.54 6.25 838.02 4.81 838.78 4.66 839.11 6.17 839.73
+4.80 840.03 6.23 840.10 4.87 840.14 6.25 841.13 4.71 841.53 6.25 841.78
+6.25 842.33 4.85 843.02 6.12 843.09 4.70 843.73 6.25 844.14 4.79 844.34
+6.25 845.03 4.81 845.08 6.25 845.09 4.67 846.38 6.25 846.73 4.63 847.08
+4.80 847.10 6.25 847.94 6.25 848.04 4.65 848.53 6.09 848.54 5.00 849.53
+4.76 850.09 6.04 850.15 6.25 850.73 4.82 851.14 6.56 851.15 5.00 851.93
+5.00 852.05 6.34 853.10 5.00 853.34 6.25 854.04 6.14 854.05 4.71 854.94
+5.00 855.05 6.41 855.16 6.25 855.35 5.25 856.54 6.25 856.78 4.84 857.03
+4.83 857.66 9.35 857.68 9.35 858.05 12.29 858.94 11.27 859.26 10.72
+859.73 10.00 860.07 11.87 860.28 11.19 860.50 10.80 861.09 12.17 861.10
+10.72 861.98 11.25 862.16 10.46 863.10 10.62 863.16 12.09 864.08 10.58
+864.15 12.18 864.73 11.82 865.06 10.72 865.34 11.25 865.93 10.66 866.15
+12.09 866.54 10.00 867.15 11.64 867.53 10.69 867.93 12.18 868.13 10.53
+869.14 10.66 869.19 11.89 869.53 10.00 870.13 12.09 870.54 11.25 871.08
+10.67 871.13 10.44 871.45 11.18 872.08 10.69 872.33 12.29 872.93 11.25
+873.53 10.66 873.88 10.15 874.47 23.81 874.48 23.81 874.78 33.75 875.38
+32.38 875.73 33.75 876.24 32.78 876.33 33.75 877.09 33.80 877.19 32.50
+878.08 33.51 878.09 32.10 878.75 32.88 879.20 33.71 879.73 33.59 880.10
+32.11 880.94 33.75 881.14 32.51 881.20 33.75 881.53 32.21 882.73 33.83
+882.74 32.50 883.09 32.49 883.11 33.75 883.93 32.15 884.13 33.66 885.10
+33.75 885.14 32.44 885.93 32.39 886.14 33.78 886.59 33.32 886.73 32.49
+887.09 33.66 887.10 32.17 888.10 32.26 888.21 33.75 889.15 32.34 889.19
+33.61 889.73 32.23 890.15 33.60 891.19 32.31 891.21 33.75 891.36 32.85
+892.10 33.79 892.12 33.75 892.18 32.21 893.11 32.11 893.38 33.75 894.19
+34.16 894.58 31.25 894.64 31.88 895.47 45.74 895.48 45.74 895.88 56.25
+896.42 55.34 897.13 53.67 897.44 55.27 897.73 54.19 898.03 54.85 898.76
+55.32 898.96 54.89 899.21 56.25 899.85 55.31 900.05 54.89 900.98 55.33
+901.13 54.91 902.12 54.08 902.16 55.46 902.22 53.89 903.01 55.26 903.22
+55.51 903.23 54.92 904.03 55.39 904.15 54.35 904.78 54.87 905.20 56.25
+906.16 53.92 906.22 55.46 907.02 54.93 907.21 55.34 907.49 55.32 907.66
+54.99 908.23 54.28 908.45 55.35 909.18 54.90 909.66 55.34 909.83 54.94
+910.53 55.36 910.62 55.36 911.27 54.83 911.63 55.38 911.98 54.93 912.53
+53.93 912.78 55.28 913.19 56.25 913.41 54.90 914.31 52.81 914.78 66.25
+914.80 65.95 915.46 77.65 915.93 77.90 916.23 76.47 916.54 76.25 917.20
+78.09 917.43 77.50 917.54 76.71 918.33 77.86 918.59 76.82 919.18 76.60
+919.25 77.50 920.18 76.14 920.24 77.50 921.14 77.95 921.33 76.79 922.16
+78.07 922.19 76.61 922.38 77.50 922.53 76.25 923.20 76.59 923.24 77.84
+924.20 78.05 924.74 76.25 925.19 77.96 925.34 76.73 926.15 76.08 926.53
+78.16 927.20 76.33 927.26 77.81 927.87 76.87 928.21 78.23 928.53 76.65
+929.02 78.23 929.20 78.09 929.34 76.25 930.21 76.60 930.23 78.10 931.21
+76.50 931.21 77.50 932.20 76.80 932.27 77.74 933.21 77.84 933.25 76.56
+933.33 77.76 934.11 76.80 934.26 76.25 934.93 77.81 935.23 78.24 935.78
+76.25 935.93 77.46 936.40 69.36 936.64 76.40 937.20 88.90 937.74 87.50
+938.22 89.16 938.34 88.75 938.48 87.82 939.16 87.13 939.26 88.75 940.16
+89.12 940.17 87.70 940.93 89.18 941.22 87.20 942.15 87.50 942.26 89.25
+943.02 88.92 943.28 87.50 943.53 87.50 943.88 88.80 944.26 89.27 944.53
+87.50 945.14 88.75 945.31 87.88 946.18 87.49 946.53 88.75 947.20 88.78
+947.54 87.50 948.14 88.91 948.20 87.50 948.74 87.50 948.93 89.10 949.28
+87.34 949.73 89.27 950.28 89.08 950.34 87.50 951.19 89.02 951.20 87.50
+952.24 88.65 952.28 87.37 953.17 88.93 953.28 87.50 953.44 87.86 953.53
+88.81 954.43 88.54 954.88 87.40 955.20 87.41 955.24 89.02 956.20 88.85
+956.28 87.19 956.94 88.75 957.63 71.36 957.64 71.39 958.47 34.55 958.48
+34.23 959.31 -0.30 959.32 -0.30 959.64 -5.97 960.54 -6.25 960.93 -4.87
+961.13 -5.00 961.40 -6.32 962.13 -6.25 962.19 -4.87 963.23 -4.64 963.34
+-6.25 963.58 -6.25 963.93 -4.84 964.95 -5.32 965.18 -6.25 965.20 -6.25
+965.24 -4.65 966.13 -5.63 966.21 -4.88 967.26 -6.16 967.53 -4.67 968.25
+-6.70 968.53 -4.85 969.14 -5.00 969.34 -6.25 969.73 -4.88 970.22 -6.12
+970.32 -4.81 970.34 -6.25 971.27 -4.66 971.53 -6.25 972.13 -6.25 972.31
+-4.84 973.21 -4.81 973.28 -6.25 973.93 -4.84 974.24 -6.15 975.13 -4.65
+975.24 -6.11 975.33 -4.61 975.54 -6.25 976.13 -6.25 976.30 -4.75 977.16
+-5.29 977.22 -6.25 978.31 -6.17 978.34 -5.00 978.93 -6.25 979.28 -4.82
+979.54 -5.00 980.14 -6.25 980.34 -5.00 980.73 -6.12 981.24 -5.23 981.27
+-6.68 982.28 -5.00 982.32 -5.98 983.24 -6.12 983.27 -4.62 984.13 -4.81
+984.35 -6.37 985.26 -4.63 985.34 -6.25 985.53 -6.25 985.93 -4.64 986.22
+-4.67 986.30 -6.25 987.25 -6.25 987.32 -4.85 987.93 -4.83 988.30 -6.02
+989.28 -4.64 989.32 -6.08 990.32 -4.88 990.36 -6.25 990.93 -4.82 991.20
+-5.63 991.35 -6.12 991.53 -4.79 992.30 -5.78 992.53 -4.78 992.93 -6.25
+993.25 -4.79 994.28 -4.60 994.35 -6.65 995.25 -4.81 995.30 -6.07 995.54
+-6.25 995.73 -4.87 996.30 -4.85 996.33 -6.25 997.30 -4.90 997.94 -8.17
+997.96 -8.12 998.37 -12.38 999.38 -10.00 999.58 -11.86 999.83 -10.00
+1000.36 -12.17 1000.53 -11.25 1000.74 -10.00 1001.37 -10.00 1001.63
+-12.13 1002.26 -11.72 1002.94 -10.00 1003.33 -10.56 1003.58 -12.22
+1003.93 -12.28 1004.30 -10.00 1004.74 -12.17 1005.27 -10.47 1006.31
+-10.48 1006.34 -11.92 1006.36 -11.92 1006.37 -10.00 1007.34 -11.88
+1007.38 -10.00 1008.27 -10.67 1008.36 -11.98 1009.13 -11.25 1009.37
+-10.57 1009.73 -11.25 1009.94 -10.00 1011.14 -10.00 1011.26 -11.89
+1011.41 -10.78 1011.73 -12.26 1012.32 -12.17 1012.93 -10.63 1013.13
+-11.86 1013.36 -10.27 1014.28 -11.79 1014.38 -10.00 1015.34 -12.16
+1015.53 -10.80 1015.73 -11.90 1016.33 -10.54 1017.11 -10.43 1017.23
+-12.50 1017.28 -12.39 1017.99 -33.65 1018.28 -34.29 1018.93 -32.37
+1019.31 -32.04 1019.35 -33.75 1020.34 -33.85 1020.40 -32.50 1020.73
+-33.75 1021.43 -32.08 1021.93 -32.26 1022.13 -33.86 1022.34 -32.81
+1022.74 -33.75 1023.35 -32.38 1023.40 -33.75 1024.29 -32.16 1024.37
+-33.91 1025.14 -33.75 1025.39 -32.01 1026.13 -33.75 1026.39 -32.21
+1026.93 -32.25 1027.29 -33.84 1027.40 -33.75 1027.40 -32.50 1028.23
+-33.75 1028.78 -32.35 1029.34 -34.24 1029.74 -32.23 1030.03 -33.75
+1030.43 -32.50 1031.31 -33.79 1031.41 -32.43 1031.93 -33.55 1032.36
+-32.09 1032.40 -32.14 1032.43 -33.75 1033.33 -33.77 1033.53 -32.33
+1034.28 -33.75 1034.33 -32.25 1035.51 -31.72 1035.75 -36.09 1035.76
+-36.09 1036.58 -55.56 1036.94 -56.25 1037.36 -54.44 1037.48 -55.20
+1037.58 -54.90 1038.33 -55.70 1038.66 -54.94 1039.53 -55.33 1039.69
+-54.98 1040.41 -53.81 1040.74 -56.25 1040.81 -55.29 1041.35 -53.96
+1041.65 -54.99 1041.75 -55.24 1042.59 -54.89 1042.73 -56.25 1043.93
+-55.31 1044.06 -54.98 1044.70 -54.88 1044.93 -56.25 1045.03 -55.45
+1045.38 -53.90 1045.93 -55.40 1046.23 -54.95 1046.93 -54.94 1047.18
+-56.25 1047.79 -54.97 1048.32 -55.51 1048.37 -54.44 1049.16 -55.31
+1049.37 -53.85 1049.94 -56.13 1050.33 -55.55 1050.37 -54.20 1051.34
+-54.33 1051.38 -56.00 1052.11 -54.91 1052.37 -55.36 1052.56 -55.30
+1053.34 -53.77 1053.48 -55.47 1053.98 -54.89 1054.32 -53.99 1054.73
+-55.49 1055.39 -55.38 1055.43 -53.71 1056.06 -52.98 1056.73 -75.58
+1056.76 -75.37 1057.13 -78.41 1057.73 -78.38 1058.35 -76.27 1058.46
+-76.25 1058.93 -77.74 1059.41 -77.92 1059.60 -76.80 1060.36 -76.25
+1060.45 -78.29 1061.40 -78.16 1061.45 -76.25 1062.17 -76.79 1062.34
+-78.14 1062.74 -77.50 1063.41 -76.25 1063.86 -77.52 1063.93 -76.25
+1064.53 -78.18 1065.13 -76.25 1065.40 -77.50 1065.48 -76.25 1066.10
+-76.57 1066.38 -77.91 1067.36 -76.19 1067.44 -77.83 1068.13 -77.83
+1068.45 -76.65 1068.74 -77.50 1069.03 -76.78 1069.74 -76.25 1069.97
+-77.93 1070.36 -78.12 1070.63 -76.25 1071.13 -76.25 1071.44 -77.93
+1072.34 -76.25 1072.71 -78.89 1072.72 -78.89 1073.13 -88.87 1074.22
+-87.34 1074.36 -88.95 1074.53 -89.25 1075.13 -87.50 1075.38 -87.49
+1075.42 -88.80 1076.33 -87.48 1076.68 -88.93 1076.93 -87.11 1077.28
+-89.14 1077.93 -89.17 1078.36 -87.47 1079.34 -87.50 1079.40 -88.98
+1079.44 -88.97 1079.48 -87.50 1080.42 -88.78 1080.46 -87.64 1081.46
+-88.96 1081.55 -87.33 1082.45 -87.50 1082.54 -89.04 1083.34 -87.50
+1083.46 -89.17 1084.28 -88.95 1084.44 -87.28 1084.49 -88.75 1084.88
+-87.50 1085.38 -89.32 1085.43 -87.55 1086.74 -87.50 1086.98 -88.75
+1087.34 -87.50 1087.48 -89.33 1088.13 -89.36 1088.48 -87.24 1088.78
+-88.82 1089.33 -87.50 1089.73 -88.71 1090.35 -76.55 1090.36 -76.55
+1091.19 -39.54 1091.20 -39.54 1092.02 -5.66 1092.39 -4.57 1092.74 -6.25
+1093.33 -4.57 1093.53 -6.25 1093.80 -5.82 1094.53 2.00 1094.56 1.16
+1095.13 6.25 1095.44 4.69 1095.50 6.25 1096.34 6.25 1096.98 4.70 1097.41
+4.67 1097.45 6.87 1098.42 6.25 1098.60 5.27 1099.13 6.25 1099.41 4.74
+1099.73 4.89 1100.42 6.07 1100.50 6.25 1101.22 4.61 1101.45 6.10 1101.58
+4.88 1102.18 4.56 1102.22 5.69 1103.14 6.25 1103.43 4.63 1104.44 6.16
+1104.50 4.65 1104.68 5.00 1104.93 6.25 1105.53 6.11 1105.93 4.88 1106.46
+6.30 1107.13 4.77 1107.53 6.40 1107.93 4.70 1108.42 4.65 1108.50 5.85
+1108.94 6.25 1109.50 4.82 1110.42 6.44 1110.48 4.93 1110.53 4.67 1110.74
+6.25 1111.51 6.28 1112.13 4.68 1112.45 5.00 1112.73 6.18 1113.14 6.25
+1113.53 4.84 1114.43 4.66 1114.48 6.24 1114.74 6.25 1115.22 4.87 1115.82
+4.91 1115.93 6.17 1116.98 5.63 1117.13 4.65 1117.42 4.67 1117.54 6.25
+1118.28 6.25 1118.50 4.64 1119.44 6.15 1119.46 4.81 1119.93 6.25 1120.44
+4.53 1120.73 4.70 1121.34 6.25 1121.47 4.83 1121.63 6.25 1122.54 6.25
+1122.58 4.83 1123.44 4.69 1123.48 6.25 1124.13 4.99 1124.78 6.25 1125.38
+6.25 1125.52 4.69 1126.23 6.25 1126.28 5.32 1126.51 4.86 1126.56 6.25
+1127.50 4.80 1127.73 6.25 1128.34 6.25 1128.50 4.81 1129.49 5.26 1129.55
+6.39 1130.13 5.00 1130.54 6.38 1131.08 4.89 1131.49 6.62 1131.73 6.12
+1132.33 4.85 1132.43 4.82 1132.49 6.39 1133.49 4.63 1133.93 6.25 1134.46
+4.60 1134.87 6.65 1134.88 6.68 1135.54 12.07 1135.73 12.20 1135.88
+10.00 1136.56 11.25 1137.23 10.00 1137.58 10.00 1138.18 12.18 1138.43
+10.00 1138.56 11.52 1139.46 12.21 1139.55 10.69 1140.47 10.00 1140.55
+11.49 1140.93 12.16 1141.56 10.40 1141.67 12.16 1142.33 10.00 1142.48
+10.00 1142.73 12.19 1143.50 12.10 1143.52 10.62 1144.45 10.68 1144.52
+11.54 1145.13 10.00 1145.53 11.68 1146.33 12.16 1146.48 10.57 1147.25
+10.80 1147.46 11.78 1147.48 11.78 1147.54 10.66 1148.48 10.53 1148.93
+12.20 1149.53 11.79 1149.54 10.71 1150.13 11.88 1150.47 10.61 1151.49
+11.75 1151.60 10.00 1151.94 11.25 1152.48 10.79 1152.53 10.32 1152.55
+11.82 1153.48 10.61 1153.56 12.16 1154.49 12.14 1154.60 10.00 1155.57
+10.59 1155.83 11.25 1156.14 10.44 1156.71 23.47 1156.72 23.47 1157.34
+34.05 1157.57 32.50 1158.13 33.78 1158.56 33.88 1159.03 32.85 1159.59
+33.82 1159.60 32.50 1160.13 32.36 1160.60 33.75 1161.13 33.75 1161.38
+32.22 1161.98 33.39 1162.59 32.06 1162.93 33.75 1162.97 32.79 1163.66
+33.40 1163.73 32.17 1164.33 33.75 1164.71 32.19 1165.56 33.75 1165.80
+32.85 1166.56 33.57 1166.58 32.36 1167.13 33.75 1167.50 32.02 1167.73
+33.45 1168.33 32.25 1168.59 32.84 1168.94 33.75 1169.56 32.50 1169.59
+33.75 1170.57 33.89 1170.75 32.82 1171.53 33.92 1171.62 32.06 1172.13
+32.32 1172.38 33.75 1172.73 32.28 1173.16 33.35 1173.62 32.11 1173.64
+33.75 1174.36 33.65 1175.19 48.42 1175.20 48.84 1175.58 56.25 1176.54
+54.92 1176.76 55.33 1176.93 55.31 1177.64 54.88 1177.93 56.25 1178.18
+54.20 1178.74 54.92 1179.34 56.25 1179.94 54.11 1180.22 55.34 1180.24
+55.24 1180.56 53.92 1181.33 56.25 1181.65 54.98 1182.33 55.44 1182.53
+54.40 1183.33 55.36 1183.55 54.38 1183.62 54.46 1184.36 55.31 1184.52
+54.00 1184.58 55.64 1185.56 55.40 1185.93 54.04 1186.54 55.47 1186.56
+54.21 1187.48 54.08 1187.57 55.46 1188.14 56.25 1188.59 54.95 1188.93
+56.25 1189.24 54.88 1189.58 54.98 1189.93 55.42 1190.74 54.92 1190.94
+55.37 1191.17 55.28 1191.64 53.95 1192.56 56.25 1192.82 54.51 1192.86
+54.51 1193.67 71.31 1193.68 71.44 1194.12 77.76 1194.55 76.15 1195.33
+77.50 1195.60 76.25 1195.64 77.75 1196.61 78.15 1196.74 76.25 1197.54
+76.47 1197.61 78.15 1197.94 76.25 1198.69 77.57 1199.08 77.93 1199.33
+76.25 1199.60 76.25 1200.31 77.53 1200.67 77.54 1200.68 76.25 1201.68
+76.25 1201.72 78.29 1202.35 76.71 1202.57 78.18 1203.58 78.06 1203.69
+76.25 1203.96 76.25 1204.61 77.59 1204.71 76.25 1204.95 78.23 1205.85
+78.14 1206.11 76.25 1206.75 77.98 1206.82 76.74 1207.58 77.87 1207.62
+76.25 1208.59 77.96 1208.64 76.25 1209.17 76.78 1209.60 77.99 1209.69
+77.50 1210.41 76.25 1210.95 77.92 1211.27 74.02 1211.34 74.53 1211.91
+89.07 1212.76 88.89 1212.77 87.50 1213.45 88.79 1213.58 87.20 1214.56
+87.50 1214.68 89.20 1214.70 89.09 1214.95 87.16 1215.65 88.97 1215.69
+87.08 1216.61 87.50 1216.67 89.12 1217.65 87.40 1217.71 88.75 1218.61
+89.10 1218.71 87.50 1219.15 87.42 1219.65 88.90 1220.01 88.47 1220.45
+87.86 1220.61 87.48 1220.71 89.13 1221.59 88.86 1221.71 87.22 1222.67
+87.65 1222.71 89.17 1223.35 88.95 1223.71 86.82 1223.95 88.95 1224.55
+87.45 1225.45 87.75 1225.59 89.03 1225.62 88.75 1226.45 58.85 1226.46
+58.43 1227.29 21.74 1227.30 21.20 1228.13 -2.30 1228.14 -2.30 1228.67
+-6.47 1229.55 -4.88 1229.67 -6.76 1229.95 -6.25 1230.55 -4.90 1230.69
+-6.25 1231.50 -4.62 1231.61 -4.59 1231.67 -6.69 1232.61 -4.83 1232.69
+-6.25 1233.67 -6.31 1233.72 -4.72 1234.61 -6.11 1234.66 -4.62 1235.10
+-6.25 1235.35 -4.84 1235.72 -6.40 1235.90 -5.31 1236.73 -4.77 1236.76
+-6.25 1237.73 -4.66 1237.95 -6.14 1238.68 -4.64 1238.85 -6.15 1239.10
+-6.25 1239.35 -4.64 1240.35 -4.80 1240.73 -6.20 1240.90 -6.25 1240.96
+-4.91 1241.65 -6.25 1241.69 -4.63 1242.69 -6.04 1242.72 -4.87 1243.55
+-4.62 1243.65 -6.34 1244.70 -6.25 1244.73 -4.61 1245.69 -6.63 1245.73
+-4.60 1245.95 -6.25 1246.36 -4.86 1246.66 -4.86 1246.73 -6.25 1247.55
+-4.83 1247.77 -6.25 1248.40 -6.25 1248.68 -4.64 1249.35 -4.66 1249.37
+-6.25 1250.15 -4.83 1250.56 -6.25 1251.36 -6.25 1251.63 -4.94 1251.69
+-4.65 1251.96 -6.25 1252.65 -4.64 1252.69 -6.16 1253.71 -6.27 1253.75
+-4.84 1254.65 -6.09 1254.74 -4.84 1255.15 -4.89 1255.71 -6.25 1256.08
+-5.31 1256.35 -6.25 1256.71 -6.25 1256.85 -5.00 1257.70 -6.15 1257.75
+-4.65 1258.71 -4.64 1258.75 -6.19 1259.66 -4.64 1259.77 -6.25 1260.74
+-4.82 1260.77 -6.25 1260.97 -5.00 1261.16 -6.25 1261.83 -6.25 1261.86
+-4.62 1262.69 -6.25 1263.15 -4.86 1263.64 -4.81 1263.77 -6.25 1264.30
+-6.25 1264.36 -4.88 1265.55 -6.23 1265.72 -4.85 1266.35 -4.88 1266.71
+-6.07 1267.25 -5.30 1267.58 -5.70 1267.63 -5.30 1267.73 -6.19 1268.69
+-4.85 1269.15 -6.25 1269.75 -4.83 1269.77 -6.25 1270.69 -4.95 1270.97
+-9.46 1270.98 -9.52 1271.78 -11.87 1272.09 -10.77 1272.55 -12.21 1272.76
+-10.64 1273.16 -11.25 1273.68 -11.61 1273.75 -10.61 1274.36 -11.25
+1274.73 -10.49 1275.56 -11.25 1275.79 -10.00 1276.76 -10.49 1276.78
+-12.12 1277.18 -10.76 1277.68 -11.86 1277.73 -10.62 1278.05 -12.12
+1278.68 -10.41 1278.95 -12.16 1279.55 -10.56 1279.95 -11.76 1280.55
+-12.21 1280.79 -10.40 1281.71 -11.58 1281.76 -10.75 1282.55 -10.00
+1282.68 -11.72 1282.75 -11.59 1283.16 -10.00 1283.78 -11.40 1284.17
+-10.00 1284.73 -12.13 1284.76 -10.60 1285.69 -12.23 1285.75 -10.62
+1286.68 -12.06 1286.78 -10.50 1287.15 -10.66 1287.75 -11.88 1287.81
+-12.16 1288.37 -10.00 1288.71 -12.28 1289.25 -10.00 1290.15 -10.24
+1290.27 -11.71 1290.32 -11.41 1291.05 -33.68 1291.45 -33.83 1291.71
+-32.80 1292.55 -32.33 1292.81 -33.74 1292.95 -33.72 1292.96 -32.50
+1293.70 -33.55 1293.80 -32.00 1294.55 -33.79 1294.72 -32.50 1295.80
+-33.95 1296.05 -32.09 1296.71 -32.47 1296.79 -33.80 1297.76 -34.08
+1297.82 -32.15 1297.90 -32.50 1298.15 -33.75 1298.83 -33.75 1299.10
+-32.41 1299.73 -32.16 1299.78 -33.75 1300.72 -33.84 1300.77 -32.39
+1301.70 -32.26 1301.78 -33.76 1302.15 -33.78 1302.56 -32.50 1302.95
+-32.43 1303.15 -33.72 1303.81 -33.89 1304.55 -32.41 1304.95 -32.04
+1305.17 -33.75 1305.73 -34.49 1306.16 -32.50 1306.73 -26.91 1307.09
+-40.84 1307.10 -41.01 1307.51 -56.25 1308.20 -54.91 1308.35 -56.25
+1309.39 -54.92 1309.51 -55.33 1309.73 -54.22 1309.79 -55.39 1310.78
+-54.18 1310.96 -56.25 1311.36 -56.25 1311.73 -54.17 1312.79 -55.55
+1312.83 -54.09 1313.55 -53.75 1313.78 -55.73 1314.16 -56.25 1314.35
+-54.96 1314.85 -56.25 1315.46 -54.89 1315.81 -56.25 1316.25 -54.95
+1316.35 -54.09 1317.16 -56.25 1317.33 -55.31 1317.79 -54.92 1318.55
+-54.93 1318.82 -55.46 1318.90 -54.97 1319.37 -55.37 1319.80 -55.33
+1319.86 -54.94 1320.55 -53.84 1320.77 -55.34 1321.91 -55.43 1321.95
+-54.87 1322.81 -55.39 1322.92 -54.90 1323.79 -55.39 1323.89 -54.90
+1324.27 -54.83 1324.65 -55.26 1325.06 -54.18 1325.57 -66.39 1325.60
+-66.31 1326.11 -77.51 1326.79 -76.14 1327.15 -77.79 1327.87 -76.25
+1328.05 -77.50 1328.37 -76.25 1328.40 -78.15 1329.35 -77.77 1329.57
+-76.25 1329.82 -76.25 1330.45 -77.50 1330.95 -77.77 1331.36 -76.25
+1331.57 -76.25 1332.15 -78.16 1332.57 -76.25 1332.77 -78.12 1333.16
+-76.25 1333.87 -78.39 1334.15 -76.25 1334.38 -77.54 1335.15 -76.25
+1335.36 -77.50 1335.67 -76.84 1335.81 -78.17 1336.51 -76.25 1336.81
+-78.14 1337.82 -76.23 1337.85 -77.88 1338.35 -78.19 1338.56 -76.25
+1339.05 -78.27 1339.55 -76.67 1340.18 -76.82 1340.35 -77.82 1340.81
+-77.99 1340.89 -76.24 1341.80 -76.25 1341.89 -78.05 1342.70 -76.75
+1342.87 -78.22 1343.56 -73.75 1344.05 -88.31 1344.78 -89.08 1344.81
+-87.38 1345.35 -87.47 1345.55 -88.75 1345.83 -89.08 1345.87 -87.48
+1346.86 -87.03 1346.97 -88.75 1347.83 -88.91 1348.16 -87.50 1348.82
+-87.18 1348.86 -88.77 1349.37 -88.75 1349.86 -87.50 1350.16 -87.87
+1350.50 -89.12 1350.78 -88.75 1351.35 -87.38 1351.83 -89.26 1352.16
+-87.50 1352.88 -87.40 1353.25 -89.31 1353.88 -90.36 1353.96 -87.43
+1354.82 -87.29 1354.86 -88.86 1355.16 -88.75 1355.80 -87.10 1355.89
+-89.30 1356.35 -87.22 1356.79 -88.93 1356.85 -87.23 1357.78 -87.88
+1357.90 -89.08 1358.35 -88.82 1358.76 -87.50 1359.84 -87.27 1359.88
+-88.77 1360.62 -87.69 1360.83 -88.90 1360.91 -88.75 1361.12 -87.86
+1361.75 -88.73 1362.53 -67.37 1362.54 -67.37 1363.37 -30.26 1363.38
+-29.84 1364.15 -4.93 1364.77 -5.00 1364.89 -6.18 1365.17 -6.25 1365.87
+-4.60 1365.93 -5.00 1366.36 -6.25 1366.85 -4.67 1367.45 -5.65 1367.81
+-4.64 1368.16 -6.25 1368.76 -5.00 1368.89 -6.76 1369.36 -4.89 1369.75
+-6.25 1370.75 -4.88 1370.88 -6.16 1371.16 -5.00 1371.76 -6.25 1371.82
+-6.34 1371.95 -4.83 1372.87 -6.38 1373.15 -4.67 1373.81 -6.37 1373.85
+-4.84 1374.45 -6.25 1374.81 -4.83 1375.40 -6.25 1375.95 -4.53 1376.15
+-6.25 1376.55 -4.83 1376.92 -4.72 1377.16 -6.25 1377.75 -6.46 1377.90
+-4.67 1378.93 -6.58 1379.15 -4.55 1379.83 -6.53 1379.88 -4.47 1380.35
+-4.88 1380.83 -6.28 1381.15 -5.00 1381.75 -6.25 1382.01 -6.25 1382.30
+-4.47 1382.86 -4.43 1382.87 -6.18 1383.84 -6.48 1383.95 -4.58 1384.55
+-6.25 1384.62 -5.30 1385.84 -4.61 1385.89 -6.08 1386.55 -6.25 1386.85
+-4.52 1386.91 -6.25 1387.55 -4.76 1387.89 -4.71 1387.92 -6.25 1388.83
+-4.81 1388.92 -6.25 1389.93 -4.80 1389.95 -6.25 1390.75 -4.65 1390.91
+-6.25 1391.56 -6.25 1391.62 -5.31 1391.96 -6.25 1392.76 -5.00 1392.92
+-4.82 1393.05 -6.25 1393.86 -6.12 1393.91 -4.77 1394.84 -6.09 1395.16
+-4.83 1395.45 -6.25 1395.92 -4.82 1396.35 -6.11 1396.36 -5.00 1397.36
+-5.00 1397.75 -6.12 1397.86 -6.60 1397.93 -4.83 1398.76 -6.25 1398.91
+-4.56 1399.76 -6.25 1399.89 -4.82 1400.87 -6.67 1400.95 -4.82 1401.75
+-6.25 1401.97 -4.69 1402.15 -4.91 1402.86 -6.70 1402.86 -6.70 1403.35
+-4.83 1403.87 -6.38 1404.35 -4.60 1404.75 -4.64 1404.87 -6.66 1405.86
+-4.81 1405.93 -6.34 1406.92 -4.61 1406.93 -6.25 1407.36 -4.83 1407.55
+-6.25 1407.97 -4.92 1408.15 -6.25 1408.75 -6.25 1408.97 -4.90 1410.16
+-6.25 1410.30 -4.65 1410.55 -6.25 1410.96 -4.82 1411.36 -6.25 1411.86
+-4.66 1412.25 -5.32 1412.56 -6.25 1412.94 -6.12 1413.45 -4.89 1413.87
+-4.83 1413.95 -6.25 1414.88 -4.86 1414.98 -6.79 1415.75 -6.25 1416.15
+-4.92 1416.36 -6.25 1416.98 -4.60 1417.75 -4.63 1417.93 -6.06 1417.98
+-4.84 1418.55 -6.25 1418.97 -6.72 1419.15 -4.85 1419.75 -6.25 1419.94
+-4.86 1420.75 -6.25 1420.96 -4.81 1421.55 -4.86 1421.93 -6.67 1422.35
+-6.25 1422.96 -4.87 1423.15 -5.00 1423.50 -6.25 1423.98 -4.66 1424.40
+-5.66 1424.75 -4.61 1424.76 -6.25 1425.89 -4.66 1426.00 -6.67 1426.55
+-6.25 1426.89 -4.86 1427.35 -6.14 1427.99 -4.85 1428.15 -6.16 1428.16
+-5.00 1428.90 -6.33 1428.93 -4.84 1430.01 -4.87 1430.01 -6.25 1430.85
+-4.62 1431.10 -6.25 1431.70 -4.86 1431.97 -6.25 1432.30 -4.86 1432.91
+-6.32 1433.55 -4.90 1433.90 -6.03 1433.96 -4.83 1433.99 -5.80 1434.96
+-4.68 1435.36 -6.25 1436.01 -4.67 1436.03 -6.25 1436.91 -6.15 1436.92
+-4.84 1437.76 -6.25 1438.01 -4.64 1438.45 -6.25 1438.97 -4.65 1439.02
+-5.00 1439.25 -6.25 1439.94 -4.63 1440.56 -6.25 1440.93 -4.62 1441.02
+-6.15 1442.01 -6.09 1442.02 -4.59 1442.36 -6.25 1442.97 -4.86 1443.55
+-6.14 1443.56 -5.00 1444.03 -5.00 1444.76 -6.25 1444.97 -6.32 1445.01
+-4.85 1445.95 -5.00 1446.01 -6.70 1446.71 -5.34 1446.93 -6.67 1447.55
+-6.25 1448.00 -4.85 1448.76 -6.25 1448.98 -4.84 1449.10 -4.91 1449.16
+-6.14 1449.95 -4.63 1450.36 -6.25 1450.95 -6.59 1451.15 -4.83 1452.03
+-4.61 1452.05 -6.25 1452.45 -6.25 1453.01 -4.59 1453.93 -4.83 1454.03
+-6.62 1454.36 -6.25 1454.92 -4.84 1454.99 -4.64 1455.03 -6.12 1455.97
+-4.61 1456.01 -6.25 1456.98 -6.15 1457.05 -4.88 1457.98 -6.32 1458.03
+-4.86 1458.94 -4.84 1459.00 -6.25 1459.15 -6.25 1459.25 -4.64 1460.01
+-6.25 1460.05 -4.63 1461.30 -5.31 1461.35 -6.25 1462.01 -6.31 1462.04
+-4.80 1462.75 -4.89 1462.99 -6.29 1463.50 -4.60 1463.75 -6.25 1464.35
+-6.25 1465.00 -4.60 1465.35 -4.84 1465.56 -6.15 1465.95 -4.86 1466.02
+-6.25 1466.76 -6.25 1466.95 -4.62 1467.97 -6.68 1468.01 -4.64 1468.75
+-4.88 1469.01 -6.13 1469.55 -4.63 1470.02 -6.13 1470.35 -4.84 1470.66
+-5.65 1471.06 -6.71 1471.35 -4.90 1471.97 -6.58 1472.25 -5.00 1472.97
+-6.58 1473.03 -5.00 1473.98 -4.61 1474.03 -6.25 1474.36 -6.25 1474.51
+-4.88 1475.50 -5.63 1475.93 -3.46 1475.98 -4.16 1476.40 0.52 1476.78
+0.00 1476.78 0.00 1477.62 0.00 1477.62 0.00 1478.46 0.00 1478.46 0.00
+1479.30 0.00 1479.30 0.00 1480.14 0.00 1480.14 0.00 1480.98 0.00 1480.98
+0.00 1481.82 0.00 1481.82 0.00 1482.66 0.00 1482.66 0.00 1483.50 0.00
+1483.50 0.00 1484.34 0.00 1484.34 0.00 1485.18 0.00 1485.18 0.00 1486.02
+0.00 1486.02 0.00 1486.86 0.00 1486.86 0.00 1487.70 0.00 1487.70 0.00
+1488.54 0.00 1488.54 0.00 1489.38 0.00 1489.38 0.00 1490.22 0.00 1490.22
+0.00 1491.06 0.00 1491.06 0.00 1491.90 0.00 1491.90 0.00 1492.74 0.00
+1492.74 0.00 1493.58 0.00 1493.58 0.00 1494.42 0.00 1494.42 0.00 1495.26
+0.00 1495.26 0.00 1496.10 0.00 1496.10 0.00 1496.94 0.00 1496.94 0.00
+1497.78 0.00 1497.78 0.00 1498.62 0.00 1498.62 0.00 1499.46 0.00 1499.46
+0.00 1500.30 0.00 1500.30 0.00 1501.14 0.00 1501.14 0.00 1501.98 0.00
+1501.98 0.00 1502.82 0.00 1502.82 0.00 1503.66 0.00 1503.66 0.00 1504.50
+0.00 1504.50 0.00 1505.34 0.00 1506.02 6.25 1506.35 6.25 1506.95 4.62
+1507.05 4.61 1507.09 6.13 1507.95 4.65 1508.11 6.25 1509.07 4.45 1509.10
+6.11 1510.02 4.68 1510.11 6.35 1510.55 6.25 1511.05 4.93 1511.75 4.79
+1512.00 6.12 1512.07 4.65 1512.13 6.25 1512.90 6.25 1513.05 4.64 1513.75
+4.83 1514.03 6.25 1515.10 6.68 1515.15 4.84 1516.09 6.25 1516.12 4.84
+1516.55 6.25 1516.97 0.00 1517.25 -1.25 1517.62 0.12 1517.94 0.00 1517.94
+0.00 1518.78 0.00 1518.78 0.00 1519.62 0.00 1519.62 0.00 1520.46 0.00
+1520.46 0.00 1521.30 0.00 1521.30 0.00 1522.14 0.00 1522.14 0.00 1522.98
+0.00 1522.98 0.00 1523.82 0.00 1523.82 0.00 1524.66 0.00 1524.66 0.00
+1525.50 0.00 1525.50 0.00 1526.34 0.00 1526.34 0.00 1527.18 0.00 1527.95
+5.85 1528.11 6.25 1528.15 4.77 1529.09 4.80 1529.35 6.25 1529.70 5.00
+1529.96 6.25 1531.06 6.74 1531.13 4.61 1531.75 4.95 1532.15 6.16 1532.75
+5.00 1533.06 6.36 1533.35 4.64 1533.70 6.20 1534.11 4.85 1534.16 6.72
+1535.10 4.66 1535.16 6.25 1536.06 6.13 1536.09 4.67 1536.55 5.00 1536.75
+6.25 1537.30 6.25 1538.07 4.90 1538.30 5.32 1538.55 6.25 1539.07 6.25
+1539.17 4.79 1540.11 4.60 1540.36 6.25 1541.07 4.79 1541.16 6.25 1541.55
+4.89 1541.56 6.25 1542.76 6.25 1543.13 4.95 1543.15 4.80 1543.35 6.12
+1544.35 6.25 1544.75 4.82 1544.91 5.33 1545.07 6.16 1545.85 6.25 1546.16
+4.81 1547.12 6.58 1547.17 5.10 1547.96 5.00 1548.13 6.25 1548.57 5.00
+1548.80 6.25 1549.10 4.64 1549.80 6.25 1549.95 6.25 1550.09 5.10 1551.08
+4.63 1551.12 6.11 1552.05 4.80 1552.18 6.28 1552.55 4.80 1553.11 6.16
+1553.35 5.00 1553.95 6.25 1554.35 4.66 1554.36 6.25 1554.95 4.85 1555.60
+6.25 1556.09 4.67 1556.19 6.38 1557.15 6.36 1557.35 4.68 1557.95 6.25
+1558.15 4.65 1558.35 4.85 1558.37 6.25 1559.30 4.65 1559.90 6.25 1560.15
+4.83 1560.55 6.13 1560.95 5.00 1561.16 6.42 1561.75 6.25 1562.45 5.32
+1563.11 6.25 1563.13 4.79 1563.50 4.90 1563.59 5.64 1564.15 4.81 1564.29
+5.65 1565.05 6.25 1565.20 4.83 1566.09 5.81 1566.20 4.71 1567.16 6.25
+1567.19 4.88 1567.76 6.25 1568.13 4.66 1569.10 4.67 1569.15 6.18 1569.20
+4.65 1569.55 6.25 1570.56 6.25 1570.76 5.00 1571.10 6.18 1571.13 4.85
+1571.96 6.25 1572.16 4.61 1572.60 6.25 1573.15 4.63 1573.55 6.25 1574.16
+4.46 1574.40 6.25 1575.00 4.82 1575.13 6.25 1575.21 4.78 1576.13 6.25
+1576.35 4.98 1577.12 6.73 1577.22 5.00 1578.17 4.54 1578.40 6.25 1578.76
+6.25 1579.21 4.67 1579.55 6.18 1579.55 5.00 1580.11 6.16 1580.13 5.00
+1581.12 6.15 1581.55 4.69 1582.11 4.82 1582.13 6.25 1583.10 4.79 1583.19
+6.01 1584.18 6.61 1584.23 4.61 1584.56 5.00 1585.13 6.63 1585.14 6.63
+1585.80 5.33 1586.13 4.82 1586.23 6.25 1587.55 6.16 1587.56 5.00 1588.13
+4.80 1588.20 6.25 1589.22 4.66 1589.25 6.25 1589.40 6.25 1590.16 5.31
+1590.22 5.00 1590.56 6.25 1591.13 4.82 1591.23 6.25 1592.15 4.79 1592.19
+6.58 1593.20 6.38 1593.25 4.89 1594.00 4.63 1594.26 6.25 1594.55 5.00
+1594.96 6.25 1595.24 4.88 1595.25 6.25 1596.19 4.65 1596.22 6.25 1596.95
+4.79 1597.36 6.25 1598.20 5.00 1598.24 6.35 1598.95 4.85 1599.16 6.25
+1599.83 5.64 1600.19 4.64 1600.35 4.80 1600.75 6.25 1601.19 4.86 1601.26
+6.25 1601.95 4.85 1602.17 6.25 1603.10 4.61 1603.26 6.25 1604.18 6.25
+1604.35 4.81 1605.14 4.80 1605.26 6.33 1605.56 6.25 1606.06 5.31 1606.22
+6.25 1606.26 4.63 1607.18 6.25 1607.75 4.64 1608.26 4.62 1608.56 6.25
+1609.12 5.34 1609.23 6.41 1609.80 4.69 1610.22 6.25 1610.75 6.12 1610.96
+4.70 1611.26 4.69 1611.60 6.25 1612.24 6.25 1612.80 4.65 1612.95 6.25
+1613.35 4.80 1614.18 4.65 1614.22 6.16 1615.17 6.63 1615.27 4.48 1615.85
+4.67 1616.20 6.25 1616.23 6.37 1616.28 4.85 1617.23 5.00 1617.27 6.16
+1618.26 4.81 1618.55 6.25 1619.15 4.82 1619.55 6.25 1619.80 6.25 1620.17
+4.81 1620.75 6.14 1621.26 4.65 1621.26 4.65 1621.96 6.17 1622.15 4.83
+1622.36 6.25 1623.17 4.82 1623.56 6.25 1624.27 6.03 1624.45 4.67 1624.95
+5.00 1625.23 6.33 1625.95 4.83 1626.17 6.25 1626.56 6.25 1626.61 5.32
+1627.20 6.60 1627.76 5.00 1628.17 6.01 1628.75 4.89 1629.25 6.14 1629.40
+4.63 1630.20 5.21 1630.29 6.40 1630.95 6.13 1631.23 4.79 1631.50 4.90
+1631.75 6.25 1632.29 6.25 1632.90 4.68 1633.23 6.73 1633.30 4.65 1633.90
+6.25 1634.25 4.67 1635.21 4.81 1635.24 6.64 1635.55 6.25 1636.30 4.64
+1637.15 6.25 1637.20 4.64 1637.22 4.81 1637.35 6.25 1638.30 6.56 1638.75
+4.82 1639.27 4.62 1639.31 6.25 1640.30 4.77 1640.50 6.25 1640.75 6.25
+1641.35 4.65 1641.76 6.25 1642.22 4.66 1642.31 6.38 1642.95 5.00 1643.26
+4.78 1643.75 6.18 1644.15 4.67 1644.56 6.25 1645.27 6.25 1645.31 4.65
+1646.24 6.25 1646.29 4.67 1646.55 4.82 1647.16 6.25 1647.31 5.00 1647.75
+6.25 1648.27 4.63 1648.32 6.25 1649.25 4.63 1649.28 6.11 1649.95 5.00
+1650.55 6.11 1650.90 6.25 1651.25 4.64 1651.75 4.81 1652.31 6.38 1652.70
+6.25 1652.95 5.00 1653.26 4.81 1653.35 6.25 1654.31 6.69 1654.75 4.85
+1655.25 6.12 1655.31 4.67 1656.24 4.84 1656.34 6.25 1656.55 6.25 1657.15
+4.65 1657.55 5.33 1657.75 6.25 1658.24 4.64 1658.76 6.25 1659.29 6.58
+1659.33 5.16 1660.15 6.25 1660.55 4.93 1660.80 6.25 1661.24 4.81 1662.27
+4.81 1662.34 6.25 1662.95 6.25 1663.25 5.29 1663.30 4.82 1663.36 6.25
+1664.20 4.94 1664.24 6.40 1665.31 6.24 1665.40 4.68 1666.28 4.71 1666.34
+6.59 1667.15 6.25 1667.24 5.11 1667.95 6.14 1668.29 4.81 1668.30 5.84
+1668.75 4.88 1669.26 6.25 1669.95 4.79 1670.65 4.78 1670.71 5.65 1671.26
+6.25 1671.37 4.59 1671.75 5.00 1672.32 6.11 1673.26 4.67 1673.29 6.14
+1673.35 6.33 1674.15 5.00 1674.35 4.64 1674.56 6.25 1675.15 6.25 1675.31
+4.67 1676.31 6.16 1676.36 4.69 1676.96 6.25 1677.41 5.34 1677.95 4.92
+1678.36 6.61 1678.55 6.25 1679.15 4.81 1679.27 6.35 1679.96 4.64 1680.37
+6.25 1680.75 4.63 1680.95 4.64 1681.20 6.25 1681.95 6.25 1682.37 4.80
+1683.26 6.15 1683.33 4.64 1683.55 4.82 1683.96 6.25 1684.29 4.82 1684.38
+6.25 1685.28 4.80 1685.55 6.25 1686.16 6.25 1686.45 4.67 1686.95 6.25
+1687.33 4.67 1687.95 6.25 1688.37 4.64 1688.56 6.25 1689.15 5.33 1689.33
+4.81 1689.95 6.15 1690.31 6.25 1690.34 4.64 1691.01 5.35 1691.75 28.75
+1691.91 28.09 1692.29 26.65 1693.15 28.84 1693.45 27.35 1693.75 27.32
+1694.27 28.87 1694.40 27.33 1694.97 27.81 1695.37 26.65 1696.01 27.76
+1696.03 27.75 1696.75 26.25 1697.07 27.85 1697.56 26.25 1698.29 26.16
+1698.30 28.75 1699.34 28.00 1699.36 26.50 1699.41 27.81 1700.17 27.33
+1700.48 27.34 1701.04 27.76 1701.37 26.36 1701.60 27.83 1701.97 27.77
+1702.71 27.33 1703.55 26.25 1703.58 27.79 1703.64 27.82 1704.23 27.29
+1704.53 27.30 1704.75 28.75 1705.42 28.75 1705.51 27.37 1706.41 28.75
+1706.46 27.30 1707.38 26.25 1707.73 27.75 1708.15 27.82 1708.49 27.33
+1708.91 27.26 1709.41 27.83 1709.46 27.35 1710.19 27.82 1710.40 28.97
+1711.06 27.27 1711.24 27.31 1711.70 27.80 1712.15 27.37 1712.36 27.99
+1713.00 28.86 1713.57 27.26 1714.37 26.29 1714.42 27.80 1714.65 27.83
+1715.31 26.28 1715.47 27.28 1716.15 27.75 1716.32 27.90 1716.41 26.34
+1717.21 27.83 1717.66 27.30 1718.43 26.23 1718.51 27.80 1718.90 27.82
+1718.95 26.25 1719.54 27.29 1719.56 27.73 1720.75 26.19 1721.21 27.81
+1721.35 28.96 1721.70 27.28 1722.06 27.30 1722.70 27.79 1723.33 26.55
+1723.73 27.82 1723.74 27.82 1724.23 27.27 1724.69 27.33 1724.93 27.81
+1725.45 26.25 1725.96 27.84 1726.80 27.31 1727.09 27.77 1727.27 27.35
+1727.37 27.83 1728.32 26.24 1728.37 28.67 1728.86 27.32 1729.34 27.82
+1729.99 27.34 1730.21 27.81 1731.25 26.25 1731.28 27.78 1731.45 28.75
+1731.62 27.34 1732.40 27.81 1732.75 27.32 1733.01 27.32 1733.63 27.78
+1734.44 26.59 1734.66 27.81 1735.39 28.76 1735.45 26.24 1735.56 27.35
+1736.29 27.81 1736.45 26.32 1736.81 27.87 1737.95 26.55 1737.98 27.80
+1738.35 27.84 1738.45 26.43 1739.04 27.83 1739.55 27.24 1740.09 26.24
+1740.44 27.98 1741.20 27.84 1741.36 26.39 1741.72 27.25 1742.21 27.77
+1742.50 28.00 1742.55 26.28 1743.38 28.75 1743.90 27.28 1744.34 28.73
+1744.55 26.54 1745.37 27.82 1745.52 27.37 1745.59 27.77 1746.29 27.28
+1747.15 26.46 1747.16 28.75 1747.43 28.75 1747.83 27.33 1748.26 27.29
+1748.81 27.73 1749.56 28.75 1749.77 27.31 1750.23 27.77 1750.24 27.35
+1750.68 27.32 1751.42 27.99 1751.46 26.53 1751.62 27.81 1752.37 26.42
+1752.41 28.87 1753.47 28.75 1753.75 26.60 1754.42 27.80 1754.49 27.31
+1755.43 26.61 1755.53 27.74 1755.75 26.54 1755.91 27.82 1756.55 28.75
+1756.96 27.28 1757.55 26.23 1758.03 27.80 1758.45 28.75 1758.64 27.33
+1759.05 26.25 1759.86 27.75 1760.43 27.82 1760.56 26.25 1761.07 27.28
+1761.10 28.75 1761.82 27.34 1762.30 27.78 1763.11 27.33 1763.16 28.75
+1763.65 28.75 1763.66 27.31 1764.15 26.23 1764.51 27.97 1765.24 27.32
+1765.39 27.79 1766.44 26.42 1766.47 28.75 1766.75 26.32 1766.80 27.82
+1767.56 27.75 1767.63 27.29 1768.44 27.81 1768.52 27.36 1769.41 28.88
+1769.80 27.33 1770.15 28.78 1770.22 27.29 1771.35 27.80 1771.50 26.25
+1772.02 27.32 1772.10 28.81 1772.53 27.32 1773.28 27.80 1773.47 28.00
+1773.48 26.30 1774.51 26.26 1774.85 27.75 1775.35 26.54 1775.53 27.80
+1776.15 27.34 1776.45 27.80 1777.28 27.79 1777.46 26.27 1777.72 27.81
+1778.10 27.34 1778.41 26.31 1778.64 27.74 1779.54 26.49 1780.01 27.79
+1780.39 26.36 1780.75 28.80 1781.24 27.28 1781.66 27.77 1781.99 27.80
+1782.46 26.38 1782.70 27.31 1782.71 27.76 1783.40 27.31 1784.22 27.81
+1784.75 28.99 1785.05 27.31 1785.43 26.25 1785.55 28.84 1785.92 27.37
+1786.43 28.09 1786.74 27.76 1787.42 26.35 1787.95 26.25 1788.37 27.80
+1788.47 28.75 1788.50 26.59 1789.43 28.82 1790.10 27.32 1790.11 27.33
+1790.52 27.83 1790.95 28.96 1791.35 26.43 1792.15 28.90 1792.49 26.36
+1792.93 27.83 1793.19 27.33 1793.56 27.30 1793.77 27.74 1794.76 27.35
+1795.10 27.80 1795.43 28.92 1795.61 27.31 1796.53 27.80 1796.70 27.26
+1797.40 26.52 1797.47 27.96 1797.70 27.82 1798.04 27.30 1798.95 26.28
+1798.96 28.75 1799.50 28.96 1798.16 26.25 1798.53 27.30 1799.02 27.78
+1799.46 26.30 1799.50 27.86 1800.11 27.83 1800.63 26.17 1801.30 27.27
+1801.51 28.75 1801.55 27.85 1802.39 27.32 1802.75 27.32 1803.11 27.75
+1803.49 26.24 1803.54 28.79 1804.22 27.85 1804.70 27.28 1804.94 27.28
+1805.53 27.80 1806.45 26.54 1806.57 27.81 1807.13 27.30 1807.36 28.80
+1807.73 27.82 1808.27 27.32 1808.84 27.80 1809.08 27.27 1809.34 27.28
+1809.94 27.79 1810.11 26.25 1810.78 28.06 1810.80 27.90 1811.63 54.35
+1811.63 54.35 1812.44 67.65 1812.48 68.56 1813.31 81.98 1813.36 81.21
+1813.48 83.82 1814.47 82.94 1814.70 82.26 1815.16 83.08 1815.48 81.41
+1816.28 82.36 1816.58 83.75 1817.16 81.76 1817.33 82.99 1817.53 81.52
+1818.04 83.01 1818.49 81.25 1818.73 83.04 1819.58 83.75 1819.92 82.37
+1820.53 83.87 1820.59 82.37 1821.49 81.49 1821.54 83.10 1822.03 82.36
+1822.52 83.15 1822.78 82.34 1822.98 83.06 1823.59 82.35 1823.76 83.27
+1824.56 81.91 1824.97 83.75 1825.21 83.07 1825.59 81.69 1825.96 83.25
+1826.59 82.09 1827.57 83.35 1827.58 81.33 1828.11 83.75 1828.43 82.36
+1828.54 83.75 1829.19 82.34 1829.60 82.20 1829.61 83.09 1830.36 83.26
+1830.49 81.66 1831.33 82.30 1831.59 83.75 1832.52 81.92 1832.54 83.17
+1832.74 82.30 1833.28 83.07 1834.01 83.09 1834.27 82.34 1834.77 83.05
+1835.04 82.29 1835.16 83.75 1835.57 81.72 1836.36 83.75 1836.60 81.27
+1837.52 81.60 1837.55 83.57 1837.91 81.25 1838.32 83.04 1838.51 81.32
+1839.05 83.04 1839.71 83.75 1840.17 82.34 1840.51 83.33 1840.62 81.65
+1841.22 82.99 1841.64 82.34 1842.34 82.34 1842.58 83.75 1843.07 82.32
+1843.53 83.75 1843.62 83.96 1843.81 82.36 1844.59 82.36 1844.83 83.00
+1845.51 81.82 1845.62 83.75 1846.33 83.04 1846.70 82.32 1847.01 82.99
+1847.57 81.79 1848.03 82.31 1848.58 83.24 1848.90 82.34 1849.19 83.01
+1850.03 83.02 1850.21 81.25 1850.57 81.56 1850.62 83.05 1851.52 83.04
+1851.58 81.85 1852.53 81.20 1852.76 83.03 1853.52 81.87 1853.57 83.28
+1853.96 83.81 1853.99 82.34 1854.68 82.31 1854.96 83.09 1855.58 83.11
+1855.62 81.86 1856.59 81.73 1856.66 83.75 1857.13 83.01 1857.59 82.33
+1858.56 83.45 1858.64 81.88 1858.96 83.75 1859.09 82.39 1859.59 83.05
+1859.62 81.47 1860.77 83.75 1860.96 81.72 1861.56 81.71 1861.58 83.20
+1862.27 83.02 1862.66 81.33 1862.91 83.75 1863.46 82.36 1864.20 82.34
+1864.53 83.14 1864.79 82.36 1865.36 83.96 1865.65 81.33 1865.96 83.17
+1866.58 83.28 1866.65 81.85 1867.65 83.97 1867.70 82.30 1868.60 81.39
+1868.67 83.02 1869.55 83.05 1869.59 82.03 1870.16 81.98 1870.17 82.98
+1870.65 82.27 1870.88 83.04 1871.97 83.75 1872.09 82.23 1872.54 83.09
+1872.63 81.53 1873.08 83.06 1873.61 81.18 1874.17 83.75 1874.51 81.68
+1874.76 83.75 1875.04 82.28 1875.54 81.52 1875.62 83.04 1876.50 82.25
+1876.65 83.35 1877.62 81.38 1877.68 83.24 1878.22 83.04 1878.68 82.28
+1878.96 81.99 1879.67 83.34 1879.67 83.34 1880.16 82.28 1880.62 81.79
+1881.16 83.32 1881.62 82.35 1881.86 83.05 1882.68 81.75 1882.77 83.75
+1883.29 83.04 1883.69 81.48 1883.96 83.12 1884.58 81.48 1885.17 83.75
+1885.21 82.36 1885.76 81.56 1886.24 83.03 1886.91 83.03 1886.96 81.69
+1887.57 83.12 1887.60 81.90 1888.57 83.07 1888.63 81.31 1889.52 82.34
+1889.67 83.08 1889.90 83.01 1890.33 82.32 1890.69 83.75 1891.01 82.33
+1891.59 83.09 1891.76 82.30 1892.60 83.25 1892.69 81.78 1893.59 81.52
+1893.69 83.05 1894.44 82.35 1894.62 83.93 1895.59 83.09 1895.63 81.77
+1895.63 81.77 1895.66 83.75 1896.83 82.35 1897.12 83.01 1897.71 81.73
+1897.78 83.00 1898.61 83.30 1898.71 81.44 1899.26 82.97 1899.63 82.37
+1900.61 81.76 1900.66 83.75 1900.67 83.75 1901.09 82.37 1901.56 81.79
+1901.64 83.11 1902.96 83.02 1903.17 81.27 1903.63 81.86 1903.66 83.11
+1904.39 83.02 1904.62 82.34 1905.12 83.03 1905.51 82.35 1906.25 82.35
+1906.53 83.06 1906.76 81.43 1906.77 83.75 1907.62 82.36 1907.96 83.08
+1908.62 81.79 1908.65 83.20 1909.36 81.82 1909.69 83.98 1910.65 83.80
+1910.68 81.29 1911.31 82.38 1911.57 83.08 1911.63 83.75 1912.08 82.30
+1912.81 82.32 1913.06 83.12 1913.71 81.61 1913.83 82.99 1914.64 83.75
+1914.70 81.63 1915.16 81.84 1915.24 83.03 1915.99 83.02 1916.62 82.05
+1916.67 82.33 1916.73 83.27 1917.47 83.04 1917.73 81.34 1918.59 82.38
+1918.68 83.98 1919.16 83.75 1919.96 82.34 1920.38 83.02 1920.67 82.35
+1921.46 82.38 1921.57 83.75 1921.73 83.02 1921.76 81.59 1922.62 83.03
+1922.67 81.60 1923.73 81.55 1923.97 83.01 1924.68 81.51 1924.72 83.50
+1925.51 83.75 1925.76 82.29 1926.11 83.75 1926.66 81.57 1926.77 83.75
+1927.19 82.34 1927.66 83.24 1927.76 81.99 1928.73 82.36 1928.97 83.75
+1929.57 83.75 1929.74 81.47 1930.74 83.00 1930.85 82.30 1931.56 82.28
+1931.74 83.11 1932.01 81.62 1932.59 83.01 1932.67 83.75 1932.99 82.34
+1933.69 84.05 1933.80 82.31 1934.70 81.60 1934.97 83.75 1935.57 83.75
+1935.69 81.46 1936.69 83.92 1936.78 81.84 1936.79 82.07 1937.63 46.93
+1937.63 46.93 1938.47 10.53 1938.47 10.53 1939.16 4.67 1939.65 6.17
+1939.70 4.93 1940.37 6.25 1940.73 4.85 1941.57 6.25 1941.83 2.55 1941.84
+2.63 1942.56 -6.25 1942.77 -5.00 1942.86 -6.25 1943.70 -5.00 1943.78
+-6.25 1944.66 -4.67 1944.78 -5.70 1945.66 -6.10 1945.70 -4.67 1946.68
+-4.82 1946.72 -6.25 1947.57 -6.25 1947.67 -4.89 1947.96 -6.25 1948.18
+-5.30 1948.77 -4.65 1949.08 -5.63 1949.71 -4.81 1949.79 -6.25 1950.51
+-4.63 1950.77 -6.25 1951.72 -6.00 1951.78 -5.00 1952.36 -4.73 1952.66
+-6.19 1952.76 -6.03 1953.36 -4.65 1953.68 -4.59 1953.79 -5.64 1954.69
+-6.25 1954.72 -4.68 1955.69 -4.68 1955.77 -6.25 1956.57 -6.25 1956.71
+-4.81 1957.17 -6.25 1957.72 -4.64 1957.96 -6.25 1958.36 -4.86 1958.67
+-6.32 1958.76 -4.86 1959.96 -4.59 1960.17 -6.12 1960.56 -4.61 1960.73
+-6.65 1961.69 -6.11 1961.75 -4.62 1962.37 -6.25 1962.76 -4.58 1963.36
+-4.58 1963.57 -6.25 1963.69 -4.86 1963.73 -6.25 1964.76 -4.91 1964.79
+-6.21 1965.36 -6.25 1965.68 -4.86 1966.68 -4.60 1966.81 -6.05 1967.66
+-6.25 1967.79 -5.30 1968.56 -4.55 1968.71 -6.03 1968.77 -4.67 1969.17
+-6.25 1969.71 -6.15 1969.74 -4.63 1970.71 -4.63 1970.76 -6.79 1971.36
+-6.25 1971.70 -4.61 1972.73 -4.82 1972.77 -6.59 1973.37 -6.25 1973.71
+-4.60 1973.76 -4.66 1973.80 -5.75 1974.74 -4.80 1975.34 -5.64 1975.71
+-4.60 1975.73 -6.25 1976.72 -6.69 1976.78 -4.65 1977.11 -6.25 1977.36
+-5.00 1978.77 -6.21 1978.78 -5.00 1978.80 -4.87 1979.43 -5.62 1979.79
+-4.63 1979.82 -6.25 1980.86 -6.14 1980.88 -4.64 1981.77 -6.29 1981.80
+-4.83 1982.51 -4.83 1982.82 -6.25 1983.17 -5.00 1983.74 -6.25 1984.10
+-5.64 1984.56 -4.58 1984.80 -6.09 1984.96 -4.60 1985.56 -4.60 1985.66
+-6.25 1986.41 -5.62 1986.73 -4.83 1987.76 -6.15 1987.77 -4.87 1988.57
+-6.25 1988.81 -4.67 1989.16 -6.25 1989.36 -4.83 1989.79 -6.25 1989.87
+-5.33 1990.79 -4.47 1991.37 -6.25 1991.80 -5.98 1991.82 -4.79 1992.72
+-4.83 1992.82 -6.09 1993.17 -5.00 1993.73 -6.33 1994.37 -6.25 1994.74
+-4.59 1994.75 -4.59 1995.37 -6.25 1995.79 -6.15 1996.13 -5.28 1996.74
+-4.63 1996.83 -6.10 1997.28 -5.65 1997.73 -4.65 1998.78 -4.69 1998.85
+-5.63 1998.97 -6.25 1999.56 -4.86 1999.82 -4.85 1999.84 -6.25 2000.76
+-5.19 2000.84 -6.33 2001.75 -6.04 2001.79 -4.84 2002.61 -4.62 2002.79
+-6.29 2003.31 -6.25 2003.56 -4.80 2004.77 -4.83 2004.81 -6.62 2004.83
+-6.25 2005.58 -5.29 2005.79 -4.62 2005.87 -6.13 2006.79 -4.62 2006.97
+-6.25 2007.76 -4.63 2007.85 -6.29 2008.81 -6.13 2008.86 -4.53 2009.31
+-5.30 2009.37 -6.25 2010.23 -5.64 2010.36 -5.00 2010.78 -4.65 2010.97
+-6.25 2011.56 -6.25 2011.79 -5.00 2012.84 -4.90 2013.11 -6.25 2013.81
+-4.83 2013.96 -6.25 2014.56 -6.25 2014.79 -4.83 2014.97 -6.25 2015.16
+-4.62 2015.79 -4.84 2016.16 -6.25 2016.78 -6.25 2017.36 -5.00 2017.82
+-4.61 2017.87 -6.25 2018.78 -5.89 2018.91 -4.66 2019.17 -6.25 2019.75
+-4.84 2020.31 -4.88 2020.56 -6.17 2020.83 -6.25 2021.56 -4.90 2021.88
+-6.25 2021.98 -5.33 2022.77 -6.71 2022.87 -4.88 2023.41 -6.18 2023.88
+-4.85 2024.77 -4.83 2024.88 -6.25 2025.51 -6.25 2025.79 -4.87 2025.88
+-6.08 2026.46 -4.60 2026.79 -6.25 2026.96 -4.60 2027.84 -4.60 2028.16
+-6.25 2028.56 -4.83 2028.83 -6.31 2029.41 -6.25 2029.87 -5.00 2030.37
+-6.25 2030.81 -4.89 2030.97 -5.00 2031.56 -6.25 2031.87 -4.84 2031.97
+-6.25 2032.84 -4.76 2033.17 -6.25 2033.46 -6.25 2034.11 -4.86 2034.36
+-4.83 2034.83 -6.25 2035.57 -6.25 2035.78 -4.82 2036.06 -4.84 2036.32
+-5.63 2036.79 -4.59 2037.16 -6.25 2037.76 -4.60 2037.85 -6.13 2038.90
+-6.74 2039.21 -4.83 2039.84 -6.65 2039.89 -4.86 2040.76 -6.09 2040.90
+-4.61 2040.97 -4.87 2041.01 -6.25 2041.89 -4.63 2041.91 -6.25 2042.82
+-4.85 2042.91 -6.25 2043.56 -6.25 2043.91 -4.64 2044.56 -4.67 2044.91
+-6.25 2045.36 -4.83 2045.80 -6.19 2046.57 -6.25 2046.80 -4.60 2046.87
+-4.80 2046.91 -6.25 2047.76 -4.80 2047.92 -6.25 2048.57 -6.25 2048.86
+-5.18 2049.56 -4.63 2049.57 -6.25 2050.80 -6.03 2050.83 -4.63 2051.17
+-6.25 2051.81 -4.64 2051.92 -6.25 2052.56 -4.86 2052.85 -4.82 2052.92
+-6.25 2053.71 -6.25 2054.06 -4.84 2054.86 -6.25 2054.90 -4.67 2055.57
+-6.25 2055.96 -4.65 2056.82 -4.87 2056.83 -5.79 2056.96 -4.80 2057.56
+-6.25 2057.91 -4.60 2058.36 -6.25 2058.83 -6.14 2058.93 -5.00 2059.76
+-6.25 2059.90 -4.85 2060.87 -6.08 2060.91 -4.88 2061.36 -5.00 2061.88
+-6.68 2061.96 -4.57 2062.56 -6.21 2062.84 -6.40 2062.93 -5.00 2063.77
+-6.25 2063.92 -4.86 2064.84 -6.25 2065.01 -4.86 2065.83 -4.84 2065.93
+-6.17 2066.87 -6.35 2066.93 -5.00 2067.37 -6.25 2067.71 -4.87 2067.84
+-4.83 2068.31 -6.25 2068.83 -4.64 2068.89 -6.71 2069.84 -6.14 2069.85
+-4.85 2070.89 -4.60 2070.97 -6.25 2071.36 -6.25 2071.88 -4.61 2072.31
+-6.25 2072.84 -4.84 2072.89 -4.81 2073.17 -6.25 2073.95 -6.18 2074.16
+-4.86 2074.84 -6.17 2074.90 -4.63 2075.85 -6.19 2075.95 -4.64 2076.56
+-6.18 2076.85 -4.91 2077.73 -5.68 2077.90 -4.65 2077.92 -5.99 2077.93
+-4.80 2078.89 -6.25 2079.26 -4.61 2079.85 -5.78 2079.95 -4.60 2080.56
+-4.80 2080.77 -6.25 2081.36 -6.25 2081.94 -4.82 2082.17 -5.63 2082.85
+-4.83 2082.96 -4.86 2083.55 -5.63 2083.88 -4.83 2084.51 -6.12 2084.76
+-5.00 2084.88 -6.25 2085.87 -6.10 2085.97 -4.83 2086.57 -6.25 2086.91
+-4.65 2087.17 -6.25 2087.88 -4.66 2088.65 -6.11 2088.66 -5.00 2088.85
+-4.65 2089.26 -6.25 2089.88 -6.17 2090.16 -4.84 2090.89 -6.25 2090.94
+-4.87 2091.77 -6.25 2091.91 -4.57 2092.37 -6.25 2092.87 -4.83 2093.53
+-5.62 2093.81 -4.88 2093.97 -4.86 2093.99 -6.25 2094.87 -4.80 2094.93
+-6.25 2095.85 -6.10 2095.93 -4.90 2096.93 -4.60 2096.97 -6.25 2097.86
+-6.25 2097.90 -4.66 2098.17 -6.24 2098.77 -4.63 2098.93 -6.05 2099.56
+-4.59 2099.96 -4.58 2100.01 -6.12 2100.99 -6.70 2101.02 -5.00 2101.56
+-4.83 2101.99 -6.08 2102.37 -6.25 2102.95 -4.87 2103.86 -6.18 2103.91
+-4.55 2103.98 -4.77 2104.77 -6.25 2104.90 -6.08 2104.99 -5.26 2105.89
+-4.82 2106.00 -5.79 2106.56 -5.00 2106.99 -6.28 2107.56 -6.25 2107.99
+-4.84 2108.89 -4.87 2108.98 -6.11 2109.01 -6.25 2109.16 -4.93 2109.97
+-4.84 2110.37 -6.25 2110.86 -6.25 2111.26 -5.30 2111.57 -6.25 2111.94
+-4.84 2113.01 -4.82 2113.16 -6.25 2113.94 -4.60 2114.00 -6.63 2114.56
+-4.86 2114.87 -5.62 2114.91 -4.82 2114.98 -6.13 2115.95 -4.62 2116.01
+-6.09 2116.91 -6.34 2117.36 -4.89 2117.61 -4.65 2117.64 -5.61 2118.98
+-6.25 2119.03 -4.89 2119.16 -4.62 2119.76 -6.25 2119.94 -4.63 2120.02
+-6.21 2121.03 -5.11 2121.37 -6.25 2121.92 -6.13 2122.00 -4.64 2122.76
+-4.63 2123.01 -6.13 2123.93 -6.52 2124.00 -4.89 2124.25 -4.59 2124.30
+-5.61 2124.95 -5.00 2125.76 -6.25 2126.17 -6.25 2126.56 -4.61 2126.76
+-5.00 2126.97 -6.25 2127.65 -4.83 2128.07 -5.64 2128.38 -6.25 2129.03
+-4.86 2129.61 -5.00 2129.97 -6.31 2130.03 -5.00 2130.83 -10.05 2130.83
+-10.05 2131.36 -28.75 2131.75 -27.84 2131.86 -27.27 2132.66 -27.78
+2132.94 -26.35 2133.51 -28.82 2133.86 -27.29 2134.20 -27.32 2134.98
+-27.94 2135.62 -27.77 2135.87 -27.33 2135.99 -28.75 2136.05 -26.25
+2136.96 -26.35 2137.16 -28.75 2137.63 -27.78 2138.03 -26.25 2139.03
+-27.83 2139.05 -26.45 2139.66 -26.25 2140.04 -27.85 2140.31 -27.76
+2140.36 -27.29 2140.99 -28.80 2141.01 -26.20 2141.84 -27.80 2141.99
+-26.48 2142.67 -27.33 2143.43 -27.79 2143.43 -27.79 2144.00 -26.57
+2144.61 -27.27 2144.63 -27.76 2145.27 -27.33 2145.87 -27.81 2146.01
+-26.28 2146.14 -27.83 2147.56 -26.25 2147.59 -27.75 2148.01 -26.25
+2148.25 -27.82 2148.49 -27.79 2149.29 -27.34 2149.57 -27.27 2150.13
+-27.75 2150.55 -27.89 2150.56 -27.32 2151.06 -27.86 2151.54 -27.28
+2152.05 -26.30 2152.51 -27.81 2152.97 -27.86 2153.12 -27.34 2153.64
+-27.76 2153.87 -27.32 2154.46 -27.35 2155.08 -28.75 2155.56 -26.25
+2155.77 -28.75 2156.03 -27.32 2156.85 -27.85 2156.87 -27.80 2157.05
+-26.61 2157.85 -28.86 2158.37 -27.30 2158.73 -27.82 2158.76 -26.54
+2159.50 -27.76 2159.98 -26.44 2160.41 -27.29 2160.98 -27.76 2161.13
+-26.58 2161.34 -27.82 2162.63 -27.22 2162.73 -27.77 2162.90 -27.31
+2163.37 -28.75 2163.97 -27.85 2164.10 -27.33 2164.70 -27.76 2164.73
+-27.30 2165.79 -27.90 2165.80 -27.33 2166.17 -26.25 2166.18 -27.76
+2167.12 -27.33 2167.50 -27.83 2168.00 -27.95 2168.36 -26.25 2169.03
+-26.21 2169.08 -28.75 2169.48 -27.35 2169.80 -27.81 2170.98 -28.77
+2171.05 -26.25 2171.65 -28.81 2171.99 -26.53 2172.11 -27.80 2172.64
+-27.35 2173.33 -27.30 2173.64 -27.78 2174.05 -27.82 2174.09 -26.84
+2175.03 -26.34 2175.05 -27.78 2175.57 -28.75 2176.09 -26.47 2176.35
+-27.33 2176.99 -27.84 2177.41 -27.78 2177.70 -27.30 2178.09 -27.90
+2178.65 -26.53 2179.01 -26.47 2179.36 -27.80 2180.05 -27.26 2180.30
+-27.74 2180.43 -27.30 2181.00 -27.96 2181.36 -26.46 2181.92 -27.75
+2182.15 -27.32 2182.83 -27.78 2183.21 -27.90 2183.73 -27.31 2183.84
+-27.74 2183.93 -27.30 2184.60 -27.33 2185.16 -28.75 2185.70 -27.78
+2186.14 -27.32 2186.54 -27.28 2187.00 -28.87 2187.25 -27.35 2187.74
+-27.81 2187.95 -27.76 2188.22 -27.27 2189.21 -27.32 2189.57 -27.78
+2190.11 -28.75 2190.32 -27.34 2191.20 -27.77 2191.31 -27.27 2191.62
+-27.34 2192.07 -27.95 2192.19 -27.79 2192.89 -27.30 2193.07 -27.27
+2193.71 -28.91 2194.56 -28.82 2194.57 -27.28 2194.93 -27.30 2195.30
+-28.81 2195.53 -27.82 2196.05 -26.54 2196.62 -27.81 2196.77 -27.29
+2197.46 -27.26 2197.61 -28.75 2198.21 -27.34 2198.81 -28.75 2199.08
+-26.25 2199.09 -27.75 2199.87 -27.36 2200.04 -27.90 2201.01 -28.75
+2201.29 -27.34 2201.67 -27.27 2201.68 -27.77 2202.41 -27.82 2202.82
+-27.32 2203.49 -27.31 2203.50 -27.78 2203.97 -28.79 2204.06 -27.32
+2205.03 -28.91 2205.41 -27.30 2206.15 -26.16 2206.17 -28.75 2206.82
+-27.78 2206.96 -26.25 2207.96 -27.27 2207.99 -27.77 2208.88 -27.95
+2208.91 -27.30 2209.13 -27.90 2209.16 -27.30 2210.01 -27.74 2210.49
+-27.32 2210.67 -27.25 2211.44 -27.82 2211.48 -27.81 2212.25 -27.31
+2212.35 -27.33 2212.89 -27.73 2213.48 -27.81 2213.76 -26.50 2214.13
+-27.76 2214.36 -26.25 2214.88 -27.28 2215.40 -27.78 2215.77 -27.83
+2216.05 -26.45 2216.51 -27.73 2216.90 -27.32 2217.41 -26.25 2218.17
+-28.75 2218.36 -26.46 2218.86 -28.75 2219.56 -26.25 2219.77 -27.91
+2220.07 -26.67 2220.10 -28.02 2221.50 -27.26 2221.51 -27.75 2221.97
+-27.35 2222.17 -28.75 2222.41 -27.80 2223.21 -27.32 2223.91 -27.30
+2223.92 -27.77 2224.12 -27.88 2224.28 -27.34 2225.16 -27.85 2225.31
+-27.30 2225.96 -27.34 2226.13 -27.81 2227.12 -28.82 2227.42 -27.37
+2227.70 -27.26 2227.71 -27.77 2228.27 -27.34 2228.75 -27.80 2229.18
+-26.25 2229.39 -27.77 2230.11 -26.43 2230.79 -27.88 2230.79 -27.88
+2231.12 -26.24 2232.37 -28.77 2232.38 -27.29 2232.60 -27.33 2233.17
+-27.98 2233.44 -27.78 2233.88 -27.33 2234.19 -26.25 2234.64 -27.74
+2235.13 -27.82 2235.37 -26.54 2236.04 -27.74 2236.07 -26.35 2236.84
+-27.30 2237.30 -27.81 2238.17 -27.88 2238.30 -27.36 2239.13 -26.32
+2239.14 -27.76 2239.23 -27.33 2239.73 -27.82 2240.13 -27.86 2240.49
+-27.29 2241.44 -27.25 2241.47 -27.87 2241.83 -27.91 2241.94 -27.30
+2242.76 -27.29 2243.19 -28.74 2243.97 -27.83 2244.14 -26.87 2244.94
+-27.76 2245.01 -27.31 2245.33 -27.28 2245.89 -27.81 2246.21 -28.75
+2246.71 -27.33 2247.23 -27.79 2247.50 -27.30 2248.21 -28.09 2248.41
+-26.25 2248.87 -27.34 2249.19 -28.89 2249.42 -27.76 2249.69 -27.30
+2250.17 -27.91 2250.82 -27.36 2251.04 -27.76 2251.79 -12.58 2251.79
+-12.58 2252.13 -4.28 2252.76 -4.79 2253.13 -6.25 2254.11 -6.27 2254.15
+-4.83 2254.76 -6.25 2255.12 -4.83 2255.21 -4.48 2255.76 -6.25 2256.45
+-4.60 2256.71 -6.25 2257.17 -6.25 2257.20 -4.84 2257.97 -5.00 2258.23
+-6.25 2259.13 -4.83 2259.33 -6.57 2259.35 -6.41 2260.18 -41.37 2260.19
+-41.31 2261.03 -78.28 2261.03 -78.88 2261.45 -83.17 2262.15 -83.15
+2262.20 -81.94 2263.11 -83.16 2263.18 -81.63 2263.71 -83.75 2264.05
+-81.47 2264.91 -81.33 2265.23 -83.75 2265.23 -83.75 2265.60 -82.31
+2266.17 -81.54 2266.65 -83.05 2267.13 -81.69 2267.23 -83.75 2267.96
+-81.58 2268.19 -83.75 2269.20 -81.19 2269.41 -83.04 2269.56 -83.75
+2270.22 -81.98 2270.36 -83.75 2270.68 -82.34 2271.13 -81.58 2271.56
+-83.10 2272.27 -83.02 2272.73 -82.31 2273.14 -83.23 2273.17 -81.87
+2273.76 -83.15 2274.30 -82.32 2275.18 -83.55 2275.24 -82.03 2275.67
+-82.21 2275.93 -83.01 2276.19 -82.09 2276.68 -83.09 2277.15 -82.22
+2277.19 -83.81 2278.18 -83.23 2278.23 -81.86 2279.24 -81.23 2279.51
+-83.12 2280.17 -83.75 2280.25 -81.79 2280.40 -83.02 2281.10 -81.92
+2281.26 -83.75 2281.35 -81.55 2282.23 -83.91 2282.28 -82.37 2283.13
+-82.03 2283.21 -83.22 2284.00 -83.13 2284.14 -81.77 2284.69 -83.00
+2285.15 -81.23 2286.17 -82.04 2286.19 -83.12 2286.50 -82.39 2286.77
+-83.07 2287.26 -81.35 2287.61 -83.00 2288.20 -81.38 2288.30 -82.99
+2288.97 -83.75 2289.21 -82.01 2290.17 -81.73 2290.40 -83.14 2291.03
+-82.36 2291.21 -83.75 2291.71 -82.34 2291.90 -83.07 2292.17 -81.40
+2292.74 -83.05 2293.22 -83.86 2293.76 -82.37 2293.99 -83.01 2294.23
+-82.01 2294.65 -82.30 2294.76 -83.75 2295.87 -82.33 2296.25 -83.10
+2296.56 -83.75 2296.67 -82.32 2297.23 -81.57 2297.70 -83.38 2298.13
+-82.25 2298.28 -83.75 2299.27 -83.20 2299.61 -82.25 2300.21 -81.45
+2300.28 -83.75 2301.05 -82.20 2301.27 -83.46 2301.35 -83.29 2301.40
+-82.25 2302.23 -83.75 2302.28 -81.84 2303.25 -82.25 2303.53 -83.05
+2304.23 -82.03 2304.27 -83.38 2304.96 -83.36 2305.23 -81.84 2305.71
+-83.11 2306.00 -81.51 2306.93 -82.23 2307.17 -83.42 2307.23 -83.15
+2307.65 -82.19 2308.23 -82.02 2308.29 -83.75 2309.25 -81.41 2309.32
+-83.10 2309.76 -83.75 2309.85 -82.18 2310.81 -83.06 2311.29 -81.25
+2312.23 -81.33 2312.25 -83.75 2312.28 -83.75 2312.77 -82.25 2313.36
+-81.75 2313.71 -83.12 2314.35 -81.45 2314.46 -83.13 2314.96 -81.25
+2315.17 -83.25 2315.73 -82.28 2315.89 -83.37 2316.51 -83.75 2317.11
+-82.32 2317.34 -83.12 2317.85 -82.33 2318.20 -83.06 2318.25 -81.93
+2319.05 -82.34 2319.52 -83.21 2320.21 -83.15 2320.25 -82.04 2320.96
+-83.75 2321.36 -81.25 2322.01 -82.38 2322.32 -83.75 2322.56 -81.59
+2323.16 -83.21 2323.22 -83.75 2323.67 -82.35 2324.20 -81.52 2324.56
+-83.75 2325.20 -81.25 2325.27 -83.75 2325.86 -82.32 2326.09 -83.00
+2326.84 -83.10 2327.15 -82.31 2328.00 -82.23 2328.22 -83.28 2328.32
+-83.75 2328.73 -82.34 2329.32 -81.74 2329.75 -83.10 2330.32 -81.60
+2330.47 -83.04 2331.16 -83.75 2331.21 -81.98 2331.62 -82.22 2331.86
+-83.75 2332.77 -83.75 2333.23 -81.62 2333.27 -83.60 2333.33 -81.51
+2334.32 -81.34 2334.86 -83.02 2335.31 -83.89 2335.33 -81.25 2336.28
+-83.21 2336.55 -81.53 2337.27 -84.00 2337.37 -81.25 2337.66 -83.75
+2338.17 -82.31 2338.33 -81.52 2339.08 -83.15 2339.16 -83.46 2339.33
+-81.94 2340.36 -81.32 2340.37 -83.75 2340.96 -83.75 2341.33 -81.68
+2342.23 -81.59 2342.33 -83.75 2343.25 -81.24 2343.27 -83.75 2343.98
+-82.29 2344.17 -83.10 2344.31 -81.56 2344.36 -83.75 2345.23 -83.75
+2345.76 -81.84 2346.30 -83.10 2346.33 -81.83 2346.93 -82.30 2347.16
+-83.75 2347.66 -81.25 2347.91 -83.75 2348.59 -83.04 2349.07 -82.30
+2349.25 -83.62 2349.76 -81.15 2350.09 -83.23 2350.51 -82.35 2351.11
+-82.34 2351.35 -84.01 2352.33 -81.82 2352.36 -83.42 2353.00 -83.05
+2353.43 -82.38 2353.53 -83.33 2353.54 -82.16 2354.31 -81.85 2354.35
+-83.24 2355.26 -81.91 2355.91 -83.02 2356.20 -82.28 2356.51 -83.75
+2357.27 -81.25 2357.32 -83.65 2357.65 -82.26 2358.11 -82.99 2358.86
+-82.98 2359.11 -82.25 2359.36 -83.13 2359.85 -82.26 2360.29 -81.58
+2360.87 -83.30 2361.31 -82.27 2361.60 -83.08 2362.37 -83.75 2362.56
+-81.43 2363.26 -81.81 2363.31 -83.16 2363.76 -83.75 2364.30 -81.19
+2364.46 -83.21 2364.99 -82.23 2365.21 -83.16 2365.25 -81.81 2366.43
+-82.25 2366.63 -83.08 2367.17 -82.16 2367.26 -83.93 2367.96 -81.13
+2368.21 -83.28 2368.64 -82.25 2368.87 -83.10 2369.56 -83.75 2369.80
+-81.46 2370.76 -83.92 2370.81 -82.31 2371.36 -83.75 2371.57 -82.20
+2371.96 -83.93 2372.37 -81.74 2373.25 -83.30 2373.33 -81.68 2373.77
+-82.31 2373.95 -83.22 2374.51 -82.31 2374.97 -83.75 2375.96 -81.27
+2375.97 -83.75 2376.79 -82.27 2376.86 -83.22 2377.43 -82.34 2377.63
+-83.07 2378.33 -81.97 2378.39 -83.75 2379.13 -83.03 2379.29 -81.82
+2379.57 -82.35 2379.96 -83.75 2380.41 -82.20 2380.43 -83.32 2381.28
+-83.25 2381.32 -81.76 2382.65 -81.94 2382.73 -83.01 2383.36 -81.66
+2383.39 -83.17 2384.14 -83.23 2384.31 -81.43 2384.81 -83.00 2385.23
+-82.35 2385.63 -83.03 2385.95 -82.32 2386.26 -83.75 2386.97 -81.79
+2387.16 -83.75 2387.30 -81.62 2388.31 -83.75 2388.40 -81.87 2388.77
+-83.75 2388.83 -82.29 2389.59 -82.31 2389.89 -83.05 2390.41 -83.75
+2390.56 -81.85 2391.32 -83.69 2391.40 -82.05 2392.39 -81.70 2392.76
+-83.16 2393.26 -82.23 2393.38 -83.75 2394.30 -83.18 2394.37 -82.22
+2395.32 -81.60 2395.37 -83.26 2395.71 -83.10 2396.19 -82.26 2396.40
+-81.87 2396.41 -83.37 2397.32 -81.86 2397.37 -83.11 2398.36 -83.75
+2398.43 -81.13 2399.40 -83.35 2399.45 -82.04 2400.09 -83.06 2400.34
+-81.69 2400.63 -82.24 2400.83 -83.09 2401.49 -81.79 2401.54 -83.25
+2402.36 -83.75 2402.46 -81.32 2403.45 -81.52 2403.79 -83.18 2404.36
+-81.61 2404.45 -83.11 2404.96 -82.29 2405.23 -83.19 2405.59 -83.95
+2405.75 -82.10 2406.41 -81.42 2406.64 -83.10 2407.39 -83.64 2407.45
+-82.28 2408.67 -82.36 2408.80 -83.04 2409.36 -81.34 2409.47 -83.75
+2409.83 -81.27 2410.39 -83.69 2410.79 -83.75 2410.81 -82.31 2411.83
+-82.99 2412.09 -82.24 2412.39 -81.77 2412.43 -83.16 2413.35 -83.06
+2413.57 -82.31 2413.99 -83.01 2414.46 -81.38 2415.34 -83.75 2415.40
+-82.19 2416.01 -83.00 2416.38 -81.68 2416.48 -82.23 2416.76 -83.10
+2417.41 -81.57 2417.49 -83.75 2418.46 -81.43 2418.48 -83.18 2418.99
+-83.75 2419.40 -82.10 2420.33 -83.75 2420.41 -81.79 2420.66 -82.62
+2421.49 -49.86 2421.50 -49.78 2422.33 -13.43 2422.34 -13.43 2422.67
+-4.84 2423.46 -6.25 2423.49 -4.62 2424.19 -5.00 2424.38 -6.34 2425.43
+-4.57 2425.53 -6.25 2426.38 -4.78 2426.45 -6.25 2426.68 -6.15 2426.69
+-5.00 2427.40 -6.34 2428.19 -4.83 2428.45 -4.79 2428.80 -6.25 2429.40
+-4.74 2429.50 -6.25 2430.33 -5.27 2430.46 -6.25 2431.44 -5.97 2431.47
+-4.58 2432.19 -6.07 2432.38 -4.82 2432.50 -6.25 2432.99 -4.79 2433.45
+-5.98 2433.79 -4.89 2434.29 -6.25 2434.49 -4.75 2435.43 -4.84 2435.50
+-6.25 2435.79 -5.00 2436.49 -6.11 2437.40 -6.56 2437.44 -4.65 2437.47
+-6.25 2437.51 -4.79 2438.39 -4.90 2438.44 -6.25 2439.50 -6.56 2439.78
+-4.61 2440.45 -4.80 2440.51 -6.25 2441.49 -4.81 2441.51 -6.25 2441.74
+-5.28 2442.19 -6.25 2442.51 -5.00 2442.79 -6.25 2443.47 -4.87 2443.50
+-6.67 2444.43 -4.61 2444.51 -6.25 2445.23 -6.24 2445.46 -4.88 2446.42
+-6.25 2446.45 -4.85 2446.98 -4.84 2447.49 -6.14 2447.79 -6.12 2447.79
+-5.00 2448.41 -4.66 2448.53 -6.63 2449.50 -4.83 2449.52 -6.25 2450.43
+-4.84 2450.79 -6.12 2451.13 -4.65 2451.43 -6.25 2452.39 -6.25 2452.43
+-4.61 2452.59 -6.25 2453.31 -5.29 2453.43 -4.60 2453.45 -6.12 2454.47
+-6.11 2454.48 -4.83 2455.48 -6.15 2455.51 -4.63 2455.99 -6.25 2456.41
+-4.85 2456.78 -4.61 2457.53 -6.68 2457.79 -6.25 2458.18 -4.90 2458.49
+-6.25 2459.19 -5.00 2459.48 -4.65 2459.63 -6.16 2460.44 -6.25 2460.49
+-4.84 2460.99 -6.25 2461.03 -5.32 2461.99 -6.25 2462.65 5.49 2463.19
+6.22 2463.43 4.88 2463.53 6.25 2463.98 4.65 2464.59 6.25 2464.79 4.84
+2465.53 6.40 2465.63 4.66 2466.43 4.85 2466.53 6.25 2467.47 4.66 2467.51
+6.25 2468.33 6.25 2468.45 4.60 2468.54 4.65 2468.59 6.25 2469.45 4.50
+2469.59 6.25 2470.53 4.64 2470.73 6.25 2471.39 4.81 2471.68 6.25 2471.93
+6.25 2472.49 4.81 2472.88 4.79 2473.52 6.62 2473.79 5.00 2474.39 6.25
+2474.58 4.65 2475.19 6.25 2475.45 4.77 2475.51 6.25 2476.47 6.18 2476.54
+4.69 2477.47 6.19 2477.58 4.63 2478.46 4.70 2478.55 6.38 2478.79 6.25
+2479.38 4.89 2479.46 4.82 2479.59 6.25 2480.46 6.74 2480.58 4.86 2481.23
+6.25 2481.48 4.89 2482.52 4.63 2482.56 6.71 2483.43 6.08 2483.51 4.63
+2484.19 5.00 2484.48 6.12 2484.53 6.15 2484.58 4.63 2485.39 6.25 2485.99
+5.00 2486.48 4.53 2486.59 6.25 2487.19 6.25 2487.38 4.84 2488.46 4.64
+2488.69 5.67 2488.99 6.25 2489.33 4.61 2489.69 6.25 2490.18 4.80 2490.51
+4.64 2491.19 6.25 2491.49 5.29 2491.59 6.12 2492.53 6.25 2492.79 4.65
+2492.99 6.25 2493.19 5.32 2493.99 4.65 2494.51 6.25 2494.59 4.67 2494.59
+6.25 2495.59 6.58 2495.79 4.81 2496.47 4.84 2496.55 6.25 2497.53 4.69
+2497.58 6.63 2498.19 4.65 2498.38 6.25 2498.99 6.25 2499.56 4.84 2499.78
+4.93 2499.99 6.25 2500.49 4.81 2500.52 6.25 2501.50 4.63 2501.56 6.25
+2502.14 6.25 2502.50 4.63 2503.38 5.00 2503.55 6.62 2504.50 6.00 2504.55
+4.82 2504.66 5.32 2505.19 6.25 2505.51 6.25 2505.56 4.64 2506.51 4.94
+2506.54 6.40 2507.55 4.64 2507.60 6.58 2508.18 4.84 2508.51 6.25 2509.39
+6.25 2509.60 4.75 2509.79 6.25 2510.39 5.00 2510.56 6.82 2510.78 4.81
+2511.53 4.87 2511.57 6.14 2512.39 5.00 2512.51 6.13 2513.19 6.25 2513.60
+5.27 2514.39 5.00 2514.60 6.68 2514.80 5.62 2515.56 4.63 2515.79 4.81
+2515.99 5.64 2516.51 6.60 2516.64 5.34 2517.53 6.25 2517.73 4.67 2518.61
+4.64 2518.63 6.25 2518.99 6.25 2519.61 4.54 2519.79 6.25 2520.55 4.64
+2521.13 6.25 2521.39 4.82 2521.66 6.64 2521.99 4.62 2522.63 6.17 2522.99
+5.00 2523.52 6.13 2523.53 4.80 2524.19 6.25 2524.63 4.81 2525.52 4.82
+2525.64 6.31 2525.93 6.25 2526.03 5.32 2526.61 4.79 2526.64 6.25 2527.53
+6.40 2527.56 4.84 2528.19 5.00 2528.57 6.70 2529.39 6.25 2529.68 4.63
+2530.28 6.25 2530.63 4.83 2530.79 6.25 2531.41 5.34 2531.56 6.25 2531.99
+5.00 2532.55 6.25 2532.60 4.82 2533.54 4.80 2533.68 6.25 2534.19 4.91
+2534.55 6.13 2535.13 4.65 2535.40 6.25 2535.79 6.25 2536.52 4.66 2536.63
+4.63 2536.65 6.25 2537.64 4.65 2537.79 6.25 2538.63 4.80 2538.99 6.25
+2539.38 4.62 2539.59 6.13 2539.99 5.00 2540.33 6.25 2541.38 4.90 2541.60
+5.89 2541.79 6.25 2542.13 4.83 2542.61 6.25 2542.99 4.68 2543.55 6.34
+2543.61 5.00 2544.56 4.84 2544.60 6.71 2545.13 6.25 2545.61 4.62 2546.19
+4.79 2546.39 6.25 2546.99 6.25 2547.39 5.00 2547.61 4.63 2547.68 6.25
+2548.61 4.80 2548.68 6.25 2549.19 6.25 2549.65 4.79 2550.19 6.25 2550.57
+5.00 2551.19 6.25 2551.53 4.65 2551.99 6.25 2552.38 4.83 2552.56 4.89
+2552.66 6.67 2553.57 4.66 2553.99 6.25 2554.66 4.84 2555.03 6.25 2555.18
+4.84 2555.68 6.17 2555.93 6.25 2555.99 4.63 2556.83 5.63 2557.56 3.05
+2557.58 3.05 2558.19 -6.25 2558.58 -4.56 2558.99 -6.25 2559.39 -5.63
+2559.67 -4.91 2560.20 -6.25 2560.58 -4.92 2561.66 -4.68 2561.69 -6.25
+2562.46 -5.63 2562.59 -4.80 2562.79 -6.25 2563.28 -4.92 2563.65 -6.14
+2564.19 -4.67 2564.39 -6.25 2564.98 -4.63 2565.33 -6.25 2565.67 -4.61
+2565.99 -4.80 2566.59 -6.74 2567.59 -5.94 2567.65 -4.83 2567.66 -5.00
+2567.79 -6.25 2568.60 -6.09 2568.63 -4.59 2569.66 -6.25 2569.71 -4.84
+2570.63 -4.66 2570.79 -6.25 2571.39 -6.25 2571.65 -4.91 2571.98 -6.14
+2572.33 -4.84 2572.98 -4.89 2573.19 -6.25 2573.70 -6.38 2573.71 -5.00
+2574.70 -6.00 2575.19 5.00 2575.23 4.20 2575.65 6.30 2576.63 6.25 2576.70
+4.91 2577.69 4.84 2577.71 5.79 2577.78 4.84 2578.39 6.25 2578.59 4.66
+2578.79 6.25 2579.70 6.14 2579.99 4.82 2580.33 6.19 2580.63 4.83 2581.34
+5.32 2581.81 6.25 2582.59 6.11 2582.61 4.79 2583.33 4.64 2583.38 5.63
+2583.63 4.64 2583.73 6.25 2584.70 4.81 2584.72 6.25 2585.59 6.25 2586.08
+4.66 2586.70 4.85 2586.79 6.25 2587.61 6.65 2587.71 4.85 2587.99 6.25
+2588.63 5.27 2588.79 6.25 2589.13 4.89 2589.71 6.15 2589.98 4.84 2590.61
+4.89 2590.73 6.25 2591.63 6.17 2591.73 4.63 2592.59 6.15 2592.85 3.36
+2592.86 3.83 2593.20 -6.02 2593.71 -6.35 2594.38 -4.77 2594.75 -6.25
+2595.18 -4.84 2595.79 -6.25 2596.18 -4.92 2596.38 -4.80 2596.75 -6.25
+2597.38 -4.62 2597.61 -6.15 2597.99 -6.25 2598.08 -4.81 2598.99 -4.88
+2599.28 -6.25 2599.63 -6.27 2599.66 -5.00 2600.48 -5.00 2600.68 -6.15
+2601.39 -6.25 2601.74 -4.64 2602.59 -6.25 2602.64 -4.61 2603.19 -6.25
+2603.65 -4.59 2603.78 -4.80 2604.38 -6.00 2604.69 -4.84 2605.28 -6.25
+2605.64 -4.83 2605.73 -6.60 2606.70 -4.84 2606.79 -6.25 2607.38 -6.08
+2607.65 -4.84 2607.99 -6.25 2608.73 -5.00 2608.88 -6.25 2609.63 -4.63
+2609.66 -6.25 2610.49 -3.20 2610.50 -2.57 2610.98 7.13 2611.43 5.66
+2611.58 4.59 2612.48 6.25 2612.65 4.83 2613.39 6.25 2613.75 4.62 2614.59
+6.12 2614.63 4.64 2614.70 4.89 2614.78 6.06 2615.63 6.25 2615.74 4.60
+2616.66 4.61 2616.79 6.25 2617.66 6.25 2617.88 5.00 2618.73 4.79 2618.76
+6.57 2618.99 6.25 2619.71 4.64 2619.79 6.25 2619.83 4.81 2620.71 4.66
+2620.79 6.25 2621.99 4.62 2622.19 6.25 2622.75 6.05 2622.98 4.64 2623.66
+4.65 2623.69 6.25 2624.19 6.11 2624.19 5.00 2624.99 6.25 2625.58 4.82
+2625.75 6.06 2625.98 4.84 2626.58 4.81 2626.67 6.08 2627.66 6.02 2627.71
+4.61 2628.39 6.12 2628.78 4.72 2628.98 6.25 2629.79 -6.25 2630.18 -5.04
+2630.19 -6.25 2630.77 -6.08 2631.19 -4.83 2631.69 -6.10 2631.89 -5.30
+2632.75 -4.90 2632.99 -6.25 2633.72 -6.10 2633.79 -4.61 2634.50 -5.62
+2634.77 -4.63 2634.98 -4.84 2635.19 -5.63 2635.70 -4.85 2635.79 -6.25
+2636.77 -6.25 2636.98 -4.66 2637.58 -4.82 2637.79 -6.25 2638.74 -4.62
+2638.98 -6.03 2639.78 -6.14 2639.79 -4.80 2640.15 -5.62 2640.43 -4.81
+2640.80 -6.25 2641.38 -4.82 2641.58 -4.86 2641.85 -6.15 2642.75 -5.00
+2642.99 -6.25 2643.38 -4.60 2644.01 -5.62 2644.73 -6.65 2644.76 -4.65
+2645.33 -6.12 2645.75 -4.65 2646.53 -6.25 2646.59 -4.85 2646.79 -4.85
+2646.81 -6.25 2647.48 -6.25 2647.71 -4.87 2648.58 -6.15 2649.13 3.16
+2649.15 3.21 2649.39 6.25 2650.59 4.67 2650.73 6.14 2650.88 4.65 2651.30
+5.64 2651.73 5.00 2652.39 6.25 2652.72 6.29 2652.81 4.67 2653.59 6.25
+2653.80 4.66 2654.39 6.25 2654.79 4.59 2655.58 4.61 2655.83 6.13 2656.38
+4.64 2656.39 6.25 2656.73 6.17 2656.75 4.85 2657.72 4.88 2657.76 6.35
+2658.73 4.81 2659.19 6.14 2659.81 6.49 2659.98 4.86 2660.33 6.25 2660.79
+4.80 2660.93 4.84 2660.99 6.25 2661.84 6.25 2662.18 4.81 2662.77 4.85
+2662.83 6.42 2663.81 4.67 2663.99 6.25 2664.28 6.25 2664.75 4.84 2665.19
+4.81 2665.82 6.15 2665.99 6.25 2666.75 4.81 2667.39 6.01 2667.39 5.00
+2667.77 6.13 2668.28 4.81 2668.78 4.47 2669.19 6.25 2669.75 4.67 2669.99
+6.25 2670.73 4.69 2670.83 6.25 2671.28 4.81 2671.79 6.31 2671.85 6.25
+2672.27 5.31 2672.74 4.85 2672.82 6.59 2673.83 4.67 2673.85 6.25 2674.73
+6.71 2674.98 4.70 2675.59 6.25 2675.84 4.82 2676.74 6.09 2676.76 4.62
+2677.18 4.80 2677.43 6.19 2677.75 4.67 2677.85 6.33 2678.69 6.25 2678.85
+4.65 2679.39 6.25 2679.75 4.67 2680.22 5.33 2680.85 6.25 2681.76 4.81
+2681.86 6.25 2681.98 4.67 2682.59 6.25 2682.81 5.00 2683.18 6.27 2683.79
+6.63 2684.19 4.90 2684.59 6.25 2685.08 4.65 2685.81 6.15 2685.85 4.67
+2686.76 4.81 2686.81 5.90 2687.19 5.91 2687.77 -6.77 2687.78 -6.77
+2687.82 -5.00 2688.79 -6.28 2688.83 -4.83 2689.77 -4.89 2689.81 -6.31
+2690.39 -6.25 2690.87 -4.66 2691.76 -6.15 2691.85 -4.64 2692.33 -4.62
+2692.59 -6.25 2692.83 -4.66 2692.89 -6.25 2694.19 -6.25 2694.38 -4.65
+2694.58 -4.59 2694.83 -6.25 2695.38 -4.83 2695.99 -6.25 2696.33 -6.25
+2696.81 -4.81 2697.59 -5.00 2697.79 -6.69 2697.87 -4.88 2698.18 -6.09
+2698.88 -4.79 2698.89 -6.25 2699.59 -6.25 2699.99 -5.00 2700.80 -4.63
+2700.89 -6.38 2701.39 -6.25 2701.89 -4.87 2702.59 -6.25 2702.86 -4.86
+2703.59 -6.25 2703.73 -4.35 2703.74 -4.00 2704.38 6.63 2704.89 6.25
+2705.38 4.91 2705.88 6.14 2705.98 4.81 2706.59 5.00 2706.99 6.25 2707.79
+6.72 2707.89 4.82 2708.18 4.89 2708.27 5.63 2708.83 4.63 2709.08 6.25
+2709.82 4.62 2710.45 5.63 2710.83 4.68 2710.89 6.56 2711.81 4.67 2711.85
+6.12 2712.69 5.31 2712.79 6.40 2713.33 6.25 2713.79 4.68 2713.89 6.25
+2713.98 4.66 2714.81 5.00 2715.39 6.25 2715.80 6.70 2715.89 4.81 2716.86
+6.25 2716.98 4.63 2717.85 4.71 2717.90 6.78 2718.18 5.68 2718.85 -6.71
+2718.86 -6.71 2719.58 -4.95 2719.84 -4.67 2720.38 -6.13 2720.81 -6.34
+2720.90 -4.62 2721.59 -6.25 2721.88 -4.68 2722.43 -6.25 2722.98 -4.78
+2723.80 -5.64 2723.84 -4.62 2723.98 -4.86 2724.59 -6.25 2724.79 -4.83
+2724.82 -6.25 2725.81 -4.61 2725.93 -6.25 2726.80 -4.75 2726.90 -6.25
+2727.39 -6.25 2727.85 -4.76 2728.59 -6.25 2728.83 -4.60 2729.38 -6.11
+2729.39 -5.00 2729.78 -4.61 2730.13 -6.25 2730.84 -4.61 2731.26 -5.64
+2731.91 -6.24 2732.18 -4.81 2732.84 -4.88 2732.93 -6.25 2733.43 -6.25
+2733.82 -4.85 2733.98 -4.63 2734.59 -6.25 2734.83 -5.93 2735.63 5.76
+2735.91 6.22 2735.93 4.74 2736.83 4.81 2736.89 6.25 2737.39 6.25 2737.98
+4.64 2738.88 6.72 2738.93 5.00 2739.19 6.25 2739.78 4.89 2739.93 4.62
+2740.39 6.12 2740.78 6.18 2740.79 5.00 2741.58 4.66 2741.84 6.56 2742.58
+6.13 2742.85 4.84 2743.39 6.25 2743.68 4.66 2744.38 4.67 2744.59 6.25
+2744.94 6.61 2744.99 5.00 2745.94 4.79 2745.99 6.25 2746.59 6.25 2746.89
+4.83 2747.78 4.88 2747.99 6.25 2748.28 6.25 2748.59 4.82 2749.85 6.58
+2749.90 4.67 2750.08 4.66 2750.33 6.25 2750.91 6.25 2751.18 4.92 2751.78
+4.82 2751.86 6.11 2752.90 6.25 2753.30 1.08 2753.30 1.08 2753.90 -6.45
+2754.39 -5.00 2754.59 -6.25 2755.28 -4.78 2755.79 -6.25 2755.88 -4.80
+2755.96 -6.25 2756.88 -4.66 2757.33 -6.25 2757.86 -4.72 2758.28 -6.25
+2758.79 -6.25 2758.95 -4.60 2759.19 -6.25 2759.93 -4.63 2760.59 -6.25
+2760.85 -4.81 2760.90 -4.78 2760.95 -6.69 2761.88 -6.25 2761.99 -4.82
+2762.79 -6.25 2762.83 -4.59 2763.39 -6.25 2763.96 -4.55 2764.90 -6.69
+2764.96 -4.60 2765.18 -4.77 2765.79 -6.25 2765.90 -6.25 2765.99 -5.00
+2766.92 -4.62 2766.97 -6.12 2767.58 -4.84 2767.91 -6.25 2768.58 -4.64
+2768.59 -6.25 2769.78 -4.82 2769.79 -6.25 2770.58 -5.00 2770.59 -5.64
+2771.39 -5.60 2771.76 -1.90 2771.79 -1.25 2772.48 6.25 2772.87 4.87
+2772.93 6.45 2773.78 4.77 2773.91 6.25 2774.38 4.79 2774.89 6.40 2775.79
+6.25 2775.96 4.81 2776.18 4.65 2776.43 6.25 2776.97 4.63 2777.59 6.25
+2777.94 6.34 2777.96 4.85 2778.58 4.88 2778.59 6.25 2779.43 4.63 2779.58
+5.61 2780.39 5.00 2780.94 6.33 2781.39 5.62 2781.58 4.79 2781.99 6.08
+2782.38 4.81 2782.94 4.81 2783.18 6.25 2783.94 4.79 2783.95 5.76 2784.58
+4.83 2784.94 6.34 2785.23 5.69 2786.05 27.93 2786.16 28.01 2786.65
+27.30 2787.08 26.23 2787.72 27.77 2787.79 27.37 2788.00 27.96 2788.83
+27.28 2788.88 27.75 2789.96 26.38 2790.24 27.79 2790.41 27.80 2790.96
+26.16 2791.71 27.76 2791.91 26.47 2791.99 27.92 2792.33 27.37 2792.79
+27.76 2793.55 27.33 2793.89 27.35 2794.36 27.82 2794.85 27.36 2794.92
+27.92 2795.30 27.30 2795.97 27.78 2796.66 27.82 2796.78 26.35 2797.08
+27.78 2797.48 26.25 2797.93 28.78 2797.97 26.25 2798.78 26.54 2798.97
+27.79 2799.74 27.75 2800.34 24.77 2800.54 19.60 2801.04 28.32 2801.51
+27.32 2801.92 28.82 2802.53 26.20 2802.80 27.77 2803.19 28.75 2803.31
+27.35 2803.84 27.83 2804.40 27.27 2804.68 27.27 2805.12 27.81 2805.93
+27.85 2806.21 27.37 2806.88 26.25 2807.04 27.76 2807.39 27.36 2807.73
+28.75 2808.00 29.02 2808.52 27.28 2808.95 27.90 2809.33 26.51 2809.99
+27.94 2810.28 27.33 2811.02 28.87 2811.09 27.28 2811.48 27.33 2812.00
+28.95 2812.13 27.80 2812.89 27.27 2813.19 26.25 2813.45 27.77 2814.05
+26.70 2814.23 27.80 2815.04 27.75 2815.22 27.29 2815.98 27.83 2816.05
+26.50 2817.05 28.75 2817.08 27.33 2817.50 27.73 2817.79 27.30 2818.01
+27.58 2818.81 -1.02 2818.82 -1.54 2819.64 -28.11 2819.95 -28.09 2820.03
+-26.63 2820.58 -27.35 2821.03 -28.75 2821.41 -27.82 2822.11 -27.32
+2822.88 -27.16 2822.91 -27.82 2823.22 -27.93 2823.38 -26.20 2823.96
+-27.83 2824.07 -26.33 2824.70 -27.28 2825.53 -27.79 2825.83 -27.78
+2826.01 -26.46 2826.96 -26.30 2827.08 -27.74 2827.80 -27.86 2828.00
+-26.31 2828.18 -27.76 2828.87 -27.29 2829.02 -28.80 2829.06 -27.26
+2830.02 -26.30 2830.13 -27.81 2831.01 -26.26 2831.38 -27.74 2832.00
+-26.67 2832.13 -27.81 2832.40 -27.79 2832.88 -27.31 2833.78 -27.26
+2833.80 -27.87 2834.00 -26.42 2834.11 -27.91 2835.25 -27.29 2835.26
+-27.78 2836.08 -27.84 2836.19 -26.25 2836.51 -27.87 2837.29 -25.45
+2837.30 -25.34 2838.14 11.99 2838.14 11.99 2838.74 28.38 2839.04 28.45
+2839.58 26.39 2840.10 27.76 2840.33 27.26 2840.72 27.33 2841.47 27.85
+2841.73 27.90 2842.20 27.32 2842.39 27.31 2842.84 27.81 2843.62 27.85
+2843.99 26.31 2844.43 27.29 2844.75 27.76 2844.89 27.78 2845.03 26.43
+2845.74 27.31 2845.99 27.92 2847.15 27.29 2847.34 27.79 2848.00 27.85
+2848.04 26.31 2848.33 27.81 2848.83 27.26 2849.33 27.27 2849.83 27.77
+2850.05 28.94 2850.60 27.35 2850.86 27.76 2850.91 27.29 2852.00 27.88
+2852.10 26.25 2852.49 27.77 2852.89 27.31 2853.86 27.27 2853.93 27.75
+2854.19 26.27 2854.55 27.81 2855.35 27.76 2855.72 27.30 2855.86 27.32
+2856.59 27.78 2856.63 27.74 2857.46 -3.50 2857.46 -3.50 2858.11 -28.16
+2858.33 -28.09 2859.11 -26.25 2859.65 -27.76 2859.68 -26.49 2860.01
+-27.85 2860.05 -26.37 2861.35 -27.75 2861.38 -26.42 2862.04 -26.52
+2862.06 -28.77 2862.59 -28.75 2863.33 -27.32 2863.78 -28.81 2864.11
+-26.34 2864.56 -27.82 2864.83 -27.36 2865.18 -28.87 2865.64 -27.32
+2865.92 -27.33 2866.50 -27.81 2867.39 -28.84 2867.44 -27.35 2867.79
+-28.75 2868.27 -27.31 2868.41 -27.35 2869.02 -27.83 2869.58 -28.87
+2869.85 -27.33 2870.44 -27.30 2870.86 -27.82 2871.01 -28.75 2871.72
+-27.31 2871.93 -27.76 2872.13 -26.25 2873.04 -26.67 2873.15 -27.91
+2873.53 -27.81 2873.95 -27.31 2874.70 -27.27 2875.08 -27.88 2875.41
+-27.83 2875.92 -25.12 2875.95 -25.26 2876.76 10.96 2876.78 10.87 2877.34
+28.16 2877.62 27.93 2878.30 27.35 2878.66 27.33 2879.18 28.87 2879.69
+27.33 2879.91 27.87 2880.20 27.82 2880.59 26.25 2881.09 28.86 2881.33
+26.25 2882.23 28.75 2882.38 27.32 2883.11 27.31 2883.14 27.85 2883.74
+27.35 2884.04 28.12 2884.58 28.90 2885.11 26.25 2885.24 27.32 2885.61
+27.79 2886.14 27.88 2886.68 27.35 2887.18 27.30 2887.66 27.75 2887.88
+27.35 2888.48 27.79 2888.81 27.81 2889.26 27.26 2890.04 26.39 2890.16
+27.75 2890.73 26.53 2891.05 27.81 2891.09 26.39 2891.39 27.74 2892.19
+26.25 2892.74 27.79 2892.80 27.80 2893.26 27.31 2893.82 27.75 2893.99
+27.28 2894.79 27.79 2895.25 23.48 2895.26 23.49 2896.09 -10.55 2896.10
+-10.55 2896.74 -28.30 2897.05 -27.99 2897.68 -27.27 2898.09 -28.75
+2898.33 -27.34 2898.86 -27.84 2899.10 -26.55 2900.03 -27.76 2900.07
+-26.44 2901.06 -26.68 2901.11 -27.95 2901.18 -26.51 2901.29 -27.78
+2902.22 -27.28 2902.80 -27.81 2903.19 -28.75 2903.64 -27.31 2904.08
+-27.78 2904.16 -26.68 2905.13 -26.42 2905.33 -27.87 2905.52 -27.83
+2906.18 -26.18 2906.44 -27.80 2906.76 -27.30 2907.07 -28.87 2907.56
+-27.36 2907.98 -27.77 2908.53 -27.32 2908.79 -26.25 2909.31 -27.82
+2909.56 -27.85 2910.12 -26.58 2910.78 -28.75 2910.99 -27.30 2911.29
+-27.28 2911.38 -27.88 2912.09 -27.82 2912.13 -26.62 2913.13 -28.79
+2913.74 -11.02 2913.74 -11.02 2914.58 25.00 2914.58 25.12 2914.78 28.38
+2916.09 29.07 2916.17 26.61 2916.33 27.89 2917.05 27.37 2917.13 26.24
+2917.83 27.86 2918.08 26.42 2918.15 27.97 2918.83 27.84 2918.90 27.35
+2920.17 27.81 2920.39 26.25 2921.15 27.84 2921.22 27.32 2921.60 27.25
+2922.11 27.75 2922.15 26.39 2922.38 28.87 2923.10 28.91 2923.65 27.24
+2923.85 27.26 2924.33 28.75 2925.11 28.90 2925.16 27.32 2925.53 28.75
+2925.94 27.26 2926.82 27.79 2927.15 26.37 2927.19 27.85 2927.73 27.32
+2928.33 27.32 2928.79 27.75 2929.13 26.27 2929.43 28.75 2929.78 26.26
+2929.79 28.75 2930.66 27.32 2931.16 28.75 2931.49 27.79 2932.12 27.31
+2932.78 26.30 2932.79 28.75 2933.42 27.34 2933.70 27.82 2934.01 27.75
+2934.59 27.33 2934.99 26.25 2935.39 27.77 2936.12 27.86 2936.25 27.32
+2937.06 27.33 2937.13 27.85 2937.41 27.36 2937.78 27.82 2938.17 26.29
+2938.23 27.92 2939.36 27.33 2939.76 27.77 2940.13 28.01 2940.56 27.33
+2941.19 28.78 2941.23 26.15 2941.59 27.33 2942.22 28.02 2942.33 28.03
+2942.71 27.35 2943.38 26.25 2943.96 27.74 2944.18 26.29 2944.39 28.75
+2945.14 28.88 2945.25 27.34 2946.20 26.85 2946.44 27.81 2946.78 28.75
+2947.34 27.34 2947.60 27.32 2947.61 27.77 2948.20 26.25 2948.39 28.75
+2949.15 28.75 2949.19 26.41 2950.06 27.33 2950.59 28.75 2951.24 26.26
+2951.39 28.75 2951.83 27.31 2952.13 27.80 2952.44 27.32 2953.20 27.83
+2953.32 27.80 2953.94 27.29 2954.38 28.75 2954.73 27.33 2955.61 27.79
+2955.74 26.13 2955.74 26.13 2956.56 -8.12 2956.58 -8.75 2957.26 -28.75
+2957.42 -28.01 2958.04 -27.38 2958.32 -27.77 2958.33 -27.28 2959.10
+-27.38 2959.16 -28.75 2960.18 -27.89 2960.22 -26.25 2960.81 -27.30
+2961.59 -27.82 2961.80 -27.81 2961.98 -26.30 2962.64 -27.77 2963.10
+-27.29 2963.48 -27.29 2963.74 -27.86 2964.18 -27.89 2964.26 -26.50
+2965.20 -26.26 2965.22 -28.78 2966.06 -27.85 2966.19 -26.30 2967.13
+-27.80 2967.16 -26.47 2967.96 -27.84 2968.22 -26.58 2968.43 -27.32
+2968.75 -27.79 2969.22 -28.86 2969.76 -27.32 2970.21 -26.53 2970.82
+-27.82 2971.25 -28.84 2971.28 -26.42 2972.11 -27.28 2972.16 -28.87
+2972.99 -27.82 2973.18 -26.30 2974.04 -27.30 2974.11 -27.76 2974.22
+-27.32 2974.23 -28.75 2975.08 -27.80 2975.90 -24.73 2975.90 -24.73
+2976.74 11.73 2976.74 11.73 2977.38 28.75 2977.63 27.86 2978.23 26.33
+2978.56 27.77 2978.83 27.32 2979.89 27.34 2980.07 27.81 2980.19 26.71
+2980.28 28.01 2981.29 27.76 2981.47 27.32 2981.84 27.33 2982.20 27.88
+2982.68 27.77 2983.38 26.40 2983.70 27.32 2984.25 28.92 2984.53 26.33
+2984.59 27.82 2985.27 27.76 2985.30 26.25 2985.98 27.32 2986.23 27.81
+2987.22 28.75 2987.48 27.30 2988.21 28.88 2988.21 27.31 2988.54 27.36
+2989.19 27.88 2989.34 27.76 2989.96 27.32 2990.21 28.75 2990.44 27.30
+2991.20 27.91 2991.29 26.57 2991.98 27.31 2992.24 27.84 2993.28 26.48
+2993.39 27.82 2994.16 27.27 2994.26 28.85 2994.49 27.74 2995.21 5.85
+2995.24 6.25 2996.06 -18.52 2996.06 -18.52 2996.53 -28.75 2997.15 -27.36
+2997.18 -28.97 2997.76 -27.80 2998.42 -27.34 2999.11 -27.27 2999.14
+-27.78 2999.81 -26.25 3000.24 -28.90 3000.43 -27.78 3000.96 -27.29
+3001.16 -27.33 3001.95 -27.84 3002.39 -28.82 3002.61 -27.34 3003.01
+-26.25 3003.02 -27.79 3003.85 -26.62 3004.33 -28.83 3004.73 -27.34
+3005.09 -27.83 3005.61 -26.25 3005.98 -27.83 3006.21 -28.96 3006.33
+-26.40 3007.14 -27.77 3007.58 -27.29 3007.98 -27.27 3008.33 -27.84
+3009.18 -27.34 3009.25 -27.83 3009.69 -27.26 3010.26 -27.83 3010.42
+-27.35 3010.63 -27.84 3011.73 -27.77 3011.76 -27.28 3012.36 -27.83
+3012.89 -11.99 3012.89 -11.99 3013.73 24.52 3013.73 24.52 3014.28 28.75
+3014.98 27.36 3015.34 28.93 3015.71 26.33 3015.76 27.82 3016.37 26.25
+3016.72 27.78 3017.26 26.50 3017.69 27.84 3017.98 27.79 3018.61 26.25
+3019.33 27.76 3019.48 27.32 3020.28 28.84 3020.39 27.37 3020.53 27.33
+3020.81 28.75 3021.31 28.79 3021.36 26.23 3022.32 27.97 3022.92 27.35
+3023.10 27.31 3023.74 27.76 3024.02 27.35 3024.25 28.96 3024.72 27.78
+3025.38 26.25 3025.52 27.35 3026.15 27.81 3026.41 27.79 3026.51 26.52
+3027.22 27.76 3027.45 27.32 3028.04 27.29 3028.38 27.98 3029.37 27.87
+3029.64 27.31 3030.32 27.98 3030.53 25.37 3030.53 25.37 3031.36 -11.16
+3031.37 -10.12 3032.01 -28.75 3032.29 -28.15 3032.61 -26.25 3033.33
+-26.55 3033.73 -27.83 3033.90 -27.81 3034.69 -27.28 3035.30 -26.33
+3035.43 -27.79 3036.29 -27.90 3036.37 -26.66 3036.53 -27.77 3037.17
+-27.28 3037.36 -26.20 3037.99 -27.81 3038.35 -27.86 3038.91 -27.35
+3039.11 -27.30 3039.73 -27.88 3040.15 -27.84 3040.31 -26.60 3040.61
+-28.75 3041.29 -26.32 3041.45 -27.32 3042.21 -27.85 3042.31 -28.75
+3042.92 -27.27 3043.63 -27.27 3043.84 -27.79 3044.22 -28.75 3044.39
+-26.58 3044.92 -27.84 3045.26 -27.30 3046.32 -26.33 3046.45 -27.85
+3046.61 -26.24 3047.01 -27.84 3047.42 -28.75 3048.17 -22.71 3048.17
+-22.71 3049.01 14.81 3049.02 14.99 3049.37 28.75 3049.86 27.35 3050.53
+27.81 3050.70 27.79 3051.28 27.34 3052.03 27.31 3052.37 27.85 3052.82
+27.81 3053.07 27.37 3053.42 27.77 3053.67 27.30 3054.31 28.83 3054.43
+27.34 3055.15 27.81 3055.55 27.31 3056.06 26.25 3056.47 27.74 3056.64
+27.30 3057.40 28.86 3057.41 28.86 3057.97 27.33 3058.42 26.29 3058.98
+27.76 3059.33 27.79 3059.83 27.36 3060.09 27.76 3060.13 27.29 3061.36
+27.87 3061.41 26.45 3061.81 28.75 3062.43 26.13 3062.45 26.13 3062.46
+28.89 3063.73 27.80 3064.07 27.38 3064.70 27.73 3064.73 27.29 3065.22
+26.25 3065.41 27.88 3066.05 27.79 3066.65 22.77 3066.65 22.77 3067.42
+4.77 3068.01 5.00 3068.22 6.25 3068.39 4.68 3069.00 5.66 3069.44 4.80
+3069.45 6.25 3070.21 6.25 3070.39 5.00 3071.01 6.17 3071.43 4.87 3072.01
+4.84 3072.53 21.17 3072.53 21.17 3073.36 57.33 3073.37 57.33 3074.09
+83.21 3074.41 83.22 3074.45 81.78 3075.70 82.34 3075.81 84.05 3076.01
+83.12 3076.37 81.48 3076.81 83.75 3077.39 81.63 3078.15 82.98 3078.40
+81.49 3078.56 82.33 3078.85 83.04 3079.57 83.00 3079.81 81.22 3080.37
+83.23 3080.43 81.48 3080.96 83.75 3081.32 82.36 3081.91 83.75 3082.45
+81.60 3082.91 83.75 3083.42 81.25 3083.45 81.49 3083.82 83.75 3084.44
+83.89 3084.97 82.33 3085.35 81.87 3085.42 83.22 3086.22 83.75 3086.81
+81.67 3086.84 82.98 3087.63 53.62 3087.83 46.90 3088.49 73.72 3088.49
+73.72 3088.89 83.46 3089.43 83.31 3089.61 81.57 3090.21 83.75 3090.46
+82.02 3091.47 81.51 3091.62 83.07 3092.30 83.02 3092.38 81.98 3093.13
+82.99 3093.25 81.54 3093.77 83.06 3093.97 82.36 3094.48 81.97 3094.81
+83.88 3095.23 83.18 3095.47 81.37 3096.47 81.28 3096.73 83.05 3097.43
+83.31 3097.60 82.36 3098.17 83.12 3098.49 81.25 3098.71 83.75 3099.09
+82.17 3099.43 81.48 3099.90 83.85 3100.38 83.20 3100.65 82.35 3101.47
+81.44 3101.81 83.22 3102.41 83.09 3102.43 81.83 3103.01 81.41 3103.02
+83.75 3103.93 82.99 3104.41 81.33 3104.51 83.75 3105.10 82.31 3105.47
+81.84 3105.61 83.75 3106.29 83.09 3106.45 81.41 3107.02 83.75 3107.49
+81.90 3108.25 83.03 3108.44 81.69 3109.09 82.99 3109.46 81.19 3109.83
+83.17 3110.13 82.32 3110.36 83.75 3110.41 82.02 3111.21 83.75 3111.49
+81.39 3112.41 81.67 3112.51 83.02 3113.45 83.54 3113.50 81.75 3113.70
+82.70 3114.53 50.65 3114.61 47.14 3115.37 76.65 3115.37 76.65 3115.71
+83.40 3116.37 82.25 3116.61 83.75 3117.48 81.33 3117.54 83.36 3118.21
+83.05 3118.46 81.34 3119.51 81.49 3119.57 83.00 3119.61 83.75 3119.70
+81.83 3120.43 81.68 3121.01 83.08 3121.45 83.90 3121.61 81.41 3122.50
+83.14 3122.60 81.63 3123.25 83.05 3123.43 81.56 3124.43 81.41 3124.53
+83.75 3124.76 82.17 3124.81 83.80 3125.47 83.50 3125.94 82.35 3126.41
+81.44 3126.52 83.91 3127.52 81.84 3127.55 82.96 3128.42 83.17 3128.71
+82.34 3129.41 82.34 3129.54 83.75 3129.76 83.75 3130.43 82.09 3130.51
+83.18 3131.33 60.33 3131.33 60.33 3132.17 22.92 3132.17 22.92 3132.93
+5.00 3133.36 6.25 3133.61 5.00 3134.43 4.83 3134.51 6.25 3135.21 4.85
+3135.22 6.25 3135.54 6.25 3135.81 4.66 3136.47 6.40 3136.76 5.00 3137.53
+4.82 3137.71 6.25 3138.47 4.89 3138.49 6.25 3139.21 4.59 3139.51 6.29
+3139.82 6.25 3140.41 4.60 3141.19 5.32 3141.34 5.63 3141.43 4.79 3141.54
+6.74 3142.45 4.81 3142.82 6.25 3143.45 6.31 3143.53 4.89 3144.01 6.12
+3144.49 4.83 3145.01 6.25 3145.47 5.34 3145.61 6.25 3146.41 4.87 3146.81
+4.78 3147.15 6.28 3147.41 6.25 3147.50 4.76 3148.49 6.25 3148.51 4.87
+3149.45 4.70 3149.51 6.25 3149.81 6.25 3150.41 5.00 3151.22 6.25 3151.47
+4.91 3151.49 5.00 3151.57 6.25 3152.48 5.00 3152.56 6.51 3153.22 6.25
+3153.52 4.67 3154.06 6.25 3154.41 4.82 3155.51 6.62 3155.53 4.64 3156.21
+4.65 3156.52 6.06 3156.57 6.25 3156.97 5.33 3157.46 4.71 3157.61 6.12
+3158.61 6.25 3159.01 4.84 3159.53 4.63 3159.86 6.25 3160.21 6.25 3160.58
+5.00 3161.47 6.60 3161.51 4.61 3161.61 4.63 3161.62 6.25 3162.49 6.31
+3162.61 4.81 3163.41 6.25 3163.49 4.65 3164.51 4.81 3164.54 6.25 3165.01
+6.13 3165.57 4.64 3166.53 6.39 3166.56 4.84 3166.75 4.87 3166.82 6.25
+3167.53 4.80 3167.59 6.25 3168.53 6.17 3168.57 4.67 3169.21 6.25 3169.50
+4.80 3170.41 6.25 3170.61 4.64 3171.50 4.62 3171.59 6.25 3171.79 5.32
+3172.21 6.25 3172.49 6.35 3173.25 4.80 3173.58 6.34 3174.01 4.82 3174.58
+4.67 3174.62 6.25 3175.22 5.00 3175.61 6.77 3176.55 6.33 3176.58 4.81
+3177.01 6.25 3177.35 4.86 3177.62 6.25 3178.21 4.65 3178.51 6.25 3178.55
+4.85 3179.61 6.25 3179.83 5.33 3180.51 4.64 3180.61 5.80 3181.30 5.32
+3181.53 6.25 3182.01 6.12 3182.01 5.00 3182.65 4.87 3183.39 19.16 3183.41
+19.02 3184.01 4.72 3184.55 5.03 3184.58 6.25 3185.52 4.82 3185.86 6.25
+3185.96 6.25 3186.55 4.64 3187.41 6.13 3187.53 4.66 3187.61 6.34 3188.01
+4.68 3188.50 6.15 3188.60 4.67 3189.56 4.67 3189.59 6.14 3190.30 6.16
+3190.61 4.63 3191.61 6.26 3191.63 5.00 3192.21 6.25 3192.52 4.60 3192.91
+5.33 3193.49 24.80 3193.49 24.80 3194.33 62.12 3194.33 62.12 3195.01
+83.75 3195.41 81.25 3195.63 83.75 3196.53 83.75 3196.83 82.35 3197.21
+83.07 3197.63 82.38 3198.15 83.75 3198.25 82.37 3198.81 83.75 3199.35
+81.95 3199.53 81.68 3200.01 83.75 3200.43 82.38 3200.60 84.01 3201.53
+81.58 3201.82 83.75 3202.17 83.04 3202.59 81.32 3202.89 83.06 3203.55
+81.80 3203.57 81.80 3203.63 84.02 3204.51 83.13 3204.53 81.58 3205.45
+82.36 3205.75 83.75 3206.58 83.25 3206.65 81.90 3207.01 83.75 3207.07
+82.36 3208.03 83.03 3208.41 81.53 3208.75 83.13 3209.21 82.35 3209.57
+83.75 3210.03 82.36 3210.53 81.37 3210.96 83.75 3211.61 81.59 3211.63
+83.09 3212.41 83.05 3212.55 81.79 3213.15 83.04 3213.37 82.36 3213.65
+83.75 3214.21 82.30 3214.61 83.78 3214.93 82.33 3215.63 84.01 3215.70
+82.34 3216.21 81.34 3216.65 83.75 3217.56 83.59 3217.65 81.45 3218.21
+81.58 3218.23 83.04 3218.69 82.31 3218.90 83.00 3219.81 83.75 3220.01
+82.36 3220.41 83.10 3220.61 81.50 3221.51 82.34 3221.86 83.01 3222.56
+82.00 3222.65 83.42 3223.30 83.04 3223.55 81.36 3224.41 83.75 3224.42
+82.34 3224.58 83.75 3225.18 82.32 3225.56 81.62 3226.21 83.23 3226.68
+81.25 3226.90 83.01 3227.09 82.90 3227.93 58.95 3227.93 58.95 3228.76
+21.86 3228.77 21.86 3229.58 -13.61 3229.61 -13.61 3230.43 -51.19 3230.45
+-51.91 3231.27 -83.13 3231.57 -81.88 3231.63 -83.39 3232.35 -82.95
+3232.62 -81.45 3233.32 -82.39 3233.73 -83.06 3234.57 -81.87 3234.62
+-83.08 3234.85 -82.33 3235.36 -83.75 3235.53 -82.37 3235.91 -83.03
+3236.61 -83.16 3236.62 -82.12 3237.35 -83.05 3237.70 -81.58 3238.53
+-82.36 3238.80 -83.13 3239.21 -81.27 3239.65 -83.26 3240.03 -82.23
+3240.22 -83.75 3240.59 -81.69 3241.00 -83.08 3241.63 -81.68 3241.71
+-83.05 3242.68 -81.36 3242.79 -83.75 3243.33 -83.00 3243.55 -82.31
+3244.69 -81.63 3244.71 -83.75 3244.81 -83.75 3245.03 -82.32 3246.01
+-83.04 3246.41 -80.65 3246.41 -80.65 3247.23 -45.10 3247.25 -44.69
+3248.08 -7.77 3248.09 -7.77 3248.92 29.61 3248.93 29.61 3249.76 66.58
+3249.77 66.58 3250.31 83.19 3250.62 81.37 3250.73 83.75 3251.61 83.02
+3251.71 81.70 3252.66 83.75 3252.71 81.77 3253.35 83.03 3253.68 81.25
+3254.71 83.75 3254.81 81.84 3255.15 82.36 3255.41 83.06 3255.87 82.36
+3256.21 83.02 3256.69 83.75 3257.25 81.49 3257.50 81.65 3257.68 83.75
+3258.41 83.75 3258.77 82.35 3259.13 83.06 3259.48 82.38 3260.56 83.75
+3260.63 82.27 3260.81 81.34 3261.41 83.14 3261.63 81.19 3262.11 83.02
+3262.81 83.75 3263.13 82.15 3263.41 83.15 3263.86 82.23 3264.25 81.77
+3264.63 83.51 3265.30 82.27 3265.65 83.75 3265.81 81.64 3266.41 83.08
+3267.15 83.03 3267.20 81.46 3267.83 82.99 3268.25 71.98 3268.25 71.98
+3269.09 34.80 3269.09 34.80 3269.92 -2.63 3269.93 -2.63 3270.76 -39.10
+3270.77 -39.10 3271.60 -75.90 3271.61 -75.90 3272.41 -83.75 3272.61
+-83.13 3272.65 -81.64 3273.31 -83.75 3273.75 -81.41 3274.53 -82.36
+3274.69 -84.04 3275.61 -83.12 3275.68 -81.46 3275.91 -82.31 3276.11
+-83.75 3277.05 -83.14 3277.30 -81.57 3277.63 -83.20 3277.71 -81.72
+3278.68 -84.03 3279.10 -81.89 3279.63 -81.48 3279.85 -83.02 3280.55
+-83.12 3280.72 -81.71 3281.08 -82.29 3281.33 -83.09 3281.76 -81.35
+3282.05 -83.08 3282.67 -83.75 3282.71 -82.05 3283.51 -83.06 3283.65
+-81.45 3284.22 -83.04 3284.61 -82.36 3285.21 -81.30 3285.63 -83.10
+3286.61 -83.75 3286.71 -81.43 3286.85 -82.32 3287.28 -82.99 3287.65
+-81.24 3287.83 -83.00 3288.66 -83.16 3289.02 -82.34 3289.35 -83.01
+3290.08 -74.79 3290.09 -74.79 3290.93 -36.68 3290.93 -36.68 3291.76
+0.00 3291.77 0.00 3292.60 36.51 3292.61 37.26 3293.45 74.39 3293.45
+74.39 3294.15 83.13 3294.61 81.25 3294.91 83.01 3295.65 83.20 3295.81
+81.62 3296.41 81.69 3296.78 83.75 3297.42 82.36 3297.61 83.75 3297.70
+81.75 3297.75 83.09 3298.68 83.75 3299.01 82.34 3299.56 82.34 3300.01
+83.09 3300.61 81.75 3300.74 83.75 3301.11 82.36 3301.45 83.14 3301.91
+82.37 3302.16 82.98 3302.81 81.62 3302.93 83.02 3303.61 81.89 3303.78
+83.75 3304.71 83.93 3304.73 82.37 3305.61 83.75 3305.77 81.65 3306.46
+83.05 3306.61 81.95 3307.51 83.75 3307.68 81.38 3308.03 83.03 3308.25
+82.37 3308.70 81.95 3308.75 83.11 3309.88 82.30 3310.17 83.06 3310.91
+83.75 3311.09 81.02 3311.09 81.02 3311.92 45.12 3311.93 45.12 3312.76
+8.51 3312.77 8.51 3313.60 -28.68 3313.61 -28.84 3314.45 -65.86 3314.45
+-65.86 3315.03 -83.42 3315.61 -81.73 3315.81 -83.75 3316.37 -83.01
+3316.85 -82.24 3317.69 -83.75 3317.78 -81.41 3318.17 -82.35 3318.61
+-83.75 3318.65 -83.10 3318.81 -81.25 3319.65 -82.31 3320.21 -83.75
+3320.79 -81.64 3320.81 -83.75 3321.71 -81.93 3321.76 -83.10 3322.57
+-82.29 3322.81 -83.75 3323.43 -82.30 3323.66 -83.04 3323.73 -83.20
+3323.81 -81.43 3324.82 -81.48 3325.15 -83.18 3325.41 -81.51 3325.75
+-84.11 3326.70 -81.64 3326.78 -83.75 3327.08 -82.28 3327.32 -83.07
+3328.63 -82.33 3328.71 -83.39 3329.23 -82.33 3329.35 -83.75 3329.61
+-83.11 3329.97 -82.28 3330.73 -81.40 3331.00 -83.05 3331.70 -83.03
+3331.77 -82.06 3332.41 -83.09 3332.74 -81.25 3333.05 -83.75 3333.77
+-81.41 3333.82 -83.02 3334.61 -60.41 3334.61 -60.41 3335.45 -23.13
+3335.45 -23.13 3336.28 13.54 3336.29 13.54 3337.12 50.93 3337.13 50.93
+3337.96 83.23 3338.49 82.44 3338.73 83.47 3339.17 82.34 3339.41 83.75
+3339.90 82.37 3340.31 83.75 3340.75 81.44 3341.01 82.98 3341.83 82.98
+3342.07 82.26 3342.41 83.02 3342.78 81.24 3343.13 83.02 3343.65 81.33
+3344.01 81.31 3344.61 83.11 3344.72 81.35 3345.27 83.00 3345.85 81.60
+3346.05 83.01 3346.73 83.16 3346.79 81.79 3347.50 83.01 3347.90 82.34
+3348.79 81.71 3348.83 83.30 3349.20 84.00 3349.31 82.34 3349.86 83.75
+3350.45 70.10 3350.57 71.74 3350.95 83.75 3351.61 81.25 3351.73 84.06
+3352.41 83.75 3352.72 81.70 3353.26 83.06 3353.41 81.88 3354.01 83.75
+3354.47 82.36 3354.82 82.12 3354.86 83.36 3355.83 83.87 3355.95 81.26
+3356.83 81.60 3356.98 83.05 3357.81 83.12 3358.12 82.31 3358.15 83.83
+3358.82 82.26 3359.07 83.06 3359.57 82.28 3359.87 83.75 3360.32 82.22
+3360.86 81.40 3361.41 83.75 3361.77 82.30 3361.83 83.75 3362.87 83.75
+3362.96 81.66 3363.45 83.75 3363.86 81.50 3364.31 83.75 3364.67 82.25
+3364.90 83.02 3365.30 82.32 3365.87 83.75 3366.01 81.25 3366.71 82.35
+3367.18 83.04 3367.51 82.37 3367.61 83.75 3368.41 82.86 3369.05 60.62
+3369.05 60.62 3369.88 23.62 3369.89 23.62 3370.72 -13.48 3370.73 -13.48
+3371.56 -50.48 3371.57 -50.48 3372.38 -83.00 3372.79 -83.45 3372.88
+-82.10 3373.51 -83.75 3374.09 -82.33 3374.41 -81.88 3374.41 -83.01
+3375.21 -83.75 3375.57 -82.30 3375.81 -83.47 3375.85 -81.78 3376.91
+-81.25 3377.41 -83.10 3377.58 -82.30 3377.91 -83.75 3378.33 -82.27
+3378.79 -83.08 3379.81 -83.97 3379.93 -82.28 3380.03 -82.13 3380.08
+-83.34 3380.91 -83.75 3381.31 -82.29 3381.88 -81.32 3382.00 -83.85
+3382.75 -82.33 3382.90 -83.85 3383.79 -81.80 3383.87 -83.75 3384.27
+-82.31 3384.61 -83.03 3385.03 -82.33 3385.41 -83.75 3386.03 -83.02
+3386.45 -82.34 3387.33 -82.20 3387.36 -83.43 3387.84 -81.52 3388.23
+-83.05 3388.41 -83.99 3388.58 -82.36 3389.21 -83.75 3389.80 -81.68
+3390.31 -83.02 3390.88 -65.80 3390.89 -65.80 3391.72 -28.76 3391.73
+-28.76 3392.56 8.36 3392.57 8.36 3393.41 45.20 3393.41 45.20 3394.25
+81.40 3394.25 81.40 3394.50 83.44 3395.81 83.47 3395.91 81.87 3396.01
+83.75 3396.11 82.34 3396.87 81.25 3397.01 83.75 3397.87 83.75 3398.41
+82.32 3398.73 83.05 3398.85 81.87 3399.79 82.34 3399.89 83.87 3400.30
+81.75 3400.90 83.20 3401.17 82.35 3401.81 83.01 3401.91 81.47 3402.37
+83.05 3402.83 81.17 3403.10 83.05 3403.82 82.25 3403.85 83.75 3404.55
+83.07 3404.61 81.56 3405.27 83.08 3405.87 81.74 3406.43 82.32 3406.73
+83.05 3407.16 82.23 3407.55 83.75 3407.82 81.46 3408.21 83.16 3408.85
+81.76 3408.88 83.19 3409.37 82.30 3409.65 83.06 3410.77 82.29 3411.05
+83.06 3411.30 82.38 3411.75 83.75 3411.89 83.16 3411.92 81.55 3412.73
+82.58 3413.56 49.75 3413.57 49.75 3414.41 12.81 3414.41 12.81 3415.25
+-24.32 3415.25 -24.32 3416.08 -61.19 3416.09 -61.19 3416.79 -83.33
+3416.93 -83.27 3417.41 -81.25 3417.85 -81.23 3418.41 -83.04 3418.94
+-81.86 3419.21 -83.75 3419.83 -83.55 3420.25 -81.25 3420.77 -82.34
+3420.89 -83.88 3421.16 -83.11 3421.85 -81.84 3422.36 -82.36 3422.63
+-83.02 3423.00 -81.31 3423.35 -83.03 3424.15 -83.06 3424.35 -81.26
+3424.81 -83.75 3425.19 -82.25 3425.87 -83.87 3425.92 -82.32 3426.91
+-81.98 3426.94 -83.17 3427.33 -82.33 3427.61 -83.75 3428.13 -82.30
+3428.61 -83.75 3428.97 -82.30 3429.20 -83.15 3429.71 -82.32 3429.95
+-83.75 3430.61 -82.02 3430.65 -83.11 3431.25 -81.60 3432.00 -83.19
+3432.52 -82.35 3432.87 -83.16 3432.90 -83.12 3432.91 -81.52 3433.73
+-82.88 3434.56 -59.45 3434.57 -59.45 3435.41 -22.38 3435.41 -22.38
+3436.25 14.79 3436.25 14.79 3437.08 51.78 3437.09 51.78 3437.93 83.28
+3437.98 81.63 3438.01 83.75 3438.98 82.95 3439.23 82.36 3439.80 83.24
+3440.02 82.24 3440.97 81.73 3441.19 83.02 3441.81 83.75 3441.86 81.86
+3442.41 83.75 3442.90 81.51 3443.36 83.03 3443.75 82.33 3443.98 81.73
+3444.01 83.75 3444.88 83.06 3445.21 81.20 3445.53 83.02 3445.94 81.38
+3446.96 83.75 3447.01 81.79 3447.17 83.19 3447.26 82.26 3448.61 84.07
+3448.75 82.32 3448.94 81.62 3449.21 83.13 3449.89 83.10 3450.10 81.25
+3450.71 83.75 3450.81 82.30 3451.61 81.48 3451.61 83.75 3452.25 83.75
+3452.51 82.33 3453.61 83.75 3453.87 81.44 3453.89 81.44 3454.41 83.75
+3454.95 83.51 3455.55 57.96 3455.57 58.08 3456.41 20.30 3456.41 20.30
+3457.25 -16.49 3457.25 -16.61 3458.08 -53.36 3458.09 -53.36 3458.90
+-83.41 3458.93 -83.73 3459.40 -81.91 3459.91 -81.84 3460.21 -83.05
+3460.91 -83.39 3461.15 -82.35 3461.70 -83.05 3462.01 -81.50 3462.41
+-83.75 3462.75 -82.34 3463.81 -81.59 3463.91 -83.21 3464.03 -81.64
+3464.63 -83.11 3465.02 -81.48 3465.36 -83.05 3466.00 -83.23 3466.01
+-82.00 3466.58 -82.10 3466.73 -83.33 3467.95 -81.30 3467.97 -83.79
+3468.45 -83.75 3468.92 -82.22 3469.01 -83.03 3469.22 -82.34 3469.93
+-83.75 3470.40 -81.73 3470.81 -81.25 3471.03 -83.75 3471.98 -83.75
+3472.17 -82.33 3472.95 -82.24 3473.18 -83.06 3473.41 -83.75 3474.01
+-82.00 3474.06 -82.97 3474.88 -61.08 3474.89 -61.08 3475.72 -23.95
+3475.73 -23.95 3476.56 13.09 3476.57 13.09 3477.41 49.87 3477.41 49.87
+3478.21 83.40 3478.60 83.35 3479.02 81.88 3479.28 83.04 3479.63 82.38
+3480.03 81.65 3480.55 83.75 3480.90 84.02 3480.98 81.87 3481.85 83.47
+3482.03 81.62 3483.01 83.01 3483.15 81.37 3483.61 83.75 3483.87 82.31
+3484.20 81.56 3484.91 83.75 3485.01 82.10 3485.03 83.15 3485.81 83.75
+3485.97 81.70 3487.03 81.21 3487.18 83.03 3487.61 81.25 3487.98 83.37
+3488.61 81.69 3488.61 83.05 3489.53 83.10 3489.81 81.26 3490.21 83.75
+3490.58 82.30 3491.03 83.96 3491.68 68.88 3491.69 68.88 3492.52 31.99
+3492.53 31.99 3493.36 -5.33 3493.37 -5.77 3494.20 -42.54 3494.21 -42.39
+3495.05 -78.98 3495.05 -79.41 3495.61 -83.75 3496.10 -82.34 3496.31
+-83.09 3496.81 -83.75 3496.99 -81.67 3498.06 -83.47 3498.22 -82.34
+3499.06 -81.28 3499.21 -83.75 3499.65 -82.30 3499.97 -83.50 3500.50
+-82.24 3500.62 -83.20 3501.05 -81.26 3501.40 -83.07 3502.01 -81.84
+3502.07 -83.75 3503.41 -81.47 3503.42 -83.75 3503.75 -81.58 3504.07
+-83.75 3504.72 -82.25 3505.03 -83.68 3505.41 -82.31 3505.81 -83.01
+3506.02 -81.49 3506.21 -83.94 3507.20 -82.99 3507.53 -82.30 3507.97
+-83.26 3508.41 -81.25 3508.66 -83.04 3509.03 -81.56 3510.00 -81.78
+3510.08 -83.39 3510.60 -82.33 3510.95 -83.16 3511.07 -82.97 3511.85
+-55.62 3511.86 -55.79 3512.68 -18.74 3512.69 -18.74 3513.52 18.08 3513.53
+18.08 3514.36 55.19 3514.37 55.80 3515.21 83.31 3515.97 81.80 3516.03
+83.76 3516.05 84.14 3516.48 82.36 3517.04 83.75 3517.23 82.35 3518.01
+83.91 3518.20 81.86 3518.98 83.11 3519.21 81.25 3520.03 81.40 3520.11
+83.75 3520.85 82.14 3521.07 83.31 3521.55 82.26 3521.81 83.01 3521.99
+83.30 3522.05 81.55 3523.03 82.28 3523.35 83.01 3524.03 82.07 3524.05
+83.09 3524.69 82.97 3525.17 82.30 3525.60 81.97 3526.02 83.75 3526.32
+83.01 3526.41 81.39 3527.06 82.12 3527.09 83.07 3528.03 82.37 3528.48
+83.01 3529.09 81.82 3529.41 83.92 3529.61 81.25 3529.89 83.01 3530.65
+83.01 3530.93 82.28 3531.28 82.99 3531.61 81.21 3532.05 81.80 3532.08
+83.75 3532.85 83.00 3532.99 81.61 3534.11 81.52 3534.41 83.75 3535.07
+83.75 3535.22 82.34 3535.68 83.04 3536.02 81.26 3536.75 82.33 3537.02
+83.04 3537.06 82.06 3537.13 83.75 3538.03 81.74 3538.62 83.05 3538.91
+82.31 3539.07 83.90 3540.01 81.65 3540.03 83.75 3540.70 83.14 3541.05
+81.25 3541.61 83.75 3541.81 81.46 3542.15 83.13 3542.55 81.25 3543.18
+83.75 3543.32 82.27 3544.03 82.30 3544.13 83.75 3544.95 81.35 3545.08
+83.03 3545.61 83.75 3546.28 67.68 3546.29 67.68 3547.11 32.43 3547.13
+30.49 3547.87 4.65 3548.13 4.00 3548.60 6.48 3548.95 6.88 3549.30 3.75
+3549.82 4.85 3549.90 7.07 3551.03 4.79 3551.15 6.18 3552.07 4.78 3552.15
+6.25 3552.35 4.58 3552.40 5.64 3553.05 4.59 3553.65 6.25 3554.05 6.11
+3554.21 4.82 3555.08 4.61 3555.41 6.25 3555.67 5.29 3556.03 6.70 3557.04
+6.07 3557.10 4.76 3557.41 6.25 3557.50 5.00 3558.10 4.55 3558.61 6.25
+3559.14 6.25 3559.41 4.60 3559.81 6.25 3560.04 4.84 3561.10 4.76 3561.14
+6.74 3562.09 6.42 3562.15 4.87 3562.95 4.85 3563.04 6.11 3563.09 4.64
+3563.88 5.65 3564.11 4.84 3564.21 6.25 3564.81 6.25 3565.11 4.64 3566.01
+6.25 3566.06 4.64 3566.86 5.65 3567.05 4.85 3567.30 6.25 3568.11 4.84
+3568.14 6.25 3568.20 4.84 3569.05 4.82 3569.41 6.25 3570.01 6.25 3570.07
+4.65 3571.07 6.25 3571.12 4.65 3572.08 6.18 3572.09 4.83 3572.41 6.25
+3572.91 5.33 3573.17 4.94 3573.61 6.06 3574.21 4.94 3574.55 6.25 3575.07
+6.18 3575.21 4.67 3575.81 6.25 3576.16 4.67 3577.01 6.25 3577.17 4.65
+3577.45 6.25 3578.20 4.86 3578.21 5.00 3578.81 6.25 3579.14 4.88 3579.21
+6.25 3580.01 6.25 3580.12 4.87 3580.80 4.81 3581.01 6.25 3582.07 6.25
+3582.40 4.80 3582.41 5.00 3583.21 6.25 3583.61 4.95 3583.61 6.25 3584.12
+5.00 3584.60 6.11 3585.08 4.81 3585.21 6.25 3586.01 6.25 3586.40 4.93
+3586.61 6.25 3587.13 4.69 3587.80 4.66 3588.19 6.46 3588.42 5.65 3589.07
+4.55 3589.17 4.63 3589.41 6.25 3590.01 6.25 3590.14 4.80 3590.95 6.25
+3591.15 4.61 3592.20 5.89 3592.45 4.60 3593.11 4.90 3593.15 6.24 3594.00
+6.09 3594.14 4.82 3594.17 5.00 3594.20 6.07 3595.13 6.25 3595.21 4.79
+3596.09 6.13 3596.11 4.85 3597.01 5.00 3597.16 6.25 3598.18 6.25 3598.22
+4.63 3599.18 6.59 3599.22 4.60 3599.24 4.60 3600.03 6.09 3600.16 4.87
+3600.20 6.25 3601.14 4.88 3601.38 6.25 3602.18 4.81 3602.20 5.78 3602.95
+5.64 3603.32 4.59 3603.48 6.25 3604.22 4.62 3604.64 6.25 3605.03 4.82
+3605.20 6.25 3605.64 4.81 3606.14 6.13 3606.17 4.80 3607.04 6.25 3607.14
+4.88 3608.19 4.85 3608.20 6.25 3608.64 5.00 3608.88 6.25 3609.84 6.25
+3610.14 4.62 3610.16 4.82 3610.18 6.09 3611.08 6.25 3611.44 5.00 3612.04
+6.25 3612.63 4.64 3612.83 4.58 3613.26 6.25 3614.04 6.25 3614.15 4.63
+3614.83 6.12 3615.16 4.61 3615.26 4.61 3615.28 6.25 3616.20 4.86 3616.38
+6.15 3617.16 6.12 3617.26 5.00 3617.84 5.00 3618.04 6.25 3619.04 6.25
+3619.20 4.85 3619.53 4.83 3620.17 6.11 3620.25 4.65 3620.88 6.25 3621.16
+4.90 3621.48 6.17 3622.25 4.76 3622.44 6.25 3622.78 4.59 3623.03 6.17
+3623.98 6.25 3624.18 4.60 3625.03 4.80 3625.22 6.63 3625.78 5.00 3626.03
+6.15 3626.44 6.25 3626.68 4.91 3627.05 6.25 3627.38 4.80 3628.18 6.34
+3628.22 4.83 3629.03 4.86 3629.44 6.25 3629.64 6.25 3630.03 4.65 3630.63
+4.87 3630.64 6.25 3631.24 6.18 3631.84 5.00 3632.18 4.88 3632.28 6.13
+3633.04 6.25 3633.18 4.83 3633.98 6.18 3634.04 4.90 3635.18 5.05 3635.23
+6.72 3635.84 6.25 3636.19 5.26 3636.22 6.25 3636.43 4.79 3637.04 6.25
+3637.22 4.83 3638.29 6.19 3638.29 5.00 3639.24 4.82 3639.29 6.07 3640.25
+6.66 3640.30 5.00 3640.68 5.00 3641.23 6.79 3641.24 6.25 3641.29 4.65
+3642.24 6.33 3642.43 4.63 3643.20 6.35 3643.23 4.86 3644.29 6.09 3644.44
+5.00 3644.68 6.25 3645.19 4.84 3645.64 6.25 3646.22 4.81 3646.28 4.86
+3646.30 6.25 3647.29 6.11 3647.43 4.61 3648.04 6.25 3648.64 4.92 3649.18
+4.67 3649.27 6.34 3650.24 6.16 3650.26 4.86 3651.26 4.85 3651.31 6.54
+3651.32 6.54 3652.03 4.84 3652.22 4.84 3652.32 6.25 3653.31 4.64 3653.58
+6.25 3654.25 6.15 3654.31 4.90 3655.20 4.88 3655.24 6.38 3656.24 4.63
+3656.32 5.78 3656.64 5.00 3657.13 6.25 3657.24 6.19 3657.31 4.64 3658.31
+4.63 3658.68 6.25 3659.03 4.90 3659.04 6.25 3660.21 6.21 3660.33 4.88
+3660.64 6.19 3661.21 4.83 3661.63 4.87 3662.21 6.31 3662.28 4.64 3662.33
+6.25 3663.33 4.66 3663.63 6.17 3664.24 5.00 3664.33 6.65 3664.83 4.82
+3665.44 6.25 3666.04 6.25 3666.24 4.61 3667.03 6.16 3667.04 5.00 3667.32
+4.63 3667.34 6.25 3668.33 6.25 3668.84 4.86 3669.08 4.58 3669.43 6.15
+3670.30 6.12 3670.63 4.82 3671.23 4.80 3671.29 6.77 3671.84 6.25 3672.23
+4.63 3672.32 4.65 3672.55 5.67 3673.34 4.89 3673.64 6.25 3674.31 6.25
+3674.34 4.64 3675.13 6.25 3675.48 4.80 3676.34 4.82 3676.38 6.25 3677.26
+4.80 3677.35 6.25 3677.68 6.25 3677.88 5.30 3678.29 4.57 3678.83 6.22
+3679.25 4.86 3679.44 6.25 3680.03 6.25 3680.26 4.67 3681.03 4.77 3681.26
+6.31 3681.58 4.84 3682.30 6.80 3682.44 5.00 3682.84 6.25 3683.25 6.16
+3683.43 4.62 3684.33 6.15 3684.36 4.86 3685.36 4.64 3685.64 6.25 3686.26
+4.84 3686.36 6.25 3686.73 6.25 3687.31 4.60 3687.64 6.25 3688.04 4.83
+3688.30 6.25 3688.41 5.29 3689.64 6.25 3689.88 4.83 3690.31 5.79 3690.33
+4.84 3690.84 6.25 3691.31 4.63 3691.64 5.00 3692.24 6.25 3692.68 5.29
+3693.26 6.57 3693.48 5.32 3694.04 6.25 3694.26 5.80 3694.33 4.85 3695.03
+4.65 3695.34 6.25 3696.28 5.00 3696.37 6.25 3697.29 6.25 3697.48 4.64
+3698.08 6.25 3698.23 4.84 3698.38 4.82 3698.79 5.64 3699.31 6.62 3699.44
+5.00 3700.32 4.78 3700.37 6.51 3701.36 4.62 3701.39 6.25 3702.03 4.81
+3702.39 6.60 3702.83 4.84 3703.34 6.11 3703.78 6.25 3704.23 4.62 3704.30
+4.81 3704.73 6.25 3705.23 4.86 3705.44 6.25 3706.30 6.25 3706.37 4.63
+3707.30 6.25 3707.33 4.79 3708.04 6.25 3708.34 4.62 3708.93 4.62 3709.03
+6.16 3709.32 4.65 3709.36 6.25 3710.23 6.25 3710.35 5.00 3711.13 6.25
+3711.39 4.82 3711.93 6.25 3712.34 5.16 3713.30 4.81 3713.38 6.59 3713.71
+5.30 3714.30 6.36 3714.35 4.84 3714.40 6.18 3715.39 4.61 3715.84 6.25
+3716.30 6.15 3716.43 4.81 3717.29 4.89 3717.31 6.25 3718.38 4.82 3718.44
+6.25 3719.03 6.14 3719.33 4.91 3719.36 6.10 3719.43 4.88 3720.38 4.61
+3720.42 6.25 3721.37 4.60 3721.44 6.25 3722.23 6.12 3722.31 4.80 3723.42
+6.25 3723.48 4.63 3723.64 6.25 3724.36 4.83 3724.40 4.79 3724.83 6.00
+3725.25 5.46 3725.85 11.36 3726.31 11.93 3726.64 10.00 3727.33 10.65
+3727.43 12.18 3728.36 12.19 3728.59 7.97 3728.63 7.92 3729.30 4.56
+3729.44 6.25 3729.63 4.81 3730.32 4.59 3730.43 6.07 3731.36 5.68 3731.76
+-0.49 3732.04 -1.25 3732.42 0.09 3732.80 0.00 3732.92 0.03 3733.64
+0.00 3733.64 0.00 3734.48 0.00 3734.48 0.00 3735.32 0.00 3735.32 0.00
+3736.16 0.00 3736.16 0.00 3737.00 0.00 3737.00 0.00 3737.84 0.00 3737.84
+0.00 3738.68 0.00 3738.68 0.00 3739.52 0.00 3739.52 0.00 3740.36 0.00
+3740.36 0.00 3741.20 0.00 3741.20 0.00 3742.04 0.00 3742.04 0.00 3742.88
+0.00 3742.88 0.00 3743.72 0.00 3743.72 0.00 3744.56 0.00 3744.56 0.00
+3745.40 0.00 3745.40 0.00 3746.24 0.00 3746.24 0.00 3747.08 0.00 3747.08
+0.00 3747.92 0.00 3747.92 0.00 3748.76 0.00 3748.76 0.00 3749.60 0.00
+3749.60 0.00 3750.44 0.00 3750.44 0.00 3751.28 0.00 3751.28 0.00 3752.12
+0.00 3752.12 0.00 3752.96 0.00 3752.96 0.00 3753.80 0.00 3753.80 0.00
+3754.64 0.00 3754.64 0.00 3755.48 0.00 3755.48 0.00 3756.32 0.00 3756.32
+0.00 3757.16 0.00 3757.16 0.00 3758.00 0.00 3758.00 0.00 3758.84 0.00
+3758.84 0.00 3759.68 0.00 3759.68 0.00 3760.52 0.00 3760.52 0.00 3761.36
+0.00 3761.36 0.00 3762.20 0.00 3762.20 0.00 3763.04 0.00 3763.04 0.00
+3763.88 0.00 3763.88 0.00 3764.72 0.00 3764.72 0.00 3765.56 0.00 3765.56
+0.00 3766.40 0.00 3766.40 0.00 3767.24 0.00 3767.24 0.00 3768.08 0.00
+3768.08 0.00 3768.92 0.00 3768.92 0.00 3769.76 0.00 3769.76 0.00 3770.60
+0.00 3770.60 0.00 3771.44 0.00 3771.44 0.00 3772.28 0.00 3772.28 0.00
+3773.12 0.00 3773.12 0.00 3773.96 0.00 3773.96 0.00 3774.80 0.00 3774.80
+0.00 3775.64 0.00 3775.64 0.00 3776.48 0.00 3776.48 0.00 3777.32 0.00
+3777.32 0.00 3778.16 0.00 3778.16 0.00 3779.00 0.00 3779.00 0.00 3779.84
+0.00 3779.84 0.00 3780.68 0.00 3780.68 0.00 3781.52 0.00 3781.52 0.00
+3782.36 0.00 3782.36 0.00 3783.20 0.00 3783.20 0.00 3784.04 0.00 3784.04
+0.00 3784.88 0.00 3784.88 0.00 3785.72 0.00 3785.72 0.00 3786.56 0.00
+3786.56 0.00 3787.40 0.00 3787.40 0.00 3788.24 0.00 3788.24 0.00 3789.08
+0.00 3789.08 0.00 3789.92 0.00 3789.92 0.00 3790.76 0.00 3790.76 0.00
+3791.60 0.00 3791.60 0.00 3792.44 0.00 3792.44 0.00 3793.28 0.00 3793.28
+0.00 3794.12 0.00 3794.12 0.00 3794.96 0.00 3794.96 0.00 3795.80 0.00
+3795.80 0.00 3796.64 0.00 3796.64 0.00 3797.48 0.00 3797.48 0.00 3798.32
+0.00 3798.32 0.00 3799.16 0.00 3799.16 0.00 3800.00 0.00 3800.00 0.00
+3800.84 0.00 3800.84 0.00 3801.68 0.00 3801.68 0.00 3802.52 0.00 3802.52
+0.00 3803.36 0.00 3803.36 0.00 3804.20 0.00 3804.20 0.00 3805.04 0.00
+3805.04 0.00 3805.88 0.00 3805.88 0.00 3806.72 0.00 3806.72 0.00 3807.56
+0.00 3807.56 0.00 3808.40 0.00 3808.40 0.00 3809.24 0.00 3809.24 0.00
+3810.08 0.00 3810.08 0.00 3810.92 0.00 3810.92 0.00 3811.76 0.00 3811.76
+0.00 3812.60 0.00 3812.60 0.00 3813.44 0.00 3813.44 0.00 3814.28 0.00
+3814.28 0.00 3815.12 0.00 3815.12 0.00 3815.96 0.00 3815.96 0.00 3816.80
+0.00 3816.80 0.00 3817.64 0.00 3817.64 0.00 3818.48 0.00 3818.48 0.00
+3819.32 0.00 3819.32 0.00 3820.16 0.00 3820.16 0.00 3821.00 0.00 3821.00
+0.00 3821.84 0.00 3821.84 0.00 3822.68 0.00 3822.68 0.00 3823.52 0.00
+3823.52 0.00 3824.36 0.00 3824.36 0.00 3825.20 0.00 3825.20 0.00 3826.04
+0.00 3826.04 0.00 3826.88 0.00 3826.88 0.00 3827.72 0.00 3827.72 0.00
+3828.56 0.00 3828.56 0.00 3829.40 0.00 3829.40 0.00 3830.24 0.00 3830.24
+0.00 3831.08 0.00 3831.08 0.00 3831.92 0.00 3831.92 0.00 3832.76 0.00
+3832.76 0.00 3833.60 0.00 3833.60 0.00 3834.44 0.00 3834.44 0.00 3835.28
+0.00 3835.28 0.00 3836.12 0.00 3836.12 0.00 3836.96 0.00 3836.96 0.00
+3837.80 0.00 3837.80 0.00 3838.64 0.00 3838.64 0.00 3839.48 0.00 3839.48
+0.00 3840.32 0.00 3840.32 0.00 3841.16 0.00 3841.16 0.00 3842.00 0.00
+3842.00 0.00 3842.84 0.00 3842.84 0.00 3843.68 0.00 3843.68 0.00 3844.52
+0.00 3844.52 0.00 3845.36 0.00 3845.36 0.00 3846.20 0.00 3846.20 0.00
+3847.04 0.00 3847.04 0.00 3847.88 0.00 3847.88 0.00 3848.72 0.00 3848.72
+0.00 3849.56 0.00 3849.56 0.00 3850.40 0.00 3850.40 0.00 3851.24 0.00
+3851.24 0.00 3852.08 0.00 3852.08 0.00 3852.92 0.00 3852.92 0.00 3853.76
+0.00 3853.76 0.00 3854.60 0.00 3854.60 0.00 3855.44 0.00 3855.44 0.00
+3856.28 0.00 3856.28 0.00 3857.12 0.00 3857.12 0.00 3857.96 0.00 3857.96
+0.00 3858.80 0.00 3858.80 0.00 3859.64 0.00 3859.64 0.00 3860.48 0.00
+3860.48 0.00 3861.32 0.00 3861.32 0.00 3862.16 0.00 3862.16 0.00 3863.00
+0.00 3863.00 0.00 3863.84 0.00 3863.84 0.00 3864.68 0.00 3864.68 0.00
+3865.52 0.00 3865.52 0.00 3866.36 0.00 3866.36 0.00 3867.20 0.00 3867.20
+0.00 3868.04 0.00 3868.04 0.00 3868.88 0.00 3868.88 0.00 3869.72 0.00
+3869.72 0.00 3870.56 0.00 3870.56 0.00 3871.40 0.00 3871.40 0.00 3872.24
+0.00 3872.24 0.00 3873.08 0.00 3873.08 0.00 3873.92 0.00 3873.92 0.00
+3874.76 0.00 3874.76 0.00 3875.60 0.00 3875.60 0.00 3876.44 0.00 3876.44
+0.00 3877.28 0.00 3877.28 0.00 3878.12 0.00 3878.12 0.00 3878.96 0.00
+3878.96 0.00 3879.80 0.00 3879.80 0.00 3880.64 0.00 3880.64 0.00 3881.48
+0.00 3881.48 0.00 3882.32 0.00 3882.32 0.00 3883.16 0.00 3883.16 0.00
+3884.00 0.00 3884.00 0.00 3884.84 0.00 3884.84 0.00 3885.68 0.00 3885.68
+0.00 3886.52 0.00 3886.52 0.00 3887.36 0.00 3887.36 0.00 3888.20 0.00
+3888.20 0.00 3889.04 0.00 3889.04 0.00 3889.88 0.00 3889.88 0.00 3890.72
+0.00 3890.72 0.00 3891.56 0.00 3891.56 0.00 3892.40 0.00 3892.40 0.00
+3893.24 0.00 3893.24 0.00 3894.08 0.00 3894.08 0.00 3894.92 0.00 3894.92
+0.00 3895.76 0.00 3895.76 0.00 3896.60 0.00 3896.60 0.00 3897.44 0.00
+3897.44 0.00 3898.28 0.00 3898.28 0.00 3899.12 0.00 3899.12 0.00 3899.96
+0.00 3899.96 0.00 3900.80 0.00 3900.80 0.00 3901.64 0.00 3901.64 0.00
+3902.48 0.00 3902.48 0.00 3903.32 0.00 3903.32 0.00 3904.16 0.00 3904.16
+0.00 3905.00 0.00 3905.00 0.00 3905.84 0.00 3905.84 0.00 3906.68 0.00
+3906.68 0.00 3907.52 0.00 3907.52 0.00 3908.36 0.00 3908.36 0.00 3909.20
+0.00 3909.20 0.00 3910.04 0.00 3910.04 0.00 3910.88 0.00 3910.88 0.00
+3911.72 0.00 3911.72 0.00 3912.56 0.00 3912.56 0.00 3913.40 0.00 3913.40
+0.00 3914.24 0.00 3914.24 0.00 3915.08 0.00 3915.08 0.00 3915.92 0.00
+3915.92 0.00 3916.76 0.00 3916.76 0.00 3917.60 0.00 3917.60 0.00 3918.44
+0.00 3918.44 0.00 3919.28 0.00 3919.28 0.00 3920.12 0.00 3920.12 0.00
+3920.96 0.00 3920.96 0.00 3921.80 0.00 3921.80 0.00 3922.64 0.00 3922.64
+0.00 3923.48 0.00 3923.48 0.00 3924.32 0.00 3924.32 0.00 3925.16 0.00
+3925.16 0.00 3926.00 0.00 3926.00 0.00 3926.84 0.00 3926.84 0.00 3927.68
+0.00 3927.68 0.00 3928.52 0.00 3928.52 0.00 3929.36 0.00 3929.36 0.00
+3930.20 0.00 3930.20 0.00 3931.04 0.00 3931.04 0.00 3931.88 0.00 3931.88
+0.00 3932.72 0.00 3933.56 0.99 3933.56 0.99 3934.24 6.25 3934.40 5.51
+3935.04 -0.47 3935.24 0.00 3935.24 0.00 3936.08 0.00 3936.08 0.00 3936.92
+0.00 3936.92 0.00 3937.76 0.00 3937.76 0.00 3938.60 0.00 3938.60 0.00
+3939.44 0.00 3940.24 4.66 3940.28 3.98 3941.00 0.00 3941.13 0.00 3941.73
+1.25 3941.96 0.00 3941.97 0.39 3942.80 0.00 3942.80 0.00 3943.64 0.00
+3943.64 0.00 3944.48 0.00 3944.48 0.00 3945.32 0.00 3945.32 0.00 3946.16
+0.00 3946.16 0.00 3947.00 0.00 3947.00 0.00 3947.84 0.00 3947.84 0.00
+3948.68 0.00 3948.68 0.00 3949.52 0.00 3949.52 0.00 3950.36 0.00 3950.36
+0.00 3951.20 0.00 3951.20 0.00 3952.04 0.00 3952.04 0.00 3952.88 0.00
+3952.88 0.00 3953.72 0.00 3953.72 0.00 3954.56 0.00 3954.56 0.00 3955.40
+0.00 3955.40 0.00 3956.24 0.00 3956.24 0.00 3957.08 0.00 3957.08 0.00
+3957.92 0.00 3957.92 0.00 3958.76 0.00 3958.76 0.00 3959.60 0.00 3959.60
+0.00 3960.44 0.00 3960.44 0.00 3961.28 0.00 3961.28 0.00 3962.12 0.00
+3962.12 0.00 3962.96 0.00 3962.96 0.00 3963.80 0.00 3963.80 0.00 3964.64
+0.00 3964.64 0.00 3965.48 0.00 3965.48 0.00 3966.32 0.00 3966.32 0.00
+3967.16 0.00 3967.16 0.00 3968.00 0.00 3968.00 0.00 3968.84 0.00 3968.84
+0.00 3969.68 0.00 3969.68 0.00 3970.52 0.00 3970.52 0.00 3971.36 0.00
+3971.36 0.00 3972.20 0.00 3972.20 0.00 3973.04 0.00 3973.04 0.00 3973.88
+0.00 3973.88 0.00 3974.72 0.00 3974.72 0.00 3975.56 0.00 3975.56 0.00
+3976.40 0.00 3976.40 0.00 3977.24 0.00 3977.24 0.00 3978.08 0.00 3978.08
+0.00 3978.92 0.00 3978.92 0.00 3979.76 0.00 3979.76 0.00 3980.60 0.00
+3980.60 0.00 3981.44 0.00 3981.44 0.00 3982.28 0.00 3982.28 0.00 3983.12
+0.00 3983.12 0.00 3983.96 0.00 3983.96 0.00 3984.80 0.00 3984.80 0.00
+3985.64 0.00 3985.64 0.00 3986.48 0.00 3986.48 0.00 3987.32 0.00 3987.32
+0.00 3988.16 0.00 3988.16 0.00 3989.00 0.00 3989.00 0.00 3989.84 0.00
+3989.84 0.00 3990.68 0.00 3990.68 0.00 3991.52 0.00 3991.52 0.00 3992.36
+0.00 3992.36 0.00 3993.20 0.00 3993.20 0.00 3994.04 0.00 3994.04 0.00
+3994.88 0.00 3994.88 0.00 3995.72 0.00 3995.72 0.00 3996.56 0.00 3996.56
+0.00 3997.40 0.00 3997.40 0.00 3998.24 0.00 3998.24 0.00 3999.08 0.00
+3999.08 0.00 3999.92 0.00 3999.92 0.00 4000.76 0.00 4000.76 0.00 4001.60
+0.00 4001.60 0.00 4002.44 0.00 4002.44 0.00 4003.28 0.00 4003.28 0.00
+4004.12 0.00 4004.12 0.00 4004.96 0.00 4004.96 0.00 4005.80 0.00 4005.80
+0.00 4006.64 0.00 4006.64 0.00 4007.48 0.00 4007.48 0.00 4008.32 0.00
+4008.32 0.00 4009.16 0.00 4009.16 0.00 4010.00 0.00 4010.00 0.00 4010.84
+0.00 4010.84 0.00 4011.68 0.00 4011.68 0.00 4012.52 0.00 4012.52 0.00
+4013.36 0.00 4013.36 0.00 4014.20 0.00 4014.20 0.00 4015.04 0.00 4015.04
+0.00 4015.88 0.00 4015.88 0.00 4016.72 0.00 4016.72 0.00 4017.56 0.00
+4017.56 0.00 4018.40 0.00 4018.40 0.00 4019.24 0.00 4019.24 0.00 4020.08
+0.00 4020.08 0.00 4020.92 0.00 4020.92 0.00 4021.76 0.00 4021.76 0.00
+4022.60 0.00 4022.60 0.00 4023.44 0.00 4023.44 0.00 4024.28 0.00 4024.28
+0.00 4025.12 0.00 4025.12 0.00 4025.96 0.00 4025.96 0.00 4026.80 0.00
+4026.80 0.00 4027.64 0.00 4027.64 0.00 4028.48 0.00 4028.48 0.00 4029.32
+0.00 4029.32 0.00 4030.16 0.00 4030.16 0.00 4031.00 0.00 4031.00 0.00
+4031.84 0.00 4031.84 0.00 4032.68 0.00 4032.68 0.00 4033.52 0.00 4033.52
+0.00 4034.36 0.00 4034.36 0.00 4035.20 0.00 4035.20 0.00 4036.04 0.00
+4036.04 0.00 4036.88 0.00 4036.88 0.00 4037.72 0.00 4037.72 0.00 4038.56
+0.00 4038.56 0.00 4039.40 0.00 4039.40 0.00 4040.24 0.00 4040.24 0.00
+4041.08 0.00 4041.08 0.00 4041.92 0.00 4041.92 0.00 4042.76 0.00 4042.76
+0.00 4043.60 0.00 4043.60 0.00 4044.44 0.00 4044.44 0.00 4045.28 0.00
+4045.28 0.00 4046.12 0.00 4046.12 0.00 4046.96 0.00 4046.96 0.00 4047.80
+0.00 4047.80 0.00 4048.64 0.00 4048.64 0.00 4049.48 0.00 4049.48 0.00
+4050.32 0.00 4050.32 0.00 4051.16 0.00 4051.16 0.00 4052.00 0.00 4052.00
+0.00 4052.84 0.00 4052.84 0.00 4053.68 0.00 4053.68 0.00 4054.52 0.00
+4054.52 0.00 4055.36 0.00 4055.36 0.00 4056.20 0.00 4056.20 0.00 4057.04
+0.00 4057.04 0.00 4057.88 0.00 4057.88 0.00 4058.72 0.00 4058.72 0.00
+4059.56 0.00 4059.56 0.00 4060.40 0.00 4060.40 0.00 4061.24 0.00 4061.24
+0.00 4062.08 0.00 4062.08 0.00 4062.92 0.00 4062.92 0.00 4063.76 0.00
+4063.76 0.00 4064.60 0.00 4064.60 0.00 4065.44 0.00 4065.44 0.00 4066.28
+0.00 4066.28 0.00 4067.12 0.00 4067.12 0.00 4067.96 0.00 4067.96 0.00
+4068.80 0.00 4068.80 0.00 4069.64 0.00 4069.64 0.00 4070.48 0.00 4070.48
+0.00 4071.32 0.00 4071.32 0.00 4072.16 0.00 4072.16 0.00 4073.00 0.00
+4073.00 0.00 4073.84 0.00 4073.84 0.00 4074.68 0.00 4074.68 0.00 4075.52
+0.00 4075.52 0.00 4076.36 0.00 4076.36 0.00 4077.20 0.00 4077.20 0.00
+4078.04 0.00 4078.04 0.00 4078.88 0.00 4078.88 0.00 4079.72 0.00 4079.72
+0.00 4080.56 0.00 4080.56 0.00 4081.40 0.00 4081.40 0.00 4082.24 0.00
+4082.24 0.00 4083.08 0.00 4083.08 0.00 4083.92 0.00 4083.92 0.00 4084.76
+0.00 4084.76 0.00 4085.60 0.00 4085.60 0.00 4086.44 0.00 4086.44 0.00
+4087.28 0.00 4087.28 0.00 4088.12 0.00 4088.12 0.00 4088.96 0.00 4088.96
+0.00 4089.80 0.00 4089.80 0.00 4090.64 0.00 4090.64 0.00 4091.48 0.00
+4091.48 0.00 4092.32 0.00 4092.32 0.00 4093.16 0.00 4093.16 0.00 4094.00
+0.00 4094.00 0.00 4094.84 0.00 4094.84 0.00 4095.68 0.00 4095.68 0.00
+4096.52 0.00 4096.52 0.00 4097.36 0.00 4097.36 0.00 4098.20 0.00 4098.20
+0.00 4099.04 0.00 4099.04 0.00 4099.88 0.00 4099.88 0.00 4100.72 0.00
+4100.72 0.00 4101.56 0.00 4101.56 0.00 4102.40 0.00 4102.40 0.00 4103.24
+0.00 4103.24 0.00 4104.08 0.00 4104.08 0.00 4104.92 0.00 4104.92 0.00
+4105.76 0.00 4105.76 0.00 4106.60 0.00 4106.60 0.00 4107.44 0.00 4107.44
+0.00 4108.28 0.00 4108.28 0.00 4109.12 0.00 4109.12 0.00 4109.96 0.00
+4109.96 0.00 4110.80 0.00 4110.80 0.00 4111.64 0.00 4111.64 0.00 4112.48
+0.00 4112.48 0.00 4113.32 0.00 4113.32 0.00 4114.16 0.00 4114.16 0.00
+4115.00 0.00 4115.00 0.00 4115.84 0.00 4115.84 0.00 4116.68 0.00 4116.68
+0.00 4117.52 0.00 4117.52 0.00 4118.36 0.00 4118.36 0.00 4119.20 0.00
+4119.20 0.00 4120.04 0.00 4120.04 0.00 4120.88 0.00 4120.88 0.00 4121.72
+0.00 4121.72 0.00 4122.56 0.00 4122.56 0.00 4123.40 0.00 4123.40 0.00
+4124.24 0.00 4124.24 0.00 4125.08 0.00 4125.08 0.00 4125.92 0.00 4125.92
+0.00 4126.76 0.00 4126.76 0.00 4127.60 0.00 4127.60 0.00 4128.44 0.00
+4128.44 0.00 4129.28 0.00 4129.28 0.00 4130.12 0.00 4130.12 0.00 4130.96
+0.00 4130.96 0.00 4131.80 0.00 4131.80 0.00 4132.64 0.00 4132.64 0.00
+4133.48 0.00 4133.48 0.00 4134.32 0.00 4134.32 0.00 4135.16 0.00 4135.16
+0.00 4136.00 0.00 4136.00 0.00 4136.84 0.00 4136.84 0.00 4137.68 0.00
+4137.68 0.00 4138.52 0.00 4138.52 0.00 4139.36 0.00 4139.36 0.00 4140.20
+0.00 4140.20 0.00 4141.04 0.00 4141.04 0.00 4141.88 0.00 4141.88 0.00
+4142.72 0.00 4142.72 0.00 4143.56 0.00 4143.56 0.00 4144.40 0.00 4144.40
+0.00 4145.24 0.00 4145.24 0.00 4146.08 0.00 4146.08 0.00 4146.92 0.00
+4146.92 0.00 4147.76 0.00 4147.76 0.00 4148.60 0.00 4148.60 0.00 4149.44
+0.00 4149.44 0.00 4150.28 0.00 4150.28 0.00 4151.12 0.00 4151.12 0.00
+4151.96 0.00 4151.96 0.00 4152.80 0.00 4152.80 0.00 4153.64 0.00 4153.64
+0.00 4154.48 0.00 4154.48 0.00 4155.32 0.00 4155.32 0.00 4156.16 0.00
+4156.16 0.00 4157.00 0.00 4157.00 0.00 4157.84 0.00 4157.84 0.00 4158.68
+0.00 4158.68 0.00 4159.52 0.00 4159.52 0.00 4160.36 0.00 4160.36 0.00
+4161.20 0.00 4161.20 0.00 4162.04 0.00 4162.04 0.00 4162.88 0.00 4162.88
+0.00 4163.72 0.00 4163.72 0.00 4164.56 0.00 4164.56 0.00 4165.40 0.00
+4165.40 0.00 4166.24 0.00 4166.24 0.00 4167.08 0.00 4167.08 0.00 4167.92
+0.00 4167.92 0.00 4168.76 0.00 4168.76 0.00 4169.60 0.00 4169.60 0.00
+4170.44 0.00 4170.44 0.00 4171.28 0.00 4171.28 0.00 4172.12 0.00 4172.12
+0.00 4172.96 0.00 4172.96 0.00 4173.80 0.00 4173.80 0.00 4174.64 0.00
+4174.64 0.00 4175.48 0.00 4175.48 0.00 4176.32 0.00 4176.32 0.00 4177.16
+0.00 4177.16 0.00 4178.00 0.00 4178.00 0.00 4178.84 0.00 4178.84 0.00
+4179.68 0.00 4179.68 0.00 4180.52 0.00 4180.52 0.00 4181.36 0.00 4181.36
+0.00 4182.20 0.00 4182.20 0.00 4183.04 0.00 4183.04 0.00 4183.88 0.00
+4183.88 0.00 4184.72 0.00 4184.72 0.00 4185.56 0.00 4185.56 0.00 4186.40
+0.00 4186.40 0.00 4187.24 0.00 4187.24 0.00 4188.08 0.00 4188.08 0.00
+4188.92 0.00 4188.92 0.00 4189.76 0.00 4189.76 0.00 4190.60 0.00 4190.60
+0.00 4191.44 0.00 4191.44 0.00 4192.28 0.00 4192.28 0.00 4193.12 0.00
+4193.12 0.00 4193.96 0.00 4193.96 0.00 4194.80 0.00 4194.80 0.00 4195.64
+0.00 4195.64 0.00 4196.48 0.00 4196.48 0.00 4197.32 0.00 4197.32 0.00
+4198.16 0.00 counttomark /m exch def /maxYValues 1 def /YValuePos
+1 def /XValuePos 1 def /n m maxYValues 1 add div cvi def XValuePos
+1 gt {n { maxYValues 1 add XValuePos neg roll dup /XValue ED maxYValues
+1 add XValuePos 1 sub roll pop XValue maxYValues 1 add 1 roll m maxYValues
+1 add roll } repeat } if maxYValues 1 gt {n { maxYValues YValuePos
+1 sub neg roll maxYValues 1 sub { pop } repeat /m m maxYValues 1 sub
+sub def m 2 roll } repeat } if /xMax -99999 def /yMax -99999 def /xP
+0 def /yP 0 def m copy n { /y exch def /x exch def xMax x lt { /xMax
+x def } if yMax y lt {/yMax y def } if xP x gt { /xP x def } if yP
+y gt { /yP y def } if } repeat 0 0 gt 0 0 gt or () length 0 gt or ()
+length 0 gt or () length 0 gt or () length 0 gt or { () length 0 gt
+{ }{ xP } ifelse /xStart exch def () length 0 gt { }{ yP } ifelse /yStart
+exch def () length 0 gt { }{ xMax } ifelse /xEnd exch def () length
+0 gt { }{ yMax } ifelse /yEnd exch def n { m -2 roll 2 copy /yVal
+exch def /xVal exch def xVal xP ge yVal yP ge and xVal xEnd le and
+yVal yEnd le and xVal xStart ge and yVal yStart ge and { /xP xP 0 add
+def /yP yP 0 add def }{pop pop /m m 2 sub def } ifelse } repeat }{/ncount
+1 def () length 0 gt { }{ m } ifelse /nEnd exch def n { m -2 roll
+1 1 gt { ncount 0 sub 1 mod 0 eq }{ true } ifelse ncount nEnd le and
+ncount 0 ge and not { pop pop /m m 2 sub def } if /ncount ncount 1
+add def } repeat } ifelse 0.18335 0.07114 /y ED /x ED /yPSOp { -100
+sub 5.000000000000000000 mul 0 add y mul 1.0 mul } def /xPSOp { 0
+sub 0.238151940938318647 mul 0 add x mul 1.0 mul } def counttomark
+dup dup cvi eq not { exch pop } if /m exch def /n m 2 div cvi def n
+{ yPSOp m 1 roll xPSOp m 1 roll /m m 2 sub def } repeat /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.8 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial 0 TeXcolorgray 0 TeXcolorgray
+eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF
+%%EndDocument
+countdictstack InitDictCount sub { end } repeat
+cleartomark restore grestore
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/fig_NoiseData_OpenLine.eps b/graphics/pstricks/contrib/numericplots/doc/src/fig_NoiseData_OpenLine.eps
new file mode 100644
index 0000000000..d5f06928f2
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/fig_NoiseData_OpenLine.eps
@@ -0,0 +1,8413 @@
+%!PS-Adobe-2.0 EPSF-1.2
+%%Pages: 1
+%%DocumentFonts:
+%%BoundingBox: 131 676 316 781
+%%HiResBoundingBox: 131.826441 676.583979 315.618178 780.328242
+%%EndComments
+
+%%BeginProlog
+%%BeginPreview: 185 104 8 520
+% 11b67669445044444b4b444450444444504444445044444b4b4444504444445044444b4b44445044
+% 4444504444445044444b4b4444504444445044444b4b444450444444504444445044444b4b444450
+% 4444445044444b4b4444504444445044444450444450444444504444445044444b4b444450444444
+% 5044444450444450444444504444445044444b4b4444504444445044444b4b444450444444504444
+% 445044444b4b4444504444445044444b4b4444504450769e71
+% 22f2c9b88c9c8888949488889c8c8888a088888c9c8890d6948888a088888c9c8888949488889c8c
+% 8888a088b9b09c888894948888a088888c9c8888949488889c8cd688a088888c9c888894948888a0
+% 88888c9c88889494d6889c8c8888a088888c9c88889c8c8888a088888ca1d388949488889c8c8888
+% a088888c9c88889c8c8888d9ad888c9c8888949488889c8c8888a0888894948888db8c8888a08888
+% 8c9c8888949488889c8c8888a08888d99488889c8c98c7eace
+% 00df0000000000000000000000000000000000000000008800000000000033440000000000000000
+% 00000000444400000000000000000000000000000000000000008800000000000000000000000000
+% 00000000000000008800000000000000000000000000000000000000000088000000000000000000
+% 00000000000000000000008844000000000000000000000000000000000000000088000000000000
+% 00000000000000000000000000000088000000000000004488
+% 00df00000000000000000000000000000000000000000088000000000000bbff0000000000000000
+% 00000000444400000000000000000000000000000000000000008800000000000000000000000000
+% 00000000000000008800000000000000000000000000000000000000000088000000000000000000
+% 00000000000000000000008844000000000000000000000000000000000000000088000000000000
+% 00000000000000000000000000000088000000000000004488
+% 00ab0000000000000000000000000000000000000000091a000000000000bbff0000000000000000
+% 001144221a0900000000000000114400000000000000000000002200000000000000000000000000
+% 0000000000000000220000000000000000000000000000000000000000091a000000000000000000
+% 00000000000000000000001a09000000000000000000000000000000000000000022000000000000
+% 00000000000000000000000000000022000000000000004488
+% 00ab0000000000000000000000000000000000000000091a000000000000bbff0000000000000000
+% 0044ff881a090000000000000044ff44000000000000000000002200000000000000000000000000
+% 0000000000000000220000000000000000000000000000000000000000091a000000000000000000
+% 00000000000000000000001a09000000000000000000000000000000000000000022000000000000
+% 00000000000000000000000000000022000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 0044ff8800000000000000000044ff44000000000000000000000000000000000000000000000011
+% 44444444778800000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000001166446600007755556644553377446633664444556600000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 0044ff8800000000000000000077ff44000000000000000000000000000000000000000000000044
+% eeffffeeddff00000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000044ffffff0000eeeeffffbbffffffffffbbffffffffff00000000
+% 00000000000000000000000000000000000000000000004488
+% 009f0000000000000000000000000000000000000000112b000000000000bbff0000000000000000
+% 1177ff882b110000000000000099ff44000000000000000000003c00000000000000000000000044
+% bb00000000bb00003c0000000000000000000000000000000000000000112b000000000000000000
+% 00000000000000000000002b110044ffffff0000bbbbffffbbffffffffffbbffffffbbbb00000000
+% 0000000000000000000000000000003c000000000000004488
+% 00b700000000000000000000000000000000000000000009000000000000bbff0000000000000000
+% 44ffff88090000000000000044ffff44000000000000000000000900000000000000000000000044
+% bb00000000bb00000900000000000000000000000000000000000000000009000000000000000000
+% 000000000000000000000009000044ffbbff0000bbbbffffbbffffffffffbbffffffbbbb00000000
+% 00000000000000000000000000000009000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 44ffff88000000000000000044dddd44000000000000000000000000000000000000000000000044
+% bb00000000bb33000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000044ffbbff0000bbbbffffbbffffffffffbbffffffbbbb00000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 44ffff88000000000000000044bbbb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000044ffbbff0000bbbbffffbbffffddffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 009c00000000000000000000000000000000000000001133000000000000bbff0000000000000000
+% 44bb8888331100000000000044bbbb44000000000000000000004400000000000000000000000044
+% bb00000000bb44004400000000000000000000000000000000000000001133000000000000000000
+% 000000000000000000000033110044ffbbff0000bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000044000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000bbff0000000000000000
+% 44bb8888000000000000000044bbbb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000088ffbbff0000bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000088eeff0000000000000000
+% 44bb8888000000000000000044bbbb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000088ffbbff0000bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00b7000000000000000000000000000000000000000000090000000000bbbbff0000000000000000
+% 44bb8888090000000000000044bbbb44000000000000000000000900000000000000000000000044
+% bb00000000bb44000900000000000000000000000000000000000000000009000000000000000000
+% 000000000000000000000009000088ffbbff0022bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000000000000000000000000000000000000112b0000000000bb44ff0000000000000000
+% 99bb88882b1100000000000099bbbb44000000000000000000003c00000000000000000000000044
+% bb00000000bb44003c0000000000000000000000000000000000000000112b000000000000000000
+% 00000000000000000000002b110088ffbbff0044bbbbffffbbffff88ffffbbfffff2bbbb44000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000bb44ff0000000000000000
+% ffbb88880000000000000000ff66bb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000088ffbbff0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00dd8c66092b00001a1a00002b090000330000092b00001a1a00003300bb4bff00001a1a00002b09
+% bb00a08800092b00001a1a00ff33bb44092b00001a1a00002b090000330000092b00001a1a000069
+% bb00092b00bb571a00002b090000330000092b00002b090000330000092b00001a1a00002b090000
+% 330000092b00002b0900003300008cffbbff1a57bbbbffffbbffff88ffffc2ffffffbdbb44330000
+% 092b00001a1a00002b0900003300001a1a00002b092288b998
+% 00a2000000110000090900001100000011000000110011310900001100bb44ff0000090900001122
+% bb0090882b11110000090900ff11bb44001100000909000011003c00110000001100000909000050
+% bb00001100bb4b093c0011000000110000001100001100000011000000202b000909000011000000
+% 110000001100001100000036110088ffbbff094bbbbbffffbbffff88ffffbdffffffbbbb44110000
+% 00110000090900001100000011000041090000110000005088
+% 00b7000000000000000000000000000000000000000000090000000000bb44ff0000000000000044
+% bb0088880900000000000000ff00bb44000000000000000000000900000000000000000000000044
+% bb00000000bb44000900000000000000000000000000000000000000000009000000000000000000
+% 0000000000000000000000090000888800bb0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000009000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000bb44ff0000000000000044
+% bb0088880000000000000000ff00bb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000000000000000000000000000888800bb0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000bb44ff0000000000000044
+% bb0088880000000000000000ff00bb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000000000000000000000000000888800bb0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 009c000000000000000000000000000000000000000011330000000000bb44ff0000000000000044
+% bb0088883311000000000000ff00bb44000000000000000000004400000000000000000000000044
+% bb00000000bb44004400000000000000000000000000000000000000001133000000000000000000
+% 0000000000000000000000331100888800bb0044bbbbffffbbffff88ffffbbffffffbbbb44000000
+% 00000000000000000000000000000044000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000bb44ff00000000000000bb
+% bb0088880000000000000088ff00bb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000000000000000000000000000888800bb0044bbbbffffbbffff88ffffccffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000bb44ff00000000000000ff
+% 6600888800000000000000bb7700bb44000000000000000000000000000000000000000000000044
+% bb00000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000000000000000000000000000888800bb0044bbbbffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00b70000000000000000000000000000000000000000000900000011bbee44ff00000000000000ff
+% 0000888809000000000000bb4400bb4400000000000000000000090000000000000066eebbffdddd
+% bb00000000bb44000900000000000000000000000000000000000000000009000000000000000000
+% 000099bbbbbbaaaaeeffbbbdddbbdd8800bb0044bbbbffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000000000000000000000000000000000000112b00000044dd7700ff00000000000000ff
+% 000088882b110000000000bb4400bb44000000000000000000003c0000000000000088bb66448888
+% 3300000000bb44003c0000000000000000000000000000000000000000112b000000000000000000
+% 0000ffffffffffffccbbffffffffff8800bb0044bbbbffffbbffff88ffffffffffffbbbb44000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000044bb0000ff00000000000000ff
+% 0000778800000000000000bb4400bb44000000000000000000000000000000000000888800000000
+% 0000000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000ffffffffffffbb88ffffffffff8800bb0044bbbbffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000044bb0000ff00000000000000ff
+% 0000448800000000000000bb4400bb44000000000000000000000000000000000000888800000000
+% 0000000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000ffddffffffffbb88ffffffffff8800bb1155bb88ffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000000000000000000004488
+% 00ab0000000000000000000000000000000000000000091a00000044bb0000ff00000000000000ff
+% 000044881a090000000000bb4400bb44000000000000000000002200000000000000888800000000
+% 0000000000bb4400220000000000000000000000000000000000000000091a000000000000000000
+% 0000ff88ffffffffbb88ffffffffff8800bb4488bb88ffffbbffff88ffffffffffffbbbb44000000
+% 00000000000000000000000000000022000000000000004488
+% 00ab0000000000000000000000000000000000000000091a00000044bb0000ff00000000000000ff
+% 000044881a090000000000bb4400bb44000000000000000000002200000000000000888800000000
+% 0000000000bb4400220000000000000000000000000000000000000000091a000000000000000000
+% 0000ff88ffffffffbb88ffffffffff8800bb4488bb88ffffbbffff88ffffffffffffbbbb44000000
+% 00000022000000000000000000000022000000000000004488
+% 00bb00000000000000000000000000000000000000000000000033ffbb0000ff000000000000bbff
+% 00004488000000000000bbff4400bb44000000000000000000000000000000000000888800000000
+% 0000000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000ff88ffffffffbb88ffffffffff8800bb4488bb88ffffbbffff88ffffffffffffbbbb44000000
+% 000000ff000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000044dd220000ff000000000000bb55
+% 00004488000000000000bb770000bb44000000000000000000000000001100000000888800000000
+% 0000000000bb44000000000000000000000000000000000000000000000000000000000000000000
+% 0000ff88ffffffffbb88ffffffffff8800bb4499bb88ffffeeffff88ffffffffffffbbbb44000000
+% 000000ff000000000000000000000000000000000000004488
+% 009c0000000033ff00000000000000000000aaffffffffffffffffbb000000ff0000000033ffff44
+% 000044883311000077ffff440000bb4400000000000000000000a8ffffffffffffffff8800000000
+% 0000000000bb44004400000000000000000000000000000000000000eeffffffffeeffffeeffeeff
+% ffeeff88ffffffffbb88ffffffffff8800bbffffbb88ffffffffff88ffffffffffffbbbbffffffff
+% ffffffff3300000000000000bb110044000000000000004488
+% 00bb0000000044ff00000000000000000000bb443344444444ff4422000000ff0000000044cc3300
+% 0000448800000000889922000000bb440000000000000000000088ff554422444433440000000000
+% 00000000008844000000000000000000000000000000000000000000ff443344bbffffffff66ffff
+% ffff8888ffffffffbb88ffffffff8811001155552288ffffffffff88ffffffffffffbb3344334444
+% 554444cc4400000000000000ff440000000000000000004488
+% 00f1e0d6bdcbccffc4c4bbbbcbbdbbbbcdbbdd093c00002222ff0044000009ff0000222244bb3c09
+% 0000768800093c00889822000044bb44093c0000222200003c8cddff690000093c00002222000044
+% 0000093c00885d2200003c090000440000093c00003c090000440000ff3c0000c4ffffffff4bffff
+% ffff888cffffffffbd88ffffffff8c3c000022220088ffffffffff88ffffffffffffbd0000440000
+% 093c00bbd3c4bbbbcbbdbbbbffccbbc4c4bbbbcbbdc4dfee98
+% 00b70000000044ff3300000000000000000000000000000900000000000000bb1100000044bb0000
+% 000044883a000000888800000000bb66330000000022113311cc0900000000000000000000000000
+% 00000000008877443a22221122440000000000000000000000000022ff000900bbffffffff44ffff
+% ffff7788ffffffffaa88ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000044ff0000000000000000000000000000112b00000000000000bbffbb000044bb0000
+% 000044ffff410000888800000000bbffff330000bbffffffffff3c00000000000000000000000000
+% 000000000088ffffffffffffffff8800000000ff330000000000aaffee112b00aaffffeeff44ffff
+% ffff7788ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000002233cc110044bb0000
+% 00000044cc6600008844000000001133cc550000bb77330044330000000000000000000000000000
+% 00000000001133113344443344998800000000ff440000000000bb66110000000022111133003311
+% 22440088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000000000ffbb0044bb0000
+% 00000000bbff00008844000000000000bbff0000bb44000000000000000000000000000000000000
+% 00000000000000000000000000888800000011ff440000000000bb44000000000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00ab0000000000000000000000000000000000000000091a00000000000000000055bb0044bb0000
+% 0000000039bd0000884400000000000000ff0000bb44000000002200000000000000000000000000
+% 00000000000000002200000000888800000044ff440000000000bb4400091a000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000022000000000000004488
+% 00ab0000000000000000000000000000000000000000091a00000000000000000044bb0044bb0000
+% 000000001abd1100884400000000000000ff0000bb44000000002200000000000000000000000000
+% 00000000000000002200000000888800000044ff440000000000bb4400091a000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000022000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044bb0044bb0000
+% 0000000000bb4400884400000000000000ff0000bb44000000000000000000000000000000000000
+% 00000000000000000000000000668800000044ff440000000000bb44000000000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044bb0044bb0000
+% 0000000000bb4400884400000000000000ff0000bb44000000000000000000000000000000000000
+% 00000000000000000000000000448800000044ff440000000000bb44000000000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 009f0000000000000000000000000000000000000000112b00000000000000000044bb0044bb0000
+% 000000002bc04400884400000000000000ff0000bb44000000003c00000000000000000000000000
+% 00000000000000003c0000000044aa77444477ff440000000000bb4400112b000000000000000000
+% 00000088ffffffff8888ffffffff8800000000000088ffffffffff88ffffffffffffbb0000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00b70000000000000000000000000000000000000000000900000000000000000044bb0044bb0000
+% 0000000009bb4400884400000000000000ffbb00bb44000000000900000000000000000000000000
+% 0000000000000000090000000033cceeffffeeff440000000000bb44000009000000000000000000
+% 00000066ddcceedd7766ffffeebb6600000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000009000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044cc1144bb0000
+% 0000000000bb7700884400000000000000ffbb00bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000111100bb440000000000bb44000000000000000000000000
+% 00000000001111000000000000000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00b70000000000000000000000000000000000000000000900000000000000000044ff8844bb0000
+% 000000000999ff00884400000000000000ddbb00bb44000000000900000000000000000000000000
+% 00000000000000000900000000000000000000bb440000000000bb44000009000000000000000000
+% 00000000000000000000000900000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000000000000000000000000000000000000112b00000000000000000044ff8844bb0000
+% 000000002b11ff0088440000000000000044bb00bb44000000003c00000000000000000000000000
+% 00000000000000003c00000000000000000000bb440000000000bb4400112b000000000000000000
+% 00000000000000000000002b11000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044ff8844bb0000
+% 000000000000ff0088440000000000000044bb00bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb0000000000000000000000000000000000000000000000000000000000000044ff8844bb0000
+% 000000000000ff0088440000000000000044bb00bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffffffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00ab0000000000000000000000000000000000000000091a00000000000000000033dd8844990000
+% 000000001a09ff0088440000000000000044bb00bb44000000002200000000000000000000000000
+% 00000000000000002200000000000000000000bb440000000000bb4400091a000000000000000000
+% 00000000000000000000001a09000000000000000088ffddffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000022000000000000004488
+% 00ab0000000000000000000000000000000000000000091a00000000000000000000888844880000
+% 000000001a09ff0088440000000000000044bb00bb44000000002200000000000000000000000000
+% 00000000000000002200000000000000000000bb440000000000bb4400091a000000000000000000
+% 00000000000000000000001a09000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000022000000000000004488
+% 00e08c66093c0000222200003c090000440000093c000022220000440000093c0000989844883c09
+% 000044000009ff00885d2200004400000970bb00c45d00003c090000440000093c00002222000044
+% 0000093c0000222200003c090000440000093cbb443c09000044bb44093c0000222200003c090000
+% 440000093c00003c090000440000093c000022220088ffbdffffff88ffffffffffffbd0000440000
+% 093c0000222200003c090000440000222200003c092288bf98
+% 00bb000000000000000000000000000000000000000000000000000000000000000088cc66880000
+% 000000000000ff88bb440000000000000044dd33bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 009f0000000000000000000000000000000000000000112b0000000000000000000066ff88880000
+% 000000002b1199bbbb440000000000000022ee88bb44000000003c00000000000000000000000000
+% 00000000000000003c00000000000000000000bb440000000000bb4400112b000000000000000000
+% 00000000000000000000002b11000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00b7000000000000000000000000000000000000000000090000000000000000000000bb88880000
+% 00000000090044bbbb4400000000000000008888bb44000000000900000000000000000000000000
+% 00000000000000000900000000000000000000bb440000000000bb44000009000000000000000000
+% 00000000000000000000000900000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000009000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000000000000000bb88880000
+% 00000000000044bbbb4400000000000000008888bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffffffffffffbb0000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000000000000000bb88880000
+% 00000000000044bbbb4400000000000000008888bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffffffffffff990000000000
+% 00000000000000000000000000000000000000000000004488
+% 009c000000000000000000000000000000000000000011330000000000000000000000bb88880000
+% 00000000331111bbbb4400000000000000008888bb44000000004400000000000000000000000000
+% 00000000000000004400000000000000000000bb440000000000bb44001133000000000000000000
+% 00000000000000000000003311000000000000000088ffbbffffff88ffbbffffffff880000000000
+% 00000000000000000000000000000044000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000000000000000bb88880000
+% 00000000000000bbbb4400000000000000008888bb44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffbbffffffff880000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb000000000000000000000000000000000000000000000000000000000000000000bb88880000
+% 00000000000000bbbb44000000000000000088bbdd44000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bb440000000000bb44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffffff88ffbbffeeffff880000000000
+% 00000000000000000000000000000000000000000000004488
+% 00b7000000000000000000000000000000000000000000090000000000000000000000bbbb880000
+% 00000000090000eeee44000000000000000088ffff00000000000900000000000000000000000000
+% 00000000000000000900000000000000000000bb440000000000bb44000009000000000000000000
+% 00000000000000000000000900000000000000000088ffbbffffff88ffbbffbbffff880000000000
+% 00000000000000000000000000000009000000000000004488
+% 009f0000000000000000000000000000000000000000112b000000000000000000000088ff880000
+% 000000002b1100ccff44000000000000000011ddff00000000003c00000000000000000000000000
+% 00000000000000003c00000000000000000000bb440000000000bb4400112b000000000000000000
+% 00000000000000000000002b11000000000000000088ffbbffffff88ffbbffbbffff880000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000000000000044ff880000
+% 0000000000000088ff4400000000000000000099ff00000000000000000000000000000000000000
+% 00000000000000000000000000000000000000bbccccddccbbbbff44000000000000000000000000
+% 00000000000000000000000000000000000000000088ffbbffddff88ffbbffbbffff880000000000
+% 00000000000000000000000000000000000000000000004488
+% 00bb00000000000000000000000000000000000000000000000000000000000000000022ff880000
+% 0000000000000088ff4400000000000000000088ff00000000000000000000000000000000000000
+% 00000000000000000000000000000000000000447788888888887711000000000000000000000000
+% 00000000000000000000000000000000000000000022776666555511884477337766440000000000
+% 00000000000000000000000000000000000000000000004488
+% 009f0000000000000000000000000000000000000000112b000000000000000000000000ff880000
+% 000000002b110088ff4400000000000000000088ff00000000003c00000000000000000000000000
+% 00000000000000003c0000000000000000000000000000000000000000112b000000000000000000
+% 00000000000000000000002b1100000000000000000000000000000000000000003c000000000000
+% 0000000000000000000000000000003c000000000000004488
+% 00b70000000000000000000000000000000000000000000900000000000000000000000066330000
+% 00000000090000228811000000000000000000559900000000000900000000000000000000000000
+% 00000000000000000900000000000000000000000000000000000000000009000000000000000000
+% 00000000000000000000000900000000000000000000000000000000000000000009000000000000
+% 00000000000000000000000000000009000000000000004488
+% 00df0000000000000000000000000000000000000000008800000000000000000000000000000000
+% 00000000444400000000000000000000000000000000000000008800000000000000000000000000
+% 00000000000000008800000000000000000000000000000000000000000088000000000000000000
+% 00000000000000000000008844000000000000000000000000000000000000000088000000000000
+% 00000000000000000000000000000088000000000000004488
+% 00df0000000000000000000000000000000000000000008800000000000000000000000000000000
+% 00000000444400000000000000000000000000000000000000008800000000000000000000000000
+% 00000000000000008800000000000000000000000000000000000000000088000000000000000000
+% 00000000000000000000008844000000000000000000000000000000000000000088000000000000
+% 00000000000000000000000000000088000000000000004488
+% 11e77669445044444b4b44445044444450444444504450bc4b4444504444445044444b4b44445044
+% 44445044917f5044444b4b4444504444445044444b4b44445044bf44504444445044444b4b444450
+% 4444445044444b4bbf44504444445044444450444450444444504444445bb9444b4b444450444444
+% 5044444450444450444444bc7f44445044444b4b4444504444445044444b4b4444c1444444504444
+% 445044444b4b444450444444504444c14b444450445076bec9
+% 22ceaba08c9c8888949488889c8c8888a088888c9c888894948888a088888c9c8888949488889c8c
+% 8888a088888c9c888894948888a088888c9c8888949488889c8c8888a088888c9c888894948888a0
+% 88888c9c8888949488889c8c8888a088888c9c88889c8c8888a088888c9c8888949488889c8c8888
+% a088888c9c88889c8c8888a088888c9c8888949488889c8c8888a08888949488889c8c8888a08888
+% 8c9c8888949488889c8c8888a08888949488889c8c90a8cf7c
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000003399001177000000
+% 00000000000000000077000000000000117700000000000000000000000000000044445500000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb001177000000
+% 00000000000000000077000000000000117700000000000000000000000000006633009944000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb003344003344
+% 22330000445522002244000022442200334433442233000000000000000000005555008888000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb0000bb0000dd
+% 1144775566009900008800446600664400bb00dd114477003388888888888811000000aa22000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb0000bb0000bb
+% 004488aa55448800008800aa110044aa00bb00bb0044880000000000000000000000773300000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000000bb0000bb0000bb
+% 0044889933001100008800993300449900bb00bb0044880033888888888888110055330033000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 000000000000000000000000000000000000000000000000000000000000000033dd2233dd2233dd
+% 2277aa2177445500008800227744771133dd4edd2277aa11000000000000000055ddbbbb44000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000111188000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000338888000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
+% 00000000000000000000000000000000000000000000000000
+%%EndImage
+%%EndPreview
+%%Page: 1 1
+%%BeginDocument: D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\tex\graphics\ag_eps\fig_NoiseData_OpenLine.eps
+/InitDictCount countdictstack def gsave save mark newpath
+userdict /setpagedevice /pop load put
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.992 Copyright 2012 Radical Eye Software
+%%Title: D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\tex\graphics\tmp\figure_main.dvi
+%%CreationDate: Wed Aug 08 09:37:20 2012
+%%Pages: 1
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 596 842
+%%DocumentFonts: LMRoman10-Regular
+%%DocumentPaperSizes: a4
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips -Ppdf -q -R0 -o
+%+ D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\tex\graphics\tmp\fig_NoiseData_OpenLine.ps
+%+ D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\tex\graphics\tmp\figure_main.dvi
+%DVIPSParameters: dpi=8000
+%DVIPSSource: TeX output 2012.08.08:0937
+%%BeginProcSet: tex.pro 0 0
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
+/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
+setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
+restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
+def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
+rotate}{show}ifelse}ifelse}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0
+N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop
+false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A
+length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}
+forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{
+BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat
+{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch
+round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0
+rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B
+/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}
+B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
+-3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{
+0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: alt-rule.pro 0 0
+%!
+% Patch by TVZ
+% Makes dvips files draw rules with stroke rather than fill.
+% Makes narrow rules more predictable at low resolutions
+% after distilling to PDF.
+% May have unknown consequences for very thick rules.
+% Tested only with dvips 5.85(k).
+TeXDict begin
+/QV {
+ gsave newpath /ruleY X /ruleX X
+ Rx Ry gt
+ { ruleX ruleY Ry 2 div sub moveto Rx 0 rlineto Ry }
+ { ruleX Rx 2 div add ruleY moveto 0 Ry neg rlineto Rx }
+ ifelse
+ setlinewidth 0 setlinecap stroke grestore
+} bind def
+end
+
+%%EndProcSet
+%%BeginProcSet: psfrag.pro 0 0
+%%
+%% This is file `psfrag.pro',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% psfrag.dtx (with options: `filepro')
+%%
+%% Copyright (c) 1996 Craig Barratt, Michael C. Grant, and David Carlisle.
+%% All rights reserved.
+%%
+%% This file is part of the PSfrag package.
+%%
+userdict begin
+/PSfragLib 90 dict def
+/PSfragDict 6 dict def
+/PSfrag { PSfragLib begin load exec end } bind def
+end
+PSfragLib begin
+/RO /readonly load def
+/CP /currentpoint load def
+/CM /currentmatrix load def
+/B { bind RO def } bind def
+/X { exch def } B
+/MD { { X } forall } B
+/OE { end exec PSfragLib begin } B
+/S false def
+/tstr 8 string def
+/islev2 { languagelevel } stopped { false } { 2 ge } ifelse def
+[ /sM /tM /srcM /dstM /dM /idM /srcFM /dstFM ] { matrix def } forall
+sM currentmatrix RO pop
+dM defaultmatrix RO idM invertmatrix RO pop
+srcFM identmatrix pop
+/Hide { gsave { CP } stopped not newpath clip { moveto } if } B
+/Unhide { { CP } stopped not grestore { moveto } if } B
+/setrepl islev2 {{ /glob currentglobal def true setglobal array astore
+ globaldict exch /PSfrags exch put glob setglobal }}
+ {{ array astore /PSfrags X }} ifelse B
+/getrepl islev2 {{ globaldict /PSfrags get aload length }}
+ {{ PSfrags aload length }} ifelse B
+/convert {
+ /src X src length string
+ /c 0 def src length {
+ dup c src c get dup 32 lt { pop 32 } if put /c c 1 add def
+ } repeat
+} B
+/Begin {
+ /saver save def
+ srcFM exch 3 exch put
+ 0 ne /debugMode X 0 setrepl
+ dup /S exch dict def { S 3 1 roll exch convert exch put } repeat
+ srcM CM dup invertmatrix pop
+ mark { currentdict { end } stopped { pop exit } if } loop
+ PSfragDict counttomark { begin } repeat pop
+} B
+/End {
+ mark { currentdict end dup PSfragDict eq { pop exit } if } loop
+ counttomark { begin } repeat pop
+ getrepl saver restore
+ 7 idiv dup /S exch dict def {
+ 6 array astore /mtrx X tstr cvs /K X
+ S K [ S K known { S K get aload pop } if mtrx ] put
+ } repeat
+} B
+/Place {
+ tstr cvs /K X
+ S K known {
+ bind /proc X tM CM pop
+ CP /cY X /cX X
+ 0 0 transform idtransform neg /aY X neg /aX X
+ S K get dup length /maxiter X
+ /iter 1 def {
+ iter maxiter ne { /saver save def } if
+ tM setmatrix aX aY translate
+ [ exch aload pop idtransform ] concat
+ cX neg cY neg translate cX cY moveto
+ /proc load OE
+ iter maxiter ne { saver restore /iter iter 1 add def } if
+ } forall
+ /noXY { CP /cY X /cX X } stopped def
+ tM setmatrix noXY { newpath } { cX cY moveto } ifelse
+ } {
+ Hide OE Unhide
+ } ifelse
+} B
+/normalize {
+ 2 index dup mul 2 index dup mul add sqrt div
+ dup 4 -1 roll exch mul 3 1 roll mul
+} B
+/replace {
+ aload pop MD
+ CP /bY X /lX X gsave sM setmatrix
+ str stringwidth abs exch abs add dup 0 eq
+ { pop } { 360 exch div dup scale } ifelse
+ lX neg bY neg translate newpath lX bY moveto
+ str { /ch X ( ) dup 0 ch put false charpath ch Kproc } forall
+ flattenpath pathbbox [ /uY /uX /lY /lX ] MD
+ CP grestore moveto
+ currentfont /FontMatrix get dstFM copy dup
+ 0 get 0 lt { uX lX /uX X /lX X } if
+ 3 get 0 lt { uY lY /uY X /lY X } if
+ /cX uX lX add 0.5 mul def
+ /cY uY lY add 0.5 mul def
+ debugMode { gsave 0 setgray 1 setlinewidth
+ lX lY moveto lX uY lineto uX uY lineto uX lY lineto closepath
+ lX bY moveto uX bY lineto lX cY moveto uX cY lineto
+ cX lY moveto cX uY lineto stroke
+ grestore } if
+ dstFM dup invertmatrix dstM CM srcM
+ 2 { dstM concatmatrix } repeat pop
+ getrepl /temp X
+ S str convert get {
+ aload pop [ /rot /scl /loc /K ] MD
+ /aX cX def /aY cY def
+ loc {
+ dup 66 eq { /aY bY def } { % B
+ dup 98 eq { /aY lY def } { % b
+ dup 108 eq { /aX lX def } { % l
+ dup 114 eq { /aX uX def } { % r
+ dup 116 eq { /aY uY def } % t
+ if } ifelse } ifelse } ifelse } ifelse pop
+ } forall
+ K srcFM rot tM rotate dstM
+ 2 { tM concatmatrix } repeat aload pop pop pop
+ 2 { scl normalize 4 2 roll } repeat
+ aX aY transform
+ /temp temp 7 add def
+ } forall
+ temp setrepl
+} B
+/Rif {
+ S 3 index convert known { pop replace } { exch pop OE } ifelse
+} B
+/XA { bind [ /Kproc /str } B /XC { ] 2 array astore def } B
+/xs { pop } XA XC
+/xks { /kern load OE } XA /kern XC
+/xas { pop ax ay rmoveto } XA /ay /ax XC
+/xws { c eq { cx cy rmoveto } if } XA /c /cy /cx XC
+/xaws { ax ay rmoveto c eq { cx cy rmoveto } if }
+ XA /ay /ax /c /cy /cx XC
+/raws { xaws { awidthshow } Rif } B
+/rws { xws { widthshow } Rif } B
+/rks { xks { kshow } Rif } B
+/ras { xas { ashow } Rif } B
+/rs { xs { show } Rif } B
+/rrs { getrepl dup 2 add -1 roll //restore exec setrepl } B
+PSfragDict begin
+islev2 not { /restore { /rrs PSfrag } B } if
+/show { /rs PSfrag } B
+/kshow { /rks PSfrag } B
+/ashow { /ras PSfrag } B
+/widthshow { /rws PSfrag } B
+/awidthshow { /raws PSfrag } B
+end PSfragDict RO pop
+end
+
+%%EndProcSet
+%%BeginProcSet: pstricks.pro 0 0
+% $Id: pstricks.pro 647 2012-02-12 15:03:40Z herbert $
+%
+%% PostScript prologue for pstricks.tex.
+%% Version 1.12, 2012/02/12
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%
+%
+% Define the follwing gs-functions if not known, eg when using distiller
+%
+systemdict /.setopacityalpha known not {/.setopacityalpha { pop } def } if
+systemdict /.setblendmode known not {/.setblendmode { pop } def } if
+systemdict /.setshapealpha known not {/.setshapealpha { pop } def } if
+%
+/tx@Dict 200 dict def % the main PSTricks dictionary
+tx@Dict begin
+/ADict 25 dict def % The arrow dictionaray
+/CM { matrix currentmatrix } bind def
+/SLW /setlinewidth load def
+/CLW /currentlinewidth load def
+/CP /currentpoint load def
+/ED { exch def } bind def
+/L /lineto load def
+/T /translate load def
+/TMatrix { } def
+/RAngle { 0 } def
+/Sqrt { dup 0 lt { pop 0 } { sqrt } ifelse } def % return 0 for negative arguments
+/Atan { /atan load stopped { pop pop 0 } if } def % return 0 if atan not known
+/ATAN1 {neg -1 atan 180 sub } def % atan(x) (only one parameter)
+/Div { dup 0 eq { pop } { div } ifelse } def % control the division
+/tan { dup cos abs 1.e-10 lt
+ { pop 1.e10 } % return 1.e10 as infinit
+ { dup sin exch cos div } ifelse % default sin/cos
+} def
+/Tan { dup sin exch cos Div } def % sin(x)/cos(x) x in degrees
+/Acos {dup dup mul neg 1 add dup 0 lt { % arc cos, returns 0 when negative root
+ pop pop 0 }{ sqrt exch atan} ifelse } def
+/NET { neg exch neg exch T } def % change coordinate system to the negative one
+/Pyth { dup mul exch dup mul add sqrt } def % Pythagoras, expects 2 parameter
+/Pyth2 { % Pythagoras, xA yA xB yB
+ 3 -1 roll % xA xB yB yA
+ sub % xA xB yB-yA
+ 3 1 roll % yB-yA xA xB
+ sub % yB-yA xA-xB
+ Pyth } def
+/PtoC { 2 copy cos mul 3 1 roll sin mul } def % Polar to Cartesian
+/Rand { rand 4294967295 div } def % a real random number
+%----------------- hv added 20050516 ---------------
+/PiDiv2 1.57079632680 def
+/Pi 3.14159265359 def
+/TwoPi 6.28318530718 def
+/Euler 2.71828182846 def
+%/e Euler bind def
+%
+/RadtoDeg { 180 mul Pi div } bind def % convert from radian to degrees
+/DegtoRad { Pi mul 180 div } bind def % viceversa
+%----------------- hv end---------------------------
+/PathLength@ { /z z y y1 sub x x1 sub Pyth add def /y1 y def /x1 x def } def
+%
+/PathLength {
+ flattenpath /z 0 def
+ { /y1 ED /x1 ED /y2 y1 def /x2 x1 def }
+ { /y ED /x ED PathLength@ }
+ {}
+ { /y y2 def /x x2 def PathLength@ }
+ /pathforall load stopped { pop pop pop pop } if
+ z
+} def
+%
+/STP { .996264 dup scale } def % BP/PT scaling
+/STV { SDict begin normalscale end STP } def %
+%
+/DashLine {
+ dup 0 gt
+ { /a .5 def PathLength exch div }
+ { pop /a 1 def PathLength } ifelse
+ /b ED % pattern should fit evenly in b
+ dup /X ED % pattern array
+ 0 get /y ED % length of first black segment
+ /z 0 X {add} forall def % length of the full pattern
+ %% Computation of the scaling factor as described by van Zandt:
+ b a .5 sub 2 mul y mul sub z Div round
+ z mul a .5 sub 2 mul y mul add b exch Div
+ %%%% scaling factor on stack.
+ /z ED %% now, z is the scaling factor
+ false % for the length test below
+ X { z mul } forall X astore %% modification TN 04-08-07
+ %%% Checking whether at least one dash in X has positive length:
+ {0 gt or} forall
+ { X 1 a sub y mul }
+ { [ 1 0 ] 0 }
+ ifelse
+ setdash stroke
+} def
+%
+/DotLine {
+ /b PathLength def
+ /a ED /z ED /y CLW def
+ /z y z add def
+ a 0 gt {
+ /b b a div def
+ }{
+ a 0 eq {
+ /b b y sub def
+ }{ a -3 eq {
+ /b b y add def } if
+ } ifelse
+ } ifelse
+ [ 0 b b z Div round Div dup 0 le { pop 1 } if ]
+ a 0 gt { 0 }{ y 2 div a -2 gt { neg }if } ifelse
+ setdash 1 setlinecap stroke
+} def
+%
+/SymbolLine { % on stack [ x y x y ...
+ counttomark % number of elements
+ 2 div cvi /n ED % n pairs
+ /YA ED /XA ED % the start point
+ n 1 sub {
+ /YB ED /XB ED
+ /XLength XB XA sub def
+ /YLength YB YA sub def
+ /PAngle YLength XLength Atan def
+ /XYLength XLength YLength Pyth def
+
+ %% for negative SymStep we calculate the distance
+ SymStep 0 lt
+ { %XYLength SymStep div abs cvi
+ /nSym SymStep abs cvi def }
+ { /nSym XYLength SymStep div cvi def }
+ ifelse
+ 0.5 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ /deltaX XLength nSym div def
+ /deltaY YLength nSym div def
+ curveticks
+ { XA YA moveto }
+ { XA Shift sub YA Shift sub moveto }
+ ifelse
+ nSym {
+ gsave
+ curveticks
+ { PAngle 180 sub CorrAngle sub tickAngle add /rotAngle ED
+ currentpoint translate rotAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ {
+ rotateSymbol { PAngle 180 sub CorrAngle sub rotate } if
+ Symbol show
+ }
+ ifelse
+ grestore
+ deltaX deltaY rmoveto
+ } repeat
+ /YA YB def /XA XB def
+ } repeat
+ curveticks
+ { XA YA moveto }
+ { XA Shift sub YA Shift sub moveto }
+ ifelse
+ gsave
+ curveticks
+ { PAngle 180 sub CorrAngle sub tickAngle add /rotAngle ED
+ XA YA translate rotAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ {
+ rotateSymbol { PAngle 180 sub CorrAngle sub rotate } if
+ Symbol show
+ }
+ ifelse
+ grestore
+ pop % delete the mark symbol
+} def
+%
+/LineFill { % hv ------------ patch 7 -------------
+ gsave
+ abs /hatchWidthInc ED
+ abs /hatchSepInc ED
+ abs CLW add /a ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform pathbbox
+ /y2 ED
+ a Div ceiling cvi /x2 ED /y1 ED
+ a Div cvi /x1 ED /y2 y2 y1 sub def
+ clip
+ newpath
+ 2 setlinecap
+ systemdict
+ /setstrokeadjust known { true setstrokeadjust } if
+ x2 x1 sub 1 add {
+ x1 a mul y1 moveto 0 y2 rlineto stroke
+ /x1 x1 1 add
+ hatchWidthInc 0 gt { CLW add } if
+ def
+ hatchSepInc 0 gt hatchWidthInc 0 gt or {
+ /a a hatchSepInc add def
+ CLW hatchWidthInc add SLW
+ } if
+ } repeat
+ grestore
+ pop pop } def
+%
+/DotFill {% on stack: dot radius
+ /dotRadius ED
+ abs CLW add /a ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform
+ pathbbox % llx lly urx ury of smallest bounding box
+ /y2 ED /x2 ED /y1 ED /x1 ED
+ y2 y1 sub a div 2 add cvi /Ny ED
+ x2 x1 sub a div 2 add cvi /Nx ED
+ clip
+ newpath
+ /yA y1 dotRadius add CLW add def
+ /xA0 x1 dotRadius add CLW add def
+ Ny {
+ /xA xA0 def
+ Nx {
+ newpath
+ xA yA dotRadius 0 360 arc
+ SolidDot { gsave fill grestore } if
+ stroke
+ xA a add /xA ED
+ } repeat
+ yA a add /yA ED
+ } repeat
+ grestore
+} def
+%
+/PenroseFill {% on stack: scaling factor
+ dup dup scale
+ 1 exch div round /penroseFactor ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform pathbbox
+ /y2 ED
+ a Div ceiling cvi /x2 ED /y1 ED
+ a Div cvi /x1 ED /y2 y2 y1 sub def
+ clip
+ newpath
+ systemdict
+ /setstrokeadjust known { true setstrokeadjust } if
+ /I/S/L/W/G/+/Z/F/E/D[/def/exch/for{E D}/add{s E get mul}
+ { Z -36.2001 1 33 }{25 E S rlineto}{/q Z dup q G E q 1 + G}{Z 2 2}]{cvx def}forall
+ [0 72 1008 {dup sin E cos }F ]1 setlinejoin/s W{/a W{/b I 10{/i I 4{/m I moveto
+ i m +/j I 10{/l Z b m l + G a l G sub s m get div .2 + floor .3 + 25
+ mul j l + S rmoveto}F i L j L stroke }F}F}F}F
+ grestore
+ pop pop
+} def
+%
+/TruchetFill { % on stack: scaling factor
+ 10 dict begin
+ dup dup scale
+ 1 exch div round /penroseFactor ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform pathbbox
+ /y2 ED
+ a Div ceiling cvi /x2 ED /y1 ED
+ a Div cvi /x1 ED /y2 y2 y1 sub def
+ clip
+ newpath
+ systemdict
+ /setstrokeadjust known { true setstrokeadjust } if
+ /ma a neg def
+ /ha a 2 div def
+ /mha ha neg def
+ /tile {
+ rand dup 2 idiv 2 mul eq { 90 rotate } if
+ mha mha moveto ha mha lineto
+ ha ha lineto mha ha lineto
+% closepath .1 setlinewidth stroke
+ contents
+ } def
+ /contents{
+ 0 ha moveto ha 0 lineto
+ 0 mha moveto mha 0 lineto
+% 1 setlinewidth stroke
+ } def
+ /dotiling {
+ f ma mul a f a mul {
+ /i exch def
+ f ma mul a f a mul {
+ /j exch def
+ gsave i j translate
+ tile stroke grestore
+ } for
+ } for
+ } def
+%
+ /f 3 def
+ 5 srand dotiling
+ end % local user dict
+} def
+%
+/BeginArrow {
+ ADict begin % hold it local, for end see EndArrow
+ /@mtrx CM def
+ gsave
+ 2 copy T
+ 2 index sub neg exch
+ 3 index sub exch Atan
+ rotate newpath
+} def
+%
+/EndArrow { @mtrx setmatrix CP grestore end } def % end the ADict
+%
+/Arrow {
+ CLW mul add dup
+ 2 div /w ED
+ mul dup /h ED
+ mul /a ED
+ { 0 h T 1 -1 scale } if
+ w neg h moveto
+ 0 0 L w h L w neg a neg rlineto
+ gsave fill grestore
+} def
+%
+/ArrowD { % the sides are drawn as curves (hv 20071211)
+ CLW mul add dup
+ 2 div /w ED
+ mul dup /h ED
+ mul /Inset ED
+ { 0 h T 1 -1 scale } if % changes the direction
+% we use y=w/h^2 * x^2 as equation for the control points
+% for the coordinates the arrow is seen from top to bottom
+% the bottom (tip) is (0;0)
+ w neg h moveto % lower left of >
+ w 9 div 4 mul neg h 3 div 2 mul
+ w 9 div neg h 3 div
+ 0 0 curveto % tip of >
+ w 9 div h 3 div
+ w 9 div 4 mul h 3 div 2 mul
+ w h curveto % upper left of >
+ w neg Inset neg rlineto % move to x=0 and inset
+ gsave fill grestore
+} def
+%
+/Tbar {
+ CLW mul add /z ED
+ z -2 div CLW 2 div moveto
+ z 0 rlineto stroke
+ 0 CLW moveto
+} def
+%
+/Bracket {
+ CLW mul add dup CLW sub 2 div
+ /x ED mul CLW add /y ED /z CLW 2 div def
+ x neg y moveto
+ x neg CLW 2 div L x CLW 2 div L x y L stroke
+ 0 CLW moveto
+} def
+%
+/RoundBracket {
+ CLW mul add dup 2 div
+ /x ED mul /y ED /mtrx CM def
+ 0 CLW 2 div T x y mul 0 ne { x y scale } if
+ 1 1 moveto
+ .85 .5 .35 0 0 0 curveto
+ -.35 0 -.85 .5 -1 1 curveto
+ mtrx setmatrix stroke 0 CLW moveto
+} def
+%
+/SD { 0 360 arc fill } def
+%
+/EndDot { % DS is the dot size
+ { /z DS def } { /z 0 def } ifelse % outer or inner dimen
+ /b ED % the color definition
+ 0 z DS SD
+ b { 0 z DS CLW sub SD } if
+ 0 DS z add CLW 4 div sub
+ moveto
+} def
+%
+/Shadow { [ { /moveto load } { /lineto load } { /curveto load } {
+ /closepath load } /pathforall load stopped { pop pop pop pop CP /moveto
+ load } if ] cvx newpath 3 1 roll T exec } def
+%
+/NArray { % holds the coordinates and on top of stack the showpoints boolean
+ /showpoints ED
+ counttomark 2 div dup cvi /n ED % n 2 div on stack
+ n eq not { exch pop } if % even numbers of points? delete one
+ ] aload /Points ED
+ showpoints not { Points aload pop } if
+% { ] aload /Points ED }
+% { n 2 mul 1 add -1 roll pop } ifelse % delete the mark symbol
+} def
+%
+/Line {
+ NArray n 0 eq not
+ { n 1 eq { 0 0 /n 2 def } if ArrowA /n n 2 sub def
+ n { Lineto } repeat
+ CP 4 2 roll ArrowB L pop pop
+ } if
+} def
+%
+/LineToYAxis {
+ /Ox ED % Save the x origin value
+ NArray % all x-y pairs on stack
+ n { 2 copy moveto % go to current point
+ Ox exch Lineto % line to y-axis
+ pop % delete old x-value
+ } repeat
+} def
+%
+/LineToXAxis{
+ /Oy ED % Save the y origin value
+ NArray % all x-y pairs on stack
+ n 0 eq not
+ { n 1 eq { 0 0 /n 2 def } if
+ ArrowA
+ /n n 2 sub def
+ CP 2 copy moveto pop Oy Lineto
+ n { 2 copy moveto pop Oy Lineto } repeat
+ CP
+ 4 2 roll
+ ArrowB
+ 2 copy moveto pop Oy
+ L
+ pop pop } if
+} def
+%
+/Arcto {
+ /a [ 6 -2 roll ] cvx def
+ a r
+ /arcto load stopped { 5 } { 4 } ifelse { pop } repeat
+ a
+} def
+%
+/CheckClosed {
+ dup n 2 mul 1 sub index eq 2 index n 2 mul 1 add index eq
+ and { pop pop /n n 1 sub def } if
+} def
+%
+/Polygon {
+ NArray n 2 eq { 0 0 /n 3 def } if
+ n 3 lt
+ { n { pop pop } repeat }
+ { n 3 gt { CheckClosed } if
+ n 2 mul -2 roll
+ /y0 ED /x0 ED /y1 ED /x1 ED
+ x1 y1
+ /x1 x0 x1 add 2 div def
+ /y1 y0 y1 add 2 div def
+ x1 y1 moveto
+ /n n 2 sub def
+ n { Lineto } repeat
+ x1 y1 x0 y0 6 4 roll Lineto
+ Lineto pop pop closepath } ifelse
+} def
+%
+/SymbolPolygon { % on stack [ x y x y ...
+ counttomark % number of elements
+ 2 add /m ED
+ 2 copy m 2 roll % copy last two
+ m 2 div cvi /n ED % n pairs
+ /YA ED /XA ED % the start point
+ n 1 sub {
+ /YB ED /XB ED
+ /XLength XB XA sub def
+ /YLength YB YA sub def
+ /PAngle YLength XLength Atan def
+ /XYLength XLength YLength Pyth def
+ /nSym XYLength SymStep Div cvi def
+ /Shift Symbol stringwidth pop 2 Div def
+ /deltaX XLength nSym Div def
+ /deltaY YLength nSym Div def
+ XA Shift sub YA Shift sub moveto
+ nSym {
+ gsave rotateSymbol { PAngle 180 sub CorrAngle sub rotate } if
+ Symbol show
+ grestore
+ deltaX deltaY rmoveto
+ } repeat
+% XB Shift sub YB Shift sub moveto Symbol show
+ /YA YB def /XA XB def
+ } repeat
+ pop % delete the mark symbol
+} def
+%
+/Diamond {
+ /mtrx CM def
+ T rotate
+ /h ED
+ /w ED
+ dup 0 eq { pop } { CLW mul neg
+ /d ED
+ /a w h Atan def
+ /h d a sin Div h add def
+ /w d a cos Div w add def } ifelse
+ mark w 2 div h 2 div w 0 0 h neg w neg 0 0 h w 2 div h 2 div
+ /ArrowA { moveto } def
+ /ArrowB { } def
+ false Line
+ closepath mtrx setmatrix } def
+%
+/Triangle {
+ /mtrx CM def
+ translate
+ rotate /h ED 2 div /w ED
+ dup CLW mul /d ED
+ /h h d w h Atan sin Div sub def
+ /w w d h w Atan 2 div dup cos exch sin Div mul sub def
+ mark
+ 0 d w neg d 0 h w d 0 d
+ /ArrowA { moveto } def
+ /ArrowB { } def
+ false
+ Line
+ closepath
+ mtrx
+% DG/SR modification begin - Jun. 1, 1998 - Patch 3 (from Michael Vulis)
+% setmatrix } def
+ setmatrix pop
+} def
+% DG/SR modification end
+%
+/CCA {
+ /y ED /x ED
+ 2 copy y sub /dy1 ED
+ x sub /dx1 ED
+ /l1 dx1 dy1 Pyth def
+} def
+%
+/CC {
+ /l0 l1 def
+ /x1 x dx sub def
+ /y1 y dy sub def
+ /dx0 dx1 def
+ /dy0 dy1 def
+ CCA
+ /dx dx0 l1 c exp mul dx1 l0 c exp mul add def
+ /dy dy0 l1 c exp mul dy1 l0 c exp mul add def
+ /m dx0 dy0 Atan dx1 dy1 Atan sub 2 div cos abs b exp a mul dx dy Pyth Div 2 div def
+ /x2 x l0 dx mul m mul sub def
+ /y2 y l0 dy mul m mul sub def
+ /dx l1 dx mul m mul neg def
+ /dy l1 dy mul m mul neg def
+} def
+%
+/IC {
+ /c c 1 add def
+ c 0 lt { /c 0 def } { c 3 gt { /c 3 def } if } ifelse
+ /a a 2 mul 3 div 45 cos b exp div def
+ CCA
+ /dx 0 def
+ /dy 0 def
+} def
+%
+/BOC { IC CC x2 y2 x1 y1 ArrowA CP 4 2 roll x y curveto } def
+/NC { CC x1 y1 x2 y2 x y curveto } def
+/EOC { x dx sub y dy sub 4 2 roll ArrowB 2 copy curveto } def
+/BAC { IC CC x y moveto CC x1 y1 CP ArrowA } def
+/NAC { x2 y2 x y curveto CC x1 y1 } def
+/EAC { x2 y2 x y ArrowB curveto pop pop } def
+%
+/OpenCurve {
+ NArray n 3 lt
+ { n { pop pop } repeat }
+ { BOC /n n 3 sub def n { NC } repeat EOC } ifelse
+} def
+%
+/CurvePath {
+ %% for negative SymStep we calculate the distance
+ SymStep 0 lt { gsave PathLength SymStep div abs /SymStep ED grestore } if
+ 0.5 setflat
+ flattenpath /z 0 def /z0 0 def
+ { /y1 ED /x1 ED /y2 y1 def /x2 x1 def
+ x1 Shift sub y1 Shift sub moveto
+ gsave
+ curveticks
+ { x1 y1 translate startAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ { startAngle rotate Symbol show }
+ ifelse
+ grestore /z0 z def }
+ { /y ED /x ED PathLength@ z z0 sub SymStep ge {
+ x Shift sub y Shift sub moveto
+ gsave
+ curveticks
+ { y yOld sub x xOld sub Atan 180 sub CorrAngle sub /rotAngle ED
+ x y translate rotAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ {
+ rotateSymbol { y yOld sub x xOld sub Atan 180 sub CorrAngle sub rotate } if
+ Symbol show
+ }
+ ifelse
+ grestore /z0 z def } if
+ /yOld y def /xOld x def }
+ {} %% the lineto part
+ { /y y2 def /x x2 def PathLength@
+ x Shift sub y Shift sub moveto
+ gsave
+ curveticks
+ { y yOld sub x xOld sub Atan 180 sub /rotAngle ED
+ x y translate rotAngle rotate
+ 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+ SymbolLinewidth setlinewidth stroke
+ }
+ {
+ x Shift sub y Shift sub moveto
+ rotateSymbol { y yOld sub x xOld sub Atan 180 sub CorrAngle sub rotate } if
+ Symbol show
+ }
+ ifelse
+ grestore
+ }
+ pathforall
+% curveticks
+% { gsave
+% x y translate rotAngle rotate
+% 0 SymbolWidth 2 div moveto 0 SymbolWidth 2 div neg lineto
+% SymbolLinewidth setlinewidth stroke grestore
+% } if
+ z
+} def
+%
+/OpenSymbolCurve {
+ OpenCurve
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+%
+/AltCurve {
+ { false NArray n 2 mul 2 roll
+ [ n 2 mul 3 sub 1 roll ] aload
+ /Points ED
+ n 2 mul -2 roll }
+ { false NArray } ifelse
+ n 4 lt { n { pop pop } repeat } { BAC /n n 4 sub def n { NAC } repeat EAC } ifelse
+} def
+%
+/AltOpenSymbolCurve {
+ AltCurve
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+%
+/ClosedCurve {
+ NArray n 3 lt
+ { n { pop pop } repeat }
+ { n 3 gt { CheckClosed } if
+ 6 copy n 2 mul 6 add 6 roll
+ IC CC x y moveto n { NC } repeat
+ closepath pop pop
+ } ifelse
+} def
+%
+/ClosedSymbolCurve {
+ ClosedCurve
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+%
+/SQ { /r ED r r moveto r r neg L r neg r neg L r neg r L fill } def
+/ST { /y ED /x ED x y moveto x neg y L 0 x L fill } def
+/SP { /r ED gsave 0 r moveto 4 { 72 rotate 0 r L } repeat fill grestore } def
+%
+/FontDot {
+ DS 2 mul dup
+ matrix scale matrix concatmatrix exch matrix
+ rotate matrix concatmatrix exch
+ findfont exch makefont setfont
+} def
+%
+/Rect {
+ x1 y1 y2 add 2 div moveto
+ x1 y2 lineto
+ x2 y2 lineto
+ x2 y1 lineto
+ x1 y1 lineto
+ closepath
+} def
+%
+/OvalFrame {
+ x1 x2 eq y1 y2 eq or
+ { pop pop x1 y1 moveto x2 y2 L }
+ { y1 y2 sub abs x1 x2 sub abs 2 copy gt
+ { exch pop } { pop } ifelse
+ 2 div exch { dup 3 1 roll mul exch } if
+ 2 copy lt { pop } { exch pop } ifelse
+ /b ED
+ x1 y1 y2 add 2 div moveto
+ x1 y2 x2 y2 b arcto
+ x2 y2 x2 y1 b arcto
+ x2 y1 x1 y1 b arcto
+ x1 y1 x1 y2 b arcto
+ 16 { pop } repeat
+ closepath
+ } ifelse
+} def
+%
+/Frame {
+ CLW mul /a ED
+ 3 -1 roll
+ 2 copy gt { exch } if
+ a sub /y2 ED
+ a add /y1 ED
+ 2 copy gt { exch } if
+ a sub /x2 ED
+ a add /x1 ED
+ 1 index 0 eq { pop pop Rect } { OvalFrame } ifelse
+} def
+%
+/BezierNArray {
+ /f ED
+ counttomark 2 div dup cvi /n ED
+ n eq not { exch pop } if
+ n 1 sub neg 3 mod 3 add 3 mod { 0 0 /n n 1 add def } repeat
+ f { ] aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse
+} def
+%
+/OpenBezier {
+ BezierNArray
+ n 1 eq
+ { pop pop }
+ { ArrowA n 4 sub 3 idiv
+ { 6 2 roll 4 2 roll curveto } repeat
+ 6 2 roll 4 2 roll ArrowB curveto } ifelse
+} def
+%
+/OpenSymbolBezier {
+ OpenBezier
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+%
+/ClosedBezier {
+ BezierNArray
+ n 1 eq
+ { pop pop }
+ { moveto n 1 sub 3 idiv
+ { 6 2 roll 4 2 roll curveto } repeat
+ closepath } ifelse
+} def
+%
+/ClosedSymbolBezier {
+ /f ED % save showpoints value
+ 2 copy /yEnd ED /xEnd ED
+ counttomark -2 roll 2 copy /yStart ED /xStart ED
+ counttomark 2 roll
+ f
+ ClosedBezier
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+ [ xEnd yEnd xStart yStart SymbolLine
+} def
+%
+/BezierShowPoints {
+ gsave
+ Points aload length 2 div cvi /n ED
+ moveto
+ n 1 sub { lineto } repeat
+ CLW 2 div SLW [ 4 4 ] 0 setdash stroke
+ grestore
+} def
+%
+/Parab {
+ /y0 ED /x0 ED /y1 ED /x1 ED
+ /dx x0 x1 sub 3 div def
+ /dy y0 y1 sub 3 div def
+ x0 dx sub y0 dy add x1 y1 ArrowA
+ x0 dx add y0 dy add x0 2 mul x1 sub y1 ArrowB
+ curveto
+ /Points [ x1 y1 x0 y0 x0 2 mul x1 sub y1 ] def
+} def
+%
+/Parab1 { % 1 end | 0 SP
+ /ySP ED /xSP ED /y1 ED /x1 ED
+ /dx xSP x1 sub 3 div def
+ /dy ySP y1 sub 3 div def
+ newpath x1 y1 moveto xSP y1 lineto xSP ySP lineto
+ x1 ySP lineto closepath clip
+ currentpoint
+ newpath moveto
+ xSP dx sub ySP dy add x1 y1 ArrowA
+ xSP dx add ySP dy add xSP 2 mul x1 sub y1 ArrowB
+ curveto
+ /Points [ x1 y1 xSP ySP xSP 2 mul x1 sub y1 ] def
+} def
+%
+/Grid {
+ newpath
+ /a 4 string def
+ /b ED % psk@gridlabels in pt
+ /c ED % { \pst@usecolor\psgridlabelcolor }
+ /n ED % psk@griddots
+ cvi dup 1 lt { pop 1 } if
+ /s ED % \psk@subgriddiv
+ s div dup 0 eq { pop 1 } if
+ /dy ED s div dup 0 eq { pop 1 } if % \pst@number\psyunit abs
+ /dx ED dy div round dy mul % \pst@number\psxunit abs
+ /y0 ED dx div round dx mul
+ /x0 ED dy div round cvi
+ /y2 ED dx div round cvi
+ /x2 ED dy div round cvi
+ /y1 ED dx div round cvi
+ /x1 ED
+ /h y2 y1 sub 0 gt { 1 } { -1 } ifelse def
+ /w x2 x1 sub 0 gt { 1 } { -1 } ifelse def
+ b 0 gt {
+ /z1 b 4 div CLW 2 div add def
+% /Helvetica findfont b scalefont setfont
+ /b b .95 mul CLW 2 div add def } if
+ systemdict /setstrokeadjust known
+ { true setstrokeadjust /t { } def }
+ { /t { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add
+ exch itransform } bind def } ifelse
+ gsave n 0 gt { 1 setlinecap [ 0 dy n div ] dy n div 2 div setdash } { 2 setlinecap } ifelse
+ /i x1 def
+ /f y1 dy mul n 0 gt { dy n div 2 div h mul sub } if def
+ /g y2 dy mul n 0 gt { dy n div 2 div h mul add } if def
+ x2 x1 sub w mul 1 add dup 1000 gt { pop 1000 } if
+ { i dx mul dup y0 moveto
+ b 0 gt
+ { gsave c i a cvs dup stringwidth pop
+ /z2 ED w 0 gt {z1} {z1 z2 add neg} ifelse
+ h 0 gt {b neg}{z1} ifelse
+ rmoveto show grestore } if
+ dup t f moveto
+ g t L stroke
+ /i i w add def
+ } repeat
+ grestore
+ gsave
+ n 0 gt
+ % DG/SR modification begin - Nov. 7, 1997 - Patch 1
+ %{ 1 setlinecap [ 0 dx n div ] dy n div 2 div setdash }
+ { 1 setlinecap [ 0 dx n div ] dx n div 2 div setdash }
+ % DG/SR modification end
+ { 2 setlinecap } ifelse
+ /i y1 def
+ /f x1 dx mul n 0 gt { dx n div 2 div w mul sub } if def
+ /g x2 dx mul n 0 gt { dx n div 2 div w mul add } if def
+ y2 y1 sub h mul 1 add dup 1000 gt { pop 1000 } if
+ { newpath i dy mul dup x0 exch moveto
+ b 0 gt { gsave c i a cvs dup stringwidth pop
+ /z2 ED
+ w 0 gt {z1 z2 add neg} {z1} ifelse
+ h 0 gt {z1} {b neg} ifelse
+ rmoveto show grestore } if
+ dup f exch t moveto
+ g exch t L stroke
+ /i i h add def
+ } repeat
+ grestore
+} def
+%
+/ArcArrow {
+ /d ED /b ED /a ED
+ gsave
+ newpath 0 -1000 moveto clip
+ newpath
+ 0 1 0 0 b
+ grestore
+ c mul
+ /e ED
+ pop pop pop r a e d PtoC y add exch x add
+ exch r a PtoC y add exch x add exch b pop pop pop pop a e d CLW 8 div c
+ mul neg d
+} def
+%
+/Ellipse {
+ /rotAngle ED
+ /mtrx CM def
+ T
+ rotAngle rotate
+ scale 0 0 1 5 3 roll arc
+ mtrx setmatrix
+} def
+%
+/ArcAdjust { %%%% Vincent Guirardel
+% given a target length (targetLength) and an initial angle (angle0) [in the stack],
+% let M(angle0)=(rx*cos(angle0),ry*sin(angle0))=(x0,y0).
+% This computes an angle t such that (x0,y0) is at distance
+% targetLength from the point M(t)=(rx*cos(t),ry*sin(t)).
+% NOTE: this an absolute angle, it does not have to be added or substracted to angle0
+% contrary to TvZ's code.
+% To achieve, this, one iterates the following process: start with some angle t,
+% compute the point M' at distance targetLength of (x0,y0) on the semi-line [(x0,y0) M(t)].
+% Now take t' (= new angle) so that (0,0) M(t') and M' are aligned.
+%
+% Another difference with TvZ's code is that we need d (=add/sub) to be defined.
+% the value of d = add/sub is used to know on which side we have to move.
+% It is only used in the initialisation of the angle before the iteration.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Input stack: 1: target length 2: initial angle
+% variables used : rx, ry, d (=add/sub)
+%
+ /targetLength ED /angle0 ED
+ /x0 rx angle0 cos mul def
+ /y0 ry angle0 sin mul def
+% we are looking for an angle t such that (x0,y0) is at distance targetLength
+% from the point M(t)=(rx*cos(t),ry*sin(t)))
+%initialisation of angle (using 1st order approx = TvZ's code)
+ targetLength 57.2958 mul
+ angle0 sin rx mul dup mul
+ angle0 cos ry mul dup mul
+ add sqrt div
+% if initialisation angle is two large (more than 90 degrees) set it to 90 degrees
+% (if the ellipse is very curved at the point where we draw the arrow, %
+% the value can be much more than 360 degrees !)
+% this should avoid going on the wrong side (more than 180 degrees) or go near
+% a bad attractive point (at 180 degrees)
+ dup 90 ge { pop 90 } if
+ angle0 exch d % add or sub
+% maximum number of times to iterate the iterative procedure:
+% iterative procedure: takes an angle t on top of stack, computes a
+% better angle (and put it on top of stack)
+ 30 { dup
+% compute distance D between (x0,y0) and M(t)
+ dup cos rx mul x0 sub dup mul exch sin ry mul y0 sub dup mul add sqrt
+% if D almost equals targetLength, we stop
+ dup targetLength sub abs 1e-5 le { pop exit } if
+% stack now contains D t
+% compute the point M(t') at distance targetLength of (x0,y0) on the semi-line [(x0,y0) M(t)]:
+% M(t')= ( (x(t)-x0)*targetLength/d+x0 , (y(t)-y0)*targetLength/d+y0 )
+ exch dup cos rx mul x0 sub exch sin ry mul y0 sub
+% stack contains: y(t)-y0, x(t)-x0, d
+ 2 index Div targetLength mul y0 add ry Div exch
+ 2 index Div targetLength mul x0 add rx Div
+% stack contains x(t')/rx , y(t')/ry , d
+% now compute t', and remove D from stack
+ atan exch pop
+ } repeat
+% we don't look at what happened... in particular, if targetLength is greater
+% than the diameter of the ellipse...
+% the final angle will be around /angle0 + 180. maybe we should treat this pathological case...
+% after iteration, stack contains an angle t such that M(t) is the tail of the arrow
+% to give back the result as a an angle relative to angle0 we could add the following line:
+% angle0 sub 0 exch d
+%
+% begin bug fix 2006-01-11
+% we want to adjust the new angle t' by a multiple of 360 so that | t'-angle0 | <= 180
+%(we don't want to make the ellipse turn more or less than it should)...
+dup angle0 sub dup abs 180 gt { 180 add 360 div floor 360 mul sub } { pop } ifelse
+% end bug fix
+} def
+%
+/EllipticArcArrow {
+ /d ED % is add or sub
+ /b ED % arrow procedure
+ /a1 ED % angle
+ gsave
+ newpath
+ 0 -1000 moveto
+ clip % Set clippath far from arrow.
+ newpath
+ 0 1 0 0 b % Draw arrow to determine length.
+ grestore
+% Length of arrow is on top of stack. Next 3 numbers are junk.
+%
+ a1 exch ArcAdjust % Angular position of base of arrow.
+ /a2 ED
+ pop pop pop
+ a2 cos rx mul xOrig add % hv 2007-08-29 x->xOrig
+ a2 sin ry mul yOrig add % hv 2007-08-29 y->yOrig
+ a1 cos rx mul xOrig add %
+ a1 sin ry mul yOrig add %
+% Now arrow tip coor and base coor are on stack.
+ b pop pop pop pop % Draw arrow, and discard coordinates.
+ a2 CLW 8 div
+% change value of d (test it by looking if `` 1 1 d '' gives 2 or not )
+ 1 1 d 2 eq { /d { sub } def } { /d { add } def } ifelse
+ ArcAdjust
+% resets original value of d
+ 1 1 d 2 eq { /d { sub } def } { /d { add } def } ifelse % Adjust angle to give overlap.
+} def
+%%------------------ tvz/DG/hv (2004-05-10) end -------------------%%
+%
+/Rot { CP CP translate 3 -1 roll neg rotate NET } def
+%
+/RotBegin {
+ tx@Dict /TMatrix known not { /TMatrix { } def /RAngle { 0 } def } if
+ /TMatrix [ TMatrix CM ] cvx def
+ /a ED
+ a Rot /RAngle [ RAngle dup a add ] cvx def
+} def
+%
+/RotEnd {
+ /TMatrix [ TMatrix setmatrix ] cvx def
+ /RAngle [ RAngle pop ] cvx def
+} def
+%
+/PutCoor { gsave CP T CM STV exch exec moveto setmatrix CP grestore } def
+/PutBegin { /TMatrix [ TMatrix CM ] cvx def CP 4 2 roll T moveto } def
+/PutEnd { CP /TMatrix [ TMatrix setmatrix ] cvx def moveto } def
+%
+/Uput {
+ /a ED
+ add 2 div /h ED 2
+ div /w ED
+ /s a sin def
+ /c a cos def
+ /b s abs c abs 2 copy gt dup
+ /q ED
+ { pop } { exch pop } ifelse def
+ /w1 c b div w mul def
+ /h1 s b div h mul def
+ q { w1 abs w sub dup c mul abs }{ h1 abs h sub dup s mul abs } ifelse
+} def
+%
+/UUput {
+ /z ED
+ abs /y ED
+ /x ED
+ q { x s div c mul abs y gt }{ x c div s mul abs y gt } ifelse
+ { x x mul y y mul sub z z mul add sqrt z add }
+ { q { x s div } { x c div } ifelse abs
+ } ifelse
+ a PtoC
+ h1 add exch
+ w1 add exch
+} def
+%
+/BeginOL {
+ dup (all) eq exch TheOL eq or
+ { IfVisible not { Visible /IfVisible true def } if }
+ { IfVisible { Invisible /IfVisible false def } if } ifelse
+} def
+%
+/InitOL {
+ /OLUnit [ 3000 3000 matrix defaultmatrix dtransform ] cvx def
+ /Visible { CP OLUnit idtransform T moveto } def
+ /Invisible { CP OLUnit neg exch neg exch idtransform T moveto } def
+ /BOL { BeginOL } def
+ /IfVisible true def
+} def
+%
+%%%%%%%%%%%%%%%%% tools %%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% ### bubblesort ###
+%% syntax : array bubblesort --> array2 trie par ordre croissant
+%% code de Bill Casselman
+%% http://www.math.ubc.ca/people/faculty/cass/graphics/text/www/
+/bubblesort {
+4 dict begin
+ /a exch def
+ /n a length 1 sub def
+ n 0 gt {
+ % at this point only the n+1 items in the bottom of a remain to
+ % the sorted largest item in that blocks is to be moved up into
+ % position n
+ n {
+ 0 1 n 1 sub {
+ /i exch def
+ a i get a i 1 add get gt {
+ % if a[i] > a[i+1] swap a[i] and a[i+1]
+ a i 1 add
+ a i get
+ a i a i 1 add get
+ % set new a[i] = old a[i+1]
+ put
+ % set new a[i+1] = old a[i]
+ put
+ } if
+ } for
+ /n n 1 sub def
+ } repeat
+ } if
+ a
+end
+} def
+%
+%
+/concatstringarray{ % [(a) (b) ... (z)] --> (ab...z) 20100422
+ 0 1 index { length add } forall
+ string
+ 0 3 2 roll
+ { 3 copy putinterval length add }forall
+ pop
+} bind def
+%
+/dot2comma {% on stack a string (...)
+ 2 dict begin
+ /Output exch def
+ 0 1 Output length 1 sub {
+ /Index exch def
+ Output Index get 46 eq { Output Index 44 put } if
+ } for
+ Output
+ end
+} def
+%
+end
+%-----------------------------------------------------------------------------%
+%
+% END pstricks.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-algparser.pro 0 0
+% $Id: pst-algparser.pro 594 2011-10-31 18:13:18Z herbert $
+%%
+%% PostScript prologue for PSTricks algorithm parser
+%% Version 0.04, 2011/10/21
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%%
+%%-----------------------------------------------------------------------------%
+%
+/AlgParser { tx@AlgToPs begin AlgToPs end } def % Dominique Rodriguez
+%
+/tx@CoreAnalyzerDict 100 dict def tx@CoreAnalyzerDict begin
+%
+% PS ANALYZER FOR ALGEBRAIC EXPRESSION V1.13
+%
+% 09/2011 DR factorial with ! added
+%
+% E->T|E+T
+% T->FS|T*FS
+% FS -> F | +FS | -FS
+% F->P|F^SF|P!
+% P->(E)|literal
+% literal->number|var|var[E]|func(params)
+% params->E|E,param
+% number->TOBEFINISHED
+%
+%% E expression, T term, SF signed factor, F factor, P power
+%
+%% parser
+%
+%% str
+%
+%% C->E<condition_operators>E
+%% STR index -> STR index+lenExpr
+/AnalyzeCond { AnalyzeExpr ReadCondOp AnalyzeExpr EvalCondOp } def
+%
+%% analyze Expression List (separator , or | )
+%% STR index -> STR index+lenExpr
+%% /AnalyzeListOfE {
+%% { NextNonBlankChar pop AnalyzeExpr%%dup Strlen eq { exit } if NextNonBlankChar
+%% NextNonBlankChar dup 0 eq { pop exit } if
+%% dup 44 ne 1 index 124 ne and { dup 41 ne { PROBLEMCONTACTBILLOU } { pop exit } ifelse } if
+%% pop NextNonBlankChar dup 0 eq { exit } if 124 ne { PROBLEMCONTACTBILLOU } if 1 add NextNonBlankChar 0 eq {toto} if } loop
+%% AnalyzeListOfEPostHook
+%% } def
+/AnalyzeListOfE {
+ /NotFirst false def
+ { NextNonBlankChar pop AnalyzeExpr
+ NotFirst { EvalListOfExpr } { /NotFirst true def } ifelse
+ dup Strlen eq { exit } if NextNonBlankChar
+ dup 44 ne 1 index 124 ne and
+ { dup 41 ne { PROBLEMCONTACTBILLOU } { pop exit } ifelse }
+ if pop 1 add } loop
+ AnalyzeListOfEPostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% E->T|E+T
+%% STR index -> STR index+lenExpr
+/AnalyzeExpr {
+ AnalyzePreHook AnalyzeTerm IsEndingExpr
+ { dup 0 ne { 32 eq { NextNonBlankChar } if } { pop } ifelse }
+ { { RollOp 1 add NextNonBlankChar pop AnalyzeTerm PreEvalHook EvalAddSub IsEndingExpr { pop exit } if } loop }
+ ifelse
+ AnalyzePostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% T->FS|T*FS
+%% STR index
+/AnalyzeTerm {
+ AnalyzePreHook AnalyzeSignedFactor IsEndingTerm
+ { dup 0 ne { 32 eq { NextNonBlankChar } if } { pop } ifelse }
+ { { RollOp 1 add NextNonBlankChar pop AnalyzeSignedFactor PreEvalHook EvalMulDiv IsEndingTerm { pop exit } if} loop }
+ ifelse
+ AnalyzePostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% FS -> F | +FS | -FS
+%% STR index
+/AnalyzeSignedFactor {
+ AnalyzePreHook 2 copy get dup IsUnaryOp
+ { RollOp 1 add NextNonBlankChar pop AnalyzeSignedFactor EvalUnaryOp }
+ { pop AnalyzeFactor }
+ ifelse AnalyzePostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% F->P|F^P|P!
+%% STR index
+/AnalyzeFactor {
+ AnalyzePreHook AnalyzePower IsEndingFactor
+ { dup 0 ne { 32 eq { NextNonBlankChar } if } { pop } ifelse }
+ { { dup 33 eq%% is there a ! DR 09/2011
+ { pop 1 add NextNonBlankChar pop EvalFactorial }
+ { RollOp 1 add NextNonBlankChar pop AnalyzePower PreEvalHook EvalPower }
+ ifelse
+ IsEndingFactor { pop exit } if } loop }
+ ifelse AnalyzePostHook
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% P->(E)|literal
+%% STR index
+/AnalyzePower {
+ %% depending of first char either a number, or a literal
+ 2 copy get dup 40 eq%%an open par
+ { pop 1 add NextNonBlankChar pop AnalyzeExpr 1 add NextNonBlankChar pop }
+ { AnalyzeLiteral }
+ ifelse
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% STR index STR[index] -> STR index
+%/AnalyzeLiteral { IsNumber { EvalNumber } { EvalLiteral } ifelse } def
+/AnalyzeLiteral { dup IsUnaryOp exch IsNumber or { EvalNumber } { EvalLiteral } ifelse } def%%dr 09102006
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% recognize + or -
+%% chr -> T/F
+/IsUnaryOp { dup 43 eq exch 45 eq or } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a number can contain only : 0123456789.
+%% chr -> T/F
+/IsNumber { dup 48 ge exch dup 57 le 3 -1 roll and exch 46 eq or } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% STR index -> STR index number
+%% a number can be of the form [0-9]*.[0-9]*\([eE][+-]?[0-9]+\)?
+%% STR index -> STR index' number
+/ReadNumber {
+ exch dup 3 -1 roll dup 3 1 roll
+ %%read mantissa
+ { 1 add 2 copy dup Strlen eq { pop pop 0 exit } if get dup IsNumber not { exit } if pop } loop
+ dup 101 eq exch 69 eq or
+ %%% there is a "e" or "E" -> read exponant
+ { 1 add 2 copy get dup IsUnaryOp
+ { pop 1 add 2 copy get } if
+ { IsNumber not { exit } if 1 add 2 copy get } loop }
+ if
+ dup 4 1 roll
+ 3 -1 roll exch 1 index sub getinterval
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a number can contain only : 0123456789.
+%% chr -> T/F
+/IsCondOp { dup 30 eq exch dup 60 ge exch 62 le and or } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% STR index -> STR index number
+%% a number can be of the form [0-9]*.[0-9]*\([eE][+-]?[0-9]+\)?
+%% STR index -> STR index' number
+/ReadCondOp {
+ NextNonBlankChar 1 index 4 1 roll
+ { IsCondOp not { exit } if 1 add 2 copy get } loop
+ 2 copy 5 -1 roll
+ exch 1 index sub getinterval 3 1 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a literal can contain only : 0123456789.
+%% chr -> T/F
+/IsLiteral {%
+ dup 48 ge exch dup 57 le 3 -1 roll and exch
+ dup 65 ge exch dup 90 le 3 -1 roll and 3 -1 roll or exch
+ dup 97 ge exch 122 le and or } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a literal can be of the form [a-zA-Z][a-zA-Z0-9]*\(\((Expression)\)|\(\[Expression\]\)\)?
+%% STR index -> literal STR index' nextchr
+/ReadLiteral {
+ exch dup 3 -1 roll dup 3 1 roll
+ %%read literal core
+ { 2 copy dup Strlen eq { pop pop 0 exit } if get dup IsLiteral not { exit } if pop 1 add } loop
+ 4 1 roll dup 5 1 roll 3 -1 roll exch 1 index sub getinterval 4 1 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% expr is ended by end of str or a clpar
+%% STR index -> STR index STR[index] T/F
+/IsEndingExpr {%
+ 2 copy dup Strlen eq
+ %% if end of str is reached -> end !
+ { pop pop 0 true }
+ %% ending chr -> clpar, comma, |, <, >, =, !,
+ {get dup dup 41 eq
+ exch dup 124 eq
+ exch dup 93 eq
+ exch dup 44 eq
+ exch dup 30 eq
+ exch dup 60 ge exch 62 le and or or or or or}
+ ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% expr is ended by end of str or a +-
+%% STR index -> STR index STR[index] T/F
+/IsEndingTerm { IsEndingExpr { true } { dup dup 43 eq exch 45 eq or } ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% expr is ended by end of str or */
+%% STR index -> STR index STR[index] T/F
+/IsEndingFactor { IsEndingTerm { true } { dup dup 42 eq exch 47 eq or } ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% expr is ended by end of str or ^
+%% STR index -> STR index STR[index] T/F
+/IsEndingPower { IsEndingFactor { true } { dup 94 eq } ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% STR index -> STR index STR[index]
+/NextNonBlankChar { { dup Strlen eq { 0 exit } if 2 copy get dup neBlkChar { exit } if pop 1 add } loop } bind def
+/neBlkChar { dup 32 ne exch dup 10 ne exch 9 ne and and } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%
+%% DEBUG
+/BRK {false} def
+/BRKtrue {/BRK true def} def
+/BRKStop {BRK {BRKtoto} if } def
+/BRKEvalStop {BRK exch if } def
+/BRKBRK2true {BRK {BRK2true} if } def
+/BRK2 {false} def
+/BRK2true {/BRK2 true def} def
+/BRK2Stop {BRK2 {BRK2toto} if } def/BRK {false} def
+end
+%
+%-------------------------------------------------------------------------------%
+%
+/tx@AlgToPs 12 dict def tx@AlgToPs begin
+%
+%% algExpr -> PSVector
+/AlgToPs { tx@CoreAnalyzerDict begin InitParser AnalyzeListOfE pop pop EndingSequence end } def
+/EndingSequence { ExpressionVector aload length /end cvx exch 1 add array astore } def
+/InitParser { /ExpressionVector [ /tx@AddMathFunc cvx /begin cvx ] def dup length /Strlen exch def 0 } def
+/Strlen 0 def
+/EvalListOfExpr {} def%
+/EvalNumber {%
+ ReadNumber cvr /ExpressionVector ExpressionVector aload length dup 3 add -1 roll cvx
+ exch 1 add array astore def NextNonBlankChar pop } def
+/EvalAddSub {%
+ /ExpressionVector ExpressionVector aload length dup 5 add -1 roll
+ 43 eq { /add } { /sub } ifelse cvx exch 1 add array astore def
+} def
+/EvalMulDiv {%
+ /ExpressionVector ExpressionVector aload length dup 5 add -1 roll
+ 42 eq { /mul } { /div } ifelse cvx exch 1 add array astore def
+} def
+/EvalPower {%
+ /ExpressionVector ExpressionVector aload length dup 5 add -1 roll
+ pop /exp cvx exch 1 add array astore def
+} def
+/EvalFactorial {% DR 09/2011
+ /ExpressionVector ExpressionVector aload length
+ /fact cvx exch 1 add array astore def
+} def
+/EvalLiteral {%
+ ReadLiteral
+ dup 40 eq%%% there is an open par -> function call
+ { pop 2 index
+ dup (Sum) eq { EvalSum }
+ { dup (IfTE) eq { EvalCond }
+ { dup (Derive) eq { pop EvalDerive }
+ { pop 1 add NextNonBlankChar pop AnalyzeListOfE 2 index TrigoFunc
+ /ExpressionVector ExpressionVector aload length dup 5 add -1 roll cvn cvx
+ exch 1 add array astore def 1 add NextNonBlankChar pop } ifelse } ifelse} ifelse }
+ { /ExpressionVector ExpressionVector aload length dup 6 add -1 roll cvn cvx exch 1 add array astore def
+ dup 91 eq%%% there is an open bracket -> vector element
+ { pop 1 add NextNonBlankChar pop AnalyzeExpr
+ /ExpressionVector ExpressionVector aload length /cvi cvx exch /get cvx exch 2 add array astore def 1 add }
+ { pop NextNonBlankChar pop }
+ ifelse}
+ ifelse
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% the derive function : Derive(n,f(x))
+%% firstparindex lastparindex ->
+/EvalDerive {
+ %% manage the function descripiton
+ 1 add ReadNumber 3 1 roll NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ 1 add NextNonBlankChar pop
+ 3 -1 roll cvi
+ dup 0 eq
+ { pop AnalyzeExpr 3 -1 roll pop 1 add }
+ { 1 sub 3 1 roll (x) exch tx@Derive begin DeriveIndexed end 4 -1 roll
+ { (x) tx@Derive begin Derive end } repeat
+ ExpressionVector exch /ExpressionVector [] def
+ AlgToPs aload length
+ /ExpressionVector 1 index 3 add -1 roll aload length dup 3 add -1 roll /l2 exch def /l1 exch def
+ l1 l2 add 1 add l2 neg roll l1 l2 add array astore def 3 -1 roll pop 1 add
+ 1 index length /Strlen exch def } ifelse
+} def
+/EvalSum {%
+ pop 1 add NextNonBlankChar pop
+ %% read the variable name
+ ReadLiteral pop NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_first_comma_in_Sum } if
+ %% read the initial value
+ 1 add NextNonBlankChar pop ReadNumber cvi 3 1 roll
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ %% read the increment value
+ 1 add NextNonBlankChar pop ReadNumber cvi 3 1 roll
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ %% read the limit value
+ 1 add NextNonBlankChar pop ReadNumber cvi 3 1 roll
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ /ExpressionVector ExpressionVector aload length dup 7 add -3 roll 0 4 1 roll
+ 5 -1 roll 4 add array astore def
+ %% keep ExpressionVector for later and create a new one for internal Sum computation
+ ExpressionVector 3 1 roll /ExpressionVector [ 6 -1 roll cvn /exch cvx /def cvx ] def
+ 1 add NextNonBlankChar pop AnalyzeExpr
+ %% add each term
+ /ExpressionVector ExpressionVector aload length 1 add /add cvx exch array astore def
+ /ExpressionVector 4 -1 roll aload length ExpressionVector cvx /for cvx 3 -1 roll 2 add
+ array astore def 3 -1 roll pop 1 add
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Convert to radians if trigo function call
+%% (name) ->
+/TrigoFunc {
+ dup (cos) eq 1 index (sin) eq or exch (tan) eq or
+ { /ExpressionVector ExpressionVector aload length Pi /div cvx 180 /mul cvx 5 -1 roll 4 add
+ array astore def
+ } if
+} def
+/EvalCond {%
+ pop 1 add AnalyzeCond NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_first_comma_in_IfTE } if
+ ExpressionVector 3 1 roll /ExpressionVector [] def
+ 1 add AnalyzeExpr ExpressionVector 3 1 roll /ExpressionVector [] def
+ NextNonBlankChar 44 ne { ANALYZER_ERROR_missing_second_comma_in_IfTE } if
+ 1 add AnalyzeExpr
+ NextNonBlankChar 41 ne { ANALYZER_ERROR_missing_ending parenthesis_in_IfTE } if
+ ExpressionVector
+ /ExpressionVector 6 -1 roll aload length dup
+ 6 add -1 roll cvx exch dup 4 add -1 roll cvx /ifelse cvx 3 -1 roll 3 add array astore def
+ 1 add 3 -1 roll pop
+} def
+%% CondOp STR index
+/EvalCondOp {%
+ 3 -1 roll
+ dup (=) eq { /eq } {%
+ dup (<) eq { /lt } {%
+ dup (>) eq { /gt } {%
+ dup (>=) eq { /ge } {%
+ dup (<=) eq { /ge } {%
+ dup (!=) eq { /ne } { ERROR_non_valid_conditional_operator }
+ ifelse } ifelse } ifelse } ifelse } ifelse } ifelse
+ cvx exch pop
+ /ExpressionVector ExpressionVector aload length dup 3 add -1 roll exch 1 add array astore def } def
+/EvalUnaryOp {
+ 3 -1 roll 45 eq { /ExpressionVector ExpressionVector aload length /neg cvx exch 1 add array astore def } if
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% H O O K S
+/AnalyzePreHook {} bind def
+/PreEvalHook {} bind def
+/AnalyzeListOfEPostHook {} bind def
+/AnalyzePostHook {} def
+/RollOp { 3 1 roll } bind def
+end %tx@CoreAnalyzerDict
+%
+%--------------------------------------------------------------------%
+%
+/tx@Derive 41 dict def tx@Derive begin
+%%increase ^^ for each function added
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% algExpr variable -> PSVector
+/Derive {%
+ 10240 string 3 1 roll 0 3 1 roll
+ /Variable exch def
+ tx@CoreAnalyzerDict begin InitParser AnalyzeListOfE end
+} def
+/Strlen 0 def
+/InitParser { dup length /Strlen exch def 0 } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% algExpr variable index -> PSVector
+/DeriveIndexed {%
+ 3 1 roll 10240 string 3 1 roll 0 3 1 roll
+ /Variable exch def
+ tx@CoreAnalyzerDict begin InitParser pop 4 -1 roll AnalyzeExpr 4 -2 roll pop pop 4 -2 roll exch pop end
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u,v)'=-(u',v')
+/EvalListOfExpr {%
+ 4 2 roll 2 copy 9 -1 roll dup length 4 1 roll putinterval add AddPipe
+ 2 copy 7 -1 roll dup length 4 1 roll putinterval add
+ 6 -2 roll pop pop
+ 2 copy pop 0 6 2 roll GetIntervalNewStr 5 1 roll 2 copy 0 exch getinterval 6 1 roll } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (-u)'=-(u')
+/EvalUnaryOp {
+ 4 -2 roll 4 index (0) eq
+ { (0) StrConcat 7 -1 roll pop }
+ { 7 -1 roll 45 eq
+ { AddSub AddOpPar true } { false } ifelse
+ 3 1 roll 5 index StrConcat 3 -1 roll { AddClPar } if } ifelse
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ 7 -2 roll pop pop 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (number)'=0
+/EvalNumber { ReadNumber (0) 6 2 roll } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u+v)'=u'+v'
+/EvalAddSub {%
+ 7 index dup (0) eq
+ { pop true }%% du=0 nothing added
+ { dup length exch 5 index 5 index 3 -1 roll putinterval 4 -1 roll add 3 1 roll false }
+ ifelse
+ 5 index dup (0) eq
+ { pop { (0) } { 4 -2 roll 2 copy pop 0 6 2 roll GetIntervalNewStr } ifelse }%%dv=0
+ { exch
+ { 5 -2 roll 7 index 45 eq { AddSub } if false } %%nothing yet added
+ { 5 -2 roll 7 index 43 eq%%something yet added
+ { AddAdd false } { AddSub AddOpPar true } ifelse }
+ ifelse 11 1 roll
+ 3 -1 roll StrConcat 10 -1 roll { AddClPar } if
+ 2 copy pop 0 6 2 roll GetIntervalNewStr }
+ ifelse
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u*v)' or (u/v)'
+/EvalMulDiv { 6 index 42 eq {EvalMul} {EvalDiv} ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u*v)'=u'*v+u*v'
+/EvalMul {%
+ 4 -2 roll 7 index dup (0) eq
+ { pop false }%%du=0
+ { (1) eq%%du=1
+ { false }
+ { AddOpPar 7 index StrConcat AddClPar AddMul AddOpPar true } ifelse
+ 3 1 roll 6 index StrConcat 3 -1 roll { AddClPar } if
+ true }%%du!=0
+ ifelse
+ 5 1 roll 5 index (0) eq
+ { 5 -1 roll not { (0) StrConcat } if }%%dv=0
+ { 5 -1 roll { AddAdd } if
+ 4 index (1) eq
+ { 8 index StrConcat }
+ { AddOpPar 8 index StrConcat AddClPar AddMul AddOpPar 4 index StrConcat AddClPar }
+ ifelse
+ }%%dv!=0
+ ifelse
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u/v)'=(u'*v-u*v')/v^2
+/EvalDiv {%
+ 4 -2 roll
+ 4 index (0) eq%%dv=0 -> u'/v
+ { 7 index (0) eq { (0) StrConcat } { AddOpPar 7 index StrConcat AddClPar AddDiv 5 index StrConcat } ifelse }
+ { 7 index dup (0) eq
+ { pop }%%du=0
+ { (1) eq%%du=1
+ { false }
+ { AddOpPar 7 index StrConcat AddClPar AddMul AddOpPar true } ifelse
+ 3 1 roll 6 index StrConcat 3 -1 roll { AddClPar } if}%%du!=0
+ ifelse
+ AddSub
+ 4 index (1) eq
+ { 8 index StrConcat }
+ { AddOpPar 8 index StrConcat AddClPar AddMul AddOpPar 4 index StrConcat AddClPar }
+ ifelse
+ %}%%dv!=0
+ 2 copy GetIntervalNewStr 3 1 roll pop 0 AddOpPar 3 -1 roll StrConcat AddClPar
+ AddDiv AddOpPar 5 index StrConcat AddClPar 2 copy (^2) putinterval 2 add }
+ ifelse
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% str1 index str2 -> str1 index
+/StrConcat { dup length 4 2 roll 2 copy 6 -1 roll putinterval 3 -1 roll add } bind def
+/GetIntervalNewStr { 0 exch getinterval dup length string copy } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (u^v)'=(u^v)'=u'vu^(v-1)+v'u^(v)ln(u)
+/EvalPower {%
+ 4 -2 roll 7 index (0) eq
+ {%%if du=0 then (u^v)'=v'ln(u)u^v
+ 4 index (0) eq
+ { (0) StrConcat }%%if dv=0 then (u^v)'=0
+ { 4 index (1) ne { AddOpPar 4 index StrConcat (\)*) StrConcat } if
+ 8 index (e) ne { (ln\() StrConcat 8 index StrConcat (\)*) StrConcat } if
+ AddOpPar 8 index StrConcat (\)^\() StrConcat 5 index StrConcat AddClPar } ifelse
+ }
+ {%%du!=0
+ 4 index (0) eq
+ {%%if dv=0 then (u^v)'=vu'u^(v-1)
+ 5 index dup IsStrNumber
+ { dup (0) eq
+ { StrConcat }
+ { dup dup (1) eq exch (1.0) eq or
+ { StrConcat }
+ { StrConcat
+ 7 index dup (1) ne exch (1.0) ne and%%%dr 09102006 insert du if <> 1
+ { (*\() StrConcat 7 index StrConcat (\)) StrConcat } if%%%dr 09102006
+ (*\() StrConcat 8 index StrConcat (\)) StrConcat
+ 5 index dup dup (2) eq exch (2.0) eq or
+ { pop } { cvr 1 sub 20 string cvs 3 1 roll (^) StrConcat 3 -1 roll StrConcat } ifelse } ifelse } ifelse }
+ { pop AddOpPar 5 index StrConcat (\)*\() StrConcat 8 index StrConcat (\)^\() StrConcat
+ 5 index StrConcat (-1\)) StrConcat } ifelse
+ }
+ {%%if dv!=0 and du!=0 then (u^v)'=u'vu^(v-1)+v'u^(v)ln(u)
+ 7 index (1) ne { AddOpPar 7 index StrConcat (\)*) StrConcat } if
+ AddOpPar 5 index StrConcat (\)*\() StrConcat
+ 8 index StrConcat (\)^\() StrConcat
+ 5 index StrConcat (-1\)+\() StrConcat
+ 4 index (1) ne { 4 index StrConcat (\)*\() StrConcat } if
+ 8 index StrConcat (\)^\() StrConcat
+ 5 index StrConcat (\)*ln\() StrConcat
+ 8 index StrConcat AddClPar
+ } ifelse
+ } ifelse
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% No derivative for factorial ! only cst => null derivative
+/EvalFactorial {% DR 09/2011
+ 4 index (0) eq
+ { (0) mark 8 -2 roll cleartomark 2 index 7 index dup 4 index exch sub getinterval exch 6 2 roll }
+ { DERIVATIVE_ENGINE_ERROR_no_variable_in_factorial } ifelse
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% str -> true/false
+/IsStrNumber {%
+ true exch
+ { dup 48 lt exch dup 57 gt 3 -1 roll or
+ exch dup 46 ne%%.
+ exch dup 43 ne%%+
+ exch 45 ne%%-
+ and and and { pop false } if } forall
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% literal switch -> func call, vector, variables
+/EvalLiteral {%
+ ReadLiteral dup 40 eq%%% there is an open par -> function call
+ { pop (EvalFunc_ ) 9 4 index StrConcat 0 exch getinterval cvn cvx exec }
+ { dup 91 eq%%% there is an open bracket -> vector element
+ { DERIVATIVE_ENGINE_ERROR_vector_not_yet_implemented }
+ { pop EvalVariable }
+ ifelse }
+ ifelse
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% first last parpos Expr[first:parpos-1] ->
+/EvalVariable { 2 index Variable eq { (1) } { (0) } ifelse 4 -1 roll exch 6 2 roll } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% (f(u))'=u'f'(u)
+/EvalFunc {
+ 4 2 roll 4 index (1) ne
+ { AddOpPar 4 index StrConcat (\)*) StrConcat } if
+ (Eval ) 4 8 index StrConcat 0 exch getinterval cvn cvx exec
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 9 -3 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Func derivative -> Eval<func>
+/EvalFunc_sin {%
+ PreCommonFunc
+ { (cos\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_cos {%
+ PreCommonFunc
+ { (\(-sin\() StrConcat 5 index StrConcat (\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_tan {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/cos\() StrConcat 5 index StrConcat (\)^2) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_asin {%
+ PreCommonFunc
+ { (1/sqrt\(1-\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_acos {%
+ PreCommonFunc
+ { (-1/sqrt\(1-\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_atg {%
+ PreCommonFunc
+ { (1/\(1+\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_ln {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_exp {%
+ PreCommonFunc
+ { (exp\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_EXP {%
+ PreCommonFunc
+ { (EXP\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_sqrt {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/\(2*sqrt\() StrConcat 5 index StrConcat (\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_Fact {%
+ PreCommonFunc { DERIVATIVE_ENGINE_ERROR_no_variable_expression_in_Fact } if
+ PostCommonFunc } def
+/EvalFunc_sh {%
+ PreCommonFunc
+ { (ch\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_ch {%
+ PreCommonFunc
+ { (sh\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
+/EvalFunc_th {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/ch\() StrConcat 5 index StrConcat (\)^2) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_Argsh {%
+ PreCommonFunc
+ { (1/sqrt\(1+\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_Argch {%
+ PreCommonFunc
+ { (1/sqrt\(\() StrConcat 5 index StrConcat (\)^2-1\)\)) StrConcat } if
+ PostCommonFunc } def
+/EvalFunc_Argth {%
+ PreCommonFunc
+ { (1/\(1-\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
+ PostCommonFunc } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/PreCommonFunc {
+ 1 add NextNonBlankChar pop 3 -1 roll 5 1 roll AnalyzeExpr 1 add NextNonBlankChar pop
+ 4 2 roll 4 index (0) eq
+ { (0) StrConcat false }
+ { 4 index (1) ne { AddOpPar 4 index StrConcat (\)*) StrConcat } if true } ifelse
+} def
+/PostCommonFunc {
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 9 -3 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+/EvalFunc_Derive {%
+ 1 add ReadNumber cvi 1 add dup cvr log 1 add cvi string cvs
+ 4 -1 roll pop 5 1 roll 1 add NextNonBlankChar pop AnalyzeExpr 1 add
+ 4 -2 roll (Derive\() StrConcat 7 -1 roll StrConcat (,) StrConcat 6 -1 roll StrConcat AddClPar
+ 2 copy pop 0 6 2 roll GetIntervalNewStr 6 -1 roll pop 2 index 6 index dup 4 index exch sub getinterval
+ exch 6 2 roll } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% literal switch -> func call, vector, variables
+/EvalFunc_Sum {%
+ 1 add NextNonBlankChar pop
+ %% read the variable name
+ ReadLiteral pop 3 -1 roll pop NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_first_comma_in_Sum } if
+ %% read the initial value
+ 1 add NextNonBlankChar pop ReadNumber pop
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_second_comma_in_Sum } if
+ %% read the increment value
+ 1 add NextNonBlankChar pop ReadNumber pop
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_third_comma_in_Sum } if
+ %% read the limit value
+ 1 add NextNonBlankChar pop ReadNumber pop
+ 2 copy get 44 ne { ANALYZER_ERROR_missing_fourth_comma_in_Sum } if
+ 1 add NextNonBlankChar pop dup 6 1 roll 3 -1 roll pop AnalyzeExpr 1 add NextNonBlankChar pop
+ 4 -2 roll 3 index 8 index dup 9 index exch sub getinterval StrConcat
+ 4 index StrConcat AddClPar
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 9 -3 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% literal switch -> func call, vector, variables
+/EvalFunc_IfTE {%
+ 3 -1 roll pop 1 add NextNonBlankChar pop SkipCond
+ NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_first_comma_in_IfTE } if
+ 1 add NextNonBlankChar pop dup 5 1 roll
+ AnalyzeExpr NextNonBlankChar
+ 44 ne { ANALYZER_ERROR_missing_second_comma_in_IfTE } if
+ 1 add NextNonBlankChar pop
+ AnalyzeExpr 1 add NextNonBlankChar pop
+ 4 -2 roll 3 index 10 index dup 11 index exch sub getinterval StrConcat
+ 6 index StrConcat (,) StrConcat 4 index StrConcat AddClPar
+ 2 copy pop 0 6 2 roll GetIntervalNewStr
+ mark 11 -5 roll cleartomark 2 index 6 index dup 4 index exch sub getinterval exch 6 2 roll
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% advance in str until a comma is found (no error detection!)
+%% str index -> str index'
+/SkipCond { { 1 add 2 copy get 44 eq {exit } if } loop } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Convert to radians if trigo function call
+%% (name) ->
+/TrigoFunc {
+ dup (cos) eq 1 index (sin) eq or exch (tan) eq or
+ { /ExpressionVector ExpressionVector aload length Pi /div cvx 180 /mul cvx 5 -1 roll 4 add
+ array astore def
+ } if
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% No derivative for condition....
+/EvalCondOp { 3 -1 roll pop } bind def
+/PutIntervalOneAdd {putinterval 1 add} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add open parenthesis in string at the given index
+%% str index -> str index+1
+/AddOpPar {2 copy (\() PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add close parenthesis in string at the given index
+%% str index -> str index+1
+/AddClPar {2 copy (\)) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add 0 in string at the given index
+%% str index -> str index+1
+/AddZero {2 copy (0) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add open parenthesis in string at the given index
+%% str index -> str index+1
+/AddMul {2 copy (*) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add open parenthesis in string at the given index
+%% str index -> str index+1
+/AddDiv {2 copy (/) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add a plus sign in string at the given index
+%% str index -> str index+1
+/AddAdd {2 copy (+) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add a minus sign in string at the given index
+%% str index -> str index+1
+/AddSub {2 copy (-) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Add a pipe sign in string at the given index
+%% str index -> str index+1
+/AddPipe {2 copy (|) PutIntervalOneAdd} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% H O O K S
+/AnalyzePreHook { dup 5 1 roll } bind def
+/PreEvalHook {} def
+/AnalyzePostHook { 7 -1 roll pop } bind def
+/AnalyzeListOfEPostHook { 6 -1 roll mark 6 1 roll cleartomark } bind def
+/RollOp { 5 1 roll } bind def
+end%%%tx@CoreAnalyzerDict
+/tx@AddMathFunc 12 dict def tx@AddMathFunc begin
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% NEW FUNC
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% function arcsine in radians asin(x)=atan(x/sqrt(1-x^2))
+%% x -> theta
+/asin {%
+ dup abs 1 gt { EQDFasinrangeerror } if
+ dup dup dup mul 1 exch sub sqrt atan exch 0 lt { 360 sub } if DegtoRad
+} def
+%% function arccosine in radians acos(x)=atan(sqrt(1-x^2)/x)
+%% x -> theta
+/acos {%
+ dup abs 1 gt { EQDFacosrangeerror } if
+ dup dup mul 1 exch sub sqrt exch atan DegtoRad
+} def
+%% function arctangent in radians
+%% x -> theta
+/atg { 1 atan dup 90 gt { 360 sub } if DegtoRad } bind def
+%% HYPERBOLIC FUNCTIONS
+/sh { dup Ex exch neg Ex sub 2 div } def
+/ch { dup Ex exch neg Ex add 2 div } def
+/th { dup sh exch ch div } def
+/Argsh { dup dup mul 1 add sqrt add ln } def
+/Argch { dup dup mul 1 sub sqrt add ln } def
+/Argth { dup 1 add exch 1 exch sub div ln 2 div } def
+%% modified exponential funtion for 0
+%% x n -> x^n
+/Exp { dup 0 eq { pop pop 1 } { exp } ifelse } bind def
+%% modified exponential funtion for 0
+%% x -> e^x
+/Ex { Euler exch exp } bind def
+%%
+%% factorial function
+%% n -> n!
+/Fact { 1 exch 2 exch 1 exch { mul } for } bind def
+/fact { Fact } bind def
+/! { Fact } bind def
+end
+%
+% END pst-algparser.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-tools.pro 0 0
+% $Id: pst-tools.pro 622 2012-01-01 15:36:14Z herbert $
+%
+%% PostScript tools prologue for pstricks.tex.
+%% Version 0.02, 2012/01/01
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%
+%
+/Pi2 1.57079632679489661925640 def
+/factorial { % n on stack, returns n!
+ dup 0 eq { 1 }{
+ dup 1 gt { dup 1 sub factorial mul } if }
+ ifelse } def
+%
+/MoverN { % m n on stack, returns the binomial coefficient m over n
+ 2 dict begin
+ /n exch def /m exch def
+ n 0 eq { 1 }{
+ m n eq { 1 }{
+ m factorial n factorial m n sub factorial mul div } ifelse } ifelse
+ end
+} def
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% subroutines for complex numbers, given as an array [a b]
+% which is a+bi = Real+i Imag
+%
+/cxadd { % [a1 b1] [a2 b2] = [a1+a2 b1+b2]
+ dup 0 get % [a1 b1] [a2 b2] a2
+ 3 -1 roll % [a2 b2] a2 [a1 b1]
+ dup 0 get % [a2 b2] a2 [a1 b1] a1
+ 3 -1 roll % [a2 b2] [a1 b1] a1 a2
+ add % [a2 b2] [a1 b1] a1+a2
+ 3 1 roll % a1+a2 [a2 b2] [a1 b1]
+ 1 get % a1+a2 [a2 b2] b1
+ exch 1 get % a1+a2 b1 b2
+ add 2 array astore
+} def
+%
+/cxneg { % [a b]
+ dup 1 get % [a b] b
+ exch 0 get % b a
+ neg exch neg % -a -b
+ 2 array astore
+} def
+%
+/cxsub { cxneg cxadd } def % same as negative addition
+%
+% [a1 b1][a2 b2] = [a1a2-b1b2 a1b2+b1a2] = [a3 b3]
+/cxmul { % [a1 b1] [a2 b2]
+ dup 0 get % [a1 b1] [a2 b2] a2
+ exch 1 get % [a1 b1] a2 b2
+ 3 -1 roll % a2 b2 [a1 b1]
+ dup 0 get % a2 b2 [a1 b1] a1
+ exch 1 get % a2 b2 a1 b1
+ dup % a2 b2 a1 b1 b1
+ 5 -1 roll dup % b2 a1 b1 b1 a2 a2
+ 3 1 roll mul % b2 a1 b1 a2 b1a2
+ 5 -2 roll dup % b1 a2 b1a2 b2 a1 a1
+ 3 -1 roll dup % b1 a2 b1a2 a1 a1 b2 b2
+ 3 1 roll mul % b1 a2 b1a2 a1 b2 a1b2
+ 4 -1 roll add % b1 a2 a1 b2 b3
+ 4 2 roll mul % b1 b2 b3 a1a2
+ 4 2 roll mul sub % b3 a3
+ exch 2 array astore
+} def
+%
+% [a b]^2 = [a^2-b^2 2ab] = [a2 b2]
+/cxsqr { % [a b] square root
+ dup 0 get exch 1 get % a b
+ dup dup mul % a b b^2
+ 3 -1 roll % b b^2 a
+ dup dup mul % b b^2 a a^2
+ 3 -1 roll sub % b a a2
+ 3 1 roll mul 2 mul % a2 b2
+ 2 array astore
+} def
+%
+/cxsqrt { % [a b]
+% dup cxnorm sqrt /r exch def
+% cxarg 2 div RadtoDeg dup cos r mul exch sin r mul cxmake2
+ cxlog % log[a b]
+ 2 cxrdiv % log[a b]/2
+ aload pop exch % b a
+ 2.781 exch exp % b exp(a)
+ exch cxconv exch % [Re +iIm] exp(a)
+ cxrmul %
+} def
+%
+/cxarg { % [a b]
+ aload pop % a b
+ exch atan % arctan b/a
+ DegtoRad % arg(z)=atan(b/a)
+} def
+%
+% log[a b] = [a^2-b^2 2ab] = [a2 b2]
+/cxlog { % [a b]
+ dup % [a b][a b]
+ cxnorm % [a b] |z|
+ log % [a b] log|z|
+ exch % log|z|[a b]
+ cxarg % log|z| Theta
+ cxmake2 % [log|z| Theta]
+} def
+%
+% square of magnitude of complex number
+/cxnorm2 { % [a b]
+ dup 0 get exch 1 get % a b
+ dup mul % a b^2
+ exch dup mul add % a^2+b^2
+} def
+%
+/cxnorm { % [a b]
+ cxnorm2 sqrt
+} def
+%
+/cxconj { % conjugent complex
+ dup 0 get exch 1 get % a b
+ neg 2 array astore % [a -b]
+} def
+%
+/cxre { 0 get } def % real value
+/cxim { 1 get } def % imag value
+%
+% 1/[a b] = ([a -b]/(a^2+b^2)
+/cxrecip { % [a b]
+ dup cxnorm2 exch % n2 [a b]
+ dup 0 get exch 1 get % n2 a b
+ 3 -1 roll % a b n2
+ dup % a b n2 n2
+ 4 -1 roll exch div % b n2 a/n2
+ 3 1 roll div % a/n2 b/n2
+ neg 2 array astore
+} def
+%
+/cxmake1 { 0 2 array astore } def % make a complex number, real given
+/cxmake2 { 2 array astore } def % dito, both given
+%
+/cxdiv { cxrecip cxmul } def
+%
+% multiplikation by a real number
+/cxrmul { % [a b] r
+ exch aload pop % r a b
+ 3 -1 roll dup % a b r r
+ 3 1 roll mul % a r b*r
+ 3 1 roll mul % b*r a*r
+ exch 2 array astore % [a*r b*r]
+} def
+%
+% division by a real number
+/cxrdiv { % [a b] r
+ 1 exch div % [a b] 1/r
+ cxrmul
+} def
+%
+% exp(i theta) = cos(theta)+i sin(theta) polar<->cartesian
+/cxconv { % theta
+ RadtoDeg dup sin exch cos cxmake2
+} def
+
+%%%%% ### bubblesort ###
+%% syntax : array bubblesort --> array2 trie par ordre croissant
+%% code de Bill Casselman
+%% http://www.math.ubc.ca/people/faculty/cass/graphics/text/www/
+/bubblesort { % on stack must be an array [ ... ]
+4 dict begin
+ /a exch def
+ /n a length 1 sub def
+ n 0 gt {
+ % at this point only the n+1 items in the bottom of a remain to
+ % the sorted largest item in that blocks is to be moved up into
+ % position n
+ n {
+ 0 1 n 1 sub {
+ /i exch def
+ a i get a i 1 add get gt {
+ % if a[i] > a[i+1] swap a[i] and a[i+1]
+ a i 1 add
+ a i get
+ a i a i 1 add get
+ % set new a[i] = old a[i+1]
+ put
+ % set new a[i+1] = old a[i]
+ put
+ } if
+ } for
+ /n n 1 sub def
+ } repeat
+ } if
+ a % return the sorted array
+end
+} def
+%
+/concatstringarray{ % [(a) (b) ... (z)] --> (ab...z) 20100422
+ 0 1 index { length add } forall
+ string
+ 0 3 2 roll
+ { 3 copy putinterval length add }forall
+ pop
+} bind def
+%
+/dot2comma {% on stack a string (...)
+ 2 dict begin
+ /Output exch def
+ 0 1 Output length 1 sub {
+ /Index exch def
+ Output Index get 46 eq { Output Index 44 put } if
+ } for
+ Output
+ end
+} def
+%
+%-----------------------------------------------------------------------------%
+% END pst-tools.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-dots.pro 0 0
+% $Id: pst-dots.pro 130 2009-08-27 08:55:03Z herbert $
+%
+%% PostScript prologue for pstricks.tex.
+%% Version 2.02, 2009/06/16
+%%
+%% For distribution, see pstricks.tex.
+%%
+%% Timothy Van Zandt <tvz@Princeton.EDU>
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%%
+%% Modified by Etienne Riga - Dec. 16, 1999
+%% Modified by Etienne Riga - 2005/01/01 (er)
+%% to add /Diamond, /SolidDiamond and /BoldDiamond
+%% Modified by Herbert Voss (hv) - 2008/04/17
+%
+10 dict dup begin % hold local
+ /FontType 3 def
+ /FontMatrix [.001 0 0 .001 0 0] def
+% /FontBBox [-571.5 -742.5 571.5 742.5] def % changed to next line 20060616 hv
+ /FontBBox [-1000 -1000 1000 1000] def % See end of file in /BuildGlyph
+ /Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for % fill the array with /.notdef
+ Encoding % replace with given dot names
+ dup (b) 0 get /Bullet put % get the numerical position of b in ASCII
+% % and save /Bullet at this place in Encoding
+ dup (c) 0 get /Circle put
+ dup (C) 0 get /BoldCircle put % 67
+ dup (u) 0 get /SolidTriangle put
+ dup (t) 0 get /Triangle put
+ dup (T) 0 get /BoldTriangle put
+ dup (r) 0 get /SolidSquare put
+ dup (s) 0 get /Square put
+ dup (S) 0 get /BoldSquare put
+ dup (q) 0 get /SolidPentagon put
+ dup (p) 0 get /Pentagon put
+ dup (P) 0 get /BoldPentagon put
+%%%
+ dup (k) 0 get /Asterisk put
+ dup (K) 0 get /BoldAsterisk put
+ dup (J) 0 get /SolidAsterisk put
+ dup (h) 0 get /Hexagon put
+ dup (H) 0 get /BoldHexagon put
+ dup (G) 0 get /SolidHexagon put
+ dup (f) 0 get /Octogon put % 2008-04-18 hv
+ dup (F) 0 get /BoldOctogon put % 2008-04-18 hv
+ dup (g) 0 get /SolidOctogon put % 2008-04-18 hv
+ dup (a) 0 get /Add put
+ dup (A) 0 get /BoldAdd put % 65
+ dup (x) 0 get /Mul put
+ dup (X) 0 get /BoldMul put
+ dup (m) 0 get /Oplus put
+ dup (M) 0 get /BOplus put
+ dup (e) 0 get /SolidOplus put
+ dup (n) 0 get /Otimes put
+ dup (N) 0 get /BOtimes put
+ dup (E) 0 get /SolidOtimes put
+ dup (i) 0 get /Bar put
+ dup (I) 0 get /BoldBar put
+ dup (l) 0 get /SolidDiamond put
+ dup (d) 0 get /Diamond put
+ (D) 0 get /BoldDiamond put
+%%%
+/CharProcs 47 dict def
+CharProcs begin
+ /CirclePath {0 0 500 0 360 arc closepath} def
+ /Bullet {CirclePath fill} def
+ /Circle {CirclePath .9 .9 scale CirclePath eofill} def
+ /BoldCircle {CirclePath .8 .8 scale CirclePath eofill} def
+ /TrianglePath {0 660 moveto -571.5 -330 lineto 571.5 -330 lineto closepath} def
+ /SolidTriangle {TrianglePath fill} def
+ /Triangle {TrianglePath .85 .85 scale TrianglePath eofill} def
+ /BoldTriangle {TrianglePath .7 .7 scale TrianglePath eofill} def
+ /SquarePath {-450 450 moveto 450 450 lineto 450 -450 lineto -450 -450 lineto closepath} def
+ /SolidSquare {SquarePath fill} def
+ /Square {SquarePath .89 .89 scale SquarePath eofill} def
+ /BoldSquare {SquarePath .78 .78 scale SquarePath eofill} def
+ /PentagonPath {
+ -337.8 -465 moveto 337.8 -465 lineto 546.6 177.6 lineto
+ 0 574.7 lineto -546.6 177.6 lineto closepath
+ } def
+ /SolidPentagon {PentagonPath fill} def
+ /Pentagon {PentagonPath .89 .89 scale PentagonPath eofill} def
+ /BoldPentagon {PentagonPath .78 .78 scale PentagonPath eofill} def
+%-------------- hv begin 2004/07/25 from: er 2003/03/24
+ /HexagonPath {
+ 0 550 moveto -476 275 lineto -476 -275 lineto
+ 0 -550 lineto 476 -275 lineto 476 275 lineto closepath
+ } def
+ /SolidHexagon {HexagonPath fill} def
+ /Hexagon {HexagonPath .89 .89 scale HexagonPath eofill} def
+ /BoldHexagon {HexagonPath .79 .79 scale HexagonPath eofill} def
+% 2008-04-18 hv
+ /OctogonPath {
+ 550 dup 22.5 tan mul dup neg dup add /xMove exch def
+ exch moveto 7 { xMove 0 rlineto 45 rotate } repeat closepath } def
+ /SolidOctogon { OctogonPath fill } def
+ /Octogon { OctogonPath .89 .89 scale OctogonPath eofill } def
+ /BoldOctogon { OctogonPath .79 .79 scale OctogonPath eofill } def
+%
+ /AsteriskPath {
+ 20 0 moveto 10 250 180 500 0 500 curveto
+ -180 500 -10 250 -20 0 curveto closepath
+ } def
+ /Asterisk {
+ AsteriskPath 60 rotate AsteriskPath 60 rotate AsteriskPath
+ 60 rotate AsteriskPath 60 rotate AsteriskPath 60 rotate AsteriskPath fill
+ } def
+%
+ /Basterp {50 250 220 500 0 500 curveto -220 500 -50 250 -50 30 cos 100 mul curveto} def
+ /BoldAsteriskPath {
+ 50 30 cos 100 mul moveto Basterp
+ 60 rotate Basterp 60 rotate Basterp
+ 60 rotate Basterp 60 rotate Basterp
+ 60 rotate Basterp closepath
+ } def
+ /BoldAsterisk {BoldAsteriskPath fill} def
+ /SolidAsterisk {CirclePath .9 .9 scale BoldAsteriskPath eofill} def
+ /CrossPath {
+ 40 550 moveto -40 550 lineto -40 40 lineto -550 40 lineto
+ -550 -40 lineto -40 -40 lineto -40 -550 lineto 40 -550 lineto
+ 40 -40 lineto 550 -40 lineto 550 40 lineto 40 40 lineto closepath
+ } def
+ /BoldCrossPath {80 550 moveto -80 550 lineto -80 80 lineto -550 80 lineto
+ -550 -80 lineto -80 -80 lineto -80 -550 lineto 80 -550 lineto
+ 80 -80 lineto 550 -80 lineto 550 80 lineto 80 80 lineto closepath
+ } def
+ /Add {CrossPath fill} def
+ /Mul {45 rotate CrossPath fill} def
+ /BoldAdd {BoldCrossPath fill} def
+ /BoldMul {45 rotate BoldCrossPath fill} def
+ /Oplus {CirclePath .9 .9 scale CirclePath eofill .775 .775 scale CrossPath fill } def
+ /SolidOplus {CirclePath .775 .775 scale BoldCrossPath eofill} def
+ /BOplus {CirclePath .8 .8 scale CirclePath eofill .775 .775 scale BoldCrossPath fill} def
+ /Otimes {CirclePath .9 .9 scale CirclePath eofill 45 rotate .775 .775 scale CrossPath fill} def
+ /BOtimes {CirclePath .8 .8 scale CirclePath eofill 45 rotate .775 .775 scale BoldCrossPath fill } def
+ /SolidOtimes {CirclePath 45 rotate .775 .775 scale BoldCrossPath eofill} def
+ /BarPath {40 660 moveto -40 660 lineto -40 -660 lineto 40 -660 lineto closepath} def
+ /Bar {BarPath fill} def
+ /BoldBarPath {80 660 moveto -80 660 lineto -80 -660 lineto 80 -660 lineto closepath} def
+ /BoldBar {BoldBarPath fill} def
+ /DiamondPath {0 742.5 moveto -428.5 0 lineto 0 -742.5 lineto 428.5 0 lineto closepath} def
+ /SolidDiamond {DiamondPath fill} def
+ /Diamond {DiamondPath .865 .865 scale DiamondPath eofill} def
+ /BoldDiamond {DiamondPath .73 .73 scale DiamondPath eofill} def
+%%%
+ /.notdef { } def
+end
+%
+/BuildGlyph {
+ exch
+ begin
+% Metrics 1 index get exec 0
+ 0 0
+% BBoxes 3 index get exec
+ -1000 -1000 1000 1000
+% -571.5 -742.5 571.5 742.5
+ setcachedevice
+ CharProcs begin load exec end
+ end
+} def
+%
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+%
+end
+/PSTricksDotFont exch definefont pop
+%
+%% end
+
+%%EndProcSet
+%%BeginProcSet: pst-node.pro 0 0
+% $Id: pst-node.pro 645 2012-02-12 09:09:51Z herbert $
+%%
+%% PostScript prologue for pst-node.tex.
+%% Version 1.13, 2011/11/21.
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%
+/tx@NodeDict 400 dict def tx@NodeDict begin
+tx@Dict begin % from main pstricks dict
+ /T /translate load def
+ /CP /currentpoint load def
+end
+/NewNode { % on stack: { x y } boolean N@name type InitXnode
+ gsave
+ NodeScale % a bugfix for xelatex, it's empty for dvips
+ /next exch def % { x y } boolean N@name type
+ dict dup % { x y } boolean N@name dict dict
+ 3 1 roll def % { x y } boolean dict N@name dict def
+ exch { dup 3 1 roll def } if % { x y } dict boolean
+ begin % { x y } dict begin
+ tx@Dict begin
+ STV CP T exec % set scaling
+ end
+ /NodeMtrx CM def % save CM
+ next % InitXNode
+ end
+ grestore
+} def
+%
+/InitPnode {
+ /Y ED /X ED
+ /NodePos { NodeSep Cos mul NodeSep Sin mul } def
+} def
+%
+/InitCnode {
+ /r ED /Y ED /X ED
+ /NodePos { NodeSep r add dup Cos mul exch Sin mul } def
+} def
+%
+/GetRnodePos {
+ Cos 0 gt { /dx r NodeSep add def } { /dx l NodeSep sub def } ifelse
+ Sin 0 gt { /dy u NodeSep add def } { /dy d NodeSep sub def } ifelse
+ dx Sin mul abs dy
+ Cos mul abs gt { dy Cos mul Sin div dy } { dx dup Sin mul Cos Div } ifelse
+} def
+%
+/InitRnode {
+ /Y ED /X ED X sub /r ED /l X neg def Y add neg /d ED Y sub /u ED
+ /NodePos { GetRnodePos } def
+} def
+%
+/DiaNodePos {
+ w h mul w Sin mul abs h Cos mul abs add Div NodeSep add dup
+ Cos mul exch Sin mul
+} def
+%
+/TriNodePos {
+ Sin s lt
+ { d NodeSep sub dup Cos mul Sin Div exch }
+ { w h mul w Sin mul h Cos abs mul add Div
+ NodeSep add dup Cos mul exch Sin mul
+ } ifelse
+} def
+%
+/InitTriNode {
+ sub 2 div exch
+ 2 div exch
+ 2 copy T
+ 2 copy 4 index index /d ED
+ pop pop pop pop
+ -90 mul rotate
+ /NodeMtrx CM def
+ /X 0 def /Y 0 def
+ d sub abs neg /d ED
+ d add /h ED
+ 2 div h mul h d sub Div /w ED
+ /s d w Atan sin def
+ /NodePos { TriNodePos } def
+} def
+%
+/OvalNodePos {
+ /ww w NodeSep add def
+ /hh h NodeSep add def
+ Sin ww mul Cos hh mul Atan dup cos ww mul exch sin hh mul
+} def
+%
+/GetCenter { begin X Y NodeMtrx transform CM itransform end } def
+%
+/XYPos {
+ dup sin exch cos Do
+ /Cos ED /Sin ED /Dist ED
+ Cos 0 gt
+ { Dist Dist Sin mul Cos div }
+ { Cos 0 lt
+ { Dist neg Dist Sin mul Cos div neg }
+ { 0 Dist Sin mul } ifelse
+ } ifelse
+ Do
+} def
+%
+/GetEdge {
+ dup 0 eq
+ { pop begin 1 0 NodeMtrx dtransform
+ CM idtransform
+ exch atan sub
+ dup
+ sin /Sin ED
+ cos /Cos ED
+ /NodeSep ED
+ NodePos NodeMtrx dtransform CM idtransform end }
+ { 1 eq {{exch}} {{}} ifelse /Do ED pop XYPos } ifelse
+} def
+%
+/AddOffset {
+ 1 index 0 eq
+ { pop pop }
+ { 2 copy 5 2 roll cos mul add 4 1 roll sin mul sub exch } ifelse
+} def
+%
+/GetEdgeA {
+ NodeSepA AngleA NodeA NodeSepTypeA GetEdge
+ OffsetA AngleA AddOffset
+ yA add /yA1 ED
+ xA add /xA1 ED
+} def
+%
+/GetEdgeB {
+ NodeSepB AngleB NodeB NodeSepTypeB GetEdge
+ OffsetB AngleB AddOffset
+ yB add /yB1 ED
+ xB add /xB1 ED
+} def
+%
+/GetArmA {
+ ArmTypeA 0 eq
+ { /xA2 ArmA AngleA cos mul xA1 add def
+ /yA2 ArmA AngleA sin mul yA1 add def }
+ { ArmTypeA 1 eq {{exch}} {{}} ifelse
+ /Do ED
+ ArmA AngleA XYPos OffsetA AngleA AddOffset
+ yA add /yA2 ED
+ xA add /xA2 ED } ifelse
+} def
+%
+/GetArmB {
+ ArmTypeB 0 eq
+ { /xB2 ArmB AngleB cos mul xB1 add def
+ /yB2 ArmB AngleB sin mul yB1 add def }
+ { ArmTypeB 1 eq {{exch}} {{}} ifelse
+ /Do ED
+ ArmB AngleB XYPos OffsetB AngleB AddOffset
+ yB add /yB2 ED
+ xB add /xB2 ED } ifelse
+} def
+%
+/InitNC {
+ /b ED /a ED % second and first node
+ /NodeSepTypeB ED /NodeSepTypeA ED
+ /NodeSepB ED /NodeSepA ED
+ /OffsetB ED /OffsetA ED
+ tx@NodeDict a known tx@NodeDict b known and dup {
+ /NodeA a load def
+ /NodeB b load def
+ NodeA GetCenter /yA ED /xA ED
+ NodeB GetCenter /yB ED /xB ED } if
+} def
+%
+/LPutLine {
+ 4 copy
+ 3 -1 roll sub neg 3 1 roll sub Atan /NAngle ED
+ 1 t sub mul
+ 3 1 roll 1 t sub mul
+ 4 1 roll t mul add /Y ED
+ t mul add /X ED
+} def
+%
+/LPutLines {
+ mark LPutVar counttomark 2 div 1 sub /n ED
+% t floor dup n gt
+ t floor dup n ge % to allow npos<= hv 2008-08-14
+ { pop n 1 sub /t 1 def } { dup t sub neg /t ED } ifelse
+ cvi 2 mul { pop } repeat
+ LPutLine
+ cleartomark
+} def
+%
+/BezierMidpoint {
+ /y3 ED /x3 ED /y2 ED /x2 ED /y1 ED /x1 ED /y0 ED /x0 ED /t ED
+ /cx x1 x0 sub 3 mul def
+ /cy y1 y0 sub 3 mul def
+ /bx x2 x1 sub 3 mul cx sub def
+ /by y2 y1 sub 3 mul cy sub def
+ /ax x3 x0 sub cx sub bx sub def
+ /ay y3 y0 sub cy sub by sub def
+ ax t 3 exp mul bx t t mul mul add
+ cx t mul add x0 add ay t 3 exp mul
+ by t t mul mul add cy t mul add
+ y0 add 3 ay t t mul mul mul 2
+ by t mul mul add cy add 3 ax t t mul mul mul
+ 2 bx t mul mul add cx add atan /NAngle ED
+ /Y ED /X ED
+} def
+%
+/HPosBegin { yB yA ge { /t 1 t sub def } if /Y yB yA sub t mul yA add def
+} def
+/HPosEnd { /X Y yyA sub yyB yyA sub Div xxB xxA sub mul xxA add def
+/NAngle yyB yyA sub xxB xxA sub Atan def } def
+/HPutLine { HPosBegin /yyA ED /xxA ED /yyB ED /xxB ED HPosEnd } def
+/HPutLines { HPosBegin yB yA ge { /check { le } def } { /check { ge } def
+} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { dup Y check { exit
+} { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark HPosEnd
+} def
+/VPosBegin { xB xA lt { /t 1 t sub def } if /X xB xA sub t mul xA add def
+} def
+/VPosEnd { /Y X xxA sub xxB xxA sub Div yyB yyA sub mul yyA add def
+/NAngle yyB yyA sub xxB xxA sub Atan def } def
+/VPutLine { VPosBegin /yyA ED /xxA ED /yyB ED /xxB ED VPosEnd } def
+/VPutLines { VPosBegin xB xA ge { /check { le } def } { /check { ge } def
+} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { 1 index X check {
+exit } { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark
+VPosEnd } def
+/HPutCurve { gsave newpath /SaveLPutVar /LPutVar load def LPutVar 8 -2
+roll moveto curveto flattenpath /LPutVar [ {} {} {} {} pathforall ] cvx
+def grestore exec /LPutVar /SaveLPutVar load def } def
+/NCCoor { /AngleA yB yA sub xB xA sub Atan def /AngleB AngleA 180 add def
+GetEdgeA GetEdgeB /LPutVar [ xB1 yB1 xA1 yA1 ] cvx def /LPutPos {
+LPutVar LPutLine } def /HPutPos { LPutVar HPutLine } def /VPutPos {
+LPutVar VPutLine } def LPutVar } def
+%
+/NCLine {
+ NCCoor
+ tx@Dict begin
+ ArrowA CP 4 2 roll
+ ArrowB
+ lineto pop pop
+ end
+} def
+%
+/NCLines {
+ false NArray
+ n 0 eq
+ { NCLine }
+ { 2 copy yA sub exch xA sub Atan /AngleA ED
+ n 2 mul dup index exch index yB sub exch xB sub
+ Atan /AngleB ED
+ GetEdgeA GetEdgeB
+ /LPutVar [ xB1 yB1 n 2 mul 4 add 4 roll xA1 yA1 ] cvx def
+ mark LPutVar
+ tx@Dict begin false Line end
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+ } ifelse
+} def
+%
+/NCCurve {
+ GetEdgeA
+ GetEdgeB
+ xA1 xB1 sub yA1 yB1 sub Pyth 2 div dup 3 -1
+roll mul /ArmA ED mul /ArmB ED /ArmTypeA 0 def /ArmTypeB 0 def GetArmA
+GetArmB xA2 yA2 xA1 yA1 tx@Dict begin ArrowA end xB2 yB2 xB1 yB1 tx@Dict
+begin ArrowB end curveto /LPutVar [ xA1 yA1 xA2 yA2 xB2 yB2 xB1 yB1 ]
+cvx def /LPutPos { t LPutVar BezierMidpoint } def /HPutPos { { HPutLines
+} HPutCurve } def /VPutPos { { VPutLines } HPutCurve } def } def
+%
+/NCAngles {
+ GetEdgeA GetEdgeB GetArmA GetArmB
+ /mtrx AngleA matrix rotate def
+ xA2 yA2 mtrx transform pop
+ xB2 yB2 mtrx transform exch pop
+ mtrx itransform
+ /y0 ED /x0 ED
+ mark ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 x0 y0 xA2 yA2
+ ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 x0 y0 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def } def
+%
+/NCAngle {
+ GetEdgeA GetEdgeB GetArmB
+ /mtrx AngleA matrix rotate def
+ xB2 yB2 mtrx itransform pop xA1 yA1 mtrx itransform exch pop mtrx transform
+ /y0 ED /x0 ED
+ mark
+ ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 x0 y0 xA1 yA1
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 x0 y0 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+} def
+%
+/NCBar {
+ GetEdgeA GetEdgeB GetArmA GetArmB
+ /mtrx AngleA matrix rotate def
+ xA2 yA2 mtrx itransform pop
+ xB2 yB2 mtrx itransform pop
+ sub dup 0 mtrx transform
+ 3 -1 roll 0 gt
+ { /yB2 exch yB2 add def /xB2 exch xB2 add def }
+ { /yA2 exch neg yA2 add def /xA2 exch neg xA2 add def } ifelse
+ mark
+ ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 xA2 yA2 ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+} def
+%
+/NCDiag {
+ /lineAngle ED
+ GetEdgeA GetEdgeB GetArmA GetArmB mark
+ lineAngle abs 0 gt {
+ /xTemp xA2 10 add def
+ /yTemp yA2 lineAngle dup sin exch cos div 10 mul add def
+ /dY1 yTemp yA2 sub def
+ /dX1 xTemp xA2 sub def
+ /dY2 yB2 yB1 sub def
+ /dX2 xB2 xB1 sub def
+ dX1 abs 0.01 lt {
+ /m2 dY2 dX2 div def
+ /xB2 xA2 def
+ /yB2 xA2 xB1 sub m2 mul yB1 add def
+ }{
+ dX2 abs 0.01 lt {
+ /m1 dY1 dX1 div def
+ /xB2 xB1 def
+ /yB2 xB1 xA2 sub m1 mul yA2 add def
+ }{%
+ /m1 dY1 dX1 div def
+ /m2 dY2 dX2 div def
+ /xB2 m1 xA2 mul m2 xB1 mul sub yA2 sub yB1 add m1 m2 sub div def
+ /yB2 xB2 xA2 sub m1 mul yA2 add def
+ } ifelse
+ } ifelse
+ } if
+ ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 xA2 yA2
+ ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+%
+% GetEdgeA GetEdgeB GetArmA GetArmB mark
+% ArmB 0 ne { xB1 yB1 } if
+% xB2 yB2 xA2 yA2
+% ArmA 0 ne { xA1 yA1 } if
+% tx@Dict begin false Line end
+% /LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx def
+% /LPutPos { LPutLines } def
+% /HPutPos { HPutLines } def
+% /VPutPos { VPutLines } def
+} def
+%
+/NCDiagg {
+ /lineAngle ED
+ GetEdgeA GetArmA
+ lineAngle abs 0 gt
+ { lineAngle }
+ { yB yA2 sub xB xA2 sub Atan 180 add } ifelse
+ /AngleB ED
+ GetEdgeB mark
+ lineAngle abs 0 gt {
+ /dY2 yA2 yA1 sub def
+ /dX2 xA2 xA1 sub def
+ lineAngle abs 90 eq {
+ /m2 dY2 dX2 div def
+ /yA2 xB xA2 sub m2 mul yA2 add def
+ /xA2 xB def
+ }{
+ /m1 lineAngle dup sin exch cos div def % tan alpha
+ dX2 abs 0.01 lt {
+ /yA2 xA1 xB sub m1 mul yB add def
+ /xA2 xA1 def
+ }{%
+ /m2 dY2 dX2 div def
+ /xA2 m1 xB mul m2 xA2 mul sub yA2 add yB sub m1 m2 sub div def
+ /yA2 xA2 xB sub m1 mul yB add def
+ } ifelse
+ } ifelse
+ } if
+ xB1 yB1 xA2 yA2
+ ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+%
+% GetEdgeA GetArmA
+% yB yA2 sub xB xA2 sub Atan 180 add /AngleB ED
+% GetEdgeB
+% mark
+% xB1 yB1 xA2 yA2
+% ArmA 0 ne { xA1 yA1 } if
+% tx@Dict begin false Line end
+% /LPutVar [ xB1 yB1 xA2 yA2 xA1 yA1 ] cvx def
+% /LPutPos { LPutLines } def
+% /HPutPos { HPutLines } def
+% /VPutPos { VPutLines } def
+} def
+%
+/NCLoop {
+ GetEdgeA GetEdgeB GetArmA GetArmB
+ /mtrx AngleA matrix rotate def
+ xA2 yA2 mtrx transform loopsize add /yA3 ED /xA3 ED
+ /xB3 xB2 yB2 mtrx transform pop def
+ xB3 yA3 mtrx itransform /yB3 ED /xB3 ED
+ xA3 yA3 mtrx itransform /yA3 ED /xA3 ED
+ mark ArmB 0 ne { xB1 yB1 } if
+ xB2 yB2 xB3 yB3 xA3 yA3 xA2 yA2 ArmA 0 ne { xA1 yA1 } if
+ tx@Dict begin false Line end
+ /LPutVar [ xB1 yB1 xB2 yB2 xB3 yB3 xA3 yA3 xA2 yA2 xA1 yA1 ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { HPutLines } def
+ /VPutPos { VPutLines } def
+} def
+%
+% DG/SR modification begin - May 9, 1997 - Patch 1
+%/NCCircle { 0 0 NodesepA nodeA \tx@GetEdge pop xA sub 2 div dup 2 exp r
+%r mul sub abs sqrt atan 2 mul /a ED r AngleA 90 add PtoC yA add exch xA add
+%exch 2 copy /LPutVar [ 4 2 roll r AngleA ] cvx def /LPutPos { LPutVar t 360
+%mul add dup 5 1 roll 90 sub \tx@PtoC 3 -1 roll add /Y ED add /X ED /NAngle ED
+%
+/NCCircle {
+ NodeSepA 0 NodeA 0 GetEdge pop
+ 2 div dup 2 exp r r mul sub abs sqrt
+ atan 2 mul /a ED
+ r AngleA 90 add PtoC yA add exch xA add
+ exch 2 copy
+ /LPutVar [ 4 2 roll r AngleA ] cvx def
+ /LPutPos {
+ LPutVar t 360 mul add dup 5 1 roll 90 sub PtoC
+ 3 -1 roll add
+ /Y ED add /X ED /NAngle ED
+% DG/SR modification end
+ } def
+ /HPutPos { LPutPos } def
+ /VPutPos { LPutPos } def
+ r AngleA 90 sub a add AngleA 270 add a sub
+ tx@Dict begin
+ /angleB ED /angleA ED /r ED
+ /c 57.2957 r Div def
+ /y ED /x ED
+} def
+%
+/NCBox {
+ /d ED /h ED
+ /AngleB yB yA sub xB xA sub Atan def
+ /AngleA AngleB 180 add def
+ GetEdgeA GetEdgeB
+ /dx d AngleB sin mul def
+ /dy d AngleB cos mul neg def
+ /hx h AngleB sin mul neg def
+ /hy h AngleB cos mul def
+ /LPutVar [
+ xA1 hx add yA1 hy add xB1 hx add yB1 hy add
+ xB1 dx add yB1 dy add xA1 dx add yA1 dy add ] cvx def
+ /LPutPos { LPutLines } def
+ /HPutPos { xB yB xA yA LPutLine } def
+ /VPutPos { HPutPos } def
+ mark
+ LPutVar tx@Dict begin false Polygon end
+} def
+%
+/NCArcBox {
+ /l ED neg /d ED /h ED /a ED
+ /AngleA yB yA sub xB xA sub Atan def
+ /AngleB AngleA 180 add def
+ /tA AngleA a sub 90 add def
+ /tB tA a 2 mul add def
+ /r xB xA sub tA cos tB cos sub Div dup 0 eq { pop 1 } if def
+ /x0 xA r tA cos mul add def
+ /y0 yA r tA sin mul add def
+ /c 57.2958 r div def
+ /AngleA AngleA a sub 180 add def
+ /AngleB AngleB a add 180 add def
+ GetEdgeA GetEdgeB
+ /AngleA tA 180 add yA yA1 sub xA xA1 sub Pyth c mul sub def
+ /AngleB tB 180 add yB yB1 sub xB xB1 sub Pyth c mul add def
+ l 0 eq {
+ x0 y0 r h add AngleA AngleB arc x0 y0 r d add AngleB AngleA arcn
+ }{
+ x0 y0 translate
+ /tA AngleA l c mul add def
+ /tB AngleB l c mul sub def
+ 0 0 r h add tA tB arc r h add
+ AngleB PtoC r d add
+ AngleB PtoC 2 copy
+ 6 2 roll l arcto 4 { pop } repeat
+ r d add tB PtoC l arcto 4 { pop } repeat
+ 0 0 r d add tB tA arcn r d add
+ AngleA PtoC r h add
+ AngleA PtoC 2 copy 6 2 roll
+ l arcto 4 { pop } repeat
+ r h add tA PtoC l arcto 4 { pop } repeat
+ } ifelse
+ closepath
+ /LPutVar [ x0 y0 r AngleA AngleB h d ] cvx def
+ /LPutPos {
+ LPutVar /d ED /h ED
+ /AngleB ED /AngleA ED
+ /r ED /y0 ED /x0 ED
+ t 1 le {
+ r h add AngleA 1 t sub mul AngleB t mul add dup 90 add /NAngle ED PtoC
+ }{t 2 lt {
+ /NAngle AngleB 180 add def r 2 t sub
+ h mul t 1 sub d mul add add AngleB PtoC
+ }{
+ t 3 lt {
+ r d add AngleB 3 t sub mul AngleA 2 t sub
+ mul add dup 90 sub /NAngle ED PtoC
+ }{
+ /NAngle AngleA 180 add def
+ r 4 t sub d mul t 3 sub h mul add add AngleA PtoC
+ } ifelse
+ } ifelse
+ } ifelse
+ y0 add /Y ED x0 add /X ED
+ } def
+ /HPutPos { LPutPos } def
+ /VPutPos { LPutPos } def
+} def
+%
+/Tfan { /AngleA yB yA sub xB xA sub Atan def GetEdgeA w xA1 xB sub yA1 yB
+sub Pyth Pyth w Div CLW 2 div mul 2 div dup AngleA sin mul yA1 add /yA1
+ED AngleA cos mul xA1 add /xA1 ED /LPutVar [ xA1 yA1 m { xB w add yB xB
+w sub yB } { xB yB w sub xB yB w add } ifelse xA1 yA1 ] cvx def /LPutPos
+{ LPutLines } def /VPutPos@ { LPutVar flag { 8 4 roll pop pop pop pop }
+{ pop pop pop pop 4 2 roll } ifelse } def /VPutPos { VPutPos@ VPutLine }
+def /HPutPos { VPutPos@ HPutLine } def mark LPutVar tx@Dict begin
+/ArrowA { moveto } def /ArrowB { } def false Line closepath end } def
+%
+/LPutCoor {
+ NAngle
+ tx@Dict begin /NAngle ED end
+ gsave
+ CM STV
+ CP Y sub neg exch X sub neg exch moveto
+ setmatrix CP
+ grestore
+} def
+%
+/LPut {
+ tx@NodeDict /LPutPos known
+ { LPutPos } { CP /Y ED /X ED /NAngle 0 def } ifelse
+ LPutCoor
+} def
+%
+/HPutAdjust {
+ Sin Cos mul 0 eq
+ { 0 }
+ { d Cos mul Sin div flag not { neg } if
+ h Cos mul Sin div flag { neg } if
+ 2 copy gt { pop } { exch pop } ifelse
+ } ifelse
+ s add flag { r add neg }{ l add } ifelse
+ X add /X ED
+} def
+%
+/VPutAdjust {
+ Sin Cos mul
+ 0 eq
+ { 0 }
+ { l Sin mul Cos div flag { neg } if
+ r Sin mul Cos div flag not { neg } if
+ 2 copy gt { pop } { exch pop } ifelse
+ } ifelse
+ s add flag { d add } { h add neg } ifelse
+ Y add /Y ED
+} def
+%
+%
+end
+%
+% END pst-node.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-3d.pro 0 0
+%% $Id: pst-3d.pro 247 2010-01-04 22:45:42Z herbert $
+% PostScript prologue for pst-3d.tex.
+% Version 0.01, 2010/01/01
+%
+/tx@3Ddict 300 dict def
+tx@3Ddict begin
+%
+/SetMatrixThreeD {
+ dup sin /e ED cos /f ED
+ /p3 ED /p2 ED /p1 ED
+ p1 0 eq
+ { /a 0 def /b p2 0 le { 1 } { -1 } ifelse def
+ p3 p2 abs
+ }
+ { p2 0 eq
+ { /a p1 0 lt { -1 } { 1 } ifelse def /b 0 def
+ p3 p1 abs
+ }
+ { p1 dup mul p2 dup mul add sqrt dup
+ p1 exch div /a ED
+ p2 exch div neg /b ED
+ p3 p1 a div
+ }
+ ifelse
+ }
+ ifelse
+ atan dup sin /c ED cos /d ED
+ /Matrix3D
+ [
+ b f mul c a mul e mul sub
+ a f mul c b mul e mul add
+ d e mul
+ b e mul neg c a mul f mul sub
+ a e mul neg c b mul f mul add
+ d f mul
+ ] def
+} def
+%
+/ProjThreeD {
+ /z ED /y ED /x ED
+ Matrix3D aload pop
+ z mul exch y mul add exch x mul add
+ 4 1 roll
+ z mul exch y mul add exch x mul add
+ exch
+} def
+%
+/SetMatrixEmbed {
+ SetMatrixThreeD
+ Matrix3D aload pop
+ /z3 ED /z2 ED /z1 ED /x3 ED /x2 ED /x1 ED
+ SetMatrixThreeD
+ [
+ Matrix3D aload pop
+ z3 mul exch z2 mul add exch z1 mul add 4 1 roll
+ z3 mul exch z2 mul add exch z1 mul add
+ Matrix3D aload pop
+ x3 mul exch x2 mul add exch x1 mul add 4 1 roll
+ x3 mul exch x2 mul add exch x1 mul add
+ 3 -1 roll 3 -1 roll 4 -1 roll 8 -3 roll 3 copy
+ x3 mul exch x2 mul add exch x1 mul add 4 1 roll
+ z3 mul exch z2 mul add exch z1 mul add
+ ]
+ concat
+} def
+%
+/TMSave {
+ tx@Dict /TMatrix known not { /TMatrix { } def /RAngle { 0 } def } if
+ /TMatrix [ TMatrix CM ] cvx def
+} def
+%
+/TMRestore { CP /TMatrix [ TMatrix setmatrix ] cvx def moveto } def
+%
+/TMChange {
+ TMSave
+ /cp [ currentpoint ] cvx def % ??? Check this later.
+ CM
+ CP T STV
+ CM matrix invertmatrix % Inv(M')
+ matrix concatmatrix % M Inv(M')
+ exch exec
+ concat cp moveto
+} def
+%
+end % of tx@3Ddict
+%%
+%% End of file `pst-3d.pro'.
+
+%%EndProcSet
+%%BeginProcSet: pst-math.pro 0 0
+% -*- Mode: Postscript -*-
+% pst-math.pro --- PostScript header file pst-math.pro
+%
+% Author : Christophe JORSSEN
+% Author : Herbert Voß <hvoss@tug.org>
+% Created the : Sat 20 March 2004
+% Last Mod : $Date: 2010/10/02 $
+% Version : 0.62 $
+%
+/PI 3.14159265359 def
+/ENeperian 2.71828182846 def
+%
+/DegToRad {PI mul 180 div} bind def
+/RadToDeg {180 mul PI div} bind def
+%
+/COS {RadToDeg cos} bind def
+/SIN {RadToDeg sin} bind def
+/TAN {dup SIN exch COS Div} bind def
+/tan {dup sin exch cos Div} bind def
+/ATAN {neg -1 atan 180 sub DegToRad} bind def
+/ACOS {dup dup mul neg 1 add sqrt exch atan DegToRad} bind def
+/acos {dup dup mul neg 1 add sqrt exch atan} bind def
+/ASIN {neg dup dup mul neg 1 add sqrt neg atan 180 sub DegToRad} bind def
+/asin {neg dup dup mul neg 1 add sqrt neg atan 180 sub} bind def
+%
+/EXP {ENeperian exch exp} bind def
+%
+/COSH {dup EXP exch neg EXP add 2 div} bind def
+/SINH {dup EXP exch neg EXP sub 2 div} bind def
+/TANH {dup SINH exch COSH div} bind def
+/ACOSH {dup dup mul 1 sub sqrt add ln} bind def
+/ASINH {dup dup mul 1 add sqrt add ln} bind def
+/ATANH {dup 1 add exch neg 1 add Div ln 2 div} bind def
+%
+%/SINC {dup SIN exch Div} bind def
+/SINC { dup 0 eq { pop 1 } { dup SIN exch div } ifelse } bind def
+
+/GAUSS {dup mul 2 mul dup 4 -2 roll sub dup mul exch div neg EXP exch PI mul sqrt div} bind def
+%
+/GAMMA { 2 dict begin % hv 2007-08-30
+ /z exch def
+ 1.000000000190015 % p(0)
+ 0 1 5 { % on stack is 0 1 2 3 4 5
+ dup % n-1 n-1
+ [ 76.18009172947146
+ -86.50532032941677
+ 24.0140982483091
+ -1.231739572450155
+ 0.1208650973866179E-2
+ -0.5395239384953E-5 ] exch get exch % p(n) n-1
+ 1 add z add div % p(n)/(z+n)
+ add % build the sum
+ } for
+ Pi 2 mul sqrt z div mul
+ z 5.5 add z 0.5 add exp mul ENeperian z 5.5 add neg exp mul
+ end } bind def
+%
+/GAMMALN {dup dup dup 5.5 add dup ln 3 -1 roll .5 add mul sub neg 1.000000000190015
+ 0 1 5 {
+ [76.18009172947146 -86.50532032941677 24.0140982483091 -1.231739572450155
+ .1208650973866179E-2 -.5395239384953E-5 2.5066282746310005] exch get
+ 4 -1 roll 1 add dup 5 1 roll div add} for
+ 4 -1 roll div 2.5066282746310005 mul ln add exch pop} bind def
+/BETA {2 copy add GAMMALN neg exch GAMMALN 3 -1 roll GAMMALN EXP} bind def
+%
+/HORNER {aload length
+ dup 2 add -1 roll
+ exch 1 sub {
+ dup 4 1 roll
+ mul add exch
+ } repeat
+ pop
+} bind def
+%
+/BESSEL_J0 {dup abs 8 lt {
+ dup mul dup [57568490574 -13362590354 651619640.7 -11214424.18 77392.33017 -184.9052456] HORNER
+ exch [57568490411 1029532985 9494680.718 59272.64853 267.8532712 1] HORNER
+ Div}
+ {abs dup .636619772 exch div sqrt exch dup .785398164 sub exch 8 exch div dup dup mul dup
+ [1 -1.098628627E-2 .2734510407E-4 -.2073370639E-5 .2093887211E-6] HORNER
+ 3 index COS mul
+ exch [-.1562499995E-1 .1430488765E-3 -.6911147651E-5 .7621095161E-6 -.934945152E-7] HORNER
+ 4 -1 roll SIN mul 3 -1 roll mul neg add mul}
+ ifelse} bind def
+%
+/BESSEL_Y0 {dup 8 lt {
+ dup dup mul dup [-2957821389 7062834065 -512359803.6 10879881.29 -86327.92757 228.4622733] HORNER
+ exch [40076544269 745249964.8 7189466.438 47447.26470 226.1030244 1] HORNER
+ Div exch dup ln exch BESSEL_J0 .636619772 mul mul add}
+ {dup .636619772 exch div sqrt exch dup .785398164 sub exch 8 exch div dup dup mul dup
+ [1 -.1098628627E-2 .2734510407E-4 -.2073370639E-5 .2093887211E-6] HORNER
+ 3 index SIN mul
+ exch [-.1562499995E-1 .1430488765E-3 -.6911147651E-5 .7621095161E-6 -.934945152E-7] HORNER
+ 4 -1 roll COS mul 3 -1 roll mul add mul}
+ ifelse} bind def
+%
+/BESSEL_J1 {dup abs 8 lt {
+ dup dup mul dup 3 -2 roll [72362614232 -7895059235 242396853.1 -2972611.439 15704.48260 -30.16036606] HORNER mul
+ exch [144725228442 2300535178 18583304.74 99447.43394 376.9991397 1] HORNER
+ Div}
+ {dup abs dup .636619772 exch div sqrt exch dup 2.356194491 sub exch 8 exch div dup dup mul dup
+ [1 .183105E-2 -.3516396496E-4 .2457520174E-5 -.240337019E-6] HORNER
+ 3 index COS mul
+ exch [.04687499995 6.2002690873E-3 .8449199096E-5 -.88228987E-6 .105787412E-6] HORNER
+ 4 -1 roll SIN mul 3 -1 roll mul neg add mul exch dup abs Div mul}
+ ifelse} bind def
+%
+/BESSEL_Y1 {dup 8 lt {
+ dup dup dup mul dup [-.4900604943E13 .1275274390E13 -.5153428139E11 .7349264551E9 -.4237922726E7 .8511937935E4] HORNER
+ exch [.2499580570E14 .4244419664E12 .3733650367E10 .2245904002E8 .1020426050E6 .3549632885E3 1] HORNER
+ Div mul exch dup dup ln exch BESSEL_J1 mul exch 1 exch div sub .636619772 mul add}
+ {dup .636619772 exch div sqrt exch dup 2.356194491 sub exch 8 exch div dup dup mul dup
+ [1 .183105E-2 -.3516396496E-4 .2457520174E-5 -.240337019E-6] HORNER
+ 3 index SIN mul
+ exch [.04687499995 -.2002690873E-3 .8449199096E-5 6.88228987E-6 .105787412E-6] HORNER
+ 4 -1 roll COS mul 3 -1 roll mul add mul}
+ ifelse} bind def
+%
+% En cours...
+/BESSEL_Yn {dup 0 eq {pop BESSEL_Y0}{dup 1 eq {pop BESSEL_Y1}{
+ exch dup BESSEL_Y0 exch dup BESSEL_Y1 exch 2 exch Div {
+ mul 3 -1 roll mul 2 index sub pstack} for
+ } ifelse } ifelse } bind def
+%
+/SIMPSON { 1 dict begin %% on stack a b var f ierr Dominik Rodriguez
+ 3 index 5 index sub % compute h
+ 1 % a b var f ierr h n
+ 4 index 7 index def 3 index exec % a b var f ierr h n f(a)
+ 5 index 7 index def 4 index exec add % a b var f ierr h n f(a)+f(b)
+ 5 index 8 index 4 index 2 div add def 4 index exec % a b var f ierr h n f(a)+f(b) f(a+h/2)
+ exch 1 index 4 mul add 0 % a b var f ierr h n old=f(a+h/2) Estim=f(a)+f(b)+4f(a+h/2) NbLoop
+ { % a b var f ierr h n old Estim NbLoop
+ 5 -1 roll 2 div dup 6 1 roll % h<-h/2
+ 5 -1 roll 2 mul 5 1 roll % n<-2n
+ % a b var f ierr h n old Estim NbLoop h
+ 2 div 10 index add 0 % a b var f ierr h n old Estim NbLoop a+h/2 Cumul
+ 5 index {
+ 1 index 10 index exch def 8 index exec add exch 6 index add exch
+ } repeat % a b var f ierr h n old Estim NbLoop a+nh/2 Cumul
+ exch pop % a b var f ierr h n old Estim NbLoop New
+ 2 index 1 index 4 mul 6 -1 roll 2 mul sub sub % a b var f ierr h n Estim NbLoop New Diff
+ 4 -1 roll 2 mul 1 index sub 4 1 roll % a b var f ierr h n Estim NbLoop New Diff
+ exch 4 1 roll % a b var f ierr h n old Estim NbLoop Diff
+ 5 index 6 div mul abs 6 index lt { exit } if
+ 1 add dup 9 eq { exit } if
+ } loop % a b var f ierr h n old Estim NbLoop
+ exch 5 -1 roll 6 div mul mark 10 2 roll cleartomark
+end
+} def
+% ------------------------------------ math stuff ----------------------------------
+%
+% Matrix A in arrays of rows A[[row1][row2]...]
+% with [row1]=[a11 a12 ... b1]
+% returns on stack solution vector X=[x1 x2 ... xn]
+/SolveLinEqSystem { % on stack matrix M=[A,b] (A*x=b)
+ 10 dict begin % hold all ocal
+ /A exch def
+ /Rows A length def % Rows = number of rows
+ /Cols A 0 get length def % Cols = number of columns
+ /Index [ 0 1 Rows 1 sub { } for ] def % Index = [0 1 2 ... Rows-1]
+ /col 0 def
+ /row 0 def
+ /PR Rows array def % PR[c] = pivot row for row row
+ { % starts the loop, find pivot entry in row r
+ col Cols ge row Rows ge or { exit } if % col < Cols and row < Rows else exit
+ /pRow row def % pRow = pivot row
+ /max A row get col get abs def % get A[row[col]], first A[0,0]
+ row 1 add 1 Rows 1 sub { % starts for loop 1 1 Rows-1
+ /j exch def % index counter
+ /x A j get col get abs def % get A[j[r]]
+ x max gt { % x>max, then save position
+ /pRow j def
+ /max x def
+ } if
+ } for % now we have the row with biggest A[0,1]
+ % with pRow = the pivot row
+ max 0 gt { % swap entries pRow and row in i
+ /tmp Index row get def
+ Index row Index pRow get put
+ Index pRow tmp put % and columns pRow and row in A
+ /tmp A row get def
+ A row A pRow get put
+ A pRow tmp put % pivot
+ /row0 A row get def % the pivoting row
+ /p0 row0 col get def % the pivot value
+ row 1 add 1 Rows 1 sub { % start for loop
+ /j exch def
+ /c1 A j get def
+ /p c1 col get p0 div def
+ c1 col p put % subtract (p1/p0)*row[i] from row[j]
+ col 1 add 1 Cols 1 sub { % start for loop
+ /i exch def
+ c1 dup i exch % c1 i c1
+ i get row0 i get p mul sub put
+ } for
+ } for
+ PR row col put
+ /col col 1 add def
+ /row row 1 add def
+ }{ % all zero entries
+ /row row 1 add def % continue loop with same row
+ } ifelse
+ } loop
+ /X A def % solution vector
+ A Rows 1 sub get dup
+ Cols 1 sub get exch
+ Cols 2 sub get div
+ X Rows 1 sub 3 -1 roll put % X[n]
+ Rows 2 sub -1 0 { % for loop to calculate X[i]
+ /xi exch def % current index
+ A xi get % i-th row
+ /Axi exch def
+ /sum 0 def
+ Cols 2 sub -1 xi 1 add {
+ /n exch def
+ /sum sum Axi n get X n get mul add def
+ } for
+ Axi Cols 1 sub get % b=Axi[Cols-1]
+ sum sub % b-sum
+ Axi xi get div % b-sum / Axi[xi]
+ X xi 3 -1 roll put % X[xi]
+ } for
+ X
+ end
+} def
+%
+/c@_0 2.515517 def
+/c@_1 0.802853 def
+/c@_2 0.010328 def
+/d@_1 1.432788 def
+/d@_2 0.189269 def
+/d@_3 0.001308 def
+/norminv {
+ 5 dict begin
+ neg 1 add 1 exch div ln 2 mul sqrt
+ /t exch def
+ /t2 t dup mul def
+ /t3 t2 t mul def
+ c@_0 c@_1 t mul add c@_2 t2 mul add 1 d@_1 t mul add
+ d@_2 t2 mul add d@_3 t3 mul add div neg t add
+ end
+} def
+%end{norminv Michael Sharpe}
+%
+%
+% END pst-math.pro
+
+%%EndProcSet
+%%BeginProcSet: pstricks-add.pro 0 0
+%% $Id: pstricks-add.pro 328 2010-05-24 15:56:43Z herbert $
+% PostScript prologue for pstricks-add.tex.
+% Version 0.23, 2009/12/17
+%
+/tx@addDict 410 dict def tx@addDict begin
+%%
+realtime srand % set random generator
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/GTriangle {
+ gsave
+ /mtrx CM def
+ /colorA ED /colorB ED /colorC ED % save the colors
+ /yA ED /xA ED % save the origin
+ xA yA translate
+ rotate % \psk@gangle
+ /yB ED /xB ED /yC ED /xC ED % save other coordinates
+ /ds [ % save data in a array
+ 0 0 0 colorA aload pop % fd x y xr xg xb
+ 0 xB xA sub yB yA sub colorB aload pop
+ 0 xC xA sub yC yA sub colorC aload pop
+% 1 xC xB add yB colorA aload pop % for use with 4 points ABCD
+ ] def
+ newpath
+ <<
+ /ShadingType 4 % single Gouraud
+ /ColorSpace [ /DeviceRGB ]
+ /DataSource ds
+ >>
+ shfill
+ closepath
+ mtrx
+ setmatrix grestore} def
+%
+/RGBtoCMYK { % on stack r g b -> C M Y K
+ 3 dict begin
+ /Blue ED /Green ED /Red ED
+ 1 Red sub % Cyan
+ 1 Green sub % Magenta
+ 1 Blue sub % Yellow
+ 0 % Black
+ end
+} def
+%
+/CMYKtoGRAY { % on stack c m y k -> gray
+ exch 0.11 mul add
+ exch 0.59 mul add
+ exch 0.3 mul add
+ dup 1 gt { pop 1 } if
+ neg 1 add
+} def
+%
+/RGBtoGRAY { % on stack r g b -> gray
+ 0.11 mul
+ exch 0.59 mul add
+ exch 0.3 mul add
+} def
+%
+/HSBtoGRAY {
+ 6 dict begin
+ /b exch def
+ /s exch def 6 mul dup cvi dup
+ /i exch def sub
+ /f exch def
+ /F [[0 1 f sub 1][f 0 1][1 0 1 f sub][1 f 0][1 f sub 1 0][0 1 f][0 1 1]] def
+ F i get { s mul neg 1 add b mul} forall
+ 0.11 mul
+ exch 0.59 mul add
+ exch 0.3 mul add
+ end
+} def
+%
+%% convertisseur longueur d'onde ->R,G,B Manuel Luque
+%% lambda max=780 nanometres
+%% lambda min=380 nanometres
+%% adaptation de :
+%% http://www.physics.sfasu.edu/astro/color.html
+%% www.efg2.com/lab
+%
+/Gamma 0.8 def
+/calculateRGB {
+ lambda 379 le {/Red 0 def /Green 0 def /Blue 0 def} if
+ lambda 781 ge {/Red 0 def /Green 0 def /Blue 0 def} if
+ lambda 380 ge {lambda 439 le {
+ /R {lambda 440 sub neg 440 380 sub div} def
+ /Red R factor mul Gamma exp def
+ /G 0 def
+ /Green G factor mul Gamma exp def
+ /B 1 def
+ /Blue B factor mul Gamma exp def} if
+ } if
+ lambda 440 ge { lambda 489 le {
+ /G {lambda 440 sub 490 440 sub div} def
+ /Green G factor mul Gamma exp def
+ /R 0 def /Red 0 def
+ /B 1 def
+ /Blue B factor mul Gamma exp def } if
+ } if
+ lambda 490 ge {lambda 509 le {
+ /B {lambda 510 sub neg 510 490 sub div} def
+ /Blue B factor mul Gamma exp def
+ /R 0 def /Red 0 def
+ /G 1 def
+ /Green G factor mul Gamma exp def } if
+ } if
+ lambda 510 ge {lambda 579 le {
+ /R {lambda 510 sub 580 510 sub div } def
+ /Red R factor mul Gamma exp def
+ /Blue 0 def
+ /G 1 def
+ /Green G factor mul Gamma exp def } if
+ } if
+ lambda 580 ge {lambda 644 le {
+ /G {lambda 645 sub neg 645 580 sub div } def
+ /Green G factor mul Gamma exp def
+ /Blue 0 def
+ /R 1 def
+ /Red R factor mul Gamma exp def } if
+ } if
+ lambda 645 ge { lambda 780 le {
+ /Red 1 factor mul Gamma exp def
+ /Blue 0 def
+ /Green 0 def } if
+ } if
+} def
+%
+/factor {
+ lambda 380 ge {lambda 419 le { 0.3 0.7 lambda 380 sub mul 420 380 sub div add} if } if
+ lambda 420 ge {lambda 700 le { 1 } if } if
+ lambda 701 ge {lambda 780 le { 0.3 0.7 780 lambda sub mul 780 700 sub div add} if } if
+} def
+%
+/wavelengthToRGB { % the wavelength in nm must be on top of the stack
+ cvi /lambda exch def % no floating point here
+ calculateRGB
+} def % now the colors are saved in Red Green Blue
+%
+/wavelengthToGRAY { % the wavelength in nm must be on top of the stack
+ cvi /lambda exch def % no floating point here
+ calculateRGB
+ Red Green Blue RGBtoGRAY
+} def % now the gray color is on the stack
+%
+/wavelengthToCMYK { % the wavelength in nm must be on top of the stack
+ cvi /lambda exch def % no floating point here
+ gsave
+ calculateRGB Red Green Blue RGBtoCMYK
+ /Black ED /Yellow ED /Magenta ED /Cyan ED
+ grestore
+} def % now the colors are saved in Cyan Magenta Yellow Black
+%
+/axfill {
+ 8 dict begin
+ /xw exch def /nl exch def
+ /C1 exch def /y1 exch def/x1 exch def
+ /C0 exch def /y0 exch def/x0 exch def
+ << /ShadingType 2
+ /ColorSpace /DeviceRGB
+ /Coords [ x0 y0 x1 y1 ]
+ /EmulatorHints [ xw 2 div dup ]
+ /Function <<
+ /FunctionType 2
+ /Domain [0 1]
+ /C0 C0
+ /C1 C1
+ /N 1
+ >>
+ >> shfill
+ end
+} bind def
+%
+%/amplHand {.8} def
+%/dtHand 2 def
+/varHand { rand sin amplHand mul add } def
+/MovetoByHand { moveto } def
+%/MovetoByHand { /y0 ED /x0 ED x0 y0 moveto } def
+/LinetoByHand { 4 dict begin
+ /y1 ED /x1 ED
+ currentpoint /y0 ED /x0 ED
+ x0 x1 sub dup mul y0 y1 sub dup mul add sqrt /dEnd ED
+ 0 dtHand dEnd { dup
+ x1 x0 sub mul dEnd div x0 add varHand exch
+ y1 y0 sub mul dEnd div y0 add varHand lineto
+ } for
+% /x0 x1 def /y0 y1 def
+ end
+} def
+%
+end
+%
+% END pstricks-add.pro
+
+%%EndProcSet
+%%BeginProcSet: OpenLine.pro 0 0
+%%%%%%%%%%%%%%%%%%%%%%%%%% OpenLine %%%%%%%%%%%%%%%%%%%%%%%%
+% copy of /Line
+% removed possibility to plot arrows
+/OpenLine {
+ NArray
+ n 0 eq not
+ { n 1 eq
+ { 0 0 /n 2 def } if
+ /n n 1 sub def % last point in stack is first point from plot (to plot closed curves)
+ n { moveto 2 copy Lineto } repeat
+ pop pop % remove first point from stack
+ } if
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%EndProcSet
+%%BeginProcSet: lm-ec.enc 0 0
+% This file belongs to the Latin Modern package. The work is released
+% under the GUST Font License. See the MANIFEST-Latin-Modern.txt and
+% README-Latin-Modern.txt files for the details. For the most recent version of
+% this license see http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt
+% or http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt
+
+/enclmec[
+/grave
+/acute
+/circumflex
+/tilde
+/dieresis
+/hungarumlaut
+/ring
+/caron
+/breve
+/macron
+/dotaccent
+/cedilla
+/ogonek
+/quotesinglbase
+/guilsinglleft
+/guilsinglright
+/quotedblleft
+/quotedblright
+/quotedblbase
+/guillemotleft
+/guillemotright
+/endash
+/emdash
+/cwm
+/perthousandzero
+/dotlessi
+/dotlessj
+/ff
+/fi
+/fl
+/ffi
+/ffl
+/uni2423
+/exclam
+/quotedbl
+/numbersign
+/dollar
+/percent
+/ampersand
+/quoteright
+/parenleft
+/parenright
+/asterisk
+/plus
+/comma
+/hyphen
+/period
+/slash
+/zero
+/one
+/two
+/three
+/four
+/five
+/six
+/seven
+/eight
+/nine
+/colon
+/semicolon
+/less
+/equal
+/greater
+/question
+/at
+/A
+/B
+/C
+/D
+/E
+/F
+/G
+/H
+/I
+/J
+/K
+/L
+/M
+/N
+/O
+/P
+/Q
+/R
+/S
+/T
+/U
+/V
+/W
+/X
+/Y
+/Z
+/bracketleft
+/backslash
+/bracketright
+/asciicircum
+/underscore
+/quoteleft
+/a
+/b
+/c
+/d
+/e
+/f
+/g
+/h
+/i
+/j
+/k
+/l
+/m
+/n
+/o
+/p
+/q
+/r
+/s
+/t
+/u
+/v
+/w
+/x
+/y
+/z
+/braceleft
+/bar
+/braceright
+/asciitilde
+/hyphen.alt
+/Abreve
+/Aogonek
+/Cacute
+/Ccaron
+/Dcaron
+/Ecaron
+/Eogonek
+/Gbreve
+/Lacute
+/Lcaron
+/Lslash
+/Nacute
+/Ncaron
+/Eng
+/Ohungarumlaut
+/Racute
+/Rcaron
+/Sacute
+/Scaron
+/Scedilla
+/Tcaron
+/Tcedilla
+/Uhungarumlaut
+/Uring
+/Ydieresis
+/Zacute
+/Zcaron
+/Zdotaccent
+/IJ
+/Idotaccent
+/dcroat
+/section
+/abreve
+/aogonek
+/cacute
+/ccaron
+/dcaron
+/ecaron
+/eogonek
+/gbreve
+/lacute
+/lcaron
+/lslash
+/nacute
+/ncaron
+/eng
+/ohungarumlaut
+/racute
+/rcaron
+/sacute
+/scaron
+/scedilla
+/tcaron
+/tcedilla
+/uhungarumlaut
+/uring
+/ydieresis
+/zacute
+/zcaron
+/zdotaccent
+/ij
+/exclamdown
+/questiondown
+/sterling
+/Agrave
+/Aacute
+/Acircumflex
+/Atilde
+/Adieresis
+/Aring
+/AE
+/Ccedilla
+/Egrave
+/Eacute
+/Ecircumflex
+/Edieresis
+/Igrave
+/Iacute
+/Icircumflex
+/Idieresis
+/Eth
+/Ntilde
+/Ograve
+/Oacute
+/Ocircumflex
+/Otilde
+/Odieresis
+/OE
+/Oslash
+/Ugrave
+/Uacute
+/Ucircumflex
+/Udieresis
+/Yacute
+/Thorn
+/Germandbls
+/agrave
+/aacute
+/acircumflex
+/atilde
+/adieresis
+/aring
+/ae
+/ccedilla
+/egrave
+/eacute
+/ecircumflex
+/edieresis
+/igrave
+/iacute
+/icircumflex
+/idieresis
+/eth
+/ntilde
+/ograve
+/oacute
+/ocircumflex
+/otilde
+/odieresis
+/oe
+/oslash
+/ugrave
+/uacute
+/ucircumflex
+/udieresis
+/yacute
+/thorn
+/germandbls
+] def
+
+%%EndProcSet
+%%BeginProcSet: texps.pro 0 0
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginProcSet: special.pro 0 0
+%!
+TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
+/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
+/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
+/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
+/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
+X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
+/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
+/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
+{userdict/md get type/dicttype eq{userdict begin md length 10 add md
+maxlength ge{/md md dup length 20 add dict copy def}if end md begin
+/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
+atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
+itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
+transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
+curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
+pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
+if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
+-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
+get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
+yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
+neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
+noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
+90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
+neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
+1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
+2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
+-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
+TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
+Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
+}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
+save N userdict maxlength dict begin/magscale true def normalscale
+currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
+/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
+psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
+psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
+TR/showpage{}N/erasepage{}N/setpagedevice{pop}N/copypage{}N/p 3 def
+@MacSetUp}N/doclip{psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll
+newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto
+closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N
+/@beginspecial{SDict begin/SpecialSave save N gsave normalscale
+currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}
+N/@setspecial{CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs
+neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate
+rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse
+scale llx neg lly neg TR}{rhiSeen{rhi ury lly sub div dup scale llx neg
+lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx
+ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N
+/setpagedevice{pop}N/copypage{}N newpath}N/@endspecial{count ocount sub{
+pop}repeat countdictstack dcount sub{end}repeat grestore SpecialSave
+restore end}N/@defspecial{SDict begin}N/@fedspecial{end}B/li{lineto}B
+/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1
+setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY
+moveto}N/ellipse{/endangle X/startangle X/yrad X/xrad X/savematrix
+matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc
+savematrix setmatrix}N end
+
+%%EndProcSet
+%%BeginProcSet: color.pro 0 0
+%!
+TeXDict begin/setcmykcolor where{pop}{/setcmykcolor{dup 10 eq{pop
+setrgbcolor}{1 sub 4 1 roll 3{3 index add neg dup 0 lt{pop 0}if 3 1 roll
+}repeat setrgbcolor pop}ifelse}B}ifelse/TeXcolorcmyk{setcmykcolor}def
+/TeXcolorrgb{setrgbcolor}def/TeXcolorgrey{setgray}def/TeXcolorgray{
+setgray}def/TeXcolorhsb{sethsbcolor}def/currentcmykcolor where{pop}{
+/currentcmykcolor{currentrgbcolor 10}B}ifelse/DC{exch dup userdict exch
+known{pop pop}{X}ifelse}B/GreenYellow{0.15 0 0.69 0 setcmykcolor}DC
+/Yellow{0 0 1 0 setcmykcolor}DC/Goldenrod{0 0.10 0.84 0 setcmykcolor}DC
+/Dandelion{0 0.29 0.84 0 setcmykcolor}DC/Apricot{0 0.32 0.52 0
+setcmykcolor}DC/Peach{0 0.50 0.70 0 setcmykcolor}DC/Melon{0 0.46 0.50 0
+setcmykcolor}DC/YellowOrange{0 0.42 1 0 setcmykcolor}DC/Orange{0 0.61
+0.87 0 setcmykcolor}DC/BurntOrange{0 0.51 1 0 setcmykcolor}DC
+/Bittersweet{0 0.75 1 0.24 setcmykcolor}DC/RedOrange{0 0.77 0.87 0
+setcmykcolor}DC/Mahogany{0 0.85 0.87 0.35 setcmykcolor}DC/Maroon{0 0.87
+0.68 0.32 setcmykcolor}DC/BrickRed{0 0.89 0.94 0.28 setcmykcolor}DC/Red{
+0 1 1 0 setcmykcolor}DC/OrangeRed{0 1 0.50 0 setcmykcolor}DC/RubineRed{
+0 1 0.13 0 setcmykcolor}DC/WildStrawberry{0 0.96 0.39 0 setcmykcolor}DC
+/Salmon{0 0.53 0.38 0 setcmykcolor}DC/CarnationPink{0 0.63 0 0
+setcmykcolor}DC/Magenta{0 1 0 0 setcmykcolor}DC/VioletRed{0 0.81 0 0
+setcmykcolor}DC/Rhodamine{0 0.82 0 0 setcmykcolor}DC/Mulberry{0.34 0.90
+0 0.02 setcmykcolor}DC/RedViolet{0.07 0.90 0 0.34 setcmykcolor}DC
+/Fuchsia{0.47 0.91 0 0.08 setcmykcolor}DC/Lavender{0 0.48 0 0
+setcmykcolor}DC/Thistle{0.12 0.59 0 0 setcmykcolor}DC/Orchid{0.32 0.64 0
+0 setcmykcolor}DC/DarkOrchid{0.40 0.80 0.20 0 setcmykcolor}DC/Purple{
+0.45 0.86 0 0 setcmykcolor}DC/Plum{0.50 1 0 0 setcmykcolor}DC/Violet{
+0.79 0.88 0 0 setcmykcolor}DC/RoyalPurple{0.75 0.90 0 0 setcmykcolor}DC
+/BlueViolet{0.86 0.91 0 0.04 setcmykcolor}DC/Periwinkle{0.57 0.55 0 0
+setcmykcolor}DC/CadetBlue{0.62 0.57 0.23 0 setcmykcolor}DC
+/CornflowerBlue{0.65 0.13 0 0 setcmykcolor}DC/MidnightBlue{0.98 0.13 0
+0.43 setcmykcolor}DC/NavyBlue{0.94 0.54 0 0 setcmykcolor}DC/RoyalBlue{1
+0.50 0 0 setcmykcolor}DC/Blue{1 1 0 0 setcmykcolor}DC/Cerulean{0.94 0.11
+0 0 setcmykcolor}DC/Cyan{1 0 0 0 setcmykcolor}DC/ProcessBlue{0.96 0 0 0
+setcmykcolor}DC/SkyBlue{0.62 0 0.12 0 setcmykcolor}DC/Turquoise{0.85 0
+0.20 0 setcmykcolor}DC/TealBlue{0.86 0 0.34 0.02 setcmykcolor}DC
+/Aquamarine{0.82 0 0.30 0 setcmykcolor}DC/BlueGreen{0.85 0 0.33 0
+setcmykcolor}DC/Emerald{1 0 0.50 0 setcmykcolor}DC/JungleGreen{0.99 0
+0.52 0 setcmykcolor}DC/SeaGreen{0.69 0 0.50 0 setcmykcolor}DC/Green{1 0
+1 0 setcmykcolor}DC/ForestGreen{0.91 0 0.88 0.12 setcmykcolor}DC
+/PineGreen{0.92 0 0.59 0.25 setcmykcolor}DC/LimeGreen{0.50 0 1 0
+setcmykcolor}DC/YellowGreen{0.44 0 0.74 0 setcmykcolor}DC/SpringGreen{
+0.26 0 0.76 0 setcmykcolor}DC/OliveGreen{0.64 0 0.95 0.40 setcmykcolor}
+DC/RawSienna{0 0.72 1 0.45 setcmykcolor}DC/Sepia{0 0.83 1 0.70
+setcmykcolor}DC/Brown{0 0.81 1 0.60 setcmykcolor}DC/Tan{0.14 0.42 0.56 0
+setcmykcolor}DC/Gray{0 0 0 0.50 setcmykcolor}DC/Black{0 0 0 1
+setcmykcolor}DC/White{0 0 0 0 setcmykcolor}DC end
+
+%%EndProcSet
+TeXDict begin @defspecial
+
+ systemdict /pdfmark known{userdict /?pdfmark systemdict /exec get
+put}{userdict /?pdfmark systemdict /pop get put userdict /pdfmark systemdict
+/cleartomark get put}ifelse
+
+ /DvipsToPDF{72.27 mul Resolution div} def/PDFToDvips{72.27 div Resolution
+mul} def/BPToDvips{72 div Resolution mul}def/BorderArrayPatch{[exch{dup
+dup type/integertype eq exch type/realtype eq or{BPToDvips}if}forall]}def/HyperBorder
+{1 PDFToDvips} def/H.V {pdf@hoff pdf@voff null} def/H.B {/Rect[pdf@llx
+pdf@lly pdf@urx pdf@ury]} def/H.S {currentpoint HyperBorder add /pdf@lly
+exch def dup DvipsToPDF 72 add /pdf@hoff exch def HyperBorder sub /pdf@llx
+exch def} def/H.L {2 sub dup/HyperBasePt exch def PDFToDvips /HyperBaseDvips
+exch def currentpoint HyperBaseDvips sub /pdf@ury exch def/pdf@urx
+exch def} def/H.A {H.L currentpoint exch pop vsize 72 sub exch DvipsToPDF
+HyperBasePt sub sub /pdf@voff exch def} def/H.R {currentpoint HyperBorder
+sub /pdf@ury exch def HyperBorder add /pdf@urx exch def currentpoint
+exch pop vsize 72 sub exch DvipsToPDF sub /pdf@voff exch def} def
+
+ /burl@stx null def /BU.S { /burl@stx null def } def /BU.SS { currentpoint
+/burl@lly exch def /burl@llx exch def burl@stx null ne {burl@endx burl@llx
+ne {BU.FL BU.S} if} if burl@stx null eq { burl@llx dup /burl@stx exch
+def /burl@endx exch def burl@lly dup /burl@boty exch def /burl@topy
+exch def } if burl@lly burl@boty gt {/burl@boty burl@lly def} if }
+def /BU.SE { currentpoint /burl@ury exch def dup /burl@urx exch def
+/burl@endx exch def burl@ury burl@topy lt {/burl@topy burl@ury def}
+if } def /BU.E { BU.FL } def /BU.FL { burl@stx null ne {BU.DF} if }
+def /BU.DF { BU.BB [ /H /I /Border [burl@border] /Color [burl@bordercolor]
+/Action << /Subtype /URI /URI BU.L >> /Subtype /Link BU.B /ANN pdfmark
+/burl@stx null def } def /BU.BB { burl@stx HyperBorder sub /burl@stx
+exch def burl@endx HyperBorder add /burl@endx exch def burl@boty HyperBorder
+add /burl@boty exch def burl@topy HyperBorder sub /burl@topy exch def
+} def /BU.B { /Rect[burl@stx burl@boty burl@endx burl@topy] } def /eop
+where { begin /@ldeopburl /eop load def /eop { SDict begin BU.FL end
+@ldeopburl } def end } { /eop { SDict begin BU.FL end } def } ifelse
+
+@fedspecial end
+%%BeginFont: LMRoman10-Regular
+%!PS-AdobeFont-1.0: LMRoman10-Regular 2.004
+%%CreationDate: 7th October 2009
+% Generated by MetaType1 (a MetaPost-based engine)
+% Copyright 2003--2009 by B. Jackowski and J.M. Nowacki (on behalf of TeX USERS GROUPS).
+% Supported by CSTUG, DANTE eV, GUST, GUTenberg, NTG, and TUG.
+% METATYPE1/Type 1 version by B. Jackowski & J. M. Nowacki
+% from GUST (http://www.gust.org.pl).
+% This work is released under the GUST Font License.
+% For the most recent version of this license see
+% This work has the LPPL maintenance status `maintained'.
+% The Current Maintainer of this work is Bogus\l{}aw Jackowski and Janusz M. Nowacki.
+% This work consists of the files listed in the MANIFEST-Latin-Modern.txt file.
+% ADL: 806 194 0
+%%EndComments
+FontDirectory/LMRoman10-Regular known{/LMRoman10-Regular findfont dup/UniqueID known{dup
+/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+17 dict begin
+/FontInfo 9 dict dup begin
+/version(2.004)readonly def
+/Notice(Copyright 2003--2009 by B. Jackowski and J.M. Nowacki (on behalf of TeX USERS GROUPS).)readonly def
+/FullName(LMRoman10-Regular)readonly def
+/FamilyName(LMRoman10)readonly def
+/Weight(Normal)readonly def
+/isFixedPitch false def
+/ItalicAngle 0 def
+/UnderlinePosition -146 def
+/UnderlineThickness 40 def
+end readonly def
+/FontName /LMRoman10-Regular def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/PaintType 0 def
+/FontType 1 def
+/StrokeWidth 0 def
+/FontMatrix[0.001 0 0 0.001 0 0]readonly def
+%/UniqueID 0 def
+/FontBBox{-430 -290 1417 1127}readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
+1B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
+B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
+4A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
+DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
+2AD360A28616CB4A0670C1BF13E4018CA53FFC8B28E49B3AF8134528F971DEDA
+55E9075B8973BD0B1C001D7F241CAA67472027935C0A16779AC34D17950388CF
+0E0191A473BE7581A249D043279E83EA19B511D1D8FA3933F37C594054DB8297
+45ECDBC2E8976B243A996D477A529B8667BB3FB7783D0B773B952A4520909BA1
+EB4AB2FA4D38CD9B2CF575F8E0FDB2E85A6D59CB0AFEE208F8B5D960088A941E
+6E9BEBBF2E02CBA386FDEE2F4A0A453A960D80C90142B34FE01BF72F67105E03
+114D181D6A3990035A36F1ACEF46E884A818302042894B42069DD5885B97B047
+D34FBF7245DEF708B5E500E71FACA6F55938C1C9E03601F110B9B96EB91E0E1C
+58D594B02A771F8480466FDC743843460B3AFF1867367D645017E2A7C96B0FBB
+A9189D995DAB0521ADF024FABC33682BDB8605155E5D1813E23B4A9890D852DB
+2AC72D7543ED8D34C8E29A88758EF0B5364C156A3D213BCD9060892C3754E0C8
+E5ECD8CD5A580EA0561ACA1E90AC5D7729DFA7B1CFCCC98DB829C1B2EA250F4E
+B54CDFB18B56D98AFCD392F4DA49FE9F9CFC94137C35FA857342908ECF4D0019
+6506644F2611FF4E67B09224177126E4E059D7C2A941A01BD875FEAD28864048
+1DDE56A671FBC3511A79E5EF3F153E265FD840474B66B830CA5A09455CA1AFBE
+B124FF3365AD824CDBE10A17B08E3A47282CE6140B0966D4EB82CB5B034DC6DC
+5D6CBE6E1C99160BB1F4A87545E4D6D3EC7E30BF52F8F79A877416F69BBB5EA4
+07530D50EAFE96BF6AC0F277A8A357761836E499F221A6DDE9AC0A03ADD0EF91
+31B26E4332321F4FD59C51B515530BEA1AB37479F31B9E6E94E5470A0BF30403
+FDB51DBE8C7D053D1B5FF78EA8CA01F3CE6E1E8E573F5EE8C282321B49B73D9D
+3E9CC4C3005DEB4CA3A2828B2D8BCDAC49F4AEFA7101055E20CD98B420454D0A
+2C7C4B3933BC81AC0FF01C1D51D262D6B85AD7B970750CD0D6F2500EDBAB25C3
+46F96A6028A1106D2DA63EA507C07F1ADDACFDC3CF4D1F9037F027E63B522C41
+BCC160FB1D794455CBED4C049ED67502630A8A1C2ED11A53852E7B9910D008B8
+DF64C3DA1E469128BF3B45D99837E560B852F87024C48C184E2BC4358D34EBE8
+48ACC9B93C575C363FAC585CA35C2C450B5929783DA0ACF374733D7447051366
+BA3065066563083DE0E1494B6433BC4BD86CBFF1A9034F40380C333A5F16A4F9
+9BA2C4BB3D31412356B9E978BADC3548EC4946749CDC981002C4414156DFE0D7
+83460C816ED040C9568CC2EFE4A607C3EB4A6C06AD50B3CB1C886ACB3D1022F7
+70E256CD75521A8C02071A25B0C96706BB7AE920C15804482D69A32FE000AF1E
+D8CB928BA33D61D0F17C1E7D2A1403C4ACB7D923E66F10354BDAECB0ADC7DC3F
+A7B24303B3C291B987C490B04B0CA0A969E41E3F04FA629E2B6649661FBF165F
+F099E2D5173413B3995A7DB9B4C56C828F8C614AD3607A91673A3DF62988DE97
+DA96C5C43CC63C14EF7C24C48C184E2BC4350D72B6956D0C2F549618A0061284
+E6AF01D8B9FAEE674122BA926D2DB941B0C26F6274027559A8B3843FCFFBC8C6
+E51250F22B812E47ED46E67410144A520F7F66B64A927F0A67BB50BF09591782
+F8A664335F67B9DDE36DBA793EC77E5D84F6E298C4F428617BADEE752997B940
+93316F759F1A0053B7E9268CF93B9763BA70C77A82B01C2B17479DFF58CA2C67
+01C4D3E39979022FEFF095DA482A4E99A4A3259B2FBC52122E7974849DD398C0
+44CB32F94F500BA9BFC908A2BAC4B3062E37B68DCA401224AD75DCA40F5946D9
+266E07CBF681164FEAF332C19BB64203E7291357E4C4F9A6725247F3ACB29005
+4C79132FBC49F5FDFCA8BE38549AE53F72B85A6F03B58AE0D30DCF02DECFD422
+DAB156ABDF73CBA7DE351875F5131518D2DB628C3C99D0EBAC0F0017D917875B
+D4F18169CFFB98AD6151A16BCAA3540A85AA395D5B94927C063B7A789EB1E6F3
+A07B777B22BE5EA7B6D8F1664CE0DD8F43CC580213BEB59D15D30B7292FD83B6
+E52EA4270D0D5D9C6112033C467CA867769AC53093BCE223CB286B1721B357D8
+D51AC9DE1E9043D7770D32C6E8EF9FF13E29DC064F3C70730B6B567A9AA1CD0C
+FB337558AA398E37BF984F934C66986C2EE9A510A314AD971D82FC1EE6868FE3
+D060DD7B5AA766C4DF53407517CF6F42243C234413756CA68A0F125A0E7C1E17
+E4E9F3C905DC814982B1A40503E899AAA09B2362DF13DE0E31E5E08B89B0E394
+1460CCB0AA4CE5F70F9D19F59A963E9F90F4A84685377B43F208A3F331979D1F
+51377E69B684C70E9F76F39FC77A46FBA5A77FC361C55F6D7C5ADF691D4C1638
+83BB2994826A94CC906E41B4251518F5F104AE5CD4A2FDD0DDF0A49EB8F32036
+94BD7EC9430C3C2F7970B696DA577C21452508DA6E9E32F903296B80F87B1797
+19D633875594913678A3833636F8B33B0C66ED837176BEE6E6A8F6BF1EF66105
+F277E5B6745FF4A5CB0EE90FA42E1529406562EFCA1E621ED2A65D66DFDB2098
+887BC845E63B067BC2A4FFE2D0208EDA333AA5F4CAB0ABD7E1CB78637494E68E
+34391E2542903355658BD278E67696111019DB87C73771A6CED0715EFF43475A
+0FD680DDA2CFAB8D802B28E97E3B1E097CB13153378D85500BB10C661AF17841
+FDBD5D61718DE52EB4F11723D1D646B9E9110E87700E6D1522A71B0D0018368E
+79712A5AB20318C6045977231D86C8BEB851B96CD7BF88F9A172949DC2969A27
+784051AB9E62CBD50ABE89F5DA433EA9D4D67FD60C7A551828813067EED8B44F
+8F9316E6E062F1DF68BCC50EAB2B6C8E7EC2B798E2E8BBB1AD5D775F54B78C79
+4B35A41FCAB99493DBECF6620AF09020F0544340C3B4C147A3CA6B939B4B19E8
+1AB5B2D968F0729A5A1D1EB41ABB67B9BA1735E4E0555B0ACE192B694582DBC0
+21CFE1217CF272748BB9CD72E80B52E247D95BAD5D9ACED37A7E9CDA86B3581F
+EA2C336C627BABC4737FC72F8F4F6BB7D73551EE33D7036243002C75ABD706FF
+6272EC8B127F512CD94B4F514F2DE812CF0A27F44E3AA88DE45F8F70D60AEE94
+B39756DD3301F4C4EB5F7A46D1EF564F9D4A077B55856BE8070C46525A7DDD5F
+F93B34767BA45CBA4B18ABA32A3E4DC1E0F3236A1106CD1CF46CF2748A3D67A4
+57945BE9186686583FA8B733579DE8AAE808C8916EB45BAA486A85DBC2F45566
+226D9EA08B48360A2C2119A60384F37D44F4096D8AE632FB2EBC0DDDFE6490E3
+D854243B2D272CF5C16F0AAD1815A417E0437145718C421391BC4E0BDBECE4A7
+FC58DCC2F00B5F262263EE95A66B7B588B417B20D3AE846ECF2693940F268C17
+45E0FB4E607854D32C6D52E83F24A890B95D6C169E9E7AB8A1ACCA1756D2D72F
+0D4A81042FCDF505FFC4FB38AECDEA912516F3828A9480D6179690438CD92FF2
+BFB06CA814AD933409C99883AA5D858ADC659C1BA0E3A080CB1E4463CB90DC8A
+841CD8A67977D90CEA876880C4118254A19147D1389963C41CFBAC11A51ED614
+E0C7FBC7335681207464ABF8C4ED5B859592A3376F58135BCFA5DE0696385BB0
+FFB6345B71555B7BADE49A8ACA8D973CC3DF7BED1F3B5D595DFEB596AF649E3C
+C9D18701E91F5A47FF6E933E21F0FB9FFB3221EA47B964FDCF13CCAB1353A21A
+0CE2631E8E588A4AFA85AB3502A3832F0FA6E4A9E942F3C6B70266EDA218C6D2
+606A4B7C2D112FB1E3B5437964E2431F7B614CD62017182AB7C7BCF37B79B1F6
+5339265C3BDC27CD99AC7D748CFD1DC2AE04CD5590CD3E0042091DA9CC585AF0
+DB968876792926E857CED60024172E360E4B169DA93627BF5BE4A89B8816D5ED
+80C3BB5B5A45B52A16879526DFA881D0B5EC317437135C50B27CEFD1F5022BE5
+B15E1D75D8A3950397E5EF6999E30CE159C111A6468D2DAB04B3ACAC61986BC3
+AF3401CE4FAA2ABE187EEF62A1F70DE1CA0418BA7012133257153F687ADDBEBE
+CDCE5D5144613798CBF687FC96944DB5C206999107D67FF7C8989C512DA066D6
+D6B8CBC71F9DA6B570B4451375B9EAEDEA1115846E0DE7A3B686AAD19F4E39A7
+3DC2E00310DB85AF8D9080EC153CFC0AF60E785B8B723C16F77F4F3568097B60
+E1B564F8EBFCC4E3F3D8112A7E8FF270331D2FB475491A51A87210248F9338A5
+8F8A83C0D8481C4B7FB4BD0946A0F62F2FA95D10FAA84DFFE90A240EF474ACBB
+9E6B044896D3DC2832BF258013E878EE3C5CC43D6AB4C81C1936C442CEDD2F6C
+DB3575B617296CDD6A514F2DBED85F14FEF3F00A0A3C2A83A328B249EBF2C31A
+EA9D19FABD50B54736FE13D6FFE686B1CFD0EE0B6B7F873F7E4A94CDC4F13B8E
+F85867862B8FFA7167A39E37833AFDB4BBAAB388CB87F0B73A502C34012F783B
+EE1DD3D04EB580E6D4BE162E2D45F7EF6BBEDD9A5A3A74BE4EB0759ADDD89E44
+9CD6AAC616784D91B39AD85200341B4B33127E9AD95910F7642FF192B1241525
+D1262B52C70DE1120705CA2197DCEE72A404199E546857DBBB84B62F0E5DDFBA
+B3258AABC24AE22C90AA37B1DA67BC83A83F169F626859F00E85979BE5B24381
+9BC3EAE9E2425C10CA412982FC6A2B7ED8669633E05B89ABD3332811E39DB955
+6E7C9C2A8E6DD1D0D5A8590FA66FE389609A47A92464C8B4B45DFF97719A22BF
+F5D31C9C6C0FF56F9B3DF1963735BB55978429DEC75D2A0E8B21B62BEF5EB66D
+79C82CEBC2C519EFAAB524A94577EF320491A3FA8CB2D730293FE9ADFC8A933B
+E0BC10053DFECF68261DC400897B7D28327E144D9CB0089C91D6A134411D948A
+A2F90ED6A01B7306C993D991D70B5EAAC7A639213EC0F82A1D7750F3F799A585
+5AA9D1DC181EE715CB577C4DFC25482A27A090A0715E76B238A94A5329C67932
+4059B942FBA2C6D3066808AAA990E81BE87FEA27BCD1382A83DC20215D1BA29E
+4200DD53397B02197B6FA86ABDCF97ACC1B898DC7DCA38485DDEBAF95388BB7F
+6588A5E347A760B51AD502DFED343F64C6CAC65D8218E75ECDA7292A0F2FBB4A
+643454F84888CA17948C9FB31CF86E555B4815AA6C81B114399CA1169BDC7F10
+4FEF092A2CC807FFFFC7383FDAC67933D28585B6D59163EDAE458E91E7EA641E
+A38F9F9AC61A41F2B4CCCA221C3A72AB7584D24400671CD39F2175378C945F31
+C26697A7ED159B5292769952925EC981049396532635B98C5018A15684F9BCC7
+9AD6DB7694B1DBA4107593EDBBEFF3B140B7CF51BD51B0990458B6C31767179A
+1B63E40EAE3829BF4CE47841CC9958B3379E0C407E5604911B96C587E65FD005
+8E0576018C746EBA88A44B23A3F56EBCD82E0702C4A95FEE93D8A53178218FF7
+4CCFA54911ACD0FF16FEF122729B6E985FA02F7CCBD6BCE95597FC3CE99538FB
+17A8238471AD59C3BD9BC4CEA7AFF4075A15327318F6A5962CB9AE8BA6D3F045
+E64B4E57F282A1DE2049B163A4288A69ED6EDE22A89902434ACE821D263606A3
+74B64A01E25C9C7B71D745FE9F7C891290A2643009F7C21A10C45E2BD3C3439F
+E1A8058C20F4C3ECD7CC083D70252227836371FF8387DFECCCE19FA7B3BA9FA1
+400F1A17B257DE3F0661DD7CD280C58A33C57BF883777AD1B0FFD5C8C14C34C3
+638979F4590D49978B1325CC654E70D7C81F03A2AD9E74B12C90F0BE89FEB4B8
+4CC0A3F6BE1B968E6F1750A2379DB3758BF397810D1370567A791629B4F9CDCA
+D4A6DC453244EC5932E79727ACF464295E75CFC635036CF27FFBA1DDC816801A
+DBE116E0E90E6199B6C6B3594E3B700621EFF790C6D0A2E6E82E6840E51B38C4
+579FB95337423C15A8486882520611165AAF3711B005AD3DFBE56FD60AB643DE
+608AA42A1678786D34C701AA0836863119C3FBAEDC3D0A32CFC097B05F9D90CC
+4B614AE7F58F3BF9C630BC15F2BB7C9625F4B09ADB0BCD6162C0BA1320D30AAD
+45EE4BDB168DBA8E27EB9DA43541D7D09EC9520161FE013B8ABE63165ABA1554
+5146ED2FCB21B0345A1CA0E4BC2591A87D0CE5AEDA30DA4F11EEEA1031376182
+EF54B78FA2E8AA6A9433272C23534CF0E8DE3B2E3D413751D6316C41F695807F
+3BC8A261F1C47C4E740A606A97D5EE4608A524C4F1A641735601161669B687EB
+8F76B9ABADF9D24B2EB524C6AABD7EFB03CF1B8F6668C8B23694C916BF9A6BDA
+A24DE24D6CD65831B8E50C195D028F2DD9BA757902C2B35C13487F0BED5FDC37
+8F9CA52C1643CEAD5F98337B73527537B8FA58F86F01329F1C4F14040FAC9792
+851F1CC40481634C777018C2E5F8ECF61328625A631D4636B2687B40395531AE
+88840CAA74199E48E9FFCAA2C6A2BD03A17B76FAAE9CB0493E6294A9E3D78E70
+3FF2732D0D1797B70A52A1BE26E3051FE2211ED58221883665C31B5361DD832C
+513510C5F90752F44DBF4736328A6C3A12420D7323D134784C686EBA666E15F4
+78D542A4724BC1E122D7DE13083516551E7BDF1BFBB7DCA007DBB44F3C4C41FD
+BBFC530D7798851581D0812AFF6F4C8AFE9F42F44BA1841F3AC128FE6CE93C05
+1E13CE2DFE658B0A72CFB65D719821DF82B89E2DD0885CA956529EA49D7B9133
+7D1C028A665FFFB23654B08776938DFC3DCEEFBBAC6F7EDCD010DB67630CA95C
+BD688B57D54C27B00C6A7067BAD1BF473137EE9A79EC3F588762C66D9860B6D4
+FA7E3EE93321E82E96046449A558A88D426B6C046E9A088FA25C5A7D0E46716D
+81039491DB446916FA5F10B5FF1AE7AC47CBA274592C953BD5A9CBC996C9AE76
+5B71717C60CF979FD06C0E2DC5B99D42C49601D06164CF75F70F6E3AF3B31609
+AC2AF79ABC77A6717A1AECF7A81906803F86D7FE8BC6D819708103BB963F6F0B
+DA611B948CBECB5EFA2B291DA84FC40DFB85321175A3684F32D311455D14F6DA
+D759BD39211540C0297FC1BD9FB9D2B58A91DEE10E7F6A0635F4D60C3D5A5D5A
+A54D4566C36A1DE47827C4384E996D072E87FBEF1A4EF1FE73D48B3ED3EE3499
+8AFA73811F0D3764780499D425F0E19E39718217D80D4D8B9D494D9E203D158F
+B6C7637B9996E2CD033AA4E4A7DFAE20ABDE997CE19D34AAAE2E6CB30732E502
+C92D35A0618E0A1BE754949F6174DA69822968706EB94D1720FB2879E596D3A7
+EF942AC32C93E8D7CBEDD8B5CD37443C40F8CECF61496F87967FEF934783E30F
+224E6CD4E1AFA9E60E7D5DF243A1FB709EB59718AA5429ED39CDE4F9CD1F9283
+7B1EDAC16B811C28AF2BEBA473AB452018BAE8ECD5B2A3593234E5EF06B6756F
+2281E0400F776034AA7370C867BDF8F8CBE63E3506F5C42C194788D20A71C7AB
+8A5E0EF0CFB34688BCA5CD32D55AA3E61DCAE5E57A9D3AD3DED4F1EB821AE5ED
+C955695970C7A1BAF6614606243C6256300F76B13E2338CDFCE1F3CB0E7863E7
+9AA792B335CB8D72978536465393A7DEB7DA08B3012A99FB2FC7F6FF7AE5716D
+93FA028DF04128F86348FB9A511FC9C5F2A4948AB8E3D65FB8D395DBC847CFC3
+AC4C36967A941825BEAB6AE19FBD2EFE727F36708ECD6D4CA39743D90725B633
+A0AB66791DFFB4FF1570574EAC7E17C772540440EA91FE9F951EDF7B8CA9B4FF
+039FE7704B8D86E980962317F542C11DA249BA44E0D0D3F6724561ACB8D1BB8C
+C89389CE95BFAA2284F02BD11FDE0E5BA107C68B49F80BC01FE2995CB415F1EC
+1B57DDF194B61D4473594BC46DCA84D668564C86ADF67D4754AAE8B5021D9EB1
+2338ADB319A937E9AA44ECB7649E3347035449BCD936328FEDB5C4A337A0AADE
+BEA9D1A4C30F51E9B375D24D089EEF4FE4DB3B91A97827D2AF45C8379364325D
+D8DC1AE11DD1E9A881708298C154CA1CBC5A2347AC28E960123A04365E01A049
+0FB3CC3086401733F50F636A4C7426584812DB1B205A2BD31BC49F3F6D36A5F9
+79FCF84EDC4C4D95FAC2A87D7BA88D58E2EDD30493564B38F53F50A4B25DC768
+AD975A9DCFB0A4BE6947FC780F2D4ABE4714DC4CA1197F5D4EF9391026D75CE7
+A11CA281E861BB0E2F6D917A8C9416FE9F85C938662C95D21E3C1AD3600CFE96
+CA34669E8020FB501C223F493D0FA587209565FAEEC1CEE45AFA1F1C691B9F6A
+82EC74B3996022FD4532F533EB63B3D043797EDC00F6DF91C9A02958EA01F55F
+00D575182E0D693391DEA7CB26D4A418E48A2989167B7DCE251DA099A2B2F592
+AAFA87A5D2351E00F3470C278AC43DEB3772671D5A020E9A7811DD9012B45CF0
+DF0644B2E66039C8109064F1B79385F1F09F222B545B1E00A91B39D3337C67CA
+2A599F1F4BA039BBB26179F2A72599892F0CEBEFE8DDD98B55CACEA45D4046B0
+46D2BD09D8972E014EE0030656C55146644AB4081DD7906687B7E22B39FD0D42
+52A18ADD5626450A2914B9892E0147A245EE0BED473D485AB9858152E3FA121F
+9BDD04B7EA8A00B2A245EB7685488691EF21286FD15A93FF6A0468C6D06CC08E
+36EFDA76E57E0A60E1ED9EFD4BA27631BB1FCFAC57659DB0F25B3F1098D001D6
+7BABD8AC9E34D9D40FD4B5ADCAC8484B378AD48CDFB645FF9DCE1B9456A8F32C
+F9F8ECF3AC649FD0A0C09F19E9C0302071E598DDE8D62114030EB580E8B7B48E
+CA10C3B9FD2498D84BAC4D649597EBCFE7DA6DEB238A87FDC41A647D79A3E56C
+4B5AB27930AE3392E4D5B7DF63406467FC8E6A63DE565844A055D76B779C8609
+E85E4BCFE84319532B3AC9D62BD413CC130A5364EF1F6F3A8F40FC28A8F80062
+CD6C9CA9EA841C25782D7534C5486448FC86B1CD00AC242FB0ED93447AFAFDE1
+4EE8DC4F4D6AA70536BD8E66FEAAA8CE3B4BEABF5450D66D3003483BB525E726
+24E6CDD62EB5BBD375B908144FD6A49D62B4AA487C72F456899AB0902462A452
+FC4FB95130181253E90EEDE1268161B9A03DDFEF4110456758B49C4B75E97026
+A70A7D06D47649CBEAE4DE9FCBBD8F6DA5C9DCF1E682A24EE12B834A6D01EAA7
+B7D7102CFA11FECE107BBD8ADE967101D476F63193BB25A9BF2F4841144E5B06
+E3583F5C997211E5081EBB453FB0D89232567FEF3D544A8F9B896303A47E29FB
+09B3F2248934502D0364D400AAC31575417A295DA0B1789F738A6ED721F20116
+6F975A39E6DD50A266D0935A38079AA7033BDA2A7CC21BA34994E0C3A0CA9068
+3DEF984D2F0CDAE87B801C0C536C101AA0D77A3B65651CDF745B150A22A0FA95
+05D9A09C8FD62172610A719CD4E8F67603C4E5E9DC24349F29614784C3339DBF
+4C4D4D9524310C3E12D61B75EBF89FD2010C13D41324F365EDBEE47F280A5ED2
+A5165A9A2EBC4A7516246D99C18A0A61F65D32B60456344BDB08C929F9453553
+452C97E016C26B55893F2D2098D94298EEBD3E93E848FDEB52363762FD7E6B45
+3AB36E6E325AEDAC9D82657F8ED07C3F4BAB14F04F84FF171362B3551FF7356C
+84CF0F2434A53A3873EF60F407CA937D4D90887795B84C8A54C899C531EFCDD5
+E8F4304327B11C6AD9295E00BDAF29369F62CB781E07F75A30CFD72807F18859
+2F0A82200400C10C6DFF085FD50CD7AAC72A99F351D824F86D33CC89BD70DD41
+F5E2414906C86EAB1DF73EEC1E8AFA68C7E230DAD77D995F5615DE0DA8F40992
+ED9BCE277024155EE3A67C4311F57D2F983D6B19A9B435B32E268C5C50DA95EF
+3F0F921E54FE0F2EBBB1972248F0E4BB8AE3948A408FAA0CB608FB551AC48207
+62C25577BE27D8FDBE6424EE94CA99A97DD2A7A9362E8EDD114145042751E6A5
+DAFD97118BE5B8681B248F0CE3D77AEF339FB455F3817CF7182D1C2D452F250D
+FC5608982CE8CFA119B586A83E8FEA614BF10DC8D2140B854F2E7C3CCABAAE3D
+2A80837BF7F8C88090B5C75BD053588563850206DAEFE33E4C6725EEDDFA70FD
+5DF78932BA7924543317680052CED9038CEFD1B642973E31253DAD08488B1C71
+AA6F08A5FE3F6222ADB66F0401E33DFD17F6080B00A9B3BB548FD2D8337553B1
+F01137667331B98B6E645E4CAF177E39995BF7AFCB57856350661189F7EB8082
+ABD4364A7B1630CA0BD029D0CD9175762CB58143266F22BF8D0512F7C77FA590
+13B731670B06E01630670DC48DEB43518B241CFF20023158FA3213ECF7D1A49B
+E7AD6D6BAACE6C3E98644BEC821046C9246699909AC060DCC4606454904FB9E7
+BC9FCBF739E57645355991B4511E39D8B71F1B8622A7A5D19975D41ADEFC852D
+2E598734CDCCCFD8C05DDC3040E38DF0B9608179C8BF28994732BCC57D928BC8
+83B8E7606DE2F7128954373F9718877DA7599DE0AFF6ABB520C27D7186077CE7
+67994941E9A5D75A8FBBEDA2F3FDF20CF337C7E72EADA68F6A0DDC1BF80268E5
+088BDBE5E056BBDB0F1BFEC6663C275934BF33671BD55C838F4ABD354B2B3DDE
+8CBB6FB74CEBCFFD03DA113B0397D52763EB0358D32C0912CBF14A1982227AB2
+14371C060C9383278C825595196DB28B1A5318E868D3EFBB90D58EEFD17FB2A3
+E1910BD6004EAB05E713C3C62B0853381B561B1DF0A772DFD5D1048DC87D9F8B
+BF3A28847AFE8A99CC319CC0C31760E7B2BD1AB594E30D797581F5A0E81AB0F7
+ADA196F2F7001A3D0E8A24476CEB3AF69E875DE4F79039F09792A2B6E296CE4A
+007648C0CE655612567DA35A9C3D178828BB42507B524B622F10AC8781B19CE8
+AA2759D809D76A28F8E732D208E54844EC9B612458EFC5CF430FF322B870CED5
+2E42690F98083FC259BB194F4DB7EAD5804EEC91B7197B98C9CDF8D319208C19
+E655EBEB21109414C1615EBD061E219BC5C5BD8D317087226B2FDF7D9520909D
+5589C52B018E46EBE636B6214175D6C3850D944E43E0BE6E4DD3C751E3FD6AA8
+BB509B5085445A66B6A58DBBDAB5EE420B6D136FDC941CE819C6D2BD022A09A8
+E951FC4F6A4CDF352FDFD48E76C5737253FB5D2AE26F681D5370A3F98510D85C
+DB54556BC6C7FF68FBD045C771820686C412BFC78C427E8E051B99E95D205AD9
+D4EFC079314D208363013D8E09405D069A5E6BCE653FBDE9A895EE1224500D4E
+89F4CD31A93C312EA467473043C6D187DE8A6A3C971A03327FEC53F1F4391328
+2D7DD34B9613E47E2507EDD79BF25B181AD308D29C23074544C3C2DE35DE090F
+1E6616D745D03C080D30E00F6F434FDFCD6DB57706DA244B8DFDC8661514CDE0
+29EAA738F71105E8A3010266862CF39FBBA573AADD91993E707C36F369654F6E
+978CB8E88E1DDFB252FF9ED5F0D2EBB74F9C89A4DB9FFD25C55A4F377E53B352
+830FA336B8CDA184121EF64D57F39DA7E5CA0A68D62BF6FC705468B2FE766795
+4B34C69C09F6B2A5FD58037D23055702D827942BBDAB0A2F50FD97666B5D8929
+A96E6D27DD8B231EE59BCA64DAF1EFD40AF797F32DC9655692C15AC45C83A6E9
+E8079853BC21C88A8E8AD88833808160A84F3F9F2C4BF5FF43DFA0932B65C1FF
+7776FC2AD3CC8496259C1EAD651B01ED4C112B8E1D0991D0294BB9A13B7E9A88
+322F5314B56F8E0190FD4FA2A0A6266B9A9511819D1F2CAC4DAAF3214DC47D57
+754E55CE6588CD0FDD9D151FAA4634D7CAFB950DF5FD1CFDF348B8A1F0837992
+2A63779BF0C85B224108ED3708C50B070833B9DD6E94F1A57DBA88B65EE0DCF0
+830C02BEA2CAE21DFAAFB537D8D9F21CAE9970EA77FD4B311D6C3705C2C7FA6F
+07F63D81F5C0FE93F08C5B690EDF00F3FE36C9CAA4C56E41279AC673BC00B2AF
+ABE69FF4B9B275C6F1CBEA80629C8B10C5758D1EC4DF4956D533E0A0670D60CB
+D73D1E1B9865CD24370A85275A7DA9E0E1336F13F8526C6BBFF2B1DB7D377F39
+6DC6F6110A42D0F70DABBE7DA6F9BA6173277A7D63DD47BD4F4E79F0740EEB96
+9B8B374E4975E93D6CC7892552A9EDDE88EC7BAAF00545A2E2020E33CE29175A
+0E7D978742CEE7D5CE5A41AD7F4A2230EF20EC7F9E54E92E75E48291ABB565C1
+F8644CD5D9F0197C792926E857CED60024172E360E4B169DA93627B56C489129
+5C531C39169D02359BF7628F4CA71278FA389756FBAD53C403EC4BCD0B75DF80
+08633BCACB1FF8C13AF834996E87AE9B53C0B8009CCFE62C17E001C966343418
+DC0FE5F0495F54931E74E8794276F856200CAA4510D460128B422B6C3FE9EE33
+9CFBAB2C866D8E212928169BE9BEDB12DFECC33451DD7E052CF00FDC0A854E02
+406EC8D807EBDEFBB74E9894BF0EC793699F0E682639B1B41048F325F95AB5F5
+B11C33DADCA31A2CD474FB45D9E93FB4E3D4A824349A563D628BC5B81D682AB6
+4F08DF66F749B1803E3C1EF42D935EFB4AEBC656854ADB4AEA878B757A68BFC5
+3ADF8F88D7F4844A8FA4414EF33942C8DDA7C7C36002FF4DBE9029A1E79BD5F1
+65EDCCF408D0D1608B7033F0395339E53E260D76BB4BA02B72FA2A60F93DE35F
+B61FDFA5A4C78E426D6F68DFE42F76B00689AE9526C39853101B9461F4C1862A
+4534F300477E33CE830DEC524749A6C5C0F20571C577ED03D63028C0A9CCB910
+BB59940BAC40E626D5E1C7A474BA19F3AFC8DAB46E47A3E91301863DA4F885FE
+0CF685B6724744DD939F03D40585C0AB2F5ACE792F05368499B19687E504C4A6
+611C750B87D2A920F3A7345EF355E8BF2AC5122174ABAAF89F14D3B913E320F9
+F732DF9D07CDD357005BC5FA657327D41340F9D2987CF9462B74259F19F9A268
+8B456DCFF82529C7CE1504213EBD9FDAE57CD482A24A50DCF54CE999BCE6425C
+6A0BE4F2A54569A59D638F40AC88082421D6EE28D15083E41EDC53EE7F396692
+FE52B93E33C87D3DA3F5DB311E5672052E05C3A5CCB847F119A7D98D00CEBF27
+30D812FDDDD016B803C38B892380B527B462508AB5353B6428ABB42BBE9C1F6C
+104A56F6F097412BCB80AA7307A1C978F414458F9A7EC07EB5F23823EA401C06
+D3D5E81C497121E89D672888605828AE138E237D67F4E6D9031F874AC47BEB4E
+84870290E8B30944DA29B54CD2EC33F618B8CA36FCDA32FDC097B1935F5A07D4
+02D14F972D7E215A6942623456E577D8AC3D2D8C5450771F19B59A2760C52C87
+C36694BE5257D9DAA43CCF04187CA5BDC8EF1246B62339A063C5D408C56020A0
+C4C52CCB460E7D37F4F3FAB67FF5C6BF23015225809F377D80FCCAF634AE7A1D
+21B652818AABE247C5D56B75399BA25DC06AA5E5CDF0DB7CF70534F620EE513E
+A8403894775B2DF1F871924CE2C0479EA8C8C337504EF1D71C4BC9EFA3BEE0D6
+3E0DC4E6F253A60B2B187AAD8FC51219E393C3F3334854C5D7495678DE754AF0
+AED1ECBC76A385CEC705A2EB89D7F32FBD60C08B86A3021B0CDC0B407F725096
+DEC84C574452605A8E2D4D83EFDB8229FBB5FAD6BC8BEDDD96595D60F3C71202
+EFBB2393DD45B978ACC96226775B037B920804532521E7EDE46962B649E80C67
+BA35C6FAFBFD9818C21E96827534175F5304428ED37AF944D326EDDB80820D55
+0FBC010FB410689BD4AF92BA5D627FA697E110BC240CD8069D8039DBED8BBF9C
+76C921024B55FC6D5DB5BCCCF77226C214AB72F623651E77725BFCAB36FEC044
+A22874D19630E3FFEF0393A6BBD801CA0B0320DD3970FC1804D241E14CED521C
+D2BFFF553A539F05BFD3125B9A52934AC46E268D28E8B6FB0433BCD7424BCAD8
+24AD77D8837021895B04400D540B1A42B6D057F6EC11DC7BD2F47472592808C5
+F4357D292335BF6663088E4A13FF65FB1A4A5E6C8CF97392CC410505B03C28B5
+A0D0B0C052CD7679FFFF591DD2E4B65B1BD866436AA7E2D2C09DDEBD95B89FEE
+748C22D04028A12064034A7290750EBC897F11987CE12AC4C09820CFE12B6629
+1A897CD411560247B4D041902FEA91165041696C183D62872AA2923D802D9427
+8A2835C91B8E929599A0F81B43C52F5C88CA3242F20984B44BB4BFA718783CA8
+1177E26CF828FED0D16B16987D62B6EED163A7462EFA11B131B70FD5509D40C2
+02ACF1153F62C77072F4618CDC774CAC643C8A0519441C6043AFE063AE129245
+3F5050DEA499563C86523C08C94F417CA514CB0A60DEF84924B838AE79C66892
+756972251698C73C6006B18CEE5DD843B5FE4096F520222A20FE01B307905002
+20E46FF64199038C006B74DD8D060CE5FE0B0EAC5A0065F244704AE2B065259E
+E821CAAD682B251DF5679E7DBA6DB828E48ECA9018B12EA9801A93F1D2EA5B38
+FAA200D1D0B9A91F0F83DAD1DFED8E8E569D3D3DC4E19ED8BB7B63CB86D66631
+89688C6E5B123733610842E1E7E858EC1F4619F671605FACD5B6AF9A887A21D5
+935681F3B59F4353D9020ADF5271790BBBB6BA3D4E22B144A961EE0B8DCC3F56
+219CF698FFD3BC5E89C0FD5D7B7E401AB82D0B85C4629DCDCC78451DC4504267
+25D35E38F856777BF90A75073302BBE80809A0E934D63F193DFB746D2899D07E
+3F8CE1918548FE197A0F6E54EEF9B3879A404F1019BEEEF9DACF5F60C8D9DB5D
+FC8201ABE06DAADAE39D1EC954B803C19DD4F5B58C4D2012E04E630A683CC5E3
+B553E8D513719B4467FF2EBB5C7489358364CC0A9B3EE1860D5F11A241C4889F
+C8C0F634CABABB7EEC7805C060D65C25FEA1A5980EC3B8FDD9F568AF98704D01
+CAF403BB449F19BE418B41F69BC01816313959F547D42805E2042E248A874E81
+4B3D78F46AF4F001A3885FB94815E33196056BC687F886C067FC70DE0B05B110
+93AFCD07D26BBFC6568B8E12707DBA8BC1F786DCCB60523F143A1574FC22CEDB
+DF325F5F3D4E773B8D621B2368D99F9AAC581DC1F040BAF224FB5C0FA52C0B89
+FD7BC847B052C16E049D2E6645239263D0B6E6419174661473016B33B5418F21
+0BACAA8CCC7D60AF299F7A6109C5F714CA50F1B85F57673C6CE09EFC4E229D46
+3548AB417B1ADC0C2D9D95F7E82180B767328BFC532CCF26068F66BE3B79B89D
+E7E561195C6853D22BF99D85992FEAD42182B1A6C6754F6487EE04ACD8E91BF3
+42F4087D9BC3F7E7C5F35440E94C8261317E023D1EE84E77FA87202078297C3E
+BE04470D136433372FB330C9251103E56744B6F4BF9007CD86D2AA045ED8F5B2
+2144D82C90F5D0F35955E9F70669113065923D7A6457012D7D59BAE248FB6A6F
+0BA4AFF79E9ADC4FEC9D11B0CB1EE425FA28690CE3904813B0A01DF8F876EDCC
+4F384055FD37C5757267BEB106FA04FC210E9E3DD63F00738AFFF0F2903EFF7F
+87C2E66069D56F6579693CB65053BF56062972DE5B5030A53582DAD4BDE5254C
+4660274462334AF71A1E8789DACF6EDCDE5659639825AC78602AD07851D8FE9B
+CA921C410EDC6802C21B5561DBC1B19BFA4431E2C5647895A7F7469F71248E27
+1FE38DB3B824A78B6761B22CE4DA9F12658E1B06DCA548D41AC58850911D4D3A
+68BFC499BC89A4DA1DB50DABC0C0F1EC4248CFF24B78C4B4DEABC1D3C21B126F
+607D31F950B24B2C9042139D5E7DD43E07C180D36EC0611DB7DFD41217DF50CF
+B8585136029084CD63E7526A427499AFAF4ACD6C6A475373979424F0107B66BC
+BFC852454446457A97395E80B0B978A58EDDD9BD34947AF82D8D10AB50C26895
+953E493CD5E3519BA7E212220D0EF7CB139D0745C61011010407B5F2CAE24000
+9B69B6A167BC387D06AE5D07A38877924D5DB468558E60F3C8EE3A7AE59C665C
+D642F51EF1EBA346173B377573E9760C57EAD7CB37952D1A0E9F744FBE8041D1
+C10CD8EC38910D05E5AAB0AC7F4AB9CE3BAE1E96309D95CCE788036B4867F90D
+40C1E4FF7460399F1F08F98F0D334F90367DD0CFAA01DAB7A5752742E65D77FE
+A9809360E599A5E23CC2A3BB44438C741B79546B6FB5CAC002FC158F4177AEF0
+B44D466103BDAE0D6DF3697FF03EFB856B18697134143D76C8B2184A53DC34FB
+9699097483C5376A2C3719CB2FB7C4B1311ADB97C07BA24772579B344930B4AA
+C76A132C32DCBECD227134E7F747AEFDC1000E48A784CED2BEE9375D7DDBDCA3
+C894A1527C8EC06EF8DD24262D80A1DDA1396947FBE8692B77E9A6F482AC07C7
+DC28850415D9AFC1C8A868801B990CE2D26FE851E31ADAE0B467F3CDF0CDE122
+00B62FD553359823B345B2DB3B3C57F7748ECBE844CF256D98ED4C5C0A2096FA
+FCE1449F0E80BDCBCFCF477A2C30A72EC227B20F7BD6C120C124BAEF8489E22A
+13C30552196E990462045B4D171C89D8AB26B7ECBFF4EBCB68A2D325F02C783D
+0F080BB9427C07939EB5649DED6075ECFF58FBACC2E7A431527D3338B3E89A18
+C5A3DBF575BD2DCEBCE2997C954550A792BFB5004B54A8631F85FF8DEF675A72
+FA68478593397942ED0508663E38B7FF05556CDD7FAF7FDB9EE4E2D619D2EA74
+D6613E87DEE38A2A9504D47D4E0E4C23BC4F31A4AA99AC8B08E2C1B671986592
+AE7310903640089393FCA362BC59A995FE5430B39CB5EC916B7730545539CB2A
+58832AA92DA5F34F197E3EFBF17115FEA4973B33A45B38CD6A223B219D9978D3
+B9FA37E805892E6D589A52D66CD401D3BE7B698CB264399D901F1DF581877B2A
+9A6426F6010B1050C5F50CA931A8AED090264B7AE4A7099844282972DDAB121A
+040D3D7CC97870F88C3CAE8386E9FA937A0093127A715FA8CBD9B0CC8D4C2070
+A978C4DA25A1CCECAD509C077C58F78173615C962CE32DCECA53608173E9DC5D
+8292AAE110DCA268598438992904D307A292EF2BE0378196A107DAD0FB7702DD
+52E149617809FB8B2F24322AB310F16A60F884A5889C33E2DDD5D3DC32A37C5B
+D00DD016072EEEA098A86BA3776734053FC7DBF813A96D33773AACD4000D7114
+0AE606AC156E5CE91FBD5F44F0E247D957956045B1613113FD9B6D3C9D2C4B70
+6A00CC6FC0C6FDC412D1B1E0A59F386F1741ABB6BDCA12EBFFD4384FC57CB468
+9FC0FF8FAC44B39E0F40D59D152BB1F5E716D30A5646F6E4A7190AF94148B6FB
+00A5F0328A6CD7A8669E539995283046A4A6DC6D9AF57EA283EE09BBD61FC4AF
+42608C6E01E2E2A3CAEB9C52B1E16C7FCFA694BE8BB2E92544EA213F9B072C85
+22639BD02BF782F79CD875F2D2745418BEFCB27ABD9DF99EED9AABA70EBC005B
+7E807A854FD70F209AFEC73588593FD61E5A0DC97EA2E4AA2D6C07BC2970A2A6
+11750F165CB93993472033D4EECB11AE61D7EA73EC82F137F5D721EBE79A621F
+F37033CA412EE05A459953ADB573EFAEEA5D8C588DE556745DA3E386BBD02540
+C87F3F7AB9BB690B3F1F8D5D92B0125D3D3408D17A9F943BC6955BE9ED8D0F03
+3FB488ECF0ADD93E7E4BF059F3F0CFFCB7894DD565CCF14EAE6264E06D391FEA
+E0D8F226723823EC950F683A6BFB55D22DFB161E1D6B6DB05A1262FC7E2E1041
+43923BF639CC3241D6FC539FA7677E9DC16D93CA35EB458CAD1AB52FE22BB8EC
+A12177C0621857E66D4FDEDBF9258EF212E5C281463B9D81A24C63292BD56F1F
+25312B41B125B4A46DA4550DB20C261EFD0C35778E3BB1B1EDE4A453F3188709
+A85504074B8243F84B182070AA3A421603ECC1623D32353CD7684A1F437CB3CF
+D4E356064154DC618D0031D66724E959D8F9F2B72AA0023E80872307E08BDEE0
+3F6F7368F422D97EAF9CD25120B0F2CD2815C6A4C22518A5D3953256B49BCB1E
+83AC137591B5122F0BCE995D9D4EE4860BAA23C9B1B2C56A8FD9FD1DC9F621C1
+57FC555B4D973E24040DC0817A30CB9800A890813A2F36AA7254E72150CE745B
+2E8206D57725D1051C7E8344B56F83FBE176C468E63CDB4B7433D52A8CA1EBC4
+E87387ACE2F4D31C0D4E1EFED6B3C9892DF4A062BEA11998D025B544A987BAA1
+17DA47CD73F6589DA9180169A94C445DB7A56C39CDAB0ACAD8A3F6E7D29AB122
+8A867A6E1EF0E9C6F899B491DC15C651C5CDA311CCA88C2CD5D6A973C98D8813
+06BAA479866E9BF7EA521607C9807ABD8B5F2A41D9D60E8E244B19CB13DD58D0
+2216A81D710442253365225052ECAC84946C1F08E02E3209022918E3011E2CF8
+76AD6F2CAAF5B55DA05E957A0BE481889125A9F918B0D589B3F75131F74C1EB0
+2F38BDE00115A21706BC3AE8F29C792E455B4C99016E04B4623EDD9332FD97D0
+3F0162CC8BDB0FF0E1C66EDBDF4FC7DE2392905875FC28D07872F48FED69C45D
+EB92E0192ACE29AD10E1EA3439C812010BC15B234FBC8D837D072CEE580FA9A7
+41026FD76EF7A00B6780E7BFAEBAA6412B6ABAE22BC84F3B2F41285EAB4720FB
+C7B133ED8119F306CC5F2623BFDAF5600168775DF39AD09C83F428992270E103
+9CAEE78B2D136545062399E91360CED7EE928D24ADD7FF8D9918C339A8E8B413
+8360A0DD4999323D8B4FF8129A8EEC3900A00CCB026E694F7EF56933B7194FD9
+F3E4EAF4D145E30BD9AF179FD6BFBAE48004033A4C316ABB86A95F8FBDEF27B9
+FC1AD3215A03D6C3C61B924612C160DDD5172D98DC5DDFA80D9456928291796D
+97AD9CD132894AB79CEDF9AFBEF0323B34ECE54A1BC5E7269F5317D031A400EE
+8C4AD035FFABC5957CEA26ACFEF57ACC243EC74C5DAC762566AC995705012873
+B96E9DEF3EAEC6D5B9A045F9280D79AC9E0CAADBADD2E056258AA295803C6007
+0F8E89217F14F9570108AF03E93373736FF863282261A86067AD7E76C12FFF28
+145F3F0029A07BA8C9297BF8B0B016EDCAF80B972ADF0814F5DB640CFDD8221C
+0434208142C0B9108FBF43DF70F0ABF9A7691A4F7A75CAA5CBA0CFA815C79669
+AFB0BB1A69877EC2E790D0E6C9233DF8DDFADD039C07D7D8FE3BD2D72E438409
+C48B746741632E040D458B596AA9B4EE5DFD07ACFFB18E8DFDE785893B5EFD60
+19A15F9EB96B38CBE9D36EB79E5D39574DE9428C47AE870F785F1F7CF09A0461
+15D45493F7A67587727B64D2D56357FAE158C5F5DFCA81222542CE81F2CD52B4
+7A8CDE6B0E47DFAA0539291B9B8004F29F21B2A9D8EA7F0DAD23E33DB5F74420
+2CA584A293F65B0EB3258C71CBFE3F8C66700B0F05CB4E8623072F9884ED79A7
+5221D2A3772CBC14E6504A1371463674793EB4F5D24B8734863351AE6D01C993
+D991D70B5EAAC7A639213EC0F82A1D7750F7C804D9A3A0D376856B2036634A72
+710FC8DA959A662CD4557B6C89BBCCE6C448AC5C61D17285F9E2E321C9681F1A
+C50E1A0D3251BA7D3E82FBC4218BFCB1270A28513D0730F7AEC84C4D7EE11BFC
+90EAC5CF755173A99C31B9DD9689DD84408EEC4830380A6BD3E210DCFC74F2D6
+A3B75CFFF40E7A9265B6B00FC75D50975BDB44B28010AFBE000CE1B55B2F5B03
+5ED70817E8C999AEF82993A2DBEEE7504AA1542D7B23D36C6BAA8338AC2D98DE
+543C1A7093BB4DA538B31952E14D6E5B4077B438642E42FB2D30154E51F564C4
+64428ED2D7308D3329788FAF24F2C03698CC81534EE437E8CC706BA4C3D1F8C1
+0556655906B164F7BD728B86D3BBE1E37BC2104E797474023615C5AA1E096271
+86E9F40DF393CAF0F0AA8A81AB02413E75A9F2241D1D17784CAC36FFACA451C0
+2169A1AAE7835D06F6683C5AD462F825F1D3B0B0E9797836CA0B1D5E730546E0
+963399EB3291F47FA0A05D57215EF9299486B6CF3200C869DDC5AAE04253AC24
+0F7A64999F2421973E06DB49D8C024312CA55295BF0D2089B505B5F326EC4C77
+262B58167617019BED0DD554AD31AB998F5821BBBD8B75EE2FB374B1AA261F22
+CD75F66E7295A254FEF801B6967BDD5BB072E876DBD7E310E31D3CC5E760B826
+8E9C7F1AACB6BCEED9171CD817476967E255F808AD2C72C261D8BC48CC05727B
+71589342370F8A366E11B3654B8CDF381CD18139960CFE928A76C33E730F7397
+78BBC0E70C059ABFD5CCD1F60FD3DAC30D9E4F76C5144A7C204CFE3ACC9AE672
+D7AFB5FFFA51F9DB4454413FBAF3D9D0320F6CF33930DFBC7FA749554A4ABB0C
+396A3613EBE7D42FF99D26CFEB72B74A1A139595DD97314168CFEC5746F5FFEB
+780D5DBE09AC3B71E1B5CB5CDED5E9404F5B7E35EB202BB6D6EA4BDF374A81C7
+126DD8E746FA87E04A8BD485C07E3CCB30E35D159521D62592627B254FA15933
+5DFBFE7E501F4D84943CC2883C98DA8B112A75AB907C4F95B383E6DC09DFE6D1
+8BF866903D3C694EB91AAA50A2EF66F4E07A077A88210B7A95379D2D7E532DD1
+55061B0EFA51945569610079DF9E96CDE8D005FC25E59B029C05A1E699366BAA
+2EB284777A24DD129026E160A6453D3B6F5DDCC0FC6453406CEE1E199A2ADF70
+8DDDCAEA17D4FADC544D0991E0302D896C0885A3542B3B7216F615642B6D7913
+C796CAC09567214488B8CCB2721972CF98BB2CB891F08D774693C45373611268
+013B15430C8552DB28DED30EC42990D2D7674A62EACD13CBBB381247F4416082
+BB70A06F1FCEF61CD2A5097C4FD2B45BFC50DFFA14347B2C31A6B49436E07AC2
+08474DF121D5FDD0071F5D6647109E7943BB2BDEF0E433A3AFCF5D3605F424A5
+3292CF5691525858C849C6E3D81F3F7CA4A6D2054364F70512377DD60AD327AA
+21A89F9A20140E6CF9AFB508D57BC787EE9649E59EE05322A710B0E857532F9E
+B9967F940532E3CA8507FB01B0DC74484791223B7721367C335F779D6EC9D065
+C88DBAEF0FA322A1493AD894473939D394549286A20744ABDA8AE0400112199C
+50B38B6A331EC43205D364C36DF7EB7D7523D3D47988AF42230906227A0BD1A7
+CA849DEA8330552B5EA1764E8FD6C30940E761B8C6728079F6F9D1B52FD3E683
+7D783BE9BD1EEB3A5B4973930EE84AC0D010EB5ABA69DCCE0B54A17ADA8CCBE3
+F6B306D1B8B98BA21C7367442C2269BCDB0DA14C24A407D408771341818CBD92
+12AC5931D8E36555F987566C2B8C83D91079238C2C778E65A3C355E253CBFE5D
+F69233DC41378E58BD33F44D76204AFF41F537CC7293367D03DB34C8C4302985
+144A0D49172E098D858464B4567F289298A69F79F6981B190F26774B50E7B442
+F9537E48E70EB7A5CED3C91B9B95D6779B446C343AFF9D8F9C1FBA4EE76BF161
+8A03C6202E27CA82E9A1CA626D8B8E10D901FCDCC7F175AB4519960F1702B4E8
+804D87E92E043C327397D4D4DA8C1F3DCC1BA80C0CD5DDF313B203E0A68F8F7D
+3A5BD929E83B13CBB42150195CAAFEF9D5D4766BC21BEB95A8CDDB73F2C4370E
+3FCE02D064A643D3F64AEE679B05EBAB7F37B118C13A5371D955CDD2470425A6
+EF88167AFBB4B6BC1F9F5F844D4988A574FB12CDDD4F1347213C932752145534
+BBFDD27F19E63578110A8079C749D8407CA5E5E9D42A8DE84EEC46E015BEB634
+516E64EDA0EBF49A3EBF29DCE9B243C773862E06BD9EB89855E00FA4F2651AAF
+91B101B01D5D3349B6F868364FA6DEBEFB280385D1C9176E9979BE24A6A444D0
+F78102FA63A5508EC4D6FAEFC83672546AF3EDE43B35792D80CE15A6BEF1CE58
+16DE8DB10B1FB50C503E5130983C68A4241BEE082E102153FF6FC77F1AA11A8A
+FA6B6EBA8FCA6750CB48A95CA33934D7C9F87B96477EDD43D102BD91FE9228C8
+E58E19E7325E4B745066FC878C3635F884009281799053F2AD9EF1EB2C265BE6
+3A2A2FC874A864FDE98BF0F62DE28079EBC07887EB84556F43AEDEA439FBF139
+A16A553429E280865BB73BDA7CF3C2FF259A91F10FE3D43BC2A5698D6BC404AC
+B111BB0CB06397DA8C3592E615B6E462AE539E71F362A4BA881C2746ED44CC85
+6FE7D20B081260564FA26538BD1F7F090DE03CB62E0F8601FC4D79B524FA4F83
+3BA22D2A9012287D8BA8C4CB4307A1188ACC0F29ACFF54FD72789EBA34CC609F
+A509C6886BBBC3E7323C6577C42793B52B6C655084B441198134DFA827D69E28
+333A6A9E43A0310316F78211ADAA1AA9954C8C41A6AB40AC78C167A0E5CE1888
+9CE0B44A0315084F5C57B2E5C1DB6B1A94DBC963FB1BA1018BB02F3E02EAAFB0
+BC664D8800386490A8A577304663F5FA4B9CF430BC88CAEA7F5EACA0D28D6A0F
+247C07FC508D83491CE04DFA2FF92968376FE7063FFFFEB8C51B57F75ECFE723
+8BDE69DDE3E8E76815C389EB932443AB7C855B75672B3C002D0126EB1A7AB269
+5ECF4ACCAFF8F2AAE4B0B3B89FE45805A2AA4A5EF425A6A412DBD0F20CDB4D1D
+A9E54AAA3DD7E648BDF5083A19705A33842506DE5AACB3B40C2AD1F80145382F
+A077AC8473A2197ADF015326BBB45A5A1007852205E640375A9CAA5245667D05
+7C95F2CA9599390857286E3B69EDA60B24ADF88E7005807D67178C5745A21FA4
+8899F9B2386BA4AD114054FB455C41740DC01DAE096E603D91023125015202C1
+C08F03BE8678A22E2FA552E95A37D9CEF904EDEC7EBFB0E60995CF6457CF0CC8
+FB4F08F2F02F17C0B8C688C3CCBD2BC6A26E593FD03F67D332BEF4530B351B69
+7B29C3DFEA3E474F6287CAE9F65EF5F7024C75B312709B288BD7DC6DCD6FD5D4
+0FFCCCEA88F549F4FF7DCDA5DD6F5ABDAF12E0B10F88045C863186227C6499DC
+4E6DE17A43D33DB3BE958098A9D86FC2982989C29FCE47F94FD8CBCCF9442211
+5A756F2F9D22E5EE37AB81456EDC2766E58C7E0919F96124E17D2C0D6F6F25A3
+A3261B5480BBF054147B1CDDB1DF8A05A6FAEB418BF5FC0965BF7B274782C8D6
+08698A04F5A157BB16F60486F9C38AF072F4A6A07BCE44699387DCF64A984239
+EFBC4A36C40D9A406871E2FDE9D7A8A0DB4270B204E643D52B1C06099A4518FD
+0BC54C4AF901938F75A6CE358A3A3368746A027350A9FBF947BB7C46F5346868
+2E463E69702266FBCF04AC9A0CAB64076EB9EEC023A760FBD8BAF9809930D788
+34A7D4BD3D43D4B2640880ABAB0AC230DCB02818AF9A164918DEA34758E04785
+3CFD9FEAA5AA98B091AECE8681999D7C8CE7081C64FFE160F9083E36F3DB62C2
+AB6342C5D205EB976040B7AC2FE63CC875F86A646F1492C18B24E84633052EA5
+DEF77B504A57187D6235449DBC3F67808F284D5400681016F84A5390F0F2133D
+75491624029ADD4A9209DE8A4A3875CEE36203B758F1F30B2302A7B09C784A38
+A53B50172C7C3F3FB0FE3C6A0F9989C65473998758CB83768375E8D16FB3061E
+4445DD5B88906B59DFE804795EBB81392EC6CE183F72C2571F46E81CE317A0B8
+67554FC41DA1EFDB3D586B9579B002548840847A2B333E5E409CFEB234211D83
+F40362CEC29A918C3BFDA37C042DD28CC39D9D83AA89103B3603B90E49670D7E
+5F34D498E83C0E73105119C0EF23C5A848159823E67B18643C65F6CF2ED1417A
+B863C2615F2D26EE13D7A04A1883329A15495850B3DBD091C7D41B7859835D08
+CF0AE8B339EFCB4D22BDB414C852C8CBC40EF59777F7F8A391267C66712D4D2A
+BBBC5EC181E3F9AABEF35888E87E3AF5DA244DA2CBC269D90D21B62674F16AC5
+9608F55AF52A70D97680C942FE914BCA7ADBD966AC2C2197D2C3D6D006031A50
+4D585603B92C1EA90C5E2AB594402045BCBDFB0E83E7615C5FCEDFECB3E3080F
+C6D8B395542D5E464EA26F3C6264FD726D9C0B7BB9FD97C0233F418BA4179628
+529A65F780A78E56CA9D874106924BF00029F54AC12BA31BDB912B371A2751DF
+2506A7F75D37231954EDA483592BFD1A77409890FBC33A8EE43EEA03D340D4B5
+36FB1F24D33599470CDFB59E2873A84734BE2DBB7AE737DD81D4935D6B2A04A7
+884AE4336F3FEBD08B7B93B550CC6D1ED120AB61D15E4004694D39E05F5E2AEE
+30F76D51A3CF5FD035B0EDB8964878C02328BD308424854AFD3AD930AF497825
+59D72842FD7FB86459BD0F10B0796C113D22152BCE348482CA44B3B19D36FF29
+0B4BD1B807749BBF6077BEA7094AA4DD26FE70A69B58F455646837F53728D93B
+33ACB965B8C8AF5B39EA303CDB728DFB83ECE29E29F8ACEB8BA25C0FF5F0D840
+032F95D39F257C5FFEFDF1E30F5C7E47AC5664BCB5A71663B8B0644BF7E5B57B
+4024B9D5756CFB9D939CA9DD44D88E291969747968A767404B85AA04AAAB1492
+482AE66546A605B0A862824BEF164116608147691220B40CDED1AADCA60A7E22
+E14EC36743B36A7495686545D11C0E99DB92988762E6585B31D75BF5CFF45E0D
+732902199C52E26368C631242A501B1BBB6B0865F3B8A875957B66B969354B60
+0C1F59DBA1A19F5EA98046364D9C8E8A7E042AA371E061C368E357E57EC59D98
+068F254ED1A91F7031FA0B828C89F0402B564C70BA028B70E194489B1FD064E5
+15CD8EABBCD4488E8A88C30A33C0E343BB16449961F30B34D1933177E5EADA8E
+CCCA37FDAE1C496B5D0E7C1D53E0B769053BED7A9B6273EAEDA71AD36A1E1422
+A76D86F602E1FA74D8AD1DB91648C8026F8DC0E546617BDA4097FCB8FCB635C4
+ED18C5DC13E2FBE104EE488385C954AF46D90692B49F7B3DC679301967EC4F26
+F3CEAA224780C65D0357949E0372F2C52BE2AE157BA062086CAF2EA14B0C75E8
+E5D87BFCBED895F5319B213778CE74065A5F5E31B386BA7D57112248C20F8F19
+37214062CDB5F5D36768699442FA8CFD47D655952F7731CBD3FFDDAD2B1EFCD4
+A73CCE9CCAB6EA497A91E603F12241E2EB52B5EE286D3582FA02F77C415C4187
+39003766FB193DD7B97DF0F9A11121F93EECA7681C2397F448C46BA164AC7BE0
+C0A73FB423A2ABA4E4987519B549B1E8C80D2631A99DECA92ECCF346912BD843
+86209173E3FA5D55A010EC22C303268923DC5E65324AFD19FCD063B9F269AC6B
+717E96D7885472A1F3180A5D75CDC4B045FE299484C0EB1522FE220347F9D7D0
+24AD69C63018054CB8AE7E077D071F2636D7287B209D2A7FB3F8FE3FF0191A1B
+BB94DD7D26D98C3AE27C211C8C4FA5132D2B427B8583BF1CEAA94A5F932FCE2C
+D96CA703FFC8167C703D76BE91A2FB548AB5AB1461702C16DB6B9FC7A6BC09A6
+7527FB34BC12859424AF93DB66C9EE07FCAD6181F82F434EDA7F6AB973ED254B
+7542D9840643A543F4F6CC5AFEBD2578E7A5511219AFBFABAE4AF312575682E6
+A86792FF4A68F8ADB5308419481FC1CD966965C72E9490C31153E0C83F0D3768
+F4E5FDC99AAA25AD6822B22B9CC8A0E120F1AB9336BC2301C2B38FD9308BDC1A
+1B3482A99DC90B2E5FBA8EDF09B8B1BB2CBC48AC2F425E8150E0A2C21129A337
+7508BAD0A7CFEAA913B935BA91F1682C8957F5F6C5E05587419C70AA92193462
+DE726263DBFD9635B701B700EE212446E70A536F162CB22D6B6BB85AED82C036
+8CB98DDD8A8691F3FE1D7B96C516DA7DFE48BF6D59B1C6499F6E71642D04AB88
+C99B254649D2EECBCC9267F3A69E5BCD82B4DE1097FBA4DE7BD4F60E2FE39295
+95660F7583C833AAA8AC9CA8A26B51FEE38518819916B84008688D162C7FA895
+DCCBD8276620B10E6C7E03FEA26880E1217FAC6ABF3636ED201011F687AA6A1F
+A145DD16AFB4EF904FFEF935954AFB9BD2041241B1BC8519EDD8F88C8CF53913
+7A54C6C787287755650CAF0760C2A23BEB74435A6FCF0C7E4C041BB3ABCC68CE
+AEE80B1BD0684279EA28D1F2E996551F69A140A662A98CD3E5784D3FE369550E
+C066319191D8B1E41B3BE2BD081CFB9BE57B358EC81D16316F21015487644B55
+DDA2E1146AA3CFCB6C3F9C5DBE5087EB9122DE23199AC72B491FF8476240F9DE
+95F1F507FEC112903F2439C1E08D8924BAEFB2D5FED007D0E646156C50A6FCCF
+B712EC54252EFC5A70CE433F3547D36E0DA51E215709FF69322D42C893A30E07
+8C0DDD5C6C2F44BF832E4D54880BAF264A443188405907DFB32DB77E1DA2E2F9
+2EB1890FE6BB060A0F1F97ECC3E331AAAFEA5C905FC0D12C6ECB60F72D16E676
+754B7F63DDF3174A09E363E92A1EAC874E4BF7544FC3275E36A43E22F67FCCE2
+BC52AB9C9DBF4EAF2A244A3D8A0E947BF19773B66A92B751F8427D4AC3CE5993
+E17672718FF301DB98A91C6F34AA573BDF47829A0BD0C1FF5B8DE91B681C19DC
+F72A684B37FB7BA9F1FC00D98E345A7E0BBF1793146F66B9C5BFA541AEB7BD6F
+0625517D54170CF68913009D3B2FE8F085958C9C0857F3604FFF638C9DB5F9E5
+3231E03923EDA8E2FBACB8D3C58CCD07BFCAE08D822D88B5833F1A53A80E058C
+1EC14B91C6611D4217131350E43A7BD18D8E2D9EADF26324E6856C1174916E4B
+587EEA21EA20F863387174E3B1B6DDDCC4C462A2895C9CFD936E8E47D35CA15C
+50CD05B5C644D53FFBD3E3C03AA02FFD5CBDC0840F9562D8D8BCCDEC4F62A11D
+F4A3856FA4BD3ED8C757A5A7E53B3220627B59CCBB3FCA5940BE73BD2912BE0F
+0FAB91E7C13E732A0D8600186A7C0EFB5B5996D0BF5E6784149C85FDA1FC19AA
+A54C49F6F0B3243665852D1A5B12F15CA11F3FF558FB0F071597ED31E8072873
+6C2D25F4CA2B2F44E2127FD415185CDEC3EB1EDB382EDF55C31E3FE7541B2D4F
+B2A2D63041F7D23FD0B336202B92AE410F2420E816824DB8B1D13695840A4B56
+14247FC0E0568AE3BDFBDB8295B01C0742475BE2721C7213A713C6CB0A281BCF
+F79F658BC4F3889DC98D030FEE6C9774E0E2BC8CE7C700C1260FE4F0D27CB23C
+CB5DD5AC1C45B4F6C9EF55D46057C73CB15B8EFEDD59314CB5B5554CB693A534
+72074E1C95F4A4B761F25B493F070730D8E13DA60DB2CD8A2335B62CA1D8384D
+4869BD9004CBECE1C82C263D047213AEDC309C0ECF1B3312511286D8C3D7B0EB
+427C1749969DAF3B72CFD1F579F4A62E705B6DD79D3767DDA456E1B85458CBF0
+DDB3DA821FD33EE749DFEFC436701D0C4F7211B5B5CC0A348F325F3E45531781
+7FB14FE7F36ED2F1EACB243DDB6C5673A5BD6D0F4E80EB465221B68BFBF3F265
+B1D1A1146A91079B753C8F06505DE5844566E465F431B5E2B656524B6D481FF9
+A3F38185F7C1D7F378B62DB43CA4BC3A8669F6E924D719F418DA3D91F1056A41
+B007AF081136D50948561FF5E7C65677F5C7C882B7BF79F5205F9E9A1EC74128
+D2448189E3847756FA99164500A4FF96C938775DDAFF6F38DA8D3E7818E2FA15
+FD01A791C75C468626EE4A639E0F2D0019D50E27A688BB92D576D161A3ED4413
+DBDE1DAEF3E73608336BD2A14DE9D20A514D29AE12372EA8DD01647B953D17C6
+42C853E4936F420867903CBBD57FB065E3B9EE8F6AFD49C342AF0EDE656CDF7E
+59EAD6779B3484CE668FB74834A3A78F5B436CF000514A8E7BA6FB5B44EC1920
+BCF242DAA985E03B45448F550B37FE6FEF1645AF3209C5C7CB5AECED9B0651A8
+A70127A7B6D6928D6393D85B42B3AA17DDFABE69046EB0B0C8C4818AF7E1AC71
+DAA73A02AA69A5BA421F382275F0C4E4791A6371735299F22440D02B4D2B19D6
+477314944427FC7FC91F7BCA627316CEF67760C94ACDBD349CBD18E8CEA65C0A
+0AAD83472B820B871D7979A52174C2BEE17D3818AAE8B6EB70C7D4C37680C273
+10CD065D11C45046EC33B07469F871F97B17E57F309B52576A9C1FFAC977C255
+DB6E47E385A53F3FD07A191CC377126A41EA96394170A5BF25824F77C7A70164
+55E172DE0C8F251558E0D294D3852D68726720BC6447046EEF2AE810351B7FCD
+69EE2BF54696702F510496B2536E30A5E1758B293E6B721A13DCA21512C4EA25
+73FECF95E68FE5579E0720E18A2BB150D25BFB100A5B0E09C79F2AE5A178E37F
+4FFE0300932030C47C025C731BE32DFF3E48051C4F3146917DF98C40DCB82C0D
+850DD129C86166CD167E327C8D51E5EB5D7DAEC7FF50682A1A6951F120944F67
+9A2F52F8E184590223348E5157AF92AD30C02EE0CC7F10BB2127F7C006E1403D
+ABB84F0D3EBD9D0A3DA94D8013DB6CE3DF54B83FCBDA79D667614525D13AB2DB
+1F0E6897E6F78FF6635F17CB0302CE7F4A0CF91F7087EE721F64CA0E33B51187
+8F1E0C8F4D7FD4F3F0A28C8C1833DFD60525A78B2A4BD7C5BD4EF28BC186834F
+549D3C3FF963013711AB72B76C72F095769EA0EE045EBE4A35E0BEDD1E25DF20
+EB1EDF35AE4B44754C5A856537C06F75BAB024B682FADA1E3A01E313B7656F1C
+924FFD9E94B76F6EB9D89B157A3F26BEA91933F9A7D897D7E9C788459B39B303
+21C6ECAE276B63B1238AD31D9FE8EEE9CC9FB78DBF164F52F31EC79ECF16B4BB
+1C99DFE0E400838F718712D374D9AED7F0A85A674677985162D53910DE1DA605
+60F84973A847723B615C94B89C0F7806D9C84867CCA9F67943DF89183F2CBCDE
+4FF10072016879C1CA4E377D77797A32DB18676BA82518660359A8B6BF01600E
+4A11FDBAA2689E99E8FA8D8D130A86770FA787F267499DA09EB7239641CFED8C
+A464FD3AAF160BD12FA07DF0B9E3900BD08EADBB9EBE4B144AC95721B36BCE33
+C6F9A7F35D948232BE5AD2A733D5E4C5F0370307BC6CA5E7CE474F62D5EA99A9
+CC556222445EAFC4E6F63A24B5A2CDB4EF4032DCA5CC6D1E11B6B92F18164803
+E18FB6CB61F2E6250150868450EF0D08A776CFC7CF7E387414E4A017F9FAE43F
+47C36E5544AC9D4DA4B00BF6DA3815B7068A272D1504F4BAE7BC5156FA919BEF
+42166C1B312E8C20CB3F080B08A69416DA4A1D037D1AFB8A49609DCCF844AC7E
+03278F56A07C342F90314D45238DD0FA9F678D4929D69D192707B1BA6A26EDA2
+0F8D0E550C064FEA8E67ADFA6C1FE3316D2B9D7DC2146B6EA657FB1500B51C67
+2DDD9181CFAC6D5546F35F31C03711927D4E8BCF6DC82DF9608B80D8E86E8DDF
+C77027BC12E2F6B422FDF15DE326F58C22DBBB9B75A62045D74F177EA0EBC1EA
+DF96CDA6EE4C5370376350558614E41854631F388B1327B6AF6AECFA67902D01
+50E79378BCBEBA936014055D10434972C003AF6BF7798E936DC72CA2782B4185
+78622E6A3313CB79B6746E856ED6C28107CC4EB3E5BBF668827AD1CE9ED39E72
+42C84FA980A84FE4DCF28E8B1DF45EA09F013C318B8CF74A030F9E6AFB7A4FFE
+64FEFEA17A453C13CA5EBC8A94C9651B5A2D30153EA76D8EB7052CD85796326B
+AC7405B0AAB71A3E69CC8A4ABBFD5E39DC43512798EF655F7040B42836839048
+A5B1E2FCB489F23C7E24E1FA69F604AB39F5C85519549C86332833AEC3917778
+FA962235CD25472450500C209EF13B71D689153FDF05D10AF81C83B9097C0E22
+1DE7525163B0C8F1EEBE89DB8C477A433531D31C357C8685EC6006B21CEF9E0C
+EFA5B764BC54B705A29D1916CB1B945622CA7AEC1BB5CB7A4F7155380C5EEFE6
+8862EBF5257EFC2C7E46083004AD4926E95797790138C9A57411AE00E9807F8B
+247CB59185880576DC723054C1BEF461A3A01B68EA5D63298DBF47C427BD788C
+52A06990AA787A9A653A4FD5D2A0C3F55CB4C49968187712149DCCA8566BAD22
+E2556EDB99656B5196B1D8DDA6F9F3CDC435ECAE7B83429D1F3B63CE90451772
+4FFFE506A592C7F16145376BEA19619D3312BB0C60369DDEA13E924029D009AC
+B332479AFD7C37CAAB3BB3DC56A7F3329CB24C78324046FE4EA6C139D44BB8D5
+5A3A637E055EFB1650934EBDF7B7B851C299E4E574F1223A21D684A6FCB8B3DF
+5CB3118AC57AD3B8C41FF0830782C430DB4C73BF894005FB893CD6ADF3D13049
+128B2CDB52D59791504AEB26264E700BBD5DCBF4FD45D843174687A898B2B598
+BFFF18ED7AE5FA4C5D01B40755CFF80772C8726178B436C9E2FE5467FBCDF9E0
+269E7CC485970ACD0A64C68031059B9746EEE13CD30B9B2615F7646FD92CA0D8
+9929BB73507DDF4D9807D999B2A670
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+TeXDict begin 39158278 55380994 1000 8000 8000
+(D:\Dissertation_Projekt_DH\experiments\Haftreibung_Kraftmessung\Dokumentation_Versuchsauswertung\te)
+@start /Fa 144[553 615 1[307 1[338 307 3[492 39[861 10[553
+50[{ enclmec ReEncodeFont }8 1106.96 /LMRoman10-Regular
+rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 8000dpi
+TeXDict begin
+%%BeginPaperSize: a4
+/setpagedevice where
+{ pop << /PageSize [595 842] >> setpagedevice }
+{ /a4 where { pop a4 } if }
+ifelse
+%%EndPaperSize
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 0 0 a
+SDict begin [/Producer (dvips + Distiller)/Title (Example with noise - Closed Line)/Subject
+(Versuchsauswertung)/Creator (LaTeX with hyperref package)/Author (Thomas Koenig)/Keywords
+() /DOCINFO pdfmark end
+ 0 0 a 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 663 -5569
+a
+SDict begin H.S end
+ 663 -5569 a 663 -5569 a
+SDict begin H.R end
+ 663 -5569 a 663 -5569 a
+SDict begin [/View [/XYZ H.V]/Dest (page.1) cvn /DEST pdfmark end
+ 663
+-5569 a 0 TeXcolorgray Black 0 TeXcolorgray 774 -1318
+a
+tx@Dict begin gsave STV CP T /ps@rot 0 def grestore end
+ 774 -1318 a 774 -1318 a
+tx@Dict begin gsave STV CP T /ps@refangle 0. def grestore end
+ 774 -1318 a 774 -1318 a
+tx@Dict begin gsave STV CP T /ps@rot 0 def grestore end
+ 774
+-1318 a 774 -1318 a
+SDict begin [/PageMode /UseOutlines/Page 1/View [/Fit] /DOCVIEW pdfmark
+end
+ 774 -1318 a 774 -1318 a
+SDict begin [ {Catalog}<<>> /PUT pdfmark end
+ 774 -1318
+a 774 -1318 a
+SDict begin H.S end
+ 774 -1318 a 774 -1318 a
+SDict begin 13.6 H.A end
+ 774 -1318 a 774
+-1318 a
+SDict begin [/View [/XYZ H.V]/Dest (Doc-Start) cvn /DEST pdfmark end
+ 774 -1318 a 6710 6778 a @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 17.78412 0.0 17.78412
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 250.00
+0.07114 mul exch 0.18335 mul exch 0.0 17.78412 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 250.00
+0.07114 mul exch 0.18335 mul exch 183.34961 17.78412 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 35.56824 0.0 35.56824
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 500.00
+0.07114 mul exch 0.18335 mul exch 0.0 35.56824 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 500.00
+0.07114 mul exch 0.18335 mul exch 183.34961 35.56824 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 53.35236 0.0 53.35236
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 750.00
+0.07114 mul exch 0.18335 mul exch 0.0 53.35236 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 750.00
+0.07114 mul exch 0.18335 mul exch 183.34961 53.35236 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 71.13647 0.0 71.13647
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 1000.00
+0.07114 mul exch 0.18335 mul exch 0.0 71.13647 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 1000.00
+0.07114 mul exch 0.18335 mul exch 183.34961 71.13647 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 183.34961 0.0 0.0 0.0 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.75 SLW 0.5 setgray
+ 1. .setopacityalpha 3.0 0 0 add DotLine grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0 -12.500000000000000000 sub 0.00 0.07114
+mul exch 0.18335 mul exch 0.0 0.0 /Lineto /lineto load def 0 setlinejoin
+false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def } if () length 0 gt
+{ 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul neg add /arrowlength
+exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1
+sub Atan def ArrowA x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength
+mul add /n n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1
+0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.5 SLW 0 setgray 1. .setopacityalpha 0 setlinejoin
+0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 1000 -12.500000000000000000 add 0.00
+0.07114 mul exch 0.18335 mul exch 183.34961 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { BeginArrow 1. 1. scale 2 setlinecap
+0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow moveto } def /ArrowB
+{ BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0
+0 moveto EndArrow } def /ArrowInside { } def 0.8 SLW 0 setgray
+ /ArrowA { BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L
+stroke 0 0 moveto EndArrow moveto } def /ArrowB { BeginArrow 1.
+1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow
+ } def /ArrowInside { } def [ 0.0 71.13647 0.0 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.8 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { BeginArrow 1. 1. scale 2 setlinecap
+0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow moveto } def /ArrowB
+{ BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0
+0 moveto EndArrow } def /ArrowInside { } def 0.8 SLW 0 setgray
+ /ArrowA { BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L
+stroke 0 0 moveto EndArrow moveto } def /ArrowB { BeginArrow 1.
+1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow
+ } def /ArrowInside { } def [ 183.34961 71.13647 183.34961 0.0
+/Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not {
+n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.8 SLW 0 setgray 1. .setopacityalpha 0 setlinejoin 0 setlinecap
+stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 21.83327 71.13647 21.83327
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 119.08 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 21.83327 0.0 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 119.08 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 21.83327 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 43.66653 71.13647 43.66653
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 238.16 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 43.66653 0.0 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 238.16 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 43.66653 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 65.4998 71.13647 65.4998 0.0
+ /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq not
+{ n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup
+1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha
+cos arrowlength mul add y1 Alpha sin arrowlength mul add /n n 1 sub
+def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha
+y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs
+def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha cos ArrowPos
+mul add y1 Alpha sin ArrowPos mul add ArrowInside pop pop } repeat
+}{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 }
+ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x2 x1 sub
+ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop
+} repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2 sub def
+n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop } if gsave
+0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add DotLine
+grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 357.24 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 65.4998 0.0 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 357.24 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 65.4998 71.13647 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 87.33308 71.13647 87.33308
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 476.32 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 87.33308 0.0 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 476.32 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 87.33308 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 109.16635 71.13647 109.16635
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 595.40 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 109.16635 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 595.40 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 109.16635 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 130.99962 71.13647 130.99962
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 714.48 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 130.99962 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 714.48 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 130.99962 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 152.83289 71.13647 152.83289
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 833.56 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 152.83289 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 833.56 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 152.83289 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 174.66617 71.13647 174.66617
+0.0 /Lineto /lineto load def 0 setlinejoin false NArray n 0 eq
+not { n 1 eq { 0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add
+dup 1.4 mul exch 0.4 mul neg add /arrowlength exch def 4 copy /y1
+ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA
+x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength mul add /n
+n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt
+{ /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.75 SLW 0.5 setgray 1. .setopacityalpha 3.0 0 0 add
+ DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 952.64 0 -40.000000000000000000 sub
+0.07114 mul exch 0.18335 mul exch 174.66617 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 952.64 1000 -40.000000000000000000
+add 0.07114 mul exch 0.18335 mul exch 174.66617 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.75 SLW 0.5 setgray /ArrowA { moveto } def
+/ArrowB { } def /ArrowInside { } def [ 0.0 71.13647 0.0 0.0 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.75 SLW 0.5 setgray
+ 1. .setopacityalpha 3.0 0 0 add DotLine grestore end
+
+@endspecial @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0.00 0 -40.000000000000000000 sub 0.07114
+mul exch 0.18335 mul exch 0.0 0.0 /Lineto /lineto load def 0 setlinejoin
+false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def } if () length 0 gt
+{ 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul neg add /arrowlength
+exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha y2 y1 sub x2 x1
+sub Atan def ArrowA x1 Alpha cos arrowlength mul add y1 Alpha sin arrowlength
+mul add /n n 1 sub def n { 4 copy /y1 ED /x1 ED /y2 ED /x2 ED x1 y1
+0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan def /ArrowPos 0. def /dArrowPos
+0.5 abs def 1. cvi { /ArrowPos ArrowPos dArrowPos add def x1 Alpha
+cos ArrowPos mul add y1 Alpha sin ArrowPos mul add ArrowInside pop
+pop } repeat }{ /ArrowPos 0. def /dArrowPos 1. 1 gt {1.0 1. 1.0 add
+div }{0.5 } ifelse def 1. cvi { /ArrowPos ArrowPos dArrowPos add def
+x2 x1 sub ArrowPos mul x1 add y2 y1 sub ArrowPos mul y1 add ArrowInside
+pop pop } repeat } ifelse pop pop Lineto } repeat }{ ArrowA /n n 2
+sub def n { Lineto } repeat } ifelse CP 4 2 roll ArrowB L pop pop }
+if gsave 0.5 SLW 0 setgray 1. .setopacityalpha 0 setlinejoin
+0 setlinecap stroke grestore end
+
+@endspecial
+@beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.5 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def [ 0.00 1000 -40.000000000000000000 add
+0.07114 mul exch 0.18335 mul exch 0.0 71.13647 /Lineto /lineto load
+def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n 2 def
+} if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4 mul
+neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED /Alpha
+y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength mul add
+y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy /y1 ED /x1
+ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1 sub Atan
+def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos ArrowPos
+dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin ArrowPos
+mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def /dArrowPos
+1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add y2 y1 sub
+ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse pop pop Lineto
+} repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat } ifelse CP 4
+2 roll ArrowB L pop pop } if gsave 0.5 SLW 0 setgray 1. .setopacityalpha
+ 0 setlinejoin 0 setlinecap stroke grestore end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { BeginArrow 1. 1. scale 2 setlinecap
+0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow moveto } def /ArrowB
+{ BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0
+0 moveto EndArrow } def /ArrowInside { } def 0.8 SLW 0 setgray
+ /ArrowA { BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L
+stroke 0 0 moveto EndArrow moveto } def /ArrowB { BeginArrow 1.
+1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow
+ } def /ArrowInside { } def [ 183.34961 0.0 0.0 0.0 /Lineto /lineto
+load def 0 setlinejoin false NArray n 0 eq not { n 1 eq { 0 0 /n
+2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul exch 0.4
+mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2 ED /x2 ED
+/Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.8 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial 6710 6778 a
+tx@Dict begin gsave STV CP T /ps@rot 0 0 add def grestore end
+ 6710 6778 a 6710
+6778 a
+tx@Dict begin { 1000.000000000000000000 0.5 mul 0 add 0 0.07114 mul
+exch 0.18335 mul exch } PutCoor PutBegin end
+ 6710 6778 a 6710 6778 a
+tx@Dict begin ps@rot RotBegin end
+ 6710 6778 a 4420 10143
+a Fa(linejoin=2)6710 6778 y
+tx@Dict begin RotEnd end
+ 6710 6778 a 6710 6778 a
+tx@Dict begin PutEnd end
+ 6710
+6778 a @beginspecial @setspecial
+ tx@Dict begin STP newpath /ArrowA { BeginArrow 1. 1. scale 2 setlinecap
+0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow moveto } def /ArrowB
+{ BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0
+0 moveto EndArrow } def /ArrowInside { } def 0.8 SLW 0 setgray
+ /ArrowA { BeginArrow 1. 1. scale 2 setlinecap 0 0 moveto 0 0.1 L
+stroke 0 0 moveto EndArrow moveto } def /ArrowB { BeginArrow 1.
+1. scale 2 setlinecap 0 0 moveto 0 0.1 L stroke 0 0 moveto EndArrow
+ } def /ArrowInside { } def [ 183.34961 71.13647 0.0 71.13647 /Lineto
+/lineto load def 0 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.8 SLW 0 setgray
+ 1. .setopacityalpha 0 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial @beginspecial
+@setspecial
+ tx@Dict begin STP newpath /ArrowA { moveto } def /ArrowB { } def
+/ArrowInside { } def 0.8 SLW 0 setgray /ArrowA { moveto } def /ArrowB
+{ } def /ArrowInside { } def /D {} def mark 0.00 0.00 0.00 0.00 0.00
+0.00 0.84 0.00 0.84 0.00 1.68 0.00 1.68 0.00 2.52 0.00 2.52 0.00 3.36
+0.00 3.36 0.00 4.20 0.00 4.20 0.00 5.04 0.00 5.04 0.00 5.88 0.00 5.88
+0.00 6.72 0.00 6.72 0.00 7.56 0.00 7.56 0.00 8.40 0.00 8.40 0.00 9.24
+0.00 9.24 0.00 10.08 0.00 10.08 0.00 10.92 0.00 10.92 0.00 11.76 0.00
+11.76 0.00 12.60 0.00 12.60 0.00 13.44 0.00 13.44 0.00 14.28 0.00 14.28
+0.00 15.12 0.00 15.12 0.00 15.96 0.00 15.96 0.00 16.80 0.00 16.80 0.00
+17.64 0.00 17.64 0.00 18.48 0.00 18.48 0.00 19.32 0.00 19.32 0.00 20.16
+0.00 20.16 0.00 21.00 0.00 21.00 0.00 21.84 0.00 21.84 0.00 22.68 0.00
+22.68 0.00 23.52 0.00 23.52 0.00 24.36 0.00 24.36 0.00 25.20 0.00 25.20
+0.00 26.04 0.00 26.04 0.00 26.88 0.00 26.88 0.00 27.72 0.00 27.72 0.00
+28.56 0.00 28.56 0.00 29.40 0.00 29.40 0.00 30.24 0.00 30.24 0.00 31.08
+0.00 31.08 0.00 31.92 0.00 31.92 0.00 32.76 0.00 32.76 0.00 33.60 0.00
+33.60 0.00 34.44 0.00 34.44 0.00 35.28 0.00 35.28 0.00 36.12 0.00 36.12
+0.00 36.96 0.00 36.96 0.00 37.80 0.00 37.80 0.00 38.64 0.00 38.64 0.00
+39.48 0.00 39.48 0.00 40.32 0.00 40.32 0.00 41.16 0.00 41.16 0.00 42.00
+0.00 42.00 0.00 42.84 0.00 42.84 0.00 43.68 0.00 43.68 0.00 44.52 0.00
+44.52 0.00 45.36 0.00 45.36 0.00 46.20 0.00 46.20 0.00 47.04 0.00 47.04
+0.00 47.88 0.00 47.88 0.00 48.72 0.00 48.72 0.00 49.56 0.00 49.56 0.00
+50.40 0.00 50.40 0.00 51.24 0.00 51.24 0.00 52.08 0.00 52.08 0.00 52.92
+0.00 52.92 0.00 53.76 0.00 53.76 0.00 54.60 0.00 54.60 0.00 55.44 0.00
+55.44 0.00 56.28 0.00 56.28 0.00 57.12 0.00 57.12 0.00 57.96 0.00 57.96
+0.00 58.80 0.00 58.80 0.00 59.64 0.00 59.64 0.00 60.48 0.00 60.48 0.00
+61.32 0.00 61.32 0.00 62.16 0.00 62.16 0.00 63.00 0.00 63.00 0.00 63.84
+0.00 63.84 0.00 64.68 0.00 64.68 0.00 65.52 0.00 65.52 0.00 66.36 0.00
+66.36 0.00 67.20 0.00 67.20 0.00 68.04 0.00 68.04 0.00 68.88 0.00 68.88
+0.00 69.72 0.00 69.72 0.00 70.56 0.00 70.56 0.00 71.40 0.00 71.40 0.00
+72.24 0.00 72.24 0.00 73.08 0.00 73.08 0.00 73.92 0.00 73.92 0.00 74.76
+0.00 74.76 0.00 75.60 0.00 75.60 0.00 76.44 0.00 76.44 0.00 77.28 0.00
+77.28 0.00 78.12 0.00 78.12 0.00 78.96 0.00 78.96 0.00 79.80 0.00 79.80
+0.00 80.64 0.00 80.64 0.00 81.48 0.00 81.48 0.00 82.32 0.00 82.32 0.00
+83.16 0.00 83.16 0.00 84.00 0.00 84.00 0.00 84.84 0.00 84.84 0.00 85.68
+0.00 85.68 0.00 86.52 0.00 86.52 0.00 87.36 0.00 87.36 0.00 88.20 0.00
+88.20 0.00 89.04 0.00 89.04 0.00 89.88 0.00 89.88 0.00 90.72 0.00 90.72
+0.00 91.56 0.00 91.56 0.00 92.40 0.00 92.40 0.00 93.24 0.00 93.24 0.00
+94.08 0.00 94.08 0.00 94.92 0.00 94.92 0.00 95.76 0.00 95.76 0.00 96.60
+0.00 96.60 0.00 97.44 0.00 97.44 0.00 98.28 0.00 98.28 0.00 99.12 0.00
+99.12 0.00 99.96 0.00 99.96 0.00 100.80 0.00 100.80 0.00 101.64 0.00
+101.64 0.00 102.48 0.00 102.48 0.00 103.32 0.00 103.32 0.00 104.16
+0.00 104.16 0.00 105.00 0.00 105.00 0.00 105.84 0.00 105.84 0.00 106.68
+0.00 106.68 0.00 107.52 0.00 107.52 0.00 108.36 0.00 108.36 0.00 109.20
+0.00 109.20 0.00 110.04 0.00 110.04 0.00 110.88 0.00 110.88 0.00 111.72
+0.00 111.72 0.00 112.56 0.00 112.56 0.00 113.40 0.00 113.40 0.00 114.24
+0.00 114.24 0.00 115.08 0.00 115.08 0.00 115.92 0.00 115.92 0.00 116.76
+0.00 116.76 0.00 117.60 0.00 117.60 0.00 118.44 0.00 118.44 0.00 119.28
+0.00 119.28 0.00 120.12 0.00 120.12 0.00 120.96 0.00 120.96 0.00 121.80
+0.00 121.80 0.00 122.64 0.00 122.64 0.00 123.48 0.00 123.48 0.00 124.32
+0.00 124.32 0.00 125.16 0.00 125.16 0.00 126.00 0.00 126.00 0.00 126.84
+0.00 126.84 0.00 127.68 0.00 127.68 0.00 128.52 0.00 128.52 0.00 129.36
+0.00 129.36 0.00 130.20 0.00 130.20 0.00 131.04 0.00 131.04 0.00 131.88
+0.00 131.88 0.00 132.72 0.00 132.72 0.00 133.56 0.00 133.56 0.00 134.40
+0.00 134.91 6.25 135.32 6.25 136.02 -6.21 136.25 -6.33 136.52 -5.00
+137.00 -6.10 137.06 -4.71 138.03 -6.40 138.08 -4.78 138.71 -6.25 139.42
+0.55 139.44 0.00 140.26 5.89 140.30 6.49 141.10 4.85 141.71 4.88 141.72
+6.25 142.11 6.25 142.80 -5.59 143.10 -6.48 143.11 -5.00 143.68 -5.65
+144.36 0.44 144.48 0.00 144.60 0.34 145.32 0.00 145.32 0.00 146.16
+0.00 146.16 0.00 147.00 0.00 147.00 0.00 147.84 0.00 147.84 0.00 148.68
+0.00 148.68 0.00 149.52 0.00 149.52 0.00 150.36 0.00 150.36 0.00 151.20
+0.00 151.20 0.00 152.04 0.00 152.04 0.00 152.88 0.00 152.88 0.00 153.72
+0.00 153.72 0.00 154.56 0.00 154.56 0.00 155.40 0.00 155.40 0.00 156.24
+0.00 156.24 0.00 157.08 0.00 157.08 0.00 157.92 0.00 157.92 0.00 158.76
+0.00 158.76 0.00 159.60 0.00 159.60 0.00 160.44 0.00 160.44 0.00 161.28
+0.00 161.28 0.00 162.12 0.00 162.12 0.00 162.96 0.00 162.96 0.00 163.80
+0.00 163.80 0.00 164.64 0.00 164.64 0.00 165.48 0.00 165.48 0.00 166.32
+0.00 166.32 0.00 167.16 0.00 167.16 0.00 168.00 0.00 168.00 0.00 168.84
+0.00 168.84 0.00 169.68 0.00 169.68 0.00 170.52 0.00 170.52 0.00 171.36
+0.00 171.36 0.00 172.20 0.00 172.20 0.00 173.04 0.00 173.04 0.00 173.88
+0.00 173.88 0.00 174.72 0.00 174.72 0.00 175.56 0.00 175.56 0.00 176.40
+0.00 176.40 0.00 177.24 0.00 177.24 0.00 178.08 0.00 178.08 0.00 178.92
+0.00 178.92 0.00 179.76 0.00 179.76 0.00 180.60 0.00 180.60 0.00 181.44
+0.00 181.44 0.00 182.28 0.00 182.28 0.00 183.12 0.00 183.12 0.00 183.96
+0.00 183.96 0.00 184.80 0.00 184.80 0.00 185.64 0.00 185.64 0.00 186.48
+0.00 186.48 0.00 187.32 0.00 187.32 0.00 188.16 0.00 188.16 0.00 189.00
+0.00 189.00 0.00 189.84 0.00 189.84 0.00 190.68 0.00 190.68 0.00 191.52
+0.00 191.52 0.00 192.36 0.00 192.36 0.00 193.20 0.00 193.20 0.00 194.04
+0.00 194.04 0.00 194.88 0.00 194.88 0.00 195.72 0.00 195.72 0.00 196.56
+0.00 196.56 0.00 197.40 0.00 197.40 0.00 198.24 0.00 198.24 0.00 199.08
+0.00 199.08 0.00 199.92 0.00 199.92 0.00 200.76 0.00 200.76 0.00 201.60
+0.00 201.60 0.00 202.44 0.00 202.44 0.00 203.28 0.00 203.28 0.00 204.12
+0.00 204.12 0.00 204.96 0.00 204.96 0.00 205.80 0.00 205.80 0.00 206.64
+0.00 206.64 0.00 207.48 0.00 207.48 0.00 208.32 0.00 208.32 0.00 209.16
+0.00 209.16 0.00 210.00 0.00 210.00 0.00 210.84 0.00 210.84 0.00 211.68
+0.00 211.68 0.00 212.52 0.00 212.52 0.00 213.36 0.00 213.36 0.00 214.20
+0.00 214.20 0.00 215.04 0.00 215.04 0.00 215.88 0.00 215.88 0.00 216.72
+0.00 216.72 0.00 217.56 0.00 217.56 0.00 218.40 0.00 218.40 0.00 219.24
+0.00 219.24 0.00 220.08 0.00 220.08 0.00 220.92 0.00 220.92 0.00 221.76
+0.00 221.76 0.00 222.60 0.00 222.60 0.00 223.44 0.00 223.44 0.00 224.28
+0.00 224.28 0.00 225.12 0.00 225.12 0.00 225.96 0.00 225.96 0.00 226.80
+0.00 226.80 0.00 227.64 0.00 227.64 0.00 228.48 0.00 228.48 0.00 229.32
+0.00 229.32 0.00 230.16 0.00 230.16 0.00 231.00 0.00 231.00 0.00 231.84
+0.00 231.84 0.00 232.68 0.00 232.68 0.00 233.52 0.00 233.52 0.00 234.36
+0.00 234.36 0.00 235.20 0.00 235.20 0.00 236.04 0.00 236.04 0.00 236.88
+0.00 236.88 0.00 237.72 0.00 237.72 0.00 238.56 0.00 238.56 0.00 239.40
+0.00 239.40 0.00 240.24 0.00 240.24 0.00 241.08 0.00 241.08 0.00 241.92
+0.00 241.92 0.00 242.76 0.00 242.76 0.00 243.60 0.00 243.60 0.00 244.44
+0.00 244.44 0.00 245.28 0.00 245.28 0.00 246.12 0.00 246.12 0.00 246.96
+0.00 246.96 0.00 247.80 0.00 247.80 0.00 248.64 0.00 248.64 0.00 249.48
+0.00 249.48 0.00 250.32 0.00 250.32 0.00 251.16 0.00 251.16 0.00 252.00
+0.00 252.00 0.00 252.84 0.00 252.84 0.00 253.68 0.00 253.68 0.00 254.52
+0.00 254.52 0.00 255.36 0.00 255.36 0.00 256.20 0.00 256.20 0.00 257.04
+0.00 257.04 0.00 257.88 0.00 257.88 0.00 258.72 0.00 258.72 0.00 259.56
+0.00 259.56 0.00 260.40 0.00 260.40 0.00 261.24 0.00 261.24 0.00 262.08
+0.00 262.08 0.00 262.92 0.00 262.92 0.00 263.76 0.00 263.76 0.00 264.60
+0.00 264.60 0.00 265.44 0.00 265.44 0.00 266.28 0.00 266.28 0.00 267.12
+0.00 267.12 0.00 267.96 0.00 267.96 0.00 268.80 0.00 268.80 0.00 269.64
+0.00 269.64 0.00 270.48 0.00 270.48 0.00 271.32 0.00 271.32 0.00 272.16
+0.00 272.16 0.00 273.00 0.00 273.00 0.00 273.84 0.00 273.84 0.00 274.68
+0.00 274.68 0.00 275.52 0.00 275.52 0.00 276.36 0.00 276.36 0.00 277.20
+0.00 277.20 0.00 278.04 0.00 278.04 0.00 278.88 0.00 278.88 0.00 279.72
+0.00 279.72 0.00 280.56 0.00 280.56 0.00 281.40 0.00 281.40 0.00 282.24
+0.00 282.24 0.00 283.08 0.00 283.08 0.00 283.92 0.00 283.92 0.00 284.76
+0.00 284.76 0.00 285.60 0.00 285.60 0.00 286.44 0.00 286.44 0.00 287.28
+0.00 287.28 0.00 288.12 0.00 288.12 0.00 288.96 0.00 288.96 0.00 289.80
+0.00 289.80 0.00 290.64 0.00 290.64 0.00 291.48 0.00 291.48 0.00 292.32
+0.00 292.32 0.00 293.16 0.00 293.16 0.00 294.00 0.00 294.00 0.00 294.84
+0.00 294.84 0.00 295.68 0.00 295.68 0.00 296.52 0.00 296.52 0.00 297.36
+0.00 297.36 0.00 298.20 0.00 298.20 0.00 299.04 0.00 299.04 0.00 299.88
+0.00 299.88 0.00 300.72 0.00 300.72 0.00 301.56 0.00 301.56 0.00 302.40
+0.00 302.40 0.00 303.24 0.00 303.24 0.00 304.08 0.00 304.08 0.00 304.92
+0.00 304.92 0.00 305.76 0.00 305.76 0.00 306.60 0.00 306.60 0.00 307.44
+0.00 307.44 0.00 308.28 0.00 308.28 0.00 309.12 0.00 309.12 0.00 309.96
+0.00 309.96 0.00 310.80 0.00 310.80 0.00 311.64 0.00 311.64 0.00 312.48
+0.00 312.48 0.00 313.32 0.00 313.32 0.00 314.16 0.00 314.16 0.00 315.00
+0.00 315.00 0.00 315.84 0.00 315.84 0.00 316.68 0.00 316.68 0.00 317.52
+0.00 317.52 0.00 318.36 0.00 318.36 0.00 319.20 0.00 319.20 0.00 320.04
+0.00 320.04 0.00 320.88 0.00 320.88 0.00 321.72 0.00 321.72 0.00 322.56
+0.00 322.56 0.00 323.40 0.00 323.40 0.00 324.24 0.00 324.24 0.00 325.08
+0.00 325.08 0.00 325.92 0.00 325.92 0.00 326.76 0.00 326.76 0.00 327.60
+0.00 327.60 0.00 328.44 0.00 328.44 0.00 329.28 0.00 329.28 0.00 330.12
+0.00 330.12 0.00 330.96 0.00 330.96 0.00 331.80 0.00 331.80 0.00 332.64
+0.00 332.64 0.00 333.48 0.00 333.48 0.00 334.32 0.00 334.32 0.00 335.16
+0.00 335.16 0.00 336.00 0.00 336.00 0.00 336.84 0.00 336.84 0.00 337.68
+0.00 337.68 0.00 338.52 0.00 338.52 0.00 339.36 0.00 339.36 0.00 340.20
+0.00 340.20 0.00 341.04 0.00 341.04 0.00 341.88 0.00 341.88 0.00 342.72
+0.00 342.72 0.00 343.56 0.00 343.56 0.00 344.40 0.00 344.40 0.00 345.24
+0.00 345.24 0.00 346.08 0.00 346.08 0.00 346.92 0.00 346.92 0.00 347.76
+0.00 347.76 0.00 348.60 0.00 348.60 0.00 349.44 0.00 349.44 0.00 350.28
+0.00 350.28 0.00 351.12 0.00 351.12 0.00 351.96 0.00 351.96 0.00 352.80
+0.00 352.80 0.00 353.64 0.00 353.64 0.00 354.48 0.00 354.48 0.00 355.32
+0.00 355.32 0.00 356.16 0.00 356.16 0.00 357.00 0.00 357.00 0.00 357.84
+0.00 357.84 0.00 358.68 0.00 358.68 0.00 359.52 0.00 359.52 0.00 360.36
+0.00 360.36 0.00 361.20 0.00 361.20 0.00 362.04 0.00 362.04 0.00 362.88
+0.00 362.88 0.00 363.72 0.00 363.72 0.00 364.56 0.00 364.56 0.00 365.40
+0.00 365.40 0.00 366.24 0.00 366.24 0.00 367.08 0.00 367.08 0.00 367.92
+0.00 367.92 0.00 368.76 0.00 368.76 0.00 369.60 0.00 369.60 0.00 370.44
+0.00 370.44 0.00 371.28 0.00 371.28 0.00 372.12 0.00 372.12 0.00 372.96
+0.00 372.96 0.00 373.80 0.00 373.80 0.00 374.64 0.00 374.64 0.00 375.48
+0.00 375.48 0.00 376.32 0.00 376.32 0.00 377.16 0.00 377.16 0.00 378.00
+0.00 378.00 0.00 378.84 0.00 378.84 0.00 379.68 0.00 379.68 0.00 380.52
+0.00 380.52 0.00 381.36 0.00 381.36 0.00 382.20 0.00 382.20 0.00 383.04
+0.00 383.04 0.00 383.88 0.00 383.88 0.00 384.72 0.00 384.72 0.00 385.56
+0.00 385.56 0.00 386.40 0.00 386.40 0.00 387.24 0.00 387.24 0.00 388.08
+0.00 388.08 0.00 388.92 0.00 388.92 0.00 389.76 0.00 389.76 0.00 390.60
+0.00 390.60 0.00 391.44 0.00 391.44 0.00 392.28 0.00 392.28 0.00 393.12
+0.00 393.12 0.00 393.96 0.00 393.96 0.00 394.80 0.00 394.80 0.00 395.64
+0.00 396.36 6.46 396.50 6.25 397.10 5.00 397.42 6.25 397.46 5.28 398.65
+6.25 398.90 4.68 399.25 6.25 399.39 4.71 399.90 6.25 400.46 4.70 401.10
+4.77 401.31 6.25 401.70 6.25 402.34 4.87 402.39 4.70 402.91 6.25 403.36
+4.76 403.38 6.25 404.37 4.65 404.48 6.25 405.42 4.89 405.47 6.25 406.38
+6.25 406.47 4.67 407.20 5.62 407.37 4.56 407.47 4.55 408.11 6.25 408.38
+4.86 408.48 6.25 409.36 4.91 409.44 6.25 410.37 4.70 410.70 6.25 411.39
+6.19 411.44 4.72 411.70 4.81 411.71 6.25 412.50 4.68 412.70 6.25 413.40
+4.85 413.91 6.25 414.41 4.89 414.48 6.25 415.05 6.25 415.70 4.86 416.38
+6.12 416.47 4.67 417.37 4.84 417.43 6.40 417.49 6.25 418.10 4.77 418.70
+4.77 418.72 6.25 419.31 6.25 419.38 4.77 420.10 6.25 420.55 4.74 421.38
+6.72 421.46 4.68 422.45 6.17 422.50 4.78 422.91 6.25 423.18 5.39 423.50
+4.59 424.10 6.10 424.41 5.98 424.46 4.70 425.41 6.42 425.51 5.33 425.90
+5.00 426.44 6.35 427.40 4.86 427.44 6.36 428.28 5.62 428.40 4.89 428.70
+4.78 429.04 5.62 429.40 4.74 429.42 6.25 430.30 5.00 430.47 6.25 431.15
+4.76 431.75 6.25 432.31 6.25 432.51 4.77 432.90 5.00 433.04 5.62 433.50
+6.13 433.51 4.70 434.44 4.81 434.51 6.25 435.42 6.54 435.50 4.87 436.10
+6.25 436.44 4.67 437.30 6.25 437.45 4.68 438.42 5.19 438.46 6.63 438.48
+4.84 438.52 6.25 439.52 6.12 439.70 4.79 440.49 6.15 440.51 4.69 441.40
+4.89 441.48 6.25 442.11 5.00 442.43 6.52 442.75 4.70 443.10 6.25 443.82
+5.62 444.30 4.70 444.50 4.69 444.71 6.25 445.44 5.00 445.52 6.57 446.15
+6.25 446.52 4.70 447.43 4.67 447.48 6.52 448.43 4.68 448.51 6.42 448.91
+6.25 449.11 4.66 449.49 5.20 449.55 6.25 450.56 5.00 450.71 6.25 451.65
+5.00 451.71 6.25 452.45 4.68 452.53 5.81 453.44 4.72 453.52 6.51 454.10
+5.00 454.35 6.25 454.46 6.25 454.53 4.89 455.30 6.25 455.43 4.79 456.43
+4.71 456.55 6.11 457.44 4.91 457.54 6.70 457.85 6.25 458.49 4.67 458.71
+6.25 459.44 4.87 459.48 6.15 459.50 4.68 460.46 6.10 460.51 4.84 461.49
+4.70 461.52 6.25 462.45 6.41 462.49 4.88 462.91 6.25 463.43 4.71 463.92
+6.25 464.48 4.78 464.52 4.90 465.11 6.25 465.44 6.18 465.57 5.00 466.53
+4.69 466.90 6.12 467.15 6.25 467.57 4.75 468.11 5.00 468.47 6.25 469.31
+6.25 469.55 4.76 469.57 4.66 469.70 5.61 470.47 4.68 470.55 5.88 471.40
+6.25 471.46 4.67 472.47 4.67 472.55 6.25 473.10 4.88 473.20 6.16 474.31
+6.25 474.53 4.84 475.10 6.12 475.11 5.00 475.48 4.68 475.70 6.17 476.31
+5.00 476.60 6.25 477.20 6.25 477.57 4.77 478.11 6.25 478.75 4.77 479.58
+4.88 479.60 6.25 479.71 6.25 480.10 4.87 480.63 4.74 481.10 6.09 481.49
+6.25 481.58 4.87 482.48 4.89 482.57 6.07 483.33 5.37 483.50 6.53 483.95
+4.87 484.54 6.82 484.90 5.00 485.49 6.13 485.58 4.70 486.30 6.25 486.58
+4.89 486.95 6.25 487.55 6.25 487.58 5.00 488.53 6.74 488.59 4.71 489.15
+6.25 489.52 4.89 490.00 5.00 490.56 6.25 490.56 6.25 490.58 5.34 491.54
+4.65 491.74 5.60 492.50 6.12 492.52 4.67 493.53 4.67 493.71 6.25 494.31
+6.25 494.51 4.67 495.51 6.15 495.55 4.68 495.70 4.90 496.11 6.25 496.71
+6.25 496.75 4.70 497.61 6.25 498.10 4.71 498.48 4.69 498.61 6.25 499.10
+6.25 499.45 4.68 500.52 6.38 500.61 4.75 500.70 4.78 500.71 6.25 501.51
+6.42 501.58 4.76 502.55 6.05 502.80 4.65 503.54 4.84 503.55 6.25 504.10
+6.25 504.62 5.35 505.54 5.92 505.57 4.68 505.71 5.00 506.52 6.60 506.52
+6.60 507.31 4.77 507.55 6.25 507.70 4.78 508.60 4.70 508.63 6.25 509.56
+4.69 509.62 6.25 510.52 6.43 510.63 4.69 511.31 6.25 511.53 5.25 511.56
+6.08 511.61 4.69 512.52 6.62 512.56 4.77 513.35 6.25 513.53 5.27 514.51
+5.32 514.55 6.25 515.52 4.67 515.59 5.84 516.11 6.25 516.58 5.28 516.71
+6.25 517.30 4.90 517.55 4.71 517.64 6.25 518.30 5.00 518.58 6.25 519.56
+6.25 519.59 4.71 520.57 4.68 520.60 6.25 521.30 4.87 521.64 6.49 521.64
+6.49 521.90 4.79 522.56 6.25 522.61 4.69 523.55 6.25 523.59 4.72 524.51
+6.25 524.64 5.00 525.25 6.25 525.57 4.72 525.91 6.25 526.10 4.67 526.75
+5.00 527.10 6.25 527.57 4.72 527.71 6.25 528.55 6.25 528.63 4.70 529.54
+6.16 529.88 5.40 530.12 5.00 530.55 6.50 531.05 6.25 531.30 4.88 531.91
+6.25 532.50 4.76 532.63 6.14 533.30 4.67 533.60 4.70 533.70 6.25 534.31
+5.00 534.70 6.25 535.51 6.25 535.64 4.73 536.57 4.66 536.66 6.41 537.30
+4.88 537.58 6.41 537.65 4.74 537.71 6.25 538.50 4.91 538.66 6.13 539.51
+6.25 539.61 4.71 540.50 4.88 540.68 6.25 541.55 4.71 541.61 6.52 542.10
+6.25 542.57 5.00 542.80 4.78 543.05 6.25 543.57 4.65 544.00 6.25 544.55
+6.25 544.67 4.69 545.61 4.86 545.67 6.25 546.65 4.66 546.76 5.60 547.25
+4.66 547.58 6.07 548.25 4.68 548.30 5.60 548.66 4.68 548.68 6.25 549.65
+6.25 549.70 4.79 550.34 5.62 550.58 4.76 551.67 4.66 551.68 6.25 552.11
+6.25 552.43 5.38 553.11 6.25 553.53 0.00 553.56 0.44 553.59 -1.15 554.40
+0.00 554.42 0.03 555.24 0.00 555.24 0.00 556.08 0.00 556.92 5.05 557.60
+6.12 557.65 4.79 557.90 6.25 558.10 4.89 558.69 6.18 558.71 5.00 559.63
+6.25 559.66 5.00 560.30 6.25 560.59 4.74 561.51 6.25 561.70 4.73 562.60
+4.75 562.63 6.06 563.00 5.36 563.60 5.85 563.75 5.00 564.35 6.19 564.50
+6.25 564.76 4.71 565.51 6.25 565.63 5.00 566.61 6.78 566.66 5.00 567.10
+4.88 567.66 6.25 567.95 6.25 568.30 4.88 569.10 4.77 569.51 6.25 569.60
+6.13 570.35 4.85 570.63 6.25 570.71 5.00 571.30 4.64 571.31 6.25 572.30
+4.66 572.62 6.06 572.90 5.00 573.60 6.13 573.78 5.36 574.11 6.25 574.66
+4.76 574.72 6.25 575.51 6.25 575.66 4.71 576.30 4.77 576.80 6.25 577.31
+5.00 577.72 6.25 578.50 4.91 578.72 6.55 578.90 6.25 579.50 5.00 579.72
+5.16 579.73 6.25 580.62 6.72 581.10 4.71 581.67 4.77 581.68 6.25 582.61
+6.17 582.71 4.84 583.63 6.15 583.66 4.75 583.81 5.61 583.90 4.85 584.67
+4.67 584.90 6.25 585.50 6.25 585.95 4.68 586.63 4.69 587.15 6.25 587.30
+4.67 587.68 6.39 588.60 6.25 588.73 4.78 588.90 6.15 589.50 4.76 589.74
+6.25 590.30 5.00 590.73 4.55 591.25 6.25 591.50 6.25 591.69 4.68 592.31
+6.25 592.64 5.18 593.20 6.25 593.64 4.79 594.05 6.25 594.64 4.74 595.25
+4.67 595.31 6.12 595.72 4.76 596.30 11.90 597.10 10.69 597.20 12.00
+597.69 12.00 597.73 10.69 598.15 10.00 598.50 11.97 599.31 10.00 599.69
+11.91 600.10 10.84 600.13 12.22 600.83 10.31 600.86 11.72 601.74 10.56
+601.80 11.25 602.78 11.98 602.94 10.00 603.72 12.08 603.94 10.00 604.54
+10.00 604.70 11.96 605.14 11.25 605.24 10.83 605.69 11.92 605.80 10.00
+606.70 11.72 607.03 10.00 607.54 10.00 608.14 11.25 608.23 12.15 608.72
+10.00 609.53 12.09 609.78 10.86 610.13 10.63 610.33 11.96 610.76 12.05
+610.80 10.00 611.79 12.22 611.84 10.00 612.71 10.53 612.80 11.93 613.71
+12.10 613.80 10.68 614.13 12.27 614.75 10.43 615.14 11.25 615.33 10.76
+616.33 12.19 616.43 10.00 616.80 11.95 617.43 10.56 617.45 10.54 618.24
+24.13 618.28 23.96 619.01 27.62 619.51 27.31 619.76 27.81 620.56 27.81
+620.78 26.25 620.80 26.25 620.85 27.80 621.74 27.78 622.00 27.32 622.74
+26.36 623.08 28.75 623.32 27.79 623.71 26.31 624.18 27.34 624.98 27.82
+625.18 27.83 625.45 27.35 625.95 27.74 626.28 27.30 626.75 26.34 627.34
+27.82 627.54 28.75 627.72 26.38 628.88 26.25 629.05 27.78 629.78 28.84
+629.93 27.32 630.55 27.75 630.68 27.27 631.13 26.27 631.51 27.80 631.94
+28.75 632.54 26.25 632.89 27.29 633.33 28.88 633.76 26.45 633.94 27.85
+634.76 26.33 634.85 27.74 635.68 27.82 635.84 26.35 636.08 27.84 636.46
+27.34 637.04 27.74 637.19 27.32 637.70 27.34 638.31 27.84 638.50 27.78
+638.65 27.33 639.45 27.79 639.83 26.34 640.22 27.39 640.68 27.83 641.45
+27.31 641.66 27.80 642.08 27.80 642.18 27.32 642.76 27.93 642.86 26.25
+643.75 27.32 644.24 27.77 644.38 27.30 644.74 27.83 645.80 28.80 645.84
+26.47 646.13 26.47 646.76 27.79 647.26 27.83 647.28 27.37 647.98 26.25
+648.34 28.75 648.93 28.91 649.28 27.35 649.55 27.83 649.56 27.32 650.31
+27.31 650.81 28.91 651.19 27.36 651.86 44.65 651.88 44.80 652.48 61.92
+652.81 59.86 653.44 61.53 653.93 59.26 654.33 62.50 654.46 61.81 654.48
+59.63 655.36 61.30 655.91 59.75 656.48 61.37 656.85 59.79 657.16 59.74
+657.18 61.45 658.29 59.43 658.30 61.82 658.78 59.69 659.23 61.36 659.78
+61.67 659.86 59.89 660.54 61.62 660.86 59.75 661.48 61.36 661.83 59.61
+662.53 61.57 662.76 59.69 662.86 61.27 662.88 60.00 663.78 61.25 663.84
+60.00 664.75 59.88 665.21 61.25 665.54 59.97 665.56 61.61 666.83 59.81
+666.87 61.69 667.13 60.00 667.77 61.29 668.09 59.87 668.10 61.34 668.68
+61.33 669.08 59.67 669.58 61.33 669.73 59.99 670.73 61.18 670.78 59.91
+671.58 59.43 671.59 61.83 672.46 59.94 672.85 71.25 672.88 70.88 673.71
+84.94 673.72 84.94 674.18 95.00 674.79 94.60 674.82 93.24 675.91 93.98
+675.94 92.57 676.53 94.05 676.80 92.50 677.53 93.30 677.80 94.08 677.94
+92.50 678.41 94.15 678.80 93.38 679.08 94.05 679.73 94.08 679.85 93.29
+680.74 92.50 681.03 94.03 681.43 92.50 681.93 94.54 682.30 94.01 682.53
+93.24 682.96 94.06 683.24 93.38 683.86 92.50 684.26 94.02 684.70 94.01
+685.15 93.35 685.81 93.07 685.85 94.39 686.68 93.99 687.05 93.35 687.85
+94.65 687.91 92.49 688.33 93.08 688.58 94.08 688.90 92.40 689.21 94.09
+689.88 94.12 690.29 93.30 690.79 95.00 690.90 93.23 691.74 93.95 692.19
+79.83 692.20 79.83 693.03 42.57 693.04 42.57 693.87 5.81 693.88 5.81
+694.19 -0.79 694.72 0.00 695.55 -5.67 695.73 -6.41 695.88 -4.74 696.83
+-6.32 697.13 -4.63 697.83 -6.61 697.86 -4.90 698.74 -6.25 698.91 -4.63
+698.92 -4.63 699.74 -6.25 700.34 -6.25 700.58 -4.63 700.92 -6.70 700.96
+-5.30 701.48 -5.00 701.88 -6.25 702.43 -6.25 702.92 -4.87 703.55 -5.33
+703.81 -6.13 704.03 -6.25 704.54 -5.00 704.84 -6.11 704.84 -4.83 705.86
+-4.82 706.14 -6.25 706.73 -4.88 706.83 -6.10 707.34 -6.25 707.94 -5.00
+708.88 -4.85 708.93 -6.16 709.14 -6.25 709.73 -4.62 709.95 -4.82 710.33
+-6.10 710.68 -6.25 710.94 -4.43 711.85 -4.76 711.92 -6.03 712.88 -4.64
+712.93 -6.18 713.48 -5.64 713.83 -4.62 714.53 -6.25 714.85 -4.76 714.90
+-6.25 715.53 -4.89 715.88 -4.85 715.92 -6.08 716.83 -4.58 716.95 -6.25
+717.86 -6.11 717.91 -4.63 718.54 -6.25 718.90 -4.60 719.54 -6.25 719.86
+-5.00 719.92 -6.25 720.38 -4.60 720.96 -4.89 721.34 -6.25 721.86 -6.27
+721.95 -5.25 722.73 -6.25 722.91 -4.87 723.74 -6.25 723.91 -4.87 724.86
+-4.66 724.90 -6.12 725.54 -4.62 725.54 -6.25 725.88 -4.90 726.13 -6.25
+726.86 -6.61 726.90 -4.62 727.86 -6.15 727.87 -4.66 728.68 -6.25 728.87
+-4.84 729.53 -4.60 729.88 -5.98 730.13 -5.00 730.48 -6.25 730.88 -6.15
+730.92 -4.63 731.74 -6.25 731.94 -4.61 732.53 -6.25 733.03 -5.00 733.53
+-4.86 733.94 -6.62 734.88 -6.25 734.93 -4.66 735.20 -5.32 735.63 -11.37
+736.28 -11.89 736.53 -10.70 736.88 -12.21 736.99 -10.00 737.94 -10.74
+737.94 -11.79 738.90 -10.00 739.00 -11.25 739.94 -12.13 739.99 -10.00
+740.34 -11.25 740.88 -10.53 740.92 -10.70 741.53 -12.29 741.89 -10.00
+742.14 -11.25 742.74 -10.00 742.98 -11.25 743.91 -10.00 743.97 -11.85
+744.54 -11.25 744.96 -10.57 745.48 -10.00 745.73 -11.92 745.98 -11.93
+746.74 -10.81 746.94 -10.39 746.98 -12.15 747.88 -10.68 747.94 -11.53
+748.94 -12.24 749.14 -10.00 749.74 -10.00 750.00 -11.61 750.34 -10.00
+750.95 -11.25 751.00 -10.73 751.54 -11.25 751.88 -11.85 752.01 -10.00
+752.74 -11.25 752.91 -10.00 753.91 -12.04 754.01 -10.00 755.01 -12.17
+755.13 -10.58 755.20 -11.06 756.02 -33.57 756.04 -32.56 756.50 -44.73
+756.96 -44.85 757.33 -43.10 757.72 -44.11 758.28 -32.30 759.03 -33.55
+759.14 -32.36 759.90 -33.60 759.98 -32.08 760.94 -33.76 761.01 -32.30
+761.34 -33.75 761.69 -32.84 762.54 -32.43 762.73 -33.83 762.96 -32.32
+763.01 -33.82 763.73 -32.39 764.34 -33.75 764.93 -32.18 764.97 -33.75
+765.53 -32.16 765.54 -33.75 766.13 -33.75 766.73 -32.20 767.13 -33.75
+767.73 -32.07 768.03 -33.89 768.14 -32.79 768.96 -32.75 769.03 -33.75
+769.54 -32.50 769.92 -33.83 770.94 -32.20 771.02 -33.56 771.33 -32.36
+771.99 -41.61 772.00 -41.61 772.78 -55.71 772.94 -54.49 772.96 -55.61
+774.00 -56.25 774.13 -54.31 775.08 -54.86 775.14 -55.49 775.38 -55.17
+775.94 -53.97 776.31 -55.30 776.81 -54.97 777.19 -54.94 777.74 -56.25
+778.34 -56.25 778.49 -54.98 779.44 -54.90 779.51 -55.26 779.73 -55.40
+779.95 -54.19 780.62 -54.85 780.73 -56.25 781.50 -54.83 781.95 -55.48
+782.15 -54.93 782.73 -55.38 782.95 -54.35 783.01 -56.25 783.94 -55.52
+783.97 -54.05 784.95 -54.08 785.00 -55.62 785.98 -56.25 786.00 -54.84
+786.35 -54.95 786.63 -55.24 787.16 -55.35 787.89 -53.85 788.00 -53.75
+788.79 -74.77 788.80 -74.77 788.93 -77.91 789.96 -78.18 790.13 -76.25
+790.57 -78.01 791.00 -76.25 791.73 -76.25 791.95 -77.74 792.53 -77.83
+792.88 -76.25 793.06 -78.25 793.33 -76.25 794.43 -76.59 794.53 -78.78
+795.06 -76.54 795.13 -77.88 795.68 -77.50 796.07 -76.25 796.96 -78.28
+797.13 -76.25 797.48 -76.77 797.73 -78.14 798.13 -77.78 798.83 -76.80
+798.94 -76.62 799.33 -78.48 799.81 -76.82 800.07 -78.46 800.94 -76.25
+801.07 -77.89 801.73 -78.11 802.18 -76.65 802.98 -76.25 803.04 -78.19
+803.28 -75.93 803.81 -88.89 804.07 -89.13 804.25 -87.78 805.02 -88.99
+805.43 -87.42 805.81 -87.22 806.01 -89.14 806.93 -88.75 806.97 -87.15
+807.33 -89.11 807.58 -87.50 808.13 -88.75 808.74 -87.50 809.06 -87.17
+809.23 -88.81 810.08 -89.10 810.53 -87.36 810.93 -87.32 811.10 -88.75
+811.54 -87.50 811.93 -89.08 812.53 -88.71 813.00 -87.37 813.16 -87.81
+813.99 -89.04 814.09 -88.75 814.53 -87.14 815.00 -87.88 815.09 -88.93
+816.04 -87.18 816.08 -88.96 816.53 -87.38 816.94 -88.75 818.00 -89.48
+818.04 -87.41 818.73 -87.50 819.00 -88.92 819.04 -86.99 819.14 -88.75
+820.01 -87.21 820.06 -88.87 820.88 -88.75 821.55 -69.69 821.56 -69.69
+822.39 -32.56 822.40 -32.56 823.22 0.25 823.24 0.00 824.05 5.54 824.25
+6.04 824.73 4.71 825.01 6.48 825.13 4.85 826.01 4.83 826.41 5.63 826.93
+6.25 827.07 4.61 827.54 5.00 827.73 6.25 828.54 6.25 829.06 4.65 829.13
+4.82 829.73 6.11 830.33 4.69 830.54 6.25 830.93 6.25 831.02 4.85 832.10
+6.75 832.13 5.00 832.73 4.67 833.01 6.44 834.08 6.25 834.11 4.83 834.53
+4.84 834.88 6.13 835.11 4.83 835.14 6.25 836.03 5.14 836.33 6.25 836.94
+6.25 837.10 4.63 837.54 6.25 838.02 4.81 838.78 4.66 839.11 6.17 839.73
+4.80 840.03 6.23 840.10 4.87 840.14 6.25 841.13 4.71 841.53 6.25 841.78
+6.25 842.33 4.85 843.02 6.12 843.09 4.70 843.73 6.25 844.14 4.79 844.34
+6.25 845.03 4.81 845.08 6.25 845.09 4.67 846.38 6.25 846.73 4.63 847.08
+4.80 847.10 6.25 847.94 6.25 848.04 4.65 848.53 6.09 848.54 5.00 849.53
+4.76 850.09 6.04 850.15 6.25 850.73 4.82 851.14 6.56 851.15 5.00 851.93
+5.00 852.05 6.34 853.10 5.00 853.34 6.25 854.04 6.14 854.05 4.71 854.94
+5.00 855.05 6.41 855.16 6.25 855.35 5.25 856.54 6.25 856.78 4.84 857.03
+4.83 857.66 9.35 857.68 9.35 858.05 12.29 858.94 11.27 859.26 10.72
+859.73 10.00 860.07 11.87 860.28 11.19 860.50 10.80 861.09 12.17 861.10
+10.72 861.98 11.25 862.16 10.46 863.10 10.62 863.16 12.09 864.08 10.58
+864.15 12.18 864.73 11.82 865.06 10.72 865.34 11.25 865.93 10.66 866.15
+12.09 866.54 10.00 867.15 11.64 867.53 10.69 867.93 12.18 868.13 10.53
+869.14 10.66 869.19 11.89 869.53 10.00 870.13 12.09 870.54 11.25 871.08
+10.67 871.13 10.44 871.45 11.18 872.08 10.69 872.33 12.29 872.93 11.25
+873.53 10.66 873.88 10.15 874.47 23.81 874.48 23.81 874.78 33.75 875.38
+32.38 875.73 33.75 876.24 32.78 876.33 33.75 877.09 33.80 877.19 32.50
+878.08 33.51 878.09 32.10 878.75 32.88 879.20 33.71 879.73 33.59 880.10
+32.11 880.94 33.75 881.14 32.51 881.20 33.75 881.53 32.21 882.73 33.83
+882.74 32.50 883.09 32.49 883.11 33.75 883.93 32.15 884.13 33.66 885.10
+33.75 885.14 32.44 885.93 32.39 886.14 33.78 886.59 33.32 886.73 32.49
+887.09 33.66 887.10 32.17 888.10 32.26 888.21 33.75 889.15 32.34 889.19
+33.61 889.73 32.23 890.15 33.60 891.19 32.31 891.21 33.75 891.36 32.85
+892.10 33.79 892.12 33.75 892.18 32.21 893.11 32.11 893.38 33.75 894.19
+34.16 894.58 31.25 894.64 31.88 895.47 45.74 895.48 45.74 895.88 56.25
+896.42 55.34 897.13 53.67 897.44 55.27 897.73 54.19 898.03 54.85 898.76
+55.32 898.96 54.89 899.21 56.25 899.85 55.31 900.05 54.89 900.98 55.33
+901.13 54.91 902.12 54.08 902.16 55.46 902.22 53.89 903.01 55.26 903.22
+55.51 903.23 54.92 904.03 55.39 904.15 54.35 904.78 54.87 905.20 56.25
+906.16 53.92 906.22 55.46 907.02 54.93 907.21 55.34 907.49 55.32 907.66
+54.99 908.23 54.28 908.45 55.35 909.18 54.90 909.66 55.34 909.83 54.94
+910.53 55.36 910.62 55.36 911.27 54.83 911.63 55.38 911.98 54.93 912.53
+53.93 912.78 55.28 913.19 56.25 913.41 54.90 914.31 52.81 914.78 66.25
+914.80 65.95 915.46 77.65 915.93 77.90 916.23 76.47 916.54 76.25 917.20
+78.09 917.43 77.50 917.54 76.71 918.33 77.86 918.59 76.82 919.18 76.60
+919.25 77.50 920.18 76.14 920.24 77.50 921.14 77.95 921.33 76.79 922.16
+78.07 922.19 76.61 922.38 77.50 922.53 76.25 923.20 76.59 923.24 77.84
+924.20 78.05 924.74 76.25 925.19 77.96 925.34 76.73 926.15 76.08 926.53
+78.16 927.20 76.33 927.26 77.81 927.87 76.87 928.21 78.23 928.53 76.65
+929.02 78.23 929.20 78.09 929.34 76.25 930.21 76.60 930.23 78.10 931.21
+76.50 931.21 77.50 932.20 76.80 932.27 77.74 933.21 77.84 933.25 76.56
+933.33 77.76 934.11 76.80 934.26 76.25 934.93 77.81 935.23 78.24 935.78
+76.25 935.93 77.46 936.40 69.36 936.64 76.40 937.20 88.90 937.74 87.50
+938.22 89.16 938.34 88.75 938.48 87.82 939.16 87.13 939.26 88.75 940.16
+89.12 940.17 87.70 940.93 89.18 941.22 87.20 942.15 87.50 942.26 89.25
+943.02 88.92 943.28 87.50 943.53 87.50 943.88 88.80 944.26 89.27 944.53
+87.50 945.14 88.75 945.31 87.88 946.18 87.49 946.53 88.75 947.20 88.78
+947.54 87.50 948.14 88.91 948.20 87.50 948.74 87.50 948.93 89.10 949.28
+87.34 949.73 89.27 950.28 89.08 950.34 87.50 951.19 89.02 951.20 87.50
+952.24 88.65 952.28 87.37 953.17 88.93 953.28 87.50 953.44 87.86 953.53
+88.81 954.43 88.54 954.88 87.40 955.20 87.41 955.24 89.02 956.20 88.85
+956.28 87.19 956.94 88.75 957.63 71.36 957.64 71.39 958.47 34.55 958.48
+34.23 959.31 -0.30 959.32 -0.30 959.64 -5.97 960.54 -6.25 960.93 -4.87
+961.13 -5.00 961.40 -6.32 962.13 -6.25 962.19 -4.87 963.23 -4.64 963.34
+-6.25 963.58 -6.25 963.93 -4.84 964.95 -5.32 965.18 -6.25 965.20 -6.25
+965.24 -4.65 966.13 -5.63 966.21 -4.88 967.26 -6.16 967.53 -4.67 968.25
+-6.70 968.53 -4.85 969.14 -5.00 969.34 -6.25 969.73 -4.88 970.22 -6.12
+970.32 -4.81 970.34 -6.25 971.27 -4.66 971.53 -6.25 972.13 -6.25 972.31
+-4.84 973.21 -4.81 973.28 -6.25 973.93 -4.84 974.24 -6.15 975.13 -4.65
+975.24 -6.11 975.33 -4.61 975.54 -6.25 976.13 -6.25 976.30 -4.75 977.16
+-5.29 977.22 -6.25 978.31 -6.17 978.34 -5.00 978.93 -6.25 979.28 -4.82
+979.54 -5.00 980.14 -6.25 980.34 -5.00 980.73 -6.12 981.24 -5.23 981.27
+-6.68 982.28 -5.00 982.32 -5.98 983.24 -6.12 983.27 -4.62 984.13 -4.81
+984.35 -6.37 985.26 -4.63 985.34 -6.25 985.53 -6.25 985.93 -4.64 986.22
+-4.67 986.30 -6.25 987.25 -6.25 987.32 -4.85 987.93 -4.83 988.30 -6.02
+989.28 -4.64 989.32 -6.08 990.32 -4.88 990.36 -6.25 990.93 -4.82 991.20
+-5.63 991.35 -6.12 991.53 -4.79 992.30 -5.78 992.53 -4.78 992.93 -6.25
+993.25 -4.79 994.28 -4.60 994.35 -6.65 995.25 -4.81 995.30 -6.07 995.54
+-6.25 995.73 -4.87 996.30 -4.85 996.33 -6.25 997.30 -4.90 997.94 -8.17
+997.96 -8.12 998.37 -12.38 999.38 -10.00 999.58 -11.86 999.83 -10.00
+1000.36 -12.17 1000.53 -11.25 1000.74 -10.00 1001.37 -10.00 1001.63
+-12.13 1002.26 -11.72 1002.94 -10.00 1003.33 -10.56 1003.58 -12.22
+1003.93 -12.28 1004.30 -10.00 1004.74 -12.17 1005.27 -10.47 1006.31
+-10.48 1006.34 -11.92 1006.36 -11.92 1006.37 -10.00 1007.34 -11.88
+1007.38 -10.00 1008.27 -10.67 1008.36 -11.98 1009.13 -11.25 1009.37
+-10.57 1009.73 -11.25 1009.94 -10.00 1011.14 -10.00 1011.26 -11.89
+1011.41 -10.78 1011.73 -12.26 1012.32 -12.17 1012.93 -10.63 1013.13
+-11.86 1013.36 -10.27 1014.28 -11.79 1014.38 -10.00 1015.34 -12.16
+1015.53 -10.80 1015.73 -11.90 1016.33 -10.54 1017.11 -10.43 1017.23
+-12.50 1017.28 -12.39 1017.99 -33.65 1018.28 -34.29 1018.93 -32.37
+1019.31 -32.04 1019.35 -33.75 1020.34 -33.85 1020.40 -32.50 1020.73
+-33.75 1021.43 -32.08 1021.93 -32.26 1022.13 -33.86 1022.34 -32.81
+1022.74 -33.75 1023.35 -32.38 1023.40 -33.75 1024.29 -32.16 1024.37
+-33.91 1025.14 -33.75 1025.39 -32.01 1026.13 -33.75 1026.39 -32.21
+1026.93 -32.25 1027.29 -33.84 1027.40 -33.75 1027.40 -32.50 1028.23
+-33.75 1028.78 -32.35 1029.34 -34.24 1029.74 -32.23 1030.03 -33.75
+1030.43 -32.50 1031.31 -33.79 1031.41 -32.43 1031.93 -33.55 1032.36
+-32.09 1032.40 -32.14 1032.43 -33.75 1033.33 -33.77 1033.53 -32.33
+1034.28 -33.75 1034.33 -32.25 1035.51 -31.72 1035.75 -36.09 1035.76
+-36.09 1036.58 -55.56 1036.94 -56.25 1037.36 -54.44 1037.48 -55.20
+1037.58 -54.90 1038.33 -55.70 1038.66 -54.94 1039.53 -55.33 1039.69
+-54.98 1040.41 -53.81 1040.74 -56.25 1040.81 -55.29 1041.35 -53.96
+1041.65 -54.99 1041.75 -55.24 1042.59 -54.89 1042.73 -56.25 1043.93
+-55.31 1044.06 -54.98 1044.70 -54.88 1044.93 -56.25 1045.03 -55.45
+1045.38 -53.90 1045.93 -55.40 1046.23 -54.95 1046.93 -54.94 1047.18
+-56.25 1047.79 -54.97 1048.32 -55.51 1048.37 -54.44 1049.16 -55.31
+1049.37 -53.85 1049.94 -56.13 1050.33 -55.55 1050.37 -54.20 1051.34
+-54.33 1051.38 -56.00 1052.11 -54.91 1052.37 -55.36 1052.56 -55.30
+1053.34 -53.77 1053.48 -55.47 1053.98 -54.89 1054.32 -53.99 1054.73
+-55.49 1055.39 -55.38 1055.43 -53.71 1056.06 -52.98 1056.73 -75.58
+1056.76 -75.37 1057.13 -78.41 1057.73 -78.38 1058.35 -76.27 1058.46
+-76.25 1058.93 -77.74 1059.41 -77.92 1059.60 -76.80 1060.36 -76.25
+1060.45 -78.29 1061.40 -78.16 1061.45 -76.25 1062.17 -76.79 1062.34
+-78.14 1062.74 -77.50 1063.41 -76.25 1063.86 -77.52 1063.93 -76.25
+1064.53 -78.18 1065.13 -76.25 1065.40 -77.50 1065.48 -76.25 1066.10
+-76.57 1066.38 -77.91 1067.36 -76.19 1067.44 -77.83 1068.13 -77.83
+1068.45 -76.65 1068.74 -77.50 1069.03 -76.78 1069.74 -76.25 1069.97
+-77.93 1070.36 -78.12 1070.63 -76.25 1071.13 -76.25 1071.44 -77.93
+1072.34 -76.25 1072.71 -78.89 1072.72 -78.89 1073.13 -88.87 1074.22
+-87.34 1074.36 -88.95 1074.53 -89.25 1075.13 -87.50 1075.38 -87.49
+1075.42 -88.80 1076.33 -87.48 1076.68 -88.93 1076.93 -87.11 1077.28
+-89.14 1077.93 -89.17 1078.36 -87.47 1079.34 -87.50 1079.40 -88.98
+1079.44 -88.97 1079.48 -87.50 1080.42 -88.78 1080.46 -87.64 1081.46
+-88.96 1081.55 -87.33 1082.45 -87.50 1082.54 -89.04 1083.34 -87.50
+1083.46 -89.17 1084.28 -88.95 1084.44 -87.28 1084.49 -88.75 1084.88
+-87.50 1085.38 -89.32 1085.43 -87.55 1086.74 -87.50 1086.98 -88.75
+1087.34 -87.50 1087.48 -89.33 1088.13 -89.36 1088.48 -87.24 1088.78
+-88.82 1089.33 -87.50 1089.73 -88.71 1090.35 -76.55 1090.36 -76.55
+1091.19 -39.54 1091.20 -39.54 1092.02 -5.66 1092.39 -4.57 1092.74 -6.25
+1093.33 -4.57 1093.53 -6.25 1093.80 -5.82 1094.53 2.00 1094.56 1.16
+1095.13 6.25 1095.44 4.69 1095.50 6.25 1096.34 6.25 1096.98 4.70 1097.41
+4.67 1097.45 6.87 1098.42 6.25 1098.60 5.27 1099.13 6.25 1099.41 4.74
+1099.73 4.89 1100.42 6.07 1100.50 6.25 1101.22 4.61 1101.45 6.10 1101.58
+4.88 1102.18 4.56 1102.22 5.69 1103.14 6.25 1103.43 4.63 1104.44 6.16
+1104.50 4.65 1104.68 5.00 1104.93 6.25 1105.53 6.11 1105.93 4.88 1106.46
+6.30 1107.13 4.77 1107.53 6.40 1107.93 4.70 1108.42 4.65 1108.50 5.85
+1108.94 6.25 1109.50 4.82 1110.42 6.44 1110.48 4.93 1110.53 4.67 1110.74
+6.25 1111.51 6.28 1112.13 4.68 1112.45 5.00 1112.73 6.18 1113.14 6.25
+1113.53 4.84 1114.43 4.66 1114.48 6.24 1114.74 6.25 1115.22 4.87 1115.82
+4.91 1115.93 6.17 1116.98 5.63 1117.13 4.65 1117.42 4.67 1117.54 6.25
+1118.28 6.25 1118.50 4.64 1119.44 6.15 1119.46 4.81 1119.93 6.25 1120.44
+4.53 1120.73 4.70 1121.34 6.25 1121.47 4.83 1121.63 6.25 1122.54 6.25
+1122.58 4.83 1123.44 4.69 1123.48 6.25 1124.13 4.99 1124.78 6.25 1125.38
+6.25 1125.52 4.69 1126.23 6.25 1126.28 5.32 1126.51 4.86 1126.56 6.25
+1127.50 4.80 1127.73 6.25 1128.34 6.25 1128.50 4.81 1129.49 5.26 1129.55
+6.39 1130.13 5.00 1130.54 6.38 1131.08 4.89 1131.49 6.62 1131.73 6.12
+1132.33 4.85 1132.43 4.82 1132.49 6.39 1133.49 4.63 1133.93 6.25 1134.46
+4.60 1134.87 6.65 1134.88 6.68 1135.54 12.07 1135.73 12.20 1135.88
+10.00 1136.56 11.25 1137.23 10.00 1137.58 10.00 1138.18 12.18 1138.43
+10.00 1138.56 11.52 1139.46 12.21 1139.55 10.69 1140.47 10.00 1140.55
+11.49 1140.93 12.16 1141.56 10.40 1141.67 12.16 1142.33 10.00 1142.48
+10.00 1142.73 12.19 1143.50 12.10 1143.52 10.62 1144.45 10.68 1144.52
+11.54 1145.13 10.00 1145.53 11.68 1146.33 12.16 1146.48 10.57 1147.25
+10.80 1147.46 11.78 1147.48 11.78 1147.54 10.66 1148.48 10.53 1148.93
+12.20 1149.53 11.79 1149.54 10.71 1150.13 11.88 1150.47 10.61 1151.49
+11.75 1151.60 10.00 1151.94 11.25 1152.48 10.79 1152.53 10.32 1152.55
+11.82 1153.48 10.61 1153.56 12.16 1154.49 12.14 1154.60 10.00 1155.57
+10.59 1155.83 11.25 1156.14 10.44 1156.71 23.47 1156.72 23.47 1157.34
+34.05 1157.57 32.50 1158.13 33.78 1158.56 33.88 1159.03 32.85 1159.59
+33.82 1159.60 32.50 1160.13 32.36 1160.60 33.75 1161.13 33.75 1161.38
+32.22 1161.98 33.39 1162.59 32.06 1162.93 33.75 1162.97 32.79 1163.66
+33.40 1163.73 32.17 1164.33 33.75 1164.71 32.19 1165.56 33.75 1165.80
+32.85 1166.56 33.57 1166.58 32.36 1167.13 33.75 1167.50 32.02 1167.73
+33.45 1168.33 32.25 1168.59 32.84 1168.94 33.75 1169.56 32.50 1169.59
+33.75 1170.57 33.89 1170.75 32.82 1171.53 33.92 1171.62 32.06 1172.13
+32.32 1172.38 33.75 1172.73 32.28 1173.16 33.35 1173.62 32.11 1173.64
+33.75 1174.36 33.65 1175.19 48.42 1175.20 48.84 1175.58 56.25 1176.54
+54.92 1176.76 55.33 1176.93 55.31 1177.64 54.88 1177.93 56.25 1178.18
+54.20 1178.74 54.92 1179.34 56.25 1179.94 54.11 1180.22 55.34 1180.24
+55.24 1180.56 53.92 1181.33 56.25 1181.65 54.98 1182.33 55.44 1182.53
+54.40 1183.33 55.36 1183.55 54.38 1183.62 54.46 1184.36 55.31 1184.52
+54.00 1184.58 55.64 1185.56 55.40 1185.93 54.04 1186.54 55.47 1186.56
+54.21 1187.48 54.08 1187.57 55.46 1188.14 56.25 1188.59 54.95 1188.93
+56.25 1189.24 54.88 1189.58 54.98 1189.93 55.42 1190.74 54.92 1190.94
+55.37 1191.17 55.28 1191.64 53.95 1192.56 56.25 1192.82 54.51 1192.86
+54.51 1193.67 71.31 1193.68 71.44 1194.12 77.76 1194.55 76.15 1195.33
+77.50 1195.60 76.25 1195.64 77.75 1196.61 78.15 1196.74 76.25 1197.54
+76.47 1197.61 78.15 1197.94 76.25 1198.69 77.57 1199.08 77.93 1199.33
+76.25 1199.60 76.25 1200.31 77.53 1200.67 77.54 1200.68 76.25 1201.68
+76.25 1201.72 78.29 1202.35 76.71 1202.57 78.18 1203.58 78.06 1203.69
+76.25 1203.96 76.25 1204.61 77.59 1204.71 76.25 1204.95 78.23 1205.85
+78.14 1206.11 76.25 1206.75 77.98 1206.82 76.74 1207.58 77.87 1207.62
+76.25 1208.59 77.96 1208.64 76.25 1209.17 76.78 1209.60 77.99 1209.69
+77.50 1210.41 76.25 1210.95 77.92 1211.27 74.02 1211.34 74.53 1211.91
+89.07 1212.76 88.89 1212.77 87.50 1213.45 88.79 1213.58 87.20 1214.56
+87.50 1214.68 89.20 1214.70 89.09 1214.95 87.16 1215.65 88.97 1215.69
+87.08 1216.61 87.50 1216.67 89.12 1217.65 87.40 1217.71 88.75 1218.61
+89.10 1218.71 87.50 1219.15 87.42 1219.65 88.90 1220.01 88.47 1220.45
+87.86 1220.61 87.48 1220.71 89.13 1221.59 88.86 1221.71 87.22 1222.67
+87.65 1222.71 89.17 1223.35 88.95 1223.71 86.82 1223.95 88.95 1224.55
+87.45 1225.45 87.75 1225.59 89.03 1225.62 88.75 1226.45 58.85 1226.46
+58.43 1227.29 21.74 1227.30 21.20 1228.13 -2.30 1228.14 -2.30 1228.67
+-6.47 1229.55 -4.88 1229.67 -6.76 1229.95 -6.25 1230.55 -4.90 1230.69
+-6.25 1231.50 -4.62 1231.61 -4.59 1231.67 -6.69 1232.61 -4.83 1232.69
+-6.25 1233.67 -6.31 1233.72 -4.72 1234.61 -6.11 1234.66 -4.62 1235.10
+-6.25 1235.35 -4.84 1235.72 -6.40 1235.90 -5.31 1236.73 -4.77 1236.76
+-6.25 1237.73 -4.66 1237.95 -6.14 1238.68 -4.64 1238.85 -6.15 1239.10
+-6.25 1239.35 -4.64 1240.35 -4.80 1240.73 -6.20 1240.90 -6.25 1240.96
+-4.91 1241.65 -6.25 1241.69 -4.63 1242.69 -6.04 1242.72 -4.87 1243.55
+-4.62 1243.65 -6.34 1244.70 -6.25 1244.73 -4.61 1245.69 -6.63 1245.73
+-4.60 1245.95 -6.25 1246.36 -4.86 1246.66 -4.86 1246.73 -6.25 1247.55
+-4.83 1247.77 -6.25 1248.40 -6.25 1248.68 -4.64 1249.35 -4.66 1249.37
+-6.25 1250.15 -4.83 1250.56 -6.25 1251.36 -6.25 1251.63 -4.94 1251.69
+-4.65 1251.96 -6.25 1252.65 -4.64 1252.69 -6.16 1253.71 -6.27 1253.75
+-4.84 1254.65 -6.09 1254.74 -4.84 1255.15 -4.89 1255.71 -6.25 1256.08
+-5.31 1256.35 -6.25 1256.71 -6.25 1256.85 -5.00 1257.70 -6.15 1257.75
+-4.65 1258.71 -4.64 1258.75 -6.19 1259.66 -4.64 1259.77 -6.25 1260.74
+-4.82 1260.77 -6.25 1260.97 -5.00 1261.16 -6.25 1261.83 -6.25 1261.86
+-4.62 1262.69 -6.25 1263.15 -4.86 1263.64 -4.81 1263.77 -6.25 1264.30
+-6.25 1264.36 -4.88 1265.55 -6.23 1265.72 -4.85 1266.35 -4.88 1266.71
+-6.07 1267.25 -5.30 1267.58 -5.70 1267.63 -5.30 1267.73 -6.19 1268.69
+-4.85 1269.15 -6.25 1269.75 -4.83 1269.77 -6.25 1270.69 -4.95 1270.97
+-9.46 1270.98 -9.52 1271.78 -11.87 1272.09 -10.77 1272.55 -12.21 1272.76
+-10.64 1273.16 -11.25 1273.68 -11.61 1273.75 -10.61 1274.36 -11.25
+1274.73 -10.49 1275.56 -11.25 1275.79 -10.00 1276.76 -10.49 1276.78
+-12.12 1277.18 -10.76 1277.68 -11.86 1277.73 -10.62 1278.05 -12.12
+1278.68 -10.41 1278.95 -12.16 1279.55 -10.56 1279.95 -11.76 1280.55
+-12.21 1280.79 -10.40 1281.71 -11.58 1281.76 -10.75 1282.55 -10.00
+1282.68 -11.72 1282.75 -11.59 1283.16 -10.00 1283.78 -11.40 1284.17
+-10.00 1284.73 -12.13 1284.76 -10.60 1285.69 -12.23 1285.75 -10.62
+1286.68 -12.06 1286.78 -10.50 1287.15 -10.66 1287.75 -11.88 1287.81
+-12.16 1288.37 -10.00 1288.71 -12.28 1289.25 -10.00 1290.15 -10.24
+1290.27 -11.71 1290.32 -11.41 1291.05 -33.68 1291.45 -33.83 1291.71
+-32.80 1292.55 -32.33 1292.81 -33.74 1292.95 -33.72 1292.96 -32.50
+1293.70 -33.55 1293.80 -32.00 1294.55 -33.79 1294.72 -32.50 1295.80
+-33.95 1296.05 -32.09 1296.71 -32.47 1296.79 -33.80 1297.76 -34.08
+1297.82 -32.15 1297.90 -32.50 1298.15 -33.75 1298.83 -33.75 1299.10
+-32.41 1299.73 -32.16 1299.78 -33.75 1300.72 -33.84 1300.77 -32.39
+1301.70 -32.26 1301.78 -33.76 1302.15 -33.78 1302.56 -32.50 1302.95
+-32.43 1303.15 -33.72 1303.81 -33.89 1304.55 -32.41 1304.95 -32.04
+1305.17 -33.75 1305.73 -34.49 1306.16 -32.50 1306.73 -26.91 1307.09
+-40.84 1307.10 -41.01 1307.51 -56.25 1308.20 -54.91 1308.35 -56.25
+1309.39 -54.92 1309.51 -55.33 1309.73 -54.22 1309.79 -55.39 1310.78
+-54.18 1310.96 -56.25 1311.36 -56.25 1311.73 -54.17 1312.79 -55.55
+1312.83 -54.09 1313.55 -53.75 1313.78 -55.73 1314.16 -56.25 1314.35
+-54.96 1314.85 -56.25 1315.46 -54.89 1315.81 -56.25 1316.25 -54.95
+1316.35 -54.09 1317.16 -56.25 1317.33 -55.31 1317.79 -54.92 1318.55
+-54.93 1318.82 -55.46 1318.90 -54.97 1319.37 -55.37 1319.80 -55.33
+1319.86 -54.94 1320.55 -53.84 1320.77 -55.34 1321.91 -55.43 1321.95
+-54.87 1322.81 -55.39 1322.92 -54.90 1323.79 -55.39 1323.89 -54.90
+1324.27 -54.83 1324.65 -55.26 1325.06 -54.18 1325.57 -66.39 1325.60
+-66.31 1326.11 -77.51 1326.79 -76.14 1327.15 -77.79 1327.87 -76.25
+1328.05 -77.50 1328.37 -76.25 1328.40 -78.15 1329.35 -77.77 1329.57
+-76.25 1329.82 -76.25 1330.45 -77.50 1330.95 -77.77 1331.36 -76.25
+1331.57 -76.25 1332.15 -78.16 1332.57 -76.25 1332.77 -78.12 1333.16
+-76.25 1333.87 -78.39 1334.15 -76.25 1334.38 -77.54 1335.15 -76.25
+1335.36 -77.50 1335.67 -76.84 1335.81 -78.17 1336.51 -76.25 1336.81
+-78.14 1337.82 -76.23 1337.85 -77.88 1338.35 -78.19 1338.56 -76.25
+1339.05 -78.27 1339.55 -76.67 1340.18 -76.82 1340.35 -77.82 1340.81
+-77.99 1340.89 -76.24 1341.80 -76.25 1341.89 -78.05 1342.70 -76.75
+1342.87 -78.22 1343.56 -73.75 1344.05 -88.31 1344.78 -89.08 1344.81
+-87.38 1345.35 -87.47 1345.55 -88.75 1345.83 -89.08 1345.87 -87.48
+1346.86 -87.03 1346.97 -88.75 1347.83 -88.91 1348.16 -87.50 1348.82
+-87.18 1348.86 -88.77 1349.37 -88.75 1349.86 -87.50 1350.16 -87.87
+1350.50 -89.12 1350.78 -88.75 1351.35 -87.38 1351.83 -89.26 1352.16
+-87.50 1352.88 -87.40 1353.25 -89.31 1353.88 -90.36 1353.96 -87.43
+1354.82 -87.29 1354.86 -88.86 1355.16 -88.75 1355.80 -87.10 1355.89
+-89.30 1356.35 -87.22 1356.79 -88.93 1356.85 -87.23 1357.78 -87.88
+1357.90 -89.08 1358.35 -88.82 1358.76 -87.50 1359.84 -87.27 1359.88
+-88.77 1360.62 -87.69 1360.83 -88.90 1360.91 -88.75 1361.12 -87.86
+1361.75 -88.73 1362.53 -67.37 1362.54 -67.37 1363.37 -30.26 1363.38
+-29.84 1364.15 -4.93 1364.77 -5.00 1364.89 -6.18 1365.17 -6.25 1365.87
+-4.60 1365.93 -5.00 1366.36 -6.25 1366.85 -4.67 1367.45 -5.65 1367.81
+-4.64 1368.16 -6.25 1368.76 -5.00 1368.89 -6.76 1369.36 -4.89 1369.75
+-6.25 1370.75 -4.88 1370.88 -6.16 1371.16 -5.00 1371.76 -6.25 1371.82
+-6.34 1371.95 -4.83 1372.87 -6.38 1373.15 -4.67 1373.81 -6.37 1373.85
+-4.84 1374.45 -6.25 1374.81 -4.83 1375.40 -6.25 1375.95 -4.53 1376.15
+-6.25 1376.55 -4.83 1376.92 -4.72 1377.16 -6.25 1377.75 -6.46 1377.90
+-4.67 1378.93 -6.58 1379.15 -4.55 1379.83 -6.53 1379.88 -4.47 1380.35
+-4.88 1380.83 -6.28 1381.15 -5.00 1381.75 -6.25 1382.01 -6.25 1382.30
+-4.47 1382.86 -4.43 1382.87 -6.18 1383.84 -6.48 1383.95 -4.58 1384.55
+-6.25 1384.62 -5.30 1385.84 -4.61 1385.89 -6.08 1386.55 -6.25 1386.85
+-4.52 1386.91 -6.25 1387.55 -4.76 1387.89 -4.71 1387.92 -6.25 1388.83
+-4.81 1388.92 -6.25 1389.93 -4.80 1389.95 -6.25 1390.75 -4.65 1390.91
+-6.25 1391.56 -6.25 1391.62 -5.31 1391.96 -6.25 1392.76 -5.00 1392.92
+-4.82 1393.05 -6.25 1393.86 -6.12 1393.91 -4.77 1394.84 -6.09 1395.16
+-4.83 1395.45 -6.25 1395.92 -4.82 1396.35 -6.11 1396.36 -5.00 1397.36
+-5.00 1397.75 -6.12 1397.86 -6.60 1397.93 -4.83 1398.76 -6.25 1398.91
+-4.56 1399.76 -6.25 1399.89 -4.82 1400.87 -6.67 1400.95 -4.82 1401.75
+-6.25 1401.97 -4.69 1402.15 -4.91 1402.86 -6.70 1402.86 -6.70 1403.35
+-4.83 1403.87 -6.38 1404.35 -4.60 1404.75 -4.64 1404.87 -6.66 1405.86
+-4.81 1405.93 -6.34 1406.92 -4.61 1406.93 -6.25 1407.36 -4.83 1407.55
+-6.25 1407.97 -4.92 1408.15 -6.25 1408.75 -6.25 1408.97 -4.90 1410.16
+-6.25 1410.30 -4.65 1410.55 -6.25 1410.96 -4.82 1411.36 -6.25 1411.86
+-4.66 1412.25 -5.32 1412.56 -6.25 1412.94 -6.12 1413.45 -4.89 1413.87
+-4.83 1413.95 -6.25 1414.88 -4.86 1414.98 -6.79 1415.75 -6.25 1416.15
+-4.92 1416.36 -6.25 1416.98 -4.60 1417.75 -4.63 1417.93 -6.06 1417.98
+-4.84 1418.55 -6.25 1418.97 -6.72 1419.15 -4.85 1419.75 -6.25 1419.94
+-4.86 1420.75 -6.25 1420.96 -4.81 1421.55 -4.86 1421.93 -6.67 1422.35
+-6.25 1422.96 -4.87 1423.15 -5.00 1423.50 -6.25 1423.98 -4.66 1424.40
+-5.66 1424.75 -4.61 1424.76 -6.25 1425.89 -4.66 1426.00 -6.67 1426.55
+-6.25 1426.89 -4.86 1427.35 -6.14 1427.99 -4.85 1428.15 -6.16 1428.16
+-5.00 1428.90 -6.33 1428.93 -4.84 1430.01 -4.87 1430.01 -6.25 1430.85
+-4.62 1431.10 -6.25 1431.70 -4.86 1431.97 -6.25 1432.30 -4.86 1432.91
+-6.32 1433.55 -4.90 1433.90 -6.03 1433.96 -4.83 1433.99 -5.80 1434.96
+-4.68 1435.36 -6.25 1436.01 -4.67 1436.03 -6.25 1436.91 -6.15 1436.92
+-4.84 1437.76 -6.25 1438.01 -4.64 1438.45 -6.25 1438.97 -4.65 1439.02
+-5.00 1439.25 -6.25 1439.94 -4.63 1440.56 -6.25 1440.93 -4.62 1441.02
+-6.15 1442.01 -6.09 1442.02 -4.59 1442.36 -6.25 1442.97 -4.86 1443.55
+-6.14 1443.56 -5.00 1444.03 -5.00 1444.76 -6.25 1444.97 -6.32 1445.01
+-4.85 1445.95 -5.00 1446.01 -6.70 1446.71 -5.34 1446.93 -6.67 1447.55
+-6.25 1448.00 -4.85 1448.76 -6.25 1448.98 -4.84 1449.10 -4.91 1449.16
+-6.14 1449.95 -4.63 1450.36 -6.25 1450.95 -6.59 1451.15 -4.83 1452.03
+-4.61 1452.05 -6.25 1452.45 -6.25 1453.01 -4.59 1453.93 -4.83 1454.03
+-6.62 1454.36 -6.25 1454.92 -4.84 1454.99 -4.64 1455.03 -6.12 1455.97
+-4.61 1456.01 -6.25 1456.98 -6.15 1457.05 -4.88 1457.98 -6.32 1458.03
+-4.86 1458.94 -4.84 1459.00 -6.25 1459.15 -6.25 1459.25 -4.64 1460.01
+-6.25 1460.05 -4.63 1461.30 -5.31 1461.35 -6.25 1462.01 -6.31 1462.04
+-4.80 1462.75 -4.89 1462.99 -6.29 1463.50 -4.60 1463.75 -6.25 1464.35
+-6.25 1465.00 -4.60 1465.35 -4.84 1465.56 -6.15 1465.95 -4.86 1466.02
+-6.25 1466.76 -6.25 1466.95 -4.62 1467.97 -6.68 1468.01 -4.64 1468.75
+-4.88 1469.01 -6.13 1469.55 -4.63 1470.02 -6.13 1470.35 -4.84 1470.66
+-5.65 1471.06 -6.71 1471.35 -4.90 1471.97 -6.58 1472.25 -5.00 1472.97
+-6.58 1473.03 -5.00 1473.98 -4.61 1474.03 -6.25 1474.36 -6.25 1474.51
+-4.88 1475.50 -5.63 1475.93 -3.46 1475.98 -4.16 1476.40 0.52 1476.78
+0.00 1476.78 0.00 1477.62 0.00 1477.62 0.00 1478.46 0.00 1478.46 0.00
+1479.30 0.00 1479.30 0.00 1480.14 0.00 1480.14 0.00 1480.98 0.00 1480.98
+0.00 1481.82 0.00 1481.82 0.00 1482.66 0.00 1482.66 0.00 1483.50 0.00
+1483.50 0.00 1484.34 0.00 1484.34 0.00 1485.18 0.00 1485.18 0.00 1486.02
+0.00 1486.02 0.00 1486.86 0.00 1486.86 0.00 1487.70 0.00 1487.70 0.00
+1488.54 0.00 1488.54 0.00 1489.38 0.00 1489.38 0.00 1490.22 0.00 1490.22
+0.00 1491.06 0.00 1491.06 0.00 1491.90 0.00 1491.90 0.00 1492.74 0.00
+1492.74 0.00 1493.58 0.00 1493.58 0.00 1494.42 0.00 1494.42 0.00 1495.26
+0.00 1495.26 0.00 1496.10 0.00 1496.10 0.00 1496.94 0.00 1496.94 0.00
+1497.78 0.00 1497.78 0.00 1498.62 0.00 1498.62 0.00 1499.46 0.00 1499.46
+0.00 1500.30 0.00 1500.30 0.00 1501.14 0.00 1501.14 0.00 1501.98 0.00
+1501.98 0.00 1502.82 0.00 1502.82 0.00 1503.66 0.00 1503.66 0.00 1504.50
+0.00 1504.50 0.00 1505.34 0.00 1506.02 6.25 1506.35 6.25 1506.95 4.62
+1507.05 4.61 1507.09 6.13 1507.95 4.65 1508.11 6.25 1509.07 4.45 1509.10
+6.11 1510.02 4.68 1510.11 6.35 1510.55 6.25 1511.05 4.93 1511.75 4.79
+1512.00 6.12 1512.07 4.65 1512.13 6.25 1512.90 6.25 1513.05 4.64 1513.75
+4.83 1514.03 6.25 1515.10 6.68 1515.15 4.84 1516.09 6.25 1516.12 4.84
+1516.55 6.25 1516.97 0.00 1517.25 -1.25 1517.62 0.12 1517.94 0.00 1517.94
+0.00 1518.78 0.00 1518.78 0.00 1519.62 0.00 1519.62 0.00 1520.46 0.00
+1520.46 0.00 1521.30 0.00 1521.30 0.00 1522.14 0.00 1522.14 0.00 1522.98
+0.00 1522.98 0.00 1523.82 0.00 1523.82 0.00 1524.66 0.00 1524.66 0.00
+1525.50 0.00 1525.50 0.00 1526.34 0.00 1526.34 0.00 1527.18 0.00 1527.95
+5.85 1528.11 6.25 1528.15 4.77 1529.09 4.80 1529.35 6.25 1529.70 5.00
+1529.96 6.25 1531.06 6.74 1531.13 4.61 1531.75 4.95 1532.15 6.16 1532.75
+5.00 1533.06 6.36 1533.35 4.64 1533.70 6.20 1534.11 4.85 1534.16 6.72
+1535.10 4.66 1535.16 6.25 1536.06 6.13 1536.09 4.67 1536.55 5.00 1536.75
+6.25 1537.30 6.25 1538.07 4.90 1538.30 5.32 1538.55 6.25 1539.07 6.25
+1539.17 4.79 1540.11 4.60 1540.36 6.25 1541.07 4.79 1541.16 6.25 1541.55
+4.89 1541.56 6.25 1542.76 6.25 1543.13 4.95 1543.15 4.80 1543.35 6.12
+1544.35 6.25 1544.75 4.82 1544.91 5.33 1545.07 6.16 1545.85 6.25 1546.16
+4.81 1547.12 6.58 1547.17 5.10 1547.96 5.00 1548.13 6.25 1548.57 5.00
+1548.80 6.25 1549.10 4.64 1549.80 6.25 1549.95 6.25 1550.09 5.10 1551.08
+4.63 1551.12 6.11 1552.05 4.80 1552.18 6.28 1552.55 4.80 1553.11 6.16
+1553.35 5.00 1553.95 6.25 1554.35 4.66 1554.36 6.25 1554.95 4.85 1555.60
+6.25 1556.09 4.67 1556.19 6.38 1557.15 6.36 1557.35 4.68 1557.95 6.25
+1558.15 4.65 1558.35 4.85 1558.37 6.25 1559.30 4.65 1559.90 6.25 1560.15
+4.83 1560.55 6.13 1560.95 5.00 1561.16 6.42 1561.75 6.25 1562.45 5.32
+1563.11 6.25 1563.13 4.79 1563.50 4.90 1563.59 5.64 1564.15 4.81 1564.29
+5.65 1565.05 6.25 1565.20 4.83 1566.09 5.81 1566.20 4.71 1567.16 6.25
+1567.19 4.88 1567.76 6.25 1568.13 4.66 1569.10 4.67 1569.15 6.18 1569.20
+4.65 1569.55 6.25 1570.56 6.25 1570.76 5.00 1571.10 6.18 1571.13 4.85
+1571.96 6.25 1572.16 4.61 1572.60 6.25 1573.15 4.63 1573.55 6.25 1574.16
+4.46 1574.40 6.25 1575.00 4.82 1575.13 6.25 1575.21 4.78 1576.13 6.25
+1576.35 4.98 1577.12 6.73 1577.22 5.00 1578.17 4.54 1578.40 6.25 1578.76
+6.25 1579.21 4.67 1579.55 6.18 1579.55 5.00 1580.11 6.16 1580.13 5.00
+1581.12 6.15 1581.55 4.69 1582.11 4.82 1582.13 6.25 1583.10 4.79 1583.19
+6.01 1584.18 6.61 1584.23 4.61 1584.56 5.00 1585.13 6.63 1585.14 6.63
+1585.80 5.33 1586.13 4.82 1586.23 6.25 1587.55 6.16 1587.56 5.00 1588.13
+4.80 1588.20 6.25 1589.22 4.66 1589.25 6.25 1589.40 6.25 1590.16 5.31
+1590.22 5.00 1590.56 6.25 1591.13 4.82 1591.23 6.25 1592.15 4.79 1592.19
+6.58 1593.20 6.38 1593.25 4.89 1594.00 4.63 1594.26 6.25 1594.55 5.00
+1594.96 6.25 1595.24 4.88 1595.25 6.25 1596.19 4.65 1596.22 6.25 1596.95
+4.79 1597.36 6.25 1598.20 5.00 1598.24 6.35 1598.95 4.85 1599.16 6.25
+1599.83 5.64 1600.19 4.64 1600.35 4.80 1600.75 6.25 1601.19 4.86 1601.26
+6.25 1601.95 4.85 1602.17 6.25 1603.10 4.61 1603.26 6.25 1604.18 6.25
+1604.35 4.81 1605.14 4.80 1605.26 6.33 1605.56 6.25 1606.06 5.31 1606.22
+6.25 1606.26 4.63 1607.18 6.25 1607.75 4.64 1608.26 4.62 1608.56 6.25
+1609.12 5.34 1609.23 6.41 1609.80 4.69 1610.22 6.25 1610.75 6.12 1610.96
+4.70 1611.26 4.69 1611.60 6.25 1612.24 6.25 1612.80 4.65 1612.95 6.25
+1613.35 4.80 1614.18 4.65 1614.22 6.16 1615.17 6.63 1615.27 4.48 1615.85
+4.67 1616.20 6.25 1616.23 6.37 1616.28 4.85 1617.23 5.00 1617.27 6.16
+1618.26 4.81 1618.55 6.25 1619.15 4.82 1619.55 6.25 1619.80 6.25 1620.17
+4.81 1620.75 6.14 1621.26 4.65 1621.26 4.65 1621.96 6.17 1622.15 4.83
+1622.36 6.25 1623.17 4.82 1623.56 6.25 1624.27 6.03 1624.45 4.67 1624.95
+5.00 1625.23 6.33 1625.95 4.83 1626.17 6.25 1626.56 6.25 1626.61 5.32
+1627.20 6.60 1627.76 5.00 1628.17 6.01 1628.75 4.89 1629.25 6.14 1629.40
+4.63 1630.20 5.21 1630.29 6.40 1630.95 6.13 1631.23 4.79 1631.50 4.90
+1631.75 6.25 1632.29 6.25 1632.90 4.68 1633.23 6.73 1633.30 4.65 1633.90
+6.25 1634.25 4.67 1635.21 4.81 1635.24 6.64 1635.55 6.25 1636.30 4.64
+1637.15 6.25 1637.20 4.64 1637.22 4.81 1637.35 6.25 1638.30 6.56 1638.75
+4.82 1639.27 4.62 1639.31 6.25 1640.30 4.77 1640.50 6.25 1640.75 6.25
+1641.35 4.65 1641.76 6.25 1642.22 4.66 1642.31 6.38 1642.95 5.00 1643.26
+4.78 1643.75 6.18 1644.15 4.67 1644.56 6.25 1645.27 6.25 1645.31 4.65
+1646.24 6.25 1646.29 4.67 1646.55 4.82 1647.16 6.25 1647.31 5.00 1647.75
+6.25 1648.27 4.63 1648.32 6.25 1649.25 4.63 1649.28 6.11 1649.95 5.00
+1650.55 6.11 1650.90 6.25 1651.25 4.64 1651.75 4.81 1652.31 6.38 1652.70
+6.25 1652.95 5.00 1653.26 4.81 1653.35 6.25 1654.31 6.69 1654.75 4.85
+1655.25 6.12 1655.31 4.67 1656.24 4.84 1656.34 6.25 1656.55 6.25 1657.15
+4.65 1657.55 5.33 1657.75 6.25 1658.24 4.64 1658.76 6.25 1659.29 6.58
+1659.33 5.16 1660.15 6.25 1660.55 4.93 1660.80 6.25 1661.24 4.81 1662.27
+4.81 1662.34 6.25 1662.95 6.25 1663.25 5.29 1663.30 4.82 1663.36 6.25
+1664.20 4.94 1664.24 6.40 1665.31 6.24 1665.40 4.68 1666.28 4.71 1666.34
+6.59 1667.15 6.25 1667.24 5.11 1667.95 6.14 1668.29 4.81 1668.30 5.84
+1668.75 4.88 1669.26 6.25 1669.95 4.79 1670.65 4.78 1670.71 5.65 1671.26
+6.25 1671.37 4.59 1671.75 5.00 1672.32 6.11 1673.26 4.67 1673.29 6.14
+1673.35 6.33 1674.15 5.00 1674.35 4.64 1674.56 6.25 1675.15 6.25 1675.31
+4.67 1676.31 6.16 1676.36 4.69 1676.96 6.25 1677.41 5.34 1677.95 4.92
+1678.36 6.61 1678.55 6.25 1679.15 4.81 1679.27 6.35 1679.96 4.64 1680.37
+6.25 1680.75 4.63 1680.95 4.64 1681.20 6.25 1681.95 6.25 1682.37 4.80
+1683.26 6.15 1683.33 4.64 1683.55 4.82 1683.96 6.25 1684.29 4.82 1684.38
+6.25 1685.28 4.80 1685.55 6.25 1686.16 6.25 1686.45 4.67 1686.95 6.25
+1687.33 4.67 1687.95 6.25 1688.37 4.64 1688.56 6.25 1689.15 5.33 1689.33
+4.81 1689.95 6.15 1690.31 6.25 1690.34 4.64 1691.01 5.35 1691.75 28.75
+1691.91 28.09 1692.29 26.65 1693.15 28.84 1693.45 27.35 1693.75 27.32
+1694.27 28.87 1694.40 27.33 1694.97 27.81 1695.37 26.65 1696.01 27.76
+1696.03 27.75 1696.75 26.25 1697.07 27.85 1697.56 26.25 1698.29 26.16
+1698.30 28.75 1699.34 28.00 1699.36 26.50 1699.41 27.81 1700.17 27.33
+1700.48 27.34 1701.04 27.76 1701.37 26.36 1701.60 27.83 1701.97 27.77
+1702.71 27.33 1703.55 26.25 1703.58 27.79 1703.64 27.82 1704.23 27.29
+1704.53 27.30 1704.75 28.75 1705.42 28.75 1705.51 27.37 1706.41 28.75
+1706.46 27.30 1707.38 26.25 1707.73 27.75 1708.15 27.82 1708.49 27.33
+1708.91 27.26 1709.41 27.83 1709.46 27.35 1710.19 27.82 1710.40 28.97
+1711.06 27.27 1711.24 27.31 1711.70 27.80 1712.15 27.37 1712.36 27.99
+1713.00 28.86 1713.57 27.26 1714.37 26.29 1714.42 27.80 1714.65 27.83
+1715.31 26.28 1715.47 27.28 1716.15 27.75 1716.32 27.90 1716.41 26.34
+1717.21 27.83 1717.66 27.30 1718.43 26.23 1718.51 27.80 1718.90 27.82
+1718.95 26.25 1719.54 27.29 1719.56 27.73 1720.75 26.19 1721.21 27.81
+1721.35 28.96 1721.70 27.28 1722.06 27.30 1722.70 27.79 1723.33 26.55
+1723.73 27.82 1723.74 27.82 1724.23 27.27 1724.69 27.33 1724.93 27.81
+1725.45 26.25 1725.96 27.84 1726.80 27.31 1727.09 27.77 1727.27 27.35
+1727.37 27.83 1728.32 26.24 1728.37 28.67 1728.86 27.32 1729.34 27.82
+1729.99 27.34 1730.21 27.81 1731.25 26.25 1731.28 27.78 1731.45 28.75
+1731.62 27.34 1732.40 27.81 1732.75 27.32 1733.01 27.32 1733.63 27.78
+1734.44 26.59 1734.66 27.81 1735.39 28.76 1735.45 26.24 1735.56 27.35
+1736.29 27.81 1736.45 26.32 1736.81 27.87 1737.95 26.55 1737.98 27.80
+1738.35 27.84 1738.45 26.43 1739.04 27.83 1739.55 27.24 1740.09 26.24
+1740.44 27.98 1741.20 27.84 1741.36 26.39 1741.72 27.25 1742.21 27.77
+1742.50 28.00 1742.55 26.28 1743.38 28.75 1743.90 27.28 1744.34 28.73
+1744.55 26.54 1745.37 27.82 1745.52 27.37 1745.59 27.77 1746.29 27.28
+1747.15 26.46 1747.16 28.75 1747.43 28.75 1747.83 27.33 1748.26 27.29
+1748.81 27.73 1749.56 28.75 1749.77 27.31 1750.23 27.77 1750.24 27.35
+1750.68 27.32 1751.42 27.99 1751.46 26.53 1751.62 27.81 1752.37 26.42
+1752.41 28.87 1753.47 28.75 1753.75 26.60 1754.42 27.80 1754.49 27.31
+1755.43 26.61 1755.53 27.74 1755.75 26.54 1755.91 27.82 1756.55 28.75
+1756.96 27.28 1757.55 26.23 1758.03 27.80 1758.45 28.75 1758.64 27.33
+1759.05 26.25 1759.86 27.75 1760.43 27.82 1760.56 26.25 1761.07 27.28
+1761.10 28.75 1761.82 27.34 1762.30 27.78 1763.11 27.33 1763.16 28.75
+1763.65 28.75 1763.66 27.31 1764.15 26.23 1764.51 27.97 1765.24 27.32
+1765.39 27.79 1766.44 26.42 1766.47 28.75 1766.75 26.32 1766.80 27.82
+1767.56 27.75 1767.63 27.29 1768.44 27.81 1768.52 27.36 1769.41 28.88
+1769.80 27.33 1770.15 28.78 1770.22 27.29 1771.35 27.80 1771.50 26.25
+1772.02 27.32 1772.10 28.81 1772.53 27.32 1773.28 27.80 1773.47 28.00
+1773.48 26.30 1774.51 26.26 1774.85 27.75 1775.35 26.54 1775.53 27.80
+1776.15 27.34 1776.45 27.80 1777.28 27.79 1777.46 26.27 1777.72 27.81
+1778.10 27.34 1778.41 26.31 1778.64 27.74 1779.54 26.49 1780.01 27.79
+1780.39 26.36 1780.75 28.80 1781.24 27.28 1781.66 27.77 1781.99 27.80
+1782.46 26.38 1782.70 27.31 1782.71 27.76 1783.40 27.31 1784.22 27.81
+1784.75 28.99 1785.05 27.31 1785.43 26.25 1785.55 28.84 1785.92 27.37
+1786.43 28.09 1786.74 27.76 1787.42 26.35 1787.95 26.25 1788.37 27.80
+1788.47 28.75 1788.50 26.59 1789.43 28.82 1790.10 27.32 1790.11 27.33
+1790.52 27.83 1790.95 28.96 1791.35 26.43 1792.15 28.90 1792.49 26.36
+1792.93 27.83 1793.19 27.33 1793.56 27.30 1793.77 27.74 1794.76 27.35
+1795.10 27.80 1795.43 28.92 1795.61 27.31 1796.53 27.80 1796.70 27.26
+1797.40 26.52 1797.47 27.96 1797.70 27.82 1798.04 27.30 1798.95 26.28
+1798.96 28.75 1799.50 28.96 1798.16 26.25 1798.53 27.30 1799.02 27.78
+1799.46 26.30 1799.50 27.86 1800.11 27.83 1800.63 26.17 1801.30 27.27
+1801.51 28.75 1801.55 27.85 1802.39 27.32 1802.75 27.32 1803.11 27.75
+1803.49 26.24 1803.54 28.79 1804.22 27.85 1804.70 27.28 1804.94 27.28
+1805.53 27.80 1806.45 26.54 1806.57 27.81 1807.13 27.30 1807.36 28.80
+1807.73 27.82 1808.27 27.32 1808.84 27.80 1809.08 27.27 1809.34 27.28
+1809.94 27.79 1810.11 26.25 1810.78 28.06 1810.80 27.90 1811.63 54.35
+1811.63 54.35 1812.44 67.65 1812.48 68.56 1813.31 81.98 1813.36 81.21
+1813.48 83.82 1814.47 82.94 1814.70 82.26 1815.16 83.08 1815.48 81.41
+1816.28 82.36 1816.58 83.75 1817.16 81.76 1817.33 82.99 1817.53 81.52
+1818.04 83.01 1818.49 81.25 1818.73 83.04 1819.58 83.75 1819.92 82.37
+1820.53 83.87 1820.59 82.37 1821.49 81.49 1821.54 83.10 1822.03 82.36
+1822.52 83.15 1822.78 82.34 1822.98 83.06 1823.59 82.35 1823.76 83.27
+1824.56 81.91 1824.97 83.75 1825.21 83.07 1825.59 81.69 1825.96 83.25
+1826.59 82.09 1827.57 83.35 1827.58 81.33 1828.11 83.75 1828.43 82.36
+1828.54 83.75 1829.19 82.34 1829.60 82.20 1829.61 83.09 1830.36 83.26
+1830.49 81.66 1831.33 82.30 1831.59 83.75 1832.52 81.92 1832.54 83.17
+1832.74 82.30 1833.28 83.07 1834.01 83.09 1834.27 82.34 1834.77 83.05
+1835.04 82.29 1835.16 83.75 1835.57 81.72 1836.36 83.75 1836.60 81.27
+1837.52 81.60 1837.55 83.57 1837.91 81.25 1838.32 83.04 1838.51 81.32
+1839.05 83.04 1839.71 83.75 1840.17 82.34 1840.51 83.33 1840.62 81.65
+1841.22 82.99 1841.64 82.34 1842.34 82.34 1842.58 83.75 1843.07 82.32
+1843.53 83.75 1843.62 83.96 1843.81 82.36 1844.59 82.36 1844.83 83.00
+1845.51 81.82 1845.62 83.75 1846.33 83.04 1846.70 82.32 1847.01 82.99
+1847.57 81.79 1848.03 82.31 1848.58 83.24 1848.90 82.34 1849.19 83.01
+1850.03 83.02 1850.21 81.25 1850.57 81.56 1850.62 83.05 1851.52 83.04
+1851.58 81.85 1852.53 81.20 1852.76 83.03 1853.52 81.87 1853.57 83.28
+1853.96 83.81 1853.99 82.34 1854.68 82.31 1854.96 83.09 1855.58 83.11
+1855.62 81.86 1856.59 81.73 1856.66 83.75 1857.13 83.01 1857.59 82.33
+1858.56 83.45 1858.64 81.88 1858.96 83.75 1859.09 82.39 1859.59 83.05
+1859.62 81.47 1860.77 83.75 1860.96 81.72 1861.56 81.71 1861.58 83.20
+1862.27 83.02 1862.66 81.33 1862.91 83.75 1863.46 82.36 1864.20 82.34
+1864.53 83.14 1864.79 82.36 1865.36 83.96 1865.65 81.33 1865.96 83.17
+1866.58 83.28 1866.65 81.85 1867.65 83.97 1867.70 82.30 1868.60 81.39
+1868.67 83.02 1869.55 83.05 1869.59 82.03 1870.16 81.98 1870.17 82.98
+1870.65 82.27 1870.88 83.04 1871.97 83.75 1872.09 82.23 1872.54 83.09
+1872.63 81.53 1873.08 83.06 1873.61 81.18 1874.17 83.75 1874.51 81.68
+1874.76 83.75 1875.04 82.28 1875.54 81.52 1875.62 83.04 1876.50 82.25
+1876.65 83.35 1877.62 81.38 1877.68 83.24 1878.22 83.04 1878.68 82.28
+1878.96 81.99 1879.67 83.34 1879.67 83.34 1880.16 82.28 1880.62 81.79
+1881.16 83.32 1881.62 82.35 1881.86 83.05 1882.68 81.75 1882.77 83.75
+1883.29 83.04 1883.69 81.48 1883.96 83.12 1884.58 81.48 1885.17 83.75
+1885.21 82.36 1885.76 81.56 1886.24 83.03 1886.91 83.03 1886.96 81.69
+1887.57 83.12 1887.60 81.90 1888.57 83.07 1888.63 81.31 1889.52 82.34
+1889.67 83.08 1889.90 83.01 1890.33 82.32 1890.69 83.75 1891.01 82.33
+1891.59 83.09 1891.76 82.30 1892.60 83.25 1892.69 81.78 1893.59 81.52
+1893.69 83.05 1894.44 82.35 1894.62 83.93 1895.59 83.09 1895.63 81.77
+1895.63 81.77 1895.66 83.75 1896.83 82.35 1897.12 83.01 1897.71 81.73
+1897.78 83.00 1898.61 83.30 1898.71 81.44 1899.26 82.97 1899.63 82.37
+1900.61 81.76 1900.66 83.75 1900.67 83.75 1901.09 82.37 1901.56 81.79
+1901.64 83.11 1902.96 83.02 1903.17 81.27 1903.63 81.86 1903.66 83.11
+1904.39 83.02 1904.62 82.34 1905.12 83.03 1905.51 82.35 1906.25 82.35
+1906.53 83.06 1906.76 81.43 1906.77 83.75 1907.62 82.36 1907.96 83.08
+1908.62 81.79 1908.65 83.20 1909.36 81.82 1909.69 83.98 1910.65 83.80
+1910.68 81.29 1911.31 82.38 1911.57 83.08 1911.63 83.75 1912.08 82.30
+1912.81 82.32 1913.06 83.12 1913.71 81.61 1913.83 82.99 1914.64 83.75
+1914.70 81.63 1915.16 81.84 1915.24 83.03 1915.99 83.02 1916.62 82.05
+1916.67 82.33 1916.73 83.27 1917.47 83.04 1917.73 81.34 1918.59 82.38
+1918.68 83.98 1919.16 83.75 1919.96 82.34 1920.38 83.02 1920.67 82.35
+1921.46 82.38 1921.57 83.75 1921.73 83.02 1921.76 81.59 1922.62 83.03
+1922.67 81.60 1923.73 81.55 1923.97 83.01 1924.68 81.51 1924.72 83.50
+1925.51 83.75 1925.76 82.29 1926.11 83.75 1926.66 81.57 1926.77 83.75
+1927.19 82.34 1927.66 83.24 1927.76 81.99 1928.73 82.36 1928.97 83.75
+1929.57 83.75 1929.74 81.47 1930.74 83.00 1930.85 82.30 1931.56 82.28
+1931.74 83.11 1932.01 81.62 1932.59 83.01 1932.67 83.75 1932.99 82.34
+1933.69 84.05 1933.80 82.31 1934.70 81.60 1934.97 83.75 1935.57 83.75
+1935.69 81.46 1936.69 83.92 1936.78 81.84 1936.79 82.07 1937.63 46.93
+1937.63 46.93 1938.47 10.53 1938.47 10.53 1939.16 4.67 1939.65 6.17
+1939.70 4.93 1940.37 6.25 1940.73 4.85 1941.57 6.25 1941.83 2.55 1941.84
+2.63 1942.56 -6.25 1942.77 -5.00 1942.86 -6.25 1943.70 -5.00 1943.78
+-6.25 1944.66 -4.67 1944.78 -5.70 1945.66 -6.10 1945.70 -4.67 1946.68
+-4.82 1946.72 -6.25 1947.57 -6.25 1947.67 -4.89 1947.96 -6.25 1948.18
+-5.30 1948.77 -4.65 1949.08 -5.63 1949.71 -4.81 1949.79 -6.25 1950.51
+-4.63 1950.77 -6.25 1951.72 -6.00 1951.78 -5.00 1952.36 -4.73 1952.66
+-6.19 1952.76 -6.03 1953.36 -4.65 1953.68 -4.59 1953.79 -5.64 1954.69
+-6.25 1954.72 -4.68 1955.69 -4.68 1955.77 -6.25 1956.57 -6.25 1956.71
+-4.81 1957.17 -6.25 1957.72 -4.64 1957.96 -6.25 1958.36 -4.86 1958.67
+-6.32 1958.76 -4.86 1959.96 -4.59 1960.17 -6.12 1960.56 -4.61 1960.73
+-6.65 1961.69 -6.11 1961.75 -4.62 1962.37 -6.25 1962.76 -4.58 1963.36
+-4.58 1963.57 -6.25 1963.69 -4.86 1963.73 -6.25 1964.76 -4.91 1964.79
+-6.21 1965.36 -6.25 1965.68 -4.86 1966.68 -4.60 1966.81 -6.05 1967.66
+-6.25 1967.79 -5.30 1968.56 -4.55 1968.71 -6.03 1968.77 -4.67 1969.17
+-6.25 1969.71 -6.15 1969.74 -4.63 1970.71 -4.63 1970.76 -6.79 1971.36
+-6.25 1971.70 -4.61 1972.73 -4.82 1972.77 -6.59 1973.37 -6.25 1973.71
+-4.60 1973.76 -4.66 1973.80 -5.75 1974.74 -4.80 1975.34 -5.64 1975.71
+-4.60 1975.73 -6.25 1976.72 -6.69 1976.78 -4.65 1977.11 -6.25 1977.36
+-5.00 1978.77 -6.21 1978.78 -5.00 1978.80 -4.87 1979.43 -5.62 1979.79
+-4.63 1979.82 -6.25 1980.86 -6.14 1980.88 -4.64 1981.77 -6.29 1981.80
+-4.83 1982.51 -4.83 1982.82 -6.25 1983.17 -5.00 1983.74 -6.25 1984.10
+-5.64 1984.56 -4.58 1984.80 -6.09 1984.96 -4.60 1985.56 -4.60 1985.66
+-6.25 1986.41 -5.62 1986.73 -4.83 1987.76 -6.15 1987.77 -4.87 1988.57
+-6.25 1988.81 -4.67 1989.16 -6.25 1989.36 -4.83 1989.79 -6.25 1989.87
+-5.33 1990.79 -4.47 1991.37 -6.25 1991.80 -5.98 1991.82 -4.79 1992.72
+-4.83 1992.82 -6.09 1993.17 -5.00 1993.73 -6.33 1994.37 -6.25 1994.74
+-4.59 1994.75 -4.59 1995.37 -6.25 1995.79 -6.15 1996.13 -5.28 1996.74
+-4.63 1996.83 -6.10 1997.28 -5.65 1997.73 -4.65 1998.78 -4.69 1998.85
+-5.63 1998.97 -6.25 1999.56 -4.86 1999.82 -4.85 1999.84 -6.25 2000.76
+-5.19 2000.84 -6.33 2001.75 -6.04 2001.79 -4.84 2002.61 -4.62 2002.79
+-6.29 2003.31 -6.25 2003.56 -4.80 2004.77 -4.83 2004.81 -6.62 2004.83
+-6.25 2005.58 -5.29 2005.79 -4.62 2005.87 -6.13 2006.79 -4.62 2006.97
+-6.25 2007.76 -4.63 2007.85 -6.29 2008.81 -6.13 2008.86 -4.53 2009.31
+-5.30 2009.37 -6.25 2010.23 -5.64 2010.36 -5.00 2010.78 -4.65 2010.97
+-6.25 2011.56 -6.25 2011.79 -5.00 2012.84 -4.90 2013.11 -6.25 2013.81
+-4.83 2013.96 -6.25 2014.56 -6.25 2014.79 -4.83 2014.97 -6.25 2015.16
+-4.62 2015.79 -4.84 2016.16 -6.25 2016.78 -6.25 2017.36 -5.00 2017.82
+-4.61 2017.87 -6.25 2018.78 -5.89 2018.91 -4.66 2019.17 -6.25 2019.75
+-4.84 2020.31 -4.88 2020.56 -6.17 2020.83 -6.25 2021.56 -4.90 2021.88
+-6.25 2021.98 -5.33 2022.77 -6.71 2022.87 -4.88 2023.41 -6.18 2023.88
+-4.85 2024.77 -4.83 2024.88 -6.25 2025.51 -6.25 2025.79 -4.87 2025.88
+-6.08 2026.46 -4.60 2026.79 -6.25 2026.96 -4.60 2027.84 -4.60 2028.16
+-6.25 2028.56 -4.83 2028.83 -6.31 2029.41 -6.25 2029.87 -5.00 2030.37
+-6.25 2030.81 -4.89 2030.97 -5.00 2031.56 -6.25 2031.87 -4.84 2031.97
+-6.25 2032.84 -4.76 2033.17 -6.25 2033.46 -6.25 2034.11 -4.86 2034.36
+-4.83 2034.83 -6.25 2035.57 -6.25 2035.78 -4.82 2036.06 -4.84 2036.32
+-5.63 2036.79 -4.59 2037.16 -6.25 2037.76 -4.60 2037.85 -6.13 2038.90
+-6.74 2039.21 -4.83 2039.84 -6.65 2039.89 -4.86 2040.76 -6.09 2040.90
+-4.61 2040.97 -4.87 2041.01 -6.25 2041.89 -4.63 2041.91 -6.25 2042.82
+-4.85 2042.91 -6.25 2043.56 -6.25 2043.91 -4.64 2044.56 -4.67 2044.91
+-6.25 2045.36 -4.83 2045.80 -6.19 2046.57 -6.25 2046.80 -4.60 2046.87
+-4.80 2046.91 -6.25 2047.76 -4.80 2047.92 -6.25 2048.57 -6.25 2048.86
+-5.18 2049.56 -4.63 2049.57 -6.25 2050.80 -6.03 2050.83 -4.63 2051.17
+-6.25 2051.81 -4.64 2051.92 -6.25 2052.56 -4.86 2052.85 -4.82 2052.92
+-6.25 2053.71 -6.25 2054.06 -4.84 2054.86 -6.25 2054.90 -4.67 2055.57
+-6.25 2055.96 -4.65 2056.82 -4.87 2056.83 -5.79 2056.96 -4.80 2057.56
+-6.25 2057.91 -4.60 2058.36 -6.25 2058.83 -6.14 2058.93 -5.00 2059.76
+-6.25 2059.90 -4.85 2060.87 -6.08 2060.91 -4.88 2061.36 -5.00 2061.88
+-6.68 2061.96 -4.57 2062.56 -6.21 2062.84 -6.40 2062.93 -5.00 2063.77
+-6.25 2063.92 -4.86 2064.84 -6.25 2065.01 -4.86 2065.83 -4.84 2065.93
+-6.17 2066.87 -6.35 2066.93 -5.00 2067.37 -6.25 2067.71 -4.87 2067.84
+-4.83 2068.31 -6.25 2068.83 -4.64 2068.89 -6.71 2069.84 -6.14 2069.85
+-4.85 2070.89 -4.60 2070.97 -6.25 2071.36 -6.25 2071.88 -4.61 2072.31
+-6.25 2072.84 -4.84 2072.89 -4.81 2073.17 -6.25 2073.95 -6.18 2074.16
+-4.86 2074.84 -6.17 2074.90 -4.63 2075.85 -6.19 2075.95 -4.64 2076.56
+-6.18 2076.85 -4.91 2077.73 -5.68 2077.90 -4.65 2077.92 -5.99 2077.93
+-4.80 2078.89 -6.25 2079.26 -4.61 2079.85 -5.78 2079.95 -4.60 2080.56
+-4.80 2080.77 -6.25 2081.36 -6.25 2081.94 -4.82 2082.17 -5.63 2082.85
+-4.83 2082.96 -4.86 2083.55 -5.63 2083.88 -4.83 2084.51 -6.12 2084.76
+-5.00 2084.88 -6.25 2085.87 -6.10 2085.97 -4.83 2086.57 -6.25 2086.91
+-4.65 2087.17 -6.25 2087.88 -4.66 2088.65 -6.11 2088.66 -5.00 2088.85
+-4.65 2089.26 -6.25 2089.88 -6.17 2090.16 -4.84 2090.89 -6.25 2090.94
+-4.87 2091.77 -6.25 2091.91 -4.57 2092.37 -6.25 2092.87 -4.83 2093.53
+-5.62 2093.81 -4.88 2093.97 -4.86 2093.99 -6.25 2094.87 -4.80 2094.93
+-6.25 2095.85 -6.10 2095.93 -4.90 2096.93 -4.60 2096.97 -6.25 2097.86
+-6.25 2097.90 -4.66 2098.17 -6.24 2098.77 -4.63 2098.93 -6.05 2099.56
+-4.59 2099.96 -4.58 2100.01 -6.12 2100.99 -6.70 2101.02 -5.00 2101.56
+-4.83 2101.99 -6.08 2102.37 -6.25 2102.95 -4.87 2103.86 -6.18 2103.91
+-4.55 2103.98 -4.77 2104.77 -6.25 2104.90 -6.08 2104.99 -5.26 2105.89
+-4.82 2106.00 -5.79 2106.56 -5.00 2106.99 -6.28 2107.56 -6.25 2107.99
+-4.84 2108.89 -4.87 2108.98 -6.11 2109.01 -6.25 2109.16 -4.93 2109.97
+-4.84 2110.37 -6.25 2110.86 -6.25 2111.26 -5.30 2111.57 -6.25 2111.94
+-4.84 2113.01 -4.82 2113.16 -6.25 2113.94 -4.60 2114.00 -6.63 2114.56
+-4.86 2114.87 -5.62 2114.91 -4.82 2114.98 -6.13 2115.95 -4.62 2116.01
+-6.09 2116.91 -6.34 2117.36 -4.89 2117.61 -4.65 2117.64 -5.61 2118.98
+-6.25 2119.03 -4.89 2119.16 -4.62 2119.76 -6.25 2119.94 -4.63 2120.02
+-6.21 2121.03 -5.11 2121.37 -6.25 2121.92 -6.13 2122.00 -4.64 2122.76
+-4.63 2123.01 -6.13 2123.93 -6.52 2124.00 -4.89 2124.25 -4.59 2124.30
+-5.61 2124.95 -5.00 2125.76 -6.25 2126.17 -6.25 2126.56 -4.61 2126.76
+-5.00 2126.97 -6.25 2127.65 -4.83 2128.07 -5.64 2128.38 -6.25 2129.03
+-4.86 2129.61 -5.00 2129.97 -6.31 2130.03 -5.00 2130.83 -10.05 2130.83
+-10.05 2131.36 -28.75 2131.75 -27.84 2131.86 -27.27 2132.66 -27.78
+2132.94 -26.35 2133.51 -28.82 2133.86 -27.29 2134.20 -27.32 2134.98
+-27.94 2135.62 -27.77 2135.87 -27.33 2135.99 -28.75 2136.05 -26.25
+2136.96 -26.35 2137.16 -28.75 2137.63 -27.78 2138.03 -26.25 2139.03
+-27.83 2139.05 -26.45 2139.66 -26.25 2140.04 -27.85 2140.31 -27.76
+2140.36 -27.29 2140.99 -28.80 2141.01 -26.20 2141.84 -27.80 2141.99
+-26.48 2142.67 -27.33 2143.43 -27.79 2143.43 -27.79 2144.00 -26.57
+2144.61 -27.27 2144.63 -27.76 2145.27 -27.33 2145.87 -27.81 2146.01
+-26.28 2146.14 -27.83 2147.56 -26.25 2147.59 -27.75 2148.01 -26.25
+2148.25 -27.82 2148.49 -27.79 2149.29 -27.34 2149.57 -27.27 2150.13
+-27.75 2150.55 -27.89 2150.56 -27.32 2151.06 -27.86 2151.54 -27.28
+2152.05 -26.30 2152.51 -27.81 2152.97 -27.86 2153.12 -27.34 2153.64
+-27.76 2153.87 -27.32 2154.46 -27.35 2155.08 -28.75 2155.56 -26.25
+2155.77 -28.75 2156.03 -27.32 2156.85 -27.85 2156.87 -27.80 2157.05
+-26.61 2157.85 -28.86 2158.37 -27.30 2158.73 -27.82 2158.76 -26.54
+2159.50 -27.76 2159.98 -26.44 2160.41 -27.29 2160.98 -27.76 2161.13
+-26.58 2161.34 -27.82 2162.63 -27.22 2162.73 -27.77 2162.90 -27.31
+2163.37 -28.75 2163.97 -27.85 2164.10 -27.33 2164.70 -27.76 2164.73
+-27.30 2165.79 -27.90 2165.80 -27.33 2166.17 -26.25 2166.18 -27.76
+2167.12 -27.33 2167.50 -27.83 2168.00 -27.95 2168.36 -26.25 2169.03
+-26.21 2169.08 -28.75 2169.48 -27.35 2169.80 -27.81 2170.98 -28.77
+2171.05 -26.25 2171.65 -28.81 2171.99 -26.53 2172.11 -27.80 2172.64
+-27.35 2173.33 -27.30 2173.64 -27.78 2174.05 -27.82 2174.09 -26.84
+2175.03 -26.34 2175.05 -27.78 2175.57 -28.75 2176.09 -26.47 2176.35
+-27.33 2176.99 -27.84 2177.41 -27.78 2177.70 -27.30 2178.09 -27.90
+2178.65 -26.53 2179.01 -26.47 2179.36 -27.80 2180.05 -27.26 2180.30
+-27.74 2180.43 -27.30 2181.00 -27.96 2181.36 -26.46 2181.92 -27.75
+2182.15 -27.32 2182.83 -27.78 2183.21 -27.90 2183.73 -27.31 2183.84
+-27.74 2183.93 -27.30 2184.60 -27.33 2185.16 -28.75 2185.70 -27.78
+2186.14 -27.32 2186.54 -27.28 2187.00 -28.87 2187.25 -27.35 2187.74
+-27.81 2187.95 -27.76 2188.22 -27.27 2189.21 -27.32 2189.57 -27.78
+2190.11 -28.75 2190.32 -27.34 2191.20 -27.77 2191.31 -27.27 2191.62
+-27.34 2192.07 -27.95 2192.19 -27.79 2192.89 -27.30 2193.07 -27.27
+2193.71 -28.91 2194.56 -28.82 2194.57 -27.28 2194.93 -27.30 2195.30
+-28.81 2195.53 -27.82 2196.05 -26.54 2196.62 -27.81 2196.77 -27.29
+2197.46 -27.26 2197.61 -28.75 2198.21 -27.34 2198.81 -28.75 2199.08
+-26.25 2199.09 -27.75 2199.87 -27.36 2200.04 -27.90 2201.01 -28.75
+2201.29 -27.34 2201.67 -27.27 2201.68 -27.77 2202.41 -27.82 2202.82
+-27.32 2203.49 -27.31 2203.50 -27.78 2203.97 -28.79 2204.06 -27.32
+2205.03 -28.91 2205.41 -27.30 2206.15 -26.16 2206.17 -28.75 2206.82
+-27.78 2206.96 -26.25 2207.96 -27.27 2207.99 -27.77 2208.88 -27.95
+2208.91 -27.30 2209.13 -27.90 2209.16 -27.30 2210.01 -27.74 2210.49
+-27.32 2210.67 -27.25 2211.44 -27.82 2211.48 -27.81 2212.25 -27.31
+2212.35 -27.33 2212.89 -27.73 2213.48 -27.81 2213.76 -26.50 2214.13
+-27.76 2214.36 -26.25 2214.88 -27.28 2215.40 -27.78 2215.77 -27.83
+2216.05 -26.45 2216.51 -27.73 2216.90 -27.32 2217.41 -26.25 2218.17
+-28.75 2218.36 -26.46 2218.86 -28.75 2219.56 -26.25 2219.77 -27.91
+2220.07 -26.67 2220.10 -28.02 2221.50 -27.26 2221.51 -27.75 2221.97
+-27.35 2222.17 -28.75 2222.41 -27.80 2223.21 -27.32 2223.91 -27.30
+2223.92 -27.77 2224.12 -27.88 2224.28 -27.34 2225.16 -27.85 2225.31
+-27.30 2225.96 -27.34 2226.13 -27.81 2227.12 -28.82 2227.42 -27.37
+2227.70 -27.26 2227.71 -27.77 2228.27 -27.34 2228.75 -27.80 2229.18
+-26.25 2229.39 -27.77 2230.11 -26.43 2230.79 -27.88 2230.79 -27.88
+2231.12 -26.24 2232.37 -28.77 2232.38 -27.29 2232.60 -27.33 2233.17
+-27.98 2233.44 -27.78 2233.88 -27.33 2234.19 -26.25 2234.64 -27.74
+2235.13 -27.82 2235.37 -26.54 2236.04 -27.74 2236.07 -26.35 2236.84
+-27.30 2237.30 -27.81 2238.17 -27.88 2238.30 -27.36 2239.13 -26.32
+2239.14 -27.76 2239.23 -27.33 2239.73 -27.82 2240.13 -27.86 2240.49
+-27.29 2241.44 -27.25 2241.47 -27.87 2241.83 -27.91 2241.94 -27.30
+2242.76 -27.29 2243.19 -28.74 2243.97 -27.83 2244.14 -26.87 2244.94
+-27.76 2245.01 -27.31 2245.33 -27.28 2245.89 -27.81 2246.21 -28.75
+2246.71 -27.33 2247.23 -27.79 2247.50 -27.30 2248.21 -28.09 2248.41
+-26.25 2248.87 -27.34 2249.19 -28.89 2249.42 -27.76 2249.69 -27.30
+2250.17 -27.91 2250.82 -27.36 2251.04 -27.76 2251.79 -12.58 2251.79
+-12.58 2252.13 -4.28 2252.76 -4.79 2253.13 -6.25 2254.11 -6.27 2254.15
+-4.83 2254.76 -6.25 2255.12 -4.83 2255.21 -4.48 2255.76 -6.25 2256.45
+-4.60 2256.71 -6.25 2257.17 -6.25 2257.20 -4.84 2257.97 -5.00 2258.23
+-6.25 2259.13 -4.83 2259.33 -6.57 2259.35 -6.41 2260.18 -41.37 2260.19
+-41.31 2261.03 -78.28 2261.03 -78.88 2261.45 -83.17 2262.15 -83.15
+2262.20 -81.94 2263.11 -83.16 2263.18 -81.63 2263.71 -83.75 2264.05
+-81.47 2264.91 -81.33 2265.23 -83.75 2265.23 -83.75 2265.60 -82.31
+2266.17 -81.54 2266.65 -83.05 2267.13 -81.69 2267.23 -83.75 2267.96
+-81.58 2268.19 -83.75 2269.20 -81.19 2269.41 -83.04 2269.56 -83.75
+2270.22 -81.98 2270.36 -83.75 2270.68 -82.34 2271.13 -81.58 2271.56
+-83.10 2272.27 -83.02 2272.73 -82.31 2273.14 -83.23 2273.17 -81.87
+2273.76 -83.15 2274.30 -82.32 2275.18 -83.55 2275.24 -82.03 2275.67
+-82.21 2275.93 -83.01 2276.19 -82.09 2276.68 -83.09 2277.15 -82.22
+2277.19 -83.81 2278.18 -83.23 2278.23 -81.86 2279.24 -81.23 2279.51
+-83.12 2280.17 -83.75 2280.25 -81.79 2280.40 -83.02 2281.10 -81.92
+2281.26 -83.75 2281.35 -81.55 2282.23 -83.91 2282.28 -82.37 2283.13
+-82.03 2283.21 -83.22 2284.00 -83.13 2284.14 -81.77 2284.69 -83.00
+2285.15 -81.23 2286.17 -82.04 2286.19 -83.12 2286.50 -82.39 2286.77
+-83.07 2287.26 -81.35 2287.61 -83.00 2288.20 -81.38 2288.30 -82.99
+2288.97 -83.75 2289.21 -82.01 2290.17 -81.73 2290.40 -83.14 2291.03
+-82.36 2291.21 -83.75 2291.71 -82.34 2291.90 -83.07 2292.17 -81.40
+2292.74 -83.05 2293.22 -83.86 2293.76 -82.37 2293.99 -83.01 2294.23
+-82.01 2294.65 -82.30 2294.76 -83.75 2295.87 -82.33 2296.25 -83.10
+2296.56 -83.75 2296.67 -82.32 2297.23 -81.57 2297.70 -83.38 2298.13
+-82.25 2298.28 -83.75 2299.27 -83.20 2299.61 -82.25 2300.21 -81.45
+2300.28 -83.75 2301.05 -82.20 2301.27 -83.46 2301.35 -83.29 2301.40
+-82.25 2302.23 -83.75 2302.28 -81.84 2303.25 -82.25 2303.53 -83.05
+2304.23 -82.03 2304.27 -83.38 2304.96 -83.36 2305.23 -81.84 2305.71
+-83.11 2306.00 -81.51 2306.93 -82.23 2307.17 -83.42 2307.23 -83.15
+2307.65 -82.19 2308.23 -82.02 2308.29 -83.75 2309.25 -81.41 2309.32
+-83.10 2309.76 -83.75 2309.85 -82.18 2310.81 -83.06 2311.29 -81.25
+2312.23 -81.33 2312.25 -83.75 2312.28 -83.75 2312.77 -82.25 2313.36
+-81.75 2313.71 -83.12 2314.35 -81.45 2314.46 -83.13 2314.96 -81.25
+2315.17 -83.25 2315.73 -82.28 2315.89 -83.37 2316.51 -83.75 2317.11
+-82.32 2317.34 -83.12 2317.85 -82.33 2318.20 -83.06 2318.25 -81.93
+2319.05 -82.34 2319.52 -83.21 2320.21 -83.15 2320.25 -82.04 2320.96
+-83.75 2321.36 -81.25 2322.01 -82.38 2322.32 -83.75 2322.56 -81.59
+2323.16 -83.21 2323.22 -83.75 2323.67 -82.35 2324.20 -81.52 2324.56
+-83.75 2325.20 -81.25 2325.27 -83.75 2325.86 -82.32 2326.09 -83.00
+2326.84 -83.10 2327.15 -82.31 2328.00 -82.23 2328.22 -83.28 2328.32
+-83.75 2328.73 -82.34 2329.32 -81.74 2329.75 -83.10 2330.32 -81.60
+2330.47 -83.04 2331.16 -83.75 2331.21 -81.98 2331.62 -82.22 2331.86
+-83.75 2332.77 -83.75 2333.23 -81.62 2333.27 -83.60 2333.33 -81.51
+2334.32 -81.34 2334.86 -83.02 2335.31 -83.89 2335.33 -81.25 2336.28
+-83.21 2336.55 -81.53 2337.27 -84.00 2337.37 -81.25 2337.66 -83.75
+2338.17 -82.31 2338.33 -81.52 2339.08 -83.15 2339.16 -83.46 2339.33
+-81.94 2340.36 -81.32 2340.37 -83.75 2340.96 -83.75 2341.33 -81.68
+2342.23 -81.59 2342.33 -83.75 2343.25 -81.24 2343.27 -83.75 2343.98
+-82.29 2344.17 -83.10 2344.31 -81.56 2344.36 -83.75 2345.23 -83.75
+2345.76 -81.84 2346.30 -83.10 2346.33 -81.83 2346.93 -82.30 2347.16
+-83.75 2347.66 -81.25 2347.91 -83.75 2348.59 -83.04 2349.07 -82.30
+2349.25 -83.62 2349.76 -81.15 2350.09 -83.23 2350.51 -82.35 2351.11
+-82.34 2351.35 -84.01 2352.33 -81.82 2352.36 -83.42 2353.00 -83.05
+2353.43 -82.38 2353.53 -83.33 2353.54 -82.16 2354.31 -81.85 2354.35
+-83.24 2355.26 -81.91 2355.91 -83.02 2356.20 -82.28 2356.51 -83.75
+2357.27 -81.25 2357.32 -83.65 2357.65 -82.26 2358.11 -82.99 2358.86
+-82.98 2359.11 -82.25 2359.36 -83.13 2359.85 -82.26 2360.29 -81.58
+2360.87 -83.30 2361.31 -82.27 2361.60 -83.08 2362.37 -83.75 2362.56
+-81.43 2363.26 -81.81 2363.31 -83.16 2363.76 -83.75 2364.30 -81.19
+2364.46 -83.21 2364.99 -82.23 2365.21 -83.16 2365.25 -81.81 2366.43
+-82.25 2366.63 -83.08 2367.17 -82.16 2367.26 -83.93 2367.96 -81.13
+2368.21 -83.28 2368.64 -82.25 2368.87 -83.10 2369.56 -83.75 2369.80
+-81.46 2370.76 -83.92 2370.81 -82.31 2371.36 -83.75 2371.57 -82.20
+2371.96 -83.93 2372.37 -81.74 2373.25 -83.30 2373.33 -81.68 2373.77
+-82.31 2373.95 -83.22 2374.51 -82.31 2374.97 -83.75 2375.96 -81.27
+2375.97 -83.75 2376.79 -82.27 2376.86 -83.22 2377.43 -82.34 2377.63
+-83.07 2378.33 -81.97 2378.39 -83.75 2379.13 -83.03 2379.29 -81.82
+2379.57 -82.35 2379.96 -83.75 2380.41 -82.20 2380.43 -83.32 2381.28
+-83.25 2381.32 -81.76 2382.65 -81.94 2382.73 -83.01 2383.36 -81.66
+2383.39 -83.17 2384.14 -83.23 2384.31 -81.43 2384.81 -83.00 2385.23
+-82.35 2385.63 -83.03 2385.95 -82.32 2386.26 -83.75 2386.97 -81.79
+2387.16 -83.75 2387.30 -81.62 2388.31 -83.75 2388.40 -81.87 2388.77
+-83.75 2388.83 -82.29 2389.59 -82.31 2389.89 -83.05 2390.41 -83.75
+2390.56 -81.85 2391.32 -83.69 2391.40 -82.05 2392.39 -81.70 2392.76
+-83.16 2393.26 -82.23 2393.38 -83.75 2394.30 -83.18 2394.37 -82.22
+2395.32 -81.60 2395.37 -83.26 2395.71 -83.10 2396.19 -82.26 2396.40
+-81.87 2396.41 -83.37 2397.32 -81.86 2397.37 -83.11 2398.36 -83.75
+2398.43 -81.13 2399.40 -83.35 2399.45 -82.04 2400.09 -83.06 2400.34
+-81.69 2400.63 -82.24 2400.83 -83.09 2401.49 -81.79 2401.54 -83.25
+2402.36 -83.75 2402.46 -81.32 2403.45 -81.52 2403.79 -83.18 2404.36
+-81.61 2404.45 -83.11 2404.96 -82.29 2405.23 -83.19 2405.59 -83.95
+2405.75 -82.10 2406.41 -81.42 2406.64 -83.10 2407.39 -83.64 2407.45
+-82.28 2408.67 -82.36 2408.80 -83.04 2409.36 -81.34 2409.47 -83.75
+2409.83 -81.27 2410.39 -83.69 2410.79 -83.75 2410.81 -82.31 2411.83
+-82.99 2412.09 -82.24 2412.39 -81.77 2412.43 -83.16 2413.35 -83.06
+2413.57 -82.31 2413.99 -83.01 2414.46 -81.38 2415.34 -83.75 2415.40
+-82.19 2416.01 -83.00 2416.38 -81.68 2416.48 -82.23 2416.76 -83.10
+2417.41 -81.57 2417.49 -83.75 2418.46 -81.43 2418.48 -83.18 2418.99
+-83.75 2419.40 -82.10 2420.33 -83.75 2420.41 -81.79 2420.66 -82.62
+2421.49 -49.86 2421.50 -49.78 2422.33 -13.43 2422.34 -13.43 2422.67
+-4.84 2423.46 -6.25 2423.49 -4.62 2424.19 -5.00 2424.38 -6.34 2425.43
+-4.57 2425.53 -6.25 2426.38 -4.78 2426.45 -6.25 2426.68 -6.15 2426.69
+-5.00 2427.40 -6.34 2428.19 -4.83 2428.45 -4.79 2428.80 -6.25 2429.40
+-4.74 2429.50 -6.25 2430.33 -5.27 2430.46 -6.25 2431.44 -5.97 2431.47
+-4.58 2432.19 -6.07 2432.38 -4.82 2432.50 -6.25 2432.99 -4.79 2433.45
+-5.98 2433.79 -4.89 2434.29 -6.25 2434.49 -4.75 2435.43 -4.84 2435.50
+-6.25 2435.79 -5.00 2436.49 -6.11 2437.40 -6.56 2437.44 -4.65 2437.47
+-6.25 2437.51 -4.79 2438.39 -4.90 2438.44 -6.25 2439.50 -6.56 2439.78
+-4.61 2440.45 -4.80 2440.51 -6.25 2441.49 -4.81 2441.51 -6.25 2441.74
+-5.28 2442.19 -6.25 2442.51 -5.00 2442.79 -6.25 2443.47 -4.87 2443.50
+-6.67 2444.43 -4.61 2444.51 -6.25 2445.23 -6.24 2445.46 -4.88 2446.42
+-6.25 2446.45 -4.85 2446.98 -4.84 2447.49 -6.14 2447.79 -6.12 2447.79
+-5.00 2448.41 -4.66 2448.53 -6.63 2449.50 -4.83 2449.52 -6.25 2450.43
+-4.84 2450.79 -6.12 2451.13 -4.65 2451.43 -6.25 2452.39 -6.25 2452.43
+-4.61 2452.59 -6.25 2453.31 -5.29 2453.43 -4.60 2453.45 -6.12 2454.47
+-6.11 2454.48 -4.83 2455.48 -6.15 2455.51 -4.63 2455.99 -6.25 2456.41
+-4.85 2456.78 -4.61 2457.53 -6.68 2457.79 -6.25 2458.18 -4.90 2458.49
+-6.25 2459.19 -5.00 2459.48 -4.65 2459.63 -6.16 2460.44 -6.25 2460.49
+-4.84 2460.99 -6.25 2461.03 -5.32 2461.99 -6.25 2462.65 5.49 2463.19
+6.22 2463.43 4.88 2463.53 6.25 2463.98 4.65 2464.59 6.25 2464.79 4.84
+2465.53 6.40 2465.63 4.66 2466.43 4.85 2466.53 6.25 2467.47 4.66 2467.51
+6.25 2468.33 6.25 2468.45 4.60 2468.54 4.65 2468.59 6.25 2469.45 4.50
+2469.59 6.25 2470.53 4.64 2470.73 6.25 2471.39 4.81 2471.68 6.25 2471.93
+6.25 2472.49 4.81 2472.88 4.79 2473.52 6.62 2473.79 5.00 2474.39 6.25
+2474.58 4.65 2475.19 6.25 2475.45 4.77 2475.51 6.25 2476.47 6.18 2476.54
+4.69 2477.47 6.19 2477.58 4.63 2478.46 4.70 2478.55 6.38 2478.79 6.25
+2479.38 4.89 2479.46 4.82 2479.59 6.25 2480.46 6.74 2480.58 4.86 2481.23
+6.25 2481.48 4.89 2482.52 4.63 2482.56 6.71 2483.43 6.08 2483.51 4.63
+2484.19 5.00 2484.48 6.12 2484.53 6.15 2484.58 4.63 2485.39 6.25 2485.99
+5.00 2486.48 4.53 2486.59 6.25 2487.19 6.25 2487.38 4.84 2488.46 4.64
+2488.69 5.67 2488.99 6.25 2489.33 4.61 2489.69 6.25 2490.18 4.80 2490.51
+4.64 2491.19 6.25 2491.49 5.29 2491.59 6.12 2492.53 6.25 2492.79 4.65
+2492.99 6.25 2493.19 5.32 2493.99 4.65 2494.51 6.25 2494.59 4.67 2494.59
+6.25 2495.59 6.58 2495.79 4.81 2496.47 4.84 2496.55 6.25 2497.53 4.69
+2497.58 6.63 2498.19 4.65 2498.38 6.25 2498.99 6.25 2499.56 4.84 2499.78
+4.93 2499.99 6.25 2500.49 4.81 2500.52 6.25 2501.50 4.63 2501.56 6.25
+2502.14 6.25 2502.50 4.63 2503.38 5.00 2503.55 6.62 2504.50 6.00 2504.55
+4.82 2504.66 5.32 2505.19 6.25 2505.51 6.25 2505.56 4.64 2506.51 4.94
+2506.54 6.40 2507.55 4.64 2507.60 6.58 2508.18 4.84 2508.51 6.25 2509.39
+6.25 2509.60 4.75 2509.79 6.25 2510.39 5.00 2510.56 6.82 2510.78 4.81
+2511.53 4.87 2511.57 6.14 2512.39 5.00 2512.51 6.13 2513.19 6.25 2513.60
+5.27 2514.39 5.00 2514.60 6.68 2514.80 5.62 2515.56 4.63 2515.79 4.81
+2515.99 5.64 2516.51 6.60 2516.64 5.34 2517.53 6.25 2517.73 4.67 2518.61
+4.64 2518.63 6.25 2518.99 6.25 2519.61 4.54 2519.79 6.25 2520.55 4.64
+2521.13 6.25 2521.39 4.82 2521.66 6.64 2521.99 4.62 2522.63 6.17 2522.99
+5.00 2523.52 6.13 2523.53 4.80 2524.19 6.25 2524.63 4.81 2525.52 4.82
+2525.64 6.31 2525.93 6.25 2526.03 5.32 2526.61 4.79 2526.64 6.25 2527.53
+6.40 2527.56 4.84 2528.19 5.00 2528.57 6.70 2529.39 6.25 2529.68 4.63
+2530.28 6.25 2530.63 4.83 2530.79 6.25 2531.41 5.34 2531.56 6.25 2531.99
+5.00 2532.55 6.25 2532.60 4.82 2533.54 4.80 2533.68 6.25 2534.19 4.91
+2534.55 6.13 2535.13 4.65 2535.40 6.25 2535.79 6.25 2536.52 4.66 2536.63
+4.63 2536.65 6.25 2537.64 4.65 2537.79 6.25 2538.63 4.80 2538.99 6.25
+2539.38 4.62 2539.59 6.13 2539.99 5.00 2540.33 6.25 2541.38 4.90 2541.60
+5.89 2541.79 6.25 2542.13 4.83 2542.61 6.25 2542.99 4.68 2543.55 6.34
+2543.61 5.00 2544.56 4.84 2544.60 6.71 2545.13 6.25 2545.61 4.62 2546.19
+4.79 2546.39 6.25 2546.99 6.25 2547.39 5.00 2547.61 4.63 2547.68 6.25
+2548.61 4.80 2548.68 6.25 2549.19 6.25 2549.65 4.79 2550.19 6.25 2550.57
+5.00 2551.19 6.25 2551.53 4.65 2551.99 6.25 2552.38 4.83 2552.56 4.89
+2552.66 6.67 2553.57 4.66 2553.99 6.25 2554.66 4.84 2555.03 6.25 2555.18
+4.84 2555.68 6.17 2555.93 6.25 2555.99 4.63 2556.83 5.63 2557.56 3.05
+2557.58 3.05 2558.19 -6.25 2558.58 -4.56 2558.99 -6.25 2559.39 -5.63
+2559.67 -4.91 2560.20 -6.25 2560.58 -4.92 2561.66 -4.68 2561.69 -6.25
+2562.46 -5.63 2562.59 -4.80 2562.79 -6.25 2563.28 -4.92 2563.65 -6.14
+2564.19 -4.67 2564.39 -6.25 2564.98 -4.63 2565.33 -6.25 2565.67 -4.61
+2565.99 -4.80 2566.59 -6.74 2567.59 -5.94 2567.65 -4.83 2567.66 -5.00
+2567.79 -6.25 2568.60 -6.09 2568.63 -4.59 2569.66 -6.25 2569.71 -4.84
+2570.63 -4.66 2570.79 -6.25 2571.39 -6.25 2571.65 -4.91 2571.98 -6.14
+2572.33 -4.84 2572.98 -4.89 2573.19 -6.25 2573.70 -6.38 2573.71 -5.00
+2574.70 -6.00 2575.19 5.00 2575.23 4.20 2575.65 6.30 2576.63 6.25 2576.70
+4.91 2577.69 4.84 2577.71 5.79 2577.78 4.84 2578.39 6.25 2578.59 4.66
+2578.79 6.25 2579.70 6.14 2579.99 4.82 2580.33 6.19 2580.63 4.83 2581.34
+5.32 2581.81 6.25 2582.59 6.11 2582.61 4.79 2583.33 4.64 2583.38 5.63
+2583.63 4.64 2583.73 6.25 2584.70 4.81 2584.72 6.25 2585.59 6.25 2586.08
+4.66 2586.70 4.85 2586.79 6.25 2587.61 6.65 2587.71 4.85 2587.99 6.25
+2588.63 5.27 2588.79 6.25 2589.13 4.89 2589.71 6.15 2589.98 4.84 2590.61
+4.89 2590.73 6.25 2591.63 6.17 2591.73 4.63 2592.59 6.15 2592.85 3.36
+2592.86 3.83 2593.20 -6.02 2593.71 -6.35 2594.38 -4.77 2594.75 -6.25
+2595.18 -4.84 2595.79 -6.25 2596.18 -4.92 2596.38 -4.80 2596.75 -6.25
+2597.38 -4.62 2597.61 -6.15 2597.99 -6.25 2598.08 -4.81 2598.99 -4.88
+2599.28 -6.25 2599.63 -6.27 2599.66 -5.00 2600.48 -5.00 2600.68 -6.15
+2601.39 -6.25 2601.74 -4.64 2602.59 -6.25 2602.64 -4.61 2603.19 -6.25
+2603.65 -4.59 2603.78 -4.80 2604.38 -6.00 2604.69 -4.84 2605.28 -6.25
+2605.64 -4.83 2605.73 -6.60 2606.70 -4.84 2606.79 -6.25 2607.38 -6.08
+2607.65 -4.84 2607.99 -6.25 2608.73 -5.00 2608.88 -6.25 2609.63 -4.63
+2609.66 -6.25 2610.49 -3.20 2610.50 -2.57 2610.98 7.13 2611.43 5.66
+2611.58 4.59 2612.48 6.25 2612.65 4.83 2613.39 6.25 2613.75 4.62 2614.59
+6.12 2614.63 4.64 2614.70 4.89 2614.78 6.06 2615.63 6.25 2615.74 4.60
+2616.66 4.61 2616.79 6.25 2617.66 6.25 2617.88 5.00 2618.73 4.79 2618.76
+6.57 2618.99 6.25 2619.71 4.64 2619.79 6.25 2619.83 4.81 2620.71 4.66
+2620.79 6.25 2621.99 4.62 2622.19 6.25 2622.75 6.05 2622.98 4.64 2623.66
+4.65 2623.69 6.25 2624.19 6.11 2624.19 5.00 2624.99 6.25 2625.58 4.82
+2625.75 6.06 2625.98 4.84 2626.58 4.81 2626.67 6.08 2627.66 6.02 2627.71
+4.61 2628.39 6.12 2628.78 4.72 2628.98 6.25 2629.79 -6.25 2630.18 -5.04
+2630.19 -6.25 2630.77 -6.08 2631.19 -4.83 2631.69 -6.10 2631.89 -5.30
+2632.75 -4.90 2632.99 -6.25 2633.72 -6.10 2633.79 -4.61 2634.50 -5.62
+2634.77 -4.63 2634.98 -4.84 2635.19 -5.63 2635.70 -4.85 2635.79 -6.25
+2636.77 -6.25 2636.98 -4.66 2637.58 -4.82 2637.79 -6.25 2638.74 -4.62
+2638.98 -6.03 2639.78 -6.14 2639.79 -4.80 2640.15 -5.62 2640.43 -4.81
+2640.80 -6.25 2641.38 -4.82 2641.58 -4.86 2641.85 -6.15 2642.75 -5.00
+2642.99 -6.25 2643.38 -4.60 2644.01 -5.62 2644.73 -6.65 2644.76 -4.65
+2645.33 -6.12 2645.75 -4.65 2646.53 -6.25 2646.59 -4.85 2646.79 -4.85
+2646.81 -6.25 2647.48 -6.25 2647.71 -4.87 2648.58 -6.15 2649.13 3.16
+2649.15 3.21 2649.39 6.25 2650.59 4.67 2650.73 6.14 2650.88 4.65 2651.30
+5.64 2651.73 5.00 2652.39 6.25 2652.72 6.29 2652.81 4.67 2653.59 6.25
+2653.80 4.66 2654.39 6.25 2654.79 4.59 2655.58 4.61 2655.83 6.13 2656.38
+4.64 2656.39 6.25 2656.73 6.17 2656.75 4.85 2657.72 4.88 2657.76 6.35
+2658.73 4.81 2659.19 6.14 2659.81 6.49 2659.98 4.86 2660.33 6.25 2660.79
+4.80 2660.93 4.84 2660.99 6.25 2661.84 6.25 2662.18 4.81 2662.77 4.85
+2662.83 6.42 2663.81 4.67 2663.99 6.25 2664.28 6.25 2664.75 4.84 2665.19
+4.81 2665.82 6.15 2665.99 6.25 2666.75 4.81 2667.39 6.01 2667.39 5.00
+2667.77 6.13 2668.28 4.81 2668.78 4.47 2669.19 6.25 2669.75 4.67 2669.99
+6.25 2670.73 4.69 2670.83 6.25 2671.28 4.81 2671.79 6.31 2671.85 6.25
+2672.27 5.31 2672.74 4.85 2672.82 6.59 2673.83 4.67 2673.85 6.25 2674.73
+6.71 2674.98 4.70 2675.59 6.25 2675.84 4.82 2676.74 6.09 2676.76 4.62
+2677.18 4.80 2677.43 6.19 2677.75 4.67 2677.85 6.33 2678.69 6.25 2678.85
+4.65 2679.39 6.25 2679.75 4.67 2680.22 5.33 2680.85 6.25 2681.76 4.81
+2681.86 6.25 2681.98 4.67 2682.59 6.25 2682.81 5.00 2683.18 6.27 2683.79
+6.63 2684.19 4.90 2684.59 6.25 2685.08 4.65 2685.81 6.15 2685.85 4.67
+2686.76 4.81 2686.81 5.90 2687.19 5.91 2687.77 -6.77 2687.78 -6.77
+2687.82 -5.00 2688.79 -6.28 2688.83 -4.83 2689.77 -4.89 2689.81 -6.31
+2690.39 -6.25 2690.87 -4.66 2691.76 -6.15 2691.85 -4.64 2692.33 -4.62
+2692.59 -6.25 2692.83 -4.66 2692.89 -6.25 2694.19 -6.25 2694.38 -4.65
+2694.58 -4.59 2694.83 -6.25 2695.38 -4.83 2695.99 -6.25 2696.33 -6.25
+2696.81 -4.81 2697.59 -5.00 2697.79 -6.69 2697.87 -4.88 2698.18 -6.09
+2698.88 -4.79 2698.89 -6.25 2699.59 -6.25 2699.99 -5.00 2700.80 -4.63
+2700.89 -6.38 2701.39 -6.25 2701.89 -4.87 2702.59 -6.25 2702.86 -4.86
+2703.59 -6.25 2703.73 -4.35 2703.74 -4.00 2704.38 6.63 2704.89 6.25
+2705.38 4.91 2705.88 6.14 2705.98 4.81 2706.59 5.00 2706.99 6.25 2707.79
+6.72 2707.89 4.82 2708.18 4.89 2708.27 5.63 2708.83 4.63 2709.08 6.25
+2709.82 4.62 2710.45 5.63 2710.83 4.68 2710.89 6.56 2711.81 4.67 2711.85
+6.12 2712.69 5.31 2712.79 6.40 2713.33 6.25 2713.79 4.68 2713.89 6.25
+2713.98 4.66 2714.81 5.00 2715.39 6.25 2715.80 6.70 2715.89 4.81 2716.86
+6.25 2716.98 4.63 2717.85 4.71 2717.90 6.78 2718.18 5.68 2718.85 -6.71
+2718.86 -6.71 2719.58 -4.95 2719.84 -4.67 2720.38 -6.13 2720.81 -6.34
+2720.90 -4.62 2721.59 -6.25 2721.88 -4.68 2722.43 -6.25 2722.98 -4.78
+2723.80 -5.64 2723.84 -4.62 2723.98 -4.86 2724.59 -6.25 2724.79 -4.83
+2724.82 -6.25 2725.81 -4.61 2725.93 -6.25 2726.80 -4.75 2726.90 -6.25
+2727.39 -6.25 2727.85 -4.76 2728.59 -6.25 2728.83 -4.60 2729.38 -6.11
+2729.39 -5.00 2729.78 -4.61 2730.13 -6.25 2730.84 -4.61 2731.26 -5.64
+2731.91 -6.24 2732.18 -4.81 2732.84 -4.88 2732.93 -6.25 2733.43 -6.25
+2733.82 -4.85 2733.98 -4.63 2734.59 -6.25 2734.83 -5.93 2735.63 5.76
+2735.91 6.22 2735.93 4.74 2736.83 4.81 2736.89 6.25 2737.39 6.25 2737.98
+4.64 2738.88 6.72 2738.93 5.00 2739.19 6.25 2739.78 4.89 2739.93 4.62
+2740.39 6.12 2740.78 6.18 2740.79 5.00 2741.58 4.66 2741.84 6.56 2742.58
+6.13 2742.85 4.84 2743.39 6.25 2743.68 4.66 2744.38 4.67 2744.59 6.25
+2744.94 6.61 2744.99 5.00 2745.94 4.79 2745.99 6.25 2746.59 6.25 2746.89
+4.83 2747.78 4.88 2747.99 6.25 2748.28 6.25 2748.59 4.82 2749.85 6.58
+2749.90 4.67 2750.08 4.66 2750.33 6.25 2750.91 6.25 2751.18 4.92 2751.78
+4.82 2751.86 6.11 2752.90 6.25 2753.30 1.08 2753.30 1.08 2753.90 -6.45
+2754.39 -5.00 2754.59 -6.25 2755.28 -4.78 2755.79 -6.25 2755.88 -4.80
+2755.96 -6.25 2756.88 -4.66 2757.33 -6.25 2757.86 -4.72 2758.28 -6.25
+2758.79 -6.25 2758.95 -4.60 2759.19 -6.25 2759.93 -4.63 2760.59 -6.25
+2760.85 -4.81 2760.90 -4.78 2760.95 -6.69 2761.88 -6.25 2761.99 -4.82
+2762.79 -6.25 2762.83 -4.59 2763.39 -6.25 2763.96 -4.55 2764.90 -6.69
+2764.96 -4.60 2765.18 -4.77 2765.79 -6.25 2765.90 -6.25 2765.99 -5.00
+2766.92 -4.62 2766.97 -6.12 2767.58 -4.84 2767.91 -6.25 2768.58 -4.64
+2768.59 -6.25 2769.78 -4.82 2769.79 -6.25 2770.58 -5.00 2770.59 -5.64
+2771.39 -5.60 2771.76 -1.90 2771.79 -1.25 2772.48 6.25 2772.87 4.87
+2772.93 6.45 2773.78 4.77 2773.91 6.25 2774.38 4.79 2774.89 6.40 2775.79
+6.25 2775.96 4.81 2776.18 4.65 2776.43 6.25 2776.97 4.63 2777.59 6.25
+2777.94 6.34 2777.96 4.85 2778.58 4.88 2778.59 6.25 2779.43 4.63 2779.58
+5.61 2780.39 5.00 2780.94 6.33 2781.39 5.62 2781.58 4.79 2781.99 6.08
+2782.38 4.81 2782.94 4.81 2783.18 6.25 2783.94 4.79 2783.95 5.76 2784.58
+4.83 2784.94 6.34 2785.23 5.69 2786.05 27.93 2786.16 28.01 2786.65
+27.30 2787.08 26.23 2787.72 27.77 2787.79 27.37 2788.00 27.96 2788.83
+27.28 2788.88 27.75 2789.96 26.38 2790.24 27.79 2790.41 27.80 2790.96
+26.16 2791.71 27.76 2791.91 26.47 2791.99 27.92 2792.33 27.37 2792.79
+27.76 2793.55 27.33 2793.89 27.35 2794.36 27.82 2794.85 27.36 2794.92
+27.92 2795.30 27.30 2795.97 27.78 2796.66 27.82 2796.78 26.35 2797.08
+27.78 2797.48 26.25 2797.93 28.78 2797.97 26.25 2798.78 26.54 2798.97
+27.79 2799.74 27.75 2800.34 24.77 2800.54 19.60 2801.04 28.32 2801.51
+27.32 2801.92 28.82 2802.53 26.20 2802.80 27.77 2803.19 28.75 2803.31
+27.35 2803.84 27.83 2804.40 27.27 2804.68 27.27 2805.12 27.81 2805.93
+27.85 2806.21 27.37 2806.88 26.25 2807.04 27.76 2807.39 27.36 2807.73
+28.75 2808.00 29.02 2808.52 27.28 2808.95 27.90 2809.33 26.51 2809.99
+27.94 2810.28 27.33 2811.02 28.87 2811.09 27.28 2811.48 27.33 2812.00
+28.95 2812.13 27.80 2812.89 27.27 2813.19 26.25 2813.45 27.77 2814.05
+26.70 2814.23 27.80 2815.04 27.75 2815.22 27.29 2815.98 27.83 2816.05
+26.50 2817.05 28.75 2817.08 27.33 2817.50 27.73 2817.79 27.30 2818.01
+27.58 2818.81 -1.02 2818.82 -1.54 2819.64 -28.11 2819.95 -28.09 2820.03
+-26.63 2820.58 -27.35 2821.03 -28.75 2821.41 -27.82 2822.11 -27.32
+2822.88 -27.16 2822.91 -27.82 2823.22 -27.93 2823.38 -26.20 2823.96
+-27.83 2824.07 -26.33 2824.70 -27.28 2825.53 -27.79 2825.83 -27.78
+2826.01 -26.46 2826.96 -26.30 2827.08 -27.74 2827.80 -27.86 2828.00
+-26.31 2828.18 -27.76 2828.87 -27.29 2829.02 -28.80 2829.06 -27.26
+2830.02 -26.30 2830.13 -27.81 2831.01 -26.26 2831.38 -27.74 2832.00
+-26.67 2832.13 -27.81 2832.40 -27.79 2832.88 -27.31 2833.78 -27.26
+2833.80 -27.87 2834.00 -26.42 2834.11 -27.91 2835.25 -27.29 2835.26
+-27.78 2836.08 -27.84 2836.19 -26.25 2836.51 -27.87 2837.29 -25.45
+2837.30 -25.34 2838.14 11.99 2838.14 11.99 2838.74 28.38 2839.04 28.45
+2839.58 26.39 2840.10 27.76 2840.33 27.26 2840.72 27.33 2841.47 27.85
+2841.73 27.90 2842.20 27.32 2842.39 27.31 2842.84 27.81 2843.62 27.85
+2843.99 26.31 2844.43 27.29 2844.75 27.76 2844.89 27.78 2845.03 26.43
+2845.74 27.31 2845.99 27.92 2847.15 27.29 2847.34 27.79 2848.00 27.85
+2848.04 26.31 2848.33 27.81 2848.83 27.26 2849.33 27.27 2849.83 27.77
+2850.05 28.94 2850.60 27.35 2850.86 27.76 2850.91 27.29 2852.00 27.88
+2852.10 26.25 2852.49 27.77 2852.89 27.31 2853.86 27.27 2853.93 27.75
+2854.19 26.27 2854.55 27.81 2855.35 27.76 2855.72 27.30 2855.86 27.32
+2856.59 27.78 2856.63 27.74 2857.46 -3.50 2857.46 -3.50 2858.11 -28.16
+2858.33 -28.09 2859.11 -26.25 2859.65 -27.76 2859.68 -26.49 2860.01
+-27.85 2860.05 -26.37 2861.35 -27.75 2861.38 -26.42 2862.04 -26.52
+2862.06 -28.77 2862.59 -28.75 2863.33 -27.32 2863.78 -28.81 2864.11
+-26.34 2864.56 -27.82 2864.83 -27.36 2865.18 -28.87 2865.64 -27.32
+2865.92 -27.33 2866.50 -27.81 2867.39 -28.84 2867.44 -27.35 2867.79
+-28.75 2868.27 -27.31 2868.41 -27.35 2869.02 -27.83 2869.58 -28.87
+2869.85 -27.33 2870.44 -27.30 2870.86 -27.82 2871.01 -28.75 2871.72
+-27.31 2871.93 -27.76 2872.13 -26.25 2873.04 -26.67 2873.15 -27.91
+2873.53 -27.81 2873.95 -27.31 2874.70 -27.27 2875.08 -27.88 2875.41
+-27.83 2875.92 -25.12 2875.95 -25.26 2876.76 10.96 2876.78 10.87 2877.34
+28.16 2877.62 27.93 2878.30 27.35 2878.66 27.33 2879.18 28.87 2879.69
+27.33 2879.91 27.87 2880.20 27.82 2880.59 26.25 2881.09 28.86 2881.33
+26.25 2882.23 28.75 2882.38 27.32 2883.11 27.31 2883.14 27.85 2883.74
+27.35 2884.04 28.12 2884.58 28.90 2885.11 26.25 2885.24 27.32 2885.61
+27.79 2886.14 27.88 2886.68 27.35 2887.18 27.30 2887.66 27.75 2887.88
+27.35 2888.48 27.79 2888.81 27.81 2889.26 27.26 2890.04 26.39 2890.16
+27.75 2890.73 26.53 2891.05 27.81 2891.09 26.39 2891.39 27.74 2892.19
+26.25 2892.74 27.79 2892.80 27.80 2893.26 27.31 2893.82 27.75 2893.99
+27.28 2894.79 27.79 2895.25 23.48 2895.26 23.49 2896.09 -10.55 2896.10
+-10.55 2896.74 -28.30 2897.05 -27.99 2897.68 -27.27 2898.09 -28.75
+2898.33 -27.34 2898.86 -27.84 2899.10 -26.55 2900.03 -27.76 2900.07
+-26.44 2901.06 -26.68 2901.11 -27.95 2901.18 -26.51 2901.29 -27.78
+2902.22 -27.28 2902.80 -27.81 2903.19 -28.75 2903.64 -27.31 2904.08
+-27.78 2904.16 -26.68 2905.13 -26.42 2905.33 -27.87 2905.52 -27.83
+2906.18 -26.18 2906.44 -27.80 2906.76 -27.30 2907.07 -28.87 2907.56
+-27.36 2907.98 -27.77 2908.53 -27.32 2908.79 -26.25 2909.31 -27.82
+2909.56 -27.85 2910.12 -26.58 2910.78 -28.75 2910.99 -27.30 2911.29
+-27.28 2911.38 -27.88 2912.09 -27.82 2912.13 -26.62 2913.13 -28.79
+2913.74 -11.02 2913.74 -11.02 2914.58 25.00 2914.58 25.12 2914.78 28.38
+2916.09 29.07 2916.17 26.61 2916.33 27.89 2917.05 27.37 2917.13 26.24
+2917.83 27.86 2918.08 26.42 2918.15 27.97 2918.83 27.84 2918.90 27.35
+2920.17 27.81 2920.39 26.25 2921.15 27.84 2921.22 27.32 2921.60 27.25
+2922.11 27.75 2922.15 26.39 2922.38 28.87 2923.10 28.91 2923.65 27.24
+2923.85 27.26 2924.33 28.75 2925.11 28.90 2925.16 27.32 2925.53 28.75
+2925.94 27.26 2926.82 27.79 2927.15 26.37 2927.19 27.85 2927.73 27.32
+2928.33 27.32 2928.79 27.75 2929.13 26.27 2929.43 28.75 2929.78 26.26
+2929.79 28.75 2930.66 27.32 2931.16 28.75 2931.49 27.79 2932.12 27.31
+2932.78 26.30 2932.79 28.75 2933.42 27.34 2933.70 27.82 2934.01 27.75
+2934.59 27.33 2934.99 26.25 2935.39 27.77 2936.12 27.86 2936.25 27.32
+2937.06 27.33 2937.13 27.85 2937.41 27.36 2937.78 27.82 2938.17 26.29
+2938.23 27.92 2939.36 27.33 2939.76 27.77 2940.13 28.01 2940.56 27.33
+2941.19 28.78 2941.23 26.15 2941.59 27.33 2942.22 28.02 2942.33 28.03
+2942.71 27.35 2943.38 26.25 2943.96 27.74 2944.18 26.29 2944.39 28.75
+2945.14 28.88 2945.25 27.34 2946.20 26.85 2946.44 27.81 2946.78 28.75
+2947.34 27.34 2947.60 27.32 2947.61 27.77 2948.20 26.25 2948.39 28.75
+2949.15 28.75 2949.19 26.41 2950.06 27.33 2950.59 28.75 2951.24 26.26
+2951.39 28.75 2951.83 27.31 2952.13 27.80 2952.44 27.32 2953.20 27.83
+2953.32 27.80 2953.94 27.29 2954.38 28.75 2954.73 27.33 2955.61 27.79
+2955.74 26.13 2955.74 26.13 2956.56 -8.12 2956.58 -8.75 2957.26 -28.75
+2957.42 -28.01 2958.04 -27.38 2958.32 -27.77 2958.33 -27.28 2959.10
+-27.38 2959.16 -28.75 2960.18 -27.89 2960.22 -26.25 2960.81 -27.30
+2961.59 -27.82 2961.80 -27.81 2961.98 -26.30 2962.64 -27.77 2963.10
+-27.29 2963.48 -27.29 2963.74 -27.86 2964.18 -27.89 2964.26 -26.50
+2965.20 -26.26 2965.22 -28.78 2966.06 -27.85 2966.19 -26.30 2967.13
+-27.80 2967.16 -26.47 2967.96 -27.84 2968.22 -26.58 2968.43 -27.32
+2968.75 -27.79 2969.22 -28.86 2969.76 -27.32 2970.21 -26.53 2970.82
+-27.82 2971.25 -28.84 2971.28 -26.42 2972.11 -27.28 2972.16 -28.87
+2972.99 -27.82 2973.18 -26.30 2974.04 -27.30 2974.11 -27.76 2974.22
+-27.32 2974.23 -28.75 2975.08 -27.80 2975.90 -24.73 2975.90 -24.73
+2976.74 11.73 2976.74 11.73 2977.38 28.75 2977.63 27.86 2978.23 26.33
+2978.56 27.77 2978.83 27.32 2979.89 27.34 2980.07 27.81 2980.19 26.71
+2980.28 28.01 2981.29 27.76 2981.47 27.32 2981.84 27.33 2982.20 27.88
+2982.68 27.77 2983.38 26.40 2983.70 27.32 2984.25 28.92 2984.53 26.33
+2984.59 27.82 2985.27 27.76 2985.30 26.25 2985.98 27.32 2986.23 27.81
+2987.22 28.75 2987.48 27.30 2988.21 28.88 2988.21 27.31 2988.54 27.36
+2989.19 27.88 2989.34 27.76 2989.96 27.32 2990.21 28.75 2990.44 27.30
+2991.20 27.91 2991.29 26.57 2991.98 27.31 2992.24 27.84 2993.28 26.48
+2993.39 27.82 2994.16 27.27 2994.26 28.85 2994.49 27.74 2995.21 5.85
+2995.24 6.25 2996.06 -18.52 2996.06 -18.52 2996.53 -28.75 2997.15 -27.36
+2997.18 -28.97 2997.76 -27.80 2998.42 -27.34 2999.11 -27.27 2999.14
+-27.78 2999.81 -26.25 3000.24 -28.90 3000.43 -27.78 3000.96 -27.29
+3001.16 -27.33 3001.95 -27.84 3002.39 -28.82 3002.61 -27.34 3003.01
+-26.25 3003.02 -27.79 3003.85 -26.62 3004.33 -28.83 3004.73 -27.34
+3005.09 -27.83 3005.61 -26.25 3005.98 -27.83 3006.21 -28.96 3006.33
+-26.40 3007.14 -27.77 3007.58 -27.29 3007.98 -27.27 3008.33 -27.84
+3009.18 -27.34 3009.25 -27.83 3009.69 -27.26 3010.26 -27.83 3010.42
+-27.35 3010.63 -27.84 3011.73 -27.77 3011.76 -27.28 3012.36 -27.83
+3012.89 -11.99 3012.89 -11.99 3013.73 24.52 3013.73 24.52 3014.28 28.75
+3014.98 27.36 3015.34 28.93 3015.71 26.33 3015.76 27.82 3016.37 26.25
+3016.72 27.78 3017.26 26.50 3017.69 27.84 3017.98 27.79 3018.61 26.25
+3019.33 27.76 3019.48 27.32 3020.28 28.84 3020.39 27.37 3020.53 27.33
+3020.81 28.75 3021.31 28.79 3021.36 26.23 3022.32 27.97 3022.92 27.35
+3023.10 27.31 3023.74 27.76 3024.02 27.35 3024.25 28.96 3024.72 27.78
+3025.38 26.25 3025.52 27.35 3026.15 27.81 3026.41 27.79 3026.51 26.52
+3027.22 27.76 3027.45 27.32 3028.04 27.29 3028.38 27.98 3029.37 27.87
+3029.64 27.31 3030.32 27.98 3030.53 25.37 3030.53 25.37 3031.36 -11.16
+3031.37 -10.12 3032.01 -28.75 3032.29 -28.15 3032.61 -26.25 3033.33
+-26.55 3033.73 -27.83 3033.90 -27.81 3034.69 -27.28 3035.30 -26.33
+3035.43 -27.79 3036.29 -27.90 3036.37 -26.66 3036.53 -27.77 3037.17
+-27.28 3037.36 -26.20 3037.99 -27.81 3038.35 -27.86 3038.91 -27.35
+3039.11 -27.30 3039.73 -27.88 3040.15 -27.84 3040.31 -26.60 3040.61
+-28.75 3041.29 -26.32 3041.45 -27.32 3042.21 -27.85 3042.31 -28.75
+3042.92 -27.27 3043.63 -27.27 3043.84 -27.79 3044.22 -28.75 3044.39
+-26.58 3044.92 -27.84 3045.26 -27.30 3046.32 -26.33 3046.45 -27.85
+3046.61 -26.24 3047.01 -27.84 3047.42 -28.75 3048.17 -22.71 3048.17
+-22.71 3049.01 14.81 3049.02 14.99 3049.37 28.75 3049.86 27.35 3050.53
+27.81 3050.70 27.79 3051.28 27.34 3052.03 27.31 3052.37 27.85 3052.82
+27.81 3053.07 27.37 3053.42 27.77 3053.67 27.30 3054.31 28.83 3054.43
+27.34 3055.15 27.81 3055.55 27.31 3056.06 26.25 3056.47 27.74 3056.64
+27.30 3057.40 28.86 3057.41 28.86 3057.97 27.33 3058.42 26.29 3058.98
+27.76 3059.33 27.79 3059.83 27.36 3060.09 27.76 3060.13 27.29 3061.36
+27.87 3061.41 26.45 3061.81 28.75 3062.43 26.13 3062.45 26.13 3062.46
+28.89 3063.73 27.80 3064.07 27.38 3064.70 27.73 3064.73 27.29 3065.22
+26.25 3065.41 27.88 3066.05 27.79 3066.65 22.77 3066.65 22.77 3067.42
+4.77 3068.01 5.00 3068.22 6.25 3068.39 4.68 3069.00 5.66 3069.44 4.80
+3069.45 6.25 3070.21 6.25 3070.39 5.00 3071.01 6.17 3071.43 4.87 3072.01
+4.84 3072.53 21.17 3072.53 21.17 3073.36 57.33 3073.37 57.33 3074.09
+83.21 3074.41 83.22 3074.45 81.78 3075.70 82.34 3075.81 84.05 3076.01
+83.12 3076.37 81.48 3076.81 83.75 3077.39 81.63 3078.15 82.98 3078.40
+81.49 3078.56 82.33 3078.85 83.04 3079.57 83.00 3079.81 81.22 3080.37
+83.23 3080.43 81.48 3080.96 83.75 3081.32 82.36 3081.91 83.75 3082.45
+81.60 3082.91 83.75 3083.42 81.25 3083.45 81.49 3083.82 83.75 3084.44
+83.89 3084.97 82.33 3085.35 81.87 3085.42 83.22 3086.22 83.75 3086.81
+81.67 3086.84 82.98 3087.63 53.62 3087.83 46.90 3088.49 73.72 3088.49
+73.72 3088.89 83.46 3089.43 83.31 3089.61 81.57 3090.21 83.75 3090.46
+82.02 3091.47 81.51 3091.62 83.07 3092.30 83.02 3092.38 81.98 3093.13
+82.99 3093.25 81.54 3093.77 83.06 3093.97 82.36 3094.48 81.97 3094.81
+83.88 3095.23 83.18 3095.47 81.37 3096.47 81.28 3096.73 83.05 3097.43
+83.31 3097.60 82.36 3098.17 83.12 3098.49 81.25 3098.71 83.75 3099.09
+82.17 3099.43 81.48 3099.90 83.85 3100.38 83.20 3100.65 82.35 3101.47
+81.44 3101.81 83.22 3102.41 83.09 3102.43 81.83 3103.01 81.41 3103.02
+83.75 3103.93 82.99 3104.41 81.33 3104.51 83.75 3105.10 82.31 3105.47
+81.84 3105.61 83.75 3106.29 83.09 3106.45 81.41 3107.02 83.75 3107.49
+81.90 3108.25 83.03 3108.44 81.69 3109.09 82.99 3109.46 81.19 3109.83
+83.17 3110.13 82.32 3110.36 83.75 3110.41 82.02 3111.21 83.75 3111.49
+81.39 3112.41 81.67 3112.51 83.02 3113.45 83.54 3113.50 81.75 3113.70
+82.70 3114.53 50.65 3114.61 47.14 3115.37 76.65 3115.37 76.65 3115.71
+83.40 3116.37 82.25 3116.61 83.75 3117.48 81.33 3117.54 83.36 3118.21
+83.05 3118.46 81.34 3119.51 81.49 3119.57 83.00 3119.61 83.75 3119.70
+81.83 3120.43 81.68 3121.01 83.08 3121.45 83.90 3121.61 81.41 3122.50
+83.14 3122.60 81.63 3123.25 83.05 3123.43 81.56 3124.43 81.41 3124.53
+83.75 3124.76 82.17 3124.81 83.80 3125.47 83.50 3125.94 82.35 3126.41
+81.44 3126.52 83.91 3127.52 81.84 3127.55 82.96 3128.42 83.17 3128.71
+82.34 3129.41 82.34 3129.54 83.75 3129.76 83.75 3130.43 82.09 3130.51
+83.18 3131.33 60.33 3131.33 60.33 3132.17 22.92 3132.17 22.92 3132.93
+5.00 3133.36 6.25 3133.61 5.00 3134.43 4.83 3134.51 6.25 3135.21 4.85
+3135.22 6.25 3135.54 6.25 3135.81 4.66 3136.47 6.40 3136.76 5.00 3137.53
+4.82 3137.71 6.25 3138.47 4.89 3138.49 6.25 3139.21 4.59 3139.51 6.29
+3139.82 6.25 3140.41 4.60 3141.19 5.32 3141.34 5.63 3141.43 4.79 3141.54
+6.74 3142.45 4.81 3142.82 6.25 3143.45 6.31 3143.53 4.89 3144.01 6.12
+3144.49 4.83 3145.01 6.25 3145.47 5.34 3145.61 6.25 3146.41 4.87 3146.81
+4.78 3147.15 6.28 3147.41 6.25 3147.50 4.76 3148.49 6.25 3148.51 4.87
+3149.45 4.70 3149.51 6.25 3149.81 6.25 3150.41 5.00 3151.22 6.25 3151.47
+4.91 3151.49 5.00 3151.57 6.25 3152.48 5.00 3152.56 6.51 3153.22 6.25
+3153.52 4.67 3154.06 6.25 3154.41 4.82 3155.51 6.62 3155.53 4.64 3156.21
+4.65 3156.52 6.06 3156.57 6.25 3156.97 5.33 3157.46 4.71 3157.61 6.12
+3158.61 6.25 3159.01 4.84 3159.53 4.63 3159.86 6.25 3160.21 6.25 3160.58
+5.00 3161.47 6.60 3161.51 4.61 3161.61 4.63 3161.62 6.25 3162.49 6.31
+3162.61 4.81 3163.41 6.25 3163.49 4.65 3164.51 4.81 3164.54 6.25 3165.01
+6.13 3165.57 4.64 3166.53 6.39 3166.56 4.84 3166.75 4.87 3166.82 6.25
+3167.53 4.80 3167.59 6.25 3168.53 6.17 3168.57 4.67 3169.21 6.25 3169.50
+4.80 3170.41 6.25 3170.61 4.64 3171.50 4.62 3171.59 6.25 3171.79 5.32
+3172.21 6.25 3172.49 6.35 3173.25 4.80 3173.58 6.34 3174.01 4.82 3174.58
+4.67 3174.62 6.25 3175.22 5.00 3175.61 6.77 3176.55 6.33 3176.58 4.81
+3177.01 6.25 3177.35 4.86 3177.62 6.25 3178.21 4.65 3178.51 6.25 3178.55
+4.85 3179.61 6.25 3179.83 5.33 3180.51 4.64 3180.61 5.80 3181.30 5.32
+3181.53 6.25 3182.01 6.12 3182.01 5.00 3182.65 4.87 3183.39 19.16 3183.41
+19.02 3184.01 4.72 3184.55 5.03 3184.58 6.25 3185.52 4.82 3185.86 6.25
+3185.96 6.25 3186.55 4.64 3187.41 6.13 3187.53 4.66 3187.61 6.34 3188.01
+4.68 3188.50 6.15 3188.60 4.67 3189.56 4.67 3189.59 6.14 3190.30 6.16
+3190.61 4.63 3191.61 6.26 3191.63 5.00 3192.21 6.25 3192.52 4.60 3192.91
+5.33 3193.49 24.80 3193.49 24.80 3194.33 62.12 3194.33 62.12 3195.01
+83.75 3195.41 81.25 3195.63 83.75 3196.53 83.75 3196.83 82.35 3197.21
+83.07 3197.63 82.38 3198.15 83.75 3198.25 82.37 3198.81 83.75 3199.35
+81.95 3199.53 81.68 3200.01 83.75 3200.43 82.38 3200.60 84.01 3201.53
+81.58 3201.82 83.75 3202.17 83.04 3202.59 81.32 3202.89 83.06 3203.55
+81.80 3203.57 81.80 3203.63 84.02 3204.51 83.13 3204.53 81.58 3205.45
+82.36 3205.75 83.75 3206.58 83.25 3206.65 81.90 3207.01 83.75 3207.07
+82.36 3208.03 83.03 3208.41 81.53 3208.75 83.13 3209.21 82.35 3209.57
+83.75 3210.03 82.36 3210.53 81.37 3210.96 83.75 3211.61 81.59 3211.63
+83.09 3212.41 83.05 3212.55 81.79 3213.15 83.04 3213.37 82.36 3213.65
+83.75 3214.21 82.30 3214.61 83.78 3214.93 82.33 3215.63 84.01 3215.70
+82.34 3216.21 81.34 3216.65 83.75 3217.56 83.59 3217.65 81.45 3218.21
+81.58 3218.23 83.04 3218.69 82.31 3218.90 83.00 3219.81 83.75 3220.01
+82.36 3220.41 83.10 3220.61 81.50 3221.51 82.34 3221.86 83.01 3222.56
+82.00 3222.65 83.42 3223.30 83.04 3223.55 81.36 3224.41 83.75 3224.42
+82.34 3224.58 83.75 3225.18 82.32 3225.56 81.62 3226.21 83.23 3226.68
+81.25 3226.90 83.01 3227.09 82.90 3227.93 58.95 3227.93 58.95 3228.76
+21.86 3228.77 21.86 3229.58 -13.61 3229.61 -13.61 3230.43 -51.19 3230.45
+-51.91 3231.27 -83.13 3231.57 -81.88 3231.63 -83.39 3232.35 -82.95
+3232.62 -81.45 3233.32 -82.39 3233.73 -83.06 3234.57 -81.87 3234.62
+-83.08 3234.85 -82.33 3235.36 -83.75 3235.53 -82.37 3235.91 -83.03
+3236.61 -83.16 3236.62 -82.12 3237.35 -83.05 3237.70 -81.58 3238.53
+-82.36 3238.80 -83.13 3239.21 -81.27 3239.65 -83.26 3240.03 -82.23
+3240.22 -83.75 3240.59 -81.69 3241.00 -83.08 3241.63 -81.68 3241.71
+-83.05 3242.68 -81.36 3242.79 -83.75 3243.33 -83.00 3243.55 -82.31
+3244.69 -81.63 3244.71 -83.75 3244.81 -83.75 3245.03 -82.32 3246.01
+-83.04 3246.41 -80.65 3246.41 -80.65 3247.23 -45.10 3247.25 -44.69
+3248.08 -7.77 3248.09 -7.77 3248.92 29.61 3248.93 29.61 3249.76 66.58
+3249.77 66.58 3250.31 83.19 3250.62 81.37 3250.73 83.75 3251.61 83.02
+3251.71 81.70 3252.66 83.75 3252.71 81.77 3253.35 83.03 3253.68 81.25
+3254.71 83.75 3254.81 81.84 3255.15 82.36 3255.41 83.06 3255.87 82.36
+3256.21 83.02 3256.69 83.75 3257.25 81.49 3257.50 81.65 3257.68 83.75
+3258.41 83.75 3258.77 82.35 3259.13 83.06 3259.48 82.38 3260.56 83.75
+3260.63 82.27 3260.81 81.34 3261.41 83.14 3261.63 81.19 3262.11 83.02
+3262.81 83.75 3263.13 82.15 3263.41 83.15 3263.86 82.23 3264.25 81.77
+3264.63 83.51 3265.30 82.27 3265.65 83.75 3265.81 81.64 3266.41 83.08
+3267.15 83.03 3267.20 81.46 3267.83 82.99 3268.25 71.98 3268.25 71.98
+3269.09 34.80 3269.09 34.80 3269.92 -2.63 3269.93 -2.63 3270.76 -39.10
+3270.77 -39.10 3271.60 -75.90 3271.61 -75.90 3272.41 -83.75 3272.61
+-83.13 3272.65 -81.64 3273.31 -83.75 3273.75 -81.41 3274.53 -82.36
+3274.69 -84.04 3275.61 -83.12 3275.68 -81.46 3275.91 -82.31 3276.11
+-83.75 3277.05 -83.14 3277.30 -81.57 3277.63 -83.20 3277.71 -81.72
+3278.68 -84.03 3279.10 -81.89 3279.63 -81.48 3279.85 -83.02 3280.55
+-83.12 3280.72 -81.71 3281.08 -82.29 3281.33 -83.09 3281.76 -81.35
+3282.05 -83.08 3282.67 -83.75 3282.71 -82.05 3283.51 -83.06 3283.65
+-81.45 3284.22 -83.04 3284.61 -82.36 3285.21 -81.30 3285.63 -83.10
+3286.61 -83.75 3286.71 -81.43 3286.85 -82.32 3287.28 -82.99 3287.65
+-81.24 3287.83 -83.00 3288.66 -83.16 3289.02 -82.34 3289.35 -83.01
+3290.08 -74.79 3290.09 -74.79 3290.93 -36.68 3290.93 -36.68 3291.76
+0.00 3291.77 0.00 3292.60 36.51 3292.61 37.26 3293.45 74.39 3293.45
+74.39 3294.15 83.13 3294.61 81.25 3294.91 83.01 3295.65 83.20 3295.81
+81.62 3296.41 81.69 3296.78 83.75 3297.42 82.36 3297.61 83.75 3297.70
+81.75 3297.75 83.09 3298.68 83.75 3299.01 82.34 3299.56 82.34 3300.01
+83.09 3300.61 81.75 3300.74 83.75 3301.11 82.36 3301.45 83.14 3301.91
+82.37 3302.16 82.98 3302.81 81.62 3302.93 83.02 3303.61 81.89 3303.78
+83.75 3304.71 83.93 3304.73 82.37 3305.61 83.75 3305.77 81.65 3306.46
+83.05 3306.61 81.95 3307.51 83.75 3307.68 81.38 3308.03 83.03 3308.25
+82.37 3308.70 81.95 3308.75 83.11 3309.88 82.30 3310.17 83.06 3310.91
+83.75 3311.09 81.02 3311.09 81.02 3311.92 45.12 3311.93 45.12 3312.76
+8.51 3312.77 8.51 3313.60 -28.68 3313.61 -28.84 3314.45 -65.86 3314.45
+-65.86 3315.03 -83.42 3315.61 -81.73 3315.81 -83.75 3316.37 -83.01
+3316.85 -82.24 3317.69 -83.75 3317.78 -81.41 3318.17 -82.35 3318.61
+-83.75 3318.65 -83.10 3318.81 -81.25 3319.65 -82.31 3320.21 -83.75
+3320.79 -81.64 3320.81 -83.75 3321.71 -81.93 3321.76 -83.10 3322.57
+-82.29 3322.81 -83.75 3323.43 -82.30 3323.66 -83.04 3323.73 -83.20
+3323.81 -81.43 3324.82 -81.48 3325.15 -83.18 3325.41 -81.51 3325.75
+-84.11 3326.70 -81.64 3326.78 -83.75 3327.08 -82.28 3327.32 -83.07
+3328.63 -82.33 3328.71 -83.39 3329.23 -82.33 3329.35 -83.75 3329.61
+-83.11 3329.97 -82.28 3330.73 -81.40 3331.00 -83.05 3331.70 -83.03
+3331.77 -82.06 3332.41 -83.09 3332.74 -81.25 3333.05 -83.75 3333.77
+-81.41 3333.82 -83.02 3334.61 -60.41 3334.61 -60.41 3335.45 -23.13
+3335.45 -23.13 3336.28 13.54 3336.29 13.54 3337.12 50.93 3337.13 50.93
+3337.96 83.23 3338.49 82.44 3338.73 83.47 3339.17 82.34 3339.41 83.75
+3339.90 82.37 3340.31 83.75 3340.75 81.44 3341.01 82.98 3341.83 82.98
+3342.07 82.26 3342.41 83.02 3342.78 81.24 3343.13 83.02 3343.65 81.33
+3344.01 81.31 3344.61 83.11 3344.72 81.35 3345.27 83.00 3345.85 81.60
+3346.05 83.01 3346.73 83.16 3346.79 81.79 3347.50 83.01 3347.90 82.34
+3348.79 81.71 3348.83 83.30 3349.20 84.00 3349.31 82.34 3349.86 83.75
+3350.45 70.10 3350.57 71.74 3350.95 83.75 3351.61 81.25 3351.73 84.06
+3352.41 83.75 3352.72 81.70 3353.26 83.06 3353.41 81.88 3354.01 83.75
+3354.47 82.36 3354.82 82.12 3354.86 83.36 3355.83 83.87 3355.95 81.26
+3356.83 81.60 3356.98 83.05 3357.81 83.12 3358.12 82.31 3358.15 83.83
+3358.82 82.26 3359.07 83.06 3359.57 82.28 3359.87 83.75 3360.32 82.22
+3360.86 81.40 3361.41 83.75 3361.77 82.30 3361.83 83.75 3362.87 83.75
+3362.96 81.66 3363.45 83.75 3363.86 81.50 3364.31 83.75 3364.67 82.25
+3364.90 83.02 3365.30 82.32 3365.87 83.75 3366.01 81.25 3366.71 82.35
+3367.18 83.04 3367.51 82.37 3367.61 83.75 3368.41 82.86 3369.05 60.62
+3369.05 60.62 3369.88 23.62 3369.89 23.62 3370.72 -13.48 3370.73 -13.48
+3371.56 -50.48 3371.57 -50.48 3372.38 -83.00 3372.79 -83.45 3372.88
+-82.10 3373.51 -83.75 3374.09 -82.33 3374.41 -81.88 3374.41 -83.01
+3375.21 -83.75 3375.57 -82.30 3375.81 -83.47 3375.85 -81.78 3376.91
+-81.25 3377.41 -83.10 3377.58 -82.30 3377.91 -83.75 3378.33 -82.27
+3378.79 -83.08 3379.81 -83.97 3379.93 -82.28 3380.03 -82.13 3380.08
+-83.34 3380.91 -83.75 3381.31 -82.29 3381.88 -81.32 3382.00 -83.85
+3382.75 -82.33 3382.90 -83.85 3383.79 -81.80 3383.87 -83.75 3384.27
+-82.31 3384.61 -83.03 3385.03 -82.33 3385.41 -83.75 3386.03 -83.02
+3386.45 -82.34 3387.33 -82.20 3387.36 -83.43 3387.84 -81.52 3388.23
+-83.05 3388.41 -83.99 3388.58 -82.36 3389.21 -83.75 3389.80 -81.68
+3390.31 -83.02 3390.88 -65.80 3390.89 -65.80 3391.72 -28.76 3391.73
+-28.76 3392.56 8.36 3392.57 8.36 3393.41 45.20 3393.41 45.20 3394.25
+81.40 3394.25 81.40 3394.50 83.44 3395.81 83.47 3395.91 81.87 3396.01
+83.75 3396.11 82.34 3396.87 81.25 3397.01 83.75 3397.87 83.75 3398.41
+82.32 3398.73 83.05 3398.85 81.87 3399.79 82.34 3399.89 83.87 3400.30
+81.75 3400.90 83.20 3401.17 82.35 3401.81 83.01 3401.91 81.47 3402.37
+83.05 3402.83 81.17 3403.10 83.05 3403.82 82.25 3403.85 83.75 3404.55
+83.07 3404.61 81.56 3405.27 83.08 3405.87 81.74 3406.43 82.32 3406.73
+83.05 3407.16 82.23 3407.55 83.75 3407.82 81.46 3408.21 83.16 3408.85
+81.76 3408.88 83.19 3409.37 82.30 3409.65 83.06 3410.77 82.29 3411.05
+83.06 3411.30 82.38 3411.75 83.75 3411.89 83.16 3411.92 81.55 3412.73
+82.58 3413.56 49.75 3413.57 49.75 3414.41 12.81 3414.41 12.81 3415.25
+-24.32 3415.25 -24.32 3416.08 -61.19 3416.09 -61.19 3416.79 -83.33
+3416.93 -83.27 3417.41 -81.25 3417.85 -81.23 3418.41 -83.04 3418.94
+-81.86 3419.21 -83.75 3419.83 -83.55 3420.25 -81.25 3420.77 -82.34
+3420.89 -83.88 3421.16 -83.11 3421.85 -81.84 3422.36 -82.36 3422.63
+-83.02 3423.00 -81.31 3423.35 -83.03 3424.15 -83.06 3424.35 -81.26
+3424.81 -83.75 3425.19 -82.25 3425.87 -83.87 3425.92 -82.32 3426.91
+-81.98 3426.94 -83.17 3427.33 -82.33 3427.61 -83.75 3428.13 -82.30
+3428.61 -83.75 3428.97 -82.30 3429.20 -83.15 3429.71 -82.32 3429.95
+-83.75 3430.61 -82.02 3430.65 -83.11 3431.25 -81.60 3432.00 -83.19
+3432.52 -82.35 3432.87 -83.16 3432.90 -83.12 3432.91 -81.52 3433.73
+-82.88 3434.56 -59.45 3434.57 -59.45 3435.41 -22.38 3435.41 -22.38
+3436.25 14.79 3436.25 14.79 3437.08 51.78 3437.09 51.78 3437.93 83.28
+3437.98 81.63 3438.01 83.75 3438.98 82.95 3439.23 82.36 3439.80 83.24
+3440.02 82.24 3440.97 81.73 3441.19 83.02 3441.81 83.75 3441.86 81.86
+3442.41 83.75 3442.90 81.51 3443.36 83.03 3443.75 82.33 3443.98 81.73
+3444.01 83.75 3444.88 83.06 3445.21 81.20 3445.53 83.02 3445.94 81.38
+3446.96 83.75 3447.01 81.79 3447.17 83.19 3447.26 82.26 3448.61 84.07
+3448.75 82.32 3448.94 81.62 3449.21 83.13 3449.89 83.10 3450.10 81.25
+3450.71 83.75 3450.81 82.30 3451.61 81.48 3451.61 83.75 3452.25 83.75
+3452.51 82.33 3453.61 83.75 3453.87 81.44 3453.89 81.44 3454.41 83.75
+3454.95 83.51 3455.55 57.96 3455.57 58.08 3456.41 20.30 3456.41 20.30
+3457.25 -16.49 3457.25 -16.61 3458.08 -53.36 3458.09 -53.36 3458.90
+-83.41 3458.93 -83.73 3459.40 -81.91 3459.91 -81.84 3460.21 -83.05
+3460.91 -83.39 3461.15 -82.35 3461.70 -83.05 3462.01 -81.50 3462.41
+-83.75 3462.75 -82.34 3463.81 -81.59 3463.91 -83.21 3464.03 -81.64
+3464.63 -83.11 3465.02 -81.48 3465.36 -83.05 3466.00 -83.23 3466.01
+-82.00 3466.58 -82.10 3466.73 -83.33 3467.95 -81.30 3467.97 -83.79
+3468.45 -83.75 3468.92 -82.22 3469.01 -83.03 3469.22 -82.34 3469.93
+-83.75 3470.40 -81.73 3470.81 -81.25 3471.03 -83.75 3471.98 -83.75
+3472.17 -82.33 3472.95 -82.24 3473.18 -83.06 3473.41 -83.75 3474.01
+-82.00 3474.06 -82.97 3474.88 -61.08 3474.89 -61.08 3475.72 -23.95
+3475.73 -23.95 3476.56 13.09 3476.57 13.09 3477.41 49.87 3477.41 49.87
+3478.21 83.40 3478.60 83.35 3479.02 81.88 3479.28 83.04 3479.63 82.38
+3480.03 81.65 3480.55 83.75 3480.90 84.02 3480.98 81.87 3481.85 83.47
+3482.03 81.62 3483.01 83.01 3483.15 81.37 3483.61 83.75 3483.87 82.31
+3484.20 81.56 3484.91 83.75 3485.01 82.10 3485.03 83.15 3485.81 83.75
+3485.97 81.70 3487.03 81.21 3487.18 83.03 3487.61 81.25 3487.98 83.37
+3488.61 81.69 3488.61 83.05 3489.53 83.10 3489.81 81.26 3490.21 83.75
+3490.58 82.30 3491.03 83.96 3491.68 68.88 3491.69 68.88 3492.52 31.99
+3492.53 31.99 3493.36 -5.33 3493.37 -5.77 3494.20 -42.54 3494.21 -42.39
+3495.05 -78.98 3495.05 -79.41 3495.61 -83.75 3496.10 -82.34 3496.31
+-83.09 3496.81 -83.75 3496.99 -81.67 3498.06 -83.47 3498.22 -82.34
+3499.06 -81.28 3499.21 -83.75 3499.65 -82.30 3499.97 -83.50 3500.50
+-82.24 3500.62 -83.20 3501.05 -81.26 3501.40 -83.07 3502.01 -81.84
+3502.07 -83.75 3503.41 -81.47 3503.42 -83.75 3503.75 -81.58 3504.07
+-83.75 3504.72 -82.25 3505.03 -83.68 3505.41 -82.31 3505.81 -83.01
+3506.02 -81.49 3506.21 -83.94 3507.20 -82.99 3507.53 -82.30 3507.97
+-83.26 3508.41 -81.25 3508.66 -83.04 3509.03 -81.56 3510.00 -81.78
+3510.08 -83.39 3510.60 -82.33 3510.95 -83.16 3511.07 -82.97 3511.85
+-55.62 3511.86 -55.79 3512.68 -18.74 3512.69 -18.74 3513.52 18.08 3513.53
+18.08 3514.36 55.19 3514.37 55.80 3515.21 83.31 3515.97 81.80 3516.03
+83.76 3516.05 84.14 3516.48 82.36 3517.04 83.75 3517.23 82.35 3518.01
+83.91 3518.20 81.86 3518.98 83.11 3519.21 81.25 3520.03 81.40 3520.11
+83.75 3520.85 82.14 3521.07 83.31 3521.55 82.26 3521.81 83.01 3521.99
+83.30 3522.05 81.55 3523.03 82.28 3523.35 83.01 3524.03 82.07 3524.05
+83.09 3524.69 82.97 3525.17 82.30 3525.60 81.97 3526.02 83.75 3526.32
+83.01 3526.41 81.39 3527.06 82.12 3527.09 83.07 3528.03 82.37 3528.48
+83.01 3529.09 81.82 3529.41 83.92 3529.61 81.25 3529.89 83.01 3530.65
+83.01 3530.93 82.28 3531.28 82.99 3531.61 81.21 3532.05 81.80 3532.08
+83.75 3532.85 83.00 3532.99 81.61 3534.11 81.52 3534.41 83.75 3535.07
+83.75 3535.22 82.34 3535.68 83.04 3536.02 81.26 3536.75 82.33 3537.02
+83.04 3537.06 82.06 3537.13 83.75 3538.03 81.74 3538.62 83.05 3538.91
+82.31 3539.07 83.90 3540.01 81.65 3540.03 83.75 3540.70 83.14 3541.05
+81.25 3541.61 83.75 3541.81 81.46 3542.15 83.13 3542.55 81.25 3543.18
+83.75 3543.32 82.27 3544.03 82.30 3544.13 83.75 3544.95 81.35 3545.08
+83.03 3545.61 83.75 3546.28 67.68 3546.29 67.68 3547.11 32.43 3547.13
+30.49 3547.87 4.65 3548.13 4.00 3548.60 6.48 3548.95 6.88 3549.30 3.75
+3549.82 4.85 3549.90 7.07 3551.03 4.79 3551.15 6.18 3552.07 4.78 3552.15
+6.25 3552.35 4.58 3552.40 5.64 3553.05 4.59 3553.65 6.25 3554.05 6.11
+3554.21 4.82 3555.08 4.61 3555.41 6.25 3555.67 5.29 3556.03 6.70 3557.04
+6.07 3557.10 4.76 3557.41 6.25 3557.50 5.00 3558.10 4.55 3558.61 6.25
+3559.14 6.25 3559.41 4.60 3559.81 6.25 3560.04 4.84 3561.10 4.76 3561.14
+6.74 3562.09 6.42 3562.15 4.87 3562.95 4.85 3563.04 6.11 3563.09 4.64
+3563.88 5.65 3564.11 4.84 3564.21 6.25 3564.81 6.25 3565.11 4.64 3566.01
+6.25 3566.06 4.64 3566.86 5.65 3567.05 4.85 3567.30 6.25 3568.11 4.84
+3568.14 6.25 3568.20 4.84 3569.05 4.82 3569.41 6.25 3570.01 6.25 3570.07
+4.65 3571.07 6.25 3571.12 4.65 3572.08 6.18 3572.09 4.83 3572.41 6.25
+3572.91 5.33 3573.17 4.94 3573.61 6.06 3574.21 4.94 3574.55 6.25 3575.07
+6.18 3575.21 4.67 3575.81 6.25 3576.16 4.67 3577.01 6.25 3577.17 4.65
+3577.45 6.25 3578.20 4.86 3578.21 5.00 3578.81 6.25 3579.14 4.88 3579.21
+6.25 3580.01 6.25 3580.12 4.87 3580.80 4.81 3581.01 6.25 3582.07 6.25
+3582.40 4.80 3582.41 5.00 3583.21 6.25 3583.61 4.95 3583.61 6.25 3584.12
+5.00 3584.60 6.11 3585.08 4.81 3585.21 6.25 3586.01 6.25 3586.40 4.93
+3586.61 6.25 3587.13 4.69 3587.80 4.66 3588.19 6.46 3588.42 5.65 3589.07
+4.55 3589.17 4.63 3589.41 6.25 3590.01 6.25 3590.14 4.80 3590.95 6.25
+3591.15 4.61 3592.20 5.89 3592.45 4.60 3593.11 4.90 3593.15 6.24 3594.00
+6.09 3594.14 4.82 3594.17 5.00 3594.20 6.07 3595.13 6.25 3595.21 4.79
+3596.09 6.13 3596.11 4.85 3597.01 5.00 3597.16 6.25 3598.18 6.25 3598.22
+4.63 3599.18 6.59 3599.22 4.60 3599.24 4.60 3600.03 6.09 3600.16 4.87
+3600.20 6.25 3601.14 4.88 3601.38 6.25 3602.18 4.81 3602.20 5.78 3602.95
+5.64 3603.32 4.59 3603.48 6.25 3604.22 4.62 3604.64 6.25 3605.03 4.82
+3605.20 6.25 3605.64 4.81 3606.14 6.13 3606.17 4.80 3607.04 6.25 3607.14
+4.88 3608.19 4.85 3608.20 6.25 3608.64 5.00 3608.88 6.25 3609.84 6.25
+3610.14 4.62 3610.16 4.82 3610.18 6.09 3611.08 6.25 3611.44 5.00 3612.04
+6.25 3612.63 4.64 3612.83 4.58 3613.26 6.25 3614.04 6.25 3614.15 4.63
+3614.83 6.12 3615.16 4.61 3615.26 4.61 3615.28 6.25 3616.20 4.86 3616.38
+6.15 3617.16 6.12 3617.26 5.00 3617.84 5.00 3618.04 6.25 3619.04 6.25
+3619.20 4.85 3619.53 4.83 3620.17 6.11 3620.25 4.65 3620.88 6.25 3621.16
+4.90 3621.48 6.17 3622.25 4.76 3622.44 6.25 3622.78 4.59 3623.03 6.17
+3623.98 6.25 3624.18 4.60 3625.03 4.80 3625.22 6.63 3625.78 5.00 3626.03
+6.15 3626.44 6.25 3626.68 4.91 3627.05 6.25 3627.38 4.80 3628.18 6.34
+3628.22 4.83 3629.03 4.86 3629.44 6.25 3629.64 6.25 3630.03 4.65 3630.63
+4.87 3630.64 6.25 3631.24 6.18 3631.84 5.00 3632.18 4.88 3632.28 6.13
+3633.04 6.25 3633.18 4.83 3633.98 6.18 3634.04 4.90 3635.18 5.05 3635.23
+6.72 3635.84 6.25 3636.19 5.26 3636.22 6.25 3636.43 4.79 3637.04 6.25
+3637.22 4.83 3638.29 6.19 3638.29 5.00 3639.24 4.82 3639.29 6.07 3640.25
+6.66 3640.30 5.00 3640.68 5.00 3641.23 6.79 3641.24 6.25 3641.29 4.65
+3642.24 6.33 3642.43 4.63 3643.20 6.35 3643.23 4.86 3644.29 6.09 3644.44
+5.00 3644.68 6.25 3645.19 4.84 3645.64 6.25 3646.22 4.81 3646.28 4.86
+3646.30 6.25 3647.29 6.11 3647.43 4.61 3648.04 6.25 3648.64 4.92 3649.18
+4.67 3649.27 6.34 3650.24 6.16 3650.26 4.86 3651.26 4.85 3651.31 6.54
+3651.32 6.54 3652.03 4.84 3652.22 4.84 3652.32 6.25 3653.31 4.64 3653.58
+6.25 3654.25 6.15 3654.31 4.90 3655.20 4.88 3655.24 6.38 3656.24 4.63
+3656.32 5.78 3656.64 5.00 3657.13 6.25 3657.24 6.19 3657.31 4.64 3658.31
+4.63 3658.68 6.25 3659.03 4.90 3659.04 6.25 3660.21 6.21 3660.33 4.88
+3660.64 6.19 3661.21 4.83 3661.63 4.87 3662.21 6.31 3662.28 4.64 3662.33
+6.25 3663.33 4.66 3663.63 6.17 3664.24 5.00 3664.33 6.65 3664.83 4.82
+3665.44 6.25 3666.04 6.25 3666.24 4.61 3667.03 6.16 3667.04 5.00 3667.32
+4.63 3667.34 6.25 3668.33 6.25 3668.84 4.86 3669.08 4.58 3669.43 6.15
+3670.30 6.12 3670.63 4.82 3671.23 4.80 3671.29 6.77 3671.84 6.25 3672.23
+4.63 3672.32 4.65 3672.55 5.67 3673.34 4.89 3673.64 6.25 3674.31 6.25
+3674.34 4.64 3675.13 6.25 3675.48 4.80 3676.34 4.82 3676.38 6.25 3677.26
+4.80 3677.35 6.25 3677.68 6.25 3677.88 5.30 3678.29 4.57 3678.83 6.22
+3679.25 4.86 3679.44 6.25 3680.03 6.25 3680.26 4.67 3681.03 4.77 3681.26
+6.31 3681.58 4.84 3682.30 6.80 3682.44 5.00 3682.84 6.25 3683.25 6.16
+3683.43 4.62 3684.33 6.15 3684.36 4.86 3685.36 4.64 3685.64 6.25 3686.26
+4.84 3686.36 6.25 3686.73 6.25 3687.31 4.60 3687.64 6.25 3688.04 4.83
+3688.30 6.25 3688.41 5.29 3689.64 6.25 3689.88 4.83 3690.31 5.79 3690.33
+4.84 3690.84 6.25 3691.31 4.63 3691.64 5.00 3692.24 6.25 3692.68 5.29
+3693.26 6.57 3693.48 5.32 3694.04 6.25 3694.26 5.80 3694.33 4.85 3695.03
+4.65 3695.34 6.25 3696.28 5.00 3696.37 6.25 3697.29 6.25 3697.48 4.64
+3698.08 6.25 3698.23 4.84 3698.38 4.82 3698.79 5.64 3699.31 6.62 3699.44
+5.00 3700.32 4.78 3700.37 6.51 3701.36 4.62 3701.39 6.25 3702.03 4.81
+3702.39 6.60 3702.83 4.84 3703.34 6.11 3703.78 6.25 3704.23 4.62 3704.30
+4.81 3704.73 6.25 3705.23 4.86 3705.44 6.25 3706.30 6.25 3706.37 4.63
+3707.30 6.25 3707.33 4.79 3708.04 6.25 3708.34 4.62 3708.93 4.62 3709.03
+6.16 3709.32 4.65 3709.36 6.25 3710.23 6.25 3710.35 5.00 3711.13 6.25
+3711.39 4.82 3711.93 6.25 3712.34 5.16 3713.30 4.81 3713.38 6.59 3713.71
+5.30 3714.30 6.36 3714.35 4.84 3714.40 6.18 3715.39 4.61 3715.84 6.25
+3716.30 6.15 3716.43 4.81 3717.29 4.89 3717.31 6.25 3718.38 4.82 3718.44
+6.25 3719.03 6.14 3719.33 4.91 3719.36 6.10 3719.43 4.88 3720.38 4.61
+3720.42 6.25 3721.37 4.60 3721.44 6.25 3722.23 6.12 3722.31 4.80 3723.42
+6.25 3723.48 4.63 3723.64 6.25 3724.36 4.83 3724.40 4.79 3724.83 6.00
+3725.25 5.46 3725.85 11.36 3726.31 11.93 3726.64 10.00 3727.33 10.65
+3727.43 12.18 3728.36 12.19 3728.59 7.97 3728.63 7.92 3729.30 4.56
+3729.44 6.25 3729.63 4.81 3730.32 4.59 3730.43 6.07 3731.36 5.68 3731.76
+-0.49 3732.04 -1.25 3732.42 0.09 3732.80 0.00 3732.92 0.03 3733.64
+0.00 3733.64 0.00 3734.48 0.00 3734.48 0.00 3735.32 0.00 3735.32 0.00
+3736.16 0.00 3736.16 0.00 3737.00 0.00 3737.00 0.00 3737.84 0.00 3737.84
+0.00 3738.68 0.00 3738.68 0.00 3739.52 0.00 3739.52 0.00 3740.36 0.00
+3740.36 0.00 3741.20 0.00 3741.20 0.00 3742.04 0.00 3742.04 0.00 3742.88
+0.00 3742.88 0.00 3743.72 0.00 3743.72 0.00 3744.56 0.00 3744.56 0.00
+3745.40 0.00 3745.40 0.00 3746.24 0.00 3746.24 0.00 3747.08 0.00 3747.08
+0.00 3747.92 0.00 3747.92 0.00 3748.76 0.00 3748.76 0.00 3749.60 0.00
+3749.60 0.00 3750.44 0.00 3750.44 0.00 3751.28 0.00 3751.28 0.00 3752.12
+0.00 3752.12 0.00 3752.96 0.00 3752.96 0.00 3753.80 0.00 3753.80 0.00
+3754.64 0.00 3754.64 0.00 3755.48 0.00 3755.48 0.00 3756.32 0.00 3756.32
+0.00 3757.16 0.00 3757.16 0.00 3758.00 0.00 3758.00 0.00 3758.84 0.00
+3758.84 0.00 3759.68 0.00 3759.68 0.00 3760.52 0.00 3760.52 0.00 3761.36
+0.00 3761.36 0.00 3762.20 0.00 3762.20 0.00 3763.04 0.00 3763.04 0.00
+3763.88 0.00 3763.88 0.00 3764.72 0.00 3764.72 0.00 3765.56 0.00 3765.56
+0.00 3766.40 0.00 3766.40 0.00 3767.24 0.00 3767.24 0.00 3768.08 0.00
+3768.08 0.00 3768.92 0.00 3768.92 0.00 3769.76 0.00 3769.76 0.00 3770.60
+0.00 3770.60 0.00 3771.44 0.00 3771.44 0.00 3772.28 0.00 3772.28 0.00
+3773.12 0.00 3773.12 0.00 3773.96 0.00 3773.96 0.00 3774.80 0.00 3774.80
+0.00 3775.64 0.00 3775.64 0.00 3776.48 0.00 3776.48 0.00 3777.32 0.00
+3777.32 0.00 3778.16 0.00 3778.16 0.00 3779.00 0.00 3779.00 0.00 3779.84
+0.00 3779.84 0.00 3780.68 0.00 3780.68 0.00 3781.52 0.00 3781.52 0.00
+3782.36 0.00 3782.36 0.00 3783.20 0.00 3783.20 0.00 3784.04 0.00 3784.04
+0.00 3784.88 0.00 3784.88 0.00 3785.72 0.00 3785.72 0.00 3786.56 0.00
+3786.56 0.00 3787.40 0.00 3787.40 0.00 3788.24 0.00 3788.24 0.00 3789.08
+0.00 3789.08 0.00 3789.92 0.00 3789.92 0.00 3790.76 0.00 3790.76 0.00
+3791.60 0.00 3791.60 0.00 3792.44 0.00 3792.44 0.00 3793.28 0.00 3793.28
+0.00 3794.12 0.00 3794.12 0.00 3794.96 0.00 3794.96 0.00 3795.80 0.00
+3795.80 0.00 3796.64 0.00 3796.64 0.00 3797.48 0.00 3797.48 0.00 3798.32
+0.00 3798.32 0.00 3799.16 0.00 3799.16 0.00 3800.00 0.00 3800.00 0.00
+3800.84 0.00 3800.84 0.00 3801.68 0.00 3801.68 0.00 3802.52 0.00 3802.52
+0.00 3803.36 0.00 3803.36 0.00 3804.20 0.00 3804.20 0.00 3805.04 0.00
+3805.04 0.00 3805.88 0.00 3805.88 0.00 3806.72 0.00 3806.72 0.00 3807.56
+0.00 3807.56 0.00 3808.40 0.00 3808.40 0.00 3809.24 0.00 3809.24 0.00
+3810.08 0.00 3810.08 0.00 3810.92 0.00 3810.92 0.00 3811.76 0.00 3811.76
+0.00 3812.60 0.00 3812.60 0.00 3813.44 0.00 3813.44 0.00 3814.28 0.00
+3814.28 0.00 3815.12 0.00 3815.12 0.00 3815.96 0.00 3815.96 0.00 3816.80
+0.00 3816.80 0.00 3817.64 0.00 3817.64 0.00 3818.48 0.00 3818.48 0.00
+3819.32 0.00 3819.32 0.00 3820.16 0.00 3820.16 0.00 3821.00 0.00 3821.00
+0.00 3821.84 0.00 3821.84 0.00 3822.68 0.00 3822.68 0.00 3823.52 0.00
+3823.52 0.00 3824.36 0.00 3824.36 0.00 3825.20 0.00 3825.20 0.00 3826.04
+0.00 3826.04 0.00 3826.88 0.00 3826.88 0.00 3827.72 0.00 3827.72 0.00
+3828.56 0.00 3828.56 0.00 3829.40 0.00 3829.40 0.00 3830.24 0.00 3830.24
+0.00 3831.08 0.00 3831.08 0.00 3831.92 0.00 3831.92 0.00 3832.76 0.00
+3832.76 0.00 3833.60 0.00 3833.60 0.00 3834.44 0.00 3834.44 0.00 3835.28
+0.00 3835.28 0.00 3836.12 0.00 3836.12 0.00 3836.96 0.00 3836.96 0.00
+3837.80 0.00 3837.80 0.00 3838.64 0.00 3838.64 0.00 3839.48 0.00 3839.48
+0.00 3840.32 0.00 3840.32 0.00 3841.16 0.00 3841.16 0.00 3842.00 0.00
+3842.00 0.00 3842.84 0.00 3842.84 0.00 3843.68 0.00 3843.68 0.00 3844.52
+0.00 3844.52 0.00 3845.36 0.00 3845.36 0.00 3846.20 0.00 3846.20 0.00
+3847.04 0.00 3847.04 0.00 3847.88 0.00 3847.88 0.00 3848.72 0.00 3848.72
+0.00 3849.56 0.00 3849.56 0.00 3850.40 0.00 3850.40 0.00 3851.24 0.00
+3851.24 0.00 3852.08 0.00 3852.08 0.00 3852.92 0.00 3852.92 0.00 3853.76
+0.00 3853.76 0.00 3854.60 0.00 3854.60 0.00 3855.44 0.00 3855.44 0.00
+3856.28 0.00 3856.28 0.00 3857.12 0.00 3857.12 0.00 3857.96 0.00 3857.96
+0.00 3858.80 0.00 3858.80 0.00 3859.64 0.00 3859.64 0.00 3860.48 0.00
+3860.48 0.00 3861.32 0.00 3861.32 0.00 3862.16 0.00 3862.16 0.00 3863.00
+0.00 3863.00 0.00 3863.84 0.00 3863.84 0.00 3864.68 0.00 3864.68 0.00
+3865.52 0.00 3865.52 0.00 3866.36 0.00 3866.36 0.00 3867.20 0.00 3867.20
+0.00 3868.04 0.00 3868.04 0.00 3868.88 0.00 3868.88 0.00 3869.72 0.00
+3869.72 0.00 3870.56 0.00 3870.56 0.00 3871.40 0.00 3871.40 0.00 3872.24
+0.00 3872.24 0.00 3873.08 0.00 3873.08 0.00 3873.92 0.00 3873.92 0.00
+3874.76 0.00 3874.76 0.00 3875.60 0.00 3875.60 0.00 3876.44 0.00 3876.44
+0.00 3877.28 0.00 3877.28 0.00 3878.12 0.00 3878.12 0.00 3878.96 0.00
+3878.96 0.00 3879.80 0.00 3879.80 0.00 3880.64 0.00 3880.64 0.00 3881.48
+0.00 3881.48 0.00 3882.32 0.00 3882.32 0.00 3883.16 0.00 3883.16 0.00
+3884.00 0.00 3884.00 0.00 3884.84 0.00 3884.84 0.00 3885.68 0.00 3885.68
+0.00 3886.52 0.00 3886.52 0.00 3887.36 0.00 3887.36 0.00 3888.20 0.00
+3888.20 0.00 3889.04 0.00 3889.04 0.00 3889.88 0.00 3889.88 0.00 3890.72
+0.00 3890.72 0.00 3891.56 0.00 3891.56 0.00 3892.40 0.00 3892.40 0.00
+3893.24 0.00 3893.24 0.00 3894.08 0.00 3894.08 0.00 3894.92 0.00 3894.92
+0.00 3895.76 0.00 3895.76 0.00 3896.60 0.00 3896.60 0.00 3897.44 0.00
+3897.44 0.00 3898.28 0.00 3898.28 0.00 3899.12 0.00 3899.12 0.00 3899.96
+0.00 3899.96 0.00 3900.80 0.00 3900.80 0.00 3901.64 0.00 3901.64 0.00
+3902.48 0.00 3902.48 0.00 3903.32 0.00 3903.32 0.00 3904.16 0.00 3904.16
+0.00 3905.00 0.00 3905.00 0.00 3905.84 0.00 3905.84 0.00 3906.68 0.00
+3906.68 0.00 3907.52 0.00 3907.52 0.00 3908.36 0.00 3908.36 0.00 3909.20
+0.00 3909.20 0.00 3910.04 0.00 3910.04 0.00 3910.88 0.00 3910.88 0.00
+3911.72 0.00 3911.72 0.00 3912.56 0.00 3912.56 0.00 3913.40 0.00 3913.40
+0.00 3914.24 0.00 3914.24 0.00 3915.08 0.00 3915.08 0.00 3915.92 0.00
+3915.92 0.00 3916.76 0.00 3916.76 0.00 3917.60 0.00 3917.60 0.00 3918.44
+0.00 3918.44 0.00 3919.28 0.00 3919.28 0.00 3920.12 0.00 3920.12 0.00
+3920.96 0.00 3920.96 0.00 3921.80 0.00 3921.80 0.00 3922.64 0.00 3922.64
+0.00 3923.48 0.00 3923.48 0.00 3924.32 0.00 3924.32 0.00 3925.16 0.00
+3925.16 0.00 3926.00 0.00 3926.00 0.00 3926.84 0.00 3926.84 0.00 3927.68
+0.00 3927.68 0.00 3928.52 0.00 3928.52 0.00 3929.36 0.00 3929.36 0.00
+3930.20 0.00 3930.20 0.00 3931.04 0.00 3931.04 0.00 3931.88 0.00 3931.88
+0.00 3932.72 0.00 3933.56 0.99 3933.56 0.99 3934.24 6.25 3934.40 5.51
+3935.04 -0.47 3935.24 0.00 3935.24 0.00 3936.08 0.00 3936.08 0.00 3936.92
+0.00 3936.92 0.00 3937.76 0.00 3937.76 0.00 3938.60 0.00 3938.60 0.00
+3939.44 0.00 3940.24 4.66 3940.28 3.98 3941.00 0.00 3941.13 0.00 3941.73
+1.25 3941.96 0.00 3941.97 0.39 3942.80 0.00 3942.80 0.00 3943.64 0.00
+3943.64 0.00 3944.48 0.00 3944.48 0.00 3945.32 0.00 3945.32 0.00 3946.16
+0.00 3946.16 0.00 3947.00 0.00 3947.00 0.00 3947.84 0.00 3947.84 0.00
+3948.68 0.00 3948.68 0.00 3949.52 0.00 3949.52 0.00 3950.36 0.00 3950.36
+0.00 3951.20 0.00 3951.20 0.00 3952.04 0.00 3952.04 0.00 3952.88 0.00
+3952.88 0.00 3953.72 0.00 3953.72 0.00 3954.56 0.00 3954.56 0.00 3955.40
+0.00 3955.40 0.00 3956.24 0.00 3956.24 0.00 3957.08 0.00 3957.08 0.00
+3957.92 0.00 3957.92 0.00 3958.76 0.00 3958.76 0.00 3959.60 0.00 3959.60
+0.00 3960.44 0.00 3960.44 0.00 3961.28 0.00 3961.28 0.00 3962.12 0.00
+3962.12 0.00 3962.96 0.00 3962.96 0.00 3963.80 0.00 3963.80 0.00 3964.64
+0.00 3964.64 0.00 3965.48 0.00 3965.48 0.00 3966.32 0.00 3966.32 0.00
+3967.16 0.00 3967.16 0.00 3968.00 0.00 3968.00 0.00 3968.84 0.00 3968.84
+0.00 3969.68 0.00 3969.68 0.00 3970.52 0.00 3970.52 0.00 3971.36 0.00
+3971.36 0.00 3972.20 0.00 3972.20 0.00 3973.04 0.00 3973.04 0.00 3973.88
+0.00 3973.88 0.00 3974.72 0.00 3974.72 0.00 3975.56 0.00 3975.56 0.00
+3976.40 0.00 3976.40 0.00 3977.24 0.00 3977.24 0.00 3978.08 0.00 3978.08
+0.00 3978.92 0.00 3978.92 0.00 3979.76 0.00 3979.76 0.00 3980.60 0.00
+3980.60 0.00 3981.44 0.00 3981.44 0.00 3982.28 0.00 3982.28 0.00 3983.12
+0.00 3983.12 0.00 3983.96 0.00 3983.96 0.00 3984.80 0.00 3984.80 0.00
+3985.64 0.00 3985.64 0.00 3986.48 0.00 3986.48 0.00 3987.32 0.00 3987.32
+0.00 3988.16 0.00 3988.16 0.00 3989.00 0.00 3989.00 0.00 3989.84 0.00
+3989.84 0.00 3990.68 0.00 3990.68 0.00 3991.52 0.00 3991.52 0.00 3992.36
+0.00 3992.36 0.00 3993.20 0.00 3993.20 0.00 3994.04 0.00 3994.04 0.00
+3994.88 0.00 3994.88 0.00 3995.72 0.00 3995.72 0.00 3996.56 0.00 3996.56
+0.00 3997.40 0.00 3997.40 0.00 3998.24 0.00 3998.24 0.00 3999.08 0.00
+3999.08 0.00 3999.92 0.00 3999.92 0.00 4000.76 0.00 4000.76 0.00 4001.60
+0.00 4001.60 0.00 4002.44 0.00 4002.44 0.00 4003.28 0.00 4003.28 0.00
+4004.12 0.00 4004.12 0.00 4004.96 0.00 4004.96 0.00 4005.80 0.00 4005.80
+0.00 4006.64 0.00 4006.64 0.00 4007.48 0.00 4007.48 0.00 4008.32 0.00
+4008.32 0.00 4009.16 0.00 4009.16 0.00 4010.00 0.00 4010.00 0.00 4010.84
+0.00 4010.84 0.00 4011.68 0.00 4011.68 0.00 4012.52 0.00 4012.52 0.00
+4013.36 0.00 4013.36 0.00 4014.20 0.00 4014.20 0.00 4015.04 0.00 4015.04
+0.00 4015.88 0.00 4015.88 0.00 4016.72 0.00 4016.72 0.00 4017.56 0.00
+4017.56 0.00 4018.40 0.00 4018.40 0.00 4019.24 0.00 4019.24 0.00 4020.08
+0.00 4020.08 0.00 4020.92 0.00 4020.92 0.00 4021.76 0.00 4021.76 0.00
+4022.60 0.00 4022.60 0.00 4023.44 0.00 4023.44 0.00 4024.28 0.00 4024.28
+0.00 4025.12 0.00 4025.12 0.00 4025.96 0.00 4025.96 0.00 4026.80 0.00
+4026.80 0.00 4027.64 0.00 4027.64 0.00 4028.48 0.00 4028.48 0.00 4029.32
+0.00 4029.32 0.00 4030.16 0.00 4030.16 0.00 4031.00 0.00 4031.00 0.00
+4031.84 0.00 4031.84 0.00 4032.68 0.00 4032.68 0.00 4033.52 0.00 4033.52
+0.00 4034.36 0.00 4034.36 0.00 4035.20 0.00 4035.20 0.00 4036.04 0.00
+4036.04 0.00 4036.88 0.00 4036.88 0.00 4037.72 0.00 4037.72 0.00 4038.56
+0.00 4038.56 0.00 4039.40 0.00 4039.40 0.00 4040.24 0.00 4040.24 0.00
+4041.08 0.00 4041.08 0.00 4041.92 0.00 4041.92 0.00 4042.76 0.00 4042.76
+0.00 4043.60 0.00 4043.60 0.00 4044.44 0.00 4044.44 0.00 4045.28 0.00
+4045.28 0.00 4046.12 0.00 4046.12 0.00 4046.96 0.00 4046.96 0.00 4047.80
+0.00 4047.80 0.00 4048.64 0.00 4048.64 0.00 4049.48 0.00 4049.48 0.00
+4050.32 0.00 4050.32 0.00 4051.16 0.00 4051.16 0.00 4052.00 0.00 4052.00
+0.00 4052.84 0.00 4052.84 0.00 4053.68 0.00 4053.68 0.00 4054.52 0.00
+4054.52 0.00 4055.36 0.00 4055.36 0.00 4056.20 0.00 4056.20 0.00 4057.04
+0.00 4057.04 0.00 4057.88 0.00 4057.88 0.00 4058.72 0.00 4058.72 0.00
+4059.56 0.00 4059.56 0.00 4060.40 0.00 4060.40 0.00 4061.24 0.00 4061.24
+0.00 4062.08 0.00 4062.08 0.00 4062.92 0.00 4062.92 0.00 4063.76 0.00
+4063.76 0.00 4064.60 0.00 4064.60 0.00 4065.44 0.00 4065.44 0.00 4066.28
+0.00 4066.28 0.00 4067.12 0.00 4067.12 0.00 4067.96 0.00 4067.96 0.00
+4068.80 0.00 4068.80 0.00 4069.64 0.00 4069.64 0.00 4070.48 0.00 4070.48
+0.00 4071.32 0.00 4071.32 0.00 4072.16 0.00 4072.16 0.00 4073.00 0.00
+4073.00 0.00 4073.84 0.00 4073.84 0.00 4074.68 0.00 4074.68 0.00 4075.52
+0.00 4075.52 0.00 4076.36 0.00 4076.36 0.00 4077.20 0.00 4077.20 0.00
+4078.04 0.00 4078.04 0.00 4078.88 0.00 4078.88 0.00 4079.72 0.00 4079.72
+0.00 4080.56 0.00 4080.56 0.00 4081.40 0.00 4081.40 0.00 4082.24 0.00
+4082.24 0.00 4083.08 0.00 4083.08 0.00 4083.92 0.00 4083.92 0.00 4084.76
+0.00 4084.76 0.00 4085.60 0.00 4085.60 0.00 4086.44 0.00 4086.44 0.00
+4087.28 0.00 4087.28 0.00 4088.12 0.00 4088.12 0.00 4088.96 0.00 4088.96
+0.00 4089.80 0.00 4089.80 0.00 4090.64 0.00 4090.64 0.00 4091.48 0.00
+4091.48 0.00 4092.32 0.00 4092.32 0.00 4093.16 0.00 4093.16 0.00 4094.00
+0.00 4094.00 0.00 4094.84 0.00 4094.84 0.00 4095.68 0.00 4095.68 0.00
+4096.52 0.00 4096.52 0.00 4097.36 0.00 4097.36 0.00 4098.20 0.00 4098.20
+0.00 4099.04 0.00 4099.04 0.00 4099.88 0.00 4099.88 0.00 4100.72 0.00
+4100.72 0.00 4101.56 0.00 4101.56 0.00 4102.40 0.00 4102.40 0.00 4103.24
+0.00 4103.24 0.00 4104.08 0.00 4104.08 0.00 4104.92 0.00 4104.92 0.00
+4105.76 0.00 4105.76 0.00 4106.60 0.00 4106.60 0.00 4107.44 0.00 4107.44
+0.00 4108.28 0.00 4108.28 0.00 4109.12 0.00 4109.12 0.00 4109.96 0.00
+4109.96 0.00 4110.80 0.00 4110.80 0.00 4111.64 0.00 4111.64 0.00 4112.48
+0.00 4112.48 0.00 4113.32 0.00 4113.32 0.00 4114.16 0.00 4114.16 0.00
+4115.00 0.00 4115.00 0.00 4115.84 0.00 4115.84 0.00 4116.68 0.00 4116.68
+0.00 4117.52 0.00 4117.52 0.00 4118.36 0.00 4118.36 0.00 4119.20 0.00
+4119.20 0.00 4120.04 0.00 4120.04 0.00 4120.88 0.00 4120.88 0.00 4121.72
+0.00 4121.72 0.00 4122.56 0.00 4122.56 0.00 4123.40 0.00 4123.40 0.00
+4124.24 0.00 4124.24 0.00 4125.08 0.00 4125.08 0.00 4125.92 0.00 4125.92
+0.00 4126.76 0.00 4126.76 0.00 4127.60 0.00 4127.60 0.00 4128.44 0.00
+4128.44 0.00 4129.28 0.00 4129.28 0.00 4130.12 0.00 4130.12 0.00 4130.96
+0.00 4130.96 0.00 4131.80 0.00 4131.80 0.00 4132.64 0.00 4132.64 0.00
+4133.48 0.00 4133.48 0.00 4134.32 0.00 4134.32 0.00 4135.16 0.00 4135.16
+0.00 4136.00 0.00 4136.00 0.00 4136.84 0.00 4136.84 0.00 4137.68 0.00
+4137.68 0.00 4138.52 0.00 4138.52 0.00 4139.36 0.00 4139.36 0.00 4140.20
+0.00 4140.20 0.00 4141.04 0.00 4141.04 0.00 4141.88 0.00 4141.88 0.00
+4142.72 0.00 4142.72 0.00 4143.56 0.00 4143.56 0.00 4144.40 0.00 4144.40
+0.00 4145.24 0.00 4145.24 0.00 4146.08 0.00 4146.08 0.00 4146.92 0.00
+4146.92 0.00 4147.76 0.00 4147.76 0.00 4148.60 0.00 4148.60 0.00 4149.44
+0.00 4149.44 0.00 4150.28 0.00 4150.28 0.00 4151.12 0.00 4151.12 0.00
+4151.96 0.00 4151.96 0.00 4152.80 0.00 4152.80 0.00 4153.64 0.00 4153.64
+0.00 4154.48 0.00 4154.48 0.00 4155.32 0.00 4155.32 0.00 4156.16 0.00
+4156.16 0.00 4157.00 0.00 4157.00 0.00 4157.84 0.00 4157.84 0.00 4158.68
+0.00 4158.68 0.00 4159.52 0.00 4159.52 0.00 4160.36 0.00 4160.36 0.00
+4161.20 0.00 4161.20 0.00 4162.04 0.00 4162.04 0.00 4162.88 0.00 4162.88
+0.00 4163.72 0.00 4163.72 0.00 4164.56 0.00 4164.56 0.00 4165.40 0.00
+4165.40 0.00 4166.24 0.00 4166.24 0.00 4167.08 0.00 4167.08 0.00 4167.92
+0.00 4167.92 0.00 4168.76 0.00 4168.76 0.00 4169.60 0.00 4169.60 0.00
+4170.44 0.00 4170.44 0.00 4171.28 0.00 4171.28 0.00 4172.12 0.00 4172.12
+0.00 4172.96 0.00 4172.96 0.00 4173.80 0.00 4173.80 0.00 4174.64 0.00
+4174.64 0.00 4175.48 0.00 4175.48 0.00 4176.32 0.00 4176.32 0.00 4177.16
+0.00 4177.16 0.00 4178.00 0.00 4178.00 0.00 4178.84 0.00 4178.84 0.00
+4179.68 0.00 4179.68 0.00 4180.52 0.00 4180.52 0.00 4181.36 0.00 4181.36
+0.00 4182.20 0.00 4182.20 0.00 4183.04 0.00 4183.04 0.00 4183.88 0.00
+4183.88 0.00 4184.72 0.00 4184.72 0.00 4185.56 0.00 4185.56 0.00 4186.40
+0.00 4186.40 0.00 4187.24 0.00 4187.24 0.00 4188.08 0.00 4188.08 0.00
+4188.92 0.00 4188.92 0.00 4189.76 0.00 4189.76 0.00 4190.60 0.00 4190.60
+0.00 4191.44 0.00 4191.44 0.00 4192.28 0.00 4192.28 0.00 4193.12 0.00
+4193.12 0.00 4193.96 0.00 4193.96 0.00 4194.80 0.00 4194.80 0.00 4195.64
+0.00 4195.64 0.00 4196.48 0.00 4196.48 0.00 4197.32 0.00 4197.32 0.00
+4198.16 0.00 counttomark /m exch def /maxYValues 1 def /YValuePos
+1 def /XValuePos 1 def /n m maxYValues 1 add div cvi def XValuePos
+1 gt {n { maxYValues 1 add XValuePos neg roll dup /XValue ED maxYValues
+1 add XValuePos 1 sub roll pop XValue maxYValues 1 add 1 roll m maxYValues
+1 add roll } repeat } if maxYValues 1 gt {n { maxYValues YValuePos
+1 sub neg roll maxYValues 1 sub { pop } repeat /m m maxYValues 1 sub
+sub def m 2 roll } repeat } if /xMax -99999 def /yMax -99999 def /xP
+0 def /yP 0 def m copy n { /y exch def /x exch def xMax x lt { /xMax
+x def } if yMax y lt {/yMax y def } if xP x gt { /xP x def } if yP
+y gt { /yP y def } if } repeat 0 0 gt 0 0 gt or () length 0 gt or ()
+length 0 gt or () length 0 gt or () length 0 gt or { () length 0 gt
+{ }{ xP } ifelse /xStart exch def () length 0 gt { }{ yP } ifelse /yStart
+exch def () length 0 gt { }{ xMax } ifelse /xEnd exch def () length
+0 gt { }{ yMax } ifelse /yEnd exch def n { m -2 roll 2 copy /yVal
+exch def /xVal exch def xVal xP ge yVal yP ge and xVal xEnd le and
+yVal yEnd le and xVal xStart ge and yVal yStart ge and { /xP xP 0 add
+def /yP yP 0 add def }{pop pop /m m 2 sub def } ifelse } repeat }{/ncount
+1 def () length 0 gt { }{ m } ifelse /nEnd exch def n { m -2 roll
+1 1 gt { ncount 0 sub 1 mod 0 eq }{ true } ifelse ncount nEnd le and
+ncount 0 ge and not { pop pop /m m 2 sub def } if /ncount ncount 1
+add def } repeat } ifelse 0.18335 0.07114 /y ED /x ED /yPSOp { -100
+sub 5.000000000000000000 mul 0 add y mul 1.0 mul } def /xPSOp { 0
+sub 0.238151940938318647 mul 0 add x mul 1.0 mul } def counttomark
+dup dup cvi eq not { exch pop } if /m exch def /n m 2 div cvi def n
+{ yPSOp m 1 roll xPSOp m 1 roll /m m 2 sub def } repeat /Lineto
+/lineto load def 2 setlinejoin false NArray n 0 eq not { n 1 eq {
+0 0 /n 2 def } if () length 0 gt { 1.5 2. CLW mul add dup 1.4 mul
+exch 0.4 mul neg add /arrowlength exch def 4 copy /y1 ED /x1 ED /y2
+ED /x2 ED /Alpha y2 y1 sub x2 x1 sub Atan def ArrowA x1 Alpha cos arrowlength
+mul add y1 Alpha sin arrowlength mul add /n n 1 sub def n { 4 copy
+/y1 ED /x1 ED /y2 ED /x2 ED x1 y1 0.5 1 gt { /Alpha y2 y1 sub x2 x1
+sub Atan def /ArrowPos 0. def /dArrowPos 0.5 abs def 1. cvi { /ArrowPos
+ArrowPos dArrowPos add def x1 Alpha cos ArrowPos mul add y1 Alpha sin
+ArrowPos mul add ArrowInside pop pop } repeat }{ /ArrowPos 0. def
+/dArrowPos 1. 1 gt {1.0 1. 1.0 add div }{0.5 } ifelse def 1. cvi {
+/ArrowPos ArrowPos dArrowPos add def x2 x1 sub ArrowPos mul x1 add
+y2 y1 sub ArrowPos mul y1 add ArrowInside pop pop } repeat } ifelse
+pop pop Lineto } repeat }{ ArrowA /n n 2 sub def n { Lineto } repeat
+} ifelse CP 4 2 roll ArrowB L pop pop } if gsave 0.8 SLW 0 setgray
+ 1. .setopacityalpha 2 setlinejoin 0 setlinecap stroke grestore
+end
+
+@endspecial 0 TeXcolorgray 0 TeXcolorgray
+eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF
+%%EndDocument
+countdictstack InitDictCount sub { end } repeat
+cleartomark restore grestore
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/history.tex b/graphics/pstricks/contrib/numericplots/doc/src/history.tex
new file mode 100644
index 0000000000..50fa0fca5c
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/history.tex
@@ -0,0 +1,171 @@
+% Copyright 2010 Thomas Koenig, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+\part{Version}
+
+\section{History}
+
+\begin{itemize}
+ \item 18.05.2010
+ \begin{itemize}
+ \item added LabelOption to plotAxis
+ \item added TickLabelOption to plotAxis
+ \item added possibility to change StdLabelOption
+ \item added possibility to change StdTickLabelOption
+ \end{itemize}
+ \item 11.06.2010
+ \begin{itemize}
+ \item expanded documentation
+ \item changed the command \texttt{LegLine}.
+ \item added the commands \texttt{plotxGrid} and \texttt{plotyGrid}. The
+ grids may now be plotted before the axis to avoid overlapping of the grid
+ and the axis.
+ \end{itemize}
+ \item 17.06.2010
+ \begin{itemize}
+ \item changed export2latex: check for the necessary precision before
+ exporting the data
+ \end{itemize}
+ \item 21.06.2010
+ \begin{itemize}
+ \item added option for logarithmic axes
+ \end{itemize}
+ \item 05.07.2010
+ \begin{itemize}
+ \item added command NDPline
+ \item added instructions to fill areas between plots to documentation
+ \end{itemize}
+ \item 03.08.2010
+ \begin{itemize}
+ \item added options to \texttt{export2latex.m}
+ \end{itemize}
+ \item 05.08.2010
+ \begin{itemize}
+ \item new calculation of tick lengths
+ \item length of the ticks may now be given in mm, see
+ \ref{sec:OptionsGeneral}
+ \end{itemize}
+ \item 14.09.2010
+ \begin{itemize}
+ \item added \texttt{struct2latex} to the package
+ \item added \texttt{dspace2struct} to the package
+ \item added \texttt{dspace2latex} to the package
+ \item changed \texttt{struct2latex}: mapping column vectors
+ \item changed \texttt{struct2latex}: downsampling option added
+ \end{itemize}
+ \item 15.11.2010
+ \begin{itemize}
+ \item changed the lineends of the axis
+ \end{itemize}
+ \item 07.01.2011
+ \begin{itemize}
+ \item adjusted linestyles
+ \item example with the available linestyles
+ \end{itemize}
+ \item 04.05.2011
+ \begin{itemize}
+ \item added commands to place exponents at the axes
+ \item added documentation for put North, \ldots, SouthWest
+ \end{itemize}
+ \item 14.05.2011
+ \begin{itemize}
+ \item added command to put a box in the graph
+ \end{itemize}
+ \item 17.05.2011
+ \begin{itemize}
+ \item added ps-style LegendBoxStyle to adjust the style of the box
+ underlying the legend
+ \end{itemize}
+ \item 12.07.2011
+ \begin{itemize}
+ \item changes in documentation
+ \item adopted \texttt{dspace2struct} for \textsc{dSpace Next Generation}
+ \item added \verb+\NDPvline, \NDPhline, \NDPvbox+ and \verb+\NDPhbox+
+ \end{itemize}
+ \item 01.06.2012
+ \begin{itemize}
+ \item changes in documentation
+ \item general bug fixing
+ \item bug fixing for \texttt{dspace2struct}
+ \item suppressing notification of the calculations made by the fp package
+ during the compilation.
+ \end{itemize}
+ \item 14.06.2012
+ \begin{itemize}
+ \item added rotation option for \verb+\NDPput+ (Rot=45)
+ \end{itemize}
+ \item 03.08.2012
+ \begin{itemize}
+ \item added documentation for plotting noisy data
+ \end{itemize}
+ \item 23.08.2012
+ \begin{itemize}
+ \item added command \verb+\LegDot+
+ \end{itemize}
+ \item 29.08.2012
+ \begin{itemize}
+ \item added command \verb+\multilistplot+
+ \item added \verb+options.NaNsplit+ to export2latex
+ \end{itemize}
+ \item 30.08.2012
+ \begin{itemize}
+ \item added options DDx and DDy for minor grid
+ \item added option LabelBP
+ \end{itemize}
+ \item 19.03.2013
+ \begin{itemize}
+ \item added Customized Tick Labels
+ \end{itemize}
+ \item 11.04.2013
+ \begin{itemize}
+ \item Corrected calculation of bounding box
+ \begin{itemize}
+ \item removed additional horizontal phantom space
+ \item Previously, the padding values lly and ury where added to the given
+height parameter to set the object height. Now, the given height parameter is correctly set as height of the bounding box.
+ \item new standard values for padding parameters lly, llx, ury, urx, which now take into account the current font size settings (unit \verb|em|, \verb|\baselineskip|)
+ \end{itemize}
+ \item added more detailed documentation of the bounding box and coordinate frame behavior
+ \end{itemize}
+ \item 16.04.2013
+ \begin{itemize}
+ \item Changed positioning of axis labels and tick labels and added more
+ options for customization.
+ \item Changed option LabelBP to LabelRefPt.
+ \item Changed options xLabelSep and yLabelSep to LabelSep (with different
+ meaning).
+ \item Changed options xTickLabelSep and yTickLabelSep to TickLabelSep (with
+ different meaning).
+ \end{itemize}
+ \item 19.04.2013
+ \begin{itemize}
+ \item added and improved documentation
+ \end{itemize}
+ \item 25.04.2013
+ \begin{itemize}
+ \item changed implementation of subgrids for logarithmic axes
+ \end{itemize}
+ \item 04.06.2013
+ \begin{itemize}
+ \item corrected and added documentation concerning the use of \verb|PutTickLabelXaxis| and \verb|PutTickLabelYaxis| for customized tick labels
+ \end{itemize}
+ \item 18.09.2013
+ \begin{itemize}
+ \item corrected error ocurring for xLog and yLog labels. In some occasions
+ Latex wrote $10^{-0}$ instead of $10^{0}$.
+ \end{itemize}
+\end{itemize}
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/keys_NumericDataPlot.tex b/graphics/pstricks/contrib/numericplots/doc/src/keys_NumericDataPlot.tex
new file mode 100644
index 0000000000..0d685e9205
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/keys_NumericDataPlot.tex
@@ -0,0 +1,73 @@
+xMax&NumericDataPlot&Axis&command&[none]\\
+xMin&NumericDataPlot&Axis&command&[none]\\
+Dx&NumericDataPlot&Axis&command&[none]\\
+dx&NumericDataPlot&Axis&command&[none]\\
+xCoordMax&NumericDataPlot&Axis&command&[none]\\
+xCoordMin&NumericDataPlot&Axis&command&[none]\\
+yMax&NumericDataPlot&Axis&command&[none]\\
+yMin&NumericDataPlot&Axis&command&[none]\\
+Dy&NumericDataPlot&Axis&command&[none]\\
+dy&NumericDataPlot&Axis&command&[none]\\
+yCoordMax&NumericDataPlot&Axis&command&[none]\\
+yCoordMin&NumericDataPlot&Axis&command&[none]\\
+xLog&NumericDataPlot&Axis&boolean&true\\
+yLog&NumericDataPlot&Axis&boolean&true\\
+xLogNoSubGrid&NumericDataPlot&Axis&boolean&true\\
+yLogNoSubGrid&NumericDataPlot&Axis&boolean&true\\
+yNearlyTight&NumericDataPlot&Axis&boolean&false\\
+xO&NumericDataPlot&AxisWait&command&[none]\\
+yO&NumericDataPlot&AxisWait&command&[none]\\
+DDy&NumericDataPlot&AxisWait&command&[none]\\
+DDx&NumericDataPlot&AxisWait&command&[none]\\
+NoGrid&NumericDataPlot&xAxis&boolean&true\\
+NoTicks&NumericDataPlot&xAxis&boolean&true\\
+NoLabel&NumericDataPlot&xAxis&boolean&true\\
+NoTickLabel&NumericDataPlot&xAxis&boolean&true\\
+NoGrid&NumericDataPlot&yAxis&boolean&true\\
+NoTicks&NumericDataPlot&yAxis&boolean&true\\
+NoLabel&NumericDataPlot&yAxis&boolean&true\\
+NoTickLabel&NumericDataPlot&yAxis&boolean&true\\
+AxisStyle&NumericDataPlot&xAxis&choice&[none]\\
+AxisStyle&NumericDataPlot&yAxis&choice&[none]\\
+xPicMin&NumericDataPlot&General&command&[none]\\
+yPicMin&NumericDataPlot&General&command&[none]\\
+xPicMax&NumericDataPlot&General&command&[none]\\
+yPicMax&NumericDataPlot&General&command&[none]\\
+TickLength&NumericDataPlot&General&command&[none]\\
+llx&NumericDataPlot&General&ordinary&\StdLLX \\
+urx&NumericDataPlot&General&ordinary&\StdURX \\
+lly&NumericDataPlot&General&ordinary&\StdLLY \\
+ury&NumericDataPlot&General&ordinary&\StdURY \\
+x&NumericDataPlot&put&ordinary&[none]\\
+y&NumericDataPlot&put&ordinary&[none]\\
+RefPoint&NumericDataPlot&put&ordinary&c\\
+Rot&NumericDataPlot&put&ordinary&0\\
+LabelPos&NumericDataPlot&putxLabel&command&[none]\\
+LabelOption&NumericDataPlot&putxLabel&command&[none]\\
+LabelOrientation&NumericDataPlot&putxLabel&command&[none]\\
+LabelRot&NumericDataPlot&putxLabel&command&[none]\\
+LabelRefPt&NumericDataPlot&putxLabel&command&[none]\\
+LabelPos&NumericDataPlot&putyLabel&command&[none]\\
+LabelOption&NumericDataPlot&putyLabel&command&[none]\\
+LabelOrientation&NumericDataPlot&putyLabel&command&[none]\\
+LabelRot&NumericDataPlot&putyLabel&command&[none]\\
+LabelRefPt&NumericDataPlot&putyLabel&command&[none]\\
+LabelSep&NumericDataPlot&putxLabel&ordinary&\origXLabelSep \\
+LabelSep&NumericDataPlot&putyLabel&ordinary&\origYLabelSep \\
+ax&NumericDataPlot&putxLabel&choice&[none]\\
+ax&NumericDataPlot&putyLabel&choice&[none]\\
+x&NumericDataPlot&putxTickLabel&ordinary&[none]\\
+y&NumericDataPlot&putyTickLabel&ordinary&[none]\\
+TickLabelRefPt&NumericDataPlot&putxTickLabel&ordinary&[none]\\
+TickLabelRefPt&NumericDataPlot&putyTickLabel&ordinary&[none]\\
+TickLabelOption&NumericDataPlot&putxTickLabel&command&[none]\\
+TickLabelRot&NumericDataPlot&putxTickLabel&command&[none]\\
+TickLabelOption&NumericDataPlot&putyTickLabel&command&[none]\\
+TickLabelRot&NumericDataPlot&putyTickLabel&command&[none]\\
+TickLabelSep&NumericDataPlot&putxTickLabel&ordinary&\origXTickLabelSep \\
+TickLabelSep&NumericDataPlot&putyTickLabel&ordinary&\origYTickLabelSep \\
+ax&NumericDataPlot&putxTickLabel&choice&[none]\\
+ax&NumericDataPlot&putyTickLabel&choice&[none]\\
+nrCols&NumericDataPlot&Legend&ordinary&1\\
+LegLineWidth&NumericDataPlot&Legend&ordinary&20pt\\
+LabelOrientation&NumericDataPlot&Legend&choice&[none]\\
diff --git a/graphics/pstricks/contrib/numericplots/doc/src/options.tex b/graphics/pstricks/contrib/numericplots/doc/src/options.tex
new file mode 100644
index 0000000000..e4f6c416db
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/doc/src/options.tex
@@ -0,0 +1,44 @@
+% Copyright 2010 Thomas Koenig, Alexander Michel
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+\section{Options}
+
+\subsection{General}\label{sec:OptionsGeneral}
+
+ These are the options for the environment \texttt{NumericDataPlot}. Note that the padding values llx, lly, urx, ury depend on the type settings.
+
+ \begin{itemize}
+ \item xPicMin [0], yPicMin [0], xPicMax [1000], yPicMax [1000]
+ \item TickLength [2] defines the length of the ticks in mm
+\item \verb|\origXLabelSep| [\verb|\baselineskip|+1ex], \verb|\origYLabelSep|
+[7ex]
+ \item \verb|\StdLLX| [7ex +\verb|\baselineskip|+2pt]
+ \verb|\StdLLY|[2\verb|\baselineskip|+1ex+2pt]
+ \verb|\StdURX|[2ex]
+ \verb|\StdURY|[0.5em]
+ \end{itemize}
+
+
+\subsection{Automatic list with xkvview}
+The following list of keys defined by the package was created with xkvview.
+
+\xkvview{prefix=NumericDataPlot,file=keys_NumericDataPlot}
+
+% \xkvview{family=Axis,file=keys_Axis}
+% \xkvview{family=xAxis,file=keys_xAxis}
+% \xkvview{family=yAxis,file=keys_yAxis}
+
diff --git a/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots.sty b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots.sty
new file mode 100644
index 0000000000..4fdee168e2
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots.sty
@@ -0,0 +1,957 @@
+% Copyright 2013 Thomas Koenig, Alexander Michel, Michael Baumgart
+%
+% This file is part of NumericPlots.
+%
+% NumericPlots is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% any later version.
+%
+% NumericPlots is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with NumericPlots. If not, see <http://www.gnu.org/licenses/>.
+
+\NeedsTeXFormat{LaTeX2e}
+
+\ProvidesPackage{NumericPlots}%
+ [2013/09/19 v. 2.0.2 LaTeX package to plot numeric data]
+
+
+\RequirePackage{calc}
+\RequirePackage[nomessages]{fp}
+
+\RequirePackage{ifthen}
+\RequirePackage{pstricks}
+\RequirePackage{pst-node}
+\RequirePackage{pst-plot}
+\RequirePackage{pstricks-add} % has to be the last of the pst-packages to be loaded!
+% the following seems not to work. xcolor must be included with x11names option!
+\RequirePackage{xcolor}
+
+
+% \makeatletter
+% \newcommand*{\getlengthwounit}[1]{\strip@pt#1}
+% \makeatother
+
+
+
+% =======================================
+% === Definition of keys and commands ===
+% =======================================
+%
+% All the provided options (keys) are defined in the following section. Maybe it
+% is possible to store the values of the keys somehow. We then wouldn't have to
+% define all the new commands..
+
+\RequirePackage{xkeyval}
+\RequirePackage{xkvview} % keep track of all keys that are defined
+
+\newcommand{\testframe}[1]{#1}
+
+
+% globally needed values as newcommands
+\newcommand{\NumDataPlotxRange}{1}
+\newcommand{\NumDataPlotxCoordRange}{1}
+\newcommand{\NumDataPlotxDataCoordRatio}{1}
+\newcommand{\NumDataPlotyRange}{1}
+\newcommand{\NumDataPlotyCoordRange}{1}
+\newcommand{\NumDataPlotyDataCoordRatio}{1}
+\newcommand{\NumDataPlotLnTen}{2.3025850929940}
+\newcommand{\NumDataPlotTickPos}{0}
+
+\newcommand{\xScaling}{}
+\newcommand{\yScaling}{}
+
+\newcommand{\NDPputXcoord}{0}
+\newcommand{\NDPputYcoord}{0}
+\newcommand{\NDPRefPoint}{c}
+\newcommand{\NDPputRotation}{0}
+
+\newcommand{\NumDataPlotBuffer}{0}
+\newcommand{\NumDataPlotBufferI}{0}
+\newcommand{\TicksXRight}{0}
+\newcommand{\TicksXLeft}{0}
+\newcommand{\TicksYRight}{0}
+\newcommand{\TicksYLeft}{0}
+\newcommand{\TickLabelsXRight}{0}
+\newcommand{\TickLabelsXLeft}{0}
+\newcommand{\TickLabelsYRight}{0}
+\newcommand{\TickLabelsYLeft}{0}
+\newcommand{\xTickLength}{-10}
+\newcommand{\yTickLength}{-10}
+
+\newcommand{\xNrTicks}{1}
+\newcommand{\yNrTicks}{1}
+\newcommand{\xNrTickLabels}{1}
+\newcommand{\yNrTickLabels}{1}
+
+\newboolean{PlotLeftAxis}
+\setboolean{PlotLeftAxis}{true}
+\newboolean{PlotRightAxis}
+\setboolean{PlotRightAxis}{true}
+
+\newboolean{PlotLowerAxis}
+\setboolean{PlotLowerAxis}{true}
+\newboolean{PlotUpperAxis}
+\setboolean{PlotUpperAxis}{true}
+
+\newcommand{\nrLegendCols}{1}
+\newlength{\LegLineWidth}\setlength{\LegLineWidth}{20pt}
+
+\newboolean{LegendOrientationLeft}
+\newboolean{LegendOrientationRight}
+\newboolean{LegendOrientationCenter}
+\setboolean{LegendOrientationLeft}{true}
+\setboolean{LegendOrientationRight}{false}
+\setboolean{LegendOrientationCenter}{false}
+
+
+\newcommand{\LogxAxis}{}
+\newcommand{\LogxAxisLabel}[1]{$#1$}
+\newcommand{\LogyAxis}{}
+\newcommand{\LogyAxisLabel}[1]{$#1$}
+
+
+\newcounter{BufferCounter}
+% ----------------------------------------------------------------------------
+% | define keys for the axis style etc.
+% ----------------------------------------------------------------------------
+
+% define some command keys
+% the command keys only save the provided value in \NumDataPlot<key> for later
+% use. The standard values for the command keys are set at the end of the
+% package.
+
+\define@cmdkeys[NumericDataPlot]{Axis}[NumDataPlot]
+ {xMax, xMin,
+ Dx,
+ dx, % so far, these are always calculated and cannot be set by user
+ xCoordMax, xCoordMin,
+ yMax, yMin,
+ Dy,
+ dy, % so far, these are always calculated and cannot be set by user
+ yCoordMax, yCoordMin
+ }
+
+
+\define@boolkey[NumericDataPlot]{Axis}{xLog}[true]{
+ \ifNumericDataPlot@Axis@xLog
+ \renewcommand{\LogxAxis}{log}
+ \renewcommand{\LogxAxisLabel}[1]{
+ \ifthenelse{##1<1}{
+ \ifthenelse{##1>-1}{%
+ $10^{0}$%
+ }{%
+ $10^{##1}$%
+ }}%
+ {%
+ $10^{##1}$%
+ }%
+ }%
+ \else
+ \renewcommand{\LogxAxis}{}
+ \renewcommand{\LogxAxisLabel}[1]{$##1$}
+ \fi
+}
+
+\define@boolkey[NumericDataPlot]{Axis}{yLog}[true]{
+ \ifNumericDataPlot@Axis@yLog
+ \renewcommand{\LogyAxis}{log}
+ \renewcommand{\LogyAxisLabel}[1]{
+ \ifthenelse{##1<1}{
+ \ifthenelse{##1>-1}{%
+ $10^{0}$%
+ }{%
+ $10^{##1}$%
+ }}%
+ {%
+ $10^{##1}$%
+ }%
+ }%
+ \else
+ \renewcommand{\LogyAxis}{}
+ \renewcommand{\LogyAxisLabel}[1]{$##1$}
+ \fi
+}
+
+\define@boolkey[NumericDataPlot]{Axis}{xLogNoSubGrid}[true]{
+}
+\define@boolkey[NumericDataPlot]{Axis}{yLogNoSubGrid}[true]{
+}
+
+\define@boolkey[NumericDataPlot]{Axis}{yNearlyTight}[false]{}
+
+% xMin and yMin also set xO/yO. It will later be ensured that if the user
+% provides a value for xO/yO, these values will be used! (in order to do so, it
+% is always necessary to call the following two commands in the given order:
+% \setkeys[NumericDataPlot]{Axis}{<list of keys>}
+% \setrmkeys[NumericDataPlot]{AxisWait}
+% where <list of keys> can contain all the keys from Axis and from AxisWait)
+% same goes for DDy and DDx (Dy for labels): By default, the values of dy and dx
+% will be used.
+\define@cmdkeys[NumericDataPlot]{AxisWait}[NumDataPlot]{xO, yO, DDy, DDx}{}
+
+\define@boolkeys[NumericDataPlot]{xAxis}
+ {NoGrid, NoTicks, NoLabel, NoTickLabel}[true]
+
+\define@boolkeys[NumericDataPlot]{yAxis}
+ {NoGrid, NoTicks, NoLabel, NoTickLabel}[true]
+
+
+
+\define@choicekey+[NumericDataPlot]{xAxis}{AxisStyle}[\val\nrAxisStyle]
+{Boxed,Lower,Upper,None}{
+ \ifcase\nrAxisStyle\relax
+ \setboolean{PlotLowerAxis}{true}
+ \setboolean{PlotUpperAxis}{true}
+ \or
+ \setboolean{PlotLowerAxis}{true}
+ \setboolean{PlotUpperAxis}{false}
+ \or
+ \setboolean{PlotLowerAxis}{false}
+ \setboolean{PlotUpperAxis}{true}
+ \or
+ \setboolean{PlotLowerAxis}{false}
+ \setboolean{PlotUpperAxis}{false}
+ \fi
+}{
+ \PackageWarning{NumericPlots}
+ {AxisStyle #1 not defined. Use Boxed, Lower, Upper or None}
+}
+
+\define@choicekey+[NumericDataPlot]{yAxis}{AxisStyle}[\val\nrAxisStyle]
+{Boxed,Right,Left,None}{
+ \ifcase\nrAxisStyle\relax
+ \setboolean{PlotRightAxis}{true}
+ \setboolean{PlotLeftAxis}{true}
+ \or
+ \setboolean{PlotRightAxis}{true}
+ \setboolean{PlotLeftAxis}{false}
+ \or
+ \setboolean{PlotRightAxis}{false}
+ \setboolean{PlotLeftAxis}{true}
+ \or
+ \setboolean{PlotRightAxis}{false}
+ \setboolean{PlotLeftAxis}{false}
+ \fi
+}{
+ \PackageWarning{NumericPlots}
+ {AxisStyle #1 not defined. Use Boxed, Right, Left or None}
+}
+
+
+% ----------------------------------------------------------------------------
+% | general keys
+% |
+% | picture width etc.
+% ----------------------------------------------------------------------------
+
+\define@cmdkeys[NumericDataPlot]{General}[NumDataPlotG]{%
+ xPicMin, yPicMin, xPicMax, yPicMax, TickLength%
+}
+
+
+\define@key[NumericDataPlot]{General}{llx}[\StdLLX]{%
+ \psset{llx=-#1}%
+ \addtolength{\OffsetWidth}{-\StdLLX}%
+ \addtolength{\OffsetWidth}{#1}%
+}
+\define@key[NumericDataPlot]{General}{urx}[\StdURX]{%
+ \psset{urx=#1}%
+ \addtolength{\OffsetWidth}{-\StdURX}%
+ \addtolength{\OffsetWidth}{#1}%
+}
+\define@key[NumericDataPlot]{General}{lly}[\StdLLY]{%
+ \psset{lly=-#1}%
+ \addtolength{\OffsetHeight}{-\StdLLY}%
+ \addtolength{\OffsetHeight}{#1}%
+}
+\define@key[NumericDataPlot]{General}{ury}[\StdURY]{%
+ \psset{ury=#1}%
+ \addtolength{\OffsetHeight}{-\StdURY}%
+ \addtolength{\OffsetHeight}{#1}%
+}
+
+
+
+% ------------------------------------------------------------------------------
+% | keys for the put commands
+% ------------------------------------------------------------------------------
+
+\define@key[NumericDataPlot]{put}{x}{
+ \FPsub{\NumDataPlotBuffer}{#1}{\NumDataPlotxMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}
+ \FPadd{\NDPputXcoord}{\NumDataPlotBuffer}{\NumDataPlotxCoordMin}
+}
+\define@key[NumericDataPlot]{put}{y}{
+ \FPsub{\NumDataPlotBuffer}{#1}{\NumDataPlotyMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotyDataCoordRatio}
+ \FPadd{\NDPputYcoord}{\NumDataPlotBuffer}{\NumDataPlotyCoordMin}
+}
+\define@key[NumericDataPlot]{put}{RefPoint}[c]{
+ \renewcommand{\NDPRefPoint}{#1}
+}
+\define@key[NumericDataPlot]{put}{Rot}[0]{
+ \renewcommand{\NDPputRotation}{#1}
+}
+
+%-------------------------------------------------------------------------------
+\input{NumericPlots_labels}
+\input{NumericPlots_TickLabels}
+
+%
+%\newlength{\picwidth}
+\newlength{\CPicWidth}
+\newlength{\CPicHeight}
+\newlength{\StdLLX}\setlength{\StdLLX}{7ex +\baselineskip+2pt}
+\newlength{\StdLLY}\setlength{\StdLLY}{2\baselineskip+1ex+2pt}
+\newlength{\StdURX}\setlength{\StdURX}{2ex}
+\newlength{\StdURY}\setlength{\StdURY}{0.5em}
+\newlength{\OffsetWidth}
+\newlength{\OffsetHeight}
+
+
+
+
+
+% ==============================================================================
+% ||
+% || Axis (Scaling)
+% ||
+% ==============================================================================
+
+\newcommand{\ScaleAxes}{
+ % calculate scaling:
+ % (<x> - xMin) * xDataCoordRatio + xCoordMin
+ % (<y> - yMin) * yDataCoordRatio + yCoordMin
+ % DataCoordRatio = (CoordMax-CoordMin)/(Max-Min)
+ % for logarithmic axes:
+ % (log(<x>) - log(xMin)) * xDataCoordRatio + xCoordMin
+ % (log(<y>) - log(yMin)) * yDataCoordRatio + yCoordMin
+ % DataCoordRatio = (CoordMax-CoordMin)/(log(Max)-log(Min))
+ \renewcommand{\xScaling}{\LogxAxis\space \NumDataPlotxMin\space sub
+ \NumDataPlotxDataCoordRatio\space mul \NumDataPlotxCoordMin\space add}
+ \renewcommand{\yScaling}{\LogyAxis\space \NumDataPlotyMin\space sub
+ \NumDataPlotyDataCoordRatio\space mul \NumDataPlotyCoordMin\space add}
+ \pstScalePoints(1.0, 1.0){\xScaling}{\yScaling}
+}
+
+% ==============================================================================
+% ||
+% || x-Axis
+% ||
+% ==============================================================================
+
+\newcommand{\setxAxis}[1]{
+ % set the keys. xO and yO have to be set after xMin and yMin have been set!
+ % (xMin and yMin also set xO and yO but when xO and yO are set by the user,
+ % these values should be overwritten.)
+ \setkeys*[NumericDataPlot]{Axis}
+ [yMin, yMax, Dy, dy, yCoordMin, yCoordMax, yLog]{#1}
+ \setrmkeys[NumericDataPlot]{AxisWait}[yO, DDy]
+
+ % for logarithmic axes: calculate log(xMax), log(xMin), Dx=1, xO=ceil(xMin)
+ \ifNumericDataPlot@Axis@xLog
+ \FPln{\NumDataPlotBuffer}{\NumDataPlotxMax}
+ \FPdiv{\NumDataPlotxMax}{\NumDataPlotBuffer}{\NumDataPlotLnTen}
+ \FPround{\NumDataPlotxMax}{\NumDataPlotxMax}{3}
+ \FPln{\NumDataPlotBuffer}{\NumDataPlotxMin}
+ \FPdiv{\NumDataPlotxMin}{\NumDataPlotBuffer}{\NumDataPlotLnTen}
+ \FPround{\NumDataPlotxMin}{\NumDataPlotxMin}{3}
+ \renewcommand{\NumDataPlotDx}{1}
+ \FPtrunc{\NumDataPlotBuffer}{\NumDataPlotxMin}{0}
+ \FPadd{\NumDataPlotxO}{\NumDataPlotBuffer}{1}
+ \FPround{\NumDataPlotxO}{\NumDataPlotBuffer}{0}
+ \fi
+
+ \FPsub{\NumDataPlotxRange}{\NumDataPlotxMax}{\NumDataPlotxMin}
+ \FPsub{\NumDataPlotxCoordRange}{\NumDataPlotxCoordMax}{\NumDataPlotxCoordMin}
+ \FPdiv{\NumDataPlotxDataCoordRatio}{\NumDataPlotxCoordRange}{\NumDataPlotxRange}
+
+ % calculate number of ticks
+ \FPdiv{\xNrTicks}{\NumDataPlotxRange}{\NumDataPlotDx}
+ \FPtrunc{\xNrTicks}{\xNrTicks}{0}
+ % calculate number of tick labels
+ \FPdiv{\xNrTickLabels}{\NumDataPlotxRange}{\NumDataPlotDDx}
+ \FPtrunc{\xNrTickLabels}{\xNrTickLabels}{0}
+
+ % calculate dx (distance (in coordinates) between two ticks)
+ \FPmul{\NumDataPlotdx}{\NumDataPlotxDataCoordRatio}{\NumDataPlotDx}
+ \FPround{\NumDataPlotdx}{\NumDataPlotdx}{2}
+ % calculate dx for labels
+ \FPmul{\NumDataPlotdxLabels}{\NumDataPlotxDataCoordRatio}{\NumDataPlotDDx}
+ \FPround{\NumDataPlotdxLabels}{\NumDataPlotdxLabels}{2}
+
+ % calculate coordinates of x origin
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotxO}{\NumDataPlotxMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}{\NumDataPlotBuffer}
+ \FPadd{\xCoordOrig}{\NumDataPlotBuffer}{\NumDataPlotxCoordMin}
+ \FPround{\xCoordOrig}{\xCoordOrig}{2}
+
+ % calculate number of ticks on right side of the origin
+ \FPsub{\TicksXRight}{\NumDataPlotxMax}{\NumDataPlotxO}
+ \FPdiv{\TicksXRight}{\TicksXRight}{\NumDataPlotDx}
+ \FPtrunc{\TicksXRight}{\TicksXRight}{0}
+ % calculate number of tick labels on right side of the origin
+ \FPsub{\TickLabelsXRight}{\NumDataPlotxMax}{\NumDataPlotxO}
+ \FPdiv{\TickLabelsXRight}{\TickLabelsXRight}{\NumDataPlotDDx}
+ \FPtrunc{\TickLabelsXRight}{\TickLabelsXRight}{0}
+
+ % calculate number of ticks on left side of the origin (number is negative!)
+ \FPsub{\TicksXLeft}{\NumDataPlotxMin}{\NumDataPlotxO}
+ \FPdiv{\TicksXLeft}{\TicksXLeft}{\NumDataPlotDx}
+ \FPsub{\TicksXLeft}{\TicksXLeft}{1}
+ \FPtrunc{\TicksXLeft}{\TicksXLeft}{0}
+ % calculate number of tick labels on left side of the origin (number is
+ % negative!)
+ \FPsub{\TickLabelsXLeft}{\NumDataPlotxMin}{\NumDataPlotxO}
+ \FPdiv{\TickLabelsXLeft}{\TickLabelsXLeft}{\NumDataPlotDDx}
+ \FPsub{\TickLabelsXLeft}{\TickLabelsXLeft}{1}
+ \FPtrunc{\TickLabelsXLeft}{\TickLabelsXLeft}{0}
+
+ \ScaleAxes{}
+}
+
+
+\newcommand{\plotxGridLine}[1]{
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotxCoordMax}{#1}
+ \FPsub{\NumDataPlotBufferI}{#1}{\NumDataPlotxCoordMin}
+ \FPmin{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotBufferI}
+% \FPifneg{\NumDataPlotBuffer}
+% \else
+ % plot grid line
+ \ifNumericDataPlot@xAxis@NoGrid
+ \else
+ \psline[style=GridSt](#1, \NumDataPlotyCoordMin)(#1, \NumDataPlotyCoordMax)
+ \fi
+ % plot tick for lower axis and upper axis - if desired
+ \ifNumericDataPlot@xAxis@NoTicks
+ \else
+ \ifthenelse{\boolean{PlotLowerAxis}}{
+ \psline[style=TickSt](#1, \NumDataPlotyCoordMin)
+ (!#1\space \NumDataPlotyCoordMin\space \xTickLength \space sub)
+ }{}
+ \ifthenelse{\boolean{PlotUpperAxis}}{
+ \psline[style=TickSt](#1, \NumDataPlotyCoordMax)
+ (!#1 \NumDataPlotyCoordMax\space \xTickLength \space add)
+ }{}
+ \fi
+% \fi
+}
+
+\newcommand{\plotxSubGridLine}[1]{
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotxCoordMax}{#1}
+ \FPsub{\NumDataPlotBufferI}{#1}{\NumDataPlotxCoordMin}
+ \FPmin{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotBufferI}
+ \FPifneg{\NumDataPlotBuffer}
+ \else
+ % plot grid line
+ \ifNumericDataPlot@xAxis@NoGrid
+ \else
+ \psline[style=GridSt](#1,\NumDataPlotyCoordMin)(#1,\NumDataPlotyCoordMax)
+ \fi
+ \fi
+}
+
+% for logarithmic axes, LogxAxisLabel returns 10^#1. Normally it just returns
+% #1.
+
+
+
+\newcommand{\plotxTickLabels}[1]{
+ \FPadd{\NumDataPlotBuffer}{\TickLabelsXLeft}{1}
+ \FPround{\NumDataPlotBuffer}{\NumDataPlotBuffer}{0}
+
+ % plot ticks on right side of the origin
+ \mmultido{\n=\NumDataPlotxO+\NumDataPlotDDx}{\TickLabelsXRight}
+ {
+ \PutTickLabelXaxis[#1,x=\n]{\LogxAxisLabel{\n}}
+ }
+ % plot ticks on left side of the origin
+ \mmultido{\n=\NumDataPlotxO+\NumDataPlotDDx}{\NumDataPlotBuffer}
+ {
+ \PutTickLabelXaxis[#1,x=\n]{\LogxAxisLabel{\n}}
+ }
+ % plot tick at origin
+ \PutTickLabelXaxis[#1,x=\NumDataPlotxO]{\LogxAxisLabel{\NumDataPlotxO}}
+}
+
+\newcommand{\xLogSubGrid}[1]{
+ \ifNumericDataPlot@Axis@xLogNoSubGrid
+ \else
+ \ifNumericDataPlot@Axis@xLog
+ \multido{\iSubb=2+1}{8}{
+ \FPln{\NumDataPlotBuffer}{\iSubb}
+ \FPdiv{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotLnTen}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}
+ \FPadd{\NumDataPlotTickPos}{#1}{\NumDataPlotBuffer}
+ \plotxSubGridLine{\NumDataPlotTickPos}
+ }
+ \fi
+ \fi
+}
+
+\newcommand{\plotxGrid}[1][NoGrid=false]{
+ \setkeys*[NumericDataPlot]{xAxis}{#1}
+
+ % plot gridline on right side of the origin
+ \mmultido{\n=\xCoordOrig+\NumDataPlotdx}{\TicksXRight}{
+ \plotxGridLine{\n}
+ \xLogSubGrid{\n}
+ }
+ % plot gridline on left side of the origin and at origin
+ \multido{\n=\xCoordOrig+\NumDataPlotdx}{\TicksXLeft}{
+ \plotxGridLine{\n}
+ }
+
+ \FPsub{\NumDataPlotBuffer}{\TicksXLeft}{1}
+ \FPround{\NumDataPlotBuffer}{\NumDataPlotBuffer}{0}
+ \multido{\n=\xCoordOrig+\NumDataPlotdx}{\NumDataPlotBuffer}{
+ \xLogSubGrid{\n}
+ }
+}
+
+\newcommand{\plotxAxis}[2][]{
+ \setkeys[NumericDataPlot]{putxLabel}{LabelSep}
+ \setkeys*[NumericDataPlot]{putxLabel}{#1}
+ \setrmkeys*[NumericDataPlot]{putxTickLabel}
+ \setrmkeys[NumericDataPlot]{xAxis}
+
+ % plot grid, ticks and ticklabels
+ \plotxGrid[#1]
+
+
+ % plot lower axis
+ \ifthenelse{\boolean{PlotLowerAxis}}
+ {
+ \psline{C-C}%
+ (\NumDataPlotxCoordMin, \NumDataPlotyCoordMin)%
+ (\NumDataPlotxCoordMax, \NumDataPlotyCoordMin)
+ \ifNumericDataPlot@xAxis@NoTickLabel
+ \else
+ \plotxTickLabels{ax=lower,#1}
+ \fi
+ % plot label
+ \ifNumericDataPlot@xAxis@NoLabel
+ \else
+ \PutLabelXaxis[ax=lower,#1]{#2}
+ \fi
+ %plot upper axis (boxed)
+ \ifthenelse{\boolean{PlotUpperAxis}}{
+ % plot upper axis
+ \psline{C-C}%
+ (\NumDataPlotxCoordMin,\NumDataPlotyCoordMax)%
+ (\NumDataPlotxCoordMax,\NumDataPlotyCoordMax)
+ }{}
+ }{
+ % plot upper axis (only upper axis)
+ \ifthenelse{\boolean{PlotUpperAxis}}{
+ % plot upper axis
+ \psline{C-C}%
+ (\NumDataPlotxCoordMin,\NumDataPlotyCoordMax)%
+ (\NumDataPlotxCoordMax, \NumDataPlotyCoordMax)
+ % plot ticklabels
+ \ifNumericDataPlot@xAxis@NoTickLabel
+ \else
+ \plotxTickLabels{ax=upper,#1}
+ \fi
+ % plot label
+ \ifNumericDataPlot@xAxis@NoLabel
+ \else
+ \PutLabelXaxis[ax=upper,#1]{#2}
+ \fi
+ }{}
+ }
+}
+
+\newcommand{\repeatxAxis}{\plotxAxis[NoLabel, NoTickLabel]{}}
+
+% ==============================================================================
+% ||
+% || y-Axis
+% ||
+% ==============================================================================
+
+
+\newcommand{\plotyTickLabels}[1]{
+ \FPadd{\NumDataPlotBuffer}{\TickLabelsYLeft}{1}
+ \FPround{\NumDataPlotBuffer}{\NumDataPlotBuffer}{0}
+ % plot ticks on right side of the origin
+ \mmultido{\n=\NumDataPlotyO+\NumDataPlotDDy}{\TickLabelsYRight}
+ {
+ \PutTickLabelYaxis[#1,y=\n]{\LogyAxisLabel{\n}}
+ }
+ % plot ticks on left side of the origin
+ \mmultido{\n=\NumDataPlotyO+\NumDataPlotDDy}{\NumDataPlotBuffer}
+ {
+ \PutTickLabelYaxis[#1,y=\n]{\LogyAxisLabel{\n}}
+ }
+ % plot tick at origin
+ \PutTickLabelYaxis[#1,y=\NumDataPlotyO]{\LogyAxisLabel{\NumDataPlotyO}}
+}
+
+\newcommand{\setyAxis}[1]{
+ % values from the x-axis must be ignored! If they weren't, the default values
+ % would be set!
+ \setkeys*[NumericDataPlot]{Axis}
+ [xO, xMin, xMax, xCoordMin, xCoordMax, Dx, dx, xLog]{#1}
+ \setrmkeys[NumericDataPlot]{AxisWait}[xO, DDx]
+
+ %\ifNumericDataPlot@Axis@yNearlyTight
+% \FPifpos{\NumDataPlotyMax} \FPmul{\NumDataPlotyMax}{\NumDataPlotyMax}{1.1} \else \FPmul{\NumDataPlotyMax}{\NumDataPlotyMax}{0.9}\fi
+% \FPifpos{\NumDataPlotyMin} \FPmul{\NumDataPlotyMin}{\NumDataPlotyMin}{0.9} \else \FPmul{\NumDataPlotyMin}{\NumDataPlotyMin}{1.1}\fi
+% \fi
+
+ % for logarithmic axes: calculate log(xMax), log(xMin), Dy=1, xO=ceil(xMin)
+ \ifNumericDataPlot@Axis@yLog
+ \FPln{\NumDataPlotBuffer}{\NumDataPlotyMax}
+ \FPdiv{\NumDataPlotyMax}{\NumDataPlotBuffer}{\NumDataPlotLnTen}
+ \FPround{\NumDataPlotyMax}{\NumDataPlotyMax}{6}
+ \FPln{\NumDataPlotBuffer}{\NumDataPlotyMin}
+ \FPdiv{\NumDataPlotyMin}{\NumDataPlotBuffer}{\NumDataPlotLnTen}
+ \FPround{\NumDataPlotyMin}{\NumDataPlotyMin}{6}
+ \renewcommand{\NumDataPlotDy}{1}
+ \FPtrunc{\NumDataPlotBuffer}{\NumDataPlotyMin}{0}
+ \FPadd{\NumDataPlotyO}{\NumDataPlotBuffer}{1}
+ \FPround{\NumDataPlotyO}{\NumDataPlotyO}{0}
+ \fi
+
+ \FPsub{\NumDataPlotyRange}{\NumDataPlotyMax}{\NumDataPlotyMin}
+ \FPsub{\NumDataPlotyCoordRange}{\NumDataPlotyCoordMax}{\NumDataPlotyCoordMin}
+ \FPdiv{\NumDataPlotyDataCoordRatio}{\NumDataPlotyCoordRange}{\NumDataPlotyRange}
+
+ % calculate number of ticks
+ \FPdiv{\yNrTicks}{\NumDataPlotyRange}{\NumDataPlotDy}
+ \FPtrunc{\yNrTicks}{\yNrTicks}{0}
+ % calculate number of tick labels
+ \FPdiv{\yNrTickLabels}{\NumDataPlotyRange}{\NumDataPlotDDy}
+ \FPtrunc{\yNrTickLabels}{\yNrTickLabels}{0}
+
+ % calculate dy in coord -> distance between two ticks
+ \FPmul{\NumDataPlotdy}{\NumDataPlotyDataCoordRatio}{\NumDataPlotDy}
+ \FPround{\NumDataPlotdy}{\NumDataPlotdy}{2}
+ % calculate dyLabels in coord -> distance between two tick labels
+ \FPmul{\NumDataPlotdyLabels}{\NumDataPlotyDataCoordRatio}{\NumDataPlotDDy}
+ \FPround{\NumDataPlotdyLabels}{\NumDataPlotdyLabels}{2}
+
+ % calculate coordinates of y origin
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotyO}{\NumDataPlotyMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotyDataCoordRatio}{\NumDataPlotBuffer}
+ \FPadd{\yCoordOrig}{\NumDataPlotBuffer}{\NumDataPlotyCoordMin}
+ \FPround{\yCoordOrig}{\yCoordOrig}{2}
+
+ % calculate number of ticks on right side of the origin
+ \FPsub{\TicksYRight}{\NumDataPlotyMax}{\NumDataPlotyO}
+ \FPdiv{\TicksYRight}{\TicksYRight}{\NumDataPlotDy}
+ \FPtrunc{\TicksYRight}{\TicksYRight}{0}
+ % calculate number of tick labels on right side of the origin
+ \FPsub{\TickLabelsYRight}{\NumDataPlotyMax}{\NumDataPlotyO}
+ \FPdiv{\TickLabelsYRight}{\TickLabelsYRight}{\NumDataPlotDDy}
+ \FPtrunc{\TickLabelsYRight}{\TickLabelsYRight}{0}
+
+ % calculate number of ticks on left side of the origin (number is negative!)
+ \FPsub{\TicksYLeft}{\NumDataPlotyMin}{\NumDataPlotyO}
+ \FPdiv{\TicksYLeft}{\TicksYLeft}{\NumDataPlotDy}
+ \FPsub{\TicksYLeft}{\TicksYLeft}{1}
+ \FPtrunc{\TicksYLeft}{\TicksYLeft}{0}
+ % calculate number of tick labels on left side of the origin (number is
+ % negative!)
+ \FPsub{\TickLabelsYLeft}{\NumDataPlotyMin}{\NumDataPlotyO}
+ \FPdiv{\TickLabelsYLeft}{\TickLabelsYLeft}{\NumDataPlotDDy}
+ \FPsub{\TickLabelsYLeft}{\TickLabelsYLeft}{1}
+ \FPtrunc{\TickLabelsYLeft}{\TickLabelsYLeft}{0}
+
+ % --- scaling ---
+ \ScaleAxes{}
+}
+
+
+\newcommand{\plotyGridLine}[1]{%
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotyCoordMax}{#1}
+ \FPsub{\NumDataPlotBufferI}{#1}{\NumDataPlotyCoordMin}
+ \FPmin{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotBufferI}
+ \FPifpos{\NumDataPlotBuffer}
+ % plot grid line
+ \ifNumericDataPlot@yAxis@NoGrid
+ \else
+ \psline[style=GridSt](\NumDataPlotxCoordMin, #1)(\NumDataPlotxCoordMax, #1)
+ \fi
+ % plot tick for lower axis and upper axis - if desired
+ \ifNumericDataPlot@yAxis@NoTicks
+ \else
+ \ifthenelse{\boolean{PlotLeftAxis}}{
+ \psline[style=TickSt](\NumDataPlotxCoordMin, #1)
+ (!\NumDataPlotxCoordMin\space \yTickLength \space sub #1)
+ }{}
+ \ifthenelse{\boolean{PlotRightAxis}}{
+ \psline[style=TickSt](\NumDataPlotxCoordMax, #1)
+ (!\NumDataPlotxCoordMax\space \yTickLength \space add #1)
+ }{}
+ \fi
+ \fi
+}
+
+\newcommand{\plotySubGridLine}[1]{%
+ % only used by yLogSubGrid
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotyCoordMax}{#1}
+ \FPsub{\NumDataPlotBufferI}{#1}{\NumDataPlotyCoordMin}
+ \FPmin{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotBufferI}
+ \FPifpos{\NumDataPlotBuffer}
+ % plot grid line
+ \ifNumericDataPlot@yAxis@NoGrid
+ \else
+ \psline[style=GridSt](\NumDataPlotxCoordMin, #1)(\NumDataPlotxCoordMax, #1)
+ \fi
+ \fi
+}
+
+
+
+\newcommand{\yLogSubGrid}[1]{%
+ % plots the subgrid for logarithmic axes, i.e. the grid between the two lines
+ % 10^x and 10^(x+1)
+ \ifNumericDataPlot@Axis@yLogNoSubGrid
+ \else
+ \ifNumericDataPlot@Axis@yLog
+ \multido{\iSubb=2+1}{8}{
+ \FPln{\NumDataPlotBuffer}{\iSubb}
+ \FPdiv{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotLnTen}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotyDataCoordRatio}
+ \FPadd{\NumDataPlotTickPos}{#1}{\NumDataPlotBuffer}
+ \plotySubGridLine{\NumDataPlotTickPos}
+ }
+ \fi
+ \fi
+}
+
+\newcommand{\plotyGrid}[1][NoGrid=false]{
+ \setkeys*[NumericDataPlot]{yAxis}{#1}
+
+ % plot gridline on right side of the origin
+ \mmultido{\n=\yCoordOrig+\NumDataPlotdy}{\TicksYRight}{
+ \plotyGridLine{\n}
+ \yLogSubGrid{\n}
+ }
+ % plot gridline on left side of the origin
+ \multido{\n=\yCoordOrig+\NumDataPlotdy}{\TicksYLeft}{
+ \plotyGridLine{\n}
+ }
+ \FPsub{\NumDataPlotBuffer}{\TicksYLeft}{1}
+ \FPround{\NumDataPlotBuffer}{\NumDataPlotBuffer}{0}
+ \multido{\n=\yCoordOrig+\NumDataPlotdy}{\NumDataPlotBuffer}{
+ \yLogSubGrid{\n}
+ }
+}
+
+\newcommand{\plotyGridBoxed}{
+ % plot gridline on right side of the origin
+ \mmultido{\n=\yCoordOrig+\NumDataPlotdy}{\TicksYRight-1}{
+ \plotyGridLine{\n}
+ \yLogSubGrid{\n}
+ }
+ % plot gridline on left side of the origin
+ \multido{\n=\yCoordOrig+\NumDataPlotdy}{\TicksYLeft-1}{
+ \plotyGridLine{\n}
+ }
+ \FPsub{\NumDataPlotBuffer}{\TicksYLeft}{1}
+ \FPround{\NumDataPlotBuffer}{\NumDataPlotBuffer}{0}
+ \multido{\n=\yCoordOrig+\NumDataPlotdy}{\NumDataPlotBuffer}{
+ \yLogSubGrid{\n}
+ }
+}
+
+
+\newcommand{\plotyAxis}[2][]{
+ \setkeys[NumericDataPlot]{putyLabel}{LabelSep}
+ \setkeys*[NumericDataPlot]{putyLabel}{#1}
+ \setrmkeys*[NumericDataPlot]{putyTickLabel}
+ \setrmkeys[NumericDataPlot]{yAxis}
+
+ % plot grid
+ \plotyGrid[#1]
+
+ % plot left axis
+ \ifthenelse{\boolean{PlotLeftAxis}}
+ {
+ \psline{C-C}%
+ (\NumDataPlotxCoordMin,\NumDataPlotyCoordMin)%
+ (\NumDataPlotxCoordMin, \NumDataPlotyCoordMax)
+ \ifNumericDataPlot@yAxis@NoTickLabel
+ \else
+ \plotyTickLabels{ax=left,#1}
+ \fi
+ % plot right axis
+ \ifthenelse{\boolean{PlotRightAxis}}
+ {
+ \psline{C-C}%
+ (\NumDataPlotxCoordMax,\NumDataPlotyCoordMin)%
+ (\NumDataPlotxCoordMax, \NumDataPlotyCoordMax)
+ }{}
+ % --- label ---
+ \ifNumericDataPlot@yAxis@NoLabel
+ \else
+ \PutLabelYaxis[ax=left,#1]{#2}
+ \fi
+ }{
+ \ifthenelse{\boolean{PlotRightAxis}}
+ {
+ \psline{C-C}%
+ (\NumDataPlotxCoordMax,\NumDataPlotyCoordMin)%
+ (\NumDataPlotxCoordMax, \NumDataPlotyCoordMax)
+ \ifNumericDataPlot@yAxis@NoTickLabel
+ \else
+ \plotyTickLabels{ax=right,#1}
+ \fi
+ % --- label ---
+ \ifNumericDataPlot@yAxis@NoLabel
+ \else
+ \PutLabelYaxis[ax=right,#1]{#2}
+ \fi
+ }{}
+ }
+}
+
+
+
+% ==============================================================================
+% ||
+% || environment NumericDataPlot
+% ||
+% ==============================================================================
+
+
+\newenvironment{NumericDataPlot}[3][]{%
+ %
+ \setlength{\OffsetWidth}{+\StdLLX +\StdURX}%
+ \setlength{\OffsetHeight}{+\StdLLY +\StdURY}%
+ % set standard values (they will be reset by setkeys if defined)
+ \psset{llx=-\StdLLX, lly=-\StdLLY, ury=\StdURY, urx=\StdURX}%
+ %
+ \setkeys[NumericDataPlot]{General}{#1}%
+ %
+ \setlength{\CPicWidth}{#2 - \OffsetWidth}%
+ \setlength{\CPicHeight}{#3 - \OffsetHeight}%
+ %%\setlength{\CPicWidth}{#2}
+ % calculate length of the yTicks:
+ % PicCoordWidth (=GxPicMax-GxPicMin) -> PicWidth (=#2)
+ % Length -> 1mm * yTickLength
+ % yTickLength must be negative
+ \setcounter{BufferCounter}{1*\ratio{#2}{1mm}}%
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotGxPicMax}{\NumDataPlotGxPicMin}%
+ \FPdiv{\NumDataPlotBufferI}{\NumDataPlotBuffer}{\theBufferCounter}%
+ \FPmul{\yTickLength}{\NumDataPlotBufferI}{\NumDataPlotGTickLength}%
+ \FPmul{\yTickLength}{\NumDataPlotBufferI}{-1}%
+ % calculate length of the xTicks
+ \setcounter{BufferCounter}{1*\ratio{#3}{1mm}}%
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotGyPicMax}{\NumDataPlotGyPicMin}%
+ \FPdiv{\NumDataPlotBufferI}{\NumDataPlotBuffer}{\theBufferCounter}%
+ \FPmul{\xTickLength}{\NumDataPlotBufferI}{\NumDataPlotGTickLength}%
+ \FPmul{\xTickLength}{\NumDataPlotBufferI}{-1}%
+ %
+ \begin{psgraph}%
+ [fillstyle=solid, fillcolor=gray, xAxis=false, yAxis=false]%
+ (\NumDataPlotGxPicMin, \NumDataPlotGyPicMin)(\NumDataPlotGxPicMin, \NumDataPlotGyPicMin)(\NumDataPlotGxPicMax, \NumDataPlotGyPicMax)%
+ {\CPicWidth}{\CPicHeight}%
+}{%
+ \pstScalePoints(1.0, 1.0){0 add}{0 add}%
+ \end{psgraph}%
+}
+\psset{xunit=1mm, yunit=1mm, xAxisLabel={}, yAxisLabel={}}%
+%
+
+% ==============================================================================
+% ||
+% || legend
+% ||
+% ==============================================================================
+
+\input{NumericPlots_legend}
+
+
+% ============================================================================
+% ||
+% || Definition of styles
+% ||
+% ============================================================================
+
+\input{NumericPlots_styles}
+
+
+
+% ==============================================================================
+% ||
+% || commands...
+% ||
+% ==============================================================================
+
+\input{NumericPlots_macros}
+
+
+
+% ==============================================================================
+% ||
+% || package options ...
+% ||
+% ==============================================================================
+
+\DeclareOptionX{beamer}{
+ \renewcommand{\StdLLY}{1.0cm}%
+ \renewcommand{\StdTickLabelOption}{\footnotesize}%
+ \setlength{\origXLabelSep}{1pt}%
+}
+\DeclareOptionX{xAxisStyle}[Boxed]{%
+ \presetkeys[NumericDataPlot]{xAxis}{AxisStyle=#1}{}%
+}
+\DeclareOptionX{yAxisStyle}[Boxed]{%
+ \presetkeys[NumericDataPlot]{yAxis}{AxisStyle=#1}{}%
+}
+\DeclareOptionX{LabelOption}[{}]{%
+ \renewcommand{\StdLabelOption}{#1}%
+}
+\DeclareOptionX{TickLabelOption}[{}]{%
+ \renewcommand{\StdTickLabelOption}{#1}%
+}
+\ProcessOptionsX
+
+% \ProcessOptions
+
+% ===========================================================================
+% ||
+% || set standard values for keys
+% ||
+% ===========================================================================
+\presetkeys[NumericDataPlot]{Axis}{
+ xMax=100, xMin=0, Dx=10,
+ xCoordMax=\NumDataPlotGxPicMax, xCoordMin=\NumDataPlotGxPicMin,
+ xLog=false,
+ yMax=100, yMin=0, Dy=10,
+ yCoordMax=\NumDataPlotGyPicMax, yCoordMin=\NumDataPlotGyPicMin,
+ yLog=false,
+ yNearlyTight=false
+ }{}
+\presetkeys[NumericDataPlot]{xAxis}{
+ NoGrid=false, NoTicks=false, NoLabel=false, NoTickLabel=false
+}{}
+\presetkeys[NumericDataPlot]{yAxis}{
+ NoGrid=false, NoTicks=false, NoLabel=false, NoTickLabel=false
+}{}
+% if xO/yO are not set they'll be set to xMin/yMin
+\presetkeys[NumericDataPlot]{AxisWait}{%
+ xO=\NumDataPlotxMin, yO=\NumDataPlotyMin,%
+ DDx=\NumDataPlotDx, DDy=\NumDataPlotDy%
+}{}
+
+\presetkeys[NumericDataPlot]{General}{%
+ xPicMin=0, yPicMin=0, xPicMax=1000, yPicMax=1000, TickLength=2}{}%
+
+\presetkeys[NumericDataPlot]{Legend}{%
+ LabelOrientation=l%
+}{}%
+
+
+
+
diff --git a/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_TickLabels.tex b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_TickLabels.tex
new file mode 100644
index 0000000000..8a0d32ab0a
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_TickLabels.tex
@@ -0,0 +1,144 @@
+
+\newlength{\origXTickLabelSep}\setlength{\origXTickLabelSep}{1ex}
+\newlength{\origYTickLabelSep}\setlength{\origYTickLabelSep}{1ex}
+\newlength{\xTickLabelSep}\setlength{\xTickLabelSep}{\origXTickLabelSep}
+\newlength{\yTickLabelSep}\setlength{\yTickLabelSep}{\origYTickLabelSep}
+
+\newcommand{\xTickLabelRefPt}{t}
+\newcommand{\yTickLabelRefPt}{r}
+
+\newcommand{\NumDataPlotxTickBaseline}{0}
+\newcommand{\NumDataPlotxTickDistance}{0}
+\newcommand{\NumDataPlotyTickBaseline}{0}
+\newcommand{\NumDataPlotyTickDistance}{0}
+
+% ------------------------------------------------------------------------------
+% | keys for the put TickLabel commands
+% ------------------------------------------------------------------------------
+
+\define@key[NumericDataPlot]{putxTickLabel}{x}{
+ \FPsub{\NumDataPlotBuffer}{#1}{\NumDataPlotxMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}
+ \FPadd{\NDPputXcoord}{\NumDataPlotBuffer}{\NumDataPlotxCoordMin}
+}
+
+
+\define@key[NumericDataPlot]{putyTickLabel}{y}{
+ \FPsub{\NumDataPlotBuffer}{#1}{\NumDataPlotyMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotyDataCoordRatio}
+ \FPadd{\NDPputYcoord}{\NumDataPlotBuffer}{\NumDataPlotyCoordMin}
+}
+
+\define@key[NumericDataPlot]{putxTickLabel}{TickLabelRefPt}{
+ \renewcommand{\xTickLabelRefPt}{#1}
+}
+
+\define@key[NumericDataPlot]{putyTickLabel}{TickLabelRefPt}{
+ \renewcommand{\yTickLabelRefPt}{#1}
+}
+
+\define@cmdkeys[NumericDataPlot]{putxTickLabel}[NumDataPlotx]{
+ TickLabelOption, TickLabelRot
+}
+\define@cmdkeys[NumericDataPlot]{putyTickLabel}[NumDataPloty]{
+ TickLabelOption, TickLabelRot
+}
+\define@key[NumericDataPlot]{putxTickLabel}{TickLabelSep}[\origXTickLabelSep]{\setlength{\xTickLabelSep}{#1}}
+\define@key[NumericDataPlot]{putyTickLabel}{TickLabelSep}[\origYTickLabelSep]{\setlength{\yTickLabelSep}{#1}}
+
+\define@choicekey+[NumericDataPlot]{putxTickLabel}{ax}[\val\nrPutAxis]
+{lower,upper}{
+ \ifcase\nrPutAxis\relax
+ \renewcommand{\xTickLabelRefPt}{t}
+ \renewcommand{\NumDataPlotxTickBaseline}{\NumDataPlotyCoordMin}
+ \renewcommand{\NumDataPlotxTickDistance}{-1}
+ \or
+ \renewcommand{\xTickLabelRefPt}{b}
+ \renewcommand{\NumDataPlotxTickBaseline}{\NumDataPlotyCoordMax}
+ \renewcommand{\NumDataPlotxTickDistance}{1}
+ \fi
+}{
+ \PackageWarning{NumericPlots}
+ {Axis #1 not defined. Use lower or upper.}
+}
+
+\define@choicekey+[NumericDataPlot]{putyTickLabel}{ax}[\val\nrPutAxis]
+{left,right}{
+ \ifcase\nrPutAxis\relax
+ \renewcommand{\yTickLabelRefPt}{r}
+ \renewcommand{\NumDataPlotyTickBaseline}{\NumDataPlotxCoordMin}
+ \renewcommand{\NumDataPlotyTickDistance}{-1}
+ \or
+ \renewcommand{\yTickLabelRefPt}{l}
+ \renewcommand{\NumDataPlotyTickBaseline}{\NumDataPlotxCoordMax}
+ \renewcommand{\NumDataPlotyTickDistance}{1}
+ \fi
+}{
+ \PackageWarning{NumericPlots}
+ {Axis #1 not defined. Use left or right.}
+}
+
+
+% ------------------------------------------------------------------------------
+% | standard values for the keys for the put TickLabel commands
+% ------------------------------------------------------------------------------
+
+\newcommand{\StdTickLabelOption}{{}}
+
+\presetkeys[NumericDataPlot]{putxTickLabel}{
+ TickLabelOption=\StdTickLabelOption{}, TickLabelRot=0
+}{}
+\presetkeys[NumericDataPlot]{putyTickLabel}{
+ TickLabelOption=\StdTickLabelOption{}, TickLabelRot=0
+}{}
+
+
+
+% ==============================================================================
+% ||
+% || tick labels
+% ||
+% ==============================================================================
+
+
+\newcommand{\PutTickLabelXaxis}[2][]{%
+ \setkeys*[NumericDataPlot]{putxTickLabel}{#1}%
+ %
+ \setcounter{BufferCounter}{10000*\ratio{\xTickLabelSep}{\CPicHeight}}%
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotGyPicMax}{\NumDataPlotGyPicMin}%
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\theBufferCounter}%
+ \FPdiv{\NumDataPlotBuffer}{\NumDataPlotBuffer}{10000}%
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxTickDistance}%
+ \FPadd{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxTickBaseline}%
+ %
+ \rput[\xTickLabelRefPt]{\NumDataPlotxTickLabelRot}%
+ (!\NDPputXcoord\space \NumDataPlotBuffer)%
+ {\makeXTickLabel{#2}}%
+}
+
+
+\newcommand{\makeXTickLabel}[1]{%
+ \testframe{\NumDataPlotxTickLabelOption{}#1}%
+}
+
+\newcommand{\PutTickLabelYaxis}[2][]{%
+ \setkeys*[NumericDataPlot]{putyTickLabel}{#1}%
+ %
+% \FPdiv{\NumDataPlotBufferI}{\getlengthwounit{\yTickLabelSep}}{\getlengthwounit{\CPicWidth}}
+ \setcounter{BufferCounter}{10000*\ratio{\yTickLabelSep}{\CPicWidth}}%
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotGxPicMax}{\NumDataPlotGxPicMin}%
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\theBufferCounter}%
+ \FPdiv{\NumDataPlotBuffer}{\NumDataPlotBuffer}{10000}%
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotyTickDistance}%
+ \FPadd{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotyTickBaseline}%
+ %
+ \rput[\yTickLabelRefPt]{\NumDataPlotyTickLabelRot}%
+ (!\NumDataPlotBuffer\space \NDPputYcoord)%
+ {\makeYTickLabel{#2}}%
+}
+
+\newcommand{\makeYTickLabel}[1]{%
+ \testframe{\NumDataPlotyTickLabelOption{}#1}%
+}
+
+
diff --git a/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_labels.tex b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_labels.tex
new file mode 100644
index 0000000000..f581eaf7e6
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_labels.tex
@@ -0,0 +1,156 @@
+
+\newlength{\origXLabelSep}\setlength{\origXLabelSep}{\baselineskip+1ex}
+\newlength{\origYLabelSep}\setlength{\origYLabelSep}{7ex}
+\newlength{\xLabelSep}\setlength{\xLabelSep}{\origXLabelSep}
+\newlength{\yLabelSep}\setlength{\yLabelSep}{\origYLabelSep}
+
+\newlength{\TempLengthA}
+\setlength{\TempLengthA}{0pt}
+\newlength{\TempLengthB}
+\setlength{\TempLengthB}{0pt}
+
+\newcommand{\NumDataPlotBaseline}{0}
+\newcommand{\NumDataPlotDistance}{1}
+% \newcommand{\xLabelRefPt}{t}
+% \newcommand{\yLabelRefPt}{r}
+% \newcommand{\xLabelRot}{0}
+% \newcommand{\yLabelRot}{90}
+
+
+
+% ------------------------------------------------------------------------------
+% | keys for the put label commands
+% ------------------------------------------------------------------------------
+
+\define@cmdkeys[NumericDataPlot]{putxLabel}[NumDataPlotx]{
+ LabelPos, LabelOption, LabelOrientation, LabelRot, LabelRefPt
+}
+\define@cmdkeys[NumericDataPlot]{putyLabel}[NumDataPloty]{
+ LabelPos, LabelOption, LabelOrientation, LabelRot, LabelRefPt
+}
+
+\define@key[NumericDataPlot]{putxLabel}{LabelSep}[\origXLabelSep]{\setlength{\xLabelSep}{#1}}
+\define@key[NumericDataPlot]{putyLabel}{LabelSep}[\origYLabelSep]{\setlength{\yLabelSep}{#1}}
+
+\define@choicekey+[NumericDataPlot]{putxLabel}{ax}[\val\nrPutAxis]
+{lower,upper}{
+ \ifcase\nrPutAxis\relax
+ \setkeys[NumericDataPlot]{putxLabel}{LabelRot=0, LabelRefPt=t}%
+ \renewcommand{\NumDataPlotBaseline}{\NumDataPlotyCoordMin}
+ \renewcommand{\NumDataPlotDistance}{-1}
+ \or
+ \setkeys[NumericDataPlot]{putxLabel}{LabelRot=0, LabelRefPt=b}%
+ \renewcommand{\NumDataPlotBaseline}{\NumDataPlotyCoordMax}
+ \renewcommand{\NumDataPlotDistance}{1}
+ \fi
+}{
+ \PackageWarning{NumericPlots}
+ {Axis #1 not defined. Use left or right.}
+}
+\define@choicekey+[NumericDataPlot]{putyLabel}{ax}[\val\nrPutAxis]
+{left,right}{
+ \ifcase\nrPutAxis\relax
+ \setkeys[NumericDataPlot]{putyLabel}{LabelRot=90, LabelRefPt=b}%
+ \renewcommand{\NumDataPlotBaseline}{\NumDataPlotxCoordMin}
+ \renewcommand{\NumDataPlotDistance}{-1}
+ \or
+ \setkeys[NumericDataPlot]{putyLabel}{LabelRot=270, LabelRefPt=b}%
+ \renewcommand{\NumDataPlotBaseline}{\NumDataPlotxCoordMax}
+ \renewcommand{\NumDataPlotDistance}{1}
+ \fi
+}{
+ \PackageWarning{NumericPlots}
+ {Axis #1 not defined. Use left or right.}
+}
+
+\newcommand\CheckIfColumntypeDefined[1]{%
+ \providebool{tpl@coltype@#1}
+ \ifcsdef{NC@find@\string#1}%
+ {\setbool{tpl@coltype@#1}{true}}%
+ {\ifcsdef{columntype@\string#1}
+ {\setbool{tpl@coltype@#1}{true}}%
+ {\setbool{tpl@coltype@#1}{false}}%
+ }%
+}
+
+% ------------------------------------------------------------------------------
+% | standard values for the keys
+% ------------------------------------------------------------------------------
+
+
+\newcommand{\StdLabelOption}{{}}
+
+\presetkeys[NumericDataPlot]{putxLabel}{
+ LabelPos=0.5, LabelOption=\StdLabelOption{},LabelOrientation=c
+}{}
+\presetkeys[NumericDataPlot]{putyLabel}{
+ LabelPos=0.5, LabelOption=\StdLabelOption{},LabelOrientation=c
+}{}
+
+
+
+
+% ==============================================================================
+% ||
+% || axis labels
+% ||
+% ==============================================================================
+\newcommand{\PutLabelXaxis}[2][]{
+ \setkeys*[NumericDataPlot]{putxLabel}{#1}%
+ %
+ \setcounter{BufferCounter}{10000*\ratio{\xLabelSep}{\CPicHeight}}%
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotGyPicMax}{\NumDataPlotGyPicMin}%
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\theBufferCounter}%
+ \FPdiv{\NumDataPlotBuffer}{\NumDataPlotBuffer}{10000}%
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotDistance}%
+ \FPadd{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotBaseline}%
+ %
+ \rput[\NumDataPlotxLabelRefPt]%
+ {\NumDataPlotxLabelRot}%
+ (!\NumDataPlotxCoordRange\space \NumDataPlotxLabelPos\space mul %
+ \NumDataPlotxCoordMin\space add \NumDataPlotBuffer\space){%
+ \makeXLabel{#2}%
+ }%
+}
+
+\newcommand{\makeXLabel}[1]{%
+ \NumDataPlotxLabelOption{}%
+ \testframe{%
+ \setlength{\tabcolsep}{0pt}%
+ \expandafter\tabular\NumDataPlotxLabelOrientation{}%
+ #1%
+ \endtabular%
+ }%
+}
+
+
+\newcommand{\PutLabelYaxis}[2][]{%
+ \setkeys*[NumericDataPlot]{putyLabel}{#1}%
+ %
+ \setcounter{BufferCounter}{10000*\ratio{\yLabelSep}{\CPicWidth}}%
+ \FPsub{\NumDataPlotBuffer}{\NumDataPlotGxPicMax}{\NumDataPlotGxPicMin}%
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\theBufferCounter}%
+ \FPdiv{\NumDataPlotBuffer}{\NumDataPlotBuffer}{10000}%
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotDistance}%
+ \FPadd{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotBaseline}%
+ %
+ \rput[\NumDataPlotyLabelRefPt]%
+ {\NumDataPlotyLabelRot}%
+ (!\NumDataPlotBuffer\space %
+ \NumDataPlotyCoordRange\space \NumDataPlotyLabelPos\space mul %
+ \NumDataPlotyCoordMin\space add){%
+ \makeYLabel{#2}%
+ }%
+}
+
+\newcommand{\makeYLabel}[1]{%
+ \NumDataPlotyLabelOption{}%
+ \testframe{%
+ \setlength{\tabcolsep}{0pt}%
+ \expandafter\tabular\NumDataPlotyLabelOrientation{}%
+ #1%
+ \endtabular%
+ }%
+}
+
+
diff --git a/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_legend.tex b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_legend.tex
new file mode 100644
index 0000000000..5e3aaeb393
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_legend.tex
@@ -0,0 +1,112 @@
+
+% ----------------------------------------------------------------------------
+% | keys for the legend
+% ----------------------------------------------------------------------------
+
+\define@key[NumericDataPlot]{Legend}{nrCols}[1]{\renewcommand{\nrLegendCols}{#1}}%
+\define@key[NumericDataPlot]{Legend}{LegLineWidth}[20pt]{\setlength{\LegLineWidth}{#1}}%
+
+\define@choicekey+[NumericDataPlot]{Legend}{LabelOrientation}[\val\nrLegOrient]
+{r,l,c}{%
+ \ifcase\nrLegOrient\relax%
+ \setboolean{LegendOrientationLeft}{false}%
+ \setboolean{LegendOrientationRight}{true}%
+ \setboolean{LegendOrientationCenter}{false}%
+ \or%
+ \setboolean{LegendOrientationLeft}{true}%
+ \setboolean{LegendOrientationRight}{false}%
+ \setboolean{LegendOrientationCenter}{false}%
+ \or%
+ \setboolean{LegendOrientationLeft}{false}%
+ \setboolean{LegendOrientationRight}{false}%
+ \setboolean{LegendOrientationCenter}{true}%
+ \fi%
+}{
+ \PackageWarning{NumericPlots}{LabelOrientation #1 not defined. Use r, l or c}%
+}
+
+
+% ==============================================================================
+% ||
+% || legend
+% ||
+% ==============================================================================
+
+
+\newcommand{\LegLineOld}[2][]{%
+ \setkeys[NumericDataPlot]{Legend}{#1}
+ %
+ \centering\Rnode{lab#2}{}%
+ \psline[style=#2,showpoints=false]([nodesep=0.5\LegLineWidth]lab#2)([nodesep=-0.5\LegLineWidth]lab#2)%
+ \psline[style=#2](lab#2)(lab#2)%
+}
+
+% \newcommand{\LegLine}[2][]{%
+% \setkeys[NumericDataPlot]{Legend}{#1}
+% %
+% \centering\Rnode{LegLineNode}{}%
+% \psline[#2,showpoints=false]([nodesep=0.5\LegLineWidth]LegLineNode)([nodesep=-0.5\LegLineWidth]LegLineNode)%
+% \psline[#2, linestyle=none](LegLineNode)(LegLineNode)
+% }
+%
+%
+% \newcommand{\LegendDefinition}[2][nrCols]{%
+% \setkeys[NumericDataPlot]{Legend}{#1}%
+% %
+% \psframebox[style=LegendBoxStyle]{%
+% \ifLegendOrientationLeft
+% \begin{tabular}{*{\nrLegendCols}{p{\LegLineWidth}l}}%
+% #2%
+% \end{tabular}%
+% \fi
+% \ifLegendOrientationCenter
+% \begin{tabular}{*{\nrLegendCols}{p{\LegLineWidth}c}}
+% #2
+% \end{tabular}
+% \fi
+% \ifLegendOrientationRight
+% \begin{tabular}{*{\nrLegendCols}{p{\LegLineWidth}r}}
+% #2
+% \end{tabular}
+% \fi
+% }%psframebox
+% }
+
+\newcommand{\LegLine}[2][]{%
+ \setkeys[NumericDataPlot]{Legend}{#1}%
+ \parbox[t]{\LegLineWidth}{%
+ \centering\Rnode{LegLineNode}{}%
+ \psline[#2,showpoints=false]([nodesep=0.5\LegLineWidth]LegLineNode)([nodesep=-0.5\LegLineWidth]LegLineNode)%
+ \psline[#2,linestyle=none](LegLineNode)(LegLineNode)%
+ }
+}
+
+\newcommand{\LegDot}[2][]{%
+ \setkeys[NumericDataPlot]{Legend}{#1}%
+ \parbox[t]{\LegLineWidth}{%
+ \centering\Rnode{LegLineNode}{}%
+ \psdots[#2](LegLineNode)%
+ }
+}
+
+\newcommand{\LegendDefinition}[2][nrCols]{%
+ \setkeys[NumericDataPlot]{Legend}{#1}%
+ %
+ \psframebox[style=LegendBoxStyle]{%
+ \ifLegendOrientationLeft%
+ \begin{tabular}{*{\nrLegendCols}{ll}}%
+ #2%
+ \end{tabular}%
+ \fi
+ \ifLegendOrientationCenter
+ \begin{tabular}{*{\nrLegendCols}{cc}}
+ #2
+ \end{tabular}
+ \fi
+ \ifLegendOrientationRight
+ \begin{tabular}{*{\nrLegendCols}{cr}}
+ #2
+ \end{tabular}
+ \fi
+ }%psframebox
+}
diff --git a/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_macros.tex b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_macros.tex
new file mode 100644
index 0000000000..4bb33d1c93
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_macros.tex
@@ -0,0 +1,155 @@
+% ==============================================================================
+% ||
+% || commands...
+% ||
+% ==============================================================================
+
+\newcommand{\NDPput}[2][]{
+ \setkeys[NumericDataPlot]{put}{RefPoint=c}
+ \setkeys[NumericDataPlot]{put}{Rot=0}
+ \setkeys[NumericDataPlot]{put}{#1}
+ \rput[\NDPRefPoint]{\NDPputRotation}(\NDPputXcoord, \NDPputYcoord){#2}
+}
+
+
+\newcommand{\NDPhline}[2][]{
+%
+ \FPsub{\NumDataPlotBuffer}{#2}{\NumDataPlotyMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotyDataCoordRatio}
+ \FPadd{\NDPputYcoord}{\NumDataPlotBuffer}{\NumDataPlotyCoordMin}
+
+ \psline[#1](\NumDataPlotxCoordMin, \NDPputYcoord)
+ (\NumDataPlotxCoordMax, \NDPputYcoord)
+}
+
+\newcommand{\NDPvline}[2][]{
+%
+ \FPsub{\NumDataPlotBuffer}{#2}{\NumDataPlotxMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}
+ \FPadd{\NDPputXcoord}{\NumDataPlotBuffer}{\NumDataPlotxCoordMin}
+%
+ \psline[#1](\NDPputXcoord, \NumDataPlotyCoordMin)
+ (\NDPputXcoord, \NumDataPlotyCoordMax)
+}
+
+\newcommand{\NDPline}[5][]{
+%
+ \FPsub{\NumDataPlotBuffer}{#2}{\NumDataPlotxMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}
+ \FPadd{\NDPputXcoordOne}{\NumDataPlotBuffer}{\NumDataPlotxCoordMin}
+
+ \FPsub{\NumDataPlotBuffer}{#2}{\NumDataPlotxMin}
+ \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}
+ \FPadd{\NDPputXcoordOne}{\NumDataPlotBuffer}{\NumDataPlotxCoordMin}
+
+
+ \psline[#1]
+ (!#2 \NumDataPlotxMin\space sub \NumDataPlotxDataCoordRatio\space mul
+ \NumDataPlotxCoordMin\space add
+ #3 \NumDataPlotyMin\space sub \NumDataPlotyDataCoordRatio\space mul
+ \NumDataPlotyCoordMin\space add)
+ (!#4 \NumDataPlotxMin\space sub \NumDataPlotxDataCoordRatio\space mul
+ \NumDataPlotxCoordMin\space add
+ #5 \NumDataPlotyMin\space sub \NumDataPlotyDataCoordRatio\space mul
+ \NumDataPlotyCoordMin\space add)
+}
+
+\newcommand{\NDPvbox}[3][]{
+
+ \psframe[#1]
+ (!#2 \NumDataPlotxMin\space sub \NumDataPlotxDataCoordRatio\space mul \NumDataPlotxCoordMin\space add
+ \NumDataPlotyCoordMin)
+ (!#3 \NumDataPlotxMin\space sub \NumDataPlotxDataCoordRatio\space mul \NumDataPlotxCoordMin\space add
+ \NumDataPlotyCoordMax)
+}
+
+\newcommand{\NDPhbox}[3][]{
+
+ \psframe[#1]
+ (!\NumDataPlotxCoordMin \space
+ #2 \NumDataPlotyMin\space sub \NumDataPlotyDataCoordRatio\space mul \NumDataPlotyCoordMin\space add)
+ (!\NumDataPlotxCoordMax \space
+ #3 \NumDataPlotyMin\space sub \NumDataPlotyDataCoordRatio\space mul \NumDataPlotyCoordMin\space add)
+}
+
+\newcommand{\NDPbox}[5][]{
+% \FPsub{\NumDataPlotBuffer}{#2}{\NumDataPlotxMin}
+% \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}
+% \FPadd{\NDPputXcoordOne}{\NumDataPlotBuffer}{\NumDataPlotxCoordMin}
+%
+% \FPsub{\NumDataPlotBuffer}{#2}{\NumDataPlotxMin}
+% \FPmul{\NumDataPlotBuffer}{\NumDataPlotBuffer}{\NumDataPlotxDataCoordRatio}
+% \FPadd{\NDPputXcoordOne}{\NumDataPlotBuffer}{\NumDataPlotxCoordMin}
+%
+%
+ \psframe[#1]
+ (!#2 \NumDataPlotxMin\space sub \NumDataPlotxDataCoordRatio\space mul
+ \NumDataPlotxCoordMin\space add
+ #3 \NumDataPlotyMin\space sub \NumDataPlotyDataCoordRatio\space mul
+ \NumDataPlotyCoordMin\space add)
+ (!#4 \NumDataPlotxMin\space sub \NumDataPlotxDataCoordRatio\space mul
+ \NumDataPlotxCoordMin\space add
+ #5 \NumDataPlotyMin\space sub \NumDataPlotyDataCoordRatio\space mul
+ \NumDataPlotyCoordMin\space add)
+}
+
+% ============================================================================
+% ||
+% || plotting commands
+% ||
+% ============================================================================
+
+% if data is exported with options.NaNsplit=true it may be plotted with
+% \multilistplot{style=xx}{DataIDENT}
+% First argument of the function is passed to listplot.
+% Second argument must be the Identifier of the Data that should be plotted.
+\newcommand{\multilistplot}[2]{
+ \multido{\iA=1+1}{\csname #2NrRanges\endcsname}{
+ \listplot[#1]{\csname #2\iA\endcsname}%
+ }
+}
+
+
+% ===========================================================================
+% ||
+% || commands to put something at a location of the plot
+% ||
+% ===========================================================================
+
+% put in the NorthWest corner of the plot
+\newcommand{\putNW}[1]{
+\rput[lt]{0}(\NumDataPlotxCoordMin, \NumDataPlotyCoordMax){#1}}
+% put in the SouthWest corner of the plot
+\newcommand{\putSW}[1]{
+\rput[lb]{0}(\NumDataPlotxCoordMin, \NumDataPlotyCoordMin){#1}}
+% put in the NorthEast corner of the plot
+\newcommand{\putNE}[1]{
+\rput[rt]{0}(\NumDataPlotxCoordMax, \NumDataPlotyCoordMax){#1}}
+% put in the SouthEast corner of the plot
+\newcommand{\putSE}[1]{
+\rput[rb]{0}(\NumDataPlotxCoordMax, \NumDataPlotyCoordMin){#1}}
+% put in the South of the plot
+\newcommand{\putS}[1]{
+\rput[b]{0}(!\NumDataPlotxCoordMax\space\NumDataPlotxCoordMin\space sub 2 div
+\NumDataPlotxCoordMin\space add \NumDataPlotyCoordMin){#1}}
+% put in the North of the plot
+\newcommand{\putN}[1]{
+\rput[t]{0}(!\NumDataPlotxCoordMax\space\NumDataPlotxCoordMin\space sub 2 div
+\NumDataPlotxCoordMin\space add \NumDataPlotyCoordMax){#1}}
+% put in the West of the plot
+\newcommand{\putW}[1]{
+\rput[l]{0}(!\NumDataPlotxCoordMin\space
+\NumDataPlotyCoordMax\space\NumDataPlotyCoordMin\space sub 2 div \NumDataPlotyCoordMin\space add){#1}}
+% put in the East of the plot
+\newcommand{\putE}[1]{
+\rput[r]{0}(!\NumDataPlotxCoordMax\space
+\NumDataPlotyCoordMax\space\NumDataPlotyCoordMin\space sub 2 div \NumDataPlotyCoordMin\space add){#1}}
+% put exponent at y-axis
+\newcommand{\putExpY}[1]{
+\rput[lb]{0}(\NumDataPlotxCoordMin, \NumDataPlotyCoordMax){#1}
+}
+% put exponent at x-axis
+\newcommand{\putExpX}[1]{
+\rput[lb]{0}(\NumDataPlotxCoordMax, \NumDataPlotyCoordMin){#1}
+}
+
diff --git a/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_styles.tex b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_styles.tex
new file mode 100644
index 0000000000..79b322cde4
--- /dev/null
+++ b/graphics/pstricks/contrib/numericplots/tex/latex/NumericPlots_styles.tex
@@ -0,0 +1,70 @@
+
+% ============================================================================
+% ||
+% || Definition of styles
+% ||
+% ============================================================================
+
+\newpsstyle{GridSt}{linecolor=gray, linestyle=dotted, linewidth=0.75pt}
+\newpsstyle{TickSt}{linecolor=black, linestyle=solid, linewidth=0.5pt}
+
+
+\definecolor{LineColorA}{cmyk}{0.6 0.21 0.0 0.2} %blue
+\definecolor{LineColorB}{cmyk}{0.7 0.1 1 0.2} %green
+\definecolor{LineColorC}{cmyk}{0 1 1 0.2} %red
+\definecolor{LineColorD}{cmyk}{0 0.7 1 0.1} % orange
+\definecolor{LineColorE}{cmyk}{0.5 1 0 0.1} % purple
+\definecolor{LineColorF}{cmyk}{0 1 0 0.2} % magenta
+\definecolor{LineColorG}{cmyk}{0 0.25 1 0.1} % yellow
+\definecolor{LineColorH}{cmyk}{0.81 0.1 1 0.7} % grass green
+
+\definecolor{LineColorX}{cmyk}{0.3 0.2 0.0 0.1} %blue
+\definecolor{LineColorY}{cmyk}{0 1 1 0.2} %red
+
+\newpsstyle{StdLineStyA}{linecolor=LineColorA, fillcolor=LineColorA, linejoin=1}
+\newpsstyle{StdLineStyB}{linecolor=LineColorB, fillcolor=LineColorB, linejoin=1}
+\newpsstyle{StdLineStyC}{linecolor=LineColorC, fillcolor=LineColorC, linejoin=1}
+\newpsstyle{StdLineStyD}{linecolor=LineColorD, fillcolor=LineColorD, linejoin=1}
+\newpsstyle{StdLineStyE}{linecolor=LineColorE, fillcolor=LineColorE, linejoin=1}
+\newpsstyle{StdLineStyF}{linecolor=LineColorF, fillcolor=LineColorF, linejoin=1}
+\newpsstyle{StdLineStyG}{linecolor=LineColorG, fillcolor=LineColorG, linejoin=1}
+\newpsstyle{StdLineStyH}{linecolor=LineColorH, fillcolor=LineColorH, linejoin=1}
+
+\newpsstyle{StdLineStyX}{linecolor=LineColorX, linestyle=solid,
+ linewidth=2pt, linejoin=1}
+\newpsstyle{StdLineStyY}{linecolor=LineColorY, linestyle=dashed,
+ dash=4pt 3pt 1pt 3pt, linejoin=1}
+\newpsstyle{BWStdLineStyX}{linecolor=lightgray, linestyle=solid,
+ linewidth=2pt, linejoin=1}
+\newpsstyle{BWStdLineStyY}{linecolor=black, linestyle=dashed,
+ dash=4pt 3pt 1pt 3pt, linejoin=1}
+
+\newpsstyle{BWStdLineStyA}
+ {linecolor=lightgray,linestyle=solid,linewidth = 1.5pt, linejoin=1}
+\newpsstyle{BWStdLineStyB}
+ {linecolor=gray,linestyle=solid,linewidth = 1.0pt, linejoin=1}
+\newpsstyle{BWStdLineStyC}
+ {linecolor=black,linestyle=solid,linewidth = 0.75pt, linejoin=1}
+\newpsstyle{BWStdLineStyD}
+ {linecolor=black,linestyle=dashed, dash = 3pt 2pt,linewidth = 0.75pt,
+ linejoin=1}
+\newpsstyle{BWStdLineStyE}
+ {linecolor=gray,linestyle=dashed,dash = 3pt 2pt,linewidth = 1.0pt, linejoin=1}
+\newpsstyle{BWStdLineStyF}
+ {linecolor=black,linestyle=dotted, dotsep =2pt,linewidth = 1.5pt, linejoin=1}
+\newpsstyle{BWStdLineStyG}
+ {linecolor=gray,linestyle=dotted, dotsep =2pt,linewidth = 1.5pt, linejoin=1}
+
+\newpsstyle{LegendBoxStyle}
+ {fillcolor=white, fillstyle=solid}
+
+\DeclareOptionX{BW}{
+ \addtopsstyle{StdLineStyA}{style=BWStdLineStyA}
+ \addtopsstyle{StdLineStyB}{style=BWStdLineStyB}
+ \addtopsstyle{StdLineStyC}{style=BWStdLineStyC}
+ \addtopsstyle{StdLineStyD}{style=BWStdLineStyD}
+ \addtopsstyle{StdLineStyE}{style=BWStdLineStyE}
+ \addtopsstyle{StdLineStyF}{style=BWStdLineStyF}
+ \addtopsstyle{StdLineStyG}{style=BWStdLineStyG}
+}
+