diff options
author | Karl Berry <karl@freefriends.org> | 2020-09-28 20:57:36 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-09-28 20:57:36 +0000 |
commit | e752903a9ad1c74190305384230882402822846a (patch) | |
tree | 8d60a64b66091d1c8e34e5af76d413268603b25d | |
parent | c452dea4584e1a0650f1ba1f87262a85b511057c (diff) |
pgf (28sep20)
git-svn-id: svn://tug.org/texlive/trunk@56462 c570f23f-e606-0410-a88d-b1316a301751
436 files changed, 6408 insertions, 1109 deletions
diff --git a/Master/texmf-dist/doc/generic/pgf/ChangeLog b/Master/texmf-dist/doc/generic/pgf/ChangeLog index 55d9caa6ff7..d3b2a8448c7 100644 --- a/Master/texmf-dist/doc/generic/pgf/ChangeLog +++ b/Master/texmf-dist/doc/generic/pgf/ChangeLog @@ -1,3 +1,543 @@ +2020-09-28 Henri Menke + + - Release 3.1.6 + +2020-09-28 Henri Menke + + - Activate CTAN zip action + +2020-09-28 Henri Menke + + - Adapt shipout to new hook management #900 #923 + +2020-09-24 Alexander Grahn + + - improved functional shading (dvips); \pgfsys@definemask fixed + +2020-09-20 PhelypeOleinik + + - More missing args to \pgfmath@error + +2020-09-20 PhelypeOleinik + + - Add missing args to \pgfmath@error + +2020-09-20 PhelypeOleinik + + - Replace \pgfmath@PackageError by \pgfmath@error + +2020-09-20 PhelypeOleinik + + - Use \pgfmath@tonumber in pgfmath (fixes #924) + +2020-09-09 Henri Menke + + - Merge branch 'master' of https://github.com/erihe251/pgf + +2020-09-09 Erik + + - fixed typo notes -> nodes + +2020-09-05 Henri Menke + + - Merge branch 'pgfkeys-doc' of https://github.com/muzimuzhi/pgf into master + +2020-09-05 Henri Menke + + - Remove unused `.expand two once' #918 + +2020-09-05 muzimuzhi + + - [doc] pgfkeys: update examples of ".search also" + +2020-09-05 muzimuzhi + + - [doc] pgfkeys: document \pgfkeyssetevalue + +2020-09-05 muzimuzhi + + - [doc] pgfkeys: unify order of ".code" and ".style" + +2020-09-04 muzimuzhi + + - [doc] pgfkeys: typo + +2020-07-07 Henri Menke + + - Invert transform before assigning intersection #889 + +2020-09-03 muzimuzhi + + - pgfsys-xetex: sync with upstream, #909 + +2020-09-03 Henri Menke + + - Provide a convenient workaround for #508 (also #915) + +2020-08-30 muzimuzhi + + - pgfkeys: avoid \pgfkeysalso used in ".search also" + +2020-08-31 Henri Menke + + - Fix CI badge; add PR template + +2020-08-29 Henri Menke + + - Merge branch 'ps3shading-fading-imgmask-dvips-3' of https://github.com/agrahn/pgf + +2020-08-29 Henri Menke + + - Merge branch 'fix-pgfkeys' of https://github.com/muzimuzhi/pgf + +2020-08-29 muzimuzhi + + - pgfkeys: make `.initial` compatible with `.code`, fix #654 + +2020-08-29 muzimuzhi + + - pgfkeys: specially treat `.style n args={1}{...}`, fix #912 + +2020-08-28 Alexander Grahn + + - fixing code lines with assignments, as requested in the review + +2020-08-27 Alexander Grahn + + - Merging upstream changes into ps3shading-fading-imgmask-dvips-3 + +2020-07-02 Henri Menke + + - Switch to GitHub Actions + +2020-08-16 Alexander Grahn + + - optimizing sampling procedure (funct shadings, dvips) + +2020-08-13 Alexander Grahn + + - merging recent upstream changes + +2020-08-13 Alexander Grahn + + - addressing requested changes from review + +2020-08-12 Henri Menke + + - doc: correct some typos + +2020-08-02 muzimuzhi + + - [doc] pgffor: replace \diameter with \r + +2020-08-02 muzimuzhi + + - [doc] fix typo, s/to/two/ in "between to point" + +2020-08-07 Alexander Grahn + + - PS-3 functional shading for dvips + +2020-08-03 Alexander Grahn + + - PS-3 shadings, opacity masks (fadings) and image masks for dvips + +2020-08-02 Henri Menke + + - doc: remove reference to old "-to" arrow + +2020-07-22 Henri Menke + + - Merge branch 'context-module-wrap' of https://github.com/LeonardKoenig/pgf + +2020-07-20 Henri Menke + + - Update build instructions [ci skip] + +2020-07-17 Leonard König + + - context: Fix 'module wrapping error' + +2020-07-10 Henri Menke + + - Merge branch 'minor-change' of https://github.com/muzimuzhi/pgf + +2020-07-10 Henri Menke + + - Fix critical typo in documentation + +2020-07-08 muzimuzhi + + - [doc] enhanced consistency + +2020-07-08 muzimuzhi + + - [doc] fix wrong description for \pgfmathsubtract + +2020-07-08 muzimuzhi + + - fix typo in comment + +2020-06-18 Stefan Pinnow + + - Add library loading hints #755 + +2020-06-16 thinbold + + - Fixed typo: of -> off + +2020-07-03 Erik + + - Fixed typo, if -> of + +2020-07-03 Alexander Grahn + + - gs-9.53 transparency; blend mode; transparency groups + +2020-06-30 Henri Menke + + - Install pgfmanual-en-macros.tex + +2020-06-29 Henri Menke + + - Revert "- removed some trailing spaces and replaced TABs with spaces" + +2020-06-28 Henri Menke + + - Merge branch 'doc-fix-pdf-dest' of https://github.com/muzimuzhi/pgf + +2020-06-28 Henri Menke + + - Fix pt/bp confusion in dvipdfmx driver #888 + +2020-06-28 muzimuzhi + + - [doc] rename counter, "dummy" -> "pgfmanualentry" + +2020-06-27 muzimuzhi + + - [script] use value of "maxruns" in not-converge message + +2020-06-27 muzimuzhi + + - [doc] move two key labels inside "key" env + +2020-06-27 muzimuzhi + + - [doc] fix typo + +2020-06-27 muzimuzhi + + - [doc] fix wrong pdf dest + +2020-06-25 muzimuzhi + + - [doc] external lib + +2020-06-17 Henri Menke + + - transform shape clashes with label position #843 + +2020-06-17 Henri Menke + + - Add options to Lua examples #640 #839 + +2020-06-17 Henri Menke + + - Resolve clash of object ids in SVG #876 + +2020-06-17 Henri Menke + + - Decorations are implicitly sloped #748 + +2020-06-16 Ilhan Polat + + - DOC:matrix:Use only default colorsin example + +2020-06-13 Ilhan Polat + + - DOC:matrix: Adjust the column color in example + +2020-06-16 Ilhan Polat + + - Fix merge conflicts + +2020-06-16 Henri Menke + + - Remove bbox library + +2020-06-15 Stefan Pinnow + + - followed @joulev's suggestion + +2020-06-13 Mo-Gul + + - Update doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex + +2020-06-13 Mo-Gul + + - Update doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex + +2020-06-12 Stefan Pinnow + + - added `codeexample` plus some text to the `decorations` library manual as suggested in pull request #872 + +2020-06-12 Stefan Pinnow + + - removed braces as suggested in pull request #872 + +2020-06-05 Stefan Pinnow + + - "improved" colors given in the `codeexample` of pull request #871 + +2020-06-01 Stefan Pinnow + + - added reference from `matrix` library to "basic" matrix section + +2020-05-30 Stefan Pinnow + + - - adapted formatting in `pgf/text-en/pgfmanual-en-tikz-matrices.tex` - changed order of mentioned libraries so they fit the order of references in the next sentence in `pgf/text-en/pgfmanual-en-tikz-shapes.tex` + +2020-06-01 Henri Menke + + - Little improvements for matrix/inner style + +2020-06-04 Ilhan Polat + + - Convert quotes to TeX quotes + +2020-06-04 Ilhan Polat + + - DOC:matrix: Add example for every row/col keys + +2020-05-29 Henri Menke + + - Configurable matrix inner styles #867 + +2020-05-28 Henri Menke + + - Add key visualize as smooth cycle #823 + +2020-05-28 Henri Menke + + - /.style -> /.code #808 + +2020-05-26 Henri Menke + + - Documentation for /pgf/fpu/install only + +2020-05-26 Henri Menke + + - New key `/pgf/fpu/install only' #861 + +2020-05-26 Henri Menke + + - Merge branch 'new-unit-px' of https://github.com/muzimuzhi/pgf + +2020-05-26 Henri Menke + + - Remove \pgfkeys@ifcsname #863 + +2020-05-26 muzimuzhi + + - pgfmathparser.code.tex: add pdfTeX/LuaTeX unit px + +2020-05-25 Henri Menke + + - use fpu reciprocal is still under consideration + +2020-05-24 Arkonos + + - fixing typo in pgfmanual-en-tutorial-Euclid.tex + +2020-05-24 tallmarmot + + - Update bbox library #856 + +2020-05-24 Henri Menke + + - Shift before rotate #859 + +2020-05-24 Henri Menke + + - Fix undefined control sequence in \pgfutil@pushedmacro + +2020-05-23 Henri Menke + + - Revert "Execute size hook unconditionally #795" + +2020-05-22 muzimuzhi + + - Another improvement for #855 + +2020-05-19 Mo-Gul + + - corrected typo in patch of issue #848 + +2020-05-19 muzimuzhi + + - Improved fix for #855 + +2020-05-18 Henri Menke + + - If prefixed name does not exist, look up global name #846 + +2020-05-18 Henri Menke + + - Fix broken \foreach initializer #855 + +2020-05-18 Henri Menke + + - Check if set is defined #853 + +2020-05-18 Henri Menke + + - Forbid some more operations in patterns #852 + +2020-04-30 Henri Menke + + - Trim surrounding whitespace from pattern name #851 + +2020-04-29 Henri Menke + + - Use comma hack for pattern keys as well #851 + +2020-04-29 Henri Menke + + - Merge branch 'master' of https://github.com/Mo-Gul/pgf + +2020-04-24 Stefan Pinnow + + - incorporated tallmarmots suggestion of issue #848 + +2020-04-14 Henri Menke + + - Fix \pgfmathfloattoextentedprecision #845 + +2020-03-29 Stefan Pinnow + + - - (again) found double-space instances + +2020-03-23 Stefan Pinnow + + - - minor issue additionally stated in issue #840 + +2020-03-04 Henri Menke + + - Fix chiral anomaly #837 + +2020-03-04 Henri Menke + + - dvisvgm4ht: ProvidesFileRCS and copyright + +2020-03-03 Henri Menke + + - Merge remote-tracking branch 'dvisvgm4ht/master' + +2020-03-02 thinbold + + - multiple is noun; multiply is verb + +2020-02-20 Henri Menke + + - New pgfparser utility package + +2020-02-20 Henri Menke + + - Fix typo in fadings driver for Lua/pdfTeX + +2020-02-06 Henri Menke + + - Don't swallow the delimiter #831 + +2020-02-06 letzfets + + - Include dependencies in Makefile #829 + +2020-01-30 Hironobu Yamashita + + - pgfmathparser.code.tex: add pdfTeX/LuaTeX/pTeX units + +2020-02-02 Henri Menke + + - Update manual issue template + +2020-01-16 Henri Menke + + - Address the CTAN issues #816 + +2020-01-16 Henri Menke + + - Cherry-pick the useable stuff from #822 + +2020-01-16 Henri Menke + + - Issue template: Reminder to use latest manual + +2020-01-07 Kamil Ziemian + + - `arrows` library replaced by `arrows.meta` + +2020-01-06 Henri Menke + + - Math parse looseness on to paths #813 + +2019-12-21 Henri Menke + + - Update README and fix .travis.yml + +2019-12-21 Henri Menke + + - Error checking for postaction, correct xetex postaction + +2019-12-25 Kamil Ziemian + + - Mistake in code example + +2020-01-11 Stefan Pinnow + + - - removed some more remaining instances of the `arrows` library (#819, #698) - minor change + +2019-05-04 Michal Hoftich + + - Pass emptry group as a \Picture argument + +2019-05-02 Michal Hoftich + + - Handle nesting + +2019-05-02 Michal Hoftich + + - Added comments + +2019-05-02 Michal Hoftich + + - Support display math inside picture + +2019-05-02 Michal Hoftich + + - check for the vmode + +2019-04-11 Michal Hoftich + + - Make the tex4ht patches active only at \begin{document} + +2019-04-10 Michal Hoftich + + - test for existence of tex4ht commands + +2019-04-03 Michal Hoftich + + - code cleanup + +2019-01-23 Michal Hoftich + + - Removed \Rcs command + +2018-06-26 Michal Hoftich + + - Initial commit + 2020-01-08 Henri Menke - Release 3.1.5b diff --git a/Master/texmf-dist/doc/generic/pgf/FILES b/Master/texmf-dist/doc/generic/pgf/FILES index ccea7e29e51..9afc891a04c 100644 --- a/Master/texmf-dist/doc/generic/pgf/FILES +++ b/Master/texmf-dist/doc/generic/pgf/FILES @@ -5,6 +5,7 @@ doc/generic/pgf/INSTALL doc/generic/pgf/README doc/generic/pgf/extract.lua doc/generic/pgf/images/brave-gnu-world-logo-mask.bb +doc/generic/pgf/images/brave-gnu-world-logo-mask.eps doc/generic/pgf/images/brave-gnu-world-logo-mask.jpg doc/generic/pgf/images/brave-gnu-world-logo.25.bb doc/generic/pgf/images/brave-gnu-world-logo.25.eps @@ -21,7 +22,6 @@ doc/generic/pgf/licenses/gnu-public-license-2.txt doc/generic/pgf/licenses/latex-project-public-license-1.3c.txt doc/generic/pgf/licenses/manifest-code.txt doc/generic/pgf/licenses/manifest-documentation.txt -doc/generic/pgf/macros/pgfmanual-en-macros.tex doc/generic/pgf/pgfmanual.pdf doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex @@ -78,7 +78,6 @@ doc/generic/pgf/text-en/pgfmanual-en-library-arrows.tex doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex -doc/generic/pgf/text-en/pgfmanual-en-library-bbox.tex doc/generic/pgf/text-en/pgfmanual-en-library-calc.tex doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex @@ -766,7 +765,6 @@ tex/generic/pgf/libraries/luamath/pgflibraryluamath.code.tex tex/generic/pgf/libraries/pgflibraryarrows.code.tex tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex tex/generic/pgf/libraries/pgflibraryarrows.spaced.code.tex -tex/generic/pgf/libraries/pgflibrarybbox.code.tex tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex tex/generic/pgf/libraries/pgflibraryfadings.code.tex tex/generic/pgf/libraries/pgflibraryfixedpointarithmetic.code.tex @@ -835,6 +833,7 @@ tex/generic/pgf/systemlayer/pgfsys-dvipdfm.def tex/generic/pgf/systemlayer/pgfsys-dvipdfmx.def tex/generic/pgf/systemlayer/pgfsys-dvips.def tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def +tex/generic/pgf/systemlayer/pgfsys-dvisvgm4ht.def tex/generic/pgf/systemlayer/pgfsys-luatex.def tex/generic/pgf/systemlayer/pgfsys-pdftex.def tex/generic/pgf/systemlayer/pgfsys-tex4ht.def @@ -881,6 +880,7 @@ tex/latex/pgf/compatibility/pgflibrarytikzbackgrounds.sty tex/latex/pgf/compatibility/pgflibrarytikztrees.sty tex/latex/pgf/compatibility/pgfnodes.sty tex/latex/pgf/compatibility/pgfshade.sty +tex/latex/pgf/doc/pgfmanual-en-macros.tex tex/latex/pgf/doc/pgfmanual.code.tex tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex tex/latex/pgf/doc/pgfmanual.prettyprinter.code.tex @@ -894,6 +894,7 @@ tex/latex/pgf/utilities/pgfcalendar.sty tex/latex/pgf/utilities/pgffor.sty tex/latex/pgf/utilities/pgfkeys.sty tex/latex/pgf/utilities/pgfpages.sty +tex/latex/pgf/utilities/pgfparser.sty tex/latex/pgf/utilities/pgfrcs.sty tex/latex/pgf/utilities/tikzexternal.sty tex/latex/pgf/utilities/xxcolor.sty diff --git a/Master/texmf-dist/doc/generic/pgf/images/brave-gnu-world-logo-mask.eps b/Master/texmf-dist/doc/generic/pgf/images/brave-gnu-world-logo-mask.eps new file mode 100644 index 00000000000..4a51c7416a0 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/images/brave-gnu-world-logo-mask.eps @@ -0,0 +1,3956 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: (ImageMagick) +%%Title: (brave-gnu-world-logo-mask.eps) +%%CreationDate: (2020-07-30T07:46:49+00:00) +%%BoundingBox: -0 -0 342 387 +%%HiResBoundingBox: 0 0 342.095 387 +%%DocumentData: Clean7Bit +%%LanguageLevel: 1 +%%Pages: 1 +%%EndComments + +%%BeginDefaults +%%EndDefaults + +%%BeginProlog +% +% Display a color image. The image is displayed in color on +% Postscript viewers or printers that support color, otherwise +% it is displayed as grayscale. +% +/DirectClassPacket +{ + % + % Get a DirectClass packet. + % + % Parameters: + % red. + % green. + % blue. + % length: number of pixels minus one of this color (optional). + % + currentfile color_packet readhexstring pop pop + compression 0 eq + { + /number_pixels 3 def + } + { + currentfile byte readhexstring pop 0 get + /number_pixels exch 1 add 3 mul def + } ifelse + 0 3 number_pixels 1 sub + { + pixels exch color_packet putinterval + } for + pixels 0 number_pixels getinterval +} bind def + +/DirectClassImage +{ + % + % Display a DirectClass image. + % + systemdict /colorimage known + { + columns rows 8 + [ + columns 0 0 + rows neg 0 rows + ] + { DirectClassPacket } false 3 colorimage + } + { + % + % No colorimage operator; convert to grayscale. + % + columns rows 8 + [ + columns 0 0 + rows neg 0 rows + ] + { GrayDirectClassPacket } image + } ifelse +} bind def + +/GrayDirectClassPacket +{ + % + % Get a DirectClass packet; convert to grayscale. + % + % Parameters: + % red + % green + % blue + % length: number of pixels minus one of this color (optional). + % + currentfile color_packet readhexstring pop pop + color_packet 0 get 0.299 mul + color_packet 1 get 0.587 mul add + color_packet 2 get 0.114 mul add + cvi + /gray_packet exch def + compression 0 eq + { + /number_pixels 1 def + } + { + currentfile byte readhexstring pop 0 get + /number_pixels exch 1 add def + } ifelse + 0 1 number_pixels 1 sub + { + pixels exch gray_packet put + } for + pixels 0 number_pixels getinterval +} bind def + +/GrayPseudoClassPacket +{ + % + % Get a PseudoClass packet; convert to grayscale. + % + % Parameters: + % index: index into the colormap. + % length: number of pixels minus one of this color (optional). + % + currentfile byte readhexstring pop 0 get + /offset exch 3 mul def + /color_packet colormap offset 3 getinterval def + color_packet 0 get 0.299 mul + color_packet 1 get 0.587 mul add + color_packet 2 get 0.114 mul add + cvi + /gray_packet exch def + compression 0 eq + { + /number_pixels 1 def + } + { + currentfile byte readhexstring pop 0 get + /number_pixels exch 1 add def + } ifelse + 0 1 number_pixels 1 sub + { + pixels exch gray_packet put + } for + pixels 0 number_pixels getinterval +} bind def + +/PseudoClassPacket +{ + % + % Get a PseudoClass packet. + % + % Parameters: + % index: index into the colormap. + % length: number of pixels minus one of this color (optional). + % + currentfile byte readhexstring pop 0 get + /offset exch 3 mul def + /color_packet colormap offset 3 getinterval def + compression 0 eq + { + /number_pixels 3 def + } + { + currentfile byte readhexstring pop 0 get + /number_pixels exch 1 add 3 mul def + } ifelse + 0 3 number_pixels 1 sub + { + pixels exch color_packet putinterval + } for + pixels 0 number_pixels getinterval +} bind def + +/PseudoClassImage +{ + % + % Display a PseudoClass image. + % + % Parameters: + % class: 0-PseudoClass or 1-Grayscale. + % + currentfile buffer readline pop + token pop /class exch def pop + class 0 gt + { + currentfile buffer readline pop + token pop /depth exch def pop + /grays columns 8 add depth sub depth mul 8 idiv string def + columns rows depth + [ + columns 0 0 + rows neg 0 rows + ] + { currentfile grays readhexstring pop } image + } + { + % + % Parameters: + % colors: number of colors in the colormap. + % colormap: red, green, blue color packets. + % + currentfile buffer readline pop + token pop /colors exch def pop + /colors colors 3 mul def + /colormap colors string def + currentfile colormap readhexstring pop pop + systemdict /colorimage known + { + columns rows 8 + [ + columns 0 0 + rows neg 0 rows + ] + { PseudoClassPacket } false 3 colorimage + } + { + % + % No colorimage operator; convert to grayscale. + % + columns rows 8 + [ + columns 0 0 + rows neg 0 rows + ] + { GrayPseudoClassPacket } image + } ifelse + } ifelse +} bind def + +/DisplayImage +{ + % + % Display a DirectClass or PseudoClass image. + % + % Parameters: + % x & y translation. + % x & y scale. + % label pointsize. + % image label. + % image columns & rows. + % class: 0-DirectClass or 1-PseudoClass. + % compression: 0-none or 1-RunlengthEncoded. + % hex color packets. + % + gsave + /buffer 512 string def + /byte 1 string def + /color_packet 3 string def + /pixels 768 string def + + currentfile buffer readline pop + token pop /x exch def + token pop /y exch def pop + x y translate + currentfile buffer readline pop + token pop /x exch def + token pop /y exch def pop + currentfile buffer readline pop + token pop /pointsize exch def pop + x y scale + currentfile buffer readline pop + token pop /columns exch def + token pop /rows exch def pop + currentfile buffer readline pop + token pop /class exch def pop + currentfile buffer readline pop + token pop /compression exch def pop + class 0 gt { PseudoClassImage } { DirectClassImage } ifelse + grestore +} bind def +%%EndProlog +%%Page: 1 1 +%%PageBoundingBox: 0 0 342 387 +userdict begin +DisplayImage +0 0 +342.095 387.108 +12 +342 387 +1 +1 +1 +8 +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFCFFFDFFFEFFFEFFFF +FEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFAFFFFFFFEFEFFFCFFFDFCFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFDFFFFFFFEFEFFFF +FFFBFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFCFFFCFFFFFBFEFFFFFCFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFDFFFFFDFDFEFFFF +FFFDFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFDFEFFFBFFFFFCFFFFFFFCFFFEFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFCFFFEFDFFFDFF +FCFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFFFFFFFDFFFE8D90929092979495FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFBFFFEFEFFFFFEFFFFFEFEFFFFFFFEFFFCFF +FFFFFFFEFFFFFFFFFFFFFFFFFFFEFFFFFEFFFFFFFFFFFFFEFFFFFFFFFCFFFEFFFCFFFFFD +FFFCFFFFFCFFFDFFFDFFFFFDFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFD85597F98FFFFFFFEFEFFFDFFFFFCFFFDFFFFFCFF +FFFDFFFEFEFFFFFEFEFFFFFFFDFFFEFFFFFFFCFFFDFFFFFFAF8E5F492E2627292B332D32 +47464C565983D9FFFFFBFFFFFDFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +FEFFFEFFFEFFFFFFFAFFFDFFFCFFFFFDFFFFFEFFFCFFFEFFFFFFFEFDFEFFFDFFFFFEFFFF +FDFFFDFEFFFFFEFFFFFEFFFFFDFAFFFDFDFFFDFFFFFEFFFFFFFDFFFFFAFFFCFEFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFD93 +4944423748458D94D7FFFFFFFAFFFCFFFFFCFEFFFEFFFFFFFDFFFEFEFEFEFEFFFEFEFFD3 +8F884439202B2522212319242725292929343C364244494F546DFEFFFEFFFFFAFEFFFFFF +FFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFCFFFFFFFCFFFFFEFCFFFDFF +FFFEFEFFFFFFFEFEFFFFFFFFFFFFFCFFFEFDFFFFFFFFFFFEFFFEFEFFFFFDFFFFFFFFFEFE +FFFDFAFFFCFDFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFDFFFCFCFFFF974F443943394A38434B3C524A52538F8D8E +9093908A92888D8D8D9087443C38412626212025191A1E1B181B1F1B141F1B1A1F2B2330 +32333843483D6A6655BAFBFEFFFFFFFCFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFF +FEFFFEFFFFFDFFFCFFFDFFFBFFFFFEFFFFFEFDFFFFFEFFFFFFFFFFFFFFFFFFFCFFFFFFFD +FEFFFEFFFDFFFFFEFCFFFDFFF9FFFAFEFFFBFBFFFFFDFFFDFFFFFE9A7995FCFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFFFFFFFE +FFD83D3E2D293E3F3F333D393C4336323E33313A262E25312C2E29242A1F2622251F1818 +170E1410140F1115121010151018202622352A4243434A4D51705A6E9EFFFDFFFFFBFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFCFFFFFEFDFFFEFFFFFFFFFFFCAE8D +938A8B8C929595918D8C8E90FFFFFFFBFFFFFCFFFFFFFDFFFCFFFFFEFCFFFFFFFEFFFEFF +FFFFFDFFFC9A6B5E715FA0FFFFFDFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFCFFFDFFFFD4433D39423A35343739392E2F253837 +36382430242D262327212325211C181817160C0E11110B080F1512141211141925212733 +2F45423E48535A56585D6F5BBDF8FFFEFDFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +FFFFFFFFFEFEFEFEFFB28C52432B252C2728242A37353634312F31383D3F3D453D3C5044 +4A90918FB7F9FFFBFEFEFFFBFEFEFFFF8F959A61616F7272607158D7FFFFFDFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFEFFFFFD +FFFEFFFF71484B3D403F3F31333529393C382F27282B32272A22222025201A161A1D1616 +130F0F1419121618171A181F2D2A2F2A38353E3B404B5D555158716E5B747464D9FFFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFCFFFBD48B3E30211C1821191C1B1D1825 +23242D232E2A2422282F3231403C3B39312E31323934313E373B413D333742463A30534B +5F696E766575665FDBFFFAFFFFFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFF9FFFCFFFFD54A433B403436363941414437 +3434343836312C2C312E24271B271F1E201B15202024201D2123242222282E2E40394545 +3D33444C51525D695C6C736F61596F7CFFFCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FBFFAA271512160F1012121311191615151B2124212B23272A2A2B2D2E2D2D342F383C35 +39382E372D393D372E323431383B445563545F79836E836C76FEFFFDFFFFFDFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFDFD +FFFDFFFCFEFFFD7745392D3545423B484642414A4A403E3D393B4B3935353633363A3435 +2D303D3B36352F3B403A403D39493B453F504F525A65556B556F7E6F5A5D5C5D615D57BE +FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FAFFFFFFFFFEFFFFFFFFFEFFFFFEFFFFFFFDAE22040700010402030A0E030E121313201A +1B1F2D201E312627202C2E312C363233362B332D2C353736343F283E41494648556D7782 +88768C8B71A4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFFFCFFD5583E453B3B57483D44 +524F525847575C675D4B5758493B55564945514C4458533D41655051434E525045575151 +574C6355596C6E736B85466F6E715F625F746FFFFFFFFFFEFEFFFFFFFEFFFFFDFFFEFDFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFDFFFFFFFFFDFFD230 +00010000010000020005030B0E15111A1A171C2D1E2732252E322E2F2C2D37363E3B3737 +2E2D2F313B3537413C404A505762828C7B927B97949ADBFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFDFFFCFFFFFFFFFED9693F52594845424146594A61635A5351604F3D43525D5E544F +4F38505F4D5867585C595855484D5856645B5B6754585C626F5C63715B6061575E5C7376 +606E9AFFFEFEFFFDFFFEFFFFFFFDFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFDFFFFFFFEFDFEFEFFFCFDFDFFFF620100020002030000000002030A11141D1B201918 +2B322633322F3B2E2F37303E32483F4D3D37373A433F4A443D5E565C696C7C7F9C809F9F +9D9981FDFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFEFFFEFAFFFFFCD77D4F484346 +54554845594F524F4F5152414262536253514042615D506E575E5A4D48534456466A5265 +605258576C606F5F5E6C5F5C5E64605F735E7576797CFBFEFFFCFCFFFEFFFFFFFFFAFFFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFDFFFFFFFFFCFFFFFDAB13040001 +00030000010001000408181E211E24242232363B34372B3D344A4236473C57504D594351 +4A484F645772656C8B968283A086A7A5869F74ADFEFFFEFDFDFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFBFDFDFFFFFFFDFFFEFFFFFEB863535B5B5B5D4E504E5342503F3D66585F4E5052 +40515F5E5F583B5A36584F425942584C515F4D5B554F596B596A595A73725F5B715C7474 +6174627878D7FFFFFFFFFFFFFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFFFFFDFDFFFFFEFF450103000100020000030000011216241C292E2C26293F37 +4030452B434C594F4E47454360707B6B685E4B636D838E8D7D829CA4898DA7A3A2879A89 +DEFDFEFFFBFFFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFDFDFFFFFEFFFFFFFFFFFE +D7875447506056444253536A5253555444405053644B5E3D48465246503A3F3143565751 +5347334A50656E6A5863747861657373746376787A8E7A51A8FFFEFCFEFFFFFEFDFFFDFD +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFFFDFFFFFFFFD214050000010001 +000000000108141A21332627332F40334644403F4C5D6453595F616C4870867177695F55 +725F93967E86849FBEA7A387868A848FAEFEFFFDFFFCFFFFFEFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFCFFFEFDFFFFFFFEFFFEFDFFFEFBFFFFFFFBFFFFFF90945C6751565445425442573F +575150544A5A5947464E4D4630444C3F403B2E2D3835605D505758718570726063636177 +76638B67677C7C6EFFFFFFFCFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFDFFFDFFFFFBFE81000200000302000200010102131825283E452E2B43433E574B51 +4D4F5D5C606475737F617F7F958A89757579787C969B829D8686A09E838A839D8EFFFBFF +FBFFFBFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFEFFFFFEFFFEFEFFFEFFFFFFFFFB +FFFCFFFFFFFFFDFFFEFFFFFB9A977E5C4F4F55565251524F4B46564F4C3C463D453A3E34 +3037363B535A4E614F577069615F5F7576767877797C79687B5560DBFCFFFCFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFDFFFBD328030300010200000200 +01000B1B242D36343D4636575B426D6C5E6D5C80658D7A688168838781877571A2A97893 +7A7D7E807F868384838585628DBBFFFFFFFEFFFDFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFDFEFFFEFFFEFFFFFFFFFEFEFFFEFFFDFFFDFFFEFDFEFCFFFFFDFEFFFEFFFF +FCFF9B9E5A685D4E55444E4C443F2D30403F303530333C3B434D495155575D4A73627778 +6478797767797B7E7C75BAFCFFFEFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFBFFFFFBFF +FEFEFFFFFEFCD70101010001040000010101001B1B2741363B4547595556625D6565787A +7A7D858483826C868E8788758BA677907A90967A9697809B837F837E73BBFBFFFCFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB7985951474A303A422A33 +2A32302D3B3F394D3F4D5053554857697B72777C65507A7D80657E817DACFDFFFFFEFFFF +FFFFFFFFFDFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFCFFFCFFFFFDFFFFFFFAFF84000200000300000101010002 +1C1F374339404A616A5E5F6A7E697F7C84846C7284736E6D866FA18A758A8A8D92A2787B +608095967F8479686EBFFEFFFFFEFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFEFCFFFD7E3B463F39363A2A2625233035303739325048545268707063 +61697C7B7B6C7B836A6A826968FFFCFFFFFFFCFEFFFDFFFDFFFAFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFFFEFCFCFEFF +FFFDFFFF2B00020002000200000400000A1E2B3E3C394E536A5F74667E7E80738BA0706D +7872896F8B8A6E8A75748D8F768A8B958D637D78927D7A7C76BCFDFFFFFDFDFFFFFFFEFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFBFFFF7A373F3737 +301F24242C27282D2F39413F385F6D695A59686363667D927A687B807F6B6E76FFFDFDFF +FFFFFEFDFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFAFFFFFFFDFFFFFFD01B0000000200000000030000132932 +33505A5354635C77676E6D7779787A7B7289918C8B8871728E868B89A4A3767291905A93 +5E7B936E91E1FDFFFFFEFEFFFFFEFCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFEFFFDFFFDFFFFFF5D403623311B272A242B2F213C3443495B5C505856 +716378747F7E6A7F6E67506D686960DEFCFFFAFFFEFFFCFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFDFCFEFFFE +FEAA0500010502000003020100031D34402F496851487268827E6F727C7E62797B7C797B +8A8D707672718BA188778A8C8A8F8C7773796788B9FFFFFAFFFAFFFEFFFEFDFFFFFFFEFD +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFEFFFBFFD54A +322A2B2C22212223212B3C423C48544E4E5A585872647C6B6980676F576885837076DDFF +FFFEFFFBFFFDFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFFFCFFFCFFFE83000700030000020000000002183A3C405C +5266645E78826F8F657E81817F7E97808F8C7A8D758A878A8A888C86A18B5C73746E96D8 +FFFFFFFFFFFDFFFFFEFFFFFFFEFFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFF8FFFFFEFFFEFFFFFFFFFDB73B2A2C25241F21241D2F2926313D48546F +68686A847A7A627F6C686855837F6E697DBCFCFFFFFEFEFDFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFEFEFFFEFF2B +02010001000000010000000E1A2C40404B5C6464537D7C8E7CA0818483889B80805C957B +8E758673898987888D9B896994BDFEFAFFFFFFFDFDFDFFFFFDFDFFFDFFFFFEFFFFFFFFFD +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFEFAFFFFFFFEFCFF +FEFF77392726292A211D1F2221253A42574D5D64787D5E66776A546C546A6C5972848384 +A4FCFFFDFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFEFFFEFFFCFF150000000002000301000106172E3936405C556F +757F6B87927C8488A2866DA283829964AC8E8F76738A73737970A2DCFDFFFFFFFEFFFCFF +FDFFFFFFFDFFFDFFFFFEFFFFFEFFFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFFFFFFFFFEFFFFFBFFFCFFD53229272623222124282A2C302E3B +39475E57575F666C675353716C6D6A98856E6CA1FBFFFBFFFCFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFFFFFDFFFFFEFFD2020300 +01000200020002000822203A3E4C4A656574786F8E7B848586A6888BA789869C7F7D9478 +8D73688CA7FBFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFF582D2D2B27232323201E213037444C5750655C5D4E52525372706A979A856F +706EA1FFFFFFFEFFFDFFFCFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFDFFFFFFFBFFAA030000000000030001000106282E41504A4E645F7D6E +80AC9BA486A8A7AAABA58AA58087826E82ABD9FFFFFCFBFFFDFFFCFFFFFCFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD83827261A20191614191F2D +33473B48503F464E476082667F719B7182876E888391FFFDFEFFFFFFFFFDFBFFFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFFFFFEFFFFFAFBFF840002000101 +0002000200000E253D3E555F685978658477AD9E9C8DAAA9A98F8B8D888C83748BFFFFFF +FDFBFFFFFFFDFBFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFF9FF5F282A221817191A1D212C322E3B465650575959686D6A818296716E +716E867175FFFFFEFFFEFEFFFFFCFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFEFFFEFDFFFF830001000300000200000100192D2F3C583C525D786B748C95 +B7A8908590918FAA8C8C8E8283DAFDFFFDFEFFFFFCFDFDFFFFFEFFFFFAFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFDFB92332318191F131C16 +211F253147374753696D607A706E96856D8670568984866CFFFFFFFFFFFFFBFFFCFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFCFFFFFEFE6200000100000000 +0000020018332443463D677366838792A0B8A88D70938F6E8D8E698D8FA7FDFFFFFFFFFF +FFFDFFFFFFFCFDFFFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFDFEFFFCFFD53C2229221B0F1918191A282B35414C5266595E687D806B776E +716C8D7372866BFFFEFCFFFFFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFDFFFFFFFFFAFF440100020102000401060004202D31445B4F555A656A767985BE8C +8FA99390AC908D928585DFFDFFFEFAFFFFFDFEFFFFFFFEFFFFFFFEFEFFFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFFFEFD6F23261D1411 +0D191619232740436354536E72647B71866E847284708C6E8B78FFFFFAFFFFFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFEFF29000001000000020100 +0000223341504F53534B81587180A18AAC8C93AF7290926F8E83A6FEFEFEFFFCFFFCFDFF +FEFEFDFFFFFFFEFAFEFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFCFFFFFFFFFEFE8E2F1E1816140E160F191B29324F59526857627B7F6C6F +6D79858B868F858781FFFFFDFEFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFEFEFFFDFF27030000000104000400010F20313E454C675E4B7A748A82A1A7ACAF92 +93B1AF90A9A78FDFFFFEFFFFFCFFFFFFFFFDFEFFFFFFFFFCFFFFFEFEFDFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFDFFFEFFFFD42B1C1B +12120B130F1B1A2640415B4C6B675F647E80876C7175736F76727785FFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFDFFFFFDFFFFFCFF270300040000000000000211 +29333C525B7A4864798B947AA1C4AEAFB474CECB918DA792FFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFFFED73E2318141309091517192B48425751676A716680 +8172728A74897375747193FFFCFFFFFFFDFFFDFFFDFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFC +FEFFFDFFFF140100040000040001010215203042535D6A645F86877882A4A3AD8FB48FB1 +B2907497ACFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFF41 +1E120E0E08110E121E232F3A5460566B6F656D6D889D72778B8C76738BA4FFFFFCFFFFFD +FFFEFDFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFDFEFFFFFEFFFFFEFFFE0402020000010100010003182431 +425A626564736F8B77848A8AAF93CBB3B494AFAB98E1FEFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFCFE4E1F15080B05140C131D1E3B474664736D61 +7A938B83738B8C76748D8E8B9EFEFFFEFEFBFFFFFFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9FFFCFF +FFFDFF0700000100000100020004122A414A5B676567727C7680A0A491B091B794AF758F +8D7BFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFDFFFF +FF8A23141005000609131D2C3C4D5954656873647D6E738A8F8B888C918A73A5FFFFFFFF +FFFDFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFDFFFEFFD21700010000010000000000132841545C +6A6465717C5C819D8B91909299B096948F8F91FFF7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFCFFFE8D19170B040203080E2025334E564E4B +5166676E88896C768D768A90A79FDEFFFEFEFFFDFEFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFA +D2290003010000040002000212283A535A6865586F697A81B8A48F9495B4B0B89391A9B2 +F7FFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFF8FFFE +FFFCFC8E1D0F1200010204081127434F415A6873767880848B728BA0938CA5A26CDDFFFC +FFFFFEFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFF2E00000001030000020001182B464B55636A +665E7D777F8AA48E9398B3B4B3B58F8FA7FDFFFCFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFFFDFEFDFFFFFD8C20170C0104020508162F414765 +796B63717884718EA59FA9A78F948A82D9FFFEFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +0003000300000200000118263A4E546058535F7D5D7F86AD909499939892938F8EB0FFFF +FDFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFBFFFEFF +FDFEFEFFFA8D1D1106000000031724294044484D4D60627A88A6898C75A88E767C7570FB +FFFDFFFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFDFFFDFFFEFFFFFFFFFEFFFC29040000000101000200000A2C49506154526B5B +69776486A8B2939698B597709681A4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFF8E1814000002000011192B2D +3D425060757A7F878B7592A77D7578797988FDFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFFFEFFFFFDFEFFFFFC2E0000 +01000000000400001D2845553E66455559698E94868AB0B09E76B678929499DFFBFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFBFFFEFD87190D0400020105151620324A5C637261647E838DA7A3777B907B908E +A2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFDFFFDFFFAFFFFFEFCFF6200030000010300010000153836435856634362638B +938590AEB295959C97958E6EDBFFFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFF8C120B0000000003031A +2F394F5956566A7980898CA78D937B8F7B7678A7FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFFFFFDFF8400040006 +000100010003161D2C374D54666C5963807A838E9373779A9B75967469DDFDFEFAFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFCFFFDFEFEFFFA70170200030100030C2331345249616A81947074735E8D797D787B +935DDEFCFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFAFFFFFCFDFF8300030000010001020000152729464457696D56636F7B69 +A9AD989B979B94B99266E3FFFFFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFBFFFFFC3511040001000003 +141A2F404E576B6C6569888688947B7B997A5E616DFFFCFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFCFFFFD2000302020000 +01000200152B34384F4060655A5F538382A590B376B9B9B8B79668DDFCFDFFFFFBFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFDFFFFFEFFFEFFFEFD3D06020004000104121F3F39435D827177797F8C7B735F5B7F +615F5E62FDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFCFFFFFDFFCE050000000002020003000D2A323C3340595D69676C75858F91 +97BAB5BB9598B290DEFFFFFFFDFDFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFEFFFFFBFFFFFFD6120801000002 +00061A3231516A606B6E788287717E786377796561788DFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFDFFD20500000003000000 +060010264446433E5A616A64698F80A5B19496B99D959B93919FFEFFFDFEFFFDFEFDFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFDFFFFFCFFFFFFFFFFFDD613030200000100051A27304A5A686B6F7A58705D60907C +6492807A7BDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFDFD +FFFCFFFEFFFDFFFFFD2A010001000300010100102443544E3F5B6F7C666273B584A8B5B7 +B9B97999B595A5FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFF8713000100 +0101000A1837415963676C626480627A74967B7F637F9687FFFFFEFFFDFFFEFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFFFFFEFCFFFFFFFFFFFE2D010001000500000001 +131C3B45434D4F6F6B65669A92A3A997B9BABA9C7B98929FFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFDFFFFFC4F0100000002020011282F4C4D51535B60677274917D +817D9B99797F82FFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFD +FDFFFFFEFCFFFE8000010002000000030300203148474B40596D5F62818EA4A9B2B7B7B9 +9A79979697FDFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFFFFFF250004 +06000003060F273C4B4C5666585373748A7A7B967F7D9B7E90A0FEFDFFFDFEFDFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFDFFFFFDFDFFFFFDA60401000300040101000116 +2B3C463C415272647083A89B9FB7B4999B9EBB989993FDFFFDFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFCFFFFFED7110000000000000519372E4D4F66565E846A7279 +9499617F7B7E7D7DDDFEFDFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFF +FDFFFFFEFFD408000000000200000004082F31433F3D4C65706E758F9885B5B7979B9D9B +779980E1FFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFAFFFE8503 +000100000004002030464759524660537F8C79927B9B6681827E6DFFFBFFFFFCFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFFFDFFFFFAFFFD2B0003000700000200010E253B +434F4F4A557C6B618799A6A9B797BAA1D8BAB689DBFDFFFCFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFF2B0002000200000212242C4C544369476F6B81 +8F7E957D809B97827F96FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +FFFAFFFC630000010100020000041827424A4B4039565F73807A7C9FA996B89CBCBA9B9A +979CFBFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFCFFFFFBFFD6 +08000200040001001C293F515D50505D7C718C8F959A9A81687F7E7CDEFDFDFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFEFFFC840001000102000100030E233D2C36 +34485666637F6C7780A9B0D2B9BF9D9D9A7589FFFFFDFDFFFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFE8700020000010001051F3C484D5756657186 +6C89607C6581829A819970FFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFC +FFFCD40400020000000200020220303C3A3F3B68566F716A7280A3CCB9D6BDBD9F9B946C +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FE1C020001000100011926384A6357765B706788767D649D81A083817FA0FFFFFFFCFEFF +FDFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFF28000000000400000300032E3C374D4A +6A64727F687578BCADB4B89D9CA0B7798ADDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA020001010200010724243F66716A5559 +7A6F8E77999A9D9D7F8282B2DBFEFFFEFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFF +FC6002010000000000010012282C373E4855656A7C816B769CA7CC9D9D9C9FBB9C95A5FF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FCFD45030000000301000B21376350465B45616F6C7091989B9D8383989D9CFFFBFFFDFB +FFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFFD2050002020002000002052F3845403B5B6A +63716B6B597AA9AEB49BBBBEBFB87583FFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD500000301000002001745405B5B4968 +6363618A94947E836880A29B9EBAFFFCFFFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +190100010100000300051F3B3738414A6753657B6C6D6384C9D29D9BB9E2989C8CFCFCFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFAFF63010000030400001530414F4E485662657868859282816585BBB48178FEFFFFFD +FEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFD630001000000010000041E34453C394A586576 +60836F75818BB2B89DBFC3BE7899ADFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFE05010003000002091A314C4A3D54 +5A657A90798A7D818784A0A1889B99FFFCFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFD700 +000500010002010015373E463A4367666853786F6E8289ACCFB9C6BCBD799886FDFFFFFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFF44000300020003000F2D3A403A5A67777C6681758081829FBBA29E9F9CFEFFFC +FBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2702010000010100000F213B4738403C64695276 +6C808EA38D969CA09CA17C9AA4DBFFFCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFF03000000010000001C393B3E3D +696B6176628593987F89838686876584FEFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFFFFFBFFFFFF820002 +0200020000000513313A3A3F4C547768705085889390AC98BFBDA19EBA9797FFFDFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFDFFFCFE46000000000000011427383F4879646B527B84917B9684A0A48789A186D9FE +FFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFEFFFEFBFFFBFFD2060200000002000001142C3939384D566A55656B80 +80769FA9B59E9AA49D9F7B82FFFCFFFDFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFCFFD101010101000000091E36374A +5268587879668A87968681868889698683FFFAFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFFFFFEFE45000000 +02020001011224323C504465685568646A88867E8C929D7C82BE9FBD96CAFFFEFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FBFFFCFFFFFB1600000000010002122E3D396A67506D7E636A6F7B666CA089A48AA0A1C0 +FFFFFCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFEFFFFFEFDFFD40103000300000500001D393F4C4F695767556875816F +5E83A89A9C9DA0A29D999CFFFFFFFAFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFBFDFF8500010100030100041C393E +5F646B51526678727683828C868CA7A38281FFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFE1600000000 +010100010C284348455967645655627D71747C8AB7977D7DA29DBDB6DEFCFFFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFAFFFFFDFD030000000000000317353C56665658576978675D618389A2A68A8AA6A2 +E0FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFFFFFFFCFFAB000003000300020000143A48485053565755567667898F +82AD959F9FA2A0A1989EFFFFFDFFFDFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFF8FFFFFF4200020000000001112D30 +4957686454766B62707A827E89A78CA5A6A083FFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFAFFFB140101020100 +0300010F2639444B485B555554687B80747CA3AE9CA07CA3BDC3B2E1FFFFFFFFFFFFFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFBFFFFFFFEFC84000000010001010D262B4A655458666C636950749AA2A3A1A4A8A68A +9EE0FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFEFFFFFD860000010002020000081A3D47454B575268686557698A729F +90969C7FA1A19E989DFFFFFCFFFEFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFBFFFDFFFFFF01000001000100091D20 +3D6659665555654D666D77819CA7A98F8BA8A89AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFEFFFF17000000000100 +0001122E473D4D5854557B64647282877B88757A7E9FA5C29DB6DFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFDFFFFFFFFFFFEFFFFFFFDFFFE +FFFCFFFEFDFFFFFFFEFFFFFFFCFFFCFFFDFFFFFFFFFFFFFEFFFBFFFFFFFDFFFFFFFFFFFF +FFFFFFFFFDFFFCFFFFFFFFFFFFFDFFFEFFFFFFFFFEFFFFFDFFFFFFFEFEFFFCFFFFFFFCFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFF2A000000000000021828495E585442434865667C72999FA28C8B91A9 +A694FFFEFFFFFFFFFDFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFDFFFDA9000100020000000009243847383F536A78646A69506D736070 +949FBFA5C1BFBA8EFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFDFFFFFEFFFEFEFFFEFFFCFFFCFFFFFFB18D4A474B493D3946535E91B4FFFFFD +FFFEFEFFFEFFFBFFFFFDFEFEFFFEFFFFFFFFFFFFFFFFFEFFFFFDFCFFFFFDFFFEFFFEFFFD +FEFFFFFDFDFDFFFFFDFFFEFFFFFEFBFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61000200000200001A21 +30494542575666637E76837F9CA18B92A5AF8988A5FFFDFDFEFFFDFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFFFF1600000400000001 +0213313B2F3265493B69746556536F9083939BBBA29EA2C4B4E2FFFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFFFFFDFEFFFFFEFFFFFFFF9054 +2F2D2724232D2D312B3833403C4C43556084D9FFFFFFFEFDFFFFFCF9FFFFFEFFFFFFFFFF +FFFFFFFFFFFDFFFFFFFFFEFFFEFEFEFFFFFDFFFFFCFFFFFFFFFDFFFDFFFEFFFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFF85000200010002000F202B4D50575665585A65787E929AA28B8BB08B +8D8B79FFFFFFFFFFFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFCAA00050000000000000624414846596B50577D6A545F69869A8BAE +BB9FA2A7BEBC9EFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFEFFFCFFFFFFFFFEFDFFFCAE321A15151A1111171D1D202E28363647434441505563 +6375D4FFFDFFFFFBFFFFFFFEFFFCFFFFFFFFFFFFFFFFFEFDFFFFFFFBFFFFFFFEFFFFFBFF +FCFFFFFBFCFEFEFEFDFFFEFFFFFCFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD01010000010000041C +2E4459656757545778797A8F9A7F88B08DABAD8FC1DDFFFFFFFCFFFFFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8FF160200000100000100 +1337494F51694F2567976B42647289B5ADD09F9FC1BFC4B5B6FDFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFFFFFDFFFBFFD550181506080001 +01040B0E191822282127303E46454B4F555466555479D7FFFFFFFDFEFEFFFFFFFFFFFFFF +FFFFFFFFFFFFFDFDFFFFFFFAFDFFFFFDFFFFFFFEFEFFFFFFFFFEFFFFFFFDFFFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFF00000402000000001C30526879535766666D7E799C75998C8CAA93 +ABA8AB94FFFBFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFD400000300000000010926424B504A672523806F5756838289A59176 +9EA2C5C2BDB4FEFFFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFDFFFDFFFCAE370703010002000300030109100F251521283540373D444B3E4959 +4B6A5B697690FFFFFEFFFEFFFEFFFFFFFFFFFFFFFFFFFDFFFEFFFEFDFFFFFFFDFFFBFFFE +FFFDFFFEFFFDFFFFFCFFFDFFFEFEFFFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A0000030006000215 +264E54443C316C7367767B6D8E6489A98E8F97738A62FFFFFEFFFDFEFFFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF43020200000001010018 +3443535C654A072A869C575567A893A990A0BFC2C2C2DDAFFFFFFFFDFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFAB2205000500010001020200 +00001315201D282D342F413B434C3E40485E6362696B87876FD5FFFEFEFFFAFFFFFFFFFF +FFFFFFFFFFFFFFFFFCFFFBFFFFFF8C9241433F40483C53516490B7FDFDFFFFFFFBFFFEFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFF26020200000000001E284554562921808C73807D935D7B85AAAEAB +95938C72D8FFFDFFFDFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFF010200020001000103273C3A505A56280B56877C567283777B90B8BD +DEA3E49FB6ADFEFFFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFCFFAC1B00020003000101010000000006111C2427243434424544504C413C465D51 +61675A5D87766676BBFFFFFDFFFEFFFFFFFFFFFFFFFFFFFDFFFFFFFA8E3E2A2621282A25 +2729293F38373E414A42515099FEFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2C000000020001010E +153B69641B10B8836851846A82959DA48BB2AD94928B95FFFFFFFFFDFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFFFFFDFFFFFEFFFFA702000000010100031135 +3C4452663A09227D858268658A7883CB99BDC4C2A47BB7FFFDFFFFFDFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFDFCFFFFFEFDFFFFFBFFFDFFFCFFFED1480002000003000001000202000409 +12202D32283436433743453D4344455B4F53626A5D71767866806B9FFFFEFFFFFFFFFDFF +FEFEFFFCFFFDFFAD381618131918191B20221D242832352C3536444B3F4454534D80DCFE +FFFFFCFFFEFEFFFFFFFDFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFF6000040002000100161553586416147264716B6167678E98BAAAB1 +B3B2948B7BFFFBFFFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FDFFFFFFFFFFFC2A00050002000103001C54383F585622084786A0565480778F85AED7BF +C3C4A1BC9AFBFFFBFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFFFFFFFFDFF +FB65040000000101000000000000000F101D2628352D3947574A59573C4E4E494D536266 +667C656275646C7D8469A2FFFFFFFDFEFFFDFFFFFAFFFD6E160907000005000610141614 +182420262B31353D3A42474D5148575D586DB6FCFFFBFFFFFCFFFEFFFCFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD890000000002000211 +15477669161160978A666B6C77899F84A8AF939373B08CFDFFFFFFFCFFFDFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFCFDFFFFFE0302000001000000022C3C +3651653B0A2A53839E686085769388D1BEBDC1C19FBEB6FFFFFFFFFCFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFEFEFFFFFEFDFCFFFFFCFFA61A0000000200000000010001020E11202225 +2B414F49455E4F555161575263656556725773605C7A79677F826A6D7FA3FFFDFFFCFFFF +FFFFFF6812010002010200000400040A16131B1F2427332A3C3F3F44493D4C4954635C61 +534C84FFFBFFFFFFFFFFFFFEFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFF82050003010002001617546966111758839C5F55627E8996A4A890 +977994918EA8FBFDFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFFFDFFFEFF8400000003020000001835463C5A692A094658A380585780769BAC95DBC3 +A1C4A098E1FFFBFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFEFAFF4501 +0300040000000001030001001A1D27253C443E505F4B4C4F4A62474654635B5B4F47586F +6C7367747C7F83836A896868B8FFFDFFFFFEFDAC1E0000020300000101000003041B191D +1F262F3237373946423A493C545E53575E4E3D55554F77DAFFFCFFFCFEFFFFFDFFFDFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF420103000002000213 +163D77651812555F9275546A8188939670AF958F99B4AF94FFFFFEFCFDFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFBFF2800010200000002012A3C3A +51673A0628595385856466947F9D8FB6D8A3C1C09FB6FFFDFFFDFFFDFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFFFFFEFFFFFEFFFFAE010001000200020100010000020A212936313E405C +5A5F4E5D52525D6E5D5E66655B5944436A807368737F697E836E6C6E68796ED8FFFFFAFF +500502000202000002000000030B18202019262D2C37314154524549414F545151464A5B +4E5D5661686A7EDBFFFEFFFFFBFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFF2D00000000040000141D4978581513546A8882566A6675747EA6AE +947898949191FFFDFFFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFDFFFEFFFD05000000000102000624323D5A5029075366669FA35379828187AFBD9BE0 +9CC69F81FFFFFAFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFEFEFFFDFF4600010700 +0200010100000301081623363C454541614E40645255465A666758545B6A57415C5D705A +605D72696B839986877D7B627B5DFFFFD623090000000100000302000002121722212A2A +3D45424335405941405942455D5549586A6E4F534D557558485285FFFFFDFFFFFDFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27000000030001010E +29455876131456566F998668636B6E958C939099B6B6B5ABFCFFFCFFFCFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFCFAAC00040300010002001234333A +56571215685554849C69687E9CA3AFD3E1BCA3A0A09BFFFEFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFDFEFCFDFFF9D613020200000003000000030300082538325A42414F415D52 +5F5E574B665967645247656647473F686C5F525A59658080876A70697A71685E558C2714 +000005000100000000010E181E2E2F3931413F4C404044635D544C565B59675A5E6C625B +4E535462685A595A6E67B2FFFFFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFF05000400030101011A30557A6314125265789886546F67739B888C +99B499B59593C0FFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFF +FFFEFDFFFF820200000001010200163C465164460C2B5568679E9F675F8B9BA691B99CA2 +A1A099B6FEFFFEFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFDFFF78A00030000040002 +0001010001111B233849404B413F48535F584A6655663C3A3E3F403C5C6254555A696573 +73686B7B7F836B82817F7471535845391D12000200030001010005121F263239433A423F +39344552525666604B4D675B6262666051514141505458666B5A6C5C627ADAFDFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE000100020000000021 +254B505B0F13576567838467566D907B898FB197787996B0B3FCFFFFFEFDFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFE2C0200000300010005243B5159 +672F0F3A6779679F9F667A91998BAF989F9FA37BB9BBFFFFFFFEFEFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF +FEFFFDFFFFFAFFFFFF2A000000010003000000000005132B3B3B4E5A424C5444495A6A65 +6854383E302B3E4B3F3D675F467569666A73886B6986906A7E907E7B776D6054422B2010 +00000200000001101C2B44393F424C402B383B46545665636D5F59596275636A5F615451 +3F675652686D685A5B5A7082718CFEFFFEFFFCFFFEFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFDFFFFFEFFFFFE850000010000000009252F3D55560E0E667857849B6A66808F7A808E +7699749CB6B4A7FCFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FCFFFCFFFF01000000020000010D34323B696B1512657973639F9F586A8E7C83B0A1BBC1 +BCA1B4B8FBFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFCFFFDFFFFFBFFFFD117000300010002000100 +040216202D3E4740514A4547475B7B64663E303F3D2D343868765865725E7E7353686A69 +5C786D6E60798C8F7F7871594C513B282515020000060009171F3A3F3F4233533E504B47 +6B5D6F5E5E61714E3E6763665E5E795E6258695655486A69595B5C7F827171845BD8FFFB +FFFCFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFCFDFFFFFCFF42000300010000010D29 +393A67631512676750739D72575D598E82AAB396D6BBD7AF91FFFFFEFEFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFF0000010001000001112F3C4961 +430D2279767C56B784637E7D79A08DBA99C1C29AB8FCFEFFFBFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFFFFFFFFFC850600000002010000020002011C323237405B514B46494D676369483933 +324F3C386957616865695A698A956556666C5D7164665D89848264885B6E59423B35261E +180B0A1227242F4A4A344A414C55574E455D54585454685D684E576959735D6368495D5A +584A5B566E5A6D596F806F73606279618BFFFFFEFFFCFFFAFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFFFF0600020001000201153130505547092464695A89935B595E81929B91 +94B69F97979B95FFFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF +FFFFFFFDA9020101000102000013393A556B2B0B5056695364858058818EB09FAE979D9A +9CBCB4FEFFFFFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFDFFFDFFFFFE66000000020102000201000306 +1F253B44373E57424E4C66656B3C2F352E4F6C5E7364717176715F605E70806F55567754 +676A6E8489596B60766158525E59554134221F2321303C3842504941423F46455B575355 +67676667656A54566E6768615C825C50475548445F70606C5E726C6F6F71607062745070 +D6FFFFFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFEFFFCFFFFA900030001000002002030 +4A495421064767646765888353546B7D9E85969AB6BFB8B8ABFFFFFFFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFEFD8500000100000200001B2F3D5778 +1515666864545A9C855481A68CA291969DBEBEBBB3E4FDF8FFFFFFFDFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFE +FEFFFCFF2B000502020000000000000016202A3D4341474B534A5A575655654B46433A71 +715D5F7065738587614B626E6D53575368545678667F8565695F6B715B5A636B4D433A38 +3035443C45513E5F4B334C574A655654536A57643B3E496C6353676A5A6B6F64445A5C5A +446B5A6D5D6D6F72746F5B725C795F624C66689BFEFEFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFCFFFFFCFE1702010002000100012D373D545A14186669635766826A64696894858D +95B89DBA9DB7B0F9FFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +FFFBFFFF7C04000001000000052A313A7866121566556A52669F8557919178808C93B6BC +BAB995BAFFFFFEFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFEFFFFFCFD2B0201000000000400020003162B33 +37555D4257545E62566553646B4756636F866D6A657975685666555455576C7468666655 +766870857658665B6D765B57805B464749434B564D4943655E65594A4868686458657853 +6A5640273F5361406A866678766F55455558715B52636E6774746B708863754B79614D65 +627A60FFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFFFFF9FFAA00000000000002000F3131 +3C546615146658766965869A6964808C81ACCC99BC9E9FB6B5FFFEFFFCFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFF2D000000010100000D3727486A45 +0D235B65545A66A09D7A8A87749D8C76BAB8B8B8D2AFFFFBFDFFFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +FED30800000300000200000200041B343B3C6E5B4C4C5C62696758665A6257516A676852 +77656769655568544D6270697D73676E5D6A6F6F74695D6955576B6F667370584958473F +515855546C676A6555453D55566A517B6955665655384B696F4756637E78635643595D53 +4358616D585F7D625F5F73714F7660666165617C665EDCFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFCFDFFFFFB190000000400000000222B4B4043480C2A677669696584A254596E8E7FBF +B897BB9EBC9A93F9FFFEFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF +FEFFFDFF2801010001020104113C384A522B055053666666649FB76958825F83899399B5 +BBB592A6FBFFFFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFD304000100000003000400000F1936474952 +66604C5A665A536766686559666865676884746C6F7D5B5B596E7A6E6D616F6E736E8272 +6177698C5D6F726E716E7B695368445257535964655F5260575555394E5E66546855515A +545654545963755B706C677D55555867525D6A54776D59675A7675597471796378626267 +79787A798FA0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8500020200020001000A372939 +4A582108486557665457836766657F7A948E909E9E9F9DB9B1DFFEFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFBFF29000000000100000D282D416A15 +14666569677866B88359646B82808A90B5B5B798B280FDFDFCFFFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFEFFFFFEFE87 +0000010003000000020200141B30506D4E4E55535A6854555579666957715E72686E6B77 +7C657F8758667775576A64748682777A605E7979737472747485727F5C606E5B605D615D +6B6E6D5F614F705E5A5B42546C6D5C5951515456566865546645495E8370555568535A54 +686C6857666B726A6B56757A646064617A7863677A90796673FFFFFEFFFEFFFFFFFFFEFF +FDFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFFFDFFFE +FDFFFFFFD10000000200000200041E3A343A5953151666586955625C809F56547F937D89 +999A9EA19EBBB4A9FFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFFFD2A000100000000000921395F6415186853766866688584605981758385AAADCE +9AB2AF8DFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFDFEFEFFFCFFFF8000020000020003000001001A26293E5E46434C +486A67545553795D726C587878728A85736685777470646A7A64676B8E75867C777B7573 +8177887161867771735C5E6C5F6D5B615C72697E5B6D5F55576B70594A70715D5C586062 +6F6C7D61507C5266655569625767666765695656576B5A675E5D475979754F5E5B7B6368 +69747963637B7C74DDFFFEFFFCFFFFFEFFFFFDFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFDFFFCFFFEFFFBFFFFFEFFFF0205000000030300000632473746 +4F4B082F5765685558679F8456777E797E8EB7BEC0BEDEB994FDFEFFFDFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFC2C000000000000010E283B607318 +1C646867665863868457696B799481A3AD958FB1928CC7FAFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFEFFFBFFFC810400 +000002000000030004172F373F4F4B5244596864535E757E69617876768F747A90727688 +7F82757B696B84656891807D7F77677D6679897C847376736F666F5C5D5D675D5C6D5D68 +6B585D69545569665E5463676F575B5E5E6476776B66656A6D624F58656B646A67546542 +5666526B525F475A585C625554796767687E656765686469806366A2FFFDFFFDFFFFFFFD +FFFDFFFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFEFFFFFE +FFFFFE290200000101000000051F413A3E5B5727083E516A565565648684636A827881AE +B5BBBFE0C1BBB4FFFFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFFFCFE2900020000000003163634545A3820626863686455A0836959688A8A9884CAAA +B0AF8E8A8DFFFBFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFEFFFFFFFFFFFF8501000000000004000000040F2A464D443E52485856 +70767187735B61948A7B7C74796770926A69828379825A6F7F7F817F697D7F7D7B7D637B +637E87887375736E5C6F5C6C5C5A6B646E5A7C696A6956586055695655645755645F666C +56424E6755576D62777C6B61615655655A556756786654685E6655755D576A6560636861 +616B767C7A7A7C7E7C7E71FFFFFFFEFFFFFFFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFFFFFBFFFBFFFFFF2902020006000100010211353F3B4C69 +48033468686354556E559F815A65687F9FADB2BDA07FA0BA96FDFFFFFDFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFDFF2804020001010001193F2F496654 +2038665A655A558A7C6250786B8778A0A8AD8A91ADA69BE0FFFDFCFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFF2500010000 +03000000000000232F4D57434A504970625C7A725A8D6C61908F76826A94697084878480 +858580716C6B867E827C6D7C7F6876907C767B797676715F725B5C6E535C5B6A576D5867 +6867575466655D5354535153527050636765595D5A69586153625E576F64505B615F6468 +545A64546668545A6B74656A7160576F777B626A7A65687D7E637C907B74D9FFFFFDFFFC +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFEFFFBFEFF +D102020201000001000100022335394B4C68220D426656566A67626D877B52606FAE88AC +B7BFA0C2BDBC96FEFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFFFDFC2C00000000010000153A283C5456191654656757646098716B6E7D8978829CA5 +A8A4A1A8BB88FFFCFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFDFFFEFFFD2B000200000000000200011224352B4B583E49617061766E +7A7E5E6B766997807E888D6F6E86889F757284706E6F715B80816D6A7C686A787F8B6467 +6460897460726F5B6B5D6D586F6C6A6855536A6666645E686D5F615D5263614F4C5F5B65 +50505D65675D616D616F6C49637C667559535F56686A57555356785858565F5F57586779 +5363837A6A7865817A794E6961B6FCFEFFFFFDFDFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFDFFFFFCFFFFA600050000000500000200091A3D36495A6846 +072269666664616C7696A58158798A7889AAB9BE9CA2C0BCB1FFFDFBFFFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFF5D030100010000000D29253E6865 +1517657755516D6582846865808981A99F9EA7A3A5BC9B7EADFFFEFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFBFFFF2C000000000400 +00000001112F3F42475A6750646B6E7B646F78556D85868A6E6E8D718A8B77878D82758B +7473716E586C83846C6A6D7D69797C8E676278778A7776805D5A6F685A5E686968686A73 +65636266666B644E5E5B4B5B5D5A5C445E51514A5B4C716260674E58704C5D705A5D6F4F +54514C5665566865525A534D584E5C597563757A7A646381698B788268687968A2FFFCFB +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFFFDFFD02A01 +000000060000000400061C363E3B5068662908556267656967756B859B6A577F8E909F97 +B7A1A6A2C199AAFEFFFEFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFDFEFF85000000000001030D22313C606633193C4356685466869F54786A6C7EA07F82 +A19F829C657F8DDFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFBFFFF2601010000030002010100143A3D56445F6555696E727E6A7975 +5789A188898B8D8B8A7A78758B7473738B73738787869A6F9B81826D7E6D7C7D79796465 +777862774B4C5D705E6F5C6B5C7F5B5569785656665F5161414C5C5D4D4C5D5A4957564C +574A565C5A595B4D595C6254576C4E514D4E5153566A5160686756534450607167697064 +576C7A777B808F7A92627D7B697A7A70FEFFFFFDFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFDFFFF660301010000010001000400021F293C384D4B783A07 +297655596667546A3E85A065546A90998CACC09DC3A1C0BA99FFFCFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFAFFFCAC00000102000001051432494769 +55172E685765546871997267777C899B8F9B989980817C957568DEFFFFFFFFFFFFFCFFFE +FFFBFFFFFFFFFBFFFFFFFEFEFFFFFEFFFFFDFFFFFFFDFFFFFFFCFF2B0000000100000000 +030018334E4E4F5E665D6F6C848E7B6F857B7390A88F8B7A8E927578908C77768C8A5C76 +888788896B8798837E87817B7F768776748A8787708081976C6A57566E575E6C6C6D7A7C +666865645751515C4E4E5C6A58575662455657475361445449595759495B6A675C4A4E52 +5B595E6F6364644F55425656686B6C66615D6958688D7E7D79797C7D7F6C74788E8E6EBC +FDFFFFFEFFFEFFFEFEFFFCFFFFFEFFFDFFFEFFFFFFFFFBFFFFFCFFFFFFFF670302000001 +000100010000020514363C433D5969652B094F796566666856586AA47C557298929CA7CF +9DC1C4A1BFD5AAFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF +FDFFFDFFFE00000000040000041139474D5D47301C55656B5554729A9E687E7D7C795E75 +92987F7BAA788C738ABBFEFFFEFEFFFFFDFFFDFFFBFFFCFFFFFEFDFFFFFFFFFFFDFFFFFE +FFFDFFFFF9FFFEFF28000500020000010300011C2F50554B44705D737B73908489898B8C +948F907D7C789195788F779074738A7674858B826D868797758C918B8B9473775D757287 +8B83647271747B83605A6E6F58879490907D555660675155735060536C5F6B5A49474646 +49615151525650544F4A554B594B575559565B63534F4D614154545256635666655B7171 +59716F7A757A767B6D7C667C7D798A7B79747EFDFFFEFFFFFDFEFFFFFDFFFDFFFFFDFFFC +FFFDFFFCFFFFFDFFFAAE490D01050005000000010101000112203049443E50677448092A +6865445768635655AE8882548D8AA9A08D94A09FA0E1BBB9C8FEFFFFFFFDFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFDFFFEFF1703030100000200102544404B +63451E2D6864565558999C6053657E76889F7990769279748A7B807C74FBFFFFFAFFFFFF +FEFFFFFCFFF9FFFEFFFFFDFEFFFFFFFFFDFFFBFFFDFDFFFCFF2900040000000101000007 +1E3E43445560695F7C8180967D7494928F7D979193979394988F9291918C78715C787088 +85907D797E92AE93929CAA9587846F69626162706E6F6C7A4E557F7E79707C8C9C9A9DAC +8E7578767C6665515E5F6360495D5C48464B635F4E5152564E5D40414442565353454E4A +665C49405D5C4E4B53546C52617667666D756467707453627E797E677A78788E7C5E7A73 +715DDCFEFEFFFDFFFFFDFFFEFFFEFDFFFFFEFEFFFDFFFFFEB04B160D0200000000000000 +0002020006151E2A4B513E3F467A451A1E3966656B7654685385837A687186867A9FB499 +A0A2E4E0BEB2FFFFFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF +FFFEFFFEFD4500000200000300132A42494B61683A1F5568686258757F85677D74747667 +5976777A706C877E7E75746A7AFFFFFDFEFFFFFCFFFFFFFFFEFFFEFEFEFFFFFFFDFEFFFE +FFFEFFFDFFFF2C00020100000100000200193D4B5F4C4B69517F8383908773789A979593 +AD987F7A7C95AD93919076928C748972927E9C937F9E93998D7274828780898C9895957D +7781858880736A74888B8986969683636677746F6C838E7566594F403E4E56534D4E5C58 +63544443585D3E3A353C513F4D4A3C4B47363C3A3956596E5E525C6A6C6960655169645B +5C54737568596479507D797B7D7664667175746D7C76FEFFFFFEFDFFFFFFFFFFFFFFFFFE +FFFD8C6D3818140B050000020102010000010300000B252E314E4F524C59576A23094577 +68666553475455798770637E7D8E9CA2969EBEC0E5BE9889FEFCFDFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFFFFFFFB8404000002000000061B2A534D +5456463E4057545764679E9F7964698066666D7070847085978C788A8159574B6EBCFFFF +FDFFFDFEFFFEFFFDFFFFFFFFFDFDFFFFFEFFFFFFFEFFFD2A00020000030000020100233D +3F4B5B405B686E848B938F7F9580979A97809E947D949496928D9477797D929A989D7E85 +8F72717B88929AA6949798A29A9592A18D918B828B8A7F7C7D878791827F765D4D435160 +68695E6C7E888D89866D4B2F222A373146605C59565257444F34423C4750393D3F312D33 +45434246545E564C625E665964626564513E666C63595F4560696075788479677B5E7570 +725A6D684A84D7FEFFFEF8FFD5928E8A3E451F2821161207020000010300010001020000 +0006172A3733404F4F484B56443C2229766D6169535955556CA37A68839A809EB48D9B9D +BFE6BDC2B9A6FDFFFFFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +FFFFFEFFFFFF00010000020003001A2C5D4E424E7B551832526666677298606F63746877 +7F7C8370836A7B7D7272586663527C564E5C96B9FFFCFFFFFAFFFFFEFDFDFEFFFFFDFFD4 +878B342D00010000060200030100031E304C4D5A6D607D9D908B94787E7F9A939F9A8277 +99977D8090939393789B7D9C83B39C7F808496A9AFADB5B3A696A0A09993919BA0A7A99E +99938B817977848F96868068543F373C3035363240485A6A65676D8186848570676C6642 +1C2E4453555243384A404C3E37373B33363B40484C4B4A4643595C5A5B5F634A564F4252 +52655C62675772856875775E6064777370735B59635F4D47524F4B432F34322627241F19 +170E0B0B03010006000000020201000008010A23303B42475D4C3E4B59652A2432455368 +6866556664849681834E7D83828D8CADB59EFDC5C1BFB6DFFFFCFEFCFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFF2B00030002000103182F4146 +475B6455391E4752683D77926984575C6F88747D64816F777D8B706C6C76606B5653584E +41504C4741444C444A4846444240362927261B0B080000000101000000000005193C4E4D +61746A87A39890B07D9E839B81B89A7E829C98957B7993837C82839E8698B8B7B8B4C8CC +BBA9B2B39F9BAAB2B8B7A4ABB0C2C8C0B3AA957C6A656E8495959B96948362484036322B +28293041515253525C67778599ABC1A666514E2958836F563744433E4349443D383B4436 +49363B3B3C483C556356544E4E514F4F53675F5352685866837469796C75647A6587705E +5E67655E464549423D342429252B201A1F100F07100501000300020105000006110A1524 +2D37424756524C425A68553C09186878577856526B7966AF8881527384938199AAD4BCDF +C7BDC0BA8CFBFFFEFFFFFCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFCFFFFFEFFAC0400000003000003222D33444B506747344055656A7874967143565C7E +65697882757F8C8C716A684E5D4D4641404B3B3B4236393338373132312B27292821251B +11050000010101000001010014233D405466666F8F7D987C837E809EB59D9A82817F9781 +937E917B9D818874695B5853333A78939AA1A4B5BCACB2B6C2CDCDCCCFDDE7DFCDB29480 +7981858F949A999795928B7A65544C403F372E2D323B48494E484C585F6C7A8799A3AA86 +5B4A2836658091604E4E534C4A4E3E46414250453736435152494D3F41554749615C644B +535352535D5C7361595B5D7989767A615E5F6E52674E3A3E3B323431231F181D0E100C0C +050C060F000203000403000C111A1E203326444147304B533E5A575545221F4A76686556 +425750666EA19566687A98958EA5B195BFA19FA1A1B894FFFCFFFEFEFFFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000102112C43 +4E5358706847413D47575568717F4C686577807D757C7A8B907E6F5568584E3E45424B48 +434133302A2F32272B252B282820261C1A0F0D0200000101000002000119353947695283 +7B8F96809B7F838086B79D9E98A080AE9A68969C84A17E6F605461664243586E563C8CB2 +CBCCB9A8A8B5BFCDDBD7DBB45F4D9B948A97A6AFAB9D908B8685817A6D594D4E50535149 +4038383F47525D5F5D5D62686F736F615858565148463B3B516B7F8D694749554A4D4C45 +48343A403D41483A383A49573346564A4E5D425C536462516761545562846C6F78746080 +6E44504C364D3A38322A2123191C101410160C11110E12090914161A1E1E1E2836412E3F +3F50404251595A77663B211F3A5558675556456469809AAE806972979A9D9A8CB795A67D +A3A2BBB3E4FAFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFF6601000000050000102C334E6062574F52554033546667608390726C69 +73556C626A76886C5C6A5854545146434E51373E31322E252B2B232826251D1E1A1A1313 +09100100030000000116232E45626D86727E949F7F9C808885A19DA28599837D98867E9A +868477654A42435A6A737C858262445288A7B58A76889AB5CDD8D5DDB35671A9A5A5B1AE +A79C876E5E5C6267665E5550576471746F6152474141464E5860646566686D706B5E5452 +585C606564646B6F707681879174484950493B3E3F3D3C39353F323343384C404754535C +4F506256556147545A667271586B67636A5F5B50644D41434C3C342D2F18201B16141618 +13141B1B1F211F20292F2B3036324C58504E4269464459737D673A1B1F49576767645564 +756B8098936F695A7A859B9088AA94A19BA4A09FBCA9FAFFFFFDFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF0500010002000202262A +414F5F4949637455455B4A5554747E6C7279696C56775A7B685C685B6D594057554C5B4C +384130302D2C2D25222A312425251D151A131613140C100D151C21353D3E807AA18F7D9A +8083A19FA086879C9D819D9B7E838080888568583B344260646D79857C66565152412C5F +6F809BB9C7D1CFCBCFBE482D3B6DA3B9B5A8978774615C636F76756C64636B777C7C7260 +524C4A49474C56636C70717174787A766B62646A74746E6A6F75819091969396A49A6239 +4B3945483F423B403B3A4439333155475757465A4F555D5E5C53506475546A715F576E5A +595D553A394F3E403A3527252621211C22252923293434323038453D363B3C4C654B4C45 +535D5645686C4C302A22516468635A675369696A97AF8667607B70998883A693BA9C7FC3 +BFBACDCBFFFFFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFF6501010200030000161B3A394C5B584E5C69515F5B3F55665F7F6A62 +67665D5F61715749555A5E43625B5B5444494B39463A40342C272826332B2A2320202725 +222321241F2A27313744577185A17983859E848C86858880A1A0A1B4978880A193695144 +3631495C626364706C5A3A2D261E3E5A7C91A2B7BBB6AEA6A3B1C1D0762C191E47969488 +786D656067737D817D756E6A6A7073736C615A59585654565D68707476797A7B7D7C756E +6E737778716A67666C768A929591919CA0A775454B4540413D413C352C31313D474A343E +46544B46504E4B4C65626A7465715E566B69586F5851594B53493B36242C2D2E2E2D2E30 +3D352A40463C324150494A674C4E4D49444B5C425745773523353D36686B636A63686963 +70997B6E656865706983786E8F939E7ABFBFBAB985FEFEFEFEFFFFFFFFFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB20010005000002070E +2A3341564C555E6D5855533F4154585C96845454525A767669595B5A5959684C543D5557 +374C403E3A32382F3335373630382B292C34343C33363C4230415D736C8C96989C68A485 +A1A3A1A383A89BB1B5719CA5B08151414243515E5952545A5C5233281D1732919EA9AAA5 +A7A19FA6A9B6C8D9E9E7984F495D6F7D7C7367606165707B80807B757271737A7B7D7F7F +7C756C645E5F636C7275787C7E7E7C797574777C82847F7773767F8990939B9E9493969D +9E9686544D4248402830383732383C363E30463F50504E574D695B6F6F557E59546C6E58 +6B7F5A644F6D41473F2B473B2D35394B423B444348464E534D4E4440535D50565A475F63 +4046533D3B2B1E43576963755656676767817E81816A54606C6985A69F8D919B9B9FC19D +9E77E0FFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFAFEFFD40A0100030300010E192D3B42585959574D535A56355B474A8A96 +88556A656A6A4557575C6859674C6A5755595745494E303938354447453F3D433B394037 +433C3644565C56596A7B74829A9E6A8784A58786BF83A1B597738B9FAB8C60504B444C54 +515151545E695F4838342A2470ADA48A7A7E8C94A5BAC6DBE8EBEBE5C5AC92939796958E +837A7B80899095938F8D92939498929091938F867D756F6F737A808281818182807B7677 +7A7E7F827E757176828E9495979E9D978C8A8D8E808EA356444A3437302E2E2D39372731 +30453C3852425B666148516E515E546544675F575959494A464943344645454544544332 +394848576553445347445F5C47595769666744463B312A31475666686869545657656C99 +7F6E63648666848989956D949998BDA1B89DB38AFDFFFFFEFFFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFF4B0D000100010008 +18243144404D565C56505E55445B5D5C6C75506C72696766495666573C524E6273535552 +4A474B434E4840414B414B4D423A4A544C4C5F5B49675F6F5159797A86A1848A8786A6A4 +A39FA1859D8B8D94A5A4745B56594F4C5755595B5E686257402C303222216E8570707387 +96A1ADC0D0DFE6EFECDDD2C5C4C3C5BCB2ACA29B9DA3ABB0B8B9B4AFB0AEA8A6A4A2A1A0 +99928D898384878A8B88817C7F807D76717072747375736F6B6C737D888A8D8C89979685 +878C887F8295A0582F27363530372E282C3036383C40413E53575A5669634E585556645A +625050504656454834485446494652595546485F605B5B524A554E5D7757686852694525 +413137464766656853536467575481706C9E7E64777562827F8B99A16F90BA9C7A9E9EB5 +B6DDFFFDFFFEFFFEFFFFFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFDFFFDFF170400000000020D172E414F49554B4D5559505654454A4E55 +60518273665755556F694D6F616556504853474845594142353F433D4D5D485B6753495D +73665C696A7F5E7D8085A5888A8A89898885888566878993ABBF8C5C65615D5F6662605B +59545A5548281A1B213B54737F766D7385939DADBDCCD8E9EEEEE8D1B2D2D5DBE0C8CFCA +C2C0C6CFD8DFE6EBE4D2C4BAB2B0B0B3B8B8AFA59C9695989B9C989188827F81817E7A77 +73706D6F72767774767A808885888D90919B968E8F8F85899197914C34373F32302D2E28 +302A2E3029423A4336425E4F474D62524D525D5C4E5E4E4F4F4C504E4E4E5B4F5D4B4F4A +4D685555575657645A6357644632433B2F2B4C3E4566666866687A696757557097706F69 +586065777C6D85949E8D919CB7BC9ED8BCB297FEFFFFFFFEFFFEFFFFFDFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFED7151101000300 +0414283348433B56525C4C3962686765574B4B5C74607175546A6656766B765A584F5E5D +525C4D604B424A4F4D4B58717F7864695C7E735D65728E91839F84A3A78C8AA3896B8969 +836075A5B3C7B968747C696163645A4737353832291907101D315B7781776C65646E8397 +AEC2D9E9F4F8F3EEDEC7B6BDD0D0B89DB1C6D0CDE1DEE8FBE8D6C7B2B0BFB2B7BECCCFD1 +BBACA197969BA5A7ABA69E928986888782817E7673747C8184888580868A9095999C9E9D +9E958C8784827D7685896C46413834372E2329242523323734393C4A4F414E60623D4557 +507153685557576765575467566556695657666758544259696447313E3F2A2B4D3B3550 +6557626969656569786656686C957D546765707B808A686C8F9BAAAF95B6BC9BD9BBD27F +FFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFCFFFFFFFE90180C04010105101A30333B343E5F645B4A64524F576356 +5C6A836C51634156626A59615658566A6654526B58645555596558687B697069656F4F69 +80836E80827F866D6A6E8B896C8C6B8883767BB1C1C5D6A26C8A816D5B5E523E2E2D2C26 +1F13161817273E4C565951464047546A8BAAC7DFF3F8F9F6E8D9C3BEBABEC6CDCFD0BD88 +5D68757A65656D7179715C586789BFDAE3D5C8B3A49B99A3AFB0B4B2AB9E8F827B7A7676 +756F706C70747A8080818389929AA1A4A3A09B9B92847D7E74635956605D614B2B36252E +31282B342C2C2F2C3744434441494C4B4D60524B52655853535547526A6965585541582C +353D3E403E3D494128364D473F446778756B677769636566687566796A7386998157645F +6A66787C80A6B4A6ADAF999E95BE99B285E3FBFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFDFFFEFEFC8F200F0405 +040B162226322E43555C3A4D6057525278756754595D835539654F4B3E5041595F645A56 +6752656B535552686777566C816854636D6D86747E6B9F6B6F4C906CA789898B856777A3 +CED0D4C68E887F6C6665644F3928222A2B2A343A3440434244423D3C3A3E4C62768AA3B9 +C8D3D5CDCACAC4BBB8BDC2C4C5CBD7E3EE713D5E7782868E8A918D877E745D412F68949B +B8C0B8B0B1B2B7B9BBB6AEA18F7A6A646061676867615E5E63696C737A808A949DA19F9D +918E8B86817F7A745A4E4950494B5B413227312330343127333136353E294834373A5F53 +495852614D57575465526B433C4A4E3E332A333E333C3F323C3F3250656C65647A796663 +666668686769667968817E848A823F60736478699299919CAAAACA9BB6B99EB699AEABFB +FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFCFFFFFFFEFFFB691512120D0F111C1C2B283443464660544B576A6260 +65686B524C5E5F6D5B424B423B41534C2F4B5770746459666A4F685E618E7D7C737B788C +979A8287898C6E8EAA8AA6A56D827196CECFA38675707E6A5F58685A4832252B425C6565 +67615D51433835373D495B6B7F8D969EA5A7A39F9795999EA3A7ABACACAEB9CBE1F2ED58 +77868F9290908C918F8C806E5435251A2A344472A7C4BFC0BDB9B7B4AFA5978779706868 +707577716A6262656974797E84898F9292928881848D8B7C6F695D494443525243525732 +2A31312929312E2E27312234373A473B564C4E4A64644C3D67525A6774251E4B2F3F3C35 +4656686844557A657866586257586465575655445466686465836E8A956C5259737D6361 +7C7D8D8E94A6A7B094B7B5BAB696AD8CFEFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFEFEFFFF3B1E1C +190E1015191A28313A41375D6D5E5D4D72656450656459604B5C4F59486457625C3F4C59 +4D7A8945655357455F7C76758B6E658D7EB49A858D8B8D898DA7888DA5857979A3666D6D +6272877D695A4A37293F4E586B646267686B6A5E4E372B3141566D7E8D99A09E9B9A958D +857B716F717071777A838D9AADC1D6E6CC4F72898D8B908A8E8A8A826C4D33221B68A99F +62484D73A3B2B3AEAAAAA49996918F8C8684878789867F736D6D727D868C8D8C8A888687 +807D818A90887460584E3F3A3A4554595B5E4930303435292F252A242630283140354344 +3F504E4C4852626267696433344A4855594F525754684458616877666564556768575268 +5456547774838786706D6F566771667B856F7D77AB95A48BAEB395D597B696AF81FCFFFC +FFFCFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFDFFFCFDFEFFFEFFFA581E1D1511191A18202C3B2F335241464E555F5F +6165736274645349675C504B5258666874676E69625766675F73617E665E7974A88F9F86 +858BA5AB6B738B8C896DA078955B285B827D7884806B482A2E557480726A55565A5E5A52 +493D332F3A51667C8F969B9A97918D88817A77736C6867676A6F7B8794A1B2C2D1DFD694 +5073858386847E7A78624B37241B61BCE0AC53394477A0ACA8A6A1958A8585888E939798 +96908D888278717075808C9498959089848484838282827D6C594A4445463C3C434F5B60 +645C593C3E30282A20252B212D2E383534413F5949584D5461464F6758533B4F36415756 +6A516A54536869785368566A56525467564257576372807486716E57676F76756C7A5B64 +7B7D9AA4A8AED0B2D3B69895CB92FEFFFFFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFBFFFFF9FFFEFEFFFF90 +221C1F17181E242B283D31443B3F434B524A4E6362794F5E59686547475B4F706851876D +6F9A57556960627776797E8185819A81A5A3AC8B8B8D8F898C88867C818A50567B83746E +7C6F4A25356C7D887E7C76625F615F5E58504D494C556379878B8C827B78777A7F828486 +8584807D7D80858A9AA7B3BECDD9E2EAF3C0596A828D7971675D574A3B23191E5A95884F +322F263FA3B5B0AEA796888785878E99A3A7A0968679726E6A686C768490989997918B8C +9293948F83715C4A38323A474644404D5661616367705B27302C282D2620282B242E3B2C +343C37424D604F57675063525645343A5662684465445553656C63666656556852595456 +556784986F72845552676F7E7982697F6E6D7F83868C8FB0B3D196B094AD96FEFFFFF9FF +FFFFFCFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFBFFFCFFFEFFFBFF902828262118201E22282A263A3143575954 +5E634B5054574E3F5757434837604E5D70716F6D57565D7B6C5E6F688D87969A8388898E +8F8C908C6E6E8A8473A47365707B77756E654C323E647C7D7A7676736D6B6C74736D665F +5E5C657176807E726D6461656B727981868A8B888588909AA5B0B8C4CFD9E6EFF6FDFB9F +5C87978A7F685B544D4130171A2A3431314761522F266BA2B8BAB5AC9A90919198A4AEAD +A296877268686664666F7F8C95999B989497999D9F9B8F7D6046393431404C534E4E5D66 +6D62666473784231363E2B2D23212C2D2239343B3C545550524D505349514355483F4A5F +4356555467685566685667565566586456676B84707B865165687262756A6363615D737D +85A4A9A9B0AF959791959066DAFFFFFEFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFF +FFD42A2F221B1F24272D1F1E3233354C5155586D50584D5D54525B503E54575755498384 +56574973607D77616676947C9D848DC4A98D8F8D908B6C6D7786AA827480797D7365432E +456C716F665F5B5F65686F7B7F8584786C66676A70726F665E5654585E6770757A7D8082 +81898A929DA6AFB8C3D1D8E5EBF4FFFFF77B6B90968E7B6A5F564F3A221B2336442B3249 +5A472122638CA6B2B5AFABA2979EA0A8AFACA1907F706A70726D6D727F8B909A9D999C97 +9B98999C9581654D3D3F404A5D676563666C767A736C6E737A6F44413826261C1E262226 +2E2E40434A4E3F54414C484452505453584D3546566655676669526754545952576F8683 +8789597F56575E7563636A7D768455637D8288A8AEABB1CD949394A980DBFFFEFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8FFFE4632242C242A201C232F383A534C4B +545F3C585B59474E595454424F6559525554534C644E626580679E807F86898EA293718F +AF8D888B686C9EAA7E7C8882847F6036527780735E4740444A55637181909E978A796A63 +656A706B625A54545B6572777A7B7C7D80848D9298A1AAB4BDC0D2DAE9F0F8FEFCFDF562 +6B95968C7E715F5148331F2A5A92AE8D55312A1923588D9A9FADBDC2C6C4BBB5ADADADAA +A59E948D8A8B89858280868F959C9E9D9F9B988B807A71624E3E37394251637177767472 +73787F807C777B7E7E532D35302D2723242A27222C2B2D3C41454D494D61634961565544 +363446577656665358555755416E85808761706C536781757775756474658872608084A2 +ABC6AAB4ACCB738BA97EFFFFFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFB +FFFFFDFF8C3731382A2528242938373D41484C4B425A496041524F4D3F41666B4F526A66 +5D6A6C5C6E698E8D7AA28BA6A58F918A90A98B6F8D6191AAAD858A8D807E75522E74978A +7F664945425468778594A1A9A69784746A676D75746C6666676E7B878A8A89898C90979E +A6AAB4BCC1C6D2E0EAF3F9FBFFFCFEF2A14974918F857C6851453B1D1961AEC6D3D4CBA2 +6459849AA8AFB3C0D0DAE1E0D7C8BEB8B6B6B1AEADAFB1B0ADA99E908F9195999CA0A29D +937F6A5B4F42342A292B3646546574787A7872727C8483807981808A6A413926272C1F28 +1D2322222B28465040405A41514B4850435853373356696553575664566A6CA071886F63 +545563707A627666597E839D877C878586A8A6ADABB3ADAD8AAE88FDFFFFFDFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFFFEFFD3393222242A1F322A353C4033 +353E423D446A4B46515D5C4D5E6B5462586F646F4E50818C8E7CA286A5AB8F8EAF918EAB +6D89658DAE8E8A8B86736C615A3F60A0938467534C5A718498A3A9AEB0AFAA9B88787172 +797C776F6D72777F898F929292969FA7B0B8BFC5CBCFDCE3ECF7FCFBFFFDFEF9DA914A58 +88929285796054443A242977C5D9E5EBEDEDDCC9C7BEBDC0C2CBD9E3E6E3DFD2CBC0BBBF +BEBDC2C6C9C9C8C3B3A098929090949E9F9B917E6654473B322E2E313B454D5762696F73 +706C71797F87877F7E818473482F34322128221F22232430303C38463B5A616054505D55 +67463A5B5C535A63818A7486886F7D4652694C4A657562645F65836E73756482866DA98B +ACA9AE8A918D89A4FDFFFBFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFC +FFFDFFFBFBFFFE92242F2E2734313941332E37333A4943475559484857654C715350725F +4E52666791947C8688AF8E8B916CACA8AAA77B888AB08E9084705E57556858414E857066 +5C657893A4ACB5B9BCC0C1BEB5A9988A84878781766F6D7178838A8C92969BA4AEB6BEC6 +D0D8E3EAF5F8FFFFFDF2E2AB997E59567B9BA29D988E87807876746B60596171787B8D9A +959FBAC5C2C9D0D3D5D8D6D6D2C9C6C1C0C7CBD1D1D0D1D2D0CBBEB2A299938D8F979997 +907F6955483F3C3D3F4A555E625F5B5C5F6466696F747C878B877F767C7968663B2D2828 +1E281B1D1D252A243432423D5D614D5654505F55434B4B515E5F746B7371985359577272 +62665D7D5F6369597259939B6683876EA9A7C6CB8C8F8B7CBFFDFFFFFFFDFEFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFDFCFFFED54635392F4238442E2E +36374147394E524D5249575C59575C5249645F636D8EAB9AA1A5A88D929372ACACA7876A +819BAE827E73645C515B6C6F4D2C534A4D668293A8B8BDBFC4C9CDD1D2CEBCB2A5999390 +86766C696A717C89939698A0AAB3BCC5D0DAE8F3FBFBFFFBE9B99573757B8C9292A1A2A4 +A0A09998949590969896948A7F7D7378685B5C4D5483B0CBE1DFDEE1D8D0CFC3BBBDC4CC +D2DBD9D6D6D6D1CBC5C1B6B0A69D979594929085725E4F4541434554616D746F625C585A +5D646C717A868F8E856F6C736D5D6D5F38282D21231A241F1D1E3036333F4F4F483E6065 +4C606666545874746E845765436A5E5F757A4C6473636C6F5A7593969CA2678890A38EC2 +AEBE898B90DCFFFFFCFDFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFDFFFDFFFEFFFEFFFAB63F3E463E3B2E353C3C373F3641534B62544D4D545957584764 +4B698B939F9DACAA908E928BA9ACA8889C82ACA4696D595A5452586163331427314E7D99 +B8CBD4D5D7DADFE2E0DBD1C7B8ABA0978C807467686B727D89939BA2AAB3BDC5D0DCE7F1 +FAFFF9E6BD8E97A0A5A2A1A4A2A0A29C998D8D89868A8D9095969B9B96928C817C747474 +6F6D65554C6A8A9BB7D3D6D6C8C7C0BFC8D1DAE0E5E4E2DED9D6D5D4D5D2C4BAAF9E938D +87837766594D45434A535F6C787A70665957585F676F798289918F806D66736C6172883F +2F1D2019191C1C22222B3C3439404657513D534A606767655A625953695E656766617E65 +5C7B6B5B6E5B787E7F7FA18189AAA38CA9BEA8A9858FFFFFFEFEFFFFFFFAFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFFFFFFFEFEFFFEFEFFFDFF98403837352E +34333C41413738493C375643645A576668737A9D939A9FA9A791718EADAD8CA599B584B3 +A0455C54534D4C4F52462427313F6B9BBED4DFE4E4E8F2F4F5F0E3D2BFAEA6978E8A7E73 +7070787F8A98A2A7ADB7BEC7D0DBE7F2F8FCFBE9B299A59EA8A29E9995948D8D8B8A847E +7A7077737C81848A8B8C8B867F7A6F685E626662626065666B6968615B6B9DBCCBD0D7E0 +ECEFF7F4EFE7E3E6EAE9EDEBD9D0C4A99588868780766D645B5753555E6A767F7A6D5B56 +555D6872797C828289877F747879786D7F8C50352F282027181E252925293031363D495E +6346485E6A55655970746C79756E7E7C766566707174959398969F86848AA588A7A4C0A6 +8676C2FEFEFEFEFFFFFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFF924849363E423544351C3B353E3F424E46554B615986 +91A77E84A5AB8E6F8FB08F8EA5A1BC89A4A369344549403536362C2C5459698DB8D6DFE5 +E5E3EAF6FBFFFCE6C8B4A499918C89857D7B859098A4AAB1B7BAC3C8D5DAE9F5FBFCFBD1 +A1A1A6A9A298918F8B858180807D7C7E7B766F6B6A6C7074797D80807F7D7670675F5857 +595956545D66727E81827D6D55576E9EC9DEEBF8FCEA914F57686B69676D686A8DAA9F8F +8D8B918D88837D746761626D7A83837F70645B5F69747A7B7B7673767C7F80828389848B +926E3F262326201A1F2617282C2F2C37405C5F5C575460605E7564766E7B7B6F7A7D636F +6E8E7B909B979B9CA0A2A3A386898889A2859EFDFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCAF48 +39454935383D38473A3D4942444F4F50747380907F86A8A78DAFC6AB8991BC8A85959C9D +6D342E2B2B2427245D848789A8CDDEE9EAEBE5EAF9FFFFF2E1C6B19B909192919292939B +A7ACB3BBC4CDD0D2DBE4ECFDFAFCF9F7B698A8A19C9890898786807C7979787676777470 +6A6766686B6F7477797775726B655D5956585B58534E51586371777B7D756E655348577E +ABC9C695667594979592887F7363493E5D898F97959B9C9B948C7D716A6E778186877E72 +68676B737C7F7F776E6A6E78848B8C8E96979B997B4D2A26251A1C1E161A1E21262E3A51 +535D4D5A65756474707D6E797A7A6D846776967F8B809BA19E9EA0A384A0A69FBE9C8BDD +FEFFF8FFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFAB6534A3E3B2D3F472F3C3F4D514A475A7361 +81897EA2A3ADAC8EAC8890978F9297949BA29D8B744D3D373B7BA89B99B5D0E6F1F6F5F7 +FAFFEABDA2749FB3A096949BA1A8AFB2B1B7BFC3C9CCD7E0E5EAEFF4F8FFFCFDDEA696A6 +9E948C89858382817D7B797675737271706C6764636467696D6F706E6A665F5A5555575C +615F57504E515862676D74757678767372706B686C7B8FA3A6A7A69285757262553B2547 +889A9BA39FA3A3999182757072798185857E787574777B7C7D7569616370818B948D96A3 +B4B39C7B66282E221A1D1717191E1D29383D48525D6766587C617078807F866C728C775E +7C7FA0AD9E9F9D9D85A08AA1A19B90A4FFFFFCFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFEFF +FCFFD9624331404B483E4B3F3D545043595A69747CA2A3A88BA9A58D8D869DA19C99A4AD +BECCCBB3A69D8BA4A0A3BBDCF2F6FCF8DDBF9B7A6662492A559DA69DACBAC8D0D5D3CEC8 +C7CECFDCEBF0F3F8FBFFFFFBFFF0787BA09F928982807E7B79777778777573716F6C6864 +5E5C5C5E61646768696865605A575455585E636159524C4C50575C656E72747273787B79 +7B818B979EA5A39D94816B615B534B402A1B3584A2989B9D9A9D988D8177747980828684 +838381807D79736B60595B6675808A93999EB1BEBD9D75813D311F1A1A191A1520212F35 +384C4B62716E59607A6A6F8974738E7A7C7DB098B69B9D82BB8385A19B9D8D9AFFFFFFFE +FEFDFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFCFBFEFFFFFBFFFDFEFE924953434E453F424F494E4F5B +648B9899A1878CA8A4909DA3A49190A3B8C7C9B6AAABB2ADA7AAB2CFE4F7FAE1A77A738F +91958F785D314793A9BCCADFEDF3ECDFD7CDCAD3E0EDF7F9FEFFFCFFFFFBDF8F93A2A693 +8C847C7873706E6D6E70727171716E6A645F5855535457595E5F6162605C59585B5C5E61 +6360564C4545484C545F6A6F70757673717071747D89898A8C867A6C59555455483C3420 +1D55939E9B919091908B8278747B83848B8A8B8C8B8A837B6F6358565B6574808A949EA8 +B4C4B5506677868729201F1F1717181C2521333E53736B4B78666B8A8F8E777A79977B85 +99968281839D9B839CB49E8EFFFFFEFFFCFFFFFBFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFC +FFFFFFFCFFFDFDDB755352556457455F536B7E818F998687A094A086989C7A8598A9B2AC +A29EA8B6BBB7C1CEE5F5FAD5926E8990989E9995826E4A2F3A94BECDE5F9FBFFF7E5DBD6 +DAE5F1FAFBFDFFFFFFFFF9EA8C70A2A59A9887807B7772706E6D6B6D6E6E6D6B66625B56 +514E4D4E4F5155555658575556585E616263635D51453C3C3E41495661687174726F6D6C +68656D71757977706960544A4C5252473529245CA1ABA39B98989791877B777F898B908F +8F90908F887E6F625759626E7C889198A2B1B7C6C4575A4E7783A2302B221E1117131C22 +27345E4F5C737F6E72887777668C9A94847C96A0979C8181677F7D90DDFFFFFCFFFFFFFB +FFFFFDFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFDFFFDFFFFFFFEFFFCFFFFFFFFFFFFFCDE7A4A4C4F4C535B +7A838E937C8678D182958A64758B949F9D98A4BFD3DCE1E6EEF7EDAD8B90989B9696928E +87836E583F2366AFC5DDF2FEFFF7EEE5DAD5DDE7EEFDFFFFFDFDFFF8DB5A819AA69E988A +8883807F7C7975716E6C6A66615A524D46444446494C4E4F504E4D4D4C4D51565C5F6162 +605A4C3F343234373F4C5865727475736D625A59565C61615B5B5C544F49474F4741442F +253F85C7CAC7BAB1ABA090827A7E868B909192908F908B83756A60626C77848D94A0A6B1 +BDC9C46267644A618696322A1E1911141E20293449587068815B79967864907C817B7E99 +9D977C857F7A7789FFFFFDFFFEFDFFFDFDFEFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFDFF +FEFFFFFEFFFFFFFEFDFFFFFFFED78262576D75848590818BF18385634863798A9BA2A9BF +E0F3F5F6EDE2C8837B96A49CA0918A868584786E5741282B82A6BDD7E9EFEFCEC3CCCCCA +D3DAE9F5F5F7F7FCF4CA6C49839C9996908B8986848583807B76726E6861584E443D3D3D +40454A4D4D4D4F4B484645474D545E616363615B4D3F35303133384350626D71716D675D +514948494D525251514E4E49463C40483F3C2D232E75869394ADC0B19E8E8381878D9192 +928F8D90918D847A6F6E75818C93999EA8B5BFC6CE895A554B464931164321201C191B1C +2038485E597A858A92917C94947F939A9A9A7F7E977E8390FDFFFFFEFFFEFEFFFFFFFFFF +FDFFFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFDFFFC9F +7E5D866CBDF2867B4640527486A4B0BBD9EFF3D6B97B644E779FA9A6A494837D7C787266 +573F251A2F567A93ACBECAD3D7CDBDB6B7B7BCC9D7E3E6E8E8EEEFD96759899795908D85 +86868683807F7A736D665B514539312F30373D41454A4D4D4D4B474443474E545E616565 +625B50453937393C3F44505D686B6B665D51443B373940494D4D4F53524E463D383C444A +443F3B3B44535E5F5F6F95908786868A909599989393999D9B92847C7D838D97A1A4AAB7 +C2CACEC64A3E2C2938392A2520272C1B1E1C2E383B3B6E7C83778F9296AB7D957D7E9498 +7E9673A7FFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFBFDFFFFFAFFFCFFFFBCE8F287734148618397AEB1CDE5F8C3 +563028335F8CA6A5A9A092846E646C6552382622324D5965758AA5BAC7CEC8BFB4AEACAA +AFBAC7D4D7CFDEE3ECDA865B7A8D948783827F7E7D7B7978736C655B4C3D302826293036 +3D3F4246494B4D4B4946464A51565B5E62635F5A52494341404243464D555C5E605D554B +413A35353B464F53555755544F473E3C444D5D626B737D8A8E8A805F47537584898E949B +A6A6A2A1A3A8ADAAA09389878E99A1A8AFB8C0C6CECC9A29241E38253A6E322E36312323 +21344E5E6D65878C787A927D787C9595B0837EDBFFFFFFFBFFFDFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFCFFFFFDFF +FFFEFEF89769455B7991A8B7C8DBF2F39B5B52455E7D99A6A8A49E8D7659464F45331C27 +5161595E667B9AB5C7D1D6D5CBBFB0A69F9FA9B5C1C8CBD5CED9F2F4C355719297898078 +7673716F6C69635B493F30231C1E28323A4044454547494B4F5152545556585A5B5D6060 +5E5B56514E4C4A49484645464B4C4E4D48403834343337414B5156595E5E5D584E484C54 +66727F88929C9F9A91866E4C3A618A8A969DAAB0B4B4B2BABEBCB4A799908E929CA6ADB2 +B6BBC3C6A7374C6770612A5085261E1730242E37414F7A898A75919392767D8D9572BCFF +FFFFFEFCFEFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFEFFFCFEFFFFFEFEFDFFFD985C4969839CB1C4D5EEF9D87F6665 +5B608599AAA59E91775E4130312D201D3A5C636067748BA4BCC9D5DEDCD5C5B9ADA5A2A7 +B4C0CDD4D8DFE5FDF7FEB95086A2988F8278726D6966615C534B3E362A24242E3D485254 +5654535253535356595C5F616160605E5E5D5B5A595552514E4A46413B38393A3C3E3D38 +35343635373C434952595E5E5F5E585352545F6D7D8890989B9A96907C644732428C919E +A5AEB9B9B7BDC5C5C0B7AC9F96939DA7ADB0B5B7BABDB88C4F877A7D7D5B7269201C1234 +3E3C5563747F6E8C74785F7A6890DBFEFFFDFFFFFFFFFCFFFDFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFFFFFEFEFF +FFFD9F59567388A1B1C5DFFAF9A1697D7E7F899DA4AF99846E543025231D180D25435B60 +697A8C9FB1C7D2D1D6D7CCC3BEB7B2B2B7C2D2DEE3E8F0F7FCFAFCE78A73AAADA59B877B +736B635E58524B44413D3A3D4754626B6C6C6B696765636160605F61676E72736F686360 +5E5D5C5856534D42382E25202021262C2F30323436343232343B46505556585857565554 +5D68757E858B90938E8B81715D5036366C8F99A0ACAFB5B9C1C8CAC5BAACA2A0A3ADB5B9 +BDBEBBBBBAB4A399928783857C755720174B3C435A5E756A6E87797183DAFFFEFEFFFFFF +FFFFFDFDFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFEFFFFFCFEFFFCFEFFBA54576A8A9CAAC2E4FDEE897992939699 +A0A4A48B745B3D2C1F1D22191C3E595A6472869AA9B5BDC8C7BFBCB8B3B7B6B7BAC2CDD9 +E7F1F4FCFDFEFFFFDD75859DB3AEACA09483786E655F5A565351504F5157606971757675 +72716F6D6A676663606168717575746A615D5B595754504C44382D241D1913161D252C31 +343737312B26272C363F44484B4B4B4C4F51606871787C7F82868784746A5D5341263465 +808D99A3B3B8C0C9CFCFC8BDB2AEAEB7C2C7C8C7C1BFC2BDBBAFAA978B797A7B5A3A1D1C +5D5A657C767F6BA7FEFCFFFBFFFDFFFCFFFFFCFFFFFFFEFFFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFCFFFEFFFF +BB565A708E9AA9C0E3F8CF6E98A09BA19CA2998B765C442D1E1E1B1026586E6B646F7986 +9DA8AAB4B1ACA19A9B9C9EA6ACB6C2CFDCE4EAF1FCFCFFFEF8D89C6FA5B4B4B0A397968A +7F766F6C686768696B6C6D7175797C7D7B7A787675726F6D6966626265696660584E4744 +434241403D3831281E150D0A0C121A22292F32332F29201A181D262C343B42434140454B +5A6570787D7D7A7975756D62534542331E365E7E91A1B1BCC7CFD6DADBD4C7BFBFC4CFD1 +D0CEC6C0BDC6C4C2B5A492827168603DB1FCFF626E869CFDFFFCFCFFFFFDFFFEFFFEFFFF +FFFEFFFFFFFCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFDFFFEFFFFFCFFD46064798E9FAFCAE4F6D96D94A09DA096988B +7B644C44311C172F588EA6947E706E6E7D8E99A09B938C857E7D818A959DA8B4BEC7D2D8 +DDE6EBF2F9FFDD6C7197A9ACA6A399978C83807974747272747577787879797B7C7D7777 +7674716E6B6A67645E5A5A574E4438302C2C2C2C2E2F2E2A25211B11080309101921292E +31302F2A231C1B1F282F39404A4E4A464A525D6871767B7D7A77706564554D40362F2519 +437896A9B6C4CAD3DCE3E6E1D5CDCBCBD3D3D0CDC3BAB6BCC5C4A978958570625B443ECD +FFFEFEFFFFFFF9FFFEFEFEFFFBFFFFFEFFFDFFFFFFFDFFFFFEFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFFFDEF73 +708290ACB9D2E9FBCB71909C988B8B88816E5C4C473E2F1D50AECCC7A4856A66666D7B89 +8F8D8885807E7D8088909AA3AAB2BAC2C7CACBCED5DEE6EFCC836D879898918F8982817E +7E7E7D7C7D7E7D7C7E7E7C78757473716E6C68696763625F5A51473E34281C120F070408 +090D14181B1C1B18140D0808121920282F343B3C3D3B312B2B2E3A414D555B5C5A575659 +60676D6F707272706A6156473A312A282D271A6C94A6B4BEC3CDD6DFE2E1DDCECBC7CED1 +CCC1B8A89DA6B0BDA6628585775B57594056E6FFFFFFFFFFFDFFFBFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFDFEFFFFF980758B92B0C4DCF6FAC176939F8D84867F847561 +544D4B42302C82C4C5B690726C65666F7C888D8E8C8B8A8C8E939AA0A6ACB4B9BCBEBFBE +BEC1CBC9D6D9E7B55C658082847B797C788083838382828281807D7C79736E6A68676565 +6263615C58524F45382B1C1108010100000202050E161A1C1C1A16100E10171E252E363E +46484A49403A393C474E555A5D5D5B5857595F676E6E6B6864615F55493A2E2722233138 +2538749AA7AAB8C0C2C5CCD5CDAE848399BBC8BAAFA2939094A3A4788278756C5D5A6555 +71F6FFFDFDFEFFFEFFFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFEFF9F7487 +94AFCBE9F6F7A8809B998586838A807160534C4A494229399EC1C0A78A7E766F74808E98 +9DA0A09E9D9D9DA0A6ACB2B8B8BDC1C2C3C1C0C1C0C7CDCFD4D6A5535F75787777757D7F +8383838281807E7C7A76706A635F5F6064645F5D5B5650483E3122130700000001010307 +0D141A20232423211E1A181A1C242B363F4750535958514A46444B515758575755514F52 +5A646E706C665F5954493D2F231D191A263B39301E6D94A6B0B4B8BFBFC2C4B69B5D353F +5D84A8A29389888E9B89807675746F5E606A718DFAFEFFFDFFFDFAFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFFFBB36F8791ACCFE2F3E27D83908777808A8D837766544B +484C4E422652B3C8C9AB9386797B818E9BA3A7AAA9A5A4A2A1A5ABAFB3B9BFC6CBCFD0CC +C8C8CACEC9D2D7D8CC9A505E75787777797D7F7F7E7C7A787572706B65605C5C60656869 +64605C564D423A2B1A0C020000010002020611191D20242422201F1B191A1C242C374048 +50525758544D4742454A4E4E4D4C4A464548525E6C7476746D675F5346382D241E1E2C3A +42352529639DADB4BBC3C1BCBFBDBAB5854226437D918C8584838A8A7F7A797F826C635F +6879AAFFFBFDFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFD4707D8AA3 +C2DCE6E47172766D61698582846F5E4B4B4D53585137246AC5D7CBB4A28F898A8E98A3A9 +ABABA6A096929199A3A9B1BAC5CCD2D5D5D0CAC8CCC9CFD4D3DBDBC9965B50606C6F7372 +73726F6D6B6764615D5A5756585C646B6D706C6863584A3A27180A030100000000000000 +060D1116191A1A19171514171C252D3840464C4D4B4B48413A36363C4648494846434347 +4F5A69767F85837E776A5B4C40362E2C364653463F362A85B4C1C5CDD1CCCAC8C5C5C3A1 +5E375B7F7B777C8187918E8981828778615859677CCEFFFFFFFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFEE868185A1C5D8CED9AF49554C3B4E6C85857259534C5763 +6A6458412E5AACC6CABAA49B9594989EA4A6A19689807A787A86949FABB8C1C8CED0CEC7 +C0BEBFC3C3CBD3D6DBDCD2AA6A485E6B767D75716D6A67635E5B545354565B62696F7274 +706A63564534231305000002010000000001080E1316181C1C1A1511131920282F383E42 +46464543403A3533353D474B4E4C4A474649505A6773808A8E8C80736455483F38394456 +5E5C5A5038334A84B7D1D7D4D6D6D4D0CDCBC19B7F7564616A777F8D97978C8B8C877653 +53556A80EDF9FFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF9C858CA2BDD0 +CCCFD3992D201B26436E75726862676F797E7D73726B554E425B8FB2A5A398979795938F +83736762656D7A8997A1A9B1BBBFC0BDB8B2AEAFB8BEC8CDD6E3E7ECEBEEDE824C648282 +837D76716C66605C5B5B5C5E63696D7071716B645B4B3A2A1C0E02000000000000010812 +1B232728292A28231D191A20252C31373A3C3F3E3A383836373A3F4952575854504C4948 +4E58646F7B868C8C887D716457504E535D687678746F6E5E483A3A58707FA5C8C9CAD6D0 +C4B69D7D675F66727B86959D9F90898284614D52607691FFFDFFFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFB99388A1C2D3D3D2D8D8AF4C738D5841617071717981878987 +8C87837F7A6E53334897998E8B878179716A615A5A5F6A798996A1A9B0B5B5B4AEA5A09F +A4ABB8C5D3E3EEF3FAFBFCFEF6B97B637D93958D847D776F676360605F5E616669696969 +635E53412E1D1309020201010101030B1D2C343A41443E3B342E2B28282B2F34373A3B3B +3E3D3E3C3F40444A4F595E63625B56504A464954626D78818787857D766A5E5859616E7B +7F818178726D685E4E433A3C443C405086B2BFAF998D7B6A6D758188919D9F9E8C8D7E70 +5454626B7DB1FFFBFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFEFFFEFFE5A285A5BED4D6D2 +DADBDBCCC1D5D36C34647E8C939997918C928E8A8C867564461E58887A78736B60575356 +56576370818F9EA7ADB3B5B3B1ABA39E9DA0ABB8C4D4E0EEF7FBFBFFFFFDFFFAA84587A3 +A49C948B827A716A6766635F5E60615F5D5852483928170C00000200000000040F223345 +545D63615B534E4B4746474746464847434346474C4C4F565E656B6F747370685E544D4A +4B525F6C757B7D7E7C766D645D595F6A7880868A867C746C6B66635B5A5D5F655F4E3532 +5799998C827A777B7F828A929EA09A938B7C6957616B7888DDFFFFFFFEFFFFFFFDFFFEFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFFFEFDFFFCFEAD7CA4C2D8D5D7DBDFE0DEEADBAD6F33538199A3A29D948D8A86 +88887F7358381D2F5D716A665A52494A4E57626E7E8C99A3ADB3B6B6B3AFAAA5A09FA3AC +BAC9DBE6F1F9FBFFFFFFFFFCFDE090669CA9ABA0968E847A726E686764605F5E5C59544B +433A29170A01000001000104081127384A5D6E7677736C676666656466676361605C5653 +535256575B636B7276797B79746C62574F4B49505B6670757675716C645B56545B667680 +878A84796F65616164626266686D6E63523019578488837E7C7F7E7A7C828A949B9D9584 +73645A6F748796F7FEFFFFFFFDFFFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFDFFF9FFC88299C3D7DADCE1E8 +E8EEEB99635654768EA5AAA698877C797A77776D5E4C32213E67746A6964574F4D59646F +7C889299A9ADB1B4B4B2ADA9A1A09FA4AFBDCEDDE9F1FCFFFFFFFFFDFDFED76F7A96A7B0 +A99B8C8073665E5C5A5B5B5B5D5D5A564D3F322716080300010000000712202F424F5E70 +7F868783807E7E7F7F7F828386838079706964615C5D61676E73777A7D7B766E655A514B +484E5761696F6F6C67645D5550505864727E868883796E62595A5E61666C707472685437 +225275767F7D7D7E786F6C707883909C9D907E6E64646D7F82B3FFFEFEFEFFFFFFFCFEFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFDFEFEFFFFE48D8FBDDADFE0ECEFE8E3C1606F898C9898A6AAA39681706C6E6965 +5E554E321A2B73847C706F68605B66727A7F8992979DA6A9ACB0AFACA9A6A4A6ABB4C2D1 +E0EDF7FDFEFCFFFBFFFFFBBE715186A2A9ABA292817264595452535455565858524B4333 +251808010201000208111D293745555B636D7880858684828284878B909296938E877D73 +6B66646464666A6E72747877746F695F544C4A4E555D656B6B6765635E5753535C67727D +8486827A706359585B61687073746C654D342343677C7C7A78766F635D5F6B7886959E9B +8A746C6C6F7A8082D4FFFFFFFFFBFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFDFEA691B7D3E5E4EFBC9279 +57648DA1A19D9FA4A09B907D6960625C574B4236291D336D938B827B75727375787F8283 +8A90979FA5A9AFB3B2B0AEAEB4BAC3CEDBE7F0F8FCFFFFFCFFFFFFEDB95A5D829CA6A6A3 +968875655852514F515253535350494133271B0F03000201010C1A2B3A455058605D5E63 +6A72777A78797A7F879096999A9791887F766E6A69686767676A6C6E717172716E665A50 +4B4E5258606566646464615D5A5B636E787F82817E776B5E5251555C6166696762524331 +2147728085807870665951505B6F8390989C927C70737A7C7C7F85F8FCFDFFFCFEFFFFFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFEFFFEFFFFC89AB0CFEAE5B9644D4A43688E97A19B9E9A97938B7E6D65625A463E2D +2822264D7E9C9D8F867E7A808486838585858A9099A3AEB2B7B9B9BABEC3C9D1DBE5EFF6 +FAFEFFFFFFFFFFFFF8AC4F376F8E9F9EA699968978685E5C5D5D5C5D5C5A5650453D2F27 +1C120C0D11131827374958606567635B595B606567686D72777D8790959897948C827A74 +70706E6F6F6D6C6B6A696C6D6E6F6F695E544B4B4D51575C5F606163636160616972797D +7B7872695D4F4747495053575B5849392D1B154776828E897D70675D534F586B7E88909A +97867C7481848C836FAEFFFFFEFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEE7A5B6C8E2DB747C7F6F5C66 +7A8A9793918789807D756B615E4D362416417896A4B7B59E948B827E828C8F8A88868486 +8C97A6B3BCC0C3C4C5CAD1D8DBE3ECF3FAFDFEFFFFFDFFFEFDFFF380383673949DA79BA0 +9588786D656467696E6F6D6760564A403D362E2A2C30373E4B5B69767D7A746B61595858 +57595A5F69727B818991959895938B827C78777A818384817C77726E6C6C6C6C6C685E54 +4B49484C4F53585D606364636263686F7375716B62544639312E2E363C3F423A2A1A1317 +2D576F7D8C8C8276716C635E646D77818992968D818081898A89826CE3FFF9FFFFFEFEFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFB2C1BDDDDE7792896C55505D76869288837974726D665D554D2B161C5C8B +ACB9C1B9A79C8D82787B7E86918C87878B9199A6B5BFC7CCD1D2D4D8DEE1E7EFF5FAFEFF +FFFFFFFEFEFFFFFDE86532488398A3A1A196908172685F5B5E61676A6B6A665F564F4945 +41444D5259636A777D82827C71655E5859565050555E65727E858D959BA1A2A19C94908C +8C90959797928A827B76706F6C6A69675E554C4947494B4E545B626566646361646A6D6F +6A63554334271E1919252E312E2013061A3C5564687B868A847B7A79726E686A707B7E82 +89887D797D838288837A86FBFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFEFFFEFDFFC9CEC4CEE38493855F40333250 +758B8C83786E6C67645651421E082B69899FB1BEBEAE9989776C6970797F828080878F98 +A3B0BDC7CCD2D8DADADCDFE0E6EDF3F7FBFCFBFDFFFFFDFEFCE69D556F8B9EA3A39D958E +8273665B524F4E4A4F5559616467706D6C6C6B6D757A7D808383807E7D756B666363615C +55545D676D7A8A949CA4ACB0B3AFAAA6A09C9C9FA2A6A5A0978D8478726D6966625E5A55 +4B4744454A5055595E6263605E5D5D5F65625D52443727170E08131E221710070D2E4652 +575A626B747A7E7E80817C7670686A6D7475777A6F6767737D82838378BEFFFDFCFFFDFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFF +FEFFFFFFFBC4C9CBEA94857E592D2920274A7E878E83777269655A462D191B38618297AA +B6B7AC96806D6361666E73777A7A7F858D97A4AFBAC3CCD1D6D7D6D6D8D9DEE2E6E9EAEB +EFF6FDFFFEFFE47C668B9AA7A9A49E958B82796F665F5851483C2F34475B67707A858C8F +91949795918F89857F7C7A777372716F6C6A696C737A858C969FA9B1B6B7B4B1ACA6A09C +9A9AA1A4A4A39D958D8278726C655F59534C46423E3D40454B4F51565957524C4E555554 +50463B2F21140505181E180B10293B444A4D4F53595B63686F767E82807B7366605B6065 +696B60524B56697983858B80F8FEFFFDFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFFFFFFFFFDFFCCCBC9DBA470744F1E2025222A5E +7F847A7671685C412E18122C55778FA1ADBAC0B7A28C7A6A61667077797B7D7D7F828892 +9DA5ADB4BEC3C7C8C7C6C6C7CACDD0D3D5D7E0ECF3FFFBCE8C678BA7AFAEA59C948B847C +7A75716D69655D513B30415A75888E9DA6ACAFAFADA69D968F87817F7F80848888878789 +8B8D8F929C9FA6AEB4B7B6B3B0ACA7A29E9B99989B9D9D9F9C969188827B72675D54493F +342F2A28282B2E3136363534302B2C323B3B362D27211A140B001B1F0A113354625E5856 +54575D5C5E6066707B82838076665A4F52595C594F40363F546D828C9188ADFFFAFFFDFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FFFDFFEEC5BDD0825C6D4E2D1E45352830626B6461605E50362518365D7991A7B6BCC2C5 +C4B69E8D83797C8187888785827E7F81848A92979DA4ABB0B5B8B8B7B6B7BBBEC1C2C4C7 +D0DBE7F6F8C6908295A9A8A59E978E8785818483817C7675736E685D667384949DAFB7B9 +B8B5B0A99E969087828281848B9196989B9D9C9B9B9CA0A6ADB1B4B4AFABA8A29A95928F +8E8F939495989794928C847D7366594C3D2F261E161212151A1C1B191616151312151B20 +211F1E1A120F04071D17071F4E717676716F6D6D6F6C6C6D717A81858480726053474A51 +534E45383034435A778E929485ECFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFC6B5C96B4669512F1F2534221C2737 +2E2F363931212441768096B3C5CCD1D6D1C9C2B49F949290969A9A96918A807876797C80 +868B9199A0A6AAADAFADABADB1B7BBBCBFC5CED5E4EDF8FEC66A8594989895928C878888 +9092928C8584858387898D949CA6B2BDC0BDB8B2ACA49A90857E7D80838992999FA1A3A3 +A19F9E9E9FA4A8A8A7A6A19B938A817D7B797C808285888D8D8B8A857D756B5E4F3F2E1F +0D060100000204030001000000000000060D111214120C0A020E1C160D30657B89908D89 +8A86817C7F81878D8E8B837B6A564940444C5150493E3638404E698392A0949BFFFCFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFE +FFFFE8B7C38F43645D361B1D22211D37464E564D342C3441638597A9C1D9E8ECE7DDD3C6 +BFB5A8A2A3A5A4A8A69C928679716C72777D858C949BA3A6A6A6A8A5A3A6A9B1B6B9C0CA +D3D9E4EDF5F39C446680878C8E8E8D8C8F90969796928F8F9292929A9AA3B0B9C0BCBFB9 +B3ADA59B8D827E7A7A7E828891989D9E9F9E9D99948F9193949393918A8177706A686869 +6E737B7F8387878480787166594C3C2D1D11030000000000000001010001080E11121418 +19181714100E08152017022A6F8794A1A09996918E8D8E8F9598948D8276614D433F454D +5453534A454A51576271909BA176E3FFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFEFFFFFBC5B6CD3F56522F1D1C1A253F52757073 +7A8790817F898B9CB1C8DDE9EFEDE2D1C3B9B5AFA7A4A2A4A8A9A19283776D686B737C84 +8F989EA2A4A49E9A989593979DA6AFB6BEC8D2DAE3EAF4F1D19A4C536A7982878B8D9092 +9694918E8D9095999EAAACB3BABCBFBAB6AFA9A59B8E81777373747981888F9599999997 +938B8178706F71767B7A75706D6D6C6B6C7073767E7F7F7F7C756C5F4F413124180D0500 +02000407090F191D17120C0C121616161C20282C2D2C29242825140915467385919DA09A +938D8F9190909496928D82745E4A44434C555A565854525A63646366708FA1477DFFFFFD +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFF +FBEEB2D5902B4C28272C1D27596E6F6A6A78889399948F909AA5B7C7D4DBD9CFC2B3ABA6 +A7A4A1A09C9C9D9B8E7D706865666A747E87949DA1A19A978E85827E7C818D98A5B1BCC6 +D1DBE0E9E7EFECCE8E4D3B5568737B80858883827F7E7F848C939DA8AEB4B8B5B3B0ABA3 +9E998F8277707376777B83898D9292918E877F7569605B57575F666768696E75797B7F85 +89888986807A736A5C4A3828180D05020203090B13161213191B1B1A181919161418191C +242B2C2E2D2A271E150E1D577E878C9092928C87878386888D92928F847366524C4C5661 +655F5D5D5C626B6E6B6B69748F5627D8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFFFCFFFFFFFEBAC9BC3434223E8362536B76767A7B8292 +999996949598A0AAB5BCBCB7A8A199989B9D9E9E9B948F8D8C867D6F646365656D747C86 +929B9A9390877C75706F767E8A94A3B2BDC6CFD6DCE0DDDFDCDCC992542B374A56626462 +5E5A5859616A73808C979BA7A6A29E9D99948F8B88817A7A787C7C8389898C8E8A84786C +6153453F4144474C5157606974818890989E9F9D9790897F71634C3420100200050B1218 +1B100F130E090C0D1929333A434850576165654A231A23221B1914173A6C838381818587 +84817F7B7F82848C908F897B6D5F54555F696C6864605F697276736967637C7D1F74FFFF +FEFFFFFFFCFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFBFE +E5ADC8492B283C8DAEA19689858A8E939BA0A1A19E9C9EA1A5AAADABA39B919192979B9E +9D988F86807D7B777067616368696C7179828C918D867D746C696B707A838E98A3ADB7C3 +CDD1D4D3CDCCC8CBD1C4AC8763453D3D4146413E3F42464B566773828E93939A94918E8D +8C8C8D8B8786848684888D8B8986817767574B4039373D4042444A546472818D959CA3A8 +A9A79F988F826F5A4027180D0810191C1A18100F161E2020222323313C4855616E76818A +91867671706B69656466728182807C7A7D8081817F7C7C7E81888F92928A7F70625E646F +73716C66626A7479766B5E6466736535D9FEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFFFEA8B98027253F769EA8AB9E9094A09EA0AAAE +AEB2B2B2B4B3AEAAA49C918D8B9199A2A5A39D9082797471716F6B6661636768696C737B +82847F7975706C6F767F8B949AA4ADB2B7BDC0BDBEBCB7B9B8B5BABFC6C2BAB79E60403E +3B3D423C2E292F3A50656F81888C938C8D8F9093959796928C8A84848785817C776A5A4D +433F40434446474952617484949FA7ACB0B0ADA89F968B7C664F37241C1A1B1D190F0808 +1B242F36352E272227323D4A5866757B828B8D8B8C8D8A86898A919492897D797473767C +8286847F7E81858D959DA3A0988A786D6C757B7B7770696D767D796B5B535C65686B89FF +FEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFDFFFFE0 +97BB8B613C6F83A8B0A49999A0A9AEB1B7BDC3C7C8C5C3BDB0A599908A8C9097A1A9ACA1 +95867973706E7373726E6966656365686E777D7E7B7877787B838D96A0A7ACB1B3B1B0B0 +ADA9A39F9B9CA5AEB3BABBC6C6C6C6BBB9B1B0B1B2A48E785C483D4559687481848C8E90 +929495969793918C837D7C7A7671695D544D47484F545355575D69798A96A1AAAFB2B2AF +AAA39D90806D5742302325231D1207071C33313739352F272121293441515E6A777B8285 +817D808281817C828D8F8C847A7776757880898F8E8A87898E969EA8B1B2AFA3907D7578 +7E81807A7171777C7768544D535E63706AD8FEFDFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEAEAAA5A5997C7991A0AAA3929BA3ADBAC2C7CD +D0D3D0CAC5BBACA1979192979EA5AEB4B2A1928478726F71727475716C6764626368707B +82848483888C939BA2A8AEB2B2B1AEAAA39C96928B8C91959EAAB0B4BFBFC2C4C6BFBEBC +B7B6B9B7B9BDB5AA9E76454150576E78888E8F918F8F918D8A83786E67615B57504A4849 +4B5460686B6F757D8A97A3ABB1B6B6B4B0AAA49B907C634F40342B2523140405121D2327 +2B2C27211D1B1F272B374757626C76797B7A7875726F6B68676B73767675727273757981 +8C95979695959A9FA6B1BABFBDB5A38D7E7A7E8486837B76757670614B46526162676794 +FFFEFFFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFDFFEB9A +A49BA99771748CA099898590A2B3BEC8D1D6D5D5D0C9C1B5A69E9898A1AAB3BAC3C3B8A3 +9484736A6467676A6B6965626062666D79848B8D8D8D92969CA1A5A8AAABAAA59F998F84 +7C7B7C7F89929CA9B5BBC1C8CBC1C0B9B3B3ACABAFB3B8C2CAD2D9D2B9804D35476D808E +92918D8887827C7064564C46434343424449505D6C767F868D949DA6AEB4B3B5B3AFA89E +958974614C3E352C221C0B0D0E1015151213161717181A1B222C313D495761666D6F706A +67655E58534D504F565C5E5E5E63676D7581909B9E9E9C9A9C9EA4AFB9BEBCB7A893827A +7D848A8A8279726F695B4845525966626852E7FFFDFFFFFFFDFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFDFCFFBCA39FAAAB806A718C8D7C6E717E96AFC4D3D9D7 +D4CFC7C1B9AA9C96949BAAB4BDC1C4BDAB927F6C5D5652555C606261605F61666D758088 +8C8E8F909195989B9E9F9D9B978D837A726D6F74767F8A98A6B1BCC2CACFCBC0C1BAB1AB +AFACAFB7C3CDD6E1E6EFF5F4C76F484C758F97928C827A70645446392F2D2E33373E464F +5D6C7B858F969CA1A6AAACAFACAAA39B8E7F7263544A3B2E22160D090E1C2521190F090A +1113161B212730393F49515C64656768645C56534E49474647474D53545352575F666F7C +8D999C9C9590909095A0A7ACACA79A8B7E7679828A8C857B716B665B4C4B50656E6B6954 +96FEFDFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFF89AAE +AABCA168606F7D6F66606582A0B9D0DBD6CFC9C0B6B2ADA197959CA3B3B8BEBEBBAD9478 +6350474B4B4F585D61626364686E727A8286888A8C8E8E8F8F8F8E8C857E787169646264 +6C747A89929CA8B3BFC6CBCBCAC6BFB3B4AEAFB4BBC0CAD6E0EDF8FDFFFDF3B7734C6E91 +9C958D8073645443372C2423252B35414E5B6B7A868F94999C9FA3A4A19F9C978D85796E +64574C412D180B0A1623303C3D2E1E120F1316191F252B323A3F474F52595F5B5756504B +464443404145464A5153535351545B5F626C7C8A8E8F8D8686868A93989C9A948A7F7772 +767F8A8B857B716B675E58515C657276675B44F6FFFEFDFEFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFFFEBFADB9C6BF88595E76776E62677E9DBBCCD7D5C9C2 +B5B0AFAFA89D989AA1A9B3B7B3AB9D8E715B4A47484A515862676A6B6C6C6E737677797C +7E7E7E7F807E7C797574716C69625D5D626B767F8C959EA5AEB6BDC4C8C8C6C0B8AEABAE +B1B7BDC4D1E1EEF7FEFFFEFDED8F563E7695A09F968370604F3D362B2429363D47515F6C +77848C8E919395959594918F8E8781786F675C4E43301D041639465151504D3C281D191B +1B20252A2F363D41484A4C4D4B463F3A3B3C3A3A3D4043484D535B5E5D5B58575757575D +69767E807F7F7F7F82878C8F8D837975737276808A8A8479716F6C69635B5E6A73777062 +49A9FFFFFDFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA6B7C2 +C7A971586A7F7B7472809DB7CDD4D4C8B6ADAAAEB3B2ACA5A09EA6AAAEABA0917D6C574A +44484F5660687072727374706C6C6B6C6E7072727374716F6E6C6A6B6A67605F6167717B +868E969EA4A9B0B6BBC0C1BFBAB4ADA7A8ADB5BDC6D0DEECF7FDFFFFFFFFE3714E588296 +99979385746356494239383941464D54606B76818687878A8D8D8D8D8D8C8C86817A7169 +5E50412D1C113165706E655D544431231B1A191C21252B33393D41413F3C37312B272A2D +3033383C414550575F6363615E5B5855565B636B727675787B7A7B80888E8A8178757575 +7B858E8E877C767778766B62626D75756F665860FAFFFFFFFEFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFFE0AABEC1AD865D607E8D87858C9FB6C9D4D1C7B8ABA9 +B1B9C0C0BAB2ACA9ABA8A2968678695C504D515B636B757C7B7A7876756F68666666686A +6C6C6D6E6A696868696C6E6E6E7279848E969EA4AAAFB3B5B8BBBDC0C0BFBCB8B4B0B2B7 +BFC9D4E0EDF8FDFFFFFFFDFDDB6046597687867F776D655D504B453F3D363839444B5560 +6B7377798084898C9093959596918E887E766A5E4C39261D36727B6D685B50402D1D1311 +1215191D242B313435332F29231E1B1A21272D343B41474D555C63666766605B56535358 +5D61686E72777D7F81868F9592897F7C7E7F858F95968F847E8183817669646C74716B68 +6849D1FFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFB9B7B1A5 +8E716274919994969FB1C3CED0C7BAB1B1B9C6CBD2D4CBBEB3B0A6A29B8F80746B636164 +6C74797E83857E7B76716B66656768686B6E6F6F6F6F6E6D6D6E71767C7F8287919BA3AA +B0B4BCBFC1C2C3C4C5C6C4C4C2C2C1BFC0C5CFD9E5EFF8FDFEFEFFFFFEFFD85533355D66 +635D57504A433F3D3A35332F333130374351606C757C80858D949CA2A2A0A19D9A948A81 +776C594832242E6B79665C51453420110A0A0B0E12181F272D2F2E2B27221D1A1B1E232B +3339424A52586165696A6A676058524F4F52575B61676A6F777D838A8E9191887F7C7E81 +8891989C998F8A8C8D8A80706468716F6967665B8DFFFFFFFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFF3ADB19B86806D788EA19E9799A1B1BDC2C1BAB4B3BBC7 +D0D6DBD9CEBEB3AFA6A29B8F8078757372767E83858685827A736B656161676E7374777A +7B7A78787777787B80878F949CA1A8B0B6BABFC3C6C7C8CACBCBCACAC8C7C4C3C5C6C9CF +DBE6F1F8FDFFFEFEFFFCFFFFD0543028303737332D2A2B2A2A242526252528201D212736 +4B6173818E96A0A8AEB2B0ADA6A09B948980787062503623235B6B564E44392613080304 +070B111A242D323434322E2A2625292D323A434A51596065686A6967646058504D4B4A4C +50565B5D61656C737A7F8080817A72717479828C949A9B96949798968A79666570726B67 +695C5CF2FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECFA6A08881 +86848F9EA2958C8D97A4ABABA9A8ADB6C1CCD1D9D9CDC0BAB5B0ACA59A8D7F797A7C7C7F +85898885807B6D645D5C5F67727A81838588878584838285878C939BA3AAB0B3B8BCC0C3 +C6C8CBCACACBCAC9C8C6C8C6C2C3C6C8CCD2DDE7F1F7FCFEFEFFFFFFFFFFD67D5236303F +525D5F5F62654F362C27272828212725222C466580939CA6B0B5B6B5B2AEA9A0978C7F77 +716B5D4C341E1A4759473D3329190A030102070D16222E373C3D383633312F2F353A4049 +52595F6466686765605C57534C474647474950575C5E64686C6F72747574716C66666A70 +7A858E949796979B9E9D92816D6770746F6A6D6053BCFFFDFEFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFAF9C89798A909697988B7B777C869095959599A4B2C0C9 +CDD1CCC0B9BCBDBAB0A6998B7E78797B8184898A857F7871625B59606A7682898E8F9090 +8E8C8B8C8D91969DA5ABB2BABDBFC2C5C8C9C9C8C7C4C4C5C3C1C1C0BFBEBDC0C5C8CBCF +D9E2EBF2F9FDFEFEFFFFFFFDF5DEC7B2ACAEB8C5CED7DDDEBF87593A2F2C2C322B38485C +778D9BA4ABB2B8B8B6B2ABA49C9185786B65635F5546301A16364B3E322820150A060509 +0D15202D3942464642403F3F3E40464D525B63676C6D6B6A645E56504B4642414042464D +545C62666B6F7274737372716C676262676E78838E939697989C9FA19A8B787073767471 +6B6C5D85FEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE9294747C9A +A49A93886E606670787D7A7F848D9BACBAC3C5C3BEBBBEC3C6C4B9AA968478757A7E8184 +888880786F68625D606C77838D929A9A999895929294979DA3ABB2B7BDC4C8C9CACBCAC7 +C2BEBCB9B9BBBABABCBCBAB9B8BCC3C8CCD1D8DFE7EFF8FEFEFEFFFFFFFEFBF5E4E0D9D9 +E2ECF2F8FBFCDA955B352E30385065737F88949EA5ACB4B6B4B1AEA89C9083776A5E5351 +535245331F0D112D43372E241E160C06080F161E2A37434A4C4B4745444444464C535C63 +696C6E6D69665F574D46403B393A3C3E4650575D646B70737779797875726E6B67676C73 +7E8A9296999B9C9FA3A5A193837B7878787879726465EBFFFEFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFEFFFFFFFFFFC090827890A7A5957F6954566570777875757A8799A7B2BC +C1BFC0C8D0D3D3CCBAA6907A6F6E71797E838583827C736D6A6B6F7A87929A9FA4A2A09D +9A989B9FA4A9B0B5BAC0C6C9CBCDCCC8C2BCB5AFAFB0B2B5B8B9BABAB9BBC0C6CBCED2D6 +DBE2E9F0F7FCFFFFFFFFFFFEFAF3EDEBE8F1F7FDFFFDFFEFA85137313644586F7B888C95 +9BA6ACAFB2B2AFA89D93826D605A534846413C34251E0D0B1D313C3A30271F1915121419 +1E27343F484E50504C484546484A4D515860676A6C6C665F5953493F3A3A3B3D3F454D55 +5B61686D73787D7D7F81807D7B7772737A828C969F9FA7A2A6A4AAABA8998D7D7F7F7B83 +847B7566B3FFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFDFFFFA88C8286A0AF +A3846E5C535E6E777A7C797B7F8B9AA7B5C0C2C8CDD6DDDFD7C8B09477625A5F6A787E85 +898886817B7876787F8A959EA3A6A7A5A3A2A1A2A6AAAFB4BAC0C4C9CDCFCECDC9C3BBB4 +ADA9ABAFB3B7BABCBFC1C4C7CDD4D8DCDFE3E7EBF1F5F9FDFEFEFEFCFAF8F6F2F0F0F8F7 +FCFFFFFFF1BB7B3B2F2E3A485669798287969EA6ABB0B1AEA8A0948574665F514F493B2D +281F210B021F42483E34302A24211D1B1D21292F3841494E50504C48454546484C4F575D +63666867625C544E453E3A3B3D3F464B52585D62696D72777D8185888A898A8784858A91 +9AA3AAB2B2B6B0B5B7B7B4A48C87827D828990897C6E83FEFFFDFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFFFEFFFCFFED9C90838EA3A9957060535A6B7C84828383868A919BA7B7C4 +D0DBE4E9EAE5D1B596775D52535E6E7D83898D8B898682807F828A939CA2A6A8ABA9A8A8 +AAAEB3B6BABFC5CACED2D4D3D2CEC8C0B7B0ACABADB3BBC0C3C7CCD0D5D8DEE4E8EAEDF0 +F3F6F8FAFCFDFEFDFFFCFAF8F7F6F8F9FDFBFFFFFEFFEEB5754536282931394661718091 +999EA2A4A5A1988D8275665C504F42322E2218140E192C4450483D372E2B292825232326 +2D31373E454C4F504F4B474647494C50565C61646565615C56514A444244474A4E52575B +5F63696D71747A7F858B909394949293969AA1AAB0B8B9C0C2C4BDC9C1B196808186868D +969B887968ECFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFDFFCC978E7F8C9997 +7F60514B5C6F7D857F8080868D949EACBFCFDAE8F1F3EEDFC19F7C65565862717F878E8F +908F8E8C8986898C92999FA3A7AAADADADAFB3B8BEC1C5C8CCD0D4D6D7D6D4CFC8C2BAB5 +B3B4B7BEC7CED3D8DEE3E8ECF0F4F6F7F8FAFAFBFCFCFDFEFEFEFFFEFDFDFDFDFEFFFEFF +FFFFFFFFFCE4B7857674705C443B3A4D5F72838F94908C8B827265594C463C3931262119 +1815334E615C4C3F362E2C2A2B2C2C2928282D31363C42494F5354504D4C4C4E5153595F +6466686966625C57514C4A4B4F5255585D6063676B6D7071747A7F858D93949595959699 +9FA8B0BBC5CACDCCD3CDCBBBA4888A8B8995A0A4907E63B4FBFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFDFFFEFFFFB096847983897E5E4B41445A6A757C77777A848E96A2B2C5D4 +E1EAF0EEDFC5A2816E64606979889192959594949495949394969A9FA3A5A9ACAFB0B3B7 +BCC3C8CACECFD0D2D4D7D8D7D4D1CDC9C4C0C0C2C8CDD4DCE2E8EDF1F5F7FAFBFBFCFDFD +FCFCFCFDFEFEFFFFFFFFFFFFFFFFFFFFFFFFFEFCFFFAF6EED9C3BBB5B8BEB09778604946 +535E696B63584C40393022201D1D191B1E1730586B6962534031251F2525282D302F2D2C +32363C41454A515759575453535456585E63686C6F706E6B69645D595655575A5D606467 +6A6C6E70717072767A7E84898D8F8F9092959CA6ADB9C2D0D2D5CA8D747C7C9387929AA0 +A6A49382687FFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFF3A39A7C73777664 +473C38445A6973787577828C97A0AAB7C4CED5D8D9D4C1A48770676B717F909C9E999696 +9697989A9D9D9C9C9EA0A3A5A7AAAFB3B8BEC3C9CDCED0CFCECDCFD3D6D7D6D6D7D7D6D5 +D7D8DCDFE4EAF0F5F8FAF9FBFCFCFCFDFDFDFEFDFDFEFFFFFFFFFFFFFFFFFFFFFFFFFEFF +FFFEFCEFE2D2C4B4B4B8B6BBC3C4C8C6AA764D3E403C382A24211C171A2C353236363B59 +7A6F6B58483B2B1B13161A1D242D33353333383D43474A4E565D615F5E5C5B5B5C5C6267 +6C7073757574716C65605C595B5D6265696D6F7172727272747778797B7D80818283878D +98A3B1B8C0CED5CC7D4D524843578B96A0A7ACAD947D6B64F0FEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFD49D917472726C58483F3C4C606E767779818D97A2ABB4BCC1C4 +C3BFB8B09D85766C6F7D8897A6A8A29A939293979A9FA2A2A29F9D9D9EA0A3A6ABB1B9BF +C3C6C8C8C7C6C4C3C6CDD4D8DBDFE4E7E9ECEEEFF0F1F4F7FAFCFEFFFEFFFFFFFFFFFFFE +FFFEFEFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFF9F2E2D4C3B9B4B3BABEC5CDCFD3D1D2C6 +A5765F55383742433A3A4E6C7E848A8A82787565524236291C1410121B222D383E404141 +45484D51545860676C6B69676564636365696E727578797879736D68625F606366686D72 +757779797A7A7A7B7A797777757574767C85929FACB7C5CED6B15165746E5A4B3E82A6B2 +B3A9957D7364C6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFCB998836F78797057 +4F44485968767D7B818D949FA9B1B9BCBBB8AFA79D948476757682929DA9B2AB9F96908D +8E959DA4A7A5A29C969495989DA0A7AEB7BCBEC0C0BFBFBEBDBDC1CAD4DAE1E7EDF1F4F8 +F9F9FAFBFCFDFDFEFFFFFFFFFFFFFFFFFEFDFEFDFDFFFFFFFEFFFEFFFFFEFEFFFFFEFDF7 +ECE1DCCEC2BAB5BABAC1C7CBCECFCFCCCCC8C4B8B5AD918A8F8C86838288888C89858072 +644F41352C211715161B26303E494E4F505256575A5D60646B717675726F6C6A6968686B +6F7275787A7A79736D68635F6063696C71777C7F8182848381807E7C7A7872716F717882 +919EADBBC8D4D6924F6F7A7B6B593D427CAF917383817B6AA6FDFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFFFFFE9A7D757B807E74675C565A6A7A8687878F939AA2AAB0B3B3ADA6 +99948C847C787E8895A1ACB3B4A9988F8A8A8C949FA7A6A39B97928F8F9097A1A6AEB7BB +BBBBBAB8B7B6B6BAC0C9D3DBE2E9F1F7FAFCFEFEFEFFFEFEFFFFFFFFFFFFFEFEFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFFFFFCF3E9DFD7CFC5BFBAB4B3B2B7BBBDC0C4C6C6C7C4C1BF +BFBCB6B2ADA6A09C9A98989A9A958E857A6E5D4D3F352E2623252A333D4751575C606061 +6264676A6E7276797B7C7A76716D6A686968696D73767674706C655F5D5B5D61646D7278 +81838587888784807F7F7C79747372777F8794A2B2C1CFD6CC675B797E7F75685C47393F +3E25387A887A85FFFFFFFFFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFDE4816F7D8287868074 +686268798992928F9295989EA4A5A49F968E86837F7B787B89989DA8B1B2AD9C8A828485 +89939FA6A49F9895908E8F929AA5B1B6BCBDBCBBB9B7B6B5B7BBC2CCD7DFE8EEF4F8FAFC +FDFDFDFCFCFDFEFFFFFFFDFEFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFEF4E6D4C5BCB4 +AEA8A5A5A4A7AAAFB3B5B7BBBDBDBAB8B6B3B2B0B0B0AEADADAFAFAEACABA79F94887B6E +5D4E403A363334383D444D565D6165676768686A6D7073777A7C7F807E7A75706B686665 +65676A6C6B6964615B575657595D646E747B8386888B8987837F7D7D7B797C7C7D81878E +99A6B5C8D6D8BB56687B7E7D756D6554494D4D4B2C47947F86DEFEFFFFFEFFFEFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFDBF6F738F928F8981766E6C78889497928A888A8E94979795918981 +7D7876777A818C959DA5A69F928073717478808C99A09D9791908D8E9297A1ACB7BCC0C1 +C1C0BEBDBDBEC1C7CFD9E3EAF1F5F8FAFBFDFDFDFDFCFDFFFFFFFEFEFFFFFFFEFEFFFFFF +FFFFFFFFFFFFFFFFFEFFFCEFD9C2AFA39C95918B898C8F959FA4AAADAEB0B1B1AEAEADAD +AEB1B5B7B7BBC0C4C4C2BDB8B0A392827264554944403F40444A4E535B61666768696A6B +696A6E7276797B7D7F7F7E7B756F67615A585758595A59585756535255575B5F6671777F +86888B8D8C87807B787676777B7E82878D929BA6B4C4CFDB8E51777D817E777069605C61 +6B634D3C3E3854A9FEFFFFFEFFFCFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFF9D6F8AA09E93857970 +6F758692968F847B797E82878B8C8D8D88827D7876787A7E82848F8E8779695A55595E66 +72818D94928E8C8D8E91969CA7B2BAC0C6C8C9C8C7C7CBCFD4DBE3EBF2F7F9FBFCFCFDFE +FDFDFDFBFCFDFEFEFFFFFEFEFFFFFFFFFEFEFFFFFFFFFFFFFFFFFFFCF1DBBFA899908783 +817E7F858B929AA0A5A6A5A4A3A3A2A3A5A9B0B7BCBFC9CFD4D4D3CFC6BEB09F89766659 +5048474445494F555A5E63686A696968676867686B6F7377797A7C7D7D7A756D625A504C +494A4D4F4F4F505152545A5F62666C757B8186878A8B898178726E6C6F74777D83898E92 +99A2ACBFCECD8C5E7D8384807A736962646B6C685E4F40443479FFFEFFFEFFFDFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFEFEFE81779AA69E8E7D747177818A8D88796C666B747B81878A8D8E8A84 +7F7D7C7976767A7B756F6252423839404C57677681888988898C90959BA1AAB4BFC6CCCE +CFCFD0D3DADFE6EDF3F7FAFCFEFFFEFEFEFFFEFDFFFEFFFFFFFEFFFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFF9EBD5BCA5938883818384888F959CA1A3A4A19D9A98979A9CA1A8 +B1BAC1C4CED5DAD9D6D0C3B7A18D7562544B474545464A525A6066686C6F6F6C6A686566 +68696B6F74787A7C7C7D7C7A756C5F564B454041454A4C4D5054575C62676A6D727A7E83 +8686888882796E6663636971787F868A8E91969DAAB0B6C187637E85847F7A7368616266 +67605D5452534D5BFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFE373809DA19382767378 +81898B837665595B66727C838B9094948D857E7976736D6B6A665A4E3F3228252D374451 +63717A808587858A91979EA5AEB7C2CACED1D5D8DCE3E7ECF3F8FBFDFDFDFFFFFFFFFFFF +FFFEFEFEFFFFFEFFFFFDFEFDFDFDFEFEFFFFFFFFFFFFFFFFFFFFFFFDF4E1C5AC9B909391 +93969AA1A4A9A9A7A39F9A9897979C9FA4A9AFB6BEC4C4CACFCECAC0AF9F8C786252463F +4043454A515B63686D6E717372706D6966666A6B6F747A7E8081807F7E7B756C5F544841 +3C3D43494D51585E63686E7273757A7F8286888788867F7569615D5F666D767E84888C8F +93989CA8B3B6B9617683837B736C625D5D5E6159524B55525551DDFDFFFFFFFFFDFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFB870849291847B797B8086877E6C5E504C5766727F858C929492887E +786F6A66615E55493F3327201C1F2C384350616F777D8285838A91989FA6AFB8C1C8CED4 +DDE4EAF2F3F7FBFDFEFFFFFEFFFFFFFFFFFFFFFEFFFFFFFFFDFDF8ECD7D4D6E1F1FDFFFF +FFFFFFFFFFFFFFFFFEFFFEEDD1BAABA3A19E9EA0A5AAABAEA9A5A19D9B9A9A9A9B9EA1A4 +A7AAAFB3B2B4B3AFA99E8C7C6A59483E37353A404B535A64696B717175777675736F6D6E +7174787E82838483827F7B767067594F433E3B3D444B545A62696F747A7D7F808386878B +8B8988847E756B6361636A70777E83868A8F93979CA6AEBCC36A6D7F7D756B625B57585A +5C524B4B4B4C4C51ACFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFFFF976F80807E787C848788 +8781715B4E474A5B6E7A8186898B8B85796D6059544F48443C302C241D1B1B1F2A364451 +616E767C8083868D93989DA3ACB5BFC7CDD7E4ECF1F9FAFDFEFEFEFFFFFFFEFFFFFFFFFF +FFFEFFFFFCEFD8BA957359545B7CAEDCF7FFFFFFFFFFFFFFFFFFFFFFFDF1DDC9B9AFA8A2 +A09FA2A6A5A6A5A19D9B9A99989799999B9D9FA1A2A29D9A938C857A6A5B504237343335 +3D46515A61696C6D74757A7C7C7C7B7977797C7F8387888683807B767069635A4D423936 +363A414A5660676F767B81848688898B8C8E8E8B88827C766D68686C72777F8488898D91 +94979DAAB1B7C3725C78756F675F57525356585446434847484B84FFFEFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFF6F6E6D7476778B969490847A63554B4C58666F77797A797771685E56 +4D4B453F3A31261F1B1B18181D27343F4A58666F777D82868C92989DA2A8AFB7BEC5CFDC +E9F3F8FCFDFFFFFFFFFFFEFFFFFEFFFFFFFCFCD9B7B199858384838182807A6D738099B5 +D4F2FAFDFEFFFFFEFFFDFCF6E4D2C2B4A8A29D9D9E9E9FA2A2A3A2A0A0A1A1A0A2A2A4A4 +A19F9C97928A80777066594F464341414348525B656C7174797D808485888B8B8A8A8A89 +8B8C8C8B8A86807B736E665F574D423A3434363D46505C656B72797E83878A8C8E909190 +8F8C8986807B7674767B81858A8E919395989B9DA4AFB2C4CA8C4F6E6E67635E554D4B53 +55504340464947425DFEFFFFFEFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFDF35B66666C6C7A939E9A92 +837362564F505963686C6A67635D564F48433F3E3B3530281F1C1A1D1F2128323E495761 +6B737B838A8F959CA1A5AAAFB6BDC6CED8E4F1F8FCFEFFFFFEFDFEFEFEFFFFFFFDF7DEC0 +95604E687F93A8B2B5B4ACA69E908A7B6C677C889FBEDDFAFFFFFFFEFDF8ECDDCBBAADA6 +A09FA0A1A4A8A9ABAEAFB1B1B1AFB1AFADA8A19B958E898279716A635C5755575A5F656B +72777D828586898C8E9194969998979798999897938E89847D776E675F58524A433E3D3F +43495159626970767D82868A8E9092939493918F8B888683818284888C8F95979A9C9DA0 +A3A6ADB5C1C0CDA3476A69625F5C544B484E525046424648433B45EFFFFDFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFFD25A6067696E869DA59D907E6A5B535254585E61615D595149413B3736 +363734302B2623252C33393F464F59626C72787D858C93999EA4AAAEB3B9C0C7CED5DFEB +F5FBFDFFFFFFFEFEFFFFFDFDFEFEFBF0B174525A7E9BB3C1CACAC7C4C3B8AFA3A09A938C +7E6F6B7197DFFDFEFEFBFBF8F1E7D7C5B4ADA6A4A4A5A8ADB1B5BBBFC2C4C2C1BDB9B4AD +A59E97908C867F7974717274767B82888D919292959797969697989A9EA1A3A2A3A4A7A9 +A3A09A928B8279736C655D58544E4A4A4F53595E656B7174797D8185878A8D8E93959695 +9493908E8D8D8E919496989A9D9D9EA0A1A3A8ADB7BBCBD3D1BF4260655B585751484349 +51524A444649433735D2FFFDFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFAB60646A7082959FA19887 +745E524C4F5152585A5A5550473E37322F2F3334312E2D2C2F343C464F555B61686F7378 +7E858D939AA1A8AEB4B8BEC3CAD1D6DDE7F0F9FDFEFFFFFFFFFFFDF7F2F0F2FEFCE9B872 +517C9CB3C2C9CDCCCBC8BFB7B4ABA59F9C938C72676E92D5F6FBFDFDFCF9F3ECDECFBEB8 +B2AFADADAFB3B9BEC4C9CDCFCECCC8C1BAB1A8A19C96928D888685868B91989EA4A9ADB0 +AEABABA9A5A2A0A0A1A2A1A4A6A7A8ABAEAFA9A59D958B81766E6A635E5C5A5554565C62 +696D72777A7A8082848687898C8E939598999A9A999796989B9EA0A2A3A3A6A3A3A5A7AA +B1B9C0CBD1D6D5C14F5C645751504C4541474E514A403F45423433ACFCFEFFFDFFFDFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFD935F6E7383969C99968E7B65514643494B4B5257575851483F38343334 +39393737393C4147515B64696D7074787B81888E959AA0A7ABB1B7BCC1C6CBD2DAE2EBF3 +FAFDFDFFFEFFFFFCF7F0EBEBF4F8F9FCF1925687A9BCC7CDCFCDC7C1B8ACA5A09F9C9A8E +81706987AFDBF5FAFBFDFDFCF9F3E5D7C9C4BEBBB8B7B9BCC1C5CBD0D3D4D2CFCCC4BCB3 +ABA5A29E9C99989A9C9FA5ABB2B8BDC0C4C6C3BEB8B3ACA6A3A3A3A3A4A7A9AAACAFB0B1 +AEA9A0968B7E736C6B666363636162666F767C8083878785858586888A8D909295999DA0 +A2A3A3A2A3A4A7A9ABADAEAEACA8A6A8AAADB7C1CBD2D7DADA8E576968584E4A47424147 +4D514B3F3B403F302E89FEFFFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B5D6D82959D99908C836F +56433A3B43464953595C5D5449403B38383A3C3C3C3F44474D535F676E717476787B8086 +8B8F93979DA3A8AEB3B8BDC2C7CDD7DFE8EFF4F5F4F5F3F4F3F1EDEAEBF1F5FEFFFCE987 +5790B3C2C9CAC9C5BEB6AA9B939295949285776B6698CBE8FAFBFCFCFDFDFDF7E9DBD1CD +C7C3C0BFC1C4C6C9CDD1D4D4D1CDCAC3BCB6B0ADABAAACAAABAEB2B6BBBFC4C8CDCFD1D2 +CEC9C3BCB4ADA8A7A8A7A7A9ABAEB1B4B5B5B2ABA2978D827974726E6B6D6E7073787C82 +888A8C8E8D8A898887898B8E9295999DA1A4A7A9ABAAAEAFB1B3B5B8B9B8B6B1AEAFB0B5 +BFC9D3D7E1DEAB586076705E5047434040464B504C40373A392A2468FFFFFEFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFCFC5F5D6E8C9D9D938C847763493A353B454A50595F6262584C4643414143 +424344474C50575F656B6F70727577787F858A8E93999EA2A5AAADB0B4B7BCC2CAD0D7DC +DFDFDEE0DEE0E2E3E4E5EBF3FFFCFDEBB25D5298B5C1C5C4C0BAB1A69B8E888A8D8A8C83 +796970BAF2FBFCFCFFFFFEFEFEF7ECE1DDD9D5D0CCCACACCCDCDCDCED1D2D0CDCCC6C2BF +BAB7B6B5B6B6B8BABCBFC3C7CBCED3D6D8D9D6D2CAC2BAB5AFAEAEAEAEAFB0B2B5B9B9B8 +B3AEA69D948A84817C7978787B7E8285888D91939392908D8A8887888B8E92969CA0A4A7 +AAADB0B1B6B8BABCC0C3C3C2BEBBB7B7B8BDC6CFD9E2DDB25D58767B77665549433F3D41 +4548463C2F2E2E201C3FFBFFFEFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFF0535E7C8DA29D928C806F5B +423638414C51575E60635F544A4544434344454545474C515963696E6F6E717476777D83 +888B91979A9AA0A4A5A4A6A7ABB0B6BBBFC1C3C3C4C7CCD0D7DFE7EBF2FBFDFFFED8875E +6C9CB7C1C2C0BDB7AEA2968A858A8F8E918C817272ABE1F8FFFDFEFEFFFFFFFBF5F1EBE9 +E6E1DCD8D6D6D3D1CDCCCFD2D2D0CCC9C8C7C4C1C1BFC0C2C3C3C4C7CBCED1D3D6D9DBDC +DAD7D4CCC5C1BCBABBBAB8B7B6B6B8BABAB8B5B1ABA49B918B8888878686898C8E909195 +999B99979391898786888C90959AA0A3A7AAADB1B5B6BBBDC1C4C9CCCCCACAC7C5C4C5CA +D3DBE0DDC37E456F7E837B6B5A4C433F3B3D414442392A28281D1A1CECFFFEFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFDFFD35F6885999F978F837667503D39454F585C5C5C5D5F5B534B484947484C +4C4C4D52595F646A70706F70717375777C7E83878A8E919397979695969B9FA0A5A9ACAF +B0B0B5BCC6D1DEE8F3FAFEFFFFFEF9BB5B6F97AFBFC3C4C1BCB6ACA2989391949CA1A2A2 +9C958988A2CDEDFAFAFDFFFFFFFDFDFCF9F5F3EBEAE4E0DCD8D3D0CFCFCFCFCDCACAC9C9 +C8C6C7C8CAC8C7C7C8CBCFD3D4D9DDDEDFE1E2E0DCD8D2CCC9C9C7C5BFBCB9B7B6B9B9B6 +B6B0A9A39D96918E8D8D8F919496999A9B9E9F9D9996928F8986858990969B9EA5A8ACAE +B0B3B6B8BEC0C3C8CDD1D2D2D3CED4CCD5D3DFE1DFB3815673828588817260544C413938 +3939392E261F1F16121FC7FFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC769788F9999958776655343 +3B40545C61605E5C5D5F5C57514F4F4D4D505254565A61666A6F7373737272737576777B +818588898B8C8E8E8C8A8B8F9294979A9DA0A5ABB5BFCEDCEBF5FCFEFEFFFFFDD78D517F +A3B9C4C6C6C2BEB9B0A79E9C9CA1A8AEB3B6B8B8B5AD9E949AA6D6F7FFF9FFFFFDFFFEFD +FFF8F5F3F3EEE3DAD3D1CFCECECDCBCACACAC9C8C9CACCCBCACBCCCFD3D7DDE2E6E8E9EA +EBE9E8E4DEDAD6D2CDC9C6C1BCB7B4B5B5B3B2ADA7A39E9893908F9195999DA1A2A3A5A5 +A4A09B96908B8585878E959CA2A6ACAFB3B6B8BABDBFC1C3C6CBCFD3D6D7D5DCD9E0DCE2 +DEBE9164687886848A847F77695B50453A34333130251B161711111EB0FEFFFEFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFDB6768894939083705D4C3F393F50656868635E5B5C60615F5C5957555456 +5C6064686E71757A7B7B7A777574757676797D81838587898A8A8988888B8F909396999E +A5AFBDCAD8E7F5FCFFFFFFFFFDE48262729EB4BDC4C4C2BFBCB8B1A9A5A4A5AAAEB3BAC1 +CBD0D5D3C9B9AAA29BACD5F7FCFCFFFFFFFDFFFEFEFCFAF2EEE2D8D4D1CECECECDCCCCCC +CBCBCBCDCCCACACDD1D5DBE1E5EAEFF1F2F4F5F4F6F1EBE6E1DAD2CEC6BFB8B3AEAEAFAF +ABA8A4A19E99949192959AA0A5A8AAABACAAA6A09A928B8685888E969DA3A9AEB2B5B9BC +BDBFC2C4C5C7CACDD0D3D6D9D8E0DEE2E0D98B5E657B8A898C87817D7D7C7263594D3D31 +282625190F0C0F0D122192FFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA78294968D85765D493C3537 +44596F6F6B645F5D61666A6A67635F5B5A5C60666C7176797D828483807C777474747779 +7C7F8184878A8D8E8E8F9194989B9FA2A6ACB3BBC8D5E2EDF7FCFEFEFEFFFFC6546693A7 +B7C0C1C0BDBAB8B5AFA9A4A3A6ABAFB4BDC5CFD7DBD6D2CCBEAFA5998DA6DEFCFDFFFFFF +FDFFFFFEFEFDF6EADFD9D3D0D1D1D2D0CECECDCCCCCECAC9CAD0D6DCE5EDF0F4F9FBFBFD +FEFEFEFBF6EEE5DACFC7BEB6AEAAA6A5A8AAAAA8A6A5A4A19D9A9DA0A3A8ACAFB1B2B1AE +A8A198908A86858C969FA5ACB3B8BBBDC0C2C3C4C6C8CBCDD1D3D5D7D9DADDD7DDDFDAA0 +4B597B8C8B8A857A747A76766F645B4F3A2924211F130603060716267AFFFFFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFF9A869792867A684938333641516671716C6663646A717576726B65606063 +666D73787E82878C8C8A847D7672717274777B7F818386888D8E909295999EA1A6A9AEB3 +B9BFC9D4E2EBF4FAFEFFFDFBD089437096ADB9BEBCB9B6B3B1AEA9A5A2A1A4A9AFB5BCC3 +CCD0D4D3CCC5C2C2B5A69691A2C8EBFAFAFFFEFDFFFFFEFFFBF3E8DCD3D2D3D3D4D0CDCB +CBCACBCCCACBD0D9E0E6EEF5F9FCFEFFFFFFFFFFFEFFFBF1E3D4C4B8B0A8A3A09E9EA2A6 +ADADADAEAFAFADABADAEB1B5B8BABBBBB8B4AEA49A928E8C8D959FA7ADB4BABFC3C4C6C8 +C9CACCCDCFD1D5D8DBDCDCDCD9D9DCE0D2684B718D8F87847977746A6E6E686056463224 +211F1E1102000204172764FFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF958B958A847B644232303847 +55666F6F6D6A696C72797E7D78716B66666A6F767C81878D92979591887E76706E6F7173 +76797B7E81838687888B8D9095999EA1A4A9AFB5BDC6D3DBE4EBF4FAFCFCDC95416A94AB +B8BDBAB5B0ACA9A5A19E9E9FA2A9B0B7BEC3C9C8C9CAC6BDB9B8B9B3A99E9496A6B8D4F1 +FDFFFFFEFFFFFCF5EBDED4D2D4D2D0CCC8C7C8C9CBCCD0D5DDE7EEF4F9FDFCFDFEFFFFFF +FFFFFFFDF5E5D4C2B2A69F999696979AA2A7B0B2B6B8BBBDBDBCBABBBDC0C2C3C1C0BCB8 +B0A79D959191979EA8B0B6BCC2C6CBCBCBCCCDCECFCFD2D3D6D9DBDBDBDAD7DCD4D7D25E +557385877F7C756C6765656560584A372722222222130101010311224FFFFEFFFDFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFF918D968888815D3D3336405059666F7170707172767D83817C77716C6D72 +767C82878E94999C9D968B7E736B6867696B6D7074787C7E7D7D7C7D7E8085898D909398 +9FA3AAB2BBC4CDD4DFEBF5FCF5B74D6D98A4B2B7B2ACA49E999491908E9299A1ABB6BDC1 +BEC1C1BDB8B4AFACAFB4B6B5B3A996867DA1C8EFFBFDFEFDF8F3EBE3DCD9D7D5D1CECACB +CED2D6D9DFE6EEF4F9FDFFFFFEFFFFFFFFFFFEFEFCF1E2D2C1B1A49E9B9796989BA2ACB2 +B9BEC3C7CBCDCECDCAC9C8C8C9C8C5C2BFB9B2AAA39D9A999FA7B0B7BDC4C9CCCECCCAC9 +CACACAC9CBCDCFD1D2D4D6D7D5D7DAD8BD5B5178857F79716C6661585856514739281E1F +27282716020301030F1E3AFDFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68385968A897C533837404C5B +626C7375767778787A7F84817D7A767172787D83888D959B9EA1A0988B7C6E645F5D6063 +676D72767778767473727273787D8183878C92969BA2AAB5BFC6CFDCEBF6FBB45167869D +AAA8A29A9088827C7A7A7B8189929CA7AFB1B3B1AEA9A5A1A09FA4ABB4BABCBBAD9B8574 +79AEDAF3FBF5F6F0EDEBE7E3DEDAD8D5D2D5DAE1E7EAF0F6FAFCFDFFFFFFFFFFFFFEFDFA +F8F6EADCCDC4BCB0A9A8A5A2A2A4A7AFBAC0C7CCD3D7DADDDDDCDCD8D3D0CFCDC9C6C3BD +B6B1AEAAA7A5ADB2B9BDC1C4C7C7C6C3BFBDBDBCBAB9BABCBFC1C3C7CDD1D3D8DAB77048 +5E7F848078696A6159544F4C453C30231D1F25272817040A090C151F2CF8FDFDFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFF07D88948F8B774F4047585F6974797E7F7D7B7B7A7A7C7F7F7D7973707479 +8081868D92989D9D9A938472655A5454585E666E747677767573716F6D6E7175787C7F83 +888E97A0A9B1BBC5D0DAE6F0F8E6BE6F557A898C897E7068676563646A757A838D969C9C +9D9B95919292919299A3B1B9BAB9B0A39283747194D9EBEFEEF3F4F3F2EEEAE8E5E3E2E5 +EBF0F5F8F8FCFDFEFFFEFFFDFDFDEFD3A3787B95BCD0CBC7C1BDB9BCBBBAB4B3B7BBC3CF +D3DADFE4EAEBE9E8E7E1DAD5D3D1CECBC5C1BCB8B6B3B1B1B5B8BDC0BFBEBBB5B1A8A09F +A09FA0A2A3A6A9ACB1B6BEC7D0D4D8713F517885867F756D665E554E473F3D362C241E1F +24251E11150E070511222CEBFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE97C8D9C93887255505C696C72 +7B828788847E7A7776797C7C79736E6D73797E7E83898F9495938F8A7B6A5C514C4D545B +656F7576767572716F6E6C6C6F7275797D82888E97A0A7AFBAC4CFDAE4EDF6FFE5824960 +6E746F6E645B5A5C5E636B6F7580888B91928F8F8A8382868A8D959CA6ADAFAEA5968B7F +6F627DC9E7ECF2F8FBFBFBFBF8F7F7F5F4F6F9FBFDFEFFFEFDFFFDFCF2EFE5B06F504232 +34428ECFD3CBD0CECDCFCFCFCCC7C6CBD1D6DBE1E7ECF0F2F0EEEAE6E0D9D3CECAC8C7C6 +C5C4C2C0BDBAB9B9BAB8B3ADA69E948E88898A8B8C8F94979A9EA4ABB5BFCECDA14E486F +858A88827A71695F5249443C38322B26201F2023211C17081225271C2AD9FFFDFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFDDD7D92A09686705C606F78777A828B8E8D887F787373777A79766F6A6B7277 +7B7B7F84888B8C8987807362544B484A5058636D737575747372716F6E6E7175797D8287 +8E959EA6ACB5BFCAD4DEE6EEF5F7F0E0A55E4746434341454B4B4F5B60717E868B8E9192 +8E8986848385898A8F92969899989085786C625E7EC8E7E7F3FBFFFEFFFFFFFEFEFDFDFE +FFFFFFFFFEFFFAFDEFCA7B586163646351332B3673AECEDADADAE1E5E5E1DFDBD4D1D6DE +E3E7EBEEEFEFECE8E1DFDAD3CDCACACBCBCDCFCFCECBC5BEB9B5B1AAA1988E86817F7E80 +8386898B9093969AA1A9B5BFCBD5874B5A7A848B86837C756E65574C413934302E2E2A26 +241E191206082C45492E24CDFFFCFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC8C9DA2968772686F797C7B7E +858E9391897F787475797B7A77706C6D7276787A7E81818385847F77695A4F49494B5056 +5F686D6F707172706F6E6E7074787E83888E969DA5AEB5BDC7D1DCE4EBF0F5F6F0E9E2C9 +925B50453C3A3D3F4449576A7B89979C9B9C9B908A898785868784848483827E7772675C +59648AC7E2E7F4FCFFFEFEFFFFFEFFFFFFFFFFFFFFFFFDFEF3C97C4E4C627B7F7D75664C +3325254896D2EAF5F5F6F8F7F3EBE2DCDAE0E2E2E5E8E6E2DDD8D1CEC8C2C1C4CAD0D4D8 +D9D8D6D2C8BEB5ADA39A9189827C7D8084888D929597999DA0A3A9B1BBC5D2CD7648617C +8280827F79716A6052463F3834333639342C201015160B1A39455D531EC8FEFEFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFD695A7A594897B777C817F7E8186919A968E847E7B7B7E807E7A7470717579 +7A7B7D7F7D7D7D7C72695D534B4949494D52585F6364656666656465666A70757D82878E +969DA6AEB6BFC8D1DCE5ECF0F5EEEAE4E0D9CBC4C4B2987C6C6D6A595A57667E8C949DA4 +9D96918B837C78736D6A6463666562646B748498B2CFD9E0EDF4F8F9FBFEFFFEFFFFFFFF +FFFFFFFFFDDE94482F3B677D7F7C7367605237201E2C557A9BAFAEB1AFB5AFAAC2DCE0E0 +DFDDDBDBD9D5CFC9C4BFB9B7BBC3CDD3DADDDFDCD9D2C5B9AEA3968D85807F7D80868E95 +9BA1A5A7A9ADB0B3B7BDC5CCD2D1AD6256717B7D7F7B746B6054453A363433373C3E3629 +100A202D282E353F5D6B26BCFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECB94ADA896938B848586838184 +8A969D9A938B8683818384807A7674757A7F7F7C7C7B7977746F645D56514C4A4846474A +4E52555656565757585A5E646C72787D838A9198A0A8AFB7BFC8D3DDE3E7E4E7E1DBD3CB +CECFD2D2D4D2D1D8D4C39974626670849290938C81756E6C67615A606773858F9296A3AF +B8BBC0C7CBD2D6DDE3E8EFF5F8FAFCFDFEFDFDFDFDFCDCA4663A2B2E575B635F5B544B3F +2B1D1B282C2F363638374048413B5A84A0B8D2D7D5CECAC8C4C2BCBAB9BDC5CFD6DADADD +DDD9D3CABBADA19589817C7A7D80868E99A2A8AEB4B7BABFC2C4C7CBD1D6DADBDD6D4671 +7D82807C73675847382E292B2E353A3930200F2435332E2E2B3D586E40ACFFFFFCFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFCC99B0ACA0A89F928C898686888E9A9F9E99928C868384827C787778797F84 +837E7976716E6A655F5B57544F4C4944434344454748494A4D4F53585E656C72787D8289 +8F949AA0A5ACB3B9C3CCD0D2D4CDCDC8C9C9C4CBD5D4D8DDE1E5EAECE9CBA0745F636F7B +7B746E696158565B778C9EAEC0C8C5C5BEC0BDB9B8BABFC3C3C8CDD5E0E8ECF0F4F6F7F7 +F6F5F2EFDDC59665452D3233302A292929271F1E22292A2D31374F58657172605146455A +90B3C9C7C3C4C5C6C3C4C8CFD7DCDDDDD9D7D2CAC0B3A3958980797776787F848D95A1AC +B4B9BFC4C9CDCFD0D3D6DADDDFE2E07552798386867F7365513D2E2727292A2F302D2415 +16383B2F2C303344576858A6FFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECD9BADAAAABCB0A2958D8A898B +909AA4A5A199908782827D7775787B7C8186837E777069666462615D5A56504C4843423F +3D3C3D404345494C525A61686F757A7F848A8F92959B9EA4A8ADB4BBBDBEBBBFB7BABBB8 +C0C1CAD2D7DADFE2E5EBEEF2E0CAC0996A64645A555853506C95ABC1CBCACED0CDCDC7C1 +BDBEBCBABDBDC1C3C7CFDAE2E7EBEAEDEEEDEBE7E1DCD9D3C2B3A6987554372E271F1B1C +1C1F25262C31485D72818989877A6F5A3A313B80B9C6C7CACED2D2D4DADFE2E0DCD7D2CC +C1B4A6978679736D6C707379828A949CA8B5BDC3C9CED5D9DAD9DCDFE1E4E9E2B96D6281 +8E8D89807465523F33302F2F2B2B2721190D2F44393430303B45546360A7FFFEFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEBC9FA7B1C3CEBDAB9C928C8B8A8E9AA7A8A19B8D857D78746E6C71787F8484 +817B7168636161605E5F5E5B56504A453F3B3A3B3E41464C50555D656B70767B8184888B +8E909395979AA0A4A7ADB0B0ADACAAAAAAABB1B7C5C9CDCFD1D4D8DADDDFDFE2E3D7BFA5 +826C5856739DB7C3C9CED3D6D8D9D7D5D0CAC5C3C1C0C1C4C6C8CED6DEE4E9ECF0F1F0EC +E6E0D9D4CCC8C5C8CCCDCAC6BBA4834D2E24262D322F2F456B828A9195948E8071614C37 +2B4C7FB3CBD8DCE1E2DFE5E7E4DED8CCC4B7A792817469656164666B747E868C96A4AAB8 +C1C5D3D5DDE0E4E3E2E3E4E8E9CE795F848D918D867F7160524A454239302419110E1319 +3F463F3331374449535E61A0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1A1AFC3D0DBCEB09F98938987 +8F9BA5A9A39C8C8278726B67686D73797D7D7970655D5A5A5B5C5D5D5D5B575148433E3C +3C3F42474E5459606970767E8386898B8E9091929394989A9EA1A2A4A5A3A19F9E9F9FA1 +A7ADB4B7BBBCBEBFBEBDBCC1C4C8CED4D8D6C9BFB6B3BAC5C9CCD0D4DADFE2E1DDD8D3CE +CAC8C6C5C7CACDD0D7E0E7ECF0F3F7F8F6F0E9E0D8D2CAC6C4CBD7E3ECF0FBF4D6803935 +415457616C7C8D94959B9B978E807163524328283A6998BDCBD0D6E3EAE9E2D8CEBFB0A1 +907F736B626060656A70787F878D96A5ADB5C3CDD3D8E1E3E7E5DEE1E7E4C96C54738D94 +8F897F766B615853504B3D2E180D172840574C4A3A2F333F4A4B505C5AA1FEFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFC4A7B0C5E7EDD1B1A29D988986909AA5ABA49985776D665D5C60676C717575 +6E655B56555658595E5D5D5C595147413D3D4044494F575F6870787D82898D8D93949596 +9797979799989A9C9B999896939291919293999EA2A5A8A7A6A6A29E9EA3A6ACB2B9C2C5 +CBC7C6C6C7C9CBD1D0D2D6DADDDCD7D1CECCCBCACACACED2D7DBE3EBF1F5F8FAFAFAF8F3 +EAE1D8D3CBCBCFDAE9F5FDFFF8DD9E634B73878E93999D9FA09E9D9F99928A8073696059 +5C493633333A41476F99B7C2C3C0B7A796887A6F696664666A70767A7F848C93999EAFBA +C1CAD2DEE5E3E5E7DFE0E3D3814B6D8C8C8F847E776A5F595352524C341E111E35444D53 +5047342C374A5452505E53A5FEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA9FA9D2E59F93AFA7A59D8E89 +929AA8ABA08F76675D5753535962696E706F68635E5C5C5C5C5D61605F5D574E453F3C3E +43484D555F6770777F84898F9393979797989898979594919192908D8B8A888787888A8C +91979C9FA09C9997948F9495969CA5ACB5B8BDB9BABEC0C0C2C6C4C2C2C6CACCC9C5BFC0 +C0C1C2C4C8CDD4D9E2EBF1F5F8FAFAF8F4ECE2D7CFCBC8CDD8E6F2F9FCFDFBB8585A7395 +A1A5A8A8A8A7A6A5A19B978E867E746B67666C68645E5045414140342F47769E9C8D7E75 +6D6967686D737B7F83868A8F97A0AAB2BEC4CEDAE0E4EBEDEAE7E1E0D4AD49557789908B +7D73685B534E494B4B442A14172A323D4C515045342E3A4C534E505E4DABFEFFFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFC8929FD0CE343E9CA5A59A908D959EABAA9882675A5350515158626B70716F +6C6A69686765636363615E5951473F3C3A3E444A5059636C74787F868B8F939597969493 +918F8C8A88858384817F7F7E7D7C7E83888C92979B9F9F9A95928F8D8E8F8F959CA4AFB5 +B4B3B3B7BAB9B5B2ACA9A9ADB2B5B3B0ACADAEAFAFB1B6BAC2C8D1D9DFE4E7E9E9E7E1D9 +CFC6C1BEC3C7D0DCE7F0F6FAF9A8495F819BA6ACADAEAFAAA29C96908B84807E7A787B7F +8684827E7A78746D5F432A20417E887F746F6B6D70757E868F9193979DA4ADB6B9C6CBD5 +E2E4E9F4EFF4ECE8E4CD954F3564838B8676716254473D373338372C110F1F2C2C3A4E54 +5143332F3B4A4D474B5746AFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEDA83AAD0AA1C22869C9F948E8D +95A3AAA48E796158565658585E6870757775767573706C6864625D5A5650473F3A393A3F +464E555D676D76797E85898B8E91918F8C898785827F7E7B7A79777677767676797F8589 +8E9396999995908C8B8B888C919BA3AAB2B5B4B3B0AFAEA9A49F9E9D9EA1A5A39F9B9798 +99999A9CA0A3ABB1B9BFC4C7CACBC8C5C2BDB7B1AFAEB2B5BCC5CED8E2E9EDA96A626D87 +98A4AAABA8A0958F8D8C87817F7F7F81888D9091918B88847A6C54412E1C306D7B767674 +747C858D979DA3A4A6ABB3BAC1C9CFD4DBE8EDF0F5F0F1D4A6866E584637547688868275 +674C40352D2A2A2C26190C192123304754544E3B2D2D3B4A4A45495245B4FEFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFD089ADD2A31A407C92948A8888919EA29A85756460616465656A71767A7C7C +7E7C78716B655D56514D48443F3B3B3C41464E565D646A6E71757A7E828587888583807D +7C7A787676757675737475737474777C808285888D8D8C8A8886888B8E9398A2ADB5BCBC +BBBAB4B1AAA09B9693929294948F8985858584848486898B90969DA3A7AAABABABA9A6A3 +9E999594969AA2AAB2BBC5CCD3CDB16E55658090999A98938D8885858A88888A8C91979A +9A9998918D816F5A482A1B2F4C6E777F878B909CA5AAB2B4B6B6B8BDC3C9CFD7DFE4EDF0 +F4F7DEBA86674C4A545A636E7D8488837D69574A372D25231F1A110819282B2A3C545B57 +4933282D3D49453E464B47B8FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE8CB2D3B457616E80807B7E82 +8C979A917F7469686B6F6E6E72787A7D8081817F79716961554946413D3C3C3C3E41484E +565E64696D6E707578797A7D7D7B7B79767371706E6D7072747472747572747375797C7D +7F81878381818182878D929AA1ABB4BBC2C3C3BFB5AEA49794928C8A898987837E7C7978 +767473747576787F878E94989999999896948F888381878A90969CA4AFB7C3C9CAB29452 +4F7685898B8B888584878384888C90969B9C9D9B998D8472614F3523153860808D96A2AC +B5C0C5C5C9C8C7C7C8CCD2D7DEE6EAF4F8F4EDBA75676D707674747A7D7C818489877C69 +5B44392A1A120E0F18212B2F3035475A5D52402B252F4049423A404345B8FFFEFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFD38EB9C8AF786563717772747D878F8E8B807672727776737072787A7C8185 +8580776D6052453D393B3C3D41454B52595E65696B6D6E6E7072747474747371706E6B69 +67666769696D71737374737173726F7072727173777878787C81888F949BA6B0B9C2C5C6 +C2BDB5AA9E96908C898786888987827D7B78736F6C6D6F71747B82888F93949495928F8C +87827F7F81858B9198A2ABB2B8C1C6D2B5674459697C7F84848482848383838890939395 +948F897F716655412F1E1A5E8A98A8B4BEC9D1DADED9D9D7D5D5D3D7DEDFE5F0F3FBF5D5 +906A859094918C8886868585858989877E70604E39220B102A344649423D3C414C585547 +362727324048423D423F3EC2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD88AB6BA9B6A5B606E716D737E +868B89877F7875767A79726D6D72767B8184847E7366584C413A3B3F42474D535960676A +6E7071706F6F6E707170706F6E6C6C6864615F5E5E6064676B6D6E6E6D6B666562626363 +6366686B6D71787F8890989FA8B0B8BFC2C1BAB3ACA399928E8A8B8B8C8F908F89847F7A +74706E6F72767982898F959898989B9895918C878585858A9198A0A9B2B8BEC5CBCFD2CD +98424F6C797E8182807E797A797C81828284817A736B645C4B38291B216C9BA7B6C4CFD7 +E0E8ECECE9E3DEDEDEE0E4EAF1F5FEEDC3666182929A968F888685828182858786868074 +6450361810365D666861534C47484C504A3D2C2226354347403E453F3FC4FFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEDC7FA79E7D5D555E6C706F7B888D8F8E8B827C78777875716B696E747A8082 +817B7061534A433F41474D555D646A6F7374767674716F6D6D6E6F6F70706F6E6B66605C +5856565657585B5F61605F5E5C5C595859595A5E5E63696F78818B949CA2A9ACB0B4B3B0 +ADA69F9A94908E8C8E90939597948C857D77727071747A808A939BA0A5A7A6A6A3A09D9B +98969697999EA6ADB3B9C0C5C9CDD4D9DCDBB26A564B61717375757471716E6D6F6F6E6D +6A665F57504434251E16246FA0AEBDCBD5DFECF0F0F2EDE8EAE2E3EAEEF4F8F7C697745B +809998958C8075747575787D80817F7F796E5D4A3119255A7476756F61574F4B4742382C +24222B3C48443C3D463E3DCEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE57899856A5C596270787E8D97 +99999893867D77737471706C6A6F757B7F82807B6F61544D4A4849505860696F73767A79 +7877736E6A686A6B6B6A6A6A6967665F58514D4A48484A4A4D5255555455545554545656 +595E5F666D747E868F969EA4A9AAACADA9A39D9691908E8C8C8C8C909395948F867D7670 +6D6F73788189909AA2A6AAABABABABA9A8A8A8A9AAACB2B7BEC3C7CBD0D3D9DEDEE2E5E3 +E0DA8E5146505E67666868645D58595B5B5B5B554C453F302017131F3978A0B0C1CFD9E3 +EDEFF0F3EAE8E5E6EBE1CBB39E8F66596088999792867E7269686B6F757C7C7D7B776E60 +52432D182E65757D7C7365594F483F342A22222936454B443C3D433E38DFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFF07E947D6A6A66717C87939FA5A3A39E95857A73707374716F6E71767B8085 +857E726458514D4C5058606871757676787573706A645E5C5C5D5F60636565645E574E47 +423E3C3B3E3F42474C4D4F505457595B5E5F63696F767D858D949BA1A4A9ACAAA9A69F97 +8F8884858585858585888B8C8A837A716C68676D737A848D97A1A8ACAFB1B1B3B5B4B3B5 +B6B8BABCC3C8CED3D6DADEE1E5E7E9EDF0F1F2EDD49C532F38444C4F4A47433D3A393A3A +3939373126160F142546688CA0ADBECAD4E0E9EEEDE0BFB3A88F82795F41436074869498 +928F8378706D6B6C6F72757775746E665A4D43382814316B788280726556483D3126201F +2937454D4E4640403E3C32EFFCFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF889958077817D828A98A6AFB0 +ADAAA19684776F6D747978777475797E858C8B8276695D545151575E666D75777472716D +69645E575251535456585B5D5D5B575047403C393737393B40454A4E5153575B6064686B +6F757C828991989EA3A8ACAEADA8A39B928B87827F8080807F7D7B7C7D7C787067615D5D +6068727C87909CA5ADB0B3B6B7BABBBBBCBFC1C4C7CAD1D5DBDFE2E6EAEDF1F1F2F4F7F8 +F9F9F7E596582F2335363835322B221F22252C2A2620191724375A768B97A1AEBFC8D1DF +E6E7CEA067514B3A3235445A6F878F90958A897D75716A6D717376787774726C61584D44 +3C3223113A737A7B796F62523F30231B1C23374751524E47413B363536F8FCFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFC979C8B8796918E95A5B3B6B5AFA69F9482766F6F7B848684807E81858B92 +908475695E555254585F666B6F6E68635B56514D4842404144474A4E535657564F49413C +393736373D41484D52575C5E64696E73777B80868A90959BA2A7AAAEAEACA8A29B928A84 +807C7B7A797976726F6D6B69645B545151545A64707C89929DA6ADB1B5B8BBBDBBBCBFC2 +C6C9CED3DADEE4E8EAEDF1F4F3FAFBF9FDFFFDFDFCFDDEAB532724272E2A28241D1A1F25 +27272C3B51626D737D899096A3B2C2CDDAE6ECEBBC7C46322D293C5874898C8D8F8A8B84 +7E707171767A7E7F81817D786E665950473E352A1F1040757D78746B5E4D3A2A1F1B2330 +455055534C453D31282A47FCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFA4A79893A19A939AABB7B7B3 +AA9B968D7E767277879392908B87898B8F95928372665B514E52545B6063656158514D48 +44413D3A3A3D4042464A4F5353524B46403B3938393A3F464E53585E62646C70767B7F83 +888E93969A9EA4A8AAAEACA7A09890867E7A76747272706F6C67635F5C5B564E49484D51 +58626E7B899198A1A8ACB0B4B7BAB8BABDC0C3C8CDD2DADEE4E9ECEFF3F6FCF9FEFFFDFF +FFFEFFFFFFD88458384C5D6374889396999A9E9B97959699958F8E949CA8B6BFCCDBE4EA +F0F2B8723D26252E54727C85888D8486807A767E778286888A8B8A867F7870695D554B40 +35281A164D77786C6A61544534261D1D29394950525049423A2A1B2159FFFFFDFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFDA7A699929E968A92A2B3B7AC9A8B88827A757A87949A9E99928D8D8F9396 +91836F5F53484141474D545857534C46403F3E3D3C3C3D3F4244474C5154524F48454240 +4042484D50576065696D7275787C808283868A8E92969A9EA1A4A5A5A3A29D948B847D78 +777673706D6965635E5D5A57544E49484D555F69737D88919A9FA6ABADAEAFB0B0B1B4B9 +BDC1C5C9CFD4DADDE0E4E9ECF2F4F5F5F9FAFAFDF8F8F9D8A280767E95B2C2C7CDCFD1D3 +CDC7BFB4A9A3A09C999EA5AFBBC6D1DBE6EEF4F08733232738546A757B7E807F807E7D80 +858B90949492918F8A847C7468615D53454038271818576F6F67605746382A1E1B212E3D +4A4D48484740321D162772FCFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFB19A8B7F867F7A8295A9AD9F +8B7C7A7875757C8A979E9F999491929496998D7F6B5A4D403A3A3F474F5353504B464443 +41414040424548494B4F5254514E4745434344484F545B626A6F72767A7C7C7F81838385 +888B8E9296999C9FA1A19F9E99938D88848181807E7A7773706E66645F5C5B5856585E67 +727C858C949BA1A5A9ACADADACADACACAEB1B4B8BCC0C5C9CED1D3D6DADCE0E2E3E4E7E8 +E8EAEAE8DED4CCAD98B0C5D1D0CDD0D3D5D5CEC7BDB3A79F9A9594989EA7B3BDC7CFD9DF +E3DA7A2D24374D606C7176797C7C8184888D92959695928F8B857E7870675C57554E4440 +39291F3666746C5C5E483D2F231C1D232E3B454644423F3728171E2D8DFFFEFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFDFFBA8779696E6D676F859DA4988678747574747A8591979A96929192939495 +8B7D6855473B353640495357585653504F4C4B4A4A4B4D50505152535556524E4A49494A +4C52595F666C73777B7E808182838484848587898B8D909296999C9D9E9D9A979492908E +8D8B8985817D7A7975726E6C6D6E6F727A838C959CA1A6ABADAEB0B1B0AFAEADAEADADAF +B2B6BABEC1C5C9CACBCDCFD1CFCFCECDCECDCCCDCBC7C2C3C9BFB3C0C0C4C2C2C8CCCDC9 +C1B8ADA499908B87898E939CA7B0B7BEC6CAD2CC975E2F273E55656E73787F848B90969A +9B99948F88857F78716B62584D4B4B4B4A49413224447573716A5847372A222123282F3A +4041413C362D1F152638A7FFFDFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC77D705C60635961768E9996 +8B7F777878767A859197989591919291908F8A7C6653453B383A444F5A5F605F5D5B5552 +504F4F4F5154545455565756524E4C4B4B4D50555D636C71777B7F818282878686858484 +8587888A8C8E919598999B9B9998969492908F8D8A86827F7D7D7A7875767A7D80848C94 +9BA0A6AAAEB2B5B6B6B6B5B3B1B0B0AFAFB1B4B9BEC1C5C8CACBCBCBCACAC7C5C1BEBBB8 +B6B6B5B0B2AFACB3B4B0B1B4B5B8B8B6B3ADA9A299928A83808183899097A0A7AEB4BCC3 +C9D2D69838242E4A62717A808A92989C9D9A96918A837D7A756E6862584D4645474D5658 +504429276C8078715845392F2B2B2D2F323A3F3F40372D251B1B3044BCFDFFFEFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEDC806D595C5C555B6C818E9490847C7D7B7A7D88939A9A9692908E8B8987 +86796553484140434C5864696A6A68645A565352515153565C5D5E5F605E595552515153 +575C62686F74797D808384838686858484848585898A8C8D9093959593918F8D8B898887 +8785827E7C7B7B7B7B7A797B81868B9099A0A5A8ADB2B5B9BABAB9B8B6B4B3B2B3B3B5B8 +BDC3C8CBCFD1D1D1CFCDC9C6C2BEB8B4AFAAA8A7A7A19D9B9DA09D9C9999989A98969897 +928F8C89858080848990979DA2A8AFB5BEC3CFD3D5CC9B4F36506778868F979C9D9C9891 +8B87817A76726D67625C5349464649505A5F5C564C2D406A7E6B56453A3435363533353D +41414033261E1C243C47D5FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFF0866D5B61605C5F6C7D8B97 +968A8181807E838D989E9E9A938E89848281817665564E49494D56616D7274736F695E59 +54535252555A5E5F616262605B56545353565A60666A71757A7E81848585868585858586 +87878C8D8F90919291908C8884807E7C7C7C7C7A787676777879777776787F868D949CA2 +A7ABB0B4B6B8BABBBAB8B5B3B3B4B6B9BDC2C8CFD5D7DCDCDAD7D4CFC9C5BDB7B1ACA6A1 +9F9E9C97929192918B8885837F7E7E7F8587898B8D8E8D8B8B8F989FA5A7ABAFB7BFC5CE +D6E0E8F2D455415E7889959B9F9F99968F87827E78726F6A64605D5B554F4B4A4B4E5257 +5B5B51462A417971514139383C3D3937383F47474031241E222F4047EDFFFBFFFCFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFA917762676C68666E7D8B97988D81817F7F8794A0A6A49E968D857F7E7F +7F786A5F595554565D66707475736B635A534D4C4D4E5359606164656665615D5B59595C +62676D7174787C7F838687878989898A8B8D8E8F929395959593908D86817B7774727273 +706E6D6D6E707070717272757C838B9299A0A5A9AEB2B3B4B5B6B5B2AFAFB1B3B7BBC1C7 +CED5DBDDE0DFDBD7D3CDC6C1BAB4AFACA7A3A1A0A19E9D9992908D827D7D78797C7F878B +969A9DA0A2A2A3A5ABB0B3B4B6BDC5CED3DCEAF0F8ECC2565C7B929CA09F9D99918B847E +7B77706B655F5B5A5A5B5A57524E4D4B494B4F4F4B4B3828475E4C3C3C3E43423D3A3B42 +49493D2F25212A364159FBFFFCFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9E8669677370696E7B8792 +938A7D7B787881909DA3A39D93887F79797B817B7168635F5C5D616A72757571675B544D +4746474A51585F616467696966625E5C5C5F656B7074787C808386898B8B8D8E8F919294 +959697999A9A9895908B807B75716E6B696965646363656665646567696D737A81889097 +9B9EA4A8AAABADADADAAA7A8ACB1B8BDC3C9D0D8DEE0E1DFDBD6D2CDC6C0BAB4B2B2AFAC +ACABA8A6A19F9B948D8882837E7F848B979FA4A8AAADB1B4B5B7B9BDBEBEC2C9D3DBE7F0 +FAF8F89D56607D939E9F9F9D978F89827B7877736C675F585658595B5B5A58514D494443 +44414040362036554C4042454A47403D3D434747382B24222E394475FFFEFFFEFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFDFFAE8864617370696B79879093897C7471727B8B969C9F998E827A75777D +868078726D67615D5F66696D685D544A44413C3B3F454F585F64686A6E6E6C6B67656567 +6B7074777C80848687898E92929497979898989899989896928F887F79736D6865615E5B +595A5C5F6061626265686B6D70767F858B8E9195999A9B9D9FA09E9EA1A4ABB2B8BFC8CE +D5DDE4E6E4E0DDD8D3CEC6BEBAB6B5B4B2B2B4B5B3B0ABA6A19D969090909093989FA8AD +AFB3B6BABEBFC0C4C6CAC5C8D1D8E2EBF2FBFEF5DE7D5B889CA0A29E98958E857E7A7775 +716C655D565453555859595957534C463F3834322C312F2022484C49484847453F3B3D41 +4642352D2A2C37414590FFFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB97B5F5D696F6A6D7E8D96 +978F7B726F70778590979A958C817975787E85827D77726B625C5E6262625B4F463D3C3B +393B4148515A62686C6F73757575716F6E6F72767A7D808387898A8D9194969899999999 +98969693908C857F77706C67615E5C5A58575B5D6164666768696E717577797D83888C8E +8F9092919192949596989CA2A9B1B9C1C9D0D7DEE3E5E4DFD9D2CBC6C1BBB3B0B0B3B2B1 +B1B0AEADAAA7A4A29F9C9DA0A4A9ADB1B5B7B9BCBEC2C6C7C9CED2D0D2D8D9E3F2F2FEFD +FBD5806A7899A09F9D978F89847E7C7773706D686059524E4C4F5357575854504B453B31 +29252224271A19434E484442403E3C3B3E4346443A3331323C454AABFFFDFFFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFDFFFFDB7759535C6A6C718397A2A29B867B75767C88929A9A958C827D7A7C81 +8887847E766D6259555755524A403A35383B3D434C545D64686D7174787A7B7D7C7C7A7A +7A7D80828486898B8E9194979C9D9D9C9B9995918A85807B746E686365625F5E5E5D5D5E +6163676A6C6E7173797C7F81828386898C8F8F8E8F8E8E90909395989FA5ADB4B9BFC6CC +D1D6D7D7D3CEC7C0B7B1ACA7A39D9DA2A3A3A3A4A5A6A6A6A7A9AAABAFB2B6BABCBEC0C1 +C5C6C7CACCCDD1D7DAE1E0E2E9EDF4FDFBFCD9954877959A9F9A948D847E7B7876716D6B +67615A524D49474A4E5152524E4C494237291E18181A2015174550463C373537393C4147 +49473F3A3839434A46D0FFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFF678584E5C6C757C8BA0AD +AEA99788807F85919AA2A39E948A858383848C8C8A83776C60544B4A48453F3937383C42 +4951595F666C6E7376787C7E818486878684838486878C8D8F92959A9D9FA0A09E9C9994 +8B857C75706E6966646363636567686868686C6E717274767A7D8081848483828385898B +8C8C8D8E909396999C9FA6ACB1B7BCC0C4C7C9C8C5C1BAB3ABA49D98948F8D88898E9190 +92979EA2A6AAAFB5BABEC0C2C5C6C7C8C9CACACACCD0D4D8DEE4EAEBEDF1F6FAFCFBFEE2 +8A666F8A9BA099928B847D797673706C6A68645F58514A46444648494A4C4A4A48423526 +1A15151A1C14214E4E40332E2E363D43494E4E4C453F3B3D484E4AF0FFFEFFFDFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFDFF8765566477848B95A7B6BAB6AB9A8F8C929DA6AEB1ADA3968E8A8888 +8C8D8D8577695B4D4442413F3A37393E48515B6166696C707175777A7E82858A8C8F908F +8F8F8F8F8F8F9094999DA1A2A2A19D99938B7F766E67646362626466696B6E7273727171 +76787A7C7C7E8083818081807E7C7D7F85888A8B8D90959A9DA0A3A7ADB1B5B8BCBDBEBD +BBB6AEA8A2998F888482817E7C7B7D838584878D969EA6AEB7C0C7CDCCCED0D1D0CECECF +D0D1D5DAE0E6EDF2F3FCFDF8F9FAF4F1B078768697A39E9C928C847D78757169635F5C5B +5855504A44403E3E3E3F43474A4C4C4538281B1616201D162F594A3A2D2A2F3D48505557 +545047403A3E4B5162FFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFF9F6F616F849097A0AFBE +C6C5BCACA19DA0AAB3B9BDBDB4A497908D8D8A8A8B84746555473E3C3E3E3C3C4049555F +686E717172757375777A7E81858A8F93969697989897969596999EA2A4A5A3A09A938B81 +756B625D5C5F6164696B7475787B7B797878797A7D7F7F7F7E7E7B797776747375787E82 +878B90959BA2A5A9ADB1B6B9BABBB8B7B4B0ABA49B958F87807C7B7A79767475777B7D7D +838D959FAAB3BFC8CED5D5D6D5D3D0CECECFD5D8DFE7EDF4F9FAFFFDFCFEE6A0645E6D7C +8A9FA49F9D938C867F77716E675E5B575352504E4B463C37323232363E454C4E4D473928 +1C171A28251E375C4A3B2F2F3949555D605E584F453E3A404E5181FFFEFFFFFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFEF9BB726D7D8D949BA7B6C4CED0C9BDB4ADAEB5BCC2CACAC2B2A49A9492 +8B8887806F5E4F423A393F4243464C575F676F73767675767677787B8083878C9196999A +9B9C9C9A9898989B9EA1A1A09F9990877E7469615A595C63686E7375797B7E81817E7B7A +78797A7B7A787573716E6B6968686B70747B82899198A0A7ADB2B5B9BDBEBCBBB6B2ADA7 +A199918C878380807F7E7D7A787A7C7E82878F9AA4AEB7BFC9CFD2D6DAD8D5D1CECFD3D6 +DAE0EAF2F8FEFFFBF7F2E5B26A495E8493A1A0A2A19A948D85807A746C665F595652504F +4C4A464137302B2A2C313A42494A484133251C191D2B2F2530534B3F393C485760666660 +574A3E393944504FABFDFFFFFEFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFE27F7A8793959BABB9C5 +CFD4D5CCC5BEBBC0C6CCD3D3C9BAAEA49B948E88847B6A594C413A3A42474A4D54616C71 +75787B7B787678797A7E85898D9395999C9D9D9E9D9B9C9B9C9EA0A09F9D979085797068 +5F5754555B636A7076777C7F838787837F7C7B79787775736F6C6964615F5F60656A737B +848D969DA4ABAFB4B7B9BCBBB7B5B2ACA59F98918A8685818081807F7F7F8185898E949A +A2ACB1BAC1C6CDCFCFD2D3D2D0CDCDD0D7DCE6EDF6FBFDFFFBF1C28A61637A8D939BA4A1 +A19A9A8E8A847F7A767169615D5A59565555524E4841372F29292C30373E454440382C21 +1C1B1E2A352824474A414448535F6569675F534437353946514CD7FFFFFFFCFFFFFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFFFFFB888891979698A9B7BFC2CACFD1CDCFCBC9D1D0D3D2CEC5B8AEA59B +93867D70605448413A3D454E5259636A71767B7D7D7D7D7C7D7F83888D9195979D9FA0A0 +9F9E9D9C9D9C9C9C9C9B98928B8174695F554E4D4B525A616A7074777C7F84888885827F +7E7A7774736F6A666563616062676F757F858E979DA3A9AEB2B5B7B7B6B4AFAAA6A09995 +908A84817F807E7C7B7B7D82868C959CA2A8B0B7BEC3C8CCCECFCFCFD0CFCBCACFD7DFE6 +EEF7FDFCFEF0CB9064637E909BA4AAA1A29B95928B86817C76726D6864605E5E5F605E5B +58534B42342D28282C343C4042433C2F28221E2223292C2B1D464B4B50565A6162615E55 +493D36383F474E4DFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFF9E93979A918F9FACB1 +B0B5BECED3D0D3D6D5D6D3DAD6CDC8C0B1A495847464564F47413E424C565D656F747A7D +80808080807F8285898F93979B9DA2A3A2A09E9D9C9B9A9A9B9A9795918B8074675D534A +464749515960686E72767B80858786848484807E7B7875706C696A69696A6E747C838C90 +979CA1A6AAACAEAEACAAA8A6A29F9B989492908B858281817E7B7B7C81868F969FA7ADB3 +BBC1C7C9CCCDCECFCECDCECECCCED5DEE7EFF9FBFEFFF2A2654D697B90979D9F9F9D9892 +8D88817C766F6A676361606061636363615E5A53483D2E29272A2F373E4147453B322D27 +2527242A2B241E464F555C5E5C5D5B595750463D3A3F444F5172FEFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFFFEB78E9499878194A1A5A4A7B5BDCCD6DBDDDADBDFDEDAD8CFC6BDAC +95806A574C4A4846484D58646D757D818384848280808181878B91969B9FA1A3A2A19E99 +95939190919293928E8B857E74685C544D47474A525A62697075787B7C7F828383838586 +8382807D7874706F717172767C848C92999DA1A3A6A9AAA9A6A29D999693929190909193 +938F8B888585828183878C9399A0A9B1B7BDC4C9CACACBCCCCCBC9C8C8CACBCED7E1EAF1 +F8FEFBE5B956354D657A818691938C8E86827D77716C645C58565557595D60636564615D +584E3F332927292E343C4346484236322F2A2A26222121161840525B615E585451515350 +4D45454749544DA5FEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFDD878D88736D84949C +9DA2B2C0CDD4D8DFE6EAE7E5E0E0DACFC3AD957C6452494A4C50585E68737C83888A8A89 +8683818284858C91979B9FA2A4A4A3A099928D8A898987888A8A87847E766B615955524F +5258626971777A7C7E7F808080828486878789898885817D7A797B7B7D828991989EA1A5 +A7A8A9AAA7A29C958D89878586898C8F9397989793908A8988898C90959CA3A9B1B7BDC2 +C7CACACACACBCAC7C5C3C4C7CAD0D9E2EAF1F5FEF6C188402D2F4E616A747D84817F7B76 +706A645D544D4A4B4D52565B5E5F61605D5953493B302A2A2E343A42494C4B4537343330 +2E24201A1D121D43585C5D58514E4E525756544D4D494E584EDAFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFDFFFFF97E716F5D5D788B94989FB1C9D0D8DDE1EEF0C9CBC7D9E6D9C4AC +967C65554E4F555F6970787F878D9191918F8B8887888A8C91959A9EA0A2A2A19E988E86 +807F808284858789898780776F6964636361656B737980848483838284848486898C8E8E +939291908E8C89888787898E959CA2A7A7AAABAAA9A69F98908982807F8084888F92979B +9D9C9996908E8B8C9093989FA8ADB4B8BDC2C5C7C4C4C4C4C2BFBDBDC0C3C7CCD5DCE3E8 +EBE6EDD7A5593D3528344C646E7A7F78716A635D564D44414044494F5558585855555350 +4A4339332F31363D42494E4F4A443833322F281B171718142D4A565659545150545A5E5D +5D57554954585BF8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFF9560595056758991 +959EB6C9D6E2E4ECE1A54942538CB2BDC3B299826D5F5A5A606B757C81848A9196989694 +91908F8F909194989C9D9E9F9D9B958E837B77797F8386878A8E8F8E88807D7977787777 +797E84888D8E8B89888587898B8C8D9094979A99989898979593919193979CA1A6AAABAC +ABA8A49E968F87837F8082858A8E96989B9D9E9D99968E8B888A90959BA2A8ACB1B4B8BC +BEBDBBB9B8B8B7B6B6B8BABDBEC2C7CBCDD0D2C9C6BEBCB0A89C6842394C65747A767068 +5F595349444544484E54575754524F4E4C48433E3936383A3F45494C4E4B453E352F2D29 +1F15141A12184355575C5A56585A5E6363625F5B564C5C5B86FFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFFFFFBFDC0544B4A57768D979BA5BFD4E6E8E6F2BF484D6561462F549DB1 +9D8B7A6E69696B71787E807F858E959A9A99989897959393949799989898969389827A76 +757980868C8E9295959590898786868788888B8D91939695918E8D8A8C8E91929294989C +9D9D9D9E9D9D9B9A99999B9EA0A3A5A8A9A8A5A09B948E8A868485898D9296999D9FA0A0 +9F9D98948A87868B9399A0A8ADB1B5B7B9BBBBB9B9B5B2B2B2B1B1B3B3B3B2B2B3B3B1B1 +AFAEAAA7ABB4BDC2C2865034526A73776E685E57534E4D51575A5D5E5D59534E4D4A4744 +413E3C3A3D3D3E404142403B332C2721201C100F12160C25535E61676463686A696A6664 +645F57535F5DBEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFFFFFFF057494D5C7D96A3 +AAB5C8DDEBF1F5E49C426E7B6B5C3A1D529CA093857975757272777C7B787D8892999E9D +9E9F9E9A9694929494939393908C86827D7D7F83898E92959A9C9A9996908F9091929496 +999B9E9E9F9E999796939494959697999C9EA0A1A2A2A19F9F9E9F9FA0A2A3A3A4A6A4A1 +9D98938E8B89898A8C92989DA0A2A3A4A3A2A09D9893908E8E959EA4AAB1B9BDC0C0C1C2 +C0BCBAB4AFAEAEACA9A8A6A5A3A1A19E9B999994949DA2AFB9C4CDBF8B3C4A646C6E6F6B +625B59595B60646565625C564D4745413E3C3C3C3A393C39373432312E28271E1C191A16 +0A101613113C656D747474747978726E6765625C52566161EEFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFDFFFFFFFE7F555962849BADB7BFD1E5F0F2ECC1692E636C634C2E1F4389 +9E9A90837D7C797272757675767E8C96999FA19F9C9B96908D8C8C8D8E8E8E908C8A8A8D +92969B9FA0A0A2A2A19D99969696989B9FA2A6A8A8A8A6A4A2A09D9B9A9894959A9D9FA2 +A3A3A3A2A09F9FA0A1A2A3A3A29F9E9E9D9896918E8C8B8E8E92989DA1A5A7A7A9A9A8A6 +A29E9B9A999B9DA4AEB4B7BCC2C5C8C8C7C5C1BDB7B3B0AEADAAA5A19D98938E8A898783 +818286909BA4B2C0CAD0AE7039425365696E6A646664686B6D69625B5349423F39363736 +34343333332C271F1A19161516160E17120C11150C12285F797F8588858086807D6D6B67 +645C565B6280FFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE5F626F839EB1 +BEC8DAE9F3F1A8573227485D553D1E266198A09D94877F7B777370717171737B89939A9D +9F9E9C99938D8686888B8E9092949796979B9FA2A5A8AAA9A9A8A7A39F9D9D9FA2A6A9AC +B0B4B5B4B1AEADABA9A6A39F9A999C9FA1A5A7A6A5A2A0A0A0A2A2A3A4A3A19E9B999691 +908D8C8C8C9092979EA4A8ABACACACABA9A7A4A2A2A2A4A8ACB2BABFC3C7CBCCCBC8C4BF +B8B3B0ADAAA8A7A39E9A948C857E7774726F71757C88949FACB8C3C3C7AC5E3A45556269 +716F706F6F6C69625A51473C36333432333330302F2E291D17100806090F110D0E15131A +19140C166480879597918C928C847D756C696B5D5B5868AEFDFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFFFEFEFFFFE3616C7887A1B7C6D4DFEDF0CE532B1F232B3E371F1E599099 +A09E978A7F79777675737070727A87929B9C9D9C9A958E8985878A9095999DA0A2A3A6AA +ADAFB0B1B4B3B0AEACAAA6A3A0A3A8ACAFB2B7BBBBBAB8B6B5B5B4B2AFABA4A0A0A0A2A5 +A5A4A3A19FA0A2A3A3A4A5A4A29E9995908B8B89898B8B90969CA3A8ADAFAFAEAEADACAB +AAAAACADB1B6BBBFC4C8CBCDCECBC7C2BCB5ADA7A2A19F9E9D999490877F77716B686969 +6F767F8B97A1AAB3B8C4BFC5BA79443E535D707376726A675F5244392E2929292C2D3031 +2F2C2A261D0A020100010A14181520272420100D144C7A8C95A4A69B96949486817A6F6F +6C615C5C64E5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFFFDFE736D758B9FB7 +CBDCE6EEEB8F2E2E3B2E21271F153F859AA0A4A29C90847D7E81817C7775747A86929C9D +9D9C97918C89888B90979EA3A8ABADAEB0B3B6B7B9B9BAB9B6B3B1AFABA8A6A8ACB1B5B9 +BDC1C1C0BEBDBEBFBFBEB9B5AEA9A5A1A1A2A0A09F9E9EA0A2A4A4A5A6A6A4A099948D89 +8887888A8A8E979CA2A7ABADAEADADAFB0B1B1B2B4B6BABEC3C7CACDCDCCC9C3BAB0A69C +95919091929393918C888179716D69686B707A828A929BA2A8ACB0B0B0B7BBA07B4F3C4E +6A71777669625441312721242A2F3336383834312D2618040001050D182224292C272821 +0F154273889BAEB39F9C989794928C827D786E645A6771FEFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFFFEFFFEFFFDFFAA626C8093ADC8DBE6EDC6673347728C624B3F496C929CAE +AFAFAA9F928B8D919089817B7678838E98999A99948F8D8E909399A1A8ADB2B5B7B7B7B9 +BCBFC1C1C0BFBCBAB8B6B3B0AEAEB0B6BDC2C5C7C8C7C6C6C7C8C7C5C0BBB4ADA5A09E9D +9E9E9D9C9C9FA2A5A6A8AAAAA8A39B948B8686858688898D94989DA1A5A8ABABADAFB1B3 +B5B7B8B9BBBFC4C6C8C7C2BCB3A99A8C807876777E82868A8C8D8B88847E787674747A81 +8890979BA1A6A8AAA8AFB3AFB6BBBB99443E576A727266574B392D27262B3139444B4D4E +49443E331F131013161C2124252625231E101B4273879DAAAD6F3A376B938E919685827A +725F5B63AAFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFCFEFEFFE45E5F6B8599 +B6CBDCE09E58416280BEC1BAA49B99A3B2BCBFC0BCB1A49D9C9F9D958B8078777E858D90 +9494929193969C9FA5ACB1B6BABEBFBEBEBEC1C5C8C9C9C8C6C3C2C1BFBCB7B5B6BDC5CB +CDCDCECDCCCCCDCECCCAC5BEB4AAA09998979A999796989DA3A8ACAEB0AFADA79E968C86 +8582828384888E92989CA0A4A7A8ACADAEB0B2B4B5B5B8BABDBCB8B3A89C8D8171645C5B +626971787F858A8E8D8B87837E7B7B7C838C959CA2A6AAAEAEAFB0ACB1B5BAC0C7B58344 +3F606E685F5245362D2625282E3A4A565F645F564B3A271F1E2123221C1818171C19161E +457583989DAA85301518317D958E585F687C715F6359E6FFFDFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFDFEFFFEFE7F565D75839BB3C5CCB37E6948405593BEC0B9BBC0C8D3 +D0D1CCC0B3ACABABA9A193867D7A7C7E838A9196999DA2A6ABADB1B5B9BCC0C4C6C5C5C5 +C9CECFCFD1D0CECAC9CAC9C7C4C2C3C9D0D4D5D4D4D3D0CECDCCC9C6BEB6ADA399949393 +95949494979DA4A9ADB0B2B1AEA99F968D8784807E7F81868C92989EA1A5A7A7AAA9AAAB +ADADACABAEAFAEA8A0988B7D7063554E4D525C656F767F858B8F8F8D8D8A84807F818892 +9AA1A7AAADAEADADAFADAEB0B4B6BEC7B1653A4453514E493D332C2421242C415A6A7479 +74685944352A23201C15121A1B32422F406E8488929CA6A85F1D121F60897434362A2F58 +6761637BFEFFFDFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFEFFAF53596873 +86A2B3BEBDAC7B2D373A39548FC3D2DEE1DADEDDD6C8BBB6B5B5B1A89A8C837F7D7B828A +949DA5ADB3B6BBBCBDC0C1C4C7CBCBCBCBCDD1D5D6D5D4D4D0CCCBCDCECDCDCBCBD0D5D7 +D7D6D7D4CEC9C5C1BCB7B1AAA39C9592939395959697999EA3A7A9ACAEAEABA69C938C86 +827E7C7E828890979FA4A7A9A9A9A6A6A7A8A9A8A5A29E9D9A928882786B60544A494E56 +6069717981878B8F8F8D8785807D7E818A959CA3A8ABACABA8A7A2A3A3A6ADB4B3B8B894 +542A323D3F3A36312F28272A36506D7A7F7F76695C46342A211A13132A4D7B909161688E +9190979DA39A7130305C80904440483B222E545653B4FEFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEF64A5968768294A4A9B2B8A0425572654A3E5695CBC3A2 +A6C9D9C9BABAB7BFBFB5A89D938882858A96A1ACB3BAC6C4C9C9C9C8C7C8CBCDCDCCCED1 +D4D8D8D6D5D1C9C4C3C6C8C8C8CACBCCCED0D0CFCEC6BEB6B0AEAAAAA6A39E989495989A +9C9C9D9D9C9DA1A5A7AAABABA9A49B928C8884828183888E949CA5ABAEAEADABAAA8A7A4 +A09E9A9592908B827973695D524E4C5058626B72787D8387898986827F797373777F8A92 +989CA1A2A3A2A09E989797989D9FA3A8ADA68961442F2124232F353F484D5F737D84817C +6D5E453726181410213F597AA4AE88584F7595979FA09D988977717E93793954503F3026 +515046F5FCFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8C506B79 +838B939B9AACB761607A7B736854494C4A453F47679FB9B5BBBDC6C0B6ACA49C949096A2 +AEB7C3CBCFD7DAD8D5D1CECDCECFCECED1D5D8DADAD6D1C9BFB9B7B7B8B9BEBEBEBEBFC0 +C0BFB8AEA49C999B9B9F9E9F9F9E9EA1A3A5A7A6A4A29F9E9FA1A4A6A6A5A4A19B948E8C +8B8B8B8C90959DA4ACB1B3B2B0ADABA7A39E9996928E8A847E7870696159545150545C65 +6D737B7E8182807D79756F6B68696F7781889192949595948F8A8889898C8F9194989A99 +9993938C60332125475C6A73787D857C736C55452F1B1912224777928D90A9884B292C48 +6E93999E948A84757D8B8C46515852443226483C89FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFDFFD2466C7B8188909095A0B9AB5479807A7A78777C807F +6F512E52A4B6B9C6CED1D0C7BDB6ADA3A7B2C0C2CEDCE0E8E9E6E0DBD6D2D0CECED0D6DB +DDDEDBD5CDC2B7B0ADA9A9ACAFAFAEACABABA9A8A198928E91969A9EA2A6ABAFB3B7B9B9 +B6B3AEA9A4A09F9FA1A1A09F9F9F9B979393949697979A9EA5ABB2B5B5B4AFABA8A49F99 +94928F8B847B74716B635D58545354585F676D7176777774706B6764626161646A727A7F +7F7F8081817F7B77797C7E8286888A8E9096909FACB6B17C3F2E6174797E7E7F7B705F4F +381F111429496D83949B9A9F9C733D221C1829568F898A7C76818B9E664660584A432B34 +3A38D4FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9636377 +7781848D8D9DAFCA5C607B797A7F848B91927F69443376B2CBD0DFE5E8E1D7D2CBC0BEC0 +CDD3D9E7F0F2F3EFE9E1DAD3CDC8CACED6DDE0DED8D1C8BEB3ACA7A4A6A9ADADACAAA7A5 +A2A099949292989FA2A6ADB2B8BDC1C5C6C6C1BBB4AEA8A3A1A09F9F9F9FA0A09E9B9899 +9B9E9E9D9FA2A6ACB1B3B3B0AAA4A19D9995918E8B867D736C6A655E5854515153575D62 +6668696967635F5C5B5A5A5C5E62676E7376757678787776757472777A7E828385898B90 +9AA5ACBBC8B5683D65767C7D7C786E624C34201325465C758489919695949A885A281518 +1625737F778087959F943B595A52493B213A3467FDFEFEFFFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFAF537172767E8991A0B4C69E5B777D7E87939B9E97 +8878683E3561B3E6EFF2F6F5EEE9E1D7D1CFD2DDE2E7F5FCFAF7EEE3D8CFC7C1C2C8D2DC +DFDCD4CBC1BAAFA6A1A2A9AFB7B8B9B8B6B3AFABA8A19E9DA1A7ABAFB5B9BFC3C7C9C8C7 +C1BBB4AEAAA6A4A3A1A2A3A4A5A4A19E9B9B9B9C9B999A9DA3A8ACADABA7A09A9593908D +87827B746B635B5854514D494A4B4D50535658585856545250505355595D61656B717576 +75767676757577787C80838587898B8F9497A3ADB8C3D0CC643F5F6F7574746C624C3922 +17244D67727E848D94918F929495845324151A34737B7D8B9DA3A44D515952443E262136 +40B8FFFEFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF4575E +685F6E7995A2B7CED75C6B828A91989A9B93897B6D6555415A70848B979FA5ACB4B9C9DA +DADEEBEFF3F5FAF7EEE0D3C9C1BCBDC2CED9DEDCD3C8BDB7ADA5A2A6B0B9C0C3C6C7C6C3 +BDB8B6AFABA8AAAFB2B6BABEC4C8C9C9C6C4BCB7B2AEACAAA9A8A8A8A7A7A6A29E9A9794 +9393929193969DA1A4A3A19D97918D8B88837C736960585049454343423F414242434445 +45444342414142464C51575C62666B7173727473727477797C7E82878A8C8F92979CA6B1 +B6C0CACDD8C252435E6A6D6D71675B472E1C324C676F7F878E9598938E8E929296814D2B +345F768193A2A99F4E40514A493F2C1A2C3867F3FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFF9753635B596F86A1B4CFE1726E8C91949B9A988F +81786A6A6768726C6B685F503F312B2D5592C0D4E3E9EBF4F4F3ECDDCEC3BCB8B8BCC7D3 +DAD9D1C7BBB4ADAAAAAFB9C2C8CBCFD1D0CBC4BFB9B3B0AEB0B5B8BDC0C4C7C9C9C7C3BF +BBB7B4B3B3B1B0B0B0ADA9A39E97918E8C8988898B8C9094999C9E9D9C9A96928E8A857D +73685C5149423D3B3A3A393736373635343332302F2F31353A414A515B61676A6D71706E +6E6D6E72777C8184878D9193989FA7AEB6BCCCCFD5DFDEB643384C5D666B6A5F52401F17 +4E65707B828C96989799979599979792817770778497A2A8933D2C3C3C40342A151B324C +ADFFFDFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE754 +61615A64748AA3BCCEA7648E999898908D8882706463646B707B7F7D756B5C452C1F1A27 +4573B0DAE4EBF3F3EEDFCEC1B8B4B2B6C0CCD4D4CDC3B8B1ADB0B3B6BEC7D0D4D7D9D6D1 +C9C3BCB7B4B1B4BABFC6CACBCCCBC9C7C3BFBDBAB8B9B9B9B7B6B6B0A89E958C85818280 +8084888D9297989B9D9D9D9D9C9A938D857A6D6053483F393637363432302F2F2E2B2827 +252225262A3139424D545C626869696B68646666696D71767D83878D92959AA2ABB3BEC4 +CAD9DEE1E49B372D445C6467625D4830181F58656E7E878A979E9D9A969796948E877C79 +7B8497A8A36D2F272A2A2B2B241A1B333961ECFEFFFEFFFFFDFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFF8D646B6463717A8EA5B9C45786918F908A8481 +7A72675F5C5F666E7877736A5C513F211A1A21234D90A7D2EEEEF1E0CBC1B3ADADB2B8C4 +CCD3CAC3BBB2AFAEB1B6BCC6CDD6D8D9D9D4CDC2B9B4B4B6B7BBC2C7CECFD1CFCECCC7CB +C5C2C2C3C1BDBCBBB2A99D93897E7672747B7E828C949AA0A6A7A8A8A8A7A5A29F95897E +71635448413E3B393939383635322F2C28242221272C333A424A52575D606365635F5C5C +5C5F62666B71797D84878D949CA4ADB5BDCACED6D8DACC9E512C384B5358483E27191A33 +4C5A646E7A848C8F8E8C8B8C8A87827B767B8A99A4A0593638291A12191114203B2F4D91 +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9FDFFDE +5C6F6B6B74788292A3B482688686887F81787A746B625B585A5E6162605C56503E211A1C +1D22293E43545F6B737194B7AFAEAEAEB2C2CACECBC8BEB5AEABADB4BBC5CED7D9DADAD4 +CCC2BEB9B8BABDC3CBD0D5DBD9DFDEDADCD2D1CDCBCAC5BEB8B3A899887C756F69666F79 +8189959EA6ADAFB0B1B2B2B1AFACA89F93857566584D484643424241403E3C3936332F2C +2A2A2E32383E444B5256595A5A5955504E4E5154585D636970747C81889098A0ABB3BAC1 +C5CAC6C4C4B0733C2727282C231E142332393D47545C6C757D8182807D7D7B7A7B7F8793 +A0A9AA4B3039311C23231721373D333E4CDAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFCFF926975737981868E99A8AD746276767C7779 +77746E665D55504F4C4E4C4C50554F3F2A27222521252A3A4645504B365391A9ABB0B3C0 +CAD4D6D1C8C0B9B4B5BDC5CCD4DBDDDCDCD9D3CDC8C3C1C3C7CFD8DEE2EEEAECEFEBEBE3 +D9D4CFCBC4BAAEA39888776D6A686869717C88929DA5ACB3B3B5B6B6B6B6B4B2ADA69C8E +7E6F625954514D4A484643413E3C3836322F2E2E32353A3F43484D505351504D4A474749 +4D50565C62686E727B80878E939AA2AAB0B1B2B2AAA19B917D6351443B3A342F2A2C3034 +3B465057636B72777A7A797A7D81889099A3AAAD82232A241133683C32444439344181FF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFFFEFD +E46774787B868D949FA5AEA86D666E6F6E7272716F6960554A423E3E3C3E47525A5B5B4F +3D3133404B6A76848074533249739FACAEB6C5D1D8D5D2CFCAC4C3C8CED2DADFE0DFE0E1 +E0DFDBD7D4D5DAE1E9EEF9F5FBF9FAFCF4E7DCD3CAC2B8AB9B8D827A726D6A6A71787D87 +919BA3A8ABAFAFB0B1B1B1B1B0AFAAA59E9485776A615A56504B47433F3D3B383633312E +2D2E32353A3F43474A4C4C4B49474646484A4F53585E656B71747D8085898B8D90949695 +9289817A6F665A59524D4B4840363932333D464A525D626971777C7E7F82858C97A0A9AF +AEAA5C181B173F6D744D454038283444DAFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFFFFFFFF99687C80808E9AA7ADB6AEAC536365666C +6F6F6E6B645643342A2A2C3543515E6A71716C656972788B9595968571502F3C8EA1A8B2 +C7D3D9DADBDBD8D2CDCBCDCFD6DADCDCE0E4E6E9EBE9E7E7EAEEF4F9FCFEFFFCFFFCF1EA +DACDBDB0A395877B7778787775777F898F959BA3A9ABABACAAAAA9A9A9A9A8A7A49F9A92 +86786A5F57534C4743403C3A3735333231303031373B41474C4F5152535251504F4F5153 +585B61666C7276797C7C7D7D7B78767571726E635D5A53514B4B45494C44404042474D53 +55585F666E757E8387888A8E9398A0A8AFAEA2967452304475796E533F2D29294085FFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFDFFFF +FCE366748581929EABB6B5B9B3A2656168646A6C6D6B64553E2A221F243243525D697077 +787B787E8F9097989A89735B3A2D5C86AAB4C1D0DFE8E8E8E2DBD2CBCAC9CBCFD5D8DEE4 +E7ECF1F2F2F1F3F5F8FCFFFFFDFCFEF2EFDCCEBEAB9C90867F7A7E83888B8C8F969CA1A2 +A4A8ABAAA9A7A5A5A3A2A1A19F9D9A948E877C71645A54504B4743403C39373533333333 +3436383D444B505456585A595858585758595E6065696E7275777A77736E69625B585554 +524F4E4B4749484F5052524F555C616366676A6F747780878F9394939396979DA4A6A49D +9085807D747371715F40342C273C55DCFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFF99627F828E99A8B5B6AFB1C0865B6667 +646665615B4C352115121C2D4356626C7176797B7A8192939F9F9B98836C5A3C28589DBD +CBD8E5EDF1EEE4DBCFC2BCB7B9BDC6CDD5DDE0E6ECF0F2F2F3F3F6FAFEFCF9DCB3A9C9C8 +BDAEA0958C8787898F969DA2A6AAACADAEACAAABAAA7A5A4A3A2A09E9C9A96928C857E75 +6C645D5754514E4B49443F3C3A383534333436383D434B53585D60636261616161606162 +65676B6F72747576746F68615A534E4C4D4C4A4C50525457575D5F5F646D757678797C7E +7D7C80858A8E929495939295989D9F9B928A8683838273746F6150392D2E405589FDFFFD +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFDFFFFFE +FFFDE65C76828390A5B3B3A5AAB1B8846A6B60605C554C3F29170D0D1A2C4259666D7470 +746F778389989CA1A0978A7A685940305893C4DFECF2F2EDDFD3C4B2A79EA1A5B0B8C2CC +D0D7DEE5E8E9E9EAECF1F4E7AE5B40436796B4A89E99938F9298A2AAB3B7BABDBCB8B4B1 +AFADAAA7A5A4A3A29F9D9B97918C837B72685F5A5754525150504E4A4440403C38353434 +36393E444C545A5F6366656464646363636566686C6F717272726B665F58524E4D4E4E55 +575A5D6066656A696B7074797E80858A8C89858587898D8E8E8F919091949595928D8887 +8A8D8F7E796A60564233323B5C5AE2FFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE99617F788393ABA89593A1BDC6696C +625650443E2C221512151E30475D6B7174706C6B6E768490989C9A948A7D7267655C474D +6F91A3B5D0DAD7C2AD998581848D99A6B3BCC6CFD5DFE5E4E3E4E6E9E7C2824C36383D6B +A6A79F9898969DA8B5B8BEC2C2C2BEB8B0A9A4A3A1A09E9B9B9A979493908982786D625A +555251525052545656544F4B49443E3B3939393A41474F555B6064656767656364646567 +676A6D707172706E68625C57535255595E6266696C6F6F6E6D6D6E73767980868A919490 +8B88868787898C8F90929392918E8A888C91959A8F7B69605A4D3F3C45595C94FDFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFEEE6472787889949C8D8591AAC69756685E4E43372E1F1F1F26303C4E626F74736E +6A6869707C878C92928D83766F6865635C5A534C454A517294AB947F7272788392A1AEB8 +C2CCD9E3E9EAE9E9EAECEEC28955333D5983A6A09F9D9D9DA3AFBBBDC0C2C0BDB4A9A299 +928F8C888684858583807E7A726B5C554F4D4D4E5155595D6162615F5B57524E48433F3D +3E4043474E545B6165666667666566666668696B6F7172716E6A65605B5857595E64696C +6F706F6E6C6A6867686C6F747B828990938E8985828183868C929493908C87858689929F +A0977E655B5552514748546261EAFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFB06F7B797A88938B848EA0B8B665 +6C6257493A312E2D38424A4F58677174716C66636369747D838888847A6D66605C57555C +5E5F58523727438B7F72726E778699AAB6BFCAD4DEE6ECEFF1F2F1F2EFD496544671A0BA +B2ABA8A4A4AFB5BABBBCBDBCB7B1A597897F7876726F6E6F7272716E6A655D56504D4B4D +50545A5F6B7073726E6A655F58554F484340404344474C5259606567676969696A69696B +6F7174767776716D69645F5E60646B71727475726D6763615F5F6063676E777F888F918C +8783807F83889096969189847F81878C949F967F61524B555A514F57625FABFFFBFFFCFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFAFC7E7F7979878C89828294AAC5B377695F5B4B4441454D5559575A636B6D6E69 +625E5E636C747F817F7D75675B514A463F414956534A3A212964757370707D8FA4B4BFC7 +D1DAE1E7EAEBEDECEBECD8A66C494871A8BFC2BAB4B8B9BBBEC2BBBAB6AEA59D90827469 +62615F5E616468696965615B55505152555A61676F757B7F7F7A756F675F56534F4A4541 +414243454950596066686B6D6D6D6E6E6E6F7375787A7A7974706B666262656A6F747475 +736E66605D5D5C5D61666B727C838C91918C87828082868C929490867E7A7C828A929896 +8165544A5057595D605D6166F5FEFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFC272807F7F85908F8B94A6B6C4 +9F506A61595953575759595655596063625D575353575E646B6D6C6B635444362C291D1E +29352F271D1730566E6F757E8A9BAFBEC7CDD3DADFE1E1E0E2E2E2E4C594513736416B9A +BDCBC5C9C7C6C8C5BCB6ACA0989085776A60595857575C6265676764605C5956595C6168 +6F777F858686827A736C61574F4D4B494744424244464C545D656A6D7273737273737375 +787B7D7E7D7A746F696664656A6E72757473706A64616264676A6F757B81888E9394938F +89817F82868B8B87807671737B848C9191826652494B5A5B5D5F586356BBFFFDFDFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFCFF997787888C969BA09AA6B1BDC56A6A62615B5B595855514C4A4B4F535552 +4E4B4B4D5256595E5F5D554534251D13050F1F221717182354737E7C888C9AA8B7C2C9CB +CDD0D2D2D0CFD1D3D6D9DFCC73362D2C2A3E6895B1C8CCCAC8C5BDB2A49B959085796961 +5C5C5C5E656B6E70706E6B676564676A6F74797F848889867E746B63584F494848494947 +4545484C535C646B7174777877767878787A7C7F81807D78716C6867686B717577787472 +6E6A68686D72777A7F84898D91949897948F877D7A7D81837F7870696A727E8B90897A62 +504D5257555B5F5E636376FAFFFFFEFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFCE4717E909397A3B2ADACB3BC +C8C27C6066585956534F49423E3E4143474746454546494B51595C5A524537281C130D1B +1F140C17456F878890969EA7AFB8C0C6CAC9C5C3BEBEBAB7B7B9BDC2CAD3B3813C262126 +262937689BC0BFBCB6AB9F97918A80766A656465676C757A7E7F807E7873706F6D707378 +7C808385837E756B635B534D4A4B4C4E4E4C4B4C50545B63696D727678787777797A7A7B +7B7C7D7B77736F6B6B6C6E72777979787572706F7073797E8385888C8E91949597969086 +7E78777A7C7C766F6B686E79838B88776254535A5C5B5C5F5D636650E0FEFFFFFDFFFFFD +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFBFFFFFFAE6F91989BA8B2BAB4AEB8BED0BC49605D5E54524F49423E3E4042484A +4C4D4D4E4F51555E61615D5548392B211D2824161222749BA1A5A7AAABB2B7BCC0C2C2BE +B7B2ADADA9A6A7A9AEB4BFCEDAC7612F2833362F24224A97AFB0A59E9791898078726B68 +696C6F757D82888A8A867F7872706C6D70737578797A77736C645E5954524F5154555351 +5254555960666A6C707476767575797A797A7B7C7A77747372727576787B7E7E7C7A7775 +7374777B81868A8B8C8E9092949593938A7C7575787B7B7B746E6D6D7481888374605456 +5D5F5D59655A65635A9EFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFDFFF9767E979CA4BAC3C1AEAE +B9C8D08B46595B5D575351504B4E4B4F5356595A595A5B5B5D62676C6D695F5143352E31 +342C20206FACB6B4B4AFB1B2B2B2B6B7B3ACA4A4A1A3A4A6A9ACB3BCC7CFDFDABA792A32 +33281F1A3F819D97938D857C75706C6B6665656970798084898B887F77736F6C696A6B6E +6F6F7072716D69656564615D5D5E5F5E5B58585A5B5F63686D6E6E717375787A7A7B7A78 +787674737374777A7B7D80807F7D7974717274787E85898C8F8D8C8D8D8D8E908E867E79 +76797E817D7B777474777D8283736055586266605E586263695A64F9FFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFDFFFEFFFEFFD26A939AAAB4C9CDBAAFB9C1CBC970425E666A645F5E5D615D5D6163 +6564626161605E63676D706E66594D3E34373F3B2B244292B9BBB8ACA7A39E9999989694 +92969DA1A6ACB4BDC8D2DAE1E6EDEEB94B26231B29415C778182807A726E69645F5D5E5E +60666F777D8082837F7772706E6B68686A6D707172737473717070706C68676664625E5B +5B5D62666A6E7171717376797C7D7D7C7A787774727476787A7C7E80817F7974706E6F71 +757B82878889878684838384858788827E7D7C808382817C767273767877685B52565D60 +5B5350566268624CD3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFEFFA17499A4BBCCD3C5BA +B6C4CCD2C85C4A6F817F7A736A686364696D6E6B676361605D6063696C6B655950403230 +3A3E332B1D386790ABA69B9088807E7F82878C959FA7AFB7C2CEDAE3E8F4F4F3F3D78E6C +60545B6970737377736E6B6A67615C5B5D5E6169727A7E7F7E7E7A747171706E6F6E7073 +777879797B7D7E7D7D7D7873706C6763605F6062666B70747777777A7C7F8182807E7B78 +76737275797C7C7C7D7D7B766E686566696D737A808281807D7D7D7D7F82858685807E7E +7C80827C776E66636466635A4F484A55584F4540475D6A61539EFFFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFF9777793B8C9CECABDB8BFCBCED3B33768878C897F6F665F606468 +6B6966615B5956595B5F63635F55493C2C242C36322E2A1C1F428A948183756E6E747C85 +8D98A5AFB8C1CCD7E1E8EEF4F7F6EDE5CEBDA894867B75797B7E7D7A7978726A65666667 +6A727B81838284837F7B7B7D7D7B7E7E80828383838386898A8987857F79746E68656465 +686B6E73787C7E7D7D8081838483807D7976747171747778777674716D6964606163676B +72777B7C7B7A7A7D7E80848A8C8B87807D797578776F6357515252504A3F373A42484136 +353B4D635E5B72FAFCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFEFEFCFFFAFFDD5479A6C5C3718A +BCC0C4C9D4CC6A588A918C8374695C565A5F615F5B5146414245484E5254534A3F301D13 +1C2826212220161C698F83796F696B737E878F98A0A9B3BCC7D2DCE3EAEBEEF2ECE5D5C1 +B5A397929195989B9893908D857B757477777A81888D8E8D908E8A87888B8D8D8E8F9191 +908D8D8D9193928F8C89837E78736E6C6E7174777B7F8283827F7C7E7F80807D7A76726F +6E6C6C6D6D6C6B6A68676664626063676C7075797A7C7E80818487898C8F8D897F77726F +6D6D66594F45434846413A32363C403B312D3541555E5950D5FFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFDFEFFFFFFFFFDFEAC4C87B8BD312265837965748E6346848F8A807064574F535A +5B585143352E2E32353B3F413F36281A0D0B171E160E131E2A315D8387766C67686F7A85 +8C949BA2AAB2BBC6D0D9DDE6E7E9EAE4D9CDC4BBB4B0AFB1B1AFACA59F9B978E86838486 +898E93989A9C9E9C979494989A9B9A9B9C9B99969596969695928F8B87837E7A78787A7C +7F81858685837F7A7779797A7976726F6C69686767666564646566696C6B68676B6F7477 +7B7E8083878A8B8C8E8F91908A82746E6A6B6C685949413C3F45423C38373E413F39383E +4951595345A2FFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFBFDFFFFFF766797BA5D2A +222D293B49413A3B738381756459525059605F554734221B2226292C2D2B281E15101013 +17150F10324F65798B877E7C726C6B6E78858D949CA2A9B0B9C1CBD4DAE3E5E5E9E7E1D9 +D0CDC7C1C1C6C7C2BAB3ACA8A6A0999493969A9EA1A5AAADB2B0ADA9A7A7A7A7A5A4A2A2 +A09E9D9E9D9B9997948F8B8885848384858687888887837F7B7775777879787672706D6B +6A68666666686B6E72757876737275797B7E8185898C8E8F8F8E8D8D8E8A8279706F6D6D +6B604E413D404447454243454A484342484E5357594577FFFFFDFFFDFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFEFFFFFFFDFFFFFEFFFDEE5E7B9E993B392025486C6B5A596F817E715F5754555F68 +685F503C2C282A2E3132302B261B1817160E05041229405460788485827A746E6B6B7380 +898F979DA6B0B9C1C9D3DDDFE6EBEAE8E5DDD3D0CED1D4D5D4D0CBC5BFBAB6B1ABA7A7AB +AFB2B4B8BDC2C4C4C2BEBAB5B2B0AEAAA7A6A6A5A4A3A6A29F9E9B958F8D8B8B8C8E8E8E +8E8E8C89847E7A7776797A7C7B79777572706E6B69696D71767A7F807F7C7A7B7D7E8182 +868B909392918F8C8887878279706C6F6D68604F3E373B42484745464A4E4F4B484E5759 +5B5F4C5BEEFEFEFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFBCD63899284 +3F45354369777973737B7971685F5C595D6667605C4B3E382D2C2E2E2A282317170F0504 +0A0E1928394853616F72706A67615F60666F78868E9BA7B2BFC8D0D9E2E8EAEBE9E7E5DA +AA98B0CBD3D5DEDADBD5D1C8C4C3BDB8BBBDC2C3C8D2D7D8DCDFDED6C9C2BCB3AFAAA8A5 +A6A7ACACAEADABA59F99948E8E8E919697949294928D8682807B7A7C7E81817D7B7C7A74 +736E6B6E7376787A7F7F7D7B7A7A7D7F81888F929395928D867F7E7E79746E6764625D54 +4637303438414645474B4E4F4E4D565B5B60605849D1FEFEFEFFFFFDFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFEFFFFFCA97985888B4E605863707E7673757779756F695E5656 +56504D443A2D2723211F1C1C1C18242928222020263040484D545A5B59534D4846454B54 +606F7F91A4B5C5D1DBE6EDF2F4F2EDE8E2D6C3A8A7B6C6CFD2C9AAABBDCDD1CCC9C6C5C9 +D1DBDFE0E7EEF4F0ECE5D9CBBEB7B2A6A4A9B0B1B6B9BAB5AFA9A19892918F91969C9F9E +9FA09B96908A848080818482807E7B79756F6E6A696C6F7274757676757474777C7F878C +91939491898179767778756E665D5651473E352D2C3136404647494B4C4D51575E5C6060 +5E4FACF6FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFB84827F +8CA4555F5B68737B716B6C747676716255463C30292321171A15131A283B526256585044 +3E3D3F43494846464543423C3A3736373E4A58677C91A8B9C8D6E2ECF4F8FAF7F0E7DDD0 +C3B6B3B1B7BDC3C6C29E8C96AFC1CECCD4D8D9E2ECF0F4F1E8E1DAD2C5B7B4BCB4B2B3B1 +B6BDC8CBC3BCB1A69F99918B8C91989EA2A5A6A7A29D978E827C7B797A747272706D6966 +605D5C5F6263656667686A6C70767D82898B8E8D8A837A7273767A797165584E49453D34 +2E2C2F3541474A494747494C5057595C5F614D83F7FFFDFFFFFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFEFFFCFFFFF87673769F975E66666776706660666D7170675241 +2C1811162E4148464C5D6C6C646162605D5B5B5854534B433D393635353130303136414E +5D6A7F93A7B5C3D2DFE8F1F3F3EEE5D9CCC0B2AFB0B0B5BABDC1C2C0BAA792838691A0B3 +BDC2BBABA19472605350494254748E9EB5BEC5CBD1D0CAC1B2A49A938E8D8F969DA2A5A8 +A8A8A29B948979706C66625E5E61605F5D5B5855545557585B5E6365696C7074797C7E80 +82807B757271787E7F766756494342413B332E30373F4B4C4B4947484C51595A595F5D4F +65F5FFFFFBFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFDA65 +6282B080636972686D675E5F66686761513713092A475C6C75787A776D5B5459575D6366 +67625B564C3F35302E303332373B3F4855616C758391A0A9B4C1CBD1D3D3D2CFCBC6BFB9 +B2ABACB3BABFBCBABDC4C9CCCCA455343643474A443E4E5B6E7F87817B726151403F5C8D +BBCDD4D5CBBFAFA69F9793979AA0A6A8AAAAA8A69E948A7D6E6560595455585A5B5C5C5A +5854525355585C61676B707374747575767878746F6E707378776E5D4D423D3C42403B36 +353C485152504E4C4C4E5358595E595A4F5BE1FFFEFDFFFFFEFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFEFFFFFFFBFFFFC84F5A8FB2676669727170696669665C51422F +13133E5E6A707575737168574A48525A5F5E5F625E57493A2E27272C3239424B545F6B74 +7D818B92999EA4AAADADABA9A8A6A9ACACAEADABB1B9B8B9B9BDC1C7CCD7E2B8462C3348 +5A6A73767C7E84868684827C71685748332C5085A5A3ADB8B9AFA7A3A2A5A5A9ACADADAB +A6A29A8F837669615C57565A6063646667635C5957585B5F666C7275787A787674737473 +716E6C6D6D6C695D4B3B323135383E3B393A404B555A5C57535253585D5F5A58555661CB +FDFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFAFFFF +AF466596926378777B7B7573726E5E472E1B1329536A7274797978746B5F555252555654 +53544F4740332923252B354253616C7881858C8E90929596979694908D8A8A8A90989CA2 +A7A7AAAFACABAAB2B8C5D3DEE7C95151708289838285858281838483817D756C5B4A3521 +1C22343E547B9FB1B7B6AFABABACADADACA8A19C958C8178716A656465696F727272706A +63605F62676D757B8080807D787573727373716F6E6C645C4F40312A2A323C3F4442454C +545C61615F5956575A5F605E55546560A9FFFFFDFFFDFFFFFFFFFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFDFFFFFDFFFFFFFEFF9A5475A07A6F7A7E7B7674757464472516 +2B5267666C72726F6E6E6D69615B57575857524C48453C332C282C333E5061717D878B8C +9193959493918D88827D7773716F7378787D8184858B8E9497A5AEBBCCD9E6D452557D87 +8C878685808283818486827A6D604D3A291E1D1E282D35394E7AA6B5B0ADA8A7A6A6A49F +97918E8983807D78747575777B7D7B78716A666464686E757D848684817C777575777A7C +7B7670675647392E292C323E494C4C4B51595F6365655E5A595B5D5D584E5866639AFFFF +FFFFFEFEFFFFFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFF885F84AC6B74807A746B6C696256331C4C646A6A6B65615A595C5D6164605D5E5E5F +5A57565048413B3A3D424E5A6B7781868B8D8D8D8D8B8884807A746F6C67626060616161 +67686B71787F8992A1B0C2CDDACB544C727F848582818384828587847B6F5C4835231719 +4B7D9A73563D33526A7FA1A59E9A9998938E8A868385828383828380807D7F7C77726B66 +6062656B737C828487837C7B78787E8085857F75685441393031353F4B55595857575B60 +63666663595A575857544B56696383FEFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFE816390A8657673716C5C5A594F4626 +336F787B705F554A4446484F595D5D606366666565615B524C4B4E525B6570798080817F +7C7A787776757573706F6C696663615F5D5C5F61656B747C858F9BA9B6C2CCC582575B6F +77787F837E7B7D7D7D786C5B473727161E4890B9B8865F43384B6981999997938F8A827C +7A777A7D7F84888B8C89827975706B67605B5B60676F787E828484827F7F7E8087888784 +7B6A564339383B4049545D62605C5A5C5E606368675F595155574D41596C6774FFFEFFFD +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFEFDF9846A8F915C64665C524E4C484B4136467E838073604D3D3633373F46545A626B +70727470695E5656595B61686F757773706B6562616163686B6E7174777674726E696766 +666A6E767F879099A1ABB6BBC2C9C6933C536C76787674746F6A665E504030251B114A99 +BFC7A0482F2734558B979595959089817771707173797F878D8E8C877E706862605D5855 +59616971797F81847F8180818082858282735E4A3A33363C424B58626766605B5A5A5D62 +67685F53524F53464B5C6B6375F6FCFFF9FFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEF26C6A8B8C5052524D474247404E +514B3F717E7F725B443934353C455059636F79808584786B605D5D5D6065666968625D58 +535052545A61686C72777C7C7C7B77747476797D838B939AA2AAB3B8C5C5CAD2DDBA6B57 +637478766E645E59564F4435241A14214A869672442C29201D38889D9A9F9E988F847B76 +77797F8790979891898170645C5A5A5A56575F6971777F8283858383817E7A7670675945 +3329272C353A49515B60615F5B585C5D646B685B4F494E4D514C606B6363EEFFFFFFFEFF +FBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FDFFFFFDFFF074667B81533A3E444E454645575A5346436970604D423F404955646C727A +838B91928778685F5A57585C5E615E57504B48474A4E565F64686D71757676767475797E +878C9299A1A8AFB6C1C5CDD6DEE7EACE5E5372837E776B5F514B49433B2F1F181A253039 +3032404941301F307A969FA0A39D938A827E7F81868F969993867C73625C5A5B5E5D5B5E +6871797E83858483827C74695F55483C2E25212428323D434B4F53545355575961666D6C +5E4E4A4F575C536D726061EEFFFFFCFDFFFCFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFBFFFCFEF1716F76786B45413E4B4444 +4A586151322C55544F4B4B4F5A66778084898E919493928575675C57575A5F615E564F49 +47484D535C626668696B6D6E6F7071747B818A90969CA4ABB2B9C3CACCD9DDE7EECF555C +8184807B695A524C494136281A1A202A282A2C3A525749271B33647E969D9C99938D8985 +84868C929492897D766F6565686A6B6A686C74797D80838786827D6E6051453A2E272223 +2930363D434747494B4C4F555D61686C6A5F534F535B616976736068EFFFFCFEFFFEFFFF +FAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFFFFFBFFFFFEF071727D77786135343B3A3C444F503616222E363D4A596876818C9194 +98989A98979186786A615D5C6366655E575151545A61696D6E6F6F6D6E6E7073777B8186 +8D92989DA4ACB4BCC2CCD3DBDEE3ECD3525780817E7B6B5E534C4B402E1C15222C483F2A +2733463C2816305A7A8791989EA09F9C98928F909295928F8983817F7E80817E7B777376 +7C7D80828386847C6957483C332E2B2D343C454B4D4A4542474A4E52575D636569696158 +555A636A7878766675EEFFFDFFFEFCFFFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFFFDFFFFFEF06E737D7E787E533B28 +2F2E363A30140E1B263249627785919B9D9D9E9FA1A1A2A39F9282746A65656A6A655F5B +5C61666E75767777767376777A7F84888D91979CA0A4ABB4BDC5CDD0DCD8E1E3E7DB5E4E +76807D796B60564B4537251B2646719C976E452429231E366B83858C93A5ACB1B3B1ABA1 +9B9B97989594939397969999968D847C757776777D828080796B59473C35313136414A54 +5A5650484343484C52575C5E5E5D5A5C5C5C6066748383786C75EFFEFFFFFFFCFFFFFDFF +FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFEE78727D73767D7C5D441F18212213173C313751688D98A5ACAEAD +ADABADABADB2B0A39B8E81767271716D645E5E60656C73777979797C8086888D96999BA1 +A4A5ADB3B8C2CAD7D6E1E1E8E7E9DDA75043747D7B71695B4C3F382D15195291A2ADB6B0 +9C73434A6C859093999AA5B6C0BFBFBDB4A8A09E9BA09D999EA3A4AAA5A39C8E817B7673 +74767C7E7B786954473E3634353A444F585E5D53494243475054595F5553515255616063 +6D7984522B6885F2FEFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFA786B71636B7B85 +8E8C66351F1D1D5C604F607791AAB1B6BABAB7B6BEC0BEBDB4B2AC999586817D7A73675C +59585F666D73787A7C7F848A91969CA2A7ADAFB9B9BCCBD6DCE0E9EAE7EBE9DEAD573B4E +757B7D7164574A3E33271F3772A5B3BCC2C7C9BDA1A59F9D9AA0A7A8B0B8BCBCBDB7ADA6 +A39FA3A0A5AAA7A9AEACA6A19991867D7A74777777767269594B3F3A36363B444F586160 +574B45454B52595D5C5850504F545D626B71897245383E85F4FEFEFFFEFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFDFF8B64544E627D8A9EA49C78673D5B7E796E8099A9B4BDC0BC +B7BEC9C7CBC8C4B3ACA1928F847E7973665A5555565D666F787C7E7F888C979CA1A9AEB4 +BCC2CFD8DDDFE4EBE7E4C1A8986C46425D7985807E736B635C514C4839365273919397A3 +ACA69BA4A4A4A4A6A8ADB3B1B5B0ACA8A09FA2A4A5B3B2AEADACABA9A7A19998928A887F +7775706D695D5049423F3D3F48535D62635F554C4A4E555C5D5A51474953575F696D8282 +51493D3192FBFFFFFFFFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFBFFA854373751 +6A7F8B94898188797F807B828EA2B5BABABCB8BBC5CED3D1CBB9A5948F817C76726C6156 +5455586068727B8082858F929CA2A9B3B8C2CEDBDEE3E6DECCA675645B5D61656C74808A +8988807B7B7871727779746B635D5B5850494039455B839FABB0B8B5B1B5ACAAA49D999A +A2ABB1B4B1B3AFACAEA9A8ACADA9A297897C726F6B69665F5855504C494D56606567635D +555153575A5B544A45484E58606E778A664535373BA8FBFFFFFEFFFFFEFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFEFEFFFFFFFBB04A2B2F495F71797E787B848A87817D88A4AFC0C4C8 +C5C5C8D2D6D9CFBAA58F857E7672706D645E6063686E757B82878B90989DA5A9B2BBC4D3 +DDE4D8CBA2757F7882858582868985868A858080797A797D8181818182817B73726F6661 +635E52433C49739AA1AAB7AEA9A8A09DA3A4A8B5B9BEBFC2C1BCBCBCB5BCBEB0A59D8674 +6F6D70716E6B68625A5451565F656666615C59595A57504A48424A58636E7A8184473221 +2345B2FFFFFEFFFEFCFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFDFFFFCE4D2C +3C435F7371787C8793988F8D9697B1C1C9D3CFC6BBBCB69A836E7B90877872717474706F +72757980868B9093969A9FA8AFB5BFCAD6E1E8D3A87C7C8184868B8081807A7978787470 +6B65646867717274797D79716C6C625E58545858574F4D4D48484B4F54567797A6A3A8B2 +BAC2C7CAA87A6C6D645C594F464358787E7374747B7E797672675B56545B636666656362 +615B504845444C5863677181846A2A26321A55CBFFFFFFF9FFFEFFFAFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFBFFFDFFFFFDFFFCE655304F5A6C7C818595A7B5B3ABAFAFBAC9D1C8 +91605260625E60503643728075787E83848586868C9095999EA1A4A7ABB4BCC7D0DCE5DC +B274808B89857C7B756F706F6B6F6F686665625A5A5A5A5F656B6C69696C675E5C4F4A49 +4D49474848555C6165655F534042567EA4B3BCC8C37E575D6E766F69635C4C3421396A79 +78787C7E7A756D635A5B5D626769686769635C514646505961696D7C8E8562243B5B5E6B +E0FFFDFCFEFFFFFCFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFDFFFEFFFEFFF6 +7E3F5168767F8C98AABBBDB9B9B7C0BA9B76556172767676766D623E2F4F7E838D979DA2 +A29F9E9E9EA0A6ACB2B7BCC1C7D2D7DFDEBF787E877F7F76726E6B6B666263636161645E +5B54524F58585B5E636765605A585049494448464240454953606262625B57493A384B68 +746F5D60767E7A786960564C3B311A2E6D7775767575736B625D5D63686A6B6D6C6A6559 +4F4C4F59656A6F787E8773494E545D5B81F4FFFFFFFFFFFFFAFFFDFDFFFDFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFF9F3F516C7B8A97ABBAB977493F473E4764 +7A807E7B7573746E6B5B43293B718F9CAFBBBDB6ADA3A0A0A8B3B7C0C5C7CCD2DBD9D771 +6D837E75726A6A68676463625F5D5D5C5C57555552505152575A5B5B59544D4944434549 +4A47403B40454B51565B5D5D5D5C5A5B5D5E656F787D7E786A584B4741312A1A15407475 +726F727069615960676B6C6B696A69665C575558606B7072797F826D445F5B5846A7F7FF +FDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF +FCFFCF5B5569798DA1B8BC903A3E2D334E707F807E7A726767686358513C253C7BA1AFC2 +C7CCBEADA7A5AAB5BDC7C9D0CDD3D6E3BB716A7D7B7168636261605E5E5E5C5A59575753 +514E4A4A4C4C51535453524E48474343464A4A463F3B3A3E444B515759595B5A58595E65 +6C727070695C4E433F40392F221C4375877F7E79736E66605F64676C6C696B706E696659 +5F676C73767A7D80756E6A54495BD0F5FFFFFEFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFDFEFFEC795567728EA9B89E40534B43506C +7D827D73695F57595A504637221348788FAFBEC7C4B0A9A7A7B1BBC4CCCAD0D2D3DDA749 +747F7B7466625D5A545354565759585654514D4742424443474A4B4A4A47454545464A4C +4A433B3635383E454E5558585856545152585B5A59574F443C38393D35251B2F759E9590 +8A8978686160697172727274797D786F6561686C747A777D7D7B7861495085EDFDFFFCFB +FFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFF +FFFCFFFFFAA95A6F7B8DAAB56156695F616F7B807C75695A4A4145422F2117182F4E647C +96A3AA9F9B9998A0ABB6C3C2C5C9CEBD6254747E756F68645E5B595654545353524E4E4A +45403C3C3E3D3F4142424242424448494C4B453B312D2D3037414C55585755514C464348 +4B4846433F3A363233382F221B20363C3C4954646B62666B7078807D7F878981746D696E +7B7E7C81847F705F524B5BB3FAFFFDFFFFFFFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFFFEFFFFFFDB73648496B3A9566A737775 +77787067553C2C1F232919142E4344454F5D798C9999968D89898D96A8B0B5B3BAA75F3F +6578756C68666564625F5B5753504A433D3631313234393B3A3B3A38393B3F43484A4A47 +3F3329252429323E4B5355534C41373231383D3D3F3C3936302A2F3B3E3F435062656050 +2E375B646B777B8385868A8C877C77777C867E7A7F7D6C55504C4B78DCFFFFFEFFFFFFFD +FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFCFEFFFCFFF5A35F7D9EAC9A576A726C6D7066564334231419160315394546445267 +7C9098A09D938A817C7F8895A1A1A7ADAE555961726C67636463615F5C58524B42392E28 +262A2E32383C3A39363334373C42494949463D332B28292D353F494E4C4841342A292F36 +3B3C403F3D39322E394A5260646B726B614A2C23566D6F797E82868E938D83808283837B +6D7173615553464CA8F7FFFCFFFCFFFCFFFEFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFCFFFFFFFFFDFFFFD9737296A361656763 +5E5F5C513E3622151210112D41424A54657682919A9E9C958D827A78808E929A9BA4AFB1 +77476569655E5A595B58554F473E32261E1E22282C2F33353A3A373537393D4248484744 +3E373230323335393F413D392F2A242630383D404445433E3A3A45535E676C6C69584E41 +27204D626C78838B9497948C87868077696061615C58504872DBFFFFFDFFFEFFFFFEFEFF +FEFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFFF9FFFBFEAC6D858E6F5C5852545B594C372B271835698069574C566773 +80888D8A8888858282818894A0A3A8AFBAC1BB4C646F6C62575452504B443B31251A181F +2A3133353735393B3B3B3D3F4144454544423E39363534312D2D2F32302D272724252C33 +3A4141423F3C3E444D565959615D5445372B1E305A6D838B8E959A8771676C71695C5C60 +5F5C5E4958B5FBFFFFFEFFFFFEFEFEFFFEFFFFFEFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFCFFFEFFE1878089815C +2D314A59544838312E214C848666504A4F5F6C716F66646569717A848E9BA6ABB3BDC6CB +AD556D797E7060574C464239362F2D282F3C464949474544424242454A4D4D4B4843423F +3D3D362E261F17171D2021252523201D1F262E333134363B444D535655504A4234292419 +28607279838787877B411A244A57565C62655F564983E9FFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFEFFFDFFFFFABF84878C864C3640514A3E3239312F30717F6C564E4D +5A63625E5D5B5E676E75808B979EA6B0BBC5875172847C706D5F564B4743403A3D3F464E +545454504D4B4A4846474B4F4F4B433F3E3C39362C2417120E10161B1F24211B15161E27 +2E31363439414951534E4B3F332922201C16486D737B817F7F7C7547334251515B66655B +526BC3FFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFF9FFFFF8B884 +8C928D8A724640403F444A3F315E877F675A5461696B6D69686D72777E8286898B8E98A3 +926058696F68675957535352535355525455555454524E4D4B47423E3B3A3124211D1F21 +211E150F09080C141B212628231F1E242E363B3D3B3C454B4A4943392C1F1A1A1F242021 +6578858483857C7D684F474D555F6C665A65B4F6FCFDFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFEFFFCFCFFFFFFFDFFFFEFA9937E7F81463C46565D5D58544643566A70 +6B656A6F74726D6A6B70777D84898A88898D8F967052565A5555565A5C57555557575550 +4C4B4C4B4846423D372C221D15090A080D1216150F0C090A1420282E32312C292B313839 +3938383F4B514E463D34251B1F29343326275262606367706D5C534B4A5165676062A3EA +FFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFDFFFFFFFDFFFFFFFBFDFF +FFE79A4F403247545F696D695D5B565248394565626566665F54535967727F888D8D8987 +8A8B8D896244424E5256555758554F504B4643444645413C352D200F0100000001030A11 +1616121214161F2A30353634302D2D32353431313947545A574B3C352E354448473F2F31 +2F302E1F2A51534B45415862616597E8FEFFFEFFFFFBFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFCFFFFFEFFFCFFFFFEFCFFFFFFE2964D31425A5E64625B4D504C473B +25294C4D49443F393D4555626F788185827D78848A8F9088603D4A4F504F4B4B47443E3C +3E444949443C322411050101020200050D1215141011191B232B2F312E2B282C3133302E +323844535A574F433C404C4E4E4340423D3E392F283C4744403E4C55585594E4FFFEFFFF +FFFEFEFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFEFDFEFFFFFEFFFDFFFF +FEFEFCFFFFDD862E182B4D5050463F413B2C1E113A47453B3537424A576570767A787069 +6F7582919BA4A3A2564D525C514A443E3D3D40464A4B443A281805000200000313191E1C +1A1713151E2225292D2F2E2F383D403B34323A43494D4B433D3E475252473C383B3B332B +283E4F4E4644414841418FE8FFFCFFFDFFFFFDFFFFFDFFFDFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFBFFFFFEFEFFFFFFFFFEFDFFFCFFFEFFFFFDE089231A304947453B3523 +142A405B615245454E5259656E7172716C6869778696A5AEB4B6BB72516765594E474442 +42434341382C180E010001010B1D2F3538332F2D2B2F2F31302F343940474C4840373235 +3C4246413D3B3E4449493A322D2E2921293549534B463F39383B94E0FFFBFFFEFFFFFFFF +FFFEFFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFE88D24181D2D2B2E1F0826566F6E61534A515357585D6972727173 +76808F9CA9B4B9B7AB4D56696C594D403C393D38382D1D13010000040F1B2A3A4C524F4D +4E5055534F443D3D3E454A464946393231363F3E3C3E3A3F41382C1C1C13141E2735444C +4D433A3939509CEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFEFEFFFEF2AA62433E3324 +20364D6671705F443F4C4E515662737C7D7F858D98A4AEB3B4B37F2B5663635D493C393A +3E352F281A0402040B1B2A33383C474D4E53585B5B564F49484B46414346413A302D3135 +39373933383223190F0D1F2C363B454C473D3A3C4267B1F2FFFCFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFDFCFFFFFFFBDB93554A514F54637B867B685749505351525E6B767E +83878D96A0A2A4AA9C3C4064625C46423B36393C392D29242B2F3A45474139353A404855 +6064615A58595A554E463E383328201F24282626212016140C10344B52514E5050433E4A +4F8FD4F8FFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFDFEFFFEFFF2B8 +764C575960666D665B615C5E564A4649525D686B6C6F777D8795884853635F554B403A3A +3438444A5054524F50514B464442474F5B656765625F5A5F5F554B4130241A12110F1417 +131516140E14314C52505B5A57534C4F7AB4F7FDFFFFFFFFFEFEFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFDFDFDFFFFFEFEFFFDFFFCFEFFFFFFE8A16A57676B5C4E4F535552483D383E47 +575C5B57595F6D7E8585504A4C504F534D4C474D5C696A6561544B4B4F56595754586060 +564D4949514C473B2B1A0A0802040A0D131A1C232528374B55535764655D5870A9E2FEFF +FEFFFFFDFDFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFFFFFDFD +FFFCFFFEE2AB816A595554585A524034353B3A43454242495663727A80674B3C3C424542 +4A565E69655D5149454A51524C443B383C41454A4D4C3F302417100D090C1421323D4445 +4246454A4850545B685F7AAEE6FDFFFFFFFCFFFEFDFFFFFFFEFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFCFFFFFEFCFFFFFFFFFFFEFDFFFFFFFFFFFEFEFFFFEFBB865B5B615F4D3C322A +30373C3D3F454F565D5B54585763605143403B34374845484C4844424039302A282D404F +55544639200F070309181F252F32323436323338434A52536795C5ECFFFEFDFFFFFFFFFF +FBFFFFFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFFEFFFBFFFFFFFF +FDFFFEFFFFFEFFFEFFFFFFD6A67D5E524C413939393937383B3D3C39383D4B555F615D5B +5D6974613A424A413025262B333C3D44524F3E2F20181906060D11161D292E2C272F3839 +40485C90B7DDFFFFFBFFFEFFFFFEFFFEFDFFFFFDFDFFFFFEFEFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFF9DCB292 +73563E3B393236423E3E434B51575C5E5A56616B818655283327140F14233E4A4F4D3C34 +1E15281D111A1D1F252827273432384C7195B9DEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFDFDFFFFFFFFFFF3D4AF8F745A464C494D565E62605B5D63 +6970797D6F5D5F663510243B4650402F251F1815171925292F3434354E7198B3D9F4FFFF +FBFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFE +FEFFFFFDFEFFFAF0D0B79980716A66626E77787E7C767974695F4D484B4C483B2A232626 +2B343E55698AA7B9D4F1FFFEFFFFFFFDFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFFFFEFEFFFFFFFEFEFFFEFEFFFFFFFBF6F1ED +DCD3C7BABDBBA99F9DA7ABB1B8B0BEC9D0DEEBF2FCFFFFFFFDFCFFFFFEFEFFFFFFFFFFFF +FFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFEFEFE +FFFFFFFFFEFFFFFEFEFEFFFFFEFFFFFFFFFFFFFFFFFDFEFFFFFFFEFCFEFEFEFEFFFFFAFE +FFFFFFFBFBFFFFFFFFFEFFFFFEFFFFFFFEFDFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFEFEFFFEFFFFFFFFFFFFFFFFFFFFFFFDFEFFFFFFFE +FFFFFFFFFEFFFFFCFEFFFFFDFFFFFEFEFFFFFDFDFFFFFFFEFDFEFFFEFEFEFFFFFCFEFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFEFEFFFFFDFEFFFFFFFFFFFEFFFFFDFFFEFFFEFFFFFEFEFFFFFFFCFDFFFFFFFFFBFFFF +FFFFFDFFFEFFFFFFFFFFFFFFFDFFFFFFFFFCFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFDFFFFFFFEFDFEFFFFFFFFFEFFFFFFFEFFFEFFFFFEFFFFFEFFFF +FFFFFFFEFFFFFFFDFFFFFEFFFFFFFFFFFFFEFFFFFFFFFFFEFEFFFEFEFFFFFEFFFEFEFFFF +FFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +end +%%PageTrailer +%%Trailer +%%EOF diff --git a/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf b/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf Binary files differindex ed818d8d3c1..118b4042b20 100644 --- a/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf +++ b/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex index c9ae72ba3b3..8a6fff31cbf 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex index 29199296250..e3b8ebca426 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex @@ -1,4 +1,4 @@ -% Copyright 2015 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -485,7 +485,7 @@ for an object when it is \emph{not} being animated. Let us start with creating a snapshot: \begin{command}{\pgfsnapshot\marg{time}} - When this command is used inside a \TeX\ scope, the behaviour of + When this command is used inside a \TeX\ scope, the behavior of |\pgfanimateattribute| changes: Instead of adding an animation to the object and the attribute, the object's attribute is set to value it would have during the animation at time \meta{time}. Note that when this command @@ -504,7 +504,7 @@ Let us start with creating a snapshot: \medskip\textbf{Timing and Events.} - The timeline of an animation normally starts at a ```moment |0s|'' and the + The timeline of an animation normally starts at a ``moment |0s|'' and the \meta{time} is considered relative to this time. For instance, if a timeline contains, say, the settings |entry={2s}{0}| and |entry={3s}{10}| and \marg{time} is set to |2.5s|, then the value the attribute will get is @@ -544,7 +544,7 @@ Let us start with creating a snapshot: snapshots: % \begin{itemize} - \item The |begin| and |begin on| keys have no effect (but + \item The |begin| and |begin on| keys have no effect (but |begin snapshot| has one. \item The |end| and |end on| keys have no effect. \item The |current value| may not be used in a timeline (since @@ -880,11 +880,11 @@ You can animate the appearance of a path in the following ways: path consists of appropriate Bézier curves. Unlike the dash pattern, the to-be-animated object is, indeed, the path - itself and not some special scope. This means that you can use the - |current value| for the start path. However, this also means that you really must - pick \emph{the path object} as the target of the animation. In conjunction - with \tikzname, this will be an object of type |path| as in the above - example. + itself and not some special scope. This means that you can use the + |current value| for the start path. However, this also means that you + really must pick \emph{the path object} as the target of the animation. In + conjunction with \tikzname, this will be an object of type |path| as in the + above example. When a path is animated, it cannot have ``normal'' arrows attached to it since due to the way \pgfname\ adds arrow tips to paths, these would not @@ -899,9 +899,9 @@ You can animate the appearance of a path in the following ways: \begin{key}{/pgf/animation/arrows=\meta{start tip spec}|-|\meta{end tip spec}} This key specifies arrow tips during the animation of the path. The syntax for the arrow tips is the same syntax as the |\pgfsetarrow| command or - \tikzname's |arrows| key. The specified start and end arrow tips are + \tikzname's |arrows| key. The specified start and end arrow tips are rendered as ``markers'', which are added to the path \emph{only} during the - animation. The markers are rotated along with the path in exactly the same + animation. The markers are rotated along with the path in exactly the same way as normal arrow tips would be. To be precise, the rules used for the computation of where arrow tips go and in which direction they head is not always the same for ``static'' arrow tips (arrow tips added to a normal @@ -1002,7 +1002,7 @@ You can animate the appearance of a path in the following ways: \end{key} -\subsection{Animating Transformations and Views} +\subsection{Animating Transformations and Views} \label{section-base-animation-views} In order to animate the canvas transformation matrix, you do not animate an diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex index 382db09e5b0..daa5a45e793 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -205,7 +205,7 @@ arrows. |foo[length=5pt,open]| once more later anywhere in the document, the setup code will not be executed again. \item The next thing that happens is that we have a look at the - \emph{drawin code} stored in the |code| field of the arrow. In our + \emph{drawing code} stored in the |code| field of the arrow. In our example, the drawing code would consist of creating a filled path with four straight segments. diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex index 68a1e2097cc..50d4c370fe4 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and Mark Wibrow +% Copyright 2019 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % @@ -334,8 +334,8 @@ command describes the decoration automaton. First, this option causes an immediate switch to the state |final| if the remaining distance on the input path is less than \meta{dimension}. The effect is the same as if you had said - |switch if less than=|\meta{dimension}| to final| just before the |width| - option. + |switch if less than=|\meta{dimension}| to final| just before the + |width| option. If no switch occurs, this option tells \pgfname\ the width of the segment. The current point will travel along the input path (as @@ -599,7 +599,7 @@ Once a decoration has been declared, it can be used. point. \end{itemize} - Before the automata start to "work on" their respective inputs paths, + Before the automata start to ``work on'' their respective inputs paths, \meta{before code} is executed. After the decoration automaton has finished, \meta{after code} is executed. % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-design.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-design.tex index 72dc66db700..fb7eacca2ff 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-design.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-design.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex index da8c2e7a6d9..c6df6dc4422 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -132,10 +132,10 @@ As we see in Figure~\ref{fig1}, the world is flat. away without any macro expansion. This means, in particular, that (a) you cannot put |\endpgfgraphicnamed| inside a macro and (b) the macros used in the graphics need not be defined at all when the - graphic file is included. \item The most complex behaviour arises + graphic file is included. \item The most complex behavior arises when current the |\jobname| equals the \meta{file name prefix} and, furthermore, the \emph{real job name} has been declared. The - behaviour for this case is explained later. + behavior for this case is explained later. \end{enumerate} Note that the |\beginpgfgraphicnamed| does not really have any effect until @@ -257,7 +257,7 @@ there is a better way: You input the file |pgfexternal.tex|. Since |\beginpgfgraphicnamed| does not do macro expansion as it searches for |\endpgfgraphicnamed|, it is not necessary to actually include the packages necessary for \emph{creating} the graphics. So the idea is that - you comment out things like |\usepackage{tikz}| and instead say + you comment out things like |\usepackage{tikz}| and instead say |\input pgfexternal.tex|. Indeed, the contents of this file is simply the following line: diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex index b7b536852fb..d5ea0b5d2e7 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -228,9 +228,11 @@ To speedup the compilation, you may wish to use the following class option: \textsc{rgb}-image in which all \textsc{rgb}-triples happen to have the same components. - You can only mask images the are in a ``pixel format''. These are |.jpg| - and |.png|. You cannot mask |.pdf| images in this way. Also, again, the - mask file and the image file must have the same size. + You can only mask images that are in a ``pixel format''. For drivers with + \textsc{pdf} output, these are |.jpg| and |.png| image files; you cannot + mask |.pdf| images in this way. Pixel images for the |dvips|+|ps2pdf| + workflow must be provided as |.eps| or |.ps| files. Also, again, the mask + file and the image file must have the same size. The following options may be given: % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-internalregisters.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-internalregisters.tex index 64c9da58f16..fe28a3c5e83 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-internalregisters.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-internalregisters.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Christian Feuersaenger +% Copyright 2018 by Christian Feuersaenger % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-layers.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-layers.tex index 65ec0f8896a..deba15d80bc 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-layers.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-layers.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex index 2c807e9f6e7..c35a345753d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex index b4dda6fa1c4..b1dfe59edbe 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -220,14 +220,14 @@ must set up the box |\pgfnodepartXYZbox|. The box will be placed at the anchor \end{pgfpicture} \end{codeexample} - \emph{Note:\/} Be careful when using the |\setbox| command inside a + \emph{Note:} Be careful when using the |\setbox| command inside a |{pgfpicture}| command. You will have to use |\pgfinterruptpath| at the beginning of the box and |\endpgfinterruptpath| at the end of the box to make sure that the box is typeset correctly. In the above example this problem was sidestepped by moving the box construction outside the environment. - \emph{Note:\/} It is not necessary to use |\newbox| for every node part + \emph{Note:} It is not necessary to use |\newbox| for every node part name. Although you need a different box for each part of a single shape, two different shapes may very well use the same box even when the names of the parts are different. Suppose you have a |circle split| shape that has a diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-paths.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-paths.tex index 4863835ddac..690de303d47 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-paths.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-paths.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex index de7700e5487..f032c5a2ea3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-plots.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-plots.tex index 4e4bac2faf0..4f9ce6098ea 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-plots.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-plots.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -132,8 +132,7 @@ groups. The net effect of this setting is that at outlier points plots get interrupted and ``restarted'' when the points are no longer - outliers. This is usually the behaviour you will be looking - for. + outliers. This is usually the behavior you will be looking for. \end{itemize} \end{key} \end{command} @@ -491,7 +490,7 @@ You can define new plot handlers using the following command: \pgfplotstreamend \end{codeexample} - The \meta{configuration} is used to define the behaviour of the handler. It + The \meta{configuration} is used to define the behavior of the handler. It is a list of key--value pairs, where the following keys are allowed: % \begin{itemize} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex index d743c57b017..2f4b963dc4f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex index 87694af64df..3813556b953 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex index d0efb084ab2..51cce0ed8ef 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -475,7 +475,7 @@ following environment: \begin{pgfpicture} \begin{pgfscope} { - \pgfsetarrows{-to} + \pgfsetarrows{->} \pgfpathmoveto{\pgfpointorigin}\pgfpathlineto{\pgfpoint{2ex}{2ex}} \pgfusepath{stroke} } diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-shadings.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-shadings.tex index e8bcde8ff7b..a091bc31b58 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-shadings.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-shadings.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex index 67525cd3048..8b7e1373355 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex index 319ebbd9e65..de9c874ed0c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -119,7 +119,7 @@ painted at all in the picture are always completely transparent. text: % \begin{codeexample}[] -\pgfdeclarefading{fading1}{\color{white}Ti\emph{k}Z} +\pgfdeclarefading{fading1}{\textcolor{white}{Ti\emph{k}Z}} \begin{tikzpicture} \fill [black!20] (0,0) rectangle (2,2); \fill [black!30] (0,0) arc (180:0:1); @@ -280,7 +280,7 @@ different commands for using fadings: \end{command} \begin{command}{\pgfsetfadingforcurrentpathstroked\marg{name}\marg{transformations}} - This command works line |\pgfsetfadingforcurrentpath|, only the current + This command works like |\pgfsetfadingforcurrentpath|, only the current path is enlarged by the line width in both $x$- and $y$-direction. This is exactly the enlargement necessary to compensate for the fact that if the current path will be stroked, this much needs to be added around the path's diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex index 31bfd9a30ae..9ab6af46f1c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -44,7 +44,7 @@ files in the directory |generic/pgf|. For example, here is the content of the file |latex/pgf/frontends/tikz.sty|: % \begin{codeexample}[code only] -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -219,9 +219,11 @@ program: it uses a different input format, but the output is exactly the same. \item In \LaTeX\ mode it uses |graphicx| for the graphics inclusion and does not support masking. \item In plain \TeX\ mode it does not support image inclusion. - \item Shading is fully implemented, but yields the same quality as - the implementation for |dvips|. - \item Opacity is not supported. + \item Shadings are approximated with discrete colors. This typically + leads to aliasing patterns in PostScript and \textsc{pdf} viewing + applications. + \item Opacity, Transparency Groups, Fadings and Blend Modes are not + supported. \item Remembering of pictures (inter-picture connections) is not supported. \end{enumerate} @@ -229,7 +231,7 @@ program: it uses a different input format, but the output is exactly the same. It is also possible to produce a |.pdf|-file by first producing a PostScript file (see below) and then using a PostScript-to-\pdf\ conversion program like -|ps2pdf| or the Acrobat Distiller. +|ps2pdf| or Acrobat Distiller. \subsubsection{Producing PostScript Output} @@ -242,13 +244,27 @@ file (see below) and then using a PostScript-to-\pdf\ conversion program like following restrictions: % \begin{enumerate} - \item In \LaTeX\ mode it uses |graphicx| for the graphics inclusion - and does not support masking. + \item In \LaTeX\ mode it uses |graphicx| for the graphics inclusion. + Image masking is supported if the PostScript output is further + processed with |ps2pdf| to produce \textsc{pdf}. \item In plain \TeX\ mode it does not support image inclusion. - \item Shading is fully implemented, but the results will not be as - good as with a driver producing |.pdf| as output. - \item Opacity works only in conjunction with newer versions of - Ghostscript. + \item Functional shadings are approximated with Type-0 functions + (sampled functions), because Type-4 functions are not available in + the latest (version 3) PostScript language definition. Due to + their fixed resolution, Type-0 functional shadings are of lesser + quality at higher zoom levels as compared to functional shadings + from \textsc{pdf} producing drivers. Axial and radial shadings are + fully supported. The same output quality (smooth shadings) is + achieved as with drivers that produce \textsc{pdf} output. + \item Although fully supported, opacity and fadings are \textsc{pdf} + features that become visible only after further processing the + PostScript output with |ps2pdf|. Note that newer Ghostscript + versions are necessary for producing opacity in the \textsc{pdf} + output. Also, beginning with version 9.52 of Ghostscript, command + line option |-dALLOWPSTRANSPARENCY| must be added: +\begin{codeexample}[code only] +ps2pdf -dALLOWPSTRANSPARENCY example.ps +\end{codeexample} \item For remembering of pictures (inter-picture connections) you need to use a recent version of |pdftex| running in DVI-mode. \end{enumerate} @@ -258,7 +274,8 @@ file (see below) and then using a PostScript-to-\pdf\ conversion program like This is a driver file for use with the \textsc{textures} program. It includes |pgfsys-common-postscript.def|. - This driver has exactly the same restrictions as the driver for |dvips|. + This driver shares the restrictions of the |vtex| driver, but adds limited + opacity support (no transparency groups, fadings and blend modes, though). \end{filedescription} You can also use the |vtex| program together with |pgfsys-vtex.def| to produce diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex index 0d8314079a3..373402b5cd3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex @@ -1,4 +1,4 @@ -% Copyright 2010 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -1991,7 +1991,7 @@ low=min, high=max \end{codeexample} % This causes grid lines to span all possible values when they are - visualized, which is usually the desired behaviour (the |low| and |high| + visualized, which is usually the desired behavior (the |low| and |high| keys are explained in Section~\ref{section-dv-visualize-ticks}. You can append the |style| key to this style to configure the overall appearance of grid lines. It should be noted that settings to |style| inside |every grid| @@ -2265,7 +2265,7 @@ The text produced by the automatic typesetting is computed as follows: % \begin{enumerate} \item The current contents of the key |tick prefix| is put into the node. - \item This is followed by a call of the key |tick typesetting| which gets + \item This is followed by a call of the key |tick typesetter| which gets the \meta{value} of the tick as its argument in scientific notation. \item This is followed by the contents of the key |tick suffix|. \end{enumerate} @@ -2310,7 +2310,7 @@ Let us have a look at these keys in detail: \end{key} \end{key} -\begin{key}{/tikz/data visualization/tick typesetting=\meta{value}} +\begin{key}{/tikz/data visualization/tick typesetter=\meta{value}} The key gets called for each number that should be typeset. The argument \meta{value} will be in scientific notation (like |1.0e1| for $10$). By default, this key applies |\pgfmathprintnumber| to its argument. This @@ -2550,14 +2550,14 @@ special ticks that you may have added using the |also at| key. When using the option. Then ticks are placed all positions $i\cdot s + p$ that lie in the interval $[a,b]$, where $i$ ranges over all integers. - The tick positions computed in the way described above are \emph{mayor} + The tick positions computed in the way described above are \emph{major} step positions. In addition to these, if the key |minor steps between steps| is set to some number $n$, then $n$ many minor - ticks are introduced between each two mayor ticks (and also before and - after the last mayor tick, provided the values still lie in the interval + ticks are introduced between each two major ticks (and also before and + after the last major tick, provided the values still lie in the interval $[a,b]$). Note that is $n$ is $1$, then one minor tick will be added in the - middle between any two mayor ticks. Use a value of $9$ (not $10$) to - partition the interval between two mayor ticks into ten equally sized minor + middle between any two major ticks. Use a value of $9$ (not $10$) to + partition the interval between two major ticks into ten equally sized minor intervals. % \begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] @@ -2585,11 +2585,11 @@ special ticks that you may have added using the |also at| key. When using the |logarithmic| option with an axis. In detail, the following happens: As for |linear steps| let numbers $a$, - $b$, $s$, and $p$ be given. Then, mayor ticks are placed at all positions + $b$, $s$, and $p$ be given. Then, major ticks are placed at all positions $10^{i\cdot s+p}$ that lie in the interval $[a,b]$ for $i \in \mathbb{Z}$. The minor steps are added in the same way as for |linear steps|. In - particular, they interpolate \emph{linearly} between mayor steps. + particular, they interpolate \emph{linearly} between major steps. % \begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} @@ -2838,7 +2838,7 @@ left axis={ visualize axis={ x axis={ goto=min } } The key can be passed to an axis. It will set the attribute monitored by the axis to the given \meta{value}, which is usually some number. However, \meta{value} may also be one of the following, which causes a - special behaviour: + special behavior: % \begin{itemize} \item |min|: The attribute is set to the minimal value that the @@ -3016,7 +3016,7 @@ left axis={ visualize axis={ x axis={ goto=min } } \begin{stylekey}{/tikz/data visualization/axis layer (initially on background layer)} The layer on which the axis is drawn. See the description of - |grid layer| on page~\ref{section-dv-grid-layer} for details. + |grid layer| on page~\pageref{section-dv-grid-layer} for details. \end{stylekey} \begin{stylekey}{/tikz/data visualization/every axis} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-backend.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-backend.tex index ca3fcf2833c..baf60247e2b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-backend.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-backend.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex index a08a999b58b..75271694ca4 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex index 00b3ee1e96d..ad7ddc0ad6c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex index 58e612170a0..88641aea6b9 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex index a0d57858f1c..9f95a446063 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -45,8 +45,8 @@ In order to visualize, you basically need to do three things: \end{enumerate} The syntax of the |\datavisualization| command is designed in such a way that -if you only need to provide very few options to create plots that ``look good -by default''. +you only need to provide very few options to create plots that ``look good by +default''. This section is structured as follows: First, the philosophy behind concepts like ``data points'', ``axes'', or ``visualizers'' is explained. Each of these @@ -351,7 +351,7 @@ picture to create pictures containing multiple data visualizations. to-be-read data may have a different format, but the data will be visualized as if it have been specified inside a single |data| command. - The behaviour of the |data| command depends on whether the \meta{inline + The behavior of the |data| command depends on whether the \meta{inline data} is present. If it is not present, the \meta{options} must be used to specify a source file from which the data is read; if the \meta{inline data} is present no file will be used, instead the data should directly diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex index 31167b720a1..bbba69dee46 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex @@ -1,4 +1,4 @@ -% Copyright 2010 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex index 526992cf0fc..88d5f2bba6b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex @@ -1,4 +1,4 @@ -% Copyright 2010 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -3110,7 +3110,7 @@ data group {function classes}; less space inside the data visualization than next to it. Also, the legend's node is filled in white by default to ensures that the legend is clearly legible even in the presence of, say, a grid or data points behind - it. This behaviour is triggered by the following style key: + it. This behavior is triggered by the following style key: \begin{stylekey}{/tikz/data visualization/legend options/every legend inside} Executed the keys |opaque| by default and sets the text size to the diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex index 2c6fc8481ec..f1e5c06ed8b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex @@ -1,4 +1,4 @@ -% Copyright 2010 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex index 9704f9b3de1..c4f8c4ed6d2 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex @@ -1,6 +1,6 @@ -% Copyright 2010 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster -% Copyright 2011 by Till Tantau -% Copyright 2011 by Jannis Pohlmann +% Copyright 2019 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster +% Copyright 2019 by Till Tantau +% Copyright 2019 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithms-in-c.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithms-in-c.tex index 042493105da..305752fc447 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithms-in-c.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithms-in-c.tex @@ -1,4 +1,4 @@ -% Copyright 2012 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex index d09a8aef428..229e1bc1eb7 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex @@ -1,10 +1,10 @@ -% Copyright 2010-2011 by Renée Ahrens -% Copyright 2010-2011 by Olof Frahm -% Copyright 2010-2011 by Jens Kluttig -% Copyright 2010-2011 by Matthias Schulz -% Copyright 2010-2011 by Stephan Schuster -% Copyright 2011 by Jannis Pohlmann -% Copyright 2011 by Till Tantau +% Copyright 2010-2019 by Renée Ahrens +% Copyright 2010-2019 by Olof Frahm +% Copyright 2010-2019 by Jens Kluttig +% Copyright 2010-2019 by Matthias Schulz +% Copyright 2010-2019 by Stephan Schuster +% Copyright 2019 by Jannis Pohlmann +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-circular.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-circular.tex index c503936db02..5d82f556ee3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-circular.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-circular.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Jannis Pohlmann +% Copyright 2018 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-display-layer.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-display-layer.tex index 46b1d5db041..c265b7f4af0 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-display-layer.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-display-layer.tex @@ -1,10 +1,10 @@ -% Copyright 2010-2011 by Renée Ahrens -% Copyright 2010-2011 by Olof Frahm -% Copyright 2010-2011 by Jens Kluttig -% Copyright 2010-2011 by Matthias Schulz -% Copyright 2010-2011 by Stephan Schuster -% Copyright 2011 by Jannis Pohlmann -% Copyright 2011 by Till Tantau +% Copyright 2010-2018 by Renée Ahrens +% Copyright 2010-2018 by Olof Frahm +% Copyright 2010-2018 by Jens Kluttig +% Copyright 2010-2018 by Matthias Schulz +% Copyright 2010-2018 by Stephan Schuster +% Copyright 2018 by Jannis Pohlmann +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-edge-routing.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-edge-routing.tex index 4c4fa8cab37..6eb09f5f849 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-edge-routing.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-edge-routing.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Jannis Pohlmann +% Copyright 2018 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-examples.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-examples.tex index bba5c540ade..830880d917b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-examples.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-examples.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Jannis Pohlmann +% Copyright 2012 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-force.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-force.tex index 514351e5347..80402970f00 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-force.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-force.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Jannis Pohlmann +% Copyright 2018 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-layered.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-layered.tex index 4f68dae40ff..c934a465a4f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-layered.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-layered.tex @@ -1,4 +1,4 @@ -% Copyright 2012 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-misc.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-misc.tex index 8c88238eb39..e6a72771d8b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-misc.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-misc.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Jannis Pohlmann +% Copyright 2012 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-ogdf.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-ogdf.tex index 579606e54c6..b90e664bf15 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-ogdf.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-ogdf.tex @@ -1,4 +1,4 @@ -% Copyright 2012 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex index 8fc660a937f..190451b1499 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex @@ -1,6 +1,6 @@ -% Copyright 2010 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster -% Copyright 2011 by Till Tantau -% Copyright 2011 by Jannis Pohlmann +% Copyright 2019 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster +% Copyright 2019 by Till Tantau +% Copyright 2019 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-phylogenetics.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-phylogenetics.tex index 486b930ce5e..d6ce489fc52 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-phylogenetics.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-phylogenetics.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Sarah Mäusle and Till Tantau +% Copyright 2018 by Sarah Mäusle and Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-trees.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-trees.tex index 171b7f8778a..ea18363172c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-trees.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-trees.tex @@ -1,4 +1,4 @@ -% Copyright 2012 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex index 633df75b883..be04bb93d45 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex @@ -1,10 +1,10 @@ -% Copyright 2010-2011 by Renée Ahrens -% Copyright 2010-2011 by Olof Frahm -% Copyright 2010-2011 by Jens Kluttig -% Copyright 2010-2011 by Matthias Schulz -% Copyright 2010-2011 by Stephan Schuster -% Copyright 2011 by Jannis Pohlmann -% Copyright 2011 by Till Tantau +% Copyright 2010-2019 by Renée Ahrens +% Copyright 2010-2019 by Olof Frahm +% Copyright 2010-2019 by Jens Kluttig +% Copyright 2010-2019 by Matthias Schulz +% Copyright 2010-2019 by Stephan Schuster +% Copyright 2019 by Jannis Pohlmann +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -484,9 +484,9 @@ you say |orient=90| directly followed by |orient=0|, the result is that the Unfortunately, if keys like |tree layout| were ``just'' to select an algorithm, we would still need a key or some special syntax to actually start a (sub)layout. In early versions of the system this was exactly what people had -to do and this was somewhat awkward. Because of this problem, the behaviour of +to do and this was somewhat awkward. Because of this problem, the behavior of the layout keys in \pgfname\ (and only there, other display layers need to -implement their own behaviour) is now a bit more involved. When you use a key +implement their own behavior) is now a bit more involved. When you use a key like |tree layout| (more precisely, any key that was declared as an algorithm key on the algorithm layer of the graph drawing system) in any scope in \pgfname, the following happens: diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex index 32cf24e59bb..e34ed4d3f0e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex @@ -1,4 +1,4 @@ -% Copyright 2012 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-guidelines.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-guidelines.tex index a91cd43452b..e59a2b19ecf 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-guidelines.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-guidelines.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-installation.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-installation.tex index a80222fa91f..307e972f66f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-installation.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-installation.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex index 5059d7af867..2e65e1dabc2 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex index a8f91c7309d..79bb47a2f76 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex index a011ea8b58a..e210cb2d75e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-arrows.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-arrows.tex index e9e1a8be007..9597701c41e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-arrows.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-arrows.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex index 452ee9a6aa7..c56bb6fd11a 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex index 35d99396dc4..221a84c640f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex index 7755003fbe3..4d9d49e9cf0 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-bbox.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-bbox.tex deleted file mode 100644 index 972b90714ea..00000000000 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-bbox.tex +++ /dev/null @@ -1,126 +0,0 @@ -% Copyright 2019 by an anonymous contributor -% -% This file may be distributed and/or modified -% -% 1. under the LaTeX Project Public License and/or -% 2. under the GNU Free Documentation License. -% -% See the file doc/generic/pgf/licenses/LICENSE for more details. - - -\section{Bounding Boxes for B\'ezier Curves} - -\begin{pgflibrary}{bbox} - This library provides methods to determine tight bounding boxes for - B\'ezier curves. -\end{pgflibrary} - - -\subsection{Current Status} - -\tikzname\ determines the bounding box of (cubic) B\'ezier curves by -establishing the smallest rectangle that contains the end point and the two -control points of the curve. This may lead to drastic overestimates of the -bounding box. - -\begin{codeexample}[] -\begin{tikzpicture} - \draw (0,0) .. controls (-1,1) and (1,2) .. (2,0); - \draw (current bounding box.south west) rectangle - (current bounding box.north east); -\end{tikzpicture} -\end{codeexample} - -\subsection{Computing the Bounding Box} - -Establishing the precise bounding box has been discussed in various places, the -following discussion uses in part the results from -\url{https://pomax.github.io/bezierinfo/}. What is a cubic Bezier curve? A -cubic Bezier curve running from $(x_0,y_0)$ to $(x_1,y_1)$ with control points -$(x_a,y_a)$ and $(x_a,y_a)$ can be parametrized by -\begin{equation} - \gamma(t) = - \begin{pmatrix} x(t)\\ y(t) \end{pmatrix} = - \begin{pmatrix}t^3 x_{1}+3 t^2 (1-t) x_{b}+(1-t)^3 - x_{0}+3 t (1-t)^2 x_{a}\\ - t^3 y_{1}+3 - t^2 (1-t) y_{b}+(1-t)^3 y_{0}+3 t (1-t)^2 - y_{a}\end{pmatrix}\;,\label{eq:gammaBezier} -\end{equation} -where $t$ runs from 0 to 1 (and $\gamma(0)=(x_0,y_0)$ and -$\gamma(1)=(x_1,y_1)$). Surely, the bounding box has to contain -$(x_0,y_0)$ and $(x_1,y_1)$. If the functions $x(t)$ and $y(t)$ have extrema in -the interval $[0,1]$, then the bounding box will in general be larger than that. -In order to determine the extrema of the curve, all -we need to find the extrema of the functions $x(t)$ and $y(t)$ for $0\le t\le -1$. That is, we need to find the solutions of the quadratic equations -\begin{equation} - \frac{\mathrm{d}x}{\mathrm{d}t}(t) = 0\quad\text{and}\quad - \frac{\mathrm{d}y}{\mathrm{d}t}(t) = 0\;. -\end{equation} -Let's discuss $x$, $y$ is analogous. If the discriminant -\begin{equation} - d := (x_a-x_b)^2+(x_1-x_b)(x_0-x_a) -\end{equation} -is greater than 0, there are two solutions -\begin{equation} - t_\pm = \frac{x_{0}-2 - x_{a}+x_{b}\pm\sqrt{d}}{x_{0}-x_{1}-3(x_{a}- x_{b})} \;. -\end{equation} -In this case, we need to make sure that the bounding box contains, say -$(x(t_-),y_0)$ and $(x(t_+),y_0)$. If $d\le0$, the bounding box does not need to -be increased in the $x$ direction. One can plug $t_\pm$ back into -\eqref{eq:gammaBezier}, this yields -\begin{subequations} -\begin{align} - x_- &= - \!\begin{aligned}[t] - \frac{1}{(x_0 - x_1 - 3x_a + 3x_b)^2} - \Bigl[ - & x_0^2x_1 + x_0x_1^2 - 3x_0x_1x_a + 6x_1x_a^2 - + 2x_a^3 - 3(x_0 + x_a)(x_1 + x_a)x_b \\ - & + 3(2x_0 - x_a)x_b^2 + 2x_b^3 - - 2\sqrt{d}(x_0x_1 - x_1x_a + x_a^2 - (x_0 + x_a)x_b + x_b^2) - \Bigr], - \end{aligned} \\ - x_+ &= - \!\begin{aligned}[t] - \frac{1}{(x_0 - x_1 - 3x_a + 3x_b)^2} - \Bigl[ - & x_0^2x_1 + x_0x_1^2 - 3x_0x_1x_a + 6x_1x_a^2 - + 2x_a^3 - 3(x_0 + x_a)(x_1 + x_a)x_b \\ - & + 3(2x_0 - x_a)x_b^2 + 2x_b^3 - + 2\sqrt{d}(x_0x_1 - x_1x_a + x_a^2 - (x_0 + x_a)x_b + x_b^2) - \Bigr]. - \end{aligned} -\end{align} -\end{subequations} -As already mentioned, the analogous -statements apply to $y(t)$. - -This procedure is implemented in the |bbox| library. It installs a single key -by which the tight bounding box algorithm can be turned on and off. - -\begin{key}{/pgf/bezier bounding box=\meta{boolean} (default true)} - Turn the tight bounding box algorithm on and off. - - \emph{Caveat:} As can be seen from the derivations, the necessary - computations involve the squaring of lengths, which can easily lead to - |dimension too large| errors. The library tries to account for large - numbers by appropriate normalization, such that it works in most cases, but - errors may still occur. -\end{key} - -\begin{codeexample}[] -\begin{tikzpicture}[bezier bounding box=true] - \draw (0,0) .. controls (-1,1) and (1,2) .. (2,0); - \draw (current bounding box.south west) rectangle - (current bounding box.north east); -\end{tikzpicture} -\end{codeexample} - - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "pgfmanual-pdftex-version" -%%% End: diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex index 5037bef78b9..4b324a1529b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -76,7 +76,7 @@ say, the |\draw| command). % \begin{key}{/tikz/dates=\meta{start date}| to |\meta{end date}} This option specifies the date range. Both the start and end date are - specified as described on page~\pageref{calendar-date-format}. In + specified and described on page~\pageref{calendar-date-format}. In short: You can provide ISO-format type dates like |2006-01-02|, you can replace the day of month by |last| to refer to the last day of a month (so |2006-02-last| is the same as |2006-02-28|), and you can add a plus diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex index 1dc247866fb..e601610e7fd 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex index f4fe43c28ed..b46e562880b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and Mark Wibrow +% Copyright 2019 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex index 9c971d5c91e..df6960e6721 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Mark Wibrow and Till Tantau +% Copyright 2019 by Mark Wibrow and Till Tantau % % This file may be distributed and/or modified % @@ -106,6 +106,28 @@ registers while others are stored in macros. \end{key} +\subsection{Handling ``Dimension too large'' errors} + +In case you should run into a ``Dimension too large error'' when using the +|decorations| libraries, there is a pretty high chance that you can resolve +this by using the |fpu| library in combination with +|/pgf/fpu/install only={reciprocal}|. Please note that this key should only be +applied locally to avoid other errors (see also at the definition of this key +on page~\pageref{fpu-install-only}). +% +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings,fpu}}] +\begin{tikzpicture} + \begin{scope}[/pgf/fpu/install only={reciprocal}] + \draw[postaction=decorate,decoration={ + markings,mark=at position 0.52 with { + \draw circle[radius=2pt]; + }}, + ] plot[smooth,variable=\x,domain=-1:1] (\x*\x*\x,\x*\x); + \end{scope} +\end{tikzpicture} +\end{codeexample} + + \subsection{Path Morphing Decorations} \begin{pgflibrary}{decorations.pathmorphing} @@ -1588,7 +1610,7 @@ shapes. This library is included mostly for historical reasons, using the \begin{key}{/pgf/decoration/text=\marg{text}} Set the text this decoration will use. Braces can be used to group multiple characters together, or commands that should not be expanded - until they are typset, for example |gr{\"o}{\ss}eren|. You should + until they are typeset, for example |gr{\"o}{\ss}eren|. You should \emph{not} use the formatting delimiters or math mode characters that the |text along path| decoration supports. \end{key} @@ -2026,7 +2048,7 @@ shapes. This library is included mostly for historical reasons, using the restarted each time the text is repeated. Secondly, the options for alignment, scaling or fitting the text to the path, fitting the path to the text, and so on, are computed using the decoration text before the - decoration starts. If any of these options are given the behaviour of + decoration starts. If any of these options are given the behavior of the |repeat text| key is undefined, but typically it will be ignored. % \begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex index 08cb5934af9..7207fb1612b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex index 28939c1a5c3..27470015fde 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex index e96a27c470d..ee3a8905181 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Christian Feuersaenger +% Copyright 2019 by Christian Feuersaenger % % This file may be distributed and/or modified % @@ -987,8 +987,9 @@ external graphics. It can be found at latex/pgf/utilities/tikzexternal.sty \end{codeexample} % -\noindent and needs to be used instead of |\usepackage{tikz}|. So, we uncomment -|\usepackage{tikz}| and our example from the beginning becomes +\noindent and needs to be used instead of |\usepackage{tikz}|. So, we comment +|\usepackage{tikz}| and |\usetikzlibrary{external}|, load packages |graphicx| +and |tikzexternal|, and finally our example from the beginning becomes % \begin{codeexample}[code only] \documentclass{article} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fadings.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fadings.tex index c42e10a2164..3b0784e441f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fadings.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fadings.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex index d528a2a4e8b..f5189a3cb12 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex index 968db32b754..37d20d13a38 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex index 7deff0a554d..a9794703337 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex index 2a46a0a2e5f..04989eef44d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Christian Feuersaenger +% Copyright 2019 by Christian Feuersaenger % % This file may be distributed and/or modified % @@ -147,6 +147,41 @@ by \pgfname. \meta{false-code}, depending on whether the FPU has been activated or not. \end{command} +\begin{key}{/pgf/fpu/install only=\marg{list of names}} + \label{fpu-install-only} + Unfortunately, the FPU is currently incompatible with drawing operations. + However, it can still be useful to replace single definitions with FPU + counterparts to avoid errors of the kind |Dimension too large| which tend + to happen when transformation matrices are inverted. + + This key allows to specify a list of definitions to be pulled into the + current scope. \emph{Note that there is no reverse operation to uninstall + these definitions at the moment}, so it is advisable to do this in a group. + Conveniently, \tikzname{} paths form an implicit group, so you can use this + key on a path as well. + + You have to be aware of the limitations that the FPU imposes. It will not + magically give \TeX{} better precision, but it will avoid overflow or + underflow situations for large or small operands by rescaling them. In the + following example, in the first case the FPU variant performs much better + than the normal variant, however, in the second case where a rescaling + would not in fact be needed the rescaling introduces a small round-off + error. + % +\begin{codeexample}[ + preamble={\usepgflibrary{fpu}}, + pre={\pgfkeys{/pgf/fpu=false}}, +] +\begingroup +\pgfkeys{/pgf/fpu/install only={divide}} +\pgfmathparse{12.34/0.001234}\pgfmathresult (good) +\pgfmathparse{12/4}\pgfmathresult (bad) +\endgroup +\end{codeexample} + % + \emph{This key is experimental and can change or disappear at any time!} +\end{key} + \subsection{Comparison to the fixed point arithmetics library} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex index 7d83ccb75fd..07abbb441bd 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex index 4e112adb9d7..7f0b429f1be 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex index 1e0e15e49cb..816464c0e5c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -12,7 +12,8 @@ \begin{tikzlibrary}{matrix} This library package defines additional styles and options for creating - matrices. + matrices. The basic matrix styles and options can be found in + Section~\ref{section-matrices}. \end{tikzlibrary} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex index ea840cb6b3b..646f12bf6ca 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -70,7 +70,7 @@ is used. This style installs some internal settings. \paragraph{Remark:} Note that |mindmap| redefines |font| sizes and |sibling angle| depending on - the current concept level (i.e. inside of |level 1 concept|, + the current concept level (i.e.\ inside of |level 1 concept|, |level 2 concept| etc.). Thus, if you need to redefine these variables, use |level 1 concept/.append style={font=\small}| @@ -457,7 +457,8 @@ color. This means that when you provide the |concept color| option to a |child| command, the color will change from the parent's concept color to the specified color. -Here is an example of a tree built in this way: +Let us now build a tree that way. Please note that we pass the |concept color| +to the respective |child| and not to a |node| under it. % \begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture} @@ -474,6 +475,7 @@ Here is an example of a tree built in this way: child { node[concept] {pro\-gramming languages} } child { node[concept] {software engineer\-ing} } } + % note that the `concept color' is passed to the `child'(!) child[concept color=blue] { node[concept] {applied} [clockwise from=-30] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex index 9c569fba34f..c9810eb2250 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -151,6 +151,7 @@ future. \begin{key}{/pgf/patterns/tile size=\meta{pgfpoint}} Width and height of a single of the pattern as a \pgfname\ point specification, i.e. the $x$ coordinate is the width and the $y$ + specification, i.e.\ the $x$ coordinate is the width and the $y$ coordinate is the height, e.g.\ |\pgfqpoint{3pt}{3pt}|. \end{key} % @@ -216,7 +217,9 @@ future. \end{codeexample} There are a couple of predefined \pgfname\ patterns which are similar -to their normal counterparts. +to their normal counterparts. For all of these the |xshift| and |yshift| are +applied \emph{before} the rotation. If you want to rotate before shifting, +just rotate in the drawing code. \begin{pattern}{Lines} The |Lines| pattern replaces the |horizontal lines|, |vertical lines|, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex index 3d5c9b127f4..0c0518f9249 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex @@ -188,8 +188,8 @@ projection. Note also that when only |p| is provided, the perspective in $y$ and $z$ direction is turned off. - To turn of the perspective in $x$-direction, one must set the $x$ component - of |p| to \texttt{0} (e.g. |p={(0,a,b)}|, where \texttt{a} and \texttt{b} + To turn off the perspective in $x$-direction, one must set the $x$ component + of |p| to \texttt{0} (e.g.\ |p={(0,a,b)}|, where \texttt{a} and \texttt{b} can be any number and will be ignored). Or one can provide |q| and |r| and omit |p|. @@ -276,7 +276,7 @@ The issues include, but possibly are not limited to: \item Keys like |rotate around x|, |rotate around y|, and |rotate around z| are not working \item Units are not working - \item Most keys from the |3d| library are unsupported, e.g. all the + \item Most keys from the |3d| library are unsupported, e.g.\ all the |canvas is .. plane| keys. \end{itemize} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex index 1146624d652..e5f0360bf7c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-plot-handlers.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-plot-handlers.tex index cf20bc84760..689e3f0c1bf 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-plot-handlers.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-plot-handlers.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -439,8 +439,8 @@ bars). relative bar sizes and offsets, one bar for each $y$~coordinate interval. \end{command} -\label{key-bar-interval-shift}% \begin{key}{/pgf/bar interval shift=\marg{factor} (initially 0.5)} +\label{key-bar-interval-shift}% \keyalias{tikz} Sets the \emph{relative} shift of |\pgfplothandlerxbarinterval| and |\pgfplothandlerybarinterval| to \meta{factor}. As @@ -450,8 +450,8 @@ bars). The argument \marg{scale} will be evaluated using the math parser. \end{key} -\label{key-bar-interval-width}% \begin{key}{/pgf/bar interval width=\marg{scale} (initially 1)} +\label{key-bar-interval-width}% \keyalias{tikz} Sets the \emph{relative} width of |\pgfplothandlerxbarinterval| and |\pgfplothandlerybarinterval| to \marg{scale}. The argument is relative to diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-plot-marks.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-plot-marks.tex index 5abc0ff16fe..d6d8f7cb284 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-plot-marks.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-plot-marks.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex index ca24ecacb01..6e5200a9fe0 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex @@ -1,4 +1,4 @@ -% Copyright 2010 by Christian Feuersaenger +% Copyright 2019 by Christian Feuersaenger % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex index c5d276aa027..1e9debff436 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex @@ -1,4 +1,4 @@ -% Copyright 2016 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex index 3f73bd926a2..e2afddbb345 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -178,17 +178,9 @@ this library is not used. set is \emph{computed by the \textsc{pdf} renderer} and can be zoomed arbitrarily (give it a try, if you have a fast computer). % -\pgfutil@ifluatex \begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \shade[shading=Mandelbrot set] (0,0) rectangle (2,2); \end{codeexample} -\else -% dvips causes very ugly error messages when converting this to PDF... -[Compilation disabled. Please use the lua manual.] -\begin{codeexample}[code only] -\tikz \shade[shading=Mandelbrot set] (0,0) rectangle (2,2); -\end{codeexample} -\fi % \end{shading} \makeatother diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex index 9892064652e..9d1ae581d54 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau and Mark Wibrow +% Copyright 2019 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex index 22e02202c4a..a248294ad21 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau and Mark Wibrow +% Copyright 2019 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex index 9bc7a69a992..a85ff6a5154 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -20,7 +20,7 @@ \subsection{Magnifying a Part of a Picture} -The idea behind the |spy| library is to make is easy to create high-density +The idea behind the |spy| library is to make it easy to create high-density pictures in which some important parts are repeated somewhere, but magnified as if you were looking through a spyglass: % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex index 8625256173c..ec45ca44356 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex @@ -1,4 +1,4 @@ -% Copyright 2009 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex index 1d9e278f46f..55a4f934eae 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex index c29dc7c5560..ccb5eb53dc5 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex index 5a002fb3b0a..cea9271069a 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex index 0a14a10163e..a0800428087 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex @@ -1,4 +1,4 @@ -% Copyright 2016 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-license.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-license.tex index c78b5f85ce4..ca56481b8d9 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-license.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-license.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -346,7 +346,7 @@ follow. % % $Id$ % -% Copyright 1999 2002-2006 LaTeX3 Project +% Copyright 1999 2002-2018 LaTeX3 Project % Everyone is allowed to distribute verbatim copies of this % license document, but modification of it is not allowed. % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex index de2ef33a06e..fd45d90821a 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -525,7 +525,6 @@ libraries are not loaded by default since many users will not need them. \include{pgfmanual-en-library-automata} \include{pgfmanual-en-library-babel} \include{pgfmanual-en-library-backgrounds} -\include{pgfmanual-en-library-bbox} \include{pgfmanual-en-library-calc} \include{pgfmanual-en-library-calendar} \include{pgfmanual-en-library-chains} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex index 57f51bda219..b506f67b52b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -181,7 +181,7 @@ \fi \graphicspath{{../../images/}} -\input{../../macros/pgfmanual-en-macros} +\input{pgfmanual-en-macros} \usepackage{todonotes} \newcommand\todosp[2][]{% % Stefan Pinnow diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main.tex index 8853888a5c8..b7349247dca 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex index 93c0aed44b7..9a4daeeaff0 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -24,7 +24,7 @@ tricky business and is only recommended for adventurous users. To add a new function to the math engine the following command can be used: -\begin{command}{\pgfmathdeclarefunction\opt{|*|}\marg{name}\marg{number of arguments}\marg{code}} +\begin{command}{\pgfmathdeclarefunction\opt{|*|}\marg{function name}\marg{number of arguments}\marg{code}} This will set up the parser to recognize a function called \meta{name}. The name of the function can consist of, uppercase or lowercase letters, numbers or the underscore |_|. In line with many programming languages, a @@ -120,9 +120,9 @@ To add a new function to the math engine the following command can be used: To redefine a function use the following command: -\begin{command}{\pgfmathredeclarefunction\marg{function name}\marg{algorithm code}} +\begin{command}{\pgfmathredeclarefunction\marg{function name}\marg{code}} This command redefines the |\pgfmath|\meta{function name}|@| macro with the - new \meta{algorithm code}. See the description of the + new \meta{code}. See the description of the |\pgfmathdeclarefunction| for details. You cannot change the number of arguments for an existing function. % @@ -205,3 +205,27 @@ To redefine a function use the following command: \end{codeexample} % \end{key} + +\begin{key}{/pgf/declare function/execute at begin function=\meta{tokens}} + These \meta{tokens} are inserted just before |\pgfmathdeclarefunction| + scans the body of the function definition. This is a rather low-level + option, so you should read the implementation to figure out where the + \meta{tokens} are inserted. +\end{key} + +\begin{key}{/pgf/declare function/execute at end function=\meta{tokens}} + These \meta{tokens} are inserted just after |\pgfmathdeclarefunction| has + finished scanning the body of the function definition. This is a rather + low-level option, so you should read the implementation to figure out where + the \meta{tokens} are inserted. +\end{key} + +\begin{key}{/pgf/declare function/ignore spaces=\meta{boolean}} + Uses the two previously described keys |/pgf/declare function/execute at begin function| and + |/pgf/declare function/execute at end function| to install catcodes such + that spaces inside the body of the function definition of + |\pgfmathdeclarefunction| are ignored. The usual \TeX\ tokenization rules + apply, so if the body of the function had already been tokenized by other + means this will become ineffective. If you want to use a space you can use + |~| in the function body which has its catcode set to 10 (space). +\end{key} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-commands.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-commands.tex index c6c0fef02cb..54a890b0708 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-commands.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-commands.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-design.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-design.tex index 43a93b08b5f..72e6ca084a0 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-design.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-design.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow and Till Tantau +% Copyright 2018 by Mark Wibrow and Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex index 9eaed9c975d..d694ef73559 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -327,7 +327,7 @@ recognized: \end{math-operator} \begin{math-operator}{*}{infix}{multiply} - Multiples \mvar{x} by \mvar{y}. + Multiplies \mvar{x} by \mvar{y}. \end{math-operator} \begin{math-operator}{/}{infix}{divide} @@ -515,7 +515,7 @@ some notable exceptions. \begin{math-function}{subtract(\mvar{x},\mvar{y})} \mathcommand - Subtract $x$ from $y$. + Subtract $y$ from $x$. % \begin{codeexample}[] \pgfmathparse{subtract(75,6)} \pgfmathresult diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex index 8a85b57c78e..44bc571c4af 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % Copyright 2019 by Jonathan P. Spratte % % This file may be distributed and/or modified @@ -17,6 +17,11 @@ parser. \end{pgfmodule} +\begin{package}{pgfparser} + Because the parser module is almost independent of the rest of \pgfname, it + can also be used as a standalone package with minimal dependencies. +\end{package} + This module provides commands for defining a parser that scans some given text letter-by-letter. For each letter, some code is executed and, possibly a state-switch occurs. The code for each letter might take mandatory or optional diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-oo.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-oo.tex index bd1f11d01f6..66ddbc6c4a7 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-oo.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-oo.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -37,7 +37,7 @@ it only for non-time-critical things. Basically, the oo-system supports \emph{classes} (in the object-oriented sense, this has nothing to do with \LaTeX-classes), \emph{methods}, \emph{constructors}, \emph{attributes}, \emph{objects}, \emph{object -identities}, and (thanks to Sa\v o \v Zivanovi\'c) \emph{inheritance} and +identities}, and (thanks to Sa\v so \v Zivanovi\'c) \emph{inheritance} and \emph{overloading.} The first step is to define a class, using the macro |\pgfooclass| (all normal diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pages.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pages.tex index 1975199a802..5da034e4777 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pages.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pages.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex index 2791a6936f1..50fc9ca1402 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex index 8ae0628b367..34f3aab7380 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -251,12 +251,12 @@ This section describes the package |pgffor|, which is loaded automatically by \begin{codeexample}[] \begin{tikzpicture} % Let's draw circles at interesting points: - \foreach \x / \y / \diameter in {0 / 0 / 2mm, 1 / 1 / 3mm, 2 / 0 / 1mm} - \draw (\x,\y) circle (\diameter); + \foreach \x / \y / \r in {0 / 0 / 2mm, 1 / 1 / 3mm, 2 / 0 / 1mm} + \draw (\x,\y) circle (\r); % Same effect - \foreach \center/\diameter in {{(0,0)/2mm}, {(1,1)/3mm}, {(2,0)/1mm}} - \draw[yshift=2.5cm] \center circle (\diameter); + \foreach \center/\r in {{(0,0)/2mm}, {(1,1)/3mm}, {(2,0)/1mm}} + \draw[yshift=2.5cm] \center circle (\r); \end{tikzpicture} \end{codeexample} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex index fdac5a31c42..2c22c1a952a 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -217,6 +217,10 @@ continue with the next subsection. The setting of a key is always local to the current \TeX\ group. \end{command} +\begin{command}{\pgfkeyssetevalue\marg{full key}\marg{token text}} + The |\edef| version of |\pgfkeyssetvalue|. +\end{command} + \begin{command}{\pgfkeyslet\marg{full key}\marg{macro}} Performs a |\let| statement so the \meta{full key} points to the contents of \meta{macro}. @@ -451,7 +455,7 @@ starting with |"| and one for strings starting with |<|. Naturally, in the above examples, the two handling macros did not do something particularly exciting. In the next example, we setup a more elaborate macro -that mimics a small part the behaviour of the |quotes| library, only for single +that mimics a small part the behavior of the |quotes| library, only for single quotes: % \begin{codeexample}[] @@ -576,7 +580,7 @@ Section~\ref{section-code-handlers}. net effect of all this is that you have then set up code for the key \meta{key} so that when you write |\pgfkeys{|\meta{key}|=|\meta{value}|}|, then the \meta{code} is executed with all occurrences of |#1| in - \meta{code} being replaced by \meta{value}. (This behaviour is quite + \meta{code} being replaced by \meta{value}. (This behavior is quite similar to the |\define@key| command of |keyval| and |xkeyval|). % \begin{codeexample}[] @@ -1171,14 +1175,6 @@ For styles the corresponding handlers as for normal code exist: than a |\def| to define the macro. \end{handler} -\begin{handler}{{.style args}|=|\marg{argument pattern}\marg{key list}} - This handler works like |/.code args|, only for styles. -\end{handler} - -\begin{handler}{{.estyle args}|=|\marg{argument pattern}\marg{code}} - This handler works like |/.ecode args|, only for styles. -\end{handler} - \begin{handler}{{.style n args}|=|\marg{argument count}\meta{key list}} This handler works like |/.code n args|, only for styles. Here, \meta{key list} may depend on all \meta{argument count} parameters. @@ -1205,6 +1201,14 @@ For styles the corresponding handlers as for normal code exist: % \end{handler} +\begin{handler}{{.style args}|=|\marg{argument pattern}\marg{key list}} + This handler works like |/.code args|, only for styles. +\end{handler} + +\begin{handler}{{.estyle args}|=|\marg{argument pattern}\marg{code}} + This handler works like |/.ecode args|, only for styles. +\end{handler} + \begin{handler}{{.prefix style}|=|\meta{prefix key list}} Works like |/.add style|, but only for the prefix key list. \end{handler} @@ -1350,9 +1354,9 @@ situation the following handler is useful. % \begin{codeexample}[code only] \pgfkeys{/line cap/.is choice} -\pgfkeys{/line cap/round/.style={\pgfsetbuttcap}} -\pgfkeys{/line cap/butt/.style={\pgfsetroundcap}} -\pgfkeys{/line cap/rect/.style={\pgfsetrectcap}} +\pgfkeys{/line cap/round/.code={\pgfsetbuttcap}} +\pgfkeys{/line cap/butt/.code={\pgfsetroundcap}} +\pgfkeys{/line cap/rect/.code={\pgfsetrectcap}} \pgfkeys{/line cap/rectangle/.style={/line cap=rect}} ... \draw [/line cap=butt] ... @@ -1490,9 +1494,9 @@ Key 4:& \pgfkeys{/key4} % \begin{enumerate} \item If a user provides a fully qualified key which could not be - found, for example the full string |/main path/option|, it assume + found, for example the full string |/main path/option|, it assumes that the user knew what she is doing -- and does \emph{not} - continue searching for |an option| in \marg{path list}. + continue searching for |option| in \marg{path list}. \item If a user provides only the key's name, for example |option| and |option| cannot be found in the current default path (which is |/main path| in our example above), the current default path is set @@ -1500,7 +1504,8 @@ Key 4:& \pgfkeys{/key4} here) and |\pgfkeys| will be restarted. This will be iterated until either a match has been found or all - elements in \marg{path list} have been tested. \item If all + elements in \marg{path list} have been tested. + \item If all elements in \marg{path list} have been checked and the key is still unknown, the fall-back handler |/handlers/.unknown| will be invoked. @@ -1537,20 +1542,26 @@ Key 4:& \pgfkeys{/key4} % \begin{codeexample}[code only] \pgfkeys{/path/.unknown/.code={% + \def\pgfkeys@searchalso@temp@value{#1}% \ifpgfkeysaddeddefaultpath + \expandafter\pgfkeys@firstoftwo + \else + \expandafter\pgfkeys@secondoftwo + \fi{% % only process keys for which no full path has been % provided: \pgfkeyssuccessfalse - \let\pgfkeys@searchalso@name =\pgfkeyscurrentkeyRAW + \let\pgfkeys@searchalso@name=\pgfkeyscurrentkeyRAW \ifpgfkeyssuccess \else % search with /tikz as default path: - \pgfqkeys{/tikz}{\pgfkeys@searchalso@name={#1}}% + \pgfqkeys{/tikz}{\pgfkeys@searchalso@name/.expand once=% + \pgfkeys@searchalso@temp@value}% \fi - \else - \def\pgfutilnext{\pgfkeysvalueof {/handlers/.unknown/.@cmd}#1\pgfeov}% - \pgfutilnext - \fi + }{% + \pgfkeysgetvalue{/handlers/.unknown/.@cmd}{\pgfkeys@code}% + \expandafter\pgfkeys@code\pgfkeys@searchalso@temp@value\pgfeov + }% } } \end{codeexample} @@ -1559,23 +1570,29 @@ Key 4:& \pgfkeys{/key4} % \begin{codeexample}[code only] \pgfkeys{/path/.unknown/.code={% + \def\pgfkeys@searchalso@temp@value{#1}% \ifpgfkeysaddeddefaultpath + \expandafter\pgfkeys@firstoftwo + \else + \expandafter\pgfkeys@secondoftwo + \fi{% \pgfkeyssuccessfalse \let\pgfkeys@searchalso@name=\pgfkeyscurrentkeyRAW \ifpgfkeyssuccess \else % step 1: search in /tikz with .try: - \pgfqkeys{/tikz}{\pgfkeys@searchalso@name/.try={#1}}% + \pgfqkeys{/tikz}{\pgfkeys@searchalso@name/.try/.expand once=% + \pgfkeys@searchalso@temp@value}% \fi \ifpgfkeyssuccess \else % step 2: search in /pgf (without .try!): - \pgfqkeys{/pgf}{\pgfkeys@searchalso@name={#1}}% + \pgfqkeys{/pgf}{\pgfkeys@searchalso@name/.expand once=\pgfkeys@searchalso@}% \fi - \else - \def\pgfutilnext{\pgfkeysvalueof {/handlers/.unknown/.@cmd}#1\pgfeov}% - \pgfutilnext - \fi + }{% + \pgfkeysgetvalue{/handlers/.unknown/.@cmd}{\pgfkeys@code}% + \expandafter\pgfkeys@code\pgfkeys@searchalso@temp@value\pgfeov + }% } } \end{codeexample} @@ -1583,7 +1600,7 @@ Key 4:& \pgfkeys{/key4} To also enable searching for styles (or other handled keys), consider changing the configuration for handled keys to - |/hander config=full or existing| when you use |/.search also|, that is, + |/handler config=full or existing| when you use |/.search also|, that is, use % \begin{codeexample}[code only] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex index 2c08141ea2e..f0891afd7b1 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex @@ -528,12 +528,12 @@ There are some more key filters which have nothing to do with family handling. is active or not. \end{command} -\begin{command}{\pgfkeysgetfamily\marg{key}\marg{resultmacro}} - Returns the family associated to a full key \meta{key} into macro +\begin{command}{\pgfkeysgetfamily\marg{full key}\marg{resultmacro}} + Returns the family associated to a \meta{full key} into macro \meta{resultmacro}. \end{command} -\begin{command}{\pgfkeyssetfamily\marg{key}\marg{family}} +\begin{command}{\pgfkeyssetfamily\marg{full key}\marg{family}} The command |\pgfkeyssetfamily|\marg{full key}\marg{family} has the same effect as |\pgfkeys{|\meta{full key}|/.belongs to family=|\marg{family}|}|. \end{command} @@ -551,7 +551,7 @@ Furthermore, the macro |\pgfkeyscasenumber| contains the current key's type as an integer: % \begin{itemize} - \item[\meta{1}] The key is a command key (i.e. |.../.@cmd| exists). + \item[\meta{1}] The key is a command key (i.e.\ |.../.@cmd| exists). \item[\meta{2}] The key contains its value directly. \item[\meta{3}] The key is handled (for example it is |.code| or |.cd|). diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex index 85adcf9024b..2f115ca1b31 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex @@ -1,4 +1,4 @@ -% Copyright 2016 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-commands.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-commands.tex index 47b876cd1b1..7bf200c044c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-commands.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-commands.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -922,6 +922,16 @@ ifs, which must be set before the above command is called: transformation should not apply to the following graphics, however. \end{command} +\begin{command}{\pgfsys@clipfading} + This command has a default implementation and need not be implemented by + driver files other than |pgfsys-dvips.def|. The macro is called + in |\pgfsetfadingforcurrentpath| and |\pgfsetfadingforcurrentpathstroked| + of the basic layer, where it invokes the current path for clipping the + shading just before installing it as an opacity mask for fading. The + default implementation is actually a non-operation, but with |dvips| it + is used to clip the fading as described. +\end{command} + \begin{command}{\pgfsys@definemask} This command declares a fading (known as a soft mask in this context) based on an image and for usage with images. It works similar to diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex index ac6c3f1dca7..ae1875bb9b6 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-paths.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-paths.tex index e432823121d..cf349002209 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-paths.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-paths.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-protocol.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-protocol.tex index 4d3615e79d1..30a1d79cee0 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-protocol.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-protocol.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex index a889467fb56..74c7882e51c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -1260,7 +1260,7 @@ transparency in general. If more than one of the basic actions like drawing, clipping and filling are requested, they are automatically applied in a sensible order: First, a path is -filled, then drawn, and then clipped (although it took Apple two mayor +filled, then drawn, and then clipped (although it took Apple two major revisions of their operating system to get this right\dots). Sometimes, however, you need finer control over what is done with a path. For instance, you might wish to first fill a path with a color, then repaint the path with a diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex index a692412fb35..3ce6b452dcf 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex @@ -1,4 +1,4 @@ -% Copyright 2015 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex index e3e500ae9a2..e8da9f3b131 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -741,7 +741,7 @@ The following options allow you to configure how arrow tips are colored: known as ``stroke color'', which you can set using |draw=|\meta{some color}. By adding the option |color=| to an arrow tip (note that an ``empty'' color is specified in this way), you ask that the arrow tip gets - this default draw color of the path. Since this is the default behaviour, + this default draw color of the path. Since this is the default behavior, you usually do not need to specify anything: % \begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] @@ -1625,7 +1625,7 @@ done using the following handler: \end{quote} % then |dup| will have the effect as if you had written - |whatever[]whatever[]|. You will find that this behaviour is what one would + |whatever[]whatever[]|. You will find that this behavior is what one would expect. There is one problem we have not yet addressed: The asymmetry of single diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex index 047592f5c26..7257629b801 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -1041,7 +1041,7 @@ which you need. \end{tikzpicture} \end{codeexample} % - If you set this key to |true|, this behaviour changes. In this case, at the + If you set this key to |true|, this behavior changes. In this case, at the end of a group created on a path, the last current position reverts to whatever value it had at the beginning of the scope. More precisely, when \tikzname\ encounters |}| on a path, it checks whether at this particular diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex index f1027d3bc88..df7c779dddf 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex index 98f888e8eee..978b0e665b3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex index 7c51ffe0e7c..2f9d95af925 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex @@ -1,5 +1,5 @@ -% Copyright 2010 by Till Tantau -% Copyright 2011 by Jannis Pohlmann +% Copyright 2019 by Till Tantau +% Copyright 2019 by Jannis Pohlmann % % This file may be distributed and/or modified % @@ -243,8 +243,9 @@ Chain groups make it easy to create tree structures: As can be seen, the placement is not particularly nice by default, use the algorithms from the graph drawing libraries to get a better layout. For -instance, adding |tree layout| to the above code results in the following -somewhat more pleasing rendering: +instance, adding |tree layout| to the above code (and +|\usetikzlibrary{graphdrawing}| as well as |\usegdlibrary{trees}| to the +preamble) results in the following somewhat more pleasing rendering: % \ifluatex \medskip @@ -290,7 +291,7 @@ add labels to the edges easily by putting the labels in quotes: For the first edge, the effect is as desired, however between |b| and the group |{c,d}| two edges are inserted and the options |thick| and the label option |"bar"| is applied to both of them. While this is the correct and consistent -behaviour, we typically might wish to specify different labels for the edge +behavior, we typically might wish to specify different labels for the edge going from |b| to |c| and the edge going from |b| to |d|. To achieve this effect, we can no longer specify the label as part of the options of |--|. Rather, we must pass the desired label to the nodes |c| and |d|, but we must @@ -338,8 +339,8 @@ created by default unless this node has already been created inside the same |graph| command. In particular, if a node has already been declared outside of the current |graph| command, a new node of the same name gets created. -This is not always the desired behaviour. Often, you may wish to make nodes -part of a graph than have already been defined prior to the use of the |graph| +This is not always the desired behavior. Often, you may wish to make nodes part +of a graph than have already been defined prior to the use of the |graph| command. For this, simply surround a node name by parentheses. This will cause a reference to be created to an already existing node: % @@ -898,7 +899,7 @@ the node is \emph{fresh}. }; \end{codeexample} -This behaviour of deciding whether a node is fresh or referenced can, however, +This behavior of deciding whether a node is fresh or referenced can, however, be modified by using the following keys: % \begin{key}{/tikz/graphs/use existing nodes=\opt{\meta{true or false}} (default true)} @@ -1071,7 +1072,7 @@ is called. The different parameters are as follows: following key is used as \meta{text}: % \begin{key}{/tikz/graphs/typeset=\meta{code}} - The macro or code stored in this key is used as the \meta{text} if + The macro or code stored in this key is used as the \meta{text} of the node. Inside the \meta{code}, the following macros are available: % @@ -1335,7 +1336,7 @@ several nodes have the same label. get created. \end{enumerate} % - In total, this is exactly the behaviour you would expect of a trie: + In total, this is exactly the behavior you would expect of a trie: % \begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [trie] { @@ -2804,7 +2805,7 @@ The following keys place nodes in a $N\times M$ grid. Options like |grow up| or |branch right| do not take the sizes of the to-be-positioned nodes into account -- all nodes are placed quite ``dumbly'' at grid positions. It turns out that the |Cartesian placement| can also be used to -place notes in such a way that their height and/or width is taken into account. +place nodes in such a way that their height and/or width is taken into account. Note, however, that while the following options may yield an adequate placement in many situations, when you need advanced alignments you should use a |matrix| or advanced offline strategies to place the nodes. diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex index 8288a0797f6..19adb8db0fd 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -413,7 +413,7 @@ The next set of styles can be used to change the appearance of certain rows, columns, or cells. If more than one of these styles is defined, they are executed in the below order (the |every cell| style is executed before all of the below). - % +% \begin{stylekey}{/tikz/column \meta{number}} This style is used for every cell in column \meta{number}. \end{stylekey} @@ -475,6 +475,119 @@ different columns. \end{tikzpicture} \end{codeexample} +In some cases, it is desirable to include some automation in each column/row +separately. A typical example is to apply stripe-pattern to almost all columns +with exceptions. For these type of use-cases, nesting these keys can open up +a lot of possibilities; in the following example a ``feature comparison'' table +is demonstrated. It is intentionally made rather verbose and a bit redundant +to show how the column and row settings can be progressively overwritten to +create certain effects. + +\begin{codeexample}[preamble={\usetikzlibrary{matrix,fit}}] +\begin{tikzpicture}[ + font=\sffamily, + striped col/.style={column #1/.append style={ + every even row/.style={nodes={fill=olive!50}}}}, + head color/.style args={#1/#2}{column #1/.append style={ + row 1/.append style={nodes={fill=#2}}}} +] + +\matrix [ + matrix of nodes, nodes in empty cells, + nodes={text width=2cm, align=center, + minimum height=1.5em, anchor=center}, + striped col/.list={1,...,5}, % add striped col style to all cols + column 1/.style={ % Override stripes and modify the feature column + row 1 column 1/.style={nodes={fill=none, draw=none}}, + nodes={fill=olive, inner ysep=0}, + }, + % modify headers first via common styles and then specific colors + row 1/.style={nodes={text depth=0.2ex, text width=2cm, text=white}}, + head color/.list={2/orange,3/teal,4/cyan,5/magenta} + ] (m) + { + & Basic & Standard & Professional & Enterprise \\ + Feature A & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + Feature B & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + Feature C & & & & $\bullet$ \\ + Feature D & & $\bullet$ & $\bullet$ & $\bullet$ \\ + Feature E & & & $\bullet$ & $\bullet$ \\ + }; +% Add emphasis on selection by the use of "fit" library +\node[fit={(m-1-4.north west) (m-6-4.south east)}, + ultra thick, inner sep=0, rounded corners=1mm, + draw=cyan, label={[cyan,align=center]270:Popular\\Choice!}]{}; +\end{tikzpicture} +\end{codeexample} + +The order in which these styles are applied is configurable. You can also +install your own styles. The following styles (in fact, internally they are +|/.code| keys) wrap the styles introduced in the previous paragraph passing the +correct argument and ensuring that they are only called for even or odd rows. +However, it is not recommended to override these. + +\begin{stylekey}{/tikz/matrix/inner style/every cell} + Wraps |/tikz/every cell|. +\end{stylekey} +\begin{stylekey}{/tikz/matrix/inner style/column} + Wraps |/tikz/column |\meta{number}. +\end{stylekey} +\begin{stylekey}{/tikz/matrix/inner style/even odd column} + Wraps |/tikz/every even column| and |/tikz/every odd column|. +\end{stylekey} +\begin{stylekey}{/tikz/matrix/inner style/row} + Wraps |/tikz/row |\meta{number}. +\end{stylekey} +\begin{stylekey}{/tikz/matrix/inner style/even odd row} + Wraps |/tikz/every even row| and |/tikz/every odd row|. +\end{stylekey} +\begin{stylekey}{/tikz/matrix/inner style/cell} + Wraps |/tikz/row |\meta{number}| column |\meta{number}. +\end{stylekey} + +\begin{stylekey}{/tikz/matrix/inner style order} + The order in which these styles are applied to the matrix cells is + specified by this key. By default it is + % +\begin{codeexample}[code only] +\tikzset{ + matrix/inner style order={ + every cell, + column, + even odd column, + row, + even odd row, + cell + } +} +\end{codeexample} + % + You can use this to install your own styles here, but only \emph{names} of + styles are permitted here. The style specification has to be placed + outside of |matrix/inner style order| and unless it is installed inside + |/tikz/matrix/inner style/|, it has to be fully qualified. + % +\begin{codeexample}[code only] +\tikzset{ + my style/.code={% + \ifnum\pgfmatrixcurrentcolumn=2 + \tikzset{font=\itshape}% + \fi + }, + matrix/inner style order={ + every cell, + even odd column, + even odd row, + column, + row, + cell, + /tikz/my style + } +} +\end{codeexample} + % +\end{stylekey} + In many matrices all cell pictures have nearly the same code. For example, cells typically start with |\node{| and end |};|. The following options allow you to execute such code in all cells: diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex index 4a8874131de..968628d5c5b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -865,7 +865,7 @@ goes through a large number of coordinates. These coordinates are either given in a simple list of coordinates, read from some file, or they are computed on the fly. -Since the syntax and the behaviour of this command are a bit complex, they are +Since the syntax and the behavior of this command are a bit complex, they are described in the separated Section~\ref{section-tikz-plots}. diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex index 06145514b4d..8710e6dc481 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex index 894f6d44d9e..203689729f1 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -132,7 +132,7 @@ following: Each line of the \meta{filename} should contain one line starting with two numbers, separated by a space. A line may also be empty or, if it starts with |#| or |%| it is considered empty. For such lines, a ``new data set'' is started, typically resulting in a new subpath being started in the -plot (see Section~\ref{section-plot-jumps} on how to change this behaviour, if +plot (see Section~\ref{section-plot-jumps} on how to change this behavior, if necessary). For lines containing two numbers, they must be separated by a space. They may be following by arbitrary text, which is ignored, \emph{except} if it is |o| or |u|. In the first case, the point is considered to be an diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex index d37579fae65..a8ffe644c8b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -106,7 +106,7 @@ are local to the |{tikzpicture}| to which they apply. approximation of the bounding box, but will not always be accurate. First, the line thickness of diagonal lines is not taken into account correctly. Second, control points of a curve often lie far ``outside'' the curve and - make the bounding box too large. In this case, you should use the + make the bounding box too large. In this case, you should use the |[use as bounding box]| option. The following key influences the baseline of the resulting picture: @@ -375,9 +375,9 @@ provided the single brace is followed by options in square brackets: \end{tikzpicture} \end{codeexample} -In the above example, |{ [thick]| actually causes a |\begin{scope}[thick]| to -be inserted, and the corresponding closing |}| causes an |\end{scope}| to be -inserted. +In the above example, |{ [ultra thick]| actually causes a +|\begin{scope}[ultra thick]| to be inserted, and the corresponding closing |}| +causes an |\end{scope}| to be inserted. The ``certain places'' where an opening brace has this special meaning are the following: First, right after the semicolon that ends a path. Second, right diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex index e4c7d11f92d..72cd794c9f7 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -180,10 +180,10 @@ The syntax for specifying nodes is the following: \begin{key}{/tikz/in front of path} This is the opposite of |behind path|: It causes nodes to be drawn on - top of the path. Since this is the default behaviour, you usually do + top of the path. Since this is the default behavior, you usually do not need this option; it is only needed when an enclosing scope has used |behind path| and you now wish to ``switch back'' to the normal - behaviour. + behavior. \end{key} \medskip @@ -477,7 +477,7 @@ filling. Here is an example that demonstrates the difference: \label{section-shape-seps} \label{section-shape-common-options} -The \todosp{why two labels for the same point?} exact behaviour of shapes +The \todosp{why two labels for the same point?} exact behavior of shapes differs, shapes defined for more special purposes (like a, say, transistor shape) will have even more custom behaviors. However, there are some options that apply to most shapes: @@ -1206,8 +1206,8 @@ anchor of the second node is at coordinate |(1,1)|. rectangle (1,1) node[anchor=west] {second node}; \end{codeexample} -Since the default anchor is |center|, the default behaviour is to shift the -node in such a way that it is centered on the current position. +Since the default anchor is |center|, the default behavior is to shift the node +in such a way that it is centered on the current position. \begin{key}{/tikz/anchor=\meta{anchor name}} Causes the node to be shifted such that its anchor \meta{anchor name} lies @@ -1492,7 +1492,7 @@ differently. \end{tikzpicture} \end{codeexample} % - It is possible to change the behaviour of this \meta{specification} + It is possible to change the behavior of this \meta{specification} rather drastically, using the following key: % \begin{key}{/tikz/on grid=\meta{boolean} (initially false)} @@ -1564,7 +1564,7 @@ differently. \end{key} \begin{key}{/tikz/above left=\opt{\meta{specification}}} - This key is also redefined in a manner similar to the above, but behaviour + This key is also redefined in a manner similar to the above, but behavior of the \meta{shifting part} is more complicated: % \begin{enumerate} @@ -1708,11 +1708,11 @@ The |positioning| package also introduces the following new placement keys: \end{key} -\subsubsection{Advanced Arrangements of Nodes} +\subsubsection{Advanced Arrangements of Nodes} The simple |above| and |right| options may not always suffice for arranging a large number of nodes. For such situations \tikzname\ offers libraries that -make positioning easier: The |graphdrawing| library and the |matrix| library. +make positioning easier: The |matrix| library and the |graphdrawing| library. These libraries for positioning nodes are described in two separate Sections~\ref{section-matrices} and~\ref{section-intro-gd}. @@ -1929,7 +1929,7 @@ explicitly by using the |pos| option or implicitly by placing the node \begin{key}{/tikz/auto=\opt{\meta{direction}} (default \normalfont is scope's setting)} This option causes an anchor positions to be calculated automatically - according to the following rule. Consider a line between to points. If the + according to the following rule. Consider a line between two points. If the \meta{direction} is |left|, then the anchor is chosen such that the node is to the left of this line. If the \meta{direction} is |right|, then the node is to the right of this line. Leaving out \meta{direction} causes automatic diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex index fcd5ef673c6..ef049f3cf36 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex index 0483ee57ad3..1e2a20aba7c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -17,7 +17,7 @@ Normally, when you paint something using any of \tikzname's commands (this includes stroking, filling, shading, patterns, and images), the newly painted objects totally obscure whatever was painted earlier in the same area. -You can change this behaviour by using something that can be thought of as +You can change this behavior by using something that can be thought of as ``(semi)transparent colors''. Such colors do not completely obscure the background, rather they blend the background with the new color. At first sight, using such semitransparent colors might seem quite straightforward, but @@ -34,10 +34,17 @@ At the end of the section we address the problem of creating so-called several times with a semitransparent color. Sometimes you want the effect to accumulate, sometimes you do not. -\emph{Note:} Transparency is best supported by the pdf\TeX\ driver. The -\textsc{svg} driver also has some support. For PostScript output, opacity is -rendered correctly only with the most recent versions of Ghostscript. Printers -and other programs will typically ignore the opacity setting. +\emph{Note:} Transparency (or Opacity, as it may be called as well) is best +supported by the pdf\TeX\ driver. The \textsc{svg} driver also has some +support. The PostScript file format does not know about transparency. In +|dvips|-generated PostScript files, transparency of graphic objects is defined +through special commands that need further processing to become visible in the +\textsc{pdf} output. For this, a recent version of Ghostscript, preferably 9.52 +or newer, is required and its command line utility |ps2pdf| must be called with +option |-dALLOWPSTRANSPARENCY|. Older versions may need option |-dNOSAFER| +instead, but some advanced features, such as \emph{transparency groups} and +\emph{fadings}, may not work at all. Printers and other programs will typically +ignore opacity settings in PostScript files. \subsection{Specifying a Uniform Opacity} @@ -426,7 +433,7 @@ commands, which are \emph{only defined in the library}, namely the library % {\ifpgfmanualexternalize\tikzexternaldisable\fi \begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] -\begin{tikzfadingfrompicture}[name=fade right] +\begin{tikzfadingfrompicture}[name=fade right with circle] \shade[left color=transparent!0, right color=transparent!100] (0,0) rectangle (2,2); \fill[transparent!50] (1,1) circle (0.7); @@ -439,7 +446,7 @@ commands, which are \emph{only defined in the library}, namely the library \pattern [pattern=checkerboard,pattern color=black!30] (-1.2,-1.2) rectangle (1.2,1.2); - \fill [path fading=fade right,red] (-1,-1) rectangle (1,1); + \fill [path fading=fade right with circle,red] (-1,-1) rectangle (1,1); \end{tikzpicture} \end{codeexample} % @@ -449,7 +456,8 @@ commands, which are \emph{only defined in the library}, namely the library \begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \begin{tikzfadingfrompicture}[name=tikz] \node [text=transparent!20] - {\fontencoding{T1}\fontfamily{ptm}\fontsize{45}{45}\bfseries\selectfont Ti\emph{k}Z}; + {\fontencoding{T1}\fontfamily{ptm}\fontsize{45}{45}\bfseries\selectfont + Ti\emph{k}Z}; \end{tikzfadingfrompicture} % Now we use the fading in another picture: diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex index e2c3dc2e34e..d53ae5516cc 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -512,7 +512,7 @@ parent node is given by the |level distance|. strange effect: It sets the sibling distance for the current level to |0pt|, but leaves the sibling distance for later levels unchanged. - This somewhat strange behaviour has a highly desirable effect: If you give + This somewhat strange behavior has a highly desirable effect: If you give this option before the list of children of a node starts, the ``current level'' is still the parent level. Each child will be on a later level and, hence, the sibling distance will be as specified originally. This will @@ -845,7 +845,7 @@ the following path operation is encountered: the |edge from parent| command, the second parameter will be the \meta{node specifications} that following the command. - The standard behaviour of drawing a straight line from the parent node + The standard behavior of drawing a straight line from the parent node to the child node could be achieved by setting the \meta{macro} to the following: % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex index b276178cd80..228cfbbe192 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -16,7 +16,7 @@ geometric constructions. Euclid is currently quite busy writing his new book series, whose working title is ``Elements'' (Euclid is not quite sure whether this title will convey the message of the series to future generations correctly, but he intends to change -the title before it goes to the publisher). Up to know, he wrote down his text +the title before it goes to the publisher). Up to now, he wrote down his text and graphics on papyrus, but his publisher suddenly insists that he must submit in electronic form. Euclid tries to argue with the publisher that electronics will only be discovered thousands of years later, but the publisher informs him diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex index 9e8dfd00caa..04b6f584336 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex index 8a81429b678..4c895031c68 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex index 71e1486b1c9..66cacc41aff 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2020 by Till Tantau % % This file may be distributed and/or modified % @@ -107,7 +107,7 @@ should look like this, ideally: \node (r2) [fill=black!10,rounded corners,fit=(w1')(w2')(e1')(e2')(l1')(l2')] {}; \end{scope} - \draw [shorten >=1mm,-to,thick,decorate,decoration={snake,amplitude=.4mm,segment + \draw [shorten >=1mm,->,thick,decorate,decoration={snake,amplitude=.4mm,segment length=2mm,pre=moveto,pre length=1mm,post length=2mm}] (r1) -- (r2) node [above=1mm,midway,text width=3cm,align=center] @@ -125,9 +125,9 @@ the previous tutorial. However, Hagen will also need to load some additional additional definitions like extra arrow tips that are typically not needed in a picture and that need to be loaded explicitly. -Hagen will need to load several libraries: The |arrows| library for the special -arrow tip used in the graphic, the |decorations.pathmorphing| library for the -``snaking line'' in the middle, the |backgrounds| library for the two +Hagen will need to load several libraries: The |arrows.meta| library for the +special arrow tip used in the graphic, the |decorations.pathmorphing| library +for the ``snaking line'' in the middle, the |backgrounds| library for the two rectangular areas that are behind the two main parts of the picture, the |fit| library to easily compute the sizes of these rectangles, and the |positioning| library for placing nodes relative to other nodes. @@ -141,7 +141,7 @@ When using \LaTeX\ use: \documentclass{article} % say \usepackage{tikz} -\usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri} +\usetikzlibrary{arrows.meta,decorations.pathmorphing,backgrounds,positioning,fit,petri} \begin{document} \begin{tikzpicture} @@ -158,7 +158,7 @@ When using plain \TeX\ use: \begin{codeexample}[code only] %% Plain TeX file \input tikz.tex -\usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri} +\usetikzlibrary{arrows.meta,decorations.pathmorphing,backgrounds,positioning,fit,petri} \baselineskip=12pt \hsize=6.3truein \vsize=8.7truein @@ -176,7 +176,7 @@ When using Con\TeX t, use: \begin{codeexample}[code only] %% ConTeXt file \usemodule[tikz] -\usetikzlibrary[arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri] +\usetikzlibrary[arrows.meta,decorations.pathmorphing,backgrounds,positioning,fit,petri] \starttext \starttikzpicture @@ -571,7 +571,7 @@ anchor's name: \node[place] (semaphore) [below=of critical] {}; \node[transition] (leave critical) [right=of critical] {}; \node[transition] (enter critical) [left=of critical] {}; - \draw [->] (critical.west) -- (enter critical.east); + \draw [->] (enter critical.east) -- (critical.west); \end{tikzpicture} \end{codeexample} @@ -997,7 +997,7 @@ The code for the background and the snake is the following: \node (r2) [fill=black!10,rounded corners,fit=(w1')(w2')(e1')(e2')(l1')(l2')] {}; \end{scope} - \draw [shorten >=1mm,-to,thick,decorate, + \draw [shorten >=1mm,->,thick,decorate, decoration={snake,amplitude=.4mm,segment length=2mm, pre=moveto,pre length=1mm,post length=2mm}] (r1) -- (r2) node [above=1mm,midway,text width=3cm,align=center] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex index 04ec7082d9b..0a35440fd16 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex index 022f2769b83..de910e82928 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/pgfmanual.tex b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/pgfmanual.tex index fc202c6fef9..1eecb494bc6 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/pgfmanual.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/pgfmanual.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/pgfmanual-dvipdfm.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/pgfmanual-dvipdfm.cfg index 8d121a062b8..04c05f7e146 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/pgfmanual-dvipdfm.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/pgfmanual-dvipdfm.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual-test.tex b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual-test.tex index 0143e045158..e6a93d80c26 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual-test.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual-test.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2016 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual.tex b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual.tex index 18c793c5ef1..54cc7180899 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/pgfmanual-dvipdfmx.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/pgfmanual-dvipdfmx.cfg index c45a660e053..36177cb14b9 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/pgfmanual-dvipdfmx.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/pgfmanual-dvipdfmx.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/Makefile b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/Makefile index 1c76dda9b8e..888e665a4c5 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/Makefile +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/Makefile @@ -9,13 +9,13 @@ pgfmanual.ps: $(doc).tex revisionfile TEXINPUTS="$(TEXINPUTS)" $(latex) $(doc).tex (egrep -q $(rerun) $(doc).log && TEXINPUTS="$(TEXINPUTS)" $(latex) $(doc).tex) || true dvips -o $(doc).ps $(doc).dvi - gs -dNOPAUSE -sDEVICE=pdfwrite -dBATCH -dCompatibilityLevel=1.4 -sOutputFile=$(doc).pdf $(doc).ps + gs -dNOPAUSE -sDEVICE=pdfwrite -dBATCH -dCompatibilityLevel=1.4 -dALLOWPSTRANSPARENCY -sOutputFile=$(doc).pdf $(doc).ps test: $(doc)-test.tex revisionfile TEXINPUTS="$(TEXINPUTS)" $(latex) $(doc)-test.tex (egrep -q $(rerun) $(doc).log && TEXINPUTS="$(TEXINPUTS)" $(latex) $(doc)-test.tex) || true dvips -o $(doc)-test.ps $(doc)-test.dvi - gs -dNOPAUSE -sDEVICE=pdfwrite -dBATCH -dCompatibilityLevel=1.4 -sOutputFile=$(doc)-test.pdf $(doc)-test.ps + gs -dNOPAUSE -sDEVICE=pdfwrite -dBATCH -dCompatibilityLevel=1.4 -dALLOWPSTRANSPARENCY -sOutputFile=$(doc)-test.pdf $(doc)-test.ps revisionfile: cd ../../../../.. && ./scripts/pgf/pgfrevisionfile.sh diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual-test.tex b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual-test.tex index 2cc03e5cd9a..1ebc724cbe8 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual-test.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual-test.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2016 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual.tex b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual.tex index 10e7f9c75b2..16b7647b741 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/pgfmanual-dvips.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/pgfmanual-dvips.cfg index 8511b9f1f36..9b26ef5d529 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/pgfmanual-dvips.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/pgfmanual-dvips.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/color.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/color.cfg index e69de29bb2d..4ab2ccf8919 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/color.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/color.cfg @@ -0,0 +1 @@ +% Override color.cfg from graphicx diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual-test.tex b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual-test.tex index a36c232025a..65c29458bac 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual-test.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual-test.tex @@ -1,4 +1,4 @@ -% Copyright 2015 by Till Tantau +% Copyright 2016 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual.tex b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual.tex index 03aa953fa25..f4399ea448f 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2016 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg index d7b04c4ec75..edbd6698ed5 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg @@ -1,4 +1,4 @@ -% Copyright 2016 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex index f2f2cfeaea3..98b08b3f74d 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual.tex b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual.tex index 9c8808cab83..83bf5177339 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/pgfmanual-luatex.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/pgfmanual-luatex.cfg index 8befeb01e5e..289b8716fbc 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/pgfmanual-luatex.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/pgfmanual-luatex.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/pgfmanual.tex b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/pgfmanual.tex index e1eb4e99427..90cf47439c5 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/pgfmanual.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/pgfmanual.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/pgfmanual-pdftex.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/pgfmanual-pdftex.cfg index 39a7955e697..f888fb60b3c 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/pgfmanual-pdftex.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/pgfmanual-pdftex.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/pgfmanual-tex4ht.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/pgfmanual-tex4ht.cfg index 99a00db7e31..698a0895733 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/pgfmanual-tex4ht.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/pgfmanual-tex4ht.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2008 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/pgfmanual-vtex.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/pgfmanual-vtex.cfg index 3012c714162..1d346686f29 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/pgfmanual-vtex.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/pgfmanual-vtex.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/pgfmanual.tex b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/pgfmanual.tex index 647d821179a..97444031ceb 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/pgfmanual.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/pgfmanual.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2008 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/pgfmanual-xetex.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/pgfmanual-xetex.cfg index 42c1be069fc..db64556861c 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/pgfmanual-xetex.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/pgfmanual-xetex.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgf.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgf.tex index 333d7c3d14a..5adcc3cb515 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgf.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgf.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -13,6 +13,7 @@ \writestatus{loading}{ConTeXt User Module / pgf} \unprotect +\startmodule[pgf] \ifx\pgfdefined\undefined diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbim.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbim.tex index 943a34cf833..c68f6129cc6 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbim.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbim.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -12,6 +12,7 @@ \writestatus{loading}{ConTeXt User Module / pgfbim} \unprotect +\startmodule[pgfbim] \PackageWarning{pgf}{This module is obsolete and no longer needed} diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbla.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbla.tex index 982d83e4d58..247be01f53a 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbla.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbla.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbma.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbma.tex index a326d049025..f7462a10f37 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbma.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbma.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbpl.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbpl.tex index be25da0217d..400e871e395 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbpl.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbpl.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbpt.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbpt.tex index ce33b46c67d..1f14b1500b8 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbpt.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbpt.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbsh.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbsh.tex index e7d83ce0c41..69d2db178c7 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbsh.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbsh.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbsn.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbsn.tex index 037108b1d69..7c864ad74dd 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbsn.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfbsn.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfcor.tex b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfcor.tex index 975bfc252ca..a2a35459db9 100644 --- a/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfcor.tex +++ b/Master/texmf-dist/tex/context/third/pgf/basiclayer/t-pgfcor.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -12,6 +12,7 @@ \writestatus{loading}{ConTeXt User Module / pgfcor} \unprotect +\startmodule[pgfcor] diff --git a/Master/texmf-dist/tex/context/third/pgf/frontendlayer/t-tikz.tex b/Master/texmf-dist/tex/context/third/pgf/frontendlayer/t-tikz.tex index 85c6fcf2f0b..9cda8239e5d 100644 --- a/Master/texmf-dist/tex/context/third/pgf/frontendlayer/t-tikz.tex +++ b/Master/texmf-dist/tex/context/third/pgf/frontendlayer/t-tikz.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -12,6 +12,7 @@ \writestatus{loading}{ConTeXt User Module / tikz} \unprotect +\startmodule[tikz] % \input xkeyval.tex % no longer used/needed diff --git a/Master/texmf-dist/tex/context/third/pgf/math/t-pgfmat.tex b/Master/texmf-dist/tex/context/third/pgf/math/t-pgfmat.tex index bdc8e6569de..f2313db7529 100644 --- a/Master/texmf-dist/tex/context/third/pgf/math/t-pgfmat.tex +++ b/Master/texmf-dist/tex/context/third/pgf/math/t-pgfmat.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -12,6 +12,7 @@ \writestatus{loading}{ConTeXt User Module / pgfmath} \unprotect +\startmodule[pgfmat] \ifx\pgfmathdefined\undefined diff --git a/Master/texmf-dist/tex/context/third/pgf/systemlayer/t-pgfsys.tex b/Master/texmf-dist/tex/context/third/pgf/systemlayer/t-pgfsys.tex index 5d78653282e..50cea74e916 100644 --- a/Master/texmf-dist/tex/context/third/pgf/systemlayer/t-pgfsys.tex +++ b/Master/texmf-dist/tex/context/third/pgf/systemlayer/t-pgfsys.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -12,6 +12,7 @@ \writestatus{loading}{ConTeXt User Module / pgfsys} \unprotect +\startmodule[pgfsys] \ifx\pgfsysdefined\undefined diff --git a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfcal.tex b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfcal.tex index 4651a99cf96..16e65ab6dc3 100644 --- a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfcal.tex +++ b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfcal.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -11,6 +11,7 @@ \writestatus{loading}{ConTeXt User Module / pgfcalendar} \unprotect +\startmodule[pgfcal] \ifx\pgfcalendardefined\undefined diff --git a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgffor.tex b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgffor.tex index 390e9dccde2..e233f8bc4da 100644 --- a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgffor.tex +++ b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgffor.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -11,6 +11,7 @@ \writestatus{loading}{ConTeXt User Module / pgffor} \unprotect +\startmodule[pgffor] \ifx\pgffordefined\undefined diff --git a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfkey.tex b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfkey.tex index 291384bc58f..2d62486ea6f 100644 --- a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfkey.tex +++ b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfkey.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -11,6 +11,7 @@ \writestatus{loading}{ConTeXt User Module / pgfkey} \unprotect +\startmodule[pgfkey] \ifx\pgfkeysdefined\undefined diff --git a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfmod.tex b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfmod.tex index d8c0fa39c8d..d10b2c9d99f 100644 --- a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfmod.tex +++ b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfmod.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -11,6 +11,7 @@ \writestatus{loading}{ConTeXt User Module / pgfmodules} \unprotect +\startmodule[pgfmod] % ConTeXt module pgfmodules. diff --git a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfrcs.tex b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfrcs.tex index b4bb290b164..51456b7d451 100644 --- a/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfrcs.tex +++ b/Master/texmf-dist/tex/context/third/pgf/utilities/t-pgfrcs.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -11,6 +11,7 @@ \writestatus{loading}{ConTeXt User Module / pgfrcs} \unprotect +\startmodule[pgfrcs] \ifx\pgfrcsdefined\undefined diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex index e1dda6194d1..c751bf905dd 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex index 843a8cd23f4..7f079fa841f 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006, 2013 by Till Tantau +% Copyright 2006, 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex index 9ec63ff7c66..f6fef57755a 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex index 7b11d45d630..f7783dcd983 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex index 710ece1fa80..597561a0018 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -146,7 +146,7 @@ {File "#3" not found when defining mask "#2". Tried all extensions in "\pgfsys@imagesuffixlist"}% \else% - \pgfsys@definemask{#2}% + \pgfsys@definemask% \fi% \expandafter\global\expandafter\let\csname pgf@mask@#2\endcsname=\pgf@mask% } diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex index 1c7c01d1eac..158f33d6ac9 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex index 1cbdfa0dd22..6906a9d9877 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex index e7b8f98dd36..cafc5329381 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -130,9 +130,9 @@ \ifdim#1>\pgf@picmaxx\global\pgf@picmaxx#1\fi% \ifdim#2<\pgf@picminy\global\pgf@picminy#2\fi% \ifdim#2>\pgf@picmaxy\global\pgf@picmaxy#2\fi% - \fi% - \ifpgf@size@hooked% - \let\pgf@size@hook@x#1\let\pgf@size@hook@y#2\pgf@path@size@hook% + \ifpgf@size@hooked% + \let\pgf@size@hook@x#1\let\pgf@size@hook@y#2\pgf@path@size@hook% + \fi% \fi% \ifdim#1<\pgf@pathminx\global\pgf@pathminx#1\fi% \ifdim#1>\pgf@pathmaxx\global\pgf@pathmaxx#1\fi% diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex index 0f52985c194..e33f0653ce7 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex index 4ca277c9923..5a9c5fc22bd 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex index cda5b1db3fa..7f72030c42e 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex index 15dfbbf1608..6c28f20b738 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex index 21e115846fc..4180440b008 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex index ae7e5351716..1069318a4b2 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex @@ -1,4 +1,4 @@ -% Copyright 2016 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex index 27b9da97bbc..6bdf7ae6399 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex index 67f11b2bc36..39a40c54eec 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % CMYK and grayscale shadings adaptation copyright 2019 by David Purton % % This file may be distributed and/or modified diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex index 961c657e8cd..76803c0ec3b 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex index 181450ac27a..7da8f5a378f 100644 --- a/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % @@ -196,6 +196,7 @@ % Compute new transformation matrix: \pgftransformcm{1}{0}{0}{1}{\pgfqpoint{\pgf@xb}{\pgf@yb}}% \pgftransformcm{\pgf@sys@tonumber{\pgf@xc}}{0}{0}{\pgf@sys@tonumber{\pgf@yc}}{\pgfpointorigin}% + \pgfsys@clipfading% #2% }% \fi% @@ -240,13 +241,13 @@ % Compute new transformation matrix: \pgftransformcm{1}{0}{0}{1}{\pgfqpoint{\pgf@xb}{\pgf@yb}}% \pgftransformcm{\pgf@sys@tonumber{\pgf@xc}}{0}{0}{\pgf@sys@tonumber{\pgf@yc}}{\pgfpointorigin}% + \pgfsys@clipfading% #2% }% \fi% } - % Group things in a a transparency group % % Description: diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex index ed9644ac87c..f06c4d9d087 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and others Wibrow +% Copyright 2019 by Till Tantau and others Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex index 6647be07771..9d1cfcfcea5 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and others Wibrow +% Copyright 2019 by Till Tantau and others Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex index 21eeec02b64..2e065d7dda7 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex @@ -1,5 +1,5 @@ -% Copyright 2008 by Till Tantau and others Wibrow +% Copyright 2019 by Till Tantau and others Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex index c0168992532..743bc24be84 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and others Wibrow +% Copyright 2018 by Till Tantau and others Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex index 54a1068eb4c..3d74ccd1978 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and others Wibrow +% Copyright 2018 by Till Tantau and others Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex index 76d48c863ab..b20b4d58ba8 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and others Wibrow +% Copyright 2018 by Till Tantau and others Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex index fb896e6a065..390d022a8a3 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and Mark Wibrow +% Copyright 2018 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex index a01a5720c54..df08b507d5b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex index 3eefe0f81a7..3780a4638af 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex index c56b29baae5..22fa311db44 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -2154,6 +2154,11 @@ #1={smooth line} }, visualize as smooth line/.default=line, + visualize as smooth cycle/.style={ + visualize as smooth line={#1}, + #1={smooth cycle} + }, + visualize as smooth cycle/.default=line, visualize as scatter/.style={ new object={ when=after survey, diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex index 40632212a0d..5a04c51646c 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex index 137e9964cb7..5a37b82854d 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex index 127b9805f23..2e2e77ae0b1 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex index 74fe15c7eac..ce7db967e61 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex @@ -1,5 +1,5 @@ -% Copyright 2010 by Till Tantau -% Copyright 2011 by Jannis Pohlmann +% Copyright 2019 by Till Tantau +% Copyright 2019 by Jannis Pohlmann % % This file may be distributed and/or modified % @@ -83,6 +83,9 @@ }, set/.code={ \tikz@fig@mustbenamed% + \ifcsname tikz@lg@node@set #1\endcsname\else + \tikzerror{Undefined set `#1'}% + \fi \expandafter\def\expandafter\tikz@alias\expandafter{\tikz@alias% \expandafter\def\expandafter\pgf@temp\expandafter{\csname tikz@lg@node@set #1\endcsname}% \expandafter\expandafter\expandafter\pgfutil@g@addto@macro\expandafter\pgf@temp\expandafter{\expandafter\tikz@lg@do\expandafter{\tikz@fig@name}}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex index c7f2daf7443..4cac3e51ebd 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex @@ -1,5 +1,5 @@ -% Copyright 2010 by Till Tantau -% Copyright 2011 by Jannis Pohlmann +% Copyright 2019 by Till Tantau +% Copyright 2019 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex index 55b387f13c6..fd880c3df9e 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008-2010 by Christian Feuersaenger +% Copyright 2008-2020 by Christian Feuersaenger % % This file may be distributed and/or modified % @@ -872,7 +872,7 @@ \immediate\write\tikzexternal@outmakefile{}% % % support for .dep files and auto-dependencies: - \immediate\write\tikzexternal@outmakefile{include $(ALL_FIGURE_NAMES:\tikzexternal@PERCENTchar=\tikzexternal@PERCENTchar.\tikzexternaldepext)}% + \immediate\write\tikzexternal@outmakefile{-include $(ALL_FIGURE_NAMES:\tikzexternal@PERCENTchar=\tikzexternal@PERCENTchar.\tikzexternaldepext)}% \immediate\write\tikzexternal@outmakefile{}% \tikzexternalmakefiledefaultdeprule \immediate\write\tikzexternal@outmakefile{}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex index aee687e274b..f39eaee8669 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex index 5a89e4defd1..2bd7e428a62 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex @@ -1,5 +1,5 @@ -% Copyright 2013 by Till Tantau -% Copyright 2018 by Kroum Tzanev +% Copyright 2019 by Till Tantau +% Copyright 2019 by Kroum Tzanev % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex index f4dd1716932..4682a0df06c 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex @@ -1,4 +1,4 @@ -% Copyright 2016 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex index 946f87455e7..b3f1728e440 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex index 93dc77be779..690e0fd63a6 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex index cf307cf6a8c..e24439f75f6 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex index 690953b8054..1a42a4b40e4 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex index be9c8bb707a..169995bcdef 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex index b6fc75aeef9..373ea7752d0 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex index f3e8439491f..3ade8fa1cce 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex index c02f5207044..4708c329646 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex index 4e61360ee3b..e9967c80857 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex index fe42e8b09be..10bc743f24b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex index 9bd837911bc..4ef23427848 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex index 23dcf61da73..04f3e571b14 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex index 4d0eb26dd7a..5bc38b1dc8e 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex index cef15dcc5ec..4f52ff9a1e1 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex index e1ad8a5e12b..3074a039052 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex index 50b9ebcba67..030135d8f51 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex index a2a80a5f49f..acb9b049971 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex index bec6487b98a..bddc83cb5cf 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex index 4f3dc6be3de..7de158df40c 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex index 8560ecfb59b..76616a6dddb 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex index 143acd9e9e8..065ddd4bbbd 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex @@ -1,5 +1,5 @@ -% Copyright 2006 by Till Tantau -% Copyright 2013 by Nico Van Cleemput +% Copyright 2018 by Till Tantau +% Copyright 2018 by Nico Van Cleemput % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex index ad8d2671ee8..36e0afe133f 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008/2009 by Christian Feuersaenger +% Copyright 2008/2018 by Christian Feuersaenger % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex index f7ff81b7e2a..ca0e7a1c5e4 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -104,7 +104,7 @@ \pgfmathloop% \ifnum\pgfmathcounter>\pgfintersectionsolutions\relax% \else% - \path[reset cm]\pgfextra{\pgftransformshift{\pgfpointintersectionsolution{\pgfmathcounter}}}% + \path\pgfextra{\pgftransformshift{\pgfpointintersectionsolution{\pgfmathcounter}}}% coordinate (\tikz@intersect@@name-\pgfmathcounter); \repeatpgfmathloop% \ifx\tikz@intersect@by\pgfutil@empty% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex index 89807c8e04d..6763c733e9e 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex index fd876f5d73c..3e703fad986 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex index 90894ff206d..507ac7a40d8 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex index 4dc97d1aacf..ff5959c4f37 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex index 22ce51d8cbd..8ef495bbba9 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex index 4327768186c..de96fd9093a 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex @@ -1,4 +1,4 @@ -% Copyright 2015 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -70,9 +70,9 @@ \let\pgfsetstrokecolor=\pgfutil@gobble% \let\pgfsetfillcolor=\pgfutil@gobble% \fi% - \def\tikz@fig{% - \tikzerror{You cannot use nodes inside a pattern}% - }% + \def\tikz@fig{\tikzerror{You cannot use `\string\node' inside a pattern}}% + \def\tikz@edge@plain{\tikzerror{You cannot use `edge' inside a pattern}}% + \def\tikz@to{\tikzerror{You cannot use `to' paths inside a pattern}}% \tikzset{pattern/.code={\tikzerror{You cannot nest patterns}}, pattern color/.style={pattern}}% }% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex index 7241394d804..80c34c175e1 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex index 6e1b497b65b..e6db2b62ff1 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex index 3b2caac869a..15eea572019 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex index 830212928d5..b410975c32c 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex index 99efbfeecae..bbd109bcb44 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex index 60c87f0dff9..74e77ac3e2a 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex @@ -1,4 +1,4 @@ -% Copyright 2016 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex index 6245bf8ec1f..68856d591e4 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex index c84fb467699..2cf08776f34 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex index ebb2abf74c6..3bd60e99fa9 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex index 20e2022c115..c20e6a73ccb 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex index 12b4953349f..2a3de5548a6 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex index 0e1c84a287a..2efb5c33086 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex index e41ddf83a00..c34229b1376 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex index 99411f2b12f..66503414a0d 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex index ae3d6c7feb5..3e923b940fe 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex index 9a8c13f6221..617c5f40342 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex index 797a0e25523..e9d5e2fa84b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau and Mark Wibrow +% Copyright 2018 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex index 6927d8dea40..b616b54c883 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex index 64d6fc44f88..9acb6de9153 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex index c9ac86f17ee..1a5e47b4461 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex index 8b64ccc3ce7..521bf96b60f 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex @@ -1,4 +1,4 @@ -% Copyright 2009 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex index cb634245327..986235b75b0 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex index 121a570f4b5..1461f783f5a 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2020 by Till Tantau % % This file may be distributed and/or modified % @@ -34,7 +34,7 @@ \pgfmathsetmacro\tikz@to@bend{#1}% \fi% \let\tikz@to@out=\tikz@to@bend% - \pgfmathsetmacro\tikz@to@in{180-\tikz@to@out}% + \pgfmathsetmacro\tikz@to@in{180-(\tikz@to@out)}% \tikz@to@switch@on% \tikz@to@relativetrue% } @@ -46,13 +46,8 @@ \pgfmathsetmacro\tikz@to@bend{#1}% \fi% % Now, negate - \pgfmathsetmacro\tikz@to@out{\tikz@to@bend} - \c@pgf@counta=\tikz@to@bend\relax% - \c@pgf@counta=-\c@pgf@counta\relax% - \edef\tikz@to@out{\the\c@pgf@counta}% - \c@pgf@counta=180\relax% - \advance\c@pgf@counta by-\tikz@to@out\relax% - \edef\tikz@to@in{\the\c@pgf@counta}% + \pgfmathsetmacro\tikz@to@out{-(\tikz@to@bend)} + \pgfmathsetmacro\tikz@to@in{180-(\tikz@to@out)} \tikz@to@switch@on% \tikz@to@relativetrue% } @@ -97,12 +92,12 @@ \def\tikz@to@set@in@looseness#1{% - \def\tikz@to@in@looseness{#1}% + \pgfmathsetmacro\tikz@to@in@looseness{#1}% \let\tikz@to@end@compute=\tikz@to@end@compute@looseness% \tikz@to@switch@on% } \def\tikz@to@set@out@looseness#1{% - \def\tikz@to@out@looseness{#1}% + \pgfmathsetmacro\tikz@to@out@looseness{#1}% \let\tikz@to@start@compute=\tikz@to@start@compute@looseness% \tikz@to@switch@on% } diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex index 8ff54a03123..d457f979b97 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex index 76272f1a6cf..58fd46b40c2 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex index 746dd60f638..8ced1b64f3c 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex @@ -1,4 +1,4 @@ -% Copyright 2015 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex index 01b1b9d346f..a371ddfc7cf 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -790,13 +790,9 @@ \pgf@xc=\pgf@x% \pgf@yc=\pgf@y% \tikz@label@simplefalse% - \iftikz@fullytransformed% - \tikz@label@simpletrue% - \else - \ifdim\pgf@xc=\pgf@xb\relax% - \ifdim\pgf@yc=\pgf@yb\relax% - \tikz@label@simpletrue% - \fi% + \ifdim\pgf@xc=\pgf@xb\relax% + \ifdim\pgf@yc=\pgf@yb\relax% + \tikz@label@simpletrue% \fi% \fi% \iftikz@label@simple% @@ -3999,6 +3995,44 @@ {\pgfutil@ifnextchar e{\tikz@fig@mustbenamed\tikz@fig@continue} {\ifx\tikz@after@path\pgfutil@empty\expandafter\tikz@fig@continue\else\expandafter\tikz@fig@mustbenamed\expandafter\tikz@fig@continue\fi}}}}}%}% +\tikzset{ + matrix/inner style/every cell/.code={% + \tikzset{every cell/.try={\the\pgfmatrixcurrentrow}{\the\pgfmatrixcurrentcolumn}}% + }, + matrix/inner style/column/.code={% + \tikzset{column \the\pgfmatrixcurrentcolumn/.try}% + }, + matrix/inner style/even odd column/.code={ + \ifodd\pgfmatrixcurrentcolumn% + \tikzset{every odd column/.try}% + \else% + \tikzset{every even column/.try}% + \fi + }, + matrix/inner style/row/.code={% + \tikzset{row \the\pgfmatrixcurrentrow/.try}% + }, + matrix/inner style/even odd row/.code={% + \ifodd\pgfmatrixcurrentrow% + \tikzset{every odd row/.try}% + \else% + \tikzset{every even row/.try}% + \fi + }, + matrix/inner style/cell/.code={% + \tikzset{row \the\pgfmatrixcurrentrow\space column \the\pgfmatrixcurrentcolumn/.try}% + }, + matrix/inner style order/.store in=\tikz@common@matrix@code@styleorder, + matrix/inner style order={ + every cell, + column, + even odd column, + row, + even odd row, + cell + }, +}% + \def\tikz@do@matrix{% \tikzset{every matrix/.try}% \tikz@node@transformations% @@ -4050,20 +4084,14 @@ \def\tikz@common@matrix@code{% \let\tikz@options=\pgfutil@empty% \let\tikz@mode=\pgfutil@empty% - \tikzset{every cell/.try={\the\pgfmatrixcurrentrow}{\the\pgfmatrixcurrentcolumn}}% - \tikzset{column \the\pgfmatrixcurrentcolumn/.try}% - \ifodd\pgfmatrixcurrentcolumn% - \tikzset{every odd column/.try}% - \else% - \tikzset{every even column/.try}% - \fi% - \tikzset{row \the\pgfmatrixcurrentrow/.try}% - \ifodd\pgfmatrixcurrentrow% - \tikzset{every odd row/.try}% - \else% - \tikzset{every even row/.try}% - \fi% - \tikzset{row \the\pgfmatrixcurrentrow\space column \the\pgfmatrixcurrentcolumn/.try}% + \pgfutil@for\pgf@temp:=\tikz@common@matrix@code@styleorder\do{% + \toks0=\expandafter{\romannumeral-`0\expandafter\pgfutil@trimspaces\expandafter{\pgf@temp}}% + \def\pgf@marshal{}% + \pgfutil@ifempty\pgf@temp{}{% + \edef\pgf@marshal{\noexpand\tikzset{matrix/inner style/.cd,\the\toks0}}% + }% + \pgf@marshal + }% \tikz@options% }% \def\pgfmatrixendcode{% @@ -5431,7 +5459,13 @@ \tikz@shapebordertrue% \def\tikz@shapeborder@name{\tikz@pp@name{#2}}% \fi% - \fi + \else\ifcsname pgf@sh@ns@#2\endcsname + \expandafter\ifx\csname pgf@sh@ns@#2\endcsname\tikz@coordinate@text% + \else + \tikz@shapebordertrue% + \def\tikz@shapeborder@name{#2}% + \fi% + \fi\fi \fi% \edef\tikz@marshal{\noexpand#1{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}% \tikz@marshal% diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlElectric.lua b/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlElectric.lua index 47e3cee45da..c9f129c28d2 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlElectric.lua +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlElectric.lua @@ -39,16 +39,24 @@ declare { Two typical effects of increasing the |electric charge| are distortion of symmetries and an upscaling of the drawings. "]], - examples = {[[" - \tikz \graph [spring electrical layout, horizontal=0 to 1] - { 0 [electric charge=1] -- subgraph C_n [n=10] }; - "]],[[" - \tikz \graph [spring electrical layout, horizontal=0 to 1] - { 0 [electric charge=5] -- subgraph C_n [n=10] }; - "]],[[" - \tikz \graph [spring electrical layout, horizontal=0 to 1] - { [clique] 1 [electric charge=5], 2, 3, 4 }; - "]] + examples = { + { + options = [["preamble={\usetikzlibrary{graphs,graphdrawing} \usegdlibrary{force}}"]], + code = [[" + \tikz \graph [spring electrical layout, horizontal=0 to 1] + { 0 [electric charge=1] -- subgraph C_n [n=10] }; + "]] + },{ + code = [[" + \tikz \graph [spring electrical layout, horizontal=0 to 1] + { 0 [electric charge=5] -- subgraph C_n [n=10] }; + "]] + },{ + code = [[" + \tikz \graph [spring electrical layout, horizontal=0 to 1] + { [clique] 1 [electric charge=5], 2, 3, 4 }; + "]] + } } } diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/experimental/tikzlibrarygraphdrawing.evolving.code.tex b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/experimental/tikzlibrarygraphdrawing.evolving.code.tex index 9d9055dfe96..efa214a12ef 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/experimental/tikzlibrarygraphdrawing.evolving.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/experimental/tikzlibrarygraphdrawing.evolving.code.tex @@ -1,4 +1,4 @@ -% Copyright 2016 by Malte Skambath +% Copyright 2018 by Malte Skambath % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.circular.code.tex b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.circular.code.tex index cdcd7a54cb3..2fec25131d6 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.circular.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.circular.code.tex @@ -1,5 +1,5 @@ -% Copyright 2010 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster -% Copyright 2011 by Till Tantau +% Copyright 2019 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.code.tex b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.code.tex index 385c9705953..63efd352f1a 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.code.tex @@ -1,5 +1,5 @@ -% Copyright 2010 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster -% Copyright 2011 by Till Tantau +% Copyright 2018 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.examples.code.tex b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.examples.code.tex index 90ebe0f15af..3a1308320cf 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.examples.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.examples.code.tex @@ -1,4 +1,4 @@ -% Copyright 2012 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.force.code.tex b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.force.code.tex index 2ffad530012..a06d99c5d5d 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.force.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.force.code.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Jannis Pohlmann +% Copyright 2019 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.layered.code.tex b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.layered.code.tex index 940c8236cf3..322296b11b8 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.layered.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.layered.code.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Jannis Pohlmann +% Copyright 2019 by Jannis Pohlmann % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.trees.code.tex b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.trees.code.tex index 87ff6eee233..2c05576a86d 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.trees.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.trees.code.tex @@ -1,5 +1,5 @@ -% Copyright 2010 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster -% Copyright 2011 by Till Tantau +% Copyright 2019 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/tikzlibrarygraphdrawing.code.tex b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/tikzlibrarygraphdrawing.code.tex index 0967f817d27..32d1b1b7a09 100644 --- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/tikzlibrarygraphdrawing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/tex/tikzlibrarygraphdrawing.code.tex @@ -1,5 +1,5 @@ -% Copyright 2010 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster -% Copyright 2011 by Till Tantau +% Copyright 2018 by Renée Ahrens, Olof Frahm, Jens Kluttig, Matthias Schulz, Stephan Schuster +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.barcharts.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.barcharts.code.tex index da124ee8401..3ac0d476f94 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.barcharts.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.barcharts.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.formats.functions.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.formats.functions.code.tex index 540901936fe..d1e87cb1f7f 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.formats.functions.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.formats.functions.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.polar.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.polar.code.tex index f56ebe3e7f0..a7d493491ff 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.polar.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.polar.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.footprints.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.footprints.code.tex index 369a0ecbd09..4fc6565c1b9 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.footprints.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.footprints.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.fractals.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.fractals.code.tex index 2327c770295..8355460b54c 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.fractals.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.fractals.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex index 6a17dbe3c0a..23b7ff672ed 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % @@ -89,6 +89,7 @@ \pgfinterruptpath% \pgfscope% \let\pgf@lib@dec@mark@marks=\pgfutil@empty% + \pgfslopedattimefalse \pgf@lib@dec@computed@action% \endpgfscope% \endpgfinterruptpath% diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathmorphing.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathmorphing.code.tex index 72ed4ca6b6e..bdc2752cb8e 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathmorphing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathmorphing.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathreplacing.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathreplacing.code.tex index 10f8371c470..f028ec6c375 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathreplacing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathreplacing.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow and Till Tantau +% Copyright 2018 by Mark Wibrow and Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.shapes.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.shapes.code.tex index 08781d04fb8..2341ee2c554 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.shapes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.shapes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.text.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.text.code.tex index 4d31c46fcfc..301fa247845 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.text.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.text.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/luamath/pgflibraryluamath.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/luamath/pgflibraryluamath.code.tex index 7a94b6f8fde..cd991dab4c5 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/luamath/pgflibraryluamath.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/luamath/pgflibraryluamath.code.tex @@ -1,5 +1,5 @@ -% Copyright 2011 by Christophe Jorssen and Mark Wibrow -% Copyright 2014 by Christian Feuersänger +% Copyright 2019 by Christophe Jorssen and Mark Wibrow +% Copyright 2019 by Christian Feuersänger % % This file may be distributed and/or modified % @@ -221,7 +221,7 @@ \pgfluamath@makeparserinactive \else \pgfmath@error{Sorry, you need the luaTeX engine to use the - luamath library}% + luamath library}{}% \fi}, luamath/parser and computation/.code={% \pgfutil@ifluatex @@ -229,7 +229,7 @@ \pgfluamath@makeparseractive \else \pgfmath@error{Sorry, you need the luaTeX engine to use the - luamath library}% + luamath library}{}% \fi}, luamath/off/.code={% \pgfluamath@makecomputationinactive @@ -245,7 +245,7 @@ \pgfluamath@makeparseractive \else \pgfmath@error{Sorry, you need the luaTeX engine to use the - luamath library}% + luamath library}{}% \fi }, luamath/output format/.is choice, diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.code.tex index 92d2f1e6864..96216c5f244 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex index af509c1af64..dbe2fb77d47 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.spaced.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.spaced.code.tex index 166ed875333..f125afddca4 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.spaced.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.spaced.code.tex @@ -1,4 +1,4 @@ -% Copyright 2012 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarybbox.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarybbox.code.tex deleted file mode 100644 index 38690faed14..00000000000 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarybbox.code.tex +++ /dev/null @@ -1,94 +0,0 @@ -% Copyright 2019 by an anonymous contributor -% -% This file may be distributed and/or modified -% -% 1. under the LaTeX Project Public License and/or -% 2. under the GNU General Public License. -% -% See the file doc/generic/pgf/licenses/LICENSE for more details. - -\global\let\pgf@bbox@lt@curveto@normal\pgf@lt@curveto -\global\let\pgf@bbox@nlt@curveto@normal\pgf@nlt@curveto - -\pgfqkeys{/pgf}{bezier bounding box/.is if=pgf@bbox@switch@} - -\def\pgf@bbox@switch@false{% - \let\pgf@lt@curveto \pgf@bbox@lt@curveto@normal - \let\pgf@nlt@curveto\pgf@bbox@nlt@curveto@normal -} - -\def\pgf@bbox@switch@true{% - \let\pgf@lt@curveto \pgf@bbox@curveto - \let\pgf@nlt@curveto\pgf@bbox@curveto -} - -\def\pgf@bbox@curveto#1#2#3#4#5#6{% - % extrema in x - \pgfmathsetmacro{\pgf@temp@b}{abs(\pgf@path@lastx-#5-3*#1+3*#3)}% - % ^^^ this is used for the denominator below, cannot become too small - \pgfmathsetmacro{\pgf@temp@c}{max(1+\pgf@path@lastx,max(#1,max(#3,#5)))}% - % ^^^ in order to avoid dimension too large errors from squaring lengths in pt - \pgfmathparse{((#1/\pgf@temp@c)*(#1/\pgf@temp@c)-1*((#1/\pgf@temp@c)*(#3/\pgf@temp@c))+(#3/\pgf@temp@c)*(#3/\pgf@temp@c)-1*((#1/\pgf@temp@c)*(#5/\pgf@temp@c))+(-(#3/\pgf@temp@c)+(#5/\pgf@temp@c))*(\pgf@path@lastx/\pgf@temp@c))}% - \pgfutil@tempdima=\pgfmathresult pt\relax% - % ^^^ discriminant - \ifdim\pgf@temp@b pt<0.01pt\relax% - % approximately linear - \pgfmathparse{abs(2*(#1)-2*(#3)+(#5))}% - \pgfutil@tempdimb=\pgfmathresult pt\relax% - \ifdim\pgfutil@tempdimb<0.1pt\relax% - % if the denominator is very small, t is *likely* large but could be 0/0 - \else - \pgfmathsetmacro{\pgf@temp@a}{(2*(#1)-3*(#3)+(#5))/(2*(#1)-2*(#3)+(#5))}% - \pgfmathparse{\pgf@path@lastx*pow(1-\pgf@temp@a,3)+3*#1*pow(1-\pgf@temp@a,2)*\pgf@temp@a+3*#3*(1-\pgf@temp@a)*\pgf@temp@a*\pgf@temp@a+#5*pow(\pgf@temp@a,3)}% - \pgfutil@tempdimb=\pgfmathresult pt\relax% - \pgf@protocolsizes{\pgfutil@tempdimb}{#6}% - \fi% - \else - \ifdim\pgfutil@tempdima<0pt\relax% negative discriminant -> no turning point - \else - \pgfmathsetmacro{\pgf@temp@a}{min(1,max(0,(\pgf@path@lastx-2*#1+#3-\pgf@temp@c*sqrt(\pgfutil@tempdima))/(\pgf@path@lastx-#5-3*#1+3*#3)))}% - \pgfmathparse{\pgf@path@lastx*pow(1-\pgf@temp@a,3)+3*#1*pow(1-\pgf@temp@a,2)*\pgf@temp@a+3*#3*(1-\pgf@temp@a)*\pgf@temp@a*\pgf@temp@a+#5*pow(\pgf@temp@a,3)}% - \pgfutil@tempdimb=\pgfmathresult pt\relax% - \pgf@protocolsizes{\pgfutil@tempdimb}{#6}% - \pgfmathsetmacro{\pgf@temp@a}{min(1,max(0,(\pgf@path@lastx-2*#1+#3+\pgf@temp@c*sqrt(\pgfutil@tempdima))/(\pgf@path@lastx-#5-3*#1+3*#3)))}% - \pgfmathparse{\pgf@path@lastx*pow(1-\pgf@temp@a,3)+3*#1*pow(1-\pgf@temp@a,2)*\pgf@temp@a+3*#3*(1-\pgf@temp@a)*\pgf@temp@a*\pgf@temp@a+#5*pow(\pgf@temp@a,3)}% - \pgfutil@tempdimb=\pgfmathresult pt\relax% - \pgf@protocolsizes{\pgfutil@tempdimb}{#6}% - \fi% - \fi - %%%%%%%%%%%%%%%%%%%%%%%%%%% - % extrema in y (completely analogous to the above) - \pgfmathsetmacro{\pgf@temp@b}{abs(\pgf@path@lasty-#6-3*#2+3*#4)}% - \pgfmathsetmacro{\pgf@temp@c}{max(1+\pgf@path@lasty,max(#2,max(#4,#6)))}% - \pgfmathparse{((#2/\pgf@temp@c)*(#2/\pgf@temp@c)-1*((#2/\pgf@temp@c)*(#4/\pgf@temp@c))+(#4/\pgf@temp@c)*(#4/\pgf@temp@c)-1*((#2/\pgf@temp@c)*(#6/\pgf@temp@c))+(-(#4/\pgf@temp@c)+(#6/\pgf@temp@c))*(\pgf@path@lasty/\pgf@temp@c))}% - \pgfutil@tempdima=\pgfmathresult pt\relax% - % ^^^ discriminant - \ifdim\pgf@temp@b pt<0.01pt\relax% - % approximately linear - \pgfmathparse{abs(2*(#2)-2*(#4)+(#6))}% - \pgfutil@tempdimb=\pgfmathresult pt\relax% - \ifdim\pgfutil@tempdimb<0.1pt\relax% - % if the denominator is very small, t is *likely* large but could be 0/0 - \else - \pgfmathsetmacro{\pgf@temp@a}{(2*(#2)-3*(#4)+(#6))/(2*(#2)-2*(#4)+(#6))}% - \pgfmathparse{\pgf@path@lasty*pow(1-\pgf@temp@a,3)+3*#2*pow(1-\pgf@temp@a,2)*\pgf@temp@a+3*#4*(1-\pgf@temp@a)*\pgf@temp@a*\pgf@temp@a+#6*pow(\pgf@temp@a,3)}% - \pgfutil@tempdimb=\pgfmathresult pt\relax% - \pgf@protocolsizes{#5}{\pgfutil@tempdimb}% - \fi% - \else - \ifdim\pgfutil@tempdima<0pt\relax% negative discriminant -> no turning point - \else - \pgfmathsetmacro{\pgf@temp@a}{min(1,max(0,(\pgf@path@lasty-2*#2+#4-\pgf@temp@c*sqrt(\pgfutil@tempdima))/(\pgf@path@lasty-#6-3*#2+3*#4)))}% - \pgfmathparse{\pgf@path@lasty*pow(1-\pgf@temp@a,3)+3*#2*pow(1-\pgf@temp@a,2)*\pgf@temp@a+3*#4*(1-\pgf@temp@a)*\pgf@temp@a*\pgf@temp@a+#6*pow(\pgf@temp@a,3)}% - \pgfutil@tempdimb=\pgfmathresult pt\relax% - \pgf@protocolsizes{#5}{\pgfutil@tempdimb}% - \pgfmathsetmacro{\pgf@temp@a}{min(1,max(0,(\pgf@path@lasty-2*#2+#4+\pgf@temp@c*sqrt(\pgfutil@tempdima))/(\pgf@path@lasty-#6-3*#2+3*#4)))}% - \pgfmathparse{\pgf@path@lasty*pow(1-\pgf@temp@a,3)+3*#2*pow(1-\pgf@temp@a,2)*\pgf@temp@a+3*#4*(1-\pgf@temp@a)*\pgf@temp@a*\pgf@temp@a+#6*pow(\pgf@temp@a,3)}% - \pgfutil@tempdimb=\pgfmathresult pt\relax% - \pgf@protocolsizes{#5}{\pgfutil@tempdimb}% - \fi% - \fi - \pgf@protocolsizes{\pgf@path@lastx}{\pgf@path@lasty}% - \pgf@protocolsizes{#5}{#6}% - \pgfsyssoftpath@curveto{\the#1}{\the#2}{\the#3}{\the#4}{\the#5}{\the#6}% -} diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex index 941704d1767..12f26ccbdf8 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfadings.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfadings.code.tex index 8d25f73b37d..c8ce556b406 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfadings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfadings.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfixedpointarithmetic.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfixedpointarithmetic.code.tex index b860192f45c..b10c7b795cb 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfixedpointarithmetic.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfixedpointarithmetic.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfpu.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfpu.code.tex index 270d9af8b5c..c3bb9582c51 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfpu.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryfpu.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008/2009 by Christian Feuersaenger +% Copyright 2008/2019 by Christian Feuersaenger % % This file may be distributed and/or modified % @@ -88,6 +88,15 @@ \let\pgfmathfloat@relthresh=\pgfmathresult }, fpu/rel thresh=1e-4, + fpu/install only/.code={ + \pgfmath@warning{The key `/pgf/fpu/install only' is experimental and might % + change or disappear at any point!}% + \edef\pgf@list{#1}% + \pgfutil@for\pgf@temp:=\pgf@list\do{% + \expandafter\pgfmath@float@install@singlefunction\expandafter{% + \romannumeral-`0\expandafter\pgfutil@trimspaces\expandafter{\pgf@temp}}% + }% + }, }% \pgfmathfloatcreate{1}{1.0}{0}\let\pgfmathfloatscale=\pgfmathresult @@ -292,6 +301,40 @@ \pgfmathfloat@install\pgfmathscientific=\pgfmathfloatscientific% }% +\def\pgfmath@float@install@singlefunction#1{% + \ifcsname pgfmath@function@#1\endcsname\else + \pgfmath@error{The function `#1' does not exist}{}% + \fi + \pgfmath@toks={}% + \pgfmathloop + \ifnum\pgfmathcounter>\csname pgfmath@operation@#1@arity\endcsname\relax% + \else + \expandafter\pgfmath@addto@toks\expandafter{\pgfmath@char@hash}% + \expandafter\pgfmath@addto@toks\expandafter{\pgfmathcounter}% + \repeatpgfmathloop + \edef\pgfmath@head{\noexpand\def\expandafter\noexpand\csname pgfmath#1@\endcsname\the\pgfmath@toks}% + \pgfmath@toks={}% + \def\pgfmath@arguments{}% + \pgfmathloop + \ifnum\pgfmathcounter>\csname pgfmath@operation@#1@arity\endcsname\relax% + \else + \pgfmath@addto@toks{\pgfmathfloatparsenumber}% + \expandafter\expandafter\expandafter\pgfmath@addto@toks + \expandafter\expandafter\expandafter{\expandafter\expandafter\expandafter + {\expandafter\pgfmath@char@hash\pgfmathcounter}}% + \pgfmath@addto@toks{\let}% + \expandafter\pgfmath@addto@toks\expandafter{% + \csname pgfmath@argument@\pgfmathcounter\endcsname=\pgfmathresult}% + \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter + \pgfmath@arguments\expandafter\expandafter\expandafter{\expandafter + \pgfmath@arguments\expandafter{\csname pgfmath@argument@\pgfmathcounter\endcsname}}% + \repeatpgfmathloop + \expandafter\pgfmath@addto@toks\expandafter{\csname pgfmathfloat#1@\expandafter\endcsname\pgfmath@arguments}% + \pgfmath@addto@toks{\pgfmathfloattofixed{\pgfmathresult}}% + \edef\pgfmath@body{{\the\pgfmath@toks}}% + \expandafter\pgfmath@head\pgfmath@body +} + \def\pgfmathfloat@iftrue{% \if Y\pgfmathfloatparse@output@choice \let\pgfmathfloat@@iftrue@v=\pgfmathfloatone @@ -864,7 +907,7 @@ \def\pgfmathfloattoextentedprecision#1{% \begingroup \pgfmathfloattoextentedprecision@a{#1}% - \pgfmathfloatcreate{\pgfmathfloat@a@S}{\pgfmathresult}{\pgfmathfloat@a@E}% + \pgfmathfloatcreate{\the\pgfmathfloat@a@S}{\pgfmathresult}{\the\pgfmathfloat@a@E}% \pgfmath@smuggleone\pgfmathresult \endgroup }% diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryintersections.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryintersections.code.tex index 81b7d29c37d..c920dbae886 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryintersections.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryintersections.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -352,7 +352,9 @@ \pgf@iflinesintersect{#1}{#2}{#3}{#4}% {% \pgfextract@process\pgf@intersect@solution@candidate{% + \pgftransforminvert % pgf@x and pgf@y are already assigned by \pgf@iflinesintersect + \pgfpointtransformed{\pgfqpoint{\pgf@x}{\pgf@y}}% }% \pgf@ifsolution@duplicate{\pgf@intersect@solution@candidate}{% % ah - we a duplicate. Apparently, we have a hit on an diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarylindenmayersystems.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarylindenmayersystems.code.tex index bec0c855cda..a458eb8e6ab 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarylindenmayersystems.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarylindenmayersystems.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex index 908d7490030..a2dba8e0763 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.meta.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.meta.code.tex index d04e75ab238..00de962abe6 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.meta.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.meta.code.tex @@ -1,4 +1,4 @@ -% Copyright 2015 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -185,7 +185,7 @@ \pgf@pat@@checkname#1[]\pgf@patstop}% \def\pgf@pat@@checkname#1[#2]#3\pgf@patstop{% - \def\pgf@pat@onlinename{#1}% + \expandafter\def\expandafter\pgf@pat@onlinename\expandafter{\romannumeral-`0\pgfutil@trimspaces{#1}}% \def\pgf@pat@onlineoptions{#2}% }% @@ -217,7 +217,7 @@ \def\pgf@pat@macroaskeys#1#2{% \pgfutil@toks@\expandafter{#2}% - \edef\pgf@marshal{\noexpand\pgfkeys{#1, \the\pgfutil@toks@}}% + \edef\pgf@marshal{\noexpand\pgfkeys{,#1,\the\pgfutil@toks@}}% \pgf@marshal% }% \def\pgfsetfillpattern#1#2{% @@ -298,11 +298,11 @@ {\pgfkeysvalueof{/pgf/pattern keys/distance}}% {\pgfkeysvalueof{/pgf/pattern keys/distance}}}, tile transformation={% - \pgftransformrotate{\pgfkeysvalueof{/pgf/pattern keys/angle}}% \pgftransformshift{% \pgfpoint {\pgfkeysvalueof{/pgf/pattern keys/xshift}}% - {\pgfkeysvalueof{/pgf/pattern keys/yshift}}}}, + {\pgfkeysvalueof{/pgf/pattern keys/yshift}}}% + \pgftransformrotate{\pgfkeysvalueof{/pgf/pattern keys/angle}}}, defaults={ distance/.initial=3pt, angle/.initial=0, @@ -340,11 +340,11 @@ {\pgfkeysvalueof{/pgf/pattern keys/distance}}% {\pgfkeysvalueof{/pgf/pattern keys/distance}}}, tile transformation={% - \pgftransformrotate{\pgfkeysvalueof{/pgf/pattern keys/angle}}% \pgftransformshift{% \pgfpoint {\pgfkeysvalueof{/pgf/pattern keys/xshift}}% - {\pgfkeysvalueof{/pgf/pattern keys/yshift}}}}, + {\pgfkeysvalueof{/pgf/pattern keys/yshift}}}% + \pgftransformrotate{\pgfkeysvalueof{/pgf/pattern keys/angle}}}, defaults={ distance/.initial=3pt, angle/.initial=0, @@ -384,11 +384,11 @@ {\pgfkeysvalueof{/pgf/pattern keys/distance}}% {\pgfkeysvalueof{/pgf/pattern keys/distance}}}, tile transformation={% - \pgftransformrotate{\pgfkeysvalueof{/pgf/pattern keys/angle}}% \pgftransformshift{% \pgfpoint {\pgfkeysvalueof{/pgf/pattern keys/xshift}}% - {\pgfkeysvalueof{/pgf/pattern keys/yshift}}}}, + {\pgfkeysvalueof{/pgf/pattern keys/yshift}}}% + \pgftransformrotate{\pgfkeysvalueof{/pgf/pattern keys/angle}}}, defaults={ distance/.initial=3pt, angle/.initial=0, @@ -427,11 +427,11 @@ {\pgfkeysvalueof{/pgf/pattern keys/distance}}% {\pgfkeysvalueof{/pgf/pattern keys/distance}}}, tile transformation={% - \pgftransformrotate{\pgfkeysvalueof{/pgf/pattern keys/angle}}% \pgftransformshift{% \pgfpoint {\pgfkeysvalueof{/pgf/pattern keys/xshift}}% - {\pgfkeysvalueof{/pgf/pattern keys/yshift}}}}, + {\pgfkeysvalueof{/pgf/pattern keys/yshift}}}% + \pgftransformrotate{\pgfkeysvalueof{/pgf/pattern keys/angle}}}, defaults={ distance/.initial=3mm, angle/.initial=0, diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex index 3f0fc8d268d..d0b9a388eb1 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryplotmarks.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryplotmarks.code.tex index 24bc7b8de72..c9e6c141a51 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryplotmarks.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryplotmarks.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryprofiler.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryprofiler.code.tex index fe98a5f3f2e..d6327db0628 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryprofiler.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryprofiler.code.tex @@ -2,7 +2,7 @@ % % TeX profiling library % -% Copyright 2010 by Christian Feuersänger. +% Copyright 2018 by Christian Feuersänger. % % This program is free software: you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryshadings.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryshadings.code.tex index 02c2f8c1941..81e0386a605 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryshadings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibraryshadings.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and others +% Copyright 2019 by Till Tantau and others % CMYK and grayscale shadings adaptation copyright 2019 by David Purton % % This file may be distributed and/or modified diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarysnakes.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarysnakes.code.tex index f964dca2751..c45140535e6 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarysnakes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarysnakes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarysvg.path.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarysvg.path.code.tex index 208b42de704..e802ca778e3 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarysvg.path.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarysvg.path.code.tex @@ -1,4 +1,4 @@ -% Copyright 2009 by Till Tantau +% Copyright 2019 by Till Tantau % Copyright 2019 by Jonathan P. Spratte % % This file may be distributed and/or modified diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytimelines.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytimelines.code.tex index dd9b38fdc46..0e9afce0f2b 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytimelines.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytimelines.code.tex @@ -1,4 +1,4 @@ -% Copyright 2015 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.IEC.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.IEC.code.tex index 62b1a260299..0d25e307e46 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.IEC.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.IEC.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and others Wibrow +% Copyright 2018 by Till Tantau and others Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.code.tex index 4cfa4eed7d6..c8f95ff4bfe 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and others Wibrow +% Copyright 2018 by Till Tantau and others Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.IEC.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.IEC.code.tex index 9b964996d70..69f27e7d0d1 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.IEC.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.IEC.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.US.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.US.code.tex index 3a496324f81..3f0d668ca09 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.US.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.US.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.code.tex index 68005a61478..474a183d6f7 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex index 0859687f9d4..c2f06697c69 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau and Mark Wibrow +% Copyright 2018 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex index 4cf4b1346b8..72d9761a190 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2018 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.code.tex index ee41b301abc..dace51bf0b3 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex index 08ef867ff0e..6bc42863239 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau and Mark Wibrow +% Copyright 2018 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex index fe64c707c1a..4096c3ded85 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex index 2866923c529..481e65094f9 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau and Mark Wibrow +% Copyright 2018 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex index a6e925346d6..7fcba414efb 100644 --- a/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau and Mark Wibrow +% Copyright 2018 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/lua/pgf/manual/DocumentParser.lua b/Master/texmf-dist/tex/generic/pgf/lua/pgf/manual/DocumentParser.lua index d2f6780822c..bd2a7026a4a 100644 --- a/Master/texmf-dist/tex/generic/pgf/lua/pgf/manual/DocumentParser.lua +++ b/Master/texmf-dist/tex/generic/pgf/lua/pgf/manual/DocumentParser.lua @@ -159,7 +159,17 @@ local function process_examples(t) local n = {} for i=1,#t do - n[i] = process_string(strip_quotes(t[i])) + local code, options + if type(t[i]) == "table" then + code = assert(t[i].code) + options = t[i].options + else + code = t[i] + end + n[i] = { + options = process_string(strip_quotes(options)), + code = process_string(strip_quotes(code)) + } end return n end @@ -391,8 +401,9 @@ DocumentParser.addRenderer ( print_on_output(output, "\\par\\smallskip\\emph{Example" .. (((#e>1) and "s") or "") .. "}\\par") for _,example in ipairs(e) do - print_on_output(output, "\\begin{codeexample}[]") - print_lines_on_output(output, example) + local opts = table.concat(example.options or {}, "") + print_on_output(output, "\\begin{codeexample}[" .. opts .. "]") + print_lines_on_output(output, example.code) print_on_output(output, "\\end{codeexample}") end end @@ -417,8 +428,12 @@ DocumentParser.addRenderer ( function print_lines_on_output(output, lines) - for _,l in ipairs(lines or {}) do - output[#output+1] = l + for n,l in ipairs(lines or {}) do + if (n == 1 or n == #lines) and l == "" then + -- skip leading and trailing blank lines + else + output[#output+1] = l + end end end diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex index fb629421d54..7bfdf58a6c9 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex index 58c51558c8a..bb4d1022e54 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -339,7 +339,7 @@ % \pgfmathpointreflectalongaxis % -% Reflects point #2 around an axis centered on #2 at an angle #3. +% Reflects point #1 around an axis centered on #2 at an angle #3. % \def\pgfmathreflectpointalongaxis#1#2#3{% \pgf@process{% diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex index bda29cb51b7..a3a36d82541 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Christian Feuersaenger +% Copyright 2019 by Christian Feuersaenger % % This file may be distributed and/or modified % @@ -1214,7 +1214,7 @@ fixed zerofill=false,% useless here! sci zerofill=false}% \ifx\pgfmathprintnumber@issci\pgfmathprintnumber@RELATIVE@issci - \pgfmath@error{The '/pgf/number format/every relative' style should set a valid display style}% + \pgfmath@error{The '/pgf/number format/every relative' style should set a valid display style}{}% \fi \let\pgfmathfloat@round@precision@orig=\pgfmathfloat@round@precision \def\pgfmathfloat@round@precision{9999}% @@ -1312,7 +1312,7 @@ % The numerator and denominator is always a number (not empty) \def\pgfmathfloatgetfrac#1{% \pgfutil@ifundefined{pgfmathfloatmultiply@}{% - \pgfmath@PackageError{Sorry, the number format 'frac' requires '\string\usetikzlibrary{fpu}' (and, optionally, \string\usepackage{fp}) in order to work correctly}% + \pgfmath@error{Sorry, the number format 'frac' requires '\string\usetikzlibrary{fpu}' (and, optionally, \string\usepackage{fp}) in order to work correctly}{}% \edef\pgfmathresult{{#1}{0}{1}}% }{% \pgfmathfloatgetfrac@{#1}% @@ -1435,7 +1435,7 @@ \pgfmathfloattofixed\pgfmathresult \pgf@xa=\pgfmathresult pt \multiply\pgf@xa by\pgfmathresultdenom - \edef\pgfmathfloat@scaled@numerator{\pgf@sys@tonumber\pgf@xa}% + \edef\pgfmathfloat@scaled@numerator{\pgfmath@tonumber\pgf@xa}% \expandafter\pgfmathfloat@loc@@to@int\pgfmathfloat@scaled@numerator\relax{\pgfmathresultnumerator}% \fi \ifpgfmathprintnumber@frac@whole diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex index 9370a219fe3..fcf5503b36b 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -109,7 +109,7 @@ \divide\c@pgfmath@counta by\pgfmath@base\relax% \let\pgfmath@next\pgfmathbasetodec@@@% \else - \pgfmath@error{Digit `#1' invalid for base \pgfmath@base}% + \pgfmath@error{Digit `#1' invalid for base \pgfmath@base}{}% \let\pgfmath@next=\relax% \fi% \fi% @@ -245,10 +245,10 @@ \def\pgfmath@checkbase#1{% \ifnum#1<2\relax% - \pgfmath@error{Cannot process numbers in base `#1'.}% + \pgfmath@error{Cannot process numbers in base `#1'.}{}% \else% \ifnum#1>36\relax% - \pgfmath@error{Cannot process numbers in base `#1'.}% + \pgfmath@error{Cannot process numbers in base `#1'.}{}% \fi% \fi} @@ -256,7 +256,7 @@ \expandafter\pgfmath@checknumber@#1\pgfmath@} \def\pgfmath@checknumber@#1#2\pgfmath@{% \ifx#1-% - \pgfmath@error{Cannot process negative numbers.}% + \pgfmath@error{Cannot process negative numbers.}{}% \fi} % \pgfmath@ensurenumberlength diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex index 64dbe2b09a7..1607c386e85 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -70,7 +70,7 @@ \let\pgfmath@sign=\pgfmath@empty% \ifdim0pt=\pgfmath@y% \pgfmath@error{You've asked me to divide `#1' by `#2', % - but I cannot divide any number by `#2'}% + but I cannot divide any number by `#2'}{}% \fi% \afterassignment\pgfmath@xa% \c@pgfmath@counta\the\pgfmath@y\relax% diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex index fc08640e4f3..417ede069dd 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -52,6 +52,7 @@ {\expandafter\noexpand\csname pgfmath#1@\endcsname}% {\csname pgfmath@operation@#1@arity\endcsname}% }% + \pgfkeysvalueof{/pgf/declare function/execute at begin function}% \pgfmath@marshal% } @@ -61,6 +62,7 @@ % #4 - code for function <name>. % \def\pgfmath@@declarefunction#1#2#3#4{% Function of arity 0 - 9. + \pgfkeysvalueof{/pgf/declare function/execute at end function}% \ifcase#3\relax% \def#1{#2}% \def\pgfmath@@head{\def#2}% @@ -109,7 +111,27 @@ \pgfkeys{% /pgf/declare function/.code={% \pgfmath@local@functions#1@=@;% - } + }, + /pgf/declare function/execute at begin function/.initial={}, + /pgf/declare function/execute at end function/.initial={}, + /pgf/declare function/ignore spaces/.is choice, + /pgf/declare function/ignore spaces/.default=true, + /pgf/declare function/ignore spaces/true/.style={% + /pgf/declare function/execute at begin function={% + \begingroup + \catcode`\^^I=9\relax + \catcode`\ =9\relax + \catcode`\~=10\relax + \endlinechar=`\ \relax + }, + /pgf/declare function/execute at end function={% + \endgroup + }, + }, + /pgf/declare function/ignore spaces/false/.style={% + /pgf/declare function/execute at begin function={}, + /pgf/declare function/execute at end function={}, + }, } \def\pgfmath@local@gobbleone#1{} diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex index f6e69993e8c..a0632670d8c 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex index bab8fefd4eb..6d1ec5b6ab8 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex index 03be2abfd33..66bdd72b71e 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -239,7 +239,7 @@ % #2 - the name of the list. % \def\pgfmathrandomitem#1#2{% - \pgfmath@ifundefined{pgfmath@randomlist@#2}{\pgfmath@error{Unknown random list `#2'}}{% + \pgfmath@ifundefined{pgfmath@randomlist@#2}{\pgfmath@error{Unknown random list `#2'}{}}{% \edef\pgfmath@randomlistlength{\csname pgfmath@randomlist@#2\endcsname}% \pgfmathrandominteger{\pgfmath@randomtemp}{1}{\pgfmath@randomlistlength}% \def#1{\csname pgfmath@randomlist@#2@\pgfmath@randomtemp\endcsname}}} diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex index 4bd05c18c41..120e971c8c8 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex index 76b58bc0f16..b76c5b440ce 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Mark Wibrow +% Copyright 2019 by Mark Wibrow % % This file may be distributed and/or modified % @@ -249,7 +249,7 @@ \begingroup% \pgfmath@x=#1pt % \pgfmath@xa\pgfmath@x% - \edef\pgf@temp{\pgf@sys@tonumber\pgfmath@x}% + \edef\pgf@temp{\pgfmath@tonumber\pgfmath@x}% % compute lossless '*1000' operation: \expandafter\pgfmath@multiply@thousand\pgf@temp 000\relax \pgfmath@x=\pgfmathresult pt % @@ -306,7 +306,7 @@ \begingroup% \pgfmath@x#1pt\relax% \pgfmath@xa\pgfmath@x% - \edef\pgf@temp{\pgf@sys@tonumber\pgfmath@x}% + \edef\pgf@temp{\pgfmath@tonumber\pgfmath@x}% % compute lossless '*1000' operation: \expandafter\pgfmath@multiply@thousand\pgf@temp 000\relax \pgfmath@x=\pgfmathresult pt % @@ -340,7 +340,7 @@ \pgfmath@x\pgfmathresult pt\relax% \fi% % compute lossless '*1000' operation: - \edef\pgf@temp{\pgf@sys@tonumber\pgfmath@x}% + \edef\pgf@temp{\pgfmath@tonumber\pgfmath@x}% \expandafter\pgfmath@multiply@thousand\pgf@temp 000\relax \pgfmath@x=\pgfmathresult pt % \pgfmath@table@lookup{\pgfmath@x}{pgfmath@atan@}{1001}%xxx diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathode.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathode.code.tex index cb3d0d26ca8..f072c2361ef 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathode.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathode.code.tex @@ -1,4 +1,4 @@ -% Copyright 2011 by Christophe Jorssen +% Copyright 2019 by Christophe Jorssen % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex index e50dfd615e3..439e62e4370 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex @@ -235,6 +235,16 @@ \pgfmath@tokens@make{dimexpr}{\dimexpr\glueexpr} \fi \pgfmath@tokens@make{unit}{{bp}{cc}{cm}{dd}{em}{ex}{in}{mm}{pc}{pt}{sp}} +\ifx\pdftexversion\@undefined\else % for pdfTeX + \pgfmath@tokens@make{unit}{{nc}{nd}{px}} +\fi +\ifx\directlua\@undefined\else % for LuaTeX + \pgfmath@tokens@make{unit}{{nc}{nd}{px}} +\fi +\ifx\kanjiskip\@undefined\else % for pTeX, upTeX + \pgfmath@tokens@make{unit}{{H}{Q}{zh}{zw}} +\fi +% \pgfmath@tokens@make{mathunit}{{mu}} \pgfmath@tokens@make{numeric}{.0123456789} \pgfmath@tokens@make{number}{0123456789} @@ -460,7 +470,10 @@ \else% \expandafter\ifx\csname pgfmath@token@numeric@\expandafter\string\pgfmath@token\endcsname\relax% % It isn't numeric (i.e., 012345679.), so it might be units... + % first double-character units... \expandafter\ifx\csname pgfmath@token@unit@\pgfmath@token\expandafter\string\pgfmath@token@next\endcsname\relax% + % then single-character units... + \expandafter\ifx\csname pgfmath@token@unit@\pgfmath@token\endcsname\relax% % ...or the exponent characters... \expandafter\ifx\csname pgfmath@token@exponent@\pgfmath@token\endcsname\relax% % ...or a base prefix... @@ -498,7 +511,14 @@ \else% ... and here, it is the exponent characters. \let\pgfmath@parse@next=\pgfmath@parse@exponent% \fi% - \else% ...but here it is units. + \else% ...but here it is single-character units. + \global\pgfmathunitsdeclaredtrue% + \pgfmath@dimen=\pgfmath@number\pgfmath@token\relax% + \edef\pgfmathresult{\pgfmath@tonumber{\pgfmath@dimen}}% + \expandafter\pgfmath@stack@push@operand\expandafter{\pgfmathresult}% + \let\pgfmath@parse@next=\pgfmath@parse@@operator% + \fi% + \else% ...but here it is double-character units. \global\pgfmathunitsdeclaredtrue% \pgfmath@dimen=\pgfmath@number\pgfmath@token\pgfmath@token@next\relax% \edef\pgfmathresult{\pgfmath@tonumber{\pgfmath@dimen}}% diff --git a/Master/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex b/Master/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex index 49313e88491..d8d67dd8419 100644 --- a/Master/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 Mark Wibrow +% Copyright 2019 Mark Wibrow % % but subject to the LaTeX Project Public License % (http://www.latex-project.org/lppl.txt) diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleanimations.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleanimations.code.tex index d4e82cb1af5..5384b1a71b2 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleanimations.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleanimations.code.tex @@ -1,4 +1,4 @@ -% Copyright 2015 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulebending.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulebending.code.tex index 888db712043..d2ffa8b3c50 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulebending.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulebending.code.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduledatavisualization.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduledatavisualization.code.tex index 541c7de8d48..f60764d0be3 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduledatavisualization.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduledatavisualization.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduledecorations.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduledecorations.code.tex index 8c939d5cb41..f7cdd13457a 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduledecorations.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduledecorations.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Mark Wibrow and Till Tantau +% Copyright 2019 by Mark Wibrow and Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex index 4f676aeea47..01f6feee976 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex index 8e607b207d4..55c9d6f6515 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleoo.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleoo.code.tex index 38ceef34cdc..86c1e8e996f 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleoo.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleoo.code.tex @@ -1,5 +1,5 @@ -% Copyright 2006 by Till Tantau -% Copyright 2011 by Saso Zivanovic +% Copyright 2019 by Till Tantau +% Copyright 2019 by Saso Zivanovic % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleparser.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleparser.code.tex index 3ac1aba9fce..ca2a597560b 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleparser.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleparser.code.tex @@ -1,4 +1,4 @@ -% Copyright 2009 by Till Tantau +% Copyright 2019 by Till Tantau % Copyright 2019 by Jonathan P. Spratte % % This file may be distributed and/or modified @@ -19,7 +19,7 @@ % options \long\def\pgfparserset#1% {% - \pgfset{/pgfparser/.cd,#1}% + \pgfqkeys{/pgfparser}{#1}% } \pgfparserset {% diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex index 1a553f925c1..0afea0ae342 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex index 166a5d56405..4e8cce59a4b 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulesnakes.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulesnakes.code.tex index 9df6d309801..9b692b1340b 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulesnakes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulesnakes.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulesorting.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulesorting.code.tex index e22bdb09910..9aa1df9fefa 100644 --- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulesorting.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmodulesorting.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/pgf.revision.tex b/Master/texmf-dist/tex/generic/pgf/pgf.revision.tex index 86dd7442d22..551b21d9ff0 100644 --- a/Master/texmf-dist/tex/generic/pgf/pgf.revision.tex +++ b/Master/texmf-dist/tex/generic/pgf/pgf.revision.tex @@ -5,10 +5,10 @@ \catcode`\:=12 \catcode`\+=12 \catcode`\-=12 -\gdef\pgfrevision{3.1.5b} -\gdef\pgfversion{3.1.5b} -\gdef\pgfversiondatetime{2020-01-08 10:30:17 +1300} -\gdef\pgfrevisiondatetime{2020-01-08 10:30:17 +1300} +\gdef\pgfrevision{3.1.6} +\gdef\pgfversion{3.1.6} +\gdef\pgfversiondatetime{2020-09-28 18:29:32 +0200} +\gdef\pgfrevisiondatetime{2020-09-28 18:29:32 +0200} \gdef\pgf@glob@TMPa#1-#2-#3 #4\relax{#1/#2/#3} \xdef\pgfversiondate{\expandafter\pgf@glob@TMPa\pgfversiondatetime\relax} \xdef\pgfrevisiondate{\expandafter\pgf@glob@TMPa\pgfrevisiondatetime\relax} diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg index 5f7a34c8372..2580bad9d1c 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf-via-dvi.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf-via-dvi.def index d39078338a5..0678b188207 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf-via-dvi.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf-via-dvi.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % CMYK and grayscale shadings adaptation copyright 2019 by David Purton % % This file may be distributed and/or modified diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def index c70f3ef2b7f..765ffc84092 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-postscript.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-postscript.def index 803ed71cdaf..004b8e38f4f 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-postscript.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-postscript.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % CMYK and grayscale shadings adaptation copyright 2019 by David Purton % % This file may be distributed and/or modified @@ -150,10 +150,10 @@ % Opacity \def\pgfsys@fill@opacity#1{% - \pgfsysprotocol@literal{#1 .pgfsetfillopacityalpha} + \pgfsysprotocol@literal{#1 .pgfsetfillopacityalpha}% } \def\pgfsys@stroke@opacity#1{% - \pgfsysprotocol@literal{#1 .pgfsetstrokeopacityalpha} + \pgfsysprotocol@literal{#1 .pgfsetstrokeopacityalpha}% } % Objects diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-svg.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-svg.def index 9dcb2e0e7c9..f1d27290230 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-svg.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-svg.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -891,7 +891,7 @@ \let\pgf@sys@svg@marker@id@start\pgfutil@empty% \else% \global\advance\pgf@sys@svg@objectcount by1\relax% - \edef\pgf@sys@svg@marker@id{pgf\the\pgf@sys@svg@objectcount}% + \edef\pgf@sys@svg@marker@id{pgf\the\pgf@sys@svg@objectcount m}% \edef\pgf@sys@svg@add@code{% \noexpand\pgf@sys@svg@ref@defs{pgfs\pgf@svg@anim@marker@start}% \noexpand\pgfsysprotocol@literal{<marker id="\pgf@sys@svg@marker@id" markerUnits="userSpaceOnUse" orient="auto" overflow="visible"> @@ -904,7 +904,7 @@ \let\pgf@sys@svg@marker@id@end\pgfutil@empty% \else% \global\advance\pgf@sys@svg@objectcount by1\relax% - \edef\pgf@sys@svg@marker@id{pgf\the\pgf@sys@svg@objectcount}% + \edef\pgf@sys@svg@marker@id{pgf\the\pgf@sys@svg@objectcount m}% \edef\pgf@sys@svg@add@code@{% \noexpand\pgf@sys@svg@ref@defs{pgfs\pgf@svg@anim@marker@end}% \noexpand\pgfsysprotocol@literal{<marker id="\pgf@sys@svg@marker@id" markerUnits="userSpaceOnUse" orient="auto" overflow="visible"> diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvi.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvi.def index a6397752ff4..dbe6fb31306 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvi.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvi.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfm.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfm.def index 939595089ad..df1209aefb4 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfm.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfm.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfmx.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfmx.def index b2be0c9110b..2c0fc8ae559 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfmx.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfmx.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % CMYK and grayscale shadings adaptation copyright 2019 by David Purton % % This file may be distributed and/or modified @@ -314,7 +314,7 @@ \ifx\pgf@imagemask\pgfutil@empty\else\xdef\pgf@imagemask{ /SMask @\pgf@imagemask}\fi% \edef\pgf@image{\noexpand\hbox to \pgf@imagewidth{\vbox to \pgf@imageheight{\vfil\special{pdf:image width \pgf@imagewidth\space height \pgf@imageheight\space\pgf@imagepage\space(\pgf@filename) <<\pgf@imageinterpolate\pgf@imagemask\space>>}}\hfil}}% } -\def\pgfsys@definemask#1{% +\def\pgfsys@definemask{% \ifx\pgf@maskmatte\pgfutil@empty% \else% \edef\pgf@maskmatte{/Matte [\pgf@maskmatte]}% @@ -450,6 +450,7 @@ % Transparency groups came from pgfsys-pdftex.def \def\pgfsys@transparencygroupfrombox#1{% {% + \pgfutil@tempdima=\pgf@picminx \pgf@sys@bp@correct\pgf@picminx% \pgf@sys@bp@correct\pgf@picmaxx% \pgf@sys@bp@correct\pgf@picminy% @@ -459,7 +460,7 @@ \wd#1=0pt% \ht#1=0pt% \dp#1=0pt% - \hskip\pgf@picminx bp\box#1\hskip-\pgf@picminx bp% + \hskip\pgfutil@tempdima\box#1\hskip-\pgfutil@tempdima% \special{pdf:put @resources << \ifpgf@sys@pdf@extgs@exists /ExtGState @pgfextgs \fi diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def index 4cb4d51b8b0..70f5ba28873 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def @@ -1,4 +1,7 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau +% +% PS-3 shadings, image and opacity masks (fadings), transparency groups, +% blend modes copyright 2020 by Alexander Grahn % % This file may be distributed and/or modified % @@ -33,9 +36,9 @@ \pgfsys@begin@idscope% \pgfsys@invoke{pgfs}% \special{ps::[end]}% - \wd#1=0pt% - \ht#1=0pt% - \dp#1=0pt% + \wd#1=0pt + \ht#1=0pt + \dp#1=0pt \box#1 \special{ps::[begin]}% \pgfsys@invoke{pgfr}% @@ -79,13 +82,36 @@ /pgfc{newpath @endspecial pgfpd}bind def %close /pgfsd{globaldict /pgfdelta /delta where {pop delta} {0} ifelse put}bind def% save delta /pgfpd{/delta globaldict /pgfdelta get def}bind def % put delta - /.setopacityalpha where {pop} {/.setopacityalpha{pop}def} ifelse % install .setopacityalpha + /.setblendmode where {pop} {/.setblendmode{pop}def} ifelse % install .setblendmode + /.setfillconstantalpha where {% + pop /.setopacityalpha {.setfillconstantalpha} def% + } {% + /.setopacityalpha where {pop} {/.setopacityalpha {pop} def} ifelse% install .setopacityalpha (fallback) + } ifelse /.pgfsetfillopacityalpha{/pgffoa exch def - /pgffill{gsave pgffoa .setopacityalpha fill 1 .setopacityalpha newpath fill grestore newpath}bind def - /pgfeofill{gsave pgffoa .setopacityalpha eofill 1 .setopacityalpha newpath eofill grestore newpath}bind def}bind def - /.pgfsetstrokeopacityalpha{/pgfsoa exch def /pgfstr{gsave pgfsoa .setopacityalpha stroke grestore newpath}bind def}bind def + /.setfillconstantalpha where {pop pgffoa .setfillconstantalpha} {% + /pgffill{gsave pgffoa .setopacityalpha fill 1 .setopacityalpha newpath fill grestore newpath}bind def + /pgfeofill{gsave pgffoa .setopacityalpha eofill 1 .setopacityalpha newpath eofill grestore newpath}bind def% + } ifelse% + } bind def + /.pgfsetstrokeopacityalpha{/pgfsoa exch def + /.setstrokeconstantalpha where {pop pgfsoa .setstrokeconstantalpha} {% + /pgfstr{gsave pgfsoa .setopacityalpha stroke grestore newpath}bind def% + } ifelse% + }bind def /pgffoa 1 def /pgfsoa 1 def + % mandatory, transparency-related per-page operations, see + % https://www.ghostscript.com/doc/current/Language.htm#Transparency + % (bop-hook & eop-hook automatically executed if defined in userdict, see texdoc dvips) + /.pushpdf14devicefilter where {pop + [userdict /bop-hook known {userdict /bop-hook get aload pop} if + {0 .pushpdf14devicefilter} aload pop] cvx userdict exch /bop-hook exch put + [userdict /eop-hook known {userdict /eop-hook get aload pop} if + {.poppdf14devicefilter} aload pop] cvx userdict exch /eop-hook exch put% + } if + % keeps printers from choking on pdfmark operator + systemdict /pdfmark known not {userdict /pdfmark systemdict /cleartomark get put} if end }% } @@ -138,6 +164,467 @@ \fi + +% Path usage: +\def\pgfsys@discardpath{% + \ifpgfsys@@clipnext% + \ifpgfsys@eorule% + \pgfsysprotocol@literal{% + /pgfsmaskinplace dup where {exch get}{pop false} ifelse not {eoclip} if}% + \else% + \pgfsysprotocol@literal{% + /pgfsmaskinplace dup where {exch get}{pop false} ifelse not {clip} if}% + \fi% + \pgfsys@@clipnextfalse% + \fi% + \pgfsysprotocol@literal{newpath}} + + +% +% Blending +% + +\def\pgfsys@blend@mode#1{% + \expandafter\ifx\csname pgf@sys@pdf@bm@#1\endcsname\relax% + \expandafter\let\expandafter\pgf@temp\csname pgf@sys@pdf@blend@mode@map@#1\endcsname% + \expandafter\xdef\csname pgf@sys@pdf@bm@#1\endcsname{/\pgf@temp}% + \ifx\pgf@temp\relax% + \pgferror{Unknown blend mode '#1'}% + \def\pgf@temp{Normal}% + \fi% + \fi% + \pgfsysprotocol@literal{\csname pgf@sys@pdf@bm@#1\endcsname\space .setblendmode}% +} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@normal\endcsname{Normal} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@multiply\endcsname{Multiply} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@screen\endcsname{Screen} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@overlay\endcsname{Overlay} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@darken\endcsname{Darken} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@lighten\endcsname{Lighten} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@color dodge\endcsname{ColorDodge} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@color burn\endcsname{ColorBurn} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@hard light\endcsname{HardLight} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@soft light\endcsname{SoftLight} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@difference\endcsname{Difference} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@exclusion\endcsname{Exclusion} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@saturation\endcsname{Saturation} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@color\endcsname{Color} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@hue\endcsname{Hue} +\expandafter\def\csname pgf@sys@pdf@blend@mode@map@luminosity\endcsname{Luminosity} + + +% +% Shadings +% + +\def\pgfsys@horishading#1#2#3{% + {% + \pgf@parsefunc{#3}% + \pgf@xb=\pgf@max + \pgfmathsetlength\pgf@y{#2}% + \pgf@yb=\pgf@y + \pgf@sys@bp@correct{\pgf@xb}% + \pgf@sys@bp@correct{\pgf@yb}% + \xdef\pgfutil@tempa{\hbox to \the\pgf@max{% + \noexpand\vrule width0pt height\the\pgf@y% + \noexpand\pgfsys@beginpurepicture% + \noexpand\pgfsys@outerinvoke{ + \pgf@sys@tonumber{\pgf@yb} \pgf@sys@tonumber{\pgf@xb} 0 0 pgfe << + /PatternType 2 + /Shading << + /ShadingType 2 + /ColorSpace \pgf@shading@device\space + /Domain [\pgf@pdfparseddomain] + /Coords [\pgf@doma\space0 \pgf@domb\space0] + /Function \pgf@pdfparsedfunction + >> + >> matrix makepattern setpattern fill + }% + \hss% + \noexpand\pgfsys@endpurepicture% + }}% + }% + \global\expandafter\let\csname @pgfshading#1!\endcsname\pgfutil@tempa% +} +\def\pgfsys@vertshading#1#2#3{% + {% + \pgf@parsefunc{#3}% + \pgfmathsetlength\pgf@x{#2}% + \pgf@xb=\pgf@x + \pgf@yb=\pgf@max + \pgf@sys@bp@correct{\pgf@xb}% + \pgf@sys@bp@correct{\pgf@yb}% + \xdef\pgfutil@tempa{\hbox to \the\pgf@x{% + \noexpand\vrule width0pt height\the\pgf@max% + \noexpand\pgfsys@beginpurepicture% + \noexpand\pgfsys@outerinvoke{ + \pgf@sys@tonumber{\pgf@yb} \pgf@sys@tonumber{\pgf@xb} 0 0 pgfe << + /PatternType 2 + /Shading << + /ShadingType 2 + /ColorSpace \pgf@shading@device\space + /Domain [\pgf@pdfparseddomain] + /Coords [0 \pgf@doma\space0 \pgf@domb] + /Function \pgf@pdfparsedfunction + >> + >> matrix makepattern setpattern fill + }% + \hss% + \noexpand\pgfsys@endpurepicture% + }}% + }% + \global\expandafter\let\csname @pgfshading#1!\endcsname\pgfutil@tempa% +} +\def\pgfsys@radialshading#1#2#3{% + {% + \pgf@parsefunc{#3}% + \pgf@process{#2}% + \pgf@xa=\pgf@x + \pgf@ya=\pgf@y + \pgf@process{\pgfpoint{\pgf@max}{\pgf@max}}% + \advance\pgf@xa by \pgf@x + \advance\pgf@ya by \pgf@y + \pgf@sys@bp@correct{\pgf@x}% + \pgf@sys@bp@correct{\pgf@y}% + \pgf@sys@bp@correct{\pgf@xa}% + \pgf@sys@bp@correct{\pgf@ya}% + \pgf@max=2\pgf@max + \xdef\pgfutil@tempa{\hbox to \the\pgf@max{% + \noexpand\vrule width0pt height\the\pgf@max% + \noexpand\pgfsys@beginpurepicture% + \noexpand\pgfsys@outerinvoke{ + << + /ShadingType 3 + /ColorSpace \pgf@shading@device\space + /Domain [\pgf@pdfparseddomain] + /Coords [\pgf@sys@tonumber{\pgf@xa} \pgf@sys@tonumber{\pgf@ya} \pgf@doma\space + \pgf@sys@tonumber{\pgf@x} \pgf@sys@tonumber{\pgf@y} \pgf@domb] + /Function \pgf@pdfparsedfunction + /Extend [true false] + >> shfill + }% + \hss% + \noexpand\pgfsys@endpurepicture% + }}% + }% + \global\expandafter\let\csname @pgfshading#1!\endcsname\pgfutil@tempa% +} +\def\pgfsys@functionalshading#1#2#3#4{% + {% + \pgf@process{#2}% + \pgf@xa=\pgf@x + \pgf@ya=\pgf@y + \pgf@process{#3}% + \pgf@xb=\pgf@x + \pgf@yb=\pgf@y + \advance\pgf@x by-\pgf@xa + \advance\pgf@y by-\pgf@ya + \pgf@sys@bp@correct{\pgf@xa}% + \pgf@sys@bp@correct{\pgf@ya}% + \pgf@sys@bp@correct{\pgf@xb}% + \pgf@sys@bp@correct{\pgf@yb}% + \pgf@xc=-\pgf@xa + \pgf@yc=-\pgf@ya + \xdef\pgfutil@tempa{% + \hbox to\the\pgf@x{\vbox to\the\pgf@y{\vfil + \noexpand\pgfsys@beginpurepicture% + \noexpand\pgfsys@invoke{% + % patch coords + /pgfpatchllx \pgf@sys@tonumber{\pgf@xa} def + /pgfpatchlly \pgf@sys@tonumber{\pgf@ya} def + % shading patch width and height + /pgfpatchX \pgf@sys@tonumber{\pgf@xb} pgfpatchllx sub def + /pgfpatchY \pgf@sys@tonumber{\pgf@yb} pgfpatchlly sub def + % number of samples in each direction (with samples spaced by approx. 1bp) + /pgfsamplesx pgfpatchX round cvi 1 add def + /pgfsamplesy pgfpatchY round cvi 1 add def + % exact sample distance in each direction, in bp + /pgfpatchdx pgfpatchX pgfsamplesx 1 sub div def + /pgfpatchdy pgfpatchY pgfsamplesy 1 sub div def + % + pgfpatchllx neg pgfpatchlly neg translate + /pgfproc {#4} bind def + % + % sampling procedure; repeatedly called by /ReusableStreamDecode filter; + % on each call, /pgfsamplingproc puts one colour sample (rgb, cmyk or gray) + % on the operand stack which is then consumed by the filter + userdict /pgfsampleidx 0 put % internal index; updated on each call + /pgfsamplingproc { + pgfsampleidx pgfsamplesx pgfsamplesy mul eq { + () % push empty string on the stack to signal end-of-data + } { + pgfcolorsample\pgf@shading@model\space % -str- + pgfsampleidx pgfsamplesx mod pgfpatchdx mul pgfpatchllx add % -str- x + pgfsampleidx pgfsamplesx idiv pgfpatchdy mul pgfpatchlly add % -str- x y + pgfproc % -str- <colour> + pgfwritesample\pgf@shading@model\space % -str- + /pgfsampleidx pgfsampleidx 1 add store % (update index) + } ifelse + } bind def + % + pgfpatchY pgfpatchX pgfpatchllx pgfpatchlly pgfe << + /PatternType 2 + /Shading << + /ShadingType 1 + /Domain [0 1 0 1] + /Matrix [pgfpatchX 0 0 pgfpatchY pgfpatchllx pgfpatchlly] + /ColorSpace \pgf@shading@device\space + /Function << + /FunctionType 0 + /Order 1 + /Domain [0 1 0 1] + /Range pgfrange\pgf@shading@model + /BitsPerSample pgfchanneldepth\pgf@shading@model % bits per channel, actually + /Size [pgfsamplesx pgfsamplesy] + /DataSource /pgfsamplingproc load /ReusableStreamDecode filter + >> + >> + >> matrix makepattern setpattern fill + }% + \noexpand\pgfsys@endpurepicture% + }\hss}% + }% + }% + \global\expandafter\let\csname @pgfshading#1!\endcsname\pgfutil@tempa% +} + +% helpers for converting FunctionType-4 to FunctionType-0, i. e. sampled, functions; +% FunctionType-4 functions are not defined in PostScript-3 +% +% These are the different colour models we are going to use: +% +-------+-------------------+-----------+------------------+ +% | model | channel depth/bit | max value | sample size/byte | +% +-------+-------------------+-----------+------------------+ +% | cmyk | 8 | 255 | 4 | +% | rgb | 8 | 255 | 3 | +% | gray | 24 | 16777215 | 3 | +% +-------+-------------------+-----------+------------------+ +\expandafter\gdef\expandafter\pgfsys@atbegindocument\expandafter{\pgfsys@atbegindocument% + \pgf@sys@postscript@header{ + % + % -str- c m y k pgfwritesamplecmyk ==> -str- + % -str- r g b pgfwritesamplergb ==> -str- + % -str- gray pgfwritesamplegray ==> -str- + % writes a single colour sample into the /pgfcolorsample* string; + % colour components (c,m,y,k; r,g,b; gray) between 0.0 to 1.0 + % + /pgfwritesamplecmyk { + 4 index 0 5 index pgfcheckcolorrange 255 mul round cvi put + 4 index 1 4 index pgfcheckcolorrange 255 mul round cvi put + 4 index 2 3 index pgfcheckcolorrange 255 mul round cvi put + 4 index 3 2 index pgfcheckcolorrange 255 mul round cvi put + pop pop pop pop + } bind def + % + /pgfwritesamplergb { + 3 index 0 4 index pgfcheckcolorrange 255 mul round cvi put + 3 index 1 3 index pgfcheckcolorrange 255 mul round cvi put + 3 index 2 2 index pgfcheckcolorrange 255 mul round cvi put + pop pop pop + } bind def + % + /pgfwritesamplegray { + % grayvalue between 0 and 16777215 (24 bit) + pgfcheckcolorrange 16777215 mul round cvi % -str- gray24 + 1 index 0 2 index -16 bitshift put % high byte + 1 index 1 2 index 65535 and -8 bitshift put % middle byte + 1 index 2 2 index 255 and put % low byte + pop + } bind def + % + % <colour component> pgfcheckcolorrange ==> <something between 0.0 and 1.0> + % truncates value to the allowed range (user-defined Type-4 functions may + % happen to provide values outside this range) + /pgfcheckcolorrange { + dup 0.0 lt {pop 0.0} if + dup 1.0 gt {pop 1.0} if + } bind def + % + %colour depths per channel (bit) + /pgfchanneldepthcmyk 8 def + /pgfchanneldepthrgb 8 def + /pgfchanneldepthgray 24 def + % + % allocate strings as buffers for storing a single colour sample + /pgfcolorsamplecmyk 4 string def + /pgfcolorsamplergb 3 string def + /pgfcolorsamplegray 3 string def + % + %/Range array in the FunctionType 0 dictionary + /pgfrangecmyk [0 1 0 1 0 1 0 1] def + /pgfrangergb [0 1 0 1 0 1] def + /pgfrangegray [0 1] def + }% +} + + +% +% Opacity masks +% + +\def\pgfsys@fadingfrombox#1#2{% + \ifcsname pgfsmaskxform@#1\endcsname + \pgfwarning{Fading '#1' already defined.\MessageBreak Going to replace it with new definition}% + \fi% + \global\advance\pgf@objectcount\@ne% + {% + \pgf@x=-.5\wd#2% + \pgf@y=-.5\ht#2% + \advance\pgf@y by.5\dp#2% + \expandafter\xdef\csname pgfsmasktrans@#1\endcsname{% + \noexpand\pgftransformcm{1}{0}{0}{1}{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}% + \edef\@tempa{\noexpand\pgfutil@insertatbegincurrentpagefrombox{% + % box coordinates (reference point and top) needed for distilling + \pgfsys@outerinvoke{currentpoint /pgf@refy exch def /pgf@refx exch def}% + \hbox to 0pt {\hbox to \ifdim\ht#2>\ht\strutbox\ht#2\else\ht\strutbox\fi{\hss\pgfsys@outerinvoke{% + /pgf@top pgf@refy currentpoint pop pgf@refx sub VResolution Resolution div mul sub def% + }}\hss}% + \pgfsys@outerinvoke{gsave + % translate box to upper left page corner, so we have the whole clipping path (i. e. + % page area) available for distilling, as outlying parts get clipped + clippath pathbbox newpath pop pop translate pgf@refx neg pgf@top neg translate + % translate origin (0,0) to the reference point + gsave pgf@refx pgf@refy translate + mark /_objdef {pgfsmaskxform@\the\pgf@objectcount} + /BBox [clippath pathbbox newpath] /BP pdfmark grestore% + }% + \wd#2=0pt + \ht#2=0pt + \dp#2=0pt + \box#2% + \pgfsys@outerinvoke{mark /EP pdfmark grestore}% + }}\@tempa% + \expandafter\xdef\csname pgfsmaskxform@#1\endcsname{\the\pgf@objectcount}% + }% +} +\def\pgfsys@usefading#1#2#3#4#5#6#7{% + \ifcsname pgfsmaskxform@#1\endcsname% + {% + \pgftransformreset% + \pgftransformcm{#2}{#3}{#4}{#5}{\pgfpoint{#6}{#7}}% + \csname pgfsmasktrans@#1\endcsname% + {% + \pgflowlevelsynccm% + \pgfsys@outerinvoke{% + /.begintransparencymaskgroup where {pop + /pgf@sys@currentcolorspace currentcolorspace def + /pgf@sys@currentcolor [currentcolor] cvx def + /pgf@sys@OverrideICC currentuserparams /OverrideICC get def % Chr. Liddell + <</OverrideICC true>> setuserparams % of Artifex + /DeviceGray setcolorspace + true <</Subtype/Luminosity>> clippath pathbbox newpath .begintransparencymaskgroup + gsave + 72 Resolution div 72 VResolution div scale + 1 DVImag div 1 DVImag div neg scale + mark {pgfsmaskxform@\csname pgfsmaskxform@#1\endcsname} /SP pdfmark + grestore + 0 .endtransparencymask + <</OverrideICC pgf@sys@OverrideICC>> setuserparams % restore orig. settings + pgf@sys@currentcolorspace setcolorspace + pgf@sys@currentcolor setcolor + /pgfsmaskinplace true def + } if% + }% + }% + \pgftransforminvert% + \pgflowlevelsynccm% + }% + \else + \pgferror{Undefined fading '#1'}% + \fi% +} +\def\pgfsys@clipfading{% + \pgfsyssoftpath@invokecurrentpath% + \pgfsys@clipnext% + \pgfsys@discardpath% +} + + +% +% Transparency groups +% +\def\pgfsys@transparencygroupfrombox#1{% + \global\advance\pgf@objectcount\@ne% + \pgfsys@outerinvoke{% + mark /_objdef {pgfxform@\the\pgf@objectcount} /BBox [clippath pathbbox newpath] /BP pdfmark + gsave + /pgf@sys@foa pgffoa def /pgf@sys@soa pgfsoa def + /.setstrokeconstantalpha where + {pop 1 .pgfsetfillopacityalpha 1 .pgfsetstrokeopacityalpha} if% + }% + \wd#1=0pt + \ht#1=0pt + \dp#1=0pt + \hskip\pgf@picminx\box#1% + \pgfsys@outerinvoke{% + /pgffoa pgf@sys@foa def /pgfsoa pgf@sys@soa def + grestore + mark /EP pdfmark + mark {pgfxform@\the\pgf@objectcount} << /Group << /S /Transparency + /I \ifpgfsys@transparency@group@isolated true \else false \fi + /K \ifpgfsys@transparency@group@knockout true \else false \fi >> >> /PUT pdfmark% + }% + \setbox#1=\hbox{\pgfsys@outerinvoke{mark {pgfxform@\the\pgf@objectcount} /SP pdfmark}}% +} + + +% +% Image inclusion, adding SMask reference and image interpolation if mandated +% + +\def\pgfsys@defineimage{% + \ifx\pgf@imagewidth\pgfutil@empty\else\edef\pgf@imagewidth{width=\pgf@imagewidth,}\fi% + \ifx\pgf@imageheight\pgfutil@empty\else\edef\pgf@imageheight{height=\pgf@imageheight,}\fi% + \begingroup% + \def\pgf@imageaddedkeys{}\def\@tempa{true}% + \ifx\pgf@imageinterpolate\@tempa\def\pgf@imageaddedkeys{/Interpolate true}\fi% + \ifx\pgf@imagemask\pgfutil@empty\else\edef\pgf@imageaddedkeys{\pgf@imageaddedkeys /SMask {\pgf@imagemask}}\fi% + \edef\@tempa{% + \ifx\pgf@imageaddedkeys\pgfutil@empty\else% + \noexpand\pgfsys@outerinvoke{% + save /pgfparent [(img) cvx cvn rand] cvx def %random name for current image + mark /_objdef /pgfparent load /NI pdfmark + % sometimes, image metadata contain embedded pdfmarks that prevent us from + % writing to the image dictionary ourselves, so we disable them temporarily + save /pdfmark /cleartomark load def + }% + \fi% + \noexpand\includegraphics[\pgf@imageheight\pgf@imagewidth]{\pgf@filename}% + \ifx\pgf@imageaddedkeys\pgfutil@empty\else% + \noexpand\pgfsys@outerinvoke{% + % empty image dummy, in case the provided file is not a valid raster image + 0 0 1 [1 0 0 1 0 0] {} image restore + mark /pgfparent load <<\pgf@imageaddedkeys>> /PUT pdfmark restore + }% + \fi% + }% + \expandafter\endgroup% + \expandafter\def\expandafter\pgf@image\expandafter{\@tempa}% +} + + +% +% Image masks +% + +\def\pgfsys@definemask{% + \global\advance\pgf@objectcount\@ne% + \ifx\pgf@maskmatte\pgfutil@empty% + \else% + \edef\pgf@maskmatte{/Matte [\pgf@maskmatte]}% + \fi% + \pgfsys@outerinvoke{% + mark /_objdef {pgfmask\the\pgf@objectcount} /NI pdfmark + 1 dict begin /pdfmark /cleartomark load def + }% + \special{psfile=\pgf@filename\space hsize=0 vsize=0}% + \pgfsys@outerinvoke{% + 0 0 1 [1 0 0 1 0 0] {} image + end mark {pgfmask\the\pgf@objectcount} <</Decode [1 0] \pgf@maskmatte>> /PUT pdfmark + }% + \edef\pgf@mask{pgfmask\the\pgf@objectcount}% +} + \endinput %%% Local Variables: diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def index f817f508740..a0896011828 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm4ht.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm4ht.def new file mode 100644 index 00000000000..2853147a8d1 --- /dev/null +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm4ht.def @@ -0,0 +1,70 @@ +% Copyright 2020 by Michal Hoftich +% Copyright 2006 by Till Tantau +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +% +% See the file doc/generic/pgf/licenses/LICENSE for more details. + +\ProvidesFileRCS{pgfsys-dvisvgm4ht.def} + +% Driver commands for tex4ht + +% +% Load common pdf commands: +% + %\input pgfsys-dvisvgm.def +\input pgfsys-dvips.def + + + +\AtBeginDocument{ + % configure the output picture format to svg + \Configure{Picture}{.svg} + % insert tex4ht hook to the code used at the start and end of each TikZ picture + \def\pgfsys@beginpicture{% + \bgroup% + \ifdefined\inside@pict@cmd% handle nested uses + \def\run@pict@cmd{}% insert the \Picture hooks only in the top nesting level + \def\end@pict@cmd{}% + \else + % use different version of \Picture depending on the vertical mode + \ifvmode\def\run@pict@cmd{\Picture*}\else\def\run@pict@cmd{\Picture+}\fi% + \def\end@pict@cmd{\EndPicture}% + \fi% + % command used to detect nesting + \def\inside@pict@cmd{}% + \csname a:tikzpicture\endcsname% + \orig@pgfsys@begin% + }% + \def\pgfsys@endpicture{% + \orig@pgfsys@end% + \csname b:tikzpicture\endcsname% + \egroup% + \par% + }% +} + + +% Make the code inserted by tex4ht configurable + +\NewConfigure{tikzpicture}{2} +\Configure{tikzpicture}{% + % \ifvmode\IgnorePar\fi\EndP%\HtmlParOff + \protect\csname nested:math\endcsname% support display math + \run@pict@cmd{}% +}{\end@pict@cmd} + +\let\orig@pgfsys@begin\pgfsys@beginpicture +\let\orig@pgfsys@end\pgfsys@endpicture +\def\pgf@sys@postscript@header#1{{\special{! #1}}} + + +\endinput + + +%%% Local Variables: +%%% mode: latex +%%% End: diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def index a0b63c1cace..88adfd42d9d 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % CMYK and grayscale shadings adaptation copyright 2019 by David Purton % % This file may be distributed and/or modified @@ -71,7 +71,7 @@ \edef\pgf@image{\noexpand\useimageresource\the\lastsavedimageresourceindex}% \fi }% -\def\pgfsys@definemask#1{% +\def\pgfsys@definemask{% \ifx\pgf@maskmatte\pgfutil@empty% \else% \edef\pgf@maskmatte{/Matte [\pgf@maskmatte]}% @@ -289,7 +289,7 @@ \pgferror{Undefined fading '#1'}% \else% {% - \expandafter\ifx\csname pgfsmaks@#1\endcsname\relax% + \expandafter\ifx\csname pgfsmask@#1\endcsname\relax% \pgf@sys@pdf@install@mask{#1}% \fi% \pgftransformreset% diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def index b74e005a757..3654670e67c 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % CMYK and grayscale shadings adaptation copyright 2019 by David Purton % % This file may be distributed and/or modified @@ -68,7 +68,7 @@ \edef\pgf@image{\noexpand\pdfrefximage\the\pdflastximage}% \fi }% -\def\pgfsys@definemask#1{% +\def\pgfsys@definemask{% \ifx\pgf@maskmatte\pgfutil@empty% \else% \edef\pgf@maskmatte{/Matte [\pgf@maskmatte]}% @@ -286,7 +286,7 @@ \pgferror{Undefined fading '#1'}% \else% {% - \expandafter\ifx\csname pgfsmaks@#1\endcsname\relax% + \expandafter\ifx\csname pgfsmask@#1\endcsname\relax% \pgf@sys@pdf@install@mask{#1}% \fi% \pgftransformreset% diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-tex4ht.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-tex4ht.def index 1f8c09d0c10..44dd1ae5b09 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-tex4ht.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-tex4ht.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-textures.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-textures.def index 1a01a6f8f11..01f7cd9fb95 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-textures.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-textures.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-vtex.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-vtex.def index cce6e4a3444..6bb0c71595c 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-vtex.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-vtex.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-xetex.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-xetex.def index 5147214ef9b..ce08194ce1c 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-xetex.def +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-xetex.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -62,7 +62,11 @@ \pgf@marshal% } -\def\pgf@sys@pdf@mark@pos@pgfpageorigin{\pgfqpoint{2\hoffset}{0pt}} +\ifnum\the\XeTeXversion\expandafter\pgfutil@gobble\XeTeXrevision>0999991\relax + \def\pgf@sys@pdf@mark@pos@pgfpageorigin{\pgfqpoint{\hoffset}{\voffset}} +\else + \def\pgf@sys@pdf@mark@pos@pgfpageorigin{\pgfqpoint{2\hoffset}{0pt}} +\fi \ifx\paperheight\@undefined \else diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex index e3e8a5ff833..000eef098c2 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -862,6 +862,11 @@ % state. Parameters #2 to #7 specify a transformation cm that should % be applied to the mask before it is used. +\def\pgfsys@clipfading{} +% This default implementation is a no-op for all drivers except `dvips' +% where we have to set the clipping path _before_ installing the fading (used in +% \pgfsetfadingforcurrentpath, \pgfsetfadingforcurrentpathstroked commands of +% the basic layer) % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsysanimations.code.tex b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsysanimations.code.tex index 06bd9934bff..49ba41bfc63 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsysanimations.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsysanimations.code.tex @@ -1,4 +1,4 @@ -% Copyright 2016 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex index 3625abbb576..32052b8a292 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex index d04eb022885..9fe3f1e7db5 100644 --- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfcalendar.code.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgfcalendar.code.tex index 89ee8963e92..579b6dccea3 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfcalendar.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfcalendar.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfexternal.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgfexternal.tex index 7be11f8f0e2..7f9c4a0293a 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfexternal.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfexternal.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfexternalwithdepth.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgfexternalwithdepth.tex index f2b08b2a9e4..907083ef3be 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfexternalwithdepth.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfexternalwithdepth.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex index 4e351c902be..cdb77b31377 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Till Tantau and Mark Wibrow +% Copyright 2019 by Till Tantau and Mark Wibrow % % This file may be distributed and/or modified % @@ -727,7 +727,7 @@ } \def\pgffor@remember@parse@old#1#2\pgffor@stop{% - \pgffor@remember@@parse@old#1#2\pgffor@stop as#1(initially )\pgffor@@stop} + \pgffor@remember@@parse@old#1#2\pgffor@stop as#1(initially 0)\pgffor@@stop} \def\pgffor@remember@@parse@old#1#2as#3#4\pgffor@@stop{% \pgffor@remember@@@parse@old{#1}{#3}#2#4\pgffor@stop\pgffor@@stop} @@ -735,11 +735,7 @@ \def\pgffor@remember@@@parse@old#1#2#3(initially #4)#5\pgffor@stop#6\pgffor@@stop{% \pgfutil@append@tomacro{\pgffor@assign@after@code}{\edef#2{#1}}% \pgfutil@append@tomacro{\pgffor@remember@code}{\noexpand\def\noexpand#2{#2}}% - \def\pgffor@test{#4}% - \ifx\pgffor@test\pgfutil@empty% - \else% - \pgfutil@append@tomacro{\pgffor@assign@once@code}{\def#2{#4}}% - \fi% + \pgfutil@append@tomacro{\pgffor@assign@once@code}{\def#2{#4}}% } \def\pgffor@count@parse#1#2\pgffor@stop{% diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex index 73922a0f097..e32745317c5 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -24,6 +24,8 @@ % works with all TeX formats and has no save-stack impact \def\pgfkeys@empty{} +\long\def\pgfkeys@firstoftwo#1#2{#1} +\long\def\pgfkeys@secondoftwo#1#2{#2} % This is useful: @@ -43,8 +45,6 @@ \csname @@end\expandafter\endcsname\expandafter\end% \fi -\expandafter\let\expandafter\pgfkeys@ifcsname\csname ifcsname\endcsname% - % Set a key to a value % % #1 = key @@ -178,7 +178,7 @@ % % \pgfkeysifdefined{/tikz/length}{key exists}{does not exist} -\long\def\pgfkeysifdefined#1#2#3{\pgfkeys@ifcsname pgfk@#1\endcsname#2\else#3\fi} +\long\def\pgfkeysifdefined#1#2#3{\ifcsname pgfk@#1\endcsname#2\else#3\fi} % Tests whether a key is assignable. For standard keys which just % store their value, this is identical to \pgfkeysifdefined. @@ -420,7 +420,7 @@ \def\pgfkeys@ifexecutehandler#1#2{#1}% \let\pgfkeys@ifexecutehandler@handleall=\pgfkeys@ifexecutehandler \def\pgfkeys@ifexecutehandler@handleonlyexisting#1#2{% - \pgfkeys@ifcsname pgfk@excpt@\pgfkeyscurrentname\endcsname% + \ifcsname pgfk@excpt@\pgfkeyscurrentname\endcsname% #1% ok, this particular key handler is known and should be processed in any case (for example .try) \else % implement the 'only existing' feature here: @@ -431,7 +431,7 @@ }% \def\pgfkeys@ifexecutehandler@handlefullorexisting#1#2{% \ifpgfkeysaddeddefaultpath - \pgfkeys@ifcsname pgfk@excpt@\pgfkeyscurrentname\endcsname% + \ifcsname pgfk@excpt@\pgfkeyscurrentname\endcsname% #1% ok, this particular key handler is known and be processed in any case (for example .try) \else % implement the 'only existing' feature here: @@ -719,7 +719,11 @@ % (with expansion of '#1'): \edef\pgfkeys@tempargs{\noexpand\pgfkeysvalueof{#1/.@@body}}% \def\pgfkeys@temp{\pgfkeysdef{#1}}% - \expandafter\pgfkeys@temp\expandafter{\pgfkeys@tempargs##1}% + \ifnum#2=1\relax + \expandafter\pgfkeys@temp\expandafter{\pgfkeys@tempargs{##1}}% + \else + \expandafter\pgfkeys@temp\expandafter{\pgfkeys@tempargs##1}% + \fi #5{#1/.@body}{#3}% } @@ -795,7 +799,11 @@ % Defining a value -\pgfkeys{/handlers/.initial/.code=\pgfkeyssetvalue{\pgfkeyscurrentpath}{#1}} +\pgfkeys{/handlers/.initial/.code=% + \pgfkeyslet{\pgfkeyscurrentpath/.@cmd}\undefined + \pgfkeyslet{\pgfkeyscurrentpath/.@args}\undefined + \pgfkeyssetvalue{\pgfkeyscurrentpath}{#1}% +} \pgfkeys{/handlers/.add/.code 2 args=\pgfkeysaddvalue{\pgfkeyscurrentpath}{#1}{#2}} \pgfkeys{/handlers/.prefix/.code=\pgfkeysaddvalue{\pgfkeyscurrentpath}{#1}{}} \pgfkeys{/handlers/.append/.code=\pgfkeysaddvalue{\pgfkeyscurrentpath}{}{#1}} @@ -828,7 +836,7 @@ }% } \def\pgfkeys@handle@boolean#1#2{% - \pgfkeys@ifcsname#1#2\endcsname% + \ifcsname#1#2\endcsname% \csname#1#2\endcsname% \else% \def\pgf@marshal{\pgfkeysvalueof{/errors/boolean expected/.@cmd}}% @@ -895,10 +903,17 @@ \pgfkeys@searchalso@parse#1,\pgfkeys@mainstop {% \toks0=\expandafter{\pgfkeys@global@temp##1\pgfeov}% - \toks1={\pgfkeysalso{/handlers/.unknown/.@cmd/.expand once=\pgfkeys@searchalso@temp@value}}% + \toks1={% + \pgfkeysgetvalue{/handlers/.unknown/.@cmd}{\pgfkeys@code}% + \expandafter\pgfkeys@code\pgfkeys@searchalso@temp@value\pgfeov + }% \xdef\pgfkeys@global@temp{% \noexpand\def\noexpand\pgfkeys@searchalso@temp@value{####1}% \noexpand\ifpgfkeysaddeddefaultpath + \noexpand\expandafter\noexpand\pgfkeys@firstoftwo + \noexpand\else + \noexpand\expandafter\noexpand\pgfkeys@secondoftwo + \noexpand\fi{% \noexpand\pgfkeyssuccessfalse \noexpand\let\noexpand\pgfkeys@searchalso@name=\noexpand\pgfkeyscurrentkeyRAW \the\toks0 % one or more /.try things; one for each path. The last element won't have a /.try @@ -906,9 +921,9 @@ %\noexpand\else % \the\toks1 % invoke /handlers/.unknown handler %\noexpand\fi - \noexpand\else + }{% \the\toks1 % invoke /handlers/.unknown handler - \noexpand\fi + }% }% \expandafter\gdef\expandafter\pgfkeys@global@temp\expandafter##\expandafter1\expandafter\pgfeov\expandafter{\pgfkeys@global@temp}% }% @@ -952,7 +967,6 @@ % Value expansion \pgfkeys{/handlers/.expand once/.code=\expandafter\pgfkeys@exp@call\expandafter{#1}} -\pgfkeys{/handlers/.expand two once/.code 2 args=\expandafter\expandafter\expandafter\pgfkeys@exp@call\expandafter\expandafter\expandafter{\expandafter#1\expandafter}\expandafter{#2}} \pgfkeys{/handlers/.expand twice/.code=\expandafter\expandafter\expandafter\pgfkeys@exp@call\expandafter\expandafter\expandafter{#1}} \pgfkeys{/handlers/.expanded/.code=\edef\pgfkeys@temp{#1}\expandafter\pgfkeys@exp@call\expandafter{\pgfkeys@temp}} @@ -1101,7 +1115,6 @@ \pgfkeysaddhandleonlyexistingexception{.lastretry}% \pgfkeysaddhandleonlyexistingexception{.unknown}% \pgfkeysaddhandleonlyexistingexception{.expand once}% -\pgfkeysaddhandleonlyexistingexception{.expand two once}% \pgfkeysaddhandleonlyexistingexception{.expand twice}% \pgfkeysaddhandleonlyexistingexception{.expanded}% diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex index ef70baf021f..5772bcadca7 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Christian Feuersaenger +% Copyright 2019 by Christian Feuersaenger % % This file may be distributed and/or modified % @@ -264,7 +264,7 @@ % % If the family exists, #2 will be executed. Otherwise, #3 will be % called. -\long\def\pgfkeysiffamilydefined#1#2#3{\pgfkeys@ifcsname ifpgfk@#1/familyactive\endcsname#2\else#3\fi} +\long\def\pgfkeysiffamilydefined#1#2#3{\ifcsname ifpgfk@#1/familyactive\endcsname#2\else#3\fi} % Sets the TeX boolean % \ifpgfkeysfiltercontinue := ( family #1 is active ) diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex index f83674c7528..8f53c1d7ba5 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-lists.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-lists.tex index d3b817a00f1..5e807b2e4f4 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-lists.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-lists.tex @@ -1,4 +1,4 @@ -% Copyright 2013 by Christian Feuersaenger +% Copyright 2019 by Christian Feuersaenger % % This file may be distributed and/or modified % @@ -104,7 +104,7 @@ \expandafter\def\csname pgfpPRP@#1@bigbuf@c\endcsname{0}% }% -% #1: the item to append +% #1: the item to prepend % #2: the list as macro name \long\def\pgfprependlistpushfront#1\to#2{% \begingroup diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex index b1c0546c17e..37210d48703 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -45,6 +45,18 @@ \def\pgfutil@trimspaces@@#1Q#2{#1} \catcode`\Q=11 +% \pgfutil@ifempty{<cs>}{<true code>}{<false code>} +% +% Check if <cs> is equal to \pgfutil@empty +% +% This macro is expandable. +\def\pgfutil@ifempty#1{% + \ifx#1\pgfutil@empty + \expandafter\pgfutil@firstoftwo + \else + \expandafter\pgfutil@secondoftwo + \fi} + % \pgfutil@ifundefined{<macro name with backslash>} % {<is undefined code>}{<is defined code>} % @@ -99,7 +111,7 @@ \csname newcount\expandafter\endcsname\csname pgfutil@pushedmacro@\pgfutil@pushmacro@string\endcsname \fi \global\advance\csname pgfutil@pushedmacro@\pgfutil@pushmacro@string\endcsname 1\relax - \expandafter\glet\csname\the\csname pgfutil@pushedmacro@\pgfutil@pushmacro@string\endcsname\pgfutil@pushmacro@string\endcsname#1% + \global\expandafter\let\csname\the\csname pgfutil@pushedmacro@\pgfutil@pushmacro@string\endcsname\pgfutil@pushmacro@string\endcsname#1% } \def\pgfutil@popmacro#1{% diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-context.def b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-context.def index 7d244efc5fa..651b1cd169c 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-context.def +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-context.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def index 2ac8ec42120..e2ed750368f 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -119,61 +119,69 @@ } \let\pgfutil@abe\pgfutil@empty% -\RequirePackage{everyshi} -\EveryShipout{% - % Add at begin page stuff - \setbox\@cclv=\vbox{% - \setbox\z@=\hbox{% - % the boxes \pgfutil@abe ("every page") and \pgfutil@abb ("current page") - % are used to generate pdf objects / dictionaries which are - % required for the graphics which are somewhere in the "real" - % page content. - % BUT: these pdf objects MUST NOT be affected by text layout - % shifts! Consequently, we have to undo \hoffset and \voffset - % (which are h/v shifts to the page layout). - % - % Note that this of importance for shadings. To be more - % specific: try out shadings with standalone (which uses - % \hoffset) and with xdvipdfmx (which appears to be more - % fragile than pdflatex) - they break unless we undo \hoffset - % and \voffset. - \ifdim\hoffset=0pt \else \hskip-\hoffset\fi - \pgfutil@abe\unhbox\pgfutil@abb\pgfutil@abc\global\let\pgfutil@abc\pgfutil@empty - \ifdim\hoffset=0pt \else \hskip+\hoffset\fi +\@ifl@t@r\fmtversion{2020/10/01}{% + \AddToHook{shipout/background}{% + \put(\hoffset-1in,\voffset-1in){% + \pgfutil@abe\unhbox\pgfutil@abb\pgfutil@abc\global\let\pgfutil@abc\pgfutil@empty }% - \wd\z@=\z@% - \ht\z@=\z@% - \dp\z@=\z@% - % ... see remark above regarding \hoffset/\voffset: - \ifdim\voffset=0pt \else \vskip-\voffset\fi - \box\z@% - \ifdim\voffset=0pt \else \vskip+\voffset\fi - % - % if TeX changes into vertical mode, it inserts \parskip and - % \lineskip. Disable it here: - \nointerlineskip% - \ifvbox\@cclv \unvbox\@cclv \else\hsize=\wd\@cclv \noindent\unhbox\@cclv \fi% - %\box\@cclv - % using \box instead of \unhbox or \unvbox - % has the advantage that glue settings won't be - % altered (as for \unhbox/\unvbox). But \box breaks compatibility - % with the 'remember picture' feature. }% -} - -% Preview hack: preview.sty hacks into \shipout (which is ok), but -% does not honour everyshi.sty (which is not ok). This causes everyshi -% material to get lost. -\AtBeginDocument{ - \@ifpackageloaded{preview}{% - % Ok, package loaded. Swap definitions of everyshi.sty's shipout - % and preview.sty's shipout: - \ifPreview - \let\shipout\@EveryShipout@Org@Shipout%This is the null version of \shipout, created by preview and saved by everyshi - \let\@EveryShipout@Org@Shipout\pr@shipout% This is the original shipout - \let\pr@shipout\@EveryShipout@Shipout% - \fi - }{}% +}{% + \RequirePackage{everyshi} + \EveryShipout{% + % Add at begin page stuff + \setbox\@cclv=\vbox{% + \setbox\z@=\hbox{% + % the boxes \pgfutil@abe ("every page") and \pgfutil@abb ("current page") + % are used to generate pdf objects / dictionaries which are + % required for the graphics which are somewhere in the "real" + % page content. + % BUT: these pdf objects MUST NOT be affected by text layout + % shifts! Consequently, we have to undo \hoffset and \voffset + % (which are h/v shifts to the page layout). + % + % Note that this of importance for shadings. To be more + % specific: try out shadings with standalone (which uses + % \hoffset) and with xdvipdfmx (which appears to be more + % fragile than pdflatex) - they break unless we undo \hoffset + % and \voffset. + \ifdim\hoffset=0pt \else \hskip-\hoffset\fi + \pgfutil@abe\unhbox\pgfutil@abb\pgfutil@abc\global\let\pgfutil@abc\pgfutil@empty + \ifdim\hoffset=0pt \else \hskip+\hoffset\fi + }% + \wd\z@=\z@% + \ht\z@=\z@% + \dp\z@=\z@% + % ... see remark above regarding \hoffset/\voffset: + \ifdim\voffset=0pt \else \vskip-\voffset\fi + \box\z@% + \ifdim\voffset=0pt \else \vskip+\voffset\fi + % + % if TeX changes into vertical mode, it inserts \parskip and + % \lineskip. Disable it here: + \nointerlineskip% + \ifvbox\@cclv \unvbox\@cclv \else\hsize=\wd\@cclv \noindent\unhbox\@cclv \fi% + %\box\@cclv + % using \box instead of \unhbox or \unvbox + % has the advantage that glue settings won't be + % altered (as for \unhbox/\unvbox). But \box breaks compatibility + % with the 'remember picture' feature. + }% + } + + % Preview hack: preview.sty hacks into \shipout (which is ok), but + % does not honour everyshi.sty (which is not ok). This causes everyshi + % material to get lost. + \AtBeginDocument{ + \@ifpackageloaded{preview}{% + % Ok, package loaded. Swap definitions of everyshi.sty's shipout + % and preview.sty's shipout: + \ifPreview + \let\shipout\@EveryShipout@Org@Shipout%This is the null version of \shipout, created by preview and saved by everyshi + \let\@EveryShipout@Org@Shipout\pr@shipout% This is the original shipout + \let\pr@shipout\@EveryShipout@Shipout% + \fi + }{}% + } } % Guess the driver: diff --git a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-plain.def b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-plain.def index 95dacd18a46..58fa3eac5f8 100644 --- a/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-plain.def +++ b/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-plain.def @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty index 710eea546b4..0474adfc31c 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseimage.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseimage.sty index 0785efc1cd8..7920e4daa91 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseimage.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseimage.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaselayers.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaselayers.sty index 0785efc1cd8..7920e4daa91 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaselayers.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaselayers.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasematrix.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasematrix.sty index 6ae9ba0fb59..01715384c1d 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasematrix.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasematrix.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasepatterns.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasepatterns.sty index 0785efc1cd8..7920e4daa91 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasepatterns.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasepatterns.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseplot.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseplot.sty index 8f40563ceca..1db7f610e1f 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseplot.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseplot.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseshapes.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseshapes.sty index 1829c521c54..b91b44df187 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseshapes.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbaseshapes.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasesnakes.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasesnakes.sty index 8995a463d3d..82fcb1f0a25 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasesnakes.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfbasesnakes.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty index 67ad19b7411..e50a3cec5d9 100644 --- a/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +++ b/Master/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfarrows.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfarrows.sty index 419be0065b2..d619cfd7df1 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfarrows.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfarrows.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfautomata.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfautomata.sty index d43cdd4f782..a5ccb62fae7 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfautomata.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfautomata.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty index 571f2e5b3c2..8bb5ab447d4 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty index 470868e793b..573d45d9b41 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfheaps.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfheaps.sty index ed5a95c1530..6228c961ce9 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfheaps.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfheaps.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryarrows.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryarrows.sty index 875bbf02641..253ed35a84c 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryarrows.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryarrows.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryautomata.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryautomata.sty index 29d6655da3a..1ea9902cc41 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryautomata.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryautomata.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryplothandlers.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryplothandlers.sty index 1510046e7d0..536003568ba 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryplothandlers.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryplothandlers.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryplotmarks.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryplotmarks.sty index 2f1ca05e07d..af70c2d7d69 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryplotmarks.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryplotmarks.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryshapes.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryshapes.sty index c11f25ff009..96d64709a0f 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryshapes.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibraryshapes.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarysnakes.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarysnakes.sty index 5d0484f7c79..d0ee7fa9242 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarysnakes.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarysnakes.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarytikzbackgrounds.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarytikzbackgrounds.sty index 584f81434fd..94a1c0f5cf6 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarytikzbackgrounds.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarytikzbackgrounds.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarytikztrees.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarytikztrees.sty index 00cea02b023..676b28d47de 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarytikztrees.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgflibrarytikztrees.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfnodes.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfnodes.sty index 33a76867961..c58f3bc2b72 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfnodes.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfnodes.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfshade.sty b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfshade.sty index 29d430e34f7..2b3283010ca 100644 --- a/Master/texmf-dist/tex/latex/pgf/compatibility/pgfshade.sty +++ b/Master/texmf-dist/tex/latex/pgf/compatibility/pgfshade.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/doc/generic/pgf/macros/pgfmanual-en-macros.tex b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual-en-macros.tex index c73768aa934..4096700dbe0 100644 --- a/Master/texmf-dist/doc/generic/pgf/macros/pgfmanual-en-macros.tex +++ b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual-en-macros.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % @@ -18,7 +18,9 @@ \definecolor{animationgraphicbackground}{rgb}{0.96,0.96,0.8} \newenvironment{pgfmanualentry}{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}}{\endlist} -\newcommand\pgfmanualentryheadline[1]{\itemsep=0pt\parskip=0pt{\raggedright\item\strut{#1}\par}\topsep=0pt} +\newcounter{pgfmanualentry} +\newcommand\pgfmanualentryheadline[1]{% + \itemsep=0pt\parskip=0pt{\raggedright\item\refstepcounter{pgfmanualentry}\strut{#1}\par}\topsep=0pt} \newcommand\pgfmanualbody{\parskip3pt} \let\origtexttt=\texttt @@ -289,7 +291,7 @@ \def\extractmathfunctionname@#1(#2)#3\tmpb{\def\mathname{#1}} \makeatother - + \newenvironment{math-function}[1]{ \def\mathdefaultname{#1} \extractmathfunctionname{#1} @@ -319,7 +321,7 @@ \pgfmanualentryheadline{\mathexample\hfill\mathtype}% \def\mathtest{#1}% \ifx\mathtest\pgfmanualemptytext% - \index{#2@\protect\texttt{#2} #3 math operator}% + \index{#2@\protect\texttt{#2} #3 math operator}% \index{Math operators!#2@\protect\texttt{#2}}% \fi% \pgfmanualbody @@ -338,7 +340,7 @@ \pgfmanualentryheadline{\mathexample\hfill\mathtype}% \def\mathtest{#1}% \ifx\mathtest\pgfmanualemptytext% - \index{#2#3@\protect\texttt{#2\protect\ #3} #4 math operators}% + \index{#2#3@\protect\texttt{#2\protect\ #3} #4 math operators}% \index{Math operators!#2#3@\protect\texttt{#2\protect\ #3}}% \fi% \pgfmanualbody @@ -799,7 +801,7 @@ \decomposetoodeep#1/#2\nil% \else% \iffirsttime% - \begingroup% + \begingroup% % also make a pdf link anchor with full key path. \def\hyperlabelwithoutslash##1/\nil{% \pgfmanualpdflabel{##1}{}% @@ -1165,7 +1167,7 @@ \edef\strippedtext{\stripcommand#1}% \expandafter\getridofats\strippedtext @\relax% } - + \gdef\stripcommand#1{\expandafter\mygobble\string#1} } @@ -1317,14 +1319,14 @@ \newenvironment{arrowexamples} {\begin{tabbing} - \hbox to \dimexpr\linewidth-5.5cm\relax{\emph{Appearance of the below at line width} \hfil} \= + \hbox to \dimexpr\linewidth-5.5cm\relax{\emph{Appearance of the below at line width} \hfil} \= \hbox to 1.9cm{\emph{0.4pt}\hfil} \= \hbox to 2cm{\emph{0.8pt}\hfil} \= \emph{1.6pt} \\ } {\end{tabbing}\vskip-1em} \newenvironment{arrowcapexamples} {\begin{tabbing} - \hbox to \dimexpr\linewidth-5.5cm\relax{\emph{Appearance of the below at line width} \hfil} \= + \hbox to \dimexpr\linewidth-5.5cm\relax{\emph{Appearance of the below at line width} \hfil} \= \hbox to 1.9cm{\emph{1ex}\hfil} \= \hbox to 2cm{\emph{1em}\hfil} \\ } {\end{tabbing}\vskip-1em} @@ -1367,7 +1369,7 @@ \newcommand\symarrow[1]{% \index{#1@\protect\texttt{#1} arrow tip}% \index{Arrow tips!#1@\protect\texttt{#1}}% - \texttt{#1}& yields thick + \texttt{#1}& yields thick \begin{tikzpicture}[arrows={#1-#1},thick,baseline] \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; @@ -1382,7 +1384,7 @@ \newcommand\symarrowdouble[1]{% \index{#1@\protect\texttt{#1} arrow tip}% \index{Arrow tips!#1@\protect\texttt{#1}}% - \texttt{#1}& yields thick + \texttt{#1}& yields thick \begin{tikzpicture}[arrows={#1-#1},thick,baseline] \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; @@ -1393,12 +1395,12 @@ \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture}, double + \end{tikzpicture}, double \begin{tikzpicture}[arrows={#1-#1},thick,baseline] \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; \draw[double,double equal sign distance] (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} and + \end{tikzpicture} and \begin{tikzpicture}[arrows={#1-#1},thin,baseline] \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; @@ -1411,7 +1413,7 @@ \index{Arrow tips!#1@\protect\texttt{#1}}% \index{#2@\protect\texttt{#2} arrow tip}% \index{Arrow tips!#2@\protect\texttt{#2}}% - \texttt{#1-#2}& yields thick + \texttt{#1-#2}& yields thick \begin{tikzpicture}[arrows={#1-#2},thick,baseline] \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; @@ -1429,7 +1431,7 @@ \index{Arrow tips!#1@\protect\texttt{#1}}% \index{#2@\protect\texttt{#2} arrow tip}% \index{Arrow tips!#2@\protect\texttt{#2}}% - \texttt{#1-#2}& yields thick + \texttt{#1-#2}& yields thick \begin{tikzpicture}[arrows={#1-#2},thick,baseline] \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; @@ -1439,12 +1441,12 @@ \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture}, double + \end{tikzpicture}, double \begin{tikzpicture}[arrows={#1-#2},thick,baseline] \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; \draw[double,double equal sign distance] (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} and + \end{tikzpicture} and \begin{tikzpicture}[arrows={#1-#2},thin,baseline] \useasboundingbox (-1mm,-0.5ex) rectangle (1.1cm,2ex); \fill [black!15] (1cm,-.5ex) rectangle (1.1cm,1.5ex) (-1mm,-.5ex) rectangle (0mm,1.5ex) ; @@ -1473,7 +1475,7 @@ \index{#1@\protect\texttt{#1} plot mark}% \index{Plot marks!#1@\protect\texttt{#1}} \texttt{mark=\declare{\noligs{#1}}} & \tikz\draw[color=black!25] - plot[mark=#1,mark options={fill=examplefill,draw=black}] + plot[mark=#1,mark options={fill=examplefill,draw=black}] coordinates {(0,0) (.5,0.2) (1,0) (1.5,0.2)};\\ } @@ -1552,7 +1554,7 @@ % \codeexample@tabinit@catcode % and % \codeexample@tabinit@replacementchars -% which are used inside of +% which are used inside of %\begin{codeexample} % ... %\end{codeexample} @@ -1903,7 +1905,7 @@ \makeatother -%%% Local Variables: +%%% Local Variables: %%% mode: latex %%% TeX-master: "beameruserguide" -%%% End: +%%% End: diff --git a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.code.tex b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.code.tex index fca9c791b8d..3c5ebee2abf 100644 --- a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.code.tex +++ b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.code.tex @@ -1,4 +1,4 @@ -% Copyright 2009 by Till Tantau and Christian Feuersänger +% Copyright 2019 by Till Tantau and Christian Feuersänger % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex index 370c5ad071d..32186b64ed8 100644 --- a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex +++ b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex @@ -7,7 +7,7 @@ % % It is based on Till Tantau's PGF package. % -% Copyright 2007/2008/2009 by Christian Feuersänger. +% Copyright 2007/2008/2019 by Christian Feuersänger. % % This program is free software: you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by diff --git a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.prettyprinter.code.tex b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.prettyprinter.code.tex index 3a230cac233..d01b375a9c9 100644 --- a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.prettyprinter.code.tex +++ b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.prettyprinter.code.tex @@ -7,7 +7,7 @@ % % It is based on Till Tantau's PGF package. % -% Copyright 2007/2008/2009 by Christian Feuersänger. +% Copyright 2007/2008/2019 by Christian Feuersänger. % % This program is free software: you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by @@ -1069,11 +1069,7 @@ \pgfmanual@pretty@pgfkeys@collectvalue@next }% \def\afterpgfmanual@pretty@collectargs@finish@value{% - \pgfutil@ifnextchar\pgfmanual@EOI{% - \pgfmanual@pretty@pgfkeys@loop - }{% - \expandafter\pgfmanual@pretty@pgfkeys@loop\pgfmanualprettyprinterterminator% re-insert the gobbled comma here! - }% + \expandafter\pgfmanual@pretty@pgfkeys@loop\pgfmanualprettyprinterterminator% re-insert the gobbled comma here! }% {\catcode`\^^M=13 \catcode`\ =13\relax\catcode`\%=13\relax\gdef\pgfmanual@pretty@restorespaces{\def%{\pgfmanual@pretty@percent}\def^^M{\pgfmanual@pretty@space}\def {\pgfmanual@pretty@space}}} diff --git a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.sty b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.sty index e084fd41837..9edf7708344 100644 --- a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.sty +++ b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.sty @@ -1,4 +1,4 @@ -% Copyright 2009 by Till Tantau and Christian Feuersänger +% Copyright 2018 by Till Tantau and Christian Feuersänger % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/frontendlayer/libraries/tikzlibraryexternal.code.tex b/Master/texmf-dist/tex/latex/pgf/frontendlayer/libraries/tikzlibraryexternal.code.tex index dc1fc05b936..d609371cd04 100644 --- a/Master/texmf-dist/tex/latex/pgf/frontendlayer/libraries/tikzlibraryexternal.code.tex +++ b/Master/texmf-dist/tex/latex/pgf/frontendlayer/libraries/tikzlibraryexternal.code.tex @@ -1,4 +1,4 @@ -% Copyright 2008 by Christian Feuersaenger +% Copyright 2019 by Christian Feuersaenger % % This file may be distributed and/or modified % @@ -7,16 +7,16 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. % -% +% % This file provides a high-level automatic export feature for tikz pictures. % It allows to export EACH SINGLE FIGURE into a separate PDF. % -% The simplest way is to use +% The simplest way is to use % % \tikzexternalize{myarticle} % % it simply converts every figure using the write18 method. If that is not possible, -% you need to reconfigure \tikzexternalize: it can generate a list of figure file names +% you need to reconfigure \tikzexternalize: it can generate a list of figure file names % and you need to generate these figures manually (or with a script). % % It replaces \tikzpicture/ \endtikzpicture and \tikz and invokes \beginpgfgraphicnamed ... \endpgfgraphicnamed @@ -30,16 +30,16 @@ % ... also used for \pdf@shellescape. \usepackage{pdftexcmds} \pgfutil@IfFileExists{atveryend.sty}{% - \usepackage{atveryend}% + \usepackage{atveryend}% }{% - \message{! Package tikz Warning: \string\usepackage{atveryend} impossible. Automatic resolving of references within external files impossible.}% + \message{! Package tikz Warning: \string\usepackage{atveryend} impossible. Automatic resolving of references within external files impossible.}% }% % source generic implementation: \input tikzexternalshared.code.tex \pgfutil@IfUndefined{pdf@mdfivesum}{}{% - \let\tikzexternal@mdfivesum=\pdf@mdfivesum + \let\tikzexternal@mdfivesum=\pdf@mdfivesum }% \def\tikzexternal@TEXDIALECT@begpicture{\begin{tikzpicture}} @@ -54,54 +54,55 @@ % % This does also work if <name> is NOT tikzpicture! \def\tikzexternal@TEXDIALECT@collectpicture#1{% - \begingroup - \t@tikzexternal@tmpa={}% - \tikzexternal@laTeX@collect@until@end@tikzpicture{#1}% + \begingroup + \t@tikzexternal@tmpa={}% + \tikzexternal@laTeX@collect@until@end@tikzpicture{#1}% } % Loop until we find '\end{tikzpicture}'. We have to make sure that % even strings like '#1' are allowed inside of the collected argument. \long\def\tikzexternal@laTeX@collect@until@end@tikzpicture#1#2\end#3{% - \def\tikzexternal@laTeX@collect@until@end@tikzpicture@{#3}% - \ifx\tikzexternal@laTeX@collect@until@end@tikzpicture@\tikzexternal@laTeX@collect@until@end@tikzpicturetikzpicturestring - \t@tikzexternal@tmpa=\expandafter{\the\t@tikzexternal@tmpa #2}% - \edef\tikzexternal@TEXDIALECT@collectpicture@next{% - \noexpand\endgroup - \noexpand#1{\the\t@tikzexternal@tmpa}% - }% - \t@tikzexternal@tmpa={}% release memory. - \else - \t@tikzexternal@tmpa=\expandafter{\the\t@tikzexternal@tmpa #2\end{#3}}% - \def\tikzexternal@TEXDIALECT@collectpicture@next{% - \tikzexternal@laTeX@collect@until@end@tikzpicture{#1}}% - \fi - \tikzexternal@TEXDIALECT@collectpicture@next + \def\tikzexternal@laTeX@collect@until@end@tikzpicture@{#3}% + \ifx\tikzexternal@laTeX@collect@until@end@tikzpicture@\tikzexternal@laTeX@collect@until@end@tikzpicturetikzpicturestring + \t@tikzexternal@tmpa=\expandafter{\the\t@tikzexternal@tmpa #2}% + \edef\tikzexternal@TEXDIALECT@collectpicture@next{% + \noexpand\endgroup + \noexpand#1{\the\t@tikzexternal@tmpa}% + }% + \t@tikzexternal@tmpa={}% release memory. + \else + \t@tikzexternal@tmpa=\expandafter{\the\t@tikzexternal@tmpa #2\end{#3}}% + \def\tikzexternal@TEXDIALECT@collectpicture@next{% + \tikzexternal@laTeX@collect@until@end@tikzpicture{#1}}% + \fi + \tikzexternal@TEXDIALECT@collectpicture@next }% \def\tikzexternal@laTeX@collect@until@end@tikzpicturetikzpicturestring{tikzpicture}% \def\tikzexternal@handle@landscape{% - \ltx@ifpackageloaded{pdflscape}{% - % Work around a bug in conjunction with pdflscape and - % external: without this optimize-away-instruction, the - % externalized image would be rotated - and it will be rotated - % once more again when it is included. - % - % if we "optimize it away", the landscape stuff will be - % omitted. I hope this is enough... might not be entirely - % fool-proof; perhaps we need to set it to \relax. For now, it - % will probably do the job - \tikzset{ - external/.cd, - optimize command away=\landscape, - optimize command away=\endlandscape - }% - }{% - }% + \ltx@ifpackageloaded{pdflscape}{% + % Work around a bug in conjunction with pdflscape and + % external: without this optimize-away-instruction, the + % externalized image would be rotated - and it will be rotated + % once more again when it is included. + % + % if we "optimize it away", the landscape stuff will be + % omitted. I hope this is enough... might not be entirely + % fool-proof; perhaps we need to set it to \relax. For now, it + % will probably do the job + \tikzset{ + external/.cd, + optimize command away=\landscape, + optimize command away=\endlandscape + }% + }{% + }% }% \AtBeginDocument{% - \pgfutil@ifundefined{tikzexternalrealjob}{% - \global\let\tikzexternalrealjob=\jobname - }{}% - \tikzexternal@handle@landscape + \pgfutil@ifundefined{tikzexternalrealjob}{% + \global\let\tikzexternalrealjob=\jobname + }{}% + \tikzexternal@handle@landscape }% + diff --git a/Master/texmf-dist/tex/latex/pgf/frontendlayer/pgfpict2e.sty b/Master/texmf-dist/tex/latex/pgf/frontendlayer/pgfpict2e.sty index 830fa0c6428..5bb19603eaf 100644 --- a/Master/texmf-dist/tex/latex/pgf/frontendlayer/pgfpict2e.sty +++ b/Master/texmf-dist/tex/latex/pgf/frontendlayer/pgfpict2e.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty b/Master/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty index d3b8ed6e7f0..9efacf0d757 100644 --- a/Master/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +++ b/Master/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/math/pgfmath.sty b/Master/texmf-dist/tex/latex/pgf/math/pgfmath.sty index f079db528ea..2ab7c546240 100644 --- a/Master/texmf-dist/tex/latex/pgf/math/pgfmath.sty +++ b/Master/texmf-dist/tex/latex/pgf/math/pgfmath.sty @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty b/Master/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty index 6f9c2b8b932..c87aded119d 100644 --- a/Master/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +++ b/Master/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/pgfcalendar.sty b/Master/texmf-dist/tex/latex/pgf/utilities/pgfcalendar.sty index c209bcdb7e3..52cb4c3771c 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/pgfcalendar.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/pgfcalendar.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/pgffor.sty b/Master/texmf-dist/tex/latex/pgf/utilities/pgffor.sty index c0de8c134ad..246e8259ed0 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/pgffor.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty b/Master/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty index cca97758372..aa0d3e02fe7 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/pgfpages.sty b/Master/texmf-dist/tex/latex/pgf/utilities/pgfpages.sty index c652a2621b9..f71239f2e06 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/pgfpages.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/pgfpages.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2019 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/pgfparser.sty b/Master/texmf-dist/tex/latex/pgf/utilities/pgfparser.sty new file mode 100644 index 00000000000..5e1956b39f0 --- /dev/null +++ b/Master/texmf-dist/tex/latex/pgf/utilities/pgfparser.sty @@ -0,0 +1,15 @@ +% Copyright 2020 by Till Tantau +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +% +% See the file doc/generic/pgf/licenses/LICENSE for more details. + +\RequirePackage{pgfrcs} +\RequirePackage{pgfkeys} + +\input{pgfmoduleparser.code.tex} + +\endinput diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty b/Master/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty index 05db9decaea..b7124aab514 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/tikzexternal.sty b/Master/texmf-dist/tex/latex/pgf/utilities/tikzexternal.sty index 4f9d31572f6..5add24053a3 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/tikzexternal.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/tikzexternal.sty @@ -1,4 +1,4 @@ -% Copyright 2008 by Christian Feuersaenger +% Copyright 2020 by Christian Feuersaenger % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/xxcolor.sty b/Master/texmf-dist/tex/latex/pgf/utilities/xxcolor.sty index d085debebdf..9a4bb4e5b69 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/xxcolor.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/xxcolor.sty @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgf.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgf.tex index 777bafc505c..86de7a622e3 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgf.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgf.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseimage.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseimage.tex index 675ac960c4f..3b7886284c1 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseimage.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseimage.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaselayers.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaselayers.tex index 626c89d5a87..d6361eadd8e 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaselayers.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaselayers.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasematrix.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasematrix.tex index a860a1a7bcc..fadfabf8de1 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasematrix.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasematrix.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasepatterns.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasepatterns.tex index 3b14b0a3a3f..a014a5123ee 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasepatterns.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasepatterns.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseplot.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseplot.tex index ef56ce8715e..1efa3a8ae9d 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseplot.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseplot.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseshapes.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseshapes.tex index 94fa7a28884..3178e515cac 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseshapes.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbaseshapes.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasesnakes.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasesnakes.tex index 7902e02bf31..650e5ae1acc 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasesnakes.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfbasesnakes.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfcore.tex b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfcore.tex index 590120a96c5..a3d621b0ff7 100644 --- a/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfcore.tex +++ b/Master/texmf-dist/tex/plain/pgf/basiclayer/pgfcore.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/frontendlayer/tikz.tex b/Master/texmf-dist/tex/plain/pgf/frontendlayer/tikz.tex index 30aa11fa074..52d809fb55e 100644 --- a/Master/texmf-dist/tex/plain/pgf/frontendlayer/tikz.tex +++ b/Master/texmf-dist/tex/plain/pgf/frontendlayer/tikz.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/math/pgfmath.tex b/Master/texmf-dist/tex/plain/pgf/math/pgfmath.tex index b26fbc8c356..ffc401447c5 100644 --- a/Master/texmf-dist/tex/plain/pgf/math/pgfmath.tex +++ b/Master/texmf-dist/tex/plain/pgf/math/pgfmath.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/systemlayer/pgfsys.tex b/Master/texmf-dist/tex/plain/pgf/systemlayer/pgfsys.tex index 1ca8bba3581..f27edec1e35 100644 --- a/Master/texmf-dist/tex/plain/pgf/systemlayer/pgfsys.tex +++ b/Master/texmf-dist/tex/plain/pgf/systemlayer/pgfsys.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/utilities/pgfcalendar.tex b/Master/texmf-dist/tex/plain/pgf/utilities/pgfcalendar.tex index 768357527ae..81b1893e87f 100644 --- a/Master/texmf-dist/tex/plain/pgf/utilities/pgfcalendar.tex +++ b/Master/texmf-dist/tex/plain/pgf/utilities/pgfcalendar.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/utilities/pgffor.tex b/Master/texmf-dist/tex/plain/pgf/utilities/pgffor.tex index 15d6ea34211..13885f2abaa 100644 --- a/Master/texmf-dist/tex/plain/pgf/utilities/pgffor.tex +++ b/Master/texmf-dist/tex/plain/pgf/utilities/pgffor.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/utilities/pgfkeys.tex b/Master/texmf-dist/tex/plain/pgf/utilities/pgfkeys.tex index 9a34286258e..278d520452c 100644 --- a/Master/texmf-dist/tex/plain/pgf/utilities/pgfkeys.tex +++ b/Master/texmf-dist/tex/plain/pgf/utilities/pgfkeys.tex @@ -1,4 +1,4 @@ -% Copyright 2007 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/plain/pgf/utilities/pgfrcs.tex b/Master/texmf-dist/tex/plain/pgf/utilities/pgfrcs.tex index 6d8928dc078..f1054823b7b 100644 --- a/Master/texmf-dist/tex/plain/pgf/utilities/pgfrcs.tex +++ b/Master/texmf-dist/tex/plain/pgf/utilities/pgfrcs.tex @@ -1,4 +1,4 @@ -% Copyright 2006 by Till Tantau +% Copyright 2018 by Till Tantau % % This file may be distributed and/or modified % |