summaryrefslogtreecommitdiff
path: root/macros/inrstex/inrsinputs
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 /macros/inrstex/inrsinputs
Initial commit
Diffstat (limited to 'macros/inrstex/inrsinputs')
-rw-r--r--macros/inrstex/inrsinputs/UQlogo.epsf19
-rw-r--r--macros/inrstex/inrsinputs/bilingue.tex46
-rw-r--r--macros/inrstex/inrsinputs/booksty.tex37
-rw-r--r--macros/inrstex/inrsinputs/centerh.tex10
-rw-r--r--macros/inrstex/inrsinputs/cm_11.tex65
-rw-r--r--macros/inrstex/inrsinputs/dvialw.ps310
-rw-r--r--macros/inrstex/inrsinputs/enfrtwo.tex106
-rw-r--r--macros/inrstex/inrsinputs/english.tex17
-rw-r--r--macros/inrstex/inrsinputs/francais.tex17
-rw-r--r--macros/inrstex/inrsinputs/helphdr.tex306
-rw-r--r--macros/inrstex/inrsinputs/ieeelogo.ps685
-rw-r--r--macros/inrstex/inrsinputs/inrslogo.tex58
-rw-r--r--macros/inrstex/inrsinputs/inrssl.tex147
-rw-r--r--macros/inrstex/inrsinputs/inrssty.tex30
-rw-r--r--macros/inrstex/inrsinputs/inrstemp.tex11
-rw-r--r--macros/inrstex/inrsinputs/oldspace.tex2
-rw-r--r--macros/inrstex/inrsinputs/papersty.tex19
-rw-r--r--macros/inrstex/inrsinputs/spfont.tex79
-rw-r--r--macros/inrstex/inrsinputs/texgraph.tex859
-rw-r--r--macros/inrstex/inrsinputs/verbatim.tex40
20 files changed, 2863 insertions, 0 deletions
diff --git a/macros/inrstex/inrsinputs/UQlogo.epsf b/macros/inrstex/inrsinputs/UQlogo.epsf
new file mode 100644
index 0000000000..59f2cfdc5a
--- /dev/null
+++ b/macros/inrstex/inrsinputs/UQlogo.epsf
@@ -0,0 +1,19 @@
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: University of Quebec logo
+%%CreationDate: 1990/11/28
+%%For: P. Kabal
+%%Pages: 1
+%%BoundingBox: 144 120.96 174.24 144
+%%EndComments
+144 144 translate 0.24 -0.24 scale
+0 setlinewidth
+1 setlinecap 0 setlinejoin
+16 0 moveto 50 0 lineto 34 64 lineto 0 64 lineto 16 0 lineto
+0 setgray fill
+newpath
+54 0 moveto 88 0 lineto 72 64 lineto 38 64 lineto 54 0 lineto
+0 setgray fill
+newpath
+92 0 moveto 126 0 lineto 102 96 lineto 68 96 lineto 92 0 lineto
+0 setgray fill
+showpage
diff --git a/macros/inrstex/inrsinputs/bilingue.tex b/macros/inrstex/inrsinputs/bilingue.tex
new file mode 100644
index 0000000000..09049a1291
--- /dev/null
+++ b/macros/inrstex/inrsinputs/bilingue.tex
@@ -0,0 +1,46 @@
+%-*-tex-*-
+%
+% Definitions des mois
+%
+\def \janvier{janvier}
+\def \fevrier{f\'evrier}
+\def \mars{mars}
+\def \avril{avril}
+\def \mai{mai}
+\def \juin{juin}
+\def \juillet{juillet}
+\def \aout{ao\^ut}
+\def \septembre{septembre}
+\def \octobre{octobre}
+\def \novembre{novembre}
+\def \decembre{d\'ecembre}
+%
+% Autres definitions
+%
+\def \aparaitre{A para\^\i tre}
+\def \tableau{Tableau}
+\def \tabmat{Table des mati\`eres}
+\def \annexe{Annexe}
+%
+%
+% En anglais
+%
+%
+\def \janvier{January}
+\def \fevrier{February}
+\def \mars{March}
+\def \avril{April}
+\def \mai{May}
+\def \juin{June}
+\def \juillet{July}
+\def \aout{August}
+\def \septembre{September}
+\def \octobre{October}
+\def \novembre{November}
+\def \decembre{December}
+%
+%
+\def \aparaitre{To appear}
+\def \tableau{Table}
+\def \tabmat{Table of contents}
+\def \annexe{Appendix} \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/booksty.tex b/macros/inrstex/inrsinputs/booksty.tex
new file mode 100644
index 0000000000..419206c727
--- /dev/null
+++ b/macros/inrstex/inrsinputs/booksty.tex
@@ -0,0 +1,37 @@
+%------------ BOOKSTYLE ---------------
+% see english.tex and francais.tex for messages
+% \def\bookstylemessage{ <<< BOOK STYLE >>> } see English/French titles
+\def\bookstyle{ \message {\bookstylemessage }
+ \documentstyle{\numberbychapter
+ \vheadersize = 1cm
+ \vfootersize = 2cm %this is set but not used can be
+ \vpapersize=23cm
+ \vouterpagesize=20cm
+ \hpapersize =8.5in
+ \houterpagesize=12cm
+ \leftmarginsize = 4.8cm
+ \topmarginsize = 3cm
+ \chaptername = {}
+ \def\chapterstartform{\ifodd\pageno\relax\else
+ \line{}\ejectpage\fi\titlepagestyle}
+ \let\headermark=\topmark
+ \def\headermark##1{\global\let\headermark = ##1}
+ \headertext{\ifodd\pageno\rightheadertext
+ \else\leftheadertext\fi}
+ \let\specialheadertext=\headertext
+ \def\rightheadertext{\line{\hss
+ \headermark\rlap{\ssheadfont\qquad\folio}}}
+ \def\leftheadertext{\line{\llap{\ssheadfont\folio
+ \qquad}\the\chaptername\hss}}
+ \footertext{} \specialfootertext={}
+ \normalheaderstyle
+ \blankfooterstyle
+ \everyprelude = {
+ \def\leftheadertext{\line{\llap{\folio\qquad}\firstmark}}
+ \def\rightheadertext{\line{\firstmark\rlap{\qquad\folio}}}
+ \specialheadertext{\ifodd\pageno
+ \line{\hss\rlap{\qquad\folio}}
+ \else\line{\llap{\folio\qquad}\hss}\fi}}
+ }}
+
+\bookstyle \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/centerh.tex b/macros/inrstex/inrsinputs/centerh.tex
new file mode 100644
index 0000000000..bcff383128
--- /dev/null
+++ b/macros/inrstex/inrsinputs/centerh.tex
@@ -0,0 +1,10 @@
+% ============ modified to center heads /subheads .... ======
+%the parameters must be as shown and will have that meaning
+% #1 font (=#3); #2 number (=#4) ; #3 <text> (=#5); #4 number/text sep (=#7)
+% check on \t@agtext suppresses space when there is no number
+\catcode`\@=11
+\def\gensheadformat#1#2#3#4{\ifx\t@agtext\empty\setbox0=\hbox{}\else
+ \setbox0=\hbox{#1#2#4}\fi
+ \vbox{\paragraphcenterline \normalbaselines
+ #1\box0 #3}}
+\catcode`\@=12 \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/cm_11.tex b/macros/inrstex/inrsinputs/cm_11.tex
new file mode 100644
index 0000000000..0eb500afb4
--- /dev/null
+++ b/macros/inrstex/inrsinputs/cm_11.tex
@@ -0,0 +1,65 @@
+\catcode`@=11
+% ======= elevenpoint fonts not in plain.tex =======
+\font\eleventex=cmtex10 scaled 1095
+\font\elevenssb = cmssbx10 scaled 1095 % no ss bold
+\font\elevencsc = cmcsc10 scaled 1095 % caps and small caps
+\font\elevenbfx = cmbx10 scaled 1095 % bold wide
+\font\elevenbfy = cmbsy10 scaled 1095 %bold math symbols?
+
+% ===== elevenpoint fonts
+\font\elevenrm= cmr10 scaled 1095
+\font\elevenrmsca = cmr10 scaled 1095
+\font\elevenbf = cmb10 scaled 1095
+\font\elevenbfxsca = cmbx10 scaled 1095
+\font\elevenss = cmss10 scaled 1095
+\font\elevenit = cmti10 scaled 1095
+\font\eleveni = cmmi10 scaled 1095
+\font\elevensl = cmsl10 scaled 1095
+\font\elevensy = cmsy10 scaled 1095
+\font\eleventt = cmtt10 scaled 1095
+\font\elevensc = cmcsc10 scaled 1095
+\let\sanss = \elevenss
+
+\let\elevenex=\tenex
+
+
+\def\elevenpoint{\def\pointsize{eleven}%
+ \def\rm{\fam0\elevenrm}%
+ \textfont0=\elevenrm \scriptfont0=\eightrm \scriptscriptfont0=\sixrm
+ \textfont1=\eleveni \scriptfont1=\eighti \scriptscriptfont1=\sixi
+ \textfont2=\elevensy \scriptfont2=\eightsy \scriptscriptfont2=\sixsy
+ \textfont3=\elevenex \scriptfont3=\elevenex \scriptscriptfont3=\elevenex
+ \def\it{\fam\itfam\elevenit}%
+ \textfont\itfam=\elevenit
+ \def\sl{\fam\slfam\elevensl}%
+ \textfont\slfam=\elevensl
+ \def\bf{\fam\bffam\elevenbf}%
+ \textfont\bffam=\elevenbf \scriptfont\bffam=\eightbfx
+ \scriptscriptfont\bffam=\sixbfx
+ \def\tt{\fam\ttfam\eleventt}%
+ \textfont\ttfam=\eleventt \scriptfont\ttfam=\tentt
+ \tt \ttglue=.5em plus .25em minus .15em
+ \normalbaselines\rm % now so resets are ok.
+ \setstrut
+ \ifd@ocsty \def\documentpointsize{eleven}%
+ \let\footerfont=\elevenit
+ \let\headerfont=\elevenit
+ \let\footnotefont = \ninepoint
+ \let\smallerfont = \ninepoint
+ \let\cheadfont = \eighteenrmsca
+ \let\sheadfont=\fourteenbfxsca
+ \let\ssheadfont=\elevenbfxsca
+ \let\sssheadfont=\elevenbfxsca
+ \let\dsssheadfont=\elevenbfxsca
+ \let\captionnumfont=\elevenbfxsca
+ \let\captiontitlefont=\relax
+ \let\captionbodyfont=\relax
+ \let\eqnumfont=\rm
+ \setspacings\fi
+ \let\bigfont = \twelvermsca
+ \let\biggfont = \fourteenrmsca
+ \let\bigggfont = \eighteenrmsca
+ \let\titlefont = \bigggfont
+ \let\sc=\ninerm
+ }
+\catcode`@=12 \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/dvialw.ps b/macros/inrstex/inrsinputs/dvialw.ps
new file mode 100644
index 0000000000..5cab336e35
--- /dev/null
+++ b/macros/inrstex/inrsinputs/dvialw.ps
@@ -0,0 +1,310 @@
+% removed mote test (mjf)
+% <BEEBE.TEX.DVI>DVIALW.PS.17, 18-Sep-87 17:48:04, Edit by BEEBE
+% Add test for note paper and if unknown, use letter paper instead.
+% Non-Apple PostScript implementations do not know about note paper
+% but its use on the Apple LaserWriter gains 92K of virtual memory
+% <BEEBE.TEX.DVI>DVIALW.PS.16, 18-Sep-87 15:50:52, Edit by BEEBE
+% Modify coordinate computations to remove round-off errors
+% in landscape mode, and correct landscape page origin
+% <BEEBE.TEX.DVI>DVIALW.PS.14, 22-Jun-87 09:55:05, Edit by BEEBE
+% Add missing "0 900 translate Mtrx currentmatrix pop" to /LEGAL
+% <BEEBE.TEX.DVI>DVIALW.PS.13, 7-Jan-87 17:38:51, Edit by BEEBE
+% Add translate command to BOP so that (0,0) really corresponds to
+% the top left physical page corner. The standard LaTeX file
+% TESTPAGE.TEX can be used for this calibration; it might be sensitive
+% to the particular printer used.
+% <BEEBE.TEX.DVI.NEW>DVIALW.PS.12, 10-Dec-86 17:24:50, Edit by BEEBE
+% Fix off-by-one error in definition of /B; to draw a box N pixels
+% wide, microscopic examination of output shows that the box width
+% must be N-1, not N, pixels; the boundary counts in the filling.
+% <BEEBE.TEX.DVI.NEW>DVIALW.PS.9, 28-Nov-86 19:00:52, Edit by BEEBE
+% Change definition of EOP to use #copies and showpage
+% instead of {copypage} repeat erasepage
+% <BEEBE.TEX.DVI.NEW>DVIALW.PS.7, 16-Oct-86 13:09:36, Edit by BEEBE
+% Following Macintosh LaserWriter md dictionary, change most
+% def's to bdf's (bind def); this is claimed to speed up
+% operator access
+% <BEEBE.TEX.DVI.NEW>DVIALW.PS.5, 16-Oct-86 12:01:12, Edit by BEEBE
+% Change CTL-L to caret-L in comment
+% <BEEBE.TEX.DVI.NEW>DVIALW.PS.3, 13-Jun-86 10:48:39, Edit by BEEBE
+% Fix definition of NOTE, make it default in BOJ macro to try to reduce
+% incidence of VM errors
+% ----------------------------------------------------------------------
+% DVIALW PostScript macro definitions (keep in alphabetical order). For
+% readability, these are heavily commented, but we adhere to the
+% convention that percent is used ONLY to mark the beginning of a
+% comment (NEVER occurs inside a PostScript string), and lines are
+% limited to 80 characters. That way, DVIALW can read these definitions
+% from a file and discard comments and trailing white space before
+% transmission to the PostScript output file. In the interests of
+% compactness, macros which receive any significant degree of use are
+% given single letter names -- PostScript is already much too verbose.
+%
+% Coordinates are assumed to be in pixels (Resolution per inch). The
+% page origin follows the PostScript convention of being in the lower
+% left corner, y positive upwards along the longer side of the page, x
+% positive to the right. Letter and legal sizes are therefore
+% equivalent as far as PostScript is concerned, but y coordinates can be
+% bigger in legal size. In landscape mode, the page is rotated to place
+% the origin in the upper left corner, x positive downward along the
+% longer side of the page, y positive to the right. That way, pages
+% eject from the printer upright when viewed from the front of the
+% printer.
+%
+% Document format is something like this:
+%
+% %!PS-Adobe-1.0
+% %%Dimensions: 0 0 612 792
+% %%Title: DVIALW -o1 -s300 foo12
+% %%CreationDate: Sat Mar 8 10:52:52 1986
+% %%Creator: BEEBE and [TeX82 DVI Translator Version 2.03b...]
+% %%Pages: (atend)
+% %%BugHistory: Incorporates save/restore and font reloading...
+% %%BugHistory: Incorporates Allan Hetzel's 31-Oct-85 DARPA...
+% %%EndComments
+% %%EndProlog
+% %%Page: 0 1
+% TeXdict begin
+% BOJ
+% BOP
+% ...
+% 1 EOP
+% ^LBOP
+% ...
+% 1 EOP
+% ^LBOP
+% ...
+% 1 EOP
+% ^LEOJ
+% %%Trailer
+% %%Pages: 7
+% %%PageTable: 0 1 3434
+% ^D
+%
+% One formfeed is output for each printed page copy, in order to make
+% spooler page accounting simple. The additional comments wrapping the
+% BOJ .. EOJ sequence conform to Adobe PostScript file structuring
+% conventions, and the first line can be used by the spooler to identify
+% the file as containing PostScript.
+% ----------------------------------------------------------------------
+
+
+/TeXdict 200 dict def % dictionary for these definitions
+TeXdict begin
+
+% bdf -- bind def (for efficiency)
+% Usage -- just like def, but not on constant objects
+/bdf {bind def} def
+
+% B -- draw bar (TeX rule) of size w by h at currentpoint
+% Usage -- w h B
+/B
+{
+ /h exch def
+ /w exch def
+ gsave
+ currentpoint
+ newpath
+ moveto
+ w 1 sub 0 rlineto
+ 0 h 1 sub rlineto
+ w 1 sub neg 0 rlineto
+ closepath fill
+ grestore
+} bdf
+
+% BOJ -- beginning of job (EOF ends it and closes TeXdict)
+% Usage -- BOJ
+/BOJ
+{
+ 72 Resolution div 72 Resolution div scale
+ userdict /note known
+ {LETTER} % MJF mod
+ {LETTER} % default page format for others
+ ifelse
+} bdf
+
+% BOP -- beginning of page
+% Usage -- BOP
+/BOP
+{
+ clear
+ Mtrx setmatrix
+ 25 0 translate % Physical page origin is at (-25,0) from the top left corner
+} bdf
+
+% ch-fieldname -- extract field from ch-data array (order defined by positions
+% in first array argument to macro D)
+% Usage -- ch-fieldname
+/ch-image {ch-data 0 get} bdf % the bitmap hex string image
+/ch-xoff {ch-data 1 get} bdf % pixels from left edge of bitmap to char origin
+/ch-yoff {ch-data 2 get} bdf % pixels from top edge of bitmap to char origin
+/ch-width {ch-data 3 get} bdf % bitmap width in pixels
+/ch-height {ch-data 4 get} bdf % bitmap height in pixels
+/ch-tfmw {ch-data 5 get} bdf % pixels to next character (precise flt value)
+
+% CharBuilder -- image one character
+% Usage -- fontdict ch CharBuilder
+/CharBuilder
+{
+ /ch-code exch def % save the char code
+ /font-dict exch def % and the font dict.
+ /ch-data font-dict /BitMaps get
+ ch-code get def % get the bitmap descriptor for char
+ ch-data null eq not % show character if entry is not empty
+ {
+ ch-tfmw 0
+ ch-xoff neg ch-yoff ch-height sub
+ ch-width ch-xoff sub ch-yoff
+ setcachedevice
+ 0 0 SNAP translate
+ ch-width ch-height true [ 1 0 0 -1 ch-xoff ch-yoff ]
+ {ch-image} imagemask
+ } if
+} bdf
+
+
+% D -- define new character in current font
+% Usage -- [<bitmap> xoff yoff pixwid pixht tfmpixwid] charnum D
+/D
+{
+ /ch-code exch def
+ /ch-data exch def
+ currentfont /BitMaps get ch-code ch-data put
+ currentfont /Encoding get ch-code dup 3 string cvs cvn put
+} bdf
+
+% EOJ -- end of job
+% Usage -- EOJ
+/EOJ
+{
+ end % matches begin issued before BOJ
+} bdf
+
+% EOP -- end of page
+% Usage -- ncopies EOP
+/EOP
+{
+/#copies exch def
+showpage
+} bdf
+
+% LANDSCAPE -- landscape format page (11inH x 8.5inV)
+% Usage -- LANDSCAPE
+/LANDSCAPE
+{
+ letter initmatrix
+ 72 Resolution div dup scale
+ 0 3300 translate
+ -90 rotate
+ 0 -750 translate
+ Mtrx currentmatrix pop
+} bdf
+
+% LANDSCAPE -- landscape format page (11inH x 8.5inV)
+% Usage -- LEGAL_LAND
+/LEGAL_LAND
+{
+ legal initmatrix
+ 72 Resolution div dup scale
+ 0 4200 translate
+ -90 rotate
+ 0 -750 translate
+ Mtrx currentmatrix pop
+} bdf
+
+% LEGAL -- legal format page (8.5inH x 14inV)
+% Usage -- LEGAL
+/LEGAL
+{
+ legal initmatrix
+ 72 Resolution div dup scale
+ 0 900 translate
+ Mtrx currentmatrix pop
+} bdf
+
+% LETTER -- letter format page
+% Usage -- LETTER
+/LETTER
+{
+ letter initmatrix
+ 72 Resolution div dup scale
+ Mtrx currentmatrix pop
+} bdf
+
+% M -- moveto
+% Usage -- x y M
+/M
+{
+ moveto
+} bdf
+
+% Mtrx -- permanent storage for page transformation matrix
+% Usage -- Mtrx
+/Mtrx 6 array def
+
+% NF -- define new font
+% Usage -- /fontname NF
+/NF
+{
+ /newname exch def
+ newname 7 dict def
+ newname load
+ begin
+ /BitMaps 128 array def
+ /BuildChar { CharBuilder } def
+ /Encoding 128 array def
+ 0 1 127 { Encoding exch /.notdef put } for
+ /FontBBox [ 0 0 1 1 ] def
+ /FontMatrix [ 1 0 0 1 0 0 ] def
+ /FontType 3 def
+ end
+ newname newname load definefont pop
+} bdf() pop
+
+% NOTE -- note format page (increases available virtual memory from 240K
+% to 340K on Apple LaserWriter)
+% Usage -- NOTE
+/NOTE
+{
+ note initmatrix
+ 72 Resolution div dup scale % set scaling to 1.
+ Mtrx currentmatrix pop
+} bdf
+
+% P -- show string at current point, updating horizontal position to new endpt
+% Usage -- (string) P
+/P {show} bdf() pop
+
+% Q -- draw bar of last size set by B command at specified point
+% Usage -- x y Q
+/Q {moveto w h B} bdf() pop
+
+% R -- move relative right and show string, updating horizontal position to
+% new endpoint
+% Usage -- (string) xxx R
+/R {0 rmoveto show} bdf() pop
+
+% Resolution -- device resolution in dots/inch
+% Usage -- Resolution
+/Resolution 300 def
+
+% S -- move absolute and show string, updating horizontal position to new endpt
+% Usage -- (string) xxx yyy S
+/S {moveto show} bdf() pop
+
+% SF -- set new font at scale nnn (nnn = 1 normally; 2 gives double size chars)
+% Usage -- nnn /fontname SF
+/SF {findfont exch scalefont setfont} bdf() pop
+
+% SNAP -- convert coordinates to integer device coordinates and back again
+% Usage -- xxx yyy SNAP (leave xxx' yyy' on stack)
+/SNAP {transform 2 {floor 0.5 add exch} repeat itransform} bdf
+
+% T -- move absolute horizontally and show string, updating horizontal position
+% to new endpt
+% Usage -- (string) xxx T
+/T {currentpoint exch pop moveto show} bdf() pop
+
+end % TeXdict
+ \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/enfrtwo.tex b/macros/inrstex/inrsinputs/enfrtwo.tex
new file mode 100644
index 0000000000..e0d81a168b
--- /dev/null
+++ b/macros/inrstex/inrsinputs/enfrtwo.tex
@@ -0,0 +1,106 @@
+%-*-tex-*-
+% some macros for english/french side by side
+
+\def\coltol{\pretolerance=5000 \tolerance=5000 \hbadness=5000 }
+
+\newbox\leftbox
+\newbox\leftrembox
+\newbox\rightbox
+\newbox\rightrembox
+\newbox\tempbox
+\newif\ifboxsplit % if either box is split
+\newif\ifcolsplit % if this col is being split
+\newdimen\remsplit
+\newdimen\rempage
+\newdimen\colsize \colsize=2.8in
+\let\dbmess=\message
+\def\dbmess#1{}
+\raggedbottom
+\def\splitparms #1{\remsplit=\pagegoal \advance\remsplit by -\pagetotal \relax
+ \rempage=\remsplit
+ \ifdim\pageshrink<10pt \advance\remsplit by -10pt\fi
+ \advance\rempage by -\ht#1
+ \advance\rempage by -\dp#1 \colsplitfalse
+ \ifdim\rempage<0pt \ifdim\remsplit>0pt \colsplittrue \fi\fi
+ \dbmess{<<rs \the\remsplit* rp \the\rempage *ps \the\pageshrink>>}}
+
+% general column form #1 \right(left)box #2 \right(\left)rembox #3 type
+% #4 input
+
+\def\colform #1#2#3#4{\setbox#1=\vtop{\hsize \colsize \coltol #3#4}
+ \splitparms{#1}\ifcolsplit\dbmess{<<col split \the\ppnum>>}
+ \boxsplittrue\setbox\tempbox=\vsplit
+ #1 to \remsplit \fi
+ \ifvoid\tempbox \else
+ \setbox#2=\vtop{\unvbox#1}\relax
+ \setbox#1=\vtop{\unvbox\tempbox}\fi
+ \dbmess{** tbx r ** rrh \the\ht#1
+ * rh \the\ht#2
+ * drh \the\dp#1
+ * dh \the\dp#2 }}
+
+% right and left forms
+
+\long\def\rightform #1{\colform{\rightbox}{\rightrembox}{\fhyph}{#1\endgraf}}
+\long\def\leftform #1{\colform{\leftbox}{\leftrembox}{\ehyph}{#1\endgraf}}
+
+
+\newcount\ppnum
+
+\long\def\pp #1@@#2!!{\advance\ppnum by 1 \dbmess{<< pp num \the\ppnum>>}
+ {\def\pp{\dbmess{<<Possible @@ or !! error>>}}\vskip \parskip
+ \boxsplitfalse\leftform{#1}\rightform{#2}\relax
+ \line{\box\leftbox\hss\box\rightbox}\relax
+ \ifboxsplit
+ \line{\box\leftrembox\hss\box\rightrembox}
+ \dbmess{<<End Splitbox \the\ppnum>>}\fi
+ }}
+
+\def\seh#1#2#3{\pp\innershead{#1}{#2}@@\autonumberingoff
+ \innershead{\qref{#1}.}{#3}!!\nobreak\mark{#2/#3}\nobreak}
+\def\sseh#1#2#3{\pp\innersshead{#1}{#2}@@\autonumberingoff
+ \innersshead{\qref{#1}}{#3}!!\nobreak\mark{#2/#3}\nobreak}
+\def\ssseh#1#2#3{\pp\innerssshead{#1}{#2}@@\autonumberingoff
+ \innerssshead{\qref{#1}}{#3}!!\nobreak\mark{#2/#3}\nobreak}
+\def\dssseh#1#2{\pp\innerdssshead{#1}@@
+ \innerdssshead{#2}!!\nobreak\mark{#1/#2}\nobreak}
+\let\dsh=\dssseh
+
+
+%\tracingpages=1
+
+% --- header stuff ----
+ \headertext{\ifodd\pageno\rightheadertext
+ \else\leftheadertext\fi}
+ \def\rightheadertext{\line{\hss
+ \firstmark\rlap{\ssheadfont\qquad\folio}}}
+ \def\leftheadertext{\line{\llap{\ssheadfont\folio
+ \qquad}\firstmark{ }\hss}}
+\documentstyle{\normalheaderstyle
+ \vheadersize=.35in
+ \normalfooterstyle
+ \vfootersize=.35in}
+
+
+
+% Autonumbering ... referencing sections paragraphs
+\newautonum{art}
+
+\def\pn{{\bf \autoartnum{}} }
+\def\pntag#1{\autoartnum{#1}}
+\def\rpn{{\bf \the\artnum } }
+
+% Toc forms change
+\let\idssshtoc=\shtoc
+\let\ishtoc=\shtoc
+\def\shtoc #1#2#3 \shtoc #4#5#6{\pp \ishtoc{#1}{#2}{#3}@@\ishtoc{#4}{#5}{#6}!!}
+\let\isshtoc=\sshtoc
+\def\sshtoc #1#2#3 \sshtoc #4#5#6{\pp \isshtoc{#1}{#2}{#3}@@\isshtoc{#4}{#5}{#6}!!}
+\let\issshtoc=\ssshtoc
+\def\ssshtoc #1#2#3 \ssshtoc #4#5#6{\pp \issshtoc{#1}{#2}{#3}@@\issshtoc{#4}{#5}{#6}!!}
+ % like section heads .. minor indent
+\def\dssshtoc #1#2#3 \dssshtoc #4#5#6{\pp \idssshtoc{#1}{#2}{#3}@@\idssshtoc{#4}{#5}{#6}!!}
+
+
+
+\parindent=0pt \parskip=2.8ex % block mode \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/english.tex b/macros/inrstex/inrsinputs/english.tex
new file mode 100644
index 0000000000..f0690068dd
--- /dev/null
+++ b/macros/inrstex/inrsinputs/english.tex
@@ -0,0 +1,17 @@
+\def\englishversion{\language=0
+\nonfrenchspacing % .... needs to reverse accent forms ...
+\def\versionform{{\notefont Draft Version: \date}}%
+\def\Chapter{Chapter }%
+\def\Appendix{Appendix }%
+\def\ABSTRACT{{\ssheadfont Abstract}}%
+\def\figurelabel{Fig. }%
+\def\tablelabel{Table }%
+\def\bookstylemessage{ <<< BOOKSTYLE >>> }%
+\def\endlistmessage##1{ <<< endlist mismatch >>> }%
+\def\undeftagmessage##1{ <<<tag: ##1 = undefined>>> }%
+\def\citetagfileclosedmessage{ << CITATION TAG FILE CLOSED >> }%
+\def\nocitetagformmessage{ NO CITATION FOR THIS TAG }%
+\def\titlemessage{Title}%
+\lccode`\'=0
+}%
+\englishversion \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/francais.tex b/macros/inrstex/inrsinputs/francais.tex
new file mode 100644
index 0000000000..7b5b07f561
--- /dev/null
+++ b/macros/inrstex/inrsinputs/francais.tex
@@ -0,0 +1,17 @@
+\gdef\versionfrancaise{\language=1
+\frenchspacing
+\def\versionform{{\notefont version pr\'eliminaire:\date}}%
+\def\Chapter{Chapitre }%
+\def\Appendix{Appendice }%
+\def\ABSTRACT{{\ssheadfont Sommaire}}%
+\def\figurelabel{Fig. }%
+\def\tablelabel{Tableau }%
+\def\bookstylemessage{ <<< genre de livre >>> }%
+\def\endlistmessage##1{ <<< erreur : endlist >>> }%
+\def\undeftagmessage##1{ <<<tag:##1 = indefini>>> }%
+\def\citetagfileclosedmessage{ << FICHIER DE CITATION DES TAG FERME >> }%
+\def\nocitetagformmessage{ PAS DE CITATION POUR CET TAG }%
+\def\titlemessage{Titre}%
+\lccode`\'=`\'%
+}%
+\versionfrancaise \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/helphdr.tex b/macros/inrstex/inrsinputs/helphdr.tex
new file mode 100644
index 0000000000..877c3e98c3
--- /dev/null
+++ b/macros/inrstex/inrsinputs/helphdr.tex
@@ -0,0 +1,306 @@
+
+% -*-tex-*-
+% tex 1.1
+% special definitions
+\catcode`\@=11
+% subdocument macros fix
+
+\def\lb{ \li $\bullet$ }
+
+\def\subdocumentmacros#1{\ifs@ubdocument #1 \fi\s@ubdocumentfalse}
+
+
+%simple line skip
+\def\ls{\vskip \baselineskip \noindent}
+
+%vphantom "bug"
+\def\sphantom#1{\setbox0=\hbox{#1} \setbox2=\null \ht2=\ht0 \dp2=\dp0 \box2}
+
+% INRS
+\def\INRS{INRS-\kern-.1emT\'el\'e\-com\-muni\-ca\-tions}
+
+%check form %will print in proof mode only
+\long\def\proofcheck#1{\ifproofmode \par Proofcheck: \par #1 \fi}
+
+\def\comhead#1{\penaltybreak{-1000}{2.8ex}\centerline{\sssheadfont #1}\smallskip\nobreak}
+
+\let\tex = \TeX % its easier to type
+\def\inprint{INRSprint}
+\def\mtex{T\kern-.1667em\lower.5ex\hbox{\^E}\kern-.125emX}
+\def\texbook{\tex book}
+\def\plain{{\it plain}}
+\def\intex{INRS\mtex}
+
+\def\vrt{\hbox{\tt\char`\|}} % vertical line
+\def\dnArrow{\hbox{\tt\char'14}} % downward arrow
+\def\upArrow{\hbox{\tt\char'13}} % upward arrow
+\def\]{\hbox{\tt\char`\ }} % visible space
+
+%special boxits
+
+\def\hhboxit#1{\hbox{\vrule\vbox{\hrule\hbox{#1}\hrule}\vrule}}
+\def\hvboxit#1{\hbox{\vrule\vbox{\hrule\hbox{\vbox{#1}}\hrule}\vrule}}
+\def\vvboxit#1{\vbox{\hrule\hbox{\vrule\vbox{#1}\vrule}\hrule}}
+\def\vhboxit#1{\vbox{\hrule\hbox{\vrule\vbox{\hbox{#1}}\vrule}\hrule}}
+\let \hh=\hhboxit \let \vh=\vhboxit \let \vv=\vvboxit \let \hv=\hvboxit
+
+
+
+%========== simple forms for prim,plain,ext ended commands =======
+\def\pri{\leavevmode\llap{$\bullet$\kern 5pt}\nobreak}
+\def\pla{\leavevmode\llap{$\diamond$\kern 5pt}\nobreak}
+\def\ext{\leavevmode\llap{$\star$\kern 5pt}\nobreak}
+
+%======== simple multicolumn for symbols and commands
+% must fit on single page and have no inserts
+% will be balanced
+
+\newbox\simpgalleybox
+\newdimen\simphcolumnsize
+\newdimen\simpfirstoffset \simpfirstoffset = 1em
+\newtoks\simpcolumnsep \simpcolumnsep = {\vrule\hskip 2em\vrule}
+\newcount\simpnumcolumns
+\def\setsimphsize{\setbox0=\hbox{\the\simpcolumnsep}
+ \dimen0= \simpnumcolumns\wd0 %\the\dimen0
+ \advance\dimen0 by -\wd0 %\the\dimen0
+ \advance\dimen0 by \simpfirstoffset
+ \dimen2 = \hcolumnsize %\the\dimen2
+ \advance\dimen2 by -\dimen0 %\the\dimen0
+ \divide\dimen2 by \simpnumcolumns
+ \global\simphcolumnsize = \dimen2
+ }
+
+\def\beginsimplemulticolumn{
+ \setbox\simpgalleybox = \vbox\bgroup \hsize\simphcolumnsize}
+
+
+\def\endsimplemulticolumn{ \egroup \dimen0 = \ht\simpgalleybox
+ \advance\dimen0 by \dp\simpgalleybox
+ \divide\dimen0 by \simpnumcolumns
+ \advance\dimen0 by 0pt % size of split box
+ \count255=1
+ \splitmaxdepth=\maxdepth
+ \splittopskip=0pt
+ \setbox2 = \vsplit\simpgalleybox to \dimen0
+ \setbox0 = \hbox{\vbox to \dimen0{\unvbox2\vss}}
+ \loop \ifnum \count255 < \simpnumcolumns
+ \setbox2 = \vsplit\simpgalleybox to\dimen0
+ \setbox0 = \hbox{\unhbox0\the\simpcolumnsep
+ \vbox to \dimen0{\unvbox2\vss}}
+ \advance\count255 by 1
+ \repeat
+ \centerline{\box0}}
+
+%use default values
+\def\beginthreecolumn{\begincolumns 3}
+\def\begintwocolumn{\begincolumns 2}
+\def\begincolumns#1{\par\simpnumcolumns= #1
+ \simpfirstoffset = 10pt
+ \simpcolumnsep = {\hskip 2em}
+ \setsimphsize
+ \beginsimplemulticolumn \obeylines
+ \advance\parskip by 0pt plus 2pt minus 2pt
+ \parindent =0pt}
+\let\endthreecolumn=\endsimplemulticolumn
+\let\endmulticolumn=\endsimplemulticolumn
+\let\endtwocolumn = \endsimplemulticolumn
+%command followed by explanation or short example
+\newdimen\descrwd \descrwd = 2.5in
+\def\bshortcomlist{\begingroup$$\tabskip=1em plus 1fil
+ minus 1fil\halign\bgroup##\dotfill&\quad
+ \vtop{\hsize \descrwd \veryraggedright\noindent\strut ##\strut} \cr}
+\def\eshortcomlist{\crcr \egroup$$\endgroup}
+
+
+% macros for verbatim scanning
+\chardef\bslash=`\\
+\chardef\other=12
+\def\space{\leavevmode\hskip.5emplus1ptminus1pt\relax}
+{\obeyspaces %makes a space active for inside def
+\gdef\ttverbatim{\begingroup
+\def|{\char`\|}\catcode`\\=\other
+\catcode`\{=\other
+\catcode`\}=\other
+\catcode`\$=\other
+\catcode`\&=\other
+\catcode`\#=\other
+\catcode`\%=\other
+\catcode`\~=\other
+\catcode`\_=\other
+\catcode`\^=\other
+\catcode`\<=\other
+\catcode`\>=\other
+\parindent0pt\parskip0pt plus1pt%
+\obeyspaces\let =\space
+\obeylines\tt}}
+
+\def\hendgraf{\endgraf\leavevmode}
+\outer\def\begintt{\vskip-\baselineskip$$\let\par=\hendgraf\ttverbatim%
+\catcode`\|=0\ttfinish}
+{\catcode`\|=0 |catcode`|\=\other% | is temporary escape character
+|obeylines% end of line is active
+|gdef|ttfinish#1^^M#2\endtt{|vbox{#2}|endgroup$$|vskip-|baselineskip|noindent|ignorespaces}}
+
+{\catcode`\|=\active \gdef\g@et #1|{\gdef\text{#1}#1\endgroup
+ \ifindexit \makexref \fi \indexitfalse}}
+
+\catcode`\|=\active %defines | as an active character in the entire document
+{\obeylines \gdef|{\ttverbatim\spaceskip\ttglue\g@et}}
+%\def\ttspace{{\tt\hskip\ttglue}}
+
+% ========= \ in \beginttverbatim ========
+\def\1{\char'134}
+
+%More useful stuff from TeX manual Header
+
+
+\def\bull{\vrule height .9ex width .8ex depth -.1ex } % square bullet
+\def\SS{{\it SS}} % scriptscript style
+
+% \box\bigdot is a null box with a bullet at its reference point
+\newbox\bigdot \newbox\smalldot
+\setbox0=\hbox{$\vcenter{}$} % \ht0 is the axis height
+\setbox1=\hbox to 0pt{$\hss\bullet\hss$} % bullet is centered on the axis
+\setbox\bigdot=\vbox to 0pt{\kern-\ht1 \kern\ht0 \box1 \vss}
+\setbox1=\hbox to0pt{$\hss\cdot\hss$} % cdot is centered on the axis
+\setbox\smalldot=\vbox to0pt{\kern-\ht1 \kern\ht0 \box1 \vss}
+
+% \samplebox makes the outline of a box, with big dot at reference point
+\def\samplebox#1#2#3#4{% #1=ht, #2=dp, #3=wd, #4=text
+ {\setbox0=\vtop{\vbox to #1{\hbox to #3{}\vss}
+ \nointerlineskip
+ \vbox to #2{}}% now \box0 has the desired ht, dp, and wd
+ \hbox{\copy\bigdot
+ \vrule height.2pt depth.2pt width#3%
+ \kern-#3%
+ \makelightbox
+ \kern-#3%
+ \raise#1\vbox{\hbox to #3{\hss#4\hss}
+ \kern 3pt}}}}
+
+% \sampleglue makes glue between sample boxes
+\def\sampleglue#1#2{% #1=width, #2=text
+ \vtop{\hbox to #1{\xleaders\hbox to .5\varunit{\hss\copy\smalldot\hss}\hfil}
+ \kern3pt
+ \tabskip 0pt plus 1fil
+ \halign to #1{\hfil##\cr#2\cr}}}
+
+
+% indexing macros mods of texbook
+
+% there is an interaction between \beginttverbatim and indexing wrt ^
+% thus change of ^ active to \@ !!!!!
+
+
+
+\def\indxx{\xref}
+\def\xref{\relax}
+\let\@=\indxx
+\newif\ifindexit
+
+{\obeylines
+\gdef\makexref{{\def\space{ }\def^^M{*/*}% spaces are important
+\xdef\writeit{\write\ind@file{!\text!\space\string\indpg\space\noexpand\number\pageno.}}\writeit}}}
+
+
+\outer\def\indexingon{\openlistfile{ind}\def\xref{\indexittrue}}
+
+
+\outer\def\indexingoff{\closelistfile{ind}\def\xref{\relax}}
+
+
+
+% Command description macro
+% Format will be
+% \bc
+% |<command>|\par-- for input
+% nobreak
+% Block based description
+% bigbreak
+\def\beginblockmode {\begingroup\parindent=0pt
+ \parskip= \smallskipamount
+ \def\nbr{\par\nobreak\smallskip}
+ \let\sbr=\smallbreak
+ \let\mbr=\bigbreak
+ \let\bbr=\bigbreak}
+\def\endblockmode{\par\endgroup}
+
+%multipoint eqalign
+\def\multieqalign#1{\,\vcenter{\openup\jot\m@th
+ \ialign{&\quad\strut\hfil$\displaystyle{##}$&$\displaystyle
+ {{}##}$\hfil\quad&##\crcr#1\crcr}}\,}
+
+\bookstyle
+%special changes for this book
+
+\def\cqu{}
+\newskip\qsk \qsk=3in plus 1fill
+\def\cquote#1#2{\par\vfill\leftskip=\qsk {\it #1}\par\bigskip{\bf #2}}
+
+\def\pslide #1//#2//{\vfill\hslide #1//#2//}
+
+\def\chapterstartform{\ifodd\pageno \relax\else
+ \line{}{\cqu\par\ejectpage}\fi
+ \gdef\cqu{}\titlepagestyle}
+% modification of header format
+\def\leftheadertext{\line{\llap{\ssheadfont\folio\qquad}\def\cr{ }CHAPTER
+ \chnumform: \the\chaptername \hss}}
+\def\rightheadertext{\line{\hss\topmark\rlap{\ssheadfont\qquad\folio}}}
+\let\chapterhead=\chead
+\let\bookstyle=\relax % removes the second try
+\input texgrct %POSTCRIPT
+\input inrssl%POSTCRIPT
+
+\def\textpagestyle{}
+
+\inrsform
+\textform
+%boxexample
+\def\boxexample{
+\def\wid{{\tt wd}}
+\def\hei{{\tt ht}}
+\def\dpt{{\tt dp}}
+\def\boxpoint{\setbox2=\hbox{\vrule width 8pt height 3pt depth 5pt} \wd2 =0pt
+ \ht2=0pt \dp2=0pt \hskip -8pt \box2}
+\setbox4=\hbox{\hei}
+\def\vbrule{\vrule width 1pt}
+\def\hbrule{\hrule height 1pt}
+\setbox0=\hbox to 1.2in{\vbrule$\longleftarrow \hss \wid \hss\longrightarrow$\vbrule}
+\setbox8=\vbox to 2in{\offinterlineskip\hbox to \wd4{\hss$\uparrow$\hss}
+ \hbox to \wd4{\hss $\Bigg\vert$\hss}\vss
+ \hbox to \wd4{\hss \hei\hss}\vss
+ \hbox to \wd4{\hss $\Bigg\vert$\hss}
+ \hbox to \wd4{\hss$\downarrow$\hss}}
+\setbox6=\vbox{\hbox to \wd4{\hss$\uparrow$\hss}
+ \hbox to \wd4{\hss \dpt\hss}
+ \hbox to \wd4{\hss$\downarrow$\hss}}
+\bigbreak\line{\hss
+ \vtop{\copy0 \offinterlineskip
+ \smallskip
+ \hbrule
+ \hbox to \wd0{\vbrule height \ht8
+ \boxpoint \hss
+ \hskip 4pt\copy8 \hss
+ \vbrule height \ht8}
+ \hbrule
+ \hbox to \wd0{\vbrule height \ht6 \hss
+ \copy6 \hss
+ \vbrule height \ht6}
+ \hbrule
+ }
+ \vtop{\hrule height 0pt
+ \vskip 1in
+ \hbox{\qquad \vrule height 6pt width 8pt depth 2pt
+ \quad $\Leftarrow$ Reference Point}
+ \vskip 62pt
+ \hbox{$\Leftarrow$ Baseline}}
+ \hss}\medskip}
+
+
+\def\ftn{}
+
+\hfuzz=5pt
+\let\prule=\relax \let\ptrule=\relax
+\marginnotesfalse
+
+\ejectpag \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/ieeelogo.ps b/macros/inrstex/inrsinputs/ieeelogo.ps
new file mode 100644
index 0000000000..b96c2b8f2a
--- /dev/null
+++ b/macros/inrstex/inrsinputs/ieeelogo.ps
@@ -0,0 +1,685 @@
+%!
+%%BoundingBox: 215.040000 362.160000 396.720000 429.840000
+0.240000 0.240000 scale
+896 1509 translate
+768 282 scale
+768 282 true [768 0 0 -282 0 282] {<
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000700000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000001C000000000000000000000000000000000000000000000000000000000000000000F800000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000FF00000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000000000000001FF800000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000003FFC00000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000007FFE000000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000FFFF00000000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000001FFFF0000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000003FFFF80000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000003FFFFC0000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000007FFFFE00000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000FFFFFE0000000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000001FFFFFF000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000001FFFFFF8000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000003FFFFFF8000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000007FFFFFFC0000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00FFFFFFFE000000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000001FFFFFFFF00000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000000000001FFFFFFFF800000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000003FFFFFFFF800000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000007FFFFFFFFC000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0FFFFFFFFFE00000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000001FFFFFFFFFE0000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000001FFFFFFFFFF00000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000003FFFFFFFFFF80000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000003FFFFFFFFFFC00000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+7FFFFFFFFFFE0000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000FFFFFFFFFFFF000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000001FFFFFFFFFFFF0000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000003FFFFFFFFFFFF8000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000007FFFFFFFFFFFFC0000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000007
+FFFFFC1FFFFFE000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000FFFFFE003FFFFF00000000000000000000000000000000000
+0000000000000000000000001FC00000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000000001FFFFF8000FFFFF000
+000000000000000000000000000000000000000000000000000000001FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000003FFFFF03E03FFFF800000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000007FFFFC1FFC1FFFFC000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000000000000000000000000FF
+FFF87FFF07FFFE00000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000001FFFFE0FFFF83FFFF0000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000003FFFFC3FFFFE1FFFF80
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000007FFFF07FFFFF07FFFC0000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000007FFFE1FFFFFFC3FFFE00000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000001FFF
+F83FFFFFFE1FFFE0000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000001FFFF07FFFFFFF07FFF000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000003FFFF0FFFFFFFF83FFF8
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000007FFFC3FFFFFFFFC1FFFC000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000FFFF87FFFFFFFFF0FFFE0000000000000000
+00000000000000000000000000000000000000000FC000000000000000000000000000000007FFFF
+F800000000000000000000000000000000000000000000000000000000000000000000000001FFFF
+0FFFFFFFFFF87FFF000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000001FFFFFFFFFC00000000000000000000000000000000000000000000
+0000000000000000000000000003FFFE1FFFFFFFFFF81FFF80000000000000000000000000000000
+0000000000000000000000000FC000000000000000000000000000000FFFFFFFFFFF800000000000
+000000000000000000000000000000000000000000000000000000000007FFFC3FFFFFFFFFFE0FFF
+C00000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000FFFFFF83FFFFF80000000000000000000000000000000000000000000000000000000000
+00000000000FFFF0FFFFFFFFFFFF07FFE00000000000000000000000000000000000000000000000
+000000000FC00000000000000000000000000007FFF8000000FFFF00000000000000000000000000
+0000000000000000000000000000000000000000001FFFE1FFFFFFFFFFFF83FFF000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000003FFE000000
+0003FFE00000000000000000000000000000000000000000000000000000000000000000003FFFC3
+FFFFFFFFFFFFC1FFF80000000000000000000000000000000000000000000000000000000FC00000
+0000000000000000000000FFE000000000003FFC0000000000000000000000000000000000000000
+000000000000000000000000007FFF87FFFFFFFFFFFFE0FFFC000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000FFE00000000000007FF00000000
+0000000000000000000000000000000000000000000000000000000000FFFF0FFFFFFFFFFFFFF87F
+FE0000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00001FF0000000000000007FC0000000000000000000000000000000000000000000000000000000
+0000000001FFFC3FFFFFFFFFFFFFFC3FFF0000000000000000000000000000000000000000000000
+000000000FC0000000000000000000000000FF80000000000000000FF80000000000000000000000
+000000000000000000000000000000000000000003FFF87FFFFFFFFFFFFFFE0FFF80000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000003FE0000000000
+00000003FE0000000000000000000000000000000000000000000000000000000000000007FFF0FF
+FFFFFFFFFFFFFF07FF8000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000007F80000000000000000007F80000000000000000000000000000000000000
+0000000000000000000000000FFFF1FFFFFFFE7FFFFFFF83FFC00000000000000000000000000000
+0000000000000000000000000FC000000000000000000000001FC00000000000000000001FC00000
+000000000000000000000000000000000000000000000000000000001FFFE3FFFFFFFC7FFFFFFFE1
+FFE000000000000000000000000000000000000000000000000000000FC000000000000000000000
+003F0000000000000000000007F80000000000000000000000000000000000000000000000000000
+000000003FFFC7FFFFFFFC3FFFFFFFE0FFF000000000000000000000000000000000000000000000
+000000000FC00000000000000000000000780000000000000000000001FC00000000000000000000
+00000000000000000000000000000000000000007FFF9FFFFFFFFC3FFFFFFFF07FFC000000000000
+00000000000000000000000000000000000000000FC00000000000000000000000C0000000000000
+00000000007F000000000000000000000000000000000000000000000000000000000000FFFE3FFF
+FFFFF81FFFFFFFFC3FFE00000000000000000000000000000000000000000000000000000FC00000
+0000000000000000078000000000000000000000001F800000000000000000000000000000000000
+000000000000000000000001FFFC7FFFFFFFF81FFFFFFFFE1FFF0000000000000000000000000000
+0000000000000000000000000FC0000000000000000000000E00000000000000000000000007E000
+00000000000000000000000000000000000000000000000000000003FFF8FFFFFFFFF00FFFFFFFFF
+0FFF80000000000000000000000000000000000000000000000000000FC000000000000000000000
+3C00000000000000000000000003F000000000000000000000000000000000000000000000000000
+0000000FFFF1FFFFFFFFF00FFFFFFFFF87FFC0000000000000000000000000000000000000000000
+000000000FC0000000000000000000007800000000000000000000000000F8000000000000000000
+000000000000000000000000000000000000001FFFE3FFFFFFFFF00FFFFFFFFFC3FFE00000000000
+00000000000000000000000000000000000000000FC000000000000000000001F0000000000003FF
+FC00000000007E000000000000000000000000000000000000000000000000000000003FFFC7FFFF
+FFFFE007FFFFFFFFE1FFF0000000000000000000000000000000000000000000000000000FC00000
+0000000000000003C000000000003FFFFFC0000000003F0000000000000000000000000000000000
+00000000000000000000007FFF8FFFFFFFFFE007FFFFFFFFF0FFF800000000000000000000000000
+0000000000000000000000000FC000000000000000000007800000000000FFFFFFF0000000000F80
+000000000000000000000000000000000000000000000000000000FFFF9FFFFFFFFFE007FFFFFFFF
+F87FFC000000000000000000000000000000000000000000000000000FC00000000000000000001F
+000000000007FFFFFFF80000000007C0000000000000000000000000000000000000000000000000
+000001FFFE3FFFFFFFFFE003FFFFFFFFF83FFE000000000000000000000000000000000000000000
+000000000FC00000000000000000003C00000000000FFFFFFFF80000000003F00000000000000000
+00000000000000000000000000000000000003FFFC7FFFFFFFFFC003FFFFFFFFFC1FFF0000000000
+00000000000000000000000000000000000000000FC00000000000000000007800000000001FFFFF
+FFF80000000000F8000000000000000000000000000000000000000000000000000007FFF8FFFFFF
+FFFFC001FFFFFFFFFE0FFF800000000000000000000000000000000000000000000000000FC00000
+00000000000000F000000000003FFFFFFF8000000000007C00000000000000000000000000000000
+000000000000000000000FFFF1FFFFFFFFFF8001FFFFFFFFFF07FFE0000000000000000000000000
+0000000000000000000000000FC0000000000000000001E000000000007FFFFFF80000000000003E
+00000000000000000000000000000000000000000000000000001FFFE3FFFFFFFFFF8001FFFFFFFF
+FF87FFE00000000000000000000000000000000000000000000000000FC0000000000000000003C0
+0000000000FFFFFFE00000000000001F000000000000000000000000000000000000000000000000
+00003FFFC7FFFFFFFFFF8000FFFFFFFFFFC3FFF80000000000000000000000000000000000000000
+000000000FC0000000000000000007800000000001FFFFFF800000000000000F8000000000000000
+0000000000000000000000000000000000007FFF8FFFFFFFFFFF0000FFFFFFFFFFE1FFFC00000000
+00000000000000000000000000000000000000000FC000000000000000000F000000000003FFFFFF
+0000000000000007C000000000000000000000000000000000000000000000000001FFFF1FFFFFFF
+FFFF0000FFFFFFFFFFF0FFFE0000000000000000000000000000000000000000000000000FC00000
+0000000000001C000000000007FFFFFC0000000000000003E0000000000000000000000000000000
+00000000000000000003FFFE3FFFFFFFFFFF00007FFFFFFFFFFC7FFF000000000000000000000000
+0000000000000000000000000FC000000000000000003C000000000007FFFFFC0000000000000001
+F000000000000000000000000000000000000000000000000007FFFC7FFFFFFFFFFE00007FFFFFFF
+FFFC3FFF8000000000000000000000000000000000000000000000000FC000000000000000007800
+000000000FFFFFFC0000000000000000F80000000000000000000000000000000000000000000000
+000FFFF87FFFFFFFFFFE00007FFFFFFFFFFE1FFFC000000000000000000000000000000000000000
+000000000FC00000000000000000F000000000000FFFFFFFC0000000000000007800000000000000
+00000000000000000000000000000000003FFFF0FFFFFFFFFFFE00003FFFFFFFFFFF0FFFF0000000
+00000000000000000000000000000000000000000FC00000000000000001E000000000000FFFFFFF
+FF000000000000003C0000000000000000000000000000000000000000000000007FFFF1FFFFFFFF
+FFFC00003FFFFFFFFFFF87FFF800000000000000000000000000000000000000000000000FC00000
+000000000001C000000000001FFFFFFFFFF00000000000001E000000000000000000000000000000
+000000000000000000FFFFC3FFFFFFFFFFFC00003FFFFFFFFFFFC3FFFC0000000000000000000000
+0000000000000000000000000FC000000000000000038000000000001FFFFFFFFFFE000000000000
+0F000000000000000000000000000000000000000000000001FFFF87FFFFFFFFFFFC00003FFFFFFF
+FFFFE3FFFE00000000000000000000000000000000000000000000000FC000000000000000078000
+000000003FFFFFF00FFFC00000000000070000000000000000000000000000000000000000000000
+03FFFF8FFFFFFFFFFFFC00003FFFFFFFFFFFF1FFFF80000000000000000000000000000000000000
+000000000FC0000000000000000F0000000000007FFFFFF0007FF000000000000780000000000000
+000000000000000000000000000000000FFFFF1FFFFFFFFFFFFF0000FFFFFFFFFFFFF0FFFFC00000
+00000000000000000000000000000000000000000FC0000000000000001E000000000001FFFFFFF0
+000FFC000000000003C0000000000000000000000000000000000000000000001FFFFE1FFFFFFFFF
+FFFFC003FFFFFFFFFFFFF87FFFE0000000000000000000000000000000000000000000000FC00000
+00000000001C000000000007FFFFFFF00000FF000000000001E00000000000000000000000000000
+00000000000000003FFFFC3FFFFFFFFFFFFFE00FFFFFFFFFFFFFFC3FFFF000000000000000000000
+0000000000000000000000000FC0000000000000003C00000000001FFFFFFFF000003F8000000000
+01F0000000000000000000000000000000000000000000007FFFF87FFFFFFFFFFFFFF00FFFFFFFFF
+FFFFFE1FFFF8000000000000000000000000000000000000000000000FC000000000000000380000
+0000003FFFFFFFF800000FE00000000000F000000000000000000000000000000000000000000000
+FFFFF8FFFFFFFFFFFFFFF00FFFFFFFFFFFFFFF1FFFFC000000000000000000000000000000000000
+000000000FC000000000000000700000000000FF1FFFFFF8000003F8000000000078000000000000
+00000000000000000000000000000001FFFFF1FFFFFFFFFFFFFFF00FFFFFFFFFFFFFFF0FFFFF0000
+00000000000000000000000000000000000000000FC000000000000000F00000000001F81FFFFFFC
+000000FE00000000007C00000000000000000000000000000000000000000007FFFFE3FFFFFFFFFF
+FFFFF00FFFFFFFFFFFFFFF87FFFF800000000000000000000000000000000000000000000FC00000
+0000000000E00000000007F00FFFFFFC0000003F00000000003C0000000000000000000000000000
+000000000000000FFFFFC7FFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFC3FFFFC0000000000000000000
+0000000000000000000000000FC000000000000001E0000000000FC00FFFFFFE0000001F80000000
+001E0000000000000000000000000000000000000000003FFFFF87FFFFFFFFFFFFFFF00FFFFFFFFF
+FFFFFFE3FFFFF00000000000000000000000000000000000000000000FC000000000000003C00000
+00001F8007FFFFFF00000007C0000000000E0000000000000000000000000000000000000000007F
+FFFF8FFFFFFFFFFBFFFFF00FFFFFFFFFFFFFFFF1FFFFF80000000000000000000000000000000000
+000000000FC00000000000000380000000003E0007FFFFFF80000003F0000000000F000000000000
+000000000000000000000000000001FFFFFF1FFFFFFFFFC03FFFF00FFFFFFFFFFFFFFFF0FFFFFE00
+00000000000000000000000000000000000000000FC0000000000000078000000000FC0007FFFFFF
+C0000000F80000000007800000000000000000000000000000000000000003FFFFFF3FFFFFFFFE00
+0FFFF00FFFFBFFFFFFFFFFF87FFFFF0000000000000000000000000000000000000000000FC00000
+000000000F0000000001F00003FFFFFFF00000007C00000000078000000000000000000000000000
+0000000000000FFFFFFC7FFFFFFFF80007FFF00FFFF01FFFFFFFFFFC7FFFFFC00000000000000000
+0000000000000000000000000FC00000000000000E0000000003E00001FFFFFFFC0000003E000000
+0003C0000000000000000000000000000000000000001FFFFFF8FFFFFFFFE00003FFF00FFFF001FF
+FFFFFFFE3FFFFFE000000000000000000000000000000000000000000F800000000000001E000000
+0007E00001FFFFFFFE0000000F0000000001C0000000000000000000000000000000000000007FFF
+FFF9FFFFFFFF800007FFF00FFFF0007FFFFFFFFF1FFFFFF800000000000000000000000000000000
+000000000F800000000000001E000000000F800000FFFFFFFF800000078000000001E00000000000
+0000000000000000000000000000FFFFFFF1FFFFFFFE00001FFFF00FFFF8003FFFFFFFFF0FFFFFFC
+00000000000000000000000000000000000000000FC00000000000003C000000001F0000007FFFFF
+FFC0000003C000000001E000000000000000000000000000000000000003FFFFFFE3FFFFFFFC0000
+7FFFF00FFFFFF83FFFFFFFFF8FFFFFFE00000000000000000000000000000000000000000FC00000
+0000000038000000003E0000003FFFFFFFE0000001E000000000F000000000000000000000000000
+000000000007FFFFFFE3FFFFFFF80003FFFFF00FFFFFFE1FFFFFFFFFC7FFFFFF8000000000000000
+0000000000000000000000000FC000000000000078000000007C0000001FFFFFFFF0000000F00000
+0000700000000000000000000000000000000000000FFFFFFFC7FFFFFFF00007FFFFF00FFFFFFF07
+FFFFFFFFC3FFFFFFC0000000000000000000000000000000000000000FC000000000000070000000
+007800000007FFFFFFF80000007800000000780000000000000000000000000000000000000FFFFF
+FF87FFFFFFE0000FFFFFF00FFFFFFFC3FFFFFFFFE3FFFFFFE0000000000000000000000000000000
+000000000FC0000000000000F000000000F000000003FFFFFFFC0000007800000000780000000000
+000000000000000000000000001FFFFFFF8FFFFFFFE0003FFFFFF00FFFFFFFE1FFFFFFFFE1FFFFFF
+F0000000000000000000000000000000000000000FC0000000000000F000000000F000000001FFFF
+FFFE0000003C000000003C0000000000000000000000000000000000001FFFFFFF8FFFFFFFC0007F
+FFFFF00FFFFFFFE0FFFFFFFFF1FFFFFFF8000000000000000000000000000000000000000FC00000
+00000000E000000001E0000000007FFFFFFF0000001E000000003C00000000000000000000000000
+00000000003FFFFFFF8FFFFFFFC0007FFFFFF00FFFFFFFF07FFFFFFFF1FFFFFFF800000000000000
+0000000000000000000000000FC0000000000001E000000003C0000000001FFFFFFF0000000F0000
+00001C0000000000000000000000000000000000003FFFFFFF0FFFFFFFC0007FFFFFF00FFFFFFFF0
+7FFFFFFFF0FFFFFFF8000000000000000000000000000000000000000FC0000000000001E0000000
+03C00000000007FFFFFF0000000F800000001E0000000000000000000000000000000000001FFFFF
+FF0FFFFFFFC000FFFFFFF00FFFFFFFF07FFFFFFFF0FFFFFFF8000000000000000000000000000000
+000000000FC0000000000001C000000007800000000001FFFFFF80000007800000001E0000000000
+000000000000000000000000001FFFFFFF0FFFFFFFC000FFFFFFF00FFFFFFFF07FFFFFFFF0FFFFFF
+F8000000000000000000000000000000000000000FC0000000000003C00000000F0000000000007F
+FFFF80000003C00000000E0000000000000000000000000000000000001FFFFFFF0FFFFFFFC0007F
+FFFFF00FFFFFFFF07FFFFFFFF0FFFFFFF8000000000000000000000000000000000000000FC00000
+00000003800000000E0000000000003FFFFFC0000003C00000000F00000000000000000000000000
+00000000000FFFFFFF8FFFFFFFE0007FFFFFF00FFFFFFFF07FFFFFFFF0FFFFFFF800000000000000
+0000000000000000000000000FC0000000000003800000001E0000000000000FFFFFC0000001E000
+0000070000000000000000000000000000000000000FFFFFFF87FFFFFFE0007FFFFFF00FFFFFFFE0
+7FFFFFFFF1FFFFFFF0000000000000000000000000000000000000000FC000000000000780000000
+1C00000000000007FFFFC0000001E00000000700000000000000000000000000000000000007FFFF
+FF87FFFFFFF0003FFFFFF00FFFFFFFC0FFFFFFFFE1FFFFFFF0000000000000000000000000000000
+000000000FC0000000000007000000003C00000000000003FFFFC0000000F0000000078000000000
+0000000000000000000000000003FFFFFFC7FFFFFFF8001FFFFFE00FFFFFFF81FFFFFFFFE3FFFFFF
+E0000000000000000000000000000000000000000FC0000000000007000000007800000000000003
+FFFFE0000000700000000380000000000000000000000000000000000000FFFFFFC3FFFFFFFC000F
+FFFFF00FFFFFFF03FFFFFFFFE3FFFFFFC0000000000000000000000000000000000000000FC00000
+00000007000000007800000000000001FFFFE0000000780000000380000000000000000000000000
+0000000000007FFFFFE1FFFFFFFF0007FFFFF00FFFFFFC07FFFFFFFFC7FFFFFF0000000000000000
+0000000000000000000000000FC000000000000E000000007000000000000001FFFFE00000003800
+000003C00000000000000000000000000000000000003FFFFFF1FFFFFFFFC000FFFFF81FFFFFF01F
+FFFFFFFF87FFFFFC00000000000000000000000000000000000000000FC000000000000E00000000
+F000000000000000FFFFE00000003C00000003C00000000000000000000000000000000000000FFF
+FFF8FFFFFFFFF0003FFFFFFFFFFF807FFFFFFFFF8FFFFFF800000000000000000000000000000000
+000000000FC000000000000E00000000F000000000000000FFFFC00000001C00000003C000000000
+000000000000000000000000000007FFFFF87FFFFFFFFE0007FFFFFFFFF801FFFFFFFFFF0FFFFFE0
+00000000000000000000000000000000000000000FC000000000001E00000001E000000000000000
+7FFFC00000001E00000003E000000000000000000000000000000000000001FFFFFC3FFFFFFFFF80
+000FFFFFFF801FFFFFFFFFFE1FFFFFC000000000000000000000000000000000000000000FC00000
+0000001E00000001E0000000000000007FFFC00000001FFFFFFFFFE0000000000000000000000000
+00000000000000FFFFFE3FFFFFFFFFF80000001F8001FFFFFFFFFFFC3FFFFF000000000000000000
+0000000000000000000000000FC000000000001C00000001C0000000000000007FFFC00000001FFF
+FFFFFFC0000000000000000000000000000000000000007FFFFF1FFFFFFFFFFF80000000000FFFFF
+FFFFFFFC7FFFFE0000000000000000000000000000000000000000000FC000000000001C00000003
+C0000000000000007FFF8000000003FFFFFFFF80000000000000000000000000000000000000001F
+FFFF8FFFFFFFFFFFFE00000003FFFFFFFFFFFFF87FFFFC0000000000000000000000000000000000
+000000000FC000000000001C0000000380000000000000007FFF8000000000000000000000000000
+0000000000000000000000000000000FFFFF87FFFFFFFFFFFFFE0003FFFFFFFFFFFFFFF0FFFFF800
+00000000000000000000000000000000000000000FC000000000003C000000038000000000000000
+7FFF800000000000000000000000000000000000000000000000000000000007FFFFC3FFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFE1FFFFE00000000000000000000000000000000000000000000FC00000
+000000380000000780000000000000007FFF80000000000000000000000000000000000000000000
+0000000000000003FFFFE3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3FFFFC0000000000000000000
+0000000000000000000000000FC00000000000380000000780000000000000007FFF000000000000
+000000000000000000000000000000000000000000000001FFFFF1FFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFC7FFFF800000000000000000000000000000000000000000000FC000000000003800000007
+0000000000000000FFFE000000000000000000000000000000000000000000000000000000000000
+7FFFF0FFFFFFFFFFFFFFF03FFFFFFFFFFFFFFF87FFFF000000000000000000000000000000000000
+000000000FC0000000000038000000070000000000000000FFFC0000000000000000000000000000
+000000000000000000000000000000003FFFF8FFFFFFFFFFFFFFE00FFFFFFFFFFFFFFF0FFFFC0000
+00000000000000000000000000000000000000000FC0000000000038000000070000000000000000
+FFF80000000000000000000000000000000000000000000000000000000000001FFFFC7FFFFFFFFF
+FFFFE007FFFFFFFFFFFFFE1FFFF8000000000000000000000000000000000000000000000FC00000
+00000078000000070000000000000001FFF800000000000000000000000000000000000000000000
+00000000000000000FFFFE3FFFFFFFFFFFFFE007FFFFFFFFFFFFFC3FFFF000000000000000000000
+0000000000000000000000000FC00000000000780000000F0000000000000001FFF0000000000000
+00000000000000000000000000000000000000000000000007FFFE1FFFFFFFFFFFFFE007FFFFFFFF
+FFFFFC3FFFE0000000000000000000000000000000000000000000000FC00000000000300000000E
+0000000000000003FFE0000000000000000000000073C00000000000000000000000000000000000
+01FFFF0FFFFFFFFFFFFFC007FFFFFFFFFFFFF87FFF80000000000000000000000000000000000000
+000000000FC00000000000700000000E0000000000000003FF80000000000381FFF81FFF83FFF000
+0000000000000000000000000000000000FFFF87FFFFFFFFFFFFC007FFFFFFFFFFFFF0FFFF000000
+00000000000000000000000000000000000000000FC00000000000700000000E0000000000000007
+FF000000000007C1FFFC3FFF87FFF00000000000000000000000000000000000007FFFC3FFFFFFFF
+FFFFC007FFFFFFFFFFFFE1FFFE00000000000000000000000000000000000000000000000FC00000
+000000700000000E000000000000000FFC000000000007C3FFFC3FFF87FFF0000000000000000000
+0000000000000000003FFFE1FFFFFFFFFFFFC003FFFFFFFFFFFFC3FFFC0000000000000000000000
+0000000000000000000000000FC00000000000700000000E000000000000001FF000000000000FE3
+FFF87FFF87FFC00000000000000000000000000000000000000FFFF0FFFFFFFFFFFFC003FFFFFFFF
+FFFF87FFF000000000000000000000000000000000000000000000000FC00000000000700000000E
+000000000000003FE0000000000007E3FF807F8007F0000000000000000000000000000000000000
+0007FFF87FFFFFFFFFFFC007FFFFFFFFFFFF0FFFE000000000000000000000000000000000000000
+000000000FC00000000000700000001E00000000000E7FFFE0000000000007E3F0007F0007E00000
+000000000000000000000000000000000003FFFC7FFFFFFFFFFFC003FFFFFFFFFFFF1FFFC0000000
+00000000000000000000000000000000000000000FC00000000000700000001E00000000001FFFFF
+FFE0000000000FE3F0007F0007E00000000000000000000000000000000000000001FFFE1FFFFFFF
+FFFFC003FFFFFFFFFFFE3FFF8000000000000000000000000000000000000000000000000FC00000
+000000700000001E00000000003FFFFFFFF0000000000FE3FC007FC007FF00000000000000000000
+000000000000000000007FFF0FFFFFFFFFFFC003FFFFFFFFFFF87FFE000000000000000000000000
+0000000000000000000000000FC00000000000700000001E00000000003E071E7FF0000000000FE3
+FFF87FFF07FFE0000000000000000000000000000000000000007FFF87FFFFFFFFFFC003FFFFFFFF
+FFF8FFFC0000000000000000000000000000000000000000000000000FC00000000000700000001E
+00000000001E000000F0000000000FE3FFF87FFF87FFF00000000000000000000000000000000000
+00001FFF83FFFFFFFFFFC003FFFFFFFFFFE1FFF80000000000000000000000000000000000000000
+000000000FC00000000000700000001E00000000001FFFFFFFF00000000007E3FFFC7FFF87FFE000
+0000000000000000000000000000000000000FFFE3FFFFFFFFFFC003FFFFFFFFFFC3FFF000000000
+00000000000000000000000000000000000000000FC00000000000700000001E00000000001FFFFF
+FFE00000000007E3FFF87FFF07FFE00000000000000000000000000000000000000007FFE1FFFFFF
+FFFFC003FFFFFFFFFFC7FFE00000000000000000000000000000000000000000000000000FC00000
+000000700000001E00000000000FFFFFFFE0000000000FE3FFE03FFC07FC00000000000000000000
+0000000000000000000003FFF0FFFFFFFFFFC003FFFFFFFFFF87FFC0000000000000000000000000
+0000000000000000000000000FC00000000000700000000E000000000007C0000FC00000000007E3
+F8003F0007E0000000000000000000000000000000000000000001FFF87FFFFFFFFFC003FFFFFFFF
+FF0FFF800000000000000000000000000000000000000000000000000FC00000000000700000000E
+000000000003C00007800000000007E3F8007F0007E0000000000000000000000000000000000000
+000000FFFC3FFFFFFFFFC003FFFFFFFFFE1FFF000000000000000000000000000000000000000000
+000000000FC00000000000700000000E000000000003C00007800000000007E3F8007F0007E00000
+000000000000000000000000000000000000007FFE1FFFFFFFFFC003FFFFFFFFFC3FFE0000000000
+00000000000000000000000000000000000000000FC00000000000700000000E000000000003C000
+07000000000007E3F8003F8007F00000000000000000000000000000000000000000003FFF0FFFFF
+FFFF8003FFFFFFFFF87FFC000000000000000000000000000000000000000000000000000FC00000
+000000700000000E000000000003C00007000000000007E3FFF83FFF87FFF0000000000000000000
+00000000000000000000001FFF87FFFFFFFF8003FFFFFFFFF0FFF800000000000000000000000000
+0000000000000000000000000FC00000000000780000000E000000000003C00007000000000007E3
+FFFC3FFF87FFF800000000000000000000000000000000000000000FFFC3FFFFFFFFC003FFFFFFFF
+E1FFF0000000000000000000000000000000000000000000000000000FC00000000000780000000E
+000000000003C00007000000000007E3FFFC3FFF87FFF80000000000000000000000000000000000
+00000007FFE1FFFFFFFFC003FFFFFFFFC3FFE0000000000000000000000000000000000000000000
+000000000FC00000000000780000000E000000000001C00007000000000007C1FFFC3FFF83FFF000
+0000000000000000000000000000000000000003FFF0FFFFFFFFC003FFFFFFFF87FFC00000000000
+00000000000000000000000000000000000000000FC000000000007800000006000000000001C000
+0700000000000381FFF81FFF00FF80000000000000000000000000000000000000000001FFF87FFF
+FFFF8003FFFFFFFF0FFF80000000000000000000000000000000000000000000000000000FC00000
+0000003800000007000000000001C00007000000000000000000000000000000000000000E000000
+000000000000000000000000FFFC3FFFFFFF8003FFFFFFFE1FFF0000000000000000000000000000
+0000000000000000000000000FC000000000003800000007000000000001C0000700000000000000
+0000000000000000000000001F0000000000000000000000000000003FFE1FFFFFFF8003FFFFFFFC
+3FFC00000003FFFF80000000000000000000000000000000000000000FC000000000003800000007
+000000000001C0000F000000000000000000000000000000000000003F000007E000000000000000
+000070001FFF07FFFFFF8003FFFFFFF87FF800000007FFFFE0000000FFFFE0000000000000000000
+000000000FC000000000003C00000007800000000001C0000E000000000000000000000000000000
+000000007E00007FFE000000FFF000000000F0000FFF83FFFFFFC003FFFFFFE0FFF00000000FFFFF
+F8000001FFFFFC00000E000000000000000000000FC000000000003C00000003800000000001C000
+0E00000000000000000000000000000000000001FE0003FFFFC0000FFFFE00000001F00007FFE1FF
+FFFFF007FFFFFFC1FFE0007800FFFFFFF8300001FFFFFE00003F000000700000000000000FC00000
+0000001C00000003800000000001C0000E00000000000000000000000000000000000003FE000FFF
+87F0003FFE0780000003F00003FFF0FFFFFFFFFFFFFFFF83FFC000F801FFFFFFFCF8003FFFFFFF0E
+003F000000F80000000000000FC000000000001C00000003C00000000000E0000E00000000000000
+000000000000000000000007FE001FFC01F8007FF001C0000007F00001FFF87FFFFFFFFFFFFFFF07
+FF8001FC03FFFFFFFFF8007FFFFFFF9F007F000001F80000000000000FC000000000001C00000001
+C00000000000E0000E00000000000000000000000000000000000007FC003FE0007C00FFC000E000
+000FF00000FFFC3FFFFFFFFFFFFFFE0FFF0003FC03FFFFFFFFFC00FFFFFFFFFF807F800001FC0000
+000000000FC000000000001E00000001E00000000000E0000E000000000000000000000000000000
+0000000FFC007FC0003C01FF00007000000FE000007FFE1FFFFFFFFFFFFFFC3FFE0003FC07FDFFFF
+FFFC00FFFFFFFFFF807F800003FC0000000000000FC000000000001E00000001E00000000000E000
+0C0000000000000000000000000000000000001FFC00FFC0001E03FE00007000001FE000003FFF0F
+FFFFFFFFFFFFF07FFC0003FC07F8003FE7FC00FF3FFFFFFF00FF000003FC0000000000000FC00000
+0000000E00000000E00000000000E0001C00000000001FFFFFFEF000000000000000007FF800FF80
+001F07FC00003800003FE000001FFF83FFFFFFFFFFFFE0FFF80003FC07F8000007FC01FF001F7EFF
+80FF000003F80000000000000FC000000000000E00000000F00000000000E0001C00000000001FFF
+FFFFFF80000000000000007FF801FE00000F07FC00003800007FC000001FFFC1FFFFFFFFFFFFC1FF
+F00003FC07F8000007FC01FF000000FF80FF000007F80000000000000FC000000000000E00000000
+700000000000E0001C00000000003FFFFFFFFF8000000000000000FFF803FE00000F8FF800001C00
+00FFC000000FFFE0FFFFFFFFFFFF83FFE00007FC0FF8000007F801FF000000FF80FF000007F80000
+000000000FC000000000000F00000000780000000000E0001C00000000007C00FFFFFFC000000000
+000001FFF003FC0000078FF000001C0001FF80000007FFF8FFFFFFFFFFFF07FFC00007FC0FF80000
+07FC01FF000000FF00FF000007F80000000000000FC0000000000007000000007800000000006000
+1C00000000007800000007C000000000000003FFF007F80000079FE000001C0003FF80000003FFF8
+3FFFFFFFFFFE0FFFC00007F80FF8000007F801FF000000FF00FF000007F80000000000000FC00000
+00000007000000003C000000000060001C00000000007800000007C000000000000007FFF007F800
+00079FE000001C0007FF80000001FFFE1FFFFFFFFFFC1FFF000007F80FF0000007F801FE000000FF
+00FF000007F80000000000000FC0000000000007800000003C000000000070003C0000000000F000
+000003800000000000000FFFE007F80000079FE000001C000FFF00000000FFFF0FFFFFFFFFF83FFF
+000007F80FF0000007F801FE000000FF00FF000007F80000000000000FC000000000000380000000
+1E00000000007000380000000000F000000007800000000000001FFFE007F0000007BFC000001C00
+1FFF000000007FFF87FFFFFFFFE0FFFE000007F80FF0000007F801FE000000FF00FF000007F80000
+000000000FC0000000000003800000001E00000000007000380000000001E0000000070000000000
+00003FFFE007F00000071FC000001C003FFF000000003FFFC1FFFFFFFFC1FFFC000007F80FF00000
+07F801FE000000FF00FF000007F80000000000000FC0000000000003C00000000F00000000007000
+380000000003E000000007000000000000007F9FE00FF000000F1FC000001C007FFE000000001FFF
+F0FFFFFFFF87FFF8000007F80FF0000007F801FE000000FF01FF000007F00000000000000FC00000
+00000001C00000000700000000007000380000000003C00000000F00000000000000FF1FC00FF000
+000F1FC000001C01FFFE000000000FFFF87FFFFFFF0FFFF0000007F80FF000000FF801FE000000FF
+01FE00000FF00000000000000FC0000000000001E000000007800000000070003800000000078000
+00000E00000000000001FE3FC007F000001E1FC000003C03F9FE0000000007FFFC3FFFFFFC1FFFE0
+000007F80FF000000FF801FE000001FF01FE00000FF00000000000000FC0000000000001E0000000
+03C000000000700038000000000F800000001E00000000000003FC3F8007F800003E1FC000007807
+F1FE0000000003FFFE0FFFFFF87FFFC0000007F80FF000000FF801FE000001FF01FE00000FF00000
+000000000FC0000000000000E000000001E000000000700078000000001F000000001C0000000000
+0007F87F8007F800007C0FE00000780FE3FC0000000001FFFF87FFFFE0FFFF80000007F80FF00000
+0FF001FE000001FE01FE00000FF00000000000000FC0000000000000F000000001E0000000003000
+70000000001E000000001C0000000000001FF07F8007FC0000FC0FE00001F01FC3FC0000000000FF
+FFC1FFFFC1FFFF0000000FF00FF000000FF001FE000001FE01FE00000FF00000000000000FC00000
+000000007000000000F000000000380070000000003C000000003C0000000000003FE07F8003FE00
+01F80FF00003E07F83FC00000000007FFFF0FFFF07FFFE0000000FF00FF000000FF001FC000001FE
+00FE00000FE00000000000000FC00000000000007800000000780000000038007000000000780000
+0000380000000000007FC0FF0003FF0007F007F80007E0FF07F800000000003FFFF83FFC0FFFFC00
+000007E007F000000FE001FC000001FE00FF00000FE00000000000000FC000000000000078000000
+003C0000000038007000000000F80000000078000000000001FF80FF0001FF803FE003FC001FC1FE
+07F800000000001FFFFE07F03FFFF800000007C007FF00000FE001FE000001FC00FFFFFF8FC00000
+000000000FC00000000000003C000000001E0000000038007000000000F000000000700000000000
+03FF00FE0001FFFFFFE003FF807FC3FC07F800000000001FFFFF00007FFFF0000000000007FFFFFF
+E7C001FFFFFFF1F8007FFFFFFF800000000000000FC00000000000003C000000001F000000003800
+7000000001E000000000F0000000000007FE01FE0001FFFFFFC003FFFFFF8FF80FF800000000000F
+FFFFC001FFFFE0000000000003FFFFFFF80000FFFFFFFFE0007FFFFFF8000000000000000FC00000
+000000001E000000000F8000000038006000000003C000000000F0000000000007FE01FE0003FFFF
+FFC003FFFFFFFFF00FF0000000000007FFFFF007FFFFE0000000000003FFFFFFFC0000FFFFFFFF80
+003FFFFFFC000000000000000FC00000000000001E0000000007C000000038006000000007800000
+0001E000000000001FFC03FE0007FFFFFFE007FFFBFFFFF01FF0000000000003FFFFFF3FFFFFC000
+0000000001FFFFFFFC0000FFFFFFFF80003FFFFFFC000000000000000FC00000000000000F000000
+0003E00000001800E00000000F0000000001E000000000003FF003FE000FFFF0FFE01FFF803FFFE0
+1FF0000000000001FFFFFFFFFFFF8003F000000001FFFFFFFC0000FFFFFFFF80001FFFFFFC000000
+000000000FC00000000000000F0000000001F00000001C00E00000003E0000000003C00000000000
+3FE003FC001FFFC007F83FFC001FFFC01FF0000000000001FFFFFFFFFFFF0007FC0000E000FFFFFF
+FE0001FFFFFFFF80000FFFFFFFC00000000000000FC0000000000000078000000000780000001C00
+E00000007E0000000003C000000000001F0007FC003FFE0001FFFFF8000FFFC03FF0000000000000
+FFFFFFFFFFFE000FFE0001F0007FFFFFFFE003FFFFFFFFF80003FFFFFFE00000000000000FC00000
+000000000780000000007C0000001C00E0000000F80000000007800000000000000007FC007FF800
+007FFFE0001FFFC07FFC0000000000007FFFFFFFFFFE001FFF0003F0001FFFFFFFF003FFFFFFFFFC
+000001840FF00000000000000FC000000000000003C0000000001E0000001C00E0000001F0000000
+000F000000000000000007F800FFE000003FFFC0003FFFFFFFFFFFF8000000003FFFFFFFFFFC001F
+FF0007F80000000007F803FFFFFFFFFE000000000FF00000000000000FC000000000000001E00000
+00001F8000001C00E0000003F0000000000F00000000000000000FF801FFC000001FFF00007FFFFF
+FFFFFFFC000000001FFFFFFFFFF80037FB8007F80000000007F807FE000000FE000000000FF00000
+000000000FC000000000000001E00000000007E000001C01C000000FC0000000001E000000000000
+00000FF803FF8000001FFF0000FFFFFFFFFFFFFC000000001FFFFFFFFFF00037F98007F800000000
+07F807FC000000FF000000000FF00000000000000FC000000000000000F00000000003F000001C01
+C000003F80000000001E00000000000000000FF803FF0000001FFE00007FFFFFFFF0000000000000
+0FFFFFFFFFE00037F98007F80000000007F807FC000001FF000000000FF00000000000000FC00000
+0000000000F00000000000FC00001E01C000007E00000000003C00000000000000001FF807FE0000
+001FFC0000007F80FFE000000000000007FFFFFFFFC00037F18007F8000000000FF807F8000001FF
+000000000FF00000000000000FC0000000000000007800000000007F00000E01C00001F800000000
+007800000000000000001FF807FE0000001FFC0000001F00FFC000000000000007FFFFFFFF800037
+F18007F8000000000FF807F8000001FF000000000FF00000000000000FC0000000000000003C0000
+0000001FC0000E01C00007E000000000007800000000000000001FF007FC0000001FF80000001E00
+FFC000000000000003FFFFFFFF800030238007F8000000000FF807F8000001FF000000000FF00000
+000000000FC0000000000000001C00000000000FF0000E01C0001FC00000000000F0000000000000
+00003FF00FF80000003FF80000001E00FFC000000000000001FFFFFFFF000038070007F800000000
+0FF807F8000001FF000000000FF00000000000000FC0000000000000001E000000000001FE000E01
+C000FE000000000001E000000000000000003FF00FF80000003FF00000000E00FF80000000000000
+00FFFFFFFE00001E0F0007F8000000000FF007F8000001FF000000000FF000000000000007C00000
+00000000000F0000000000007FE00E03C00FF8000000000003E000000000000000007FF00FF00000
+003FF00000001E00FF80000000000000007FFFFFFC00000FFE000FF8000000000FF007F8000001FE
+000000000FF00000000000000FC000000000000000078000000000001FFE1E03C0FFE00000000000
+07C000000000000000007FF00FF00000003FF00000001C01FF80000000000000003FFFFFF8000007
+F8000FF8000000000FF007F8000001FE000000001FF00000000000000FC00000000000000003C000
+0000000003FFFE03FFFF000000000000078000000000000000007FE00FF00000003FF00000001C01
+FF80000000000000001FFFFFF000000000000FF8000000000FF00FF8000001FE000000001FF00000
+000000000FC00000000000000001E00000000000007FFE03FFF80000000000000F00000000000000
+00007FE00FF00000003FF00000003801FF80000000000000001FFFFFF000000000000FF800000000
+0FF00FF8000001FE000000001FF00000000000000FC00000000000000001F00000000000000FFF03
+FFC00000000000001E000000000000000000FFE00FF00000003FF00000007801FF80000000000000
+000FFFFFE000000000000FF8000000000FF00FF8000001FE000000001FE00000000000000FC00000
+000000000000F800000000000000FF03F0000000000000003C000000000000000000FFE00FF00000
+007FF00000007001FF000000000000000007FFFFC000000000000FF8000000000FF00FF8000001FE
+000000001FE00000000000000FC0000000000000000078000000000000000F078000000000000000
+7C000000000000000000FFE007F80000007FF0000000E001FF000000000000000007FFFF80000000
+00000FF8000000000FF00FF8000001FE000000001FE00000000000000FC000000000000000003C00
+00000000000007078000000000000000F8000000000000000001FFC007F8000000FFF8000001E003
+FF000000000000000003FFFF8000000000000FF0000000000FF00FFC000001FE000000001FE00000
+000000000FC000000000000000001E0000000000000007070000000000000001F000000000000000
+0001FFC007FC000001FFFC000003C003FF000000000000000001FFFF0000000000000FF000000000
+0FF00FFFFC0001FE000000001FE00000000000000FC000000000000000000F000000000000000787
+0000000000000003E0000000000000000001FFC003FE000003FFFC0000078003FF00000000000000
+0001FFFE0000000000000FF0000000000FF00FFFFFFFC1FE000000001FE00000000000000FC00000
+0000000000000F80000000000000078F0000000000000007C0000000000000000003FF8003FF0000
+0FE7FE00000F0003FF000000000000000000FFFE0000000000000FF0000000000FF00FFFFFFFF1FE
+000000001FE00000000000000FC0000000000000000007C0000000000000078F0000000000000007
+80000000000000000003FF8001FFC0001F03FF00001E0003FE0000000000000000007FFC00000000
+00000FF0000000000FF00FFFFFFFFBFE000000001FE00000000000000FC0000000000000000001E0
+000000000000078F000000000000001F80000000000000000003FE0000FFF800FE00FFC000780007
+FC0000000000000000007FF80000000000000FE0000000000FE00FFFFFFFFFFE000000001FC00000
+000000000FC0000000000000000001F0000000000000078E000000000000001E0000000000000000
+0003FC00007FFFFFF0007FF001F00007F80000000000000000003FF000000000000007E000000000
+0FE00FFFFFFFFFFC000000001FC00000000000000FC0000000000000000000FC000000000000038E
+000000000000003C00000000000000000003E000001FFFFFC0001FFE0FE00007E000000000000000
+00000FC000000000000007C0000000000FC007FFFFFFFFFC000000000F800000000000000FC00000
+000000000000007E000000000000038E00000000000000F80000000000000000000000000007FFFE
+000007FFFF000007C0000000000000000000000000000000000001800000000007800387FFFFFCF8
+0000000006000000000000000FC00000000000000000003F000000000000038E00000000000001F0
+0000000000000000000000000000FFF0000000FFF800000780000000000000000000000000000000
+000000000000000000000001FFFFF8000000000000000000000000000FC00000000000000000001F
+80000000000003CE00000000000003E0000000000000000000000000000000000000000000000006
+0000000000000000000000000000000000000000000000000000000003FFE0000000000000000000
+000000000FC000000000000000000007C0000000000003FE0000000000000FC00000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000FC000000000000000000003F0000000000001FC
+0000000000001F000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000000000000FC00000
+0000000000000001F8000000000001FC0000000000003E0000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000FC0000000000000000000007E00000000000070000000000000FC00
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+1F00000000000000000000000001F000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000FC0000000000000000000000F80000000000000000000000007E0000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000FC00000000000000000000003E0000000000000
+00000000001F80000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000000000000FC00000
+000000000000000001F800000000000000000000007E000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000FC000000000000000000000007E0000000000000000000000FC0000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+001F8000000000000000000003F00000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000FE00000000000000000000FE000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000003F80000000000
+000000003F8000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000FE000000000000000001FF00000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000003FE00000000000000007F8000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000FF0000000000000001FF0000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000001FF00000000000000FF800000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000007FC0000000
+00001FFE000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000FFE0000000000FFF00000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000001FFF80000003FFF8000000000
+000000000000000000000007C0000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+000000001FFFF9C0FFFFFC0000000000000000000000000003C0001FF07FE1C063FFC30083FE0000
+000FE01FF000FF0000020007F010700E00001F00100000000F800F803F801FE03FC0FF80FE01FC00
+000000000FC0000000000000000000000000000001FFFFFFFFFF8000000000000000000000000000
+07E0003FF8FFF3E0F3FFE781C7FF1E1E003FF07FF801FFC3800FFE1FF87FF87FE0E07FC03E038000
+1FF87FF07FE03FF07FF1FFE3FF03FE00000000000FC00000000000000000000000000000001FFFFF
+FFF0000000000000000000000000000007E0007FFCFFF3F0F3FFE781E7FF9E1E007FF87FF803FFE7
+801FFE3FFC7FFCFFF0F1FFE03E0780003FFC7FF8FFF07FF8FFF9FFE3FF87FF00000000000FC00000
+00000000000000000000000000003FFFF00000000000000000000000000000000FF000FFFFFFE3F8
+F1FFC781E7FFDF3E00FFFC7FF003FFC7801FFC3FFE7FF8FFF9F3FFF07F07C0003FFEFFF9FFF8FFFC
+FFF9FFC7FFCFFF00000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000000FF000FC3FFF03F8F07F07C3EFEFCFFE00F87E7E0003F007801F807C3E0FC0FC
+F9F3E1F07F07C0003F3FFFFFF9FCF87CFCF9F807E7CFCF00000000000FC000000000000000000000
+0000000000000000000000000000000000000000000000000FF000F818FF83FCF03E0783EFC7CFFC
+00F83E7C0003F007801F00780C07C0F8F9F7E060FF0780003E1FFC7FF07DF818FCFFF807E18FC000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+1FF801F800FFE3FFF03E0783EFEFC7FC01F01FFFC003FF87801FF8780007C0F8F9F7C000FF878000
+3E3FFCFFE07FF000FFFBFF87FC0FF800000000000FC0000000000000000000000000000000000000
+000000000000000000000000000000001FF801F000FFE3FFF03E0783EFFF87F801F01F7FE003FFC7
+801FFCF8000780FFF9FFC000FF87C0003FFFFFFFE07FF0F8FFF9FFC3FF0FFE00000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000003FF801F000FFE3FF
+F03E07C3EFFF83F801F01E7FF003FFC7801FFCF8000780FFF1FFC001FF87C0003FFEFFFFE03FF0FC
+FFF9FFC1FF87FF00000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000003FFC00F000FFC3FFF03E07C3EFFF83F001F01F7FE003FF87801FFCF8000780FF
+F1FFC001FFC7C0003FFCFFFFE07FF1FEFFF9FF80FFC1FF00000000000FC000000000000000000000
+0000000000000000000000000000000000000000000000003FFC00F809FC03FFF03E07C3EFFF83F0
+00F01F7E0003F007801F80F8000780FFF8FFC003FFC7C0003FF8FFFFE07FF0FEFFF9F8001FC0FF80
+000000000FE000000000000000000000000000000000000000000000000000000000000000000000
+7FFC00F81FFC03EFF03E07C3EFC7C1F000F83EFC0003F007C01F00780C07C0FDF8F3C063FFC7C000
+3FC0FDFFE07DF87EFDF9F0070FC41F80000000000FE0000000000000000000000000000000000000
+000000000000000000000000000000007FFE00FC3FFC03E7F03E07C3EF87C1F000F87E7C0003F007
+C01F007C1E0780F8F9F3E0F3FFE7C0003F00F87FF0FCF87EF8FBF00787CF8F80000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000007FFE007FFFFFF3E3
+F03E07E7EF87C1E0007FFC780003FFC7FE1FF87E3E07C0F879F3F3F7FFE7FF003E00F87FFFF8FFFE
+F87FFFC7FFCFFF00000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000007C7E007FFCFFF3E3F03E03FFC783C1E0007FF8780001FFE7FF9FFE3FFE0780F8
+78F1FFE7C3E7FF803E00F87CFFF87FFEF87FFFE7FFCFFF00000000000FC000000000000000000000
+000000000000000000000000000000000000000000000000783E001FF8FFF3C1F01C01FFC78381E0
+003FF8780001FFE7FF9FFE1FFC0780F078F0FFE7C1E7FF801E00783C7FF03FFCF079FFE3FF87FF00
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+301C000FF07FF180F01C00FF030100E0001FE0300000FFC3FF1FFE0FF803007030607FC380C3FF00
+1C0070383FE01FFC6010FFC1FF03FE00000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000040000000000003800000000000
+00006003E000000000001F00000000000000000007800380000000003800F000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000000000000FC00000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000FC00000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000000000000000000000000000000000000000000000000000FC000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000000000000000
+000000000FC000000000000000000000000000000000000000000000000000000000000000000000
+7FFFFFFFFFFFFF39CF800008008087C0000000000000000000000000000000000000000200000000
+0000000000000E01EFFDFFFFFFFFFE00000000000FC0000000000000000000000000000000000000
+00000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000FC00000
+0000000000000000000000000000000000000000000000000000000000000000FFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFF00000000000FC00000000000000000000000000000000000000000000000000000
+0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000FC000000000000000000000
+000000000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00
+0000000007C000000000000000000000000000000000000000000000000000000000000000000000
+1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFE7FF8000000000000180000000000000000000000000000000000000
+00000000000000000000000000000000000000000000000000000000000000000000001000000000
+000018000000000000000000000000200010003C0000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+>}imagemask
+showpage
diff --git a/macros/inrstex/inrsinputs/inrslogo.tex b/macros/inrstex/inrsinputs/inrslogo.tex
new file mode 100644
index 0000000000..483eb81ec1
--- /dev/null
+++ b/macros/inrstex/inrsinputs/inrslogo.tex
@@ -0,0 +1,58 @@
+%-*-tex-*-
+%======== macros for the INRS address logo/letterhead =====
+
+\def\ppa{\beginsegment \absoluteposition
+\lvec h:.4 v:0
+\lvec h:.2 v:.8
+\lvec h:-.2 v:.8
+\pfill p:0
+\endsegment
+}
+
+\def\ppb{\beginsegment \absoluteposition
+\lvec h:.4 v:0
+\lvec h:.1 v:1.2
+\lvec h:-.3 v:1.2
+\pfill p:0
+\endsegment
+}
+
+\def\inrslogo h:#1 v:#2 sc:#3 {\beginsegment
+\penwidth .005
+\move h:#1 v:#2
+\unitscale #3
+\relative
+\ppa
+\move h:.48 v:0
+\ppa
+\move h:.48 v:0
+\ppb
+\endsegment}
+\font\inrsaddfont = cmcsc10
+\font\eightrm = cmr8
+\def\inrsadd{\vbox{\hsize 5in \baselineskip=9pt \parskip=0pt
+ \leftline{\eightrm Universit\'e du Qu\'ebec}
+ \vskip 3pt
+ \leftline{\inrsaddfont Institut national de la recherche
+ scientifique}
+ \vskip 6pt
+ {\eightrm \obeylines \parindent=0pt
+ 3, place du Commerce \par
+ Ile-des-Soeurs\par
+ Verdun, Qu\'ebec\par
+ Canada \qquad H3E 1H6\par
+ T\'el\'ephone: \tele \par}
+ \vskip 6pt
+ \leftline{\inrsaddfont INRS-T\'el\'ecommunications}
+ }}
+
+
+\def\inrslogoadd h:#1 v:#2 {\btg\inrslogo h:#1 v:#2 sc:.3
+ \beginsegment
+ \move h:0 v:0 \tbox {\inrsadd}
+ \endsegment\etg}
+
+\def\inrsaddform{\titlepagestyle\finalversion
+ \inrslogoadd h:-.5 v:0 }
+
+\def\tele{(514) 765-7834} \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/inrssl.tex b/macros/inrstex/inrsinputs/inrssl.tex
new file mode 100644
index 0000000000..925a824779
--- /dev/null
+++ b/macros/inrstex/inrsinputs/inrssl.tex
@@ -0,0 +1,147 @@
+% PostScript slide form
+% \genform Aug 1991
+% Toulson/Beebe PS driver
+% ====== simple viewgraph box =======
+\catcode`\@=11
+\def\hviewbox{\beginsegment
+ \unitscale {\f@ormscale}
+ \slidelogo
+ \topform
+ \botform
+ \move h:0 v:.4
+ \penwidth .05
+ \lvec h:8.9 v:.4
+ \lvec h:8.9 v:6.9
+ \move h:0 v:.4
+ \lvec h:0 v:6.9
+ \move h:.15 v:6.9
+ \larc r:.15 sd:90 ed:180
+ \move h:.15 v:7.05
+ \lvec h:8.75 v:7.05
+ \move h:8.75 v:6.9
+ \larc r:.15 sd:0 ed:90
+ \endsegment}
+% ======= Slide Utilities ======
+% Horizontal form
+\newtoks\slidetitle
+\newdimen\slhsize \newdimen\slvsize
+\long\def\sltitle#1{\vglue .03\slvsize \global\slidetitle={#1}
+ \vbox to 0pt{\hsize=\slhsize \rightskip=.1\hsize plus 1fill
+ \def\cr{\endgraf}\leftskip= .1\hsize plus 1fill\gbfont\gbbaselines
+ \parskip=1ex \parindent=0pt#1\vss}}
+\def\shk{\showthe\leftskip\showthe\rightskip}
+\let\shk=\relax
+\long\def\slidebox #1#2{\vbox to \slvsize{\hsize \slhsize
+ \grfont\parindent=0pt
+ \grbaselines\parskip=2.8ex \advance\rightskip by 0pt plus 1fil
+ \sltitle{#1}\vfill\advance\rightskip by .05\hsize
+ \advance\leftskip by .05\hsize
+ #2\vfill}}
+
+\def\bl{\beginlist \samplemark{$\bullet$}} % modifies default
+\def\lb{\li {$\bullet$} }
+\def\lc{\li {$\circ$} }
+\def\last{\li {$\ast$} }
+\def\hd#1{\vskip 1ex\vbox{\veryraggedright\hangindent1em\hangafter1
+ \noindent\bigfont#1}\vskip 1ex }
+
+
+% ===== slide building macros =======
+% A slide lives in either a textform or fullsize form. The defaault is
+% Fullsize. Text form reduces the size and gives a chance to add background
+% Material with the slide.
+
+\newif\iftextform
+\gdef\inrsform{\message{<< INRSFORM >>}\input inrslogo\relax \gdef\slidelogo{\i@nrsform}
+ \gdef\topform{}\gdef\botform{}}
+\gdef\i@nrsform{\inrslogo h:.2 v:0 sc:.25
+ \move h:8.9 v:.1 \textref h:R v:C
+ \rstext d:0 sc:{\f@ormscale} t:{\bf INRS-T\'el\'ecommunications} }
+\newtoks\topdata
+\newtoks\botdata
+\newtoks\slidedate
+\gdef\genform{\message{<< General FORM >>}
+ \gdef\slidelogo{\topform}\gdef\topform{\move h:0 v:.15 \textref h:L v:C
+ \rstext d:0 sc:{\f@ormscale} t:{\borderfont\the\topdata} }
+ \gdef\botform{\move h:4.45 v:7.25
+ \textref h:C v:C
+\rstext d:0 sc:{\f@ormscale} t:{\borderfont \the\botdata\ -- \the\slidedate} }}
+
+\newcount\textfontscale % computed inside textform
+\gdef\textform{\message{<< Text Size >>}\long
+ \gdef\comment##1//{\rm ##1}\textformtrue\gdef\slidescale{.578}
+ \textfontscale=\the\fullfontscale \relax
+ \multiply\textfontscale by 1000
+ \divide\textfontscale by 1728
+ \fontset scaled {\the\textfontscale}
+ \textformfonts
+ \let\borderfont=\txborderfont
+ \textpagestyle
+ \slvsize = 9.84cm \slhsize = 12.5cm
+ \gdef\tfb{\bigskip\filbreak}}
+\newcount\fullfontscale % set in defaults
+\gdef\fullform{\message{<< Full Size >>}
+ \long\gdef\comment##1//{}\textformfalse\gdef\slidescale{1}
+ \fontset scaled {\the\fullfontscale}
+ \fullformfonts
+ \let\borderfont = \fxborderfont
+ \finalversion
+ \documentstyle{
+ \leftmargin=.6in
+ \nofooterstyle
+ \vfootersize=0pt }
+ \slvsize=17cm \slhsize=21.5cm
+ \let\tfb=\relax}
+
+\long\gdef\hhslide#1#2{\btg
+ \segmentscale {\slidescale}
+ \move h:0.2 v:.4 \textref h:L v:T
+ \rstext d:0 sc:{\f@ormscale} t:{\slidebox{#1}{#2}}
+ \move h:0 v:0 \hviewbox
+ \etg}
+\gdef\formscale #1 {\gdef\f@ormscale{#1 }}
+\gdef\smalldot{\setbox0=\hbox{\hskip .4in\fiverm.}\wd0=0pt\ht0=0pt\dp0=0pt\box0}
+\long\gdef\hslide #1//#2//{\advance\slidenum by 1 \relax
+ \begingroup\tfb\documentstyle{\genpoint}\bf \let\hslide=\slideerr
+ \iftextform\centergraph{\hhslide{#1}{#2}}\bigskip \else
+ \btg
+ \move h:0 v:8.9
+ \vtext {\hhslide{#1}{#2}}
+ \move h:7 v:8.8
+ \etg
+ \smalldot\ejectpage\fi\endgroup}
+% ====== Error forms ========
+% This attempts to find a misplaced // gracefully
+\newcount\slidenum
+\ifnum\language=0 \edef\s@lmiss{Probable Missing or Extra // in Slide Num. }
+ \else
+ \edef\s@lmiss{Probable Missing or Extra // in Slide Num. }
+ \fi
+\gdef\slideerr{\message{<<\s@lmiss\the\slidenum>>}}
+
+% ====== TexGraph Defaults ========
+\ifundefined{textref}
+ \begingroup \catcode`\^=7 \input texgraph \endgroup \fi
+
+% ==== text form page style =====
+\gdef\textpagestyle{}
+
+% ====== Font Defaults =========
+\input spfont \relax
+\gdef\textformfonts{\font\gffont= cmcsc10 scaled 667 }
+\gdef\fullformfonts{\font\gffont = cmcsc10 scaled 1440 }
+\fullfontscale = 2074
+\font\fxborderfont = cmbx10 scaled 1728
+\let\txborderfont = \tenbfx
+
+% ==== slide default =====
+\slidenum=0
+\gdef\gbfont{\bigfont}
+\gdef\gbbaselines{\baselineskip = 2.8ex\lineskip=1pt\lineskiplimit=0pt}
+\gdef\grfont{\bf}
+\gdef\grbaselines{\baselineskip=2.8ex\lineskip=1pt\lineskiplimit=0pt}
+\formscale 1
+%====== end defaults =====
+
+\catcode`\@=12
+
diff --git a/macros/inrstex/inrsinputs/inrssty.tex b/macros/inrstex/inrsinputs/inrssty.tex
new file mode 100644
index 0000000000..2a68c0e36a
--- /dev/null
+++ b/macros/inrstex/inrsinputs/inrssty.tex
@@ -0,0 +1,30 @@
+
+% this assumes the basic paperstyle of INRSTeX and only defines macros for
+% covers
+% INRS Report cover Macros
+\newtoks\titrederapport \titrederapport = {Titre de Rapport}
+\newtoks\numeroderapport \numeroderapport = {Numero de Rapport}
+\newtoks\datederapport \datederapport = {Date de Rapport}
+\newtoks\auteursderapport \auteursderapport = {Auteurs de Rapport}
+\newtoks\titrespecial \titrespecial = {}
+\def\faitepagetitre{\begingroup \leftmargin=1.75in
+ \fullpagestyle
+ \vglue 3.8cm
+ \line{\hss\vbox{\hsize=8cm\twelvebfxsca\lineskip=2pt
+ \paragraphcenterline \the\titrederapport
+ \medskip \it
+ \the\auteursderapport}\hskip 3.4cm}
+ \vfill
+ \centerline{\vbox{\hsize=10cm \it\paragraphcenterline
+ INRS-T\'el\'ecommunications \cr
+ 3 Place du Commerce \cr
+ Ile des Soeurs, Qu\'e. \cr
+ CANADA H3E 1H6 }}
+ \vskip 2.5cm
+ \centerline{\the\datederapport}
+ \vfill
+ \centerline{Rapport technique de
+ l'INRS-T\'el\'ecommunications no. \the\numeroderapport}
+ \medskip
+ \the\titrespecial
+ \ejectpage\endgroup}
diff --git a/macros/inrstex/inrsinputs/inrstemp.tex b/macros/inrstex/inrsinputs/inrstemp.tex
new file mode 100644
index 0000000000..fe550dde86
--- /dev/null
+++ b/macros/inrstex/inrsinputs/inrstemp.tex
@@ -0,0 +1,11 @@
+
+% this assumes the basic paperstyle of INRSTeX and only defines macros for
+% covers
+% INRS Report cover Macros
+\titrederapport = {Titre de Rapport}
+\numeroderapport = {Numero de Rapport}
+\datederapport = {Date de Rapport}
+\auteursderapport = {Auteurs de Rapport}
+\titrespecial = {}
+
+\faitepagetitre \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/oldspace.tex b/macros/inrstex/inrsinputs/oldspace.tex
new file mode 100644
index 0000000000..d00be1801f
--- /dev/null
+++ b/macros/inrstex/inrsinputs/oldspace.tex
@@ -0,0 +1,2 @@
+\def\spacing#1{\setbox0=\vbox{\vskip 2.8ex} \baselineskip #1\ht0
+ \lineskip=1pt\lineskiplimit=0pt} \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/papersty.tex b/macros/inrstex/inrsinputs/papersty.tex
new file mode 100644
index 0000000000..417aafcdad
--- /dev/null
+++ b/macros/inrstex/inrsinputs/papersty.tex
@@ -0,0 +1,19 @@
+% see english.tex and francais.tex for messages
+\def\paperstyle{\documentstyle{\vouterpagesize = 9.25in
+ \houterpagesize = 6.0in
+ \topmargin = 1in
+ \leftmargin = 1.25in
+ \vheadersize = 0pt
+ \vfootersize = .35in
+ \headertext{} \specialheadertext{}
+ \footertext{\centerline{- \folio\ -}}
+ \let\specialfootertext = \footertext
+ \leftskip=0pt
+ \rightskip=0pt
+ \tenpoint
+ \noheaderstyle
+ \normalfooterstyle
+ \numberbysection
+ \specialnumberscontinuous}}
+
+\paperstyle \ No newline at end of file
diff --git a/macros/inrstex/inrsinputs/spfont.tex b/macros/inrstex/inrsinputs/spfont.tex
new file mode 100644
index 0000000000..ecf578ed5b
--- /dev/null
+++ b/macros/inrstex/inrsinputs/spfont.tex
@@ -0,0 +1,79 @@
+\catcode`\@=11
+% --------- This is the "cm" version --------
+% a family is produced by redefining the special font forms in
+
+% \genpoint ... the names reflect the base fonts
+
+
+\def\rescale #1#2{\count255=#1\multiply\count255 by #2\relax
+ \divide\count255 by 100
+ \advance\count 255 by 5 % rounding
+ \divide\count 255 by 10 }
+
+\def\fontset scaled #1 {
+\font\tensprm =cmr10 scaled #1
+\font\sevensprm = cmr7 scaled #1
+\font\fivesprm = cmr5 scaled #1
+\font\tenspi = cmmi10 scaled #1
+\font\sevenspi = cmmi7 scaled #1
+\font\fivespi = cmmi5 scaled #1
+\font\tenspsy = cmsy10 scaled #1
+\font\sevenspsy = cmsy7 scaled #1
+\font\fivespsy = cmsy5 scaled #1
+\font\tenspit = cmti10 scaled #1
+\font\tenspsl = cmsl10 scaled #1
+\font\tenspbfx = cmbx10 scaled #1
+\font\sevenspbfx = cmbx7 scaled #1
+\font\fivespbfx = cmbx5 scaled #1
+\font\tensptt = cmtt10 scaled #1
+\font\tenspex = cmex10 scaled #1
+\def\tenspscsm{\rescale {800}{#1}
+ \font\t@enspscsm = cmcc10 scaled \the\count255\relax
+ \let\tenspscsm=\t@enspscsm\tenspscsm}
+\def\tensprmbig{\rescale {1200}{#1}
+ \font\t@ensprmbig = cmr10 scaled \the\count255\relax
+ \let\tensprmbig=\t@ensprmbig\tensprmbig}
+\def\tenspbfxbig{\rescale {1200}{#1}
+ \font\t@enspbfxbig = cmbx10 scaled \the\count255\relax
+ \let\tenspbfxbig=\t@enspbfxbig\tenspbfxbig}
+\def\tenspbfxbigg{\rescale {1440}{#1}
+ \font\t@enspbfxbigg = cmbx10 scaled \the\count255\relax
+ \let\tenspbfxbigg=\t@enspbfxbigg\tenspbfxbigg}
+\def\tensprmbigg{\rescale {1440}{#1}
+ \font\t@ensprmbigg = cmr10 scaled \the\count255\relax
+ \let\tensprmbigg=\t@ensprmbigg\tensprmbigg}
+ \let\tensprmbiggg = \tensprmbigg }
+
+\def\genpoint{\def\rm{\fam0\tensprm}%
+ \textfont0=\tensprm \scriptfont0=\sevensprm \scriptscriptfont0=\fivesprm
+ \textfont1=\tenspi \scriptfont1=\sevenspi \scriptscriptfont1=\fivespi
+ \textfont2=\tenspsy \scriptfont2=\sevenspsy \scriptscriptfont2=\fivespsy
+ \textfont3=\tenspex \scriptfont3=\tenspex \scriptscriptfont3=\tenspex
+\def\it{\fam\itfam\tenspit}%
+\textfont\itfam=\tenspit
+\def\sl{\fam\slfam\tenspsl}%
+\textfont\slfam=\tenspsl
+\def\bf{\fam\bffam\tenspbfx}%
+ \textfont\bffam=\tenspbfx \scriptfont\bffam=\sevenspbfx
+\scriptscriptfont\bffam=\fivespbfx
+\def\tt{\fam\ttfam\tensptt}%
+\textfont\ttfam=\tensptt
+\tt \ttglue=.5em plus .25em minus .15em
+\def\normalbaselines{\baselineskip 2.8ex \lineskip 1pt \lineskiplimit \z@}%
+\setbox\strutbox=\hbox{\vrule height 2.32ex depth .48ex width\z@}%
+\normalbaselines\rm
+ \ifd@ocsty \let\footerfont =\tenspit
+ \let\headerfont=\tenspit
+% \let\footnotefont = \smallpoint
+% \let\smallerfont = \smallpoint
+ \def\cheadfont{\tensprmbigg}\relax
+ \def\sheadfont{\tenspbfxbig}\relax
+ \def\ssheadfont{\tenspbfx}\relax
+ \def\sssheadfont{\tenspbfx}\relax
+ \def\dsssheadfont{\tenspbfx}\relax
+ \setspacings \fi
+\def\bigfont{\tenspbfxbig}\def\biggfont{\tenspbfxbigg}\relax
+\def\bigggfont{\tenspbfxbiggg}\let\titlefont = \biggfont
+ \let\sc=\tenspccsm }
+
+\catcode`\@=12
diff --git a/macros/inrstex/inrsinputs/texgraph.tex b/macros/inrstex/inrsinputs/texgraph.tex
new file mode 100644
index 0000000000..14c065d753
--- /dev/null
+++ b/macros/inrstex/inrsinputs/texgraph.tex
@@ -0,0 +1,859 @@
+% DVIPS version
+
+% included are the changes required to make it work with DVIPS
+% It should be modifiable to any other decent driver too
+
+% This is the complete texgraph macros ... for use with the INRS/Beebe
+% Postscript driver
+
+% This is the INRSTEX version
+
+% Graphics macros for TeX using POSTCRIPT
+
+% ----- Needs mod to count characters in special ... some drivers have an
+% input limit of 500 characters in a \special
+
+
+% ===============================================================
+% THIS VERSION IS FOR USE with a PostScript Driver with
+% \p@sfile to signal a file name
+% \p@sinline to signal inline PostScript
+% processes \specials and dvi commands in order.
+% does not place a (save restore) pair about a \special.
+%
+% \printhv defines scale/directions for inline Postscript
+% \filehv defines scale/directions for file Postscript
+%
+% Both INRS's modification of Beebe's DVIALW and ArborText's PostScript
+% drivers satisfy these minimal requirements.
+
+% It assumes that the underlying units are 300 pix/in
+% Standard PostScript Conventions
+% This is easily changed by changing the \hpix or \vpix
+% It assumes that x,y are in the "normal" up/left direction.
+
+% File inclusions require the existence of a bounding box for the correct
+% spacing to be left.
+
+% ===============================
+% Most arguments, excepting file names, are delimited by spaces. Thus
+% braces { .... } will usually only occur around inserted text ... which
+% still must be followed by a space or end of line.
+
+
+% ======================
+
+\catcode`\@=11
+
+% =============== Driver Signal Forms =======================
+
+%\xdef\p@sfile{ps: } % file signal INRS DVIALW
+ \xdef\p@sfile{ps: plotfile } % file signal DVIPS
+\xdef\p@sinline{ps:: } % inline signal DVIPS ... INRS DVIALW
+
+% This translates the direction of the page if the printer assumptions
+% are different than TeX. The values should be +-1.
+\gdef\printhv #1 #2 {\gdef\p@hv{ #1 #2 scale }}
+\gdef\filehv #1 #2 {\gdef\f@schv{ #1 #2 scale }}
+\gdef\rtdir #1 {\gdef\r@tdir{ #1 }} % neg or nothing PS has no pos
+
+
+
+
+
+% ============== LateX support =================
+
+%\newenvironment{TeXgraph}{\btg}{\etg}
+
+% This is the only change between the LateX and INRSTeX versions
+
+% ======= Simple Plotfile support ===========
+
+% These are vanilla forms for inserting an encapsulated PostScript file
+% or creating a centered graphics environment.
+
+% \centergraph needs to be very \long
+
+\long\gdef\centergraph#1{\hbox to
+ \hsize{\hss\vbox{#1\vgraphskip}\hgraphskip\hss}}
+\gdef\centerplotfile#1{\centergraph{\btg\includefile {#1} \etg}}
+
+
+% if you use the Latex command to create the new texgraph environment,
+% then you will automatically be "inside" Texgraph. This
+% means that you should use such commands as
+% \includefile \incscmvfile \incscfile
+
+
+
+
+% ========= error messages =========
+% \language=0 -- English, 1 - French
+\ifnum \language=0 \message{<< WARNING -- TeXGraph needs DVIPS >>}
+ \xdef\bbmess{Searching for BoundingBox }
+ \xdef\incfile{Graphics file}
+ \xdef\badincfile{Size/Format Error in Graphics File}
+ \xdef\noincfile{Missing Graphics File}
+ \else
+ \message{<< AVERTISSMENT -- TeXGraph a besoin du DVIPS >>}
+ \xdef\bbmess{Searching for BoundingBox }
+ \xdef\incfile{Graphics file}
+ \xdef\badincfile{Size/Format Error in Graphics File}
+ \xdef\noincfile{Missing Graphics File}
+ \fi
+
+% ===== debugging code =====
+% will send out specials as messages
+\gdef\dmess #1{}
+\gdef\bmess #1{}
+
+% ======== \global\newif =======
+% Plain defines the \newif as a local variable. We need a global
+% version if TeXgraph is to be brought in while inside a group.
+% This is a simpler, but less elegant version of \newif
+
+%#1 is \if<..> #2 -...true #3 ...false
+\gdef\gnewif#1#2#3{\global\let#1=\iffalse \gdef#2{\let#1=\iftrue}\relax
+ \gdef#3{\let#1=\iffalse}}
+
+% ======== TeXGraph Macros ==========
+
+% Postcript allows for arbitrary translation, scaling, rotation and clipping.
+% This version saves the current segment scale(s), unit scale(s), rotation
+% and translation and painfully computes and retores the correct form after
+% a segment exit. The reason for this is that Postcript can stack only one
+% CTM, text needs to have correct rotation and translation but default
+% scaling ...
+
+% It would be preferable not to convert any of the units. However, it is
+% necessary to know the maximum excursions. Since the PS currentpoint is
+% not accessible to TeX, we must keep it ourselves.
+% Since negative numbers can be used both maximum and minimum excursions
+% are required.
+
+
+% ====== begin -- end graphics =======
+
+% The maximum and minimum extent in the h and v direction is recorded
+% and is accessible
+% at the end of a \btg \etg pair (in points). The same value, in pixels is accessible at
+% all times
+\newcount\maxhpospix
+\newcount\maxvpospix
+\newcount\minhpospix
+\newcount\minvpospix
+\newdimen\hgraphsize
+\newdimen\vgraphsize
+
+\gdef\vgraphskip{\vskip\vgraphsize}
+\gdef\hgraphskip{\hskip\hgraphsize}
+
+
+\gdef\beginTeXGraphics{\t@exgraphdef \i@ncgdepth
+ \vbox\bgroup\offinterlineskip
+ \h@pos=0
+ \global\maxhpospix=\h@pos
+ \global\minhpospix=\h@pos
+ \v@pos=0
+ \global\maxvpospix=\v@pos
+ \global\minvpospix=\v@pos
+ \h@segoff=\h@pos \v@segoff=\v@pos
+ \edef\o@form{}\ifnum\g@depth=1
+ \p@sinit \fi \p@sset % PS initialization
+ \s@save}
+% \s@save saves the initialization for the special output.
+% \g@save saves some local condition
+
+\gdef\endTeXGraphics{\g@raphout\egroup\maxhvpos\p@srestore \d@ecgdepth }
+\global\let\btg=\beginTeXGraphics
+\global\let\etg=\endTeXGraphics
+\global\let\btg=\beginTeXGraphics
+\global\let\etg=\endTeXGraphics
+
+% ========== TeXGraph Nesting Depth ==========
+\newcount\g@depth \global\g@depth=0 % initializes at zero
+\gdef\i@ncgdepth{\global\advance\g@depth by 1 }
+\gdef\d@ecgdepth{\global\advance\g@depth by -1 }
+
+
+
+% =========== Complete Graph Scaling ===============
+% There is a separate scaling for the horizontal, vertical, and text
+
+
+\gdef\grscale h:#1 v:#2 {\gdef\h@grsc{#1}\gdef\v@grsc{#1}\e@xtend
+ {\o@form}{#1 #2 scale }}
+
+\gdef\tgrscale #1 {\e@xtend{\o@form}{#1 #1 scale }}
+ % text scale h and v the same
+
+
+
+
+% ======== PostScript initialization =========
+%
+
+\gdef\t@exgrdictdef{/td 50 dict def }
+
+
+
+\gdef\t@exgrdictinit{ td begin /mv {moveto} def
+ /lv {lineto} def
+ /st {stroke} def
+ /np {newpath} def
+ /sl {setlinewidth} def
+ /sd {setdash} def
+ /rt {rotate} def
+ /gs {gsave} def
+ /gr {grestore} def
+ /tr {translate} def
+ /cp {closepath} def
+ /sg {setgray} def
+ /chv {currentpoint} def
+ /cv {curveto} def
+ /slc {setlinecap} def
+ /slj {setlinejoin} def
+ /sc {scale} def
+ /at {neg atan rt} def
+ /mx {mv gs chv tr} def
+% \h@vinit
+ end }
+% ----- initial point move ... driver dependent -----
+\gdef\Xpos{Xp\the\g@depth\b@}
+\gdef\Ypos{Yp\the\g@depth\b@}
+
+\gdef\h@vinit{ chv /\Ypos exch
+ def /\Xpos exch def }
+\gdef\h@vset{\t@rhv \p@hv }
+\gdef\m@vhv{ \Xpos \Ypos mv } % INRS
+\gdef\t@rhv{ \Xpos \Ypos tr } % INRS
+\gdef\t@rneghv{ \Xpos neg \Ypos neg tr } % INRS
+
+\gdef\p@sinit{\edef\e@form{\special{\p@sinline
+ \t@exgrdictdef
+ \t@exgrdictinit}}
+\gdef\p@sset{\special{\p@sinline td begin \h@vinit gs \t@rhv
+ \p@hv end }}\e@form\dmess{\e@form}}
+
+% ======== PostScript termination =========
+\gdef\p@srestore{\edef\e@form{\special{\p@sinline grestore }}\e@form
+ \dmess{\e@form}}
+ % resets to entry into TeXgraph and recovers memory
+
+%========= macros for converting dimensions/units =========
+% --------- \box0 must not be void ----------
+\global\setbox0=\hbox{}
+
+%default values
+\gdef\graphdim#1 {\gdef\g@dim{#1\relax}}
+
+%pixels /dim unit
+\newcount\h@pix % sp/pixel
+\gdef\hpix#1/#2 {\wd0=1true#2\relax
+ \h@pix=\wd0 \divide\h@pix by #1 \relax}
+\newcount\v@pix % sp/pixel
+\gdef\vpix#1/#2 {\wd0=1true#2\relax
+ \v@pix=\wd0 \divide\v@pix by #1 \relax}
+
+% Assumes #1 is dimension #2 is count in pixels, #3 sp/pix, #4 scalefactor (real)
+% #2 is returned
+\gdef\gendimtopix#1#2#3#4{\wd0=#1\dimen0=#4\wd0\relax
+ \wd0=\dimen0 #2=\wd0 \divide #2 by #3\relax}
+% #1 is returned, #5 -\global or {}
+\gdef\genpixtopt#1#2#3#4#5{\multiply #2 by #3\relax\wd0=#2sp
+ #5#1=#4\wd0\relax}
+
+% ---------- Converts maxpix to maxdim removes offset -----
+\gdef\maxhvpos{\global\advance\maxhpospix by -\minhpospix\relax
+ \genpixtopt{\hgraphsize}{\maxhpospix}{\h@pix}{\h@grsc}{\global}\relax
+ \global\advance\maxvpospix by -\minvpospix\relax
+ \genpixtopt{\vgraphsize}{\maxvpospix}{\v@pix}{\v@grsc}{\global}}
+
+
+
+% ======== The vector offsets my be relative or absolute =====
+
+\gnewif{\ifr@elpos}{\r@elpostrue}{\r@elposfalse} %default is absolute
+\gdef\absoluteposition{\r@elposfalse}
+\gdef\relativeposition{\r@elpostrue}
+\global\let\abspos=\absoluteposition
+\global\let\relpos=\relativeposition
+\global\let\absolute=\absoluteposition % historical
+\global\let\relative=\relativeposition % historical
+
+% ====== update #1 by #2 r@elpos to #3, #4 is max #5 is min=======
+\gdef\u@pdate#1#2#3#4#5{\ifr@elpos \advance #1 by #2\else
+ \advance #2 by #3\relax
+ #1=#2\fi
+ \ifnum #1>#4\global #4=#1\fi
+ \ifnum #1<#5\global #5=#1\fi
+ }
+\gdef\h@update #1{\u@pdate{\h@pos}{#1}{\h@segoff}{\maxhpospix}{\minhpospix}}
+\gdef\v@update #1{\u@pdate{\v@pos}{#1}{\v@segoff}{\maxvpospix}{\minvpospix}}
+
+% === pixel position r@elpos to initial offset starting position
+\newcount\h@pos \h@pos=0
+\newcount\v@pos \v@pos=0
+\newcount\r@ang \r@ang=0 % 1000 times degrees ?
+
+
+% ===== Check for pen up moves only =====
+% penup/down are used to determine whether a line needs to be stroked
+% when a line pattern or penwidth is changed.
+ \gnewif{\ifp@down}{\p@downtrue}{\p@downfalse}
+
+
+% ===== present segment origin and rotation ==========
+
+\newcount\h@segoff
+\newcount\v@segoff
+\newcount\r@segoff % 1000 times degrees
+
+
+\gdef\beginsegment{\g@raphout\begingroup\s@eginit}
+
+% segment initialization is a trifle messy
+\gdef\s@eginit{\h@segoff =\h@pos \v@segoff=\v@pos}
+
+
+% PS has the concept of a path that is either
+% completed with a "stroke" or "fill" ... stroking
+% at the end or beginning of a segment, the special is written out. This is
+% to ensure that the input order of the graphics reflects what entities are
+% on top of what others. Further it is assumed that the origin does not
+% change during an entire \btg ...\etg section. This means that every special
+% must first move to the point where the previous one left off. \s@save
+% defines \s@restore that restores, in case they had been modified, the line
+% width, pattern, hpos, vpos, ... and any future things that need restoration.
+% all graphic specials are ended with a stroke (st), whether it needs it not.
+
+% we need a special form to force a space after a \the\nnn form or \p@w
+
+\gdef\b@{ }
+
+\gdef\endsegment{\g@raphout\endgroup
+ \edef\o@form{}\s@save}
+\gdef\s@pout #1#2{\edef\e@form{\special{#1\s@restore\o@form#2}}\dmess{\e@form}\e@form
+ \edef\o@form{}\s@save}
+%\h@vset if there is a move before each special
+\gdef\g@raphout{\ifx\empty\o@form \else \ifp@down
+ \s@pout{\p@sinline td begin }{ st end }\fi\fi\p@downfalse}
+\global\let\graphout=\g@raphout
+
+% ====== Segment and units scaling ========
+% The units in any segment may be scaled arbitrarily. A unit scale is local
+% to a segment but affects enclosed segments unless specifically overidden
+% in that segment. In addition there is a graph or segment scale. This
+% scaling factor is accumulative and is applied on top of the unit scale.
+% These two scaling factors allow for a segment to be designed in nominal
+% units, scaled to a nominal size and then be affected by relative scaling
+% of an entire graph or segment. In addition there is a relative/absolute
+% scale switch that allows for any segment to be unaffected by a graphscale.
+
+% \u@nitsc -- present unit scale, \s@egsc -- present segment scale
+% \g@rsc -- present graphscale ... changes when ever either of the former do.
+
+% present implementation does not allow separate v h scaling
+
+% ------ Relative/Absolute Scale ------
+\gnewif{\ifr@elscale}{\r@elscaletrue}{\r@elscalefalse}
+\gdef\absolutescale{\r@elscalefalse}
+\gdef\relativescale{\r@elscaletrue}
+\global\let\abssc=\absolutescale
+\global\let\relsc=\relativescale
+
+% ----- unit scale -----
+\gdef\unitscale#1 {\edef\u@nitsc{#1}\newgraphscale}
+
+\global\let\graphscale=\unitscale % Historical
+
+% ----- Segment Scale -----
+
+\gdef\segmentscale#1 {\ifr@elscale \realmult{#1}{\s@egsc}{\s@egsc}\else
+ \edef\s@egsc{#1}\fi
+ \newgraphscale}
+
+% ---- Graph Scale --------
+% This changes whenever either of the above change
+\gdef\newgraphscale{\realmult{\u@nitsc}{\s@egsc}{\g@rsc}}
+
+
+% ------ "Real" Multiplication --------
+% These functions use the fact that a box dimension may be scaled by
+% a real. The final step is to "clean" off the pt on the resulting dim
+
+% Cleans off the pt in a dimension ... pt has catcode 12
+{\catcode`\p=12 \catcode`\t=12
+\gdef\c@lean#1pt{\edef\cx{#1}}}
+% #1 and #2 are multiplicands #3 is a command to capture result
+\gdef\realmult#1#2#3{\wd0=1pt\dimen0=#1\wd0\wd0=\dimen0\dimen0=#2\wd0
+ \edef\R@M{\the\dimen0}\expandafter\c@lean\R@M\edef#3{\cx}}
+\gdef\realadd#1#2#3{\dimen0=#1pt\dimen2=#2pt\advance\dimen0by\dimen2
+ \edef\R@M{\the\dimen0}\expandafter\c@lean\R@M\edef#3{\cx}}
+
+
+% -------- Command to convert nominal values to pixels ------
+% #1 is a decimal number, #2 must be a count, #3 is sp/pix
+% This includes all scalings
+\gdef\grdimtopix#1#2#3{\gendimtopix{#1\g@dim}{#2}{#3}{\g@rsc}}
+
+
+% ------- special forms to update positions ------
+
+\gdef\i@h#1{\grdimtopix{#1}{\d@umc}{\h@pix}\h@update{\d@umc}}
+\gdef\i@v#1{\grdimtopix{#1}{\d@umc}{\v@pix}\v@update{\d@umc}}
+\gdef\h@num#1#2{\grdimtopix{#1}{#2}{\h@pix}}
+\gdef\v@num#1#2{\grdimtopix{#1}{#2}{\v@pix}}
+
+
+%dummy variables
+\newcount\d@uma
+\newcount\d@umb
+\newcount\d@umc
+\newcount\d@umd
+\newcount\d@ume
+
+% ====== end macros for converting dimensions
+
+% ======== Some more Utility Macros ========
+% ======== recursive macros ========
+\gdef\e@xtend #1#2{\let\d@x=#1\edef #1{\d@x #2}}
+\xdef\s@pex{}
+\xdef\s@pin{ }
+\gdef\s@pexpand #1 #2!{\e@xtend{\s@pex}{#1\s@pin}\edef\t@x{#2}\ifx\t@x\empty\relax \else
+ \s@pexpand #2!\fi}
+
+% ========== A Do Loop Construction =========
+% \do <something> for <number of times>\od
+% This is a specialization of the \loop in Plain.
+
+\newcount\d@count
+\gdef\do #1 for #2\od{\d@count=#2\loop #1 \ifnum\d@count>1\advance
+ \d@count by -1\repeat}
+
+
+% ========= Graphics specials =======
+\xdef\o@form{}
+\gdef\penwidth #1 {\h@num{#1}{\d@umc}\edef\p@w{\the\d@umc}\ifp@down \g@save
+ \e@xtend{\o@form}{st \g@restore }
+ \else \e@xtend{\o@form}{\p@w\b@ sl }\fi}
+\gdef\linecap #1 {\edef\s@lc{#1}\ifp@down \g@save
+ \e@xtend{\o@form}{st \g@restore }
+ \else \e@xtend{\o@form}{\s@lc\b@ slc }\fi}
+\gdef\linejoin #1 {\edef\s@lj{#1}\ifp@down \g@save
+ \e@xtend{\o@form}{st \g@restore }
+ \else \e@xtend{\o@form}{\s@lj\b@ slj }\fi}
+\gdef\lpatt p:#1 {\edef\v@p{#1 0}\ifp@down \g@save
+ \e@xtend{\o@form}{st \g@restore }
+ \else \e@xtend{\o@form}{\v@p\b@ sd }\fi}
+
+
+% ==== parameters are in units of the nominal dimension \g@dim ======
+
+\gdef\p@move #1#2#3{\i@h{#1}\i@v{#2}\e@xtend{\o@form}{\the\h@pos\b@ \the\v@pos\b@ #3 }}
+
+\gdef\lvec h:#1 v:#2 {\p@move{#1}{#2}{lv}\p@downtrue} %draws a line
+
+\gdef\move h:#1 v:#2 {\p@move{#1}{#2}{mv}} %moves
+
+
+% ====== a general vector with dimensions in pixels ======
+
+% ========= General pixel dim vector ==========
+
+\gdef\lpix h:#1 v:#2 f:#3 {\e@xtend{\o@form}{ #1 #2 #3 }}
+
+
+%============== puts TeX text at this position
+% These are pure TeX macros that use \h@pos and \v@pos for orientation
+% Text may be put horizontally (left/right) or vertically (down/up)
+
+% ======== sp form of \h@pos and \v@pos respectively ========
+\newdimen\t@hpos
+\newdimen\t@vpos
+\gdef\s@ettpos{\d@umc=\h@pos
+ \genpixtopt{\t@hpos}{\d@umc}{\h@pix}{}{}\relax
+ \d@umc=\v@pos
+ \genpixtopt{\t@vpos}{\d@umc}{\v@pix}{}{}\relax}
+
+
+
+% any one of nine reference point may be specified on the
+% TeX box. This is Vertical T,C,B and Horizontal L,C,R
+% The actual box is 0 height and width.
+\newbox\t@box
+% #1 LCR default/error L #2 TCB default/error T #3 text -- in hbox
+
+% Sets the box glues \lhglue \rhglue \tvglue \bvglue
+% #1 x/h ref, #2 v/y ref
+\gdef\textref h:#1 v:#2 {\ifx#1R\edef\lhglue{\hss}\edef\rhglue{}\else
+ \ifx#1C\edef\lhglue{\hss}\edef\rhglue{\hss}\else
+ \edef\lhglue{}\edef\rhglue{\hss}\fi\fi
+ \ifx#2B\edef\tvglue{\vss}\edef\bvglue{}\else
+ \ifx#2C\edef\tvglue{\vss}\edef\bvglue{\vss}\else
+ \edef\tvglue{}\edef\bvglue{\vss}\fi\fi}
+\global\let\tboxref=\textref
+
+\newcount\h@oldmaxpos \newcount\v@oldmaxpos
+
+ %needed to save max pos when texgraph is inside an h/vtext
+
+% ========== assumes driver location at initial \btg entry ========
+%
+
+% #1 text #2 - begin rotation form #3 - end rotation form
+\long\gdef\m@text#1#2#3{\g@raphout\h@oldmaxpos=\maxhpospix\relax
+ \v@oldmaxpos=\maxvpospix\relax
+ \edef\h@oldgrsc{\h@grsc}\edef\v@oldgrsc{\v@grsc}\s@ettpos
+ \setbox\t@box=\vbox{\normalbaselines
+ \vskip\t@vpos\hbox{\hskip\t@hpos
+ \t@init{#2}\relax
+ \vbox to 0pt{\normalbaselines
+ \tvglue\hbox to 0pt{\lhglue\hbox{#1}\rhglue
+ }\bvglue}}}\relax
+ \dp\t@box=0pt\ht\t@box=0pt\wd\t@box=0pt
+ \box\t@box
+ \t@fin{#3}
+ \global\maxhpospix=\h@oldmaxpos\relax
+ \global\maxvpospix=\v@oldmaxpos\relax
+ \xdef\h@grsc{\h@oldgrsc}\edef\v@grsc{\v@oldgrsc}}
+ % saves maxh(v)pospix on stack
+
+
+% ========== PS text initializations and terminations ===========
+\gdef\t@init#1{\special{\p@sinline td begin \h@vinit gr gs
+ \t@rhv #1 \t@rneghv end }}
+
+\gdef\t@fin#1{\special{\p@sinline td begin \h@vinit gr gs \m@vhv \t@rhv \p@hv end }}
+
+% .... special test
+%\gdef\t@init#1{}
+%\gdef\t@fin#1{}
+% ... end special test
+
+
+
+\long\gdef\htext #1 {\m@text{#1}{}{}}
+\long\gdef\vtext #1 {\m@text{#1}{ 90 \r@tdir rt }{}}
+\long\gdef\rtext d:#1 t:#2 {\m@text{#2}{ #1 \r@tdir rt }{}}
+\long\gdef\rstext d:#1 sc:#2 t:#3 {\m@text{#3}{ #1 \r@tdir rt #2 #2 sc }{}}
+\global\let\tbox=\htext
+
+% ========= Various Restore forms ========
+\gdef\g@save{\edef\g@restore{\p@w\b@ sl \v@p\b@ sd \s@lc\b@ slc \s@lj\b@ slj
+ np \the\h@pos\b@ \the\v@pos\b@ mv }}
+\gdef\s@save{\edef\s@restore{\p@w\b@ sl \v@p\b@ sd \s@lc\b@ slc \s@lj\b@ slj
+ np \the\h@pos\b@ \the\v@pos\b@ mv }}
+
+
+
+
+% ======== circle, arcs =========
+% The PS arc will connect the center of the arc to the circumference
+% if the newpath includes the move to this point. Thus we define a
+% set of arc functions that include/exclude this feature. The default
+% does not include this form.
+
+\gdef\larc r:#1 sd:#2 ed:#3 {\h@num{#1}{\d@umc}\p@downtrue
+ \e@xtend{\o@form}{ st np \the\h@pos\b@ \the\v@pos\b@ \the\d@umc\b@ #2 #3 arc
+ st np \the\h@pos\b@ \the\v@pos\b@ mv }}
+
+\gdef\lcir r:#1 {\larc r:#1 sd:0 ed:360 }
+
+% ------ this is a raw arc ... can be used in fills --------
+
+\gdef\arcc r:#1 sd:#2 ed:#3 {\h@num{#1}{\d@umc}\p@downtrue
+ \e@xtend{\o@form}{\the\h@pos\b@ \the\v@pos\b@ \the\d@umc\b@ #2 #3 arc }}
+
+\gdef\arcn r:#1 sd:#2 ed:#3 {\h@num{#1}{\d@umc}\p@downtrue
+ \e@xtend{\o@form}{\the\h@pos\b@ \the\v@pos\b@
+ \the\d@umc\b@ #2 #3 arcn }}
+
+% ======= fill command ==========
+% The fill command is essentially a polygonal fill ... not a point spreading
+% this means that it is possible to erase with white ... The form here
+% completes with a closepath applies the fill, starts a newpath and moves
+% to the current point. Pattern is a grey level.
+% 0 is black 1 is white
+
+\gdef\pfill p:#1 {\p@downtrue
+ \e@xtend{\o@form}{cp #1 sg fill np \the\h@pos\b@ \the\v@pos\b@ mv }}
+
+
+% this form both fills and strokes around the path
+\gdef\lpfill p:#1 {\p@downtrue
+ \e@xtend{\o@form}{cp gs #1 sg fill gr st np \the\h@pos\b@ \the\v@pos\b@ mv }}
+
+% ======== Postscript special forms ========
+% This allows "raw" postscript to be put in the graph.
+\gdef\pst #1{\e@xtend{\o@form}{#1 }}
+
+% These are some useful postscript compatible forms.
+
+\gdef\closepath{\e@xtend{\o@form}{cp }}
+\gdef\newpath{\e@xtend{\o@form}{np }}
+\gdef\stroke{\e@xtend{\o@form}{st }}
+
+
+
+% ========= including external files ==========
+% an external file is included at the present point on the graph area
+% moves are required to get there
+% The actual file is placed inside a \t@box and tex commands are used
+% to get to the place ... They probably can be nested
+% #1 is the filename
+
+% The file is opened, if possible, to read its size. If this exists, it
+% is used to update the maximum h/v position.
+% The BoundingBox is determined
+
+
+\newread\q@file
+% #1 is the file name
+\gnewif{\ifq@read}{\q@readtrue}{\q@readfalse}
+\gnewif{\ifq@file}{\q@filetrue}{\q@filefalse}
+\gnewif{\ifb@boxexists}{\b@boxexiststrue}{\b@boxexistsfalse}
+% #1 == %%BoundingBox, #2 llh #3 llv #4 urh #5 urv #6 rest of line
+
+
+\gdef\uncat{\catcode`"=12}
+
+{\catcode`\%=12
+\gdef\l@shift{\ifx\l@lh\empty \xdef\l@lh{\l@lv}\xdef\l@lv{\u@rh}\xdef
+ \u@rh{\u@rv}\xdef\u@rv{\e@xt}\fi}
+\gdef\B@Box{%%BoundingBox}
+\gdef\a@tend{(atend)}
+\gdef\a@tendtest{\l@shift\ifx\l@lh\a@tend\relax\else
+ \global\b@boxexiststrue\q@readfalse\bmess{<< At End Test >>}\fi}
+
+\long\gdef\q@inline #1:#2 #3 #4 #5 #6 #7//{\xdef
+ \q@bbtest{#1}\xdef\l@lh{#2}\xdef
+ \l@lv{#3}\xdef\u@rh{#4}\xdef\u@rv{#5}\xdef
+ \e@xt{#6}\ifx\q@bbtest\B@Box
+ \a@tendtest\fi
+ \ifeof\q@file \q@readfalse \fi}
+
+\gdef\s@bbox{\b@boxexistsfalse
+ \message{<< \bbmess -- \f@ilename>>}\q@readtrue
+ \loop \relax \ifq@read\r@eadline\repeat}
+
+\gdef\r@eadline{ {\uncat \global\read\q@file to\q@parms }
+ \expandafter\q@inline\q@parms {}:{\relax} {\relax} {\relax} {\relax}
+{\relax} \relax//\bmess{<<\q@parms>>}}
+
+\gdef\g@etpsize #1{{\catcode`\%=12\openin\q@file = #1\relax
+ \edef\q@parms{}\global\q@filetrue\xdef\f@ilename{#1}
+ \ifeof\q@file \message{<<\noincfile: #1 >>}\relax
+ \global\q@filefalse\else
+ \s@bbox
+ \closein\q@file\fi}}
+
+} % end of % disable
+
+\newcount\h@px \newcount\v@px \newcount\h@mx \newcount\v@mx
+\gdef\s@avemaxpos{\global\h@px=\maxhpospix\global\v@px=\maxvpospix
+ \global\h@mx=\minhpospix\global\v@mx=\minvpospix}
+\gdef\r@estoremaxpos{\global\maxhpospix=\h@px\global\maxvpospix\v@px
+ \global\minhpospix=\h@mx\global\minvpospix\v@mx}
+
+\gdef\f@sc{\b@}
+\gdef\f@rt{\b@}
+\gdef\filerotate#1{\edef\f@rt{ XposR YposR tr #1 \r@tdir rt XposR neg
+ YposR neg tr }}
+
+\gdef\filescale #1{\edef\f@sc{#1 #1 sc \f@schv}}
+\gdef\p@fileinit{ td begin \h@vinit gr gs \f@rt \t@rhv \f@sc end
+ /texgraph save def /showpage {} def }
+\xdef\p@filefin{ texgraph restore }
+\global\let\mvec=\move
+
+
+
+\gdef\includefile #1 {\incscfile f:{#1} sc:1 d:0 }
+
+\gdef\incscfile f:#1 sc:#2 d:#3 {\g@etpsize{#1}\ifb@boxexists
+ \message{<<\incfile: #1 >>}\realadd{\u@rh}{-\l@lh}{\p@lh}
+ \realadd{\u@rv}{-\l@lv}{\p@lv}
+ \realmult{\p@lh}{.5}{\p@lhh}
+ \realmult{\p@lv}{.5}{\p@lvh}
+ \beginsegment
+ \segmentscale #2
+ \global\let\g@dimo=\g@dim
+ \graphdim pt
+ \mvec h:{\p@lh} v:{\p@lv}
+ \mvec h:{\p@lhh} v:{\p@lvh}
+ \m@text{}{ /XposR \Xpos\b@ def
+ /YposR \Ypos\b@ def }{}
+ \endsegment
+ \s@avemaxpos
+ \beginsegment \segmentscale #2
+ \mvec h:{-\l@lh} v:{\u@rv}
+ \htext{\filescale{#2}\filerotate{#3}\relax
+ \special{\p@sinline\p@fileinit }
+ \special{\p@sfile #1 }
+ \special{\p@sinline\p@filefin }}
+ \endsegment
+ \r@estoremaxpos
+ \global\let\g@dim=\g@dimo
+ \else\message{<<\badincfile: #1 >>}\fi }
+
+\gdef\incscmvfile f:#1 sc:#2 d:#3 h:#4 v:#5 {\g@etpsize{#1}\ifb@boxexists
+ \message{<<\incfile: #1 >>}\realadd{\u@rh}{-\l@lh}{\p@lh}
+ \realadd{\u@rv}{-\l@lv}{\p@lv}
+ \realmult{\p@lh}{.5}{\p@lhh}
+ \realmult{\p@lv}{.5}{\p@lvh}
+ \ifx#4L \edef\f@h{0}\else \ifx#4C \edef\f@h{1} \else \edef\f@h{2}\fi\fi
+ \ifx#5T \edef\f@v{0}\else \ifx#5C \edef\f@v{1} \else\edef\f@v{2}\fi\fi
+ \realmult{\p@lhh}{\f@h}{\h@off}
+ \realmult{\p@lvh}{\f@v}{\v@off}
+ \beginsegment
+ \segmentscale #2
+ \global\let\g@dimo=\g@dim
+ \graphdim pt
+ \mvec h:{-\h@off} v:{-\v@off}
+ \beginsegment
+ \mvec h:{\p@lh} v:{\p@lv}
+ \mvec h:{\p@lhh} v:{\p@lvh}
+ \m@text{}{ /XposR \Xpos\b@ def
+ /YposR \Ypos\b@ def }{}
+ \endsegment
+ \endsegment
+ \s@avemaxpos
+ \beginsegment \segmentscale #2
+ \mvec h:{-\l@lh} v:{\u@rv}
+ \beginsegment
+ \mvec h:{-\h@off} v:{-\v@off}
+ \htext{\filescale{#2}\filerotate{#3}\relax
+ \special{\p@sinline\p@fileinit }
+ \special{\p@sfile #1 }
+ \special{\p@sinline\p@filefin }}
+ \endsegment
+ \endsegment
+ \r@estoremaxpos
+ \global\let\g@dim=\g@dimo
+ \else\message{<<\badincfile: #1 >>}\fi }
+
+
+
+% ============ Design Grid ==============
+% This will lay down a grid at the present location. The grid nominally
+% at unit dimension intervals. The scale factor sc modifies this. The
+% sc is local only to the grid
+
+\newcount\gcount
+\gdef\grid nh:#1 nv:#2 sc:#3 {\gcount= #1
+ \beginsegment
+ \relative
+ \penwidth .005
+ \graphscale #3
+ \beginsegment
+ \loop \lvec h:#2 v:0
+ \move h:-#2 v:1
+ \ifnum \gcount > 1
+ \advance\gcount by -1 \repeat
+ \endsegment
+ \gcount = #2
+ \beginsegment
+ \loop \lvec h:0 v:#1
+ \move h:1 v:-#1
+ \ifnum \gcount > 1
+ \advance\gcount by -1 \repeat
+ \endsegment
+ \endsegment}
+%========= end design grid ================
+
+
+% =========== Arrow Vectors ==============
+% There are three types of arrow heads, filled, open V and triangle
+% These are always placed on the end of a vector.
+
+% The basic design has the arrow head which is placed on the vector
+% It theoretically can be placed on any curve where the angle is known or
+% computable.
+
+
+\newcount\a@len
+\newcount\a@wid
+
+% Parameter specification for arrowheads.
+% #1 -- length #2 -- width
+% The dimensions are interpreted at current graphscale in force and
+% are local to the segment group.
+\gdef\arrowheadscale{\arrowheadsize l:.16 w:.04 }
+\gdef\arrowheadsize l:#1 w:#2 {\grdimtopix{#1}{\a@len}{\h@pix
+ }\grdimtopix{#2}{\a@wid}{\h@pix
+ }}
+% postcript commands for inidividual arrow form
+\gdef\arrowheadtype t:#1 {\ifx#1T\edef\a@com{cp gs 1 sg fill gr st }\else
+ \ifx#1F\edef\a@com{cp 0 sg fill }\else
+ \edef\a@com{st }\fi\fi}
+\newcount\h@lp
+\newcount\v@lp
+
+% assumes that the dh and dv is in \h@lp \v@lp and present location is tip
+% of arrowhead
+\gdef\a@draw{st np \the\h@pos\b@ \the\v@pos\b@ mx
+ \the\v@lp\b@ neg \the\h@lp\b@ at
+ -\the\a@len\b@ \the\a@wid\b@ mv 0 0 lv
+ -\the\a@len\b@ -\the\a@wid\b@ lv
+ \a@com gr }
+
+
+
+\gdef\avec h:#1 v:#2 {\h@lp=\h@pos\relax \v@lp=\v@pos\relax
+ \lvec h:#1 v:#2 \advance\h@lp by -\h@pos\relax
+ \advance\v@lp by -\v@pos\relax
+ \e@xtend{\o@form}{\a@draw}}
+
+
+% ============= End Arrow Vectors =============
+
+% ========= Bezier Curve ==========
+% this is a cubic spline that is determined by four points. The initial
+% point is assumed to be the current point. An arrow is easily added.
+
+
+\gdef\clvec h1:#1 v1:#2 h2:#3 v2:#4 h3:#5 v3:#6 {\i@h{#1}\d@uma=\h@pos
+ \i@v{#2}\d@umb=\v@pos\i@h{#3}\d@ume=\h@pos\i@v{#4}\d@umd=\v@pos
+ \i@h{#5}\i@v{#6}\e@xtend{\o@form}{\the\d@uma\b@ \the\d@umb\b@
+ \the\d@ume\b@ \the\d@umd\b@ \the\h@pos\b@ \the\v@pos\b@
+ cv }\p@downtrue}
+\gdef\clv (#1 #2) (#3 #4) (#5 #6){\clvec h1:#1 v1:#2 h2:#3 v2:#4 h3:#5 v3:#6 }
+
+\gdef\cavec h1:#1 v1:#2 h2:#3 v2:#4 h3:#5 v3:#6 {\clvec h1:#1 v1:#2 h2:#3 v2:#4 h3:#5 v3:#6
+ \h@lp=\d@ume \relax \v@lp=\d@umd \relax
+ \advance\h@lp by -\h@pos\relax
+ \advance\v@lp by -\v@pos\relax
+ \e@xtend{\o@form}{\a@draw}}
+\gdef\cav (#1 #2) (#3 #4) (#5 #6){\cavec h1:#1 v1:#2 h2:#3 v2:#4 h3:#5 v3:#6 }
+
+
+
+
+
+% ======= default values =========
+% These are reset each time \btg is called
+\gdef\t@exgraphdef{\setbox0=\hbox{}\graphdim in
+\hpix 300/in % INRS Default
+\vpix 300/in % INRS Default
+\printhv 1 1 % DVIPS 300 dpi
+\filehv 4.17 -4.17 % DVIPS 300/72
+\rtdir neg % DVIPS
+\def\h@grsc{1}\def\v@grsc{1}%sets default hor/vert scales
+\absoluteposition
+\relativescale
+\unitscale 1
+\penwidth .015
+\lpatt p:{[]}
+\linecap 1
+\linejoin 1
+\arrowheadsize l:.16 w:.04
+\arrowheadtype t:T
+\textref h:L v:T }
+
+\xdef\s@egsc{1}% initial default
+
+\catcode`\@=12
+
+
+
diff --git a/macros/inrstex/inrsinputs/verbatim.tex b/macros/inrstex/inrsinputs/verbatim.tex
new file mode 100644
index 0000000000..1cb87e2ccf
--- /dev/null
+++ b/macros/inrstex/inrsinputs/verbatim.tex
@@ -0,0 +1,40 @@
+%-*-tex-*-
+%========= Verbatim or NoFill Style ========
+% the actual macros for these are found in Tex$inputs:verbatim.tex
+% any character other than a \ is printed.
+% the format is \beginttverbatim <text> \endttverbatim
+% the default font is \tt
+% the \\ is defined as a \filbreak. It has the effect pushing blocks of
+% text between successive \\ onto the next page if it will not fit on the
+% remainder of the present page.
+\gdef\tabmessage{\ifnum\language=0 <tabs> are dangerous in tt verbatim
+ \else <tabs> sont dangereux dans tt verbatim \fi}%
+{\catcode`\^^M=\active % these lines must end with %
+\gdef\ttobeylines{\catcode`\^^M\active \let^^M\vpar}%
+\global\let^^M\vpar}% this is in case ^^M appears in a \write
+{\catcode`\ =\active
+\outer\gdef\beginttverbatim{\begingroup
+\def\\%
+{\filbreak}\chardef\other=12%
+\catcode`\{=\other
+\catcode`\}=\other
+\catcode`\$=\other
+\catcode`\&=\other
+\catcode`\#=\other
+\catcode`\%=\other
+\catcode`\~=\other
+\catcode`\_=\other
+\catcode`\^=\other
+\catcode`\<=\other
+\catcode`\>=\other
+\catcode`|=\other
+\catcode`"=\other
+\parindent0pt\parskip0pt plus1pt%
+\def\vpar{\par\leavevmode}%
+\def {<tab>\message{<<\tabmessage>>}}%
+\obeyspaces\ttobeylines
+\catcode`\ =\active
+\tt\xspaceskip=.5em\spaceskip=\xspaceskip
+}}%
+\outer\gdef\endttverbatim{\endgroup}%
+\beginttverbatim \ No newline at end of file