From efa82421207447b206334f92f7abf54effc4ac4d Mon Sep 17 00:00:00 2001 From: Luigi Scarso <luigi.scarso@gmail.com> Date: Sun, 6 Jan 2019 22:34:47 +0000 Subject: [PATCH] luatex 1.09.2 --- manual/luatex-backend.tex | 1234 +- manual/luatex-callbacks.tex | 101 +- manual/luatex-enhancements.tex | 591 +- manual/luatex-firstpage.tex | 2 +- manual/luatex-fontloader.tex | 174 +- manual/luatex-fonts.tex | 97 +- manual/luatex-graphics.tex | 337 +- manual/luatex-introduction.tex | 61 +- manual/luatex-languages.tex | 189 +- manual/luatex-lua.tex | 212 +- manual/luatex-math.tex | 1243 +- manual/luatex-modifications.tex | 373 +- manual/luatex-nodes.tex | 1350 +- manual/luatex-preamble.tex | 28 +- manual/luatex-registers.tex | 9 + manual/luatex-statistics.tex | 2 + manual/luatex-style.tex | 30 +- manual/luatex-tex.tex | 1200 +- manual/luatex-titlepage.tex | 2 +- manual/luatex.pdf | Bin 1402272 -> 1529094 bytes manual/luatex.tex | 25 +- source/Build | 5 +- source/ChangeLog | 6 + source/Makefile.in | 1 - source/README | 34 +- source/build-aux/config.guess | 52 +- source/build-aux/config.sub | 23 +- source/build-aux/texinfo.tex | 72 +- source/configure | 14 +- source/doc/Makefile.in | 1 - source/doc/build-tools.txt | 2 +- source/doc/tlbuild.info | 694 +- source/libs/Makefile.in | 1 - source/libs/README | 23 +- source/libs/configure | 10 +- source/libs/libpng/ChangeLog | 5 + source/libs/libpng/README | 4 +- source/libs/libpng/TLpatches/ChangeLog | 4 + source/libs/libpng/TLpatches/TL-Changes | 4 +- source/libs/libpng/configure | 32 +- source/libs/libpng/libpng-src/ANNOUNCE | 99 +- source/libs/libpng/libpng-src/AUTHORS | 45 + source/libs/libpng/libpng-src/CHANGES | 29 +- source/libs/libpng/libpng-src/CMakeLists.txt | 316 +- source/libs/libpng/libpng-src/LICENSE | 175 +- source/libs/libpng/libpng-src/Makefile.am | 7 +- source/libs/libpng/libpng-src/README | 111 +- source/libs/libpng/libpng-src/TODO | 49 +- source/libs/libpng/libpng-src/TRADEMARK | 8 + source/libs/libpng/libpng-src/arm/arm_init.c | 3 +- .../libs/libpng/libpng-src/arm/filter_neon.S | 2 +- .../libpng-src/arm/filter_neon_intrinsics.c | 27 +- .../libpng-src/arm/palette_neon_intrinsics.c | 149 + source/libs/libpng/libpng-src/config.h.in | 3 - source/libs/libpng/libpng-src/configure.ac | 9 +- .../libpng-src/contrib/conftest/pngcp.dfa | 2 +- .../libpng-src/contrib/examples/pngpixel.c | 6 +- .../libpng-src/contrib/gregbook/readpng2.c | 2 +- .../libpng-src/contrib/libtests/makepng.c | 32 +- .../libpng-src/contrib/libtests/pngimage.c | 6 +- .../libpng-src/contrib/libtests/pngstest.c | 27 +- .../libpng-src/contrib/libtests/pngunknown.c | 2 +- .../libpng-src/contrib/libtests/pngvalid.c | 167 +- .../libpng-src/contrib/libtests/tarith.c | 4 +- .../contrib/powerpc-vsx/linux_aux.c | 6 +- .../libpng-src/contrib/tools/makesRGB.c | 6 +- .../libpng/libpng-src/contrib/tools/pngcp.c | 16 +- .../libpng/libpng-src/contrib/tools/pngfix.c | 10 +- source/libs/libpng/libpng-src/example.c | 431 +- .../libpng-src/intel/filter_sse2_intrinsics.c | 37 +- .../libs/libpng/libpng-src/intel/intel_init.c | 3 +- .../libs/libpng/libpng-src/libpng-manual.txt | 91 +- source/libs/libpng/libpng-src/libpng.3 | 295 +- source/libs/libpng/libpng-src/libpngpf.3 | 12 +- .../libpng-src/mips/filter_msa_intrinsics.c | 3 +- .../libs/libpng/libpng-src/mips/mips_init.c | 3 +- source/libs/libpng/libpng-src/png.5 | 66 +- source/libs/libpng/libpng-src/png.c | 50 +- source/libs/libpng/libpng-src/png.h | 303 +- source/libs/libpng/libpng-src/pngconf.h | 16 +- source/libs/libpng/libpng-src/pngdebug.h | 6 +- source/libs/libpng/libpng-src/pngerror.c | 12 +- source/libs/libpng/libpng-src/pngget.c | 6 +- source/libs/libpng/libpng-src/pnginfo.h | 6 +- source/libs/libpng/libpng-src/pnglibconf.h | 11 +- source/libs/libpng/libpng-src/pngmem.c | 6 +- source/libs/libpng/libpng-src/pngpread.c | 16 +- source/libs/libpng/libpng-src/pngpriv.h | 38 +- source/libs/libpng/libpng-src/pngread.c | 32 +- source/libs/libpng/libpng-src/pngrio.c | 6 +- source/libs/libpng/libpng-src/pngrtran.c | 88 +- source/libs/libpng/libpng-src/pngrutil.c | 39 +- source/libs/libpng/libpng-src/pngset.c | 12 +- source/libs/libpng/libpng-src/pngstruct.h | 10 +- source/libs/libpng/libpng-src/pngtest.c | 22 +- source/libs/libpng/libpng-src/pngtrans.c | 12 +- source/libs/libpng/libpng-src/pngwio.c | 6 +- source/libs/libpng/libpng-src/pngwrite.c | 38 +- source/libs/libpng/libpng-src/pngwtran.c | 11 +- source/libs/libpng/libpng-src/pngwutil.c | 38 +- .../powerpc/filter_vsx_intrinsics.c | 15 +- .../libpng/libpng-src/powerpc/powerpc_init.c | 3 +- .../libpng-src/projects/vstudio/README.txt | 114 +- .../libpng-src/projects/vstudio/zlib.props | 9 +- .../libs/libpng/libpng-src/scripts/README.txt | 55 +- source/libs/libpng/libpng-src/scripts/def.c | 29 - .../libpng/libpng-src/scripts/descrip.mms | 4 +- .../libpng-src/scripts/libpng-config-head.in | 2 +- .../libpng/libpng-src/scripts/libpng.pc.in | 2 +- .../libpng/libpng-src/scripts/makefile.32sunu | 2 +- .../libpng/libpng-src/scripts/makefile.64sunu | 2 +- .../libpng/libpng-src/scripts/makefile.bor | 170 - .../libpng/libpng-src/scripts/makefile.cegcc | 2 +- .../libpng/libpng-src/scripts/makefile.darwin | 2 +- .../libpng-src/scripts/makefile.freebsd | 2 +- .../libpng/libpng-src/scripts/makefile.hp64 | 4 +- .../libpng/libpng-src/scripts/makefile.hpgcc | 2 +- .../libpng/libpng-src/scripts/makefile.hpux | 4 +- .../libpng/libpng-src/scripts/makefile.knr | 116 - .../libpng/libpng-src/scripts/makefile.linux | 7 +- .../libpng-src/scripts/makefile.linux-opt | 4 +- .../libpng/libpng-src/scripts/makefile.mips | 2 +- .../libpng/libpng-src/scripts/makefile.msc | 100 - .../libpng/libpng-src/scripts/makefile.msys | 2 +- .../libpng-src/scripts/makefile.ne12bsd | 2 +- .../libpng/libpng-src/scripts/makefile.netbsd | 2 +- .../libpng-src/scripts/makefile.openbsd | 4 +- .../libpng/libpng-src/scripts/makefile.sco | 2 +- .../libpng/libpng-src/scripts/makefile.sggcc | 2 +- .../libpng/libpng-src/scripts/makefile.sgi | 2 +- .../libpng/libpng-src/scripts/makefile.so9 | 2 +- .../libpng-src/scripts/makefile.solaris | 5 +- .../libpng-src/scripts/makefile.solaris-x86 | 243 - .../libpng/libpng-src/scripts/makefile.std | 4 +- .../libpng/libpng-src/scripts/makefile.sunos | 2 +- .../libpng/libpng-src/scripts/makefile.tc3 | 100 - .../libpng/libpng-src/scripts/pnglibconf.dfa | 3 +- .../libpng-src/scripts/pnglibconf.h.prebuilt | 11 +- .../libpng/libpng-src/scripts/symbols.def | 1 - source/libs/libpng/version.ac | 2 +- source/libs/lua52/ChangeLog | 75 - source/libs/lua52/Makefile.am | 106 - source/libs/lua52/Makefile.in | 1763 -- source/libs/lua52/TLpatches/ChangeLog | 36 - source/libs/lua52/TLpatches/patch-01-utf-8 | 26 - source/libs/lua52/TLpatches/patch-02-FreeBSD | 13 - source/libs/lua52/TLpatches/patch-03-export | 33 - source/libs/lua52/ac/withenable.ac | 7 - source/libs/lua52/aclocal.m4 | 1183 -- source/libs/lua52/config.h.in | 81 - source/libs/lua52/configure | 16136 ---------------- source/libs/lua52/configure.ac | 46 - source/libs/lua52/error.exp | 5 - source/libs/lua52/include/Makefile.am | 41 - source/libs/lua52/include/Makefile.in | 499 - source/libs/lua52/lua52-src/Makefile | 114 - source/libs/lua52/lua52-src/README | 6 - source/libs/lua52/lua52-src/doc/contents.html | 608 - source/libs/lua52/lua52-src/doc/logo.gif | Bin 4232 -> 0 bytes source/libs/lua52/lua52-src/doc/lua.1 | 116 - source/libs/lua52/lua52-src/doc/lua.css | 106 - source/libs/lua52/lua52-src/doc/luac.1 | 118 - source/libs/lua52/lua52-src/doc/manual.css | 27 - source/libs/lua52/lua52-src/doc/manual.html | 10508 ---------- .../lua52-src/doc/osi-certified-72x60.png | Bin 3774 -> 0 bytes source/libs/lua52/lua52-src/doc/readme.html | 417 - source/libs/lua52/lua52-src/src/Makefile | 187 - source/libs/lua52/lua52-src/src/lapi.c | 1284 -- source/libs/lua52/lua52-src/src/lapi.h | 24 - source/libs/lua52/lua52-src/src/lauxlib.c | 959 - source/libs/lua52/lua52-src/src/lauxlib.h | 212 - source/libs/lua52/lua52-src/src/lbaselib.c | 458 - source/libs/lua52/lua52-src/src/lbitlib.c | 212 - source/libs/lua52/lua52-src/src/lcode.c | 881 - source/libs/lua52/lua52-src/src/lcode.h | 83 - source/libs/lua52/lua52-src/src/lcorolib.c | 155 - source/libs/lua52/lua52-src/src/lctype.c | 52 - source/libs/lua52/lua52-src/src/lctype.h | 99 - source/libs/lua52/lua52-src/src/ldblib.c | 408 - source/libs/lua52/lua52-src/src/ldebug.c | 610 - source/libs/lua52/lua52-src/src/ldebug.h | 34 - source/libs/lua52/lua52-src/src/ldo.c | 681 - source/libs/lua52/lua52-src/src/ldo.h | 46 - source/libs/lua52/lua52-src/src/ldump.c | 173 - source/libs/lua52/lua52-src/src/lfunc.c | 161 - source/libs/lua52/lua52-src/src/lfunc.h | 33 - source/libs/lua52/lua52-src/src/lgc.c | 1220 -- source/libs/lua52/lua52-src/src/lgc.h | 157 - source/libs/lua52/lua52-src/src/linit.c | 67 - source/libs/lua52/lua52-src/src/liolib.c | 669 - source/libs/lua52/lua52-src/src/llex.c | 530 - source/libs/lua52/lua52-src/src/llex.h | 78 - source/libs/lua52/lua52-src/src/llimits.h | 309 - source/libs/lua52/lua52-src/src/lmathlib.c | 279 - source/libs/lua52/lua52-src/src/lmem.c | 99 - source/libs/lua52/lua52-src/src/lmem.h | 57 - source/libs/lua52/lua52-src/src/loadlib.c | 725 - source/libs/lua52/lua52-src/src/lobject.c | 287 - source/libs/lua52/lua52-src/src/lobject.h | 607 - source/libs/lua52/lua52-src/src/lopcodes.c | 107 - source/libs/lua52/lua52-src/src/lopcodes.h | 288 - source/libs/lua52/lua52-src/src/loslib.c | 323 - source/libs/lua52/lua52-src/src/lparser.c | 1638 -- source/libs/lua52/lua52-src/src/lparser.h | 119 - source/libs/lua52/lua52-src/src/lstate.c | 323 - source/libs/lua52/lua52-src/src/lstate.h | 228 - source/libs/lua52/lua52-src/src/lstring.c | 185 - source/libs/lua52/lua52-src/src/lstring.h | 46 - source/libs/lua52/lua52-src/src/lstrlib.c | 1019 - source/libs/lua52/lua52-src/src/ltable.c | 588 - source/libs/lua52/lua52-src/src/ltable.h | 45 - source/libs/lua52/lua52-src/src/ltablib.c | 285 - source/libs/lua52/lua52-src/src/ltm.c | 77 - source/libs/lua52/lua52-src/src/ltm.h | 57 - source/libs/lua52/lua52-src/src/lua.c | 497 - source/libs/lua52/lua52-src/src/lua.h | 444 - source/libs/lua52/lua52-src/src/lua.hpp | 9 - source/libs/lua52/lua52-src/src/luac.c | 432 - source/libs/lua52/lua52-src/src/luaconf.h | 551 - source/libs/lua52/lua52-src/src/lualib.h | 55 - source/libs/lua52/lua52-src/src/lundump.c | 258 - source/libs/lua52/lua52-src/src/lundump.h | 28 - source/libs/lua52/lua52-src/src/lvm.c | 867 - source/libs/lua52/lua52-src/src/lvm.h | 44 - source/libs/lua52/lua52-src/src/lzio.c | 76 - source/libs/lua52/lua52-src/src/lzio.h | 65 - source/libs/lua52/lua52.test | 7 - source/libs/lua52/luaerror.test | 15 - source/libs/lua52/luatest.c | 15 - source/libs/lua52/texlua52.pc.in | 12 - source/libs/lua52/version.ac | 11 - source/libs/lua53/configure | 5 +- source/libs/lua53/configure.ac | 2 +- source/libs/luajit/LuaJIT-src/src/lj_alloc.c | 2 +- source/libs/luajit/TLpatches/patch-13 | 13 + source/libs/luajit/configure | 2 +- source/libs/luajit/configure.ac | 1 - source/libs/luajit/native/configure | 8 +- source/libs/luajit/native/configure.ac | 3 +- source/libs/zlib/configure | 3 +- source/libs/zziplib/configure | 12 +- source/m4/ChangeLog | 12 + source/m4/kpse-common.m4 | 25 +- source/m4/kpse-icu-flags.m4 | 25 +- source/m4/kpse-pkgs.m4 | 17 +- source/m4/kpse-setup.m4 | 6 +- source/m4/kpse-visibility.m4 | 6 +- source/texk/Makefile.in | 1 - source/texk/README | 8 +- source/texk/configure | 6 +- source/texk/kpathsea/ChangeLog | 77 + source/texk/kpathsea/NEWS | 9 +- source/texk/kpathsea/c-pathch.h | 13 +- source/texk/kpathsea/cnf.c | 18 +- source/texk/kpathsea/configure | 2 + source/texk/kpathsea/doc/kpathsea.info | 179 +- source/texk/kpathsea/doc/kpathsea.texi | 56 +- source/texk/kpathsea/elt-dirs.c | 33 +- source/texk/kpathsea/expand.h | 4 +- source/texk/kpathsea/knj.c | 7 +- source/texk/kpathsea/kpsewhich.c | 67 +- source/texk/kpathsea/path-elt.c | 16 +- source/texk/kpathsea/pathsearch.h | 14 +- source/texk/kpathsea/progname.c | 5 +- source/texk/kpathsea/tex-make.c | 18 +- source/texk/kpathsea/texmf.cnf | 262 +- .../texk/texlive/linked_scripts/Makefile.am | 5 + .../texk/texlive/linked_scripts/Makefile.in | 5 + source/texk/texlive/w32_wrapper/runscript.tlu | 13 +- source/texk/web2c/ChangeLog | 32 + source/texk/web2c/Makefile.am | 2 +- source/texk/web2c/Makefile.in | 6347 ++---- source/texk/web2c/configure | 104 +- source/texk/web2c/configure.ac | 2 +- source/texk/web2c/ctangleboot.cin | 72 +- source/texk/web2c/cwebboot.cin | 42 +- source/texk/web2c/cwebboot.hin | 8 +- source/texk/web2c/cwebdir/ChangeLog | 16 + source/texk/web2c/cwebdir/comm-w2c.ch | 6 + source/texk/web2c/cwebdir/common.c | 2 +- source/texk/web2c/cwebdir/common.w | 2 +- source/texk/web2c/cwebdir/ctang-w2c.ch | 2 + source/texk/web2c/cwebdir/cweav-w2c.ch | 8 + source/texk/web2c/cwebdir/cweave.w | 2 +- source/texk/web2c/lib/ChangeLog | 49 + source/texk/web2c/lib/openclose.c | 69 +- source/texk/web2c/lib/printversion.c | 23 +- source/texk/web2c/lib/texmfmp.c | 132 +- source/texk/web2c/luatexdir/am/libluatex.am | 43 +- source/texk/web2c/luatexdir/am/luaffi.am | 15 +- source/texk/web2c/luatexdir/am/luamisc.am | 13 +- source/texk/web2c/luatexdir/am/luapplib.am | 22 +- source/texk/web2c/luatexdir/am/luasocket.am | 13 +- source/texk/web2c/luatexdir/am/luatex.am | 53 +- source/texk/web2c/luatexdir/font/sfnt.c | 5 +- source/texk/web2c/luatexdir/font/tounicode.c | 38 +- source/texk/web2c/luatexdir/font/tt_table.c | 14 +- source/texk/web2c/luatexdir/font/writecff.c | 2 +- source/texk/web2c/luatexdir/image/epdf.h | 3 +- source/texk/web2c/luatexdir/image/pdftoepdf.c | 47 +- source/texk/web2c/luatexdir/lua/llanglib.c | 24 +- source/texk/web2c/luatexdir/lua/lnodelib.c | 99 +- source/texk/web2c/luatexdir/lua/lpdfelib.c | 137 +- source/texk/web2c/luatexdir/lua/luatex-core.c | 984 +- .../texk/web2c/luatexdir/lua/luatex-core.lua | 931 +- .../luapplib/html/_sources/ppcode.rst.txt | 8 + .../web2c/luatexdir/luapplib/html/ppcode.html | 20 +- .../web2c/luatexdir/luapplib/html/pplib.html | 2 + .../luatexdir/luapplib/html/searchindex.js | 2 +- source/texk/web2c/luatexdir/luapplib/ppapi.h | 10 +- source/texk/web2c/luatexdir/luapplib/ppconf.h | 8 + source/texk/web2c/luatexdir/luapplib/ppheap.c | 2 +- source/texk/web2c/luatexdir/luapplib/pplib.h | 1 + source/texk/web2c/luatexdir/luapplib/ppload.c | 8 +- .../web2c/luatexdir/luapplib/util/utilarm.h | 10 + .../web2c/luatexdir/luapplib/util/utilfpred.c | 116 +- .../web2c/luatexdir/luapplib/util/utiliof.c | 4 +- .../web2c/luatexdir/luapplib/util/utilsha.c | 53 +- source/texk/web2c/luatexdir/luatex.c | 4 +- .../texk/web2c/luatexdir/luatex_svnversion.h | 2 +- source/texk/web2c/luatexdir/luazlib/lzlib.c | 7 +- source/texk/web2c/luatexdir/tex/mainbody.c | 1 + source/texk/web2c/luatexdir/tex/printing.c | 3 +- source/texk/web2c/luatexdir/tex/texnodes.c | 2 +- source/texk/web2c/man/ChangeLog | 8 + source/texk/web2c/man/cweb.man | 5 +- source/texk/web2c/man/mpost.man | 55 +- source/texk/web2c/mplibdir/ChangeLog | 4 + source/texk/web2c/mplibdir/am/mplib.am | 4 +- source/texk/web2c/mplibdir/mp.w | 12 +- source/texk/web2c/mplibdir/mpost.w | 5 + source/texk/web2c/omegafonts/Makefile.in | 2 +- source/texk/web2c/otps/Makefile.in | 2 +- source/texk/web2c/otps/win32/Makefile.in | 2 +- source/texk/web2c/pmpostdir/am/pmpost.am | 5 +- source/texk/web2c/synctexdir/ChangeLog | 4 + source/texk/web2c/synctexdir/synctex.c | 27 +- source/texk/web2c/tangle.ch | 834 + source/texk/web2c/tangle.web | 3325 ++++ source/texk/web2c/texmfmp.h | 6 +- source/texk/web2c/web2c/ChangeLog | 5 + source/texk/web2c/web2c/configure | 2 + source/texk/web2c/web2c/fixwrites.c | 3 +- source/texk/web2c/window/Makefile.in | 2 +- source/texk/web2c/xetexdir/xetex_version.h | 2 +- source/utils/Makefile.in | 1 - source/utils/README | 8 +- source/utils/configure | 6 +- 348 files changed, 14929 insertions(+), 64937 deletions(-) create mode 100644 source/libs/libpng/libpng-src/AUTHORS create mode 100644 source/libs/libpng/libpng-src/TRADEMARK create mode 100644 source/libs/libpng/libpng-src/arm/palette_neon_intrinsics.c delete mode 100644 source/libs/libpng/libpng-src/scripts/def.c delete mode 100644 source/libs/libpng/libpng-src/scripts/makefile.bor delete mode 100644 source/libs/libpng/libpng-src/scripts/makefile.knr delete mode 100644 source/libs/libpng/libpng-src/scripts/makefile.msc delete mode 100644 source/libs/libpng/libpng-src/scripts/makefile.solaris-x86 delete mode 100644 source/libs/libpng/libpng-src/scripts/makefile.tc3 delete mode 100644 source/libs/lua52/ChangeLog delete mode 100644 source/libs/lua52/Makefile.am delete mode 100644 source/libs/lua52/Makefile.in delete mode 100644 source/libs/lua52/TLpatches/ChangeLog delete mode 100644 source/libs/lua52/TLpatches/patch-01-utf-8 delete mode 100644 source/libs/lua52/TLpatches/patch-02-FreeBSD delete mode 100644 source/libs/lua52/TLpatches/patch-03-export delete mode 100644 source/libs/lua52/ac/withenable.ac delete mode 100644 source/libs/lua52/aclocal.m4 delete mode 100644 source/libs/lua52/config.h.in delete mode 100755 source/libs/lua52/configure delete mode 100644 source/libs/lua52/configure.ac delete mode 100644 source/libs/lua52/error.exp delete mode 100644 source/libs/lua52/include/Makefile.am delete mode 100644 source/libs/lua52/include/Makefile.in delete mode 100644 source/libs/lua52/lua52-src/Makefile delete mode 100644 source/libs/lua52/lua52-src/README delete mode 100644 source/libs/lua52/lua52-src/doc/contents.html delete mode 100644 source/libs/lua52/lua52-src/doc/logo.gif delete mode 100644 source/libs/lua52/lua52-src/doc/lua.1 delete mode 100644 source/libs/lua52/lua52-src/doc/lua.css delete mode 100644 source/libs/lua52/lua52-src/doc/luac.1 delete mode 100644 source/libs/lua52/lua52-src/doc/manual.css delete mode 100644 source/libs/lua52/lua52-src/doc/manual.html delete mode 100644 source/libs/lua52/lua52-src/doc/osi-certified-72x60.png delete mode 100644 source/libs/lua52/lua52-src/doc/readme.html delete mode 100644 source/libs/lua52/lua52-src/src/Makefile delete mode 100644 source/libs/lua52/lua52-src/src/lapi.c delete mode 100644 source/libs/lua52/lua52-src/src/lapi.h delete mode 100644 source/libs/lua52/lua52-src/src/lauxlib.c delete mode 100644 source/libs/lua52/lua52-src/src/lauxlib.h delete mode 100644 source/libs/lua52/lua52-src/src/lbaselib.c delete mode 100644 source/libs/lua52/lua52-src/src/lbitlib.c delete mode 100644 source/libs/lua52/lua52-src/src/lcode.c delete mode 100644 source/libs/lua52/lua52-src/src/lcode.h delete mode 100644 source/libs/lua52/lua52-src/src/lcorolib.c delete mode 100644 source/libs/lua52/lua52-src/src/lctype.c delete mode 100644 source/libs/lua52/lua52-src/src/lctype.h delete mode 100644 source/libs/lua52/lua52-src/src/ldblib.c delete mode 100644 source/libs/lua52/lua52-src/src/ldebug.c delete mode 100644 source/libs/lua52/lua52-src/src/ldebug.h delete mode 100644 source/libs/lua52/lua52-src/src/ldo.c delete mode 100644 source/libs/lua52/lua52-src/src/ldo.h delete mode 100644 source/libs/lua52/lua52-src/src/ldump.c delete mode 100644 source/libs/lua52/lua52-src/src/lfunc.c delete mode 100644 source/libs/lua52/lua52-src/src/lfunc.h delete mode 100644 source/libs/lua52/lua52-src/src/lgc.c delete mode 100644 source/libs/lua52/lua52-src/src/lgc.h delete mode 100644 source/libs/lua52/lua52-src/src/linit.c delete mode 100644 source/libs/lua52/lua52-src/src/liolib.c delete mode 100644 source/libs/lua52/lua52-src/src/llex.c delete mode 100644 source/libs/lua52/lua52-src/src/llex.h delete mode 100644 source/libs/lua52/lua52-src/src/llimits.h delete mode 100644 source/libs/lua52/lua52-src/src/lmathlib.c delete mode 100644 source/libs/lua52/lua52-src/src/lmem.c delete mode 100644 source/libs/lua52/lua52-src/src/lmem.h delete mode 100644 source/libs/lua52/lua52-src/src/loadlib.c delete mode 100644 source/libs/lua52/lua52-src/src/lobject.c delete mode 100644 source/libs/lua52/lua52-src/src/lobject.h delete mode 100644 source/libs/lua52/lua52-src/src/lopcodes.c delete mode 100644 source/libs/lua52/lua52-src/src/lopcodes.h delete mode 100644 source/libs/lua52/lua52-src/src/loslib.c delete mode 100644 source/libs/lua52/lua52-src/src/lparser.c delete mode 100644 source/libs/lua52/lua52-src/src/lparser.h delete mode 100644 source/libs/lua52/lua52-src/src/lstate.c delete mode 100644 source/libs/lua52/lua52-src/src/lstate.h delete mode 100644 source/libs/lua52/lua52-src/src/lstring.c delete mode 100644 source/libs/lua52/lua52-src/src/lstring.h delete mode 100644 source/libs/lua52/lua52-src/src/lstrlib.c delete mode 100644 source/libs/lua52/lua52-src/src/ltable.c delete mode 100644 source/libs/lua52/lua52-src/src/ltable.h delete mode 100644 source/libs/lua52/lua52-src/src/ltablib.c delete mode 100644 source/libs/lua52/lua52-src/src/ltm.c delete mode 100644 source/libs/lua52/lua52-src/src/ltm.h delete mode 100644 source/libs/lua52/lua52-src/src/lua.c delete mode 100644 source/libs/lua52/lua52-src/src/lua.h delete mode 100644 source/libs/lua52/lua52-src/src/lua.hpp delete mode 100644 source/libs/lua52/lua52-src/src/luac.c delete mode 100644 source/libs/lua52/lua52-src/src/luaconf.h delete mode 100644 source/libs/lua52/lua52-src/src/lualib.h delete mode 100644 source/libs/lua52/lua52-src/src/lundump.c delete mode 100644 source/libs/lua52/lua52-src/src/lundump.h delete mode 100644 source/libs/lua52/lua52-src/src/lvm.c delete mode 100644 source/libs/lua52/lua52-src/src/lvm.h delete mode 100644 source/libs/lua52/lua52-src/src/lzio.c delete mode 100644 source/libs/lua52/lua52-src/src/lzio.h delete mode 100644 source/libs/lua52/lua52.test delete mode 100644 source/libs/lua52/luaerror.test delete mode 100644 source/libs/lua52/luatest.c delete mode 100644 source/libs/lua52/texlua52.pc.in delete mode 100644 source/libs/lua52/version.ac create mode 100644 source/libs/luajit/TLpatches/patch-13 create mode 100644 source/texk/web2c/luatexdir/luapplib/util/utilarm.h create mode 100644 source/texk/web2c/tangle.ch create mode 100644 source/texk/web2c/tangle.web diff --git a/manual/luatex-backend.tex b/manual/luatex-backend.tex index b825d10f2..0ec9be9b0 100644 --- a/manual/luatex-backend.tex +++ b/manual/luatex-backend.tex @@ -6,7 +6,7 @@ \startchapter[reference=backend,title={The backend libraries}] -\section{The \type {pdf} library} +\startsection[title={The \type {pdf} library}][library=pdf] \topicindex{backend} \topicindex{\PDF} @@ -15,7 +15,7 @@ This library contains variables and functions that are related to the \PDF\ backend. You can find more details about the expected values to setters in \in {section} [backendprimitives]. -\subsection{\type {mapfile}, \type {mapline}} +\startsubsection[title={\type {mapfile}, \type {mapline}}] \topicindex{map files} \topicindex{files+map} @@ -29,134 +29,205 @@ These two functions can be used to replace primitives \orm {pdfmapfile} and \orm {pdfmapline} inherited from \PDFTEX. They expect a string as only parameter and have no return value. The first character in a map line can be \type {-}, \type {+} or \type {=} which means as much as remove, add or replace -this line. +this line. They are not state setters but act immediately. -\subsection {\type {[set|get][catalog|info|names|trailer]}} +\stopsubsection + +\startsubsection[title={\type {[set|get][catalog|info|names|trailer]}}] \topicindex{\PDF+trailer} \topicindex{\PDF+catalog} \topicindex{\PDF+info} +\libindex{setcatalog} \libindex{getcatalog} +\libindex{setinfo} \libindex{getinfo} +\libindex{setnames} \libindex{getnames} +\libindex{settrailer} \libindex{gettrailer} + These functions complement the corresponding \PDF\ backend token lists dealing -with metadata. The value types are strings and they are written out to the \PDF\ -file directly after the token registers. +with metadata. The value types are strings and they are written to the \PDF\ +file directly after the token registers set at the \TEX\ end are written. + +\stopsubsection -\subsection {\type {[set|get][pageattributes|pageresources|pagesattributes]}} +\startsubsection[title={\type {[set|get][pageattributes|pageresources|pagesattributes]}}] + +\libindex{setpageattributes} \libindex{getpageattributes} +\libindex{setpageresources} \libindex{getpageresources} +\libindex{setpagesattributes} \libindex{getpagesattributes} \topicindex{\PDF+page attributes} \topicindex{\PDF+page resources} These functions complement the corresponding \PDF\ backend token lists dealing with page resources. The variables have no interaction with the corresponding \PDF\ -backend token register. They are written out to the \PDF\ file directly after the -token registers. +backend token register. They are written to the \PDF\ file directly after the +token registers set at the \TEX\ end are written. + +\stopsubsection + +\startsubsection[title={\type {[set|get][xformattributes|xformresources]}}] -\subsection{\type {[set|get][xformattributes|xformresources]}} +\libindex{setxformattributes} \libindex{getxformattributes} +\libindex{setxformresources} \libindex{getxformresources} \topicindex{\PDF+xform attributes} \topicindex{\PDF+xform resources} These functions complement the corresponding \PDF\ backend token lists dealing with reuseable boxes and images. The variables have no interaction with the -corresponding \PDF\ backend token register. They are written out to the \PDF\ -file directly after the token registers. +corresponding \PDF\ backend token register. They are written to the \PDF\ +file directly after the token registers set at the \TEX\ end are written. -\subsection{\type {getversion} and \type {[set|get]minorversion}} +\stopsubsection + +\startsubsection[title={\type {[set|get][major|minor]version}}] \topicindex{\PDF+version} -The version is frozen in the binary but you can set the minor version. What minor -version you set depends on what \PDF\ features you use. This is out of control -of \LUATEX. +\libindex{getmajorversion} \libindex{setmajorversion} +\libindex{getminorversion} \libindex{setminorversion} + +You can set both the major and minor version of the output. The major version is +normally~1 but when set to~2 some data will not be written to the file in order +to comply with the standard. What minor version you set depends on what \PDF\ +features you use. This is out of control of \LUATEX. + +\stopsubsection -\subsection{\type {getcreationdate}} +\startsubsection[title={\type {getcreationdate}}] \topicindex{\PDF+date} +\libindex{getcreationdate} + This function returns a string with the date in the format that ends up in the \PDF\ file, in this case it's: {\tttf \cldcontext{pdf.getcreationdate()}}. -\subsection{\type {[set|get]inclusionerrorlevel}, \type {[set|get]ignoreunknownimages}} +\stopsubsection + +\startsubsection[title={\type {[set|get]inclusionerrorlevel} and \type {[set|get]ignoreunknownimages}}] \topicindex{\PDF+options} +\libindex{getinclusionerrorlevel} \libindex{setinclusionerrorlevel} +\libindex{getignoreunknownimages} \libindex{setignoreunknownimages} + These variable control how error in included image are treated. They are modeled after the \PDFTEX\ equivalents. -\subsection{\type {[set|get]suppressoptionalinfo}} +\stopsubsection + +\startsubsection[title={\type {[set|get]suppressoptionalinfo}, \type {[set|get]trailerid} +and \type {[set|get]omitcidset}}] \topicindex{\PDF+options} +\topicindex{\PDF+trailer} -This bitset determines what kind of info gets flushes. By default we flush all. +\libindex{getsuppressoptionalinfo} \libindex{setsuppressoptionalinfo} +\libindex{gettrailerid} \libindex{settrailerid} +\libindex{getomitcidset} \libindex{setomitcidset} +\libindex{getomitcharset} \libindex{setomitcharset} -\subsection{\type {[set|get]trailerid}} +The optional info bitset (a number) determines what kind of info gets flushed. +By default we flush all. See \in {section} [sec:pdfextensions] for more details. -\topicindex{\PDF+trailer} +You can set your own trailer id. This has to be string containing valid \PDF\ +array content with checksums. + +The cidset and charset flags (numbers) disables inclusion of a so called \type +{CIDSet} and \type {CharSet} entries, which can be handy when aiming at some of +the many \PDF\ substandards. -You can set your own trailer id. This has to be a valid array string -with checksums. +\stopsubsection -\subsection{\type {[set|get]compresslevel}} +\startsubsection[title={\type {[set|get][obj|]compresslevel} and \type {[set|get]recompress}}] \topicindex{\PDF+compression} -These two functions set the level of compression. The minimum value is~0, -the maximum is~9. +\libindex{getcompresslevel} \libindex{setcompresslevel} +\libindex{getobjcompresslevel} \libindex{setobjcompresslevel} +\libindex{getrecompress} \libindex{setrecompress} -\subsection{\type {[set|get]objcompresslevel}} +These functions set the level stream compression. When object compression is +enabled multiple objects will be packed in a compressed stream which saves space. +The minimum values are~0, the maxima are~9. -\topicindex{\PDF+compression} +When recompression is to~1 compressed objects will be decompressed and when +compresslevel is larger than zero they will then be recompressed. This is mostly +a debugging feature and should not be relied upon. -These two functions set the level of compression. The minimum value is~0, -the maximum is~9. +\stopsubsection -\subsection{\type {[set|get]gentounicode}} +\startsubsection[title={\type {[set|get]gentounicode}}] \topicindex{\PDF+unicode} -This flag enables tounicode generation (like in \PDFTEX). - -\subsection{\type {[set|get]omitcidset}} +\libindex{getgentounicode} \libindex{setgentounicode} -\topicindex{\PDF+options} +This flag enables tounicode generation (like in \PDFTEX). Normally the values are +provided by the font loader. -This flag disables inclusion of a so called CIDSet which can be handy when aiming -at some of the many \PDF\ substandards. +\stopsubsection -\subsection{\type {[set|get]decimaldigits}} +\startsubsection[title={\type {[set|get]decimaldigits}}] \topicindex{\PDF+precision} +\libindex{getdecimaldigits} \libindex{setdecimaldigits} + These two functions set the accuracy of floats written to the \PDF file. You can set any value but the backend will not go below~3 and above~6. -\subsection{\type {[set|get]pkresolution}} +\stopsubsection + +\startsubsection[title={\type {[set|get]pkresolution}}] \topicindex{\PDF+resolution} +\libindex{getpkresolution} \libindex{setpkresolution} + These setter takes two arguments: the resolution and an optional zero or one that indicates if this is a fixed one. The getter returns these two values. -\subsection{\type {getlast[obj|link|annot]} and \type {getretval}} +\stopsubsection + +\startsubsection[title={\type {getlast[obj|link|annot]} and \type {getretval}}] \topicindex{\PDF+objects} \topicindex{\PDF+annotations} +\libindex{getlastobj} \libindex{setlastobj} +\libindex{getlastlink} \libindex{setlastlink} +\libindex{getlastannot} \libindex{setlastannot} +\libindex{getretval} + These status variables are similar to the ones traditionally used in the backend interface at the \TEX\ end. -\subsection{\type {maxobjnum} and \type {objtype}, \type {fontname}, \type {fontobjnum}, -\type {fontsize}, \type {xformname}}. +\stopsubsection + +\startsubsection[title={\type {getmaxobjnum} and \type {getobjtype}, \type {getfontname}, +\type {getfontobjnum}, \type {getfontsize}, \type {getxformname}}] + +\libindex{getmaxobjnum} +\libindex{getobjtype} +\libindex{getfontname} +\libindex{getfontobjnum} +\libindex{getfontsize} +\libindex{getxformname} -These (and some other) introspective helpers were moved from the the \type {tex} -namespace to the \type {pdf} namespace but kept their original names. They are -mostly used when you construct \PDF\ objects yourself and need for instance -information about a (to be) embedded font. +These introspective helpers are mostly used when you construct \PDF\ objects +yourself and need for instance information about a (to be) embedded font. -\subsection{\type {[set|get]origin}} +\stopsubsection + +\startsubsection[title={\type {[set|get]origin}}] \topicindex{\PDF+positioning} +\libindex{setorigin} \libindex{getorigin} + This one is used to set the horizonal and|/|or vertical offset, a traditional backend property. @@ -168,35 +239,57 @@ pdf.setorigin(tex.sp("1in"),tex.sp("1in")) The counterpart of this function returns two values. -\subsection{\type {[set|get]imageresolution}} +\stopsubsection + +\startsubsection[title={\type {[set|get]imageresolution}}] \topicindex{\PDF+resolution} +\libindex{setimageresolution} \libindex{getimageresolution} + These two functions relate to the imageresolution that is used when the image itself doesn't provide a non|-|zero x or y resolution. -\subsection {\type {[set|get][link|dest|thread|xform]margin}} +\stopsubsection + +\startsubsection[title={\type {[set|get][link|dest|thread|xform]margin}}] \topicindex{\PDF+margins} +\libindex{getlinkmargin} \libindex{setlinkmargin} +\libindex{getdestmargin} \libindex{setdestmargin} +\libindex{getthreadmargin} \libindex{setthreadmargin} +\libindex{getxformmargin} \libindex{setxformmargin} +\libindex{getmarginmargin} \libindex{setmarginmargin} + These functions can be used to set and retrieve the margins that are added to the natural bounding boxes of the respective objects. -\subsection {\type {get[pos|hpos|vpos]}} +\stopsubsection + +\startsubsection[title={\type {get[pos|hpos|vpos]}}] \topicindex{\PDF+positions} -These function get current location on the output page, measured from its lower +\libindex{getpos} +\libindex{gethpos} +\libindex{getvpos} + +These functions get current location on the output page, measured from its lower left corner. The values return scaled points as units. \starttyping local h, v = pdf.getpos() \stoptyping -\subsection {\type {[has|get]matrix}} +\stopsubsection + +\startsubsection[title={\type {[has|get]matrix}}] \topicindex{\PDF+matrix} +\libindex{getmatrix} \libindex{hasmatrix} + The current matrix transformation is available via the \type {getmatrix} command, which returns 6 values: \type {sx}, \type {rx}, \type {ry}, \type {sy}, \type {tx}, and \type {ty}. The \type {hasmatrix} function returns \type {true} when a @@ -209,13 +302,17 @@ if pdf.hasmatrix() then end \stoptyping -\subsection {\type {print}} +\stopsubsection + +\startsubsection[title={\type {print}}] \topicindex{\PDF+print to} -You can print string to the \PDF\ document from within a within a \lpr {latelua} -call. This function is not to be used inside \prm {directlua} unless you know -{\it exactly} what you are doing. +\libindex{print} + +You can print a string to the \PDF\ document from within a \lpr {latelua} call. +This function is not to be used inside \prm {directlua} unless you know {\it +exactly} what you are doing. \startfunctioncall pdf.print(<string> s) @@ -225,10 +322,14 @@ pdf.print(<string> type, <string> s) The optional parameter can be used to mimic the behavior of \PDF\ literals: the \type {type} is \type {direct} or \type {page}. -\subsection {\type {immediateobj}} +\stopsubsection + +\startsubsection[title={\type {immediateobj}}] \topicindex{\PDF+objects} +\libindex{immediateobj} + This function creates a \PDF\ object and immediately writes it to the \PDF\ file. It is modelled after \PDFTEX's \prm {immediate} \orm {pdfobj} primitives. All function variants return the object number of the newly generated object. @@ -246,7 +347,7 @@ function variants return the object number of the newly generated object. The first version puts the \type {objtext} raw into an object. Only the object wrapper is automatically generated, but any internal structure (like \type {<< ->>} dictionary markers) needs to provided by the user. The second version with +>>} dictionary markers) needs to be provided by the user. The second version with keyword \type {file} as first argument puts the contents of the file with name \type {filename} raw into the object. The third version with keyword \type {stream} creates a stream object and puts the \type {streamtext} raw into the @@ -269,10 +370,14 @@ reserved \PDF\ object. pdf.immediateobj(<integer> n, "streamfile", <string> filename, <string> attrtext) \stopfunctioncall -\subsection{\type{obj}} +\stopsubsection + +\startsubsection[title={\type{obj}}] \topicindex{\PDF+objects} +\libindex{obj} + This function creates a \PDF\ object, which is written to the \PDF\ file only when referenced, e.g., by \type {refobj()}. @@ -310,29 +415,36 @@ The second mode accepts a single argument table with key--value pairs. \startfunctioncall <number> n = pdf.obj { type = <string>, - immmediate = <boolean>, + immediate = <boolean>, objnum = <number>, attr = <string>, compresslevel = <number>, objcompression = <boolean>, file = <string>, - string = <string> + string = <string>, + nolength = <boolean>, } \stopfunctioncall The \type {type} field can have the values \type {raw} and \type {stream}, this -field is required, the others are optional (within constraints). +field is required, the others are optional (within constraints). When \type +{nolength} is set, there will be no \type {/Length} entry added to the +dictionary. Note: this mode makes \type{obj} look more flexible than it actually is: the constraints from the separate parameter version still apply, so for example you can't have both \type {string} and \type {file} at the same time. -\subsection {\type {refobj}} +\stopsubsection + +\startsubsection[title={\type {refobj}}] \topicindex{\PDF+objects} +\libindex{refobj} + This function, the \LUA\ version of the \orm {pdfrefobj} primitive, references an -object by its object number, so that the object will be written out. +object by its object number, so that the object will be written to the \PDF\ file. \startfunctioncall pdf.refobj(<integer> n) @@ -341,15 +453,19 @@ pdf.refobj(<integer> n) This function works in both the \prm {directlua} and \lpr {latelua} environment. Inside \prm {directlua} a new whatsit node \quote {pdf_refobj} is created, which will be marked for flushing during page output and the object is then written -directly after the page, when also the resources objects are written out. Inside -\lpr {latelua} the object will be marked for flushing. +directly after the page, when also the resources objects are written to the \PDF\ +file. Inside \lpr {latelua} the object will be marked for flushing. This function has no return values. -\subsection {\type {reserveobj}} +\stopsubsection + +\startsubsection[title={\type {reserveobj}}] \topicindex{\PDF+objects} +\libindex{reserveobj} + This function creates an empty \PDF\ object and returns its number. \startfunctioncall @@ -357,7 +473,28 @@ This function creates an empty \PDF\ object and returns its number. <number> n = pdf.reserveobj("annot") \stopfunctioncall -\subsection {\type {registerannot}} +\stopsubsection + +\startsubsection[title={\type {getpageref}}] + +\topicindex{\PDF+pages} + +\libindex{getpageref} + +The object number of a page can be fetched with this function. This can be a +forward reference so when you ask for a future page, you do get a number back. + +\startfunctioncall +<number> n = pdf.getpageref(123) +\stopfunctioncall + +\stopsubsection + +\startsubsection[title={\type {registerannot}}] + +\topicindex{\PDF+annotations} + +\libindex{registerannot} This function adds an object number to the \type {/Annots} array for the current page without doing anything else. This function can only be used from within @@ -367,10 +504,14 @@ page without doing anything else. This function can only be used from within pdf.registerannot (<number> objnum) \stopfunctioncall -\subsection {\type {newcolorstack}} +\stopsubsection + +\startsubsection[title={\type {newcolorstack}}] \topicindex{\PDF+color stack} +\libindex{newcolorstack} + This function allocates a new color stack and returns it's id. The arguments are the same as for the similar backend extension primitive. @@ -378,10 +519,14 @@ are the same as for the similar backend extension primitive. pdf.newcolorstack("0 g","page",true) -- page|direct|origin \stopfunctioncall -\subsection {\type {setfontattributes}} +\stopsubsection + +\startsubsection[title={\type {setfontattributes}}] \topicindex{\PDF+fonts} +\libindex{setfontattributes} + This function will force some additional code into the font resource. It can for instance be used to add a custom \type {ToUnicode} vector to a bitmap file. @@ -389,631 +534,355 @@ instance be used to add a custom \type {ToUnicode} vector to a bitmap file. pdf.setfontattributes(<number> font id, <string> pdf code) \stopfunctioncall -\section {The \type {pdfscanner} library} +\stopsubsection -\topicindex{\PDF+scanner} +\stopsection -The \type {pdfscanner} library allows interpretation of \PDF\ content streams and -\type {/ToUnicode} (cmap) streams. You can get those streams from the \type -{epdf} library, as explained in an earlier section. There is only a single -top|-|level function in this library: +\startsection[title={The \type {pdfe} library}][library=pdfe] -\startfunctioncall -pdfscanner.scan (<Object> stream, <table> operatortable, <table> info) -\stopfunctioncall +\startsubsection[title={Introduction}] -The first argument, \type {stream}, should be either a \PDF\ stream object, or a -\PDF\ array of \PDF\ stream objects (those options comprise the possible return -values of \type {<Page>:getContents()} and \type {<Object>:getStream()} in the -\type {epdf} library). +\topicindex{\PDF+objects} -The second argument, \type {operatortable}, should be a \LUA\ table where the -keys are \PDF\ operator name strings and the values are \LUA\ functions (defined -by you) that are used to process those operators. The functions are called -whenever the scanner finds one of these \PDF\ operators in the content stream(s). -The functions are called with two arguments: the \type {scanner} object itself, -and the \type {info} table that was passed are the third argument to \type -{pdfscanner.scan}. +\topicindex{\PDF+analyze} +\topicindex{\PDF+\type{pdfe}} -Internally, \type {pdfscanner.scan} loops over the \PDF\ operators in the -stream(s), collecting operands on an internal stack until it finds a \PDF\ -operator. If that \PDF\ operator's name exists in \type {operatortable}, then the -associated function is executed. After the function has run (or when there is no -function to execute) the internal operand stack is cleared in preparation for the -next operator, and processing continues. +The \type {pdfe} library replaces the \type {epdf} library and provides an +interface to \PDF\ files. It uses the same code as is used for \PDF\ image +inclusion. The \type {pplib} library by Paweł Jackowski replaces the \type +{poppler} (derived from \type {xpdf}) library. -The \type {scanner} argument to the processing functions is needed because it -offers various methods to get the actual operands from the internal operand -stack. +A \PDF\ file is basically a tree of objects and one descends into the tree via +dictionaries (key/value) and arrays (index/value). There are a few topmost +dictionaries that start at root that are accessed more directly. -A simple example of processing a \PDF's document stream could look like this: +Although everything in \PDF\ is basically an object we only wrap a few in so +called userdata \LUA\ objects. -\starttyping -function Do (scanner, info) - local val = scanner:pop() - local name = val[2] -- val[1] == 'name' - local resources = info.resources - local xobject = resources:lookup("XObject"):getDict():lookup(name) - print (info.space ..'Use XObject '.. name) - if xobject and xobject:isStream() then - local dict = xobject:getStream():getDict() - if dict then - local name = dict:lookup("Subtype") - if name:getName() == "Form" then - local newinfo = { - space = info.space .. " " , - resources = dict:lookup("Resources"):getDict() - } - pdfscanner.scan(xobject, operatortable, newinfo) - end - end - end -end +\starttabulate +\BC \PDF \BC \LUA \NC \NR +\NC null \NC nil \NC \NR +\NC boolean \NC boolean \NC \NR +\NC integer \NC integer \NC \NR +\NC float \NC number \NC \NR +\NC name \NC string \NC \NR +\NC string \NC string \NC \NR +\NC array \NC array userdatum \NC \NR +\NC dictionary \NC dictionary userdatum \NC \NR +\NC stream \NC stream userdatum (with related dictionary) \NC \NR +\NC reference \NC reference userdatum \NC \NR +\stoptabulate -operatortable = { Do = Do } +The regular getters return these \LUA\ data types but one can also get more +detailed information. -doc = epdf.open(arg[1]) -pagenum = 1 +\stopsubsection -while pagenum <= doc:getNumPages() do - local page = doc:getCatalog():getPage(pagenum) - local info = { - space = " " , - resources = page:getResourceDict() - } - print('Page ' .. pagenum) - pdfscanner.scan(page:getContents(), operatortable, info) - pagenum = pagenum + 1 -end -\stoptyping +\startsubsection[title={\type {open}, \type {new}, \type {status}, \type {close}, \type {unencrypt}}] -This example iterates over all the actual content in the \PDF, and prints out the -found \type {XObject} names. While the code demonstrates quite some of the \type -{epdf} functions, let's focus on the type \type {pdfscanner} specific code -instead. +\libindex {open} +\libindex {new} +\libindex {new} +\libindex {status} +\libindex {close} +\libindex {unencrypt} -From the bottom up, the following line runs the scanner with the \PDF\ page's -top-level content. +A document is loaded from a file or string \starttyping - pdfscanner.scan(page:getContents(), operatortable, info) +<pdfe document> = pdfe.open(filename) +<pdfe document> = pdfe.new(somestring,somelength) \stoptyping -The third argument, \type {info}, contains two entries: \type {space} is used to -indent the printed output, and \type {resources} is needed so that embedded \type -{XForms} can find their own content. +Such a document is closed with: -The second argument, \type {operatortable} defines a processing function for a -single \PDF\ operator, \type {Do}. +\starttyping +pdfe.close(<pdfe document>) +\stoptyping -The function \type {Do} prints the name of the current \type {XObject}, and then -starts a new scanner for that object's content stream, under the condition that -the \type {XObject} is in fact a \type {/Form}. That nested scanner is called -with new \type {info} argument with an updated \type {space} value so that the -indentation of the output nicely nests, and with an new \type {resources} field -to help the next iteration down to properly process any other, embedded \type -{XObject}s. +You can check if a document opened well by: -Of course, this is not a very useful example in practise, but for the purpose of -demonstrating \type {pdfscanner}, it is just long enough. It makes use of only -one \type {scanner} method: \type {scanner:pop()}. That function pops the top -operand of the internal stack, and returns a \LUA\ table where the object at index -one is a string representing the type of the operand, and object two is its -value. +\starttyping +pdfe.status(<pdfe document>) +\stoptyping -The list of possible operand types and associated \LUA\ value types is: +The returned codes are: -\starttabulate[|l|c|] -\DB types \BC type \NC \NR +\starttabulate[|c|l|] +\DB value \BC explanation \NC \NR \TB -\NC \type{integer} \NC <number> \NC \NR -\NC \type{real} \NC <number> \NC \NR -\NC \type{boolean} \NC <boolean> \NC \NR -\NC \type{name} \NC <string> \NC \NR -\NC \type{operator} \NC <string> \NC \NR -\NC \type{string} \NC <string> \NC \NR -\NC \type{array} \NC <table> \NC \NR -\NC \type{dict} \NC <table> \NC \NR +\NC \type {-2} \NC the document failed to open \NC \NR +\NC \type {-1} \NC the document is (still) protected \NC \NR +\NC \type {0} \NC the document is not encrypted \NC \NR +\NC \type {2} \NC the document has been unencrypted \NC \NR \LL \stoptabulate -In case of \type {integer} or \type {real}, the value is always a \LUA\ (floating -point) number. In case of \type {name}, the leading slash is always stripped. +An encrypted document can be unencrypted by the next command where instead of +either password you can give \type {nil}: -In case of \type {string}, please bear in mind that \PDF\ actually supports -different types of strings (with different encodings) in different parts of the -\PDF\ document, so may need to reencode some of the results; \type {pdfscanner} -always outputs the byte stream without reencoding anything. \type {pdfscanner} -does not differentiate between literal strings and hexadecimal strings (the -hexadecimal values are decoded), and it treats the stream data for inline images -as a string that is the single operand for \type {EI}. +\starttyping +pdfe.unencrypt(<pdfe document>,userpassword,ownerpassword) +\stoptyping -In case of \type {array}, the table content is a list of \type {pop} return -values and in case of \type {dict}, the table keys are \PDF\ name strings and the -values are \type {pop} return values. +\stopsubsection -There are few more methods defined that you can ask \type {scanner}: +\startsubsection[title={\type {size}, \type {version}, \type {getnofobjects}, \type {getnofpages}}] -\starttabulate[|l|p|] -\DB method \BC explanation \NC \NR -\TB -\NC \type{pop} \NC see above \NC \NR -\NC \type{popNumber} \NC return only the value of a \type {real} or \type {integer} \NC \NR -\NC \type{popName} \NC return only the value of a \type {name} \NC \NR -\NC \type{popString} \NC return only the value of a \type {string} \NC \NR -\NC \type{popArray} \NC return only the value of a \type {array} \NC \NR -\NC \type{popDict} \NC return only the value of a \type {dict} \NC \NR -\NC \type{popBool} \NC return only the value of a \type {boolean} \NC \NR -\NC \type{done} \NC abort further processing of this \type {scan()} call \NC \NR -\LL -\stoptabulate +\libindex {size} +\libindex {version} +\libindex {getnofobjects} +\libindex {getnofpages} -The \type {popXXX} are convenience functions, and come in handy when you know the -type of the operands beforehand (which you usually do, in \PDF). For example, the -\type {Do} function could have used \type {local name = scanner:popName()} -instead, because the single operand to the \type {Do} operator is always a \PDF\ -name object. +A successfully opened document can provide some information: -The \type {done} function allows you to abort processing of a stream once you -have learned everything you want to learn. This comes in handy while parsing -\type {/ToUnicode}, because there usually is trailing garbage that you are not -interested in. Without \type {done}, processing only end at the end of the -stream, possibly wasting \CPU\ cycles. +\starttyping +bytes = size(<pdfe document>) +major, minor = version(<pdfe document>) +n = getnofobjects(<pdfe document>) +n = getnofpages(<pdfe document>) +bytes, waste = getnofpages(<pdfe document>) +\stoptyping -\section{The \type {epdf} library} +\stopsubsection -\topicindex{\PDF+analyze} -\topicindex{\PDF+\type{epdf}} +\startsubsection[title={\type {get[catalog|trailer|info]}}] -The \type {epdf} library provides \LUA\ bindings to many \PDF\ access functions -that are defined by the poppler \PDF\ viewer library (written in C$+{}+$ by -Kristian H\o gsberg, based on xpdf by Derek Noonburg). Within \LUATEX\ xpdf -functionality is being used since long time to embed \PDF\ files. The \type -{epdf} library allows to scrutinize an external \PDF\ file. It gives access to -its document structure: catalog, cross|-|reference table, individual pages, -objects, annotations, info, and metadata. The \type {epdf} library only provides -read|-|only access. At some point we might decide to limit the interface to a -reasonable subset. +\libindex {getcatalog} +\libindex {gettrailer} +\libindex {getinfo} -For a start, a \PDF\ file is opened by \type {epdf.open()} with file name, e.g.: +For accessing the document structure you start with the so called catalog, a +dictionary: \starttyping -doc = epdf.open("foo.pdf") +<pdfe dictionary> = pdfe.getcatalog(<pdfe document>) \stoptyping -This normally returns a \type {PDFDoc} userdata variable; but if the file could -not be opened successfully, instead of a fatal error just the value \type {nil} is -returned. - -All \LUA\ functions in the \type {epdf} library are named after the poppler -functions listed in the poppler header files for the various classes, e.g., files -\type {PDFDoc.h}, \type {Dict.h}, and \type {Array.h}. These files can be found -in the poppler subdirectory within the \LUATEX\ sources. Which functions are -already implemented in the \type {epdf} library can be found in the \LUATEX\ -source file \type {lepdflib.cc}. For using the \type {epdf} library, knowledge of -the \PDF\ file architecture is indispensable. - -There are many different userdata types defined by the \type {epdf} library, -currently these are \type {AnnotBorderStyle}, \type {AnnotBorder}, \type -{Annots}, \type {Annot}, \type {Array}, \type {Attribute}, \type {Catalog}, \type -{Dict}, \type {EmbFile}, \type {GString}, \type {LinkDest}, \type {Links}, \type -{Link}, \type {ObjectStream}, \type {Object}, \type {PDFDoc}, \type -{PDFRectangle}, \type {Page}, \type {Ref}, \type {Stream}, \type {StructElement}, -\type {StructTreeRoot} \type {TextSpan}, \type {XRefEntry} and \type {XRef}. - -All these userdata names and the \LUA\ access functions closely resemble the -classes naming from the poppler header files, including the choice of mixed upper -and lower case letters. The \LUA\ function calls use object|-|oriented syntax, -e.g., the following calls return the \type {Page} object for page~1: +The other two root dictionaries are accessed with: \starttyping -pageref = doc:getCatalog():getPageRef(1) -pageobj = doc:getXRef():fetch(pageref.num, pageref.gen) +<pdfe dictionary> = pdfe.gettrailer(<pdfe document>) +<pdfe dictionary> = pdfe.getinfo(<pdfe document>) \stoptyping -But writing such chained calls is risky, as an intermediate function may return -\type {nil} on error. Therefore between function calls there should be \LUA\ type -checks (e.g., against \type {nil}) done. If a non|-|object item is requested (for -instance a \type {Dict} item by calling \type {page:getPieceInfo()}, cf.~\type -{Page.h}) but not available, the \LUA\ functions return \type {nil} (without -error). If a function should return an \type {Object}, but it's not existing, a -\type {Null} object is returned instead, also without error. This is in|-|line -with poppler behavior. +\stopsubsection -All library objects have a \type {__gc} metamethod for garbage collection. The -\type {__tostring} metamethod gives the type name for each object. +\startsubsection[title={\type {getpage}, \type {getbox}}] -These are the object constructors: +\libindex {getpage} +\libindex {getbox} -\startfunctioncall -<PDFDoc> = epdf.open(<string> PDF filename) -<PDFDoc> = epdf.openMemStream(<string> PDF code) -\stopfunctioncall +A specific page can conveniently be reached with the next command, which +returns a dictionary. The first argument is to be a page dictionary. -The functions \type {StructElement_Type}, \type {Attribute_Type} and \type -{AttributeOwner_Type} return a hash table \type {{<string>,<integer>}}. +\starttyping +<pdfe dictionary> = pdfe.getpage(<pdfe dictionary>,pagenumber) +\stoptyping -\type {Annot} methods: +Another convenience command gives you the (bounding) box of a (normally page) +which can be inheritted from the document itself. An example of a valid box name +is \type {MediaBox}. -\startfunctioncall -<boolean> = <Annot>:isOK() -<boolean> = <Annot>:match(<Ref>) -<Object> = <Annot>:getAppearance() -- gone -<AnnotBorder> = <Annot>:getBorder() -- gone -\stopfunctioncall +\starttyping +pages = pdfe.getbox(<pdfe document>,boxname) +\stoptyping -\type {AnnotBorderStyle} methods (gone): +\stopsubsection -\startfunctioncall -<number> = <AnnotBorderStyle>:getWidth() -- gone -\stopfunctioncall +\startsubsection[title={\type {get[string|integer|number|boolean|name]}}] -\type {Annots} methods: +\libindex {getstring} +\libindex {getinteger} +\libindex {getnumber} +\libindex {getboolean} +\libindex {getname} -\startfunctioncall -<integer> = <Annots>:getNumAnnots() -<Annot> = <Annots>:getAnnot(<integer>) -\stopfunctioncall +Common values in dictionaries and arrays are strings, integers, floats, booleans +and names (which are also strings) and these are also normal \LUA\ objects: -\type {Array} methods: +\starttyping +s = getstring (<pdfe array|dictionary>,index|key) +i = getinteger(<pdfe array|dictionary>,index|key) +n = getnumber (<pdfe array|dictionary>,index|key) +b = getboolean(<pdfe array|dictionary>,index|key) +n = getname (<pdfe array|dictionary>,index|key) +\stoptyping -\startfunctioncall -<integer> = <Array>:getLength() -<Object> = <Array>:get(<integer>) -<Object> = <Array>:getNF(<integer>) -<string> = <Array>:getString(<integer>) -\stopfunctioncall +\stopsubsection -\type {Attribute} methods: +\startsubsection[title={\type {get[from][dictionary|array|stream]}}] -\startfunctioncall -<boolean> = <Attribute>:isOk() -<integer> = <Attribute>:getType() -<integer> = <Attribute>:getOwner() -<string> = <Attribute>:getTypeName() -<string> = <Attribute>:getOwnerName() -<Object> = <Attribute>:getValue() -<Object> = <Attribute>:getDefaultValue -<string> = <Attribute>:getName() -<integer> = <Attribute>:getRevision() -<boolean> = <Attribute>:isHidden() -<string> = <Attribute>:getFormattedValue() -\stopfunctioncall +\libindex {getdictionary} \libindex {getfromdictionary} +\libindex {getarray} \libindex {getfromarray} +\libindex {getstream} \libindex {getfromstream} -\type {Catalog} methods: +Normally you will use an index in an array and key in a dictionary but dictionaries +also accept an index. The size of an array or dictionary is available with the +usual \type {#} operator. -\startfunctioncall -<boolean> = <Catalog>:isOK() -<integer> = <Catalog>:getNumPages() -<Page> = <Catalog>:getPage(<integer>) -<Ref> = <Catalog>:getPageRef(<integer>) -<string> = <Catalog>:getBaseURI() -<string> = <Catalog>:readMetadata() -<Object> = <Catalog>:getStructTreeRoot() -<integer> = <Catalog>:findPage(<integer> object number, <integer> object generation) -<LinkDest> = <Catalog>:findDest(<string> name) -<Object> = <Catalog>:getDests() -<integer> = <Catalog>:numEmbeddedFiles() -<EmbFile> = <Catalog>:embeddedFile(<integer>) -<integer> = <Catalog>:numJS() -<string> = <Catalog>:getJS(<integer>) -<Object> = <Catalog>:getOutline() -<Object> = <Catalog>:getAcroForm() -\stopfunctioncall +\starttyping +<pdfe dictionary> = getdictionary(<pdfe array|dictionary>,index|key) +<pdfe array> = getarray (<pdfe array|dictionary>,index|key) +<pdfe stream>, +<pdfe dictionary> = getstream (<pdfe array|dictionary>,index|key) +\stoptyping -\type {EmbFile} methods: +These commands return dictionaries, arrays and streams, which are dictionaries +with a blob of data attached. -\startfunctioncall -<integer> = <EmbFile>:size() -<string> = <EmbFile>:modDate() -<string> = <EmbFile>:createDate() -<string> = <EmbFile>:checksum() -<string> = <EmbFile>:mimeType() -<boolean> = <EmbFile>:isOk() -<string> = <EmbFile>:name() -- not (yet) implemented -<string> = <EmbFile>:description() -- not (yet) implemented -<Object> = <EmbFile>:streamObject() -- not (yet) implemented -<boolean> = <EmbFile>:save() -- will go -\stopfunctioncall +Before we come to an alternative access mode, we mention that the objects provide +access in a different way too, for instance this is valid: -\type {FileSpec} methods: +\starttyping +print(pdfe.open("foo.pdf").Catalog.Type) +\stoptyping -\startfunctioncall -<boolean> = <FileSpec>:isOk() -<string> = <FileSpec>:getFileName() -<string> = <FileSpec>:getFileNameForPlatform() -<string> = <FileSpec>:getDescription() -<EmbFile> = <FileSpec>:getEmbeddedFile() -\stopfunctioncall +At the topmost level there are \type {Catalog}, \type {Info}, \type {Trailer} +and \type {Pages}, so this is also okay: -\type {Dict} methods: +\starttyping +print(pdfe.open("foo.pdf").Pages[1]) +\stoptyping -\startfunctioncall -<integer> = <Dict>:getLength() -<boolean> = <Dict>:is(<string>) -<Object> = <Dict>:lookup(<string>) -<Object> = <Dict>:lookupNF(<string>) -<integer> = <Dict>:lookupInt(<string>, <string>) -<string> = <Dict>:getKey(<integer>) -<Object> = <Dict>:getVal(<integer>) -<Object> = <Dict>:getValNF(<integer>) -<boolean> = <Dict>:hasKey(<string>) -\stopfunctioncall +\stopsubsection -% \type {Link} methods: +\startsubsection[title={\type {[open|close|readfrom][whole|]stream}}] -% \startfunctioncall -% <boolean> = <Link>:isOK() -% <boolean> = <Link>:inRect(<number>, <number>) -% \stopfunctioncall +\libindex {openstream} +\libindex {closestream} +\libindex {readfromstream} +\libindex {readfromwholestream} -\type {LinkDest} methods: +Streams are sort of special. When your index or key hits a stream you get back a +stream object and dictionary object. The dictionary you can access in the usual +way and for the stream there are the following methods: -\startfunctioncall -<boolean> = <LinkDest>:isOK() -<integer> = <LinkDest>:getKind() -<string> = <LinkDest>:getKindName() -<boolean> = <LinkDest>:isPageRef() -<integer> = <LinkDest>:getPageNum() -<Ref> = <LinkDest>:getPageRef() -<number> = <LinkDest>:getLeft() -<number> = <LinkDest>:getBottom() -<number> = <LinkDest>:getRight() -<number> = <LinkDest>:getTop() -<number> = <LinkDest>:getZoom() -<boolean> = <LinkDest>:getChangeLeft() -<boolean> = <LinkDest>:getChangeTop() -<boolean> = <LinkDest>:getChangeZoom() -\stopfunctioncall +\starttyping +okay = openstream(<pdfe stream>,[decode]) + closestream(<pdfe stream>) +str, n = readfromstream(<pdfe stream>) +str, n = readwholestream(<pdfe stream>,[decode]) +\stoptyping -\type {Links} methods: +You either read in chunks, or you ask for the whole. When reading in chunks, you +need to open and close the stream yourself. The \type {n} value indicates the +length read. The \type {decode} parameter controls if the stream data gets +uncompressed. -% <Link> = <Links>:getLink(<integer>) +As with dictionaries, you can access fields in a stream dictionary in the usual +\LUA\ way too. You get the content when you \quote {call} the stream. You can +pass a boolean that indicates if the stream has to be decompressed. -\startfunctioncall -<integer> = <Links>:getNumLinks() -\stopfunctioncall +% pdfe.objectcodes = objectcodes +% pdfe.stringcodes = stringcodes +% pdfe.encryptioncodes = encryptioncodes -\type {Object} methods: +\stopsubsection -\startfunctioncall -<Object> = <Object>:fetch(<XRef>) -<integer> = <Object>:getType() -<string> = <Object>:getTypeName() -<boolean> = <Object>:isBool() -<boolean> = <Object>:isInt() -<boolean> = <Object>:isReal() -<boolean> = <Object>:isNum() -<boolean> = <Object>:isString() -<boolean> = <Object>:isName() -<boolean> = <Object>:isNull() -<boolean> = <Object>:isArray() -<boolean> = <Object>:isDict() -<boolean> = <Object>:isStream() -<boolean> = <Object>:isRef() -<boolean> = <Object>:isCmd() -<boolean> = <Object>:isError() -<boolean> = <Object>:isEOF() -<boolean> = <Object>:isNone() -<boolean> = <Object>:getBool() -<integer> = <Object>:getInt() -<number> = <Object>:getReal() -<number> = <Object>:getNum() -<string> = <Object>:getString() -<string> = <Object>:getName() -<Array> = <Object>:getArray() -<Dict> = <Object>:getDict() -<Stream> = <Object>:getStream() -<Ref> = <Object>:getRef() -<integer> = <Object>:getRefNum() -<integer> = <Object>:getRefGen() -<string> = <Object>:getCmd() -<integer> = <Object>:arrayGetLength() -<Object> = <Object>:arrayGet(<integer>) -<Object> = <Object>:arrayGetNF(<integer>) -<integer> = <Object>:dictGetLength(<integer>) -<Object> = <Object>:dictLookup(<string>) -<Object> = <Object>:dictLookupNF(<string>) -<string> = <Object>:dictgetKey(<integer>) -<Object> = <Object>:dictgetVal(<integer>) -<Object> = <Object>:dictgetValNF(<integer>) -<boolean> = <Object>:streamIs(<string>) - = <Object>:streamReset() -<integer> = <Object>:streamGetChar() -<integer> = <Object>:streamLookChar() -<integer> = <Object>:streamGetPos() - = <Object>:streamSetPos(<integer>) -<Dict> = <Object>:streamGetDict() -\stopfunctioncall +\startsubsection[title={\type {getfrom[dictionary|array]}}] -\type {Page} methods: +\libindex {getfromdictionary} +\libindex {getfromarray} -\startfunctioncall -<boolean> = <Page>:isOk() -<integer> = <Page>:getNum() -<PDFRectangle> = <Page>:getMediaBox() -<PDFRectangle> = <Page>:getCropBox() -<boolean> = <Page>:isCropped() -<number> = <Page>:getMediaWidth() -<number> = <Page>:getMediaHeight() -<number> = <Page>:getCropWidth() -<number> = <Page>:getCropHeight() -<PDFRectangle> = <Page>:getBleedBox() -<PDFRectangle> = <Page>:getTrimBox() -<PDFRectangle> = <Page>:getArtBox() -<integer> = <Page>:getRotate() -<string> = <Page>:getLastModified() -<Dict> = <Page>:getBoxColorInfo() -<Dict> = <Page>:getGroup() -<Stream> = <Page>:getMetadata() -<Dict> = <Page>:getPieceInfo() -<Dict> = <Page>:getSeparationInfo() -<Dict> = <Page>:getResourceDict() -<Object> = <Page>:getAnnots() -<Links> = <Page>:getLinks(<Catalog>) -<Object> = <Page>:getContents() -\stopfunctioncall +In addition to the interface described before, there is also a bit lower level +interface available. -\type {PDFDoc} methods: +\starttyping +key, type, value, detail = getfromdictionary(<pdfe dictionary>,index) +type, value, detail = getfromarray(<pdfe array>,index) +\stoptyping -\startfunctioncall -<boolean> = <PDFDoc>:isOk() -<integer> = <PDFDoc>:getErrorCode() -<string> = <PDFDoc>:getErrorCodeName() -<string> = <PDFDoc>:getFileName() -<XRef> = <PDFDoc>:getXRef() -<Catalog> = <PDFDoc>:getCatalog() -<number> = <PDFDoc>:getPageMediaWidth() -<number> = <PDFDoc>:getPageMediaHeight() -<number> = <PDFDoc>:getPageCropWidth() -<number> = <PDFDoc>:getPageCropHeight() -<integer> = <PDFDoc>:getNumPages() -<string> = <PDFDoc>:readMetadata() -<Object> = <PDFDoc>:getStructTreeRoot() -<integer> = <PDFDoc>:findPage(<integer> object number, - <integer> object generation) -<Links> = <PDFDoc>:getLinks(<integer>) -<LinkDest> = <PDFDoc>:findDest(<string>) -<boolean> = <PDFDoc>:isEncrypted() -<boolean> = <PDFDoc>:okToPrint() -<boolean> = <PDFDoc>:okToChange() -<boolean> = <PDFDoc>:okToCopy() -<boolean> = <PDFDoc>:okToAddNotes() -<boolean> = <PDFDoc>:isLinearized() -<Object> = <PDFDoc>:getDocInfo() -<Object> = <PDFDoc>:getDocInfoNF() -<integer> = <PDFDoc>:getPDFMajorVersion() -<integer> = <PDFDoc>:getPDFMinorVersion() -\stopfunctioncall +\starttabulate[|c|l|l|l|] +\DB type \BC meaning \BC value \BC detail \NC \NR +\NC \type {0} \NC none \NC nil \NC \NC \NR +\NC \type {1} \NC null \NC nil \NC \NC \NR +\NC \type {2} \NC boolean \NC boolean \NC \NC \NR +\NC \type {3} \NC boolean \NC integer \NC \NC \NR +\NC \type {4} \NC number \NC float \NC \NC \NR +\NC \type {5} \NC name \NC string \NC \NC \NR +\NC \type {6} \NC string \NC string \NC hex \NC \NR +\NC \type {7} \NC array \NC arrayobject \NC size \NC \NR +\NC \type {8} \NC dictionary \NC dictionaryobject \NC size \NC \NR +\NC \type {9} \NC stream \NC streamobject \NC dictionary size \NC \NR +\NC \type {10} \NC reference \NC integer \NC \NC \NR +\LL +\stoptabulate -\type {PDFRectangle} methods: +A \type {hex} string is (in the \PDF\ file) surrounded by \type {<>} while plain +strings are bounded by \type {<>}. -\startfunctioncall -<boolean> = <PDFRectangle>:isValid() -- setindex/newindex will go -\stopfunctioncall +\stopsubsection -%\type {Ref} methods: -% -%\startfunctioncall -%\stopfunctioncall +\startsubsection[title={\type {[dictionary|array]totable}}] -\type {Stream} methods: +\libindex {dictionarytotable} +\libindex {arraytotable} -\startfunctioncall -<integer> = <Stream>:getKind() -<string> = <Stream>:getKindName() - = <Stream>:reset() - = <Stream>:close() -<integer> = <Stream>:getChar() -<integer> = <Stream>:lookChar() -<integer> = <Stream>:getRawChar() -<integer> = <Stream>:getUnfilteredChar() - = <Stream>:unfilteredReset() -<integer> = <Stream>:getPos() -<boolean> = <Stream>:isBinary() -<Stream> = <Stream>:getUndecodedStream() -<Dict> = <Stream>:getDict() -\stopfunctioncall +All entries in a dictionary or table can be fetched with the following commands +where the return values are a hashed or indexed table. -\type {StructElement} methods: +\starttyping +hash = dictionarytotable(<pdfe dictionary>) +list = arraytotable(<pdfe array>) +\stoptyping -\startfunctioncall -<string> = <StructElement>:getTypeName() -<integer> = <StructElement>:getType() -<boolean> = <StructElement>:isOk() -<boolean> = <StructElement>:isBlock() -<boolean> = <StructElement>:isInline() -<boolean> = <StructElement>:isGrouping() -<boolean> = <StructElement>:isContent() -<boolean> = <StructElement>:isObjectRef() -<integer> = <StructElement>:getMCID() -<Ref> = <StructElement>:getObjectRef() -<Ref> = <StructElement>:getParentRef() -<boolean> = <StructElement>:hasPageRef() -<Ref> = <StructElement>:getPageRef() -<StructTreeRoot> = <StructElement>:getStructTreeRoot() -<string> = <StructElement>:getID() -<string> = <StructElement>:getLanguage() -<integer> = <StructElement>:getRevision() -<string> = <StructElement>:getTitle() -<string> = <StructElement>:getExpandedAbbr() -<integer> = <StructElement>:getNumChildren() -<StructElement> = <StructElement>:getChild() -<integer> = <StructElement>:getNumAttributes() -<Attribute> = <StructElement>:getAttribute(<integer>) -<string> = <StructElement>:appendAttribute(<Attribute>) -- will go -<Attribute> = <StructElement>:findAttribute(<Attribute::Type>, - boolean,Attribute::Owner) -<string> = <StructElement>:getAltText() -<string> = <StructElement>:getActualText() -<string> = <StructElement>:getText(<boolean>) -<table> = <StructElement>:getTextSpans() -\stopfunctioncall +You can get a list of pages with: + +\starttyping +{ { <pdfe dictionary>, size, objnum }, ... } = pagestotable(<pdfe document>) +\stoptyping -\type {StructTreeRoot} methods: +\stopsubsection -\startfunctioncall -<StructElement> = <StructTreeRoot>:findParentElement -<PDFDoc> = <StructTreeRoot>:getDoc -<Dict> = <StructTreeRoot>:getRoleMap -<Dict> = <StructTreeRoot>:getClassMap -<integer> = <StructTreeRoot>:getNumChildren -<StructElement> = <StructTreeRoot>:getChild -<StructElement> = <StructTreeRoot>:findParentElement -\stopfunctioncall +\startsubsection[title={\type {getfromreference}}] -\type {TextSpan} han only one method: +\libindex {getfromreference} -\startfunctioncall -<string> = <TestSpan>:getText() -\stopfunctioncall +Because you can have unresolved references, a reference object can be resolved +with: -\type {XRef} methods: +\starttyping +<pdfe dictionary|array|stream> = getfromreference(<pdfe reference>) +\stoptyping -\startfunctioncall -<boolean> = <XRef>:isOk() -<integer> = <XRef>:getErrorCode() -<boolean> = <XRef>:isEncrypted() -<boolean> = <XRef>:okToPrint() -<boolean> = <XRef>:okToPrintHighRes() -<boolean> = <XRef>:okToChange() -<boolean> = <XRef>:okToCopy() -<boolean> = <XRef>:okToAddNotes() -<boolean> = <XRef>:okToFillForm() -<boolean> = <XRef>:okToAccessibility() -<boolean> = <XRef>:okToAssemble() -<Object> = <XRef>:getCatalog() -<Object> = <XRef>:fetch(<integer> object number, - <integer> object generation) -<Object> = <XRef>:getDocInfo() -<Object> = <XRef>:getDocInfoNF() -<integer> = <XRef>:getNumObjects() -<integer> = <XRef>:getRootNum() -<integer> = <XRef>:getRootGen() -<integer> = <XRef>:getSize() -<Object> = <XRef>:getTrailerDict() -\stopfunctioncall +So, you get back a new \type {pdfe} userdata object that you can query. + +\stopsubsection + +\stopsection + +\startsection[title={Memory streams}][library=pdfe] \topicindex{\PDF+memory streams} -There is an experimental function \type {epdf.openMemStream} that takes three -arguments: +\libindex {new} + +The \type {pdfe.new} that takes three arguments: \starttabulate \DB value \BC explanation \NC \NR \TB \NC \type {stream} \NC this is a (in low level \LUA\ speak) light userdata object, i.e.\ a pointer to a sequence of bytes \NC \NR -\NC \type {length} \NC this is the length of the stream in bytes \NC \NR -\NC \type {name} \NC this is a unique identifier that is used for hashing the - stream, so that multiple doesn't use more memory \NC \NR +\NC \type {length} \NC this is the length of the stream in bytes (the stream can + have embedded zeros) \NC \NR +\NC \type {name} \NC optional, this is a unique identifier that is used for + hashing the stream, so that multiple doesn't use more + memory \NC \NR \LL \stoptabulate -Instead of a light userdata stream you can also pass a \LUA\ string, in which -case the given length is (at most) the string length. +The third argument is optional. When it is not given the function will return an +\type {pdfe} document object as with a regular file, otherwise it will return a +filename that can be used elsewhere (e.g.\ in the image library) to reference the +stream as pseudo file. -The function returns a \type{epdf} object and a string. The string can be used in +Instead of a light userdata stream (which is actually fragile but handy when you +come from a library) you can also pass a \LUA\ string, in which case the given +length is (at most) the string length. + +The function returns an \type {pdfe} object and a string. The string can be used in the \type {img} library instead of a filename. You need to prevent garbage collection of the object when you use it as image (for instance by storing it somewhere). @@ -1025,6 +894,191 @@ permits conversion in memory and passing the result directly to the backend. Thi might save some runtime in one|-|pass workflows. This feature is currently not meant for production and we might come up with a better implementation. +\stopsection + +\startsection[title={The \type {pdfscanner} library}][library=pdfscanner] + +\topicindex{\PDF+scanner} + +\libindex {scan} + +The \type {pdfscanner} library allows interpretation of \PDF\ content streams and +\type {/ToUnicode} (cmap) streams. You can get those streams from the \type +{pdfe} library, as explained in an earlier section. There is only a single +top|-|level function in this library: + +\startfunctioncall +pdfscanner.scan (<pdfe stream>, <table> operatortable, <table> info) +pdfscanner.scan (<pdfe array>, <table> operatortable, <table> info) +pdfscanner.scan (<string>, <table> operatortable, <table> info) +\stopfunctioncall + +The first argument should be a \LUA\ string or a stream or array onject coming +from the \type {pdfe} library. The second argument, \type {operatortable}, should +be a \LUA\ table where the keys are \PDF\ operator name strings and the values +are \LUA\ functions (defined by you) that are used to process those operators. +The functions are called whenever the scanner finds one of these \PDF\ operators +in the content stream(s). The functions are called with two arguments: the \type +{scanner} object itself, and the \type {info} table that was passed are the third +argument to \type {pdfscanner.scan}. + +Internally, \type {pdfscanner.scan} loops over the \PDF\ operators in the +stream(s), collecting operands on an internal stack until it finds a \PDF\ +operator. If that \PDF\ operator's name exists in \type {operatortable}, then the +associated function is executed. After the function has run (or when there is no +function to execute) the internal operand stack is cleared in preparation for the +next operator, and processing continues. + +The \type {scanner} argument to the processing functions is needed because it +offers various methods to get the actual operands from the internal operand +stack. + +A simple example of processing a \PDF's document stream could look like this: + +\starttyping +local operatortable = { } + +operatortable.Do = function(scanner,info) + local resources = info.resources + if resources then + local val = scanner:pop() + local name = val[2] + local xobject = resources.XObject + print(info.space .. "Uses XObject " .. name) + local resources = xobject.Resources + if resources then + local newinfo = { + space = info.space .. " ", + resources = resources, + } + pdfscanner.scan(entry, operatortable, newinfo) + end + end +end + +local function Analyze(filename) + local doc = pdfe.open(filename) + if doc then + local pages = doc.Pages + for i=1,#pages do + local page = pages[i] + local info = { + space = " " , + resources = page.Resources, + } + print("Page " .. i) + -- pdfscanner.scan(page.Contents,operatortable,info) + pdfscanner.scan(page.Contents(),operatortable,info) + end + end +end + +Analyze("foo.pdf") +\stoptyping + +This example iterates over all the actual content in the \PDF, and prints out the +found \type {XObject} names. While the code demonstrates quite some of the \type +{pdfe} functions, let's focus on the type \type {pdfscanner} specific code +instead. + +From the bottom up, the following line runs the scanner with the \PDF\ page's +top|-|level content given in the first argument. + +The third argument, \type {info}, contains two entries: \type {space} is used to +indent the printed output, and \type {resources} is needed so that embedded \type +{XForms} can find their own content. + +The second argument, \type {operatortable} defines a processing function for a +single \PDF\ operator, \type {Do}. + +The function \type {Do} prints the name of the current \type {XObject}, and then +starts a new scanner for that object's content stream, under the condition that +the \type {XObject} is in fact a \type {/Form}. That nested scanner is called +with new \type {info} argument with an updated \type {space} value so that the +indentation of the output nicely nests, and with a new \type {resources} field +to help the next iteration down to properly process any other, embedded \type +{XObject}s. + +Of course, this is not a very useful example in practice, but for the purpose of +demonstrating \type {pdfscanner}, it is just long enough. It makes use of only +one \type {scanner} method: \type {scanner:pop()}. That function pops the top +operand of the internal stack, and returns a \LUA\ table where the object at index +one is a string representing the type of the operand, and object two is its +value. + +The list of possible operand types and associated \LUA\ value types is: + +\starttabulate[|l|l|] +\DB types \BC type \NC \NR +\TB +\NC \type{integer} \NC <number> \NC \NR +\NC \type{real} \NC <number> \NC \NR +\NC \type{boolean} \NC <boolean> \NC \NR +\NC \type{name} \NC <string> \NC \NR +\NC \type{operator} \NC <string> \NC \NR +\NC \type{string} \NC <string> \NC \NR +\NC \type{array} \NC <table> \NC \NR +\NC \type{dict} \NC <table> \NC \NR +\LL +\stoptabulate + +In case of \type {integer} or \type {real}, the value is always a \LUA\ (floating +point) number. In case of \type {name}, the leading slash is always stripped. + +In case of \type {string}, please bear in mind that \PDF\ actually supports +different types of strings (with different encodings) in different parts of the +\PDF\ document, so you may need to reencode some of the results; \type {pdfscanner} +always outputs the byte stream without reencoding anything. \type {pdfscanner} +does not differentiate between literal strings and hexadecimal strings (the +hexadecimal values are decoded), and it treats the stream data for inline images +as a string that is the single operand for \type {EI}. + +In case of \type {array}, the table content is a list of \type {pop} return +values and in case of \type {dict}, the table keys are \PDF\ name strings and the +values are \type {pop} return values. + +\libindex{pop} +\libindex{popnumber} +\libindex{popname} +\libindex{popstring} +\libindex{poparray} +\libindex{popdictionary} +\libindex{popboolean} +\libindex{done} + +There are a few more methods defined that you can ask \type {scanner}: + +\starttabulate[|l|p|] +\DB method \BC explanation \NC \NR +\TB +\NC \type{pop} \NC see above \NC \NR +\NC \type{popnumber} \NC return only the value of a \type {real} or \type {integer} \NC \NR +\NC \type{popname} \NC return only the value of a \type {name} \NC \NR +\NC \type{popstring} \NC return only the value of a \type {string} \NC \NR +\NC \type{poparray} \NC return only the value of a \type {array} \NC \NR +\NC \type{popdictionary} \NC return only the value of a \type {dict} \NC \NR +\NC \type{popboolean} \NC return only the value of a \type {boolean} \NC \NR +\NC \type{done} \NC abort further processing of this \type {scan()} call \NC \NR +\LL +\stoptabulate + +The \type {pop*} are convenience functions, and come in handy when you know the +type of the operands beforehand (which you usually do, in \PDF). For example, the +\type {Do} function could have used \type {local name = scanner:popname()} +instead, because the single operand to the \type {Do} operator is always a \PDF\ +name object. + +The \type {done} function allows you to abort processing of a stream once you +have learned everything you want to learn. This comes in handy while parsing +\type {/ToUnicode}, because there usually is trailing garbage that you are not +interested in. Without \type {done}, processing only ends at the end of the +stream, possibly wasting \CPU\ cycles. + +{\em We keep the older names \type {popNumber}, \type {popName}, \type +{popString}, \type {popArray}, \type {popDict} and \type {popBool} around.} + +\stopsection + \stopchapter \stopcomponent diff --git a/manual/luatex-callbacks.tex b/manual/luatex-callbacks.tex index 672bb26f0..b2b706ea9 100644 --- a/manual/luatex-callbacks.tex +++ b/manual/luatex-callbacks.tex @@ -4,12 +4,16 @@ \startcomponent luatex-callbacks -\startchapter[reference=callbacks,title={\LUATEX\ \LUA\ callbacks}] +\startchapter[reference=callbacks,title={\LUA\ callbacks}] -\section {Registering callbacks} +\startsection[title={Registering callbacks}][library=callback] \topicindex{callbacks} +\libindex{register} +\libindex{list} +\libindex{find} + This library has functions that register, find and list callbacks. Callbacks are \LUA\ functions that are called in well defined places. There are two kind of callbacks: those that mix with existing functionality, and those that (when @@ -25,11 +29,11 @@ The first thing you need to do is registering a callback: \startfunctioncall id, error = - callback.register (<string> callback_name, <function> func) + callback.register(<string> callback_name, <function> func) id, error = - callback.register (<string> callback_name, nil) + callback.register(<string> callback_name, nil) id, error = - callback.register (<string> callback_name, false) + callback.register(<string> callback_name, false) \stopfunctioncall Here the \syntax {callback_name} is a predefined callback name, see below. The @@ -58,12 +62,14 @@ The keys in the table are the known callback names, the value is a boolean where \type {true} means that the callback is currently set (active). \startfunctioncall -<function> f = callback.find (callback_name) +<function> f = callback.find(callback_name) \stopfunctioncall -If the callback is not set, \type {callback.find} returns \type {nil}. +If the callback is not set, \type {find} returns \type {nil}. + +\stopsection -\section{File discovery callbacks} +\startsection[title={File discovery callbacks}][library=callback] The behaviour documented in this subsection is considered stable in the sense that there will not be backward|-|incompatible changes any more. @@ -340,7 +346,9 @@ The length of the \type {data}, in bytes. \stopitemize Return an empty string and zero if the file was found but there was a -reading problem. The list of functions is: +reading problem. + +The list of functions is: \starttabulate[|l|p|] \DB function \BC usage \NC \NR @@ -357,7 +365,9 @@ reading problem. The list of functions is: \LL \stoptabulate -\section{Data processing callbacks} +\stopsection + +\startsection[title={Data processing callbacks}][library=callback] \subsection{\cbk {process_input_buffer}} @@ -414,7 +424,9 @@ inside this function or infinite recursion may occur. If you return \type {nil}, \LUATEX\ will pretend your callback never happened. This callback does not replace any internal code. -\section{Node list processing callbacks} +\stopsection + +\startsection[title={Node list processing callbacks}][library=callback] The description of nodes and node lists is in~\in{chapter}[nodes]. @@ -827,7 +839,9 @@ penalties have to be inserted in this list, \type {false} otherwise. Setting this callback to \type {false} is bad, it will almost certainly result in an endless loop. -\section{Information reporting callbacks} +\stopsection + +\startsection[title={Information reporting callbacks}][library=callback] \subsection{\cbk {pre_dump}} @@ -991,7 +1005,9 @@ after a run when native synctex is not enabled). This callback is called after the \PDF\ and log files are closed. Use it at your own risk. -\section{PDF-related callbacks} +\stopsection + +\startsection[title={\PDF\ related callbacks}][library=callback] \subsection{\cbk {finish_pdffile}} @@ -1020,7 +1036,62 @@ end This callback is called after the \PDF\ page stream has been assembled and before the page object gets finalized. -\section{Font-related callbacks} +\subsection{\cbk {page_objnum_provider}} + +\topicindex{callbacks+\PDF\ file} + +This is one that experts can use to juggle the page tree, a data structure +that determines the order in a \PDF\ file: + +\startfunctioncall +function(objnum) + return objnum +end +\stopfunctioncall + +We can for instance swap the first and last page: + +\starttyping +local n = 0 +callback.register("page_objnum_provider",function(objnum) + n = n + 1 + if n == 1 then + return pdf.getpageref(tex.count[0]) + elseif n == tex.count[0] then + return pdf.getpageref(1) + else + return objnum + end +end) +\stoptyping + +When you mess things up \unknown\ don't complain. + +\subsection{\cbk {process_pdf_image_content}} + +\topicindex{callbacks+image content} + +When a page from a \PDF\ file is embedded its page stream as well as related +objects are copied to the target file. However, it can be that the page stream +has operators that assume additional resources, for instance marked text. You can +decide to filter that for which \LUATEX\ provides a callback. Here is a simple +demonstration of use: + +\starttyping +pdf.setrecompress(1) + +callback.register("process_pdf_image_content",function(s) + print(s) + return s +end) +\stoptyping + +You need to explicitly enable recompression because otherwise the content stream +gets just passed on in its original compressed form. + +\stopsection + +\startsection[title={Font-related callbacks}][library=callback] \subsection{\cbk {define_font}} @@ -1071,6 +1142,8 @@ function(<number> id, <number> char) end \stopfunctioncall +\stopsection + \stopchapter \stopcomponent diff --git a/manual/luatex-enhancements.tex b/manual/luatex-enhancements.tex index f7d47fcd0..b04a6e29c 100644 --- a/manual/luatex-enhancements.tex +++ b/manual/luatex-enhancements.tex @@ -6,12 +6,14 @@ \startchapter[reference=enhancements,title={Basic \TEX\ enhancements}] -\section{Introduction} +\startsection[title={Introduction}] + +\startsubsection[title={Primitive behaviour}] From day one, \LUATEX\ has offered extra features compared to the superset of -\PDFTEX\ and \ALEPH. This has not been limited to the possibility to execute -\LUA\ code via \prm {directlua}, but \LUATEX\ also adds functionality via new -\TEX|-|side primitives or extensions to existing ones. +\PDFTEX, which includes \ETEX, and \ALEPH. This has not been limited to the +possibility to execute \LUA\ code via \prm {directlua}, but \LUATEX\ also adds +functionality via new \TEX|-|side primitives or extensions to existing ones. When \LUATEX\ starts up in \quote {iniluatex} mode (\type {luatex -ini}), it defines only the primitive commands known by \TEX82 and the one extra command @@ -39,28 +41,33 @@ assumes that you have executed the \prm {directlua} command as given above. The startup behaviour documented above is considered stable in the sense that there will not be backward|-|incompatible changes any more. We have promoted some -rather generic \PDFTEX\ primitives to core \LUATEX\ ones, and the ones inherited -frome \ALEPH\ (\OMEGA) are also promoted. Effectively this means that we now only -have the \type {tex}, \type {etex} and \type {luatex} sets left. +rather generic \PDFTEX\ primitives to core \LUATEX\ ones, and the few that we +inherited from \ALEPH\ (\OMEGA) are also promoted. Effectively this means that we +now only have the \type {tex}, \type {etex} and \type {luatex} sets left. In \in {Chapter} [modifications] we discuss several primitives that are derived from \PDFTEX\ and \ALEPH\ (\OMEGA). Here we stick to real new ones. In the chapters on fonts and math we discuss a few more new ones. -\section{Version information} +\stopsubsection + +\startsubsection[title={Version information}] -\subsection {\lpr {luatexbanner}, \lpr {luatexversion} and \lpr {luatexrevision}} +\startsubsubsection[title={\lpr {luatexbanner}, \lpr {luatexversion} and \lpr {luatexrevision}}] \topicindex{version} \topicindex{banner} There are three new primitives to test the version of \LUATEX: +\unexpanded\def\VersionHack#1% otherwise different luatex and luajittex runs + {\cldcontext{(string.gsub(string.match("\luatexbanner","(.+)\letterpercent("),"jit",""))}} + \starttabulate[|l|l|pl|] \DB primitive \BC value \BC explanation \NC \NR \TB -\NC \lpr {luatexbanner} \NC \cldcontext{string.match("\luatexbanner","(.+)\letterpercent(")} +\NC \lpr {luatexbanner} \NC \VersionHack{\luatexbanner} \NC the banner reported on the command line \NC \NR \NC \lpr {luatexversion} \NC \the\luatexversion \NC a combination of major and minor number \NC \NR @@ -78,10 +85,10 @@ The official \LUATEX\ version is defined as follows: its use with \prm {the} depending on the context. \stopitem \startitem - The minor version is the two-digit result of \lpr {luatexversion} modulo 100. + The minor version is the two|-|digit result of \lpr {luatexversion} modulo 100. \stopitem \startitem - The revision is the given by \lpr {luatexrevision}. This primitive expands to + The revision is reported by \lpr {luatexrevision}. This primitive expands to a positive integer. \stopitem \startitem @@ -90,7 +97,9 @@ The official \LUATEX\ version is defined as follows: \stopitem \stopitemize -\subsection{\lpr {formatname}} +\stopsubsubsection + +\startsubsubsection[title={\lpr {formatname}}] \topicindex{format} @@ -99,9 +108,15 @@ expansion is empty. Otherwise, the expansion is the value that \prm {jobname} ha during the \INITEX\ run that dumped the currently loaded format. You can use this token list to provide your own version info. -\section{\UNICODE\ text support} +\stopsubsubsection + +\stopsubsection + +\stopsection + +\startsection[title={\UNICODE\ text support}] -\subsection {Extended ranges} +\startsubsection[title={Extended ranges}] \topicindex{\UNICODE} @@ -113,7 +128,7 @@ always converted to a suitable graphic representation of that character in a specific font. However, while processing a list of to|-|be|-|typeset nodes, its contents may still be seen as a character. Inside \LUATEX\ there is no clear separation between the two concepts. Because the subtype of a glyph node can be -changed in \LUA\ it is up to the user: subtypes larger than 255 indicate that +changed in \LUA\ it is up to the user. Subtypes larger than 255 indicate that font processing has happened. A few primitives are affected by this, all in a similar fashion: each of them has @@ -121,16 +136,17 @@ to accommodate for a larger range of acceptable numbers. For instance, \prm {char} now accepts values between~0 and $1{,}114{,}111$. This should not be a problem for well|-|behaved input files, but it could create incompatibilities for input that would have generated an error when processed by older \TEX|-|based -engines. The affected commands with an altered initial (left of the equals sign) -or secondary (right of the equals sign) value are: \prm {char}, \prm {lccode}, +engines. The affected commands with an altered initial (left of the equal sign) +or secondary (right of the equal sign) value are: \prm {char}, \prm {lccode}, \prm {uccode}, \lpr {hjcode}, \prm {catcode}, \prm {sfcode}, \lpr {efcode}, \lpr {lpcode}, \lpr {rpcode}, \prm {chardef}. As far as the core engine is concerned, all input and output to text files is \UTF-8 encoded. Input files can be pre|-|processed using the \type {reader} callback. This will be explained in \in {section} [iocallback]. Normalization of -the \UNICODE\ input is on purpose not built|-|in can be handled by a macro -package during callback processing. +the \UNICODE\ input is on purpose not built|-|in and can be handled by a macro +package during callback processing. We have made some practical choices and the +user has to live with those. Output in byte|-|sized chunks can be achieved by using characters just outside of the valid \UNICODE\ range, starting at the value $1{,}114{,}112$ (0x110000). When @@ -143,14 +159,18 @@ are considered \quote {safe} and therefore printed as|-|is. You can disable escaping with \type {texio.setescape(false)} in which case you get the normal characters on the console. -\subsection{\lpr {Uchar}} +\stopsubsection + +\startsubsection[title={\lpr {Uchar}}] \topicindex{\UNICODE} The expandable command \lpr {Uchar} reads a number between~0 and $1{,}114{,}111$ and expands to the associated \UNICODE\ character. -\section{Extended tables} +\stopsubsection + +\startsubsection[title={Extended tables}] All traditional \TEX\ and \ETEX\ registers can be 16-bit numbers. The affected commands are: @@ -184,42 +204,18 @@ commands are: \stopfourcolumns Because font memory management has been rewritten, character properties in fonts -are no longer shared among fonts instances that originate from the same metric -file. - -\section{Attributes} - -\subsection{Attribute registers} - -\topicindex {attributes} +are no longer shared among font instances that originate from the same metric +file. Of course we share fonts in the backend when possible so that the resulting +\PDF\ file is as efficient as possible, but for instance also expansion and +protrusion no longer use copies as in \PDFTEX. -Attributes are a completely new concept in \LUATEX. Syntactically, they behave a -lot like counters: attributes obey \TEX's nesting stack and can be used after -\prm {the} etc.\ just like the normal \prm {count} registers. - -\startsyntax -\attribute <16-bit number> <optional equals> <32-bit number>!crlf -\attributedef <csname> <optional equals> <16-bit number> -\stopsyntax - -Conceptually, an attribute is either \quote {set} or \quote {unset}. Unset -attributes have a special negative value to indicate that they are unset, that -value is the lowest legal value: \type {-"7FFFFFFF} in hexadecimal, a.k.a. -$-2147483647$ in decimal. It follows that the value \type {-"7FFFFFFF} cannot be -used as a legal attribute value, but you {\it can\/} assign \type {-"7FFFFFFF} to -\quote {unset} an attribute. All attributes start out in this \quote {unset} -state in \INITEX. +\stopsubsection -Attributes can be used as extra counter values, but their usefulness comes mostly -from the fact that the numbers and values of all \quote {set} attributes are -attached to all nodes created in their scope. These can then be queried from any -\LUA\ code that deals with node processing. Further information about how to use -attributes for node list processing from \LUA\ is given in~\in {chapter}[nodes]. +\stopsection -Attributes are stored in a sorted (sparse) linked list that are shared when -possible. This permits efficient testing and updating. +\startsection[title={Attributes}] -\subsection{Nodes} +\startsubsection[title={Nodes}] \topicindex {nodes} @@ -246,10 +242,53 @@ constructed explicitly or can be the result of subprocesses. For instance, when lines are broken into paragraphs, the lines are a linked list of \nod {hlist} nodes. -We will see more of these nodes later on but for now that should be enough to be -able to follow the rest oof this chapter. +So, to summarize: all that you enter as content eventually becomes a node, often +as part of a (nested) list structure. They have a relative small memory footprint +and carry only the minimal amount of information needed. In traditional \TEX\ a +character node only held the font and slot number, in \LUATEX\ we also store some +language related information, the expansion factor, etc. Now that we have access +to these nodes from \LUA\ it makes sense to be able to carry more information +with an node and this is where attributes kick in. + +\stopsubsection + +\startsubsection[title={Attribute registers}] + +\topicindex {attributes} + +Attributes are a completely new concept in \LUATEX. Syntactically, they behave a +lot like counters: attributes obey \TEX's nesting stack and can be used after +\prm {the} etc.\ just like the normal \prm {count} registers. + +\startsyntax +\attribute <16-bit number> <optional equals> <32-bit number>!crlf +\attributedef <csname> <optional equals> <16-bit number> +\stopsyntax + +Conceptually, an attribute is either \quote {set} or \quote {unset}. Unset +attributes have a special negative value to indicate that they are unset, that +value is the lowest legal value: \type {-"7FFFFFFF} in hexadecimal, a.k.a. +$-2147483647$ in decimal. It follows that the value \type {-"7FFFFFFF} cannot be +used as a legal attribute value, but you {\it can\/} assign \type {-"7FFFFFFF} to +\quote {unset} an attribute. All attributes start out in this \quote {unset} +state in \INITEX. + +Attributes can be used as extra counter values, but their usefulness comes mostly +from the fact that the numbers and values of all \quote {set} attributes are +attached to all nodes created in their scope. These can then be queried from any +\LUA\ code that deals with node processing. Further information about how to use +attributes for node list processing from \LUA\ is given in~\in {chapter}[nodes]. + +Attributes are stored in a sorted (sparse) linked list that are shared when +possible. This permits efficient testing and updating. You can define many +thousands of attributes but normally such a large number makes no sense and is +also not that efficient because each node carries a (possibly shared) link to a +list of currently set attributes. But they are a convenient extension and one of +the first extensions we implemented in \LUATEX. + +\stopsubsection -\subsection{Box attributes} +\startsubsection[title={Box attributes}] \topicindex {attributes} \topicindex {boxes} @@ -325,9 +364,13 @@ indexing the node (here we do that with \type {[a]}. Running this snippet gives: Because some values are not set we need to apply the \type {tostring} function here so that we get the word \type {nil}. -\section{\LUA\ related primitives} +\stopsubsection -\subsection{\prm {directlua}} +\stopsection + +\startsection[title={\LUA\ related primitives}] + +\startsubsection[title={\prm {directlua}}] In order to merge \LUA\ code with \TEX\ input, a few new primitives are needed. The primitive \prm {directlua} is used to execute \LUA\ code immediately. The @@ -418,7 +461,9 @@ can break up \LUATEX\ pretty bad. If you are not careful while working with the node list interface, you may even end up with assertion errors from within the \TEX\ portion of the executable. -\subsection{\lpr {latelua}} +\stopsubsection + +\startsubsection[title={\lpr {latelua} and \lpr {lateluafunction}}] Contrary to \prm {directlua}, \lpr {latelua} stores \LUA\ code in a whatsit that will be processed at the time of shipping out. Its intended use is a cross @@ -437,9 +482,14 @@ Expansion of macros in the final \type {<general text>} is delayed until just before the whatsit is executed (like in \prm {write}). With regard to \PDF\ output stream \lpr {latelua} behaves as \PDF\ page literals. The \syntax {name <general text>} and \syntax {<16-bit number>} behave in the same way as -they do for \prm {directlua} +they do for \prm {directlua}. + +The \lpr {lateluafunction} primitive takes a number and is similar to \lpr +{luafunction} but gets delated to shipout time. It's just there for completeness. -\subsection{\lpr {luaescapestring}} +\stopsubsection + +\startsubsection[title={\lpr {luaescapestring}}] \topicindex {escaping} @@ -455,16 +505,17 @@ sequence is fully expanded. \stopsyntax Most often, this command is not actually the best way to deal with the -differences between the \TEX\ and \LUA. In very short bits of \LUA\ -code it is often not needed, and for longer stretches of \LUA\ code it -is easier to keep the code in a separate file and load it using \LUA's -\type {dofile}: +differences between \TEX\ and \LUA. In very short bits of \LUA\ code it is often +not needed, and for longer stretches of \LUA\ code it is easier to keep the code +in a separate file and load it using \LUA's \type {dofile}: \starttyping \directlua { dofile('mysetups.lua') } \stoptyping -\subsection{\lpr {luafunction} and \lpr {luafunctioncall}} +\stopsubsection + +\startsubsection[title={\lpr {luafunction}, \lpr {luafunctioncall} and \lpr {luadef}}] The \prm {directlua} commands involves tokenization of its argument (after picking up an optional name or number specification). The tokenlist is then @@ -498,17 +549,55 @@ in the following example the number \type {8} gets typeset. \stoptyping The \lpr {luafunctioncall} primitive does the same but is unexpandable, for -instance in an \prm {edef}. +instance in an \prm {edef}. In addition \LUATEX\ provides a definer: -\section {Alignments} +\starttyping + \luadef\MyFunctionA 1 + \global\luadef\MyFunctionB 2 +\protected\global\luadef\MyFunctionC 3 +\stoptyping -\subsection{\lpr {alignmark} and \lpr {aligntab}} +You should really use these commands with care. Some references get stored in +tokens and assume that the function is available when that token expands. On the +other hand, as we have tested this functionality in relative complex situations +normal usage should not give problems. -The primitive \lpr {alignmark} duplicates the functionality of \type {#} inside -alignment preambles, while \lpr {aligntab} duplicates the functionality of \type -{&}. +\stopsubsection + +\startsubsection[title={\lpr {luabytecode} and \lpr {luabytecodecall}}] + +Analogue to the function callers discussed in the previous section we have byte +code callers. Again the call variant is unexpandable. -\section{Catcode tables} +\starttyping +\directlua { + lua.bytecode[9998] = function(s) + tex.sprint(s*token.scan_int()) + end + lua.bytecode[5555] = function(s) + tex.sprint(s*token.scan_dimen()) + end +} +\stoptyping + +This works with: + +\starttyping +\luabytecode 9998 5 \luabytecode 5555 5sp +\luabytecodecall9998 5 \luabytecodecall5555 5sp +\stoptyping + +The variable \type {s} in the code is the number of the byte code register that +can be used for diagnostic purposes. The advantage of bytecode registers over +function calls is that they are stored in the format (but without upvalues). + +\stopsubsection + +\stopsection + +\startsection[title={Catcode tables}] + +\startsubsection[title={Catcodes}] \topicindex {catcodes} @@ -517,10 +606,12 @@ catcode regime in a single statement. You can have a practically unlimited numbe of different tables. This subsystem is backward compatible: if you never use the following commands, your document will not notice any difference in behaviour compared to traditional \TEX. The contents of each catcode table is independent -from any other catcode tables, and their contents is stored and retrieved from -the format file. +from any other catcode table, and its contents is stored and retrieved from the +format file. -\subsection{\lpr {catcodetable}} +\stopsubsection + +\startsubsection[title={\lpr {catcodetable}}] \startsyntax \catcodetable <15-bit number> @@ -530,7 +621,9 @@ The primitive \lpr {catcodetable} switches to a different catcode table. Such a table has to be previously created using one of the two primitives below, or it has to be zero. Table zero is initialized by \INITEX. -\subsection{\lpr {initcatcodetable}} +\stopsubsection + +\startsubsection[title={\lpr {initcatcodetable}}] \startsyntax \initcatcodetable <15-bit number> @@ -557,7 +650,9 @@ initial values are: \LL \stoptabulate -\subsection{\lpr {savecatcodetable}} +\stopsubsection + +\startsubsection[title={\lpr {savecatcodetable}}] \startsyntax \savecatcodetable <15-bit number> @@ -571,9 +666,13 @@ The new table is allocated globally: it will not go away after the current group has ended. If the supplied number is the currently active table, an error is raised. -\section{Suppressing errors} +\stopsubsection + +\stopsection + +\startsection[title={Suppressing errors}] -\subsection{\lpr {suppressfontnotfounderror}} +\startsubsection[title={\lpr {suppressfontnotfounderror}}] \topicindex {errors} @@ -586,7 +685,9 @@ assignment, making the requested csname for the font \prm {ifx} equal to \prm \suppressfontnotfounderror = 1 \stopsyntax -\subsection{\lpr {suppresslongerror}} +\stopsubsection + +\startsubsection[title={\lpr {suppresslongerror}}] \topicindex {errors} @@ -598,7 +699,9 @@ If this integer parameter is non|-|zero, then \LUATEX\ will not complain about \suppresslongerror = 1 \stopsyntax -\subsection{\lpr {suppressifcsnameerror}} +\stopsubsection + +\startsubsection[title={\lpr {suppressifcsnameerror}}] \topicindex {errors} @@ -613,7 +716,9 @@ indefinitely. \suppressifcsnameerror = 1 \stopsyntax -\subsection{\lpr {suppressoutererror}} +\stopsubsection + +\startsubsection[title={\lpr {suppressoutererror}}] \topicindex {errors} @@ -625,7 +730,9 @@ prohibited. \suppressoutererror = 1 \stopsyntax -\subsection{\lpr {suppressmathparerror}} +\stopsubsection + +\startsubsection[title={\lpr {suppressmathparerror}}] \topicindex {errors} \topicindex {math} @@ -644,7 +751,9 @@ $ x + 1 = a $ \stoptyping -\subsection{\lpr {suppressprimitiveerror}} +\stopsubsection + +\startsubsection[title={\lpr {suppressprimitiveerror}}] \topicindex {errors} \topicindex {primitives} @@ -657,19 +766,13 @@ When set to a non|-|zero value the following command will not issue an error: \primitive\notaprimitive \stopsyntax -\section {Math} - -\topicindex {math} +\stopsubsection -We will cover math extensions in its own chapter because not only the font -subsystem and spacing model have been enhanced (thereby introducing many new -primitives) but also because some more control has been added to existing -functionality. Much of this relates to the differences approaches of traditional -\TEX\ fonts and \OPENTYPE\ math. +\stopsection -\section{Fonts} +\startsection[title={Fonts}] -\subsection{Font syntax} +\startsubsection[title={Font syntax}] \topicindex {fonts} @@ -682,7 +785,9 @@ functionality. Much of this relates to the differences approaches of traditional This allows for embedded spaces, without the need for double quotes. Macro expansion takes place inside the argument. -\subsection{\lpr {fontid} and \lpr {setfontid}} +\stopsubsection + +\startsubsection[title={\lpr {fontid} and \lpr {setfontid}}] \startsyntax \fontid\font @@ -711,7 +816,9 @@ be bound to a real font, after all it's just a number. The primitive \lpr {setfontid} can be used to enable a font with the given id, which of course needs to be a valid one. -\subsection{\lpr {noligs} and \lpr {nokerns}} +\stopsubsection + +\startsubsection[title={\lpr {noligs} and \lpr {nokerns}}] \topicindex {ligatures+suppress} \topicindex {kerns+suppress} @@ -731,7 +838,9 @@ kerning functions, i.e.\ by assigning dummy functions to their associated callbacks. Keep in mind that when you define a font (using \LUA) you can also omit the kern and ligature tables, which has the same effect as the above. -\subsection{\type{\nospaces}} +\stopsubsection + +\startsubsection[title={\type{\nospaces}}] \topicindex {spaces+suppress} @@ -752,9 +861,13 @@ space. \stopcombination \stopplacefigure -\section{Tokens, commands and strings} +\stopsubsection + +\stopsection + +\startsection[title={Tokens, commands and strings}] -\subsection{\lpr {scantextokens}} +\startsubsection[title={\lpr {scantextokens}}] \topicindex {tokens+scanning} @@ -778,7 +891,10 @@ differences are: \stopitem \stopitemize -\subsection{\lpr {toksapp}, \lpr {tokspre}, \lpr {etoksapp} and \lpr {etokspre}} +\stopsubsection + +\startsubsection[title={\lpr {toksapp}, \lpr {tokspre}, \lpr {etoksapp}, \lpr {etokspre}, +\lpr {gtoksapp}, \lpr {gtokspre}, \lpr {xtoksapp}, \lpr {xtokspre}}] Instead of: @@ -793,13 +909,15 @@ you can use: \stoptyping The \type {pre} variants prepend instead of append, and the \type {e} variants -expand the passed general text. +expand the passed general text. The \type {g} and \type {x} variants are global. + +\stopsubsection -\subsection{\prm {csstring}, \lpr {begincsname} and \lpr {lastnamedcs}} +\startsubsection[title={\prm {csstring}, \lpr {begincsname} and \lpr {lastnamedcs}}] These are somewhat special. The \prm {csstring} primitive is like \prm {string} but it omits the leading escape character. This can be -somewhat more efficient that stripping it of afterwards. +somewhat more efficient than stripping it afterwards. The \lpr {begincsname} primitive is like \prm {csname} but doesn't create a relaxed equivalent when there is no such name. It is equivalent to @@ -822,9 +940,11 @@ is one that should be used with care. The above example could be written as: This is slightly more efficient than constructing the string twice (deep down in \LUATEX\ this also involves some \UTF8 juggling), but probably more relevant is -that it saves a few tokens and can make code a bit more more readable. +that it saves a few tokens and can make code a bit more readable. + +\stopsubsection -\subsection{\lpr {clearmarks}} +\startsubsection[title={\lpr {clearmarks}}] \topicindex {marks} @@ -836,7 +956,17 @@ immediate command. \clearmarks <16-bit number> \stopsyntax -\subsection{\type{\letcharcode}} +\stopsubsection + +\startsubsection[title={\lpr {alignmark} and \lpr {aligntab}}] + +The primitive \lpr {alignmark} duplicates the functionality of \type {#} inside +alignment preambles, while \lpr {aligntab} duplicates the functionality of \type +{&}. + +\stopsubsection + +\startsubsection[title={\lpr {letcharcode}}] This primitive can be used to assign a meaning to an active character, as in: @@ -844,12 +974,162 @@ This primitive can be used to assign a meaning to an active character, as in: \def\foo{bar} \letcharcode123=\foo \stoptyping -This can be a bit nicer that using the uppercase tricks (using the property of +This can be a bit nicer than using the uppercase tricks (using the property of \prm {uppercase} that it treats active characters special). -\section{Boxes, rules and leaders} +\stopsubsection + +\startsubsection[title={\lpr {glet}}] + +This primitive is similar to: + +\starttyping +\protected\def\glet{\global\let} +\stoptyping + +but faster (only measurable with millions of calls) and probably more convenient +(after all we also have \type {\gdef}). + +\stopsubsection + +\startsubsection[title={\lpr {expanded}, \lpr {immediateassignment} and \lpr {immediateassigned}}] + +\topicindex {expansion} + +The \lpr {expanded} primitive takes a token list and expands it content which can +come in handy: it avoids a tricky mix of \prm {expandafter} and \prm {noexpand}. +You can compare it with what happens inside the body of an \prm {edef}. But this +kind of expansion it still doesn't expand some primitive operations. + +\startbuffer +\newcount\NumberOfCalls + +\def\TestMe{\advance\NumberOfCalls1 } + +\edef\Tested{\TestMe foo:\the\NumberOfCalls} +\edef\Tested{\TestMe foo:\the\NumberOfCalls} +\edef\Tested{\TestMe foo:\the\NumberOfCalls} + +\meaning\Tested +\stopbuffer + +\typebuffer + +The result is a macro that has the not expanded code in its body: + +\getbuffer + +Instead we can define \tex {TestMe} in a way that expands the assignment +immediately. You need of course to be aware of preventing look ahead interference +by using a space or \tex {relax} (often an expression works better as it doesn't +leave an \tex {relax}). + +\startbuffer +\def\TestMe{\immediateassignment\advance\NumberOfCalls1 } + +\edef\Tested{\TestMe foo:\the\NumberOfCalls} +\edef\Tested{\TestMe foo:\the\NumberOfCalls} +\edef\Tested{\TestMe foo:\the\NumberOfCalls} + +\meaning\Tested +\stopbuffer + +\typebuffer + +This time the counter gets updates and we don't see interference in the +resulting \tex {Tested} macro: + +\getbuffer + +Here is a somewhat silly example of expanded comparison: + +\startbuffer +\def\expandeddoifelse#1#2#3#4% + {\immediateassignment\edef\tempa{#1}% + \immediateassignment\edef\tempb{#2}% + \ifx\tempa\tempb + \immediateassignment\def\next{#3}% + \else + \immediateassignment\def\next{#4}% + \fi + \next} + +\edef\Tested + {(\expandeddoifelse{abc}{def}{yes}{nop}/% + \expandeddoifelse{abc}{abc}{yes}{nop})} + +\meaning\Tested +\stopbuffer + +\typebuffer + +It gives: + +\getbuffer + +A variant is: + +\starttyping +\def\expandeddoifelse#1#2#3#4% + {\immediateassigned{ + \edef\tempa{#1}% + \edef\tempb{#2}% + }% + \ifx\tempa\tempb + \immediateassignment\def\next{#3}% + \else + \immediateassignment\def\next{#4}% + \fi + \next} +\stoptyping + +The possible error messages are the same as using assignments in preambles of +alignments and after the \prm {accent} command. The supported assignments are the +so called prefixed commands (except box assignments). + +\stopsubsection + +\startsubsection[title={\lpr {ifcondition}}] + +\topicindex {conditions} + +This is a somewhat special one. When you write macros conditions need to be +properly balanced in order to let \TEX's fast branch skipping work well. This new +primitive is basically a no||op flagged as a condition so that the scanner can +recognize it as an if|-|test. However, when a real test takes place the work is +done by what follows, in the next example \tex {something}. + +\starttyping +\unexpanded\def\something#1#2% + {\edef\tempa{#1}% + \edef\tempb{#2} + \ifx\tempa\tempb} + +\ifcondition\something{a}{b}% + \ifcondition\something{a}{a}% + true 1 + \else + false 1 + \fi +\else + \ifcondition\something{a}{a}% + true 2 + \else + false 2 + \fi +\fi +\stoptyping + +If you are familiar with \METAPOST, this is a bit like \type {vardef} where the macro +has a return value. Here the return value is a test. + +\stopsubsection + +\stopsection + +\startsection[title={Boxes, rules and leaders}] -\subsection{\lpr {outputbox}} +\startsubsection[title={\lpr {outputbox}}] \topicindex {output} @@ -861,12 +1141,16 @@ the acceptable range is from 0 to 65535. \outputbox = 12345 \stopsyntax -\subsection{\prm {vpack}, \prm {hpack} and \prm {tpack}} +\stopsubsection + +\startsubsection[title={\prm {vpack}, \prm {hpack} and \prm {tpack}}] These three primitives are like \prm {vbox}, \prm {hbox} and \prm {vtop} but don't apply the related callbacks. -\subsection{\prm {vsplit}} +\stopsubsection + +\startsubsection[title={\prm {vsplit}}] \topicindex {splitting} @@ -874,7 +1158,9 @@ The \prm {vsplit} primitive has to be followed by a specification of the require height. As alternative for the \type {to} keyword you can use \type {upto} to get a split of the given size but result has the natural dimensions then. -\subsection[sec:imagedandforms]{Images and Forms} +\stopsubsection + +\startsubsection[title={Images and reused box objects},reference=sec:imagedandforms] These two concepts are now core concepts and no longer whatsits. They are in fact now implemented as rules with special properties. Normal rules have subtype~0, @@ -890,7 +1176,7 @@ should treat them as such and check for the current output mode if applicable. \DB command \BC explanation \NC \NR \TB \NC \lpr {saveboxresource} \NC save the box as an object to be included later \NC \NR -\NC \lpr {saveimageresource} \NC save the image as an object to be includes later \NC \NR +\NC \lpr {saveimageresource} \NC save the image as an object to be included later \NC \NR \NC \lpr {useboxresource} \NC include the saved box object here (by index) \NC \NR \NC \lpr {useimageresource} \NC include the saved image object here (by index) \NC \NR \NC \lpr {lastsavedboxresourceindex} \NC the index of the last saved box object \NC \NR @@ -917,16 +1203,20 @@ is the \type {type} key. When set to non|-|zero the \type {/Type} entry is omitted. A value of 1 or 3 still writes a \type {/BBox}, while 2 or 3 will write a \type {/Matrix}. -\subsection{\lpr {nohrule} and \lpr {novrule}} +\stopsubsection + +\startsubsection[title={\lpr {nohrule} and \lpr {novrule}}] \topicindex {rules} Because introducing a new keyword can cause incompatibilities, two new primitives were introduced: \lpr {nohrule} and \lpr {novrule}. These can be used to reserve space. This is often more efficient than creating an empty box with fake -dimensions). +dimensions. -\subsection{\lpr {gleaders}} +\stopsubsection + +\startsubsection[title={\lpr {gleaders}}] \topicindex {leaders} @@ -935,9 +1225,13 @@ they are like normal \prm {leaders} in that they align nicely, except that the alignment is based on the {\it largest\/} enclosing box instead of the {\it smallest\/}. The \type {g} stresses this global nature. -\section {Languages} +\stopsubsection + +\stopsection + +\startsection[title={Languages}] -\subsection{\lpr {hyphenationmin}} +\startsubsection[title={\lpr {hyphenationmin}}] \topicindex {languages} \topicindex {hyphenation} @@ -948,9 +1242,11 @@ within the constraints of the \prm {lefthyphenmin} and \prm {righthyphenmin} values (as stored in the glyph node). This primitive accepts a number and stores the value with the language. -\subsection{\prm {boundary}, \prm {noboundary}, \prm {protrusionboundary} and \prm {wordboundary}} +\stopsubsection -The \prm {noboundary} commands used to inject a whatsit node but now injects a normal +\startsubsection[title={\prm {boundary}, \prm {noboundary}, \prm {protrusionboundary} and \prm {wordboundary}}] + +The \prm {noboundary} command is used to inject a whatsit node but now injects a normal node with type \nod {boundary} and subtype~0. In addition you can say: \starttyping @@ -964,16 +1260,22 @@ passing this value is a side effect of the generalization. The subtypes~2 and~3 are used to control protrusion and word boundaries in hyphenation and have related primitives. -\section{Control and debugging} +\stopsubsection + +\stopsection + +\startsection[title={Control and debugging}] -\subsection {Tracing} +\startsubsection[title={Tracing}] \topicindex {tracing} If \prm {tracingonline} is larger than~2, the node list display will also print the node number of the nodes. -\subsection{\lpr {outputmode}} +\stopsubsection + +\startsubsection[title={\lpr {outputmode}}] \topicindex {output} \topicindex {backend} @@ -988,15 +1290,22 @@ The \lpr {outputmode} variable tells \LUATEX\ what it has to produce: \LL \stoptabulate -\subsection{\lpr {draftmode}} +\stopsubsection + +\startsubsection[title={\lpr {draftmode}}] + +The value of the \lpr {draftmode} counter signals the backend if it should output +less. The \PDF\ backend accepts a value of~1, while the \DVI\ backend ignores the +value. This is no critical feature so we can remove it in future versions when it +can make the backend cleaner. -The value of the \lpr {draftmode} counter signals the backend if it should -output less. The \PDF\ backend accepts a value of~1, while the \DVI\ backend -ignores the value. +\stopsubsection -\section {Files} +\stopsection -\subsection{File syntax} +\startsection[title={Files}] + +\startsubsection[title={File syntax}] \topicindex {files+names} @@ -1027,7 +1336,9 @@ extension is that a csname not always makes sense. The zero case is the default. \LL \stoptabulate -\subsection{Writing to file} +\stopsubsection + +\startsubsection[title={Writing to file}] \topicindex {files+writing} @@ -1035,6 +1346,22 @@ You can now open upto 127 files with \prm {openout}. When no file is open writes will go to the console and log. As a consequence a system command is no longer possible but one can use \type {os.execute} to do the same. +\stopsubsection + +\stopsection + +\startsection[title={Math}] + +\topicindex {math} + +We will cover math extensions in its own chapter because not only the font +subsystem and spacing model have been enhanced (thereby introducing many new +primitives) but also because some more control has been added to existing +functionality. Much of this relates to the different approaches of traditional +\TEX\ fonts and \OPENTYPE\ math. + +\stopsection + \stopchapter \stopcomponent diff --git a/manual/luatex-firstpage.tex b/manual/luatex-firstpage.tex index 52a0573b8..e64cc6152 100644 --- a/manual/luatex-firstpage.tex +++ b/manual/luatex-firstpage.tex @@ -6,7 +6,7 @@ \raggedleft \definedfont[Bold*default at 48pt] \setupinterlinespace - \blue Lua\TeX \endgraf Reference \endgraf Manual \endgraf + \blue \documentvariable{manual} \endgraf Reference \endgraf Manual \endgraf \stop \vfill diff --git a/manual/luatex-fontloader.tex b/manual/luatex-fontloader.tex index d0735aa24..e99ea1d2f 100644 --- a/manual/luatex-fontloader.tex +++ b/manual/luatex-fontloader.tex @@ -17,10 +17,12 @@ information about it. The tables returned by the loader are not that far from th standard. We have no plans to extend the loader (it may even become an external module at some time). -\section{Getting quick information on a font} +\startsection[title={Getting quick information on a font}][library=fontloader] \topicindex {fonts+information} +\libindex{info} + When you want to locate font by name you need some basic information that is hidden in the font files. For that reason we provide an efficient helper that gets the basic information without loading all of the font. Normally this helper @@ -54,11 +56,17 @@ Getting information through this function is (sometimes much) more efficient tha loading the font properly, and is therefore handy when you want to create a dictionary of available fonts based on a directory contents. -\section{Loading an \OPENTYPE\ or \TRUETYPE\ file} +\stopsection + +\startsection[title={Loading an \OPENTYPE\ or \TRUETYPE\ file}][library=fontloader] \topicindex {\OPENTYPE} \topicindex {\TRUETYPE} +\libindex{open} +\libindex{close} +\libindex{to_table} + If you want to use an \OPENTYPE\ font, you have to get the metric information from somewhere. Using the \type {fontloader} library, the simplest way to get that information is thus: @@ -108,8 +116,8 @@ to \LUATEX, otherwise the font inclusion backend will not be able to find the correct font in the collection. See \in {section} [fontloadertables] for details on the userdata object returned -by \type {fontloader.open()} and the layout of the \type {metrics} table returned -by \type {fontloader.to_table()}. +by \type {fontloader.open} and the layout of the \type {metrics} table returned +by \type {fontloader.to_table}. The font file is parsed and partially interpreted by the font loading routines from \FONTFORGE. The file format can be \OPENTYPE, \TRUETYPE, \TRUETYPE\ @@ -136,11 +144,6 @@ file ourselves: some way. \stopitem -\startitem - In the future, it may be interesting to allow \LUA\ scripts access to - the font program itself, perhaps even creating or changing the font. -\stopitem - \stopitemize A loaded font is discarded with: @@ -149,7 +152,11 @@ A loaded font is discarded with: fontloader.close(<userdata> font) \stopfunctioncall -\section{Applying a \quote{feature file}} +\stopsection + +\startsection[title={Applying a \quote{feature file}}][library=fontloader] + +\libindex{apply_featurefile} You can apply a \quote{feature file} to a loaded font: @@ -176,10 +183,14 @@ If the function fails, the return value is a table containing any errors reporte by fontloader while applying the feature file. On success, \type {nil} is returned. -\section{Applying an \quote{\AFM\ file}} +\stopsection + +\startsection[title={Applying an \quote{\AFM\ file}}][library=fontloader] \topicindex {\TYPEONE} +\libindex{apply_afmfile} + You can apply an \quote {\AFM\ file} to a loaded font: \startfunctioncall @@ -195,7 +206,7 @@ ftp://ftp.math.utah.edu/u/ma/hohn/linux/postscript/5004.AFM_Spec.pdf for more information about \AFM\ files. -Note: If you \type {fontloader.open()} a \TYPEONE\ file named \type {font.pfb}, +Note: If you \type {fontloader.open} a \TYPEONE\ file named \type {font.pfb}, the library will automatically search for and apply \type {font.afm} if it exists in the same directory as the file \type {font.pfb}. In that case, there is no need for an explicit call to \type {apply_afmfile()}. @@ -203,18 +214,22 @@ need for an explicit call to \type {apply_afmfile()}. If the function fails, the return value is a table containing any errors reported by fontloader while applying the AFM file. On success, \type {nil} is returned. -\section[fontloadertables]{Fontloader font tables} +\stopsection + +\startsection[title={Fontloader font tables},reference=fontloadertables][library=fontloader] \topicindex {fontloader+tables} -As mentioned earlier, the return value of \type {fontloader.open()} is a userdata +\libindex{fields} + +As mentioned earlier, the return value of \type {fontloader.open} is a userdata object. One way to have access to the actual metrics is to call \type -{fontloader.to_table()} on this object, returning the table structure that is +{fontloader.to_table} on this object, returning the table structure that is explained in the following sections. In teh following sections we will not explain each field in detail. Most fields are self descriptive and for the more technical aspects you need to consult the relevant font references. -It turns out that the result from \type {fontloader.to_table()} sometimes needs +It turns out that the result from \type {fontloader.to_table} sometimes needs very large amounts of memory (depending on the font's complexity and size) so it is possible to access the userdata object directly. @@ -279,9 +294,11 @@ local fields = fontloader.fields(f) local fields = fontloader.fields(f.glyphs[0]) \stopfunctioncall -\section{Table types} +\stopsection + +\startsection[title={Table types}][library=fontloader] -\subsection{Top-level} +\startsubsection[title={The main table}] The top|-|level keys in the returned table are (the explanations in this part of the documentation are not yet finished): @@ -357,7 +374,6 @@ the documentation are not yet finished): \NC \type{creationtime} \NC number \NC \NC \NR \NC \type{modificationtime} \NC number \NC \NC \NR \NC \type{os2_version} \NC number \NC \NC \NR -\NC \type{sfd_version} \NC number \NC \NC \NR \NC \type{math} \NC table \NC \NC \NR \NC \type{validation_state} \NC table \NC \NC \NR \NC \type{horiz_base} \NC table \NC \NC \NR @@ -367,10 +383,12 @@ the documentation are not yet finished): \LL \stoptabulate -\subsection{Glyph items} +\stopsubsection + +\startsubsection[title={\type {glyphs}}] The \type {glyphs} is an array containing the per|-|character -information (quite a few of these are only present if nonzero). +information (quite a few of these are only present if non|-|zero). \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -380,8 +398,8 @@ information (quite a few of these are only present if nonzero). \NC \type{boundingbox} \NC array \NC array of four numbers, see note below \NC \NR \NC \type{width} \NC number \NC only for horizontal fonts \NC \NR \NC \type{vwidth} \NC number \NC only for vertical fonts \NC \NR -\NC \type{tsidebearing} \NC number \NC only for vertical ttf/otf fonts, and only if nonzero \NC \NR -\NC \type{lsidebearing} \NC number \NC only if nonzero and not equal to boundingbox[1] \NC \NR +\NC \type{tsidebearing} \NC number \NC only for vertical ttf/otf fonts, and only if non|-|zero \NC \NR +\NC \type{lsidebearing} \NC number \NC only if non|-|zero and not equal to boundingbox[1] \NC \NR \NC \type{class} \NC string \NC one of "none", "base", "ligature", "mark", "component" (if not present, the glyph class is \quote {automatic}) \NC \NR \NC \type{kerns} \NC array \NC only for horizontal fonts, if set \NC \NR @@ -482,7 +500,7 @@ The \type {ligatures} is a linear array of small hashes: \stoptabulate The \type {anchor} table is indexed by a string signifying the anchor type, which -is one of +is one of: \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -532,7 +550,9 @@ For clarification, an anchor table could for example look like this : Note: The \type {baselig} table can be sparse! -\subsection{map table} +\stopsubsection + +\startsubsection[title={\type {map}}] The top|-|level map is a list of encoding mappings. Each of those is a table itself. @@ -576,15 +596,15 @@ The \type {enc} table is a bit more verbose: \NC \type{only_1byte} \NC number \NC \NC \NR \NC \type{has_1byte} \NC number \NC \NC \NR \NC \type{has_2byte} \NC number \NC \NC \NR -\NC \type{is_unicodebmp} \NC number \NC only if nonzero\NC \NR -\NC \type{is_unicodefull} \NC number \NC only if nonzero\NC \NR -\NC \type{is_custom} \NC number \NC only if nonzero\NC \NR -\NC \type{is_original} \NC number \NC only if nonzero\NC \NR -\NC \type{is_compact} \NC number \NC only if nonzero\NC \NR -\NC \type{is_japanese} \NC number \NC only if nonzero\NC \NR -\NC \type{is_korean} \NC number \NC only if nonzero\NC \NR -\NC \type{is_tradchinese} \NC number \NC only if nonzero [name?]\NC \NR -\NC \type{is_simplechinese} \NC number \NC only if nonzero\NC \NR +\NC \type{is_unicodebmp} \NC number \NC only if non|-|zero\NC \NR +\NC \type{is_unicodefull} \NC number \NC only if non|-|zero\NC \NR +\NC \type{is_custom} \NC number \NC only if non|-|zero\NC \NR +\NC \type{is_original} \NC number \NC only if non|-|zero\NC \NR +\NC \type{is_compact} \NC number \NC only if non|-|zero\NC \NR +\NC \type{is_japanese} \NC number \NC only if non|-|zero\NC \NR +\NC \type{is_korean} \NC number \NC only if non|-|zero\NC \NR +\NC \type{is_tradchinese} \NC number \NC only if non|-|zero [name?]\NC \NR +\NC \type{is_simplechinese} \NC number \NC only if non|-|zero\NC \NR \NC \type{low_page} \NC number \NC \NC \NR \NC \type{high_page} \NC number \NC \NC \NR \NC \type{iconv_name} \NC string \NC \NC \NR @@ -592,12 +612,16 @@ The \type {enc} table is a bit more verbose: \LL \stoptabulate -\subsection{private table} +\stopsubsection + +\startsubsection[title={\type {private}}] This is the font's private \POSTSCRIPT\ dictionary, if any. Keys and values are both strings. -\subsection{cidinfo table} +\stopsubsection + +\startsubsection[title={\type {cidinfo}}] \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -609,7 +633,9 @@ both strings. \LL \stoptabulate -\subsection[fontloaderpfminfotable]{pfminfo table} +\stopsubsection + +\startsubsection[reference=fontloaderpfminfotable,title={\type {pfminfo}}] The \type {pfminfo} table contains most of the OS/2 information: @@ -688,7 +714,9 @@ The \type {panose} subtable has exactly 10 string keys: \LL \stoptabulate -\subsection[fontloadernamestable]{names table} +\stopsubsection + +\startsubsection[reference=fontloadernamestable,title={\type {names}}] Each item has two top|-|level keys: @@ -709,7 +737,9 @@ are: \type {copyright}, \type {family}, \type {subfamily}, \type {uniqueid}, {sampletext}, \type {cidfindfontname}, \type {wwsfamily} and \type {wwssubfamily}. -\subsection{anchor_classes table} +\stopsubsection + +\startsubsection[title={\type {anchor_classes}}] The anchor_classes classes: @@ -725,7 +755,9 @@ The anchor_classes classes: % type is actually a lookup subtype, not a feature name. Officially, these % strings should be gpos_mark2mark etc. -\subsection{gpos table} +\stopsubsection + +\startsubsection[title={\type {gpos}}] The \type {gpos} table has one array entry for each lookup. (The \type {gpos_} prefix is somewhat redundant.) @@ -806,7 +838,9 @@ Note: the kernclass (as far as we can see) always has one entry so it could be o deep instead. Also the seconds start at \type {[2]} which is close to the fontforge internals so we keep that too. -\subsection{gsub table} +\stopsubsection + +\startsubsection[title={\type {gsub}}] This has identical layout to the \type {gpos} table, except for the type: @@ -821,7 +855,9 @@ type: \LL \stoptabulate -\subsection{ttf_tables and ttf_tab_saved tables} +\stopsubsection + +\startsubsection[title={\type {ttf_tables} and \type {ttf_tab_saved}}] \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -833,7 +869,9 @@ type: \LL \stoptabulate -\subsection{mm table} +\stopsubsection + +\startsubsection[title={\type {mm}}] \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -862,12 +900,16 @@ The \type {axismaps}: \LL \stoptabulate -\subsection{mark_classes table} +\stopsubsection + +\startsubsection[title={\type {mark_classes}}] The keys in this table are mark class names, and the values are a space|-|separated string of glyph names in this class. -\subsection{math table} +\stopsubsection + +\startsubsection[title={\type {math}}] The math table has the variables that are also discussed in the chapter aboout math: \type {ScriptPercentScaleDown}, \type {ScriptScriptPercentScaleDown}, \type @@ -900,11 +942,15 @@ math: \type {ScriptPercentScaleDown}, \type {ScriptScriptPercentScaleDown}, \typ {MinConnectorOverlap}, \type {FractionDelimiterSize} and \type {FractionDelimiterDisplayStyleSize}. -\subsection{validation_state table} +\stopsubsection + +\startsubsection[title={\type {validation_state}}] This is just a bonus table with keys: \type {bad_ps_fontname}, \type {bad_glyph_table}, \type {bad_cff_table}, \type {bad_metrics_table}, \type {bad_cmap_table}, \type {bad_bitmaps_table}, \type {bad_gx_table}, \type {bad_ot_table}, \type {bad_os2_version} and \type {bad_sfnt_header}. -\subsection{horiz_base and vert_base table} +\stopsubsection + +\startsubsection[title={\type {horiz_base} and \type {vert_base}}] \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -941,7 +987,9 @@ The \type {lang} subtable: The \type {features} points to an array of tables with the same layout except that in those nested tables, the tag represents a language. -\subsection{altuni table} +\stopsubsection + +\startsubsection[title={\type {altuni}}] An array of alternate \UNICODE\ values. Inside that array are hashes with: @@ -953,7 +1001,9 @@ An array of alternate \UNICODE\ values. Inside that array are hashes with: \LL \stoptabulate -\subsection{vert_variants and horiz_variants table} +\stopsubsection + +\startsubsection[title={\type {vert_variants} and \type {horiz_variants}}] \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -977,7 +1027,9 @@ The \type {parts} table is an array of smaller tables: \LL \stoptabulate -\subsection{mathkern table} +\stopsubsection + +\startsubsection[title={\type {mathkern}}] \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -999,15 +1051,21 @@ Each of the subtables is an array of small hashes with two keys: \LL \stoptabulate -\subsection{kerns table} +\stopsubsection + +\startsubsection[title={\type {kerns}}] Substructure is identical to the per|-|glyph subtable. -\subsection{vkerns table} +\stopsubsection + +\startsubsection[title={\type {vkerns}}] Substructure is identical to the per|-|glyph subtable. -\subsection{texdata table} +\stopsubsection + +\startsubsection[title={\type {texdata}}] \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -1017,7 +1075,9 @@ Substructure is identical to the per|-|glyph subtable. \LL \stoptabulate -\subsection{lookups table} +\stopsubsection + +\startsubsection[title={\type {lookups}}] Top|-|level \type {lookups} is quite different from the ones at character level. The keys in this hash are strings, the values the actual lookups, represented as @@ -1083,7 +1143,7 @@ for coverage: \LL \stoptabulate -and for reversecoverage: +and for reverse coverage: \starttabulate[|l|l|p|] \DB key \BC type \BC explanation \NC \NR @@ -1095,6 +1155,10 @@ and for reversecoverage: \LL \stoptabulate +\stopsubsection + +\stopsection + \stopchapter \stopcomponent diff --git a/manual/luatex-fonts.tex b/manual/luatex-fonts.tex index cc9755bc2..0e1cc8cc5 100644 --- a/manual/luatex-fonts.tex +++ b/manual/luatex-fonts.tex @@ -6,7 +6,7 @@ \startchapter[reference=fonts,title={Font structure}] -\section {The font tables} +\startsection[title={The font tables}] \topicindex {fonts} \topicindex {fonts+tables} @@ -46,7 +46,7 @@ the table are as follows: \NC \type{header} \NC yes \NC no \NC no \NC string \NC header comments, if any \NC \NR \NC \type{hyphenchar} \NC no \NC no \NC yes \NC number \NC default: \TEX's \prm {hyphenchar} \NC \NR \NC \type{parameters} \NC no \NC yes \NC yes \NC hash \NC default: 7 parameters, all zero \NC \NR -\NC \type{size} \NC no \NC yes \NC yes \NC number \NC loaded (at) size. (default: same as designsize) \NC \NR +\NC \type{size} \NC no \NC yes \NC yes \NC number \NC the required scaling (by default the same as designsize) \NC \NR \NC \type{skewchar} \NC no \NC no \NC yes \NC number \NC default: \TEX's \prm {skewchar} \NC \NR \NC \type{type} \NC yes \NC no \NC yes \NC string \NC basic type of this font \NC \NR \NC \type{format} \NC no \NC no \NC yes \NC string \NC disk format type \NC \NR @@ -62,11 +62,11 @@ the table are as follows: \NC \type{cache} \NC no \NC no \NC yes \NC string \NC This key controls caching of the \LUA\ table on the \TEX\ end where \type {yes} means: use a reference to the table that is passed to \LUATEX\ (this is the - default), and no \type {no} means: don't store the + default), and \type {no} means: don't store the table reference, don't cache any \LUA\ data for this font while \type {renew} means: don't store the table reference, but save a reference to the table that is - created at the first access to one of its fields in + created at the first access to one of its fields in the font. \NC \NR \NC \type{nomath} \NC no \NC no \NC yes \NC boolean \NC This key allows a minor speedup for text fonts. If it is present and true, then \LUATEX\ will not check the @@ -225,17 +225,20 @@ The following top|-|level keys can be present inside a character hash: \stoptabulate The values of \type {top_accent}, \type {bot_accent} and \type {mathkern} are -used only for math accent and superscript placement, see the \at {math chapter} -[math] in this manual for details. The values of \type {left_protruding} and -\type {right_protruding} are used only when \lpr {protrudechars} is non-zero. -Whether or not \type {expansion_factor} is used depends on the font's global -expansion settings, as well as on the value of \lpr {adjustspacing}. - -The usage of \type {tounicode} is this: if this font specifies a \type {tounicode=1} at the top level, then \LUATEX\ will construct a \type {/ToUnicode} -entry for the \PDF\ font (or font subset) based on the character|-|level \type {tounicode} strings, where they are available. If a character does not have a +used only for math accent and superscript placement, see \at {page} [math] in +this manual for details. The values of \type {left_protruding} and \type +{right_protruding} are used only when \lpr {protrudechars} is non-zero. Whether +or not \type {expansion_factor} is used depends on the font's global expansion +settings, as well as on the value of \lpr {adjustspacing}. + +The usage of \type {tounicode} is this: if this font specifies a \type +{tounicode=1} at the top level, then \LUATEX\ will construct a \type {/ToUnicode} +entry for the \PDF\ font (or font subset) based on the character|-|level \type +{tounicode} strings, where they are available. If a character does not have a sensible \UNICODE\ equivalent, do not provide a string either (no empty strings). -If the font level \type {tounicode} is not set, then \LUATEX\ will build up \type {/ToUnicode} based on the \TEX\ code points you used, and any character-level +If the font level \type {tounicode} is not set, then \LUATEX\ will build up \type +{/ToUnicode} based on the \TEX\ code points you used, and any character-level \type {tounicodes} will be ignored. The string format is exactly the format that is expected by Adobe \CMAP\ files (\UTF-16BE in hexadecimal encoding), minus the enclosing angle brackets. For instance the \type {tounicode} for a \type {fi} @@ -276,7 +279,7 @@ Each of those components is itself a hash of up to five keys: The \type {kerns} table is a hash indexed by character index (and \quote {character index} is defined as either a non|-|negative integer or the string -value \type {right_boundary}), with the values the kerning to be applied, in +value \type {right_boundary}), with the values of the kerning to be applied, in scaled points. The \type {ligatures} table is a hash indexed by character index (and \quote @@ -321,7 +324,9 @@ indicates the final insertion point. The \type {commands} array is explained below. -\section {Real fonts} +\stopsection + +\startsection[title={Real fonts}] \topicindex {fonts+real} \topicindex {fonts+virtual} @@ -369,7 +374,9 @@ If no special care is needed, \LUATEX\ falls back to the mapfile|-|based solutio used by \PDFTEX\ and \DVIPS, so that legacy fonts are supported transparently. If a \quote {wide} font is used, the new subsystem kicks in, and some extra fields have to be present in the font structure. In this case, \LUATEX\ does not use a -map file at all. These extra fields are: \type {format}, \type {embedding}, \type {fullname}, \type {cidinfo} (as explained above), \type {filename}, and the \type {index} key in the separate characters. +map file at all. These extra fields are: \type {format}, \type {embedding}, \type +{fullname}, \type {cidinfo} (as explained above), \type {filename}, and the \type +{index} key in the separate characters. The \type {format} variable can have the following values. \type {type3} fonts are provided for backward compatibility only, and do not support the new wide @@ -399,7 +406,8 @@ Valid values for the \type {embedding} variable are: The other fields are used as follows. The \type {fullname} will be the \POSTSCRIPT|/|\PDF\ font name. The \type {cidinfo} will be used as the character set: the CID \type {/Ordering} and \type {/Registry} keys. The \type {filename} -points to the actual font file. If you include the full path in the \type {filename} or if the file is in the local directory, \LUATEX\ will run a little +points to the actual font file. If you include the full path in the \type +{filename} or if the file is in the local directory, \LUATEX\ will run a little bit more efficient because it will not have to re|-|run the \type {find_*_file} callback in that case. @@ -419,7 +427,9 @@ In order to make sure that cut and paste of the final document works okay you ca best make sure that there is a \type {tounicode} vector enforced. Not all \PDF\ viewers handle this right so take \ACROBAT\ as reference. -\section[virtualfonts]{Virtual fonts} +\stopsection + +\startsection[reference=virtualfonts,title={Virtual fonts}] \subsection{The structure} @@ -430,7 +440,7 @@ table from \cbk {define_font} as a virtual font: \startitemize[packed] \startitem - Set the top|-|level key \type {type} to \type {virtual}. I most cases it's + Set the top|-|level key \type {type} to \type {virtual}. In most cases it's optional because we look at the \type {commands} entry anyway. \stopitem \startitem @@ -469,11 +479,11 @@ fonts = { } \stoptyping -The the first referenced font (at index~1) in this virtual font is \type -{ptrmr8a} loaded at 10pt, and the second is \type {psyr} loaded at a little over -9pt. The third one is previously defined font that is known to \LUATEX\ as font -id~38. The array index numbers are used by the character command definitions that -are part of each character. +The first referenced font (at index~1) in this virtual font is \type {ptrmr8a} +loaded at 10pt, and the second is \type {psyr} loaded at a little over 9pt. The +third one is a previously defined font that is known to \LUATEX\ as font id~38. +The array index numbers are used by the character command definitions that are +part of each character. The \type {commands} array is a hash where each item is another small array, with the first entry representing a command and the extra items being the @@ -555,7 +565,7 @@ commands = { The default value for \type {font} is always~1 at the start of the \type {commands} array. Therefore, if the virtual font is essentially only a -re|-|encoding, then you do usually not have create an explicit \quote {font} +re|-|encoding, then you do usually not have created an explicit \quote {font} command in the array. Rules inside of \type {commands} arrays are built up using only two dimensions: @@ -626,7 +636,9 @@ Finally, here is a plain \TEX\ input file with a virtual font demonstration: \typebuffer -\section{The \type {vf} library} +\stopsection + +\startsection[title={The \type {vf} library}] The \type {vf} library can be used when \LUA\ code, as defined in the \type {commands} of the font, is executed. The functions provided are similar as the @@ -637,12 +649,14 @@ advertised and tested much, if only because it's easy to define an invalid font (or mess up the \PDF\ stream). Keep in mind that the \LUA\ snippets are executed each time when a character is output. -\section{The \type {font} library} +\stopsection + +\startsection[title={The \type {font} library}] \topicindex {fonts+library} The font library provides the interface into the internals of the font system, -and also it contains helper functions to load traditional \TEX\ font metrics +and it also contains helper functions to load traditional \TEX\ font metrics formats. Other font loading functionality is provided by the \type {fontloader} library that will be discussed in the next section. @@ -670,9 +684,6 @@ The number is a bit special: \stopitem \stopitemize -The internal structure of the metrics font table that is returned is explained in -\in {chapter} [fonts]. - \subsection{Loading a \VF\ file} \topicindex {fonts+vf} @@ -699,8 +710,8 @@ font.fonts[n] = { ... } <table> f = font.fonts[n] \stoptyping -See \in {chapter} [fonts] for the structure of the tables. Because this is a -virtual array, you cannot call \type {pairs} on it, but see below for the \type {font.each} iterator. +Because this is a virtual array, you cannot call \type {pairs} on it, but see +below for the \type {font.each} iterator. The two metatable functions implementing the virtual array are: @@ -709,9 +720,16 @@ The two metatable functions implementing the virtual array are: font.setfont(<number> n, <table> f) \stopfunctioncall -Note that at the moment, each access to the \type {font.fonts} or call to \type {font.getfont} creates a \LUA\ table for the whole font. This process can be quite -slow. In a later version of \LUATEX, this interface will change (it will start -using userdata objects instead of actual tables). +Note that at the moment, each access to the \type {font.fonts} or call to \type +{font.getfont} creates a \LUA\ table for the whole font unless you cached it. +This process can be quite slow. + +\startfunctioncall +<table> p = font.getparameters(<number> n) +\stopfunctioncall + +This one will return a table of the parameters as known to \TEX. These can be +different from the ones in the cached table. Also note the following: assignments can only be made to fonts that have already been defined in \TEX, but have not been accessed {\it at all\/} since that @@ -742,9 +760,8 @@ You can define your own font into \type {font.fonts} by calling this function: \stopfunctioncall The return value is the internal id number of the defined font (the index into -\type {font.fonts}). If the font creation fails, an error is raised. The table -is a font structure, as explained in \in {chapter} [fonts]. An alternative call -is: +\type {font.fonts}). If the font creation fails, an error is raised. The table is +a font structure. An alternative call is: \startfunctioncall <number> i = @@ -834,6 +851,8 @@ value is the index in \type {font.fonts}, the second the font itself, as a \LUA\ table. The indices are listed incrementally, but they do not always form an array of consecutive numbers: in some cases there can be holes in the sequence. +\stopsection + \stopchapter \stopcomponent diff --git a/manual/luatex-graphics.tex b/manual/luatex-graphics.tex index add4b67be..038710cd5 100644 --- a/manual/luatex-graphics.tex +++ b/manual/luatex-graphics.tex @@ -1,12 +1,14 @@ % language=uk +% mp solve_path + \environment luatex-style \startcomponent luatex-graphics \startchapter[reference=graphics,title={The graphic libraries}] -\section{The \type {img} library} +\startsection[title={The \type {img} library}][library=img] \topicindex {images} \topicindex {images+library} @@ -19,6 +21,8 @@ The \type {img} library can be used as an alternative to \orm {pdfximage} and \subsection{\type {new}} +\libindex{new} + \startfunctioncall <image> var = img.new() <image> var = img.new(<table> image_spec) @@ -77,56 +81,64 @@ invalid images and we cannot guarantee side effects. A zero dimension image is still included when requested. No special flags are set. A proper workflow will not rely in such a catch but make sure that images are valid. -\subsection{\type {keys}} +\subsection{\type {fields}} + +\libindex{fields} \startfunctioncall -<table> keys = img.keys() +<table> keys = img.fields() \stopfunctioncall This function returns a list of all the possible \type {image_spec} keys, both user-supplied and automatic ones. \starttabulate[|l|l|p|] -\DB field name \BC type \BC description \NC \NR +\DB field name \BC type \BC description \NC \NR \TB -\NC \type{attr} \NC string \NC the image attributes for \LUATEX \NC \NR -\NC \type{bbox} \NC table \NC table with 4 boundingbox dimensions \type - {llx}, \type {lly}, \type {urx} and \type - {ury} overruling the \type {pagebox} entry \NC \NR -\NC \type{colordepth} \NC number \NC the number of bits used by the color space \NC \NR -\NC \type{colorspace} \NC number \NC the color space object number \NC \NR -\NC \type{depth} \NC number \NC the image depth for \LUATEX \NC \NR -\NC \type{filename} \NC string \NC the image file name \NC \NR -\NC \type{filepath} \NC string \NC the full (expanded) file name of the image\NC \NR -\NC \type{height} \NC number \NC the image height for \LUATEX \NC \NR -\NC \type{imagetype} \NC string \NC one of \type {pdf}, \type {png}, \type {jpg}, - \type {jp2} or \type {jbig2} \NC \NR -\NC \type{index} \NC number \NC the \PDF\ image name suffix \NC \NR -\NC \type{objnum} \NC number \NC the \PDF\ image object number \NC \NR -\NC \type{page} \NC number \NC the identifier for the requested image page \NC \NR -\NC \type{pagebox} \NC string \NC the requested bounding box, one of - \type {none}, \type {media}, \type {crop}, - \type {bleed}, \type {trim}, \type {art} \NC \NR -\NC \type{pages} \NC number \NC the total number of available pages \NC \NR -\NC \type{rotation} \NC number \NC the image rotation from included \PDF\ file, - in multiples of 90~deg. \NC \NR -\NC \type{stream} \NC string \NC the raw stream data for an \type {/Xobject} - \type {/Form} object\NC \NR -\NC \type{transform} \NC number \NC the image transform, integer number 0..7 \NC \NR -\NC \type{orientation} \NC number \NC the (jpeg) image orientation, integer number 1..8 - (0 for unset) \NC \NR -\NC \type{width} \NC number \NC the image width for \LUATEX \NC \NR -\NC \type{xres} \NC number \NC the horizontal natural image resolution - (in \DPI) \NC \NR -\NC \type{xsize} \NC number \NC the natural image width \NC \NR -\NC \type{yres} \NC number \NC the vertical natural image resolution - (in \DPI) \NC \NR -\NC \type{ysize} \NC number \NC the natural image height \NC \NR -\NC \type{visiblefileame} \NC string \NC when set, this name will find its way in the - \PDF\ file as \type {PTEX} specification; when - an empty string is assigned nothing is written - to file; otherwise the natural filename is - taken \NC \NR +\NC \type{attr} \NC string \NC the image attributes for \LUATEX \NC \NR +\NC \type{bbox} \NC table \NC table with 4 boundingbox dimensions \type + {llx}, \type {lly}, \type {urx} and \type + {ury} overruling the \type {pagebox} entry \NC \NR +\NC \type{colordepth} \NC number \NC the number of bits used by the color space \NC \NR +\NC \type{colorspace} \NC number \NC the color space object number \NC \NR +\NC \type{depth} \NC number \NC the image depth for \LUATEX \NC \NR +\NC \type{filename} \NC string \NC the image file name \NC \NR +\NC \type{filepath} \NC string \NC the full (expanded) file name of the image\NC \NR +\NC \type{height} \NC number \NC the image height for \LUATEX \NC \NR +\NC \type{imagetype} \NC string \NC one of \type {pdf}, \type {png}, \type {jpg}, + \type {jp2} or \type {jbig2} \NC \NR +\NC \type{index} \NC number \NC the \PDF\ image name suffix \NC \NR +\NC \type{objnum} \NC number \NC the \PDF\ image object number \NC \NR +\NC \type{page} \NC number \NC the identifier for the requested image page \NC \NR +\NC \type{pagebox} \NC string \NC the requested bounding box, one of + \type {none}, \type {media}, \type {crop}, + \type {bleed}, \type {trim}, \type {art} \NC \NR +\NC \type{pages} \NC number \NC the total number of available pages \NC \NR +\NC \type{rotation} \NC number \NC the image rotation from included \PDF\ file, + in multiples of 90~deg. \NC \NR +\NC \type{stream} \NC string \NC the raw stream data for an \type {/Xobject} + \type {/Form} object\NC \NR +\NC \type{transform} \NC number \NC the image transform, integer number 0..7 \NC \NR +\NC \type{orientation} \NC number \NC the (jpeg) image orientation, integer number 1..8 + (0 for unset) \NC \NR +\NC \type{width} \NC number \NC the image width for \LUATEX \NC \NR +\NC \type{xres} \NC number \NC the horizontal natural image resolution + (in \DPI) \NC \NR +\NC \type{xsize} \NC number \NC the natural image width \NC \NR +\NC \type{yres} \NC number \NC the vertical natural image resolution + (in \DPI) \NC \NR +\NC \type{ysize} \NC number \NC the natural image height \NC \NR +\NC \type{visiblefilename} \NC string \NC when set, this name will find its way in the + \PDF\ file as \type {PTEX} specification; when + an empty string is assigned nothing is written + to file; otherwise the natural filename is + taken \NC \NR +\NC \type{userpassword} \NC string \NC the userpassword needed for opening a \PDF\ file \NC \NR +\NC \type{ownerpassword} \NC string \NC the ownerpassword needed for opening a \PDF\ file \NC \NR +\NC \type{keepopen} \NC boolean \NC keep the \PDF\ file open \NC \NR +\NC \type{nobbox} \NC boolean \NC don't add a boundingbox specification for streams \NC \NR +\NC \type{nolength} \NC boolean \NC don't add length key nor compress for streams \NC \NR +\NC \type{nosize} \NC boolean \NC don't add size fields for streams \NC \NR \LL \stoptabulate @@ -171,6 +183,8 @@ then use it by \LUATEX. If a \PDF\ file to be embedded already contains a \type \subsection{\type {scan}} +\libindex{scan} + \startfunctioncall <image> var = img.scan(<image> var) <image> var = img.scan(<table> image_spec) @@ -200,31 +214,40 @@ the PDF, and the used memory will be cleaned up automatically. \subsection{\type {copy}} +\libindex{copy} + \startfunctioncall <image> var = img.copy(<image> var) <image> var = img.copy(<table> image_spec) \stopfunctioncall If you say \type {a = b}, then both variables point to the same \type {<image>} -object. if you want to write out an image with different sizes, you can do a +object. if you want to write out an image with different sizes, you can do \type {b = img.copy(a)}. Afterwards, \type {a} and \type {b} still reference the same actual image dictionary, but the dimensions for \type {b} can now be changed from their initial values that were just copies from \type {a}. -\subsection{\type {write}} +\subsection{\type {write}, \type {immediatewrite}, \type {immediatewriteobject}} + +\topicindex {images+injection} +\topicindex {images+immediate} +\topicindex {images+object} + +\libindex{write} +\libindex{immediatewrite} +\libindex{immediatewriteobject} \startfunctioncall <image> var = img.write(<image> var) <image> var = img.write(<table> image_spec) \stopfunctioncall -By \type {img.write(a)} a \PDF\ object number is allocated, and a whatsit node of -subtype \type {pdf_refximage} is generated and put into the output list. By this -the image \type {a} is placed into the page stream, and the image file is written -out into an image stream object after the shipping of the current page is -finished. +By \type {img.write(a)} a \PDF\ object number is allocated, and a rule node of +subtype \type {image} is generated and put into the output list. By this the +image \type {a} is placed into the page stream, and the image file is written out +into an image stream object after the shipping of the current page is finished. Again you can do a terse call like @@ -233,16 +256,7 @@ img.write { filename = "foo.png" } \stoptyping The \type {<image>} variable is returned in case you want it for later -processing. - -\subsection{\type {immediatewrite}} - -\topicindex {images+immediate} - -\startfunctioncall -<image> var = img.immediatewrite(<image> var) -<image> var = img.immediatewrite(<table> image_spec) -\stopfunctioncall +processing. You can also write an object. By \type {img.immediatewrite(a)} a \PDF\ object number is allocated, and the image file for image \type {a} is written out immediately into the \PDF\ file as @@ -253,6 +267,11 @@ key. No \type {pdf_refximage} whatsit node is generated. You will need an page, or reference it by another trick; else you will have a dangling image object in the \PDF\ file. +\startfunctioncall +<image> var = img.immediatewrite(<image> var) +<image> var = img.immediatewrite(<table> image_spec) +\stopfunctioncall + Also here you can do a terse call like \starttyping @@ -261,8 +280,18 @@ a = img.immediatewrite { filename = "foo.png" } The \type {<image>} variable is returned and you will most likely need it. +The next function is kind of special as it copies an object from a (\PDF) image +file. This features is experimental and might disappear. + +\startfunctioncall +<integer> objnum = img.immediatewriteobject(<image> var, <integer> objnum) +<integer> objnum = img.immediatewriteobject(<table> image_spec, <integer> objnum) +\stopfunctioncall + \subsection{\type {node}} +\libindex{node} + \startfunctioncall <node> n = img.node(<image> var) <node> n = img.node(<table> image_spec) @@ -287,6 +316,8 @@ node.write(img.node{filename="foo.png"}) \topicindex {images+types} +\libindex{types} + \startfunctioncall <table> types = img.types() \stopfunctioncall @@ -297,26 +328,56 @@ these are \type {pdf}, \type {png}, \type {jpg}, \type {jp2} (JPEG~2000), and \subsection{\type {boxes}} +\libindex{boxes} + \startfunctioncall <table> boxes = img.boxes() \stopfunctioncall This function returns a list with the supported \PDF\ page box names, currently these are \type {media}, \type {crop}, \type {bleed}, \type {trim}, and \type -{art}, all in lowercase letters. +{art}, all in lowercase. + +The \PDF\ file is kept open after its properties are determined. After inclusion, +which happens when the page that references the image is flushed, the file is +closed. This means that when you have thousands of images on one page, your +operating system might decide to abort the run. When you include more than one +page from a \PDF\ file you can set the \type {keepopen} flag when you allocate an +image object, or pass the \type {keepopen} directive when you refer to the image +with \lpr {useimageresource}. This only makes sense when you embed many pages. +An \prm {immediate} applied to \lpr {saveimageresource} will also force a +close after inclusion. + +\starttyping +\immediate\useimageresource{foo.pdf}% + \saveimageresource \lastsavedimageresourceindex % closed + \useimageresource{foo.pdf}% + \saveimageresource \lastsavedimageresourceindex % kept open + \useimageresource{foo.pdf}% + \saveimageresource keepopen\lastsavedimageresourceindex % kept open -\section{The \type {mplib} library} +\directlua{img.write(img.scan{ file = "foo.pdf" })} % closed +\directlua{img.write(img.scan{ file = "foo.pdf", keepopen = true })} % kept open +\stoptyping + +\stopsection + +\startsection[title={The \type {mplib} library}][library=mplib] \topicindex {\METAPOST} \topicindex {\METAPOST+mplib} \topicindex {images+mplib} \topicindex {images+\METAPOST} +\libindex{version} + The \MP\ library interface registers itself in the table \type {mplib}. It is based on \MPLIB\ version \ctxlua {context(mplib.version())}. \subsection{\type {new}} +\libindex{new} + To create a new \METAPOST\ instance, call \startfunctioncall @@ -326,16 +387,16 @@ To create a new \METAPOST\ instance, call This creates the \type {mp} instance object. The argument hash can have a number of different fields, as follows: -\starttabulate[|l|l|p|p|] +\starttabulate[|l|l|pl|pl|] \DB name \BC type \BC description \BC default \NC \NR \TB \NC \type{error_line} \NC number \NC error line width \NC 79 \NC \NR \NC \type{print_line} \NC number \NC line length in ps output \NC 100 \NC \NR \NC \type{random_seed} \NC number \NC the initial random seed \NC variable \NC \NR \NC \type{math_mode} \NC string \NC the number system to use: - \type {double}, \type {scaled}, - \type {binary} or + \type {double} or + % \type {binary} or \type {decimal} \NC \type {scaled} \NC \NR \NC \type{interaction} \NC string \NC the interaction mode: \type {batch}, @@ -347,6 +408,11 @@ of different fields, as follows: \LL \stoptabulate +The binary mode is no longer available in the \LUATEX\ version of \MPLIB. It +offers no real advantage and brings a ton of extra libraries with platform +specific properties that we can now avoid. We might introduce a high resolution +scaled variant at some point but only when it pays of performance wise. + The \type {find_file} function should be of this form: \starttyping @@ -369,31 +435,31 @@ cannot be found. Note that the new version of \MPLIB\ no longer uses binary mem files, so the way to preload a set of macros is simply to start off with an \type {input} command -in the first \type {mp:execute()} call. +in the first \type {execute} call. -The \PDF\ file is kept open after its properties are determined. After inclusion, -which happens when the page that references the image is flushed, the file is -closed. This means that when you have thousands of images on one page, your -operating system might decide to abort the run. When you include more than one -page from a \PDF\ file you can set the \type {keepopen} flag when you allocate an -image object, or pass the \type {keepopen} directive when you refer to the image -with \lpr {useimageresource} This only makes sense when you embed many pages. -An \prm {immediate} applied to \lpr {saveimageresource} will also force a -close after inclusion. +When you are processing a snippet of text starting with \type {btex} and +ending with either \type {etex} or \type {verbatimtex}, the \METAPOST\ +\type {texscriptmode} parameter controls how spaces and newlines get honoured. +The default value is~1. Possible values are: -\starttyping -\immediate\useimageresource{foo.pdf}% - \saveimageresource \lastsavedimageresourceindex % closed - \useimageresource{foo.pdf}% - \saveimageresource \lastsavedimageresourceindex % kept open - \useimageresource{foo.pdf}% - \saveimageresource keepopen\lastsavedimageresourceindex % kept open +\starttabulate[|l|p|] +\DB name \BC meaning \NC \NR +\TB +\NC \type {0} \NC no newlines \NC \NR +\NC \type {1} \NC newlines in \type {verbatimtex} \NC \NR +\NC \type {2} \NC newlines in \type {verbatimtex} and \type {etex} \NC \NR +\NC \type {3} \NC no leading and trailing strip in \type {verbatimtex} \NC \NR +\NC \type {4} \NC no leading and trailing strip in \type {verbatimtex} and \type {btex} \NC \NR +\LL +\stoptabulate -\directlua{img.write(img.scan{ file = "foo.pdf" })} % closed -\directlua{img.write(img.scan{ file = "foo.pdf", keepopen = true })} % kept open -\stoptyping +That way the \LUA\ handler (assigned to \type {make_text}) can do what it likes. +An \type {etex} has to be followed by a space or \type {;} or be at the end of a +line and preceded by a space or at the beginning of a line. -\subsection{\type {mp:statistics}} +\subsection{\type {statistics}} + +\libindex{statistics} You can request statistics with: @@ -419,12 +485,14 @@ Note that in the new version of \MPLIB, this is informational only. The objects are all allocated dynamically, so there is no chance of running out of space unless the available system memory is exhausted. -\subsection{\type {mp:execute}} +\subsection{\type {execute}} + +\libindex{execute} You can ask the \METAPOST\ interpreter to run a chunk of code by calling \startfunctioncall -<table> rettable = mp:execute('metapost language chunk') +<table> rettable = execute(mp,"metapost code") \stopfunctioncall for various bits of \METAPOST\ language input. Be sure to check the \type @@ -438,21 +506,25 @@ instance, you cannot split a single statement over multiple chunks. In contrast with the normal stand alone \type {mpost} command, there is \notabene {no} implied \quote{input} at the start of the first chunk. -\subsection{\type {mp:finish}} +\subsection{\type {finish}} + +\libindex{finish} \startfunctioncall -<table> rettable = mp:finish() +<table> rettable = finish(mp) \stopfunctioncall If for some reason you want to stop using an \MPLIB\ instance while processing is -not yet actually done, you can call \type {mp:finish}. Eventually, used memory +not yet actually done, you can call \type finish}. Eventually, used memory will be freed and open files will be closed by the \LUA\ garbage collector, but -an explicit \type {mp:finish} is the only way to capture the final part of the +an explicit \type finish} is the only way to capture the final part of the output streams. \subsection{Result table} -The return value of \type {mp:execute} and \type {mp:finish} is a table with a +\libindex {fields} + +The return value of \type {execute} and \type {finish} is a table with a few possible keys (only \type {status} is always guaranteed to be present). \starttabulate[|l|l|p|] @@ -518,7 +590,7 @@ accessible values. The types are: \type {fill}, \type {outline}, \type {text}, \type {start_clip}, \type {stop_clip}, \type {start_bounds}, \type {stop_bounds}, \type {special}. -There is helper function (\type {mplib.fields(obj)}) to get the list of +There is a helper function (\type {mplib.fields(obj)}) to get the list of accessible values for a particular object, but you can just as easily use the tables given below. @@ -546,23 +618,6 @@ point number, unless stated otherwise. Field values that are of type \type The entries \type {htap} and \type {pen} are optional. -There is helper function (\type {mplib.pen_info(obj)}) that returns a table -containing a bunch of vital characteristics of the used pen (all values are -floats): - -\starttabulate[|l|l|p|] -\DB field \BC type \BC explanation \NC \NR -\TB -\NC \type{width} \NC number \NC width of the pen \NC \NR -\NC \type{sx} \NC number \NC $x$ scale \NC \NR -\NC \type{rx} \NC number \NC $xy$ multiplier \NC \NR -\NC \type{ry} \NC number \NC $yx$ multiplier \NC \NR -\NC \type{sy} \NC number \NC $y$ scale \NC \NR -\NC \type{tx} \NC number \NC $x$ offset \NC \NR -\NC \type{ty} \NC number \NC $y$ offset \NC \NR -\LL -\stoptabulate - \subsubsection{outline} \starttabulate[|l|l|p|] @@ -699,28 +754,78 @@ representation of the dashlist. \type {dashes} is an array of \quote {on} and \LL \stoptabulate +\subsection{Pens and \type {pen_info}} + +\libindex{pen_info} + +There is helper function (\type {pen_info(obj)}) that returns a table containing +a bunch of vital characteristics of the used pen (all values are floats): + +\starttabulate[|l|l|p|] +\DB field \BC type \BC explanation \NC \NR +\TB +\NC \type{width} \NC number \NC width of the pen \NC \NR +\NC \type{sx} \NC number \NC $x$ scale \NC \NR +\NC \type{rx} \NC number \NC $xy$ multiplier \NC \NR +\NC \type{ry} \NC number \NC $yx$ multiplier \NC \NR +\NC \type{sy} \NC number \NC $y$ scale \NC \NR +\NC \type{tx} \NC number \NC $x$ offset \NC \NR +\NC \type{ty} \NC number \NC $y$ offset \NC \NR +\LL +\stoptabulate + \subsection{Character size information} These functions find the size of a glyph in a defined font. The \type {fontname} is the same name as the argument to \type {infont}; the \type {char} is a glyph id in the range 0 to 255; the returned \type {w} is in AFM units. -\subsubsection{\type {mp:char_width}} +\subsubsection{\type {char_width}} + +\libindex{char_width} \startfunctioncall -<number> w = mp:char_width(<string> fontname, <number> char) +<number> w = char_width(mp,<string> fontname, <number> char) \stopfunctioncall -\subsubsection{\type {mp:char_height}} +\subsubsection{\type {char_height}} + +\libindex{char_height} \startfunctioncall -<number> w = mp:char_height(<string> fontname, <number> char) +<number> w = char_height(mp,<string> fontname, <number> char) \stopfunctioncall -\subsubsection{\type {mp:char_depth}} +\subsubsection{\type {char_depth}} + +\libindex{char_depth} \startfunctioncall -<number> w = mp:char_depth(<string> fontname, <number> char) +<number> w = char_depth(mp,<string> fontname, <number> char) \stopfunctioncall +\subsubsection{\type {get_[boolean|numeric|string|path]}} + +\libindex{get_boolean} +\libindex{get_numeric} +\libindex{get_path} +\libindex{get_string} + +When a script call brings you from the \METAPOST\ run (temporarily) back to +\LUA\ you can access variables, but only if they are known (so for instance +anonymous capsules like loop variables are not accessible). + +\startfunctioncall +<boolean> w = get_boolean(mp,<string> name) +<number> n = get_numeric(mp,<string> name) +<string> s = get_string (mp,<string> name) +<table> p = get_path (mp,<string> name) +\stopfunctioncall + +The path is returned a a table with subtables that have six numbers: the +coordinates of the point, pre- and postcontrol. A \type {cycle} fields indicates +if a path is cyclic. + +\stopsection + \stopchapter diff --git a/manual/luatex-introduction.tex b/manual/luatex-introduction.tex index f0c17ebe7..0930c532b 100644 --- a/manual/luatex-introduction.tex +++ b/manual/luatex-introduction.tex @@ -16,7 +16,7 @@ It took about a decade to reach stable version 1.0, but for good reason. Successive versions brought new functionality, more control, some cleanup of internals. Experimental features evolved into stable ones or were dropped. Already quite early \LUATEX\ could be used for production and it was used on a -daily basis by the authors. Successive versions sometimes demanded a adaption to +daily basis by the authors. Successive versions sometimes demanded an adaption to the \LUA\ interfacing, but the concepts were unchanged. The current version can be considered stable in functionality and there will be no fundamental changes. Of course we then can decide to move towards version 2.00 with different @@ -47,17 +47,17 @@ The organization of the source code is adapted so that it can glue all these components together. We continue cleaning up side effects of the accumulated code in \TEX\ engines (especially code that is not needed any longer). -\startitemize % [packed] +\startitemize [unpacked] \startitem We started out with most of \PDFTEX\ version 1.40.9. The code base was converted to \CCODE\ and split in modules. Experimental features were - been removed and utility macros are not inherited because their - functionality can be programmed in \LUA. The number of backend interface - commands has been reduced to a few. The so called extensions are - separated from the core (which we try to keep close to the original \TEX\ - core). Some mechanisms like expansion and protrusion can behave different - from the original due to some cleanup and optimization. Some whatsit - based functionality (image support and reusable content) is now core + removed and utility macros are not inherited because their functionality + can be programmed in \LUA. The number of backend interface commands has + been reduced to a few. The so called extensions are separated from the + core (which we try to keep close to the original \TEX\ core). Some + mechanisms like expansion and protrusion can behave different from the + original due to some cleanup and optimization. Some whatsit based + functionality (image support and reusable content) is now core functionality. We don't stay in sync with \PDFTEX\ development. \stopitem \startitem @@ -108,30 +108,49 @@ code in \TEX\ engines (especially code that is not needed any longer). means that a complete \TEX\ workflow can be built without the need for additional programs. \stopitem + \startitem + The versions starting from 1.09 no longer use the poppler library for + inclusion but a lightweight dedicated one. This removes a dependency but + also makes the inclusion code of \LUATEX\ different from \PDFTEX. In fact + it was already much different due to the \LUA\ image interfacing. + \stopitem \stopitemize We try to keep upcoming versions compatible but intermediate releases can contain -experimental features. A general rule is that versions that end up on \TEX live -and|/|or are released around \CONTEXT\ meetings are stable. Future versions will -probably become a bit leaner and meaner. Some libraries might become external as -we don't want to bloat the binary and also don't want to add more hard coded -solutions. After all, with \LUA\ you can extend the core functionality. The less -dependencies, the better. +experimental features. A general rule is that versions that end up on \TEXLIVE\ +and|/|or are released around \CONTEXT\ meetings are stable. Any version between +the yearly \TEXLIVE\ releases are to be considered beta and in the repository end +up as trunk releases. We have an experimental branch that we use for development +but there is no support for any of its experimental features. Intermediate +releases (from trunk) are normally available via the \CONTEXT\ distribution +channels (the garden and so called minimals). + +Version 1.10 is more or less an endpoint in development: this is what you get. +Because not only \CONTEXT, that we can adapt rather easily, uses \LUATEX, we +cannot change fundamentals without unforeseen consequences. By now it has been +proven that \LUA\ can be used to extend the core functionality so there is no +need to add more, and definitely no hard coded solutions for (not so) common +problems. Of course there will be bug fixes, maybe some optimization, and there +might even be some additions or non|-|intrusive improvements, but only after +testing outside the stable release. After all, the binary is already more than +large enough and there is not that much to gain. You might find \LUA\ helpers that are not yet documented. These are considered experimental, although when you encounter them in a \CONTEXT\ version that has been around for a while you can assume that they will stay. Of course it can just be that we forgot to document them yet. -The \TEXLIVE\ version is to be considered the current stable version. Any version -between the yearly \TEXLIVE\ releases are to be considered beta and in the -repository end up as trunk releases. We have an experimental branch that we use -for development but there is no support for any of its experimental features. -Intermediate releases (from trunk) are normally available via the \CONTEXT\ -distribution channels (the garden and so called minimals). +A manual like this is not really meant as tutorial, for that we refer to +documents that ship with \CONTEXT, articles, etc. It is also never complete +enough for all readers. We try to keep up but the reader needs to realize that +it's all volunteer work done in spare time. And for sure, complaining about a bad +manual or crappy documentation will not really motivate us to spend more time on +it. That being said, we hope that this document is useful. \blank[big] +\testpage[5] + \startlines Hans Hagen Harmut Henkel diff --git a/manual/luatex-languages.tex b/manual/luatex-languages.tex index 308c0ad7a..98960aa65 100644 --- a/manual/luatex-languages.tex +++ b/manual/luatex-languages.tex @@ -6,6 +6,8 @@ \startchapter[reference=languages,title={Languages, characters, fonts and glyphs}] +\startsection[title={Introduction}] + \topicindex {languages} \LUATEX's internal handling of the characters and glyphs that eventually become @@ -49,7 +51,9 @@ font information in the whole list (creating ligatures and adjusting kerning), and finally it adjusts all the subtype identifiers so that the records are \quote {glyph nodes} from now on. -\section[charsandglyphs]{Characters and glyphs} +\stopsection + +\startsection[title={Characters, glyphs and discretionaries},reference=charsandglyphs] \topicindex {characters} \topicindex {glyphs} @@ -63,7 +67,7 @@ indicating whether this ligature was the result of a word boundary, and it was stored in the same place as other nodes like boxes and kerns and glues. In \LUATEX, these two types are merged into one, somewhat larger structure called -a \nod {glyph} nodes. Besides having the old character, font, and component +a \nod {glyph} node. Besides having the old character, font, and component fields there are a few more, like \quote {attr} that we will see in \in {section} [glyphnodes], these nodes also contain a subtype, that codes four main types and two additional ghost types. For ligatures, multiple bits can be set at the same @@ -79,25 +83,25 @@ time (in case of a single|-|glyph word). not set. \stopitem \startitem - \type {ligature}, for constructed ligatures bit 1 is set + \type {ligature}, for constructed ligatures bit 1 is set. \stopitem \startitem - \type {ghost}, for so called \quote {ghost objects} bit 2 is set + \type {ghost}, for so called \quote {ghost objects} bit 2 is set. \stopitem \startitem \type {left}, for ligatures created from a left word boundary and for - ghosts created from \lpr {leftghost} bit 3 gets set + ghosts created from \lpr {leftghost} bit 3 gets set. \stopitem \startitem \type {right}, for ligatures created from a right word boundary and - for ghosts created from \lpr {rightghost} bit 4 is set + for ghosts created from \lpr {rightghost} bit 4 is set. \stopitem \stopitemize The \nod {glyph} nodes also contain language data, split into four items that -were current when the node was created: the \prm {setlanguage} (15 bits), \prm -{lefthyphenmin} (8 bits), \prm {righthyphenmin} (8 bits), and \prm {uchyph} (1 -bit). +were current when the node was created: the \prm {setlanguage} (15~bits), \prm +{lefthyphenmin} (8~bits), \prm {righthyphenmin} (8~bits), and \prm {uchyph} +(1~bit). Incidentally, \LUATEX\ allows 16383 separate languages, and words can be 256 characters long. The language is stored with each character. You can set @@ -105,7 +109,7 @@ characters long. The language is stored with each character. You can set an ignored hyphenation language. The new primitive \lpr {hyphenationmin} can be used to signal the minimal length -of a word. This value stored with the (current) language. +of a word. This value is stored with the (current) language. Because the \prm {uchyph} value is saved in the actual nodes, its handling is subtly different from \TEX82: changes to \prm {uchyph} become effective @@ -155,7 +159,7 @@ Here are some examples (we assume that French patterns are used): \stoptabulate Carrying all this information with each glyph would give too much overhead and -also make the process of setting up thee codes more complex. A solution with +also make the process of setting up these codes more complex. A solution with \type {hjcode} sets was considered but rejected because in practice the current approach is sufficient and it would not be compatible anyway. @@ -164,7 +168,7 @@ of \prm {savinghyphcodes} at the moment the format is dumped. A boundary node normally would mark the end of a word which interferes with for instance discretionary injection. For this you can use the \prm {wordboundary} -as trigger. Here are a few examples of usage: +as a trigger. Here are a few examples of usage: \startbuffer discrete---discrete @@ -188,17 +192,17 @@ as trigger. Here are a few examples of usage: \typebuffer \startnarrower \dontcomplain \hsize 1pt \getbuffer \par \stopnarrower We only accept an explicit hyphen when there is a preceding glyph and we skip a -sequence of explicit hyphens as that normally indicates a \type {--} or \type +sequence of explicit hyphens since that normally indicates a \type {--} or \type {---} ligature in which case we can in a worse case usage get bad node lists later on due to messed up ligature building as these dashes are ligatures in base -fonts. This is a side effect of the separating the hyphenation, ligaturing and +fonts. This is a side effect of separating the hyphenation, ligaturing and kerning steps. -The start and end of a characters is signalled by a \nod {glue}, \nod {penalty}, -\nod {kern} or \nod {boundary} node. But by default also a \nod {hlist}, \nod -{vlist}, \nod {rule}, \nod {dir}, \nod {whatsit}, \nod {ins}, and \nod {adjust} -node indicate a start or end. You can omit the last set from the test by setting -\lpr {hyphenationbounds} to a non|-|zero value: +The start and end of a sequence of characters is signalled by a \nod {glue}, \nod +{penalty}, \nod {kern} or \nod {boundary} node. But by default also a \nod +{hlist}, \nod {vlist}, \nod {rule}, \nod {dir}, \nod {whatsit}, \nod {ins}, and +\nod {adjust} node indicate a start or end. You can omit the last set from the +test by setting \lpr {hyphenationbounds} to a non|-|zero value: \starttabulate[|c|l|] \DB value \BC behaviour \NC \NR @@ -274,6 +278,7 @@ min values to 1 and make sure that the words hyphenate at each character. {\SomeTest{3}{one}} {\type{3}} \stopcombination \stopplacefigure + \startplacefigure[reference=hb:2,title={\type{one\null two}}] \startcombination[4*1] {\SomeTest{0}{one\null two}} {\type{0}} @@ -282,6 +287,7 @@ min values to 1 and make sure that the words hyphenate at each character. {\SomeTest{3}{one\null two}} {\type{3}} \stopcombination \stopplacefigure + \startplacefigure[reference=hb:3,title={\type{\null one\null two}}] \startcombination[4*1] {\SomeTest{0}{\null one\null two}} {\type{0}} @@ -290,6 +296,7 @@ min values to 1 and make sure that the words hyphenate at each character. {\SomeTest{3}{\null one\null two}} {\type{3}} \stopcombination \stopplacefigure + \startplacefigure[reference=hb:4,title={\type{one\null two\null}}] \startcombination[4*1] {\SomeTest{0}{one\null two\null}} {\type{0}} @@ -298,6 +305,7 @@ min values to 1 and make sure that the words hyphenate at each character. {\SomeTest{3}{one\null two\null}} {\type{3}} \stopcombination \stopplacefigure + \startplacefigure[reference=hb:5,title={\type{\null one\null two\null}}] \startcombination[4*1] {\SomeTest{0}{\null one\null two\null}} {\type{0}} @@ -344,18 +352,6 @@ before--after \par before---after \par \stopbuffer -In \in {figure} [automatichyphenmode:1] \in {and} [automatichyphenmode:2] we show -what happens with three samples: - -Input A: \typebuffer[a] -Input B: \typebuffer[b] -Input C: \typebuffer[c] - -As with primitive companions of other single character commands, the \prm {-} -command has a more verbose primitive version in \lpr {explicitdiscretionary} -and the normally intercepted in the hyphenator character \type {-} (or whatever -is configured) is available as \lpr {automaticdiscretionary}. - \startbuffer[demo] \startcombination[nx=4,ny=3,location=top] {\framed[align=normal,strut=no,top=\vskip.5ex,bottom=\vskip.5ex]{\automatichyphenmode\zerocount \hsize6em \getbuffer[a]}} {A~0~6em} @@ -373,7 +369,7 @@ is configured) is available as \lpr {automaticdiscretionary}. \stopcombination \stopbuffer -\startplacefigure[reference=automatichyphenmode:1,title={The automatic modes \type {0} (default), \type {1} and \type {2}, with a \prm {hsize} +\startplacefigure[locationreference=automatichyphenmode:1,title={The automatic modes \type {0} (default), \type {1} and \type {2}, with a \prm {hsize} of 6em and 2pt (which triggers a linebreak).}] \dontcomplain \tt \getbuffer[demo] \stopplacefigure @@ -384,7 +380,21 @@ of 6em and 2pt (which triggers a linebreak).}] \dontcomplain \tt \getbuffer[demo] \stopplacefigure -\section{The main control loop} +In \in {figure} [automatichyphenmode:1] \in {and} [automatichyphenmode:2] we show +what happens with three samples: + +Input A: \typebuffer[a] +Input B: \typebuffer[b] +Input C: \typebuffer[c] + +As with primitive companions of other single character commands, the \prm {-} +command has a more verbose primitive version in \lpr {explicitdiscretionary} +and the normally intercepted in the hyphenator character \type {-} (or whatever +is configured) is available as \lpr {automaticdiscretionary}. + +\stopsection + +\startsection[title={The main control loop}] \topicindex {main loop} \topicindex {hyphenation} @@ -396,7 +406,7 @@ there are a few exceptions. \startitemize[n] \startitem - The \prm {accent} primitives creates nodes with subtype \quote {glyph} + The \prm {accent} primitive creates nodes with subtype \quote {glyph} instead of \quote {character}: one for the actual accent and one for the accentee. The primary reason for this is that \prm {accent} in \TEX82 is explicitly dependent on the current font encoding, so it would not make much @@ -520,7 +530,9 @@ resulting from an \prm {exhyphenchar}: other values do what we always did in \LUATEX: insert \prm {exhyphenpenalty}. -\section[patternsexceptions]{Loading patterns and exceptions} +\stopsection + +\startsection[title={Loading patterns and exceptions},reference=patternsexceptions] \topicindex {hyphenation} \topicindex {hyphenation+patterns} @@ -534,22 +546,24 @@ different from the one in \TEX82. After expansion, the argument for \prm {patterns} has to be proper \UTF8 with individual patterns separated by spaces, no \prm {char} or \prm {chardef}d -commands are allowed. The current implementation quite strict and will reject all -non|-|\UNICODE\ characters. Likewise, the expanded argument for \prm +commands are allowed. The current implementation is quite strict and will reject +all non|-|\UNICODE\ characters. Likewise, the expanded argument for \prm {hyphenation} also has to be proper \UTF8, but here a bit of extra syntax is provided: \startitemize[n] \startitem - Three sets of arguments in curly braces (\type {{}{}{}}) indicates a desired + Three sets of arguments in curly braces (\type {{}{}{}}) indicate a desired complex discretionary, with arguments as in \prm {discretionary}'s command in normal document input. \stopitem \startitem - A \type {-} indicates a desired simple discretionary, cf.\ \type {\-} and \type {\discretionary{-}{}{}} in normal document input. + A \type {-} indicates a desired simple discretionary, cf.\ \type {\-} and + \type {\discretionary{-}{}{}} in normal document input. \stopitem \startitem - Internal command names are ignored. This rule is provided especially for \prm {discretionary}, but it also helps to deal with \prm {relax} commands that + Internal command names are ignored. This rule is provided especially for \prm + {discretionary}, but it also helps to deal with \prm {relax} commands that may sneak in. \stopitem \startitem @@ -636,7 +650,9 @@ effectively we get 30000 in the example. \ShowSample{z{a-}{-b}{z}{a-}{-b}{z}{a-}{-b}{z}{a-}{-b}{z}z}{zzzzzz} \ShowSample{z{a-}{-b}{z}{a-}{-b}{z}[3]{a-}{-b}{z}[1]{a-}{-b}{z}z}{zzzzzz} -\section{Applying hyphenation} +\stopsection + +\startsection[title={Applying hyphenation}] \topicindex {hyphenation+how it works} \topicindex {hyphenation+discretionaries} @@ -647,7 +663,7 @@ words is very different from the ones in \TEX82, and that means there are some noticeable differences in handling as well. First and foremost, there is no \quote {compressed trie} involved in hyphenation. -The algorithm still reads \PATGEN-generated pattern files, but \LUATEX\ uses a +The algorithm still reads pattern files generated by \PATGEN, but \LUATEX\ uses a finite state hash to match the patterns against the word to be hyphenated. This algorithm is based on the \quote {libhnj} library used by \OPENOFFICE, which in turn is inspired by \TEX. @@ -742,7 +758,9 @@ that this function expects to receive a list of \quote {character} nodes. It wil not operate properly in the presence of \quote {glyph}, \quote {ligature}, or \quote {ghost} nodes, nor does it know how to deal with kerning. -\section{Applying ligatures and kerning} +\stopsection + +\startsection[title={Applying ligatures and kerning}] \topicindex {ligatures} \topicindex {kerning} @@ -803,6 +821,8 @@ the top-level discretionary that resulted from the first hyphenation point. Here is that nested solution again, in a different representation: +\testpage[4] + \starttabulate[|l|c|c|c|c|c|c|] \DB \BC pre \BC \BC post \BC \BC replace \BC \NC \NR \TB @@ -834,9 +854,9 @@ the first node). One can observe that the \type {of-f-ice} and \type {off-ice} cases both end with the same actual post replacement list (\type {i}), and that this would be the -case even if that \type {i} was the first item of a potential following ligature -like \type {ic}. This allows \LUATEX\ to do away with one of the fields, and thus -make the whole stuff fit into just two discretionary nodes. +case even if \type {i} was the first item of a potential following ligature like +\type {ic}. This allows \LUATEX\ to do away with one of the fields, and thus make +the whole stuff fit into just two discretionary nodes. The mapping of the seven list fields to the six fields in this discretionary node pair is as follows: @@ -879,9 +899,11 @@ mapping a sequence of glyphs onto one glyph, but also by selective replacement a kerning. This means that the above examples are just representing the traditional approach. -\section{Breaking paragraphs into lines} +\stopsection + +\startsection[title={Breaking paragraphs into lines}] -\topicindex {line breaks} +\topicindex {linebreaks} \topicindex {paragraphs} \topicindex {discretionaries} @@ -889,7 +911,7 @@ This code is almost unchanged, but because of the above|-|mentioned changes with respect to discretionaries and ligatures, line breaking will potentially be different from traditional \TEX. The actual line breaking code is still based on the \TEX82 algorithms, and it does not expect there to be discretionaries inside -of discretionaries. But, as patterns evolve and fonts handling can influence +of discretionaries. But, as patterns evolve and font handling can influence discretionaries, you need to be aware of the fact that long term consistency is not an engine matter only. @@ -905,12 +927,19 @@ The combined effect of these two differences is that \LUATEX\ does not always us all of the potential breakpoints in a paragraph, especially when fonts with many ligatures are used. Of course kerning also complicates matters here. -\section{The \type {lang} library} +\stopsection + +\startsection[title={The \type {lang} library}][library=lang] + +\subsection {\type {new} and \type {id}} \topicindex {languages+library} -This library provides the interface to \LUATEX's structure -representing a language, and the associated functions. +\libindex {new} +\libindex {id} + +This library provides the interface to \LUATEX's structure representing a +language, and the associated functions. \startfunctioncall <language> l = lang.new() @@ -930,11 +959,22 @@ the internal language with that id number. The number returned is the internal \prm {language} id number this object refers to. +\subsection {\type {hyphenation}} + +\libindex {hyphenation} + +You can hyphenate a string directly with: + \startfunctioncall <string> n = lang.hyphenation(<language> l) lang.hyphenation(<language> l, <string> n) \stopfunctioncall +\subsection {\type {clear_hyphenation} and \type {clean}} + +\libindex {clear_hyphenation} +\libindex {clean} + This either returns the current hyphenation exceptions for this language, or adds new ones. The syntax of the string is explained in~\in {section} [patternsexceptions]. @@ -955,6 +995,11 @@ syntax of the argument string is explained in \in {section} [patternsexceptions] This function is useful if you want to do something else based on the words in a dictionary file, like spell|-|checking. +\subsection {\type {patterns} and \type {clear_patterns}} + +\libindex {patterns} +\libindex {clear_patterns} + \startfunctioncall <string> n = lang.patterns(<language> l) lang.patterns(<language> l, <string> n) @@ -970,6 +1015,25 @@ lang.clear_patterns(<language> l) This can be used to clear the pattern dictionary for a language. +\subsection {\type {hyphenationmin}} + +\libindex {hyphenationmin} + +This function sets (or gets) the value of the \TEX\ parameter +\type {\hyphenationmin}. + +\startfunctioncall +n = lang.hyphenationmin(<language> l) +lang.hyphenationmin(<language> l, <number> n) +\stopfunctioncall + +\subsection {\type {[pre|post][ex|]hyphenchar}} + +\libindex {prehyphenchar} +\libindex {posthyphenchar} +\libindex {preexhyphenchar} +\libindex {postexhyphenchar} + \startfunctioncall <number> n = lang.prehyphenchar(<language> l) lang.prehyphenchar(<language> l, <number> n) @@ -994,21 +1058,30 @@ These gets or set the \quote {pre|-|break} and \quote {post|-|break} hyphen characters for explicit hyphenation in this language. Both are initially decimal~0 (indicating emptiness). -\startfunctioncall -<boolean> success = lang.hyphenate(<node> head) -<boolean> success = lang.hyphenate(<node> head, <node> tail) -\stopfunctioncall +\subsection {\type {hyphenate}} + +\libindex {hyphenate} -This call inserts hyphenation points (discretionary nodes) in a node list. If +The next call inserts hyphenation points (discretionary nodes) in a node list. If \type {tail} is given as argument, processing stops on that node. Currently, \type {success} is always true if \type {head} (and \type {tail}, if specified) are proper nodes, regardless of possible other errors. +\startfunctioncall +<boolean> success = lang.hyphenate(<node> head) +<boolean> success = lang.hyphenate(<node> head, <node> tail) +\stopfunctioncall + Hyphenation works only on \quote {characters}, a special subtype of all the glyph nodes with the node subtype having the value \type {1}. Glyph modes with different subtypes are not processed. See \in {section} [charsandglyphs] for more details. +\subsection {\type {[set|get]hjcode}} + +\libindex {sethjcode} +\libindex {gethjcode} + The following two commands can be used to set or query hj codes: \startfunctioncall @@ -1019,6 +1092,8 @@ lang.sethjcode(<language> l, <number> char, <number> usedchar) When you set a hjcode the current sets get initialized unless the set was already initialized due to \prm {savinghyphcodes} being larger than zero. +\stopsection + \stopchapter \stopcomponent diff --git a/manual/luatex-lua.tex b/manual/luatex-lua.tex index 99e31fc40..3d6d20c35 100644 --- a/manual/luatex-lua.tex +++ b/manual/luatex-lua.tex @@ -4,11 +4,11 @@ \startcomponent luatex-lua -\startchapter[reference=lua,title={\LUA\ general}] +\startchapter[reference=lua,title={Using \LUATEX}] -\section[init]{Initialization} +\startsection[title={Initialization},reference=init] -\subsection{\LUATEX\ as a \LUA\ interpreter} +\startsubsection[title={\LUATEX\ as a \LUA\ interpreter}] \topicindex {initialization} \topicindex {\LUA+interpreter} @@ -37,7 +37,9 @@ positive values, just like the \LUA\ interpreter. in effect, a somewhat bulky stand alone \LUA\ interpreter with a bunch of extra preloaded libraries. -\subsection{\LUATEX\ as a \LUA\ byte compiler} +\stopsubsection + +\startsubsection[title={\LUATEX\ as a \LUA\ byte compiler}] \topicindex {\LUA+byte code} @@ -52,9 +54,11 @@ In this mode, \LUATEX\ is exactly like \type {luac} from the stand alone \LUA\ distribution, except that it does not have the \type {-l} switch, and that it accepts (but ignores) the \type {--luaconly} switch. The current version of \LUA\ can dump bytecode using \type {string.dump} so we might decide to drop this -version if \LUATEX. +version of \LUATEX. + +\stopsubsection -\subsection{Other commandline processing} +\startsubsection[title={Other commandline processing}] \topicindex {command line} @@ -136,7 +140,7 @@ any other \WEBC|-|based typesetting engine, except that \LUATEX\ has a few extra switches and lacks some others. Also, if the \type {--lua} option is present, \LUATEX\ will enter an alternative mode of command line processing in comparison to the standard \WEBC\ programs. In this mode, a small series of actions is taken -in order. +in the following order: \startitemize[n] @@ -160,6 +164,8 @@ in order. \LUA\ commands that can easily be abused by a malicious document. At the moment, \type {--safer} \type {nil}s the following functions: + \blank + \starttabulate[|c|l|] \DB library \BC functions \NC \NR \TB @@ -171,18 +177,20 @@ in order. \LL \stoptabulate + \blank + Furthermore, it disables loading of compiled \LUA\ libraries and it makes \type {io.open()} fail on files that are opened for anything besides reading. \stopitem \startitem - When \LUATEX\ starts it set the locale to a neutral value. If for some reason - you use \type {os.locale}, you need to make sure you \type {nil} it - afterwards because otherwise it can interfere with code that for instance - generates dates. You can nil the locale with + When \LUATEX\ starts it sets the \type {locale} to a neutral value. If for + some reason you use \type {os.locale}, you need to make sure you \type {nil} + it afterwards because otherwise it can interfere with code that for instance + generates dates. You can ignore the \type {locale} with: \starttyping - os.setlocale(nil.nil) + os.setlocale(nil,nil) \stoptyping The \type {--nosocket} option makes the socket library unavailable, so that \LUA\ @@ -236,17 +244,34 @@ finished: in order to initialize the built|-|in \KPATHSEA\ library properly, check \type {--progname}, or \type {--ini} and \type {--fmt}, if \type {--progname} is missing. -\section{\LUA\ behaviour} +\stopsubsection + +\stopsection + +\startsection[title={\LUA\ behaviour}] + +\startsubsection[title={The \LUA\ version}] \topicindex {\LUA+libraries} \topicindex {\LUA+extensions} +We currently use \LUA\ 5.3 and will follow developments of the language but +normally with some delay. Therefore the user needs to keep an eye on (subtle) +differences in successive versions of the language. Also, \LUAJITTEX\ lags behind +in the sense that \LUAJIT\ is not in sync with regular \LUA\ development. Here is +an example of one aspect. + \LUA s \type {tostring} function (and \type {string.format} may return values in scientific notation, thereby confusing the \TEX\ end of things when it is used as the right|-|hand side of an assignment to a \prm {dimen} or \prm {count}. The output of these serializers also depend on the \LUA\ version, so in \LUA\ 5.3 you can get different output than from 5.2. +\stopsubsection + +\startsubsection[title={Integration in the \TDS\ ecosystem}] + +The main \TEX\ distributions follow the \TEX\ directory structure (\TDS). \LUATEX\ is able to use the kpathsea library to find \type {require()}d modules. For this purpose, \type {package.searchers[2]} is replaced by a different loader function, that decides at runtime whether to use kpathsea or the built|-|in core @@ -257,6 +282,10 @@ Initialization of \KPATHSEA\ can happen either implicitly (when \LUATEX\ starts up and the startup script has not set \type {texconfig.kpse_init} to false), or explicitly by calling the \LUA\ function \type {kpse.set_program_name()}. +\stopsubsection + +\startsubsection[title={Loading libraries}] + \LUATEX\ is able to use dynamically loadable \LUA\ libraries, unless \type {--safer} was given as an option on the command line. For this purpose, \type {package.searchers[3]} is replaced by a different loader function, that @@ -286,6 +315,10 @@ at the same time (which will typically happen on \type {win32}, because there is one \LUA\ 5.3 inside \LUATEX, and another will likely be linked to the \DLL\ file of the module itself). +\stopsubsection + +\startsubsection[title={Executing programs}] + In keeping with the other \TEX|-|like programs in \TEXLIVE, the two \LUA\ functions \type {os.execute} and \type {io.popen}, as well as the two new functions \type {os.exec} and \type {os.spawn} that are explained below, take the value of \type @@ -296,33 +329,40 @@ the command line option \type {--luaonly} was not given), it will only run the four functions above if the matching \type {texmf.cnf} variable(s) or their \type {texconfig} (see \in {section} [texconfig]) counterparts allow execution of the requested system command. In \quote {script interpreter} runs of \LUATEX, these -settings have no effect, and all four functions function as normal. +settings have no effect, and all four functions have their original meaning. -Some libraries have a few more functions, either coded in \CCODE\ or in \LUA. -For instance, when we started with \LUATEX\ we added some helpers to the \type +Some libraries have a few more functions, either coded in \CCODE\ or in \LUA. For +instance, when we started with \LUATEX\ we added some helpers to the \type {luafilesystem} namespace \type {lfs}. The two boolean functions \type {lfs.isdir} and \type {lfs.isfile} were speedy and better variants of what could be done with \type {lfs.attributes}. The additional function \type {lfs.shortname} takes a file name and returns its short name on \type {win32} platforms. Finally, for non|-|\type {win32} platforms only, we provided \type {lfs.readlink} that takes an existing symbolic link as argument and returns its -name. However, the \type library evolved sop now we dropped these in favour of -pure \LUA\ variants. The \type {shortname} helper is considered obsolete and now -just returns the name. - -The \type {string} library has a few extra functions like \type -{string.explode(s[,m])}. This function returns an array containing the string -argument \type {s} split into sub-strings based on the value of the string -argument \type {m}. The second argument is a string that is either empty (this -splits the string into characters), a single character (this splits on each -occurrence of that character, possibly introducing empty strings), or a single -character followed by the plus sign \type {+} (this special version does not -create empty sub-strings). The default value for \type {m} is \quote {\type { +}} -(multiple spaces). Note: \type {m} is not hidden by surrounding braces as it -would be if this function was written in \TEX\ macros. +name. However, the \type library evolved so we have dropped these in favour of +pure \LUA\ variants. The \type {shortname} helper is obsolete and now just +returns the name. + +\stopsubsection + +\startsubsection[title={Multibyte \type {string} functions}] + +The \type {string} library has a few extra functions, for example \libidx +{string} {explode}. This function takes upto two arguments: \type +{string.explode(s[,m])} and returns an array containing the string argument \type +{s} split into sub-strings based on the value of the string argument \type {m}. +The second argument is a string that is either empty (this splits the string into +characters), a single character (this splits on each occurrence of that +character, possibly introducing empty strings), or a single character followed by +the plus sign \type {+} (this special version does not create empty sub-strings). +The default value for \type {m} is \quote {\type { +}} (multiple spaces). Note: +\type {m} is not hidden by surrounding braces as it would be if this function was +written in \TEX\ macros. The \type {string} library also has six extra iterators that return strings -piecemeal: +piecemeal: \libidx {string} {utfvalues}, \libidx {string} {utfcharacters}, +\libidx {string} {characters}, \libidx {string} {characterpairs}, \libidx +{string} {bytes} and \libidx {string} {bytepairs}. \startitemize \startitem @@ -332,7 +372,7 @@ piecemeal: \type {string.utfcharacters(s)}: a string with a single \UTF-8 token in it \stopitem \startitem - \type {string.characters(s)}: a string containing one byte + \type {string.cWharacters(s)}: a string containing one byte \stopitem \startitem \type {string.characterpairs(s)}: two strings each containing one byte or an @@ -368,7 +408,8 @@ interpretation of character classes in \type {unicode.utf8} functions refer to the library sources at \hyphenatedurl {http://luaforge.net/projects/sln}. Version 5.3 of \LUA\ provides some native \UTF8 support but we have added a few -similar helpers too: +similar helpers too: \libidx {string} {utfvalue}, \libidx {string} {utfcharacter} +and \libidx {string} {utflength}. \startitemize \startitem @@ -384,13 +425,18 @@ similar helpers too: \stopitem \stopitemize -These three functions are relative fast and don't do much checking. They can be used -as building blocks for other helpers. So, eventually we can decide to drop the -\type {sln} library, just that you know. +These three functions are relative fast and don't do much checking. They can be +used as building blocks for other helpers. + +\stopsubsection -\blank +\startsubsection[title={Extra \type {os} library functions}] -The \type {os} library has a few extra functions and variables: +The \type {os} library has a few extra functions and variables: \libidx {os} +{selfdir}, \libidx {os} {exec}, \libidx {os} {spawn}, \libidx {os} {setenv}, +\libidx {os} {env}, \libidx {os} {gettimeofday}, \libidx {os} {times}, \libidx +{os} {tmpdir}, \libidx {os} {type}, \libidx {os} {name} and \libidx {os} {uname}, +that we will discuss here. \startitemize @@ -512,14 +558,86 @@ The \type {os} library has a few extra functions and variables: \stopitem \startitem - \type {os.uname()} returns a table with specific operating system + \type {os.uname} returns a table with specific operating system information acquired at runtime. The keys in the returned table are all - string valued, and their names are: \type {sysname}, \type {machine}, \type + string values, and their names are: \type {sysname}, \type {machine}, \type {release}, \type {version}, and \type {nodename}. \stopitem \stopitemize +\stopsubsection + +\startsubsection[title={Binary input from files with \type {fio}}] + +There is a whole set of helpers for reading numbers and strings from a file: +\libidx {fio} {readcardinal1}, \libidx {fio} {readcardinal2}, \libidx {fio} +{readcardinal3}, \libidx {fio} {readcardinal4}, \libidx {fio} +{readcardinaltable}, \libidx {fio} {readinteger1}, \libidx {fio} {readinteger2}, +\libidx {fio} {readinteger3}, \libidx {fio} {readinteger4}, \libidx {fio} +{readintegertable}, \libidx {fio} {readfixed2}, \libidx {fio} {readfixed4}, +\libidx {fio} {read2dot14}, \libidx {fio} {setposition}, \libidx {fio} +{getposition}, \libidx {fio} {skipposition}, \libidx {fio} {readbytes}, \libidx +{fio} {readbytetable}. They work on normal \LUA\ file handles. + +%libidx{fio}{readline} +%libidx{fio}{recordfilename} +%libidx{fio}{checkpermission} + +This library provides a set of functions for reading numbers from a file and +in addition to the regular \type {io} library functions. + +\starttabulate +\NC \type{readcardinal1(f)} \NC a 1 byte unsigned integer \NC \NR +\NC \type{readcardinal2(f)} \NC a 2 byte unsigned integer \NC \NR +\NC \type{readcardinal3(f)} \NC a 3 byte unsigned integer \NC \NR +\NC \type{readcardinal4(f)} \NC a 4 byte unsigned integer \NC \NR +\NC \type{readcardinaltable(f,n,b)} \NC \type {n} cardinals of \type {b} bytes \NC \NR +\NC \type{readinteger1(f)} \NC a 1 byte signed integer \NC \NR +\NC \type{readinteger2(f)} \NC a 2 byte signed integer \NC \NR +\NC \type{readinteger3(f)} \NC a 3 byte signed integer \NC \NR +\NC \type{readinteger4(f)} \NC a 4 byte signed integer \NC \NR +\NC \type{readintegertable(f,n,b)} \NC \type {n} integers of \type {b} bytes \NC \NR +\NC \type{readfixed2(f)} \NC a 2 byte float (used in font files) \NC \NR +\NC \type{readfixed4(f)} \NC a 4 byte float (used in font files) \NC \NR +\NC \type{read2dot14(f)} \NC a 2 byte float (used in font files) \NC \NR +\NC \type{setposition(f,p)} \NC goto position \type {p} \NC \NR +\NC \type{getposition(f)} \NC get the current position \NC \NR +\NC \type{skipposition(f,n)} \NC skip \type {n} positions \NC \NR +\NC \type{readbytes(f,n)} \NC \type {n} bytes \NC \NR +\NC \type{readbytetable(f,n)} \NC \type {n} bytes\NC \NR +\stoptabulate + +\stopsubsection + +\startsubsection[title={Binary input from strings with \type {sio}}] + +A similar set of function as in the \type {fio} library is available in the \type +{sio} library: \libidx {sio} {readcardinal1}, \libidx {sio} {readcardinal2}, +\libidx {sio} {readcardinal3}, \libidx {sio} {readcardinal4}, \libidx {sio} +{readcardinaltable}, \libidx {sio} {readinteger1}, \libidx {sio} {readinteger2}, +\libidx {sio} {readinteger3}, \libidx {sio} {readinteger4}, \libidx {sio} +{readintegertable}, \libidx {sio} {readfixed2}, \libidx {sio} {readfixed4}, +\libidx {sio} {read2dot14}, \libidx {sio} {setposition}, \libidx {sio} +{getposition}, \libidx {sio} {skipposition}, \libidx {sio} {readbytes} and +\libidx {sio} {readbytetable}. Here the first argument is a string instead of a +file handle. More details can be found in the previous section. + +\stopsubsection + +\startsubsection[title={Hashes conform \type {sha2}}] + +This library is a side effect of the \type {pdfe} library that needs such +helpers. The \libidx{sha2}{digest256}, \libidx{sha2}{digest384} and +\libidx{sha2}{digest512} functions accept a string and return a string with the +hash. + +\stopsubsection + +\startsubsection[title={Locales}] + +\index {locales} + In stock \LUA, many things depend on the current locale. In \LUATEX, we can't do that, because it makes documents unportable. While \LUATEX\ is running if forces the following locale settings: @@ -530,7 +648,11 @@ LC_COLLATE=C LC_NUMERIC=C \stoptyping -\section {\LUA\ modules} +\stopsubsection + +\stopsection + +\startsection[title={\LUA\ modules}] \topicindex {\LUA+libraries} \topicindex {\LUA+modules} @@ -593,7 +715,9 @@ Some modules that are normally external to \LUA\ are statically linked in with \stopitemize -\section{Testing} +\stopsection + +\startsection[title={Testing}] \topicindex {testing} \topicindex {\PDF+date} @@ -627,7 +751,9 @@ complementary entry \type {use_utc_time} in the \type {texconfig} table. There is some control possible, for instance prevent filename to be written to the \PDF\ file. This is discussed elsewhere. In \CONTEXT\ we provide the command -line argument \type {--nodates} that does bit more disabling of dates. +line argument \type {--nodates} that does a bit more disabling of dates. + +\stopsection \stopchapter diff --git a/manual/luatex-math.tex b/manual/luatex-math.tex index 1b989220e..fd038150f 100644 --- a/manual/luatex-math.tex +++ b/manual/luatex-math.tex @@ -6,6 +6,8 @@ \startchapter[reference=math,title={Math}] +\startsection[title={Traditional alongside \OPENTYPE}] + \topicindex {math} The handling of mathematics in \LUATEX\ differs quite a bit from how \TEX82 (and @@ -17,7 +19,120 @@ make it easier to use \OPENTYPE\ math fonts. And finally, there are some extensions that have been proposed or considered in the past that are now added to the engine. -\section{Math styles} +\stopsection + +\startsection[title={Unicode math characters}] + +\topicindex {math+\UNICODE} +\topicindex {\UNICODE+math} + +Character handling is now extended up to the full \UNICODE\ range (the \type {\U} +prefix), which is compatible with \XETEX. + +The math primitives from \TEX\ are kept as they are, except for the ones that +convert from input to math commands: \type {mathcode}, and \type {delcode}. These +two now allow for a 21-bit character argument on the left hand side of the equals +sign. + +Some of the new \LUATEX\ primitives read more than one separate value. This is +shown in the tables below by a plus sign. + +The input for such primitives would look like this: + +\starttyping +\def\overbrace{\Umathaccent 0 1 "23DE } +\stoptyping + +The altered \TEX82 primitives are: + +\starttabulate[|l|l|r|c|l|r|] +\DB primitive \BC min \BC max \BC \kern 2em \BC min \BC max \NC \NR +\TB +\NC \prm {mathcode} \NC 0 \NC 10FFFF \NC = \NC 0 \NC 8000 \NC \NR +\NC \prm {delcode} \NC 0 \NC 10FFFF \NC = \NC 0 \NC FFFFFF \NC \NR +\LL +\stoptabulate + +The unaltered ones are: + +\starttabulate[|l|l|r|] +\DB primitive \BC min \BC max \NC \NR +\TB +\NC \prm {mathchardef} \NC 0 \NC 8000 \NC \NR +\NC \prm {mathchar} \NC 0 \NC 7FFF \NC \NR +\NC \prm {mathaccent} \NC 0 \NC 7FFF \NC \NR +\NC \prm {delimiter} \NC 0 \NC 7FFFFFF \NC \NR +\NC \prm {radical} \NC 0 \NC 7FFFFFF \NC \NR +\LL +\stoptabulate + +For practical reasons \prm {mathchardef} will silently accept values larger +that \type {0x8000} and interpret it as \lpr {Umathcharnumdef}. This is needed +to satisfy older macro packages. + +The following new primitives are compatible with \XETEX: + +% somewhat fuzzy: + +\starttabulate[|l|l|r|c|l|r|] +\DB primitive \BC min \BC max \BC \kern 2em \BC min \BC max \NC \NR +\TB +\NC \lpr {Umathchardef} \NC 0+0+0 \NC 7+FF+10FFFF \NC \NC \NC \NC \NR +\NC \lpr {Umathcharnumdef}\rlap{\high{5}} \NC -80000000 \NC 7FFFFFFF \NC \NC \NC \NC \NR +\NC \lpr {Umathcode} \NC 0 \NC 10FFFF \NC = \NC 0+0+0 \NC 7+FF+10FFFF \NC \NR +\NC \lpr {Udelcode} \NC 0 \NC 10FFFF \NC = \NC 0+0 \NC FF+10FFFF \NC \NR +\NC \lpr {Umathchar} \NC 0+0+0 \NC 7+FF+10FFFF \NC \NC \NC \NC \NR +\NC \lpr {Umathaccent} \NC 0+0+0 \NC 7+FF+10FFFF \NC \NC \NC \NC \NR +\NC \lpr {Udelimiter} \NC 0+0+0 \NC 7+FF+10FFFF \NC \NC \NC \NC \NR +\NC \lpr {Uradical} \NC 0+0 \NC FF+10FFFF \NC \NC \NC \NC \NR +\NC \lpr {Umathcharnum} \NC -80000000 \NC 7FFFFFFF \NC \NC \NC \NC \NR +\NC \lpr {Umathcodenum} \NC 0 \NC 10FFFF \NC = \NC -80000000 \NC 7FFFFFFF \NC \NR +\NC \lpr {Udelcodenum} \NC 0 \NC 10FFFF \NC = \NC -80000000 \NC 7FFFFFFF \NC \NR +\LL +\stoptabulate + +Specifications typically look like: + +\starttyping +\Umathchardef\xx="1"0"456 +\Umathcode 123="1"0"789 +\stoptyping + +The new primitives that deal with delimiter|-|style objects do not set up a +\quote {large family}. Selecting a suitable size for display purposes is expected +to be dealt with by the font via the \lpr {Umathoperatorsize} parameter. + +For some of these primitives, all information is packed into a single signed +integer. For the first two (\lpr {Umathcharnum} and \lpr {Umathcodenum}), the +lowest 21 bits are the character code, the 3 bits above that represent the math +class, and the family data is kept in the topmost bits. This means that the values +for math families 128--255 are actually negative. For \lpr {Udelcodenum} there +is no math class. The math family information is stored in the bits directly on +top of the character code. Using these three commands is not as natural as using +the two- and three|-|value commands, so unless you know exactly what you are +doing and absolutely require the speedup resulting from the faster input +scanning, it is better to use the verbose commands instead. + +The \lpr {Umathaccent} command accepts optional keywords to control various +details regarding math accents. See \in {section} [mathacc] below for details. + +There are more new primitives and all of these will be explained in following +sections: + +\starttabulate[|l|l|] +\DB primitive \BC value range (in hex) \NC \NR +\TB +\NC \lpr {Uroot} \NC 0 + 0--FF + 10FFFF \NC \NR +\NC \lpr {Uoverdelimiter} \NC 0 + 0--FF + 10FFFF \NC \NR +\NC \lpr {Uunderdelimiter} \NC 0 + 0--FF + 10FFFF \NC \NR +\NC \lpr {Udelimiterover} \NC 0 + 0--FF + 10FFFF \NC \NR +\NC \lpr {Udelimiterunder} \NC 0 + 0--FF + 10FFFF \NC \NR +\LL +\stoptabulate + +\stopsection + +\startsection[title={Math styles}] \subsection{\lpr {mathstyle}} @@ -30,7 +145,7 @@ possible, \LUATEX\ adds the new primitive: \lpr {mathstyle}. This is a \quote not set. The returned value is between 0 and 7 (in math mode), or $-1$ (all other modes). -For easy testing, the eight math style commands have been altered so that the can +For easy testing, the eight math style commands have been altered so that they can be used as numeric values, so you can write code like this: \starttyping @@ -150,117 +265,7 @@ $\Ustack {a \over b}$ The \lpr {Ustack} command will scan the next brace and start a new math group with the correct (numerator) math style. -\section{Unicode math characters} - -\topicindex {math+\UNICODE} -\topicindex {\UNICODE+math} - -Character handling is now extended up to the full \UNICODE\ range (the \type {\U} -prefix), which is compatible with \XETEX. - -The math primitives from \TEX\ are kept as they are, except for the ones that -convert from input to math commands: \type {mathcode}, and \type {delcode}. These -two now allow for a 21-bit character argument on the left hand side of the equals -sign. - -Some of the new \LUATEX\ primitives read more than one separate value. This is -shown in the tables below by a plus sign in the second column. - -The input for such primitives would look like this: - -\starttyping -\def\overbrace{\Umathaccent 0 1 "23DE } -\stoptyping - -The altered \TEX82 primitives are: - -\starttabulate[|l|l|r|c|l|r|] -\DB primitive \BC min \BC max \BC \kern 2em \BC min \BC max \NC \NR -\TB -\NC \prm {mathcode} \NC 0 \NC 10FFFF \NC = \NC 0 \NC 8000 \NC \NR -\NC \prm {delcode} \NC 0 \NC 10FFFF \NC = \NC 0 \NC FFFFFF \NC \NR -\LL -\stoptabulate - -The unaltered ones are: - -\starttabulate[|l|l|r|] -\DB primitive \BC min \BC max \NC \NR -\TB -\NC \prm {mathchardef} \NC 0 \NC 8000 \NC \NR -\NC \prm {mathchar} \NC 0 \NC 7FFF \NC \NR -\NC \prm {mathaccent} \NC 0 \NC 7FFF \NC \NR -\NC \prm {delimiter} \NC 0 \NC 7FFFFFF \NC \NR -\NC \prm {radical} \NC 0 \NC 7FFFFFF \NC \NR -\LL -\stoptabulate - -For practical reasons \prm {mathchardef} will silently accept values larger -that \type {0x8000} and interpret it as \lpr {Umathcharnumdef}. This is needed -to satisfy older macro packages. - -The following new primitives are compatible with \XETEX: - -% somewhat fuzzy: - -\starttabulate[|l|l|r|c|l|r|] -\DB primitive \BC min \BC max \BC \kern 2em \BC min \BC max \NC \NR -\TB -\NC \lpr {Umathchardef} \NC 0+0+0 \NC 7+FF+10FFFF \NC \NC \NC \NC \NR -\NC \lpr {Umathcharnumdef}\rlap{\high{5}} \NC -80000000 \NC 7FFFFFFF \NC \NC \NC \NC \NR -\NC \lpr {Umathcode} \NC 0 \NC 10FFFF \NC = \NC 0+0+0 \NC 7+FF+10FFFF \NC \NR -\NC \lpr {Udelcode} \NC 0 \NC 10FFFF \NC = \NC 0+0 \NC FF+10FFFF \NC \NR -\NC \lpr {Umathchar} \NC 0+0+0 \NC 7+FF+10FFFF \NC \NC \NC \NC \NR -\NC \lpr {Umathaccent} \NC 0+0+0 \NC 7+FF+10FFFF \NC \NC \NC \NC \NR -\NC \lpr {Udelimiter} \NC 0+0+0 \NC 7+FF+10FFFF \NC \NC \NC \NC \NR -\NC \lpr {Uradical} \NC 0+0 \NC FF+10FFFF \NC \NC \NC \NC \NR -\NC \lpr {Umathcharnum} \NC -80000000 \NC 7FFFFFFF \NC \NC \NC \NC \NR -\NC \lpr {Umathcodenum} \NC 0 \NC 10FFFF \NC = \NC -80000000 \NC 7FFFFFFF \NC \NR -\NC \lpr {Udelcodenum} \NC 0 \NC 10FFFF \NC = \NC -80000000 \NC 7FFFFFFF \NC \NR -\LL -\stoptabulate - -Specifications typically look like: - -\starttyping -\Umathchardef\xx="1"0"456 -\Umathcode 123="1"0"789 -\stoptyping - -The new primitives that deal with delimiter|-|style objects do not set up a -\quote {large family}. Selecting a suitable size for display purposes is expected -to be dealt with by the font via the \lpr {Umathoperatorsize} parameter (more -information can be found in a following section). - -For some of these primitives, all information is packed into a single signed -integer. For the first two (\lpr {Umathcharnum} and \lpr {Umathcodenum}), the -lowest 21 bits are the character code, the 3 bits above that represent the math -class, and the family data is kept in the topmost bits This means that the values -for math families 128--255 are actually negative. For \lpr {Udelcodenum} there -is no math class. The math family information is stored in the bits directly on -top of the character code. Using these three commands is not as natural as using -the two- and three|-|value commands, so unless you know exactly what you are -doing and absolutely require the speedup resulting from the faster input -scanning, it is better to use the verbose commands instead. - -The \lpr {Umathaccent} command accepts optional keywords to control various -details regarding math accents. See \in {section} [mathacc] below for details. - -There are more new primitives and all of these will be explained in following -sections: - -\starttabulate[|l|l|] -\DB primitive \BC value range (in hex) \NC \NR -\TB -\NC \lpr {Uroot} \NC 0 + 0--FF + 10FFFF \NC \NR -\NC \lpr {Uoverdelimiter} \NC 0 + 0--FF + 10FFFF \NC \NR -\NC \lpr {Uunderdelimiter} \NC 0 + 0--FF + 10FFFF \NC \NR -\NC \lpr {Udelimiterover} \NC 0 + 0--FF + 10FFFF \NC \NR -\NC \lpr {Udelimiterunder} \NC 0 + 0--FF + 10FFFF \NC \NR -\LL -\stoptabulate - -\section{Cramped math styles} +\subsection{Cramped math styles} \topicindex {math+styles} \topicindex {math+spacing} @@ -304,9 +309,9 @@ are described as follows: \stopitemize In \LUATEX\ one can set the styles in more detail which means that you sometimes -have to set both normal and cramped styles to get the effect you want. If we -force styles in the script using \prm {scriptstyle} and \lpr {crampedscriptstyle} -we get this: +have to set both normal and cramped styles to get the effect you want. (Even) if +we force styles in the script using \prm {scriptstyle} and \lpr +{crampedscriptstyle} we get this: \startbuffer[demo] \starttabulate @@ -330,7 +335,7 @@ Now we set the following parameters \typebuffer[setup] -This gives: +This gives a different result: \start\getbuffer[setup,demo]\stop @@ -349,13 +354,17 @@ Now we get: \start\getbuffer[setup,demo]\stop -\section{Math parameter settings} +\stopsection + +\startsection[title={Math parameter settings}] + +\subsection {Many new \lpr {Umath*} primitives} \topicindex {math+parameters} In \LUATEX, the font dimension parameters that \TEX\ used in math typesetting are now accessible via primitive commands. In fact, refactoring of the math engine -has resulted in many more parameters than were accessible before. +has resulted in many more parameters than were not accessible before. \starttabulate \DB primitive name \BC description \NC \NR @@ -427,27 +436,7 @@ Each of the parameters in this section can be set by a command like this: they obey grouping, and you can use \type {\the\Umathquad\displaystyle} if needed. -\section{Skips around display math} - -\topicindex {math+spacing} - -The injection of \prm {abovedisplayskip} and \prm {belowdisplayskip} is not -symmetrical. An above one is always inserted, also when zero, but the below is -only inserted when larger than zero. Especially the later makes it sometimes hard -to fully control spacing. Therefore \LUATEX\ comes with a new directive: \lpr -{mathdisplayskipmode}. The following values apply: - -\starttabulate[|c|l|] -\DB value \BC meaning \NC \NR -\TB -\NC 0 \NC normal \TEX\ behaviour \NC \NR -\NC 1 \NC always (same as 0) \NC \NR -\NC 2 \NC only when not zero \NC \NR -\NC 3 \NC never, not even when not zero \NC \NR -\LL -\stoptabulate - -\section{Font|-|based Math Parameters} +\subsection{Font|-|based math parameters} \topicindex {math+parameters} @@ -463,7 +452,7 @@ case no attention is paid to which family is being assigned to: the \type {MathConstants} tables in the last assigned family sets all parameters. In the table below, the one|-|letter style abbreviations and symbolic tfm font -dimension names match those using in the \TeX book. Assignments to \prm +dimension names match those used in the \TeX book. Assignments to \prm {textfont} set the values for the cramped and uncramped display and text styles, \prm {scriptfont} sets the script styles, and \prm {scriptscriptfont} sets the scriptscript styles, so we have eight parameters for three font sizes. In the @@ -574,7 +563,7 @@ scaled point more than the initial attempt's size, so that always the \quote {first next} will be tried, just like in \TEX82. Note 7: The \lpr {Umathradicaldegreeraise} is a special case because it is the -only parameter that is expressed in a percentage instead of as a number of scaled +only parameter that is expressed in a percentage instead of a number of scaled points. Note 8: \type {SubscriptShiftDownWithSuperscript} does not actually exist in the @@ -585,34 +574,214 @@ Note 9: \type {FractionDelimiterDisplayStyleSize} and \type {FractionDelimiterSize} do not actually exist in the \quote {standard} \OPENTYPE\ math font Cambria, but were useful enough to be added. -\section {Nolimit correction} +\stopsection -\topicindex {math+limits} +\startsection[title={Math spacing}] -There are two extra math parameters \lpr {Umathnolimitsupfactor} and \lpr -{Umathnolimitsubfactor} that were added to provide some control over how limits -are spaced (for example the position of super and subscripts after integral -operators). They relate to an extra parameter \lpr {mathnolimitsmode}. The half -corrections are what happens when scripts are placed on above and below. The -problem with italic corrections is that officially that correction italic is used -for above|/|below placement while advanced kerns are used for placement at the -right end. The question is: how often is this implemented, and if so, does the -kerns assume correction too. Anyway, with this parameter one can control it. +\subsection{Inline surrounding space} -\starttabulate[|l|ck1|ck1|ck1|ck1|ck1|ck1|] - \NC - \NC \mathnolimitsmode0 $\displaystyle\int\nolimits^0_1$ - \NC \mathnolimitsmode1 $\displaystyle\int\nolimits^0_1$ - \NC \mathnolimitsmode2 $\displaystyle\int\nolimits^0_1$ - \NC \mathnolimitsmode3 $\displaystyle\int\nolimits^0_1$ - \NC \mathnolimitsmode4 $\displaystyle\int\nolimits^0_1$ - \NC \mathnolimitsmode8000 $\displaystyle\int\nolimits^0_1$ - \NC \NR - \TB - \BC mode - \NC \tttf 0 - \NC \tttf 1 - \NC \tttf 2 +\topicindex {math+spacing} + +Inline math is surrounded by (optional) \prm {mathsurround} spacing but that is a fixed +dimension. There is now an additional parameter \lpr {mathsurroundskip}. When set to a +non|-|zero value (or zero with some stretch or shrink) this parameter will replace +\prm {mathsurround}. By using an additional parameter instead of changing the nature +of \prm {mathsurround}, we can remain compatible. In the meantime a bit more +control has been added via \lpr {mathsurroundmode}. This directive can take 6 values +with zero being the default behaviour. + +\start + +\def\OneLiner#1#2% + {\NC \type{#1} + \NC \dontleavehmode\inframed[align=normal,offset=0pt,frame=off]{\mathsurroundmode#1\relax\hsize 100pt x$x$x} + \NC \dontleavehmode\inframed[align=normal,offset=0pt,frame=off]{\mathsurroundmode#1\relax\hsize 100pt x $x$ x} + \NC #2 + \NC \NR} + +\startbuffer +\mathsurround 10pt +\mathsurroundskip20pt +\stopbuffer + +\typebuffer \getbuffer + +\starttabulate[|c|c|c|pl|] +\DB mode \BC x\$x\$x \BC x \$x\$ x \BC effect \NC \NR +\TB +\OneLiner{0}{obey \prm {mathsurround} when \lpr {mathsurroundskip} is 0pt} +\OneLiner{1}{only add skip to the left} +\OneLiner{2}{only add skip to the right} +\OneLiner{3}{add skip to the left and right} +\OneLiner{4}{ignore the skip setting, obey \prm {mathsurround}} +\OneLiner{5}{disable all spacing around math} +\OneLiner{6}{only apply \lpr {mathsurroundskip} when also spacing} +\OneLiner{7}{only apply \lpr {mathsurroundskip} when no spacing} +\LL +\stoptabulate + +\stop + +Method six omits the surround glue when there is (x)spacing glue present while +method seven does the opposite, the glue is only applied when there is (x)space +glue present too. Anything more fancy, like checking the begining or end of a +paragraph (or edges of a box) would not be robust anyway. If you want that you +can write a callback that runs over a list and analyzes a paragraph. Actually, in +that case you could also inject glue (or set the properties of a math node) +explicitly. So, these modes are in practice mostly useful for special purposes +and experiments (they originate in a tracker item). Keep in mind that this glue +is part of the math node and not always treated as normal glue: it travels with +the begin and end math nodes. Also, method 6 and 7 will zero the skip related +fields in a node when applicable in the first occasion that checks them +(linebreaking or packaging). + +\subsection{Pairwise spacing} + +\topicindex {math+spacing} + +Besides the parameters mentioned in the previous sections, there are also 64 new +primitives to control the math spacing table (as explained in Chapter~18 of the +\TEX book). The primitive names are a simple matter of combining two math atom +types, but for completeness' sake, here is the whole list: + +\starttwocolumns +\startlines +\lpr {Umathordordspacing} +\lpr {Umathordopspacing} +\lpr {Umathordbinspacing} +\lpr {Umathordrelspacing} +\lpr {Umathordopenspacing} +\lpr {Umathordclosespacing} +\lpr {Umathordpunctspacing} +\lpr {Umathordinnerspacing} +\lpr {Umathopordspacing} +\lpr {Umathopopspacing} +\lpr {Umathopbinspacing} +\lpr {Umathoprelspacing} +\lpr {Umathopopenspacing} +\lpr {Umathopclosespacing} +\lpr {Umathoppunctspacing} +\lpr {Umathopinnerspacing} +\lpr {Umathbinordspacing} +\lpr {Umathbinopspacing} +\lpr {Umathbinbinspacing} +\lpr {Umathbinrelspacing} +\lpr {Umathbinopenspacing} +\lpr {Umathbinclosespacing} +\lpr {Umathbinpunctspacing} +\lpr {Umathbininnerspacing} +\lpr {Umathrelordspacing} +\lpr {Umathrelopspacing} +\lpr {Umathrelbinspacing} +\lpr {Umathrelrelspacing} +\lpr {Umathrelopenspacing} +\lpr {Umathrelclosespacing} +\lpr {Umathrelpunctspacing} +\lpr {Umathrelinnerspacing} +\lpr {Umathopenordspacing} +\lpr {Umathopenopspacing} +\lpr {Umathopenbinspacing} +\lpr {Umathopenrelspacing} +\lpr {Umathopenopenspacing} +\lpr {Umathopenclosespacing} +\lpr {Umathopenpunctspacing} +\lpr {Umathopeninnerspacing} +\lpr {Umathcloseordspacing} +\lpr {Umathcloseopspacing} +\lpr {Umathclosebinspacing} +\lpr {Umathcloserelspacing} +\lpr {Umathcloseopenspacing} +\lpr {Umathcloseclosespacing} +\lpr {Umathclosepunctspacing} +\lpr {Umathcloseinnerspacing} +\lpr {Umathpunctordspacing} +\lpr {Umathpunctopspacing} +\lpr {Umathpunctbinspacing} +\lpr {Umathpunctrelspacing} +\lpr {Umathpunctopenspacing} +\lpr {Umathpunctclosespacing} +\lpr {Umathpunctpunctspacing} +\lpr {Umathpunctinnerspacing} +\lpr {Umathinnerordspacing} +\lpr {Umathinneropspacing} +\lpr {Umathinnerbinspacing} +\lpr {Umathinnerrelspacing} +\lpr {Umathinneropenspacing} +\lpr {Umathinnerclosespacing} +\lpr {Umathinnerpunctspacing} +\lpr {Umathinnerinnerspacing} +\stoplines +\stoptwocolumns + +These parameters are of type \prm {muskip}, so setting a parameter can be done +like this: + +\starttyping +\Umathopordspacing\displaystyle=4mu plus 2mu +\stoptyping + +They are all initialized by \type {initex} to the values mentioned in the table +in Chapter~18 of the \TEX book. + +Note 1: for ease of use as well as for backward compatibility, \prm {thinmuskip}, +\prm {medmuskip} and \prm {thickmuskip} are treated specially. In their case a +pointer to the corresponding internal parameter is saved, not the actual \prm +{muskip} value. This means that any later changes to one of these three +parameters will be taken into account. + +Note 2: Careful readers will realise that there are also primitives for the items +marked \type {*} in the \TEX book. These will not actually be used as those +combinations of atoms cannot actually happen, but it seemed better not to break +orthogonality. They are initialized to zero. + +\subsection{Skips around display math} + +\topicindex {math+spacing} + +The injection of \prm {abovedisplayskip} and \prm {belowdisplayskip} is not +symmetrical. An above one is always inserted, also when zero, but the below is +only inserted when larger than zero. Especially the latter makes it sometimes hard +to fully control spacing. Therefore \LUATEX\ comes with a new directive: \lpr +{mathdisplayskipmode}. The following values apply: + +\starttabulate[|c|l|] +\DB value \BC meaning \NC \NR +\TB +\NC 0 \NC normal \TEX\ behaviour \NC \NR +\NC 1 \NC always (same as 0) \NC \NR +\NC 2 \NC only when not zero \NC \NR +\NC 3 \NC never, not even when not zero \NC \NR +\LL +\stoptabulate + +\subsection {Nolimit correction} + +\topicindex {math+limits} + +There are two extra math parameters \lpr {Umathnolimitsupfactor} and \lpr +{Umathnolimitsubfactor} that were added to provide some control over how limits +are spaced (for example the position of super and subscripts after integral +operators). They relate to an extra parameter \lpr {mathnolimitsmode}. The half +corrections are what happens when scripts are placed above and below. The +problem with italic corrections is that officially that correction italic is used +for above|/|below placement while advanced kerns are used for placement at the +right end. The question is: how often is this implemented, and if so, do the +kerns assume correction too. Anyway, with this parameter one can control it. + +\starttabulate[|l|ck1|ck1|ck1|ck1|ck1|ck1|] + \NC + \NC \mathnolimitsmode0 $\displaystyle\int\nolimits^0_1$ + \NC \mathnolimitsmode1 $\displaystyle\int\nolimits^0_1$ + \NC \mathnolimitsmode2 $\displaystyle\int\nolimits^0_1$ + \NC \mathnolimitsmode3 $\displaystyle\int\nolimits^0_1$ + \NC \mathnolimitsmode4 $\displaystyle\int\nolimits^0_1$ + \NC \mathnolimitsmode8000 $\displaystyle\int\nolimits^0_1$ + \NC \NR + \TB + \BC mode + \NC \tttf 0 + \NC \tttf 1 + \NC \tttf 2 \NC \tttf 3 \NC \tttf 4 \NC \tttf 8000 @@ -643,7 +812,7 @@ shifts to the left. A \lpr {mathnolimitsmode} larger that 15 is considered to be a factor for the subscript correction. This feature can be handy when experimenting. -\section {Math italic mess} +\subsection {Math italic mess} \topicindex {math+italics} @@ -673,15 +842,15 @@ example. This kind of parameters relate to the fact that italic correction in \OPENTYPE\ math is bound to fuzzy rules. So, control is the solution. -\section {Script and kerning} +\subsection {Script and kerning} \topicindex {math+kerning} \topicindex {math+scripts} -If you want typeset text in math macro packages often provide something \type +If you want to typeset text in math macro packages often provide something \type {\text} which obeys the script sizes. As the definition can be anything there is -a good change that the kerning doesn't come out well when used in a script. Given -that the first glyph ends up in an \prm {hbox} we have some control over this. +a good chance that the kerning doesn't come out well when used in a script. Given +that the first glyph ends up in a \prm {hbox} we have some control over this. And, as a bonus we also added control over the normal sublist kerning. The \lpr {mathscriptboxmode} parameter defaults to~1. @@ -761,7 +930,86 @@ control over what one can turn on and off. \LL \stoptabulate -\section {Unscaled fences} +\subsection{Fixed scripts} + +We have three parameters that are used for this fixed anchoring: + +\starttabulate[|c|l|] +\DB parameter \BC register \NC \NR +\NC $d$ \NC \lpr {Umathsubshiftdown} \NC \NR +\NC $u$ \NC \lpr {Umathsupshiftup} \NC \NR +\NC $s$ \NC \lpr {Umathsubsupshiftdown} \NC \NR +\LL +\stoptabulate + +When we set \lpr {mathscriptsmode} to a value other than zero these are used +for calculating fixed positions. This is something that is needed for instance +for chemistry. You can manipulate the mentioned variables to achieve different +effects. + +\def\SampleMath#1% + {$\mathscriptsmode#1\mathupright CH_2 + CH^+_2 + CH^2_2$} + +\starttabulate[|c|c|c|p|] +\DB mode \BC down \BC up \BC example \NC \NR +\TB +\NC 0 \NC dynamic \NC dynamic \NC \SampleMath{0} \NC \NR +\NC 1 \NC $d$ \NC $u$ \NC \SampleMath{1} \NC \NR +\NC 2 \NC $s$ \NC $u$ \NC \SampleMath{2} \NC \NR +\NC 3 \NC $s$ \NC $u + s - d$ \NC \SampleMath{3} \NC \NR +\NC 4 \NC $d + (s-d)/2$ \NC $u + (s-d)/2$ \NC \SampleMath{4} \NC \NR +\NC 5 \NC $d$ \NC $u + s - d$ \NC \SampleMath{5} \NC \NR +\LL +\stoptabulate + +The value of this parameter obeys grouping but applies to the whole current +formula. + +% if needed we can put the value in stylenodes but maybe more should go there + +\subsection{Penalties: \lpr {mathpenaltiesmode}} + +\topicindex {math+penalties} + +Only in inline math penalties will be added in a math list. You can force +penalties (also in display math) by setting: + +\starttyping +\mathpenaltiesmode = 1 +\stoptyping + +This primnitive is not really needed in \LUATEX\ because you can use the callback +\cbk {mlist_to_hlist} to force penalties by just calling the regular routine +with forced penalties. However, as part of opening up and control this primitive +makes sense. As a bonus we also provide two extra penalties: + +\starttyping +\prebinoppenalty = -100 % example value +\prerelpenalty = 900 % example value +\stoptyping + +They default to inifinite which signals that they don't need to be inserted. When +set they are injected before a binop or rel noad. This is an experimental feature. + +\subsection{Equation spacing: \lpr {matheqnogapstep}} + +By default \TEX\ will add one quad between the equation and the number. This is +hard coded. A new primitive can control this: + +\startsyntax +\matheqnogapstep = 1000 +\stopsyntax + +Because a math quad from the math text font is used instead of a dimension, we +use a step to control the size. A value of zero will suppress the gap. The step +is divided by 1000 which is the usual way to mimmick floating point factors in +\TEX. + +\stopsection + +\startsection[title={Math constructs}] + +\subsection {Unscaled fences} \topicindex {math+fences} @@ -769,7 +1017,7 @@ The \lpr {mathdelimitersmode} primitive is experimental and deals with the following (potential) problems. Three bits can be set. The first bit prevents an unwanted shift when the fence symbol is not scaled (a cambria side effect). The second bit forces italic correction between a preceding character ordinal and the -fenced subformula, while the third bit turns that subformula into a ordinary so +fenced subformula, while the third bit turns that subformula into an ordinary so that the same spacing applies as with unfenced variants. Here we show Cambria (with \lpr {mathitalicsmode} enabled). @@ -791,7 +1039,7 @@ that the same spacing applies as with unfenced variants. Here we show Cambria So, when set to 7 fenced subformulas with unscaled delimiters come out the same as unfenced ones. This can be handy for cases where one is forced to use \prm {left} and \prm {right} always because of unpredictable content. As said, it's an -experimental features (which somehow fits in the exceptional way fences are dealt +experimental feature (which somehow fits in the exceptional way fences are dealt with in the engine). The full list of flags is given in the next table: \starttabulate[|c|l|] @@ -799,7 +1047,7 @@ with in the engine). The full list of flags is given in the next table: \TB \NC \type{"01} \NC don't apply the usual shift \NC \NR \NC \type{"02} \NC apply italic correction when possible \NC \NR -\NC \type{"04} \NC force a ordinary subformula \NC \NR +\NC \type{"04} \NC force an ordinary subformula \NC \NR \NC \type{"08} \NC no shift when a base character \NC \NR \NC \type{"10} \NC only shift when an extensible \NC \NR \LL @@ -807,106 +1055,7 @@ with in the engine). The full list of flags is given in the next table: The effect can depend on the font (and for Cambria one can use for instance \type {"16}). -\section {Math spacing setting} - -\topicindex {math+spacing} - -Besides the parameters mentioned in the previous sections, there are also 64 new -primitives to control the math spacing table (as explained in Chapter~18 of the -\TEX book). The primitive names are a simple matter of combining two math atom -types, but for completeness' sake, here is the whole list: - -\starttwocolumns -\startlines -\lpr {Umathordordspacing} -\lpr {Umathordopspacing} -\lpr {Umathordbinspacing} -\lpr {Umathordrelspacing} -\lpr {Umathordopenspacing} -\lpr {Umathordclosespacing} -\lpr {Umathordpunctspacing} -\lpr {Umathordinnerspacing} -\lpr {Umathopordspacing} -\lpr {Umathopopspacing} -\lpr {Umathopbinspacing} -\lpr {Umathoprelspacing} -\lpr {Umathopopenspacing} -\lpr {Umathopclosespacing} -\lpr {Umathoppunctspacing} -\lpr {Umathopinnerspacing} -\lpr {Umathbinordspacing} -\lpr {Umathbinopspacing} -\lpr {Umathbinbinspacing} -\lpr {Umathbinrelspacing} -\lpr {Umathbinopenspacing} -\lpr {Umathbinclosespacing} -\lpr {Umathbinpunctspacing} -\lpr {Umathbininnerspacing} -\lpr {Umathrelordspacing} -\lpr {Umathrelopspacing} -\lpr {Umathrelbinspacing} -\lpr {Umathrelrelspacing} -\lpr {Umathrelopenspacing} -\lpr {Umathrelclosespacing} -\lpr {Umathrelpunctspacing} -\lpr {Umathrelinnerspacing} -\lpr {Umathopenordspacing} -\lpr {Umathopenopspacing} -\lpr {Umathopenbinspacing} -\lpr {Umathopenrelspacing} -\lpr {Umathopenopenspacing} -\lpr {Umathopenclosespacing} -\lpr {Umathopenpunctspacing} -\lpr {Umathopeninnerspacing} -\lpr {Umathcloseordspacing} -\lpr {Umathcloseopspacing} -\lpr {Umathclosebinspacing} -\lpr {Umathcloserelspacing} -\lpr {Umathcloseopenspacing} -\lpr {Umathcloseclosespacing} -\lpr {Umathclosepunctspacing} -\lpr {Umathcloseinnerspacing} -\lpr {Umathpunctordspacing} -\lpr {Umathpunctopspacing} -\lpr {Umathpunctbinspacing} -\lpr {Umathpunctrelspacing} -\lpr {Umathpunctopenspacing} -\lpr {Umathpunctclosespacing} -\lpr {Umathpunctpunctspacing} -\lpr {Umathpunctinnerspacing} -\lpr {Umathinnerordspacing} -\lpr {Umathinneropspacing} -\lpr {Umathinnerbinspacing} -\lpr {Umathinnerrelspacing} -\lpr {Umathinneropenspacing} -\lpr {Umathinnerclosespacing} -\lpr {Umathinnerpunctspacing} -\lpr {Umathinnerinnerspacing} -\stoplines -\stoptwocolumns - -These parameters are of type \prm {muskip}, so setting a parameter can be done -like this: - -\starttyping -\Umathopordspacing\displaystyle=4mu plus 2mu -\stoptyping - -They are all initialized by \type {initex} to the values mentioned in the table -in Chapter~18 of the \TEX book. - -Note 1: for ease of use as well as for backward compatibility, \prm {thinmuskip}, -\prm {medmuskip} and \prm {thickmuskip} are treated especially. In their case a -pointer to the corresponding internal parameter is saved, not the actual \prm -{muskip} value. This means that any later changes to one of these three -parameters will be taken into account. - -Note 2: Careful readers will realise that there are also primitives for the items -marked \type {*} in the \TEX book. These will not actually be used as those -combinations of atoms cannot actually happen, but it seemed better not to break -orthogonality. They are initialized to zero. - -\section[mathacc]{Math accent handling} +\subsection[mathacc]{Accent handling} \topicindex {math+accents} @@ -940,7 +1089,7 @@ accentee. The accent will be shifted horizontally such that its own \type followed by its italic correction is used instead. The vertical placement of a top accent depends on the \type {x_height} of the -font of the accentee (as explained in the \TEX book), but if value that turns out +font of the accentee (as explained in the \TEX book), but if a value turns out to be zero and the font had a \type {MathConstants} table, then \type {AccentBaseHeight} is used instead. @@ -955,7 +1104,7 @@ fraction only applies to the stepwise selected shapes and is mostly meant for th \type {overlay} location. It also works for the other locations but then it concerns the width. -\section{Math root extension} +\subsection{Radical extensions} \topicindex {math+radicals} @@ -972,7 +1121,7 @@ The placement of the degree is controlled by the math parameters \lpr {Umathradicaldegreeraise}. The degree will be typeset in \prm {scriptscriptstyle}. -\section{Math kerning in super- and subscripts} +\subsection{Super- and subscripts} The character fields in a \LUA|-|loaded \OPENTYPE\ math font can have a \quote {mathkern} table. The format of this table is the same as the \quote {mathkern} @@ -1031,7 +1180,7 @@ next higher height and kern pair, or the highest one in the character (if there value high enough in the character), or simply zero (if the character has no math kern pairs at all). -\section{Scripts on horizontally extensible items like arrows} +\subsection{Scripts on extensibles} \topicindex {math+scripts} \topicindex {math+delimiters} @@ -1088,12 +1237,121 @@ $\Uhextensible width 1pt middle 0 "2194$ \blank \startnarrower \getbuffer \stopnarrower \blank -\LUATEX\ internally uses a structure that supports \OPENTYPE\ \quote -{MathVariants} as well as \TFM\ \quote {extensible recipes}. In most cases where -font metrics are involved we have a different code path for traditional fonts end -\OPENTYPE\ fonts. +\LUATEX\ internally uses a structure that supports \OPENTYPE\ \quote +{MathVariants} as well as \TFM\ \quote {extensible recipes}. In most cases where +font metrics are involved we have a different code path for traditional fonts end +\OPENTYPE\ fonts. + +\subsection{Fractions} + +\topicindex {math+fractions} + +The \prm {abovewithdelims} command accepts a keyword \type {exact}. When issued +the extra space relative to the rule thickness is not added. One can of course +use the \type {\Umathfraction..gap} commands to influence the spacing. Also the +rule is still positioned around the math axis. + +\starttyping +$$ { {a} \abovewithdelims() exact 4pt {b} }$$ +\stoptyping + +The math parameter table contains some parameters that specify a horizontal and +vertical gap for skewed fractions. Of course some guessing is needed in order to +implement something that uses them. And so we now provide a primitive similar to the +other fraction related ones but with a few options so that one can influence the +rendering. Of course a user can also mess around a bit with the parameters +\lpr {Umathskewedfractionhgap} and \lpr {Umathskewedfractionvgap}. + +The syntax used here is: + +\starttyping +{ {1} \Uskewed / <options> {2} } +{ {1} \Uskewedwithdelims / () <options> {2} } +\stoptyping + +where the options can be \type {noaxis} and \type {exact}. By default we add half +the axis to the shifts and by default we zero the width of the middle character. +For Latin Modern the result looks as follows: + +\def\ShowA#1#2#3{$x + { {#1} \Uskewed / #3 {#2} } + x$} +\def\ShowB#1#2#3{$x + { {#1} \Uskewedwithdelims / () #3 {#2} } + x$} + +\start + \switchtobodyfont[modern] + \starttabulate[||||||] + \NC \NC + \ShowA{a}{b}{} \NC + \ShowA{1}{2}{} \NC + \ShowB{a}{b}{} \NC + \ShowB{1}{2}{} \NC + \NR + \NC \type{exact} \NC + \ShowA{a}{b}{exact} \NC + \ShowA{1}{2}{exact} \NC + \ShowB{a}{b}{exact} \NC + \ShowB{1}{2}{exact} \NC + \NR + \NC \type{noaxis} \NC + \ShowA{a}{b}{noaxis} \NC + \ShowA{1}{2}{noaxis} \NC + \ShowB{a}{b}{noaxis} \NC + \ShowB{1}{2}{noaxis} \NC + \NR + \NC \type{exact noaxis} \NC + \ShowA{a}{b}{exact noaxis} \NC + \ShowA{1}{2}{exact noaxis} \NC + \ShowB{a}{b}{exact noaxis} \NC + \ShowB{1}{2}{exact noaxis} \NC + \NR + \stoptabulate +\stop + +\subsection {Delimiters: \type{\Uleft}, \prm {Umiddle} and \prm {Uright}} + +\topicindex {math+delimiters} + +Normally you will force delimiters to certain sizes by putting an empty box or +rule next to it. The resulting delimiter will either be a character from the +stepwise size range or an extensible. The latter can be quite differently +positioned than the characters as it depends on the fit as well as the fact if +the used characters in the font have depth or height. Commands like (plain \TEX +s) \type {\big} need use this feature. In \LUATEX\ we provide a bit more control +by three variants that support optional parameters \type {height}, \type {depth} +and \type {axis}. The following example uses this: + +\startbuffer +\Uleft height 30pt depth 10pt \Udelimiter "0 "0 "000028 +\quad x\quad +\Umiddle height 40pt depth 15pt \Udelimiter "0 "0 "002016 +\quad x\quad +\Uright height 30pt depth 10pt \Udelimiter "0 "0 "000029 +\quad \quad \quad +\Uleft height 30pt depth 10pt axis \Udelimiter "0 "0 "000028 +\quad x\quad +\Umiddle height 40pt depth 15pt axis \Udelimiter "0 "0 "002016 +\quad x\quad +\Uright height 30pt depth 10pt axis \Udelimiter "0 "0 "000029 +\stopbuffer + +\typebuffer + +\startlinecorrection +\ruledhbox{\mathematics{\getbuffer}} +\stoplinecorrection + +The keyword \type {exact} can be used as directive that the real dimensions +should be applied when the criteria can't be met which can happen when we're +still stepping through the successively larger variants. When no dimensions are +given the \type {noaxis} command can be used to prevent shifting over the axis. + +You can influence the final class with the keyword \type {class} which will +influence the spacing. The numbers are the same as for character classes. + +\stopsection + +\startsection[title={Extracting values}] -\section {Extracting values} +\subsection{Codes} \topicindex {math+codes} @@ -1115,7 +1373,7 @@ will return: [2] [3] [4] \stoptyping -These commands are provides as convenience. Before they came available you could +These commands are provides as convenience. Before they come available you could do the following: \starttyping @@ -1124,71 +1382,7 @@ do the following: \def\Umathcharslot {\directlua{tex.print(tex.getmathcode(token.scan_int())[3])}} \stoptyping -\section{fractions} - -\topicindex {math+fractions} - -The \prm {abovewithdelims} command accepts a keyword \type {exact}. When issued -the extra space relative to the rule thickness is not added. One can of course -use the \type {\Umathfraction..gap} commands to influence the spacing. Also the -rule is still positioned around the math axis. - -\starttyping -$$ { {a} \abovewithdelims() exact 4pt {b} }$$ -\stoptyping - -The math parameter table contains some parameters that specify a horizontal and -vertical gap for skewed fractions. Of course some guessing is needed in order to -implement something that uses them. And so we now provide a primitive similar to the -other fraction related ones but with a few options so that one can influence the -rendering. Of course a user can also mess around a bit with the parameters -\lpr {Umathskewedfractionhgap} and \lpr {Umathskewedfractionvgap}. - -The syntax used here is: - -\starttyping -{ {1} \Uskewed / <options> {2} } -{ {1} \Uskewedwithdelims / () <options> {2} } -\stoptyping - -where the options can be \type {noaxis} and \type {exact}. By default we add half -the axis to the shifts and by default we zero the width of the middle character. -For Latin Modern The result looks as follows: - -\def\ShowA#1#2#3{$x + { {#1} \Uskewed / #3 {#2} } + x$} -\def\ShowB#1#2#3{$x + { {#1} \Uskewedwithdelims / () #3 {#2} } + x$} - -\start - \switchtobodyfont[modern] - \starttabulate[||||||] - \NC \NC - \ShowA{a}{b}{} \NC - \ShowA{1}{2}{} \NC - \ShowB{a}{b}{} \NC - \ShowB{1}{2}{} \NC - \NR - \NC \type{exact} \NC - \ShowA{a}{b}{exact} \NC - \ShowA{1}{2}{exact} \NC - \ShowB{a}{b}{exact} \NC - \ShowB{1}{2}{exact} \NC - \NR - \NC \type{noaxis} \NC - \ShowA{a}{b}{noaxis} \NC - \ShowA{1}{2}{noaxis} \NC - \ShowB{a}{b}{noaxis} \NC - \ShowB{1}{2}{noaxis} \NC - \NR - \NC \type{exact noaxis} \NC - \ShowA{a}{b}{exact noaxis} \NC - \ShowA{1}{2}{exact noaxis} \NC - \ShowB{a}{b}{exact noaxis} \NC - \ShowB{1}{2}{exact noaxis} \NC - \NR - \stoptabulate -\stop - -\section {Last lines} +\subsection {Last lines} \topicindex {math+last line} @@ -1212,7 +1406,9 @@ get the length of the last line, the following will often work too: \relax} \stoptyping -\section {Other Math changes} +\stopsection + +\startsection[title={Math mode}] \subsection {Verbose versions of single|-|character math commands} @@ -1272,64 +1468,7 @@ the result of \prm {mathchardef} or \lpr {Umathchardef} are also acceptable in the horizontal and vertical modes. In those cases, the \prm {textfont} from the requested math family is used. -\section{Math surrounding skips} - -\topicindex {math+spacing} - -Inline math is surrounded by (optional) \prm {mathsurround} spacing but that is fixed -dimension. There is now an additional parameter \lpr {mathsurroundskip}. When set to a -non|-|zero value (or zero with some stretch or shrink) this parameter will replace -\prm {mathsurround}. By using an additional parameter instead of changing the nature -of \prm {mathsurround}, we can remain compatible. In the meantime a bit more -control has been added via \lpr {mathsurroundmode}. This directive can take 6 values -with zero being the default behaviour. - -\start - -\def\OneLiner#1#2% - {\NC \type{#1} - \NC \dontleavehmode\inframed[align=normal,offset=0pt,frame=off]{\mathsurroundmode#1\relax\hsize 100pt x$x$x} - \NC \dontleavehmode\inframed[align=normal,offset=0pt,frame=off]{\mathsurroundmode#1\relax\hsize 100pt x $x$ x} - \NC #2 - \NC \NR} - -\startbuffer -\mathsurround 10pt -\mathsurroundskip20pt -\stopbuffer - -\typebuffer \getbuffer - -\starttabulate[|c|c|c|pl|] -\DB mode \BC x\$x\$x \BC x \$x\$ x \BC effect \NC \NR -\TB -\OneLiner{0}{obey \prm {mathsurround} when \lpr {mathsurroundskip} is 0pt} -\OneLiner{1}{only add skip to the left} -\OneLiner{2}{only add skip to the right} -\OneLiner{3}{add skip to the left and right} -\OneLiner{4}{ignore the skip setting, obey \prm {mathsurround}} -\OneLiner{5}{disable all spacing around math} -\OneLiner{6}{only apply \lpr {mathsurroundskip} when also spacing} -\OneLiner{7}{only apply \lpr {mathsurroundskip} when no spacing} -\LL -\stoptabulate - -\stop - -Method six omits the surround glue when there is (x)spacing glue present while -method seven does the opposite, the glue is only applied when there is (x)space -glue present too. Anything more fancy, like checking the begining or end of a -paragraph (or edges of a box) would not be robust anyway. If you want that you -can write a callback that runs over a list and analyzes a paragraph. Actually, in -that case you could also inject glue (or set the properties of a math node) -explicitly. So, these modes are in practice mostly useful for special purposes -and experiments (they originate in a tracker item). Keep in mind that this glue -is part of the math node and not always treated as normal glue: it travels with -the begin and end math nodes. Also, method 6 and 7 will zero the skip related -fields in a node when applicable in the first occasion that checks them -(linebreaking or packaging). - -% \section{Math todo} +% \startsection[title={Math todo}] % % The following items are still todo. % @@ -1350,124 +1489,57 @@ fields in a node when applicable in the first occasion that checks them % Support for multi|-|line displays using \MATHML\ style alignment points. % \stopitem % \stopitemize +% +% \stopsection -\subsection {Delimiters: \type{\Uleft}, \prm {Umiddle} and \prm {Uright}} +\stopsection -\topicindex {math+delimiters} +\startsection[title={Goodies}] -Normally you will force delimiters to certain sizes by putting an empty box or -rule next to it. The resulting delimiter will either be a character from the -stepwise size range or an extensible. The latter can be quite differently -positioned that the characters as it depends on the fit as well as the fact if -the used characters in the font have depth or height. Commands like (plain \TEX -s) \type {\big} need use this feature. In \LUATEX\ we provide a bit more control -by three variants that supporting optional parameters \type {height}, \type -{depth} and \type {axis}. The following example uses this: +\subsection {Flattening: \lpr {mathflattenmode}} -\startbuffer -\Uleft height 30pt depth 10pt \Udelimiter "0 "0 "000028 -\quad x\quad -\Umiddle height 40pt depth 15pt \Udelimiter "0 "0 "002016 -\quad x\quad -\Uright height 30pt depth 10pt \Udelimiter "0 "0 "000029 -\quad \quad \quad -\Uleft height 30pt depth 10pt axis \Udelimiter "0 "0 "000028 -\quad x\quad -\Umiddle height 40pt depth 15pt axis \Udelimiter "0 "0 "002016 -\quad x\quad -\Uright height 30pt depth 10pt axis \Udelimiter "0 "0 "000029 -\stopbuffer +\topicindex {math+flattening} -\typebuffer +The \TEX\ math engine collapses \type {ord} noads without sub- and superscripts +and a character as nucleus. and which has the side effect that in \OPENTYPE\ mode +italic corrections are applied (given that they are enabled). -\startlinecorrection -\ruledhbox{\mathematics{\getbuffer}} -\stoplinecorrection +\startbuffer[sample] +\switchtobodyfont[modern] +$V \mathbin{\mathbin{v}} V$\par +$V \mathord{\mathord{v}} V$\par +\stopbuffer -The keyword \type {exact} can be used as directive that the real dimensions -should be applied when the criteria can't be met which can happen when we're -still stepping through the successively larger variants. When no dimensions are -given the \type {noaxis} command can be used to prevent shifting over the axis. +\typebuffer[sample] -You can influence the final class with the keyword \type {class} which will -influence the spacing. The numbers are the same as for character classes. +This renders as: -\subsection{Fixed scripts} +\blank \start \mathflattenmode\plusone \getbuffer[sample] \stop \blank -We have three parameters that are used for this fixed anchoring: +When we set \lpr {mathflattenmode} to 31 we get: -\starttabulate[|c|l|] -\DB parameter \BC register \NC \NR -\NC $d$ \NC \lpr {Umathsubshiftdown} \NC \NR -\NC $u$ \NC \lpr {Umathsupshiftup} \NC \NR -\NC $s$ \NC \lpr {Umathsubsupshiftdown} \NC \NR -\LL -\stoptabulate +\blank \start \mathflattenmode\numexpr1+2+4+8+16\relax \getbuffer[sample] \stop \blank -When we set \lpr {mathscriptsmode} to a value other than zero these are used -for calculating fixed positions. This is something that is needed for instance -for chemistry. You can manipulate the mentioned variables to achive different -effects. +When you see no difference, then the font probably has the proper character +dimensions and no italic correction is needed. For Latin Modern (at least till +2018) there was a visual difference. In that respect this parameter is not always +needed unless of course you want efficient math lists anyway. -\def\SampleMath#1% - {$\mathscriptsmode#1\mathupright CH_2 + CH^+_2 + CH^2_2$} +You can influence flattening by adding the appropriate number to the value of the +mode parameter. The default value is~1. -\starttabulate[|c|c|c|p|] -\DB mode \BC down \BC up \BC example \NC \NR +\starttabulate[|Tc|c|] +\DB mode \BC class \NC \NR \TB -\NC 0 \NC dynamic \NC dynamic \NC \SampleMath{0} \NC \NR -\NC 1 \NC $d$ \NC $u$ \NC \SampleMath{1} \NC \NR -\NC 2 \NC $s$ \NC $u$ \NC \SampleMath{2} \NC \NR -\NC 3 \NC $s$ \NC $u + s - d$ \NC \SampleMath{3} \NC \NR -\NC 4 \NC $d + (s-d)/2$ \NC $u + (s-d)/2$ \NC \SampleMath{4} \NC \NR -\NC 5 \NC $d$ \NC $u + s - d$ \NC \SampleMath{5} \NC \NR +\NC 1 \NC ord \NC \NR +\NC 2 \NC bin \NC \NR +\NC 4 \NC rel \NC \NR +\NC 8 \NC punct \NC \NR +\NC 16 \NC inner \NC \NR \LL \stoptabulate -The value of this parameter obeys grouping but applies to the whole current -formula. - -% if needed we can put the value in stylenodes but maybe more should go there - -\subsection{Penalties: \lpr {mathpenaltiesmode}} - -\topicindex {math+penalties} - -Only in inline math penalties will be added in a math list. You can force -penalties (also in display math) by setting: - -\starttyping -\mathpenaltiesmode = 1 -\stoptyping - -This primnitive is not really needed in \LUATEX\ because you can use the callback -\cbk {mlist_to_hlist} to force penalties by just calling the regular routine -with forced penalties. However, as part of opening up and control this primitive -makes sense. As a bonus we also provide two extra penalties: - -\starttyping -\prebinoppenalty = -100 % example value -\prerelpenalty = 900 % example value -\stoptyping - -They default to inifinite which signals that they don't need to be inserted. When -set they are injected before a binop or rel noad. This is an experimental feature. - -\subsection{Equation spacing: \lpr {matheqnogapstep}} - -By default \TEX\ will add one quad between the equation and the number. This is -hard coded. A new primitive can control this: - -\startsyntax -\matheqnogapstep = 1000 -\stopsyntax - -Because a math quad from the math text font is used instead of a dimension, we -use a step to control the size. A value of zero will suppress the gap. The step -is divided by 1000 which is the usual way to mimmick floating point factors in -\TEX. - -\subsection {Tracing} +\subsection {Less Tracing} \topicindex {math+tracing} @@ -1475,93 +1547,100 @@ Because there are quite some math related parameters and values, it is possible to limit tracing. Only when \type {tracingassigns} and|/|or \type {tracingrestores} are set to~2 or more they will be traced. -\subsection {Math options} +\subsection {Math options with \lpr {mathoption}} The logic in the math engine is rather complex and there are often no universal solutions (read: what works out well for one font, fails for another). Therefore -some variations in the implementation will be driven by options for which a new -primitive \lpr {mathoption} has been introduced (so that we don't end up with -many new commands). The approach of options also permits us to see what effect a -specific solution has. - -\subsubsection {\type {\mathoption old}} +some variations in the implementation are driven by parameters (modes). In +addition there is a new primitive \lpr {mathoption} which will be used for +testing. Don't rely on any option to be there in a production version as they are +meant for development. This option was introduced for testing purposes when the math engine got split code paths and it forces the engine to treat new fonts as old ones with respect to italic correction etc. There are no guarantees given with respect to the final -result and unexpected side effects are not seens as bugs as they relate to font -properties. +result and unexpected side effects are not seen as bugs as they relate to font +properties. Ther eis currently only one option: \startbuffer \mathoption old 1 \stopbuffer The \type {oldmath} boolean flag in the \LUA\ font table is the official way to -force old treatment as it's bound to fonts. - -\subsubsection {\type {\mathoption noitaliccompensation}} - -This option compensates placement for characters with a built|-|in italic -correction. - -\startbuffer -{\showboxes\int}\quad -{\showboxes\int_{|}^{|}}\quad -{\showboxes\int\limits_{|}^{|}} -\stopbuffer - -\typebuffer - -Gives (with computer modern that has such italics): - -\startlinecorrection[blank] - \switchtobodyfont[modern] - \startcombination[nx=2,ny=2,distance=5em] - {\mathoption noitaliccompensation 0\relax \mathematics{\getbuffer}} - {\nohyphens\type{0:inline}} - {\mathoption noitaliccompensation 0\relax \mathematics{\displaymath\getbuffer}} - {\nohyphens\type{0:display}} - {\mathoption noitaliccompensation 1\relax \mathematics{\getbuffer}} - {\nohyphens\type{1:inline}} - {\mathoption noitaliccompensation 1\relax \mathematics{\displaymath\getbuffer}} - {\nohyphens\type{1:display}} - \stopcombination -\stoplinecorrection - -\subsubsection {\type {\mathoption nocharitalic}} - -When two characters follow each other italic correction can interfere. The -following example shows what this option does: - -\startbuffer -\catcode"1D443=11 -\catcode"1D444=11 -\catcode"1D445=11 -P( PP PQR -\stopbuffer - -\typebuffer - -Gives (with computer modern that has such italics): - -\startlinecorrection[blank] - \switchtobodyfont[modern] - \startcombination[nx=2,ny=2,distance=5em] - {\mathoption nocharitalic 0\relax \mathematics{\getbuffer}} - {\nohyphens\type{0:inline}} - {\mathoption nocharitalic 0\relax \mathematics{\displaymath\getbuffer}} - {\nohyphens\type{0:display}} - {\mathoption nocharitalic 1\relax \mathematics{\getbuffer}} - {\nohyphens\type{1:inline}} - {\mathoption nocharitalic 1\relax \mathematics{\displaymath\getbuffer}} - {\nohyphens\type{1:display}} - \stopcombination -\stoplinecorrection +force old treatment as it's bound to fonts. Like with all options we may +temporarily introduce with this command this feature is not meant for production. -\subsubsection {\type {\mathoption useoldfractionscaling}} +% % obsolete: +% +% \subsubsection {\type {\mathoption noitaliccompensation}} +% +% This option compensates placement for characters with a built|-|in italic +% correction. +% +% \startbuffer +% {\showboxes\int}\quad +% {\showboxes\int_{|}^{|}}\quad +% {\showboxes\int\limits_{|}^{|}} +% \stopbuffer +% +% \typebuffer +% +% Gives (with computer modern that has such italics): +% +% \startlinecorrection[blank] +% \switchtobodyfont[modern] +% \startcombination[nx=2,ny=2,distance=5em] +% {\mathoption noitaliccompensation 0\relax \mathematics{\getbuffer}} +% {\nohyphens\type{0:inline}} +% {\mathoption noitaliccompensation 0\relax \mathematics{\displaymath\getbuffer}} +% {\nohyphens\type{0:display}} +% {\mathoption noitaliccompensation 1\relax \mathematics{\getbuffer}} +% {\nohyphens\type{1:inline}} +% {\mathoption noitaliccompensation 1\relax \mathematics{\displaymath\getbuffer}} +% {\nohyphens\type{1:display}} +% \stopcombination +% \stoplinecorrection + +% % obsolete: +% +% \subsubsection {\type {\mathoption nocharitalic}} +% +% When two characters follow each other italic correction can interfere. The +% following example shows what this option does: +% +% \startbuffer +% \catcode"1D443=11 +% \catcode"1D444=11 +% \catcode"1D445=11 +% P( PP PQR +% \stopbuffer +% +% \typebuffer +% +% Gives (with computer modern that has such italics): +% +% \startlinecorrection[blank] +% \switchtobodyfont[modern] +% \startcombination[nx=2,ny=2,distance=5em] +% {\mathoption nocharitalic 0\relax \mathematics{\getbuffer}} +% {\nohyphens\type{0:inline}} +% {\mathoption nocharitalic 0\relax \mathematics{\displaymath\getbuffer}} +% {\nohyphens\type{0:display}} +% {\mathoption nocharitalic 1\relax \mathematics{\getbuffer}} +% {\nohyphens\type{1:inline}} +% {\mathoption nocharitalic 1\relax \mathematics{\displaymath\getbuffer}} +% {\nohyphens\type{1:display}} +% \stopcombination +% \stoplinecorrection + +% % obsolete: +% +% \subsubsection {\type {\mathoption useoldfractionscaling}} +% +% This option has been introduced as solution for tracker item 604 for fuzzy cases +% around either or not present fraction related settings for new fonts. -This option has been introduced as solution for tracker item 604 for fuzzy cases -around either or not present fraction related settings for new fonts. +\stopsection \stopchapter diff --git a/manual/luatex-modifications.tex b/manual/luatex-modifications.tex index b3fb21615..294f3fc3f 100644 --- a/manual/luatex-modifications.tex +++ b/manual/luatex-modifications.tex @@ -24,7 +24,7 @@ most of the adapted ones. Besides the expected changes caused by new functionality, there are a number of not|-|so|-|expected changes. These are sometimes a side|-|effect of a new -(conflicting) feature, or, more often than not, a change neccessary to clean up +(conflicting) feature, or, more often than not, a change necessary to clean up the internal interfaces. These will also be mentioned. \stopsubsection @@ -42,7 +42,7 @@ most still comes from the original. But we divert a bit. The current code base is written in \CCODE, not \PASCAL. We use \CWEB\ when possible. As a consequence instead of one large file plus change files, we now have multiple files organized in categories like \type {tex}, \type - {pdf}, \type {lang}, \type {font}, \type {lua}, etc. There are some artefacts + {pdf}, \type {lang}, \type {font}, \type {lua}, etc. There are some artifacts of the conversion to \CCODE, but in due time we will clean up the source code and make sure that the documentation is done right. Many files are in the \CWEB\ format, but others, like those interfacing to \LUA, are \CCODE\ files. @@ -143,38 +143,38 @@ which in turn triggered renaming primitives. For compatibility reasons we still refer to \type {\pdf...} commands but \LUATEX\ has a different backend interface. Instead of these primitives there are three -interfacing primitives: \lpr {pdfextension}, \lpr {pdfvariable} and -\lpr {pdffeedback} that take keywords and optional further arguments. This way -we can extend the features when needed but don't need to adapt the core engine. -The front- and backend are decoupled as much as possible. +interfacing primitives: \lpr {pdfextension}, \lpr {pdfvariable} and \lpr +{pdffeedback} that take keywords and optional further arguments (below we will +still use the \tex {pdf} prefix names as reference). This way we can extend the +features when needed but don't need to adapt the core engine. The front- and +backend are decoupled as much as possible. \startitemize \startitem The (experimental) support for snap nodes has been removed, because it is much more natural to build this functionality on top of node processing and - attributes. The associated primitives that are gone are: \type - {\pdfsnaprefpoint}, \type {\pdfsnapy}, and \type {\pdfsnapycomp}. + attributes. The associated primitives that are gone are: \orm + {pdfsnaprefpoint}, \orm {pdfsnapy}, and \orm {pdfsnapycomp}. \stopitem \startitem The (experimental) support for specialized spacing around nodes has also been - removed. The associated primitives that are gone are: \type - {\pdfadjustinterwordglue}, \type {\pdfprependkern}, and \type - {\pdfappendkern}, as well as the five supporting primitives \type - {\knbscode}, \type {\stbscode}, \type {\shbscode}, \type {\knbccode}, and - \type {\knaccode}. + removed. The associated primitives that are gone are: \orm + {pdfadjustinterwordglue}, \orm {pdfprependkern}, and \orm {pdfappendkern}, as + well as the five supporting primitives \orm {knbscode}, \orm {stbscode}, \orm + {shbscode}, \orm {knbccode}, and \orm {knaccode}. \stopitem \startitem A number of \quote {\PDFTEX\ primitives} have been removed as they can be - implemented using \LUA: \type {\pdfelapsedtime}, \type {\pdfescapehex}, \type - {\pdfescapename}, \type {\pdfescapestring}, \type {\pdffiledump}, \type - {\pdffilemoddate}, \type {\pdffilesize}, \type {\pdfforcepagebox}, \type - {\pdflastmatch}, \type {\pdfmatch}, \type {\pdfmdfivesum}, \type - {\pdfmovechars}, \type {\pdfoptionalwaysusepdfpagebox}, \type - {\pdfoptionpdfinclusionerrorlevel}, \type {\pdfresettimer}, \type - {\pdfshellescape}, \type {\pdfstrcmp} and \type {\pdfunescapehex} + implemented using \LUA: \orm {pdfelapsedtime}, \orm {pdfescapehex}, \orm + {pdfescapename}, \orm {pdfescapestring}, \orm {pdffiledump}, \orm + {pdffilemoddate}, \orm {pdffilesize}, \orm {pdfforcepagebox}, \orm + {pdflastmatch}, \orm {pdfmatch}, \orm {pdfmdfivesum}, \orm {pdfmovechars}, + \orm {pdfoptionalwaysusepdfpagebox}, \orm {pdfoptionpdfinclusionerrorlevel}, + \orm {pdfresettimer}, \orm {pdfshellescape}, \orm {pdfstrcmp} and \orm + {pdfunescapehex}. \stopitem \startitem @@ -186,7 +186,7 @@ The front- and backend are decoupled as much as possible. \startitem The experimental snapper mechanism has been removed and therefore also the primitives \orm {pdfignoreddimen}, \orm {pdffirstlineheight}, \orm - {pdfeachlineheight}, \orm {pdfeachlinedepth} and \orm {pdflastlinedepth} + {pdfeachlineheight}, \orm {pdfeachlinedepth} and \orm {pdflastlinedepth}. \stopitem \startitem @@ -202,10 +202,16 @@ The front- and backend are decoupled as much as possible. \stopitem \startitem - Two extra token lists are provides, \orm {pdfxformresources} and \orm + Two extra token lists are provided, \orm {pdfxformresources} and \orm {pdfxformattr}, as an alternative to \orm {pdfxform} keywords. \stopitem +\startitem + Image specifications also support \type {visiblefilename}, \type + {userpassword} and \type {ownerpassword}. The password options are only + relevant for encrypted \PDF\ files. +\stopitem + \startitem The current version of \LUATEX\ no longer replaces and|/|or merges fonts in embedded \PDF\ files with fonts of the enveloping \PDF\ document. This @@ -390,39 +396,39 @@ we say next applies to both these programs. \startitemize \startitem - The extended 16-bit math primitives (\type {\omathcode} etc.) have been + The extended 16-bit math primitives (\orm {omathcode} etc.) have been removed. \stopitem \startitem The \OCP\ processing has been removed completely and as a consequence, the - following primitives have been removed: \type {\ocp}, \type {\externalocp}, - \type {\ocplist}, \type {\pushocplist}, \type {\popocplist}, \type - {\clearocplists}, \type {\addbeforeocplist}, \type {\addafterocplist}, \type - {\removebeforeocplist}, \type {\removeafterocplist} and \type - {\ocptracelevel}. + following primitives have been removed: \orm {ocp}, \orm {externalocp}, \orm + {ocplist}, \orm {pushocplist}, \orm {popocplist}, \orm {clearocplists}, \orm + {addbeforeocplist}, \orm {addafterocplist}, \orm {removebeforeocplist}, \orm + {removeafterocplist} and \orm {ocptracelevel}. \stopitem \startitem \LUATEX\ only understands 4~of the 16~direction specifiers of \ALEPH: \type - {TLT} (latin), \type {TRT} (arabic), \type {RTT} (cjk), \type {LTL} - (mongolian). All other direction specifiers generate an error. + {TLT} (latin), \type {TRT} (arabic), \type {RTT} (cjk), \type {LTL} (mongolian). + All other direction specifiers generate an error. In addition to a keyword + driven model we also provide an integer driven one. \stopitem \startitem The input translations from \ALEPH\ are not implemented, the related - primitives are not available: \type {\DefaultInputMode}, \type - {\noDefaultInputMode}, \type {\noInputMode}, \type {\InputMode}, \type - {\DefaultOutputMode}, \type {\noDefaultOutputMode}, \type {\noOutputMode}, - \type {\OutputMode}, \type {\DefaultInputTranslation}, \type - {\noDefaultInputTranslation}, \type {\noInputTranslation}, \type - {\InputTranslation}, \type {\DefaultOutputTranslation}, \type - {\noDefaultOutputTranslation}, \type {\noOutputTranslation} and \type - {\OutputTranslation}. + primitives are not available: \orm {DefaultInputMode}, \orm + {noDefaultInputMode}, \orm {noInputMode}, \orm {InputMode}, \orm + {DefaultOutputMode}, \orm {noDefaultOutputMode}, \orm {noOutputMode}, \orm + {OutputMode}, \orm {DefaultInputTranslation}, \orm + {noDefaultInputTranslation}, \orm {noInputTranslation}, \orm + {InputTranslation}, \orm {DefaultOutputTranslation}, \orm + {noDefaultOutputTranslation}, \orm {noOutputTranslation} and \orm + {OutputTranslation}. \stopitem \startitem - Several bugs have been fixed an confusing implementation details have been + Several bugs have been fixed and confusing implementation details have been sorted out. \stopitem @@ -475,7 +481,7 @@ we say next applies to both these programs. \stopitem \startitem - The promotion of primitives to core primitives as well as the removed of all + The promotion of primitives to core primitives as well as removing of all others means that the initialization namespace \type {aleph} that early versions of \LUATEX\ provided is gone. \stopitem @@ -537,7 +543,9 @@ different: \stopsection -\startsection[reference=backendprimitives,title=The backend primitives \type {\pdf*}] +\startsection[reference=backendprimitives,title=The backend primitives] + +\startsubsection[title={Less primitives}] \topicindex {backend} \topicindex {\PDF+backend} @@ -548,7 +556,7 @@ order to separate the backend specific primitives in de code these commands are now replaced by only a few. In traditional \TEX\ we only had the \DVI\ backend but now we have two: \DVI\ and \PDF. Additional functionality is implemented as \quote {extensions} in \TEX\ speak. By separating more strickly we are able to -keep the core (fontend) clean and stable and isolate these extensions. If for +keep the core (frontend) clean and stable and isolate these extensions. If for some reason an extra backend option is needed, it can be implemented without touching the core. The three \PDF\ backend related primitives are: @@ -562,8 +570,12 @@ An extension triggers further parsing, depending on the command given. A variabl a (kind of) register and can be read and written, while a feedback is reporting something (as it comes from the backend it's normally a sequence of tokens). +\stopsubsection + +\startsubsection[title={\lpr{pdfextension}, \lpr {pdfvariable} and \lpr {pdffeedback}},reference=sec:pdfextensions] + In order for \LUATEX\ to be more than just \TEX\ you need to enable primitives. That -has already be the case right from the start. If you want the traditional \PDFTEX\ +has already been the case right from the start. If you want the traditional \PDFTEX\ primitives (for as far their functionality is still around) you now can do this: \starttyping @@ -616,6 +628,7 @@ The configuration related registers have become: \starttyping \edef\pdfcompresslevel {\pdfvariable compresslevel} \edef\pdfobjcompresslevel {\pdfvariable objcompresslevel} +\edef\pdfrecompress {\pdfvariable recompress} \edef\pdfdecimaldigits {\pdfvariable decimaldigits} \edef\pdfgamma {\pdfvariable gamma} \edef\pdfimageresolution {\pdfvariable imageresolution} @@ -630,6 +643,7 @@ The configuration related registers have become: \edef\pdfignoreunknownimages {\pdfvariable ignoreunknownimages} \edef\pdfgentounicode {\pdfvariable gentounicode} \edef\pdfomitcidset {\pdfvariable omitcidset} +\edef\pdfomitcharset {\pdfvariable omitcharset} \edef\pdfpagebox {\pdfvariable pagebox} \edef\pdfminorversion {\pdfvariable minorversion} \edef\pdfuniqueresname {\pdfvariable uniqueresname} @@ -669,100 +683,16 @@ macro:->[internal backend integer] macro:->[internal backend tokenlist] \stoptyping -The \prm {edef} can also be an \prm {def} but it's a bit more efficient -to expand the lookup related register beforehand. After that you can adapt -the defaults; these are: - -\starttyping -\pdfcompresslevel 9 -\pdfobjcompresslevel 1 % used: (0,9) -\pdfdecimaldigits 4 % used: (3,6) -\pdfgamma 1000 -\pdfimageresolution 71 -\pdfimageapplygamma 0 -\pdfimagegamma 2200 -\pdfimagehicolor 1 -\pdfimageaddfilename 1 -\pdfpkresolution 72 -\pdfpkfixeddpi 0 -\pdfinclusioncopyfonts 0 -\pdfinclusionerrorlevel 0 -\pdfignoreunknownimages 0 -\pdfgentounicode 0 -\pdfomitcidset 0 -\pdfpagebox 0 -\pdfminorversion 4 -\pdfuniqueresname 0 - -\pdfhorigin 1in -\pdfvorigin 1in -\pdflinkmargin 0pt -\pdfdestmargin 0pt -\pdfthreadmargin 0pt -\pdfxformmargin 0pt -\stoptyping - -If you also want some backward compatibility, you can add: - -\starttyping -\let\pdfpagewidth \pagewidth -\let\pdfpageheight \pageheight - -\let\pdfadjustspacing \adjustspacing -\let\pdfprotrudechars \protrudechars -\let\pdfnoligatures \ignoreligaturesinfont -\let\pdffontexpand \expandglyphsinfont -\let\pdfcopyfont \copyfont - -\let\pdfxform \saveboxresource -\let\pdflastxform \lastsavedboxresourceindex -\let\pdfrefxform \useboxresource - -\let\pdfximage \saveimageresource -\let\pdflastximage \lastsavedimageresourceindex -\let\pdflastximagepages\lastsavedimageresourcepages -\let\pdfrefximage \useimageresource - -\let\pdfsavepos \savepos -\let\pdflastxpos \lastxpos -\let\pdflastypos \lastypos - -\let\pdfoutput \outputmode -\let\pdfdraftmode \draftmode - -\let\pdfpxdimen \pxdimen - -\let\pdfinsertht \insertht - -\let\pdfnormaldeviate \normaldeviate -\let\pdfuniformdeviate \uniformdeviate -\let\pdfsetrandomseed \setrandomseed -\let\pdfrandomseed \randomseed - -\let\pdfprimitive \primitive -\let\ifpdfprimitive \ifprimitive - -\let\ifpdfabsnum \ifabsnum -\let\ifpdfabsdim \ifabsdim -\stoptyping - -And even: - -\starttyping -\newdimen\pdfeachlineheight -\newdimen\pdfeachlinedepth -\newdimen\pdflastlinedepth -\newdimen\pdffirstlineheight -\newdimen\pdfignoreddimen -\stoptyping +The \prm {edef} can also be a \prm {def} but it's a bit more efficient to expand +the lookup related register beforehand. The backend is derived from \PDFTEX\ so the same syntax applies. However, the \type {outline} command accepts a \type {objnum} followed by a number. No checking takes place so when this is used it had better be a valid (flushed) object. -In order to be (more or less) compatible with \PDFTEX\ we also support the -option to suppress some info: +In order to be (more or less) compatible with \PDFTEX\ we also support the option +to suppress some info but we do so via a bitset: \starttyping \pdfvariable suppressoptionalinfo \numexpr @@ -782,7 +712,7 @@ option to suppress some info: In addition you can overload the trailer id, but we don't do any checking on validity, so you have to pass a valid array. The following is like the ones -normally generated by the engine: +normally generated by the engine. You even need to include the brackets here! \starttyping \pdfvariable trailerid {[ @@ -791,8 +721,6 @@ normally generated by the engine: ]} \stoptyping -So, you even need to include the brackets! - Although we started from a merge of \PDFTEX\ and \ALEPH, by now the code base as well as functionality has diverted from those parents. Here we show the options that can be passed to the extensions. @@ -940,6 +868,103 @@ that can be passed to the extensions. {tokens} \stoptexsyntax +\stopsubsection + +\startsubsection[title={Defaults}] + +The engine sets the following defaults. + +\starttyping +\pdfcompresslevel 9 +\pdfobjcompresslevel 1 % used: (0,9) +\pdfrecompress 0 % mostly for debugging +\pdfdecimaldigits 4 % used: (3,6) +\pdfgamma 1000 +\pdfimageresolution 71 +\pdfimageapplygamma 0 +\pdfimagegamma 2200 +\pdfimagehicolor 1 +\pdfimageaddfilename 1 +\pdfpkresolution 72 +\pdfpkfixeddpi 0 +\pdfinclusioncopyfonts 0 +\pdfinclusionerrorlevel 0 +\pdfignoreunknownimages 0 +\pdfgentounicode 0 +\pdfomitcidset 0 +\pdfomitcharset 0 +\pdfpagebox 0 +\pdfminorversion 4 +\pdfuniqueresname 0 + +\pdfhorigin 1in +\pdfvorigin 1in +\pdflinkmargin 0pt +\pdfdestmargin 0pt +\pdfthreadmargin 0pt +\pdfxformmargin 0pt +\stoptyping + +\stopsubsection + +\startsubsection[title={Backward compatibility}] + +If you also want some backward compatibility, you can add: + +\starttyping +\let\pdfpagewidth \pagewidth +\let\pdfpageheight \pageheight + +\let\pdfadjustspacing \adjustspacing +\let\pdfprotrudechars \protrudechars +\let\pdfnoligatures \ignoreligaturesinfont +\let\pdffontexpand \expandglyphsinfont +\let\pdfcopyfont \copyfont + +\let\pdfxform \saveboxresource +\let\pdflastxform \lastsavedboxresourceindex +\let\pdfrefxform \useboxresource + +\let\pdfximage \saveimageresource +\let\pdflastximage \lastsavedimageresourceindex +\let\pdflastximagepages\lastsavedimageresourcepages +\let\pdfrefximage \useimageresource + +\let\pdfsavepos \savepos +\let\pdflastxpos \lastxpos +\let\pdflastypos \lastypos + +\let\pdfoutput \outputmode +\let\pdfdraftmode \draftmode + +\let\pdfpxdimen \pxdimen + +\let\pdfinsertht \insertht + +\let\pdfnormaldeviate \normaldeviate +\let\pdfuniformdeviate \uniformdeviate +\let\pdfsetrandomseed \setrandomseed +\let\pdfrandomseed \randomseed + +\let\pdfprimitive \primitive +\let\ifpdfprimitive \ifprimitive + +\let\ifpdfabsnum \ifabsnum +\let\ifpdfabsdim \ifabsdim +\stoptyping + +And even: + +\starttyping +\newdimen\pdfeachlineheight +\newdimen\pdfeachlinedepth +\newdimen\pdflastlinedepth +\newdimen\pdffirstlineheight +\newdimen\pdfignoreddimen +\stoptyping + +\stopsubsection + \stopsection \startsection[title=Directions] @@ -948,6 +973,8 @@ that can be passed to the extensions. \topicindex {\ALEPH} \topicindex {directions} +\startsubsection[title={Four directions}] + The directional model in \LUATEX\ is inherited from \OMEGA|/|\ALEPH\ but we tried to improve it a bit. At some point we played with recovery of modes but that was disabled later on when we found that it interfered with nested directions. That @@ -955,14 +982,23 @@ itself had as side effect that the node list was no longer balanced with respect to directional nodes which in turn can give side effects when a series of dir changes happens without grouping. -The current (0.97 onward) approach is that we again make the list balanced but -try to avoid some side effects. What happens is quite intuitive if we forget -about spaces (turned into glue) but even there what happens makes sense if you -look at it in detail. However that logic makes in|-|group switching kind of -useless when no proper nested grouping is used: switching from right to left -several times nested, results in spacing ending up after each other due to nested -mirroring. Of course a sane macro package will manage this for the user but here -we are discussing the low level dir injection. +When extending the \PDF\ backend to support directions some inconsistencies were +found and as a result we decided to support only the four models that make sense +\type {TLT} (latin), \type {TRT} (arabic), \type {RTT} (cjk) and \type {LTL} +(mongolian). + +\stopsubsection + +\startsubsection[title={How it works}] + +The approach is that we again make the list balanced but try to avoid some side +effects. What happens is quite intuitive if we forget about spaces (turned into +glue) but even there what happens makes sense if you look at it in detail. +However that logic makes in|-|group switching kind of useless when no proper +nested grouping is used: switching from right to left several times nested, +results in spacing ending up after each other due to nested mirroring. Of course +a sane macro package will manage this for the user but here we are discussing the +low level dir injection. This is what happens: @@ -1079,6 +1115,10 @@ kerns, should be handled in the input or macro package because there is no way w can predict the expected behaviour. In fact, the \lpr {linedir} is just a convenience extra which could also have been implemented using node list parsing. +\stopsubsection + +\startsubsection[title={Controlling glue with \lpr {breakafterdirmode}}] + Glue after a dir node is ignored in the linebreak decision but you can bypass that by setting \lpr {breakafterdirmode} to~\type {1}. The following table shows the difference. Watch your spaces. @@ -1109,6 +1149,10 @@ difference. Watch your spaces. \LL \stoptabulate +\stopsubsection + +\startsubsection[title={Controling parshapes with \lpr {shapemode}}] + Another adaptation to the \ALEPH\ directional model is control over shapes driven by \prm {hangindent} and \prm {parshape}. This is controlled by a new parameter \lpr {shapemode}: @@ -1170,6 +1214,38 @@ this. In \in {figure} [fig:shapemode] a few examples are given. \stopcombination \stopplacefigure +\stopsubsection + +\startsubsection[title={Symbols or numbers}] + +Internally the implementation is different from \ALEPH. First of all we use no +whatsits but dedicated nodes, but also we have only 4 directions that are mapped +onto 4 numbers. A text direction node can mark the start or end of a sequence of +nodes, and therefore has two states. At the \TEX\ end we don't see these states +because \TEX\ itself will add proper end state nodes if needed. + +The symbolic names \type {TLT}, \type {TRT}, etc.\ originate in \OMEGA. In +\LUATEX\ we also have a number based model which sometimes makes more sense. + +\starttabulate[|c|l|l|] +\DB value \BC equivalent \NC \NR +\TB +\BC \type {0} \NC TLT \NC \NR +\BC \type {1} \NC TRT \NC \NR +\BC \type {2} \NC LTL \NC \NR +\BC \type {3} \NC RTT \NC \NR +\LL +\stoptabulate + +We support the \OMEGA\ primitives \orm {textdir}, \orm {pardir}, \orm {pagedir}, +\orm {pardir} and \orm {mathdir}. These accept three character keywords. The +primitives that set the direction by number are: \lpr {textdirection}, \lpr +{pardirection}, \lpr {pagedirection} and \lpr {bodydirection} and \lpr +{mathdirection}. When specifying a direction for a box you can use \type {bdir} +instead of \type {dir}. + +\stopsubsection + \stopsection \startsection[title=Implementation notes] @@ -1199,14 +1275,9 @@ structures, some of the macros have been duplicated. For instance, there are now {token_info}. All access to the variable memory array is now hidden behind a macro called \type {vmem}. We mention this because using the \TEX book as reference is still quite valid but not for memory related details. Another -significate detail is that we have double linked node lists and that most nodes +significant detail is that we have double linked node lists and that most nodes carry more data. -The implementation of the growth of two arrays (via reallocation) introduces a -potential pitfall: the memory arrays should never be used as the left hand side -of a statement that can modify the array in question. Details like this are -of no concern to users. - The input line buffer and pool size are now also reallocated when needed, and the \type {texmf.cnf} settings \type {buf_size} and \type {pool_size} are silently ignored. @@ -1252,13 +1323,15 @@ control sequences that uses a prefix that is otherwise impossible to obtain. \stopsubsection -\startsubsection[title=Compressed format] +\startsubsection[title=The compressed format file] \topicindex {format} The format is passed through \type {zlib}, allowing it to shrink to roughly half of the size it would have had in uncompressed form. This takes a bit more \CPU\ -cycles but much less disk \IO, so it should still be faster. +cycles but much less disk \IO, so it should still be faster. We use a level~3 +compression which we found to be the optimal trade|-|off between filesize and +decompression speed. \stopsubsection diff --git a/manual/luatex-nodes.tex b/manual/luatex-nodes.tex index 032c7df1f..573bfd8d8 100644 --- a/manual/luatex-nodes.tex +++ b/manual/luatex-nodes.tex @@ -6,12 +6,16 @@ \startchapter[reference=nodes,title={Nodes}] -\section{\LUA\ node representation} +\startsection[title={\LUA\ node representation}][library=node] \topicindex {nodes} -\TEX's nodes are represented in \LUA\ as userdata object with a variable set of -fields. In the following syntax tables, such the type of such a userdata object +\libindex {fields} +\libindex {subtypes} +\libindex {values} + +\TEX's nodes are represented in \LUA\ as userdata objects with a variable set of +fields. In the following syntax tables, such as the type of such a userdata object is represented as \syntax {<node>}. The current return value of \type {node.types()} is: @@ -32,62 +36,17 @@ names as in traditional \ETEX. Keep in mind that these \ETEX\ node numbers are different from the real internal ones and that there are more \ETEX\ node types than~15. -You can ask for a list of fields with the \type {node.fields} (which takes an id) -and for valid subtypes with \type {node.subtypes} (which takes a string because -eventually we might support more used enumerations). - -The \type {node.values} function reports some used values. Valid arguments are -\nod {dir}, \type {direction}, \nod {glue}, \whs {pdf_literal}, \whs -{pdf_action}, \whs {pdf_window} and \whs {color_stack}. Keep in mind that the -setters normally expect a number, but this helper gives you a list of what -numbers matter. For practical reason the \type {pagestate} values are also -reported with this helper. - -\subsection{Attributes} - -\topicindex {attributes} - -The newly introduced attribute registers are non|-|trivial, because the value -that is attached to a node is essentially a sparse array of key|-|value pairs. It -is generally easiest to deal with attribute lists and attributes by using the -dedicated functions in the \type {node} library, but for completeness, here is -the low|-|level interface. - -\subsubsection{attribute_list nodes} - -\topicindex {nodes+attributes} - -An \nod {attribute_list} item is used as a head pointer for a list of attribute -items. It has only one user-visible field: - -\starttabulate[|l|l|p|] -\DB field \BC type \BC explanation \NC \NR -\TB -\NC \type{next} \NC node \NC pointer to the first attribute \NC \NR -\LL -\stoptabulate - -\subsubsection{\nod {attr} nodes} - -A normal node's attribute field will point to an item of type \nod -{attribute_list}, and the \type {next} field in that item will point to the first -defined \quote {attribute} item, whose \type {next} will point to the second -\quote {attribute} item, etc. - -\starttabulate[|l|l|p|] -\DB field \BC type \BC explanation \NC \NR -\TB -\NC \type{next} \NC node \NC pointer to the next attribute \NC \NR -\NC \type{number} \NC number \NC the attribute type id \NC \NR -\NC \type{value} \NC number \NC the attribute value \NC \NR -\LL -\stoptabulate +You can ask for a list of fields with \type {node.fields} and for valid subtypes +with \type {node.subtypes}. The \type {node.values} function reports some used +values. Valid arguments are \nod {dir}, \type {direction}, \nod {glue}, \whs +{pdf_literal}, \whs {pdf_action}, \whs {pdf_window} and \whs {color_stack}. Keep +in mind that the setters normally expect a number, but this helper gives you a +list of what numbers matter. For practical reason the \type {pagestate} values +are also reported with this helper. -As mentioned it's better to use the official helpers rather than edit these -fields directly. For instance the \type {prev} field is used for other purposes -and there is no double linked list. +\stopsection -\subsection{Main text nodes} +\startsection[title={Main text nodes}] \topicindex {nodes+text} @@ -103,10 +62,10 @@ present in all nodes regardless of their type, these are: \LL \stoptabulate -The \type {subtype} is sometimes just a stub entry. Not all nodes actually use -the \type {subtype}, but this way you can be sure that all nodes accept it as a -valid field name, and that is often handy in node list traversal. In the -following tables \type {next} and \type {id} are not explicitly mentioned. +The \type {subtype} is sometimes just a dummy entry because not all nodes +actually use the \type {subtype}, but this way you can be sure that all nodes +accept it as a valid field name, and that is often handy in node list traversal. +In the following tables \type {next} and \type {id} are not explicitly mentioned. Besides these three fields, almost all nodes also have an \type {attr} field, and there is a also a field called \type {prev}. That last field is always present, @@ -116,7 +75,7 @@ the argument node list. By now most of \TEX's node processing makes sure that th \type {prev} nodes are valid but there can be exceptions, especially when the internal magic uses a leading \nod {temp} nodes to temporarily store a state. -\subsubsection{\nod {hlist} nodes} +\subsection{\nod {hlist} nodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -148,7 +107,7 @@ Note: the field name \type {head} and \type {list} are both valid. Sometimes it makes more sense to refer to a list by \type {head}, sometimes \type {list} makes more sense. -\subsubsection{\nod {vlist} nodes} +\subsection{\nod {vlist} nodes} \topicindex {nodes+lists} \topicindex {lists} @@ -157,7 +116,7 @@ This node is similar to \nod {hlist}, except that \quote {shift} is a displaceme perpendicular to the line progression direction, and \quote {subtype} only has the values 0, 4, and~5. -\subsubsection{\nod {rule} nodes} +\subsection{\nod {rule} nodes} \topicindex {nodes+rules} \topicindex {rules} @@ -167,18 +126,19 @@ also use rules to store reuseable objects and images. User nodes are invisible and can be intercepted by a callback. \starttabulate[|l|l|p|] -\DB field \BC type \BC explanation \NC \NR +\DB field \BC type \BC explanation \NC \NR \TB -\NC \type{subtype} \NC number \NC \showsubtypes {rule} \NC \NR -\NC \type{attr} \NC node \NC list of attributes \NC \NR -\NC \type{width} \NC number \NC the width of the rule where the special value - $-1073741824$ is used for \quote {running} glue dimensions \NC \NR -\NC \type{height} \NC number \NC the height of the rule (can be negative) \NC \NR -\NC \type{depth} \NC number \NC the depth of the rule (can be negative) \NC \NR -\NC \type{left} \NC number \NC shift at the left end (also subtracted from width) \NC \NR -\NC \type{right} \NC number \NC (subtracted from width) \NC \NR -\NC \type{dir} \NC string \NC the direction of this rule, see~\in[dirnodes] \NC \NR -\NC \type{index} \NC number \NC an optional index that can be referred to \NC \NR +\NC \type{subtype} \NC number \NC \showsubtypes {rule} \NC \NR +\NC \type{attr} \NC node \NC list of attributes \NC \NR +\NC \type{width} \NC number \NC the width of the rule where the special value + $-1073741824$ is used for \quote {running} glue dimensions \NC \NR +\NC \type{height} \NC number \NC the height of the rule (can be negative) \NC \NR +\NC \type{depth} \NC number \NC the depth of the rule (can be negative) \NC \NR +\NC \type{left} \NC number \NC shift at the left end (also subtracted from width) \NC \NR +\NC \type{right} \NC number \NC (subtracted from width) \NC \NR +\NC \type{dir} \NC string \NC the direction of this rule, see~\in[dirnodes] \NC \NR +\NC \type{index} \NC number \NC an optional index that can be referred to \NC \NR +\NC \type{transform} \NC number \NC an private variable (also used to specify outline width) \NC \NR \LL \stoptabulate @@ -192,9 +152,11 @@ the auto settings also happen in the backend). For a vertical rule \type {left} affects the height and \type {right} affects the depth. There is no matching interface at the \TEX\ end (although we can have more keywords for rules it would complicate matters and introduce a speed penalty.) However, you can just -construct a rule node with \LUA\ and write it to the \TEX\ input. +construct a rule node with \LUA\ and write it to the \TEX\ input. The \type +{outline} subtype is just a convenient variant and the \type {transform} field +specifies the width of the outline. -\subsubsection{\nod {ins} nodes} +\subsection{\nod {ins} nodes} \topicindex {nodes+insertions} \topicindex {insertions} @@ -218,11 +180,11 @@ There is a set of extra fields that concern the associated glue: \type {width}, These are all numbers. A warning: never assign a node list to the \type {head} field unless you are sure -its internal link structure is correct, otherwise an error may be result. You can use -\type {list} instead (often in functions you want to use local variable swith similar +its internal link structure is correct, otherwise an error may result. You can use +\type {list} instead (often in functions you want to use local variable with similar names and both names are equally sensible). -\subsubsection{\nod {mark} nodes} +\subsection{\nod {mark} nodes} \topicindex {nodes+marks} \topicindex {marks} @@ -239,7 +201,7 @@ This one relates to the \prm {mark} primitive. \LL \stoptabulate -\subsubsection{\nod {adjust} nodes} +\subsection{\nod {adjust} nodes} \topicindex {nodes+adjust} \topicindex {adjust} @@ -256,9 +218,9 @@ This node comes from \prm {vadjust} primitive. \stoptabulate A warning: never assign a node list to the \type {head} field unless you are sure -its internal link structure is correct, otherwise an error may be result. +its internal link structure is correct, otherwise an error may be the result. -\subsubsection{\nod {disc} nodes} +\subsection{\nod {disc} nodes} \topicindex {nodes+discretionaries} \topicindex {discretionaries} @@ -299,10 +261,10 @@ Otherwise you can end up with an invalid internal perception of reality and \LUATEX\ might even decide to crash on you. It also means that running forward over for instance \type {pre} is ok but backward you need to stop at \type {pre}. And you definitely must not mess with the node that \type {prev} points to, if -only because it is not really an node but part of the disc data structure (so +only because it is not really a node but part of the disc data structure (so freeing it again might crash \LUATEX). -\subsubsection{\nod {math} nodes} +\subsection{\nod {math} nodes} \topicindex {nodes+math} \topicindex {math+nodes} @@ -323,7 +285,7 @@ There is a set of extra fields that concern the associated glue: \type {width}, \type {stretch}, \type {stretch_order}, \type {shrink} and \type {shrink_order}. These are all numbers. -\subsubsection{\nod {glue} nodes} +\subsection{\nod {glue} nodes} \topicindex {nodes+glue} \topicindex {glue} @@ -347,10 +309,11 @@ accessible fields: The effective width of some glue subtypes depends on the stretch or shrink needed to make the encapsulating box fit its dimensions. For instance, in a paragraph -lines normally have glue representing spaces and these stretch of shrink to make +lines normally have glue representing spaces and these stretch or shrink to make the content fit in the available space. The \type {effective_glue} function that takes a glue node and a parent (hlist or vlist) returns the effective width of -that glue item. +that glue item. When you pass \type {true} as third argument the value will be +rounded. A \nod {glue_spec} node is a special kind of node that is used for storing a set of glue values in registers. Originally they were also used to store properties @@ -386,7 +349,7 @@ so we decided to stick to that naming. A regular word space also results in a \type {spaceskip} subtype (this used to be a \type {userskip} with subtype zero). -\subsubsection{\nod {kern} nodes} +\subsection{\nod {kern} nodes} \topicindex {nodes+kerns} \topicindex {kerns} @@ -403,7 +366,7 @@ machinery can also add them. \LL \stoptabulate -\subsubsection{\nod {penalty} nodes} +\subsection{\nod {penalty} nodes} \topicindex {nodes+penalty} \topicindex {penalty} @@ -423,21 +386,21 @@ The subtypes are just informative and \TEX\ itself doesn't use them. When you run into an \type {linebreakpenalty} you need to keep in mind that it's a accumulation of \type {club}, \type{widow} and other relevant penalties. -\subsubsection[glyphnodes]{\nod {glyph} nodes} +\subsection[glyphnodes]{\nod {glyph} nodes} \topicindex {nodes+glyph} -\topicindex {glyph} +\topicindex {glyphs} -These are probably the mostly used nodes and although you can push on tin the -list with for instance \prm {char} \TEX\ will normally do it for you when it -considers some input to be text. +These are probably the mostly used nodes and although you can push them in the +current list with for instance \prm {char} \TEX\ will normally do it for you when +it considers some input to be text. \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR \TB -\NC \type{subtype} \NC number \NC bitfield \NC \NR +\NC \type{subtype} \NC number \NC bit field \NC \NR \NC \type{attr} \NC node \NC list of attributes \NC \NR -\NC \type{char} \NC number \NC the chatacter index in the font \NC \NR +\NC \type{char} \NC number \NC the character index in the font \NC \NR \NC \type{font} \NC number \NC the font identifier \NC \NR \NC \type{lang} \NC number \NC the language identifier \NC \NR \NC \type{left} \NC number \NC the frozen \type {\lefthyphenmnin} value \NC \NR @@ -446,16 +409,16 @@ considers some input to be text. \NC \type{components} \NC node \NC pointer to ligature components \NC \NR \NC \type{xoffset} \NC number \NC a virtual displacement in horizontal direction \NC \NR \NC \type{yoffset} \NC number \NC a virtual displacement in vertical direction \NC \NR -%NC \type{xadvance} \NC number \NC an additional advance after the glyph (experimental) \NC \NR \NC \type{width} \NC number \NC the (original) width of the character \NC \NR \NC \type{height} \NC number \NC the (original) height of the character\NC \NR \NC \type{depth} \NC number \NC the (original) depth of the character\NC \NR \NC \type{expansion_factor} \NC number \NC the to be applied expansion_factor \NC \NR +\NC \type{data} \NC number \NC a general purpose field for users (we had room for it) \NC \NR \LL \stoptabulate The \type {width}, \type {height} and \type {depth} values are read|-|only. The -\type {expansion_factor} is assigned in the parbuilder and used in the backend. +\type {expansion_factor} is assigned in the par builder and used in the backend. A warning: never assign a node list to the components field unless you are sure its internal link structure is correct, otherwise an error may be result. Valid @@ -495,7 +458,7 @@ helpers are not always faster than separate calls but they sometimes permit making more readable tests. The \type {uses_font} helpers takes a node and font id and returns true when a glyph or disc node references that font. -\subsubsection{\nod {boundary} nodes} +\subsection{\nod {boundary} nodes} \topicindex {nodes+boundary} \topicindex {boundary} @@ -512,12 +475,12 @@ This node relates to the \prm {noboundary}, \prm {boundary}, \prm \LL \stoptabulate -\subsubsection{\nod {local_par} nodes} +\subsection{\nod {local_par} nodes} \topicindex {nodes+paragraphs} \topicindex {paragraphs} -This node in inserted a the start of a paragraph. You should not mess +This node is inserted at the start of a paragraph. You should not mess too much with this one. \starttabulate[|l|l|p|] @@ -536,9 +499,9 @@ too much with this one. A warning: never assign a node list to the \type {box_left} or \type {box_right} field unless you are sure its internal link structure is correct, otherwise an -error may be result. +error may result. -\subsubsection[dirnodes]{\nod {dir} nodes} +\subsection[dirnodes]{\nod {dir} nodes} \topicindex {nodes+direction} \topicindex {directions} @@ -560,13 +523,13 @@ Direction specifiers are three|-|letter combinations of \type {T}, \type {B}, \startitemize[packed] \startitem - the first is the direction of the \quote{top} of paragraphs. + the first is the direction of the \quote{top} of paragraphs \stopitem \startitem - the second is the direction of the \quote{start} of lines. + the second is the direction of the \quote{start} of lines \stopitem \startitem - the third is the direction of the \quote{top} of glyphs. + the third is the direction of the \quote{top} of glyphs \stopitem \stopitemize @@ -576,7 +539,7 @@ However, only four combinations are accepted: \type {TLT}, \type {TRT}, \type direction is indicated by a \type {+} or \type {-}, indicating whether the value is pushed or popped from the direction stack. -\subsubsection{\nod {margin_kern} nodes} +\subsection{\nod {marginkern} nodes} \topicindex {nodes+paragraphs} \topicindex {paragraphs} @@ -587,14 +550,16 @@ Margin kerns result from protrusion. \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR \TB -\NC \type{subtype} \NC number \NC \showsubtypes{margin_kern} \NC \NR +\NC \type{subtype} \NC number \NC \showsubtypes{marginkern} \NC \NR \NC \type{attr} \NC node \NC list of attributes \NC \NR \NC \type{width} \NC number \NC the advance of the kern \NC \NR \NC \type{glyph} \NC node \NC the glyph to be used \NC \NR \LL \stoptabulate -\subsection{Math noads} +\stopsection + +\startsection[title={Math noads}] \topicindex {nodes+math} \topicindex {math+nodes} @@ -603,7 +568,7 @@ These are the so||called \quote {noad}s and the nodes that are specifically associated with math processing. Most of these nodes contain subnodes so that the list of possible fields is actually quite small. First, the subnodes: -\subsubsection{Math kernel subnodes} +\subsection{Math kernel subnodes} Many object fields in math mode are either simple characters in a specific family or math lists or node lists. There are four associated subnodes that represent @@ -612,7 +577,7 @@ these cases (in the following node descriptions these are indicated by the word The \type {next} and \type {prev} fields for these subnodes are unused. -\subsubsubsection{\nod {math_char} and \nod {math_text_char} subnodes} +\subsection{\nod {math_char} and \nod {math_text_char} subnodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -628,7 +593,7 @@ and family for a single glyph object. The \nod {math_text_char} is a special case that you will not normally encounter, it arises temporarily during math list conversion (its sole function is to suppress a following italic correction). -\subsubsubsection{\nod {sub_box} and \nod {sub_mlist} subnodes} +\subsection{\nod {sub_box} and \nod {sub_mlist} subnodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -643,9 +608,9 @@ the \type {head} points to a \quote {normal} vbox or hbox. For \nod {sub_mlist}, the \type {head} points to a math list that is yet to be converted. A warning: never assign a node list to the \type {head} field unless you are sure -its internal link structure is correct, otherwise an error may be result. +its internal link structure is correct, otherwise an error is triggered. -\subsubsubsection{\nod {delim} subnodes} +\subsection{\nod {delim} subnodes} There is a fifth subnode type that is used exclusively for delimiter fields. As before, the \type {next} and \type {prev} fields are unused. @@ -662,12 +627,12 @@ before, the \type {next} and \type {prev} fields are unused. \stoptabulate The fields \type {large_char} and \type {large_fam} can be zero, in that case the -font that is sed for the \type {small_fam} is expected to provide the large +font that is set for the \type {small_fam} is expected to provide the large version as an extension to the \type {small_char}. -\subsubsection{Math core nodes} +\subsection{Math core nodes} -First, there are the objects (the \TEX book calls then \quote {atoms}) that are +First, there are the objects (the \TEX book calls them \quote {atoms}) that are associated with the simple math objects: ord, op, bin, rel, open, close, punct, inner, over, under, vcent. These all have the same fields, and they are combined into a single node type with separate subtypes for differentiation. @@ -692,7 +657,7 @@ Some noads have an option field. The values in this bitset are common: \LL \stoptabulate -\subsubsubsection{simple \nod {noad} nodes} +\subsection{simple \nod {noad} nodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -706,7 +671,7 @@ Some noads have an option field. The values in this bitset are common: \LL \stoptabulate -\subsubsubsection{\nod {accent} nodes} +\subsection{\nod {accent} nodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -721,7 +686,7 @@ Some noads have an option field. The values in this bitset are common: \LL \stoptabulate -\subsubsubsection{\nod {style} nodes} +\subsection{\nod {style} nodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -734,7 +699,7 @@ There are eight possibilities for the string value: one of \type {display}, \type {text}, \type {script}, or \type {scriptscript}. Each of these can have be prefixed by \type {cramped}. -\subsubsubsection{\nod {choice} nodes} +\subsection{\nod {choice} nodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -749,9 +714,9 @@ be prefixed by \type {cramped}. Warning: never assign a node list to the \type {display}, \type {text}, \type {script}, or \type {scriptscript} field unless you are sure its internal link -structure is correct, otherwise an error may be result. +structure is correct, otherwise an error can occur. -\subsubsubsection{\nod {radical} nodes} +\subsection{\nod {radical} nodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -770,9 +735,9 @@ structure is correct, otherwise an error may be result. Warning: never assign a node list to the \type {nucleus}, \type {sub}, \type {sup}, \type {left}, or \type {degree} field unless you are sure its internal -link structure is correct, otherwise an error may be result. +link structure is correct, otherwise an error can be triggered. -\subsubsubsection{\nod {fraction} nodes} +\subsection{\nod {fraction} nodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -790,9 +755,9 @@ link structure is correct, otherwise an error may be result. Warning: never assign a node list to the \type {num}, or \type {denom} field unless you are sure its internal link structure is correct, otherwise an error -may be result. +can result. -\subsubsubsection{\nod {fence} nodes} +\subsection{\nod {fence} nodes} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -811,10 +776,12 @@ may be result. Warning: some of these fields are used by the renderer and might get adapted in the process. -\subsection{whatsit nodes} +\stopsection -Whatsit nodes come in many subtypes that you can ask for by running -\type {node.whatsits()}: +\startsection[title={Front|-|end whatsits}] + +Whatsit nodes come in many subtypes that you can ask for them by running +\type {node.whatsits}: \startluacode for id, name in table.sortedpairs(node.whatsits()) do context.type(name) @@ -825,9 +792,11 @@ Whatsit nodes come in many subtypes that you can ask for by running \stopluacode . % period -\subsubsection{front|-|end whatsits} +Some of them are generic and independent of the output mode and others are +specific to the chosen backend: \DVI\ or \PDF. Here we discuss the generic +font|-|end nodes nodes. -\subsubsubsection{\whs {open}} +\subsection{\whs {open}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -840,7 +809,7 @@ Whatsit nodes come in many subtypes that you can ask for by running \LL \stoptabulate -\subsubsubsection{\whs {write}} +\subsection{\whs {write}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -851,7 +820,7 @@ Whatsit nodes come in many subtypes that you can ask for by running \LL \stoptabulate -\subsubsubsection{\whs {close}} +\subsection{\whs {close}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -861,7 +830,7 @@ Whatsit nodes come in many subtypes that you can ask for by running \LL \stoptabulate -\subsubsubsection{\whs {user_defined}} +\subsection{\whs {user_defined}} User|-|defined whatsit nodes can only be created and handled from \LUA\ code. In effect, they are an extension to the extension mechanism. The \LUATEX\ engine @@ -881,7 +850,7 @@ will simply step over such whatsits without ever looking at the contents. \stoptabulate The \type {type} can have one of six distinct values. The number is the \ASCII\ -value if the first character if the type name (so you can use string.byte("l") +value if the first character of the type name (so you can use string.byte("l") instead of \type {108}). \starttabulate[|r|c|p|] @@ -896,7 +865,7 @@ instead of \type {108}). \LL \stoptabulate -\subsubsubsection{\whs {save_pos}} +\subsection{\whs {save_pos}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -905,15 +874,15 @@ instead of \type {108}). \LL \stoptabulate -\subsubsubsection{\whs {late_lua}} +\subsection{\whs {late_lua}} \starttabulate[|l|l|p|] -\DB field \BC type \BC explanation \NC \NR +\DB field \BC type \BC explanation \NC \NR \TB -\NC \type{attr} \NC node \NC list of attributes \NC \NR -\NC \type{data} \NC string \NC data to execute \NC \NR -\NC \type{string} \NC string \NC data to execute \NC \NR -\NC \type{name} \NC string \NC the name to use for \LUA\ error reporting \NC \NR +\NC \type{attr} \NC node \NC list of attributes \NC \NR +\NC \type{data} \NC string or function \NC the to be written information stored as \LUA\ value \NC \NR +\NC \type{token} \NC string \NC the to be written information stored as token list \NC \NR +\NC \type{name} \NC string \NC the name to use for \LUA\ error reporting \NC \NR \LL \stoptabulate @@ -921,9 +890,14 @@ The difference between \type {data} and \type {string} is that on assignment, th \type {data} field is converted to a token list, cf.\ use as \lpr {latelua}. The \type {string} version is treated as a literal string. -\subsubsection{\DVI\ backend whatsits} +\stopsection + +\startsection[title={\DVI\ backend whatsits}] -\subsubsection{\whs {special}} +\subsection{\whs {special}} + +There is only one \DVI\ backend whatsit, and it just flushes its content to the +output file. \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -933,16 +907,19 @@ The difference between \type {data} and \type {string} is that on assignment, th \LL \stoptabulate -\subsubsection{\PDF\ backend whatsits} +\stopsection + +\startsection[title={\PDF\ backend whatsits}] -\subsubsubsection{\whs {pdf_literal}} +\subsection{\whs {pdf_literal}} \starttabulate[|l|l|p|] -\DB field \BC type \BC explanation \NC \NR +\DB field \BC type \BC explanation \NC \NR \TB -\NC \type{attr} \NC node \NC list of attributes \NC \NR -\NC \type{mode} \NC number \NC the \quote {mode} setting of this literal \NC \NR -\NC \type{data} \NC string \NC the \orm {pdfliteral} information \NC \NR +\NC \type{attr} \NC node \NC list of attributes \NC \NR +\NC \type{mode} \NC number \NC the \quote {mode} setting of this literal \NC \NR +\NC \type{data} \NC string \NC the to be written information stored as \LUA\ string \NC \NR +\NC \type{token} \NC string \NC the to be written information stored as token list \NC \NR \LL \stoptabulate @@ -959,11 +936,11 @@ Possible mode values are: \LL \stoptabulate -The higher the number, the less checking and the more you can run into troubles. +The higher the number, the less checking and the more you can run into trouble. Especially the \type {raw} variant can produce bad \PDF\ so you can best check what you generate. -\subsubsubsection{\whs {pdf_refobj}} +\subsection{\whs {pdf_refobj}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -973,7 +950,7 @@ what you generate. \LL \stoptabulate -\subsubsubsection{\whs {pdf_annot}} +\subsection{\whs {pdf_annot}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -987,7 +964,7 @@ what you generate. \LL \stoptabulate -\subsubsubsection{\whs {pdf_start_link}} +\subsection{\whs {pdf_start_link}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1002,7 +979,7 @@ what you generate. \LL \stoptabulate -\subsubsubsection{\whs {pdf_end_link}} +\subsection{\whs {pdf_end_link}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1011,7 +988,7 @@ what you generate. \LL \stoptabulate -\subsubsubsection{\whs {pdf_dest}} +\subsection{\whs {pdf_dest}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1029,9 +1006,9 @@ what you generate. \LL \stoptabulate -\subsubsubsection{\whs {pdf_action}} +\subsection{\whs {pdf_action}} -These are a special kind of item that only appears inside \PDF\ start link +These are a special kind of items that only appear inside \PDF\ start link objects. \starttabulate[|l|l|p|] @@ -1069,7 +1046,7 @@ Valid window types are: \LL \stoptabulate -\subsubsubsection{\whs {pdf_thread}} +\subsection{\whs {pdf_thread}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1085,7 +1062,7 @@ Valid window types are: \LL \stoptabulate -\subsubsubsection{\whs {pdf_start_thread}} +\subsection{\whs {pdf_start_thread}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1101,7 +1078,7 @@ Valid window types are: \LL \stoptabulate -\subsubsubsection{\whs {pdf_end_thread}} +\subsection{\whs {pdf_end_thread}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1110,7 +1087,7 @@ Valid window types are: \LL \stoptabulate -\subsubsubsection{\whs {pdf_colorstack}} +\subsection{\whs {pdf_colorstack}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1122,7 +1099,7 @@ Valid window types are: \LL \stoptabulate -\subsubsubsection{\whs {pdf_setmatrix}} +\subsection{\whs {pdf_setmatrix}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1132,7 +1109,7 @@ Valid window types are: \LL \stoptabulate -\subsubsubsection{\whs {pdf_save}} +\subsection{\whs {pdf_save}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1141,7 +1118,7 @@ Valid window types are: \LL \stoptabulate -\subsubsubsection{\whs {pdf_restore}} +\subsection{\whs {pdf_restore}} \starttabulate[|l|l|p|] \DB field \BC type \BC explanation \NC \NR @@ -1150,7 +1127,11 @@ Valid window types are: \LL \stoptabulate -\section{The \type {node} library} +\stopsection + +\startsection[title={The \type {node} library}][library=node] + +\subsection {Introduction} The \type {node} library contains functions that facilitate dealing with (lists of) nodes and their values. They allow you to create, alter, copy, delete, and @@ -1185,8 +1166,7 @@ Each node has at least the three fields \type {next}, \type {id}, and \type {sub \stopitemize The other available fields depend on the \type {id} (and for \quote {whatsits}, -the \type {subtype}) of the node. Further details on the various fields and their -meanings are given in~\in{chapter}[nodes]. +the \type {subtype}) of the node. Support for \nod {unset} (alignment) nodes is partial: they can be queried and modified from \LUA\ code, but not created. @@ -1203,78 +1183,90 @@ call the node freeing functions yourself when you are no longer in need of a nod (list). Nodes form linked lists without reference counting, so you have to be careful that when control returns back to \LUATEX\ itself, you have not deleted nodes that are still referenced from a \type {next} pointer elsewhere, and that -you did not create nodes that are referenced more than once. +you did not create nodes that are referenced more than once. Normally the setters +and getters handle this for you. There are statistics available with regards to the allocated node memory, which can be handy for tracing. -\subsection{Node handling functions} - -\subsubsection{\type {node.is_node}} +\subsection{\type {is_node}} \topicindex {nodes+functions} +\libindex {is_node} + \startfunctioncall -<boolean> t = +<boolean|integer> t = node.is_node(<any> item) \stopfunctioncall -This function returns true if the argument is a userdata object of -type \type {<node>}. +This function returns a number (the internal index of the node) if the argument +is a userdata object of type \type {<node>} and false when no node is passed. + +\subsection{\type {types} and \type {whatsits}} + +\libindex {types} +\libindex {whatsits} -\subsubsection{\type {node.types}} +This function returns an array that maps node id numbers to node type strings, +providing an overview of the possible top|-|level \type {id} types. \startfunctioncall <table> t = node.types() \stopfunctioncall -This function returns an array that maps node id numbers to node type strings, -providing an overview of the possible top|-|level \type {id} types. - -\subsubsection{\type {node.whatsits}} +\TEX's \quote {whatsits} all have the same \type {id}. The various subtypes are +defined by their \type {subtype} fields. The function is much like \type {types}, +except that it provides an array of \type {subtype} mappings. \startfunctioncall <table> t = node.whatsits() \stopfunctioncall -\TEX's \quote {whatsits} all have the same \type {id}. The various subtypes are -defined by their \type {subtype} fields. The function is much like \type -{node.types}, except that it provides an array of \type {subtype} mappings. +\subsection{\type {id}} -\subsubsection{\type {node.id}} +\libindex{id} + +This converts a single type name to its internal numeric representation. \startfunctioncall <number> id = node.id(<string> type) \stopfunctioncall -This converts a single type name to its internal numeric representation. +\subsection{\type {type} and \type {subtype}} -\subsubsection{\type {node.subtype}} +\libindex {type} +\libindex {subtype} + +In the argument is a number, then the next function converts an internal numeric +representation to an external string representation. Otherwise, it will return +the string \type {node} if the object represents a node, and \type {nil} +otherwise. \startfunctioncall -<number> subtype = - node.subtype(<string> type) +<string> type = + node.type(<any> n) \stopfunctioncall -This converts a single whatsit name to its internal numeric representation (\type -{subtype}). - -\subsubsection{\type {node.type}} +This next one converts a single whatsit name to its internal numeric +representation (\type {subtype}). \startfunctioncall -<string> type = - node.type(<any> n) +<number> subtype = + node.subtype(<string> type) \stopfunctioncall -In the argument is a number, then this function converts an internal numeric -representation to an external string representation. Otherwise, it will return -the string \type {node} if the object represents a node, and \type {nil} -otherwise. +\subsection{\type {fields}} + +\libindex {fields} -\subsubsection{\type {node.fields}} +This function returns an array of valid field names for a particular type of +node. If you want to get the valid fields for a \quote {whatsit}, you have to +supply the second argument also. In other cases, any given second argument will +be silently ignored. \startfunctioncall <table> t = @@ -1283,24 +1275,29 @@ otherwise. node.fields(<number> id, <number> subtype) \stopfunctioncall -This function returns an array of valid field names for a particular type of -node. If you want to get the valid fields for a \quote {whatsit}, you have to -supply the second argument also. In other cases, any given second argument will -be silently ignored. +The function accepts string \type {id} and \type {subtype} values as well. -This function accepts string \type {id} and \type {subtype} values as well. +\subsection{\type {has_field}} -\subsubsection{\type {node.has_field}} +\libindex {has_field} + +This function returns a boolean that is only true if \type {n} is +actually a node, and it has the field. \startfunctioncall <boolean> t = node.has_field(<node> n, <string> field) \stopfunctioncall -This function returns a boolean that is only true if \type {n} is -actually a node, and it has the field. +\subsection{\type {new}} -\subsubsection{\type {node.new}} +\libindex{new} + +The \type {new} function creates a new node. All its fields are initialized to +either zero or \type {nil} except for \type {id} and \type {subtype}. Instead of +numbers you can also use strings (names). If you create a new \nod {whatsit} node +the second argument is required. As with all node functions, this function +creates a node at the \TEX\ level. \startfunctioncall <node> n = @@ -1309,15 +1306,16 @@ actually a node, and it has the field. node.new(<number> id, <number> subtype) \stopfunctioncall -Creates a new node. All of the new node's fields are initialized to either zero -or \type {nil} except for \type {id} and \type {subtype} (if supplied). If you -want to create a new whatsit, then the second argument is required, otherwise it -need not be present. As with all node functions, this function creates a node on -the \TEX\ level. +\subsection{\type {free}, \type {flush_node} and \type {flush_list}} -This function accepts string \type {id} and \type {subtype} values as well. +\libindex{free} +\libindex{flush_node} +\libindex{flush_list} -\subsubsection{\type {node.free} and \type {node.flush_node}} +The next one the node \type {n} from \TEX's memory. Be careful: no checks are +done on whether this node is still pointed to from a register or some \type +{next} field: it is up to you to make sure that the internal data structures +remain correct. \startfunctioncall <node> next = @@ -1325,35 +1323,33 @@ This function accepts string \type {id} and \type {subtype} values as well. flush_node(<node> n) \stopfunctioncall -Removes the node \type {n} from \TEX's memory. Be careful: no checks are done on -whether this node is still pointed to from a register or some \type {next} field: -it is up to you to make sure that the internal data structures remain correct. - The \type {free} function returns the next field of the freed node, while the \type {flush_node} alternative returns nothing. -\subsubsection{\type {node.flush_list}} +A list starting with node \type {n} can be flushed from \TEX's memory too. Be +careful: no checks are done on whether any of these nodes is still pointed to +from a register or some \type {next} field: it is up to you to make sure that the +internal data structures remain correct. \startfunctioncall node.flush_list(<node> n) \stopfunctioncall -Removes the node list \type {n} and the complete node list following \type {n} -from \TEX's memory. Be careful: no checks are done on whether any of these nodes -is still pointed to from a register or some \type {next} field: it is up to you -to make sure that the internal data structures remain correct. +\subsection{\type {copy} and \type {copy_list}} -\subsubsection{\type {node.copy}} +\libindex{copy} +\libindex{copy_list} + +This creates a deep copy of node \type {n}, including all nested lists as in the case +of a hlist or vlist node. Only the \type {next} field is not copied. \startfunctioncall <node> m = node.copy(<node> n) \stopfunctioncall -Creates a deep copy of node \type {n}, including all nested lists as in the case -of a hlist or vlist node. Only the \type {next} field is not copied. - -\subsubsection{\type {node.copy_list}} +A deep copy of the node list that starts at \type {n} can be created too. If +\type {m} is also given, the copy stops just before node \type {m}. \startfunctioncall <node> m = @@ -1362,42 +1358,37 @@ of a hlist or vlist node. Only the \type {next} field is not copied. node.copy_list(<node> n, <node> m) \stopfunctioncall -Creates a deep copy of the node list that starts at \type {n}. If \type {m} is -also given, the copy stops just before node \type {m}. +Note that you cannot copy attribute lists this way. However, there is normally no +need to copy attribute lists as when you do assignments to the \type {attr} field +or make changes to specific attributes, the needed copying and freeing takes +place automatically. + +\subsection{\type {prev} and \type{next}} -Note that you cannot copy attribute lists this way, specialized functions for -dealing with attribute lists will be provided later but are not there yet. -However, there is normally no need to copy attribute lists as when you do -assignments to the \type {attr} field or make changes to specific attributes, the -needed copying and freeing takes place automatically. +\libindex{prev} +\libindex{next} -\subsubsection{\type {node.next}} +These returns the node preceding or following the given node, or \type {nil} if +there is no such node. \startfunctioncall <node> m = node.next(<node> n) -\stopfunctioncall - -Returns the node following this node, or \type {nil} if there is no such node. - -\subsubsection{\type {node.prev}} - -\startfunctioncall <node> m = node.prev(<node> n) \stopfunctioncall -Returns the node preceding this node, or \type {nil} if there is no such node. +\subsection{\type {current_attr}} -\subsubsection{\type {node.current_attr}} +\libindex{current_attr} + +This returns the currently active list of attributes, if there is one. \startfunctioncall <node> m = node.current_attr() \stopfunctioncall -Returns the currently active list of attributes, if there is one. - The intended usage of \type {current_attr} is as follows: \starttyping @@ -1427,7 +1418,16 @@ attribute list, not a copy thereof. Therefore, changing any of the attributes in the list will change these values for all nodes that have the current attribute list assigned to them. -\subsubsection{\type {node.hpack}} +\subsection{\type {hpack}} + +\libindex {hpack} + +This function creates a new hlist by packaging the list that begins at node \type +{n} into a horizontal box. With only a single argument, this box is created using +the natural width of its components. In the three argument form, \type {info} +must be either \type {additional} or \type {exactly}, and \type {w} is the +additional (\type {\hbox spread}) or exact (\type {\hbox to}) width to be used. +The second return value is the badness of the generated box. \startfunctioncall <node> h, <number> b = @@ -1438,21 +1438,22 @@ list assigned to them. node.hpack(<node> n, <number> w, <string> info, <string> dir) \stopfunctioncall -This function creates a new hlist by packaging the list that begins at node \type -{n} into a horizontal box. With only a single argument, this box is created using -the natural width of its components. In the three argument form, \type {info} -must be either \type {additional} or \type {exactly}, and \type {w} is the -additional (\type {\hbox spread}) or exact (\type {\hbox to}) width to be used. -The second return value is the badness of the generated box. +Caveat: there can be unexpected side|-|effects to this function, like updating +some of the \prm {marks} and \type {\inserts}. Also note that the content of +\type {h} is the original node list \type {n}: if you call \type {node.free(h)} +you will also free the node list itself, unless you explicitly set the \type +{list} field to \type {nil} beforehand. And in a similar way, calling \type +{node.free(n)} will invalidate \type {h} as well! + +\subsection{\type {vpack}} -Caveat: at this moment, there can be unexpected side|-|effects to this function, -like updating some of the \prm {marks} and \type {\inserts}. Also note that the -content of \type {h} is the original node list \type {n}: if you call \type -{node.free(h)} you will also free the node list itself, unless you explicitly set -the \type {list} field to \type {nil} beforehand. And in a similar way, calling -\type {node.free(n)} will invalidate \type {h} as well! +\libindex {vpack} -\subsubsection{\type {node.vpack}} +This function creates a new vlist by packaging the list that begins at node \type +{n} into a vertical box. With only a single argument, this box is created using +the natural height of its components. In the three argument form, \type {info} +must be either \type {additional} or \type {exactly}, and \type {w} is the +additional (\type {\vbox spread}) or exact (\type {\vbox to}) height to be used. \startfunctioncall <node> h, <number> b = @@ -1463,17 +1464,26 @@ the \type {list} field to \type {nil} beforehand. And in a similar way, calling node.vpack(<node> n, <number> w, <string> info, <string> dir) \stopfunctioncall -This function creates a new vlist by packaging the list that begins at node \type -{n} into a vertical box. With only a single argument, this box is created using -the natural height of its components. In the three argument form, \type {info} -must be either \type {additional} or \type {exactly}, and \type {w} is the -additional (\type {\vbox spread}) or exact (\type {\vbox to}) height to be used. +The second return value is the badness of the generated box. See the description +of \type {hpack} for a few memory allocation caveats. -The second return value is the badness of the generated box. +\subsection{\type {prepend_prevdepth}} + +\libindex {prepend_prevdepth} + +This function is somewhat special in the sense that it is an experimental helper +that adds the interlinespace to a line keeping the baselineskip and lineskip into +account. -See the description of \type {node.hpack()} for a few memory allocation caveats. +\startfunctioncall +<node> n, <number> delta = + node.prepend_prevdepth(<node> n,<number> prevdepth) +\stopfunctioncall + +\subsection{\type {dimensions} and \type {rangedimensions}} -\subsubsection{\type {node.dimensions}, \type {node.rangedimensions}} +\libindex{dimensions} +\libindex{rangedimensions} \startfunctioncall <number> w, <number> h, <number> d = @@ -1538,7 +1548,9 @@ cases: node.rangedimensions(<node> parent, <node> first, <node> last) \stopfunctioncall -\subsubsection{\type {node.mlist_to_hlist}} +\subsection{\type {mlist_to_hlist}} + +\libindex {mlist_to_hlist} \startfunctioncall <node> h = @@ -1549,7 +1561,7 @@ This runs the internal mlist to hlist conversion, converting the math list in \type {n} into the horizontal list \type {h}. The interface is exactly the same as for the callback \cbk {mlist_to_hlist}. -\subsubsection{\type {node.slide}} +\subsection{\type {slide}} \startfunctioncall <node> m = @@ -1560,7 +1572,9 @@ Returns the last node of the node list that starts at \type {n}. As a side|-|effect, it also creates a reverse chain of \type {prev} pointers between nodes. -\subsubsection{\type {node.tail}} +\subsection{\type {tail}} + +\libindex {tail} \startfunctioncall <node> m = @@ -1569,7 +1583,10 @@ nodes. Returns the last node of the node list that starts at \type {n}. -\subsubsection{\type {node.length}} +\subsection{\type {length} and type {count}} + +\libindex {length} +\libindex {count} \startfunctioncall <number> i = @@ -1582,8 +1599,6 @@ Returns the number of nodes contained in the node list that starts at \type {n}. If \type {m} is also supplied it stops at \type {m} instead of at the end of the list. The node \type {m} is not counted. -\subsubsection{\type {node.count}} - \startfunctioncall <number> i = node.count(<number> id, <node> n) @@ -1594,14 +1609,29 @@ list. The node \type {m} is not counted. Returns the number of nodes contained in the node list that starts at \type {n} that have a matching \type {id} field. If \type {m} is also supplied, counting stops at \type {m} instead of at the end of the list. The node \type {m} is not -counted. +counted. This function also accept string \type {id}'s. + +\subsection{\type {is_char} and \type {is_glyph}} -This function also accept string \type {id}'s. +\libindex {is_char} +\libindex {is_glyph} -\subsubsection{\type {node.traverse}} +The subtype of a glyph node signals if the glyph is already turned into a character reference +or not. \startfunctioncall -<node> t = +<boolean> b = + node.is_char(<node> n) +<boolean> b = + node.is_glyph(<node> n) +\stopfunctioncall + +\subsection{\type {traverse}} + +\libindex {traverse} + +\startfunctioncall +<node> t, id, subtype = node.traverse(<node> n) \stopfunctioncall @@ -1644,10 +1674,12 @@ pointers remain valid. If the above is unclear to you, see the section \quote {For Statement} in the \LUA\ Reference Manual. -\subsubsection{\type {node.traverse_id}} +\subsection{\type {traverse_id}} + +\libindex {traverse_id} \startfunctioncall -<node> t = +<node> t, subtype = node.traverse_id(<number> id, <node> n) \stopfunctioncall @@ -1672,17 +1704,45 @@ See the previous section for details. The change is in the local function \type end \stoptyping -\subsubsection{\type {node.traverse_char}} +\subsection{\type {traverse_char} and \type {traverse_glyph}} + +\libindex {traverse_char} +\libindex {traverse_glyph} -This iterators loops over the glyph nodes in a list. Only nodes with a subtype -less than 256 are seen. +The \type{traverse_char} iterator loops over the \nod {glyph} nodes in a list. +Only nodes with a subtype less than 256 are seen. \startfunctioncall -<node> n = +<node> n, font, char = node.traverse_char(<node> n) \stopfunctioncall -\subsubsection{\type {node.has_glyph}} +The \type{traverse_glyph} iterator loops over a list and returns the list and +filters all glyphs: + +\startfunctioncall +<node> n, font, char = + node.traverse_glyph(<node> n) +\stopfunctioncall + +\subsection{\type {traverse_list}} + +\libindex {traverse_list} + +This iterator loops over the \nod {hlist} and \nod {vlist} nodes in a list. + +\startfunctioncall +<node> n, id, subtype, list = + node.traverse_list(<node> n) +\stopfunctioncall + +The four return values can save some time compared to fetching these fields but +in practice you seldom need them all. So consider it a (side effect of +experimental) convenience. + +\subsection{\type {has_glyph}} + +\libindex {has_glyph} This function returns the first glyph or disc node in the given list: @@ -1691,7 +1751,9 @@ This function returns the first glyph or disc node in the given list: node.has_glyph(<node> n) \stopfunctioncall -\subsubsection{\type {node.end_of_math}} +\subsection{\type {end_of_math}} + +\libindex {end_of_math} \startfunctioncall <node> t = @@ -1699,11 +1761,13 @@ This function returns the first glyph or disc node in the given list: \stopfunctioncall Looks for and returns the next \type {math_node} following the \type {start}. If -the given node is a math endnode this helper return that node, else it follows -the list and return the next math endnote. If no such node is found nil is +the given node is a math end node this helper returns that node, else it follows +the list and returns the next math endnote. If no such node is found nil is returned. -\subsubsection{\type {node.remove}} +\subsection{\type {remove}} + +\libindex {remove} \startfunctioncall <node> head, current = @@ -1719,7 +1783,9 @@ no such node). The returned \type {head} is more important, because if the function is called with \type {current} equal to \type {head}, it will be changed. -\subsubsection{\type {node.insert_before}} +\subsection{\type {insert_before}} + +\libindex {insert_before} \startfunctioncall <node> head, new = @@ -1733,7 +1799,9 @@ mutated) \type {head} and the node \type {new}, set up to be part of the list (with correct \type {next} field). If \type {head} is initially \type {nil}, it will become \type {new}. -\subsubsection{\type {node.insert_after}} +\subsection{\type {insert_after}} + +\libindex {insert_after} \startfunctioncall <node> head, new = @@ -1746,7 +1814,9 @@ following \type {head}. It is your responsibility to make sure that \type the node \type {new}, set up to be part of the list (with correct \type {next} field). If \type {head} is initially \type {nil}, it will become \type {new}. -\subsubsection{\type {node.first_glyph}} +\subsection{\type {first_glyph}} + +\libindex {first_glyph} \startfunctioncall <node> n = @@ -1760,7 +1830,9 @@ with a subtype indicating it is a glyph, or \type {nil}. If \type {m} is given, processing stops at (but including) that node, otherwise processing stops at the end of the list. -\subsubsection{\type {node.ligaturing}} +\subsection{\type {ligaturing}} + +\libindex {ligaturing} \startfunctioncall <node> h, <node> t, <boolean> success = @@ -1773,7 +1845,9 @@ Apply \TEX-style ligaturing to the specified nodelist. The tail node \type {m} i optional. The two returned nodes \type {h} and \type {t} are the new head and tail (both \type {n} and \type {m} can change into a new ligature). -\subsubsection{\type {node.kerning}} +\subsection{\type {kerning}} + +\libindex {kerning} \startfunctioncall <node> h, <node> t, <boolean> success = @@ -1787,7 +1861,10 @@ optional. The two returned nodes \type {h} and \type {t} are the head and tail (either one of these can be an inserted kern node, because special kernings with word boundaries are possible). -\subsubsection{\type {node.unprotect_glyphs} and \type {node.unprotect_glyph}} +\subsection{\type {unprotect_glyph[s]}} + +\libindex {unprotect_glyphs} +\libindex {unprotect_glyph} \startfunctioncall node.unprotect_glyph(<node> n) @@ -1796,9 +1873,12 @@ node.unprotect_glyphs(<node> n,[<node> n]) Subtracts 256 from all glyph node subtypes. This and the next function are helpers to convert from \type {characters} to \type {glyphs} during node -processing. The second argument is option and indicates the end of a range. +processing. The second argument is optional and indicates the end of a range. -\subsubsection{\type {node.protect_glyphs} and \type {node.protect_glyph}} +\subsection{\type {protect_glyph[s]}} + +\libindex {protect_glyphs} +\libindex {protect_glyph} \startfunctioncall node.protect_glyph(<node> n) @@ -1809,9 +1889,11 @@ Adds 256 to all glyph node subtypes in the node list starting at \type {n}, except that if the value is 1, it adds only 255. The special handling of 1 means that \type {characters} will become \type {glyphs} after subtraction of 256. A single character can be marked by the singular call. The second argument is -option and indicates the end of a range. +optional and indicates the end of a range. + +\subsection{\type {last_node}} -\subsubsection{\type {node.last_node}} +\libindex {last_node} \startfunctioncall <node> n = @@ -1821,17 +1903,21 @@ option and indicates the end of a range. This function pops the last node from \TEX's \quote{current list}. It returns that node, or \type {nil} if the current list is empty. -\subsubsection{\type {node.write}} +\subsection{\type {write}} + +\libindex {write} \startfunctioncall node.write(<node> n) \stopfunctioncall -This is an experimental function that will append a node list to \TEX's \quote -{current list} The node list is not deep|-|copied! There is no error checking -either! +This function that will append a node list to \TEX's \quote {current list}. The +node list is not deep|-|copied! There is no error checking either! You mignt need +to enforce horizontal mode in order for this to work as expected. + +\subsection{\type {protrusion_skippable}} -\subsubsection{\type {node.protrusion_skippable}} +\libindex {protrusion_skippable} \startfunctioncall <boolean> skippable = @@ -1841,9 +1927,13 @@ either! Returns \type {true} if, for the purpose of line boundary discovery when character protrusion is active, this node can be skipped. -\subsection{Glue handling} +\stopsection + +\startsection[title={Glue handling}][library=node] -\subsubsection{\type {node.setglue}} +\subsection{\type {setglue}} + +\libindex {setglue} You can set the properties of a glue in one go. If you pass no values, the glue will become a zero glue. @@ -1863,9 +1953,11 @@ will only adapt the width and shrink. When a list node is passed, you set the glue, order and sign instead. -\subsubsection{\type {node.getglue}} +\subsection{\type {getglue}} + +\libindex {getglue} -The next call will return 5 values (or northing when no glue is passed). +The next call will return 5 values or nothing when no glue is passed. \startfunctioncall <integer> width, <integer> stretch, <integer> shrink, <integer> stretch_order, @@ -1878,7 +1970,9 @@ with \type {tex.get}). When a list node is passed, you get back the glue that is set, the order of that glue and the sign. -\subsubsection{\type {node.is_zero_glue}} +\subsection{\type {is_zero_glue}} + +\libindex {is_zero_glue} This function returns \type {true} when the width, stretch and shrink properties are zero. @@ -1888,13 +1982,61 @@ are zero. node.is_zero_glue(<node> n) \stopfunctioncall -\subsection{Attribute handling} +\stopsection + +\startsection[title={Attribute handling}][library=node] + +\subsection{Attributes} + +\topicindex {attributes} + +The newly introduced attribute registers are non|-|trivial, because the value +that is attached to a node is essentially a sparse array of key|-|value pairs. It +is generally easiest to deal with attribute lists and attributes by using the +dedicated functions in the \type {node} library, but for completeness, here is +the low|-|level interface. Attributes appear as linked list of userdata objects in the \type {attr} field of individual nodes. They can be handled individually, but it is much safer and more efficient to use the dedicated functions associated with them. -\subsubsection{\type {node.has_attribute}} +\subsection{\nod {attribute_list} nodes} + +\topicindex {nodes+attributes} + +An \nod {attribute_list} item is used as a head pointer for a list of attribute +items. It has only one user-visible field: + +\starttabulate[|l|l|p|] +\DB field \BC type \BC explanation \NC \NR +\TB +\NC \type{next} \NC node \NC pointer to the first attribute \NC \NR +\LL +\stoptabulate + +\subsection{\nod {attr} nodes} + +A normal node's attribute field will point to an item of type \nod +{attribute_list}, and the \type {next} field in that item will point to the first +defined \quote {attribute} item, whose \type {next} will point to the second +\quote {attribute} item, etc. + +\starttabulate[|l|l|p|] +\DB field \BC type \BC explanation \NC \NR +\TB +\NC \type{next} \NC node \NC pointer to the next attribute \NC \NR +\NC \type{number} \NC number \NC the attribute type id \NC \NR +\NC \type{value} \NC number \NC the attribute value \NC \NR +\LL +\stoptabulate + +As mentioned it's better to use the official helpers rather than edit these +fields directly. For instance the \type {prev} field is used for other purposes +and there is no double linked list. + +\subsection{\type {has_attribute}} + +\libindex {has_attribute} \startfunctioncall <number> v = @@ -1907,7 +2049,9 @@ Tests if a node has the attribute with number \type {id} set. If \type {val} is also supplied, also tests if the value matches \type {val}. It returns the value, or, if no match is found, \type {nil}. -\subsubsection{\type {node.get_attribute}} +\subsection{\type {get_attribute}} + +\libindex {get_attribute} \startfunctioncall <number> v = @@ -1915,9 +2059,12 @@ or, if no match is found, \type {nil}. \stopfunctioncall Tests if a node has an attribute with number \type {id} set. It returns the -value, or, if no match is found, \type {nil}. +value, or, if no match is found, \type {nil}. If no \type {id} is given then the +zero attributes is assumed. + +\subsection{\type {find_attribute}} -\subsubsection{\type {node.find_attribute}} +\libindex {find_attribute} \startfunctioncall <number> v, <node> n = @@ -1927,7 +2074,9 @@ value, or, if no match is found, \type {nil}. Finds the first node that has attribute with number \type {id} set. It returns the value and the node if there is a match and otherwise nothing. -\subsubsection{\type {node.set_attribute}} +\subsection{\type {set_attribute}} + +\libindex {set_attribute} \startfunctioncall node.set_attribute(<node> n, <number> id, <number> val) @@ -1936,7 +2085,9 @@ node.set_attribute(<node> n, <number> id, <number> val) Sets the attribute with number \type {id} to the value \type {val}. Duplicate assignments are ignored. -\subsubsection{\type {node.unset_attribute}} +\subsection{\type {unset_attribute}} + +\libindex {unset_attribute} \startfunctioncall <number> v = @@ -1952,7 +2103,9 @@ attributes or attribute|-|value pairs are ignored. If the attribute was actually deleted, returns its old value. Otherwise, returns \type {nil}. -\subsubsection{\type {node.slide}} +\subsection{\type {slide}} + +\libindex {slide} This helper makes sure that the node lists is double linked and returns the found tail node. @@ -1969,13 +2122,16 @@ pointers but your other callbacks might expect proper \type {prev} pointers too. Future versions of \LUATEX\ can add more checking but this will not influence usage. -\subsubsection{\type {node.check_discretionary} and \type {node.check_discretionaries}} +\subsection{\type {check_discretionary}, \type {check_discretionaries}} + +\libindex{check_discretionary} +\libindex{check_discretionaries} When you fool around with disc nodes you need to be aware of the fact that they have a special internal data structure. As long as you reassign the fields when you have extended the lists it's ok because then the tail pointers get updated, -but when you add to list without reassigning you might end up in troubles when -the linebreak routien kicks in. You can call this function to check the list for +but when you add to list without reassigning you might end up in trouble when +the linebreak routine kicks in. You can call this function to check the list for issues with disc nodes. \startfunctioncall @@ -1986,7 +2142,9 @@ node.check_discretionaries(<node> head) The plural variant runs over all disc nodes in a list, the singular variant checks one node only (it also checks if the node is a disc node). -\subsubsection{\type {node.flatten_discretionaries}} +\subsection{\type {flatten_discretionaries}} + +\libindex {flatten_discretionaries} This function will remove the discretionaries in the list and inject the replace field when set. @@ -1995,48 +2153,51 @@ field when set. <node> head, count = node.flatten_discretionaries(<node> n) \stopfunctioncall -\subsubsection{\type {node.family_font}} +\subsection{\type {family_font}} + +\libindex {family_font} -When you pass it a proper family identifier the next helper will return the font -currently associated with it. You can normally also access the font with the normal -font field or getter because it will resolve the family automatically for noads. +When you pass a proper family identifier the next helper will return the font +currently associated with it. You can normally also access the font with the +normal font field or getter because it will resolve the family automatically for +noads. \startfunctioncall <integer> id = node.family_font(<integer> fam) \stopfunctioncall -\subsubsection{\type {node.set_synctex_fields} and \type {node.get_synctex_fields}} - -You can set and query the synctex fields, a file number aka tag and a line -number, for a glue, kern, hlist, vlist, rule and math nodes as well as glyph -nodes (although this last one are not used in native synctex). - -\startfunctioncall -node.set_synctex_fields(<integer> f, <integer> l) -<integer> f, <integer> l = - node.get_synctex_fields(<node> n) -\stopfunctioncall - -Of course you need to know what you're doing as no checking on sane values takes -place. Also, the synctex interpreter used in editors is rather peculiar and has -some assumptions (heuristics). +\stopsection -\section{Two access models} +\startsection[title={Two access models}][library=node] \topicindex{nodes+direct} \topicindex{direct nodes} -Deep down in \TEX\ a node has a number which is an numeric entry in a memory +\libindex {todirect} +\libindex {tonode} +\libindex {tostring} + +Deep down in \TEX\ a node has a number which is a numeric entry in a memory table. In fact, this model, where \TEX\ manages memory is real fast and one of the reasons why plugging in callbacks that operate on nodes is quite fast too. Each node gets a number that is in fact an index in the memory table and that -number often gets reported when you print node related information. +number often is reported when you print node related information. You go from +userdata nodes and there numeric references and back with: + +\startfunctioncall +<integer> d = node.todirect(<node> n)) +<node> n = node.tonode(<integer> d)) +\stopfunctioncall + +The userdata model is rather robust as it is a virtual interface with some +additional checking while the more direct access which uses the node numbers +directly. However, even with userdata you can get into troubles when you free +nodes that are no longer allocated or mess up lists. if you apply \type +{tostring} to a node you see its internal (direct) number and id. -There are two access models, a robust one using a so called user data object that -provides a virtual interface to the internal nodes, and a more direct access which -uses the node numbers directly. The first model provide key based access while -the second always accesses fields via functions: +The first model provides key based access while the second always accesses fields +via functions: \starttyping nodeobject.char @@ -2044,19 +2205,19 @@ getfield(nodenumber,"char") \stoptyping If you use the direct model, even if you know that you deal with numbers, you -should not depend on that property but treat it an abstraction just like +should not depend on that property but treat it as an abstraction just like traditional nodes. In fact, the fact that we use a simple basic datatype has the penalty that less checking can be done, but less checking is also the reason why it's somewhat faster. An important aspect is that one cannot mix both methods, but you can cast both models. So, multiplying a node number makes no sense. So our advice is: use the indexed (table) approach when possible and investigate -the direct one when speed might be an real issue. For that reason we also provide -the \type {get*} and \type {set*} functions in the top level node namespace. -There is a limited set of getters. When implementing this direct approach the -regular index by key variant was also optimized, so direct access only makes -sense when we're accessing nodes millions of times (which happens in some font -processing for instance). +the direct one when speed might be a real issue. For that reason \LUATEX\ also +provide the \type {get*} and \type {set*} functions in the top level node +namespace. There is a limited set of getters. When implementing this direct +approach the regular index by key variant was also optimized, so direct access +only makes sense when nodes are accessed millions of times (which happens in some +font processing for instance). We're talking mostly of getters because setters are less important. Documents have not that many content related nodes and setting many thousands of properties @@ -2097,7 +2258,7 @@ Some accessors are used frequently and for these we provide more efficient helpe \DB function \BC explanation \NC \NR \TB \NC \type{getnext} \NC parsing nodelist always involves this one \NC \NR -\NC \type{getprev} \NC used less but is logical companion to \type {getnext} \NC \NR +\NC \type{getprev} \NC used less but a logical companion to \type {getnext} \NC \NR \NC \type{getboth} \NC returns the next and prev pointer of a node \NC \NR \NC \type{getid} \NC consulted a lot \NC \NR \NC \type{getsubtype} \NC consulted less but also a topper \NC \NR @@ -2106,13 +2267,15 @@ Some accessors are used frequently and for these we provide more efficient helpe \NC \type{getwhd} \NC returns the \type {width}, \type {height} and \type {depth} of a list, rule or (unexpanded) glyph as well as glue (its spec is looked at) and unset nodes\NC \NR \NC \type{getdisc} \NC returns the \type {pre}, \type {post} and \type {replace} fields and - optionally when true is passed also the tail fields. \NC \NR + optionally when true is passed also the tail fields \NC \NR \NC \type{getlist} \NC we often parse nested lists so this is a convenient one too \NC \NR \NC \type{getleader} \NC comparable to list, seldom used in \TEX\ (but needs frequent consulting like lists; leaders could have been made a dedicated node type) \NC \NR \NC \type{getfield} \NC generic getter, sufficient for the rest (other field names are often shared so a specific getter makes no sense then) \NC \NR \NC \type{getbox} \NC gets the given box (a list node) \NC \NR +\NC \type{getoffsets} \NC gets the \type {xoffset} and \type {yoffset} of a glyph or + \type {left} and \type {right} values of a rule \NC \NR \LL \stoptabulate @@ -2134,138 +2297,154 @@ directmode setter \type {setlink} takes a list of nodes and will link them, thereby ignoring \type {nil} entries. The first valid node is returned (beware: for good reason it assumes single nodes). For rarely used fields no helpers are provided and there are a few that probably are used seldom too but were added for -consistency. You can of course always define additional accessor using \type -{getfield} and \type {setfield} with little overhead. +consistency. You can of course always define additional accessors using \type +{getfield} and \type {setfield} with little overhead. When the second argument of +\type {setattributelist} is \type {true} the current attribute list is assumed. \def\yes{$+$} \def\nop{$-$} +\def\supported#1#2#3% + {\NC \type{#1} + \NC \ifx#2\yes\libidx{node} {#1}\fi #2 + \NC \ifx#3\yes\libidx{node.direct}{#1}\fi #3 \NC + \NR} + \starttabulate[|l|c|c|] -\DB function \BC node \BC direct \NC \NR +\DB function \BC node \BC direct \NC \NR \TB -%NC \type {do_ligature_n} \NC \yes \NC \yes \NC \NR % was never documented and experimental -\NC \type {check_discretionaries}\NC \yes \NC \yes \NC \NR -\NC \type {copy_list} \NC \yes \NC \yes \NC \NR -\NC \type {copy} \NC \yes \NC \yes \NC \NR -\NC \type {count} \NC \yes \NC \yes \NC \NR -\NC \type {current_attr} \NC \yes \NC \yes \NC \NR -\NC \type {dimensions} \NC \yes \NC \yes \NC \NR -\NC \type {effective_glue} \NC \yes \NC \yes \NC \NR -\NC \type {end_of_math} \NC \yes \NC \yes \NC \NR -\NC \type {family_font} \NC \yes \NC \nop \NC \NR -\NC \type {fields} \NC \yes \NC \nop \NC \NR -\NC \type {find_attribute} \NC \yes \NC \yes \NC \NR -\NC \type {first_glyph} \NC \yes \NC \yes \NC \NR -\NC \type {flush_list} \NC \yes \NC \yes \NC \NR -\NC \type {flush_node} \NC \yes \NC \yes \NC \NR -\NC \type {free} \NC \yes \NC \yes \NC \NR -\NC \type {get_attribute} \NC \yes \NC \yes \NC \NR -\NC \type {getattributelist} \NC \nop \NC \yes \NC \NR -\NC \type {getboth} \NC \yes \NC \yes \NC \NR -\NC \type {getbox} \NC \nop \NC \yes \NC \NR -\NC \type {getchar} \NC \yes \NC \yes \NC \NR -\NC \type {getcomponents} \NC \nop \NC \yes \NC \NR -\NC \type {getdepth} \NC \nop \NC \yes \NC \NR -\NC \type {getdir} \NC \nop \NC \yes \NC \NR -\NC \type {getdisc} \NC \yes \NC \yes \NC \NR -\NC \type {getfam} \NC \nop \NC \yes \NC \NR -\NC \type {getfield} \NC \yes \NC \yes \NC \NR -\NC \type {getfont} \NC \yes \NC \yes \NC \NR -\NC \type {getglue} \NC \yes \NC \yes \NC \NR -\NC \type {getheight} \NC \nop \NC \yes \NC \NR -\NC \type {getid} \NC \yes \NC \yes \NC \NR -\NC \type {getkern} \NC \nop \NC \yes \NC \NR -\NC \type {getlang} \NC \nop \NC \yes \NC \NR -\NC \type {getleader} \NC \yes \NC \yes \NC \NR -\NC \type {getlist} \NC \yes \NC \yes \NC \NR -\NC \type {getnext} \NC \yes \NC \yes \NC \NR -\NC \type {getnucleus} \NC \nop \NC \yes \NC \NR -\NC \type {getoffsets} \NC \nop \NC \yes \NC \NR -\NC \type {getpenalty} \NC \nop \NC \yes \NC \NR -\NC \type {getprev} \NC \yes \NC \yes \NC \NR -\NC \type {getproperty} \NC \yes \NC \yes \NC \NR -\NC \type {getshift} \NC \nop \NC \yes \NC \NR -\NC \type {getwidth} \NC \nop \NC \yes \NC \NR -\NC \type {getwhd} \NC \nop \NC \yes \NC \NR -\NC \type {getsub} \NC \nop \NC \yes \NC \NR -\NC \type {getsubtype} \NC \yes \NC \yes \NC \NR -\NC \type {getsup} \NC \nop \NC \yes \NC \NR -\NC \type {has_attribute} \NC \yes \NC \yes \NC \NR -\NC \type {has_field} \NC \yes \NC \yes \NC \NR -\NC \type {has_glyph} \NC \yes \NC \yes \NC \NR -\NC \type {hpack} \NC \yes \NC \yes \NC \NR -\NC \type {id} \NC \yes \NC \nop \NC \NR -\NC \type {insert_after} \NC \yes \NC \yes \NC \NR -\NC \type {insert_before} \NC \yes \NC \yes \NC \NR -\NC \type {is_char} \NC \yes \NC \yes \NC \NR -\NC \type {is_direct} \NC \nop \NC \yes \NC \NR -\NC \type {is_glue_zero} \NC \yes \NC \yes \NC \NR -\NC \type {is_glyph} \NC \yes \NC \yes \NC \NR -\NC \type {is_node} \NC \yes \NC \yes \NC \NR -\NC \type {kerning} \NC \yes \NC \yes \NC \NR -\NC \type {last_node} \NC \yes \NC \yes \NC \NR -\NC \type {length} \NC \yes \NC \yes \NC \NR -\NC \type {ligaturing} \NC \yes \NC \yes \NC \NR -\NC \type {mlist_to_hlist} \NC \yes \NC \nop \NC \NR -\NC \type {new} \NC \yes \NC \yes \NC \NR -\NC \type {next} \NC \yes \NC \nop \NC \NR -\NC \type {prev} \NC \yes \NC \nop \NC \NR -\NC \type {protect_glyphs} \NC \yes \NC \yes \NC \NR -\NC \type {protect_glyph} \NC \yes \NC \yes \NC \NR -\NC \type {protrusion_skippable} \NC \yes \NC \yes \NC \NR -\NC \type {rangedimensions} \NC \yes \NC \yes \NC \NR -\NC \type {remove} \NC \yes \NC \yes \NC \NR -\NC \type {set_attribute} \NC \nop \NC \yes \NC \NR -\NC \type {setattributelist} \NC \nop \NC \yes \NC \NR -\NC \type {setboth} \NC \nop \NC \yes \NC \NR -\NC \type {setbox} \NC \nop \NC \yes \NC \NR -\NC \type {setchar} \NC \nop \NC \yes \NC \NR -\NC \type {setcomponents} \NC \nop \NC \yes \NC \NR -\NC \type {setdepth} \NC \nop \NC \yes \NC \NR -\NC \type {setdir} \NC \nop \NC \yes \NC \NR -\NC \type {setdisc} \NC \nop \NC \yes \NC \NR -\NC \type {setfield} \NC \yes \NC \yes \NC \NR -\NC \type {setfont} \NC \nop \NC \yes \NC \NR -\NC \type {setglue} \NC \yes \NC \yes \NC \NR -\NC \type {setheight} \NC \nop \NC \yes \NC \NR -\NC \type {setid} \NC \nop \NC \yes \NC \NR -\NC \type {setkern} \NC \nop \NC \yes \NC \NR -\NC \type {setlang} \NC \nop \NC \yes \NC \NR -\NC \type {setleader} \NC \nop \NC \yes \NC \NR -\NC \type {setlist} \NC \nop \NC \yes \NC \NR -\NC \type {setnext} \NC \nop \NC \yes \NC \NR -\NC \type {setnucleus} \NC \nop \NC \yes \NC \NR -\NC \type {setoffsets} \NC \nop \NC \yes \NC \NR -\NC \type {setpenalty} \NC \nop \NC \yes \NC \NR -\NC \type {setprev} \NC \nop \NC \yes \NC \NR -\NC \type {setproperty} \NC \nop \NC \yes \NC \NR -\NC \type {setshift} \NC \nop \NC \yes \NC \NR -\NC \type {setwidth} \NC \nop \NC \yes \NC \NR -\NC \type {setwhd} \NC \nop \NC \yes \NC \NR -\NC \type {setsub} \NC \nop \NC \yes \NC \NR -\NC \type {setsubtype} \NC \nop \NC \yes \NC \NR -\NC \type {setsup} \NC \nop \NC \yes \NC \NR -\NC \type {slide} \NC \yes \NC \yes \NC \NR -\NC \type {subtypes} \NC \yes \NC \nop \NC \NR -\NC \type {subtype} \NC \yes \NC \nop \NC \NR -\NC \type {tail} \NC \yes \NC \yes \NC \NR -\NC \type {todirect} \NC \yes \NC \yes \NC \NR -\NC \type {tonode} \NC \yes \NC \yes \NC \NR -\NC \type {tostring} \NC \yes \NC \yes \NC \NR -\NC \type {traverse_char} \NC \yes \NC \yes \NC \NR -\NC \type {traverse_id} \NC \yes \NC \yes \NC \NR -\NC \type {traverse} \NC \yes \NC \yes \NC \NR -\NC \type {types} \NC \yes \NC \nop \NC \NR -\NC \type {type} \NC \yes \NC \nop \NC \NR -\NC \type {unprotect_glyphs} \NC \yes \NC \yes \NC \NR -\NC \type {unset_attribute} \NC \yes \NC \yes \NC \NR -\NC \type {usedlist} \NC \yes \NC \yes \NC \NR -\NC \type {uses_font} \NC \yes \NC \yes \NC \NR -\NC \type {vpack} \NC \yes \NC \yes \NC \NR -\NC \type {whatsitsubtypes} \NC \yes \NC \nop \NC \NR -\NC \type {whatsits} \NC \yes \NC \nop \NC \NR -\NC \type {write} \NC \yes \NC \yes \NC \NR -\NC \type {set_synctex_fields} \NC \yes \NC \yes \NC \NR -\NC \type {get_synctex_fields} \NC \yes \NC \yes \NC \NR +\supported {check_discretionaries} \yes \yes +\supported {check_discretionary} \yes \yes +\supported {copy_list} \yes \yes +\supported {copy} \yes \yes +\supported {count} \yes \yes +\supported {current_attr} \yes \yes +\supported {dimensions} \yes \yes +\supported {effective_glue} \yes \yes +\supported {end_of_math} \yes \yes +\supported {family_font} \yes \nop +\supported {fields} \yes \nop +\supported {find_attribute} \yes \yes +\supported {first_glyph} \yes \yes +\supported {flatten_discretionaries} \yes \yes +\supported {flush_list} \yes \yes +\supported {flush_node} \yes \yes +\supported {free} \yes \yes +\supported {get_attribute} \yes \yes +\supported {get_synctex_fields} \nop \yes +\supported {getattributelist} \nop \yes +\supported {getboth} \yes \yes +\supported {getbox} \nop \yes +\supported {getchar} \yes \yes +\supported {getcomponents} \nop \yes +\supported {getdepth} \nop \yes +\supported {getdirection} \nop \yes +\supported {getdir} \nop \yes +\supported {getdisc} \yes \yes +\supported {getfam} \nop \yes +\supported {getfield} \yes \yes +\supported {getfont} \yes \yes +\supported {getglue} \yes \yes +\supported {getheight} \nop \yes +\supported {getid} \yes \yes +\supported {getkern} \nop \yes +\supported {getlang} \nop \yes +\supported {getleader} \yes \yes +\supported {getlist} \yes \yes +\supported {getnext} \yes \yes +\supported {getnucleus} \nop \yes +\supported {getoffsets} \nop \yes +\supported {getpenalty} \nop \yes +\supported {getprev} \yes \yes +\supported {getproperty} \yes \yes +\supported {getshift} \nop \yes +\supported {getsubtype} \yes \yes +\supported {getsub} \nop \yes +\supported {getsup} \nop \yes +\supported {getdata} \nop \yes +\supported {getwhd} \yes \yes +\supported {getwidth} \nop \yes +\supported {has_attribute} \yes \yes +\supported {has_field} \yes \yes +\supported {has_glyph} \yes \yes +\supported {hpack} \yes \yes +\supported {id} \yes \nop +\supported {insert_after} \yes \yes +\supported {insert_before} \yes \yes +\supported {is_char} \yes \yes +\supported {is_direct} \nop \yes +\supported {is_glyph} \yes \yes +\supported {is_node} \yes \yes +\supported {is_zero_glue} \yes \yes +\supported {kerning} \yes \yes +\supported {last_node} \yes \yes +\supported {length} \yes \yes +\supported {ligaturing} \yes \yes +\supported {mlist_to_hlist} \yes \nop +\supported {new} \yes \yes +\supported {next} \yes \nop +\supported {prepend_prevdepth} \nop \yes +\supported {prev} \yes \nop +\supported {protect_glyphs} \yes \yes +\supported {protect_glyph} \yes \yes +\supported {protrusion_skippable} \yes \yes +\supported {rangedimensions} \yes \yes +\supported {remove} \yes \yes +\supported {set_attribute} \yes \yes +\supported {set_synctex_fields} \nop \yes +\supported {setattributelist} \nop \yes +\supported {setboth} \nop \yes +\supported {setbox} \nop \yes +\supported {setchar} \nop \yes +\supported {setcomponents} \nop \yes +\supported {setdepth} \nop \yes +\supported {setdirection} \nop \yes +\supported {setdir} \nop \yes +\supported {setdisc} \nop \yes +\supported {setfam} \nop \yes +\supported {setfield} \yes \yes +\supported {setfont} \nop \yes +\supported {setexpansion} \nop \yes +\supported {setglue} \yes \yes +\supported {setheight} \nop \yes +\supported {setkern} \nop \yes +\supported {setlang} \nop \yes +\supported {setleader} \nop \yes +\supported {setlink} \nop \yes +\supported {setlist} \nop \yes +\supported {setnext} \nop \yes +\supported {setnucleus} \nop \yes +\supported {setoffsets} \nop \yes +\supported {setpenalty} \nop \yes +\supported {setprev} \nop \yes +\supported {setproperty} \yes \yes +\supported {setshift} \nop \yes +\supported {setsplit} \nop \yes +\supported {setsubtype} \nop \yes +\supported {setsub} \nop \yes +\supported {setsup} \nop \yes +\supported {setwhd} \nop \yes +\supported {setwidth} \nop \yes +\supported {slide} \yes \yes +\supported {subtypes} \yes \nop +\supported {subtype} \yes \nop +\supported {tail} \yes \yes +\supported {todirect} \yes \yes +\supported {tonode} \yes \yes +\supported {tostring} \yes \yes +\supported {traverse_char} \yes \yes +\supported {traverse_glyph} \yes \yes +\supported {traverse_id} \yes \yes +\supported {traverse} \yes \yes +\supported {types} \yes \nop +\supported {type} \yes \nop +\supported {unprotect_glyphs} \yes \yes +\supported {unprotect_glyph} \yes \yes +\supported {unset_attribute} \yes \yes +\supported {usedlist} \yes \yes +\supported {uses_font} \yes \yes +\supported {vpack} \yes \yes +\supported {whatsits} \yes \nop +\supported {write} \yes \yes \LL \stoptabulate @@ -2276,6 +2455,13 @@ taken for providing meta information about nodes. Note: The getters do only basi checking for valid keys. You should just stick to the keys mentioned in the sections that describe node properties. +Some of the getters and setters handle multiple node types, given that the field +is relevant. In that case, some field names are considered similar (like \type +{kern} and \type {width}, or \type {data} and \type {value}. In retrospect we +could have normalized field names better but we decided to stick to the original +(internal) names as much as possible. After all, at the \LUA\ end one can easily +create synonyms. + Some nodes have indirect references. For instance a math character refers to a family instead of a font. In that case we provide a virtual font field as accessor. So, \type {getfont} and \type {.font} can be used on them. The same is @@ -2283,6 +2469,196 @@ true for the \type {width}, \type {height} and \type {depth} of glue nodes. Thes actually access the spec node properties, and here we can set as well as get the values. +In some places \LUATEX\ can do a bit of extra checking for valid node lists and +you can enable that with: + +\startfunctioncall +node.fix_node_lists(<boolean> b) +\stopfunctioncall + +You can set and query the \SYNCTEX\ fields, a file number aka tag and a line +number, for a glue, kern, hlist, vlist, rule and math nodes as well as glyph +nodes (although this last one is not used in native \SYNCTEX). + +\startfunctioncall +node.set_synctex_fields(<integer> f, <integer> l) +<integer> f, <integer> l = + node.get_synctex_fields(<node> n) +\stopfunctioncall + +Of course you need to know what you're doing as no checking on sane values takes +place. Also, the synctex interpreter used in editors is rather peculiar and has +some assumptions (heuristics). + +\stopsection + +\startsection[title={Properties}][library=node] + +\topicindex {nodes+properties} +\topicindex {properties} + +\libindex{flush_properties_table} +\libindex{get_properties_table} +\libindex{set_properties_mode} + +Attributes are a convenient way to relate extra information to a node. You can +assign them at the \TEX\ end as well as at the \LUA\ end and and consult them at +the \LUA\ end. One big advantage is that they obey grouping. They are linked +lists and normally checking for them is pretty efficient, even if you use a lot +of them. A macro package has to provide some way to manage these attributes at the +\TEX\ end because otherwise clashes in their usage can occur. + +Each node also can have a properties table and you can assign values to this +table using the \type {setproperty} function and get properties using the \type +{getproperty} function. Managing properties is way more demanding than managing +attributes. + +Take the following example: + +\starttyping +\directlua { + local n = node.new("glyph") + + node.setproperty(n,"foo") + print(node.getproperty(n)) + + node.setproperty(n,"bar") + print(node.getproperty(n)) + + node.free(n) +} +\stoptyping + +This will print \type {foo} and \type {bar} which in itself is not that useful +when multiple mechanisms want to use this feature. A variant is: + +\starttyping +\directlua { + local n = node.new("glyph") + + node.setproperty(n,{ one = "foo", two = "bar" }) + print(node.getproperty(n).one) + print(node.getproperty(n).two) + + node.free(n) +} +\stoptyping + +This time we store two properties with the node. It really makes sense to have a +table as property because that way we can store more. But in order for that to +work well you need to do it this way: + +\starttyping +\directlua { + local n = node.new("glyph") + + local t = node.getproperty(n) + + if not t then + t = { } + node.setproperty(n,t) + end + t.one = "foo" + t.two = "bar" + + print(node.getproperty(n).one) + print(node.getproperty(n).two) + + node.free(n) +} +\stoptyping + +Here our own properties will not overwrite other users properties unless of +course they use the same keys. So, eventually you will end up with something: + +\starttyping +\directlua { + local n = node.new("glyph") + + local t = node.getproperty(n) + + if not t then + t = { } + node.setproperty(n,t) + end + t.myself = { one = "foo", two = "bar" } + + print(node.getproperty(n).myself.one) + print(node.getproperty(n).myself.two) + + node.free(n) +} +\stoptyping + +This assumes that only you use \type {myself} as subtable. The possibilities are +endless but care is needed. For instance, the generic font handler that ships +with \CONTEXT\ uses the \type {injections} subtable and you should not mess with +that one! + +There are a few helper functions that you normally should not touch as user: \typ +{flush_properties_table} will wipe the table (normally a bad idea), \typ +{get_properties_table} and will give the table that stores properties (using +direct entries) and you can best not mess too much with that one either because +\LUATEX\ itself will make sure that entries related to nodes will get wiped when +nodes get freed, so that the \LUA\ garbage collector can do its job. In fact, the +main reason why we have this mechanism is that it saves the user (or macro +package) some work. One can easily write a property mechanism in \LUA\ where +after a shipout properties gets cleaned up but it's not entirely trivial to make +sure that with each freed node also its properties get freed, due to the fact +that there can be nodes left over for a next page. And having a callback bound to +the node deallocator would add way to much overhead. + +Managing properties in the node (de)allocator functions is disabled by default +and is enabled by: + +\starttyping +node.set_properties_mode(true) +\stoptyping + +When we copy a node list that has a table as property, there are several possibilities: we do the same as +a new node, we copy the entry to the table in properties (a reference), we do +a deep copy of a table in the properties, we create a new table and give it +the original one as a metatable. After some experiments (that also included +timing) with these scenarios we decided that a deep copy made no sense, nor +did nilling. In the end both the shallow copy and the metatable variant were +both ok, although the second one is slower. The most important aspect to keep +in mind is that references to other nodes in properties no longer can be +valid for that copy. We could use two tables (one unique and one shared) or +metatables but that only complicates matters. + +When defining a new node, we could already allocate a table but it is rather easy +to do that at the lua end e.g.\ using a metatable \type {__index} method. That +way it is under macro package control. When deleting a node, we could keep the +slot (e.g. setting it to false) but it could make memory consumption raise +unneeded when we have temporary large node lists and after that only small lists. +Both are not done. + +So in the end this is what happens now: when a node is copied, and it has a table +as property, the new node will share that table. If the second argument of \typ +{set_properties_mode} is \type {true} then a metatable approach is chosen: the +copy gets its own table with the original table as metatable. If you use the +generic font loader the mode is enabled that way. + +A few more xperiments were done. For instance: copy attributes to the properties +so that we have fast access at the \LUA\ end. In the end the overhead is not +compensated by speed and convenience, in fact, attributes are not that slow when +it comes to accessing them. So this was rejected. + +Another experiment concerned a bitset in the node but again the gain compared to +attributes was neglectable and given the small amount of available bits it also +demands a pretty strong agreement over what bit represents what, and this is +unlikely to succeed in the \TEX\ community. It doesn't pay off. + +Just in case one wonders why properties make sense: it is not so much speed that +we gain, but more convenience: storing all kind of (temporary) data in attributes +is no fun and this mechanism makes sure that properties are cleaned up when a +node is freed. Also, the advantage of a more or less global properties table is +that we stay at the \LUA\ end. An alternative is to store a reference in the node +itself but that is complicated by the fact that the register has some limitations +(no numeric keys) and we also don't want to mess with it too much. + +\stopsection + \stopchapter \stopcomponent diff --git a/manual/luatex-preamble.tex b/manual/luatex-preamble.tex index cad998976..635ff4134 100644 --- a/manual/luatex-preamble.tex +++ b/manual/luatex-preamble.tex @@ -8,7 +8,7 @@ \topicindex{nodes} \topicindex{boxes} -\topicindex[lua]{\LUA} +\topicindex{\LUA} This is a reference manual, not a tutorial. This means that we discuss changes relative to traditonal \TEX\ and also present new functionality. As a consequence @@ -84,22 +84,22 @@ hook in your own code to manipulate lists, this can interfere with the macro package that you use. When you read about nodes in the following chapters it's good to keep in mind their -commands that relate to then. here are a few: +commands that relate to then. Here are a few: \starttabulate[|l|l|p|] -\DB command \BC node \BC explanation \NC \NR +\DB command \BC node \BC explanation \NC \NR \TB -\NC \prm {hbox} \NC \nod {hlist} \NC horizontal box \NC \NR -\NC \prm {vbox} \NC \nod {vlist} \NC vertical box with the baseline at the bottom \NC \NR -\NC \prm {vtop} \NC \nod {vlist} \NC vertical box with the baseline at the top \NC \NR -\NC \prm {hskip} \NC \nod {glue} \NC horizontal skip with optional stretch and shrink \NC \NR -\NC \prm {vskip} \NC \nod {glue} \NC vertical skip with optional stretch and shrink \NC \NR -\NC \prm {kern} \NC \nod {kern} \NC horizontal or vertical fixed skip \NC \NR -\NC \prm {discretionary} \NC \nod {disc} \NC hyphenation point (pre, post, replace) \NC \NR -\NC \prm {char} \NC \nod {glyph} \NC a character \NC \NR -\NC \prm {hrule} \NC \nod {rule} \NC a horizontal rule \NC \NR -\NC \prm {vrule} \NC \nod {rule} \NC a vertical rule \NC \NR -\NC \prm {textdir} \NC \nod {dir} \NC a change in text direction \NC \NR +\NC \prm {hbox} \NC \nod {hlist} \NC horizontal box \NC \NR +\NC \prm {vbox} \NC \nod {vlist} \NC vertical box with the baseline at the bottom \NC \NR +\NC \prm {vtop} \NC \nod {vlist} \NC vertical box with the baseline at the top \NC \NR +\NC \prm {hskip} \NC \nod {glue} \NC horizontal skip with optional stretch and shrink \NC \NR +\NC \prm {vskip} \NC \nod {glue} \NC vertical skip with optional stretch and shrink \NC \NR +\NC \prm {kern} \NC \nod {kern} \NC horizontal or vertical fixed skip \NC \NR +\NC \prm {discretionary} \NC \nod {disc} \NC hyphenation point (pre, post, replace) \NC \NR +\NC \prm {char} \NC \nod {glyph} \NC a character \NC \NR +\NC \prm {hrule} \NC \nod {rule} \NC a horizontal rule \NC \NR +\NC \prm {vrule} \NC \nod {rule} \NC a vertical rule \NC \NR +\NC \prm {textdir(ection)} \NC \nod {dir} \NC a change in text direction \NC \NR \LL \stoptabulate diff --git a/manual/luatex-registers.tex b/manual/luatex-registers.tex index 39e0b360e..293023007 100644 --- a/manual/luatex-registers.tex +++ b/manual/luatex-registers.tex @@ -35,4 +35,13 @@ \stopchapter +\startchapter[title=Libraries] + + This register contains the functions available in libraries. Not all functions + are documented, for instance because they can be experimental or obsolete. + + \placeregister[libraryindex] + +\stopchapter + \stopcomponent diff --git a/manual/luatex-statistics.tex b/manual/luatex-statistics.tex index 7e550b13a..2428a2929 100644 --- a/manual/luatex-statistics.tex +++ b/manual/luatex-statistics.tex @@ -8,6 +8,8 @@ \topicindex{fonts+used} + The following fonts are used in this document: + \showfontusage \stopchapter diff --git a/manual/luatex-style.tex b/manual/luatex-style.tex index b32c3c85e..f176afab7 100644 --- a/manual/luatex-style.tex +++ b/manual/luatex-style.tex @@ -131,6 +131,9 @@ \setuphead [subsection] [color=maincolor] \setuphead [subsubsection][color=maincolor] +\setupfloats + [ntop=4] + \definehead [remark] [subsubsubject] @@ -229,7 +232,7 @@ \startuseMPgraphic{luanumber} % luaextraangle := \luaextraangle; - luaextraangle := if (LastPageNumber == 0) : 0 else : (RealPageNumber / LastPageNumber) * 360 fi; + luaextraangle := if (LastPageNumber < 10) : 10 else : (RealPageNumber / LastPageNumber) * 360 fi; luaorbitfactor := 0.25 ; picture p ; p := lualogo ; setbounds p to boundingbox fullcircle ; @@ -402,6 +405,7 @@ \defineregister[primitiveindex] \defineregister[callbackindex] \defineregister[nodeindex] +\defineregister[libraryindex] \unexpanded\def\lpr#1{\doifmode{*bodypart}{\primitiveindex[#1]{\bf\tex {#1}}}\tex {#1}} \unexpanded\def\prm#1{\doifmode{*bodypart}{\primitiveindex[#1]{\tex {#1}}}\tex {#1}} @@ -411,4 +415,28 @@ \unexpanded\def\whs#1{\doifmode{*bodypart}{\nodeindex [#1]{\type {#1}}}\type{#1}} \unexpanded\def\noa#1{\doifmode{*bodypart}{\nodeindex [#1]{\type {#1}}}\type{#1}} +\hyphenation{sub-nodes} + +\def\currentlibraryindex{\namedstructureuservariable{section}{library}} + +\setupregister + [libraryindex] + [indicator=no,before=] + +\setupregister + [libraryindex] + [1] + [textstyle=\ttbf] + +\setupregister + [libraryindex] + [2] + [textstyle=\tttf] + +\unexpanded\def\lib #1{\doifmode{*bodypart}{\expanded{\libraryindex{\currentlibraryindex+#1}}\type{\currentlibraryindex.#1}}} +\unexpanded\def\libindex#1{\doifmode{*bodypart}{\expanded{\libraryindex{\currentlibraryindex+#1}}}} +\unexpanded\def\libidx#1#2{\doifmode{*bodypart}{\expanded{\libraryindex{#1+#2}}\type{#1.#2}}} + +% \setstructurepageregister[][keys:1=,entries:1=] + \stopenvironment diff --git a/manual/luatex-tex.tex b/manual/luatex-tex.tex index 7edd561e6..6b1ba1689 100644 --- a/manual/luatex-tex.tex +++ b/manual/luatex-tex.tex @@ -1,18 +1,22 @@ % language=uk +% lua.newtable + \environment luatex-style \startcomponent luatex-tex \startchapter[reference=tex,title={The \TEX\ related libraries}] -\section{The \type {lua} library} +\startsection[title={The \type {lua} library}][library=lua] -\subsection{\LUA\ version} +\startsubsection[title={Version information}] \topicindex{libraries+\type{lua}} \topicindex{version} +\libindex{version} + This library contains one read|-|only item: \starttyping @@ -22,14 +26,20 @@ This library contains one read|-|only item: This returns the \LUA\ version identifier string. The value is currently \directlua {tex.print(lua.version)}. -\subsection{\LUA\ bytecode registers} +\stopsubsection + +\startsubsection[title={Bytecode registers}] \topicindex{bytecodes} \topicindex{registers+bytecodes} -\LUA\ registers can be used to communicate \LUA\ functions across \LUA\ chunks. -The accepted values for assignments are functions and \type {nil}. Likewise, the -retrieved value is either a function or \type {nil}. +\libindex{bytecode} +\libindex{setbytecode} +\libindex{getbytecode} + +\LUA\ registers can be used to store \LUA\ code chunks. The accepted values for +assignments are functions and \type {nil}. Likewise, the retrieved value is +either a function or \type {nil}. \starttyping lua.bytecode[<number> n] = <function> f @@ -37,13 +47,8 @@ lua.bytecode[<number> n]() \stoptyping The contents of the \type {lua.bytecode} array is stored inside the format file -as actual \LUA\ bytecode, so it can also be used to preload \LUA\ code. - -Note: The function must not contain any upvalues. Currently, functions containing -upvalues can be stored (and their upvalues are set to \type {nil}), but this is -an artifact of the current \LUA\ implementation and thus subject to change. - -The associated function calls are +as actual \LUA\ bytecode, so it can also be used to preload \LUA\ code. The +function must not contain any upvalues. The associated function calls are: \startfunctioncall <function> f = lua.getbytecode(<number> n) @@ -71,7 +76,13 @@ used in \INITEX. If it contains private information, i.e. the user name, this information is then contained in the format file as well. This should be kept in mind when preloading files into a bytecode register in \INITEX. -\subsection{\LUA\ chunk name registers} +\stopsubsection + +\startsubsection[title={Chunk name registers}] + +\libindex{name} +\libindex{setluaname} +\libindex{getluaname} There is an array of 65536 (0--65535) potential chunk names for use with the \prm {directlua} and \lpr {latelua} primitives. @@ -81,12 +92,37 @@ lua.name[<number> n] = <string> s <string> s = lua.name[<number> n] \stopfunctioncall -If you want to unset a \LUA\ name, you can assign \type {nil} to it. +If you want to unset a \LUA\ name, you can assign \type {nil} to it. The function +accessors are: + +\startfunctioncall +lua.setluaname(<string> s,<number> n]) +<string> s = lua.getluaname(<number> n) +\stopfunctioncall + +\stopsubsection + +\startsubsection[title={Introspection}] + +\libindex{getstacktop} +\libindex{getcalllevel} + +The \type {getstacktop} and\type {getcalllevel} functions return numbers +indicating how much nesting is going on. They are only of use as breakpoints when +checking some mechanism going haywire. + +\stopsubsection + +\stopsection -\section{The \type {status} library} +\startsection[title={The \type {status} library}][library=status] \topicindex{libraries+\type{status}} +\libindex{list} +\libindex{resetmessages} +\libindex{setexitcode} + This contains a number of run|-|time configuration items that you may find useful in message reporting, as well as an iterator function that gets all of the names and values as a table. @@ -100,15 +136,13 @@ all of the values in \type {status} are fetched through a metatable at run|-|tim whenever they are accessed, so you cannot use \type {pairs} on \type {status}, but you {\it can\/} use \type {pairs} on \type {info}, of course. If you do not need the full list, you can also ask for a single item by using its name as an -index into \type {status}. - -The current list is: +index into \type {status}. The current list is: \starttabulate[|l|p|] \DB key \BC explanation \NC \NR \TB \NC \type{banner} \NC terminal display banner \NC \NR -\NC \type{best_page_break} \NC the current best break (a node) \NR \NR +\NC \type{best_page_break} \NC the current best break (a node) \NC \NR \NC \type{buf_size} \NC current allocated size of the line buffer \NC \NR \NC \type{callbacks} \NC total number of executed callbacks so far \NC \NR \NC \type{cs_count} \NC number of control sequences \NC \NR @@ -127,7 +161,7 @@ The current list is: \NC \type{ini_version} \NC \type {true} if this is an \INITEX\ run \NC \NR \NC \type{init_pool_ptr} \NC \INITEX\ string pool index \NC \NR \NC \type{init_str_ptr} \NC number of \INITEX\ strings \NC \NR -\NC \type{input_ptr} \NC th elevel of input we're at \NC \NR +\NC \type{input_ptr} \NC the level of input we're at \NC \NR \NC \type{inputid} \NC numeric id of the current input \NC \NR \NC \type{largest_used_mark} \NC max referenced marks class \NC \NR \NC \type{lasterrorcontext} \NC last error context string (with newlines) \NC \NR @@ -143,9 +177,8 @@ The current list is: \NC \type{luatex_engine} \NC the \LUATEX\ engine identifier \NC \NR \NC \type{luatex_hashchars} \NC length to which \LUA\ hashes strings ($2^n$) \NC \NR \NC \type{luatex_hashtype} \NC the hash method used (in \LUAJITTEX) \NC \NR -\NC \type{luatex_revision} \NC the \LUATEX\ revision string \NC \NR -\NC \type{luatex_revision} \NC the \LUATEX\ revision string \NC \NR \NC \type{luatex_version} \NC the \LUATEX\ version number \NC \NR +\NC \type{luatex_revision} \NC the \LUATEX\ revision string \NC \NR \NC \type{max_buf_stack} \NC max used buffer position \NC \NR \NC \type{max_in_stack} \NC max used input stack entries \NC \NR \NC \type{max_nest_stack} \NC max used nesting stack entries \NC \NR @@ -188,7 +221,11 @@ The current list is: The error and warning messages can be wiped with the \type {resetmessages} function. A return value can be set with \type {setexitcode}. -\section{The \type {tex} library} +\stopsection + +\startsection[title={The \type {tex} library}][library=tex] + +\startsubsection[title={Introduction}] \topicindex{libraries+\type{tex}} @@ -200,33 +237,28 @@ in \LUA, but are only front\-ends that are handled by a metatable that operates on the actual \TEX\ values. As a result, most of the \LUA\ table operators (like \type {pairs} and \type {#}) do not work on such items. -At the moment, it is possible to access almost every parameter that has these -characteristics: - -\startitemize[packed] -\item You can use it after \prm {the} -\item It is a single token. -\item Some special others, see the list below -\stopitemize - -This excludes parameters that need extra arguments, like \type {\the\scriptfont}. +At the moment, it is possible to access almost every parameter that you can use +after \prm {the}, is a single tokens or is sort of special in \TEX. This excludes +parameters that need extra arguments, like \type {\the\scriptfont}. The subset +comprising simple integer and dimension registers are writable as well as +readable (like \prm {tracingcommands} and \prm {parindent}). -The subset comprising simple integer and dimension registers are -writable as well as readable (stuff like \prm {tracingcommands} and -\prm {parindent}). +\stopsubsection -\subsection{Internal parameter values} +\startsubsection[title={Internal parameter values, \type {set} and \type {get}}] \topicindex{parameters+internal} +\libindex{set} \libindex{get} + For all the parameters in this section, it is possible to access them directly using their names as index in the \type {tex} table, or by using one of the functions \type {tex.get} and \type {tex.set}. The exact parameters and return values differ depending on the actual parameter, -and so does whether \type {tex.set} has any effect. For the parameters that {\it -can\/} be set, it is possible to use \type {global} as the first argument to -\type {tex.set}; this makes the assignment global instead of local. +and so does whether \type {tex.set} has any effect. For the parameters that {\em +can} be set, it is possible to use \type {global} as the first argument to \type +{tex.set}; this makes the assignment global instead of local. \startfunctioncall tex.set (["global",] <string> n, ...) @@ -234,7 +266,7 @@ tex.set (["global",] <string> n, ...) \stopfunctioncall Glue is kind of special because there are five values involved. The return value -is a \nod {glue_spec} node btu when you pass \type {false} as last argument to +is a \nod {glue_spec} node but when you pass \type {false} as last argument to \type {tex.get} you get the width of the glue and when you pass \type {true} you get all five values. Otherwise you get a node which is a copy of the internal value so you are responsible for its freeing at the \LUA\ end. When you set a @@ -242,26 +274,9 @@ glue quantity you can either pass a \nod {glue_spec} or upto five numbers. If you pass \type {true} to \type {get} you get 5 values returned for a glue and when you pass \type {false} you only get the width returned. -For the registers you can use \type {getskip} (node), \type {getglue} (numbers) -\type {setskip} (node) and \type {setglue} (numbers). If you pass \type {false} -as second argument to \type {getglue} you only get the width returned. - -There are also dedicated setters, getters and checkers: - -\startfunctioncall -local d = tex.getdimen("foo") -if tex.isdimen("bar") then - tex.setdimen("bar",d) -end -\stopfunctioncall - -There are such helpers for \type {dimen}, \type {count}, \type {skip}, \type {box} and \nod {attribute} registers. - \subsubsection{Integer parameters} -The integer parameters accept and return \LUA\ numbers. - -Read|-|write: +The integer parameters accept and return \LUA\ numbers. These are read|-|write: \starttwocolumns \starttyping @@ -335,7 +350,7 @@ tex.year \stoptyping \stoptwocolumns -Read|-|only: +These are read|-|only: \startthreecolumns \starttyping @@ -351,9 +366,7 @@ tex.spacefactor The dimension parameters accept \LUA\ numbers (signifying scaled points) or strings (with included dimension). The result is always a number in scaled -points. - -Read|-|write: +points. These are read|-|write: \startthreecolumns \starttyping @@ -390,7 +403,7 @@ tex.spacefactor \stoptyping \stopthreecolumns -Read|-|only: +These are read|-|only: \startthreecolumns \starttyping @@ -405,7 +418,8 @@ tex.pagetotal \stoptyping \stopthreecolumns -Beware: as with all \LUA\ tables you can add values to them. So, the following is valid: +Beware: as with all \LUA\ tables you can add values to them. So, the following is +valid: \starttyping tex.foo = 123 @@ -434,7 +448,8 @@ tex.spacefactor = s Keep in mind that when you mess with node lists directly at the \LUA\ end you might need to update the top of the nesting stack's \type {prevdepth} explicitly as there is no way \LUATEX\ can guess your intentions. By using the accessor in -the \type {tex} tables, you get and set the values atthe top of the nest stack. +the \type {tex} tables, you get and set the values at the top of the nesting +stack. \subsubsection{Direction parameters} @@ -510,7 +525,9 @@ tex.output \stoptyping \stopthreecolumns -\subsection{Convert commands} +\stopsubsection + +\startsubsection[title={Convert commands}] \topicindex{convert commands} @@ -535,19 +552,18 @@ tex.fontidentifier(number) If you are wondering why this list looks haphazard; these are all the cases of the \quote {convert} internal command that do not require an argument, as well as -the ones that require only a simple numeric value. +the ones that require only a simple numeric value. The special (\LUA|-|only) case +of \type {tex.fontidentifier} returns the \type {csname} string that matches a +font id number (if there is one). -The special (lua-only) case of \type {tex.fontidentifier} returns the \type {csname} string that matches a font id number (if there is one). +\stopsubsection -if these are really needed in a macro package. - -\subsection{Last item commands} +\startsubsection[title={Last item commands}] \topicindex{last items} -All \quote {last item} commands are read|-|only and return a number. - -The supported commands at this moment are: +All \quote {last item} commands are read|-|only and return a number. The +supported commands at this moment are: \startthreecolumns \starttyping @@ -570,14 +586,29 @@ tex.currentifbranch \stoptyping \stopthreecolumns -\subsection{Attribute, count, dimension, skip and token registers} +\stopsubsection + +\startsubsection[title={Accessing registers: \type {set*}, \type {get*} and \type {is*}}] \topicindex{attributes} \topicindex{registers} -\TEX's attributes (\lpr {attribute}), counters (\prm {count}), dimensions (\prm {dimen}), skips (\prm {skip}) and token (\prm {toks}) registers can be accessed -and written to using two times five virtual sub|-|tables of the \type {tex} -table: +\libindex{attribute} \libindex{setattribute} \libindex{getattribute} \libindex{isattribute} +\libindex{count} \libindex{setcount} \libindex{getcount} \libindex{iscount} +\libindex{dimen} \libindex{setdimen} \libindex{getdimen} \libindex{isdimen} +\libindex{skip} \libindex{setskip} \libindex{getskip} \libindex{isskip} +\libindex{muskip} \libindex{setmuskip} \libindex{getmuskip} \libindex{ismuskip} +\libindex{glue} \libindex{setglue} \libindex{getglue} \libindex{isglue} +\libindex{muglue} \libindex{setmuglue} \libindex{getmuglue} \libindex{ismuglue} +\libindex{toks} \libindex{settoks} \libindex{gettoks} \libindex{istoks} +\libindex{box} \libindex{setbox} \libindex{getbox} \libindex{isbox} + +\libindex{scantoks} + +\TEX's attributes (\lpr {attribute}), counters (\prm {count}), dimensions (\prm +{dimen}), skips (\prm {skip}, \prm {muskip}) and token (\prm {toks}) registers +can be accessed and written to using two times five virtual sub|-|tables of the +\type {tex} table: \startthreecolumns \starttyping @@ -585,6 +616,9 @@ tex.attribute tex.count tex.dimen tex.skip +tex.glue +tex.muskip +tex.muglue tex.toks \stoptyping \stopthreecolumns @@ -599,22 +633,46 @@ enormous = tex.dimen['maxdimen'] \stoptyping In this case, \LUATEX\ looks up the value for you on the fly. You have to use a -valid \prm {countdef} (or \lpr {attributedef}, or \prm {dimendef}, or \prm {skipdef}, or \prm {toksdef}), anything else will generate an error (the intent +valid \prm {countdef} (or \lpr {attributedef}, or \prm {dimendef}, or \prm +{skipdef}, or \prm {toksdef}), anything else will generate an error (the intent is to eventually also allow \type {<chardef tokens>} and even macros that expand into a number). -The attribute and count registers accept and return \LUA\ numbers. - -The dimension registers accept \LUA\ numbers (in scaled points) or strings (with -an included absolute dimension; \type {em} and \type {ex} and \type {px} are -forbidden). The result is always a number in scaled points. +\startitemize -The token registers accept and return \LUA\ strings. \LUA\ strings are converted -to and from token lists using \prm {the} \prm {toks} style expansion: all -category codes are either space (10) or other (12). + \startitem + The count registers accept and return \LUA\ numbers. + \stopitem + + \startitem + The dimension registers accept \LUA\ numbers (in scaled points) or + strings (with an included absolute dimension; \type {em} and \type {ex} + and \type {px} are forbidden). The result is always a number in scaled + points. + \stopitem + + \startitem + The token registers accept and return \LUA\ strings. \LUA\ strings are + converted to and from token lists using \prm {the} \prm {toks} style + expansion: all category codes are either space (10) or other (12). + \stopitem + + \startitem + The skip registers accept and return \nod {glue_spec} userdata node + objects (see the description of the node interface elsewhere in this + manual). + \stopitem + + \startitem + The glue registers are just skip registers but instead of userdata + are verbose. + \stopitem + + \startitem + Like the counts, the attribute registers accept and return \LUA\ numbers. + \stopitem -The skip registers accept and return \nod {glue_spec} userdata node objects (see -the description of the node interface elsewhere in this manual). +\stopitemize As an alternative to array addressing, there are also accessor functions defined for all cases, for example, here is the set of possibilities for \prm {skip} @@ -629,18 +687,24 @@ tex.setskip (["global",] <string> s, <node> s) We have similar setters for \type {count}, \type {dimen}, \type {muskip}, and \type {toks}. Counters and dimen are represented by numbers, skips and muskips by -nodes, and toks by strings. For tokens registers we have an alternative where a -catcode table is specified: +nodes, and toks by strings. + +Again the glue variants are not using the \nod {glue-spec} userdata nodes. The +\type {setglue} function accepts upto 5 arguments: width, stretch, shrink, +stretch order and shrink order and the \type {getglue} function reports them, +unless the second argument is \type {false} in which care only the width is +returned. + +Here is an example usign a threesome: \startfunctioncall -tex.scantoks(0,3,"$e=mc^2$") -tex.scantoks("global",0,"$\int\limits^1_2$") +local d = tex.getdimen("foo") +if tex.isdimen("bar") then + tex.setdimen("bar",d) +end \stopfunctioncall -In the function-based interface, it is possible to define values globally by -using the string \type {global} as the first function argument. - -There are four extra skip related helpers: +There are six extra skip (glue) related helpers: \startfunctioncall tex.setglue (["global"], <number> n, @@ -655,10 +719,43 @@ width, stretch, shrink, stretch_order, shrink_order = The other two are \type {tex.setmuglue} and \type {tex.getmuglue}. -\subsection{Character code registers} +There are such helpers for \type {dimen}, \type {count}, \type {skip}, \type +{muskip}, \type {box} and \type {attribute} registers but the glue ones +are special because they have to deal with more properties. + +As with the general \type {get} and \type {set} function discussed before, for +the skip registers \type {getskip} returns a node and \type {getglue} returns +numbers, while \type {setskip} accepts a node and \type {setglue} expects upto 5 +numbers. Again, when you pass \type {false} as second argument to \type {getglue} +you only get the width returned. The same is true for the \type {mu} variants +\type {getmuskip}, \type {setmuskip}, \type {getmuskip} and\type {setmuskip}. + +For tokens registers we have an alternative where a catcode table is specified: + +\startfunctioncall +tex.scantoks(0,3,"$e=mc^2$") +tex.scantoks("global",0,"$\int\limits^1_2$") +\stopfunctioncall + +In the function-based interface, it is possible to define values globally by +using the string \type {global} as the first function argument. + +\stopsubsection + +\startsubsection[title={Character code registers: \type {[get|set]*code[s]}}] \topicindex{characters+codes} +\libindex{lccode} \libindex{setlccode} \libindex{getlccode} +\libindex{uccode} \libindex{setuccode} \libindex{getuccode} +\libindex{sfcode} \libindex{setsfcode} \libindex{getsfcode} +\libindex{catcode} \libindex{setcatcode} \libindex{getcatcode} +\libindex{mathcode} \libindex{setmathcode} \libindex{getmathcode} +\libindex{delcode} \libindex{setdelcode} \libindex{getdelcode} + +\libindex{setdelcodes} \libindex{getdelcodes} +\libindex{setmathcodes} \libindex{getmathcodes} + \TEX's character code tables (\prm {lccode}, \prm {uccode}, \prm {sfcode}, \prm {catcode}, \prm {mathcode}, \prm {delcode}) can be accessed and written to using six virtual subtables of the \type {tex} table @@ -751,13 +848,19 @@ smallfam, smallchar, largefam, largechar = Normally, the third and fourth values in a delimiter code assignment will be zero according to \lpr {Udelcode} usage, but the returned table can have values there -(if the delimiter code was set using \prm {delcode}, for example). Unset \type {delcode}'s can be recognized because \type {dval[1]} is $-1$. +(if the delimiter code was set using \prm {delcode}, for example). Unset \type +{delcode}'s can be recognized because \type {dval[1]} is $-1$. + +\stopsubsection -\subsection{Box registers} +\startsubsection[title={Box registers: \type {[get|set]box}}] \topicindex{registers} \topicindex{boxes} +\libindex{box} +\libindex{setbox} \libindex{getbox} + It is possible to set and query actual boxes, coming for instance from \prm {hbox}, \prm {vbox} or \prm {vtop}, using the node interface as defined in the \type {node} library: @@ -787,12 +890,23 @@ tex.box[0] = tex.box[2] does not copy the node list, it just duplicates a node pointer. If \type {\box2} will be cleared by \TEX\ commands later on, the contents of \type {\box0} becomes -invalid as well. To prevent this from happening, always use \type {node.copy_list()} unless you are assigning to a temporary variable: +invalid as well. To prevent this from happening, always use \type +{node.copy_list} unless you are assigning to a temporary variable: \starttyping tex.box[0] = node.copy_list(tex.box[2]) \stoptyping +\stopsubsection + +\startsubsection[title={Reusing boxes: \type {[use|save]boxresource} and \type {getboxresourcedimensions}}] + +\topicindex{boxes+reuse} + +\libindex{useboxresource} +\libindex{saveboxresource} +\libindex{getboxresourcedimensions} + The following function will register a box for reuse (this is modelled after so called xforms in \PDF). You can (re)use the box with \lpr {useboxresource} or by creating a rule node with subtype~2. @@ -805,7 +919,8 @@ The optional second and third arguments are strings, the fourth is a boolean. Th fifth argument is a type. When set to non|-|zero the \type {/Type} entry is omitted. A value of 1 or 3 still writes a \type {/BBox}, while 2 or 3 will write a \type {/Matrix}. The sixth argument is the (virtual) margin that extends beyond -the effective boundingbox as seen by \TEX. +the effective boundingbox as seen by \TEX. Instead of a box number one can also +pass a \type {[h|v]list} node. You can generate the reference (a rule type) with: @@ -823,6 +938,27 @@ local w, h, d, m = tex.getboxresourcedimensions(n) This returns the width, height, depth and margin of the resource. +\stopsubsection + +\startsubsection[title={\type {triggerbuildpage}}] + +\topicindex{pages} + +\libindex{triggerbuildpage} + +You should not expect to much from the \type {triggerbuildpage} helpers because +often \TEX\ doesn't do much if it thinks nothing has to be done, but it might be +useful for some applications. It just does as it says it calls the internal +function that build a page, given that there is something to build. + +\stopsubsection + +\startsubsection[title={\type {splitbox}}] + +\topicindex{boxes+split} + +\libindex{splitbox} + You can split a box: \starttyping @@ -830,13 +966,19 @@ local vlist = tex.splitbox(n,height,mode) \stoptyping The remainder is kept in the original box and a packaged vlist is returned. This -operation is comparable to the \prm {vsplit} operation. The mode can be \type {additional} or \type {exactly} and concerns the split off box. +operation is comparable to the \prm {vsplit} operation. The mode can be \type +{additional} or \type {exactly} and concerns the split off box. + +\stopsubsection -\subsection{Math parameters} +\startsubsection[title={Accessing math parameters: \type {[get|set]math}}] \topicindex{math+parameters} \topicindex{parameters+math} +\libindex{setmath} +\libindex{getmath} + It is possible to set and query the internal math parameters using: \startfunctioncall @@ -886,7 +1028,7 @@ innerordspacing inneropspacing innerbinspacing innerrelspacing inneropenspacing innerclosespacing innerpunctspacing innerinnerspacing \stoptyping -The values for the style parameter name are: +The values for the style parameter are: \starttyping display crampeddisplay @@ -899,15 +1041,21 @@ The value is either a number (representing a dimension or number) or a glue spec node representing a muskip for \type {ordordspacing} and similar spacing parameters. -\subsection{Special list heads} +\stopsubsection + +\startsubsection[title={Special list heads: \type {[get|set]list}}] \topicindex{lists} +\libindex{lists} +\libindex{setlist} +\libindex{getlist} + The virtual table \type {tex.lists} contains the set of internal registers that keep track of building page lists. \starttabulate[|l|p|] -\DB field \BC description \NC \NR +\DB field \BC explanation \NC \NR \TB \NC \type{page_ins_head} \NC circular list of pending insertions \NC \NR \NC \type{contrib_head} \NC the recent contributions \NC \NR @@ -922,34 +1070,45 @@ keep track of building page lists. \LL \stoptabulate -\subsection{Semantic nest levels} +The getter and setter functions are \type {getlist} and \type {setlist}. You have +to be careful with what you set as \TEX\ can have expectations with regards to +how a list is constructed or in what state it is. -\topicindex{nesting} +\stopsubsection -The virtual table \type {tex.nest} contains the currently active -semantic nesting state. It has two main parts: a zero-based array of userdata for -the semantic nest itself, and the numerical value \type {tex.nest.ptr}, which -gives the highest available index. Neither the array items in \type {tex.nest[]} -nor \type {tex.nest.ptr} can be assigned to (as this would confuse the -typesetting engine beyond repair), but you can assign to the individual values -inside the array items, e.g.\ \type {tex.nest[tex.nest.ptr].prevdepth}. +\startsubsection[title={Semantic nest levels: \type {getnest} and \type {ptr}}] + +\topicindex{nesting} -\type {tex.nest[tex.nest.ptr]} is the current nest state, \type {tex.nest[0]} the -outermost (main vertical list) level. +\libindex{nest} +\libindex{ptr} +%libindex{setnest} % only a message +\libindex{getnest} + +The virtual table \type {nest} contains the currently active semantic nesting +state. It has two main parts: a zero-based array of userdata for the semantic +nest itself, and the numerical value \type {ptr}, which gives the highest +available index. Neither the array items in \type {nest[]} nor \type {ptr} can be +assigned to (as this would confuse the typesetting engine beyond repair), but you +can assign to the individual values inside the array items, e.g.\ \type +{tex.nest[tex.nest.ptr].prevdepth}. + +\type {tex.nest[tex.nest.ptr]} is the current nest state, \type {nest[0]} the +outermost (main vertical list) level. The getter function is \type {getnest}. You +can pass a number (which gives you a list), nothing or \type {top}, which returns +the topmost list, or the string \type {ptr} which gives you the index of the +topmost list. The known fields are: \starttabulate[|l|l|l|p|] \DB key \BC type \BC modes \BC explanation \NC \NR \TB -\NC \type{mode} \NC number \NC all \NC a number representing the main mode at this level: - \type {0} = no mode (this happens during \prm {write}), - \type {1} = vertical, - \type {127} = horizontal, - \type {253} = display math, - \type {-1} = internal vertical, - \type {-127} = restricted horizontal, - \type {-253} = inline math \NC \NR +\NC \type{mode} \NC number \NC all \NC a string: + \type {none} (this happens during \prm {write}), + \type {vmode}, \type {hmode}, \type {displaymath}, + \type {innervmode}, \type {innerhmode}, \type {inlinemath}; + these fields cannot be set \NC \NR \NC \type{modeline} \NC number \NC all \NC source input line where this mode was entered in, negative inside the output routine \NC \NR \NC \type{head} \NC node \NC all \NC the head of the current list \NC \NR @@ -968,7 +1127,9 @@ The known fields are: \LL \stoptabulate -\subsection[sec:luaprint]{Print functions} +\stopsubsection + +\startsubsection[reference=sec:luaprint,title={Print functions}] \topicindex{printing} @@ -982,7 +1143,9 @@ limited by available system \RAM. However, each separate printed string has to fit completely in \TEX's input buffer. The result of using these functions from inside callbacks is undefined at the moment. -\subsubsection{\type {tex.print}} +\subsubsection{\type {print}} + +\libindex{print} \startfunctioncall tex.print(<string> s, ...) @@ -1003,10 +1166,12 @@ the space character, that has category code 10 (space). Otherwise, if \type {n} is not a valid catcode table, then it is ignored, and the currently active catcode regime is used instead. -The very last string of the very last \type {tex.print()} command in a \prm +The very last string of the very last \type {tex.print} command in a \prm {directlua} will not have the \prm {endlinechar} appended, all others do. -\subsubsection{\type {tex.sprint}} +\subsubsection{\type {sprint}} + +\libindex{sprint} \startfunctioncall tex.sprint(<string> s, ...) @@ -1027,35 +1192,76 @@ makes it suitable for use as a partial line input mechanism: No \prm {endlinechar} is inserted. \stopitem \startitem - Trailing spaces are not removed. + Trailing spaces are not removed. Note that this does not prevent \TEX\ itself + from eating spaces as result of interpreting the line. For example, in - Note that this does not prevent \TEX\ itself from eating spaces as result of - interpreting the line. For example, in + \starttyping + before\directlua{tex.sprint("\\relax")tex.sprint(" inbetween")}after + \stoptyping -\starttyping -before\directlua{tex.sprint("\\relax")tex.sprint(" inbetween")}after -\stoptyping the space before \type {in between} will be gobbled as a result of the \quote {normal} scanning of \prm {relax}. \stopitem \stopitemize -If there is a table argument instead of a list of strings, this has to -be a consecutive array of strings to print (the first non-string value -will stop the printing process). +If there is a table argument instead of a list of strings, this has to be a +consecutive array of strings to print (the first non-string value will stop the +printing process). -The optional argument sets the catcode regime, as with \type {tex.print()}. +The optional argument sets the catcode regime, as with \type {tex.print}. This +influences the string arguments (or numbers turned into strings). -\subsubsection{\type {tex.tprint}} +Although this needs to be used with care, you can also pass token or node +userdata objects. These get injected into the stream. Tokens had best be valid +tokens, while nodes need to be around when they get injected. Therefore it is +important to realize the following: + +\startitemize +\startitem + When you inject a token, you need to pass a valid token userdata object. This + object will be collected by \LUA\ when it no longer is referenced. When it gets + printed to \TEX\ the token itself gets copied so there is no interference with the + \LUA\ garbage collection. You manage the object yourself. Because tokens are + actually just numbers, there is no real extra overhead at the \TEX\ end. +\stopitem +\startitem + When you inject a node, you need to pass a valid node userdata object. The + node related to the object will not be collected by \LUA\ when it no longer + is referenced. It lives on at the \TEX\ end in its own memory space. When it + gets printed to \TEX\ the node reference is used assuming that node stays + around. There is no \LUA\ garbage collection involved. Again, you manage the + object yourself. The node itself is freed when \TEX\ is done with it. +\stopitem +\stopitemize + +If you consider the last remark you might realize that we have a problem when a +printed mix of strings, tokens and nodes is reused. Inside \TEX\ the sequence +becomes a linked list of input buffers. So, \type {"123"} or \type {"\foo{123}"} +gets read and parsed on the fly, while \typ {<token userdata>} already is +tokenized and effectively is a token list now. A \typ {<node userdata>} is also +tokenized into a token list but it has a reference to a real node. Normally this +goes fine. But now assume that you store the whole lot in a macro: in that case +the tokenized node can be flushed many times. But, after the first such flush the +node is used and its memory freed. You can prevent this by using copies which is +controlled by setting \lpr {luacopyinputnodes} to a non|-|zero value. This is one +of these fuzzy areas you have to live with if you really mess with these low +level issues. + +\subsubsection{\type {tprint}} + +\libindex{tprint} \startfunctioncall tex.tprint({<number> n, <string> s, ...}, {...}) \stopfunctioncall -This function is basically a shortcut for repeated calls to \type {tex.sprint(<number> n, <string> s, ...)}, once for each of the supplied argument +This function is basically a shortcut for repeated calls to \type +{tex.sprint(<number> n, <string> s, ...)}, once for each of the supplied argument tables. -\subsubsection{\type {tex.cprint}} +\subsubsection{\type {cprint}} + +\libindex{cprint} This function takes a number indicating the to be used catcode, plus either a table of strings or an argument list of strings that will be pushed into the @@ -1071,7 +1277,11 @@ tex.cprint(12,"12: $&{\\foo}") tex.print("\\par") -- other characters tex.cprint(14,"12: $&{\\foo}") tex.print("\\par") -- comment triggers \stopfunctioncall -\subsubsection{\type {tex.write}} +\subsubsection{\type {write}, \type {twrite}, \type {nwrite}} + +\libindex{write} +\libindex{twrite} +\libindex{nwrite} \startfunctioncall tex.write(<string> s, ...) @@ -1082,8 +1292,8 @@ Each string argument is treated by \TEX\ as a special kind of input line that makes it suitable for use as a quick way to dump information: \startitemize -\item All catcodes on that line are either \quote{space} (for '~') or - \quote{character} (for all others). +\item All catcodes on that line are either \quote{space} (for '~') or \quote + {character} (for all others). \item There is no \prm {endlinechar} appended. \stopitemize @@ -1091,21 +1301,32 @@ If there is a table argument instead of a list of strings, this has to be a consecutive array of strings to print (the first non-string value will stop the printing process). -\subsection{Helper functions} +The functions \type {twrite} and \type {nwrite} can be used to write a token or +node back to \TEX\, possibly intermixed with regular strings that will be +tokenized. You have to make sure that you pass the right data because sometimes +\TEX\ has expectations that need to be met. + +\stopsubsection + +\startsubsection[title={Helper functions}] -\subsubsection{\type {tex.round}} +\subsubsection{\type {round}} \topicindex {helpers} +\libindex{round} + \startfunctioncall <number> n = tex.round(<number> o) \stopfunctioncall Rounds \LUA\ number \type {o}, and returns a number that is in the range of a valid \TEX\ register value. If the number starts out of range, it generates a -\quote {number to big} error as well. +\quote {number too big} error as well. + +\subsubsection{\type {scale}} -\subsubsection{\type {tex.scale}} +\libindex{scale} \startfunctioncall <number> n = tex.scale(<number> o, <number> delta) @@ -1116,13 +1337,39 @@ Multiplies the \LUA\ numbers \type {o} and \nod {delta}, and returns a rounded number that is in the range of a valid \TEX\ register value. In the table version, it creates a copy of the table with all numeric top||level values scaled in that manner. If the multiplied number(s) are of range, it generates -\quote{number to big} error(s) as well. +\quote{number too big} error(s) as well. Note: the precision of the output of this function will depend on your computer's architecture and operating system, so use with care! An interface to \LUATEX's internal, 100\% portable scale function will be added at a later date. -\subsubsection{\type {tex.sp}} +\subsubsection{\type {number} and \type {romannumeral}} + +\libindex{number} +\libindex{romannumeral} + +These are the companions to the primitives \prm {number} and \prm +{romannumeral}. They can be used like: + +\startfunctioncall +tex.print(tex.romannumeral(123)) +\stopfunctioncall + +\subsubsection{\type {fontidentifier} and \type {fontname}} + +\libindex{fontidentifier} +\libindex{fontname} + +The first one returns the name only, the second one reports the size too. + +\startfunctioncall +tex.print(tex.fontname(tex.fontname)) +tex.print(tex.fontname(tex.fontidentidier)) +\stopfunctioncall + +\subsubsection{\type {sp}} + +\libindex{sp} \startfunctioncall <number> n = tex.sp(<number> o) @@ -1149,21 +1396,11 @@ following: \stopitem \stopitemize -\subsubsection{\type {tex.definefont}} - -\topicindex{fonts+defining} - -\startfunctioncall -tex.definefont(<string> csname, <number> fontid) -tex.definefont(<boolean> global, <string> csname, <number> fontid) -\stopfunctioncall - -Associates \type {csname} with the internal font number \type {fontid}. The -definition is global if (and only if) \type {global} is specified and true (the -setting of \type {globaldefs} is not taken into account). - \subsubsection{\type {tex.getlinenumber} and \type {tex.setlinenumber}} +\libindex{getlinenumber} +\libindex{setlinenumber} + You can mess with the current line number: \startfunctioncall @@ -1182,21 +1419,74 @@ combines them in one line (in which case an error message probably has to refer to the original line). Interference with \TEX's internal handling of numbers is of course possible. -\subsubsection{\type {tex.error}} +\subsubsection{\type {error} and \type {show_context}} \topicindex{errors} +\libindex{error} +\libindex{show_context} + \startfunctioncall tex.error(<string> s) tex.error(<string> s, <table> help) \stopfunctioncall -This creates an error somewhat like the combination of \prm {errhelp} and \prm {errmessage} would. During this error, deletions are disabled. +This creates an error somewhat like the combination of \prm {errhelp} and \prm +{errmessage} would. During this error, deletions are disabled. The array part of the \type {help} table has to contain strings, one for each line of error help. -\subsubsection{\type {tex.hashtokens}} +In case of an error the \type {show_context} function will show the current +context where we're at (in the expansion). + +\subsubsection{\type {run}, \type {runtoks}, \type {finish}} + +\libindex{run} +\libindex{runtoks} +\libindex{finish} + +These two functions start the interpretations and force its end. A runs normally +boils down to \TEX\ entering the so called main loop. A token is fetched and +depending on it current meaning some actions takes place. Sometimes that actions +comes immediately, sometimes more scanning is needed. Quite often tokens get +pushed back into the input. This all means that the \TEX\ scanner is constantly +pushing and popping input states, but in the end after all the action is done +returns to the main loop. + +Because of the fact that \TEX\ is in a complex dance of expanding, dealing with +fonts, typesetting paragraphs, messing around with boxes, building pages, and so +on, you cannot easily run a nested \TEX\ run (read nested main loop). However, +there is an option to force a local run with \type {runtoks}. The content of the +given token list register gets expanded locally after which we return to where we +triggered this expansion, at the \LUA\ end. Instead a function can get passed +that does some work. You have to make sure that at the end \TEX\ is in a sane +state and this is not always trivial. A more complex mechanism would complicate +\TEX\ itself (and probably also harm performance) so this simple local expansion +loop has to do. + +\startfunctioncall +tex.runtoks(<token register>) +tex.runtoks(<lua function>) +\stopfunctioncall + +When the \prm {tracingnesting} parameter is set to a value larger than~2 some +information is reported about the state of the local loop. + +\subsubsection{\type {run}, \type {runtoks}, \type {finish}} + +\libindex{forcehmode} + +An example of a (possible error triggering) complication is that \TEX\ expects to +be in some state, say horizontal mode, and you have to make sure it is when you +start feeding back something from \LUA\ into \TEX. Normally a user will not run +into issues but when you start writing tokens or nodes or have a nested run there +can be situations that you need to run \type {forcehmode}. There is no recipe for +this and intercepting possible cases would weaken \LUATEX's flexibility. + +\subsubsection{\type {hashtokens}} + +\libindex{hashtokens} \topicindex{hash} @@ -1206,12 +1496,33 @@ for i,v in pairs (tex.hashtokens()) do ... end Returns a list of names. This can be useful for debugging, but note that this also reports control sequences that may be unreachable at this moment due to -local redefinitions: it is strictly a dump of the hash table. You can use \type {token.create} to inspect properties, for instance when the \type {command} key -in a created table equals \type {123}, you have the \type {cmdname} value \type {undefined_cs}. +local redefinitions: it is strictly a dump of the hash table. You can use \type +{token.create} to inspect properties, for instance when the \type {command} key +in a created table equals \type {123}, you have the \type {cmdname} value \type +{undefined_cs}. + +\subsubsection{\type {definefont}} + +\topicindex{fonts+defining} + +\libindex{definefont} + +\startfunctioncall +tex.definefont(<string> csname, <number> fontid) +tex.definefont(<boolean> global, <string> csname, <number> fontid) +\stopfunctioncall + +Associates \type {csname} with the internal font number \type {fontid}. The +definition is global if (and only if) \type {global} is specified and true (the +setting of \type {globaldefs} is not taken into account). + +\stopsubsection + +\startsubsection[reference=luaprimitives,title={Functions for dealing with primitives}] -\subsection[luaprimitives]{Functions for dealing with primitives} +\subsubsection{\type {enableprimitives}} -\subsubsection{\type {tex.enableprimitives}} +\libindex{enableprimitives} \topicindex{initialization} \topicindex{primitives} @@ -1220,11 +1531,10 @@ in a created table equals \type {123}, you have the \type {cmdname} value \type tex.enableprimitives(<string> prefix, <table> primitive names) \stopfunctioncall -This function accepts a prefix string and an array of primitive names. - -For each combination of \quote {prefix} and \quote {name}, the \type +This function accepts a prefix string and an array of primitive names. For each +combination of \quote {prefix} and \quote {name}, the \type {tex.enableprimitives} first verifies that \quote {name} is an actual primitive -(it must be returned by one of the \type {tex.extraprimitives()} calls explained +(it must be returned by one of the \type {tex.extraprimitives} calls explained below, or part of \TEX82, or \prm {directlua}). If it is not, \type {tex.enableprimitives} does nothing and skips to the next pair. @@ -1242,7 +1552,7 @@ does nothing and tries the next pair. An example: \starttyping - tex.enableprimitives('LuaTeX', {'formatname'}) +tex.enableprimitives('LuaTeX', {'formatname'}) \stoptyping will define \type {\LuaTeXformatname} with the same intrinsic meaning as the @@ -1256,20 +1566,22 @@ If you want to have all the new functionality available using their default names, as it is now, you will have to add \starttyping - \ifx\directlua\undefined \else - \directlua {tex.enableprimitives('',tex.extraprimitives ())} - \fi +\ifx\directlua\undefined \else + \directlua {tex.enableprimitives('',tex.extraprimitives ())} +\fi \stoptyping near the beginning of your format generation file. Or you can choose different prefixes for different subsets, as you see fit. -Calling some form of \type {tex.enableprimitives()} is highly important though, +Calling some form of \type {tex.enableprimitives} is highly important though, because if you do not, you will end up with a \TEX82-lookalike that can run \LUA\ code but not do much else. The defined csnames are (of course) saved in the format and will be available at runtime. -\subsubsection{\type {tex.extraprimitives}} +\subsubsection{\type {extraprimitives}} + +\libindex{extraprimitives} \startfunctioncall <table> t = tex.extraprimitives(<string> s, ...) @@ -1277,16 +1589,16 @@ format and will be available at runtime. This function returns a list of the primitives that originate from the engine(s) given by the requested string value(s). The possible values and their (current) -return values are: +return values are given in the following table. In addition the somewhat special +primitives \quote{\tex{ }}, \quote{\tex {/}} and \quote{\type {-}} are defined. \startluacode function document.showprimitives(tag) for k, v in table.sortedpairs(tex.extraprimitives(tag)) do - if v == ' ' then - v = '\\normalcontrolspace' + if v ~= ' ' and v ~= "/" and v ~= "-" then + context.type(v) + context.space() end - context.type(v) - context.space() end end \stopluacode @@ -1305,11 +1617,13 @@ Note that \type {luatex} does not contain \type {directlua}, as that is considered to be a core primitive, along with all the \TEX82 primitives, so it is part of the list that is returned from \type {'core'}. -Running \type {tex.extraprimitives()} will give you the complete list of +Running \type {tex.extraprimitives} will give you the complete list of primitives \type {-ini} startup. It is exactly equivalent to \type {tex.extraprimitives("etex","luatex")}. -\subsubsection{\type {tex.primitives}} +\subsubsection{\type {primitives}} + +\libindex{primitives} \startfunctioncall <table> t = tex.primitives() @@ -1317,38 +1631,47 @@ primitives \type {-ini} startup. It is exactly equivalent to \type This function returns a list of all primitives that \LUATEX\ knows about. -\subsection{Core functionality interfaces} +\stopsubsection -\subsubsection{\type {tex.badness}} +\startsubsection[title={Core functionality interfaces}] + +\subsubsection{\type {badness}} + +\libindex{badness} \startfunctioncall <number> b = tex.badness(<number> t, <number> s) \stopfunctioncall -This helper function is useful during linebreak calculations. \type {t} and \type {s} are scaled values; the function returns the badness for when total \type {t} +This helper function is useful during linebreak calculations. \type {t} and \type +{s} are scaled values; the function returns the badness for when total \type {t} is supposed to be made from amounts that sum to \type {s}. The returned number is -a reasonable approximation of $100(t/s)^3$; +a reasonable approximation of \mathematics {100(t/s)^3}; \subsubsection{\type {tex.resetparagraph}} \topicindex {paragraphs+reset} +\libindex{resetparagraph} + This function resets the parameters that \TEX\ normally resets when a new paragraph is seen. -\subsubsection{\type {tex.linebreak}} +\subsubsection{\type {linebreak}} \topicindex {linebreaks} +\libindex{linebreak} + \startfunctioncall local <node> nodelist, <table> info = - tex.linebreak(<node> listhead, <table> parameters) + tex.linebreak(<node> listhead, <table> parameters) \stopfunctioncall The understood parameters are as follows: \starttabulate[|l|l|p|] -\DB name \BC type \BC description \NC \NR +\DB name \BC type \BC explanation \NC \NR \TB \NC \type{pardir} \NC string \NC \NC \NR \NC \type{pretolerance} \NC number \NC \NC \NR @@ -1410,6 +1733,8 @@ to a \prm {vbox}. The returned \type {info} table contains four values that are all numbers: \starttabulate[|l|p|] +\DB name \BC explanation \NC \NR +\TB \NC prevdepth \NC depth of the last line in the broken paragraph \NC \NR \NC prevgraf \NC number of lines in the broken paragraph \NC \NR \NC looseness \NC the actual looseness value in the broken paragraph \NC \NR @@ -1420,35 +1745,83 @@ all numbers: Note there are a few things you cannot interface using this function: You cannot influence font expansion other than via \type {pdfadjustspacing}, because the settings for that take place elsewhere. The same is true for hbadness and hfuzz -etc. All these are in the \type {hpack()} routine, and that fetches its own +etc. All these are in the \type {hpack} routine, and that fetches its own variables via globals. -\subsubsection{\type {tex.shipout}} +\subsubsection{\type {shipout}} \topicindex {shipout} +\libindex{shipout} + \startfunctioncall tex.shipout(<number> n) \stopfunctioncall Ships out box number \type {n} to the output file, and clears the box register. -\subsubsection{\type {tex.getpagestate}} +\subsubsection{\type {getpagestate}} \topicindex {pages} +\libindex{getpagestate} + This helper reports the current page state: \type {empty}, \type {box_there} or \type {inserts_only} as integer value. -\subsection[synctex]{Functions related to synctex} +\subsubsection{\type {getlocallevel}} + +\topicindex {nesting} + +\libindex{getlocallevel} + +This integer reports the current level of the local loop. It's only useful for +debugging and the (relative state) numbers can change with the implementation. + +\stopsubsection + +\startsubsection[title={Randomizers}] + +\libindex{lua_math_random} +\libindex{lua_math_randomseed} +\libindex{init_rand} +\libindex{normal_rand} +\libindex{uniform_rand} +\libindex{uniformdeviate} + +For practical reasons \LUATEX\ has its own random number generator. The original +\LUA\ random function is available as \typ {tex.lua_math_random}. You can +initialize with a new seed with \type {init_rand} (\typ {lua_math_randomseed} is +equivalent to this one. + +There are three generators: \type {normal_rand} (no argument is used), \type +{uniform_rand} (takes a number that will get rounded before being used) and \type +{uniformdeviate} which behaves like the primitive and expects a scaled integer, so + +\startfunctioncall +tex.print(tex.uniformdeviate(65536)/65536) +\stopfunctioncall + +will give a random number between zero and one. + +\stopsubsection + +\startsubsection[reference=synctex,title={Functions related to synctex}] \topicindex {synctex} +\libindex{set_synctex_mode} \libindex{get_synctex_mode} +\libindex{set_synctex_no_files} +\libindex{set_synctex_tag} \libindex{get_synctex_tag} \libindex{force_synctex_tag} +\libindex{set_synctex_line} \libindex{get_synctex_line} \libindex{force_synctex_line} + The next helpers only make sense when you implement your own synctex logic. Keep in mind that the library used in editors assumes a certain logic and is geared for plain and \LATEX, so after a decade users expect a certain behaviour. \starttabulate[|l|p|] +\DB name \BC explanation \NC \NR +\TB \NC \type{set_synctex_mode} \NC \type {0} is the default and used normal synctex logic, \type {1} uses the values set by the next helpers while \type {2} also sets these for glyph @@ -1456,11 +1829,12 @@ plain and \LATEX, so after a decade users expect a certain behaviour. sets only glyphs \NC \NR \NC \type{set_synctex_tag} \NC set the current tag (file) value (obeys save stack) \NC \NR \NC \type{set_synctex_line} \NC set the current line value (obeys save stack) \NC \NR -\NC \type{force_synctex_tag} \NC overload the tag (file) value (\type {0} resets) \NC \NR -\NC \type{force_synctex_line} \NC overload the line value (\type {0} resets) \NC \NR +\NC \type{set_synctex_no_files} \NC disable synctex file logging \NC \NR +\NC \type{get_synctex_mode} \NC returns the current mode (for values see above) \NC \NR \NC \type{get_synctex_tag} \NC get the currently set value of tag (file) \NC \NR \NC \type{get_synctex_line} \NC get the currently set value of line \NC \NR -\NC \type{set_synctex_no_files} \NC disable synctex file logging \NC \NR +\NC \type{force_synctex_tag} \NC overload the tag (file) value (\type {0} resets) \NC \NR +\NC \type{force_synctex_line} \NC overload the line value (\type {0} resets) \NC \NR \LL \stoptabulate @@ -1468,9 +1842,11 @@ The last one is somewhat special. Due to the way files are registered in \SYNCTE to explicitly disable that feature if we provide our own alternative if we want to avoid that overhead. Passing a value of 1 disables registering. -This mechanism is somewhat experimental. +\stopsubsection + +\stopsection -\section[texconfig]{The \type {texconfig} table} +\startsection[title={The \type {texconfig} table},reference=texconfig][library=texconfig] \topicindex{libraries+\type{texconfig}} @@ -1490,9 +1866,9 @@ the executable after loading and executing the startup file. this if you implement {\it all\/} file find callbacks!) \NC \NR \NC - \type{shell_escape} \NC string \NC \type {'f'} \NC - Use \type {'y'} or \type {'t'} or \type {'1'} to enable \type {\write18} - unconditionally, \type {'p'} to enable the commands that are listed in \type {shell_escape_commands} + \type{shell_escape} \NC string \NC \type {'f'} \NC Use \type {'y'} or \type + {'t'} or \type {'1'} to enable \type {\write18} unconditionally, \type {'p'} + to enable the commands that are listed in \type {shell_escape_commands} \NC \NR \NC shell_escape_commands \NC string \NC \NC Comma-separated list of command @@ -1542,10 +1918,13 @@ the executable after loading and executing the startup file. \LL \stoptabulate -Note: the numeric values that match web2c parameters are only used if \type {kpse_init} is explicitly set to \type {false}. In all other cases, the normal +Note: the numeric values that match web2c parameters are only used if \type +{kpse_init} is explicitly set to \type {false}. In all other cases, the normal values from \type {texmf.cnf} are used. -\section{The \type {texio} library} +\stopsection + +\startsection[title={The \type {texio} library}][library=texio] \topicindex{libraries+\type{texio}} \topicindex{\IO} @@ -1553,7 +1932,9 @@ values from \type {texmf.cnf} are used. This library takes care of the low|-|level I/O interface: writing to the log file and|/|or console. -\subsection{\type {texio.write}} +\startsubsection[title={\type {write}}] + +\libindex{write} \startfunctioncall texio.write(<string> target, <string> s, ...) @@ -1563,13 +1944,18 @@ texio.write(<string> s, ...) Without the \type {target} argument, writes all given strings to the same location(s) \TEX\ writes messages to at this moment. If \prm {batchmode} is in effect, it writes only to the log, otherwise it writes to the log and the -terminal. The optional \type {target} can be one of three possibilities: \type {term}, \type {log} or \type {term and log}. +terminal. The optional \type {target} can be one of three possibilities: \type +{term}, \type {log} or \type {term and log}. Note: If several strings are given, and if the first of these strings is or might be one of the targets above, the \type {target} must be specified explicitly to prevent \LUA\ from interpreting the first string as the target. -\subsection{\type {texio.write_nl}} +\stopsubsection + +\startsubsection[title={\type {write_nl}}] + +\libindex{write_nl} \startfunctioncall texio.write_nl(<string> target, <string> s, ...) @@ -1580,55 +1966,94 @@ This function behaves like \type {texio.write}, but make sure that the given strings will appear at the beginning of a new line. You can pass a single empty string if you only want to move to the next line. -\subsection{\type {texio.setescape}} +\stopsubsection + +\startsubsection[title={\type {setescape}}] + +\libindex{setescape} You can disable \type {^^} escaping of control characters by passing a value of zero. -\section{The \type {token} library} +\stopsubsection + +\startsubsection[title={\type {closeinput}}] + +\libindex{closeinput} + +This function that should be used with care. It acts as \prm {endinput} but at +the \LUA\ end. You can use it to (sort of) force a jump back to \TEX. Normally a +\LUA\ will just collect prints and at the end bump an input level and flush these +prints. This function can help you stay at the current level but you need to know +what you're doing (or more precise: what \TEX\ is doing with input). + +\stopsubsection -\subsection{The scanner} +\stopsection + +\startsection[title={The \type {token} library}][library=token] + +\startsubsection[title={The scanner}] \topicindex{libraries+\type{token}} \topicindex{tokens} +\libindex{scan_keyword} +\libindex{scan_keywordcs} +\libindex{scan_int} +\libindex{scan_real} +\libindex{scan_float} +\libindex{scan_dimen} +\libindex{scan_glue} +\libindex{scan_toks} +\libindex{scan_code} +\libindex{scan_string} +\libindex{scan_argument} +\libindex{scan_word} +\libindex{scan_csname} +\libindex{scan_list} + The token library provides means to intercept the input and deal with it at the \LUA\ level. The library provides a basic scanner infrastructure that can be used to write macros that accept a wide range of arguments. This interface is on -purpose kept general and as performance is quite ok one can build additional +purpose kept general and as performance is quite ok. One can build additional parsers without too much overhead. It's up to macro package writers to see how they can benefit from this as the main principle behind \LUATEX\ is to provide a -minimal set of tools and no solutions. The functions provided in the \type -{token} namespace are given in the next table: +minimal set of tools and no solutions. The scanner functions are probably the +most intriguing. \starttabulate[|l|l|p|] -\DB function \BC argument \BC result \NC \NR +\DB function \BC argument \BC result \NC \NR \TB -\NC \type{is_token} \NC token \NC checks if the given argument is a token userdatum \NC \NR -\NC \type{get_next} \NC \NC returns the next token in the input \NC \NR -\NC \type{scan_keyword} \NC string \NC returns true if the given keyword is gobbled \NC \NR -\NC \type{scan_int} \NC \NC returns a number \NC \NR -\NC \type{scan_dimen} \NC infinity, mu-units \NC returns a number representing a dimension and or two numbers being the filler and order \NC \NR -\NC \type{scan_glue} \NC mu-units \NC returns a glue spec node \NC \NR -\NC \type{scan_toks} \NC definer, expand \NC returns a table of tokens token list (this can become a linked list in later releases) \NC \NR -\NC \type{scan_code} \NC bitset \NC returns a character if its category is in the given bitset (representing catcodes) \NC \NR -\NC \type{scan_string} \NC \NC returns a string given between \type {{}}, as \type {\macro} or as sequence of characters with catcode 11 or 12 \NC \NR -\NC \type{scan_word} \NC \NC returns a sequence of characters with catcode 11 or 12 as string \NC \NR -\NC \type{scan_csname} \NC \NC returns \type {foo} after scanning \type {\foo} \NC \NR -\NC \type{set_macro} \NC see below \NC assign a macro \NC \NR -\NC \type{create} \NC \NC returns a userdata token object of the given control sequence name (or character); this interface can change \NC \NR +\NC \type{scan_keyword} \NC string \NC returns true if the given keyword is gobbled; as with + the regular \TEX\ keyword scanner this is case insensitive + (and \ASCII\ based) \NC \NR +\NC \type{scan_keywordcs} \NC string \NC returns true if the given keyword is gobbled; this variant + is case sensitive and also suitable for \UTF8 \NC \NR +\NC \type{scan_int} \NC \NC returns an integer \NC \NR +\NC \type{scan_real} \NC \NC returns a number from e.g.\ \type {1}, \type {1.1}, \type {.1} with optional collapsed signs \NC \NR +\NC \type{scan_float} \NC \NC returns a number from e.g.\ \type {1}, \type {1.1}, \type {.1}, \type {1.1E10}, , \type {.1e-10} with optional collapsed signs \NC \NR +\NC \type{scan_dimen} \NC infinity, mu-units \NC returns a number representing a dimension and or two numbers being the filler and order \NC \NR +\NC \type{scan_glue} \NC mu-units \NC returns a glue spec node \NC \NR +\NC \type{scan_toks} \NC definer, expand \NC returns a table of tokens tokens \NC \NR +\NC \type{scan_code} \NC bitset \NC returns a character if its category is in the given bitset (representing catcodes) \NC \NR +\NC \type{scan_string} \NC \NC returns a string given between \type {{}}, as \type {\macro} or as sequence of characters with catcode 11 or 12 \NC \NR +\NC \type{scan_argument} \NC \NC this one is simular to \type {scanstring} but also accepts a \type {\cs} + (which then get expanded) \NC \NR +\NC \type{scan_word} \NC \NC returns a sequence of characters with catcode 11 or 12 as string \NC \NR +\NC \type{scan_csname} \NC \NC returns \type {foo} after scanning \type {\foo} \NC \NR +\NC \type{scan_list} \NC \NC picks up a box specification and returns a \type {[h|v]list} node \NC \NR \LL \stoptabulate The scanners can be considered stable apart from the one scanning for a token. -This is because futures releases can return a linked list instead of a table (as -with nodes). The \type {scan_code} function takes an optional number, the \type {keyword} function a normal \LUA\ string. The \type {infinity} boolean signals -that we also permit \type {fill} as dimension and the \type {mu-units} flags the -scanner that we expect math units. When scanning tokens we can indicate that we -are defining a macro, in which case the result will also provide information -about what arguments are expected and in the result this is separated from the -meaning by a separator token. The \type {expand} flag determines if the list will -be expanded. +The \type {scan_code} function takes an optional number, the \type {keyword} +function a normal \LUA\ string. The \type {infinity} boolean signals that we also +permit \type {fill} as dimension and the \type {mu-units} flags the scanner that +we expect math units. When scanning tokens we can indicate that we are defining a +macro, in which case the result will also provide information about what +arguments are expected and in the result this is separated from the meaning by a +separator token. The \type {expand} flag determines if the list will be expanded. The string scanner scans for something between curly braces and expands on the way, or when it sees a control sequence it will return its meaning. Otherwise it @@ -1645,6 +2070,8 @@ following definition: we get: \starttabulate[|l|Tl|l|] +\DB name \BC result \NC \NR +\TB \NC \type {\directlua{token.scan_string()}{foo}} \NC \directlua{context("{\\red\\type {"..token.scan_string().."}}")} {foo} \NC full expansion \NC \NR \NC \type {\directlua{token.scan_string()}foo} \NC \directlua{context("{\\red\\type {"..token.scan_string().."}}")} foo \NC letters and others \NC \NR \NC \type {\directlua{token.scan_string()}\foo} \NC \directlua{context("{\\red\\type {"..token.scan_string().."}}")}\foo \NC meaning \NC \NR @@ -1653,7 +2080,7 @@ we get: The \type {\foo} case only gives the meaning, but one can pass an already expanded definition (\prm {edef}'d). In the case of the braced variant one can of -course use the \prm {detokenize} and \prm {unexpanded} primitives as there we +course use the \prm {detokenize} and \prm {unexpanded} primitives since there we do expand. The \type {scan_word} scanner can be used to implement for instance a number scanner: @@ -1667,36 +2094,7 @@ end This scanner accepts any valid \LUA\ number so it is a way to pick up floats in the input. -The creator function can be used as follows: - -\starttyping -local t = token.create("relax") -\stoptyping - -This gives back a token object that has the properties of the \prm {relax} -primitive. The possible properties of tokens are: - -\starttabulate[|l|p|] -\NC \type {command} \NC a number representing the internal command number \NC \NR -\NC \type {cmdname} \NC the type of the command (for instance the catcode in case of a - character or the classifier that determines the internal - treatment \NC \NR -\NC \type {csname} \NC the associated control sequence (if applicable) \NC \NR -\NC \type {id} \NC the unique id of the token \NC \NR -%NC \type {tok} \NC \NC \NR % might change -\NC \type {active} \NC a boolean indicating the active state of the token \NC \NR -\NC \type {expandable} \NC a boolean indicating if the token (macro) is expandable \NC \NR -\NC \type {protected} \NC a boolean indicating if the token (macro) is protected \NC \NR -\LL -\stoptabulate - -The numbers that represent a catcode are the same as in \TEX\ itself, so using -this information assumes that you know a bit about \TEX's internals. The other -numbers and names are used consistently but are not frozen. So, when you use them -for comparing you can best query a known primitive or character first to see the -values. - -More interesting are the scanners. You can use the \LUA\ interface as follows: +You can use the \LUA\ interface as follows: \starttyping \directlua { @@ -1740,19 +2138,151 @@ argument(s). For the second method you need to look at the \LUA\ code to see wha gets picked up. Instead of passing from \TEX\ to \LUA\ we let \LUA\ fetch from the input stream. -In the first case the input is tokenized and then turned into a string when it's -passed to \LUA\ where it gets interpreted. In the second case only a function +In the first case the input is tokenized and then turned into a string, then it +is passed to \LUA\ where it gets interpreted. In the second case only a function call gets interpreted but then the input is picked up by explicitly calling the scanner functions. These return proper \LUA\ variables so no further conversion has to be done. This is more efficient but in practice (given what \TEX\ has to -do) this effect should not be overestimated. For numbers and dimensions it saves a -bit but for passing strings conversion to and from tokens has to be done anyway +do) this effect should not be overestimated. For numbers and dimensions it saves +a bit but for passing strings conversion to and from tokens has to be done anyway (although we can probably speed up the process in later versions if needed). -\subsection{Macros} +\stopsubsection + +\startsubsection[title= {Picking up one token}] + +\libindex {get_next} +\libindex {scan_token} +\libindex {expand} + +The scanners look for a sequence. When you want to pick up one token from the +input you use \type {get_next}. This creates a token with the (low level) +properties as discussed next. This token is just the next one. If you want to +enforce expansion first you can use \type {scan_token}. Internally tokens are +characterized by a number that packs a lot of information. In order to access +the bits of information a token is wrapped in a userdata object. + +The \type {expand} function will trigger expansion of the next token in the +input. This can be quite unpredictable but when you call it you probably know +enough about \TEX\ not to be too worried about that. It basically is a call to +the internal expand related function. + +\stopsubsection + +\startsubsection[title={Creating tokens}] + +\libindex{create} +\libindex{new} + +\libindex{is_defined} +\libindex{is_token} +\libindex{biggest_char} + +\libindex{commands} +\libindex{command_id} + +\libindex{get_command} +\libindex{get_cmdname} +\libindex{get_csname} +\libindex{get_id} +\libindex{get_active} +\libindex{get_expandable} +\libindex{get_protected} +\libindex{get_mode} +\libindex{get_index} +\libindex{get_tok} + +\libindex{get_next} + +The creator function can be used as follows: + +\starttyping +local t = token.create("relax") +\stoptyping + +This gives back a token object that has the properties of the \prm {relax} +primitive. The possible properties of tokens are: + +\starttabulate[|l|p|] +\DB name \BC explanation \NC \NR +\TB +\NC \type {command} \NC a number representing the internal command number \NC \NR +\NC \type {cmdname} \NC the type of the command (for instance the catcode in case of a + character or the classifier that determines the internal + treatment \NC \NR +\NC \type {csname} \NC the associated control sequence (if applicable) \NC \NR +\NC \type {id} \NC the unique id of the token \NC \NR +\NC \type {tok} \NC the full token number as stored in \TEX \NC \NR +\NC \type {active} \NC a boolean indicating the active state of the token \NC \NR +\NC \type {expandable} \NC a boolean indicating if the token (macro) is expandable \NC \NR +\NC \type {protected} \NC a boolean indicating if the token (macro) is protected \NC \NR +\NC \type {mode} \NC a number either representing a character or another entity \NC \NR +\NC \type {index} \NC a number running from 0x0000 upto 0xFFFF indicating a \TEX\ register index \NC \NR +\LL +\stoptabulate + +Alternatively you can use a getter \type {get_<fieldname>} to access a property +of a token. + +The numbers that represent a catcode are the same as in \TEX\ itself, so using +this information assumes that you know a bit about \TEX's internals. The other +numbers and names are used consistently but are not frozen. So, when you use them +for comparing you can best query a known primitive or character first to see the +values. + +You can ask for a list of commands: + +\starttyping +local t = token.commands() +\stoptyping + +The id of a token class can be queried as follows: + +\starttyping +local id = token.command_id("math_shift") +\stoptyping + +If you really know what you're doing you can create character tokens by not +passing a string but a number: + +\starttyping +local letter_x = token.create(string.byte("x")) +local other_x = token.create(string.byte("x"),12) +\stoptyping + +Passing weird numbers can give side effects so don't expect too much help with +that. As said, you need to know what you're doing. The best way to explore the +way these internals work is to just look at how primitives or macros or \prm +{chardef}'d commands are tokenized. Just create a known one and inspect its +fields. A variant that ignores the current catcode table is: + +\starttyping +local whatever = token.new(123,12) +\stoptyping + +You can test if a control sequence is defined with \type {is_defined}, which +accepts a string and returns a boolean: + +\starttyping +local okay = token.is_defined("foo") +\stoptyping + +The largest character possible is returned by \type {biggest_char}, just in case you +need to know that boundary condition. + +\stopsubsection + +\startsubsection[title={Macros}] \topicindex {macros} +\libindex{set_macro} +\libindex{get_macro} +\libindex{get_meaning} +\libindex{set_char} +\libindex{set_lua} +\libindex{get_functions_table} + The \type {set_macro} function can get upto 4 arguments: \starttyping @@ -1782,16 +2312,30 @@ the \type {get_meaning} function gives the meaning including the argument specification (as usual in \TEX\ separated by \type {->}). The \type {set_char} function can be used to do a \prm {chardef} at the -\LUA\ end: +\LUA\ end, where invalid assignments are silently ignored: \starttyping set_char("csname",number) set_char("csname",number,"global") \stoptyping -Invalid assignments are silently ignored. +A special one is the following: -\subsection{Pushing back} +\starttyping +set_lua("mycode",id) +set_lua("mycode",id,"global","protected") +\stoptyping + +This creates a token that refers to a \LUA\ function with an entry in the table +that you can access with \type {lua.get_functions_table}. It is the companion +to \lpr {luadef}. + +\stopsubsection + +\startsubsection[title={Pushing back}] + +\libindex{get_next} +\libindex{put_next} There is a (for now) experimental putter: @@ -1807,9 +2351,12 @@ token.put_next ( t3, t4 ) \stoptyping When we scan \type {wxyz!} we get \type {yzwx!} back. The argument is either a table -with tokens or a list of tokens. +with tokens or a list of tokens. The \type {token.expand} function will trigger +expansion but what happens really depends on what you're doing where. -\subsection{Nota bene} +\stopsubsection + +\startsubsection[title={Nota bene}] When scanning for the next token you need to keep in mind that we're not scanning like \TEX\ does: expanding, changing modes and doing things as it goes. When we @@ -1897,7 +2444,11 @@ So, we do get a unique token because after all we need some kind of \LUA\ object that can be used and garbage collected, but it is basically the same one, representing an undefined control sequence. -\section{The \type {kpse} library} +\stopsubsection + +\stopsection + +\startsection[title={The \type {kpse} library}][library=kpse] \topicindex{libraries+\type{kpse}} @@ -1906,7 +2457,15 @@ This library provides two separate, but nearly identical interfaces to the interface that shares its kpathsea instance with \LUATEX\ itself, and an object oriented interface that is completely on its own. -\subsection{\type {kpse.set_program_name} and \type {kpse.new}} +\startsubsection[title={\type {set_program_name} and \type {new}}] + +\libindex{set_program_name} +\libindex{default_texmfcnf} +\libindex{new} + +The way the library looks up variables is driven by the \type {texmf.cmf} file +where the currently set program name acts as filter. You can check what file is +used by with \type {default_texmfcnf}. Before the search library can be used at all, its database has to be initialized. There are three possibilities, two of which belong to the procedural interface. @@ -1938,13 +2497,17 @@ local kpathsea = kpse.new(<string> name, <string> progname) Apart from these two functions, the calling conventions of the interfaces are identical. Depending on the chosen interface, you either call \type -{kpse.find_file()} or \type {kpathsea:find_file()}, with identical arguments and -return vales. +{kpse.find_file} or \type {kpathsea:find_file}, with identical arguments and +return values. -\subsection{\type {find_file}} +\stopsubsection + +\startsubsection[title={\type {find_file}}] \topicindex {files+finding} +\libindex {find_file} + The most often used function in the library is \type {find_file}: \startfunctioncall @@ -2045,7 +2608,11 @@ will search the disk as well as the \type {ls-R} databases. This is used for the size argument of the formats \type {pk}, \type {gf}, and \type {bitmap font}. \stopitemize -\subsection{\type {lookup}} +\stopsubsection + +\startsubsection[title={\type {lookup}}] + +\libindex{lookup} A more powerful (but slower) generic method for finding files is also available. It returns a string for each found file. @@ -2057,7 +2624,7 @@ It returns a string for each found file. The options match commandline arguments from \type {kpsewhich}: \starttabulate[|l|l|p|] -\DB key \BC type \BC description \NC \NR +\DB key \BC type \BC explanation \NC \NR \TB \NC \type{debug} \NC number \NC set debugging flags for this lookup\NC \NR \NC \type{format} \NC string \NC use specific file type (see list above)\NC \NR @@ -2075,10 +2642,14 @@ The options match commandline arguments from \type {kpsewhich}: \LL \stoptabulate -\subsection{\type {init_prog}} +\stopsubsection + +\startsubsection[title={\type {init_prog}}] \topicindex {initialization+bitmaps} +\libindex{init_prog} + Extra initialization for programs that need to generate bitmap fonts. \startfunctioncall @@ -2086,7 +2657,11 @@ kpse.init_prog(<string> prefix, <number> base_dpi, <string> mfmode) kpse.init_prog(<string> prefix, <number> base_dpi, <string> mfmode, <string> fallback) \stopfunctioncall -\subsection{\type {readable_file}} +\stopsubsection + +\startsubsection[title={\type {readable_file}}] + +\libindex{readable_file} Test if an (absolute) file name is a readable file. @@ -2099,7 +2674,11 @@ name is not always the same as the requested name, due to aliases and system|-|specific handling under e.g.\ \MSDOS. Returns \type {nil} if the file does not exist or is not readable. -\subsection{\type {expand_path}} +\stopsubsection + +\startsubsection[title={\type {expand_path}}] + +\libindex{expand_path} Like kpsewhich's \type {-expand-path}: @@ -2107,7 +2686,11 @@ Like kpsewhich's \type {-expand-path}: <string> r = kpse.expand_path(<string> s) \stopfunctioncall -\subsection{\type {expand_var}} +\stopsubsection + +\startsubsection[title={\type {expand_var}}] + +\libindex{expand_var} Like kpsewhich's \type {-expand-var}: @@ -2115,7 +2698,11 @@ Like kpsewhich's \type {-expand-var}: <string> r = kpse.expand_var(<string> s) \stopfunctioncall -\subsection{\type {expand_braces}} +\stopsubsection + +\startsubsection[title={\type {expand_braces}}] + +\libindex{expand_braces} Like kpsewhich's \type {-expand-braces}: @@ -2123,7 +2710,11 @@ Like kpsewhich's \type {-expand-braces}: <string> r = kpse.expand_braces(<string> s) \stopfunctioncall -\subsection{\type {show_path}} +\stopsubsection + +\startsubsection[title={\type {show_path}}] + +\libindex{show_path} Like kpsewhich's \type {-show-path}: @@ -2131,8 +2722,11 @@ Like kpsewhich's \type {-show-path}: <string> r = kpse.show_path(<string> ftype) \stopfunctioncall +\stopsubsection -\subsection{\type {var_value}} +\startsubsection[title={\type {var_value}}] + +\libindex{var_value} Like kpsewhich's \type {-var-value}: @@ -2140,7 +2734,11 @@ Like kpsewhich's \type {-var-value}: <string> r = kpse.var_value(<string> s) \stopfunctioncall -\subsection{\type {version}} +\stopsubsection + +\startsubsection[title={\type {version}}] + +\libindex{version} Returns the kpathsea version string. @@ -2148,6 +2746,10 @@ Returns the kpathsea version string. <string> r = kpse.version() \stopfunctioncall +\stopsubsection + +\stopsection + \stopchapter \stopcomponent diff --git a/manual/luatex-titlepage.tex b/manual/luatex-titlepage.tex index 3692ff893..5a91f73e8 100644 --- a/manual/luatex-titlepage.tex +++ b/manual/luatex-titlepage.tex @@ -22,7 +22,7 @@ [align=middle, foregroundcolor=white, frame=off] - {Lua\TeX\crlf Reference\crlf Manual} + {\documentvariable{manual}\crlf Reference\crlf Manual} \definedfont[Bold*default at 14pt] \setupinterlinespace diff --git a/manual/luatex.pdf b/manual/luatex.pdf index 5312f317e6a0dd12ca31dd4095dafb2b58dfcaf2..dd73cae76fc1b3956348989b013cd633b9afaabf 100644 GIT binary patch literal 1529094 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�Y4ulOK?K-r~2PjeLKH2bW+4v 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%0A1C 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 z%0A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%0AY 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.X z@shk_jK12wz$Gi2UsuR%K)JP7&@zm=@ECd|%}y03o7XqLnD$WI+!m;RwsgMKQcWz( zEc+qahwRBox`X}0Yo!T9-d^etC_s<#0QmaQn?`0Ky~Z8%4=y;n3<?Sw!l!4?<hMRT zfmML0O0;u>HPCo%W`Gsra>LOt7HVGREGL}A=pP>1|5T+zAeuzZ1V+~44>S;euN-0= zR598CH|BoCh0wLz4_v|?L{3z`8EoFsKNR^=Nr~jMGX^X`RBMXO`p+1RGc~3ec7SkW zEy8OodR>lzU7m39Nq6tUu^#M9Nqnl#$BMuSTt#3fWSF>O&;UAkGG0~~ub*D6vE5fI z6x638j-7y2V+1^cyrwN2i+*^4c<@%qm(g&afF#>jrMrV=91CVL!^ui<32BWd05gK} zFkaH>^ktzNzvLS(m214-18*SHrJj&X%qRfc8i0D@0c7=xIG&miqS(4)h)azt5igG@ znOKQo!MtH4@`rVfW8GrF{~H|i(g{2k3gx_l*+AkPkLnW{Ngo;lCD7X~1^Xp%D>c!p zE$DG;Uklz$E8Y_CFgbsHkRIqE_qJ)=L%UGeTr2ey4p)U!x;_{gLqcOcemq~3qE7)F zDuw<vCUUY51CgrDAt{dgB?)grmkut}rMi~3xCtum!Yi7MfRg4&V`X0uf_x}<O||d~ zyC*?rGjTe(DSsQF9J-U0!jJq3$*!VN0I@SkV6K2b7PI0uaAELeVz!IuY0H|=jvuoY z3QI_SMJAg(s7PogiWhz9R6Mr2JU);eV9>`{8F3pdj>Hc8w8Q*-?|d#|@dRWRw&(-q z3s2k0{_NTIFid$CLyiC2jG)fwOIyT2WRd81@tCd^k;#&#TmqV_a9G~~$QjJE-RA5L zH%CNTJ%k-(FPGtp9D)JEd42w}<CMJpuLyIMLNSNji35Q40UcK@Ij|_Wtcg^{9@&AD z!%V^S1eQ;U(Qu7v@}JDX(fs@DQM_Q7>-{s}kWSifcJ%XZp<QZB;74}F_}mnQkS%J> zkFBVr)6eyEkQmzjQ^D*t(Bt@UVGC+gdo)VSH-Tw!s0!H5^7~w>Dq0sQSu{tum(YKa zQ+I^Dslm@lr<4A9*W?^nkEy}Dn{X>=yV5cIOqNzUS?23;DILEKt3&o7UU<nUD9*-E z&*+_}CVxX^1#}jZ@GcIPTyih|@mbI87UA$sL@tBv+sYKrIeg+C6g`}rD|7O90^-|R z?_4Td_!JYIjz{uL_~!OHPFrGPDx!6eT9>n)pQkr;-~QN5&7;#-2*$f%#HBn7dVN>V zSqQg)-Y#wNeS$^qX^Xjb_+z=PvnSYfKzt4o!WE!9KCdiN3HG<3^rUTSfIEk5uvJ*& z;XH#Eh`BE+u*GpId@Ec0eYW9!{E0Eb%b_T+;-O20lE|;kd)>;tvV`qhltR71mAI`J z(<ta(D6`^5@4M?Q_G)KQzM)l}MrA-|psRZpV02X|)hB7X3TpK=htK@;sa2#rmo-Yk zBnPcXT|?2#<)@?W!mlC10bYuW-%)bKoY{my=1*)WQm8Rq_L`pAJ5c3v*Y7nH40_10 z^aQs4y2W>6i$?50GH+lTqd^fna!+Jz8I`y?SWM&jy(Bi;!TxoW&zJfHI1rx<MvaRS zhQEj{FK@~5sMjsHlz-sfx-qR|M-RmtrJ?p9Zr>Tu%pEdAgVXK<6T%4jpwwRGxLG(1 z$Jjzdd&R;lb~*34rlcy<11N73;MF~YzU{mQ&l;9A6iySaD^Yz0%6-3J#@3N9$~y4V z?E%+n{ifx8df4qCVeVXz6sFLRV%{jK^F!x^^MYY6U95pcr>cLv4VDj%VdHAn9~6-K z7EKBXo=zo=v_o^|(%*u^jX?SlUk;U!^ZWu^5=GNH6mKP8$-<){k2(K0#vxkMB36Ni z?|k}-dUfqaXzU23!afq|U(zuJ7>>#y?n~fc%-rApTn)H__Be?P_0ws}y+qK?MNFrg zc}<ZFIjV=i$;GzCOqMN>A@2$*>|;-)EcU>NkXP?C;!<Hv&re>rME6NnKI0FX!PNaT z^sxl9^8=q?mXg4CPHpcVU;kgd!yT!D_uVJ#zdyWixq5QH13IB>%ZrPD?C2vs*ahN- z<vSTfOFd{KUEDk|M$n2WMAS13t3{dA%rOq^IrgJOnc%767)|DT>}V4AHG>{(F$A~4 z5|dgR@*ix3nT9=%<cwaux36#AUOM@-6hEiMMTL-@qm#<NOi8rrzqW}mLu1;>nEps{ z?DMYYB#5`>FL<qK3pU4_=tN}CZyDbx>%l~6`fgWgR5piBy4G%Ls>qX%Wu@@f#MX;e zqTjb?d$p|h9qDBYK1EiR!t~%JZ5TUqZv(gakFbHaI{ub`k6wfPu{p0?P`mGsT_}-O zi$Hs&%mlwl8WMu<CTL-7(|PV^HQI{gBL123)YlUGXI|QP>1BkMW;W2q>XDHZZ_8Db z+(Le5{i+LD<hMc_(U<f4#sBRpe#!V*1*5>)j^L>#L8Ix*{Pii6>ZcX8E|}Aqs!K@L z==4uvbXjwT?15l+hJ;qs{^YS)`DxBlB}0$)bTCu2)!cSC!q#UYKhcaZBXeo=8|hiu z(MtT3gSG3*T2`%o_I}&Gmql@|e(eY!t3nf_$g8vRT8d}0gIe%a610Dwe~MPNwRrA; z2cLJK-x?~c^uLXAnO#D%V58?u)n)lpyX6PHC28?GiDjCI<#6T#G1E}bZ1xVfz1EWb zN}2N4vJbHaC1w5=&E?W<(*Cm5&A=;ViL0^AWUr<6iV>4?SZC~(GWku1Zf?`URp#t< zPF(RVhvWz<hnOY#jYQr-ZKuf_ofZ}<G1Lw)Ll`~EfeAYn;+wKsm>GupmgFcGnLGjR zluf9Xn7v&}@)~9VI$JSGDGl$rsNz;~!++7z@luH}u_eh(+;5|Y=wcPdN<_Bt<xO|{ z+Z$jk4!fv*k*1;Wwk!^!q=~Kra~~U_<wT~BY~`_|V3FZv()DAor_)wvmobavuS;oA z*Yp9yR6!)B?RgYh`db*0^RsMN&(r8W-Oue3)kwS?=GSAg)+TS(u5oj}^e|sYN7;i7 z3H#eAGKl>wty+-QHQ5b%M&mr_$T!JpR0|d2pLqdPT0=Q1w;;K|zOn}R@7NIrluDax zU1OKA4M|=m_ujn~AoXh?Vv#p|WJ$%$|I`}(`9Cw$82&ReZCP_77H15x=T&WKWQ^{( z7h@EFNCt{v57=f00{040WP$-Sg7@t8TlYv)XPGBzJP4jgDMtqt5fc;h{=lT-_^>eb zRu;-{`65M=*D2rU{nM=s{Z@9jyVYRA>Yx4ocsq`q*6ob+blLpy(eTl-rpeRe)xzT! zy`)-o61zlun0%je>-`GHcOEX!U#|D_XFF@L%56@Y#$51!lg2;g%J^vWe7|oW?jQO5 zzRyoTMK<3~kM;0*|4X6ShMj8F@&#-7>$70HJdb5naJKj~Q#)^_-fZ3!nl2<MrEODB zc_vb&f{9y{ReK|Mc=|Jpz+{1mbt`uo#5D^ZI6Fr57ko4)?2FDDO9{F;Rx1=RsoG$m z*sU`-*!J*it)W+9^ZWcPl~}{57rV!(Hz}>tF0Omx{ipeBO-Q0<R7!oqFLWhq(TnDP z1eq(^^ys^NV%A^wid9ao@88AO7lm*TZZ!?m-qR5YL3uF?EA$(6RHoQNNcQ_EgDPXo z#@6x8XUqQ-nfvk(qJ%djP%wD)7&29jlGr`^zU!%CgBLN&jI^f(_80@lS6E@Frv*(} z0}YkUn*(EE3%27P3mdc?@HI)4$#dj<>yA5THIIC5BT0-fQ5XIb=@K@t{r3IFQ{NWs z`b;M5`sz$L3@`(S+ki%dos$i4;Fq&&A7kM)RS^$9kc74&$wAC$R_6(SXd4Lv!w%=c zlZZxvZ5es*(835>qLnzQGcl0G48&r^`P!wc1Oy{BSX(p@Z3<$^Pn!>EJw+Hw;~g?E z)1fNjbR`EyJn4Pqrc270kvg8qun=SVW21+=iA;#i(0$g49q3PkL8^n`4Kv%ue-nWA zYL1#u?9~lwM;X8xIuh@h&W(kf-*{>%2hfu*R;msCBM|&c7&J^WtyXc8T-$@0+68V} zs$B0N=oIt`lpVD4Y51$44!}svz}r$CO!SFs6s%@7NheFh^wDSLtym|`JW<ooympn< z$kKpUM2&^78{jLrNbDL+M2w!+%1sioV@lPnYoK_SakAuRnO6I2s01KP^s6+}g(td$ z56!m~)U6*=MQ0bL)v9^GmciFYMBEutkCea<FPsMhi%5vwjE@?dHFJmuDIF}hqtDP^ z%YKaddZ5|m|AgMi<wn)&k777ePZkYsxEg2+EUhq91;;5%2AC=j!34!d&AGfL@Q!^d z;a_HU71y?3UjBRhe5|q^dadf5nC5gj$)_5dTc)7Xd0~}&7Zn~Jm)$0FU%PY%Zy*!C z?`y7LuEVI{5hfHQfx{_y+*@5pG~MvEKzU#vHsKwH1nlZq*C-7*p@Zb@GHbQ{9bnx6 zov^k36`llf6LFDHkNpeL`}DT{Ga0Dg>E_1TWiZ8}(wM|>*lKI^_jAlbTF5`iF$(um zFx&?VTi?Ttl}>(H{(|0?qSSunhSY(ASHaXbA4USs9XY(NaLtj;Of4_e`jxgcUZ<B) ziK_eI40Qx*KTO!7({Rv~4h?njDL8{Dio4kPSAA@4b?)148<EyoQ1pyK8Q|bXaq-Rr zm?32yfTj=n?YFtTIAJ@X=l+_HBHqp`BKeIwwyKuI@H9P~z!n$S#*cC2*uh&&ndYAh z<e||=cO`<_8Xs{JZv+s)hJM6g<lG&M3JLOCCX0RWJIJIyQtIzcXo9M!@xc1^(GS=0 zTqe2>-03Q@ePkI@g3OI=TB`g){TQY#F4x!6AHDUsk%hu0tqzY)5QljJ=CPieV;8Lt zZTH>u%MuZKJp;5YW|y|*j)>3`88BAh?wk5dp_A)*Vp59yfTPbH^H@4e6ID8`Zz2Rs zy2OzK<&5TbbH}<s4#Q##VkANBE#JRnB#~ei=4KpYT{%;#FZJRzH4H8bFgI3=VQ~MH zt!@sC<YnPW7<eYFCjVYCz8%8ld?>|UjQu{FMRx<oQ&d*Ou4vq8fSoH4%Cry;FL{wV z12jNaCT7TlQ88R#;eR31{rG=h&?d?W@)Zx{eE{h4Q7sJX;dq#6@Kz>Yu)wPeVM-?k zf#VBd&=8+Ms*uQH>yFJ5k-?G@ex*;3(SEEO*!kUv3U(*O>fIk8w2jE|QBDp-d!zgj z>3~py`|AK<O)MR%&t=WoCYlWw==9R4I8dvvKib?4xS6kINF@tn?m5EKC|B}S$w*mG zX)zBf!yVG{{pV~zI&0Uvz|)R{QH)X)qNWsbINC!%8Z%het7N+gB88TD0n_*5wkt#{ zS^OUrua6y}Vc?W+3FouXT}M!U{P!Bw+Dw_z!zVNyZ98OW_8l2=><=Xg>ny_cE1;9Y zD&VkxGp7V}{D%a+nljq1Ebg1??x51N((A#6XGG8$U9W8O)YL;&ZFDUvNl64~AXd)P zNc(H6pBOVaRWIX1U>??FX(!<{z$Bg=DVsV1IlOrCKlPSX3@zxRnm|LcXuP8hvbv?L zRUg@=@X)iOYEQ73uees$2ZZV@a2=6mm--WYcm;*a7srM;?IO-(5=p*D)K?+&UH|S_ zMWM9Hjh?Nnn*!sv@(WOzd@t5({<MV#S+6D(!#u%0(9&`#C|YxY4YB0FjD<G|Rf&6% zK!d?oZ=lz5!hs@Xz%L2qP^80Dz$)shvmvC_T<G7Vngo%CjErO7Eb^&a*t+@728l~x zeY>~Faj#Ad&m82zTJ`~FH6c4@h-fyoZ3-ewduV2Og4NpNb;F8()S)bx`>7!_pVe6r zZWpWx5%wUHdUeu8ql9P@6tlRk3T=?-=YqUk{Uae{_5bbzl)bKp3Fts^HO%2GO+)H& zmD9R9g5ADX=Yx?Rj8oqPYlE?DC>SvG()@IWtY9aTTDtlFLuHQ-Xhg*!!LMpsHeb5< zrU};GqZefm*fFEhA0V{S)Bsw{AXsD#-e{k<dHyOx6vQU>(k{!#TgwOlxfX-{<%!!| znzgt|f<*OT!BC*Cxxzb-huWcbKca%@5DnUvtwa;nmZiy!!8)*REkAIuYDRVrF@hqX z___U}wdx+yRD);_qmZ_eAD<h8g>u>);+x&&B9wc1C3KQE-8l3fgNSzTjU|!#E6;~C zqoZ4-f<3;k6T?qMa>P7Y!om&dz)tE;1!OJu6i4u)&j@d4pWj6OvVlj-?C~yXewImC zx}@|F_Ge@U{)yEw;_5k(&(=icNummpy;sL|g`2Rh@KgO>5_s=IH&Q-0(am<<0Kprr zOw<dI?QGx50uT8hfnaWYCwuhX1*rPbnuif>w2`Z|(KoPq;)GG52^rn9T6gGNY3P&P zcZD*3kc_Gu$q^Gm&YoujCHE-cv?rNpt1uW4a7p|V8(#do62@lV=8~+cSlmO_eQSob zw!bO|ruo1+aV(+}m;H`?=2~k~CQeT7luPPMj<s!N&*y*w^vcvdXnlx~d`ECi!}L5w z%A6zCz_vshr||#*#dulQ(jd=f#5Yd=JZ8j!G4^*_cg2Z_?;v^IB75pe%}{rHwBuDg z4Hd9wLp<{0Q8bN(&J-C{3!$MT-t%#1yk*o7Uh}NJlRK8}+NKrQ1OtZa+$YP1KYFhP zVDEP-7erzaTZjPfHdqvaHTlSqqZ&zzx=&QDC$qgZaq=Q3H<=<2p|;nvP7!`P>!C-K zQgbG22|!a)-j#yeD~p<C4&Wwesb4lZI0@$+WsPb=I+lZ8kKRl8+HjkH5WnV;-P%H> z(n;*I-cn3(%Qk0m7Y7A3SaOxo8vK?IHxwq-Qr1rKb7NjYFEX*049h{e1XCxD<Xw$h z0XY_jgHc+y*YLv5LL6=nEAZy6o5nSXgM76WQJqt?V%@MvfgQ_@>Xe%09ch2ur7f(t zB6{^P7W<AB5)ShHWf+~ub}pA50L1=Xj@(xt=3g{U<uE)2es{EyH(#$W+<g;rBeCzD z?FpgVM_71Xm?xkO%nn6^J8e^frrcQ^c0~)a<FmKl>g5j2SgsueS&$kieT^}PFM*Iw zh}WJ{&|h~gd$wm!>9_FIcTAbUQEVx812H&n%cMI#(WJYW|I{b2u>T+3S4=GI|IzQf zttl0UJ%-r(s5VVHcK-A)ln7cp^1s>2FJy0f4F9FeWB-43d2Ad*r03%UL<neDtY#PA zZ<V2*@7-s|SwXhH*xn0K8iMsyA?1$;Jy5)4Z8&*weOkG`Kd%q(Q*L~}cZUv)biW4g zn`M9bew^RXA@=g1H0kxi4S(;_?BGP{{dm)l@xc#MBxX6o?D9(G{=XekH_3nPkZAsA zht$c5H@f;TOu*!Ti4zy*avJLrHrM&raU0PV_g|clb1Aw#ZW|0BnWj)+#H}+V6w$vL zpSLe!^S<6~3a_T%7IL@X)|j;6I+sOa7eDouH1*#G=`iwFjDY4A9)JITHb`$<G-i2y zBGzBu`6;iq@5lPt4->->x7fp~;-pGPdsbC3&{2?*We1AdM0DM75b4F%4fCfX6l%?o zsj-I5SPo+f`uF}r7OEQ-Ml(R)kyUZRsMXAr^q2bV!31tlV}v7|?vWVIE9sH{5G49k zfz`-r3C6hE<O<<|6nqnnxpy`nb%X9mp@W5(`begR)MyxB>Bby*p@3uxp@5+zL;nzp z+;m_Vu?VR{@LaxSYaf^4HBrYWMzDm9u`WBB(0X8~JrVYo$a&a@lCJFFr$<PGVMyc~ zI7)*iiaRJ_RKk&`S4qp>nh5MAWGzbNY7vJdRsI*_*40d)0y1eDCRV_b_#S^pi+fHN zi)&;;EzFOz;WLi_Vyt}tItsmKJCu<+hmD6CO+hR1swJS%vq5#_$0t2>&L}AY6>}nR zb0-N&JJB`AP+)uiPF|F|81N)P4<w8B2Qo7Gqb#?QYynQhKn4uAR0gZdrxU6|2#68s zr%bgTS%Me4Qs(}Jr9i2fNS#}=684)Z+$+#*fx8<1z*_P!wz_Ct0?Zgct#H>04+XXZ z{(cjPs?CqU@l1f7jkkx387L59gf%vyMAHeJRgxZvCkBo_ZYfeKuZePacE(083z^C{ z$D~qU@}}8<pNx{Tm#SPY!&S^SPR=VK=ynuf3=)%;nBOln#^1y0V8=U>>d=9>V!#p` z6Os>*)Trc%2Ni7ZtoFg_Hej%<buc|o7E%{RDuM({8~l#faG#1ebLSq<ut$>|RDYWo zxo7ZM$AAu?#pWpR-Jzj0Bf2XVWIi93qoIrr3vrERwP1g(fcI)YS(GyuN@J7>lDO=b zxP(d8<-_y+h3loL6n0KMzV~wOi>&shq#_QPK7djIFiRaPJ3hp35tWz+v#`|V2|fUp z&7S8}ukjhw8+Gx1d%5=^jfr>V)x<VC01U}rYb1$t7S8EUi+Qn{17%UdThXVTch%f{ zs>jmS%I3^-I2Pi$j~^Lx{Z4IPwMzaYF64&(@l?4Dc=04`{uH0O(U-v|=ZJ00s>pRa zS);(kBss5oL)K@PT&{JiKow5v56(aCq*%_l9AB>355LiODad*V)ZMson?ABBmaiEw zG*e4)RQ?4D`V~<$WVVLs0yyZNqBP2;#|sGL)1TB5YEP2?Q{cl-1Uw>2;cQocLA6Aw zd~rexjYxZCw(kVZxGtwb?uh-z{w;DFyo?>4#RI{O(>);W9FjtC-pJ<}fkzZY!QWvA z^{TuN%HnlU#TW)a6_TZ9O8tBLNAM9!(2o2Fy80CO12BJ=5)rBlaSy)gIiaY&3(P^7 z5p+?$Ibo4P@qLl<_d>E+370}{_VGB<7H<enGv~51V46mCro*b!COqDj1SUK|Kf6C! z_f2{uK02B0NO*z5B=IMhc{V;s#%r>o6q`@#U1U8R2gG=LP3&yZNAOs3PA>*XDue@Q zpjrGl*fL?y%T~8(i35=e9Y@l*M1oeyGKHf}xo6$Ar^K{@bRDUV%#c=e-Bq-(tVy6$ zK^xJ^Re3d}x6H{yFxc7+nWr|G7;9uQIpD}s-S}ZAHj<^WR+v11Ie&?0eqtktbJZmE zz7=8{;lr=VD<%qg%K0~2HCc6!p6xAXp-!Po5Uv}dLI~_<$EcHb=`c;Ny^l|ZR)GF@ zc=$oU6s@-Lvtz!B<_tJ*v9;tl%?UoY3RDEQqsm2<j-q%m{CzQV`7kyUm#qaY0aavL zVN){ceenz`O_f8d3Pk*d5cDLXZXL0J>;(j*y$iRTSP*`a20+i&2h0l8(nlQF)^BMi z{%z|ZA0@N2y@ReJ*MWa}@+eS&&>g%P7ATNkTMVb`y8(p%J3PVUQJ<cAE1f{C#`<sR zMf@OINLB*~qP2Sw$|*e4MF9W-<U`Ds#cbh36Z7r0PoF$2ayHM{OhB_O;fWQOU#&VU zwD~k=x(Wz#MyyXAq{9z^Q(5EB1?#N3Y=yZu&RR#5cgW+3Kmeinql{htq*r9DTsSaH zL!ZgaJ%CC7VIiG>2q0Nz7+@eJPb6leGRff|SS0f6j9WA1HW6M?CAQVuGl9NO{TlP0 z1s5<BRuzJ;d6wrM%x`7Fi4h;p4ifdM1Qr63fSt?tU<*X_(p5Q(_JnC%k)_W}lt8h{ z57<e2K!S`C)kT=cdc&?I1THma$+>@^=MELC+BLi2U;9bgbU<W;12BC}h9Mh?_(Z`l z;H5Pr^O$0zX4@O6zmU#37&Sny<)i(TG4<9kp$!ZEAJZ)Sz0wxsa}fi0i`h9U1*=!p zo(uCY6L0mfMVNGs{w;_vMC7#vwA1Y1AI#4<vprBWAEx?l?$-<eo6Izni^^Zd-gZXy z%12g4ccDw~7&Idtga)j+`T;g$ZWyYJcZJ-(%dv6!L%Ol5?tiEI(W<JxG1J>H(9QPh z7=Am$ze`4A>)?6Y;`&4nNyFUKfpd^OFc0e<-PHn2o+;3h>u|uFX#HBfWI1iiw>iM! z+xbb$$~5G<SV7|^tcD*aa`Pj0sV^y%&@&g8hqos{Xx8<~X)bSbAZ)3CWWiGu62X8t z>45^nYf%GWD`x1bS^nb11J_tDi^dve;MHq=Rf6`DT}>KH|8wwJ7pG9|*nP2q?q!cp zQ2?M(Uhd5)0Bp1i0`v}cVJG=Xo!=boHrl=k_Tf>RhpGm0V<g)^31zi?lyAxd2}uuv z28*0|Hr-V;KV_ML*X~rzH`c$lxQDC_6#_3q((7e-h+c2Wcga`N-5`L=@|x^M=UX6H zP_L#L@OB?NyRTA7(A#lBaPFXboF?C}>F8m>uh6epW6=-X;R)&{F%15+;9}nz|1ICn zY4+*=)pNVD>QcILPIfC8zj=!Fc^037P3b~kVWO3IxK_c-h-{U5=6VGqE27zVgM6ij zvkfE*Wzg-XN2Tj6O-h+yF>fSn$&lMf%#;xyBEdBC^$}zK-JGhsg87~t+Itn%L$AfC zLiIH*$P1x%=W*Z9*|y`Y!ysYteF{ujuIs0sqdiblx!dMQNdr`mUj{>tqG7uUrY_v! z$mzP=nF6AwK>7vLXt%xmPn9Oy|0eJJ|M~ox*#0GD^70b=&jsb=>}X<O1Ldx}togsh zN(Jw}AOQgXZ2l1AgAuNQ=(8;}T;VWU8gH*o|3!mc<Z<$P0!SX&+8jEsr9zYI(W1Xa z>+yD5c&k#G^L*!r{+{CN<>K-3`8X+wl2RbuI7?gQ%Y)f9NL5T`VND)EJ<fJB_4xMn zcx0=|`Jdk;`5`AS<cQaoAvZ5#o|&Al`}f7u0SmhtB&UL%3Il2Sh!?82w5^A`-^bL$ z&+9MUE$`RcCw(6;&1gy=-LL28&FZeK-&XwA+3_vG=WWt|%bkFWUKiQQ6e;4(8C6G= z4QHhk={j*{44W5LijT^w!WQ2&axsL-=z<Q1&byt)Ji_KY@{T>k+8^`jhs#)c{4d*0 zAQ<MckfgoKq~sAWPsd)~Ww!8Sz1ptku|9R~aX)jKNjkR|$*y11j?DrRRaqIT-}nSB zm(OA0Xh`yeBEZaSQ=@MA0I>OTnjdy({c@v~crzf{v4N`~DvSl;d|Nl#>(ld{spv*X z4+gFJmq|>ZVMyrzTkO<~QncKUThxC57`9y9yf~T(`bk~Oi=<LNTil%uK12wDTV{`= zm<=w67_@?=ln{i6FD(-PIIKd#0biR$AuPbkH{qyzZ}Z6qeJFtuD5BI)GCi#NhXI9Q z;=vvZDqR>83L_B)6h`2#okAZcxE|-U-svW|#t+U~$0ga0Dp;Hgkat);+eChrJq@^D zNYC5ZK0-Zia*)0>SgKAkq8&U<0`uAhrW;Bd<<gx6t<J}|$d!t{jJZAtcKr&-Jjo+8 zG4Q1uOE7kN7y+TN;`JjwXGU76D)`v74Y(EAmXeCxO4>NI<LnBGcEcLhI@}}(x-FN& zSlpP{j$x2Ual9P_Itj>WNHl60ElvQ-pL5}4Z$`+`y&Q>wK-xJcazzxWlp-hSQFyr$ z#VEKYUY)FzKeEyOfN^l)0uN}N$(W@5$XFe#$U79pnT^4mK*(n<E8D1N75ma&!{r>P zRqqyVG*EoGn+`Blt_n01zw)Ufc~9IB0^C-;M)f?OrWE#!00fIO4q(P>s7jZE!aw6` z-|)H}COefdOk`k;=&QfyE!jz8`LlUM7(4J&Ksxl1!rm0Ki<Xj8JNYWW-{Iaq5&zhg zuztv#h9{eVv7=GhhyeNswO+;?#Sl(Y&_0G)s$5m*m_!tLdT==eAS0x$dK?d5wvjA5 zB#{Bl_rEM3|E+IIjj5LBw#!UrL3G~`RQgw=veHL~g}NrQUfahi?cN@<*!g`*I2JUK z2%U0ZA0)$sHYO#8h_`B_9!)S6+~p>|o3Wri{=N5zgzpU-mRMt>zwd{mU4w_?+DBnq z0wQ%!UbB!N#Fu>-L|!Xd8Gise_L;t$SkH(~p}yLz%M7;QAPye1B%;dZU~TY7p)>#< z7-##y<tXusfUiBr>>b6D5^y6%Ho17y;j`27750H^y)}|9?9H9%?CmP5>?(HdyJ)TM z(`+G>CNL3O*n$G21A@TcZ6(&9#!=Z0-RLQYhRy7C4sZP>5H>dmLNFfaS&b}lcAhzS z><O+9`0L|PDZvv+4;z-md|;}CVw9Q?^Gkn6IKl#h9BZHrF7uqoqy?w}aUR&-PgX<i zuq&-*7@klAQW1#6!749WMiDJcI&T5}M2$^_>9kG24RT*&$z4dXWIW!7c-oa~PX6^~ zy$SB(BvIX!tywBa%bOUsey{tforU@Eu70l>Oyn9CTzujqu7UcZeXm>9@{90y_uGBi zURahGR{&L;S=w8-pjlwW{P2N1?cf$Y?vp}p{Otw5xN28wTUJ9F0u1s*xdYlGZjc6? z7|d!f0`}jR$npF4J6*o`N`b20{fNgSBCR--<6q~Gml=U5x}t71xvl`1LOIa{X5M5} zC0^?|IYNWKQ~2?TH(7PA6cYznAu6#38g2bVV|)r>yKcIq3#);~)e6uWl8#oWvBt5$ z4P^!geszb;WcL+)tPh-eE(`8+&%^_mEPopGdx%(gQm<e}=Y<On<i12v)T9BJ7x2=~ zOo2v8v+!`7I10MM2NX-e%%8QvuLlxK=&0fg9D7WG!&b~{pS+XIPP}%4<_ieO{n>f= z7rbweD3XUgQtJ+QVZuds@Nb8>?o-qtJS}@kkdT<QV>kFc+rubq3N@aZcEGUO%g_-C z30hszzAi#xzavF?z9LziVqr05GJ=x471)WD+r#~^`@c#6#bl~eMEbj0WU7vmQB+u| zQ@&^CAEDi4By{6@;-2@jjz!=FvIa1Tf@E2?!+HF+hMG0`Ms537PG`SJVO(GI&k=WE zqhci=M}!>*81}uu;dY5<QRVR$_iTl2m4h8=<DCIj5oU54Y!@T01qb<i*BF~WjY<JI zFpLeQ=Y*hE?6ih?9d&Nxl`?!wWd^nBq{kKE?)d;uXyDZW(f|)NUuzU12`dU8-h`9E z9AYCKiYLngRYGVAuUBTUqdA*tjH+LqaUI1Hir$M=sERLR&R{7sVOb;4bHgHkL^KLI za};*jfI${Rf69cyVSBOno-!F(&!0quSr&qlrKdg?*W&O^zAED90<p~K(Ia-U3zB)= zdHZ~<%pa%UFkUfic<e$q@Mo4)xK3LaTuBn-Ow*RS5uSRum6Mgww*3yu**ZVCmxlQM ziX%qSHyYRs+LkWV$9GK{H?#%1q5PsUjjc3_V#d{i4AEX)aXuc+4r_56s<ca<c#GUw zmJ?s2w$=Vw&0(@=M`K%hpUsWpiWpp0od?Y=8EhHCd#&KpmFK-$tPzG-I!F4JAWsym z?^YLIxjwf%$gf*r&6jK^yVykl<sHBq@5CfWN;Yko6rCG$$GacPW*b?H<pGUXKrej@ zO$<ftKa8ers~fpRcIqycrMCU|ya=LY>{J)0ek)8%snyW~S@3O>@-PQivY49I`N#B{ zp@y;%@0_BXZJ&NKtGkG&2s@0<BYRFm`<mH8T7xz~JXxXsU4RyU!r4HtWG@|ARse)G zr{WE^H&znocWkLP!$mPm0}N-agR@M}@1;E`&J!P4NSEbD2UKBdUA?kC(-jpi=vYH` zEHTxpGOm8+bAKj<#JzinMiWSY`NL8`VEVk6-XM?1<S+1+dmausA3XVb+*By*1XuH8 z{;HmBT3F)C$-`4l5CR<>Q+hx~htVDBU(W5D3YkzGCr+|F?R^70@NU{Xdw`2kTh`vi z7g8R-LnB3k4pwFt3jfQyYk|8JB<aRyEDAV7WDE4QI)5@{%MybBRTHfd0`ywC6&%su z{Z?oar~7rU=L~Cl{yIUN)>gP7Y_aHmPH5CakL|&D5W9DfIQI3fuBzS^JWh%^o;^aL zb#Y#X(uM3|<G8ky!yA8*pREMyqiJ_Jme_Z!{`*&p^$%0UxBUo$=Ew$z7Ip^F*Jm3( z^CJ^r5Ses7yGmIqSE7ITs{I|-Bsq*XOrx&%le<I;81EWqjP0GIRL)g%0Q`eoF7R^% zoQ$J+qf*UVFAcU`RpGLpXpHUF%tkLrbSQD=Viq{ZMCp)Wo9m*XXQUlXPl4bqIjfmT zXUX*`QqcQx&~P%3Mvm)_<LMv{{m34J*t5k4$|vJV8oX;zasaQzzH43`bO7#1@RB%+ zy_YBfRJ*sWFLsH{;cfFnbb_RV`@dAx1n7-Vl2^ZF2G*(nR2sAYUz6dPnA!hhP{OjN zOxz|bLeHhz-9nKDT%QICwDBSdzdzo>4efY=%cIJYKqB75>t|@8xMpHctJ|V=J%eg# zamK#=$;{!LWH+iLH@5P-+*>IK<Y_a^Y!yXy%It^!uq)dafh+zm>c3>W`}^(B8iFcc zB)?wY&!3??NT56N9K{1>sqEgb7i$7iUtIAop7<1$XjU*cw{13H8OT8pi*um|#z=w~ zw)rFi(v(sJYqu8Mjq49l<OK^0thOQ3<A|Ba{F%<lnMj8$vOcKW(PaOX7jfqNq-C13 zC)c!id7CRet<_bFO*pH#>Iuuo?ZwTLO^=EX*O@HtUAF_77*f)fDTkC_VuazxeNwb( zP;8xtU>0)5&mX9U`_=s77Ey1^adGT%uWDYxR&DVFV(_*WqC*gl3PGj;=s4&q93V3B zoaQ!#_&*W}i`+*&s^MKYpjh-6(V`X6L^42+Ql{P`Qf06q6s$4^%z<f5me#7)nX{H) zai}HBaK1g1HKEp=HOq-IiyIk(NEb(3TC854Q(tT<4rVZ6A`bj!(q*ll`5gI8CR~5O zolF0K|B=cB&Lnj2;moHMR#{&$Fxlp4^|fnoL9o@0B^=&~V8pO$NL4LGfblnHi>1y3 zQ1;Fk2dR225pcH%lcEQfAJ6(KWSbz1lPZ>V#_}JJ(l=h1v`U37N)mkAQ+zCe2TW7A zIE$9_Q0Azjl^QK?obRFuA|YG|Ulx|wAo6yYm<U8TLPr!B(14zh@VtyM8PFv|PbNZ3 zC~hof;kzthO?YFP)HlG~4C1H|hpZF9Y<Y!jh^5TnH)tlDECwQ1)HOVWA$&mQ-iMqu zT+ESUltX66sdn;~U;@leP&Z;H0yM&8i{;71hwS%YJ4tvTBVcCs?m$738a=8ZWp{ld z+vB&=1xv(g<!T+5oDPbFK_QUij{FJ=L-mp&9%yl-oU*r1jm@4x5DS)Q(5mm}6=oUr zZ=^a=(TR%oIV0*vV>EVnpQqplz`!;Prf2?19w49<nbx}l8UbOCLb5{72d#~{Q?o|j zEZC`zQv;-q+?aE<UtmlRX@D{fV*kU)yz5L%(b4^(Te6Q3o;yPkN+=%VRNrw?OY9Q6 zSrDr-qoSyy{k$A?J-1C0S><1n$vKGH<K7sn64XVBlIHqRNnUkuQh-|K!hA)&9K~Y# z_yG(xZ=k9azEH|oA|sblYZr>2XGn`ggwP_g)h+Oi-H{?AAv)Ax8E-X;g~Y~n|6pd^ zGBS4f_%=y;$pAE`$d7B1@W^_wq1V&t!OPuIA)by(c&~=SLGLq23jjn#hUT+iw4g#H z4t_%MiIO)~y>A(`5T@{Ij^i*l<Ehc-HS9*bdyLp?RVi}JlX}t*urB*ivhER%;aiDU z5eoDucn2ffb@eH}Am$I%UK&jZ)X&=oHsl__HU=`&1l|f15=6AnlUJn-3&9G7(%Oz$ zQT!)*Ii1r{{M;S%k3-~l&D*7WmQNky;@9sysju2Jn!lurk4!31)boZXX}`)7zzBn1 zLK+c0Fc&^xq7Wg9!5BJz3EZ9K#YPg(Oz6882bTKvS;VH{EI2$yE5I~m>vn|aDg8>v zEq1)p-qW1mGjM39e`O1{XsrKVr})KTNUGkWqpg;3r33uC7<8jx!i0`14l%OYkaV_k zK7=JxuNWNvfnfQm-@3B(Ad^}NNq+wL9SXEU$3lk>AryDJSU~7|rOIOxJR?9}4YCw5 z1`8{H0n!SZ#z-klnhqgVj}($rbU0e*YL2RSIu4(B4J`kIn3Zf5hIM-~1FCFmuo0Z0 zui^pe2ZlaIQrzD$YL0gXBcZB^wp?MQl`fDM!+u?|PbO}MpF1<C(dR8f;7Y^(q+!8H zlo(<HJ)3@23{-NI<0D~1S@ntWoKm|_Fq9=w-OlW3uQy)^!iysy_dl+uELG&wv+g;- zN9L)n$lBtD<pxpy!L9imTcD+77zAZ!haG8w@{=NEohTqKF{^Jmk-9CzM~bYn9yHwR z5glhscHVwe@>i<9sZlB#V_$zxfu+WLp5G|?l~+CHW~L*hwjAk9xY{8ewAtHYjjT?4 zJDRO$IBvM|d)tK@7~v;<SS18AoR@u+j))@uMs;@-KkBq8f9r3X^2@i3*wzW_(3Rm# zWSeq8i#pRQU#Ul27uv~OB%DoAGBb?}K?p&5W8+A-hg?NxjcjN;$+lu-Y5h?x)Jm|l z83~5T5g8Na!@fScP@5wl22{iJ(Hyl3*(Q6bO1h-a6F>dv_{Ssp;m5qquSa>d*ql2T z6?r|Q3y6&V3~jie(Gfe-sWy7y3`<Awp=XtQXpmW(H+sDFBB$4oj7XQFx>p=>h%>9r zEa-kC1>a~6(jb&yq$@=!=;jlgJ4PB($wYQh@T6NmUW1_FH#$Kh+c4kIP)1?F_M&(a zp}Nmin%5+^D=LImfTq$su-$k+PVe<EJiu)x=kDZul~kB_Nn(h&`1uG>P_CLg5CXoH zg>j)fGC)ucViFv6MrbjPC|hnXDQ-%5`6Ma_i{9e0Ub_j&rz_6++qm+6FJz**c6N}C z_|wHKpd-$?>#_?kz@mR>&Ql=gmj~jaa>0YRRB|=tp+j5_UGWPnFd`8lEY<gHMr~$L z=!LgzOXEQKY`w=liPV)dnOIn8Lkui?cS-lTsia(FFCO|x{&WCsrJJ*ZOL3t%^zX1N zu@v00Y4)wI&03y>V#|19_U3LYCHWj;$3gKMG<^L^kem7aUHKvH9C9;W0gjmtkbKMH z^2o%quQw@qmf64V@k<*cT8Cwe1H;uJk@&24?{jK41qb<v3i{Y|IrD-duc&6*oZ%ty zm;yCp8fC8!EU{e;Z(l*Nb%;4A23&Bn7cZVHoR^G~HuD__ZQ-&zA`X|}Gc%o=SFWn5 z*adQMY;O|<dGK3xWu~u-d*sg24lA*bU&OG!MrT?qZ;<OkR4&4|(XD|%W39nKqan#* z4Ss{S0`@=yeCC-g?o7DmfDUIEu^S-hiMEuIWg<qav=*>mz##AHeGZmWhw;)x@%KRy z6|{O+d%aTEJ;pG6zK!!_ylL*xK4x_%Pg+!0alOw=b=g?b9bQ_q<fBH}Nt~waS0nVQ z-kZnwRZ4yqKxx2ZN-nWZgl+ZJTaDYR4kwJ3|Dxy<F`@Spl$J>8-{7MrVi^BZoyPHh z9bqzau(SQA5$24RR2^;`>`tB@V;0?C;af2UjBs2oet)_JPc!3$9ZuOuPVp^~A74Jj z;$n~N!+(wN_`#^tAL7X3w>NQ0Q;)Xv<IAW4zZt9;4c<BbpSQ8qw9`6zz3vB#3M(19 zkmF}~^eMf6lagf(^vi?G3!gjJ|CwPLb+eFh8VQc-4LEtCSwXlP0sk;qemC9f`Z;;L zV^OogC7at@HM4Ax2D5}Fe?Q#)Jft0e)BkGi_`Ln3;rn^2Ti5&P{5-#G%kk;?_6&8f zOzjH1@S$U?X7xPcLHGQl+pvs5#iCuVBwJCLOjODBl60vzVVOC>EiMk3bl)(8C0L|1 z91I<MK8!pE&pmrjTtYgn3iKi8jZO!ujFATgM6B%TYr1)Ygv=gtUwijhw1iEqlbbb% zc4xVSbtk2E+Wu{pc=&1mnv<ERrfbx=?=#li)!xw`GK3>tF>W|@UH|@pYrVgX(h$0v zvO~XIjkgKx(1NZD??7wB>2_t<ZeMH9)b^2;8Wdt+P|H$N+b1w-sHz(k6%(T50PZrP zwol(<)Koo;ad8dsUT&kbh?(8gPQ6sOXAsz2SHscP9?Q&u#Yz(4!vEt#vw_(mTjeTS zYqT7JS~wSy=iXtvg8E+Pvmb%U1g+3NJl$-)+ArTfJT+uOp>O!_wr4_Nz!-R{^>0A* znP`9~|CDWg{%fGc27H`lDp;&y7Ff5Y_ogqX{l}R5k8Kb=p&@rIV;8_<;g~fK5GfvV zHGP=2$5J{Dv`@TRQlyBurR+6gsy4P*KNRc!d>t?P6(=5HX+TB-AxAv({2Vv}!anAS z<e%|Eo!N{rse1-H?o1Ygc#9(z;WQ{7BB;#Z@bN8^;KRv32)EFpJn&iiJV+p5GOhD- z`r5S7m;=Z`D_lw9<`4UsHWnb(E~&>uz93rA#kKka8mZ%iaAlGp{ef;H`dALRLNs^h zWMJG?ScTSV#Rck{MltJUWC{(#h)L8eSa-8U>nQl?p?XoTaJ7<$%UXZ)f>HI@O97Q+ z5&Y5OhQ(l;x!|-CbL_l@&sqnkJh;u^Cp2j7t<4iarBNHg$Z|7ASzR@TX{8vW9^ji3 z5Df(BN>0%HjS;krp@|R{m=455xT&k!SjgkTpopVPxVg1IrhYug?HlJXJlp#fDKn2# z!7>P$E)0PLfHXGiQXZ@_(}HC(6_FYUqdCkmx{eZzL*988OuXBl8hRbeme6l5pTokY zo)pn;Kw_t!5GBvOOgV>=APN^Odg#3M+|AE~Es}zrDnDLeHoCttGtNx274n_0#m_l~ zNJp%$Am;~N$cNF8t>>3XjY8qUR*1r9c)`hlEt^z+NVCx}i+t`Qk(Mx7tPr}9vJd&` zJOTX(!jd5YDEJZP;0YE97zi)+;Q0ojzdp71_v&yVTy-hC2l}W01r((y&<v`GGzOKV z=)#-vcZk0IqAF%Q)WIQ|A-pgRJCslfrU4QDMbicV*THoYtYN%D`MqOub7BoP=`SCq zgsInZcMU>AOfRJ2MIIVt0#-nLJoKdtF7<PazUa3xp3U;Rpl=fFpJ05Vx#TqL7+ck+ zne}feKskC0lxYz;1WgkX)U%R6?&ZD$exeYvIf9B}4yt{qoMCS_S?mJ6&?EKZ^Xo~U z)LK^%n6D%&KWmdiyd&U|Z{&&^`7lw6WAz3HGq4@}w1c4Iw@v02;S#+PDjVnXtr<wY zynTXEAQuwM{f?^4e@<}EJm?XG*?B>_tdb&YBS97ochP0wT_%D%meEOYlB3hMZNs12 z!SYvVhxzcnN=54_-mn}ZZ^5r|{><NiTWK0ibl8oRweJRu4}1@^^VNOw%-1Vq0w1Fi zWbqBxCp-Wm2Ay;HWLiBK!G7}J=&vO!wVx9J20XyWZL>PQ;m*Z?ll@eS;_(1E%np_P z8jIpVmJ<iOuy;e=$3+c!Vfo1-vzf#|EcOw*BI^r!1ZJ~f>1S5WQ}cr+0=T}~LqSq- zk|Pjti*XieFVQprRxx){+{w=$2a>JjKFIdOz{S6E<bd=;RqMt%|2Yg>b2o%9xL)0* z4;Cx*ftM`o7RgZo9E5A6PWE<{q18toBmfW`mt0w5B`gS!H_mos@sY~)ip`mIklTd^ zSWJ{Zehwv308zxw<QpOHnEPYy!}qIvdCILG6v<v7%BP6QnfDxXir%koO&VZ`CPkYL z#Wk3jzdIM}9g;j#9z_r<+)+^XE;VXG!p8N&ohNEeH*<MrH!AMmL2-`4F@G}$Bclvd zi^X>@wV$ZAr~*^dC1H&{i=jpI-Eh@Bt2&155#goTAT@VP)GN+cuel$x7i~YuN}AEn z%C&GHK?`bw)yy=9$gLT9C1nt&vQ7wp3;(r&o~m=5{Io0z5zP59!ffG3LhKR_ojXnK zt$?bQl*<_!`?s1<eutNkU}pv>1S}d9HsXhKhD&%OckazKrdHs@Q9WgvkVNjoq_!f{ z;M#$-X&%Ru+KSQqoTfJ!^_u|2R8yd(y_8cF8|v0-oE?A7Dx*4BZKDi&o=^ka;<{=y zN0a0DsUXz=wDPmIJoVN^%vO=BEh2lxQv2G`=32{TwW=6Vt60$xnxHG6O8rXi^|*ej z4TiZeFZzsca&c2jajuKmyo{E&5Hn$}t+#;~^q6nM0}lVD+{+rmGlFdk!6XjNzi^GU zFjOY+#f<iuC3ya2pgtH3ocWt&y1I{CO)MW-w?4$0L^4Tr7tQhGm<|NeZ*gTDf(3s` zWV`}?NxgOk%(9VJ29uqhzX)2(XNi)lg<WCS^}LCjupr+K5<z26<WnZ-T)SxzY$SOX zP64i_Fgnzh-n9Mf(3*Zlnz06V$>RDJv}#<fI`Q7M=w_W*Q+P3VV4zEjJfJnn$n%!A zyzfO8*so|)mQgvE1N=@cW*2dyd@YSFnL51J+BNU-fE2y!tw?+V2~m_I4rsP0;@Tc( zsVM6RP&4U3%_%@fNW_yg(@Ddq$ZNq*qS%zq>u*R2XAD_$8&8zHHgP8T!WN4PdH~pb zd&uXl$>A3NN3lyY3fCB0x!IhGlYcEZRrvI4CtvN{xrm_94?~i|xY$Zf#9!Xo)s$^> zRhD_q+Xj!l%ka@3Nb+uMW5R6sQ+D4roIwjv**hHWD}t<VOXuGkyvE(J=GxR{(YP0- zrZMdq3$^=fsLAl)RAY@7<93C22y<-*Wh7!*NjQ*PeJ=JVZCY7SIAPaPX?@!yy?<G@ z+!jilC@bQ$TSl{FG~=(I5cJ7%gaNfu{mBM+Lz6*TtUIlAML4%ZfPZcEtCY&_#{aO| zf0P81fpu_O?V?&<S}L_VHS|~z0!%1rB4FOM8lN}A>xKZ|=LE1oc5t^_eawqJi8#=> z6%zmoEFxkPX8J}^vm*=L`aHE-VBY+(V^b;8jmz39+A&R&S;A+uo&;?QB-z-tNpNuc zA>K(p17ZHrHQQ43Xr>1P0x@vtI*$u4ET^%jQ9gJ-LgO@9Ws!(m`B^5flyU_PkkK#O zLqPgM=&f$2cF;xGJAm(Xp1aC*$}Zdk(0WNl6Zm^Y(q_tfLECxa5gd#_klukeTkFni zJkf<YiOp*%xcG{!9Hk`NtiaKE{c0i#TrDUnE`tSyVcY^G4Vs`pFWk$n-27pRT$+yM z_!gC>i2QotdxIk1vb~aHwa{@nM^)Vsi)|bA0Muq^-%Rt#73<e|NkxfP)^&11a1P;c z!zzm9?I}HF<S!<;Gd%&*#~Po=;1!k#Tkm+*;SfpE|6onMQQ0Fwj3A3m23*UEyA?Gu zP+$}C32#3eRLTbzA6PcXeYi1b@Nx>}3HTEwC8w$DO9ir?;NiSBRMAreO~J0WeK+rV zeV#ufXjI<dFm=S=fE#*Hyt*h*Hz+w<#?$}Dd#-n_y#bHkoH(p7sjdeYD#<?Aw?&y3 zCX^tMru;c&i5i*u0wPcj`z=F5K?!GGpfC!rK6bY9ZeW|XuuO%(X$@o-Vy({kMZw{U z?C%qc3vcOU0&|ir(m>{lMeivL@kKwiJt|aJvBK$LFaKMh?IjKW(dNVw4-_rfYm-&9 zJ09VTe3ju>p(@C4;oI~_f+Z|lhcj4Dfj!Zwv^9ZZ7>wnX&_Yikn7Ecu;-!Y2%E~qy ztGVt}tfT_GO*5LU3+?GhP4k9?(T%5Gr4&0h>qD@8xegG>W5g+Xq8W;@RII_eh1b%G z=Hn@M)}A`x4a^bc=LS*ho-XA=2g^>UoF~77HAu5jV8wfBWa`Qt5A#sUAMFSME0ckl zCS>1SJQaJfNIT>_`R;kk`m-sPwSw0&HW>hs@6T~&7PLR~7R-7$nU5Det^us%D2En9 zidok+^NvD&uTefYJR!#OUp(Tk5b03vQC<FkY-aFH@9GA;2pDht)U1tZ<Q@MHWB(AP zNgHk9qG{W<ZQH1{S!p}-OWU?>+pM&0v(mP4YVUg+=Zx_;b}OP0W4w)MM9j73GiSKT z%c$BwJL#I;A->1Q5MQt+h#ojwcHDyN$FBYew<YS;_1119`@pFttXtt>?Vn&%gn!$o zP$EL^>Nu;{TFQM_<6(XwsfOR8h*cx(^<C&C@aR_=>GD)(*KR}ML}MKq`%Nx6XPV=~ zI$t&kvd-Qg*L0@;{;{>Wr1rd}T3{1xV>$|`Nf+j9XvLx1>6KK%mx2rs;wn$ZD?{9* zd6bi47@%kOQ!MS-0J!)$ALl`X9dJ9s-uwuI)0yZT?vT4tDROIXBfyw<-jfiH^dRRW zY73h`z2QKma#iWXXeYptmTK&?chZRt_EwV>qCt9JQngBoHnlOjr7nS2Bg}YqT=qzy zVnNb-@{DrX3P776i`<^ZYLXw^sf|LwnUUyD56{c0LemuMO89_|tW#wt8yMHCeNOGK z?wp}TbdG|eh(EU4IXOw%otgxW_>Gj-0Ip$ilVDFaX@5?v37sB1jo-$n%eW6PNl=zA z2fhOJ64dm(D?Szip~vcdX0?4d{I&6KivdB^q+yqp-f!|fu537HWHNeVt)e@thjR<s z50uNGwzVKHr5JC2+#aPo;5deHB8+JF%9M3E)rHl1v54T~45)Y?N+SCc`o#4ubw=C> zC6hpZUVxpd4r<5C@CoTrn^n1R^-<Q$A2fEPC~OJK^@qZbWY63t7`IIqKvm91ITlv0 z92`|LZ_`+9R<<qq&Jh-Twj^3GNjIgocNeYbv<SJs{j6v%mKrU2EFH_fT0~+1BzGFS z^|sBN{F$VhNOgho!K)Qt3(qpIyMS%3$X3wcuL6DHt_shs&%B93h#*dWRf&Th_`*YQ zu?H<rP>-xe*T9%B*Rb?tk&&y2?JX?BjhtGM$O<0A#hVmc1=Q2=Z$hCs$Cm$4`P@wZ z=Ry*8rvKc=)ciwd$=Z;6Ry7WXM`aup7MLLB#u9;m1=e!2@`JWl%!C5z2tPl3k)xql z(kkufvEX>3q(}a+Zr@)Wq|VyQe|vs9Mg4X{xJZqvl9jQRH;tN{L~IkJ6a0MKJ=)Cs zxm$GG?WGe45oGxJeBZqB>;8fSy0xF4p%+9I`?_nJwf|@3>3BQZ<;+v>9Y!ME`DXfx z>|62%*{DygNzqQTjUit-z`Rk%{A?{bJ3Hdg-;4k@8DL@hvvrNhdyVOTy-Ib1IkXMw z4JuI60j@ckD%=NVt;n>WLjc@wksYV^H><v9tF~3QALsM>7QvU2I>V-}So+hq&D*&3 za3y}d_LULN@a^E494)m?)tQ!n=VfyLMWa5(Z+k0KS@+xR!BH-Y5q#sNzNWiHCN*fa z|1BLePou4+J*8xixC1U|ePvEW8gOTAGjk#&TLK38Po6_@AvI`gVCEqD0{hWFlbTKw zzt=Fl1UMiGpR+{=MSk>In#^SqvGbh13RwkjQC3Tg`xxZ>Yn>kX6r1!3(|GO0J&3?! zfko~Un+jebV*+EEzjwj~NteO~!Agb$h7)nv0%JlmqzWToc>Jf$Ukr5+2dC4vgEcD! z2G;T?n?o~=qL>J@6?A?v8}io?4;|tX5DTwCi6HWOw(Zl|hl8iecujVeU>S04S4^tQ zkghpY)Yt{M4*rdtoW46hCjEsHXIRs3zQ$B#2#Zc3&Ge~lJ(j>^#4nM~NwB@4Emv`a z0ObRf*Bt47>QIj>3)_Gc-D(Hy(ibdjIgDXc(tmCI*qpwCfh6EqT|*==2p&G6-cttx z)EFLM5nd(Rk7-~{M3?eQ8M<mVWh+u@Z1Z@Z%qEU_E_6o1KRg{iENCw-e$OBz@5C1g z4c3YfCI4|5qh4$1OlC_n8=(*i{w}aWLC3avGpHTS%A9R=t>j>p9s@+uC7GS5kZS`4 zi4Y0Y0=78C*r<OP9Z|{Doh8QS@;+QA*9hZ?P#Kg2F1#W?0W_Y@&iWo5*}{_cKvI;i ziZ;1EB^>gU`Gki+-|lGtkD%=qjGqLw<-mLHx)xV~Rgj|P;JP4=y2imIQzx)TXo zL{q4F5}OUzPKTM`w_U4QI(#BAhxhZXQ<grA5vYTNF>UgKcw(y=m;zn66s0$Xv?w2$ z3vqMAAh+7rQ)TnpyQE3ssA-I<%!?Au_KEh{SJ<Xxo-n4ZE%><U+bukb0b{LlP?We> z2>E~(a@6Pje%R5ZAa@uIluT*wjgu@k?L6;mk27>t#X(2+$N3;;n}VPwm5Eq^9`S@J zJ$zj&*dNg3T6Yo86HcMo%`RRL6hYu`uK{7&5Ov+rUw+uEN`ZRUtd|zTuD7_`5n-R> z-U0!HJd%Ekqafyxv#zLd)4n+!>XkBONz|a%kJ#fQGyC+;_YvL1+8J438xZzna-l-a z*rQXh{jpA&`A7nvrsaL?ucYCqZRT$ct-&XsGhGre&o|fONw)-4D=-dfdXG>+B{r2j z7!@q2ng9|yb&49B6e-lD!p<5DkI6!V0njQBitK%Gqa?AcORx(0I}|&WG7)0thKxj> zQ^6ce)B1chARGROny@%5Y%=4O3Sx3=vSK-xr3};QbpoTraKq*}EoEc?W8<R#mN@lK z1Vm$aTnzmNackXWJ$v|7A8ywe@tk22*y4~vGW+v-l2yX~yjFn}(#<TH*|TsVXsGg- z34}?tO{|RvOTeFnx2Bh3p%%NRP8<6S*{@}Oq3=O|uv~ZJGJiP3ks$O0<KF-=);sBV z@iT;3lgpNcSXg7sYZU2pc(9-CDPU33a{+#3w;^$Dr1x;0rxj|Mc<V8QWlo*tIYDEi zw2qY&QT<A)wJG@Fy=5M@bC-`ZC6*4Zb?*1|AdU|hYwt$qbxKzTuc7^;G|is%T1{$? zJ}z5_{;q0*OKTxkFN*47XjfBSN*3c?)QpB<;cHZ%!!WV+GFEhx6rWir+WIhCN>djv zD!t5ESf*+uoo2BX4M`cPGM#a7Ttt|Nn;0x+{~%Zir^Q+f1VNR)4%MNQNh6K`fo3g& z98tyz^@Y+yOZY$=%){Ts;5!X*;v~c05~9pnpjUB{_LxwZTJk&HR@<!PmtOxgv4eA| z2G0K7(6?k>iG!L(U(V`u!Kzj*n2}{O?VFM#3h8?fyw5r|)IFn4z8Fvn@jQ)k>XiK( zpw%V;xB{mqW<>UWvLL9axa%_kO%7uWB}t+Jh079&r;{y_e%=DO2`1tqn_HE&S|^s( zfA(&_a3z70lE(4}@5^*It0niiQ{Gsn%xEN}oj#sDN{YGvNH&wyGj217M(&$z6cjQ@ zrzV^#)k1FaEpZ0PN1e5?JHvR|FwNXOY(#OTQIW-g#y&f*7LbbDQc;^eL&q2psZXnb zP2kkN#CPri*M>AI_Annw+X5uCNriOP-0o<mSf>t~(MY}8^q5;b)J1O`ztyr)V!l9w zX%HDv1v44pxpV2ra3%F8RG79V)}8?s60+3sUVU1|dFaC24Z{x2g0TLEfUk>=*WR>D zb#=uk`@kDBfP~EXiq>jDZwRu;UrV2c-T*F`!?O6f>71OtF~M4tC_?{N0B)lsslydG zbAttT61iCDJiJv>YJv`*1iCtc=iE)euqenUr?uip@jZ;PD1U^ib{Z;G%@h+Szt!K$ ztnS!%35z={*c3DM>+zjpt9lB5T&VuimI9afY{VJ{aZ@00jL`&4f!|#GkZmgJ!@A|A z>KI$%2I1;CYEYxM(utl^c8uy72IL5?>`+XS39T!DERUN0nf|)`+RW>zJFl^h(GiTd z=A1db^USm(^{}A8Zc&r#kQKWx{*qCNZ=vpMytX`ne@29|Foz<wNqhK(LpS^~HpqMH zb3)#gA_*eVqdadcx$ot1J;h*0EDa9NH6;#{iAIC&u23D60Ek8XIXs>E%T{#IG_yam z-3fR<Tc+z-0<ypp9d#%u+|+aJ`KuLiFcgF|F;>jgyoO{td@^v)uT$sV>lUtfo7fu+ z9!?u19!b`gf!E|ojxILPJmw4XBWG!2NeT<O*T(Nrrb3O!WaN!Ork{56$T_FlxYM@) zRoCcP{svLdI`L6dDpxj@;$<klKV5Lm1SPb`&ZgV}nTJ2wI9pZ)ds2N46p{dv*2(+k z++&UCpLjF}d}N0(FFIMVuy$@QQJ3?sTye^P!Gx6e>h-cWydGgTB&o1_b@h^TvZ#ZR zKgRsYNFX{B_m+s4NvP1m4esqhWHC>y?Os7lI4-&34z{XGS2-UOeWoPyHRJK2aKHX~ z8&PIlh_Hz3W{!lzBI3g<9pp-2eEy23J~q@PCqJhaIFr)g)54*BP!43mj3%u`7Pt&u zv&}7gO(4x3?)2BxAiaNdIw+hxu(W|?gRww=u`$Qa-dZ}CENZVJhfVGwu}6=3zynCr zb|t>0rI578_vc_SK*>pm$;ZkhINO|AzQu%qGcY;kU?%Q!{gPLV+&_lPAo`akz|)zC z76tt=4y`N^0TpBJf5XhUvO?15_Wt;430H`^ls)YcLL2tS3D4s0ycXe%R=d}k^fpqi zph09AY38way!5n`>BL)L8s4@T!>QS70&=q}R=e!DuB~zcSYbli=!A?#T8i?Sgjf}g zuHszaE!j#0f52&S(%wXZ(Y=%-ku(kflJ+-4)gdDab_UkA>EyTaXZH-?R8D)?_ITbm z-M2RRm88`AN!SaI)voPsJ9Pb2{#dyN$p>Z7l+3zF%}$?f1^*n;iljteR<+_8M;s?k zK*U$SK#dD(eKlbuY`Fg^1=r5Z5j~m_dM3WT>`He+T!oNJc4m)8<ziy{)^$n8c(#ac zu?{N5Z+wUZzTt=)6?P<-GdK3r!92r3+>gBAx4DXH%3f`6GHk{yJCIsxm<{dollD^F z>E%aA`$}}L<Wd<U!L3|>drL>;`|RLJHn8u<9#Edr-bZR@jPIu=j`f633!6YdX5j^6 zm(z$F!6$ai`1caBo5Gwm8p?t0?kQE}rofZ?HYdU&CN4k^VB#s^sZ$GG<JWMva;V3< z>ro?1(39}I>zOl@L{p?$rFggI8^P#X2b$n<NJ*N>xxpm>-Y+QtPB=Kt;meKAHN$O@ z|K+`gGDlDre3P52#-+V?ZXkY=j%P+Onp4KN1o2oec@VFC+U6C=2#`bfc^;&gPwcan zJAhs)pge83cMJ+=Y}M{Z?}MJ%<Q0o9HfDG{yGW?fXnbXSP>qYkB@`*-S(r#jkzid` z*=}72z)-);Cx^~z`KGdh#ocVzQmTJFgbO?$=|p-seFtOF=e%~o%f#VtTL-nuA6WOB z*IT1?^YHPqdceW@jN%Rk?#>Fg6chv~4@2S^JCx9uVn|DuJ$r*@ajjW#&-qCsH+F?& zjQV$9Y-FJy=ya^5Iebm}UrIwJobqoauEm4|OSeW&xry>YFkd<~75w&dVW@*db2TH- z5cqqm#T<O@4QS!^j&)lY^i{mGi4J2VzEdOoBhD|npDq)$Aip1LwsP^5es48&c85<c zz}%GiK~HmmZo-K@X&lB<rqRUDD+_6CI%2AE!0D}t3&OL6D$UZ^);|ESjJcsvIvI+* z`4h+2(;vQ*u3)X>1N~w1ZgBlTRe;|}Q+W3S3<2`~^<O%Wne+dMMzgXo{bw;{%|A3+ z@87m}_qQX5p1%0MZ7-Ywud6?hUUN=Pf;g{qHkw0xY1H?ZZ!ww72{&jQru_A(6q&fv zp`^0sTl48rSJsGM%RkE5Z%*jv@6GP^j=;{Jx4i>p)d-IFqq~!=eQYyoaV=v}EnTG< zkAHyY?Br;##Z~l5ztt7$x9MjrVu5=c<H%n^2|4%I{kxCN4@rkw6qmxCN&^|DsQ*ps zy?=arE<1X-`Oy>jx|`kgdwa5E-ud!)TUGd%sdV+62Rk04{|(dl^9Q@`m(vP2(>veS zktz&03jIiBy3CY^^n`d?kyf<&MrQKo<HZ?=z+|Mb$pH(O!1gsH>osKX^(fs9<iIwh z53xYZ8My9fGI5`nwG`7`j&ES#7#Ab&F{h(fC%znaA^UUJ0q--frL>DzvE0TD<K(Q7 zjP`n;+3*kL;`{eAG9*UgY=Kx1E9d0#4WR+9;LiWxDnDJ=W!@~v$98ab;!@;EM|(}n zBO$|JB`S{849J4rp&gmUHvQn^QA)Laef03d7VMX?HGM__gBJgbRtJ8eYoz`E(CU|d z2PolDYP>MCmwuI@{Du+L!~CP53Mi+%_DHgqegH}c)z~qm)-~-P+aEVWK4?+1c{C<y z)&_KVIPhPMeA}TQ|JZ7fP%=?qQ6xG{@aQ0<)W3KLGdVUFgoCZ}_(!8wBE`!#ARXw5 zy=#|%;JZ0@nnQTzYqePF!H&7|)s?jHJmHdZL#C&)5W+@4;5_v4LUkV`mtHhwNzqLH zblR*q{AQt&y+OU$I<<<CKm1}jtw6^)7G14)bb<~1-*(h)q%e%0r~vL%8vw<GHu>L1 zS-$h;$qFWT_faV8T4hPxYRIg@M22A`=s1AV$3T$$rcjUr9Q6SR3OF33E=rhTRbx~* z^gm<L1!w|04Dz5UiX3e?D(N)4i5T`KDRK0D3E7ruCdj^HT6*^CI%Xz3WIU|POgBD9 zCNYvk4#RrbF}bb$x&{Zr3ya!QRyF7WuyvpI)rEZ1A{u#m%SwY?h&<I_0gdBZSZLv> z=|1r3$|gk%gw}IcdpzqK)4dM3fBAkw7|c)tBW2mLl?>(Z3&MZd@IYAkqyjJ+ol42d zse^J5iQ@<rINzuiL;8S=m>*qWY2pQC*^wHB^ogYs<%6-{a!72lwM341%-1q*LkV=D z{)ej$zq~u6FdopNf;Qf#6wI|-939bwx?CTF0)Hx%#zqY&qi0Kz|1^0R__yB`vRp(s zF?ebtb$D2`7la||geB>mjSqLkzI+BsGu?vN@^2?YEN%BH0d1-WHVge8S%$s2omHzZ z-37_@>9g15njPh|Cb(9@1>(Y)zrpJEdFW3ieI~BdyoDBkRjTRJ=b<Cxf;!J_9}eRM zAyDydM>U0re8oxh1`a0k6<Cxi<!%6xO|5EX7pm!oEFEj|{y}HT>p)K7e3kq_u?moo zBG{l-v1rl)DIB^urRCtSDe7pI9e-T?#FfN3(n|=AN&I12M0iZGT-6eroD^^m{<CLt z$T==$e0A7)Ne6CSy0~h;NsW&iF{`9?;<J&5dKN(Tpx0!Czj|WV6j%iZiN;Qa<xH*6 zhQp=ijtOhATpenY;I;`^ZVCKRaP?qdrCU9qt1<iLpN*GAX;Om{!>*8<)<<9*r+#xZ z)U-8$x+1EY=a0A5;FgZuwykoDKrJ{?W{Qj;CL)-XPCuPSy`GUyWD<SBBEiz+{^@o3 z0<|YlqHzdDbHWT>V5e5li20Qi9ayW#{vro4N^rJ8F4o7CpGmE<)d^O21`<R_$Z1(` z2{7Hu)l=dGOEl{=yM%I=02o&Fjul(t`*=wH4ktXRESWVP4ZP`A*<kMgEquB5apqQo zWbr#9(`1cdxCvq~#bOzwacUzI?=pEhZ;M*pW~?)Y9+q}9_aOP0=@;DcF?^tWH;&uZ zi)XFgATwXn6S$Fk-B=z*4qDU)#^HfxxHLG!vuH6}-BCzuw{R_&>@4Zv-ERC<EM3~X zK&E0usj#a|0iWCH<Q=BY-lexQ-~Av{5e6i%t>x-^uXgRqav6DcI7XfDwNzK-b3c=n zl?#fY^DC)Gi?~=n1jzNg@x&}>YEvLx>Iqe|iL)e!a?>@%zxr3P1%?K@Wa3=MbDvTR zbJu`xAu;GLgGR7RU|_Pf9?NG*?Mq-yk(skv?m0JWN?xs-&V_6c!5oTp+HFwibhOw~ zqOCvx{F&x9sF7d>40t%qo%KuM2i&~@Bb*d5$&*AOx;k)#i`<DQ3p;eFK`?7K0#AHU zLqZn}�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	kZu(*+U#0_4dE;ZWRRfoP54Q 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�ob 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%0D$5ZEF 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 literal 1402272 zcmb@tbChLIlQ!CA+qP}nw(aV&ZFkwWZL`bOW!tvRTfd%n?tFK>^R1ab?pbT^73Vw| zkrBDiIg$BfB#FGRC=CNG8zjl}{NOSq2R=Q%t)T@ZH#eQMiH(_)IX(j`69fL=7oF%& zD<=~NI#DYFClg^4BU@t=US3E?CkGP)Ye+ZUs1ylX6A|d(rz^Gj5EC?)6&Cb7UFQ6_ zSoI$(P3ru)V1<q7sPEq0?Gl_fFyZRPtu;38?7X~>3AfeaFNcJ#zDZ;h!&j7uj)`X( zV`c}3F+F1)JwBg%AE9UYdWm{Io=-b_2U8LAv~Lr8t}jqZCxLj~ZKa7<w3<G{{)rh8 zL*<+4uy9#kh76~thZ82O*`D{SrdO7Okl8hKFA2?s(TkyDnD!nWa8=f=<!hW;n$;*7 z>NdFQ6Fzr8qZx7}IJEkdZmCFyTkpENJLzos1UmWJ27dxQo&eN(slyPtGinbuE>SQE ziy)uNmhha;(srj;@A6WnP5m@#+MO*gZ*9iSG$=8!mxZISQPqm1wG5yar>-%aNofw- z?WaNwb@R*fUv(<c&daO<B^grIGD=2mfX!eugv6a&c_?zOzzM8+IX%jd%o?Ythcx?B zps1&Ko0s=Vtoop`WX}3(<ua-$Q?cTo8D$8OHK)<{@ER|-HqR+++S1l(98)F2a?;!v z+<<&$8fDQ~TMSxFV^U@$uQ3OcoE#bLp_~%iH2(^*<R#jqD02I=+W0Y*!!DYofy^vT zBW1=tx+d)|ypx=<;9zYGi?V2bvrwi$jljd>^H=io!)yg;kv40=yQ4qNeSpyQg4hi$ zcU3N;_vNI#2Z3R=b)6e?YMWpvxior3$URAIPfB&f=_HGh`gW>MU^~56)vVT@M8Okp zED!tmL@a}oe8VQ`DWOyf9VNLgm)x^egVV27GxSUnP2J%y7uc8xxeCYGi@Yu)m9=PZ z@h5+|7LA<&`QTZSPFYP#<q)*?$N~XUrp}<>2uK$e4XHD~Faf<R#YQs%Xyf=TizYM} zz#(Vk9eO{Gg~g~)Cn03apsWi@5gx<PSG{qZNaM4z@%$%stvR!V1FtU$VFX1LKwU&Z zmSxNd46ISSZuI+O`7jaA4OxkGL3(rK9oelR{H^Dk$H|hIWxIB{lb!Kd<ArrF)1+-! ziPxqb3F!Pd!^^=nhK<C$&@pC`<tks-57hnWTc&DHH-AmQxT6lBD&y3IH4xb$Tc{&R zMt`yV+QJHm&{YBLx2h1r7KJlWaT~-Mu-KsDYvxLF6O6MPA(zLX0L*GKTQ)T06<gdu z<@=0LxIS!#@+)SX7)cr5o`rSwqYty$JepfDXlIfZJJJ~;4yaFnTb;;!__HoteF6_Y z2TXZ^%fYXIC@2KB3PVZ)L~CNqjsvtr+In>;SVbmMS1q1oAEF|!X(>x8WtQA;c|N1{ z0$m{s#uNa2*8w*tV<gzCfne_ND8AKp&*8)vm^~nQ<QNl!5qw1bw9b_11#^hvc+9~0 zLcJqd`I1;Bt;TQjJjg7Ao91X8om-OIU83$fBzpy7-N9N-F}CpnG#ILAMU0WfQ{Y<D z&yz^Lmp)aSPU+B|M(KW=%6?6}IG&wpVyYv0gwg%^Bs`+tKf-x3IEZ}_T3>=$za+gM z0BYhYfU%4NvJo?c>z}M;#KFI&4_HrDitGE-$u9}t$%{h5-ON|{cq!gEO97K*2AG>7 zzMq{RhF@XZv6hTWX<+`6dtg9k=u#bIy<wXWXKzJT7IKVr6Imx;MTQ$kyog%OM3_Ak zu3rz^YcG74c)$R*4S$#6ZEWiecf8*ad6v90%%+gadAz&$=u%Je+DkMF;nKk5v7&DO zK)#q&SBD7v<86q=qz$BjiNFe<YkX(;7#%6oeJ~P2KohC@<=jQcyL9BlwEVw*cka8! zf=3+PrXjvx_nvdMc)lhe?RvqNJwLnL?p4kf77p%~Vxhd6M+n>0Y;Aj@Z!$K5I3L;| zANVbw((Rm;HoYijb;ooa25=^F=zQB>QN>zXpnYm+h@qprv+V7Be;%NP(tibj?EP~0 zOxiRyW%_t*W@sL$ty#|~<c@^(*?qL_@w^Oey_%{g5dGBex)oGYF(BtrH}tr$dYpJ0 ze}AxlJF5`eQnQ`u9KKjShBqGP-X5Aa(p%kPeFp0t*uVi43#)mq6Wj3_Z0PjL`|Xi= z^#lJ4_K?=k)7-nx4f8H~rr}A2zdO`LEP95>7uw+lWDS$FX)9e-HmQYK2uhq<TzHHy zm>NcOI7=cT<%WWEoKQIQWYZ-wXWTa74Qr3}>vVGA#w+Af&p(Y`5z@rQ_+OdkTlyzM zF|ho5s$&0-M1_z4Kcp%qd2uy*dAlP<zu6y{$bdKhjdk{av(8M<^e^-OgLUut9@znU z=%FXi@Xp^DT)&L81j+1w6ENi4grSh4Zu<VVi5DEq$+J#ho_zYSlD37I>j(IV`W<#c z#CkY2*T2(=T}@k5M45|`vESH9s%b=?G@4zQPK=aVE}^+OcgJGbjbBf=7_Pp5U(bze zs)!PBNGBBlO0DTUHmgHSB!FW1-r&P=Md*lBY9U%?A7UZyyhwdn9)ftLhx;X6Lew_9 zYUrz0g$#-`nXb;{wy;~>Q4_F%G?&ujq0w-KHoR;vYre0XTGrM}XTF}R(Jb61xHmgm zi6hDWwwH2!A@9MZy!qT^wv{j!x1bHN@dDZ3%U4;3(MU+{gXJ&v63G1P2d1Z-PpQM~ zup*22AN<yM?DqUACC6HbzCbJUi!^RVHHX%#n?ip;jd@ng&0<~mi=|?NYw*t*g-HPb zHrzTxvq3hU9A6&BXri4pd0B~b`MpX#7K1NJ1sG_{P11-S8RTJPk*R#?=cQ(}q<#;K z{Jwaww{2+t{gVB9`wfk?Glu=Z+U$FSCxAC#BkbSz|NeLx8UF3@GW`Gd<zZ$1H|vb- z?2P}bSyYqepX&7?l#M&8)<5-BEN}wTe#GLS(8h857r=Cx(KK9s(8C)0PmZ#2BC2)j zAJ2g3eSz&9>z<d~%408M)JL|YZJ#yQGLsfAvJu;zkqu3K8hGRH&zv6ypRZ@WhjcyO zUuSZBe5M~IFL-=jFE1%4TW&aCK?x3@QTL-MJ>E<d9A74icRi#g!H}X@L{URPdTUUi z>+$u9lx$QqUgEr<vrv6*NL}$Wlai2SD&VSQ8$RyR6OJtYAr29F{`aXi{bII4r!8iw zHbN3MFlXtuo??@J3*2jdRv66WTKX4k)0H5c^6nwUgSV+eQ_&dAm|TFC%!}n+%^S<g z^UHE~F&RQqc{(na?|kp}pDwS^Uv|BsDV+gxWiQtsT+c^*WE9lcGQDsI?^_ZW27$NP zOQuEJXS9XpR*%Nq<wcB>#q3mM#^R)IRSV}gE0Sah%ngu$K4;d<_x1*eUOGj7YysE0 zQo^FjjV-;7r08~_CFF&1l4Ica(_)Od@BzRebeXJ_!Xyh`mhdd<C;TjhpyyQpDg_5w zI4UqHz*x#Gn_5s6pk9{xO<@uZs)kT6F2K!aH>yOI40BwrBF(8<+D)WbBF(XQN(CdR z_5~xLcHb8r_+q%#xvr7LIPbmC>&KRB51#4%RD@?>)17!F!b>8obwQ|}djbw8A&}S! zb!Nm#>gEN{=W&cG1)UDFod8i}M6VV*OBefTYCMeWgt!KyyLCV~IW|&~5e5!8*JgyM zSVBA)PYi!8Cn(9zxhy_tXY=Y2dwnTiA*}3ke*S$}urwTt1lW2Q<}-GWxLLkHEXIyu z5ILnO;_4oWFlV<p0uH6LB;;Vf;O|&?Q+V9_M)^@u4CKI!W$SuHk!__uBE_a?%n<_u zsAJtYBnLlP*h=+C=2$XiYN+O1FlUPs^vYH+G#w}7hWs@7#wmZe6fg^Li3tlonN19! zw0LkuO^k#as7`SN?|}Gxaq_TPDzMp+o>@#eojuUh0$#yUYCK~gofG?hU}7wy8~H~A zG=0GwKd$%^DR^56az>0Fko&v*sH;K_e-@!ug%1#8DULzX!1|2)2_Zzy7fzuyg;*f3 z=Hy~^o92))s{r;LDB>ojuT}@DVjEGASR;5HDDJUi<*dUPK+@LZU7xi4aRIe}FZ_U4 zWmN@&6LB>bv4TMX+ane^+?p(T`HEl5UN6#5;UygR7zBEyFL{rfOel_jCX!bzT_30a zLim-1(AgC{0u6c<h6@=Tg^wBhyVnM{xtd^c$x?@>_*E9B_E3JWf?**CPw8zwx~7=3 zPeIRYsyU;wTM4UR;kQjUs#4Virk+t+o{px>!bZQ|Tk=z=UM$xV?MrjZpO$txpD)Ib z8zezC0#${YqZGWIQA;D5F8=Ib%T(gXI?)L_y`w2#(cG0cSGp}(JiTnEx!~Gl>dDE_ zkVZ6K0)LRe&XQ^F${>tE*)3a0>C8SnN2$u5njCLXdg1Q)r$2t~{H{vJzRM?^_vf;K zyl$;YV6)GC2~#`SN>3RAl;9f2GS@Of!7-tDxd0U?PIID~ogums@hA?>jV{4-H)%_} zG`j{Cwe7WG8jaDx!D}R}@`Iq4y6U+)z&~qmpxpCYo~^8i{iflSS0VNlj7e<c<`p<x zFIp;-1gd(Cjc)e++uZd^m8dmGyY(3OjWB?i)2<Ze-^VFAn`EqxkzceIPdhfUk}>GG z;NJJfsUjv>>X|wwbO>^RiS1<XKN<a7ann5kmeV+MUuizGg4O+<oAozDZmw}GmyJ!V zXL(F`<Xt>49~3;3^5qVw=5;kcqU02f8V_gSXfW?pjX>0ec_JB4F<eAG>cLkgq*ROi zPRlb%>>Loz1$EQb_eYQ<L%PHH=vQ|X*fG1=@r9Cijq{e^dDsd<V54GQgA(2wyWOJ| zhzfw6xXV%=F+{;o;3DhH_pwXj%u!dE@7L?&$S)A}iLwY8!t_zBW;Ko|Hd)M!*PRj; z{j&{RpzS;D4&gjoA10AFyg1IeMJJV{U(4^XDNF>wc(YZ+RSu<Z=6_Q5a#kXrfBZZZ z#)n{bGaYj*2L`%3h^Lr77YD*0N2eA%wjx<oFH6fpnLAbtNA-0z=oqE$s~Eq1H=5Ch zzk{&OqyShGTmxEkcPi`6=d3Pr?r%0@f+mh$vD(vBr1Z9}qUOq{M7`*E_>*ZDN24cX z#33Yn6k<;6`8y7g$4_$7Id4Avh$6q<B{X93)6T{k2e{qWmJ=g4UlFbPXM8(IL6>4p z5!6}FL^Tk+Hmrg88GY@Px@AHaRnEt0b_dR)NP2Wr2CQ({;DI@>a18aKWtz=oP??JU z`(Ue!6Dd4ZQ5`$das!}Ax6r23-MjKn{bPAc#?|SA(-2c&Ax0n)wR?oVFa~%cZ9NVs zK^K;Y4km0V-(;W|&EL>do^tNb11o44o`oO*Izko~061@H*oQ^8-4<}jxmIvP6&w%3 zl?cMu)ix`tOobazyc;@~h<h8cnW9Jb@*GNLKf%!XIc6Ia##a@qY!Z;jqm(d16>mz} zNt*y&Pc}Q=;b;Mid$)a*vBA5_+>gl*-u3iR^eADL7nQZgKaSYN1oKcGv}QvM5l$^6 z8^k1wJlGc98|X`(QKh?rTXTDTN~WenQW?>@RP*XEEGclb;z)KEy=0z*?5UPcmq!*n zPqspF-WH>sv>orMQ@IReZjU=_Q!(53?z%0nOt>VoYOQ2O@#m&Mrh?|Qt1&8@>51{K zb<g4KCxbRL>B*2cLmb&uv#F%ec+d-23o_5zSRmUIxoa}QE(n5oOv7ANbhHkGv`6G= zZ_#^T{4MJYMEf*ZpNKNko_)EBZA2#An77$qk0UU{dMK!z6YD)Rwx_mdkJ8F`c^|9? z{h`*lSX}38()EmhEK!oFmTs)0{tUKqEg4i?PYl3bhLH&9<tq?LUG)vfTPW(TB+53P zBu{ye#pvjl2@yqLQS-q}Dss^YZ9TI_;8B=F!1dM?HTZk0^p~WH0a`>PF-;za0P0pr z9EwvwsV74gp*`yW^ClS(*A7$@Y$H36UoW%=7epi@f=oJxU$(Mx_rwItnXv0E?$nB? ze^TcrJoWS1<B|<CUfp@5J*4bvYR=V5Qp%jIx*0K5w4_=9SZgSYk;EFxr5m#U$uKN0 zP^O-a>=iQ@J@2`6a#YwZ9hX+Uq|xf@WTpy)BUvx(LJvR6kG|in<J>FLuq~@+_iSHZ z$$<7QbdsRE-|RHg4L@kk^=Ozbafl2WqBFHyTrSDkg;Fa(Ff)b8lOk-O)6cE;*{t@p zK%sWD*Dcj%`AE|zB1!ctqL2j-P3~FM-92wDauR{jsP-75L%8#8doQCV>TN=R42|>l zr~96{w=RW%|I^#GN7sZ7CRoI*6$^$<-IvK)PI%I!85A}ac;?HV)%)@YDh@SWcQ@G; zxz4Nr2a;hhuJpwjtoKZ>*50;qrz%>}mJ&pdYW*?)n`2_<N^9_M6EyfM8az&c3OihN z%r<}nzXn;oEIMn?r2}H?qRP2?KnizyxfFEx=^#?tky|YwF3Kz5spmJr3=L&4L4^aL zyy&H7X#>vk=!kkL2dW?$yG;uop&d6u|AGP~6jWq2Pfk0FGM2GB2l7#BO~m<^pc47p z8%ObX<h%kmXXZF`kZVWC_uV~crAtLgNG{}O?hl^fmKs;CQ@NxlB1$WGA-y`w1idQ# z$}N~C>~51g^{L?C-HK6OMX!$f9K%=jB=KFZ=nBQ#vd!cPnHJC973#^#YouNyk4k5+ zCSKfM3zWrhNszTT7<#BD&<8Hb?|j2Fw<iBS*Joh-ui3b=yPXN0oS}u1lQo?zJ_9}d z_fpQm(Fvc8gYCcgPWpeX1pbF*-b9*I1U4JI-_;!za2qjN(<U5!$g-)U#BX*_t;g+U zA$kHX(@xN%t)m3Z4W<<<k`-LQ?n;;YQaP0(+N8q#$k9>L3M=_ZQIoFQBKd-VJc2Uy zNC#08w8SdPrOHgDV9+C#8)q?Z3E8$%$vnm~3yfHm2XN~0p?qzXCia7<`XS;2e+(Zt zF^umyFk=c1P$kQ~5h|(xuYza=_g!t;mh>2gkDBBv&@J`_fP3_#AGe$*f41vSwAdpp z&$;p@BDzMG{a{vH_q=a$8aEE@XUVAOD$y+=AK|T`ELX9GlBJlg#l?tJRo6;cl&z`d z#mHDA*}lmt(k<f!1V`}Wz_aEAtpTl4gyclwGKm323>M=f6goypYgktOa3y&TgSqH0 zYzFECfx?PZUNh;830gGiu^ep%n(p8Bn`-NUe+XTyX~o$~ws)-}C{w%Xrw|z^hRnq2 z(d)K7q3et=fI}6F3>8VWq9FYx=1moYR6-@nDsdC?!Aj+43Ph!U;i4pLlMlxKn#{n_ z$rp>!RDqtr7}6gzT`+A7BAs|+DBwE-a?Fol0q|sGQiTKsF~}&w#yQCm{Kd5hOKL64 zw2UZrBd1d49)2*uS87gUYTIpSa3gotFDN&mm7G?5NV|ynb<YcLw|u$MaPk@x^LFyE zruQ^A*1z%bdHI=8?!{<Z%=RW1IyLP2Cg;U_@g(>5gtytv?$yTd9?4>nLIjluTp?A) zu^~$r6B^?r&*sE_7QiQpC+%HPe6|<5_0@!>#L0+Jyt+M=(^96((5u=wRg6%Yt&0bD z<+Hi9C0(PZBeV2I_tfIJB{nbk)^i%{-wiuBne-g`k`j6+r}yWb&MESYmsiU!Xs2d@ z!NQ}c`(wzvq&R2czJKR6_thh#qD$U7$b)L0ERUB@7Z2n`Ar=XQLnAh!e{Wqg==If& zhe6J~wokeWNm_UwMVJHPGI(VbpCN!<&``KnQPm+hD!!DMA~iqPJw7s(1f+pEUp$(! zZ?;Y)-6jcr_LRWUO<RDGs7xR=siChj^J6V+*d-Df7nsy#{|hy>yQhPzHlevH6X5h~ z6LUp*WoTi(4w)wKVjV4X@9o3>e5ClITa6OFgZIl}3+(-Q=aNli-`iC#C)J5?L89n% zU=!VYCQg|$BNwJ@`U3G3xBiv2JuXRbj7U{=RKyICG;V>XJ}#IyN!fFTN~8uTEq3Je zrB5^&DjoTD0MjatW$_QGZ(2DO#ZCE=ene&V6punpygC%kT?}V)rAs9Y;^HK#29Mdw z2&F2PLtt=It%&LrX7&iCW%j<dm@FujWi1J6XmUvdDwb#oj95_;%Q9g_iJ08HrNK+& z7P|qo?_e*g2HF5jG=Dot=RfFKKr4dG%rB<r(eK`yNNk|7LNFT-$h+!6wT!KQVL?$L zdCr|^=`IsmO0BD_Q&^0hxXeTl*_cIC(%2h$=@DRNag0?}{>$j?s{KR#zceFYvP^n7 zy~m)m4DAaVUbGI|!@F+pX+r;_sb1FPMY_>IR4`3FZ5UQI&sK|PYp>?tUeG^p|C~7_ z15y9=Cz9n#XyKC@O#QE`JKo!<hxaseR&mY(>(`UVE@Q2)mbD^_$*pzIW5PNTrfQ4d zqxS9D^O#BnkXps}c!(^5*axm@>u~5&R|eD6wYF_wvuQh|TMi)o2i6~)zXtRCceKCt zDq)VgqRlvd_x&9uvkKP#khOM)^3jf}-2Tg}sn4mEOJuh7|LD%(V5IF9nGLmhq#fU8 z*_cI+_>6NuEx+L(&luiKfR0QjE639H{>I=hi>V`9*_*81Ic*h<#VuivXZM<n=3=(d zD3(o{ZkC`sKDirQg2HWgZx~I?eRXg6Nt)_ScWBRjac>xzA=59q7~#$i$Iz8pWS4p} zNFD6@t)b{P^^a(>5upKzhW-s*kI#OKl8=VTeN?h^rW6-2X0&D;7a-qviHi?YS~HE7 zm~LfhHEx7knK`5O-ORKO_?HhuZ6>W9&{>X?p)n~oT>&fjOC+6G^w}<QxuiZ2oy2=L zyRjECGU}VN|0Z9t{5!MB#KOY%zoL(d(j{WnhcH5}KB(OO)SaxR;G^@$lK_D_i05Z) z3o+K2fW_{xhrWMs>&2<)3>KBJ_|GglB~W*7b(f#q6&7F7T6{cR43DwlS*6})213}p zKF<}l3EX@Yn&HtbS!Gu_tIFZ^NauVOCO*pXdA)z$e(n`*o{pb8KYBRWJkknt@qEv4 z3|?>7e2b@gzCK!VeBHCp@k)H(pI=h+=)Mj&-q}2hinl<dKW>-4ckX0-52t-~8Z(?5 zhcr!K*t{@&YaQ=3xC9t~GKHoJg*)hGTGvvTC#@GQR7OV6q*)EoO{MH~fBNn0BlQ0` zd2!(BdhqageZVa~qaaz@S@`fArm_HBw7dG@;MMEr0L<#MH=dn4LGd&lsh&-D^pxGB zzrBpQ{JSphqU(H8garG|{k2RZFg=PcS>aOzujGm@XBrMq=a$1fQC2SFiZ3_ktFv?^ z&m5CSdCr$^b&~cJe!oS+NNjXCvyv)(yh`-vnT~A2V?+4LkbYz~pfA^fimJ=3y{K)V zl&X_gGltF*$E|Rt5Iy9WxaPif+mz^7hPzUFlFDi+u*Y*84cR~`JHhy-I!=PBM>}j7 zXk|V>Pa(j$^N)psBq}y#9&HXg{)N4+=vt58O8|>u>XYYb?1J4k{u|G37jaRkB3!nS z*bFhP9<s2J*aUofprX-XV4|>o-<KOlt=T^Q6Yd=TqY@8t*VmfNl^oA)iAa~bb01no zsWNh~Dz0goc>}o<p-ZV%WG{PbNWNIgjQWgN<!?`$0lW+jEbb<jY@*pnUaW)!u_78; zZjuz~uu^8~>pvZ-M0H@Uq_Er-=p5YRGX_!up4#nu+(%W4hDJWJs~Fjk>mi_?H9+`L znMa2~7b}GjblP(eMgy?y>xP6JZWjY?>{AHJ0ja!d%y8~U#BQw^P%3`}Q!>p=%{T;( zfC-Y(jH2WRqu{UTrLA(Prm+~|^E9i8t+hwsDbx}{1Q;1c+&y3=$TI44r<u?yAt?-+ zGQnEh6!FV6z>cEg>1ojUb2C{HJF=S5yA&m&8|3k1U}x4Serbpb<I{qaa$p`4@%H=n z70ZM?Q$jOB@C5<4<=T;ngI*~+vA-tP%f&{UmcjEkvL}{Ss&WuIArwOb>t~C3fRhYU zXCl44og3MS!2e{0OeuAY_GA5XoeD8%+gtWSR%e$rJg=%5c7c7NW5(Vxvl%s%Mj)po zk7id6$0Dg<)aRz7Mapj;BB0;~zjuPrBiK{6VQ>tzLIPj@Y`;^i)93l^Wp-<UZzIPe z+_?4H>xOAv5ToF_I`r675#wNFR5a|k(pdC(4_tv8y*)+H;aC6;L8NgLNk)9yBkbdf zrzV^3BMDdkD+E_BrtItOg>lole<{Z!q~J@(p*dsZm5Qf`2+U>|i{XLr>;~qXFKKL~ zjMwvdjQ8N<M$PLeT~1Fc+3R9%Ki+?@50=pmuNI0{WLOG@u+wCFzdK#-kAF@zgXXOR zR*vDmo>!2=)yp;lx9dx8;_I~&$*1GOjm+h5?Xh9|koAM>3*HeOiA#%~MZJAwx~J<{ z&lcW0Q}-caZo@L@=T3?RfeOMf83;ADxPomQAlmLE1RjKktJ`ZfJUetS=o!{nNDgPa z^p9G2%6*k<z!v(Q3rO$b)CX&_b2i+VqkfD>Cc!}vP{^2$AX=7rpdcGLs-SReRYS-b zLK?!n7FUSA3WPt17$g7|17SYvg9#|r+7ak@y-KxV*@Yc$ktoAgOnC=XH}KClhsOKE zZsF5<!$cL(MJ0tKT+&%G>w8Ho(Zak%fk?tGV#~PuDLoYXdC^@wb==~k+YGKKjNIk1 zYjcnayV$2@N5q#@B;_I=BAlo#WId&c@j<aRmpRm_;efZj5-g!A4B`Dq1qfiz0r8>^ zY_{UVF3-5i;EE>o<P`fZWXPGf2-FL`u*;~!o!3taw$9{NNC)^ch1?Tlc_t5|Hv${W zxT-1zvE=#ij63cTT!el&S`8);GhM}k*trd?d&vYP}wLDe7Y#vxhuHnroqgW<U zZ#LBGGIXvs6$wu}daEr};k~lUs+8FaV@f-XK?={LI?=2GnoNKYk0O|b85fu~{`~Nu zpjED#N--0hW&uLKDNYBF@7hL}IFAAFH36;Vssa`zXyo*T5L980f`D6{W>{qEqrMoI zHgHU-6(jOl&Q=8<lL|t+piF=K>{g00EpDANUCnxoSBfe!k8uAoo^g{X!W|X>aw#Se zz3A@0DZMLvlfIB!J58lSw89;p(^$<Lp9Gd}tN6)@?I|&!5Pu^^L|$jZT?L`u*$Gb+ znT*`=x{-1_xA6<iX3sPvJOs%5c2Bqy5h=$!;Dj1hIJPoa@K@2`uS_&ZQa<;VWP*j2 z6heXmHM&;tSLl1he6GnXs%A0o$IHe(^Rh5vS5z6?&Ml}mCTogSfuE~cucf3^m@Le8 zu(HSYC{n)IOELvdok%`3D81E~1wzC!Z0V|E3+g6LKJ=GYvQ*WAPDN1f8L@SR({w){ zagVY~G2u@Z#_yA(_Xu7)hx*fPB+^M9&eBt$%d@;<kHz6`G6SP4qmMl^b+?m~0Y4OA zZR9K`RV(GZ1Yx#VxDtO*FA?wll8gvWu7B?ZKXQG(La;nu;=uXHYgabJi?U;%y=hFZ zZn^GyB+~3|eLi4vo~a62&U#mD9BT?<ADH(Nk-=MxmQ*-MAKM%j?MZs1W$h_?0WrQ8 zG4YY;*hgQ{G(d~40#TE2A!a+C7Yxr;b4U^>zjubq<vYGU7Mcw&7V{DeK+pM|LdcK) z>QS17v`%q~<14V2@dxW+FAh$6!eBlmO<lvJ2{?9Ek;^7oMNiGVoW)!(w0lP*y>;Rb zwU6OdF-pP6K<zfVp(7)U>YAqK5_28PsT&@Uuu|6QpEq>JN#-oMQ2}rY*$V}(tt=Nh z5xNg?gR`Z1DbG&AOQzk@{j{)bWa*?<u?F@K?!BLbzaHLG_-VKFM3!OCvTHG)uzg3y zPuPEs%Ea^%Rp-$?VDEAKxslA}GQ#q<WKPmpjZ3pT#yr;SX74mJ$E#UYf34r;-EvsC zy&wS&p(H#o;;Q;#9#{iW;eEF+38=}nz@nTSruVij<!cxGblK%c`zIWobZ#87?4mu> zwrYJP?<b*RBx$PK=D9keVFfU0wwH<*dF<jF*F*Jl<m$3@oKIVK<GnvdrItQzPt60E zB}c!*)W=Lf(MJMx28>KA%adc~X(D+jdlJcqc^|cPLsGw`#P&$7s;hc|@zu4(j6Q~w z$|h}bv!h3(hFN1k-A|R)kdtC7C%>Xp_TQw6sE>b+LL?&VfHOksua+v?a^=kx?F^<C zc_dfqC>V)&MgCN%CbDN~*_L)$k{4Jk>X9;`5Fuq{3yn*e73T*TFB82Hv`m{Mr<dj% z1CM4^rrI5Wem^3rgj~aW=Wt?<%rI>qG_|m@WJ1IzfnBo<p3Fayo6!^Z{IYEXkUb;k z6>W9<KGNlIqJpBT0*O{-*6_eeVwl6I{5B+O5Q*t)WJ#)WE(+B!N@=K~?cB>adtS+S zsvql&Ig5af4n2IWdtKKqzlzk5UP?xdyiBN8SDp;e{3PzvByvw`Os*`NI|TuP>qfI3 z4s9x*>fH2U?o_Evt|2aJLuUB+Tf(?jO)MxHBPKQMm>%`0Wqr7AAjHQwCe#lj0Swz~ z=4+AwK(#~Af71q?t5GOXizqTvb-+MzPQT`3gIp-$UwH%3pstj3Cgp3vsg9pIFV-5C z?*;hyta(gLTxodKP7~?q*O?KSn%7%C^1(7#b~4@@Eb|yC7?0UNG?*FWNo#8cI=~<l zC0hCyz=B%Jl{vL7#)}AEBa&W5EvY*RAc-rM;EcrUN>)*m_3h*iWR=<CRffg<!YzS{ z5{P5L+I9i(R<Zas1Qj@tDoLXXrf}wGM!rT8+t8@MEO~A)|MkeJiG|ET4Q_ov;NAY< zOeLoUrr@Rl^q|>+41&Q4Cc|i{RXH&Zg8rs4cmq|N@Uz7r#a}ttIRmHOySCbVF|wqw zZSz4zS)zB5_mlUFVgu$i?7SOU*|L>WNR&bx3rvJV$OUS;a;}lpL4X9Hqll|&UhiQI zsszfnwM@)`@mG9nm0~fLZ^%9>Hi(1*{Eor}$QELaM-wT6rEgS?RQEDmuBwz3B93Ct zE-!1s(CqiBcZTwg$)i+Kqn?+{3|iEBt<V~T8d^8iE3>GoTx(uMcrvIyfb(R=@~4`* zjORn-ADy7mBmootnlK|8`FGz2eS?$Ybbg!^H+)ftkSGh<TE7msttMxe2r%b}6872r zaBIgSH?oo(pLyzx;0zH4tYSsf%!>^^`CfB0lZrelWMNt<5TRlf&QDezjj{viUxhRT zqN7!cbMx`Js4#+=_j2l#KPiqBeSLI31WiYeqc)mJAGD5~?IH<JXqS;M7a7J{q?T7X zhR_`-WJvIMDWX??8R#g~ZD}@DcljQD!Y(&1(hH&HouFGZbFF|4*t#Kpnwn<_CluLU z8h0dcvC-SCEY@q<Io3ba2<83!)4#}it7w&MGj0gbLX-6ADq(ELLwEBFkiAyd^A1Cc z*Lh)9H%oUL=>!#g>h>mDMhp21ErS>Z5mlv$QrDx!knC{9RVPRm)r?KEM~XnnR4C<Q zo~h}SaA+0K1}R`>DyQ<5<$&(smX(hxs&#>fO>N@=Q3H#XLe>m(`QqybPi|K7f3srz zu3h+l%QpXS6el|i$A3|rEdRTb&Z7UMIN$zKoX%%7{u*J{tSP{eT`eYX(LBIN^+rRM zcAwt7WkqR2D}7ci233oR$~nsMk}-^=Wf~Yti7=zf8XyjfrOJ+~X>F!BzARTsKMlJx zxGC56B{Z<ABPYnq+!IyWGLkAB%n~b{GgYcbvy`g;blu9}CfeSXdL@t@AiZiAv#{tX zmpaIum9Jx=Sa{p2R61NKTRGGiCV-)2aF@^TOBAj0=A5Wbpe2=OUTGinmTI4YRX8Mp z)i@-Gz2d#l5mP5xTrqWxr4l8sQhS;h((qxK7`_pq)oJ!+lPc00At9A%94Gz)2%Mn| zRI~&PQ<qUYKv-)NjtaZ+5_L?kGZnC8Ol@dp(lEJ;G#y<roR-d5k9;|^Yqj7@AZ#A` zK}vFf&BH)Jb!4ff*!vDKk!Jr3W8%F{c{&p#O?z5;3muW!Y$%BLt~YmDm=_&|`8F=; z2oEp#2GU$KI0j*Yd5LV*GF*kXKW}Rk4KjTfV?5vx5q$z<f~0&KI$cUJPv*zKamAwH z08zhY37U{~4K*n&hSAzexjcOa05*=&*rb=+c)-t>-1e-rAK3);j{8JQdWu<?4=Lkf zR7%g_2cwLp4D*abrRbIz{hi@WkphmD9?<DVR7xePRDp-{qq!VSjOMac(CHY(6=-zx z_nIH?2{NB(EL}=-w!>=$?cLqrx6}{=m;$8=k;EhMx!g4Rf)WA5;E~gCW<jbPL{8Hf zaRm4M7-e{>r=dv}>`zW$X*vPFC0VSHE!caBH>FrQ^%1X%R7DJupUKO@<I9Oz)Y9kO zZ1RpIPW9urH3Cw;U@n~Au8#We4?pxmPZn-=ZmzGNLC_GE*EVHs;q;>Q<nUl0(3X5& z_O5T{-cp8bU71$o15A4iVa#luCP@b0PL@JLi73lE@&eLzv!Zj#axX`!%WDJgIjvxx zEZTXzUyniu%@2Qp)|V)6Y!J*pR)9$5FUw*+9o*dC*qtu75!xgUXLx<w)u}vx%=K@D z<NCN2N{4ao+9kBC)@cBzIR7pn^QpmF`>^BPs)OFVd8x(zE?DX%&HCQd#i8xLg-x|z z-HV*6g-tOq;i68igu>dySll6u%rb7kSkY-b`puvZMBCpi9m{LVfU3iepZSm0E9EjH z)`|&>m>*PSzlpk5!BpmJfm!8H8qD*0!?z_Lu<?4})4ax-hUFc`%9nyD9wyZ(w_v7! z8n44bk<_));S#&FLa*%z*eR^qg<<hv*<myrDTJmv?-M$PIJbiDN#4IRoJF$(*PPMp zL!bRc!PK1g^}W7P=(YONH_koY;xm!$znF;v98<c+lF-w)>x@>z`Hv(PV-pYmQhT#< z+I{8tCkhv83t8VxN7@LF-zLk+A{)cwU=?$x>h#;+I(5JI{Mr<?$G;u63I)4aJn7^_ zg>D5mVzhq5uST|3)7^3em9XMqw2A;bF*;-iElgU%`}V3ou$9@e<@WWTF>;H&ti~Sp z>-_u9#SMO#;r9(N6Y7KCSS=3jfIajGH(Ay{qxUZe*6D93y8^GN8k6`Y2M=J{A=Wqe z-lun^B_E?_aNl9>3V=o$@oTt$0H7IAKTqHeI6z-h)!1_VZD=&k4x0F%UR)nm_K%*e zeUCjCH+W5;hwit|Us<kzvywLOpWxl#aeW^;+o56qj=S6SqJc98_IC(_f%nd$`utN= zHB(&Ou>XV@3PwQt+vIxpKRwFA*lUB<?fmqMpx5=yz7pV!BobHW_~=d6;KCL^)a*t2 zSk~uk&%4y*FMiA)GD>#BsKJc-Npa&(qN6D<#30p9{f-%?F>BH`Pd^^-;tgz&?6o8Y zUVQM&ociaI*t^LeS8rjx@6U!UG;ekA;!={y@aqe8@XV@6wjL0iG;Vd^RQ0}Z_KC@4 zo8JK3O!7AXZ}|=2#r-4J{YZJwuMyQqcA9aO3o>lqL1`joDV-mfgR$=#WSoP^YZ*jG z#@`fK4!k-$JDE6n-r3l>vGKTjHErkd^6b<b<nltu&iQrA^I<w}kp$dl<N)4x#}wCB zq9Q^C(Mb-Uk2a7FEDCRkFpwXFDG@+c7cyT?+;rLz`t<dqtL_T_-*X!yGuwaVwtpQ- zVC4AEV!i)ii>^rXPc+UjLT69SaYRgw&YK}RP%JYAzaL!lk?1jg42dKt`N(Z=&sA7u zd3CuiZYX?M?^=6BzQeD`@nTJ08jF|1;?s&DvZmuf&jwLEWz9^jE~pt=x*S_yb>6Sn zt%Et+t*_U)DY}Tax!Wl`-jDaO3%*vIFV&j)TdXBZywA@GnTmrNwyyWL;*IhGmPJZS zyWXQ0sECbv7s;PJ<_#g=9H%y2HS02RqomD@g^K9#u{7&lXv&(?M(gj!+em|edxs7^ zU5_5^k5BNqk6YrWpJ(=4FKA6a7M(7D9X9m^Ie;?w3?^>)J5+G<(&{?bt82P8_3M{$ zmyPRI&I_)pbwnaQ8sA$%8a1O*wv*Kc_HHjOh<5wMQoLX>1xivjj;`QyzS_$c2&S2L z<!Qb;es;8%3T?YaEQUGbIo8V(Vx(XeRk?D|tkzJPVg)jIK)78cs%fl<45Qd%Y1c>I zESL_oPa?PuumBgtVo1zwp)ReM*D<+BR@6&kCHdh#j-XNvl-3HWchzx{R^2<~z{{v( z@Dmk6oO=VZ<R8%CEP$s#$(D+Ce*fQqKlApcBREdXgfZ>E;i|Xnc?+`|nL4=$O{SV@ z7m$z%O~&fkBoLSlBoL7O{=PcZ?U?uXpAhEuAII2@*S`veKS+ptsduXG$`SKrndtQ2 zb6GY^;L)euSr$e18o*`<mwSJYq?V#>7QqOv9`fhAP#7d7UK3Qo_Erhpw1Sxl*sYB` z*hy#dgHc&h=Q0WVM9z@?@(w2P>a%$t%)qX^0q6-*0Sgv?QU~k_3NjZ<#;88>hZESw zQTkIgB7_$kFoM>SZXAbRs^gHtN>Dz~*+>N+92?sbK+p;gsP1<rQP<zBnKybZxKD(L zf;Vn~T|ZAs2qssU+B7M_tFIFngMfaI36yJ!9(eYX*g~09+=FVHiJ{oafUm(K$3QD) z@Gd>RNq~%|Ig-*il|}5`kEgTOpIfbf;RNvPB3>1H0xMOtGCv+>g(F9vJfUAw6o~~< z*Ah*~Pa<}h0tgcxWzHlc{ugd>#I=>*iw-CcNUlT(Mt^yP1GaPkTTnJP_=rYLTbH1H z^KwW;?-6Dt*cR}6VlJkYtdp*0!yg7yU`Sb{ZNyZ+$@a+hv}P7^t%Pcg+up)urT`fo zX$rA)5%rcYWB}l5hA@rGBSn|%B0^m^I(3+rAJTu^;ri~sllGe1g4<K;DM|cEXi7$? zjKBp!I;A?M2XH}fSs(<Ha0g*$Wbk4-L41!qqP{E`2CE>m9RYTDFf;c89Ip@G>gfUN zCnF%XEBZ}T>d+Hi%S(B*t@Z=t@G}p}8prKTVFO6}o2hicn5b8R8SMw7mc=}*FBjw{ zo)3VdYLwR%;R|p1e#=w~pHD4-eHb#Njr%7;p0-I7Bvm<^VE^HQCYY$(XQ$UYlasC6 z>*b5qI=H*Ni;+4IqlJK^kmc`}HE)C`i_=50Fs7us#Fy)R99?UV`tY2MIUGTND{SN@ zsb|j!zA)?SB!};H{&naT4{BZS*aoM8K({DBb5<@u-8MVDIrk5Unje7J^<_XFHs`#^ z`nYUDuLJl$uAdIQ9PJQ2;=$Kc&seAitR1m(jMLhwV|MM6u+bhJY_l(ASEL(8WNl4K zo~GbD(!`>xO#Ks7VHVFv^hJ$OXe`{sHM?x+V%^-ljy9cuu00<BLhOD$_ixj^!fo!O zyz9ae`xKlMcQ~|3az}i)6`{9OQjni=(rbJqqx;Rw2{(U+i+}G4dQPY#Ds`O|Q*IQX zAKGvCX^|5_s&uzSQZd-MXJfX87G&cj^sdA8qOW$R!OD-5hO&}pF+F>;hw9H{pE~g` z%|SZX5yNt8!qbNjx+5xKL2{Zhb7l3bmq<Z5V5X^E!-a$-LKtcn?uoSL<;VTV<$65C znya!A7VnU+@w0y5DKLn{5e0{FHc=l!kC6qt;aOaXFT+Vv0Q5kd+!mNrVpAt)wpQqU z0y`;#^44g^U&o9!+Eh)wuMV=f8-t(M&P(I}5uVf_4A7ed&npbDFVToQv5JfRrxx_& z>^H*_fb4C100s2g-TUn7RcIxt8gwFv{aH{}9WCS0Jv`(ox?*!ma`MmpAP?{%V=7Q+ zG#d`91}L<=EC=+qigf+48bsCypFB*aq1R>y6F18H3;3eT3m*T`AVCc08pjLx?F)}E z0s^TMr^8AoLnq*$Fe0tks7dv67%vI{qOLuH{spe=dcoZ`q6gt#U$COr@~;zm2c<nN z1N@&gu!s$gDDSJ1(zHcAcXC9o$zV6o{tL64lHzdEfFY5nznk7um{F%|NIk6pFMwnk z4iFq|NZ*LEIJKDp=!nOdO|KcQMbrE^z<pDs*^e-p+05l<s&Vz9D|t-?%#I->NyMDu z@=-Tc$DZ#-Sj?eOJQn(kv&yV}X7goI8J)xv1h`B5;G0}P0lf<ckVb6PC=o?Lt%lH) zHKIeTrm{@E2l(#-1jvG%Wy4pI$%F5(x&<)`6>*6D@pAd)+WPFP)hc-)+4J(@`)XXi z%YM5`XicgNRIOPN;yD_Ai5jvpyE}}UA`Og&58QN}pU>2Kp=6}0UWA1UHYMlfU9)X? zopun(QfKAIHRcbRMs`bzNy|-73WZ?<njtq;EiTyXNF}<eD--(y*paL>*5$UN_dB#| zAzp`{3O<tX(IU-qG+IC=B&zCWAbGfdSSW7Qv>C-M*}odZi5*!b`f!`Uu_;4A&(VKy zWZuUHSV0Nn>5j5Wek#WO!~rVMQ0bv4BWw)AA47+UfmZQISJmR;47A5HT@drI5pfZp zs1X381|1Zyl^vP>!Eth8-aw^%9K~YFCDv?H>Jjc!=7zn0uAZ)uJTqwp?BYLcD)T4m z<TVK{E+vXl^Qg}y`bzFW`DrhDh@KP&p+%DiLJT*%f6R1Hqt~Xp>9`@chT*A0aDu-~ zSWWZCO(Js<7>HZ2o06-HQ48g2x}w5`6?nOJ(N+ySSR`-N99gBjWALkK@nMxa!Regp z5r6|UeUXHF5X1#)F*Q1=t_H$wX_CAPW!3Oogu0W(q^B<>YxUsZQ}u)LBlsBO@A$>p zCT>B?8*Esi$xSWWPE8u{KeN<s#qbg9u{f649?BG#ka*!$=Nt+8t>I?W{n(~G3`V)_ z(Y-A9nKZ3(tFWwAg-xt+tL=&e?V*Gd1E<>OssdlST~WWD(-|7J1pTY&kZ|0(U0kg- z1M=ckRZD}xB|{&bcQIm+b2S;d&aiL?@0uANezV4yD@J8w7cpkvA=~1n4@I%jONUr3 zREu#tH;F%5KZWX`Ha1VlrXAGAlVC{uVHm5Z*vR9>@WJ3}Z5Jmj;Ne1ggX0!#V+c#_ zedL9Q^jP7%<vmi}$fF<Gg2kQEjDM{LV%N@a9r1u<!}3e*NzCkE3lRy?Ck==+EZv;i zYm;cSf=t+Vv(Kre(J&5N3)g_mxX(qC;lQuZ-mlJ$^FWt@S53gDw~`v!c(I3$q8VYu zOcasMdK?v41p0taP34(ADbRzT-F^S_)C1Jk&JGz7bv}-9o7yZ2k<II8pZP}3Fl3+Z zP)y?<=0=NI_qH>^U09&R`{+{c<;l*yR%ID@5^0)en%MLTK;lyUc8`eq^8Jw)0cHy} z-Cqkq68eD=BFGqDy=UH;Se(s%s$Yj+oX6P|-D`1?5ZSYzEmeZt;nxzVEGs$$;vwx# z5Cpdzih<NSdfhxq6p$?Gg8mdu)I=J%+JF*`hm(DR2>XIu(jo2~g$hBb?#wdp5M~t0 z*u~W%<FE1-w%B8JL!hzn9KK~JiNE*)h#hGOl<kH$2ACueEOgY=SPit&%WK`eNb{)Q z{i`fENi?r_)ztJ0>>+sSzbRl~{6A0E{9oxPR`&m*qnQ48XJh`qbX1B>7oI+<Va5ar zfYFupN}v&3Z_s(_4Q8fqj$BQe%&w%}lYx9ig-VXHVp1WdWz+1aW`$L*9p!wwTG?U% zW4merqfC0@&)rJtgm0>GeZh5Slru11Q%oa?t3*4&^T5IrEz$C}RQsEO%HXEj+824D zeA0Xg;<Y`NsnS9zU!UtBeWILy<Sk#`*C+y9LsPNHvOQ+Yf)d3rVuVXZSavcAR2u4S z>80A^kpv8cp10CZWZ=X_H<et#k7PRHEX|juFpqwB5^&tFS}>3HI)YBOl!_^`s%%Fu zk9rW(v);E3urg9)T|)g{ndK3oN+-^wH#(3Oq_s?<?%)4*k2(y(2rT2QHL48Jzos=% z$*46RqGlyIfGlW)&^lf12x5TIq*?W@(h%L%5p`@HeG51|PmIBwSTV8>Jj70%lIGh` z?xy!=B_s96sBMG>jnMSKNGGA!0|!AUhCr~?FeMl`uco#YDu1LH*C_Xp%xHWKQH7|d zQ3zh|28df@!*_TC6+X;p_Y&N}Dw&b?t<Ds6{72G0Zk@|E(XY*c<(?lLj73L%ocjgF z86Bm<T<oLmrti;z`K<-kFI1;Csg6QZF^Dk?gmh#M|2Cf6_PE3VGqXc2%>hTvO&S%- z$pkv#%)!M?xtO#~o$g($HkDoWQ1trQkvaiq;a#wp6Wt=_?EN9UO)L-#EP;qDAW!U8 zrwBy{kxx9Lhek~EI{{TRyOI935X6l!Kq5W~SOIDyN-)AI7<C15V?y`X1~y>DF;;od z7sI~m<8IHu`{A*r|8@8I+Re@FJxGg`@b&EBVQ22<?qnmc8{%SuF7&&;kC)G<t%3lL zOcR_qsQG*%-cjPl=i_E)M_pxmms$QSV(x|rW*%pOOy<4~CfcoLacwS?@AHYN-90~0 zc)#4U@^jU9p$=KtaIJSLrsOGfZu@k!RRMSF<^9aa^5!lybPGku>uH3IfHsajp;HH2 zfvL3<UT(Q>H+}``vZUez$n+QfngJ_K8)yr}H`8<I`a4pKyZ0FSTV5pf%D^z1j4(Cg z=x@|H1*PcUg;jTuD!uVdweS0;me#SvP)8MGfXtS^X_QW&!w*D`nM{LkJ|kqxTH|%* zWU!Vb=lgBn@<(&VOi*yuIp9A=xqbFBe>N<)A5DQUezQAbzz`g?W!e5@R^P-=G&o|u z2KG@E#GX^5F>K6Vl$SQxXa<AzKblU`Vsp^d{zIP-iqrq3z#f<+`iGt(38<wP)VWRP zA5Z)E$Mf$Gpi{}<m$ZieDoO#T)$XVKUgS1FqU~GlvM*3_JW*!``(*m3PuP;f<fX@& zzcOk`wy9Id#NF;Z(l=?u{t$$rYSJYVWq0ro|6_j&v4^hT`tUczZ_uwTbD5h?_Tn46 zu(PP1jo88F7GwQ~qf+XKUHL|M{>og@0L`13!+>da2%@A%YgrzXX*5>ZDOnzU-$a*D zZ;(Co_gP|&`oA%OFA=a#MJOfM>mPl_WTj6(UYKIHpkEqWWuuj3+qoNa5rY53{-=f9 zH&KKjFtSwVuABMS5IEz6IJH;1yX-fBC_ox%^m}e1AyPkZtd<7BxQ`vwT(Q#eWbL~X zEy5AMxG&?o&SwnQLr^q>!bMg(?|ugU1j!7djK3o{9%qk71m@rm^S2LZGkBrPYwrK> zFKmZbRPq)O>l(Df^5m9NghgjlQjxgpe6jM+t?nc5ys|r8$JLVX_kDPt*_|$w_cE_a z7PUP^2oK{{7w>f>=IM1>%%yWFly`EaN*1vB8=&|uPkmKq=;FPP>o|VMi%E2=f%87^ zu9|f3{s%4iMq4u;zST%OmpZyVXIsu-G+H!coiEi+A3}UZJf@bgW)Hg>mX^*c=597J z`u8?oPY)(MJfCmfzK8)bi-L^o1x1_O2sp-ie(1?rB;yxqN+qI8jJPBd7m`aMB9@Ry zL{dY9PwRZHBE<g@#j1-+#AaQEd=w-sw21@HVqJwG6(Y27448>bjvp2UGkA@PD^43v zp|=e2J?`!{jTP@Y^d%{iL2W`Q1ACt#GT+O|>5=#Zbka{L`FHM#iRu5?SNRwB#Kgq# zzpTX59E;v>M%h?WGfyy?@!|`}^-rr?^Yf>Uzqi>Ao~s*%r4QMozJ22eC8SWyFSl5w zUsY0xA91|md6M{ZFh`hTOIQE?_IYr-&~PJ#_{Y*VB_#(n7>oE5FUhWVJ6)m=-E#i+ z*8SxfjY7rk_4A-(jEyeEqhg`2Y=7Rc%5D*?q0^`P{pZX3ns16+&)4<ZR8J@E<<uCT z@B95&P0E+P?K@d!;@B0iQqTLxT15PqUfppI-6$kVB&#T96c%p`A3B1zBC7a$e&aR4 z3wo<A{7}YmQlyK5qIi{HE$7M2*qKRdjh?=``v5(^N0+voZC7@+Pgn4X2jw5<<@PPt zPC~Tbn3p*G(OA&rV)}b*l`Bw<S_i1<2xDgl@0)ippivk8Fql{in`@Wr-v>XZ#^ffj z3a4p3ML*HJw7WaJfcdm*{~yNQG03uK*&Cjowx?~|?w+=7+qP}nwx?~|*0gQgn%2AL zf6jUCjkxcPxF6PzRjaacWmfHoRh7TQEJ+O?N7F^OFTBs^Ibks9EV3JU>X&vB0xS9T z>w3YC=v**z^pw<al?LU$RYatNK!{PmvIY%qZj}?Gcta_EucmDw!AP+9PP+t<EXZzG z%1u<MnQh>k6#WVYr!YaZl7>iLC{IEk6oFVJU{OSZON%tBfeV1BAQuENdv(C&xHWWE z<sR+YcKpgmJaP0N{c3<K5g3*)k^zo*SN_%>olm18lSaqCMiK7ADwYrOMiK7LjpYu) z+~f|v0WLo@=%)zmi!DRUNuP1SyH7l<YgwYZk>o8X3O-G1esMWDsKY84Ao;W)neR#} zq#Dtd5@Le}iD@8q!huf-Tt;~*DxhV~az++6vui&DyAhS0ILxZ}&9&x9DTQ9bn2mxY zS0punQNded`u9Xag8gMe$pcki_QLtU<0ky5?uF(`kqbX(KVWFhs-w_t=xf7|XMO># zCT_ad+JM5bD|7%l$3UpM74tw~B(PIQBjTd6<0iUkgzt?c(E~qBi;lx12xB5OFMCZ2 zStgBSK8*Lh8Im-Q&#rAH3^{15k3Tohk821JiORRho_8ZoCLzRCgp(y9|4uIurEVC; z!l6&pAcWAA(5IeQ96VN~+KY=#D}J6-WKr*>g9SoS7Ehin05SKQ#PG+{GUXm4Qz;}p zw4Vb5U6PQ4@c46U5m!(x5D5@9LDwSCIF<S`Cekeotx%+?RY3ABMxD4JTF2TV5ov$p z=rlqKGu&>%q?iD^c`xRSfRH9+RR@SsNhQ`mv%shd%(B#LSW&GtA9FDJ-vCfd=N8Gl z_y~eNKe#u7(S9k!K6a=;^mBcu?^3fIp?=~lHo3ZVAKD-DALS)tA<#8wa*6pkMwFnE z!tf>;5Z!*ifrW?=&k1LsOoNR1JnV=xFu?iwP=EtWW=;s6dY;=ox*k+L{665gyKxo2 zULP5^ns(1sxd&#yrX#GG)P0NDhD-gYjEH`18F6>_F_ySsuq-YE3{|L|yq^)H>gA`F z74bFR@mc4#gYn`Ymz_6|sR2X3FiEW*pE-j-f_YVXk4`ZI_?6+>#a`N-*r#{kRWF%7 zZ#rOQRckR_R~tY3Iq$XKFYFfyiW-_{ESoWV3T)M)5XU_5eyLdv5H5cpm==5MK9e$r zHZd_?edO=BEpNvo?6$pI`G$%x-F*`vg^aEDjrhGOvJ$5}C6}9dwS`tz%2`n80v<FR zjH^HCJ;xu42ol3^Mj^0Lu;N%P*vLK#f4&_O#R1%2*^mP+G{T9(Y!#R4;ba~$Jrd@C z($~W3$-P>;OJnzxS<lU{APx>((*qNPuayw+wZ~3^r7WITdG_&<a*md9pWaEiG}`F@ zJ)YmlgKt4kovsijcMLPLlFdaUyS&WJnE^9EqGq(a+7%gCc?86JBb4+K7D-`iF?oG6 zsTC7TXpFW}tXpDy5jBvutVse-EqNwy46b{5p@W?QyBt1+L{Yl9oMLk<u9z;y$L>(s z5=K}UEr!25gb<lM5UVTKu--~3icwJtf`UpB<K~xIy(aQhz7%?+U40?HeTtmFjH^(Z zrt3l@a@&MmOPd)Ub$JnjwSLV9yrZ~!2t}w8{XPY{k{4rWP_l0YoAUVp3n{?edWWaT zA885<y%XkCPY89^PADAWs8}F>Z;A`gugEgz`)ol$5h*u`a0RmMOpeqB`;H2nsYw#& zT{7x0<$T4mx?Ro7PMlnM4}H##Bi(6EYTz%sTOmaZ67H%k`2@ZvLZeA67ppY^j93Y_ z6?dERwSd*~=3nt8ugtH`F%f0Q6{Z!Y#h@Pa2=wu_6F><-vYHg~)PmO+h7Vj%CRaHq zOkzA%>c9PQTqe8ghhH_*V4+IGXix1&kInZ;m7JpcU;P;Wn9-?-S}rb{K27!d4+u5Z zJIc~r@eNmA^$H~evnm25Yird?y4w;Ol|2p{P3Wlx;AZcMIfH43K1hNeX15Jf<V&#U zVh+V(mOc_-lIAOL96_2qRVi`P!B;FVx5`N_dNZ_|{P+WYuQm0>4qXsh!I119nmaRT zJiAI%fdlOa^ZcW0<@(5>eb`}q)^txHwY0{TQJqBTX}B;}bcW}9>DDrot4Yln+C3`} z4fii}R1V%s(p=lU-Xvk-P?axiQBp|aNu^SfYmKEGcaC3(*qA?CXLQ;{xw8uilZ+El zG@K}#l8Xlp`k&=fdD1%D8@cVxr^18!>5X%}JY%dFu=Z-Q$kp8{b<)F4P^f-VX-*{~ zWasrEgAW);dE4Z#eve|1O>ysR@@m?m{A_Gzd+HciNfUa2yT@q(=ZlQWFPcD!IwRve z(pn3cEL`FY)2%v|c_3jJj|DS7PU)5_TJ)3hrpKF|umoOblc%|w#9Hmh82q6FA|;A8 z%1f9@!I)W6G*U@Dm%Y7uad20k<^pS1k{Co&i1T1C>YpYKHJMNPp(pFBWYc7%551JE zCI}tou0hq%R+EbbD@vBe`X=5odmTPrbHy%8HtAeU!G#)!p4v=28@D5L|88|REN(vK zgWkDklt8pU&dLnBCT3$S@yD3U42Aw)IYRvEei2ijDeJNI$)6!!7<Wg^W1=gJuj;+I zjc;*AR^0|E7lv(7EY5O0O*4NA=e#D$lEq6dwb2R^!+M$zZdwae@Gai}y@a63M8FCK zi0HG5+@_W79dkkbw%TmMt2AUz>omD-cBwy)?$p|=xo2?WhbX9K*vd6LNz#WUQ4^M- z5}g*3ytNou^qj7}Fd_FvH21WAh7JrE!|cwaJ&_{Ylc8oZ8IC&LJy^|Z5<zQ}h+PEI zI&#>R(_Y|DkRNF#yS;_-?k$`kG#$s~O{@v-xf-aO3!u{qSiE6IJRbDu+=D;t`5M3l zY^obstIoT$UB$CF{CmvVsoM*`s`MfZkq!g`_X`Iot)CP~X;x`o(iL&(D~(^gelfxO zfEmK(U|G`$6%#otwVzr%1<o(M&a0R^FH$zxV>KPMiLpW0FlE@#7T6zcN(oJx8ujUc zl;|KKp^RpNn>z%P2;#mpsyuBODPv?pyPLqGzac}+0NDpDgYHD=op*JUr!>~B`PB*y zZN8(4T3Yb6p%%Zr(oK`zPq2>gO|@4s{u%pScd8-7_QTn33+$PsvQl|WP9BAY=>#47 z_;Fklcp6XIg=43ZUZi7)thST5Lp(=)f1wm%h-ssgL39p+4WX|t7>irPvUC1hO>aET z)rPgDTen`BpSeqeJ9);8AV<ZlgLiTOsRK^FfsT?gXb5VKw>sf4L%EolU-R$PnZ5{b zNx~^mob!q9G^#G?oN%kpHN4ZTz7cUMl=w}fz#cMu1;1Lb;})8tr@|5iiX>JOHkWE^ zHykMjwTFRr>#Pq5t!@xUxE5o9POuQ3<igyH@0eSth_=!(cIa?-YS^B5D&r&ik4XXj zi*4RzUyd^q^=3*VQ=h8)$)KG%NTeOytfvBg0p2^!@O#ElrCDW25p)Bc(Va2v)moU^ zu1s*cUl4Bh`;)AeIh>h7F3qbn%uLcU8Z7+YZRQ*d&!yMm6jfr7yH`q+EG#_uM?S?A zpcIDO;KrNUmg{VpkA7b<y=kI5C<u|RWYZTOo*EsikF|5s1N9nb>uoJiUW2}}JATi@ zH#$SC>Z{=C98Vds3!MJXRMIq)e*Hac&~Ck&pj@YpNh6+Nv`*gBI=xM_t+KlV5{iJ- z3hvEsCIs+l*O2D728de@7ZC~CK&>tq@DOdf<`V1Gem)&>;FHfmLM5@wg*QhF>9*C! zssD6Zh-<_tKCx-u`aS3Pxhcb-;B8@YBH3}rc=7dqNGMW0A;F}q*rGo8z2)Skal3UA zx)s)&m!QEzbm(3(H!VEV+?~^0$S%vP^Q^ly+<>cJLBysrZs~K$(yybxcb{}L{R&7O zGxA*AiG{4*ZF2KPtiii@_Ng7cFU@3*5rdnVk(k3#L4C1hUC_BMO#glUj;G^Hg7W`! zf?{O)FZBL@H3hP<{+B6`_5XOfN|(08VM7ji{zM6|S&KFy#_{H-XNJ7`6&z<|+9{SO z30d6TXOI8!?9EK1EvpDe!W3C2(mnTfaw2B>fY8a-0I3rtOFSzin;=C?yxOWR7HOZ4 zQa&s!aeD<d6u{*3OY3GBybX!~U!cuT&HS(cvO0N!t4d3_D+9kloQ7`NXqWBw7qd3x zFVeHH-YEzP=IP{K-vs+^LScKdhW%hxVQ?ukC5KWGjbw9+u$Utj(qF9-i$Ba)u;pVK zCrOgV+;ZhZ&IOrBP4<fmuq7M5AF4&qFpaMqL<+L&+ZC${6!c@u$%y^Tz)(0Z33Fi5 zdv&!yHHP}Nloa4#frxS#WLA9%pT5>k&l#wWTollH1cgb~{iugZ<TR!{Ivb`ZF*+t@ zB|W+-R$$SqnE-9jhDiZx%&0&$?srO-#K364Mb|fYbR#z?1PM1ng5(&ieB;|U?)PRu zQKiCK$B|cj695i;W^a#_GPvduMMe`nB4|DwnGdF;&;_OJW<Jg}_NwypcCJ&0iEawC z5fQv#GLcJA?&RaZ-tgY(ZfYFE*dq%q2_sCkzgKE1nz3-BG6}=DZ|;d$pB{=k6NC*) zM=HR+KTLd9K8;Km3^IEP`V%oqsxI$BPNo_~gq=YwSVt0)4NBx!kbS>d-oE^icsdY1 z?%~EpSUiPc7JY-lZ6ua^yvO53db&;qp06HbaPH*8uvAahcFxq};}hDfkG%y>>H>%I z+mPoYnljC#Ms{8^2Xa+RDb0^2&{^*a)~=7Yd2^4)tJwL6J+CjfcHj3-kj&N29GzUA z+#aq@-lngjL*AZj9xt!w_xDE^QY_0x9?@Y@1k-dD_DyNt?d{x55XV3$6OUWFPa#l8 zNf$-q?gav^jr7yYfsvli7W65vJpaMQUz?j-Yql!XkPM}Pxw&{eS-2doHc?naFd1|` zytFJnA8ubIeS^=jN#SG7`sqXKsQd=xtc+7kUvz^*9Sp<W!3@D@RIYtq&7dcsOS>Fa z44!0@pzEYZe;bwFOD_EiG|h+}bhU8H`n%sM!$>l8^?<7f;9!0Pq*e{i>tpDf`=8gk z_12?T{n+@2YJzx^jW2B8g%n*^52t$I4k%5QwLYS)mqRO*2FSd`czQkE_U<3<SAHne z7Lvgk;<<zn+ZUkKecyA>u3M~nC2C{f|I}LbI<MqFFzS`943-~%Kexki!4DWDU#h$7 z{LAVx9Dkr*&RR2D>+egRgyMkiXWN@mFLKjX07}S$V9>LzH-GQ>Hz^J&i~7vc(O)jj zWC1X0_N)#4IJH2_`knyeSMj94vAKd|=y@$SLQxHWkny+eTCxd)<`~%+C`0kj4+NuL zuR0$jfP+;iP8j~h534O9@6&%6Ipx-2)c?PpN*C)bp$`C4a6*Voo%Lo1!xQ*cxOF7{ zKi~92%_d0C04>fR{6Bx!UQX^Ar~}>yj1VM<srl2e^{<!!-q`yqhva#p|Kbs53ah{- z@7t@4u6ex)AjDsXs|+#juC3T5=liR^H}fC0l~``rxPPk=UW?&%x9SJrnz;5hZgN9$ z))1||!(la3bX7OY$%>j;%DcmH(OdL%Z*~4JS?J4fP{;pstL@TkQ}78G&Yjr)HdzM~ z_LrVADtYBu_6#Ud?^t>P51_ND0zCSJUu*cE>H)y&h;!@707MY>Ufu<8uJ<Dm+W_%i zUgbFF`$l0!^|KmBzqJr;;nKnJH<(}tyW0Gs?&Xo5v?|s5R9{B*Z1E;m<tYc*dR1SB z3-|PJ3K!Ka%cVzFea&mN=%miQcI-p|%l6|>L9M$D<Vy49{WzZ~S8f}~C9mayM9c1T zd%@bH4%}y8$sET+z&Pwoz_^jc-i&Jxp)J6;R#dgS4Jg1k!>5{8<?EQhlhY8xg%mrZ zcG{^DEL!U&RB5({m$fi}liA|H>qqAN{^bL}PWbTj@OXQrE4nJrjT|G-i7azQ;5v6+ zIx-~A{W)#1Uhkoot=v>luKYOKX_4YUl>Y#ShImG&{x<Y=Jld%%5C$*}=`<v*6GkH` zc?KNeK~jo#Vef!RS^Ae+$lrfoHqXf5@E|Go&Q^-ys3tMrkM0nxvR1zYc7CWoUS3!L zgqb%zWZHkgryjgR{LgP4GXTZ<e_q)C@l<1Dr~g02?KT0dg&VA>o99%GWA*4d-RuyU zwK$x7e(IA&t|F-E8G~cr0DGZ>=VL7irT79hgC-oZXd7j5)#D8|I*McXhOD0SgFl&e zB&Hcv%Ke&T16EPB!|vR=yfV6zc)o9rpEo1$JplJKXP2+EulxN_U7u{9k^L80HHu?i zHJ$F4XEvm<*IcBjugp=1I}LN1rhZtwb9m-0)G;w}7gCa}SX#G~<6sw#p9y`F#KB4j zUGnmaXv<~oHOO+})eK5;)$_%k=fzYX4)F8E69)=i?OwJY(OEzh?JeKcd-4R-fh%h8 z8;Bbd9pI&-4>=yMFMIOlR&dpd>ohKlFaP{9i2mUEYGiLj9w$AP>Di6FZ<+Ue34J78 zIf0N7y}$b7`Eu+_MgfBzy%Xy2X-P;EMRxqskPgvp;|;S$EIV8!k<d&Ul3p3dV{x5S zu)1qYR28K#a{&6jl%BUb5*%~m9DytAwwsj@7R6^}8~xU}?8dZ(9JG*-1j7gKEd&d> zB`IdtPbtk4SM;htP+nUPoE%44n+l~Ap3>8nPq|y)3#A<XtS~?cq)VyBVvwRvSr_89 z3fyset3X)6(BQg-tZrCspPW&NtS;CslT2tim`q633%ELes8QC}dxn=WdM?ASUiWmo zdb1Jr=x$^d)Gqbs7b`j<=M=${CK&h*7n2CM{d6lqhGSn}%iDEw8@0sQ4QS;<4l4B` z?hgANAZ9tEQxWv^9vjz(BpC#D*Wo0#rxDlSZ|vdXZ5y}U<k-r`nx9wXly#mBF%GJ* zRb)zN4lhPp%SBc2&<fp0@92^wFD{G9U?Ozz4H_(eP}W?amogN3<EV&{$BtYe9D>`j zNaBupCqeYVfw`Pm3p_GxKsc|oFp}J_6~D|7BCJ=b2zjK|<be1_qL*Jp&mHO&e@AlS zTHwfDCAjqPF3HJ=Mo8dPgX1#qXfV4MCs^hj<4i!S13y~hH#-X2V?MS=a8|yU0F?+j zG5%#z(@Ov}(dTMXK%=ll*eI$Pe>{a57A&-*fcv4o%s0F5whWl=)FcE(NbfW1;4?ps zm{HUs?c|BsYQhM&47jXhgu+dK0O<g8sO(aO`Cn2mo5(qe*=EH32=oj6c@Fc<DZ5%` zEhtDjtFmo}D7FCS<{RjK@QHDw<aC!es2Vbtmb|(d3I!`Bx!B$!-#5+vpD&zXz;vVs z(|6bBN?Xc2+7g$9W!<eZD!q+}ev50>Mh{@}Ab}h&0-y*y<Jt%uRhWdPbjToX{`^QP z0ztm@ulQjrxLCJ$_X?`ZW$(X0)VlKrRShV=x@8`<*}RGuaAWQqua;xtQ>83nHzrjL zDWz5RDyZk1B&*8m9bZ(}uRdR>?vB<7bZuzviZ9}Id1ZCG=dm{thFS0LW$g}|%2L99 z#u77If`qYV9398rzt#MH3@N$J?HLL*qlLqTDFx#P14#$c3G&>)^$HA)H-_wT_>--1 zqKrN_;!kfx&5S4JUB!%4%p7M%Fy{7-k5OV7z8z<!vkT6j!=ro6a{bcKaWi`aanAML zIyB=(5O0tW$Kp&>35k(iA-J@Fp#L0nCxZ~7#8M6|fR{^{OxKzYd_Rt@%U$J)-r_T1 z^%9!9)A4%W66dFCw`XK7KJrXYlxi?^p#QemE}HgH8vis$on-qcK#mbn^9-VEl?V2Q zp&s4}2h{BzYt@Qj=A0jtg<&MzqbYrRM3ZS}U!L>2betgnT_a|WyoOS=UZyoH&jCnS zd6?B^#W_l<dH?{@v3_iA!AdiUEO|J9`LOxi&rEEH8Nymh4%WnKZ@Uk4@lu}XG`Kw? zo(Iw{h#5SeCX6%0vK76h*-e91Lc|cUB76}G!VLRNkaeiY0;Omw1y`4p_{|E1{whjw z`sIggNOkK-!X-b>Q0QT1mVMfH^GCYy@a(iNnxkK5E**Drx#GBCm)(G!rxiVl)N5If zm$YN3Y#5yalREoZ>jSkkgFCS+smnnUk;2$c=Xhsu%JS&zVz;8!FOFz8QUwbd^&lr? ztZ=s@b<myMot)~sgcv*WLYtZOu7}(&MRZ=|de~4V)#M<aWqspiB5v$@Pw{ju!trL4 zJuR^72a;GMn;X-9+nB^gST#5Ol!YaaUP*BeW>ze5(ICYtUcxR`<}%8|voy}A{hYg{ zq$ccXF;CoDFzP=ZD!A4*7di?uVw$Pxg&x*u2@2yT;9aZTSl%mVun`Np`Q7nXYMWsE z2vjGyUs<>_9CnqWRQ#HVZ<?o9v!>0Gyt5BGOM3Kyj2o<kt0SpL9}})6PR|Jn+`Guy zPYsq0@r+m{?oY29NH&n4qZegxyh%G67N+fT^5g@+H94oLpN@QJp5o&0lPoB;$=i{e zUv)Vk#ulRIQt;?J`h(H-s<QBsifnnIUBvh8qxR=_=ktP{eV!t61~#D>Tl_@zq))|! zFh4dV4NSKZUQCHrcBVj5Bi4mjntAEFn7}0quotQI#QlzmvCO%t4365V30kd8uaCrL z&bTU6Xs(zFa6Lhw43~X~o_aN)GWnVsb69w@%>v(|$TLp9d41>{#P7zfN^)va6@ijy zKE?aX-KSJN(0VJLH-mXX)0X;N_YsR`(pteS%sqXKYzFHwSbDS`n{9bXXu12}y7KNa zUe9(<Tm%)H9j=W#qx;%66m!92XkTA~=GIGSGIXLWXp^AK&o+GaUlbq0B!Z<<r8Wv^ zs7jejXHq?xADP!4`CYtFK1IyIDfOs}eFsytB8omv&}^6yvQeD!95~S2-`<-DLglpx zkOjA5R}YSE_FTfe^ushy=j)1Sa~4>Kp<RwKU}5I+F=x+;cR?@kjOHHnED~ME=}Ju* zrdYf%uy&7pVhc9n-UisT13%KNaC`I&#r1Np@)nOFuQ<r2Y=*5TIXtHU@C@wTvpGjy z?zRmMt!jiU`hcM&6TF^V{F0-J;CD}g?y5Jg4qqdm^5=vMWy<x4c_=G$#|ftt8O$=x z>I(#g6)=HI%X3dsW)3ZWP9@2;CG0Gs2IqR~d7gnCyN3AAcnwOiOodvKX;Jevj~wyn zC5H>0<pjnu>wyE|AWSdz0FIzq?pP+o-MpIVAdyHXqB6_kz;L+?*lOBz)&|`4x4-{s z@GM=w`xaxaMBMB!y(wi$j>bJxvW*>HqKoe`#(LfB$iY%>jg|Xxk~9>`yjLSD+HJPG z7-Bi6Rh;r=zPmH`-tW)redyL(Zm5Ohdp9sKvyH~Qi8wT`(M6)8v{>-xe#F<yzb*&m z_h4hK4yUh};9hoqV9Oj_Q28ElYdk&&z?m2J+EVS$*xYj`G98WI#glGMzcW70-iEG8 zo*CDn;gFjZ*>-O*QN#rAycD&~qj1qb^|DuLtjRZfVAO#fhYykOnW4dfK6U`3(zhFL zh*`pkRpPeel%Q`~o7v|eKnDp1ptHIZ-o)2|O@}Ycl{3+uyRkp6yCY|=Z*rv^!X)i~ zR*qP1HMg01OX+i72P7K)q(#^2uxw?if{$XuG}n^73y-wc&5S&i)F?!?Y(BWffUyeM z>(zg-PW)l(+3{@voB;q=gk*YMmEQZn*Z4L2gM7+#bao=6vv&mwx}-dV%h2S#LSRm7 zvRw^ZMvJDvHl{i)FRnm!l8%c~-LW2<*;{V8NGO^67uJI#6-zlevHKeqHWkSiJgOY& zq1bLU6a9H||HHchBOm)ex6CYztp8)n%*4p}f7>!=YmQYDw;*&rt1b+U(Aw+5>;o|Y zM}Gt2S;@)F3w*Df>V>HHy1C{gj5JDYa-K@OS&*!2AWUo%B9*lG<E}8z#-^;Z?c47C zI2%GS!=ASDOO{s}6B_w5^Wma!h$Yk1GJA2pWM<ygS6<>c^_th)^X<=k6|J+$6Ne`^ zJDVq3LADO>_9wIV=SR={jPLu+8(mMg%<arP0APPz-nRMb>$<(ZNY41gPy4fby}i+x z@d=gx)osppZWi4%j!FH(<)eRm(%{0kM`nHW!%-~$ZqF)En!n<Jw93TTDQen?$;Yh= z_S^#~@Sj{ak1o7g9=u6DyaP_W3kN(K?LF6S!qR>$l>mU94P7p#cUU%Vm8vnpA;e_x z&Vy6O(<`vgz)~-8NTlJ})3sB%afNPPmIiads#7SWvmdX-)^@v(*UM?_7_i&)(D44m z{d}#-%)r5x9)Mqb=*etuh~xnAVKX0$zhfXfA55%UAh+(CFrV{LVOU3xnpN!eEa@B{ zm*JScS>H)0j-6p0Sayzi5&oO&CO)3|dEFp88r5|;d#<u_PJ|>cl)FAS2pxquXceo% za85$@8EDoo8SXE{zV#2p?w)tHtMCuRjt79)um3{q#!n*H1l!BKxGtT~0EqozI+Q?k zlBjwsA&@|Hw5Fvmj%cqh4tNJ}=|Eh-vR`<{ny)+w@)m7>?e9K^V!U<?bvfr4K0v}D zvseV*(jFGw;C@EU#lv<{4OlN$0>7gIA(3f`v+AYu8~c?tvQT<j9!5CJ6e>{P0*SJS zcU<hu{zkmAOmYO;vN1^l0tKQC^L)FAz9*Nsfv=E)TXGwXY;e(ei~CNQYRmvdKyXA( zHwk7uxC`BeDo;qbAKqsw$BEBKBydwv^bI?glvrLb5<wXr{i0G~lAQxTlnYull%^n` z3%NTg?U4hDIJr;&H7u^=IEXyjFH*zkC`gt<jgD1<f(ivF^)62K`(zP9JN3XU!L&8v zW}*!Hff*q!d6h9N2%j?uyA{laIjaV^pdsxJq7_IjPaY;m6%dCaIusLSXEcX8amIlX zt2`FpeQk<Lj7cA;SU(|3nx-CmX!erMYLp~gSiFE4!ohh`o?7oy-*bTY3LSLue5Im; z%Fy8Y0Im8i;>oubl%Gyc%;q4HqbtVX!$7*djMfGUkZbtj{c9A4o-tlFldG7o8ceDU zTSU<YqC~SI=op#1sY!3GLKS+Pu$_o1!XZ;|XH;95A@C}JoIfh=Z(NI}KR?c^bQizc zQ$4}}`EEP{4^KlO0{T@bJ=g+=dVhu$0u=<i`XPhPWg?&k5)}JcqhPTL!w5hx1>@6P z$)Q~LTw6bSoYy>jd*gg~@sRp>TV8KH^RG$u2rB%_ak9p9uQ@gIA9;#S`$GfBcf;w} zN>^Cyv3Ju#v;J|*Rx~A0d>xIy?HNLSfJM+K*v&1#u&>~R7&I!L?B)CIa`DCU`MXas z<4fxp-PYb>CfXF5)*}KHvQA%wcK^2MJ3;+Rmsbp(>mZ{_N3B*o%KJXuOZv8Nv@S>` zvmG{~ufkQ-+uaAJ`FD*5KW4vgtVpG!S@Bl;sCGbC2cf#&PA0PU*1#(<ikt~rps@$1 zdSH~4<LK|ZoUzNouMVNW^NjmJVPdNWD4?=Qf=7n>e7Q;*`OR3u?7qrvO~lVObv-2p zsMp(c5#a(}#dlo=a#}EU>Z`C%<ri;j(>QD<WYz|c3voE(P@m?_`Cibr{M`WqYOUBf zqR5hVl&amAn-IlTU{fYwGhoa_`L0yISk3KzTFc>9scN;g*Lmv}+iv#gl@j2i4_@lK zw0A!ng9ZlY_g<S@1o;EGBP`d1yxq`m%qi<anAQGZF2jc@OxLj5=;IjFm{KU2Ettaw z`eE!wqnZ`&vE;TM3ufIr$LFax!VL-Ekpv=u<?ZL~y)em5rD-+C4}oh%=JYDrSy28a zhjk$0usVWvUFz$Bpoyi5gi<<Kk0jK4Fvu7GO+SE<LW_T&#at>i>*@Dz(42e(U4np& zM87bz6l~$ihsq;g7@O*&^1Dc3csJ!6{gI016d{92Fvl405sH+c-s2T>ZXtp$L50y} zSUTR>dwGs-IcPh13+m5r)(9`&S}nx>rOtUiH08$L&fw^uRa-qN>(ts2IVYGh=K(GV z+2D2gSa|X=7zQYitd=4dOj9VBOgFQen*-Hd%D2fYN7|AKyaj053pF5F<!j*FZ0=<) zSgMa0-lj`wwhN4_*NmOA5HN%t?G_YAf@a97PI#G)^^{AE8(EF;rOgRt1$LO?{w)4P z0@6LoqAx`2G!^|6pS03RJE<C*B^3JV3I=CT4vb)Ew~~*v;`pF!KW7;YHZ@rDVjIk! zWa1yi^EM<AWd-L+XlrN<2lL8F)UQ4fL}FbgJYgEAU2?7Rh}EA7rII@6e48#9`5lfW z`jz$|lN%(?=pdu0QYs8At4l%>22nX<K?`+hRC^r{(e$W<Mb>kV6orOCW|{~eB@?*Z zqT}*Xh-0iwXT9_=-Qq|k4)VH{){~XCMuJ~7s2I;Ty#@XIrHsNdfRAEvj^BX=6B@it z-{hXM-zKz)wL7$EcY!iM^3@#(^w-7YjS^1wWM^x`HGbo_ad8xZ7nHD<4BEm~uR;_% zD}O3n#$c;eHK*xk7xZ6JQC^WS&_|-oH5fHF*93Rcg4TFb5qB8%Wf<1S0uKkH+favw zGmt9CCg73lfy;j{khI+MF`Bl*O|7EoT7x3(yKf;ehcYE0lNfJQ5_H7nheZV@o9v!} zmOd4v|Fb7Dki{~TWK##m?KwIgZt;U9r47F!D^vNIs6G&J4?DcAPwA!+B!#gRpUHXN zEV%ykLR3Pc-EaEfLOIsP9Ii#vYSSuei2MeF1GO#Ss{ezt2<8I(X*}UPFW==ltY;4| znLu)T{-^JHMKKi;Ud2#kP18#K9s!7V%^QEjkel-`G9vJ>X}hA?Y*&gcMv2yDJgW*t zSh1~!!~)#zE=VD)4yArwT9j(`PYZPQN1`h7n0kh1?{cJxtJJIG*B{~qnh}QUEE*M8 zcDhluHDHO^OP6wm4E2_|er+dF4PZ{so|zydTVknf4tQQ|MCOyq#={3G2Ck!pt6Ls0 zPxfNn0@Mko*AEzDju(mzPAv+Zr5|bB8BYjI^jX)J4P2w{6;GCJ07tab94E1#3w-j~ zc6#jJxh^r?80V?F8uc@ajDU;wYi)X12?-^Z?W{do<C_<q<4@w<HMrH<pBr#SW);$L zul5hCaVf&UkdP`qiZmZPIQSZ=^p_U{BaEvdQ0?UxxerV;G+>SkhQ()eUR0DVIX|s_ zSS`=NIg<#Uae(bU8FzOfFI4=w+AHZd<hKTjoTtgOr*EsEBfr)JcA;?<Zxlpx$jH%x zU1`drgIWPb^=}x(Xn@Byzq(``IWf%Ko?^CKyk-llQ&T5Q2bLMoknCjfuJ9&3T-|kZ z?a5I^jy35*^fphlfEF+by+0bh5VK9Mhx-{6ZZo|V`r)B@{c1K4>?k2k*5SV3tCTtp z5n_nu6DhdMV~)$LO}Zlv0mJ<4ZX$eV)@<#Yh2NmOOLUlKR>#{tl<v77-}vG7eD-AL zmh~Z;C3407&B?QH-S%LdAK985$VaE}H~)SXj_8*r#Xwe1qo;LFm2u;5%6opz@DXe~ zoh=+m7+@(GVbt6nl_J(T5n)OHvj$8iSAwAgaEsgW``V1v!v<_{o;ox$BD_>S`RxFA z82;&nJ}J!OhSf`P^rxy)MZ@<jb?&o^?y=KkQO}@6TIZca<G^YabuPY@@baQsnX5DR ztj2ceA%G1;v`*GrW|snqYoS#(q+&+9>KD3y%v{mwukECE!f*?7W;odrEXXynfqB9S zzOOvxzIy_<tl^!q=FKemrxIKXo<cAz^GmH(m+(x#w$c^UW2PZOT$uj-^0&p>D}~3n zl8CC}CekRHp<hjEKea72x(Cs2g=U~!l^^s@3cPb}59FS??07e8B50HEUn#ysGJgEb zky)J8#7KlTuiB<j46vkaA9|DG=PLA9?+5a%f?9fbbRt`xlR=>t{1zocOWD%*M~Zzy z^x=CBDraPm#d^tjRdF^&OID5TFKjfF%^ja#<T+ORhP%hXdK3g`8%{J;3hZN9*g9RS z+-yH{DSkafiFytA<Zh6QN%o;7X-X!wX>eN<8e{@DRa~|8{SjjS?ZJiQp>vvMQ_WbJ z+?f~(QQfwSxm^nPnHu&5>?HOn^FI$b%#8mnm*@YAfB$6sFZ`SB|Av2erE3H5?;n5j ze1deD+cy45!w~-gBOTy5FCgY+>J`rsiYVb7u+R7B`fXZ*gNHdA^;&>Hi0b<4O^j(S zYZZaSp-&z$)Hf+&Kj>Gx!YnfyF#GuIP*kXc3%hXRAGXVe{f*xdNabirkyKj0YpS6Z z>}pV4gn&3u=n#SoCR)YHArOtxC<GEmg=Kz_xXAO7BBDu#P@|wxeG-+^vWC#Jqz3S% z2TIoQr58$;31AG!w(+MoNMh$r29*huGj%8tCK1G21TcbSVv0y>X~TU(WJ@K&C5B9^ z;8QP{Xya2)m{7{6rUzyt-*=$}8b_C?1{zOuwm}&GKKsowp*IErjIi%AXiQ$62K=yK zJ_H>Fr~0$Sfbz3akrEcZ{MBNhLKr*r+u?V#p;8sNm}RydN}UfmOxgu%l$Ip~fk<Jz z;Z}7$tAJ=VC+Zt;$@$RTp@cn9W&DV>w(s&vZ31oNT>@>STu}`6!F7;lS`4TGRc)YL zFg*^6BP`@>O#};V%H(X+aX%h*1E8siEKtzsS^2dC;DB6`!jkiN5+O?HmqLYBLi1_m zL;Z%xDb5C>pd-+*^Ro1;LO4{Sd0-A<=$PIKFu+V-bQq&x8+N}7?m!qzxcwARS49#f zuc*T~3n0+43t~L?@p}b%8UjtyhtuN2C>&AoXVh!;W4zk^K3>2Y(vA${ug^l!u9!zc zGd2{7X5)U@{YBevz}tG5t?9#|gSUBj_=>}Djl2&BW484g(xCPAdRp7*{<W^}?%e6i zwZZE%93T+}Vw>6mNMcO~?+X4QsrGd@u{$vGOc$$b+X%h<N2#_`tN6syTG%EP@A^8H z(jU|xZR752_XU!!70YQx2eQPqcGqUp;p65u_R9-qz^nHg0=trDn)t{y2P&)!x$Diu z{y^x!zz&$P7JEQ^&-<U&?%Vs3w{4tXZqH$+<!-}p6iHsgPy1T4GhzCBRD=_k4`bW< zYSrudWiRFDPW@mTA!BfAlR34Gvb8`h`UAe2ljK!@nm>tQnBZDrE3iz!wjluJ`8tPh zAv5i;mRNg-zw>uKNbg^ztp;V%3yn=dgVYUMx^eXZ7*)L)tk0oY?dJ74Ok4F@uV518 zKxXntuGo%(%KT;S4s7*@niTJ5-8%rb6?UHMq>TxS-Uc*&pCVw?Z@m@=0fb;&^qqJ* zUAh$(5YM4jK0<ei^p{Z#M86adAvEXI-$n`qqjw76$bdaOmurXBOca0*eIwsc1_;-I z78wm`t{Fyu&+w31`4_{sY}t$mnZFG{;KvKhYbD(%51Cc}UzP#bxZ%_DzjFTJvC}b> z+R&)?uMT+T+?lxm$QD3Y4aA+5?*F?FKDt-epx<Q$MCpu0clvzKR@wj8Teeeqa*IKc zZ2E5&8`uMk^tW&9nM_#$gpwc_=KMz|O^kMbH3sP9fVzD{;`^V5gwMwgZk_!<Z%q(< z1i~97`?uV>YdSqv|Evfgw1;xa(%z(>bR*<448Qc%jYkstU-#s4uXZV@QvWbkFrhOw z?*l9eh~E?faq&r$i5mb9|3~d2&{9wj_Wum3Bf<NRLSodQxgD~Z9{<u>BU87+l1S_C z+}D?hF2pK%^J_nVU;(DbP;o?x$K2iKpGA$4j)rQX(@4y&1=7`LvqaHuNmiNlT;H$# z`%6}?{IK=JUGw)hyMX0k3yxdqx2Nw3fx*+~Z^6gT=TKZqElWJCk`_Vu;^{3skJ1A` zM<5P>Bp<Q$NuJ^Q^7lZE)ipe~(!}3qDqC-Y@X2?72@`9)m25mYALP;iKGmV+*4M6G zno07hRLCq%{?eYfjavDPo5`tEYSoe2I<&U9F|OBev1}8W%c>KPyXX6t?gXePrVXVQ zs0M}VVbQY+kz<_$N7)ve;-qBh_u^9uL={p~MlsP+=V4<Mfam2b^Ghc7+5yHm*o^3` zaaOC}LMfLx4PKQ7@4iDJrfAfeP!1g+J6a84^VfM%E*>bo;hf_OO65v4E%~Qy4fjPD zvw7k$J1$INJ2QREPd3e0zV2N7Mt5ddHiO)re8`1!L@#N>JkNo1bmKnp9@dA8<$LSF zJ347=5V<?XIg0As+lF)e{7%wE5%531daVE5>+3&AIQ#$6vn%_*7eJc;6hOo0Qy>Ng zs~5X-2|yEHPqF6vSJ+I6ny^YdwF@u*k3Y_d-tJdUS8_DRGXNkw+sIwnjm(sVvqacV zXLwa(w-Vl@+c*7_+4uFM=l+=Y^YLw_XXE(g_;s7t=ku`Tl=p?>6O!!k9sF>S?d!!w z!Qpeg=t!6BKLyZWb^pM_<fJ4eE3~Pb?+V^A$o(f2M&;k3FrQQ2XIGY>P6?hcI7M$x zSX&-g5<S}b?XWCu&apPR>$>qwdd|--_;27&<eqvToTFAKYvOGJ^M-A*`<^54C)Ca0 zOX`(up64BP6=rq0$GJ;>DFPkX8?Pw0KYiJ}1-x4I3MF+2P8K>nzqt4AL&c#Y`4qzh z*}rTRL{{=Tk4+mC!kp0*m{~;`Z59<UOck?|kr;`QI+rY-Ue^Cz0nHvz0WAtp0nGqV z0nPSrB+O`3>B&ElFm8-F$id7C<{19CPhwz*0&#Kwj)cju#VLTJ0xk_+@b7ZY(`f9h z&$rlB&<iae@;ujX^0URM#APsU7P%nUe(GiA+|n@OHW4{C8O3#st!Oeb9mT!#K7&~$ zx`J5+0$jVny-RV~+nQ3@>!J3etzXBe&w?VKjX^CEgu--9GOSbbAVTf;tm=aeBK2m8 zjc{R)!~sdOZYYmY(2Nwnoof9-F1+og!DDx1`iVHR_<iWPt->hK10g~Z#PP=hz~c8s zXq==VJj)0O12$>y#xZB87=#7^i2oZtwS^pC`%W|h)Jf%Y2xR|{2Au){F|G-SgKU7a z_Rxl*N;x|7L0^srFdg6Y&hH%}C~=|oeQ~*7Nz1skI8z~qz9K#EZm=fr+8A5>4bkX3 z!GqsW%>iDaS)jy9^(WB-C`mkCVS6ZyJmd+ztWfE2_kBF0HbvY$#7*;l`7qMeMmLbG z`=HR7AjL{TLxJ8=kgY1cKx$67wt;a7S-?Q_P|V+be-<_Z&-i%=1dQdi1nMR+a!^J? zW2Pu5U}{pM$@v0D(6osMYWP7Uvp|@3rqW_UDNb7&0!xF!tFNffv+B4J0b5yk+gC{1 z5fuTdtxaQHBX&l_)yXkvWH*Il4#zO+{)BJKsYf}{h%Z;a>MJk<`_2M`z(A6yiSF7F zB<DYZv~gr+BNU~KI0$pHqdEwq5gJA|z=1Eh{NbIu*0E;Wq7W+94*d+dE2{C#pK4NE z&{C@vwAy%0KzO%;ls|JukkBCqhhA;grxAup(#yVpP@=akefxC3r1D(WHTT^r_xGM9 zLzC}z$!9gJE|qgo;YZfy8vC8f{MPr(HxH?*2@S7o(-5Cin#CtrUtZP@-cPV4>W^D% z%Q#!>(Dy6jKSxBPF!6Av>#v7oK@R3+#b~7)5U`0s45$Y;cgCL&XupTo*|vMU*u34^ zP6}&4i0F{gFq!>%K>F&&jd`uN^GGMcM$-IvZ!NZWeZ3q74emEJDR4NfC$Mg}(j7)T zJO4aZ$GVNkYPC`M7J4P-27X{)t4zz4_dEX}cF<R}PG_zsY^%nmQ9@ymAg=X3LGfpn zgGGVrGxAo^HtV+KDR{^d8#?hr9OekfDNmJ*{)WstN-o-(BtuwW2t$Ub(xF5}TXV&2 zwHqKIs=446Ms6ryP!0w#xzrtLZ7N?%l0=J&n#=!ypTmwy*>tQTwg~5=0pG;FeVFE= z#E;)Z;PNf=qhiH%Ggs83oAM!t`mHI+1xsY6xaU_!iBKODh{z+t{AixawfJ(_#Pbmk z=c%7o6fZ?$ypTwV{X-dck1tS<omvm9tTW->x1_(|lU`kgEf4gp7@=n#njgP2*KvS< zTmpuO1iSx7>}{$9wXTmqco(zkYD}HbXK4ahRO2ubM<!17Sv2!a$l-$V?^A7e!`C~c zh>K$7v+;-Ei)N(|At{CF2!?&O0H5r7@Qc_a7Bm0Ep+V1LD}eQXwINjm%J9UPB=>0r zXr73KUXA?l2c)V*r{|KPr}=}Q;YwXE?cv=RHpfnR1T`49Lb}okTNlQ{i~s~nFrJ4Y z-Bf*dJcI+@Ev7JB>okgeF}xjuAt)-#aWF#msOl3Cc$-wgMM~8~+XZ-~0I#3?CB7Mw z-5i`+iPkzCOy}|U<<!}1RYeV}(|{bJn7~HW7GO~>_<nf96gi4)Cbyw4E4ErR7472B z@m?w|RdzZyh{J}B?ry@L@TC<glKprIlj_vG@+H$1*2?#*A-nihi%ewd;?0#v+dUyr zv1)h}p)sn4ru#BwwUp0RR6r7!#m?i!#de3S)NqZ-MtI7Hfd@@pYAcr~O`Q<^P)7<3 zFrt)4Tbp*%W7sWe*^pQCqWWdM>fthcH}MFLXO87_X_9Nqcm(k)^}>nMk|r$nYjH{- zM!L-jFgML7%Vma9)Vg)Gt|qoyGe`Nv@Fi@~(XCZ0_xh7<D0LiYYNjw5hY=r_5jdQs z#%GmCMAj-u$xEQAXpyK>*mInkj(uADhJM_-B{EPPdfZ2vI2n*mPGXOPcGldiJ_wwz zw01vXb>Ws#=&{l`e3*h(CVxXTDHZ}{!C(VGL$0vnX>W6vJCmK$+f@y?&Xw#Zx##@` z5!W=qOmA_>qO71BO?$A-p*%V*3tq2i!HCMeoIN?1+rygd;MyL!?6*Jc`ORQUYFDMM z?wu&9bC@SxRhIZw97l0NE7WE%a(mb!7G~D1EWz3^-3?yNYa}J`+rjlA_|kfPEne3b zoY%Z@M^M7wUKBZwgv&P>236F{V;20F)Xnu)467mMPt<=GHmHf=%fhm}IwG=CEbk<% zjnhTqZ2nT-?yB^Ohr=>$F$}5F>qK<i&y3Opt^so)iewed(l{lvGmxhGF7xyUwQVn` zBy~xlge@khHBNFYQU3GDOzpJE=)F|#U>aoT`!QW?Rm8kdb)fP#1RF~MYrn0)a4nrU z#_HI+ec;Xl!e`!U-)(HzPv>*bIh0-znkK6dQ1MN)UUZT_x9ZVdvA^+r^0FOQNw=eO zZ0&O{?84S$Ox{Kk*;321%c5<{_m?_iS}9NK&u3(M6RE-^x{o^VFa{JUv#hlU{eK4- zRn;EVoA$EbVS*`HmZ^tcf%XN_<TiV2Hn#wuPa1?uK}%V#`J3pb0x#phz%;as=vjs^ z(Z}1}d0(bi<&I0%{&E}xB}?_Q6dI?`a!9-R`UWe53Q7qaQ(nDibY8}2e0K^nQ$5lu zROofq$s!O4tI;2>)g!y&X?dPdPjixAKd1h5islXQT5nSRISAuHhn>Cq<8F>rEDn)L zl3(i&)00(`>L49<%8c5en=Ed%1hjp)(*6jSq@m&`JgZ5VWnbbh&_tDGBnri{W|UpR zeN&a)kJcQCA43p8a1dGjyO+gPql#jtS&Iqncduh>nYyOz)5@BhFsR>N!V}|`MM}Xr zp@W(N4I}2!L+grIexL1d4Ob@nZ?nJou-e$W8(&2NnYkwn#}r7$$Ct0n?dN&Rh1|9p zFUx1_70{S>EPdT0Ouj744&{}TSH9bS3(N%^JVA411h#X!V;H#7Uj8(O&2k4bqVLY8 z>nKvoC%m|l-y^I#%N1l=1UeW|UGyZ|z|%CSMucj}#$P~3C^#%tsfABCuaRpj$E<$P znw~eyhFIa;NCu-m>W!-W%zQ)@O@QZ~ERaKNC*ei~jVX9wgf=JWHes%EYC9AfOW@K& zdOLNs+`9B+c|Rd_QDT{cS-1YgzRXxUB|=Rrz<BHL?Cte+d3Qf_&^EGzdW*__Ekt_P zyJxVh`^`Kne-vX;(j-nHEqPcT<yQQX({~r3x6^QZkX>buyjIy{M!?$lQbL2_<4tyR z&h^!5)cd<+74qTHFA<?(x}ao&<N|BCwTCab!T8<f+^e;$ZG6LeTrG50pMS_j-x`4p zdqwdbFTmn<?tkv_S=jztk>mf}vh`m{Uf3A^uQ`XM|CUt?x&Bwq;im3#;{PS-@YWga z6x?9&D(Xa($ol4WA!S)bg=A6&bc}*4gOezGD>ByFi9@+rB31gViD>X|)DflM2^CRa zyJ{7X*3Ml+RO8Z4_-O>_oB&je0bDHQ#31}P^_Z~451Lis5X9s?gP~M>10wyp$ZP_w za>;ywHf9WrBuQ5a7ILKF49+Bqb|IkgB&|INW3i%)yr{ZgA^b@3k~n;XF6=u(1!oRM z<cdg|`BIyQTKSWGhjV$8cEHZ$hU9Hv<O3%ggh_3!8%Rm%T9A8qCaQ!{MAg;A0gP<7 zxJhjt3OB;N$mMd?vnV!lA<q(*KPp#~aqZf|enr%@b6}^crUQ*CCR3cAS|pP*$}?^d zR%>b#sWg)F^p8nLNxfJYu)d2*V-t)^!$3IHrx8062<iviSu~GEMq2icF=nGc2XZ7) zy^G=$C?9YpWlGtg$=^1p%?%zngAmePog<7hD&s&08L2zH*y8Yqa)pxP4XgHp^Blz8 z`hWc%0KdZ?wU=^WoQ_n(kD@qMn@2GO!6t}B!XbN!C7K?{=!GXIdx1~om?p%_&#F7i z_s0X!ogTn^jm_=Wj|;XLkq-=M)$-xT;@#j)K$s<mrd0Z(>Y(sb|FmgE8qD7?4r&dy z=$$jfu9lY?j#g2eQl-;rJ$%}p0dIN#b7SWv6ljd!vZvY7$(6%{D{}?M{o3I=5lv;| z{`@#I@))tr%l&?t(h>?E`?I7jl_Ip%mJz2dKUbS(%(Sw~)7AUKTP@db=%Q{RR}YF! z-|p(3hUf_<vK3r+Ij$fD^bYbl0X7n;cAUp>3g)k!qY?O*<1n^&;%I(KUB9(jj$iVb zaZ|27RExgx_mo6i%a^sIC={CkGjJ>FxD~GyJ0?9q7Z(ups;hehY#Lz1CeS=+0QyCw z&?JyzD{N*Mz8n2ZjOdOZz}E7&@#lpwmb%HRR~r3$?>*6|ouNM7O&I$Cvdups6BDyF zvYYzp0ON-cNWPkPT%}1bpof$YBKUyh@*gU|{Tv-0u{1^s1;F+aj?ZCQY(lp>_?JB( zumLQpJ$4j)nm%~FHXI^g;WrcG5t9_a=0g~egzc4ttaSX>SS18P5g&)kwYdOn(+4qj zbOoUx@BoQ%u*wJ+#f>18Yl;C~tWyLE{4bFz#!4a^_5K+)rsUlv1|64IZHL7QFdL2W zX#Yb65J`vJt3wP>GW@SZhSLVOuY@${{}3r$cLRvj{}G``1h;1S`0ZaJ^l|p+>bA0I z!L~vUXl`FYB+$E(aC4V|Z-ht-#VHkBD<Gr)Tf;wGl5Ve5<N;ZK7Xb+Ygnz}gj1p$z zU-KdX<x@rVcisV7g;%}U#RJj~|D6b@X+l@J;70ww=B986#Bi_Hf5ZduRtwODR^~7T zXh%vYCUvndtU<p+3Nuu=i9kGj@-Mjo5h*9%0YM0kvN}r5QyCEWH10|~)6~K>rJQ9! z)wG38GBlU0x(a1mYf}<sO177%+C>UoP3zng$?a9j++4gZ-DmmJ?N9Q*wlo$8))$vl zxsyu&KI7|pREBq5Tob*uw^W8FIj*Yl5c6yXbX2zkI)q06?b5Pp@1&v@l}EX_tv}_V zVx54Fp_9KISykQ}aheq#r6>|#xI_JiM=v+zuwKpF_bFJd-hdR3{-(`|H8rVhCHtYS zp(7oKQ|Fn7PdAshIup?~n=`z-+W21q?ZuitoLjh}1PZZE=VDPu@kY1|>~(3&aqffI znovtDW7wLEBPkihDbh_=<;L@KRvH>oGG$9Eqgi;2BO*r-qYpso4ZTMYE7(ApTl&q^ z#*S82F;y8<MHz+FN7PF5ITjv`8Ba=%G8N|LEHu`?il-VI(^FXI=S-%xn7n^W;Wd7} z>TQOoZ*_j1*LDhQaB^|^^s!E1D%XwN9lkt1?Bai^?;qTa?CzHUtkK(7#Iy!26D5=c z?F6URRjS?FPmXr}U@M1<r!N?2Coa>k33lCJ@wl2?EhVyF?>Eda_d!4cUN}?FEiPtQ z?@Z6}51S4bSlO<cH(w#9>8}SP=l>sL?-*rC)2t1*ZQHhO+r~`Wwr$()p0@32+n#n$ z+qS-a-{-t*o%Nmb<N2{`6|%CTVrNEWUKw%4hu<12XN?Kz!)twm=+l%u?H`*hc;jv! zmp|(S*%~lyTU?3vEI;t0E+*q_LH_APIqA1&bF01<TkFd0eP5s`20_;U`@6`={6AKF z{vT%y3)6qLs`E>CvKFrmd23elfnu`o)ekHXNVWkEYm6ikfPIa((DMesjcOk}J0o=c zk>_~tuj<3v%CuByI8$r*K{t82NLFS~==A#jG`L^&JfbK~R@aj&@WDn+m+-<#vlrCQ z3Yajjl%EbBpYG?EsM+uMeD8IQauO1lR{TpEWAYDa3~P^%A0U4lfHbBQKpM0EPyV*d z1wj6`ub0#GpM>8d+b@b-)MY#4a<4aS_JlGD{=oD8{3+-(Shg{2IIse3KmR3-$!VAV z7b#2le@L0ie<Nj2gOkO8H4Y1^Ha<4G9=^OX+5EDld`&)nMRHFL-PQM2#RIU`tQPp> zO9=RMdgDvVxoYrr<&M9lhlhuby-z;D5Doms@J93(Emt$@;zNFUemaW5XzPc`iQfYR zW!D6RhJ*}jCrO%2JnWYO{)q1%d&Hrkh16?>IbZKe|6*nC$phR;3?&vettNE;g_WiJ zH&%A%VgD;xI!hWHxa*MvXT6;Xy0uoNk1^=xhipzvdAWVCD+Sg?Om0zv1PwiDJ0!t) zfCv-{TDQY`IZ~?HV$)vvUMhrI(-PCWO-5zMVRCF$mOhG2d*!QdtIaZ;Aa1KpoOBaJ zgXwFBxy|6Mw)4uJ-1%mJji=pfWui@hjkcdBn@}qrrw|7m;P(+^0B=(KoK+@qS>`6y z_5E)4Tt)y$1H7#RgRUQ99v&SBlJ|$VDkzwLKe2^FyUs9B+5*2h>V;_!cpyweqDu&} zIw{=JTgMlLc?c*ubQx3>dQfiOlR%QMNk{T}|AS7af)2w=r_G&O;_zgS-3?yDP+fqo z-!r3)g$qmv>@;@);}+_nJ3;|+2r4?G0Qm^d7_tca0kt@Cd^jOr>^LR|kuWYmbDM{< zzk1|U7GrP3dZ9@KH|KDdUQ2~UJ2|I?05<j}VHvn+sw0Z!wM5=8h*ZXn8Z`&DD5;s4 zXMt5D5WhX#0*G)$*eJL>98xE^_Fe$k=>tevAsF%s6*$Vc8(~1a2DnO|)p^2WNRFI- zQyOSjMh5h@Is#e%>^286We{b5j8Z6JUEG35&I3^xFxLX2bOKVr&fK-cGjU#!foHHR zhHI1HiG}R%+$G_|V>eNqn-OAM6PJDA_@Ib}o=00#<00b<k_3-VixN93^o5du0Jq%5 zF$IH{zvt%YSTUt-w-(o&c0go=5r?z^auJrG(6P9O(k;hAsa^uM<I<9XBd}b$sbeB3 zK~OG%IvmvQ1bD+2|4{$#EcKd@zTZ9E3n|up7G@lm+1my=r*bUtnJhw%<W4kqQ*Dyk z33Wi?r=#Qu>f3~$!Vh6-t=fHjX4hbhf0Ldz=n<X%Ij#EnbvR$U{!&$ucdP6_Yjc@# zuY*kwlKrNWXO+7A!JfsvEE}zs%lXlw=;r_N7|zb`SNnR~q>$iz6$`dU^&BP{&vHhs zbpcbBv~s{(*5k2furD<2|N5s_I3)(+wPSGg3AdYMdp~gy<#>nBaKi`Z226}DZ|zwx zloIC;FRM4ookwQQUR`S6L~P;Uy}+i^K8Ia9A-8Ar@5yae#B{uV?@Hvj-54c@zTot~ z2XKTy^}C`K_#bdThoGfoJHK#a5@uhsNOda<?!AtRI-MMXpeIHJMNWqntSf4%fHH@< zN8KoP>A!RaB-OS3vQs6=ornc7T}78Merstc_gtr;vxOXLzFv2U)Bj;g$yyeyo2J<1 zygf>~9njM>1Q7{N7H%7$(|`#boHftX@U$@d+0*uRf>aPA3KkTeSFoGLu$&r8ZOSkk zha7;8+yH@Ws7RbGz`VBiHy~ZuMW&_FoUU_!mp{l|sM=ahvqb+_F92^Y!HlR{%)@$_ zpqVMU6HET{+WjL6Zx_SSO-@p&_otsnkXthdG#bdWLS<MYID2Obu7px8)G;WD3Z&{S zi+R0{iI+4famT>2zHHN8XPKGDf#KdC>i#f1(>JeoxGC~gt=dA6s6o9=h}EMVA!3D| z@lnLLae`1;D0qK~Pe<5<@g3(XCmT(DhMjTQTn#0+xlKdMggO#>w{)$UC@%hR+%#{i zVl6Y$(%(7`4DGcA2gw-?Q`_xBF+p2b$JnDm^o~DC^fk0&J2ID5FLT&`TeNKT?5rbH z{Stjupy$E^hHmLllf_b>%v-P5!BUI5TtLRi7uBVIdb1lzh>uru7W(^xpLN{OgSYu= zHx&UNudX%C6rqxLRuAtqQgE}{PqF3+gZmFnB!+GDk3fow+AWtLcd^63T1Cm+74Fg7 zD%D6UVDfqq;tgdiWq%FVCj;2uOV@>T_Z8h3Wp_&W51gF?r6gcro0G*#e?M|-d8}g1 z%Xqc*M$i6e`Xb*>?Eeh^Bfp#X%^L_Rvmc`JrLtQGIorFTimU9W?DLc!BOg7x8PkUK zSnab8Ve3VY&7s>sUd6>=64QJFQka#;BVm7s+^jrjHU~o=#)!@=c{b5|&wUtO7OgGh z#}VC5Hw{Ji!+|{)g&<zMTCQ->hB@?=${m_aFC~JekkUEzbZV9UdA_5V!w80(pBfw~ zx`3zo4*PNDdhnv@e1D)`hcbja3C@hA=fqu0dlRJq)=fp1uJ?0`O2gYqR7?Mt!<0eP zXfJz;LK^QL{97`CCUAP{h)z4=+C<!L#LEN5A3O(vM(GPV(^`cS95dDa4cu!b{M?=Z z_ke;`3liQ*_lPOeHy{%4DAI%j3=qQ?)*tCNQwh~jJs5cko4h_`JU>zN-*kN>&Z)?% z=!cPgG%#fpCl^(dT)hnPGQe4La{ib|^hi=}!xNm46vUf3vih1c7Plx#I)cSJ`8491 zwl<i=O!2j5xgdr7DCI>85`RbVz0^gLpheuYY(|q58neX66_rkx?LIu+WyOJj9qzar zb7RE`;tg9#JCcTiK(!!x^H>}Tw8p2$<cT89H~`6{9<OcGZ)yThPpXY6-S6>m=P<&z z6J%0$v?eX4?$}bbQE@uU0Y}6KHkr~=S77JVIl~K{owPquJA#lC&<r{0EEyWcg;2+{ z+w&@gsA5>M)#%_mYXq&VfQiPj?5eJGs$}!3<wf5-g|qdHgV!rdqzja+g4v93MO&Q# zn)s9uTmm-!V!s)4RKCipD9&~jRJ!<^x1bZ;U3pyHiZLL+I<e@2FPp$aL`1fM+Fc>* zz#SE>uBS-=rK&?szRq6LCwo~89v`iy(VrX8=87@`;-Gl|`BG7cqnabki`~|GqWC+D z@gaHs&&Z)`-2=Y@ITBNJrv|PKkoy4^hzGmi$}R`6D)4PzNSv3}e&<Hxn!*D6+mwnc zIFT9EQ6eBu8?O$S8(MggBK6hkST_IpGQTLf3#F)|rn!i03@pzS_9hI!&h*|_$uBOF z2g3?~EWcGYlll%#!^KFi;Mhnmdo2I<j&~37U#rS^{S-U?c%fUJ%=y;}95z_kl}9=X zmVb14&X}8m=z7e)D9pX<>N^NZdG$a+lvs{B2}ly>y^xc6=!bc}%wx1k?hWYEvAX-W z{6{wnzU<n`w=eyUEn{Ty*hJuZyVWMs`;5VzC7E&ITlDWbf}>m1&(AMG=uPGpA6Pam z@%J$@bUQWQEauJKz*ae=PD|q50-i!N9;dZkF{zlYBP-~yYbVhLm~}c`(V_*XXpB5H zWEz|xC)n(#i6qolZuQmND5zNY^;X``--5*?&Y9)rTG4(oijArw8_kq?+e*iL7e;j| zj7gg`M~KADsp#onCdp3gmn+w}e4qy&6|X^u1j>;q;(>MF6BMIMNH)~^tirZ95kKlQ zoxk>=GFcQd3%KVdCyZH;gh3Cc{jF?3xkyWDgVL2Ld>k=aN_XL{nK_WlF82i~{d1ih zGY=NCtS0J6fD|}bQ2%RO^QaccxZ?SknBqwQLcVR|R6{FTcs)XU`5Zbz(?rcnu_2E_ zyKXTZ$H8XBK<z~#&A5r-UJI*a#Dj4p4$*Y9c@=ZU*wv-Yvs%05{6fxdo~~30C3=4Y z8BWCzOt%nuRrz<$a?n@y{P4<=CK(fO?B0bj5fjMsFQJPuvt+^?c~-2pC#;XWhrF>v zi!7DGm{MXP##5TFpVi;iFv#^y=WU(ta`+_Lbg}F(YFUqc6IL-fm;_8o8Ilmk%^hHI zAYCF&A;qV%OF}cut5An&EzSMu#KW#Yfn5#}{#&N8&szvo=Z@;#+;%;1FDAu%(eIZM z<lLv0%y<gWP2W<nXxP)9C%67#RxC6Bdrrf_`9C7t|0ArAo9jP{djFOA|HJxZL7I>@ zY#5-iyzM6m@VucYOh#iycR${{muVh3hEj#1`ODdRJ_Xd1Iy=>9=CRFX9!9#tI5Ku= z*DZ{Qn#W7D=FE~+C8E!B=8_6g<~3BQ3v5f({Z*5U@u4W7-XMn2V&V~!sB!Z7*i=~r zAfbfknw+GEJqBjU6K~l?Io0=d10Ad=xPqMAY_L<BIEmG$%-3*mQ*MRE5GLyB&}J#j zP^pBtF;Qu9s50d&m<kW9iUy0xIZ=HBog6P{Q=&PUQBr{80RC<aBbx<!Ns$KydX16G zq8(_cx&cna$#^4GDOO40UBB3p4d&znEux6hcjb$KOrzQ@JaU-o(FHLl+5>h%VHg~K zBZ1K(;tSU|VAfN!zv%D!TZwW0@=DGf6kH8})u=_ryy;pBf!$<8cRupevg!xd)q)0` z>T8P$91&;b_V{2uq6>#QggER|-6-gea|S@y>9{GR6s>)Mczf=aN^$K!nIyP9zs#v9 ze^5IRQQn2&r5HZIb5jKe{w#>ecK|+&0VaYx40;E=K>dwJHLD_Bf8Z3Tkd|oXHR_5b z1)bKNQYoA%R{}Js5Wxic^SEfektK2+#As0W9bX#b?HxjW!rEp8xoF@jtsX^Qe9WO- zpgHn+rUAn)!f%68PZbaK{$EkBD?v03Ub{c~>Jkex5b4aR_797ue$;n#S3@ykA+Ov= zW14k*zu%A32@3M()>*7Mbw}Ax-`)AVdUR$$KD=Dd)45Y*9&WAf)SaXL_VapMq_bBf ztbNJXu{ruP^M``qLu>wcc?~c^B<KaSnJLA-q&9@XwtleM!2vM3KGC66cnSx63`zq5 zt#GdTe@-trVv)ce!N|HzW%jvh2>?wF*VZ}2uH3^?{=-Ic2qdRr%&`2I+&c_fFMJ-1 zj`I8#`VSv!J3<v|{Tf~P$3NArP#6&F&Ng@fYEZ`_S>A&RvJcfaJ`Vug0l=G<qTnOq zaOD8JA0$B~XY_mbfMi;LU}iBS&si0_m3`Uzeya7L_zVPI6k!ND@=59i2te%sq>!5D zJaNH>3Bct-ifrO>#5%BIHv^D24nVBpybUpfZ*ofc?=>+4WM&l00am~hE~Ee~D=-{H zqu6=y?GUtMD+rQEC7o#rGq(R!1AxI)n+>N0y$4wT6=q1uR=oCK)c}Nf^^nN785*$) z1_+HGNdy90^CybF{~uBQk*nG)dTS8^*8$&+EC>#Zd&8rO7?up`-;$tV&-8{(|ElsI z(L^CO>wDG=KvoSU0Yom~jnG}&02QH!>Hh(!g~$fiUUM|(U%ephAaQ$mbN^Ek6?tgY zWQzfS7~%t9MLrJy?tTKm3;d%5f^5MySy+gF6p56dGu;IMB3%JU-|gDRt3Cj?`$wl9 z*YxRIt=#{mv^5W-gFNkl6>U`D5{Su`n!WS_%_UGxqZJEfC5=<te8yVf$5wA`B^B+B z7QJy>|Jx3OKO0}24*iX7Md4A3*U<#MRXvPeRCLw8DJ@>KUR3B$y(fhROYeZI`hct3 ztu65^ruO29sUzE%{0Bz=lvVnt2;Uz-k-rD)lJZ4>nw-=DWl3BBo7Qqbk#cFLZ{(JO z!>bRMLkQ!=;76xX^r1(=G~O5>8H4uj9{p{-8N%({T10?rnET}C>BggSrF7kNyr4(r zBW233sk_P7FTOLmPlfxl+=A`Mv)rQ13Wa^O^ks9lsw&OpZZlk~ew@){uQE&bAS+=d zdZ<cp;TEED46)^)avh}Q*T_n6<rbm}46@~*k~m=%`Y{^HDl2V$UUA>jatt(AIH{J{ zC1#>!kOeMzU;hMdTI=RdZ~eN|i^J)6L4`@$p|r)tM_8+UYcY|`x5?M@!@)>@ZR3@@ zjnjW%y4f89uBQWli&kuRX4FvQio{_<`p|6v*y!Q%;RiONl(>)gknJpyRgsLJ|Leo* z_ZRL|cb`zo<7&j)=b1-;B2f6G=r0eMeu<E|+u>l`H6us-pMiUG$6RpOPWp-#ZyX-~ z{N<J5*v(vjz5eNi_|lIhE`g#n2dT4>pmDKuaj{><Sn(xZpkXxlgb%jAJOa=2<V(C> z+DYp+bC&_F6mT$Rkf3=rYXu<nkw5T~nyr?cxbx9i+@rBM8;h=T>9QIC(CkD`lPFNy zuBoF&0UkJH#_SyFpeg@fZPH=aa<De*zuMbw`|85K`~UQ|G9|rV8|tWl1`6mjpd;#? z`s~E8|FqVGsekr?As=b~J!(#adNyarpQ-l;niK#P{NJBjP7db(6&1_O%<`W>h_M=z zcKDod00_}y@vz)SicB5t2b%>b*hx{1yD-M3?cb7sU^e}SXK$C!_M$yzn8Ehq#4tWG z#CWO0QYFux`A<e;@le@ol^$Gi%bF*%+C!HvUsb!`AF6h}Utfp&WvYg6wI8=%M~lao z_CE2y*CQuZEpH5O&(C8kKDr%Wt@kzl020)KL)zWLhIaMGMtB=m91RYX@z+`5jG)02 z&_Z`{Vkcpi(dX*IlTBia2Dz+14Hmx_K7NwRy&IBwJN3Lx^Qr;S=E@T_1&6SJPSURF zfqEGolCxn?TJj2bUl5sIP}iq4<UF;wjsD8Qe%BJ<W67#~VC|ayy=&~*)B`Tq*>*CB zRkD9)@`>>A;at2f#0G&_@zK?=a%97?gKp-~^A2TePO)E(WNl9h^DHB<Bp(vJ*P&b{ ztg}YzVNLJi)O`lD>dDo6V?_}%1C{rvk)x{V5mr`SG9&{0FgB{B<v^)bzb^hKIC3%% ziM%>lh_(dGO|d|u+4(rgDwG$VLXCEte^3Yb8d^hw&$d>2D&e`TkHK?O(**n8<d{4W z+j*qLjD?&<RKS)x5!+G51SAI~^JZW-YfSAKU6tmY7?JYYzw72pDRF0eUbkE!$rZf6 zuyGzeCTuQfcCC@YI0lFpbV6=R=lMtdd`&i(D|K;aePC<xG`vJzLH<-3%X2LOf>+Qi zUnTrWZ}R#DUb&}e9oGZjnMJ}g1gYv{q~{NyKGyq%7;vC@&>$X>?=4`+r*0?QB|ab! z@2&AL1Q+V|@Qp&qED(y4qGdGwwcQF$TYXWRT`WF!HcV;4MFKmnuzVpH3V}`blBuAP zB^+eDb!3tv5jV9U@aZ!2bW$TLHdJN@@qWbo!R07X+j;|TnoLjQ5bocWHW6YXiRw7| z0n5mQn=Z(Do~7j>84E~3bh!=Ea2j~lNXZb9SS(i{BrkB?i3_waC|4L#4&f37<uHkT z5}0aGr&fy@%Rp?D2jIFvV6&C^snk$jY*#VVGBAVXoD&9C9`V`OxON3#Cg(ObY6o-3 z+E5A5+ReLeM^FMn;V=`nt`7oXK?=_Mo&%=+W)bX)g?Z`xmEp>L<|hP!IPrdEZRzxq z8i@psDd2L}%s8mK65{e(Da>2}=JPxez*~CxiW^>5pI$9q5oESG946jTogJI;G>9j- zjaUUaT4Cj`Q;|?|6G&xFg$scxMj*Px6LfZ?^b6Q>9bmn^Kb>9IS8~yJ&kTp#jCAr9 z0m*{<0l9z%8hZ1a*6+twrJNxc4kt5Kl4@R5OcBnLSX&g}fAg`P_kPD@?t0Ah<mWt3 zo^;nW-6O7Uv<ViHmTK+7Fs>5z-Mt%TR~PB_<KSELLM(Up(%b(I$LQ_!a{n}YzkTx` zdy_@5p}C>jMrsHUM0`S5Sq&}t^@7N^vAkWnE4P!;>$$r#gGJCUu!d5Lw$0EAx1-35 z^>_AnU1?AFah317jWfS5)4j)oW83I0+sZeP&@aFH|I23m?=+3fOswqx(KNtUL*5=> zv%0VA=6;Q;zY-^@C?6;lz#|oexAtOlH)jt?13_APo$Oqna9^RuRwF)b=&LMQaFK~0 z)+%{+Ab+W{7u}iqdHB439zHEjKYcQunJ(@9t=a6R^|{?e>0t@gnO9cNcIxP0Y!gIr z9L(?a@V&Qse}!lueDcs+DZxS9U(jheDm-l8>7{+n|E6~T`StPfHK?57Pvzg!^L}Ib z{*G-Scc>}$+3r|{M^jl6RC9F?S!1{lG7cmAh_!7@z+TzuW`0(~q>d72!9w;MPxnq2 zv}Eib^Jep2aqfrX>yNPL=as~7+jEso4=``96bYXHnm7B14uTWul;b%Qx>2_)?_Oae zfO#9zD)pV-@~osVzMky*2A5aAAi0{nMtiBc#CWT>*a~A68$BF<w?4U_mS_>SfWudL zbvLe|U-R_~eozj>D7NmR!mbT6YUJ=TtU?nV6mRFs!^MVQ7*H<Mwbw5jsY0;Gl{64n zb0=1lIL@>W%?~p&zgVKBZcu{sx?x5`CV@ik&Z3eu|Jz6@27Qh;2SXjWg<6h&*{r8r z<6zzwVl~`lu0^}c-#-yyK9xEI=jjh~F|prEGMQ1vQzvFNg}pjqLISXEtzsq;IT3OJ zsEN>wAhlwp-E|o%>x!;iuHU2T&t-#upM<xAltB!g!sE=-#lPV>F;B2d?QABBWlz;N zr|CK|v2IAU#GTiqNUzF^nBmVX{umcznFYGDdD;J+V>PD9gnGKoXeF-E=Yypiz#m7O zs+I2cet_!VJX0t45yRSScay|sh8>xM5Wt<|i0-4QC{JEtLT5th=2-1#VFE1+9a8Qq z$0M6z=H@wVzc|RC!XRPZZ^6Ohq&X@VA8~}FAVknJ+ZQJ;f}S(o&fuswDYusDsDjKc z{wpc2xvLOl9-{h^Y3$Jgd<T?La?Y2mk+13wL<9wyfdF*xQ-d;U0iRN640pLOz}N#+ zT56ks3MGkNU|48rz>hE_fMyFBqHDV%=ACbh{DWg1NFOw;PTPhhn3zL?h9xX+KEbFV z&Mt%kG!XjbDi;C{RE$^}qBLNq23G_&Xzwc^W#F8+N&)|#r+&mi?#ck|LIfsA07@nm z2wNXxR5-@+rFGY7(2UJGFV+je`$0($+-L;2GqC5PaOa1-66iA)icz|pi&Vl~S|O2( zrsl|S;p%)gw$86#$HuxnE6dhPs$}C1Heo}>72ad3RTHFd8jhibVO84y7&u&Hk0~Vc z;{m1<B#uWHq(Gi2CUFN=UE<mu&DuEImTI6?d<`Gk(#O}e##QtkoJY9PH{b2$T54T- zYZeyJ)dy2K>j@1XYSuE(ak-kdu$^AVRp0m1=_f*Qc`1hf!>({L{jaeQ2P+fze`HsF z=}p#NjyUG#*R3VPArAT_$V2o4lZmq!5CxNEK@*U1wq5|S;F%}v%<4QEadLLdwtxt? zhnomiR#jDL@O#b1=M&!VbJ{n3X5X+0E*NXyEv30`6SOGE>g#&?ydGX&6a4--^d}Jf ze%$%K8x{2REcrl;|9<(L^?$qH@Glnp%1-n2`$z?S8~pusL_Zzx?<X7o?Ir6fQ*)ql zlr+Daek<PZ;$3;4g8|1^WBaph<aS+crLo3x`;2sYF-O&!{o2##<&LBI91=@{z!FR9 z?e58M<Kffo;aQWdXQ%eSH={G({ewkNXl2fg$SKF5z=_PpXCUJ<NTIm9$gJdWa>IAy z9U3Ao7aEs~qp@eF>%E3#^y}qCRO*56P`pI<E0j;b@BIn&z}V7N_laHjWMTi|gLmxM zzjs<Sw19kU@8e~sO|5i&q4REwlzi-M0YKTFXu>w_Oe4G1CaF`}0r1x2E*p*decnCw zu18QIpRmzl7s?`#ir<*`6h>gHv&y$`ViWnUKUdovl*zovF>R{gxh=&1(tsH=w;qGM zVmVIULO*?aE1<+SCj)#YjT7NZ7;#o{m>yi2r-#6$w7mE(khF~YA&|hXGR5po5l8kr zADZ{&Wm}bFLGF|fi+h1@VcFTq;6Umwy)7`2bQqKrG6+%v;lZdcFLAK<nGJr!k2XBz z-Jkd1OM~>g<ZtdV^j)_NIU}}H=cR0@K`H)S4r)m4rE4*;g{t+&y2_7q$hV94#@$UJ zV0)!MCk^!HGl-MD>M;$eqXISeN$KQ=5RN01Iq)&L*%mjQ)vo%h5YXFYorh`*y}L*y z)Z~6Nv@Y)>d#(7AP>7b5zotD8wSgyvkZ@{iOyLrRhBVwV(BXO&YD!)00346I*Bwh_ z<|xJV)cr9xveFxI3imU&4qP%D7&+7r10c>Qlc20xls<i8rs9kYq>M~aY+|khx1&i8 zEDd_q1qL_1hYm`SrhjB<JT`@1qqJ!e7zNoJyd^l9TK*0(T7*0*H_+=Ip)??$!(jx+ zrUv)Fw02)oryn+qsT^Zd=D`M81;J!n4??;~b5D2O0M$L$2!r#}nAz9@|JsCNvKwKe zKDHg9yb!fqBL%qZILW$Jr4r70*EsiQan{!ipc%j47;b1H{UKt&vKeJr<v#AYA_6*w z;|&N)329_BK$j?c8w7J6%zE9^*_QClEvQ0$WV7XeB9sc)UkZb_x$iCS<QE7`UaR9* z#Ub)=-LTFoOy#_i(QQ~n_ZQ_z2hVcC{`$IGX*=_NF5XsQ0d#~`Iat@X^+sa!vR(xt zCRPqS%JTdYIbL97gg;Uw=$JPB5YoZzPh@5%{y740DO4g2H($Q9v^l-Cl8Od`qKZEi zRllFp+ZvXIe+r)A<9~XKv{+BPr^exNwc3|d9GfZb)U&p|vp7{k!hbsfyZV2d3k7*+ z0P?<m3e8;eyL>&3w*CGttX}iSD{2w&`v5K3tbdvsUeO}}uPhN#1)Mp&T@(a?MMYeV z-}!vmXuJ0RfSLX>O3K1KSp}KrQ%w4uT^MoWKlnZ8&DEtu^Wy&Qp-5CD5_zX<%Il-M zu%m!9BTzro*lM^n=gQlMwsZ)V+x1?F7?c7;J`vGDHnpygLdn-pry0WuvXVQ(!KqZ{ z6W)?}-qw2XxZhKq8bbv7S6XX;!yws@GFNHLdF%0~KZW!7P%U}2?C>_s#vf4sRYD^? zyS^*M*YIL_%K<OU95`TEBlK1L<07^-L|x(Sk+jK}H29HE&l)XJ83EnbBjaTGbanJE z@i<s>Lk}^uAVNLVa@4c&Y|q`LdAr^02-HzfL<}uf?7&SDLDQAcCLDLGm`0yPXQf_e zvai|ggOdi-UQQd=7>5h3+2P?|29t|=ldW8c#)2IJg>l|6Fij38-W!6o;LVXHCz!2m z!DP*eK{?{JVfw&tSq3<?)qbF8L5_@^@98*mQ+)Ooo~4aG8?zhAduYz-W8^ZFZb2!L zDG=(7?kPYjI~-E>V}jgX;@s5&bng&qH`s@3hRu2gdq0#AX5~zSlD_#ZfCSC+ATzzW zEG3F>kYQ3!&ZP@6oM4$@cf(NIRz89syH}tBy!)iEZZg-|{Ly5NED@2jcHaVA1P_N0 zUO}QpEPHlD6Za{nZ?Z^t6ECuID6Tp$c8M%q?NNdL-ccvQ+9($>e97SSr%pCCw?b<X zAT2%27aqp7EK%qz&kC5Ncv)n7hBfAMbMgfP^RSuKEGhpi_OwRFzx;^3w<#N7tB*U* z+I|bD6A@HIXh}U`{h(d{shIT4DjVXumhI0n&f!heDs-e0Yxs~o()PNhaS?ikiyO&P zx=K?bBZ0)=_NKC7zS?wJTr=y`)i(;NQ7W!Q>p-P+AA1#OQ%ufB)2_E)iopalaj627 z#v-gw%(4fvYc&cNR_U!OTHzWdk)mGiqAm{tx+aR&X&Z<`4l_*-4xSXFv<F4ot{!=T z)Qn0KZohSrqu$n9x9r_Xjg(AKYKX^~=d)}>NrL(lPd&3ii52T7FBEZ+g8^gl&jMmi zMCO9ZYIQk8@FBUldHLZ!SCs@8ax}7^ul@0HD$JFT?mN2cR6?zcjR=^Eto<VSb04oT zVm6HKa92m2gUIfgiOVh|iW8nE7E0;bZi%Cj=bvHrVo~isdYR{3(=Y^mM3_x?yATVE zT*y$<#halMBkScbO+ek{unSl?6yBr!PUm8u(9?KTSgMcP?WqMiwFC?Vva5m*;>aYY z3p<^5%=26r(rpUA+&8H`rt;u7c_;X=$RX$AQkbSgcI|?XU<!H%qgzDjn=%6;C0HAN zNlf8}N;HHLa{ANiHSXi-pl>b+FnF=>u<1Qxh{RYxZ9w7hJ&l>2>tQ(!au1No`YjLf zqil#+y$@Ct?K&q?9>hXJyDykI#AVXY36z|GD=-SlMl6!N0EI?q3CX*2A>OlKh>3X| zu{-9?@3Khflye~1We?$u^6)OSoT3HYCgtGZ38t>$ZuHtfeJ){R6Kh@;J3}o|@a~X$ z_>yjtRVM2nA;3f(;}Ym63aQdXDIi+jP*xh^?i_|^U>qyTfw>L#CZQgYhU}E8IsBTp z8%h&yGe*gySp+MQGm)BkU8ND#9jxJbew>tn+%lvr5gZ+$E}Wm24aXRy)5kRdV<_vU z2toL~NJ@@<BaOj&71!pvHg~?4Wz>6z^GUuA{}^q@)RFTs<_vqvwbGyaqL3<OHFS3l zMa0f~6z&*HUhr5zc7WBJ=q5zYnXG7W(+`xQe(rd_OVveCoZ^baK!G3iG!4TX+2FF9 z>ldL$hGJ1f3u0=44{zrTIos-Fcf>#4-Mvv%XRO?zqqvh;UDvvLKOHmVyA}~_^^OaY zw_eu@p1mTPRBqH&EsokuORg$gm0<c**O-Sqpdr5!%N`dr?`m*>%r|*jM0l5$*bd^w zn@<aDi(3^Z1ZQN2a0LHR(1bi>JoS4u>WDbPy@u#{&9nP-w$X=Jk`IC8CwggP8y`0d zbGfNK{zRt)Ip%8|rSN-Cl9XlQ+~}SO2u*`utE|_$F?=Oq@B21r2*1-!GEo(}?O&i; zQOa7wrGXuh7xLh;u~4vWp{G4+j8yl%b7)Y@ITQ@l-roA@ih(X+0#k3IOdeaQlFbo= z-G!yF18AMR6O;`))>l7l^*AOy7~7q=Rs!K>P6m98=?QNwvcE*Rd)t$<ynpw&c=PLi zO+^ESB6fMJ1LMKYaj9~MQQL)n$W+^PUV73N7LsJ0vcFY+uT5N*<h7eK3;1RSQS_%q zaWTx&HU^AcGB#|~j+&a<WqRBl_hrXv9M!K}C8>;TSuM2o;Wzm40he?&g&LhFwOhwU zn8eMg^R>N=97@{2?L_fCaP@0iDmb0^{krw>bEWT*U-Zmz%b&HCXwR*EHrBTThc|_k zDcYLX)~lO9ZK<}l-eZ~%_sMkRz)PGYQ0l$48`<Qn<uBGAgCgv|3V?$kOH%~mz6(ID zq)4!+2spx(f>-s1$su)*J~&%hbIMWsTN_O&wKOu6o$dS+!w6=d<Du-7{<%}n{j7Y+ zbs?zO3s21^(9az*ZGptzr)@Auit#Sp^JZwQ<tZjvnBn~dCvVOdL)VsS8kD_gbY7xF z6N~Qsv|$2^vYRHIKmAvIxv*qBW(q3--rtYsRt#}aR2c{)X;<BIu7dkb^!;!}yCiaq zapWHFP!vX7<83$y{HztpyJSqfneD3yf1aX?AnQRZg09-$c(A;3>@5|R_@b1Zb1xfm zF!#W%0X8aCp_V!Mk6Jo-dRUNcMW4mZe$=y-4qkh?=WR=PZs&{AOYoXMG;%CxTYI?| zp*It{k^Y<ytoSCGjkLM?noFt$c)Qrf+Hj&Dtk9tNU6u=Sh<@;lDJyDue3dBc8}!Y7 zu7XI3nYEm&2F!*}`;lYxHUqy(#J{)SHN5gnw~zjg!w((1shv8(+v!MJqHdHK=P9)J zJa+IC7?){VUVpmo%bQbP$P@C%|ItGXfq*`@T)5f#1s+DqZ^&m7wn_TPx5uE&wdhaq z6}#9R-R<T>xA21wE}_bd(bb$9999zj0y;9ex3JB|HziB`VK#NiB0qxo1gfq&UujS) z@5BVQhbA^Wm;b~^q0YVaX;-XT#QeE>9Q91;4Uh5|5&HEEMtZj3(8ZK5zj=9xZheC( zF9yZQuP2;}LWsgpum~pCUv<&&(xfMM*qBbCH){Lb1AMFOXGm0nkZow6c3T&ziYmM* z{hLk11NS+dwYeXia|g-K(yEK|<dLV_*|NrLc8eRI7C&BZyA{%sH7b`4>on*`g-upi z?<zG&__%4ZgDY(&c;BDb=rlq~rj3#!WR2I&4;YYRD9Qq+h{!j_6<U5vIf<oqRNP$* ztZTzn277-z86FeJ{1&YH^k<|nl@q0^BwDV|2{Pa%E3hX{1W2KviAcZ;J}}WDUGJ&l zUbGcb^J7Vq4wm>W4KD8|ICYgnM#@jk+0wC3AlUt=hQ0fT1G<H;rDam0i#`wdB)haO zKjT8$7KY>AXfQSk$0GF1u+H-+(3Yq4My(r&n`fxZI`o)Z0#qmTFlT9KLni#_52-#y zjywgDqzLwCg0ITp$!HRD{KQQ4no!P9FrVj|pQTl*V~5#D0r6YUpobYJB!DQBKz1Q? zX=uckjA(ozX$p+Q^Fc`&ASr|<kzfjY&{l6PDe1E4U;g;D^^aV%^}+Dzzqmspd6KZx zj`3=+@eTE`kUQ}paTV)NM><5I;4}BZTVQI92Zm2lO!8ZTWr|~22`R6S$&d9>+rwH4 zG!y<vY4gAXv$M05+cGCQ`~dr=+n^dp!+y9hI6qJ<ke9wYSaThimbeH8YDI${8MDDq zNM<UGtQ=dVi*i+h7751~Dr}n!jy0~j3LcT{^5(*HY1h{1a|2(V3=><8p+!>MRR9ep zSYN&=>6&a5*NX4GTvV~y3pFbEQgG9l>g4n|R~~zwC*fOzWapD21(%Qv8pCfP1;@6V z;7&=J6~{Ppivj<E3)77gRY7=@p{xm7;-a|=ZW<|LTLPub=%*8G(%nOJ=CIOD6NCms z&j<sK+&NXQsF=TyC`>u=S6S0lIDGbCm=PJSnXH7{<;TxH{`c)SpJ)E*-kkhZyq+Lm zj#}Q-O-aYpV1g`tMH=LZTYJT?hz&1@VHBDa68u1%_i&19^y;4ztOG;cm<|DD+u+9N z!^ki<LgC>!bfHSl7H}dQzGt8ZONja)Lb^jd-3$FLp5${&7{R)j_U}WGmXC|ZwcXR- z%`lp&d9@9$9eEF|2SVDK^W0G!SJVl%DLO#Q>p2TOD<e}a0*~Tyn8((_!%$XW${PAg zFkKi2iT2SM4(XuJz&JX2ZYot7SFSSs@?$|r1~C`?Dz)>4wBPLB3@Qlbl`_QH0U)xz zT2YcSK^HrC>){`l(T0pDy2mmYj_z^D2h;=J2eyRWzd~d-)@YquFKr1YnouBRVz}aB zS45-a_+rTnF|aQ$vheJw_hsUFHBqo`^B9}a$<V|zumgcNBeGFy$?>&zQ+%=m(J?kB zgeMmn=J)Df<?ralygfUKC6U<m@*@x0Eos9lmW=wDALoL?W!MrJfA(-`t9s?JonB^z zkZiW{6LVZ1D~wT(FO<C+h3Hb_9i6B+b8?_^mqOo~rrhytceas6um#DsuRw`0@1-s8 zJ?9S`QALG5N@8Cwo}f6T1Puv95}J=bL{r>~w|U?Qze~*rY5Iw$7C_ELa@Kk2qmh6e zwO2|mb@1@1gNaKC)ruk$Y^M-)KApOm!c7-Y&Zg#cf;K!4D@t_yVQFwk!5+}bX%iQ^ z(u&*tNNn-AOJ5IfD!6&*(79V^J%o=`)EnTkV$VH(SAA{ibsU}jHA#oZ(B%4#Bkbgh z+t2U$7y9-fGd;)Sj|eBEs0t{2+C`H?7Oy$8eF?yw!}IR~-QMqv4bjyy^z|z|Ti;)$ z`QZ!AP{mJbR#ek7cUZkD;Yw;&sZn~HEl9fzi^J-;wA~lOqjy4@m9T9jiKKP1K*?1) zgJb3kbe0U`sSN@hv@$^z?Y|IE&ZtP-2!5dz7yEXbaXYEz0k2#Gk8O%2g<=@P_BYeF z5scVi;uQ}72Z~!jA~S$zdZ1CYN&avQMPIGH1`?{kravA^ql}BJP|A`A{waY$n*G!g z*FFE;TuB?)`np9$s~E30emFzw*LzQ5W75CLk6wFbRf0ejlN3WGA(cZC{lQ}pImXT3 zNBT~~IeX=|wMT2Gxfeyn(C~M=dj5}F59{2Pg*P*dh;IZxiJ&)uM4Y0YdeTBe@6!0A zIg=r5yjBvAK~OLEyX%`<U)TJ~V^OOo@<r803-D$Z_%hV{UXdeF^!+eh3j86sI}hWE zq-+Ii56w;@hBCYY9&Bexie%dj{`1vLn&=xJIqM_6Z6v0G3Nyam-CcNLTZEe8PezY* zO(O{bl~U7H<TxT<#_dLcggkqlFsj$xv=wc4ATpAV*tABZGNVGH6ci1x_8}w8=Au;r z!}>?rzYDF_&EDuDiqZJgDIu*rDd^+umv}t5LyMY?o_#Q9-aLLJUHz@VxZV{uxf#}` z_zpuh{o#+APDggma<{x2h5fFoe$${Ybos&_%OT+dVHvSRmbpt{<Pn$>-M}}j1gf0t z^NQZ`d2&k58VK(~r`tRIXEf`gD7N{yG=q_%QtjPKN_*srADi3WR8FWVy)26nxvG}O zMOJB5l5LYI*J5t*F!aV<HyLQOkT`C4SSgg&(4^s+f9(`+pqzY3gFq`msjl0RbM!!G z2coZ)uNIOnG<JOeJvfeJ&uTh%J*oG#Po2$*lR$@l<$?sBBLZoQu@Lbg>}fUdbBuSk zyld0iea)3_GTE`eK&smf>l4m2jvVd~ufYIRIvpq8vj&}gUGi$ceJE7@Dm@DKZ(Lh= z(61y?y}R}{Y)<tO5aV)^DBbD-vccf>5#|yrc+qmqp3$?{v30MA%DR&KxvOPc6)>~i z5ytk<sEw(Y{+!2^JxOF}QP8m>{@cnfNL~l}`YB$&s9=&M=?)0eP&>hcTxW{*F+2`s zuu=FOV*3kYIQH_qW~?FWzS=@=R2Y{9i1as_HztWMejc32az~F@;&!{#wcqcJjnnC& z<@x9(f3V6>$cw9a6Q4%v6qMN*#rkB7_35RI7K$VI#-Ci)DT)JWasP6ksWH`>?7LNb z$K`$LfVRD@i26l=5^R7Wg8Y&DNJyr{oFQv1M|0)K2EEoEqNA6H_=UCAE9P5mX^cpj z;RLgM)Z*{-9w9*H8Z`A+*a=qZw7u?3-NvknY+*vQjPfeDBk_njPEAhf(&xt8j9|oQ zfrRP-C_wq37oJb0c(>%dH;%N8f|0Z+Jw9Os{P<x#e+^?iAMR_&fz<Wo6m(kN6D`7q zx5z6FHjV?s)2O*E8g2c_Qo853)2`NTFn%|F=jM5^;6r0+aA&#l2;I_6kHC1+@v#Wk zSlY|F4%WPra7@$*hEI3y=KCD<Z@Q!hDdF#-67yrtw}4|q3BG~`2SFADnNE+~V^L*8 zM<>+g7f87U=9%G)yQdDRKO3aAM43@!!?QNt)<xkSJ<}`1?fV2Z1cRCneCcZEj!gmt z_Pk~fD2|JTe{sMCo?(+xMu1JJ>vFPZ=NDwjf}^3Ze+RpSP;^eUL}cUxeVseRUqzx} zNJ2NF*~(x~BB95&`4J0w=b}eE_@tr_QwwjRno?46YjJ+qtZdblp`k^RLInP_=c$pM z$Z~mN(5YslWqG*fS8HU?gn4jCf4t+%<;|jFSjHAewaHC(vSIZ&xh#^}F=M5k$L6E; zS3<d+aj=Mg%mRtj3Y4k_cl$y_W<>u#Qs!~~&%o;c4j^OaW@Y`4Ry=C-WaG&?9D7&m z#-ihM|FULMW5Hj<nPDOo1YdU0yCmo?$UsOW90q^)_Ie~uO;qMBPZgSVX2`K%!Abbs z8iXDmlhX-qgM7hT!yCRrvah9of80KOmTlDejcqtpkEXRY`n=tvbV%yO8Ot*-8;_4> zIgdNOK6t*K?ubeeij*Vghap1LP=|>4U)M1r&rVXz!aNQ(;r#UfK5c7@&leiioLhWi z4@*18=Whr>I`>4-m5>Io%E!u5Thr@KPHr4;{HD+U{_>xk{eBq)EUK)wkstkJ{QfM< z|9)%R_!cl!hnu{%b9~L$rL(r-KE!hZDHE85_q2UPN=nOEslngaj(D`4*4=KydTJc1 z4@1+XJ(apoZ`)Y1$1}k3EHxxKy?nZ>Kc5_&|Cu-caOXhIxVW_6eV<$(P+f5?cEHy! zb||;@0dE`!%M*JSla-m)wz1zEPnp5xMq%@JZR*MKn!q02@q%$O|GiLK^$>LE`x{F6 z<MNVnOw!i0ZWM#q#gW_hoB!ZGzO5buN+$#_?C{&3x$f7nZE-8PM0x0X96x57iHkh( zkxra%q$~X8n5`@|1MU|?VHoKFc`Le8S1NyUOx<fh^=R>4Y^$9v3>UU{$>+>Ty6(tS zhUHID1m;lurC>tI5vUsQnED#_!?h=@zjrLkZ1XZ8Y)Nd$?<~mdDzb_^>ZBcPyJE{y z*OPK9Qa6)gD{{=S+$@e1uZMD4$NQ5~f8<!D&CL(w?&Vg;#v>D1$L-qy+hJ5v${<P! z1;F}AV&Y<NJe&N+mlA^X)%Q7U%&;QKHg&akwD*?ORBOwSmWmb9)odG@;h<Bf+z1$W z&XetqDED0u<So@+#HGb#Zz;XVTfrPA4xJrjoEEnMy0HwTNy;!FN3noYT)meG({qgW zGX%I_HN8Es{w;!=f7N?nvB;?P&u93$aFv3GeH;ULL_89#Lfm%G3wAR+W`XdIfRk3+ z#5iRrE=5C1)j&$>MN)2>hFz!ux_zv$N2+>CtOfvK)cMAuqZ$s#k>AE-LrVbhMCWjb zpnJ|4C|W<wF+SrSa2P)m^3)lEQ(SAHzMTFKL^w^i?r_On>h@sQel4Swp49aPgtU?F z;D{_?1>iy^-->4Vjf8cD>e0jz15?{wJ6;tU*<l3s?j!>xVQ1(K0%jfkxe5c^eF7nD zh&5G^m^Dy>gMEuzDNoGa;dPE`=Q8(*E@sg#<R;P-7=?*`L>*p|wdnr(X43l+N<Jze zdL@pE1p@;~dh~3d8`Ty5vS!0}F(;*l#|km3-<>OZ{S-(;AWqb_O|5ZrONq^F+5jiR z-2jP!KW<Fi0YVzBpUR+`ZcOEdQO2Qm{4#KJ<L_C8I&FBwFwLSw1W7bqrvAUTMt<yX z?3W`_XA*R8Sv1U@;I1&t4V8zZA)^MOnxhaSfrWE`aIk87hLZPX(i-MtBo%yGhe89> z;Y#CeNdDNnfVYnUi(`#>h-Hff)OPeEx7Tq=(k12+Z0Rj6R&iuHgL|&crqpt?F|jxD z6Y<&fXbB4YYais~>(t&K%mpdp`|s|Hso3ZRnvl0X7dX8L6o9bAAqW_~KJo~iYQaAc zBnVMy98#)|ksIt03Wmt>RalVM6Yi<mFWi1-KbYV`byxoh|HYm#m=C^N^WFQe?pln; z4-37#(NPLP@lRB*_0fH8*R;Ey=QiaCl{0@T{flc4M!HG9{HWg@l=Edj;-|ncftG|N z`U2$?En;sHQ$*QF9%0YePp4YE5R2Y#9<wD)(Y8IcQQIs`ao@#S|M;FekqrX()FR;9 z!}b8(AJ8?>8{K)*TJRb#+P7j+QCQ7`-$MkLKIC!==PiV-uQ<Zmvt#v%?6OW7W9U%X zQuKT(OJ;0477`ODI>vId;bzo5;6z)p8If`b=iPAXaA(Za($4!{_v+XeWetUWt!CB_ zUu_DwHrCCmZfOL>8e7&|IVj-rIk+`$AkQFNdY7S;-q~dU)ssX!Npo6)!@}e)nH(o+ zNi=@&$B;GzWaykeB>hI*L|8Js&N#N;7{iqlDWUYZ`EX6k3hgIgWJ=u4OriK7l(L|K z&CJtV$0<xv#C$AUlu7Y@kt$nMIODZ%0x+=7F}9tW0O<q4Q(zrJlz_mcHjeT<RZ#K~ zJ-|U_<Z#lN6h)n0{58Zoz*r_5!re!Yu3Av+1X(j*Kp(*+lw3s;=ekmK3&3A*022ID z9R|rw2_Y18n=gCQ?C5nSyJbP_l@x31tRyK0Hg?%;;+YN~5SdaTxn;o}?DY2NtCB}} zf;+2wQ3rNZ&rs+AV@bITO~K*|#>_RKz>G@sU`1wf0EBKsneG~`A|g_nf)ra^!DC6B zML8GP=XRNih!j4^Ls{Df5eLb4S)47)>Qw3Miz&4!o}PJHm}kP{#brAuX{7R)yC?KQ z^^xYkxEyJBf#ZBuQ^?P1RqgLenOW8CJQZkP_}U6lp0^j`lY7LAh<fK<*H!LfBfslx zNg_R9wz7gDYa|MSCB3grraCmG)5W9%tA}0>OxXIkHog;K5Wwpf*JYT<eYvG9J67Gj zH*|7MFl$kog#Z$7UK-IH^%qw^m>6MYoQ>rCC(F-V2!6I|YjvVBQsPabs)GA5sm;oh z1GbINwZ=19-<D<L8Y~NE*Yjii#S)RlxmPAMgEFC59Nc8YI)~L0i+!Y&30?)O=s14- zGqs9gk`=Rcc)zhP6x-i#g(b9o*}KF8v2v66HPx1AAF0<a3D&gvFgF4hlplZZqqOy4 zYMMpGP!;$4$!Hph7WGRHDQwMgrqTqV8JttuAey3vjxwpn339|O%_`65YMaE&*FM4s zTqSwYdNHCzgnRL}Al|RwQ5&RH*r%n$g-VFcAlxZw<CTC+K@9LX+xejkiR6s1W3>g4 z&xK|o(CTw7$B~5BSpwrrj9(7igihJytu*(l%I8O!yf&${6Rokv?fFs`e0AN$?2wHB zqq<x{asTQvn-Xhf@n+zD6d1Iv_!7GTZ38L$N@iwy;j-DA6;3vEY~jpeBBFbBB2Qj; zXU{t%FP=RdOULlJH9*=@B$@c8HCv>vkeBr|Bog@dBP62Sl3L+26p^G!{=mL886?M4 zp_trIVdrQ_g{)0)M1iKHI$teM!<}aJc(V8cNq0YzvF%Y;tU}fW@6U>L?q3=DlBc8F z_PKZx%Tr1PlsYAh%r1QB0P3nhmkgs9uNw-qqRqX7*uUk-xBRL=#olprTL$i8&%%9W z8Y}iTu}d|X^hu9qu55N`v8<l8*{518Gcn5^3}LhcoenTdiB6i)A%Ss^_G7-gi4bPT z0<C*%?sQ=@{BOqsVeiKSu-h(&prk%U^ERzm2I_!3=zHm1MI|&_z+ON|Afwq%i0W{y z_<Qc6Y$hX94aX~Ti@GKd*`m05(pK&8Ashp6acFee(_9EKo0iy-`|N`(Z$9p%S|-uy z@Y)*dVde47242jaLvYi%UFQQuM$L{@{jmLJAlH`{xpD%!!g;~sgTIjjj4-3bS2P8l z3q8{Ed`APD?7b{2&u1Du4mg$)NTBFI=UKL>aKi4J4!&Y>p+U{A_Fe9;3j6HL=(JwQ zu8bWF&_M3F!!yuvjU%Px36OE+!qK}cd7ElzZUsO_a5pSjt+2P>Gn(o5v5{#cgcL}s zNJRcV#(vNr*ea#eYepk~L?@QsGdYJeF-f&F@w{o3%qhgV)8H{-iA31+m$=^Xhtxz$ za#mA*F5K!!9!eH*v?Q`sU6Wo*HjBl~5K6edC}ji+JaKB16YOw~1R<HVvBea!<r+=A zU10`2dQvQ!PlSiB_q{NC@UNP;knp?VU0HGej^x>&nz3FEkXQ!?F@&)DJ-C>HD1NVE zEgqDZ#D{p}QmO}B0Zmp%K|*Cg5$x?Tqg9TfE^=}~2#?Uyy$>!0X5s~_P?<2}HOgTX zV?QWw?m>LbXIxWnfO2rkA04gbp{mFhT!<>px0-Us#G@EPZ-6QHV{6-#PKIj^RePH< z27U7vp$at&M!i1GDuP6qQu@B^Eyfj+T4?mrZu@(hx7u_NmT15*sZ`FCqn>Spk0rD7 zNE)b#08p#q&T(}xAYA1E0@efr$Fm@TI1u|3c`_0DnG=hSmM%?WHvFcIT1NUV%j-pQ znz=0QMZP$?THBtui|9UAU)+vgc5FU@woYnkHAo~(FY&Wiz>EF=W9*!oM2nUn-L`Gp zwvE%aZQHhO+qP}H`?PJ_b7r0<;@*e5ANEhESXq@{rhcCMSx}MN4kMg8G$^vVXZ=3p zvA@KY8a!>B#GmXE`X?EAG5u(a^*IssL<!II)4ekjj@f3xov8rIw)R?8L}QULLNw@= zi!4*$Famr0B-q~RyI8CQT|9Pd`LZ^Poq&WqvGXTdU__=ROg_n~!X`X$k9tvMQ$YG9 zU~;spCYtm~!!ZT4nH(X%So!pCVqJrwnFr37`*mk=o-5vHK}_AjAdHlQy0HP!h+7}( zH)MJKu>NngQ3L|yB?ja#K^xc{jV0q|TYHkzHNya<9rH!VEAweVotSA2iV)YRvBPU} zyjMHn;@m&&puwE@1gobgohfd-e@1u3u3coK2fhP|cG7@CnhN&L6|R6hK{jAfzGz;f z8^SXfMpCYuF_=F}Gkr450$<wMk|&N{DFdy5lCuilZdxNz@)!=hcY<4hsac6H__EZ{ zCFCAQl4nL1$5RiPzgOqJOISq#Po<6}dAW`C-67)o)k-Nj*+(6VFRtnCD}DbhN76Zk zd1$nEaT(*x4&1-!)xQ|PdZu>Z_-OJxXCr*a`OPMfI7_lkRX5E5ltwcOmm0-VoO8_V zVMun#y%7Kx?N}O*;V5osd|-m&$&A9S)(7A3WNENM8YwI{Jp%&^^53tG3a6owxw;pE zrfo^u;NC3h%;%*L;abV1I~QqA?;<%OOzWPS?*><bqYh;*)KI4>>1N-L=@tG6HB{iZ z$@<X6G-}`|<m^!=DBoY0;BA-lDDYDF3r_}5l1;S&4+dWdhAM3}<Dl|Z@ZH$9v1tC% zE+&uT6A#Azb38=x=7nWki|M1Mwx(dz0qMWnQCfDoRadMuu>dPK0zqvu@ohwNX*}mR za&bKrBdCZ@ow*$=7S5guL6!gYw~Q=NR!$|Fya<6P<DCKwnODY)&1Kdri482v4lHi8 zPoht?zhwt-lar6LoYsd6vd8lX$Cpm|JB$Q&xOIE<X3_Vml(?pew}WMQs#rH$KM5#1 z(`Xt8;v$AGs3qG~Qe$+!A>TFPnIPWCP=q?l33kYZAP2>tz=3;;GKpz=_r#<m%XE1m zj#+adhIAOsVU0cG-5JW>nMWB4v%rO5t}7o6i=4;9=Di9Hig2B;so|JJKAIFQ$+tzz z5r&y=QU<d#UzuOi27>So_Muih=@Im+r+z((c4PRk(&|=~I9*Qz2G%=b3f1+}zYm zmE|Ra_S`46J4u0ahXNHUJm)?}RmoH6>#<BsRi?n*LogD{v>SbizeY!4FoYXYxE_Yg z{8kPfk^L_J=Mgc$_H(x23DR<*0liTp@~cBCH$_d7AP1A#f-YwaXC_0C?=KF^J!j{X zSI>qsJ;)k_XX^npvEN00j@6MEuGqfeglx2u*1Nu#i-LLk^IpIkrTPgZnc<>neKe*w z6c35uIM!a~L0)C6`VFNJ74KMmBv-PM*dk&RDa011!kE1Tn1=lPGGy3NsT3SPYS7Up zM|GkI2MYxI0TNRJ4BoT0f{2IMqp}i@l9fc<%TiGhUTZPRR(@npvMTC+h34FA^g~a( z>;WQbX+{gYC|)&yo$_`!Hkc)?S_<S6Dc8(HERYWJ{sd+6A`dr}_v|<C64~M@41Do( z4lf#1?d~%GJ?@|LvBu-wW_h{XoPZJ4vql&w^Y{ZHw4UdGxSR&dR^+}kwLdzuA0(`2 zMH8t}^IrU2Fo9L2bIS$cae3!Kj#|>COCmX)#Z6IWU4El~S=uSOiD0{-QfJPc$h=h- z1i+0t2^5h7JNlyX(#?Lfy&?EYh`+;`Tc&^dz=(E0Qn@M5^j`ZeB}P36bBylrDDBOy zOoz6E8QW^_&1^jU$$=GdFS$HZorQgs%kpXg#I6oC7mn&AISahH(e$6mPE4m~-^}MF zv?vlSy6lQP_X63xMJJ|y!)d(+>GZRNoza#kSTzH@Q@M?OF9htY!H9!14Nr|n7~Zh= zaCj^q?l4<P>z?6BB9C14)D9MlVq*1rG`Hps?`|_W+5_IMVkPGVWq$F}lWxn``LRfq zq&Y^Zmp#(~%=vF2Px?4&s&K;*R{p-P!YV=74nc{+tm##QjB>`!EI8GbR7^6=<6fgm zhw8*s@;R$)TmpbZN2%uSNMwH1{JUeMvV}?jLOpHwIg=_gIk}VENc&){sg=hRv?A@j zvNr8vkPj&@_rq@2B_^&LZkIFNx|)5qI>?lxf^}q*S8b=`Rt$7Rhfl*tmPz+20mb*+ zVkVJdK8h+tVPZE2Uz4jKD`qAC%EPZRD&Wm9ir;{&HC3nkeU-+XY=MG#vdd{|83DQW z@ZsAX``wBw`_sR~v_6<t+C7zmqx`@iwmG$Y68v1xns}wj8Vt#YyF6JJaP;%Jf$Bg@ z%?Dqgf*}^%q8A%1Q|d(xXqls#k(5h<9~)xqy&g!HkolJaF>S9>!XzM-1|ML0yIWGn zStVUGbXD==4?}2s@tH&W#S_Qr_e@dbv!nJToKX)q7(&Cm6h3-_)xJ)5=>!+i;2_aD zg7Df<U<dtk;56;~QC2<23BNJL#9U}w{Jln@0q{Cc!pa_P5Ob-F$fHaI22-4TET|5# z(MZW`q^}t!uHPaVW}620-eOZ_v>jVNu<g)kabsQ_rI;!y<<JMO#@&XKih18s#T&a8 z^t@4SV&dPkITPpA@W{Bxm2rn%Ax;|!KrH-<56)DfSj1$VD9K9dtP_~_TM2yFub4vZ zUbMQ=RWVW2;d3gZq(c&KCM0SC@D7-fwgB}?T{H+On<V7$CgAZy&n{m;-~_mD4-7Oe zd;cznmU0XCJm5ze%8ZYji5xs@M(I~=k~Ahn->9)?J?MQ~5_>ClgYGT$)9bfB&MEE= zZHGBoEWX^sNP<a5`j7lU-&b6BxQ0@g4e$A0oO+XCW|a7+F{{wpxm(d)fNuqWYnEiR zw(8Z6o=HS;lHWsYhv29H#CKW<Z;XH+8X@4M3ggwKF}~*jeb)?f5|j5dU=o50t-a`@ zd%8uS%dapwlTI;NgnYly)kV=PKxlL@m&}#)#k6Q7`<!Ii>@~wu*rn9Fs=}fHRG59- zbAJsBfOUdSfWlVb9L^pVMm=Wx#wPuJD~eE-=P?ej0<FTmVoS#dp&V(4F9@*kxrPSy zf@vV)Fvh+M(*~qtvp!PP`?zjvN>x3Ab=58A#-J6MX6dCUT|0RqxfYn*-?=(T&D$w5 zKAEVV?22hnRJ%m%U#2=3QhYv1wG`me#xPvu+7Iw})(%+VQxpn4pu8tCw05>}Ma7ij zV|SZbszY(>f}C9wGQElUkxgxB9qkeOQ7(44-xsL`=)QomL31%4?=gx&OPvDPAw=!> zuY$8m`Uu@T#}suxfZ?*muWk{+Sy(*%S~gDCXpqVAiq&5`ltS^>1S#sCwKVlGkfR_x z3A>ki9>EzK9^Yc6PV>OzrAM^{ToW}otP2C2`cO~Ogr|KqK*`b&v7q*=#$N|up;PT8 z`jvN4{O_fLbQ#$WINU;My;p!4)m*HFTczt*^>EADO}@xv>V6nghD0+@a36gjsUH!* zPaLZQ<w;Ukze5ROgaS`g{JY_Op@UX!I3umfsEJr1=G^ULvf3G31DetAm&&V=##@HV za~-dB-$<|Dp7FmZ4(>hyQs;;#_C%7dL3KjxtN$<!En2CS{z8Vigo6Dy*5JP|Ow9lC z-2UH3FJ@uwY~n~SW^LeXB4T1>XKcd92j%4KXkuUk<*pl}CKHDv3e)piR}MW!XT26S z1yPe6LZV0l*T196*&k0|93#YW_v&%8A(<9-4N+rS)-`3rzd2WDNzo&ntV{RwHq%}- zT){f=mn%lu%C^NyvMlU4>*?-aJ=e{nUEYo#2WjnY$?k6V=bghl^z9)%d*RatuCA@G zM+ZYm9-6Eloi?*of?_!Y4BkOdp#5k{xR&9BP7S<^U#2vD5pzstIum4-Dq{qD8R_~A zT;ORqp#T@{Wx=`Una?*?=`%wTYjE!2D5{h{sx|O920?yw{{gP|EToRdJ62}+aWl>) z9ykPQ7Z@59+7#dGO}mP2!|VAqx|mXGYlGJ(82(b#G2WNCrg+mV0d85<=i1&WKJ+nE zA)~v*d0vQg?PSkq(=bdedyB%wsBt=!gT;#2L8@epIr{#xgHA<)f@C#j_q7YksXHB5 zZ4>3r{8kqNnNj^~SAVU!ps@&622{g5famfM6i+!4&(l_MJsg>=l>kaTSAeMm;1!m@ zjJc1AIO~v07~o2@TTH!aztz9Qr>?n<aKr~sSnIk&F5;;4oE$Gg;*)TzT4M_1U~f$! zLgEAYaR3e!roE7%j`)IG=F<5WVLYx|zikh{^6^(QPiQlQ_~B@l7VE`gX&V?mqY92O z7#5I_m10dL%n5X`fKmhliY8YH2P+0gGav_cI^LMAC@F<#;4>N!ycX3GBQO}Jpo}5@ z`JG0}GiWVW)>n-^OAPU91|@9eOR|rejq;V{GGNpsO{o0HkIV>oz*2{-IzB3}V0^Vo zMjXR%u2LIk%Mx2^Sku*%%1<i{;-Nn=P5cA0K{^l(1YN)zk(yO-+EA2HbH*Vk`5fia zkH%U~+@ok6*A}(F%L&|2EcH$qnEmfS8qbRP#p9huKjORD23|F_B0HgxGjNqlv$J3# zR!f*Pf|CA7kR8J;XdyTXa;UVFO!Y=aaw3HSaxQx@k*V|Xgc4Y@@;Q;UFt({s0`Tpq zV%YNX5-GRsry->j1jLahOe`bT@!UqY`L5{db~>lD%1!`M^DG1sJ6B**6i-uxMPU+R zn_}_g8)z$;1<O}d*WBNjDa;5S@Jd3s><!y#ENWszg=fJg=G14x^G6BL@vnm%tkEzp z`QrM@?R>OND_<{H&j^z09JJ;U)ShY{JZ0MRYJY&!w@SprL9fP!_o7h=JFN}KG4?28 z^_WEhK8#TI!Ut-2@893Gsi$|IMq%t@84j};XV%I{HLu@H>%=)uPJQLQu->yRs{40( z!!2w#qUoJa>ggL49~1UZ$>BQf_znc@y~llc*y=tzJaXV?+uWww=<}ob*w*`&wzcZN z?u%t|ty2;sj}<NVonPZ``oh58E!uaxd%aqC`abbHe^LnKE!IfoAGyN6{1HvPQSh_d zvIKa)Jh!T05L)uqDmM*k?pgC`X=X*_j#r)7X)Ht=3ZPsiYu00Ib_xizltnU#s*Bj^ z`{UTD(HuxAM5)cR+N$VnRi|G{B<AvkKatlNtlJ*8ZO!|ZKLX1bf?M5s_7c!@8NUv4 z3iopWMTv*tN&<hJLz(zr#Kl;GodzQ)_m9we(l)bJB2T-_l*_`ke0q@Tvl@leT6tc| z4lXZzVepN6j^D1%aR}em)lrPOmmn{E&htCteor9ZiCCuEasqUoIpz$C25zVXI$SEX zHCxLfamx9?0a)N-`ic?$2D8we4-TnP^}Rm5u(#@kof6ri>1I2@GvNOMz0luX{+D^n z@t<rLBLf@D|1@v^<&xUri2jR-ex&{wbjbX;x)7rPM^KL(2E3b@1Z0aqCJ`sZdHd|< zjcw79UKJWlP0Fd*xhUKHu%vnonVb=OORGdq`KQ5`hUnQh-P$(S_${f6V##JEuQvzB zpy-U04ek}3l~t7J+Tf3Gw20nw$1(i^_&Hn%8{a$n)-heJ;@Gk-^__h0FJ6vchG;o{ zz~!DMQ7(QD42Tcfw+_!S$W}Z!(3>t+g{IC8J}Y^=zpA$UKCTbDUdsl5WZu7LzCYnN z^X4Q*lzsoUe>F6yz@e%r1}MV6hpgT?5O^3=(Ef`^Dv7I<@iMwlO{ansPluU+FQcu| z!X=r@ASBFb{k~ZIu6+IGEd9Qad})5}v}=_IRMpHPcm#`J3OXi#(}s86KjzGwcKlmg z*V8Mgc!fkmnQEeE<i@M4)Zlh}-C<t&rXVo(%PujJwu$>NG}IY4D#1mEK35l?SI1r% zDq?g*n9|3-YB^9d;}(KxGhpQ0LY&l~9KK@XoGe;`fh7|xJ!D4w51Z$pdT7;H%Q#d4 zcgzvr!&cBj7BX?py;rSXlK+>N=}Ah8c99>3C%jJ>xL2Tpeth;v`$Z&K-3+Kk0@77Z zp8C2uyFzvAoI#<c+iO%a;59fUqHIoOIJ#ReFvn#}t#O*C>5<0xUutYsqU3nA_us_$ z3=YT)|D^Z`bT~Car7g8ml$R<Gj>n(1Uj~{Ryd|yn#t>IwDfGHfgOINq<~##Oim^dU z34?MQ+((OK3w!kFGJ9uJ3xhv_D4~LH=IiDg=^Q7)=K=d}e}gS=w<Z*bFw#i^6&*(0 z<P&+s3)=?}n7E)TOBu+@n0eHNGnGtCQ4pK@u|b*u+02$F|6~|M1Ldcy1gE8EVTB#1 z7hsf?7pP_>6s}{AfcfF3U=dq?JYva!%J?&OQ7`YA&mU75Ww(g$Z2=ced6FZbIU7X} zt;RaNMjGA_MhAeHfz_zr^CFKM#WE{ofiSSBk%tthTo%Ft!@h!Y5Z}<=MG>%!Ge+lT z!{QbWNk$6h{;Y$MVU8A5wX7NtILF4?f^F}0z-lvwN-sn<NJf^iP0YuFKFk6Pkifyu z*U$U}2EaJrG~t0gWzNAuncYC32?Jwv?~k2o#D*8X3o7so1@C~_1-3#6Hxt{kO_)ZB zCM~6(-ydsF^<*xTdAyu)o;I-B0x}*)?uhRx$JM-82M$Yg5)#HD7$}hd3$9?M1k^L# z!1To0asZ=9|HI`wEx%tbo~b06vf1kRK0Tn{y`?=0#k~>1hG-dyg<3r@Gd1i3N+2X| zVK?s6b>+YjpM2e55I`(NwRh_@31z3)Rr_7SQtV7L`SV)4FQ(f(dq)59@@vgb<Em4h zi`D&{-We9K8<S~7PONkq70-irkLa}>c6{ACKY%5Nh6Dd?=rI2WP|C`{`oBH$dbA|t zj#W{2`t<f;r<i(+Y=WhvxV96B8UQ@eO#ns7ierV;?_S?$&z!!$s8AsbRI74*%ADqS zJTiLoQqQM03;mFDQz>O?jy-IAHcB;5RX;UL)8yKAW%7J~UZ1|{{XXBr@byZUe;K~N zH~;Zt=P&ftV|^X8Q%}$~=J0;+52>l=a&0W%kEs{gtBKMYQlr6ghf#rtFUo18EtJO{ zbzZxwf9-Ol>9yphRLh#DrDZQQA9KgT(l#0BZ5gh31{wUH9KAd_p3nDh<mv{Vp6<xx zh8FI(9E>vnRvFv?9C`Hp9YOvvq`CJ(WjeY+roqR@FYY&oz+llifY=Odg}jS5j1>?@ z{C{>i#p#`Fr?<b*zc_sU`4PVsRy$jI$Qg7pW#@MN`F|a>PN2l3_l8V9=4ewoYAf74 z*-Jol?Jj#$CbOd}JS0n2e6kd?(p>1R<~U_=`z{w#eJGVQ&F*aKv<UI?rr>ntJ|j^t zx4d)-Ftvz0(Wj}c1|~QxveFuhyRH54-qxXA)z?6|pE`~cS7~W2Jh2F{^hv=Y31IvA zU<E|YEsp%D0;RFx<VD@{#OjIq<$%?Rhnvkr4j>+uFzbQi<PaMXO%G;)6NsmYwGoqm ziNxdeZ2$ek!A0Nz;KOnDMnVx2fVYYN0B_(w5Z-_5!T0)=C-kAc%v#L)XlY8h<WON) z?P}fj1mrO;uay+n(7RYZc3!un;u`t~u-cHGwy4~_{FT<aNMy(A-&Mv|W>scO?>4+` z4#;5yIkD+zQ7*NyEfKhJq*ekOAcS%s?T5Pu=?W+)IC<@`@u<Lc3<}t3wb@)tF$R7M zgthQ56#~+S<LZ~IM<o%l8gd~hh!9%@ni!=J`{=GQ2{>yBzFy^xvMIR!+ij;ci5)vC zKN51$T0;%VSegchoDT4mimWR5LUwjgla@^I28zDD1`{&>D3!I+F=*%tLA_6K+&z@* z0>KAnFD7%@3uFZ;ZapPLq<zW?j4dz3eV6SO(5az_KA!s5aWE6+0%bn`nA9!Mx@4r- zyA<e1z-c)<fYtsFC}bL#XJCrvhO}M)rZt#J_pP)}TWY~&E7*!6_8FveYDznRdQm{h z9=kGT0zn(<B%DOQDdlyG{^6e|5ZilsffQWf7UwV78f0Gf@)g{8Isi<ry4Fmz?6>eG zF`1nF5@ZYW#s~S_J3t5>f2?IaSHo!obI^Z1MrJcH?Ztu8$nA(nRPt2>NIapiPc=1y z;;s9yQ?#>@Rfo0k|Ee~1ZDF-xZFUA=4pK3mTtaVw#K7ob3D6kev<dB}Ac!hx)B|9T z0xnSnrxE7CItcM%2}WNL)$*0p5dovgMc#=1+`mrQWV`gEyZL~Kd&|lG6>Q`{vg0z` zBiMydBGCx86ZjSGj82cd8O)>4-m>!xWWHM;P)U0~zstxgT>5$++q~sZhWohP3*z$m zg43?meGy8l!6a&(D-pn!#pjpN`$g1c@EF{DWXJF8?D>5I%lVlkoR@oSwWHj|1qw5= zxND$pRu~C*gG})8l>*53&42B~1)u;tTU=e+&-J;P&s);WKSEj#-F<kkc#1v*LE+6D zNZ9RzL)yjh(koDlyXMARf@!HeMKhoO;QZ+ug51{U-~|K<m{Dkkt|ZE)-PbWw-mn%T zB19&x7yrtN@9^%AZkhLGNt6s(!txYuTWJEotO;~X<rKjau;?m&g5lGGG)i;R_r~Nr z$LYn*vwVbP<IA{x(FpEY#2Jm)iX<%P1CKQiW+-E??)K#v!-&KPpIhX`^cv!Qyc4+$ zzeG3XLPspxPc=Z;=fZ%+RUJZ62y}?iQ8I&p<-X<~&L6b#*U7NjlxnDHyz9V))C$P3 z_bv71YxcIy;s%09@y<>NM-)>#Y@;2=C`ySJ4Ze4o7J7PN-i0hTT&8y7go+^i%8XR) z{OLMX4$mCMohN%sfqWEU1)cF@w1)}|5O#_%8%+2^+2QXnelPMRvF!3kPZEL%`M47p zb6Uw2k~;@MB+cGjF57bg)+a}+t}E%zKT+1?fMJ)4NQ3H3Y!d*PSLH+vyXqE|9fZ_& z$6rBbWD(=lo>O1(!R9>Mt#SmyE*^!DMVK{LWWCg3E3ZMaTe`9AO5Ouk7=u*u2|ink z@Rih&3ddfbe7AzT)3hp-K+Vjv9Wm1^{VZ!R=uz-ed0pfPa~)MMP+M^o^KDpuOiTB) z3|^wNt(l!LZX;ghPjE8AnDtQPf}A2qRAPgUcEl7fW<l>kHPiPNb;wL*YdypDoFltY zz^IfK<jmqUhx}+1nP5JF2U`KMYG1KdKvB$5YSvh}(Zi@27WF*laIUF-AeLCZ0g7s9 zQcEy6TZN@+y2c8}Lhn40oF~*aNjlwN?bW2A7>CK95ATu2Sw@<m&8L_g5p_e&zfz{Y zfdS@lwR^jhVP)INlb+~Y37ms-^06fC8n9%p)XO-TO!k05wYc|3U!v*9pG>o(pSp^$ zjLN%hC$k|LZfx=-4k@Hz6lJ9=D>>2W$V75dh;2k)srg29ijxd-QxeW(RMb~{3lW)U zfAJnOT50lL)(TiO5_^D2qpoo4rzh{)v17``3XnBC(KM4Lw6A=9^RsK&wh7GOP_XwR zH3cd}zNTYUjLb$~(Q1Z2#0iwM8BSost~H_3pzvM9`%7mJ%#kE0n^1CE;<|YS37Yd+ zLGlhai)WX4wS3*iw0o!Xmu4lJahNRVP^|!UqCf=gq2B-KvU3Sa_)PQGNL&)k`R_Fo zJr}<6cnF#ZDzY^6Igf_B3pR5rRuY8`=iLUlgoYl1V-eOKdL46<%Ty3|)$__<7thjb z0c=bh3ENB5Hg=PLo0&B=ByV)WPlRZ2tjx}89r)=;I&H=iR6<YUMxrM0T;<NV=(|rB zj2nl+b0&D9_<E5~bO$*QS@F1Z57R%n2>CTs9idEc>94l14~Ve4rmwe7R+w#4IYn!2 z__Xt1!!UQbHZp0l6;@or9LvIqF)4_iB%!wTkKCf*GB$Ce{cWaC9vz(tRQgNoPVtq+ z65&3X)~rPtk{U0}KA|!T_)6KwaBZz7PgR$o=8-$OfPrW{4&=zSxvWY>>oT0RrWnM6 zUu<e8ahg*=SfL=H%ytBc)Y)iTf}O-$tmT?evXxQFmq+U9hvueu5+c9wGFQB5k<1{i znzHrhH80r~8a&}Pmz_V$no^j=wpt>+qn=C1j;5WIdg3ife?@HxcY3h<mAgy(BCDyF zD3VA{$YQ;VM^cop#4TC*rvC3Ec<FKx3V?i=ves?6dG2|DKvTR8hlPYlsIswO>GPVo z4tL{;eEFqSv#Txs5}=UIJ|A=mzIkyk0bpJmEm&`LO6XoFOPrJ$Oy|ZW$+o${LJmDG zA>u+bNtVs{_$PKrANLi&VmUKXm4pfJ-ZyT?{U1WEVV~d*e_(tO>KY=O?$v`I<V}>< zrwIIsG>I(G_A&b692vO$0w=Q_AN>H6WZ~9)U?=8x!`PnriOwobK#$2Ig$lnvJ7a{P zz5M5BoD00x-TO;$5V$8w)5T_)%8=3IJ+)m~p-EkNiac?%k6w847c;cgYTfmu4_WcQ z7B9XI>)`MkEblG8v$!VVV6sf#e^i6cCqFGe0?J`&XA><@iaf63^hA)j9;8SL%(9X7 z8;zdCLD60vzLjV8>z6GuBY!i^c!!~Ku@bfiHQWASI1+!x)c5pEGsdG5SB?(PBD#|< zR9|}FqurNrnj=QAjN>Mv;*sGtI-Bz;d<%g>65~Ah6M)2#gqNrd1C)P>w(Sc#DAPhS z2`cH!nPa`sBW0$OSZ`OmVbki>TDT|Gox}}rL?<6_axDu#!;-6uRcKgQOYPU^u$XXI z*1q{xabH5MtL}pO6r#)Mbw?zYf=##MlXctTOFWSI?5Qk(q72mQ@U%_uX^T^ZiD8zm znNK?jRiiR46%eUn?E~mG*7T;zi|V<EM<A?hFkLv1qLpDMr43fBp;G=J^cj$`9p5-% zB#@yzuz^`;ZpD8UUmu;&qtI~d-93|WB<86xa)^mj&`6}*H$l&CsGuohlD{;=^lnjC zCV;#3K||0n44#(%{dbt|D3k*m>Uu4vDV8vj$BhNqxs!z=&-)WiPaYe2Cxw`Q6Lr8R zbuYAY&ybL-M0S>t?G8EcC`m>ihUx;@_;i;ujdYLaiBR5GRE*0*GR2YK@7dZGV!%!- zEV3rzdV&}?A7NsyoS`VTJ(p5ONEF7Kyu>m$<_mZVIk!-d>ukvA;}vN!cj}n4e+3D_ zQsy08yL=VD9Yqt6D>7Zk4pDD;Ep%&`!7&Ew_5J`Nw#;1ZoqsPunwRI`U{1_AHN4f> zZKQL!XeNLKj|*kumiJiQE;KPDqR!%qA|Y91)oLOySmgTpC+N~!dNBxor+jUywa}=l zz|&Z_ky>w7qEnRht50$tjbbYnFC7@3aMv`~kA}U|j)?t<NH%%9D4ZA*OeINtKfsAr zH&Fh|LBwL?+hMs-f$sROBb7IyjN5kkY8$W!&7=oxFX2WZyx{<Djxf_HHKIT{H#IS8 z0QW&j(>Rj7akD$66O@nUFW7e2O!&p;U;`uzWNj231#`2Z<Ly{FJVaEm!=p1q(Oo6} z>{t$7j6&_zKF0J=5#s}qp2jPhIDjO(<%CUa91^pP_`UTW|7&M8N%gW*t%BYT?Aru% z>2vlo?|tjNznQ2ItWk29mu{MO*GFV-5Kl8$jXQB%ei5`TCDPmt4r0v=N|?k{CBC;@ zDR0JULL7(J2bRyTI8SNE!7qE<x9Yn)v>XvjZos$U4)h1ID0{nV1x|)j&iy<V8}Tx@ zJnvoxBUc2Ekf*F^eCd&%`1a@=1S{KGR^#MR9t-t7&v7?(mpQr2#8&MyVV+ZHWNyd7 zfPMBivj=vOLLBLec*E6&19go?MC?;eSY`Zn;x|v@{Ykr49PsX`HsFX)?bfXJf=7U= z2t2hRsFYQbU4EwOi*n(1823e??%`qPiG1A=#RiiV`s+fEUkMyFs>EMtUSA=tLw;D1 zC$_Zg<Ccj5KKGKx!N}0a(;h#EN@pa}u}&H%Y&E}{KzyJ^X)aV}ouUx7Qpojvrc@#{ z%PY9NB)W%HE!Z#0_Ja^<sJa)Td%C)3(R@d_)jipN1wMd5AXHwWB-lrF>3I?v0Da-7 zKJALQb>u#<i-0UwCW-ke&~yFx;~ham#1NBI6xHHNIBik(WkcVz%S5iBL&m@5&f1EI zxI^5UO}tIs;?<0DNRNhw4J+KSF4y21x<@f){_Qv#J4#<cz4Fg{>xz~*g?4fZh*-TT zEfB9<rzofsIBQ$00R|6fTI>D_8;9P08;9D0qL&I(S|w~Q7nfpg_d(w7x(jmw5&%9s zr<+Q&68o#^#QogHYsyZ+T)nkT#i1tOyj8TS0<X+*>y`YK@3Fk0KXXbt8uwpdc2|Pp z(2CFI-6CN>3HPYy$Ph9Yv9<68JQhu?aSMwceDAf5LB}kdX!ST)Mn?J6=Xx>P5|u8r zB&vR}-<V@>n7VwlVn4%f-Fai_zHNd@3}sB+u8GgzG3-BA9!61+v^5w+yvD03*HE{H zth|9C?h=m)4NxK~+S@}+`8%HkRm}zuQrz;kDSR~cTHd`eo>UEDRbNIH{FlH3YLLZI zw>L6)Atb9XWjCAUUzcz4IS4((xv^??5q&kSLqAcsRa>P_MnZ}w474^OZsxh}KjohA zWsYjFw~moV!+OX+a39=HwwgCX$VrZA>4S$klx{xDOD(QbZ!jwf(jP5>XcI*fD>(>l zJ+3~o*xC?rEGzAYNRu(kt|lJxxA!eDRn?tDt+!@W`4WLwI82i~R%DSE@=<hu7%bii z_vI1wiPVvThLd4ylGP=mePk#?;3o(+6dorU^nIU9MxDYA0;*MpE+bNi0naW@ZNnPg z*C&A?^+5J6;~kTI<e(~x3AgshM=_z776>Cl^=maWy|Ft{Yc5Rh9j{`SuERd!)|hGM zn2(%kd&7CX8>3#2>~+IWM`~F;kV#}8*uPdE#s5+wa`wpgk$Ae?b)Yvgy*)7<ZHX15 z5g@Z+=Lu{TsCZ`3Og=6KcSq<*Yrh+$Ps2BQW4!W=oK12E504>!U-d}veO_VVyEE9t zW%nz@wnwKcikX4%O>=4At6wUnWrKcg#op!s8s*N?UgRs(Ajcd86;M(8CV6yL60HYu zJK77Yy1cpjGxU?ftehGO*9=<bzEoIf@%duZ2h@p|TS4#U?-zA>NWLlFDyU&|n9x2M zY~Y>*BX|33UHy}WH@qJCVs0(W;z6w|pfu2upYt;1U#=S+9&1hw>Tt};ns}?+cL~^z z13qqbREi=8lj{ZcH>U!6_<X9uccF5RcLsV~h1XrT1a}%}y|Eywx3WC{ZoZbcjNo3Z zc+z~;zEPg56zkrY=S0g11x{E}@7~ODiMI#dYVYFsb*|_iWsC)$bqvGaT$pjhcyK$p zW{@+9;6cT>Lv9MiLlq%BIqb%`95=B#V7iSY*6t_wUkcN)aetRW>1k>T2IUL(16f<z zkrvUqs8$Bdk)|1!?E`TzP&_QqB(70qWfdd(|AtW<?jVI;NHvPAHuu*cRYKuHS$T3~ z9yX+E-GE=><LH0h5o9~=$BPS>evahlYCCWq52C_zYhkV9Jn^xVsPBz(J46L!3cnNd z^W}Wf!-*8n{g+)J=YIz6GBYu-{Z9vo70v&ztLyx3gCuAVD3t~hAwC4@8iY2{O2ZWa zv$gT=_VgdFD)TaZ7K>`v-5zJrsBv4VG{QJFHbPS;3)VM-_0J{!7~uQ%S+&&ER>t4= zw5hn-*g;EU*QZx~RWD6h)kK#%lD6`>cm43P^l(!*>TdUE*nseme9tea?|$F90ZsSe zedx2TPL6&j@a9*L|9B<y=n&KgI<pnWf?{)^W+Bx)4Ph0d^(bvju8g1d-=^{Q;r@}| z?`MB(Y^1c0=J(_7ek@P6&s&gnmBx>I<9L@GTQ#dYXnjYJIqwAASEd0%+M&UATXDm& zuyW~wJ&)bWQN3Ctril_%ZR>0Qp5+=FK3z7~BVFB-C&$i~cbDh;i!^tZos?6qSiJL} z*}Q+X+0D?AjKP7Enayu7qevi3sdsp0dg}1}WoHwFECv@di-oPqr+M2(Nx_JpX7^UG zsgnYb#7}PkRWEO6fd5|?OX|$v`IY0_7v9hN_Cz&ctm%H3>HD+sH&)^{8=qFSC{}od zG5&B;!wTl55rs#C18c=wGpAV^>@Rq*D<j^0<DgwzJg<-UGia}^^dPpyHrrTmJni*$ z!yGyMWPY;RVT{W^^X^%Zdv<){0OTfCP8+3`QQG71!Z0<ixv_=e3lAf!<5WscRe}y4 zhXd<_SMCNDCZC-349?@ULIm^FDX~!(-W;(R^W4*{P6G2BvtAJyx#%nne=eEmERI}c zHbyQA=Y15gxTvfvzDMS??-Km^>u-CJdUw^$bv|eDVz%{*G=iR7MSlaI17*s=p9oSq z2bYbMbZ8_7Gz8dIuD#Ikzt$9gM%4ubNKds5CR-^i>BOQc2ZppKJ%mkYpod{cgHq?B zm@m<)+gzcs(G(})T;>N)r!o;`2u;xy6m2L$9l|ClKZK@B1I^&1vxMW1a7fyr!ZEy0 zxUqp|Y)B^qDYY6$|H+fRM1%^&BL@r;h5=&WVj(WD5|bvl+hJCJBE!D;<9ZJYGISII z5Jd<|@MMwj4nY`WR5Wo_W^b0gaqx05FYQLSb3kZDARv&Sq{Gabm~bcgVIeq3PGbM8 zdLc4sEPaiy=|Mbsei#J#r}W^&q@%<}N<slO=r7XK#5+btY=RJiUxEh0oMT!}M_hOH zKoBq{G6EEE;W3C7GiCYklOEtA2`#uCe;YjQB>=n=Xn6x;+drf2Flgp7M+!$c6yTw* z3}VxmNKvfP(Ge39fy~(`1dd2+?Kfslxvk?1sqY!AcooPH1cGt$t>F@F*{KA{GZpP5 ze1X-PfgyGS+IW&Kk7zegW&ssMOvc$iempT<qithKc8*N6Jh=y08B+!Kq4LRI?!j}V zmJTEbYUzXTG4ZCx36RjN0GV)Pa)AO1d}41b02|{6Z{EwOS1jF(OdN_B@7Nw#zkWP3 zU9LZ)N_O{*eB>gVGHkWcqv@>mS#~ED%O~Tz#u-_z8LX^<A?#`dH(`0bz~<%pKU)U( z9>XI*zX{v5{lDSuBB9y{TKy391%tog`A~CMPjc{P_^|$d-m&;$dDG;JP}VkaE98y3 zmWKqeAeo?iM#zXqB)z9e0$#^kWX5pCSdIq?ZqbsH5mhl_yBP`JL#`nvztaQ{g4UN; znyCIXNja;1@hNGY)aGfA)_SObo%Ii;tf1c59<)m6yDYE<S>}LsY8ylu`9JN0s**d1 zHun++axWFJZZ>SHM3`yJT8ATG(N^^H0Rl?`s>=nA0t>F+j~4t5ZT8zl#Ls7B+pczZ zuCx@4mO&uSYqUC~hRo~MQhWpG#i1V#oidfUjs~J?)_5%m!PbRAor^B=&t%zCk>j#@ zg}2L(l%HqNIePt$hs^d>Y;{GZB4zNW^%1iRt5C1bfSSOb!cg4@32>z7IVS4yJ8K9f zcC|J43&gxr1^_O~%fR?|5mIWjyL_zM5yKb!2g%Rmd}_5qXXM)5OKSR?3oR;}Px1@- z?z7EWxvn|(_^<N#Gj=1ueH}+a-dSA5tkkb_dh>1i3#I!f-_xir^72JsBYM06iH_*z zgTUfb&8UC1Xh?c#ejI0Rv?KxOLHkQI#Lg1vcFV}$V_t}8rL6Ihd>+%iU_v1g&5bvp z>}4MWAlPYam|Qi(V!#K-dF6AEl06_%*Yn!bi2RH9A+RV5+u@8b_LKpDaiHylivT$` zd^SS9SEw<!#K5g1&ASJe3CBj8$q*joraB57z!pIiyHS)wiqVy!56ViW1a8kg^B%I) zg%ayUJf8b3@ju+Z<(w*qy>Xe&b5%uMNvCoLpDE0gU8Jik;4k$Wd^U%)wJi)<PSJB` zvq{WWQhMV$qRQm>M6m_|eWDhdVZ^x}db7zEDNhr}YCj!bswPbFdlzoG?KomM@#VF> z(aY-TlE|8Zm$WH;cc0+xeaq=>@+^a0iPJtIA55cuQ?Wz-WuDK=`?MvcJ7wxxB(;{E zS6XQuzUJdjfGe~t4TUJSQ7I7jO_goMoJOT;*(NlJ6ozsI15eye6Xo#F$Rzif)Zf>z zEh|?SJezDXae-ZOb1f!ym4U3Z5frE5ca`0~NnUzAVlCVejK$KB;4{ZCOuFw7NDmo$ za~+Q(<~)5zvndudhi&Q3CFEQj^6tu-#hh0k2uzgU-BGzc21Wj9zsch_Zun<x?UX}| z;juy7aZxf*2RA8}v_*M;O2K>8Ic3GG6;~ZrpXF>G(j-i;X#R<BT?x;duf=Uj7zVvp z+2%IX-(V+3-7Y%=vheYQCTDnDDO(2V>CK~i56%!`w%9JitZ-xy6MSr|mAkO=RI@59 zRE)_O4LCs-Efq2ldR7@d@q4zO^zS2{MBiF%DU}FJcVE5hmGiL`2U4@*p(9g=<NioA zZ;wRgdf|DYL$#1~O(GX&?F^t{^w)9V4!A#KHI}T(*y!{oV#BJH1pyo9+t;!xHQw|E zx)f{UHY({`lD8~kd4YMJPL1GpwdP|riSBF~(VL?VqJ@8Am_4si_HnC}(2;tc>J+Ck zeuVc6^3&9D+MxTEUolQWT=Yn#81PEkUBmKPF@iA-#Q1hWaa)*Lg%hP+?hN3yY^G0u zaoZ^ASDbcE$8TA`y{~_zGg__OhGCTbmMa3oYT3O(*KVV`^*yhtODzgF<+Q^i7Sr}@ zc!WQT;0zlCfJ<6TZg_YHro-IXTj6R=L<C?U8jZ(@2O5A|cj8C8TRe&N*{8+J6mOq^ zA2ku6c!RDIC6F!k@IFEVH_E3RgxPGQcew)uGSnsHGH>gfKyF7xOHHz3XV)fFW#i=P zX)nLhCMr6#EJ`z!du#wOS0_Byx7}1wxP-8L`D99@Yv&yiprK8tm1Xe^Tq8T*>^Y0r zJmV3>vDzy({2>Q{0&CI<!YnJrNVVdcC=q#ht0Lh-!X#($QC%?QWUAwcEKKOn<S}{e zh`QC~bFI?6WW71%NTBlmM2YYf>pE~*s(uUB)EOS%$k2U1r%3M13xZj}Ilf%+BzYK< zzswKp;z3E1MMKB&LbPTi_m7p-6M$G0s#Oo*D@<=XXw-TX?;6`m7`KD&B&MDzs`aAg zjcor=^;7S0I79U`D|YHlU5eNWU+Dy=9$XO_So!<Nn*t^@K;a7Ap3GYuu&XqIE^_m@ z#^3AMq-7I}(F-%F(oQ4{gW_C+1v}C__Ub`T*KG>ax8SwOQ|oc<UsZQ%`d0R5+b|0R zhsPd%qKn6FNPB#b%T_UV6pXi%@Cgqzve>0t7Su4&KT2Ng_vs{OAx`jeI_ON!%Ob}O z=J1OzJ8f3-AO%qdWSbkc#;_Fj#l^4$d4jFN_ST|%D!4DVeEWlg*>;Kg@vFBywjI=k z^65r&Z!&x+z<K4K#m2SaR%Ita0yHa7luXg<u({3QHDccZFqXa;fW6f&%mQ>?Pzrms z1&W}dNac42%HQiGW1Jv#2b2f0f7up&xi1<G;6zP(TrV(WSE&~`MyI>1>257Dqzc-b zT|cX#q}7M12@j}M7vc}{vU?pg9^|&YV8&>J@D+zb*CsAtBmJs_XHC=4vf?f7$=`2Q z9hBa)fLo|NFPN*sot`l_*?GyHQS^p87q~XszR8@6vVu0IDZe|=RQ7Lb8aM5#516*e zfTkZ;7iB!-XstSvkN!f|U&NqEV3ZppObZQqFmtXuJiyO<ZA@)eOBnGEG;E72T3cMl z7MKBsrTfpCeMx-DXN5?Cg4G{pTP*)fTVY!Op8_7tA0jVG{UyL#U)*r82ftpQmev21 zG#rd<|6y-nVdwbYBu&Xbdjnn@Vvk>6Aw8!rZes^)kUqdfDlEqMK!j}|+{CcfKS|?s zw>#%0ik5YCoYep;n4V!vH=?OaTg|rQmXy)ko$;}BK+n8E8Ehg;nCbH13&%&s&g<9t zZSnE6^jmuC`+h37`+LW;@l3ze*ZY1GhHuAj#P>5ZkbaI%SMK-qJ(b0}v}^17F*ozE zLDt4$wiO7NHwq57X>u9UV9+>)qZDg(;A!EyP_vM^BDXqi+CceEN`Hty*JhyI*I)l2 zF(k0~c<syi<lFJ_jVSXvm9!OB^XW6jZVIF^v>q_-5EL+(P=8Nfy@7AuHc4zLrkQKE zW>m+H!O==?y|+I8qU*X=NHo@)*K31ib3z*KIwf~@__T5j{6tLB7m7ohJS*GP$1lYH z>%-g>R;Y1Skm1{-!TxD%bksDVdFCnM;iAieDU5EUbLWv`oh~y;H)7JD^ba=xNs7s` z&MatKsEg&|>w?i~<1`S<G}4BlF=|O}8{$aAaUGStw9amb(h%f*OTbl?n9vX52pidG z)-)>n6j%_TMlC0|Ab8<JSW%i{$5!F((6-O7EPMUG;n?2z<5-j@nY_s2iML*ZY<xRj zlVX__IoQPFnc|(EvT)HjlD@sL(KwWN7@P<^437Ee&@a(AM>|U_;opkz6|cYRPd`Wr z{3y@5G$?=T$Vk)3+0F1BLm5TRm~{njzY_~}$oR`pVw(6qEi_Dx8pkL&f*Hu+VI`@% zK}<<b_ZfMjNoN<p;c442FQ$F;%_o3515O5<66G8;r@Ogm(1PxlpcF<{y!z<819Y}7 zY#`hd?y}~{$Z1TOvn6CPtLT%y@OosRwSmzXHfo{elFYssCg@lQ01_rR`{mJSQW-H< zi9^9uo>w&=`W^F3G}iR@a|li_R=W?}!qD@1xR5Pc3_^b$7ChC7r#Wc}>!eX8gXQWs zP@U@Q-N5Le`wm4xGzNk|?xxE|_KOD|M8Tjmstx;(1)|1kbE6FK!Aaru0gaK9<lF`K zARn>xpD;N9mM8nuVN{{9?9uasgVIgml^LK(gGTzD>w&Jo^9TgeaAQ*iHzFNowa}eF z2u$#G;H-d{AFottV9%t|8)(Sr5bH%PfW#YKfO-Wln!p1M7lAA^t6|h^aMI6Bts2tV zckV|za$`7b0v1x={@};;AOey+FxF6mqzVUYT&o0LttL|fjboQX$uJ2Vy0`+YoY5SB zhI>5&4uWaF^zrY0D12Y}u1HITqR+K4fE#+CuwF?9?`>Q1xU(lh7#R@+pIMS5_=Dot z55f_&=ZZ-D4FNa>Y&n;_%6sh&%<jbG4fuxR_2HHIzMX4xSQgXkyFkVLb_zAm8vkJb zmK2AxKESrP5M5njum4q~BQE>U-@i;kc+J8`gwhUcW7Y4qLwxLk&)Dtl`+kQ;FDS(H z+$($C6`Hb&wsBV%3J&Vw6!`n}v-GrI7ao8K-skc0_EWXl^;#$J1fJCn0B_`v7bb%M zhZz@xaE$$n`7>75^@zFIMWRKWLkBE`2r^JjOn@&|=1h0VFn=hJFmJy;)pPupdKGLv z6Ttex?(*j4-1a?N`7URH@z_J6_^z!9hy#=z8DNHY3@{OsA``~}heyE|JRTk0S}k3% z4Q-Ud!_yzv$r^+}?6Bc1F=D3ww(}yE`wqJa7BSbX&u1>Dv&FvLRt6JRyVB^7j~*vh zVj}GpQcX~lLqC51BP6;ZSR6v`fr$z?&W@oOG+40cI$%$J^WVQ1h-mYrUIum-F;bD9 zC}_Mxx|W5d`o9^p$`ixk^6-V`rS-<u>Ta+c_lZa?pqhl8(D%vY#ZpgDC>iv3&N0Qm z&^)9u7+vVv0DLrT)k@J26@d|ImNvwNKIYKkH|0e~RHBu0dtyarO>SFR4+Wa{Zg;S< zn%4kMB7IehD=GGdm{X7UHthJR`JaNE$I~3P0_B87@Ll8H<3)-hwF$E=y!%wzdDP23 zAn<QqMJgn@n>ew@Qu$6}O8A)if@69|lte($!OR}xN(<h{SS8(i5n+Eq_!a|})VclT z<z=AaHT@MTUAcLAU6Q@EEB0Z-{vt29Ii{Y{8zt8nT3l0}?`ewA{2YBy8D*@s@BUbB z(aYHbZA2)_qnzl980q976{qG^Q)nZ2EJ9V0gh1i;o%<DaUc^Y$$3QQ0-ds?-x{IxW z#~nW~F~h|m10~?PNz$*8kSFVHMa^ZRuCB~6_7|N5pCO;W89W;<Jjo=7m|G{!0%OC2 zAy&qPD<k3)oe7<v0c8gX(nND`<z+{+=|1IK=8ao%u5qQs-`Dx?L{>0`@lg0)#jfX2 zBd+xO49HlvJ4)R(@hR!lb&AqbG;v$(LoSFU(0A`+@NE>~`nU`5@QI!xw$MZH&TXSy zAYep*fD^l!IW)5!#9Uae6iB61omOD+tb@+UJJ=isW+&IGQK;IeawBn9b5qJqYI8b> zwmQ_B>&;0&wB8rLBI3A&;QU!nU}n*Au%nVK|E50y-3=rHvSbNQk7t>c(2XC{1p!^B zChXB-aO|UgmUXoxuf)(ZBJ!bDFE<JS9;TQz=2E9g^e!(i{HecxryWK7p43gQbAOA3 ze^~DJ35S+$Y;u8npW8>tx>ln>nD*=x7v3&ovw7kb0SC7+Zj{Zv;V`jh5`-X!AbeST zQ;>gea%*nK!iV@sTdJ%<EC_ErwzwsqLMCEmQ6XC4Jz?Lr^?K>eAh-7Y!;l|Wlhqcu zLJN_TmHXxvqFaFQA)ZkPRsbPE!!R7!lT$Qms-O)hge~G$uGT3%Bm5q0055j)g2sL7 z_t$iz>2cU(H&^^wGOGV?^+nzXMp-m!_tKfk-n<d77NQ?5BX9{k%df+4kVHlWlCixy zu7rblNShczpil@sYihg_DlRcy1wP6XWoHCd@|}X&OK!)5h_}$nVi3PMx2wYm8RV$D z3+jDO85f%BYP<TP;;x9Z3cXShl~_65oi(h%@xQ{n=UdiXN@h=xwe(fc1+<1d@mAtg zht9`*ix4J9$s*;8@~eW363?+z*7-<HRgGCu4<Z%hPX%kcuBy3(am_=S1WD`?>ecs5 z)SQRdpQ2Hk6jjHZ&ofFAAf7ZVqGQm42q+sTZ^tvT-V+R~`reKSvf?QDeUp6_^lyyy z<%B8)l(t!a86oudD(En*J3BZ}^ujexEGTI2HUe`905DQY?uBfU{_=w~=gNfwB89a4 z5d>Bpz$PwD7_EQ7)bGOKiUMOQ2>&*H|6*qkT>w;Yjoii2D<p%l(2^ci1qjI{UDDus ztPP!y-{j<x^egpM0y=BxBhHgV$|lp*H0*V9e=vyX`S>!!e0vzJAt{=Rq;|hl(9elm z%PUEs<bMhUC`VJ@FS1Hus2nl*%Ox}fok}Og6qHVtEiNb6v28A^#uD!vUDKFVFHp)z zFL>q2<l2+4^2#lz2Jy`d5Lc*^slQNOc$}0&BQG3x7&ob13Zkx}(A|zs98_wMTHEyw z5(*;^=&}4p;IG?d9<hztrV;F^{2kEH4YDwwt6ZX@nwb_SV4i7H>PAhct&b^Ja`@C= z$~A1ON&(#`DLzczWr$3}3l^2Xqs8W#biXi<YgQ&RuLu9#`L?|YS=Fu7oCUGUKKfau z&?-=x%T;CzTX<_6P^qHq>X<V@M4+-*s6sT~DZ2}vEmyl8s#f75=~tR`B)x8hrBQko zScPsxVFEviL~_~#F19yL@-wBCYAc>mB=B(nyWcMJG1gw%wTD1g0Y=tT6&<3`-J8q& zC2&S3D$g=PKm2Jj*1r4fT;df};p>DXZ_$)#9gbCmIVvkXIS~s$abPE6i`7}wLzq=e zX;n7xLTi(-85bIV(0ZjU+?5>XNdBxY^|wd&(KtukT2{S;*pk_s)TWBGI#6+yc9^h7 zMgUB%gXcEQE)Tb7*UMc@QdTaEV|yye#2;s0qcldzD+aX~HHeAV+tXRl4ikkqQ!*`o z;@tff?)hsqV6vAOP|F^d?foCdzA;9$pxd%-+qZ4owr$(CZQIsu+qTWywrx*;FEhy` zZ<2ZEM<r)h)lTL7IH_8-_FC;mH1YWmH6LpJMgw%?<}8qaU#jGU2r3>X4*OWALMd7S z-0&9JXd;uZv?Pm;0b{Ieqf{4e_~Zobv1?rV&hwWfzq%kC<BZoGRT`Tz1%*jw4pt{5 zQrfi#o@grHz)8bu-~Ev$13tXkcMf;pkhG_1N)yW)9L4zUB4nVpF)Rufxau^5E_aUr zscD*_w2_!;OIj9=;y#Cp`%QDo)ng<yy^$L?B&*cP;s9!TqLIKA>IF3orL8`HyJBnR ztIWFseKo`yBkt2o@pT;P*6UMqF!jeyzqz%lHp#0>7}aLB$pUR$r6?<-sxHpeVd*Dd zTLeY4z&ws*Qu5TPq5zN1(3o>M(40;3VIo%2N<o*uI)$y{AI!1F4Hf=CF%4fyS@~?2 zrirLLiS^LaBT`$eHV%71{7KJG>$c($2RbJ1pV|$x49wwJ>Gsf!QfXcPm}{$&M~+rS zOQcF~Xavb<aDvRF6daFaY@OX^E=QC>u|#ZP(LQ_N+4tc}0@>NTajzbx$0l)N9%&0F zEH-#K^WZ?Q=D>)M2PAS^7*yH&o9qA^F+%d_vV^KPGeWfhr8Y`cYKn_RK9Me#mJj*G zpWZADmqv#Ox-=;@N6ZW50>NAujWS7MUQpT@TvFU&mGw<otI*R4hi!V1SuHtt*x}J} z*CE5`J1j^sdx|w`CDc=ZZs56_$*ZCRUM;QHDwXG0uuP6s8}Mj(UGS}2)WBwL4}5Hc z74jOxS)1m0UihflmRfO9B2}5*H0jq(Tmf2PS~<8Z(RibZi1-<Q9;r*7vf!krmY7_0 zMMv<qow{)(opMFA6CFvivAM!r5aW6{;L36L`fDu_fdlgFt`6AoVsEETsf^;yH$`2- z86$*u6L+0y+^8p~y3YJffJ-&`cnQS2Fwa8Qm53KN!_zd{2z=A0K*O>?XNR7k`CMIc z5e2ba5CQ)bSuOOJIW(V~)`1aApH(Iwm;A-Q-z0cA_K0n{@m>wO&yqn|s<XH*R;}ad zUH%L2lN?KdYxYj@T5)yb?OIYyP57L=h}6FK`aQ9y{E};5rsze$3uND$xbXIrp3zy+ zrMX6jXgSbzE?wb?ojzB8BSE{9r~(6S3z72~>$oOhT)2seK*g?a379@$KuWQ&j$rxm z`&wlHg4oC<JJo8E8g@B&pH(!6NuVrxg9D{KEWubD)n2Px1=08zVF-p&W4TvL&&`U& zNXDv!NLKaYrguVGCP6p{Zj-zbr9&=RYxU{{ZFha9N9yWAf(<Vx<d;ogIwagvl8ElM zy`bv;G#=Z6%zKF^WQWVyJcsUbiWfAWcFmBM*Ag5XtC6^LUf$G4iyP)?MPr~zwR!Wt zNxa5eRrl0U5X6!1gAL-sliG|8@ikO#TPScRZgb&LNgs2=Frz964BD|+|877bK`d8~ zHOs<SBH6swXf?;R0ku;+RZf6kz;oH`(G1OKV@gM%3FV8OQ_WEnArW%}s_8Ho@GVAM zIr_y}<T0hmj^=rHbl4T=UWvaj(V+=UQPF&n>m%|&@D|(iUX$#WI-dfT`@LWg?t#?= zTd&M?#rUj}MnUtdw(PtNJ$J=>;r{c)Ux-Bj#})$L0OAZvbkRSG`f3R9FN6-GCNnG@ zTRo^2;})_%H_e)y9CRaW_rd9cYbA@oTf(3BEO-ex4<D)d)?sj}7N`!|Gh=R}OS;!P zNUo=6Wa%C;00Nsv`qduHXYy6~5Clmcy1y*sRlH<bQR6n`d$GB$hLW$}>kU#~kne_P zKafAZ`jIfv!u&2x?H&+-2l?9+9F+GY@df8Z|NUMm4ftZKJu)|~9*d5<XL8D139n+h z7u<WsE?_P{nwdUdZU)cQ^6v-&KU`Wj7m1`NvY@XxdN9UpyPmnfl9&WCcT^d5sbn6R zA9!B9^0fD8))jQsa<pizMblZL`06UUq?L}}4cAKW1nSTcY@6nVyTq>?t)X{zP@L)< z{}Wb0PxulYlxuGmy=FShap9MuCBL;YN47e9)eHDE?hR<!)c{LURY2lTSL_DX_j`WD zuAy2ZRu=Fq-KOrSPLpu;sm#XZXF#uSh+KOI|CO{^Z&5kTze4yJrK6>a3{M`8_j+C; zK5Y(Oz%-2!^A?u{i1{tY)@tGb8@NzxD+M7*c$wFY=}S9Mo8xElFwnr~u(;P<guXA- zo`LC0%3R+RJAGakdE3&T{fpt+jaAy(+f{qfHjfLCjWqk^Y$*m2NuQ^(W1N9cv0;Yd zInuffOdGSV&F-q0dIxHNpE6*PDVUaA9SO3JIH~8-#mKGUM<{OCRS!idn`&k)zADk_ zk|FKYqvk)g`I#GEe9CMOI{y#&i|N0^U##@>jQ^t>{bp^6IMQ~9?$z2?T3*#iE!#kO z|Bf;*06@;Q>kWSJztl0t`XCy-uQwOn>gmR|DkTZ<%U>p>NibkRh;(SC?w_v^aW{Ft z;;Dle0|z%<d+0xRUyEgSa=ovaWuu%`N|_S}8+mvNnnR-<a1^BuK8G%2?T4?g&x;3P zdLi+13KRs<$lpKFy=O-pX{d7dpZA@1y&m^?hPt5+F;1R`7U`3Wwarl_cIp##!4?r= z_4j1Y-T5~S`a|JAeCwxoM;!OOe|H;qZ63eblLRr3C)w<G&Fp_?V;pnil}GIgem4CX zEYn+{A90C>pR%Q1%>Gl$$MdyuP}ci(b1>Tb^KIw%J$XS?)9d}Y7svN~R4e!6)F{rt z?F(J{{h~xIl<hRZaTv_<{<k+F40DrI;((~sAam6sqy6+DzN|}{f%*t>5J55fBynX) zuZ!2^>K|N3t``<(qHbO;T^6t2^S8Iy;=_@2ZfC)U!w1<OU_(a>Zo(G;ZVHdV7wWq; zS<}T)Y-VoiYS~50DzG!o2J(tSm6=zk>#CGU?AO~}nav{1+WjW~{m%=+@Gr{%;0>d` zY}6$Zq2qN;=LhcoO;65%9H9w<119drE7F79DVucLYX~BQdFCQ9N}MsX6yZUA<p^<< zV9F}DEP3B(;3n{@JM=UB0iZo+B9Y=iNSENkA?I#{TUrTf4O5<wFck8}EIK+NmEaIT zN&P>rb*7K>vw%F(gXxahX&Czl?M3B9DL_k!ONbwvh|7wTWY{V+?U!{$6(uk2WR)bZ z?L?Jj={_yemlD3)$Srqw?Il%Z84K+U4Q1_Rl}E;-W4VW`Ww8l7!?;9Tfn1`lkA;J& z30obl%r29@6u+)@Ki*;WuL8qd0-<Gf)E3#P;G8rjn)nXMC&}ezM&eY5RWKHTRiPf) zf7}rsv`54{+2J71yP}DT(Q;^{bkWO?F$Lp9DW(8TUs4XFEpkS>_8swnTql}Pe8`G9 z6g$kg)dw0<8N(jM*DBWp5k+~p(O}|uB7FvOa1CYz?zu-8_vW)#JaP>1+vFsNe1jb% z-0PAZVx>x_(+$R;s>Xp5Ef$mlc_yj2vcT3*)kg_$4!iQnE@^G|O7v~lT!}GPlANec zt%q(oiYZE?Edqxi@r`oVH8AH~a?=ng0q;9x-HixLfZ+LO(}CR4khMS%_zkdDQQ1w9 zXoIqhKvWIPFu(zb16Lrek~mUaH0IaG1e|h#)Pa#<K@|tE3WNX@86^T@hJiPOPR-JN zoWbDg3}EtMq7oPmniQ1+a3PiO(EZ88g{Yk<=eX)F=gcNEC)oE4(*bQ$K{dlFG5g4- z9H9~{nfwPpNJ1Hi>_z>#t0u*LplqTzW|9A7PioYb5ji^-`<BLpor3`76Q_7+tZ-Bn zRjgmlM?Zm)OF3Zy0u-pM5+V<A2I5I0S@puG15c0*wS9fPFSS_i*m`vr7kk~lGsDGS z0R$!ypp^CauR_z~t+wJ4!|P*U$cZl|g_MlM4n0Fiu_b_X^9eeW0W_ozJ^M~lRVh7) zO6hY6O6f@{eSAFqwQHVVefAU)^U6c8(Q0^>=)~XwZ#lZKuxwvnSgoEq>Uhky>>ud; z<*o63qss3tfID=3Y6CtvMWqjm0P3?lD2STpp~f8pc_OK<enxq~ddd4PPENt{2x&iW z_2n`683mv-&O;;80eAd5%I!e<8TkNx(fUGUwwV#r?3SH&KBnv@>_+w=eIehOSnk~8 zK=J41m)%?4)W-_UMj7>;V6N{|X|0xFR97+H>3P$fMH^UT0A%Xh%N|Ge6!Sex-OQ9@ z2pqWcu;E^Ld*~ngcj+s|7WIo$@U1cVi03)w$PoPD``8?+9)AXp9Y6{1^-#~V-u}Ze z{N1km*^66y()J!s8%zjOw+~N#XF#*a+&N1ry=OS`rUuA5!O6<j)DUI7C{q&e-Mqpn z(?e&MaWH|_MS6h#7%l?4fvvqi^dfS}4hn@VvC2gnK0w$#sL<~INre4GyR}>Wr%v8n zec*&H-=f%y<|<o)F#o+2G82OQ1V<FAm`Q1Cn@S+a12~XkEdiX@6!Bk&y&Dk7n%u8< zi>E^XCPNVx)~yIBnXk^tURK?Gku6sSDlkNcf}3F6w&CXEm<_}c>=($VKR{pfYh<we zx5ih~MQNI!4q<}Z25@%#1-XxBSrIG4nsEM>UKYCm%o<(Cs?X$?mPk><m!z5n-_4wg zRq+eE!5#d=_s^UPzoXO;60RtbT!^kM$!bSK$(Yiz^n}B_{10IQB>fGv{rfCRh7Ow< z;Q@4WrY;hb30L<u?mC5SpR8-*DFQkWI@5gWy>QA~wMC#+Cz!ua8{O6vFzQH&NyQMC z2ku_$3dNy8#-1{+*bo*_^x?|Dqmmnor<sBCzH(txzOs@bzjSN|PYcDV;`#R;hH)?5 z@OGfh#}f|I5P$j|9g^6qFT`pUAF}?H=UIrt7!9*z%jl5z#Fkcf3C$RA98jk;LY75s zb)=i`eeOuO56ZHH@A6rXeaP2#{;W)ga4~LFljmE`!-jF$f*aM_RvR9H8|LHdS7^H| z;vDfUP2Xg5pI?ZvC0hW4u_lV5!6A4tECsl5gzD=O=9ZlVxY(l-ZMbQf;%F>B)*i~x z$EV*asr|sLr>23Ul)z0`jc}g)%n<9p4vc-5)6(@|cy`2;TYyo%RBZ#JAcdQyKer3q zOt((%KSoQs1`Z&k`B#jafrAkHGEF_;9t3^ySoTWqzA6Q27r5hqe|?q4v{-jND(}UH z91$c2uySVpc~c{D1uac?XnW$$UBp);$*NS7A*301Y@u)fTwg1y-|8X|MAiEbS*R}r zjzyRCzvHO>XVZW^nl#=AK;A$G%{3~g;cZA9i<U0EMH5QFjfK7*kf&#O{MZs<x{(d# zA+x<Douvz4arNycfu|OHfDl)Ud=2qO1hgy6-sbFCsV0`EJxKYAJ14fM`f`p9AB2&V zr~xbv_^RRLhr>e>*{~oSr)E@_2c6<Nb!L&ikkga2)meo0SZ5<Ud^;F{638uE25T3D zz}17m(_RxXE9T93dvlbN)h*#ro{qgU4^W|&Lv7<z*0|3QaiMpEcooL^3FW!nPp8C6 zpvI8+-SJ?crKxX;(1w{mW;&!tRpMl2EKe_Wd|JUpLx=9nl&_=tns8DQZ?}5xVffG+ zxG|XocpS+`Vds2l9u0eOm_3%3=WT_f^0AiHbLXT{!3Q!<cZtfQ7F|$C8(&AfS;j0B zBfwR-8L{TYr2-72%>u<F5`bm_1q!TO9r;&N*+q^qKE91mk*IDsg<EcxtO4#hSN!j& z0|=-cLrw+YHW0!ZZQT#iWzP7jXe%HDzK!sjM5B3qwPijunLE9Rh1(%9AeaCIQ~;a{ z*bRgxS|3#^sxp*;=do;MpxfAE+w);AA)ENsbMZThwbovG(|T)~C1jGrRhpvePC#nI zyzHD~^IOZ{Uqox}Brh-YMCt>7CeN@1f|U*VK(B>=15_*(Bm#EKDPzTudM;1RIx%ss z+T|?xy6A>h#OXUm=}R*4H8#F@Q%q2q@@hg!qGq#A=s;THv-mH&6IM4Z)N1>I#K{yC z4lFCJ>cv+<VjK80WDfSkRba$12$bu{p<}^>^b$CP&?rQQHiH`uy5Pi%28RiALNK@z zj#)}?v_jikySmZP;qvi&gBx6-AVc}_YK5epK|uag#@0wcbl_0>b(3ZDWcGM-vdoFn z3s>Z?j6P}<`5>SLM^P@Wcr{W7fz;}{Wyq|GBJOqIl)p!zZ%_y}8N@^tWpZW&8;G29 zofU<t1n7!_78;A)`&|ds2pD9xiYfVYP{T#?<<9G-NMe_-9cz#xQzg7IL0y2^$&NSu z!uz3OY-W9Zp>AGlnu;3ZM-J(^^kxbv2a5Nlu%22()4jOSu?t*>OVFVe)=uUK@}tyR z6%Op)7L3k9dljGM?i25t(X?FHO!DfPAWm$xh)$KV32SyIP#7wflu8xM45XXFf7cS^ zturY~aOB?u$JPJ-9?kq!)~^&-oR}8M6v^~vX}{LSWWrl%VL_%5x9H1yKA0QxdYZSy znskEF5e?o@E62xi9F*d>l#ek9Tj?E~q3JYmEGhk^0muMpC@Y;96qw&k9tm#2mhBng z4EeI>R0d!r5Wosapn)-QZ26Ik^N#}x7FMTNFrvorP3DY|<uX=X+!Y$|yYLOunIW4M z6z5hLSzaQCx=)2iT_QGSsv@c>6Q<l>_=gQoy9_T015=ynPY!?n;=84?oc*<rnLy<b z#iipFLYE5MCCAh`MuPd{G<$++yvUxobO>c_`^$JC+wY}RfG;IYF-wCh{sY4!Fc75q zie;(`J=HZfZ*2?ZEk&U&S7uTB3T-qo(iaC3n?3@xxFW<;8si;>(Wau7&zmK}A>^81 z`Iil3nv#wznA_*_W{PEERXNlII~A<*PPwHwR(@^)lC%DjoI3A!I<rS??P{mK#j`tz z4oQzGtro*2P~D?SQ!NC={4<@ot@3JVf41%pocT^bm!rr(|8m#9$K5t<Kr~%%ktR~D zJHB7&M_gcUx&FP%F})Y{x_w%xr23Gktfb*KBvs3bcA5QH*@WYSb~=@pT2T+`LP&H0 z1ohdj02K8CJRDKTRWBC+3Irckpm5-t!fYWyk(8?3p<)~27;3x2xh_J1pEpk~RFSzX zz?Jjk^c#LwfOR&YZ6ryBevl6(CuvFPezZNJvLG3aXNg%Vm|!KNg|mi*xE!SSkS<>o z`qEqmE?nU`B>a$IJY&pbThy%qIr@T|gj@!Fj(tr3stloJ312Y7IM>vu6NyQGS|UID zy+=NWVUopCreAM9j4F36sLCq)V|Gg)uc0xK8=9uAbtd~4=dWlDywyVA(l<?0T}C*s z_F-3I?w0#JGpohPbQb$6HM@C2LJbEY=oAv=s55v4(U$hdKYg2J9kp2VjYj$~p87XU zxgjgj=Eq&UX}nR3S{4yAqmFO16YY9OT@w7po>Sk}eNgP`dT-Qu#KiRFI{If55hzB< za!g@EFp&zLR$}%|f-WsK#B99Xj}s%YWeq^B8x7$qed^|ge46{}tg+OqkueMC6}(p@ zsw6<jsS`ez3?87Udx^Fg=m`QIK`>YFp|QQWi$5fF-LkFL0@Tnh)kgfyR|RGc2qdJZ z=c`85nLo_OYHkV8gpvY9%A`<TMQ@vtV@oo3A2~=io4i}m3oRoF7hG_-RTKObnwv|V znJnzx^Ui2dNdHjgu)FrUlr6?di}JM|XUY*r%Vs9ndfU^d&As=Tm-_^LW@8kJxC_zv z@s@ZVtjj@aES5FXc0;3!*nwPIqgM@+yD1Bg3jh9!Ug=n0>)Vr9p6ZVIHaG7VVlnP{ zsPx*7QS79SS_)BP#VL!3MOZAin2~DdSfeaesaL<Wu?(U?w_rN4AhORX3~wO*-Aev@ zMDot$0NRez75MLo8ge-B%Mq?0aqb`iqfZ1vwbwGEfILl!O-FKTy@G7~FvKE=4ln6R zI^St|iC$WwQ>`6JfcSO9Un?pHaAUR0yi$jtK;-0n;!Rz3=U-J@t$&MsyWP=};~drv z^k(n1rTvMLWHJzwvFq}Z=Nk7If#XUx%KS{S-&t#}cd|6>NCD20uZ8&4gwOB@87d^h zgI5B!kRVVy!%AU>u{~a{0*d&g)l3OQ@@@O63Kx1i(Z`WB?Z0i@aaY>+VolOXBnamR z1vYmwgfG@vy%j(+Ir_Z8DPD6=<bh@O_K=D;qB!O#ADy?UNAAF7bY^ytx|9VUZ+KuN zb3pYsb{YVJXr?&yrtm2i{ac<Ue>!f0U?yVl_4X6!oCQQPjhfd1To9PuzDL}qUHd<9 zlebOVVip3+Fp*RFICh6a)jJ=nkY*_0ZMNbL-s!n16bVm~wk9XyuQSiP8;ne*b4X%% zH*dR~9F~J`sC{e77lO^4iAWC&lKR^A+z@7saJW4IMGgq&0Nld!GaMAk$&Y+Hvnbg@ z*!HPVq1S^=(d-wA$TRgh3xuIRK}}WMtSz_M+qv_0x1cAR_Jpi^0E--YoIi%ZP)~g$ zB9c%Q$R~&hVO)=v6yH2Uz-(aIDI1m|+>9B+G1cIR{&-KaFI~{1#+*jWBra3cb~%LM z|H{<znYatCw4lvZ6;emz!Ji`WO(gP{nbS5ADP?a>gnB)BSW^!se89B5DqOGxS5;&5 z#k1YqFnqI83;{00;<-8A3BQoQcC`T9HKjT-=}@dS>~uUKw`P$fxn?d=2KU&Z9>FR} zjv)FIM#kZpmVzif%fL)K5#WM!RQHH3?9m?Bnn3;1vMZY5VDAmh#q(^-5AY!QJ$98@ zA9rkdbNm+bPdlM(+4tlP*?qh&Z7Ri>LDq`9)#r-<pOoU1h1x@-tw?u+({!G)LQ*J6 zuiVvw%Ko`ULGiSoggi6KCObPST}JX?p=RYxfX#>rU%o}&?CIcDXj!F(u54DDBP+|5 zz_M?s1d%+==&*#fuy6dGMiyn2guSL$C_U)dF{kWQ?GZY!5<v#7`<}{k^-EzS*G&ki zs7?tpHK}6FGn&145tgRt<T1IIGc(T3)gkz&&s2w#c*?pibY(3Z=3u=Nch|ZCom2Bi zmRp)VzB?sJn<R?m)q+WJy$M%W>>{XH%V*X_^hU8}Kd{bC+aY`N6X7o@OZVyu;ohc; zj>j!OaOps^%wS{-gPu__%s;sL6+A%4PM{hI6lpKp)w*X{y`kKXOP<<s-OO|usf0zf zMVM<5M$^_9)yjy>K~L?I^BuRx`i7+iv_$3=46#X?mj-Hqe4^#0#uhubEM7aqAWzAK zkDm1~Go;WPeHaLqCHWnO0jp!TE5(BA(vHM?kXvml7IWtlUi2}pr@2rygz^h_^i*Qs zKqeqJOF3$zgjNTMTKbNPbAbqX2x!^wn>PN|OtBVA6Zqw-Ka9;kRwi=#aP(gH+Cz_~ z*E0+}qWavHMIU(bOu7z(Ok{t%sytGU@%4_Hg1KBkpVJpw`bmp#pg_d(Pdy@EfdXwG zUNbTPQVD%=0s9i?9+}Vq+fDJGFv&Pxidf8aZx~mJw1vE}g8roTsUaOZK${jcHGQ0- zoUe&`vj*xVoSmQ&J8k6{Zy|l5y8ipM{N&SoIBYMYg<d(i&4jhq;8AneO;U!YZBcTl zQMR<5EMP<}5Bu?$g%5^Y+X|?AuDaQx{bi{KAoKI$seL_D+xEAr+%iNW_b|%IPxpXE zx_oovVA7j$5RdZ(yiKz_)STp#1}>OLZ@gVl9R%H^G}ZO!E-UqH;6mfHKCTE+?Ztbo zRAg8BBlRQ)0<(xq^T8$WQ(+aHR@K1$CC+vgCIR!m-MgaMa)4WM?(rckf^JgUF~_de zvTEFYFLoFmB5*|KkKKeMgQ1TKGA)_;cY)np9v<&lR#fN5*C<mfF1zy>dAg~kOQ0AU zJ~(DKdTA2)Ph(Sbe&(a@o)oj2n%#b9)hir^3W1NM@Y8VyhUD1(6gMp0%=^Lw^m`Dq zd25oA`0>Y<EY2y7JS%^D)9qH28z>+;!Q<;9fXCd+mi5ku(AnRJgp5Z#Qe=1R3a)=1 zP+2Qy{yJ$kv$TV|DKt>qn<k{8DX*J-4k>yEZmr#Fn2ZJ0__}t>;;1LcIIAW_8ObZv zjvK<bL`Q`^qL$gYTWeRqi*H4!`9nFuzuB6KqKbVQ&_Rexhj+F5{F`TR=P27POeYzc zM!JQ|mdqQCg~F3|5ActsV80#cXQX0gE~bnX08<Z?$EI5=V?qJ$u85(?i&1j{#!iHD z;FeC!?8~FSsKjGa#N*lUBvyP@yUI{sFj45PTiA0F8(%|)F%8eKJpl51af8mMXYYn@ z!{EPmtWtjo3emJm1=U>7>n-scj+1;J4e9>V8zSb9y1mF`rK&%39NFnLZ!#k>=j(-j z09YTyp#L4dXJh%l6j+r#>`mz83@w$MZRlk28R+SM6<8geoblP&+3EhbFB${KuUXoE zJ^vqd*5ynYI~1{BwZLywnxjM<#*Ljn5CkOnCyC+^-r|AY_EV&qd+rI{!iPI2f6sDF zY)segYWP7wws@43>|E4bTvVP&Pm)!~JxrVnU?(!Au~Ql&SSjTA+N%QLn?#0pRqnl! zajO+LG&CzES;@w^_6DWkg_L&3)J81S-^-)fZXYEw^bO7%84-sLqZsc+pfodZcCn)w zNe0-}O<V$*<Pu<J`n0n4aN?Iy*~7}M=j>VMjLqB=&rouOtF7zlgVUJ6sEb`!0#Umi zKLeZ!i1HI8I=?IPwZ-p))f9|nMcb7RB~)n}p(0jm%uV|ryJx~P3-3cYN>J39FXR*{ zonPrns=WEPL2}?5sMo3Jf+>WuX&B9TXA!HWGSN#D8TC+$rPj;yL8DS&IR`Nn)CE<G z+)=fEDCZJ1lEuaF(<N>TnODeP1B1C?0aZ+4^ZX$+200oGHMBS>a*Sb5hTeahWM*7; zGc*EVWX6j$jSKncu0SV)H>MV37H&qlBGJ5c3{Hp?c@^gETw^1ZrqtSWt)?mm(LeJ~ za!97bAJJDL#6^Q@^okj)32x5%7#Wf+w}^+)x<(9R(QWnN`i3f48VzeTX#Ldh^ivdC zszc%Wu_{auE7*~!z^v*)G0tnymjGvvrMj|=&v8Cu$gjd0obx`y78))5j$<%U#8@-d zKq%2umq1NpT|=b_@v-Fs#K!1#??;DsM$POWFIS2*zHL3acIN5I22?%rQGZt1YSY-x zQHkEXYS79iDu*ZC{H)*Ue06nt6{655Ct;a6T+P83A#(;L73hq@_L6BEb7q#4$cpsS z7xwfe+%SXw1+v^)&^v*shv$qMx9G!qV@=@!9?PiNhicV<@xqc`Kgj2-FYTf6`u}H~ zA4qz=PQQqa*-Bqo|G=Jp+tEza4`x+;fLzcpQD4IibF2{n_HWk$qJF(|+baBj@=^Z* zL=!B#yWhz8%}__g9sbbqLj0fPprJ)PhNi5pqBGg1_`t8sYlwKkLA_D0M>Oidd0<=v zL2HSeL7hAQS>S)BO}9h^(*Uml@WQ$VgV!^-h3*<d|7RJoxA?4Wv=Z*~FvbA?H4Q=3 zH5I_%zxv?r@Nq~I+G2Jalla~KPXsu9K4%LO8tgZ%5Vtrm)9ZjB49isXYhKcZ><B)H zDY$z)AoXteM}8|9H!(tv>^HK0*l%d+Z6*}HR4#o-B6f-HfNFo-(mO)FwnfEcD5IGq zyxJy(0C8ZY<=Q8r)k@0^X5QQio3C)~z3YxB^lCJ?uG!}E-B@-c=8uClE}L&~qs!*2 zL;RDG;rc&TU*U$|H^k8uhXXMbt<ji28gjow(%tw-Q)_Gv#C#QhL;Z2lvk~&>WfvDQ z%ww8Yh7J?X<9+WnLn}N<WO8V;b}MOgX<2GfC$qBXW|J>j4`>IxN;|$rk&`=!)Rn_> z7mY44z8~UVcc1&UNBb1ylNZx80^W4k29H<oThm90WW}2IhiSis9>Z}LFSWu@($TOe z?jqScCW#a7x<al7^Id0)Sx;KL=7=B9$PxhOY{tyOcV=vry)TIb$FM*ZV>MT0Txi{7 zt|`=;gNh-hQ^Xg=P=980?@#1Pp$NbB^hsSjN6GXXa*RC(X9(zSXaYCQ{~?vS@Ybwv zQ@XK8HE_r^=4mDU(Ru?u5moi@v+Z^@RlhpP&C=vH0vDeyZcWwm`^ZTY^gC40I3vF3 z^>uS$VL#>hz>OPmxIcsCtMHEX_kvdb8d0m`AMI?r!}K%0UP}1}XY$QIQu^quU8^0w zkK0}zqI)?OC46=%ue-8@N^^33A}ePx!8teW<lTi<!p0rj8mFKxV>DS0+MKVFH+Ifb z6z!@#YzG`gcia+^u^)8_JMHAhU@vUZu|#I3V3p#E>&k%+sAU#d!aD|T7V<ejW2T(o zz7ODFH6XX2MFBO6T}nTx`Hhf5m3UG@c+fs%90ETimt$-;f3?7lq9t%ea{LBPIf1h> zCihPg;HOAV_EimXL%WQvK@gopGQ@bp4WTGLFJ<<`#$JYj9QEW6QrG{^E_X&v-+#S) zdI`VKjE`70zMFY?@nIvm_-%y$==SP<wRd!_RjsVH#$87r6Dzcn_HY%nXqQfLwP_-e ztkQpt-*b3t*F@a0@*H*qbCtb;uah?;vN5;t+{pijwdhJKiiCIn69;=o>p?u5?8VZx zGD>^5Et8;K!oy8;uwTFEsA5bp;}l0Bj|b{`-!DkYr-Ga~_O)jY=_eU^HTFYoR$Z@5 zIS!2brY95jLOyINq~bS45Jxer2%5MN!&6C(N+AZK{};gPTJwcsnBzQflXjNqkELzq zZQ#W3mjqXEa`2sf&|j#oAVx2OuP)uyIV5a8hA#V}Im)J#dcaFVS5x!T*6wNdY0`xM z(y%RBDRSKstyZ5FUjS=Wh+@&3vT2gk%v;vH*3KzzE}x6>3e<5-E6;l2bK12{m^?%5 zY#ZESA8Q*+<zj*|_ZrK>9PZ;4ieviAk)Vy${G+3QpzV8taH60^8x4cnopC6%8**@P z0>=cJHrFk$lfx!Mm*%7_-Lmup*u*1z``@<*?7!N;^!Rp$mQdW>|7Q!p%)-I;KiUE` zYfaV=iy>~ks4az>puf#f8pjyJGl`2+`>$*0_6@_wNB2>``piU3jZIXExnXZ$#av(2 zRE>?f=Z242mD-UpeO;TL%SFkVHYi2g&M;({KpDgmnDBM`_<bxte)WDc`FsrOeLrpO z?2wxIGJQQ=*!_IZZuH*$R=3QjpMfJS!TbIG5i-x<*|@$AOb4wS-L|oB>UKZwpyRGo zv7_r98f;}fWTZ&DxjzomjHi)EtxONBXZovcKW|;JSDrw?CWzpHrR-Wijut*ho<4|j zuhYod;k8~qV&$elT0)zFlMcXu(};`?$mTBLn~Ltkvl7x;H=h1oz=B0wVPX@rMs}}m zHCK?=-;~;Aie#;e)Z4y6dS(0ieIPv}I;rnxQb+$5x6JDG^ZvLpIr$f8tQBN@do}vP zt(OknkXjjBFw{oD8;+}=M?W!CO&T9q-=8}<&d5Ucf+J5`ei}c(bjldqHQlY(*12?= zb|su7X9t*3r@lX{pEQontXX8lu&rc(ZVKU5f`??ok{5Gu+C3P?<Xi)b0oO9;=avMl zfAlHO(&SldKV2s7_NmO?_!w83z4F$vI7(-BBZ#Hmc#W`fY<ta!=33-r;fv*p^>|9a z1>$J<cESeYaNvP(&~rmL?xKTu3BY;YcwqekBw<Y-e0HvWm<heq$5)rx-p-I{czXa= zeR2nC&|a>#Ev!`z)2wpN4n_$6JgFS+h{18Y(Npwh*fRF&6W}8m$uNYkC?|*eShoZN z+4XX|2s4O7OrHerDBRp;8MgqUc~x%oUcu1Nj=oQ~qQEENGi`@Vc=V|Ha_Ib1HBQ<{ z;)n62CaxSA**YzcNrzQ>-UGCgIMxu86C&}xEu@DmUOfirhjCq^1gXEanCRZmYi6)i zI0z>NR+ycEmq;N@*5ErsZv}pJ;dO`y1C2w6dyfVr46o{pcml(OJ~Nm&H5{Vu_UUS7 zYH?u+j9S`F_~GCVE#lRHJMt6IvAw3PjQ)EGdJXV^b_#5e&<{unkNYqs#C4HH0#Z?T zlUOi{L^BQP5E_D}@on|2rN+n+CS%qbTl+YHbJ2Au`Q^cGXxRV;=1*YBX4&*r<5li; zGrLv}QvMu${nk?yo{+Lju!LkHVA%lXbs!N1OQf#BygoCB(V8MdpdV_ktRogt7&e%B z83+AD2msTdqoH`ySW@X*cqXS9rbi7?i=07P81z-}l+O?q<665RCc0?=DjLC)-!H9N zy%m0)WuD{Xx4T!QtOkAb)XwfGyZTX(<Nf{bGThD(_#n<K4P*YGTv`iA09~GF20(Z% zAc9S!SG!*?-BtNz*D<;MzG1n&xn;lEHrgx?YRf!_#eR4Q{&AfA*0(@fpJRKRm#jaq zh5snh6%~8d-HsxMe?0L4g4XQWfKI)@GVFMbeGdPc9`h02SJ@jHU!VQf!rVvJ!@^_l zCi~`e!-sq4{Z@#5!eFGczkYSr@_v0k?=3<je)W^`5)P)r5ZCVn&tTReX0HUlyyk6h zAp+EO&o(sQpQ#1&`{Q$YfMC9US9o`rsAJgYgZRgWbOOK8iF*NF)#-~x<>@VLU3GRI zy&MM4M%Pg6j7r1#b&<!9tYRb}fJKyX5O~O7VgWfy^+4imXxf|fhkQmi9MtlG<u@`( zB1rH%>&6y;ia{WNCjg%jK)1`L6*Aa6nxah*7uGS*vXb%$6QHEIx$R=1lJ-RChD79P zgEoUzpm#Y}_9He_gsTrpA1R@VY_V5y9e~f{I#3_79|4Q4nssyLJdh&?HH)`-Stj5p zIUe?u>&#-lW)*Sx?}R@@S=_=r<zQ@Reubj&)}jobCWk&@Z{>i<XXKiLP^5a0mlDka z9FKgWfd%E==Se^1>7-n>*BA);ztE3$Q*&-{&p(lpIH0Z)H)}}UOes`P=GTb9Su%(T z0S*FI3ty%g1gHvXE=h-CZ%iQ+*ir`+^$=9H3F7$F{Zy#bR5j%@SYg;yZDk)+MC1d) zsZS8)bvPd{Q|wvu)8Fkb>vM5t#u06Vi(qL;GFKp$H_*+8gQvKo-eq|c(W>~Nw{k{F z(Y3iifhhMm(S#>5Qur$GMG{&$qq&8~i&%e3fR`>#Xi;A347K1*JYn7f0T|D~3A_;+ z6D{hSfP`}1k}zl``#_+a*cviTnByzC<)>_phS};f3E|qmB|uwkzqwCIxJrnZ;~`$0 zL8|SW>2HXUSr>!>9{4oJ^{Y#<SKQ}YNZneG&<cq0NxbXc=>aF7%H^dZw7}~X)AiWH z(~fxv)PsGT%lCKv@RL=In>b6lv_AmUZcb7<>IM~mT@B9F_5&S(6IhwEP7;^d(wXgL zh%U`-v$%>j2mUJw#P(3D_LzJ&6QHEU48hp9eW~b6fnUb_^yhP)gb)(Wh!Cvvi_?(H zet!EHl4c+}xZ1WW9Q;O2W~Ns=uoM=KE7xeLiaAIf`=yF>he6qj-t8LX)<U*J#fjFz zmEDkclis6~^QiSv3G4n6n3rTzm>^zJDa|YsUnQkfsiElBHJaJT|G{Rto}BMvN6+a+ zLwI^!NVA*^?BC3iXIBX8APAgr1TeWUn}H=pm)x7*_A<mtz7NrP^4CH<5Tq!<pUK(F zfOe}9&w?uaOlg2z$0(S4?Jbdo=g{f0CpG3TFdR3*&IHA3A{}hCo3a6wErf`ICLr!H z*{3Qi-o78a697>cR7S@-#~3Q!T9^zF=g%WVPz?<&^=(o1=?_ruv?N9&Cd+vs5RW53 z!i7o(<`)}YSI1M0*IwtNA|_gR=pl9q)_0T@y2~dSs}RTw#Z6WF^O?(chq63TH%Y62 zm`GxVXQlB_Rw->0<7Z2W5w_P@Q8bT78x-sR2!+y{il)ssRf%@9s+TPQFHu|Q1u9e$ zRf1u|r9~He5>S732_y=ng=|0(chHlatZ>T5G*>5=b-aM-SHOmMfzYSawW~k@!&BNU z$~ybAI*xcI0u^PNDDXjrQPC%ff~s}>^tr3`zs{<P=J)U?AWC02)|Doe0<c$_2)nDX z6Ppd_(7=!*=BiOCSG!083t<VsV<Ve`86+mR?(1)K-up{pOuM8q?h14@-pSLbKi8tk zXrwZV`uuq&z!S>B1-y>CQG9jDp*e=oO6C|lj;=L~n?XLe^>_XV?Y&E;p_?CJ0c%-A zy<$Q`l{5_Tj#RqdK0$7_8v#&v(oyi~lD98b^Frt>oTxrMrz7QXZk>BSsYMq-J$7*# zabkUTUAVg?4g74t*6iEuxvkD6CtERB{whokb5wj>z9SU+GXkOVRU&%|Iv-fUNrxL^ zQ$(oTq7->5AXYwCB0_w$QNcKHc|{{L347zVm((ovm*jbGhE7}v1Ic=?h82aiRkci^ zsJg$RJh@II2@oZQ_e_E%JkwJk496%LG^jk~0Yb*pC~6@zIz>7XyeB`i>oyvOu86~h z5)s)bo`&iX5;+eA&6}{gUGq<itzd$+9!IKOlOy$`rsN1R*yb^QVrJ{gcu{Ch967}b zNiI(P3So1dcQD}`5B|db=S@EUQ?F*-3UJXy$)!}im!+hNwGWtiq3v4XGpRv#Tr4JR z1vg6Ssr3zqw|p+IkW6_eL(0$*084&7i#-~P7W73$Q06+nj8vxguTEO?wz?SK6SxfC z$(2SN2hRdX;B@SJSpM=Chy2hmc<|q7)ysg|3%JnY?tctizlukWk$2Rg*%%~w_E5b7 zN#{%t(Pk&~1H;r9rtN7Z>2bl&ncHwVi~(89+fcqz@G{&zr6&*1bWr$HC4NAw>Ee#6 zvE%m&3(mg<f<m>YWa3y#pB{VEAIT?TvdtNkraXxB<xgS5Wx1J@gQ|#*SF!*P*;zJ2 zG=SPs0{Gikk5eG@Bw_2CqNO}>iCk}b^W{xxc%8FQL6YXddAD~B3i}I4$Gg&eUa`Im zMb7CG#h`-)MX$Oh*o|VYIt+@ubzf1hd^N%aZa_qwM{g;KXyt$Ae&JRsLJt2<*r6Pu zGW=y*nfW&1lDu4f3z%9gS5oyvxh5BzIVyw$=14gPW=b>)12Sa&Q!kPY*b5YO*b8Xg zp%UbQ+`-6^Vdz{9gw|Vc|B(CYKEdx5PPl(G<xcnm!ySc$Hh+Jd1%)Y?^C_HPC4#D& zYGw%t898X5(pPG?NHu`entL`2_JP9KZx%SqYgGVOXLswXa4BOOuF1Us*T=|sP&q6% z?%X+V7uZwJj`}igDQBDaS1tAQi)&URRZXZA>9lLM=q0I8?Z1m-W<5b$o#|UgMe-CD zq`9o|)$Ic-#n6BL%+e#qc?h5vn9FsW*W_q+7isEEqBObHShvYRWj7iQ(D0W?^?i*) z-TakUIlio#lzaQ6-wy)0CNBtUBYP%ru!oMhz(>b@O3dPzBrw3p_FhSL45&m3?Pz;( z+APRqoSGOX7F9Zm05C>EDIs1yQ}8HjanaN^!Z1jRR*9-&XSNx!TSv0b?$l*JK@A_? zL~Z@cZJUOheCvdPXnW0mLv0I+r@U!dnz+`iTFtoh{x{oEj}J9toF<LbCAj_F)&|!l z*45G(GcB&p2K$UVOn~_f31Aji_51}XQnNF3N1UccNw=9%n~u9Z**~hc3vVFH4g9-> z@<Bnh*`K$KP9h^Ow=R&v=Al2~4}qBWC3wfl;}`#xSsgqC^s2nW){VH26dKK5E~#RQ zozzE(%ctNzie6L6nQEXL<alk5UX6LUZKtn*1y?KCqY)rvj3Z=j8Cpa<wmnx%z{Byw z!b;`UJP@xi+J<l^IAQbjzXxXBz4ARTYwSh5=NDMUAMxNcOI*{swr+P1k!T^wO^;z0 z*-ZqzS$Qp^vXfyN&^2`0dJDA^F=k8$qXf@uE;`lSSW&q45XW#FlNeDr4Wfpm1jGU@ zK<S>U&dV4?!ECV&Ls%fjDs@G4NT}sfm5_8CD4cc^(OoDYARB+nKURmbWmiq{f?{Ie zmcY$9nsOo&J|8_@OiedOk5Iu-(HzV9LJugUjQm}AHG4=;v94do_bng~MvDsVBcWMo zs|_np3kt&8v{tCO3q>K@6vjI%ytb|AHy5gE*ca^8B%zm5SylPv2fC)~X`jtF<);N3 z3HPg_y@8IJq0u{<X9MOfNv@#!N16LQK~c~-j`O}&5eat9ubje37#W9_>Wy)RdyI1w zJo5z~6svFV&D2g49V^HwEdQz#6m;0k|B^i{Afjt8ZCI{`n8=dYv;(eSee$RoB4d3R zZvl#+dPc6b%qWylHJ+$~QQ8bsasAsuXn-Z@u-5XNdSaC~d?aK}gD5GQsGj3qOgCv6 z+JS76Y)_HrL?OoQ2I732#E22j<t~_LJSMRd0gLtz<ZMsfF$bfydp0_HAA#m*F{UZl zaaY#W{6241Zd*!lr^%<}qZ@Zyv%^rtyDYw4cC7SP^pWb<a<o3`HJLVj(6qI3YtVE| zNTVStP~tItbTx4Pk^49J$Icw6@>;n^0itlrwR`m}wR!~%gd%SZF@EP!)tssC+&iSS zKtdkW6Tbbz6GQd{ibX}WdexQdMp@%!OD2C-w&XKMW}FI@Qc5TE$(#duSwQGIfYzj0 zCK>Rfybx`n0@C`X^#j<Mw7W?D-}nc8B*j^DZ+QPQLA6erXF=RniYCzc)2pM7yxG)| zsvxZ7KiGBBFV5Z_(noDMol|E$9dBrAn}v_ZiL0Wh#}$L@W8`!FuSw9<QAVm-KE%4o zu76YzHnP;?_oH&zcVXt~JwR|R8y;L&Xy%PU<y7CyfKGf<I}Trl!+C4Wmt7x3VA9ri zqc%88f1dY3)_?*!h%4Easf-saXl*J(rc*ut76=xE#$D~-q~=!UvTUyEtNM2W%>V|Y zMlSP$0pPpQq7X;KSo}MN1gkuyK=xJUh1Zws5*<7W!e&MtP_1(jxq73yb8LtLh#+PE z_N>NMJiU`V_=$CpLY-C}raWFO3*4XNwBc95Au%ME8wmjFS;o=$@fTceuB2oUdR+Ag zR;(oG;9H;T?VFe4S41ZM3t&vU14;*36;sK1XZcokITsdm4~tq$BPL>eB+;!)^0AaZ zUy(S_zlaRWUbyKs^rzz!UceN(^}i!X9Q6MW_ZJrW{~3Z*qAgW>#E!U~r<VXbiToLj z{42S<^%xyI1a!I;4yt_|vJ^fV*gLC6H|px>I14H-_Y#rg*sgs;IV!^^Yy19ue5=Q1 zc2ep$5BzZ#W@q=OchmPxM!VEzJGHL(Y!W`{1k?9l3&(4GD}}97G{yVb<my?c9v3<Q zImyX=U@za^?7d^0#h^Gfo!|TYMwY;>L(apoRQf(+T2pFup!!Dy#dM|CuO<+cFYy|c zei<s2=jWG#+6$eV+$<zCmJ_R3?uj7AJ!4+4KhO_2$pojDnjx?LNqu?T0anWw%JF6E z<u7}`tYqly>Ea4~an<kB>-|p8?|W2^uUEGJ$MSvhh41_GWrL3nZoKo%4gdU?Y%tw3 zgisU(X!h9bhj0R9d7$r|>z$s~Kx0)PMCYWv-{Ia`I^MYsswWAhb?Vo(-Qhvw59b&s z6t-}2^=*ItMez86D*F<~)$S(MdhtwT3#7TV2{-N=05^$O|BbHSf{m50ZLoN7@9D+; zatDMvEIPy)`DAQ2dwr*XIP9D0yB1;^I+g@*x3d$7>gV+V_nAPj=%K}(J|j1H!xzB! z<LTrCROE46koE2K;2=9p2hEe!6(%@gqGe<#JF)~|FkzuZmS?8cqMnNI*|fU@x!>K+ z{>B(&m)0b@f5&0F>(YzbrEqKl36}^+GGL8y>pL`|Zjqzo%-e>#7KEn-60C@WPwfOZ zpSH}!x5X9BsT~oZnapW?gR4l>!rWlATqp&=Ri){D!=p(v@B&wjXB4=OR4?|%OW3k_ zw{5s`Aidd++%VccT3KQ&Himb!s`c9*#Kz+e;1Y0o1J;okyIs@BZq@T03hjUJ@fuL~ zAV0(T>b4}_^`hVdL?l~l7pV7c3#J!*Bmtj{K&lUGPjqzH4De4$f%w%r1ajMw@CPdv z1LoZ~?4q(At$RU;Mh65VURWorVcI2d2Tu!h+PQ;^wI<`NCIf@1(m%8i!&?Nm)6v${ zwMRVq-O{gXK>!@Lw)cexx1|OaEZ1IuJ;3d0-VLI+8tVglqQ3J{gF~)%97ThsMF%wS z?-Do%W2&S6x`fEnCp$sXf?ERs`%crJ7ZB^W*ldS13|Q}d7QnH_17CxY+Tdd;3zO=v zu@L{W0c4(xzb<*ja5V5i@V`Ev0Lm;8cXfg8qYi4=$P_?OH)Cvt(~^avHi^UK7fWyi znpe$32LJ|q;+P`%jHRi9vziAmeQitGmuPp-hH4q^!yn@fb|IQRqNh2w(Frzf7q)Kn zmxZHb2*$B5MJ~@)z2vl&w{r(hLIyyf&xUOyG&;DA=5Er0n~St9SbW5OCD7->=o2U< z>HoLb$C3Bs`A<m9Yhl*-pn$WV2$Wb>zpJ{9CMt6)Y$BUGmM}Sf4?wWe7SejZ6xC~| zjsV`zAcu`!Ei`m$t5?tNs_OX)?OaH@BVbi4m+9=j1msB`=7V|ADIgBL&*O>^(HdOL zoFJ`KBmo7@y04>Zyn0I%NEkvG93NhEi*1|N&LYIga@!oyTFv~<%E9vI%k#qQ>a|(^ z&)z&Q8Tu8@!!x}n)aB^v!IEO*a4lCx*vW!Yg$tUm-~PVu&r9!0{;uxUzSjl16F$%$ zC#3K_(DkUiggVPE3{50{T3)hDV5J;^|Hm;XeGw@1BT9dOSUvz;+3leaGB1jnYBZs6 zTTt=i3>y%M4I2L%M0EliES+PHoB_f#89DPHP&`zEAOf74s%IDwF`Og<<5Bq>wL66i z&6d=N7qizW@0=HeKL#Zzw|YD<;TrS^uHSuG2hvr_>QVO{ooDMtwV-sK3mLbhJ0mw% zN%vJ7VzmHnz<3+;QdxUn3oO9JxClmF6aSkggv3V+zwDqysZl3eq0!+YcL{Ut<D{Lw zhnzduJIV;eKc~Ru%T-fN`szm<Udm#p>j!K@C2|7w9>j$Npil=M52&OF-v;;%h6f}b znMah~bieRM<J_Dkh2Z=-38vO1jk81`dv*k;K}g;L|LU<#=XNiQll3E1yyt}2&=di7 zzKBCs;aU1sG6YWAwjm;s1#dEX@kDi`@IX?P$1D<?vJ}Nztkp|$14K0S@VhD^iQtI{ z@okQ>K_&ij_&hO=oCAk}gm3Ld&k!@EH45y2Y-oT8vIe3`qSSU%F!&PegsA{MH-Dea zB_a`+9edY0GBNyaVhqI$;u!agCw!ix;Axf$f>I8Diy2h~_u?DW(o=t@aad@=Ab<5c zkR7X<fK^Cgi6`1z`OrLqDUpg5W!6PqR$^-L!gf9eR7wvjY=ah<XREQa5&(E+uc0o` zw@8<exNm%eRKxUDkkPj`mYH-4IgBuMUg_urh!LVq%)yne_=t-KPnBveb~374X6nlQ zL>*m<Q=k%9f~*O^(7$GyY74>eZ}a^$Vokuy+=3qZ+1C(Um)r&PV+Q5Y9&ylF=F^r9 zP6B2#wt&au<&J=PY!1M6&3-54m=c_Txiq9rJ(bsy7%EJH%oC)X%@0Vj;c_ts_3bJL z8~PGu!d;`umNLSv6<uyFXj3u}&iNjAxg$;^NUV6KYy@bY`@+_}vD&zWMA!oRtQ?>( zXUfC0RLM;n73gF8Vk>u=twa$~@z4tQukT*3G(^La6n_CnGKl<}kYr<CTq}6Y{orv+ zK`X2Rw#u`jtEt+lN6PH%0jL!QIoNR~)A$ZN$E}_8K@?BU2il-Wi=`tbD}p46n0uF_ zJ2(xhYHW@)T;A>d-?#PIYuta2MX<U*&iR;Opyxw{q7Eez2o|#>f~YtJ*_<8?c3er4 zM81|Yl+IGka9x9vbj^U0h=pJdfm|oQ@>>cJ7JmicE$|l)&cB&RoBkJL_tYd>ux$yr zY}>YN+qP}nwr$(CZCksz%eJd}pNRX=9ep0|Oa6n*$Tf1zZz(4c@FW)m>P#l+Wx#Jv z*37YX-udJm!M$`sRl;MurOZOy1|nO^pa}(2|46~ITFB@YtWiC9N_#X#HyFOCy#d)$ zdV3&LX;hS_*^HkI3<Di+28i7KarZ&Hp{dBAl~7V8UpNb-C^|^6(#5I|@<<!j5XY0i z#tK->hk$hfZDKJ&rI=ydHP9~OnaqPac)04z-t=0En)kFQTZqLUWj6X^Z7`uT>O_>0 zwaV&c=PA5>F^s-0c+_8gnAC#Rr}`O6FE>X^@X<-I!1B#}!fvdy^^htTVG8?;<B3cr zYIYqe{-NI@ua%ppMHSd1lqn4e`fh@x!QQ1eKAt<>15KWG*(9<)F8F?!z%%RMu-!$M zpJ9nE;Q=8c*<|$mH)D5wki7~eF^YTH5EiZ&A}iF!9%K)4(`d;^TtYs}Hzj-GW_X!r zG<5z@Qin}I%a9~4VZV~1^e0?JQ~+y+nAtCgP`OHeR0oU)6tXFT<{42~mO)2TsfWEd zrXhEKP{j)m{>n7$w>_u8aRL+bVAuGe5-*;`fG_a34+4?XXhjDN1r2@%P}Jp|DR@-T zowKlI(=1J(RmdLXr(%Xc6?okxWuiS{f+DFv&x^=B4Jow+cyg!px4Foz+4lYKL|#fW zudCArsJP0=qzK}RFr8!L8Inx6kgDL4xH9GZIk&~)jAYB2-x)GCw^vOS?PIH6F^ud` zqdfS|E+H=9v7!PN;EZE<8ZLqltLqS=$)Ds+!nWI-kJ{ps+;&N$Z+1=U2{z9V)$Pns zi#>LJx%K9nu$tYWb&ND+L-0!t!mM_CM;3SJYwqTh)*3TO1>MiB@u>yZiZj7U3U?Sj zHEUt-`e=swzQlJy)~>Wpws5y~jZNNHVrML9Z}G^eitb($sf)GVnw-O4nX@)L{OZAr zKkD?eF7)r8HmjEs>E1^1aSm(Db&%3?{Pz~hA_+Vxq7JNT+$O9b#BmeV=3DO+K<^Pp znfajMz{kocIhUQS+z9$POoZN&CnXY$F;<B}z2)tXxD*dX#jv1n=Ml4?G<5&Ya-sK6 zh%?;P#GC?zg&fsn-}~Wc60}L%7ZivL*Ay;zUeiEDv=q;;5hWS2j)xT`@rUZDFu@A@ zd<}EW{B>1#T`T!#TsV|#bmsiEOps!_ki=)#)UU!JjG+ZH_YselASjy97^wE`!cwFQ z9kgOJKIU$Nm43-9IeD5{bxRWa7DJ8NCPXoOxnYQuhl8L(;wr4#xy;i7ZDF$N+H0Hc zd}Va7r$7<xiY&);WWiL>{Z^21-gtXg-zHL_@!_o(->mP^$=NgKJB*Y*`5U*AE1<Na z{=!f+x|%3iOQy7?M$3ELaXu{1B+v>OrPj@b(svO?j9f(KEo_Cq>Q@Um%qheNT4vMB zD@OU61%(z>%-I%c#(h||h&6P^K#9rjV_(5@%8ARIxTGLAkf>Nb)|Ch_^a!+hDiJlP z)Ns|GPnyjGhxjT!;NDHjCAFYuP_bldst{?5C5XRRzg^95>XZgm6)(qX^Yd6H)a9n( z7b_R;+Ph*mrN~=DYpYGWYC1%q6pt1m4Qd}NaE3}GC+`_RTSrISSmyIJ?E@<GVTSIi zfD;4u`|6{Anvn2f4oq_eQkDN;R<j>MDhY9Lk8NGy$thf*5dTg}x#k^vQm7GYWNB9N z70uk#xRh>X%2PbL=W#TjNI1<}?;zx7qrW5=Q*7J6FEC<L635CrYHo>RLs-FBY;e`c zZHDGPthW{iRbZ1x<Mk}_S_p&Zx}!@@;L-Tcwc@fNl98%iC*$@WaBH>Eqp>|)>0^(~ z$tc@N5NHKh#{tyqnXcdjiP_^?SYyD`;&IihWqPR3pVunS?XQWn?_ps$&%(YUp<?Tm z>C-5ZYsr>YyBZSA65-n_Ls<$0E_qgQ%UeTkIysqdd1y#Ce?hHcS<Pf(+?j83j`lwf zVfV-$`FbTDIy0|$A+*et&!dPWPh=fYW3S>R0oodY3MD~0)d5}EUR+~B`dl27gbT4| z5p*wn)dCy}+9RMkEIdZMC^G*=BS<>SRQk7Pirel9*$GQR2aO>^gi0D55!XUir4Xo! zxU9lb2*H&Iur%ODJz3n8n7MmgT(;*H#yVJy|H$}CVaj%7NJ>s0?d~UE;K>*&94z-} zE4M98wz?BalmfTn_-<;gY%mSRswJE_-?eG?t=|)JAOJNiOU{(I4eMAC7W~azZEmh; z>Y6r!w>B8)QypF8=o*`R7O1m@N+C3&vYKGcHhLC(-V|xWY_1y=sdc=ta=yaE>0KP> z!#ET&$||Fj&dXWz0F7q!L4>f?p_Z?+Dc;{u6R!F$$HgGNm9@S|=cxc_`q<Fe3ICY5 zQCI1(Et65}s#xNwP#%jh!xn*Hjj&xGoP}#mR6DBg!{}fSZR8K#D|O?*`=`hmveg?+ zCDOiaFVL<JV`So+{6RTUMogtH8wV3olw9)Dsy<mtGVnH#Z~YW~R^IGfo5w^}wY8O? z`fQpbERA#+FP|^t>-vfBl6$_CTjl8bS#<xS5|CHg^2E0C;f2h~>PySFbb@F3jbN?= zTfwBK?X1dKKA~j8YHR0Jg9|D~o+bTJ4!L*CJ4JB*l?&w2q^{uZ@l;=DXU`?doRf8v zu%8v*LI1;S<y{?uhf?@NFo8Tmv$j6E{Q`%{4{7e2%Q!1-wU`2`iFCtWOGunbX&M~P znl+@}4en?;m(wNDn`6OU-InFdyOya%Z<f>$;gy8M-+YS@aiJ{T;-nUQVijJ{w`w@y zKm)V(T6-+@sGL?%YwB`SUaJ9TIL9#U<p2s^%mnJBCDYo_&H;zE>Z~9WM%2J(>&&~A zYX#Uf<3Z!}$*Ly(eq;Z{5H|2HItS*;K=0yLa#k|S;$$H=RfI)*)nV4N&5Lv^l!Y3H zvsIR}of0Bk^E>Um77!0}u+(4H0(<fMhsjTE_A;3)+f0&XDStj;18;T^H2JBPHLVMa zb5I^iL2{dCZl@lK8aj8&o*Ygk{H*`!%l+X`X48=_`c&}Nd!rD(>TH)<dPJ7BkyxJY zc1iBBhn4z@Cbg6BZrD=YOh+TM?l9;T`>{?fYb!9a6<CFBa7&-Su^_Fjg4M8h%}Q9S zilx3VS|yN^CgvJ;F>*Z~Aw0`!igDZN8gXF7*ZE_xt6K`JD5f<Dr_@%!xxk*OUnXz+ ztWdQDXDBYzG*%pFHc=aOAcBtYJ&h9E!{C)|0n6;Tx|6OODv0l`>epr4dq|WAR>+{G zDSGiR@p{Sl(Z?iQ&NM;caHy3TuFgH)|A7R47z6tk)@_QTNnEW+HXJij<kJ7b8-<^j z=;J)GNDhT)sDv$Z9uw<^C~XF-GC#~UQjkKM_~&bIe`TUHHk-q@-fWDjOV>wvny=}` zAy&kg5G}duf$+89`zogqHebI(YZ6GjdN}4HPi2!*26nKucde*SxMw++I^Sz_IAmd_ zk`if}tU6f**mw4fjpb^;k%(y3Xg4!ts=QnrKUbivBbvBWJqwCEr?l1UQvsvdk&SHi zuGPMEOwKSf5tFIkh~ct3#Qg~3t}iw|!YW2R-7$qct#(<X<0XIj=kt|@xHREnDtw7R zc_76DS$xfp=V%m{ynDhZ6QDFUWy>pyY0c}RThOBMnq~9d6>G;RS9r3o9<4vK+Z)3T z<f(n!RM5Yx)Q*KN`O5HmGg;>l+Y!^wtDQ&WR>DfI`Y9!&<~#PQ#*DK2CZrkKJ!`hb zrpDk^hYc-rf$rDXa~e0yapI@sVy;Z894_6+D5>aHhh3a=M=!ENKF0bCxOZ>yGh7Fo zuBHC0h*!X~njR`izWq#o&0oA9-;QynBN=DP@teHs+#wmdk(JXP{0b6$k*CJ9p6i1N zsg|OipxUW~WRhU-2-8b!-i5Hvlh{!Db*nbL$`KLxwL(Lnsviq(6cgc96EBjath?6n z4|C{`>jx5S-FiF+%=5u?HeUf5ADF=Fu{gyQxnpKuC$Zz^X@s`$Tfu}7J{V@j16<5m z78c(c!rgfya7uW})@`uEc*TM)aBbtPpxEd1=u_PD+k~p=F;S|8@99SnZXXrkxd`7; zMCaD<Wi}EAq)*NMU!MF#s2vul4*U@9AMiMp=?!n?b=~L=Qe>rp@Km@33dLYGwbk<! zdi*!7)*>YtUzk$6*6}OF+$rTjauFQeXjV_IE!Q^CBoNE)QO9;gY_kjX+L`>zAeyF% zZrQ_~7gTj^THJF?A4Q<OrK;nUGS~3=S3#?(V6ZRnCRz2Pzrsp8$Bt5g5j%u^*RAGv zyWMbZvzG|20;KfrD`O2%h^Ty_LB>|E%HFpU(yV-Jx-Fy`<hm#BI^{%`!8Tym_14>- zX^-3NZ#ZCl0*J5wW{4TG%h~JTWa`xMxsC1=k)obr9u^=UNC;$B8FRwG`}*Q=4IQ#p z4F-_82LMDVf=-h`<@r7y!E6^4pY$Dl&L96vp3BJbUmAfN|GPYQ^&fXlDvsFKudj$6 zS3lt^XhGtg(P$D0%)mYkZqY*+YdRCyKaZY>sF~T?b0anjxLJE%Hx&~@YfRt#)sS&q zot@}U`@<BiYvf`bH<>~j!Wx$H{qXeul70M0|EuNq_FUip^|rixxO1D<@B2C|&%gH* z`Tb@eJ4VxwB=CJSum7h;^T(rkn%|DChRyr5_Z|+KZyuf}u9^+Q_{iu_mXj<ga!=34 zU+Jc@kkPDFj%;U#)meX@KV`1O0gw+d!y!w{*M6N(evsck5apkwq_5{^_dD;gngMGq zZbD9c218C_Hb2k|;z4c-c!tbJ4=&w$-o67Pjl4$4<7RE~P2Fgyj#uNypLL67u8FPL zzoC3|`g?tWej_+iHIqW;S52Rv+GnSG_GYjOEYQ3x)BW~q^@Q6gXPZW}F1#mNJ_fR5 zO6E23g=wQ>tAGE~2BiB>8&H<juhBDfw@iWO{Oy9;<<D9SuBYrI=1z=}<SyQ&&kF}8 zdFrZ%aW3Tm-d6=4f)iUn!rEES>?l_E4tWfjj%1)%3Yp0*vJ!FIli9G9NIHO=M(o?J zd5c)cEwUE#7>KjUVa$VX{KnY$XT)X<v*qd71m-DbePS{)v3W|q-M=-4Tucr^J|^c5 zbRaP?c}F~ltWp1h@cdh!t+&5rVvpt7&Fxwp-~wVah|8Pe?ljxET6!@A!gu`7MB9KF zdcNU<Be_(7n0UK~#(9Q8Yjhzx9U2D=G-}v*1!b3wVP8JPzenp*vNh7W08Cw%N;&}o zuBOvcG98qTu#jJ3IY#T3#X|vUdZ->DH%L9;uPSR;R#gr_@jAfM?7zS_3YylgWTX3& z<|6uzy-nk_z~O-9o@iT!4kU6!2A-p^E^H((%xr4=R}RI6!+anHI)Y|e$ZH(f&^~fH z(bJTs1W;Oc+zicx2n`)x(Waw-Y&Y5f9T);kdK&4`&ZOiGV<;Jr(rlsbDA-13W?LcO zlp`Afq8vSEy!V!_gMq92goa?d<QX98gf08VGn?uOl0HogJOu!4bwhQWJQT4re+7hF z83;Q}z-Hh#1G1XLYAQR0E*j$7y0i@4&>S#NV1EU>dWy-CtH_xMvjK#$q#Rqw)f{?- zI!I(sb7koQWV*KiZgZPppAL2A&A4q1i)lB_AMP1)BLJ8@@SP}Gg%M_F?CKw+bV5dS zbS|K(wFLQ0)CX3w2Bk-!7a$oJfqFT<e_XKDW4pyG(lcb}^Xw8(H=QU#MJS?tH4r;9 z08Zv9K3bLj!(59c!l3yGNG`lFAs#yL60b0eLW}-^z|W8W=Uj*35(gbY68jO$9o@>e zd#;A<K|Djn-*bjqoMyxiWpFk`+K*YHY)0&nWJ-6=<X{Dd^5=$h?0v^5>~r;`2E6x) z&b%_3{5&jQx8obq7_=9F8@@mBw&)ny2#<iBqU)>Q2DeX_&rh@WlS_x@-`#A>>+kXT zcm<03J4D1c_=AzXI6&An29mNjkdgI_%X_)M79M)!zgvtht7ph!&~(3vsB@~1E~i== z0tiB`p+dWZywgLv0bVIM5Ybq_Dap0p-lXLrqdm=?Wxep24LQt1kzqJ)V5%F|8z!aU z5SWEaFDHUpykR3lqRThbuJ1t*`@M$poxdTfd$2x6H5B3>;@-y?q`@ke72Gyx4Dw^E z1PQL3#s$|I*5D}C<eXU_q7Tt?-4oxJAGwrJQst~GEL3=f@EVTcaE$->p8gHtU3QM- z&6o6Is8&>g^b#QjoKqvMPzrk7a$pT(05*TCy<n;bkP~yQa1QR+dWq?=zJyRdz8C)^ ztHQkg4tcBcr}l_){iE@SE}!*WESSs5T~D}ck>P3w6l4cyLzzc(V#uEBxghwML<h3O z-)C&VF;wC;_61qC1<zl+FZ^33D1<z)gV;Slo$W$gdXY3d0hl!y#(5nEs~(jP$t4Z; zXzn$y;9(Z?ua)zuq`tQ&aO!YZ(rv}%=UJN_c~VHIu+Ql`tzQE;4{tHKD#oG(q7xKv zLqg`AwK+ps5%&;kAstfwS<JOdn$viU1EMXQpy6Vi0ynLff5u0m(3&t;APt<ea&7s= z(o31-O+)w5alrviW}ImI%7$o{xx{a#+8R;PNqAy?vK{ND(1i^29^OI7Lu5<TQ<F7d zJ&N82e*=!+Cu4^=8=h$;D*<F26*@2D5EK!5qBh(>!?TE>bM3Xh)}UJL`4q*g%34Un zGCkxja--HAJRAV=TY%jab~V=B4+_}BLx+(APE!`>Xeg^niSGAqMQLzJ?M6F<)XHze z>@ZgFE6LYl8S958DHqq1-{-UoUcg?|uFLq7W$;po+;3a1&G?6$?(&UZ_iS;!Ni@hg za^0V82wm*m2tJAGh%~dn37dOjC5|h${bo=8Nb93~@h}6#yWjS&$AVbDA`KEgl&6-{ z+YOLgJ;qJ-HwC;?<RpvM;QCbZ`y6|Z?%rY<?DQZ1l1-KjTfy=()FM_iG7lHZdJ|K0 z+B$e_;TIS1&F5--XetH?zV2E4tAot=2uxQvli@!~76scu=chxf7z!-}>kGrGop#?< zPXlqoC~$z^nhQ&LQPj9=mJOwG1-00?DE#MenK>%nLg@kfuCFw7<)PI^ac@(|_K|i) zA#=p9Yr;l+^19gqH!2bUySM<L?3JX%0gFK*qvhas-e<PC8RNFS65jiuy5vrOWCE3H z?5aS4<8c!N&q2;Put>c-8Q~sVeG|WW%Xi1p>T<xk?^$w=%fky;+7fV8mOfwcIdqVB z@RZG+wR8nJ8VUedjh~^W6c+RpONDc<1h({0u{BF1O7O6z+h^(v_jn*9ZOi~6I}xXd zN}*Xi(BE^3j?aKZr?4(@i{_js;vf4CO5)11(A3&ALA+Zz7M89OS<4wIE($G1ItSCw zP|5vChe-Vj0ouDa>P&Z~m^%pN>FC-7&d}rUF1*hk2s02NvJ7FyJZ8AIsu-D4$d_H! zb10c0CR{Tvhgs2lMy@6&i{QJFM>=4+A%x5R9)yZTBClTA3_0yTqWSQ!{2eTuiArL( z+VPfjEE{`ASIy^KCj4;6+=@eryga6~Y_BW#E(&w2Te0{F{h+bB@tf{Hxhm-lM<3gu zcrBK}_kwVSVXTZHTD)O4{G0J~<KD7M?<W!J2rB^&w+J7;V(+_?$sUd`1j%29C)o$N zxo{1<nc^x$O!Ls&PWE~4SZ*Q?Qd7~<Q`_Qw(@Y9oHKU^9Y2Ad6?=Iyg;GpTWxztn0 zM&daa?OfWf_|VRGlVTGtl}*_?o<lD6<HaM_a&x@omwa^PRxUR=76aI2C|vP_w#2u{ z1s!inIZW#RzEIMecXgWj)fqFaesNXQ!H+h<DZ~RAr?XZQ6ih?66kH)AxZ2pU4%GhQ z1``1ig|?lz02NYbK_kDi+3ws5vPtCpr<8EOEv`!pDl+06w!d@6M^!~A99wrUWOp=< zJ{}qiJ{TyU+O+np6|calQp#C`GS%U1M3ClSu5+EPc=Jtk@Gg!I)(>l*3tSWG3;q5u zh`N`Obksc``lIs<@O23^Ri;(vgTtS~fym;%7}f=Vh!JMyr?_N-$aTO1#wi>aq;kPY z`^xIC%(h`hc8~z>K#VRsDFR#n8&db|=|1pVB6(aK5$x-|?!QRxVNRLnkRsCxu~sF8 zQ|Va5_Xg0>Kiu0AaS`g2eu=S2BFo)ThwF>3H$?3i{ieV^!Z8J__!&YZY_4$0z~Tx> z8Cdx!!4g4B3mK6r9x{?y!s0p<0RR^ml$oL`-GNOm0?rb7udG(1=Tfn+fbo<G$P{JS z+v1obQXt|gqg8jD1+svBMym7nA)O5hl6~<R%#g;ky)_G`?LsKLy!0#$Z{ofCr2G++ zbhN1>CKGN(*j4S;E1!-)xef6M&ikR_braz-lQxsGFQ(Qn91?*o#W&Z?xgs9A(FmZD zpHhB|ilI^HF=sc^QcMGbAw?i$Hd!)tN#HVIhtWz%iyuYLWPX^L)!tk281IND1I)Fw z`4RQP?RbM`ObrSwgMqO*yw6pVgB{OH)<;?UR)iX+mRQhw<gMu=qNj~-X@_wU#{1GJ zh8M4v)ha&{+IUMkxd;X)?br*YJUY(iP36-{0*OjEu%z{-ta!yEr(LdTR6z=8PtuUF zFBB2w+Oqd+$hhdBh2Gdv6X~jgU*H#^rPz75bsT{#N)$po&ck)R)IETX=M|~kE^Pvu ztyQz<-{!Fo8^n-N&og*CC_J%?adsUg9S3>%4RPc?t2fxeqo1poL`?8hcpbi&OBVp6 z*J@T*b67lP1ZEtG)I<OV<udpXT-rW$7^B#Mx{ZTu<Bg$}^F%g8k0~?&gMaKL@8~O` zx>P_Ly7D~lv+78UUx6{iFLPn+YyiK*v4-lfw&Jt%(VjCfLG+c4p~)wxSl>S^62q{Y zff!o6_AC}-YZ<H7lelib+mGPFqKdeuiVX6O)`%te6pb4i>x^i#ggzs6I4dY|sUJuL zy7Q_8R-WhyFOV-QC>+F|tzlzb0d}(=KnGLhZ`?kUXct%{E0vQjp19XSY!Fvo(!qf) z8$!iH+SfUy32a48E*>p3q(M82S?7XTdW>9pgbb2<*YqxG#62bYrmV$mqP+g=@S@66 zeTWlMh~rcP{TK~Kdsnu(iVHih3v;@N70(jvQ=;db&EAMP0Nwm{c7?;}<HM|=sKI!W z9nZ}<;q1yEK%9g8(`>%3AaG=dnY7_Ca{wBzE3>qPDwQ4b#21w_4i*WPu~oj@(>3js zOcPq_^kXUft0TOaRBy5Vx?co~^%932%FnXD^kJU_1^YeY+3FNLM{Zq|t9VY=X2`WB z1bfvsST1f%(q?3l6_&#Y**lyb4iE+w@l*SCOS#pVDv}RbNKw`opTOBAjbk8PM&BXt zJD27cC8n^|84CtSEX<R1w7GP5CO7SpXX)y}Ql%U_@h(^CXE^7M8e&X@E4<E`bC*IJ z8w1Fg7l952d$zS0E*3&|9boUYYpE>l^ok1O(=7m8fDyia0A0%jiwvNR0H@=WqLWxf z*UJ{XJq9}>#k8!0n*VCSQisYMHS|vTsv~b886=|exLx_W>jp>5rCB^&8sok9J`{xp zMNnyA0i+Lp<-s^v2)Z19NT|YV;g)@Y2ri+{8e}V?aJ~vsy-1}NLyHM}2qiya`nZ6@ zt?o-q9OC<w)_@j!!3+k=G>W3N#A{!6*bI+F+q&H{7THYB(F@zDi6V>cz8Y-E64xRQ zR?y~h&vX7aiW_$R1*K)4%LdrjsUBO_x7Nb3Thi%s6j?8Zk*Ifs1Bowsa|~lri)GeH zw6(u|QJkLe9|6KL_)(9#vGmj@P8;Ax1nE14XS&`0Y7qnO&9VrJ>1Tz}w)N<y6>WmD z#c@I{9}bD`S@djvNG@pnjlM0SdKC7#L1%wA-sS4O1PwXWzi0-H^E``_8?(@wREP4+ z&}w=I?k%RzG??=oMFYQNd8`4&!{xdhc3sgp*SJ+v4ev{|wSkw(;d|7<9seMKDc3<W zxUlapX5+OJi`l7cGxGbWFjS{SFYg5&NVSkvYlW;UrS`THePkDD<DS5Bf;Vq)DeWHd zRXO3c6cp*q1+eR2!{{7NW=w9Q%ue-OSvL*A+LqSl_o8rT3kGkSvoxp7?Q{DK*Yfzv zwVG!Y;?65F6zb~JvlhMEd^6a_Q3rbkexPmI22a1xrB_|b+4!<fkjy5ww-?hWOC4%; z8f?@K7i~QBvhEnJbynyx)u=+f*zdn?R|2Q4zc3i8)`aIvBVy~r@40Thb!WKUtyqPZ znSWI^28iE#u*~;kf}2R%ceZu%;kGxk-=~R^j6i>FdQ|BuAsmI}&McpO!pdpuwGdtZ zVYU#8zJ-n=4byjj8PPY=6S2(QA!HN@nC+?IUcKyS*^f@mse-!`7RRdBG30BQm$g1x z=r0_c^%a^t;`uqn(}TxHR`a%ICr;>}x>EMKx?vq?WZ`Ce<7r3CqD=gFX{^EBo$M={ zZmaT2G6WRsf_2UW!S1_6_}oqB_|U^^x8V!IfZEgvCtxmw!t@Y)vgr@7uVa4tUveX+ z|KEvbWn|#|UrmzM{&S*_I}-opMupQj`7^mI0}=(@I;#PJoHH_iu=qTd+_u5C?ws!S zUeU2dtvodcIs&g`BvCM9AjEtcD|Q~157Y4R;C|h$-R$1E|1?DZz8~CwuaDFBjWpR@ zstHL>uk+L7iNBd{uk8!(rghXZmYt>7^V9SHEOiD%Dml@ifBl5yKfJ_P4kv5u`8__b z!)FhUx1G$cH;go`tz4{?TRaY=ter?bmbV_hvbYcLR2quL@9kY){9K=(^C=3>=foy{ zb|QuL%$(Nm5Bvrrx7O~iX2`F2(p)?`!fyLPS-)t%K)a<YS2}wBzTe|d&-;ImKP>P0 zf3EZYocluF^QZrQe#`rROdr|Phy4BXpl@)IkIz@zH};=0Ak&9uAL2TcoiGC*Jzq_! zU8yRPm#%SSt;hP(;h&43de%_d8T8wD%N>qEmPeUkk)_WgPwppA?$1Y5+4=2Up7PRh z*HdykK+WZi$O+HD$f?YRcPQsLY_6GysI1Ji*YWR-Pf)TrT*zz=wr1ayKfM(Z#{N1# z4ft88;(2fgzdwLgZ<pio3-K|`x$TFAE`FRkzhEEl-Qn8ED6_)we;($;<E^XuP`cVZ z;Db{x*Nlv0#}@W|W-P6v=c}u=Ye+%*QND5=df3tbedM3nO4269)jI~)ebyevcBLWV z$brQ`R2vR_B2pWdwsoEPIKZw1<7<z=v~tZTtl<>Z&vN(kkVlbe{fn`Z$c*xl6^UD) zOv<fD(#divu+DwwOkzR!$(zigEaws<nJ4Fo4Y~32iA|YjOLDo1&9ltA#N^~+awPry zWnywD^DsCOc^I9F(2?U}a{lryu|$5W!Asu$zGCN$#ux1l)}!jh##o1Pl_eAoO`@MU zLs-KA%2f!q4qdc^{RtDJ_ec;978<LiaSZ(_TM&wPA}~8UK@-wKO6hx3^OaFB=XuDc zrWCtHrzmp9-qD+ah9CglP8u)rv>i0<N!~`<*}{Uun-d>|jKUlz;mq)nIZ=y&13XQ` zGt?L+?F_RW#m~04d%VN^rvP!x$bnOgL@l=jW;GoG9R5{TXT$_S7A&6URN<-WYy*ok zXlf$M5#T7vxhD|#*ID5pp71a32K){Dn*uH8_*XevoU$ZmARi14B_m7+Nd^E9grVTL zN%XGf@Lxe3>rBvwwG1U1I6Ye$TPNFm>LKgitu6u5WI2HTEr^0xIsoz@@%v&Q9gv9V z3M2zCIE64o!hv$1EE{syEYK3LT3`T~Zbi@pG9t_)S$jwa`wA@&1Yg<`_5p;u*&0EX zusPVhfq4USBG?qbkVz<zSf6(TIyN9MSU@-~kuB@4AV4;gq7;0+iY?m;p80xGBsn|$ z83cl$lO)2lI-x>i>swJ5xy1&W)x<ymLv7*GAOU-%YZZz2si;<4nsZp<<oxz^oWsh; zJLfqq>3r}L_>jn1kE+Gr3q&*mfoA_)#z=>70ALVbf+SnCiHf$9&6Z@~Nw_N`;>mmO z&BOmM>fe9=kw)UEV_0HeV)^<0$q>JOif!IqWZWfBag%+gh{*)*elyDwON@Pzz3NY$ zo~cBn|9S<T`u^7UTR#di7ayBP#B!!d8d9Z6n$}_q2+L})3V@+ah|qWNpu`gdN$5-V z2q^~n%5}sK$0tMNcZA~j@L8;9C~erq+P?Eav)uO~>uTe)gpFdO0UG?uz(d35XMY@a z0C*o(ihW$}VJTmX<)qXqY>ik;+0A3vi7@1GBjR6Q;kE#~vh67S$%5{G15(oy@fk}E z3IGq=xPC-(ZLvOqA!^E@gu^*Y<z{ZT!MTq)2GF}!)QVqlVLPD_P4)FltezcGTG4=? z8}Fp|P(l**!U}KN@eJv8ju1ak+fOmvkq)hoq1_89Hk8IVrD`~hL`I39(wp=$R-ZwR z3V5em9PqAn39p>SDsMugif@?DT*97<&El|n>B~Fkk*-h{#3^t6;2I)5TVxh5Lf#Ip z?^&r*G9X2gDXFqS$43+vpVGLhX39@Zg9n4S!>P$8c%@DdCfO{!D!IO0K#P$a9?R_H zfoD!z5w7b}df`q1TA-cg`ktJKndgeq5U*mI7fVULGjShrVI%b2DF|a9N4keC0Cyt) z*0@Pg;sSz9mnK#R#Bdt19*5*B*KaJjnX?5Z0V)XU!c#X}ZaE0&5FU?wX}*<HrtoR8 z0g={B?=C}*fRm{9G#DKA%3nTB4*_be4X_6ABbPeom{dff+6-6@H1mWRw>c_-moeE1 z!sEajKF{}4U(p_)u<){H(){YfbU6X6ef9L0zD4Lap>d3FQB)(VlGv8WpJ9M<-S=?k zv%{JfQ}J}UzEBF&2D<}d<Ck)FM>s^|@;AAyS0PcB0b77(@W@K-5HBBH^2)E96#}sf zxss{GZCko##K70$!I2t4Db6LyW;s50Lt~=8t`MX=mTjv;IJ7j|JY)StfT<lNEYSqm zAP)k6{fJTqtS97ev@M718i-VkL5^WV>&P5mR3CbwM&Iyy&E3RMrT9~rMUOR(DKiGt zlr}8Uv^$x6A<Cp1%)iE3aKf})x5AZ7)mCRbE)^f+w5<?P8T?m1_Om%3v$+SCRbix+ zFylIoxL4&V$f0ovng00A2!X-X{Dw+MVGm(CM~~$(EF=1@oTa%Y0PSyGAyhBZEOWf1 zaU`%wP{c3C7grMV?q}-H^EtDL{Z_%H+!t!6sv8r^edCVG4cDU&DCGr@8Pw+2b87bI zQznISx%7$7_@(D!^&l_Y*M9FNb}^?2%siPKYgj{8VQRE8x5LoW?m`;}ymXNJwF90d zctCs|E^oZNjv5{u#_3om5sWVN5~=Pqm%M(qD#v<IhOhP<a>4|E*x!1VrSgb35<*bt zlA91;OpHoB&bD|m-|;VUyChT90V3m7IG1i>E>$ezPUxrXmrO}+j}ty(%dS-!iTwBT z63B<PA~(kwUo^4aqtp$;E@AuG#|W{>xNc-}UPXe5Zq`#cZOWDj%9CZcQprvN$Q+^$ zTY%>vb6zrq2@JNp_x+6H8wiqNF}6dEaVm-C!XZ_3k`#*T*srwJA-GVQ1vLaCmKYud z$y6HMc$%;+^d`j_Sg!6|Wws?3;XUB=P5KIQ*1dr^*i*IFit<!*QaV4c$Hbhl4tO*+ zN({y@L<T=(!JyBcVlKQ<HHScC`?E#~EsqhkraePGILEvgZmYCD%Uz|T*3HlA^-NOY zf-fa(Ck<*QZ(Sng1i{bt{g44e106%ZHtW2pU|-r;rrLdgpn5MFDrSwpa`p&3SH==> zPOdS$iNmg|sU7>KD)()?U2x5Cp#dRof@9Fc@ZQk~IODxSqZj~?vowKn@nS27zbnQJ ztzT`qgMybX`1n)esg#R6!QZTNiMIsLMk0&vmTp!LG~br+)m*+{2i+`Ohlv1BO4tgH za1zM3gVh@A>Jf<Gtm-C-={`Q4*<=m5_b-vA8_>MPz!i6qs>Tk+fiSG(&K4oaHooCD z2?pY5DDS(>v_4*&BXKa|o_ey+87UWxcLn<}#~v=>t4^#GiG2M#lhSBnBu_|6BNAu% z9u_nGa-5?vFg!?J3NOpq;BRH#tjWYH`AAew1h2VFXMLOJ2N7f$o+)5}iU7)LQjC9| zsR>HOBS{R_kymX_M5){wB&;_UpUM9Mfn%_5{gJMPgUHsU%*~-|q0}VY6`}<>n2ll@ z&%-TMmMvduvWk+B$Hlh5v=CrYiG;u_O~IBAXFxjE2T7?Ym|Gc?S{<VpUZS|tnK?rB z;wsa9VUcZbN=o9?(v&1ae4LolTf`^8P;r}>@)Pi{a4cPcK)IFiFVE(P0?3Q6e@Vws z!9hm82n6THrhtLo&MpDSyhdh*`NA`3YZsZnWbr84#X-p}>#6tDmo-U<lQ7e2URkMj z$}N?HZ4x=QkJvFV>w`oyHkR=3VN0=JiyNi{ZkDuCF25=o8i}Bcb-5bg>>6vMfFS#p zOUw7l9UEKGasSiq3S8$dYC3>IrwjcTmNh(*d1W$|O(+A&CB{>sOQbf;s@pA$#_ZNS zAt{EpmZd~a)e^1~M7HjNjpmwl%yO?nfMT?cc6CJ&xd2i+=XB^CDIK-obJTI{V6P0e z2&e{%7!F&9=6+b@8synmr7?na;MN&9`>6ug*kAUvN)!>K*3)y#RX#Fm(J%9-C4vno zx3Ef!29ENc8{<t1=~;p(OlmD^Wy28EB|oBV!G3CFxN~vx$wlfst0mG;xhXAA((Y&2 zSG<KOAmk6y(?_t;GZUxhGrD1)v_>!2(ujRziAPCLgnGx6y+F?bG0Ssq#TS{a*JNOV zVKY!s&EplX)uFD^gSy*#vEE^jnZj6BqSI(o+z=w2HOyjMDms}(DWbBe9z1G6HRkAu z!B`&KZm-)uW|yRj^9FMB#k&hTR^&96H;sp7kHSoNyKt8+y`;<$$3X2_pujF>E~Eul zhvO&CURjvqIHdayb4cKKgf-T1lmgP3@<mWi|6wU$!G<?lmxG74OoUAd4X2dNmB+Ri zEG3BVZMKT{xNS(9DK8RGZK)ti_*iN+V9=qMPWdXT?;}t)6I8k<KZKBLN-2E^lai@t zHbW_?BZn-d6sXa7$Y0cq7`WBSjRh9NvL%#A*fc=~RZ%d3JrKVERJC7Vi)GKQ3%ypz z;+-y4t6Kqm_^jYVJrj<wu{lE$0RS;PH^ail3|&ikKg%)UiV8sVryZPAs)K3kW#mP% z%!Lz|vY~Ev%KEv<sDL*JTh`3A4}<VXuh_+E*G}Q!ReETGiE8i^@3~JTaCxobNI>c7 z+}XwHZ(+WjdDli?ImW~wq^D!A1R?$VXrpM&)LB0&PF|a}npG88q|pnvO`v|pm6Lrb zvmXX;!@f*K?#1!7w<WtUSk{uBLVG&_UtvJicmi!3X+n8XtKi0+QNf>FKWeJ}Nr&N{ zVt@#jhZTE!O`2!jUI_iprAF}kdZ?LzA{8x>y<x}Lc&Zsb0Qw=B{JoSqZ0bBKT7jNL z6)koXLyw!XmYs$2O)R2p=1}~UG<K9yL(w{lmL}TAsOZ6m^pBU`r|QPXF*3KAy2cl` zdAYF}Em(_mo^2JawD<W`MD2Ie>*8hh#n}$QWa$~_qi#%{p$4ZZilwr{S3&j}4*hxf zKAlczftuA~&!+qU%6={t5(+sms)grHS>l{G4j%O%ZTQ43;K?$qhr{Gbc@99dGAb-~ z(}gJH+v98M-A9e+BTlden9BR42PC1^^RSor#?MoVK=+NK_B_AlFDmoVPdpm5cFh($ zYEGRpX8=T|*PK;cPDWM5KK~;yRF0f~EP%>nMXdYNeOLxZ=N_=UkQw^KrApG?M!nWx zRz1z>BviSmnh7FIzD9#+6m=*>%{C)g`CKiP;EIHF5|aStc+4Sy%hkvtYuvlwZt@cZ zB=2XGa&eFX#|dv}Rpsiu1?$(il`(fwQ{Rk{+_{llnHf)mz(f+{`4{=YG6XDDiN(_W zwCiB71GE>)OU>90_^1=B^9&UClIJ=nEBdDfRl3zN1oMG6-KALzABZwQ6|hvFUT=XO z?93Xs+HleJuapEDJ=dIon#@@Kd~*f<1Fn3FWj51N)z)gma^pNx(}lohLeuG1+f~qw z)o1$BVj*&@A$9$oX1?~4dNppZ*VLozs^VrknDk>uBf8QltLnL-eEDKk(0V5?73Ijz zOI=KE7_y8l0N$Gz!1qf4Z)+H@4$uBwn48Yu;zeoyoZS9(Yaau6Ry}6G2NX=^cQ1Pe z;80pEhFj8akzkOg*}@wP)0qut%I55p8Fnf%6B(iv*(__^tfS>TYJQN6;ZLpdleTf? z*W@_mEtx*1x@@dfk3XBDr8zK%8>5q8id4<yb598mU4hW~oQ3ap!{d3ze|Dt$chowu z;g2VFsU*lq-JG4Sxc)GwpQz6M>J=ScF55KcZ=H^W$XZuXdo99vK@2u@qBc4g+fN`6 z*gC=oz)!^v!2wl><rCs?j&0G#7HT#ByI@W8W?6TzcBYN8PLEfDq`m}Hub@1#*Wmk( zMw9XT^aah^jo*6E>POzjtOa3|jHBknmw1FY#XW5=T}<5S%(WC|;^uGdpF2{?!E0Zp z2zK`Je%&F`v48Z>{qg>&qCR>&!UNG%JEx;e`w;I>>hHHk7-^TM_Pqf)a@9H7PTHxb z?ogn!!0a2~nvE;|OsW&pk2!!Y#_rN{evQiqY~=cf2aSu6dwGp^p@UAA0tJ%5?T4TE zrDW0Rr0%AMaPBts>AY8CYh3SL!*YiBb=7!Tx%PXDxH8oP+4(wO5x3K97<hC5)jUz` z9`ed&*p~}B>#);;?iP~ipH~A8FYzK8(xUg4%6spW`;>qfVgWcP#!<iHv|Yu@N$4?T zaC8A!{~qGtlhS$27HS%K#G8!Ilg=6u+TDtn!96n)bFKf&OEZpj=bDx@%g}T(*AX5P zzS>5bXJl?2El)#^-M8*ma<bU4vyKfYwT)|ULM;7U?UXDR9DH&k>c`-cE<kB_N2x#b z(X|t9skO`KBjc$p_{SUX))R2X!F{~Zr#7C)D;&j&t`uqd)J04vuXvHm`U1H$J>!(q zv9cKUa}R+$(iBblzt_<Q7(b}6^<Qw$NPf#I+D@%s91a(hUzs2wn}g-C@9o8M(g?bX z@=2d*`)+jM3(%!}$kMT`kMZ-~<c1FTidi?EmiDs_m@#h4OUrRSvXv1As&j$@s?DlU zU??^ym857iE7BZ)#;H{hKlpX->Fo-J{#)~m`TwG7|A(VxVdLQVUnPjW+S2hmV~Bn8 z_4}mbg`a;+3?LFrCIbThG1z8r2{vC)1jCMS@1O4%t5;;4JE_+oVLjc$X0EQh{Z$u^ z%dg4VeLbAt=lAK^Un$NR)^v86N?FcSta9@B_Wl`sKVP@!pZY&9kMR6_vV`A`AD``e zzi-Re`X2bdvzwjg=tLI&U&qtg?#uahejlf^<(ummMlOs7gX8zX5!Y(@Igg$XhIFp9 z(xhIlainyk-K4U+vvhA-${NFO<IA=h>&O@s@jNgzynk-s(|7Te`t|Q!{5_IB8(jNu z-$rB&tTnh9IPDl5IGNafK(oFB-Bjv2Fg-oHc=bL#f(4Dd$G{?Ejc#3EHB?C&@yl+r zM7udn+U$P*S#*6}zObJYthAoAcw(pJ|0KNuzF$XY=b%E*jsKb9T}>Ctm)#v+bJk7I z*hp$*;lOv+N}oL4TxDHD3d)D_lc(!m9i3dqbo*z6O^%&*46S`@-HYW)L&D`XdMvq* zbZHQ~jmb@46+I5p?&CdZ5L2vN2o%n6is+-?e!1XtV0n-NUua@w^uo(L?<^(9R_Eyw zaX73#dgE_iVD`b=#Nr^&>O~Mwzw#Pq<J|I^6VIFczZhNDf5+&47T_jte!Dimha<jP zGu-bU51sEuQ$cPucwt!Ivkd163C`AXjGyt+w5)2a<s$xiB&@3#xjl{R2<hcQo0fu8 z(n6Ny4WpdqD34`Hoyd&jXfI!^ag}n?7On;S${G|5eG1X?$#}-`9XF7{8{x6tBA)l^ z-x*MvQm&@TjO>rSvDQo@9q4Gl+6zc!d~uB<F!}J1@K8u-8cy~l0FSZ`%0sn<DCAB% zZ1n_Spd?Gtap+BWpg2>&<qQ!D5|m-2Yp5F$93V0WgWoN>PF9lfI5?Q*L%EqO1AGz& zw2U(j%81qx!;dZI&{Iny7Db}Ud<tyRB+nR)kdw@$NDYx8W~N2fdO}9Pqfjw9;f0_i zW=>z}YVpd6NCg`>w3r@PG^D^(qFM~k5-8uLAp{eL>*VU|X5HK|^`nIF#YeQvKm-#K zQqewvC_yhIMI@6z9td1L&2^n%S(POVfm3psoJ9bHn<L1Hc}QiVpcBMSj0}R<LcyEF z=523bRP!FTlw-(x;vFD+C(J47rnPcK1PNciKzuw(>k^*x)b9HQzH>kzQ;8eUCddrk zUIH15q|6NetBv`o{<_IO6Os=Hmt#MP-s6asQ;c@VH<XMD)+HGCOXjEp2@7ZtN29bP zfEN^k+^sfaAbdK9RW*TAY{BjN?@mKSUF@D=Ub&yWUwU5n`*+1wv;BBg#lM~LlV`Zi zdHOFY0%d=Q<#}1Ye8FaUR-`K`@fy56Le6}@kPifoBd7~L`U=m!;<5F=JA7XG(k%Q! zaZ4<R-x?f8HRIy4g>s03FpS{v`@V7besdled{Ni;z2B`~{|QGId5)Gf5=(PLZM5iz z#91e_;3n`*-#yg#bd9$heQA7H8#C7lJOv2(LYap78`4qX6K1NB;ZPt{_}QTDBiw?% zAP4RC^!6_1{#t*N$45?ghFR25lQ@qkHgKSa;$vXY$XrR}SMQ;Myn?gOGG+rr%0-@p zd@I0>^!$X!zZb-hZrd;5Px>9rsk=o!VJ>62D!<z&j75U=2kRq*BrD@~ez)9Vj8f=c zhnHzAaCL_*5LZCsiM?6&YI(1yK%59-a@GJb%(dWZ7kN804lTlr8%?oHeoIi3&;(B* z1nS6j95m7Z8HzG8bc~3E>nR76{c4E2Lg`%Q%e%N9$`Y#Rk0G2wzvCU#AQ0*RTp)!U z$+S-}*?pP086^I^8|i_K7}__Cj7k-zW^z?M38X76ALu#Cl6f(ib292kbS;y*hpjwt zCRwIck^F{lhWTeS38|KHWVP=dq~PkOG;mFTJ0gQoRYi}ENLrh*NR#=8IF&+TV?G2k z5mw3r`Om3vo}wnMMW3|34i@deP>dJYZi6|QAUmy1123d8iELujzl6iK?>?Xx)dBsE zE|=l$#&n4)B0MGL=$4|EcNSgxascL4ai5&Qsv|%P<~?I0J5&|A6$=ItvMwbG$XyRW zHL%+~+&_J{w~P49|0d5EGr<nbggl}TegC$~Fa;x^R9Z{U(>GEbxVBh)-)iF_M+D}@ zFfKB8J?U35=1I;tzXVLGWYf}#*t+!0>}LuwR!u_0-oCw}GT*`Jz=iU~FI5g8%N)KY zW^6dmU%t-gKy*~Is&zvG50%C%hg=H>z&7>B%!h=F06N5(R1`LvECv1Co=p-hlL*Mo z$ZN`O_SUZvR6-8<q4L-s36`8uR#eEAUI^|Q)|MgbEXPQBXsodm{OidMfCKGCI`YiC zh)e}%q^lLfCY(6mA?^VNHy7?j4)d6%GOHg10-`ipyK&x6IBGsWqsgZ*3EOoiFay|r z0>wSR8OXn0-*X6j1|K@vCUtJ<feA9DCjexAGdn*H!yrHs7B%O@&(ACCll~evz_Sjp z@>Paoo~$06t(R<pC&`A*ydpIKf?SikkKi0EFm8N(fzZz4a)w0<$hy*2V!zf%VI$Bg zUEpTPKzyg>XR6>L2ny!-%Z0#zQEdO!HORdnXaS7!dc%Vb*u&&SXF-DZ=C|7n;EAtb z6gBc>prG{4`S}ynHvvY*WvC#`7vsydNCaVQ=C8y7=K)AK9ZD8NM1}YDkG&EXX7F&y zadK(MF4mN)$Dha)8a8;phl{wJ9nx+EY>VYBsXS*BwFP;;qDz_`02XT8=T=@^g^e`} zjwDtK0j)vjV|)uXMZj!%xv_}1s-T?&#`LRrF(b9A;?<s$D`F>!bwq~WG3Asx3!rCM zzySa-w<l#PBbBr>={!ZCAt}m0ugzp83wnj!Aq>B)J4yx1?*Yc%YVPGreZ>g#3}`Y+ zi`olAtp=uo1Wey2Ryt9_Y5u3=VcH<F`oA{Q71MbXO-X8iYKnY^S&{3vTbO>LjYm{4 z{PY$B1<yKoPs|Hfqf#&q4Nm@GQ&B_g*jc9ThgH0dX<(VulG|GNU!MI@)LbWBgXnZU zTalV*-|yO{bmpuOBsi61lV`AAj-!<FwTCP@MN3SZtRxn;@x?Q>VJC7UcX*S53-y)- z_QaSTQxx2WnRdxu>c?Rty^(mZ8nV$0`~3jdrLBoILkG!c{Jg0PhMg2IWKW|>j095s z+TlT7zX7?04Zf9Pn&u*c+1ygj(jc#~+Ltp9c-EJk6_qdA>LSPVpNs{(N+culmoZst zkTbbMapF5H{AF6gzUig~1HztdUGZ~OtgR}n<pJ!%p49Fyu=iL$+XXS3t8{S*ETFnl z)`=x`s)_HvVd2{4<>vvUf)0^ejwP^`tB%fdL}1r8iqUJ@8D)Ew=|s11y)}JviGD)G zUMKTIhWPF^5e;NU%}ZkAK7#JI^A5Jjup&ugU?_8^4DVWoqPf(x!35dL@zNO#v=yge zUZHQzbb18SN!S>NkQnk;G|0gDjEP3G2#pfbO=8_Tv*c~$Xn^3bk@{}kdLys1^A_!n z{!pu9!D__nlYB)7D*Jg6H{S0AVfxRI3|qpwYRF>&;FC9ohn|<{&G;@$j*tf?_Ln0( z6$(&Zc9jLzK7Y4-vi_F;EM)D_MoakwmA*+F8n4HgXz0QgM)Ann5<Ok6xLJh+CQ)|z z%tC1A2Q(5AvfLnBI5gDpwAW^JyTM{m@zN4lC3M#K)@(v*uyW79vhx(p&g}(6;IRoS zMxx9#Gal_;f9P-qRNm@H!;Q1kb93hJz{56}LI7i&O&qv3n!NMSLVw6nw)nu|N{Sr* zJDesLvyKXhaAJWEA9L<&16Ygq-L*zYqf)NBWhhm&n<ZZgV8)igi?UgRGT~Xiv-&8L zC%k=^CC*;@Rw^9%$ne70F?%Pq(UNPqX;)qyb2zy-m5UCy-NR60!KaK*98w6y;VAVj z?dQSF!<BP6O^T>8=|pTgd?xVD&{20pw8(XQvv?aE*5Po`i?pK-@Yb#&ktFKEMU*5d zwk?E>5C%Yft*#aPqz(E9Fwi*rCmX}F8q=O6c$=WdG;t7FES(q$QfM%5U+nCyrYs>7 z*CBJ;#$=Q`I5M2KtJ#G#s~zM%@|?&%CQteud@f<NUv{a~c-g~kX}z_&L%=+ohID~r zXRQM|Wc`Sum6Ind&W)scExj-V7|XpSZH*~!7TO3=UzK62;GNCZDtK*eg*B&Xl~%n< zSYZmo^XTfmXF%DPJ!P@8T5U`>hspN9{4KsY##N!Jy01;DfWaJ&JlheY0T1wyn0n_< zE``V~RKLziXiatcMcJY9TGyiojp^<?%;lK6L1;Cirh5i(#H}c*>zK@;pBU$$Z}eC( z-iPua#)NfLwhAgxHHcrAXxu@}DR-LND@ipHg#z&N6~Rri#iqF7?gd{cmzsaCbun~s zg&*_)Tk%{CYtY|p&`$&|7D5%@h6{`8DNVXcXvKFdxUFCI@lfng4&=~obgwjSfc_6- z?-V3jv~_8wZ5t<T+qP}nwr$(CZJo4j+ji#3&Rg9T^>C{r{+IQ#*V|q@)*fSyIloDl zq3}{CXNQ!Vh%0k%tl#N??7$0sdh-mC{q2Bk^Q=N%23}qy1c6bmVXt~S-CoXRKyIk> zj(Uh#@JskbD6S69LYj>8v8ZJ5P$Xw5Pb@vv+=I3<A{b#U0o~iHd$!1j5i4E>TZ?7< z>${Y$j`UCptXay`q~9c(<4jZwdT}e{`jfmU!W2jGPKxa}L)q1Po?9z+Ih2Qqm#$R+ zGzB(~)8F;L(gyaZty*GT8pF6bzC3&-sNYe<+j)*zPMeWBDSyYJ1}*gT*eI0z8+gI? zmwVM0aN&J`p8;TviFfN+xBF>ZUp4WeHkMe_Sn8kK-?lb$2pR#4B**2*b6yu(U9=(> zb6{(*-VAepiHV)x+sXUynDzZNS}<(>E*m@<1-Bqt39{)Miol>5W=F|m$L}u5ODbV_ z7ou6+3jZ4MDs-F`#7E?r7b6RBPTVlOUE-ITSNi+Md0o|x?eQha6H{Ai=glp?5RXVc zP3n%iKv+ji{aT#tGn>7%8h>n`{+u4`z>uGDcRtT$DKm#=TgIEtx8to<hV+1tEVOXJ z#@z1XWpM90k)JX}r9m3YP1?$>(?DI5AN*krsC-Tlmg$;J4ck}DVz|R&%{>52>>WZ( z&TFMMq5`LFeY`gg*sXuFX-FZqeied4GRIP_Qne~n$}l~9U2!<^eLZf6T18O&d;9=7 zd{dqyH@TkH&mgv?@|y0C<2L_k5*7}dj6}GrDvCqOyRdZ5>|1^#2Nf}NWC(n&)lguP zG^WWSjTxtZIH_;j-y-ep1GvlB<gq+CHw5P7^-~b>khsDKI5)?0zw+HESqS=PsP5>& zyI=ye*!;altSj30nh`#uTBUH?-6BsHQ)07aDkp*A0uOr>d$D5%U@85%iaOk0c%@9& z!SJQsdKaT7dJgIyv$Ac6rU4dh=C<Pk+Zt~J#FD>ndU51(0{hY5y8W|n+tPX}De7A< zV^mFu7>sYUds!23ThSZZw9BYmWqN1%3u<aIXlF-VYx$q{1hGi2E0BNDJuJPp@!PU< z-R7FBY}^EEXe2iJNZ+8kw(Yr4uuDMu9}tlJG9NvHG4(sl$0Fhu1y=LQJoE8C5dkX< zBDggdSm!&|s}C@dkZl`13v7^qka?=3yk~rOAGJUF{7E02*f8sfi3_VsrC#={6*)7C z-q^*P9>nK)Qu4InNOyBq6WjhN1ufYp4nGj7;dIjbRr)j&J^c6&IlwC-WcXmb55eXL zIDcj=`iJsbRq1#v5GHcr(91$51paiM)*{SXExuBx?N^s0VWrl)u9V~C41jyg@`u~+ zxHa(xw7EV6kR=EuEz2LdXj+TlX&iQpit#@+9zg%rC$9;~;a}kTHF;YAiRJ9>;x>=7 zTVQ6~Bsz4C<K4VslG2`ri{~&j{~aC&!_8@gse{F951yT0UxZ(oEo`h%d=-*0LKhXD zvqO8)Hja@8C2io9PjbjY!+DmuR6~Zh5>~~8n<NjQbY}mEhrQkGH3Fr=>50`NcKX+% zt3%|8sAB8$J~7I9Hnxg#Z6z;-AOSnZRO*DayI9JZ^Y}Xi`83}!`eg*on1lrC_Me3s zxMm!ir0vaywL+p--?xmR>P2l&uJ?7^^c-0Id2=-^`L``A#8u;pYe#$CIjIigR{Z24 z(U!W=gQ<7>B}0xTv-AU`;BRO7e~Gs-bNp9ZBohbQ|193tq9sv>)Ak>8>P#wj@uU|d z06;1g24id>!Zs9s{1J;k^cv^k^--lEQs#y6c3c5&VTw6x*svkBF7kQm;m|OZ&JOG+ ziv_FcOBViVbho#==a(^Xl_MvmW93Leee0)A-Di-dsb;2A9aUHLI<R^C9d?}6hjGYH z4q{|Dc#8ccRd>Uy9R2onvH7aEogDaV60>aD_SSqN?|4l-@nr~M#Za*}r1_6!o;DvB zO11gTo2F`0%}r`H0ve0yL)HtA$zg1=+Xo)<3qEnoq=od;eQ(B4Ve^H%x?mIDHl|gy zOW%#5_$sXozKxFt-}n3V;qdn7?YS&34-NgN`|I%&-|ye?%Vv;Jqv<<U@JC%1Y}NFR zhh6s&rcXNl8;j5eI|erT<w~*@Wd<Bi9q)T$HHATgDa*_Wj<(BVT-oN+j<|jy_alA7 zlXI6|uV-JeuixLrZ%49Mi*tu<kH6IVR-SH#j=K5>j;7YX2H9b#t1_Mg)8lV<rthm~ zfW)ssMjA0~h(CMtQ7&%CN5f|=+BA4H?*H~EReqq>W|xnT$ck&#D9_n-<?9Fi{dHry z0wB^fC)D(HYWj`UC=-!Ovoc6HtQ`ekJ?_4Yd1+K`(%`_-@sXX~BsKU7@K`%S$67bH zi4sYMtLGC^yP3&AR7b%9Jn4^Yz~Y>K+rX$wS#>|csnpMNq`*UdWX(@lGw+cV#p2o_ zha=OS2oystGqpojDr#$Cd}wK$1|h2*^R;8vDjIr=ti?1c?1XYK_24tRMmqXAwm$XS zok=>Dahg%5keEbZmYQe#yT+0U$im14X1{?BD8w&z#Bs}v`c{M$zxw$J)W4Nhv^7}; z(8bcC!(T$Ic-rl27tGGo-2ENUz|L>2im@N2jnC<q7mT4GF)tF*Z-9%;`vbcdqv=y& zaWAhix^kR9gYnREAcAdPUaD`@N=p4}jnOw!anPU$IWe{lcGBx7$sqo$lhpE_CdW{P zgd-LW1l-0mC<Fh2Y8M!*GtT80fx?!o5_u~}txE(HQ76zs$SR@%#Sum*3St;uMe;T< z9B<D=YK;!hD-3h1XGY*>@knQbB_Q`CfEF&TH=Tn?{Q|BMb!0Hv3!T~w<~9PP9Pppr z^lxxa$N2&SD{LrDJ>m(rfZ`5$BqVPL=5deoWcP<~1ArfbS%YB+;K9Md<CGpPFaU54 zu%=Y+O==RF3Uf}pLgtc~IVfgO)gFmum>P^25QE+y3ghR@w?VYh$OZibL)zzHG4#Mo z5CX76Ju8`)vM=N{<>W|%!3blW4}XRHSJ%wMv)a0@rR8oZrJMPO2Z!9Af21NrTXMQ| z<ixtI0LBG?*=b#*pZ`rYyCc9FT3Ctc7cNOfCCe`QHqP$zYh2mIG>KKFWlICgvEh(< zJSFGsp&av8_tWuv!kIGC0^t&}gTQ8M5VwVh%PT_0zl;?Iy^bdM$AeODu=4Wan}j4` znMT9JQbm8oaL4TC**<Dv`w=Zu@s6B=EX{D>yKzeCbM<DFDP$7)EsksFPEuDOGJ5*} zIrse>cjaPjak2Ntouw}(?9D7B7^>osX&b?*uk0hRWI){dKjjz$9XapzbPmBf!tw9o z98-(--EWSelLrMbWZrcg!H%Kth0B!NWIMsClN}=_AJ0KOMK|Gn$j(}@OoZ|$IU)pY z{q4?B%!;vr*TYqum|#V`vl{>*VV=Tk;HLk8A!^28BHASLRM%#mx|(ObL$hJ>{324d zpnA&M=`HS$NP#kty)e{77QqmXM3s;compELG<HAC>lxaU;H-G0$CQA1C(byHP)Zb- zgshvvmr!qr&|VJ!knm$)K9!AU5?w)FNfDC{QgGdb@cL9C3sAg~2vpG-m^a{Zdy_>X zHYqIDAeNs<u}S?>Zl$@sH&E1_&alpl$*Yc=Gbs?GV!$ojaZ!QGdNZUf?la?rx<ueC z)-N7+D5U1B{it!JxBpAIbb6-=A4iL&j|Y$A;oxc<Q&?NTtNI6C(x0}U?DMfc27G2H zugaAG`zf51Hs(3DHXm`0h7h7M&@mOhV(qt0y~xO}a0A%MNGSlGFrt1oVe#<R+Wet= z`A_=>kiWJO$P|Z8-hPwF2@zOh4V^bg3M>5xW(m|J49FNjzNuoaaxYU|H1wi#{1M>} z?-02pg4HjjNbDo)fM=*MNb>I<5X|K;x2wqxx;DEd_Y0?gLb)m6ORjqk7Xm)+${FE) z+`E39==YeIhFE+Y((<7vKGFMQ&l*$*(KcxQ?ro?J3<m(CuV%!g;{gOSQoqTVEL)rx z_)3uvFS3<r&i)`4O5e2cXsM_dUPnMo0<p1HoHsU0<Rk89a7KUWzVRs5Xfwok*AlMn zS1efNNC)Q0%@HV?FwZw(bCMIQea=7<a5xASxoJW+#~YukKN3?ya}7Xs1J!<t;#8$? z$(DGWDzV|%#Y?bWCA?a}S=?DraM9`WKuKd^Xh!}hmq+^O4n7Ausitw-XGGrAI}wA9 zlmMrXeJ{Ci)T3F~M&uL>QqEb1xdByJ8v-R!wbVloV1Um08;R~zez8K&`o&pM3==+< zWI+Xo3*Mdcf(aH0!r;G5(J{xP2;akgx$Hkz;}}Dk(^d7O8K#f1E&Or)Z8Z!1sQ_?L zX-6^c!{vLOkNtRHNGT2*=<8V@h8s+>Mw`1Yv=UmT6>Pix!&z-d$Hr;~hc^W<8A3Zo zQK?fR(D#QbVS!=%^&lDEt9hYq<8~maZN7_>$R}ZEtaN{F=gq<OFZw<~#jt~BcAZG= zj&{2#r^o_2WQ#uibhj5TJQ-D<>*K7wE4Cm=V9sY@GD(2$aybE1u2mt=J?<f&auA6Z zF0m4*0Ov^YBS<N0z{+;JNuYFA!EU!tvi-FacM0&9C&04hW?}jH3gTCrFnIwr)ArbW zPCFX09^nDB*<C4d=%O)>9HWmzu3}l#YN83ey`-#Dm@9x?CGbS0TJ-ua>*@BzgPg1$ z#j+B}ENcvlU@kVhu52=0Sz^0V9*|GO6a#uvEL$=5fMwaqVsI2;V-m_OWw;YTpWicK zBD~wIxDGDAtP{oF;UI-)vxnhG0)Q(cpjtT?$WZ9{5Z@zEHp(4m)JG6TvxBwIw7N`{ zC$=j$xu4;;dxfdi@HTHurkk8r*Rgjme$qL;gqA5~=%1A$kzjAnD7&oG0a{QCkn4f7 z)CJ%y!nTfPWU2FkF6;$_=x&5>I-=`o2xg3t!)>J{p*6YVwbXgy!Qhm)kR;Wc>t^G4 zQMQb1SwbNfZw_-v@ZFxkf|b`_BXbI;D*K+GG<c{BPIaHxdYeRBG>plP5XEoq00cFx z^9u~0jj~cAz?h-p3T3jq_Ghs^jsgYSIF7Bfqh2MjR$afh2C~OQzqP60m^tdf?QU(W z@;nveq(qakyAmlvYDbU8#U~<3TL(vEJK^Um?neFvu`5#I9Jdg>Dzx7zD8^#PF7Fl2 z<2&q+k{*LAW+&@a4p&I#35-4-K|^r8E8E*7<KBeHi{vH7#p$7eMlXI))2hcGtFWhi zOWF;g$3<B;)N&lko{SN>G4ZSIsbr>^NY6`|YdUfqKvJ}1J4T`e(t6tWI36im;m1`$ z0zkE+)@SKqS*E+SYc?LpDaiEWV%-2cxQ0FdOP|mtNt`imu2kR3!c{fYv*+J69O%Dm z)QV82Z5xxEecxn)klpdzLuUK<G~@~+sukD+DmP#mhY_Wn;juiGBVxS`W*F*59=A2N z9-~<E62P{p^0b<bI|0P2kt6JEG(Z~$`b%^y5RO{w3SXm}%CmmrpktDYG9WP>G?yN2 z{v}4RlPe!?(=1j@cG%1}(HE~bo+P2PJaVKoPdpyxajsr=>R4w_7YPU@SL-OEX*t0t zAg$^f1N1vve~S4br-e><p8crzpwolP)ew}vjI06M{6;J9l=2e@2y6#}9p0q3Vu^$q z;rHiy{oVviQyN6hq0v9cCV)!ZC0&WTx<1IH<WJhD$>o7V!zJ`h1)aXe@HaN??7VNQ zo}B#p<mFDBAdc<8`^h`w;BZ=M&TBGzf5lC#Mz`f>@DZ;{|B$Xdrzz8b+}{xsfT?!r z5YIv?qqc`8!1{b}n0HuBj2G@7KOh1@mk3C}*Rk_SAOcPWfUv#2nThi|pD+OT6IHxa z=^EfYK_Y(5SSueamrj^ayla6}tSLAurgUD1Wp8Y<x$Ittdpq*H@g(5-RShNol32CU zI|Ss1$R7H9$Y@hNq4&H6K@LPn8(=nPK<ORLN#Gd6qE@=J91ni&f*Qz<_Z`4OoAy(6 zwHf%*z#*4_%tu-!#W!AHc?lb(N6F0iPVouWeL7t)ls@}M2$N<GGH~XrU_<>)wLWg! zgU#J$`C4K-Nt3wU1sq+ff?z!P-FsM2^K|R%D@vRgEIl&G5Tl~mfu_ghOPOFgR$GcD zMG^s9@~386QNXsIDius9W6hl3u#<tvwEz3aIWu#ilXnYm3EraTbpi^Tqx+W0MzQPf zS4!Z)UgLKEE{j_ABFsVZ#JJ-rQ5!kJkg_Jx(h&19q4QI+I=4Z{uv64P=wd5=VS_KW zQ(Mw*z_+ijW@5u}-#$|?9NaFhg{q%enyuNl#J6rzM=Zh9bo@g7&IBw5j`93{ay?-= zhZ(|AoH6>TSR)~UCdY-`Re<GkOMecFxTyoOIoy<g(gu7c+D7NO0#H&upW6vAmnLBl zi3I@6(qC}={dzmU_Qg`#O4_kvk1`JpR<2KTu>Jy$5P5tL4r87##^y6>HpgQLNKh99 z5h*L<z2MeJ<cyj4u|RcK`-K%7!uzh`8<T5Ow;<;Un^*j79$-~BBzIR;&&Mz3oGvEm zn%+n&tF%WM4yXx=4oKIhJZOToO;UhOXdJu|_^DyTZqDkn91+Bgm{WPS&pq?x46aWI z-D3C9apBg{`BINm-|$=eRi7_i)$sHlnDDa*jE~{7Seq4&G(XGp+sX}gom=h*-xvuP zRPIl-3OD1_)fQ|RR@CQyC^{f`<wRL4e)9>DWS!67NAaodU3IYLdYW9^5N^t=D0J}L zQS$-UVfKQ$A{!5iu2DV>`Q^ca^Ny`LLC28B&00l@z!NZ%T5)TthV{aMP0gOs<qH?{ zF|%jLXwZnDSrjht(K>GIJyi$4eBo5^aMuV(&MFmRe6QsSONz75a8`9OBt&~6&wH@U z5{ZnRA?mq0DQtSI(W3*bacjo7Jvu5pa;?H)JM7CNRVH;k|3N@%A#&=DXO*g*w>B5m z-thwzXd+VhZ(YyMO8<X!{r@i?nT_Lr!x0(S7#ROYft2YC89QvY|HVh<ZVglXA|-=> zVTRn2f(EI8w}Hi16eEu=Rn(v4|G52}lGK!%Ae{seLBP0E+;B4syM;NGqG36dmNHai zq2c-+zstt!Q9JOq(k_Z@c#<jodn#BN&R&QAR_>}L39?&tWGDyE8af_hC5;DWAIKz( zv1DR-^coWdye1nKKfEZ$xb@bXQ%C;!>wdeTaoGCW-KOFU1!pf(5f89BCJ3-<>>Yg; zM9a$xiq4AQ;UwZ%=?Oi~kx%9MuC35Y*x}x6Elyj$u$Ebe$Ag_{wXZYwFfAZ0)M(qs zLL4RJDAdTW8$>`CctlFt9&GGD{kF8`b%!`^j>)ZvO&yHzgr*F397`qy1Ccxd1eD2) z43+~LfSDU?6Q;eb5tJFPpo9|@=z6e3Tuuqc5m<Qu1x;OwUwEkC5CeLGN=EJ8<Zf1| zsorfizmf6gFVWCY?`K`rmKecsmpr<G*yys!01DzsOqPyt76n=oY-c3WU5~6ScpcS$ z!ky@lSZW6^o>~qK64?uMK3-*<4GAvDxKupG7ZD5k1)(YpSrK?x48n(0B(Z+VG|;0s z(zcYQsLElV1EovqE@Y{2Oduaa3K{V6i(n<j&{L#e2kk-C*i%isQ@b@FGC>0^ylcWC zkjMvn-M>!fZt@_?PT^J$TTE<#g9brsS9p2M2g4h}UGh(Wp)r%o%N&Mw8lE4+=~6Sj z-@Ntfw`~mk2yaP<sl(gpWm!G>^2Wl`Y(c%$x6Nvw>2JuPxvEBwbv|xHj!mGZb{!(w z_>0C>a%#w8Z!cf1sc%}gV{&=7tLq*+7jxmW5cJrpe_-);+;^L5dVgryvSUBc>tMBO zcG<-?$whq=+Go|&PCriV>+|Ns#C`vGePP$+-qOA9FF~RSt04@Q<?w~Wgm%JR)<5!O z;SF>;0I%}K@~@#?y^hs$;921A`5^F7=nE(HjXkzU2T6h5V<=O{t8mm+=4#))k(W=e zyIX7bt8+`6Mz^<JU7L2-u2zih>*jjs@|XMyU-g`I{GGJ_^J@K<+E-Jrwr!?U9u197 z@25qZTdd~T(n*edxA%1U!S~zVt!c@w73;gv+v)RT{o^~OGKWMfoy4j6h^C=A^^zv% zRp<+Q%-grkcNCb5bySSm&n7Pb1EaUQ>)Q-1G}Dbdyadb!4j!A#jXR4AzPe;B)Jn#E zk5IEx2B#%6DaID9Ck;0fRq-JD3bzx&Hhh|MUO-OvT*S)`vN-3AI;4KtbDm~RSoCs{ zE6o%avH*EnV&?BNCUeD>B@&fSar7Op>dT$1rl>nU9Z`2&I^xc#G_j+i-7_Q8;Ai^! z5LX7~zR%R}F4Nx~OcdcIf)^&H!LPsL65RgRj{iKp0+KES2q%v0ElNWI41L>*a5dy1 zS%u*=g`+gFPZmCR#EO$uqCwq5FWwNn!?JwSuR`<xRKBb%5#*!jBV`N}6N^0WsJRk< z&V_JM9*7^Qc;ibMfk%FEmgJK@bhek7C|i6}_C<SGa`0V2SWnCAljU78HJcjERU}Ug zry@y2OT_nFK<u87*HFW+UO8tn*Mz4b^4v$nUvRBlGG#KEiFSSt2uB)Lx|rjb9-!c0 z9JV9lE;eo%z6xO@Ty`6Bv(4Ubn3J6;?~Nm7(Xc7{QEQf)6XYrhDBH&j8}y3Wk3;WF zA`8Cra}+Ee@2fx-Tzpq=;Os{1D<ErOMp3%LA84aNv*8B4DOQp#08TA=&8fd4^i+cr z>n6=+uIwrOP~Tlxt(vRj?$F!eE^zU1bL-l8Vx|`K<z!&vx@LOqH85bjN5w|NEss8d z$6!P-Nxz*-&kOBN+Nxm6n4QfLVfScW$NHDf%Aim5aAqFi0TR?$G(MbQ`)RCxwuqS} z<377D>$)?v78~%l*bJ|*XEY&$$fJ{jjRTcKF+>7M2xSkS_~bkMBwdA3Xhk4ReRSzj z;jzlV{dt`E-&!EP@qN(}kLyVuW;#Y`j{Ajc_0qhiU&)fp<$HRkMHd#TQpLQd>{#$S z{62$-q4aeK69WlL!W`o&5poO|Pjc^VX;H870xJAGmm2i|@|fxTr}4PBP}vmI=N6fi z9tX<kyEPZp(!cL}_rsGR=S7EZ%<CzL)d)qyCrk=ED%9sR<H<vZc_WpNj2X!Q&x7jC zip93W>LEG8t_<p(C2^Bw(5j#Z$V~WoX@1NJc{A6+HjXxBMrNZUj(slXTFS2_h9F-1 zWoDfuJc{0w9Bd&H-v|toA8@Iz%iI6H7&%y3{?Enu|D`dRIN0g`N0(oZ)?_S68|?OO z-5lwp*2*U$2(bGVCNNl|J!97Zb#|<tz({>gh#y~Aa(Uv#avLreJ=nHRNg;V8_wRA5 z=~dG7aag=A8_?6lL=DtY4Ckb}P1`eayf{C+mb*BV`%&2aet4GK{kbc){%ZOdW!wF} zJG?gYj{8Z?Z}|uTnZWn^JTPtkxSTHc+m6<gc3k1OrUvuQ#%GsSi(cITF}Xrgir`4- zZf-wwWajiT`Ryu|7~eEJ<;%5QY**+f_E<4cJU@5k!}a7#@$FkU_w7vlWPWD9{Su`r zXNk#4&L&H5&PL7p37m2ez@|{!nCj%-o*B)Rqt~#mS~G4~zdGE>u|w6k@_M#;HSbyL z-<jsykGq)M^m-E$=M6)G&7LWr-o@X``{_O(9-4>wlCRRU8=>LNz&Ouf1nb399G__- zGb&#m0o7|{G?=ewN2y_<JaDTEqTQfKLVL4$T2F|htL<Nvk$C$<!=M>6HWvD_X^<@i z$7EF6ZC)0$jJYv{H!L71iG_54RLw+zZL{RFV7`!oW3FtW_`*xUVku>(S|jQru~)oY ze(R%ZrToTQ!D1!NC`L3xx!V?5<JujUIn9~mRvVh_lKYHB!-46j`hL!e>A2#~cvO66 zJSL$Bfdk8N{aL=)d|l=%{!7MKzLi6K_i?eaO1;t!wHxTW<zE4EULhoAZ*H+SH*yS> zB62K@Vlac=8i`V`o@B))xI@}2vG-0o6B!%+1o0PT2gQ{d!+JlA2r+T@q@^G?zl{mm z{ovmv0BMGYpgL|)8#q1NKb40?HV5#NbPuR-8e<hf3Z)iGDvoc0ii#t#>W-O629@}w zhagxQNbI<)HSR-1Qk44hH@F8F7ZwQ|@ng7xb%5+2H3Zg!oZ3LVg&R^CsXpMvpmTcW z5XA@TvR6|U@9{7TjaepQi(`<o)M98Ajxq+&)CV}t!B~1iKPPNqSU|0Wh%83!3Bm9u zgBX!wYyX*4Hke0;H_;vdD>lr>Q6>S6rkFn|B)ZiE$rLsU_%p}Bo*(NLvGX?{w)v2z zUr<OE!;+>q(4_!C2HXRa{6GQ<iDd_bnt4R<y@i?=U=QadaR*@J!gf{1emFDw`GJc7 zWhnEs<`EHFa1WH`ZfPKzcOeVeFAH!Jpc)pCg~Usryqq5>_9J<pzcV<p?Xs%bJxQrS zJuVR5-MwJm|G1kyp9&4^AU-Y82jZ@R{y#$i#bWg06y;blbh)?3f&eZU=6Pc%JzqHS zZL(FIp@*}9r!!TEj|3UV7=~_3L)3`@+Q~sM>5E+U4<F}M*DCj;6b2kZ75Ws)?qAC` zxh<FNl08dD-?G~`8cq&Pr_j{f>{cwc8WsA+zsf!twJeQc^>FRC?R-JV*iSoRICj-8 zyzx68FWuVYc7R|f0?$ANyFbx%cg9*vhducdsr*rHqdi|0dVZi248A7oc)LFzUQV`w z=X@C=pv74Lsv5IEy2ZWd?dE*0`G)%5E^fRBo@nov3d^VnT=a!RJ0SLi=OS`jFUWy; z&`=T}=<S;bUNeo&#$LwY00EBm+SaG5x(ZH<L3<V%OL@U-g@$S<+y@AZ!Bu7asf{U9 zxLY&qd$3a~VP+F~Jua{3+wvWyWXqLb^t9d|+*OZQ5Loq>ZzhwUpR)&ONX4#SojPX? zfc3F9Pi>l@*MWc5R0|}0N04Tyhey*%rGnMmiu-#>M1%#YvjfWVX$p5Ox_F1durOsN z>Nl6Z`IyRLT*tvYBngA2C_%WU?gL8*iV7%Y!i&%-nk$xd<k(UM5s87bI=?l|Fw(>2 zo%mOv;MzF}E#A`;Sn6ZPhKko)e4>TWL_eCLrcD1~bx1GrS<#t+lc-Z8eIx{*5EmVC z_v&%^Wa5K7Ag^VYAeqlm*JFj%1v|S)iPko~^v~il3ldvuDF0RDe()}g9r}dNuY7xx ziq9A9ukbaQ`zp5v%0-Qvs#xwD@apS?d<z&zL(pG@G!o&|MwEuRatc<*SmU>_Cn&aa z_#<CQBmp3B%Trv$nJK~%0S2^)CT0!)k#!ZcJKnUWdUW}eWGxObW#9v0H;Mr24oowv z5Fq`h<m|v$q%R3;Om%cEJ>J=XvM=jB=I3ief@uR3G1#n*$<0?E$(o-9TnJu3=FgQ~ zM*t-hoCFp_;BZ4JfRFqEgl%8TJoe8C5@jb{Af6X>%W3THbSv39(cp9q;AiY+#;^yF zBpe*OCLbdUR8%T1#}$C_Gi00@_Of51-FW3S_IUFpvf~V+B)iMD#fknWTdx$^Ug3KJ zJs7T;TN+#5L@cuVoVz4F&+`+@vx_{xfNRS@Cir(J(v<HWjVN*rgQ+2vPt$<roUTBs z<(&UPogpSldF<Ms*Cw`bTZf5@N*lmrHgn5D`Df@6sqqXY)?<e5xdG+taXd`o%Y_9G zE-ySZ6ko2HKcyGg;wK0G2V2w5c1sDZKIvI%F${UnWz8bfIV&9;7#6;w&9vX{)89O1 zY6E-@3KOkQ*=<cyNR341k$rNmbjHbt<*ae6@StZSQ?2gz^)+G->N~6t4tT4`xPaZn z9DvWJYn)+ZOylJvRhS#+n8sN298Y}4U=OR65>ft~skxCODFiMu^sz-XGoqYxX-~*n zEap;hosB{XZ0ye1ULi<6BGH767PYfP7P;4dKj_QsxOL6JeGMn;FZ>Zx<D(EvTl`?_ z8@%KFVGx_~uD~O@6S-aCGJ!G1*vXHK9BtwHeM%8l?YO#JUhrVT&@`;#JCl5vJ>m!u zBuvF}1T7xu+&$oxc3R+Ik+ip0_Ks=P&0>bD-Yi-;LiC`cq#Bnokpw}vA?hm{plo0u zg;7vpG*`GngH^z#dZS`Nskf{Lz2<$>xPjyLGHX<lx5>)g_a+)mZaF2pp{Z*1TDGKn zny6?`p_!k@-A;y%86DUonLpO6x=-7;WRr<M=C?gR3XT^S$j3nLD{zQLlRQOtmgDy( zYDN#6Ph=eY6y_zh^Mi$wV0i{~ecQ?%vv*u2Lh~d6$;$i1RX9+-qM`6($tCE1^PhKs zViz!hvDaK0tQy(+Uym#*@f?+-Qm}f+mXF@4rWA!^Q4FW0hyJ>hmI28@4~R4&=JT*N z>h%^J>?o9H@`ELAEBm=ZEmL47n~S|Rh7mI@<}86sD5HsMm8hD=b?4Q7d>o>AKJ{c> zNUxe}yCQr8W-~N88<`Jr@<=(x^%vTmCaP>8Go&xw<Ct8!Tk|^B>Dm%fk2$UAQ>6>Z zRq7kGYWL|oJc-FNNESS>bXBC>7cx!6CW#-;Q&KJ?F`%2AnrW4@BJ1%d=RJj#QQUCg z5X2e~kyGoM7%n=G-GL%kIchLX8_fX#No{yE+lGaFE^4h-+*=~b4rur;4;>BtDn`Jd z8U?m}f~S6Hg5)E%q8Hu0v@_0{FvF{|W5)2LS;+IrBY!2xV0SDW*8CxO6=fY;?2Cs~ z@K+_-s|FKjXG&fYsSfOQ{*t`LZoIr1GHzMP{F8!uVPTSU?rN%(*`7b+T`yx`6o9_} zEXds+=12onLS0gXTs)cqAy#^EugEao&Bo^GV#raYVwuXLENF_=xMkS$hJoE(=J@ej zzmHV~Hc0jj*(EpClJ$!|)ouV!bJ#GM?kvakim$Eoi{-fz<}uDwC0(k$h-Xyed~&qh z>qks131XK>5`^7SRt%b8sdO2|ymNZ$cX;p)#=9Gng}-o%n*-jRY)HVndrf-+xW;S- zMUAaM2Ugw4s^xOsV~CfdZ3Q!Qm5*sM0dM+1332hLi5Z1GAaa!#yIvna4MpZOT@pX% z7jjIt{gOg>MNAiGwx%;#=rj>=?eVPrV`WvwSemQygj}hLz2}cJg?#PpP)FP1)3%bm zTo9HjWCtb9ijvB|Yjn9u5!d|3T<k9)CzKpc8`1leR7uU?Ry2^LJAd6Uq|$Ir2~a{% zYzr_)ZJ?;t!hOBU082$M?KCMkX_1NNbvxrj?dX#Ag$$M^O9M_tE30%FtAl$>i<?`! z71~)0nmJw3FvihXq2n!B%u@quehYxPPTls%itfVkI5bj(4CJ(Bn?eZW1W0h&znD$% zsNoO*?fNx{1?>kN%lRhE*jhvq=PW@ipBe{0jVm7bRX^=opb%j_3^uVBmUk&R8rMR+ z36&TjyrdllH-{3fq8m`N7RB|#N>IoWE~>02lgGcSC0uD<b+-Kp4UH|_2MJ3mVlTaV z-!}nEpbNYzNKdFL_{Fy-7lSUKAl3@0c93)XXBs9^UEEkRolI~gwWjGdpZ2PGP#vA! zW{PUqF7j)vLbfo2#)$+93rbStSxPlQ>vBjiH|g`Jc-ryFsk;J|jRHu&T%^`S7pc(A zu~g3sJ*9bck4G$Rr=Zf5YVUZ((a8ewtmltnY;^EB&7tkqYrzr4t76w`1W(25{8bfx zRfjlBs&{i_&(oTgvUcFA2xA5Cm-Y=i7pEFqEtw_hdY3v&sLG0Clu*m}59RXeEjbKY zxMsvK*~QM06eb)K25mMi7#-fLS^=iH6K0;Hy<yXtT;+!sZ)w2#O>f_YPs8Lst(N7H z*o-WI_%5h#Y`DsuN#fD8J<dHr?^JoQ)!N%*7f6(+_G^LH#5OBaI?IQ3mAEbhwcI0a z+5=SWvMs5;gYcFxI=sI;U%*kdC4c8|Z&a_-q*>z`ye^H8ZP|9PZ|L#7z;!qVX)bq= zP2kAHjI19mX$(qI?Fgq?*i38XyzsjOusuw;(i^w>Omjb^Pl*masdP$|+c$VFN4nfw zoXAesQ)xlTv^~}&q-VAJ0jc)~sUg-HXn(TA)&r|B$o1i#694uqh|Y(rIJwc@eArpP zM@6591MmOgDFmWMSS^sP%iCX}7Zr`n%Q>bnS>eHZ^Xzk4>1?nGF2>{3s47GIuEpBV z7Qc}8lS(?)Pwy^c^gD#m#y_rT@95k!1nJzR+pp-0sBAfzz@IZ^$aijE@UL#|u_p>+ z{$5#evPsP;7c0M<H+US-*qqd&F;5Mw${c_`woX!T^nwa1l{QNLRt4ef;7qgF<(_k| zAmZ}6b{fB5TJMN<sa{@_BYx4GwVa(bv4_V|OGB15bs)r1Tm92G4(TNVM%8{D>-DDP z#o$xZy73UD;WyFj;xjwH%6SozgT4hXatq;e)Dx=s=m3_)c-jdZlwR^PdaB<u>#QHk z4*#!?ZO$O8%f;)aZx73A*TfI7<nj*tgH{RHVOJopwn_U{$MtQKHvQ(4HZI5n%xv(- ztbXUmJ-^fs0h{*X;|J)dHErzwBJ6)VD(MOA3@xF!x&ODT&BVya@;?&xEt-?Hze%?3 zS+yt9$%1!ZkO5F?4J3U6XtE7RU1GMzD*#4olZ4$_j$yGRo;WU7eLyv)#c5i!D3vl< zR4uza)}9_Ni?2GBInU2Q=<m_pogCdBKA-26;hJ(Jo2SiBd{!c&Db>ivk<iAD!tBQx z>svlM{C|ZlAq2NAaEN(z_vm>uGw53m=jWfVySbephmBCf#9bZbiL(_jh#t6SJrkU! zP7G;YBI}rqJ|od!d376CC+F7gIhuF5H%1rF@#O{5k0(6TcYf-BOiY{|_XW9vBxE>d z=F@I#ph`iS3|t0Ak6KS>%lK^a{N86@&L{bN-|x##r%U<le!kw$%kt#<cGiiD+WH2| ze|RzL{$Fq5<?PXOpaR6o$VhrET7@Ac9hr@X0$nFo)T|G)rkRDpL+k3}@Vz-Y3zRxh z4HqpXSMD@RXqK%c@Allew<Gb9@tOP9Q_N1@3bTv6L$=<$gR=Es;FN~|IK^wThKmR9 zHlCMP;IN_CFj`cNY2NG2i|V`~pDo{&KoP<N48glMxZ2mt6W~8YgvA13;4-Go{nyvK zS-+g-2YY5<zNJk+xe<yy>FDlOOkjSf3ggq^B!(r+!$3L@CV_Kh?Z}l(nu9Jecl2x4 zB$O}KkE^r83Dmbv3P?F()S~5Z82|A0g5k&im<!d-iz62>*9LJ11cW58kP4ue(i5Ut z*WKpLXOiHVDw@eWbdu8>4>PsP)wH0rn$sV-YAvQAvr(E=Bgq`t4l3{7%GPa%9xK+% z89N==j>{g)R;@>dV=Bj|i@)pPaD3EY6d}3~p*`zS<871dWb5ve(8u>KzBn3wrI%Jw zV~jW;YuR<R%2ENb6*TUK=5bD|zt1Tm2N*-*c{R2z@g-1h&?07tvZeKi%uYDo%$ZTJ zP*q}v0pRnU*%nm)OMDJ&IJ2-a#fq`Vh&j7+!-^e$qP5Fdcmr%@N3;V(e7lEtoa`uy z2nI^bFc*5{XiXqNBgI}S1tnpz{rV{lc@{2S6Pz&t5f2wGH&6&$b407K8UYMf5>Yk| z7RVN3sXK9IxLKkhY2cP1D7}&J8G5jh@D?dZr4T!(3U_IcVd`L@;93wl0H{5*U{VM@ zH}aTn^)!c8^)6a;B&gI$jI|^j?>_hg&K&7krAB`-?RvV)AlMriHU?TjDHW)w+ZM|$ zBg`c^0p)uk%?pfeY0op37Se^FkiUcjpd6;PO7y@1eho1Hgf6<BM;Sk>BTYgX!crn6 z+~g4Mlo3!r-Lj57A!Z!vpj))0_zos|eHj=P_=7+~Ki8U5G!qzx*W#{fKP!NhP`+tn z7_oc+2+lL4B#DmT@aDIw;$5Gz^&lQvHB1#VR(*B~aHpslKMo_#0ys55JBObi?{v{g znOOxJi-s+CUVRS8b9#GQQ{){%n!t;-wn{K?0-}gxmI_VTo)L$k-a{ioaGVgmKs+GR z20E`^o=r$iW^OuawpsdfmP=+IU*3vBmv7V3FVTE;e7V+&*KWizz~@sn=Y%HfS!>GA zNl#U3x_ZBhO8fP2b`OLtDnT}THi#q7>|)CbwKxq4C^D);6H);XVIuVo1Os%gT7_zG zUV#lmnestHDz0t^=&)9jlD-C<R6Ekq&T1Z6-M0N@)G)lyBgc<gNFAr(OTS{!;h`&T zh^!C%lUPNPT@}7jlKMzegmpz+TOih)%Gri8Pk}1qZ)UkYkhh@0zk9E@PE{*KA)o1l z>dNBKqL1oS@>54)ui6Q$SqBa8SgHNQckP;g`Wjv`UdH6ch*6B>xKCxFL((!MF3@ZK zJz{tbVwi<|YG0;xC<@;$USpM=H#>1E)LASyY?se14qYbC)HS^wT_eHWdxo*tNVpGw z%B^>c`2M=gC}^P_eN^}`{i}WN1STY*luDgzDLNeV)O<<9TiR~>NOp(%4&{<9lO0mM zmXO=UG#bYK`|&`0C9xR+yH1B8ciW`=PN(ixjt@i*qNuT|CuGPX!rzzgyJ$yRbQPNU zi7b>0sulqTlD{5=w@|E{mkKv1#gp9Cj^d~~budIkYhUq#h}T~NtpLA|bRUWFw+0h% z)7L5J><DQNHVw=23-7m_q(q=bkh|R%PI$E`4u6W|Wm*SJ&)S!9fYM8dA&MXHu%89# zGxD}ROKj@4tAn7}DFIJJ{3*rAc6#kTppHP7s@@SBuXD<yN=&)2TbM^2j+@6>E16lo z`9gjJQp^W!$*27u_Y5lx*|Y`<@GQ-HM-T8-1aG>037CiS9Y&!=+v8sQVLhvNFw;k9 zJB}eg(694)V>Sxr%+5c}GWL}q2SCJL<sf&e|2_>ET0%r|-sj`@%=N&fEqfd|;TV@! zMxD4nPtH>JrrpEo-2%!Sh<OMa1fNkGgYV93HVp<vvlD)(B6<v_6O?&RHPgm{HJLsV zuk++f!zR-h>@S_RZl2)mV9_R8Qko*`z&t$!QEb(Xhn8X3eZKj~PNL73d5jhC7)|SY ztFZ1eMB92wLTObjH_KWo7!#wru{LDJt==FI!TB)$x3b!xOnWZayJT9@ROJ@NONH)6 ztt$sBu(bi5=l%j1=wwNg*m8Ug8OTke8Q@y&)P{2+m-VQ?HL$p5akt~JH#Aba3FpT5 zS>=yW8m;qt$kWjFTo><>K>GPyy#vHL%kNwN%mr7`l7rZ>FF0IWV*uBUnAmy2z5G<N z;EL~!SBic^ip#tb-cdGQ-rgMdy<iH<u~O?myOG%SGlj&|%eZpy6frkZw!t@x)jiEG zbJI%~Yr)7}PaE_5HpancUZd`B^hXzw7Ng{LPauiNO4Z=eFfMafIqw}4O%lt8XR4mm zJTuV|1if9g1A|{Dw7|JvI?Rrm7P119DXVW{BWF%AYXsQnDoW6w8r$*lNU3VoNxA3A zdzu~2%qhW{?S|S=x|8nm$mYmTYFPz%u|HE`gj<{I8X9u}bUbT8aYQnNwWg}L31~~Q z5PSC22)(C<2HiT^cuo}K-g5}_qEq0^PHa%%i-iOqxQ;-|V^P?6K+%4zwlGQgcR>F@ zn;_~JTVN?#e)Fi$LOm~zB(X>H{oz>ao6p|gx2{V4;kD2rq=eV=E7U#!DUgxBF_7SI z0tTrpn{C-fb$K|`h(__diHh<H=GBJ#gPyjzYLRF6FM68O{(4DNk^nN=dYLyDGrXhU z25vz$M;|V$Xu_9VB%zZyOZCK%Gi5AH<d6&81d-q~HVRr{raUXlyCLoRh`0Z7h!!~^ ze8-Ql)Gx|^whGo?bkeU-SNf2m!H7Z{m3Vz!3qEhhaEV$lLKe*@lWfF@3H=pUormWP zB4bVm9muff-((cKNzrH1xjP|$SeuPCPjwO6buB=B$>7;stZUHj?Jp#z$a<A2a{fAu z$X1A_#9IgwEHEuP=UL^{+s4U?c`=3WELMd1-=>Eop11XEJMl27#|1$v3lUW**-I&~ zR8->@^6E$h6_q*k5HW6estFyj310T(lIjliV`H$h_EZayj#Z_6T>k^adW9mZ<kn*k zH`>B6s$j9aF=C8OTQfe*SW-Ai&eN5rI^;oSE_Uy95UJ}B@DLk4M}@b@*R>Ofbwnw{ z&4;-nSXI-s)!N(W2}1xf!#D#7Wq;T=Ut|sLr(i!k7BTz^CT*uLrkW=N!F68{okGDw zK_ZKSP1)3rCKE_M*@HD%dz?3(fLTx`wpsDLp;j-g;Gf^APeABnlmV}U6U<3yov5Q& zRQLXLQOMJtp*cyktl#AlT%onXT7=COpoMHFP_x+rN_6||?2+x4z>8BX+wroK!}0HW zezq$??6&h?CELSe@8=dbZedO0%64(w?xEf3`03H@f`p{g-v17hdQT*N)qK}&9BRP# zOcgl{e=H}l2uKF#S?s6vH{bBmxL!@sO-)V0xC)ftI(`zATDTIU&dG0{5N*C;`LRsV zy;X&cb@A)j;GC7ILkoURlOHQUt%$zfo>2XfvC^u=v79swYVpJ&KD9-EUybS<$u~O@ z+PAnjv*0_t!T^7QTtY7ag>zCc_I?k4b?zN1dhTyC)a&mco$-L>crX!zw!_}*Va7?A z-uAl*3<9OTf+mgZNvPSAf~uxUZ+Z_qw1+*3RKnp0&;>&Z+zu5VpC4zr2M&U>+vTxu zHEBN7LQo>v`Q&>FmBroJiBS!*<UK@%6kb)>xcj$b)A#SD2=H6<C-YVqhlJqNLTNHM zP5cidc5LNKXS171y6tUV$~6`HSiG<Zytnet&|}ie-N+B%tz*F3f2$k@dIskIk~z#Q z3=IDxnKP}W5%()|eDn0?={&O0>{x^J0j+u%_4^?b&twn+-4Ch4akPLAzP`LwstuEP zwwsy~6EFq^nYOtjhdFyWN2GUUOg|2ckNl$SOdFM=ZD$xVOrQ*62~GHTdbz%BJzp2Y z&bwayKF>e#@yOb~d_O+2ZhhbGpO{V#cX47eb`}Faj%W3<t225z*U$0EuuZdi9(UZs z0B=XY@itMhqZ=F=ZDl)(NftdlUdHLhGfAXZrbgDYgQ#r39^A1;o}po=;+SEGd2(mM zgl5C4^6KWDdAY|u);f3Hyp2fXS)y^nao8}*aUik#45t6_XQ|XGFfBZ|bK-e*5A-+C z7yyrow!XT#d8_<wxGl5G63$u|Nwxil|G@6!;R*a6&OzNk3|-K)c=D+=cDgHP3WvZ9 z&B44#M|OD{ZzK6+-H6tR=cM7SFEJwjAD9_+QcTnM@aa)@4ifJ#%#6Xe(Ia%LwB9}O zejR<RlLnLNAv=+2E_!&u$1D1A-N@{!d1?gvati2TAnu?+a0ZO3n1j>q(J&@w23Q2R zhM1p60=VHcpgdR8vq^C|NeUWH`S~eVtkE-Y7FdI5xY=~}Z^F@IYJE!FX>MbJY2r*u z0?{;)4i6c)Xe=>bE|_R63VbvU1Re&*TokC6DBSDLBD3~q0Z!u9k4eg>P}EmxWLwjt zVWNwx1LOmf7P+7VhZ#h(6T(?D20me+nRc{BHwD53q@81Z1&SH8hBtO21>g-J-NHe% zM3h|o4T8=cG&2y8OkFlCpb)O|?{I39FavkM@2HimBhqZ%VGxp#d2pM#nIrYEuWo8c zA;&;uP7bD1?MCQ)??Agi-}UsS9P11Q5^VE|p(s#rsYyltDMs|JWE=;uZhu3;OV}~+ z&w=&f&Ui`xvMhnTh;)$SiKdW1x^#^DK@&4vSrGK(@Lz%+ZURohANfH9iw5?f8O2on z0XXka(IDHY2>Sw(KoaO=TuN;h?5@9<w5(|mT|lO(iU*DTu}i~>l)R?!uKm{}TW~Lf z7WvS7ys}`6K~)<1u23%_J`(Nn>L^xcu<U08ciDke;4x^*r=X-KSEk5CWvKjHg21rs zn)J|Zz@+^v?%fn`f(r&shirQgS8BxAAzB0h07^t4e-ms%G9q0Is(@$p8_=>Mpb{e* zsS&D-0<dXXLt0vmE5<j40Q^B2VJrZyK?l*Q26Xg}In?P9-B8LHhk8@{snz)%0_M~S zz{C5I41;T;hfYV8_$u?Z>paEB?+)&Rz0mg2stcFGFfm3zwsyq}^PmO(Kn#fg$)I%y zhM;G*V-F8{^FQ^5<%#%y%vEczv=x=p?-P>KlT-Q~%+4IEd48$JQ&{9Dt8dfO_)o?U zlL&m}65HaUuDZ;wJ!8lVlVf=(l<(UAKSfP)cCb#MoLMSY-q*eN<IBY;HF{4I+V~*) zo_}bHwC0<020@QWVKeW0*H0hYPbcufq4%%r+ncL;xp=y}`kQsuKw7-mz)7wRkQ8<R zPhdN2`*?omH&;RfFT9T{l4W%KF8)IG<B+xhl4Z`FCKwp@`5@)70a?KBY0WQzEkl90 zH2?f4x;DF-N=}7AdxD6{jV>P3BL-=x-un5Cy|iVVDBV+lYu6JBkV+RYEm%06+?Qvh z$$ajiP8`i>E)B-_UJi~ebydSt)YJ{qu-u7)*}<qg@<#*Fyy%+p*rCtJ2}`zSfLKM+ z)p^Ch>}*K!d>0_wyzU?+M3Y7N=XrkVTxf9fa(8w_DQK_e-=1z_0|&D*ONF|*Q4j$8 zhZO(3AJO_jIUh;5q#i>1>cM(~$U<I2+X}}X^7sY(EIS>e{4pRP1aM3!z4cM0koeF> zyPBjTf)RkQRoEj)o-%3yC=ZdEa!(eN*l$P=+S5N$Ya>B4ds}=qkdZu*q^>3|J6oA* z$m|A#y#GmC9JXM$sGtPn6(lZ4CVw4B3!7+RUaTu^)a|0U@Kl9s@bEl_&45>SG9kq@ z-}>}9l5+~ZFH;p&dY7lxWk@7MC==+Sbe#Ll$I2Y7_s8EuiM-d001HCwh^Z#*#|mUk zDbN~Zb0ZQ7IP$j<%AKFwOn(Ct2gRUG2K3sv_3;*Tp#+)f8fY797!+-qJ}bJ#6aqt5 zC07KGx5*BAGk@e73#w^Y5HkgOB_Io)uh-ALUs_ak{JUcP*XfAvvuXE($7J7sfWY(` zn!z0HP6L+tiju~kEhNofwGdMkn#jA1ZH9FpBX{vO@+MKs#w%~o1PY`3#W>JC<)2E3 z>&|4H4M9(&DCW+rcqIS~(|3hW=pYTe&Due=OkLQu6MM#%7wcTpso@fG<sEYC&3A2# z-ng|B57Q9a#skLX51V1-jc!Rt*~Y1X{tvPT79t)derM&L+l!sfA#H|wf$mT+OJHlh z36XCJErzY26|WW;f+XD)9!9is^A;ETyp#lDUW<F-Y7fXEi8!3x$Zbqs2$#n~*N3rs zN)9FT&SL|vnajc_hr}C=jH<RRSN@9MX~6sEQu<EVTosRA#^!kXyD>)HqO7f_SC<2I z#3VSEXO>rwWBIXIq4{$0rn*21T+2<yzF#E;<FI7%Z)0d}Ks13KI|WEYk0H`WALBda zfnzXBf?oQ<ur6_GBvJ$o_Q~>OPh?p<06$*f!zOywtEGb6LTyj3)uHKev*)%;C=`zl z<Gnuu3S>$Ib?ih@!ox^M4Oi9YOKJBFkkZslnL{&Fp*+o>nL=X>g7SG3CLu8Ka<xUh zRh6Oj{usqs=Xe29Apt)s(mwkI+YDqyG+5;tsDawL3PqJU(r98#9$Gs|Z5fYkwc<pf zLL%yl0t6&a1Z8NhT`_GS5(Eh%6q+&DCqQ)9eMOM(`BN+xfOR6DrZ%ibsAN^m(x_ty zP9{_3aM@}y?_w#%Mr*fmVa!xeikK)COcn$p&3*^r6~%ZZA;ELVP6(L`m8RG4a02Lz zHq3LYRg8|Xf`p6qar*FQEKw%#aZzOO<?49*`e{3Z>_VCQ-V4mj8QfFnos%ozi3%r> zSLPt1-kdz>|A(=62ofdWwl&MPZJ)Aj+qP}nHc#2MZQHhO*C}+}zhC!@?!FyyCppMr z4syrd>sxDO+^X84z+Py|{X$s4S_NJ2M{wgykJ>Y~$u6c%RFYZ}$I|hGW9gCQ&eXN4 zw;q*k$vym6u|(MgjQurJ9*JhE5`yZ^@WJq1q)bO=*#zM<D}pz1iVpE7;Y+v;xnlCr zs`!-kS#3ZZ@qlH^9IT-YSk#bLmB!4MB3B4=3d?ek$3k<<^Y~rLA#lvAySp?r(FO>8 zqgO$J9is_8r}vk~<+%&lxi1k!A6=7ZM=OsasN5yBG025=x-*t`=?7q9?jsaborZg9 z>jj#frZUX4`GG?Q$vNR1RlMo@qZOPujLLl_zM(xPMG==cA-aiS2iVs3VXFt3dIIx( z>HSI8An+1i$wWj8HuFko2pmVi<4)pnpjn}!wz9mEc)6N{WR(7r20_-dN09BniNcE6 zslx`fYk)VXEe&C{TUUqzJ`G@-D@s`;u@4m0AqW)jP5hhkVEhrL$1{tuR(x`y1%Q(2 z#oASG2)w<qV>p)MWpjNIwiXs->c$24q!W>KDqimtj`<W>C%Bq;HHNb(G-F1lOKO_J zjCCfvc0}Wya&U|q;+oQB)i74P(|>_R2<+Oj+d4{4A4u~V0}UtOC@0b`HN=za6jsN} zJR_pkWd4G-6v>GKE+6EBwbnO17$^BU<cq~IiW0%dcG54PRipf=ZV65@bisGfc41lR zK^uuo;u7~+dhb3NkIWF`1t9pdU3GdO*&31ZJOy;ePnY`&C7r;50$i>ZSlwj0+FrQ8 zLHvc6>13BDJjb$b)6y7VfO<v(LjCt2jN4r2*M|%hIE_W$d2h^fEir1c0dzwK4DLlH z>~os(`Pj*_yY8)p)j@Ifn!>U-vO{)GWe-Ap`M;<zv-5dtw>0bGMg~dsGuExaY$M7< z3W|@GSfT{UY|(Dis!81#(~=?{Tx3lzJPv}<?xJP1XZ}70gT%#7KLXc>W`Vs+?1}Lu zIib2LxfoMRR@=^*^Mvet@411Q5@4bR*Ib1}ACYVlFU`^Vf#ziY1$qjVY@YBhPc#nP zawpu;3G)8C1fZ2{(#kflW7G=!*eV$JF6cxP^bktpnw4dY&Q|h?fXI8dS_b(GKp!Mn zJ-TEuGzY9cl}UK~Hm{MNjNgcYm&%Y4b2xst5#)sXB*HS$k<DdKv59;My`4RnNimRo zf44Kh2zy<vUgbetbtPH6D3PeX;xoneajEk$1`Ekb3o;?q4K#y`kH8+2pP1f#=lTLZ z*~1olg^<bx8Y?%8V=GMNH+Rc%0jqveJ(3{TaTf*71GVZ^Totviz$XrfiL}aAX1em@ zksVdIrlsy8TuXMUi*gD3p4x7Nc3zVt)ptiizRt)~C4M0(LF6Q`7P%2TV-!t;fU|wO z45+yaXSUEtco#4QH8Cra!eSs#&!4=qpGL09jp>`=M6Ggt$xBI_bXtZHAbTF4i@h`8 zDwK+^O`}cwXG7d%2o86E`>1p*Stf5nu1dg2RsPEW4t6YcF{m(VX0EB53@w(Xnajl_ z76VV2F5u?j)WDpoNn}g?I(Vab^8i)j3yU7^eB)D%B4N_v`#kiJ=L}LV=fQK5C!2%% zQ*3$9LrG=e6@|8v<~>aheL#}kG0O@_7$EDKVnG6>XkhluGRu_<tSz+xiy1U&NgHuN zDahkdNpTgejDBSR>t^FIxZWbk0{5UijcTnk<Z`U>Me>yTjJpJ07JX~Smbsc`Ys*;6 zB=a2y&P+qGk`@gVaPm0c(BP&%Pa5Tp%69bcA=R=U5?C&}Z+E`#w^zO1pAWsCbX{NH z-3%n%F5fuXR(SKQ)vL`JU2}K(#^<vIp&y1<fP$}TR^SJ4XOJ0jIJ&4zehN*fgahB7 z=_dovpc;O0)(o2G!Od}nLl75iqODq7<i9bWa2s^(CI`TpWU}yjup|XGAA{$TKfzAs z7Wp}6JYa}IPjWi%*H>#=A8fPmj*Vy25p`K<K#vxm|Mg}lE~tdkm=g*L*dM~&Y`Si_ z8Y9>=kEx;a=yi|sg1mv2#%9blZYMs`fiM&a5{LbOlJoZczB=koG%YF~wXsgBRiUAA zjKzP6c>@&(PiMwz>dUc@{F0xaiaCgvhgRW_hAZq?-_z5Mu@1tzT$@wTHt78r|I)Or z+Hm%A4xvYYGLTNyz35`FrX7DTI@T5#ax?F@vQo1Xc5X>VWw~aWFIdnwUx`;UxtxR< z+e3%DD{yZ7tnE=PVV>6{&mqwFDUzo#HS%&f;F<vtz_!mjh*5bcQZG+I;L;<ki55Vw z*&78hC3Mq>$p8(%_T?<_IkYdHd$GYfA>e+sm=>BZuzxO{Fmpg8?w}p2CEPQ>ma0A# zfZHOs59}PleO#_vihcWG#(oc0GC>%#*yq`C-~sj{ZrD8QM9G^0nC3C9>I&6~F4?Qb zIDtKOuROofwQO#%NR+lHl|iYTpgSxZ)^Gnbal!ITZ)*P{*-fhMO4A>aNSLDGRwv>9 zVd?8Kq%A$KxxI&G|8dIY4Ha??Cf~wtK+d03Tj*>4Mm(R(vhZuypen+}m~Dd1Wpyx$ zDGQ4Q8&`iIGsx>E*LwyJ`cHMVl-i(^stiTKSPQctS53!LYB&5P^=D5nG@Ae_B;T;k zU&>g{gXAlAudq0`%bG2T7i_M&8>_ljW#Z=<99E^I4Ky#Oj_jx=8zBJI&1c8EFQ}4B z_1wP<manvJ%|A1F-JY$I_+5(ddptu^ueTg_B!eLdHJs3AIMPY!854Yx5l>E;-F&v$ zwjr&{|6B`5gb#|fGf{K!d4oZT38Fg-S6K$OB6lo)-|e>seZ0FvSFQwqBHyzmTP%e^ zPRAXch6+OUE=tTA1SNJi6W<k>YboQNX&gFIdX?N>#l@ff4Bc-(u!$J>UV2=R&=2lS zq_CTt%dI1x+WA{riMW}kJcWokYLiXB77~MXK9RbyxgoCXpqCjB`}My&_WU=|!Au-X z|I_H;$yn`QP5V`COD0w3@e3jlu;^agKY%*XoZNk1+Ik((n0<z*H&;mnjm`s~r#b=w z<2t7&&ahtHrQ#xfVX{<&?v@VgXO+sl`%@PEXjE@kZ^yUI`*CKt_`gK$$*^3sLAk%h zC?+wmCJrJTr`a03-nzWs5?0UxJ65<vJ^1$#@M@>fH*HUMUtzbjMEz}5f(+xdv=v8A zR64>r_)oefxQ**E$2*BvFzdWV!a=vKHqMXsEY8_Yd0v`1<*PzOupWO);p_T-^dpi} z=Ep;_UBQAfS~nStKXxkgCF!9}(Y>W@J-)r)2Or*B{pfOifA(8*{XBH7-wz*N@%g?U zE|2xt(8kY>XX!8a=tlk|Wx2?5MX`Kv>)BKFZ>VD+qZz44lb#4i<s?VZiWN5MMXPRP zBzMuce&2hi=U{_MCz|1srR319E{fHbF4VR<cjU|*al-P%a_!DTFJ<KXBJ<$?LFWAg zPT2EflC}N|nb(`i<-yl)SW~SZH*8!VZRXOWYFL|{l(U+n2<8Sw@aqlx<LmYg@dFWl zE?*F^m~Qg;&+F}!k5<!zJtF}B;+PNpFj<aFw4(*%|5UZtlkWe+%s&_gF8qg?mm2yl zkk)C^l2*LiJZmJzSNjh$?@nBfQ7vi=AiM@kv*U(=No-P_&8li<4)28m4oPVt9!{lh zrpUTMy(&>Cq2`#UP%N>2S+rC}v#rsLwM-h2q*~ass!^@5e_6Cr#W0Q&!(QpVP1Uk- z&uPheDZSH<<+$RpV%2nHJf?AcI{EuN9FI>LNFpTvm9?3Vnr;eZ7aMXv2;aYUZ+>O% z%3oRAzi7nskoZ%K5T!we74sLEpTIW4eW=i@(L~KGq!ZZ$bxRDh^Tfy54p>c!MtP5= z9c#BY7RKh*0skDkGvA7YOba;dvjNp$c;k04ONklTn?*qg26^KpK?((k0^P^-*3ELn z%n$R%6aTBqvCn7Mpv#REIN3wMM;CelVAj;?KKch;vi?^H`_1WenV?1MFsKeOj!PbS zne8u4loxY1X>|GvlE_O#p6DpLMp$no3|~~298^a?f8b%GfJKpnm<>lEFaR`-1z%ji zfUPGjiYO?6BQI&L<Q)jg&=@=)fF{pTW}dG$LbpcUAw0rg-alX%4HqD{UyT|{`4^j! zh<Q#twJ$%AlwKZi;%_+Qo@^wf{yvdF;Dma=wqp@XU$8g8(^}%AV~A^AC)|usM3p}) zp*g(v04@e_35z-?#tdfI0tLXy8Jr^X3g?`0Jq)Y*k|H96=xdcIVkn^bb+i=T3)|eR zAP54KCrO9Xfg_VC_Fgk#Rf#t|h6qbMKrye0_&lldn2w!+CB0z4D;P=;|JuR0GBg>O ze~6s^b_3OV7(f%u;_htPefj;h!bLgRV$3NtT82Fj+0eA}q>%&D1rN3vYIfis4fOIZ zOcjzlLEgR%kKnno0ueZVeSvrZhbCF?F5V3&DV8n<D)w0V3$}~j+A;6+T+L_f;+%5^ z-BQPE^+$)2M$nbxOc$&)>m@tJpYx8XR4nMQUYz7kzVFC}y(avGjrWbH(@S+8r_R8G z{X88=h2cQ0aUuM^tS2mhM4JF#AxWTc;GPFr7|+ZVFJosCGKJH7+v^~~g36`Rvz^>M z+g_|PA%RlC-6gL3&bMGO4|sn0f7m@x9A9vJQGdMC#7=#~Kd`$7yWw5*y;E`wBz%r` z=u*yYW<}pmvRlPQKt?FzjDzmh{wi@Th<Y+Kj2G!#jt+t4$2fKwi%WnUjk$CxwDp2m zFPLG)T!ksbXrMov+WiY`WG{@2V`v_En$n1^ZsMF2g~5*4H2RoRHrE(aH)h8O%T&_r zDs}O!*5G-xLuQQUBf`&f{+nzY3mDNg^ai($t64d7Lmb1%1<gfoMK-J16`@^jb51+b zuo0F;#f>53)8oq)g~5{@rrCX~OJ@^G_&jcoLuXx==^I%fmcJ#igkKG?S+H3YimFFE znU+~|j;u*a8}YKjtKC_9ny73deDsE{{jgTAmbMj+c~?nGK^)O?0JfMCNp$TyVP7hk z3>64R1JKR*a~w&2=CKHnST#j34}NA(sI~#642qX)9&-en>cWatp1{aqzwCXRcP$Ig z`cOOp5_5~dd(B-<Jc$}Y)u?e99QrEuRFc=%wA#r{D^+@*btX<ICr&0m_qQ?feVgJ+ z9b6QfgGG1m?_nS(#<BX0Dtj|+)$q$-3WVf1Ip%#+`hX=uc?&F*%OWHmkqgNMk3|#6 zx7M-;7?3P?D&DbLV!bkp$zS!CIq_-C8V2WDtERF3A9l2%PjpL@w16XLc21!&B{4v~ zJ8yxH&_QPs#4~8$7DAtSEK2zjjya<;qwoYvWO9Unx%_(DODl;`lWN$4ylUZVoyU5_ zp)+G2oRG(CJnYy^vanVm|1OZct7E`nH59v2#1?G#tPYk#PYt_bagIgsjzWGvb?y8Z zX9cGIxlqblt)3M{>3o`D$fRxy2rX2{CYTd#-l*f5{LPA;QA<EoPvM4$Snv!otghLL z)|6xY`ezojtn7I5^PiUi^4{)r%}%=@#{~ik&M&{C=&gN8XPds*36>QABUg2@B7y6} z9UcfZJ%z@|b=rIf_|>xXYjQ#mxVItAwcaHJ5asmxy=S;&W1`S@-Qg$3>L97g-+wz7 zET|-Kumn|7zAYDtvC@=0;#;H#AyPPs`ly!EZ1o0SCng~fN@^Wy9rWHI7BIFDg*?CW z6{x%>fi@8efjXX~9+0hl?2$h%ITkhiv4D>t(rf~9Q0$c~HPUPcXoXTg)3ai0s6di^ zZgUo_etjRpt=Xo-O;M)<1!29;qbAd{t^oy3#fSA!{+#+W)uyB3W$of~a>DSOB52bU zr#Q|>Qf(@3zh_0fz|HPdtV<;v?77ss19@yf*q$tJGC&5n<Lu{2F-&?L2NWyf)3NF@ z7o#y4X4Kkl@1&;#F9~j_qvR9GHie-3=|gcArT_^Vk%SxPPIgwG7Eu0gi$JUm`#q*| zdhCb7Rd{x<zkC9-AS`Ox5g=|S@M_9oBuA(X-+-FC31q!VoZ5s`10HG1bNL9m{oyu3 z_yn&d1rQ(09eb<%0%uhB%F#l@>Zh(B*9d6c`d*j-?k%aCaS@D&6RwouzFkF35lT%j z7P!)R@aB|kK?@+s`+XOP1N`BsJ1+sD$`Ya%AeU6a>#A%|ZFL>6%doM`CU<*Vt=kB% zWp-hm*#cSBJk5~7Yb(H?#n32!+2iqwU*^Be8tW9iV?(1-wGM_<xs-P-p{p3B$qL@e zukjBl6^OLXB#m0lHi`@NmO{*}AyjkJp%D6Yr@_a@xXYr1{ZfS-mI0tB;cA<%wHRgF ztdWy6iR|r)7I@gdP0d&!MI^q~&20E}8kpFmBY#+RjlW#LNG8x_7%1NW2{Hbwdsp>z znf{`1TwrU58?laR){I;$MvdPce5^DX;MP3`ZpZGitq&uZEBdR@6eqtm<!e<Lvf8+Z zd~K;{-OrF8q?j?=mF;HTlhxg1W=Uowg%G=f?DDy!t)!6C+36+7rY6o7z8y+Z-lcJj zrt!_UTO2r4>}vqnxz!xEmrB4wZ8cc#1M^IHPkGzM15iN1%IoRZSrCz(r|M!gSF_bw zOZ75Fr*K7Dxrl05AW+7`Msyr!xvtXR?S2t5#Cdqwzt$AYO@Xy+SDwhxB6f6EJu~xk zZbkH$Oa<`f<s*%`F8tdIux#-0z?fy=Cjk?k?Z1NgxI{^zqHkUuqbbbG`%ZO@hf%*s zzGcV8e6pX*gXmw260&y=sJst!mj3GL;v!v4j`m3{X&UuYf@8PhP<%<k2{;wK8S1$n z{Oq8lR<5Sc2e=T@n7N#y%PvBdX6%Iz0+%VZ%P#C!vh`@1rOg3a1)x$*^Ogf~KUX?{ z-8dy~Kxb{9<hBj<m3V>>CUnqH`99Q~B9y;x(-udYBFT{K&H*;gS(R%S^`QqcZo+!v zdBIK~T##B99f7dbtJ&#DonP!S<u07_H<J^eOrD^pd~<L9VY_jR<b5;uj<C)cq|cUr z`hx>bhQ_N>-n6R=N>GjYuGNai4S&wdMX4H6lPh@2!*W`jwV<qaWO}rrZ-j0Om53+| zIUyvbB)D1|ri}vHb1~JToqX2Z-6_91*`9nj&+l)GitRt)!tO$!UVr4!SVeID1U5?l z{W7s_o4#NtDdHzAjPuaJBf!Hn19un`+u6N&!3Z78nNKezQA^a`^pw}l>q(lGyN+~A zeKNe~WytrjQuWsyFsD9h_rz)uz}gHTNY_wt6r9h!j84bJ%sG{m+JJ^*^OQq^W5P^~ ztneX$P1tORa;<#UORZYuY@LR5fEe5X0r0EWpG1)VxC(EZMJ%0j&_<E7Rg1lBvKU#c zkkHZ42p;tR&22w)VfSJwMwa|Y6gG!58i-Y>7~YvuxSdejBm+shD#F%#-evt0A9Bu= zli6n{W5#O^{RfhwDw|2lri!wZd3~kS?!KGzW##o^xgL-Fx}>4RYK;Tb*Gy|-N#p5T z=VaEtsSzfP@fo&VY}#bmbS>{3J7Men@v)j+U%ggsCG`U$+Mx?x>zSQ;>)pptwoJa# zdTegL@w&)t-BwIey2{KIF7xhi#rrDqBUDTacSor0wQE93D+cVC4$dWzw7YrvZGlx~ z*K#WYnNj6MvbfTWQ<BrWLfq}A=^%ES3MXl}+@VgcG%u4Q+9YTX4R%B>=jQIk4`yL2 zW~*{yXW?5P1x_{zk-(pFxIeFYW`3gNTw>D30Sxg+bmVGhNtCZmQb3j<xG;)<xgo#a z9)oQ^?{2&|sh%A*O(;*PmP-n0ZV6NN&vI>#xsvW8nGw{0?RmBw%<Qe09nXkT8s&IW zSGd;neXM+d*uN*(1O9J$TB2xb;)?z%u{QtF{yjJyM?L_NHzua=!GN-Nihwq$xZCI7 z3gv}l(l_Is_$V(8D&rk2&S0^HTe;Exl_1y@NQ7*N+Tw@;t~mISaf>X?QB7yl<<@^v zOo$BGkA@KB0W_i*HO7s$V50%9x4I%q!%DDoGjIqmMpW!TwbXDplMW>vGSoG56+pc1 zjxhA>BK8=0>|U{lFR|Z<qo%>+bl98ZIJt7{;^;84=yooLhgiwY5^0q9$|Ys#?bYE| z*Z$bHr?|2CAYy$EV3^Yfx{KuN67O`qQR0jL-M-H9-!SMLY)t<nIHUR3T#oy@ukY5L z$)vVUvvmgX`;$t6!5HrgbM;3VAE*Ifwlt32o@Nn6$-Ep|j?~-0nBLg1YE+GuD~U`< z|MChS52hD(QF8xpG{dLs%i`nh(XZt8x1D>I@AHk><MH%7ch~plP_9+)j`usakYTYl zOP=rZdNPw`QP0lx<8?Z8-SoDLZO5Q*^d36ySoMFg86GlHC*J>0HbZOsZU3A#`jQ;O z6wd@h*t27sE^LR+td}qG+_ydHU!8OB&D)SPf)xfA1P3j>`0rfz9mx6$b#3HMG)?~P ze&u=b3=lB#>IaL7vAnf$v!SxQ`h`eN=1pA{y0m-;@k?uM@%Qi<!boez2hOjW{(ZuJ zKI*YCfwO0X;Afoovi*n6__S?6>%n{Mcq7P(&Yw}oAMB83ogu5`B|p7NzH_6WuNskK zoxR&cL6gJJ{eseKwHm?pkR8Vq9x=4Ai*w-hs)|lYU3WLi)*#?{s`s3VZ|sM$h@IK& zQa397M=($D2e%B}0^x-hVp(dEJX5*5Ez3T>BJGtoav9nie+Y~8B&!=qEaBFxpOt6F zYg{z_JUf#}EM2VKQwA;)N5r=SHWG&v4}}AQo5C?39r+~^=W1t?`R~^P{Q0Zj?&mjB z0w2n&tLw}TNH6=|{r2=qF^-Td8r=2P)qV+UY1W>WQ#cv1EHx3R2jO3RobSvV|Ia-g zZN-U)A<*6toPb+<yCGEwhXAohM8iPdoU?acLV~G=J6t<-f1WH1fivzvs*xiyh_pbd zSb;$B$v~BOSR!(!#|*_IHrod$VNZ2LOLy>f!WzUw!@eMsXUg?DqR^G~4VL40v{`Tt zau`93sBarxCtaCjv2jBxJE=Na1|h{GT!nWijnt_+sqiKJe0K5FRfv6haPp|fj8)Xl z7r?l>6C?r>kZ`8CzVv7wgC7Lf`hKrJ@bq#DGze6Kdim^z82AE`NBl>+6r9B%F=YCP zB>wBF@Gc-&<U|}905o@yN80&TeX!CK5xB}J9QXj3Ok8Im_JAoR!67;U7)M8S?8pYz z?D^33`iLl}0B*dR-h0S-^6C6j`sl6pS=_+!CFY+{P8$Ar`;!7L+T;42U<Z%mA(JtG zZ30$P)u+ATgZcy*^O%oJ`cGEW3EaGrPxaHf1brMd_t_`0sJ)#BMgZy{Y0>W3st}1u zA_jMVD}I!JT=_1GNq#GSw1W8tOpuB45l~Wi=jQ5=rWnG{_8AF84othlLFmq0C8Pi# zFGZZk02zo9grOaqY`T7WR#BywyXT?TYUd_bCzpP{em(0p56_Ld<MV!U9j>$<y^9LK zneU?Mo=MLSuot~elV#;O?A|_tZoOZSO?w#^st?|~YmeQfv$easyk6iS+JO3F2aEr1 z_l{HSux(k{{pX;(VfsQ}@k`<T2=PZ|Gu3vxelA{KzL@5|`iXdnHvdM)@6rKT8Uu~7 zVe~@Ug_He;Cs(QOm}zJpKmE}M2_BQhQ%6Q{rYhA64FJRj+5o_Qv3g(4^6K9*=#Lz# zS#@#wcVYX^Q@qDiXf*N4pfr$H2}Fr&0qD<Tj>Fyql*vR5f|mA~XD_Z2iTHVU+t5C{ z16tSIxb9EIgt6<GHPbst_BIG>0NlW_O}`vFJHOACn_|NGdygYLPM<sj^IyOVmFfVT zO>YB&fppnU$S&j7OBrK%51u%-i#@S3Hm-`BH^h>Z2=kYi_?HK;{W!L*%oI{(7ZISH zS;(pER59zqt3lY*T9H2Kse<+W{n_6|q?TTKaaRYQ;8}a^%lwL<ry<10cDo@ea>dG{ zA_V^?$kWHeD5|+HlP5_-J@jd)`N=>0fZ1!|`0k;lGO3b(V63~Hl;7Gr<-qAToXT)- zTTJz3q$U_E>TCp`Rzs2qJEPE}a7vMDzH#m4!03B;7P{O=Gg26fDz@~CS|B}Mm@mT} zpd3fUmM+>FEl&%?ksMiuvp8>xE^1iOhcnj&uj!mH#vh4TCB-J>FO+O=AR*ap++dzv z3dsSPfOTteL(KML-QgxgSn1r>5-f)l!zuzqZrEpiY5#x{ftkmlx+}skQPewJ&@`ys z2See3)}r#$0yhK7!bgSiUl%6E7hoZ5GML@Nnvd<-S+NmxTS{9L2)hjjrE%<;rNz0# z<?TmlC{#S1t2YP*C`EmVjP~MiYkVf+`Qwl$$akyFi9D3QL3qpOSZbQDrzQ|P(Mw_g zKgeRL?e5b`RZtLf=#BqkId~_WC~6eP>VI%u2eX&7(Q`5{;T91ajQ_E$Mig4^Ebh5~ zVLRfuauh;Fd=x?XjydR}kP_4<fI0{pX9I!AmqsIvmfQd7O)*veo0`yXZd?AY^)d`Y zHgd2ywrt#bjXmu*xQV1rCE(E*RzrjgLz@BgY3I)=u9GLUdSgaWY4foiw~sfRZftWA zv`_TUl1l}EZsDrYD@n7#>wO3z`3sF4<)&^|M-CU2wLmOAdZ2_9vstWOnXeaVh{&hV zKNBVhP4f=7t9H7aQ!#g`C~($4+DkpXK-)xQc)>7+HXv$ruJ-IQQ*}It3SeAmJ*=ye zTACL!|H$%<GB3U&*M`tf+%}U9@gf<Asf7Yvt@!(oxH1oAK04m=rAx9{S-2%=j~cak zf-tyG?grvAH&&(xF!EHf7cxDiX7$i}GOJ0GhqvYeN=!ETC(B)l8NbA_q^vq}%&IyU zsJ|zb6T0Nrxb$6_ECgi%=0L|cqU*@1;i&;<zpQ3qfl@w6E`Tfc91}nOrfk^zo=z@> z29c)rdVaqf6?FMpl(7TYa;p%g<KG&@e*?rdl@vH|)8TkU^-j+Swy_r;8totkrp##b zbz7y0V4f4|C?(jX7RL!BEt7&3vtL3g49W6Hbs&bS0M$L*u*l$OhVy907F)U>7p%CS zd<TB!*VAa-g68ggizoD_jKWO;`9yxSLG-T-!+H+#O`w?1WsGo)I6TM7Xm)eBuhGL& zK21wU_^Q16Am+dzIAb^_h$X55J;{9;H`EyviQk$jV?}vYS!jfZX%Eig&&Sv%V@<t9 zCxY-TjGC8~i3NYU)OfWklF=Er!rDSbWrQ=Cd52g`{^nl!)!i~luiDE{db#}5RPLg7 z_tCXKh+iM4+^!!1#s^2xZDbuef9ol@X?IqmjaC9`+D1-x{d>>AoGcy9E$Fu32+lny zAte2e{MjQU>Onda>;h#%Y}uv7?accbc_M=Iv0mTvF*Qr%ANK|iVJ0v#)vc5sRF+ec ztg$VZyjtu;#F)!cHzJOTqep2VZaV}Mv=S3$8sV;e^ReRSpE%2|bVir{2A9ei_Xs%y zR`bkO&HQGqu}deMU#C2m03G<8|6<u-^0ItfJetiQM?U+=`MdyufOmm#{$Y$DvRtIU zk3~WV(F-icyD9NGJSCbefqkNh?2vhNuwpZ}G<I3<n9ly~zv-r&T!@_tnsv$j78|8e zj7p=W*$Hf5W822a<<6xEIDG|G8-O7?s#%)Lmph%4>Kw`xsoA|rEFI>YaY80%U5brL zYHXLKa`I4AXVYOy9g#of#7(aguNu$gPe>l0-qN_o<53w{aRj@C#|ElfB<>LJb^4A= z(ZD(4G6S6H_2sB8t1V?637+BR$17^{Y9I+8K(}~Wud`>ihyF-&xQ<eC*avFcfHC%i zg7ZoP5xeGd;`ZZ!7O)+fYznh3$uB_0WX(?ftAo<0Nt2Nqoqi*q&H0P7yC*9(5|ztm z8ZxPoe<e{fdc~cp^C)V{VA|sW9J{%$6PLEFjx`~ti@_>(HJvUlX_J=rm3vr#C6=1| zm*E^Ooz*&mCc!no7O;w6<quozVt>Pp+bQ1WM)X>MI0SbtWqD^d8U+XbyqB^*3T}Fi z7+%{j&x#Fyi%XshP{uAjCQ}6&!nu*t7)+?#RZN-RN8kp;3qwP_GD;DKsc6L*S1xf5 z+8#3rJ3^MeAd=ss#$%!6gddA|Tsft-XpBxjV}~^GP$b`Ti7cIL0*fRg9#6q$Vr6S? zQVg4T*3sHJS(h`+S@46deE}+X$aRi3mukLt{AIH%j!_EA>SL`blxd!3`7@13pU0)L z=n^AlGt`utJEb?}Wl5`S1(~LVwQU1Z&mPg@Ckg7|rhyf(R7ZwfEbnZJ#E4lBU-YrV zl%#~Kqh%&j(9ohvNfkuKF(q^As&S+$o>Us7yh)3KA|bHb(ydax>H{M`e^MS$DZ{1d z-uluaNm^5_Sw$%eFY=o5SN_tbG+Dvb)0W51;g9JyoT(PJ0)*`)<5FnVz($Yl*230H zQQb%mg|+{}!a%v$y(jhtKKXfaxt1cU+meRbf$q%J@n=nQzR4AuOI$efrt-+>@*&uq z?^lJ8MzLsgR@-WBK-2j=P*Ppd<7g4fULqtd%YMeX?{YOHl^52=SVhpaIX{ci48mrq z=bC)8DE%on_u=+-I)5RJ=+@8xEKAF!dw%7??acy6O@l$vaCb{#P6lXT4wHpl!I}ws zw7Hjlxk@t`qzVL9E*u4eKEX~raQuAFo9f2k$92f;VF#)#U85b>mTYKBGF$W<mH2E2 z)U&62nWU=yQ2OA#oQE2`TzFYi%EI}Ba&^_14n;whN?I%1Cl!qYFQpner*YvD&2F<> zc|Vg*Ys#q8Jgd`VSH&)s(sQE>F$;Xc3rc#Z_12gz<*b!60L$b|2hbY~vV9EvG|U#C zlHy#LkcIbh5sl?MRYi6q3jr6;yA{DOlz!)FK`Yx>w|m9%jpLI|lOt+5RadqHcP-LK z@wUc75IHuYj;#n~fZs&lqJQ1q93UH%Ln-;4BjL9~f9>wU#oMZTvo?P+5UKE1<6yVY zq|@RdV!eqwT^sFYAQqC>RdR4F-<55=3@1pg%rHsWSWH;G{p<oeh$;49{T$zHo^k9A zLFcDb4AH`%6vfJ5-XB|t7TR^lG27{lnG&B3U$QaJ&wuf#ZnC9=6~tlNY|EXUqFS46 zuR+&PvB8dy#2*MINtV5ZX4Tu8NQd_`isfDvV#}2%G^BRbTRK{3`fn7?ET;!DhFf+! zH8WY~pV9QMIuYn(Z8ER_mUFBB1qlmLf9J9yRP4a<3=x52FU7_pEnjzx*);**;(|p1 z%)`~|W|Tkw+}^(aL#_R~`jqEaoRa8PW4K4a4J=4Q%%jZ99+%R-<4n5h!j)#GRC&ZO znBZBI+lSU-<O$ibdW(B_*zV|U%%LORhhJrz;r|9FFyO}j|E}~Ltc?HLZt?$@qsqa= z`hPjj8Q9oa|3};Ybo!<(ir8<C>KBSnx^_|NEO>A{`w)d<IKl}L<U@!Nn&I%3=4JCy zmru_{cJr!f79NRXxNynZduc~U#m8+$!AMbb1w&=LJBkW!Tt$_bwCFmLyXG->S$xW5 zdN25~({Z|Tbb^`c_*zg#q@=!O1(iyzB`cMe{d$FVpGj$CD|a_l0eRu(J^3Wp(`ivv z{aU}2RU%(mJB3ws*8oXWb+djF6NU!0AitLbgo>`m6kJu*^cr1lK|_C3NEZ}<m4MUK zP2R)CNgvrCD5v4b$N?mEX!JEj`7u1}XNsd{RAkGT$YF&s&zZVf&HIRE>k>4O`gYah zEP-wYFi3Dh7WfALe&<sMq(m{K=@F1)L36u#{JQ#vuBe`FVM%w$h+@SVaPg{?b@UxU ziG9CmyPYPJ`VnlRNaf^KbFm8XgcwY-WH<Ft<Ae;#8A2ANEVUi*-^K0Rr~juxZ;Ptl zp$f58uTFH!w;zj=dAcfLs5aF2zTHQl%_r3zV-^d^hh&AKy&*JZcW4{To<4s+5(<tf zo(hTA6kHT^)-;|P$s_Ctg%=rz5Iz7$1d3|tBnTm);4QKX4zia>B9RRr;Wa)JUObP$ zLSM!>Mp`{Vy^vW8AgtOafrZMHpk7ppSjf2WK7j>7g!z}rd})K_4WqFA8fAz~3=v0@ zSXd$%o$r@PJQ3dvhNmLSiV5x+vJf~3H_?K}<5L}kevV~QXRozex_hMS4V-tJA(|Z+ zoveIxa;eJUe)npU$)GbW2x8)NWaa9xS`o;yi%h+qX&efgArS(%!Ig9fjZ%&Bd)*)0 zw`}+LbZ567C(FTvlYp6%AtBx`xULmJ_1-jARB*TX=cSwuLCojD*ri)58;6$ZHh761 zHn=(beA33@<o@q;*wEeQ!GVF>tb5qe39{HarCUS0re>uS`hB=nPnTvVH=A2arx)4F zFlOUeoH1G7h0=cO{?5C*1Aw3XmVXKs43AfJaPxV+loqCO1p}l$HuLv8P&)9bDE4Pr zq}>*d+9w8bI-!sQG3RS7$g7)^ZFo*goac*46%f9FxaZu&Cxs?^ooP1<GXz)dZ{Tet z`U*SJdUI#?yVJaikKQ?C_GrRBKh5=<>4-ap%a`(QnbzZEoHW9O%sLUh2E1&UJW`(` zC0^a+XUA#U@}XzRenD^uk{sRU0Z0Y9S=SE>@HrBCWq%;z3K=&V6zY`55f*sr7wRyh zBcTmm>{vO$^NMKxlXjWZTP%7G5gx{Mjw_>}{Z<nmw(-m@V=Sj}nHC;;oi~zqBvC6b z<ve59TUU|cm>1$gcNRF8ek;qWT0uiT#l*9kPj=>cx+$2&iz0Kf8wk0doLf1Q?q-?| z5wueLnG*VE+>~s|G!M6(Ec!TyviN44=>Fm($Wy|E-sB|PX`$K)OsB%Nk)D2sn?wTN z`D_y)*q}U*d^a9wTI=lLPi~6BpvdRz<m=L)q3zeI{_Weqt>c|2c`_f?7#EjXIT?i< z`PXjQz9{q;pRClue18ffe%?R&bj%Mmt6jQVwEQ|h(uSSQrIHE})F}$Rt!1N&W2I0X zJcs0q13eqmQ&e2QZvH88xdO(k>NCf0VcD{QT;YuLSbA}8*H##5wk=AS<x@z`?@n)1 zOKeTO4!y3L+*mAj)N;s~5T4l`-i?QmkX!zEM{F<ko%%4wnVjm2v*1Jb8<a}7@{CL) zt1jJqM{>7U=6Dk5o{k-vb8>Kc(vjekxF@MTL-EaAr;%`vCu`cLv7A-Ce2scm@4%*9 zgjd;H(*A0($o+J0`4mb>EXAfrqk7zG;T48r{osYN+z^LilZ4B-;hNs~wb_U-3MI+l zCbai^WxAy}W~?mjSMgV`4&Gu^s%Dd~J25&+>z7%6<geA!45DX~{h6_N4j!6bqb|h3 zO?R~Kx^dv6O>+nlzEH<%)v|2Zyqn+Gp<c;k`d~5Sd<o5cjfbD3*1<szTw!CR)rU6{ zdS|&{W?h`f<8mHZ(#OmGvbqv^vRj+fTEP6CDhi3_EJ?J*m%~q7GcG}{fhXDK<yPO1 zV8-qx9u-V<tn*sAN@P|bzb}nLe>555K)y9^E$cTu<mpCiEL(rWeOH_xlefHaO^-Vt zTPlp2y(@^$H9f#BrY7!RcZWxxC`$EJW0JhySkx2~1t3&@^QjoKR2tf>WRWZ;hmm}p zY-?!U#TJF(q-Vb9x1)$1Q3E^S`IPPE#_Za`H1sh^&B${0(O4Y2xp9m6e9~))Nh(HJ z?0b(f!k*db16FI83P2_XgHM+mwiEP$YLfVr>X&ve5~$V|=Xs;eBzkP`t6mtqo#|m# zO{!klp1uiH5CP-=>b|LhL?N{GyLdrgMmW>?|BhG&dUmG&J!Ah@Br7vJ<Nqv@by!=f zmXr-~Cs%JCJGJzF(>7Ri!iq@55O9ii0*DrYUpl!juy<DNn5uQVc9ShgpW!ISwpE9A z^|6xC^uw2NaTPx3hsBB6^n;vd4!`%`$NhWQDBbQqW}3%DZK%btUg=b^H46<>GaYTR z-l-jMyHa@kQaeAJ=s{sZ3}oc*f1uyRZgTi&UH9+XZumVOXD};i9JH*R<E0#7iD|4N znBbxG=t+^=)yI6L?a(K1pno(!U!63zd%QF~WtHc+3jgD664X7Zgx~8Uw<k(l&$v2_ z<&0{s-mUqs60%s=2-krdL-BPvI(+=zzr5dXwdeo*zV}CazpqUmUep%xe?Gr<eceBu z9mH3pdjXYxzUvHH*12wD+}I1_4uSd1?6JX(4vn|79ug%>gk~G%dPuA!|5l~PG;)Bq zw%w0T8ey!;(NA$N(8oVLxaYw6<jj0`6`Xr?B%S`}bUz|Z@O!#P_&wdrb0D#P|JUiB zwNd-OY?Tk}_+CAI|F^Bu%*|JMsJ>U$Pb0-NbRr4p-mf>5!uRnF?Ex`=(Ln-D(5!U& z_Ld;m&+{(_{~Yzvob->cI$xNzQh`}gGrc$i-7t8nF^r3R2}Ua8I(uf<+iwk-(!eg@ zMK=cDI=7Im5=D-&_Y1V~HZ7*!5eKPR9wt2zbtv5Kf8FjUth?%GP~_o#sqvVOtm%a^ z3Lja~t*)MMD6q^)0WT!5!hPU`pO+RgQz~+_Gwky!N?$n=mythl#;_<$IK0Sy{gbW1 z)!yDO$uZ1H&Nb0E7I^0u931qHB=5%z^o~XD`bYeCePaQ-(rZkP?5{Z``)hK?@kigU zY+1vtDqYzjDX`<EK%nk|!1|d|&J6r{*_r#y-E;_+V=G<8o%}$HjQcXKXtPe#Pb0=@ zj<PGuY#eJ%ee8VG*4;tYw8H{L=eR>$@iPL*QR848!1pB~it0pYV{?$6){$XlK^-t+ zI%`_`^0Wq!wEeJ%`(*Csxh(cGZ(PUWP9tpU%={b$dVA6Ni46UvC_}*EV0&hdK!WEX ztpv<#{^Rxl@@1gh{L%ci;+;sL`%B&pqy~*SsuIF>8hIlYve3!MmSUmA{Ok29O6H7X z<<L<MynPykmH>2t^>YX8rSU*-ozzV~03-a>>*_`Nb!N~pV2e|RI*y=I`UX<G1N7>j zB&uFkM*UzBAVYs>Mc{)3Mh}HtZ39|K4ixKt>r?lHSZpa-$#USi909$Y5Um8(^k*U` zb7G<g_vz}?**W18Q>{M(<H55U$Nw4YQ@zVXLzDuA0K*%yl|h*HKRwZ=hwx50yN{4$ zrB4T_X`bB)-94QMpNUr57}V2fSUtQEK;QF+GQhT@RMibxI<KmEjFdbcG(<sw8yKbO z!&*C~^GI7i>_L2wFpQ2>-Te4^JQaS_{?m}7#MJHLK7hGrB3P5?Dp&%~G7YFZSOY`i zX@aguqv*pNe_#?W;^!lz;E8|($0OE;9B9lL`u3RpgQM~)^6RY>{ExTtb<zl@d0}<d zQ&j9H3#jFJ?1Sw~Rt&Cclx<-NUqf!!p0V_l(Xj#^*VhZ-?)yEAuNh^3J@Cj3pVUbc zX-h#9Y21~-*WZNTG5Aw>0qF-165uOosfY~V0XtGgLa?vVKc1cQQ-}zWG9~{A@bC@u zOJ;U~Ylh|w*_b`cZLaj`!zuRF?;VdB$5^ILYs>?!Y$KMRD7-N(Fl)p#qj#F7T{>HD z2T8ynUoZJ5TF*(8*}5fW(?(;r3fs=e0(9dhtwGIDXnJ4Qq&I9jm~_g{l<zv-kp)NT zP1?PK3(VAyCqj-VlqUb@)o6`juh#+RPTKz94%KcsG}jGh-cGj8bc3zQQ0nZPU3`<s zIatJ>M5LHF$9yCQZ9ct1??(jogF|feY!LJNL8&o#x~BgqHBdfgF3_%5=x;<^ufR|v zf*{jZ=6re_@&G<e;nJw|5C7E1CR%gDH8-nl2Us9our*2(RS~d~U`t%GBk%!A5QKR? zw{^eXFyX;coG3zRA3b&v7e-rpwg67rm~p~FlIS1vphDz4Fyb+i2GrD2Z||qfDLS9` zo@t>HWq2Wf!jQrXbmqiU<b8cD!5jetB9_x5SctxZc?j;y$omC|0Z-y75q94?wS5vL z;0bE;Rln1n(CmQ}AVL%&dvl@n+O^;;4(>9gV}DMN9gjo(&2!6GgO3#WD<QeIf;ZJ9 zvOOcrc|&BF4RR@D4vPC4H1fc)1pa~99gS2_PCnNNn`~k&kPF!CPBr=34*7NT+ps(_ z*V#0rd@jRPiGN0o1-rH0O6LZpm8Rm|2u|T<2&>ZxL1Rdh6mbNR8UIf158LmMQ>=HS zHo@D4Gqi|Osm8hShna2^Y4_tKzz>sK#02{h!P&aGc<u*QVD_xJPEg_@^}&{ZeCD1i zFz75?K_SP2VXU&EgOG{h-_o{Hjh-Q`OpoEi;IMehZT1veN%LcGNb_q1Z^BeHDf9I_ z@r21&R5{<2ms0nnQkSnpZtZn9x92=<P7rFYr;tpG^2c)AK0PM`zN3Q%Xd#&kqaEC? zCOja`w6?ede`Kr&7=ddFHw0<$w|MYDUMEE6ZCc3pYP$&O^6R;?;Uq$GK%OAwM@1tq z+@>X)0GeWOT}v*zVs!KOqH4!_5_b=(gw*sYe-2WZz)y(@EBp~eXYSMO2LEZ@XO8{( z^V6KG;a>uH<sWLRMh+dD6-w<cWt@R}Gs$~><dfwCk~0T0V%3wKRIrJcxmY0JXH~Ft zX@^V9eUQFP-t4Gg)+<4GiT-*3peDcPNGb!6K2nW`w_H8+xJ>*2DhgPfU8jdC=1lG; z1z_IY2vE^sykFzS&OkP6ye1F@m4H>|1nwWohSu3y)S&Opd~4jr`DnU8Njb_e#-==l z)nfscqa6|&0YPBgwFG$i$^61fac9axR9~TSfrqmuD$f56pw5~1*9@kY4hvu(7JG!v zKBJw?U@>R036d83+m7AGt1>&NH>|sCKVp3vM4{&DCLwKXOtuh+YF4f$$cfRJ(~+Lz zSxdz7VhfwTd_?>DvK6C{GuO1<0UfQmyJ_g6^1`t~9u5UwF4SJ_;d1%x`KckRdTEtF z*+Y~|MTX=&0U!oAYa%`6(Ty58&*Yc1eYfcc3X^(}OKLbgY5_P0d9y7&l(=}Q4F}kO zHAg%S`hsB#KBV#zDh6g}&QJB)c<MWgCp0W8da_P3M`Uk)>+pH0+9gOGTD8V{i?7=y zgRz0};L|OSJ*b+hlS@-4^(|>!a`?&u($&33hyi1I36~tTEtN){me76UgaZ8FD?|fq zI}Fsjm1iWH9M&p}IJP{dut74VSOQ4bPM2b&zGczQ6VCQd($8mU+QJP-@`aTh-7`Z0 za#H3HeNG=N$%LT@|CCp7TC^onu{|-3A;bPl9gm4wfhCc^shCBa?mDUTe1tom5wry{ zB(1=Fs;E-^N4~oK0!n1_IVv(`jH0uqN`qne2&s8eI&-Vs^nvEalN8?(dbw8Ki_4gv zg>1ez@<wl@o!78LSsrG4dI(edI2S7Urr>_Cg$G)b+1{U{<mNqPdv}YY!eOaZ>EV7R zUy%g~t$Yu;_k<sW)>ht~C!;<zA+4{NHI^`0+fcYvZI^Qer=GCF0ye^n9fCxp&^{=m z^z61ovFsRc8cdG25Vc793=p&QkV5MzEqW1xI|3lD^V)qQxg0n|y(2qKgM&SqX#rs^ z1Vtjc#+>+W&%dRH?i$P-8{rig_$4NND@@F?g3<syGXHy<C`^TVjWRy`Obse8e!f;O z9+?s<sLrwG)>BQyvdSJtL-o5vL2#vY#!Vpe@1KK4QE6j8)Vk#&JwSXHoeynSsf$Q% z>2174mmcsLOyiLqX1I84j_!$|eBR}kqPg4*{kwe-Cg8?-;J-qTz`(D?1QxwrFjD@2 zq-jn$u1VWSKZp9`q3l{D2_}4(x^M88b!UeIEBYce=bVUNi-L$)&p@2KpS~*>XX8e= zd+>716}F)Cn2=B7am%kliIaeUF^I-0qt3(PssIlZ(cjJYBsH4Omh3;V9cX+ExF3}Z z{g6UB?VeAfgo<i1lqmVB-KdYlYKrlu%|x|D&2dIoG<^uz&Qoupedg>lU^OCeP53Ni z2O?N4P|xVnMLvrg4k9{M#;YUG<tj0FtZf^S_4ZBuro}!!(4(URYu$agxi_Wp8HKCs zwabe_e9dJUJtw8EiwsZ#(g=6uXi!IQmVlOvrQU=1dF>Da4MNbVfl!`pRF*kGe;F>k zJ3f>dS3WKSX)$+)T4U9I#0|xL)p!E@vl~K>A}{H#ebp`22H)j_fua6AM9ghPtj~Kk zTW*;mOM2iR0kcEqE1j)Yf`(@(`F9&zt}!(;@Z3QLpi6cj369Ds$|2h1%Q3+gXj{?U z+7Y_;<o$z>F|5|#w5Ormz!P6gj}XCT|5%y(WV<%C5f{R8d{u2&OW6}Y_oym?jijx2 zC~u7SBiA)Qjxb~;Fw5#%wv1@mkQbX#$Fxm)a*e7a$F|>3hB0`yBzGyIh=`XPC{V)^ zrZ$GHCbLsZrhcn~q!4Ci^J3<_;i%%_YRVHu_gS5;?+mTwuS92ep)V}p8PYqTL8QJ3 z@c3CbV1ehUG*>SYwWgVbG3~sS<)n7ND+=+dI*sS3t5yaPw%d&b(=E3cu}q@^O@qwV z!MPDt=dbG2;IOw>PSgSpld2Z#B;>>e+Hil>uGr$fb;_Sv0{zMx^;&$AHdLz~SpiY6 zX3>&Boz;v**zH%<5>Ck^)a)-L^+T##S_xt+a-bM3s6`5wasw7$WOvS)0j(aOiB{h> zf>otfX5{>s44`TTHwJ#QiyU8<t?nIXY=pAfozqAyVb0URr9n53;+-H_H&#;hSQWA} zGjfuQmA<FEW{96bMzirGXZe@P=}cXN9&O8R>%1dB=~P+BR=&h^Iz{QZKWEYcgt=y- zduDzEwEN+U{WhT_;&k~Jj#6v4HFlU&bf2XDA{!rBvW<PmBvddrb$g9SVh@_E5m=pF z97Rs6T+bq*UZ;eLiLtEs-ztLc4kEwGIZt5IMJ5)Yij8Q{rvM#!#>Kq7boSjQG4O(m z2^heiDa;XyYhGjDh*{I40@)@SjP~#sZ4@-EnqBKkpn>!NT^qu3-sf}1w5~AZJ(i~! zQ6KJ^g4QPAep$8K<#L~MEG>3W%SLBNq8>9&3Pf`TeK~M1-+(@2nwZIp-?*skqcN6A zGjs2?L5*sY<Dm^x5-RC()ng?!RL%D}W$l;R7^CX_FlW=r`9Y?k?s0$9@6><0RUt>h z*$np2wp{%PPZlrk1AQ?eoUmY!wPB+JAwk!cZVvuHr2WhBL6{i1@^7Mb$|eH|#oZE2 zH$#26h;2QE9<?{mb(XJx6%bF!EgzaR7Z~*!sknPW1~Ye<zB<~EPgtI$TzsI~5+<ZZ zK88qBc~KM!_0By|b2wSi;pX&5s&jj+T{p}$v}V;{ayM;;oBq7a-(BmjlWxfmpC$I7 z_TztSS-Lyws<01%j$m4PZh)iu@YjRQ+d;Y3&|7U$4WLqNt+YooYx<p8srT7(sv5>L zYZa?5z<btQ3zW987(|ML0a)2dgrp=l9Ys?s;_fZCeRO`g0wD8+@P=X0+VbY}zqo$j z@QWlP?7zmIUuyNB_^2#(LeKI>^g>L>=VA!|aADc5g4%=Ij#SfbIdd65jtJ}$yxJ54 z4Vcp0+_PZzq`w*W9Er8oxFSELq;f4dfN>T6W=Q?HQNyqV(40wJ$=LAf=j~i(&tup! znWLw@k;JfFj&9X724nSp{zG$Xu`k_t;-Xtk!=So)Qu@WDxKyTS9M-o0jWvY1j3^C$ zEAddY!c%W3WD`8Z1B{EU{!9VZe{J3YzyZ|PiS^__gN+Wun7iZ}i+$jUW$Ui3Gzcrb zR<m7YH7(<0a6^l@D961^kj`RMQd69<@5G?xWuoasKx~xJ18bo@nY-**MbM;Lz0yhi z5v+fD=^0~M)kY9yYAqN*VnXVE8Ty<y)Ar$aBtKb16JKDij##wvyuv;5TnvA7%fwk| zZ?O+US3{aiE3P?74BK9P41FA`O<8t`aI^#zqKq!VSL8fzF}0i(jRZqp{d%w=Eu>J~ z?5P-&NLje@e=v4V!I?z=){bpWY-?iMwyigIGBGE%ZQHhOYhv5h$@%JBd{yUvak{E+ zySl2oYVW;%Ypn+?uQ-8%>g(awhwcM6ko@sH>79ax08Ee+ATC;-H(9v0lqa%G>DQ09 zo3Y44HOo`Rprj9UMbB>Fh6twEKCmh52t`L`1s<A=gy(D{QC_%1m!Y3kCu-?I$y$`q zK@zVt=fC)vp)|HlJ4pxL<wBiaO1(iU2Pny#X%t(zRQs+mz=o&u-lFgmDX@CZ#nz=0 zvC=u49C9(cq`@v2x)_Ky4m$e!iP(pA{|AMPk@0^kWXw$L|F=m~mDWTwZVUQP4s?-x zqWb2)bD*@EKd?VovIf*f3G(_2LgUr({+=8sdIC|GpE+r?4b+0JNnFaa`;}qE;eCGc zHGTQl(n~Q$mz&-4Nq|&@Q-v$h`r+y8UC80<@i%Qw&&TI6fsdC~<?F&-jC_vo$LSsH z*2s5-y5(y>_(n>PkL#S}>xAg<?{@Q+GxMmXacmj4Yyu7IlqO}VchL;iL0qK+4~M3{ z;#^h72(=0(E-|zEv>qPaV)uQJh4BWs1PS?+^V7xi)3X&%CS7@X$E;@j=PdC>kh<cw zgxGtCgv17ed-h6B{1ek8&-uw8`Fr{}+m6BFLakQPxM5v<BP$~u``z%h+p|$C>eqF0 z&&|l;<{{|EfOv`*0=8U9O2#$8?hm!7bg6HS<wJq4N3T&=cai93EuYnEb0o78Reo5d zpz)EuMD$&C$l91e>^E>u)*UrX$4P6yU4V2lU-vqk{tD+_RBNyS8Zn8*`i4<<6b83( zNh5VdqayUYFu|Hp5GJ}BR0X@*NMVv*b%IDjrE{)gq2%g0=^`baI9r*RL)#AN66N(D z3@fx3t}s^VNmg;PX<~gl@QnvIJhBWxv8!!(CLsF|o0XHw5##lgiOMnAP3eI2rf^hJ zkCublvHqQM!Q@Gqzi|88=Kg&l@*}UcWsc^KJHC$5!GFf$+$)saoTHI(Hq(V1!X~*w zQ+GTSP_NH`QV+xT8oT?aVrGqIKj2Veacn(MK%*LFx*&04n!J@|By(lR0XdA3JF7n7 z&{__7jBj8?JxdjCix`ej_hH%SS43w|@riS<#(`04h^3#vB0}6ba)?I%$dCabEB{Yw zr2j<$W2k*+PFoRlpW||R!bGTq{Fng{EHn#Dg62he<1mqe8)o9P0PmXT7-Am|8d=B? z$n@S{Nd-`d#A&REk;$Q*l2|4ZVo(y?b8|Z$xg)aV@cf<QG3~;bKuOG6gbb4YGL~Zp zxlW>dL%222est9h>ww|3SV<lPGbj7fVirUUr}164cr-_$Hn=qhQr7`P-U9+k_<HaQ zfTFQ%?Wjt;2}`42O=*RCNGABk#4mF>(Fjew0ZE2<2acS|5<G>dCP{kJM2kp^Q5$sm zpg8Ny;9Hv=IplERWu{<LUWay0D=QQ0DeI~57!jByaZ=@9%HxWCh-9a>!VDOb5W<)} z2k4v_2*t4(hPs8T2CTEf`MX`>-46@LB@-N0UY<ISD)AOOr+exe5M0s4dr9P70Y#{l zCjGSey3B^ii%b!t4?*FvLXLih1)&TTkN8J_&7z5;XT){;R0ePg{PqzFyb5IYe;&qT zm0+jyC=-3l3A|xi?_k1nTIoOK)gV(aCiY4`k+}|7UWCHiA^_Tw=Lg2j4A_LpsloB- zjs|*L+CPl3Lq>I<x&dwB@j?7u6RLe%8+tNiT1aa4c=yuj^}>wAh*IW)NI<ZyyT#K@ z*t5Mh=&^_sXuf3wVqb{6!_Ls-SabWEN2h9HbxUlmeawP67LPDaj~12aZ}phPJj>j! z0I)qCsvUxfzQbi;lWu=Bwy*xu=Hr0sJ!jEQs-@Go69Lt374<={06<&|o>Cn%9Kn<g zDxJJ?K#Jq|oPAZ)W$(3ug^y217U}g&88S?i-V*9G8vAbaSZ~W~HavVDX{(Hox<Xt^ zC)C(WvH5`CmP&hcw3bm!ucz-$6e!veH6??i6nj%*N+G}7?(L(Q89WgBoEj|+rIU`h zL$;bvKKlF(X9`|qi=O7N0;V8L?(kpEcShf;?4~NQ;!(?^$q=n*8wZv%7gvtmQKN^b zBrt9%Ba<a=P8sL8xMrTd15UNnr-Lh3%jA5wH_C!i%B(lud4q|}#p3Yb&5~pby9vR9 zdLh^&E|ZX?`Amy9y7p#!^n<3&V|ADl6)y`-he9`fM`k-`X=eFZN(1Ir0*1)`&6cAr zgz*XnXahJ^6T_NWa(VD*CVl%*XbFhcGrk|)!D+@~MRX(f1(CnlM4z_kz3}9sW^F-c zietqa1V8(!$&^vvnP5EU3`ck}<D9uRnmKCmppG{}e+}?X^Lu76SUO*LY2GAu$xUz$ z9FO>Xl7_E@u2B;8@2*_ZzBiv|KFN+ozzW#*z}a0^T%cRZ%#!V4n@D)#uLp*}D!(mb ze~V**Erewtg66mRnLcJ~GY|y2Q~q&HOaItK+V>~kkn)GWD!7Dr9E7>K?LB$?N7P-+ z;ubstkH}S5^`2`?MN2#JXzXDv;JF;is2ynK4e5Ej>wpi}+KkHHMuW7YjsPXrDbgb1 zMXbG8VH?o+<idcZp^xHamb3xFSch^o6j9mkLkoUE+0I7`CwD%8hn3)cdyQB~UN~pJ zZp1|uu0;Hq(@1YVnhd3AF;UTWf|7|{Qb!WoTu7zT#G36?0V$%3sqC=7M`bkA`5}AY zb62fEwZJxz+Oe(1%Tcj`O|+V@UESYT$q8FdhsET$(^?f)^r4xXkiH#uiED7i!z%HD zeG(M)zDQwS+G-zMb;ha-`u%$S9beREmSo&k*jQ^wZm4L>prkL!n8J}+`65CF&ZmRl zTiONkQb865KM;EZmHl4P0zB{-n?4?mAiYYm46H)z9idvMG-f+hiA1e%6p~U=MiL>? z1f5!MtNqEJ08LosU6q&`bAvzv4B<lyPChS<VvjS>7B#g_l65XP*&S^YU0l5@p}xZK zEM<Y`_Z_sziD#!~x`hL2EIkAC4R>l*z!?xAR~Etco-`Hu4ed{Xud2Z7P6V(2-yrUL z<Sh6Dz^7N}bj)TA-Vj-%4gR2X46i4<uvuni;at6E9909*gKcqmza>-GFL>R|QhU`n z0kTFI&Gs5*itWKRZ$&01W(q>D$Mh}^*SxW<D|(H3+s3z$7{WV)SJ$0HChqY=^;7a3 zc72739zmGy-_76HEI_+Wf0sc}T@bMozhJW;ns8gSqd6657i$9_xO#-YjB8FE#22N9 z77@++enaviX|&W)Cb?_pbsW>QvI3a}KUuC_f8Hr)yC*6lsE}(cf1b^|!jE>7NdV&= zf>pU1n+YT?OY@pt5QcP;gthdQu*>v5>Pp&si4z94I*4a`%ea`VC>+M4(f@pi7AXqV z8lt`K^uiBf_n`}Qv(|HeypmXyG4eG6Qh?Q;RrYl-KIXWDQUtynWdpSZp#nlmhdewj zDA1afLZ1`m_$!>*xPuu_Szxc9?55+qz?#klHX5y{Y0k`*mXuuY9~xYn*s=v2$8fw{ z8plhydu|u`op`lNx|e%h%d$;WuL>9Wmqo8iKj68qiFO=@_*Oiq+_`8aOu1FA=K0Ok zO}#1_RDIkxnlR@6B=sJDAEwGFWLGS_;LLy&Fx+ycD+GskKUicvd3@uPKt8!$EnrkT zwO@a20_aIze(U`?+4ua$z%YDh8P{1-TJFWUpA=b^?Uj%i+Fb8<vQemM<OLm53+sW2 zn!d5BSRD?~wU3Lm9O@D7Xd$``u~LYSi`^YIEn^Md<*>qp^ub=~?V@#|-F_i8T|1)z zK*F0s9vrVczhOIs<#6X}&-BW-jCMEW3vy%(7qPC&Whk5r5{La!<H-LyC>HHFB%km^ z0ZnqcNTkh{q^GGAu%Xvp`p1>oys*fTtXftzOk6LOIYw!%bz4=&Ncn?Lb%U8Mg;T7+ zGuYPTJ`rA8fPH4m%6=@rEwk3baZupQDEG&HtX>+758<-V=S0`ps>wa&HptABhLMCF zJ+cIJh^0j_lLtN8Co%BAH7duWrPRGl3Crk~r?3aLdK}i^y1;q`S)cllFZRVY#f-UM z-ltazEnc};UMd;BSUSsI=!yR#8LH1qD#JU6D)Gp&&%#@JfDIj%W+$&R>%bR|QUyQO zh*J?Kd5=K33F<unIwV|jTMO@4-xsmXJBDi}!8g}oYP;aiD&5aM6}b%0Z|FkrXv7JD z|4bTg9O00kZu?MgGihuV&yFT2%8f6oipOiZ{mX@I%2aKHGS{xM87)@)sf9pyQZ$Wg zLE-+qJaVu+<PZZ*Blq4IQ8hf0+*DGjan!P@WlLAD%sq)gH-QU?s5kPp(~{-5a3QYm zYOd6tvmH1&tgp!FjQ88mC^C|oK1{#2rQ6t?QCSbzA6`VDUZ)FQtwcsyEURnbqN9vs zXJu7l^AIi<?%=y{Yd$wFaCA9Q^J-8OOnNLS*6-iA&M>z57oKCin}U>tW*E)5Rd@f% zuYvqA>7O~~2Xs|STuYLxZ74DtyTh%UFe3w9uHFB^$Nje%W0KS-j<J?xM>&WmIl5id zb<lZ;{Su-CNxEeTMi$A}gsB$iIYpU8E65*C_pv=|uV;fOMCw1CjF|sF&iVg%2N>CZ z7_a~D`YmQ*?F?}IEoN=#3=jbr+nE6P_+Xrz9RY?mFm8H9sbkUq*nT{C9x!^2iT!)i zgqXeD2856lPRw2s>sGOh*2g<5GwRlovQN(3Vvea6bSAeo<vnbg_tP5p*7YAP(v8br zbC4TTH8aH_EekR7-b{bW#)=GVx3Mi~1{d2o9O|(3e_aRsa`H6O`?9VQR)AU_9=s;` znxDE5K8%`Sud&UM&j7mxgsIju^U-l8>bN2UbTIpstf?KZX}=W!zf3~<!}_lW9-Z6L zM003hyv<rzM~)e3`duayv}tenY2zk{+1}j{v+SD(@0r;i1GMuODIqR@>;f4Bn-2kP z?+-2R&xg<Q*ZjDV&-`ipTb=JW4sRdu6k)7A28;X@&=Drroh@6t1s%8k`b^8ij3`m9 zWQXZeY9+@*6#DV2D3Pl}Tw|QAXTuo-ES2ZraPi`BpoIf0`np{DNqoMr3tp-T?i}s> zKkdu#wZToGqqly*hfvm?!lpH|X^D1uSarC?=T<cY3>p`>s|Iy*7hTuY9a3~pTb;b% zQ$nLwKuz0b3b(HhC_W-aT+5`fa+7PHG%v3n_0oRkAc$43Tw(e`$%zkX$V5a#IuVFb zW3+$Nyx^KJ!y=}ZetMTv2mcUuRy>N`f!HZi>T!0zz^oLRx*U*^nT5f{OBCc8_Z*wZ zQAa$gWzyx2;4hI7nMDLPiX4;usxvwQp7T?MUKGaeodzw%uj=N^JKHVq1y+r5#W#HP zI|g13)c`z+;S$Xp_sY3sdYX`!0*=RGNsf@!?Z*0INe%{BFdapBFdcz@?%s&rt=NEV zPnm#?nmYye?+sV9h!k-TZjMOz!7xOKX)?sFvNU8N?iP*|Se<9lZB1>RW-ViP&~GXG zK2zonQCty3MIBG&1~39-|8ynlCAIS-!NWr&5=2T!Cs<JvRH62W*;}P}_(Ah|bJVK# z-ibl-y|}0Z<zi?1l6j<T9WXbeO`|XX3`5*WtWIFNVA~Eja5k#FIn)UV$lH>Fv-m?C zQk7!RE-;8QJcAy(et}tmSdnSy8OS4y=ipx($_Z?@wgV($Q34Zal6m}GmVQD@Dpj2! zmA`9jtV9Uqsxv;S3HzBfp^Mgn2vVgewI#ZK*TP5^vwK1$ej$wrMv6b9MbcRGJtgYZ z_^KDV3f=lN*<7_PFt{kR$IKZb$uPYIVr=O4I4Ng!Le@BAqut^;27?zNrUO~OUwLRc z{Tb<0Yn<E+=D&A@dY#itYb_5I&YT`Db<wZgh4@5~?HWwW$!Cg8P!Dl^^#Ply%|VHD z>D5gK36d62OlxRoN$EDK@d!2c7|}KK9TNN!@l}GfiIfo(BjivRt<~Td@eKR+-l=b@ zpI3Tks-y!E1Az-HO#>@UhHJBsLU0N5<<Ur8TC1;xcyfq}_rJ*U3Q?@F&>Rwh^PvTW ze4Uj#eYZBkV^3WkfZkC(ym*Vh-WZ}P<X$|=R_q^Unv6RlJ6(s({S)5BWV$9iyaLRs z-vEs&+uWV4v$x%^FCIC_M_tm{?`&;TWPQ5n(niFR^8!do2fSXb@aWEa%mLvAuPG&k zQ8qHWD~z<H8^a*OA)~V>1c<1k^otWp!o;wZ1JNh;PLe0&v+iA%Axv2(1ZnxQ1S7(a zQ$2X)?o4wD*C9u@3V8L=An&)9Bi2NsRE3A|PHnBa_;#r?GES1_)RVT&*^$~k+DFBY zzO^zLi`7%*Ij-~8>CB8MiHmeum3rOzqz$i}L;j6d@vrOTYurk_1=etpZOb2`-oAA) zUCz|3Vn>TUH=9L}?XndcY#sfDM<!WyXCCmUl!aU$e67%WSyi3N!Mk-&6~gBMHjy^Q zW!l&Hq7W;&I=s^Zo4M;CK*{=;ldfK9e}#P8_U~hCrPRQp`8fpEHX%&#R`N)K#J6cA z|G<|nQ+Pny#0Woqsa&fu(H!ls?+1=;H^0xJT01P}NBzr~gv`RjXZx%UY9xVH*evBf z&6XRr(QtLn@Uh%gJp*vJjk6;bLxgX&sR)YeZ&1LBmgS&{O=SeB$#Q+VWR&a6r|UK2 z$3xQVG|Dw>EKHdSK3^nnwbs8$ye`IGRlI)8S{InFoJY%UxQ1r^PWG=i(OOEHxg?3M zPjKF^chqpL5E;s2gHf{)DezciqtHctS~5Fk$2rpiJU+D*duOk?UU=ecnGUfkty5%r z##?-^hhza;2-msi?(#9c=|mVGRB41R6hueOS+erFzXujEdPWY&N?$6YFW6>G&1bQ- zdqz|iTpaE5X4l+iVZe2BYw>wZ&r#qoO)*ae)384>uOQ1)d~Uq@UzwIUi@b+)@IHr{ zLRV4Jp@#YBSvjh^RLQelE+bmq7)~jE1Kn+-Q2oax^M8lbSy@>BZ%by=kKOKY*kNm1 zzfU$f#IWZDDiXLb%%oQUL(=r8RZeH49(2?`Q}oNH+rxzw(Orx=nGEhouYOHe_xi2e zGx>DHBF*Qs`D7cqhfX<NYvO)+8IWU{rLEh-)b;)FB)=f<`?-BO((`#$<NJ31u5#8R z^Zgj|<8e!A`R;pu@wJ^``ivrP)c@LFv9n0~x}=l+{!Bj0Y>t=Klp6NS8HNO(z$>Gd zwp1R!Z^t|Dp7Yw!S+1|KSUXQlb|16Yu;jaYnRwq|pqKj}$J^IaE8bgc*5_?_@yMkd z{=mG$=Is=df2HAtz(H%Tz@fzI3(ip_4%gIOczRs&bIW_(Gb|h~H!7RGwTWlqW>;yb zv2Xg<33k_HTb;}O_Uy<hyB)s(|GL_<OC_{aO7X&VPms^omrWWC8l50w%IWu(Qrda) za#FS|mEg*T%SBN=xv{yPlEvd{$>I@!d%XE5vlyL!rHF1sskm`!cBAPk$k~e?(wP?z zr+fA2&lD`Ju{`PZUk3n<1{Tfby;5>w3f^J>fp{O>MzcZiAKSJ<8+qw;{Qu?&6bi%@ z`mc@%s1zn|IhPZ+vFr+{7Ctk^qeJ_^nM9#2WX6S&jKwe;X2rxvtVu9in3)|&+)Jn* z9Q2OH9Xz-A$B_(yl0g226hnA0>K`2yyoxIpylC-|@c7Qry|&}ML(JdeoNBsInDpi> zhKz*ePi&;6LE}2cYHusT!*~D7*ZglCB1wn5(?7>{WDBJ+`l9$s{BJ`s`)rCaw~}67 z40E^M{BrL0HOsb|#IEEf!9?ffM6je~agBijH|}@$fS7WS=<+&)Zo2DW#2>4wJ#cGu zVKxmgQ)wr?v$$lLVdfUPfyRk;IrlW_G8%JT#(TI1$tJuJt|HK*=03hKw$4>UOIE`Q zTK{&VW)EEW8YNJwb6^m{W;H487$t_jPGbQZST-2=?R$`RjQW1glq%b{B&mcdr~V8T z%i_(-TpE8@hJA=5YZ{|pJYblyG}h0fjWVFZj11~8M74C6Sfm$_@*%EmL<rY}z>{(o z{LP(n)i~xHFqtb5yGicA6TL(Ii-yJCRnp}T#UZMbEmP7JWF>HXLI?Igh~b)50+q<n zAUhEBKYX<+edkfQNcq>%xzZ22@aAQN;e#;EM*K)9A`HAcCcQiL6e5-qAUytjy~1<q zP=`p!Y+{aGiXC%y6fYMdU+G4CI#f)5;jbEPx!r07)Gl1!D{O|VTS$!8PE&UQh)|g4 zmrnl6RY9feg5Eap_zm#<Jv~E;x91$^bYue&&+Jf9D&Cv*rnF+-S#dubtf_MeqqMw? zHo^^TNm57%(M|Q#5k6~D5`@NJgLxE`!tUD_o;w&e)b3EQVRT~exZ;=l_YIEng<ob} z1tfeWiI?d=<M}vHT`v+@MU%L0L8cZ*EKc-<5Z@jN_wSoug%HoD)#S4=*@FB=FrSwt zExup)%U+WVZ%uMJUr=;EdGoxfWu0OWS5<1-;|2Kz#2z8J&iNd~p3jGjmTSIGIK*$G zIG7Ax1QS&Gh(z!&+TYTfH^=*Tb(aMA&=CXN^yqSRV@~)BNEGYpNMJ2MIkU?)tIu3D zknz+n$D9KLkGj5YiL3#E^-xqo+3`c9DDH3E2`ATyGM{o1fMJrf;DL!y(6~n_5GHz3 zYw&40NBj)g$AJPsanR~bRW&F^QadU@$`D+%>U6`7VLlaVT#7d|iv@&v*$$*??8vDZ zrpkg3J0E%!+R~^|?EnD^?J`Ymwt^*K?U@A?eNgai;Z!&ifNcD$o?Q)SgV7<a?6@n7 zCH@g1zEjDzAbmbCiYLoa<Ao|yDEYSHaNkt~7+k$l8s)G=nj0kM!A4!2Kot9L+@0(f z{`TCJz@N2LE#~INs=<venbFQTBo?$HDaB;(*HJt@*cuwKYzs*BL@w5FDH@-`5*ml- zr=X^=4yJ0Mm<K$Uv34NdS=R@gZbIRL&k2n!ZtH}c*w?h;xf#=VwqMqL%Zi-0<1(-@ z&sdT^q!VA@l*bf}2-3fNgEwz16_sd-z96cF4@PL<?@=x<lmzxAAs9;A6kHxSksBjp zfewHk7aO1?)*$^^m74%Lid(?cZc4012&23(jOtS=zWY^~s{+>C)KO$fq{FQqXD(v| z<qR4-+wT{R-T)fdWK4Rev~ni&w4V8<Qye8apMk#%KcVoN0tOS@In%F<KqC1m18+o9 z9X5NPeq4o_nf&M9;zi8h^F0NOO7<Y^Rz~W=|4hgj@$dB@@gZUI^V0sU`&Y7}C#<J& zB@&TC?*ZRNotSR*0me3Z@d}RzAwBwcg<K7M8+PAZ`)HlX=ONh)Gje`hCxNska5H7~ zs6OvrXJ6WF#gP^O<rtO)X6zZ~1Ytjj+Tk)-12ejJQuWI1c)fJ6L+yoHn(UjE-0%VF zDcN-4bi+l1ZBo@lU3`H^r<7#~7O)~DvT{qCJ+yX+`lD+!Azd!)`p2@f8g5i9?$+)G zjPmT)$s_wR4HMZTP7QvR*}6?c<_5Y{@YLj38;&aLKTHX8=E-;9EJo0GFx+Io#8`)c zn&Fe8*yhz)UVfF*c>+H37Z=<cF;}uYfyy=>c}%_IDap-BfMp=@vdR1wfjC#9iuAFe zh;O7z7CXtir50>H8Js`l1&eM~f)Oqv=@2|unhVy$3FzaI81v4m^Jw`ICWXs*yaCZl z6RPPPLkf6gG(eDme+{zd9_j6;)}-7Tia8q~g-ULBV_Yq3n2KRoCeJvcz)z1W^_Bwg zepapeiH$NAC0!L)_16+C+Iu-1ysF<cJ!J^cDJ=P%E3{aN*K%xS4HkP6Wf6R@nrhS- zxh!B)hCSYbC2Jt>YG3g#hiv9QfWIP(Wb$aPl3~qHIx&ddV0YI$G5?qgKoGU`mBc#A zC4E&HkdGF-08z3;`fvtYdf=!M^@d_@aXmyWYuro;uE2hhWHM#^HN=`Hm)znU)IN%K z!@RX*w~u^#G>hu6Bifvb%65WXz0i;~>7q~kzO#H#n-bBp2nd7-v$bphOkic9X7ZRk zsc~fCO~1*_Fdvi#w5lTY{pevCNq<ar<wHa5Z9r<DBOQJJ>`l%{1y1zw=Bvdr#zads z>Zl)O`O{yqPoxo|1(un*moanwa>UGokx}yPb=s>9l?>+&0y^SaZ+lXP&BMPER5!<h zNA&|iE@n^J3c(hn@vr&M0~*v0CSvz{@|vN;+%tc6Q|5*GVg`2p>|seDAY2ar!ypWU z-4Xwli<MAp;BJNrt3^!n?B`)8)!1c@ZEb&6y{W3DH8aWJlx(ug75KsdkMl`WQ*kg6 zd*|u46gyoMRC+K(i2;dama7_n@3~|$F1vbW`3KVSD8IP-x4h5GM5tFF6D5}{{B1PG zzsGR+7LPE`#iUw(mO)zw#245;-a9%+qG}~%tN|PjWR}H!m5Tf>NZig#cMz-F1>o5a z?BAoXv)q2~=p^!q7^KdB%NX)UFyX%_Er<A(xq#ZpZ#eMu{cC`<A;)!Q0k!!n6EbpX zlf6wE24?+a1ix^Ck#Ya3mL`~0?3&zA>7wwRZ8)7#Z*!z0qr{*lu1cE<RzUb>;WWJf zEy*<HB5FK)PP4OQ`IF*fx*vgL;;i{!FfUxudGC}Y%hgw)wRf3xZL|d~rgZd(^HVqC z9-`P6&0JRGa|e(!wL_%5qtpz8>-S3H@t*ev0i&7j*Pjy&Mcf^Lh)N4jdL`X0Ms^bo zy8$zzZQ*)@OQUTX=}0Q+_$R9ltO^5y1<iTm<>b4omDT0H_B3GP)Ag{m$cKhz?s;nB zq*u|n;?3d90X88wq=a|BZ)WKFX#G7wTnI{_UqSjdRct)vY*~9ujV2TMhz)oF02hQm zK`~^(2@U(dC9CkHNEaG26B%IBM8Qe-@89xb)9sJwncW1MD2lvFFZeKD7IsiYA|6L8 zdtPhrKN2q|WU@05-kEOV?mUV^Wf={m-X14B<mV#9wo#jxIeVpuxi8nEXJw~dRh%(4 z+G~{8=Gb!)+RSj$b-1%@veCR(Ff*o%sge4rKKg^Y59_}&3U?o}&D{EpAEk#!;IHP} zMkgqjr^x&!kzfaj087Y*<jA;Y*VZ9NpC;tLIAQoSZ{Zp#@e+e@Y_0k9EE2MIHx|mp zs@|akc0!GmhJ4ZcoTtnFiuo=MHR3y~0LfYlvxGtiSI@Bo`}`b{@dCxrnt7@$&Rl6> zEU<SI`$dIGRCjbaV(euOJBv3KTet?Aj0Hn5nREA_c>?xWTdeE^B<6N!epz|;x_3SK zgJL70qrJ;~9xn%fk3+%#Qt22EuZMoFevXdjGxbmHc7Bai14=(UkjN3S$)fS^*Q1vo z!KwR7X~4gPVWHA)H|WwN#GRaIVh{D^v~S$AyjBniPUM6Lhj(&L<U4_OG*+h$$Fa10 zkQ_CgnVn*oCJIvct>G!u!@e5WgR{pq!_P5;8HIik`>}nZ-21U^s-3Z`nNU*6ctn`7 zFluVy&sRs;bn`?N&qy2&{u-uUxtzY|jtiN<SduT^-6?brkUbAY-7AqNPA7HBMzN+E zj4VIKhrgzOFi-Rt;2uI;%Z97C=Yv;9pU@jedi!e9EO|FNPzE<ciZH|IljfQ>?l1|V zp>wthcL~u>!3xnW&7wC$*FZx^Rh$}4`{63h{#xNHSuCF4zmD8NIJ50Cu!~@vv`dnN zRKkTZHTMOo!t%JKWhcdWTlCz_on40fj91i_`e}%D(ihr(f*%=X48??0k%3T@_RL?v zS7O{#t=w;#E<pwL_En0>>G+4dt5AK<rSteNjA0)L4#84W`iqJVN~qo_o}!bET=YOq z;Bi}J20W{tFUxwcqat{?0p_7{-j~EPUqw95$8i6iL(Ea%8Pr+y62jS%3&|L-@pw-Z zP1O&xq~m(eB*weQ!Il|q<_Z3u8EL3K**0bcL&6*y;g<8_!iK-BCmZ-0>I%E#H-;IT zvLz`)8|&O?S*n;vl1ufPgC)`_IJR`qEYbtSbuS89?1=#D0nxDyg9dSEPyUjSgbSo` zA;3*iPLa<1E+x7qdt7fbI`1<%Tgjbk?_FoLE3jPeS0o2)L_ty0`c_Z90grq@LUlT_ zlfezdgDy>|cp)EK_Vupo)oW-F19w^iXj%}FRWDDCizVMlOEHbwfO*^)9eSEByu2@L z2<d905s6mDqBEh8YXv4S2~1-@R%Wr%A4A-wWp(OH+SqKp`d8vgc_&R{VJmXoCdgB1 zW)V+}5^0BrRnR<_tG0ywrE}HHCA1jns#^{;GqjRw3__IkbQkD<GY-#8feL(Q`>&I; zZLyielLH}s!7MXe_e=qQMj^!B;k;zRMi}*wbMZib9ah04b=3p!c>hN06vxgKQxisE ztFi+*v-=!PnLWE7l(Gv%<MkXnkB-2liDjMAYlU_U-#!cUuzG5y4XD{zR%<@B(6f6P zP*u#Ey3J}PrS(w#O`4mIlO^w)owUv%l||;NHXZ&Rp%BGWCwA%Q7k}28)3T|JS6$Xb zKo@5&u+>-jL8b6%l!_DGzaRP>ykSP1Q}ZXU#G)FODvUL~P->?E11ab66pj?0ysE+W zDV8w^-xX+f#O(kold~A#)R>5(lCMd469x_Kl-HXd7!5_t8z)@wN&JZG+dqGR$n+n4 zUsQ3AymN_#SnH3!Gy`@@o2zpY6YH6S4|FdV5W|gFTXoOHW8Ax_<}%}q;D!!1Nt<e1 z@c9aN;y*!+RrYjmnGM(e>9T}Vxe&dq@xDx`A6;uZunw%ct6eiv>t!|QvdSx#bu)L$ zK;5%uj~vC;d8um#Z|LGM7*IYf;iBfk;y2xxHVfxj^zsPn|JaJmvX33(`rNbZkXhU| z&j$~PY%9fhBH=)hen`y<X1r}m&KPLw48&4zR|=G_X{BPdwV-m*Np#-LY>9OWeW_XN zgU3~Oh$-7++q<U*&U6zs6RSZ@siNKl?Z|B)U_8BD%Jv4%64)`z<n9%%x+e}-TpgpZ zEK-71MO^z<(h7PfJ;B)%TH8KekXzt*>Z6L^+1l$PcEdABtGAaP-Z|v<!)D*GmxtXt zvf#b5O5W&!uv`d+^=Ms&nc|q~UxQTMn>?=Em?Pljr8hn}Y19G%5UJ&A?^*6v&Pbf( z9o+s@sP{BcWQ)w>q>p(7*C!WGx}2!v;<4xP`NSq*X9jY84x8!Cm7>Eft2c73XJ$om ztJ3?}i__pgfz^iqAHY)F{jPxiS2}3J|IhKka&NJoevARbE>i)0l5cG;#V7iqC_?aW z7>4t(ZqI%Ba;LiWBOpB-0xSK2Bl?~vB0tilnpNRdC4>30_zZUz*D!1ZcD3nMn}+-q z%%jJC=elZ-gC=6qyNuRL=jfkn;_b}h5Z}?t-0X3uT1eJgEVyonlXe74v&X$Uv|&}% zKR_h99}nZpAW7g9Qfz+8*<WrYX!UuA=SLZI(ZZZlb^AQjw%Ks)+hfVqSvuHao}_y7 zG0u-h>%#)r?50%7JBZg+5Jr$F;V)r1V}rTbPUmT-`ciAB5SI}VE9Z3l@sIo|ACwsw zQtk{oVotmY2EjCh$A6z%sIx4CcmNSgZqscXALOzIW`lnMv!(O*(dsXeXn6WQKrHyX zs*$t50S`jM@|&gPTKYQ7<`~HYN-jCuF}u`*>@Qwe*OHVasqMn;Q&ZCsTkF-H>932^ zy*4&F@>VxNF0B>gMDx3id=I4en!&qLiG=Iy-C}mAaNWVCSm~#q_yKX_`OJ-8v$!@9 z&+l+xx~*->3V6NTbpfc;Hk30GK@euj8TNMjUM(YxAJNv@0luxh$1S9A|6pC2g}OGc z{cpUqh}<k(19o>jNUPneigE;Dh<9*<xH)}F;%0pL@TlS#=aNnS>7K-1#hzwnQn7M# zbJ9A(deswWah3hPKZPF&v?n8$op~ogw8cEJx_~N!M56i#0Q=SOPj$+b^LQzGjMr-V z%mV7z0mK62qZ_86e+^UYP_nnUa)@NMU`&Dgd`2zfba++meHT~w@zm)Y&2^+$eBNVX z#*jsrtBM=R|6H$w3;SX3FO@CRKJ{%d3BrpyB@%-J>a8du*te9-0KbLvmiURkJ^k@C zBY9;WFDi|7jN>Pzt{r%n60gpmA|v|(-_X;+mETY|;3I4_)R-SQP$~0uQ1ZUo_f+Il zdw-f{Oj{N&_^^I~;eAA=B;d7hZ@-;EW#UzzsP2A)K18xT{3mgi^?&1C*;p7@{!jDF zs!Zt^(l&>Y>rbk)J>#N;F)!?4p!K;*AYi`L><uBvHo7Vk18{fm*_G$tf01RF^i`Lb zX(HP@s1x8I_FrQNH#TNko}M~dlE3XT@@(vS#v#8(d_S%(Lu%~4Ka6qhq#GhPSGT*r zUNIiR?6s4NVK;04?adFaj@ZAyO<b1v+H9;gU(Pn!@ZVlLy}PIKZ-VALlYD!0OXr+3 z3-4^doFeM`em@=3ID3KeF8m902_J~g?(H;OpWdA~=`e+wK(h7ThWq3g+IatM_wD?C zc>V4A{<^~d_4(V^yJu)u-}d{lB<K6BrRBTJK-Jvt`w7GL`yS(sT&6CfE($O6t>}x8 zZJ`!y6)9NzB;7%4*d1kAUKV$sC)nl6F3)D2UPgJFPWN-<UHegoQ-IY`R#<fYedF_C z?)~)SnI`?Jgr-ehIpuzNyODjgJi98ilA^S<61w8sXwp$IL$SKF%);H5+xN-qZ@95` zKXvqy_3!5^uZlop-?mS8)%0Q<75|6hYowv=p3gupIAwms2~4DR`;CuJ$b<Wy?e${u zSrEt7t*=`QqXl_G+`|TKsMH`st)tZn(tGojV2+0gFIeFPIqA&dYS@;z?ROXR6t=DY zMZy+ie(|_la{5sZ4f3tjbcYKq7Gs3^?YQGTw6wIeBZvv)c9&p}mpT!#)Z%31Vbc?% z)T7zpjjsICd{wYg(lX*FJ!DlSn(a!Jq=RukbXBsh=k&_>9Zyj;*}6zgraJQ1ZZhk` z{jS2wV$DJ)fQhV=toqnkcpU54wH-Q%RXB~98kl-y<q4oSK5nTyg++D4hdPA#`TI4n z;e{&974n#&YJw2qVvF4v_Xs+IpJ-NhrP27J!~v80wfb_yHaheq$}YAY`MmRIPsuvz zwGva{!yHV-u+H)CN_XM$^Pel|`W^kg?B!o|k<qv%^5%&}IpggyZEyBJ9DU%_>tYY4 zSSf&ZL4tIqC-YFZEsn;8e<RHayFX0UOC$#wb0uzB=EQu6ECi%tpVNZ~qUn<<6vaAl zfbGa^UYZwU{$E2(jTl?t_DDIpe3hxe(a(Q!f{Tu+?Jk+^ar|!lV2kPy_!({DON<0= zOg;oJbP#yf)*#fJzZuBVG9Pj@z-6XKVcHd!sm_0p1b}X=9WXQo_)e@hVC8w&1~_&D zXDA9TQ;cjO4Tg8d9R|;43L}Bl5WPzI%pG9T-U^1v{eCx0+2yGx<Ty%qX?~f?%%;0d z9yvIEILiQ2Xx<&ZcP<uWxkp32TsvC^Ln$s#NI^Vh!|FkmzGdW|scIJu3Jj3l`$+fr zEQ2rx0I~(<PkpHT0PgFN%9Z5+9>cmITr-C^hkyiwp}glVeLo9nM~4q<A1D~6A$I7* zs_=<8o1GJCUHt_j@Zdk%dhOK7ytmKKDz9>{4&2AY__H7N_l0m6udgn4sO%S+us#%) z6^e0#gb9mOq;fnZ23!flz`IK|#{4c+EEfcfh{SpS#Ei6F9`g_mng1ainKzm2;q|rM zqcV;6VX2vOVvh8ri;R047AxfPWrYQGOJ!lrdfI|_8K<fk;<pdd{nx48AVf)-KjiE) zuHg0r(mFHbze%RtAF+=c&X}1Vb25xQl$N19ncKWlPA(U?{sWhPbHtX=^Mus%rH=`E zjQFMb8~)pLitwsVpL9gyMLJRM$1rZ}LreB_L}0ghd0rDgiKL)T$_hqhk%Y;0K|$_M z*r~n_<+46xj?+P~;1;>GuCZ@QD;?F2A<y(@!MV2gNf{Hs%LpKy7PW?7Hah@keAVDT zmSA6*36nOjn|;qC`PWCy=;8-D-es8acv9W_65vID4c(03g6J+k*bJM(YNlMxET5Sw z&fG?Dp#3Uhx}0hE8L=4~DbK|3uI383F>^4n0Na-R);-GbLfF(lnx!~&ox+@eV~U~R zJdUS|n*;E<i<1g%jU~cUbGqXdR%%)XnyP8l6l#=Rq=(M|Bks$v5gHEItlQ5O9Y?-9 zgo)${w|LgUUzWHLGI&S0QfMWYDV!7H&n23ZFukyVBxCt@la;H+%~h!kF+RPyBuTd0 z?#B$ftc}m)2wk|<eJU2p`3z*05IJ9qU?)xxvr<#Io4rZpH~h<E>2L3ZBa(F0IiM@; z9Lr_`kc%B5P`e6cPsCgl|4d}CMVQs9S_gTnAHmpV6+$hTn^D!ea%~a@O;M+9x#5C| zXqJ*n>Aacak}e_LNG(hhWu-A!E=%~3n`VuWM|Vu<^B;r0<wWQtwq~Vq+x0QtV>mxk zOK*#bC5WY0J#a=ul!|1mCBD?M@nlL8d?~FV=i9n#o@DsvZgqi8OzMP)Z;W2=xT*cK z`1RL&SWH=I&<>ENJkXt>hirkT#EKqomw%Pa(VC)w)rXRFY@)2762=ACk)kXZqP1Rr z2$DTaLX^owYoNvZ&ZowiuhE91Xi+zC?iVIoa{p_j_~WeJHxpF=8wd;Q4o7sg%9;n- zz>Qj*jpTqmis<rCx+&$fQB1*{J1t0wjGD+lN4IFB<LmRAgdz6bd4a>H0C^Qo8QY)R z;)qYrATKu(g~BgB7R(vgo^7`V=bk`IiB*a6!J8e{hqe5B*`_`%`?i&|zliTlpX?rW z>X<9_1H!#b`_Ek2gB-GQq2?WB{SxuqmEu9kduSk0&MDL>KNT6)H8A3=18ZA<KsZ5= z50_<@Q62N=DTySBc|UN8<|Vqfcg%B4VbsV&8666+3%bd(armX2McUW^c+YCgODG00 za&AwVZ#G6mq&$iAF0A|84HI33s1cOCOz0hPK-!T>FF}0(k47R;E$BlDz6Cu0?-nSL zqSLW+M6pmDE&SR5+!EktqDziqQFfen*3z4f-U#rg+7%@N>(wkU9hI#Mn^OfPiNujx zKlUgsj-iK1`plJM0d5p<dawB8Tg~IS+(;5zxr@5)ynkpb+JTGNAcZAf<PHT-(U2DO zM^_jT#B+iln#J-Jxe`7s^vr8|^}$lH2O(Bqng>{I7>Dk%j@Uw-CaBYDTQ7PDpjI-4 zP&-*C@8*lGSjFJVb%pGb^6aNVv}E-?FbnNI#9{JVdBj7Yzi4>fpKi&KJB0MI7tH1; zK9rvqXmqJm8BDdqYTfkW!)A)(D8?|TFbD}|4_bGJ3y?6)Q3f5!H@CXolWi1t3fI>l z(;~KGV{vh8{?XY($V1E@Z?3lfy3s}-kv3xmg7tSdY<KO5EK<zIyGnz7x1<_0L?c^P zHe-~KVgMbuF!h?}0@(rycsi*0y-;Z-h#|p;z?!~_VSsAV03*hnZh&0f@W5dP3MY8p z-}uj^pbEGUyVx5jEopd_zR)KJ&M~z&pDGxB+Z48W014Z=KZtsYa5mlZnHHfdl-HGE zDgnYU2rQ@}5HN=Jrk^#M_X4)H0iucb=LLAc2h^v8jR{>~9%5XmM4)_i^%I6vQ${8E zG^5Z*N*0~;%&EqW8mGWoIku^m9A1k1F*f@IZ?Xgp6OL#$@lH$(Rck}0EkJ*o##*Ou zg0vRl8}QAFRHn3(JG>W4IiTPv^$muXWVm?xs~q~Se9a7tyTmN9F)+Qn;7Orq-2|ti zU&<?a6XHb1+iu(UYj3S3G~7FdWhe^G^dD6>l(IGWQSCfT#bY752ZxDf#L>c?tZYd4 z=3nsj()zS|59DVM*hWp4zxMU42L+9mm2pG(R(u2CDOjDJS8)#>k>b%({c4r)g2zWg z%>3x)G#bN-&gCN`Q!1G9dD!*mbt5r0A<48So|+sgnf;hlAMB#si~JRa>y$!f#Dr?l zX7oa@MXRRD;2}OD2A5RAaFl5HBK@anU}_sUIX$CdI0}V!rxcn=Nc43$o1`Ef04xeA zP9>0T__+Ary&(k<8;M!75fnw8o%)=~bLRgvhLaov4t^U)Vgg5<Fs#qS8i}#us6&&B z!JK!&y(7b1nPd})#kiA^wJ>WOkC)pRx1Z_kFjkH|EsU`F0=yUsN(_R<WkAlg@c|&+ zEj=hI^W9ChQJj3^pY)h|ib!s<?A?x%^m?c6^4XJfQsni~g*b<X^?bf$d<GSMFD7%1 z^s{q>fGy*}5NcZay%9IZ25jKz`48f5n4~e6h&_{W%W#*Z7-O_}G4warpBI#;dL{NG zwef#T=qUigjBnBpu@RsW(1smq-7Ia7Df4F-%MfWtD8N4?x8R<nsIWq@DD~4blcm`( zYC<rKI#Pc7;u{~mm=vu<J@zLXS$#UszEm=Q2`CAa6<z<6I@@wKl~B^D<Oqyy{%#o; zaCy=HfoKaeCM!Im)<W<QYG=W@fvFgt2@4MrImgOe#k^K#JCWs=u_^RD(uV>jD>13% zK10E|h>S>hr}j(Bz37z8#*4$1^!@CYB+t`@u#nb)I8v%e0A;mQ;yCQazCu<C9%>Pp zQZ{9iV?i*PQ3-ANRZ*jAPr(x%m8DkE&3nIr07MnXEj0Zz^W%&E!)5ryh5&<N3nL=8 z=XiM8_kw3qLyHx9XQCM`A=%_@GmeT43}}QzkGb)QGiiB1#k(T&hw_0uma4S<yfIl} z0kkn~SBhsjzZhc?zE&!^h2|F1iV0JTGQZ_{xApXiAh?)KJCD^g;mcR>5uBA;C}R=D zpuEL3TNLtUfAK=KXaHLfy=Ar;G98|gQEG3fYvQje<Sh;2SUs;igLA+c{smNz$V3|V zHb|3-bmBhKgY%rueBFvDU>KD=Lfz<X(TMQ9LPUO(x|K|FMw+VtL(X(9ujLd~+BzO} zY*B*L3cvm#)zV?!6JQ*?R#g5<qO1^5`0A~nr%}$l4rioVx>SFSc6;c02jj{lxRL{g zll$sT5w*5ZCNnENmcW8>cVN1$LO%b6_HQd!!F^>8?WV5jrs_60&%WR67Oc@GyyktX zMAN2={H#rkO6RB7IUi9}U8z7Msr8&<2*0w(+;>Zx#O2+*p2E<A-?G!Xu4Y&&c;YzT zCEb&ROiWR3Fy?eZROq+kdpd$2cw8k*xwy@ij&Tmg*M`zvJ<-VN#L~vV6Eav;*hBOR zgJHG)fyeE+H@%*u3%o44Z47^xRzVIQ)b@w~DDAOwY4vZGA>F`hW2BxgZDqyh>2nRl z6>G$0+(nsAxV_f~fQVKa74>tQhi$WX0czMECHKO~5))E!giVy{CD(V62D3Flh~3j+ zvXT!1Y$sOY4d%cfW{?6Y$mj8y!-d?r?&C1Q@k#d)k!)Nzrcr5D88<~&j?LQ*rs$dp zZMNkAX`VbX>xP>rFU6jDWHQN0@w<A~<>_w8`9J7iv+=U<31UBuWJ5~+I=p{bza>Ep zK+5Garp@vCqWjx6L(yAs&l|NWio?T7h<`2LB`rIk#~4Kzhd`RKan(!8EMp8{V?lf! zNVcaTs!>B*r*9;f6^SWp^|{U4S?Kfo)=eXB3kE$G{SYdtD=6_>C^Ab1O&c=%e9xM# z8Z0&ORXi#8(dlBemXLaKs|3|qwbq}P&F^e|lY$`cKcAvn*mT)NaHEWusiP8*F>Y1D zK*XnX_8v3-of%?{?rKGh?_woE2y;(nYP0Xm+tqB4K(OF)#V%apTa$f<9VO93<=Puo z!E~hIH_Dn&#Ze}GeLQj;h_MqGAgM0`gGn3ndVjNgEj93HmJ~3Nz^^cKy@XEV8oM2< z6w#%)6cs=$P8CADYdRM0*RI6x!vc%o+RT+Q9?uhNqu7=4wxo(R>TT0C_)a^wZa$OG z>LLpI%<z_qw{mh-h$X+`YOfEnp%jGqP`J-{XCMF-CmkLQ8fSpi%N|J?&U0V#sHdu) zi(IpE^*>LKqt-EJxR_t=%-U51Up#bLtT_~>Zg1?IvZb%~>t5>=7uJ4?W&8s8H#bdJ zIlEh}aw$nxx%iVxHR%s6S9G}6mD@Zt-3`ZpxAHRK@C*kEyQ5{B(M52WZp%3WeIP@o z7VfuO)77>6{UO<#X^K->&X3A$HhxrA3!bOXLHpxweSUt|ot_W;$HrOil9tmY1#kQ_ zRg+}djAwzGD|Gy5`C8@dG}Mx_E71y@z}k8ZLD>e&9d}YGb#7^g<&!cqim2*ubulta z8xw|SjXcPXqrD=~AB?>*Zv0^o&DE0S-#a)Ofnus|d!M(}U|Nk*c?BV(*+;GY#3)+2 zp`0qWQCog+7zh@#nWwHKiOc8cJ3=avsC*UR5a;D`gntL}n-(j`1zQ@>@584H*A0@1 z#aGwS3j^EuxZ2)MA*YF7+^~P>4B=Jnyz!S(_lG`|pB3w!A2MNG=Kla7%73<Bag&}U z7rC32OeNRUs`tx|&4=`p)Tk7zjZ?d+r`TFzF0neR&f45=+|I?)SxW0FUw)7coaW5d zo(YEtnpq-jCa-NFf>}T{iNTzzy}RA%!8Qsdm80$Iq$c@A9eQ2ovmzj)m?vOcQ*VU5 z1r-WqA3$weBQF0kMT$whnGW8?N!@cib@jPyoFN)6Id#6dq`TNGL&suk=N6(F6*TX} zqFL>puRPmOJ(kM;nD$;4T$wP-R9STmlFziEHmDZSoHDC<97#EU)E^1UZg0kLRx33y zzujm@bPUQ>H(;9X+Px@tvY6W1+>+RB)x>V`J1U=c&C8xPL}R-{CPw8j3pLbQkd;i+ zwCPvHSjc2sXNrpdY0mM?F;_oEV>muM-_m6c`en*c{F4EhBs5zn-y&{tvXV~{_9)A+ zusUX&;cawEyg01nH5+$5-yo~O2O$B{6Qkr#yvLGopvVXeRZctOT()hH{ydx{6yFn% zyiPuiiG~bqicc_$NpW(=94FZiq}4k*$Q8uPa{8BOFF>PO82FhQA+b7@=B)#e^&~Y- zzli_^CkreF#qet*U>PO)H12P+6S#udiPb+Fr8Hd_wVmAkOWNS!$POH4frHK_Q<Bb# zJ38~zDbt;VoycPQz&=f)lTDq`xllP{G5rXQgP^(~>{YAAi%*0{ZWJGAg)*s;Zye-j zrC4+gIBiAT4~<AEvD|s%2tti_3_1iQom-OvWJU1kky{M&JMCd0dQ<wPk9dd5(l|a+ z%T~xi2}o0>8m?VVmz}%&9Jk^{28@8oY&bkl-oOY}$DXIH!&sBq5U2V{WAk46WQ$?h zMS~vy{LQ{462UmKg?+tgZ+!x$%rF%89~UuiE|)xVjtR4CA5{Pz54li3YAVli-0K<B zXh%_*TuG`~&DptH50`QO46~D{w8Qdx4|k739y}?J>2fHQ1G@u*LF=_xo*VLq+PU99 zMyWt;S<mjk1wjz&3lM{bmdW=G{jGI68Se8eHNQpi$;0oZaeQ(;+^xbA)$5^J;|x*x zPf#A6X!`~CF<Fca!RQ_PqK&RJvPLZo7eYP5Dd}G_ztS43pB!6Of-l51Q7_g0DT_GX zqg7quWa>QzVO_UPU*tw6tF?t6sbaS^<?Vxz(ero&=ZLeYflpiM8GUei4cajMUcf4% zOXY*0mwso+QcHh;kdP*(|NK22t%WyzrP}TIH{b=*_yMeI8RD4B#RZeno=51(ZOEWY zs7iHH8hF?A7uVdOR^=rjqKQWPO`Bo_dHiMuxA#V+aHL~5>_VRnxF^90j{3`FmQMO3 zaTTsCXkqf?#~&@co%x4*|7r&SCIGQ5(5itb<^s5#4QYu_T(A0t1L2snHe_sXhIGHH zdzJ7fq6G0M82Dd|o#T(_0H9~bwr$%s@7T6^$F^<Twr$(CZF}~<mn@Qfn|=Mzf1qib z^z?U*9*J6wNq(yU9qdL=`=$qbV~wFMYwES^+gEc2BIbg*2g71v6wPQ7yu}hm|J^vb zxu(&C+Ix!8#2he+C>(Uwv4&(qFmXmYiirWYyt4+9$yfZL_tsET_IbRjlJW@DqWT+3 zG?i)0v}c-)xf$P_JIr1F=o|XaD^ql~b_$~sfmeW-?VUrdjSLm$Ou3DO#yu!3y3qif zHFg*G$fpO3g=dus${8e57?z%{>Fz#7+w#R>WfhZaY?pB=O&QlS`I4Rmy&gSoMQzH1 zITxYMI+i=Z*}+~acNPxcGy^~?*h(WWk^+~v{Ts54{^toC(W~7W?J-^7V%45xa)&OC zx18^DrIW*o2m%(D5#Hi?MWP_wVSRCm)t>8idyt`%KQypjiOMG)So_WurKV$Truy?J zBN%$4{es-awre4OxV!<)aRezN8vLua@~Y*N9LS7E{|mde+wd^_+W=uM#g{o*CuT{{ zCE0dC(&ixy?Su@@yDrHr<o3A-pm%rq`6eSR*PMA<CPz!Vjz^~wf2Lk6F!WzA@ssOz zRo<HLV+LGwiyJc!eWEsw6fkqnm`9{&betX-#kMcMER~zs?VE$fgK1VO?HH<y*2KWS zh06Vl+U9qMOn8+g0k@=HFmq&Pw(xFREPc4AXCRA{K(aZP8=B(dd&&6uk2%P~x>f9h zpbWX-e>OUHWR3xbH&nEo!)irUDq~VzwT}ZXNnsZdEo^ZqrRTAWUj}Czl;~SqThQN% z>G~Z(AVmW6D#-Z@I}>HO2>KG~%&z~QuyAiS96QV(UlH|Dg7@ap;%lS)*l;zdj@|qM z+S|1&{#QhWjr0Gq%d#=D{5KowIx@9K9roM1digRbw24HN5&n#RyIq*TU=4qmI>G6) z>c6i5X8-etcUja*3ZFk0J+0Uw22<BI<?1wOmydC?()|CrY}c9bzO;Pl<FbS_jxd$$ zWViozWoIR~y<OjvPm{a9t{?CCzHgs;KOf!>m%Xz8i*odTzU|^frT++mJP-PQy-a7E z@9tbZ?b@!)vULn|9-{HwNqq(n+Kqb{S*Kkw)iPFVk$Bj<RBozTvGHp#XAX~?r8YI; z_w=&PE`wlA(89w??e5x?#_q_L@7B0=WX~L}!05zo{uq+gE%R(Lti#ROtuw9o08M)c z;U-htXzKR#X7hXU2@u!k)QcHbuU-B}%RFICuY?~xn(Yxuz4Kk~?C`0xH8&5R@PoE! zS?K&~$@_=*=`q&U^hKTpnwMqqw_Ah#(|k3#C$lQJCNz!hR3q{J%&-cY?{6Y(WBB;6 zv&L1^fvs(T#E1;r%-rU(ZH$wb3uK3l(h#=2?&`3<nRUv_<~}DnuGq+*P3x@s$n`$n zqj(&OA#(wP?7;);t*ZLP>ix3)WRx<~a)Xx@1{FuC-Yf0pE2RFA%8XsDN!97Q>VFoK zH1ic9YmJ`gsB4F=<*a6&M3<WYYj>OX3et6m29x(sE#k41L$Ns6!Ds?(AHg~_<Hj3S zx#@=73&Qhn-y08K%Xr_3i|#dd4edJlIg^gyb-M9P6l6*kA1UgndU!Tjb~iu$m9y^6 z5|jR#JGb#5=K>vbw8QI;swXKwNcc>x0jI!E^~CTQTWV#j-fF~1G<J{4nM^HUJgJ!T zb<%%kf~K`8tpV9Th=T#4)9tVwvEQM3))4a{Af|%wU4f<31DJ8U>vg0=U^!?M@%?zi z0CwoiKU<3GxZ0WnFQDwEfUamc6r{1=$pSD|2n>#?S&eVu$|HXNhORDtjFmdxd9HPW z{f+;I@-3)QwA5@gVlaHx7LPe$)s4+*gDEhkP&Meb*%~}94ryws0nK(MPf`(5AZFAf zkZa>R;Ax2>3la>pa9TN0fIgE8aMWkC2;(gxe;}m&bU|pbyAG4Xj!4lPWG|xt*&FcH zA*=ABvhtUwzWz>vxtGFHV-t*^AVJ2OVH@l(fYnCo6-dovU|=)|=2_!bVZA{=qIqer zPA^Uf)%4R_ZPlqhVQ;ypGl-i*fi(6zRlh}?`!AF3b84<5Pg}{f2CugmH;i8oW)M+? z)s^7|`m;_&)876l1(mfx&<-M%rl;T)1p4oof^&CrMIsnx*2@$2nTMSGC!~1ZWL;L0 z&G>ge7zmDc37?XhE8Orp=`-Vf7Msiq;v!%Z?pbP(V1u>R32w|~WDJAW0DQs*(HIta zA3VP{SJhcmuv>y%B3k}f=3Mml_BP91e=RG|zLoWsmR+YkdX!Xyyc}D(SEN>*)M}(J zI$MycjQ$7pc>YH{!r*3zb;I**JrTSs3(xR-y1y?fwekz<kQtPAe_&`+>o(_%zYoY# zO;34X7FzX6a($xfFjB^Ba(#ZUU2XMxc=eCy!S2@@DGBp1!0boT>iXpM4?ky59M|}^ zX~14Fwg&xzzIge8M*-3AWJC0`VobYdtOn%fjWG3B6Q!|w%1UP!xk`{|U(lka1V;9> z4t@K68F4XKGZ3t```7`QPkQ4m?uG~eexwr%TgNPYid)&bg1y3g4HWjKzpo#Hx@Lh2 z5zi$&0?ijU#d2wSYmTuG0F6%Xp+(<QIE?Da-KkPuonU@KOh>aGy-Z9+P;c))rE7gw zeNlH(m`sW3b2z74QV^%blLa}DOx~8&+|B|;PmVPZVf&h=@4Bs&mtBScXh9H33<++0 zi6iCJQ+A!_8sw`8&A0%eVbI}nxnnGQCNf8_HXyX>2gdpPYVV|h4n)cD7|C^=G`)~| zX+meB`9j^sxrHEtK<!ck`)=xbNYs~U`$2cnS?k5PYCb-AHpg5L5I8}=Z;!G4k-Gdt zO}uh!HGvj<7PMAQq!fq+GT3wVT|(n0;Z}w_O1B{j<>|s1F4yhgH)M!PXgy0PN2?m= z`77(S)ra$1miz8)Hd}Zsw78k7|2E?{RKJL#fh7|fABXXhlaNjuPZDWw)?Hp>Sf~+V zVwUf2#%5-+U#=kctdYby_gERxzY8;Ph#M2$n$A{3HzW;z7}ZmHT9Yje#CsN9Cx1Vt zKNkxaX(aORo%jC@mUa}wa%?FQ?~=H3NNp7%BrBE;Y+$gxAk!#zwixr@;4zC{i_p?y zFNz0)EWY|Ys59aBbeK)Y>VZ76*0>*kVvBjl-2~hskiUy0=WgV_?jjovfjXzBlKaEu z>Ep?5;?uPQ2e=43rU))18q5Cp4t?I-(W3)!v9vxf6;?izKupIJOI72-xuzQTfe2eN zCR9X9%r0$<tisq(RQJW6gjzr~|A-ud;*3x+W>9z>{G%VYk;qskd-6xn=<kN!6MFz_ z5<0_p@DLH)rip8jrujEhVH;CEf!_nn#dAfllq}}UDH{(u51zG|!4^E1G;aEde>Z)v zgyEg&p>nh=r|wGWTJt=zB^}F$%4!IOIz?((Q<s!~wpdeB1_X!{0jN&=D~swXxrln* z5PL4pdDzHgL%f1ce)<z*rCl32E3DZQ_4)ct?NB$;WsDdBf$1Q%=#L3iS3>9NEO$>? zTM3l2Vt)K#%~6-A^6@J{uUFxCXjm=C*~7mjg3qJHVOI>2|5ejE+5L*pze}k}!zSYa z#b1bPrHH4=kz>DJMEk2Uv}@7mYPSmpXCeBOu!8zQCDyEDhC-siuq7X)<=M|2_N2nS zqx8O|@p=?<JJx6D>)@}P?11|KZd0wKq=~4gYt5G=7`fZWt|!t^1RbLWZ#jFZ@s}mV z^QZa6EIlCzi!`4ku{;yG(w9CDvP>6@>bQVuBg{0+W&KU9oZME573<=iMTXY%h-*%; ztHHYLU(${rL%D5w7A_mRttPgvHW)$m*A5rJUj=;*5=)#&3KY%B-K{=?d=p)@JD(0t zgQQ#_3ycU3)IMok>by*5sgvS}O0^Db9Jop_L%!6;;$?oIZN~M%A!vvWBgxToLbOvN z)!i&?B(AL-;)RHPCiufoalz51i+J%^xU1&?ww-70U1~_K3AZ`GVJ}+W<qVQ)f>e{s z<A(@A;5@qlC3M^08f#J5_h`*Uu_Z{-1IDcZ6?7D608?D^Bm9tw^1EK|BwDJMDVB?! z=?csDT1%7S#uG(KqA7w{xmKq_H5%AJqJl8~LfeJ*OUj;BB$zU8aWO8!MGiTnaVZ-^ zhK?JOG)A4(kmva!#7d(kEafRlW2`s?djp63iY|NrK}YsoIeGI)hE~wBUJg{QU|9gO zKdwuUr`)G-r>jg?ZRO~X-?z^UmgQ~!)}@03X-&&oQ&BOPw%c6Ywd1}ZP_1Q51I?AU zlUk%LR4%`Uc;$f0d>wNo6rpBfF-ZjnS3@8Th>Jy4>S(#f8c|2+ncju!-UW8I-|A~t zRZ^HESc&7xyVY5#b@HDol}V)Qy4#se-`6#kYNXommAa1kCP%75D;cdHsqk4U_}V31 zV@Tnm6PgZ}S&e}lX(Px~0m_P-Hgf9mlnszG7U1HgdcF|+Ce{laK~dS6BOe_ESY6A- zf=8~XC;h5=HxlhXV+Wt^-vZ+pxWs*B@^c(}YDzF{lxwX1LbHa1#is<9${uj;t<T<} zU&`*T((1JVP;WR%NAvf+abu%uRY^v32ibomjfh-yMrG_W;AHFo_BLLn`jqZp{851v zfe2AG*9QSeT@yeru8>@JBaR86sT3UROAajcOi+0cK>rx$(m3Yzt;AVW1vF1aO7^;l z@<2ub4ROJ&Ij2hAhXv5yYg+p+*I0o|erC4^IH(?q{NnmSJ>87P-<l|3KVY!94FK~< z@yJUKAMmFC#@@ra4MZUzJa-Bjy1s$+fUQ9RF>Iwahxn4FCO?T*!Y08^Fl&Ey+=N~K z%`i9upT4)jLrW?_1PX3slacMtHAL4h#!QTmpYUn&X$0nV(~piHd>-#mZLTm^%}FS5 z_*p_vX8!)f1=ED1qIhhRk*C)6L%H7w04im|j-43fxa=PH%w{Df1&M;RI3;MUZ;{@5 z*lJ6YcdHe$OqWq|tQk1l+UKV^2M4f??<xePrc_3xrWMvHJKB2E?e_?~<M2y%3SKPZ zx>>4kLY`rKjeWP+c&u%B1RDUmk*);Ar!f=8f=v(X(bw&y@*xN8!57!}&LZ|Zn2Rxx zKG&rV^P?s$LT9xJRLcKX4V}VtLlM9VMZ8IO(%(VY09bLG(u(FPx1Izpu@!us7t4bH zAAr~7D>5isA{^sCf_WR&u3seyWxB?KaiV3kBt#OpjpCI6B`uo2fhE_YxA5;Ss0C)> zsA{H%?Si)n%7MwtHB<&h=dc_c+O?zmAa2HeQvy91-(8YWvhg_HN;>SNLr-PL10Yl> zOa_y{lX1&KY|9@E&rHe<`r!zz33Y$bE~lgbD{wJNAUat`Wmx%y1^M6?h$kgr2x-nE z$a%END89=&EVXhABSxTu+94k12FoA9=HOxgZtrCe;m9Q*?2Sd0YJr?#lm#C4^drl& z;bquP8$zVF4*ZAHwP{eCh#^Jj9&L2{0A*EaCL!q;>W>GY$~!wW6{9-v%c2o#B6cAc z84oPK`>$@-pIE2;REYI>bq3Lvo{@a~XT^xo!6io&E?wZT^u@^zC?u;i|E#UVbmo7z z9NXeYB1r)-Jqhq;xbz(sdY3|!P3RI_BT%b%=zdLSk6koK0T$tDLoub>8?Rq>&2w#P zKn<`eCqm!3qCj>_prDNQ<2euAF#{g6oh=ejRA(giAzYM)pYjS=6))4UezpU7B<CDp z%wH+YVSsbfuMX0ts#HkfXkX0sQYfE89K`3EQy-{ZiYu^j5nP4~;7Mb-NI_G8*p<}L zLJhS?eKi{Ep-6v{&TwSj85gz{E}$v0!=;g!0*EM2Izl-q>j#-a16yJj^ZQgXKYdiE zK*mpxIc|u|BM~~vXOL_5k|!6_HL%dEPb$(A@awP|N&<&R#HIU6Y#$|RLYKRZw`P$i zvlr1Om*+MYAIS_W9DM}DP@X%GLLb}LewKl-SktRS9Xc@{s?}?g>R5lMpj<bUCxXcW z`dN;t35qZ&2YwL3x@<ex$SE)9Nsz;I>lf>S#?kTnu7~ZBcWl@_=Nx#ott+^iMD(L2 zRliI*cm|$w+7)09!_`a@pzIBiyzZGomdCU8rD5@!pj6Lpb9se0K>q6=7VI*i9JuBC zos24AK!LH;uF_~b6{Gk{dVMe<3+@5qQ)IbS+-@Z@#+2lx`9=rJ=3R3b3zc3Ruqe8B zgE#oqcQ);fT{37!vj{WBNc$VUp<IY*<tQMfB!SD+kunsC!s`1((tLTs5GX057hkvX z$lh4al~rXzc`W3#oRMKCNQ=Ts_++a3%jCLQ9VAMh%SJ0#b?IOQ;`F2Gk(|mrWJnH^ zWbO`fp@K$o@PYZ&cXV+bOr$M})k!ueS3Q`<J7vXS*<-V<7B=nEqv<HVB!*9Lk7iFR zf>D^4^q(ZySt?%&os~|F`dj`H^oId}$)i)(m1iUZHBw`;Ws@?gDZWw7^Iw>$$S>@) zhDsJQ%;JD#N<<YxlzDp<%?Iu8<i*wSUa)a8#tVieE{&-amEL`f*QzP9-N5h^2MSlR z9|OAn^W+1kXen+&$Rw}Dm2!a(&y>F!P^Z`21<)}#lCO4`rFAyO)76EythM*Fedp7i z+GJ6aJ<3NKk0iv2>$W{zKUW@vf*zBP|LnzYux<odFlKmPy0BQ7V7OEgPByW{K0Qkr zMa8eAH7?yO6=p(1srgv5WAV&Za~zaQy^p?cJqaOBp#hiq<__i5^ufBvQv70@_f+5} z{1HusthvTPuf1@Kc(r+yBBP}78qFr?XfJ))q#Z?_OLf)a7uIYeT!456O$un(*R208 zR2a4?bcPi}o=@Eu$7+nX!#Yd>2O^s><3SU52qM8^X=Y#grq7<FinIs3*!K`hOQvlQ zp5K&W=in4{5rQV3AntB)czm{G`n-9c^qNFLT+YYH|1Q#hd`~n~@6-hmTI~7WJ4UrA zA-QCka}D`qyi=`5>@V9Jv0p%uX1K)m*u_T_X&hE_mlmS%gUN+zx3_&T5NYp3w^AwS z^V^lx4=YlaU{Ul%b=}v_XHF?FCHHRaq=(IPyBgy!P>YLe)57`PV|JdZ*#P(eUkYsT zQuxi>1VVs~vog5;qo9s;X62oCQ;A1L+1>6wwz7AFjFS~nb`68mC7G$ZcL1=vQZNMm z8QYdnLg?sT15<4Ymq9wY*wC=_0HPR~l$l$>zyrFdX%xT8MK^hC&RVDZHqp8o`W(k_ zyR?@Vgk|67AO5q`Tt+PmI_at6Isz*gggLmMFKC*zNKvKG|1K)&I@5I!gO{gdKPl6T z^lGQlW=akO;(b^0LVM|W=-~}oyWl)KP$=9$Ao)Nn2hT?9B_yA|;s?7ndlAPTAtyI8 z4#dNC*hW-RJ{&O$l4)0nBFo&T@C1S<d@Mhs2g()knF0mkikTq{O=?Z65r6^5`{0N~ zlK(Bx`YBKuLzZ#d*0yLMq~5;&QfvgJDCK)$emz-%1YJ|Ep|<t)lm%{G-UJ&v7JATR zTC)eP>QP>=peW*7xvm(*-0Qx}t+IJ)Eb(4ajiUeQDds6&*#>41Dko|oUIGSZ6)jT# zQxqJ3xZ}E|DOiTR1qQ}@zUE=4bO?h3Lm;SjJALVdH`H1ZwW?+<a9=(N4zk$yH&%L< zdZ#t}!E&OtbOf|?(|!{Dru<TF-zr$PBC>4*^auwaFvHp|qmzk3mzG}z^1VHvc|Et> zL&!s40{-M)1J38R&Z}w(o1Xev4X-z=a+;+Gy#Jy)89jK$zPG?mLxYN!GskRc39*7Y z)@d@yvBSN^gM_+QYvIK{i-@tGINr>ZG$n&Tbku?6asoMZ=Q?1r!)|%o$E({q=aTOA z1{(}0!y74d0pjo^J%`;x;VFdr*UxWLj>?z8<8qv(WDeWL+kA?&fzGNddlia2!<M9@ z=M)0{`yingwH3@o2?KsHPS*}rnxz5^7=L#>I1ny~Ye*s6-@|cQAV;J1*q@}P<?Aee z-E`+c$vT)%Zw6(x^1x;clzk6p_Q}pA?}GydiCQ4l=pZ7^zQsGk`O4Dn5xalkwiYz^ zZgIp0G?A*cbz87$KY?ru-9O@XtQ=*ju|*|$In;$=;GFZoWh|g)@9vJ%RKa23JJG4a zBJZbSJJM<ZVa*Vk2X%DruMulHGD4H)xC0~9>xTM9krm2}xt!=`*z-C63t+M1sIEwt zy7xq*Xo&7EMBow{1pAgU=iP29Bc(FAYjsa$lpF5+f(~~Z+M#|>!1i8P`MEgLSvkEd zv$`LBGNs8Gm}y^2-uX0Zw?7bjjXf3Y*N3s*!e4fddk3m~_&=a(7Y7$hK~|(-6}5_1 z9YeTk#e5oh1C;L}(jhELnmO1wqjzbI&|x&&0+BqabQ3pccsd||v<mq8$9)q&AmNI( zUWmgG;o9-~-iVFi+Gbw;A^~OM<j^jyt^Aai_YgU+W|zIFp344mQ}$6_&;oMW&=XT4 z5%#J$%VF@#o6nb{Ye0GkD@JG+P|iAsrez8r@%Svma1UYV_sa(qN(ncHTf<LW7N=?4 zZQLQ651m6^UTkr-hGAvYZUEnvwb^}ZNatLSdA)f}Ix~n318aK$Co)8>W*+q5s7cx@ z>&FrJ^pfvCKoD=#3dH6aGe&h}F1UgKJE?-s(LjB`ncZ{E;7&31DSzcgnWt*hs9XQ* zOk!50H5fgv=iMw69tJ`c8dAp<cXRFG*uORmM6wE~@In(=g?C+2jbbH{j1c1&E&eId zHdP-c8`OxIoUY3&59MCpkMrdFtdIgNqrq%A8gRW;7Y&3D*6%3pL^DSfwlggNhs7{n z5y4wsN4<Fx6pC~_6L&20&$~Us_T$1K2H$Hc{UoYPm&Y3QZ9R~vQxGp!WRTE(xg2E) zq79{RoXmT3aHfnnwa7Cr2B><Gl~nvJ#(IVY<8(X8u1u4-A9|<;YlgB+@MRt=S4U~j zI6I4AmWZE3jRjY0<~{rP!M6y-iT*E$0t3hY;hg(_HeuO0|92CX<)3c*KaT&8k8V0$ zN={20W%TtOrO_HaoBLKgC@!POcu`V8f1b@yFg&>ciJM5QV7I52d1R<>jysQS0t{d8 z_cr}8>#;8*DOq8qs6Z%ww!-p&`H=yHu&QAhaz6<gXj->DAsAxfGbDTh-HwbLRofjb zUS*F`L}9*pwK9UCm5eO8>PtCmLePgwP=&lUb!?wV6cLe)fRln1g<suDUsvC#aF6PN zgLrS^lg=X_z>_#YwdaEXhDz~+>g!0(yfh+15F-tW<Rc`|g2tbj%8UeFiMk5OQsADI zTelGm43k^nzLbMt#ZIh0Lq1DE)Pp1x>3m*~(+ImpKs0KIaDo+rL^%<UnTuRpGqSrI zUFEMl-A0K|kmSHR*)b9V1xM+co!tz!kKN3?BUnK@QGgcBRm9uc0leA}!pi;x)k<9q zbA>uEHI?lU7Me;o2RIeAZ6<3~u;q#!>TTv2=GUI^pnIv8HOFl}TU&vbr7E$i*9j}d z%-9<~)QrhvRfRqWjx#LEKA4G$0OpLqn0}%iWDZ87q2~c}8wpcrSwL!Bvp)n(8b|~J zj6{*pIRd0A#mpb17&ZqnOIwkdG1aeqcXp|;NNV{%Ghqs%jqb#P5+IvtDk$Jh1W_&7 z{=fxRKLUAY8T<(<^X$F|K=b1N9*~NREWUS|Fc2Wan1TWFC{c(ed!yJ2Kx+vIjL0k; zSTmwX0|`lA6sLwI>Y1dFqsCqCEv=;`Y8TnY8AUHztluA-w?WP;a1a{hkX+4OJp5{- zmcGA$Jo%+Y{eKGGu$$8;L<(_rvySnr;RbvWVsV>~&M5fEvKjF2^I_9D$!A!%QVS0K zoE_#9A`9<mU1Q-mtmQEbb;XIyP;MgFhT#XRS1q=fnl0NgT};w_Iy8Ivv~#P_Cv1SO zr-v^V4-CCq-lU)GJMZnd)M-~eJr@DTgAF#3AL{!m=Zp9_o86^(?N*JI(>=3BKR*Ya zpX};=*t^}G8E|Q9Rz_(pOACAXX-nA2@zEBgX4Gj`9jL$%Ol{F~)l$(*We{qV-Jd28 zzSqYimzTNYiBuN|5)CRqDy7OfapmX{@d4T$p$%;qiazTzV(4c0W(E+hfZ{oFSpIrk zkzl=hB&My_$G?+gb?jXB$9EX+>smkU(OvF+YV<<CvYz>+P=>l_P1V0Hn-79Ye$S^9 zafiAl=p8&DG?V+E+^vq}7oGi4zzG6xDr<9rgQHQ%ZVTB^VF5pNIdRBafH`PYlP8!r zH#c3+EMq<<%&RJn<2_&#Wr`fgSL6=29>f+h@FZ=u2J>XSS{9QL&5RZZ1E+h+ahb z*7$0!iSbmM_`>-VA7CyQ*E<wiHV}D33djDa5d2cbiafTMKMC612%(dgisT4&4Js~8 z#~22$h+}yueA8}D+(Dz3(BdbTt#?a-Ba3fnTKtvie^bPCxg3_o%#WpFd8&??3)1YE zA4P}f>gya9{@AvybQ{yQt96SL3%6-J%*4~SvBFdo+n=!vutv*ikkv-DK<Me-j4VyP z7+I!WZ?zDlm)>2FDa@&HT2yZMg~mHG<b7SsBE>XriW2cJp=Pq2-fx8^Hc>ArQD|d- zO5MgTG{X|7jI%e3;ZCJ%Bnhl4ZR~~hb%1^o*lf+5m-`Ed`EzT+sPcn7X$WJ-9;sA8 zBF~TPVfO)&p5=M78O%KrHiR<4c8K>g{<C?$Y^(ilS4jta?s}Rk4W-6Ulj560BZrP( ztmoVFdF;uGTXFt;Vg77FwcX?7)9_^{QTqG-4(p7*g9~1@%i&{&6G!PwgXW`6r^ci- z7LxaVVKoijfYR<dtaJ?hTz-0umnAk;*NG9-2$>IhgB}O>dIU*X)2MKx(-viGX(@Ih zj3!WRT6sQvaqxX`-~q+VWRF`WV5j|4Z&Ul_)$%2^zp%)f_7@eBh4t_37*;?(DOn-& zzkMurOpbxD1lQB&DIE_(e_dsJ^@q34hTG>Kouh!{W2#(1)nF7@32nL1*`N>Gjxlp0 zDT&iUHsBch@Pf#NLN`_OzjQ}Gt2AXUO=hzso*W7-)muRvDd%71lm5CUZbwLcMEl!S zX1Q!B&w8}ul;yD!4|rM8a>c7R#rt$y;v*$3E^^8bKHT+@@ETNNI3u>?3g@bO%;Ym@ zGdM(>^PC)&T1ZL5Oo}Qgm5y(JZ-W-#bu2n3i0WUi(ue;LyRD8mrqr=$`9Cm`$JmPD zkAkbRimIOB{>aHz&=V{89=@!Bbn32Or!2qt7TH=%l0`mdf=p@`qcnWoZCs&kH9W^e z@f5nLg)7vYDRfN%`ukpP4gLb}V~QI77w=6bCbs{J#IvyeH!Bv+T2irFBZxh-wR@za z`Jday2oQC~lYag<S!ZNtan@f@M1wAHKcDXv9TjUb4ywe_Kt|ov4V@hwJM<mrqvJBW z+BiSACs$if+`MzXU)PzFlkBPVx}!|hkD5Xfi<$Ujv(#TrHI8?LwMyEj7)noznXikR zy&UM-j+`8+R6e@xYVPj#&u%$TK1e&wr(I;8UrFe<J6@jeAFy|B0J$AgJIiVCZ*Eza ztKXO&(I_WZt5>B-Cs~rwi;JI=xh1c?KdvA5ufAU&i?eb{RlYet@87ZfzYg!$n2PS~ z-_Hl7zIt96-qD0&=)e@uK3)i?8EWuMZ#?e|sU0cBNavS0QrZ!&QW;&DI(N+_bs_io za;XM7@cMo{2Ml>nPVGC|9^H`NA2_nBne6Rw;;*MMwp$=g|CFo=hk(E-#D<5x0FAwK za1)MeQEfarHnrW}eFF8ohQPyO4X<6D(^Lg(|5RI<3sZ!RK=-${1QENsJ3@R8GE%yc zp>yvRueYvov%Wf8Sp?>I4re9&bbK@AABtz|N4!%)HJ3=pQcNjer$(}uOz%9M9V41T zcS`-c<0h>g9PeDhHd2~I<8L@>V;y?bE=%o6dwH0V<UZn6k*o*CSxr-QIDBoOYk_!H zAVHeA1WBBsXO{=rxi!FIz%?WSypq5TtAOQrS{{uC%Y{+^;8h-8wZxjd1FL}5h(-bH z$o3-d9pcu7hs~qbL+M41#7AL|VQO;Y{&B<;a;g8$Bfx~<LEu7gZ$SETWB#|ivcQ|R z6NKa6ySH{|wwZ3={GHDBCXn^At31NGi<-<ltDYXMan>bGciiBgS`OtFPzEt>je9!j zH5PD$DILatsCJ4#`y2+CQudFm9;^cX9O^&<fN_RY0f~e=OE^2j*p9O%p<03-kn{#& z<&z=rBjj0Q?$~#5K^P4vyv6Rlb0*cHm@hz0yG&+4Ld_8q0)c^AiuY{lzB$WU>E`!C zzu#jqA%xKZV7SFW-{?3N@j{muI2Ikx0dO2bK?Ami^%|97{>ER>7QYP(UY@&sL7sxD z!Rwp6@PTOKr~<2(IuBo4hCBj=--A&AVucIR2$+X+kPkMYtii+MgI|DXH<P$Y2Bg;8 z4L2)+bst{sqcgjUYy@)~zX=!ML=n3rCE1e>5FTu)dlj)m2P9oso=m2+9~1@4pxX0t zb0}-4+CUQ>crXG$`>pNJI0mFG35`J63cLkTAE@^UCpFTM9xiZH`hE2INDv^YBPu=A z)sYDMg;oY6NRiF##C6R(d8Yl9Bg@?4tD+1DfQrnx0J?XyvPp6ERFUwwfSO_=V#d(? zlNac(djg>mQs>t-*#*=IQ<xswn@jgy;o}PbOhz^sSqiN#eA2BP=iruXS_em{M?oB6 zuS>~Bg>w8vkpLU0r7ob@3WE-52a2Ex@DLW?68SposVQjDfy*244aw`nEBn1GmukNp zq6hzshWG6lu`$DVo6e}HZ?qexG~0mJ>;J|6&ZJloi{HZ??$P@TI^REiBp`fNIXt(@ z7k07**x{JKeZ<s=8}yfy8EkXK0UTq(JL?A~>4MN0^`HU#@NTI%^-b^s5IOXS_)twO zZCWCfgu;kOh?-Jnf61iTcbrdFy)M?*3aD`bGOO=Qw`*K*wkRlcc5oyFa`2ZTEQ{gq zU9UBH$?B8QX_Qq+=VN%18)6Pe`aU9GsK}L@Z-LeTF0BHv@vRfCu)s%31utS-)|of0 zSqo~?UU?hC=7b`dh|gn&WO)WBlmEE~PzL=CwT>YDu=(O*v9ILNG5Hi8SA!9<pi#hl zW37#LcYk5FQ^1~JkW#^YF<Q?UdaV*iq9q3$h7m{&IXm&fB5qjLQ|8*eVqW$og!Yeg z3_EWAy-XAvq)<K$QQHpu5u1)<AKbiiJ&(?VE!s2&i!gb!!b(Hix>o*Qw0MGyh20V$ z#vAtm`Sge)lugVD!~>}NOpc9}g>x#0qMD)#C#4YHu&owdmBhS=fVuR%K~zZI7toQd znKL&;@p%!Zz%a=E5oMi#!Dzc2#bt=-SE?a<NE9tXuS)Qao~A@;R29f*sEQC`=ku1J z?7871gtkVa$Rq0~rpGy@j!~s{ct`HfIz`A*6^kaUMQMpq@L6pVt_qSk1>$q`Y^Dvc z1B?WjREZ1?>O_GXnUHjB&38$)c^!4C4R?}A-sXmCPc-Ds-P>m7D=?bkklYO0WrrHU z@$Z(5Btw@v9w+e@6q0tTZm-9CSqOzrrFR#Sd{Ycm*Jh1|&m>P&#D5Z0j8_Px{VKW; z4uMw!I+B(&Np>G$xplq_n|0)6%K#FNhwF^)MQ_DUBZ>Uve`XbSq0XMB$MA%s3lGc2 z9c=05acL<}NyUMr&9h>p)bxpxX|GuU)jumY&F-Rn;dkxQ#fp}pU3=Q;iNayW6Oz!b zK`}*B(RpSQTVWg2%=`wb2!LrgUq`B6^B`wQ=b#$$&ynupix@)Wq>lj?#Slqj_K)t} zxl==C4YViJv~w0ca!+mRK%1242D`)ga7m_tl}uo3UQCFUf=b>Ov{;t?dapkP?$+^p zE(73S-+9hX6MRVe1(io^Z>|=fGPU8_I2M*LBf)v~<Ke?XI)W4y3Q-s2EC?wMrT*9B zy!qu<sJ-;3S2T$N+=xo++u`L^s4+|}#+d4ruu6kE)%_*&C%_y<r1*VEt`J{Xu~<E- zzwDYY?BwGFoJgE&yCZc4j%PfYm1sdMhs*6q!6qd@VWPa2g~Ix}n4kdsOuijjT18|j z&DCq81r2iDq}!<m?4R@=!mc)*#}?4p$JI4K&uHdI^<#Ljdn%quJ42OVDurOjLZy`k z%!)`g&_2RjB)nJ>X2zoQjL}?3?H1Clg_stdWNI9dM0ITq(<vyTE7VClGyH?XPoN0l z`CMcto{^DUzlQTP*h_@?43$LxzP!WhQ0T;JBGiq*vzl{+48g13Snu@nHRRjAh#d>K z9rtc9ZD{GV?9x;%+0oKlh~>jR<2n^m0E>I$6}O=}z!>H+1oh0_?iPOh;<mILAd*i& z##2+#^kMhdTrU6BS8x=JourW1L3YMEnVs=0$PKweBkk%UpwLA_VVUhFC)#f=I0z2r zK0D%3IGI8rFF3oE&k}CGw^Jl|61aX26bHnAyGKps=C)cDwFcpwUW&rAs|RI$G3P`S zMcybyflI(^)B`k=@%(IyEK>KH31DK>N$Go{+$F5$WK}IwQDkkfD$dDwOt~pjX!l10 z37}b^)C9LXEfZbJpsJ__F827nXH*W5&dM)5@zb8qMiIVWt|iof^sikje5PEY^6%R4 z*Yte4Dax8;h6o*Kdl_XtG|XJ1nHM}6<JuOTN8i#UXD=*{t?mL4Kbjee|2Fmg@E($_ z6C^As`J88OkA(C>R%KvaBxl!LWftV?p7XvE6b8a|PrBz%;m&m-rzY3PKNx<F=MK-t zl*G?HutSI-SQl7K#hKZ3J<IGr_lnG!l?=pR#OHas?{O5i`GC)`+tt9niLtbuh{JC( zYJpmcyKjBNkFiNrJV*8zRiTOw=<#a73f+O<&@uOt8+CL&(I9NG)+J((G|R1C0KIrN z^ySDglqVH8Z8Q$iwDkxhd;duRtSqrqo<ga^XsK4AvUHiF7<<oJiH0kEw!eiOzDAkG zVjWEEQgn0Z+@tPlfVxP@Y{99U{xWBk`DQ$L!j$1^Qe<7YEa0jHstT@Z9ET&SmApBc z0w~CHMXI0lP!VkDg&O7%kqb6bz0Pk-Ak+j+k!$IY8x+3e`)iUbXYS&I^a?GDME*!w zCTz%0wQ@1n*0DH~ch#FM(+;^Wu}qUpmlT24gJ_huyk+A$nXT-=(Lo4j&&R(t|58@k z&~^FD2|j-sk|BiOG_!Ur+Nt@2CTcY_jLJEA?z#<dSUbECL&Rjc3X!euyIzO|^SmC2 z$4cv}P2L0)vy4PzdwDSj(mo03<ng!5U*D*?9u}Gw{2sYxrwqhSw8Y+iQd9HUNpEv5 zWjgx9$AQJb@15P*xI3V!Kw2-5=sqQ3R{e{mfFk1I(`BLPT%8)w8E6zNTqIH7LDD)J znygc|Yqzk+S8Bg)&IFPbJwJ2+4Lu&*O_K;iQlnbm1vrMRx}rnaB0_1ShsKx2F}$7w z-?mFbdjJLKB8F1Sp7JKL1%I3!tvUxf+rPyS%-$RMrN_mBmIYak&WmBU%4s#cJflV7 zFFfg>;4~Oi<B@`(_LelYJlk^{xqT1uSr{mAP8zcUmak!?JA8>V(lUP?1k-)Ezh=A* zE^&^Pw@c5<J09o7XxgV>*oS(o7ra<RzoADH0kJ5e#kn`y6S1OoC}auv{I0)66Z)|6 z@8n9?x@x&e_`AViagKf2M_74*E6Q%u#;RF6OG)tD-%3rUcjf#||Md^3qQN3()ss`W zVL_60D$Bv}m#dL#d_*ahKjoy)duL)>{_D?#OUfGJQXX+SrTbqC6Q`%1Ub%s*6z2As zV$5T5N6&as_pP87ssmjXI_>+e1hX|VMPO1=(53m{a=k3G%t)_@4*7nO?_O9{o>N5P z%3k`N3@EM)<0}{YC-%Fcn;UBI<*u%wp-~R5p}1M6Q&^}<;pAKjB3&g%0$M91<bk|( zFJY+Ze5=>^4d>g}@M788<e*Op2u)~Y)V<Sm-@opkarZYit*tvNXR9u77WpW@nhyQ! zsGT!(&@G<mm9XJJkC|_LB;oL#^|CYg4G*}qFQz*YnWp}Hoy<En_i5ofHug>Pv+$)^ z$s7!$P@lmbb<RpGqRS+0)YBrh!5A}@G@cCxw6fO{4sP3VrVo8dqMKd9=Da1J8EX#! zlW}V~xec~}69BV-mnZHRwVjW$!y1fDWaY+`v}2dI9nr8)!HoS9#3V6()~9jk)KzS8 zqwU9(t4yX>j7Qccu*J>Uz1B}?vgaJqp2C1+uoslENta3Iet~Itr3EW|zlYtMN02vj zIr5M)MlLptm)MDjx~Jjbf5AOrztNl7)(`Ahzd?FnG$BM$Mi4wPjKjID$(jpAVo{^P z>VLW9_4~4m-dC!diSkKvg4@{_u97?{sJW!$wPY+$O{>tYk)^9wVU>|q6`lEFO4-jT zd-*{WG9irw|9XB>LPbluYCy<QIhec>0C+9*5rlY90l-qTB6ZCmPh!KM`n_m_62Lwy z<P2biBuUU3GYuvsM1aGd=n`z~bPHfKZzQ2B9hY!rRpR#)QS?wJU6pPsD)2q;59ZW1 zKzWHGM=~r=$%%xyQCrzOs0LwtB`4z_)z%zYnwWWkfYZ8J5Qa>$gXx%hI*+tm?`z-= zBMdi(jKBZ&Xlzp$C-Z58+mJ@!OD2R&auRMA*$?eo)hs5<O|bqm(^Y#6u6FMXCrPh5 z*}DmAjwu!T?7S1Io!!h`o#H`!e@>1Yx^7o#Y^9^^@v10tb@^;*=hV<ZimFMo^zOIa z6b|C7nu62xig6IGv9u>Yp^KlP-KRb*ovQ-Zz4nQ79ZG}V3H#S?(~SW!5(7dnLM~d< zF)JtjHJ&2LT2hdtLM&>;^S(J1BjT@i%ArzMJ3m|B8iaSQ%P2*(PhCtc_G%OZv`OzF zM%1W0zT%6ej2`xLemy?cyMI0vPa%Q`ZZ+jNosc0VTadQG4yAGCI}8I04<5KC=v=tC zzFSU`H}6qc-Y1&9Q*Q6B!t&D-FKL^v8cMj_#1f5CU^2O~x`hbfN4<mlW@SZr_s#ah zm00M%UR5D7cQmw<On_5VlJBCUbI5@gXyA-|3pq=Hao{}&cv4dH28Bn-?_5t{KCZO@ z;-@;D%zMewSeX;Wk|JrUdSQ0av-gOno>uAS`P}L|IR>8NNEp$5_hG)c@LDqm+^*+^ z1X8!rkMeY9Q^IDe3~fQ;bCcFU25f>@Y*F}M9os07n>oW~=WdWS^AmHQV`B$!yHHrH z1kz8hkY^AKrJ`_KopfN7u(OSO;=uj#`F=2?E0Dh<mew2dk#;M5)2ef*Q&ko_XO%Zf zTiJ61MKf>qXmWJa!HI8Kx}8h7^&Dg9^ZIgvR69d}R6qRN^tt!{)z_kb6AcCeTSH4I z9-jY6QrH+78UI@(r8(<grl8H<@AXy9Jn=YQBHRO144C=)KX)4oo&M;un|R!P7%`1w zyR&MdXrdR+P9M61Z8>~MqG*@jL^_X-hZ(y)?N55M^s8^C7#%KHV(jdMO~M$ZJ?|fr zo4qXmlBd3zxxe?Jy}!q`dYL{yt0%obPmg-PFE9LFv%eet?I-w5`QLA`yFKo!Uz?e> zKcCZ~D{|heuQj(AcT(SZX6?h^r(bh#HMpfFS>)-qmY?;x;<qPrZmS(La!O|@H9z;y z)mUn>^3&Rb^8QcH*Y;db_FSKbP$i@1vUtl2#~shus{pF3EkF&rc>xVzRX@X7$02Nu z+JZ`h56{<LSMNZmBQ1U^7?tz73pZKH0rkBszB4%28#eMcE58G=)3-Z50sJA9Q-e$% zX*2AZyS<_Ozi%fS0EO;vbF9CwC!cK6J~+o3hrC^U(vw@@$HpNpGq1wxCnNCHnJGS4 zoipsjzi>8ok(b!~&3D%rC%SH3*XVBB^vHVB*BmZz<7wS<oo3qn&s9^Bj+Y*%-0Z-- zZ|WYVX=I}?M%+%_xu&;Xk7WcE`lw)3f)#$=$^yxA6Pc(LNZRRj0Tn^73V|v>UuAt2 zgeja-Br62`Eq>K*UP*Dw4A8DMVO0h-`&5h?gbiTtms-JNSO-w?sC}qJ)Nbi@BF3Vx zNF@<hrCt<Xzq!=Axt2${M4qlSI%2IbxDl;@`nR2gQ;zI|bJ@0~HW~ZRJ~nv5+)<A_ zME~4d&VSJnAbUY}f?S}wPpQ$5V6$$__-BQI;b$QxIid{wi{06yaFO=oip5uF?tZp{ zMNcmW0o1tJ`-ksd2cCE*@GwkQogqYLz3>j_VWm#RY2y1<VIP_9kty_X*gXK!PeXKq zdu~f~gQn^!-}gJ}@1cnzHSB$c#+q>(wqhe^z!1SwG<m4})gan3$y|y9)@iG_=nK6L zJAHs`$gs8U2ru-3*j5{`%<UdY8vCoDGe!TbS6ZD?!VruV0tg&|Koqzei^H6q*yF_? z=fnEIsq@T%`YfDgQ!wv1r}Z)zfP>Z!&bb0R#Bv^0T4Z=!5w;D=b^^S(k>43m;CAA_ zg+P)`na%zXd&!%CxF1qDx$<TnuaazvQa)3N!mDDkMVZ$lQuz}qh%YY4WOt>1?Y-d% z&v-%O%rirB$Gb8+J#1f*=Yv`^)d3tGO>_92NR<0bcs4)0P}tB*YQgY-D944$!Y;zx z?{AlRuBs*GDdgj16pJp?0Zz4x_34!$!a;s{rUS>hIhnuT*4iGIJzP4hDE+BG*V`p% zrg*czNZ2%-3q^As0lm`<Tx*SV6K~UI4J#Oq1AGJdsbE_mqye7dgu|n^*misG8bUQx z@=^d&uaO^68&LlFywu{g46e<3hKYG-fBQQcmpW9&SeH;6Qcj`)sVADQ)UlLC#T(|! zf9Lu8#QqiNn9J@yAG;jwljQUCs<-3wY{WlMP(UH{csy(8?$DKOjn=*S1Z@dgyyEp< z{C>X5F+%LS>;3Vay4(GIcN~(@t4>1DI2j;SuT|ta1ABJhX9JbHeQNOYbVq}y&a;;d zf8QR1$>Vz%39!$DdyREmcV`I|mmgTZSfa4H`R=SW+9-{;F0^=EA_xrl^7>Vet6XYr z4(66~7IL&}Eyh0GJ4jM!+TRXB0_~dzDvH*cv-_YgI`R544FCs@O-=li`J{KUuq=js z-Lne&b1^!HO9++;S)5|Pv9=f+4ugskubdv_nDLEa@Rm>wPt0Z*`36xeK&wr@`TKPa zs0MWc5<39Zfxa1PC~jBUHr4h=4peD^$>KM_;#O@T2Q(Ia2rtUSBP+y@(1(1|x};p) z^bQ#NAF2Vy_5M9a%*7~2-6kTG+;}TBMlbo85i=VS{CfLFv#?lEDmuPJ3P-K3)AB=Q z>JNe#z(Sy@CK^(FsmZC558CdcTDOpW=R$VbF8z$J9U)Ms2%@frNJk|HO07S4MU@RY zmpLupig;z%_m8vcYnI@;t)a;`gXdu8#Z7>sZe#9IphQi;wLi73Ic9olV_v)Do$}tO zn=tUD^yLWWpbVtwxt<ZcE!Iu5Yf5qFd{bQ6wP0^4qXA%yCSc#Y9E{>--<#-$(&L|^ zl_h|CznR4150?;82hm$3?Xi0tF7(CB@GIRyj?U7TYNrXWfhZ4mM61r6n|_<kCx&oC z)iUT`*B#l1(E`dfpMBC>9-n8p5gjvN=<`&Ih@05&mO)_o^Hd)cQdXXG4k_gk3LN6u z`zz0>xFm5P-HbO7FY)*0z6y=$;kW+y0oosdbKu5=VSEwcH;!rjTCN`j5Yd~=*K{F) zZSvv(<;uz^(u^H}IsZg=$hwv@95I70RAUd_ZMwQ$<Pq6G7&9>-I9o4BZ73Q-Dl6qW zmFmmP^3~{`_X$ZEo};~XAom(k10EqZLFVKP=_7WK$34mg3w&i8C@%q7=DpaN;7D+r zkSmm%;!W*M<eYGhJTkW%(s5-91vk>L)x3`NYUP6f+%_wqNMO85jLOSMx-NUfc_88d zx$c?oV6o|3D2d~V_bd=qDDTGrXHGP911zEi#5*ynD&MIa1Z19HvOdAx<oulMOg^}b zj3K}nFgyf`D>k){coqZgofOXf+_yL$t7YvBWm52T0I?z2fhN^Vsg<+?VFFRapI?2g zfZ-+|;jH6Gv+R;^*XYl8Gcu`1fl=W;fM)`Bpg=f-nJK|jn;`Cc^EZs_KvL1X<6E&m zjPL4<ieHNH2ZM=c1rWM>Q>k6Q;G=-g9Y~EafXanp8AV$U;ATZ87*a-^s_8Vuiqae! zl;@<#1`?=}Tpk8;#BWG1zK!6a#85(}apvYY(S1<ZstXT5%!wv^|9DP2n4+jWAfn74 z5Q{Rbg2f0}NIAoz+JjVK6a`mK)8?`*nAv!Fb36gi$8`C#KmJUo$Ra2S4$)wowN*el zzQy(@$bf`1Nq@dZgT{g|lJfs3^eP3~l#~k}t&iU*&1LdhLUNi(5G03?k;T9bIm%Go zC(n@ANIMvSnK@poM0d^Kld0=-Ra0A0f*&yg9kSV_;7CqrV>B@$7fl=p_IP2RU3i>K zC`XW)#4UWVHwv=v@jtze<}`dFQLvKXla`u_w1%ansZmFz;oOmXth*NBbq@h_t`7qj zq#;xXs)J6#g)ySq?=k{d=1o!Rk{6YkwQNgk7_{Csx^e8?$FcK<sAI}Du>bOmm46F? z1C^!<j)qAsN6Nn=Y+}B=8l+svNzr24{-`V+{L1@Xltbe=4u0+xMA01=&h^5e`v7CO zq72iuKhenJl?S@hx1%Fx0lTCm<(h&G$+Xb;udRL3$h0dA7=jyFt9hZx$0m5kgZXc# zVufw#U%>n2lE_M(hgW@6-nkmHQcy)!)^EE*{(|@Y0c~<_M4{3PuFpNkCwLAx;0U+} z)`#}5LO`8M6(qhw*rg(<7tiain3O#hK;k<in9QwInbn;vF7A1`@^HvZ3P+s1hMIlL zA(ChRWB)IusMEvGBHZciy)d!DCMHjQBtaHR1_2@LIUA{U2{~ovb!Dc-y-<!XjMinm zL1ixJf$3uTH8kKPjFWhbH_;2ZYejad;&p0nLBM`#@jj6pY!)+BeuSSu=&(@3=aKzI z?gB)^h3eAB>*&IjaG925^LwlV*xt&!z0zLlLrVf3jTwmXqSh)74ArhP^c!bx`f_u< zm)T#+3@@QWad(y1mL8<#Zkyn;<UU5}PPo92>BTR>w3Dcb*;45%FE0TOyUqI~+D%Q} znm#=Liv(OxbchnE+HOa`pXW^aM^ZrQTytSI*kaN#dG{(}F=IIa&9CDKzdTdev9d`L zNN7YWy{znJL=_O$TW)Y7DPYYiY{^`|8a(B@aqRD36u0s#8+qs&7a3SAIP%h$!Zd$} zGZDIrY|ae>W|{3)#7Bq$f|V$uop1!PNAfu96)HQr)iGq1Dc1*{k86vZ)2?sQY6DA) zyscbS8EY%qkb-RtwgHnWG*?s99+^lP(_gHCth(BjN=g2Zcq+j!A~D1DyS9}-cOq9O z_II>F9qXxaNRA2ei$O9;YL^^ueJ2Rvh!zG}yXo&6vPuufD!3s;q}QxRATG#rDQ5%C zso}w;l$Hc{8{XOJ)0Uv9lU^Qsyr~}uu<1G08BPm}ld2Tc2mBwRTD~r<HRLi-8yCYC z39y)J9oD-)IUJjAz_K1mFO6wM<nQz?*)2(v?N*G!$xY+RA3{Z&QQ`_Pl@VpsNRc>) zVE&>ZZOWb7c_-yH+t*aDG&JqC#S=%%&0A8|^ionafb>TE3c=S}>aV=tsf{Q-E{(@0 zWR!LmGrTS<q(+vYPsmY=oiut|LvC2z*BpzSEaZzO7!LN-{PiKkj--77E06(fj;JzH z_NdFfs!^1g$y48R3Yn6Gu&WDuGI4lli2sAJcM9$#ZrgQZ+qUieV@+(^wr$&)SQFc} zZQHgrNoMC=RlD}Cwcb_r9rST`ANAe8=YFnB{mfm7CWQ^h_Oa;Q4QpA+aHt5}&-8tV zWo#wU{pi=PD!nr+t(nNb16q?a&0>?tmEpyb*C|kqHHm8o8H+z=G+sB+!`~!iPX|7j zU)R$JaXgtwm~IHUau;8#X6eiJQw|mJRCG>2r*4cVyhHdk!V_&azrpG^_B0PDS*1V3 zu$8(MbH>+L{R+oBP<nJ6OBY%y2Oe#%31i43b}F3<hij<p2Bx4%4AoHwo-H+>3UHZj zN~sd@Fwi8do1Q{zT!)v}48+9P>CCTv%O4WOppi9FDOzQ($$Dx{WO*DPHH6eICL1a6 z4BOd~n-~?g<SM)Jy$@bb;H`=oo=;%bQB-h?itVdBrSR~sNvAF;2^nHH)gNs1Dw#CB z%PfAY(5h4)fpNr@RfoQ+Xhqu17hlZ&G0UfQ3k%|!c3d1gDY)|sDpRH#Do|w$<H?{6 znFtk)wdd4Q8p>Nh;3b!om1~@9{jD=%D*`^8P-6@mvt=XNYy$U0^M~_Zp$x6i)R&W8 zU&i^0f$a<xpS{$6+ZBiI7`fOtf~TeB&2<Voj{;7VzgsDquibT3F?Hj%<s~7PI~om$ zizw8SD_!z!*=tT#i@$APN{AVU?sR7CBbJYQ(^7}>sfiySz8gL-d=#n+FE{;YYSFF) zFPD;QN~^D`+<>}Swlv^-YMt*=qG*Ge5md}7IL7<_bYlJFy6D7Fb>p%<lx3)4=AVn( z9|;UJ{tGcZ*4Gm|nSMvPdJ7s6vVOM2E@V{G?$Xe3lFaj96sT+iYp%uT8GtS8q$vkA zp!sG5p;(0Gj4hNA8-GdPA(McqIA4ZT-Zjo7o<6=Q4n3OCUz9bqmuh>;1xi#axj;HA zE=!}aD(uOVK$8oZE@|v!>m+=_wNNp!O3h2_sKUux)R*nBe_V`NVzQL@wazf;Fs?DH z<62!?cA23I+UWxmc-pmO>p6=Ro0e;-gQ`>uGQOpA_?Py4TqSfXS^J+BS)PAFQ16DH zQr)=)-H53lZ(^aXIVCXCWqB~}#dMM`7!EwC3z5v<)Aa130{S02VC_}T8HFXz+q@=@ zzA}*{j*O)yuRJKlTGzymbwl_Aw=~MD)Ic4=fD<Xm0lSy1b`Kd4NNIqmCnEo2F*|IQ z&!xFI>Jbs^X!;j$Ox7Lyf~ofl<w7&BVoKI-6r5dwWeh#SmwTMtqR%w+zOE8Oc{KaG zTAq@$BtV+{IN54Nml8Uk#Ht7Gm7?5}k-)^}&pd@Uk1?@z1e^B4zmF$KKSSEV(yuDc zb)Z)*c>v*5ekg0SwO(-aC3YLhuyWnT^-GCGhFPa)1A^E(8Y914ZEVpMz|u~#%zoKA z%ksiSx{2x)=a6AN=1|fFXc2qnpQ=Hp&ry-YW%+iO8S{*n(|3y5<5$dVCWgenF>?I6 z6?_d9u-rPHa`L!YW##qhw<>;_3d{Ww;HG<eji&bV4z=z%$XUhjy1e_6vw2?{OqhM1 z-C#-3RO?E?NoH9lyw9!aw#whsqt|g|V*D~M%+{M%koyipw?n5%NPxIjB-S2Ms%cGh z9wgjRTUO(<@ZjWGE|*iP-h4pX+z4gPV%b_~HYttU;~zZuOGKsLWI&i_aLNv?iwAAj z2V@Z8E3nMe9@{frVSA~hF%(68f!uacwbtYK=S;;Eesy73P|o)YHk&T>jn3edlu7`K zwMZbmy%S^Ziobi>cDETjnqNC|%ANj=X82$k8}D(KrSeYftgm#Guv#5{jZN{VSTiiT zCpFrs7nu@UO``WQUQjO%1YE9=La`?@dQBy4o%2MZyJL3CofTml;1%gF$J!3oO<6Ng z8bD?fd!lQg&(_&43=v#me4Yl0ai+sRO)jd<%1XlWHs%!bSRbc!!uyjCq{<Pk1@Uj~ zPUm-&NO!z0N@Cey#I)+JT2K=nS>KBM+MpZ~9xeS}LiYZ(fNm(ag^1Tqe0+6J2QHK} z=W9cOgy@5}<>g4Vnx-TUYeg;GA%313vTyTv#{tDPzj8Z;1AF)urMY6@PX}AQU_6k7 zh#OT03%CnRJFgD0_#_%mGhVL9sLdHZb4XTxp7G%flNWjKTjuhrDKpH#t&ngR4*E+Y zV*MfbX&|)5W4U}|j}~>$tzh$O)y-)yWm7Z85UP|No_6(oz(Xc`5n%CE@WH~dWS_rt zJLVWW2Q7L78~;2fk}EfsLWXNfyWy{4J<_np1|9j1k9zc`Tjs`Ce5Q~Lt}?4hnxc(2 zx7f7c$wAt8M<^1ts^*K*Hk7V&^a0yRG4?d8+-`}JTGumaZF1KsIz(p#C13kp?_xxk z`D4>6IvnLQaPL`dX)XPrwd%&RY|b>_REbM=e|~Ui=h2l|QUycN%D5JAGOkT3^~utr zH<yy<+GnX`o(rqE+{wD-VDsqZM-ylFbdr{>+ngEJ(BYy;`>G+qJMt0w?77b_^>g=5 zLCSG^MQ#dwcDr#AU{`&4ENMwUdn_&kor^{$BlU0(4-pWlH+F0B9W8y*(nLFurnEQ2 z-hfmh(Oisw@==;|Gd0?74Bcab+nFrE3&xRiOIGoVKV)j;#IvN2xx4<aHU(zo4{|VK z_sGgs=8V=o5wmoUOvi*>R*}d|B1xVf>YrpeQEhd*15PJkUk|ML-uER)^v<uYc7kC5 zAZJgOTp*ae%<W)w)}vX;%V!;n0?u|X7yKkUb78GWam!d9h%Tl~W|?b~f#OEDG480C zBBZiNJPnW-|Ee6`7U7f@`IVVUCeaxo-@pb7FT*YsFM^j>r}Eh_r>WwS{b!E-JaVj# zH`JJe-Hl<C>?J{3nA^&7iz+#~UWY~VIvo}in_7J;@x0=d4kd|53Io7Faa!7dsd~1o ztbC7r(LhCpXXhgMJmpGhHRZ&|T&wtWOQBJ9|06=GT!X0Qa!Tz&);0NRGR>Z9W6d~b z0Xdj?KFDTYrN`l3EvP^Uu3DcMxjh&Nd8TMT<r^Ex3C;HZ{-uVUGV-10yTREh9htE* z(7gTHT%n2Dr&Fy1+rPZJ;Q^Yp&2W{Zc;JUqQ&wnR*D=ndJ9lDE*}b3bOwGuWV#d2B z=9O_&5~YZ{cI4JfQ&>WWI;_d+AOv!7{l~$sT&aZ?2CF@qw!X5QV!bi$CZpMSg`s;t zAE&Z19W9M^r_FCBdWJBy8M4EQE{1EsR=vq}3!e+@KHB9<S9E%fQ`bM=5mk!om|~h2 zy<JjqxFFs1m?k`9Y0;2CnR}+GUa~CDIVb8>RpOX|Cn>1dip8DCT*G;H8%A;7ry-Yb z%sK_(x8LBGm*I4$*yk}sXuloryd5__;x-+pHbt8n!Hl~#j`%`8u=+{O-7+twjZ@5D z3iLbXq=(fL<l-ieT+;&zeIJW{_k$C*ioLiswGwOl4c>yq#NEtHX}lr;r-0U%wyytT zb%GfOCS|ivQN1W@wuFI~)j1k=r|KcHoZ`6Hu9dzv^)mLMEX&CrRZ-==jONh?4S{nx zKzzz~+>ft1hwbymXu-r(%~g{@9dB9lwk##qa-yS4oGjY$`k!iV6Pf{dNi!{-Hq@l< z@W?F5kGcU8m7P?p;p^N8LRIKiVp@`L35!=fs)yETTTZ#He#E|=d^RX=i>A%3%gmf= z8yQ)9IIs1f+aS2c{&!9>EB|JmJ)PxBau+E2yIZ=FW_Lu~KS&XAIqv^9Ea3Pr)lyC- z*8kbCKzlrntQEO?RsCpqRLaqOfe8mI7DF%qvE`KF%%HUy8%rn^@!PjI!hmUft3zCu zKW6FoI62m2bgX3wAtkG?FY8-vMj`W}{ga^o=kw*}DWP4S@A0C_Ns<oCVmKkiB<YpP z#8p+a>BCP^&x6PJ4dDBi(zuJ6g4<Ylr1$m2S10!dV^(CKH^BWNd-PYd|M__*;_g<@ zClL3JpuC=$bwfOl7u`#9p8e~bF&L+~c0rDCy0OH%{4Alpe>(s7N8b79?)Uelynujl zzkuAox9`!sA1B4%Ak`Ha|DN@8eNJ4ntnSAh4@fy*Ji<4wQKNncT*}Ln6lpD%dj47d zcXG|fknzlQK$f$^aI8SC{a~A4py6?1SYXlV=9kOam&@~CblKO%<gM`PzrLfKW+0k_ zYk^~q!GRNrb@!MnSBOoT$N%vopKiXdJ;Fo8*+Sz2I2yXsw%dRF$O5tgRbs52V-Q3C z{^3--O<!xDiBB0ul50}s<Z$%%2K#+Knw<cNHqME#e!ZG~;Wfxc=E|;sU>Gq(BUX)L zUBo;yr<gW4a<so?XE!Pj?Dqdsj>)sh{nJWKm+Rv50^VUKJrcuPdIU#jTu){n@5t|c z6_b;SJ!Y7rDaiMx$g4KCZV<{Qerl`t!;13Fx5)otMNwK3z3?L~D@)s}Rd_jB_6Jtv z?);TdlfUyNvMx$rxyk?}`Rt;!JlyXnb1cYgw6i!Bc@|Zk{x3E1>E@3h`5-V6wEsts z>{V|t`=dtYlMP;ze@=M%w*S%4??!p?urgvuonb0dAi)_^Noyp93-g@0-|w{Jfp)X5 zho!?naC2(MTi)6Db%<jv|CAfZi#Q3W;6vR!J0Jl99&A9bAiqaC>r&3}Wh{dHAgc_O zBNENpgWQ=2rUvTLbKrA#*0@SR?hxzn>*$ZOrQz-<HD+fR-oPO+1$hvZQitDcgut7| zaN7_OF9&h+_CD8+*Fds#3qos$Gp1}XFY)4}pM>C$E%vfOvG#HTvm~LR`dcDF2Rece zHSeSWb`2)}b>k*<1oK%}dz%L!n<HLR4JJ}l0CePNY63IqGbH9IMp&%iM;s3h?LKy| z;72UP0AOD`h&Hk{J~yN8My?^G?I2A*1_%#iLHgMrY{MC_4$NZ^<}l6>nMY$v0!$GE z&Ovq`cLaoeIzJG`P_#twQ8eK^1zxPsgg2rrknvqf03$2~xiATCy@Vdf%A^7)6N%79 zlOFLDYlIdNfv_zS+8;7HM7(khbID1j$##ovBi3%N`CjBc`o2vRhvY}d65$r?Hkh~| z>ylsnyU(g&ZuISKS0o3leYXAmz>BbDKdOajK_g)IKfVDofX^?VOY!H%zpC=o*m}IX z5=#bB6J({iLqIuNNN??INl^VtAt_WV=aOV(!Oj{BC{rwWU{)a7f$D*H-Y9=h`DzWg zw_|eq{K9j4a!bB%Pd5Qp#kKm+F>&8q!*-QpADrDxVhB|SxRw{9D~p_U|5O-AOFyU% z7$NI#Uwetf0J6wz2|cY6A3Na-*+N7~fH5MYOy&McyfG%??M$J*zLxoqVH)g+bKt&C z(|}|NHvUloGNK)BDIqCY*`9&jw^8b`&dj*JvOyl4bIT)=acFXST^7>Wjk1Wo9I*v0 z`sP2o?bjNo#zX~$+)*og$X%$@#V!%KEX7Z33%tcKGeYC2d7-Eje2B%$G9m);YKN+q z*ns_l#U6X_1*oc-bIg0e*}%jTS{(Eg$i4Kc#TOH;O}`Eh5t2{HYY{vsI$>1=3?;3F z5DR+<jnb-h5>~NBQJE(FyP?^hAYAS_Y$E<EZViiRH}Z`gl;|_2UnVuQ_||#P8sp&Z zf~Xn}k|KgY!TD>1i-K2XVMz{v-fdc_d8vuEsEZ^uj|y!5EkEvRgmuqfHcn!+^Fkz~ z=)}y@xjts~P{|2om}JE~H@$tVNCJ!wPos3&)z?nm_IrNF?08W68StGQDEK5~WqFg7 z7lSTcap(?uDTR3DP0h4Ex)^GD0iq#PR1zjCx@~n2-iD5iGKkUYRWuTws0G#3w-^dX zzq;0#!W2T<-ECbQ;L%90F-_}8FRRf>T5wv7z`JA;*noC~1<Qek0w(04)^H$PKuqTj zkef;_{j2SQ+=0QAhNB!K`w8TC{Uu+t44)NAIMBWspy+og4yIWkCaBxwPT+TuoO$Fd zd%15Tbbk3Fm@xyEjqnNE2r_-tbR$DVsp8@3>Tw7pSCEj-GxUHR=-!rHy&NYdWWg;| zcjBolK`J{@Z40bFa{WAu<+?1rTkjS2rE#>&wLDqd{<z^hM{9MM+)na#v*esyF9i8a zqQTp6+mts1N@>Qjoc%lA@WN|2y8=4d41FI%3WBvXMtzPX0DBQ}T~F(}N=j4~ZQTq< z)E`7rg;&EgjbVxUv%ir>b~MkRbZs$MJZ*?4gXokLoPM!KyRt`(O=s)|iirOgMH#8^ z%x3|zE&@JRqj)~q(mKaF=;!_e9U%qm2nA%Bq0Yt3$QXFif>2$`*eu2s2F@N-Bc|m1 zJK*XPN97S=8#?sEjj;<i)3v&nX+r5IO3;gT<e=b(V{@3Hh8kGfbilRo-Dp%e&s7mc z5HRaF2*`O<-(at%dW4$~yC#3o4kvK7DB6w)oFK`NfRFp}w|P4smC<n-g0oQ+3dLhO z^sk#0A%4r00UlZSWOgV076&!xXjCC7$(+s1DOk?7i63j%!OuNLq1)=b$Jhpt^{gp= zHCap%<|#}O6>5VsI=Z6A;%K0ghJO`QOR&eWvytEp>y=wtOph5=*{MARZM&pNmmN}E z=N~V3FJ`EX3bZ|sq@6ruprTWmhO_sTeaBo8a7-cOB?>xGAmBuZ#Ign<$6%r>X(PPe zaD#}#!QzS(lU;i#`jTaQl(nuZI)?O|1hH)T4O=-U*;)Y=@55^o+r%my2m!-O<=iPq z817=s*`%!(Jpd%cBo_cR3J4%Zp=Ckndu0cxt_t$YCszfdindw^>ZJ1}!qsqn74rii zN`&vS7xz{rB#gqhlZ6UlE=`y9R-t6rNB(8QKiYyDOQne)He;MH8MT{=1O*U6)t<*J zk*pMq-2E=y1J1q`HAzB_vqll?*^q-juZTRN@t&a4bUqjRl5+f+cv+B9k%+RZJBa*= zh{G?J!6T-C1hIyHHJG1KABt0FxPp<m?%AnSc%7IaXy4K^>aO`_yYK;$@pwGhIC?B| zHm;H@`**F?759ke3ni`72<b8MYC9p+zbj<xdKPH9h}RJ;qAsRlGO^om65|Kif3b6F z3;|G@Pw_yK+VJCfT}%hjQ#}~3g%-Fw!oI7o$S9R-R+zNdf6Xu`5n1E43B9Z*A!!D0 ze-qIr%~I?rRz^U>V?2RvoHwTyQS)9S99L#jQd0Lem6e(&l<JPP9Jj^V&6Md6Lr?U( z#<*=74m#pu#uQa7#Bm>Z6pKCIB^|~PzV;Ec{bu3fu{)hB6HsoKyH&O*x8If)sdJ?u zB?hmI<;eu*(X71a!GPR{sHRLuPFmwpC#{sWKv%4!3`p!yd7g01KC#;zOE|?x9U`d& zXOBhH9=2eMEx`e{4GlU`qh(zPw0at}-ZO%sd@6DXb)Hg(78QpK6?S6c&5QjlDCGC- zYV22G)u!ecKXQ9Hv`ppkt?-Rhu^gzFA)H%Ay<lmrn<-zVKt^k6L+X5?nyp4&)7iX8 zwb$$2fCra|lh3zXF0|cM>AUh*z*~k)pA21X+8}d{mtkL{X?jDqK(Q;*`m0AKF{-z$ zzXjlA92VJ;ab`8L9R%jx|3t*l+k&@OI{n8fX4UM)7aUuB)GS=sc+E8T(t10OT%i){ zcY$6iE>8FclyqTfn6w^PihdtAs<{QIsEjdUUjujN?#00*>M5elZs-n49!ic{T8pbK zi5Q<Oytmfuk;Bu44xk1@4mtwA0+dsAp3-Jr7+j{L>-el-(*_#dmyFVs=O`q^Pw0}% z!bdl>0wT2`EDW`2WQ9FnG5V4eICe_Hbs=D-SgCVf(&f*20W^t!gcUC)kMT})pt@re zAjTlpGzrUj*(w7CUd2tb<v}l4MN?C^@g;f#r`k~HU2wV=7iCNb-os-iKsa_%iSryp zA!EHkIajk0J{9=F^?9n258o<KXc0JU>#f6eS1EaKBEc*<he2X4@U_a(26`i5KIAu( z&W{}DSFm7`XeAu-@u(}3-vkal2A3PeD^!7!4O&-)pO&l9pY1V3=NTHxvq#JN2V0Nv zl-9UBimOaIS06xuB#!p=bbyn5wqY)qbsLV5`jCS1m6fu!;2KDJA($M9#Pk+^eDyKY zy_L~2ovAR{XhuycjfYRCk5ohI^Af_*S1HkCCYXz*q560~f{d{&7Z?800JSl+Uvh7% ztCu}VO8F3tR{a-bKS9@W+zV6ZxU;Nu$C1?8`w$k)F!2)EYRhK@YxuTZ&EO4+#BY(W zf0+QcXQ<+@(1IoiXySuhWIOhjijQ=u9*BMF?Iqgr4a)tc(#C%#fa()1lkjmAo|<WG zdJp@rZH)rkro!{={V=V+-qJkc$Xd+DH0KdKZB)Z^@-)8&i+-@bS#9j0xaQ!T_D^~* z3686z304)*u_G~)4d&Y2E`J6wn^qL7HTZ}h(QydZS@eeh_*@<o4??;R<9d8fi6X{` z4{;*G>nrCCu`3!&AM7h8OA<0!Cyc(+9+&d(Xw3||mRMC9a_jpyYOOTeUcH6e^+-DL zfo!wL6A$lt3y~A5!{YnUvlQHGj7htyM_e=MpTg>xis?4ksHG7XoEZq$fmGWUxRSXl zy~iXAXCm*B8&H2W{R-A-O(}I-Mc18zDo*g+AKQL#7r*nzL~+MW`0z*<K1Wd3d!0UI zo@swi%m+%1v}InmIK`86#NhGTl_vAOu!_>*#wvueJZn8zcP=<)$4r3PIekFT*dUp} zZGnv3uQMak&>Y`Zk`*&1Si?$7?{7B~tJ+>e)PO%WC+vc#a$AYw$)X)yBw?%-zxBMF zRbE(mAi61#R;;MDu9Ft=9_EtWK&TE`y9(MlH$}_oMuMoTq6=yit?6o!T;nV<?2UG7 z>Fmh1SzIb!iMhLXPc~J8@5kBw>WNCkodE1%R<H@4=ub1H*XWMzm^GCkWTa&8!|qqB z*ttB*9wVV+cUZ@G|6-hvTi_NuI1H5DupSKRxkIKIsk=IgQO(p|Ra5s+#V%1Jf&*{c z+(^G`c8u5xafm=&q2JnjU8_`5kBxDZ!>G>0sH3rv46Q;OcCt2JamZ}W%(JSD(#6z| znd9W4<<nHRcC<#X?T8e1X}Z&Q!zEj=THf%o^^RX^HBi0ZD^AgWu>wBn5sv)}8p`PH zjb=5MWS5rihHj<9Dx46+v&Q2W9m`}}y8wNBnE=%w+WNtI3G&a%P;Iji77r`r&`>3` za=8sD4(4{QPbGH86;7?%x?0SRN-9XHlX|P)=<@soHkSs6W8J#5P2LKe(R+L{xhI>< zVu#1bv*65mj?DKyH9`xfhcAPb0h}Y(LSfS<fx<$!PmpJ^EwxKA&lva5!}1!X9T)qY zS}OmxBY7S&TK_bz5>U5a=VsqtR=5a$-?Pw`&L4Stj>PAz*~y#S*-bl2XXT>YysV!^ zU}}HI?5*DGE8WC`P`1wLnfHV{Y=|C*b#f#7W07v7Vki6gMvOGcWncsq8E;lZEgRuz zYZ!oyi{H0I-u7P4Y~gc&B}~C<^9pQ)&!%Q`+n9vXpneMud=Gnhcs%!_cRZu*9sL4B zp-*GiaN~n#<wtev0-?!iHGRWoe!(c^9Wc4Rk9H{H7=g_{r!Sc+!rwmD+2*gWov}LJ zJa}qGqUDy^k!dw6g>?^i%GC?DyZS0#se5b6UpJr)6J<wFhjFWTD;PzcXMbvQN-n&2 zDkhU!q8QxMr0?GMH}5*wSuN)645>|WBGB>@3Xy`ZuJ>7f(}~okGA)h;zU($6q<NtU zKOQvGxwXyzHq!2(42VA?Ak1^vqSOHZzKjo0W9i*-eOT<)17<1D7Ul+<0}B_}<u-lh zpOE;gj-O*Qi5ELU*rn+WeCqz*Q5AE1s@Fcd_(!DKk&k7L>uUp=Q5+*b?#rg%6UJPW z^St4#R(-5H-<s*l(IXhe2?+!74l_!|wMp(>UqC<AFfC~Va&0}zL6<aX_x~lt#oW0` zZITN5b<ZmELI0M5==Mgwaj?Ae_X1U``)`L;oUH#xvy}zF@jr9CcK`qOpv7DMenAC+ zSN%5W6GV`Fp?KSqu~`Q;0n8Bl3+SVFj@vP0iCBpR)#vUfTzRSct1c%EjtU{{>Y9A3 zv?T@OWG|8c7!M7q9abP&bp&+3*?c~}dIv`Z{64?Z^lO8E`xAV>FOKT_cYZ?N9t!Li z;eF?WPyXmlJE^!np9{kL^;6Jkuxw-4a1ed0{F#W-QhqD73t8@qJTT9B31Qh6sIzPc zNfI~1^j{QhMqd_t*68JHwjcj7Jom!xjE~!19_7m&sUb5K=_uLUNd#T9%C$|mfo9Wb ziD_2XXvDB+o*>|)XIz#3x6U6ZW^6rz6WeT6YrD#cZh4iqf4W{+JQvrUC9oeq_?m`z zhlpw8GENJ~!BJZk=o9$onm8~pkM^m6@UN4K)J9=v(LPw|&J|OMEtL;D-l{yNks4tF z8aoME&zjxCr*&bRY&t(EVAl&5{=JO}x~E2|4_C;emYjr?rlGapnF31zqL`{EQEC$E z=1;syoiG#%t;c?oA~8*QSp9$C<9PppkGt8VSF{)Nz^b!%HW>`6PT#IIsIu~M*firU zW;UZ}r;f54M-z-@Hl~_C%!nq^&(iBRQ{alW(CIVAl4!@_igLhlM%la#2Q`!6cCPZW zo85j8zkdl}^xm2sAtrlUM-m0FD(8~VCL!C2$w7y&!1Ub8#1O9o547b6i&M1;Srd~l z#jhSPaU%zbt++YZZv`S&o)!0dsr@pC|Kzu7W4qCeJhmxnh3i^7#E%B#x56Di83;;7 zhqO7aQCtBL1hpt0$QAI=a32>n<gO@#+y;n14^$}~qNjsl-jN*3!mtFwQWxAKY$9N& zOA_(sxbp{~gm5y@IQ$}pWCbX&sPR;VlgB8BWso0QM$$^m+K=b^E-)*6isn=e?LcLu zC>TudA&f_RFN8pap;=JV{Xrp6jWDMaL>U(bmsQfNt|$AJcXvra$s*v;K7%SB=B^~G zRflA9snmswk{Pfkj()SK6Br=Cu}VV7h`lk89u9-GG7%{+YElxvIvUD**$D^oo#RW_ zTQ}$?@hpCw57w*-C%Y+V(Ll@x(!;8jXQKTZ?aZu+OYvPG7{)s89r+A`{4)3Jq3HRn zpBh6bbwHbW4XM5`xtRNVmBJzPsG7=g@gzPQ#sVopy<RH2YU<s+9eoezP8+`oH%YKV zR)J)}1r1_-Wl)5^M+6NjKSBKRc2)XI<;$(xDlPeB<oO_^(Br}35V{)ehCZ87>XIF# zf+DDoC<JV6xj`ZWE=%NT9wc#@j>I6wc}+EcJ9GHsRZATz=OQ+<KT~*Ge_HwL%gZuP z>#b7#`d;y$+?p-3rf+F#({i6tPim=F7Q27!N2i-5yJ}%XudTsuo*$^#+2Kx1(I~i7 zJbS9&qtp9I_kEp!@bKpTvAKsQ#BNeZ^OzY0bP+>gSepD`crOs1_YX4s>+a#}czZHX zrB`H#gavh>(OVQuQk6T_1o`fjE>G772R%X?sa5dI?jtA9QG#Zs7Tc&n&3@tpe8C(i z!6xDFUWX{#BLQt-6X@CL??{*jV#S=^Lr$+au0n6ij*{0mP90YBi%9H|;zfDm2eHG2 z?oAJz$~I2eP{~}ap3-?~FK;b(%_V7)eey|u?HUR56bTIIm;Hr$cnxkfm?=X^V3QjA zyb+}4Ug-sOH$CKZm-%EIZ7?ZOo7#0<LQ~}x?^K)_$&&EJ*fpmk-Gv7AyN$OhjGfl% zUr``zbMdJSFFGu&>%X(RV8CG2P0gq!@__}R-CH5dX89#t)Oi9zsbUun2fd<9-F%|v zuRfo~{Sjtro4cj4rDx7i*WrPPq$^ew!1%d=#<-k;6lx|t<8+2dcm&9<xPZo5IiRkj zuTlE)As+q?C?z+M!}=qatAo81w}gzxvLL2;IhnhOP4pyqG&sLJh!?$4o3ub*N!!jH zOJn53LT+yONgK)C%W_aqPW@#m1Ww9jVYduM66&YC15NS!-0<DxSrm}(k__AJf^1j^ zalyvOKND?+a5KMF#3{^{Gb&>mjDdDQr>zH(uuzhMkCaeMfjMb~4LD%><54mTvide| zxhsgQ0?N()Pnf^I^8U;6)YDJAJuPLnbKWP-34DLP6)w;YnBQgcmy)d6R<I-Z12cd& z`>`gi*y!$^&5Bmiw(;K5o``tTPOjEm<sF9l#FVoBP8}pjqKkBERO}38)*?wY)i^~3 zBnsarWCxTRwr|Vz4o^+EWbiXVbCn96FH8?@3oRvZjv=r|L9QT3$ka)N>c>^*zBb{y z61uUv|LG8Y!|Je80r4A7iyQu8yV**Sjogq0-uP<O;ATH)7Q+rI57XlUm_hY?I?2Y= zQEsOwq!mev_EGfE-S#^4&9k5ULmkV2eb22GL${N=oiF3}ciTv4r*uY71qk2;heD2a zfP!?drG?twT{rgyAa<vm`{!v3Lr-4_IVIyY15g_gU^U8fia;r_F)|rfKQC=ap1NC) zOj^&eqsYl^XZEZ#MM$|e{jgHl5V^x?;lBDD-RxZdGO<BB_i|^#sqK{<_?X&aL2rcN zxHf0~ewv+D7%w!T-p5$`R5w26>5D~)HbN9$KSj$A<L8-0Y<`K<{{ALN)H>Ve2|o7; z0$M!S7Cz5o`>bN=z?>Fn`~lNxkoWUe#XleE$bJJ=keiYqrP^b$<E5^NP-yCqdpEJ> zcIQb~Sdjudfk%%I(s+Si-qh(VLA|PThEc)Lq|-}L40@O@nqFjr3`Jv~I)CzwRjoc- z3iYJ=*M(rBsABut!Lss*(k9sZbpXd0h78A2hYk#w?R~Ti8Xi-si~UIm$&@iF^drBU zDVOLctG|6jtr^tY>89Cb&s~ek!3T<$?VM{3ELI?%A;(J3yl>)UU3JcJn4ZSa_f-&T z&l#R|O5<473^Sw7_p#fpx7ueX$zH3%L?P25l9yX>@JC%7vcu^iI`)9Xm6*<pK!MFa z^X;tD+(dIZQjTWJA3Ss26i$sw$Gv4BWqEwlZc_e?33&Mh3`)7clx>69y$g(|oWd(l zqI(J&3;L#+YAR1x=+?LjqoXF-JigM`Sj$#(FvaC386UD_Wr~OJ3U?~^3_d;fC{0uH ztca{&^o3Pq98PuTcb^;CrKH7nu}yo%Pt*T`J3Kj(gQmp&h(0sS`gZicOPnd)stto5 zl>^W`t^4uG>#lzA?_VN>LpZjTgkI<EUv3pud(XyDQs|e?EB8|S^U%5;ZxwL?kLJoB z_5nq);mvU+M{*iPzbZ`3EvxXgo_a3Ygq6r2Zu2Z|)ztt!a3Esy)|RyJ`C6z@&u=J0 zg&tygxY(t!zgN#Ndg8qU{Ut2rqVA<+oN3>)p+W%7sq_ECmzTR2IArAC^H1jRg(vtO z>ragX;F!WeYbGZc+tfe<zIAiOGcYWf85&zDyLQqYr{%Ed(43NW2Oi<EVN^n20GX1) z_U?3V3^}*N$yCa1QE#@s9$3-c%#jj>82mN2+v&M$Rz_c*0J7fk;+YNTV4=FnP8zk> zL_`Y9$9_TC&xN-39;im3k+-JQ_;bssq?Yo7lZd$)Qr8Zo2n0cTvzn)C`gj{O>2yo6 zUD8>~Cg-ReE{8J(;Nnl=ndI|a#NOI$ad^Zl@*NoT^?l?Sp`Z`2oh$DHUQ-^Z)>2bZ zb$;p<nkI2<`lxYfyOE@?d@W7@AVt2)?Psm?s-D@&yArnLVWzc7I=c(V1H=ezyho1I zz*fY`@qULi{Z{`HV_02*ydY4}AS}%yHH-X}ZTcnf{O|979TooohyM4yG8Rs*|Jh#I zu$FW@Uh97-L}$`*vW;(MNOVM#NkE`nWb0XbA`LC3kO}*M@SlN_Dw+4#&WVK<EoJz6 z&be7*kC(uj*L&UB@wVt;t(xBDF=x-5-{<r8@#W~Gy1lJN!$dz=EAMw(LRCJwx#`$j z*IHGTYijCf{N!H&OWWp^9gAxc{@Q2jJOZ@=SIj%dHuaiG9Qn79@LPi3?k-QTILy6B z$;7yoA230_xSM=o{eH|t3LpIp^{sHz<l^WgVQPHuxA*(q=C1$O`Dy9!JYkyu=iUCP zKEuBbVw#1?JjSNaM`1a|rV%Y$c(P~5E(6u43?hgJSZs771nP#f!iN45LGJd@riCyg z7mBR=(M3~@RePo@UL!0bKHZh`1=o(hUa*VY$0qm^uP&oJUcgm`*Fa8WO!;_$vAuQX zvvYQ7+7@DT@@elIT!BJH-Uh)#V)d^bS(Q=bFN+U{%a$qk2Z9g(@MZ2dC%xCg;~C!Z zpv1%{Z(iN&W^Wm_xUg{g5uP9NU^S0PLi<)RNJ78~og3unu%+R%$2+qz9;8NXjG4kx z18(KKbDDLjXx3~U#v5X3vkWg&NOL1-zzX-VBQ<t^Xq!#>a8i=QP6_kSXT<R~^&&Ai zJYdJM#px1@4G0ksRW^crMZj0w0T=TRIkXi74EBKhi~AbVDuO%iJ{;u7+-@ZCu}gwA z)i~>To1v){PxPY*&!J^$C!`~&_j48~r(e8KPC!3bUo^b85Q5h&GrU#a2Jz<C?u`V- zZL}xu7|%KyG;{?0q&F76X_~>@&oVBt2MpL|6q6BtlOr1DmJrj-2#yr&8rv1fkwN*$ zkLu`<?%=V(%hb5ug2QsFksFDDythh@ix8z>q%KeK$Z(#Tys_^=x5Z>%B9}T8NO~4S z(;_r{AiS%2{oXG`C#m5T=LR&9;t1vl!yLoGl=VSIN&=bAhQ%Q-Kt~oE0j?y8c+%Zv z0=oy5^(7dGw{6(Z;YKxhxJWq$_#2WD$Uk7efOq(O^fclV6%7PPfmrn(zjhK~EX9VB zi!|>XNX!9IKxT}2z?v^SY7bfT=aHDPBSqF`X@v#rF@S@~k^6GRyA0onL60Kl3Uh|} zASE=zW5kcCgY&309FBj-Q+S17++C^$7<G+9Va%n(?ue-K-}?cJ28xCRwP^Grm5}d& z^a>SMp)Rof40rm?sARh0=^~5jom+5{LM2HIFAa#H6ZOgV;vi^r6&(XsLnNSmG=-MA zlZQ{*3UxvB5MrJG;(`K*Jy0R-<i0(SiiLjZm?n=aL^IyMdePE|Q=6g2iu;B+WZ_#z zu=QgQ{gS34OPUz>L^SYw`*t~3f0lpkluLx;%w?E^fP6>NMBw{HHAjKwM-hWW9})#a z?NGfaawGwv9;C{h10e>70)mH$i%e5Yd-(ONr{<7z6G>no|7Ud7_@Y-pcSKd)=c|Sl z@5{AjJ1+5c0*l;1bvL41T{GSu>7NQ?VbKT8&sezm7O~eS-l{<5>r#!e*0-O|7o=c8 zC~psx7jK?|TY-IUe}%G3lrX_6ukRnL7o^Uk1yPZEpZ%-rHL3!!^X#79@=oBK@|g+f z2h6{dcjvpc1?#5MyX|}TKks!UOOE0!+q$Ii5~Fi(J8gAPP6+oOaF{V-9XY$9(eF3T z3`mD_mqh-}xz_}`cQ`kjbB$bMcvCv2Tj%7Ytv)SUaFxdl!p<jb*>Ve4*e7dy1|bBp zG@NC<gwF2BnJkznENwHT*%CN*9IhM!ZftI0A_RnMw7fpB>mQH0(XJi>(?$xY?y&QY z+5vWlAq;#T$9wZSajsm8lrZgYB*xu&YuS?FBq-oVTohbV4J7N275gpcQCM~U8mv(P zY0R&ZB+eyt71DP4a+Y@D_OnQq#@pu3WDRYShBNRJqR~mODt%jvR^OD&VT-_(vA!%3 zyXf=-uL{+EiUg-FwI!^N0<pQEIg8~QUPmbUJ8X#AK4dJaCGzR(CWkZN^M(0JpciFx z1u_I~YN19QM8x-vmnnl-&JvxJyr%*rLPinJHDQK7RuBKIn+KD$Y+1&`8;4Uauce$2 zvnQP<lQd)3fK(r^b9VQm%X*7iTzTn)Yg&|XIz(Ev-l{3&%68aA-vFtf(z=Pu=$Q_* zawKb{%7er-tB&s~jbo+pVcHn8I}*0W-wXPVNZi=4)$}9K=53AYXGF|z3Ta*EMm{RT zwyLd6D9=>sP&E+gP-W7#lp!NZ+)%H!d8Nh?{3-MFmh{aQyTP!^T27p5*L5UV1b#Zp za0;70&-tP;P@O0+oG~?TP+`#^2pT?+>a?rV6}4S=HF)JaHlKE`i_RhNIZH~-acDEz z%6Ao~JIAz~UpGPL%ZARO1@NeV0kUeG^Sz3y#@OJftW8k~_(p^knfb9x&MDBtq?3ki z+azn8KlWgQr5kFPOi2staQkKqfy(q(iouZ#s)lc&TzaQvrDx3!BP;iGOTX_{KGQ`f zguT405Teg>DLK*j%=5PxS}NY`d054?u<#2Kwq*)fjqqUVM3#4y+l)AAN9Hb!_`f>k zmpKfREF5O)<}2_SD4pY|Y=ocS`P=O7Mo9?$Xz-RKMWPE1Y^Ir`Jy+1LRhqcfxv;lI zzYjCOO4eaO6=F)VHa{61)lcpB9g=yRdHW{^QxceEzXkSw??lL#deb*O>1F+k`l}o{ zVuW!t->R$ooM~Yfijl2i98-Sy;1g_aoSr2YBoWzO%e7(2V<Y~==vlhVO#g4GQVHtW zI)TwHur!1@ckt*8%SSc}>f1Eg_;zF*jAI@$>n=g=0ekd1C<~shV8{5Fh>_E-#oo2d z&DUr$8rPmh^<b*6KMpqILW5l3Whu(j#{1DXH+!i@v0);tY8nvrxp5@*Aj4j#v}2pm zJFTxVc`X`|S}0{Zr`F`C#VS$GiV)0ZL^K2DAh(<?Ig;&~-2spP&bbQO9JMDyy&P1Z zZ?y#~Sv~0KTxkVJkn*q<qmO8{`JjVC#84M@$YF(ER?=DB<CUnH-8Ma&yd<YbzfjuD z7p4yU`mljdp!<r|OWw;NCLG-XfJOtnFB)wH0(vrJ5tYv`q>;sH5z);^I%ZQwZW{AE zqwnib5-rId>xA$r9*rL`%rj(m9IXs1mssvnF`D3`F4pjstgH?20UZlCER<(z@_mp^ zae!zXtx-dRT@XQOU3&ET=~c8=_<PY-#H=nd%v=yS5)dpgR?sVyH093=C0`y(|AD@m z5r|fJXhJnO@b!fwdi=2>pSa(aj&z66=E05E);at!7jD&^Ywbf_{M&;Sl_Y^k6TCDS zvDwczR*O4ch-LOWW0ysKHNy*XPzXYqp-hH&vT8GRhpaKt2ks`Bje-<IdF@qyOuH(M z9gw_)S5Tg<hA>Bs;*P1rU>I-qC>w_B`NU@bSd+e{vLe@{d-C*Nbe?RGrNVqv>=-W} z#DclhTZEZyMXlZop2%5S1({iM%aH@V#Q*-bNRNh3EKf=yn%-K)Xmq5ro{uvO@*H#- zJNVt%l?8{$T=blbCz5G@CB5%wF(_>3OZ%HO21g5SCh=4(#uG}9W=+;rp45^xV1p=v ze}cJ?sQpF5gH_x)H>V9vPeqWuHLLk%z7E#bIiTcSYdC_v30p{)(kcl{hr9Q>2`ITU z%R)&F?ar*fx~^SSez_DUZfBQ_P{-HS8}YIC?q59Mza3cvnE%hv%*w*_Kk8Q&Ys$vs zu_JZA*4~90<NEs(H7TK>kdYzu?T{ca38EDJLPGfT-ErPzeW~(paYu&XS+woUt<>wL z@lNreOnGxte6AhgByYOg89NJ>8sIwDjZn+xXV8y`_x~c@@%=uoeI=9|$fzBv?d|=0 zXZeo%c%Szq6*;R@=lg!YDN1|)RWO_v?WQDdU8TBW&^LM?7}{QyqqG5QYZAd#H1=H3 z)L)XX>Lg5C9uqg8VKc&5YKpbW$W-;8Xq%Jj>VDSI`SBBNJ35nHnYK6acd39i2G@X( zEDQv>KyZ5vr~O3KE4PGMjkxIl8o$EB5p+Uuc-Xjj6Lx+n%p2bh6Pk<BTKX8ezr*rJ z-KMtg{jX@tCQ&-P{F>K4yNf}NA5qdTLjJAW^qb)V=}pE0zUFUwvTNu#mQ_m2&M{e2 z8jTrlFtZkzkK06LRn?qgP-{QAbewcnziSSu*)QxM#j%(oZ2M?O4lRwaVzS?=8)aZm zcj7G?#A2c7K~EzW=}ikp_(<>?lKBJ+KyLVg&lc||K^5VX;E*bOJFX$ipn8xRq((LC zJdPn<dZ3+ej@OB?>Ekoeq~cSgH9N_{q~c?xrVd9D9u7x9KUV-I>`NTp!HzM`K+mMe z!*?m{tvmYrwU~Wjk?LOAD|5teK(=K6F`O_ieKW#{<td-$DJZ{5g3_MslGL$@Fxr~g zl-4O)^+DE^?c7ShaAg{G;2g{oSaED3Hzca9l3bPC$ytsZ4e4Wy3bFMMwIeiHs<=!R zF5_~Z%*=!~0hPNmApu3k;Q$n}$qk}0W~eLx<xf3<+c96#FxC-lUkQ@(goJWV;w-bb zG07vi>NE%v3d$uh96>XsN!|n<&}tbMKMSXC69?cBbr&#oPhtNao@8p<!2BpXp=gRJ zd*r2Oc3K^FWWcuvJ1=NQXXd%LI71DY=BO?Q9tXnDxF2S-hy8|^>p-o2)m?Q;CJZXw zkIraHm=rbuMA&0eSf?{Wm(ISj3D&;n#gMP1_1XJtq9C8At@WUhd$3A~w@$RycY-UV zf%X^~NQ08L4=DVBFq#rc2NCbdGiVm|2sNPcUyK`65yLIW(4=6tLc{)Z3R{@j9k`tu zg33c((`>I|AN!EDa+~I7zj_k{a>oUhn#Y#?hqos>c^SCIyhkGW>wc5)XCRgptce9# z(iAikQI6l6kJg9c*OlM0F4<u8;z4og80(96>%trl0ICb&KS>q^6dz@y2ASkH+%WK! z_-9xw78;ld1;)Zz3IpzK-fNHWg$t`!KzAsCeth{qAFUBZOrNg`Z@|at)%MBQUxOHe zwh;TFrSPgz&NhEehQiVhhJ$d)+rNJ)pP>Hw+Fuu~O4D|~bU#i0J)Y#`2q-`r*&F&I zH1M?TLFc@TLFbUR&RIVAF7)`z{)_q`uk-Kwcjxi*7jSv6;Se#avzYdMAJh;c43K0X z^Q%<%!@1ou(+$YC5c$_jSIm7GIKK`kjag2{4gFZcypSlQIj%yh?Q~DS6q9b1aK^-i zpc36ZcJ(3a?x6vQ>(OH;yRi8gwzgol?%I@w3OS}iWd$T*`X5P~iSD&jmpV<E-Y)I= zrgB_q5v1}MsBMgFNNLWeC*-uFg*8o~nORryEW+EBd>01h+}mHo=1Nj#t9WUl<p)e* zk)7ow6Z+}2x9@RtNNP)&ZM}m?>rRE_YpmybdTwe)B9sffZm9Fb4wfHo-fYqGcVikZ zpnvZzRe+AnGadABR35hhTuk=C5xupQ&SzwqS8huOpd$%oM7u8HYJZka+HgyS?=TRP zGU`2gxX^3{oj(YmEn^K2%*LQb4#QN_niyl+x+RBaq)L4onLKBVoN_W78h_v%kjeTz zfl^aL^=2F$YEATjyyhHS6sFy30E!`K4>X!aT$23z!3;Ia6zF2E7exAwd6KYPOZ{fL zbnX)RnMlpR5V_)p4!^+c@g_$rlon-%O4`7I7?;?=GQO7?ma4s7fc-}F)J4nSUIUqr za@kw@Nx@{Y1>-{kG`Q6KLS&F`r184L;+`;FK6K{rKAm4qs$AGC3q&|Xq@4^r_9L3c zk^8<|GSNfMeIJ)8<i<=2HScg^A~fi#eZMvJNzeMPwuExEYOx5lX`<-jrXIma_6gM{ zdF?+kdBmgpz|=t^B8&*}TrDaTN_i3Q8FAG~stSwiqBSs1X#WU2kw*q;Q_hu-m>&<o zY#k`AITKfLHc=|i++@2@f@%Citg{P*6Y67`$^TkMGRR!)OsB1%q$bVNER_%~UW4fr zm^Gb?x3bn~qNY^Yc?oxt4oV{kU<uo)tdr`<ou;pN;)UFz*Md5*IxyjwLzCe~(W$?x zCAx|=n$sd%SaA_@KU2v4vxs*L;e`sf!;YSBU#DqUZfbrpOT(x;mE9IPR5}+t?N>`+ z4Za*Myn|UETP{IGZOfV9$MS>E8~3^~BHR=nJzPoa%C>{$Bu7z)Zkyq{cwTX2dP}Bv zC9|O6;@FE9${U26<Bg8a9b|%zZCC6}z9w?8i!BB7Wcu_}!2gBdPW&&P3iV8Po99<5 zrTu9pn>P8{er)KA=oT3v{1_X)8B#RH%7Z33O1Z+XW9~vT>W0ostyME<f5kmFy)9}3 zj8<)$!<DP{aTZwXRm<g;0#`m#&%9wVmxYDBs0Y9iZE5PlEKU@Pwmfp<(RtYP5I$!- zN?QAkKlw0FaV0zIA741RfQyW?yxAQsx7plwU~@d~=eW?0d-cM>E+auJcl{PEd)bSO zN-zs<6V#zc_PMSl>@8yI=*!ANhl%mVoB|EZ3(2O&MM5eBxI9m2%uSS5;kWfYi<f!U zD$r}QN}c$+Zrt)N0UH?7y;Bgq2*O|UI1`W87||X)J%#I+oh2LIH*h%x^<llGc=4*c zsCmz!*h?Q^Ez&kOQd!;SO!hF0qv@s9b(;#7pWMN!*M^c*WVM`zt7%Ax^Y%{q9K$UM zl=n#(@>)k-153|sv+!^9*L4v(H=K;;N*qHj<*O*Ra0-~K!9?Acvz$fZYE+BnW6G&- z#G{0!4${}YRfuu)kflqwxBq|yUET}+Te@Ol`Tx?@|6M4;{{LdIm^qpLr$UiQJ8e#+ zuvbqQh98cPURY}%(;S&A2R#y*UK4zmgKaZAj&vX$=*{LUu9lOH_>AE~(ewxo{y%d7 z-pujo*k6(n>|1FTr6<;`)Td-d6xFg3&RStsVvdjtnX;(rouRTl9GNPZllWi%poA1w z`^Sss`q#-;gsCXP^M%>l&o-Jf4m3wN&85^r=`^}&Z2Fg~DqAfwtu5?=0xJ}zUF6tX zVp3F07ySXt>neFJ#a3a$LEofM_F&-?`JFIvt43g$c$dSO1jN9JW2<`_B5RB&FiK~D z6^S<3$XYHJJnN%^58l0lcN|`QX$U-CYn592vs|mVs(sBuYO*r{Ev0FGTpJZ>Um+<g zYCj=L7!axc3i?3MGhDd-ETj-l4SeX`JGu)l^cARaFv*H|R47e8v^8NWO<RPsN-Mhv zul((xh@O%x1ZE=g;r)oSj>`g~a(U2F0$pYOVH+dF6eL&_$_N$NB>@TeNTj~&IE{0D z^w`WBWn!D6zi8l!P~CpK%&vJb)<p*{gdZ}8v`7WauQ{-pl@OMF<n{HcWNfVkfEF5r zQzGO<hD*;qIpQc)l9lce%|5PyKXnkq<U*wMdr*eXH0)%t%?UZk=YGH>3w#-xB5Z9> zKxF6Cd&Z>g+I^l9-6MZ$IfOY4!kXepuRNO%hseU6JuqY*(!-8qqX4*(SIBtLDl!vb zP)ec~loH&<3&v3HB^Sr@JGmKrthMX}G?rfrQ-0sa>PeGkDJcqcJgm`^oc2?R>%0Cy za!>2O!q5n921}FQaOk5E4~-F0Mes+WJu3fVw@`9j*-@05;NNqZ`d1k>`@|k}PjV>F zGyt-o;;Fy%8qlvK+1F&A<oAPBD(3~F(v)mVykZZun<5<~+7DKkEaPVJ7!C83Og0@+ z2-iwVwyAQThUgF9WZ6pBs?;v1?Y*d5kaEU(y10F{RMam)rmfI+GhH)FgFX7cGD8=V z=zl$@d}UorJ#)-amF_)3)1v)0<o#$yjXR(=T0ylb^oRiWXvty~HOhZmGC`d(M2qKy z?Z<W|87+}-h1Odd5su7Hko)-^<^wY_B64;#D;gdB5pi@E?k&KTRuNY!$RFYk*)Ku< z?AaSD@$tvhB`W$%2^$7bD)^&>*h}@kNl^^QiQUt0f)(Np56+gou89aK%5j;>$IQU| z;f+c|Dkowp68g%T3O%X64je;7Ymy_3Rwdyu?IGK$p)*55q^wirqPcGElPP)f{-aB+ z7*~X4;thi+O6<cAg4i7~5$JQ+9ms(XO=vp6bJs{%vofn+9lz>)SnD|(z5H<P)6Acx ze@6f3d~m(rseWfO3%?Kg&e<OXI_$S=B3MWe@y+e!CS~o(<!U45EP`41<Nw3hKLyzq zbz7To+RmM}Gk4myciOgX+qP}nwr$(CU3t#=|Eh}m-ixy$M#PGByXK71d+Ysat>S48 zR^$D6iey65i&f{-t&=S+X9n#eVg&6WVZ`KQ#Ai|_2CbxrR^<e3Cw+~Q(W9G7QyaNz zZEwfsqydf3ScYD3$G>IH#PKTSA>!!hT*ykPz9PmuJtrH7S53Q1SrEAkhz260)HY9D zV@$N+1}(x!1xV>s!+Sj04fx&V1jpq8Y4Uk=5>CbBB!P}fOOMFgKg2o5vA#5eZiVt8 zZ+ZBlDThj><YCF!tYiWky$>{{r|N@}H=FvK;qt+->XOM2ivi@H1}R8_g$8W~dnk3| zaL1-%4Lz$OOCL&Tn&K|qCalZgAr6}gsy;e6+<wbBvJ_lE@Dlv*H_(dPi`w_!|CifI ziWX_$9Q;n>iDzw6%S!bN-@9VF@44*#zkbAel4o3UH96VAU@veL0l!5(V!ti(n_WvC zVE%K@i36qKTDr_{yu&Wq5Vp}pIvSUpHly}y1U2?&{xU$=&c(<;(zd7G?g6L5Ql~H$ z6n(ZsV3~Hz9jCR7YIDKLNSh#928^O(|AvJ}V3_Svue15A^Z|jqw70(ak#QxL``pq1 zVWz5!aWACoD(j0OVDCGSJHVBc@ex1kgljbD=A4YyiGwXNWSVXSV>rTs&ik3uG)9{o zsi8yeGq}sk*J5Ywnv_3{P`=CAC3<7dA>sRxQG}o+V9%k1uF&tyq=YTjAZyZFfMcQR zri3wNvW6;)V1V_kv+cuE_qb@F{iBmmLC49lg_7N+SAkkNr1b~ryG^De-F+$r*SM|& znnhvagKW}hkCJ^)=6N2rtVj5Xcb)NO#QSH?FtG5)q$(0}vBQn_fv+lZ6D5#w6D6x< z?~_nZnCyb{_NU_D&FicywzIoZYA3q8^56$B8H!r+Ki!9H%>U1QC~0JE;%JKhD>ktG zuhfPq^@-}=5#82|$|LE7*~1qE5MVMD23@Q$(iI48yoH7{0LHKH<IPDXVT9E5!FF8` zfZAl&!j|QIZFWhxL32#TS~m~IC$k5W@kbKt<9>}!j&={P*WGkU)irb5pXL`{OJ$MO zs^u*;w2R}5Yp+{pj~}y-+y9&AJc)8co~URT`ii}UbX~rlNHx6^uj%&snL4}j*nNfJ zYP(!E#H+bgtu#3}!fcP)eKxgd)PV4Sq4>BuTR4N?DAD=u^7?$b>G^zJSU~;6Yw_{? zxhu($`EeIfT(<P#S-Z+1!*c!~oKxIO-R6~h#GC*Oi}m6;(c*7f{!E8VH?hUP)ylP~ z26k|jE%!S|_2DUGD#jXgR56*7hpoJmj)t6^0mtr+gopaa&g=I<OW&qQExu}KDsmOw z3zXwbR!8~?2UBG#nUW8K8`@g2OQco8I;G2o>+6beqz}7~J=^pxVLSY{A7;tBj0Nyj z(aF5QbgIZ{YqXV}ex4rAH16J6s>@l+A9l5#5KD#qt||4vpj3-Heku&Xtly|=brvj_ zgo>Fl_6`zHc+zz9PvZx;4yioX_19}k%dO=|*8A*u#@k5!vj2uTD<hM}qkmye3O;x@ z#TX2GmQ;ePIk$`mW@k>?P}EAMT#R|3=T6`Bx%)9c^WX_cG)2bk2Pg|LPi@_*Q1%n5 zL6rM9q*a2Ehe*pI$qO!!Hhpcosd!D0HUV!AYJW{cT7OM|-*c<quNE7zZ6X=5ezQ(+ z^=$)B905PonYC8MTt|5GdZnp5%ag3Co00Qc*`JOWoxmk14^?NJ!3sVB4@ofrF6t3T zT22c`fFl#$w7sZ500!9Gt-!)gmfGlW8(^x}#%z7k8X^yLxrNcK)Bsr|67Uvlu^S6^ z0j4&l4B`{Hxr<x|R;cufchb-y4myn<mp5%qTb7*aK!Ftt?C;c;+D}IFYjQ2ROX~#h zN+EiP^g5y4Hh}J@xrmS!TIZqL;t@R2hhtFu8{tzY>dKkZd*BsL68dAr2a4ZHr}9^o zjMGx^vM@1F5&qRP_-C3J`A&IL3l72fE)~9A2qHX{KO0>k?!oh4Vqi_%vMd4JB-%4} z{7akS<?j~5Faah#bTCdFAcxR!;i6V~6Mj9untke!69~9pu_UZ4B=OR%5l9SXf{h%g zf?i6bWi4mKO=P4#$~MSt2yr|_XwoXjK0!8L5`;u*;TZhhU*C2%-I`i7@<x5Qe_I3| z10q0$iqDt<lyvxWi#Q(|z^%f!%`lsi-=SrzrXrd_lTcLP`*E)xT!fSH6%#c6IRu-^ zmH>L`2o}=69<DFpUcIY&Xb&$X3tZ;j9@$Sc@kf0N6awzD!sFEnXu^2TvY4sS5|l#l zIsk(HIMoOkW3kx({8ti<h@!nQe`D~#83*6KsVG~gABSOVwe^Ns4bppfvzFz+yWN&O z*p5FAtwY9-$r>1xA+gUj=%@Z>+)<~uRir4%Ge*2lz+QiR&FuI|F)jPxdcJWX8<!y? zklQRm(i7zO?d`7M!_V%OB5xDC-zlg|?cU*Nubv05cQfXTSNWz3d|O=ko&Y)p$s`vA zb-(x9CS$b60ZtGJ^vgUr)V4MXyi?z5(zOj_l)Q4&!6F5?*g93!TZ`SGN**`&cKRxk zE}<4#Y4gV{>+p3jJ|-{rt~z6Nz2pFwpoPZtrUfHSquuDr&a7f0ks`667xV`Z8om$= z7*jbBDyw)Hjo-MM_r(9bBax6Ub?u7=)SC~QoObKRPO@oO=Xoh|dgzA8RJyykhHSL` z_!n-(b8PkfYh16cIYNa%TgBGq3$;}s|AQx(|6?cmDCO<rg$2iM4Vg=q0~~@X-8E<5 zhFU{Q{D_WC>?RwHzGc#<H@bI!E(sh@F8TC>l^EO@ISxjA>JYeSC8(JJivlLOE@^FC zcxSJw-*S8MMaID4|A@mc=eVU$bI)ROEMVSa1J79!!cL1TqE|$(tyF~Qb>H<IJvrVg z1L!~*`dd@7Q@$<%_A)su=8}sVz;K3-unnG#>t{?GMKa~ut#o))T|`v1)m<-DziC>^ zAF>bMQP)jcmtoT%C*D1x?G#A07~Bzcno;Y^A6?_%WO9}?NO+$A98g;P1xs~NW#9-u z{58)W1p*XR!}09iZlqdNxY<*$uR0N+GCjU#4F7fH!5B~9Z}*MP^`JEN!@tQrC>?13 zf_KP|Ex{Kg5{Tn_fS3U@g)j@z%g3=}Zeb!ebJuZVZen`fl(qse0E_CO&q$>(xfFL* zPA^OiP7eMIRw>fE*@<S_q(_V>PhIwP22p5eeRS1&0LjYOIdj-L?oTl=PY3Oi=e7@( z_AC`ubj!IE_br=xsmL}}-=436ak${wYH8FAqjy@85<pmHaqdGG@N8L7EsRlD1REfB zXFGWJ&kOtK(8_hRgiz~=+_U%h+${d-ZLpKYW?Mf5xT08f(yFxl`P+~RNzwz%-`X0p zp8o=4tK4tBi3&6t<--ywne6im(ghT@g_2(8vRDhy%%Ko*api4TV>~wu5$`&GhP8vJ ziT7#Sh}z9z@?RI_fXL-J1R0Mvq8mXucV4UDAu~A>PORaM+dKqfI0HG&&0$x%!a z@iFYBmWO!;4y;R|pC4k=MDVkdnBv1Cv6m6$!J;1S4imy6vf(#snJDNybw`e(W_*oo z-xTmVPy0`BJ2-#cOdR|elE<xUtX1$JYG4)RM&?DK^_993d6dc*DUnB8VwSsd3s#>8 zNy$=7-~ojDAbFaS>Q(9AcAt6sB4>?G&@M=IKzB{RwDkf%7KWy$iBWxB)l;;+-J*K< zAY7Rlgk$PI3NQ{u!faPMutJ%Ufs#}gzsqk>559ig5q2PwWY=|=TX)A$fmMZGLGA#y zr__F|aQke)eCY1zzOt{^Wsw)iA*n>;b#xGp{O~8s!+MwSRT6rk)Q&6!Z$k6g!|9Yb zQBQrMt0@mhr~t2*f&l91Trk^C4D0=8R!JVV`{Uai^|g$SGVIJmR+gx?rCW9aB;DNO zO{=yhae*Q*>HZb2AB2X6Es7o%ac}4f&LsrSu)ZOxMD09dxms*kjymYh<~HZf95P;} zh&r;KYLC1n!s$MZ4x*mdWwLFo4oPfL@^v2ZLZ%@Rc`sgFs4IPcSeZr0P@-V1H}ywA zY1u%)jYD{7)`M0qY+=_{s3&|O+cz`^lw=POX4SJNXqyPDxHY^!<a+?k*QnoXhya~| zcA?Zfh`7EOS?dk~up_%M!Azy3sVEPp+2~Ht)5Ig)|A0~#La3P~{xeCRNPgZXzGnXu z_wT6*Jy*<MRZp>qsEP;u;rY*&i?D{0Bsq#5%<OP8w~P6L$%-qq{d`UjpGk+LGNjgA zdqBOfNdT*Pn4&0)3AGFLHdvj*9O-PvB;3_M_78NYT8Q{eO@?+`^DEg{Gu}zTBkE-E zb6}{PM_#tGNh$S9<edtRV}@LQS^e$mL@)_CI<f1e&-Z{x<<w{?=`2ujoPU*O9svv% z@$3xe*svK+&swHRi>1#`G#&$z#*0~VBX}0m>@kyJ4`)Sk?Ttxz1rjdY#d-VQ>XK2h z<vt#qbGr!OLk#I~nCMi2A_D#1#OSinu`r3L^4=x+KW|we!7JF{dZSK0A;iO=W_P1j zuE-C_2l#C>=+z2zEw}6?1KcgB3`CRrmOdkT2{><OKgc!D*LI&nz$l!mP|Yz5BOwCK zQm=dPaK+Kr8e~_IzFS=-p_^7N*5kEo)-0Q9hBCVDE`i~Dao8iRqBC)ZFP*&qes+~J zq8J+%Ew*AO><9B}{12Awnfe=3&%2AWa+Vc_Y1Bo_L|?p%q*P!PyIfItlkZZh+Pzb> zqFHj9vD*Titc|H|TY0X%!_F9@d+cOk8;&VBy*HK=o{TJL4;ESP$zSa+Drr$vRTftP zylgXh5kas86LW~)%u~%X=I}?QCyaolRZhW}7S{(05w$&NuBr{Alpb+l5jW9^_LpbH zRIH7?i#);aRql}e<szKtx&1#D(c&zJ5pWA%%HLvJ{S_<UuZ7qfp^1WLMYJ9*H?&|c z>#MK3xaTU%P)u*q&1wJC50gI&Xtb1YihHQQmT5U5&8^#nn}}0bZDy@2GvRyS-9Y%^ zaUOgMXboqfOvV3TZ41%_P*zfI8e^jN*yysLTPi-&fb(d<-AjyRBaP6K>48%x_Ba|3 zJ+wDw<4%j;9W6EP<5lg?P09bu?Wz5w&BcsT`Hx-A|7mE?Ku`a_o1sprN!eht!gS5l z%odHviOb~(BjQVE0)V=kUTDM$c1)=Nf}6RY?%WhO^AO)ecBy^Hq6c>o!9EG`@W`t( z;K8J=089B`<c!ur_O1OPG&<;l<sqdH+1TTB_&CCQ*t@vV;qm6sJp_Lk>44ASf%iG^ z`dsBR>@M$n8>p!PCw+M6J+ATVIwF=19MtQ#`r)h9)RP(Pt8Ji9N=;aoP|iObP3+RE zKV&1h3BTaQ4z|{|$Zgm(IK{^awsSdeweaeMUuf+}sMBcIYQZA_R^8f!Gwk6DsRv*7 z@t<-QbgA47DIT#$e?GaUoprmUshu|H+SpjV3i-$VJlCm%F0~vqe*KQ-$;1n5(;E}( z2}i;pHgY_D(z1J!1FQz0Pwy&ryyG|YK1hGgH~>=}qFDbrZYb$Ah~zmI98jc4EPS#m z^m#)eOF*AV<%;EndeoW(RP7+{O0<TKL%_&j(FyuM45>W)?-vf|9Or}g`QsOq2!Wap zE6rv^%3=^wI#3Q`PT-_F0;d?EEUK(Xt;xKaXMPvWU5R?T+INmvF|{1VeRxMxyA)#( zQ8`k1sfn{@aBbI=eTls$$ODr_<T02<#M%3MI_Xw9>LWZN%Ah}J;FDf@sycrmQ&v%T zhq@p|!@Mfv$>zcMyhhpOjlQ^`QF+KAG92jmw${T4yIU81|KBw&;*4-;Nmm6?{ZO8N zj{3X4nz^TILm>YQDqU-}$T@HVCMBi;6Ne$@Wf5dgrXaH0^M8(WiMET->y3v(55ZBX zE*jQ}H2w*Zy2msP{v!uvN3HLJxW{%H=Bx}PB!xm{fqAAR5VPYE!nxxCfk%gXMgW7S zx9xMwwM{0nXJHpe5??-<ES190wnud~fD+@F>Ot?V$wUcI#-`=z?_7swaWKY{2Y{-R zB=|E9SH!Fu98&~>J|YHp84rzdzl#Wus4MBzGd3~`7oY#!8I_r^08o}v>m*JhoZBmu z-#<-u2^CvgP^PL+VuzhiTp4Kfim4qf>gk%j#{MMSOaq<23nVK<8Olkp&U{}Ri5@84 zJ?bGq3jhOpH%gCs`F6_N%5EPh;{<~lvI0^Uva%G1Q62O{C!h<>!?))AwgSy2*r^tz z5y8uZQpN9I{hruI$H#qs!x5O(uhe_vPjRaV_5i_<Rpr|thaLs;oCJt6kJ0`EFUVQp z)zQ=*QHaF`V_P5YDY+}e8ff~D6i@4tAe?%gAn)p&pgca0?J)H>$4<bJ93mGLhMuFy z>EP;NSw$@CI0{v_Lm;ANXz|+z{auZ+d-)tU`nm1-m-yevdd5{9STQgcT;9Lf?7>Re zR<J_5n-IDAxMp+@{OWc&FC1w~!rjn*KR15;P7;#+(~jKL<_4cEGsSvl9Jeo$tF|9B zHC5&IK%|J=Hhs6Yk&zR8k-=E_oh{sXjK@TgNku3WXh||k{f72PcxXaoV25`X0mqG< zv%)^>4MpaAUcYU1MV$Z|A;A>Oddk_#c_USw6BU<9!$j-*y>oKVPjFV+4^eaM1}KIS z>r?%ZTyoLcUE`ZWn{1ZWR9U=Hw$a5?&0=NNk5uOF0SWu3nXeP692pJb(f=D|Tahcg zOES5d)P!1DV`S>1%;q%mfM#P!*+i}}OkwiD9;L8bkyWvv0CBD)p{+pSmfeyK?4jHM z;cVE>q(ew2qd%W!c-d<W49-N245P_R-xk^EDc)bX*ZlaLsedV9DpOXPbz#O$SCgpz zw!rJbdm?Iyg=bY$hztSw9siL-Y~LW=Ik@77S)lSyp9r({k_n{|^W(qlu*+yx{o>gr z6xx%zrKG*1#HjQ*=pm;rFJ)8c7F&~yLsJ{sKJpSW{I+_jwX&XY`;gPp2-F1GB{G%r zf#XZId5j(hZ?om|R_h;P0?e$``ikzJkLbTM7&IG`GL4-q#QYMh13W}2iO8JyKn!a9 z!8DQa5l6yCMaS+=>&2;nZAQa>&v$m#1I*ADcWck%JZg>1k03A=ABzALnH79eN#)hm zZVpXVvi!EW`GG`l$U)Jw&<CEiVo&MCn1fKl(3VNspVCd%6qQPU%5!PMJk@TKW+*pW zSZ^Y7v-7+>h1#u>MDgr$`^~JPF5=;T1j#@iV?kS3OPI@(SJPBq%BL{K>0Ma6R%w{G z3)Tko5JJWh<kj>{r<OV7n7>tN+buJ6-;3mc{8)ydw9u{-Sz0tSVwbM#MEPDqCMasl z%C;Qrm&VW@6)R|Q@1ZzcG8gRXcdYQ2)j5i$j;o7KN#sK*m+;8u;zy0K=Tvl4Bpx?U z1oH95RUz4O3-(k;-NEjf85BWasW2PJe0dw>4`kQMNZj@1t!9$aRyH&TNyx0_9^XxQ z_P911EkjalEfUJ8P#mhjB{bYbdX<>u63FDAMWcja%nQ_yp6XDSH0tN-%U_O-O{{&* zZF<y%?UwW<Hkh=O>CX4c!!)7_l1oU5J?tD2(acSKSq3dA1|yUggSyw8JnVxrXh&O4 zj>wn8p69)MKK!Tn0ZqybR?2-?SM#*zzdfZ5jlQHqB4~T@A3~Sg{GYFSUAT)<>{_$8 z*dnuVi%yUy2FOB1P5OsQ=E?$irk0QCeAka=IB;*=qi$iz)eoD{bjm75nPrmj+_$r* zch?t{x_9^W%Cn*pCq;7^wX?4Un`2BeZ8-xoHkdQfRC3?83!Do+&Z5^9Y<SsRB|vxN zxcmI{1Z~StGt;Cat08x?-kQ94*&(v!2v{*5Q?cTuvWzvCp}TE7!_zrk0>>LewwS?b z4%TsZ?78??pH~Kl4t+dt{p0>qE%M7d{2vemGd=tNN@1;1mx|eHM%n7o>61#)cYB*6 zq|@za_5;vr%*u)r<`B>PV;fr>@%@!8829H*WCr8IjXpb0DDEWt!^^0EhrD203+9`d z1HHieB+C0P#wA4sK83f(Ne)FTKT4bXv#_ulK`FdhUr?^v^rRE{=~k}mXBgci5^@<m z=k{T}6Ygz@wDpF_n=AY3<su#bHH@~~<MsLe7?AC{H=!OiLDSV=)Hb{Dg0UTa`y8Jn z^j;erFF_#&kJd*X&*!7&{r2Of=j(H#;C_$xT!+{D^=M_nhlf82{i!9Q)JJE~LVTLT zBokBtZv{)bL>7ceOjh4XlH^$EJi&SHh@8}eL<EbH!cF7S{mxZwc?ye)^S^}En3SvI z`K#mWjS@O5R+6>kf)j@oG7-S#dS}2k+}d1Czbchg2h>yZ6q!7=Ixg-1j$iIyWv&gX zOL|swX;Bg$_EzS_kuI<*g;VtD383)yaD)GV7(0>8?>!aL(((cS_}tTP49SDMoGty) z8Z^rx7TH!Hgn%YUy7X)^q-qk;yd|N8Trb?0Z&X$s+}Q?Eh*XGYx@393G(A{HS#3`Y zWQ~uW!*mrvJ>SsFl7J&SD6B+eA54dN+$~_cjE(PulLNmXHlojO2A%Uy0%H<X@3n?5 z#h}jlC7W9}ZTXoGwv<&Fcdh)I2#>QF!zd50FjxBySco*}7dYSvRVFE`)5d~EQSJ|n z2<(MB5!wK>Lw^<3fwWQK8^&VcE7q%6=bsr9;)s_HH;K7Ad~C7+p=Ok;ED9Pj^sA8w z;q`%lL<ccXV`8!t-KFvH<V#C?rhRIQ48#lx3O^Z7k>Osr<m7Qx?aC-7GcE~GT(oi& zK_+@oieJepNt3CMV5F4#b`_+gHcTd#+P=0ArOC~o+81DA#9IXIRcPSE@p(-jtq_7M zj;gPXN_s9Kl36>p5alq4IW+86x=9VT5)!LFqXM(jZj}hUGiXr-KwCikQ3?SW#}n(G zP};S%_O<at2d<4zcP0VGTJ$37=y#M%yD!m4lI=#?9Ug<K=n2{9(Rt)Iqrqhl0k18X z9cbW1iVSv$QLFLtu!|~!$E60}Zg?4$82Z}#Xj!nP7T%7pmVyp^>!#hv2I5sH-|3`$ zA3dXoSbD66A@5h9TMJsqKoS=4`yPm;*#Y|Yfw0W*=gJ9DaPi+phN=xY^b|S>ARa`N zJp<M05rYlEr%v$@czuAlLDN{qkI!5EmxhY(3JuJfz^niFUqE2%Ilr<vSg^{$%^d_( zKoe?)CEqXapur{0`qu({AY3{(2u98m0wPQA?c<K2CVeN{r7O(P?bbDqnP^lLbMzi! z_>uvN7fU5nIz^A1QAmV=I0U<a)eUiwkRT8sA+Xsv^x-S*|EHkx{I`Po<K0<V0q6Np z-C{fWqSk@)HzQ|qTor?Du|+>!iRD1!w5Kd3sjMyh^+WvX<Ddp2zv_HPq^olZ)Zq%b zllua>eoodT?5`WPMc&{x`QkqB!AR$7zFq{rjfO=pnI-b=V$Y@z_@6Q5)_Hv+SI+PL z^>yXkt6Nj%^#|4i+DnCvI998it|QZn{IV#1G}=K-Zxnq_PtJ+CMF2HE6NL;+kg4#~ zB|m!`!{g!N3B?WU>f?+A&t8rk&sjrV67mr+DeKVr4l-+$ezx7We3rbgzmIH~`9z7B zhq2q^I2sB-<0CtU$c`U9&0yEiPOivc>g<WRV(BuvwISGn%0zFT3vF(efe|Rsl-47` zCI}K0U3!9uQS|YE_abNq5mu$|06WGTl9ZOotO|X}?F$N3kHKC9PJ)uIV_EvR$^oeX z=A+o&UU)X-EC2{N6Dqq_xa{~Mig0FKv@>46!Yb$TpocKVW?(GSczvQYSGb*Dd*MqX zy7E&?q$p~pt;{lUX@FxWOGsYd8v9Ksw5V)RpVC2j-vjX}5^+?lo-cp;;WcA2J)XHP z_1~XMx)Il3L#={Fb&(;=wlk@jI}T$2*DW`;3#vS5!7eWWE^)H$bX6W+Z%>}ynz%~! zTy`lRQ6v)j8JT>QxLU*zeQoH!SDpemSBb+S5BOe@qMa-DmabuPc;kCyknJ<?-=|01 zZon&T<{s`MszKIsiJn0SfJE2{V(LyAvd!2Y>G^xbx)4_Uyx$m!IW~vDU`(l**mbQR zn@)Z9j8m@8<!}q}A8n;1e~wB*DyQAxc5*cZE}Y;!nF@UI9#(>XBL7VYOM1^@b#ShZ z>}nXKM`XW!6Ype&iARKm+clx}b%wZVGyyX=rMbm45$&)EZJ^Vmwu%x5020H!rxPlX zan7`{6r}KLxWF4W2Ki>r8f{kvWrx2w@3SnR*8{N>3%k%oAqEVaE=F^2qN#*>w3>%m z9WJhuX0}%ky~2OJ-z|~ma<4ahO^qt_%zn<L5K0=*?fV-(wB+Nq6fLXVg>C?Kpb{hS z3!+jP^jsampQpYrg=+hjG%=wU$#w92xhs0eJ=&7(RD!|9)WbBK7mS!c!CU}pK+WK= zaRgt?SH?w&IQj&jGIo0)KDpMHjCD^t?*!9!G#Lw=L3+zl>y-wHr#gWvI8&d{dkp^L z3SQF*yEhN*HQ?7mE)78oj$4*d(d8b@O){rEtAb&m0*DKbgMC%2(Pm~y{a}9?<eqF* z2VFrLvEz9u&AQ1gP1202wQgu!!Mq%9S9ZQ8Q%NL7O9587>O)(D`}E!{5oN*<mge-b z!$-oy6$!Hbf)-y|#c!($zmhV^plj?95;QUETz-mnwJ-v)9BEhIV{q)rj(lJ3QTYw; z9---Kye@eu16CX2xuPN@Kd7WcE_{A*x?Jg?S<l!ywCH1WHcijkzKouAFI#_G3HMrA zr8$bNRYM*@1{c8m8I)?_+up*sj=WO!5MSmjSP~CLe#ijIKbZs5k~kD-$u7^ZW0p!W zpUh0fk#AeIbHXc2-@|1VZcMg#&UWr+1OlgqdTu2!nrq13J>Ifz@j92sC@ywkSErX{ zuHDJQt>~t_XNfRR@a-neSg|Q>!BouHc1e?_kL+kXCip-+9A4{M$Mk@E1}mT5RKlTa zG|Pk&6C*-<*6yn3Hul|>T-8>jyo?Jmu~o{DiA(TWI+aT|al7l>;Hr3cy6EM^y6Qsp zSy!8xJ&iWXlz_hY0oA7^^exSn5-;swsmkkVQBaRhMQ9|Kx>?)7{Rzt7F5`M!o!i&* z`1tp6bw##*GYY1XVAA~cWwt0Z6&z#wn!71#<i)fKWL=TT;@Mm@%Pl6Z%|JP6(!;3I z($H=;{SmJH!Eh=qm|%YEG*o{6HHmop%)Q$9+$dt+CL<H>x{L%;p7{fu^N9HLAB)8Q zAXu^gIxYYAhgQVQ($UDCR>V@z(MZV1z{b#shX=~R(cVbU3d&V`N_{LEdjzrTMP+el zgyyIly&r&37z$xG;HnLgW7Hrl9uTVD^Y-SWYqW@=q@vwJOo1g7tc0?GP)Dd!m7!tj z-dk>hl}zbp<+T{K%hhK2clAHQp~8h={pf7q41OX+=clRj=jubp=l#vhZZBqH$J_Pi zfwshF-|JJOOMb%U&uaJQQAUFDM2@uk+lY9F(*Lag_lLas4cV)47B%WLstHaK2#-fp zz_Nf=#cMRGC(Y4wBusrCoiR;efl9`kz#tcvEWFvCzsbJ8VHQ8+k)D{H*=@NAQTsAa zW${fzOOl)DKCq5rqqvhEVWwkDES$Ms-vK2IWdmnWv1E8XZq-$o*5xGQ{XVDWowXX@ z;CLxEGB>^Ocv|=Drm@nrGu=Mm-rrw^%Ha8Cx3bhfJZ2s3rGmQ+!WOn$Bbk-Rqz2`3 z>+UHF`CsMw&GhI6DZV{f_kSrnPFw#60jOaKxZn`&L|j3L6fh)~^3j-VnA10^OjI^X zV)+ZmeHlkhJXnfPP`Ry&lc4O*E)z;xNjwW-2IP^=7iG#`pNF|8zZ+;i=#i}#<vW91 zi9v4^Es{x)lLNeQ>53aS^~(TE#WEgateB3C#WEh2EEtYr+!>BS-u@n1km%sdPaggB zP4CfP2A~G(2A=W0L%=3W<<Q9lW?z^6gt;g-@}<vrR-|g#^q^AQ&w%D3$EdKBnareV z3ecvAdH50s9UT=|#?(qldOfZT@*$p?-gh1ynx!~3QyP2V6I)+MX)jd%b;IZu%iFoP zKywru@B+Ct=9Tk92^b%Ug?L=SV!n^S6+y+MMg1ak84xf8G53x`2>1_bkPwkbgJ9Qa z1$`+kM9w5)r#=oLa#ECaEz2IYL0%FlkFQ`M;dkl?wmue+5ePk8Eyur4y)sLAq0c@_ z8sZssVK-dJVUrVi{y58J9`hii<K;<}Oy^oEbIMAS1Y<jgP*!-Xv`EArjthcGj5tvg zhexnCe`SHy18RYNF&F@U5P=B>Jq-9z>@WiU^rL@fOVcHRMN)kw0Z^m=N^j98*nzYD ziOG9Q(f5Y+_1C9S0Emb%6m%nU;Df85X7B@7BKaGS6Ap!m78nzu`EjqC7~v;CQkm`s zHP!tImYiJIMR2=`^>ct)5!*>G%Q(VQLz&_iGIm0I7fSLP>)nvm<ZnooV)FI_vn4_g z7lI`l@b-nb5Ii~T6up03*pVr*TYh~ee?k~zx^=v-FiA&akQTgcBAJ5CH`N@hPUA+x ztid33!1%qToo-hl=5mRB%@GRcD6PU{W<)gzT!UFfd=H?Ax)B#%Ulz==oA$7ZaQD!2 z8ay^cdCWO9bRBjg%^HtGZ5V#?bc`jUyasbz+IR50`BQ8+-<GxCJDC?w>N32aT;KPr zU~hfE;5YAIiBz>WY=n)n>LR8jtwUQ!;3qn0<GKlX&h|P+Y-DV3Z^WKeQ0+o{GUrq^ zsq~ZNaogtg=wH;kp3n9w>skfNoqyv<+-MwP-4o$w0LSW06Q3QSEk@D9;f6)}#-x}f z%4%-=%tw!%xO4FFumHVfF~;5F7-5XbCq<{^FlCq#&T7`hMxK?1CSU6O-M5TGNnKTV zH2p9S(oEmV4SqEh2`ls=s4t3@RapfQEv3rB4=yTN%1*O~vH(?w<qxYS+E~kqT-Br& z_VK5@2HhYf&5?dJeMUC{O8M^773LH&<9fmBcVJq>IPI*6DIMjSwIGCyo?31ym|W#q zT(i&$#5gfC8DQ?T#S7NKu^3Y&WAoMFjX;cK)B==pBe}0vZ4ddcMGSzLMT{lhql}Xc z%>Wq_ko~asd$xd?Jg+&vW#aeE?zi&|4&^Ii%fvYSv-}R%5{9z3-2MFN*}R8{8z-Dm z{W`G&4sMMu4%4;S0f#3FL|@o^dY;|q>J!=QxpU#d)OaD0Xmqp)pK=r^or#60v>^UQ z#C67Kt_S5L`ymab{Xc+1U`qN%_G4sL)P2fdawNV({pJk63<I{hpA7nd&HKW55r-(- z+_FWS+DIU!l7V}ig#hVWSdD7mtf*$5n--g3ha+tEQ7}eYZIHaMLEUv8H55x__48Mm zEElqR$F<C;HHIXc;RoiSmX=y4MO)P{xLUBMnjHh#l2e-0Uy*g>I$1B`%BoF6)bgDO zG~tqA=&{8w3NNVTWp=^tq}0?Z)i&C-B6p(!LCWd$>vMUBemL{wnHof1aaGSAC-fKU zdZiX{1Am?>bu{OuQNLl2xzKFv5b(AXZt)WsT^fGCwI(JGFe907FA>WAcy9~xBo`N{ zP&1piYVz%H3fSHz44(M-j7MBtoT<caOgS;Uv^gY3Es~-SeGxL_v>ANlC~zQ0aRZF% zXWi2$0kwhZ$(k^Qcm;lq35_pjp;CsFWuoPEeX&rLmT;Usbz(m)QIU}b4D7eXMsthW zRq|GKH%sv@Qs&Id&~N;_$pl~XqfFsaE~_y=`9N1MLn<Pe^<`_zn`T8p<Gzyyp}F(> zEaMGj=?J*4O(zP$2Kgg6alf%zbKXXRr?5u0C=V@d${Hi?^*q${cVz?iD#f+GdKw#% z`vo|T9k>q|Sk?ssGMQDDvi{aVhE&1&yi=)VQ?<mO?}c`s7npt2MzB?Ph%U1$;Fq@^ z;@49)4L<w}Jy$4O;rq3x|H=z+x?Lk4VkoOzcPW6}OJJp@!1cq{Gb7)@htSE4p>5O# zJ!R*|8Rk|TwR3#)o{O2fCCtDW!Ofxs$%&nYI!LBksciLns7-<AUqILOi!QKGv2%1w zP_L+S{P5xdH7YhV4&!y8XNK=dv0{}AE!?{H+D3t!d<WPw5vu@4@|qRiLlfs^lFwD5 zAXmuSOF9r4TOT%D_USrW%ci>>=lwQ2GH0D}GW=<3)+?;QJ-x6VJt!csU?ZuEYhB2v z*{`<x=kBfbikO<WK85#>F3T{jg6n_fqdHw1s^<u<(Xa}zN`+8-InFlO>{wKxkyL{0 z2n@kLRt7G@ar<Gx!lg^)X6jc5Eaij4iV@e-`fOIiZowmv4izJ;4MP(3t46AxlG@1d zI;s!e;yDC0dzz^$dTc7#%^@Fa7sa$3SXo1m$-_9kC({y~)^B)5e=~Kf*|KrkBPzgI z@N&v{l#YISHjn;bB50C4{(TN>vmoo|kzr||KiCK4H9KV&ZEmkTfmdG_v2HiFP@4gg z*kH+iU%GP!BeU{AX0$0XpHSIgFiTOZYa==RxLeNtCov~&agk=M<*`}R;@pvIe&zZ$ zJY1M%dzG8q+-jY9oKTe!*1w`4d@<KUyh-g{T=*4tb&^?JQhX<jR8w>zV=8P%8}T8r zxuTt!HM0>?QDyofchSb={a65N+Ohi={3Yf!Pk{Gg34T41F#$wBW1fWzT@!5vbjpyn zq%AdOgYP@&t+n|`Cwt~F(p6`DI~g`&-vmwrgMJ{-fiv!ub2u$Ofnq$ZcdL=fwBl|d z)_d8jgRiGF$rUlAS!&Mv0U#nV_{z9rp;;{_ENOUud1qr!q~r+Ww|4<=`O6I41Wazd z^MNS4fiJGDcf1eFzt*p9|A!Z3z$<WPJsDVeub!Ltz|?lX>IYTS>9~e%R^Z9>PyBP| zj!g7OK_G*7nnMQjxYP_&$(EU=GB&)yzl+E!`wh?Ls1Ayg*cLcI$HAIh+X@c5?gD-* z!k%}2f`)IcObffY=g9u~^DplNP-s2DI<z0mDGKi=I_yLQVNSH_(!$LL45J<hr49eC zKS_Nt;{D0E$KHbdjeV!H);YiPYwqnd=3L<|7Ml(A7qWzg_icNh6Fa}VW#z9`t<NR# zei;$>y;e3{)8sbMjTBY8Vv`oZn-7r*%fPlxCp-<=`IA}E>npzwBkL?ulFwIAUX1fO z<MS)UE6|Uv{Z!<lP&@4oW-}M#dZ+EN^w+RnAAn!ip0@u`<1^CzpF%Jr<8So(|E9+8 z`hUCOEF6Czf<TMi|MT_3&b*YmC0HA+2Oh0W68!e=u6Z@JFZOU|jrUS5E6Jcjy?9fK zGk<F>J=zlA(`j-qN}lnY^ZvZrI(r&8%V=Sta+~@uH=NH_Q;fWnOqGJDnTV;1rs?ye zy@mU4+J9<AiLC$HLVH-xqhwr6qF!irXZAGQXbn1tby`36_Bs~6fL~vMy!F+a!k2aK z3hJ__Q!E;-*c#lky0kMjx}fK1VsfN?)Oo(%bB+#9d_Lb7W?~{De6+vc_6}xxGQB$p z{#GUTWIx{DBsf<@FRNBm`W5m_(OzPDEh7XxN3dA@V#8u{BTHZz{>o$2>Q&>X=viaN z-*>L*!%-ll<Bagg5-}wYd$SJ&PY=}D(;=MfG7>Qt(>jYl&Bb-d2@gQXDU1dWw6oZ( zj{HZctc<iVB?omQ(2__UhL-WGRL^oQBjx#n-s;|)na0f8*ka#4;0mADkGRi!1rj{q zumuYfLpON3IX@g_OMSCUm%p6@_y2Sb9l{p>e_I^EsQKkzTbwHul!mB2^ezxC&Lbsd z=Q+EeEwB_SE6*m3=4yw*$kt%pKU_p+=NtN&QK*y#MU8~^rUgi?AzbyKLFg#tflF8w z2J`=DPr?eqR4`{p=Lav{^vw^Gby%uJoW*VT%@1F=8kiY8vscsENvGsO87EF8hFRFN zMW>Ck&9XA^O|nh8MZ~53Gu6Dgr2I44vq9MDxghQL(LhA`rQPw|(igo=LmEGNc!|_H zX^*SoN-OVpu#R+jq1ML926syJ=D^}uJ`(-w=s1hnEeyv0QoZ^EQ1vkOr0OzWAxamj zSV;zY^;1lTf#K@4t@Rb(O$9~HT50BDc;M`EO@e#^^~{a;BIC2d%iJ%cPtgADGs7{Z zF^S2H<<mUjbKeDGM<V`X+{SE{)40qN&s(I_OB<sWih()??FL$%co(p3%I^<IToehb zFOv^$2~u569SDfX8NgMEGY`|rLV!ZxltjxzY($p`7b++1VMGAgL8?l^7QRUfGX#Fn z2OJB~3Q(1sCB+A!i>f!^&o4Gs6$&(N4o<Nb(ZYkTXe*Pg-~87f;!KZ-0_z~MArUD* z)c=|(A1X|v1_6bb5C76o1`vvyROx{5IYW7{Bak9gNPw0Rfg~grm|EQwUo?Z*lfG9K z9n4s~G8m~otWF492n&RRjz1!dpI>2>hn#TN1PxZeoW2CYTEQO1vo<I;U}m@5(_dT3 zmsyrfRD><WE()O<qk9a2kP<*Z$k9nrKd>yBywfYZVu8Zn>cDRvzxuM#U&|lGlF9bO zb$ZMV9WMXu_0ttoG^#<gJS0;R4_BrZB={X*fi|_s?nW5^tCttq81)KDs<%JX)wuZ* zYC#N8Kx#n*W*!KKy;oTTb>yX>a+h}?GOo`qD6S{2<nHZ`DQ5i@s|@#!zMIT{Ly^TB zBZ*!@S7B#zp|n1(NBlFyJ&lA}KkUW@;Wk7E;UDEQugjt*u3m#8G#@PIlE5OJe{4Te zmJqT~ggT9@ug<VRjT|ZdnMop)>oTb@PZ4L7?gW`n$ZO$Y*$f|yv6&t{&-ox(WQgFy z*bbo2E7pOy4<<Y&gSIkRlbI7Lg%rSsbESwcB*C>6_%thROy`x6%Et#VPm&ShQE#f{ z1qP!b)<9&1lISqEfO&9uem`)n@~P5BMF+7GW;yd<vwDqq6qxj;#<Ihwz;|K2#QBsL z4T@$O5!OM<N{Y=VrLu=tvnMSR_dRBgaFJf2{BS~XBoSUE#SJIQq%Jds(h>K+=@u80 zUD12K^itZ16zPPDRi2Hf7pHE;LMp8wY5LZ2jVcpv=Z-7I;RvBX(dDMZK~f^`lMI^+ z>$+*WZ}a8?st8T9bEWx}`${F|k;^lbaZt7~swD|#8WiV>VMq^M1!)H#KJ1~pQ3v~i z=fZy{8WSzE*_Ss`cq6QfZJu~f2NY6o409XXvQUfME5p`aN$-4BV^R0H%j`&)t=HJt z4pU9S*$h250TvIiWlqt7G><gOf|NGN4LfC}oEKd%Vh#WJD~s-kd1kHj<8fT9o}JMA z%(-G^7jTM%(v|(esx&JDHU&7Js8#x=bC2hh_841%It?{VzsYspGtW{^(LUvSf{HuO zE?A)NYu-PbJI)b%7xsa@cy<zK?`7PS#Vs`>gp;!;S#1D$To}M&x1by?7LaI;^f3_A zYhoRETB_ymA_}-b7TbZw0PQs8tn5!wZ{6cpl4xU)aK0MPi-yS76&pbAqLE0-3(0Oa zTf%kcWaiCS!smJ`>K}~&s>5~(d&L3h91#_?qDU78DSk(6NsCI0i{7w(UEU=W&2-{L zEzP)7iN~ah)$>6hJ$g)R<&WumW7;BQ6+1!Ji22{o#cz#5XqK7@pj0<u((-CbAg;yq z;t&M}46D6U>zr#b#I0k!)BH%VSrfXXKWGV+@v(FQNdrs)>ni1dy$|HP)^;SDu?q9v zh$=wf*~jOj;^~*3B1_TAvM2VE4yU7$6u^Cg@inGhK6#(Sn>-piJoP1Mvb)#21B5T6 z5mG!Zv!R8S?Fv%4PgD3U`FlLhy;(+<3wm*GSSI`my{b9v8ZaY}DzwF9%XUL=c~iN* z8cw(hAC3FuX;axTE+0q~+Bd3)%)Zk^kWeZr>TcoN#A)3VG-+g4%jqatjywDaL}SVC zWRz6^D)I_p%JH%-I@~Nvs$`B}tAFc_d-DDNx+ika;fO`Vi@@wXZ}&R9C1{p}&L zQr2!~5%u02W#IsSbHU(_7TCTm5(Q~CP&`CM%||?3#tA~jVGLV#1tOG^{#lcUWOm8n z+k;WIqNND3z4AAJ4H+J6FpbXJqY%hUfPo0eQ_(jw$Nu#dKVO(z=cqJPB+Mm$P$#Y8 z``EV%vXc)_l&=I-@birtH(Ww77jJI&ulCwXo`FU~8|AC){^KXeuJF7_olRnfGnXF; zP@JB|nvL~Z{Rhjn=x!`ehq}qorytU9Q@Bm-1Qoqg<(e%<yPiLzxu5`gmpZ;8b|Q=! zg&GLBOrle9n~55Fvie94M`I#Ppag{^AM_du)B=a~o%dx*RW?patAHTLnRwj})(qk) zx(Uk3+-ny;z1#xQ_p%{azREji#p+`0+b9dLj~RlRQ-F&rF?RLd7}>}(<)J#;Qr!)% zi6D&BuPzaNuApZjJe$Ur`L3*2DYaAxVA+Lw)ZUJsi#6h!ly4A&x}($9?XlG4INR5! z<sACae<e`4v8!0UykVO69Y|kWY1MQqLc<PC0U^)7X!>vTLRQpF(|R>yy87SPEz>Jy zmWRKBF(u<EA`^?GWepBaYHuiirP7+BRNl&VZD9P|@!$$@`|3bAPPnZUXUX&Q8LPmk zFQR}Tu?%EsdK-dEt1jm7&7cdkj!BGET&THA<MLH^s@W++q<N>o-P?0B<kS<1w3MKz z>SiLkr9b9JES)T}m|ZO2Tg|zhcm!!W%$vL~i@>*<E4TVHKQS*B-nHcafnHS&=7FTs zjB&P`I5{rxC&+y0T-!d%!KyjZ6!sADcg0``%I+mLsN<D7GoF$e9Ze{zy~VM6Nm4_C z?y|bs%hY5m5w0iNDGn)IItK*Rx5W=-^W0Tmz+1$y>ip~H@Goa0?PE_L2zy>SuaB4~ z;5d&uEnLoo)n8e%yt1yz05aY$wKFL`jl=2MW+q%D&uw*H7z|M7O=jVB%W*|M;@`-_ z5x>XDvy-`R+=8nwxgJ|)=-tZmxGS0ZO9Ipk#@E6bvE5Yo4CV<U{V3olO-UULA&b{5 z*^oESd+|Gyw-)(Yo&i#CiVUbsvS;YzALNwhqqTqY15ae@8Bofe!L!vn@R+1B@wC_8 zM~beuZ45DpzH?6!4%im`LmvU#nRe*NDg)b$4ELFe6VV*fp%8T}En3AGj-|l`YmLw) z=&L=xoc|^gQ<Yq$0bPie4g&UMLvGUscEC60%=+QIF&y*u*m^^kmqH;4UoWU11~yXb z)sWTIy_VM0P}X%}wVMh^<sNqmvAc{ly=r@1VM4EMMSs=Al0hh2U4@AAQT6(fr8t); zI7=ORQ&iqMcIJ?zw+jze@~vUVMqYr(j^M!xg$zW)Z;Cw>bKG%tGI@bE#iU&dXJg9> z(gIP<4NNFVQ)$(+v30`R&uD9M5USw#opXj2oF%6@xXQP(au3V2YG>3R1Q+vcb=_=J z3WCqw2sonr@H<pU=@=#`m{AFu9!2m4>CiiG%g!Ux=b@p+5iX>?g~8#v2HrCttIC|i zD%QEg%aC?ge)I8P{#|doAZdLH++ZAS^uRcTT-uE$v(_=+{H_x_X3OV<Qt!Y3Tfub= z16z0@(vr$&?Sf#<_rtOMxVj+yD0qk-1F7c7<38}_4z+dgktuDp2;rUpAmGL#QXGBa zg&K}m{!bm&?}qRHch!cCp7DRzVO?oy)L^&7dGq$<>pb5zW?X*g+X09t!=OW;N<SK- zM?@_<*N4`J!4iKwyi`y|c%`Kgjg9`rMfX3MbW9l1uPg8Vi@L_l%cAwLBv|qz^IBmc z&lug7HBzRLu4g);m;Q0Q^%3G@w*7N-ay*jr{XpyUdeC94`rY*Q^}_poHv{i8^zmAQ z(^35vhS|vL{jnr?p1#9Xc-(_GKU>^3<F)gI0pD5Eb2_(`9$YP9kYLX_b<sGvxV`zT z&?8x<5lrf2m9oGE?>6;>cY|Agq7SSz!3>KceuIlEgXhI%^>v3N6;ndwR@ol?wcO(f zJ6fJy6<WzzT3QKN@gtC7$Csf@Bd4%%f4%p)_5k<yH(0WQO}T-4dh1OQapZgUa~El= z$<6TW_(u>oqXw@#$TRYxHu547-?41%^9$$jp$E6!**BMDRBz?;i{R;suEZ?=COr}V z;-Hh}t2aJU)FI{FPBn!z%8Iq-i|Z&e9Wp1x`f|D2W`0w^x<v0xe0ak<sItUq7|VfE zs%>Cg6=}*P=H$Iibmr8|tfO0^P2)FVvhLYbFPpQGuF2qfp|g;NIR-@-rHYs@t}uLc zB)n9N`b)kv{7^msMJaB3B)wAX)<9TUioOXWO*P@Om8A0aj$U4QL2_OVU2Q>g0fk+S zzMk}LOK@m3eLp-7r4NOO(tS?X(2)5iuGoBC<|y{?+eP?VhWWmQaQoC<t61-Ho<qR9 z9W{QjWbuhe{BfP;0LY5Vh4M%2FKdkhFEfU__vJ{UD0<LHQ&xzbxCMArq|S2YJR9xT zCKt_BJ>OCcf*gdCw3T+Uw-m)5btFfWo2IcC+gJVcR%{BO&6E}EZk18i9rQXDSmm6Z zDrRkBGGXEmlblDczHo#VF5j-0l;mmn^3J+HX5&hXtA!~U3}Mt(e~+VJ&-B5(0X3}E z@HtM19p)Tvt6vclRU1|b7^Q96F;~qN`2?yYh6C<lid`CmGTHL+;<MLvJDhRUhQ!up zpCa|*_9`4*&I41f+b7F@mXTH;w5fw<$8opD94`5YZ?7Z_aE~uX<rUmNzu}BqFaP%3 zXRvu-V8^+@C7vd98g$+`++JGt6AVpo6oe#1N5jUkt0_VFj&M>_9{Ze!Mgbo?4@Raj zfM8!V3(l(9ztD+TXEk{N#sih%ntXD4JnwLYGFI8(pKI^|p_6O@w7X<YY%OIvdd(>q zj=C6#cgX959=g_;1kkDUZ)G<gwz(nVyea+aF=VH=Lhl)#0Hw;V5R8i#bhNQaaD<cQ zt)EOSg6hZ2Gj5i2oqB2^Aamx)s0yqyUjDrNUhqU<P%OhUH@N!>cUP<D6eLUVH@L&j z#9Huv^6<l@A(qb)tdbanNStT%9kz-1Jj`K*v${mdW*EDv!bpsl{SepE2L1zzV7NUo zo&E2SHbOuK@NwN@3ZI|XdEVu-Xd2uFMBXwqoAgI^h0NgNk4sF#)*|oaY3x}k=?Zgc zugATh-`_K~DAQXyPNjGeqF?A*=P5RL-LAk@P(`5Z=;<xIeB(>tH>S0-22wo&b1<rd zHao04-&ht$G+nOm*H<g>H9On6ceIWSvF)0BT9+JWd8;C(Er40DHSH<~_m8Qw?2GE) zU4SnkJtro^fj$e#_}8eIN4l0@Fh6vC&3st{&3w*QmIo3{LqDzT1|n{GGPO_(Odrtr ziDm#=2b!jAz{EaJEF+NS@aqVFf$$B2@gO1}u3YG%Q~hf8=mj#4%HB9<Mm~yl23LCV zeEjpihB0Oigg8YVOtl;>GDOe;3pkL$!z_f@?T`d<b!|uP&Jf2lUL(m;Uml60=6F;* zOG-?*q<W&+ze%XqSr>P1MLzf}1|&X&Ptdq0YM6R9+Kkk<T`%MqPGNt7j`Z%6%SaO7 z^5MB_h3+1hM82J(h)(Ka0}-D%?2jePlr;9cFSic8<nd}$p{5OOQunT122!zBquiC< z_hX+T*D$n8BNt5eIpqWzNbQ}imh}|<3?oYKeOt>SK&GKRvCto`E`)Hzfmj6(Ht)^| zmC9zQFPS5+oA*GT`Dc8ey2A3Mi6@D}^uJcl8c`7kAn=~F(hxo@YGo$D^-rLGNMWKv zAm|UsBJU1_tDm@K;Z!{)n~CDe2VV&<+$D)Erx>o(UXDUcu}f*mQ<AtkUM#uh0caCY z2(cMonQn`H-f_vFvB)X!JcQDs>27RYcF~oS1)5+qBT<p&I~ao6{R1L>VzFB>Z~rgG zzA3n~VEa0@ZQHhOn-kmSB$?R$#kOtRwryLJd~@r2y!YY%a;o~&uGPCwpX#dKy?U*~ z=#WVx(Mzc`Api3o@}~HDmNNFab+f8yxca@>w7lq*bC<XX#k+Co)H2m6>fWI7U{TeK zyxWkpU;U=hlL;i*dtg8{oOfBeZB@UL*9X22rc#jY3|+5fL1YTdc@T60ljEsRKP=Sg z09IGT^d>S%i(Fe$hcDtKQ5b~C`5TMRY)&}Jp>aj%LNGAMHRbn<8te7Kv|n32o-w(A zFlSUl-tbeHvE!!5NvD!f*y>G8hvQ4P3~g@*5B3rCgD56SqAPOE!m>YzckDo;0a}4j zG4eG_`|wYsx>^mH7syCcl!Cwkj1}Hq3Vt9hY*mrh+>e}1-Hg+rQJ5rlZl==X1tLLV zt6P)gomqi=7Qyo?=7K?rCV)qfHux#NYoE4xHc)WV59WSK!J>Q8Di=ZGk~P&M(^Y55 zlcdu>r*JNqas>|^Z}9@7xGpk1aI>Xe>UTh`E;A^7IYm4);>J^`Dv-boqOP;kDFpeY z7C@i#X1B|W1BqhvDmD?LMpz)RVQtW4AtYwHkb!=6;hbxykEQO3bUg(v6$bU+;s#C9 zO+K+S%Oc{(-$17ICTx3{4Q_?XpBL=i@?WNL{0m7;5Mc8iL$R?_>AZp~rJa0TB~!a( z9>FJ5U9N;7?>=TrH-J#(v*<dO;G8VvlZrjE0cQGwsmJgmgaWO)i5kgIOhs5x-a7RA z_&z9tEZ&VLT14seK%nHG;vnfoJh~GMsiGTdGnU$4%ENZ4;j2r)had;l9K&CEUSNVv zg8^!3oWkzGLK4`Ots@PR!RjoySS-;{((;Q3X)1q#2_hfT&XA}zbTn`z=Wyfx_=@&I z%85qfOM~M04_dEK+M%Dxm=Pe^ST%hoTj|6buZ1%Mo=h#PK}&ET6V<*~m`J`Ed+&;L zKFM;ou^GLA9)LAgJo_6)x&v?el{0xxmUzC@?Xs=NbHFDiaFBJ5tR%FD(5?A5p#Ns- zz$jMUIDe};25lN^PQQ)jETDE-vIu;!!v5KZLcz5r7_x&>7HT$vsRA#kH;sFUPNN40 zEK3(q=u4{9TK}}IFMG;2GFU2)S~_?5`~e`JyCv!dX?_$no$|E;V@31XQ}#8&G*-YP z+HLR@XfI;BoH*8wAwbEqsftaCv7BK9nTKFJWXhz%Y*OvT0x2SsiyKYxz^^B-6DhX9 zFd$1SBin}Yq8eB4FabiPMlx9@ztNzX>tnHsWCPQ`FQDhv#6!oGYQ>FZR*-%~^r>Dr ztWIw$D9dGU2CntQqpeU#l3aKCCNxuME@7MdPqW0e2%Ov{h53XdlcwtrAqs!FPeG47 z@Klc=`z5`TE2e|Y3%B7j#ih-4Vw>qIc5>=}+E9gr$bFWI8-B2wbGOY4$$AE1v{S=< zEbE~~qB|>5SJ{>XFN1UwmymbRii>pyW9@bDe65QWMKT2LTFT7WX2FDhkt~)*ZIi8T zRrl@k-J32lnxC<^iJ2@LR?}xt;tWg7KdK%C$5W-ejiu^+r>7P7h@S^xD+qAA6>q5V zSnM<X#VAO6U_e|>tye&4cA+S*BO7}remp!0E*hCGWGKr^Nx)`ll)1_1u;rt-W`V2P zY>QwD9*tqbZ3tl=zQddW65QY^v7e@0q27dPX1j6^)3WOj2Gv^VuJ$~2zawgaRgO@X zo&5&M5nvS<3}Q1NfEC$g=WH;Q7)>q8$?&^RUV}8l;ifu-?JRW|QxWekc6w-BI;vbf zd3<b~f^0S=h+?V%mW{u9>ntFpHx}kYSb-cjxmf*zX*56i8-<CQs+u3U%Q_oYKj${V zFm?hL*Ctu8UgfQa>KT)wIJ=^mHYqy;0yx%;gSnKG!TS*scGexvU7#Ea(orO9;c!Rs z)&V+c6*psW4S8!CH4I<~9Wo+*<vqhqReEf(+|lyeY_x^4>#^RQOCfJy2)Eg1w$M5w z0^$W`t2N-2ic)A0VTPr$HR-9EB=K!zlkikjC7&`!k&jSb1%(2tv+w7F(LEc|3sDF^ z_PxKY&0zd~`Ny39`}5`S_%NxNbMSs}tq3*r9i45T8Xt5;2c&B92Tafr9fNArnHmyd zL}j7unj+Ymnxlv?zR8|iJtk{Gh8l_}HgKRzkaO4ldO<OG>}t?MzJv{}<!z3Ee1jnv zinihOw%!nA6T!1p>HS4<dKL;@u<Ki1oVkVnFP+mNs??eX5h!oogPBy?XLw9&Jkx8H z=8{ju@AD#GI<jPnS)zP*PhgabPZ;P)Ll|hn=gho1&Wg6t5;j|uG-Qqq;9*wBwZ;mX zcLF*G;kD-HO<+-Gh1CG!R<k}O9S(3GFt}wqL7>pVu`c+&x*#99fAkq#*0{f9Yxt4V zM28sc8K=JR@W#2g@NW`qWs13Z!tc*$@Gq=!Ct&apB6QvEz(-b^!rBgIC3MyJo?Q@- z!*K$C{$%r#t?m&Cj`t1u9;XdNJ1T8-fk75m!{dR0DFcFhs2q`~2L3WX&w6+&N?0Y@ zuZiF9aC5e%Ei5ZD#YzR*Z3+m5?w9Mv6TdK~zZxM;6wux@7>I^093!)+8Mll%Zi~P^ zhCIFF{xbA>0J*Ac(LtLp-Zn&^`U27_JK^r~!p4A5R55Nq4oZZ9okP-Xw;kSvg6DLA zVq>$&--$sY`h#jLEDZ}2{KXYCSdxNWJM8Gw|C=&;XJC%iH+;<7HCFMCSkMid&{`Do zP062oAnX{x>RVQ=@uuVf4=n+vasaFc9{9a<O>~#m>;ojTqz@XwL?T16IY>){jH}4$ z{s2W539>J48UF<$mCQkpXG`Q1^|xu7^=ed`EAnT;(H4HdYQ%qxN{W0Z*n+!FscskA zu(j?94;Kgis>HA_MC$iEDrK9a)~sWGPiue3!<U_!`a;c^qE2-}?nDDbSCiqgBu6>r z*==wXE|fO}LjCrJ=_!Qczv&4SbxI=PN_L3t%Wt#5wIyd>?g+8Gh5u`H#qQnzaDx8S zYV#B9#miR_8TMRTDEgx8309FWJ?)X2Q;AX<M79k1t`)2`w`>7|jQGM>LfpDmyjutd z$NQIZsnoJ6_yz5VGm&E`hcH&6h>`!)Ym<OS4YiuK-ggtn>Stl2TKl=M$|6TuDzE_$ zt>M|x9O;a4lLQGL^rINtFb4$&RI3D;I=OC5c4&sBw&NZ;MWBj4H#H>YFmjg+HImb3 z`X50B)g~)=gvYPPHzb;Aav$}@y|G?MG79YG&iBL;A+a!H5H}~7IS(?^rN{y8*I5)5 zc6{tgNKa5>Gz$NFfHf&0gk+`xjkXw{#bhY-&?Lg*sv_0a9vZe*AWJO0KF<}WrN|W| zye<Y46?#s9cQQH^t<sVaKa?uO*Tg#f(RYg369dQACGHw9V>gU$AK{XTGz`Gt*lD4X z163I{?*th4TM|qe0xdyK%|HpoH86#063JK8W%6kBT~r#zEn3+AeUdB+7DhUOnjUn3 zt<Y3_J;)o$BG9%j-y<E|65Nc~?PrWDe@<+7y4xPLuSu!_tNXqLG^b)f${zulk!dTf zvR45~P8f!UAwE<61-y`X==uybq9sTY#n)Uq3w9_l8TlbFjFGozJ`D_Qp6?kn7v#a% zB|IjI1r0q(NX!cl+-YH-#1i_!cGAp@z9G<;3Xo5NXB#8QggOi}c?Rp@dEex`6+|&@ zB_24fU@P>IYO59ujc=0}gD}C9h>*ep$4Bc=4;prM6|78&ktH&mP%m!IK*xIwlbSXW z_49H9%`9jF@jDz*I}Uv@{qK_&ikt`wy>*ce;{vLwSxUARo8gx=xd4^DT0XLwXk=_p z{^;qHVZF?O04;awPP(4%myPo{6UHy#C|r42A;8{%-wnm4rgIn%%^TyhOe<HZdC^ zEFv{~dMaZCX~iTg`P>W3`dMz+Agp4GM<UCeTYs+9aiO&wBrOjO44q86yZ(DuVNSR~ z^ap-rT93#ri9!m3m^MHj&ZUS0Dxnuw-1~8j{a$`!hb|U3Hm@V{1*2Ic3;9sP29l7P z23Y<<t2V*Zl2nPA#>)vlpIe<uSV97tDj`v`k>UeWl}B1E-AsdB)@$MlO-#{a2uYO9 z&rlaqZJMZuEw2H*Sb&MG$FEQhTCv^U`raxiEAR*(RIi7A9V@v}*QO}ZCUp*_9vLIb z5HB+7pwfx%l_N-(h~L=ioTTO&(<O1KsM^0&8y?(Bfs>?x#4;tE5GDDE44EptIT(Bl zoWzO*eSTakf0zwCuY;dv)e=Y!v+SKDWKzYkDq7qm{>G8i<5x(-6~hragK+PJX(T5a zSrHQcRJX2pvbHMjU6j%!{QwqUTLFXVZ{RG9#?X{KdNtY1`cceNj6NR;{R+z7`5Y|< z9qM5_ofemKcj5~?f2fub@cP9V(vVw<Hn9v{m+aH-XpG9`sEQzH%m=1voC>yO`Dk(Y zz$#zN-DFBu)Q9qew921JeTQzy+YNcw`@rpC4c!X})PIT`V5R!qt_^J!Bz^9WzL7(& z2VY6d*>Ff@A{NKyH!Yk&+Z|8;R&M+6I>dRB0V4F_N#hBDLfhZ4-js4F-U<Cd*E|d0 zc-?Q+8=|qur|?gAc?%5%c<T?FMQcN}eC~=-&$p&J<*4()$Td*l^VoW()hm_a+m)m- zSXr35$B-lk&N*W9(IZD^FX)BGJ8d@IpbbH0sAPjTPYAtuRyYmfP!%Aq^}XK|Z5w>E zDPc!dYB*4$>4-pCBK%1<!vjj~Rtb-Ek+t>7%krp3n|$^kh;BnG)=mJu#(d&*)@ScE z;b!s#u*`-+<2B8rWIc?(Vhxk<tm4+7Er|dsz0Ie^$VX<Sb_0&T@kjTG+@KOQ*XRi9 zHD>qxYz&uCi6x3d$hon;#(^DW6#7HLq=<8FsaH|tq}G<W&*ZxFw3S#})Fq3h3&Z2; z>c}3FerDSHP~hjYM0l082Mf2&@e>p-qDBYgI>Ua|^+G_x)+itsd+b80wDBxDn0pe7 zzy}B-7)pRLk(RNRC9H-3=#!msfiVsz&r=`3dMZ1I$e3usHgrSBBU#!Xo!Lob11bvl zf!K)PGc~4qOk&_z0wf$*PgW0)<vWCPW@s2CJ<C0}KHhSvfU*1W25t@@1H<$;J6H$O znY!n*SWplZPlA2-vXpBY#mMx-0{Vn_*fzyqMKwpi-aRc?-nX3cr7i{z1wGLxS1EQ5 z*oIZ->i-zj`_3nz`OF@WF*dN8XQ2sxE)^U9Mbo3nS~R-u^mZ4NKF}<Z?cfi6{57wR z!L26Pk4W`1($h&0W>m~q+8~{LeW1as*%RMysomRb5h#?Rg~H=-?EClprRyvpjiE-v zxbKw3iEfjVisMR+gh4~K-K5$0Z6a(X@ex%E|1KGbaAE4?%;)L!fFv6%;jUm4TE0#) zc8kqZ8hKm0p{{=pT&Xu4-0W`5SzFW}z{m=zMKvW=1~Ct+-UU8RJg=hrN;oPpUEZGn zU#4E1WIF|1Suk1Stb9ExI}QqdfRCdmGL0Ppd!knuM9D0Lr`W9Da<Q?*JctC(4?qbo zp*cQaLL&wKWpDKBwQjJs?yG`d{fiiQt=BywL5^pMKhlvwE|)25In(5#$c?K%6xS1g zH7R+0bD03tuQR$+J8SQ;3&dzEegmqD##k!QAa_!qPF?av^c*NQs!?3oswNzm_)!Np z;&fqB*=P>^;~TjY#-*)(VWOjbCP4H&@3L{6x&(O{mb4UBLoDOx=u!t+=8sMb_09pP z)M}KLdE{VNEpDTkX|#6IL4q-O#ZEj62h9B#Aq)|XP~AhU2-=_XL$WxfDK9{Po9d)q z=^zaKQO*Gs&aR$L$LQ5C_<3|D>b7we7ul;Pn--ve4C*o~J~IXy?%qHF`J)|=Ac`=A z@5s!S!pt!XT~3b)D=TuPiaQUr@5@~E7upQ7^J=_Q#!oAcY>1|4Cndi4vyZ%T|Ay-4 z<!dPni%i<DEz?E!0@TXzz;G%{U&b#_W@UAqRh6&<wx?ltcqf#N(Px-2eje%f5n18> zKg$+2T*yYZ_~5NyswWh!&IfUPtj~dsKVrWlND7suC-$u`3Qy(c8&wEtv@!pgq&~6Q z_!LT^Tc<R~lp~tcmJ0AaxB>YWL9~Lz%_{g=Rz1sH6k34xIT?GnMFKh%{eW<m)=M6j zMhq@f-emT(j<X$P?eflmkL(w`xqc9z!NcFLRGC(Tz!a1jwK5Zq1b`m8@WR=jp<ReF zGNCT6h`gsiB3<fqd`{-^W&*P)iyS5crOW_l!GG*PKk>p*V-9)b;iX%W_z-6UEve76 z5lms%=oLk08#lUA5AUkxhr24SYp9{25v6yN59=INt5KC3S%vZtRM>vP@t_9a2AC8n z@s5S2umz?9@1B$qhR{sM0xd^?Da$MHNV<<vOd>auc$t|fX11LW#3sdSPlV)#M~@yG zorwnU5qxx=FZ!}ak!$UJ8QOBmu`>CP!C33rMaf5vqCCvlr}k+d*S8=)-|$8wT<ul4 zl0nxU{MwU2opMsd%%=j+I1*?eoqJ9tMUj(1jjHvIh2+#kwla(0ylaDD{tYu(-u#nl zQy4+41vCEpGYv017+HV_5~bB71aB1h4w@UmeE0q(y`fX~^cgVgw6qYG6z1fQc97G_ zh7cchMI3!j_nIbxaKuL#dhOSfFMer6tu@V}>0q;AOnb5d-+r|ZH0W=MFa*<yzvy3p zC$-LDikv(tjWk(p7@c9hIgH-81~F`QN>j=~H^LjfU9E!aJ}}BrFTV$U+LQrd+N|u5 zzfsEJsMB1`!G?bn^@^3Z7u?5_-nbomS)Qr7rFor4TaL&rW|sL;r*Ae~D<I>S>}R(y z23aKFxVPEJRjTYTQLP0>bnQau{&2aUYIY>Rfs~}$j&mQUi%buTH{!2rFFGqxHa|DK zC9zIEKL0dPU*?RPGa<0%bEa?~LJvxL;+i?ey(4{5B{1PfRCZgl=r3zD<)<~(U#&gn zmt1vbuR1$a^8Ck{umRR9^K)*<J~8W%)tNA(t~2pdic8~Lq!y)f<Aj4Qc5QKBZ)=2( zVO!gFp3^zC`jEU;iOzh=?(Bs*>xSgW%bL(0<nebBsfvJ|9kF`s0LG0oH+X_G!g$-) z`>BA;_Jl>^7gvR@urN>`y?t4qA2pQsG}kkiTFuj(HW>(^L3_cdvSmaYUbm@R5%jYg zkTTv?@kHtxE`4Ywt!@>A+bZmQtijja;@|{k^3kCsX;x~acxWR{UFC+hW3BJ|6s@7R zUQ6I*eJX?i;dZt1432;_;x?@z9o+p-?*sTM|6T{u)OFBckTT@q<%_}F!>sOGkX=BV zOvFs>D=S4peivrX&@=-l#@{Vi!=^iM0O7nJkgIlp9-a%MZ}|)D1T^9603hw@oh*dW zYhYQt&A2|<b_dpwjgP>_{w9Rcpzw(r*3dDXpk`a!@o}m9ZrCN{bpUf5_^Tj<5&IPM zAW?FUg|$ts$CJ^wpJ2piKguEb^B)!!<iK?RSJ<7w8;Q6zd7~4f@4HwCBRAt(Z^*>E zv&cjD-LdPd8K2bNs{UKzxypPrZ`y4LW3Ju4?8x*~8xQVkw*N>7qbAFLva`r}f5yh> zxk4rT*Dw^{pJecHX7q&~1<$|m|9!G5XtO^l(E9Jq{k7)5)C3mxF=>3)i+}ygz6<lo z;LX{YM`j)SYw{n0D%-z+a=ks66QBLbuQ<AYVUGX8{=xnQrX%!gTXp&e74z@Qv}5*c z`8un6yZ`Gf{r|ViXi*Rp+V`ub4hI1GB&P;%Dl_jpgdc8<zWGVGMR#VolkezgJ-!s< zafJhbWSwNtJyX!+J7dv%Htz>_-N=DcYk|*+)Tj`~KPi2#uFQ<P$nhnmqh<%!gaGI^ z=gCPcdN_}uO24Ac3KNykwk34Ux&sRJE%>FcCsMzqe@Cn-da;qT6bM+-SCezyHh(}k zw`L+I4d^o?rb-OO835rL%Ys;Sc)Vf1L08Y1;Fp?T!Y{Sryv5qt6+nlL^g9V6T#j*c z%jrrRxW9XM_z4~A2etWBaD(|BA^G=FTHNJnXUKP-hcsE&ulc>7+qPdy)D;ZeT$fm6 zFf^v#yByl_1}RkoG$wuL2#o|#YPuxo1sNv%K1EG9Z(`ME!B+BpYlrKUiSje6966&L zaa*zD^uDss6Y2EshmPafV0v)nepYV(u9$a`ABU@<jFB%q5Ey1yy_!#6Puxce{^g@C zB^KB6zT~3VU~m#*zfl>Iww){Et<cvXDAsC-L)#!Pa&^F=TGZ`&=8^3gjb&&#wqXNx zWAo4daert1W{}NvQRu0sg2~PL_I5X{%7MqNxoMf4dt0!jzyXY1j`x#v`KRO|C~em9 z=2)pHDU{x>vCLIgvJ$dRz3yGOZTb&q>$_QS=4$vAUe$IeN7uCLQQ~RFRMt>#O<aL< zdad(?R|1?6#^$a(gJI`VByf^;96~|$pL9E?Q*MZ8P4>$Nhr<~nmGF7K9W62hW<kO& zt`Sxr=nN$<t~avd-R1rAg=;NSag2~pg<yBR%?}=aM@)yK{4ZVr3+sRJ0@yj3{%>+% z#d^|l<gE!ky@m+@ZjB6Gd(cAQ@@14?ePQY6nR|n6wv!x0gD-d|x1UidrWB9rDZW(Y ztVwVXf9fUgLe5L6<plXazHv{;gU@rH1_-`C!$w;T341>TY8ROaZFDA|o)uM(kezs9 zxrdwZR0U45WMdasb4v+-<BK2=(@_UE?BBY)bzS8ekn8}^e}nHH@yBVCe6J|>etu+* z0&4pXcl#_hPqA9M^zI_G82x<=23wRDx`s?5RH+|TR_GOL1qHuNKHhJCIR8G){`~#S z{dwR?ITS42{U>$Y`*nREM_CkU^l?q9@Y`>QWt6@&OH?6mY4&dvpTi`waA=zx^Yo>A z)u%+!?n&2)UyKpsKS4$*r%f3im7lwhvyo;Xo-uv|e3{xfz-B&U>zrZE{*!ZO62Si4 zefwKBEkJ{_MYO>%Z?HkK>Nm)gyC@~qY~8t&m)}-gw_#r48g_lGG5`8zW2YcZ!CG#q zpn87#;sD6d&ku0bTjproUYr^2r*jpu9A@d_<85E=Z_nWNfO(QPCb^%Va4!a3Jxy=U zVW{Rh+tD0Y7naZxq(_xlzsO0v7E%Wr87H0lTa;ACV7_5Hh}{~q*`Y%hfxgT8H71kH zRd#Tx5rXqB){$d+6SJzO**QGs5d5`21d<TJcCZ0;GqMv-n<n9lvSG?$w9HCTDq&Z$ zVQNwIe&t%tXDEFLl^DAKf@+L?075l^Nzgh<z2y6Gv{vz<Y?O8!tCIz}X`D-(rtElZ zJpV*(+`s1tJ~3}FuZa5_$S>Kkn=Rd}4wK$v(Sy$)udw<z<uzPchq+-%n#qZ;B$c%l z6wQ+}6NAC}{#bfw!ojXvNvO?+8&w#W&=6YgYc@pZ6eh~k!nsoVtIeKJsMO%Ux_~y( z2?R&CNEfbDkZt{krv_2~7rRNHzACQKrhbT;c<{QnL|7rrDH6|75Hc5SiaFPi0JE|m zk-I(yS~B}>j6U5H_%U#xFfRPG=8;5<AjlO%*)`2EZs<j25IDn)`{KR{Ama!mR_+LX z2UvRH-39+E*p}V|&w-CC=uE~hvvpJf^0YkkOu>nSI@yng010yOs-dbx01~VoP-vJi z?vgk#A06Djp)ke2p3DRf6fS~#ioj)vg>dKmW&0PMhQ#h3;0jFBj)G7F-9uj1_GEzw zdiI!51OpnNJ7LnsX@{HXeB_8IW=I((dybkCQu|w-tGLO(?wLcQ2SLQO{tUA_SZzZS z3D}u|D_y0#<K>-)%UWV6Fr4E14=7k;64u9=_1^>+?oHqkfn*WSIga+o?8s@;D~-xs zQu?mhJV4PCNdHN~6q0Mj$3?SU@5{vXltpv;S3u?3xR%;8=CYpalmvz_+Bk)4?mP)U z1QWdiSBp?8yY4k4ye@NhhkeFKx*5C#wUFEJ-%k8s3gveK5d#u1jWf>qH(MIc-rh|t z2>!eM5k|KhiNCP>YJkx8S(am3Z*_Hq12VAbgRWud{pl6{1NXNq(h&Cf9|Mb@+sR~V zbMTB>DXw<3oWB91_r}zIwzyR7QsHa05BmFXH&1@~?{BBk_u}U)?q30iOi)-DXU(9w zM5cEnj-eP#Lb)Lgq)0+XeZU}FMu=!ge0?vfZ+V7av>`}o*oTyRDoiB65HSZrhq@W9 zhxB12VS>tc_tiC{mmdHJGCJzr#oTUsPgz>$x`&uv@Z^vc$+rPd;-md`oC7F0oJHYQ zx4`-XiAQLg57McppEcAFF$tSey`cJF+gk$bcYDvT+McipJSBf#b1I87uCfjSpiyHn z@4S)B0OPn|G>(BxUbMS6DU;A~F84Ms%`x{fF`B41C=z5>aNw3d2w|}q9P(g|Yw-~Q z$Ub?<Y=ZBo`%;oqLmpI5sqXm+l!RCbImBGD^UAPtkv#YmgvlcX!T6#&cpUua1~eLh zXY9tsi;;OJ9*S`#RjwSS(KTpSFECwDqxTBOcMd}gj7l7JVXNo^uZm7CEuvK*viO>q zYY?yl6=?ysitWd1)LS9?TQfkrLSPa$p`4&D{^{pavbF`@hjLW@<{TvWk6HPz|B7Hi zf^PZ|Ye`sZ9NekwU`#|9U4w?Pm%QW9yG{t?CH*qM2gKe^?`~^I%EaivR}m@FbrRn9 zbXp0+E@SoqQXo@GVp>meD|x?HYf~S}apKUTD*jYhdC?n_;V6=dftlnX{z6~{2GiqU zR*Aa=&cz`hSx`%is6e?ulA4XbfyziK`0cSVE}0lrIWm+U))Zu$8KYP^;sZKgJH@&r zcgM8>dY+d#7(k1SGGg)1+<5jW8!y{zR!((Xmm~{EeD#tjcP>t{ZpUVoez>>)t%C!j z^6nkhvX9OINBiZ5O^rv%-_Evf1-|~d-oc-wiFTzmn3l<C3k3T%)|hykg)pYHwkUAg z6s7Y~JAIv9qr()}t|im;grbphV#c*5kTtdGx4Ct0DOyuXIwV%^%*2@OHmNSTvmF$# zuA&`*F7<k~&VV>R!U<Dj_5>r{0$myu<5CQ>9<Qv-Vao69SuojQ={rK%`N%sw3I298 z?A5-%!gPapb5e-agB*!H4?QWG$L0K*UP-oOj{v3Pa(od>PC{hj=OzP3o4<g?^>D&R zwQbUzY-H8yF~e+PR0|SNGfLXXU3W_an(|8ARz;6pPek|-A~zXYR@q%@bf*Cx)pv#5 zx2-2!TGtcKMdgE*1|5wyioy!}+0sH3O9smE*xMOA^AOkJ6i)!tFG$P=!VzD!cn|9S zZeLAYu?a@?a;Su9Hy1{%zVvNSIxJdI=hr8pDI>ScTSKW|>RM^bohpCgSS*spN@&!G zD|KoiXW!Z^?2*L$-jkq7D>El`+p=M5F?&wv3C*_&`H^k>&R@*nh@Wt%Nc6?C4T~$q zX^H}9C~!LO1iUG*a8{yy;aSEqE5YK*xmZ|fGFcszKB30Y@ctR&NXe&AceIe1(gZI< zOX{Nlcf2?61--~rwh{+ol_REY;+AeiQ&5{e+gg_5xFDPd>!B83XDKKFjQOS!o!tVm ztC}d|6f`;Js&xRIVzR6RwkVb*okUk+P>d70{>IUMTTJ#hJr&NCNMs`JY3|M!>GgZL z*%bZKJO1AV%+<K;@YK^vO}v)Ox2tBB<^$(fwBl+H>2Y$y<&-owWj4h71}5PS(FBQc zOkkfX`jUrthqglvUCh7Jf9bx7&h+)0r=D5BWSot;Xj$Qyjgh9-H(?I6b062JP0Ro+ zMUS|oaS3uUR)9}3@NAQ3S?um3Ct$GIju3blP`BQTz%eI#xMprx{2!OZEZTOU%#b(r zsjVb-9>@)IGEC7D6BI+0dqhy^$4f4>|J~pii^ng++TJtvtaEwA1K_W3;in(s>b-TP z<FeW9A;)BKUfz3ztU=8p7Zr}|gfdj&E~z~9oUg<2>dv3m)1foPgF(JnoZS|YvD~o& zBx;c8$U633{Vz&@&VYMX!TF7!%}7I=JOfdktC;xvEhqxO;t@oa&c(4cQU-RXX(?J- z%Y^-~l|A_`7;?#EZVHs}Iiq02mD&9p4-~8eHSDrrW{k&Y<oJo)wEtR~d+dJBEe@2F zZ>d&4igN-BjW-QZ3zi3Nvs#HnL87Qh(d%mvzdMQWpAH3)X^NnqfCMXM6c&F?mu7p& zm-dbEII=r03+Ey0Pg%MG<ONteSZ1f{m}%Rw_{BzoMot7)ftHl6^EI&4#`DUQWLOg9 z{rFPqtybm$@)pLRjo5UD{sINeaM+vSAzJ2P+Zh{Dijq+K65JT;2A4k4P?k2@RQVs` zZdcr(F&UUod@#N(Ry$!QDN2$y>pA>J7-<yI3YUHc<0FEyFq6KBy|}xx3ot0`@j}u| zdH<w_X&bzH62Tphn2mBGv%yME8mY5g88IB)X+IVC{rB_@4nRr}H(_%3bAoCNdbKRq zf_10)T0wbgqslg1JW(zRQv(`^th@X({?yf%_oU@gjTbH6unn71d!7hCu1d~FQY=JI zq>5IdCsCvuR<d;~dS-eCg%`lYu{`Cefb`~cQAvYx_+vWNpR=lR7lNtiEx#sKp!8oX z`oVQq;;uvC2<BW1bndyIHa^-i2q1+u0K4GH>2}c~Lr}?C1)b&;dM$5sS?o0XTt{Zs zN>PhWS3jmnD9iH9yvp`e7whQCiz@e^Nik$l5V>I?lC4XQZ)KPJ>%Mr&h^EW>O1dt& z(tWDyxgI>u7g4INCsy$(M#ILKP|15sntx6d4TEdoE{=Q1gEbgbHOir;C9CsIo9(&r ze$PMS5iWj>v|{GGBv_oIOHsreC3D4Onk&p7=Y~;+5`<yL#MH<^tiL9lsy&`JOZ_sJ z8TYxtvXki%b*qwSn$(CYynq>R**(7RygOARGwPkY2nAUmnBZt5XV-W&+9~U^b_rxd zcyxF;F%w0=*tJo#n-tT<{7you08Y)Y#w3}GJ+8*OpkOOyyqU#WlvZB>%LGNh9VHQc zI?yW~v=fy`-~Q<C5t;tjl;eDyMZ<vXjRj7hX$il%jEOwc)8(4M)?0TO%v2N|$EQcf z>Xrkb-os2XR%Yqiq07sjofSCemvcwignM+5!MZ%N+9nJNu`*|rF$hh|lAa%1TmDX- zofth^$S~mx*h9bgJaA$YE%c7^Z=ns&nHPxGod90mz~|pJ*^<+Ad6|2;GQ)a)O&iN8 zKN5<5vO7ffeyKG#?lSsYJ>ta{h7X0pGSk{J^SNJ0%47%Y4fT9CZ#Qy{xz(WX6IR-x z0?(Nz9%;RLke`8Lra_EoFr?L^!=5S`;mzB;+FK|IdF`>39<sw}b5RR(h7EgjCM)V? zEQ<P#4V0h-stOQT&WnliUL8hC2tuGW-h$n0^@bc9-6pwVf>XA>g#UA}M$f}*3QwQ> zIeIT#Vrw|x?Da<x*R3m;@61komsrMzaD<Xrw<RC^1%faYCnj_YvCetBZJ%uatlY>2 z=su=V1eET%a@P?NmLdPqzacLk!C&qSstxa(SM`^rVy-F!^R8nP`Ri^R>Vof5VSB9B z`w>X0tO7_(L$%KbA9a+!KG|AqOwAcwQ35^n`orsCY^>SRV?s85-TE4}*dpDAgVST) z^TGI@&w_jw`;!oRMod#imsNH|;`*zZyytQdfA9u*nNGs$*_YElyPoQ;(J+kcN)($y zd^csZSd89d=;9kW$PonES_9bEE6Lt^hadmNf)Y0Ca$pPTU2AaBTpUQ1oh%exOVtr! z@+Rv((F~(oK<Cg(5FEc6h*jO<zInTu8^Uq?PB5sD-^Ku#N-qV<KRYK5I$N2xDVS!_ zA`AQ)&&gGZoa^Z%zPy?ILeg+NI3BVTkq2HgJi}EI7dX_)Hm$)@_pGM&ahOdIV{-{w z4%QL6;SEQcmAae3AG3bShNS5VoP~7N0Xed#b~GA%l~zTD82DMMe*HGM--js9KFLSx zP6Zh$6xN-Z*AxwCY)?^uax!c0Mlnm~j8{*YCs)j?*Lw8*;^8zL@{_L!_Hy>h<zUmp zq$X)~YEF-Oqg~!%S1fWpKEL5{aC+$#F)ZE#_Tgpm{MLD*NG_(RdUs{^Z9&CN|9OY@ zs`x`%AlBkkO3z;Ca7*G5epIbmRt*PkW2|1$1xMk>2EuEo&%8q5$hi=tr(%CBOezK{ zAw6QOq?5xO2^lD7#{^<OEKI$s{$m^(&)D+^Cqz)0tQ(qrkwx$W-fjZt{WtS@ct3#~ z?!9j!JoDrT2gd^%16*%?`0A$(Cm_>uC%w1fV-o2CX-xghmBNbHuH%Oe!R$sTx9E`J zBG{qUjx`q7=wWz3JcN~Wg7_8-PV-)E8)SQpW0nHYimCjXiG#NVAwmrFX~dGp@XYXd zJR$HZw$m;O>e&Q316$>#TZJNiyvf#R`#=b~q||x$YtiwPg!?lKfsq;Aj8OSZ)6w~( zEjU9F36tpiYeRk2U-F&VZTzT=59GnF`KvG*E`7By5FWw<-eC|;D)SC8cCP4F#}@^x z>A4neaK+1L?mRF(&ZxEsuD;Ilp7R7NH|d<vAQH(+D~fSKSAF6OOj@v7sR{MSdL^YT z_apE8(#B}h+4US}C+Tgc=iDkUoA`ZvX~PXCa3sxZ-{K)V;j6!CFLTjMX-eK{&HEA? z!Io^F1}i(HigxZPyGs;L)~DS`8WLX%56aoo`moy{A|DnU_(fv02Kkre7CK0<4Y!5; zAYoc6p<bzbf2Ku}U_T6Nk+wlm=sNvFTdWo{!%ZEEV8=f9Q$@2aNTvj;uQ&O-WWXQO z%9u3INlV#}ptf@RmrGP`ODqXH4JqqzL~1uvC_72aJ?JOx!I%kS%B?+swZwL;dWRtG zhhIuqcU{cHo-ddUtf36%u?!3^Cw5oLeXE1Ya6MIHgiay0=fpop*s-B->WrCS64d6} zAD?+`WRqH?eHKUg%~^f<Mv?dyHz3-ow0bkeS{ynqg4o)%YZ9uIQPCaQh4(rcZw}cN z77WSfot{DRD};Q0Cxt7W4e9`PC0(q2gPrxgX3l4-a~dq}T|%9MrltdJq;KFoOVwiB z+8|6HDtSz<rhk!n^b5ge?@M(43i;;MI~`@W#Hyiqjp5xLQ#;_`DJgggOs+W&o$!c1 zG+sTn$B<CmOmGta+i(YX=6zBlbACN|tPv1<95dWI`9gm;V5-iy^)+-=qQg^<>Be1G z0j%V1=+oGW9^z<K)H-%ZPt<2Xj*o0S{hsExq8x!#69-szy4s~Vo#1aJEAe|C=ia}! zR*;;rO3uUgCOhh)2i`4JNL{Kd*>Gr}6E`oiFP0Y+sQy~E-=%-vXzNrtXsn1_)mB@c z+}<6@HuC-n(t#a-{_=(N$LU|bT;E;x2kr+XSC%!c2);Oz>8tB>Jg}uNXkcfsq$=CJ zyO$s9hB+sBO|fY3O0<1#JmJ+Pn!V*zH#4ndFkDw)q;rHGZ_z&L0IJ?=45#Foj%%R7 z7~XSu&X;{*qU~E_b3>9&T6kU}7p3wKB&kpE>8oZp@UODiy36ntlTjW=AOI$pow%*k zYUPECWI7!DZ`Z>Ov53~0Aoo=Z6R1|69wv9^I-LGyz}bVKe;CInRp)`I$BgW=cR&6j zv8GM`#hv-<fwWmfooR5Pi+P6A=(*7*iy9S0Ov;P7L}jD0yyWB7G@g7<HIvsL#f6b= zP>S!Yld-CDZu+4Dv$EJuK*43;KfPtq$hy?TMkUvMo}cU_U|m1A^Xw8tLV_GZ*dZKU zVR4E+!ywd<SEaja7V8?to9aHfH=}%=p|`e7!euX>L0eKnzog+7L-V}}W9KJHH^ZMx zawC?@<?k_~f|pTt=cqCW|K%R@aOJX1eOgn9s~_l_W>e+^Z|bgdiU>MX5^K8ctRrZx zVdqF>TV*&6LQ@iXsXPd9t8d?35~q1&n?pa_y7gQjuvL!^t3D5YuI#tO&6YdNG^N>U zC3h(jRTh(E`b~p?)5r>1Z?eF{Qm7-^-A>1uda3vuOH^0J#MNUH2TLA`nx<|dnwL)n zv20`qS97CnRyHHnYxhT7Qg{xU)?-y?^xSZVF<$V0Ris(D|EnU+`hV5?tJWQlC2K|Q zUe!Dr9+h!2gfj`4x0DC~BD9^ApX;}`VPy)UBmDaGuV)^ws!FxR5~<`(GG)S=j0)kl z|MYj+1aOx2^5<-wv}O$&xH#F#TFsU(wRQV;{I&mldhBhv{r!G9EBN)+VD|cX?Xc_r zbEw$*+nE1*v(aUfQEZOj`|EhR^E!^R_wV7!;*AX)a|agF{^AFTapz5vi-3c`Rq@LL z&3vT~T|N4(&PLa!{#|p)+~CKZv+l_>7{&xGBCIT9>*r$mYw6N$?Y--7@5IlB=dN3x z1CF}pDg87(POUaQY~5TT7lFBm37f5|uCA?|S-+lsl6qE?s3DE|*$$r?n#484O^?BX zZ2}fu&Yw_zd&BLXP`{%LotxpovoCk=Z-|%o*UU{+xamQJ?U&okIG>6hH1Ad~MBUlu z*0i-mW_B(@mkYZ`FOTL?9g#cT{@ro2RsAjBZKGE5W+{%IQ3T!BZe#InS!jfudA@UA zV}mMWUX#+6&NE*}_$^Ta{veTR1hk19(Whpw)7H;{`2kw&xv7PLD?cOalT-<W8guuE zy@BPaTR$@!^S7S5W@kAz3*s8O-Pve-=dRhTYQ7{lf*?IFgZB*bb|`1F_v02Q=VMRg zqk%h;u@FO~Eb#U-zY{CvPgP#B&Ywx6S4HG^8)gUFY#D^{;*E9xGh!|Pini-6X*BCF z!eMEDT9?b4;U<Vs+kjgJEU>6OBR&}tDGGdldBAe_ud-YE;jN%qC<4ytW&+>GdcgJ0 zODuQ!&={BxO>uwjuQ4PjywVh)8YUHE1nin1b~j2yoBS4vCz3aMYRKpm{=QnI5+wUR z-tX{OJ+n>=PidiF<41vZ4qE$Bk9-IF0l-GFZ+}v~ud#13m{MP0ES{kG5`B08sujq% zCPk)7u<XV~0bm1auiT4Lqe|!XND%#Md)ee{iP$eN=v5p6{SaJ`o&m5R7|}qe-n7Mk z3^wr7s0dCAScw;gkyvKHyc58-Rb^w$l!L-db%FS!k@UpEGmijfDnnkRWdE4^5Yetw zke;BHM&8f?YqU*QG?mO4Ov<nk(3DPnEn7fpMZT*pa6NnRT<X)yqNXXyicDD6)phVB z+AkoF#Po+_SYRnoi$v1P{GjDP{b}Q(;B)J!5wGp|HBvW$2RTSt4M1mT+#=w86l<VW zO%}ihCS^BBe%JY-UHxP#mvu&Cz1PUbRP&^T0r)M+PD(%*U$2vPIqbDL<pRg1*q-hE z5YX4M#fLL=18K%Cbqx&-P~FNE!Cy9J2}JP91u3cV8PjwSVxd_^GV7#fJO~24xn|&y z85&b?GrUt@(|psvd$(4!A%C+jTlh}hQb%;2_zIlU1d966DmG4-e`DMWE>F^wb7#LT zilcm8D@tMHQ1)f0?8aq%2v9EP{_gU7A;w6fLP93`xaZYsH{Xv%$lU8f_QX?t+8kBf zT>UMSs(1f*GtEiZ+tK~=hRgJmB9C&{;BkbBm?_3(QxYC9y}<j*(8}o%H?5ja70B#0 z>jFf|0Qkuv4*Ewx)SqkzCd0SFsKW{z1<t)*TU$4w6cG6FcVQ&{QyP$f7c2;p4tK)( zEfw>g_&UUygQ_vSbVlZ<6SCf<qTnt74U0slZ#CW)LevjcknIec=XUP0@i@)j#PWhV zQ_{_(W0h<QZD7Wb9pIIpB%d{@m&$L+N}ec~eM#SKG9&mIKY(7_PYf+y2CvKSlG)pL zfjA&OA#?mO1ZA5S#7|h>hPc-Y$pi0c;r(WW5W&ks{FJ)0Ks}nCA9tu$B%T74tuxD| z(es<-RT!b;v9li4YQXd256n8JVEq(kOnp`a<UvM}%UQw>p5CFUD5R?~fsx;34z_#f za#8yJra3#pIZ&Q|TT8VOZ48}sY6gEoiFT;%z2=I4gKK_&s=rnaB!BWV7Pdyk3Z+j2 znUv0LgiHM-7U`wio%nZg;+%RU)`6D^fs@R4TMscW>3QPN3ceKJ$y_RcKZ7od-gpk5 zHbzjOJRfB`q*;z-=zUzk#8jWwSnhDt-`wj&TWfgiA8C7q7^M;4nR=Tq*NT?#0Ca7+ zu{+bWYk&66DMPVz#vxt^b>tH?ILA#BZq+bkK9N-AK60+0|1i2>E~<daMr}UPHu^5C zDbOQ2EgaYxCl%s6$!RG*l|FQqf8O&`@E7%ic~PpL5cLEaIBHv}tyS#5-|mniF$WkT zu1;&&E-g`+nbNpqygRNLYzT#H2}=tL&Ojt#+jqmpQDP!DTD`o_&Xfa`c%H;kryVfI zs%&P7b9%g;KB*2O_Z;7615CtmbOoHU=8kdy2VwjL+V45cMs$GrLHDIg(?pCW{0e<} zWKbeiK+EwLfT+4|Fp{=%ijHW)i+Y%-B!`PwU9rq9UOGHocaChlZj&;oR#ZVOp>L0j zzl&J(x1wZ<$wVe{j#~%?rtyPGEH|twdRb9(;C|9BGSVzk51BGY?!U_#^8w|T>N*_W zsT7?wx7?q>54I7w#oVLqbn)@N+)CwDgj`9i*lPy2_cj~PhDv++$?yy9Ad6d{vC&BC zZ&jlSTzERrC}j%X@vV)oE+Wh#fLPgZuh*O}H6ctF&teF61!dEeaTEDQR{?2l_r2vK zx+AJo2&NG5Y||a>5gd%P31c4_kCg;sobxDm3$Cyg-jL=o>Aiyz)KZQC0g4A!*+nEe zi<5xLa}d(lDYH&(Nh1e<j_s05R^mP}sKmUaLlI}hOB$+22(D}m7xcci#a3!-Y>@+3 znO22?!)bk=oHR8g`;JRuVCY*Zw5xFEKq1EF!+S6WW*R7UNKOh|{wcm6_LB}ld0AZS z680>@$}CiB_BscE$u|3Bkxn%=rWnhaBN0@ao6`E?l_hTOT+1jTONo43_uh$&f+zQg z4q5fdY=uvSQIu{!U~<rgw!Do^WYCtZcYQ+oSz11WE;}H199N<4Ozmj&iBl4WH(!fN z`uZnT^cc&-^<Bp^LyTBO76tt>li`8=TWTijOZY%9JkeJIdBRsxzMKvrk~8Pxb5|+2 zAh4ZNF9AMcq}5?VY9*~#nF|S1RvSpbE7WM?-qegvr-DtujEN`guz@7*JoZ!shgAT~ zv;y7lIQmlbBEBH3iivRL1M1Z`?aZcs=rN%TB)(9KDBDK1lHBuCIk0{VJ&pPaAF}yr z@FAmIV);;qerSZ_rNuQKjoNsg$AXL%hE~spJOlY7bLwtlPUdn=X(>hGjBWLxyNcmh zNb=-<>=YfSG<HW>?8hZ|evx`EN}ZJ5MXdDwoEizlQ=qdaWNX}$OX|*>#W|h!ydopY z9pfsy@JRDz(RIUGLf@tv7t~%}j_W+t&(fpvV|&eo0n9Y#LX}2|MKyDBk9miQv1J2A zF(Dz_qvk|Wh&@{zl`Q2}^!`^fs%T&F2~7>PW3P(5OW}7dTJStNK_71<F3c1Ka|3P8 z`TfY@l5cgaD+B<n(d7~Ea@z?I3PRHBcfl^QkIp-a4tdY@M*+PO$<AqGT<t9ecpMA6 z8#0OA3*hLz5aY}fCYW#YQL-d;{fEys*>nmx_hCsm-6w+-o~@G{X0;r_zQ^75-U&Eg zio%cYZ#@`l58TI}-g~i^(({ci_BsY_nG;e{e4jY5c^-wQ&pf{M#v8L#8x@=ggzMj) zyL+KY+AmuhTv-f{X!l3-K5f&Izg9R`go}^RUdTGNAm620DX%zu2u`uGMONPSgp%Ns z7P8(fJg%jouXQlD!kJ5d1*4?c&+rI1_n*SF?cpdtqD8~pY|fqcb+HPUF{DLECEdot zP5|3H4XLAUgr%CX0Nvw7_1I*(D(!*df=?Gje^5`R=u1qdu___wTn(k)>tRRF&(r2d z3bl~{Vb&N{tFz-NGm0xztpbt!QKq%7DRha&F*v1r&TNjN=Bny)loyLF(B9_vVyXHS zqm^z~NB?!^7BV(hp}u4d$irpr+2>-=YFnB&l~W2{a2O%Jp49COve1Sr45vrlSy8k! zo%b0MpQH?~!ANZIKLXpRS?H#pRi2&erfNvILw70q6Gv!c$n^II`1*-%_D;?d$BtRV zdVl+4`Ah7ke=RC0>kCn{)u&{03jTGADxAh1t)@|U%hJT$$#FTUfQ0;yXh34AH5ICP zERa*V$M;9T%^7@`JiKIfzdGb*Tyt-kb0Vi|2eE^H^-n+aQO636y0*i39<{+q4m#r& zeRrJb9b7xwUGech!(z|Z@=>DD!jy&f=4`y09}@;r>~zNFIXl%bEKNI2^iJLil>svL z^hY@v-QXN@a58HD!ITQ6{O>#?C~(0FZ?hEl$*QEv$5H}BULfr91vDAGuzOrcS)B5T zwa@%qqRMlfAsFzIUnvZ3wr*ijL#n6i&`>~dR1{Z>&#K-m3{qk+l@hgAIJt5KQ5vx& zKLJ#-6U|w5XetcVTxFX*dZXpyHV1uHyt55axqZvWRjkDiv=(YKYw8uMQ4|HF#ZC?0 z`l2c(0&==lE|(gym*Uh8BVF9<jRF`Rb0hW{Q_-}HYpD<UX^wpOs~uB=DqD0Y#yFG3 z+@-v%X2ovh!#H!|m6EIbJkJo#WccchR&T7}VDzl_`6))rOG)wUh{u?-er^2o28X`e zjDYec&f2sIqhec?B&SP9m{Rv@seIVSHZk|2`gYee1$K?NZiV7MH{A9i1T`*ZhSxUO z7;=f}FtLAriVbN_x!jB;wQF7|lgFbN9;4Il$<;=~vQ=F+?VXMVrawU8$Rt6hGiXe{ z^0!%V3Jam_IIC8W6IOQA$g8H+-a|!G1UVP4TGDY#Kntq#rGVe|9=E^}`3)}@Em@s| zO!7IxR*I>)1AMbv*?c7tNS3H=<IBq*tL68RS*qy0&m*DXg?8@)Ysq0Kg|MN$2P0N7 z1iI%L&BpHEBZ&Sm0;}`50?(&u${Ks^l(XAamR4w<$JBXmO<zEX?x}|_-A5r&XGPO$ z?5ACsD{!44jqSQ<b+G?Vxx=-#p7nr@2Fk(3Q+*_2Q;3<ys(uzPBc+=mB}4n>Gqra) zOWN7aJ9jVF)8jnsRPqJ0w6{tpXss<Xs@p=zD3>PF%fV<&arz4s%Gz)rsy~pSv$P3V zn+yrQZhd<3%Gz{rIaJnA<|AFV3>npqy()q!Y^&zY5}fBMcpsJ|N4!{6WRTK*n|Upw zPe>dJNvfCn9BNxAf$S{8VDP<Q|B2U~koB7vjOfFxJNyJn?DI7&POoKGseUehVLk4A z^S%*Gc~|`XzxMKM|Gk%IX5wP|Kk0fFYsfp`bHa7q{>N-m{hc_{82KnZj~yv5tfdE= zyNNL(2?Sx`X|8v7o@WGgn~zioadrp2`N)!sO#HY-seJ?LcR7yoJ0B*2fq(agfu6(e zPf@p63`2LyrAJ5{z8*<MofcY5#YXbvvwpjmM3I=O$P!*J;AvsxF}r?;#~;4s^VuYh z+5hkR<)!9k+-l#w;N4r9T+It1A78i@;ixB<M3Ob$NO7}ub!Y10_KSY|=aWbK->=Wo zS3-s1x3GuN%}qqY*4~`F$nvi)r+1e_jdgW3X>hsiWAJMG{=C5Ix}}@>FvW{*>(%*m z30k?7;O)%dBfw(nOEp5`X*97gkKN~R^{4plr)t_u6y>_=8M}Rp5^z-$XW$et$^;x; zZ~v)xo}@vJNK$=P%cKt@q*OFNL@L%~Q*C=^R>k<*=fjO2oB9=1-r)~=(VKN=pup5- z-5K1xlh@NX&WCTK^8aJ(9HImZwq{+nZQHhO+qP}nwyU~qtIM`++g88&XK$^02X}IE zc4nC?Ga~jEwg_0l;VM7t8rIG?zO|@k&7hAM8*rq?RRtN<!xT2DJWE{=>2arGVuD(0 z)GnKwa~1cMfHlq>J$D;j2vo**Q*B21okUDTu~9SqLcnMJ;uJjX$UIM0MOVR*lX(cF z)ye|YB_M9{1!~QUPGT(sxp2spsJD5BH36?6)Wmsw>PXB--;DLl@t;vN#(5V!$eE1h zI@HOLV=(W{q(saIA|^mN5i%b84x~)SzQZXCev0ABuf4v5_3a($>_U$igCkd?O`tN% zRAP$RQE^hjSykD%2M>%~DWw>Wis5Gp>42gGLuMf}HN|5zOlJ0kaLB4-$d8OLi^jnX zU9V)q2=rFiBxW(W_3f;Nb_<hy3R-wL6HK%<#nqjIpi8?QhCUb<2Y2C~MJ&`s0S@R% za^=O5b1Vw`Xm1l#RyHBZ1!iKdNP_Qk8E8Z7(JNqIgtEZPwz$A%8w^9R4GMb+PY?}s z#l%Qf6|sGZW&9lRh!!vguxO$hb_P}-!O&KMvA8H&*FkRkA=<znoMu?eS>SiiR2)RC zNG?F4fwO7>mjgWXwSWMtfM`D`$e1Gd;GA6j2yZG+5E4SD;lq77U!bj=#pg27vpR(2 z9LPxG1s$wUIB(XdI|-mu+r*l<Je2z{jDSV5gekCn0#VpAq$qI}))F{6(68Re9E_&r zhMiZcpp}q-#mY+Mix5xU#iNpaW%KvB0fE29k0;r25`r_ed9!04t&bk?oUWs!gNp{v zskB$ToDZ9)Ef2uRu!HhoWDy~;3YZIK9L$~+V5=B&a5F7$eyi*1$MeNAQIZLVt-^-Q z>-O;^=?Nfjgc=E`XcD0i_+xFzlzBu`nW2n;A#9NbAruH8?I7aej0@jeXOB}TkXDZd zU@fAW4|VDDd-Jibxlh%qG{?%bXY?o6!*fYypz{Y)DXS@UPfBLA=eSJGYovaU6SUvw z{qzg{pHNGd|8^3wGX00D$inn{JpC_(;bHB`INUbG?cKUF*|fH4_H{vq08(i%7?XVw z?m=kt19bq**2b~hQ<a7&*%#{(;{H~`scSnnO`1F}_3ZP}aT)!cn6H+0rsP~B7w5R~ z6v`0Ju$1qox1X2v^Y6NUxqe@F+jackUmT*ZtLOT=|K1+y+jj5xe)5YM7s0a>=zs2y zr?bv)*}1<@%?53n+;^~V8TP(C28}z0!HjKks<V~#l*U=~^L!sjHI)ZUrfqVjIopS0 z(c{|;b@=-k9wi0^77nldxSssDKEI<%KhNcE1{c0N50RMzs|~LNj@tVKjwRMSLODNS zZOuB0%u0^$-S}R70t1b;2f*TDZEk08zJ6JW{IdKkBH8PrV(kAw@yhD#b^-7i!;#WW z0J*qrYkNWY{`oRH1I*DlSd{+TuFe;3rJVmeu4TY`^5?BjVno5bI^K{nIkss$dUl+X zoAe8gENl2}`~<UIw$NkX?F!vsn-0_dh?CTu0CRZ3(>vyI{WpKAVs;qoS{mSWXMCSQ zXdaBYfRo$Sp<!J1DKIZU4OmWYN$|plu&gXCuU6^hWH}I6nYZ&Pp(cOlOJH4+adMT( zk>s<B)cSD0qs+D-bEbpIxxllq?CfN4B=K-)`}@7`8w=bEOa%U$QEz_aaKkG**pPpa z;P7u2^|cJ^JsZkCp#=k7mx>XH-wqDC4^;LNa^93~gcKZm@4e7jI&v7fC!KR7sI6cO z(|sH)U&zVOX>Jz4JBW<l!{kH<3E`GNAfBBEW*!SUW^m9{k7$KC0o#jKXgOTzOfoaQ z(L-B`;%NvK0!ulRyp(1JEhCaEzkv+Zx|n#p4;zw56-n_d-9q{WfeuGBU}`Pqlth-X z-_PJMgWl-R5yM>aS|C2cG7h0qVBWAn_cNvtjD+xkjSQ(E81Yh&>%1_B#7ZHqjEszM zP7~|;dlK_B`Uz<ujDSOhb>>m^YXQ;J8=`@+;jRFF1z|Z*^m~E4a@a%!sCiPMs!t5w zN&3lSllw~0GUhB)MN@{*5NIC9DU1p#ucm_`tqi**e1K`g9=YBja08qcXmu!O86@)z z9UY$<s8DMQ4WfDh0+bCPJ&xg^(LWAg@NY3~H?jz?sxgR}V^AzeWg&%r76&}3#w^sF z2-iJ|HRwaQ*vxtk-hr<f(yLUwTtdgCV>GX=Bsg+@fUc1AghC_X5xpi&Bh}$cVg>{X z4V@9XG|Vh_NVK=?iK{{nWC650Z%Pg*i+PSOzwYPakG4-uc}h$?o*e-4g;z>psW5TF zFn41DUQ3esS!hmaj*&zWC98VmgkFHtYV!Ghwjl_|!S`p9msf8+!JtldFQ89UuMe-R zkKOn-$0aF!{!2{UZ(paw72?bMCvIHMdc0i;Wq%W1U*J#qS<@qxTLmBAJuv@&&|9I- z=o&c}pBJjT-fbVtU7P0igavbveS#S~-vBAm_;wae3c$(XN{@h97u%ob*}Z}(P(PvJ z_Pf5W-j6q!TK|j?Jy@JWye7Lux3nqPX;20Rx5I->2Tx1N@o&(2HM0*XsqNcu_OEZr z!L@LrQdVx<bImBiO(*asMug(e^O(mZ;H10S;2HPo=;3$fT*VDY;~<;1Zz+1!g)+}e zE(rYSa1jB5nFifZdX)fbjW_qcc)3cCS{M#m7(ibL_V5~F&H<p$x%?V-qM69JOi7q) z7mN)tiCxYJdFQ9_^7a6EsdWv?9LAu-Bj6m$ooF7lpcpO<eUMSkLArp9FZW=f+jQ4s zLcU$=0W76M{FmndPez*c=If51+L;=}*G6d+bpYk>=%{MXFy1kB?eB*Rz!c(0#2G;B z1Rj$e6Kp-Ru2sWzs-d#wn-QM7$+iibiGkQm{x~{2r=OE8&MpwLEbwB%1~8ys;B?}} zTe(|`1s!Djov7}(fgdAL0*D|fJNbd-G8B)3gO<S(zn8dqmnBzvqwauh8D=24MlTEy zgR~QeRzs@o%<Y`XE`U5_?<mt%=isnF_VVZX9Dm(c0B`75ll!Mxc)+2>WI~gog*e}7 z`GFTP>F5TO$p8#9$fmxUh9*ilJBas%NR2b>`0>MLK*YB?_3TUC4ZZ434vj{%A?yv~ zPfeByJ}fQCsmA^m@z@GeU%Gb=YRoyt7?+xaUyxB3CZndM|29a13>#&%+2UojBwxmJ z=z@?s;5j8fq37MWWlf*6IqI>?*&u}u$S9<W9>^MrW$TN>Uzzn2iZuig68=Jym_5VV zpwwN(O_h^G#;sbbbUDFdpe^<8^!YMudDCWh@D4G0K4ofM*LryYG*Vw5&mT~@GC|24 z+9siJl;mMX<w0;H*n*nPRP~{9rdi~H$}GpJHY?S~y&{&9**MbmR*I~e2-;wH0FgEe z%xtHqA3tCvS%eXVSC;uQRj9vhw3p#AX!qnyuq@V%qE0GMRQK?N;TbPu6zBj6xbyho zKML2@i9Qowm|gm~bo~W|U?CCR8~i$#mL2XGfPs#`VOnqgiUJ&rideXJg)GNc#GMY} zaz^h=B0LA3CEP&yt+6e32>SqWPc8cwwt41Q_>O?bR=A&wXk?yK<@yKt0BpuqIXgi- z7S>v%YhQS8dA$kT2_t6eKfrWQW#}HIy)-qDgPD5`LhsewfI#L`iQCL;Ouu-S<R%o6 z<<;lfFxxIUALEbmvBa4X;~^ff!n}1)Z+X`LHoJK3#@STbnCEA9N%`|$3hQ{3C?(uj z?i7fb+KhY8s{G}iwO&9C7jnh-nK=TzTU>U#%<aGO6btt{9pYVJan*Ck)GhQ{_PJ(z ztVo{|gXt0Ks@g~OBp`Qw%$%dFB2%>EH$GKm^C?K6BT!jv(sgfr42Lf#=z+<zJ3c`; zRGC?idd^KD7C!fBrG?;*46ZJ$zYtL^fMOh^Bj&FF6gpL~JLnC1+a##q3MHLh5pItQ zhI&&QSD0{S=M?pa$cJy1_&fPq+zu#rM0X$3tnBPVm5*fvnQVl93@b!Eevbuvp<@oG zL7psR7%tu+>_M_Ee5tynBCVOrs9DIr_{{6}!sccCNA+2zO+SV_r9&XlLsaxoyuXtu zoQIy`dW7iW;>;G2awIXOY8Y4elOl~6<tSTNhBj76j&hPm63fN@)O&0q_^WO0ZBg89 z`gFcL_?Ik(M7yFAm04Ep`1w{CrdNFm3TXq+LA|^sN?(B%>rE<Uic1ku^q7_*VXQBS zWf>+d-(@vP7LXIr6{C|Ubp;Z&ZLm3m%w2F48krlQLrg_weQ`(A&_sMtjKmGX<j7>j zSNkW_3z=Yapoo6vJbHmgBC&`_XgNQ<#1n$<NMJBjBN^LYC~A}_fYnn-5k_<VC=sf5 zd}lhcBZP%BYIts=%hul|%p89Y@5pXrf1+RQ92-vU$&-6YK5bYK5oy^SrG$?zx+(W0 zR5NFrMO-sy1am=ucI-$bg^6eR*}duCdPh#F<-drSxbS13mu!Vz28La^M-zh`9W+O% zpM;p1xQW9UxX5)^3re$HVhK0UmibZ<7K0d^zH;gkK;ysOC=6&$>U2trY(-&8Q%Gd9 zeBf3I=Byw`F$yWKh{Wtmi8X@$0bF7zA4}A(H)9G_-b8VQF&N0p>421(nl`vWExNt4 zn!Npn>Bv|x<w}kDp*Si^aaTp>cwVVmmL~%P2|V_n%LOvXy(mKu+<&psa;*c1n^<2( zaJm`ysrUU0FBA?d!``r7;?~MZql*QGla&GK8&g$RLV!fcj+7iJC=5xV7@DnRZ50D- zIbjQHt3oW8>|7V?<QB;|TDJ-ti%U!A>lTk8d==yckt|=?^5t%mq!RQ8{oxR`ow9{o zb~a0=h(E0@(N3ZaG!_A~QtATvVg-ugoJUj-S?ChoMSdb5>Y)EproMKyhn=9>t#huu zk~8Q6HU`?wdpMAp>xiOw%R_Vi;?{03oXb^<Qq6yvX05p#r9AUP<mpw~n89K(kYbdw zts$WC_|Q8(W>0AOZjbtZu0}hNeynL7A1Wjj6@n%6w4t(HRirU%3eQmocpttg&<N)v zPWl{gD+RRxq-sGKgqAJS_$0xC2dc0FX3IYg+84&5ju6%5r1te+1RqGtNia`XByADq z45ZrsuJ@8$tTf1Kv&q@fEEc{Lj!-*z$|hTMT%6@t15iVjw8*)e&i7pdJp*xzPOF~T zTK7NFc}QVIX7PyGSv>4Tn^^Gi35bNFa@EX{x88~*Oz^u%z#{N!!sUQ#&#Il_71Kk8 zu>vkyHWiu&PP)PZ=FFwAL#|tKTM@O_vLAF_%6N)-qJ5h(*Y}h%{Uu{>M#wBLHiS@E zQ0|F*W#;lhlp^FRsif^Jp83E=Bk7xSiA&Vxq9{LT$-l;A(hW`}H$nO!g*;;3G;DxB ziz=q3%|&*nWE6&6@2n-O@BhcudN}Y0%<-&<2~^juOZU3vyQMV1K0GbGICDn2H}=O? zsqJRJo?%+aIlg69occ05S>3m8%Ycum%|ov>IsFf$Y+Q!`Z&gonl`i5>5_S0r{W?)w zWA>Si^OeX@A#;chPc4-WqtXQ%w%COC#ZX-fE?Y3rTJj83ZP1b{D@*w;v9+4IH5qbk zb=)BftU9hXt)vyCFs;Z%6jSdKu;~gNG_|{iY3xO1Plu#BaZV<)mVG*;rc>q1DD$w4 z=Im8Po4@w}j^$FU6{mzRudRi)viBy)Utww4kjvdP(dd&kqNDYhe1fhtjU{xOX|cja zU6+f!WOXV|R?XeZZebta0<IqW-3k<mTkO;3i)^V1G;Pb*r@S<OmX0XvB!TA12f(w2 zW=|3HWuwBYmQw;L1EF=x26I~%OSIstsl{&V9HbpwPjCzWyngaBTRz?OI%J60%(Idq zd2hMwdHb%cSXzsqkv77oP?SG`6|FL`<6CF2eFxfq;CBzBQ|j)`uJz5dAx?q%DL#tl zUw!93BUH$^_^+W@p0w*N!%<KC`&ggQehvc0QVCVZSEmggA^L{*9T4(Y+s^341Z!{J zqC&Vq&(Xd>+A~~<ax;Dwj#wCJb)XZpv;B06)W5Be`BDY@{(jI_>bH0-q>HZe>HRkS z^@tzlrEX8vv{#bis;bni7oys{SijH)C=uXELm5@n+1PF}H^PAJ9#{KTb(%lNwg3qK zaCt6FcN+iO;QEs*K>nAT8o#xQwZ?7B-=#b4#$UXU;zzM3e;5>{)KSTruKXRlhJ%>9 z?2_>INe9G6og<Dx8`8qUbsr;AT0}~8@;koS!V*%cuOZb!To7Dbboua1yRao!wGwg} ze|{r~jR*mBL##e6ZwO^FTP3T6*^;zYSdN!4n1bpMy0ImvfLt&ZJxkdD2MX=eN@lvG zJeuHhm5ey93!kHKnLUOVa-CN2@7Y7(T))IIKuR4A9-;5~ThXk4|0>>7!;aY}iQOPt z1*><LXs0+hbw#N86+MPY)x9Ge-`INXTF|rFiB*A$niB%4gNlN#`zniTusw)UeP2N9 zcy#Cc(WrLIa=#f}7mT`W3#kgWg4TYoXv*IypwDzpT@Eh=X0Vz^e+*){MP<-?Vxqfi z%6cdA)<jBD=oo9Zvi9|>H|NxEGg#MNE7UH=8uxW8(;JoZL(5f6k8ukhKcJjK30~Xs z_BF(u(0{;nHD!kXP3B-@`45?cm6?g@f08+Be#d!_TM>W9c?+fE<WH!i1n2rZc#Qi5 z;3QAj?g-C4pqaw1alT$3RU4v+L?z|7jR|I+7KPBFTYOp+%-#$c23OgG|FIjhn7zf) zoyGV1`+hzQUPr(BVWl}{ZlQ$1@4~0$*AF(v%yhQH_+kEq-+{yDgT?=66yt3#lM@TM ze||F<L%k3ClbwHq<}WVof2c2m4)o*w@98?+-tLw!AZoUNY`U0rd^8R#y2EB`rZ5`9 zF2*g=4Z<+SP|DBa$K`YJ?mYb;EdSTbtiIpZxo5=B>|k%t=YCnfeQzGaMAm*CJNMVG zhGLQYe;P_(nfx^<e`&i0&E`mdr=!#)3%QXG*7worcorwjO3cW5N|3hB=i&Pbk2?HZ z%+|tO!jn%IKA#sq&bOb~;<p3otJ#IuZ(ayfK<&{+*o0e9*i>5M6WVwMdLzb3OjdgG z@%nB35EAPb7;eq6()f3$>#&9>?wiA>mumWqh#KMFC#%SP_NMrlxQt=kqzR#m+uGL; z+Qa*8HYPC0v=H3%-RJZNBMG;xi)}rc7-6aDOCTv`JeRRA%p}hmM^^J23#WNFq(3<F zw9%KrB1A{-z?I~Pc(1_9b<&*}R@peF#fXjNZ=CIM+}Lc2C4L0^ath|6KYrLaBn3t+ zW8|z`wu#lPogIa>ISF8ygmq{KyU5Dwd`3!DmJW7JL3PpFe!LR0hux$FWif*lSv%=g zdq9nE$9h65OOi`ntd*tBWjV(NV?F81#~Nc@X^Wweu-(u^m>#SebN$L&R=Mdq+)2Xe zUp(~8fiapr(WHzrlpACMK0DpYv|W@RS!AB!4{y#I&#Vt}5d0{JAvVnxcBI3D;l4J; zkUSa5+Nmi?O%{=uX=2F4I^{H>U^OmFf{KaM{2`g!=ApXQ9fjS#J+rql!zNQ0<w$_x zTU=(@ItjSC3%H`=?@Ua~a6pFbOTy0{(9VEW0h}Wvm=rM5ccVtH0B-~O<JEu(G2UQj z&?97s1_EPjzffwovx9vmA>;<gE%(-8yNCsDGkUEV7I}QWhItV;0m_dB)Z978K$#(y z9%Ce>1XM=$2sH8AxL9Dt9o@NyA&X<sM{?U>?(ne508$wsRS@Z1kHBjK+0{&U2?w*U zA4qk^9sk?XRI~;1n}|K;VPOqgH26P(ivA3fasp+8Nt7Db0he&tL{MWU<I;dXb8<q- zUk3|D$T83qIt)WFcK2k)CJm|WEdl8P)Fz1z)C2O`r!cloC*hJAc{{+md!RNeFhpgH zn7|YVK#4)a2GUzdhJNxQ4Xh_<VOvRv<OBepP#FmZ#==?sq)kIM(W}~!*gWJk6QTsH z89Sr`dQ%MXcxmnrXaz=i>6neMf>G1Evuz(0AJ<+>!ctk-vuzw=OmE6gK*lK_0P|V0 z01-BlPlrMlmPA|1$r5U?aX?amzSd|!urG`Qg955nNSBwabp=Vw*sOuiFs#0;vd_Q2 zd#On6@meD0y0{EET%oPHUCN$!GT81(EA^VR`pC-V+)7VVW-WT#goFFJF~?Bp|Mwb{ zd&}x^5&>A$i_9ppmJYg+1!U&BCLD`_fYi4@fcB<j3^W8jN7M;+Im8IOo8BI11m2V9 z_>F$ccsAoR1H2?mugp(8g*4k&>@h^irf35+S#1o?)BiZ1{Pe0Fsk<|`h_ehZGFsAW z!BUFv2)FD12`82%e%LXgEpF}6$80}J+82NQ5K}}O)%m6BXCn?R!dsJI0g7(HqPM## z#9mi3rTiE`#HELSpWrDryI>)C=2_2%A@(NSjuuG}%|kJ}tEao_RwAHy;v)r`^9o@M zIhxqnHu=?P7iZOUbmW@1a16TzedT^7&UOpkD<RcLLoF{!XX%pUw-K%PFv0y!`G-<& z_0876F~DOBv3K%=MGW26P)Y><9^QxX2e<`*b!0zpbfkk_{nbhu)EcuU+hkm!RzUqH z1J7$P5iEMxz_WDhUzKv4hX&E<cyTE$D-CDostBe@C+@dPu1B&1fsZ;n(+i(=jc*OW zn9(kP=M@LY57j?y=ohAqBw-D)xy#{Z!f7T<aFfkNF&-jL#LX$R5F4c?VsumEtiaEJ zDHQ>1<K9`e0%HK70o=`W@47-Z&2~w(-ZG`{94}e{{U}Am54)Nrbx)imj2XMcrHHl< z8`^U-+h!8)nwnF_LIss>WnuN}rXucDgf|6)8q7E6t{>#<TMzWWmHy(2!)@*c$4bi* zQzP(*_^W5p^vqt9z(iS-o&z!l(wC#i7|^SB$EQasii}nf)@s>gfFL7~9*|8W=5C^d z#S9}nEa7SSo5Y#%xs8%V8T;LNRjKd;{S3#<$hvZ)hU5gs>{nHY`c#kj^IB0NWg+`U z>Dp2A2Hlx$V?afSSj0C)5lX0fJAu(}IRKuANoj#fiz*&c%^ddS{+2}QLXt-1(Qk+y z+0FUiLZOWae`*#<ZCh!ki#fBx)wTD?bb-lz?J?R?BM`0BVmu`+avg%SqmH!^FG; zuIL9<uw-!}W*1lnSqLUt(Nt|aFC}tEq-rjcl{5WLJ%PyyOBqOTzhw%0^BO_ox@?n} z6}h<dcKI!o!KNK<cJ>G@w4vI`xf(}z+=Mh}>pSE>_6c`q;?sX13!A8<&-~2XwShpE zbyw<~+2L#jTT$$~wIRpfKq~`Z#D^{y;pStOX3N6M!p=T<#q@;h0-<=!+#YAtmKs(8 zTg#@v51w$-n5`lEvGfGZsbWNH4IXq$ii4)d!iS<!AcAN!?zKoFTvWI}8W3*9-ArV> zl^q0<u@D&{uKH2b7k05$b4JA-<%p3I5q4wmP4-cehfjom%$CvV7#ru;GG&0<cZ-s) zc=e%nxr;oUUSi+}Y8XmArQFWMJY+c<2s*%@U%oA9jF2=s4q_>tu@IIXP~qmAhLfnt zZHmdQs_Fo8f{pH(J@M`<J>y~krRK^XF@U&iDki6x&k7rs(EIJjV=kqvLNyn$5d-kf zXEcDg;IKufr$h;(%L|B(zlbmws{zH=iJY@k4d2n!lhrW0qGl2*ZO%Gq^bqUTS!{O2 z)wrPFfq{^i)(|oG?ErR!h0MeYJ_(uG>a}BpNru!5o7e(NepqH@9?}=p(t*A)6xu;9 zZiLd52OSf16kNi(*}=b{y86>55sHY<hPyg-5kD7%5L@4XIHfTV-{kGi#wu*XN}4_t zF2>G!xW(BbEBVnN+OwZgts%gUiJPHAa#?i%z{}YS&kX~Yw;qzK!`8-_!=oM;5Xyyf zt9KVh_W*`*q&f&W7kYJRR_QnZPH=H6H5-_fT`$sDF5=;ax-#oP4rGNipK}(0^YJs} zRmg*v@wq1S5HiG5Iur)P_idqRt&;V`^I{U|#bCD2z!3#g8R%bXr8Vl!{|YSwGl)iZ ztkdg~OngfE<uLR|t99VsGnS}K6@-GusdFytmCdmt&Uy$Ly|T@4Mas6_)eZH)3xmsg z6b|tgnY5Yhv(WZpn_9t%NP#pLDK#car1Mgozb?1;6z`=XmU+n?M51xBKp4rI)L#Br zA3SI=;chcgcowH@Th0NBtAt4dsr&E)yUDuh#*TNb&x(T=xri}oc;}3{yK@xYnqCF! z=j4e8=XV!k!c)4A({Of`$mdI!#FZenS`ixAX9hRXo(kT^08wa07M@C{e(yOz9BMZ* zKJk2KHyLair0}4AaP675y(pSWj;@)g%Q+dxPo{2H*Nv5MjFDo2A@sNxHyl~sR3>pz zn!EA@)V(5SQF7r~w92p^E9S*12s0~z{zFl(Ggk9RugM2%phhCoOl&lnnNMk?DFmc7 zR#KC5?J_B++dthy%CZ7TZq3%$2?^=8cDmI<GvdBGe4sXFqQzab%JL!Fq;I|J7=LNT znXG9Qhwbfsq1rRplbEPreK~A9s~DKvEtp5>FUk(v?ZDkzL@<-?2Et<;^q((yZd)iC z#s&N=Qq+N^(#6va8;<y3muIFAL26*OuNq0Uc+4H1I^w388NynB!g)$&<lQ!j4nk~{ zvG~3wBe&lYH#OI`R;(8?N7nk&Ip4mSZUyd%i5j$z+m*%2C{ZRD_j&KxVF0Mzbm;Sf z`8;-BOdvzcf%{y^S*^b;c2-xqz(B8sTOnoed#TGO=Om-MNwZb{TkFDlYLY?yL=vx| z&ddax1+=8&+p}TSm&f}m@rQOTq-eoL72?^F$T9Y=<vql`dhfZ|f>&7*W$rOcb;U|L zZc9?Yv<>Q^%K2oy%l4YS^Il?guAs~{y>xH1J;P%p72LA%lt(GIYHvfK)F_psCBxS5 zyqv+7+)7t8+*cgl^WPxRnP;_tZ@EQe{)eJ7x0IlHRLsyz>cqx|hVlb54Rm9vQW#l} zvuzCvXwF7IwAkcec403T?}w-ULK5=EvSL`W;$EJiF9MK#_&&{YaM9LP#VHcx{>||M z*JI~*{ZXN^NUs@t<BfR4u>|<FLg?ZHZcRo=`?9X*BLX<z_9OQnKQgq~EYpF5mIE>_ z(&C1Z$kpQS)DcWk858>uI>9teqNhq0i1DeGKZ$KoX2%VZRUs4BTF3^D4jf?Q(p+&L ztCzA*<#d`ZBQM2L-jP~}X-$x^6=!n8<0&nFiYQITTN&Sqnwc{%ZR8-SR>mE#=Z)v8 z&EmG<F^tE}mBka>22_a~G<BwxwUg&KB}F@8sIo~QU9Y_jH>5bbNUqhB(+cBx7SRDp za%L!1WH*ITjywa0tVu<0k1pgMbuvX~nH?o|bxcJyIx1>Apahs_DUK>V+*Yug?Z|l8 z&;relCZ{RN+%PJ5R7~f<c@fYo#7>4+2L>E%?`ap{TFn@&{!JYSPmytm%@Yt-ktNdx zIkj52xB+Ww;n1F2e8RvUobWV@4+7lQaG;}tdZ*YyqdgiO%EM3R0_%wntA=C!oW93h zGvq+&$7V3-vByU{BV;}PF!#yq`ChPGi~IlWZ-jtfXeKb+itSwX<YX?dkCsPZLtxNf zCxduYmE_!;8`;tJm8bi=oC5fGWy(jlCAjv;DHclN=@R;|VUm<TU#q_XDMfd^*qf;w z=$xOj|J_-fB**-64W66n{%Zpt5l|HwVOlZQ+Rhx%w@_&|cTi$cYc016xpth@#pM)F z+hsek)W!~BH6B+P!AQ$P#cqqXJdvzQVs}?bXf?Rm)tHqz1iXKMZRDnPq|GdX$-e0w zg#?6f>qWbAK)DMG#NasC{P9Ot)nZvf9$7yDWvx~PC(dzGq4j$JwEt3MgG8mmIidvj z)Q>b*w6G1U@X5Y_u@t?zMdcA7O0AQC0Iybwlsq3kMWdV-ww>B1|3eX__@sV5JgZ*9 zGZZvR3xImCzdos)WrOZ04t|fDO}im~K2^-w85iBTO;aZ~&_tAgQgqA>qT6CxIj8)} z?+lRMQN$st9JipTgfs@4hOQOgr43!w=Ltg)5Mb<R#4hpJZWv0!ypq&mwIc;1*o7d8 z#V#hb^GC<A$A5}ULGz^2HabSTx{pdMvlhvfnav!lq$%iDy_BsOzR(!_W_*)~px}K9 zZf^|zU_WGKEzUhgT4jmFTD;z^hAdxAotVfEMSY*9t!qF{z*;ctGe(}HO>87-AgjX` zfYc17wL0txX+q==YIwavT7wB5A20w1_`8sh*O{0t@po&jSHoeyTq4uI@(b7ERo{5j zW`5ZvAZ#+0gg0ERY&wLWq5jBx>q<saT1}c4w#7q-T8Dmd2sJ<TJo+`YG)fl*%{uKF z&4Kgv19(clG;?=v^rLq@`G+^DU;#o*ZD!pP=dUeG@;@Nr%Uw}*m}HS~(U!Lt@+PPc zIMdbLVzsX(w%T3QP84Lf<*<`Hh*QPuoqu<1_f@NCw)F}V8KxdLQq)&JoKur2gy-6i zMA-Z&(+Ydt5#;?Aa$Zw6>i1HpX0i|F?!tl=o_+j4z{{8&FIWlGw`1=pSR^>iqge>< zCU-8JN7p@bI`*1ba*uYiv8oTcg((4#OW3$UC*Ra3<EP58h9Hw!575DcA>@FirNDx* zc^UJO)q!w>U>cpZ@s1txk2u0Vg9fU6Xy}U<g*A0ZKb?+6UhdBWfKXMy+%ZZGF6smA z*@<HpB{?Ex^JNjM3o@^1Su`&dKnqN*-`n3&|I!lAP#5zpPM31dEYh`FQ*&1hA4CH_ z<wjp?trmM{8+&)~`QkuYW=5^hea*Zl9th(t#>AsW<fkW)pGLJMTP<Y;Hx7cxAupb^ zj!-R<1&YPykOmi6;zIJYmL|f$oVTY@@9-SoRR_^tt|+R-Y9rMeB1`A91>6sCewrmE zz3TDvxoFizyERk9m0feZ3*50yjm<%oMa$h&(~=H;LH)wJlctx42ZsmXAR#oA&Yr-! zy|}$<HBzglwjQLT{%DCOvx^EHt0(W6LUkP}uH#5PCG8wI!(F*{bcqYaI}uS~Z^;oP z^bfilDO@Rd3qB#TUXZKScgA3gWEa|=2b9apADf_s^uE;F)=Ri!-zzQeDXxnBEDTjP z7bl{C*D6|#jM6&@VC<$*l*`PJ*2o_$qTwtbO2~D|$!Dg@^y1i_UYYj{tR<34SyQ+) z`{>pbg!&j1R2!>jhVn13X{I)PA9IrQ7KW3laXp<0$&FEi{-rSy9^i}V@-JUxJ9Tb4 zQsHhutLKuuqYx^<QS$Iqyq-_BMV=AZlg7^m)T?~6$Qdr<Q~<aU+fe^b(y^LIe3}MO z!(=_eo^0oeWJYv;`WpsX7VoG8c1n!wYarWGn5KOc6+uWIZAHjuzoIxzlxF){>P8e8 z88n?lOF_M$BW;<ze_h=OMLJp;7YW)jwQ7dC1a1k|%CgL;|BND)i>wJuE?Zw`tk0a* zH8SG)5hI@ppgNk9y>jtDoQWT*s+B(9jl{2OApNfTAoU*ADzAE-YAT}C^QB_WH<@d@ z*@&fbkY0&R{$5TsbyxI9<PVd+t(%C-0wV$maHCSSEWDDb_N_%U;_6;AByn%qC)FV& zdA5y?o3dv!(o)^iiY?k_4V;8=AMNO~b`YilS|oMs7^=(4(P$RvH^14wed2%9McMze z{*aCFmwouZ#J^f}#%oDO9k+Yy%45^pR5+JNFko4<Z2&=<3%0m}px-l#Oxi&s_0C>> z<zO^3S^sX@LV?WRsvRR>Vq!WPjbU}>cNKnqPa6CK`@-s+i#5JFb;L@eJN27d%;{X6 zrT@3$`}6tFjsM?6S?|B&y1MNQ|IP1HdH#RT_VoV*{J&P?2j{*A0KZ4^{r@3_-N4fq ze%_`hd@__}EF=(N`Pku;$h3v=z!+W$U6py}rez*Z`(`aLg&L0QVtf#WdCoY-UdOMd zm+JBgFgr;L3ol$w9yXpIIz5fz%KqMbd9o@lJvZ5f!5gz$VH2-GU{h%gujykn=`GkN za9L?->*!Z)>&PuQTFI;TH6~xYZfo13a6YA9Pl@J*@x>GE-q9b{d|w}ckBoC3nQD~- z=0fdWKgGvR{r|%Fh82L0?azHbl9uqz8fLv!LjyMQ&0HomN-$-O5SB33Nu!VWWvsHu zGltm>?0RB^yGrP0c#mDDq>EtQE<$O-U&i1$^UFH+jcWkCau@1mA)AfJNb{Ev4jBSI z?~P_L4Di5X7+#EK40MMOy2OVSg{eU)$SMh66%$sLrrEPqS~+nV2&>B87L!(yz0D^q zD@`$4leLoYzl7NO_$;Nguqbn}|NlDX#{xs+pa0V^9R|n3^k6iY8`od6O3gOuj}x5! z;b(8@TOHx6bPK8lvE{CSYNbKT8bSgRrBcpI;|t3@GK`Aq!C40c)LIsa)LtSHcr8Y$ zH{c5wZ0McPRr~50Nf_d;Q$HmvMz~)>G>lBTW)&Qq@*Ez|(O+hv<zzNQ3&%4O+<FdC zH%ohtd*%X*>!9UCV;(+EBOIcnW3~!_<%~Gy7~&|sYH$oO#StX`4f70Hk6IiPPCmd1 zix`*m$ywn%1x17HYBu2s%aF&hzj;hqX&<7vMS@viD1lLCe$E`K<>>Z72A1cKqk!i| zgX;?GcmvxY?9-Y~JT%Q{V65RdFt`g@4EbTcQU~{=Q=st#6PMJVqK4UlF!B`Xdqh}B z=qNQDlCgwaf;M=@T1*)wH0u5{+Ih$&4?Ggw5cWGdgjfkc6MdLeS|8wawH0s!tdh%s zt0M0RqX-ew_Xh^H-5|JK7x_s&r=T`uAi;QwF&G_#zYIj~6qRPEvA%fj*E#lS3B&x2 zSC`-<#Ej27?<eTMy1{wDe)lPs3w~j&(*vr-D9aG!K;229Xq(~{i~*-|1Ohx!x3dY4 zo_K1mc=l0=pxf8g7aL}-a*Q?vHy@c!8wO115nLJIlJFhgqB^k)#l}tV*3r9Gb-MFj zkdjVEucD7ZqVkap8pJ5W+XazRRX&qc=trjg^4*atmK_MtaL@{xvP7;#u*5YmAOvNN zzPnGBFQvar$?Ee8OY2H2em<Z7*tX28$9sv2f9G)6Z8m<${#{4|-h63cS>CEXw{|;m z($|t(jyU*4#`#*@4M4ADtS`J61*^hmt^GM!oV4c?YEcp%=yuQlfuUq4;B#oe#G<V6 zmEsJ&Sv<W7_YYSK-GN)|!sq|pX4hrpOFz>j0W5O|hb;JHk@(?&r|x6#+rUzoizlyd z{+_Q8Z`c!Pzs?E3Gt5;UzaJrIfRed&Sgp>z)y!H5L?WGZsXxMt^Vq<Qcvj(}!BE<v zf+J`Leu~Q*r^4wVgOATE0M{YWyV*#c;~rCo3D39zSlXF<GE*S*tKt~OW$^t2`vjG5 z5+`&uA=z)q8a}4RN#Z?cQ+?|9#G5i^`qha<Bc+tGD7*R~8dK?$pBZUMl(SP4KMU`D zO3uA3Ub3xQrmz~=e!XfkllEquwosGflm}h0oemhPXX>=;e)@HGS_Lr1%_@(efb3f+ zg)u!1E_-A&fv3-)=w^{vy`1*gVn0c`NK)vE7TX|NrA<J|w_L>gv^YTkGG(kV2%F|! zBwji2D%j6#Y?5qI{Wxa>;_M$*A@aF%UQ9%7AL&VmYF41It+|035_uUI%D8v!V(Xqi z)QIE#Y6lqCulul_a~0vBz;~TTia@X^e1K6~sHfRiwfJ1#<^%N2&ZG6a9266o&Uq&w z0Z<lq!zJctn>nZ43#QVZcJ0F|fjqrS6FNXHVdbKn{x3Nfm)Y7*qaXmFLo9xbe>XJ| zaiR$%=d;LS=`Ka7{Be^AUDpm#2wFZfcN5|mkS~A-alP5d&qR<yT56&C^~_r+H2Ftg ze*sHH;6%VaKT4g4S&%vX`@-^N+OEkJOD_JMNJ7YclN??8W4$SRBn#H<B*rvRqbZ7t zF|Q;w5y$<poSFo-ut9KkuS<U06=VgR9OQ|oXG#nmmaT=N5*-y$c69MCQy9nZY$^o% zR1BWL*ka%W3is45J~ZNxDt@E@>+q>K+=5CLAc)_9%Iw{sv&xv4BM5lzvjB(~z;#rl zWt5dbTUqn(x(G{I@XCINixE%^AcQ%m_Q;xy8A34AX&Etz@<U@QX6hR$!4j@lFMqi* ztW4r3shv4?0B<Om5v(y=5x?KLm0x2m?N<(vhE~9U>gD5U!uU7V1kih!ghgBB*vVOh z?Z`sS0%3_V!SmX0=&wQC9ZB@(Kb>iqX`zF{tpQtD<@XoX$DKr5_j#(tb~=X<b3{|h zePN2zkY|^zy#a;3T5jCtymt1LaJ%~dgt4cxi}-OxOQ*!2jI~xrT+(PHp((vo%*odx z9$#3*5sIdAUvEM7mu-}e6aj(6u+x#2?D<;$mAs)G$T^u3pgw4eW2oSgg)l{?0P4r2 zDk8C}=R|tgflRD%Kp&hh-<LyVj*5%3a7LwG0f_QGO5g7vF_hgl1YIJ9poKv!?uW!e zD8xj9^E}!up#B>urp^&+00~6ny`v%)Ag<~`c<Dd}o#p4`x}we@x?Ieog8j3vT}iN* zQY7|NgVQirZ5p1p8>p81k6&h(B}jWMq9OwdC!~%UHN3FhQ<U3y-Ek(>9Q|~@dlHBX zW+OTGqZLi*n%8L2>b9j_rfAqFE*N-_IR@FH_@TOMhcGr4HSsumMG}99Hu;jsCb_2I zY@4a*Qo&ML`KA^+zOW{sS;XEQ)(+ch`rnEohac|VS~=J2Vkq<J2Jr7=H(EL7;fI94 za6g;Gj=yx3+%9C=p&i=Je)?&Rei3STF2izrV`8NmsV~52<usOiX7Pe7s`_qPO)I2u zLuiMkbE1_QV)21{(bqH$3d81+3wzRYiC~gfXDXtF_<DtKZu{YBq-sP<nnwzV)gC~6 zC_B-ULyj=1&W4+2Y(8OxHAOY$he2ly#NoT02!9W&5D2Vxw0wKZrsH&Bh)xPcNXSS1 z;~al9Vw@!e4-skzDWT0=p2F#f76V!s03XnKh}Q2N(sSW<UOo5%C?YX7P@CoO3h2qs zaO^;rh&w>!BE+L-T@sH#3)w{7P;qMG&OV5ar=;B=lSL$?TY|ovu?P?d{GA53C_`$( za?MmQ2BbTmt3*H1YwfCKh^^k2GD?qFdmGX@kd4Jqti)1rigOc5_AX-~e0M75*C#Nv z7+_yKg{v3_#>vH$xN95YB~kfm+z60VNqFS)QarpW_tSn30RUuzG~KRjpX>xh)ufP# z*M-$)VJm0$%y9^23<U$G!<w}?huGsolAu7qM5q=6=#*f`R?h1HN8rgLJYc0tw3UTJ zc}wXpJBjs3wG)Q({hG4etK846V7l%K4d3OXyE%)E=oS=G$4kTa6LCWUKjBV+sg4<S z|CgfibxJq92Ch<M^7VmVqSZ^U_}V5k7h@QQ$jwfKrz#hh@7Gwtc0a=A`d1}|bST?W zNLoOBcx(MAQ7rO2!;<|vZUF@NzG&N06iTEuEo7W2uQ@>BvX0C|cK?Z>T@%k%HCy4* z94;8ZP057N>0G~@>TXaMG<OkrMJk>f2(RKPp|8V9pszN)GKRPfcaK4H8xKJSP?XW9 z9ezsimeAg(F&1fyRC)PMC1z-yTNE0g8N>Ps;5Qr?k4pt&hZ7AZgRaJQ69FdVx$(RU zMYYP;9b`Vq%`l`pWcR4K&7um(rkM%4%od?X#1<=1NNRgfhwLw?g<}vP=|1Zj7*z+n z9A1bNSQX9_G0LK%@Ssb6pWXp45m8KHC;E$f94qgF-3m2O5|U06$1xX$5Ho)$QI^EF z?3>*Apj_MVY8=X2x)W)_29xArvzx#^<jg^&F0_q=ONELT>M*QdloD)31Lt20{7WGC z_|IlbYRzVcs-2)f+x*!8U$g-P=GTQ3(EgmJZ6A)4Hpm5<5QFn^e+?}A7o_Z7I6_O~ zkFkDtMQ9o-l;I~}I-~&v_1s93swGzi?CE>q7yDy{LZFdC8g&>kf(v5XHSLh!F64o{ zf`8yyka*>ZEigJ(%s@ovg;5AmOBPN0zI=q>dACK-K4)!>4*d#kZLgp%k=)LndJ_o6 z=L~m!R?aJ%JISIayPj5BC2qx|gQtIOZ&c+qpMSH}qkJ8|6$7#wUAGpZ$=ZA~)FHoD zVWeFIs4+gIZoWo)EvO2es2Y}hKs@7VLSb;5qwUdalqu@Yw!b#&-8wcIipG?z1`f@G z=w>$_Js228#la*{eT<`tqzvO3J1$?Qc1TA)-533|nI`1>6n4F9Aqcz3)Ic(U@((Su z!_~@=9-%{=P<{tq!Dpjxb|wrFQ2=G~&*9lA=Y5e#+}cGUoc7_@1v0ujG%cz%$;BA( zkasuvJ;e2`lN6;5Kr$s{e+|{_P-l4%WfPj0`@E<#T@@6nuTtY+mqSm*j8+AOtsQVh z%-I9y&5v3!jyjy5n4jnX1Q|@WzrMgkKNX22ml+B(9_d+NBftKWsmit5jDi=$G~U1l z?unz|Cwkc?@eOPN4syh`Kz}wVO!=Nk;tB7yI_GQRfb#_mCece$%<C-_kRt$0WI{Ih zYsGs^JEW;8k1o~$9F{w?rx!707I*~QfzE0)>heq7xDUE-7?c{CM&K#kK+aq|Ma@Rz zEGA)^F%#7_4fvmH5(D}Qq^5Yg?LYC&<bBJnXajBcJP-X6irFtBxsLb>b<ml4ip()y z3rcJClRiahD72cCZTe_Uctxr%7q;;TSI!F}9y$SE`t&gmCMBp6nA+885(05=Wo_Ze zsa+J;8j2-eCS8E+jI!YXGs-`dGMtSA^%tY_yHV{-a-0P>uWL<$)2o0jn<TtakPibc zPln6(^Ps2js*?(-;d!er+aGt?Tk#Yhpm5YlPe%=*xaN#(94+_-r4lx#*h1Zh2q9hK zav1k3gXN@Zhklj)-?W=z`8QPX>!l~K)Lcb2K_Kca&b>+4`Sn5$*e%em=NIbBj(A~Q zDT)v!wn>c-B^c)FA0olCOBiP!DkCPi>;c3YH(a*H%yz}SIN@G8Lz*@A)W^ox^zdm^ zB!Cy0BcYBikrh&Clc(0-$+ArsXX0`>b)u*wbm+OxvwPZ<wJw57tg3Q9s2WlfjAoS6 zYA*(7i_!**G@RwSkk!1;TlKA;$iha1&Xk9y06HJ6)d}RXu8%7xzfe00K_f2U(8bSZ zRCM)8f!e5y`Z5ec1^Zj^1XxXyj?1`)!GVcT!vK9Fu892&uKd?Vhfkn%`Gk({Vtg{p z6<Bs9g>27!^~2DlF{g^ImK2Zp>xfXfZPH|aQ`)Wm!@TQBeVb|a;lXx0a!~fu;lT?B z{oH;r6sxjKQB>6qp}!QblIsI=2?*O9w@y~HPz!W_F;`F0k?9FLlV0zTHHT$LJm@*8 z7lEp?y`<*Vsqe>P+MkfZUo?<i^Om-j&OsMrnI`+M@1LMTd8XPUm4QlANA4ih6+t8y zaJ)qc<o}+GE-w86N$IXJUXzT2En+1dH&{wnX;$eN&v1<;!BO+wP#ML%8bqaNWmll^ z@-(A?NOvItbzf&DvBKt@)x0ZRtvge>fzP(x*}%Q9OfmSC40pBC3^TDwjlhdAod<OJ z&nVUY#zF9**13WgIg-N~PJ+U187>ACIj+tODPvyI_!oKDn`1;-Ocm?AP$*ng`|+D? z&q%#WkJVsQ1@(>RK7?UK8x6IQa!_cWc~Y>~1(#Or#u_oz94VUfsyLlhmm%83>*5$u zY)Wv462Z;4!s!#nb<|+`dva;-NA+@sk>+9}fxUz%pb}8$pu%b|Y8|lKdoyA(y7|BY zl;b=zlXH_tJ?%&p)WWcHBK+ftxeF5ys7i2AH<!3y-zq}kkuN`cn7FXJ|Dylpod+k5 z?ZIj;seAk_$d!VI*q!bfOQplu9wd<eAe0b%1mZ?g5NC=a_nidL0T_m8Z}P(t#4!z( zPo<4W&NwW`<13aF74E{e8PiJE_){=e7scts_Gov=YDts%IDwSjh=ISYysS=~OSZ<r zbz>`;Pjzc0&!VPtijL8jlB(X_E-Od~gif}Un0Gbh+<~eSbv?*YoMO}4R^&se2kcSU z;;N!x<a^cb?WnGZD%BPKfZDRE8CewOxC~d;S)-a1OVepnXWYh~z0zq6%T(080SONP zRhL<PWWb?-3&pur*pYr7N(aVA?3A%LZXEhXeFGYv447AjKz&y*?~904Yj@a)J}LNe zmEe;wI=QWHKcxRMG?AaJ1r}XIeA6Qcx8>`OG756HCh|l=snXgZ+1*<BMC)q9Ym(Es zBy#BeyonT0pPhuKF&b0G6j7x`L%S)}3B?=5MVRk~G|8GjfEG+@oO`wM5(`au8yzmk z9xRU~Yw*|Y7;r)EN%*k;(jy5Zoh50JqH|76J@<qn*(}IWk?2HML-Dk{sX!Kx6tSwd zyyBLrTFdOwM}0gMiKsQFUU&8VMZr-F4)6^=4G`{}1zy|510Gc|g>By$(xPLxV<?-f zQ#)yz?Jpg50<IH;Hz8y@CClN$T$+|8$5|d^tS@GycL!>?^{=UbyU)j3i6i*!*D5jx zu`79I*8QjEybJb(7Q$WbYh=)H3DyPe!xw+!z!To>Oc@${_1$XmpSd}NKC3_&l9ws9 zY=ud@_5EA=rIve}t3DNMf>;BtTC73id0ccicV0DFLD6?~w83?LY!@Z3x+8n8zdQY= zN!5!y@37`sn&P)nm}l(fw(NwtCabAkxRy;AREx#u3zt!%llwSbJ847r1=V+L%8;!y zfu7EtX&eyiCII}`%%GhG(?mlGH(>bXybB)e>N#tiO9bY`=eKGzs$3t+`#I4VcaNT< zCnoFxN1;^8F5?ERkV=T09|%Kb!mwz1D379id5M1@dGHxnl!k_mn@PR8!j?Bv1h@f6 z8X1n5$EBXj$*3BciKyJ^50E_AImAvPzxJ>;i@-d%Pr$Lw_v|NAUqLw;zT@q2eG<8% zx)|ep#D}j>^$Ee*EGP3A91&xN2+phcFqQtr<@%owQ?emTx>b(|x#LDv`mzf*AtK1s z08;-8$NLJ{_^mU(_*qH#x^JmtbxA<wU_{{aF*{XWwzjTH#UekhxL}C}_5<KI4iSQo zY`QzsFtN7F9C;73-{tQ%mCs5Q42Un5j`>OH)eW>@-!|5q@S~Ug_<On{yNqGgqpN-B zQdv85jD-BXw}2@+t+=x#wXrj#tlzf&J~B(tl~jcxasIP<@#MDNgKhsgIbm^AkLl2c zziXgc)L$NDn(Vgp?Bcwp$_akkIIz!h8p(i#8-F(HP0tzH)E{01UoE?3JD!TedhS{K zE@#J{;5W5FsFLRWVXmGlLxISAY^{}uS}w`7V;cRf1_*c-Z}<qkiRSR9pY5Us4!;|b zR&#V8a|&%~A{dqjud0u6)cQtpRoo=r3WHGI3V6EyAWk?KLy71S#|FOP?-bIFFP58O z*S?k83Z=kuvHB|d4-@kr&4@tx^7)&4DSi?EuEn`9^t%SeW|)W@ypG6V8bcEBh}xhR zbx-MwhU()gf<I7|wc=YGjvF(>kZiDC5c)2UYkIKJEqNPOBW$ADOvx(37V-&n;D3%9 zNJI<%{^bhrz7TI-vb5iAx#teP0kf+>iiV1Q;69Pf&XfjepYl_huhAcOG*_d8y*}@7 zE?pRs-!&}?0KSDvBPwD(mc4l=E&lwXxYRlt3`QruO*tI7ACX;cxoRr+>(s%`tMRBq z4e+_=#ZGzg9!?ov`BE!5W0mKa<KMn<UJ@$l(Ipmno(}s5%qKG=`d^I$*8d1pvoSL> z{!hk1&98BAJobOaK|3}*{%{Tlh7cgHDlkxYy>3?++Dr0MQXra%=l<?1CnE{-|6}YN z!ZQK3G@PVkyTguc+qP}nNyoNr+qUt?wr$&-zO$XXm|E1bc2)IMz2A8c$5tgRUB$;; zLezi8o-pyq$V}|r-N8oKPmB=e$jHuHpx)<3>_6+I`^VG?GtaU?_I?tc-uENqy|7!= z1)>o31yQxozhA?VRJ}iZUw?59P8_Hw*pENYc#gn&5AAO4-X8zlx<Y+o|BTpk9PFIP z_5R#<w&L~pMb_?`>W0uym*ccSVNgweFnA$zz>`#wa6A5y%sGC1eLcF${qwIOlJ6hB zpD(`e=aXJ9ZppWk5#R5-lits#t6n=$wBeE7uHX^h?qKd9j-jMsRDx2ycf5J}R2Kd9 zd~QLUlK+5-fZR~#ViV|t1Uv(rVT@yr5tirQcy?P(H2yJ;GeRTtBO4z_g*T~-J2!3~ zy;)<PY|dP^zGhy2)z@n=V?KT{6FK$Y(99c9S7n<H3lH~qf4?rDfU*alqg;?LhPG?A zo)i@feSJPHHkgH|8~hJ{_yo~>U!GAO3n$$vE>QEF_v$;pc^)4S><;4c&4E4GdB0z1 ziU|HgCN_vbF@hOurN#@!+?ZnslDlYQ<wG2F7r2Ko{-AtM8)2?6@C<PC+m&_^pTEYb zo_eU8bul0;po(2ak=S>m<VZOUjAB?|4l{?a)9(JcS4SbAe1L>rkT-;WKpwtzyJ0_f zD+Xz%cA4yPm2Td=pB`43poRLY-Tc|}V%-ee>uUXklW0mcm~-^PW0Z-rqc!c3Q=XlP z@0sJ-qbcz>;8Nq;?E-YoX%ni!s13z<gbuPL;BvY9s9ft=il=D%=i^_*noPxxda+~D zL8E*&>lAi^6QD=4Xb#J944K<>K7}k8qE@h_6XIS}oHG%n<)HqcnG#j~2zl#ut78#k zlAx8JWCE5CW*MFNz-|B-q6qIPp(twWQ@Za4d(TP1`MnuH7<JGTMPk&1rpZpjKxV!0 z;?j4WF4j|y`oL^hIV;yiCzM{o5z1mzN%LzYJC)i0%RP<E+R2)w&8!2EaE!?n>$=a3 zW<ATE_{SRkQyP}U9{^=n%p%w2SEbnhSBF2;bv(kKFbJ@fqXfdhPWn&(7NpgVIv;oe zOaF_=?NI&o2Q{@#79swbQDhZrZOH`Q-Crxyoh$^ZMPJ0;pQE^38iNg{JFHbP#$A)& zF4(zWw1nLOLe@j%5>eTY8ADz2)vhP#teOFB8=9VsDT`_iErM$E8nROL@K{q{n@}|= zDhV<~D&2*~45JdG6p7n(6pEFm+6w(BjNVHygct@i3W5l<$TE0rr~$Rj&h~&|FXAFt zOWzWNjM;x>d^Pg{Na>IHFeY^00HJ)EfyqM`wR&K48Oyfqln^|ODMGSv75G8tG5vtK zP=k6C1y~Ro3@eB#Y)F%{uWwhgT(e!PG9Aa6tyfoa{_LTgQxpGi`^+zpEC!;eON}5e z3_6)8FHLldm0ijdi?M@w8PLjf$$oG^M=NzpZ)?N5o7GJdYztA-XES&6zxAHvY(ATn zYhTTM&4^oRG(1anqI5wv?w`1urIznkswa;+9uq8$B7AwmgMMDs(v&BFwyhpNw?k$U znEF<84q;8OO3+%5qZEjiZ_}8fR@;!PKgcK8``!)kW;ozx!7iocm{Yz55JQim#m>*P zj0u$tNC`1RzX3gXFpP<eZ(EFOwS~u2@9?=3R^1s6Pd1)-!x|QQG~Wjp2}hGIi!&J? zhd10m78a>NdJ@U55)e16+<UU&$;gc*F^vtjZ%K#Bc?lBHKWS#c&s+DnwWQOM<mtj* z&W>L)N6|?#x(PG!n#n4|I`gyXx#FQ#ubDHqHm)9V`jJeZ>2&3z{s-~{v}%qby6la1 z#$&aQRI`Y5^bQEGYbfJca3?Zwd8k6n+2q<(?a1(6-cLQ^bIVLcszi@)w-j9&k1jk^ zF1c_dqor<J)h&D+hRXRQ4ZJ6zg)7NCxUEZtk^mMrK0qgnU>9?c$=E|MweJ_@kqH(e z5&_7Em}<DyaP|?FV#kyo4NL*{;T=;Rv<Q*2m;$oXmVXx^t-?wMS8N7NuVPQbiFflL z)@o0ZOLA%1PmvBK%eC*@(8^5t*v4VzyBJN$Q~7}n4z%2$WSOs543+do@n(ii*@wK@ z;RXNtVcJ0)?>62YU62xo4Ap>0+g!)PZl=nFiCr0K!U#wBuwCcAtQjITJQKN0?60rd ztu-mZwnQYNET!$M%Mhz;($-fOUTjg9TQ-LP2wBJ`dPRY}SfH<gy+KSQL&{q-F$=?` zC<slb8XRV`g9vn;+6uWm_zayg-H2ZA+I3^OA3r^Py>nS}8}M6JPswMfTE~-zPai9b z+s$e;^>lD)$O=8(Ir<zc994QSVl3LJsS+hA2C_`8X8+B=YX%X{mli$(7C~WH*%u;( znz+~M<CL&w?GZOGtygD0^5?f41oc*Wh9R!oxwR+}Lzo>k)3r7uF<}^Y<1YKsVlek( zWT^r213zu>@_l#pAbNLx${?KMzSu#LfzZjBs!;Wk;0z_2#QToen8%gwB_$76hIrn7 zp0!~i$!M-4%0KJu#aCOOep3c!h1@>QGk%XA>iV~aOTDtKllvZCr(82U|KwY|-6NOt z><{naTHb0xF^*4L2#2Xyv_8X^Tvy1)h&`oELrRc*$vvJ4ra6)uO&S)x)_g6lJRNiH z^nVgg;p6iM%O3x=snxAL7=1ZOzGCpP)(NgL_(UcP=(+2AdK!&ynXClfZ{`K20mj}0 zC8yoA3qS^z!aobPl!K(G`=EQ~7hn#X`u(~q3sVQNZe3_8<!?i`pa_7Z(h|29bsCUS z)F}i#wVbvX+&pAT+U}I|on{M*90Le}W4y}}k)q32&|_Lh8vIT!2=M4|9Ec6dL|0ZU zxwUTDvJ$WKYTc8bY2-k`RZ=!QxKk-_lAP)FZFA*B(Ql+L+y-5&&;qw4`N0iZh}@?Y zBM(#9hmLf^?-?5b=~Pq1@H69o!k|rib3tcYak-#H?}F#X^)Ztx8zZvg`F%^x9|%nT zNkXNqEqN6VF_i~8^K0yqBHY{(G}`)gI~BwmwhyM3<2~Z(R}LsUit4_wAxlhY!bA&w zB$ZZQRk}KdHF;!I@%?Mnw*)oftV-58w0Scc5kB;04Ho|c6bqy{oMaJ8WG)}tbxxC) zBvEbaJb4aMNZSwQ^Fd6K1j$}=?-_KLSA~U~60J9|Erk;>X&A;XtgSyur`9A`m?Aj+ z7dxT?pRoh*zxLH?3PBs(JOmZS{*V01mvN<pIn&J3YC0spR)4obfVklwQ?-mZfc&|2 zj?$vnyvnCY(CqJ&7(xr<9k)I*CJqgT>>Y*0@j)WU_?5)$l0TEU#22XB!QY?5g29hG zoKX_dA+;M%l9k9Hpyw<#kCeCz?>4`?0Dy%<W3?SB_jNs|_unD96k#X`QR8|o@gPL# z+{JB7OG0;?)BB5vFBv0bdIvP*Rz+ISR+$95KayA_h4X4qSGlOgKf+G$XFMWzr2NHm ztLb<F)!}a?y6|b}L}EAkiG?REFMk&HZ9BtUm)L!zpA)SX*r5C34a;O-RQp^Mvppr_ zDw7;^tB(}WXN9F=E^Oed7Q=Jf#Br?Exi^dihOOUo=}P~ThJoL)yyRf(ihgeo`im&V zSMCx_ESeF{eh)K!o`b5UWW(8xMh!f!2R&~R!t$1ke~`j!@tPIZAqkF#R9i*IEB7-x zTH^+K0Ou5^<w_q$h+00kk-uiY>%)2oE?i%#Xz92bxd=Kt0^j3NXHEul2Z;%{5g;_= z-u%V$E*&Y*S<2ERNd&>bMR+!z?rwBcR!EU0wF94B)=}!ss-`Fm#xRI=hjODxu_7Lv zmDYi6O6Dz2`WEpNo{u`|!sOiWFC6RI?!gnW8rwWFa<s-tby){vTvIm=1-CA(o&4fr z18O3P%Azpmt%}Vd{~K1nN*tBNtg1{QGI@f@7UVG+D~X)a(3vw@K~qki3j2rDNjaxu zuC?m@ProEl#rg#MOe|ot66JVY0=~-vNGM7{XG^6Sm_-V;2KWaTQtC`h#P~MsFbZBI zgAXwfN%%`G8i6WLJNQbz?%&~V#YlIZnSDGsKwm-6x@ogL;0D>OG$`aL;-s&jZ$`Za z78h!5(x)x|!Wu~{I^2TZY7KTvu390V_$9F)dm;SZRjR*dB2Wqxpo7@S8&jxR7ds3j zIW(@p2tkE5+LloJODatm2{$ax6~k)d<~){m$}eV5L@3=3W`g``V{{2IdTmMF$eV=` z4j}|&kub*`I#=Fj<3uFEyGtz|C{Y5tT$xE$<1G!2zJsmqlwY719Lu09MlleB+z|Ef zbgd?(v_kSi<w7P&awu22kLz-5*m4)Sp84MPgry+QKn`7?C2LoA&L8%u5^B!4vYTB9 zD#;Z%zh{G}Gr7R5Omau)Q-?;iqUn8*3ZuB<H9b|h5q4c!RDW(tRi$?sY#aWrjE^aB z-^k8qmg%&_L-d<EOi50UN+o+BJqhOr6;Fp@W@_f0)b;=hVuNx7OK6n6$5KYJzVdP@ zo|0V5yU}^lBeu3;5lWq4-Fp_pIqqOv`H!@|T46hj!zo)Jhe-b!`*?7_fbfL;epg*8 z)B2G4b~n~-1bBAdra4>V7FB$?HqX{w<7GeV_591`szRgXq(sGim*;kNcmsnBpu)f` zW1qpa+J%#*-1_RJ@YY^QN&p3GU3m^ajMl!XC10-QI(4-*ZI^;OoR^1tEmC8E94);N z{rGEec)sXVr-GWhO-4sh^hy42FH0O@j*^Guk@G}p)G$QTmI}b;wXcT<7|!=<-VdOt zU_z&U&ct%nhR`$%21SfX(CcF^B_WTG|lBLzhdaw7PfAR#~r-kjZfIW!>$eZpcO z!jMFDz4e5`t|CS3_ixEE<VSKqjWw4WQb&gKE*|NQ>C{v9ay@3Ur}iaU5mxtxd9-?% zfu+@8&+huL?S4-ehS^X?546Dx)$R9~!Q^j3Gv`|5IN`>9|8lBE@F=v7C1&65I5ZOB z3Tuj9!ASY?r5FZlKn`cC(`FxQh(5?<c(z>w;a9Wjp|VSc_}F#<ls(ra7`7V0%wF^R z(Sf?JCL9aGfn$-XjCD~YPDMbVyeLI=^%4fIC+~F<#Z(y=;I&`t%0$(QspfVma_6HL zQU`;q2?mcmf`lz?QZ=wwK0!9~X}*IInbJ<pvDWrjNabzOYabTA(+8O4`aN{NDU@=K z+;IE4;$tS~lyYmo4Y)pGo%d=ZS^)(Ib4`KBR#XmHPwr#30)E%o|AcdT)(}nZ!^eel z#HCm6q>Sg3OAKMuAEtVdo*{mXSLQ_cnI&6^e`$x+?T$1%@#Mu*8u{F*I_;MSg#3?% zr&`SfYRAYtby+I5YivDP|Is9Y2XW)m;~tN90WY1hZ32&XPo&3ld=f9g6W09i2pir~ zBHoFUq==U;iey%81<ILw4)@yU&{58htWGc4^6t2qWI__wsgr3zLT2y0u&74wP~~Mp zCW{t#PH*>fMD6q14-wUfoXfK%orYGP8ymuqI6SR>YRxKUG|`^pedcVd;fw9<QYYw6 z_wKTC@Nk@UXWPQIJEzoXl^C>?Yvl&2#T+^c&6(d>o@)i0@FnOd`#Ko4WM2Ldxyxbr zzeeQ#KIURbD4eb&_V~4MW+B0i`1{CAhaRAC$17JWRr95Rpo<vfUKYzP5gQ8lRY32; zxCbOMy7UtWw5s3Qux5l#{(0x3Uqy9_?pP!7yjg}We;M=_j%roW$O4Q@@Y%hBVUMk= zKnwkgE?T6grzljLb;TFEm~&*{gLT~KQAX@-LV7$)22Nx>@y_S6D$oM%s%0RYo(t|1 zYvA2{9)}9kkLl0*tu1`h0VQU)G$?D-B8x2sWq;dkwgBJSET|0vZ<QyX3GzBtBQ~fR zX4Y~z&^*%;oDy)q%U-A7EKrR%!=6YV%W+nWq$cg&_<yr>Ov^&L(W-37&S>zr0%0wX z=4kCyf}-J?WXsOobd~_=f@URmYnt!GDPvRTKt`xW{=9_bL>h4s)%|k|1nF!#wHy3u zNyA2UJ&tfVw&nkge|*7Vz9PC4yn4-pcHS7(P37HkR1PQGbz>%A9ScgDXLj2MBl{&G zIi&gu38pXZ&qygpJz>YpK31M91x+GhZS5?N8^(sKOmkXjt%cK>&4(yGS!!)khzsAD zEo|>>!=<o0eXAU_R8lwap3xoA7e5!xVHf@=RS*EVRy#sT+p+3Ej=WEVRc$ER8x@8r zqoB(y=ccRb_cKz+zN3L1OhK&sJ54gdV_r}+fk^yrZvA#oAo2}(+f48haH>Z2$m!Pm z`X$i<`N+DDAvN{;rH4&qX1k?Fqu>MWE5%Z%yJ34+GqQzS&9m`K!os)WDY7Q}bWq5O zM`(jLJ784@g4D#>ACtrPobbj?MzDgWrnn&W=`w5Ks*>|*4gC(Eh47E+EMo-v;c`7J z=aUk%PlyOMQ|sjbbRJ=>x2kQ@OOI4h@qtpx@8YR2COQ7}j2aNh0qE*^MW*raI@6J( z8rmAQ07M%(E%r{HGu+i@DLhs~SO^_lHN^7fvX<&-W-F1}Wv;j??!PiB<H^-^hY5e? zByt0*DfYW<tmo)fhM%PoH~f=?#LNzP@DlgBB>ML|wz_C)StK%oITQEYaU3(?ft2tq z1FO$%hnidGRJ@1{$bMs3=v8CuG?(U_Qz|rHEea=>KQ~%c=Nd5DU`tVoF2iK%PPM8+ zn=G@nBc()@^qgry_ge!B(&>YEr(<XWWp=p6E<(!eBDE}QKgs>D3)k(g3;qe7cGyFe z`b4UAw2A?yjlhVd@gTb*{IunK|L&5hs|CT9_REUrrDbHiBdS*xAvrp`cZc7{pFEqv zX_YkzJ{6-omHGc_eX&T2Pg!u==eHL(#G|iKWm3d{@?gHGztp8w@y{#h0=i4sF%j5r z#P`5Nu1M;=BgVR_G2S@2mU2Jn+w!&phdB3!n@}@c*m5Uli1SEWa47PiMvkPnnngL| zQE>fy^v9nDnCE?}X{A{<Ol=?|T|<HH7Xm6+rZ2GxZh>J6#9keRjkGL(wq<a;2l%l1 zIC1KSYzWnr`i#ggCOui2hc1HlYb4P1q6BFf4>k~itFb@tM~=ej`@qDl?~bAYo5-MJ zK-Pd&0#++SmRhT|{2aaJvVB<&pwR;&Ds~Ak9GTA|4c+keDu+@VtcaJ0MCj?@W0U?9 z&gYB6V5Je+i?^2Z8M?^RSD<;n1;<x;i4PejJ*pl3^^@<I0(upBL=>sg4y;(dx%|xc z=>^N^-V2Q;bfk+k-C<*6lIRU&qPqwdPt3v#QkNzbu@{VR(i&bWJ>k6iB)y)H6DDG* z_1t8skycl2RbB0yFZ+dOZ7>QsBj6xlP(TZ6;|0`hMW!>4<fS=>KyuahdF9yZWr1R- zb{h-N$2NFzVRuvO$1l9#{u47~zJ|twE<>_;2r39k+iZ}|!nv=QZu>Z37g0~&n@h=T z&z;v9*G{kE^vrhgYBQJYex2URCOTWPTb7;G^-ZsTL?SwB+4nFu3B`ks6eEf1BZbU) zkysx9!7$q;!I)pw6z=vifpo{K)*K}C_)0mes<BFyh$X&r9L37*U!Ybw*6VZKAF0?Z z)R()1RYaZAY3XR`M_0TekgDaB!kQVW#kqg1GjjfyT-m)!ihS&V6)ymdEf*W|69fZG zmJO)?fK`UZy98OnMpj_b3YF=&yb}=iZZ*+eQXi@rthAa-0gTK7tt_;NH!|P)K3j7Z ziiCc?@Txv#fWAnU(*1#U9QMcJU0}ugCW!Q?fuNEY_2PmVE*QzH8R~RJi8g=!H4fR? zhwiLUs+A`W9;}OU;T+WXk9TJA?PpQa?V+@WDTBvQX<y8y2U%lYVu-rOye?n1qc0F1 z-tB(8WL^V=MwgrE<V+3deh$+)^H#hAI3?_H*NumjdFPe!pSfc{I;?<79u<j$C;Ao^ zE}(PQY&K7VYaNdv*BNH6zU}>KW-{AeW)p<3BdQey+_ld<EZiv{+La5}9m!l|-s6y& zKwOHRHdFShXnw>g_ZMyn`BT5htiK&IQhu%nzuZ16HVjH=-65D;mK<KiOuBDyjc`|g ziPX>v5qjT4YVrp<91t=I=ttKs>;?Mku8@iq(JrGtli*qxeLJ%2jBbube$2qX>;s|p zJcl0c({pe6Cx=-zVjG#xXmb}N!a3oM<*C4B1lh4%Laa6Q&+6NVwZYZpVScjW^AfiH zUgaBPXgjvXsmsrNgw6uN_82|WovC+{H^>1v7+!-Lhg0&;4G4uSK_wA;%UG<Oo#VP~ zxKpbIWVTs;gn_sTfrQuA=lF^ne}oO_#yrD;;Yfb-LA~it{WlQ8&h%eE2>bsJgiL8m z)E>3DZ2vRM$fT&DQzRq=<oR7YCIkP{ATHMdL>3vg;^x7PXdK?0aG|(}!@a0>>w-oL z_EI^pb3X{n0A>KppVv0?KM<c8A@qkhBP6L7xQbX#loQ-uUq@GXA$s4>e1I9>pO@aR zH#)sg?Qe(ISibMi)ZU&iw&R0d2Dyb>SIt?U&x@Pw0p`yKEsXCAnj!{jr>ql;7>rw~ z5B=f4TH*_+_lW!IDb-al)vZxZ=_|-3EN})`r5GtBLo_XXJv}T3pCD7?G_Y{udOLqo zh44}<`L6Xnv~v#U{yhe4cBFsx{R3S5E!fQREq=|tbtQcAt>d`NG}L-KH6yxqv-(vK zRsHIbf8{!@6p@C%xj)MtADM?IH>Z9e_~3heKcGJ2Q=5*fLFsicI(B@4e7{dNm`Uk1 zf$(GjKRv<j(o*EXIdBAiD-R9TPKL6>v+Vz*t2VfTe@aa<Q<04@puc66a#}3@3@`@R zNoktx-#KjeT^MN58(~U?qYxXx3EyBI9GeVJuUg=ix<fl?0`uI~PpKPdkXFeL<DAr0 z89)OH{mcB5F-8Lyfj-Rr?q}ySaVZgKX;%4<_Pm?)-Tm<3)M*BrO2iCd?h7HTM-Bi& z%LCGz?L-a1?ZFd94Fbk6_baX7@ic>QgxG%A!mPK30<ohZ*MCYvE>pe4y?*StcK#Jm z<OX#Mkk7gXrvy8iwdb@Xv?QqQpPEcsQ7*JpW73^CL|RNpY4^EOsk8atNov0?bp<G$ zV19<HX^p10qt))GwN_Ir1;F(wv@%SkH4a4|2Rpz?!LHW9x~UNMg;9uhWehh<Q`A0y zB*$u`Apq#@07k!lYA0aZqZ<q-O=P9Ug12Q1B%m5X!B!lg5KCPGA$gV=WGA?f;ErJ- zHje4hU;`KZhU(F*fHmzfg)|Am!S;h)^A9;{Hb5w-i9)KNMh7w(ZKcuy(Cp&t2Ow{t z7=46O{_KLsm_5wX7Qt-*<GD_bBa;jvQ1}xDK-nG!=niAeMaCT~@O^qrJXsa|t189- z1(~8slP->bjft#Z>U8Ekx6H0RK5xteXmy?78a;@ALtRSoZXYv62}O{&aY)-FyYcEV zF%`P>20ynxVlSaA4y%4HP`{q=Uy=vqJXk;r?XPJtE;zL2fWL#l`pH0@Q5s&SCNd8p zHsUl$TEGxgkK}un5(FsBgTPSp>89ke<h$6W)=Tbwln6z`V`zRM!G(4F6D43;yZ9PS zci)!4l&ZIzAXR}A^BoLqaQcR)x&?*<I~y5}A%s&?J9;~x<a`^o9#9ew`xjc^WBK<J z$V>4Irwfn}W|AZ+=)#b=Z&LOHnurp$NOq|#{`ov%NL|_fI|;u&OTKo$+eemG*nWn8 zox0xMx~F~qTW(!}%gbkpiv82+{&1S$h0KPbF0nRvEO8RBB7dAfOH<M%cSlE-bBp%_ z9lN&<quTpk&$Wzjqw({POS0vjfS?D<l3Tpqli9a-?4#ha3V58r4ZuusdA*sup5@{P zP<?&ehSL4pV2?*&L%xkrSs4tW+9?3iy9Z_y>!kTmh$hSy8NS_}_dTRrSNKP^Zv-{m z4p+%sPkT3|Hfb}mK(GK7j1*91G5Q)@YVW~_BLGoK@N?ffr~v#ElmNdG`sdHcdy+4d zHDe;aAR^I^d9XyDj1;aw<t}U&@=d<)!o%uiI1<NuH)FIv__6z{|4(l%tQQ3;H_8nc zxiK9!3(_Gdoq@An@bvecy&#s_h;ebK;l%W))z%Cu4r^PPI+=NJ!F%m~w7Va}MAP?_ z8Ad19`Lw~NBCr+3#(czp0{ji%x#me$L%(c4TZr5yEsHm}QcBaW$22E`6oPqw=Fiw~ z)q6z4d;*K0xQA<?Fja$mkjWo|opD;>CLMm`<_DrdsBLJ%kf$?>B;ZHl;YG=NTn{4` z_kl?fGO)MwDO{>CNojEtS7aoeF?x}YOKIQG)bui7vLjGBAl&WPk?`<%-VZma<D^m~ zTj;EMqT%qd;4@f9WW0c$`6M)yY=ezp_W`>-<lzK*?(CWhH6_8@@3<4ciE`_4!{9qY zAaw%7+;GLR()v<aku&zvs6z=5W$w(S;_4AOl{<PkY|c}66J98yD<P{}s0%F6BUJ+K zOYJxR?Kon@6)dt(d#Ybdmx97!90(J@d?k$aST{gvAO<0_0zW&p7H}`W;{h3|iOFZq z!d8rw&a6BfN+4~7DiX*%0t}oL%2^Q_arIu)UY^5E18jK;FJ@K9!)8jOu%2?To1h2~ zvi8i|4Jh<Mc}5w8cPSR-zwl<m(y4h#M)MXRXKq_De=)WSo<yf%nX)QI$Sr%u5opX% zxgA&HoqI5^*qet`E+KV*XR_Mo=JY${UiK>&EkT0t)@Cg_lb;=aeOfDTZE&lo)3M;} z9RLccjnfDpnx{45n31X&y_2y=NwY5e8fr!_tgG?%yMJlMlx)OHgWd<JLuQ(i8mWLs zSh`!9j~}vK>7s#bpr_TDLPH|bp?wDHTj)mH6tH`ibRZ@e8iznW`OW0vSac6&y1OI( zsmxPt9kTedZ+FUjj0~P_5?)rSDHc2S-WsD(8k?KcQ8I!Nko;8BDB5A_LURtC?X&1W zcRHdbx~%heq_`ExL_nKMPJAyNj2=b^R3%fA6LRyfseq(t9X3&bTXyVh^}2C=+htM( zuBlFqt<#b-H8yiXb`|{1dlHU=yWL-SMJl<~_e30~z;}li)?sVnT1(9Z3xyUnknS7` zii=3Gp$FyrL$#_>L^oPd4z)OAcCvX4hmSZ7r^WQH#`g0P+^Eu|(4ldsKK>Lfm)~a~ zL(y$xrAb1@D#-J#$@e}81&LfV$mlJhFanBRq{~oeJCLfl<6TijP?apFL!5vc;cJuO zQTQ6n{+Ny2!?YI@9$9);`-V$b?y>`!MwD-wAOjr>stVt#iyN%N@YcBa@UhVW9Q+qq z-{u_48O-6r?cRrycmcwQDKf758-cETf5h4v^tf)kJ^#u&l4LZ@k#g%3GkxDFkX)zA zSX4sBZ1HtmHT*wfvJlSc-Py)ijKdN)lFE*=vJ6D+Vblt6g_FOD0R?HOJTO?`E!Q(H zCpMpn3P+>vA?_TPG9L`2iziCw3_tF%7o6w;E!1VPII7z;L%7xsqK=qiU|)J6Q(mmY zOVxH*Y@lE$_s*e1B+J`qRrnnZX_)+kB<-ex;C7#f;SYG0<WOko#DnY(zBF|GAe5dN zd<4DHM;2*iT$#5h+Rm3Stq^bYuUMXbHOs$(sX$a0ekYt0%tR1fvVu8Hh#_&j04c+d zMz>-=Sr=gfqk}npPh~RdUFg0NqM@rM(ZXle$F?PSn;XZ<Eu6|NoU>ppzZ_1Do@%vs zti(|erH2aNFe%sNiaNw-I*CdYu3ZyZ?BcW=4Kja;PTCpM@=}mF(c{Zz{JA|K+vi6@ zA#&|(CMZB#)-}nO4jhO1yth>4+0n8Wltt%&f$7YM`1~3}LSk(Z3a!c0=+p`c+KGxf zXT$+!t|@tqaLyEo`RxJQ5gO3o*nq5oBbZOpKG~_Fr^rmkos-N?Sz+5iq%jXCNnF>i ze<G@V))6-nSWGhDJmV8QA$7M!mMfsCyejX>v449uMzw20JCvLBly}S$%yeIcX_gC; zf7o|@-<1$8oNOkHiSopp8vR%@Y1mnT?6rQmP(2G)M5YiS{C-|1<&sD3)M;aR@2LU$ zTrmYyaF_~qur0BU!p>RIp>X(0o?=-ifJ|!Dd{SSUqPgKpra|I5cr-<0bY);%X^6Nv z)>?IWl$rZ@jRggE&PR+|@;!O1*_Ozcr%WU0a7>XO!SGK4d|dJOuiizB2zniJ2YuiC z7f4pn`2b79&1e9Yi#lblJ;ZXU!pIYi!B`rqE!zZKjTlwf{+J>&XURCk2dX8L_xXk; zF6TCca|U=^v(+hS@8r)ZN(xB&J1#VuiBJ|FF&7I9k^lE{DT9i*vg`2MvP`W+CsF&3 z8D}GDP`e^T(vqW=3<awIN-@6GtCS+TSK1`9&@H=+3Ja`4<_V)Li^`C%mi}Nz_4TgO zJL3#8Y7!74xliTeE>KI2FIj4XVj^=(vp0rI{3CxaPzTFysMhp>h{nclaWas`#j)0P zt?30jwhNs)l1iW-c%@Hur8G?EaeQ>Si8}jrwQStyQ3KVx?2^5U+?YYc43D6Ly))dz zcio4JUDX__e+Om*axH;`5W_FUDf)-Rb#W=KnN=@BT2d(nZ+wyv>3f^5>{(HeVraQi zB8<?ca70y-)apg6GKQu!>9QZkTjKIFbCJk6wX+ge;o-guhuD@=H5wR?DH)Pq?nYS4 z_nn6*nKDl;$zp8x1aizGiwu^nH^E@ta5ijBaQPxo4G!#2-j{*Xn$WA^1~E)yfsV_$ z&VjoV^On|`uw1GPWYxl8-46>`+nBj2<4uI%H+89#=XA9ehu!NT8H9w<YG#fGm8JdV zYa?fKrs1pO^Q~&A>oCJBywf(Hal0bF&kx2!d8U4N5in-2Ll*H|lyOZR>E*>yz1=8> zu1e^QWtsL~k`q_SlO;2a8tLBD|FT+YylMQkUg?m;m{5PhYqu?MNAmY?j<4RSQh%U0 zuAJvixJ4)3PmI9JWzx@8j1sMt*!`VAC^S*{_QUgIrz%@JEWpv3Vn*W#=BweZ!N|5r z1bCP_h9NecyRxAf(2P%Xj-~TZ=*U{(7*g2EPc|Ql?^@bM(+K|J-wJ#;K^47{DEFo) zA=BZ==#K3moGAD_f7=(Sy2|M!>C_GtbxDHUGtL<##T5_ZoC<lK-C}qkZt4qF4~eOs zPHh0ybc7|)rgD(RggI%JO%CB^GaM;?PV<vzj1{M|(u>y}DR<Jm*dQxX!&v&NX$PvA zp=4;c2z@Dja12BQ941u?8rk}(raUV(NJ#?cC^ynR?41Jf=Mr;5$Isc`@ot3z$hBie z7Yeyf*&l=-T`x662Fy#NP5usJfpcoZbmlrr39wlU_%}g!9Wxcf!-eEvI?4BD1-Hf^ z`)FPa%XA`78Ib)*H{WHhOqJTBL3CT`{hrmK?l&MvB6V8pPTiV@E#q$^i?rqPm~{<2 zHhm=9?W1Xt_w9XvQP>xbK<LI9Nna92Bo=Sm{OAy$z~75mzW@#((+=^mpUgsdXv3#_ zH6W3k*JUUrox~wjbmZE~(43=v6C`4tZGI4U!~cBlL4v;<L!V>&svZr-i9*u39RZ|+ z@tU|5rOg#b)4ujZP2J%)2D1W5jLBo@b>Lk<s!(C&CMYsjn!T|#BD3y%Od>~e_G&@f zQQCt9nq)nny2q-u!?vJAJrKIc{6<QIJ{T?~4Pns}G~Fb-u&J@5GkR@9EoFgxrm6bw zW4DCf{;a&%=g)^1>4Vet3TO@cPEn4W&}mPFiMcg8t<VwUpnQQIVpn8RGC++(y{AAB z?qK*u^j2-~7NLa+rlAwmd<C+DlDeQ138sbyAGrl~9HC`{5YMd+XocHRHkwFlcm}i7 zz8B~yOjVdGK%=sCcs}ZrIDUfm%{Emy&ypI+pN~U@k#3gIN`_jgpSU6^kZmjeI9EM_ z(OL4#uF=X9ruEQY6He|_b<jQP@^sB#Ce$X!d^e%xAwHKdA`u`b&F4}lSt|B?+0Hh} zXC>Fh6Xbjb0!9q7mPEPa^4}Cu!CDHpPZl>zxff20J)_^8jZ<bR$C1Gm*DS8Fp*ErI zy_occz$}+zMBj|^z{C77(Iq{2P!A>vbrP>tNa4&stD&Q1b~Yngu1)IxUG?7539Ww) znA!H!(ZMGr)OmXXNcV8P(A`L`aEnkS>z4VfsC???XA`)>(57@Ju3k~LHu*&N(4nMy zATwRlR13K#-Q-<OP;_JnxBdy<(%9`Gj9<_bDldSFksN6wdZR5~r+e^$PG6v$Vq1QD zsu12c)g7K{W5xj@3J=0AtS^2h<FQYEXH^yD9?vfI-WSO2N%L6Jq23c&@i12TD@&#G zRPF+Ej&T)~z%ot9g6W#9xv|45L0z9eNHY)2hACE5=0GxUk}}9;f^e;F&^|5~A<%#o z*L-mQDSFkM6L<7hJaV!XK~8uuz2ohMSLiyi$>brlV)uX!J?babW6&491%4~l?PP=I z@jZXLf6Dbq88-Z-vAI~iR(0dNaBQ1yC*)kn(*t+6B*VquH_WZBIj#)RbP^6Zu>fmP zepR)MWvx&cRhOdwW&)4tGBVoXomgkW+b-6xs$ZUTmsDSEwWJI2@HpnM=zxWH*{Lq8 zX{xmZC}%y3+-+5h56sat;>rq8L3TxAb<j~^bO7MWcgTMI2#!6buZiP6w!tXmd)BA* zS{wP%rG)@M)Xvm9%^#V?d~JT`DsvMxu#PgE5J}hMKD5M$J?jrtf7@}Z)Pm9(KR~^j zo0i5B;WPa0v*_lq^2T0vv8WE&?9l6sOLM(~k_x-)FjakZ+_W{70BI`jlG%-rDKu`5 zG1Vy6yCO+mh!UNI#6tI4$YbnrC9F{zF!ipsDt7vKl2n-@So^1cvw}BF9fQ|W!n24K zI;D7vVC~AQ+h^1Y#EyMMg<xsK%OIC_?R(PjKB8H+Vu@0kN?29G?ru%GXqK*I(|L3` z`z%q3Uv7v{?4EbcVd}dIL4xB4cHGQ8RgGy@HUh(R)Xa5o9n5|OO~Q3e_^#(ot}$zy zo#$fJP}(sPYmAgcp!|TOp{8=3kE!j{ift)D6nE8WsuQua)QjifE_*Zd4*WY2MJMd& zYJMfWB1@m*L}~AE)bxyf4(DEG>a=H}y~5Nsv!@)B4VQZ7obzJpZgb7&1Qy@@62&4x z#Ik<VJloY{B}}m7MdmrB%E%<=N6=ac&$!J={6bxQUcNr4L(nQ+L1JgjGAGg+OrN%m znpzAicHU+sz36|043fITo93WGYW$f0N40bGOq6-%z=)oF@JX}axbuRgoHS9RS4rQi zw0)@}S|sqQ<FYx*T@N@#h5E>JJHF<MonNXZneRM|=V$#9L9#jTIoeWwj18h9XNfC) z^TOEOvsu}+x@qs7TI&z1{$Hw(?wOS>bgv!AT=Mf0U%48bZSZT&gX2Ym<_%iba>bsT z9E78TTNkj+JKh~FXd&13^{@?a6M=;}2QU?TH49U11q_8(>ffGHfXaxMMBPt8*O~nQ zJE*5eH}GHHCk7(DKVT$dxV{Z9Ayl0}PluoP3Wy4Z))_&DreS9R!OOWUZTTCspNE_W zmr?D>)y#dnrrfHP&Y|-V(rsI>#72olhE=lZg3Xn0O8o*8%-p!B?Ny7X_diKuB2V*4 zjoz4j^Qg_*<i{{<_|C3>ugWVV$5!8uYk*~3-B~J$V-^>9VHvVISj(lE0xqqW*>q_5 zhc{fso{u@5#tu<ZUm?cZ7v6f{`qQ(A*^bJrbb18@8nxF{46d5`MWjf0m04?E7l*fL z%_=Q=WVHP>1)pev_`L6A$!%Tm1;FL5+6dzPs7ujerYERcMF=|#K>45wHt<ebhRH_? zzF1_+bc2RC9r^JtfH?L|G&B>}P=%FQyKQRmpTcg&=Ufjxiu6*FjZO6A6CnldOP1a@ zQgmKN&Hsq9of@o=K{Mpv<n?_O%`|*T-ueU*wtj#3!7P~534mI?Ey^ZO-_6n!i3nhc z>DD~qq>U(e3p|Cp_b3gu^5nww%!}dO0#<G~+s>EXg)DAELcRx5jjieUaDpx&Wt#*8 z-m}w*-X=qRx-|coKrt~H<Phd&jTbaO0J>a}AJ*ljUe6M)I&y#N5{ma{?yMAg1eFPT z%2FrNEpJ%wI`>Y#xs-~`Ro@k(TSZDKk20v2P3uE(U)T_4JNz$v%fO#9d((&r)xh*{ z4{vyT@I3x{Bls_P|11YZ;r4h4=N4H5+h57@+AeA3uhSkC@;l&dCX4wty5s3R^mztm zobg}yUA>h#NH<YTX9>EXcihbMZ*l+ZYY##Us(SIgWa$@t-vrfDk}<CqmYe-BPrSHU z-3O<%uoFWun(IGZeEs$qC1_yvRJF~uCMNSZ)uQIE)rBe0s!Dsfs#AenthMeDHayIS zxoFUP>4x*RJYH}oe;=-g<K;G|#2y2a1?|Yu_O=RH-&Wth|NfRPMq@b>D~kMFNzEZn zLqy&+g{?u{*Hz$3e<IK-IPY+pARjfz#W5IMrJ-L2h3Fds86%H}oF5TY+`%iQDwlak zS4pHBudX}jMP`VJ@!i3=#Ptr|^!RwU!`8@IFi}7?{dn*5k?oW$wxRdt`^TcrAQN0y zewXFXJxEIrmm1CK2n!g=;o3#g;plY$`N?*!$E=ik#M-WO!{rTN(^l<ERecT2030V| zGt;ivv~}bPC&=(DM`yUs&Sex)GD=XC82JXKGR9iAITR^&L;bwac~2*Q-ecR8YgB9| z%b232wI#H#oS2fZ3+>mf`M`#lhebd#z68JCe}KFj3RwRuI${4m=!Aup?f=(%@PDQJ zqYnS1{QZ%!B1fX67LZ_*O&;Kgd4X3waL#q(^Wxy5aYunaJ-zDbV^>SgPx)r&@$JH* zqM}~)#DLoe#1K3@;2*dH)PY+$4}HGxuaS`#y+6Hg1Tz568mEkj+ao%mLv#oA6^0?^ zY9ZZ`EU6eks$NL054PYtL68Mhe$q;+Haa)O&fd=bJM!HN>Y3dq-a>MKFJIU9-NX%E zZm(Yig1k~HLr6yHFBT-HAs4<-nt~#ShzrzE#o_Wv76iLq?r)RVBfKB3&(E2k&k?<! zXIAMay->cdx0BwluRA`rs0f2s01^DpSC~l@OKFyn?Ct{HS0MMYMYQ_gtdO+f_L>L9 z@H>}DC*5O=6vjdN5L7D~3z@IjR<V^D+&t{|(tM(`t2@WF$0NtbRIUtNTDALmnXT!K zUZ`KA=j(rkpHZBZpM#!y=}kNHw#Z!<ADg;(YBqG`W*w~M)JN)buCBIq?9d!8YXN#K zLQEy$2#7yFVqyC?czgo9C7LM~*+fCK@SQupL0;c0L{VS?=men#uf1ZEM&%AUXKRQ= zNdw9&B)?OPnPmu$%c~|3OBohfRyc~;Cto{*D5?k$>SN+I+Nslxy(X!Qd1}yj&e>-u zc8#gypScQkYA~6MN=#rm22s)F5qzpJi59W`iLGQQMmh!&LsMf4VpNgyQi@_$Q)9|f zG(8#>mJ+0X{Z(#$?0Gb92JLk=e)?zUr$O;d(EDGjl?BCx1?kx)#@fQ>!jfZyk+IzU zM&ZBNVPrIBHzppp8>7y|xb=ocW~)VSoM7zBw+o>DNxUB&Jr0GOrDm?mxdJAbicYST zU_N@zoUHiJa4Q8#7R4VCry8ey(Y4H}(92DmU*b}OLhOZkq7L9rhBX+f1Y*!tn_pHx z=Nz^mg@IfUrzD#~G)g!Du4VM0HaK3ZD|QH=Ib7417J{marY9b}>#719W<tkAz9Hqs z1x#?FBjO#i_p?*e>!B4=qb2%RAscCuW~o+HrDWVAhr=?)gvV@m&AUCcsb+PM)TG02 zFb8smA;u68(<ieOY1f&bvPSWSf`#M?gGg1m>mt8|<J-#aQVbg<v&<0eB^_*OJ3Qx8 z(CZE(8tBY(&j^bI=tR26<k3aL{L4jybo6C53pPsQrw;#G$ori()U>U+pYi&607v7c zbC<Ek94IBPilVgux)d5LgMm01Jgt@AQ6eHb2rsl?j1Rh=RIVSJ0#yOSw+smhR6u1% z+G5_H2bGyH;vPQHB`cs?jp&czG%NDk-b~`3Cu~#&*kt#gDh&%p6}=>@kE$yGT^7pO z08mq0zjA`q!JY7jj2Z|Hrbs^DR7xkMIm89orK`KbC>$|Bc>%Nz{HikrG9MEi64Nb# z=r6RkZXcz+<N3FbXH)h1_ElMGk~7`*p9S{#>0B#CVxz@Cgt!e5oV7&A9%TIipGV>Z z!@z3w<Km!VEyxyXIg}_^KP@T4kFKMojY97Q<kjif`IY&_@2}@mEt|*YLfyGJUNZ7l z8;y^Wt*D%THmfJ*X07G<m8;34p2sXpfuY`P{yn}QTuv1ozu%!VbTmGurNFm)gBEF~ zI2v6QV2y%LHOI_{Pc9@cecHbi^N&y#%?VS1V+NV`Xae086PS3?$FloA8s=;NiMS5E z(bWP+G)yKHU2<$t6;~Gt!wLxt>nlO3cojSgg5Mvs{-kGNcm$T-dHRl5=$#a|TPSDr zu9pS-IOyFJUdKmi^{i-kvlayFkYvbM&~0aKQJ;<R(BHfEfE*B3N2<cFM5!^m<7Gr= zu{f^t-wgZyO}8%f-f_fPVVqfdj%M$(8ti@ToSN!zA<rEZ^^4=@nBf%D0c?94K~bGa z4^T4uhQ#CQ^K=-1XqgbEa?7pDuItw2fL3ftZ<{_#A92(Z`^hZwc^N9!3}UyyIe`%1 znL#+&YcoQ@Pt^_p9uoKw;fQ16KTXi7wlO>vmHBm?Rhq1EyK1U?aU(M4v?nJK)UKI9 z@)k#NgrV>vh-`>^e7LJ<Y7deQc7(<AM1~=`L*hWiaC;QRp8;K3;^sm*_4Hmp<CM{d z;0=QjQa?QLMEVg(Kn;C|H_H;Cm&JpR!ZCfAs#vvj_bWrPt6CcZ+gdjZm(H3JUp;1X z#KD}UlKJ1~qDJSkhoWcKMcKoJYZ}Q5X&!%7j(I#Dfs>ik@>KJ>9tAAc;U0V}2)m^# z_*D{c8(u21!G^tq^_VVy6Yk$XS)L@(sws6~TKm>2Ppy!Lb}yxq?Y=<b4b26>B!;n4 zNWOALdoYr8b`xBTo~O83k540ol*wTVQ5&;WR9Ls>atY^sE!vM7T!<EOw33-JA=PWY zw|ow-fOPkRhq*+@nq`b^du?YjT@FiL_+ctD1vv1!d|3p`pGms*s_r8_G!>?MSmP+d z9;6Mt_TPI(;OHlbwdvXOvq(#`hsjV&AWen3+`=L=mTVbb3d^aAcx2wyvu!>j1L6jP zKOqzW_VjLpx4%TQB>eBgnI?n&;^dUz?(R0rkDwyoq*X}7XUGpKW0M723YkT89=6u@ z{Z;dzLfum_%{5R;1Yw?5fEOG(oLhEhzfFFLDT`^9F9!NUAPk)Bu!^C{>MycxECLaw zz}r16?S%s0VDXWiLy>5>Mxph~$V?BjZ4{^EiBT@isObXK=k(0AHhu|`^$ON&`gUnz zofGcH2;K45?UzOQ2e8}nTZ$Z2yCy0Zr?crD`$-}JS>S!tB<L_#fmJ_eZN^Z%eTl(h z%@xxU3AFm40(?z{v65tjheqAg>0Q)nhaKo<X))omN+j-G?V$08fiP>BH27FWde~bN z^8)t*5B&_}tTJeE2;dZ!O#Fr#J{=vrqcy7W8A9Wvrzl>%7AYBe%H$KBm(1dVYBm|u zoOLF?DfW@%XYx~_0Yb2}zpC=i0$?M(V%?*Q#<~1_+=(p0#bCgLHRdgGaWQBcWpNUm zpC2vs7{5iRiN;grw&h{{z(}+p3RP|5c*02a;TAawntAq2O|%`4%uxELicNswM2`n! z;U=nLn?&jGHkdy0$NlKB82XW=7LptfJuf0EF%!?PG;A$8%+zObZ4F_8p`T42%s<Uo zm&}el7*V_P^f=?U%%6Ld8Mkbtuj1J=e`qehFxZNaq~2-xyih}C>LQw>mF)gOC_#H) z5y^8khyDYQiE2pWphiTqsgeG(P5y$jO>#*EV|TlMX`DD4c7o?GEl0aA0tHC_6^{m7 zxQaO%1+TJRaengyEoZ2t<BgRJ+nC|oHQLeqk|_YP$hNS7utwVwXDp67te{HlT35@; zRN9H<718%WOIHvm{6PCLAMFW2<wM_Z;lzM@cC0UQ0;G=JUDLI6c&N~hLJ;-wgz-Ho zFl8M4BA>rKRdQ^)rN=ar9V+&5D02q&!v4BNY543=cPxj@)>8yym<%UyV;D_Yag^J1 zR8CE(Mc(hy<hgmp`(h+_gMhu=6gsiA0RewmXqBMrRBy<eHFZNRt`?+ydg+<f+|#FL z(jHrnEXrL&grZ`#5T7Ebl1X&smSz+5NPd1xIQM2G4i{p`B^gc~{jFz}UH1848Ya~F z!*Rv=uk(FZ#u!dfF`8HhcTlMNbvn^lXT{<dG(Y_ph199LOzG0UtvZ+T4Bm_hRl)I9 z?J!LQ+=<O-t&<i`uFb{Eg{AWk))T>OEl1d;)2*LgjUeMRDX=^?yjSVM;;TtANz@7T z%7g=-eo~LZJGmAs;M>?A#j(e1u;X?kdg*6GOkl%4YF*bc7(|=V_N)^qPA2BO6DZ_= ze(=W~NFpTBjMvB(<IJUBE}Bk#(n#S!dd$!v(bzbz-h~yKKJSU<JaA|@Z5ssEe~2yk zIju5d-D~4XLK%?h=2S_eB!y6pjh(ko@hp(`@LO!WTSylx9`K~~*h<%2_onh+<|f0) zcE&Xum$yIoc-ZZS<dYf1YB8;aY{_Tj`;SWppGk3w?PzG!*U%ik26-~U^5_rBLk{9X z-nTNhcOB%OLh_VZ(4;Gk;KLG`LZWbbi)|8mg`J+U)Znja{)${dOb<m>&9m&_<6!C{ zMxew!^@jS8#JJFq-?B%EPQzzX{H1Qa&0p}fq;Q_9D$T}jAOwKeZu@bJfIWDi&bBTa z)>L1WuFg%?H?U%<2R7o|ys4e2NX1e$E*>T|+nuObIafAt93A~RL7W_L;7Ok#gcOVv zX@p!UTUZo9&Q#@XvG9p(zi%U5=Hh(gU)@Z>OJ&Wvjqhb%_hw{r=!mxWLB=V$+kUVS zD#)eur6%!&6fw7*MLss*g4mg4|3_HXQ!k-<YnkCY4X~oTM{Q+w7<ZA4oDfIoQ=SR% zM-Q^!87wnScvqwfjJ`lYX6gC`8;;(k*k+Y(j?=C1#|GxFmSI@3H5y-uev`dEw=z*8 z8y=E<wJ-LS^S;7wiV_Yj$1L0B<GWzJ49jsezuk&e3y>t+$8rAv<l_*--}0eBXat9; z<%@z98RA65BUd9Es#NvJjgHDk9<b>nDrh%=2B5>2Ja-~}ECweEB#$?3{Z%vDmy8)T z&Fr$_D@D%$w7e0fxM^4=Fpqd$6gtTk%P_#(WqHxdyo8duyoou8xhKkW_%lI@)SxP` zKN)-@&CEeG8pP5Yb+&ASYkLamMBs{^JCa6+U<`V0dFZlLdZi4{fHv~Id4TQ5<Cw~& zVBS&URU88=!&($16!eE!!l~B^Qr<GSIgLuO++=i|N|T9V2^{r&g{Z~F$cg8LSf&`{ zB*+@HWic2L6;pkc)xUyk+ZY_IWXfgEg%~9T`zZk~{8DkWpfXD4RChe^_<b<ILgyyV zCY#FQzsC_pZk=CZ)S$gmby=xm9V8}{WWo$f{g4-}R1^O%0@HxjOW4MxR-YWLl2gAS zOk-iH6C_RPFIS@va#PB87OkKF*1RVStsy!RqLQBW9~u0z-ERcSJRvN3`iZ6H<Cd#m z0&RkR{~Ya2n^(#q_I2Vg&06>8UWH_+%QfW7e_akFG-2a0KC~FuvREbzER`o=e`zUE zL?Rw<2OIqlW9QT)3eaWQvTfV8ZQI5z+qTVHwr$(CZQI7&Zzd)tCb}Q`CI3QZp0oE_ ziZ0<BMjX@-oX;Q%fkZsxJo*0MsUCgV!gf_(u38l8IuKNo!(EAHy;D*O;~$jsR8y_< zj(H?HvO=J*=ZTGozId}T;m<@?O7a*d_c?S3`<<(vwhi3m12gTi9-Bwr8ntyW&OJp< zjoYmn2_bE)@rDi+0~yPCLd;>y2NBWP9E%GtVph4(EIN!T-Gyi0bZg{nOEWIWvkuap zm^8OU>{)0d{Ic58)d_KiQ5O}GU)6#f)1*`_Trp3Bwc?;0x(;)q?f4dT<58-$P8$G3 zdV!auP2@8uU*lqgmGs@W(g2cDuFJnIMDXQZP3>IHGE_M`j!3H?%vsE6-Y<%*A9*OP z`^Y)X-SFi$5<ljPEabCP=|;sAD-}9b3jso!hqB3P;>#KpU^g@DVYUi;Vyh=(n9^|E z(cP(Ej$Ra`EMECK?+}hrXmZw6=(F=lKroF%{j~5_3AApKD3FO3eX>x<zcz2a#cb!p zH+r-|#r^_}@9aV^9tgK`$_GHuiM?es7z%kU#<aK$Oee1!NC_Cp1H?l<IEH2jwMb`e ztx&8&>Q`_q?npu=ngL%X9(+I>5<H3JJGG(eLKdmn3Tx#Tb?ITwi;+TVO95%Cbaj6R zJ#TQ`)1}E-V=L!Ucq4evu8~94(D%vuc^Y^rp1DMKUTW@66oBiCi8q-EKHg3^765nt zGT6XqGTj*MmlRrwNBwcMK$RneT84msq(>2H|17`IhAKXyh+v=l_u{y{COkfL^O5-1 zYvkJ6Vac_a^@+%ulL6JGaj9DDNTBE-WX2XKm9?DE`2*4jbs}$HV^-*|BNNuh=381+ zbj=Oq&$Sy0Fx|S=Vg&{^$og6sFf!F|Sx}qhVl%H6pos6Vq{?ky)(3?#4(1+jWXEpO z1lQwrUvL);zby7wtI{>JBm_*vS;ZxCqua$#PWNwh?PtzaNg49s<4wbGn@F^FvU58U zJAi|%V@7SmFzMp4uF6xP$*ki8Vuw5w1U8+Fd82?6{yB;?zEU6zD1GvBa8$IynVz5X zIaA~Yhvb}l_n%9R`hhhEvKeH$1saNVIb>VS!Qi&fj>*D7H-SmW4c_bXLy?X!4URh) z*lR+n#rLN!r-*HYT%+J%c&@3sIXQ()2!V@Sj`FaSn80Ft);H-<Rc+0V!3B<riz6HK z#apXYnjE@oTbAnBqw7v6ZrOPj8;aaLV=b2qOwDq@r)39)!CaOP{Ywx#hWOZpU=>f8 zBNYrko=!q>$;xk<FUK5ap4|?Xn6`7sPak^<8KtjJZ0sjHrA2GSArY(%J{JfczHUr~ zs3%L`DAB=hr)Y6SJj`|G7b=jY!Bd-Iqum|YmUB8hJGTY{Dhh^xFSMKK1FfM3TYa)~ zY83@|u>i=WmxB}g*;c)CZw@kx)l($fKL>0aHPyanD+|79!mNehTM!g`IzJsod_B!i zSD{MbZx;Z3)QmXc>ld;b$PO<_J{ij1J?Dz9V#OwznGBOhnEKR2en`#Z5k`w`XFf%B zv_Dr413rKCVGlFxJAXL}ma3ansRAXuMdhvZt4MRP2ieu4gl1Vx3IEc&)>iQvYQH^f zb%|2-4`o}h_m`gMnMze^D%M`B91el5|C1wk@Amu{`wHDqC5}O$OE>5oklOCECEpeB z5C((s4(ZT^HPDazJ#EzW_~N?J^wlqOKJu!E5>8DiMds4}E9)-f_$ihh;!tdJsl>A% zT_99*?`ej*{BGK>2+|c;xxPYuuL}6`^lIB&c1hj(aWJBOswSPOf2($woPUtsV_#3c zZvTi}i?xf~S4wUl^Tsj2-F*>^v>q&PoE4MTwo0F}8|JS#9d@ALU3?%h3GSq8s(wcs zUw;sUhu_uPhJVr|wUbRBnrW#$bw22jS6Nf4UY3g*PAu*3ZZ~|&{4vb3tmT*$@2oIL z<j31tt_Z{(oC27_XOkv3vPe+xL)ypw3c}|EQ^`~{TRXhysgpjB+4MQ57!WWqmWQMM zwKIp<a};RTG<T}$%44OAE`N)RQ)p0T-$%6rx21wE)Ssyn(91xX&ZmZW2S`4cnVNs* zMu8CpwiX6ogEEzbExUUmLrS7>c1VdoXz9Q{b-xhOX49IB+IMPwmyb!J0#|6$3<1{C zB-S4U2PC|=lCg9<!PeC6p=tVC{+H`tUcL?rqJk&+PgFW*Y^!ES@Z^eQ$lxP#WvPxO zZA(^O^?t>IW99T7!bE+`zyuU;U9AhAlF`{RE;nzTG`E*I#4uDHLpV*_mHx*jLtP~` zBvb2Gr7%EFaLZMqAB)I_C)8U(X&4(z-;8<_N7C^lXGuc)7;D{EkSI0RJVF;~YEMVp zzitj%@7u);UB>ywZn54qQjL?0eOkr*qWlDacR>+?{^>v|(kr)7vAbi~KGlUTLQ$;M zejM$M_?!e8u_GKsc)mXtuc(HV;1>>!74wp7*qB0X++x1xLjYsXcKvqp+Apvb;V0C8 zH+<$~{4c|2HWp6S{}I4w`akA__WuBk#$r<G|Kd0@MT4vStpI_z8*shG(pobqCk3V* zdl=}wbuuzY<lO$O@HAwB`nDy*gaHfc$AEJ>^SueZaib6V=HFZWX9mDA=8s#fbLM<C z&N*4~`8+<x@Ayx2fBXMN_jfxS-bZivf8HMTe?A^|&*FYR956b1lk$GwR(HFD^FL2h z=e}2^$9&S1Wh^8RVSO#|Nnrjz`N7i(pR7gtK;01?%s0Xy&uQDp%V_IA`GIU+{?@}> z-P85)bHn*1>GLXgjvl?)!v>6Q+-46ZSKV@xO`0{hd7Cw+m0y4<Z$9o{Zd)zAo^GAi zZoIsNwVZk}qw2NG=1x5-sjJ!T+(<Ea9~{xn<KMZ_n^$^%LH-d=`a>>I3f(i;-d}+4 zui4c6S%oG5UYw3!AIS1qr!+FYOCkT7xW|qnnvCcY2MCL)%Y~47{1et`<>>s(J2$)$ zLtG{F6Fg7uV^YP@&nBVOL9W8lEqP^}I_8wVXF2oKli&o#g#~yE2nUTm-lKXlg|t&Z zloH=)$|-3Kq1O%jr8_Cm3Qfy2ADgs__T$W$$_!m3>$Zw_ADi_GOkbNdOHQ(Bt#I1O zTCWi{&YqR5W*%j3cEJ{&R`2CRYmoJZuj^vOKa&o`W1;(E@vyxF8qf`zuNkGL>-5j@ zp1*dPJNjBjxhma^sV<r;F5`rPevZ8Yi%wcA5m>y>RvMumIHeTyryQfKwTP~6q2;lh za)h%FR3jWE(JLw|ELFx@r!GU(_FOTB1C@xDF{zWm-)sXdhom#9h7lGSYHQEU_$#cW z)(nX--!KObnn-NZ3$<(J!hPfZ>cYKy5P<VSOfte#%wT@HpDy9<yhQ|A!T!}uMIm;f z7UR-mn46|Iql~32F_?BKzA%Kc%q>isS)N(kmn<>FB0%MFd*Nt-nON8i(UVPquo48J z4zZIwE(m>C4qTuJ$C)NlgA6eoc>?s$mslf|G}Lc{O7I?<2S@}%OGyADcn$W9RmyUQ zWnsGv(H;=UVp^XNwkHh!PIFP;@yatCK<!jKu!|Y@NCoh`FoIYISpo>PE0`(ZheBw8 z$PtE8Y3UMfxS<e$Mhv9wC6EOfl)G#6YfK(l7PUtF0|Nnh6cT})1Q8OI$({_*Hsf~) zD&SxejE8@~B{3`)u+bn?ox#apSm+RS1`uMXQ>=0b5PqNrLGq)G*lL&RS<e7Rc;@1r zKI-ZfN-<s0M9`-&BgtRfy;xrr`aD8@Vz)O2zcPl(2rqex0Y-tOT8<ooK}Jt*?f$p_ zK=wH?>14PywSIJ^uVZFj2lJHg)!reLXSm!1@j^Hb(pF=Vh!z_T+FE0x*Oc+VA0yv; z&FwC$C1Q2fO4G-ye0K?Eg?Q;}nP=J0&&xvF=4<&Mb*L<NF_rtYE60L5z~)^m=Yq8I z-Ae7mQCCZHS#P*E>utdAi`qNXihqsga&@}dx7z12PG8^mkyKVe(Yl_}P5&2!mfg&I z?~jv=u9laE<XUTOuQUHQvdlrCAO6nI-SaDbZZDtVhaFgeHn29tp*IGJZvgLr0B3J^ zNteOeS3t_uHS69jVhZQsHG~=Opx><i&N$pwc_XL%chdnX4Y)UTS(7ZLcz;fh4Am$z zl~dnLAR$*g<_JWJp*iq+>iOPl)$arOmtUQkd8#1;bFQ%`@eVBh{cTd+eJ1_sRT$>i zVAC`?v9bbR24t)d4tcm6LV_brv>@VT(iCz3rsuB#G=p{}COJwhw>HwuzOk@F=5m++ z&RvL|xRN-3{!OxT$$<Qk7ah<0+Y@GD!O;<K8_XV{HmVJQ$#Ht2H7_A&z6_-k9G$Kd zzK@NoEPev$ZtIpkY?+>UW`4Zja$jpW%~O*M?$(L#H1g6~OSp5v*qkH?mTBY~Cc+7J zz@@X!o&gvhsBhyxOwB!AlMILoT)r5gP=yK=Vs#5y_E~S4$Y!l+!33&k2;PL*V0x59 z&P1A<(Y6+(8S8C`y7HMCn~-i>Rq{+L5PInCpH1t|JF16NpLYYdL2O}1!_ao*pqK7W zFY%J~?J(SFP){Rp;e--~!LtEMn=}<=xB8%ch-(z7+^k!JWyee4VI)$f`AG;B{4zb! z=9Yf|Ckjqf@g>>w@L?mXdV5yb3IflocNl6^{Us^dsHafahzBy;LdEZP_<Rkc+Nme# z*Ie%+aVaV%q)e9vA)|bm@mMc!|IWI;q!(Ua20m#|(^Q&u^6_oj-VEOI+xA(vky8WZ zKV3%3$x1du$B--P*Wo`OcVu2YGzr%o31n(o<2W2#=<y>8pV^vZxWAH<!E*&IGF-9R zCD4>CDU#w=us`LDIcO2qUst{Zwh<zcqTha2tq2zkv_WqtVOJ|TQ~kE%0Rtw_-BaN5 zYc)7tAc2Su^RbG}2&TOgh-4{XY=%hphfT9d_#g#2J3DfBj==`C+W7U%JGE*)9`v1G zGeCUYcoe97?TW$NibId}#}LOa`)rBEQ(Y}iZiqAkR@x7qM6CxPo8ifrYJoq-1HW;< zw%>yXwFJuk-Xb_;ttL#g4nI0~YoHF6|Fpz8r%4cq2`oxr(r$U#d^_CLPuYD_^~7Z5 zF!KzM%tVUw(0que!}7xuFyrY%a{(vPpX-?UK0}R5<IBF(Igt@Y^7-_%I-eYJoU2pd zxE>jQjq~oF&R{l9gi>obtggMyv0i;WI|**GEPA2&hAE?YBwHQ+=v_@SYr8z!Z^)*v zZwBK;do`g{WI?x1bP**CeYv=i^gU*ZtsLSb6-{(6PRQKF$KzzmiPb$Lx+UD)61)t# zR(6aY_?3Bimd=bN7~+iu;)o|?)86-0YmE-+97b<VC?Z{Tw|xE8{}kSR);MX%TrXF3 zk+R_thb<$e{X8_+6gE05229~Fl~tgyR4D*OG@|_j*%vIkn~dWRS2D!g@pLhu=-o2y zoY1oPs)LJs;cX>mQ>Z3RxNoU>JL?#nw0^Xon!^)DP#Vl@WVLlYFCcMncZql4rBzG& zr4(Z|SUZtuF?a0HG@5mh;=ms-4Hbhn{bd9@c@!fKa3%hE21qz;sjVU+J^656U1cV@ z@+GjvLa2;85WaUY`W1(pUid5cK7Mrz4@YLVf7ZWpMd`^0;G*C7${6A0ZApsAeWtDM zx`=#vP0r_5k}bB8a~l3V%$CgYY$7eWUmbmW8mh^qU+SYb(8iFxc@IL%YN=x)59(f2 z@|BuH%3zQCpkaZZZKIU1IP|AaQ>fJ(Y++)tfDL#8)a`FpO3FOf`o<}?M|_qfReB=Q zaa-jfQ7kE3128@)KGY)%rAc(<!tMtpbL1#=CC*|1vc5SZARB8;)J>vo*?68KOJTf2 z9z>G8*O*8$qWB7RY*!Ox^X9#SQXyMN<jne8E#oawhj#29;eoa2&f{2uNqXd;o8rK! ze{At`&io;T0!RLMQx5&}gDj7|-}R~P8m13L{4a@Q{an6B97g0CXE(&c*9YSk^X&P> zyndi48xZ+uEZIer^-zu@(t60)HbUQGoaMHus^w$+DaGsYrj{2PvGy^VMwZNYB=DaS z6YI(D$V-Br<}Vi$tE7#%?CNE{MC8&tYHcgK;F_l*BF~lxv({Ks51Lo2ClCg7VT(<m za?djk^^`U9kMmmMrJ8t0Av!#bH7PW7G&SS(>46n*ufXCZSh|N<iVL8wCW3IL*R!cb zq5U)&d=`D0t;(KiV4CECVa56gCX+H03J&S5N#t!8G+w19=MaTfH_sk?m*ADf&PZ}% zB9)Y)l^c%Mig2RNUrx6GGz&;TlV{>#r}Qn&iQoc^Bi?L;&mLnC54Is_8c_VT$^{2E znqxzthhU75Ly%pwE+-&Tf4GH&L^_+sAbb;ce=RIUj2`{bQ`z}&3m^kPoPMvBdxX7$ zo1HM!wcrXPWhLl~0_~=Pa|UTS{(VCc170u?AAjZ+;pDCPPaK$JU;rFogX3hAZJk!S zSttfl0kbtJuh5-RG*TasImkK+fmR%){ie|i`?dV)QUMPwa?N60W7S6dwJ=(r1m_IM z_=xZYcpTRB>`xFB0g}E>07JJTrHjak%b%n9(o}NztbpAeZvROrRk4AmK3_!q>ROU- zTOS1jDgUb|foEI_-aEmBD54H<(nDf+9UA!orYY09N#6Yn*Bh!l0w^39d!5@;Pz&Qd z%lHk>2cg~D&$n^JO|!t<Z(CmoIRP+h&Lr67j8lTcAfr3GRR{x;JxU;&8Lw3cdj_L& z|6R@skL$oW6rNTwVn(B~=RUFP)(2pp0P=;nK7j0dBa^;LB2FZ5ACO3E8nV?w4Y&4N zVJHGQFHaB*Px*7eMMDJ@%974o%9rs#+UJHFC%E*tEkuYeVt5!UD($|j<`bPt_wK1= zz#tB()_sgOFs%5La{_Ms>v{(Oozy)L0Qg<%)-(n_hENVpxI?cHvC8IFKq{sdfn-AD zkDGf7DX;_FxJ%RaS|zWNB76+VH4mJ(r?{PRehKWtJ2LH80&pw<#)VfftoKP!kQwLH zSZ4J_X?o{8{7bNDniCoP>%K)NF@U^HK3e}m{j-Kr0s~KJ1cOFYdWCI|+L2U$0ekQe zU?WpDI|6Np-=Qxt0S?4U8S=*@-Q)SC51rwtBY;?aDPG|Q1o)D&vg~gZ*vUnP`|U*# ze|!mMf;%`EG;a-9m!!03-&Vj5uum4D#T{M~h2Q1{bYNRP8p!r_d?{4n7%V26j{)`C zWX)V^Wpabkgq@4np>AsjH81Hz?_?Sg%BUMby#-T!!j=~`sPYG7BsODKLB$W=zp@mp z<HBtH=gHPiz=(}^#T95Md*RblN|kEH=2Ul2yCy5efdx3~%W=FJCs3lmOD^zp_n|Z9 zR5F5&V5TI_QH{|`2+T4PleK8v<nnZAwJ3qDzTnn7e81+zP&LWF6J_Yfz=!7~QG4qM zIz8(q!Y_|?L#cTuILJ+a5LlAQL~nxtz%@_}bs&!TM>`nvr-ipuPxx7N_Y(I3%t`87 zQ{mJKZsK|sgI#@`!&loG9gH#l)^Qwj@F@6qN<^9+D-Z!x1i|1uE;fpf;jLrZdMe>* zx^8)IW9*`5p_`O<FtJ_kXiM_Swd-DxKSb)%e$?V`>t<aTD9__rN*dr>xkt1y#BM1V z$vPMPDEwtH#Ee9*&~PeluEs0^t}_bUTYWT;Gv<_@!%(R@jfEKejVRM+-a!f6FB&vu z>T;amM<LBN%2Wtn1vcCs+9#S94M<SfTJ0K(DTxN<#jhso6-{>^hPuNcI;}?D+^3$V zlERMij(~Czi3kIsGF88U04s?)^`c&Tq14ji6rs3B(ti?+nnioSx_3{EK8TCqhh^CP zd(@y@FPheF9g#d$HyfX&B(2V#t0L(DGy#ECCgx07C;JJ*LfdTN1&3jk{5SUOL2ufD zHP+RHp`^zNl><Q$p$+fOGyeu04`mZBRdOHcd@$S*oxE=t{1%vC87jU!g62(}s>e!% z=_YHeC{Tf_LetcY56zQvx3yfD_iO74Eb;p2Gk`s5T|~D=6Pt%9`_MhS)VB%As%p7C z22E+shX88GCu2rw%dZdS9PUK^<lcx5L_18Qu0GwtTf)lRr|a!2VcTAr6jk_$zBEZB z&A!2FNpHlN&j4)fFK7c6u6z+zp&T(2b`&M$Ic*&tbsi|+tZfajA@KFB%C}8~1d8~C zj8>7;P4#;oc<QwG1J6Vd!mLqB&_rZ=V~bX%whlqirC6~a)~SA2+(L=Ltq9(2Xw~g* zgLwjl##N5AMTBV^lSWyuBh}Ar$u@3Uj_0ST*LY3SG`6g*A{|=<p=O~v8SAmVwshiP ztBs5xZ@|EP>lj-(#Sfv<7(<Q7P_U=|l@qH?2!==Co(Vaf<!nIju`n~?p;y4B=a#A9 z>#i4Sn}F?%d(aAdGL5q;Kc)hCs$0iyV~b7cO7+m8<tKFRxnW;FR~2lPf5jTm+hQB8 zR;1TRxv0n<^EEtKG%Lv=WnWmcY{dT;?<W7gXGL9(O4Mt8$k)sq<-Yzgk}T3eC-U&4 zxY$loRJODQr&HbHEVzW=Pj(A~7dd*;&HOjD%nkA4@IV{AmrjYIau>D`-8=%=Z|G@e z*;cZ*d6W0Y3l%)P<9IBi;^|=tH`Y1#8$&jFegj7n(FeU@^cdhTVwA_Q*!m)j!Nj+$ zJByh_E_e%u%jF1^JckGu@Mf_KiZI8%&><|tpf;;gFwHD+*!Q3^=FDEmmLx5vA!Wv| z{40hz8A70?2SUo@<)+tSLHeR{$P{&0pa3yI*c7J}v?`?PaR4TkWv>dBTF`oF54WFB z>q3L|OP0b<%_U6hxsss;$~E`;3@beQ-XTthDdw5b6r^fTL&ZLc!lMirvxvwey`b?< z<yEUblhsM>>@r+0pfhRho+&t*plMqgp#n-Z6@ItVRPJ>VBas?Q2h4|MuLG83#JP;) z(Dt_y9`r5^J<XScXBY%~Ye!gEG=yai9aL-wEpvax=%fwVBX3uWv2*AyZwtsReOHr% z@Z=PRwK$+GoNe4f<V7@-YK(~&!>fav)utk}_P8C%9a@&2DxH;j!-Rbo>l)GFJclK& zzmoq%@@!3Xvp!{Hyr#xl-l|q?<3nl8gf<NX+osge7nP;P$hx&sr_^00k2Ap+V93A^ zp>pn~{)f4ONW#+@oM^XksV{2}jP~iIPcfzi8JGetECl@ki)m{%(a;J2?7$WCMF+N+ zA5o$8hl!DUsKQbl*`T0>5x#&<<>HgsNI8=Qc+?*Cp*jN3ktEJ5X!W7_URg@llu4@K zm8QHivz(X|cGSHFYD~n$Td!yZB(s;pn1!!!2dpaJzH#@mvWB}~wmQahfi1Zd)5ztv zcsj|QA<s7tw=CdL&wTKtyypEn*2xccHvzB!%=b1Rtt#C9($=UD-&xe8IQx?fzWTeX z>^h*jvxZ3<{;#y2=BGQrl_*fDAiG#`5xZR$yW1><Z1<GWHH-6turM4P7M1+YnFihu zHGj1Q&nh&)>0Ne~iE?!J@zxw8O8jsL-tw(HJ1_~qi6U-LkFIFBkz5={1=na$rYl5M zK>Q&3PDfkrVmq3q;P_W0{GP{NOZP7naL->r5_|!mQN@fXMk4A>G#+lM-hVz|6F4u& z?!MMF0i2h&Ex0_^(ezCIkwr)oMs+s6;`_qDw=^EJVpLV|-E<5gzFyvuCdP@lG9;CK z+&G#`r~w&Qm^)1uiSm&SWAk$L4G5drlA3aC;NynqqH*cX2}`TnQ@GpFNv^#pTK|2* z)rQ>c<U!Wqy&0@i14vo#=do)2E?#*D6avD)p=*a=Hxd6a1OOJsoJJ353*9%~EKIn4 z!$5pI|8I2yC-V_G4EA0;eN#umw$}nT=Sq$Hoz4aAHY%Bl$(=^DUU3KHWg~&}n-d)< z!7pbhyLP)*TtiNL8SHf@4wJqid@idk>zNSIu>(2zXF;8yOOi=`3A%AA>^Bf}(i29> zYX>gJY`mHl%OEB%En7hg?E6G%_|}|(Y$r8_2UqVmU5(?;9~%FdPJT$|B3(TBO|+`+ z&y$T6D=ibcVq71+>+>I{eO1q#SRY(+Jq;?9$vfHlI$fGC8!Iaki=J)j`M{}KhfFy9 zhCx_u|3F_F%_j0fvhdSLVex9DIkD;2<*5hML|~Wd{jmxR9Ob91_CUjb(~QsvflgvT z*!tW@J2T^mqMOQE0f0gZ-bMSHU@ayeBif3opf<siud}S9qt7?f2+D0$y9V7wY(GNM zVSS04v094WI+vnxB6vXfc>)n%!$wLep<SOjw<smZ4U)G(OCDmI!Gg{L;p9jrK&p=7 zr|qhtr&PDxrU=HdKflvvNj$TMtxm6!Sh`z|2NSaTvQ^e_>AGsX&x8)}sOB|PtG8NI zz*=`CYEyJ>#{}Z9eCYJ%Za#8;pt}&s5tSy5`kj`2H|O6rpq2|`vun7RFL^uBwW%ay zP|}pXjOxhXAJ+D7ub@g=bm@nK{-g6Z{DcHnG3TCt6#T>lN~wK&@vD!rM#sqNsC<#B zEO*;PDJB-^_9DEmVCNem?hjt#yO*JrPqF;tj1PhuR7ZM$?4tvD?}~vW4+A|=^Zgjl z?#gj3)aTwGDj|oT#v_EwiMLeE0jc_p9x~I~)*|GiZSlX>m&N=|#H5oI=N#GD%jc-z zRsD;1>k(!ySwttP7uz;Mx4atq8ZrV^=d5CyI#MbVhnst!z2HITnqtnl%YWoTm0P#} z9AfcEi7|jkH6!8gpp8?HTSfqVWV^Tw&Z6VbX?rK2hJ(a`Phm3Bm=r>(8PSM-DFsvL z3q8WCL3(Y)86ow>x2zQ}wm3F5{Wa3E=yb}ex^`il94*^IyHrL>EUGp^+YURX%Nad% z8CR56JD}r|FBWL_nYGd1Tk^njr+~DFUW#T8n~<p0diEog2je(k=!gBuFHn~jnFYKc z1%*hJaTV%#)e3)z8#8g`*7`6Bb$p*oB74%TQGkOJbRM?8jC*EZ9K(J`8ML6})m5n^ zjQS`L7m&sfcqg}D{UqNF<iVYtYPrvJBOcE`d^He^a-J<VJw$7L{sovocO?FAmo@*j zDZtFZ#_>N|)--GXvrV)hZtvF4kxf?GqYM+c3v_PV5D1`2dYZW>bh$$r3_75_e`hHV z7f5XPyKZXgye3JYMzQ8lE!e($I!v0Ohy8Z2a<_hsp}*X%&eG+2w|)KiY^8Lp&{|u( z-z^`Qgz8)B2En(})z>hVoTb9=(&qlox8LowcX6jKOtO~X+AUyzy`)x-?yf)DeMKEB z4cvZDqT~NKd%Obbd_mbx^mwWp_3V!r)BcWoz;22_S-r4+k`}X;Ru3INcTV1>-1@%F zK0L?y{qASl>8I-a)_omL*7kn?Jlv88KG?oL4%7d3yfu9w2}jd`jh%PCi|R<%;BCHm z+#7C7ZNCWhr?T2Q>~?J~9&BF((vyZ@orJAUve=O@DCT&iX?S+);LCOM75Vy%EI#kc z)hsR?c07h__pPwF89C}195|X<`vOfn2$NIIwxxS`bo1nVx(7%anT?P|OdH|5ylSW> zudz?6hb>kSMgfoa=JuofI=|z*BuH;KZSzFW(3hUl8|40WwXyck@m$T({&v5$l^nFj z+@jqgqBxd&$rz2NVP(Z}F8kbjxD<~xgzTll{%gYPx;WgMglyYd#5LWss;za@g6b!` zYz79IUFCelrlCs@O=wu?>pJtb;cf}zu?7lJ!lAUVhMi5`Wb4-;izC;v<RuhGtX~c- zjnRt3)rh%D+8<aRy>d0OGI?jOW&GRuD26jnt}+{k;nWhFG0!&52*)$eGV2$TkPFVx z^y-lb&fv%gW?|%jaNa`)77~zm$MMKo`k99{efEAw|G96^V1Ehh!!r2Ec}ZGDkRJ0I zMyA1<L|0FXYJl<7k54oT+5XGwF=XbA&6q4edSnwP;f_)9)?*4|Oi}aM;}uJi#@dq6 zdL@ViHzWwJ4u$;{B-S(d^N2SQnqPMScoVO*kAU_9_XF}7<|yP)9-0+%1m}p?6D=6# z+&Kz$(?<%T?F7Z`xawF<-4nqnt|anjf)7>w-hNx%TbEJc+;fc$V}kEMIF`_BQ1BIZ z9c*EvPPuh)Q^0#SA$2bjnnb|}1QrB5)?flGhk$)92m<FTEtc-7FK$%njjD?El-7`Y z4gKYo&_^AEYyis*9|;LhM1M7FQtbu6FenF{cg(XE0=B_W0p1_>4Tcbs20_%E17a;G z4(}ZuUi)A0^^YYD0lYAd_IPI^jlo!m!W-@qP>eNb@E9ZtQ1LO&9|*?@I4`jAaG5Kr zP!Z!kh<ugSK_ur@6Y1r@yg~ykcwqv^JO$Vx$MI9TK&A%@Md_Rr;v`>vc&Fhvh||2p zobv#IG||-rb7T}1fhsHh-Z1leuS&pG*!HmZ=x7HBt@&`lyR@DJ&}o1}*@)7QPp_9I zS**UiN<L%bEO(ycR;Ek4Qsx>XZKcT9@sj?>u~7m?!7|wWvtvZU*bT!y*9=J(#0=DH zoK4W*F*LEa;+oxhBMAxp4j~D>38nY9tCKvJdv--1;c@r8{ag7B4u4ceXaa<NnB@yu z#DB=9d6p(=$`RGRj^QwV9=!ZR!%%|=FRj8>RuQ$O1p~(1OY_FU|4kC^r1xOVTTxN& z+L*o3sVKJ!l@LIU0@}02^A_qlKzudty(TXTRf(}j?y}zLl>w+xbYBoVA?z<tc!|!Y zrEYks@bxv`B|;X@z<U0ALR3o6KsHEuQD6EN{8h?)t#LpCmvhREYZW8)sbE$<)aQ(E z7Dz}w4x{HW1u`3_FQjY4Cn}S6TV1@xs~)=jgI{$j5a;aIUW6_GqwusC`9uyw@zGoY zi>XMx5XYK_jJb^lDqEO;e{>3VU=S(6?g2QKjo}y+FbA`f(O}Rfm2N70?3`o>bQ~U@ zQE{+)RNVdP0mV;ks)92uo@@ci1qi9`Rp8wrt^P)mzN?lGVvG%SpkF?RjQNHKGG=ol zkJ>&sAHXo6Gy{TnQP1gCpxk5{#<7<#Z@Dh^Mo(hVFXRlha)j&Wyl+d~JC-jQ@gdTO zxUG~*E3>DV-J%%}0`L%n?;`cKko{wdKh4$waLZ#XlR=MkL}6|NFwR|L5)fg0NAZiz z*(*$jO7nS{^($f;X^}{Zaax8Gm458O0MX~uQ=kS0mW{Dwu*WuH2@OV9A7|R{57lTu zKrE1sb)8O&K^2cIRE>14&y;CB{6n~ob3E?%F+h(0L^-DHTPU9y>)|0~=Q2h4mqOnB zbX=xZUUT#*SIpWf7d`tyE#ms42)Z8_jI4n!DwV16LfQCdx{U@6iR!Zr&ofM@u{sYX z$NU27e0xk<TW}%IuN^2@u}u79xycV-zi1%EP>7~Ou}I^2{>vK-52>S+W)T2y=7eBm zI9x#gxRz9%K{hh97Ub0Wv&EX5N=_Y?*5WA7foW$>f@|nJ?@uWHtZUSP3vA!+=QNWs z)jNcr06ru^?SSm;*J2(i9VAQ#e8JnwLm~%I@eJ=GCYHBxm&I-?1;u@`L#t?kaR{d8 zc*c^yKckD&JOpJ_C$17NQ=g#mkv_rNbSy>^D|)n*%icJHfcC;m+l=RDY`m)Tdmo&X z5j<>l`$`zQpn^gJZX$~{b+ZMsxHLaMH^3ne0I019E_%zoNFM;t2ROwfttNMi${7}( z(JWzjWw-mR0GT!Bkyz*@IEdX1(a&j}ozrHduZUZ)f<6<vBDhg7ieV-Q#Z15RP*z%G zM$w)vZAk?q8*9rLJ=7LQ5LC)UKxN;b=a{h+OL2D#yCsO-9%B-6)<p=j3AgCoLPE9; zFu1pvI}+-QxeN=)w)njHRc7K-m~|(7#2zwBFuKhjRthC8UJ5CjrN*i2n~cGhZm1=T zN}S6`5VAwoC_&OV^Sb>0d298TMZmf??%DV;kIDt#mS#S7tf#xRqm9oAM-FBIMBXG% zrIwe#$50fm`^ZfrYbxa8RwEgE^yRxy<});9ltjA@Myd9VuR$pB3<Bftaq~^fuYrSD zRTN%Z)-p%_!4O#Ap^g_*;j_6t6=;5IU|OcImJ;YD=`La|L3VkXlHNm}H`LyQc2Bt1 zvH~$K?fHJk&FhIK3DiWbqDUbTh)U~&!VnGF*}8HfmCD1fu%1;Bwv}C*>TxaQX>+22 zL$IGYsG$`{{>Q8!M=@7w?isP0F@&zxXN*)?(I&2I_AL_kCerzu>a(|Wr?e5;<awf& zQZCUi-B;RzPcLa3$DdOIwgT=jIZBzssU$FNNGkdJp^=rFo>OiVEmxcV3yVvW*}Q|B z>(F-&(U1fd6j<-^D8FW6GwI+JUrFC5dC2Ft7fRA#O-6wlMec89jO;)bUR3>at)Qmp z)(GwWuoK34_N#@rW_pr7Z1@u-o9up}KSPN-z%=Rk1}uy7IqWbFH!7U8^l<Z*$3%8o z>r{18C*y4Axm@D5fP3Nyg`oIsvsG?0Og2A{2&Sw_!vMMt6SEn}pg6I4cY7s(JR{)8 zZ?0xlw;<R}Jln1-+5$nE&lj?l_?w+*g44WmcZwbG$-?%@L4ViP^b;Rf%B{-}e1jnn z$-B#FWvyCT2BbH=s6o=~hupcD6ln4coNbkzJ)9#0ZSih*r1!q66B{eLWcIm>p08xR zbsYJU8jf%puC$uG_&HlK!>0M^(+(z_Adl)EBVQS?nNP>vazJ|k!lRH`oZ0Nke}h}k z=xDGHK%84%%)ErSPRj`z*Qax6`sR|rb}zqOKp)_leTPf{<B&(dljU~~b^!y>s3Ae) zF8H)g)UA%S=gY@ey0TdPV`Un+x(sQql0C(9MCw15?%nl$TB0+*vZ>_$Q0-kG<%rlB z|KMGAlR!7KN8Y;so!C-t)Pm+&kQFv0^*Gjf$P>d3DmcpPzb_7}7R#sGMj%6^a;U6% zEBdlv-gvHYUBC1`B2+2bT$KW%{VTD)B4BrJF*__6IEPhZk!|ws7h0qM6nWtvw69J3 zBBW>n5+U1vy8^c-)?awJC`cSc1#FkRFw4~~%T<6FOI8AQO|qHv0xxGFTb`v5;Oo=M zp6@)m6Fk$rBXT;yHR4<?c56{*5g~uh{<huId6?MonL{xB_ZlVeZhx=oZ*{4zrlZo2 zxbs$(+)>%(lvA~YNr8_SzHcdP8NND!r|UJGVGJvBXxr1gbAzjx-@mO6A*2QOPR@rU zOJP)|_RC`*rF669FUK*mYD<YBJq{%wFF1?n*rJ1YBe_cBKV+~VTxzR*)Z`Q^mcG$j zxbMa!;~(ZeX@@Z1y#90;IoCE5K-t|4p{H@UT$tcE10E6!_?T|AVg^^@<Va9XQ<4#f zedmj6`<$g9&!rcZuRY6w4l^B#e%kpY8BguGiQ3O?u&w)kSk8lgvEBu0kFi7H(fG(V zJk<Lbk}%`W9l#<zEql8Ke$Y!Y%JZ(KIr*>3&dz#-EDII=!+B3WZHd1>n+mib9>n3! z7t-UK<@C$*ZwjhSwPEqac5uB0VN&LV&1KDNnezwpemJkl4O=#jCX#b3k&lJgC?_3w zvM^J@atx16uM%7NR?-^$ZHWSU`bONmg42V&LeM|gnXZY2ylmCkT)cy-DLu3|GBLTt z$@pG;p6R@zyt0k)LDUk8t)1Ko@GJFCva}1YzL=rY0qWia{+p^=(H&M+ZGE7?{i03z z!fO+sW?obPQ*FE8tKHK6{g;P%m2nKH&h3U!Zj`zCm)|4gTudC`1F8dfe>xjkUWxB$ zj2oqMuf~eOm9v>sdRh8csE;UxK4;{TNmyD)oVaEIcF1W{epa~XVOUn`v!F1!CC<EK zPnlNi5M=sKSle;rn6&yzh1rug+nVyqIvY+JZnFBz^H+AHo0E%}OKMB+3J(`FE$Z;M zGqr1qNZc07^H}@Db+?$8H0BgWpv0kvwTP2jvPsgP{((l&8L`0{CWQ_<j5%y5bU2cN zU?2%(fF5W!D<f<5p%{NThwiOO9(Rm}7!hxj`iQUmRyjgA+8fRl`gX2JCL+44%dWG2 zSW2)vbx5CK%_NlYGQ~P}8S4~(g@MeGEMmYyK*h?9S6q`FFZ}so9TLL+0G`&ccOLpc zv?I^gJ!chpB6+J!9CT3IRYwHNquED|o4gtoZ><i3V6$hjq7S9&ak_TiUT3&&cx9zQ ztzp~PMvEM#2Mx$O0^pkyI7m%l5ytvX{sI6iCZzp0KW!!srvDd<RPnGkp_ezZRCczZ zmm^?gV4xSXaCCAe;N;+-moc$5b2cYnWM^afAN|6&)1~FL#Zg9I-%%Q^(Q$V@X7eD* zC8gM^QAlYv#AqlSkSd473`icXKe?R(FuaiTgFMQj;s=lUYacUyIgPEUDwIb|Yh_MF z>?cgAg_P*P5euLa_%|2IF$y5mOvwGH<c^`}^iZ`$AS#O9q7}bZG}G%zOrom~-}bq{ zI$~LUQbmp24QNUF6iZxiD@EA`AWS9U>~T|kzNvSmR(Y9cFibkR%IhbvW*N-ZdMU+7 zYO7rQvmqxs2pZGENw6KsC@((|G0X84lVNLaLhJ~~uu{^E6YWyo8?tsaPpBJoN9#En zrmWLzQ8*K(Bau~f1cg{f96(+M6|<Qo%#p^a%ydm*PvaGs6V<=e#6d{rtDO`%=_g!L z>iJZ0tcE&(XQ#>!c>JbOM}_Frv&>G6aINfB;OH(3M0Op#i^54tTyQq9m;NE}cq&jL z?BJlW(W4*u##{H2<GutQCde5Jp{G*4jbM`xm3i$9tWAX_rcxWvNKuZZo9(XRFLDYM z^DDi?BK{q*av?i`j1*IZRwCYW*z>9~5?_&jR3ThS>-X}XMIzpnp2O2r$Ci5_bqpOy zYK_!ir-We2b`vAjx{zs!Nas=g!e^l94j&pwcC#Y!#1H=2+wHMPPNZGHL8PWQAQA;D z_=1&3k&cqn*!FcLF!(g(y$w+R^27!o#jlYhsz($~h6k$1M>Lj<0VceqFv156(xgiW zGeL!{)>kQ#obe$3?KH~e_2c`vHv0M4{<7y&3#IU@6tj~vBR^bx|Kly@j3nWWb3I++ zROj`Ue*Qr}H5OVC?x2C|;HEBy-;F)H8@JQ7fqflEe*)gw*)a99nsk3Qy<d8NM(Pw( z>SRi;asgsDYS#F;NUW*g80Gz8{AK9)X5@OWr#8s4QR44&hn~&6erWKNXal5h3rHi- zVFjb-k|*|AnnZ79XnmDTTh9}#I(vVXF<zMw@ryrgeL)fY5n1?@^A3U|8l$%#@_bVX z_;jl8mt^If+@(=KW>S9se$Tk0@qHm~ABtLVvA-9G^`jFqsYWWwi&(j%#k{(1PbhAC zb{m`3U65XSaw{}f^NkBvWZb=)7<*S43clMnxaRC%>7MHns8ThkKZ1;&g%;Whv0IT} zr>U0C{TkMq9(*T1da9Fw-s_$2ljfa;gF8dsc)mU}I$oOHI2%T8%opdUR_JE=<k`Z1 zN!;rJ*)a+2vX6vf$w>p{n=NPNm;^;z-O`q-t>`|pT<xCT9c<{w+ymVa<Xt**36W`w z<penEq8I%Br;>Z^g^OcLpFGVTn|??rrh@1VUbQZvqY=Gv5&m#d+IJ2TeN7oJD(jcI zR@gUJ=2z7|u8<Ss0`7X>LxoYR3<X95{0ve?5nJcL^rpw*1I2m7fY6k-%XizN#y0d% zQ&<jM2zO~Q6ea|{CbsJ@?DRLua4f}%!RA(ITK`M@at=CNc&;mf0wf(NZ@FnG=s?gr zZ}ZLr>23F7gmJ5NBgAa>4F$G$*r#yOYCo(_t3nmbNNN%DbDsi_NtGOmy6`>9E|*j} zoBi(!+B83<Ogqxo#-kF+<$!PKLHX|-d`Ru^dO7Cm`J#)Y*TihUd(uB7RZ&pBa%QsR zaqkuEN@V&f{wo!HJjk^Y-r7Tq*hLZTf;c&<X^Hu6mzvYj^YK|xu#eHa<gD>Jp2`T9 zUsyuZp1X4Y1+ATBpK;`$Z(D{flbUqb6}u@sp}Bi*H!0}YQL+t0;8#4XyXuaelB(6( z4vpK&IMriXq+D%FQ)S#a7%e#F4Lx}gaP^}&(_J#dl|XDQE@wRLnhpQaKQ1MP94K&v zG0x$);BxZF7b`ut*j}#+?B^+PTQJS|)j@0#wo|r*RX;h@1y-)D<;;uhdakB59pood zK9jX}n*z_}21WBW%}qVpY}!Mc{`yKU3q_^Y=ADm3dKc>QLSgCxn06nJw8&FxT=ffr z`t?h5L{I%~Zo7YanozD9_--_Ac<?xG8i^VDe$lysoIzdR+*mRfU@=yJC8%TUJ!IUC z0)WbOXFlc=&3lyx*!NVH`Zl+7X!}Bx9`BZ*Hip+_)!T5(*0A5S!S~rZd{gc4qp}Gc zCmHD5Za|*xsNfeMwJf@y;DxYT^q680@G6LSqduO*S+fc2yFx8yn>D%V7kbX5(>j~! zwbY0L9_p6ZbJ)B0+?#adGI@?*8`ru^r>j36beoz!Jc;8{<H||Ds<l2houYX<>CD*i zQkw(fTal!o<(QJmFS+|#EgNLBJ)Swm^rCY!(k%tu4-;s?uvnX}GCl43U||8vhH&@b z|CER-F&^{oTc0l8uO`i^cJ)*L0E^B1z4&i#Qx=B*YDs2g;rO2sZvN^_#{S2Wyj#0B zGAVtWS!BqvXZs3)uorT@1KSio`F{X6A%45$dgBs&wyJ^{WpwHPTawIiKL)o*ubk%l z3GwlZ*gJqys<qg)gtk(i+@8{Mbbh@$$}iLVbM05E|ML^}A2ooTGW0LU_bI;L`=mbp zZ_w?1Z+j@icQ(YvzmfAbap<`|zQf0@IE|Bz;{@kXFko*iJX6W05hURXWl1}&wl;b} z>s0%3^Ke}XWhiG+8x5(A#n=4{#)t<H@Nq&|KymBnqwCpY%Eu$B{Osmmp0M)ouER`* zfNI05z9WwQzT>gAH)xjcKsXgW2j+)|mo|Ja{(gdbV&kA8vHH*M&Rwd+wcJvEml!yw zimL6ef8By}x47JVd>2ZqZLQ#i;q$xC*SXnW&){}}d7>u<ncvrN4?1b<m>gL~q1DTV z>h?M^V{<6R)rM;2DkqJWuBPOJrGLU_R%=3ehxGi`>Z){S?-^`oUR&rMjgu9nzHtrW zYqycMu0K=J=_{N^2+A7$|B3}B3K}T@P&PG`qb4zga<c)20qRNwvkQG!P6iWB(sr&j zJe?x;dlQeJIO`8E{NOEOu@NQc2V)P9V{3GyrKi?M=}k`PM`Mp;si{W<V+qHtqyNrB z!Fb@oAOdh-!8vHhHMiNty6aX?3C~~r&Yj(VwF1%Z`jjSX%B3u%r_vc0Z6as15>%}1 z6O>1^#TBUDU{gEJ8tNz806B3A+YpOWp9v2uT7$f*CKio1(Ao(YZGENS=};}>@^Yc- z)xbu9z-sBhh~1Qs<gSxCoBVpJLl#pEk2LR<-^4{MAlJlZ?|z4|_GD3sgV_{Isv(oK z)Rq&K)w%G$%{G)Rw6=>*nXMQOcPS%Z;vC7OMvk6I^~ol~^<;rIbQ~7VAokBXX7&*H z$=GLtAkuUU=mt=BQZeOK1pJ2SthMnHwA9@Jh!h$m5dL~O+7y8LhDKe3^EMhR?M!d# z4df2R?3*~op=m2v=dx9(m$KOIYbVV|9VHt30r*8(@vtYM5*Gb+MvSx?fayiSsHqyr zYX-D>t8Ic9PgFrn?s=*KzJTLRBv;%?!3K`zO|4C|9-7K@Rzdxdk7{Z#Bu>Jc=}Z`d zFa(l#uEn<ih-av<(AXj*m2`&M!m<ouRXh%~@ver3hPQpcDTHEOmfF*ZDVQX;&kjvz zh$}paq~t6Bf&kPs3{9Y4*3xSg7)RgBLXX0WsVb$g+I2$zI{A<j!2PV|F8#ZkT9zTS z)q}fs@ca{g*X28oOkM6?d(jEYcG5~T##`v-Us!qL3Sj(_IqZQleTKwQe>V1LS3(Dy z;GiY%5Sj<31(JB8e%e!)HwSy~VLmW<{Bp>DUpI|$njcTgckcIdk<&I?r+V)*8Kn$% zdlJa$WoLKmm|H)Yq$UO<{W<{#|FsAN26++G%)htlpBIBJYx(~ntti>Ae!+Mt7UTE@ zCsAX-wX7vQChFANk2t>HTt41&{ZkAv4_oPbfA2d-U-9wlzUj&ODMtaphZjlCOA(;* zIAMG#exrX!i;BHH#25s6p?!(fAofe?<u%|uH=eH5zmdSRDEe3d*yhn6@J^22jzh^M zPb#8ffmn;JboONFGN<8xF4(`otyCC{ZF12ippH5$wZYoi*U0<2Ne9^y_HUI&pJ)v| z5n~$059WL2i5iO2($YM_3%ykp=NB%1TEnIMlKh{y>C8*!hKrvFb!c{j4>`3pC`y!| zIjK0pAzN@AG-DJv6e)KUQ_2$ml)q$ilwnb$h&UHFQ+2OEOp27X%m@e};|AK{u4~o9 z0@`|6!k%Kp);9iK3HU`F0(OM~hF^MIt*av82?xB(Ruk#y|0wE^(n8NJ%Wvgccv{|B zKyMnB3TQ!(O=m&p(qj9JrCe;Cv+|(V_A31@dG~2rwEFJ39mrc{>zo$f6_k9!Rzju# z$rabF9Zy%!@2n_1msy~TuR0qNWOn<p5dD@pe>d&;v?f7LVVn%&Ahdi^k!w?Lwe0Zk z0)oNZ%do(X`9|yUDYes_=KWPTs!PjQtYOT3O0J4d?TD@<VLbrppq7XG2s!HS0wO*t z{|ie1H`;0S@2=2c76Vd{y&hv`p%M9j7gu_}^bC5JHPf&Z*Yf}^!k$ApPWMHerSkKU z`Veh+LvNM#ZeyfxLcS-fwO!>-fV`zpB(7M4Zk%qiQ)go0Tv=Kb@=ii6cB)O$f9h4{ znDwlWV$`t`(1RER%1Hw&Yk7zuEKl||U5~GKou7yh_9zvLV_hwxIb3sks=dNVlPiBU z#3f#LwiD@GDPP=(h>fjS3)m)(aEA8c%0cWLX%Xno;DIfIPa{l}CP1I&sUIaSZzxxn zI+B0B-S!IrvS3)e$VufqA|J|sbaUPDD7qS=h_Kt0G`g^|0I`}=>jZ9OmM*MuqdmqX zXmUk2M>5RCe~*3`FV(M7c1DsMv39$nv|_ntjJxlcAXn>Y>P}&_Z0uYDzc2!f4(i9d z(%08QZ~m!r@|5#H%?{O4JC1No8_5`%A5X=+`ZHD=cM%)?VlK8K%GT$auxcXjhI`4j zx6lJbIYN6SW@B(`0E6!SgNFV#Ct%y!^gM!AgGfl32#CRvxJ#QqkkJ!#0*h$mGk|^J zDeKo+a<wxCpqSd5U94L<m74(0VkgmImodaOp~I;Ia4GcgH7!2|tYd)rXFDE9GJG?Z z2m`kpsU1wDod{Q9(=&zG%gRnvBvu?=wikBq`qbYcY=c*C)fa9|PDeU&^_GS{*X-NJ zxcxFRSRz`2zU=tLJ#v;wk}W|s-)V-q)b(lcLFBnB7w>)I7N=U7mv0mPCl(RLLF%_Z zu>qGF-IuRlk1#DjOr1cK1S194C)Ss**hWr*!3M)aL%#%>BI`W;2-OOQ7^|j5xb5*Y zy_Xn|+nyb}z+6hf-)FY4TOTzt%v_?Kk;T$ZQf|l5{geKI%&Lknf|e;8Ej{3mt>?*i z7zndE8yF|~7@B5;ApF!rI(l4Jfi^6gS3g_oYxa}#T#9XgJXcYZu6>bf`tu-9UZ}B* zOFqxeXf^XKXOpcskqo*6sDnpwWfiKay!%qR6%V4kOcrM3o`X-W3ppk`6le_dQR*-e zPGP#7=h9X$why$Q^p@b2TWO~)ML%KdoZIqUE>ZE#F7s#2ZACYZ^tBcF%$rILi`i%? z7WJQ>6$XS%xdPz^g)Rb4uqr+`Xj!YoTNK%d>V)_8lQE4_tF8~c=KsamJq3vpL}>zU zyZg3n+qP}nwr$(CZQHhO-?rU-w>Nec5i=1x4_Qz3m=RUyoXqcky5&$aIQonr;39dF zsm%0(@5G54@1)rqc+4$?KQP`o%7|r<0J@3^-4Jgz{tGiU9^HDzXvBB2R@NZDi%hW+ zTh@h2snaC+{R?UcS@I)HpV3E&7$E-}wu)60>BX>%DY9M_>ruAErMsw`GFPrPvK+c` z>!L^<nrD8;Dlp+HO{QCDl<FjRT(g6W!}?IuyL<~Vg=Qn>`#uB?&y{!7JnsSq5h~CZ z<%O5H%#=r1#~$P*=8k6{6<;Q#e<0U;qd2(-eL;{&^d{$I_?kuN8+TLpC^N?hrPXL6 za{hoX(e{KeR!cY&rCcBaorvoe)POE=WHo+tSQG=w<JTC!CK`!fFt#sr4Afxhb5>+0 z<Q~+A0=Gxa9mnDn6+D60b`?^M!XyI|9*PzUuL1l#;F96(VSW=_f+^2H%v}=_&;<ph z9qf?$q?cYOzKrK4T%!8&GG8(ooX`)c<<V|k-e7Sj$MR>cWF@=nk5u3A?mg24a%e8& z4F^|LlMGK!LX?ETr-AIhkTVK3&Y6CT@Yg&uc%`|~7e^%zE+S5O$ft-H+D_$0;-zyD z!$++20)M9hzr}GWxI#)IEO=d|lzqNXFWQX=#J~9St^PR-<ui5{g^fLDOabTm`282% z*`T^wZqE;{e1bbQAB6%++^DilUw71vez30_d!^-xelNc`G$EB=<>KiCf!Ia-K?4$I zKkwa}Pi1-S@ADX<Kge?}4)bQmsbCB>&-T9`kw8GHLDQmb;AZQI+FYnJpVnh-IhV&J zffpEe_wBCO#<*tv(1MJTB{>Q9DH{kEXj2^i4M0P=EFa>Awz?G{!k~4KwWnjJLn^2E zqadn9d?+lj33Yc`D+MUtD?@nqYia1kxh=^NC#iJY!DFZMfx8Q$+#^z0m*#%N*zMwK z@A=InL@|h#vKP;FYkxcG{G3G&T`O(RhA<JKMO!(b9<vkgaB6L*a@tjG#Rbc>`_~<g zN%6?ShT<b_rXR1^e<+(82=+Cw6j15Q0kdZPaGa{;4)}TD+4ZvSXqWYR*Ao`B^7Nth z;sGUwAGUy<@}*2usVejV$;>bCIn3E}(&rV3w6WL<k;%5R+4QCyC?lMpLiC}9q0H<K zD-|z_qIy^xB#qt=G-2n;{i1mYGaSYG#y;v}C4Rzuic#dquSpm3NSldp?$vpIX`=|p z#s_eDgp}<QNNJ@QlO9j1U!+=iZDE;}m{55#+{N?EpT5VneRz?1h9;l1RnZcvA3Zr( zgTWtcWWclGGSGmrQ8`dVlL5d<Ms~dNI_HZQx_^Nw82TQzoFUXjv(O!laW2bEH44D5 zg^7ASU6$Ky;Lc+!mm;prW;qXgNfb#Rr?(0Gs;7I#@unaq2oT1T^+k8USan)s@Qpc7 zk&yM*17xXy+oy05+GH4q$QaWm3jj@idbxlZ8NpW5{|z)~k_)YPzRx-eu=atFxo!An zdpHZ#J_|11RzFTs8>4@yMg`3T0j{KoKTEfF(&FXMq0RWC*m#;n4*gVhY*jhBVz(3( ztx=9euAOu90VRVVM&EtTYMhF`kHG3=uYwwex|iU1E+93cyh&KUCI@I8DbCl~5W|sp zB{!sobOOpHDHKHZ{E=hTxA8dq3T=_jmaL%iB8kF1=8|FVYz5B=LQKl!?X|Ft7YZG< zo5z59mwq>D%~l=uolcwnz<dRR!(wxH%NUzCx66@#{;Tc0?V~2Wbz&$(Ru^Tl3KJ+Q z@>H$(`BCvK9`~`91|B$zVvJsfR6z8$fQw>Pr)cIk`6xj)MUW7vs)CB-()lDj2Z7<q zx)+nr(R^{<CLm^xC}ClRx?ZN+?kYPQ-I&Q}2fhhZ9Zk1E`_1BS+1UFX1Ks7dGj}pi zSK+h#9u*9?e^ff_kA=iveU9>iKjCJmo(F^n2L?xH4LpyU@5DdEmUw@@AQbhO;~;*n zrI!|%AO_byJGQZr8_sZP_RQgNDTL$UsFtwbcKa@z@yNux;J4txD~8jW`C4h$XqQS{ zG_S*Mc#SMS-QQ8S0#Jds)~6WniZrSSiX$?#4!DA#E|knQ%)-pDe8sWsg;44uq4+J{ ztyf2oJ2d<wd}+9tHYn$1|2N?6oW<_4G?J%SEQ%+~-Bm2BMbzt_nZ6ZdR^gVG+qo_W z9wkL?$4g%qWb}(<ruc94uB|1-;_OMmjdz5lJ(s_&%vFxJ5Zjcx(L=#(!&Kd?kB-Z~ zE0sz&p{(3ObVR7NZ*H=kF4^P)3S>w*fPpT_)G9?sH&wY0k3T~`KAws0!flvg%t3X= zIF@k_IAjsaEH4+OmTAhk61t2pJH}Zogj#6pGGey0;;5>{K4l<&Sy+iEY^bT5TJs7K zsXI;E>?B}te{#%qOle2yzxP)hDb-X>8zlanGEwBxBJpnVg3|OH_AKdsDkFUeJG8qt zZ+d~DbU7^}`$#WU#X3k^%(MF%>LG$}1{K)FE?~v=^{)VU5l2<)hIKKs)C5v-ol2!M z<=&^%D90ox=yo<%7TDt(!S#@ToR|@E78IQ+c|3teqB$B${7DF{N%W$bsPw6gB4H_3 zarm|Y&%+Z>H^hCUwD$S^Fe9~&EK^xV3<=>y#(FDkL&d{@Qj{m?%s8IoZ1{vLs`5Q% z5^*Zn2D_R~BK4hp2=|PjB+|@u8g-&I;(AFHX5{^K(kz=Z;C)^sqotKI9hd>tPTjJa zqHDy412rFv_^u(Is!fbI43b@FcKLbog`r}Ur~9~*G5JlfawVR>mEP7#Y_sC<=7B>C z15Dh$#%q!&SO6XCam%Iq=f4I~754%-h^gs&P9j7*aNSdT6oU9DamvwdUF3Ofw|2hs z=Y{*TC-;#i>(4f51UW&Wn#rvy$CFUAxEr4X8~kggL%?IL#h(cOP%MFV98cmi%|~cG z_(oN0UG#`C+C1zyvuoR=-Trl)IymNLa6*K8T)T03eeDsEC92c%IxX}gB`2>(fh*%% zP*tlKr}A)}8^dz7hQ^%y^ex;~|IyV*tXs2L-h_~1_Nx6_^qox}h=1O;ADV8~Z;3-S zhlMwiuflQ7ua2uz$pE#mhlW1Fwb#Jg5<sRWOBYD=lqW`%88sNH#9sAim9^E#KLr5V zJHp`o3_j8(iMq_9!wTBB-G{=M0;o<`C9GH!9BpVM{8XM7udBHRzOHlr7cjg(O1An8 zZ<leXDDC<9kME)gUX1csQxqR0g`gB&=12i2sSXP7iKh)i8fJ{%`pM&be{?<?dC$&h zU*SO48VNSouW-_u!i664v|m`X>)80&?F7oQ_8PI*Z#B&5h~yrBvJ<Y2UX=;7KvyMy zWSbptJ=8X7Id`SFd`(#$tBJn<iZP3Fl-YT=RTztWXfh8f>uNjP^~Q+X!_v0o*~g4e znjUA=GMS}ufog%=hIxIZ@-tuGlu(!n^_({8J`0v^F7`0XxLWZKWIn0*ct;?Awx!CK z_~2F~z)d7&fnoYsC9Zn$=RV|iHJ5qE>Y(v`qO~Z_PmSwfz|eU$jAi%GP5~U#Vk;SX zI3^V9Lr{k)8~ietX;@(|Uy)lmUQG-hrf$Q`2uF4K4)xqm1W&af5>g8a3P_uEXWAXa z*T(fS$3z={aXZCyU3j(KB%Yd+04W&w!B}Th_S{f}w;L=-I&ZL{(-*lW=3(7%&9m<0 zhzO`6{Xq9g<;7SK|J?z8XCaJLR7(d&(FWxt&zv1LZ(GS9514FzPsC@{v-KY5JI^>` zLXj27FH^eFcsutlxm`zWqqbEM_b^0;t%8)8zbwv(<!W=VwXAZNpA^zawbo@SBvvJ4 zmaS+^US=K!a(!9p&=vb4M08gIAL`)>W&!@Q!W{eV3fI25a1cKg)^@+8Jfub-lAEGd zv=O+gWI>I0Q%Ono1MC-#j!A(jqgfk}fmyYE?G!nXI&NgLbL_h4x3>%Zi7d#HGg$4Y zQo-ODfTb-IhoM(TRQV)2Z#t3J5Fa*LVL%L<cj))eD)A8EZ6QJxrU0;xk@@RAUg>Ie zhaF~I8k+L&PtI1~+<(=+Wnlfk!_fa2c(Sl^{PzZ)E!tAQ*{%+|dH*xpRSZF|&=>^P zeUk|oeVkC@7EE_|?PVQo)IM9}$G6ura`|$5`vx8THAPrq#E_?tGS}kGBmEaBNBZ%@ zoMMLkmyhLof6K?)`}y#8hPTLFeZ)D&@kj5683Y$0)CI>V+yrNlvou)=z4wdp>xpg& z*)P2`yQ~7_>(lD1YyP>+te>fKww?BoS%%Nsv$T7DM<dU-%q|c)lfX#1;whAyuD#F8 zX(Weyk5Wa<fHh~Wygw;f?UVPMD(_xzaQe+KgYWxh$_{VO4-l_65YGi;NLh*Fj>vyB z{$-Dz^^`reK9&BMJC%Elx%>O!t?VGJ@89d)Bj3;Ct>4eo7JZl=Y~R15IluR<qdwbK zO6j3K-od*yv2mkvic;p1@SKm5zJyWDRe;f8#$fhYmz*?7Exj@3G84F^#4!38C771e z_R*ii>xCFAvUAfLi*s>LFK)UpUOF?s-G!%a?TMyO=g*y=31<IlTWc}ne*v+Rx%EF# zPOZ?JGmc_1a#LGJo>$M{oUzxCm+Y%eJv&{OHH5L>9&byf%tqAJ{9m_m@FRP?zJcD! znQ4u)fP!eDJI}ZHd4BHFMxptj;|I)Nb40}qYxHx@b`XH370WIX86+4&M9CG$E*OFs zWu2v*W9Xq6erFZZm&u{>V&m7@X~K-Wr6`TKtC4KKq`5<&DRsaLmw|RAq~2&+s)M9b z_!7{?Kpcxfs3zGoeH=-td>Vbo!G^-}f+Wy#;xfYLRk&qE2^p3OO$W1qn2OYG6Im6> z+eX5QlC)E+^p%9~4dm9_oAv*XG*ACeq`Af~X%1V}7>b;hT?+9|ag=$<IpZ-yykHXC zAJRBY1&LNmIm{IT6Olb8sn|9e|E>^gGQmI#FG21T++xauucT1cGA$p2Vi*%<HA!*` zG$s?Rqt@L-Ek!~QM^VedkM)i)o-Q>`_zzHNKd9qS0b8j04eyIm2J%J#@=V(u(jZt) z3s@U`H|VKUJIx|sFFz;nEMoqhdkJXOe?^2FJC{lo_@An{5W^9-V8W&3Xh3d=1z5*a zbV~|DqHLhS+bZLsiMdO#*AS=D;5TU05t&r36J^P~H>79ppfNEzFn7>^fHP2UViHw* z$E?yR-3g=;zJ7laeJuh~tqZBGw7MfT=qTk<aQv&hV~AX;3k@VI$$<2N7ZMDzs|~8H zvim|jYKEic-yRo4+EqwV;@WlDT*hgum<o^s-gQ{4B*d)_j{eDGWdUMT&3-xi;(aTG zs!(oa2%sndh~XWR6N-iqj|e4ddY7mANhn0|fl;+_VaSwTu$fp6G<8MqYfVD0EL{CL z;0?z}aDCH;StzBbYh6`D4u*-XBF@wLWtKpw;OP2(D>x+TS0LTMbYy&@bu4TB02Z2^ zJ-awp<xf|xOA?Zupf<6A(xIC<7E5NMWwY?hz;Q;w<;^(wHvCSe5I&j+<L!OARF8@H z!_;927AjD|fc+YhhMv8Li|Ykm3rOp}{{xzf{etFAzo7YUnZ4~+<BLSs;(vhV+tz<C zT~8hLJY`z~enIo#-?lQ=RV68*+@FFx8<?32Xu<HL<&x>6?n8x{H%esFmgN$A&p_h> zVM(@gs0hK*;Lt>rj;P{b#dI6&7>a|t?L;)sNs7oA2yspz7%H)YC%QqqzR|sG^qK5C z`3E71gi>i(o8&wF)#<+oWDJscWU|SJ^RGpFCsb0&%sm(9rO2?kVrt_OSS4ENdr2hQ zNSmdptdfo71BN&DldiIBm47i51d!3r&`V7!y?AeWt1U9GJ8umFQRW`CZT|2)6K4Y5 zqR$9NkUJ3BV@m1~%`W)mrO^I(9VOl^?7cmw7Bb>_xLyCvm3m^<?>nfWAkgK5)H@=Z zFpQx`rADMjWHv2oFij%?_r<Y3v?-WjF{B79(GWNHXlS<RhRKWy7Q9KEcVyj;d2Ev| zH<9=XwW(^72U*ClWLiA6af_+Fxe>P8JbihpXLPXjURM`J4M(Ho2OmIDuf`XK7|G!M zh?)m3%`sDxW#p>|6b5!^oqGMIL50|aMF@gq(x1YHY!?x}nVIZX1XFQRoJ6?3Zt`Q5 z4Y!kxRuUnPr}Uoj#oQQ{3J(U28t-fL1h9fP#?R!Qoz|qWX5kMBQSQ%B(_;}hn!#@{ z;yH4Q=%B{-7SWdi?ylb{lu=qR`%T*!vJ-c5H2dcbw<*2Z3MP(NU~-}JX2Tt|dtmFo zDLwC15@l|v;^06y>ArfDIc({NB~WpfaT)j~ApBJn*qC)HePIV`6gWN-34wU8BNm_j z2|b{XB>ocCD&u_j_zI6F_?X<l<t%%P>#XSfX0&x<ILbO#zSFuB-Nn<f<LOd4vs%?e z*6^d6#Y;2*c-ZEBQhHm8z-Iqf`i4fRzm-S_^Ypv84kjoJ8S{!>u<8MSoTkFLs{8e) zmI=GJsCjJQnrG{S$>p20wM&}Fzu4nva%V$^h*ILkE(&M2BJndrxANH3XGKKnt8*(l za`-EnvdQDv+G5y_6*Mj0uyU$&KgWaw8k@E6{$HmI<l8{B@EcW|1>4LhX`}YDs)ee% zQhusO`fJiWoJj1OrX40yR%IFi-mc8mlz7Ry-wh9O%zj6>xFUOE#l&7vA@g2gn+XGF zo$w&)+najUm^UK@-MdNWAGr!<7SNPXu-ut3Y+{{dm9f3rNuqcgl|quU0z~_82e6lf zSg&}^jI-xF$<G`(M|?1GOMeUOOT@Huicy6twv_t*;iFp}`Fok_We@;+N&o9!TKjbw zq6bsn;OdngC;<4jegi(FOa2@U$*k_UV&l`U+l8R_65R3d9^7%AMc|*+iORd+QEX>{ zUGEZT&OXt)Vht>uQs~A>DxJ6WNm~~K(D<HN2rB&ou7h-Ov{>$ZkP4}8?cD&27%7m$ z^M@Zl7hQm21$B+kBWbajjlv+Vu!cFfscxVHp<O#>LKDSu;hGl_S5ScT`qKmY0f|cY z%YuM9F#qYl>_})uujt|^8ORfE)}lAN223kGqXosa4<hd=(?y{6b7gm6V$f9ws@Szv zrw;K{w-ygq9a-K>fo?;Vtqq|Z2>1e_absMnCjEeMuiP_?0vTDV(~q{ivyyLuNPTAG zXaT6-Y_kNw$v~ph5ty9<U^}w#Wa$13?IGr7yV{?c5>k>Z*b)NqTrw~y<%gK6;-k5^ ztHY!v`#tTuYh3S9pe}&Rk+FCM+hIw{h%mbLagdO!fCKGXAeJiRJBBD{QFr!>+Lt1h za_K3Ad~Q*I%5$6E4e7VNh6EfZ2r2r@l(TL}`}e{(v-Xj0w57uOXYhlUE7=1&Btf7q zq6V732lSS(e;jX}sG{ybJwVgBu}{r3nwNXD?tN+@I*JMj-a5+ELF|SMkr`Cz8v)nh zM!7|i_ZA9{XoSJeD4Ng6+1lQ%U6u2D<jQLWCqXkwj|6bU7hRZTBm~hvjmMP@W5~4& zNdSDnmFF9KOMX3OGXNs8WaX*cZebve_4o<_GeP83L~>n6)i1FfzF=E;r>_VsK*n)Q zQ#<<fIbSQ>;pFkk7}P;GjU$YBv!?DL4z>$UX?0a2QO)wQMv#N@;Eu`1SHS?rP4~j~ z>O-=ynXvHG#Hd@Lqlr9-P8#)Y2R}~9Bk&GHe_gkcMRKT><BC+*VT%nNsTSiL-`A5$ zzL1E_DfIiZ55bQwi-YkbE1Vr+s6jhnMkq^%7mxYCQ?zq%$yy-}`Y7RGem2eS*0KA> zzqycPB2Ufpab8)`j#GiB=<Cfqpr|b8q|9#)O*F-As(+edkk9qlKwOWeDF<B(9`o^a znX1-XpBU&RGV0cxd(${T8?P$ONP#lvD3Lwp5Jm*&yUqMd)8y6rS(F;x=bD~rihV-d z+gbz$#`Vg-LJ&_PQvol!*&)ML$Qc)98$%^i(P1LNXz1+sOhK^|@fgC@Hr&X={U0NF zgOAoMP;Pa(t`E8fgTp;(5FN-T4x(}x9;stZ1XeFllv!dE|7o-cj;6N}BvrUT)&fi} z(G1YXa;`}BtT3=8RhMVA4OVt6VASNFyjSk-Wmq>-g_DifqQe?q$g-G*){rkN88X-# zL9SDH@|;czSH4_HAFD!dKm`n=g>KRvz1Pk@2yD!n0}Z>P>%;Yn5pTS9SHzx;yT1BN z;5V{0?-qE0&$M;fc{6hgYDSup6qkfyXhm6n;xA+7=MYU5qo`^Ci)dy!Xsg`RWbxT) zmePC?yszAcRVxRAH%DN=LTOC6*D)uOroY}XT8SYIX2!g<I`JPd75P=Q`u*gRC|t)G z#wI6RNO}pMDbE^($ibM8DRS(AdNQRc6o8cz6V3`*ZHZ*FIRS44I($M>7#95_hbv4Z zCJWGkF-9@7>L1rGLo0H$<7DbAT}3f;e7gW2a%?^dayxhBoF-Sup`;KRu>@hPGZR>m zWgGguw#XU*%(u%GTfmWgeb+&OaP+hJ`vM>B<kaUSW;=MR3H?^tR5i_C2mOhq`_bol z1Sc2omdU@BN!C1cq}*9<1@G`Ll=uqBg?F7lngr}zAP{;ldmawpGUSFQO}X31<!+RY zfsjc934APe_ftqty}epkLO1)Cz0|lobikZ3=^1+6b&}c^&&8_3lBlUCGTb<M12FDI znOPcpvt4vI-zD+RoxE1i7<AB7_ehWoW9Oo)wrnU;T^_~60J=C;d8wr7TbA4#jr{nO z1tSTVq~ccSck&}AY1HMCU8=X0^+_ylo!cj~(dZ4xKx(9<ir1_j{AThSB(}I#TjCZ= z1CvnH7vXqeqyN$UC|$dWF526*ggv1yJX_2a`O`YYC3-DIkx<7Xp2kMKQGhQQF_ETH zNT}%q-`Cc3ybr*sPf;jP$LHC@82#)qsauLcgg}nn%EZ!|&16cEpF@TNsbX*FZ&r+& z>*xdpxh7@AKN80ZZF60`ArH*G;9(FchN_~N&UG8WYWE~n*8&GFNn?F*y|jwPMC=Ln zw~_}!tYh8^2i5+z-WOV2LPG+bBF?muCPW|DW=n=p1hkLGywa_^TM(l)nt^CN7|qO% zDUUNiWxyIJJf;>^jU&_Q)0JwnD=@qToiuqr0HBC(G*O;!1<bSAgjv-#l6j?}f6v3g z{7ku8WX}rUA_Y8QX6o1qFg9fOf*HH~GZmjHF(MiXLcRz1&-#ot*s!3AMqC;)C%{}u zDT5H_uB7cYCUg^hf^Vh<eC&3<Ck7_q8+?l<wg|u9J9pPnEKg<H0#O_T0?{iKAr^s& zlx_f#m*_K9Q5jdo-&C}1b6j-qHHQckxg2;*NPACxXin`woJD&xJKJO|jTIMrp{)Y^ zN?2@TgjyhEXU)T5pxEGa4HhSC8B3aFhcx|K0j<a$jnut$qgwL?P|uKJh%<D1Mk2e3 zzqW3If`1Y7si?PdNk_GFaODI}Vu3KsRK@oil(WW=TE}iR;7>zJNegX+&^@Mrs5%PC z_bM|`_2mm9wR|^5eR}Ka`F{oji9p6$8jBN7%?;$YKWV7rlCrj)GUJ*&m>diFr*&$Y zN%e?MGB!2OLB^(Zh9r2Rv*%P7uQFR!r(!Xbf7OQDYNt$(ih-FFms|+K?9BOV5&d8# z<x{(r+xj-d=52YSCNV5m*ev0K$xzwfWC86mO_%_Htqt~lruX^afJ8@+vTxlqsf`8T z8R`_y#K$Rs1!^*-4ywG1HR;kE!BoTG4$i(;KFg>5pLJ@Z+mWjtt~W6Pe<rW6ByDqz zaGC6tAZNE9JAz}dFqW_(Vmx_V>@cAQq_KtACW)egl^Yu`6zI$G6~$<0nA@tg*z3lK z#wBo>_97-teTgkY2A+t*!?VTDH8$kG<3rli?vXS1d&JyaO*_pBmV1%4D-Bzx`n@5n zHnC$D4FyNDRF@3$E}iz=cj?aFHdSl4BdU!CtV@~_3)JgOQJ?sb`;sFRod<6ORKrV# z)!v5Yv$*Xy)%9MtQ|z2T#in+iZ<RwciJ3|dWD}Pd!c>qA12D)QZ0gWu@ji!EC6ERg z9zLx`VGYI(CO=&J!l!%cHT%JV3~e*w{CocH$3)P)`8npofdSxBa_Ewq6wteQD~Tr& z9K0;N=QI3&=2h+ZhIA03n4Pp5<ZoL$o*rg5XPizITeu8-Z|6CN^jw^^E{z{nl-?Rv zd<u?vJ^KG@Cbv33xb`2k<wE1F<6$e77?nX>#5N_AG@&Ahc=ddSzK9~2>0}wGG*=CJ zxQaWERB;ASQfSEMYPz+s=yxuyJXE`OUtP{2%=5vad(oNL*$zKp5zm#Cb>GMV<=^S~ zsTb45Kbci+^O$Ra#DI2sm&v4t9inl>7YJ!%i!U=`v02<!Bg<wnxzuNkBVr}A^K~Hu zs0Ln+$6?kdt{v4A2FcsVY%AC+iu!KGwLIdkD$Zu4#JH$Qtb@;8$We<L3kP4<Zg4kA zfVE{rvWJhK4X3B>deFOY=CO~&nr`ZOSW$`Fej`5&FYj({yWSab1u>gaJ#Tj&%Kd4g zH@T(F$jxMCwvv}1_PDv+r|bA3r95?4!&G)DJC2m}uwmFLa<(ZY)m?0$u&LS^OJB6! zI(>0G<1x>OzREJ|30V6htKJLh!G~>HlJ03LzS<D{sN#B^YSV4Uf(YA<er-e@Xx&fC z?4hUiVIYQ`)e*r(`;ZNw3`YX_6&{J=+Hz&@c>MBX4#@&nNCVe5SD)8l6OGJmg(n7a z;buO&eFl0iU7X{tA|0;~O6w?8X|`#sGA(LZGNGk*Eg#vpV9_yO&UG1v-r4}>VCVKy zVw-Uw!kUcQ3eK#hBzr)Loi%rrINcV~U<L^JoOSS8)Jod!R2_EeK-WxnlbsW766X-{ zo$mq{LzMiH-osZ+Yn^ce3?*z1{b74Qg&6jiR%h8KjQ}6?s}sUk^pO6@^-Buq__}Q1 zh0NqQ-$m{A;Ri=E`RV!Y!F(xQ!Pg9Yf3kh{&56GMQJyBKZ-t}py0W6go!npp=PYfk zsn%6&b`djXv1?%NLwRE~`z5O!1F3&3zbDF0bB(QHGlif~FNlI&=E~lE>8l-QIP^Z{ z25d?w;#HM<Au=_(UQZ`{aV_6APrGTBKbGGUakGA?A6dz{rh0;F$?cT{8N{bR^s9Zt zmtjPgJ1&Xv?nM4RifoK+gK07l8RdDE-5|KN7KbL3W^UIA#KH<TAfLiYbB|K56BLFO zERyA@b7qy>a0UAz`?D3psGa27bfG=sieA^SU<*AJ2H3X_yicI{$ld>9`<*Jv7ucRx z*&y>=lt{O#WBgv&lKhz5-~6!3Rjl|RKCch8q_rx^WsKiV3S1lfn+Xi64PuT$nRYfo zZk2(<ON`3cj_(-Xa~KZ3poVrJkWHgd@$4_yMssPH_}<?Srf)1&T4FIPfmAiWkx5FC zTR4U9@B!WfP1Q<AYlrBsMBpmlupo7txx9~CK6|%DEFC`i#pGHU)K=@7fX<Kf(7x`R z>mR*IoBf6Vsu#`l|6I)Zk6ttr1O0!Gz?jjTs>N<Y*qKv%BAv2$+#m)%0!pODppO?p zyau65#L{vFz=&-czdg$)jFOpsn#KWyGSt?dc21&3y>z%3_|-#3sP}TEKbzedqjU_N zts=7~q#&$dv>v7&%a-s`<@$cS-ru(Ne82ymotZfKY5)8Tjpg}qd_!N}w}~31?upCe z{XASxWS+>8b$vY=4_PL;?PA^1A1r+h8g&^4F|g9E)@V^`$rh)n_Puv&Bn=tPSZ2#m zv>%>^oh|)esDd}gPL^k{*td6V>HSn<c4_sf_c2`Ke?b+y{~M~f=SNe%abS9U@b2V! zeE~}vrp3r2W{vV$-my_pFyy1*bB$uHiZa}Jfb`Pt<?`|O8Af)b&I(!BI5~XxT0i5H zHHD>ThUQ|P@{?VyBiOJx>Kf5p_mn32#7~W`m{rFUnuv<2k{BtQ;pnn{!<A+pc^fH3 zaqSAZvN)=ut9Q{tR4sPd$__9ymh$nMew;8eyGm9&ig6(g@)|F4mlvP#A8Zvpvzc67 zKjC&@zLx~X)W}Tdk&}+ub~HY-G)@B{s}=Q~W6~lTI*X{uFj~Y8VQ=#8HMUMW`t4bq zW~_EVJDz%+S|uM7k7t~mE&V=^B;t{VlJLoV1?-WJi(eDUB(B-6<6Zx)?cCTAK7?8B z@~50D#nzX=zBCD_(l2G#l!=I`e}W~o`s-jkH57vYl<f@6%K-3u!Hl4Qr9(yAAHiRF z1YM_*3#}rbY1hM<$}j+Y)Ib*K(^n4woIp=!!^vmM!EGfF%cdJK4-6hNBp(EH(1Re9 z8;b9CHHSztZtXid-w|Rin?}lPorV<8vCB8y30gw^80!F#I6_9Eb{BIR&xE>%DI`W) zO(2j#&C;9!$y#F--5^9%J0+`WT$>Jo)eY<NlXk<9+OcbB<czolDJ(u#&G=`=12ADr z!8?Y#_iJ=h5E!Ewla0fy>q8Sq2OYzA1NTA%^%~E|5+vp8$WVJQ!LbiBX&Fho_7aN@ z2g^b9Kj_B}ERqE~#1G2{6w_x+x>`k$c=n+H!GSrE!}o)wQvARW0?<rO1{(dD)vk~P z=Ex={y)rGZ#wWj{iD+~%y-FeQjyDFG^>2sRFZxDDi*(?{5C3FAMVH$qr_odj-|y_F zyh%TXxj^-|g*=sp@Nc3o2C0Un2yy{FLXzGMTg1!{IZTX#CdP4utQTrJUI7kZYj}Ve z2}36+WcTsojcFQPAzI1GmIj_HgD3;Ovx8h^g$+R&H5oi@%@FxRL1ZOJ$=W3DEY$Ds z)PGYN#NWXyDx7Jaz;g|bw-?vw$s0pN6m$ef<VPfT^m?|$ZFOc>>>2fIR6KSV&5D^! zBd)KoJu+8XAKM}R`{ltBF`1(H@Q#Q0z5=@sTxqu(FCTMt^TxhDo<En=Zuj|2XzGLN zyZ<4m?jkx44S}7Z>8aiZwM~7>O@-A3Fomc;K7D`Q%G&Mm0sM1g1!M<2kC{=+YIg%` zw}FXY2v&QW_V(q}qVGTRH%o>d?e^mQjDL5vDyrL(Bz`Q0r-x<$r@CPG|8XRNL)O`$ zDrJRU#?(0hBH~5f!TTCvdwb1~#yN7OfahSve-v+pfB+Su;NO6&Eh=<5&LJbZ-ACI% zeI)|_hMk*Cf*ynC&mlwHm*n9Q4Q88EFfM6==|F*eaVeII{5so?s2rEAPy}m4Gjuzu z_zPh*WQCKGBY|R7b(OVEVQ^r~r?#ZYS7Xm_xy-(bDZb%L^qb&@L%0^eoii0a+-fc5 z2v?9W(1}46$e)7zBh(a*o;O<(P8y~V+F}6qdfA)*!6;4vznG)=noMi*DAUArvuF(q z;{Yxm$T`6OeN)fI=(&?Ui63CJx_J&<Z3F7yC#0OEZZ(-^#L5yYN@ZCfIgTB(!JG3- zs7V?M+_yA{M_y!Pwy1scTd6xUOsgsTWH}NGf>^BgPW*+whYb4i=G8lNfEKTyF7#w7 z3|poSEX<^thEBYTKT1Q@B^Pg>pL?So6?Pg#?~a@%NC}F(#fxMzuUr0Vf8oCjVy@EK z;dF61_>6DoSXSG>@3L%k3l0SH2ijqmZc*{>1xlV5r<z~d#DL2t6Q;Cwpd~1qT}rul zD>lajVd+ogK!kHn=_lEPlGzaes02;_P<7qkreJrDMIRMUyBwz)aMlz0*q7Ar$jcX0 zI}7?5S%GSG!95$FglYs5pUk=%(BMhG>0-@T(O+~ULA5`wc^Fi3u`mTZl+xdZfnr#f zctvl3oJ{p!@9z#xFKePIaKM4eGlVuD>;sDy7_tEq^U15*JmDZ{;1m<|3De(^IahK_ zR)Q{i^v1vmA|W;}_{KMwB)B%`rt-OHbKugHI&yAJ^$LJKp~vRz?ADgJ6IJgx6Vgw^ zLDs6Ru;52|zv09$L;Rv6Ay)|SENX)V>;^mG&B8?Gz}5tn1S)2uZpflj`+Jmk(74f1 z3VsNi6)c@olDmf#$Xhf**%x8Ms+E<<^FZTTW(5X4%6nLmd2@$sBPRohMV1U(5x2_i z>0MF;LA2dQd@-YyE7!4KHmb={W|*44?&~;!jze~#eIT+Ev{}G%+sw>UjflNC#DIe2 z%dYegXp}?JEIRLawb6SRdJJnxXO~-jhOkd8X769<Dsyi9!VQ@-PYFOWpPR5YFaZMB zDRlHEO-)%$AsmraRUrAmd^*h7H+L<)`W};ssRTS}IV>m<Q*q-tA~uIWqTHO5k;b@; z9-s<J<$^3Iq2%V4tE$Cp3!w<)d%VAY1(gwIPi{pS;<b;+T3mC^d|-Pbhy(L|xPwdx zy10P4m*E5#62me^DT)DE;|hz%f6G%o8G@64mFg}b7Fe$ekz`zabIwo8BIy*Oo1#6( zx2jv`z3gK3Eo{;DA+}wrg5OrXT_A9Fq<;c|JP;+*GEcTVJmMA=W9OXO*`Nv|KX$$y z)U&c28u{1iPk%v;8dgbM&-EjCSM8%K^tDr_N-NVHa|+Rp6lFjHFr*@sqj&)3iK(p7 zi5SmSip}$M=bVY-it8=pCW=bUSqp6)y<fP{dHZlURhllWCC(5_aZ!8mtrl87S$47; zvPDIdc4%!b^=dK!7f?NwoI(<|YSuY_obPURts<&fQggf)g}2)J%Fb(Md*8;h2ipLD z7P1NUq$&CqH8fy=L=)ZSHBX%Al)H!)I>r8qY^GuJ<Kh&#+a_#-W*5gj<jyCiGQMc! zX(P^}G6R2K@83ctCNCFr_;#WGZ*|9>PWKLzL74gg8!I1Y6MA-*Q$2I};Z^?r5M0d7 zc15pod_Y|4wx>R{1F=ypoPAZ75E}=v1UBv3qL~P+G#!9fZo(p>x^og%uYH!zdk3>p zyzP6<!CRY*&#l$NCj&E|3m+cGh{2GUfqN%pqOsm!a*I2Tv3aXp@NmnW<>!MYZK;u5 zLO%XuRWxanm{pz|bI0j8%#AYw0Tfn{Zx7B&Svq~U5`2PpzJ-LetwEbPQ}C?LackF{ zde8u^K^{wO(MXQXD`*AKN6R~bv(BvU3Pzn#SYp~kI5~TiL4Wi<ITK%8HI@Yn*yS$q zd-Mwq;{J9z&>su6H$WzPz&;j0_1pC4e2o2EWVJ2xFz;2{_DJFRtrhR?4XNI^E{rd6 z;I{fcqrE(wp1}!F;xE4$P`*x$ccMTcfSwS{H;b7}LFcX*9gFw{XGtkeM|}J`I6fkF z<*gYUhqVOzm4Asd+N_s%LcuJgU$nJu33@yx6I>hA5t=%ZJByaFJvf9iC^fPhs0paS zt9y%#HFDM7>XMdPHs&EPR<w~bnn_Qout`)s2$#vPm~xM=y=Hd9%D$X9Ht-gg%_}ZS zSRIZ&%iTG$WR4eRH?QW5Vh=>EG9})-Cxv^SNU@OCT`^ZG>UOG-B|V*e%ea(gN?-X; zX&^dv1#qA`Q}o+?mO>?bIyxT{*}HC?3Yn~uH3f<yEXd)TdUi3`JFh=0xQN7G$bhyk z9(PbgZomNY=u!7b@l!1=DBf;H%{2Ey^Zru#M=^Ta*lwq9JBkBzMzzYL$EsC$JtQlq zJU;c5#jhp8PZ!WaEjy<cL}E1Mm6CSuR5Uq4be;LSS_vP%)eu!Z7d<b2fPJ=$Q~zbf z!SSC?zc4Yg{r3`*R<tH!iQ5o**3^zi#w4BeV2l8)iV^Vp!8e?+&h^_`FmMGD|9trL zp=l>hPgd5}Hh{z&sLGLM42*^AS6jDuca@(!CJp+nT%>6Fo<_agwav-pb@P1R$G}SI zI?)f%*!5{NPtQxuRxOO4jhwD%nms?fd_UaGNoKG~a+D>ny?vv7$$I;`tfC(^4K@9d ztYE8~T_x#-b$LqqAjyvp9HPd17r}US@B3stilMN2S2qjLEZLIRAMV^<1?T;T$%mTU zQ23{=*Yk7aZ&Ta;5cnNYsY;dkHz*%7y=9+XQNu#U%H`Gb;r4}2xT}Y!-^b9y&)7fO zy`Qf*yuQyL3&<C_DZaj+mrp!dz8&}!)hRtW&-Yh}E)_AWYL!)f#oIG9*BD+adeKjj zES6zx#p3fL%ODwns$<j|RTJmvSz{(X?wnE&qJW5pXoJ8fXHLBw&tA!IZ|J4>3)$KK zMf7O`SY>hrWTU0a&-R~^&117Q7db-DM4$Y1_PKcmC5^ofkipK{;GMkbEFW*UO|@$k zYQm%g7x(ppQ~5f4g8MiqlHvu2Em@knd8ax*>yx!~k!ObGQJ$hBvr$8Hf$(lKhiy7G zl3k4;HL6tD^h{eS{H`=?Wk4@V^Y`OAQBieWa0uB2OQUx2Zo%lRbs9!<fE^&ujxMIK zi}GOAtd34utgK!XCCLZpYXl8JM<EYh!KyM^l%zX@TnJ8qViwHo&n1&5(u}n(7i}kI zFTlLdHB%?re+01-mChtWG8;eRsgH>}L)eJU*z90%9OXX3<lta%4E=J>MCTyNMdtwg zT?e282?<HtV$w<Lbr%HBKeuk|QEnnV7AoCEXb`9$NUQqXU!^k{n6NPutZ&EK$pU$> z%AAzu#d=PP44UVSFc#>R&}!f!qzFHMgc*+icEw0gV3f09AWH`VvcUz}%4`~k2|=oa zR#KcfC}T@(vYccW%Blkh;f~d^gJD)iXG|U<qbBZ}#!Rp$VJnN8)Y+52<%GVrO^Cu- zaBJX;3iBtgr@Wa35tQSI>r)znCD3CdaL2*=C$1g0z{2rCBXr@%QaA+n@_?eiJFl}; znK!pWaScI82fNcP5*?!ZEDi@WoaadD)AVEmvDG(3=MW?Ya4;|ofB@7qz3DCm!sDy1 zU{*^Km#a!IBXpG-=l|?-Tq~izo_mi|UJAcp-Eo=PAdv(SR9}!Q9n=d*$43K#2N#FU zGn*z6KMjT$_ps;}X%d|38_-NpnS-{Y*IQMWuI1CfqDZ5M0kxJ6up1O<ShVCb<z9xM zu+j-_%Cpec>NFE*`GTk1GaO$bJ?(c&&Wh>`<y&Dofq}qs3`4z`oR`zFdSFFX1*MuI z#fVKqAZ6!-V$wjiJHn_EwTsJJoe_|eAHUs}EwNjDc@}%3{E~dmgBke;e-Og-F&(J} zv4c~=fH2VlY#A(}qWw(OQK@Aqh|iar5zMon+3Nrowjdn5`5rF*GRH;(jG>5n6P4cY z$(4DmhW=JNuw!qz_uHhuA|LYTbbyREQ)xmLQE$Yz+6kkRWi)j!cX(Le4`67EDd8Ee zP~I56rX$*VRnYdx5xp^tNSF$&@wy|LDRyGl9a|$D7RqC6W`npaA%-;8-**@$m<;I4 z-}gO;G@zZ3((%#<@1;y7rUflygQ$xY%-@ry%~qEj#7mdX6LXJMv1EH0d{`B$Q>{|I zrOU-PWUYW=uEIX+nll_=yG(vWD6=J!g~xfsOV=DA|8YXi8tAUMx8KJS#jN>^3YS#R zUR6(YO3hxdEJ-;}sQBXE<`YT=AR-Q{mvO6jxJ0D2Dd}ny7vIa!PZJXSZ6r(3D`Vy( zIHI9~FmbFtEgPI`lvJ$aLxMaMd&>6{@|pOqc(gC1K&<Ar?pl{B#!v5!)6Vd?jR%f$ zCLf{n+R&J($|xg3+*fOJ=e`iw*h%%llY~zIe%J{w6s*8%pQ}ujp9(iAF4rJ4HxrpR zJX4_*TNV->A5^bYxMd`I&H05Pb?{|tDO7-%i0YiU{64Tb7Lw(^3l&hH9a~}*)DodW zs+XNhi4bKBRzNmMQIIwfA9DDvL8h!NYyEie@$r7%!0v|vMugPs2^Sv?I`*Tp(N~2d zX(*IquSpFPSwOL-Nl?ruW}Yo93>>dd(h7%yejrgd^VZrLii6pSi4eQj7o5}^#VWu6 zF9GRDak@Ktnaa2Ok&lCL?vIlr=U6=0q0xf*X>s)PwIvGfi#H|+Z?zsA_90z1@bojg z<r_?Cy;d(PRl<Joa*K^I`0Sp0O5I4qQB~<gqA196HHi_uU22&s!KOTd+$`<v9>7s5 zQ83sB^@PW}o;^BAZ#|O8I0F@z5jeZbo}zQl$I~^;vNOKZa=Uu)f)w(DCr1Wsa|is1 zWgWrHH$X#AV@4Raj{yfYixuETCej}I@mm}1o6GC9#|z#wOaG3s4uQ022G9Me#sOla zS~jI^lTBKQrj`+LX;2BN%cM(@&we03>Q07D#YlP{Pomq9-%+L^(qqdp6~Tr3bjuGh zBbH9XeXOK;EpO+litQIaj>wa%`X*Nxk;#IS%c$XH$NlVY!QDPht$Ons*B;vP?Y<P? zb8MQ2<lHwT%@RPL#))1kpn!sWhCUwLsp#`fL7zo-f>bLfX}1vI4(di^x6eMHZ&(UR zYco<OwmTMIi+4^}3p%@w2@ae2jqdggtO~iKX{V}U9@`1Rbnsg~;_&YJD{r7Ee<*N) zNZUTB(~aMc#LX4<7|qI+>cf43iWW7+njVC#Ko3Q`Rs9PR-20sr6p(aTJesIJ6KZh> zZsghaBw6`X=FuVs`^$rhP$ui_N-cq)n6z6RDOfsG>**h#)hYD;AnK)Jh8;)E5~YY) z2p#dm%+#j3f`k=H)|0xxg6IRs7%V}XfSRmV28z}AqL{Fo;6up@a0p_M=Yv*ptmr-k zLj?}K!7_^Oz>wia&xNw|W3pIzJvtLDPf%d{tb-Ds2{gBq6iSn#hsKT`VW>l`D6T4V zQoE5=fBz~OSNM|zGz_0LLW}LE2xtYI;hDxqn>KkX9j^BWHts^1_Gr}*D$<ZX31C&t zgmv%nu&X~qXihb`lLTT`XHV*on_srYcpOQ*{2mG{u-wVFy@C$d;E&MG(TrVFQ*?@R zzk>>umM`#>7do$+@7TmxH|pJnU@Z?$5?_(I4Bd#^f~G653vwLlmrfFklZuTe-CT^{ ze}&c5;*^aVbj4gtjRF$qz(8|#UH9>60&bBhfS2M84kQKqmvS}V_#B}jXh142#F(gc z4A``RT8ks?$Z80BH~0QgoIP@LQPde8Wo_VxCRGgf>F`i4z_unro2SZbSKE&KX-x47 zX&0h(L8*nOTI{4rWwamd*q3Qq1n|N?fMH9n?}Oc@TPwMUDwS*7#(zpql{j3@cFrW# z<!J&?=XQhWR>?(1T$l{zu6{FPWN>v`mHl+n6<`^A@}Cf{c8kVD>b6<^{3zM1z2%OH z*4Y|8g9Qq(&U6KOuj9gGZYjKBI&I;DEtHWu+wr9Iz-hHh)@xR8Z-=GYR*H2Kd<1qJ z*57j{^#`QRowsiCD>_YI8oQ{|QCllt$=awSb`EtF4I;-k4O(hyN+a$LX_Y7N$sF1d z=Dh`~CS0|A=o+CVmmxe;tsoDS>ugoE9b9YvN%a{@6=57MV>w5znB4<H=+1{YH6JC3 zm59M>w!E;N2Bug_(*&HtVu5D5IYbu_*OEV>3(Uv%kY*}B6&H(Yd|J;bPq5N7p)I%R zJa+}Yo)xn4KRZl8q{Z5f^k|*G@NY-?0zq9}NDdu|ZgaJ;`o7-Rj?{pKSTWR&bz!K< z!iV~*cSF;d@(9^o7y5KZnZK<?x;ebUx;bOlhJWQ9>KucVV-3OU%KH|yFe9`<)6}wY zo2Rnka|ynV?);7#bru)nXcIb~?mX`c({4(&#?p7J`K#jhUjDRmgj9(eRMmA4OWADg zD0xuqB@Az(w>eG*@i6ufbmp^bHJ^Qv(mEeBsyAl6_Vy{U=C3PtsQo!LRFRvsGOK<q zA&Ii$EqlH5vQ_Msms#sl+v0q0f!LA+Rs_22t+Ujn`_p#w=JPYjkJt{}p5ke|^2sF* z{O2{<Hwi-B{ms5LY!=PdD*x-=ytVD`J!r`u;pKb%&d~*#EvI>ME}r=7$1GiiHwc#) z1Jnrn&w+T)k%Qix{gP`>*&Tv;muUM~7NC~R(SWyI(zi-vpK0%FfaWbBrn0Tn^X+94 zT;U$V8#=MwLXDd_rn8Tq2cN5cf9~e3Kk$Q^;;R{N`1FGNKpq=+()$zsPrx*|pG(LC zZMVfgU}jc?EtbknLu(OT;bv*Id(|d{2*T0`N0C|`imL0W9c~cllbCI0^9csQsq1TW z_2jlj)2@>KR5Ciw6)Wv)L4sN_rkZj!#7npDNwp$AJt>-#i^wirF`Rh`x(*^N&utgk z%OIlQT06MRT9c5~p;Rlb!Lq@I#Z41*T~2af6T`H5`$L(uK?6O$qh*kqwoGYY8kY=Q z5AEj5Gf~;9Ln-Gs?N6_$pAXCjoGi9yx<49pbPLCiZXdc9BT)s<yFhRg{{Upw%KHAR z0*{65KNWb494!Amou(&qs`j`QA@ubddDD0U>b5vgA7JYa{dc64xPhTdOx6pE{;R5c ze0!@9k~DU$h>eN=Cf{1HP(0L4>8Vh+X85L0Kdp=`_ob3CZBU4^oux}>2&Nl}Z^+T% z(e-8V{?g`u!}R{WOvUl_NK<?ne0;j`eLX#%=ylKaabPliQ$n|f^?AEAn0_pc$o}hI zr{B8Dc^%~<^~UbIvu<10kB&)lahjB()L5NrlItb5l1#78h-u;gZ)?9lIANT=L_=4_ zWq^s-rCl4USQ}cYo1@qHL(&1K_4*l0WD2xO?*_nOOP`M&5F=N;0qxv0$;3>Qnl^R6 zeFO^@vjc?1%v#ygw$o4{Y{VzKXNPNJinh}AO!vd?<MR&oFPtN}oj7V~<L~La*4HB* z8WTA7%wd@6$K1#VhjCV-H=9OO-B>p=-f~jLMfCG8<KO7O>T%D(VOBPLreCNLooAhU zzl9u$hL`spShq#;D4MJEn*fDO_3|?PxY5MKm9pV(ltYm(h8JZPk_}5$%)x2r)G#W$ z2Dsp_f?XcQ?B4^I@7c`QSafkP83<g7d+QRs0^AE%FFM?4S~raF@Qk`%J7yJUJxsmZ zLFG8ieR#pbLGBp*<%ogIL5PdY0r0!_O$Kxmf_A*5gEszr%YXgUb?xDa9^0wDj$(3n zXnAV`{Un`&rnSx!)-`Y(xp_F$!hMj?Y?KiH;G}_4t|vbCi048uAg*}WGnj}UAqqLr zj--*KV%uA740zfJHAKO2T1|j%Xqtd|HxMA)kqo;h;fI|9g(@05SwRcsTKA8Qq>)Q8 zq6=wjYZ&u^LmTAGDQp1R9S{lYZ5#jyYAPhVQe?mi8IRL1j7&!!vp3i~hoee6aGqO3 zu?`+UYS$xsh>I<`WOxAjkc@@rDKS86MqG+R?Sfk+Qi~J9u4d+Q8c;tbMuBc_bp-R< zwoKG%5kNK&m|zHY5rnFIgKc8zo7BNeGzUix{}j@2ksU3>p8FFNf^Bgq<3mLh%Ltj0 ze9#9!v4RlBey{|DD_>nCx-xLnC|CypLa9;~B5u%lp~{rY&ZxRGpf<$hC=gr{<-pMZ zju7N;jvC%X%W5Zn+as+?u^w3OQ_gk?#@5ZI*uxl;Y~yg9ps&&p>`1bwCHjj;nJ_J& z9!w_AAg+~n|2e_19*?UiGa-ctT7mDLx{4SW4C+5C*&hd4X7~2(cxw7+`&9Xp00T^i zhAl0~$6Ns_BNXTLZYVgo2OjRLTWnj1jzu8pJ@m&OB-;gk_<#<<Omaby?>g{x@3qsj z<B5o;-!}|bFRtR>??y1Ye)~{~vwzx?5_v`Uu!~jz?s^xM?wRoP4l;qeX0)uVqxt#D zC;YiFqYOK;Y+qel>*?=(L3ugDqwVv%MS9V@3!?XV!=<Yu=|C_5_I{p%(do|N_0H~n zCn8~5Zuz^@hS%Hc{eB<}<lY!D6-;mu<JcDA^?OB~H!ig=@4jvPv8xKypBp?^0%Ww? z&+WNjysaYES9h;CI}L?+a*W!p`Y7SnZdW+}e6`20wn@FFc1xcAaA@%bT<<IJUvA0< z!!CvJ2<dMKFpYskxp0E0b7)?&xlBjk5T=T4lQ7%X*#^8$nhk4soEaAoBh1|YVC)@( zG>N)3?XtRD)n%j0wr$(CZQHhO+qP{yWmk3C`1+l1CSoSe`El}h#)`;{%!s|$zSe!& zuwtF9x#S{dazkIjM%q3@qwZX($-4`&NNZfl7Mz*p@h{By!hxeXaLC(bFN6Th@&p>@ zc=_)>UIus`lR|EhI1uDE;uj<d&Y6+l-P8n|*?U9Ku8o%C4vKk%j=iZ{W?j`&A>pUy z(lIFxqKJvh64~*|_?K&NouS)(i%JkB$3+yAe5hv11;93BlIL;pe@WT!7YJ8&0vZyU zIBzeT54MFJNtJR6RU#Lq;x%g|$piM{RVSRd{nuP-A&3U2?z|yK6cjd8$-HsrSmm>c zSZ>A<#JxmEb3)CGuT1$;86*i@L348q5$?=ieX9#@X1KlpR^?edhFv2~3D+vzIm~q^ z@wP~=5n$nRBK%_-F}4DkhNawP)`09cIIw6t0)my-t9*fWfCCwUN|!P3L~>#RsZ>$` z2d{)_2t<&g-jpxHdd4%>u@mub(-nG-Gc&tScA-UbBVf|uFSP<kkHXowLqmawsIn|6 z&IGxq9_a-ph1*3=LgT-*gJY#iUSa3R%9pcTg{N7FFk_$J3t8inglR$zb9uB{k`{gQ z<fVQxFTs{xPUmd#PY%#;>{^|$nA9nIJE3x~8dloS<8fvkfI-7ff<@+p!y!+8cg>+i znsla|1gD8rI%Zdy+0&&OI>&7~=BU~FblD+k1%Oz7kh7QQWKNn{@wOSh<XiFx0@4$8 zt(_jOPJ(4B<d9-PPwo#l8#8mZg@I4yr<mR7e8c|d`FZn#>j%vnT_5SsZ;QT!rW;mo zt9LK)I+eM)5@AncoVzoMTp|=-*{*11XG&7Xeu0wa?O9V{&fx4B<ThBdc3~&m*5+j0 zxp1@K?F|RfaogvBc)5y4#QC2nNoG7V>@#gYN=gkFE~{+1BqkiE4&is24GSAQXWTq8 zGmiHI`3T+puh^fi$4Apt5%|U^XP*-1AjmGX;shg(fzoYceJebPLvhh9K&oI#14&I8 ziJ5L+Xhw~JQ2#wznlaf;l=-Lar?b&7h|c)kvqON<{l7(zrt#WCYwK|FbSjeymm5_m zfej7Cgh^@l0-_aY4dITa<>IuWMT^G@OXFknpTEmF%AP5n>PFjIPivdjEhD97BHvPN z{A=5fRM%alN-2u}A}dQ=$Z~>zYovG`@3(f1S9GmC@1|{aI)grGbz(Oz&R}{q@sbVe zH*LVg%a8?1WQJ5531mg*+t08yI;#}ZbhHxTtLL0y{n}BkwK3~)v4Km%E`p34!Kjce zX=3A7D7qBw;#8Hd^mi$C#rfSDI}Tv21h5{Sd8@R9hcGCY%+wQwGSj*$xQzIeTr2r# z$!xnOcQgt*rG++N43y(;Ui)14syabisA^XQ`QDjmm0-CzkzCi?DgroTY7Ls#x@IcY zV`1?vU>th45;qc{Bt#Hh_Paz0&e$j`>qTJa*(tOt>Fk<Vd0np0DoGS_%eh23Xg}t5 zf7_Tv6&6+s7fr_a{o48+G;1?sW3tj()=hR{9l1NtJQO8Y_u!JUo8Q=LFS%1x!%m-8 zYPiDh!m+|{k||2;kSS}mwbXwe`lHay!HB6`aDV8VpF$m1n7CrT(01N}Lh(`EQ?{CA z?WEiZmo*MBb<P>xoV#)<NhlHBO@SSnY?&*u3h(8rcI0Sy7K=N$?oH)nv66sP@vL^A zZo<j|P%Q{24AJ(PVYR5Vcq+TRQ?u!lI*9p{oni^K*)wVvE5|8hD8JB%)_VS}>7CrZ z2lXw=h{6p0TWP$NqBJ!Z>ub%dEv;7NMd-Hz<8hS1N*>+;9P4=L)g>O~BRBIn%&)JS zSnVb;H|asv_9>5*v|YFk6@B0Ssy3D)=gE(v*oK&|;DEiLzr4HW2J89vxDkKX?@DtE zizTo%cc-%~8Sau-3$o71o|NOU!l{c{j;ze5Y8X3LmryXJ>o@s<C33vwCm#&>w*NfF zX&de}^?g3c694lE*QE$^Of##w&*~>++zJ(UOw?eV=38@ktH?itW5WvObznW|s>|cI zp?ox%lNHWtd*iGPhvClGDC#9n3^`UtYg_9VGgr6jKTtmh-{&?oX}Nu(D#f4&s-}E0 z*LTfo5x7n_0DdG~wAm)MwssM^MKcg^G3%<qwLDq_Q<Ou?SG*BbA2!%9Kon@cSL3VN zhuNC!Q4xxFH_a&qbn#(%Lu*rocsZFa&eKO4>GHiwv8CG1ve8-#qx<WI<<ZXEQlhrx zZ|4?V5M}2{u1rrAwU$LgVHe%F)is(4>$zK(`35{y&7<DSZVRD7dq?UGOZz=##x#<J zYFoKj-w#Ml*p}UYx48djN1`XNGqi-^=Keon&CHCfO#h>><`%7~T9P)nofoy`KU1`q zG%AR&`f{eQ|3;T5u3+i1vHL)x_t~R9ec|;eD>}PwdhpB`;wUS~Ba6p{6t7e9(b~K{ z9A39-Had>gJPi>1KJM>F!lumr8fmn;P!$v(54}X4V)|~hvb@H(k=j~CQ@kG!jU8X| zaiH&Vr6oFT90KO<?21m=)Z!RCW!+~-I9|SISV~3hqGEju^a6hu#?w=&y$g;q?c(=t z-~Jib?6{zoSLz%E7d70p_PI?19LRy0RHsj6+3|Y2{8KDBzJhryw|c4>^(KTt#`WT@ z(KD3RoA#OX6*r$KTWaU>>VDUIe;)HqA@uov{M&Hw(2)K(yp8?;8x8<j<v+vH)c-at zVg1LjWPWk@NmR>XhZlJF&#*+}LRFJ^afu~mJ<^qm_E#0%yN1Hrz}LM~`au)~<v1fO zqNHr<X@B`r=wgj2w-&+8F((yoEk|toUw^#=CFubKC5_4G0mVEPn^T_S(DdZ^{NDZM z5d2RB?*HM|j8qbaeYJZ52s2oW_ypfCQt1b3X>|tp9i^#l2L{f*9Nd1OAD^cqHPE3a z24S{ue@DhxRP<naw7SEzCS9x;8c2;S?Rig{TSiV-R%lj{1NC6O^R!*FqN3`ku3C%H zCPvrV2UfpS??iN@pyA1iJQm%CyVZ$RM<s1s7T)%-+QYb8p<r4#<;kt!7uHVxw_wSb zpI8c|X)U56K?`f618ajc5Jio+Z!M!HVgGV?b(&$}f01iEjIC35oQ|vy(*G~HRyOtD zlWPdq@mJq}>7dZ`qCAAK8&LnYtutOhj%qj#2i(edJ2`_xNPee78qDQ_;BUCy;^}sK zHg+}I@`~nVhBchDw5+#oTOJg|ON}7GfSbyM29ReshW?O!o!ATo+}9*h*r|I~6`;bF zv<#kHqJe1hhT1Q4$6Adbe#%7jj&zd}LWd$9gU*t8G@u!pL*ahv>|z~=4oEk)%&gfA z-5r8<k^+zqeqGPh5gs2^x=AB<4arZ(u))777+F-v_XkL0wQgv}atk9dhr+1`QDfup zQ=B2TzfkPk2ayO;6s8IJF9{$%_LH*@`O?q|9@!Md7_q$igS;a)1xW)DA$p!u^$E)F zB^iSx9?h_3`;MnUYDq#Z_6qY8T}_?FYZ)adQy(K&01=Z4sP8UlI?&7r5V0gV(x(#h zQU$o?sJ0WABRQnKLiLg$AT1y+qvbapVTtXjf`XBNP#}s|)h8uKh_s83ml7r>b^a>l zY!`dgiTq2^&m*b;6ir2T6>4m6nB1iGVt<~y%^?8du1T%5Z$o(3s?uh1H~As2Q{Y$+ z;!6m{ZjkOD^k8chjPNH*^7Us`Ki9t8<Nasp{}L=Y2Y^jH9qN<kGu#k9tpm|Iz>}dJ zb|TqQ2K$SmP4o?D>(kATHYWfrO~ji6`(kV0{0Cm^jQ$V22J^q*wVyoNhw7ZZgbQNc z(U;&e*OVCIB1Ti_tBWiTEEU#!Hj9%2T~mpe^@BP$#5*^>p%zP8$7}L;&O!58-Mxkz zW4exNdzLLl6xEQhb!sodH7N~XGkP`;s2(9&1tJq-aRYWK4>Jz97!s_4>=1MLRDq4~ z?h)@<m2gT%tdc<L;0G)$!pKKB6WL@^2UXDW8-Vsc19_VuUI}1;?EWHoMm}@|)dN>v zGK=T!>(^ute@?G>ve$&QPTm@Erq7O<tB@m+Wo90<+Uxr@*UV~oqOtv`(;UnjT#c+p z!M%eUAGO&A!m)Yj-`bvV_aqqarjy*<W|Y^eLtD_lsU(t#f8dSrUdi4PbUDU?t6z{- zi6m0{POKfqaYR&olv&15gB130C)Y?QTA@;YZ3Srl>RIDnrKaoiIV7gYS&mC9_RW-) zmcN*krjlUH9?)MuGajOZV3_z$70DN^%vzIKg31VHu$pKgy&_yv9S;_NvwqLH=vQGg zK@MFw2<-O}Az~-21(_))`WvMw?Rx@O<wZ&4-1OqY9XOm5twb>xi|-)9c%j#b^+vH_ zz#K7=J+WO@S5s^-rdf`Yyt4z1kB%9p`xldC4-*K7UyQE2-T=vOePhebS)NzThy{C3 zXR()O7buKf4xXPKGm7A|bPhO0hqZdlr_R`fq{btbLzI(OaA!AuCjI+7{(6x|GrziE zm26hNMx0qJ@lWoA4zfri3k~KQA0SO#1SUlXu4#BV@hu#)FMtwX@VM!PB0D5B5tRPd ztx}uB;Yy_Jd-QcARq0Emo+Fw6)4Ci9q|C>jzhmBy`Wl+iM$r6(WL~c(KmFXejb0<2 z=Jg5{FS>IAeKnA2*B1N<=R~Bbj{q{=vRbWjjAefh8mu^-8|fR&4p1qGtx~B`?z!j^ zNx_=Dw0P~HevQs(-n13J44V2)_R3nLl!YPmxFbZvw=XqUF%Jz<9Q*G&jQxuAJf==% zlzKr?cw3i?F;PhLN5LW~==8Of&WE2LM`VhV6(Kkt>TNcgq-C;BlH`r}ZX3F1@xHD& ze~JE&n^x)AtUwqT88`iyUKVPpOcrXJ01V&+E<`9N#;k^l!ke3X=t5X^Yjp($mvvYp zeBk8!eExw>eB@qpnNfebaoQXEGT=}PM(2bZiS<$WNR`<^&B9Irn)>A;a|*$I^NF#S zCDLX$)wY3oJKo%4_PdQ^Ys3PpIQoW3huMgm0m9-7sMw&Na}AgrW>6~<H4yp?Ag4Kt zo6Ue3W3I+%F)pdDn+P<m2>&{!35c-%pw3J^TX)h0Mt6pJ+y0H};Od7FkAbXRFfXsl z8VsZ+`9uH8xWTOXe5k5Z;MU_@k_36!E&Ijr)3zpk(cz*KnXMMsz=YZg(*3PmLmu@l z`@YRXhJ7Kz-|OI{(oP4f!%bIX_n-prp^<v_SF@<mg=d-y=~7cO?{nGM{y55(xbQ18 zX|sr~r-@E2vGptVodK@HHX`5yfRo{F6Nt!sYFL4;Sm!@Yr*;!1nwvHuz=CX#HJvqt zVezcz#LGBZ>H+=*8Cf~^g!wJZ8`mYVglR@_J!b^Bgcy!TOl=`4s?wr%@2U=tr5%?a z+Amo!i{$8q&0LRtH4p*33z3-*@Vj1~;3FseV$_zD7I$KuOPKiz&xJplnPfQ^wdy>~ zM=v#^0uA9^r`$=gq#0b6@ZQ}A4Qro)oEVyVRaE4}_(`&;?*d7l?~7w)JJJ%<p|+AX z<wrzVHPEDszN|rD#dm}JBEX&<8dSdfmPKER!Fx}gTM8NZSv=Ru+OT8%2>~jD)Vbz6 z5`9Ywi5c^1b+z}KN$|KntdiJussfvFHhKdWVW=M&URA%&u{3EhMynf(Cu)~N@s_Y- zzj4MqBL-AkGYcK<Ge0{+ec?F~+B6Tku$OismI#bbiJ31DIheCi-L%}#Q-mZwW(+cR zmL9ZAJM_f!-;6U*tId7W3ORX<gXsoz3<JE$Oz1#mD$b%`P(`jtQ#(F|RQPt$e}k(h z^~4*x`|IptP?K$MObN|-l|R6+IY;y&U<LE|6(NuBeI3nCMZ}ex=MIFl9ET>ev!ab; zC=7@U!@+%XfiW}JQ%mDHrkzgLd4aH>U2h|M<Gr6R*j#x|xKH0wW8K{iEm&NIH|tZ6 za{78zS6_UhIKeiTrXM;dzaNvO6Vyy)YdCJ!@mC}fhY@6J2sSGD?AkOW5V!OU%22^s zus*tY*;LgrU9NX?V2cO<81sV^7rJ&H7WYq5M_`}3wO*FnHhTwiw6ssDAy2~qkCp5N zUKvdF<xZkdTj$%G$>s6i_7XXBr}~4f2Mkfla<lVl?pQLW;Y)M(X17xA%VY^sFSOR7 zry1I=XJUm@zEoa8nswZA&=agz@a*TRS!e+nQ$kmB&cFS=4uO5xoY%f|19O7>M!{jJ z{lV@{!G--!&*!vpcHpQXwCM(N@^y(62TJ<kpF18Un^I9db#!xV=P(}+_SWB#Hx0e% ze}B79Cnsm-y4vnlD6Fdp=Qy<Im)o_d84-39>-8{77(l@}Y9`H0vFj%Rw@t>mFprl{ zB-{`SWl5dN&P>V%>>>Ni<QDbe;x_zQ?E>qc3BPb<DF^}8D)*WY$EA#t@d0Ve=O(6) zjXyDbf!bKeE0l4STSYm>u#}*BS$|jhyF8I~4vX;GsTQ<u&v}8vzOV}FKw|EnP^Ov( ze>tJSLVHs#^kO;dedZwfcbO50h1PZ;`ZX;kVyW%sUS&Zt!z%`Be7xKiJK!bd7%_3b z_XV$iozyWg_sTK}f~AAcRb_KVzp4P9fWobPeQK7)zArJE8c;41lb=%K>sZVEP~eoq zs9s<h3qT#n#%@nbL7=57Tnju2i~BVk+Ew2!y{?qIVX`mFWco+DV<2TfL$hnjkeFj8 zYU+<#){Xp|%^ul8O96(%*m)=&lNT#=kAMFL_XnH+T|0#!W9QbSs*iLJpmt!3)tm3* z_OpFW*#UH#{u?6!TdWI3ErRkl#lw6)DbpYghvL4vQj27sd`oslo@}G?c0gg3i*p<1 z8<Z_sNly=F6)rKxSPtSe_Z4O0OQMS&G4Do>%S%o8AG;a0ST}LwVa>b~jtMr{<g<#Q z33TAT?=QGw6}dJCD?K4tCAMhCwJ>*PWy2k9gg0xSW*OPz<HL$n)EcI_-r&6F{``lD z2!}~yrqcIfd4kOy88=Dqr{EpWpM4-NBGIV@+L7@}h|Oj{+g%CYM1A;lIfcKcFvy6t z1yCKuLR`w4JUQ1N2e1a@pyO>`8)AJd0Lr4W-j*rj-fc%c9?Z2||H@d4HZW@4Ds(LB zb6jH|O#~4(|5~Gia2&L^m{$}Z=*~3>bS(twJXhys>1Uj7yO|3CZBnj@Q;zzld-J{y zVl~w2EF>;Cr)Z;^z}=0EUbmcKX_-2vb>IXkf*#4+PiWI7K5fhmT>HuPQP$=uPfa6r zjx3a$63UTG=S6$T6_JIJhUAXua`{3xSO~;F4{$AvH%E3i0EqL)Q;=B;sgnJ|s}o%6 z15-0p7BYvN7eQ`vmbil<I8xD#Yh7r$V*_%mdZiaL@-f=81VWq(h|lXB>b#O6%x`I* zYU=VMgb>;k*Uq@E1m%LdnGuV(ua#e!xZ@)m6Fk(a>Y>s|0<>oG-@6HIwq0d3DEjhc zvzUF#ePp8)O2fy-apE}kL#Pu*VsK%B48CH48SPOqTa#ftiX^*lNLP0A4RPro$Gt_z zI771?g}lP1<r-qw-dcwT^?dN?u6-!G0u@>y;?67bSD||eY9FBwx?QD(32GG;%O!<% zv!1C(zV8d0GXB9{&?lsCB}YSbK#Yn^SX|-nC#Ce%;!0N1V&Osz8srML)-e1`!)J1b zUt>OoiLVv2`ib`=&{sp?_S$`8Hr}5g1P7+vzQYet*LLkl(E#QC_1HxcqotmDO)kIH zDy8m1r{<}VT;*pErv+i4v{jJMX{+p?z2+jhpslr6iWI_Yp)q1KQ1-;8i-|q0@ud;* zDv^mTyh~;Y@+HzyvAbF&V}3HKhZtQe8D77n%svKGKKc61x9>|?k&3`R3%f5x-2JoO z?}75<w5{Eci6Pl*xZPc${1oTp)!}Pk#sbYBJ_8V-{}x$g|F6CcW;W*k8M0dQ&$mI{ z;jr@$Ssk5{e3&UFge8~}>Ic#k@9i3(u5M*c+@})17wr4%6!^D#@~W~nSK!c9g)vCr zp8i0Xe%<oTL}AK~uJW_$PJ+hsZnt^?vV~^0W;et<t*tK2PpkL)>nBz3`%Ta9XG#x{ ziui5xc9`e;b_t;U>Hm23dy=I2DeiyYN9gM@Z~43_O#A6DZ@Vy$X_>@ge&zHtSkPIN zrMO17Sw&P@CpsQkf#?FSVQn*Sp)4|T{*&=Gv}Iz+29r)Q$0<$Oqf;9uQx~>aXU3_6 zAm*6UiT9C{R}O9|V?#!I3jc@3Y~(~Po&(;T>{vQWBdu-9Ve1gS6myG;b!MIW`fwAM z?zh<$-BccS;fiH<zScK5UK&0fA22>|=S*2XFlWyd?+>i^_lrmkJpWREf#$c%f~$){ zSpQ$NngAF4CDR-NOqrO))vjim%{t0I*g*`Q(62ibb%~8pu~hch+olnBD}VHL%EH+W zumTm<F|$rQwVIn23e6syYbGgemLaYg@FxTXqhXK-FJe|4mL%!cB#I=|K+Kgb6rVXM zSS+W=bgC3|V6vOBo_c02V_@{iT1;aooU(^CjxTi^c;nU-nl#J`o8*qFAF9{bla_>M zDf@IvBeGd?|2QhTXO2tgLE(@&YQ89xS!^IUh;RRxjeQk}d{YczbJ2hwCxaIT<h6VD zb7AWfY}RT?YAt6$-y_oS<X;VfST$QD;j|{DiTz23Gu`Ot_38vNYPBgEuQx>4>jPto zEeKT^D%LuF3Jvp>$%<Ss6oX1m8c2<xoFGoIzRhw<hzq<MCChq+V(sUG3jl_XAZmyc zlJqU2Oy|2Ugqtvw3;Df8Eg;ie9B}wY5FHPDY^aAnQZ1F}39I?ocSv@c%Gw4-06Z+r zGQ@XaP`!UY-wB=dvL@nw+{hX$7e=$t>i4y2^g(~X5sk)}fPC=)>PYeRAJ8!&{6tC5 zpdxV3o*+uC$)17YvvL#>O6$IImXi#-^A(M0yitCXgw^2GKeqH3IN5_B`p1cS$f*ll zAvYbi+6Nds#(#JN&XMaVol=yUHMNd~bJrwoFqrcU0&w3&x8Uq-bhq|yiK#&8;DA~6 z7wF@QlbTkYut2Lxr;(TGahh~nMz{xeob-|M=Ixv2gD$XA2!x%m0=RxLV8n291|C^2 zv%q$iGLR9LM*+dn6GCGkgT=)iT=@4G7w*FjfRU8}f0=-aE5fP<X<GvoKcrLjdwzah zGqz#@@JjG38F}2h^uy+F!^W=}E6-HtagGClO-E(x<&9<X4VxmHZS66%*6TNy_~|27 zjrhRp26Er~$Nr9Wcy>k0iGq*eiGGRZi~<0(PF1x4@_)(2cV71$ADMAc40HT?y&7c> ztYTlK=X}~}9;KqDcOP8duX28%cI+pEAv$_oJ-xA??`(RsKi{CNSgmaKd#QAO5R<<M z)o`krTpKJ#N*g`j?p@x_)wZ8rH+tXRrsC56_HpZf%W*OwQA3A1cAXD@<|hX^<!9LU zjrL*l`8ln~`{&{E5^Kv}gxS@u+I+Gmm-SKD4Km3G3Q^&|iTd8$eci~whPwv)ys2vn zXeMa2^rNJ&Z}L4p01n0k89g5j_y`%T)$h2Reyz0_9*S6_S3_LkVHjj+v-4nPRdJ@w z$<xGz0;bH_k<XiI*9lhUpDn-QmrqHCRI}jV4}e`LUWM7~AL0bug8gpKT?G)K@T-8K zhyD1zU=M)!zoA%dP`q#Yz;g7`;JR2eu<!Q$1_XTjP{4yA(_n{S6`*}TrIR&rx<v-B zcEbbL)KOeR{d7=2&2b5Wi4grcd@cRS>;w5U_jigsAY@UTA)wjjIUsj#Pn71_&+wKb z_rs*%^y6F+a+?D^fY=a(9>l}y19C|06DZGn;ZghrhWk<3uJOR?A>n}kb_MB4g8YE0 zfFXcUxKefp0l>sgK&M}QsnWx3kfXn06>Pl2#U;}A5oT|@@Bx_KZ0s1w{c%HWQtoKI zUo&NUAGHjuGPg9va?+nntV{h+5JHU4jWfmNaLXICgaa%CX1Q5<EnuMUG33V(POO|* z#1Eatyu6gZ5xFH~ZyoaN135@u5uM5r^9HuNqIku>j1joSeUZ!JJoUQ>5y30O>xv=@ zVHp+cL+U*B(UHW7(IAvORhH@d<zD(XJ-{}`VX4Pc2+_=_^|Hf&E#M~O*|wgs#j_FF zpJsj&91V5Nj4Kb&O-L+E&(3si7i7E;&dzvWHnU}^6QA+0IzFy15*$tt7pX_^a-8ZI zu{_Mu3IGc=R>AX-QS1+FjZ0KJJlq-y{eS?>oc(14hodC8*7l_l@__Upw_2ADJ#_kS zkZ1!ma%aU#CrorrHLVQ}l!SMQ)Iog%g4dOF-3Zp>n+fOXe=P#<EwUfJl2`GsnuT<( zC)Gt+9u|?uAJFi!^oEHucppU?V`pn=%@LnK4(+j)F3WNp4Q%1*P7>U$7S&?!x(9X2 z=J^Q2lLzwgB76%#VGt)){x!ER4cY3)aLB$DxI(B@FD38cGFbTi^3njne5zXi8@-7w z?=`%2N-mU%I)RYwvA2DjuILw7Jz7CQH3}CNoi|*8BsgGK3Uu-#P{k|$>aX(GuFr4< zk^;Z^A}AQW=AGbNrONhq?2kP>RP1M=N*M{s+diWn>xg*e;Tf=*e;z?)%-^M&P9@Kg z04VD#F$W&;SD@ODt-3wW_<I3u1Z3Uer++21hj#WKG0WKK4l@(^2jYjkFxU24n}hS^ z|MLnyoV8zoK*(&VWWN&ds)2>gZp(m&draLx!gsHj{V@hZUqHfBr(LlHf8aFg#T4xk z$eMKc)%}S9c*@;Ld>-13Vzr<S$3uzuF(qD&Yote*{VjRY&$AJC*)y*29!94Qn%|DB zA0`SzKs?XgLctFj85y$#dHzel#C;*NMH|L1ILxu{V)91KVx|w=N!oJup$*tL6hy}> zMeA-!p<<lm@>0fFvWD}Xjw=dl9WO>ez9d;O)kK%c_WACy0LaFTe-AO8RVcsePk)@0 z?k4x?i_u5p^2zM`ku|sfvNL@`Ux_W<7d0(({s1j0WyTlUkwn~|JL`(Jksm`AcAD?S zm-E$FoI6`e4(4?VNzOLpMV|EqcCxGUkn8kqjsEXPKr4&u+{?Z8!Ia_ocPrrP{3=ZZ z4)oI+eS3nOvR@uG)M!RjQ~~Wyob^MuiOaZ|jf=FXXG4Ki3r0a5EY>hi7ikuu9Ey*E ze?fnX-EzdE2~H6sR7b;uE$OlRwtR)G8ruL)q83<yA!iY&NY?F=S6<7t?#Ael(Bbi} zm2D~$UbVI!k^?FJ0v!)|FG9I283wW9J72e2K0yeW*Wj1^h9WvKC$36fzHmwk&v@8w zG^QBp+swy1(~iIRWWKf;pH^gN+P6lLVvAdK(!dK0R*~wdG~F`Cfqq5`ew$~9Q;&Xc zk)wF-Zuf>|_<;w2`%7@;6c?IPZ3AakV$mJtiO=mMxJBaMc#L|(uqC0!aqnOmr$LBn z(BdVRzJWtBD(>$F0JQz=a`CZ%2-_@zZK-&ElEJoQ#Cz*rAy^1jX2E+^u1-OIBZx}c z0Tr6WL>qgxd6*ix+b~;jxHMP+5fE(>p&a<hwxP*X3lSZ~TA?z<eP9lGp94I52{oe8 z0P2<srC{cd4@A!D(l}A2oy~f^<{zSJ;bZ&5lP*enD{ihMcxo1NBR9k-$<F>JR?6)B z)aJBI`Ww}o!%w&{ZOd`@M77=&9UZ<EPL_;B#f?8fvz)g!@HNtMS(W!aKdmjFE*ha* z7tNGXrPWfleLMI*4J<Z>Rx~-|r(M|rTMSd|#?wnsZ>l+P7Ym}~uCk-LTTS2pW{_k0 zucpRe%)>g*JH0ogRUa2nkL3bsDq}<v3<si%B9kl6%K2>>WX7WhBAa6+y_KSK_u5eD zB<VhLhA3Za5|7eb5gIKgp~*bAvfu`0Ms~U$Noa3+7fg9{28ojpp+X4}kKk##jLHwW z6G)Qq73>^|VN}RH@(u6K@S94ggaFDFUDoR-p)|Py^6^^6Ldtx1h-q1w0ND@2_1Atc zU$(z9&o^gO7Isaa6LPI=9gk1^x|IA>_ZR6ft4@5N_L*uY_a}I--&YZrNj;GIUfHff zM0wL6EVe$fP&<~p<r*~{H2yq{b`TxxL0Z<=<VmKIf5=sx<3<`9nG)M89ro`PQwgVN z|BW1xwunsG;Oj6i1U?}s&PypN=oqcmWkM!g>;Wnx5K%I>=F$HhCkgIra>I6}YeBJ# z{PF6n`^X773mIf&d!*>NZKZah;h&Ye6m*QeWtygl3a%oi&?;GI*B$p>o5w8XbFc$v z@gB-(CXjPoGnYL=DMPZ1!TvZaJt7tz`dGoz{xrYwBjW;`c#oT3iO3|YAwkYW+Y^-3 zYl8Hu-fF8hSpPe<Pi89_?}|SXO+Ih!FmbeaCd4)U#!3Th8`?6XCZ(2j{MJQ>Anq|? z&bgx%{hB?TT&j5#tDuNPmfwyFOznD?$&P@Ha(c>+U6*BdycK8NeI$6`tgqA*|7R<z z?U<6Qq?oH3%E|1jTMh9_aNL4ny&UXmVRC-&`oMvA7m&nBlY`;x;yD&>1`o`cDeo~v zDiDU$)g8oH!QHg;SY%hX+A<t6eAr^1-~sk910&tn&R4#CX<D(X;kf;_cr4ezf|g+6 zoe_7!%6g8&0&uSy#%B^HW})62I|ILEO@5T8Z1<YmP!-T+rqCBdAji}d&_j&bhjV6O zQf>F>nUc4G+in{i%5q(9ov};so2so?G1ro&7KN6)zBEk})n*X}tTjG(lD$J$wI>Oq zyy`9^r1cM|+RB0<Y&F-K^(-vLOBrf@g5T_1(d!tmb}@}OvmQc9r@1-S0etncwTU4^ zIDSi8QT>kFc8ru>Go{in2*?_P%4CUz_ZR_TWA<7om~gPRi>PXEe?~{!#?3z27F3(T z-|I8iBUITiWFgg88VWB^wxA<T-&iqDYQi>Yg-4jazCC$^R@y>n2M_-+?Y7j|_GA^# zQHwrvl|<_XQ*M_~Z<v)RyFYkkSbK{YUJ07Wq!lm;O3-SJq5Z7#;YvKEtO6plV#Ekv z3WkTF#wgtXbLrdMYDynUr5r;j^PWehSEvm%DpHn(XUT70bVn~WldT%6MeCp9u`S{+ z%oO=12B~;8L!ZUs{<kV&Yx~%hJZWr2V%MgIU{9tE`QfM<6m2Bx7tQ02hi!GX0lCyh zUqM_2MM7qne(XILCGCw{^C}lUqxc{G#^sAGcAPiSMcEg$8pYRDyCemnP0QW}?1%K= zgBAIX*ZoDi0Dj!EW=qa#&50}JKz8KoUEP~!nfIgd$M3?ucZ66!ueUl3{|k3FaSF_O zT*XlCAd;`xPo<CV8<Vktl@sdGy<L+F2u2{#Wog@@qV~JluJxrBS?$FT{MK&R=xBmU z_m34JpIqbX(q9w;+Y@;3;Fjj+#lk(LEVk3Vr43?<ztQV@J~6?INiAD_bm3yM0B9Q= zt=mtcU3qpsjcwT~HF@E71F&h(?n&E%wrU{#ID>av6zenvgl>^hiB44-Jujoi@p=OQ zqV?NT)?G{#OZ9nVf!Q907Nn~k{+Qc)a`ED(laK_JcfA@BJewkbPpoS#k(38OCEBUo z4ZWle#jPRhxCnRb7g+lzpnu-c;<uzay_qpWa(kgSR=DL`sc{ewTv@jQoFVbf(>;BR zcIrfrvQqVD8fayKGizhnol$>9k~aQ`o=f@|p>8a)xos@$Da!7wEqjbpyO!e;3L6-0 zJ}h=&bWL%NrK2qy8H$1>ld6YkZeO7v(<+OT9;<G`D+y*u59Q04*MfwM@}gwD<w>_V zc8JRB2kvVS?h}OljKFr2XSwAV%)Xr@FdkItio7Ww2G8e85)^Gf@`gQJud&<$?sqFx zC)M+0Y_9Sw2)hPXX4E=9S>&q}c01<YofxBLcRg_jxyL@>IAThMZd}K7LJ+}9S&M)g zPeGP=gr|VB-kTCh^IQ24Od^CnOAwpFZt`BWFuc3UUD39MJ2kVO^4IP|W=$TJ0y9r& zvgks|u@n{E{^&FhXk*NV{S<UQ<KF%FW&<Mfn+dh|sIFCD(F=EOOuWI72Zfdgx8J$r z*7^r`Y9C0vnE(kagEte*ax+%Ms#=O`(Z@I=<*3JYxD-1N)@}(57IZa=(h}<1a7`m3 ztp#`xwVDYkOBPXf0N)5j>t22Q6fzqhA_FYa^O58~PHt%32NuPy(c{?NMqdUYX_}$% z$L~&XYv{jYc{u*-BsL2@!~d+U)sih$cQxuT_VPf{K5<WfMK(czsK1d21gyc{!6gv& zI-H7ogyl>9`Seib%f@lEpN&aZ?8Qz}^`Gne$y|1bZixBQKI`>|xzhsc`w!ny)X(Ss z^L5%*pRe6#eQed*F1+41efe!L)~d_0WS0y5rFk@q<?Fr6>p7rI!jDg8RW?cK^MmSJ z=jc6)ZG@+zRhx@XX6XgcjoCF`$Gh{z+5=4`IB=hwbsXakxcfMnNzrr0nVLDLC@1aA z_;rKPb#k{q_m%krn~b^eX6O5Te|Y_mj@pOzn4T&x-DuC@M&+(_;SxnFS}9VhQVMD* zYVu_r`dHiQgVp=FfB7dP_<GU%el2?$nEPS<ym{&SJfCap%cV}q4E<@Z*!Q!WjJ0Il zOrJ1Uy|DTT!Zd561S{Ike>^)~p=+Z4;>NN=t1BIWx5Of=IoY^Sc|rf%cGHo{FV=Bd zV08ZV?D~4PMflXll)DRWcE1X@6T1b-fLOoCy-vS^JZrzgysXRLkTn-Nj?T(Wd)c~c z8UuAk-eO#ps7CkdavhT*MgBOv4ePWJy&i;s`T6#z{C59<{<3e<*}nKKSr$6;G<SCT zvt7DSXb!`Z9qPB8jCoz%od$p?p_j7NMK=oi^H83f?BJ>caXf0FJ9E{d8gy#M)nSn{ zoqvMV^W@4<cvz&d;L<YN%@DVH8IjXKu3<OiWXc*nEk4DbA#rXI;C0l1MLzui2F}N6 zv)o-S0cVFRhFe$2Pa}ofWQVIn)8<&_xY9@k##O873-D~!3<Yqudd7yBQVr)Gx6v4> z#M;rA@yr$GsKoQk@#xi%a0xt9_W?Kso^jj)uP|=FHtv26sK)PfwsE^m`Id(jzWlfh zXndlsWaXS(Sx4tO<P&v(%jl^xJee~WQNOZO317E&STb3epjujsaT(;Pp)zmZV>pKx z32Wf?nyzSSm2@17HE%VcsD^1ep{V4jEvxK45O0|@rhACLD`2<HGQkIG#paxB$Vy7{ zwyCzxHPSb$<C~p;pI&yy2Zy_u=BPoWwK!5eX1~-2PMUYgZmMVGum^|Wo*Lr|`emAq zjSq$gO2GneIin@IW}8_DIX>XnUTjp)Uj9xr)!swGy3)}29I54pv+HrMUa6VI=$q8d z7G+<Yc7@Tlywike)Gh6oVbASRle~gLkcm1;qu)GQ9g)+No(>LCFCF2cDymqZTg8f* z2sq*-Qu-G~5mJaZ)2!KLUL_#xDXP6{up&%kIq=WwMeLT04*9EZAlizY-w*CF`P9ui zdV5H7&oSi$c-Ij1G`%c*A?6aKbO0Fgr|OTMtp`T-?@Ib8xL-}m-NBOJqzu2R+9{<A zrA;({gFqdK{Y7nb)P&t{kbD-^F_=%mZ~_Kf*I0HKUETCB2>G*2vwq}hg+~*p{#1?2 zBxqkHVpL{;35T{0DWjF1<r1snv;+9t_FVCNoq9n?wiEM`B^1E$=_{JML&HVnlwb19 z69w@E#^N!+NAoXO%^t&A6RjZ&s?$7sXvu$96KxBirO^Y}<e~|>hNAJKk-Pp^?7L!8 zPwFW=?%8d?$z@`b>)P-UxqNEvVVPEAN{{S&$mN`Lg(wQJJ22Gu!xYLQLSzRn)Yn45 zIZSI%c4LVCJQWU6A7r`<1kz-q^k_)>93M_9hIXzwEfy|u^n#cq&W$YZb5c}Lsb<|f zc&nZNj$r}|ljYta`5Md)Jg0}f`@|mggj1jE&su^8E$sV_i4dCZ2exWJx^o*x@K84t zxLG|qt^J8Vd)tPsc*WfWs}3bzlm5u0xTJrYKmh&IKw3iRUpA1=EdxW9MFypSNa4C) z0G(To66&Dc;Pu|gd9Le%1*5gHQ0RObxz_#V?}^j62Yo#-*#3^Qz&8l8tIN&x?xgS% z_jVgKJStV-OcW`b(K2dspnoM|;>x5D%HZa#L5>L-i*Z|+j|{W{+1U*vh!oegbeutR z*y0IZ!N@mQ>|lrw0xrvX>FR4%*&RQlQT>vqb}YHiRH+T{<xinYm)C*%yZkYI^y|2a zRoMuYhcj~DYc&*xqMwrUTn!r3KN|lmXH9rv?>uKWV<XaGaZai70i`rt6lkQ5vA{Uj z|1Fqn?dfK)kWE?dDgk>E;o@AyhVj=vFoBVeZdP#eAC*8J?^WWh41(}_u%k!n3e!Nk zm+?ttFHW|P0226w6_Sq2<lH~MWsbxc)idtV^J#%P&$HN)<!vv#;v~K^svC?mJ*FSy zR?suYvLBp&(y4-0$2d_XcynU7y8@JdGjIf0n(~y->UeJ+&Py5yh7HzE_PRro40q#p zU(;tC0o|IMUmL>W?*nHElZVdFdaxf3Nz}_&_Z%M@c(Bj&cDTo%RB#tg$T^-HG!6{c z70W@`F=GTleG$%W0ojr#fD!Q$%7SYpdH+y1=6ll*(t6!{D4O^R!o+vSS9u^ck`rh= zX5y-=?PCBJ_Jvy8H+j%q`@@9qNP2?2nBlDh&upF1PEeKcHGpDKp3#{nKfTFccIK?h z^V`KNZ?a<F9YB~v?L(AdB7P8(y*%|1{gcl15m}K9w6{EnDG;64Ckz+z3arj0QI2bh zD+HzEZ2`!}GyP%aIuap1t99(iy$5U8+VUDM;Zo!_pF#(dTzd*0t995=BCI5p^N+}` zJLNU&*}grDq)T-tfsOC-S}$FE>Dn$`71zbZXs??*cjRA#b^ldZxD1^nd+IE>E!JgA z&RwzE!+YLMSoKn^3qdA`uHIdmgzEe)1r_d@tDFItdg=^Cv`suHsAR|JcBBYye_78# zEaY{?5@Ze-5+f9rutQl!RAqbp`MqItDREF2S-d_13pnonr(Wt2PS&qg?8TB^yP_)* zzVBDe@*;OxFq<^;%<`TRCzZ_;I+8lSE|XwE38s?t-zyIL<4)1zqmly;{3YvxH)+dP zj5o%e9<N?-^_lV5s-ld*4E|L`={XJQA1{e~^JT;fzqqxQ{3hwS75_j+Tk3P&t?WeD z^Tk~OGB|Qh9<}eI0;`$WpSN-(sc!{VXYT0pp&<040A8-RYx#27w6)fJQ!J?7w6!`P zEzGtirjioZv?ZrhxnV;n!UlEsUPWy_gQmCA6_&VF=Q<A875DFB57SQSle1EqvE{oK zv2y*eP@DnNyNRb_W<k}Gs9h|{@`0L}Q)}FM!RrE*xil)9Z{~GP-htm)SyY#ma=T_s zi+Z4S(#$H3iPB{L7gJ?mTd9;%%;U4&F{a%)RHDS~>PfZu24kb#x9O@2SuAw8*3*l) z#|UR(yBlX(d@A(5ggHP-)pN9{Ln{J$6O8w`Oo-em6iio)oR`dXA3Wnj+;I3=&LyIx zQxq0^0I;1+ras7ec}t5PzkoY&emNoOF1srUBXzPX!OjJcv6mA6MAK#FlwU0|IEB%9 z&7#jHq6uLAxO%4~fjqpePcbf@OZ{=DOInw7AV(>t(20F99)t!X($pa2NFy)<8Klf} z6hzoL3upa1&qO3e;c`SS)hu*GTLzooThpw()9RdUp@%&DW-eGRF~I=CDk;ya(D86y zIbX(~VZH||EcRGf{Ci~3BV}+jl|Lhw+>0Y~LGBKE)`Bm^8U5OAE5M|l0ET0%pg0%p zC0l#sfw;z9u}gYNpPkLIR*y-gZT_(XH(PM8!m}XVHs$@3>{up<q(*shz8Cw=yM(5u zja{y@s+Ep%Wd+F;OCUy1UOlF*{F>Q~{utXcXISe|Cb$=(;M4^12@Mn-{yw?OaBtO- z6w;A1iR=Uea70ECHmQozGpi+AE@7b<3m<aGkr5kVO4zn;(I)=Eyc(x!9;y4-gErUp zD7T0yBu9r<me>5IDjp_*R&!CRaQ#_9le}52)xEorMq&N@^;W8ncEC}O-8hgK!`^7h z3>Mey(-fZNv4d1QEeDp>Bg;<Qg3`>Wc#}G$POjYb+{kL;G9<ZD)lPO_sSI8eFK6VL z)Q8kX`HQkLUd|=NNzZ_sBjC5R=DXTaJh$aV-I0Vs4}JG7;OZiue&1M4ezw{-pfQ_G z%5Ik@W)$U|Bok<rU&TG4caFS8&yS3kF`ML9b}5r7k{(!WV@%p96EYN*N-or-4!N;2 zLFJA-`DdAuL&=M>dqv{pGi~q2W|#A1Z7jBr`rgqE5p?%0jtd32hh?$JOURHXV~DwW z(*?<XFi+N=4EJtYUNi`$8k~A0gw`&M6iFd`4w^;9(m)TpuI{e=JROZF{Zqk4>*19& zAyG{=;$7uo`DY@lr3*FDy}i7Hn}35s2Ixa2sHbx0awgZbImkxnb@_e-%NtKb{17DE z$6Y0qj;gM3dNZBTOkth}8_NlY!g^bLpwEFaICuy{lZf>D_5i{_&kOq$5$f-R9<+G7 z%!<c}VFnNo$y27KjwxxKX-OYSC|!DGg$~b3rU&d7m4nieV;3|*((?5IJfL_-=6pO& zn!xCPJrtyLBx3twp+@5nV2#v9C*-584BvuuH~Bs@Wc%qZ68t2%sKhT)(W=15F2ZPt zxOwJbg{~dcBq>qXQwFdYitP3WFPNNXv^mG_b0=X`fYpK~PgB;jzqRT=H~JMx98#_z zwV1moSL_oaS&E==*FJmwGS*Er<w4!ZdgNP*-qE}xcX>4S4MP}#<?P8kbP#~lH|LE? zY^%qU0wMh9af<PZ17#gal(L<YJ?&PC!_poP%`wy_K*BAo)4H2DrVEb?Y-fR>>I-V* zM=Ul7&Fq_N3+wMGLzB=~EjN`d8+#cS7uf<WtrC1(6ij$SRT1gtzN~%X_0Cypl<|o2 z$>Ba6&L)^4c%S`eSY&Jodoq>Q$lb7jvoN~Lz$<Bc8)U1OCvil*uE{Nxcx+Z-a^sl) z@?A!Z9^W+HeEWz4Yi5XR6O#8E2+Mx+LOD&&+XqtPQjDYJZ{iszC*8gj5l`Nnk2y)j zl3b(S9OgoA5W^`wD8yswX1-{+he`-<4Z&2<KEm59ZgCre=~5Z=b<FR?V8ODkJ73X- zJ4^xj!huFI&A#|fg&{~}=Q!O&!j(8m+_DTUY1F#L)5)$k##3NVv-w<lgOG6xK2bcA zQIH0d-6{UkX|`+qegRnFz~`_!K~$q%=$gHoZ1{vasz=;v7p^4+Q7T>m&D~i{(~%)9 zaW<0sNuZ5Za9XEEY3jJ$_47|tcnjf)-l!^Fkj!`8RzadLockjZgV+)jXBbIZLP3m% zac0jttV+^QMsXS;ms0jba~+*@+s&e~g=;~lDrR2zqbpA&-8MpoTDY9%Qwr3mt)uEc zCcQi6;Qk{aiRHAjlvPTJ{6H2W#_Q8v2?*)|c&VDNHcl>tP?G1ZAoHDwr%2d(Lm9WL zt12Sw8h7fUSvuiLYP2@x;W3=lDKg<y0qfB5`#9}5R42CtW!L6Lt54CXHvzCT7~B$^ z(PUl;A&(P~NID=_g%jq!Aa*4{{WyR9Oiz3zwPY9Lj}ErrNc`7IXmzD;`Qo<`Ob!09 zH4v}#k2dKDY)k9)dg~buNs33aZWQlLAb^f5J=U1=4jZvI*W;58`&7)zTfz;zHj-2= za~F!5Jj%;EPap~xp*M(Ni?oii3mff6=ubDM$V6qJxLO!UoKCdsWMcz%uI8}%Q7;&{ z`I6W|3_5dZ!VZ5jkjJ3x3sdL(w-el*VP9;Z-$Z7cgGQU|I<k@_>K7n~u+b3Pkz`}7 zd*}dc<6Bz&Qay$O2PzC0*3Zs-<Qgx|viBz13EVn`_JsSX<frm@b${GDW6=#P_bt$Y z({$pnA}VMn6M*e<HmclZzPV-^WQv~>w1FWe0~2T<$++|pV<wPlbzc)f^L+QbV7JnO zq^2We_esgv9gh}*CWj7+n3^#ii;ejPcV;$=qhCE`7t8bYti&-x9?ci~UZ)B)Bsu6b zPWdUgGH%_R5Ph`{rYWkt4&C<nV*8R5PE?%Pr}tz>{ON-2$y8w{w=>&kzyAbeE0b-N z4ugqYs`s_0Zq{iEQpFThbR-`S3i26jRp2=0O7gZgmT1R|2Ts`-kPsy$Vo&I^aPBAe zSD%%D*0R)SR+@0F>p6&&*MTP|L^6QSrz&)HP2`g{6L*JSlwk?INeYVR+n^DYEyF9# zq03Y174J_;<nkWmaO<5V<or=Fhkk!9>W0~rm(oNlym0ImGt8V5$fBvJnio~nc6NI( zNr$5oNaSElwRRb7EJ2NDoDC*3(-0AXOmm2G-?)Y{YY)w&-z4w(#pQ;1bL4~4EK(n7 zEZxsO5)Qsi1VKQY$x0sACn@Z~SY?ddmB6@)^7VJI=~|q0CPm(dCDF#hWk@4wUee7m z87QTQJ#7wj0`qQDLKC^phNq<veq(#04wNMcqsib`2iJN!2~5miV>FWS@Leu7Cr5C0 zZZ~|z6SwzANfGGTDMJ;W8F^1G&n51pj`0zAhS-p$c!h+Y%~u{rAJxVvNAoIS2ib}K z)j5UKx1&HYS#{iGEY)7PLJpZ!Hn$3?j;p3D!<~IdEAy+nP&+m_Eyudeyll^cH5lw> z+&$(iC?|5lb5~Kj(vCb<tMLz_p;v3l)6~!m`PPIkV7j9{Asq1n+)ZAh9UR&*FB=Kz zRgyL7Kw4CoEJQw3+yiqr7-N^^?e`SX*|YYEZ5EcvM~;ObNJ=|N?Ej|8$3p*Kn|#cy z4F9u$_Yp0by5muY9f00|OlsPV94jUmLj4gYC`h9`BbUIhQ;}3$V^}SX*MAA`7nP=L zbRMTX6OtsbrnDP6Ix0E<73ZaY<`7>$r}wroI<_~8Q~I>-b{9#DSqlmW&oA$fvhxSM zAG7znGQQ6zIX~Z=)Tg|%pV$2{zMtb~wyUupCs*6|2%zh+zOV0-oyR&hzOS{JvW+wh zLuUs4fzvyIVTUZa**EStdO8!WRY7-?SSfAvzpKn1Y+ZX&5(d8x<JPw7Ya!|R@f<MZ zJ$rWO(st<z0D1e)eZ@z-I6HY<y$&ezSgY{jv5>IpvEea&Kuu(4K*yM@#I$v7mo00M zusB>qtoGK%UVd(CY9g^;7Vkz$=4@fqi!^>hcx86B00CY{39DT+go1~q{g;>cxu5P1 z4uN^@qj?#>zBl%=gS3#jKYs}?JFKmwi6+#svg0^xE{`6rCefyl1M|>6xjL>`(aH2o z$FCDt#WC{^Av9jJ24WfMr0nOTR~~waS4WT?7-coh&~p%M!JqfW(0~h2A)%(Sg&s|w zX60Uhi-6T&<l`3ouYC9`$5QQFt392e?fWaoUU&;vh`sUWu^9eL=SC1uz7QL7;s50^ zC7w;5%}F4hCD!F3gA|P=@7skCjm1ES#zDlx;Mn`+&qEyM_16Kb_Dd0-;^n7z>Z?TL zyEc-Ic_u9Ihr61(<M1JoK(<1@@bD_N**K3N$Q#peJu<9S+P%fbVCJ$Dt((Y}A}slk zaX|ie8?dzfHaH5RewPSUup7k@3;5N@lnHI}4vqWz6L%f>1&YrB@8{%vjLW`-$FAar z|8(jt<xEzbfy@GUV6b*@GUH?Xhrjy3#s>O^n&7PbUHc?e+Unjdd}NZ@Unxm>x*Hg$ zqYm(LM3U_stu@lI?r>EaJk3<YfnN3?f%#tYvbPO7EocU>YzVva{8R%Jkk2bta*s`I zLUBIyS0;QlIpteqQ?N&xgCT#;bg+N<a_v?9fXKRs0!9A8ukMicJ$SUta2r`$=&C6Y zhX0STa|jY8Y?pNVv~A<GZQHhO+qP}%v~AnAZQJgi{%7XKEaoomqBd2ViuxkHs>(O> z$w_vw9%`B+^KAVEpzoRF%T{YTHMeNi3&>u2(|TTi3qCb_XTMNao8WlJ+vP*wyeGiS zfySwAe+(!#!c;IuRhA5yPI6p-{$lfk%&CKAzr@X^fu#`utV}U9Dsd^$n$v;4mMLq$ zdZn>|I<3^8s>A(cp%|8}fgI0uhhbp4hFu%~vLS>E5x`0kcVFe>!<BkaF_761(Cq}* z+D*z=m>3bb&R#Y;qJa!Zq>Y}jEN|tWj!=*AvD^Kp6no{`4@n5jDfDLuDh+K7pw~@2 zfpjoRgz#vx`PM$&%888LJKQ0F;7JUDWbS~H?AvemnTi$7pJLHk-u#i8k+Pqc3u~>W zgB8K9{sP}=yKC%+ocVa*kK|~!r_IYdESuwd9TAx)|DhJry<0e6{#831NJ~5Koq`Kb zJRRSsv**lMx&kaGbRD1fM^Ul1;e(jLV)&9)en-W}g_4;C*Pj44_krA<Zm*xS%#Bc4 z+uCngSO`#l#DM6hy|~-CwxC_E0oB5t{hQ<--D_O%Ti1SDBdBR_ueOoK`?G(xJ@eUN zM-T-1$~2quJEmN`mmvJ?iwzEQ%6`RmFi@T0<_!=2y5E?-g!l)8o!A(JMnn#rd)EH( zCH|Qb{ni7AHp3et3~&#@q1F*{p?cl}1;OZ@1o6X&h^b*2wJ~<1xI8E<al|;lT{{Rp z<E1%q390UDe8iKio5%G@B*bh5q1p}IwDd*2ja+^aLYXb&oF`TLBnK&D*a>5q>!=B% zA5d2~wqoha;M2{h^+JH(Q=)flaPv2+;3NmfqE>!<#{cTlE?XMhbd*L<T=59^aX|=4 z;~<3bp`wF0X3wy)qw%6Kb!hJ3+0lk~Ql)Z)f|Ii?{<w=lUbfi<bt3Q4ZRNj0$QmM8 zOj6*d1T0K|{=?EkMU6cbnG#Tgqg1U7D$Lm=mAU&|m`3gFn^~NmTI9I*(^9#rLZ5>? zy~0{~(LU^B*{!?43;+^>168SBuWLDn6X2~bo{r-dN<;%C5XvF~R~{T<A}1*KoDqVy zhuKFQEJiBSACzirV>K-P*g~o3Yh$3d8)giE`bCkP8j&s)8thbOKY|w-OuG>Z2VMSX z+u|ncgcVnl&<ep&RsxI~6J*tP9S$OasBp$!m@&DxeF9IDhe}_%KT*v7o3}VtL}jD} znmcIUkm|tjUyr<^0fCjla~CobxW#|EVW`SXJLUf%%QmnRXK9MQR7uo&N~AnYqNsYd zoVDnr4YSFwpirCIU-jT@@~HCA2D&41iI7I#1e;L$B6grb(L_+3%L$?X9ies%UR=OE zrk)GCqd30=&cb%LMD${8xp=ePJ&vb13kL)ZmX%u{K@tHW&Ha0PH?yDs5*iV`vyAxL z2uo-{2_FBb0xlYkkK6@?;#2nt<3n3+`hqVP`@#nmy&GXMpEpK(uVaw?XCtx`?kOHx zhKkZ*F)q$DXJb1}T|68D>d$r?_)<!kd12#AMY8F!>XGV01raf3x^m5CEC0o&%aer8 zj8MorbU-!Mn>P(GaUEH3r4EFP1<nv+VjfkmXQp^xQb}N~*Y1M<V7sD~0kJZ2BTo~) z(iTPVwm)-!KQVT4sYZuRG$^Ef71duF7)rW+HBx<Y(As@T|9X7E(}OY?(uQ#Zm8c98 z35spepS!#WyKb(&*QE*(Ja!f{PrJESQ_tWSsHLfmsL26p>P}`P*>nUL#13GkAog*@ zIx!tBOSAz}9c^z5vW$y($qIQ{$VThAENAYMGOU==u)OMc($eKH>q44x5lxc1Kg%6k zXrE90<-*AoWhFVH{-vGuag9SGimqE1)(%VSefq38)?5ggq?V)N&f|!+aj}?<PFY3S z`K4x+#5xiEyg3UwVb>B`<r1p4wzWfO0dZ<@A)safvvFvmW_@Ign9LW<rxlZxgRD0- z^!%Fncd3wx>`U!Ab&<sp`{fklT`{nBnyuo+2-iOMXwK(DocB73IVqx+0YU9QTJX`V zsCn#i5Wn)UvQ$8!IbZuX1CbGrXAxk%p3F+x+N&PtkQmO?zh0~YRE7-FF^_>tRePN@ zVW!4s=cDV7zZA7n+BAy{7>OMo6kmc{mSAxtbqb{(R3h~XCFIpwQ05I*e!d$%65hew z8HGg59n@~ESfM~hA`A;9dx(@y0;j$&i!o}1QMfQriD2O@LO|!$D)=V30+sr;v(){? zFJ+4^A}ucwSARoZORu6$(`hmV89R(HQX=kB@7xhmSdzeoY{-m4H!+rm{IwE96U1{e z%n%$pI$0Y8<=`P|>h_YEtxtov3Lu(4GP@jZ9pFG`aSc@6HROp;lx&2TnOs;&wN+U# z0vGe!J?Ti=MGUhnNR@3%C$cS<l0%t9r|TzGi;QTm$Y2b`!P`q~yWJkFi-^lQkqz)0 z<2WFcISxuU&Hdx6P}--=kODkF*FMCGj-Y}Lra{AnJr>bj{}3p*lwhj%M->CF|2++j z$`n3Rf~-lhjf&5SNDWQ$Y_yS)Q7FK7o~<}v+tGL$JY=deo5e2?$F|=UdE_}B0(CJ# z%7iq7{(1z~7~e6lwB{1qgWf`A>VedPzF(<Us-OYmMs!l<Km#rtJ_SyIJU*iG?LXN) z26BX|4PEbB(IS~?g>FI9xKd=<hiC`%Dz`_bKqXbvTQm^SrICR%d-XU;eGLs_Q4)gN zv!`t5OlZW{NmwlXS0X0PpYr|5Z6=~>V&r(5!Cepahpbv#zr*3XQKA)Dh#6hUpDN$4 z0Y9Sw(LG2c-)&m%5vJbl3S8%!U2OXis_*f;KtDPUx(WXA9>((Z825s8<IJS+#!U5I zz$a$~i%M_+G1yp!k%@Mse6OZ=;|0lcTrugMje8FJUy1eA-@UI9Xs)jSc~3&IlGT5h zDGj2gvws07mJC0HQ|}!EGE+aA>E*74-&02*1@rU(b0Fk}a0c@ox5s^Omv2?!|M{vN zK4f94X-Hw{k>oia`oIu;jBJWW?+vf(bf6k-Zj(;>q7#ID{^%awd=b2t)kT<9(=goV zfp|apO3!}4NLe0sbNhvx84y?rSpx%3y6zaZ{^6fwO>^5=70>*p;Xa(vRy!#E87`b{ zsnYxmi6Jb9pH+{lRO<+tGmMnR@MXwOy$59EpU7>jlDp_p0E&|;E&5i$_-DQW1(agG zf&&&Q+g6Q239WOX>^ua_xhD?Fiad!=oo0zRjSr|(P0^}9<TbNTSL<K|TtFa{y^OQG zUq_by<flGe{S{l$3kobvhEF8x;rBi9FWFRF0}>*b1@;gd&f5{H9o9>DvXXC921pNN zHmpK&4W>W|^zP4m9Pj{r8;+P@mGEMD=w}D5r$j2A_hz$%gPdmBlEX4B<pxHG2GMMe z1ar|e@#-dE1rkdEA39{ukyM1TwR@LgMsIyY9DQkMex(Svp@-zIref?n0f(Q4IpUT4 z+Q=?)UGjK*v23s0iWB?ZccHR7)kQ-OweBL2#uh=wpoa`^b6)TnELMeP+BN;eqC!i5 zTdf_CZ*OmHYGt$Sjs(o$wnmroSv@_3<wL!$%3GnkO=Mjqd=02%$|+u}vr5YzNN<YX zdWZp;<){i>zLOfLK!>O4qP|Itn|Yt2FU(p8v+#5|_X_;fw>Wc+EeNI6^WO_|Wy{Nz zhHd5EFs1!GY?28Rw^8n6u1T0)4udSK;Bwwu^7-`Z6Nx1OHaiB&yo+)!udlwp>lUaS zX9X3*??L?DyGA?s90fmgl>U{$iN2Pfgi~n<L*t-a?D=aZ#59x>=z~Jj{$o?iFjBM} z9EF(qI2^5bb)s$-N9<+wr5Cl3w48!*9?(-fN-Y_<iLo5XO_Js7g2(VhF*NC)UUk60 zW4qCK<ngdkOUHv?l;2MF9oe1O0cvPc9jFpp2={6uNMFlr{Pt+#^b#JKO&7kNmdOIJ z!{JdZ9qSS~(WJ+wzYM7o5i9H>CF|mTHyKWu`Z=05<;vyvp}PL)Jj`^RC`0e5^6aW{ z>0II|`HL{pctET*I?E~;6!QtAip_xvp6pVACd`6B^lP79VZ^@tuKP~x7X5lMVkvuG zzIpk?k}n>g8w6D)>uo>LC+>Z?3#GZI)@Z{c48if(tQ0Z6R*R+W2Ok2JF{#X@{Ixf8 zSzL>;bxgw<Moxhn%dPeqE>znGy*H;|XUy#r_vuc|Vu80K2p;P?x358pl`$kNlzPAd zj{LDU<j8Jonj#*Aovn|9_r-Q4vpaP>>mUPfiC_b2x8XplC=KuII5;G(h%q!xpJdc+ zzz8TzZOCFwVT@zcjEP5S%wj1v7v(dax(Ux8^WEvPCmgp|mI=%F0@^f@Z3hp<mGi$g zZp9e5PaVt#9N2g`I5Ot$DRw<YOv^)-7+M$hDm-Pz%PKZ#($6XCJFqG4W`7k)53MJV zVv&j|qG4zcGpQBL4%)154LSui9P6s7Z~jJGd{{%X4yZa=UuAFS6i@T2aeh)uhqC@% zwX)m|4EK%@;|aMO_TS;D{{R?|l2=r~Y+z%fggKWVJ`Y%ZuSo9=g%{jnQdd^B04VR_ z2wVwSJ?CKb4}@aO+EkqZMsBveHHPVq=B%d@oU<>*`tjj;_eZqvb0zw;xv>LeI3m)r zI4cc;pm1X$)8mh`%g>k`j(wKVPm3??Rgrm=DP{dY9&X=X#bsKtPuLzq-(8`76@bLj z-;yb5xy?o)9}Z<d#;nAkAaGHnbM(4e?ua+WazG|F*FV)cEOWT^D%>a#4}8P-QgQAT z1&Vu7{NlpbbHv^I88AnmF5ED4(gFhwv|kM^nv9Nru$Hi*ayg^sEsQ4`#H3pfJI{=y zI{}uSN(PCQ#ov?E07Vx2mMU-nLCKl9EHDb`&hc7u9_+)6J889DRhtEK-()M#7b#OQ zjUz+%SraFLMv+1cO`oyJ)pw#$Q*C4woaVi3S)+y=;ar3}utgM@SFoau|54f2RRx-B zAB3p27Oj@2)VO%Ih=MVe^7`q!L4f1B={9oL2p56^D5K=uF+J(grL3Sf@nc;#J`<#x z0R_xG+jA83N_8iOaM`fVa#ZSfyf}#q`nTK;hh`owNp)8i6XAV9*-_&0-qV%JMf2b2 zN=)>O{|^ME<Zfq7D{Ek(=wwYRgHKOKM=N6P;OK<U&c^&-kSKa~dZzyoBx)#K(^gRw zeq`qjnewTqYLVNs2R}$DZ?7mB{xF|<To4>p2!;hR2D#hYw*hv#&byx-Y>x|m`1x}B z^3u23G7w^%3`<IZMU|l5AqK7w`KTW4AH_}32<DL@YJa(2AiPYlQSe9wINpv>a-}Cg zys|!2*uQdXUS;LPORCKD=Iy%Wzof{%R6u!g<^`2bwQTZKt>7pdkUSnlK-d|tt17*h zmYM_(K$DbD>om9+b>wGj?0?kv-k4LLDe)rFFmjBSCcy6NP$QvZVWP;8)sD3|MQRQ3 z=>_e^-C?1R@)ZuC#>2fcFlh#x3CYpwD3OPw>#FoljJOyCf+Ok!23nPjLGiRhFd#A7 z#v{U_EHF`$SewtX^5qh45(H4@`~*F3hKj*oy3vjP+Ek~D+f0N~S<-jJ8tnV+^Bgx5 zIt*MTL13uU5dZC-5Pm$E?PmHYDsOdIBgXO<5D)=Friqxg3f2}@ybaVAuE0iSNz!%* z+JBXUD9`@QZ<YyZ(8wtp`H3(gbq7Q#34z`68+^c;7p=A7TRR7WVg$qFA=(N3RZ^L2 zcC_1?`$wasJO?O=1&^#fVAMq6ffXm8{d<e$Ko;ykN^<eU0>Y(>%Y;PClBll=19-j$ z@roh?(<npvl@cOWc+r95Sw#CZZV>Ono3!e6-h+B&1XMt8jRI;@6wE=wu-TYuL^25p zuNsH1<l#f?`4Z_>d8_QAFS~OE*RKyF>M#3`Ta}*eX|$#fN2D%75%RPhsSUD`6%!5W zALA`G-x*!pyx#S#KGv`3mWwo^@JazoMT=Q7?Io#^v2>*?bdPG28GlZ*ORrz=KL^OL zBDDV{u-Pn}-We*XY%#Kk5`~M?D!;t&{urodw}xdU&|us6INSTj(Yw%yK;e?q9}IIG zgdwe2H)#+~e$@j@U-7p$>5xh-uM~eAc)Wcs-8-=>x)@KOX>DIRxYMZG_{D0yA+!RJ ziSBbd6nP1P47Fi}^8!t}u-3m{E?K>`d){4^a^`5$%C5se8%E7GM$<<z!x;9=oJ4{t zA)9;P0XXfGm0Kpf$=<HSRJD^vPP8;kV0B{kJ;y_qdpbXvtfhRq^Zdx}Nt#OfS5@eN z7lM^QWRI&CAOUg&?h2Ug08#674ZAf*GbWcK0eXO|c)JArMT;p2EyR&GO6noOAx>JY zB(9FS)3nEh2qd=<%)&k(#k&wHO&gbex1MHC-pPpK`PF1%j85gf1LnYZ`n!&I$aviq zk@UrJPleeqH+I@98O`TV4&j4FUM;}@s-pBie83acLVW@Pk?x8=oHQsxtV@Wuq#W0Q zUr#CM<tD1KLks|D@w-Sn0UKer1afn^%8`=!obtlBJmK~f?l)%8RE3UyW6UxqH`QX( zxwzfF53}C_O7dF|LwEZuO)w6_*3*0N(C@A`4S?1H8M>i*=aYiLyO|f%Ei05O%HRbU zC$U-^yHC$=5Fz{8iEm|gRLV<AKJ7pO4^BSyVbhDn$h7NmsKbw`d6}ipCHI^c8QLTd zk{X1q(#IoRry?W|id>fOb!VS-7O~pJ=LgdBBGZ!hkxrzU&zs_VX7#?1J!Q<)Z<X7~ zD#{*W_hF6v7tr05Rmxl+sL-2Xi6MuPt!j<Q-A%MI|8Ps=wltw$1sy<}bd=K3-(iMu zzeZdN^CPoR&0$kmN4qaN^^tm!Mt&qj=?8Nmxq%Ks2}E)CWB2)7mGA^Vp%EJMxii~) zN+8=RG|p~xB_0fmNea8B*qrhL4B4)-b*RzsWKvH|Z+LyZcr$&~I<uvx0tF?v8VAKd zc0wq>ewbRTk%+v%@(~YYN(mmX@GR;9BPz5A9KkH@0VVLqypsh!uX{xnH*_%{P|rO> z&~*oi2Nk8R!!(V(ITAMhO_Nv~V;UKK(`~LlzNJsgf6`Z!8)=d-2u?4YybPHOmfegs zf5V<!KI|BQ;89mS+nvx4+EBxc+D+YaUxqA-h98jH+=M$J5OIKk<oGY9*<*j1>cg8D z9yWR(v{-5|A6g&22-eST8HS+p`53ITR7rh1`#H8s(R3`(g}8f)0PDGyn$<d>S0A%v z?pdb053SUz=jIZ$x=87I7gw5u&;^C_@IHW2Gs=l9uKP#R``DH@Lu;2jh;D^k1QE`d zxfNC#UUv9$A!>I{+9R3jV@q=U9UTo6)o*NLOkZRBPAxK;>*uq&e4Ts@7iBQ2PKp|! zX|cx<Zb|1EvIdDVEcr=kQ&J1ZNA(mrm){i-w+yK61ZW(kP20Cn-R{C1@!8=r;AX#^ zLVCd=yoasNF2&H7cAN@aN}l|9xgX@=y`kqASB#0WCzlM#YpU}NFJ#NHHA6xljlJiT zWip-pH8vxWJ6ru^68zN;dFJwss#}Pfg_}^a#O%SR8N<qqe+im8@NvZ90Ab3&(4ki0 zcbA<VLpnx1J>0s+<wtX8vp8w>#)&V<V?HITs4eaUjz3RFfZJRL^DRCy;+oM!9f<97 zFb~{9N@lbVFYO(4gfGZEzg0U-=awfjbFb2<c;JPU#RvLt-to-;O*t?#1JnNu_Sp5y zJs=iE*xIQng_+P)>ZYiG#|*C<NujEvo1DG}!ZhTIGM)_BImsFgtDN+3-VhVBas734 z#>e0J97zql3@~}UrQQCROD!;c4$@u@;B|X-{=B|Eq3Po;+h>1ahsOHiWL4S?w8w0} zHNxuS2!{2+;PJxje7a<OqAegFFcF9D^bFht=k9Rh<lH$9o-oNSJPvi3hC%gYKb?7c zBbCAn43;OoiMZ$7eqB$Y?7Y^ij<-Y3B3JAClM+-n^WIA4?vVm8xJW&8*z)>3z1|`? zz2cq5r_M>U7Xou*+d195c%owz;3aA%Vi{m7W;vqk@NoMud%fT747~7uo&8R&zKqjW zcA$N~uRnTzZeLemDmIxuzxP6XxwNpgVR?ec-R#a4e}vH;HE_TW=665YPMmcZ)N@DZ zLXBM(5dW}7C%UqW_Pl=&OcZFY0G;B$usM-+apj~+=BCc(y0UT8%HCf#+q_)mN&(NF zFT036V>zikhdt#2G;q(tj^nU!)6mBLj<K+ukT-~y<ts@&Cps)u;thPUzT3&CP7}%E zKEDzFy)GSKjf#%ji(g#gJK3yyf1}>NrH(L(fM*0^%MAG9(nQgBxF5R)I?_p!*GPu_ zj<L>3(G;{&`-<$xEk_$(Y|`#rv*sIR^zGb(HmB_&lJ4j$<D6SeI^##&pOKgh?GIgh z+v9*;hGiz$g2&#>0iW|mFaZcoAmESb-*)f!Nm#i!qd2t4`KTpu>StifP&IkhYAxo7 zdtob3cT8hdB5xZ6D@M}jGzp){cwfS-oxGaUp4b#QSOuQhUfi0JF2UCdKJQP#*9<oi z>IGYgj6!Jvnu9K1xAzz8{`VZq*DJ8$wK$9wHiJOpHlAM4Cxspi4h=j){$D-<U<j&- zYjWtV#0AF`Jo7J99`2y?_&!G#ewkRI{{Y-?j#JH?3lT7&0h&j!QoI9x**#~s_RVe_ zb{`H+JlX%avX5G_zW@W5t8%(VElhNEls{GPo*adz2A6041IR%~(XS)4AkVyC9dR3K z7R%2`5+o!355Qcpv%hR{z_9(@nyh7zDrK{+dY;#UK%D&}AS^e>IhI+Y2n}j5l;LP( zC|vGa4p#n{envQ>-yk|7DiAFX<Zp8<iwLZYVI9?Nu_WMGsynC`oD%%D-zZNYyl^PL za~8m%<_IV}+KmGLJRo@(_i`84@?0ALrXiAhih24b!><QhAIHS*&vrsdP6=Dz;24q| zVSsEuGuu<G-#7XF>@GJ;bY!MDr5sIYSWEA_F-Qgf7TrvL8aQXtJ_vePwI9=SIF~&x zPL`8PUdwI^$Debf%L!Aqnm<;5nxzbLQg`_wfwa*7P4T>e%jixR+RourwiOVYG65(M zsEpDzB4}wnG!`4gwTPxC0F;gK09vl<!s8kBt+@qYD4^ZFv=1ifNs5<U+0L72E_H7S zbPX1I-roCBEu7D+SyCCUikfW%w9W_WU6JT(VK7WV`*<|sN5++5ShP6(xx0lY@0;Rd z(m>w0(bVYTS|_CrxPqnjp_aMYp^f!f3ekmnf{cCk1arii_`SyH0ck~bVQ*2kw!dP3 zoIuN6v|hV^k*N3Dfd|i|bxeh-&TDD*Wo2k7ZVs=JRmfx>l0Hy??H~KcmAc4YOekw3 z^p-WQzCb;66r0c81UI3|jASq?BpvYqXY7~GD3q~+FWnzNotq$KVnS1RGpaaNdKrGG zGnp61oZN)qDM2#qolZTb_zCa_`y#zKO1W3{o}hX=Pkef)Y4V&S%owK5n1uKO9BVD+ zvg9NZ#c<-|?+u|)mb}XN*o5qR<-S$AHe&tHJ5*W^Qc7RWJW;Pd4jInxH`l0pQn80a zK2Oie=A2o`*Mtok5aQ_-BKDj<t5Jj3LXa$op3X7g9<kO2muX^ADTr}<M5)4>B9Ayj z<sts~*oy5Kx^ZA!=3wd*mqf$#sLj68GTqg&eeh5VNN@v|qJtgnpGomq3XYURtVYLx zw<LtmNk-&7zEDYomW6m0P(x)uiGp%O<WvU%fdUD!IzV1LiX){xjjt|h*G>bhU6c4? z(?tP^wgD94^<?;MBdq7V&P7U_wFdkkyGft>y`wV~r<EvhaQDSKVFc&|8E1jVgtW9^ zM0q5BVU&_MPlK(&N(i5W9^E`kw=xDf3VLZ}kxEdjM2g_u)rd}T&?|X)OnIOs`)+d; z`3nJR<R(?Ern>3JWi5cuUNs;?<6mUoCL=gAxWC#$&XPo81io-nC4*&UaxJh4|1E3g zge%Vn-$qFj4Lvky0y*@I5aq;ITX|C>sD>ghl5pHhMZR3;`AblRDf~7t%^NvOqUY)x z^0_^)JdcAPrBsHG>fXX@scxB0;cnhd7)r7Hfy~y2$!^j{Rd7|-xR~#5pBHm&jhoty z?nABd(A)s3Eyl9lKJ`;Jl*DPyxUsfnu{5!F=n70KmKmn_EZ}L&to&ES+zFPiX$86X z>@auI`HHeGg>T-U4#%*mQg|_lNJbA!hw&lyJd3lG@j*BWFZ^_HBG7FvB5N-g;qudj z)_+XQL9;}`ujTKJ0;>HL<Jba7Px*1pRFckk?*cFk97m;ns?0^@Du_;P;X@90<JNi0 zyECR<f#v!7nS2U{irW`T9U&no8__bJvL5!+t8zY}P{BR34vtEH1~B3=Ys7vruS-%H z=J5+od#cW~w#aJC$H&Dir26;#fr8LerKo871om%6(csY-LP}Wl$+b<DOomdhQY$p4 zWcfou2`h7=_Zo(+m{}Ey%))Dgy)L%&eN4rmSOp~Z%4=jI%B~+?kwVq~vV51wn%3n) zDF%WNp)%nnE8|f9aRn+MM6!v!$|Jp>aUy&63|AD9;RDJDC5265m<By<X$YcJie9Iw zfzy*hYA}rIM}oV*9uj0zftC^ifTEfn(W3~C8xbCIwTJ56XX3L1b+AVXw9@#6d&T0P zm0&2>stlzT&KL83VqrtPF==qh(p^%S3xgsUpLw7z2tjz0aTD{mOXA6$W18kZaA^r} z@^Oqnj-7$KPhBwo6}jLAW{tBo$|lDqkU>2t$aP8x2qupy&HU@@wcy<fV<Ml6N2(NZ z4R`n8$W{tu6dY=rN$>48a;*Q>@aaR;BX<RyEIS+Mw?$l}Y=W9(C%+|aeNCzo!qO~g zKM?DpV8_I11<~iOGe5exWMkm|GOLqZL21@QRkfX~u4Zrv?~sM3*<NqUYD7LmG~Pod zJP_yoKs|or_D1<wsPbGB`XhGpu4uSjyq8;g<f~orW?KrI?-35fIo@1S#!nummhR6V zXMFW%#<~dUf%79_Rz+`Z9x8(eLU(6hS@QEvrAC8pMS`DvbaBgqU3^(BZX-Ftih4$K zL0nv(s{PE6f_><$)X)8-y@Q0Os8H#JeUK5T?)9?)o>ADWfQe)g%lS2owpk#>T~Sg% zSk1EQm<g3y8N4{}qRN_&+`f>LTaU=YSvHn)XMfF_KavQSz|z?OuPnbToRB+Hfu%KH zoCUL{1Dp-)eLf=l7EgZaxoT);SLRKHTt7F%Oe42~#VVy0I%x2(Q{((5m~5i_y>ILe zDlfSR=F6FkLUHShAQC1w<GcBQKS|Hz`j!YFU=jMDs$HWe*ru}gL_QG_)|hmxQE4G> zp~P))Zja|bf`x`BCGj9+a%-B4YD8)Rl`8GOeUlDviI5fO$m+`VVjqj-|9ThUr-V?s zJ(m~eRwR(#o1h=cXH()VHN!<f%D2^8ImO(5Xl4Z#)53gK3nSXQa6%9VsDu@^BmP3n zrJ%m@0LhIVb)ps8(@{#I7+_oJ&k^>YLE;!YXVR<~$P%xqz^iJ(HO)mgPWnSlb|r7h zsLQ$-GR}=*%MXd*saOkX2GvK&Y_sNX5blv0+#o@Zw@?wEJ5s}i56zMUR=XFRD6kDZ zv&dOi1R9gb3FT`b6zjR}O+ZU}Ge+K9v;DzQQ}ndn-^^N#2&4+LBPBn-nqG-2IrB+^ z$q7uiQe3vAvxVYu03wkz9=y(D8Ee?Nk*^s3q0c_vWGP&!fbsZHWAF3CW`pfwXGFG( zE->|7&nhFy%T|*#QT3#9+IqsOm*8!(AetdQVp)<0Yudtuh#Hq@AOgJxoEORZDE@;L z)JKrLg;()1+TwyU0E$j|o94g)Dv)f-KMn~~#C8Nk9l8kqH-L?4Z=7DAZK_pe&CF8e z=vC!Wg(2*(`~<6la=(6ao>;VVFok2`sP1;H!!?*-(`I9FQXX7XXEp2)yZtO+gPMt~ z8Y*edlsO&LGF<~TpTuvgF_Q)Hl7>sFt&0tC0rqc$Ul<jw!L>=Z9ah?T+%T@{HC@oB zA+NngjZj5IGK=7m&|#STYGok>WC4y;I$8GA3R%?f8N)vLj>JN+I+b>1dGN>%l`DX| zGIO0jw|6C-=BdSzPuV|I2=a^I_C~I9B}id*rOe(9k10r&bE`DvG~^FNgqs7|W*cq| z^<>gug(l2W?Vc*cmJ6qx<hSVO<2K2uOPZjvEx~x>g^1zT#pCy7@hw)ycT}Z{R88CY zo<!&aLe!C0CX;fy)zzVWfk?z>6ka8sB@eopA#f3CN$ct)<$1)4n?|h`S2L3$KvGYo zSYwfL9(L;~6m@nL2Tf?{3eeODU*>h=ofJ-$vub<Ap`F4wh84jE3Sai8Ihd_jIJ<FM z@!1dVKktb1D!JswMIZElN`oeoeQ!ic_SOlkD~Z-J7fO<J(9OLSRtRZ#;ZqD(T&rZk zM#k}1Wfd;vJVhW{up4NX;}Ui3DpR#M=0txTx?Rfw6P2)41lx>V!CYl|)j$`c=~rC6 z6t&2%vh`Lx0JzilNf1lq5xPovzIx_m9ub$-?1N*`Xcexi*K{>*5rGer87@~`!@q!% z6BWzSxJ2++9qm_8<2+F%(eTpQ#{`5jY5(D8=!IeKb#=NnzDt+Hw8MH7!j@CJ-<dgS zaDp~7Nx`lai!alX-bFB+2-6|d*$5m5h_iAFscn`RR7X>AkCcT|%26>e#_O+iUYZ?m zCiw*vO%YMUWz&NT<{m)SqMm|V8>L=#9%*SJje-nn>A8=Lhag5-6Dpk&rhjQl%;^tv zBS9~%^h!cv*|J>rVlit#@VInRo7~Ik-&CG#yXY!)SLx}FDp3qlU^sUllHt@~8seM} zzz?2sn;6fGH=`S?NS8)0kd$q4w$-;YAuq*cB#GHIGD-*Yo=hQ0X&Mfr51r}9?p#g? ztu0Yy2ns?XP>;KYCi>$koU<v(o1jO7c5y%h5Af@Ay_ZJ>sGFuiO9|nXk?hrG^+2FU zkXY@BjlErO3BuZ0-4>C0(iIgE6Sg?#%-SU47&TMEMqcm8!-xbbZj$4=qEw~)n{@`z z)~X;eJZ#%0Xn4pC7LuUG+O?cELW*q{K=N^p`LM%CeC_oTj<LXKnU-%Ja)C%GTC2pK zm1VxHbuVQAUN~M&pkjHJxhyR%-nW7)E4x$_T;O0N;x~0KK8hOWlti1*&`>CEXB&Kv zF@7vE_R-$#O&&l9T!Xm3nQPCYPjMueGD9^aZeLStE6@i}9ppvz(!5b9T~$GTZ_6Jx zRFhDq#KFO#6xET2Zo5w=0SoD}X9RX|H6z!MtMOQnSuFROE7+C-B$6N+nkrBKR_CKO zFI8i?^La{?1~d@Lk9SJER}~N{K0+@ZEE@Z2o8%pukyKKMz>uDG--Z=F0%B!@cg7`1 z3G!40X3e^4B(7{q#H6OWTLDYb71oGJF@=M{?Rr8%u_+>-8MFn>Syv42Q@W<^YH;Um zLN`VD!-C0ZledVdn`p5q44&>9Zii;V1`y}2OK4o+{;&IJcSx>#9QIEM7LwI6LWlIq zb**D~89;xE;$^vioq0}fD9$y<oes23J$9b%;aQH1Wgkk_!?rCayGq5|#w-`;u-PhH z2hmPBjvsYLy}U2hbfNiXdl^fLIAeLW;AEMU`P!=Q+v23vT7$}J)QI*(u>ie|tzFY~ zL4&DwmBf@FXPx%(<m6H#20Bbnvg_N6OB=r)CYXtxQ;%TidMQl_Z6b!}Nx0{Es{)EP zYnNg<5#smFLw_-3F{Oodc`=j%yZH`k_Ue>T@>z|b>u5MZ*YR$)#4mbGnNMp27q+CF zV&+!TRC|5rQq{lFnGb#535&{o6S%*NaWw?^>$<Q;E|`l6cwK5anL|!|>s%L=Y<84! z4nExLXkQdler8Cx-IGENF+BJ$Y>kq&8$C;_9Z($%G{_4H9a}Oh6S9g{%S9k_QNN7l zjoVZ{qt?F(V4CYE0A0hU89m1DCV<ZeSVpc9`&3Jk?Fcfk4!UL5oq{isZnwqo66UxC zPeQql<H3xvWzQneMRgzuvq6v5!=fnLl?vzzHSvynp^FA@L7gTa*+j>99rdLdAWLw~ z?Uws-o01C-jXEsma73x|tJDmWY|ZB0iwDP2K>h4x&fMGnSBPtWzP#s~qK`~2#`kM> z)6r3VK}-SKzjgg4Z;P97@tmMc!3-_#XoeJjqv<C~s-r5Ik;#E7fa_R7x;Ku6nGTs~ zmL;0oRe)1hH>^Rh4s4=Vwk|ubOG%qjtiM<#K6%y`A3BHLP%#yL)<r_0ag;o4>t4zb z0#K_TTolcH8=zfVmt-{4p#zK(r2EGv@zY79{F;_e&_HOM*Ek4FxE&1VP1k{2+zeRp z1@6?|Bg33;8p0`u&fBR>R}+GkSL*KL`I>P{nv6Qw#jog3Y0BsRNMxZ5uD5rRbiQwI zR5PtVl6~hxZF-r$%omqfPiLY^8rU|;b4sj(PF!i2%loO)u>SiBk7OFf4;h#yj?kZU z$kMNQfohphL;V^fCVqG8$R|a&O?+Z5KEI)t$c4`8U-JA+8eRRSIhx<v8U;-t77ilG zv1+e+GB{iA+puez%r_u*^)^0nS@96RxJJw<dveDvWd-?x!m2+e`R|0xU(NFWYptRG zADZC1{zJN8Ll}AaBCpq9>x*S`fp4GhEQ(hHaAnN^#ZChp6rQY2tC^|E3cZ>xSQr6} zj=3&0Or7|lP)(+EDLWn!VcywXe5^SZXKuHjZrpyNVA5V`uYPHE|8V+HemL9tG57g= zll}SL*xA9X@mctMtKt3r(rw8-o$;+wEPqo6pN8{&JuX&$=*YDBwqMY$=we=`ur#|Z z`|M-b%;PL-{3VEb@;>%Kaqp~ehv-zyGHW!Ao853SrrqydsWeVNASX%ULZ)onylfS} zXrI3j<y?0#wxJ209HiJP0c#3x1dKWO1xzH=-9u!&1>u%r+biDRyKLBY@bdYu5*dOT z5MQ=kJ_{3veO0~b&zUV@qBU`TNAj@jY<COtX59o}c|^~j9q+w)K0eU0F1e6ph`=d7 zOh|7uKeXQ*wTM_cZM_k!(pWJ3hu`WfXx3<%j8}ORJtsZ$<2qi(zb5j5+I7{TCp@Cb znRnrF`*>@;gEce`u5oB>ZrWvRBm!AgFM)-!i^~ND1$u*m{JxA);XNzC`VvqOpemo2 zRTQx1*{3vJ)hVuZbP3rPP?5FcIi@mw+oe}=sAhJIpF*{Rhat(f?KmxwBg}~uM?6EU z%boxlM?7KM0yLU%05lq~_j~AqAM>F)%(znwc31rJBz&bjdMx96u$D5zF>BiU*jDm+ z^PkXlgSSPZS*RhyC0w#&X@O&D(05qH<Qu@HVogR=t6kUGi6{D-2|#cvu?|tJ;56W1 z4P!J6hdeB`Xl)NBWFGp#2FC5GmZ5jn`tBmiJdX&-HLf)byMBi-oes0$A;c4k$f3!_ z7JgxABsF%(<rnrSaY|HhMe2%#B0H{u_kHgnF4M34psnFGN%Dd>*p7jP)_+X14dUyz zLBMtx`9Jlu*c`9l^tJ4K{LBqIQDcj^<({{HfBawCFVtIFr@);|1DY{)(U-Q(#r&FI z=`ib_=^^iw<#v(4P`~*YcRuv?7o{u%S#V@#`4Q~R`1JP=I{MnW1=GqQs+jW^aI%KV zKuiD7Gj{fcJc>cc5h*Rd1Bw{Ulj(!Es*`XVY!Z<R>*j~baVap%(}8c9PguDPpz{sM z$!9E^<74IBx?pM4*2bh3+?V#vfgbJ$S=R#Bqp`^407&YEqHL~=%>T2jY(tf#nFA0( zrM^dBho$+$W>>&3QzNtxfCsGsQogDyqPl8*9P)NmMN+TF!go<yRQ>APN76Lzd7|XX zPOj6rrFAiQ{<1AqH#ylw745f;DL3|qAA{J45SCIMc_E|)+?$U$B0LWoAeQ7`0ej@z z4ZDhM%cu0T9*@AZ?zH0fk8Ml6@;+@z`-tdw2Z*D%(Oae#Ix&#A7qKjR2D@*tk;{<+ zVR9%+&klIV&pT~E$QPd*WYrCMbN5N#(+Qq!&-eQCs4pK}`|$ys*&A{+Wx7=;aV_vg zNkjYFYuVd%OIn<N4=s<^&)vp`DxU1>cOZW)UYf?`kp=t%GfVQUmX*p2#t)eLx7`XI z{tV8{B}&r!`@oh9zt2@kORg+;-H||k0SZ_q?!kxI!9<SKXu3VsNr{SF=ION7E!YHO zES&E()Hl^H(dH@EZ_wP;1WFS-ww2uPMNF^)w}RFGB4}Ba=%jX_;!gd$C-C8o{rjWw zDwIvXJ=fBw*!pkV*w_gp5HG^5j6@Iv94hcYcQtVa2yC;{j<+loU!*NW+!egmgQV3r z1aU73g@NJHXJYOCi`6}Y#Ft;k%W_K}5(*xo0VliA&8ccoZEKZ@oRl&(`7zVf^uBE; z&aGw5<Tall*gmMxH5NAbHHvO?C67F`Jcl~KIrzPz6g{|21y&6HA4z7A&yl%HSo{@$ zV8MpynxZ85&;$(lTLRgNF`TNgzLxq-NUXR9kLTT#wmL-xsw0ign!xbeb{vio!ZH!A z%$=jS%zRRzWqqi7V3^c31VmRfJ|6-(AwDYtXwM*v$p#3W-!hnpS{`_*8fqvTJJ~5? z7ond$ph;Q~iiV@66ynU?qqL4$mrF@Mt-7hd2H?T;BNdkaU;+T_m-iP`eeajWPEit* z>%NeEtl!pOr1h>WJ=c!KV@}ieQqAjDmMBd-(i%M!BF}D&WhY^IwM^d;;LjNA1pfdb z_MVst(Q?20Qy=bj(E_!SgDe&JZl4~F(Kv%4v5YJ#x{?0F6YS~A>9X*?HG0swUK>jh zM6$7dbTYhc?kgh}ApMXV#^a<=yP`^f)hT5k8(p!~&)9piFw06cN&smiU7~whRT_X1 z9{1=h4N#v!Q>MFcFANyjtX`zkq=OsJj3#YUELa<urtsC{t?05**rsHrX`Ar4l2)vo z(?ND3(&bY~V)8$WZF-S8cG{UZA|adGV6H35{p3q1m@u<FRTOy;`#{=)yY<XDo@*a9 zzXv=Dr>%(*Nubdw<0aoNUm0Q=!qncJu7N%!6_?^6hr6^H^Zn+Xr&OtDs#oMnP8Tmr zS(Uw4s@qAZW6uWQkm!JCz8}Kp3g49})YihUnR!Wtnx|PROc9$6mYL+tOqf`pxy**} z<kIDFn6W3ha)>EIGDqtMKp=V+@@O(owUB_YcVocm+eMJPnP{&>;7xWe3-N?ts*sn^ z>B&%nWDH&`3M(m`z`RowPqi4N9VBOOu^3gfa$-LuKdBG-RGKcryoa)vpyy*gBnN55 zz9&8+#Oq$Iau6};0&S%^y65>`!9eRqN;HAGoQt*Y7OLUKh#RT-8%bY5+^FV7aL9J! zm_4McKq~rgO-6*RdsPqmtvJ`4no}y3tpEa)UB5p25#7;x1bH>mlRfKBVLb>55*rrX z3xk(SI&<-S&iG!IrClX4fwDs@d0ynFlERo<rd(n9AiF$C-i<$5p(a(SY&p{Uh|Yo; zpFLMY!rTR={gKMs{*<0gydl1uO^UfPYWb7gR|+DodG>rMX>`2u%9~|(G9xQ`wa$SY zFTk6#-r<ck9L^P%EoWMHQKRu9i4>Hk$s%n(1(Mmzg`x1`t+fBHgV^<~o6D6!Xnm?g z=s6KwGG|Zg!T$81xgwE3@_`nvTV;=!op_5E!d<42jO}E>VP8Im7Z<yq&6%O__bKP< zMc9@<zZx!CxR}a>*h#3QP>E{kNXw5t<}f-F3ePz^kZ4b<btBy)*DNYXgb9ZKqGXm^ zc|_}e7a-;z=FNrP_<p;_U_<Y<!>D3{0nA(3Ut#7$G@#_RT8+sDfK!J_#T0|+w=ybW z=HuV9>>nDFjJCe)$C4QV1?O3%C)jU3DFT~6=Ql-x1P0YR`j{)`kj(?w|5z`>W3PBJ z^(aaIxhx<z1))~Z28}A*j-4=6^c<4I8Z~4WpB|q78Bq%*miFI-O@u}SaKdqgP!SI) z;eMkVn3Hhek1gTIdA>Y~fLpN~&*41bqjGQL(Mz52lBjWk!8+lyP$tHB{LiwiSZX(4 z?X-ZmEgR#=SZJT$l`k7}>n^reo<LMhX!QJZUYfS2e3P%B8Y@{+kXWdY?=W49B@$&? zO)Fh>5!x_iWs%-X!D=AMX&5!bBT<G`Uh#h0!yR@cskt4;sr#eoVW&~bL9xn_FJD1O zeqL6TRIFNHB`ag9HUNui`Tiqek4(xWvsst^fOZx%e71m5qJXD$XmfB?xH3&^HE38^ z+%e0|Tl(>-0DY%{Q-++tFHW=l4X1#Yl}F;Vm+?7K2A96=SS(Y>Q<+t{XLHj4@AiT_ zUtdyF{JZy(USmx#9|c0Me#Dqo67VL!mkxh$q}2o5Las%p`UttL2;?Z>S&qsU@stzv zz?V|Jmkn`2`O=JV74a;m<w|%f8UF6R>hN-r?x>(zF>eX)c^rI_>;VkX+S}n}vfiDJ z+11+A$|$Wjd;JYbtmG~<&yKwItS|D?=5-$eWd+s!!Q?l@Z}#}vSBIf@*=j<bJa78g zXvb~7UFrQ|2%j<r{dR#FPm<!9NT#0+RUaS79z^u=)FVc=72-v2+BHb#sy+&&^{}MQ zgco<P*`ppk|B#kqj47?<sK*ZB%f*WzmdS=12K(YMd`0*57NV?(VaX&IZyw<o!Az^5 zoh`DkZR6@<AgYtBx)YRIDI-KW?Y0WmWwlFL$>T~@`jEvs6+vGlvnH2>$!LwpO$=9& zOoXLMasMh4MLAG2$0&{0D02JHi%BRh4q&utNahpSL`V(s{+*2h<ta`eR5%r!84^wD z$IsddFY!0Ph^u@Z)iM*3NCjUiD-<KWnp_mMO@Ug|F=BgXgBq8RPm3-WXsBpVSQdh% zV<2>8ETj`XR2t5@c95(~43CXbATLgBlXyciN07`H(@%a=w~!E9OH$J^E+#Kh8@{KE zn3H6kl*T%UBY!$POkiXtB%!qun3DtHONOA3sUii8B6?s5t5t!Og{Z3Ih}2x&$$j3` zBq6CHJS?~^E_+ynfzoosIwQrOOr(7`c{0jNZABsz?M=lHE6Nz9v<2A(-=DYfPx2He z!r4P2&RmZw@VQI&%Z@atluR7ajFcE9C$PwrE)}f|D!$E=TO=@1X6!6=A?cA?vN>*x z>X~-L$i)?<lEM7l|PBtJ_3)S!*$-<`<hep*7NWFqK!P_O&B(_AJF9DL8&|7P&U@ zDH&p%5}3Rw43Qry5|CZ<>9g`dG8av!u@)Xj$lh1YC+(4OK+{eeNzh<5fEK}wKhS2E z7QtWGD;p^!Mw)gECR9%okSvvjYWb+#_3k|RQ3DZuP!CctCpU0W6fP7C=jF~wRpy=0 zcN?ds_N2~wX1iBH5|>&UJdmI;$B|hle^~-)7<2m@PU7t;#2b@*h$^2e@|g4ob7l80 zPFZDA)Et{k(pdk2ReunLt=KU2=8TD5J<eR3tR>A8?Nb-!Bs+3}e)1Cc*=e9OzyYW5 z`@TfF=E<qB`r$L5TZTrACFA+KR<^{iU%rK!z07O`*7i5eO@u_LC7m)XB8p0>FqF&~ z!#hKO%Q=;U2F2KtU8gNio(++O1yo4ejmUM-{;N4r+K*+b;ZUqQ#4CLs^#;qSBz_SV zd65mDh=p>Fe_y}Gso_KrhBkWf4G?yiKg01DeJWFg5?2=pnVOH5<C=0w8uS_ZATjg% zpuj{C4FSl@p<Us4LbW^26lr@UT8^wTCe9WV<eZ09sn9H~meL4@_%=Thy2clOa$0(3 z0lF{`-Z-tbF3<+Mj&F={4YSOx`-`I)un~wRHBgvVJi$AYtY>l#F+4QURXv86+r1fa zOHrr#IA+&@zKQdev`OiBn^qSvr(arREp)aEKkLRc8(`8~qNpw%G7i$pE;42#Uc|@! zn@Y((nvTMxdXgj2mtS>2em9bF!_DrbdLOGCI%33KMy-n&pRyG`+Q&7ZS2N_4?`03; z12DW98Z0h3r6PqTG3-H~uUkS6i9*K3?&%AE7z?t<3Bm+u0l|tT$Vo*abo*Mm96F-C zyY>Yfw=5L=?=%Kxy8mBeU}t0fADN#2QxZem691o)7?YIbV@}3DBESloh<d$Ho*txb zd*&PUf8zG;sE%K}W#|ILj}Nvjlxf>5uBA=r&~MNtq<N)n-uH&~d|6FTihb{(K5j$t zbh^JD?<;N$)0^FYyK&DJbV+F`KO3zbZwYJ_H;>W(lfKO@!SlV+dfjeI%9_CC?dh9I z&gJd&;5s-7nrUM@>HfLJTo|{F<oQzB0ig(rtEHgzD&U!U{k}a8u@%^&r2Q|m6utGY zS!x3Bjuwc)W%6hMkN4~Os6#eyfb+DjvcXkylGMX3Yi;BJS7aFZ__F1)B<VP79I<4E zx94-@@qzcp_WexP_x)t&``caP(^ux_D>e7~J2v&lyO-joc&F?2%vZ-N;|uXW4Y_vb zCwGx-wC)f1Q8S5fj_S?zG)7+xBZw>eTNxxbCTO4ag|)$V11G8a+HiV)T>Er+k8ej$ zE@v0ik1L{VUE4W_&a3S^u3q~jdCZkKaoDWrwb%$)ynrUYdB91ct5L09K5e?5J$-z2 zL<Yb^BK0qw9i}Mc&n;&)9rKd}kw9ZJc=!=L-fsx^@u`i+Rc_$fxv;rE;BTJ~k(o#! zQ-ZKtk3Y0L)8=<Yw;f}iX+@p?H}{_>^?!2zDbzH?AiOA_Isa+NP5jOMTZ>y3M$Om< zR(@FbVNGaB{3rLHxPx%9k66d(@?W|Cyx-ivzB)F35_{-r>Jle!7c4qVtAd|L5}1+h zpF$6-H=~hq(Nusxl^$NYqKzIwx_=r)q97Vb_rvZl5bCmHYW{EVKkk1A|B3$y#E|*= zV1Tn5aKSt9x#1uB(E>aNVZUx4Fx7sk{3rPT1ZH|?h+;eI8O%Nn-vIrlegXq@wOh+Y zygnm&M_y?e<<>f7v#~3U)-%gNYXei4L_Owd>5poxb{P&$1CZ7k5M?uAuh|S;7lHys za2OUEX9RCNMgVFB6lbo}kJ#K8>?dlxU28Jd);mtxtDB0vQnf3e)8f3<%<RtgS3lGh zG={C_e)fo(`a%I79N;gu@R;SUO)U-&@~$)}F(C~qz>$r848|}(Mkk_C(BeoyEzr2= zKwADGR9wh+h<h*>ajVb#Uq6yM`0^5NzY(}RBNFO6@;|hC;PX=(K#a8k?f3AQSlR%y z=L7pGoq;$AalJ%+1E4`H`MqL$5Cr{v1cYMKXc}QC%chhNZV&2N-Z}v<b43vQAQqMS zPfunW$BuWa7(PzaVN?<!7k{~%0aDK$332)&`Ox#S;t-mLPnxW7ZLKl1N|KR>d#P>t zC`B)m>WtO(K!P(d@(jkpg@Rg>n5%dot}n2~KM(iE{iZ;}vIVt%P34hLdKl;~v@r$z zFLcK_Az6)q(ZRdawG9CE0h92|bt4}I#vy~$ScjB`o@u(otaIxrh}=L>;6E7-V21a% zoZ?+I=R4Q=+Xf6=ub&B~WWZ{zAV;10xh6qu;FN+G@*qFx^eDqT+!2jdcBpdDkk+vV zeu1NU^o{VH8*tmcI}7Izl0Su_wLAYO`2Y1V(P}YL6Y3Ev`on#6hxzbbNCfKg{2TnI zy12t)bDT(xSMXN4`-oI~rTy`fU!po}8k(u`2B3C_+7FHFBu;I!as$Z>)&t^d>?CGb z&;#rL48j1fkE!J_fte(N-Dxzf6}=y3y~65$JLT~i=`87+_X1xoI_A})#)$8&a+g`Y z6yxy>9PuhYmYW_Dz6a;zrb6?ALjF?{&KR^vO%0_vk_;7P;dHdWx&u36G#}zrhWlBI z(>ZymTF5rzBDfnI9OH5&WGuJ(pxZ3{cc5YNe=&9rZK6cmmOW|Pwr$(C?US}`+r~-T zwr$(Cot59Ks@A=Y7mfG<(O6&Xxz`+{#`-JnIJtiuX#xq0`yV+C$C>Cmg!ULgJWcUc z<IA*Vzla0n8Ud5WJzy@CoL>vp>3ShWKU$F@=GT#O64ro9gYr)%50Y1!Ghe(e7=vh~ zX3|a=c?`xe5RN)GG(py5BX+O&y$_KU)*{;oxQ1i+HZtiZ<F~>xJed)R;RDkvxPcJ4 zOdDH_*wng&?W}I=Q+!1sWAA6@#8Na=bbYy$vvVS`osz48H@^vf-8TNkE|7(Dz=wh) zIg+N?tan*S%M!R`P9I{&tO{3H{)=Al2)$ARTo~W>$N>@hAs?P1YlCP5kyy>Sa08N2 zZHWbpVbo`cr8qK^q5c~AwwIb}`D_aytVSuMegutl$`bWi80SxjCo}qINKqDKe0ga( z1s{spI;D=lrEA($TFZ$sVl)es6y@K0E)4RB?OO)t5)AxhB4aKw6lJ=>1Wi@u0!a2Z zQTY?n`)EnbSWg3tMp%<(9jC@h6T#C^>U9ET73T|?e-RvQf8D}wBkymu<|DKZL%7k% ziEYH<|Awte;CI}X4SK$W7R&7a6Q@mxb&v%tYeM07p|rrpP->bV91@<AH?)p}t{xq4 zDPZe)=VhSgQ^7V8FGbEvvm=#2GFXSgMT&anW^KykV+;1ORylx-Y@(?xwk2SdliL)a zcp#64WItG${|@jny1U>?_6^#X&qP?p_%X+(3hWJw=JjPO7}n-RNN0$yyij+5dAAZE zRT4@g#f8DG3TiXPbcZUQrmU?*23w0{PlswMU`U3xZ`BA?3U8|~$`RIIwIRbQ30RpX zNP!XX&r+n$H?ZAHZwtqSWR95ax;<RvsnboSRVE}p=|WUlf9l()-ZeK7Z@;b!#KeD~ zLZq=Vq>Qbb7rj{c;L$M?=F5=wNeO$(FMhKY$wB+;71JuBSvL|?#pzXL4&G{3_(q#W z!1d6A8ZaI{wW@}B+vpi)sBAu|a1RGtg~TE34|fGs`R85}8ArCnW?9A)vytW|PjGy4 zv&F71G0?yI#ENoUI&Z$;A&wGC#<`+tiKRf5EdW&^{tltc^G3oA8KM<Eg~j*U#Tx!Z zH8)~<0@QR<%$6PVVNc2Ah~VF?R=T%vVc30dlp=gN@d|^9U05*TIKh!y$f)r?6^M3e zPktZ}K&kj=e;%evI{@@MeX<ixbMm1@nCb<a#p7hyGAyRJPOgh+<CjhMFM3|hUc|HG zm?!p-4?j>AD<I~~E8xYP=MhJxIcwTa>-1BYW$%5@NPeJ4_{uzEc7G<+;EysG4||d) z?Je^T8>8eup}W$>a826M{HVIBSm6stOU-%5*+sSFstZ0Jv4_g=lJO@FVkZopl>L_+ z%lEu<DEf&3nRBH`5sXZS3lZ$%qw;fK;ky+lXvn|R#$WJZkejIEQlM3&gN*I%f<<X{ zM$R25G5UonF+8m`)yy@Gt^)nv2XF7A8Ba*z<Sz?O&cOpMI>}-brqtE8T5d{w8mq)< z%{cA0BCaAcFhUTa{Y@mpWg4tvd!kb~*%Ek?Qj!*vcM0m+%}X@LbAc<#q`vp&(h)~* z*`M}b3g2<iVGB6=h=MzLHMj-Lu2XU_NDy}*NY3iR$FwiCD1p9ZXUc&h#|ga&l@D5w z#f60HuV^$$Po(vTxvJ8XOjdXXsw(Ljw~b7Yhftdov#4yoo&$?Td2r336=TYtHjvc- z4p4NN9aVod)VUaS?@P=KtfuOvb+x8V1`+8D1+LV|;^Eud?ziO;xDY@x+fKE=^+~2} z53;*_7F1-PqPDb0n($Z6gR%|PUvl-v<_4S!hyqX-KCr(KCNs;;O4(=7r`5GM@vh6w z$Zjih@{PU2zW(0L?r@cQd>yCH#X;vNN@6hGnO<c;b`PjH+m3C?vmz`!&{w;}KM5+s z&XCQw7NmD~c<ji>dS*@7;y#Lu9CvPD1x61J7l}<=19USBrxbMKom|G*<`-bn+Nlmy zc<nepGA0Yd*^36EJRwEih8y1$hd3~Uh-KBI4qcE{G&CW$rbt*)4!aJ%VG-9CZyc%L z+6V-oMqBwo@k~ss!Ep4105o2xz2bBrTBR1iLG2Ux>Cj_2Bnl1s#c*0cYrEkm5+lqf z+o|7b7sL-4T6g{tru*{o@2#6tj48`<jiVgZ?O8HzyDxlsl58__D*|!U;k)hf{LpMA z^biMOVj<O%BTOh6E>iW~G1CT2V)<8cS>nY%Ly02uS>^TR^NioW%M3b<8I##PH#is; z(jzwXihHr$@5M8TqzoJbXEKCzOhXyu1@rW+#U=j%jOs1%%Do;S)KIC?$!LbM95-UK zCX(1oIn^XPX(v-IY=LwW6@p5o+}d=)v@FbR$&=Rk2W+ll(0IU`%~Gc}fry%{lCCo3 zDZA0~FGt)VVAbe-QE{S(SE#QZ)w@66a2B>H{<g|7f41=-CT3{*l!Y@FscU(TC9-ks zuf^b;TM>&f;%p&1?G<k7djW3b`9PP!ZZ)tcjleo2N%iee16hGU<iN-Yr{YPV8vXoK zXLE}V&A}rD0v3}f4eGQ(j+<vutRMm0#yAFYm%tmOe~u*^X&(aAiS(nJMa|wj&(UCm zvq+Qy0ASn#g;0aNrG=rW+qM7b7;1~+7-I?Q>Q$Cthcez5t-`CXfb04{9CWNdC`nU# z;Nc`#zh-q7$^)-!>|2d>=Bt$q;@lDXz#ys(eNM^hY4hdX6f>pfo=tPr&OfsI)K<su zu>ya@Uo*|+phUM3NjuloVN8CYjE2bSW7FH#gaG!P)~jw78W*(;3n{_-|A_T0wXn@4 zx7MjXh4VMTwj~=pjSGw_TI-*Tg@mft*1&t(CpfdPUW($bb5Tx)zG~-dLF9!LLvFp> zJ4crSR*18<7Th&Af}T@IFH+hFedKYZDpetvjntZJR3V)0@0Bt@KY_hDS<y+I2r~UV z>hK6dI}rV=fmap}?H1Kp5jR(9Z=ZP`v#?|BS!hBJW%Ugnbu9HEnJ!w~stTtVYOxt2 z;Ebot>$H~^Tb(EG^z;W<cGvl>Y$V3=!*VD<O1T%?TU)Hct{}5Tt;TGcuZ8;wV_zw& za9dlih<Ik|lEnZUQ9seXr@DMF*;-hSTpZ&+dF(wQYlm=L7YB0hlhE94SG;?_jK^q5 zS->%?jUd@D7ItZy{PS)9*0eo*pXCB=xATt}7)Gb@QImH8W|FmE?A~W0eKM}{9%+I8 zUQD*d`7BFIdtUY_R+X#}Q;l9Rz^O2h+-tcO-b%3t@CVK$RA-bde$Gu>-)@NUQ%xey zex^yO^)H#Q>9}Um-||3fDzsWXJDswQ3lgwtvzZSlG!QKrw_b5&*&ShM5i5_>0wEVW zIGzd;c(HFu1piyVCS$-8!NYU?y(Ex@bogO_C$)>Y&{5Blz6CiZ_MrEa#*%MZnY{KE z=-PM~%9=i9YzP_Th|&tJ&vPU;Kv&jgzb;Nun?)qX8}E!-La{+zjB~$~-&=I^#Pa;^ z1s=UVEp)l+f>Yt!;;1M-$^GsEpoRd4tS@s&1!k0nDY(GAZ#Zh+@}WN|yJ$*%G+jJ9 z;6~hlZJjMrybcBLIr|QniqwW+<cRKK=NVbm<Y)Z7Sb%VmH$iW7F&LGNP(EV5s$kGq zHV+oA%?9DBW8MS#J^5!9TIULB3|;i*Ei<#iT#rkD>&l%`6<PA%kI~O!C7oEAlj@u7 zbViPelTu3KRpMjHbwcx?ir7E5t0Yxky&3ria@3aknc4{!m2S&)$hSXIbc$XFL%8<& z?Cb9SkT%ahKIyv3RuLcgO|WmyKVv&ImnOgr(6UFC@gn{n1CzN!f2hTB!EYzzhqyDa zzf<EvZ^qNs_JW?@q~yj-!ODH7UI;Y5B}<57`lE6XY=s}zyb(5w`$2A|O<I8G_x;N= zQ*b4B*JSv`0Xf+P1S?tqsLvRq1x=7w0J&zIiy*kxY7F=@m!lvXID4oxJU{{M2U0kP zcpc9@EZOl3qdExr*1%jX8BVv4P@UKFICojoyE8x3HqRP}ANJyWNZP8K-4%`pB8?|G zm1vdzWl(CS?9iSqW+UhBdBnL4P*(a_sH#4ANO`Z|YZ;DpW*y<QGdr3E6zwj`B^iR& z^rN4HJM&qe-<&lBQ(5cfSiCBM!DzCzTCLzBt3}opdRbp+INX@A*;M!L;*#2YU13bJ zzs4vtOVqMHmY%bHT}C=|f>3Y*mfSRByqsglUx|<AJt60xe(}!e=z6wf7S(XwFfp+P zdhv!%EwfciI(AJ_Yb~AlYhUPc!l{~N(>>3f(d!!3SLa44;eh^4Ha!oDUf?2m>%MX; z8{ysSUYR$eU=0)^0$aPvKomm?iKIe*JNRAk;JeF&6M-&FHo&klp)g+uZVK|kT-DGh zb&hV+1WfJLPkJd+=1uLDohW!d5nDf%^3Fuu*1I_`H-6`>GuSJv=KJ)IZx=-j?DjG~ zfXL_&KPD}y%CPaWU~lGuK2UA2^`!^7S!eFhzqgXZNRm=qyR;2hbOr0ydB{L(W9V2M z_xgHexJG%PCe?HH!|p4E$<-<m?Ku-XUug98v@NXU7*QhBeL1D%y>f`=u8Tiye^{6g zi9*6Srr{xAYhRRSuGSGsyx`$>Z&<tXe)=PclhYo&8}LLwW%@dn0fu~ON@W+^*pryo zUAvrJ(+|qs=WOyR64l~zx`DUwR?rSeT5EuENH>7}oQS^CTBGcRzXnGKxm#^MSjqW~ z-Fv3&oxU=BQE8_{hn8W&to7TI1xTBO&^--_-sh>6IB~h`0dVEs$oOwT9xL;I1bHlM ztn~lOAWtgxy48Nmw?{COS_@SoJSiX#AeP6dmmgK)+Gbb8!6+6-A9_UN@aAMuNu;aY zmL6SOTB=~wu<m?OX@~ifS$g0`H}RWq&jNG4mfGD)Dtp-=XT+qs3R=(C=WF2hVdvZI z_3Y;7yX6;>c`<v>2m5n3lKXwXvf_K-{mDlA+m_5GZH)B&+M<#f;Om*c)vIBSElbuO zS7rqL+}t5ow~=~aE;12!ue7eP{P(u5ZlPhBvFt9sz<#v2p4GCc=jH8uun)X7$peEU zp{HltBD7;;=IdE-cI855yESjW^*zSyS7~D<X57OsW+JEV8_aPK0^7i?u&{9d<jnW% z;~!%r*3TL9WEE@X>Z?3h#|P)@5S}yKS?l!hLl8S~qsJ%6o5ET%p^6kl3ln<5$Ituo zz!J>_Od|kWvgfN;7Ud|_G~Y!)GWtH>+%!o&hMrNPoZ_w(+8Cv@Az8sulD~iBu32nN zDP%!(*gS1XfPpswsv)N}fMs3DA~zewGUtvKMOCG5QrQ@zl&+YgDi7yl1;W(GY7oLn z+g8|IO!2Ft5y7b<=8rFoS#60a6{q1@D~mXs55iH2-)_mN6u;FHQ<Y<w!bo3D{B$9< zIyulPtSm_{bTl)TbCgp%G#(kvIjpIPiRT%@A>s<)5_Ner>>nMy-XxOQs@oYS82jqE za`25D<%@6&+%efYW~?y}`Lr_1Ii>*c(<ta$Zj^q=SQv+svR>d^LYdDPiHZy+j>jWe z4LA2^gkj%>2<Wg5ni;&!SXWMMi&Na+<810&YDV^9Z&GbpM%{hq7JM}@HfA{;tDkhF zYFy`@mJjLd2j5k|kqTK(hFSijG+j8tu~IbeF~Kf3J5Xe-4%W%0My^iPh*^DmlHq70 zd;}_}NQq?K8RaZvxs_4|k^D<tNzE|t;<ll%hPvMEf|e3zwf8q%Aesfkp#f=6t6j1N z!l%Ah1zoj*ahgk7Q13J2AF00`fN(OflNexa=CIaKL9f{(ZLm@wsRB?;0Tj=3Rpsx^ za?FQN!$ujk)dD4k?^Cy&YEng)lGj8`tGz3(`_L?bjxs+;u$x~+xx#Ss6Y3veG2-QC zNehft@c`ACcwjwZoOx6oVi1b_+YOoFCt<k`c`BtuI$8c$Xn;o(s0t1+r*@Kb-~I>t zERTW1*xVZHnd<=C{KrXm13X*{ePc9ZN5Uxf1VTLrd}Ivm&tSjOU%$1ss*B}fYXtUf zye4~Db<UPfefPW@Rx;{H7-T<N8VG2B1~qKh7=Mf#-v!lYg}W>E3mTHGz?vEpZSV)n ziSse^r#M4;lj^vG7~xS04r%tZ9AQA#)rh8QChSIW!oenLsHn*VJC~2)gRjwwnwnQ) zM0B;VN0E&E9X-9T((G>b3mlv~-mwFgBl{8_uxFwR^N3%!%!Tanv$lt<NXfn)t@a+@ zHwx`Q7glA=)5f(%kI2e<2VITc*PpBHVHgK`IK6LR3N<~if~n~?Xb^U7)7|0J+)%t9 z2>CC|&&-{l+oPA7n;tK~H$2oa7+6H?=%+^UZ-Wd|_G2ikfhdsF<m#OrMDV-|j1^;m zV!Z7ged$x1rIMYq%-e(CX5*#sKeofSfR9i%w#~8n<#{J$(*^fvNN$P;(~H3FBeqvH zdL~uv^LT<zYd34P&Z=HhZVM(@ELAh6Wz&LGmlz%Yr^aOxJVLm?htePQ-iTd|VzX3^ zx7%TQA2|E?3UXd=F%&;baE{#tC@IldqN9D`>w?_9-{vfwaK}Qs5V;81c;x@gymHW? z97xqq!nfrTt9_=*`a?ifA3Hf^zr$_RpAe*aVRsf}ycnvzfv(E9=b-~3oY(EjOOpBW zFr@uO^bjz;CN1}A?jBSBc`}qyn{OU#W=a%Y7<eAK0m%~EdHHe8$?XOpVth~7{=o(G z!eECrgH-hJtq4wPi91C)P-oAd-w>u0G@P(7bah)G#wPA`8^>>qH5)>ZpTqb=2+dZA zTnG&<|BdW8qt$6Rw7S!LLN!Nj(H6ML3rjm+JsmkChF>^7^g{+>6uj~SHX3+${URlK zm}g7)X9w~u6*Lk*?WO@~D14Vxu)?oF0L?y8lm>cS;0a|M!|l};tLbLtX4bPE$mjfq zTrC*%0MtHUh3j_~$T9u?V3s1E;_Vp$+SJepgvWN`oBM<unTc22qMnO-IAo<qYxKaa zvq{9;G5w**1s}_jqP?1tEAfqW<DZ9V(+?E6p;U91T}Q~Jez<)Y?jtY)JglPn^hicq zaMLPF6lQENq`iSAE+|Bx4->D%G5aP)C!h&9{bSzo0PW@DT8qI>MB7J{?JfwNpz0=1 z#_7+lmJvJ(BR~Mi#P$|~rrrkLo55OL3%VfshW*(@*zb%+UGv3XdKJ_N0g7u%x3i}_ z6i;tusFBx^e$9y&@L+7Z;btH{Z0m$6%Jg&WIWH)J?!aKolR$WkKbE?K!n19DKL-YE z)TjbBtxes3tHJQu#p-C~=Cg#jhGYQ7W!(*X5nUtlLE$5E!^jtAAslrpdKX)(`RZb) z>ybL|a{cd&c_|sVTSt<=NFR<Nw|rb!OrKb$ktT%2ki3Gr*mP93H8U*U>nQ4w4K^TA zQp6Cep97ye^o7;7BXms)Ho&EHjI{=REm4JEwZIn`lbz+*hxFIY^42ZZKrgE9d+kA6 zPtzdpgxC#HS0SJ}n)1r30lN5JUwMzj>*;y2aw9Ie3mRA=E!C;yt9CPs;$IZO3UOC7 zm+%q}{1PLF6;-UqD(WYAFm}1_xx(+j+$gR@P?8zfqhL;d+eD6Ui*29wNA9vR4TFfC z3}Y@EV#5uXYWpLza|*JM6n?vVP+l1C?V6sp9aQO>sT6^p(^!{{zb`M&@ap1re9k)J zSmZBLa3Yms%_{I&9bza)cSK`0$dLJ!Y|t6=$^0gG@u=BHr6f~uWo~mo+LBaL4#!WR zQ(Bv}O@M~>)Rl1?zS2a3sRBZFP<BF^7?y$G*g>pEH~x|z^O`)=XVZL~;?fWtDB%(a z(B9k%QF3-h!$%(?%-Wv%T4UIai%ppX@xoGvPH`YA(sl<WVhffwSkX4eV%5NOme_d# zgcFToc}8S|VsATlNmLY{S$wn#FrA+#v79*>0el=6LbFrUF>V1-g<JsfI1Z@Plny^9 z^p=qE<+ZgFn~kCUw5Jj&R&b^dnph}veBf7nB2n}1G=$KYleD`Kyq#urE$fWcvD~L& zba67vMQ_p`xATifj(<xbMjtaad)d1~YejoeLtIzqNoh`{LBLu1QSkMnyPzazzWm;3 zWh)EXc1zoS1pV(MA2=)w8#wY!_ukb8+B))z4)Nk{&!2t9Q2STK4_d?zgU`X20z*U; z&4@FWUC<W8lh>xGPnu+YFRjpsdJXsvKJ{{YHXI+Z((WokqeJ#LxEiTml$wq~=@7ef z7hX`bS=aj+M%&=Sx9Fzyh6t#eKVNt!c)^1(OJb2nGY(wSidRIap*U*ozPq4Jt3&h# z-89n@QBG8lYgp3N1^Ymw{t}t%aL4}k<CYX`I%=WV%xferZA+t$juLDC^COM7x1mnG zuM-${MrgFE54yzjMw6C$O3H*q83kNlh*bj#N<PzG2Q4XtI$e62b?L|M9IE3c35et+ z>k3XHO%gS?V?5c|zYcHg)6nc$Syp++l+JeM-9u8ez7>=3Hq+B4wGEzeXcD3;rErMg z?kk-8CgCDYQ6%jztC>&g1JU6<F$@TTsr}}SVP;>>dZHOg$`Mf~Tjg;t`Lw0kR5!+0 z-87n)$PlZy;i;JfGe!;K0jA9I8gZOZuXmCXyf>Tsc7D<OQ~I=fOA(nIc=$Dfvrdx! zT=pODlKrJ7svuFwsLCe&!#!nUb<=L_uAOYHV|#3FDes%WEo~y?C3`8My#>QR4{=yz zZ3Qz%4A73Ki_J>&k=I^{EPdku$u5)iYg}vi#%pT$wApd1JCV*vnnLj}r4@ukJn!?^ zE6Ni1?N*I9^PWfJFvY3H>aA#${HX|dj&VrfsLe`ll&(`RF0@j1p6(G3%e$FXrOK-m zAs*6|>P0*KDYE=|O8dk$QKtEzg|0bO$-=DP)o!FNBj-$3dYtJfjV0L)Y%L5uM*A3E z(^)ayd8f;&>?Ec<+#-={6ui76L(LIyP9L(=l=WYh7W~f^_J=+u5WnO}g?duIDap9) zN3SN#S($OzEAmAQ^l~SH9>4CmUbcZ#c%($*@I}87?q@|>Zr13WTHza=%Bodkd!nmg zGv_WCg~FWyiF%f&xs3J3(Vh91%QjDDxp(*@e?=qWjw}zdpM-zKHa`YCs6=b&61WHQ z=1ZOa<3m=8L-FlqZD|%0M%?OsR5!Mws!$)RmKr(U>MmWO-4Dt38Qx7Eg3BbDB~mjC zsI1Qz;h}{K+D*kxZn*72a+CYxZc?WeN1F&zJ0GmZsT^|l0dunt1(AD4Q$~<#<Smnh zZ<p<Sa!VTR>g<=@iH;oW;uuJuEwN7a{@G%xI}Ihe(?sr#jG!w6Fbf?HiG{@~|6a3P zbAx!0Mf);8Gu%W|q)Q&_KVlqKKJi{o1IR2L$KCl<H>o7$PDeFE-Ws*)n_Y6?PW&d< zjErMbV3Ea_9d!37UG^4lq&=M@C&rwP?*mEXZE|j>cUX329ei=e-X%&afwj999WKdc z-0AqTiP<zzmplnZQ{fV*NThI0Ftihl#%mq4Ph8;B$kZvHl_YIGJhzs<kLP-Jh2QgM ziyxfQBA-YcHi=LRGG7PWWhd6gAC$1y&=Rj`o@ctGFB@Eklsn%93MU+Q4)N_!jftSA z!dAT9*-;GlWkzFsP+L#`en$?O#RPp&6K~ad@rYI8(r6v)$A)*Q)7f%MR1MCdsd~ij z{Szy+1fJY2F@-9SS$zP*Gt0w!fEbSKrnX&Eo{4jr3wZM!W)b`0t*}3uadnRr>OND% zn`08r&hiNmljCXl@mW;tveZ4VEAwZj6|QAm@BDg*THgTP@m~?diJs$JM)zvA(;cNe zon#mgTSw%^EMrLrjlgpn$DPQQ&#glRZa%lDaH<j-g8LdT<YRE{oDog9UP90l+K@<s zouWBcscrqp4pj%mp((|qo!AB_4BK;e*^d@gEtHCiw<6%Cll*`JF&?W$cW?-?I5xcM zBT8b>MPo>6&hl%HyVUU=2@_cX*Ek!9N*UQ*(g6#qpN3<BESlMLIqo=B-EA{uZH)BT zpT-HzLYpMnuX%_!gCbEVk*dJ9*otiu_WJaHE{Sl_9hmyJL~-2{|2r^>;W(0k(Q|HL zB(P?6VnaljO*WHLXIntYuv89_V6v3rotLULUBXPl$1kNrN7lJrY_Y*rQ%2sx$JiGv z5=5pp$1F;e9$Ivo#R*NU9>q;IDW2Wskn1fwD6nj~@W0*mh(yp1s12zs3T%Q}OhLg3 zPbAe{$X(k4CH@%NxEN2Mpr>YtI#v97;0=;J$x}<ykC46d?z1lCf{C9<EkZmFB4NBr z>@KZYY&^Zg9M5c$sU;C(htc)J#!$DrXspfdbs-k6A~Om_=4pd5A8^ZU$?zu67%laE zq9hz|*xE-<7?)N&yM8gCrK_zXB(XUT4V^-6ZaOk)R;8{h4h^UqAFzBV;lV<9X3?}m zB>#%SdDZNY@7}4GH`%A_GN@0YI0;m0!sUY4t#p%20cIl*opl^!Q&0$l32p8%FR_qr z*r|xqLyMeWNo+HBijo0aB<F4tR1{F+o_P4GRKL`{6(KuK7F;kq(`+~VjA_>SZiXnm zJv+!8XPHX!r~R{F0S2?sf0_b?I7lCKa?qT`4>l6I0tYD*RN-2fZXu7Z`F4?3X71y} z+SM$((>z|W-PKXU`DI0O9|pGF`Q&tM3&ACau{PmP4yT1=BHW!>B9F7ve;B1E^Wr<x zth5galZm!tHrBurMJz~Dz(*R`8&%D6muY>8$?cqd#GRrat&g|a9Du#AOwK%0MulsC z%r#twNEXm$0$%>D9=nr7*BBC?tB_$BdC)q>X{Srur_3L78f@{BW!6vsV~R>)P(6!7 z;fB+<6@gQKxv+IZ#&yW&JZ>rABbGC0*;M<tylsrqVDIuTryfhN$=ketyQu)iB%|8X z?=~H)TXh%CywUnS?WS_ssja0h#9L`Z)uf9)cCa1quzFq8sdYi6auAH?5Su#oWSZoH z%dmWCeq1Rw%lI1J+CE2pxt2X(#5i^G#bwS}eU>r0Cg{PB4ho^C<q&ry9}8kW#($SX z6c=6eO1$wcT(c)g1C#|}m>F7sRH10|<H$RZ;iwqQT<2#T5XNW_|Fw9j>~P94V<cyj z{!y_ieo$z_=C+;LE9wgN*b6&>Xtgbnrl`MY<!P25^_tQ9QrHtvMnJA_8d*bZEfqwS zJi%3{O?J5lHM=!tK;Z8``X1%8$o!Jafdm`u``2sbDw89jOf23N>^lj1PDuK*u=S~I z{k;!4uljbvjojEvvOdK8`pXWJsH9oi#3N&8+>EU+R0j3ai!uzn{E)P$3!9LYONMs< zt!w+2P?|=1YSbD!b>`pwzVBksp4(-mnZL<;b77cV^G_R4HbHy$1*Zkh-wCF-Yj<0) zg_Tu;xn+0tPDaEj{;u;6ru+uQf6+_+ERMkmDe5J;Nf*++lDd_@D!#Xh^s#)IjlOQe zgaV$0b$ctH#U|RnH8K?XEcy}H+#a}+u^dcbdAU1CF@a=Cf1I2SkDR^k>i5YBZ!TPw zRqZlU3HF;GC+-^G$|wdXC3Aky@9KCdI7sX6Rv3Fl$WR2uJvzG{roDRa<G**|Pmbzj zmu%uz5R&h%ko=qU^qAvQ?6jE}lrzXvu`6QYy4rV_aN>=A^$M~&UiwBU$Z?58_Y!WH zaAFw%vqbwu?~jN*>+$Y!?4QBzHSfxMZ@UeOg}C)6@-aI6B<%<w_RTV*mrufH^?I(L z_56!gcY8YySpws2_WFx_BZxG2f1+;WxQ?Gl<{Q$uu*<N|Z^TJXgD8dQ$OB0AH8Sam z<@>bN7xexHU+%7#{3|T}+7`%@DCFjDMX-Sdl%5H<^K?1(D0ltU`n|Ayh9Q7*<w)4! ze{rzGle@k4j|}x2urlDE{9Ph&1nG%wQjk<E1)|(n+DRMQ9p6|@4*0efG73^EQKocI zlyx{$(LJ3JeH{$pgH%0Ku&LK`P%Z_+BZ`mv+O$qmbrEUfKJP|jqvec2wp_!Y#-BNQ z)U34uYJ#)1wnD_GALZ80eKCU5P{GTFVOrWmUW00H<ey`ICP1H&a+zhQ8re?b0FqRf z*LgwHb3%h^F^~2YkHJeSEFVE$fRS~bp%sT%?vtYxta{8)dD#ZfV&W=RGP4=uM=@F1 z(z!9L<*xP@u}f?y6%NKfq4Y94JK4QtLxG(!uXPyj`IQH4`O~+HaQ=9M{U^m(J_oy> z$GE6EnCR~sc!!oe6F3$Sa*YMbfuyL+Q1hwPTfnt0a)pS%Y=`L6bdt{P69QLtf}^@p zC;k7BBzNF!%m?6xvzkj{8aVPle`YueUUh&z0q051?yU*R2DbGDUk|{sp_m)Xpu7wP zE^Z|blDjDU7VrT3bbrmbe+R>l#RwKepHXm_QTVQnrgHEEJDQ?@@MaYqP5)b(&Gw&Z zHWSA$y!U^eUrw);lZgYJsFi_}iLi;0t+5F&FQlWBgNcDPq?>M)mQ*Zu3qtoy&8bw( z!tn<JFd(%CB0fGCi6@ei_;URvzUAt8pD&*tiiTCa9#_Ly-<)hBHEKn~(`$sn!it2< z4ISi9g=x*=V>It*Y)@BDr%$Wb%XA3E3`g2-acC~-6w_nUgH_|5d%b(}vIY+iw@mJL zL6Un(lB1-1v~SNyPq<G{yG7KTZRid!dC_)PyJqUCW$C|~3&~nRWNgznajNmwk(Z_M zD7xayBcp5(i{xrMe}s$rOStb(tWPrm46gUv^M`@Zi4CyPJ>NJn=?2xg_h@eB>B=t; zID~&p4J&IGV{L04@K=woPHzj3j~l+lH9OyT8#6uJvUA_=?<c7>J)a(LU&1PyGQM4> zXL@K?rZ`n~sv1BtJkfZU*xt+VQO}92j$s^y;^naoFsvX|37L%<$#V>xiBqo!cZ`!4 z5YS0txS%PxbSnd8D?;ZhOgYt|WNoloFCQ^P7Jym<oBm_=f<mb$4igpTRU0I1Wq? zkM10}U)%x(3@wL2!=nvvoLws^6IN#y<R*&Jqfej)f4V~{em`Y^_v>lGjKIL@W8?c5 z#`D{O$P{cyu|cTC`$56gWdW>zw~Xch&0AWcv(;FdMN;$j5wkg8MVdAA@F~TvZAs_& zxGd*%?Z$2b30AIkNYw>)9pN+qdT?eu^Vx=BPBbc)Q3*3uMWX`5rV#F0fM66Pa{p!Y z5`%eB$wlv6FBOLT%zW>qvwrzWiYRKehfDZwugc7gvvGylD`zc>gEX@zK@7FtN)(Ml z=W|vxccL?G0Jb~s+c^mbxP$TA9V58Ip&R^R?=AkQzaIQ02*+vHiMjkoK2E~c&sT{4 zU0E8NVTlYlbXXpJF0|1K<oC+4;VcFDNn&&iSm535)^zXHImg-G#tDKXXV$bdnV7>C z?`Z-``F{C~hUXj^G*y_R4dBG)6ljb<RwDL;6#eY%2KzNJB%YA{OC&+7X?3w`xg)<R zuYP&_L}_qn<XCb)bojod0Tj~6a9K}zMSO`1ZApk1G$EUqu{Eoz<wmSi%RvMYGe;&v z*lMkQ`!p#OyEA85guvOb=|L=e^IZXIA0c}50(c~qVROJS;6fe1Y{noES##?&sa2Nh zzmN>G2$NPQsHCkRg>*3mJW)x)f)nt6alGb}_;uXHcq7*2G5h2P9R2jO>}hRr`Wa*0 zgT%-YrU7|Z2pH-{eP4~m*=m6Skccn|ki-3mOg`3xUz7YE!5{mxjB4>?3d4n=Q`4}G zFWpgMvK$H#J{=%@D0|;}*?Rd`z3;`FF?Wc3cy#Bj;_S$CQL@>l6b9;wpuZWjfiRE* zxH4nz^a(&`!Z-aHVz#vh5-sodlOTHg2<5`;>S+yu{tlpR=!6g&=jvx8Ao`<pB(04T z=s~SWmAJfek)7~-mg0RECsH@OFYzo1$%gokM26<<-U%_Y#3Ed8MSX&D6hRP0wjw9d zf=GIKppI3=^9wn^+szdC!}HMc^RF*Atoq)VJh`2Td4PW4czk>0y!YVI9aIMQ<eVem zeYrB;h?snd`_3x>M!t*YcqBi4!enqPPLP-J7QMD6g8RNbi4~$20k<_DzO9?hXgBVD zUm?>-?D6hB%gq^R0g*^9?e7#I_WHu2fJ8uOGgix&GR9pYb{aB{a>p@Ft_8z?48f8N zoe^&89=_Z@G|3ihF)vB3#-n0cNdZ5HF*l<ygVY!=Td@h^iw5Oz35r9ctKi1`Y(fYI z!L>jFu5$HFQ=Af0D}By=i$0+tPds(Fj^4T?9TJ!gwn5B+=dcjrkNGI`C?1Kj>|LnI z`{rfD_{^zU^`Q`{#3~z&zi8q)$VeKcX<5h@z=s1?EeqDj)2WzYl&totm{y5Nw8mJ> zwIi*R+iqA@t20P8kx<TzlU!}PJT}3)6#6dqc{=7CNlr^RTUE84eRi_hi~lUQx8@k7 zGI6F)0KHs266+;^<>G$aj+xUH$Y7SN`*f1XcrH(kp6*#yJYO#*`UaNkG<=E>5et<c zvE+lw%oL&=|C=uC*`RLMiNczNP}bTwODpSgr+QEyVT`@=hoyo~ucv`|ULsf1qFASD zXvF;#PlUe*%5=2B?W^59GIn@3+`yU^(|})Av`-F5dt}t_AfZVNVrBc6om`oAnebh; z$s{^3k7`-j<9D*y6M?+lS%iai6M0nSBr=cCfudEVxIT`Y@L|v=6GLCVlNpHG=W)MC zjvxP*m%$J)%|aA1T^@^b+`!Mm>my+Oi6|w7yJYZ}b``gcpMM!oOFYa}u5KJj?{2IC zfuYr8o|FKYUdDKfLaq#9xGx9KiU?_9AkM4xJ=ri$PhdQ%mE4D1shux3Io@XW2oRhR zO>R5H<l^eoX|}X*9V&$F#0n9<*O;%qzgw2O3~Sy2^xUFTr9TGDNU>>PhNP#~R;(*6 zHV_6F)WxR`&lKJz(}Wx5Cnx@TbO@wzkBYBVFwtP9yU>0!d9mbW>d<LB{Spf>6eDLY zIK`SXG&b&iMYNF{zm$M;eJw-q>}4yY0VkPC<IjM=q0%wN&k-dA(KZ7rT~}YHkP{8P z#$4*w2%)O0@R5IyymVcPP1aM~H05W*vdu!GN?d(@6``%vsuSPgd2r5CA)bc>9GE?k zUzprt;h2gB95fCEbm+=%FhK*d=wa8N%L@e2w-4tB=C7Sb|JBFwsdSRD^k~~liHB9| z5Q#_p1F~36vY)b_Dy(4a#3HINtVo1u;!ILuXD2+bvg<acq0RR2K?3NS9bBJch;{^; zq_Q|!d)0fPIY~UTS@6PYN$rjzc0z0PS0^Untg->68iTmNQJD;vnCrM(>d5~gBcVt^ zl-?Ne7kZSZLYcL;<Rd+SZy6$jxF3~VU*IAcb3&t5p`cSgSQM)CT!Zj+8W5QaMjPNF z4p>0wlhd%6;XmG!H1^=L%SI&>(MDk9?xa~?XTEMVA6%tGXG~oi1b=@>xTjtksg>Zl z@_n(?5&|FiIsDEJz&@yeJpUU(&Jcy^#&qkBY4PC+WcbM2Ic6w(_!NbxHx96<E<vvY zT-!`V9ojBI5%m5!!$${_4zTkvxQ%&ThA@{2epBDyXb_D8##{7@svcYvUc#bRB!Kh_ z0B;oh=8mGl)UkE3M7JC+^kWom<h*7pev;gNe<LRy22KWm1`%&1E9py`?bH}M4S{bV zcWOXjY7c64?l%NtWX8XZX4o(S@}Fuy&eb-OG$B%Py-nE2QPztwYqH2KQw)}WKh_q0 zOs`e&0j-3++}ei)A`>7I;JhhHiBm$iAW-L@TzJL~%0d3Nbk=CyjYu|x*h3AbyMJ?{ zt$sIA=>uNJKHE?_B!FmY6LhR$t@`Le@1mds_p<*W_O7-{bzDl@@}`)xrLpBD5gB{l z*KfK1;}??w<(-;;kI!AWFWJa;Yg<5SpGYjBc~~hdD&pdN?SDD`H}dnB3D`8~<c=jk zgwwAwmqxS_<N<TaopspAGvgk_BXl{71E?4ZIu%m-$AFr692BH7K>bgoHb7Nk8&m1Z zpjxB`z*#vt`ruzj@jY>Ya(JrVzFM{5*VngjVsG(KRDZ>SMtQ^4IAl?5$S{I9;5Rc_ zk7t?w0t7G=mY;9LFsNW<*SoX;zr^@G830&!Tu&jui}CW~m<Z<CgZ!HN(PC0l6I!0W zvID1m()8<g)C^<L#{1BI2?k~jDcHobn!Iurz5!i9k;$Yo202&V@9U@~1r&D{kE4uB z0I<<f1y9nh-Wy{R96zpp)2u_aF{ne4>pGGynBA-Dj?v_qwLcw@HLCcRpu6z|a+N3h zL8@w*^6XmxNnzE4QO)@4QGn9nl@ttc$jlr#2Ve^KBFtMhf3_%S(bl6_ZpV|_9S)hL zWc{XQnPL_~I-J`_Ywr`FvfD9B=5U8LifNXfPb+~Zh0xIDx&Db<#lEeN%}l!q$^qXJ zuCH-%hc6CI$Wy34667&Yw0c+N2LfCYUa2hn^SQbzolML|f46;XH*-pmmmkPi#K6S5 zvg|@Z`PL#6AtiWXJ57~R^c4E(OF`s6x9eMdtMKrKeM{mENMHWo1*-q!Gq@2E)FN;Z z>=cW>syfx<urH_wT0;rX)zAhzbR<ravN+mD!m6-0AgRG!O*)ly*T=ZNQeD^2mdt@z zqxXVsdz4-UM3iF$dh;R)m+ipKCt=VKGo^ri@IBYumE@p*wrTGx2}`|ILWz7%g<Ni! zfe3F4HAX7W)P8}n9h9Wb8f5W%3w5itw0^MHshGquP25;|xEbn4f~?Qf6|w3t413er zF7>zffJAe>`uLE7;&#mf@eD}=LKmi@>=gb$p4&rJPq<T4AQYn<ZqyB^$QkTOWIio? zx-W%G3O3q=WX)zR6@i@C{s~Rux4d*qoYP?Mc4Ub+3uyvTY0~K$_Gkk3mcTZW_3y<t z5Dc=?HU;@ck;zLGbmU!fT#cKk_jmV@!)Xis41WdIR3;tMbi_@=GBQpX@oCm$vHC*r zc@$rwCNENa7P5v!KnoFC!j7uoC4jhM9y6h`enA1ykSF8W&qWJx{z9lOq)@dWQ-<N6 z)U^NNBPLBxGcs|Qs&oUpc*+oIy||ofpf~HfRcLU70ofengP4o7qw4bFUY~TnvzXZQ zktiyzUO{O84&_?aJRyc;O-hD^Now;+Tz^U(&|=!tdx0z!ZrR=s#;$gfY(<Ei-%Id_ zheS!!7CAoJ-@e_h3^!cCfzosU&y#D4OCD06EPphYqB_Yb<?}Yhe<(_Aa8gE(Y)?i~ zc!i$FzW1`?=mNllkptCp?W%-5g=9~S!>st>gE%`_d4IVb1_LF^huN^Uz};Cz5zG{K z(0EK5yG#g}2Ngr?!Fbmhy0#x>y_7w<3ok$XL#6R}odtAm)}TE$A3>#Sxdt=BQAl60 zM=S2YVV2wS>@tP?-hLv(E7{uXv}UCTiMibuS}VZd97^4{(66Ki5B8`$QyxSKyVizv z`aZUncz^dPBR#<=E6>^(w@+!hl9Pd~Kex?rj@&ny%*<aLrUoHZdKxGoS5v-iSxb@S zG7BQnyakkyP1v^EcZ-_&0RUGT(S&FWX}rg_80!X?su#$56FON5`zEAH@0L*J{{1Cd z^YnbIGhXAuaLGkT!WNsI%MTo9$c8#ffkHq_P!q@Hb7=gDDEF)*o>Sn@Cn5Ys0|H@w z{IADyw*Oc%WB%3U{I8DXU0M<~N1`a(J9>LC6P6au(ehFfB}f#AP<gHjsJEj*N#sEw zzPUG1)%Q&|7qajXn(iwqyw2y7i35*Y$i;Lv0zY_nRMPh4EK^d}2HBG7mgZ79x;~v> zHt%;QzH&QX_bs_SKYJ#c<9NkAz7Jb)d|ThaFLyiILTNq(e$NMVdYgu6-%gPWe71Fy z_G1($aY(G6?7XAwHjyMj>LqE%%~sYr;M<HRDJ!T0n#JhHar^a2jYW4O6V|IMK<N0f z?9k+0o7bsYH>tBXGj{EI+y7U`Tpa}Q7seBecmxQPT5NDw&u>ld|LK_NS}wYNb<D`W zI%at*V$Ydhjy=LqcW$?HIILqi_135F=)vRB71gMi&bVd^DuI(d=jS)({adV78Wb>% zAnd?nuGXZZhN0!7RRlu4ZmRWEFbRg1QdnDxb+%#lK>bls5pqdLk5s7vlzYSkbepxw z6!C%MZ~w|(>vov2B?XY#D0=WF%G-U69fPdOag?CA7SMCnXu_|S8UTJ>TPbD&Qz+{i zNEE1=n4d=ysQv|@3|C8Yt?qn|#1BZ7r~3t=3U}|rZ#j&i?=qadz>ANtdEsu`h;?6j zz75G?(0#C?<dA<9;V5<E_kG|W2h<Nl0OkcyOLo}%f?MK$mFghw@Ux<GO-FODM!3BJ zEuk%F!yx3vO5agcX8bo0+zH$orioZrn;^!W2BIG_;2^niSlQhi0!A|l6PSCdZrOQ5 zP{W-fSn)o=B2d}Lo=Qsx$_X}-YMaQhXVD};dl6lV0>Cue4g62paP2QfN?-prRh!Y@ z>Y<s|d`lb*fN@4^yeb%&q+rPJ;t!1*j7JUat7jF6lrv~!l4AHR7CsX)$~Gx8buz{| zdUL0>NUe5W5=B$3K0;VgZIfoIDB2FCGTk1gdcQNeFopaOIEl_~{cg6Kd6_wYg)>Q< z0qN5aOgVLbwoU$Wt1Q;(Z-a{*AGZh9QKG2IT~pw2op4k{7<9O<kJl=lylt{oLt_sF zWQe31X2j$^8DO=T#oD0((;(=Ud;qqpw{}nwLN{A#nw}@<dIBZ^l-Lk3JT0QFpT5eP z=%T5yGg*~s4=fUvE{pIhfWoq>zn%e>YE(<$kDu`;YNxjTntolaC}3S>n{}&-HH?_G zh;TLY?y&B+Cc2m<uE7|QhJ6IEzCHpOHGc#3MZ|@bim|Jn<}spLEudf+lfGvQB9Im9 zDU`8ROc<pqILav?mu6^>p3PVF_Z99r3F$!pMAdXMwU1W9FhhuUI>JuSydsuDkeyO% z5W1Cc{3Is#(E4(~ZKW6jVY+27rQoaw^2Z5Jm9EW~WURigV60xO($C9;_2&QAG0W~Z zG*s%H*>WoCo9%=t&D7)e_%o$?VNfiEBKz_}1ogZ@01P<8|JGK$V=HdF^}o(OHg5Pr z9c-BvTawSdTH+j{2Z3~&3%QT1r)vrAJ$?=zm+%lMd;@&1rdDoxI=ei709<~?2+RfC zg6NIB*@?Yz^#_IgIAB4*mXm#Y+Qjhrd!T%X<iPhH*j}_%J=UF`l)RDNW#IEJ!P8G+ zG-}*@+#CmxR;f5EXxpLw$E}g9&B}%My43QT3V=bj3>I+Pv^PBc+o^5tOQr^yl$FOJ zvi2rRn;m+!{iN!J4ZCC7Oc}M|)*OJg4w?&24N47+z5oy*B+#YhM-qMJ_@l02tOX^^ zpC(Pl<p&gp3QCPS%0B7xOOG{}UuJ<>dF!QWL{ZJqwhjGb@O`;ndxl&@_}bN*QElDG zl##&wx)Vp(HFd)WCX{nquCnSn2vZFjW{~zktj3{IfRUq|uw*O;c|}0c=T99<oJidE ztX&jClD%B3Mx2SyoWPQ3y6>M`Xt&c%RF(Gysz#!|U8JO8E4~lGmZ-+(UrUN$kd3b$ zkPD@gsO5c$bH0HSatd|<esSX?HD_6Zz0kKq#0{ZW45*Z{99};-Gqb%ZMapAL2?^#= zRa&k?GcZhO%@*(RF>N!B3Q&vIovV;0tCh1b<szIlnPO(-xu^y1KRXdJV2nAtHtalX zu*-PR%f@?@t;wDMw2cD55Mbj>1jR01m?f#Kib3&VZhBL`vwEkZafFnGI?R_~m>^$Y z?)0HnT7<pnT8BbPageN(LlV>o{<0N^Q^eE+baGQx_q3D5YIC=98u1X&3XDk(JdeB| z$QQ3QHsu7j3~{}d-WzZfUM6K*);X@55(YNLCT@k$+eD<@gt7}+LoMDlM23*_$aY$+ zPD@2BGD9dQoQCN78Ura-6m<xMupz+vXytJtOqpDK4#hVdAn+mgh6#T~R9s_PHs#x4 zjczRUS26`y0b)++X7q))XSAgR#Yd1$HCnoW2brK0g(7!ew_&F8O4_%ckB9h}P=bwv zdh}-xr;b4lm#2wcNl>NOrPKUIWC)L<(9t)L8IA+p>l7%@G5@^g;1ChOGlYKMQ_=^) zohQf9PE%aTz*rbK-P#zIncFCzX+BF29D|whJA(T?o|!ts*wka8h??vOGbw$|I%GU~ zEt;f*Ze(~s-5FF|&a~X*sxF+;7540J?b%qF!^AdND)#*~X^l>O)&P2WK>|3gFoKB1 zCFF6!U$As*4z<_&bqHgZ#cU|o#q`pEwgZ&PB^(AT#&?GVLlT3Aej@En;RFXjIftir zQ8d;G83~XpTputtgG%Fb{AZ?Ar2_@DBw(O%Hq@hZH7;Gb1E?7OWqkw;5u?uwfBXAK zmU_s-lDZ^elH><?G=-RtPpfw7!L5Ceh%xo>C~z-G6P|>#I7#S1{$NwuUO=7%5R;`K zZ_!xhVLoxKTBMIUM`G;|3T_hVlDli(_rVFl)je;vA|DA@$1}k}a3~pw7<CA)4Q5-j zc;G3s7$8|76Y8XlO?$6m(H-W{X@a+iiRno=*j5c?!Uh?fs=opCF>1Jg#%nvFZuK+R zwOgvsYt~;hatP=~sMG;R0*BRRxa5dehfzBT^58)WvxP0fJ}Ds-9*iWw4q#HKyzW3h z{$OGBvKpb1K$!64jpf^>WFQyWBK@ZNSyshuh#Q#)`3D-F(lrGaMTkQMY-_GgDCC5c z_qYw&!cx@zsJ~_92Xr}bYE<YNEO06gE{RTyJ75e!p75mpE%LJH%~9Y`MtuLtYL`}q zp~+)6mJri*yJ0dXM3&kYk;ZgHOg0bUbJ>xXR7Y6Sq<X``{y0?-U8UQ}6O3FYE~NG! zqo%_gcjr7jjq^Q<g<V8QGyQZ&c0`Hk3h$nFN>#ehiH|T^hX|1#i_k7b;m0~JEt{aU zEDmSPZ}Q-5EZ`pkx+JZ%jfK%}*B|VX76Noe2{bFX`~eYAm9n!q1vi%*96?fsB(md3 za?^6_7PLeGHYPQnB%u^THfq|I&mifhU_9zfQ{JeU4%$-+(y73poJ_51c=hO+$$bf( zV5TLog%g5=khH=Fi;>n+cNSIsA?fp-JeQnxd8Q?Oq%F)x9z;xSRmLN3oS!(EW#P?2 z8wENQY|Snu3Z((6CRu$tdyvX_spK)Du3#M17372N6#<U#xC|4pL<%uZ0xF9VZcc;~ zSMr<tu3WWIc*n`pq06=ouqVoqzy3}xJA$&_oYxFjB<4g=6)0G16O1MXB6yURI;#!> z%$cyw0yFc%!&lYg<QiB!0yJsg=h|I@ZnG$5Oc^olD#cnFO=2{UvLLZyEQ|HELUKHZ zweO1w^abK-sRR=(MxF@L`BtL;{+zOxYk#NM6(~<ncC4rJx-Z>GTtV~H3A_&;P(Uxk zK3P;^82J%)Oj2d;h%rS!37gyaYnv$z0~hmEaeXl2$@36NPHe#?D-E3!T_$wehdmnL zn<nwJlo>M%GK}mMf5M-x1Z^XOW)iyKqG!4~x=aQs6sD;)_TpINdZzXtjaFM5o`I*& zDY6f{1m;sGmekZqyWrf*@XRFTzPJfX524eHo{d>tZ`mVJp&KbM4%E8Z+#fTf3+e~z z3QZ{i)G29p(K=5S$qR{EVr5^7)gy$T;aS;>u?nUwU?l6;2!=b?PAh42%9cuW>&Cxu zm8~gO*ap$8OjzKWKS}ZEbUpS_W{DirBmX_i*RnLw(fejW%bC2A<O;-juO%HGxc51# zN-seY`&`}CPgAw51<X?+JoJJhIr`L7h}+bnRHQ^B>bp(_5~VpbbCEHgY(480F=hNe zjJ;F0DAAUzyQXd1wr$(CZQHhO+qP}nYuff%Rp++*aB4r)!^l67t>wrb@%4y0)OI{d zg2t&JA{k)z>1WXxFcH-egYr0uAR)|3UND}|V`hFa0T*3{x(2f`9m<4uiu@;^&)LlK zp2uRw(^2*Bi*ChpG8Q~1H`v#8|M(^9KMK$)mB>hi?IqGfkrRR4E0^uP9@YQMQy(13 zx#qye)&ke=?%fd8^ucRQR%?%D%)=E17?F1Eo~3Nb<-mbmOLnEvZo@{1BOWh{Y@JFq z=4d_4zaEqQ=LB0)`WFEN7|>}ddj<sI$SVoB`z=w`JZ$cG$R=)OOQ)*W%uT6fqL_jM zlG#BRe>i8RqKf$+audP`b$kb9tQ-Y|&7+)K@bbB$Nidx<-q%#9wC^nBEG_rpOnc+^ zWjhS>p_>$J5#xOE`4?JITB5-|;;T-imF?TMki4=rtpzc%2yPSEst@%OlI7T*Zoz{C zK70q4B!?K%;L%g1E;crk*h3*Z@Z&5T>_#ynO9B1}v7!JK37_#IA6NE<Xe9<)t)Kdi zWS)}5Bl8&`{XK+lAZCtptZ>rg^m5Zz+NOU&5h~3gx={W|RvjA4<W#isc&rvKr*C<f zRv^|3GkFEFVuj3cUl^NZRuTLtO02Wjt5Bul9UE7^+j~q`5=v&cZ(5WtTDcsBWY*M% zIU3js4miMgv`hY!)Hv%839V#uRK4N?yb>hEQE)Hsw1lX^7XH?tqY7Mu`kQ-n6fw&f zNrX$dTo%&~e&i2e9v#ZNJw!v@6#m5qm6~E@{8q?j6(KS>>6*F@&-Jmm13LoP9hQD( z(9Vw!x4U)65lMwb5n)};wuGhzVs(wnP|Nu;G`gZ_%rxYELo09jGY7^X?-P(QGKTB} zG=|ltYE>r`5PgR~sVaH!=`>AYyz93Zwd_{CU+~$9tgHVpuZmY}r8l7DMk@dh8l85+ ztyyzg0M%+dksY)Dh%k}2?=USrpSA;8T0}N|V5E-x*rjHZ8(Luu3~MhT_TiW}c7IPm z((x)L>ZwhOq8?O>Y4;I;dTDgU@a?gT2|2n8nMg?`ByT4mS?Z&dPi3Qop3hayT>k2g z?o~fP7+|Jdx^GBVR9Tj&Xpa{Ry@RLGV3_em7}IPBZ2VLSd>sQBdGxkjR>QMihoZ0% ztT65|a{Q<=3YQR2GDOblifca3jfTzPf2T*;KzsQqS%>sMYW1sok-FtjF%n6s8Qw){ z-^WN~4^2<6DCZPqZuyc?PSWV5W_Ko>lU(Z;Bc12^O&e&KskAew%Z4?Il3I`@l7NEo zCgg=kBkcgN+nZ(!lnAVQe=O?z4AJp2;*1wjG>Z;crBfg`2KWN-hifc*8P-NT_U);x zFj7DX8jl7^G`Re&S=X)Lo@Yc*?|}zC4%89*xwpGO{JBU&kd+EdOSe2%_0{b}E9BA% zvMyn5O)fGNO@M)yYQPLy{{+8Dx$56$c1>=QXS#&~pWZ+UFokkf^3<m_(#EF-&R{0a zuy0lH`CEfIr5M4gJqOO_){sQVju@bI6?#(GXsOnmkb-7`dQbxU>2(X7rT?Ud&RaEn zPT65YF~?{Mw;k=vBh{*U%H)2<+JG4Qn=>dLWXD>E^{B$G^$HejUrhu#6R6LF1&zjG z--<5v@5^dBn||0;_Wp;2P}Qg3dgNf4JX7!eQ1n{^3P>Dz4LO4;uV!TeYi~QJm4k?K z9D?(H&;ZytD^e+vC?HtCGza#yi*>rl2JJpP&k9mU^_Cq5!&NWOoBv;AQj_}*1m4<* zZP7rWwlJ)yq!Yc;Zpw7UO$V`cHwlP^*n`e0r<#Xj>*C2vY|{gbupV~NTb?T2c#zRG z-M3gIy+;D>F2)fEqX&#V3K8!WkNm;1bVd?~zlJDzwg-W#KGkHsa<uFu)yrFD(5!g& zi(@LB{nh7sWqR)ZikiRpNu?*vwe|KAdbB&4l^@9`4Ez0I%}k}Zuh?lRsxhzZVgr@3 zq4iYhxMo%!hez-EB{D@~({=}3TRms9P6c)I_zDgr^-#bpcNusRz>_`?Yxg#|i_07A zkqG9|@I;<w9lWBI^on9Kq)br1Xx3-5*`nBr28#DLwUtVdpH@C*%U*XTgdh5Ao!3U% zY2D5mL>L#Gak&>>9BJ51srfmpKf}EYj6C?_#!%La=6-5Wh|EL>Nb7&k)@Q^yW(e|b zUJ;vQD!nYce^-y*(eDB+>3U~_Q+O5cflidBzgEuZCSBgd!SXh73vOLs8`9&*;Pxz? zX8;N-SeZtBKP!rfhWf{H-#Xi;=-bmfH|1sc^z-F>1Rbh*-?Y9C{5j!k3+5xmWaVH& z2ky+{_PCP&(vD3loL8pw-ty>PF2CzaryKb)8`UD}ed3xw4u5;h?Z<l7gTZ*UQyk@3 zr|7n1$X3^Cl-%N$wFZ~3x+15-6ch|KuIB9XqXIXv4kibv;BtSV{ej<o`A;(5zkIj< zH&~vDf$@JA`nIAqRr`;w*_l&&BAv2${00XEXeGp;j~79_hNjE5(sKQS5!*C=dzyV% zG?9Cr;Wf4fZpgptoJ5Vg+7(ID;;p^>a3XQ=Yxyim)Au0a^|qB(M#r1Y>t#2TxP~ol zKNW_DO2hP&_-Of$uW9gTS=H$AerxvrCM%itD#=!wwEFty_>uMYby`I~Y8q;SldO2P zn_VU8g>iX`>O_<mA23Lb(^eSe*}YXY?Pf5c!@H!GuX4tMj8;$E`sqL2JB$M{xjGxl zvg7r3@q7jFeuMc6w^*Un^c#SSVY+PJD{5HCSh>7<KHR?033v7QaQ+y2I8XDV!}I%o zNyGE=)GYixdWgH_`+0gi*JBedS$RlH(*5yRv|U-iv`S%#UoLwO(J7k4j9&0vFoj_V zL#Fs>-_%!{r|b}^Qo+C}V%nI7lPj~>71uB1HcH3m$(apPnhRT=YopJBlXJ{%#eK~Y zTLx5L+J-pp9td^>W#tR_>z<F3qGfJMEmwBbF@`0Ly#<uT&f4UYywgxV-hh{e$6BNj zg9en?*B4Cb>+*s5aZn`13kFlNG<EZib$04T*1}1i8H!tZ!bfJKhUNn9-DVEcc5EcO z8bNAQsj%spwp93CY1qnuUX<p)C+m@tqT{Sx&^ACKg`;N^TKivkO)UXB$dq{ILu<NO z(a7vNMa?9ojWVF;9g&uNxI%!SdQSr<Y0Z;kF1(C-1wT<S#FYmiOX10QsAaHJAW|j5 ztw$&eAg^4#>2NUzqeH0oF3{GSJ8r^EdPNQvk=Zm;Z9)<fk=eLhSwsTUVMGGb{=cIO zkBz}G;WNw}@huNm@#^O%TL0Er?iNbNGEfXY=DF%21Mz{@A}4P?tP)Il>KJT^(PDX~ zE<P*fxs%)^Gw(t-<p^%SwO}A#H!mg3GYo^_IAI<Y23!)V<0T(3Sr$If{5P9<nT>zs zy0S6!!%Wy27USAld7+>2%F<;KGg3DGj^gf@fJiZ^Sj6~YU>%(a6o_V$6g@KDc^eW` zWb2MzE-#xwB2a1-fm}LJV4!6X#2uZ{T1KAJibp-MW42bpD1`}jwQB9pBP+lvwU9sX zX@b4#9r5CB536WsawI!dH<Wl_!}=Cz4!fzUKg=XPllo$0y{RK~BsKuGQP3m$5V#Yh zoq)($K%b~p753RcM0@nz8Bhjv@SQwupvN5xf$^7UFf~}zuIU?E2!cCJ3^``RKpi`e zU;`BB6X3dx9%vYmv~x1;IB|6&_=Kd!n2LkTfN4^613CZ`&<~S}K7rUNViNGE0aD8# zeS^?Mq1cbUKWYScVY`^@a1Nt(Jy=;#tN2l@vct;>rmyx=7!#bo7YG(19GcRkf&k)S zWE+A0DupRh%or}alB?!`5t%v48|;eXTTa0`u5L1T+n!vR!)m){v1hn3raNcA>C-Db z|BNA~XE+3>7CN)7;o7t@1^sn~!2q$cWW8ugX%K%v^(#2Nd=0|koA2?;k_9#fKrC1E zo2c~BZP^mH)exH^&mco@*@rbDmYAr)H1@hMs}W`g$6*$+6M0&Ol9Ay38kNP}E1zH3 za3M1OX)b5p*tUiwYB8*uBr4q040<GN7v^|<3UzM^2{pI8wK~-as5bRiu%jQXh!lkw zyCr)hq^KkYDmgU~J64}pfFY0Bis4wpetckgUEO8tcQ9{7J%2)B>D-BU3I1n8{Xi}z zllDIE%Oe|SWB)-lK*AMWddXK}V7WpHS#BMw#ka7c^a@~2_90+Zc1W|w!z@xkc%pP9 z8~%aBF`L_g-2qL<+MB{;m*!>ysaao|Va3G1#;gmLE_lPF%&Y#M6n$b##X@c2*y72B zeg(;P0>c9etI6&k;iqHfpK<MR$*25Wm-Q$|R-e;RoQK>IvyJ=87v&5K)S_ezGh4<Z z&9!4^IYvpzQ_=-2FV}20cYJmCpGlqqofD?KoDW@5u3Pe*(xY2aUSwUJlyYFM<cu9y zF`libj*FvGvKAeA=acB|>~XqH*dgkMTh^v?!3E1+60)w?Hm8ZLS|gKL7o4TY!(fJo z_`Du5^u7b{{Qy;CBJ0v*--yx<J(6f$$Y_@G!r(8FC5FoHO}q>bJpgE|d@p>dT34g; z?GfQt9CoFi8ngCm{)B{T2CKa}e`dw({eEK(1(y6C2~<;7qLRR9TL0SA$Q2NLQ4+yi z>;+ce0{kQ*jzsVWnd0&YjGYmW8^;^cym<{x6i<$W#D`LOM_h50Vy_v88Ox1qse>T} z^Gx>3vq&tnkT97AgLuKy4$jM`i*A>u+0~ou@rJOrFy~YO<Fj#yznIX%huBp*y?e!L zpYeg#@aK6#glabTl_EURH!^X!Jusf;?srBb-6J^L#x=%x`g2Y(Dg}jtBTH}_F)fwJ z5UIJbrfkM=G`^_|L`EeRs~AC0<;Wh9rM@%kRz;{YC^zrctF1bkvjglTeFm0ZC>!(( ze}o<4!LH<I&H9drH!4{Z!r3foWS2HlyX$Tj9EpzMT-GYPYo2L5vW)SAj=E6^6!>c~ zahhqAdNLtgU&Y(v=?F80c^ST|JYCK$Ngi6RVr?E$$5@#9oEN4kKXJ8MxiRgs3K}#u zk@+8`!H$DOqwt4R_865ff{im+xC&+yh}>GL(J!pr)4fW<+Q@n4<0Y=~y^N|SpyLS7 zVSb$fbU5@QVw3=vMtt_vIZrN3K4Yf#9kep`_gXie2E=F~Wh+E(2Hsr3y{M5yx{SQ% zR1lbB=jRr4nqG0vqaG@GZqNPkrW$lFE(+3CR&I~bFqO|l3PhMs66?^??6Tio!!2K) zrr|?E`8qWKu0Jey(FiE1EFoDcPe8A2>#ZoWZ8BWs2g8GCne4GN{B~SmX6T+!$Zdyf z^G{Pi74A(Fe}FnXJh)6NpJkxJpfzSH7`5tVpHK^Hk~4yI_G(aeq;bXNw5bE5P17-( z9s#CAgbI|Z42}<p*94I{ht3p5ovE^{dN)-4-RRkb5)!;N{}N0tISDSb#uk*{I-o}y z|Ii}mIHV`&F-3B1nz@aiB-eZkWh_4*&V6b_tUVB8(7S~HbnTnPsNU9>EYm(}J{HWM z$>mfPhNV~;Srs<t)lR~v#KW}HT{05yW`^6c<TOiJCKX%QJYUu5xWGraCnj>*Of1Up zJs$_8YV7q96ZZIseb*J}^-`771X!{)Gd67Hk}sfI1U+YKONG%|lq@$qv#G(f%rF@x z2pIvjMYN}3TYafLP6c+en!UjMLu7eT(<HC`5R8y*lkJZdk1kp;&mDvlJtZogdI;_p z_20ib!Phj}6EP4&r<A2H2o13uy{Twjytk@KbrzKo*(!2vA)}ju|0dH<blUa~mC*>^ zyDl!1<38g@MMOVK`*501BojLc5|<K}+bMgv$W*P^V?s!VCjU)MnCGpw!Bk|QvZAyE zs{OS8*Cd%AV^>03HB<Dvb}^=@{c?a5>Dyan6B%@I+G`OB@nhQ~7=@)aIxw_tTkC%8 zS?K(t>C`)%%#iqUqaPPyG6Di+n>-js`u+e;e0>^aX%=o$r*x1WTw68U?)$C7IkqTi zQS)2W-99pwdDLTBJn+nLv+ZH!Q#9^}Z4$vuXB9TLaB7<5yOy#Qrr^C<k7=y#<ndu? z<7WVcRIQ5oEeHIshX_QImhF4_NF483DGushmkn$$@c_`uep*YOs*pS_ipMIAy1nOo zt!^v3CvHpCwrW$QMY{*$WOKh-j%PiV%g&9dT!x6(fhuOn@;dSTVaNVH%o}4bT3TI$ zuUUr;GiZ?~XjY}=s_UwI>I=rcrjaE3)wbW+RbtpawW5<$#==TZ2FLkO4DU;`_&poV z8Tf*vaT$zz$XR8VE{H@Tb9>hHl!>&rL^mz!;GVTcTRE<Uvns>&S>vT!@jETbTx09v z{<^SB=Yn-t{s&29M!9CLERD~yP_oZ%tL!rT%G(cbOLYpjW)ah}PxaK?MaLH*Po}ED z@p?rw?&#Uprjyc~#<NpORa*UddQ-M5`nKw|W#^Lf!8EMp)?vN>ho`8a^(~$3sPtoF z;Z4MRB!e%Vm-}Y^RRII9sK9Yu&$_pkeyse95S3>-?=r-D^^I}M!$~a{4uDpT{HZsN z1rIlk;^$!04}h?N-}pZbAsnp#V+dhnWn%qbu>>oc6S3H12tBWA%Ohj5C%x!^08z)_ z@cTj69SEH2MiGeskd5AVx1T-ZC5%;_Swj72Ld5JU87S|DUI+<9JwDq{FV`Y%elWRD zrmgVRk^~ps9(93n6E<{tw0`Tn-!He<N4I{z*Qa{At;oOa-*-o2dcHkhP<uywD9yXR zW&J;QYj$*^c7DC-*Li41DH5}sWjQ0Ea+gqHN0IlMS@jrIhLj9slTwo+X+;YgcA``^ zGLpNfUA*1esXk5qA`g)U0Z)z{yE~peRNo)qOV72WYbR&#+b$w@{w-HJ{Iy`z<ZAkt zNXD~}IK|w8O@<yF+k0NW{v(EB`cWgQO>@0nx0IS!r`Kf&3z{4F3pBrkxNWzzc<^`x z@7R*e;G9i3xqV{ZKSzZrV)+=u1-m~^46^UWhR0nq=)<1kBwTa}(KV`AXx<Z95Rzqw zip{Im2z*{R&I`6o5(KtIbFmDy+5**CiFYE344N_1<DoyU>!*oB6YLaJ*Ub%_Ks;9p z*u=%f1O%1(IT9P@O*&}8P^zHw&=vq*I{Y){9gRhq2a5ZFmZM%e1~dM3P}L|5CbOd2 z1bT7(u3Wli##E-Fr?%rLkC9fb$A;r54^t)#$C2&~$AJG%AR3^V5Up<>1C4DTR#^0B z-?f8ZS_0ql-7ICWwx9s4wHlP^48x^ykN`j0i4i#O@V?1RM}E^1IoK0ot~X@`twyMi zG{C)0x*=)l6%t@0xv4rd0#-q}3a2Pq%c+}svvklgx8T3!Rv&Q8f@qR`#@WzBCfTM+ z^eh`_S|bPq2!e?$Lc$!z1z;^e#&n0Y=GAg~+?D|XD@lRI<M5LFJ54ejYI#i*dG+WK zC~6PvKO!)W&4tXJNq}fB6s*Q`xA5k*>&nuQZ?g^SB5*|l0Gq>tc2PdsjpEbj(GBn# z@g)dkKxNey*YT?CCP-kwN&2Q546MRm0t3?YITIuy+9x4}73^pGCx|G<B-c^iAi?E} zpdY~YF-;O?cQGj_=`!dNP*5gmJkpCb3f;A_5RkDVE-|@gA}Bfl`e;k2$iA2l=AXco z_xj!C-2fmRm3E--9l`AM=7|1uW|s$Oa&ZH5?91%fU^RqSfI9hHYX0Nqb`7__<h9zi z{YRnLv%G(vB54T_q$lZ9X$utZdz1Z{$k=B>Ysl&C?%5TNxWNu%X7kI&D~*Bi@`F!K z(TK-;t$sXHJ<%o_`KiDje56}l7;t*R2AW<F2zvRQE9*4`!CD20D+*-s)eyX*2*pv* z03o3n-9y>?@@$?RGt^A|A0e1}F_yj_r%ZNQj<QO2hZy?Iu-dw;bu)4rH1*x~A}w4u zqV4Xdb^5APGqEE3w#|e5zEG|Qzfs#+R@Qo|dS`8(+2+#fa<zkhp$_})=J*IEweV^y zsNcs>?&91`y?&Z~-Y|V0^6uFB-hbY^ran*A>VJZS`Z2|o#JO+`^O{8mt?r6m*y)XV z`#LcH>^F@uy@_3xv8kOh?Txm6$b2F)OF-au@oT*m)&||g=>?+qvpK4Y+n^P*bl`xf z$}@kw_oM9|(pe^rMG)Y^5LyO#+HIg3tJNoSXWJxj?li};NAy{UO}9ofy`ys3ucC}8 zq7}ma3ox5Z6V_Y{>wY0E$UvHI27DDXxqh$Zi5l4rY97NFg3`I54Ju>1>=lHqVb+k2 z&x}phMVzs?PCD&e3uWmX3%wzXA)CjG#>pmT^f;^!bH4~K$dS}?kRdeKKg1&H#mQLc zIgO^o)e(5zt!M2k_?9+orcT%{lq&RyGY)!;w_K0mEhU7XQwSY)ZG${4=t0od=_{op zd0>v1X;3osYXs$?<@$s@`jE@SJxk2u8II)c+Y)1R6ffH$P%yOIT_99<L`Eziuz6cS z@+=m^C@|2L#&(E@c|K<i&=Kx4<+-pk;Akd@b`dpPYcd1e8$eRf+EjhbQ_X|diRle% z0N7}bD{z@W7GARMDmvSsLN(QTdojJj|6XuGQM4sm`E}z#kXf0GyCz}~+@j|zaB7-6 zO=lEk-ndGWliqNg0W+9Dtzv<SS4yB>C(1-1<Q{Oh<lc1ko_$54Tc#u4#Q>nu3gsRk z@K|mNC}V`h8j7X1Kq)(AWon(^6;_)mP|3Ov&Qy2NGjgnEqs8Wq@t#l|q2`gtH7$WN zx28W{zc&6|iIbVUwmfA5#oInAFyQr6s1EzG-Zj!W#j5wJgPq|!&eJrAqmG`%-D!+z z6&u~3TxE&RscgP*IY$S~=vWiDKN>_wf=WCe*4+sloPFwb25(%X67{)YQDb+y;&@Ar z#tYtJD1xw)P<}zTP{&F#qBN1`;c-S4rB8v<Y`r#41Y1^@cyB$jM=I8*a1%0g)3yrN zJb-Y<U%3IXM;A^e;%M?;A-!NZ0E@XZ;kIgCyfPc4)8~e1YmR5$+3E@dfmC7-n{gcK zgeu_~M%3<44%qmlF7bFp-i2kghi&quLY}d$>42YWJlTNy+Ipq&(R}aN5}ZERGZAN^ zFz}#uDB7s4>e0EvJ!QI{pKRJsL=|^s8klsqT-JDP7T<q;xc-{i?R^+7IWeD5#M-AU zYe6T2I(z^{LrZ7K1i40w=c#oF&r@EM6?D>OsiMjm_L^epIl&d~Y@VvKvfFTF3v^U$ z=f5E=N}Rhm?TM%|dwD5CYuo+1SO}EjE<n7BTAw=6$_oee5CW|^mCtnd&s&RMl;~!w zf4&lViE(sE+GGgy)Rm70{Y;3RKysKf|I2S@EO9`At+33ty|z*HutbDP&q1|~a;Qj# z+ko*)|LEXQjz|}5`|n-Lhwtt-x{XYrdRelQ0E!qLXk$2*`>Zvy;Mwg($&L*&UOBAg z(u`KgoE{VvTI{AhsO~i<JeX3DfaWJ9l6f9FRxqL(HCZm~(Z@Z{2;%8~2C^D9`&$vM zjL{4gpuX+L&3Zr9tG}0PG&Qa}$aA)q!?lwP2U^K%bLE1)#g4Ttjp>Vyp7CmlQdkg# zSb!3KgndS|#n>=DJxlp>V!r^y2wC|wosrClw9)aX+VEpICN>K`t_<v7RbbMCma1ot zN||nV5gqcPM_ljrSUy4F_AL&ryzP$T)cT*T;FwK4yQ%zguzke4qIa8!a!>CpZI5ak za}PD2w_-MzDtw2+Y$PoA9e>7}x=q7)w3&%*pHfA2O?o&dM|VTLJcji+3g4jF<;>{W zeE*i5pFqanbLyb=I7UP3+k6Q+Z?CgcF5hku`xG-jTgXY4Nqb3oE<bFzB{_pEPM{0z zYJVLALu_R6{Jsy1jy!iA`1jf&cjyAHtG+JIx(Sm2bI&(xoGn+X$jGUq?Of*WK1l?z zu^~;-5JH5u$v@1b9U&)fNj)^w4Am*m#~-0BK3-#iUn{(WY90Na+Haj}jggiuoh@=M zzp3AZz&bDeUGx${_Dze$!0fZ+$lKH~u~4QAaJwM7b<Vr3dFM8eT!su`lau1I-b)X6 zt05U>`St^t6()NA4}Yet^#8MWm4Sire@D5NsLI&su)y#9U&{6G&`|?Iq%cB-as)`c z&N4`Mt3`rhO5^^m(_hksM_}EMVM32JT(7@x(-{pF+bEQDY=eH4qRPBu!%O?8X<JcQ z*Oyk;CaW7IZH|w%cMXA4*(&PRs5vSv6lqzXj-NCM+DI*;#?gDXcU*?vElk!7w&+@9 zg_l)2Tj3i&=05lBNb-Y1LzIu}_xfzpd|Mn0L~sq$cxnS%MSEn(_2yY}_W^UgV|jy2 zgqnSxK98242cX<vaJ=5iq-vjFc+pIc-nd5*qogbDm}#q(EjOC7uUl#-KTCNhH;;9B zyMF8_uXdAmcDKCV+dprDmFbglSZRA~wkbLyDa!E`pWFp2HjLp0RMah>S3^Y4x-FMy z(nTnxl7lxgrN;vnQkSY=6HcS?_&KfLhl}5ZuisMXFHvM0N@py#t?~fX&8z{_0Em;& z)N%VxJo8L+dV)y}*{xGnbYSAqJYcElQ_Xc9UD=iTS3VwYw3(Ey$n*D~h>G4VJA!zB zZPu@#7aTlTePMihH_BPTV+w>Q{cNgRI9_p`LNIJ5ykTv^5*w7mS2nRjY7*t1X$MP= zx)K(MX|7N@uWiiDyDx%QJvd$6uXVsv7}y_b)XQqaqs5C75usr6!SIw026FZb)R0W@ zq_tmy$qirtYT^;sc>**SLQkSCL$F|xDp7884Ql*ffvJdK^Qa;)9)7UbGsb*GQW?TH z=Y&nCG1exH2^ocWZ6d~_*%31SkP#y3vTH|3d+0HgH0v!Joc*Nz+G}j{j$<W^A>*2N znxG|*`4=vjqXgo*#8z;NVujJzwzGytw>#L#lAL|lHy?45sK@hJhxLOzBa&(xEH5mB zF~g{Gv0c|l1*wy9$MV{*6i^pOP8$d*a3_=q91MLJSb~#+Rf^vbGYs%Tr77YZ6c-J` z8flvW5yblJK!_y`0Y8&p_MZfKMw-hElSz^*lP=?0J@cQ(3V}mnjH()Bl)B3bkBqG_ zl^)1KYp~B6DKQKVXvkOVQ^^zZA@P$Q`8aOgVIusM1!}=&MId-WZeuJY(69@=ttVdv z;1P|rEi{d^dSysHie^1rjt9v^#RQuQkXO$dQ7S@r6vZ)u!Nk%PZSO7kg@`(Wz}LtB z(hw06(q|3e6G|F-M=tTD4_O^t6@&9z4P+C;g7RD#!`Aj+2nUWukGT?0chQ~@huH=1 zUz;yjFUTR9gM`<|)tROG%bB@*2KS(U0YrvC?;sJ;k;1geE(R56_Q!mLXkfu0D@eP{ z0xsvx8Za)LXC$FdW5M0b$Q<P!+2>!RD9oOdKR@%r`1t#0FeZDQrdypZ9ic?1{zl=B zTi8cZg$lRrU4C*dfo0CUYM?FS@R>zBsXSMVC};S-CB4wQKmygUi|@%rb4@DBKBmD) zo1tc(oR+T3Xq#tGuu)E&+BSztm5Gd~>3()&w1vz@B;A4^16@YNGtd1}Uw7c1uXoco zOk`V-?tlDb{m)^VnUS62e>F_EXi3E3jKTEw=`EyT>y^EbfP>Z_gV4tZA?*O;B}TOU zVYEJt@5_s;Hl*p9!4e20aMz`yMqP_DZqfABTz;65S^2g4QjF5=X0v({C>iNk`L~$< z@OAJ~b~0r5tK<7|l-KwDHT8(Nq?hXVeYZr{x9dCh`DXXe0Q7?wc)x$Ov(=>W>pDN- zW4l)U?=AHpFy3i2>eQ)Cijwcb8B9Z13dElO*F@vXwOeu`3W#`^9vc34H~4;>eJ6i> zN0xn_%ib(49(6wAwD{MYZ$wOZ1Vl__G`ypk$6{^DcO07jJ$ZNixq1go8g7l2LChNA zy|~d<A#TV^!^;w>T5)f+{o%WEcz=1pefhsOTG7(f-`CgrIlsN-3w?7;*Yecgon{@K zWrFz@5v%piI1Y`m)M&APCDC2ksMl&JO)&%LJ-}br$!Z!KB4a47SlW%oM^!WRE;&TI z;a1?H15AmeK3d%We6&gR|IbHzjTdXphc5yQsrNK;k=8sv;dNlXmjq>QWM=TnOULXe z;mWB>&>>`ZV0rM$+rY%=m9w6~Mw(FwXPSDYG17^BO=!w6Yn-JW&p6GfQ%Fq0H%ra4 z`}d3`6Oe_L3(S548BmB%+7-(sZOPjt*!bq_+{qI?ejVv9(7lF_=Bd82#sB*A3A3Pu z?i}bbR^7A`dMk1py*e9AQb$X1)We!^8;l;rG-1yj$^weSC_Ybf)Dla3Bygovx9Jt~ z#||l)rEX%~xJW{r)iZ_yB)uUd<S12gR0NBM4A7CJD%+_&MKwq9Ap#Lx9Md@TN=Q24 zDldDA<XXkQ4CA3W`@p7IQ@sXY!W!FKrj7#Gjs<m$ChoeQD`r${x}*uCHvPR+>!5m5 zB#$3aE2K`-BtGd3^#xD@-%Nm5LV$aAAZ0?I&;~}U%%_ZHh=*uBFn;2v=K0R%jq#j0 z;|~yx8+Wdgf=L{gromW5Bi+tKYG9Bcut#sm3ct)Gh0rVZiD(T%@YSK(e4uy=OgCMP zwyLaH92aWVBEI<T8_Q`j!X*CUDHdRm6h`DgCvkal3>+xppcbZOs0aRFf-@3f9$Yh3 zpWyedS^c<V#3VW}vAxt2esQt~Ua?eM3J+tK2ywJ%Mt(h7E37_16?vvXpIIoom}3li zEkz&_B)>g~XgEGp!x{(&{HvCO3#Y*4g8LbG<ut6If>dD6U+@6{1%AE>54fYprM=>g zpXIj~@#o~Eb5IEoM|u5qWoV-9p+V|sFj=N1@De2DK#*x_MRB22e^Q)bo<?(h(s>AQ z3-D$;?{417i+9#t3=C{F^mi-|%wON$89A39(MmJ#=rxF894Foz=Tv^Rz3HX$#)Liz zrZUeA5|+V;TUh=(xIRGYY@mI}id!6|Ju&(3zdP4+dP5eEk>g0)4>w}!9wG;kte4R` z)}csTRcUT`sjq$@l0ShzJU+iS|LUS|al_xyqS%9hv2tR%M5KKmV52;Sxr536<d${0 zMAQO*g!u8Fg^$(mJE|@5e3f3(_T=(Nk^>-+%PN9{_x#aW_*gMFrb-Y1<r>hR$XJ*h z?XT8G2%Wm+S$g&~$W9R?K)s0|XQ?b<L}s)k>SwjrYDp|W0hjD5>tY+mIBamV!`z|d z1)J4Sre4SCdx9mWk0TzhJMlsMQZ2965I-IF4xS4y2CLCW3Xu!qobu5j*TTz?E2RoW zLs$s{kcJ^p(tW0%`mjWZ<xa<5vEijQ=n5UFg|ay=7zlQUa|H8NR;o~&q|+AZwelNk zf5Xhuf8R=Q&EU)`NYDfAG7Jj-y0|dTjAwGB$~bO!JPN8vlvdw#Vd*Xt=M8w}&sNm5 zz3gmb61#%TZWn2N`+jlf8KTPLT09dT*<h|7=4uS@x!G1rF*+=tN`22tJ{iH~KBN|B zEqVCaQ+_8;xS&R`uMRg#MUY4*mU;OU>0+{Mk|&s1P*LY!(kxJHuVOxZ{`{`J)#$Vt znP@z#tnP%9RnkxF@rQaCX>6JmS<yal?yFMTvi9z&@9ODc*&X?rsI<aQ0aqYl@6=l= z7s3T0Wjrh`E-~~m*wl!zp2Z%Cvi8SR0HWr9!g4%xEgrXgn}+3Btqw-yi~~x9&6KBv zw(ApQNkL4l%t)YGa6xx>5TO%TnpzFVQavy&T6z&FM}{1B-bjeReT4I*!KdnA$}lOA zBM6Vq9fm56Y?7-&V%ZiL(VgynB#jlijpr7LJ?0PLR492Bzdu5H%EHOY?Ob=5>x2;q zpUMih4Gqz>#6De#C^bzx@X^5(6ErYVP@o})V=d-QaL7MNN4yvbLZOWjVpSmQ_WVSt z@F!$Ag^0}w;}rs_a^l}rAtq5vBL^o!3Far&ZGxmo?M}EAMUGV&dBZBCzOC1=2dy-` zb_?d+33y*QJ+V{~*XbB}dclUrtLpuG{h_V!K7OljYSel)r=-1JO%r~~POF}#&|Sc+ zJs+B5(mHb;>`QFd<TQViNyX0`U+1X>bImT!4wa<>De`UGLIqav$AA&L_$*|Vrq;bC zi)iXkzCg$20#JGC0-(T3c8hClrJKJ~W14`~N#ve+4X;{@>KQ#O&w{33Zjnd9#&t9B zmQf8xR3})@zu5V$Z|>?A+7U5kGnh<Fb;OyV9AG*@tT5LuA&us>LMd3knLLd=6-2OJ z*6|!4k7PB7r)LP*qo*hriU6O{fkeFpe07FkajqbIehhL-xBU*FCH$TbaU4)M?VNZ_ zOdO^ni<<doAsaXVTU2A_87K%u*Of-eVk<X_NO)Ix4~6D^&IqLGRZJ)mf%%h+$TX5z z7Avf!72z80g;n$h<AS{&K`qKi^l8RwTp?SNgp2_`f9k91A%}qYXdu%@mZX#_z#hmb zE>qY7H4i6X&u>YJ_SX01uzJ&Uv!&wp<oz_jm?-w=v>tOVtfcQ=y}^Qz$O}B17PxI) zemX>mL@?0UPTlY^zb}7@F*o-X=h1dl=Vbw5FxetEFZpKACtPSx-5PTidAN`INy2{l zxHLiNP8DV4BCYZGsAXgO2|&yOs`4|$o`9Z(tWe5d&kWsQ{0W>h1a$WrkBHC^$NA@@ zs%H>q*r^L)sNeZ*<x<|!sl~nc5*i6_bJye<T)>ULt)T8q=9Rlr&y*mV3^!BE#XzBg zqodt#I4F`sC`kkdCWPF&fT0_@f@134Rjo3lZ>NZ0FPO8%?g!3u=rNE8#j>HSiur^w zt6X7So&t=JI;KziS`h0sdE5se6ZvOhx%4EviWTgLI#xsKXG-EB_(DTdiKHdJ#Ol~k zE*|0*lPy4HSD0v)cu`2Q13ksik?8c3gx3$EkB6j2t84>&ls|7ZQq9z;;7a^{+kzN| z0ZNQs^0Qu)Aa#ARv)V|B;FN{e<S641M)9aTUEO35k|=|#>xqmKQHziqoKwlqA`QY{ zHKoL<b}2N3hdA5wk;V(pmBclm@O3um1ok7^We0Aisi<lEx>I5T1JSrr?0j_cBj;_y zWJ<m%bGM#S@W`N6TUW!1JhTSGa~iYCk>MkTO(mg5G4?dOzBZGQ57P!UKY__WkbKeN zn!V<RwLW^1x6qjDLbxcmsTWcYF_A>Y>pXu-zp7&?d?*H;N3~l2Hqet4nYZwr9$N-% z^8TG550vgdt5=y%;nbqpU^VeNtowP<<Bc~WPVA(4j*BX8{tDqfL*0ND=~`{6^Hbt0 z9v;s4&Go@eA!8X3$oU=MoLFShX=((7Mln)uQ09FSQfLuf73;w}ff4OvPbbEKiFnAu z9*AgV-mKH<J2#YiZ#p|n+9dr;%Is=&RG>;6J#!1XU*KR1w>qtU_z~2&QM=6JSYDL> zbWun2ryTukTeKs1ccKKAkNie~smu)azRz-|gr_eiT;_620oLi0g`>t{)`m>z+zPgb zx7jAP5+M6-ARv@m8OTL@pri*H5A?kcGK{rryY|6z1J0-m=*z=~rAJMjMG(Pdcwx<B z*fe>b9dx1oZ9x63VY$1A`6M=yn?xad>%c>I_i&5{Gg}LhhVK?kM-2vZAe^1Dl@vSn z><B$FxVVy2*0Wp_foem^isMlMuBSCowMh==cvmi0jDir$DvugX@^3_eoKDbW@9J-5 zedyS9cBCsQBUEu|sp<n7I&<n5$dmHe5=gc<Mcku{)$rLO4LacwGj5JcqB7$P|7h<R zfEtYb1ec5D5IuxnnqiSlqH*XtN7Qmb_TZ{EVYD4vecR=J&dp2#hCfkk&3zvOWr8!v z6{7D}^|K8Pr-zyh-J&r^0y_}&4NmO7@+fBZnU!9wmVh?6_4I|XQfjQc2Q~$g48-nj z5%jq!3WQWyi)H>jQ!)<p?)u+WqzzmmG9JWw0-i+-=uCsu*UBsyWpPNxLCcY)(m9Vt zIqa%Hi%n2g5Phh(8xm?Yt{(7pEj|f-^x_u$J-6;_NZ3yTKg$;`sZ`Rd5xnum%jIqv zp7J3f#RAq{Za<7KSp_^OF*#SHbdF|y{?R4$PR%WUA7>H@)yPNIJ~Q`uceLATGjQX? z{-G|@5%1W2>d0jew=Bzl!A&LlJBL!=<kRwJPdao2<Oa)y!AY}Yz+W^Aaxsvj5yoyi zNANz|379#j#7?rJ(_w6yJ)AE_>p58rZDq5A3k^;g;ZAz&ck5m6aG_NUUpUH}YeLM} z8^EG-><}L9KU9xBPVAMDL@~Z{*XE5}oej<!l&L-orVLGE6%yItI6}5K_N~qbc-5aX zshcRSLmQt#nZMXMcl0%|K9O0lU}c^Un2BDO?UL&KJp=|yhUOI2A+2MaexnQ2U|{)T z9Wgms2sW>+D?u*nu^*Q`KT0bGSw%+d#SNa*XsAbL!lbjaIoLQ&><pm{Xt46PtVVmx z(#|0H3?=;pCfV?O`TXzUnm9sLSAzRn_puG^9=XzV<roXlJ|h;Kst9{SB2T#=Vl7Ts zPX#r+I}U{DIQtEwfH<5K88-zvHV)QYJnH85RZ$NFKwn~!xZa~76n)oa9DJ2Ftz{1k ziN<>!=2<w#Ke1>XJ33*|Ccq7Lg)0eUN87Bk`S6+w<^zAelPOs^wEsFvh@zLw^VWjM zVkVS5!}gN;@3Cj+rWFh?KVZq4Yo|TEVFHa^0D*21;bgoZR%UZPz=gK*tf-;Y=W#Wk z2g4=S--2qhIep=7x@LK}m~ScJI}s1)LV02>#z&}n2h2xpTf97<Q9H|-T->Ep>`nEg zp?%1soV3h-DDO7M?~=;qSv(Z*@DhqwxPi=K1)e?<TTEF;^ziES;WM54Hkn+_zi$s= zOW{hyubruQs%#!W^Y*4)oZ_-NBrV0=4T?Mz+4hxuRgf^Vk+j?6lqI)>+dNOWTHXng zH@}I);w{PS%(!aHbq;LBo^McWm@;cs=4q2Eb@9svI&x+q&PIei2RHMC?~o>Xk9W<n zcGR0e`2Z7}H=o_15cDcz!5+4FCRbO@UWEbu#LY0gB=Z5;*Czv>z-!teUz0W^(Y%PN z+Tg!{N`EdB+*4GllIUgg42eaA8)WoG45tOB>mJU}-=|^E9`W+JjG|d;RXiRvEnXaO z_WU5t<;{VNGlPOUL-OBM9AVyT=;o<ilWsX_l^!-3#X#AuOqDJ%A=xcK)PefO@iD!R z?+O;q$=^qqQGKuy1#FTJGL-%TIaf(|{wFzv;eP_o%=FCvI|cXpUrxdQA0H^>M8-uA ztlntd&krl>{4YK*cMboa9J1e+R~Jc5yR-CdYB(j~k1guSv?GIR^=)a<<K1<3@)$MR zrwLM%mUj;J{%|@+N4KZV`!PLYqGHv&Kxfyh0ljCC>Y}o`UQcVQGV5WM%66O9hG%87 zhBk2YtAEe%R*d$~c>G2@$KqY5G_K+C^K)QvhS@uJ%hT)jdK@`<#*%-gDwop0$kAR` zFymd=?B2d12zyWkX##C>|1XY#M(&o*Pks0IZSG_%@Au=#ZI6$};``{Kt*-C;Cu~ZN zESkyleQAW+uMfRW+HsZRn)>a<_h+C2S@lRjQ9W9Pp@xABQCN|-6FX+smqF9QO7X$9 z<uR>n%6YH7zxhFWNO*DS#MAxq+5Y(wLuPF#NxQ6O%;%KK6F_6B2PxqZ6e)$t;E}DG z1J}H15`%?_MlS8hD~>Ily_LlJaDDnk!F8;VFxIEddnrbAqaSqm*AG_Z>+k{f10iwF zAO=*@EOqA9ZGNtfR?~w#GXVGEBrVEek_?IHyA}PPaJQJ5V<t2DU;M&XCK}SeY!Imh z%_iZmYnS;d*C+`{Pb?qT;-kr$d6y<q?gZs%)gi`40uQe3e*nWjbosvlh9J*7BNuf7 zk{Fai$kmMG7}hD5Li55DWOHH*!WT{i7DXvFP8Fh#=6&H6@mm*CE8;iK1QsP}t61r5 ziC$ZXOYiR3<Qe89S69(l<~iq>>}+(7q%Y?TbPgqM21i17!((AO)c?kpi!Bg83vd&6 ze@|ld?_0~=6pQOOO0(0dRwz65fsz>o3j|P_*~GF`ds{!ynVxp2HEO{9c{$Z`C#i0j zY)i(|d!RNl_un9=p>(m>gh~ju+AZ_oCAjsLAx6_0ATkmk!DHXRs4#=&(L>y*qG8hv z>+7kn?~&C{&Z$y0EF^-&p&zw+N}?n{)B&Zj34&<PR}8qs(h4Kh{m+6c5)L+#5nYE% z{L7Q1!)X~(M9*2+tqj52&n!}+i4r<2gA1^YBI%7ggWcouBgZ41KB1XHM;0StyC;zk zsR>En(C=2v>Z9rmh|I9xg6mNMFrnX6asj<2bL=s|?cH&s9%V7D#Exu+Jp~2=s`HIX zf(RHd_oIR!Cri(SLfa0U2AG7iBFflBf%nwV&Lx#c@#||r#k@P+>CtZ{NKKU$`Ehs2 zz(hS#_G6;Ms^1~Q!R<|W4atD|Opw|~1t;vqNiCJmpysh0-JNYj(8H97(n6Fp?m+g= zmF53{bp+~abF2<+Bw(>S2*GCa|8WHn7FS;t@++XWBKK|AlY}gjtCC^m7q#!AT87@9 zm=w_d*OdZk?(_nH7|Mt9OFHq~HCi^N0!NWSORqM*F$SzFo7V4}2JmB@EfI`}pconK zVcM827(dS7l~Wd^4jc-fkIipQ6mfJ*RF_M8l#<Zz5SGxJP<n5tTId>if9|kC#5uYL zG31gEqxN6y^4VdQ1*Qn=B3r|+JS|h1DD(XZ4D{DCoF0HmviAO_{i6%;Y&MU(7nK*d zy&M(3$iw=IU}z#wG)G`r_Mdma6Np~@mpI-bA+|;YB!f=cKS=-Dqp^nxr@&_w3JLU* z{!*WyoM0zs?Zc*R;XEOASDq#ZD<+|-4MX?_l6y{MOrrdKV&Hh@Xv;Vsb*Y|lyQoi8 z8#`^v1en0wJc2wGNoG0sT;1w^guMZ?9l4pisHeS!{RpJ;S_t4-h@K969f^3y+!4wy zxosay))6VaD~8;KOMu#q5;8!<V5s5g!pgIB40#m(Nsebst&Vpq#EJM9`Sbgsn{lK1 zxntZ}_6{_T#E(K4aAQ07Zg5<2VB$FY0^l(konO0_lhN4N!8OvZb?lZzxJ8}xu_ZO< zY2FFMxrKYX27U{R6a_&J!A``+uuK1Cy1$~0p&E&l=m@O?^*U+aW%XEw^%{xn_|$3u z^Y9F?rkPzbFF``&ntLc~*U|Ytd_B8mhT1l*UEqZjPA&Ur4d+@WEW>G^!B9=vFEWaR z<VDL2NJePz$KKWoUPqa?iiFv*2sy9anG_QDHs#3mnTP{7Y@#4@jr)U4`*JII0<ql= zjOo-rK?ziICnxRSEs2s7bIcZ!Ls>Q&CxM6<S}3H0)S*Zv%a~lwsS@<&Q*YR|Xg5Pg ztoV-^u{ZAT?|kdztW}f2i@2tFbDi%m=mCh?;UGCq^oK;Y;GElQ%@@@QAn)Z7c$Ket z04EooZ32YXg!zchMNb^}fIL}>BuZYiHBz7;kLyO9McE)!m4yjjS0uN!C&Bt7k(}Zx z+@2PbVN4z!iU|-Lk?tQUJy|F=dEuj4E<w<-cg?sz&J-dj8kvk~vE>UOn6)z0U@I{D z_ut-Qz5L`+aaWcSTYRW8G6ck-{3~kADaueIOiK_dhx~btONmrCHKcuq<%BGqy3%+c z>4q%luy5tL)sk7S7(ayt!>!k$NWvObP^1Z1LJVtTOl?7Vk@XWPdrFh&H=pq`RHDF% z_9hY*?4XjFvgq0DjIE9XGr(Go&!R_X%Wi8SDuw0OK`WRBs_N2y^i4yx!1L%QVB9P+ zVq~GSFm8|8%G=#_b_LN_e7Q@!kP%`TZ`h=GSS2lZM+|tD@M0rdC~~1{n}$=Nco-zr z<YaVLPECGo0d%Fy3@mI!4+2!>s?;WO=Gu;zP^xvzc<=i-YEe9$Ewy=L5KM2?E^jzj z;kfSCUyCd2RXlD@M1L$8DAd1dZeqWFj*(E=VzM!U<QLjqDL<FW2lPMqy!pGP`csI0 z!9XiZ$W}+~oAydcN+O`yg|E%sVtr;Qj>&IFxXCkO-qQE^V34tp<eStTM}rs)@dA)F zg?S@Wv70+W`>R8Jo-`%lrkhviz$_}djTNthqsJK_dCt7E=0QEAJPPv{y~lq(P-Md= zy%LC*hG8SB3%My0jg6TOzYuURoNoB6Fd$XDLK2VT_ZmNk!<zNl-R&SQ^jp9r<*Rd> zc><a>mlB$RQA`Hcyt>B~H;+a%Z4b+Zqz1>J*&8m|a+(W;d+WUD6PZVB4*9GQd(*o0 zm?h)iubzqVcovPFQ56v4#55Ek$l~`=0t?*bbQ7AIQ9b13MIZeO>lh>Db9cqI9Owa( zU&pr_?#nI6&VXPfmwRb0c6m)ja^^$zS<6$nQF+N5uiXKj9JW}w6SJbXxF`$D2@r}r z+7t7{?f){ZA!1L(|M>buKWz34lRc0M;nF_OQ-)m_l~p&RDqrI0aKXw3KQMeqn@34B z*f(-cvQsw0(@>jC9irGCOUgLOHYBb0%JfHCIhD=)6({(idEBFYGtaneYx+^ElVB5f z1yk)CBbedrv_qo?xY=v1yy5VkqO0oSjAv&Vf$>&PYG>zcH4jKE4B0`69Nis9s(=ZG z#f5hWjj~4H7tL+g1e3dMV|MQDL-<^s;yIE)$8eOc?Y7HUWHp3E3HO0^rpnZxeRD+= zTh*rVug)Umr~2zQtau4T@@T%D++8L5$#q1S*$R0r`P4eb$O}?@!AB+O(M!{$cdk&S zALgpf)r|wE)vMu?PRv@PyGpb=8`aue^0At`bW=q_=E{tMP3%%hQ?|7l00__`XjG*+ z^T~3Fk3r9w7oVg22kycK1H(w2VXS@&BxenfHPhN6y-qZt@Ug4}CQJe^W+LEw5=4zz zXL}8Kcm}eNJhw+BcAbm|O=KQI71yUS6=>!qfV^>T@l6>{1Pa=kT$;WlSC2JWX<mVb zen(AZyXM7R<(|(FrI_Myhm>N+218jPfe^rAtW0MP_K{0pWS=q`fZ2|?g}g98E6WKc zuimmLMiVUF^wz*f>Y-nZW~%6K@Hy)A%Jo?@o69l5C1mpD(t=x*+7YKcNji0LLJw>W z>5-AzL;C%S{+mEF)Uytz`DQc51dhaoKy+|r^WeDC(w|S1U$(*7I@Wr{QF8y7n8d(! z^TrWvTPqkvyJ$J9Xb%Yj6Unr8|G-L4w77H0p#8(%&}IH&F;QM=zVNDT<VZP9AT!TN zi$fm$Jwk$@1jAODKQY1Io8p~bv&MakVT;wcyJ5oBBp;u?qsfr1${9CCQxu-`{u!%= zSXx3b=8*P@jFfYoSBPUxfhjQQ1~1H*?1AF8nz{Ue0B4RG$+9cP%9DU4EQ|hnM@tjQ zGs?jwjlOGop<dbTs(wnEGhnEJZMcLpY>@%d;AUAl?3o(F+kXuM5|}$-YJ^&6WVw67 z66nRkkxe%H15|g0w0x`refTs~PGoJ$#0Lc%E$86B2%=c_tv{J*6&+0C!AhbKa}^XZ ziFHjB0Ka1Z2Yo=Spgk$02?0Z4DfrBGNo+WR<lHxaM=awCCtXtjSa)v`;^__Rv59iy zlorcouWVC(y@Iw<jZ~Sx5-Q!`$wn+Cc>WHzprpoOSu5rv@(sXuvvpRuFSAH(GO|6d z%L67(RE_WN{p-_`3IpQ>Ksq3QDPZP9si9)Nt^t!30+bng;<@0GkGc6qhtw*9_MFdL zoX?X?30>T1b*1=?ah=3f=Kd&EX7WF=6%+e`GwOjvpnp;Qg(XPGC8?xQ9@mjVs9C2z zNtCcGIpZa5&4xWxBI4;IaDCd{l&dMjPr^@MQFU(u?lJCOcz(gr1?eBs+y6%YKa{;= zb7%p#r5oF}vtuVa){br4wr$(CZQHhO+fF*StLvVsKJSOq|6tXsRW;X~V~l5DUB*n% zagDuu_sMdi0yBu@rugi3`O|G=fO1W`V_P?K$70Ky6suT*)kfj)4HKN1&d>BBS{<YB zUZ2t>agt_KQ$2G}Yu2cpaYJ|h;;04E$~<lVfDKD9zz}zIB&qI|ijxynE#L*opCzq4 zD7TMjqn45FNuMc2`X<4Q9zSCd{y{k}Z<^9{BVOC+otk&B@x&A1LHMRbAIn@FJmgXC zZFWxUD>YUxpCMfcK~&-}q!m$TU3E$r`^(Mmm)fp@ixBlkmJnjb8>R~?^<QCFJJ`7q zKI7ZyfYSz)a$8S!-ZqnMm(wpS?EwmgxOAXjM!L;&jsN~idCpQMTGo8EWq!jY7RB&V zC^jv{1Vkul%g{K^S8GQnIP}65=nRH)Wl+}T@*>#;Y;0NSy0+0TyUk<CFm#ZE*yTFG z=mFq`SweMYo;r!y0y@jtSr!Sa40@uQs(C1b21r@>)&kihWE+s{0i2wc7`~s1E(27p z%tP<4F%lFeWJQQt8!SD{JXjl|99C3WM!iknwlklxmAf-mq29Bd5{Sr!?}}F{KPyIj z=DC3JA2%nhE3kT8;N|p0o9xcR^b0I~a+r(!?ft%U7e|Uc+jZzlz^T$O_f7>r7d^fV zs0_B{_T3LVR(@Z_hO5X~D7p)b6DN$s9<F>RU-J?^!@7EOg*e4^9-NBeufJa6Pl<Y? z!9}H70f_{5@Q5$iHz;vlPy2s54KOnPx7Yy-Jp<$a$SF~z`HL_dcKSsa_DLnDRJVx| zyZSC(|0U>!X7567wB`7%7O+|!@Au)|NefrXyiN!h9`G=fDw*c0+j@LBEZ*VG{C;+| zPsp){bC?>UQ4n{KE*d_YSQ+V&()s!BS(xehJiGCEyGSv!>&g0lDEVF8TSj<m@qUgk zHy@#`OyPY#zXm$a;Nf|{UIt3mRxtD(8Fc$s?t}*IDrBbLxZdbf+LMdsy`7>-X@@#U zrM9PNU)2><2VQTF7$z@RF`V)AF!<i@UA3jXw6DKA1J2ys5>9L#eXiN||M;>@;`-vi zW8~rhV&~MF_~dQTy39t_db(-Obn)o+uHw}K8W690tZOBN(?6%2%|sP!;V?R|{($jH z?{Iqq_#CDuccQ@;KP+6oiQJy}aBpVzn&Nq$7W?pcW-2@t&324=+`3m^AR#+27K5D_ zNMA6%ados0tN*)I=-U}HYH4SC;|Q>kP$#;3#ZkF!*P&8gY)jlFz>FYs7nzJ;**DB= zoTTNz-vm1Ki(%0ZQO9*AcYvE)8RF#S1`h>O4fAu41=Gy|mgR0_uIFD0kidqMeY)il zsde|w0ahg*Y&3}(L_9pftA&l3!K+6!-k*kzBc3GI<o*LL7){{g1`~=yh=;%qz(rv1 zi;n#qigUU>z#RJ(4<B~(V{q^x5%n2R>*5DPa;qj~<_^ZX!Xm&jlGr!vG|doHROmF6 zn&VYU+XqFx05q&)9u-lb<n3%BJv%}nO@-q03>_H0tjjy85&keZpG#Air~9D<7tv<` zD^0-CO<mzo`xkoEH7i2HV$>oy_(k=|Tue1A&!`%}7M22i9f>HFaNZFdX4!3QyGWG~ zh8blOivdEmH&%j%J*9P@d6RT_sKzaircWhSW1SZwktIoXBAyBC;ZmY9kGi_PF056n zk05wHa~VmX7ykOnLE9cCX%IoYys+~XfZEfIn#p;B)<}l|?F3W>u1sH`R3y~rsK>3a zu+=yRNKv@oQ+E!0n{Ky{^A!9t<)pI`Zv~Pun6nLtq=aIMikkRQF8}L3a^eF;ArfPZ z&jxB6_^H(n!lHlEsL#9c1IbovyJot!UIKv7w5PTbLzU?YoK{PJD$*h|oU`aKFU!<W zYFY)|mG?9)ep5bIF)g`vzf~S==ddlF7f>4TyBDC0Pa`><_}XJAq=4u}c0U`1jU8}M z%Bd=_66(23S72^nLpBRgUkf-DlG%S<3mIe3FMznwIt;G`<WU0XiR;nqhgHrxW2xra zr7O@7L$^Gxo{psy+F%wLkWiE~5pj^M=8&TA3yYs53XHhUm+yAc9RU~yI5a4VOVy&o z^{0DeDMf^L9(Xlpc3@>-@kdIsaVuYE>&6{a<R{y+)nW7_BN}6Ml(l~`p)$lKcal^~ zSn_Fm@P&-$R>miw#`fx`T;yw0^W5Y{!RO=cE<>iyS4icSKb_|XQ?pvSwP2zcp#<Ux zO7D5$q-FvB2afCw`_t3)<L<#FCMIVm@7@MZtdN=#<zz3mw)-e>AXfsH8R0Xl#Y7Ui zi{dd5pY2q(a90=ei8<KBJtvvl6$T`;q#@%UWF?0Gdk`6@aC5{x1sm^Pf0*;I!@Kg& zFvYivjSK`^)<%q{t4DGDJ`H~|f|B9RHiRX|^z1xNJE%25#o^-fAl2=k{TH&em=~*# z!o_2KxC03Wkj6W#Zs00na$X3Y1=h&C9Z&yx-abf6Qfgw92SAEAUjkoW2(WOv(hTJM zQ$CKsVN*Cji;#XaM-Wti=`bLsza~1lJn#tgeP`*dcwdhQuDMuvK(i1Am4oeFrhoTE z;0@%(S@s{Q#T|tSzB0EpUU+*#;4$l!R7{7zAU(l}(&B>Da4qq08Q}LSXOWryh5<w+ zV2on-`!j;w{3{?qYRq6vocxu++xZ^z>^A9?gSP~EsDD|fKwUb(?234K{^Onqe(T2m zCTPXe-^z&0WR#;c{kG0TI((R^yN)@g+vI%B@i&5#@OJwjNJVC>187%6K#TPHC}iUd z*%&c_WT-^N6bB>An)dg;{C!uxe#5M`n!DnPr_yuLU@fu|X8j$o{V$Oc%%_R)r_NWx zjN-TD<FRjF*I~jC8IKu7a4qp_<;*TN9!>)BqOypfhOlGR6s-9<om*w4*41<S8-G=7 zI?Aw$HhXuV95_>4^%o$;W!k#rrWQ>DhNKS@MDeX!PEqSh$Fgm(mvAh3*|?d_SjVhg zeC4GEdFM(6m<WOjRnonQNhce?$`g(i1PnLL9fMBV3o0sQ@SR{U0-C9^rZ`G{5|rKb z(^efd!NDKmFvpA$gedbuw`;KDz)}(Y2|Rrxy!>jWftaOiHbt-;$nLU8w9LQLcW)K6 z_gu@*1&7+Mtgx&KhD#x**>b5-B#ETu>#nSvsPpRZRjVHT$pRJi({%coCPy)`RCmSZ zM#(E1zge*OJ*dL(r~eS2^Bsna>T&?|BoN9xzmluCJfr0i<zv3Og-nH6Arz%Dk`1+Q zr6ktumKX?i+>HhkRa!lTQQ%^hj;Po$CkENl%8kX1o3|e6DkK3_w7~uxi^RQ_^Nuuj zj<iuk{*%PSWwbm7NqFG*<fDblppb(<JLuvB;HRW&0}jDuWj#)Y9?kPL4m{(&ob?!< z(lNrg(W9i-%Uv6bHq1q2$#6SW^tS(0UW#-rec8l@s*e_R(;ncyw7-@nJYf_ON5*ln zJ9Ob>@~I?w3;Qw%c18*N>v8h;6mO8&(7SK1-TegN?~1}yh8Y5bsD3mmPy~J`uOuO> z3doIU7j)oZuhq-x(#IOCG^&O+1?$mxU!zvJxoA3BN?Y23&7y6E#M&n9zSAu?bN|^` zC}!;ZhUYN$M;2oUM<j-(cJ`$4THS_dOlbde{R7cd2I&#w_2P#INB`fk<19BH4^oi& z>^fe7N$+M*!`pyE7&!D0@=ze=0CoMMzbXQfokgBSs_tt+sMy;8>d%<MTxBtRk|NLA zNfp)H!)i2@E3V+(oQtFJ8UHS((5W0EE+$v^SU)Z%DTUcd>LHqGXRo$bVc9knjV2$` z=CS(f!jrY0gXNB~(9Lc+2U!^hFf_jO&?KQ(rr?PMNK00|ozve|h=3f!%j_d)4Yh6} zS~OT^o|q}}aP;G%E9a3X4+N0*rcYUc4`ufRc^br?!p3a8!-9Q35WH@3>#h#Hw$&rU ziY~cT9mSx=B*{8B_3d$O4{ecY(}8{-nRp(OKf@VGnW-rXRMb*6nZ$V$UF0P;fZQCu z1(D%oGNDcx@iV@UcI7eqRnvnk7faf@&c2WqmK>8Al8E#gpyB*yP7?^~TF??-5INi6 zpJ-CQv_`CF+e?=zCLW*+_GwHEKKL`!SNJIh$+x8&b9J0A1H9`JrrZ^Z#j@XL$L<w5 zHJKbU!`YeubZ6HJu<BxhFjFI5zxq=T13941kwyOMdi7z=>HjgPd{A6&C#s9c?{i$8 zp9}~(s}v2}^Ei^zew7B)15rnN-i@Y=>$3_E{#+K&ol>da%+a(>FllETApu8S>lZr$ zItWkjSj9_@HzN~YwK1vXAl3HW(_`cDB&ktf@J4|x<g0ar{JZhy1p;V#dOlhzf>YZ( zFmB~vn=c4+4M*16vbY9`7KM~at(WN>H<6~2ARv@ASHNZ+m;VQ7wU9-@Zwm;!zzd7C zmZ1b9XapW5u?4JdS{bxc!l}t|x;Yq$rL%Y>vv4UGgnuJPZ?Vt}nSe36UZUhVjrdUd zV{rX7`Q(m9B!dJF_GZcj1$St3P+B%;vSG30lIfpE!NuQKa)WA@)yyFUclm@65wALm zGU)|-ED>bd(O|gFpXWnXB)j;=I7Q!x{&{Au#-7PFLs3amiKvn|ZF5K32`ssys_Xfr zaF%9j_jq<g5a3#>4v4=SaF@#K;mLu7C5kH0f}HH#RS<?KgK`Mz_jrCZ4Qp>79huKn z1f1pqqvTI`F3Q5QRR4b0X+!@|$-&X%tVjqVCFw|k$mROLg1W0&I;h)7tyx6@ArD0l zp-(Dxy=F_UFRT8?Fs|2Qqx4hlgF*l5<B;|BKh{!FxTqoZC?Ut#5@iatZj0bKO>Mp? z<7ErEW(ZF)8Z>@ED)hr_#XHBi8lx3s^iO(iSguRqFEPqo^eJdZw64&3@(%dF<$|60 zQo!6Orgo*!>zCedkW-2~21SZHZJ{A}h>eB0OF%SGUS0CQ*d%qmC8e#Yo}37vV#w9P z0M_NAg16z_@pFRaCKyxHOI(yb*TQPZnbFth`9Ke5aWn(<d?tB2gn6TphoTZ99uq~G zCj7CH|3dWdMuPShHi$5{H%ftc5IG3W$NHMD^V5f5m8sT+;Rt|BaQM5})(So&<Kfr6 zqf@+-ih)#Q1vbal6u(Ic-JICsyHC6MP@K3jJ9urpxS8uFM<oJi;4AvHYo@nDam)6G zlZJD7w(y|!O&&M>RzHFcmjZTO)H@L0ZA(i#DoiI8sxhxW?_?jJJ2@H)?)Fwc2oSC$ z7F8e)JX@*F+R#&kG~(i3LJeYHwv$Zm^FMupPgh*FM<b?*A6=J}MZNo!2yFORvD7o3 zq0>5t<5TLQM(_4!pGe)h1X8x_NEcqd6(1}4gXfr>?P*VdwF4y=B`)T2+<nu{KKC!9 zhC?_P)?VHtOfxBAejuB5c03B|0)T{9)Fhm`b!lc-B{(;|3Fk1<AGC-(*%sB=s-0L& z`I)zCNU(a?ntq>Fv;U!MnuuK(HpbMG4V&59=~?(-q2WdeeU2@^20{GW_v&i9XI>@D z7I+RNWSfAEiuW@VO__~)C$Gk%Xt?YwXOsD<$w6=Pk@qy@tGh|0tKbJhYlFNVj9K7{ zNylriqgk;22$>T5Gg%sSBqdY({Krhp$zf-d{SfuWc7vgTbmOd%2h-HdOo}H4t|wFC zOYRnJ7(+ukg*^6op|B;p5Va}U@@oE5p51I#<M1~E+bD_Aw(mKU$0+tfi0<vu-G1$l zZn0dO*mOx06wrVG7$kb=Tk5i=&ev`as!nY-^Rg*noZT!dHvoL1FlE&e8CAI^FlhrX z$9XfWZ;@6orwa{udKLF~L);n$)0xaWp0$Im>w;O~RL3EcG`a3X{kajFuo=leS%Ee; z-gYXSI_}I<T)=e~ZfZ;8eEuIkY&@H`^WkoAjE$eJL8ZjjLl}?M0L?Mz*+D}f*>-4W zQ=Ar$(D4qlv0JO%>38rmU`n2Hg!gvEFm(z8lfm{i52BhmdkJbXxeI{}d2MpfZzYPP ze<$MG`|X^y#a{C>4@^U|e$-Nsn0OVgpoAi}vuZIlgwV9ONNPQ}rW1$k39k89I{X}` zRbTD&jr!@M)XD_ldFDMRj@TjP9)!lT4a7>7`8fNXGHyy|Y?7jAK3)9gFHgYql<((- z|6r#b#K{jmKqj<!0PLnRXsiAE_Ik95{nDzuU}o5sV))#1-dxv=QX+=2p{3;y%DUO` zzrH)Cl&KbK_%Is6rT4PY!c3BRj(-!<TFVA0j1AfRNb^-W(@-K_%>fHrUgK4CNT$G7 zfcA2wiQYpc8en1)b4|_2SE>sh5(#~n4|_~-AbNeQMT2IBW_GQkzGtP%ZAWEF&Qgn& zxPFmm^aCi3%oq`DW07;Wse7igsjXDUZ6ET^f0<^k!@8apnaE#sLD$K|#Li%fK+{YR zoKO~V+s7}A?cG;H#;ckGL&c2K)nR)qHcoY!fZMi2abvolggEeK%vuQ)dtXqb{7Q-S zoF2E8OrOq{In9G3=vOFDB-8NV>#rvX<w41uKJwnJP(QYt5|N+BywyzRH(j>OwKAWN zvjL>eS+5Dd<GDG7CTKSS>>Soc8y&y=9cQ42!epdkd)3E<oND<6J|Q;KG)6u*)wL>- z1@tb*b0Q}+*jhU6I|?v`r@$TXl9*LgI+r|HzXoaTC(yfj9l}44VN5{c{EMXX8sZp) zG!}ozoUo9*u#OZgaQ)5v6+qkuvt|Lm3um50xhNFD>|R-558&VT7Aa}sdK*934rw9F z-8Ot>_!-Z?s|bUHw$phAH(FUVKzBOwwA&;@veawc<APZraJtC_pW3x@gfufG9y20b z{?+c39r<1p_L6zO0wL<WHH+>80NTz!u{SQm=xa0d+yva(%1`Ka`qqNI;~^`lL^%B> zDVn<CqWrym#3e2|ec>>%JS|qd`UI@OFa;b~8>t6lyHav)iw;{WT0jP&P2~q)QeR&S z_QW|MI34WLe70=sc7`;}Z-&nF_)93dExWAkZd}iF_UuvQMvy(pUT##3d3=j*y-q6@ z#TD#+{+WZeNt4Xo{oa+>){PO>AO1azRG<HSjYoz7r07j)>+o7DFy*=EqDOj1D9PJw z+5vrjrzH+8#Pg~Np^Jm3(tzx)knGlf45wChJ~C`kvCRb~R{XAEa5mLNFQS^RH!vfe z`@U$1pw;nIM1gX=sS$>)H+dDuT<d{ejBPN9&Q1=-oJOY*A|biUL!KWV$xzQY^y-5( zwxfN0P5(amjsCXA@a@%aBROko_Xo)|8hau~gB-GJCKIB(SVlT?f+u>A4bpJTP6=y! zffZcL@N%rO=Fn29n-hIsKtq>nNFV{b--czREj*)G2NK43Ui=*X32za-4ttNZ<^6`I zc$OUdj~BlGo`quie*ue-v><k^s2mQBh}-GF=mA&}^ZCNppZuNev#tUYjy(+U*|`Bt zAz`AbkYFN?^enwDH)O<!<i;yY#z$-Nbd!6nP_FqkkKs4s`~2MBpH)nV&{?V8rw2e< zyFGp7AHjAVc4Aq1YFlboIVscCY*W|pDvuwcZ}0W6zM6XOM^re4$pHE61r&M8kB{A; zt4uL`9y_FHdp?|3OrY2FE^*qTFO(}ae)nd5D^gg!STstpH@IhYX=iG5LC?|3*wFf@ zZGYb99EI$BzfHvOa?^<YIK8d7@P0l%9IbHrFPOh=2+{p?o3@;rMm3FNjb2TC_EyiC zT=mB5G^z<q5(-fgRsUT@X%x4fGglHGIhFkT5K}Vo_`iXL5A=19j&0f9?%YM*T_X!m zj$|ulXLeg|f;74o?k@WF+PeGp#+Kip=?B5iir02b5BHAjJ};hrV)`D#f5N8p@ts_% zDa9{Gjy|T$ln;jd4u4YUhiYhR^zeDw4;^OdIl3;reSkkcpYxT$1r}-rnm%9hug-rP zL1)ma5J@~I$2jT?JI!|`w~rc4d&>WJBPi)^hk~||5jw8Qs+H~7{IE)f-UWxq<o}6U z6?fBYH_Yi9RVFGMCH<xJ^BDcVkcGcGjB62K6t&c(Hd(Q-HG91sOZ_jiP=&Z>C9NuM z?_zLylEEzcU#433HRi^lD=vG6Td|Y1f2LdZ8x|=$q`mRm86%|qu`ANy;4R5$m<|FC zDEpb$p_%+g8Seb`&mCXAtJdT%kk<-i0U^0U&cYe)dRNPze?*Br@GQ|_I5ilf!2VBL ztFO*glni1s1u?~1Wm7YT7^DN2Wc@6Y`bVl|px6luM~<U%=myTiwtJzZA?lp_UsZsy zr}BsN)E`GhdatJb)~aQwwTSZx3bvZqBtAs*`Q`OU&wWFL2)#SYU1<zP?GRCKGo*E6 z!vqvk6G8m0J}~Owe)If^an%!1`8l#WvkJDE8tJ~izGjhScueh--A@cVi$G+Kqssm2 zD3(8lf}qi>r_@N8;Q+;jmr=@pKsZVTt{K4uW54^;4SYp`K2?RO=e-nN;nn93@%Zy+ zCmfxF$nPBQD*Wo{&&Smn*e-RBY6(QZfs+i!vopby=&`tjd-)YbbH)Bz(u5-}0)stL z2SvFlC*b8HgTSt}*6NZ7A~)QlAO}WNkp<KTJt91Csgj*wIs?HGN(F1RfSF2rB(<VZ zk_K{{5cGj&8Vu0G4vNh2J|-si@l03Q!X01{YBG5?fbba#`5`c@4S^6V(L;vyZ^&w9 zNi$@a3VP5QmFO+ZqNj%TnI|GQlAq-1n(BRiJ7Vr&nZzi{u&05QvdqZByDbA1+ritd z1<ud#B_0r=4f}CGQf8|C67`AXMWu_(h{4SI1d0Kl)<^eWJrkD}jBx({h*eL-{0Hsu z8u1bn&+v(3ij>j8XlbMxP{zA)wy;_Br&K!o(gbx`UGnR@FzDyj%uaqWc~)<e%G64o zW%4%Q-JbBxE-(>vFhUR_c;3J=r>Y}39IE>j5RZG<sDpv`WTf>l4rFZ+0#IpLQC9EI zym73l6}NxlkIAH&Wr*@=^kNVcMf|;l-h+A9zmI($1CIrtw(lsLF;%O;L#t+C+6UZb zo|%WuvZkyiEqjrTa!qj96blbj{(G04nc<6uZd#+l5?s*^WfQM?lI87K<7g_P#BdP7 zY`Vtr)j%*pOXwXi+-2Bo$wH)bSf_|uEDH9(RqA|bWf3Urh8QaUwUJQ-!$NCMc}7rv zr7n;U&xTY$P@TUR$e?7zf5Z8iwPgt^MX$ZXz^bfvTb9?8j~jb1aPz&!A$UESuS!Uy zlef^DV2wFp(!#q9*Sgb;IkTod&^B2W8_TLF?t3U?oYBNWruwv1XPU;s@{G&4a=>qL zy+F*yDCjk+{LsL8Iz$6j?`CIzJ+U(DpWlWiF+_lAbjdrFvdh%YOT$C!uhI?sj1}cg z4-jMLGZivBa2RM#0nnypDXqw&b_VSRN)R-G{zdJro(`p0vIMsteFMh7e%CxhHtNMj z&6n91(KUz22qYXrrYYM9$?PbzEHp1PZMw;bO=~QnQAnj2$TCi~DEa7zwz+W;K*RDW zVGSc4L4TGB<W-lL%1DI8>u2kQ5-#@B2CgIX#v#Uvq1HdIXeJXK`Yl50!0_Gvq9@`N zi)J%KX60?_$*OiuHfz|+rN0?HUs=$aLrxlSH7JwE#A0ampAO8V39KwZT?4OK&4zNK ztY&Co(|f+Pu)Xc(01$$KT$3ATSwD8aOYz<!VG1QTB0a~^(u}I)CX$xK)#jH?#uVv4 z>)2&uSeqiy*EBH<@uOTq8OPqDs5TUyypXQGl*-Inc_}ExZwao5<XHX*@NbH44&!ZJ z-bXDWWa8<VU6W?&6g{f2o4HEy#SV*`AnEcP!k&H~Ru={v+i09N{1Oapn8Oe9%t}4F zpPP4t3_g<CJu*<FQ^)DdMzl`zl(2DsUL-p#>Lj+2ERlIao*~pTUiFU%JK;UI#Pv*H zX0dV!f0zEsQr`(uoE)@p_FOmZXu;D*6pC+@KRTLoBTWe44)Egl=3BlX(aoz@<!D~K z97q5FBTIsF`SWEQl-2ePmHABgP@s@gUuMwLEQLvYT2r}u*F#sOuf^Hv3+|<+<X$>e zDbvgaj5;{=H4`l6``2p@2jQFao3JdHEAD@Co8Rd$V)i*n7NF4zQ|3Z5&D|OAqd4w$ zB==}261n)C&=ReC1p$tKgV6qHNz)`mdvReU9H2P~f9XZ;Mx-;7sn9g5RFO;jTwb?L ztGwiLE9PBa4%d~fXxnArtd8`(2Ksj;(GEhCRe4LG$$$s{l~pZQY+QZ$rrL&~o@{ir zGy&M6Br#0;jmydGs7Gw?e<-!ezMn0Z!>}B%HPGyECzOEmm4;E?pmU?(ximL1A^H-r zS%&$RbV*r&a4};-5^(OFCD*Zh?d*BwTKnR-fiv6cY8!W>pF=?yfKal?l{Cz?+OUn^ z>~9(EtMtuOi=N*ExCmCToK-#MQp~xV9mUjnZ+y*i0$l;CFB<+^;Ao&ZVd>=qFaY0h zZzkYjy;e{Nz^nv_^6iTrrY9LqSXD02bZOS&tYybE*hAoLcC9NQ0A<x`{_9eLLP8dQ z4ohe)d<|nu1+bV9@|-%wxaU0So#K_`dk20aL7J=ZXC^Q2EW+sMV+UO#{-wTVV_T1j zK!D^GFUG%p4O5lCvUjdU^mm<yn+3+}*l#p|#zfX8wiTt>CXuQ&Dy<y_!FO~O6i#zh zQ(czs@<Ro#UtsJ*6gAuZS7xBjq<+e)!`g&Z?1v9zXjvuk^DG*m-J6T+tD*<pc4g}f zey{>88ayD2BfpQ5)Pl@5M>@!m39*X;u>~(JIC;O}!Up?|r7!{L?^`E|QYuSq&OmP3 zF*avTmpNE1_ds3Nrxi=JK^D=EtEL0x?)z@3Y`cl1+R>27;%cbI0cf&MJnbvUws7kV z9vy$4fd({0iQ#`L&TT20JJn0wTQ<J963Esw0A<<N66`@}B*A*O*G(K`2(VcqvT1PS zf)549H#19c5I^B3Zy_SbdQd4X+juAEJii_pV_WV_{$jza603+)#ewAB&2B{e*9oG9 zavk=KYw^aCq-D9i#V#=alp)gUaY}nhqHiO%=7Vu$3lOhh&z-+1f5Yj9$$o?ZpBhjF z<#`c`08mbi_;p8Pw9{!k(FO1(=V_;_Q^w*Ap5$S49Ee*c#VtV7W9+B2^Cj_{<eulU z<Z!Iv`!S}`W)KAD?)@z=9~b87_(aa_rp(LKtzgL<_s34A^_`#~k{dP93c-%o(4ev` z6^JD;0}9w*_BbT~G;*v4QnVe>?>uuRV*~9yMwmDR3$CxDr4rP#x{1y%9LmI*-W4QC z+7^#5l7$1ewB_{BXv4!u*;UeCxk^ZNEz_UR20c%l@%$q&Wi%lnE4n~ng}5?dCm5Xp z9cBCyi?VjJP}x&%wjtZ%9Z;^#Y7K7c7E4;x)d$qaR!Q){UwjH>M(tlv^3FVxEz7`A zRqI&@7i^9XnZPRIP56(mvu}la(=iRew=OdIa;JWkvoW&MHN?s7?oqH53J2L=yL=a4 zI(A|mDU(iry74%HD7csN1XwWqXv*zrTHmMLX}aF%GkQxGA~rm1Db`f%ddd-D_~Fli za33IxHt_t7(2ZbPejV^>tBZXMWOHTmrNgOaBv*J^FVJ4=rGpu`iS3$B_zLe=@~_;^ zmrR9id(XGrPGIZH_tF;iPCW84&$FnA9<jx0H4Qi_3p{JJF1+=vuD=Tn`P((`KL$G< z(?i`B)UJcwxYe=y&&D+a9%$CAkg0Dm-uCXOW(jA0_Zl1YDJF~<w9~iK!P9Rq&)G$c z20e5m$0J=$?r}Da-SNrGl@){>PwR0w4@heRoFz>L+(5-a_0C9{aj7770qp0NNnq(h zn%#p^eO@x_aKE{4L$t%-RPY9c3J(n$mmh$7Ld5hHF}udbrMyJdhhdXxR9321p(8Js zftDN9uwYhijguuh4EmoZD6dwHCr=x07rWfK8t5(V^{aR#v=b}7l6Gs(6oIF8gwCt| z?SMK<nXjw&hGlW937sg15o{}cv#O5rI<?2SYHWJ6C{#BQ#*MP7)@Nt?O<Jty3hWK` z>*A>ndvkP-b2A6t^OS~w5avW%4djz{?vt35Df7E6qJK5u>eiGUZjve=PSzr#z=!vt zlVb%N>hT<J@QY%+DmxQJ!wYX{2W^GL4{l-cunb@L5G<0V|6v1VVPyX=kBOq2tr4A! zzPW;<6`eEz13f*Ru$jGsBLO=rJDsGFwTYuC0RtNg{r|{+vX!nOqalJYvhzUkT<3M_ zev<-4$Rai-K_vtWZ$*qpUWcS;PHaGOfAx{!5Xqhz<tYi#^zJ{x<6!J!^6j8y*~pJ+ zR1igJ_$FB{{B|f|`wzuP0yUrV1UZmt9F;CmX?tQ~nj+`O>O{$Q4^)sZv-3JX9-SaQ z98zu0C`oln7&uNax`k3@?@oJ(#NsWtGLA+NzC^5_)<WX~@!Cx{A!!HURPqJPM>FvX zl*BE-m)zq)?)8v_aN^t#oFe?tcXsm*RC|IOAKsp(67f|%kQ9t$h2W-tpL!$2UREtz zxF+*pRThvkA`xQ_<=kI9zu`KnQu8z#7g{miL68}%sxwZu%ri(oD$rOJy*rTH+aPMv zLRPfe{xdaJQ{si0%BJ%a>&aa~Fphk#L1B3mjB<ivE!`zGvLtoF$$c6R+Sz$OCI$E( z=@IgNUhK*R0dbAuo<L_!{-tWHiiCdDz9Ri99Ms1PCm(y>iV`4Hb%4B>tkSexI8@$v zwXgE&Br-prXeshIP&SE-8e<}k5$vH7aYwnf(83x{uJFQMuCeU08tNT^&~mAgo{YD| zFgf+|7__YZwIPlz%EBK5RI=XVF@l<KLk2!ZOQdpNWk9`s{(2nLL(HU1WS+<r9H;<$ zO1D11O<Df{kXCsF9ForPf;|jTS&9Lmpib%zbQ{qk4fKb?aB}jRdVWM%;k$n?%;lH9 zn2O5mp~DGOvZ+Aj<v3bicDA{HYL+~tC$^*BrKG%n4rG+N;9AXW#Z;KtI=WkB$<A+Y zp)YlnJkXwoEcoyKekZx+l>a^T#P*QnsDrkxV5*2TbQ!aV0sWr2oW`~SXm$V<7^*TM zO*JD%Tmz%&^T@D<(B;UxuluBuSVQXLU!&Ycs|aYd4&^`=2-!&c^lb2auy$+Dq}%|0 zxYGA#*P@;&Q2}wo@x><-d04yO)wL(t+kWivwaix%L81s%<PKv+z;|yi^>^XJ#|vL< za9KF|7~5D8NjNy0x-SfPJA8dOa=d?jJaD`ZXDMzVtq=w(5q-6CXX(+-91|w78kOmh z=FQCM&fMutsTstQg83te&Q*|@zA$!(x)B1X(=npI%td}FC>4!<@?&XaU;y1bc<<`y z676RaPp}ewY1xNV>gOd|YmVtTDuXeP)IO%D12P)BlTl8C8DdyT3TK^gQ@;}Qc_gr$ z?Aw%tPu3h?#uh>xXmv2dpRo8Y%YV5sEFHN*Qa|@e<;e+cE#@;5s3Nv<I3%*m@(S)c zH1!Nq<9dcw(*pIU8dY9<!W-5(wh%V$?QInwHw%o=47b!d>R%l^`vAG1=mu+rGeavK znI;5>VmX$|*x^+tpHtKE3+<`o7i&7c3+p1EVpZpg^qat&-=l~*_LNNMY;b!-d*<zY z^gn?&t@c8&BE_X3`TDSlJvXoABt{!%UNcSiYE#nm=7ra;hvR>a!r!9akU7cL6c`mn zWvk6TzwQ9}LG^;IVQ;)EiYl(|iV|53OLwTN$!s^Mvj@1h!v*!y6|H5z`TU|c!XHX) z<MYP$xLE6pcS6oC$RM<%UeVtV=$*-SdHOnPYgS%vrKR9SrFJ3kT>Orovl993Hp6H~ zOHO#8Gpt@|tqojhui&dDsVvy(aaw&GzG)G4??aJuA<Jf&XpSvjob!}*6*Maik#E8w zCo8KB*smuG0Xw5^X_jV__gvw?MDT_*?xG{YLcJ#gpH|ugzvisJ+PjlWi?$?UZRzpY z(!Gr<XQsMaCBen~-q@S#Mg;jPJIb{EEUWO?uJyz0Z-z^h&JIWUiN$`YH`o#KTo*QI zk+2GJRC&51=TQNEo>NVCCLNC?dWH9bsEu185M{@=#ah?>#M`Bf5UN{q;7D9QZmkh{ z2~CkdRT9XcYo)O`rVHzrTmI4M2_^CXf*q|fXY_CsY1mcT^xIfULl96zUv>=2KS>;| zQ<*a}5e91?4ov?#&^awu9Zf_pRxhGg_wl&FlmQd$Z<8Epbd{0@czik@9d9g1FY#-s zQ>KMY*mp*FFWOVyUbN9w+;Po+rfH6h3rpI@nAw;RfSGC)w2EaH{Kv>ND>7tu9o4}m zkHpBK8$+zc#gnJY)>7;Wsi$CTfB4U7^&k+^<Z5nLVvKSSeWvIsuLi)94bgbuBz8O> zpG0Ri>jK3#$+>3xRDIt6aENYsZFb$|Y)V)r)3cKfQ%oThk6DL(VS_%GXPDNJ6}JY7 zDHQC#VLhKi%xyZw5<)?GWH`!P>9-;7smn|}O{sco6tQ;iRB|CnZ<x$<07c{ZAlpU~ zehZXX07iQRvh0#$_5!s?s`fdMF4y<R?krGpoC6fYtkVzr#Ajba8e49za?f(T{P8Gu z+x2E;zb!<DYDzwS0h`ghu-V5{*<!7N10q*xSZ5M<7&d)N@kPu2s3`QFcblMN)lK3& zn)|FI{&}lC{y}Fzy~6$vGx{$R^MB3g|1*bK7@67rM{{^ebE5jNHEwICW_EZY@hx5u zGXUsa2@ES$D8^#t^w)ROan+Zo_d@;o;UG=#PefY8c+tL24~3pq296o&f&(@I%L{M) z`W3Mt6Qg5&JHQ-dmu8$2lKA_UC2+KPyFZOzUt4~#y}yrQd_Ep@v_o*bSwCN5cz=#+ z=zM<BS*+62usybXA9p%EK6loyGw8gZGZ8WcI{Kk=L%!fV&*((O8eaC(G6C=hos|yS zY}<^(?8j>znP4}<=%4k4wZY#b7ZNX;oP4bIG6Ev=7ZX?41uY!~JJqJ`TUujP8SPmu zJqKX1OWYfXYcjKPYskw#{i#>}&IOus3k&z}_CISM$c{K0$jf$>CLUBBANfQh-&~)H zEbCEvNLR@+rw6xJ6ECwdW@2vYCh$cM1J^I`vopM1tqlBgT#vJ`KdyInk`Xy3+Sr{T z)iM+521ruF1$}R9MJ({%SX=eOMsR)bOx<LxZA(Labi|L&((LjhBdz~dzS?)Aj51Gt zEpKZI+lVtmr258_i6ZD(@U;J5o-+zVPYp*nb%a8&$MELU_JaJ}v<Rq)#A$GwBVXOz z&7`25GzHjMvFUN!y<Xkl23L)H2&chFU*_IQW_5T(Lqbi4smZ~>P{u(<WnwHkj(e<z z4wu*?oKx5t#3l0bbjX*6n6s^g*-5{rB4qJ{*V5f*h1f@D(ZfGsO2QX(a)9P_&Im&k zO2YS_fj#*nia@A69e+a?^z4#R<|j;7333YO15^mkJeQ&QBao6-!sZ>IL7%2+>;=Yg ztGrcSd0&+6-UZG<J=_Jk&i%P4=;sH=5m!hk!Qn7QNn~iPY!8DV%t9kr3O#`}Ey3zk zDh?~dOXu`Lx<5!5X<(v*|CAi@etI&1M2beOM2ON5YRjlT2K*)3T$DgN0N$@m4&tF} zg2*&Yz^MOqf#fip#a!LEm#JIj7KlE!aA-suC@x$Vn~VwE@BL4e%wF!gub(W0AGZ^z z(|5q!({17e6(s~EB&;&b8qyGDBw_(($B*sv-QNxO_$~})xC`b6xk1GDXcZ4S5|alg zQHE(dr#6u=8nb!dUh{PthLwesmz_FiIj$Jfa4@aH-(ftoHFOrzrf)(DgDLJ_a<32i zeUwvTnhHeFj{grHuz*Z2@%#xf66l~UeM<hLHJF<MfY+ML>p7Wi^8O1P$sYVgS4m(O z`pfNZ_IAcUe*+=!THmO!Me5nK{lFHDiBwN*f^m9&_uc38&H&1Pas(r3^8+s|C6JDN zY0W!2I_o9tEgNz-^7C7+L1}*6v2d1!h19}cSaB<@%pq-L4AHX85J8YKGRio45N^Tx zC)R|3a(>AS0%qz+8y7S++B)l;G=5hwG+s1PS1wRq8bTk=oafve>le%^QifMq${5_> zfA5}{n}{sVE>?Y1Xt_()756(5Kwd|Bh~!#xKFvA2Htx?fGGu+;_KsR^h;b*OxJ3s- za&nK-{Wxj=_5q5t;;Xjf^LXNP|G>Wv(A}kMf8FkFq}cFq?cLD*@uTw<k+fr%L|S%H z=r_CtvR!}G*xu3~?__*H|BlUC;3oSu9v-{F_qcH%al8Ek`E_)N@4=~%C`lmwfYcO0 zOR1Jl&LH;mpRBwd-k|2#GC6B?Lq`=#8-HJUz_>D|<SamxME|PH8IcIJ(G<e8LOx); zQ=egPdkyS7T>6O;snH5#@h{qFUeFYG$+v@SC7<!AvH$KPi7{2WY*DXgmkTdi`y|Rh z=Ao`9Y7);|kgqN0<>$9I7GB(j$<UH2W}C>t@kOcJ2m9Q#%Nx7roaE?Qn@dRR@XN%B zz~su4pDfa&=VK*K=6A>EqZ#8s$R%|YwbxNilg)6F<w*Md+;k4#aBL8y<d}$$)Bh-N zw?@)6Gq7sBp=e);d|!69=Rc~PWCR?{u!oGZHV}{Ij|aqi4A09gf)=MvcrQxlDURT& zd$35Wb1v;usd|j=Q=Z0*Vw-oXvEd3dbsM@bt$98nsZ?|{_p_TQ=36+W<u4aTk85P! z8mPGb9Ze$>L|Ww#maK&auhM&S(wd^)D?7zm3g9n(yj%)MP&g(g^<GVYlNoxYWseYe zN3k!s4;})2mA>ENCpn*(UcL2AkkBuR0@}7*Zp?a?Y47$-&iaVs;jWjJVk0dg-)pP| zO)J0kN1>33+d2rh4gU_46Eu)0{9_Mm4?9jNgLY%wbBGyn;9BETV%yl+vZC81?gJJh zck))xL$^t#23XZ}unR0Ec@gRfi5e{aPnAE7$zI*j9c4!j_FA~^^_xO2XcIkouV&Cy zNs|`#Q_jrNbDKOVQp}*)UQCGMH!@zb<amI@PSf01HmbpO*5mCW;8kiL`{E|z21J1> z;M2Pzh(Vrz%-r3K82!FDG-lHDMSpHGS<sFFv$f6@dJ4imz*1Um)-5=b>&!>z*P-Jj zkbVC_n4J)zQSA;t_|2&+AT`0FCiII9P4We>y}R)N$n^*B1|4r@Ou+vpjPb$oMa-2Z z8$AjB0p)nmnpz<x<WbolJLdD_&a<uD&N?;=j^Wt)7gH8Mnk*{!MBC)tr3i;F`#Nw@ z1jr}Ln-R$9K#3!U+eB|Kp-X2VsSROGz=JF7a#M4re!w;$F1=m(SIoLIsu}>z#JBBD zGzArTX)Y5RwU(Zbuopx6_1U>09FPUtwjSAR(RPea-EgO4NccD&G*sibVKTbn!`PO_ z#zk@YWZJ0mhPks&&eXDS00=(#Nt(o?76beRc(NP~X1^Ow4<}I)sg#X~yIRihuGSn6 ztrx^18LO`!xJ_Z(#>yz3*{Vn1O}cSy9#M*fdK(C15E<_p^r<;oBTEW%!8i{(e=DiY z>QB_cklq9B&Y7W{X)S;m3ycJ)(=A?{F%-1{#|2%3MQN;w#s!@sSMztGUkp7c#&MUU zd85I3d9rYtXuEIRjVLCGo}i)`%V;A-aFTq{Yx^UP=(^vxe$Ea3egYa42AVFV{Nn)x zDx2<mKjXWh7w+I4*H*7x8@eF5%S_m`zlm7%3z}v%rL8QDYaFwH8BO-fyvwk!7AQd1 zL|m|_lv$yxY7r2JmH&5cELm`%x(kn5EvArK@*(I^f}F<eFDy>h3IdF9yt}qC^vb@1 zLgCBwK1ph!tRgKLQ<WJ_J!$s1d-!j%8AvU>=m9;Sn9dRv=B8qNgp{_vO~y$1T?2w! z3!Fe3KzFR4N4=4wYf^1!(@kTMW>t5A*jE!*^9z)%UeEe|UgRuliS^hcgp;x#bt#Kx z)^hiw5yyu>_pMkMYck6$zT>mv^<0X<N6=$z&qg_WPjUZL=NHq9vMX9h@tVQQip}qT zMws&CWgW1V$}0wm%m=@jN%AondHYy3pGO9snZLR1q7&`Vlr!r9@wGBQ1-q8%Juz#7 z^n!?`eG}yn0BK}#E7sy&dG#$I1WQ9HpojREq|y_MD)e)as<hmyMZzfD^F^E{zVNo> zztfxknq@KRbCPL@MMaec=!K*6ykZ)v9u;2l_lg@dfN$-oAgy;q#u4uoY}W%Elo^6= z4{PFT-)msTRpN-k(Y<+2G^_k7x30Po{jNh~bBiH7s%aYAfH%Z?3e{=9HGR7ZmIG*H zbK=x5->MqK3~$|l<jg#XZXU=}bot)pOFh)OUYZYTq%wqN;)I=g(ekQeiFgAc#2-k2 zo}JoRvKr7cxf3Z&PK5zIV`d|i-oP9i1xL%eXg8ru4w!CK)kwEj14^A_Wd`$(`J#5Y zURyBWbFLTI_ZAqx#EQWv7{q?#k1(mkmZ3kT7=?v)hyJZecd%$%wpg2p>Wl0bqE_nK z#-5?z=1DcT6UBuxd3eYi;mMIxx3q+$QZ~qGC)Hf<aLapa_4^5^DT&N3&^BXYW%I^= zjcP8@8f@F997fluKkKq+-Kw?gN{z~QtOS!Jp>A1WQHdd;M6_bv4B^WnA7fvhaFrZ4 zfT?a)GNV;hFgL_0>`1YPoT6x4b0HNw{FH~ibfrB?e4D8*lcr6@7%r3RSzw~X6p;@! zCgOqWbsg)w(Rk6isxY)un5njF;x22MR<2{SFIncI9qDR)*&A=sAelQ=DHi%w$WLVl z9^4dnR2#ETKuy#6WMFzD&J$Ub{V%f6<c&M+SG&knD!9wN#dcf4oDkq<y8(P$a`$qk zFqAJ_rA!sMqb)H5s;w(P9G$Xw3wSC`_-i`75Fd%4l^aiT4U&yO+H=geo1ooI_kEjb zeVgGl`DU5QpY^J4H*4J+-0M2pAMk1%;<*Z%46|g8zhLrU3JJj{AHpnU3<Ty_B4AyZ zZ>;t2LPr#&sHa^$lT`~brAS2CTdo6mbb_>14U^<WT|&;az1l2}2)K3T3aU-1jHK^} zpi>;nFJo`t&Ns>m9)FI;1@OO$UomtUPDh4mC-jbDtm1f%83Vv6LzKG_N)qN?(zTS$ z;%YzVyX+5Su7Kij38Jj$Q|A2ig}_SWRuAipWL)ck{7cG=#V=Bcc2})MVhM6m>eVE4 zfXPYSu}>+HuJ7xK9u~fVqF1?VAU)gEzf|6q&^Do#N4fejvBf?EFKO?xbU&n&`zN$3 zHvwx9l*4I-yVRW}COanFEviS?B(y2ou<dZn)<>{U@q~U1kEFK}%GCHL=n7T|P>S*{ zQ&*fAeax$BpYd%?<Sow@<B2&)?R0aUbwV?zw41^OYFEV|xT}YCvQ~8A!w{ry1l(Hs zW1(W{H|97GyZK2ySDu#|Urnr&gM747Q0)PV`b?Fis+q*D4I7x(oz%jLeesl@4U2(w zDiJ(2{=l>uG!RvPv)OADoTgV#Q1_yovV-co5y&I3Z0vIF&<V_-0%`E!|J+?o3}=js z|2b1f3f&)wO}yMs&R)|7J%<(s*GZ5ih-E{TjTHD^-&vvZzeiFKQn<5IB!_PYI(v5) zTwNbpM_6o0rl@YQAxUslNSJKi;A>IX@UJQyx3a1V^-C<p#rrMAPUN)m(jKOF*&*2} z$|R2>nr{yB7m~-eQkz|lZtwnpq(woFntVv!&EJJAva@Uf4;+3f`B&Mc!}_aVCcC(R z%A|plE+<XbUc10`?E^=Z7Bt-gB#w6v8pR3)a7ThEZR;iO_rtP~qA4od)H4T)DiZ_^ ziHSFK4fKnublBCGEL>AvQ(Vi$X_&E6FkL;bixOrL`cr4+`5``QFIBm0-vRm+7JI40 z!Bu5o74aycrQ`4TNw;@JD;SN++4|-Y0ms~JgN}sOUd4E?eNALcHjhmar31Yn?F9vZ zjm>Tln}yi-@~H<13<6bgk#Ci*V1?HDdVU#}%gFILUh1QN1>(k^a4^KGYe9{1qDH3O zZ<;sGAE@8Mj~%KeOfV_?-H=ji5eRY?QnZYL(-jbzGdr&3*uFE3B8m~y4}^AKcj3T0 zhk+q!@Lc6mC+ey3`N<QUGAWwVU?!SrSgr#T+4bRp`>t3e1n@LIEoBv}o||T4mK_l9 z>P$DmjJU0{TdF)=U9CSRn8J=A#t%q>wyzOyk{WZH2Q7>`vpS;&QNpUsP%4gdnFGrn z@tvK_l4pt!)S;?g@YfpJhkPyFnswBWLYks$d`z2<9(z}^XwFjjd?ja>hAJYPRQNs@ zkcEHAXuKfvDWL4HPW>E-WKMm;)q1nfC`5xwvNih~aAmhCH~{s3GS72f8tLYY{Y8wG z0hh%LvrPU*6Q|JcV-rvdkDW(DvQ^6tyc4Y&z!Jhgpt{ex_2M5-KR}VmROyXib8V2$ zh_k|`QnAkFMmIa!s~iAu`QT}h7BCwvFFg{l%v}Jx%KQ%0mfQuty=7}!eu9}V&?)(| zfdvoDrCP9T?q6jt^p(85r(R=Lq}Jh5<3VD#jgEWDWoIf{&*IC|wmkswQvX}BZk4e{ zdA<K_bRVRp$4U$k(U>iJB^MOUT{JKPh&S32T?1L}WQgaPnuHbOF;t{Fs|6>P<B=Aj z#JjTwnd6rl(6HH~Z$cJrQZI*cf|hh8BaBJ#!k0`~H2}~vu2u#~=6UK8(_jWY8SqD} zQ6w6(WFq+hLW}DiCaiz5Abu67UBH5dRY=8AWQrb(-wO2Pd`4reLHW`=uyRT*JWW+# zB$=Lmd$CyPOf8wDXc4U=QAk)pvE<C^cxmEI+Kvv#xo__hW;U0*kKlq5Ex)YjYPMdq z)uFnwaksXW+g`|ZaA}2H@iUo+g2Fn^`bj_72Qp_TU27MGX*$t>?)$+Q9l+8z0C<FB zg7yz{rM4mZB=upW_!=hBbU01!{o9N&`Y(w01Fo5S>Od`GLLZ3&eR{JX?TUUrAa;@e z9QDp^88#)oi1%6Vtua^G3AkD*PC!jnaxQ#mnva!lGhC=F9;yh;D7$}HDQ(7JF__V^ zB=lWt*Zy7pGR-bnnFzd!66NU>CRnFdg3U%Fz@&*ERtNqaj1}+(%!@?lg02c|{4YZP z>k&YbQelPz+c>}KEUuc>j%DVV!k#u~Tg2o?vuu$F`JwcXa{K6W=e~_H4VAb)K&-Vd zFUoiz{VzA?aiTfaJlECs)HGpGukgb1)YKd`m!wj($pi<%w)tt$>ap?9TQOznhsep% zot+zpirGXno9Py2ywsW!)V}NXu<qPC^Y)7rPVZ2?&qJjv(l;*@eeSZ_(r6Cagm<6_ zntgBQ532rJ^3x3soMXztPx@+f+|q$%@WW&6#a8#pl=(BUcetxKe!S9la4-T+d6)eB zh64$l3<SB=EM*Q--$n<E$;Ac%4Mx&kRe}hstoRP<2x&9Hm%zPqhh1*s(l(u1-}Y4! zyVXTO<@_^)5pjtU(iN5MS6>QJxKmPwc#B7|c01l`*G%_c%U(dFCh=J!O<<Ab0P2k& z3|*&`S)WPg4*G7RK(Z5ImfOaysF^?bDWY^Ue)<)lKOf`XK`{;=6Ig6}KMQFkn7fB| zhv~JBTFV+Q|AaEKYb3e^68C>1UY6S*e*mchxc=iclbPYaT{D@P{^$Jv{{r4E98Vh~ zK*So2`TF5xp8h$F<*MN~T%GRw&9tj%re7LuPd30Fs4YxYm8(`B88oGL=PW)R3H|nY zKZ{HK_IZ1~j-;f_?C9`#m<%Kyqe$8=eBAt@;eJe<w`{yKt2b+2R^#saVfK2>kpI(l z5BK99z#G-`dTzee&*~@hIw0>YH$L`IQDKao{kBb0!_)n9e*er}`i{FeWVB4F-cum$ zQ=Ry{!9uAp{cG5)Av-a?`S-sVJEtwdqA1ITZQFK+ZQHhO+qP|ID8sgG+qT)!)uXz` z=&Fal59b%oxpS{QSL4D$*@RxH9N&-K`}d09*XKZ-+=Af`=hw%^jo;_l{RC{E1<Ti0 zVcCy%W0p(fu;%aB?%BfI;N&#PmBeD+6z)$5sUz{eb&yV=YE)KZX3E?j&ZNoLTW8Go zCuA6=IA$0U9-W#po!YVnJ-az)o})ufnyp%{=5k15SRZhr5l}EHvHoH5$u*|Nj3YD_ z;$PX_L-z?Z4AKS?tGG3aSC89?mPo`GgHH=y=9)VP|NTvx{BP(LKmRxMI#iZl;Ox21 z?HBCp>!i>SRA_Npkm=iD&ec&awA&$Jg#n4bV3=dh*p5|F?PihDn5QDm3TE_(a=SrU zn^>O|%k;?FI;1#amX&|ODH0v-1R=U-Oq2OxGdCj|mGW<%k@|0=0(5y8cj6GtAF4?N zQ@g6zC{@pPI271M#Q@JlFvD741)e5rjf(TJqhMeap01UIs@&ZR{$=q$Czm1YiQZdC z&Et3LO04tJSK6Q)^W5`GQjQ3R;`a+CzvmsnXuz&OJaAWf9r|J24Ufz~bKW`O(|4X5 zdlbAz*H={<=`KXDNjnyg&=490R`S;Z=)LPO?X8r=`fe`Jq-`OGDklkdFR^%3jFfh^ z?reQA=(vqxJlfwT6^l7Is;<dDWH<R0)=EsAnl?(ew`Fv9d{IiHXwYisRT`%j0^5e2 z@L=aLzJRXy!XA_0I)DCHBqamhAsEiGLr!bpkWCiwU=eZ0QGj%cE!vYkZb?P{0ht0u z-gPJ(P6!?FZ6~4f(ng7;UH|MH1lSL1T3{?oX2{U&{iEqD4>+PhYd$wkFU1Hw(#jEP z642k~|K`5z!mo@_)Yykd0MbhtCIL{9DSV``TzU!%(|2fQ#xv^DpA0O5SI-jh&<8E# z>pEv2WG$u6!Wq+a*|}QW7ikz3X7VuBHpJe@j*cexL-`p9FlBJKG7Ys1<yHA>>1hfA zB$hD`h>EFGTJ;KFULOiV7DZ?X3CFF%Bn>DBcZdmPkz~XVhOtV=Y3=7Vq>PTt55(at z`y;Zw2P&lhq>nJeV$ZyXb*#1Eyzn(pNyHwGP!tvKqdaB?-N`zH`Hqnk5$Yu?n(x7| zxC?4H>?;(yx-|6LEpQgLv$)ix#@C+rl$=<w2Wd9BFd2mtN@iVibjRojqKb5tjX?}5 z%Ec3b!k`QX-XF1FO@h@5a>-6M&mKs9@b#gqDwoz>LSCm=P*z)3@gq~B-F7PW(vUkh z*K^{)QQCRpoZQ>)LoCz9?DY<Imv=ouQNbJg`cClv^;~9$Aa_W!yH0d$h0iFp?H|5J zV0UW(2l?CAtg_ms`~Vg;*-OYtkJ)Q>V_yn4Ok5u)$<>nA+jX>?sLOB%fpnaQSh)9~ zuZ8G+DQ=LskC1XOOZ_4%-mZxnU)svXXy@a2g$_9aQObVp)E(2rM&XbhmkjCUZF`Uo z)ny^a*giSfBq1b`$!K=Mw8Ei`OMj8tg6NPu`8dC(qODpZhH1RL-6_MdrS*mk87__G zcbHSOp$aXxSyCx4!&8-;1Wl;=WS{I3ubkkel_>S8t>&Y%d~m4^iZV70x^NXzCBwPe zG0r?Q!9i(o)-%7ld^N9@k+<1x`_+c^0{u=jW+Q7nv$!gZqYo?=8t!JST(2)p4`Rp^ zf)Foif`TOBtU?vZ_IH+6r6t!uGQZMJO-Ws%3m91;{W#Mm$Tr+?#Cq)*dCn&8IN&uL zI-Sar!(GFlYsh~?R2~IT)VNbXdGeT#qbfNEr@lXf>^WX-@H5krawOT$WFT{1QZFM0 zi9U-a9n{mxM_fVN;Tam_wVV{#KCli-)`v^LsA%C7l>kv;r_q`fpw?lu#gz$Pvw0R| zFbV6v?TFq3-fDQ^k9x}{xa;5C5h3Wb5jE(vyz74g)I32~RVY_9I3GK9d$OkVXtu=A z1#gr6N8M}vxD}S_G(>_e%rZQzerm!+B8P7)MPN12H;pb<yW^chy@aQ$7_IZZhP#p% zMqtxG3$v!{<GV9;wvZ88NSg-4x0aj!x;Pju{mWRc$uS5$f7I`-HzU)Bn5%~a@bV{> zVc-d-glr(hS78{-`s`KoSUm@)r48Dar03+#oLC33y9zckZkyMv5s@d@_G?4nGbb%~ zyVV2cn8aVxazx<x{S)}P0HrX|+C_+?P@_lw=mA>4U9<p{bq~*GFNk}eatpc@Gh$iJ z15U62LBJK%I&^3JTK%T|4WT=X?6nEOhNIC8!NY^e>Oye>5twzQ<R}{Z@<I?~&V~u^ zvBUaIgSG>vGU^6;8|FkFfe@6P`1kSLUr+rjSNPz3lLVKMftg*{AW;Kyb2fC8qx&F$ zvu&8`uTR@8=b#<5D%#pARagus+Ldw+3*0QQM2+}^`XK(E>ceu8=#M%rnOA0GMtEZY z{<%-aTi=cj%2ZAP-G?hL%8Bh$+I)2TtK5<lPU<6E>GoD;U1J5JPRHQr{rhY9Y+z;C zpnR_)21l)$foi8nFLS+CUE1@Kr{=E*0}oN>-R}Jgp$ud8OwB(Ok;c7Xm$>e8F8eR@ z8#?^z0<3;3Vaub~g32@Z5~pM<V~dub8G!%SpU~IJ)N+8|gb)C*SYKdh^r+veBXy2| z&AIYv@B1?;K>0PXH}2FFW1>!ATL>btWV72#5Zg&dwMCDbgabely%BW;cmNz6(gNtu zfS)K8k$SdySob5~c)nFL>cjr`i8cOjGkaH!Hc}HYIW&Pos4rX7MJ>)pF|a#Q+GZH@ z%Dmz<eLl}K^;#)Io>=S^57WFZaWG4S6|s~fVR8aX{puc!$B>x{z0x1|T%;1?$S9qP z2n93^JcXp3Nr{-5ha_Ahbm2&Vj06r@UUPzCsGf6{oAg{jcCi_VblVQlRJIy!9gl#- zrN}$29oy8HI(aaMp@#`N{>5lej1IkKy0v+B$&P&?q`OAEYX(DLWo|3n04elb>h8Ua zr;igKi-?Kk>_A<G;j!-cR6#M1jWY!gC4`jDLUS-sad<5sJ|EfAlG0X>kT31W{U?lu zCL%3HyC@u4(Ua|Hx=6PftNBTlV#>J9KJ=Jw;BivF$%-e`Yd_`)6;%;8Yzjr5+QCy9 zI%1!&;XWwlNY79_PKrh1NA?2VmdhhuW{MUxVp6IcGoq!<qexK|Y(+xwwSn~x06Z7# z7&t084UTJlSZ!D9L%roKJO(2xK6AajlJQD{)aYf-N|BRywrC0|ue`EyRy~&h4K&m+ z+D#@+nnkEaXU0lXZ6r6mJhAP%-OQ2Zhu3J@rb;4@#1{%l!F`Qu5fN~$JRsf`->)&F zyl4jJ^f2|C>D<w`B%Nc;`g=TaD)!1tNIAu(2^O>ytiW|vT&fO*@>&d&<B;VdQx_W% zjtWqYnm?r&`dyG5<5Xd2B~v?$G6j;S*8ro@S5Vd7R$0kR*>3JosJ0hq;uTkhb`^{O z^VZ^hxgcO&Y|Xq4F9YA%06r{M6&j7Bj#I9d2rEaTfebeQDfgx4@^XI5MSYrxUY56o z#zik;58~trWJPpEraP_F$y~<Cx}UL^*uTm`t>lPDz|O<PU6Fa)Pu5vRp|fyWBDxWr ztw5`0$<i3NNHefI_82dley!Q;Bxln$cYP)&muZ~`7iYFx?{#noSQn5E2M>sUAT)6$ zx2-@Tu1J9L%3=Uyf#v@^wfz2kOyAfaCw~`q&E)r;H7P<o1bWu8U#WVKp)ONY08<4R z25gN=0@h>>jm*2@1kJI(LinRELUZ?GnUQ#5PIaYqT}g6^DVV)VjBL9ao6;)*ro?kg zsuxqTGZRgN1e-!~Z0lG%HoKtX8##3-R^W98O<j%VM#joS9Lu^QyCnnME1W+PWYKTT zU0JqoGvN>$ZpGS))l{YGh!m);ElpmZO&8LE43UX8c^PExoJ^Z8qXUz_<RjgvF0|BM zsiwLStC3D8=gSJKll?V*Q%|5p!dSJ$c@J}YCB3v&TR59$>L_a1*^AX#+j0sS&Owr_ ziKpS6zLs)x?<n;3p`X}DC{jGp83xVWjAdz_aa%94UUW|e<m+6>cnU+oNs%be&b)M0 zpk(b{k-rhWA&rj^tX4<uFTaKdV_M$3B~J4M%hVRiM(0n0NHv8BSi0mgzmLS?W^{yJ zVojvQClE8S9$GKKj|6;pYPWGKXVFT1=Cx~llj(l1Nw#jd?)0PurqC~ZaL#}=G*KNf z*KoJMKz;zJ`7-VLNI2!G9skgMPCISX;lF?J{7H67+x%(c3YIp@i-PlpJssp>!ZSe% zCj<Nj$hXK4p31VK?2QLq`Yb?I6yKgJd^wR1jUK*Xh^8?ZtAz<t-ljbg3<3<nwAF{R z+iT$%oH|DY=znbotXt6qyRl6R+>HcjhrZg0(Y9lTl2!f_<A^1!<><?5Z2iQl(D>Jo zQD;tMuCGD*t?_WbcoPV<lmbpH;LL~(x)q8amQ0eO<)EbZ{IKw%O%Qqjh$Xq}hP*n2 zV^RFuG)AqBjS3w|CbNmL3bjr?6nKBZcEj>p!cHhruLp=%f@wj=nD>PiKFUrZFd{2A zNJ{O1rI3ClkRDcNZdDDWOO5^%E{S2i%yNc=%heE>Dp#OIy|Ea=J}Y;N4wkvKT)ve+ zgVxzj%o8MXNz+h6>q^zvvgO<wT{`kvW}Ov+?c7D7GfAF0+8tJ94X@z(Pk+qs)c_-o z_3}6uX$-w%EN^Y^t0ng%F4f%RBFFTdVskmBEu^E_bf0nHsHMpx)V*ZKq_RPM0d1&^ zfF=-s{#Lp)-eB@r>SejAZd>MaM6u0mmTN5hY<AV(v@5(H6?-V(W!(j;aYGhc#Y6R^ zkYKln#i!uOt!8SJWUC>I0iPT?V1HfewM!;*ph;p_=5XC2j0+BS5poCEwxocLsMy;1 zREwYhMg<K+T6LXF1D*eOTcf9jdP5;udNbKfQ;>~xqXkvh=Rw=wNow?!6G)_+VxKR5 zCjXjECq+p*#^2=9EFqpM45N!9ALt~%tlOqfeFG5EKr=$?S|&YpT$$iQ70r{t2J$3! zQE7nGDmesai*}bOsCp%tZEE}hB)NSKtCod?Bd$bH9`e019B1k%1{_UKm69|Ywhc!2 zQjcTlsR|hs-Mc&HuNkkBsMTP%kXHjxMrok!vf+fPaE95cW<Pf+N<C*jPfA`&s7^`F zCOQh;#8-qcp-gU@u`|8S{iX)x#7UC7pcvZBLsUGLe6gCvlkFRT2~OABZRqBXEa{sH z+~}^DeHIJeAJ$aR+G(6gq7Kct=P1jT#t}A=C~uqxv1MC}83Lm&_MsC3P#U^XS|Es^ zL=7yW!a+aPYP9Z@em0#?&HU}%Z9CuFE82f--j(%vCRV!3kpy!I-b`%5HcuP=u3B{* z_$`wb)d}+uTemu^nuz2z0cORUmr<q15T9hiU5?FJcZAcnReB{1ngQs_)O$>}-i^UG zd_RMhC7_x_JNvkVKqc%ggREl9=G7yAmr|_IdQ4q5(>$5h?*~-bXq$qDN}Jc)j)6I2 z#!DEt#2&H&`x4#YT>R^y9=<Kd+>ZotuZSD7*OoZDJ%Pn4kGd<d`@CB;vVMRemf_<6 zrvMrAfA1JzVgCQ@7--U-h&ygh=y}mAn84!;p^um+!syLi1%$cm>u_T79+kx*kIEsq z!@Iw^sm&#MdM)+J)}KvJ6-SL4@>Kgb@c4jIy3+&l#kWr>?Vy>;ykY{op*-H1+;n_) zP?qMG#rt*jQ<~@ZHn8*knHIO8`t9?6ljr+Ap{Ms9dvj-}E12#}=>L41*W(vq@E(`O z{xu^-<5b0QgyYyBEO!tUee|p@7(Rir(7EihMb-D$N%x_7xGse<l%rVPO2P{ZpSK(4 z!4m-Z5HSp}B#u6Aqasf0G|r5j$JXs0BlUU(SF9hTF|-Xh@c;-omDunAS^pWEliwqB zDtuxj?W64l8U}@nh*jR2#LLh1MN9<c<KdC~<dmT-q%G?Q{MRSg^$GB;Zn>7~6QkeG zj+^TT;`e<=Itdz$))!{*J|Z>gRN<g=wuM6M?o;uR3jHe-EJb)we71?4z&X#o$W+W$ z{nYJ8dX6tsH@m&kY?kKcJ;Ck7dx@k!@2sKZXKWTf$@xRS68+0ZSi^7(p|I<~d7fb) zn!xzgPe_l{TQK$?F&MDyNx{w)u;P7S#Gh8@#Rn?I(g5JppI&)I8$E;Zfi;PTK^n;S z!|xBm)r$^_Myv-jS{o1@2R#P=mL2ksA|A!j0~3lxgA2kzzz5^pg7)Ud5463o!;bh) zgblv@EWLiK68{if>Kwbsc~x_{pC#}QC%2H&dVmYjKO|a#I+czavD6xjF#zkIl7{kx z#z#e8A{2+DH%u3Iy(FvF5sQvD)Bh_?@15VsW<9<2*)geZJyK>G>*Eb;RiSA%i|!3R z#5!-LMI|N;<FNw(eBOrKi0<nI+UB(*T}qb}$Jn@4HXxLweYJ##oE0jqJ?~sn6kG%D z3u>*6ug6Ufl6tX;;7=8?1uqKjyfhi{{e$+5#q^9?W)nI%;sTiu{l`SNfWwjo`&sLy zt2lc<G=cF(N}=HA73h>9Q{A@D_fK<jBUtHGpo<Y8AmIkHBJ1tFB0uCPML0S?`MOeu zKnT`BU<&Vkl_CXYA5x&?U~sRqh9o7j1F$SyYNl(`WRtKzI4lFwvbt&s;<SxcGcLFy z0Q`FmKkASoBww~R96(nxXr}#|L$rf|q&53OC!&#Y^e#U&2H1PtG;ks60F(;2`|c(H z%t59q?@;Ry=?Sf={y&4LNPJP(az>6FuWxKr_u%{3;?}WOp|XA!0#+LT`W1js!>^6d zI&AyJTuY+s!1gU@b>dwTCJfIh#N>5*C=-o*&a^$Z{YBQlKkZ?jQDY3Z2_+DczNDG( zLaUzJK+~qU3X>1lVQWR=AfXPc%hkQa7Yfo05EFq#Ab+1Jo^QM~=jK}IJwZNDJwH9O z-*+M?H|XALy~^F(A8*Foti+b%9=UKSXJhRKEBNa1dICOMP8by{Ux>PUZhidTsl9`} zdenH%#GFd-yXe23!qRrUp-sR-KzS(^!uSFvmfqkRHOf;dZ=9w<D=!DiexZ&aUC;2$ z`}GL?PM7z?9%|+H7?C^&ld^VAnaKRNEv34(#A`sQ-g$=@9d?(-86=<mWE!o1kO}iV zM(&x<+IBeJ;utEdDyy6lEqgKuni^8CHtya7S#7~01YUJ~261|P4^U;kDPiM3(jOm> z7k|?t*f%ZD0g!^WRYo7BI-3me1IGBslkT6;ZKMj-kM>S-$9FY`)O+FhH*H{jL_iDO zAXzKJaETaT%HR}1qWZL29KHT%Uu!iGJEzSvhK=o0^)uLf5q-cZSoQp5Z<$-M&bP7h z{gIp595CRgblf_*ku`g@;r)Mhumjp}`Z^Hvj02*5#X%AV!a&lkk^)F*4;h%#znkS# zI2ojewP6{Pa2L(8_BAJ6Rkvm+hwkC^KCjC>*s}o%B*KXxTyU2N+g<fwxX9uoVZ9AU z0Ef_wf4Mb3VPlZ9Kzs(ImAX|*K~QjFqTY49zk)x|lL+f?sr!%hD22coV)W|965U9b z1visSE(n6C66-&d$kpys9>5W=v9sKgsY6-fDg51TZRmq``81S_iz{e&5mJbUrB#Ow zPQBB(IplNmTpG2O+$!&j_5L!qeAU<F=gd1$(ZvvvSj5P(n|trL4iuFd0-9xSDWM{5 zNeLd@05G-NXfb|=3RQ&>8M6l}*Wf9y@x}Zs+X%IG{z#(w`ZL<&ZwhkCAmbtt&(9TW zxd*e5v&)~%t)(}c=*aRJ4u4jO*N(SXFW&Oy{FzdvCfKLdTUhIxGmS<1H7D1lmT35o z-1fNAOyZ4F6$_i!WGW9WDo1GIE|1r%+0%6zFpW0?IYdtpe>gNbHNZEbFHBo5dg#Fz z^~UF!<KpotRL}9Jq*$1o3^k!i8W1oQwl7b?T!^mx6NY2e2n@8G+Lj)WKiio0ZtEl3 z14~Fry34^}_j^F`$ukLd=)#>OXkK~}AIqlVCDS20edNP#1GF6w!AwbsPUP!kv#dkT zC+^}gcqUuk&#(@$PHS|#ys-x<{XqmyU}|Ckmb8qc^i!-)W0gC8zJ||<7nC0wKd*8l zc;tT6a$)sklM=hcRw}4x@+(ZK-6YoeTINBron?_GO#iVQ*D~iPpL{HRv;HdqNWN3x z-UJq9zKsp70_?nOBX)JM9kb}b7;F9E1F8TTq*T=GH5LA4B${rO3-tz%y&%3>@v@Vy z$S7jM%Qd4Z9%$}%voj>^DE*C>pV;GuQZr@Uijzd|d~0vwv5jHDrJ0JEdEB6415!f! zb-a;Sqy5=P6w^S^%5igdR#92W<csV>2(2Rq=n=3J<~`=ATcMV2qvh;*k0L>ukcBuZ zfCmJcXu|>Svf4pDuO|q_N6QO-|1(LQYzL3lQf(sJEvV7}l;k=_Iy$l#O_Jge!ST}7 zNvI=4t(%^Vv-S8d))74Nkd#QT$Z?<m2s=n2tRYE^(R4VDBar}cbJTNQO@C`z&p9?f zHcR5Sb)J1Kol`X)lj*e34|4vb3;Rz-CpPO-{q_kCZOPzX^dM)(KwnJ=C<hkC`042# za&E-4pc93XC-IGeK!ITl-aY&r`;|Lkj*BaSMKH&8aJ4<dK3@MA4RTKGB%6T=u7sTz zEQJ#%r3ck4#G0WXlCxm5`zEN?(*#56<KqS?CqGXigOl#4a*K74Mx37!NS#Wo^dh;L z0s{+CXj6qaiO|{LyLLFR5dnlU%A?HbZRG>IWk?iLXR<rPiZ-Rljq4s$syq)E?A6kZ zBi}d=W}<UoFz!9PmSl>`iEYd5RFT7%^TZl^1}5etniKhaC=QyVVSvLOd4Eul_>wvf z$HLqi%!-j|4rXKt9hP)xetN^CD;*aU7<dIY38B10I&vh*MPrrnKz`(q3lb5bN}7CP z`GQ5BxZo+C1gnf#y)JQ_(Cu}$17rZt+PwKZ_%!2nz&Qqn7u8s&_!b`&7}Zo&lQQ-{ zylZY%9jyVJBAtPxPr00fTo{YutjDPn3UGM-1va(hj(XR+L#9b;OZ01GmMLALg(PnF zsa6L3puE*)(;1_BzmdmN9(nslK?Z!CFY@Wv+3B~ezupP4&WOSNej(ChnW<VVQbYd$ z=T;3Wv&{_+<kczA5Sg;%Au}&eft^J{WVHp{1V*d$>_&Df>*WvOU<Cd`N`x_Ea*a!? z!b+yr)}X2jK*5>R9oJK2(8QW3Esc~WlSz5E?ws<n>ya216Jz=R>yr`;m_B{L4wbN! zc_?}>Sp%Qysyh(<D{(D`i)i|{d40~A(bYBpL`_955VoPP?F{X2RtMb!3pIf{EL~zW zzK=tOTSoebSIloA(V{l`9Yk2^0hTFNuq`+nB1#v^knoTYvqG!prFM3Z<Z6Fs;b6pZ zp>q7Jjsk4gatU^{7yk_)8D4$^RZ4!05OdQ7t^Ebe`XBSAU0LHmkLH;Ng<ZDeH%)?Z z$pAInsm&rr&@3hza>Bm-T^DEVp?JDB$)2-do^M&;tP2RJ5{+bPp{{)8iBY!?6jUE{ zG6N437dDhZIp>vyo~T3l`~pEP{Hwh|+Xm58D#R=MD5Vk%hbf9Ud_q6CvY0;t2kV&R ziG)e!`)c#b!Y*?VGq)Oyl}Lysk8B4<V;Ic1`5XYwt_LN$=6^5Kllg`~boda6h7TbU zlvFck5yWl|zmV`>R7l*evM0uL<5QKd&>23MP{jU%x91==F=juT55Z5&cIWP!XQvaY zm<w~<BsF$Um_T1~a}jDpn-NOEnIDux(*9l>F+#L`#7)H;BtimCz}iE9x01SuWHuGO zO9Obe4l&U^jG7DBzMTt&B*y;w$ThUJz<I3A5do#mE(Gex|3sV49#G&Ex$J@LLMO`# zv&r+v$#DoZL<gE|#Ey~OZEwjd*a~jrOxAbe-rJ`bat$m$R1RLB6a8UQ_?GYHIbuBw zXAbRAilW$>+0}kT&!rfW4MZRBEcctx7EdXO%*{AR(0MNq4B3WH(J6n}Gu+Y^n2w-$ zn(WJ0%$&6dmq``{``Uf7T1J}USbYn;CV!aaDx2WZjNz&}y((cWjfrS>A(THH(LjZs zUmNL2@V$e>8N}|_h7S%qM42#tF#FgS&YQPl{b60&yKORN0Mi53atIsIS$nyu{<LAH z=VDP;^4lc;uCuN~fJmCvkK}D=FED#g%bUgg;NeY4rK-U#I)nZSL7j}YG*}5X)JKO3 zm=ifU!e)T@wVq81q9eCov8N2a(IU|9p{{oUJ+gA1lMo1)QFBRra<S%iv^PKIL6fCf z7&2v>zZPBP-^hEMlL#HP^?{)7IuZTYLsr;%%QxR^M;vlpo;v!TnAkXVT8!WjYSM)p z$21VPtZ^Eo&gJ-(y5_(wibln<)?Rfhq~-I?p4x++Jvp0CQFT$%dJflvCAtuW2|Jp; zcB#~EcfWKN(bh=y!%T@A8-O>xOS-lKy?au5^M*~13sK7o#+~dqSM!H`#`u1LHhq@K z#yhBP=abI@UBUqxRhLob=yxr7(*72_d{7m<tf?Q%J|ycA*vy;`E4oXu(N1~sybDt8 zlt<6aMu$@zltL%p!SfaFU|C*sX$!7aY}mbnyS@9ID?6uuqfc$@c**ThuY1P(l#-Fz zT?j<ocWgo7<{r3`I$sT@D_(H5!o|qV@SL{pY68CxuABwW)JA_HWzcHB2w)#Nl;t_W z#zZI+Dp_a~oweW@39hhH0Z#C(l$sW&%>C=~yoR>vC(n{p<NaP@MU@$1=N@g{P#){& zgLWqJj9N~dtM`0gPh_k%J*8W(_}Jf`<1A?n6_)1GyxY(#S)1($xBUvwf;{HJNsO5X zdms17%lBA7@BmB&z!qvMcs3Vcy-@o4V_-nPbwQOY{a6=|j2@<ne<jG#R;9PALqekM zIM@_kz%-vkT3a#;840@3f`a8KmZ`#C$`yhhdb=j+UTrm68FQ_zHLgMwMK2FBYfn*E zg!-XZKI6a#l1A`v)TC%}7;_?u70VW(by`s>N?>Q6L>?~VbJ?($1P2Q_w(nnP*C_!e zQ=Z&Ve0dm&?sn+{UWP~y4SHBIC(a&|IK5N2Z*QpjHVxuVrdlXj+KSf`1KF{JIeJ`; zy=9Vtp;zTZCyZ5}2Qc82&;b>(;hz;F)qY>6dxR$SO+LV<ScJI6Ai(SLunAdom|`d9 zqjD!so8kkKkJPL-YhK~Md+FamFc{b1bV7KH?2K`S(vg%&7S~zK9POa?8c?w1Wn1$S z^?Ks3>V-3g>|=mDGVj%OAzlGlZoC<#cX?z4Ez#I&&UTMjY)jgk#B->Ftz`6>m#i+a zNuYms_m?9qxbe^4LczJ?3li^?a|s*yu{_?OSM_qwT*$(-4>S$#?&DdA+~rzS_Ea6? zH-&3PnDMXAE54JWs46WQV+bBr$jyTC&2i09)DIiNj~ctF^x&_Ufo?JioV<B9HtfyG z(5g9MHXM6s#20%Pb~lvL7QLs99b`e>_Dh|MX<JBUbGLIdz&D(Pz*~2n4biSSrx#BP zKF+sLu<$Ewx9G;ue0*nop@kn*Ab%HIT-rhZUB)Yv$Wv!pBLy=t16rVJoFG|wVk*X@ zuuS`SAghr%q*w`X;<DlF(adi3U%Zpm6-nut>v0lFfyxS88xN^Alaah^o(Vk+#y##_ zRt9(^FDFxGJ<*Y7$sN&M-0V%$2eep-QT_=@DQ#>C|5D5_@f;f;yjEm)X!|$5Qojt` zFjk+%`-fT`PwJd;X1+}pn9dyeo7}TgkwkiJ5Vu6Cv8qYB$tA|VjKH@SX3y>Zhk|Ct z$ABurbP#931Jq0ywL|DeF3rc9=Y)(|8{|I!OTM`0j4~SaGqlHeR{`%EDe&>PVhSAt zg==A&l=wo6N{@-16&l@Fid2cy;wI573v!gZQb%;tfzs;9A%5~~;r#RXo-Q>yedlKO z$STZM25{NI=mnD5ZHN@Od+d~_1D37=JHX1v4rGYL-`wbakjo(#1tRr>lw}+J-2L&X z`^Y2-bYJ!G=r&F6ouZ3cy@-5;%L`I$0&87_-!d+Kf&iQ@u|)_phVY4&$_Kt?dPPY- zeR;kxbjFD8Z~kvpU3mY!<+%!#IlQ(985ZvAh5x@MqA^(+Df6_#5ikEyT8WS*FrNW8 z7VDp~@%&5GCMhx4pcyX&IIi6XZp!0zP;{ibGLYHS?H#7idV6pmyxX<AGJE-H4*sSK znX<v0E#$W7!jVluH~Kqs^voH#M}kVEFbBOO`DssIXwpJoWcd;NYrrR#*#h)D>Np=Q zrH*uw8%i>U6Inal16aR@L*GzuBei<<ILVNO$H;!>)3V&J0^7+>Yg%ELsDdm~YgoE= zC^q5=sLQUu-1pu;>-AUMX%58S2gk;9(t`t4BdZ2Ix;CAEZ#PrKvZU8t>y<_x93r)} zA3FgJ3nY2l`EJ>)WaBk~2UU<Usp4KQP+p0V=}1cr;9BTT@xT@iQ4@+cS8sXTRXX^X za96T4-$O+Ic^(`T-p`<$vq#PD1kS$cOhoI|DdmanW%-HR4;VmRjXRL)(8?_rPd7fa zbonhhsE2Vq2|$26txv0s42fRQJn_CqU2W;s*iq)ggh7#f8%LEWjrHOwcDkl9gqgNy zi8}?v*UI>(0EfL?>dzr#8z_z+WBkjjIr4j0dz(c8ivac$2^n6&)}j?1_xxQxO;SwU zwXB&}LfY8!Y!~d40CQ3`9&-INL7{J3BOeVL#}KYq9+zz#+oTdNc&6<rV^Xw!_v5!c zqx(N0*<XzY1A(2PB@{RJf4VhT7+9JAzjk`7wIt$>ni0Eu^a`Y6<@RJLA+YK;n808T z<Be@Y;U&Ca8A1<m?q433L=zHo+efAiE`5nqXqLOjWcZ|Q-|vra_1Mf#O7+eHzFs%d zT4wk*zh8M%Epk?nBr|!v`8>Aw%3N}S;5~BoIY-h9^L|@Vy1yHo41C5Re`WxGxWAXm zyriLdC?BDJ?3H!1r9MB-t}S4D&O9`8yWeh?uC~DSpSbG&PF(85y!q$+Y;x$mn5~v5 zrZ?y{<SAx4QL)I<<J<YA^M2pworUTB-2Iv#yQHPQ7anJBd|%H_HhSnGPPQJ?vhu!N z9xR?&LNRn;@;65A1hTDkeSjoA?hWW%Xr)L+7dcW}QEpP1J=i*Stz-;f58~1`>T1Cm z`0*St<UQNA@NK*Jf_;1X&%STTUiMDEHyws#_^npC2srQ<^f`!Fzkw#d1-U5HR-;=x zH}P(KynFfo@fZRRiPpb#dQDOluEs6AWX(?!HUQoI^!y4uTt2Yw6Rb4vHMxVQ<vMnD z_<4J}+BgJexesS$e!AY+%g&_=%#vOhklJdbq-n-hv9jYhswWN~F3+*7Ap7J%{m9d{ z&i4;5VA^OcB1jILv<WYKtKEyHOF+P<)Vc4t4E3rI$q$N6T<6|)(e&Xxs}K<^UHs*b zaSCgr+<e>NF<@I00iGyeN4LR?J*_QF2L6-tZj1eL-kbm8ygqTOq9a~$YvD{1C!(W> zCy2GViNAz5S<m+W<-EW<UfE#He91zIA3Z&N8s4<~ur8WPAv`h@&hU6h+R)zc!nX&o z_ejeuAmtFX0!l>Ycu0`UAU+zq1@0y?2>Yj!z2o)$q4WjHzk3bENK*bM{th)({?OWK z{Z{|_als&d8YemEd|_Ft)g73uJG7V(2F5k(_~`1M+~9jIMu~e70k%2G!OaPU&@HA^ zC?I?}Ud>L?ZIK|M<<U=2^c1Jn?*P=6QIJ*hqv%M%N16ffrth7<U|2{YV|xL2sSOZQ z!!N?5sXeCoN5kTwag-#Zb4POO_Kj}Us{wDvwfRXLG>sYe&K>wGO~#!h2$!4C6xV}& zq+mfz`)ib;fFKJ&RP`ARC)*Mw!gm1>U_20MxWkbG4AY5h(;p%?g7DQfKKGSsIO1jg zwpwZQv9v1z{_AZO{)BK6-&G2|)7LCExwG$y8qn(Q)eXoMeln4*OCYe8RF@zy>hB81 z@1+G|r4YE)ujy3?hj&6OMXTWj?WaF>3Hh3+udiwS$@CvGdc%fo4ZC|bZXJ6YC?#Sp zM`%_?AH{wpd3Mw4x8YY}phuW7uq7;nGxf|M2B{H-&-LGdrUPEc2<wqRYS#JM;8_ey zhk>S_C6XTnG_coK2iiCY%%@LA9Ad9UAw)&W!V^IPU=J&yfdsi$fU$?r=L7IS8g;$< z_K>4CTzVFb)AtjM(~DF3`JHo&x<-9p;hht6zn>W6P5-&E<5bi)+6h;h`47Mg|Mm-b z<A}aJkv@E19$Lc5NWfcL+~2mrC$m|K?NeEd%@3g-Kuf~TK;dbv#Agy|ds&IWdw24j zqQ6I8R=rbw*n0zLZ~-001psgW90Us>#XQ={(c>+PRg#jd<%md0gZY!cc;_T9UmS^q zD5Zl0KU(yX=eb*&UL1j>tF=ezUNZVf)gdb&=5u&dGZ`Uk>Kr~@B_(5>>WRRDnx^W$ z#roH6p1>^PvgSt?I7_T0gD&YY0q7ahNQv0EbHlZusjqA&;YqwUY~o%{$c5?mG3^(H zXN9XFWl3(d?3HBL!21X#?>PFg2O|cB`pdNE;dNbxO?LeZ=ID2O=+g0ipYrfC&0&w9 zvF;KU^jonekcni<yqidnfcgZ6&Bd9d5NuT0G{|}3vZXZf#yW(p1z$wC1ex8)>lb*E z9WBlsUP+{h<sy_^d4rUkS6jKxn=0-KitYssrxI>hXMO7jW{xwz6JvEvh?$ow?QStQ z-mT!<y1>BMy@pt{R^o?Fg>X9=b^-b)N`(aT74yFNel|<;tf|@k;BF4Z`)D(hY9@{n zb8aI|XJ^^i38K<BNwY(VuLT3X>N@X+oISl2R{({{=w47qr$JH5aSX&R6}9y7{(sa# z*a)a8hde~v13WS{)tv+L5*Q0UF;-biTh7VTAz+&mf^J3Xk!=I6LbiX`f!gFb6I_U_ z2^HQ4X-Kx9?-|y;LJbvdu0^V%y6iqNPAAtzP>90a{RSf1pkOavn=Mu=v}qh%p>0>3 zGoF!A?lFaZI42rwTGZ?Gv{{uRNTAlQuvC`TD{%Mf*Q|!Ph1VeBg(!SDW-h4{!44rn zQ<$2#@yZhIZsYrKM#+bsB<e^a=WxaA`Q;h_tA;FWww0j0v%pa~f__uLZKfoO6O?3d z{}_)n#H4=*ZWa(+27}znFybw8<1y`)jPG@uqkR(|vj)t9K!1V?%JV5=_8%4mQT}Ws z;w+3D#=eOn4QwhycYU4HI=?iEfIp^Mz<<C!?b2Kc8TYX>Lr3=%&>C`KfQ>O-z#h!4 z3Hk`$F1AN?E_CykC9L#ICiho(P_s*eoTBP7t^BTGiX07prl==1GjUuBcZcM7tq0f% z))Jd!9<pg!pllkJ=?V!WsZdF5K;F0}B|!+unV$C>vh1AG6@k`yOpi*<-?1Jibn&l# zxS)WW8i$X%(0VFd454Mznb=h%l5}5>Q+c7Jp&29QUjWt%^U#77_N1%28ZKxzG&CD= z<F`K#snYc{($<>G6d%Sq`nGxLgox@?{0P2KNm9!@X*+`t6FQ(Yh)2_*G{X0pcp3K5 zmRACnA_WOCdZulmhDjFVtpFY*%1et=c;Va{5L%B7Qp>XB4<fFB^Y@cN5fTIlx5Hm; zBpn8hr15s=$0jG(;S(mN=|&QJ@oU5)pavTkS{4_BG=^734Vdt4RGw4qhN~b^WI8b{ zOp>|W<qNXlo6mkk3+~q4*jY1UOT0f$PczbcAs`owd)N*os>$~Y@jyJ;6?4gWaG=Nw zn){n`SWB@_rvME#w$Y)Aln^hX9aj<--MT<S_d>8L2~#nx&d5;=?CoV0`KvLfT!2Z5 z_T0ExoWsFTy<1w+;O^NQ;*%AjJQ5J3qC$s1rGd)U4;SRL|AF2;Lb(!kG$bOACu{^r z(k3op2Re!d-dIb;;1eIx;dcj>gOI=|Z*91!0#;iOXQa4~XdEUc5kssvPty*+z$zuy z@!qxnBX*~*e^9!@0!(=amFtwe0kLqQndf9<Y{inIV79h1N;mfIiNE?tQQfL87|;X? z9VY~{o=Nznq?w>b4CsNNpN}0JqioB=ALsn9l<zV>V&M`dL3T|qQ_?A3hOs1qlf1kB zMVWrB#4?e9E3;^e6z$wM&IB%~7Bc*rSZ9xX{2cA{YiE(07LOK0jRxZ_2F?S181%2_ zKS5N&hm;VJ0<28IuRdU!=_KExh^bLy$51vdK~gZKPooU<4E5nf!`UlzGr#jA;gwg> zVjr{}Y7|T}c>%)HDp)X=^6F6~CrlIu>lB>D!olRCQb_{`0?ZWj8o?H}LKf{_DE#}H z)|08ac-oTwm~5E}5Xz=;!V3|(dM6cn^V8~d9dnk1DC+!|XUb$3l$iJ_tEY<R;5U*U z8r@SzbA_w2j_j3siYdY)o~RKm)}<p2sI`5owH*_sEuQFJ*t9=I3E?7pE{IV_Hd_*! zaw^#pcrBK_4_tqP3c9Oa-JVQ*4CgDBz=cIlXeP`<J>30_FuAZB>{az`SXE$r$a|;0 zbI?rJwEjlgI})k3wq#ZN7abu=PQLp{UZQ>QNBJ)W2~xfLFp-&AcElt@CEun%JCdyF z%-PXY?^>^!m`rk}UaYsLtd#SYD1`rm=yx^wmbVo!LeH5#^S>%PL=qqNp%5p7lW)%+ zwlyjNM)qtwNMI#lR^29TB6RUgEwmx}9`n*685%b!83adE6uCx$Iu?$7@v+9M5iAjo zaZHY!)!lm7Sk!_d2X1*s(xb*%k6kD%K-+7Z75OcG9@c2jlOKk+5>2i>^OZAbY>II0 zaAYDo=d@VR!_|9)d=PmQ_n3z|Z9f>Fy~pfe9LU+>vQX@mANTG063T{4hzZUuxQ2Za zf>1q7<KX8?%c9d^HhvD0CIatkUT{v{lgi{c+<&xgh5f-Y?9k!wG>A;R!3-mg+>5d! zTr`)S6ttQlQjUzKKetFmDa;LJWiQ1s1re@R4Yamq$9u-)V)Fd*0-;zRLh!$Hqp@5Y zkH@j&%`w)Dztk#z2T=(BbU_Wd+{UA$!&K)g5W$9}t4<;=GGr3r)Aq%Y?7$+t_@c>} z3+yy>n@8GDiBzbU2|Xe!_0loWS)fYAL+SPhwdzQfeTv>*gYII^_nvKxHU|`r?omJc z%feZbL4YUJkFjL&E+b%ZELfkS*l0Xrk<9|~VBt@Bqi{&!7egxIWr+!Xv$vettoK;` z{B3gR;TTAkV`9|<)cgu3%UTUM^g}L1h4J_;mg}8q769G*X*+1Y7qIWMyYzYIfeB*7 z$uwLhugoKuu>Y09He!x2oTVC_mecdqJgzV3gGkIwagAG0eq)O#b7}`zsVPYZRu`MI zQ60$0UA|$dfo^IcActsV;2Rl!TmV>2*VrNnZF|kY6A{C8njKVTszFolbafUYa=yJV zT*ym!W}Kcj-<HEUSww7$s8{w63tghsqDf-Ul#qRjz$f|F*LoWDLNZjpt`U}Ad^vw@ zAtD>-UvCUPQ>i-0CPTLd<(N2MsJfsYx?!nlN_+UZ(3n`qn+6gct4}kb_3x%QvoEv! zNF`=4j4+Xw7vB=!*eQGf<p93X7vZlGS43!xR^#H(c^asua<$M<)d65{cha4v0@@ae z^p6qNJ;WG<9tTQ&aEPBmpfir1q7Ymt7ZT2P8)XI$$8&Kb@iqq^qytF*908+|OOun3 z+ifE{VmP{|BG?d$gnpueQp?y>LN%zNef7M73VcmByxVTFWN@ttnS}Uc)4q)AzZ9-} zs!O8N6GI6?o?%R_>aVKzVHvfD;L9?V9?f;TcT-<es|CjaSO{925G_~o9#6hOIn5~D z0~wDC;Z79Yhv`7VvmXBL%H8b#!@F?tb-c-giSB}_`CYaRq2`HPyv`p{Hp4=FS4Lxf zA%rO@w)5NYgk1++mdHU<hEHZw*W(ge>T_DM9T$v=J@PLI%toifc@qc39dZ?Ejsfbc z86IX%N}zdB8WWu5M4}2J(l8>u<{5_l7(6kNS6|OW*ll&fQkD*WskS+d6cJS##VwXr z4ak?pS#omZl;)M<oHl0hj$SPD*}PtFbU2IH(jF4qt<bi{yPCfvq0ilaV(Df1xujED zq~8pNDxUm`bE=oJeB*~jA=Zp0YIKWAj)k@BSVI+B@Dr?WETw+j*#b7-B{Q4si$Xl- z8~e%ZRxH@Dg=W78>7Wvyd5okKpoXTGIk4?Ye1L2gdsw}q{#n4x5Vc;0Azb1q0)|fQ zb&~g*pkNB)PJ}?*LXpiK1RF5rey)~oBP^d%uMZvhgOs|$CuV~-#Kn^I1pLgNcpMJB z0*05xGrNrHVUP$~2*sKuj}FZ7Np7C9jjP_Xw&mtfuFuAm!_Tk4$XxT{`s}kf_}|=) znFj&9CKi9ZkToh$^4l2NIFabbZKn=_40*J9i4hk<_uKCYa^%TD!tGS;e)yM$w%;^G zQ1r~YAsN`*z?!Jq8o^MBKWG%nZ;}_NK!xsbUJb)?Z~NHWd?ph!TERS=l?}(g%&(;3 z6hLx2)dx;=hmgzFX1@YgVZp69jh0gwzS9-uI_H}&pcJm=)2=wJhZo(-DE8HD<%*dl z?Fz1?HnVX)uvHfSt*o_Pt)KcW@osUnXKFUP#<!q#aokF^|J4CMy*I7|%p^n;*UH!x zO$5jJa(BaR4je<WE6rYLRAT($iu#pBj0;IZhT6C$LFa5L9``JoH~0`|o^DobM#0)r zbFXpfP5?LNE%flObDAR$;E^P4qPJ9xg!k+jv_)lav~Wo$HeHS-bdV-FhKa@MsJ@t# zAhH!n&4?Aj%2;XjML-Ld6%a|jze+}F66*lw1jhGPT#L*ZiolZZH>h~0pWjAon`XGC zD0>gb(ofG`apDZ6C|BT_|CRGAAYTUqt?sA%SbQAk#Y!*n`5fYK85)+(tz5=-R<txE z&H*tBo~s8JmD+B59~IfzqDu6fMiYo?J>{*orr7LWAYfM?H@mfVU#q+wWqicLdPv7^ zRG7c6>SD0Co{jV2DOYqCzI&88IKG8hIM{6zDW&CYY;?~$GJn&}y4=mIEG|NG>hgV9 zuH<WSdJG}s?XnWtX-Q)$92v<<kKG1*<rzRg#3wwC%(x+5Y%qYR*v#Ccuu&Dwg+BtA zjamt##5f4J#9#2)vdbt+hJ_ek%gD(vua{^y{8($<(9U>zMbU$$XYER)<apLmd|Pc1 zI3n_?=NHE%M&;P8BI!#rKf?lbJxM^D>YP=p)9N>p2uJ;(#r)S#hl*hW5d$vxS__@B zLDrq=whg<?Lb0xI#5Xi(NnM&>T`xqf^}aHs0^1Sb=}5#v#q~h==0D#ilZbg}17wB) zj5G3yx4i*oHp&I7t3+9*+nSf3ru-xwq!u=lbvJc{eZnJG$~;6Hw^xf~lWj>*pM<R} zxIu#XfjKqWjwz3tV#Dy^$8}8&`#(~_{~pw2X8TQV{>S%g<F$4+aikZuHgGl(HZig@ zHsR%ka&mSwF|dJh*X`08i~X-Y7$+G<*n)sL8X%BY0xw%&+{<Rx0b=ocfu0-mJ_x!t zWfdu6quKOp>EAvWA1Njuwv4l=sDvNdZ^on?LuaSRs4*o7Cm5;wg@=)eywW(nFSqyW zG{4WsFZdZH-EYRPhpb;%cX!Y9e6WKPlkpqTd>`5AZdGUcdNM5Y)3Z*uxu5nrz(w=M z!FR`LS=Wz_Npg8eTqY$COf&6y?Nm=1FrKo`mZ5B2it*#t3w7b~2fPm-@SlG;@@#+f zg!=M?F1t9BsTr92YCFJY0<1Q;@;`L%^*;(<eMQ%QMqlS|3;9iGJ{);py#WFbHHX8Z zV2^D-TxY8Y|GO!(`zxHaCX#CVjepPX<M9UY7EXECN{1$BRyMVxC&c^X^2f<PUt_c& z!?#PFFU&YCBv)oxaM?(+0iI?|{XF{VPnAc#1FOZ8g~PNgv@bka=F;m}DW+pb@TJ7C zS&!iIRc0OW)WkjvGqKiw%Lr#4x9qTl2kW-F8RKs}QxzV95|dy3__R}I4U0<$JQ_?} z!rwC)%(xa<k*E2w)L^Md3IM#y)4P^flc#?Luo}@Qa1Gf(_^n-}YVK~`h;?6jehq?S zpL>5v$&uhN{Qkk@_q^jD1>6gW2kr(~MRwfvid*P?R^lLO`|(QpP>T922ye+tV_`4n zhget=$iIS;!X_xkr>}dHhXHod-mV@C?i4*JWe>~#H_8=W<b-fzP8e?$TrO0YW~`{` zF4w%A#j*jAU^=Gf<I3>mt*VY@<ZX|9jjt1KRS#(gbI1jT)8XD3F+769)EKg@Znckv zeCySH=n>Or!as)a<>G3O0Dynr2!zL=Q?TZqWM-}qKHUm>>raX@_J(RVkCXq(0YESi zwGCo54@4s#Sp8s)v+Jwcu@4VkO<o{9+r~ndi<6`QT$7!4AKK`wQACcaYx>!4YR-NN z{s4P4Bw%lupT{=bm)ILLmxY3MqojL<!r#+aV*pC4@i_$rewqe)+v}u{EHr+UBL&Dj z(F(cQ7<Q#DO=IV%E8R;R$3{0|j$}LOCb>)Q4(kQ{FUz3q6Uo7^RAdlTz+=}85I%Jh zSg%xXkSx6f;)JVqFdHKx?04_<uwXA85Z-L)(jMy)=?*Hoh0Y`x-WJTqQJOMHX_uR| zFLc<v%;|sgyO6u)|HJPBBO&`kqm08z!-t+*x`?Ka8`}?wiUE&ZL5&PbCD4`|-5GFu zYFjylp<kbSl1Lg=zOM1kDai(+PNYC|2!W&=k=iMq4MfF(``b-~=Y-}E2m^MBBS`@4 z;XDG4kM@XSQONrL`sedRem&%>4puf7iPiBHjMR=){Cr`G7H$>pYzgrU6#2;>7yPU8 zTVOIO=KsI^j;YKWlX6K6Q4e>pd*?G8V~_hfMf`nT@XQKd%J2L8{>05UAiO3%h@tBT zO_8pzrC<W=guG`OFVeE?1-}eFkC6Qvhwts|;zdt)yW6jKafh8GeoV5jY>Uv=ClWBM z&pOlmE-AN$*Vq%N2$l;>D<}`<q}Pv6hqh~A=aIV;peqkCW-JBWoj6@R__-Gf4Sx-+ z3lg&w$}^ULGJbr(^7|gPu%ouFAsw`vXc7a)g>kt(ARd*99r~e>3K!P{UmLzT-491Q zc0>hN2h4%!dLYgo{{`yjz_#<3FEYYoy_V1&@#!6eNqhOWn+^to0LFQM!yN!aX3`YV zesU2Sw7}51Ifm62s1a#pDwV52UG)AzO5p1O7J)yU2u!`T^~jh<i-eV18G22@kgOsv z-QN$ul!EbX56#XV1>%9a8K+JGT~+IZ^;hyGX6SrM;a$_Gx_G4=LzT#>=nyCaC<s$N z<IEPbI^~W;>E|ll#_Y=Hb^;pq@LNHIPqYnimS$m}@qi6545VEWC&xf1LS8r^lU49A zzl8?+5E=Tdb8Z2piGLTsvn}ZK4=bLC?>~)#W6Fa7f6r^oWeKnoQ=gL*?~3bm?Nzy^ ze-;oasp3W^31~R-T3dMN$}M9pUCo&0OhF9-<F|}5E{|}4=H@ZxlB;8GaDniq-ip{J zDRVZ<I`tMOI1reJXchT>h0TGL1X&HaZL6yM5C_`7z@GO?vm_%7q;{rz7dn~s7^E&8 z7piX}DYirTI>XI?E@lG}I(o?USru3tR|R$#xt6CKz87*NB?EZ`?1DEQtCn6sWUDGE z3pI{yj5w;{XMV-??jjO3p<Z|;i@$9@$;jrstr~UJsQpab%2^ys;(2-^bAEb~?njF= zOq)u1)j~B?z@mS_&=MjO%TNlD1|lUxT=ASVCZND8P+xWV^YLiau;~R(P#;kkn(ooU zU?ftP@mdVxY-E_3o>&hBVr3Z;WNat*zZiSR?$E+E>oT@&+jeqd+qP}nwr$%^PHfw@ z?euwiRCm9lt3K49*kiA2t$WUw##q-zVhS2VL;_IK&_&CStidFxqIw~M#7_t4MR(_@ zXCHEo=b@RWi%vLrtC{rc!7G}^feGY+&WID**Wy}$3Nj@6VlULtO1Q;mg<jhNb*8Iw zCyTogb=Z^Y2Z$~G=k3fD!zT#rLUse8W_*vkIat^Q)#51DRF#sjM-O?+HiVDO1`p?D z@hAaIZFJ+1n31Y57Fgp<CBa-i`(X1sie7FAVD{v~y?72Zhk?GN8ODOQdQ%i060`EZ zp7`lo%wOCTeanJ(HgH>i>7<vE3rCSsLWAy5pA$KY6p_nlQ(vB`jduH83T5vyJi0FI zUSJpQR@(--Q4Gq5f~5`J+*~<^4dDZTtd>Xi!_T)kagJ<Ar~1&>ghb@Iw0xjt)f?}D z)j+&n(`&Ety9p?GV0|KERiu|>!f{ixZh>4IadB{xsC{S{L<_7$Ns%z+$p>lA48ea0 za9iW~Kyhuu{4dh@NO^fu=HpSRImc)bHArs_7oIxibe?wrt|}Ie-<Ge5{!tj?7JHR^ z=sp~jMtDi@DaJ}5MTYi8a|P3PU8$296Q&E<I)FFC5OE~Br^v;q@QW(f4QYuu$K4=5 zZ^~A=Ax2f7;txn?pvv2K3O!dSU}zQZ7X$Z~)7-H5o!01oazsi%7XC7*dDWEo)a_bo zl9A#C_z~earjmtwH>SpMxKORN#J{uX=qaeXE(xwF=@Cs@f^(2{k3%N6C};@78^FsX z4l?s-HioBLi@w68XsYxQd%0HIn|tOf?9b`13v{^sL@sb+;hYWK&Zx-}@pc-4^J1|O zc>4F+6l`(sa<iDm6Bg|^ZNCQ!B6mVjC@N^344;Z!@D+|b*!Pa)B2`HKv)G6dv55`s z$%pPLC6!#bLXI1=*yBKfe{Kf@YoNwZ%1MgZX3SS}6_)x$nTNP!A7?UQoc?3p4+gv> zle2Osyy>h+B&0S+7v&a+Z(`mZDndjvKEc8kQEfxT!8}}MISY)Mzc@HhEZ_m23*~=S zMurk~+A8;L3skw3p#?gG2m?tmT^)h5lC<lv!$wrPpM5QD!0RNxR9$wSa=RhiaLG|> zBo9!mt5E8oj^j3IkkBbR87WP>$bBubWCBwx9cbW`4@~rN_6Cr!KU0=jHY+WfNpiF& z&K?XeQ*(kxB*0&pda}#Q7P!zrAvxq9sH~{gCc9(_GO8?atRoqT{3ewP={nmnZhv0j z#OGEtXho50p3|mCgm+wLL;fW83+3(-*H@pCs2UKGT0hG{IZ`@Mls%P1I4-p2_g_ke z#Jbunf_ON#-KaSvBnqjOapx<9pXnQlT3#lrQx^w*mW$>K$^ui-?h|Z?x3hp;yRjNU zS1iJyr6HcN4v^r3vFoU`R6Q<N?gCQG8o;Q)fMeQrNkCHsC~{s`jdr(5Vp<5Tt95F; zMeQb$S)L2AhFO~MhO#5`+;q+v13#01MQXt=*oQ1KDe>p!iUoXBy6nSS_h0ivn8=f~ zokhrTQ)t5-_y&pJuZ^B1@zlbwz4zi?(3=m7ioJM;y~g@+XhcfUR&{Jg1+?{7gG5Sv zeqMPpDzo}hJd4us7%>&3c)LOhCuNQz`SS`(2$YNYi(+Mc+#qtLb8~M|%rI@aXbnH6 z;Mp{2DoQ3Ao{@nr-*s~o);4!Y#5OOMD$aY_ExeYOaKrwMygg2RTE{u-U6oS6Jn>b9 zf$-_}e#2sxSo<OcduHekdRVU8!unZj@t=OehvD#1`P|te<7Jc7RC_iL;!p62+4&y1 zH;@+2u8_JKYdz`VQF+u=g(jSg?KL2iD@N1MS6Z&)z0Il3F0U<bR%zMiCj)%Xs76#G zv2PZY%7CaLPO%Zi_rj2}5V4u9Wnit&cM)1v)A7}j2+WTyK?a2Edg{hbKD<D8l)0c* zy6mzeN3-r2pkXzKBjcDD{*`I}v@dvY3z#5MFu%7ttxw=XFt*^QZaua*W_D?wM7HQ= zBHf)h7ZeI0=}utFzF7>9ZQltcc(SqBmQbpjBXqhA27|P06Xqp$${C;?uAD6dl~d8S z=_S5G_#%Nw=08tmet=k~6`kD*K5s|}++?GQEUbyBgKIq-q$Li2XTey6No)EeVA+G> z?~;5ypx{y2vP|?H_9aFRZG@2Sn|S5TU{#5aBdvDYVu9SIYUL6%y=S44c_Zb$FG`;^ zo48Q!wWY?(N~>^L>%jM??sM#Vxkm)p^R3YBU_m`mWR|-c{zzb}ITmRt7T%~<G^@pm zT~(m97=B}vq2~hk0vPQuQ1H2OvF)-8(!)?N%f0YHuq~(O2RMY)Xnv!A=-l>Cn@Mo8 zj@8_0A|>Qwy1a7q!Iwx(DU$LFvw_L*^%MHx)Qky?g$*6C;wOL6HYm)!KAh9~K>14; zosdD*O0W3OM2Yeb#&YINLUw9wfo|Xr(x(oULl;2MK5PzCA_AWT<nYfvjW-=aN;FnD zPWIp>*u_%qm@C{=P`kge<#mfBhMRwY);*S4G<~keq10rqfqlsfhzK?Gl5Q4saY7k~ z&tAX~LZRHTjwq~(A{bu+$09i{tWYOnOf&<EtU>X>+Nbu44^{!y+<N6wA4!D*s`=bU z0B;J$c>ootN+*|{;!HVXz!2o}&$HW~#&I}SZRyTdSCQe?Xl-!|A#li!`1u`#5*5@4 zD(X!dnRw^)=;Y=r1zw6E65dmHGc(NzxLWJWIV=w&?<0GJlw>El<Em`7l?jld%wtQK zzwIk<-4p&O%tvS!Nn=0gYr&-3F+B0YXbT4lnO9%x5p-;?9g7ZC66d*AaquXWYW#n( zfUhZ}Uy=~E=MY8BKK?4kI3HDv@Z)YD#cZHO3O7Rx#V3C@-hfR{M1GIu372XQ6(G)r z(&mU52?oIyKPYtwrSYZQi#B!^X7K1L7fE}5iuw}F;|gPPB8OK#58SUTA-^uaG)_%= zU^!S?6ebHkCp)y?$ZH|@Mh~z<*w7Vm8AUFKl|$1ydT#`Ga89l4A@?i+0Yvw_^b>-= z!GR1urw8B`cxCF}fa&7Pp)<xu5%H;n|2em2=wyDpFs!M(6K6o_lD-X${~OQuQ!v;K z=fsWZh8=lFUzMk|L>CW+Xvfz7K~o85x>Aw5kg@t;MoVD*odfe6xwTB;j)6vd7#a5c zyUV$F!0;Xf&)?<IIqGGPYtSms2WWzqaaNyBqInk8Vt`fe`FFGDXkrC78G9`bS8!S( z_F!Ri8YxPHD5_Mg<&^&Ho3-<{z}e%QB4M;>zw0cDG-gz2T&<kdTCs!PkJS=ivFLX0 zs{4a%mwHEo<zz|-zZoiW*1aCZf)TWt<by@!QB%fnY}S5g?C0DRvvGU|O!NFE3EY4p zksjxaUQE5r<)0Z|62Gc7lSP%c0juVPXx@FYZPN@G<<Z<t<=ZzVk%H)!+2kTCHV-@5 zQZ9lG-#S=*3aUVKhp(dibob`QHL*9~?ziC4j-uy4=+mR&ZRrZ0rbpA8Q~>|8W#RI& zOncC@9tU4vl4>wuk7CW;OTC*~uB2acWhq$Jvjos*1jq|J8FEV1CSIx8oP@H=Fw{Rv z%+La^Y>#R?^+P5K${d*`q+A3|rf(cT;*3fi#w0J%*Y!04L~bVKp{^TUiT~KZqmePl zF)&>~gV;0?w;3cROE)R>{teF6HGCJWNiQsH$Q?eUe9U`0S?r$oTmeeNfNwuA{>?nQ z>#EX12UF)JDDpv<;tz_|GjwcYA^x&41^Dh~KEBSXWm_H3c^9#!=+Z$XT!B>i_Fn=a zQqnBL;=Fug05K0tKJ`+L##T7!$*#+XGS-bLw1a1$mCRT%2OiOwyA&n%)qKdFr$<Z3 z3PU~ULZLW494+d!oipSLSMd&oY?@u|1^0I>$(Sa~fX=HAnRHpFr2`cQ+)Sv*tVX-$ z*{45EXwS|6(_xG4e}KNRF);rx4_gv(G;OfGvvuWCu{tZgAb$Z~-q!y?-x9mC_Jx>q zfq4cU;NCyq#S^G1Qg0k`6NKdC)GA0KiT>1@{1Y8FdA}Rqtya&cAFFld|M~eiUNpPS z<9i<{E2(AeKuLYwrB4-GD_L3AK)*b=yzsem_4qY-|BxGL|G)w6EgBp>NXoP0L+MOB zL+4YcLNfyT_3hQ@4BK_)O+K~T@q2!{`3HT2xNy{{8Rx?*Z_2|oy7YzJR<^flX5AnS zW(`gLe)!lwho217`|0_*yWI7Azb{)YIr>BQ`*stS=j;2iiaVmw^z}YY_v_tg(6Y{b z8{@XO8TKBi=Tyz+U)-+VR;sNu?u_8^Jf3DO0~y6y<-m5jSDEG4%_nm>0$G}2hDDaB zn`fIQWS7>odo%CcwKZ;|>8b73YlIfh8j};Ajh<ef4VmR<FykQ9rE#Oc{LhQw%=_XQ z5MkssKo&b~jX!(yQ66sehi=zSvZ-?nYG_wa5T(!a1M30NiK2lFx}a(D=9N8u)-G=f zi@+Ss(LD8+N24#)TB*<~ss$h--ReGo6jLatfiF}O4O=a#YIdBni{uMmnq~QI_ypB4 zOYolLu&OTJMT<Fi%t~^GpE<JR@de|wX>>xpqIv}TQX24iPwY9J&@2dZ0V}7iL)|EC zQ+QsO8gfp2LHNps$g()~##%Y%XdxI`g}A3JqdH-4Q+P$1ahj9Kf$Y7N-1_j)rr5eP zqu9ylNcvHFb!<E$fqA@64w=|2l3Y|4L@qk}Y&e*hxXcOPA~W_|5l-Uf_XW)8-UZpN zZv#s)AYPyz2c%O~Pr4ir2v^levX!nZ(#w{$Vj#TVn%1C(6HH4wWNtq;gmda?3u#r6 zU;qqg{Bij#={Z(}tENL!OX|g@2F6M~N(%E1Pbs|F^@Mwc44tNyW+-D%5-P=<p^9C; z9K&hA8}tI5fua;-zRrqbI5pF9L<utTFdqZZjbUaT;J{`8SC3)DbPWy-<&4_Y&4!N# zQ~!ji+#kfKYR$|4C!p8ds3Juza_)~7thATErCFW;55};YV4%grThu$l%=;Pi654Bj z6BIhZ8&-rLBPz6We%SyN6jVJCf|<cX)hJ-|d;i@<|3&z_z3N{Q01OzS?Z^30e@NK) z$+9Z|llnVpy>Pr4h>`V{C2PyEZlv;<Wv^-##yn8nzvT9)9D?29>t6LlKvDf>Mh14o zyr4gSNy?z|K->)P+@TOw-0>V^W=y#BvdtwhuRw7gG=?F%9b?a_$^Lq8lA)qiTG2Xu zYyOx5v;o*j^~;Rl69KFe1ic5O4*nPp?p~|v66WgbxFYUg;TqP1Iq!c3w8q16Aeq#F z9sr+_aBlvPORR~;$i+43Dl%;oP=<p%IP*<wDO>;tqfh~hIg-r_b?gz6KDd}R^2C<# zs}b5PisFDEZ3IQo2)k^)x%(U~UoN_vk=Sb+6x$VBeEp&lG+Y~cduBgJ#@=(i+ny%J zg)utmb2t8b2{0!5LH44TJ2_P`AN4jFar^ntcRY|~&e&h`IoUREa8gd#-c<gt?o(+; z;?!3OV_qu%3xvHH=HsMO5clf85)Y7rWMY5Cj|kQuzy|;p%LX)ze*T^cBZ4|J=NEer z<+j*8T#ZnbnF@nL03vL?IDih5EM~p~p}jW;G6@<CM|QE)u0Mqip}Uvi&J)&he?I9z zL0o*^rhCYlUM{y;&C>|_=P>6dioFd~Y$DqR87xsn(g8gyUrg^V;g|x<s5Ibfgj}7C z!|_9b$T<phX4fH%1soRuMyM!juzgUG3-g)~LF^oJgC3}F1XMRYHn;aL?1=~8pIYTH zhyk|TTvY&Ctu>D|k|@xcwb_||CLA|WGnxH!^at91Z}2eFS7)kkt=p)^BmKg9=6Glj zhcNk!;KE1&d^^?*LM5K=km*_}0?UaSxW%#?zn|J=(vJ_>{+jL(;lkK;*qOJ5#u6-K zmAiIitT5|G4O;s<9-akt-IP=zOW@yNd1rY%LMDi_-pMOg-|=Ki;G&t<WV$4c4S~H4 z#Sv|TW}93kGnNHz#~UMQX%^q=*oTVFvr6++@uLsOOv4im64l!CLkTyP8#*(ZC;+w< zb|L)Ji^sP8z`4#Bt6zb%bwi645QO(T7Lt44kr2V4M5~Y1j5Un-&J`c)l+)?6dyr&X z@>jdpjx{?G<%|&;=gdb21F5kMbqd!01BMm4u6gs*?O;N(;YQtrxz5Kx#^^t7xO&8x z1*5+*z}Qx_*bC9e%HWwn5FwHur3R(H=YvI#kyJG0xrxJKx8wa9jT6&eA!Pz6g}2JN ziwq%%iSt`vhK4F&u~{etz(rq0dl(jXrH)9%v$wFL>8c1q5G>Sl*9S?g;O5;06`QgM z3cryEI43`4f8)E8fLVc+NTD?d7)$JQfyRi?D2t(0d<uw)&U`a|;4rjsgEt(ZI>@v? z*t1|#uiWGs)mLac;bLgON496=nQ?@_P$*Zc0wFbMRn5%`0fM-iK7qF3noKySx*y+s z;XxgJ0^*_^d&@DO!P;~7Q^sJ@-oV7_;35<f4g#D${Z_!bu|-FN<vo$Sa3}j+hWg>} zuhauHyl3vyIh#T9yQ1*{SgVn!J9a~`^SuL^dn+EDU8ehw;TN>=-GXz6J0npxazKC# zT?vMROZeJi|FsRIV%ZKEB%Q4UUkCZ2a&N@+fFkjj2;`ZQp1pdXpgHvlG$z~=y*M;R z1CnaT7fe~$p#5@B+jGKZzk2A$r2Q<P<cco&lE401&+Q%sh3CB=J3m7HxCIZfS#hc* z_zXpeY}6Fnk$hSvygbIl<Wq!jj}X7v?~}n{>$80X&RUg@$CM#bAdK>Dx%N4Vl7@@4 zLtV#zPF~U@*&`z%RX8XDB3_@}g#@m>sPt~Pi3VxGS%WJWKeMS{4;@_0UG2B*l`P*j zReqFXC}4KIEX`#SIRhydwmQ)GEJ(_^adPofS2N23<fgKseD=A8)d07oTsr8_pCx!v z?s3@%j)-<YpvkWu`NoU@4GwCq1SyX`bdEhJxCT-Mjg3zr5<$}l09Up0;}gd{RF+@B z=ngPa4H9LTs{d2eC+ensvx~UGY%I(dk3>ze6z=|>^M{}45DN3YmBql{T1WjD3g2(> zxa;jW;am8loi0oTzu4)<qLx-XblINiGyoO0&zN0H7F120)cMr88s}kNeFu9K?87+N zz22%!Y*ujlR&rfySiy8nkW)uS#ZW$tuPAk<0f_VYZ@j&9B~S}Wr3m9j?VGpo)$xz) zRa=?51g9)v-Vf6=8qmWDB;;+=2Om**&Jhx_N*;;B0!h=kPFGa|vsIkFT2>fDW)o67 zTVptoPyQ&uwGOts>%#1f-VUl5xKQ9jtWbmBj=><7H^)b}l{D_$dV#iQ_Td5w<tWjx zHi;`qIEU<hQ88eM8Hwf<)m{-CSTB8J@tw3nV8O#={?ykMUHS47T9&CGei?+EtAsCX zXt$1mB&+)k+u^}E<=9T1fgjkXsmj4tn63!}$6w<DD;P0}c2vYoyqz;)V<CYAK$L5b z7ex7BZ$3#?G>w?SYMQ3l=e_<_T2d+~%5#Nv`U;AGs)4#OK$CsbSn<jeloQy6E%SwQ zMiDn*w;9|>FX2NvkwDEHAQB0xI0c)m#vsF>%{PlO8(mKB6^0YwX|@;>?5#Q~7m^|y z6<!|^<b@y6oCyJ~^B6~e6s!k4iaH=8Gq{{N&si9cW*n7dWI_dSU1H3st&47CqmF+= zFaFJAY^M4~s}MJjK<@>0NC`^h$rJsVmP)h0NV2a9f1;d^6gO5?`$B`}2i4iieQq66 zn$vAp_+yeu9#1Bg+bda!ho0*%?fiZ^ElZ)z>r>(<43;8=l6(lC?B_GRnAY+lb}uJI zr*lya#+ak7`)Jtj7WUPo#37OKZs=DMog&o~=idRU{0guXQI!1IKs6Ng;S_^OuQAR* zHlbnsmL+MMu0|)CBTILLfx^xNBC3AyN_QWw=hX4;%LkQai6NN0BL-;umt1HloifF? z@wk<=CeCpZzWnLGjqQ@dx4Y6>qOZ_g5EIzu#JUN!h**l(H++3_`GT~t>))oCa|8`& z$qKvu^nBa{d*h#8;@Dg~b2x#m%}F{=bgwrag@CX!Y!Jsg{Y|+J-qOfO(Wo-)<PWUM zwz@kC8>O5x;?7uS!T8XfrzzIWy99fJY1X6Lge$1{^;W6w;nAg$-6){YVC8WVx`plw zyh_rmq3)`8p}dZq#P{UwM}vqI!~w!97dG<xkDCaX5>)w2nIUo9*I2&0WnhU#9;6?K zFstdlca>$HuOV(VXm$@B1#<Ma5a3~FzEklK6OLgIMZFfy%L1`9Os+zw&TakXBtpoO z@u#FmMS>h5K2I{wm|{Nwn~q-#kwE5N^KcimMnXO-(Nkf8PrbVt+$=X`JUSwV`Gw!r zqdp{<L953X>2dLTV_^4w*{2vj?rY>TPGjvp1-adaIspoKx3lHJLYvyhJ`)`+oEdC? z^L%urRejD>SnYzJGoEeAW(9kQ>D8Fzd~KEQhHJsLZ7c-fPoT!GG0j%7Hd%YZ{v8t) z(H{HF;mgz^QVFV}zSGMW<vooqd={~hxcqUtM-C(L_o+lsnCFv2<DL58Lq~VS7@H(i z0DKb7+r_9GU7xi}(t$peNOZ3I!pJ3vIcw7qHS$g!P4jG;)fbeO9*VdM)jl|p8Ffin zY*`wn=DRPdEKFPKm`8-{cEU`|q6Wm8mCe(eWGVntl+R5zgv!^(E@;8w#XD`Q4JBuQ zq@7y|ZAdqAJt6Y!MuLI4d?|~|WLU+`)!IJ5M;rixi)`hdd@(E1$Chiauqk3A>@}_% z(pg>{mxeffE;J1A)5g!p$wCqgGzE=04Pvj8O2s*Y7R2#sy*AG>Ozhlbo$!tjU)MQW z$dhx96C!d`rEHmXO#-nylv~%xciCg5!WPdZ#L{cR>1Jx1-Kg}&$daBeS~~>dAg(0v zI|n3y>GTibM%tz;x>nL@un&XRjd_kTz`naZG#%hXpT$Q5y|K&4gekC;n6LS8qljwy zh5afb+#JHNfItutQ$IhpHtNOKaN5XS4U95Xgh~jlBoie8$HkCVi_{+;6UmlU$3|jq zn9eY@2^z%2hgAe*z@teqZho<a`d1L$Q_8K}ZZVBLawpXa|7KFiw^ec1U2B`j)?l<g zlkRWM=)Ns%Yx<ltG^DG_2NgK?V?noQ;yzE=xFkcSi4&b?O=!k2(cZJl;<&GOMIV83 zvb0dIC?s6sxyiXKc(f;)FcceoXds36bP~8^(K_rJSeP58YszLSId?JvS&G;0QXTdH z&Ci5gqT`NxkS;6BVGKPxI+QNiEb6LvtBDhn;L?+6416wn^6n&RK_9es%IE)?XH^!x zDMP!{1=s-y)^kk{@H!ldEF^^#IfE4XL_HVV;_~{;DNw8B-4@Wy`UN5EpiJAE6MkS$ zOAE`dpJwD35nPl9O>|)yDj*-?T=l?0y~v+@3rkg+YgNeSAoJo%LFujxWT(6P8PbAU zALGWUPuYXTp~Nxo<4My^F1>4yxy>dRN?RoIT7+8DF*=_}9=k$XSDMd+C~`!~fsC1} zh0~4Oo}0JJs0-JfoG|3XOB?x|Lh_eI!)j7b>^fPCoe|mGRi?RMP9R@)+tlk>7WVOa z;Bw|#^mv-Db_XSWS-SrV)@t}NmP0Gjy-p}WQ}4#mzPG`<XnmS~<sPjRW;~o+i1%^U zvPCvLy3<7`K9s%~<*59LD>fyA%-dm4>QiI?ha6KD>$7>x%)YTtD-p0G40W7!^_r_^ zjFl9#e7l_#b1f52L_#vIT&2`$?`WW-dQ9m^<DqJY{9AmGdfQI?k9s#7B;sJ#Y0p(P z$Kt)D7M~`&Y!y_~-nDK8#sw_z>@eVnyu(gwkBhoJn7(V;9TfKPtNZi}QQIN1^-U^% zhW;#?avC&`W%QO!2#|MyvVT&DlpgE;1;C0eAj|1{m%3cbY%NxIniwa-{=klh?LY;q z$aJ_w)~Kokem1p*>>20jr`-p@^S!B|T#)<5tVn4(FraGx50}JceDK*9x>*V)$NzXp z`tJ)VW>yBy|J5O>MRT%tYXot7R?R-?nBm(O<S(f4`-Fc0O`<uu`~KEiBk-7gwutYa zQ{_Kv(}ZTV*5CvDX~s=mop@!kDoV8Y=q=tZ3eSEq)GcSjUQMF-%9`0)J<#)X^m%lC z>U`f{dB=zJ|1frgar9D>ewsh`+oSk?onP3uhr1Ukn!fwN*9UfbI?b9tj`Nd!bQ?8X znnpE^V8DFS>@=y98<ZvAh0|DuaFmX{?Hl?^b5tE7RVtXcMa=6{==5n8TO5B`9%%+i z7AB89xt=_^KA&@?R~K`%%SuLFPRT6;)ECzz#ykQfCN%2bp`2o|H>MrsGBr}uCg0Z{ zLCIpSL9<xcs(hNaJ1WW>@KbNQ#HyCv?`_}lf7-o$-T{8^=1KE{LKn|X+`eJI9`n#! zxHvLH@hgw}&~4PvT_C#K%whFj8Obk)k{FjLY<eaw=6zKdH!-5;rTTYeJyKG1oVEAc z{*p@J>)C|XUE<t}Y6~$yB_yz1+c3`jhwrbbnWC~$4su=)XU!-S4aFS1j9q24AW6R} zQ7ECxHAk^Pa^-?#nVc%eRw3%Zxlgi8aqEI+h4RJ~!74SyDMmU&r1u(V<JldXIL)-k z%`P&-H0v0XnT^63_2rm>!YRc=>4@a6ctk=^hJ(tv?vrf6^jU$waQoZ){!K~bM{xt2 z7pCTE)udG`I=E(EW!)1hWE5lF5+dZq!(8=Z-<h1Kv321sj<th(9HAnx3303a75O_H zwjb*b)Xz2pRK34ozzTzUy*IB7?VcOM$_2QiqAY+}#+f(Lj?fL4PF%Y~4CCwyDYu6+ zURtiB?=NIUXF*Kpy6h1mOl4K|kf<80EFG?R1+@`_b&n2P9D<Z!s9Zn4C!w7r2x3|V za}qViw?bUWQ|u33R*l4@V($)(Xv#W(op>0bidJQ)2VsNVGg`}Y6l4T)HIo%R=H2nO zEEYuBkj)cRPF1E)`xMrvJSK7E6b~6*n5_~O!rT4Ik8uNe3!qaS@{|rgjzN!5N6|&T z0Rm4D*`JWz1G&ab6GGlTp$WPcg8-`H34c~_^p8o0<AM5kuEH4eq3wdGkA<--(r*kU zQGx;dnx(2&N^tVGkW*+rL5^t-p;S^d2veW03Ra&={R+Lc5wn7i)byN{Fpl_^TO96F zFl(&@=pyHH7iJG@uLg2U`iFs|956-BZz_Hr{c9U<c=;TqDPn~F4yHYO5lT}!9&w`; zOPHvJlk>I#^Ut@;?1pHJU0hSHBoi+JJ;7KQgqB>~9tayHx^%iovpqNi$y}|5FcBsY zbgF~CaZxxJB%ncH1O~(A$mnNL?V02zc9H)fRFQX)^x-ajn#U5^F2`jC&Y@4}Zo|=` ztQoBJNtOwg4BG^I#qSbbQ>iH0{VMRy=eFD)#A$aM)A^-nNgZ+8&%yU`+${o~hlo6| z`Hmkvech3kL(|OK@X4~K+4IBC;=}$d!KmKe>&bc6tDau&ZXeLaEzJP{8b3O~x-Vi< zUiYBk&R*Gll$_cn(k+PYKDgmcQXqI*S>~+$^e5f*Fft*+4>&h0<XldpPGQguEKkRE zvJx;xikF&ScIImLFAS|bg9cn5`&-ZU&>=6M(p>66)0;4)iFvKieW$ijTzA`bOLyVU zI9;YlVqiAh9HeTiX_)f*@zJDq9J1<jI89-98Ff6WloAqV0Ioa(T}?eRm9nUx#%)hd z>U6)jyx>tiDk%n&g$r=+0TVg<(ie+^7Sbhk(FTSB@bI8cr6?6`lwJ>-PJiQtOdhHl zoM9BxGYQ%r3Mf|MHxeq4hPyygbXK8k*Lx;UR(F=N*R-5yNdqM?>iBPkImB9wXML7o zN0{aIQP?A))XDT^eK<se66IT4NU2{6pV%KP)!5h}yl25hZLQ3Eku-l71gY|AxKyw> zO5Z{LBWM=A7_{^|V~IS0ihi6IshjD&!4u(a+}u+Q0g5@4e(ij$e0zc@8`a;hF-Ck& z6WIQf9i`}IH+H2d#-&_vmr~FuJ`q=fSe5%zVu@E4ifxojXR+NJEH;F&%fA$=3GHcf z#fTPZrqov<aMCf0vn0~)GTImjvN*kk7_VhJFQ^taPNvYHSaGi7p|Z^KFn2mfLsSqM z#1g`iH*kMsoUsC$_AH`=p*he3sClHm+GH5hU9(WaNN?<eyyFzUOQk74QKq*8@S)!z z5oIbtTw}R<4~Yf~ZA1ams}O7}bZt|q`vy7^qJhE-b@~tXPx7DJW~L)Z@g=iWl@zyW zVLI-*asfCpiK!FM={H4NF8$Uw`-UjPEe{-(VR{VGa^z81J$Ntik18%UwP+N#dfFmv zJHu-)e}0hQc=7$k!D~HYc11{a5bM^sn3%`vG!V+DtHk}#R&g76Cg_&xDu`7j99U)` zP5I?$^qoed!|d`^g#yl7rxw~Jg{%Z_X5iy-#HMOJ{@L_UuX6$G&&_E2P;-|tCQ>!z z^Xee$Y!wtN7S<O)k_!Q1-EH80o}Iy3I6XVZt&8{7e{-BUgDi7s8cHS(?{lQN*fQnI z-7r9^qdNlw1;MH}qqz`TzB4AD8~~SCH|D18BqZIc6J9~=Kpe$#@Q&_Am8(O#_|Yj` zA%8?SAxMwu6dwOB96gv%qe!D=ZjtBJaUnsT+d=~26bm-mA4BF_Kqzj~<%cUK;Vm2$ ztnhxI@6F-z^T}mt->2qoQK7IxuhClk0>diSonmFDS~<5TbE?pCr>rOw6SAJv!|nA| zIhH{2aC=%T<KN8`uItC6g%UM^0tS*+hC6RqPGt(SMqk93i@hjJbZhPu<O}V7nCsfu zqvLY)5CqIHLtD{`lb77ye@dI;t-ro}mvVyZNRDe@BEP3=r!nAD8O;L_eV32bezH>l zTCXXZ#w7>VnWb1wnR6oUzTV1Z@#u0139XYi_q$rzVdJoqV|QszLUk{zNaLPuJ;=I@ zIFe>ZdP`k&u#Gf*Y+81Flp0h^?la8LUDYheB?4cD<0A?8$8?%{{JdmvtWur#Y8LgY z6ykxnJzD_Fiq)ssSD_?UJ29z6J6D@Krxb5n+SMpGRGYg%FZB-k$muT%4^LG_MEb`7 zy2@%@TJWmP&=#eeuN&bp*e@=iPV-oP*%}q77eyx<^K%K1s$}lah~t+(wjcrbn+TR~ z<20aRGBu$o=!weQT3<>tIf4mnD=pUBx7#@d`MLnrY1%$9DlKzOHYC&tIR{z2Z)#A< z@kJRp%Nl^9@8NlQiI?=}5IS1E9!`zZ<O9@bJWbk}dNlXO3+Lu+)%HF9X^<-@E1QYE z;qp4TX*wq86J!S``B05L!LPOqCxS(l1DZMfhaF4KqZjPI2j75z`0b$#PIr~>tOG&` z<|}Id{d#WF>FI6jZgWd}akLE|%%0WVXzB_pV#pTUwa!V9q4%zD1ua_m8H>Yn*B>Qr z4$U5^(51)eaGWI7+uHUhJ2(9^9yFZsRV|w1_*h8d>gheLwU_qFqX&HAkRBd*;3P69 zOz_kYA8E%j=eZ?3{Ha?P!GA`Hdvz25HP_?6>6QJ@0O7Zx)m{bd3>`o@4y^RTz0pbF zrhv(VSXL0R<9vi#66Bx<mhB{LXTRdb4E(T<DwYY33K`3tu3&jApxQLwHQ;{{zM>(h zJ3we>#vk$+kDlT{OFgkY5x!v|np0sw^PtlMOs0Ht6<u*GVm!@N`T=T{+o=dz?s&>y zSVT3(F9slq^VCw<`qD)j)V6}}q65#yRTNcNwlfc8l)&9%vIa+p1xzDXva3qzeLV`< zC6&;$%w~{N;R;;5$bX`tY8^(~($vQ&6C1Ciq?n8pffP@j`f6#Vi6!L2b}o|6cM>Z1 z!fBG{qg^8*B6e+GZamVuQTsrbIDRi>v$evzB7~7pIZ5Ru_-HX#UVk#kg?76AhGu9E zW%JED6(5oj1G`!Z{&JfSjz$v=<{ci~H}#l=C_1bl1C>$KbWW39<JhuMJHX}G#@M8J zadR_pb38NjHkp+i57V2=(QI3~7UoIG1hdsJMZ&ZaDX6Z0dCXRKS@cnW3pFNCJ3`%Q z&CV*B5zr!$uy0V+J*@}*Fj#(wj^toHIZs`A6^QYCJF)5K<q?zJY3ZFi50B_fUDxoq ztE{^_)qTmuOVK3I&cr9!?}qCI`Acuo`tsHYlGp6Q3*+*Fy40k?bC}WOn~XT&6}`3s z$59zD6gN3m5GdeQD7NaKE8G!Em&m%&RfE5hAhqMS9bKcQ>Di`}sTzbg<y;#VScKgw zPLj$Dc-6RiQIfOGqSc_dLwaHBwL8+RS^E<3*^rXGheJg0_F&l)vFV^B6ubhO%rhdJ z{Y0m$FrS*BGkV<PT1tc2IK9#<gutnlYyH~>L-uKFx7N{Phr^2$(*TO!xzGO(6|t;s zZ92qmE<q|DT37SJ-74H-<5u*Vn$yf9#A8$4dYt{v`w;1>N_wXC06f#j7{_Z)zN6)~ zqA^Kiyj0gRlCCGRI<+lwumH$8pf+vy$zRsi6b9Y{=^dle5i&)uCM3Om*>B<926Pf< z2VtkW{d!{8tnl@qD`RkH0^C;_IQ{C?xml9sHuunA8k+{Q`c^D#wdo~**@1<rH(7N+ zpMovk?MfYwdF`@tv(&47IlJm$lRJWBF?rFVHS>w@&DP!cKSe-xw*Q9CVP<Fl-)#w& zwI*Y6+Yq;R>&|3S+ooTMA;9X5CH^Y{CP-Va0~&M85cTCL4O6kLx7p3c&=8CnvMka! zs#lLzC?#v~(V2R<F~0rRoS*>R&)3c4`R8F-D=)Qk<w#L|=eJ(ncaW~7cBWGuT~F;c zsBQ97ZZhl-#^Hq$%o{GQFOBcR;&Pav8<NgGxYDqp^xkDzRf$=9>1P3t&+E_TWY%l^ z1-p3Kq@~Quy(rh`1jeW3pD;SAcGeB7Yoq}zp$T7)ALsY&hx0T)T719nOZq=QPu<BM zpT~B){|s`clYit;%%&ekqjY{88vbidFt=Iu9{Qg(0ssHACTK?d|E~$?bLkho4gnU& znqZQ|XVWgX)#}{D`f|sed%6-YS)Ms=zlLZKtUTS29CP&(9nq|N2htA%U5m0Mm?s~+ zJAQAzA^+cuxz+WlC4%+o@NVFgx%}@h?B^S<^zHf>_=@;M-cSZj)GTfL*{y!IPj3oK z-yF@=Jk?LHT2H8za=vF+6XgG16VPJTaT)o*w9v5ClBwk-Ik`%_ai^PC-bYPSU$KQ8 zjE|`48C<rSdMB(VX9t*}NPS-4=g#6W8<jR<*;O-xE(qZ-8wF>>ii%q~@0=LM=+q_& zCsiBs7l|j;uS%3FXnHnEutrJ&%PPh^=$bW%2Gk{~Hx03zln-efUFz1$#H}hcYM3_8 z$RspPHE9=-k&Da_{m~;6nL(0^%m&Ft;T(?w6cdsC<eOlz`PAVi>H3`n9zPIbwrkr! zvSDE>KEAlh)S)0V(=(W}t*PG)x5vGks+mz*o93gzLrd4617wqy3%oB0R-8auK?({h zL0|1<+(|W#_sFGpm|iFB6l(|ME!sLm*oVd;F-=3>iXQprlMV-Tf`#}h?Y|qBxf|*? z+V@CCVbIkz8Ye_I221zVks83DBhWFKARb5UjwCk;IegDdlyFBfsvtB5ey=BQ305X_ zz@8lqyj>r^n<`dT^tU9y53VN+6P8U?O;eoc7!t0H$;OMOR!4>bekAJptK`uGHz7g= zPL*#47n>U?1_k}rWh^CiLatSQM;#~;{<qQl4U7W-GoFe5g_t7^K~mcb4eF$UjTpLi zd|i`}ItDz$n-0^EK%+LE`yEQ>4!N8JgXAIbK3^tDXP{~7QsgOO#RwUJtN;-@Ik1QD z8!$$HQ|HM&F`p!AnoMR1wSlfQ-Er?eQV#JP7fsL$m4<Alw3XvDX_#zrM(d2!C=B*$ zulIWzaEr)Y3u-I*3sDIWmMJ-Io8AU0wr{g2dfkAZt_z|$)LyGVG5EaEQ+N}k2<8pD z3*M<dyy$RuHtoLV{?cKoD^VJL42np@F3^m%xo`ozyb<7u6XTl$GCK-Ek*JzE3iObn zq!>v$0}V**nUScf{@e~4|2D3ZNNJ-N0~E&$;~3in>)#+~%FgB?rf4V0s9WyFjpn@_ zvk9#A`d`Xy;rvg^yy>0F#8Mc_gR8%N{R2$AMT>zVuE(9&8!NAQ30a(lwQp}yO<}0H zpXD<C1|&e}QA1%3$}hUq5Dxpr&7*@@R<YtP<sw=|0Hn_{kPTU<wT;+Y+FA5~T*J?k z%N>0Z!{asW0wLN_!>z6w?j--|EP;r?Krj%z#K+>x9}+NM+sl!eWrfuN4M}Wj23f&% zkXhCzk%D;Rs3I&U{n@xI&jhusXrrxLqI>U@nRZj^t0qc>S^i?kSqyf`^u%~#_s(0h zccv9RwQ=o&rL!pQTYlvZZ$2zjblUiGN`+mQeB7;pZc$s;Q|DTRX;S*uA};yZcT6Qm z+jyHHU=e1%c&U<`qAGc~x%C=dTW)#$Jl84S$nG9@Lf~=6#}YWpo~2Z?k2mb)D`)Mv zAcdVFTC7vlwq_{O*Bo>W>w%<qiQ5R3s(Lk{se7zu7sTD9TnrDy7oKKVk;)TBlI03B z0^=nf`VE;{`Rv7H>@*{dMLQNl3gD2>quwNexU)q8@Y9_3J8hw|cT-yJ=z$)^q@124 z4=h0-I<vsfF2j}>+#=G6h|g%JVu=@6ssxY3JO4EJnm*KxHl6dyp~z+FaP%vLZ{}t3 z2pK1U^vwCmSE<MLS?J!pj>c=Wd5Ht55&K5<iF=K>V$!$n9;GyL5`tRLC<;=%H@TT& zwYeJL#2Mj(xdv?jhvCW|?LcCAEz3e%1)kO_P7{AE1QgW?0WL<9-KvE0l<272mte<n z1uILe22gVmN~MwajGYVX?wJ__WVj3Es-W=4ZoE~Y5ln_%+Iru{L0t93Zmk%?7xpHS z>X_YT!8hF|3CSy^(yfcgr1-|D**L~6Q)^Uaf*1Y%;aMw&>S`)^ag2JLm@{ZjYwCSo zyij{)a1;5NfL^y`HF21QycJXHC9ThW&?CyORkpRWMplfd<F&j%qAVlJaU5YZE5Vi4 zVdaJz>(MVs%Bl23-n{9QbAb=r06)fArHo?oC$!UAKqI8n0svbJ>x$0}*$rNaApbG) zfedFb6|E3Nx1K1pxh?>GTqW_Cv4VPY8$#!~td*nZ9|Gu01~5*32<KzWpY1n$g*~Pj z9M48LM`(YrwUw{bmie;|0801x=-TPa5Fyxmm{NDDXmDop)>AkGiElWrRzpWBs1rWa z1L3iZp9@K8-)SfD2TvT>+m|eUM4aFQy8#}77U9b&z`0x>pUQo_h~yF~=#7~m#sy#{ zs*4w>@Ytr|!L<c^-bT08ZetOh|A~RfTB;TgWPVVZJ-#~5g@&4?&u4oQ6mY)FB?A5G z297{eG*h6t+Qffctey*{etf1F7T9(7HvZ!mS2zrUuFHSi6GzyoF&{tH2k9e#a0ZZd z%@x6(&*H%kM}E@z^)JiuBYEV-FERsee`g5FUt&CzDFXU1nz^XLg6uSQlDM(uc(J1y z!mmHHN&TcqMrMCcZ%Bn-EI?Nn%SEFC$0I#IP4oa?K69&k6bsJ;-|IdpE)PmlsAxKq zx<WPF-Wzz&O=v_CN_|9*6qhVri8BqcV*qA#uBEm|8^VbRXP1i5XB)5AiHE7zOc~NF zh=XUW#uvW@)!b<TYnG2qm3N>CwQVgD>C@8$u!26E$U)GbRvsLQlS#Ue5)VW_dV5WS zNtD%qYpV$xOH_~eR5vI^fV@h<c5pSTQo56gApjxU@#S{}z>+*I2mJWt)|N!y5Yv61 zG<gh#3x2}zD9puxlE)hKv3Wcb-5*6|%_S+aagp#CjOm9{^bM3tj{y#+P3ypeVPhmW zNU_PG5){ai;)4-9HD*<dbBmRWmr8M4s1U^uBYs;A%`1&gdzy1C)4)0Ln}q-#7r`Fm z%rmr<0_PDYhjs8wRQkUt9v?)14arjdo@6uM3v6XWJLk^yztNW#;|Wa;W)Xg9Y^&_) z!df(0c3220<)F-<Q`@JR=XQ4L0R|pwGjRt@x|q={9L)&YTa_4`{*u^54sPL|`}ZM3 z9c0o9XtMmWlSK>!V43P|<2_Aq4M`k9h0-!*W7PC|A^T^}Bb6cZi2cg?E!I0Li%YqT zqyyt}{~JCr#4Pzl+z78C@T$=0w5g1%&j>{y$u$WJIHBh7wQa!-o!gLgkPSqFnUxw9 zCM0jKssB0Wwx=kN74c$PivyV+RV;Dhhz+SFhjY0~^F8Chsa<NF1(cPb_FOb?-ie*M zQfR8rwNHmHxFokK_f6DqDci?2bSqvtf~=7gLevp_nt&CWqs$nb_$|@yodlO$b^4ZU z(DAjpG_j_fo*Edj^_Jzq$CM&{!XE!D3@O65rQT1c$5&~AEx7vXKYATFNH#QE3I8C1 z_1U`OMG|Z^fbI<Y4h+cO{PQR6Aivw<8*nBE{+So=3U&<#P-G70Omr&<9TOpgHZQol zpa5cna%r@qTqif4d*gf^(};M~BX~XPx%T53#Nr7%6zfX9OJg<~E{r#x!~q8^tksp; zmxeY^6a%0CXD=NL7jiR(E<yN-gRxTwy0MV?-3Qb~Qy_$w;#UWpLkGNE7w31J!q%=u zm{ZTG!Es!XfEC+fui>>BJDbN5FX}Cpn84*y4-dfB+%io@(3r`JB6X8njNkXQ1w>%L zV{gSvfk*^b5*{-GLI!Y@`QOK=m1Xx9LV|=CLeN4d;zZyf*gC`OJDZkvbWeuhf=59S z?Js2Qog<{w<-C7_6{?B(DTICuaVn9k#Qj5RAcN{^=yL^I78`}X5Chy5*o@!;B3v@l zC@74q_<RKh&P?aJR9s?Yz(Tjy*$*3F94*lv$iLM6@={e?MagbeC-Qlzg(+4ddzog% z#dRfhsRY&AW4DyJAIpHlm0_4=jgC#!sfB0rru-$+ce<-Y96(dXdiRkLn!04SfgafA z)qLgSTcXz5T9Eo(la1}-xI|4J#5lKu8y*COUp5Yo05!E(oo-<;cCkkO%2~9HyGiUV zMr^Z5{S3Me&B^Nz$2ha;Y-vVg+H%`GNmkv&*84PxvCW2=JW;TI1|sMs7qR^k8?Rb3 z8{*cjc)ke*e;(<PvXO7We3k)m-Q3bu*+Uq+Q0+C2(&^%XEqE+?KexsiUBeL;^O%Lr zyDqn`JOIZXCf3-9f$?K&Pls^Pb$SOHhU74m(8=0$zq}i;CDPR6YVP)ux!1KAkut$r zc@cb0UES^D6Am(Drg;Z6#ly3I)X$HNLnb`ZJs)wi%r@$}aY84P$%yCR-gYP>93fiP zI>T#g$$ayw)D)7MG9dvH3GywRy1-`xlbC+PFikn1Vja<Kkeg-QxjkQA0va|VlaY5_ z-%}xsemfm|wH0LG+-r!_&R^?p&K*WVA#hDszo<*DeFFowU;Yz0h(}@dn&b<JVn#h< zdw@arV>ah20&bzBwxkpb#$r8S|6#;UQIxX21mDX`4bnsDzWD38q?nw1e662(^wA;x zN7~Sm!uc)=IXrZrAU-b<PA$=hT{&9X{rH?fPfBGJ!{nd2ZubY=uyMome~Q8!9REWU z=J?-5;TFyD+W#X8dq4mIw$flS#ET$Z!_X(9%l#io*u%?xH3CS$y^Xw4{jfqP^Ehmn zMsGX%tEHVOO2^RIDt0{izozaF_b*-lTF_rj-?!(wzOT2%NyX{gv_7BLLAgJ>KN0_o zUNIvyeGC4c_osEXD>Q!H>&N))*s57Qk2~&R=zKHmJf&4^7)FPN+nJ6sq>JwVEvM?* z{(m`@zU}k8>UDAcR*h*}PR%i|6z?=AFCElS=2lj423cBhCU9B}!%2H?kV0+YAM$@| zW|ucle_^diKWW6YC9aj59o6D$^!W2;-qa<bC+l|rKdsJgxBrhJ9O;VjzO$=G`w!aB z`)ig4FwXP<{Pe?Z*0a?Z8);{oI<#I~2O9ob(tRcK%BcLL;i0ADGbg86TJY{)VWk*7 zYu)`eN)$Q1-VZ3fHrB(a?$RR|q9XOiwoxxWuc_#a3Cr$=85D7NALTeiM>Y(?nt6|` zC|1`FIV73JMBo@AnSmYh0#S?eak6C!I#><~)(Nk?VJy&IIm2nB#q=U1vxM8Y|CFI| z|H{xLH`~Z;liXu0R!&MswD)5+O2^dy6rp#;V-mVB98`{tpA?J6FG_z%`hF)*Udu4w zvrcx<B-l=|fSI1Q*ICOVrLp(Q@$GD38M(2&quo#PN93u#xarfkJ*|}D$=mUJgp6qn zp56ZvsG$Fh5St8k>4Zv&f#}_j^lQ9hhTbiM-*WO>hgW1yC=OlpIB|mU2)M5xNj|t6 zt^~?O)4Rtd_PEe#s#%|yjf7d|3^NzwX4wp#p`fG)&Z{e<QjwtPoq{CX6<4#B`kz6P z=xJKfG#sHI<r2#FyryrUiwBIwvK8R$L+T0eY-t=s-omb=0p$+0EX7l$3LJ*C5ad^} zK1`KCRpiT^)nV~K&9u~6!!Zi0K{+BUNC*~_C-T&ek*TZpd(qc}-(YDK$orxdSn5Hs z*r-w9Qwd7yzvoXITlRaIPQzV>gRY0>5(JPK*~nnbR=+`;^s9I8fNT;3fTEnB_QjvX z<7!CBOSvGR_3O8QYL03@6%zrbnhP<I<Ow9Ob)>j9irs;sZV>|x*tVb?Hh8wy1t~T( z`cJuD_&EW!iSMK$v7`DODZ^xs({%7-myV?RwTWTkX*#;B50?yx)<?05FM{SOI6a{8 z7xJ&(=@-v%eEW99*v06@75%3NC8!I-$AW;tmW=~K(Ulgbn<g6IgdhZTohDKw6LO%a z03m2p5axh2L{R~S<Ba6k!FLg<ZT4Y=;+SEWV4q<5AtT>aW%T8Z^&}g0&l~VyUVk&z zKCcd#_HL3c8W(*hd(PW1Sy>7v`f>L6>HEaQ*vEN=O6;|h|KKw`r{~+^^SVXWZXSRi zc-Z%H@9?)1ih_k(FC?k}D{h3xPqX{+XL$kr>GOHK4y&`f<>N`XpeKV&HgvobKZj3h z{~!aCM#KFfb{qLRxe+Shj;OuE@8>}ShPRcY<sD?*hCgnL3d__o686k(j$cs@Xkls& zZ49Q$mn@eDI(D8K^CJ{+L}cO^L+&+y07;<l9=vU{A>DV<lqe|^SVdvjXjk-(Y8JQh z(Pnkj(eg<^EgMZ~>?C|hka1xh%g!EjX8pO&N>tgzz&wsRDoUC2PQ9tWVPvkUSm(cW zJwJTH+X8W&qaU`+`fBWCqpQZT%u9P3c*TDvavOiJ`{X7vagTdF|1Ce2u}lojjTdce zu%I<YPKn(?h-=boH2vch7wB9tsXS=8M+AWf37;51QtV)^<1FLbpIJNrCdYV%tNu^J z<UMkyjpa35J=RE($S|Kd7yq)Bg}R^}cY7YJ7a3r`E1zxX2#2ppVVj_D&HuFxQot@9 zb+)QaK3s1o$d9K{OP(gL#LZSZ^VgQDF#)=z?4Mypz;geN6n&q3o9CLBQOHYnpGelx z1m)ke2r1!;&2i3>=v2I!l?#aU5RmXz>=5S(E25qx0Z#F(tNq7ozDo@lySu6GK4&sD zXa#rxk}k~gP8~g##g;38T51L?{<DHBC2{teHs=bqy`vUR>Y9ig^w!|8a@cXUdq<JK zz*hxQG2p2L+X=nO<fG$M!s>sE-AzFsEE9tk<h3A6Vshf{r8l{q3UPzzBpsyz`DZlW z;@#b)G_)L%CI>o=HLTh|yhZ<5fOgX`j)MRw0h}))0aHsv?6XXP?%BMKRCGK0Gz&h; z>uM5`*4See(vzBc5fz_pEx(aVLcfJCYqH?|UyPkYkSKw=q}#S_+s0|1wr$(CZQHhO z+qP}Hd(NHNOvJm3x2URBRn(>;>i;wI%iiXuxX}K^ogQNKaiNxleDQQgae4|P&zLsV zh~Tr}!(DB$e4!SR-m{c#Dw#){Q1T@3nnnpyHsr5^{<H49Xk%AuGldIO9y|LJg|A;K z3r3)M6*(S5dC%?`5TmfmfDj#{XtZxF_?mIn;ylQSy`@qc*u&QV(b@7K7;%@X3R!gK zrWn0GHdS1S^vSBDM1_+FbxO-!bIQb5m&1z+t{fupxP*WvH``tF3ncXtrk;ICC`fl9 zxg;&=#uh(cnEDhDqn1#TdC~oVR($d50yhLVS2fPVXVpPiGT}c)28<@$UIBW6e5)`Y z%=|I5l%Fv!S$62C;CXe~BQa1yWq$r>w0HHl21yAZtglW~X4%)%<psUP#@W#Nz=!~l zu5l4s6HnSNWT5g;4`T<`bOKG+5vIj$d!3s5qTvJo{B{`q8J1zb=#ry`iuTEz_}@j- z-fPK_Y6%n;m&BY{P8Y-rA7itB0PGhQS?w?p@V8ecxvs($`k{KZ3&h315DI{3D_x~4 zLtAJOy%0C%>(3gsmj**2jy;PE8}@57EzCR7N$ZCbw?QuG?Nc-}-%)&gd2d4iY!JLo z!*BW0U2`o->Rwbp+TP!k+Oe`uGo)j*S#$Cz+3_+;V>@NtB!E$k`rB<ueF=6+F!Es& z{66zLvpYw2GG8_b;zte}#aLpyuk=up9LOg)RSug6@vN8Eph2&^6#5|HP>w_ah1^HX z<$O0dU}NO`39%4Svauk;7()`KtgZGOZ}y)*e*@|P0=o<vs|+1}-!nz!<LpIAnx4}m z%$g+^eH?(`x?Sg%D!Or#=?kDVPS+97mdGht2X5=IE$Xidr@F@p(NcGUq2{v&HvakF zym6#mwOek;cuak7>y{*$qLS+B5!>e#n~?IILwqs=f}2FU1a1*1#a&wfd#|Om&Cr9T zf#--2L3&)|HHL<av7%XAlm)lU_b8q+gjB{+R+Qo2{6{!%bX?2z;V#}K#7Q(-KUPte zfNYc$9w;=F;lUt-M46*;o6*dQGnL5OQurQNJ0R6Tzq+==#)RrvB%Y4GV6}Sn(ViJ* zsV$c|szOw9#vh|h^=il=$pAnQz%jWOz(J7NY-SiFJp~~Qii}Zs?-t{~?EKe`Z)g<8 zL+^tZ4!E`WIcgIvo0jZEggD_ZfIiLEWIeT}9dGQ`{~AQEArAJZeV;8MSSqfW03lge zsur!)Kuq7$SMy2@1F9x`mrvjv47^kafje&eg(m09gy<@{rX6mA;`}R`Ruk<L*A~Qc z$&D<y#32VeXD^N{Kd1~@I83>YWFQmt_OA_kf8OosgmKIH9y=Crn4>uwjjkF_(3|w7 zkJfV>uVYKK3@B2Dcz-K!H`d84m2A6jWl|z&Be9Z^5~6r?Z7t5aWG3%?zkF!k*>Od) zrM^w~if!#<yplrD82CN<`We`pk9?CfKRS?rZS^B5B31+JD%IbzrWsg4h9_Iv*r`F0 zbNO^fB^Drsnw{MUxpv$Yf<~cO52eqw4GbQ|Pf*Uh3tMrM-6@ROQdL87RJ785;z4xx zX8#p+(M)I^8{fE~rM2nURthafWzX@YX3YDglRf5Bne59P&|B~x22oD3M!0@U*;k(E z#e<O;aRX$F=x{FXuF)?#$vRO)AVnp3NLk+8hfo)H*LXrfrTB=_G-}BC7RYG)H7R`a zZ|#Q@zH+N9SlFa8qzV3r0$hG{kLDstuHWd(b5`kaOvonysUkSQVwRTaN_JO^kBd@3 zTmkp?Z<0G%82OF(j87dlIi{m3uvgKd+1d?4Qy;3`<+zxMe-(@Wc>HR@_cUC9rk{0Z zPF@VT-bU?G>k?YhIVfe_Z>Nf}W*waR3lhJdPqWjTseR|Od08U*4Lh?;Yg1i6$OqWC z1$)8E+?J_=fu0=KBRaO!EmwcRT0_Pi)*2~2N?c_WLSvfu>N5}MeH91qaCqUM2%r8P z|8=Dt<M4<#=dP;2;>Lzn7Vd?6GOoIdVyBP=dS54%bt;f=`(@$Ct3hos>leH!nH&GH zhv&KpSJ_Kl_ZMZF8@BxcRB0#Ir}xs|DM>5mtX81<Bl3Hmpi#)8LfFF@?FJ_Jbe9R7 zAxtI*Z1ppTqKg+D)9FoB^6scZ#E&!ubtAHaz_C{D1653?Mx`FU_;$w>X}t9<^WClh zLi;NyG5aupt@G=;d1N}19m@7AygKquv@7O~KunTU%0NmaYO$SW$r(DVJgZ7A8&5jG zd~)5kl(HmR06a&I7HHKq^TYg)5Nc%9&gdGKRHk+nbSS=_N{&Wt>Gy74bcsS|%qP^w zKnvSAiL4O{`$MzCw7O)%wUYd#l@iPdFzoQ{lE@<Q3<WA_*Y$ugrkCr0nP-UL3=oMV zOP`C$(}v}m5TIg8omh%<#I%wGb?3JPh3<t!C6Xe{63+pRE2)S<LypeK!e)gO=fYy^ z&L}UexKx1PYWrTBMmr@GF%!U51hPk(-u)=>n9rI%3MY^!dlct0GE1@NP!jt>fjY;# zJsWG~jEEzN8HKu}J3RGwfPfFt*+0aStqyKsekm7nXG$_k9<EkE@T`@MeD%DcL(z+) z93(BPbBmcRtELe!GwKWPH>y^5e|Pao;{%9d2e+_8dXHW}7n#^B)2uk4>i;2L#JaP2 zHsQ#mlnVE31)^fBwYfvt7RIu1wysfaxB-9xH(y6MdR<Ul`b}`I`J4Xi#8iEOgE`Hg z|Cgbdo#B60t1vM$|L-7*)#}o*B&<l?r?q2~c#9lg*QgfZm?olv2LPL`h~O=L{>fnV zSNgwvw<0CX*A){5ppIoX6HT~2F>d$A4UeJgGq+@sy(_|&r@QY3yk4I+9?v}9FDs?( z85vqokB_pAXE5oOtTI|vjkP16d&WLL9KF9=8mhSleZOaSh+Yqi2SWRqL*!m{|LR)6 zynQr+4BbvX<#KvFe=Iy6VU&D<wdq8yUhcvEebp*o&v@5z{pl2}6F33kgvR{3d@{dj z{68<f?}N9yzb}vUsqGW|r@p^$`>DF6zkG68YwwrhC%;liQAW32tvdp?_@n4MM{1-1 z3R%PHNtRUUA!8%tx(RDYCiNp+<D6|5BcYQlQ<tDH31Tq7MUzcgGTJi5^sx-IrR3@% z)t}y@h}^&{46Xp2HVk<<{?W2=>-c996T~dUDU(iouU>%yhO2#G(a{#S)~+^G7FVb5 zrGw^Ckr#jdEy>H?mY?vx!Z?%E68)T*ba{QjeSR3!k^is&!e4*=ig!V(D;#vHg9s3v zXn4ty8CC=`56ex`%&%#A%gl^t-SMuORX#Tw0q>N^@o?IBfvy&tRE?35n(kwYnAyg< z^LbuHWk=NSL^Oh)<;PwS5}HCojtifXqSrIg0~Y{NLoNwn_0a*B;n9l0De-DS;mAF^ zr6Q`pyJ6}@hfy}F9zeLagSnj9pT|e1jn4?h6Q3Ze){YCr6CX{oP&f$lP&femJNlsg zyNSR%U(>)Eb06ZmepjIrhCh>c0_>uyj!E9#?F}NF;b4SI0P_1Au@vqhIwBoMLLm;+ zGxsS$yJ+c_%7_uy=QyF!?@Ri46{PYnAk64RB*OEY7%<%#lMGbd;Tjs3<W3+Ui%H%v zkHg35(A(1J?QjKDhOtx`4B}m_qv6zn9+1A!-I;1Bs{G5$cvTFP`^$$=$L*kuPWHTK z%1NS(!r3~5o`jg@djCzC<y{!aJZ$oKSD?F3VX%TIanNOb!H83mg!_b~1g@Ck<6@ak zAnD^!1^`T?GuYOCV8juC3Yd7AybCHJDF#n)x6Ca5h@n$xObR%LagujdmwRVg#H0kE zf|+^Y`=0@Z2>4DZ@dTKC2rCkBh!Lo2@f2z~a!{gO=oH&2sGLbtZ^`Ddp!0HBvkWBt zgNxdrs1n1-+jSaQm@D}?d8TUMnf75sUKK?!Ns)!7b%f?i0jNWsXF){z$P_!qe+WkO z68!*zQ&2z-fKUa$!vaika01&1{GbEbp#g@JbMQ(a+y5Y$)sO5MQYd;_Y=uR@61IYs zt<N-hOhf(!>RCnVBNCvw?$s^vQR(eS^@uRSXp^c#1@@k>q1MIv(34xqyK`hP?+s^9 zR#q_RW*&F|yMcu3D;N~O$zmPwfLzvqulL=(ykL4J=I!$d#nX)~|CK4gFFjLzRhYGV zx>fJRCA$>!FpR?Dm|{1$XkI_Wrg5}Ll~?p8y`RqhcpcS6{M*W>w{Ce-OrO#02yvrx zihwvuH4%<eR~ZPac}ig08sp#XCqke1-M4|x;jWQjT#BIcm}yw5-yCE6H-a?}G7D2A zNB~E+9TKkDR!q*ik+xqfxK|@H!Ec0MuXj7=l?>GJ>atM(tx*Lsy=jC3;#j+JDJIIX zuuCs#CxaA_sQ~e+;8%Cwj?Tt9sn@))fy(c1YYU}zD-*pO&jM-$MQBBJ{+n<_C_NT7 z!V4Z{k7|=f*CiBZNyxiF9f#@NAR>$8MD!p{ZZ~N9jZ<0Yg0?V`!1AV?dj_`2$~IDm zV!p=ejpL<UvU6sHc#5Hlre<4=_VwSI?`xAHYdHB<#k>N&(@Kv$PYEOTDL!>l(JY<% za~+F4W?exAMpCdM$2t?9VwY8Rjm@I%)wIg~BtNPHl??CB%W!Y+t)sk(wnFzJ{-#|# z@mH+n%qP;nH+Thqz(n8!ro2w2mejq=5M$kh6Z4+lL9p&c;{FQp_AlHA(BzxAP&1|V z)zt1Xyjk^!+zR6z?5bPJPZUKNoFa3Z)6AnNA^hk&6-CBp*&&M#(E|OXSNhwQJ;}-N zyEG5pC*8Et1=r<uE|Q+ZIE`L6m^sE@PoHskzO89d5oOrGmH8jnQ|F5c@t%KqIYxNC zAAaDL)p1>fTM}|FU&N!?6!pd-%op0AsoeNxBWNCUdE#BTO15}XEM0c`1JbUuWduBe zJ>TR={6w5RcKr?o^_KXMd2PG~O9_Ad;YWTI_T)barC-759sMSrsg<u0F&eo{!FHN~ zw8y7lWLV92asRuQFSmZW0K?8YpST8fhVA(@@MOD8Mp&>vay{b{@2Qwscc)>Qn35F- z^8AqEv!Sq_GvIzL8H9yqU)P*unc7ciRZ&{Y+<u07AFk@W+D~6*8zAPp<~c!!+Sy8k zBvl|_F-t2PCWbda60K<Qz;|Gv*&lh$TF;6v4hl*MZ2gD$f}4C^LY9B<>qN2tKqtTz zz%!`iBu(&P5My!W5Djj1?JQKb&@Ny5g+hxq*Ni_4-&+&gQogCNW+Q=ZNu51Kdlk-O zKx;eNF}`DSg72iZ@}^{xZMT-(He<LLzy@GWX10w{m^h3&@%uFN89d0FjOr$!WykQO zStSiuMOy0_e2TShIsqvDIzNyUzrKbto8O=*t10KM#7~QL11Jj3?NZ7EI9(V_K~wr6 zSvq9OZA~P-?j3n{F1o9%>2Cbq=ahn$PvBoW9!_s+-c?6@O>yCBZjeW%r>K*K+`FK( z4L?SCPS;3s<~#dv%Z%ml16?#@F`xTLg`ul4N8oD**gbeMS)qDkK+pPXvA3E0#KO&$ zIb=8zI3La@du5%l^|_$y;?!~lriO>MQ2U0T)u|P2A4Pm&w5sOjB1iGYx>^${dJ_F- z{5ns_%Anaz2ey^h7{z*r!=2nmN^Jn19;_|IqD4#3hW03SwtCHdU3II5SZ3h7IZZJ| z2bzNm<b@LL7K3U{XY*Wr%|#j0oay9jg_1No@CLUl)WwPJKvg>`Iu?L4Ix93}xrA-P zQk^D!D_Zd<9=CF4zs<@&1EOcNcNRJv&%S7r(22&(PHV>NNJ290RkTRcOJj7<P^CZ# zwAkjFJkJ*(bp|ZlfBoJ1pBe-U$G>{J{|&RcT2r!?MBI62wRQ}4Qeu>wiMEndb}=w$ z2<U7(EZ7?sI0Z~!?e6tETlFZsYHAbRuvw#(iuqv3oxgD4;SecBmnYyS`VB3mZ7E|# zM{_MjVMRk@c5+iTHkX$F``C6e*7rNM_v>EPb~5M3`F(cx_pOwl{|Ef@-nN>M#+TIZ z<(R$KZK&?+0x|X1XQ*K$M{$OboaW8kC(eEgPZFY@j<LG>*7_2pwzmDadblo`G=#Ni z%~RYnqqmE<#2K#-#C=3x@cjC|OZ%fM_{R&r^puu#_T0?(=8KHxkEI4TAtyeAJ|{7o zFR+yC9OQ)O+EiN?@6GBCK7;*L)Y?#e`n8VBYXMQrxBdIz+*w`8#KyF5e(WSYKK~zn z3wq6M&7g(h<EL-ex!GTjpyogGL{AJfzP>|UDR`QNrjk)}&l|6_=qpAv(u5}(FV^AC zu->!X#VDyEv!qLPp<P2gg0`CLOy_SIu4f)w+%8Ye%_w@9nk4R~Rg=7jMp;eOgrR8z zU|0RIyugCDfCw8JiZR}igmklzg^;QW1hET2SB`=chLW~$RXiOab^{ZKpIP${5d7p# zCQ*<jrUy|Ek5Oy=qot!(Bk4_#dPh-@QK_d#Lt~i7t)u_WhvD(a1IWbWUVwAV4hfy3 z=18B_cnLedFLR%ov0s7Z>`9!hF}{<`!_Ja(S6C8+!8(##3bS&mU6PhN7P8i%Cx?!c z-qhZqTnEyU#a42&Z3r)<FG#Ngwi7L+YQpq#=M5!6g)LCgCT?<H*0;s9b5d_FD%dNG zXhui?>-S)2N-sLp*Ws3Ht#bekz&e_TDdP^U5w7~v#lmS!F05(>7S`0wgA^`m>nj#f zl!wwASUN6p0uyooRqPG?A*#SYk`R!$9~#U7@Bzw%G+UW1E@|&0E;=jLw&kHZ=I{hZ z-nH!_!V+`X&=7RV`^(J%P9StyS*u}VA<piH?3}l8f68IAKzBefPNr-nY&ocjt^}m( zYOYa#LhQh07)kG#h_q@!M_-nx-^A4RV2uD$pM~qJ^yc6QzAP-?u=dKvMnUY@4bguX zhwu3F1M}6e>X3FIx)4N{!4RJ^?Ek2F0@0E(Yje+xV82m<LMHWbx~ZT^h{yQ^{u(N6 zRYFJ*LbvtfzU`XtUyTrJxskj|Qv&c%BY~i~?B<E-*B%7Ns%Epa-Nw0Szx*pw?ZDit zYGoDbw_|(jsOEku8t`8^f7~3bedy#}(v&Jew}t<ktL1$;S8}ebo)41Wv}A(v*rAvc zbYv+S|Ai?y1a>T{b0RMV0Ud`3AaW!LzW>vHy1Y5qdk^t}%;SSc{+q7!oi}j%B6oXt zH%l4VIkKh5<+z8i8<mKjK5A?5Tdidx^R9KUijH}A`x_;-&-c0P_2EvkB%3Sm`}%xO zzk3RX8cc6){Qd!M)?Tvb9~R85#<ZnIS9eg$Ps{&>t#CB^rpxzzb4ib{+vC%>-|P6- z+|ImxDV1682LcpO9PY>GH8vOYQ|twxl`not1&)Y!l~rU2i1=)mpVv{6fHqWiHmvtm zjG58TewYyyz7#Gq(3brzJ-qMtdXf1!de8TCCj3o?x@Xk4u4TbhFX<sB88xQ<>Tq)i zEg%f_2lFL0#MC-#2*KKS029?StY<5|n(S6-uNMl)W^=Mbv5nzr(M2Q7DU6ErAG;Z< zA*rth#0M_7cg{bEf`J#IQbdJ;D~P0iPY+=S3K(JN>D#S=nx?KqP_F|HhRkHSzXRDn z%!ztIBk0OjUhVI*XV7I&9zxJzk=pgvp8!&6V@5au*m&p~VPC>7NTDB_tO|8b5$?K! zAXbq27P<H(FX+n*1kw26T|HbrS%s>SDoq{2K)#~s2(B~vW|H%G32T267li?cXThV9 zOpq`26dLn*^S7Lr_=Vm=uQB8}03v=3gegR2X1CfA_XR!_DK*F#y<^Bnsf|$#q#rAV zx7)iAMg1M*5aB>`+;7q;@Z>?zG$~N3ZgN^fY1VLAa)jxsWGelAbY9N$K)vCQSx+!q zYuryh&j=3M591SQnf@ygJH=7?aM3d~A-vCV(lDu7=RCqmK~_$;88&bVPLpQ2fdpp^ zhGR-!;<TrbJEGNxcg3kAF?CWTLVq5?6fDc7&3KI?H7T{D&o@Z?GCtX!>~E9;vtVsO zWex4uZUWtI6;va0wRQPxBEnqADWd_ak$l?=`eYizBFJ>5bUU(SE`}mry=M6lm^9Tm z!Fyz+v3xBDDDLQeI37vy{<LbfA#w!M5DJ~wItNO!sx2&*;dz)Cte&8FD5(ROn09*@ zRApg^Gbc*dP(wXMz@vc$=F<@>3)yLrw1f){Zf)lP<=v&wJ&bCgbx!3Xh^L?xk5`Z@ zX;{oybN)=0N#nf>r#P5|ZIpAY@#I++)>@|)@#wcB2D0rM0T#u3`Bbr`1|3yKe(%cs z+54!x%y7tR^qOIg!2}REJ4`+uc<`7fnB)p^^DGOvBDT|pN%VMJCSpgdBa)-d^*l^l zkIiH(7e%00?c&hnZag5(18LHpIvY3&M-5Z*Oj3m8tA^!3hSc~poc?6H_pjg;_)H~i z=GDRb68WxnB)^0UkUWrVUUuYffqD$ZnI6qG3n*$6N6G;u`MSautP&TtiZP-&ss5!D zZ{B+Ehv_Z{41V%Vo$KkXEKlw)uG*C#MAD0)f4K0kAdm{5T%sxS?22rjV`t)j<aMNa z6LT}XjL%gyUc-S3faK0Wqai&9;1muaM*X}(wsvf2HR*sI7g5Nlrqxuw4D4lC=}e4I z`S-md2q?L49?OIP0h}rQyCVq>`_nJ6T{ABdp}4eJ42SdJkX;?>4z5%TlqMyOs~ROn z7%(!R^1N72P)KoGO3*n*k#qs$2&qz~nFO{5t>=<brd!}=_~I(g(J%)EsF9&?Gz{dm z$VK)de$F~_dkHU0XrtuvfIkGz`V=zlwEl%@>@RA|#j-LxV!0Lt7iKC_vpq_yl^u+} zW1ElW#Ks0NVo)d2igvH^x-JS{39>bR_TFUi(q;Bh2e_39BAOnA7q|lT?1!S3EF>ek z_yl7fMWMuOBHSkCPZp$?{mAf^e1@<l45;jdUSr-g)4^*lrWH{Z3h?X`%3C^AVZo|N zYDpUujg7*|9<^OEE1i-Xb4+ZTFd&v%^47A)uL&xz4yYiJ4l6hG85Q#1Fl05TEq9kS zrh%~bUuEVMfv!lDQ8vsx6<?og4(I@rshzdz??`|u+>`W6Gfso}NUa7W6d)ClEj)0B zqB_i$u8IDrVh`t5{!5v4zlg2R>)nc}{J_7Zcg{!%lf`1%nN4DHK(ojjr6(|=p{P=x zSRG+wB6$n)f1#j<e#)tmUTUi_{9}NiOoZ5nP~GKosNl<2<)LU2BXvEIo+3c3!UnAC zjv4Nlr(7WJF<5ltPtq6v#M#+x=TCTQbB6@hf(x|FHo(W2Z`1G`342f(gB^=$mw&Yw zDOU<41{?zb-CCsuJel!WJPoHI62}DiM~1}5bK9--k64;>-YMht{wY7(C3AA2&$Qoq zV)o(~Q_Gd84&vr&xCnqQcgIb1K8eG~K&8;Y8IK6#k#YT4QrVGzjmUQhH=E|}-^=2O zE!7$_6BV<Gaon2$jW!C%u-3A~M*_|u7NC^r`dILRi(2@kTAm9w$AIs?LW5GW9n+`A z*X<xYgbn5qgA`xQa@qGwevw_42MyaQw-1KqLYU~CFSgG&OzL9CQhkUBpPKi4Af&l2 z{9ADJcM$JY?QJ^J>F8X<AwTZMJMyW@WhUnILSU8)eH&`t>WQdT73Y1*|Gr%ZF-m() z1t%-{Qruz|${8iFC>Tr|Dbju=dGNp{MgGG=cYv3!4ES{(<Wo{No}ti8Zg8KPCV77a z((&K>mKzZa&ciR+WUSCqWzP4+S)5#*o<fNuFT{$92Yp3^dA*Sa)(ls-zs3g3u7Rly zTLvT1F*m8ZCoX4J3Xh^PcX#VU1R?@(nNWm~*yEd42CeTVq?GGcnvuiQO6gB1P>jJW z8ZMU1Z{?L<jq6kq1)=?`kLQlA{bVDN<ftD;uHFcUYkY$}U*aDZi1}ENXk^2A<%{n8 z1z%z75vYq*cp$Fo7CZWl?Y8@AYp=s^q%t6Kow<TBspN5|Z>{rD5`A86#Xa;;EGTa- zplL$uYTn}R#H+NS5SE+$o0E_(0Wamzd}P4kif_S@6J;^fp__2XZJNjJoo%#z4jj=g z&KWE!|1h3#WLPYHdej{{;hdQ^nns5AoGfS*$Qg?4Kl~`D>?nZ|gj5~)oQW-n1I%_@ zCrfKot86ilNzI;7KG(+^yqZJ5%)MfKqEqB@);6C4+wkniT<U&mk(nD4lywSHm@Ygs zxH{3W;_7!iuI)W}0{Ji8-M`C0$ZTpXUajYvc*O~^5?ur(e~-!VU6tZlvG}eia>+TI zjZm?I%QG@!=332_Z+d{#-F*XeD7q05>217rk23PO<&Loab^~N1kshLU8j8fWZrabM z*=<d%2^W^&!Ou(%e@Y}psD?DCXudl;|5~z)jJ855x8<e5bhfW$gAn~2rFfn=_3 zD6|$&fmuD+a|Ggfi$v9^Mp?+qI~wHsWc*h%y(N*=?tu7%R-5F-TNN#xYXaS<Xw)s` zWxZ^30{@_Q3g--RK4NHlB>iC|6&c{~(z^^wEvAsLWcu_E%M=vJPU*h9TP^o!R)DEQ z-&iiw+0n_ZJ=(UDT${}6cUUras6&J7K1hd?H=l1l#ywLlrdEA_t%pbb3Nu_v+SJ!# zj(kA_vHfS?qdM}C<aj>AhR4V;Rc5aBs4~Rj`c!ur<Lyx=p-^D8Ga<X^iLH*ysOR$( z%sx#gW=r$=ak)ecxe}1Iod!`_R9$H+y(5Pw_wzSM#@Z}n>%LFjYDWDkS#Lw^8*Oe0 zWW29MqXK)t3h!woCeXPv1qt5G%n#J|{!nm`yqejgfmB~f5AkIjy|Y#G2zxzrjL`}R zqfBRbhT6;)|1pI<<T^o*Q{}KAji&*12hJ&e3X6sYu>k(6^52NT5^t>^G^rP9G<z|A z9g40<kA@xi3=HOtLEh6(K?Y+jortrfjQR3ToD+slyzFeP7ZE$!G&(GTcwS&!OvZaa z^tht0INjK;Oya`<UYk0yj!~}xN0I;(8A^K(TNDCkaz=s8IidG(=><&U{`dH?GUaXI zYhoMu7x&{N^23M`Bc;bDS#Fa+HaN$^Qpa<aa|tFJVtnHSe4?Rw(7e106AKJBOfjjR zrdgv~X(c_cJF>Vw-sSJxbC?^J!oVa6odsypLblQOTl5pxYt60LP>0sA$qm!9$D(BO zE=jv!vg2_^!(-ly3$cU2k0V>kd@hd8lEZHj)CIW>Yo<e|Anw-IRARU4!XpJCpl$fk z;2iz^AGW+=UY5e*@jvMa3h6z&&ill4Nw#nDa97`6Bg*h2O_8+yNL<|e9p5q3rPLvO zW<Xt8ch=D);A4))(3D2MDg+wlilvZzwfH$f+?!y=cpc?cM&HMOqIcgwrnxv!)<gkm z#Y;h;eBG6M-{lE6OLR>ko%zi4N@wj(;0}{@gr_d<E5i$2S#KD#27dms+DOvz*+cPZ z3|J?veNJ}0JqJ0gp%aw~8_G17m_Y0gAec>e4hM{8Si89KCufsMmEeQDv$`K<n?yQv z+#bkx^nq4v@7D2QkHYSg?%MDuNVPb&S9wwO%uud|o`km9*5ABk_s{?NcoPZ!1SDE$ zi`muN8?_-n!>{jJvYzS7`DD>LrE_gfivGMj+@yd44cMTGeVU4CpJsST({4X2nWL)` zyLT{-ufesZlmV1JT?77m(pOx$XLQVaSY<r#WV(5?j-#dlNfBHvkf8xL;9pqR*0dfm zNomesgCUdHU&t_W{KW~4$g@7^XemjT)>fG%T?OSq$sG=?#(VRu@bwzZ;!dM(?hY%I zreNnmL>l!FSD0SKU0N|(t`cDm-M?S;h{&mG*Zt5i<^2qQIFg8Z)G(MKvC0t(ac2Wb zr)K7PeE@V(`~~GB5Qv|OCr!@pZ0=QW&$1iFXCAdyTDhK9)lTd5Ml0b5&3UJFchuaz zg%ozdEQY+OK~6JRITCMhsR<`IZ^mhUl$psPTAb8669e{Ls!N|GQ;MW@mu{HD+kFTB zmY-{PT$9(4q&*;u;0ZPA^d0PKq0ha$&5nz0eI`F)pXkE^BgI_oY`a2Y`S;=BYYQtS zrM2;Is{DEmGe1Z|bDwj{C|+pJ`mxoRKY7?^mNORF&y;<p-$Cx5-h-Asi|aIC=t=Uw zg-JToJzAOa`yUl2yc_hSp}UN?+}~lFHzI10@uGfSBH7e`4x?r!)6izd)@P+3<y*d? z;d~BvBBH(GRz$znEMUCK2xW#D8t!9d=<BssGD;6OrCeekeE|&|ObGwm{*38=%9YH_ z3@rbv{n>Elcnr=cV#w_`it~NFWIKHbBLF86D8yYqn{5!>iy7-5ffRTjZ{K)HXA@WF zSr}6i+>mW;$)ntOL|<W1u;qurf|Odg2;b%Z0E&{Kzejg_xw^jX-VVB9C3PGb`f2fd zbe-G<={ajfv2)QgRV}lZCqrc?M|&xZlNDwtkBM__Z+qVFp7*!GN8I|=7^^izF6l=W zUM0+Z`9wp{rY@XcJnU_r>4ZCZytuy1-=8LZQ}KPiPydrztuy*OJ=Wd*zFV9P{oRra zRGHL;_jrF5=u{T7tWsXd3zmHZ?G(*rRb2I%H-TjgMG>jCZ|*P2Q+9|{sbu03HEl@u z<-sXA6$MN@!W;xS-?!`fIJ>WSI;52vtz_nu5sE#Waa{tcI$wu8;^_-=0Au?VJmJV^ zrfi*?Qp1B=&F$vvE2?+=e`a7ySMPG+{~)k)vrJffION{HpcKD8?hrr!FBoa$?8)Kf z6Z`6MGf)FJq@-S``Rg|C`l0|%poUiC@PY5dNW0z$k5xkR)<L65S9yvJ%<u{6?IuZ8 zeO+V}wG)<3z5agL#7g^g4BH;IpMr<jT-|okkxfI?q^M~C>K_-$<0+mN$w28ZL?ye* zXi>6G3~~WvCB__tIgn@8pJ=n=8OUV_RS=mn(XLU<6^J*E{tU#(Dfw{bqeITRM7&ty z2FymaQ}KA_6U^1J@qgE&(7~cH%=@A-$bUXyNP3`uan(ycgN&5#3fze8-$Tg$14DM( zYwsmK?nazwoy2BHp}{qN{g3dxVuz)8PZMWh>PS|zE4KAL+WyHDZo&pM#&<vX;ka-X zx?qRV!Bf6_5;9n6ioz^11Qqug#3U43MC~r9dCp9z2%Ip$8Ri<@=5aU}%)!$b#+64T zGkiEa_wY?hNGKTcePaK(e$B7T=oKt?F62(BFdmck#I8s}5^%7me~Ab*v1#R;=^?GH za8C@Mp=C#+FE=ydPaI+&s+MdiL1a!50XTOGf6W_=EM2XZX?BSzCcEG?hp-{~>ueFp zaWdrjYI@fSJTC|{HX%whRdm-Ej#fv!5JWGF>G>f&WxZ<Q98wlbBSFgz4r|mxbQFz7 zJ4))4FpaK9N^(`elD>xwIZja_>Xc!^kyT7;R3|$fAJkfT4KYlbe8J!p8g-~vr>S*D zNle<oFdFv8B+kgcW3--nD<b>k&_Wl$D7kvoVVq0NM)SzP!u`I(P^MU`a&2fIDJTFY zqyk}em4?>p9AxrpZ%)(&>nM!Ub;rtf`Q~F>)o3%YDv2^hsM~Jv{vYR`gZf?;UY<!F zsN+sTR+G@nhZMB_=V!Q+X-R|RCSfVVWU^2R_fZJL(GZA`&?ft0VIg&XorHfA>9fiB zbnu;@?J#bm07el-y@*Th|2@p-BFHw$19sF+o2kwF=upZOHY>$;goSQB%vK}4@{-BY zVv6*qB@xi~^|AE`g|(L7M*Y!VDsxf>U}s|;@~tieMqGHb%uQs+1?V;y?A>$F#!uGv zEikT&7Sj{o-g8$FpDu`_XV!AiCg7H%-BZ(;v*GuFTlyhEgRvF|EzOtoI`&HQVr8f| z5Rbde%QZ;KXm9|P-rx;6jcBDYG9ETci$0ersVn_PF3zQ^1O(LgLy}Gm(WH&4H=>Vu zD>c9kAYVYczlNbIDZw4{rF5n|0KfETGD(=fmbEx;PapKM$Bb2nq44g4IYNd>6X}HC zN@7`9w@r8(IFNk3uW{h0-|Y&SH*IZFr{99xy>1CeIK&7uA$Kom0BW{>s?u#aTa7s0 z3!zn#1msp(VL(ybV3aUdh{On$gcL8vbDnFL2#M0@i%d8G9=R}ZTkZMr?;Z12jr93* z_)zKJ5s{wnhGVz>B%N$=uOw>-@n3xQVpU@#rUhkF13P-C2=E)ke&+E@ci}!0W8=($ z6brxms3?$FQ^}%2-|DC#MX<uMftXu%Vx+%Et%OJvo}lhKYR|6332eoy<VY2!)SapP z1f=JR9?nGhJ*^5l+`)Id-pM3}J|(KRBm=yp_Fnp%)$BF&@1Ki`ND|p7yNT;z%_OIu zQo<GwT}eepc)DHW)NS>Y0lXIXj)id!Gz%`6H2lX{4Op)yHx%pA>z+qkgB8PUP$Hq& zg?q^j;Dr|p;Ws+xo}R8O@<o@e547X#w2*44l-$--@EUWl<lO!e3D7BvDa_?be$gc= z4>20B!4U6HuX)P0HU&#Kh?LVScM1ilSvQY%3M1;c<gzzVa(y=d$9a9m>(ASTdMAXA zaYI){sLB>hNvPpE<kfOKBxu5HMxPe$ffPza#x#82yy`dNw4V`dR$)xf^|<k%xX&Y! zPOaAjLCXpi?pttcyL@biUF-erOVe;h0|wye$U7qCw8=uG&Qce3+#Ii0dypKQ@r896 z6jC~2w10--==>D|nhp>}7M<a4B;5e3$7mVjA71KeOf9*^5o$Ta-JqD&#OmWO9?YvV zX3^pLWcP!pOna{qI9#16Lyi^X=<QiDcp$f`2ek?rCN7rvkBv?YK&s^xsGei)H)-3r z6vzw?U14jbbjWC*+H~nVLJ|+v;B+|KI)>IwcPi;g?UKCD!rg+MsNa3y?o$RhSoc(q zx0&<V&0LL`e}B%cN(zaXPquva32Za^kC>R#uiIeUf1tHXB+FVHxu?>r&R8*AP*)4K zkkt$gTOIS+$E+3nI%Y7l?d5i9XWpz<)(=)6)k8l%G_X)Q`g2N&$0Nx9J}XG%xEYkU zMD!+cD}c~CYnAs3CbNmtF2&+$mRIuAJL}$GCxYa+mT_n%pp;7584Vq`E7)!CkdZ9e zOZuxIK<Y%)Ict5r|75>4eM#G*dA*bQJNN{!_KQyjE95Bkb*KN@|7meZyWyneUUU<` z7B0mwKTkZbaxM7gGo|Folm_-LmT64IjAWUwN2$RM&3O_Nc>TeJ)Nn7jFs*%%Q3Vup z9?88(!_|~LL4`5zDoXGKz4tg}NxfbNWE?oQKG8sk^mZQV;oq%=0gRJB?!Jyl8f$5` z*{x3r$uqnAI4ky}pJkCWXTG42oLwN3r0HF=ZeCyu=%QSqe>^kqIBQWej;1C)@TSp@ z-IU50`fzFYEb$F*FhbvA9QI`6L7FsDxqV$-UU1suxZIh5y;d3!hi!4gUQu4iJJ8+s zxk#7jWUjIFZaI_la{5$ejKbTZX?XRYHjGa3N`Po_xFXs(<GTJ~B(&(+9_<}N1M}S1 znb+2jEa3KG-D>bD=ye$?+;JR5t!eLL&pok1dYLT%i_TH?+8mpHs8nu^)|GylnH}OV z)fSgE*S7TX9(S{D8OCa@5<MaH*}ZBwQ>4*&qAX;u3;{CcHRh&rop5Q=GH?DcIJAb1 zplRRX6>2Fh&}7~)_U;`DblFg~Dm>B@aY+Assf^WPc&-$&9PqTZ+~T$OtlZSal^j`D zsalWGv&x}Uft{&_zpvL3%P?(t&CrR_e_fqK#A#owLU>S#(essKTQ0tq<+Efb66fZX z_e@|iO(<485=>Ge<B-~=Xu&4ef2j&@z!}-8;jXJ!JE!JQ#ySrvgWd)bb-qJd=#+<1 zJ<@@!%RVB>OD(0>&gWSTm(Oa$_ipJ^5if~q;>`PMaAYV@Hj-{qozwSgDNeSkOiz3F zQyoB!PF{$#W0a)Ag*BDbraR^CbQRZik#WyVYTRQOyCEMC#8y__ZmP`ru&D_Sevx9F zfGrG)H|WU>Avi(OI;!B1&##0mj3Tn(C^hvw%AcnwO)RzelON=RP-~}MIdfK{ZT@kV zLWqT|8v8F`9h<Tg*531)hPqU$WDV8RQd?{ZGFe=0-`=Nd;aZSR`?NFF52GA{5!ghV zV+qvI8}1*d-Qj6wyf!?ynF*b;F=aQ6U+q9Gt-OH!ECu5vU;QMi(C!t0ht<8h)bZgi zEAFvCoP%j&V9Xz|Yc8gH!d$<gE%FKX<MyLdzS2UHXL0Eqx8R+V%<M@mS+P;|#sqQg z0U65Ev;!LofG)KjU@j>Y#3@bbW0gb2x2#y110_D8m3t9h6V#kjBblLbdt;Tok)4y* zG*m%ug)_inQd7P_oFc`DY`3=i&Xc=R;;`9quS{JXk-8vhkw>k&H7p0zJe5xEEJ?(A zUg2*J9f75<wDC)#f61KMv4um6gPTT`%3*OPULt8%*`Fl>ZF(j<{e*FArZ-rJ8etTT zC6q!^Zp|jsfj%Tdm5kcSP)u_9&8dH!kaSz($bu;M%5vd^LH{FnZMY~Q=~*MXl)+#_ z4*a<+(3Q5q#EGsxww@MygsD2|pVhH=V(db~7f?(tt7L1Y%A0I^hDF=0pqh}g;zI(i zR&cjb(1Z-MfeYDtCRJ`h@s*qS3%tpy_Fr8G%q;&i`N+okzjGaQXH3?Rw8DnGexo#x zH&Ay}QvIU<Wn%(^HP|tA{^Jvb+X{@-We4l><5QMPRP<!=nF7u3<#kF@g%|n!5K*R| ze~wG(=16@vef__-?3i(y|FmUOex9Enp2IJW=KgYf|6cO@{OpgGn#1~L{JdYk^8Yw} z1i!xXiy4;a8uz^%+Un+1rT=&|EcVK>O|f~NcHhUq;g5pnoU33*)!R4N$hb>OrrbYV zCF&-yN~Tq%M>leUw|3l*E}EaM!ZSqiOfZB!IdSb?dGv68yyr-rW@coCmVdgBqA?S$ z%()^sWa-5@pjdqkr*#X4%HN1HPdqqvY`?yM1P;dpz@lMK@6>Kz7b8V}GkCWWZcNcp zbvz^U$mnMC`NgIUBCQ$$W@p3o_5$Yqa;0+uut392KW&bGa2jPM@MKnjUNY83!bcc& z{0Gu=$+XUq+4Yf?)u?#j$uM6vBFi?r#}+&c{jVxJz`4_8XUtJzW)Cwm`T6DPah;i& znYQtMgsYK&_eG7D_{a)_aQa{P5#93236BKJ2o>O&2zDR`Jm15-*f_NUT@?(c=;D|+ z*5DZ^7rb6H+<0mytZ?kKP_Gkrw%e$1Dqv<iu5hYQtD6*DD29kX8%!t$2|fe|1P_LD zY|^irFx2_h7%SzQ3=Z_wch}xGF`ggAEqD5=a9r|kMB3EU)Gi&!4Mlhn%x|@+CY=qu zs}Xv<%I@xJIzw7UV8<Ypp)#^>^H7*Bh_o#%@ULXUI?xJAe^c(YK>#GByESk-WQgu6 z<rI%=B>3-!K>|GI@R6A~ADw%&ijkfUTL3E)(cv)WStt&AtSSdHaYn0;aSeyq<zT}e zvD@&3Ou+)DkfhxkMGo0d!xV>!Oxf(ph}+IF>zZ+N)3H0_JSGgm11+VgsiBsc_#>7< zjFnV8+Dm279iq2+e+C<!IV!$Md=Q-1N;^@erk+7;qv7Q6njp{u5(aij9Bg!S3Za)B z6S9ZiK^UzO&oaZCk(WF42hzNDhMH(t^_L<eO;TOennp$n0wJeVp|qr5-rKd4s{ann zBUz}sJf{iEOw762L>0Wli2-FB+>H8sI+<vsnotV#BbbyPV>U+o$QgQ?#j{yog&$$& zU<LA@Aa{N3VFDVm!^|^C8sP~|4xIF@fddr`tpWfk(Wp4WHG+$P0ktqU+leZ`JHU2( zAaKA!wK_K1#!wgez%YY!RYpV{tk7H8(jL`c7yb)r@enWpRg{*|4%QI!1?Zvs$Rhw7 z{_tE?$mFnIQAAL+D<o)3S+kYMvo%aL3$TVDsm_D%#~qb__ZOqr<>sf>rk4NyIAM8S zKRg%iBozA632Zr!drFHzUrn-4ENM2T+Nz~zUNUJ^z?1j%Ac6RPBKHqm1GI%Ko${9O zy$U>^-pcxVog!bx8VcIn_5vTXLa`TE+4($BKcRPJ@Azi%eWg>pL;oyf{_6m9_W1k( zoatqT%;GV{KN!Zr6YcK~cYOQ$;z*5wSky)4o;EM01iw1_W1NV^Wkm9WhI<`*yCziA zm8;HU8=gZ4?q&)DXP6gHgmzF*n|{{<=cY|?sb(JMz?s(tvxuCZ%)h+)kiMJs-C=P4 zhS^)^qIYq3Go23iphT9;f8G1M{cQPdM1zP?O>CIbn(t2RIY#!gAbNJXYidz((bFi7 zHb5qwdE9tC-sYm5>PN>FVn(CzUhTWwP~-d$`;j}XBMmG%Z>o;22W%tc*J_mpnNr)v zY5-oeye=a8UX>EpuFPcq1{Ap_LgT$ObYkIqy{i&pU$xEXL5*$g^G9O%<ZzAO)3s6o zSm#BlAaZ)ME=I%xdpE1lajKTUXuG<qWGs)PqIcM$p+Ml?@Ivvq=;Pbb9Q9hzLKXz} z*t1^Dd&h6at(sQn?Hjmf3=6^ReV9EvD^Jx+{^+8v3}Q}MK(yA(x_gPff;_MB12XKf zM;&ndf?nHDUDA40o{he2chf9@puZ_*K~CM5l4t`0G;_Jdc&52)-m7s+X{AIrm8!K$ zJiVAuhV@KL$%}790T71Ma)C>GZG~ETyO^ZmFJ)@bWGZo2B@o?7WNQHd5$2RN0sgIb zAqk@}DBh8mGopt><4Hvz*#*x~`cT!ffbmQ8ld)I4aG7kBs@Cma)QgfHD}-o(Ap7u6 z8caLC{c!kAGCljSd~y^4qu!x&K{Wn^h-Y(`NKzgC81Wy57)-mpE~6^XrCGyP2^6sg zi5#ntI5*--n@+CIvJU*QGCpf+G8sbNBgH=?xm9_B_^TA%s7=v9grN^lWtUVc`}hCG zWyn@Ygi9z~XYKN)Hk`R<K_5H$Q!AMnsugnEN-ZMpo7Lw{l5Jdpuos7_0P$4M*A;2` z))alMdG+${=ml=a=7Ofy=qrT~iCpEG7HjBf7U<RK`;_El8*1xvC!*sL_jRwDPY6r| zbtHA+$9Q5WwC28PIYAZtrSD^#IUzP~Y=?4|;?KuxW=hQ6Qq0Z}ckTPwNqOgMwB`xC zr!DBovGx;+^P^)mk%S49WjOf1Vr`N$moVmA@}^!-QS=q2EF1JLC}aU(L)gaCBt`m> zb{$~fEs7szVa55HA_Uk9=aoKd4C<dPY=0wgvia4`_5VDdvDF%UrB^%VYPV|@T?yg! zUq8o%qxjB13-{(re;XL?`XDQv&|Yah$458u;IduQrXh_7FKdP=2-289T&|otfW>Pu z5H%`!Ua08q*ce8{Adw_9T#eNvS)3^MDQ1TqxkPpuiwDk=Ru?Sk3Vl)9uZkjIoljuP zptV4`kjzUp2Pi;`<b!e*?=)@^%}doMGD#Jj3P^D@K|K;oDk4}AiZ-T#{Z!->VX_X< zN?7iem`IbkD55yG`rx*{=xai*w{Ql*Z&HPWkh1V8LR@x>BTQqZw4>~PNFJBJ(E(}+ z=&s88!aBru+E(d1NhO7%Sx8_fXpXcDqZqFssg~s`!>tRB1{mwV&=SVYwGqi0BzJtZ z-nG34GW}Xdp_}a2ZmP4;&?2$OST>Gx?eudo!WY-TT?NXPw<zO@h_qrWYdUQ;d8Q9& zt(LU<Jxnski{T2jH*`eSjnwEGirM$JX09xVtqB?iLvK==<ZQ39v9$fEXOOqF0m(zU z+9DNblvuq!O$}$d{`=2Aa3D*n;a$j3Q&cKyF{4oSBDEinmlB1Jd4$bCwQGbz>a|0V z7O&UPQiN2&r+Nx;DZ!g4ltb+t19o!~r|F`Mx|^~$rft=7DJX3VMg4=a($+rD2;ihJ zB*i)ZND&Is`9R*T1-UctJL!i9G%d;^NK6_uAF)^s^O*{L0)Gbpsxg*IY~&t4KxXVt zZmOn7M8DMI`<+7ES?k`M<i?s`OfuXLj_L$$(ovvRoEpc;WtR`VN~&Xmi|ZkNEx~Wh zdyFhM-XVCOkYqbO0Fi~#BvyqKKBcbbdNs_szji6-Nlm0%ZOV$i=VV0Yn-8(o-j}A} zr1bd5jvO3+Y3(@fhoNCF%Mn!FA=*%GEgZ6iUvH1~%w8dvLid=|MSPtMg|$oR=LW1M z(<LVZign@=j&A11O>fNIbn%MgqLQ`p1Y>$m>VZnDbE;j2McnRtAA4r0??n}drB-1q z+h>vJW)$w)<O3euN!Rvx1AKxlh(=hN@mhazSf;?<m|A4J7?adbC`I|Tm6qSDI?<DI zqec|&Ga_+w%>I>#aJiI&6O`KFq3=2IgbAL*Jq+q=XMEj^t(RWr$KmyuA;A$x>zMNu z*CEh4v{N_#C32~2{?PypkSCbic`ntn__WM_FFO-t)^3LGsW1RfOhur*j35BX+)2xk zzS8PxznEY|{W``e96Us-bEG*n^RrtT%f>Q=cjhh}Xwn#<rPO~qRQRo}H>KhtZ~#y2 z*4?)5W|G#LK(%wMMguO9<-vk<Povc$6dT8#hvLqDX%y5)pJ%_!9O0XG_U=aJPwk#| z>Tw957`o;_TTeI=KvM+ZsUocdKiaIOvP!!e5PkJ}%av$aORY|_!B6#^KeQMQbj^%3 zI?{Os?)RZux?7Yt&a*=Mcpq*|;m+t`ZH4sYyXCdOCEc@Go{>etqf3`_8RQCM%~3gN z<f5zbQ46(sxK4JddgE-GB<^tvDCFO=Scl6!LDq2VqBfso<yw3a2jD1VX_;MmF>D#Q zNT}+ywc#&q`(G8nu)uUqM^1yoWEHQ9@_eAPnh6x{xcE+NbRq2%X;yQtJrj-sPZ%Ms z$s|eKyVv0=jY&s?gz6O4OIX$q44-DCSd&BR8(QfK=Z&71rI<2Hz6$5=?>9N74Z1}d zj0<=)R+?pxFFDmUnH1_6Y%tQpZk>Gx|GC)2C~kE<>C4f8qZkxkY3c!I@($1X!+Ry) z*^L-d7+QgC-lO?<e9oi&9*mmeKZc3V^9m+(niKbNqmGASH6;7&=%QE^!CPh-sibz< zXB<cOQK8h@PfkA*aR-aF6H2(LzX~nx)&f>}X8Uafsr-~-#}8>ZA++2~cn}7TPoo4Y z9nDL3B<<bV6*}iH4|=OLTBj{ZxE}=iH0@fYG2KOu{C0n}5RL?K*tKGrA?dLrcs@%} zb^`B0hmseT3?#2zczeA`PMXpqiyg{uiY53)V^=TGQVPeCs<yth+b$+R`)C0gXK@a$ zTDYKSz)=o=mQSx)i%;nWMWlS>;oZh`!m)iA9V<3PVp{*?7k`0AV01c+&XWdcac27H zBObzeNZeokh7)i$A40vv>4b~uxD%PUTH=WP2wU1Y26x6O+?BKD$v)%0vDavEc!5C2 zlBIUOjL!RtDeO@sd>~^_Iuh6t4yc*;WYS$j;hDbUq8<e?+It$0{n9afMjSb--f#@w zmToo7yv-fgJWo8iD4sLe^s?`(YW(${s{QNo3$Ew3!2Ms;J~rn6Pwi83w=<@fHLy^0 zvZj|IU}RvR7d3ZqbRyv7V565ZwlQ@wBVgoUV*Ot!fz#=dwkTo<qqklWd}N_dFQ5K# z#Q=<{!h(CikPrR-(gvViX6lkNt+TZrQy%!R+?Movk=xvgirTTh%BsqnM*&O|WVXr8 z@@P8iXGVz0@FHm9!D`0w$}H+=BEuL)`$|#|BpAsNUZ`1A<9vGi%B&CW5EUaMn0O;B z1w$q+-lNc}@999cfg%wo@5q%9tYd^uh~*0Lw8pzvn{als>L8H}6xN?=NzCQ;;S=h_ zwu$mH`5@G#T4ow#|A(=62o^1B(rveG+qP}nwr$(CZJur0wvDrG+qmbic=hg!c-5%R z?5*aSGxE#KG3KK3tAm^x77B}_2dPR+bS4|cgY+Ybqz`N>h@`{xQ3nVORk6`yOhpD# zdLCLa$secH5P8gxeJ$;w#cUf1I8L6g6k{G5CecTz@`EJenfOo{^#k=s(Pe$}v(rFl zORuv%)oef6stj_j2E+z9-+_q1(s8|2s(=Q^na7|&H9b**iW;CiFbL|SsuiM9_2kt^ z1kMSd1~u~vf#%kUiEC%TW?3`As{w)$eM}BDS;aF8ib6wFO;+wy1mjJK^8hLA8|+2_ z86!fO_>EEifnyMeFPe}tJU500HK!+_W;IP_IatgRIk!rT5NVnBqC^uiVdpB}cpix` z?<|{~sW{2?Ip(0qo1mfyB(4I_`@0?7B=_UQ(lr6;)I>`ml-2I64HJ0J<b!MiCZz6? z7;!Ta=_4q3$mSe~)he$7gDmKE0@yzy(?n36*gGp5li$XNQI*E=`hjkUpsD&LIgpJN zBJ4mkM?)Kp;uS7~#pB8PbZGN>baH6RCXo*5myh0kUJU=aTjlwsNYp$zIP-LA3V6|y zv-cw@+`g4woQ9MQVLUYOaUsju>C2<nl27I1$;p?hM$Q)ywJRr-pNG1nTf0Bbzc&u@ z!yit?Sv@Pr=FG^MS0c#Be|<CL^76lVb9oFO&qsh9lhS#fj2?_W9NjqmiIJq-62<#u zck}Xj^K^UA?u}wMk0q+p3|t9`md=k(qoX(aOJJh-1QmM~>fSpZVm19j-sM(~O#FWQ z$T5><6A^C&YAttBQ2*^ZF#np|S`+i<&FspZu4!X$oM?c`IJ}=0`955}kMu$D?$Q(x z+MY{IN{m_sL+ZS61yq<6#|3=5Fl4Ty8cEK|_Nn*%7Isr_La4<qhy-=E`@G&rKeb%Q zTp|6{V(B2Xk1;m(@j_p(HZVmMBsN$Q2Z`7f8U~p98}SAPfWadaK*x)eoK|w-w3tR* zdzygP@w$o7=T7hom-vI3eoUL5$aWJsbrYM)0nHXTGvFa#{Y1H<5N`{VJt?kz5ksfM zeH7=RF~!0jSv|y?1jQUWA$Jq!BVI9I+}9HA-EsLiri1_Gi2a39_&Qy)+{R8G0n4=) ziIGFM%wLt(*F&2Ao|m*==B2@j$gxV>a)k~Z*&9lE#SR=Uw3nxu;bzS2;1jW_AoyDF zm#}<sUMVk*)Ll<~a%QN#?vhDB$pXUeu<^Q}A7OXNRG7C*O)b&2Rp%r+O|J4X7}e>r zsFnqbPWAeH)NR4P67kO~P3(<?Q+CX(i)FYQ<Ct7wh)&(dSn8|4VyC~)`cEA7-MJfE zFuHfF@L*$q`QvvKs2?~M%YF9zUczGNX7_0q9;d6<U#Op&mq4-t+h+Aogn;DY<ua zwV&()ZE#w0)(XdB-!lnxVFJ&LhDnBB!sO@dSU7imCSEQ6`{(iELg-Bz1~}tN9an%0 zxG5A&v%OTI;t>~d@5);<O3Jg$sR;bd_TyRF1#_-*ZF6NZp=`!s8M8SIqr693<A@~3 ze2j|(=3>A#UmVwQO86E-t`@w)@Bu}F1@RNsKtU10;i8!kyhAc;7UABRgi8r@m~X<z zO1+=61ZMDMM{0_&n<inoeE`qCn45&HgXVn;eSB~j=e(|1V6XMvrjl8+E@h(<Hn>}T zbC7vXqKr_xf$V$OrK{R#?xUC}SAqoZh<0vI3NdiF$i!{of>i=e{LWPl5%7c##dV1Q zroA5hfP{t@y!Tq^S;i@vp3_D=&qkGGnLIAMn?!M@sA=u7B=60{*n>wesrh3&oXC3U z6ILhr0~#l4hNK<OP8BYxTDE3z@UD`!R-w5X*vJlm-rzk?){2_tS?buEny#&@)}&k= zqHSgy=g7ukw({z+{=CW>Ce0g8lhkb{bXg7`nx3{&zzI_+l^X%Kd;L~5N%6)L2`4zk z+|S&MZ4BDfV=zT?Cl+^a9f2of+gQAct)2r3FMHh5ZXMsaLwuQ)R02F{`%FO<x|kBf z<DdtI{d(*Ep_ZiMS<?(a9A_{`Yqn{JID4%*-{_$0>>{3zvNLT|P^a^@5V)G~Z8%ea zi;6w(ejU=jQAYPbfTDbH?xXD}t07H}q|dygZC@pnm=nA+DqP=D3B!`%V<b-&PC_F# zFui=Zk~q`ua-&lz*J=ik2tz9Nw4B3G=~L{7UqC&#UDyBNDQ0K=9~RdbIRBT=t@czc z&OeU)oca^ll;z_$L=dz_qe;I2np`t-w?l2dpvn5|;Qxb>U*g5u2ud7TnRa<ptRCC1 zATmw6MQ`%)`)`cA*FP)${rmAq_7r)YuhxZDvb3S+<6onWP+cqCT-OG=-r5~-`*il( zv^Ia{QEX!&1~N0BUXPE98T52@dxkOm4C?fitgFKrotIKZw%bz$#9-~>ngu$-YQ~bQ z^i%irKAKy<pWBD;I{n{&Zn8P)SbyE0=l@Ei-;d+4sx^Q78m9W_*{c65g@)7eVCTQH zj$1K0XQNxKp<Gj8s$i|-drzvSG;A<qojt+Paea(Gom#fTF~IUnGekOncjC46;>G>; zk}tbFm#SS_KJ0$PZW5@jxF$K`86Y{PS^t7Ij)UHe{VyTe>6GWz<Nt-l|3^qBVa!jn zYb*FqJr6jXpFf1!*WMlKKa3+)Ju!HG)%f|1`t_I{{ofG2t&tB_lWZhj?P}5SF`a1m zs|kyXm}kc2#`X5B|KI^ONcaE6&?<-jhLzrIp+=J9>v{**Y-i5?!-^L)L6LrWvG`}6 zpU$YL7684J34EFtf5!M{o=5y|^ZX^r0tq$e{}qz$*eJywECwX26nC#_Rx9pZlC07& z#&S|QqP=&b+bkWrrr4xqb~`H{(LB=p*X&Kx_*}YVV$*Ok5qTiFsN925zhYwYU-3+` zru+}W_iujub($Tv*WN5tKm(Zxho-6~Ye1fI9OD4-!%|p?I0T~sY4G1#&@&w<AWHOP z+v<V)?5m07jrcVi=$Dj;+b6IaW#<;UfeOk&p$fG6*;{~@hBS-ogZ)uPGY%dc9D4*5 z3^471pn%sA4{I4Cz+n1_Vk4?i=yiGobqLN2&`h0SmxyrCUOZqfEgKAVZFLdKRn(>- z4~TUXoGI`bV|B`P8H8UJy%x0n9NSTD3LJ~T-2{4t?KKRa02Ghl1ztCM3R|!~koI~~ zP-EcH$Ev`K0%m#Vk(PdBK-LZ*YX-#`x+auFwS40sgZX?~IB2R=k}+(A@UtwRfVu#O zaE%&uDNaLjkez-N3osf&A;JCdYd$S}99Es&Il#_)7NZ~(k8oYqht|e41?z|~nV?Y7 zTjNT+Ae{-Qdbdg*ZB1dO!Xn2K^)i4zL8Qe3J-tCXA!a6CmbtJEYFNVv9g_97LFE99 zO~E;Qtj1h17O}*nIot;@$7l?8kb{w60J?%mObBd8K)zTIV-npxlhiOtRYM;Gg8<#A zN<;dS7yES+$>At(A`yrLSmn2K=?yFE-Z;-HN#`SvpsghYk{ghbiswU6PR2kG2Q)?c zg=(kB4S9+pPBa#MBp}9_Xb1JI!x7)0IkqT{K71EZLQa?eFN4pod~ZXI@dZzuH`&-n zj>hgEgU^g*^#8-)o67kQgKwO?m&agW_vZ=LL-g=vZ8oQl*!9E)Ai^^NcDT6=N+}W8 z3>0NG54KxOOaY-rSuJ3iK+%mL6G)U9fys&6>@mN4)ByZ(9RvXk4`(_AFlHnI4RZW` zcWDJUE1_szKGt!aE$&w&;FV^1s|Ac;oftY64!YDO0_|-8`tO{{_Y$grnI&P0jX}?& zP+t8py4SVL??-{#f%qa^0S2VH*eHc$VSAtz;U0TOKmO9RU)nG5j6<b&n%wUqarGFq zPzTDDVM<o-H&hN-ZXW>uz)kS=89Us#yR-wKcR4#|-w$xmlWDmGPV!hok#h-@dMQaE zb}$Nj9ijUXhmWORuMo$b`^<KtX0qeDE;7-WSv%PAQ{s+-y^j?<8~M+Hw3X(3lE0$A z)3^Ge^37}Ij2*u>#kvwuH%EO!E_)BWN@ts)V;%?)&pf_~kx0=U<9#G?<Rsb?1T_dC z2&Tyd3St)>v4to^K>~b4BPaV{Jw_aDE!-Y_WnL+U2mlvjLQgkzs4fY(oC%UdMAUF7 zy3*a!N~x4tFe0Wm-?e<b4w0e>%qo$u68{H@dci6~*V7u}2IrII8eLx4S`Tf>ZE;V# zrF2|le)0)XZUX2y>&V1<MJsCpapG{kZQK-XR|<)|%VE|Apr)RaBv$s?ih4gb+<bEl z6Ucj7VtFI5GsC?5S!_;;<j{@oF=PwEcMAYRhXI~-e(iw5c))M7z~M@B!g&^1myg$# z1qG1@!&HeH>A3-mCb;BIi_C|5B;o#Qly-gZlVyOdCUs)oUDomi6jY}j)G-_Wd(?VF zpR)f7sUUFMK}W0pa$b>b0Hz-61nhTP$A({hMvQ><I?2lFmF|oc(cJ7%vwIVSutKtT z1h8ds6}iIJD6v1ef)Q+$4w7JO430A(2`P0_)LB|{8(QHE;<e%5NV%*zd@cUfnBg*& zK280W6`rK$KFwD;QzjO)$@r<6KQxga?Osgc5h75YkidO{Bu!=%VjKR$YF}xjg!(r- zqO{=<iui}HqGMNEu>AXfE{a<*k~>0J8+M!Bc=Ufo-K^(I#dqT@_@2|ytQVEO-J`@d zZeUPTuN!ok8ZQj?;DTCe`5240jiUS^n+#11;>oT~|Fv}XWwW}Ki!0i^A+i}+7|=aY zh|~9=`3pPZXo*&Lw2dzZ?xz+b&Ff=Ln(Q38<9bKv`H$cB|3UN{XGPgof#YfI&tq?7 z#*CS@6#T{V$*m#EFtuoXyHxq)`9gW~7}^#J1lRGeFBuC-QWcg^x*jGa_=L#m5gp*6 zp(dp<pG!^o7cr5(Za~J1$4wo->hmLjGf{TbJixSChg+OHPlQRnae4j<mV&O3`!geg zVsP6#czeG`a#x;vPN@hp_!6mG+oldfpeB?<Ssl4-+dV+Bo$UbNh;(wYhc9uuMNaZ= z(1y+@nuP12|Dh8)W^m+A`xo97L|9?~u7aQo4TQuq8?-vuCR7_N`UJMDW_BeBVLI}a zC%aXnmI5@}ecgLu&)f64anS`bv}Ic;;s+KfJHvq8^aeVl30kZ6@2fte+7#4fj<@FJ zWskpXwoyLku-)vad)U=^6oQnUYq!w{5oofW%@m^Y#-R^9lHHxPz$Wo;dl(pK(PbHV z2|q%dzkInBS=D^+81?+s+m$gdTktx#2Lef@B1I9sqnq^|pVAnW1ACJs9?@2*kMXSv z<PmAfGD$LE(1^z@DM1R^NNhX9HQOy!2NT^=f>eIRQd9VbI0nHnHIx?DJ#$NgWoGH@ zR9jZhGHu`@6TeyKR}f*N+k4YwPtV2GC8h^Y6!#LI@O@H}67+c8@(zx1Lh`Md3!e`v z1TWQ~F_xd>0zLW`BUyw%eII3UDRxh?aN1loQQ{(cTVd3=fMm*25Kjz71|RIHg(Xxk zcfP%d6}O;&xSIcofx<%3bL44MRYmbmg+bnU^4s)A$$hm)>B7A2h({a4m{`{La4%>4 zgNitl=hET{aZh@jsz`z6Z5^i+DJOfT#q+A^?TvTqAS&Y^9=Ec#4uMS0+8O28m*LV- zqk;5`O><?9GyYUVX5xN;+p};pgdx)5!Ws!z%nHU@k<gs;nN)^TCtsy+0`Di}t+Yn3 z*~**B;{HHZ6Wo#rf!H!D>pigXMr>?p93B6f@z)HuWpk6tUST&Cx3qk_NoEqo0*98w z;$r0p`+6%chE-VZprURMuSj8))d2x76ZsX;y_J=MoZO#RE=YLvopH9;3(_R1@*YgI zi`O1|QA7yx{y0y-394vCE($9u2Cr?>!>f{$Ja1aL)upAzK`zs^@ARpV(A?Z?EGA~l zVn4R|4^09zt?y`8!@Tx{6iN+eED?O+=82;b_MfZ_#{@40k?!o5Js*|>t}!R>{*8fn z1SqvWkU|pE@^C&x@>Pz`iMFPkA(EtFnSZODX8G}wrqC~|Le@-w6-(g?<|z&((5B}J z1jY#1;z?0y&x=otsN(n;sQ_!IYv8JvQ%=wh$c!y$#UhxMxuL3L{r+;K`b4S#JK!v+ z=>QD^vIQN+q}in8yRvUo0RojDz`*xRZs<OD4;I-;l{=tiSuVTat9%0#uGx?YZ4dsc zu%E`oZDF>18he43FZowEv>IGa%&H`I*7&i0kmq%)rsGxaJ)z1=uE_G14}`DAZPvlf z&A?#`ShQ5B_M7FtxW=|<Ht$n0h?W8stXhz=A}8!#xZ#&hj{Ypg`SaaP!=Ov3{R5qH zk>|#924gd|ABTBEx-69L86DT{9(-)4bM#ua(QZz-4wnMyG}fby?$R}0a7NWx*0dkg zBXVgh3?0FF6)q9}gq*x5%f;_gaxy*c<tr2-&ljuH79RlKh1mgca=G1PrWOWMU`3%! z+2ZmBKJfC%a(`jk&GI>X+%)Mb4r6gt1l8Y=#p3e04f-)-;nqoUw&$PiZ^t}NxB=C` znYX^8Y`2jwzrLi{A@uh?1Dju#HtXS9CUBVshKEbX*Lv_D=Jyy0Fxh$9#+28!r}u+e z@m*BDHvMc=xwY@)R(1Gm?j6lLRHY=+^H`mJ$N0ZQIYy_nueU<t>c(?u-^bGPbY6T{ z<9n{)LmhIY7jX}?ySU$841wKvJq!LS1NGynKjMs^0%jdbps$>Ubj2s#xwZoCpy1x~ ziC@8V3%~NyzPCJbdiJK?et4!`g?EF$0%ed8s30BQA6;cl3DwxNhd+F#vpJX|9f#^+ zl*Nip+57PgQnYhhQr%c~3B2-b&sWHFH~@}_!(GigU~Mf?ZT_?TU8Ehvm^<Vae=CkI z&Bb~tO3odVYGN(T>ERgvNgs6LSKm?U9CCWO_6-`%Ar0)(_VRl3g1QhhSaj`t9F3eP z>~GX}1Z_Aj>)ENDqfkZ2f*0o@x^4H2lAZ!<S=h&$?BVqGlL~*xX&gWO_OvPeb>4Gm zcv|ozQ9VnS_Ue3I_u;I?{IxA0Cv67a(Ot`Z_u^l)=9ad&_n?^ktW_*Dird<vc-k!+ z2ZpBiK^IE8*4xaH(>dmCaPBRA-BHrFW<`s5n^3vgI#E5@-LxP%Z&38^q;Hjcmr$&l zSgG}|NHLxr$OI|`oSVEpqDhaBqB4e5l<SptU;)C%WyuUr0y|~2ZSfl1^`oS-1WfUE zuff5e+Usi!n1ko;cgq$hIb8BwC{9!L_FIu+Zxffz@&9W8%kO)}HsXUUNyCzo$L7-6 zpqngv!@NCnxBlw_Ze3;5M&2wVg|*_1!y`|Ppfz_YIL1m8J@txV*0m+QG3AyU%!E!S zHy=t&m3D@51%g5Z)Fm-bk(lKGO9>=rc-AMnXM;_CzX$pqH4+mr4l&Pk@C$c6g89Pu z(Bp@SsBFr&xYWf?Vj{FT`2G<YI^zAjy6Oh%R4e4r+WRPXLtJTy|M#RrFi()SOPf}! zs2g;#!j55u+>6%)JnC96_CtXGtZU==_0{YI=i6VGVVL}X3KQ7>2QN7j%l|S=$dZo# z7bc9|K2m-p9X7w)F+qT6MEy$>;N)D8eH_^QKobqQ!TrC#qGTH<HqJe-YOf3!*E7wU zG-%YmFGX2>`76$&gQ<R5`<6?{Z)dvS3J#98uXHu8p6>4N%Fhqyesg<&pR@D*-|h{i z_UD%P`@Vn1^5Oaz^7}TZS-+`3F5~<B9p|k+wglyW`7GEkN3g6@S-bBXeGD||EXz|~ zlG&U!lp><%wau_?V6;TpEm^6H(?>E*M)Bdp_j~gC1w4-o4gM|QZ2La9OMiPrmLJ~8 z#SJZfcOFJ$8CZL`8#w70>^Yg(e1XpR36rbPIWj*yIIR1-`v(ddmB+v$VUO(O|NT*n z9QMoTwZ^J3J8W`0{XIK;I^GBV*hfeAg~BRbTAH}6TbT35UA|IaiN&itZwqd1(sqG( zuvx^?eU*+{HI+S4EpC3M8<G6fq@AD}z~BY#<vvzba$B5=*#SeZIeW7~?yOxJj4_29 zpr9eP;<TUgc5A4fmU2{6vn(dsCXP2Ltfzs3GJF}mAhjwjKkQ%VucA<xTkOAbG^jjP z6Jx9Oatqz-SDm|cG^sLw<EUqKqG9nSjHAJq$J{#dxZ=e2M7!Pw;e6nESdn%@I2wN# zGW>Vm6O0G$3nl>fAzXoS=6KI7Ib3ylQF#5v%ig*pz7JLI3`%PB8#jfVTRe3eK>4hJ z#qv?X;g76&F~VRi*jE`V*s+pS0|1W`M?dlbPPNBsiub;^m+&Ah7Ue$g6fc{t&a=%5 z^Tl_Navd%+ZD>|lpoQw4A{t{jj*5u|jT|)x1~Hs*%Gx%&&O0|j3WDl{#8hx<wL}=6 zLHegQw@6wuMzcJU?g@3LBBr@edSXU8Yu$-X8G$fuUlH6GnS@tWa<JhKfQ3UENAr<k zYMNc!4r9HWns>Dq6t`uVt$L5W)FA&11B15IzYJ#N8$VEjj?jQy3kxm6Q8FH&lSH$O zn2W&{agZG&_ETC+)q<d)0EKu6bzc&k8Kgc8q9ECj1L0GRmdGM`UT_kygj0*kz|cB6 z&Q>9Wk~F>`?hBFL$^bB8hI^Zhi)XJ_puZf#gsH+9jeGqwbMG_FtU5|eh&CmKj0ZJ? z)^MN=#jVp#4kQ4%6hjG=<&?pVI%fo~ys$bBJHf_T4>&{u2dEc?fJTU>8fmFKP@~uj z+e98GYsTawQH>#5jXXHE0@w=_;_fPo1Pdzi`}lJ_**`aVS9ayV0RIDQXx`y@Q!C0G z?-U-M=`a|YEJV3sNrSL8QWS*cM-XxaHRXv0+xH_8mOy5;#=g#ZYevS|F?)f1qI&&! z<$c^5@ov$5Z1Aq|@_n2ljpm+q@19cxUcZUueGp&1W6PPn>WE1`1CFSh5ANCf6X~qO z2TCjWZWmn`<E!=g`M+J|!v3)kg5Q4n;co68-j`y7#*#ym9$J2S`Z;{sryriMe;ZcU z@B4kYd-;a_<8O$F4ghxfRm|Ft?f~kc@%H;M+X9h1YfG_*h5^KJPkCm&F_*MV`8|E_ zNd?_*h7Plr62lZRa;Yv3L>!Wmx#qJoo;;51l+}$p=Y4~l&k-Xcw%(Hb8x-ArZ34EN ztAI9~x=}b=N!@;&0>|Ke=~LKyPdFH6|Jr)ja81_3WwjBkz~-a!_tZ-O7}YJ;eL$K2 zK@E=emQPxM;${k*H5eF&oH|=b(In{<)zf4HLcF^2m&#r{@y83Ts7N*caUc|fOy?p; zp}X{=DVcU01hEY#u%2wp{rK!CqwV_j_H-lI0$MniiidBTI>_RsHT_m^UQ6Fq-^Z39 z*0<~?KS9w0`j|7dDhvIH2K*jGKQCha`&9KwbZKqDO7nfK!12<f1sRc>OYNFMdz6dZ zwJPdc^>TYhARI?aZ|Am!>+x&dYoV>J8($f>XDn!|Han}@2TgXi5#d?;*wxjah_Ic% z?iPw4omf$6;C8{J32mwo)FKB*5V1YO2Q1`Yfbl9=jrSK!q07d6$PdyNjxh<Y++64# zGBxZ-BocOlxhucN`6S0$(nI24iX&HPF-Xd%I;R{$^QoTTi%ab+&z)^knl^a+0?}~r z+s#Vzc;t=Au7?Y)bqW(JAF#n${4&}3#v*s)QruG=C$pXwKySTn$8#mO)k@FY70t*m z6rGVglia28^ADFA2lCkJ8H*oukef~}M|mTAqUdP`)LbqkI#jVSmo<$c;dx_}krXSM z;z9Xa4Z5Ozz8MiaY99ES#k@e+a+C8WrSLQ^xyc&lhH((|WnB!CIe?G1dQjx^8Y#z= z{Z$|><Us|n#%`Y=|D5ADgx%7fUEZ|q);ZLa>29uW?iw%o2ve2qQcqL;w(x_WPNv~E ze4vRmYaWrXEP5V>UN|z-WQjUozANHngqJ9~^I2}9lugft3pAtPm^4FeFp5`&6OR_p zVcQ>D$g2ozbs_Hd+<x0iZ52cLHbsLQB<wJuf<nB;v9U<}iTeBjJ%JY@eKHB&(4cwa z-q8eBa|YUcMA|NkX6|>{M|;|G8bb?(JY29z6Hrs@o1+vFWw8=kI9SUq)x}hyL6Mw7 zC*%k#ppmnS4@rbDbV}JrvPaKH6UNUh7DD>vt9+D*51EaV3+l_{oQO!V{h7&XINmkQ z(>tm9hIyJGnx+wL^`V{Bnocd{`WzBAyx|1WiKOzu_$ve54v(XgUDFj;`_!o%(Y9CX z&SkaPZuR_}SIxNIj}I|MXM$xXge3~IU0*S+?}n9sY_vzAisoD`ISi9$);a#H6v7%2 zgr1r;j%AV!-TbdKa`f)WkI@~<RMsgzDAq&|&S$2scycwoBCkiaWfeY7I<%ihsoa#Q zWT=sYih>m6EgQC?j|1Y)*M#dyW&GosNPF*FMVwwDgZ<u7KWg@P4t{+di)Pc^MlI0P zIr<_q?k&>!r-(8zYU}wf?NN>Qizq^Lz|<UGEyxhc`?xBXEC<9bURYtNUULeF{Li}= zBkzI*hOxbKLY_@wx8)9)<iNJ29wn|ya*aw96t3E^^gfnp8*q_*YDz8OMTK;t{Ah{P z4_04+ECgwh?mj<h;797R+T$A?r2-ytYzZ!=k_6qr`T)*C_7!2OY1HXb3<AWmQ0+jc zg!ge9$iF2~#({{N^dcKRS6NgkYjRRi>?kbVh4_Z85FMPpjJefVq>NU0*?2>l2L#{0 znkb9%<tWeDSS$*FyyW1tM$czx%E+uHn_Z$vKP?&`+Ej)Je!N_beraW{f{zD-)ja~m zxU_`8uyu4UJl5_badlC9A)CBJ0?A0Gty(tiiXc{ni6kdIqrj(Ty2ydjXU6LXv*a01 zu?L*G=Xm!NS~JZ>mA_rGJah~1Of7nzc5<~tw=1Cd#DJrMRdK!$NIq{_c{Is=CD0PZ z2wy+6Z2)|3Zv|z)^LyWwsGs)rGPN}G^)aofnzph({PrUyVBW0p6?Cs4FIu6UT*F#| zvw%X>8jvonM3pE`)|jo!pz0SR4X0S|vT?Dk$2jK!cHDr=7P&2*0<QJ6)yQLM(dbCS zsr|)w$$veZtCcXlQlT%|KPCH-_LjTrN<s3h`Gt?P838#8geO-L!lv5lb%~d@t@a)# zHhQhrqFR~I+o=B7jYMk&P{=i*<Q`epG)5-m9Z_`%3&ZPRHPK&CDPl29UfR<46<3vr zawjJ{O%;&nvhw>iR`Ha2fFmGHP1FF@daw+iehERW4_+`n$`2O$j#>Klz93rn98u~8 zccC%&suN|mbaWtN)fFDIj(JL5;|0#A!J2@~C5D$~R;pHNx}qNR%G7P(vG@MrFQ?P( zQdsoQJCalD6n9F|XkS32e;?E0TQ8!ce)VmSUV!{ktad9`55;QJK|;6X%T))BlO(zV zyKwUT_uBy2tZcGuJhq6*NCRLSog6v6tw=p;kF}!VN&y-^Pi$4^R4((`pX=0FI^6rj zCMC($8#viErfteS9`LAZH$6M55Il}Bu8@t*tLkaDz@EQ)v8>Q$g=V9(fZRAo`?s^R z3tnjEeEqhu^Vd9KCK1akm#Th{Z20Z3pPM?pVyPcHTuE7&(x^`o`5hwTjh64Ous)Gj zoeUC`uef=V2JJ$j%g1)L8}e)04VR|JcCm!QmB((lJ#dfeVjb;MxjA3Y(JSUCbq{G; z9n@l=)ei9R-W=StAHC@Wbf=E8${rH&@D{@*=c7vJD0PYRlz62jX`n0Z;HFtk;bQBk zs)Ke49aeh4xchfVZP)+$*|aw_56GSymU@ebW27BP4b5oXb5IP4P_j4$znNjVhgp>1 z=!B<UddtHs{D5=VG=%?8rO!X#7z2U5krfmV&wr0CF|)BT{;$TCR&*rew?|QXU+eZr z$IPtsgA4$s5@9gL2O{l);3q`Va0S9@a2{SCd(@$;+F3Yr&OLk*%Cl9gUoWn;wPEtX z7=4@(-|8@G5Qfmb6nej|v;PUS)A@Us>>`X^CNuZH;e(HGogy4nlr}idIIL`&ad!Oi z_`WnDXhRspATIA;XNF#H`+B;4;W6d{j)y2h*W3W5{b)mCoH0N}i^ZsmQ-c|cS!XZz z?;nrhhfei>n0-DT;`RN$&K)Cu<cIkA{XYIVx9ix)2}bVLqH%tF6U|cesB1#i3I<Pq z0`Yock<`=O60BVKI`<;0{g&mx$we80QHm87y^D)3`grs@eXjxkPVmCvO2wyNo~&M; zoUdtf=(5{8T?@21e4;V})Y#dFo4^+gHHugNhB0qJ&&YLz%EnI}ntI=|1;iOS4|7F5 zo7j7{%}^Ds#}C0LFUCwZ0^RT06GZLm@d@x%vk!=o6S_EM`2ONOyw^ozz=FsM!HwMQ zMlToNFLHXZNkFEy@qyWDBsHi)R@6iqCb*&SS>2{21rM1MS4RlJFUBWmn+K6$;=6`a zPo3R|;pZv?Wg(K>Ya8dkU?l)j#?(V8MFLz2#{Y2)dIchHU!bD(O%Q@xgDZwpM=C%o zh1;+WSBa*rk<n;5TMWciqwQV8t3lhh4p)n3%-uk05P#<qw<$Vo8L1x2EO90>iFb}y zm!61A;GK+5|96h!5^{%d3%R`=^rt1@?rP_7wc1Y-PJHjeb40^Sb_Yt{iE-`c;@3(I z0$AJXE`uS(iefexv5GuYqLi?5WE^3HQ?pEn6AQDXrFS<lMV15%_dALf3u`3`UIL5+ zs0bSyH4AB$d(MdN+x%m?=R+z|)){fZbD5{OE5UlDY-*gQ5|bRAi3B|MtL1=C0n-#f zOBu?>C}KkPJG9p$-_>Zn?RkK1BFDtvk(!|}N*Mxg@2iTPm965*#mx?7f$Nm-Ye}e; zjFSJ9?Z@6ha>Y&|XBz^6&;$aUI1c83@Pm0!p~KDsPlT`za&*!kk!j)P27Vf^tjTHB zEkbbsbOo*n@EZ>x8o+-nKp6r5X*Z$|7%^}p(~m|oWMblUB=RY3Mo~%tg2IXPmg?lM z#V5u%SxRCbtpM0uO56)-g6dtx=*?6tuy4Nms23EHx`RJu;uMG_2!uhzZev3vn?Xv0 zFy(<bZYHH#B%&)b&~PM)sB;KmOJMez8#ED$t50s1q{A&KiQOt%$99GkrkjXRCII+^ zTIRK>z9$r+C*Ze<E+^H2ymRz5MGPN!60!r8VY>mIx@;CvKs@7G9gNw$c|0uryVCnN zuQO7z?arft_zgbJBXuYvs0T0|cvz$ZPn1_IDvjWQH;Uxl0c8M`SjZhQK~Ec6FTkHR z>iRKFjih)9n>L6x1g#IP{Ds+a&L#Tg`em7xXY&+gOqS-Ke#PtwC1ZW<aJjL1r0#H< zOy5hY1#!fk+VO5IACcas42bkk@9LkA&9D_xWr3V>LWs$hjv!ZtR0z%jA>(<3_ay4^ zIs_W&uSa<GDwP>LyjrCEe?uxOWQ*)1Xro7{A}i0#$Jm9Q#Xha@9?bLEbTwHCv&{jc zyNSFS0_^(7ZGU-^_p|};Q@_f0Albx+d{U?>`JVQn>R=HraC-r1NJTau?^y#E?{pER zV3T2!%l7P@z)FSs7>$TyaM)f7p0IVkaRZ4aNv%k=NcI>U1_%2WanEPpDX)o1GVMH5 zb?|r(|C*W?apW<yWV4@vcp=Y4ww`Z8<vaI1xVTw{HYX}Ejt|b(?330n{Ylkc!$y}w zei1PVlWLa8smXZ8v<$8*^>vZ%l;tCpl%U7WbP7dF9hA{5!X&ZSG(IbF!uolb2r!9= zLx6DjgBn65DHIEM(lZ$d`uoN!(Zk4h3E*6O7ypB%W693IO!Ekm&p7lqb18&-g6l7w zHPUh*GYR5MvlN1anFW1cd=H6!0o(vtyU6hdT$qx><YtOP0V*=}O{~w!Gp0V%i6$AW zjqr*>FZ!W4lAL?s_OUXPo(r`at5OF|AqnF9@=Y48=+)XYNs(&D3|G8P0PNWQN)YY} zA_=E6E+F_`_c`TXmP=$u23}g7^~93KuKigT@Dt~nej8O!zZ$lRh@z%?&WKzTRhe<} z41lTFH;~A@LIqI5<MjA(g}$LG${a)GNDC~-UT~EbvtLBRScu%p0Ag(vtcYX?rHzQ+ zpw2IJBQW6%+4e94%ErRx=w-cv9N|IfE<vtg4558}-dH(0^1#wgLSZTqQlAytrMPj- zP;5(ET3f+pgfkhaR8cHOr<Ml<PNKK8t$;`2`j~k?jhr2<I~qDoPz_6E&YB1rwHgvC z9p|i7i5TEgxN0)U?A&ZB;1?pn^)AXPyb6K}WlrzEf^6)$`FYzaY<4c<KIG|zskYN# zl_1P*Y5Dbq(qiQp{Ax%{+6?OFDV1zjUz6C)QsuKZjwlb)2Bs1tGe~@qFB8*4HuCf1 zZ%syK%suV8mq=KfijsguIv7KIA=mn3gn(3zGL4$v)2)b^IYCIbjM)pcI}QD$iqmY3 zZ>*o_FFa$zet@~Qjvaz8)*?dGmG$XoBm<g%06sy<JYGa><hOj=>=kM4UJy5a(E6mT zL{umc_UIe`&i(`~H|_kk77>aHi_Q{#)2=+wCM$`O?pDm_|Mc3T5MZ|YIyVL6fZT^+ zHH;at9%Pgj+DDRVfN}e?qCXt%V$J1Kiho9B;iPDt&W99q4l`4Xkr~6e&-rX{9zBMA zm{J&4Y=$H)H&F;~lk*blT@*91gnu0{sT5&E?K|n@lAef~NEE9?7Rk%5KBc{+Vl+>< zR37uz1UjGfv0qTe0wFj(>vn7v?r_rP2>;f!C=|R{DVF-OvC3H<;Cw_+A%QBtHl6&b zi&x><f#s0C4)mot9%P;8J_kon@V8HarhropHlBk$2{4RxC`Um+6aar?U*$iX=Sz^d z$rp`a?raPAIzV#Kr;kuW=MrAM87p8Hp&03=4EvKx_+f`HRnd}$|IP(290Tg4tEsF+ z*v^|SO-_1M{-D3P06zYHUL-K#{Z5J5^#F&;vLuE4RBqFl*QaHZxifWqoWrmz(@fj0 zrX!t5Gh`Fp4jC;=<{~;wY0QF!3ifX!O{lu*LZQ-PesZ`vY8Re$E+R^@Na*}Ar2v1* z3@yTSRpPz_l+*|}gBu<7iBL@hv}Pk!%WboZjLOqgROR8FMC%(?5yb!_+Fj|rVD+ej zV9-Ij!F-Tt?fp@b`9QjX6btAP0Z}(xOV(nFjB;0d<x+SsD2_p^l;ejJ&2y@D-9|kk zN5|VMNLG_TEtFKXq4sQMY2~s_lzT)qES1TY@;3bfX+L!ej_P_=M%vt6jix4DNUDK< zd3-;$=0ZcSCiE-H-O?P<4xv(sayo$;54+8)(sv<abchE5YlRc2;u_WoblXKUrL%)^ ziT4-{D!pS3l<u~UXTN6!O%1Z(b!r2rc2QtYn<9=Ow77dV0m>f}S&g}p8);+{O=wM~ z@-~%e%FA=iquH4>%VQ{s%NEd<jFlTzB^nU;NPCq=zO)r4ErM+OY(v50dK#hu@y}@a zz6{K;K?<l^*c6)#cuLbE=ko;MqzrA;(~ehWdCIdDcNrU3qu>C=sFXG8BbUUIC5u5M ze+g+D%gbcW8CE==vsKqBg?pz}U#QPWX1fF2ot`0~cAU(_5lt(n!i$iQRPmp*zLT4> zaRK7T7F5?IKn(PRX~`I<+J)|EpmM8+83u$${$lmOvNE%2V@mq8B-{_i^b%SYh#`#f zkN_L+o0q%YVpFD=f@g&eS)C8Dk>Df5a}^o-&aqaM+?<1Wr85Qf=+J!89!+fJ_YXB_ z0qu24P(N5`oC=f|5H-VpJ`oAY$KB|yydzYynxH|7HB3EJdL`@!6bV%L?61X!ex<nv z4c?AsYPq}mF)C}P<N=&h(yw}EMBXmYS^1;Vfo_X_65_AvuNU)YISwq~P5Rq<AND{m zTr&z|YICR;FSzfx(kLUs&(*|^n$Xdra&tz(p8gaLc2~#^rs~)zgKm^qmn@0x3ZU!7 zwid^gb4NY5^=;Y&Pt>^Egb7+_G)tzFFl=A1J}FNaYfzZXUW(|vgD^CVZXxz&sZwI7 zJqGni9254nZRG&gM>}IG8J-s2Fo`bl3s#E3rLQ$!)WML2{=I9p+PQj|N$r2b23YuR zuU2u(OXDMy*E0#%a5sK|kBa4mjM_2yP|GF`RiB<IfIOD!=FCoiUk!3XSLNfUe=sC! zP*M`pnK%~ZUQ1+LTn$Vrv2TaRRrpm0VW4p$4R~sEejU-|_)U7aK!#Kz2mHSKw z;X;|F7b^Y^hnUl!EagS-Y){0v#tlbrRdHdeHqE78%AkVC4XkCybrnm5KL|Rw#vs~x zu2JHXaHD7DUy+|^;FNrxoT+2l*P-Sd3Uk-R3R5WTi+7n-(%E5E6ytC))3o#lJr?l5 z>3a!!iZxZ>t~yroXt9Q-P&VyUER_IFT!frDIapX?z*z=7y;-7`nYv@&R)v`_Wbjye zplRSN2YgOEyG=ct(!{&G-4jHad}3~8>D0}CryOe<I40cG4Loe;3XdM1CJWw>+lX_z zOg>CEw6`5s{IJbsl;g*4Z$VjpB_Q#iZ`VD~j2WmCRbvIF8m=avWBXxk61ysJ-k7Jb z4HbSXWJJG<mkp49%VF?u@5)YnRQvF*=Qb6|1oN;8X%V<4pw<n@ed}kC-38kP=X>3b zG;F($^M6+IGj6UFrby?X2TpJrfn&P!<8HcO)Bh1BjC+cH<z_leY0EGC&&Pt{dO?<N z`EcLxV(;Tc|3hiY!Sw&9M6j@Nvi+}0(;02acoK2c-hXZi=rJjy8PLMSZs{}*j1#kW zfLQinjaJUL+s7VOVyBAQKtZ7zHFs4rv2Ksc*EE=+S7D6acF=F^drBC`KdiCNxr0n8 zOsh;Yo*tg=pMURePW@qbe?Qj#(~vXONau&~|9ttx_wW1;I=yFJMF`Wk6#Tq9rMF{* z@$Vej$8XaZ<v2}o9*1P_zU&)cw~HkW(Fo5NwbUy&Eqgv;l=sXu(wIaT!cfXNO<G;{ z_vmnaZGm>7er0hX>Dj(XZ`+|)@8d5z_w!8hZgcIj_a}uRsOoAXZrm*>ZX~b%4Po5^ zzE<-Tk(HmCy8hU?gyo96hP>ohZR$z=+wv#Em>*`hLoA$8b=B?%+83v{+ZXoxkF(|l zmnelUj$3|Tpx@6o+9;4{^!yORms_+ajdKp!hg}3>r{1aSL?|m}TN#2g?IqJNSD5F_ zV~P?E*_XZ$to68Xj`-QNN}3E8-wA3b-WsO-^dU<rz?25j1ovStkNH1?R~q9Hg0hAH z?^}aeHNzYrwT!VW=d3i0W4k+wYjYA%3yJIS4tJ53)%m2Dsx%$#y5h>B_w9rgWUsr) zGs;pHEwXpgt@j`s-;VaASC%9<yVwiMt4mAH6~;#Lm(wN2hVnLJBXPU2i8wu)4d%u~ zPiY16XX$_Z6sAj`((zv{e_nZGJ@qEF7E{8#qYiPPT#~yVxg~({*GOqHm+AIbE2>>{ z4|%qS+Ce%q3iDhn!w%3I$<{TdA)z|xBx_4LhAl&zMkNg)EwfH3H(T06IMo0AM!2d| zypdcUCpnL{$e2Y2G%Tw?D|5`4PA&ljt8N$_DusL?kl~QenvTzJ)u*|_5wHc4;Z%gU zW}QpbaHa=2xW!*$l;@NK(Dz^Nhd7U4!cY;Ug~Y07I1DO7hV_+jE}_1)sF39psTI+e zxJIH{Cm#%P50|REL37<^P30^`VTi2({mHNj3k_byG1e6Tt5wNq82ljCh`wtbWg*28 zu1x_z6v5!W0=A(ypzR(gLN5o}sTNs=7_GL3Oyo1DQ&~-LkjwF>xf4Tx<_ASme?#?v zab+<iVx*(K59V>xDMLZ`2}%<@LRb@-1-$}r?|+MtccBz&BsKDNU<_@XrUs$ztt#On zOrbAfH{g@wT<d;t1{5e7BsoWFS76eyfGL4buUzMTgb>G@h(tyRZ~#Cyds}Cshc;<b zyC2yq^$Za>VV$Xfqh9Z*CIxH1GM&EbRt{^v<A+nDZtD2{Jzm{e;rm<bB`N8?f2=0X zKp3!B!Z7-WKH(Q=RDhEUiMbkR5*}hTSt1JxRl@)b!BW~NXmlkCLYY`$$?fjtGfkbo z?L|u3pi5X<Ut0O|cdDk(y0}jFIV$eOd(iPTrH%ZWvp%w}yaH8ITAw^qy5lLw3UNf8 zoa1dPKLEX!vA*cy6Rhf%w)W@k`ua8h6!Jm85Zu(`6Sr9>(4$}|EhW4=&Ow)<zwI`x z?iZrq3(}9@>v3j_-afy_ckr5j9pnc_uX}k2j}ydW9pF!JAO7v@0je|?X*LgR0MZu{ zXGka3%DXeiASksP_2FZPzK^~`;150iAv$>oaq{1L?Q^X`dowA&Ursg-L(FZUFQ-s> z?km6bP`8oFX5|sX%dZnS3D6s~FZBDijip)yQ4!HnZ}iT!Goq|>n`C{$9Z^l$8(Ye~ zrhBPDcs~BOA)NfDn7TW5;#mQoNAP|6g$G2%FB<>XuHX1K>kk1RLd$)7!ihvZgg#C4 zyhHRNoFD{+Agu-Kk8!R0fhWhluKQ@W4Y{InZ}}dWdA?J)b7n=@n~*teTbAC2T10%w z-8=1jk+<R7ufE0m0Eh;f{*>R+>9gs%&$#c}TYBmTgd^dMIXc8w25~%p4&MAUP)w@& z{bU;EHfkELf`==joqBVhRp~3scLKSfb<DpNP98+Aul8p!CIVM+&-9!|KfAYsmXn>C zV>^=khG|F<c-)pHv?;^IY<GN%1p#9NazVi0ppXM~;Jrg}Nd3oGlx9fzb+@||>`$GX z8t{hMLk67@+1*+jp{ysbg!NJyDJ_~%opd!rmxLl0s%hCZR{{Wml5zq`w(<kJ4_0!q zxoNSpYoyH03b2Pmc*C;7TG%!MA51_Mp%X_dPV)PKVT4PxZpD?!HV=(2RauIEn35AO z_$n}~6Wzd)3M3QvfGs2E?@H3H+;3+)7+|>mLc0yBOWN7+M+;*gd{JW+&r$7p{~Z+x zdst3AfdCbu)o$CCW>WmzRl8%Z9HqGK8Pz!x6^q1vMhf4%TKA4sN?5m!SsLw^`?JY% z;%N(5FS-x#?^bIr1<r|QDUVS1-yFG$JlB!Aad0gE!yw*kHJSWSc{7fiqT~Os&!A2- z(ra!mLKg-ztbp1@|CO|b2qpItJ+Nkx;N#zCPBW%+AQTHkrD<WsVdmbFIvxB-3olhU zoP_M6P9j~8GyFj6maO};|Jok1Ol$SxR5?r&NLQW3%^>APs#fxtvsE?4BZjh<FSZZv zA#{^1C&lBzhRt)O#R&nSu-By2TTxiSVC9y+BsHM(3n&+XvqFjNTB85t2~35~)hc<w zrOg9hB_Eo}r7R5Nx?GL}9*Qwj{|55ZXS$zf3t3L$jy6Vk{^*=|Du7^LWXU(ifErE= zE2k<$Vgu0uxE6OY9pFRDdM~!pRm>CqJq~N}u|xVJPq1OG01y>#tfLs}H&WAuPdsk& zBW;+qh8WQ=RyV*REr=u83oo|5)EWrWfL^7&oF|G4YF94XbF?Xkp}{i9dWoVx26WT^ zuNjKUXh~r@sD@3Tm*|yXo7~z++QqSAv~ke_Rx%%JZKW=It&hX1M(eTyRUU_@SIGCi zwp%a|6y7Hyiti-5bcdb(xC8rVFJ7fe@9sSRY}MyDl$)+B7roghJ_hJCM5*;clIilO zdm*-1+A2;U1W;XB(lD}e&8m`;tm;vuDw+V!lE$>4Du<}ulXK4<Q_F6;(I8Vht969$ zVM<#T=w8Qkd)Qe%wv#G5u<AjR{2K14(Cg#ed55{0n2Y4htsAT>qKXXpO0<R4O(g4+ z`Lw3je0S!6SCW@?Jis}Sj8Fq(zfhcYM&Qv_2kAq9EM`RG%;Rs+@~8&YJ0{ceSKpMW zgKm@rocu>pS>)D?mGHTpMP4|+iKmcQW07x$Aw?H5A~U-w+DRT-Qa;k)35qUU4FVoh zPl2e+%*VS#iAuF@ap7+g%thS?$zmjh<fbsaF{<~pzX?mkp4jGS02khq%>pB(b_KbR z4kAz#g19W?XK^ITq`6eIYUe~Y+F;KCbn~XHTJ&j2ukhxjyCtvBlBw?8^Tthy#2(>T z9@i}{kDEK`LdOEOYnS!Cg~8?q_x^49<UTX}u)9_3Jq6BK3?A|cN7;URQ(mL|i(Z@E z3;*=}SpT1bi6$9mo||scrFdBL$^Zn5Lj8F=$G8}Ys;@fFGIGl~W-@E2Ffce7WYs{e z2!Jdu_>bT;hXLq@M$PZRy{0ltY#j6C4q={l>}wxLx*`yB$QWqdOBGwH6TM^{?<H=> zAY}78E!^@r2<d^iWUZOUKc<`@z;dn`8&!S7?r~ZKS^1}`H94Z<iT0}TGq_D#sj3#f zW^ub)TEPlejH*GA5?ME=Rk+`9)g3SP)>*u{`IBl~<$sB>BjuX#ZxSaaVziL|PI&G* z1Q;@|Ng1^s#JY(C49yK^tU+C7w(Xf))ZW@7kTzR|N4#N|Z+}Yq)uHKuivQsvr}7}W zL>w{o^nhHhgb6E0A+(=+@KdWNk-L8sOFskO6}F5@jnonI8JUO2R9Qkjev(i-c#>dU zPoVXbjDy*;%cP)c|B-k*rC4zx!6be3ihNPmNhTd>DzeO+jF@1#z#)$Tb&N@Rak;3f zs)wAeGuQ@pzZp)2?3^sz5|SOWQ{$Y1Ce82&*8wK%?~kA?8lfxzN)VEkO<Tt(F}1F* zmIUBAT|PQS^@!*Yyb3QY+plLfPSp+m^mMP<Nig7{K02IdBrNO~n1e(;ps(2Jjoh58 z3wn9U2L*-xGfOE)HiN1qSZwd0d{Q@`mQ(U@&5Qg;26;@nbfeZi$J3B0d9+V$dI}}$ zZUAMYZr7;(ky=8pEWqTaz-S$Gh#xUoi~J6vN%b&^5%z=t=(O-nP)ha<(JShGP0BE| z40rr={um}zk^|<KS4NXZVwLRZVH}MiEX|Q%{<!5kqJ(W^vUf0u(9`vi5w5|V?H_G9 zaDiUN6UfErK1j04nK(LNF2fWE9zMG%5i)>1b&Nf3Nn#xCa01_jtTi{1Y=EJt6}C_z zQFYb@lipMPMot@T9J9R2NPR4ZBt)LhZH#6biBaj4m|+_nDNajz(x>z&<&%P%8G{xj z(Y~|YyVqOG0)X7!bZb19G@bm@qt3fKGDe`ayJ9y5bb+rv72?-9X?N*hQHc3x+zc<B zhK;*9X++smQb-Rdk~p==lXOZt0bf!tX_Y<qiXtsZOo*qbRDmw8L2Jj@_BlqxESUyM zS)~Pr<di*<Xj|=gU4ZO7ci478F#kUBJ<%-bA~FcZOoTC$!8mS-3Yd&X{<M%Nbe3wM z>Qm%mXbq!C>pBxF|ADsc<qSE0iy@eWF54SNlq&t{+|Oz1#=r5Um?haX>$44+a=n!+ zYiDDciDg+EHYcw^M#2#SQ>;>N#(DPc3(>sLBkYoVmf7~k_EP%S?6iZemg_g;m-lxT zKtza3fidjrnKc=}EJzm`^}Ys%=;fLHXEnR%p+Zzsg*cVGrjaziJCOFYu%A~prdtb| zkcKwpYICcx%$Va6r9zxU&bTB=t!vaV10F0!pooFs7k4d$@h%!8n9^)Jvcqt@;}Cre zgEMg;qAcasBBz(xUs^yYkD$KwKCFxEZIvp!&T$nBU@%|zIpe$EGxbpho(O=7Bfi3; z<$^Ej3Wr@D5Xo!rOW~3{<Cg7LIAQf-j!8TG^SF}t{7*Jwk3M;{b=7*&dA?8U2!`&& zbIN&wD{X~c8N021i$&GZ)KmJc)nD40(a9sC{5k4Qy(K4sS{_5acK7E%96v2)RQo5E zEJvFMp0b^rHMb=`#QrnRQFetq<@=6k22=|zpk5S8qnj+~#Spt>8%wL~DrUp`HW2&P zqlq;p<!#CUeEF4}%tMrRj?kc7;;|}3snDwb!`M5<=oWS9+Pikywr$(CZQFM3vTfV8 zZQHhO<E#EoPSQ!gC+R1d&(HODjWx%8UsqGR2?~L36cHG^^g{EpWhZQn74sU(gKbH% zqXO}IKpn6FbU*2)nQR?pAMa%Vz%Jo*?=DO};YHp&+!wOat40D)jhTKSNR4pYD=P{Y zfx&PD)FZ{}oqLhr-ul5ASf{yv3w|*hwko(DLqJ~=qmv~ejmpMZ`?-;$q^aY5nX<@R z@Gq)iYgOY&BBj~d*$h2UpSRE8MfQ;SP+a1~4NtO4;{qyDt`PboG{)@$h+Lqz@z^in zi-~<-UURH=yh=h+dOvRPZXW^8B>haeHES~M8Czj);cD***c8^J`%Wr$zwaU!AT)(G z{XRftck@7<QbS6Lk>+`s%V%E1RAvjczcw+zK~$fWH~<+5woI`09A_s)8FviK7BkB2 z_g`iYdNBJOmWptko}}{*5dF%PV_b~7aMdk8>O0Kxks?1&oDyy<$z)eCnCs*8EFg!+ zbMerk{k_eyg%zN3gBlTAQ)x#4Y{91-6a9fk?4T=Pwe2X2+2t;w($6~mEAVJ0*yUAI zoazh5dw<h|+rOo~($cdlRz9TaI8V&Qq5)ITL|_fMIJTlVqrPSdcfFSIB`a7m!B`eC zCGD1HYMPd3-lG=wCTKTm1poTz&aY`31FBSccH>{^CR#k#D=~B$sUtKgVc@q-s6|jB zgYH54rgPYPCGr6xy0*P6L}1{>Yj?@L=#34I7tubUh|hhprWsVfW`4)(vRA{yfx}Rf z*@dGJN!&u#fLI>QiQ`1LrIkP<GnyW0m!{zSaz+a!js{s&gLgZp6Elw_=&Ev~tcGFJ z+R!@CdXVeo;Y=L^9l=AA3!BoK!PzbG^3%dqZa_C*11fsB4#3i+bbuyXInSS)0hW0~ z+Jh#r=@A)U6AJ3pYt`6y5bYgR0aU170>)v_7&mT?ToNy3Fk#lev@Ztx-m*R<xi$kZ zN(Q3Z{sq>z!~6J#h*0O=x_$2=jGZ@vLPE4y`GZ~pkyA``jY?f-NAF;NjC-^FQwk3D z60fMHkZo%qJ}A<v^BY=Zx<c5D-w5)Yt`@|nOj5kfoUe9P(>KWf(=8R#|ICgvurvSf z0u)pKy@+np@M;35)vG`R@QX5aaP>zWYog-xh0;_%d~qy)HFNOrC_du!tNvqdl5TZh zd%oD9Y4OfhcD5zHr`yC<R6OIA_x<|Ou~0Fxz-k+nGauji?BelhPLRg0C=o$&HE%R; z5XsEM?VY~;BTQb9Sg%5kdi!?17cz1qV~bNa!uSkfkB=O=aVcDrls|=ooWB%NaA;QV zV!sT^$o-Gw%l!Ru!>2eV=jUx>riW_}$tU~!Y43oxC)>M+07PM7M~3O^L&zmhuaSP- zOl)t#t&ggYxPNX;x)2pNKE`hd1LZ*au`oYNj9NkwOof#D+l>SI;T<?Q>A&>!B@3OL z&fD7mx`WNPxyQJywr)71OTlY{+W<%H0|1V|tUiO7KLE3;9H6H{kIou-U3~)h4NiJN z!lDdroLg!rl2>OIWGm*V*24hCPB`W6Iu<-{2Y@lP?}6s$oSr{GZy!byG^j#FcJtD| zJqa3C`L-XL!oWyw1j2_Q66lpF8K#Tb;xv`SNZhK-?_X__6vflR`u}cwU_v{3(SvK1 zAlZqkb*?}p!-qXt)6D<{WYsBZ?IMd+fIY^FGN|DL1tEX#H|D{K&oRM<f>cW7;>`bX z!Qp!{b2k!R8aM(5RpQ=u4_pGw22~?8&}l&ZRn+r<Hjmq1|0?R!vMTUICkd-{;sfwR zM`cU+V+r?v^X9w1M~7+^(qYy!#$4`$1~%>GhYgNu+tg#mBW%tLl=PxlePO@qIb9uG z#83{CZj-%+z7$muo(EkEa0#w~3$4l^G4D@1<G(K^%32H(<0?wQ_4GhxCbK9q^E&NE zp2LmGdWi#At3D27y$~RR2c23t2p+dpVsqR~=xk9la1nJx=D(v0;I~O2csB`=WxXT? z@FbIeE1qT223^a7@}sRZ1L0YSuDEZ6Li_1V4#Xy54A<MO0;Ny}$uXN8BLC(R60lsx zkq0xDcY+iGt*&>3GWxy!qTJc^F6FNF;hGYkf^Yr?;6n_$n(l>j@p<0cQAs($V&g62 z4-5Em{6V;h4Y6CNLTiSb#vo7+2;>LB=R(e9$#lS%n6m&q85ATh1mZ@U5X5IUOBWd4 zvlo(7W9`6TYXT~o0NBmVhm@lU48<4Hex(!a1$N*4hKqN24a$Q<Yr0H!v&F59@v_2^ z0-3K1d-4yxiXTwQ#1w?-<I<N8u8c+Fci0WY(u;{K;3REzFkqc7`-AeA9I&$znqJ_3 z%-FUQCTK_j3S7Z?ba2-zf%w+O-+RxK+syh7JKqsT%VFT9M3J|mr$g5nb&T%T$$^b4 zaspHvAuW8nKDiHZ*38!|_gAo*AB97ph)fm5qk$X}U=|2^0%sW8@&xyB(N(z`y3Fa} z`vt?@jidPUb;dNUarably?0vUNYYYXiF=krFQKQr6I!OK9%DN@S*`OMJ7*tyL1oy3 z?fDMfBsh6-oX9@m`Ij92hr}_Dz^-;85MK>m0sOR91&F5KI25ywRI5n|v=jkLD{Lqg z8nyvHYQ4{4$~SZSP73Frrb*8+da&tjSEtJFDh6tM4|xU4IlIyqK4i%VIor?jyh@2^ zr!#1z%?`wRH=fF^jXS81qEmnq_`t|?^n);-Eh`Q{aC@&lakmxjFPriDc$lhbX5@xy z+95}{=z3BF8BC@Z<$z^<EeHg$?NrLxJ`96}6hkA?L|^k_a=i;}UTJR_zd+pUcyu<6 zZph(1$46!w{M0$r)Pr$~ZG_69%^Z9Kq86O?7}g%EW9*4a@bOma4p&b@s0Yj2VPUX( z>`EDwBeeBi(B@1>rDwENrI|X(<XTVlGT$Q|A!zS=y6A01X64Byg`tirvrs3_0WAl4 zvhtVc0zLtQ#f|SV|26EQ=V3PidL8C9CX%c?b#J^_mm11OT>xn<l81W(G>U9LDOtf0 zmpgE>&J#!dNi70@@lo}32Ua`c`<QEa`PY7i${|bBQkt$;a`9GWQ)mBkB63?KQzZAs z1Py4K(sV0BSd~u!ZIBx>p+bd)V^A9b>+%}qGn0R7U16;nmr^AMicT}-N#^83dC!fr zuDiw;xu^B@L+tC4W9R5<?4yNI7%;8G;qeu)V-&2Fq|E{CeNq6z<O|`#49W<VLE;Wi zEEXt<FSQy|dWahYn6U$2X|H^?-8|aXAz{5)KxHR?%z;z{Q7R?IBo}9)KCuzqD!(sS z+xij&^zCKFzSz1KctVOWyj(%eUdqb!F}4BXj(Tkcn@xHBl{t=yy}4@E4q#cJ_+{R# zzFu50=m`2B81m^A?c#u#(s8JK&!U^vXsSi*nOIq>bwq9!14)YcYKS*g#N<W+1em;g zz87Y>C(Cf}dzdBghDLk5V=4SrCdn6!`X1XiSPu5sL3_spTOs<uas=b+z-&wlh(>f? zA3nx2&&~7;n6bS|L60bh0J#w->#g%<_-FXfIZO*{ZM0ew7C?GX$nWXmVW}0X<K!7( zFM+q<Ox(#4-E7U{Ue<7hxAtL=;D9h>=9(A3y3*@f5*~X&Z9-j6Thfz)LCZ5TnL4$` zObvv-Fs#4cFl<%w+T9J9Ga5bVBo5HwVz$Lo=k*4fz!i1C67S8y9r0jLI{Mo1;Q0c6 zm+7i(n({X_B;us1(|vin=ZhA5j(DC>{Rz2G`sqw$O9?tj`GT-GM`h7bu$&4=A!-Bm z($;KwNqEWB*3yD75^r8Fd}-hg+m=kh#<>Uw-7--ydws3v<wKWD>DYEQBa8p^yChN_ zE>-G$jaY^7WhIDY0m3u)B6P79hFqpEJc7C$inbmFYhuojuK}SE9VM&w=^{9a{+3^N zADa-5FUut=XU-@(Hz_(W9~ZRH>6OK4Vo}$Cy2o*sx>@f5b7o(dQg}CPL;LxvP>YxD z9yJsbUUF)-WeBdz-I<_z=nUL9MZIk@d9)%qZOsl+s@TP1nfXxj<a<6NtkwZI#^JD2 zww|HhZUR{=6&hR_?fF#_-NyspvI^m_1@q9-eQ&z+VQ;X%T|+uLX3o4|Ik92pVzJhs z@566b5pgiiR^b0Jp@lwA*0=(h59k&s=Xu7x1jYZ+0Lt6t!*`v;x8-Yc>e2ixUErJX zu{RssB3H9Y<}7XJry=H96e<dqZ*9P!Y@Vv8tS&Gj*`H>ItcY`ueRIahJ+ls=cZEcE z&Ff<?jbLIs$3haI#`#TS-V||!IOd9G4ZsKY`GF5)&!7=)xWNRFe0BAU!R{16C3GNV zl4S%$8v=%}E;*{J0J>hGFG=LotPnM8B@|}YEXjyn#dVHtM`rLB-EC5YW1>^yaNZd{ zHTnKC*{|2Wx$wZ>LQ>X29*=6@zpC-TF}!=6J-FM5*q>uB{kScOCw&M->`SNL+>aS1 z+zeIa((y0}NZ}L7eR0ykpl(|?5K!q-(HIFWz9sQ1X%hP`NQ-7GpSOse8Q4C<;_vyL zWkg1LZ=iD*9CP+vJGP-!`@b?gKHtR*Ge#SuCs3F8O!dVvIHcQEx4^dH`T)Ofk()aB z>C9gAlJl+AW>M9fB6uDmsPtL*Y|-E0*TujIu||V+?$>DZ0Ji7%T#ap98f}_*KnPC? z`3bbjPGL<5-TdkO-SOAJwx{@6=hi)+W|}YlVWZwhQUT#OhnbPpR0VW--$xZ}1+Ze$ z>9T+Heq=+wlekzn_sEqr0(iidG}cR0{y;XsJbvCW<XntT^GZ<JG_*h*<$|tXe*YLN zcw(%#_n67i0NjwU`gkc44$wa&<f~LUxb2=~SN)|7d(8WUg@w9BfvaL()%hlcWvq=N zV!dY(E5ofx|JG3TF`sJ(Xm$@C8X`;SJ6dC;gs0UxpuV~rb4c(Q%!t8(g}w0EUS*%9 z*1kQ6SWhp%I(yGm*$x|DVt2jgBqaY~J@kPG<|_D4Lp?LY|42nM(6jyT3ZY%;k~N3T z@If!{$m>Sr!8f9CP_g1xzkUKS2UkGa_-JkyUwSOlxSpIEva$@TruRJi$i5&AY3IA& znO?t+$>Wpl*Kx>Ct2&T{Glk}_OfHlqdZT<x-*)$C{yOz~R`L^x>+}5~yYpj*5w+Zd z`Ez$Qg6oa-9R=`RmizSDpr&Q}{l294_<GV8`GXOuO2U4T>5>e}^Q6mmOgU_6-EUSI zUN)FHsG~sBjukbXO`g<DLTnpxWh*22qGg%euxWUTmlbUOGH1T>?gYEg*b!fr(Vo?U zJ4aaCZps<^1%y40qvjJb<-)J3a-DZpml^zJ`a*ij<pN##pmy`j;_{J)5c7}M+qJk+ zg+<9@h0+VF2ZyIOCe{mv7(>i-xZ=Zh_k<U;ic5&`RxaiTJ5rG+4eh974y_eOVQgBJ z<e_wF7+Ck-%zwVD6{(8Z@UUTpAN5Kk0jV>JhjXvh0k}FN{#96kUPIc%i15yZ>m=UL z#AIB8)4FmxcLaAxAD=iXsMOz?#JFIJ%{i2#QXm&a0o3K3ugT2#(7!y05`<HUdb=!S z>2EfN8n;2+8b@6Smo{L>tGz|sQ)*Bas_1j7r&bjyr|5I6tl-Hgj{V6fjNR{{1<@3B zvA3mn*55hGyZyFB-M*o?4@ujeois+XwgNja(s!ad6ud<jk<I_n_=r_7nx(*m79_bV zm1loP<7#mxBPop#+OVI8@V|hA;0%Ex)}~^Oz6x+65bUh;u1n=Ydf{PHXi$?%&ZqCI z>7-vyGK2RL_BY9}iZ6>4c&FF%8q8Ln=KG45EH@k`{squutz}k5v&5T4itTG&tqs;k z-U7k>tzZC#l(C#w5ele_ms%FNg-2ze1G*YhhO6_y&NL;-KLbp*9y6*Q$D1M+U50#6 zlqxKbh#$rq4_l0qxdaao<mU{pOsR>OyL5>Jny2DG(3)4PIE{DXNOB)7zGN6zcmY6G z5USRK!{XmlSM(~^QS45&iV|ip3Z+|(geS4v)#C|?SH{9$|4U<OS~k{-lv3NFLOrWt zS_nd>vv!FEFSUxAZNi^q#H_<^No{mj-7c?L(}y0BYDAZ4!2PZaD(OVEBtRM5=)8uS zLu{1Z_I7gDmb*!4NP7Z8&Ps5g0FhgZ1OcA(L_Pqh-CsGJf}byp27v@&C?9HjxBnXV zn%~7|xTl_UDaa=#`0~coDBILyQ*}*n1|kD^hcFf+?zScHILKuQtM3^qvuAx#+V2sX zZ)t^WH=STYEj01WcdtJx$EuC8?Y;9ZA?EWY3|X6%H?(44!J8BOT?W~`e2(+GOD;RK zA+%Lp_uNJJ9nvxDQFKqfw^|>wEiA)(HYtL7zT)Ebd!TeEF3uD*WUZ~gzO7%cQVx?3 zAvr%^pRt*A!|kano|dCvh8&2NU!ToCZ#^xJc*l1-Y`42{y4^el-fpD!3D1wbRww=V z2(r^HLM}co+RB9$K2R=84f0eZa761z5|Nue5T>ToE~y-G)Ak_0jV@syeq(6ecC;Dr zWLz^!M3q>|D}9}eY=4Otb-W4qw1L5?JRwoy^H%d?_n>Pn`4*ixI!7o}X;lFR2c1c- z1<M($>@BD`3m|Z$Pl#`*rna>)Y~r26IDMOGHb&YH&!M@@Stq)2p{XZkE`1<Fp7ZgW zD^iFh9FS`!GXDx=HSi^TtZ4g0<!h*GQ!XFDo-e_PO&&cU{DcQDluTOe%Yfx(8^k0_ zr8^cez)&vD?<;s3Mr9(HV2F<r?Orf45WZ9sWU04sDJT~DYovl+tobWKkhvy|W>d|z zC&p3m*TE~$SA|`wPH#iw1pO6;Sn8ui>15s_Dy4iEb#LIeXLEC>b!)^et;P7sbbRmj zu^PO}-nv00c){1^@9{(m`C@D^sQ9e`E_zlK@<?7csPP?IE^nvY#U?OdrQ?pjO7F!M zs>hcVH}A3$U|}MK{Oc&$!XFDGQ8b{%LWpBC{D#`A1v3L{u%kMEuD1*9MGx&(bCYK) z-9)Z}n3fhrI8eEb1{(nx+S|PX7qv?sFei*XX5Rzj5N901MO?=GW+(cur+y*21P-8< ztZwzYAGoJ)jsyh+u>SKEYuE*NSuf9D_EfNM<h0Was}z<`i^x;8?13&FsNP;M!@wM0 zSD{UrZ=#XjowzUb&y7EfbtSJ&*0@txl|Qs5Q%U*C5A@7H8Zmm2>yHuYpP7I5Agboa zjvmw@7aIsfBzCf>u)q6mh|2|ch`S^<Xi`f$=bnly#k^G%&YXBuKsb31dBbBVI@h}2 zZOdfy###Tvi515EmRBUQP@c3lGZr?be<&uymU9L>zy851av)dK0N}!g;h6*@t%*@y zMc0E7^+ZPYR(A|WKy4vXkvrbUE)7@r1V8xhu-d9QyC9;lEsp!L)Mdy$H1;G`RiF0O zi8<D$IvrxkPPz8WBw{n%syd|DS;`*U4-#Is6ghc#qrWUev87SMSEn)9!fLNTVv=km zKyD(eE5-P8Ha1PVc$By<Ii{!}44DPPG;%s)?{kw%>dBaq=HvVVs>3?(*irh3{URxw z8`Win)^gD8#CV*`d!DJDfgGj(;a1Wba3x3Fp0>tE@KsVw@=-~Zy4J&_WZ`Mb3hDN8 zWkosj(r?$G$x?DLrLtDQ6NL}T4ZWiJ!4yp0ZDjt)8(*a?2DDeX5c83Y`CG?J)|}Yj z@fZKRf!P|Zh%-r1Vs2_`2V0%@ufV3s`=e1HyyzzLkj4EHbuH1B_hIa&`lL3#qH;5T zT=m{0bQ_y!Yx3RH6u6Sz*sqD+)i5}q@Etpu*cUjRJ)y^#VjiP3YPQV*w4KaN^pK^D zy$-~}2+2)JeX;#+6W(q;Fn-(;YcKh<e<W>6SmfG^ljx|^_X+!56MXd_#u`@U|CXrx zfAXtY+5c}5jGl##?SGfHOVhN~6ownw`5=FW$60N7fea^@OMV0{ET0n08y6I#4mCR% zcP_lWdYj5-a^7s}5|X139y@&XF)=yevCI%u5Lv^j-w){#Uc&RKsP7XH;-MA>tH_KI zU^@y&?5DixHNHulxhg0XV2;7757&7eF0Yq_8!OH1f>S{z%}h`v20uAeZh}TsI>H4@ zO{4N4%HBYa_FzFyosgUk?+kPT#m!*s?}RsI(8CSVJ`T_e%mIUOh^LYgOiF+tT7QP3 zVBbsG(~{y730B@KWI?6pv(EHeG$D?@k%C7jCOZ+@(js`SyNV)8j%Srnp-By<ltY6m zr$CKDE5j%qt})nHz0}#uOy8>ru}D4vOvyN-WDsIQVvu0u39%QBj-_NMM?^2Zun-ZU z7jZX?laCDQ@0V+x&@e)ZJh0A$jiMD^Fd#@Y(|BF+MB_6in`=z{OPr1pc_mmo+8fFf zS`1vw<FV(D??u%=L_jD`g%lB)7z8=}um+C$d7Uu<A@Od2iE4yYXI?j2x{N=7Ul1-$ z?BbthO_BIoYIoXO7DVtDo=Qo<FD8hfc_5NfZeNmKJ9My{x)jCWY4rA1lAnn<SFqn* z&Td+V=|~kWPHq%VMQ)S~0cD7=fFo`%PM(-9qK0C+ImDcaoB(h|BtkqF3rQW|NZBbB zt;$VAY_vh>FEfpiQRJt;zwY3jocs_Hkf_S=ns=aU<s26Whr)v56UIkwhdk}#<9Uj% z-vtr8apW=5`T6^mrgL$0%*()DIps4(kZA?`7#)|1HQgxL%dQjAn&@7&nIKSff7MDD z6<Xj*IdxrgShjbkI<IFNk1lOu7W9u-lUI*g6)h?*ndu=UY)Qh=()+0yM;sOX1EK-E zENgsjuEms*k^*#YOia+i(8SRD)8psam{WVJdd^ncbw<ldXy@DY*4ul`&C$x+&`^to zM_IAy#KO_#{@G*AOT^jR+fBq7_&utsCDV9en3zZ1Yi*~Fc4)i;($U;Z1Z&DkObTm_ zuwcFfr-Y}nPz_Ddu@lReopY0w6j|w2r7RnzEu7oSHoYq?{*{z;NyUUKsJ>adfN1%> zRivlBgymZF`DH!Kq5X_&#%(M%Pc#L43HH(pTsK>M(BY&GX!#Pp+XTucS2(SRB6S(l zAxU)4j1E_^3FCvP7UGE`uTJ$gl}d{Xi@^dS^6kr$?ZxxBY>KK6MW#nxG67sy@v#D8 zMDrq&DIkSH9zimmcZ&qyNb{l*wyRPk4wtcXC2r%AHTS)Aj5qkHz3s?piZ9M)+yWF* z2-Zs-+j1`CFh<ZwZrPD86b*6KH#NT<3H#TqLxa2_3*`)7+gS=c$GZ!99&vP19IXm7 zTI_XsaDxgb2W^**Xn*m^jr6Cr+hDv~)y<7`>!DV0=gTdu%X%ITzhK;6K@cbtBg?`1 z_V%1B3AE!z+9a258e^I-uO$GIJUX*y_hsK1T6CEwT(-cHw<zeToou#%zz@!m4S{tN zZV2{uod$O4UcjcIO#8K2H1~B_@rV-pIJc4Z*?fVWETu6FcF;ySwB-QVrd(XwH0WMs z`8wTQWWQq}B1{K4Q3W*R8ky^jnf2H3nmwXtmB|3w(KJW7@e;1mFsMj3c9xwY`Y`If zzp)M6Pu+!QfiWS@(l7~i#~0ZqT~RbB*94>Cs$DOq$tVNPEe*;Q=-=&=d_>AkvhRaY zgwE;%@O>>~IUJc-7V2xW*k9sui<ZmoNAd)Y*Nnqjz>PYM=PmbyF>JSK+hyMiRSNd2 zPm|Vml-mo+lx)DjwQvI`6%xn(axES!+Rs6)Tr1+*I_i<lX@kDs<=xl&LQuo=xXwx$ zulDP;bt7a;G||O!4i4ASeDXZMu|gi7oh~axj69~vihQf&`eVvK_H|u7*7HqByWO*G z8zi<82}$z6_m^A@r$`|KEG{$M!rS+vb4-V^@KdE)fg4Rs(^0rJ(o7Xs-zYcbfaKo3 z?JS!X-odKP#1;AoeTjXVTWm*5q+H~dQstHSd0)kJPiM|HjX=hV7DI-Qv2yu8Xh%=g zi4@R5Zr#jFa>b0--8Q~`g02vsT2vU?%uVqL=MP?8h9l3Ut8V_vf5bTMwL?5>2Rfcz zjEB+J@2s=ILL&d+jm5^y{69a$ndlk*cW)()vFJ?}xULIIw=sF92+jb#KO1*wbg_c* zZRk8iSIoU=(T<}xC&*248XD;~BhUJm$z;g5mhQ?_5@D_aVJA`jJrW#6gQnf|TA$CI z?hY$l?aVqvX`Rn1n_b9>Ie2mLi-p<<B;tmZ`1Y=}I^Ttf@)GJ5iIA^9V^b9!s8bD` zllDVeeG;}~sY6<U?qG=VX)}zyjT#&h(Sc3#>bQ|?TdcgHAF@B8t~o!ikKY60vH7?| zIkwyXUROW=iJ%q^(n5#zVARL^&kd6m<b{8{2gmglMNWXv&xafu>TQ9TcZOvvHKr<1 zNaL$zIsLP@C_j+^NIJw21U_4A%!p~unBQ<rU7t#7Tv|Npd<sSIRp!?8t0XOzTkbul z9Hl~KN^pRYjyhVj;_cw(FREj&l`w2tm)x+<2xorQ>C7S!wMZ!-`}x7De$96W|FP>6 zN#W`{6Pv8o?c>#DmC#_r=z~pqZNVqB#=CjT#uM1=h|RBCOSmf)VPen7$0Jq#uZ5bp z+h_B5Sz%-@-d@YL$N&$Gw115vgd3sQO_P9;kbx&Am#Kf>WGcCY9H2R}AI`fN2!eoI z>~7IQuz(O=c(Z_#zA-2TzOvp1gi=_tD2WoW7K&OP#a%OVC4!x1Upaikq(T_;p$m-F zyrCvR1$~37On4>zN~?slN_ZuHPP#-K^S(qJ^6u}^0i!}zU+WrFO8d6}yLRKl8%wX_ zat+NIF^72+z?#2A1P?o^a@q8<2Fgv-*K5aFMZ7<VZ|oLTaoNseX2gbbpI+I-uMZ}W z*-S!!(4JSCbPo^P-#eNVI1(?+ve&0KR#Hfg&r%gGLhSYrr*2);7^|a)XwdW?{}ybl zl*>Fk9e5vNUNQ0u4PQu16avf?#3r#Iv?bAKj-1U%TaWYzE=bIp8Xp)GMTB1vXSfy& zjQ$VofEti11P6I%Q6?k3`Vb+&1s<}1P@_Q~h$Y1K{W<q7exbM@vdnG_n1t9Y{c;4o z?`&KUSn1!3-upaTD0UzX1{yrV2e{gHG=9>p*l>WbRa0by{hnWi1}Hxp3`R_+6goE< z5QuRkj4DY{=p(J3WJp>sa`Mi-mDz4fI_j228K5fBx{GCihk(><Q7_zMUS^D!UmlXU zW)79f09-BNC!VqP9xxdi%jGX(2&{%!M?3zuB9|{)4!#_GQi=xX6gL?h0Hc|XykOH| zBz+d#NJi>V3#wOBo&xB$GKd?YbHdq+3mVuQoMMmy8-iihwtkHdzB+dIBe4H3Wau)x zTv>&8PWpY>{guKwNxa4GVz17>!^fgYUmWN3uyKI`W+6gERVh0^3<5^XcwnW-)-sg* zJ-pk8%N^pud+##J=l8QH1U+`au$n=oZyx3+MZ|7}bCl?No)w3LvGKThv?dUehow}B zgrrxB39I#@WhHgx&vq54p0`(wBVpB(7DM2zWMZdn^ju%NTB`k`bqqBt)Lv8Z-0LKI zGu+@VfH$oY-ge>Bs!Q_B6dr!F+CP<P$HCk~)M|7Fvhr8dc2Ss}D}NlxKahO7dxjri z&@K<WY3HwC>1uQ`Q0qWF9LA_jr{n1xjLkbM_I9YUZUUOn`|N0WM_%ryOZXn4UP6yH z;aJ3A@ZMziTtH?BUNLGWQB#NNe)X!t_eh;`I%vGO^<qJqWK~E(-dUAGY9jEh<*SWR z5G;6l7o-EHc7|Ax?Oo>b;d?0}450;W&x<T6rqgI3@edgFII$FJS?W!#py8wE2Rm;( z%a#f{gg=w(I(1Fi8}2KN^4R<sX5}xn1=(e*im{;G-KNu~-{aYDw`UxtJCQ*Ia5$%3 zyI|rR_PqJF?067VoL7h4rM|n}16ia0z<FKm**5OeE<Y`2wjT*$!6Jxf8TI`l-;Mum zg2rQDgVOPpkT`^_u6WV{mLH0Dq1N7<(u7V<&P!>1o($`mNI3sufG}d<AOB*}qX%d; z6xuC#Fxy#?K(*!+Q+bM+A+C9jC^NZ06yRnVQkz`-V$yI?j|B}<RpQ(mI(}Loe(bLh z8FQx6N)KW`%!pD8L>6$oervDVaSW_cCY%LzeeXwYb15zgfEIlitIQyRiolpb`7~~! zeQZlAlw?su$?05<x5HIT{xC4(*?6;Of*iFr6n1QW1B7RHd2){MA4p7g)f7(6l`K@D zD_bQS1NzN>T!NOgc4<s96B{+L4sXlc0|u%f@4jPv1b>Zf8ckxG$L;ws%UVeHwkBcu zd>oj;({WH{n=-)tx5sbuOX`o1bzR%EaKYyxaW7zw%xsSG)$wjzh+_-UinXow_@2mD zf90s{VwaOr4aHgf*K=h|-7<8JLz9k9laB2CSgB3BlN&nzTD7*xhhBZ*3_S@OsgTZ$ zEOOs2$5ObF_H_?dnCM=_4}Qbw`x!_xtQk7DN{i$_I~#(u*Td+JVxFHVAZz9|>ZZ7E zt0o^;Zt0gSaMDDmTRc@7+tUQVKu5cEml>mysZetsc4c8FJDYKx$FKD)U^s(25qq$# zy+E$%f<8{hugL~bt};};boqV$%yo5V&1gt)VD)*S__A!O0cc_NIl5cIM@~tj8i)aX z$ZG~$Mek1bHIz<mCCNLQ7Ay%pzB?{_{>ABD)re51w1kcd&ngv~QO}=JER4NjqDbLW z<?3+?u(Y-yjK;u%fugB9BhF%B%!!K)TAEQT?yf#qE-K%2x|m2WpfRvRiZqO+N7Y83 zHKDO(Cg!arR(b4j;B%xOApTYx%!Jh&G8JI!`tlggo)Ozje|sJtE-RP9`z0iKm3Y+x zwI>&i(3}Qn|2;|c`UHRHLilNmSqNI<iqTS1q&1oOi1kk9L8RSaUDwC7nc!0DY-*ZN zKNy3gP^lt}7PIgC5PoF7w2o1siCB~TcU16~2F{|4@_pchO(Z4LhtH?&YG~?Re_~wv zU5Xof$wd1&ZKUelKkGUDA+U7NoT<AS10!Y2)W~y0B(R@ouk%a|fikm|67vPCU6vg5 zCCrhIEoWy{5|PK&@zqK%{{YZs^~KQc&jbGs!|BE?``cp$c1K!@?HIV|zrcnk!!)B= zH~FsU6YYW^*Y&Un^cr6N3kLXPKf^|=1F!gIbLxPDUr)plyd|<EPEQQi=^_NKD_iC* zZ=$(KNp~Sf!CR#|_m5}4PP|e-E81(n;r^Py#z+==XJZ!To%6X*DN2jof1KRd|HtIU z#PGXU`Tu{vt}H7jV+UFhD}5(pA!9>ZBV!&O2uCLeV|{A~H=VBko{RcFf)1hoE9hvn zBWb?GW3V#a+nFgNh>(7^6j2SgT6HWLBZ+w8QXZ0D_z;)g(Ng+ad@Uy7cDFq~4UkB1 zY;eV2KYQN0FF6~i`N`V;`TnZm{qo9aWcbZ7y$yWi__Tcn1K-|UCZ&6qARkTa^t72V ze_iF5_~<rfI5!S!7(<hIq2a1srZg!^e28bT4`L}4KJ8ltNb^@5)*e+xM$e^L4b!$v z(ADVbsks;G<DI#*;mCC1RC{w5oO!s#U(`DH+_2@7#4=A}hhnj!m12Qo_UKQ2^HnHM zm!g}uX-A*n*wWcqNw4<S#a(q>MhgpLeVD)3l{KbEnLZuM{_-@hj;J38L{q$AFeFM! zmR?+EXMD65FLTW>JW7jsY1XG{&f!ki3Ynd@Mlvf6rH7UNi>F!g%hMdPGNcoc1@QUh zX{xx)+Xruhq)?r`S}{6lpM<jRWBJS1Miz>1qdZtOuA*}msjC-7N#x>uj-pTwmevZS zcKvd>s~(-O$uP`_fzQP;Lc3suo)+gv1(aoJsM+L}7Cf=X&cVB3jG}&Pd)$bk@imtH zC_Flz<08McJyelsrWmKEOe{3^c&`qqNGx(3G<G;HI)_|T$md9`!|es8&@VYy@tdEz z)2}>HZ_UMzbCXx)3IQmWc8ptk{<XXW01WBpq{w@4iWq)IOW>)AVK%P}dRo&0#eIC( zk*fq|91XUULO9ml19vjE(-KJhI?RkD$91BT3C}q-+rM1jPRb3z=p^-^I1Vc4K-d?0 z&HQgzQDbsGaA~)}(<H)`VDV8gZt{lUk?5ZV)=oy+@Owo1vCRq%Mdt8%fP`a)xM=o3 zZE2S*7Pj#5W?fc}B87fiaqYbd35sj@%ezGQZtH&t;YC3jG9BnFu*P?3vCm%hWl(^~ z0LN_)`KVk9NV$rclSl6QFz284!Ocbo=B=3U$q66;U~NVyC6!*$5BG^+EPX>jFtVy3 z(}4H`B+wHS{;JR7V2zt0k9*$o!{9IOWn?u>O!LnQdHY_3-7=%#084UM!SIIu%z4@u z!(9eU#dd&>t>Hg|(BTS__Y(3!+9~l4?D@$^8R-y@ZgRd7XdnczIYSK3d%8#8I^zKG zq1jB|dV=iwGXc#*uc=4yV{pum%oSL=IZ9_|&i)~Ssf61z(+=FsAMa*6G$xytt4fsy z+CujaJZ$vek!c9}fK~xiCnBqU&|}83{CT;WpE=*TR^=`<LTlB=qrHE}7w{N>Gtx_N z=nIS!0*l5&^j#GrXk!th13opyfcbmSNGC>B2#}Q=@XOiM*`oOplhx}Hl+~40{CyU~ zw8rU$DtCT?kBpv8&b<yAAt=gS6w?#I#Tn+R4_Qi_B6sDh4J`D}Eu`E4Jwo;FdwcGM zC2WmuXPej4I>@P6FhT3tRE*q%|A_YVEfu(L|1rAF-1*s5$k~;yUIkDZ^*^32&xfm{ zr3}!&y=x-)y&8M`D<680ZnnU)0W+u<U2ejuFED33lea4F;V_d-a?*L5-6{|guy%_z zkvCxA+1ZAYA^f)E)t|UuQE#8ql3o_YK%N<0U3-{pUaMEvPAEFq9c8GR6mY1CBaZJ* zkKo~EqAx4=S)~9JiWoWP#ESU+=PpfP<X~8JS#7+SS#=7#r|jRyjC-4n9J}Y&Yw8FC zYcp@vzJq&qS0lGst^Fm%h$j@z`#rNpxJMrzFZ}I;8&~C;JOX}XwZ$j(amXprLIQ#7 z$j?bPBs}J;a}Eq<MP^2G51#4JZj6>d&$ne*G#Wp6rmP*$nN{1n6)Q$=q4*M(3m=H| z<GX$jP<YX?Fg9E!av7}fg(wYO1?x<%RXUdt>wB`w7`28fe7;M-Jo{qLNbd)$+}G@M z8>-n`hAj7PLJmMy_*ms91c|a;-t7bl1G+3+>Mh>$A_C~{asnAw-I;-20z{#IK6I5t zGPFU-gGLGu3v#rdqZ|;GrI3hF(4l1!B&%{1v$>SZ=0*b$G;P1!r66dc3m`k#p97Kj z$XnxCt)9It>~Ew0{H%L5Mi62a(0O8vYTxxvZES}fVH)s=QmN{;sL2f4naP6cZ)q0F zfhSF#3>R>VEdXN^^dd~>(ha#qC`WEp=p|DdxRI&2C$h@D3e3CAxW{uA!-;>Wx=#BO z0q4)CPCSIjubQ~3XVHPwXaO?iq{E@@L4&V9s@Lg3;vk9fiGv>tM}^7{?KkuF8!zt0 z+SAk>Ow&V0skV-cfW+N`1ray83nK?94-KYj!iobDgA;j^k$9CeiSTfr+OTx^*qgik zA;lGtG(iK*B*Uga3E)_@z=Bc)Ro25MJHJgOsuX5MW-gIU1~O+@qcMLdP=i5^wRc_I zLvk;iA&lz}4R@Wn0vy6nYLc@=c(IcuaMI%UB!Z3uDpKWJH<^OaBZ4)9<EFq6^yf4r zR?4*!p&nB_(nQ$Y54!QQ%h-z4*z&J}sh51tI27)M(Ff;ExKv=syw<yZLf|B4|5!bA zl+K{>sB@NO`O6}|Ran<!tz7VmJx(13n+Tgey5v_NvSk~EHwH5sz;~onpb&Drv*AjH zad2cSA3vp(oBF-GKNtdT4WIbK;DKuK4ofk+(}Vz&0*rT;Q2(bBSAz(LS#pjIA+q)D z(TO?Ejy{FG+q<2^n4E3iO_+{I=pL}Ucp41QErbq@w7Q=z9o~p}4EW2vIpBO33*P>! zvFKi`i>L#sFHTylEDv$o=5_M~2}W|rAkmFgsWyQ;?u3f87RDG%Nn(pMJ77Nt$czJW z?HLDZl{W-Z%x9B^HR6u>EcO5~XFl7-w2I>{7b$~<ld04(^hLY#4}5%voy(6DS&X2d zTz=Lp7?x@Zqq^{0X74XC0%@FeU0l{3N0@%z=-6+PnA)Z7cV*TR35h`-+FjkW>@%&0 zq!}z0?^01hy}5ZUZ?18Q@~3su8fD}3ib0yj6g;tFw5*^Gsh&cXgC^^&L9!I3;5n;V zixer!1<DhM5PZlFG#`OZqC{WU#h^)x_OGtx_Lhy<Vtujjj`)Y$WshFtVNb99z3waC zk8*@gr)X5Vm&?A$lNy%@!b9TI1KAs+ux#_YVy9->1Tpif^uLA_n4Y)XtyJG-oqpkn zEBF|S7G%7MIJ9_WyxIskSS*}#bKk$C@+_P=6g0TgC;`?%j^`TqD!oAk;zw=3YJgGb z3!J7@CK!A<SMG6t%-&}pAKILVW_#$p>Fx=_x5n)erRguSw~s549x025)T1mVhw4>x zgEks@ObMDM$6{rrYRWT%=iCKpLKvqcNHYj}Hl7QZUjsiA{j1r0H6-*@x9SJ=Z=Q81 zTOpA5OFPSE8v{R^V{TpC>m`f)NF2OJNqXWt0TYRD|IR@C%m03iJKO`CO$j($(Q2Vx zcMlcR61iqqnv{BN;*0GY6~d^V(q0Qw>EQ4cp<GGAM7y~P%W~H<oxU)!zaY{T4+8R9 z@SYUUCI(X*=bK-`Kh^Pss}h^;4c{)zYPD0ce8!@1;|>ORq+yqEQR{>R2uMyIgJ`nF zx0S#%gjmmLQrii41u9zI#=suAsrzP779y1&?5!~)8!KsbR5!0;#Mx?!v}oo3VlWG7 z_0DDJGc@>fxCK^LI*H=be83!Fzz{MDjjD*DaX|(MH|hKygkxW!oLUK!7FCuPK*2FQ zLrp@*aC|5V6+MC*3EoQlr$FGH#hQ$xvOfnXD0y2TsI^_7cv84pMcf=OI3xw(T1LVT zQn9s@4;75{HwTwqFeD=mMlk*JqE<A!hGFq9?-Y#jfCt13qC>PC!G{jg4qY|e;r8rK z5Qn|kw}a%gRb?Z#eN|_bH{Q-Or0RFE!h8hdl`#_OsfY%d4*6>{fJ~OII@Vr135Qr% z7a29Cda$5N5OK70uQ|s!6j`Oe_n__+?@KmOh18z)a_;X`oq~ZF56W0mG*x1XZ2)Mm zoQYiM^OcNh?+q!S!d!_zO-E+vS;FuhwQsMU=b@hV<6DH(e*yf_1*XVA#Kt?7Pe-6Z z!Dv5o&LJ^l8z`lp*>V$2G5KxcU|3>^rO^swxhX#0_abU>ah9^HNh=f)V69+5{bSsO z2pLr00O6W$cqxZAwgHqX^x;}Lpe<8Qp^1D<VZq64Z0Kw-`d9MBySX{cO;vwCMV<q= z@iLwUTDv7!U8;>wQtfJjnR}}(GcTIcKZSFx4722}pm=z_@kc5sgH~5wM~PN}E>i7y zt{V#1=mxR(6q@;)41f<CEkzH(X8KChC&m&RuBAB5QksJOL_}~dV(5!uNyVs_+K#~q z2Ow9*X%|lB-YfVYR|{+$)Lfx{{UqDO%f@w489};u#f!7yoMN(J-klADTv4|i`H=Fs z!324`Bu%TzVwM<3(qHPejeCjAU}YR6YJIy67k2jqs&s^$bc+2ck1^vV`gkU&Z0HvH zfp{hd<^o#y1XZ&yJf&KRec<Vg_;n|)cqm<l4+g<>3(?%JX%7&y8YHMFp*%}qFME5Z z;UlHTq1NLxq-*@^3m%(i1Cr}OS<LO#WD-={V9rni{pj*2Qp#5y_vcH*aM!Yvq<8VC z*_T5(ug<B;i~DPTvE}5-gdD|u$V`84oQDbc6`z8UqRFYhGXT?C2Rr6fm%U({<;4~G z`W<)sNh45v2Jk0zk!GWw4%@XdPvZ-HIkZnh&&%T<b`T_2R_~e!a^w)V<p>XJ*AqO< zUx`wCc<qYO{uRTmE#635*q-pCQ3alx)c&`b_~V@CT$dtm4D&0(6B`%hR#_nrx4Ko! znx4Rus5(I=w-5@@#fMGF?86*+l}j$RZtd^e^$X*mi%S(+Y~0Boc$pNe5R$}qjVKWv zaIIW2tb43pydAshU-^$SYoz1C0~#N^qdd2S09vs{khcbYO|ZN=xm-g-rIm8`-Rj|z zjbTXn<lZ(We10)K@=29#kOnI5>jA0vg)Fie2PZ^XqVEVi+-v@+#yA0~^@M=vIP3rn zul7I?8#D)AzE>=JDZrr9SUu5wQiq_LGIr<%nOz|iQ54l))H@mv)-kY9$_%POg~X!x zPQDbxbO$HOsY@+S=r*?<F9J6NLCKv_$U5NXuVG+)Ek&)4v_J>z40GR+e}cNVqTiC9 zmhsVgycWo~4^H$@c;kIbV*-N(npx1nd>mtW{vvV`?$8`Y3^M;ssZzCvL6^Cpx5Iz! z%m~d!6+r(xo*q+zN{>tD)+VP2)wZdzJ2890PQx)OXK(f)Qq6o-8e;S8{(|r;DJeqG z5?tjy5G#Qb2fw9x4e{$6|5M`;Lfl)+*1G_hj}oQ@^tE#(kl{8Nr)A@Tr+Gy~w1in) z6huIubb%J=QL3fk*%n!xg2v^AIE#-QQ-B7Q7-}NvDrmE`<QmQ-BS<-R<PW-Zxzbcv zP_5?P6Eh=YpXFF`qI*Jf{l?_e{F+zVcf|9_XZkOg)~)CeZ%9T7;Xc}%yOBU<ed?*U z0>#7KW0{+harx;sRFe78lJPP`6W6S*Iex6&Gx>DH#wZZ8+Igx$B6zVHxEF<SYa%1> z{d98|v|YQ@H19<lhK8#4wqwHMla*XMNY3kdeVn=|6lYd~%S5rXx}Fh0!_+S?#MMfp z5B$aI8?<a|<@`V0bg=$Ugf25HGu{8{rei8oyXKI^A^7G)^^_!qI)Z>$!jIl}1P7C@ z7A!NX!w=plrt2BxVrm$q{_V}Zd^BIIX>rT+64*<B#{6IGkioxh<;B^rS?Dd*6u%$X zFD9t18HYaa&kxm<mK)j}ud@@Is}=W5!I$rutOZi7mg=w5Ve_lcbx+*Ri|wDqf3Hqx zpL9_8Py<MBFIO41J3jy1U$WV~hqUM)9qqPvCXZ4_=<_n3AJEeDFG*Wusv+}o`mz4K z+%FvIw*OTG-u{Jg#3{@l;E_5E1Bl-&5dPVCV9IEJ9woPOKcZ~16zooYW8yaeFt z56NBu?~Ir$w---GePOM*hxKo)eyq_pU?%q_e$lm~4YWpI#iU3+XmRr~I!Fo%&QBb9 zyq`WfJzj99SC>$>u_&%QG`j}F)Tf(b5^R8DP-ynA>qe^6nz4>^TWDzL(45R<%g)+a z$*K+1C0{*lXW1s%U5;GOWE?*p6lxUycn6Vr|9kWGlA@<t;NT3LcJA2OA;{U$4(7o# zgJH*N_tDC{5p??XfO4G7evns3z*3BHapcP@s-;Xzf5EBZp4dBWP44KY20PzoMQ}TC zh73hSzIY2SZ(+C-K0k25m<{h6^>EL;ou;LwCF3mY4(t1Qyw-V$gxc!`w&jT2?C*oD zXk&(BXbAgS#A6uLK+7{XIhYodlc<7Nm6o4%H5)Af>0;Jvgd0z$hf$BMaO-2@)-W4W zPZ4Bc5^APvwp+-sL|Tb^w=qRpk=vlH!EMsj=cNExim-g>EG$}mlwpN${@j7b+~J44 zFh5Q(&@3<vw{=8U<HiwLSx1U7v5q)HOkfFJ4%dmQgwWytVDF>*W5RdQol!rIR!v|W zp<2+_EHFStY^NtP2Zm0mFfPl2F?;OiZ)dK|3HoAoT+GgRXXAse<O)VlQ$xN7uES93 z7^afAk3B`aK%V<bbm!)l#+yb6>hPtegz3+w<7CMTLv}LfS{7(#>Y85XMu$Nqnp_P8 z!g!XNaLJz=XP+S75bQHV>8ExL1oUCy3SyDYxLuw!3fV*+K>d4QYSj;|H!$)^;|j<1 zQhGmpGIud-Kf&7Tt!F@mjIJ<jq#O4|^!9*8JT^K~rF{_EtJzNPXOcz3Mu!KPL8CV7 zW1f%((fhbfuczMh`^fGUv=Lsu7*4tkm>O(`QVWmc_J{MPQp^;H#jk^Q)Z0SqZ~WWL zzZm?_)B$%Gyx*vK^}wx;oBtU$el2uO-#<~+G4p_ku@K*#%uOfZsgir!Qv=+}4JrP_ z89kPBjj^8;K8B6j?o<m$Gvd1TSca-i2oO!(ASg5s+MXXQ#90Ewy#x7UH@P*sHYpV9 zqXUFhuO(&M(0dJ^AfiY&g-+V6ck%Pfp)99-r&^S|sIcwM0p8o->14E;wFPW(*91?^ zO8l`4tS5)~wM-moA-F~DI4H{!g<&6ml@7!qP-dh5;)1zGhvq3Oz1Jf+y*s`5{U$~7 zV^Ktx`y3tn$r=1On!JX!;HbCxAGP#T^3w11H1AeQvZAxv-IP4j=hsd*VYisycT?c( z3P<qrqA%D!9&@S*eV8RG;6nIv(&C>FhA4JswQVi>c_JvAqaNCAEmBtT_gr(pA8L$w zpL=7pnB!iPCj<JD0QGJoBq~;Z*QC(Hv^q5YYx{+Gq@vIr#A8yg=^kCB2Hcw1-5%X6 z(!)0Of@r#pbtfwo>|FErPAy~zBbIMy`DzfAYTNdXis9gfbGK#-DLIUwI#PA=hI5K5 zjF%(ZE}KtoojhH!i`yj7Pwei%{Zgcf)%tc9Xjc_l+qH4hf09IaHC#Xa;w0xml94nB zd6cu3<G2Y^1m@dMmZ>LZ@hGw62VF$@3?+`EYME)aQkf>*%BS$vV-EpZ>VetESNB-= zM1~Y8dD3sSks>|SB0Dq)cm<R(LhbY0Uf<Dmg2_y6C7$wyf@fp#aj%4g=McjJA!CUa za_)lL^>^V~XWFmDP8a3IjSMzAaTWtC>E^lDHUmY4DefwmvOiPtDP&}sqjbL8Qy687 zLSC(-r(T^IZe|KkVB4{HK`M-lC)$&)iHy^)h0TH|O%=mQXAK&dHrsK|V`Ona!meXh z{Veh0?Ue!S^B9NNMS{aDQ}Iuf+=H26x<MRAja((1MwD}=bsPw`<<~Zi5l*8IH|KHT z-KVWQELwwO2*2#fFXEkKv{6jl5f#r+CHMGQl56y9_1uIXJk%z3g*JC$k3rs)zOU_8 zPI(tl!@<@Nd89A%0~+#*!-ijjANq^c>=aOWcp8V%9pr4h5V!5Y<FGL_bH!UPMKoi? zvr&IbAad1;aR^=q&3EOhL0aRSr)R&Iw1;jrMxHx93FZ=Fx$BX81BdzYRD?i?##R@p z#7vm<6pF+Tat^tI83t#P^P);#5?e$6!~TapIt!WILD;F-99G>Qcjxh}bwrXb`j1R+ za$4mc%NuJI1!|3LtGWJs+oA0;kt1u=II{I375l2IK#yw+l_hJd+|jUW-`f#0)on6u zW2^@8sMj=R8cVY(`~BXu^eLRiIqDL8B_z<o_V=MLUvs>q+e447PF#goLM9C;qMnAV z@#S=<^bZ5|A(Sxdz?{Qs@p7T6LD>pur6h*Cgq1|=rQtJ|9jQ2TUT_hRl^ICAg>0ue z7vo|K8F0x!%=1I0$wW#Fz0qb<`q`puY+DbCjAsM^>zfR|;ycTuc-A3fqk*g?@qm1Z zrb+cvu8%(>&?6`;u~F3r3jXQZct+JBwL_C?!<!FT8FV7Rc1!{B!fmZYZu$7q_S)@^ z8I%;q#o!L{aw`B;p&_?!n3SLn?W7K(Ku6XGC=rmh+Qruiw{wdrJ~K$hTJNnubbu9t zm!I%zfo2dDZn@-a&41ecqIO`}k4tk=NRgARG=&Kl+l*?emizMyGM!Hu$5bkcFZ-RA zQc0vlb#&rV`8s!TzLQ@m)Ou3X0Ei!H{?L3nCihekziof0gQaTn2JBRUPK?ppuP<vH zEhLFj@XDP3e~f)&kmyVl<r~|!ZQHhO<Be_Gwr$(CZTpSw+4*+=?QYfXpLA8K)9Frb z`rg|)eNL&$@vb?vYe|T(f)9KY1(d20?&I`|UULtdSki2IDDv#~tnbumlL@QRruWHx zrLu0J=447M`!kz@%dr*`-mZcR4L&cW;smchx4((1iDaZq33+fIh#$*M0cc4Y_zQ-{ zKDj9mNZooGD$Gpp^ef2pxv<1TVg?C31hEAxn^Jdii-BH_7a$LS{3Xu(lIdK;=J>aU zi*X!zjj-KuL<aobq@g<4xO-(6Ng>{|OJrhFB^;4Zv%!n>IJ&C-kv;hKmFCRAt5s7h zb=gP+s<b$&PL@YQ5#-@kED<UqA-;pJ)Lh~U0ya({Gf>}WiIk$qYZ(d3+p`fK1&S4i zBUY{6s0lpj6*H$!_i`88bC<^Yqf5+I^0Hu!aNxzm#6tzfXQ_LTj?8;PbyE~MCy@ab zfndp`sPbQ>okVUeqA7>tzDCKt*6P7J=nDqHdIAFtRcL#uSvbV`jNvWQW_tQlp<xl* z$|}G<Y2OibNJRr(UJKu5$=@AWPMDiZN<e=uYv^NHokW?suT%xLA0sSAy1{h^5AS=1 zZ^t`Qxj+aeTBZ<9g`5|xnteI@6~G`G)!De{Qkq+|0|H9ysRvn-7^M*FY+xIfJyibE z_Oe2o{^As-LRJ6O3>Pr2%(fNRcdo<Hp>N|V@YbpRu8%O!8Ss18=<lPVUF@)o9q1sn zNCrnNNVziQ4P-vR3W8NAfeAF}<iQ%W5_g}+l$UhWZv-FLjV%3k4$G`iZK-UjPAi9r zi&P={7gN9I_K<S|=AeSTZ0}PxbCMN68L_g|`6rK4PIVyKM<vP7!RiEcW~Et`FarkR zNjn@RR)9hBSIiy;3swg}ca_1QJsD<sA0-kEqffGkj4{Q0T)RW_9$ZRi_&MTO%2lsE zdfDyx3$fAkh*^m-APADmx#shR)_F$mx_g?cjPh@t^toFw#_q(!G6Ok<rLL0oBoYXt zYUBE4wp$LTA=0$0?#UP<SjVjR?Kvd<q!+#w2pf}^H}%ene4?^r`+Gfkf!o04<8sbw zKxU5O65EFqhK6!pm!7<5_d?NLLR0A}WlRy3^MD1@j$$tWBx6ENF(}W1c!-JFlUf=6 zbOw@7ILs2%E6!_XZl>^taL>JsCQ3fJ6()^ZEn-yF-3uxj_BA><yTA=&3XYN&ZEb(l zbb&&Be#v`fRegKKY*=uMx0>~~sz#lND%BrJbm|}GBYA{T#$3!@X1$e-i)x;{<pq-a z#1W2!C=o}>eG5?)D8u&dm!xd+M~nfs6X^7AU}OVSOi9HVnl1|GWH#n{J0=>j_=aqX z2g!q&=};~7k{q9$1Df31f1shu%k{t}7<(kNCE6U3Vh>2`s3u%;NSF2~8*-1j)J>N1 zC#6(l3eE~t1Tf<3u|T1VzeMD)kD4SU%4}zj`L>0H!m^8?)1n&M=kS)$2v>CaoQm?L zTIFy~9_n%E0R}x}M<Q2vgaDpA?(vdfIKB@?_XpBsb%o1k%}3EdXEO)nx4ju%@u=Jz z9Ra@Lx=%+`?Q9Fz{4a<zpHD|JLcKN2`aGnuWaoT^IRBQnwBp!xHF*QNl50xc3komd zFXs&is&^^(Y7=?*5N-)k@d!MH#}|f$6E}(O`#g&(GiZakj&NFPwRSG|3CkF~rBAkF z4et_hk?E?PAM0J%3fbw{BRHwZj;S>Dj^(P+IT-e2wK=RE?#XrtswxW>6-VQJT)t+Z z$G$+|bLRL00N7=)mG<	-W=hMgiAHV{BqwU^RBmz(nL-!-!Hz9Au&AuED+8Me9EU z+p4jpCDBQt^E(-O<LZhI4?#_O<DyOSu^d`ASf8r**sR&wG8N~qrC*3~{IbDydDvlT z6DJ|nN576uL#*hE<&{>%4QoI2MmoDyTzKbc5$EhCWI3%8>TLt|kwcsaY(U(lCaDkR z$*aN-7m`&E#@nRW5)47#qg1p=5-1LfKD)|knNm^Xy$;VvzR4X`LWM4`LNz>Nyq%*! zucRB<*7;*Ni~_mUg;UGc2vN1F$t{HP%Oy1ndy>nS+ysF&9H1)M$vC0uEG&6LH9!Pd zt}39enpIWG3X__ERAm~bCU4^z)e@abU8z&!!_Y91E(%>QB07hUHDj=8#1plP#v*D; zW8N0YL;6+i1kNcWosI!j*G;xP6A_}lRd#K;njni+t(IGhw9_8|SO_|8Qu!^^0RgP) znCs_4bZ+l;TBYze_VD44m#}uEIwMW#u*{&APpM|MRJkjY2ON%9Qn$#j_-9FnM-p@@ zI_FH&Gxs!VTj=diqF+(ED@|LuQwi*Awk}OG_TTQiqBUJVi!q900+x!>v0~-REFDKZ zPCmj+R*v#AE_cs*J4mU*FefS!v|dg5JI(~hX`%G0HcdQzLP@gjYWKh^P(n4QDX=mQ z>ycqp?OJ<D&&ji&HN>jVWH(o2ffku!>vgeY+ME8ZubnjH3~*aUo0I*b_e|UykM6Q~ z;iI8nDtQ;sMO$Asw(Slzpr45973x9a9Wh&xQbpAn0*ZkZ(VM|)6Z9iTQO5Y{2lq-J zD{0M{Ptsu+r*7LMB9ves$2t=Rt*5igle(zFQ<9p?VO1=15jQYTEVKw(8?05I9g{mH zV)66`Ag`Ldy^A5H%M^)MHu!BN$HB_oJAH(b9r>bL<V&Bf0yBresGygk4KaEc<SYE7 z8B0+8TMsU4DH#$e6J{hSTj>}AdrlD>QQ;l9G#H80awR7~KCPhU0Pjl3fbnVfG-FO3 z0a`fqK7<X@jk5(g(yh;v){}m8IoKS4{gp_!uRg$v<Bi%lGiy&Lab(GG4&1o@F~!M? zQ%Is{9#d&dEYxzgO{+PqGkqbZdO3M7c5s7rq>S?UH?Vn3<OeQhL`E$y;YY-fnWa)R zASz!cAp-TzYl4J{kz<XvdBp5k!DJTGIIb47pTib{i9EXm>*k>+D>O={i*{>P9peg% zyjRXw(Q9XrJLubb78^;7x2UgmnF54xtXsd^8dRy%ZH8WgLg7mZaLjf!ep%p{UOh0a z{K@cyTwGSBNw9Z1-tdkKa2e)X1PF(YmkR6BsfNlux5UV=NVGq-n?;4~p{BZSmc^#N zoVC!rI9x=Qc3IeSgPD#5k@-Rd4c9zh)!Z_nst&8<o%MYdmAWYJZ(;6GC3)|#fA%Rg zNPlWt(!IQ22fzmc#^(5lDx@8`T*WA)GLnc2tj|UnprwZnf9lsDYZZt4YO;%JCpp@F zbqNCj9`Um`=X7u??f0AKi$Uaw;deB4IVjT89oDjqrXFo<a3-hC{%B3iVEQ=P<-Os3 z+x>aHll%Gd-QJ|*r5m;2bN^vFh4tN60!xWllG^J-^{e+H0#IM54Rd>e<LHpY<MmD9 zJBp$g!{N9LqXXywbvg6-?)fPGz!%ft2p$hbxX0UdF?zx29ec;773)klsmeWSYQv^F zF4Av*UA<17WJ{gw<YRtxxcEwaq=-PWnR^><mlJhW_W7f;7F~qx#~O`zHw}W`!+#ZH z-=Z{vRB)4H^e+b_2ReM#J7@S%bYB>iv%|o9%4mkNb}zs~A2AA&mq-5&911m!A9;Xb zM@3!Q0owo&FTE}jZ`{xjtH5{Y)z4ln?p`jGuBb#3YO=KG45GseCo%(LjMyUBojAk_ zQ7k{6O?H|V+oRa_5FoNHxG8jk4cV|r2pp9GRLq}jbY^on)_5M;txYodRJa9xSBUBl z1^5+o7>((lxupp4z;pog_VT}9>~UUuO%3!HgRNP?rDFGgImV~wk5rJ=c;y!C0dtTx zKHt=2mwgja&Jjq`)MVKl!`LYnHm$~WTZ>V|tlGr1B$NGVblBeq`&D`2{0(_Gl-?Mj zohdn8<!$|thkPzM@F+utCWm9U7F8l}v#7ny>CPteSz)rsGU>>IruaTuZ=^9=cz`+4 zhL0Qp(bILeMgw_(i5-|!!d#HxcobP&{>Agk(on(5Q}ko<Yzc7AQ79H@J21Ns+wg4l zr)L0+KCa&qh;qEp_VmlSvCmI<-Oa<|u9{1x@e8CAhBJem&LV%U*azej!W{<TkkmpU zo0lJlp#+O8PMQG)Z))h-7FLS;3+>}KT3sO>+;&2u94UWM?^eXa0%0mqA8|sWyj}pu zM{#RJ&L~v*DWuGDW=FkoR#FsSNf&q}i_hru88fOT+C|r0tgH7smOw9RjzSJ$As<38 z`E;u9`#JVH*YzQLVF%Bm@EpwFu&A@g*N_!}SOK7DP8?O!ut%b@%d(2XB7Y(kfK>T= z*$=%d`dBx~hj=!X_V$|lcYWq}<Ey5fp^K*k*NX4mEx_gsL3*v3?rTv6p{j%Ob{6u! za_@MmRLPI*gzt-iK~4Oz$coR{8vHt}RA2%}{_DxAnnz}VzxdY(q$hQ#)i);=<=VG( z=+2$=A_(k{#W|F6961|PlI~}5xkHKGtZEBdu-^>l!J;}w67lF{@4c&{IdOf5mNO}- z-nQ#=N$YG!_=C8dD@00t5oeJyH+Of+N&{bait60`>br{+TlsW6hdp?#J%6a2I*OGR zgC+()Z!P|h1&F{r6$UP~6a&rQ0n>dIl|su|FO@@m4q+ch<hs2Q%`&u(j6gzXmV+OF zK3Hhk|Jxe&FRlLnE(6EF$iV!+;ClZLwBB;IMlA8D{pjwg(qklEY3ubMJ?fk;ATT&6 zO%Fl<L9IjtYHEUbe?V`y?+<qcV`T$rr)PynNS-Q_l1_HKn6UAdLRJqSO6e{y^0nEx z-f%g0v$gZ}W(~TmjH69vO|4vRFZbu<`Q)w-hxgAz?)UR49&heM!Q1MhulL6n93RhT zHo)u67V7Z1S@hY@YwRv>((w5U-0`_D?!<}qv$M*oh|b+W>Z<@uSG`q4ft8$z^Ywc@ zmPhnz?!Ow`js|p0{+!5)%a0Pw%GcOgxOvb0Kl5XE*aZ~cK5koHPxg+FqopU0ZS4u8 z;7;Id-$m>U)o0u02@HPbDR)B$z35EZbB0N!rbx5L4};I0n|}&$v}CC_>fJU68#j3= zuhw$qc4f$QvMN{dTHhdeb9`QIVP5B-r{`jHAQqBKhj)E}`F=j~+1c<lA#hPkeR-3f z+RrCz78{i`0{&U^!8#k!r>j*KRBf7K%bIx7zSm!OR#3{}^s<R)MTvM*elWRhvIx;& z^Q{uK>BjKvp3Um0p~#QOUv&N5sr<kk<Hwv4(MeKap!a+>s=~;>ff7BNu~td_l1Dv0 zXUI@sRwIySFE($8oi7?#zesdf-FITqXRfsCiM?wYfZ!8dj4-QW7?g=B{cOux>xzxt zpE}@x;yR6vI>nx)+8Q?}I;8OR31el<v2Ti>4=Rj~I+^s_7Zp9louS}-mf=R;`7s#z zkcs(>7P%RH)_(C`MO&uN!mYg5b}?DK_a#C9TFVM8xQTE8-hA2zhkRL{b0wQ|yv%60 zYX9?E1{gouU^y}31?<S?q>>)HQGqe)fzFlh><p?z1z!AjI#h?LMQ0VF7GP)Kx)M}# zNo)&9MkPhY+XI+tqM=4=ttWk~?`vN5t1lWjc*PmaAI2s@Ma?M#Yjw@NjFY_6=7}bH z9_DGyJ{S44K3G+X7I`nm%ycux8qV7RQ~ocXH*3~rOZjF(H2vX|3=jW-7t{p#WPYWj zDM8P|LtCu|-xyyXL53kU7)?4viVBO9RnuFXN?ozeWJi;654cIB$EKqi!&ClAicw(% zK#jt3v|n>wMguyAu+kDLP{;W%M<{Pqd+A35?w`CsgIY~q7a>_ZmQ!5Vg`@)$Q$iys z^X*#b^&G6{yvnzVw>q-`%y1aXS))ai<u&IF#(%VHBmU9s7|3*?0Mc`<Yt*k<`%0LK z@cMd0<_50qbe{TsyHjyv09o8h3}TDQSr&tUEewn&=Omw9$aJaPe=<ch&kUMn_@IsS zqN+{CAH;b0Lwu^<D|n*!w)?supKbTtMsk81{|%-)H`8o2Mf?1G!uO!~aA7+;lFozW z;;~ELebv-vF&~=kX2m-|#-JR4``eWuW~{xqMHt#_p$V}u<2$eqM{osHo8}?zTj;vI za&J}6!tImo0}Fxge-3a2_x@VWZpJBEOb1KsZTnFB<J4gC2p2t`9(So7+u)lBS))7c zoosNxuo{K?FGqhIR*Q)NnJ(YV{gV;7e(%To{xsR^7&w9BbZ*Z#EORR&hZph+8@}Qa zk#=qQ<l?HH?CvKPU}Mlp#&00Q=kwJW8mp&g2f__f76`B;(-{C11~?P4HaP3LIw%-X z-G5U7mAdS5Dyt^F8`dZ^zF6Ti7$N!H?fbE⁢ZAG%vO_mZZ1UuI7Y?@9&H2&vU&E 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%0D|gmCN%$M?Z;I@g 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%0Aj_Wu6lcI9N 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�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τ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�N|Zk0GhF-+=fo`I2`{r4OwARp<AvtxA$!8# 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%0A;&Vle7b9pm4-(2OP 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%0DPU^um%NV&6QI|4=m;g#W2u zFminVpnpfda7p!2Mp?!MnCZJAZ1|tIOKId}D2O5%uNF!!BqxXEEB33Vz49R7O*A&1 z|30UqnWmr*&;Wxi^e4hWS4}+?l#LOWZMI+)-sPkN$8yq~-;0pc+&(#DKRLK}4h<u> zkiW!dcDmYl>+0J+divPJ#8IMPzyS=xSot*&Gn0B6d2(5q_!Y*jTC;G{aAv>T_B<D2 z^jA?hAd=CIh>pt_e~60hDDE7)r1Z&`q;EueZ#RCqQlcASY@rhA@k55_s|4S(m{nOu z@YqYXpk(cZ?Wkk4Vt571?n3cE!uNmA2=+Q~_4t}FX({$+$cDI*$<^sKX!q8dCOXS# z%IP9%*-|qxb1r$4$pVVc(qUS)u~?aZRi})xq8+M3VYK=)Vze>BWhFE*lEu0tujtM( zh6**sP?~iRiFG=OMKJ<QC(Uq{yomuT&@q#pleFMuDJ^RmF^4=wi>Ahgh8QEJEKDJ; zUSpXn>Rp4yMx0940W1JCtBhRZsFda5V%u?sA?uC!?8F9AQ8Tx-4B%9w+n7h3rs2{z zz1F4=m{jUN4J3z69V4(WVpW^gb-#;SA)`i8jT+Q(QiE#%a}9ciS&Sg5Q5lTfs-Y^+ z(ljM#ks;&Cs4INuaD4D~!+np^H|s}F_+Rc{Adv#1UAqO1x#1-05-_$XFu)sV3s*1s z<KkSycy*@XdsR-4t@!0-zme>@@21VivZP;%cY7<7HgjVU(H~kTTnzaSPPxY2%=vpP zHKdD@O;H+oxw1EsUVp8z6BmVbr%^EV&-rycR4>g>ds(1-vB%`lPt@g)7NwNZ^y+5i zdcAI>coEk($E0fea|82Tf~@=aHT<xT0gSV&Uf59D<y&IsbRo6Wk;VDAtbzdLUvLAK zXG3bYGLzPld;oGWU+L3AKeJ{EQ6(OhOY*^A@Ar(H8Q=@*frK1ZzzROEGs<V8QQ%Q9 zIipJS%blOA*Uw63V28hAWSiPa{S_4ke;h0NRODyj%Pd9WA|)&KhK?h_BW;Zgno>oS z@48Fh{MZ)N6LA=-*zDl7vqZ$}!AW58_%Zc%d*JtZ$sSb3gOXveYxPHIPb5z3Fh6LS zWj}*fqiRdN>*Vnx%!nPp*V{NOAjy4)@B2zPiN0VQk<K5KU)a04Dq!PeywtE39Q<^t zGJDN8yF3y1<K_-v4wQ-A0~0c{4+-Uq_7e-T>%JsQ6B-d~K|0!P^I2cU%OzQBj&KJ- zUpd{q68vtS1fMdTJB(#Zu{Sf)ziWOrAF{ABnZ6a~dXt4>mcrA3ji<sd;~4L6n7Lvc z(U5NpV0O9@4r1bwn<w|v7oJoD-3k;Zo6m2S1he%<1x1r#LelUK2ZbiRS}^nK{t9W+ zcI>v<4_xqL6apOI<JWooq<vzBbvaqCP1p7OgNA8Y5|PiKx7*g!Se&UJU<0a9+EH0o z(o7giFxQjI;qk*t=bQ{G<p@HigOTC@+OYI+YW(tv&wipdNED=?lUyPIrIP|Baui~s zAO0PW2b49%Q=&*(UP4CZYf!JZ)8p=u9RK^sViyjLpdBZS%))0x=GgNFV|K7BDksLS zXHf)GZ?hAy%2Za_QXK+&6wB`N)a!J8-nFog<s*<HdkdfivCHcB=KwM^`H(GeUxtW| zgF&t`0SN8l^|dos4H%Y=l9y?AMsF7}oV*A^b%^}o{^o<U`15=IAj#<@;3B0Z?Y)kg zSaAPQ(d+QBCXT$Eq&j|^M17466bt=n$QEq*8O!1$da=++EM>LcNqjT_5!wUKcSS|V zE1=T(sOH&X_S}oyOfL|-&{|ho5OO;4=P*a}zSF0L@)18pZ+S-T^h^D%>N+rR^HoQS zi+`_tPxg&Vx+TP0gY&~t0CgJH<-T1kR-u%7S(8UI9Qzv<tt@6MsTg@9m>tZ5ypXx) zt+#Wz)F?&O<8r6_9k%dUnH9>Vj!Hl+zJwK{x=HH!;@f1Mq1ofeHO;h4ufUAxGr_`l zQwIHXU@eKI1U~?0?2o%#ye_sPxP^#qDn%G4aJPd>Kp^FjdyJKAEe$4ABv6={bXu5) zUyMxb_b9_jfNOet!tqe*ET(Yu6H@4xIi9CzhIstt(H;Uvin<-9UBQ*$s1Hh^F>aG2 zeD+!hoR}OT$ik}PFQ`+XmDr{25akuQ(5R{1#0<kshh36wVXtsw<62ttYV-Q{@)Yya znlr28MM2?oFV8YcynrDm3y+`S0^3yUkGE6a9Me6j6Tggu7WFMFY;y+N+;CvYkvC8Q zCH>H(DX1l!Wp}kaJ&*=DHY`Jt+$qA$og2jAcF^tjJ{;tv!%)kt@eL?wMEu3-p##6L z#-G7ylchv&PzDHNq%Icn%UMuR@bkb05x^39$&vSr=nG7g>)+QI<QFQ5O62)l#Xeyv z6t7NDlDG+bn`)Bs=U`IRRS4=bsX<>3b1yiL6SdwVT7#$-GkQO4!nAv82m3xA3>Kjc zzux^UKA~Y1m$v`qvi(1?<ShTpy7=FkgOEg7t38JAkoZ^BQ^FZM?Fon7RzeI-av<UP zP_ix>FQ;Njs&G=`^|1H1SQZCp=?Sdp4|CJ4mzn5Vw)Nv*tGps7HGl19*0v<WBV88j zXUz>v^ny-wf1s52ul;!*(dY<?)k8lhWa;b@JenI-s?)!I-8%UhyXM{T%=7LE;a9k6 zc=xo-<f&U%(-0B9^>-zY3jHU2&-~_3(=Uhp@6n_99l=BPc2zCry|EeuVE9xq)YeDb zR+`@CfxUu`AhvNGvVo^w`_$-;xyCL9jwIIDaR|F<8weK*xYVg5o)K{8^$w@<*U;fQ zxq$h@@OPi8<ED$OL(pD4I`v#9Fo@(4%pPUd>y_yWW%I?&m$Cq#;qyPR_SNXDNL1>Y zU^YsU_9>jeS$hZ~e~zfV9l^yujL=b9_~W^`VEQE4()Ya%x)l`j;}J9xy|DNZOGJ#N z@gr1?vp}T)BJ%=C(7XtnNi_tT2(%!w$V4<7$ipScK3qSY$$?FbyNWa$A&ACf^8}tm zFcD1v@-reSGakna@MGIgM>(TgoZa#DC_AO^-7NvrJr>q`MFZGqw(7p}b<~eQaWN1Y z|LRWQ_;0>d853JGXY+5!*#B$P{*5-#|A!bF8AVhjiV?^U5UC##|FXh=1Hb-%TSN|y zfA*)}=U>*&CXV!C-)J`z5fdXjW0U`4O1kUDB>BlGsi6S2LGXMU+qf1wY4x8(NG9=B z!ZDe?5aLalekH<2DbNDFn&T&@wumkPSxU$E<}S|x+Yq<lB18d0nL--Ii+s(bW3ZB0 zz7KvqE;kODKLUKFtPXWaO*I;gyVyH8pK|RkkG!26?P-WX1|7V!N*il6KQ{lI)}pCy zD;t==ioMN}bv2Z_x{=QJvuVk^CRfX>Q0)Vipg1xbK+{po2h-1iaS?kQO>1>D#&l?C z8bXKecrBIv`Nl}Zk0%x0qf+rdT(h>|5|b($aHD5s>O9*SCRl!L?Fy&L0p1*s2U6)z z3g_l_b)0Xu3hR!cmVT$xY&rw^tQel^TRW$8h>E6V$=rK&#I!Q8jd*6xRxQcQTGbvW z({`4oe*QhvYr;=F@RVj&DlwaMUAp{T`~d5UGGE*y4VYu(ahV=snlC<Pjvmb26Tc?6 zs9x#r)EGrCO?t_w8nX?_7jsLr%+S^r^1nqnW*yf+bjlt7o8fnRWX^$s8T%VG-1X&q zXLYC(_X9zYC6*nW)gDI9xeaq&^9?IM_?&9K7eQ~L9X!xz!`5}?#KH45z}Z6}>=Kx! z%RTVs@f936$d~RsBH`AU%~A6A5Z7#JQjBM~UOQu(pZ;<870nm%$)Zr>)7O^@`MFmS zg+QxGM)0h3`W@0p&Op0eP(F&ykIp{Cpk8LAfif@$fAe`<Gp*m?I)q2VpOEN*q)0t) zW};S(6-2Y5);($;UALq>+UlNS<HOS-kZWbnTPu5(R~2n+j~P3l&UAy+kp6M_y0Fo2 zb^u$kBcdBf4>#9Opp7tqOB<XJCC*IM1Uw!`3cP6jMG4l}U#<<vNzgHMeI|^)dIkrB zd(CVVyL>~@<K>yf4zDycv$9<VAOq^-{8^LM7Hs)Oeq6_dTdD%_W0ia)$l7pHhDHgP zY1kMq@lZOr7%(9t<~wAyl1o{x-*6wfzJJDYl3J7QC48cbrbNtEPFkMj-*CL)&%+v3 zr*>kO_>y{}l>?OCu+JqPb2){wYZx(3`(Yk2WCj@ccVS<JyhpK#US_GD1>cj?xzL^U z@NnG3I~WDPt^rw`%97(sch3>=!l)8WAr*>FkH$g7nG7PL!Wf(b8HP&grSD4yYr-{m zN*YlbcKn*zrR8l403K5LeA%BdyY%Zn8%6)+|N6fHV*l~vU}5-&r~Q9hLt+&F?;6r` zrZ$NOeA3^NSe-<QF}P&gKf^}))26PKMGmyV*!U&huaB72wt%J?JZO6|EAD9|Nsqqk zxQ>NYEJ_Pb>wHQdOzcHzv0<#3!O;9ymzhX}<K&~2dxO~dOg{^Klp?j8@V;WyJb{Dp zN1k&SL<v8oFPzNNGhPpxUEI_9u>*pXs+%fq>}7=`V2Y2bUZsU|Ec}hq>p-sk(*st) z>A9CP_^{60%j6!*v@P2SYQricYe{RS>A4bh_m@vmbF<n+{^R(HHJsv4H&H?|&D%Nj zt3N%1tqU;*7Em{-i9Jn6`3IrH*wnLBKK>_9XGlKm&YM3!EPrdH1`LIk#^+6|L?L*| zOG|1T{NZPKYV!8GM34Y$$<i@~ByPB(3TT~!Fs9TPWR}1`9>cJFA)TgIad9d@Hh7mA ziRMsUdV1+8<jbZ{(-0U2I{+e`@K=oxcfta*xG_sX@nCvN5M9~9(g@}~CA)vX_L$)B zMhI##7HOBZAB|G_Ka9O|aBso02bkR0$&IZW+cv(jZfx7OZJRf?ZQHhOJK6lI-tNAt zeY^Y4A5){6nNvMyx=&Acf3WyumeZzGg4i}ZKLmKzxNCge27d|sk3?qszyI(5i^xAw zM*r*i|2d`&baP2|az||8fqrEHA^ne||2Hw@|C2SaGXF0(mVu$Jo}R9uq2d#aGs4}| z+!KZLl$5w5<(Sko`K>hd=ncZGllbJM)Y!B*FonZM-iuIa2H+|LwjV)l2;W|c?;y>G zyyk=B#-<pyy#`i=xttmVBp;YBv;j3y&uuIp)R58XuEbYZ%1sfI-PhU7&}B-a$(>1$ z3ht2_HZt=bhO+lcenxCbk-njUc}||5k)HXl?U<D8<S3nr+~1p#=}~DK<(mn~rN6cl zqw+vhbjsusG%_@llG3vQFA~6eG+?paC?7&7x_JGRFbR%Qqp}i@QsR?TqtvB_KyQaI z<H*L~q686sX?|%?Bk{T?hK_Gp4JsEQV=+lSiYrfF6zHG3Z=XH*D$ZSf*G%11VM`*l ztVK=DWG=Rb&a6%>gI?X+JVpQqS!Fs4WgQKhXaB1(o&<MNd#R24$KkPS&CQDUqGqL0 zmu5#`J%AHH$%F);GJklLwB7if?sELK)HS!s71ZdW@SPbpPFk78t|xu{kX_32x1FQQ zq4xIi%l55`_D$=BYkFSRVp=MV$xh_C@9I<wdELbB!&yJ$FHfzTpplM{te1<Bi<FU^ zvZ1%9kXDWC`d4%-3m{{Ot;$-nSKg7sPV(kpZ7V!G9xwXm{sedFR4bvK%vtA3UA~>& zT6DJIV${rGl63fy?4jX_`H?wMvDw8C%|1~@X=!O`xDbuZsn{XVdYt`PYj4V>=(@^& zv%bC9iFW6O<|{*_VZO7ziMN}#x}dJ6y`kOO`1#+J(|PkY`&ci8gw`*<0=ETUs2~A^ zMAIW^rK!&}-e;G$hwG&IRc|sGla%|iiP_`b%%1+nq;ulur6g`{d^cAQ*B5VZ^jAz$ zXdoJY41@n^tN(W#+5h^GnArc9n>tFN*SwD(vGZC*3gO4NLD<3!2}&`a#A;E$;354& z#<BMzc=Bjx+r^m$O(G8tw2tYzGwqqRGvk@s^><s(&K0Xa4Qm?<PQWW=wOVzG>6UWI z1(tm7N!ujoR@4!u`pNYCAEh~X$V^IaOEBk>Z2_hY$wxRlhurS|Y27Ry8yy}0=48pZ z>BtTI3(Dq@Nm{X*_#obJ0{g$tb9i=lKJc;ZA2jgVA0X1ijp;o%tl>nI)QPF*V<Iy( zH+!gkQ(hEF^eH2`wo@y%pn~=u9Isf_<dT3XnW#ZZr9$I*ia-r>)}_pj6kr%O(cCz5 zgwO6}64#}rN2E=2#9DT6KN9IY?q#<i#5SqF0$OIW-;mE4U0jQh2mS}aCfJ%VmS>sy zql<W}iT}d%Q)y4bFez{I@w3!K+=7vF-*KF9y+`0qBa;p0#PRU25?)^ji^g2-DyfrU zs<jjGE{|FWs^Q%%U{~+WJhrWkN^jf=8>?`~yT3@=x2LjLC7-}v-rwN=M}q!01Frw` zWc;uA=l=`AnIA+t@`Q+a&jARCwFfBjf1Kd|$zK^57}*&AH%in?Pbfzek!Bw!Clwbb z6*49$HK^EZso%el<M~&90sj(L1x+O3C(6Z)_k;bDmI?;xPvEc14~8mi+lz`i14Zut zQ_l70x+>YJDhVa0jP20aWFow~?Rw7oc010x=L^X`y;?h8y8gPVyh^_k_$4R?fQb#Y zufodMvU<>x%?d~qszFatY$+e=W_~sa3{(sxG8>&x&;M9R^*{_ii$>JuYcy9M>>GKI z`oVDx5EYf7s?OouO)lz(Bq1UCgG+heA{lcCzY!=`oG_z3%_x?OEyfqfS<KH}Tk+4i z$;<v;Dl~>a)LZ?E$}T2H8FE)@M1@tU#YBZdVMG%0(eEiv{<P|5qj8qu_g=9;Hm%ZP zc9~0xa4RAf*k@RKEV(qIGJ!w2nj}A^W3?07RBovta+6+IsBk<BwU?i*1AKf{5aSW6 zeT5zY|6au(6BZ*VYokhApx<~qZhJC}(a-RZy}51_D?|j~gd4!4sy{wrwf3}@zY=?m z6PG_+GL-(JbRoZo{s2_%k?JL+24ODQHM}I+O1+4_Koi>)u}fysEJZjBoDa6{ao>X5 zb=?%&YHrZ-Qe7c>qr4MA4bc*V$rlj8G0a#%LW{5(0`$mn8i7lR<x#>#8OYHZMeIs& z&10<e=`4Rj>2wAa&q$jhsYhCiO3o-a!kF`q&)7RswZUyhE9WMiz&nz)!Bh&C&u*H+ zwLw&hoX>Q&z@ga&u7DiK@{5zhISCoaBi-e_&w8BzKM<(L;0a{N6W`_2oM1LUT#C}= zrOdXUfIRTNA$mpf3U=q_%!)fg4~Mo7Pz}Vj&=j%5d(l0izlVVY()5k*u_pSHMzo7` zzjVC#vx{!fT_GWaR_{;^rVRYD%WOfg;?IF13%nl8+SA4in+~IcIS#z<TlV#YIN%RD zQGWm%QvEFh)eXf5(;ccY7*K*aiHeVYAIKNf9S8^{v!hlH;tOQjGoEoG4F~YZsW2nL z3A&L(L;;X>1NY@P%J`XPfb}wJG}s9`Xgvu!C_ITesBloT0SYe&az}18B$$tWvCt>m z1aAYJGl~H%nx1l=LTzacgyMN1Yu!tFS|Qzg#QW>R$HOs^Ifyzad<@?9A000yd(VU2 z*x%wGbhpL(8L;hfx__`SMP2e^X17O}s#vO+teLJDvst1!L-V7E*Wz}>oC`SGII0{q z_f-#64_&!|$wr`>0&fCG0-K<2p|XB!LJ1*nK;e-&uVqCKqz}xClS7f6ia!;E7Niyk z;T{(!7f(q<cv~I>H(}$L6doBTL})sLRH9q>Sw-+atq+6@HWw8BK{5nfW^h)-0B#v> zML%X<<bhYKqjV6vX}*$Pp7&#ha>Bp+`9;}BvaKDN>LM*;Ke6)1N?4RJ&Ozz`jU&8s z3`=$i1|ks`dITPpf+4;agHVM<7oz%hdkA5Zm4-f*`x6U$3+l061HmV7Lu#OPFq1xP z-@OnsIO8$W83D$C{frItj2#!g-jMSPohE~JBu<88{BG(-MxPHvg+Tmko-U-k{mYnb zAMTHG6#^%ei(9^69FN<TDuZc4$B73Fz71!~M+W?XA)oJ!XIby=t9D%O$Mvjj>(8a{ z%Ojf{;gj=A?!$Vlz#l)o078rh+-XRqomWSaU(vXU+(wm@_wnkm>jgf@b)<$iBY86= za{ciX%p?uW4{|3itd{dum`ztr+}L6k8YB0XFs>s_BhE~jlUq9<X12La&xGI}k{@uP z-FhBWa?u{&J;v)M0ddU(xq+9s*t*66YQWKCJ2&6W+rN7)e3y|R{B=&l*8Q7L$<QE= z2eSIu^nG@LUjB5q$aRRX5M2%1?GW-J*`N$V9S@QXkPSxlLEX^Z>QcbZzZd#`pF`u( zBYOg5dR#Ujzicy4`Jm<FRzgVwzIU_-LXL8SPCRbnp969<5wh=)ZuB#HWm(g+?b%)= zZW8@LyY9ShlJWhEKU6ouc|mMmVV+Y?I{14+IA(>&k$56G{|(ETJb>Egk;$VsKo$Or zBFE(kVw{;TA#+E26kM0HdB7PHT$gugK;>S5UqJ6rVs!_86ylQiX@G&_r~9YbfPR?o zWlFym6Z}tQ2GJ1+P6%Qa^+bsor!!a^K)iFdBk=%^6$YO#e?sGk>W&;GYLox#0S_x+ zO8_wQOF&p9|3~%oK#?98ZGRmRKFh!i<`uSa!cHlmlc(^&k{;eAg7*-`tWgFqIsq`_ zeg;y`R+m7323H9c%d@=UF6Q#d(QpPB=XK9MmOxF4-1n#+!C-6>K%PL{v5k_r9Z-*w z9gpZT24<28jndnLnGsDIvSSK}##0#yR}tkKN{J>g7*<e^3MY#LW0FxBb`*$rj)JDe z3#yTb9GI&SBOlf>5+@jDNhS9c;@HErCZmiK4$y?eQxpg{jXJmbCXVUdv8yExk0T!l zwuZWnC~{;<5gXZK?~%+OLNW?P|2ecrDUHn+FT@e@w5KkOUynaOU{|1NPFPRCY6U4x z+858Vj7_Txn21Lnv0N2DI}~OF$Pg`$kJ<wmQzjDrj=<TIG3IQDp^at9GrFTV3C84G z%p4z(u8N?ImKxS>1Z_|k$C21`s!^K6Y8+G*2waIKkER*6Ze(pxJ`*&L^2{<n;NJa1 zK5%YDS0j8Tr8=ax57`LWpm-*68C^9@+K8!0eotsW1U8Jy6uOFoh;O_j;82-LxIgT@ zLv$lo16(DA#J!Jv-l5*v-uZI-SCApZhm7>!iQR>IlDH}2iQpvw65#GItn!=_n#9sd zC+5(o>XY0rjSt<e!WdOF$~OP8n2sm9t=V5H8+AEnIJY+mYLrsTp_#jovzfV=yO@<H zimaJmS{v0iiM9h;)ila0=dTv8=C79VW|pWV8z34(5)0S**NDex*7DcDFYPYHjne8g zTa{X+Tea3ptmarPWX)u$sF=H#N~~s^%%@GK&DR@_8!p%2FWoM|tcsf?*DEh)wdbD9 z=`7wGKG%RRbDzqd(x2L##keXud#z2VRwSGu+7mVhm1`F-teb*2`<LpRF0`HT+jDq& zmg*r^g)a1-AT?3Br}0qXYlc_ApV&S8c}7|5q%D~|!g(e?D&nm4G(eVN0lROzT2HVZ z$yNr_wU?F<9@(8e&UIQBB260jc`*ys3)ORg)BHz<H`Pvl{Nk8pvXdb9IPXSY`J4jT zrRv%0#R#Y79rSFZCKx)XY6%3Gkf4~r&%NQk^*$uM;)jw30e8VQa;xO*WURu<zKFT{ zIo4ASv-Sp|4}N!nHHyo4?L=oukAjo|<T>qAqg{vHzq?FkISo4QBAf)ciP}lp3EC;} z;vt1>1#E@Qg)W7}a}aZYx#2mox#BtbQ-{;khr)-(I_1^C6v}DIZHaA3J~2KCvVxq# zggJ^+w$p}(c1O`SNlvP)geggB1tz2y7Is2m!bDSHGQt7TJ~8$%0{K6|4J4Oh5c;v8 z@nZ4f(5DsF@>@z<f1`H}T^Y3f+xInW5jK#Y`@C#fyTF_KFYO?3V&E=%pjN_=?S9J) z;o3o81#%gn%M5DSV#y3+woqLKGuhc}prh}W-wJa>$@YHQ`eX(`><O@=AMbi{gCY#} z-=Mm(<M{#hsBV>9nel>#cWPUJVuq1z39}<NU(_`tB@>qu`^WGONsOxRy6%eZTI*zA z<v2<_%Q`ANb1zhQ72wHpPUz07Pv0MwA3xs+KT$txy!m~E_)5A<yUV%@JMuaTJMwXq zwB@u_;3=vpb11lyR1#y7ntx#IBF3ygV7<}U_KI)OI#6x;r*|)3z&enx`=<ACUqm{v zx1&{dl3w6F$+}>w`^s-OUE#VQst3<+I$wA_`MiOuhY|KdZu(!4KFGacZF*w%$!-!{ ziMImT_KR=EUGcYKbb29f1U@Le;ku&{cKcu8K1jV`x}&yxulJsBkUn_7fP6yv`tbK< zZ;D^YzhHf$yL*Oj>^^Y6@O+}W2ex-?ZV_Gpp1;2RW%qP$r(eiCp}&jp=VkYJUK+eL zzm>if_zHarzl(e-bC$YieU`fyzh}DVr*~3ru3hQAgub=E|9%U6OMc6LYkZ6I6@ORc zEc?u6JmkNvzqP+1eS&;Ce8M<oyfwdNx+`y1W%ql3B((|gRP$D|meQ3>p2@(KwlfQO z$@iaGODjH`#=pgjE_9|>bX8EC@kW)svnY9q%rAiaT;G|uy_KQ;>naK=tF~Z$j5St4 zu+TfhR&RMLS`zh=^wNls+nyy_bZI1i<e^dL`8QZ{ZBcs$p{_wA^C@Rh>|M~P!ned( zl4E*%R-B%Pw}^9QqVE6JdZgGr^Lx=iJ>FeYQn`D9vrNZ~;%r%+>=C=N{;l#zp?h9o z@w$=r3_(5pEkC&`dxmi#r=jX>TAl3?o#ro3sgsJ&qI*ekL-v`CI^AQ#lE$ajxWf0$ zTZu_S*IABw(_6}ttjAvuNe>MVfQO2QEZ4uzYOh?c60ZWU3a@`&Ww?vH^SsMlGtp+l zjdYFG4b_b{4K|I}4cCqM4fu`7YqD$8YjkVkmnxTuPZ`eY?^^FdT=}1+pM{^5S&LI< z$Bm?wX@sQo6T+kneTGH!V~Rx#Lyl;Df@x8!Y8WskR;r*8hVs<ugEgv4$%D1d6+GuX zduhEm)P5XlM3VZW6~vNyS*j*S`lS^xk_M;L0ZvAns-)*r?lsvJ=;xDls`yJOM)lqm zeAqqqEBvgXhjrY^)8O@lmgLw&Rl5DFkgV}qqgDF(E2gZ$QAS{vIM~yqHG;|mRmRAx ze^}GB`m2lvCnk$(ek+f0TT*5WjishYn=q+zl<Ou<4417qRirQ0s4EW}*Qr^umYX=N zJX+Fb3|s5oul{l-))=wYk66)nX42?OuG3Hj(HKgu*I2dslT;7~JC|e_k5_;`O5`QZ z$LM<yD{x@<YJL~U9mh=}ON4zmYM9^&w@R%enH?W7I$xLZa!64iPfMtApirmu6l-!& zdZ6ZpwMv>2cWg+vN;^%!bzpzjp(&spOEoI93UD4(IuLo~tkb9>^f*wzi`N7^jWLam z-%;1eW=lVfKOUgE!E+Gk$ij~~jF#VV-=%wkxM^j}!jHm?=)H>G1$V@DP;3it#iPeH z9}XViz8c?Ebp&>h(UAZSG)CU-L0<W_MR^lb5@HTCMu+dL4v=4+?@BxTagtQxrw_PB zj_<M#U|wnMrL;w&$IC}k?lupo+~8i-yFxsPt4X%U&gF35kSB$G@>Wl%UuC*dJn6Op z-m%wYd}9c)$an5{2_FQnYTltAM10hIM0}Kdq&BhmDLIHf@p}U~h0c3)3Lduw3j!ZX z;pnpB!7mvHh_aGUd)M)QKZGPurp3hfaun)bQWoStG$fFwC9(z_6ijYA4t{48DAuZ- z5fM^I|1NNZlEjQBcS`zGnju^uC7#?S8NML&PeE2Z$z5D(EZ(s+28HM`NwCmzl=Ly- zLcxbZ3X7mI4qO6hj(|d8Ea_hXH--8b;PE6Ag%~bbzmQNt!;CyjhRTei@*h)4jPlHR zqE6y=qE6CwQo@+oVd5P`XV{h$`h1}yl9r%QN!FSvJ6xfjBW7pTmW0aOp(9vl)Rq9T z8Ff^V9dme7AwvVMS17OO4=bGyIR$?s_wsix<S`|^6ltH$Zs59<Zk{nYWqROfOR~=Y zG=<0IhnW3xB-j*xo<Tp=Zj0y=c9~B(rFReQ64}nZp6P$EdL#8p(H0+`k#F$T78#zK zb;PO6TWs*#61@KBGFN<J+!kP63~>tV9@qsinQwK3@AO-mcYAQ>)ZqZc%?a1qXG2Rc zp`LC!;&z5?0hVVxPSxG{SWJneb4M2h5=s)B3-IS;Plq3v-jH}C`0{e*i8#|_3YO=} zPgxv)(-bk8;daJN{ev;3(JJ|<{3!e=&6J-ilP%X+gjfVD7N5AcrStNu%tDxfS_yH@ zJTYr;=JFQt%3zn~SQp676`zv+z#-1@GD~_XcnNNb=@eJbemdfNWq0xG6jsl~IfCNK zROh~)89ODsLGp<5<?75lpW3AZ98N(wv(d^B$`MXc-3zbg%OB1k%sWM^7tbHk-l)Br zw5z9QtCx?Vw@>b0C4MJAVm}6X(ultZb&qPQaOTtXG1P<$Kf3K1dzHSFc}H|fbqi<` zY(QI(M+{~RlI$tmqN&2DgHus9hc`pHgf>S|4J7U1?q%(1?NQn_x;D3nb^tV~s*tZy zujf<Fo6nk0o6o5plHPFNvfi}bD7_k)B`4;umzGbSPb?mt-a6mB-ag+z_FQj6zhXO* zGUJ+i)>h{C(Cn&PG`2~t=bJ+up-yq*QRm1CY{Z<!x?{fxK?Lmu!GmGvT*4p<&kI`* z3OeFGBxK^Y52Wvm?bW@*KWO=+zhXb_iC-nXMZJ}O$byP@P;S_l-zREMRYBXPtF!<= zEMB7=SYV3RqzpBXrQGsrc<=RL8l*>K42zJk7|MTQX)7X-9de=HeU$J5V`!tj?TMvK z`I<b5Abn3;!JT^Brkg3~d;MD$1JtF93W<&j^9rZhpGl`W2=)A1Z~dJQwZ-s@w#DWt zgCoi|<db}(^WKVSgN1Lt%u}Ag6LkZ1I@n|Pkzii21wzzThpVDclc6HfIS9djQ&WVs z8GRT25=!;=n*h5r6jX95&vg(>0Fv$X27ZGxw6YPKpeK99c9o?P$daS(J7W88c8m?1 z=E53tO8~$&#wROmnJ9J+;k*M+^|La7WlO}i3S2R!k5ibV;-d=W)ums(KdJ`4LuSj^ z{E}@hRL~ZGh7^ouLO39u*K%##>GQkAsE1R6u_99wtVQbAMmB)uK(>H#G}KO6JdWJI z9-h5m)ImO#x$TwC-sN5=QzuhvFZT$)P=3<q7{#rs)A+6+Oa&b^nhJx-e&B{G7!H?_ zoz7*ZClmPd-RSu;VX<9h8gG-S-Dy%x_B{UVY=ffEz+T}WQ?K5Di|ICPm6fHGqoSd3 z#tnTt4YROGx&&&P7!jIW8RCA-D9uF9Rm>#K)A<y4@#f9BN;Xc~6=2s6-Xt|HO?!bv zZcJ9wd%?JcPhU}wc<fZ`AVmuuy>*U`bXArk_ilupc$<!-_eU?>zL3LMG_%{#jlUeP z13LM(euTz}W9OX-x~&%rwoSDmTDr{(JxACtg?R+Xhkotqe08-E6Yj(nvBmj&a*Y^? zcDq!O*YNvyGDXI-=AWY^!GKQrn90fe{7}&X{O5cz?F&O20?8)6K`{RnLc^xuxlh3X zitd>qI^pO*!q0jb?aPR*lpca^$2O+!1(?ueG@YJ@f}oOqQ+li+lwc#l85H-H@12uA z(V|062Og|H1Wdpz=CBGFvOtZBEYR*gy|B7G-Lk}@%%D3k$9qTjUTu6PY7C&6Zob$D z4Xv^Doo>^2OKOm1YC(u7OhU<s-W<!-s)88WKGEwj$(T{49$3jX&G{6Aw4DoTXW5D; z=$mr6NMYiyMqppg{QxaEaRShbK_hS#mu$D4F{ZomNbu16x<OmVBfG+H;?9PNzY}Ie zC|vghvXeBLdn?Gt2q6w#d=rNVerJRZUE#>scLp8cF|5qg3?JtL8_KQl+Tdb{Aph77 zxboOcseRrEs%jt58q+Lsl+7v0Ow!hG=u#Os_p&|QV!xxo+jYMCf!BaP`K1#SfMX>i zitqEJLehU{Mg|+<Ih2e~<^k(OeVn>^9;5nwn&K>Uwb6G^r1|6t0fC-Hh@&q%v47Ok zYS-ow=0u#(f}PTU_{08%rTWE+bo`sYNYh8g&rJ}l2tIch$3<J7fI<$){tr_zdv!@D z!kB`uj<~wuT&5_9jlB3BpyeXkE4H~<^6Z8o=+!MVOYZkE+S5A)=@l6y0{&t=^#Ffb z@Iwx}7`I7<!;5JIm{G5gou5&UuO|P!9JAb(<)f|ChF*Dycu+uAKm;}xI9F6J+#uZ5 z<s?iIJ6wBxp8PU)*<A$O{0EqrkGEQ;&&?fCcV~;#iGg{j3qk;L0(cDOl?{_Sk;<ZO z{)81rG_VZdnjN4jiD`N?w+fsA@)Q7Pn_*Ft1GMURBV#wDdu84f5E6R7?%|LC<~M}u zFP(VPo16|&lT<t7iqni$OHQ%P#R{aHNi2qU1p<Ij$U_PVSf8)E<S>O6{(uohSGNO^ z{?S|6&uQfj>u1-Kr6O}gA5%jfH7L?K`)}z73w?hlZ||&Yv}__C!Lrr07$CH4DST)D z!r0I0{6s-yQraeMmW%B7LySgt6LaW&h`o$)PDAA&-C@AqX|8C_^ll%QwTF2gFha+C zqPKPWm52!q#_{*khC?SPsFQWa;nJIMolf}H5!8Fp@mk-}X2g;(K5knMhd}pS4~#Tm zuFj`Xi<cFna}%lv+oTr}?dpJ-+pw*<XCRh2bse>2fZ9$ZjxTZA<!c7{2>2jsoQAmv z+3zr#6-2a4ekkdZE&N_8MGj?|)6L@^eb8+K4DA<0o|vZZ9={{ZnvX)Q<e87e0~r4U zb_#mZqo1-pXFp^l9zm2D4OkGc1Jfgl<KO-lxv#WsfBhO*c2;`s5Wf7&at8i|CWay< zjiz<zyIrvFP_<WJ1%B;VJk8(Vx~bnZ#LOi32n_o)vw7%72r$M0@2Ti)A+p36aORHC zk^r_NNXcPst(Jax1X5}m@{M17eaC1Bl;%=_9eudqf*i(_N2T0x09ZVMelSxjn2&*} z@!`u60aL#;sx&C$4#Rfe3FdOd0;m#0uBN$*US?Rc_@rcmqFXrQxKu{p+!-iM^2g&y z%1jN#B{|K3UQzkvN1*zw&p3RpcQ$BS?8D{EYys~hoPl|Wn+IU!wuyPvV}e{hjF4XG z&b$?<BLw&s#6c*L%)ZP+_R*EC4OqMfdROfb9hr1cE_T&LCBql-IaE1o$n6M1w@@E} zu#E9uGiaxz0zDED@3lDs6wD))JTR7-Ux^r&OS|<zij=^0ZCS>M@xAP5D6bKk9rJ>8 zDI@ed?xrR6F*-6$fqzCj@*n;M+nTUBaK<HksL%cORuEvlf}Bib4;3`=<n^!q7jQr# zGeSwh$`A6J5);NSG5%F$-#q{YVd6}IQL3!QLU+WNv<@~W$kdx9YFa5A)7Wf=z%z*m zC<w-8C>a!*f7_W4BrIM-0J8+>gnx;i7REEhx1{4lvLkJFeHP=`GS#wW##jZ~@LecA zxOG>*w``hV5Ng>=*~l~^UA!a8OS!BMP?dq+0JfgN#(q9oN?GG1?$j5kH4+xKw}Zt9 zfy$zpxswAKouHkGrBBMnJQFLaQgic<kj6wC2a`Sn$k+ak{<&^zceDLQ0~6|M6p_1K z9;o}KsE@8}GmfiR`X@|>KXu4I#S|)HW>V684;juCF&Rzpu?Ca9i6_`>y|W8*<XM`& z!GQ@{Eq7zXB7FF1351v_&P@0mYH$A21cYXuwd7)a_;CroH&In(RZ`(LV@RI1=i$z` z2%a`FE@Z*ly^Gm;6XRxhcE(>sdHRNijs^80h)0n7TvsFjCz(i@=z6#d8^b?CWrM5D z2k^9~+f&J@S>}HLl)F@c4#!5bURBLER*H%W$9T8~^Gx-b{lmh4oX=}&gw)?Bdb8r+ zpRqRv<JK4ovov3K0;F}sEv99Xran5Mg5fe|9yI3pZ|&^qbZ^iwOs`t{Z~*r93hgZ| za=wHlP~JgJL85sj!VC*&O@!0QcMkEDxSCQn(qdR+(;RlSm%&Zr@{f6!k(sJO%*uxY z(D9UI7WM_s<i`B#IhuY3>lp8ZDdQ|VAG|8ynlYj#w5tX>btbZ@v1xe8X<hhFRdyU} z-}+=Cvw16NGqoy;#%w(uQOLU2gR{}fnWMg4)Kn5hdzKQZkA_}lOq`^Z0BdFAhx14G z<;0axR-S0<OvVBOJ=2th3VAh#S{;BFa+CKlMrCXhwww+T?bIK=OAlDjBenMgwavHb zdu3Pl<c}$Amyq`rF-H-gan@f;BBYRUNZ5BoaYfc6^F+W1(NNn=pgq9BxNqAj<i8og z)S@Fp!^4$v1btv9#IIH)U&?LfIY<GHQ@PR*U={KdWq%Q}DtI;0XIUzQ1ldn1C#9vO zYn?(7P<KmtW33oA#J{1R*R$lc_?re+VpC`2G_V;+NtFn~{vkmxY{iCHS{YDS;iKX< z64G&!TN<kxlZsi!teS+wY976<gZu-0m^6m3u?st3Br`HrLc*4+0MwjG|2&^;)vIJ= z+kR(n+~Vb3f6R<jZE6)Nf%KDEYZI@}JE+dzW+Fb<Cu|f-QOzVqe(g<>);7~wiG6Qq z*rXCza`4es)o7U%FFaN()VKyW_n#={{b}@YO%eWm@B+Kz3Q&wouwvk%pr|z<;x<OY z)SFwU2wwBsdWz;FTeG~}TQ6)z?jLZjCCyiXz=R9Ln@OJv(c}5YlJ(p`%6xq9Bg=37 z^_}elz#G5LW^Ai>=y{2@`sR8v`?B6N;Z=Y;*q6nM+txWE^{S+KcNuu$#1iD{QUjSb zB68HVU7cgfnz~j&kYnTSECJ8fWj?2{$f(<yty!LO<ZM>w0g^QuVBOv{FFeMJAO1Wz zykz{9A_^pH`gW<n!QQJG_R*Zdj6yT?fjKe0ZUjn8Y>VkP4yh@+^9>8^u%+($I*$cR zSh#3XWP5wuVEgLuU#&lbAieMj1IZp*pza~L3dQv~Fhf`9uIx&ume%Y&mGJ&vvVVmZ z<2<rCxupTEHfxQ96gf1WaM!6<JcvQRt??BctmDTZ)`Ce!lJ}|PjHS(UUYp}j&Bch~ zBOW*(i}j{QRG!&hQ}Lr0$y#0Xs|g3MpZ=vMJ*)nvZ`uKG)0BRBLN1bn3<+U$becTT z`#jusiU8L4t3&ijn;<gIk`5tI1jU99I*<g#oDMD!YVNWgL=STg9jp&J-K3isv50)m zn;lU(j%fl7(qeBfxeLQS$O)$4oSewgo&bj^60)5Z5nhC+f7eP2bi5llv$7_r9<|A~ zsSj;Rd8Ka^T7z9f55|Pba@R75=KrPf%h&?9<5~&$nqjfO6@E+huBR1kOXp5-1t|M< z2e(KavUSoG^*}|)jjmu(umxqVDAmagSDOt#yBiDGCPK}rT;ottU;={WY$u9h>mRy0 z>y9+}mI@RO-DWij1f9k&S?fgsukvMe({W$K>1ux*3s7tFVFx#z4*2WhKlDE`mux^{ z#PH;>s`ZkrpL*8Lg&%{A+3BgyY>nZ!$@n+NkDPRTr_zUP1wL}_7q^gZ@8H={w2*?= zzWCm4UTQ-H`XW|QYs;eqM5KvrUGHU4Q5efOj?;=TM<ey^RDd>h<)b^sp$pn@4r96{ zQ5v9{<aTiBu|vVhixu&=19vLUp8WQjMbWsf9D3_aGGv<iKEb%IYT!T)?&7bsmOY#z zf0{Z568<i;L!{D-Z09Kn&C?Qpsw5NY-C3@WcEWutboQ9XFT+#tZhxbm_CWB84Xuq3 z;A=$t1OFE=mVP&8#5Ky0dyEnmxVHnITa4vD!=^=}xy+_NP?BK=({a==s>mi7CWS#t zQL7S0zD@$?yTm8I+&m9@=eP%0&<<o`AJK+1b9i0p=6#o3LoJdu(iZ2z#%nG{tj@}Y z9)OojTW}nt++Hw3(q09^UPH^IpKLePY3y+}3AP94RG+MOo&BaeCb^LzXtfGg&%xRo z*NzJ%e{pn}&=n+QTsoA}CN{}E`D<4yMn@QlZ{Xi3yLzCl)2#3D$OP!{1b7#3RLC2T zjR34}2jfrYDw{<qL)#C{*s;*L6O0_ttkJU34O8`oD(=wCHNB@a$0NWyNo}^vP%lR7 zYI2(^>5Zt_0A^<8xr6=z?nmysUvbZ-uL@sHv^GC))B326b_VVZE(z8dp)}kVkh0fE zL#ieQ;l*pRLCut8F_|vZ0yxIno!D7X{1yVR&_`1oY3kO_+?i^Yz4@Y`rL+cta+p63 zwdxjX7}Ok*ME?S8+}&~qc|g+AEL&2j#x5JaG@uobHmD8^E}7*SP6lZ<<&xahDmCig zfvrQW!CWuu*Bt(BX?&fiT};n}*)xh-7AzbmiG5SaC}ZFl^GadaSGU|#ul<M~w5vk3 z@ct}5K%c2I#vF&x)`hjHY=o#wRe<Wowht`MPz5!)Aeg4R@=JkICm)WPrX`WP_m_DC zeZg#)H7ml&B-WJGtY1>4J;dkPDg9o(r%p)wDD(4BEXS?V8n<?%LIY`83OJ;GKj>Pp zU>r<OGY8_j%JP~S<72@5ebc&;0!~AZE}`L2Vubvi##YT_wW$x@9leWY`lyB8QnbfJ z0*Lj<&Amwe)Y*Z4P8N_ge<hEG%F*y=VV7BA!CJPNnO0+BZ}weUmJ!ITzzlnyvYKl9 zs!>1wa!#f&ngOv(q+78N@fF`n#teVQ8t1!xebLu0)YA7ptY}&J^_q$Nz`?zpp5xK; z4X^6`CsYC9#!c<U2k5(EdoZ)!|B=pWGt&y)lLp|cG1LGAo$OQZ$?>eK>5vInJgP9) zTD;>-nL4a^pROkM@1i@w9s)koWG(-$JrZ-h=<7(qi_LvZLhpv(!>O;ruUyqF7$woB zEQ!zq#&^Ay($aNTnu_=5R~xsP@^$`dt{Qxyw%v8Vn5)ztLC{>~(Q_Oh8DSK4mn`#Q z=_+j$t*UMtQ@N~qe50I?^gBEp!nkgzTf;JlEFSvHGygX|`MfGs;nJ!9Zx725N=)$_ z`Qw6Xv68z)RB4xazshQ1Q9(MHN`E(p8&xsp)tEy5l1bvbCsU*uuTCjLIjntoS!YtC z+_09#f?`Wv2G%u>taLg<#ge6KQE}VW%|xI-i_%rRE|bzCZ){WqILUp-m06dBOY16d zV)bJ(f5F6MCGE4ayZMA6;wl%a{~{h@F%CG({9kRGg$3nz%Hl$Qf-U<P`J?iusavHb z!9(Rinmku*O&JTw>~P9hxC3U5)LjMwT;XyCpejb$MtO}Ra5oD#5*;lXVIEYL?7K8i zRWPG1EQbk_Ey@#QBGj&Q_53*q1&@utt_md8x~>B7HsWv)P=QAjhh1vfXTM#dhRG=$ zRN5uYc@~#K&CiMwmw*H1>WiB2(t(hQUD^N1O=`gDodDN7BzjPCC*=xmD;gwMw>3mG z_whu*u=r6CmB=8LR*~io{B}u#sw>5<LhpwF0{I(BiQf}vK4$dm?`EM$37Yg`;_KO% zWGgw#VJ4TaYh!Uk)t{Lb3gyP)qN<K1&>>_3L|=u~+ND%&h*h+sUT7y4%{&&-(&~aK z9C7@5^+pqQt=9In)Wh9Q&7FJ`=iEDL8>_Tk*4zo^*ulT!z$HLRY76AI?v#=Qon89j z)!YQ5h`Lv>OkB-fYZ~zBEufR<{B`E}1sf2QrKRP+%5Ro{)H|GJy2B(2&G>ps)MMKH zO<awITGz0qIC6G_i`%3G?b3Q;J6IZf1g5qmrl}+Nugw2eqXNaJU?(<1H>m5N4p3GO zYQHy-+oq0Y@@`~%L_$Q{#<>?5J;IW=L?mrXY~uMsfbSjg`$P7yA(pLaot4_EOw;!y zZ&v32rMo2d@4!_#Jv`!WTGFyu)#h{oH-;eTY8zWKr=zznK!BVEFu-D9FrWRhX`Cka zRopp>Os`v8E8{&qtv8;OD2IG2X!xxo!ntrSUGA)sv{;<7AOq%MrL_=wuP@TYDQCx1 z%ovNpKIzbc1oVNrrB1t-=$_E^x-SaL%!3x=YXIzTzhze}r?6B;+W@Srp*_3`NlEp% zq?jZGkx5*H5U^`kw^W4L+vSzi^MYbSc7y)cwGfRV_mO{BQo<08O^Z|&0!UeZRaf%5 zDC9?Ot)}1)M|Up;YX*hKK2b+NV=S-RIJVxT7`cFV)sPdDBiqR->k&zEH}?PD-KV@y zRMBG2{T4<gy*Vw+F16M*Pj4?WXQlQ%jQskDC^>Py#`WuebjaVU%E5kr;zG>kfPqI< zvL%1+)e|*R+=v`|U9_?|Cn8#x&VUao)n<1cBiiFOim0~0)<9+<V_T9(;Oc;>b<%<W zpk+GzyJE>y8+vy)T?(Ot4$cWOJiL&-gjVxtvbLHZqK>y^tnyk~O<GBMKAuaG^wFxf zpR6`~ul85}{ntKMm{~&5vSVe5@K)UTR>tCYe4YCyU4?d#7K4k+SthDiv#t&c0oi%J zQlBiJuF4bw(yST>1Tm2-8ON09$zk%~K%*|N^Cr8F?IwLr%hYC|78@O!7XB3a5uHpp z{)#dNMWpX|nJb~r2-9?DVD=G*3Wj0!JJjltoA1mvw+lL>!y9x}VFcLn?-g_b2)14s z^zu$QYZ;ZrY}92c#v&6#!<dnqtGK2Ku}+PGH5P@bP?ULMdG!PSlw3%ZRZyZH_X>hO zK7mzG;IC(L6gXcWUM!&RT4taxU`mLoA5BVE2?5sycpx0R3BL?@AQM3*$osLJB(k9W zn8Q0)JXdg$W5X(^Nx{xk)r?{aO)qBp$pL~N)-9{>1?c*PURxQ1mU0QLgfQU7vy3`< z$c3Ncc7k;y81utR5${7_L-Zj`I=DLwF|CsBtQ;*2c`<E|vq7eF_z7vw1v1Z{hHL|k ztN|fRel1vdEnldwFcgtl4pmT|^8!S-8`l}?Mq)~4@+vbcJ}WaTH7nN2&}AfgJbE;G z0)D#5sC?DFDK)ANV1x$wb+c>g+DqVr4LoH4@yevt-yAW7;ls9U+s$dNua{4-p$uB; z-GQ=YM1CVFxjTFD%T@B~EG%d}NHx0?1CJDf|D!(weOvv&zVSKbPQ@Rsf$q*_-w*XN zVuz;q=c>zYO5le2PDCRLv%0hrra;3^C93;J>B_QwDLYE{M8<VL!HBMe`h{eZ6k)D~ zxDVCnC!t*ah4Br9u|G(}T;^GmKLop19SHZF(g&l3D=JO>)a(TB-;7MS<gg&@3T!{) z1MIeViSR#J71RGWtK$FnxRWew|5w}w26krl|BcD<WR_J7&Tw31_qz)74&5BqoRo`` zlM+%e(0X0xT9S_L=vIUzVgwQg5d^78Xj-0fTlW|5v7=GuS(<fxS37u>o;YrtQc_%8 zoE=d;k-78v{p6WvqehNP`J?kfjQ65d(_5{EmCF~yO?8%cWVs%*iMq74dQSDyIZgLe zh*{$mYp3h^V%v5k-~O_3BVJpS`tYKA=0m1a^I8ShW6M?*YsOah+hP&+BFLuYTjPK# zLiuFXdexgA;C$wNbl;rmN~2h5S(@u@C9}FMZ0fa9+v**+vyv@Cse9`zT6!47bO&9~ zn%XZA=h@{#xxeYTT8|~$<%cC#4Q+nGgST?1;D>U-<yW0!th=!}zK!lo6>C2`o>*_% zI3fQg4!yp1_l7@KK$bmnFR#LW;kf#sPpsQi2f<xCpKgcCvXVFJHhB3cXx?<6Yt(RG zhwJ3rnp>Y?u==Ue+i*Cw5+->Qx7lxaL_V=vlTpA-Xy@SDe$zwddoL|!bKj;%ZmZO} zcQ8SH#4a)x0(=;DvGx~ixsz6$W1#Wz7~mmdtyngf_~uNkI`d)jbUt<-V}jWj;y*Oy zH*ZFt?vi!FoePBPPqFs*2;U`aiPFx>x?=+(19Ki&of>Wvwu+$M_m6ANrpSx~bBI~n zS9PeySES|+e9auWG~hpV>5^SmD%xoB4W3+K`7m$aaD=X!HUoc8*KS9v2{htL`sSnu zM~lo@xs+J&L_ahQ20r|i#VFb}A=i|}VENuJAT#~-Qo6Okz}K#{Y`{RJ?vaL27utx& za;G;w4M*jd<GAQDx5zPl@|JzuUs&#a>}Mym9HZ@<pG|LuDYLP@8ozsXJk(rU(YCon zrO|iQ6q#djYSmmXF1fOKvi|3SK<Ord4EEUTxnAeX-s!14>Fe|GEFq_Q`10oT>>^`v z_1dPZQ_bsk@a!Tcg>TCN<ZIvaF=cTzht8U=T5p8#0<$@Vuf(g9th=+#$E)@2@Hu7M z$H#k%0Yb~gyQ_8M`^l$P;eKj*8sf7*W^;hA0dAe{<UUU7^DR*76T&e5{M|II$s>(= zJmNJc`@4?~;T7T&EvEMJ&-0+2+dJ~z6)(Yc#eU2@p}p!B!U$t_tkH`vb-gv8O!6jo z&Rp07$R}{CbFm|{H-D8{2tFA)xG`78VPB;>?`(kK$BpKdOl64iSMgGR#db`BgJ&+^ zLGq;dmazjK2y2Pco=@sC^0^TkZjOWU*ZcBK#d}Nw=BuSoya;E~#9Z~o?JIT8!^RN7 z>f+btEDIC2<~|wjWW@^tjJU~%j}4I3UZZb@-P*39-nk10F;tbnB#ie-G!&22CWy%Q z(Gl*{EtBo-g^NnF%UuGy1J&m_Ok8-0)RZ+Uy*oV#J_`hFX^QDel;gH%sn=o$8V|&s z2G*D*SJV4x%NIU;Ar$-jj1)j4_vsxBq_{YMmt_0>;PK%kr_gKqe1Y`|A^I@ShJ&y} za1{Y)09FwpsJU0N=G!C)**>c#D^(_7#hCM6u_28^*brh4Mwpk3)OC6%dLk65Qu*`( zx3LYIF*_AZBMrsgF%B_2=SFlLWZvfwpGWxcod?muE0)4|JI<vGCm#|EB7i1kqu;wR zfMf2OQ9<63;F=o%4ks=%dTaY{{R3ANB<3*n(V?cU$tuZ|_F+1JgNv~L4K%zK&aIm^ zS_F6<)64RM?AYrJPZaN-(vy3}Aa-hNuZIi2ClB_@cJDbl#cKb;<<!vIT!R}f#>d^G zmGgbR{e4+wImLx$?c?oia`AKXtW<F4UiQ-_>>HNP>o#~?y`O)BI_UIQl>s{1Z})%^ zJzXDqG&WsG`X~EWC=I5k__SW;-WBXFOh{k@1ULPg2|L1mtm;k<lLWa-??3Nx`a3Xs z!r_lokz$1FzDN{HSBYLiJOQY%2G`zy28Rrc`v1blIORn}4Y$QQ8i=oUFVQ3?PO33b zQ+TZEt12`N55^Xdlfa6XAxE_d#-ADHGn_bSa@Qs7aNd+SLsbRD=$HJ>Qbp;{vbU9o zb>XbeGy%|*2*IA3>53s(ib-!|!OQozVC*mb)*q>CuOu;i)`Trp1|SZ`nmdsz{A5jt z|C1F~fQ^Yyh}U;b#7RZzx39CZjNJ0K^HhKx@9pJhpoZW&&{u_rM+w*CV5gx7KHQlo zz)+?oBa7+<L-u$i+N2;uAG9sTN&L?;G!<Z7#*oAqxRsl>ekz%?&9_ka`$zuR4mZ%( z_qOfS<nrj%sN$5P^y}NTD8NPxB1tk(qZOm;<FMuXStEs{-o{~;hRtVU^zJa&E+|Yt zW3Vfl!P2IpQ5ig7up5>*$LPTm6$H&1q<)rQ;(;79Iz<fkoJuh~>5JIq5AGEdRn@3w zE;A1qa<Dg&2g7COC+Mrz1Z60$z!7iCBpd9KlC3Y|xJy2a`bR}r)2yg&N(}$S3E1Si zBni@@i=0E(o{3~+Cg_i3Y-s#^=gdZxH4=r2E(}AO4v(Hxb+qsrtgk{c2=A`5n)$+G z>hpdwZa9<=*&31Fz>R|=A3%|Q-7pfRfL}HhMKR%Doj4X^Rf+Ng8Q~T(*ePkmFqJX! zya(Oi*wA(ka$q8MXUy~kYaP@dl-?hoP<_y=HD;r!Wn~0z$T3l!YEhR791JZ_Vsw03 zI$(CU1z@02Wux1eiWXJZXWn+W3Nii5oU$Lf-}@NY`KW1YRJChJk2l+DbJgB7+o0Z> zi9FFim)SSA^EMVnuY<$z0K<P2ZQ;s567tp+77d0wUX#|%TJ8<ac0Uhex@zkq8jjk> zm>fAfqp{y;sj%D&67uMq${GUOhnW;B=G61AZ5d3DmL0N7i<3D#I=;~fUrYnNoSoCH z<+!m{fZR!IpJ@KPBh^MNHWWS5uuk1yeFAOQ%L+yBZwpTtJPbvO2^(i12B}Zj95ARl z{X0B(8RuM^5m>~I!^9Xp>NTLV_j@9gmF&6pCM5v^&1RT5WHk<_5ue6BEynXP54hB5 zjB%j(W%LmKhQ@e-dq-k|{Ph-B-&U9p0aHa!bd)ZpZ#~<*d0!}*egnWw*fkg_w#)98 zp!<7TPqZLbBf_Oeer9Wsp{{G9WOO)jVx;FH-}PKxf0e|}Q5&|kfE_1&Bin8b#7T`D z+as4&IVzu?IP0ev0aXLBm)XVnsK1brSG2YD6GO(@a1jcv_D|#eS;?j@@e)_eP;A&8 zc$L^Qy~d~Adz`pFe}{>OA%Bzdmi>X<lEEHgk#yt=lloqxOuKfp*WQeEa&To~)zpMD zxKC4is~~F|95v&l@xnjD^ht75NAPbex#(tD<HUuI0LJ_Vf1}X2)nUeolGCM!b5u3t z4dc$q3j;{w#DG4;33BWU*qe3Nh^gRixOivq7pvHYdx@1He|l0TqL!2)R<uBdG$ip( zc2`-If7pA?y}eWAM%ejhtjWY&u~X$i=$>xDhpA+DC8%a@BcaaR=QA*+M$l(>;bYU` z1KQ^6hp0=MwrODcqK@loJrx;KR2JBVM}>u$wZeMudvROv)*uTV)6B#MtZy~}T^()A z#QxY9%>p{w2I)xo{MOMH5>eoeoqsKjjrg~X`35qi82r2b(?1Jq=0Ck0(rZr^?7_X- zx9q35h@=&4IQB&jN{R+&a6v5Hs5TEa)G98*U5hP6D=bZFf30-zu@W038TGiz{t3*e zLo&0*TZvU?UAJ_(5jPg5+fqLxu}V;57}kI4XxsoF=Yse-YuQ$zj1!rzz+)(mC9?A4 ztyrZtcNmQN7dWJL2b~LQGNFJthiTS#I;maMF_L(=ulvuT@((AzO75TRu%)gdf!A|c z&3<<gjbYL#HwkT;Qv8}%r=9PM$6d9o*E%DWjJs4gmiuvfyzX#2Sf~SaxtOQZY;{Ta z>`U^v7kd-6j#HH&OeKpWgN1@MM4#_yi{>QsHMHUHI}(DiM~<ml1yh(PDP6-dd-LsE z5}SuWX%bE6B?p3j#S9Y3jjb+0@)I;R6#l6*Ei@>hxaG(_cv5Hcjn1jjy*P~A0Z-=5 z1sY0~zeo5<B0wS;i0!dd-!6)KFqr<)fk@)x02@q@)77%n#P%xIH`o5!Uu}*ae{0c` z8;L9d2tY=PG^0^xYgxOEJ%JI}c@&&bD|gWH6NyHyF993yz3d178Hghsjo_jG6CmH6 z$`IoAsqhDZ62hP-5)%fKrvwO?-azzdp*X?I7bum1*umWM3<Ol;T4ofN^3lU(%_O6d z#s6{D*eXib>mQ(IG*W~vnK@c}IulKZso?SUoj(aPO<pKn!EP;`wcv3z4Oq!om?yY_ zcLi864e1eM?#=bSlCUy{ZCS23=ndA)E0astSTwncp(@4!Vqzkc1AG6C-9-apeWi1p z%UTR>4uy=5{*Qrr&J1P^GjaJs>JkJDv(|hcD6F1WF7OKzaT{w<+@0bWThZexh`)<I zC{+&^6HyRDB?6kSi?LyNl-a?c5?x<IkP%kjn=aUmiKy{L>Jpu1Cqw15jNbVqNA=Ep z$iNzycGFhn^)EVtf0$~Bzgh?1=tpjgI`Pb6iR%eqM_V;?0|la8T3ZF}<Gm1r4>ffI zpXCfGkDy_?d_k}CMxH%lFi+)xd<qKhd%`_6bD8Je+{^@IpuT_%o0kcI4Vlbicd9WP zTY7XD{K;~QFj>S9rz7i-ZYClJg?NfA34zoZ>d-+=C&}}HO(#dhB0bw%oNX5)ANF{b zXyYtw$PYfv%=+b8Bs~|gp<M((Vi$i%oXot1WynIji3R-w(L+#<VaG;Lj@c;8ugrut zT~ly7_*3<t1ar2nHja4)D-(gi*{+K*=G4oE*Y&l%Ie)n2h!hVkE~?_k(c4xd5_H$M z0<)IJs;;h*0C?dNvq8WT9RV6L0to@4DjkUeR=>T4`DaNJDFRYvg;rn~1I`>vzf>ke zgJ1^gI)RNBvqP~`S%}NnLgR$hy?$El!aILPC|<$-PqrXG9jO;iUjoP4|EGNG&)<lN zv{8cQg|!&$${xEOSu$NBDro+wr-=Q#?$@HRFm(PJy+?0;3ApR^<jHMXenyK2VVx+) zfRX>Xv2bf}D<SP)_cS!BevM{Ayau)_xZB)<vWz%+tmoh$73QlrHZ6DhD>xW7(~Y07 zJTon9f4WFe=!wsMI>L}0PhyL!EJnoHjOam}Sc}4rj<Egt13oo5f`auL9F+g?WUcDT zV{<){F5aB%xcdkj)Zcdw1&!V{B*#vjnVV;;$}VvIGYv8`3Oo$i$tT{Z7fH~wNB;$A z4ECJoQz(oNq-7vX7nj4?=3b30-O!|7ZFE$S&=Q0!Mx84p-iBt8_zi*R0{@M!Xxh<~ z9Q(lGRiq~kL@){ei>@dp+HL@*5lJ9|ae>C=3z`?k(a4>pJFzl7u>wYYFlcpdGv=Yh z55BVSf^PFVaU!sJDA|@98SB8U|E6)`s^3rYb;w>c$R36Me^B<;L3KRYA82rQhu{$0 z-8HzoySrT6f;$9)ySoK<cXxMpf;+ss``dkQtM*&F`|clIXJ%@;yYBJRJ^c}R`!k7G zP3-G#-j2Qd9mI=e^a<EdvxBZpgrV~fS+59*+d|hjvE+^J<s!6%x8+mpO<<dYU#6qz z;_(i0k{WDA4O9Nnkg4twxyP)-+QI?e%+KsGjxt{XlHeNPus|jS4yAmtHvfZNXZW}0 zHp?*N<HO!CG?;4U7CB-C`>d=bKXPI0EU@>spdtIi>PWB|Nn2~0)UU<(`i#g$^EG;- zG`c$8feUB0)AcpJUaw4@*5>vCgKih+7eim`F3&GYYbdFJG$+j(WYptV{>%MOCerD< zI2;_@L3egx0v2ZdkPxQH2<)LK3vKPZfp~VMsB2vw(t+kbx?-?WWmXDe5lk}#it#u& zjd4ag%SCa*-<54WqtN$yk=*AB%Bos>1CF|t=GYE25-CS6P{t&f=y}8Aga`O9;>2JR z-_ZL4C^ku?m`Tk{j=Cg<NrBW${jIvC4&QtLh5IgKZL@Y=h1IABh-Fo0t4W?W6y$Sk zi%_42iSja|`|Weq2EYH(X2||C;-jVA?j<vh5i^TaT)&Cg{4U8imi&5Q88b0D$6i_% zDHttkWkjK{)^$B)p?Pw#b!f$8oJb1y1V_*yO{0DoWV2Khu8yI!U2y2S@vw|R8tNIT z7Jj>o+J?FKEKrC2xpF?aA6lX;d32;&JP1jX9S2$&1&EtYbTP0{#+$o;to|fP-<#DT zpq!_o_~2krfsbQg^5XFX@Ubwf*{5T+5do>$NXOs7*Wygkf9&lgoJ^45M~ah`-$3JX zaZ-^kdQtI^?@N6QUpE<L!x8ttB1yy&4GUm*7YXv+CzzQ?K-K`Edz)pWXdQRiS&Tk` zmpxw`*NV}<nOzANn2D*-h(=zKI5>M%NFf*B9i-6-eT^C~CW=X(oJk}?6kALoiXoX9 zz_^1YO`_-y_<cMOz;Le5k0#d2);|!oA7!D>NbAlRS0=|ol0<|!xEqK0<`X8?Z9$qR z_!x&$8jf{z?Ha&|9f`;{8mtSq>)z1WJdiI#!~;ENAgbKUik(Vih#OTR2Sh9BLoK@Q z^u30cZmrP+-jkq~2}EH*De3_R{*r;3phr~59ME&k#6~c{W{_HjRFWtV3;0yWum|gq zRz^9~7AKz(L2Mtrs3$A~*fAUza9+_5OcYtOkLbigJo>t31BHy39vk@&9E?&{>5x$! zt+B0nj)V1zzh81`oY35ski~)Hrll*UK;{qf!p<4Yr~K^(?k%NEpyD@T(lll_@GHA1 z%3w>A)A@DecA!nO5`oB%im=#-f~J=V{991<&8*m4FRK5%|JJMk%Mdf_j$}L_PA^E4 zF^>RvRU(cIL3)ZJ+7sppuE<DI`e4bJhjcNA8WRmlS*x5!0D=ze=tlrb4}=0ENi!pq z7&z8pci46<qLSVw+Sh2Q)t@}O0!Zf)bnERuher`t>--o=QDOFKHBEVT9-vF|#j#No zD4|Ky7Sxc%Sj&NzGZirehN5+=wDE&zs<4uVw5<)>*J(Cf;}T7)^u7ORgtf6x)GVZH z6<RS?d&4?|8X1|ja_Ro=#IlkzL$Dp|oyy_H2@$FyZLVjw%bZ@hG>oi`#JJf2ReNsY z7l?)?6(N(~1Gu!&fFetL(5}pR855M5{kC2jiBvIM(mE_lh=I@-mKIeOxqdfO(kdZF zh+*F|OoWgS$$C8_xN_5LJ4vA2&e=wT9l39cb$b0CS|a4tV*pdhd03=oI71@i)PSD~ zO+G_LIN9Ps2VuBC5@p08_)0G)Hq8bR0<NR%s#W!Euft;Ei-({QS;qYDP4s!x3R#>= zL0ecOn4Y5TM8y3fP%`k5(xi6sKP*V;<4^MUhT&#=WP|B;&PVI2KF2v#=GZULy^`Cz zc*yMN9%W!6j)7MFr;0it8|TZCH3lZyJd^&xc5~t{?I(=}nW%8U^F6DPm>Y}Xs#KO$ z>!H+Ygbrd)a8qhvThU2N0w!;1bwNPGpNgb$chCU^zX1my5JKI6Ut)EF)}@+1z;$OW zkP72FS~pwEh7-N5W-yxLUv0Rj>R1nkM^4#v^YeL(f*t@u7?o^l#25fcnw)^i`=myl zW@V>bX{`yqyAx$XrAJ#bCy`LGJjmUoH1<l^V_a-Llrh#G2!Z;fRdDucHW@<%0D_DH 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 diff --git a/manual/luatex.tex b/manual/luatex.tex index 8141f1cf2..61c075243 100644 --- a/manual/luatex.tex +++ b/manual/luatex.tex @@ -1,11 +1,12 @@ % macros=mkvi +% \nopdfcompression + % \disabledirectives[vspacing.synchronizepage] % wsl /data/context/runcontext.sh --global --path=/mnt/c/data/develop/context/manuals/mkiv/external/luatex luatex.tex % % same runtime as regular context or linux - % author : Hans Hagen with Taco Hoekwater, Luigi Scarso & Hartmut Henkel % copyright : PRAGMA ADE & ConTeXt Development Team % license : Creative Commons Attribution ShareAlike 4.0 International @@ -29,17 +30,28 @@ % "context --nodates --nocompression luatex" can be used for comparison % runs, not that we do it +% todo: all (sub)section to start/stop + % \enabledirectives[hyphenator.flatten] % \setupsynctex[state=start,method=max] % adds 5 pct overhead +% compoundhyphenmode : looks okay +% endlocalcontrol : very experimental +% fixupboxesmode : very experimental +% mathflattenmode : looks okay +% mathrulethicknessmode : looks okay + % after adding primitives: context mult-prm.mkiv \environment luatex-style -% \environment luatex-book -\environment luatex-logos -% \switchtobodyfont[small] +\startmode[book] + \environment luatex-style-book +\stopmode + +\environment luatex-logos +\environment luatex-private \startmode[export] @@ -49,8 +61,9 @@ \stopmode \startdocument - [status=experimental, - version=1.08.0] + [manual=Lua\TeX, + status=experimental, + version=1.10] \startnotmode[*export] \component luatex-titlepage diff --git a/source/Build b/source/Build index a2fee663f..898cbb9d2 100755 --- a/source/Build +++ b/source/Build @@ -1,5 +1,5 @@ #!/bin/sh -# $Id: Build 46257 2018-01-09 18:53:05Z karl $ +# $Id: Build 48808 2018-10-02 01:55:09Z karl $ # Public domain. Originally written many years ago by Sebastian Rahtz. # The basic idea is to run configure && make, but with a multitude of # environment variables to allow overriding everything. @@ -43,6 +43,7 @@ export MAKE # make flags : ${TL_MAKE_FLAGS=} +: ${TL_MAKE_VERBOSE=VERBOSE=1} # allow override of make target. : ${TL_TARGET=world} @@ -127,7 +128,7 @@ cd $TL_WORKDIR || exit 1 $TL_CONFIGURE_ARGS \ "$@" \ && eval $TL_POSTCONFIGURE \ - && eval $TL_BUILD_ENV $TL_MAKE $TL_MAKE_FLAGS $TL_TARGET + && eval $TL_BUILD_ENV $TL_MAKE $TL_MAKE_FLAGS $TL_MAKE_VERBOSE $TL_TARGET # Too arcane to try to propagate the exit status through a pipeline. # Just use a temp file. diff --git a/source/ChangeLog b/source/ChangeLog index bc5d71dab..61f8131ee 100644 --- a/source/ChangeLog +++ b/source/ChangeLog @@ -1,3 +1,9 @@ +2018-10-02 Karl Berry <karl@tug.org> + + * Build: TL_MAKE_VERBOSE=VERBOSE=1 by default, + so that test-suite.log will be shown on failure. + https://lists.gnu.org/archive/html/automake/2018-09/msg00015.html + 2018-04-28 Karl Berry <karl@tug.org> * version.ac: 2019/dev. diff --git a/source/Makefile.in b/source/Makefile.in index ffc6bb531..e1f2bc710 100644 --- a/source/Makefile.in +++ b/source/Makefile.in @@ -127,7 +127,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/kpse-cairo-flags.m4 \ $(top_srcdir)/libs/zziplib/ac/withenable.ac \ $(top_srcdir)/libs/libpng/ac/withenable.ac \ $(top_srcdir)/libs/luajit/ac/withenable.ac \ - $(top_srcdir)/libs/lua52/ac/withenable.ac \ $(top_srcdir)/libs/lua53/ac/withenable.ac \ $(top_srcdir)/libs/zlib/ac/withenable.ac \ $(top_srcdir)/texk/kpathsea/ac/withenable.ac \ diff --git a/source/README b/source/README index 5a966ac15..55cb61acb 100644 --- a/source/README +++ b/source/README @@ -1,4 +1,4 @@ -$Id: README 48151 2018-07-06 17:53:52Z karl $ +$Id: README 49472 2018-12-21 23:23:35Z karl $ Public domain. Originally written 2005 by Karl Berry. For a high-level overview of building TeX Live, see @@ -39,8 +39,7 @@ i386-netbsd, amd64-netbsd: ./Build --enable-xindy CLISP=/usr/local/bin/clisp i386-freebsd, amd64-freebsd: - http://anthesphoria.net/FreeBSD/TeXLive-2018/ - upmendex for i386 built with -DU_IS_BIG_ENDIAN=0. + http://anthesphoria.net/FreeBSD/TeXLive-2018/ has all details. i386-linux: see travis below. @@ -69,3 +68,32 @@ x86_64-linuxmusl: Binaries are taken from the CI testing on travis-ci see the source/.travis.yaml file for details on how to build, and tlpkg/bin/tl-update-bindir for updating binaries (in general). + +x86_64-linux-glibc2.12, on CentOS6: +#!/bin/sh -x +# Public domain. +# in ~/.subversion/config: use-commit-times=yes +# mkdir /usr/local/src/tl +# cd !$ +# svn -q co svn://tug.org/texlive/branches/branch2018/Build/source +# rm -rf source/libs/icu source/libs/poppler # to avoid configuring them +# +cd /usr/local/src/tl || exit 1 +# +debug=-g # for debugging, no optimization +# +./Build \ + $debug \ + -C \ + --disable-xetex \ + --disable-luatex \ + --disable-luajittex \ + --disable-luatex53 \ + --disable-dvisvgm \ + --disable-bibtexu \ + --disable-upmendex \ + --disable-poppler \ + --without-system-icu \ + --without-system-poppler \ + --enable-native-texlive-build \ +exit $? diff --git a/source/build-aux/config.guess b/source/build-aux/config.guess index b33c9e890..8e2a58b86 100755 --- a/source/build-aux/config.guess +++ b/source/build-aux/config.guess @@ -1,8 +1,8 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2018 Free Software Foundation, Inc. +# Copyright 1992-2019 Free Software Foundation, Inc. -timestamp='2018-08-29' +timestamp='2019-01-03' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -50,7 +50,7 @@ version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2018 Free Software Foundation, Inc. +Copyright 1992-2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -96,8 +96,7 @@ fi tmp= # shellcheck disable=SC2172 -trap 'test -z "$tmp" || rm -fr "$tmp"' 1 2 13 15 -trap 'exitcode=$?; test -z "$tmp" || rm -fr "$tmp"; exit $exitcode' 0 +trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 set_cc_for_build() { : "${TMPDIR=/tmp}" @@ -386,21 +385,39 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" + set_cc_for_build + SUN_ARCH=sparc + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != no_compiler_found ]; then + if (echo '#ifdef __sparcv9'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH=sparcv9 + fi + fi + echo "$SUN_ARCH"-sun-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) echo i386-pc-auroraux"$UNAME_RELEASE" exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - UNAME_REL="`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" - case `isainfo -b` in - 32) - echo i386-pc-solaris2"$UNAME_REL" - ;; - 64) - echo x86_64-pc-solaris2"$UNAME_REL" - ;; - esac + set_cc_for_build + SUN_ARCH=i386 + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != no_compiler_found ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH=x86_64 + fi + fi + echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize @@ -890,7 +907,7 @@ EOF echo "$UNAME_MACHINE"-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) - echo x86_64-unknown-cygwin + echo x86_64-pc-cygwin exit ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" @@ -1424,6 +1441,9 @@ EOF amd64:Isilon\ OneFS:*:*) echo x86_64-unknown-onefs exit ;; + *:Unleashed:*:*) + echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE" + exit ;; esac echo "$0: unable to guess system type" >&2 diff --git a/source/build-aux/config.sub b/source/build-aux/config.sub index b51fb8cdb..a8f3f7e7c 100755 --- a/source/build-aux/config.sub +++ b/source/build-aux/config.sub @@ -1,8 +1,8 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright 1992-2018 Free Software Foundation, Inc. +# Copyright 1992-2019 Free Software Foundation, Inc. -timestamp='2018-08-29' +timestamp='2019-01-01' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -67,7 +67,7 @@ Report bugs and patches to <config-patches@gnu.org>." version="\ GNU config.sub ($timestamp) -Copyright 1992-2018 Free Software Foundation, Inc. +Copyright 1992-2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -89,7 +89,7 @@ while test $# -gt 0 ; do - ) # Use stdin as input. break ;; -* ) - echo "$me: invalid option $1$help" + echo "$me: invalid option $1$help" >&2 exit 1 ;; *local*) @@ -111,7 +111,7 @@ case $# in esac # Split fields of configuration type -IFS="-" read -r field1 field2 field3 field4 <<EOF +IFS="-" read field1 field2 field3 field4 <<EOF $1 EOF @@ -149,7 +149,7 @@ case $1 in esac ;; *-*) - # A lone config we happen to match not fitting any patern + # A lone config we happen to match not fitting any pattern case $field1-$field2 in decstation-3100) basic_machine=mips-dec @@ -918,7 +918,7 @@ case $basic_machine in ;; *-*) - IFS="-" read -r cpu vendor <<EOF + IFS="-" read cpu vendor <<EOF $basic_machine EOF ;; @@ -950,7 +950,7 @@ unset -v basic_machine # Decode basic machines in the full and proper CPU-Company form. case $cpu-$vendor in - # Here we handle the default manufacturer of certain CPU types in cannonical form. It is in + # Here we handle the default manufacturer of certain CPU types in canonical form. It is in # some cases the only manufacturer, in others, it is the most popular. craynv-unknown) vendor=cray @@ -1101,7 +1101,7 @@ case $cpu-$vendor in cpu=`echo "$cpu" | sed 's/^xscale/arm/'` ;; - # Recognize the cannonical CPU Types that limit and/or modify the + # Recognize the canonical CPU Types that limit and/or modify the # company names they are paired with. cr16-*) os=${os:-elf} @@ -1150,7 +1150,7 @@ case $cpu-$vendor in ;; *) - # Recognize the cannonical CPU types that are allowed with any + # Recognize the canonical CPU types that are allowed with any # company name. case $cpu in 1750a | 580 \ @@ -1161,6 +1161,7 @@ case $cpu-$vendor in | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \ | alphapca5[67] | alpha64pca5[67] \ | am33_2.0 \ + | amdgcn \ | arc | arceb \ | arm | arm[lb]e | arme[lb] | armv* \ | avr | avr32 \ @@ -1360,7 +1361,7 @@ case $os in | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ | skyos* | haiku* | rdos* | toppers* | drops* | es* \ | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ - | midnightbsd*) + | midnightbsd* | amdhsa* | unleashed* | emscripten*) # Remember, each alternative MUST END IN *, to match a version number. ;; qnx*) diff --git a/source/build-aux/texinfo.tex b/source/build-aux/texinfo.tex index d7f7f53a3..66a832e0b 100644 --- a/source/build-aux/texinfo.tex +++ b/source/build-aux/texinfo.tex @@ -3,12 +3,9 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2018-06-02.09} +\def\texinfoversion{2018-12-28.17} % -% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, -% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, -% 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 -% Free Software Foundation, Inc. +% Copyright 1985, 1986, 1988, 1990-2018 Free Software Foundation, Inc. % % This texinfo.tex file is free software: you can redistribute it and/or % modify it under the terms of the GNU General Public License as @@ -244,17 +241,7 @@ % \def\finalout{\overfullrule=0pt } -% Do @cropmarks to get crop marks. -% -\newif\ifcropmarks -\let\cropmarks = \cropmarkstrue -% -% Dimensions to add cropmarks at corners. -% Added by P. A. MacKay, 12 Nov. 1986 -% \newdimen\outerhsize \newdimen\outervsize % set by the paper size routines -\newdimen\cornerlong \cornerlong=1pc -\newdimen\cornerthick \cornerthick=.3pt \newdimen\topandbottommargin \topandbottommargin=.75in % Output a mark which sets \thischapter, \thissection and \thiscolor. @@ -328,12 +315,12 @@ \newbox\footlinebox % \onepageout takes a vbox as an argument. -% \shipout a vbox for a single page, adding an optional header, footer, -% cropmarks, and footnote. This also causes index entries for this page -% to be written to the auxiliary files. +% \shipout a vbox for a single page, adding an optional header, footer +% and footnote. This also causes index entries for this page to be written +% to the auxiliary files. % \def\onepageout#1{% - \ifcropmarks \hoffset=0pt \else \hoffset=\normaloffset \fi + \hoffset=\normaloffset % \ifodd\pageno \advance\hoffset by \bindingoffset \else \advance\hoffset by -\bindingoffset\fi @@ -386,25 +373,6 @@ % Do this early so pdf references go to the beginning of the page. \ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi % - \ifcropmarks \vbox to \outervsize\bgroup - \hsize = \outerhsize - \vskip-\topandbottommargin - \vtop to0pt{% - \line{\ewtop\hfil\ewtop}% - \nointerlineskip - \line{% - \vbox{\moveleft\cornerthick\nstop}% - \hfill - \vbox{\moveright\cornerthick\nstop}% - }% - \vss}% - \vskip\topandbottommargin - \line\bgroup - \hfil % center the page within the outer (page) hsize. - \ifodd\pageno\hskip\bindingoffset\fi - \vbox\bgroup - \fi - % \unvbox\headlinebox \pagebody{#1}% \ifdim\ht\footlinebox > 0pt @@ -415,22 +383,6 @@ \unvbox\footlinebox \fi % - \ifcropmarks - \egroup % end of \vbox\bgroup - \hfil\egroup % end of (centering) \line\bgroup - \vskip\topandbottommargin plus1fill minus1fill - \boxmaxdepth = \cornerthick - \vbox to0pt{\vss - \line{% - \vbox{\moveleft\cornerthick\nsbot}% - \hfill - \vbox{\moveright\cornerthick\nsbot}% - }% - \nointerlineskip - \line{\ewbot\hfil\ewbot}% - }% - \egroup % \vbox from first cropmarks clause - \fi }% end of \shipout\vbox }% end of group with \indexdummies \advancepageno @@ -451,17 +403,6 @@ \ifr@ggedbottom \kern-\dimen@ \vfil \fi} } -% Here are the rules for the cropmarks. Note that they are -% offset so that the space between them is truly \outerhsize or \outervsize -% (P. A. MacKay, 12 November, 1986) -% -\def\ewtop{\vrule height\cornerthick depth0pt width\cornerlong} -\def\nstop{\vbox - {\hrule height\cornerthick depth\cornerlong width\cornerthick}} -\def\ewbot{\vrule height0pt depth\cornerthick width\cornerlong} -\def\nsbot{\vbox - {\hrule height\cornerlong depth\cornerthick width\cornerthick}} - % Argument parsing @@ -8004,6 +7945,7 @@ end \gdef\boldbrax{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb} \gdef\magicamp{\let&=\amprm} } +\let\ampchar\& \newcount\parencount diff --git a/source/configure b/source/configure index e2e48578f..494702b14 100755 --- a/source/configure +++ b/source/configure @@ -4526,9 +4526,6 @@ test "x$need_libpng" = xyes && { ## libs/luajit/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/luajit/ ## configure options and TL libraries required for luajit -## libs/lua52/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua52/ -## configure options and TL libraries required for lua52 - ## libs/lua53/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua53/ ## configure options and TL libraries required for lua53 @@ -8868,6 +8865,8 @@ fi done +##tldbg KPSE_COMMON: TeX Live top-level (tar-pax dist-xz no-dist-gzip). +##tldbg KPSE_BASIC: Remember TeX Live top-level (tar-pax dist-xz no-dist-gzip) as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -19205,7 +19204,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for TeX specific libraries to build" >&5 $as_echo_n "checking for TeX specific libraries to build... " >&6; } -echo 'dbg:_KPSE_RECURSE called: list=texlibs, text=TeX specific libraries, cond=test "x$with_system_Kpse_pkg" != xyes && test "x$need_Kpse_pkg" = xyes, prefix=texk/.' >&5 +echo 'tldbg:_KPSE_RECURSE called: list=texlibs, text=TeX specific libraries, cond=test "x$with_system_[]Kpse_pkg" != xyes && test "x$need_[]Kpse_pkg" = xyes, prefix=texk/.' >&5 MAKE_SUBDIRS= CONF_SUBDIRS= if test -x $srcdir/texk/kpathsea/configure; then @@ -19327,6 +19326,7 @@ elif test "x$need_ptexenc:$with_system_ptexenc" = xyes:yes; then as_fn_error $? "did not find ptexenc" "$LINENO" 5 fi +##tldbg _KPSE_LIB_FLAGS_SYSTEM: zlib (z). if test "x$with_zlib_includes" != x && test "x$with_zlib_includes" != xyes; then ZLIB_INCLUDES="-I$with_zlib_includes" fi @@ -19335,6 +19335,7 @@ if test "x$with_zlib_libdir" != x && test "x$with_zlib_libdir" != xyes; then ZLIB_LIBS="-L$with_zlib_libdir $ZLIB_LIBS" fi +##tldbg _KPSE_LIB_FLAGS_SYSTEM: libpaper (paper). if test "x$with_libpaper_includes" != x && test "x$with_libpaper_includes" != xyes; then LIBPAPER_INCLUDES="-I$with_libpaper_includes" fi @@ -19448,6 +19449,7 @@ elif test "x$need_freetype2:$with_system_freetype2" = xyes:yes; then as_fn_error $? "did not find freetype-config required for system freetype2 library" "$LINENO" 5 fi +##tldbg _KPSE_LIB_FLAGS_SYSTEM: gd (gd). if test "x$with_gd_includes" != x && test "x$with_gd_includes" != xyes; then GD_INCLUDES="-I$with_gd_includes" fi @@ -19470,6 +19472,7 @@ elif test "x$need_cairo:$with_system_cairo" = xyes:yes; then as_fn_error $? "did not find cairo 1.12 or better" "$LINENO" 5 fi +##tldbg _KPSE_LIB_FLAGS_SYSTEM: gmp (gmp). if test "x$with_gmp_includes" != x && test "x$with_gmp_includes" != xyes; then GMP_INCLUDES="-I$with_gmp_includes" fi @@ -19478,6 +19481,7 @@ if test "x$with_gmp_libdir" != x && test "x$with_gmp_libdir" != xyes; then GMP_LIBS="-L$with_gmp_libdir $GMP_LIBS" fi +##tldbg _KPSE_LIB_FLAGS_SYSTEM: mpfr (mpfr). if test "x$with_mpfr_includes" != x && test "x$with_mpfr_includes" != xyes; then MPFR_INCLUDES="-I$with_mpfr_includes" fi @@ -19527,7 +19531,7 @@ elif test "x$need_teckit:$with_system_teckit" = xyes:yes; then as_fn_error $? "did not find teckit" "$LINENO" 5 fi -echo 'dbg:_KPSE_ICU_SYSTEM_FLAGS called.' >&5 +echo 'tldbg:KPSE_ICU_SYSTEM_FLAGS called.' >&5 if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}icu-config", so it can be a program name with args. set dummy ${ac_tool_prefix}icu-config; ac_word=$2 diff --git a/source/doc/Makefile.in b/source/doc/Makefile.in index f17d42d3e..d7248c87d 100644 --- a/source/doc/Makefile.in +++ b/source/doc/Makefile.in @@ -127,7 +127,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/kpse-cairo-flags.m4 \ $(top_srcdir)/libs/zziplib/ac/withenable.ac \ $(top_srcdir)/libs/libpng/ac/withenable.ac \ $(top_srcdir)/libs/luajit/ac/withenable.ac \ - $(top_srcdir)/libs/lua52/ac/withenable.ac \ $(top_srcdir)/libs/lua53/ac/withenable.ac \ $(top_srcdir)/libs/zlib/ac/withenable.ac \ $(top_srcdir)/texk/kpathsea/ac/withenable.ac \ diff --git a/source/doc/build-tools.txt b/source/doc/build-tools.txt index 085dcff5d..b2609cab0 100644 --- a/source/doc/build-tools.txt +++ b/source/doc/build-tools.txt @@ -1,6 +1,6 @@ autoconf (GNU Autoconf) 2.69 automake (GNU automake) 1.16.1 -bison (GNU Bison) 3.1 +bison (GNU Bison) 3.2.3 flex 2.6.0 ltmain.sh (GNU libtool) 2.4.6 m4 (GNU M4) 1.4.18 diff --git a/source/doc/tlbuild.info b/source/doc/tlbuild.info index 5614db5e2..29161b265 100644 --- a/source/doc/tlbuild.info +++ b/source/doc/tlbuild.info @@ -712,7 +712,7 @@ many extra hassles, so don't do that, tempting as it may be. autoconf (GNU Autoconf) 2.69 automake (GNU automake) 1.16.1 - bison (GNU Bison) 3.1 + bison (GNU Bison) 3.2.3 flex 2.6.0 ltmain.sh (GNU libtool) 2.4.6 m4 (GNU M4) 1.4.18 @@ -5558,351 +5558,351 @@ Node: Linked scripts23067 Node: Distro builds24548 Node: Layout and infrastructure26938 Node: Build system tools27766 -Node: Top-level directories29775 -Node: Autoconf macros32189 -Node: General setup macros32890 -Node: Macros for programs33757 -Node: Macros for compilers34569 -Node: Macros for libraries36003 -Node: Macros for library and header flags36429 -Node: Macros for Windows38309 -Node: Library modules39886 -Node: png library40375 -Node: zlib library42649 -Node: freetype library43164 -Node: kpathsea library43692 -Node: Program modules45091 -Node: t1utils package45519 -Node: xindy package46070 -Node: xdvik package47220 -Node: asymptote48293 -Node: Extending TeX Live48744 -Node: Adding a new program module49521 -Node: Adding a new generic library module52816 -Node: Adding a new TeX-specific library module55029 -Node: Configure options55716 -Node: Global configure options57099 -Node: --disable-native-texlive-build57641 -Node: --prefix --bindir ...58631 -Node: --disable-largefile59171 -Node: --disable-missing59856 -Node: --enable-compiler-warnings=LEVEL60257 -Node: --enable-cxx-runtime-hack60996 -Node: --enable-maintainer-mode61423 -Node: --enable-multiplatform61952 -Node: --enable-shared62490 -Node: --enable-silent-rules62861 -Node: --without-ln-s63317 -Node: --without-x63668 -Node: Program-specific configure options63856 -Node: --enable-PROG --disable-PROG64499 -Node: --disable-all-pkgs64776 -Node: Configure options for texk/web2c65762 -Node: Configure options for texk/bibtex-x68280 -Node: Configure options for texk/dvipdfm-x68823 -Node: Configure options for texk/dvisvgm69596 -Node: Configure options for texk/texlive70482 -Node: Configure options for texk/xdvik70903 -Node: Configure options for utils/xindy71507 -Node: Library-specific configure options72408 -Node: Configure options for kpathsea73419 -Node: Configure options for system poppler74128 -Node: Variables for configure74919 -Node: Coding conventions76347 -Node: Declarations and definitions77086 -Node: Const79268 -Node: Continuous integration81131 -Node: Transfer from Subversion to Github81785 -Node: Automatic update of the Git mirror83967 -Node: CI testing on Travis-CI84555 -Node: install-tl85235 -Node: install-tl NAME85604 -Node: install-tl SYNOPSIS85762 -Node: install-tl DESCRIPTION86020 -Node: install-tl REFERENCES87087 -Node: install-tl OPTIONS87613 -Ref: install-tl *-gui* [[=]_module_]87954 -Ref: install-tl text88164 -Ref: install-tl wizard88287 -Ref: install-tl perltk88441 -Ref: install-tl *-no-gui*88872 -Ref: install-tl *-lang* _llcode_88953 -Ref: install-tl *-repository* _url|path_89640 -Ref: install-tl *-select-repository*91520 -Ref: install-tl *-all-options*91956 -Ref: install-tl *-custom-bin* _path_92211 -Ref: install-tl *-debug-translation*93042 -Ref: install-tl *-force-platform* _platform_93261 -Ref: install-tl *-help*, *--help*, *-?*93505 -Ref: install-tl *-in-place*93912 -Ref: install-tl *-init-from-profile* _profile_file_94457 -Ref: install-tl *-logfile* _file_94677 -Ref: install-tl *-no-cls*95028 -Ref: install-tl *-non-admin*95162 -Ref: install-tl *-persistent-downloads*95267 -Ref: install-tl *-no-persistent-downloads*95295 -Ref: install-tl *-no-verify-downloads*95913 -Ref: install-tl *-portable*96274 -Ref: install-tl *-print-platform*96413 -Ref: install-tl *-profile* _profile_file_96611 -Ref: install-tl *-q*96791 -Ref: install-tl *-scheme* _scheme_96853 -Ref: install-tl *-v*97327 -Ref: install-tl *-version*, *--version*97482 -Node: install-tl PROFILES97613 -Ref: install-tl instopt_adjustpath (default 0 on Unix, 1 on Windows)100263 -Ref: install-tl instopt_adjustrepo (default 1)100339 -Ref: install-tl instopt_letter (default 0)100476 -Ref: install-tl instopt_portable (default 0)100567 -Ref: install-tl instopt_write18_restricted (default 1)100663 -Node: install-tl ENVIRONMENT VARIABLES101982 -Ref: install-tl TEXLIVE_INSTALL_ENV_NOCHECK102373 -Ref: install-tl TEXLIVE_INSTALL_NO_CONTEXT_CACHE102575 -Ref: install-tl TEXLIVE_INSTALL_NO_WELCOME102685 -Ref: install-tl TEXLIVE_INSTALL_PREFIX102806 -Ref: install-tl TEXLIVE_INSTALL_TEXDIR102832 -Ref: install-tl TEXLIVE_INSTALL_TEXMFCONFIG102863 -Ref: install-tl TEXLIVE_INSTALL_TEXMFVAR102891 -Ref: install-tl TEXLIVE_INSTALL_TEXMFHOME102920 -Ref: install-tl TEXLIVE_INSTALL_TEXMFLOCAL102950 -Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSCONFIG102984 -Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSVAR103015 -Ref: install-tl NOPERLDOC103386 -Node: install-tl AUTHORS AND COPYRIGHT103450 -Node: tlmgr103866 -Node: tlmgr NAME104319 -Node: tlmgr SYNOPSIS104451 -Node: tlmgr DESCRIPTION104641 -Node: tlmgr EXAMPLES105737 -Ref: tlmgr tlmgr option repository ctan105988 -Ref: tlmgr tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet106060 -Ref: tlmgr tlmgr update --list106512 -Ref: tlmgr tlmgr update --all106605 -Ref: tlmgr tlmgr info _what_106762 -Node: tlmgr OPTIONS107024 -Ref: tlmgr *--repository* _url|path_107544 -Ref: tlmgr *--gui* [_action_]108269 -Ref: tlmgr *--gui-lang* _llcode_108676 -Ref: tlmgr *--debug-translation*109359 -Ref: tlmgr *--machine-readable*109562 -Ref: tlmgr *--no-execute-actions*109830 -Ref: tlmgr *--package-logfile* _file_110023 -Ref: tlmgr *--pause*110277 -Ref: tlmgr *--persistent-downloads*110432 -Ref: tlmgr *--no-persistent-downloads*110460 -Ref: tlmgr *--pin-file*110954 -Ref: tlmgr *--usermode*111172 -Ref: tlmgr *--usertree* _dir_111292 -Ref: tlmgr *--verify-repo=[none|main|all]*111418 -Node: tlmgr ACTIONS112317 -Node: tlmgr help113169 -Node: tlmgr version113645 -Node: tlmgr backup113908 -Ref: tlmgr *backup [_option_...] --all*114079 -Ref: tlmgr *backup [_option_...] _pkg_...*114112 -Ref: tlmgr *--backupdir* _directory_114967 -Ref: tlmgr *--all*115184 -Ref: tlmgr *--clean*[=_N_]115436 -Ref: tlmgr *--dry-run*115763 -Node: tlmgr candidates _pkg_115893 -Node: tlmgr check [_option_...] [files|depends|executes|runfiles|all]116239 -Ref: tlmgr *files*116612 -Ref: tlmgr *depends*116747 -Ref: tlmgr *executes*117089 -Ref: tlmgr *runfiles*117207 -Ref: tlmgr *--use-svn*117328 -Node: tlmgr conf117445 -Ref: tlmgr *conf [texmf|tlmgr|updmap [--conffile _file_] [--delete] [_key_ [_value_]]]*117724 -Ref: tlmgr *conf auxtrees [--conffile _file_] [show|add|delete] [_value_]*117788 -Node: tlmgr dump-tlpdb [_option_...] [--json]120133 -Ref: tlmgr *--local*120566 -Ref: tlmgr *--remote*120605 -Ref: tlmgr *--json*120643 -Node: tlmgr generate121214 -Ref: tlmgr *generate [_option_...] language*121410 -Ref: tlmgr *generate [_option_...] language.dat*121449 -Ref: tlmgr *generate [_option_...] language.def*121488 -Ref: tlmgr *generate [_option_...] language.dat.lua*121531 -Ref: tlmgr *--dest* _output_file_123857 -Ref: tlmgr *--localcfg* _local_conf_file_124433 -Ref: tlmgr *--rebuild-sys*124556 -Node: tlmgr gui125371 -Node: tlmgr info125549 -Ref: tlmgr *info [_option_...] _pkg_...*125711 -Ref: tlmgr *info [_option_...] collections*125745 -Ref: tlmgr *info [_option_...] schemes*125775 -Ref: tlmgr *--list*127305 -Ref: tlmgr *--only-installed*127619 -Ref: tlmgr *--data item1,item2,...*127818 -Ref: tlmgr *--json* 1128399 -Node: tlmgr init-usertree128782 -Node: tlmgr install [_option_...] _pkg_...129163 -Ref: tlmgr *--dry-run* 1129673 -Ref: tlmgr *--file*129790 -Ref: tlmgr *--force*130012 -Ref: tlmgr *--no-depends*130232 -Ref: tlmgr *--no-depends-at-all*130391 -Ref: tlmgr *--reinstall*130791 -Ref: tlmgr *--with-doc*131169 -Ref: tlmgr *--with-src*131182 -Node: tlmgr key131704 -Ref: tlmgr *key list*131862 -Ref: tlmgr *key add _file_*131880 -Ref: tlmgr *key remove _keyid_*131902 -Node: tlmgr list132497 -Node: tlmgr option132659 -Ref: tlmgr *option [--json] [show]*132814 -Ref: tlmgr *option [--json] showall*132840 -Ref: tlmgr *option _key_ [_value_]*132866 -Node: tlmgr paper137263 -Ref: tlmgr *paper [a4|letter]*137412 -Ref: tlmgr *[xdvi|pdftex|dvips|dvipdfmx|context|psutils] paper [_papersize_|--list]*137486 -Ref: tlmgr *paper --json*137501 -Node: tlmgr path138716 -Ref: tlmgr *path [--w32mode=user|admin] add*138877 -Ref: tlmgr *path [--w32mode=user|admin] remove*138914 -Node: tlmgr pinning140254 -Ref: tlmgr pinning show140495 -Ref: tlmgr pinning add _repo_ _pkgglob_...140568 -Ref: tlmgr pinning remove _repo_ _pkgglob_...140687 -Ref: tlmgr pinning remove _repo_ --all140840 -Node: tlmgr platform140894 -Ref: tlmgr *platform list|add|remove _platform_...*141080 -Ref: tlmgr *platform set _platform_*141107 -Ref: tlmgr *platform set auto*141128 -Ref: tlmgr *--dry-run* 2142014 -Node: tlmgr postaction142133 -Ref: tlmgr *postaction [_option_...] install [shortcut|fileassoc|script] [_pkg_...]*142363 -Ref: tlmgr *postaction [_option_...] remove [shortcut|fileassoc|script] [_pkg_...]*142437 -Ref: tlmgr *--w32mode=[user|admin]*142752 -Ref: tlmgr *--fileassocmode=[1|2]*143168 -Ref: tlmgr *--all* 1143453 -Node: tlmgr print-platform143508 -Node: tlmgr print-platform-info143839 -Node: tlmgr remove [_option_...] _pkg_...144139 -Ref: tlmgr *--all* 2144623 -Ref: tlmgr *--backup*144733 -Ref: tlmgr *--backupdir* _directory_ 1144759 -Ref: tlmgr *--no-depends* 1145164 -Ref: tlmgr *--no-depends-at-all* 1145226 -Ref: tlmgr *--force* 1145329 -Ref: tlmgr *--dry-run* 3145802 -Node: tlmgr repository145909 -Ref: tlmgr *repository list*146097 -Ref: tlmgr *repository list _path|tag_*146127 -Ref: tlmgr *repository add _path_ [_tag_]*146160 -Ref: tlmgr *repository remove _path|tag_*146192 -Ref: tlmgr *repository set _path_[#_tag_] [_path_[#_tag_] ...]*146246 -Node: tlmgr restore147299 -Ref: tlmgr *restore [_option_...] _pkg_ [_rev_]*147478 -Ref: tlmgr *restore [_option_...] --all*147508 -Ref: tlmgr *--all* 3148208 -Ref: tlmgr *--backupdir* _directory_ 2148422 -Ref: tlmgr *--dry-run* 4148603 -Ref: tlmgr *--force* 2148735 -Ref: tlmgr *--json* 2148781 -Node: tlmgr search149108 -Ref: tlmgr *search [_option_...] _what_*149272 -Ref: tlmgr *search [_option_...] --file _what_*149309 -Ref: tlmgr *search [_option_...] --all _what_*149345 -Ref: tlmgr *--file* 1149565 -Ref: tlmgr *--all* 4149627 -Ref: tlmgr *--global*149716 -Ref: tlmgr *--word*149843 -Node: tlmgr shell150158 -Ref: tlmgr protocol150893 -Ref: tlmgr help 1150957 -Ref: tlmgr version 1151010 -Ref: tlmgr quit, end, bye, byebye, EOF151078 -Ref: tlmgr restart151099 -Ref: tlmgr load [local|remote]151222 -Ref: tlmgr save151292 -Ref: tlmgr get [_var_] =item set [_var_ [_val_]]151415 -Node: tlmgr show152016 -Node: tlmgr uninstall152183 -Node: tlmgr update [_option_...] [_pkg_...]152413 -Ref: tlmgr *--all* 5152784 -Ref: tlmgr *--self*154525 -Ref: tlmgr *--dry-run* 5155289 -Ref: tlmgr *--list* [_pkg_]155466 -Ref: tlmgr *--exclude* _pkg_156155 -Ref: tlmgr *--no-auto-remove* [_pkg_...]156955 -Ref: tlmgr *--no-auto-install* [_pkg_...]157406 -Ref: tlmgr *--reinstall-forcibly-removed*158062 -Ref: tlmgr *--backup* 1158597 -Ref: tlmgr *--backupdir* _directory_ 3158623 -Ref: tlmgr *--no-depends* 2159789 -Ref: tlmgr *--no-depends-at-all* 2159992 -Ref: tlmgr *--force* 3160095 -Node: tlmgr CONFIGURATION FILE FOR TLMGR160910 -Ref: tlmgr auto-remove, value 0 or 1 (default 1), same as command-line option.161923 -Ref: tlmgr gui-expertmode, value 0 or 1 (default 1). This switches between the full GUI and a simplified GUI with only the most common settings.162060 -Ref: tlmgr gui-lang _llcode_, with a language code value as with the command-line option.162142 -Ref: tlmgr no-checksums, value 0 or 1 (default 0, see below).162196 -Ref: tlmgr persistent-downloads, value 0 or 1 (default 1), same as command-line option.162276 -Ref: tlmgr require-verification, value 0 or 1 (default 0), same as command-line option.162356 -Ref: tlmgr update-exclude, value: comma-separated list of packages (no space allowed). Same as the command line option --exclude for the action update.162504 -Ref: tlmgr verify-downloads, value 0 or 1 (default 1), same as command-line option.162580 -Ref: tlmgr allowed-actions _action1_ [,_action_,...] The value is a comma-separated list of tlmgr actions which are allowed to be executed when tlmgr is invoked in system mode (that is, without --usermode).162849 -Node: tlmgr CRYPTOGRAPHIC VERIFICATION163935 -Node: tlmgr Configuration of GnuPG invocation166084 -Node: tlmgr USER MODE166722 -Node: tlmgr User mode install169568 -Node: tlmgr User mode backup, restore, remove, update170712 -Node: tlmgr User mode generate, option, paper171154 -Node: tlmgr MULTIPLE REPOSITORIES171530 -Node: tlmgr Pinning173259 -Node: tlmgr GUI FOR TLMGR175234 -Node: tlmgr Main display176574 -Node: tlmgr Display configuration area176826 -Ref: tlmgr Status177187 -Ref: tlmgr Category177351 -Ref: tlmgr Match177537 -Ref: tlmgr Selection177718 -Ref: tlmgr Display configuration buttons177922 -Node: tlmgr Package list area178105 -Ref: tlmgr a checkbox178689 -Ref: tlmgr package name178825 -Ref: tlmgr local revision (and version)178924 -Ref: tlmgr remote revision (and version)179299 -Ref: tlmgr short description179596 -Node: tlmgr Main display action buttons179641 -Ref: tlmgr Update all installed179907 -Ref: tlmgr Update180279 -Ref: tlmgr Install180329 -Ref: tlmgr Remove180515 -Ref: tlmgr Backup180693 -Node: tlmgr Menu bar180850 -Ref: tlmgr tlmgr menu181073 -Ref: tlmgr Options menu181381 -Ref: tlmgr Actions menu182464 -Ref: tlmgr Help menu182892 -Node: tlmgr GUI options183025 -Ref: tlmgr -background _color_183271 -Ref: tlmgr -font " _fontname_ _fontsize_ "183336 -Ref: tlmgr -foreground _color_183494 -Ref: tlmgr -geometry _geomspec_183546 -Ref: tlmgr -xrm _xresource_183738 -Node: tlmgr MACHINE-READABLE OUTPUT184006 -Node: tlmgr Machine-readable update and install output184816 -Ref: tlmgr location-url _location_186092 -Ref: tlmgr total-bytes _count_186308 -Ref: tlmgr _pkgname_186718 -Ref: tlmgr _status_186928 -Ref: tlmgr d187006 -Ref: tlmgr f187066 -Ref: tlmgr u187245 -Ref: tlmgr r187291 -Ref: tlmgr a187414 -Ref: tlmgr i187592 -Ref: tlmgr I187711 -Ref: tlmgr _localrev_187813 -Ref: tlmgr _serverrev_187920 -Ref: tlmgr _size_188032 -Ref: tlmgr _runtime_188201 -Ref: tlmgr _esttot_188271 -Node: tlmgr Machine-readable option output188304 -Node: tlmgr AUTHORS AND COPYRIGHT188816 -Node: Index189215 +Node: Top-level directories29777 +Node: Autoconf macros32191 +Node: General setup macros32892 +Node: Macros for programs33759 +Node: Macros for compilers34571 +Node: Macros for libraries36005 +Node: Macros for library and header flags36431 +Node: Macros for Windows38311 +Node: Library modules39888 +Node: png library40377 +Node: zlib library42651 +Node: freetype library43166 +Node: kpathsea library43694 +Node: Program modules45093 +Node: t1utils package45521 +Node: xindy package46072 +Node: xdvik package47222 +Node: asymptote48295 +Node: Extending TeX Live48746 +Node: Adding a new program module49523 +Node: Adding a new generic library module52818 +Node: Adding a new TeX-specific library module55031 +Node: Configure options55718 +Node: Global configure options57101 +Node: --disable-native-texlive-build57643 +Node: --prefix --bindir ...58633 +Node: --disable-largefile59173 +Node: --disable-missing59858 +Node: --enable-compiler-warnings=LEVEL60259 +Node: --enable-cxx-runtime-hack60998 +Node: --enable-maintainer-mode61425 +Node: --enable-multiplatform61954 +Node: --enable-shared62492 +Node: --enable-silent-rules62863 +Node: --without-ln-s63319 +Node: --without-x63670 +Node: Program-specific configure options63858 +Node: --enable-PROG --disable-PROG64501 +Node: --disable-all-pkgs64778 +Node: Configure options for texk/web2c65764 +Node: Configure options for texk/bibtex-x68282 +Node: Configure options for texk/dvipdfm-x68825 +Node: Configure options for texk/dvisvgm69598 +Node: Configure options for texk/texlive70484 +Node: Configure options for texk/xdvik70905 +Node: Configure options for utils/xindy71509 +Node: Library-specific configure options72410 +Node: Configure options for kpathsea73421 +Node: Configure options for system poppler74130 +Node: Variables for configure74921 +Node: Coding conventions76349 +Node: Declarations and definitions77088 +Node: Const79270 +Node: Continuous integration81133 +Node: Transfer from Subversion to Github81787 +Node: Automatic update of the Git mirror83969 +Node: CI testing on Travis-CI84557 +Node: install-tl85237 +Node: install-tl NAME85606 +Node: install-tl SYNOPSIS85764 +Node: install-tl DESCRIPTION86022 +Node: install-tl REFERENCES87089 +Node: install-tl OPTIONS87615 +Ref: install-tl *-gui* [[=]_module_]87956 +Ref: install-tl text88166 +Ref: install-tl wizard88289 +Ref: install-tl perltk88443 +Ref: install-tl *-no-gui*88874 +Ref: install-tl *-lang* _llcode_88955 +Ref: install-tl *-repository* _url|path_89642 +Ref: install-tl *-select-repository*91522 +Ref: install-tl *-all-options*91958 +Ref: install-tl *-custom-bin* _path_92213 +Ref: install-tl *-debug-translation*93044 +Ref: install-tl *-force-platform* _platform_93263 +Ref: install-tl *-help*, *--help*, *-?*93507 +Ref: install-tl *-in-place*93914 +Ref: install-tl *-init-from-profile* _profile_file_94459 +Ref: install-tl *-logfile* _file_94679 +Ref: install-tl *-no-cls*95030 +Ref: install-tl *-non-admin*95164 +Ref: install-tl *-persistent-downloads*95269 +Ref: install-tl *-no-persistent-downloads*95297 +Ref: install-tl *-no-verify-downloads*95915 +Ref: install-tl *-portable*96276 +Ref: install-tl *-print-platform*96415 +Ref: install-tl *-profile* _profile_file_96613 +Ref: install-tl *-q*96793 +Ref: install-tl *-scheme* _scheme_96855 +Ref: install-tl *-v*97329 +Ref: install-tl *-version*, *--version*97484 +Node: install-tl PROFILES97615 +Ref: install-tl instopt_adjustpath (default 0 on Unix, 1 on Windows)100265 +Ref: install-tl instopt_adjustrepo (default 1)100341 +Ref: install-tl instopt_letter (default 0)100478 +Ref: install-tl instopt_portable (default 0)100569 +Ref: install-tl instopt_write18_restricted (default 1)100665 +Node: install-tl ENVIRONMENT VARIABLES101984 +Ref: install-tl TEXLIVE_INSTALL_ENV_NOCHECK102375 +Ref: install-tl TEXLIVE_INSTALL_NO_CONTEXT_CACHE102577 +Ref: install-tl TEXLIVE_INSTALL_NO_WELCOME102687 +Ref: install-tl TEXLIVE_INSTALL_PREFIX102808 +Ref: install-tl TEXLIVE_INSTALL_TEXDIR102834 +Ref: install-tl TEXLIVE_INSTALL_TEXMFCONFIG102865 +Ref: install-tl TEXLIVE_INSTALL_TEXMFVAR102893 +Ref: install-tl TEXLIVE_INSTALL_TEXMFHOME102922 +Ref: install-tl TEXLIVE_INSTALL_TEXMFLOCAL102952 +Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSCONFIG102986 +Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSVAR103017 +Ref: install-tl NOPERLDOC103388 +Node: install-tl AUTHORS AND COPYRIGHT103452 +Node: tlmgr103868 +Node: tlmgr NAME104321 +Node: tlmgr SYNOPSIS104453 +Node: tlmgr DESCRIPTION104643 +Node: tlmgr EXAMPLES105739 +Ref: tlmgr tlmgr option repository ctan105990 +Ref: tlmgr tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet106062 +Ref: tlmgr tlmgr update --list106514 +Ref: tlmgr tlmgr update --all106607 +Ref: tlmgr tlmgr info _what_106764 +Node: tlmgr OPTIONS107026 +Ref: tlmgr *--repository* _url|path_107546 +Ref: tlmgr *--gui* [_action_]108271 +Ref: tlmgr *--gui-lang* _llcode_108678 +Ref: tlmgr *--debug-translation*109361 +Ref: tlmgr *--machine-readable*109564 +Ref: tlmgr *--no-execute-actions*109832 +Ref: tlmgr *--package-logfile* _file_110025 +Ref: tlmgr *--pause*110279 +Ref: tlmgr *--persistent-downloads*110434 +Ref: tlmgr *--no-persistent-downloads*110462 +Ref: tlmgr *--pin-file*110956 +Ref: tlmgr *--usermode*111174 +Ref: tlmgr *--usertree* _dir_111294 +Ref: tlmgr *--verify-repo=[none|main|all]*111420 +Node: tlmgr ACTIONS112319 +Node: tlmgr help113171 +Node: tlmgr version113647 +Node: tlmgr backup113910 +Ref: tlmgr *backup [_option_...] --all*114081 +Ref: tlmgr *backup [_option_...] _pkg_...*114114 +Ref: tlmgr *--backupdir* _directory_114969 +Ref: tlmgr *--all*115186 +Ref: tlmgr *--clean*[=_N_]115438 +Ref: tlmgr *--dry-run*115765 +Node: tlmgr candidates _pkg_115895 +Node: tlmgr check [_option_...] [files|depends|executes|runfiles|all]116241 +Ref: tlmgr *files*116614 +Ref: tlmgr *depends*116749 +Ref: tlmgr *executes*117091 +Ref: tlmgr *runfiles*117209 +Ref: tlmgr *--use-svn*117330 +Node: tlmgr conf117447 +Ref: tlmgr *conf [texmf|tlmgr|updmap [--conffile _file_] [--delete] [_key_ [_value_]]]*117726 +Ref: tlmgr *conf auxtrees [--conffile _file_] [show|add|delete] [_value_]*117790 +Node: tlmgr dump-tlpdb [_option_...] [--json]120135 +Ref: tlmgr *--local*120568 +Ref: tlmgr *--remote*120607 +Ref: tlmgr *--json*120645 +Node: tlmgr generate121216 +Ref: tlmgr *generate [_option_...] language*121412 +Ref: tlmgr *generate [_option_...] language.dat*121451 +Ref: tlmgr *generate [_option_...] language.def*121490 +Ref: tlmgr *generate [_option_...] language.dat.lua*121533 +Ref: tlmgr *--dest* _output_file_123859 +Ref: tlmgr *--localcfg* _local_conf_file_124435 +Ref: tlmgr *--rebuild-sys*124558 +Node: tlmgr gui125373 +Node: tlmgr info125551 +Ref: tlmgr *info [_option_...] _pkg_...*125713 +Ref: tlmgr *info [_option_...] collections*125747 +Ref: tlmgr *info [_option_...] schemes*125777 +Ref: tlmgr *--list*127307 +Ref: tlmgr *--only-installed*127621 +Ref: tlmgr *--data item1,item2,...*127820 +Ref: tlmgr *--json* 1128401 +Node: tlmgr init-usertree128784 +Node: tlmgr install [_option_...] _pkg_...129165 +Ref: tlmgr *--dry-run* 1129675 +Ref: tlmgr *--file*129792 +Ref: tlmgr *--force*130014 +Ref: tlmgr *--no-depends*130234 +Ref: tlmgr *--no-depends-at-all*130393 +Ref: tlmgr *--reinstall*130793 +Ref: tlmgr *--with-doc*131171 +Ref: tlmgr *--with-src*131184 +Node: tlmgr key131706 +Ref: tlmgr *key list*131864 +Ref: tlmgr *key add _file_*131882 +Ref: tlmgr *key remove _keyid_*131904 +Node: tlmgr list132499 +Node: tlmgr option132661 +Ref: tlmgr *option [--json] [show]*132816 +Ref: tlmgr *option [--json] showall*132842 +Ref: tlmgr *option _key_ [_value_]*132868 +Node: tlmgr paper137265 +Ref: tlmgr *paper [a4|letter]*137414 +Ref: tlmgr *[xdvi|pdftex|dvips|dvipdfmx|context|psutils] paper [_papersize_|--list]*137488 +Ref: tlmgr *paper --json*137503 +Node: tlmgr path138718 +Ref: tlmgr *path [--w32mode=user|admin] add*138879 +Ref: tlmgr *path [--w32mode=user|admin] remove*138916 +Node: tlmgr pinning140256 +Ref: tlmgr pinning show140497 +Ref: tlmgr pinning add _repo_ _pkgglob_...140570 +Ref: tlmgr pinning remove _repo_ _pkgglob_...140689 +Ref: tlmgr pinning remove _repo_ --all140842 +Node: tlmgr platform140896 +Ref: tlmgr *platform list|add|remove _platform_...*141082 +Ref: tlmgr *platform set _platform_*141109 +Ref: tlmgr *platform set auto*141130 +Ref: tlmgr *--dry-run* 2142016 +Node: tlmgr postaction142135 +Ref: tlmgr *postaction [_option_...] install [shortcut|fileassoc|script] [_pkg_...]*142365 +Ref: tlmgr *postaction [_option_...] remove [shortcut|fileassoc|script] [_pkg_...]*142439 +Ref: tlmgr *--w32mode=[user|admin]*142754 +Ref: tlmgr *--fileassocmode=[1|2]*143170 +Ref: tlmgr *--all* 1143455 +Node: tlmgr print-platform143510 +Node: tlmgr print-platform-info143841 +Node: tlmgr remove [_option_...] _pkg_...144141 +Ref: tlmgr *--all* 2144625 +Ref: tlmgr *--backup*144735 +Ref: tlmgr *--backupdir* _directory_ 1144761 +Ref: tlmgr *--no-depends* 1145166 +Ref: tlmgr *--no-depends-at-all* 1145228 +Ref: tlmgr *--force* 1145331 +Ref: tlmgr *--dry-run* 3145804 +Node: tlmgr repository145911 +Ref: tlmgr *repository list*146099 +Ref: tlmgr *repository list _path|tag_*146129 +Ref: tlmgr *repository add _path_ [_tag_]*146162 +Ref: tlmgr *repository remove _path|tag_*146194 +Ref: tlmgr *repository set _path_[#_tag_] [_path_[#_tag_] ...]*146248 +Node: tlmgr restore147301 +Ref: tlmgr *restore [_option_...] _pkg_ [_rev_]*147480 +Ref: tlmgr *restore [_option_...] --all*147510 +Ref: tlmgr *--all* 3148210 +Ref: tlmgr *--backupdir* _directory_ 2148424 +Ref: tlmgr *--dry-run* 4148605 +Ref: tlmgr *--force* 2148737 +Ref: tlmgr *--json* 2148783 +Node: tlmgr search149110 +Ref: tlmgr *search [_option_...] _what_*149274 +Ref: tlmgr *search [_option_...] --file _what_*149311 +Ref: tlmgr *search [_option_...] --all _what_*149347 +Ref: tlmgr *--file* 1149567 +Ref: tlmgr *--all* 4149629 +Ref: tlmgr *--global*149718 +Ref: tlmgr *--word*149845 +Node: tlmgr shell150160 +Ref: tlmgr protocol150895 +Ref: tlmgr help 1150959 +Ref: tlmgr version 1151012 +Ref: tlmgr quit, end, bye, byebye, EOF151080 +Ref: tlmgr restart151101 +Ref: tlmgr load [local|remote]151224 +Ref: tlmgr save151294 +Ref: tlmgr get [_var_] =item set [_var_ [_val_]]151417 +Node: tlmgr show152018 +Node: tlmgr uninstall152185 +Node: tlmgr update [_option_...] [_pkg_...]152415 +Ref: tlmgr *--all* 5152786 +Ref: tlmgr *--self*154527 +Ref: tlmgr *--dry-run* 5155291 +Ref: tlmgr *--list* [_pkg_]155468 +Ref: tlmgr *--exclude* _pkg_156157 +Ref: tlmgr *--no-auto-remove* [_pkg_...]156957 +Ref: tlmgr *--no-auto-install* [_pkg_...]157408 +Ref: tlmgr *--reinstall-forcibly-removed*158064 +Ref: tlmgr *--backup* 1158599 +Ref: tlmgr *--backupdir* _directory_ 3158625 +Ref: tlmgr *--no-depends* 2159791 +Ref: tlmgr *--no-depends-at-all* 2159994 +Ref: tlmgr *--force* 3160097 +Node: tlmgr CONFIGURATION FILE FOR TLMGR160912 +Ref: tlmgr auto-remove, value 0 or 1 (default 1), same as command-line option.161925 +Ref: tlmgr gui-expertmode, value 0 or 1 (default 1). This switches between the full GUI and a simplified GUI with only the most common settings.162062 +Ref: tlmgr gui-lang _llcode_, with a language code value as with the command-line option.162144 +Ref: tlmgr no-checksums, value 0 or 1 (default 0, see below).162198 +Ref: tlmgr persistent-downloads, value 0 or 1 (default 1), same as command-line option.162278 +Ref: tlmgr require-verification, value 0 or 1 (default 0), same as command-line option.162358 +Ref: tlmgr update-exclude, value: comma-separated list of packages (no space allowed). Same as the command line option --exclude for the action update.162506 +Ref: tlmgr verify-downloads, value 0 or 1 (default 1), same as command-line option.162582 +Ref: tlmgr allowed-actions _action1_ [,_action_,...] The value is a comma-separated list of tlmgr actions which are allowed to be executed when tlmgr is invoked in system mode (that is, without --usermode).162851 +Node: tlmgr CRYPTOGRAPHIC VERIFICATION163937 +Node: tlmgr Configuration of GnuPG invocation166086 +Node: tlmgr USER MODE166724 +Node: tlmgr User mode install169570 +Node: tlmgr User mode backup, restore, remove, update170714 +Node: tlmgr User mode generate, option, paper171156 +Node: tlmgr MULTIPLE REPOSITORIES171532 +Node: tlmgr Pinning173261 +Node: tlmgr GUI FOR TLMGR175236 +Node: tlmgr Main display176576 +Node: tlmgr Display configuration area176828 +Ref: tlmgr Status177189 +Ref: tlmgr Category177353 +Ref: tlmgr Match177539 +Ref: tlmgr Selection177720 +Ref: tlmgr Display configuration buttons177924 +Node: tlmgr Package list area178107 +Ref: tlmgr a checkbox178691 +Ref: tlmgr package name178827 +Ref: tlmgr local revision (and version)178926 +Ref: tlmgr remote revision (and version)179301 +Ref: tlmgr short description179598 +Node: tlmgr Main display action buttons179643 +Ref: tlmgr Update all installed179909 +Ref: tlmgr Update180281 +Ref: tlmgr Install180331 +Ref: tlmgr Remove180517 +Ref: tlmgr Backup180695 +Node: tlmgr Menu bar180852 +Ref: tlmgr tlmgr menu181075 +Ref: tlmgr Options menu181383 +Ref: tlmgr Actions menu182466 +Ref: tlmgr Help menu182894 +Node: tlmgr GUI options183027 +Ref: tlmgr -background _color_183273 +Ref: tlmgr -font " _fontname_ _fontsize_ "183338 +Ref: tlmgr -foreground _color_183496 +Ref: tlmgr -geometry _geomspec_183548 +Ref: tlmgr -xrm _xresource_183740 +Node: tlmgr MACHINE-READABLE OUTPUT184008 +Node: tlmgr Machine-readable update and install output184818 +Ref: tlmgr location-url _location_186094 +Ref: tlmgr total-bytes _count_186310 +Ref: tlmgr _pkgname_186720 +Ref: tlmgr _status_186930 +Ref: tlmgr d187008 +Ref: tlmgr f187068 +Ref: tlmgr u187247 +Ref: tlmgr r187293 +Ref: tlmgr a187416 +Ref: tlmgr i187594 +Ref: tlmgr I187713 +Ref: tlmgr _localrev_187815 +Ref: tlmgr _serverrev_187922 +Ref: tlmgr _size_188034 +Ref: tlmgr _runtime_188203 +Ref: tlmgr _esttot_188273 +Node: tlmgr Machine-readable option output188306 +Node: tlmgr AUTHORS AND COPYRIGHT188818 +Node: Index189217 End Tag Table diff --git a/source/libs/Makefile.in b/source/libs/Makefile.in index 00d43edee..d0df468c6 100644 --- a/source/libs/Makefile.in +++ b/source/libs/Makefile.in @@ -111,7 +111,6 @@ am__aclocal_m4_deps = $(top_srcdir)/../m4/kpse-common.m4 \ $(top_srcdir)/../libs/zziplib/ac/withenable.ac \ $(top_srcdir)/../libs/libpng/ac/withenable.ac \ $(top_srcdir)/../libs/luajit/ac/withenable.ac \ - $(top_srcdir)/../libs/lua52/ac/withenable.ac \ $(top_srcdir)/../libs/lua53/ac/withenable.ac \ $(top_srcdir)/../libs/zlib/ac/withenable.ac \ $(top_srcdir)/../texk/kpathsea/ac/withenable.ac \ diff --git a/source/libs/README b/source/libs/README index 0d4a6ab02..ec47781e5 100644 --- a/source/libs/README +++ b/source/libs/README @@ -1,4 +1,4 @@ -$Id: README 48527 2018-08-31 23:11:41Z karl $ +$Id: README 49473 2018-12-22 00:39:38Z kakuto $ Public domain. Originally created by Karl Berry, 2005. Libraries we compile for TeX Live. @@ -9,7 +9,7 @@ bypassing or using the original one. See also comments in ../texk/README. -cairo 1.14.12 - checked 07dec17 +cairo 1.16.0 - checked 20oct18 http://cairographics.org/releases/ freetype2 2.9.1 - checked 04may18 @@ -21,11 +21,11 @@ gd 2.2.5 - checked 30aug17 gmp 6.1.2 - checked 16dec16 http://ftp.gnu.org/gnu/gmp/ -graphite2 1.3.12 - checked 16aug18 +graphite2 1.3.13 - checked 21dec18 http://sourceforge.net/projects/silgraphite/files/graphite2/ (requires C++11) -harfbuzz 1.8.8 - checked 15aug18 +harfbuzz 2.3.0 - checked 22dec18 http://www.freedesktop.org/software/harfbuzz/release/ icu 61.1 - checked 29mar18 @@ -34,23 +34,26 @@ icu 61.1 - checked 29mar18 libpaper 1.1.24+nmu2 - checked 24oct13 ftp://ftp.de.debian.org/debian/pool/main/libp/libpaper/ -libpng 1.6.35 - checked 17jul18 +libpng 1.6.36 - checked 02dec18 https://sourceforge.net/projects/libpng/files/ - used by many -lua 5.2.3 - checked 11mar15 +lua 5.2.4 - checked 11mar15 http://www.lua.org/ftp/ -luajit 2.1.0-beta2 - checked 09mar16 - http://luajit.org/download/LuaJIT-2.1.0-beta1.tar.gz +lua 5.3.5 - checked 21jul18 + http://www.lua.org/ftp/ + +luajit 2.1.0-beta3 - checked 20jun17 + http://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz mpfr 4.0.1 - checked 10feb18 http://ftp.gnu.org/gnu/mpfr/ -pixman 0.34.0 - checked 04feb16 +pixman 0.36.0 - checked 22nov18 http://cairographics.org/releases/ poppler 0.68.0 - checked 20aug18 - http://poppler.freedesktop.org/ - used by luatex and xetex + http://poppler.freedesktop.org/ - used by xetex (requires C++11) teckit 2.5.8 - checked 24jul18 diff --git a/source/libs/configure b/source/libs/configure index ab496ae93..622c42994 100755 --- a/source/libs/configure +++ b/source/libs/configure @@ -3686,9 +3686,6 @@ test "x$need_libpng" = xyes && { ## libs/luajit/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/luajit/ ## configure options and TL libraries required for luajit -## libs/lua52/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua52/ -## configure options and TL libraries required for lua52 - ## libs/lua53/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua53/ ## configure options and TL libraries required for lua53 @@ -4317,6 +4314,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember libs () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -4673,7 +4671,7 @@ WARNING_CFLAGS=$kpse_cv_warning_cflags { $as_echo "$as_me:${as_lineno-$LINENO}: checking for generic libraries to build" >&5 $as_echo_n "checking for generic libraries to build... " >&6; } -echo 'dbg:_KPSE_RECURSE called: list=libs, text=generic libraries, cond=test "x$with_system_Kpse_pkg" != xyes && test "x$need_Kpse_pkg" = xyes, prefix=.' >&5 +echo 'tldbg:_KPSE_RECURSE called: list=libs, text=generic libraries, cond=test "x$with_system_[]Kpse_pkg" != xyes && test "x$need_[]Kpse_pkg" = xyes, prefix=.' >&5 MAKE_SUBDIRS= CONF_SUBDIRS= if test -x $srcdir/zziplib/configure; then @@ -4688,10 +4686,6 @@ if test -x $srcdir/luajit/configure; then test "x$with_system_luajit" != xyes && test "x$need_luajit" = xyes && MAKE_SUBDIRS="luajit $MAKE_SUBDIRS" CONF_SUBDIRS="luajit $CONF_SUBDIRS" fi -if test -x $srcdir/lua52/configure; then - test "x$with_system_lua52" != xyes && test "x$need_lua52" = xyes && MAKE_SUBDIRS="lua52 $MAKE_SUBDIRS" - CONF_SUBDIRS="lua52 $CONF_SUBDIRS" -fi if test -x $srcdir/lua53/configure; then test "x$with_system_lua53" != xyes && test "x$need_lua53" = xyes && MAKE_SUBDIRS="lua53 $MAKE_SUBDIRS" CONF_SUBDIRS="lua53 $CONF_SUBDIRS" diff --git a/source/libs/libpng/ChangeLog b/source/libs/libpng/ChangeLog index c424365b3..d46f26fab 100644 --- a/source/libs/libpng/ChangeLog +++ b/source/libs/libpng/ChangeLog @@ -1,3 +1,8 @@ +2018-12-02 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + Import libpng-1.6.36. + * version.ac: Adjust. + 2018-07-17 Akira Kakuto <kakuto@fuk.kindai.ac.jp> Import libpng-1.6.35. diff --git a/source/libs/libpng/README b/source/libs/libpng/README index 5cba5b7fa..39ad2e137 100644 --- a/source/libs/libpng/README +++ b/source/libs/libpng/README @@ -1,4 +1,4 @@ - Building libpng-1.6.35 as part of the TL tree + Building libpng-1.6.36 as part of the TL tree ============================================= This directory libs/libpng/ uses a proxy Makefile.am to build the libpng library @@ -14,4 +14,4 @@ copied to libs/libpng/configure.ac. ============================= 2009-07-23 Peter Breitenlohner <peb@mppmu.mpg.de> -2018-07-17 Akira Kakuto <kakuto@fuk.kindai.ac.jp> +2018-12-02 Akira Kakuto <kakuto@fuk.kindai.ac.jp> diff --git a/source/libs/libpng/TLpatches/ChangeLog b/source/libs/libpng/TLpatches/ChangeLog index 30e2bd745..019b749e2 100644 --- a/source/libs/libpng/TLpatches/ChangeLog +++ b/source/libs/libpng/TLpatches/ChangeLog @@ -1,3 +1,7 @@ +2018-12-02 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + Import libpng-1.6.36. + 2018-07-17 Akira Kakuto <kakuto@fuk.kindai.ac.jp> Import libpng-1.6.35. diff --git a/source/libs/libpng/TLpatches/TL-Changes b/source/libs/libpng/TLpatches/TL-Changes index 3b4b3224d..5be3936c5 100644 --- a/source/libs/libpng/TLpatches/TL-Changes +++ b/source/libs/libpng/TLpatches/TL-Changes @@ -1,5 +1,5 @@ -Changes applied to the libpng-1.6.35/ tree as obtained from: - https://sourceforge.net/projects/libpng/files/libpng16/1.6.35/ +Changes applied to the libpng-1.6.36/ tree as obtained from: + https://sourceforge.net/projects/libpng/files/libpng16/1.6.36/ Copied: scripts/pnglibconf.h.prebuilt -> pnglibconf.h diff --git a/source/libs/libpng/configure b/source/libs/libpng/configure index c112de40d..2bde70c5c 100755 --- a/source/libs/libpng/configure +++ b/source/libs/libpng/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for libpng (TeX Live) 1.6.35. +# Generated by GNU Autoconf 2.69 for libpng (TeX Live) 1.6.36. # # Report bugs to <tex-k@tug.org>. # @@ -580,8 +580,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='libpng (TeX Live)' PACKAGE_TARNAME='libpng--tex-live-' -PACKAGE_VERSION='1.6.35' -PACKAGE_STRING='libpng (TeX Live) 1.6.35' +PACKAGE_VERSION='1.6.36' +PACKAGE_STRING='libpng (TeX Live) 1.6.36' PACKAGE_BUGREPORT='tex-k@tug.org' PACKAGE_URL='' @@ -1297,7 +1297,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libpng (TeX Live) 1.6.35 to adapt to many kinds of systems. +\`configure' configures libpng (TeX Live) 1.6.36 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1364,7 +1364,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libpng (TeX Live) 1.6.35:";; + short | recursive ) echo "Configuration of libpng (TeX Live) 1.6.36:";; esac cat <<\_ACEOF @@ -1478,7 +1478,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libpng (TeX Live) configure 1.6.35 +libpng (TeX Live) configure 1.6.36 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1901,7 +1901,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libpng (TeX Live) $as_me 1.6.35, which was +It was created by libpng (TeX Live) $as_me 1.6.36, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3801,6 +3801,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember libpng () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -3824,7 +3825,7 @@ fi # Define the identity of the package. PACKAGE='libpng--tex-live-' - VERSION='1.6.35' + VERSION='1.6.36' cat >>confdefs.h <<_ACEOF @@ -4991,7 +4992,7 @@ $as_echo "no, using $LN_S" >&6; } fi -echo 'dbg:_KPSE_COMPILER_VISIBILITY called.' >&5 +echo 'tldbg:KPSE_COMPILER_VISIBILITY called.' >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking CFLAGS for C to hide external symbols" >&5 $as_echo_n "checking CFLAGS for C to hide external symbols... " >&6; } if ${kpse_cv_visibility_cflags+:} false; then : @@ -5853,11 +5854,13 @@ fi kpse_save_CPPFLAGS=$CPPFLAGS kpse_save_LIBS=$LIBS -## _KPSE_INIT: Initialize TL infrastructure +##tldbg _KPSE_INIT: Initialize TL infrastructure. kpse_BLD=`(cd "./../../." && pwd)` kpse_SRC=`(cd "$srcdir/../../." && pwd)` -## _KPSE_LIB_FLAGS: Setup zlib (-lz) flags +##tldbg _KPSE_LIB_FLAGS: Setup zlib (-lz) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=zlib, libname=z, options=, tlincl=-IBLD/libs/zlib/include, tllib=BLD/libs/zlib/libz.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/zlib/include/zconf.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: zlib (z) . # Check whether --with-system-zlib was given. if test "${with_system_zlib+set}" = set; then : @@ -5874,7 +5877,8 @@ if test "${with_zlib_libdir+set}" = set; then : withval=$with_zlib_libdir; fi if test "x$with_system_zlib" = xyes; then - if test "x$with_zlib_includes" != x && test "x$with_zlib_includes" != xyes; then + ##tldbg _KPSE_LIB_FLAGS_SYSTEM: zlib (z). +if test "x$with_zlib_includes" != x && test "x$with_zlib_includes" != xyes; then ZLIB_INCLUDES="-I$with_zlib_includes" fi ZLIB_LIBS="-lz" @@ -6578,7 +6582,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libpng (TeX Live) $as_me 1.6.35, which was +This file was extended by libpng (TeX Live) $as_me 1.6.36, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -6644,7 +6648,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libpng (TeX Live) config.status 1.6.35 +libpng (TeX Live) config.status 1.6.36 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/source/libs/libpng/libpng-src/ANNOUNCE b/source/libs/libpng/libpng-src/ANNOUNCE index 9fc9021b5..f1724c0d0 100644 --- a/source/libs/libpng/libpng-src/ANNOUNCE +++ b/source/libs/libpng/libpng-src/ANNOUNCE @@ -1,48 +1,77 @@ -Libpng 1.6.35 - July 15, 2018 +libpng 1.6.36 - December 1, 2018 +================================ This is a public release of libpng, intended for use in production code. -Files available for download: + +Files available for download +---------------------------- Source files with LF line endings (for Unix/Linux): - libpng-1.6.35.tar.xz (LZMA-compressed, recommended) - libpng-1.6.35.tar.gz + * libpng-1.6.36.tar.xz (LZMA-compressed, recommended) + * libpng-1.6.36.tar.gz Source files with CRLF line endings (for Windows): - lp1635.7z (LZMA-compressed, recommended) - lp1635.zip + * lp1636.7z (LZMA-compressed, recommended) + * lp1636.zip Other information: - libpng-1.6.35-README.txt - libpng-1.6.35-LICENSE.txt - -Changes since the last public release (1.6.34): - - Restored 21 of the contrib/pngsuite/i*.png, which do not cause test - failures. Placed the remainder in contrib/pngsuite/interlaced/i*.png. - Added calls to png_set_*() transforms commonly used by browsers to - the fuzzer. - Removed some unnecessary brackets in pngrtran.c - Fixed miscellaneous typos (Patch by github user "luzpaz"). - Change "ASM C" to "C ASM" in CMakeLists.txt - Fixed incorrect handling of bKGD chunk in sub-8-bit files (Cosmin) - Added hardware optimization directories to zip and 7z distributions. - Fixed incorrect bitmask for options. - Fixed many spelling typos. - Make png_get_iCCP consistent with man page (allow compression-type argument - to be NULL, bug report by Lenard Szolnoki). - Replaced the remaining uses of png_size_t with size_t (Cosmin) - Fixed the calculation of row_factor in png_check_chunk_length - (reported by Thuan Pham in SourceForge issue #278) - Added missing parentheses to a macro definition - (suggested by "irwir" in GitHub issue #216) - -Send comments/corrections/commendations to png-mng-implement at lists.sf.net -(subscription required; visit -https://lists.sourceforge.net/lists/listinfo/png-mng-implement -to subscribe). + * README.md + * LICENSE.md + * AUTHORS.md + * TRADEMARK.md + + +IMPORTANT licensing update: libpng license v2 +--------------------------------------------- + +The new libpng license comprises the terms and conditions from the zlib +license, and the disclaimer from the Boost license. + +The legacy libpng license, used until libpng-1.6.35, is appended to the +new license, following the precedent established in the Python Software +Foundation License version 2. -Glenn R-P +From now on, the list of contributing authors shall be maintained in a +separate AUTHORS file. The lists of previous contributing authors, +mentioned in the legacy libpng license and considered to be an integral +part of that license, are kept intact, with no further updates. + + +Changes since the previous public release (version 1.6.35) +---------------------------------------------------------- + + * Optimized png_do_expand_palette for ARM processors. + Improved performance by around 10-22% on a recent ARM Chromebook. + (Contributed by Richard Townsend, ARM Holdings) + * Fixed manipulation of machine-specific optimization options. + (Contributed by Vicki Pfau) + * Used memcpy instead of manual pointer arithmetic on Intel SSE2. + (Contributed by Samuel Williams) + * Fixed build errors with MSVC on ARM64. + (Contributed by Zhijie Liang) + * Fixed detection of libm in CMakeLists. + (Contributed by Cameron Cawley) + * Fixed incorrect creation of pkg-config file in CMakeLists. + (Contributed by Kyle Bentley) + * Fixed the CMake build on Windows MSYS by avoiding symlinks. + * Fixed a build warning on OpenBSD. + (Contributed by Theo Buehler) + * Fixed various typos in comments. + (Contributed by "luz.paz") + * Raised the minimum required CMake version from 3.0.2 to 3.1. + * Removed yet more of the vestigial support for pre-ANSI C compilers. + * Removed ancient makefiles for ancient systems that have been broken + across all previous libpng-1.6.x versions. + * Removed the Y2K compliance statement and the export control + information. + * Applied various code style and documentation fixes. + + +Send comments/corrections/commendations to png-mng-implement at lists.sf.net. +Subscription is required; visit +https://lists.sourceforge.net/lists/listinfo/png-mng-implement +to subscribe. diff --git a/source/libs/libpng/libpng-src/AUTHORS b/source/libs/libpng/libpng-src/AUTHORS new file mode 100644 index 000000000..79a3d1036 --- /dev/null +++ b/source/libs/libpng/libpng-src/AUTHORS @@ -0,0 +1,45 @@ +PNG REFERENCE LIBRARY AUTHORS +============================= + +This is the list of PNG Reference Library ("libpng") Contributing +Authors, for copyright and licensing purposes. + + * Andreas Dilger + * Cosmin Truta + * Dave Martindale + * Eric S. Raymond + * Gilles Vollant + * Glenn Randers-Pehrson + * Greg Roelofs + * Guy Eric Schalnat + * James Yu + * John Bowler + * Kevin Bracey + * Magnus Holmgren + * Mandar Sahastrabuddhe + * Mans Rullgard + * Matt Sarett + * Mike Klein + * Paul Schmidt + * Sam Bushell + * Samuel Williams + * Simon-Pierre Cadieux + * Tim Wegner + * Tom Lane + * Tom Tanner + * Vadim Barkov + * Willem van Schaik + * Zhijie Liang + * Arm Holdings + - Richard Townsend + * Google Inc. + - Matt Sarett + - Mike Klein + +The build projects, the build scripts, the test scripts, and other +files in the "projects", "scripts" and "tests" directories, have other +copyright owners, but are released under the libpng license. + +Some files in the "contrib" directory, and some tools-generated files +that are distributed with libpng, have other copyright owners, and are +released under other open source licenses. diff --git a/source/libs/libpng/libpng-src/CHANGES b/source/libs/libpng/libpng-src/CHANGES index 0ed6a1187..bdd448065 100644 --- a/source/libs/libpng/libpng-src/CHANGES +++ b/source/libs/libpng/libpng-src/CHANGES @@ -6063,9 +6063,34 @@ Version 1.6.35 [July 15, 2018] Added missing parentheses to a macro definition (suggested by "irwir" in GitHub issue #216) +Version 1.6.36 [December 1, 2018] + Optimized png_do_expand_palette for ARM processors. + Improved performance by around 10-22% on a recent ARM Chromebook. + (Contributed by Richard Townsend, ARM Holdings) + Fixed manipulation of machine-specific optimization options. + (Contributed by Vicki Pfau) + Used memcpy instead of manual pointer arithmetic on Intel SSE2. + (Contributed by Samuel Williams) + Fixed build errors with MSVC on ARM64. + (Contributed by Zhijie Liang) + Fixed detection of libm in CMakeLists. + (Contributed by Cameron Cawley) + Fixed incorrect creation of pkg-config file in CMakeLists. + (Contributed by Kyle Bentley) + Fixed the CMake build on Windows MSYS by avoiding symlinks. + Fixed a build warning on OpenBSD. + (Contributed by Theo Buehler) + Fixed various typos in comments. + (Contributed by "luz.paz") + Raised the minimum required CMake version from 3.0.2 to 3.1. + Removed yet more of the vestigial support for pre-ANSI C compilers. + Removed ancient makefiles for ancient systems that have been broken + across all previous libpng-1.6.x versions. + Removed the Y2K compliance statement and the export control + information. + Applied various code style and documentation fixes. + Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement to subscribe). - -Glenn R-P diff --git a/source/libs/libpng/libpng-src/CMakeLists.txt b/source/libs/libpng/libpng-src/CMakeLists.txt index 4db9bb87d..73044c967 100644 --- a/source/libs/libpng/libpng-src/CMakeLists.txt +++ b/source/libs/libpng/libpng-src/CMakeLists.txt @@ -1,42 +1,32 @@ # CMakeLists.txt +# Copyright (C) 2018 Cosmin Truta # Copyright (C) 2007,2009-2018 Glenn Randers-Pehrson # Written by Christian Ehrlicher, 2007 # Revised by Roger Lowman, 2009-2010 -# Revised by Clifford Yapp, 2011-2012 +# Revised by Clifford Yapp, 2011-2012,2017 # Revised by Roger Leigh, 2016 # Revised by Andreas Franek, 2016 +# Revised by Sam Serrels, 2017 +# Revised by Vadim Barkov, 2017 +# Revised by Vicky Pfau, 2018 +# Revised by Cameron Cawley, 2018 +# Revised by Cosmin Truta, 2018 +# Revised by Kyle Bentley, 2018 # This code is released under the libpng license. # For conditions of distribution and use, see the disclaimer # and license in png.h -cmake_minimum_required(VERSION 3.0.2) -cmake_policy(VERSION 3.0.2) - -# Set MacOSX @rpath usage globally. -if (POLICY CMP0020) - cmake_policy(SET CMP0020 NEW) -endif(POLICY CMP0020) -if (POLICY CMP0042) - cmake_policy(SET CMP0042 NEW) -endif(POLICY CMP0042) -# Use new variable expansion policy. -if (POLICY CMP0053) - cmake_policy(SET CMP0053 NEW) -endif(POLICY CMP0053) -if (POLICY CMP0054) - cmake_policy(SET CMP0054 NEW) -endif(POLICY CMP0054) - -set(CMAKE_CONFIGURATION_TYPES "Release;Debug;MinSizeRel;RelWithDebInfo") +cmake_minimum_required(VERSION 3.1) +cmake_policy(VERSION 3.1) project(libpng C ASM) enable_testing() set(PNGLIB_MAJOR 1) set(PNGLIB_MINOR 6) -set(PNGLIB_RELEASE 35) +set(PNGLIB_RELEASE 36) set(PNGLIB_NAME libpng${PNGLIB_MAJOR}${PNGLIB_MINOR}) set(PNGLIB_VERSION ${PNGLIB_MAJOR}.${PNGLIB_MINOR}.${PNGLIB_RELEASE}) @@ -44,25 +34,19 @@ include(GNUInstallDirs) # needed packages -#Allow users to specify location of Zlib, -# Useful if zlib is being built alongside this as a sub-project +# Allow users to specify location of Zlib. +# Useful if zlib is being built alongside this as a sub-project. option(PNG_BUILD_ZLIB "Custom zlib Location, else find_package is used" OFF) -IF(NOT PNG_BUILD_ZLIB) +if(NOT PNG_BUILD_ZLIB) find_package(ZLIB REQUIRED) include_directories(${ZLIB_INCLUDE_DIR}) -ENDIF(NOT PNG_BUILD_ZLIB) - -if(NOT WIN32) - find_library(M_LIBRARY - NAMES m - PATHS /usr/lib /usr/local/lib - ) - if(NOT M_LIBRARY) - message(STATUS "math lib 'libm' not found; floating point support disabled") - endif() +endif() + +if(UNIX AND NOT APPLE AND NOT BEOS AND NOT HAIKU) + find_library(M_LIBRARY m) else() - # not needed on windows + # libm is not needed and/or not available set(M_LIBRARY "") endif() @@ -73,16 +57,14 @@ option(PNG_TESTS "Build libpng tests" ON) # Many more configuration options could be added here option(PNG_FRAMEWORK "Build OS X framework" OFF) -option(PNG_DEBUG "Build with debug output" OFF) -option(PNGARG "Disable ANSI-C prototypes" OFF) - -option(PNG_HARDWARE_OPTIMIZATIONS "Enable Hardware Optimizations" ON) - +option(PNG_DEBUG "Build with debug output" OFF) +option(PNG_HARDWARE_OPTIMIZATIONS "Enable hardware optimizations" ON) set(PNG_PREFIX "" CACHE STRING "Prefix to add to the API function names") set(DFA_XTRA "" CACHE FILEPATH "File containing extra configuration settings") if(PNG_HARDWARE_OPTIMIZATIONS) + # set definitions and sources for arm if(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm" OR CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64") @@ -96,12 +78,13 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm" OR list(FIND PNG_ARM_NEON_POSSIBLE_VALUES ${PNG_ARM_NEON} index) if(index EQUAL -1) message(FATAL_ERROR - " PNG_ARM_NEON must be one of [${PNG_ARM_NEON_POSSIBLE_VALUES}]") - elseif(NOT ${PNG_ARM_NEON} STREQUAL "no") + "PNG_ARM_NEON must be one of [${PNG_ARM_NEON_POSSIBLE_VALUES}]") + elseif(NOT ${PNG_ARM_NEON} STREQUAL "off") set(libpng_arm_sources arm/arm_init.c arm/filter_neon.S - arm/filter_neon_intrinsics.c) + arm/filter_neon_intrinsics.c + arm/palette_neon_intrinsics.c) if(${PNG_ARM_NEON} STREQUAL "on") add_definitions(-DPNG_ARM_NEON_OPT=2) @@ -115,7 +98,7 @@ endif() # set definitions and sources for powerpc if(CMAKE_SYSTEM_PROCESSOR MATCHES "^powerpc*" OR - CMAKE_SYSTEM_PROCESSOR MATCHES "^ppc64*" ) + CMAKE_SYSTEM_PROCESSOR MATCHES "^ppc64*") set(PNG_POWERPC_VSX_POSSIBLE_VALUES on off) set(PNG_POWERPC_VSX "on" CACHE STRING "Enable POWERPC VSX optimizations: off: disable the optimizations.") @@ -124,8 +107,8 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "^powerpc*" OR list(FIND PNG_POWERPC_VSX_POSSIBLE_VALUES ${PNG_POWERPC_VSX} index) if(index EQUAL -1) message(FATAL_ERROR - " PNG_POWERPC_VSX must be one of [${PNG_POWERPC_VSX_POSSIBLE_VALUES}]") - elseif(NOT ${PNG_POWERPC_VSX} STREQUAL "no") + "PNG_POWERPC_VSX must be one of [${PNG_POWERPC_VSX_POSSIBLE_VALUES}]") + elseif(NOT ${PNG_POWERPC_VSX} STREQUAL "off") set(libpng_powerpc_sources powerpc/powerpc_init.c powerpc/filter_vsx_intrinsics.c) @@ -139,7 +122,7 @@ endif() # set definitions and sources for intel if(CMAKE_SYSTEM_PROCESSOR MATCHES "^i?86" OR - CMAKE_SYSTEM_PROCESSOR MATCHES "^x86_64*" ) + CMAKE_SYSTEM_PROCESSOR MATCHES "^x86_64*") set(PNG_INTEL_SSE_POSSIBLE_VALUES on off) set(PNG_INTEL_SSE "on" CACHE STRING "Enable INTEL_SSE optimizations: off: disable the optimizations") @@ -148,8 +131,8 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "^i?86" OR list(FIND PNG_INTEL_SSE_POSSIBLE_VALUES ${PNG_INTEL_SSE} index) if(index EQUAL -1) message(FATAL_ERROR - " PNG_INTEL_SSE must be one of [${PNG_INTEL_SSE_POSSIBLE_VALUES}]") - elseif(NOT ${PNG_INTEL_SSE} STREQUAL "no") + "PNG_INTEL_SSE must be one of [${PNG_INTEL_SSE_POSSIBLE_VALUES}]") + elseif(NOT ${PNG_INTEL_SSE} STREQUAL "off") set(libpng_intel_sources intel/intel_init.c intel/filter_sse2_intrinsics.c) @@ -163,7 +146,7 @@ endif() # set definitions and sources for MIPS if(CMAKE_SYSTEM_PROCESSOR MATCHES "mipsel*" OR - CMAKE_SYSTEM_PROCESSOR MATCHES "mips64el*" ) + CMAKE_SYSTEM_PROCESSOR MATCHES "mips64el*") set(PNG_MIPS_MSA_POSSIBLE_VALUES on off) set(PNG_MIPS_MSA "on" CACHE STRING "Enable MIPS_MSA optimizations: off: disable the optimizations") @@ -172,8 +155,8 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "mipsel*" OR list(FIND PNG_MIPS_MSA_POSSIBLE_VALUES ${PNG_MIPS_MSA} index) if(index EQUAL -1) message(FATAL_ERROR - " PNG_MIPS_MSA must be one of [${PNG_MIPS_MSA_POSSIBLE_VALUES}]") - elseif(NOT ${PNG_MIPS_MSA} STREQUAL "no") + "PNG_MIPS_MSA must be one of [${PNG_MIPS_MSA_POSSIBLE_VALUES}]") + elseif(NOT ${PNG_MIPS_MSA} STREQUAL "off") set(libpng_mips_sources mips/mips_init.c mips/filter_msa_intrinsics.c) @@ -184,6 +167,33 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "mipsel*" OR add_definitions(-DPNG_MIPS_MSA_OPT=0) endif() endif() + +else(PNG_HARDWARE_OPTIMIZATIONS) + +# set definitions and sources for arm +if(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm" OR + CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64") + add_definitions(-DPNG_ARM_NEON_OPT=0) +endif() + +# set definitions and sources for powerpc +if(CMAKE_SYSTEM_PROCESSOR MATCHES "^powerpc*" OR + CMAKE_SYSTEM_PROCESSOR MATCHES "^ppc64*") + add_definitions(-DPNG_POWERPC_VSX_OPT=0) +endif() + +# set definitions and sources for intel +if(CMAKE_SYSTEM_PROCESSOR MATCHES "^i?86" OR + CMAKE_SYSTEM_PROCESSOR MATCHES "^x86_64*") + add_definitions(-DPNG_INTEL_SSE_OPT=0) +endif() + +# set definitions and sources for MIPS +if(CMAKE_SYSTEM_PROCESSOR MATCHES "mipsel*" OR + CMAKE_SYSTEM_PROCESSOR MATCHES "mips64el*") + add_definitions(-DPNG_MIPS_MSA_OPT=0) +endif() + endif(PNG_HARDWARE_OPTIMIZATIONS) # SET LIBNAME @@ -241,17 +251,17 @@ function(symbol_prefix) foreach(line ${OUT}) string(REGEX MATCH "^PREFIX=" found_match "${line}") if(found_match) - STRING(REGEX REPLACE "^PREFIX=(.*\)" "\\1" prefix "${line}") + string(REGEX REPLACE "^PREFIX=(.*\)" "\\1" prefix "${line}") string(REGEX MATCH "__USER_LABEL_PREFIX__" found_match "${prefix}") if(found_match) - STRING(REGEX REPLACE "(.*)__USER_LABEL_PREFIX__(.*)" "\\1\\2" prefix "${prefix}") + string(REGEX REPLACE "(.*)__USER_LABEL_PREFIX__(.*)" "\\1\\2" prefix "${prefix}") endif() set(SYMBOL_PREFIX "${prefix}") endif() endforeach() - message(STATUS "Symbol prefix: ${SYMBOL_PREFIX}") - set(SYMBOL_PREFIX "${SYMBOL_PREFIX}" PARENT_SCOPE) + message(STATUS "Symbol prefix: ${SYMBOL_PREFIX}") + set(SYMBOL_PREFIX "${SYMBOL_PREFIX}" PARENT_SCOPE) endfunction() if(UNIX) @@ -276,11 +286,11 @@ else() set(oneValueArgs INPUT OUTPUT) set(multiValueArgs DEPENDS) cmake_parse_arguments(_GC "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - if (NOT _GC_INPUT) - message(FATAL_ERROR "Invalid arguments. generate_out requires input.") + if(NOT _GC_INPUT) + message(FATAL_ERROR "generate_chk: Missing INPUT argument") endif() - if (NOT _GC_OUTPUT) - message(FATAL_ERROR "Invalid arguments. generate_out requires output.") + if(NOT _GC_OUTPUT) + message(FATAL_ERROR "generate_chk: Missing OUTPUT argument") endif() add_custom_command(OUTPUT "${_GC_OUTPUT}" @@ -299,11 +309,11 @@ else() set(oneValueArgs INPUT OUTPUT) set(multiValueArgs DEPENDS) cmake_parse_arguments(_GO "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - if (NOT _GO_INPUT) - message(FATAL_ERROR "Invalid arguments. generate_out requires input.") + if(NOT _GO_INPUT) + message(FATAL_ERROR "generate_out: Missing INPUT argument") endif() - if (NOT _GO_OUTPUT) - message(FATAL_ERROR "Invalid arguments. generate_out requires output.") + if(NOT _GO_OUTPUT) + message(FATAL_ERROR "generate_out: Missing OUTPUT argument") endif() add_custom_command(OUTPUT "${_GO_OUTPUT}" @@ -322,8 +332,8 @@ else() set(oneValueArgs OUTPUT) set(multiValueArgs DEPENDS) cmake_parse_arguments(_GSO "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - if (NOT _GSO_OUTPUT) - message(FATAL_ERROR "Invalid arguments. generate_source requires output.") + if(NOT _GSO_OUTPUT) + message(FATAL_ERROR "generate_source: Missing OUTPUT argument") endif() add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${_GSO_OUTPUT}" @@ -505,7 +515,7 @@ set(png_fix_itxt_sources if(MSVC) add_definitions(-D_CRT_SECURE_NO_DEPRECATE) -endif(MSVC) +endif() if(PNG_DEBUG) add_definitions(-DPNG_DEBUG) @@ -585,7 +595,7 @@ if(NOT PNG_LIB_TARGETS) message(SEND_ERROR "No library variant selected to build. " "Please enable at least one of the following options: " - " PNG_STATIC, PNG_SHARED, PNG_FRAMEWORK") + "PNG_STATIC, PNG_SHARED, PNG_FRAMEWORK") endif() if(PNG_SHARED AND WIN32) @@ -598,11 +608,11 @@ function(png_add_test) set(multiValueArgs OPTIONS FILES) cmake_parse_arguments(_PAT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - if (NOT _PAT_NAME) - message(FATAL_ERROR "Invalid arguments. png_add_test requires name.") + if(NOT _PAT_NAME) + message(FATAL_ERROR "png_add_test: Missing NAME argument") endif() - if (NOT _PAT_COMMAND) - message(FATAL_ERROR "Invalid arguments. png_add_test requires command.") + if(NOT _PAT_COMMAND) + message(FATAL_ERROR "png_add_test: Missing COMMAND argument") endif() set(TEST_OPTIONS "${_PAT_OPTIONS}") @@ -610,19 +620,11 @@ function(png_add_test) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/scripts/test.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/tests/${_PAT_NAME}.cmake" @ONLY) - if(CMAKE_MAJOR_VERSION GREATER 2) # have generator expressions - add_test(NAME "${_PAT_NAME}" - COMMAND "${CMAKE_COMMAND}" - "-DLIBPNG=$<TARGET_FILE:png>" - "-DTEST_COMMAND=$<TARGET_FILE:${_PAT_COMMAND}>" - -P "${CMAKE_CURRENT_BINARY_DIR}/tests/${_PAT_NAME}.cmake") - else() # old 2.x add_test; limited and won't work well on Windows - # Note LIBPNG is a dummy value as there are no generator expressions - add_test("${_PAT_NAME}" "${CMAKE_COMMAND}" - "-DLIBPNG=${CMAKE_CURRENT_BINARY_DIR}/libpng.so" - "-DTEST_COMMAND=./${_PAT_COMMAND}" - -P "${CMAKE_CURRENT_BINARY_DIR}/tests/${_PAT_NAME}.cmake") - endif() + add_test(NAME "${_PAT_NAME}" + COMMAND "${CMAKE_COMMAND}" + "-DLIBPNG=$<TARGET_FILE:png>" + "-DTEST_COMMAND=$<TARGET_FILE:${_PAT_COMMAND}>" + -P "${CMAKE_CURRENT_BINARY_DIR}/tests/${_PAT_NAME}.cmake") endfunction() if(PNG_TESTS AND PNG_SHARED) @@ -687,11 +689,11 @@ if(PNG_TESTS AND PNG_SHARED) set(TEST_PNG_VALID TRUE) if(TEST_PNG_ALPHA) - if (NOT "${alpha_type}" STREQUAL "alpha") + if(NOT "${alpha_type}" STREQUAL "alpha") set(TEST_PNG_VALID FALSE) endif() else() - if ("${alpha_type}" STREQUAL "alpha") + if("${alpha_type}" STREQUAL "alpha") set(TEST_PNG_VALID FALSE) endif() endif() @@ -760,51 +762,44 @@ endif() # copies if different. include(CMakeParseArguments) -function(CREATE_SYMLINK DEST_FILE) +function(create_symlink DEST_FILE) cmake_parse_arguments(S "" "FILE;TARGET" "" ${ARGN}) if(NOT S_TARGET AND NOT S_FILE) - message(FATAL_ERROR "Specify either a TARGET or a FILE for CREATE_SYMLINK to link to.") - endif(NOT S_TARGET AND NOT S_FILE) + message(FATAL_ERROR "create_symlink: Missing TARGET or FILE argument") + endif() if(S_TARGET AND S_FILE) - message(FATAL_ERROR "CREATE_SYMLINK called with both source file ${S_FILE} and build target ${S_TARGET} arguments - can only handle 1 type per call.") - endif(S_TARGET AND S_FILE) + message(FATAL_ERROR "create_symlink: Both source file ${S_FILE} and build target ${S_TARGET} arguments are present; can only have one.") + endif() if(S_FILE) # If we don't need to symlink something that's coming from a build target, # we can go ahead and symlink/copy at configure time. - - if(CMAKE_HOST_WIN32 AND NOT CYGWIN AND NOT MSYS) + if(CMAKE_HOST_WIN32 AND NOT CYGWIN) execute_process( - COMMAND "${CMAKE_COMMAND}" -E copy_if_different ${S_FILE} ${DEST_FILE} - WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" - ) - else(CMAKE_HOST_WIN32 AND NOT CYGWIN AND NOT MSYS) + COMMAND "${CMAKE_COMMAND}" -E copy_if_different ${S_FILE} ${DEST_FILE} + WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}") + else() execute_process( - COMMAND ${CMAKE_COMMAND} -E create_symlink ${S_FILE} ${DEST_FILE} - WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" - ) - endif(CMAKE_HOST_WIN32 AND NOT CYGWIN AND NOT MSYS) - endif(S_FILE) + COMMAND ${CMAKE_COMMAND} -E create_symlink ${S_FILE} ${DEST_FILE} + WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}") + endif() + endif() if(S_TARGET) # We need to use generator expressions, which can be a bit tricky, so for # simplicity make the symlink a POST_BUILD step and use the TARGET # signature of add_custom_command. - - if(CMAKE_HOST_WIN32 AND NOT CYGWIN AND NOT MSYS) + if(CMAKE_HOST_WIN32 AND NOT CYGWIN) add_custom_command(TARGET ${S_TARGET} POST_BUILD - COMMAND "${CMAKE_COMMAND}" -E copy_if_different $<TARGET_LINKER_FILE_NAME:${S_TARGET}> $<TARGET_LINKER_FILE_DIR:${S_TARGET}>/${DEST_FILE} - ) - else(CMAKE_HOST_WIN32 AND NOT CYGWIN AND NOT MSYS) + COMMAND "${CMAKE_COMMAND}" -E copy_if_different $<TARGET_LINKER_FILE_NAME:${S_TARGET}> $<TARGET_LINKER_FILE_DIR:${S_TARGET}>/${DEST_FILE}) + else() add_custom_command(TARGET ${S_TARGET} POST_BUILD - COMMAND "${CMAKE_COMMAND}" -E create_symlink $<TARGET_LINKER_FILE_NAME:${S_TARGET}> $<TARGET_LINKER_FILE_DIR:${S_TARGET}>/${DEST_FILE} - ) - endif(CMAKE_HOST_WIN32 AND NOT CYGWIN AND NOT MSYS) - - endif(S_TARGET) + COMMAND "${CMAKE_COMMAND}" -E create_symlink $<TARGET_LINKER_FILE_NAME:${S_TARGET}> $<TARGET_LINKER_FILE_DIR:${S_TARGET}>/${DEST_FILE}) + endif() + endif() endfunction() @@ -816,103 +811,95 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/scripts/genout.cmake.in configure_file(${CMAKE_CURRENT_SOURCE_DIR}/scripts/gensrc.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/scripts/gensrc.cmake @ONLY) - # libpng is a library so default to 'lib' if(NOT DEFINED CMAKE_INSTALL_LIBDIR) set(CMAKE_INSTALL_LIBDIR lib) -endif(NOT DEFINED CMAKE_INSTALL_LIBDIR) +endif() # CREATE PKGCONFIG FILES -# we use the same files like ./configure, so we have to set its vars +# We use the same files like ./configure, so we have to set its vars. # Only do this on Windows for Cygwin - the files don't make much sense outside -# a UNIX look alike +# of a UNIX look-alike. if(NOT WIN32 OR CYGWIN OR MINGW) set(prefix ${CMAKE_INSTALL_PREFIX}) set(exec_prefix ${CMAKE_INSTALL_PREFIX}) - set(libdir ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}) - set(includedir ${CMAKE_INSTALL_PREFIX}/include) + set(libdir ${CMAKE_INSTALL_FULL_LIBDIR}) + set(includedir ${CMAKE_INSTALL_FULL_INCLUDEDIR}) set(LIBS "-lz -lm") configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libpng.pc.in ${CMAKE_CURRENT_BINARY_DIR}/${PNGLIB_NAME}.pc @ONLY) - CREATE_SYMLINK(libpng.pc FILE ${PNGLIB_NAME}.pc) + create_symlink(libpng.pc FILE ${PNGLIB_NAME}.pc) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libpng-config.in ${CMAKE_CURRENT_BINARY_DIR}/${PNGLIB_NAME}-config @ONLY) - CREATE_SYMLINK(libpng-config FILE ${PNGLIB_NAME}-config) -endif(NOT WIN32 OR CYGWIN OR MINGW) + create_symlink(libpng-config FILE ${PNGLIB_NAME}-config) +endif() # SET UP LINKS if(PNG_SHARED) set_target_properties(png PROPERTIES -# VERSION 16.${PNGLIB_RELEASE}.1.6.35 +# VERSION 16.${PNGLIB_RELEASE}.1.6.36 VERSION 16.${PNGLIB_RELEASE}.0 SOVERSION 16 CLEAN_DIRECT_OUTPUT 1) endif() -# If CMake > 2.4.x, we set a variable used below to export -# targets to an export file. -# TODO: Use VERSION_GREATER after our cmake_minimum_required >= 2.6.2 -if(CMAKE_MAJOR_VERSION GREATER 1 AND CMAKE_MINOR_VERSION GREATER 4) - set(PNG_EXPORT_RULE EXPORT libpng) -elseif(CMAKE_MAJOR_VERSION GREATER 2) # future proof - set(PNG_EXPORT_RULE EXPORT libpng) -endif() - # INSTALL -if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL ) +if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL) install(TARGETS ${PNG_LIB_TARGETS} - ${PNG_EXPORT_RULE} - RUNTIME DESTINATION bin - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}) + EXPORT libpng + RUNTIME DESTINATION bin + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}) if(PNG_SHARED) # Create a symlink for libpng.dll.a => libpng16.dll.a on Cygwin if(CYGWIN OR MINGW) - CREATE_SYMLINK(libpng${CMAKE_IMPORT_LIBRARY_SUFFIX} TARGET png) - install(FILES $<TARGET_LINKER_FILE_DIR:png>/libpng${CMAKE_IMPORT_LIBRARY_SUFFIX} DESTINATION ${CMAKE_INSTALL_LIBDIR}) - endif(CYGWIN OR MINGW) + create_symlink(libpng${CMAKE_IMPORT_LIBRARY_SUFFIX} TARGET png) + install(FILES $<TARGET_LINKER_FILE_DIR:png>/libpng${CMAKE_IMPORT_LIBRARY_SUFFIX} + DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif() if(NOT WIN32) - CREATE_SYMLINK(libpng${CMAKE_SHARED_LIBRARY_SUFFIX} TARGET png) - install(FILES $<TARGET_LINKER_FILE_DIR:png>/libpng${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION ${CMAKE_INSTALL_LIBDIR}) - endif(NOT WIN32) - endif(PNG_SHARED) + create_symlink(libpng${CMAKE_SHARED_LIBRARY_SUFFIX} TARGET png) + install(FILES $<TARGET_LINKER_FILE_DIR:png>/libpng${CMAKE_SHARED_LIBRARY_SUFFIX} + DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif() + endif() if(PNG_STATIC) if(NOT WIN32 OR CYGWIN OR MINGW) - CREATE_SYMLINK( libpng${CMAKE_STATIC_LIBRARY_SUFFIX} TARGET png_static) - install(FILES $<TARGET_LINKER_FILE_DIR:png_static>/libpng${CMAKE_STATIC_LIBRARY_SUFFIX} DESTINATION ${CMAKE_INSTALL_LIBDIR}) - endif(NOT WIN32 OR CYGWIN OR MINGW) - endif() + create_symlink(libpng${CMAKE_STATIC_LIBRARY_SUFFIX} TARGET png_static) + install(FILES $<TARGET_LINKER_FILE_DIR:png_static>/libpng${CMAKE_STATIC_LIBRARY_SUFFIX} + DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif() + endif() endif() -if(NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL ) - install(FILES ${libpng_public_hdrs} DESTINATION include) - install(FILES ${libpng_public_hdrs} DESTINATION include/${PNGLIB_NAME}) +if(NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL) + install(FILES ${libpng_public_hdrs} DESTINATION include) + install(FILES ${libpng_public_hdrs} DESTINATION include/${PNGLIB_NAME}) endif() -if(NOT SKIP_INSTALL_EXECUTABLES AND NOT SKIP_INSTALL_ALL ) +if(NOT SKIP_INSTALL_EXECUTABLES AND NOT SKIP_INSTALL_ALL) if(NOT WIN32 OR CYGWIN OR MINGW) install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/libpng-config DESTINATION bin) - install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${PNGLIB_NAME}-config - DESTINATION bin) - endif(NOT WIN32 OR CYGWIN OR MINGW) + install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${PNGLIB_NAME}-config DESTINATION bin) + endif() endif() -if(NOT SKIP_INSTALL_PROGRAMS AND NOT SKIP_INSTALL_ALL ) +if(NOT SKIP_INSTALL_PROGRAMS AND NOT SKIP_INSTALL_ALL) install(TARGETS ${PNG_BIN_TARGETS} - RUNTIME DESTINATION bin) + RUNTIME DESTINATION bin) endif() -if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) +if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL) # Install man pages if(NOT PNG_MAN_DIR) set(PNG_MAN_DIR "share/man") endif() - install(FILES libpng.3 libpngpf.3 DESTINATION ${PNG_MAN_DIR}/man3) - install(FILES png.5 DESTINATION ${PNG_MAN_DIR}/man5) + install(FILES libpng.3 libpngpf.3 DESTINATION ${PNG_MAN_DIR}/man3) + install(FILES png.5 DESTINATION ${PNG_MAN_DIR}/man5) # Install pkg-config files if(NOT CMAKE_HOST_WIN32 OR CYGWIN OR MINGW) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libpng.pc @@ -923,12 +910,11 @@ if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${PNGLIB_NAME}-config DESTINATION bin) - endif(NOT CMAKE_HOST_WIN32 OR CYGWIN OR MINGW) + endif() endif() -# On versions of CMake that support it, create an export file CMake -# users can include() to import our targets -if(PNG_EXPORT_RULE AND NOT SKIP_INSTALL_EXPORT AND NOT SKIP_INSTALL_ALL ) +# Create an export file that CMake users can include() to import our targets. +if(NOT SKIP_INSTALL_EXPORT AND NOT SKIP_INSTALL_ALL) install(EXPORT libpng DESTINATION lib/libpng FILE lib${PNG_LIB_NAME}.cmake) endif() diff --git a/source/libs/libpng/libpng-src/LICENSE b/source/libs/libpng/libpng-src/LICENSE index 6ee9c8f55..62ab8e48d 100644 --- a/source/libs/libpng/libpng-src/LICENSE +++ b/source/libs/libpng/libpng-src/LICENSE @@ -1,14 +1,43 @@ +COPYRIGHT NOTICE, DISCLAIMER, and LICENSE +========================================= -This copy of the libpng notices is provided for your convenience. In case of -any discrepancy between this copy and the notices in the file png.h that is -included in the libpng distribution, the latter shall prevail. +PNG Reference Library License version 2 +--------------------------------------- -COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: + * Copyright (c) 1995-2018 The PNG Reference Library Authors. + * Copyright (c) 2018 Cosmin Truta. + * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. + * Copyright (c) 1996-1997 Andreas Dilger. + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. -If you modify libpng you may insert additional notices immediately following -this sentence. +The software is supplied "as is", without warranty of any kind, +express or implied, including, without limitation, the warranties +of merchantability, fitness for a particular purpose, title, and +non-infringement. In no even shall the Copyright owners, or +anyone distributing the software, be liable for any damages or +other liability, whether in contract, tort or otherwise, arising +from, out of, or in connection with the software, or the use or +other dealings in the software, even if advised of the possibility +of such damage. -This code is released under the libpng license. +Permission is hereby granted to use, copy, modify, and distribute +this software, or portions hereof, for any purpose, without fee, +subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you + use this software in a product, an acknowledgment in the product + documentation would be appreciated, but is not required. + + 2. Altered source versions must be plainly marked as such, and must + not be misrepresented as being the original software. + + 3. This Copyright notice may not be removed or altered from any + source or altered source distribution. + + +PNG Reference Library License version 1 (for libpng 0.5 through 1.6.35) +----------------------------------------------------------------------- libpng versions 1.0.7, July 1, 2000 through 1.6.35, July 15, 2018 are Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are @@ -16,38 +45,38 @@ derived from libpng-1.0.6, and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors: - Simon-Pierre Cadieux - Eric S. Raymond - Mans Rullgard - Cosmin Truta - Gilles Vollant - James Yu - Mandar Sahastrabuddhe - Google Inc. - Vadim Barkov + Simon-Pierre Cadieux + Eric S. Raymond + Mans Rullgard + Cosmin Truta + Gilles Vollant + James Yu + Mandar Sahastrabuddhe + Google Inc. + Vadim Barkov and with the following additions to the disclaimer: - There is no warranty against interference with your enjoyment of the - library or against infringement. There is no warranty that our - efforts or the library will fulfill any of your particular purposes - or needs. This library is provided with all faults, and the entire - risk of satisfactory quality, performance, accuracy, and effort is with - the user. + There is no warranty against interference with your enjoyment of + the library or against infringement. There is no warranty that our + efforts or the library will fulfill any of your particular purposes + or needs. This library is provided with all faults, and the entire + risk of satisfactory quality, performance, accuracy, and effort is + with the user. Some files in the "contrib" directory and some configure-generated -files that are distributed with libpng have other copyright owners and +files that are distributed with libpng have other copyright owners, and are released under other open source licenses. libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from libpng-0.96, and are distributed according to the same disclaimer and -license as libpng-0.96, with the following individuals added to the list -of Contributing Authors: +license as libpng-0.96, with the following individuals added to the +list of Contributing Authors: - Tom Lane - Glenn Randers-Pehrson - Willem van Schaik + Tom Lane + Glenn Randers-Pehrson + Willem van Schaik libpng versions 0.89, June 1996, through 0.96, May 1997, are Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88, @@ -55,14 +84,14 @@ and are distributed according to the same disclaimer and license as libpng-0.88, with the following individuals added to the list of Contributing Authors: - John Bowler - Kevin Bracey - Sam Bushell - Magnus Holmgren - Greg Roelofs - Tom Tanner + John Bowler + Kevin Bracey + Sam Bushell + Magnus Holmgren + Greg Roelofs + Tom Tanner -Some files in the "scripts" directory have other copyright owners +Some files in the "scripts" directory have other copyright owners, but are released under this license. libpng versions 0.5, May 1995, through 0.88, January 1996, are @@ -71,63 +100,35 @@ Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. For the purposes of this copyright and license, "Contributing Authors" is defined as the following set of individuals: - Andreas Dilger - Dave Martindale - Guy Eric Schalnat - Paul Schmidt - Tim Wegner - -The PNG Reference Library is supplied "AS IS". The Contributing Authors -and Group 42, Inc. disclaim all warranties, expressed or implied, -including, without limitation, the warranties of merchantability and of -fitness for any purpose. The Contributing Authors and Group 42, Inc. -assume no liability for direct, indirect, incidental, special, exemplary, -or consequential damages, which may result from the use of the PNG -Reference Library, even if advised of the possibility of such damage. + Andreas Dilger + Dave Martindale + Guy Eric Schalnat + Paul Schmidt + Tim Wegner + +The PNG Reference Library is supplied "AS IS". The Contributing +Authors and Group 42, Inc. disclaim all warranties, expressed or +implied, including, without limitation, the warranties of +merchantability and of fitness for any purpose. The Contributing +Authors and Group 42, Inc. assume no liability for direct, indirect, +incidental, special, exemplary, or consequential damages, which may +result from the use of the PNG Reference Library, even if advised of +the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this source code, or portions hereof, for any purpose, without fee, subject to the following restrictions: - 1. The origin of this source code must not be misrepresented. - - 2. Altered versions must be plainly marked as such and must not - be misrepresented as being the original source. - - 3. This Copyright notice may not be removed or altered from any - source or altered source distribution. - -The Contributing Authors and Group 42, Inc. specifically permit, without -fee, and encourage the use of this source code as a component to -supporting the PNG file format in commercial products. If you use this -source code in a product, acknowledgment is not required but would be -appreciated. - -END OF COPYRIGHT NOTICE, DISCLAIMER, and LICENSE. - -TRADEMARK: - -The name "libpng" has not been registered by the Copyright owner -as a trademark in any jurisdiction. However, because libpng has -been distributed and maintained world-wide, continually since 1995, -the Copyright owner claims "common-law trademark protection" in any -jurisdiction where common-law trademark is recognized. - -OSI CERTIFICATION: - -Libpng is OSI Certified Open Source Software. OSI Certified Open Source is -a certification mark of the Open Source Initiative. OSI has not addressed -the additional disclaimers inserted at version 1.0.7. + 1. The origin of this source code must not be misrepresented. -EXPORT CONTROL: + 2. Altered versions must be plainly marked as such and must not + be misrepresented as being the original source. -The Copyright owner believes that the Export Control Classification -Number (ECCN) for libpng is EAR99, which means not subject to export -controls or International Traffic in Arms Regulations (ITAR) because -it is open source, publicly available software, that does not contain -any encryption software. See the EAR, paragraphs 734.3(b)(3) and -734.7(b). + 3. This Copyright notice may not be removed or altered from any + source or altered source distribution. -Glenn Randers-Pehrson -glennrp at users.sourceforge.net -July 15, 2018 +The Contributing Authors and Group 42, Inc. specifically permit, +without fee, and encourage the use of this source code as a component +to supporting the PNG file format in commercial products. If you use +this source code in a product, acknowledgment is not required but would +be appreciated. diff --git a/source/libs/libpng/libpng-src/Makefile.am b/source/libs/libpng/libpng-src/Makefile.am index 08db3e599..4f621aa4d 100644 --- a/source/libs/libpng/libpng-src/Makefile.am +++ b/source/libs/libpng/libpng-src/Makefile.am @@ -1,7 +1,7 @@ # Makefile.am, the source file for Makefile.in (and hence Makefile), is # +# Copyright (c) 2018 Cosmin Truta # Copyright (c) 2004-2016 Glenn Randers-Pehrson -# Last changed in libpng 1.6.25 [September 1, 2016] # # This code is released under the libpng license. # For conditions of distribution and use, see the disclaimer @@ -95,7 +95,8 @@ libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_SOURCES = png.c pngerror.c\ if PNG_ARM_NEON libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_SOURCES += arm/arm_init.c\ - arm/filter_neon.S arm/filter_neon_intrinsics.c + arm/filter_neon.S arm/filter_neon_intrinsics.c \ + arm/palette_neon_intrinsics.c endif if PNG_MIPS_MSA @@ -147,7 +148,7 @@ pkgconfig_DATA = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.pc # from those directories being included. This only works if the configure is # not done in the source directory! EXTRA_DIST= \ - ANNOUNCE CHANGES INSTALL LICENSE README TODO \ + ANNOUNCE AUTHORS CHANGES INSTALL LICENSE README TODO TRADEMARK \ pngtest.png pngbar.png pngnow.png pngbar.jpg autogen.sh \ ${srcdir}/contrib ${srcdir}/projects ${srcdir}/scripts \ $(TESTS) $(XFAIL_TESTS) tests/pngstest \ diff --git a/source/libs/libpng/libpng-src/README b/source/libs/libpng/libpng-src/README index f098b27f3..e41e0f549 100644 --- a/source/libs/libpng/libpng-src/README +++ b/source/libs/libpng/libpng-src/README @@ -1,15 +1,16 @@ -README for libpng version 1.6.35 - July 15, 2018 (shared library 16.0) -See the note about version numbers near the top of png.h +README for libpng version 1.6.36 - December 1, 2018 +=================================================== +See the note about version numbers near the top of png.h. See INSTALL for instructions on how to install libpng. Libpng comes in several distribution formats. Get libpng-*.tar.gz or -libpng-*.tar.xz or if you want UNIX-style line endings in the text files, -or lpng*.7z or lpng*.zip if you want DOS-style line endings. +libpng-*.tar.xz or if you want UNIX-style line endings in the text +files, or lpng*.7z or lpng*.zip if you want DOS-style line endings. Version 0.89 was the first official release of libpng. Don't let the -fact that it's the first release fool you. The libpng library has been in -extensive use and testing since mid-1995. By late 1997 it had +fact that it's the first release fool you. The libpng library has been +in extensive use and testing since mid-1995. By late 1997 it had finally gotten to the stage where there hadn't been significant changes to the API in some time, and people have a bad feeling about libraries with versions < 1.0. Version 1.0.0 was released in @@ -60,59 +61,37 @@ the library action on the detection of chunk CRC errors. It is possible to set different actions based on whether the CRC error occurred in a critical or an ancillary chunk. -The changes made to the library, and bugs fixed are based on discussions -on the PNG-implement mailing list and not on material submitted -privately to Guy, Andreas, or Glenn. They will forward any good -suggestions to the list. - -For a detailed description on using libpng, read libpng-manual.txt. For -examples of libpng in a program, see example.c and pngtest.c. For usage -information and restrictions (what little they are) on libpng, see -png.h. For a description on using zlib (the compression library used by -libpng) and zlib's restrictions, see zlib.h +For a detailed description on using libpng, read libpng-manual.txt. +For examples of libpng in a program, see example.c and pngtest.c. For +usage information and restrictions (what little they are) on libpng, +see png.h. For a description on using zlib (the compression library +used by libpng) and zlib's restrictions, see zlib.h I have included a general makefile, as well as several machine and -compiler specific ones, but you may have to modify one for your own needs. +compiler specific ones, but you may have to modify one for your own +needs. You should use zlib 1.0.4 or later to run this, but it MAY work with versions as old as zlib 0.95. Even so, there are bugs in older zlib versions which can cause the output of invalid compression streams for -some images. You will definitely need zlib 1.0.4 or later if you are -taking advantage of the MS-DOS "far" structure allocation for the small -and medium memory models. You should also note that zlib is a -compression library that is useful for more things than just PNG files. -You can use zlib as a drop-in replacement for fread() and fwrite() if -you are so inclined. +some images. + +You should also note that zlib is a compression library that is useful +for more things than just PNG files. You can use zlib as a drop-in +replacement for fread() and fwrite(), if you are so inclined. -zlib should be available at the same place that libpng is, or at zlib.net. +zlib should be available at the same place that libpng is, or at +https://zlib.net. You may also want a copy of the PNG specification. It is available as an RFC, a W3C Recommendation, and an ISO/IEC Standard. You can find these at http://www.libpng.org/pub/png/pngdocs.html . This code is currently being archived at libpng.sourceforge.io in the -[DOWNLOAD] area, and at http://libpng.download/src . If you -can't find it in any of those places, e-mail me, and I'll help you find it. - -I am not a lawyer, but I believe that the Export Control Classification -Number (ECCN) for libpng is EAR99, which means not subject to export -controls or International Traffic in Arms Regulations (ITAR) because it -is open source, publicly available software, that does not contain any -encryption software. See the EAR, paragraphs 734.3(b)(3) and 734.7(b). - -If you have any code changes, requests, problems, etc., please e-mail -them to me. Also, I'd appreciate any make files or project files, -and any modifications you needed to make to get libpng to compile, -along with a #define variable to tell what compiler/system you are on. -If you needed to add transformations to libpng, or wish libpng would -provide the image in a different way, drop me a note (and code, if -possible), so I can consider supporting the transformation. -Finally, if you get any warning messages when compiling libpng -(note: not zlib), and they are easy to fix, I'd appreciate the -fix. Please mention "libpng" somewhere in the subject line. Thanks. - -This release was created and will be supported by myself (of course -based in a large way on Guy's and Andreas' earlier work), and the PNG +[DOWNLOAD] area, and at http://libpng.download/src . + +This release, based in a large way on Glenn's, Guy's and Andreas' +earlier work, was created and will be supported by myself and the PNG development group. Send comments/corrections/commendations to png-mng-implement at @@ -120,34 +99,21 @@ lists.sourceforge.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement to subscribe). -You can't reach Guy, the original libpng author, at the addresses -given in previous versions of this document. He and Andreas will -read mail addressed to the png-implement list, however. - -Please do not send general questions about PNG. Send them to -png-mng-misc at lists.sf.net (subscription required; visit +Send general questions about the PNG specification to png-mng-misc +at lists.sourceforge.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-misc to -subscribe). If you have a question about something -in the PNG specification that is related to using libpng, send it -to me. Send me any questions that start with "I was using libpng, -and ...". If in doubt, send questions to me. I'll bounce them -to others, if necessary. - -Please do not send suggestions on how to change PNG. We have -been discussing PNG for twenty years now, and it is official and -finished. If you have suggestions for libpng, however, I'll -gladly listen. Even if your suggestion is not used immediately, -it may be used later. +subscribe). Files in this distribution: ANNOUNCE => Announcement of this version, with recent changes + AUTHORS => List of contributing authors CHANGES => Description of changes between libpng versions KNOWNBUG => List of known bugs and deficiencies LICENSE => License to use and redistribute libpng README => This file TODO => Things not implemented in the current library - Y2KINFO => Statement of Y2K compliance + TRADEMARK => Trademark information example.c => Example code for using libpng functions libpng.3 => manual page for libpng (includes libpng-manual.txt) libpng-manual.txt => Description of libpng and its functions @@ -208,15 +174,10 @@ Files in this distribution: scripts => Directory containing scripts for building libpng: (see scripts/README.txt for the list of scripts) -Good luck, and happy coding. - --Glenn Randers-Pehrson (current maintainer, since 1998) - Internet: glennrp at users.sourceforge.net - --Andreas Eric Dilger (former maintainer, 1996-1997) - Internet: adilger at enel.ucalgary.ca - Web: http://www-mddsp.enel.ucalgary.ca/People/adilger/ +Good luck, and happy coding! --Guy Eric Schalnat (original author and former maintainer, 1995-1996) - (formerly of Group 42, Inc) - Internet: gschal at infinet.com + * Cosmin Truta (current maintainer, since 2018) + * Glenn Randers-Pehrson (former maintainer, 1998-2018) + * Andreas Eric Dilger (former maintainer, 1996-1997) + * Guy Eric Schalnat (original author and former maintainer, 1995-1996) + (formerly of Group 42, Inc.) diff --git a/source/libs/libpng/libpng-src/TODO b/source/libs/libpng/libpng-src/TODO index 36d6092a2..562dab069 100644 --- a/source/libs/libpng/libpng-src/TODO +++ b/source/libs/libpng/libpng-src/TODO @@ -1,30 +1,23 @@ -/* TODO - list of things to do for libpng: -Final bug fixes. -Better C++ wrapper/full C++ implementation? -Fix problem with C++ and EXTERN "C". -cHRM transformation. -Remove setjmp/longjmp usage in favor of returning error codes. As a start on - this, minimize the use of png_error(), replacing them with - png_warning(); return(0); or similar. -Palette creation. -Add "grayscale->palette" transformation and "palette->grayscale" detection. -Improved dithering. -Multi-lingual error and warning message support. -Complete sRGB transformation (presently it simply uses gamma=0.45455). -Man pages for function calls. -Better documentation. -Better filter selection - (counting huffman bits/precompression? filter inertia? filter costs?). -Histogram creation. -Text conversion between different code pages (Latin-1 -> Mac and DOS). -Avoid building gamma tables whenever possible. -Use greater precision when changing to linear gamma for compositing against - background and doing rgb-to-gray transformation. -Investigate pre-incremented loop counters and other loop constructions. -Add interpolated method of handling interlacing. -Extend pngvalid.c to validate more of the libpng transformations. -Refactor preprocessor conditionals to compile entire statements - -*/ +* Fix all defects (duh!) +* Better C++ wrapper / full C++ implementation (?) +* Fix the problems with C++ and 'extern "C"'. +* cHRM transformation. +* Palette creation. +* "grayscale->palette" transformation and "palette->grayscale" detection. +* Improved dithering. +* Multi-lingual error and warning message support. +* Complete sRGB transformation. (Currently it simply uses gamma=0.45455.) +* Man pages for function calls. +* Better documentation. +* Better filter selection + (e.g., counting huffman bits/precompression; filter inertia; filter costs). +* Histogram creation. +* Text conversion between different code pages (e.g., Latin-1 -> Mac). +* Avoid building gamma tables whenever possible. +* Greater precision in changing to linear gamma for compositing against + background, and in doing rgb-to-gray transformations. +* Investigate pre-incremented loop counters and other loop constructions. +* Interpolated method of handling interlacing. +* More validations for libpng transformations. diff --git a/source/libs/libpng/libpng-src/TRADEMARK b/source/libs/libpng/libpng-src/TRADEMARK new file mode 100644 index 000000000..ac667187d --- /dev/null +++ b/source/libs/libpng/libpng-src/TRADEMARK @@ -0,0 +1,8 @@ +TRADEMARK +========= + +The name "libpng" has not been registered by the Copyright owners +as a trademark in any jurisdiction. However, because libpng has +been distributed and maintained world-wide, continually since 1995, +the Copyright owners claim "common-law trademark protection" in any +jurisdiction where common-law trademark is recognized. diff --git a/source/libs/libpng/libpng-src/arm/arm_init.c b/source/libs/libpng/libpng-src/arm/arm_init.c index 02df812e7..a34ecdbef 100644 --- a/source/libs/libpng/libpng-src/arm/arm_init.c +++ b/source/libs/libpng/libpng-src/arm/arm_init.c @@ -1,14 +1,15 @@ /* arm_init.c - NEON optimised filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2014,2016 Glenn Randers-Pehrson * Written by Mans Rullgard, 2011. - * Last changed in libpng 1.6.22 [May 26, 2016] * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h */ + /* Below, after checking __linux__, various non-C90 POSIX 1003.1 functions are * called. */ diff --git a/source/libs/libpng/libpng-src/arm/filter_neon.S b/source/libs/libpng/libpng-src/arm/filter_neon.S index 000764cd2..2308aad13 100644 --- a/source/libs/libpng/libpng-src/arm/filter_neon.S +++ b/source/libs/libpng/libpng-src/arm/filter_neon.S @@ -1,9 +1,9 @@ /* filter_neon.S - NEON optimised filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2014,2017 Glenn Randers-Pehrson * Written by Mans Rullgard, 2011. - * Last changed in libpng 1.6.31 [July 27, 2017] * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer diff --git a/source/libs/libpng/libpng-src/arm/filter_neon_intrinsics.c b/source/libs/libpng/libpng-src/arm/filter_neon_intrinsics.c index ea7e356bc..553c0be21 100644 --- a/source/libs/libpng/libpng-src/arm/filter_neon_intrinsics.c +++ b/source/libs/libpng/libpng-src/arm/filter_neon_intrinsics.c @@ -1,12 +1,11 @@ /* filter_neon_intrinsics.c - NEON optimised filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2014,2016 Glenn Randers-Pehrson * Written by James Yu <james.yu at linaro.org>, October 2013. * Based on filter_neon.S, written by Mans Rullgard, 2011. * - * Last changed in libpng 1.6.22 [May 26, 2016] - * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h @@ -19,7 +18,11 @@ /* This code requires -mfpu=neon on the command line: */ #if PNG_ARM_NEON_IMPLEMENTATION == 1 /* intrinsics code from pngpriv.h */ -#include <arm_neon.h> +#if defined(_MSC_VER) && defined(_M_ARM64) +# include <arm64_neon.h> +#else +# include <arm_neon.h> +#endif /* libpng row pointers are not necessarily aligned to any particular boundary, * however this code will only work with appropriate alignment. arm/arm_init.c @@ -33,6 +36,11 @@ * 'type'. This is written this way just to hide the GCC strict aliasing * warning; note that the code is safe because there never is an alias between * the input and output pointers. + * + * When compiling with MSVC ARM64, the png_ldr macro can't be passed directly + * to vst4_lane_u32, because of an internal compiler error inside MSVC. + * To avoid this compiler bug, we use a temporary variable (vdest_val) to store + * the result of png_ldr. */ #define png_ldr(type,pointer)\ (temp_pointer = png_ptr(type,pointer), *temp_pointer) @@ -125,12 +133,15 @@ png_read_filter_row_sub4_neon(png_row_infop row_info, png_bytep row, uint8x8x4_t *vrpt = png_ptr(uint8x8x4_t,&vtmp); uint8x8x4_t vrp = *vrpt; uint32x2x4_t *temp_pointer; + uint32x2x4_t vdest_val; vdest.val[0] = vadd_u8(vdest.val[3], vrp.val[0]); vdest.val[1] = vadd_u8(vdest.val[0], vrp.val[1]); vdest.val[2] = vadd_u8(vdest.val[1], vrp.val[2]); vdest.val[3] = vadd_u8(vdest.val[2], vrp.val[3]); - vst4_lane_u32(png_ptr(uint32_t,rp), png_ldr(uint32x2x4_t,&vdest), 0); + + vdest_val = png_ldr(uint32x2x4_t, &vdest); + vst4_lane_u32(png_ptr(uint32_t,rp), vdest_val, 0); } PNG_UNUSED(prev_row) @@ -223,6 +234,7 @@ png_read_filter_row_avg4_neon(png_row_infop row_info, png_bytep row, uint8x8x4_t *vrpt, *vppt; uint8x8x4_t vrp, vpp; uint32x2x4_t *temp_pointer; + uint32x2x4_t vdest_val; vtmp = vld4_u32(png_ptr(uint32_t,rp)); vrpt = png_ptr(uint8x8x4_t,&vtmp); @@ -240,7 +252,8 @@ png_read_filter_row_avg4_neon(png_row_infop row_info, png_bytep row, vdest.val[3] = vhadd_u8(vdest.val[2], vpp.val[3]); vdest.val[3] = vadd_u8(vdest.val[3], vrp.val[3]); - vst4_lane_u32(png_ptr(uint32_t,rp), png_ldr(uint32x2x4_t,&vdest), 0); + vdest_val = png_ldr(uint32x2x4_t, &vdest); + vst4_lane_u32(png_ptr(uint32_t,rp), vdest_val, 0); } } @@ -359,6 +372,7 @@ png_read_filter_row_paeth4_neon(png_row_infop row_info, png_bytep row, uint8x8x4_t *vrpt, *vppt; uint8x8x4_t vrp, vpp; uint32x2x4_t *temp_pointer; + uint32x2x4_t vdest_val; vtmp = vld4_u32(png_ptr(uint32_t,rp)); vrpt = png_ptr(uint8x8x4_t,&vtmp); @@ -378,7 +392,8 @@ png_read_filter_row_paeth4_neon(png_row_infop row_info, png_bytep row, vlast = vpp.val[3]; - vst4_lane_u32(png_ptr(uint32_t,rp), png_ldr(uint32x2x4_t,&vdest), 0); + vdest_val = png_ldr(uint32x2x4_t, &vdest); + vst4_lane_u32(png_ptr(uint32_t,rp), vdest_val, 0); } } diff --git a/source/libs/libpng/libpng-src/arm/palette_neon_intrinsics.c b/source/libs/libpng/libpng-src/arm/palette_neon_intrinsics.c new file mode 100644 index 000000000..fa02d6a8b --- /dev/null +++ b/source/libs/libpng/libpng-src/arm/palette_neon_intrinsics.c @@ -0,0 +1,149 @@ + +/* palette_neon_intrinsics.c - NEON optimised palette expansion functions + * + * Copyright (c) 2018 Cosmin Truta + * Copyright (c) 2017-2018 Arm Holdings. All rights reserved. + * Written by Richard Townsend <Richard.Townsend@arm.com>, February 2017. + * + * This code is released under the libpng license. + * For conditions of distribution and use, see the disclaimer + * and license in png.h + */ + +#include "../pngpriv.h" + +#if PNG_ARM_NEON_IMPLEMENTATION == 1 + +#if defined(_MSC_VER) && defined(_M_ARM64) +# include <arm64_neon.h> +#else +# include <arm_neon.h> +#endif + +/* Build an RGBA palette from the RGB and separate alpha palettes. */ +void +png_riffle_palette_rgba(png_structrp png_ptr, png_row_infop row_info) +{ + png_const_colorp palette = png_ptr->palette; + png_bytep riffled_palette = png_ptr->riffled_palette; + png_const_bytep trans_alpha = png_ptr->trans_alpha; + int num_trans = png_ptr->num_trans; + int i; + + /* Initially black, opaque. */ + uint8x16x4_t w = {{ + vdupq_n_u8(0x00), + vdupq_n_u8(0x00), + vdupq_n_u8(0x00), + vdupq_n_u8(0xff), + }}; + + if (row_info->bit_depth != 8) + { + png_error(png_ptr, "bit_depth must be 8 for png_riffle_palette_rgba"); + return; + } + + /* First, riffle the RGB colours into a RGBA palette, the A value is + * set to opaque for now. + */ + for (i = 0; i < (1 << row_info->bit_depth); i += 16) + { + uint8x16x3_t v = vld3q_u8((png_const_bytep)(palette + i)); + w.val[0] = v.val[0]; + w.val[1] = v.val[1]; + w.val[2] = v.val[2]; + vst4q_u8(riffled_palette + (i << 2), w); + } + + /* Fix up the missing transparency values. */ + for (i = 0; i < num_trans; i++) + riffled_palette[(i << 2) + 3] = trans_alpha[i]; +} + +/* Expands a palettized row into RGBA. */ +int +png_do_expand_palette_neon_rgba(png_structrp png_ptr, png_row_infop row_info, + png_const_bytep row, png_bytepp ssp, png_bytepp ddp) +{ + png_uint_32 row_width = row_info->width; + const png_uint_32 *riffled_palette = + (const png_uint_32 *)png_ptr->riffled_palette; + const png_int_32 pixels_per_chunk = 4; + int i; + + if (row_width < pixels_per_chunk) + return 0; + + /* This function originally gets the last byte of the output row. + * The NEON part writes forward from a given position, so we have + * to seek this back by 4 pixels x 4 bytes. + */ + *ddp = *ddp - ((pixels_per_chunk * sizeof(png_uint_32)) - 1); + + for (i = 0; i < row_width; i += pixels_per_chunk) + { + uint32x4_t cur; + png_bytep sp = *ssp - i, dp = *ddp - (i << 2); + cur = vld1q_dup_u32 (riffled_palette + *(sp - 3)); + cur = vld1q_lane_u32(riffled_palette + *(sp - 2), cur, 1); + cur = vld1q_lane_u32(riffled_palette + *(sp - 1), cur, 2); + cur = vld1q_lane_u32(riffled_palette + *(sp - 0), cur, 3); + vst1q_u32((void *)dp, cur); + } + if (i != row_width) + { + /* Remove the amount that wasn't processed. */ + i -= pixels_per_chunk; + } + + /* Decrement output pointers. */ + *ssp = *ssp - i; + *ddp = *ddp - (i << 2); + return i; +} + +/* Expands a palettized row into RGB format. */ +int +png_do_expand_palette_neon_rgb(png_structrp png_ptr, png_row_infop row_info, + png_const_bytep row, png_bytepp ssp, png_bytepp ddp) +{ + png_uint_32 row_width = row_info->width; + png_const_bytep palette = (png_const_bytep)png_ptr->palette; + const png_uint_32 pixels_per_chunk = 8; + int i; + + if (row_width <= pixels_per_chunk) + return 0; + + /* Seeking this back by 8 pixels x 3 bytes. */ + *ddp = *ddp - ((pixels_per_chunk * sizeof(png_color)) - 1); + + for (i = 0; i < row_width; i += pixels_per_chunk) + { + uint8x8x3_t cur; + png_bytep sp = *ssp - i, dp = *ddp - ((i << 1) + i); + cur = vld3_dup_u8(palette + sizeof(png_color) * (*(sp - 7))); + cur = vld3_lane_u8(palette + sizeof(png_color) * (*(sp - 6)), cur, 1); + cur = vld3_lane_u8(palette + sizeof(png_color) * (*(sp - 5)), cur, 2); + cur = vld3_lane_u8(palette + sizeof(png_color) * (*(sp - 4)), cur, 3); + cur = vld3_lane_u8(palette + sizeof(png_color) * (*(sp - 3)), cur, 4); + cur = vld3_lane_u8(palette + sizeof(png_color) * (*(sp - 2)), cur, 5); + cur = vld3_lane_u8(palette + sizeof(png_color) * (*(sp - 1)), cur, 6); + cur = vld3_lane_u8(palette + sizeof(png_color) * (*(sp - 0)), cur, 7); + vst3_u8((void *)dp, cur); + } + + if (i != row_width) + { + /* Remove the amount that wasn't processed. */ + i -= pixels_per_chunk; + } + + /* Decrement output pointers. */ + *ssp = *ssp - i; + *ddp = *ddp - ((i << 1) + i); + return i; +} + +#endif /* PNG_ARM_NEON_IMPLEMENTATION */ diff --git a/source/libs/libpng/libpng-src/config.h.in b/source/libs/libpng/libpng-src/config.h.in index a0ec9bc14..2931048bf 100644 --- a/source/libs/libpng/libpng-src/config.h.in +++ b/source/libs/libpng/libpng-src/config.h.in @@ -18,9 +18,6 @@ /* Define to 1 if you have the <memory.h> header file. */ #undef HAVE_MEMORY_H -/* Define to 1 if you have the `memset' function. */ -#undef HAVE_MEMSET - /* Define to 1 if you have the `pow' function. */ #undef HAVE_POW diff --git a/source/libs/libpng/libpng-src/configure.ac b/source/libs/libpng/libpng-src/configure.ac index d1787c554..1ed63eae7 100644 --- a/source/libs/libpng/libpng-src/configure.ac +++ b/source/libs/libpng/libpng-src/configure.ac @@ -1,7 +1,7 @@ # configure.ac +# Copyright (c) 2018 Cosmin Truta # Copyright (c) 2004-2016 Glenn Randers-Pehrson -# Last changed in libpng 1.6.25 [September 1, 2016] # This code is released under the libpng license. # For conditions of distribution and use, see the disclaimer @@ -25,7 +25,7 @@ AC_PREREQ([2.68]) dnl Version number stuff here: -AC_INIT([libpng],[1.6.35],[png-mng-implement@lists.sourceforge.net]) +AC_INIT([libpng],[1.6.36],[png-mng-implement@lists.sourceforge.net]) AC_CONFIG_MACRO_DIR([scripts]) # libpng does not follow GNU file name conventions (hence 'foreign') @@ -46,10 +46,10 @@ dnl automake, so the following is not necessary (and is not defined anyway): dnl AM_PREREQ([1.11.2]) dnl stop configure from automagically running automake -PNGLIB_VERSION=1.6.35 +PNGLIB_VERSION=1.6.36 PNGLIB_MAJOR=1 PNGLIB_MINOR=6 -PNGLIB_RELEASE=35 +PNGLIB_RELEASE=36 dnl End of version number stuff @@ -144,7 +144,6 @@ AC_C_RESTRICT # Checks for library functions. AC_FUNC_STRTOD -AC_CHECK_FUNCS([memset], , AC_MSG_ERROR(memset not found in libc)) AC_CHECK_FUNCS([pow], , AC_CHECK_LIB(m, pow, , AC_MSG_ERROR(cannot find pow)) ) # Some later POSIX 1003.1 functions are required for test programs, failure here diff --git a/source/libs/libpng/libpng-src/contrib/conftest/pngcp.dfa b/source/libs/libpng/libpng-src/contrib/conftest/pngcp.dfa index acf200d32..31c411d5f 100644 --- a/source/libs/libpng/libpng-src/contrib/conftest/pngcp.dfa +++ b/source/libs/libpng/libpng-src/contrib/conftest/pngcp.dfa @@ -52,6 +52,6 @@ option TEXT on option USER_LIMITS on option SET_USER_LIMITS on -# these are are just required for specific customizations +# these are just required for specific customizations option WRITE_CUSTOMIZE_ZTXT_COMPRESSION on option WRITE_CUSTOMIZE_COMPRESSION on diff --git a/source/libs/libpng/libpng-src/contrib/examples/pngpixel.c b/source/libs/libpng/libpng-src/contrib/examples/pngpixel.c index f762379ed..9185d518f 100644 --- a/source/libs/libpng/libpng-src/contrib/examples/pngpixel.c +++ b/source/libs/libpng/libpng-src/contrib/examples/pngpixel.c @@ -42,7 +42,7 @@ component(png_const_bytep row, png_uint_32 x, unsigned int c, png_uint_32 bit_offset_hi = bit_depth * ((x >> 6) * channels); png_uint_32 bit_offset_lo = bit_depth * ((x & 0x3f) * channels + c); - row = (png_const_bytep)(((PNG_CONST png_byte (*)[8])row) + bit_offset_hi); + row = (png_const_bytep)(((const png_byte (*)[8])row) + bit_offset_hi); row += bit_offset_lo >> 3; bit_offset_lo &= 0x07; @@ -73,7 +73,7 @@ static void print_pixel(png_structp png_ptr, png_infop info_ptr, png_const_bytep row, png_uint_32 x) { - PNG_CONST unsigned int bit_depth = png_get_bit_depth(png_ptr, info_ptr); + unsigned int bit_depth = png_get_bit_depth(png_ptr, info_ptr); switch (png_get_color_type(png_ptr, info_ptr)) { @@ -87,7 +87,7 @@ print_pixel(png_structp png_ptr, png_infop info_ptr, png_const_bytep row, */ case PNG_COLOR_TYPE_PALETTE: { - PNG_CONST int index = component(row, x, 0, bit_depth, 1); + int index = component(row, x, 0, bit_depth, 1); png_colorp palette = NULL; int num_palette = 0; diff --git a/source/libs/libpng/libpng-src/contrib/gregbook/readpng2.c b/source/libs/libpng/libpng-src/contrib/gregbook/readpng2.c index 5d13e1530..610b3cd87 100644 --- a/source/libs/libpng/libpng-src/contrib/gregbook/readpng2.c +++ b/source/libs/libpng/libpng-src/contrib/gregbook/readpng2.c @@ -146,7 +146,7 @@ int readpng2_init(mainprog_info *mainprog_ptr) /* These byte strings were copied from png.h. If a future version * of readpng2.c recognizes more chunks, add them to this list. */ - static PNG_CONST png_byte chunks_to_process[] = { + static const png_byte chunks_to_process[] = { 98, 75, 71, 68, '\0', /* bKGD */ 103, 65, 77, 65, '\0', /* gAMA */ 115, 82, 71, 66, '\0', /* sRGB */ diff --git a/source/libs/libpng/libpng-src/contrib/libtests/makepng.c b/source/libs/libpng/libpng-src/contrib/libtests/makepng.c index e58a61d02..312062bda 100644 --- a/source/libs/libpng/libpng-src/contrib/libtests/makepng.c +++ b/source/libs/libpng/libpng-src/contrib/libtests/makepng.c @@ -661,7 +661,7 @@ generate_row(png_bytep row, size_t rowbytes, unsigned int y, int color_type, { case 1: { - const png_uint_32 luma = colors[1]; + png_uint_32 luma = colors[1]; png_uint_32 x; for (x=0; x<=size_max; ++x) @@ -672,8 +672,8 @@ generate_row(png_bytep row, size_t rowbytes, unsigned int y, int color_type, case 2: { - const png_uint_32 luma = colors[1]; - const png_uint_32 alpha = colors[2]; + png_uint_32 luma = colors[1]; + png_uint_32 alpha = colors[2]; png_uint_32 x; for (x=0; x<size_max; ++x) @@ -688,9 +688,9 @@ generate_row(png_bytep row, size_t rowbytes, unsigned int y, int color_type, case 3: { - const png_uint_32 red = colors[1]; - const png_uint_32 green = colors[2]; - const png_uint_32 blue = colors[3]; + png_uint_32 red = colors[1]; + png_uint_32 green = colors[2]; + png_uint_32 blue = colors[3]; png_uint_32 x; for (x=0; x<=size_max; ++x) @@ -707,10 +707,10 @@ generate_row(png_bytep row, size_t rowbytes, unsigned int y, int color_type, case 4: { - const png_uint_32 red = colors[1]; - const png_uint_32 green = colors[2]; - const png_uint_32 blue = colors[3]; - const png_uint_32 alpha = colors[4]; + png_uint_32 red = colors[1]; + png_uint_32 green = colors[2]; + png_uint_32 blue = colors[3]; + png_uint_32 alpha = colors[4]; png_uint_32 x; for (x=0; x<=size_max; ++x) @@ -812,7 +812,7 @@ write_png(const char **name, FILE *fp, int color_type, int bit_depth, png_error(png_ptr, "OOM allocating info structure"); { - const unsigned int size = + unsigned int size = image_size_of_type(color_type, bit_depth, colors, small); unsigned int ysize; png_fixed_point real_gamma = 45455; /* For sRGB */ @@ -824,7 +824,7 @@ write_png(const char **name, FILE *fp, int color_type, int bit_depth, */ if (small) { - const unsigned int pixel_depth = + unsigned int pixel_depth = pixel_depth_of_type(color_type, bit_depth); if (pixel_depth <= 8U) @@ -1378,10 +1378,10 @@ static void insert_sBIT(png_structp png_ptr, png_infop info_ptr, int nparams, png_charpp params) { - const int ct = png_get_color_type(png_ptr, info_ptr); - const int c = (ct & PNG_COLOR_MASK_COLOR ? 3 : 1) + + int ct = png_get_color_type(png_ptr, info_ptr); + int c = (ct & PNG_COLOR_MASK_COLOR ? 3 : 1) + (ct & PNG_COLOR_MASK_ALPHA ? 1 : 0); - const unsigned int maxval = + unsigned int maxval = ct & PNG_COLOR_MASK_PALETTE ? 8U : png_get_bit_depth(png_ptr, info_ptr); png_color_8 sBIT; @@ -1856,7 +1856,7 @@ main(int argc, char **argv) /* Check the colors */ { - const unsigned int lim = (color_type == PNG_COLOR_TYPE_PALETTE ? 255U : + unsigned int lim = (color_type == PNG_COLOR_TYPE_PALETTE ? 255U : (1U<<bit_depth)-1); unsigned int i; diff --git a/source/libs/libpng/libpng-src/contrib/libtests/pngimage.c b/source/libs/libpng/libpng-src/contrib/libtests/pngimage.c index 998d58c50..f130c043d 100644 --- a/source/libs/libpng/libpng-src/contrib/libtests/pngimage.c +++ b/source/libs/libpng/libpng-src/contrib/libtests/pngimage.c @@ -1446,7 +1446,7 @@ test_one_file(struct display *dp, const char *filename) * unsigned, because some transforms are negative on a 16-bit system. */ unsigned int active = dp->active_transforms; - const int exhaustive = (dp->options & EXHAUSTIVE) != 0; + int exhaustive = (dp->options & EXHAUSTIVE) != 0; unsigned int current = first_transform(active); unsigned int bad_transforms = 0; unsigned int bad_combo = ~0U; /* bitwise AND of failing transforms */ @@ -1572,7 +1572,7 @@ do_test(struct display *dp, const char *file) } int -main(const int argc, const char * const * const argv) +main(int argc, char **argv) { /* For each file on the command line test it with a range of transforms */ int option_end, ilog = 0; @@ -1674,7 +1674,7 @@ main(const int argc, const char * const * const argv) /* Here on any return, including failures, except user/internal issues */ { - const int pass = (d.options & STRICT) ? + int pass = (d.options & STRICT) ? RESULT_STRICT(d.results) : RESULT_RELAXED(d.results); if (!pass) diff --git a/source/libs/libpng/libpng-src/contrib/libtests/pngstest.c b/source/libs/libpng/libpng-src/contrib/libtests/pngstest.c index 74c8d100c..a368bf0f4 100644 --- a/source/libs/libpng/libpng-src/contrib/libtests/pngstest.c +++ b/source/libs/libpng/libpng-src/contrib/libtests/pngstest.c @@ -372,7 +372,7 @@ print_opts(png_uint_32 opts) */ #define FORMAT_COUNT 64 #define FORMAT_MASK 0x3f -static PNG_CONST char * PNG_CONST format_names[FORMAT_COUNT] = +static const char * const format_names[FORMAT_COUNT] = { "sRGB-gray", "sRGB-gray+alpha", @@ -2346,8 +2346,8 @@ static int logpixel(const Transform *transform, png_uint_32 x, png_uint_32 y, const Pixel *in, const Pixel *calc, const Pixel *out, const char *reason) { - const png_uint_32 in_format = transform->in_image->image.format; - const png_uint_32 out_format = transform->out_image->image.format; + png_uint_32 in_format = transform->in_image->image.format; + png_uint_32 out_format = transform->out_image->image.format; png_uint_32 back_format = out_format & ~PNG_FORMAT_FLAG_ALPHA; const char *via_linear = ""; @@ -2602,12 +2602,12 @@ compare_two_images(Image *a, Image *b, int via_linear, ptrdiff_t strideb = b->stride; png_const_bytep rowa = a->buffer+16; png_const_bytep rowb = b->buffer+16; - const png_uint_32 width = a->image.width; - const png_uint_32 height = a->image.height; - const png_uint_32 formata = a->image.format; - const png_uint_32 formatb = b->image.format; - const unsigned int a_sample = PNG_IMAGE_SAMPLE_SIZE(formata); - const unsigned int b_sample = PNG_IMAGE_SAMPLE_SIZE(formatb); + png_uint_32 width = a->image.width; + png_uint_32 height = a->image.height; + png_uint_32 formata = a->image.format; + png_uint_32 formatb = b->image.format; + unsigned int a_sample = PNG_IMAGE_SAMPLE_SIZE(formata); + unsigned int b_sample = PNG_IMAGE_SAMPLE_SIZE(formatb); int alpha_added, alpha_removed; int bchannels; png_uint_32 y; @@ -2726,7 +2726,7 @@ compare_two_images(Image *a, Image *b, int via_linear, result = 0; } - /* If reqested copy the error values back from the Transform. */ + /* If requested, copy the error values back from the Transform. */ if (a->opts & ACCUMULATE) { tr.error_ptr[0] = tr.error[0]; @@ -2790,8 +2790,7 @@ compare_two_images(Image *a, Image *b, int via_linear, (formata & (formatb ^ PNG_FORMAT_FLAG_COLOR) & PNG_FORMAT_FLAG_COLOR))) { /* Was an alpha channel changed? */ - const png_uint_32 alpha_changed = (formata ^ formatb) & - PNG_FORMAT_FLAG_ALPHA; + png_uint_32 alpha_changed = (formata ^ formatb) & PNG_FORMAT_FLAG_ALPHA; /* Was an alpha channel removed? (The third test.) If so the direct * comparison is only possible if the input alpha is opaque. @@ -2932,7 +2931,7 @@ compare_two_images(Image *a, Image *b, int via_linear, } } - /* If reqested copy the error values back from the Transform. */ + /* If requested, copy the error values back from the Transform. */ if (a->opts & ACCUMULATE) { tr.error_ptr[0] = tr.error[0]; @@ -3627,7 +3626,7 @@ main(int argc, char **argv) if (arg[0] == '-') { - const int term = (arg[1] == '0' ? 0 : '\n'); + int term = (arg[1] == '0' ? 0 : '\n'); unsigned int ich = 0; /* Loop reading files, use a static buffer to simplify this and just diff --git a/source/libs/libpng/libpng-src/contrib/libtests/pngunknown.c b/source/libs/libpng/libpng-src/contrib/libtests/pngunknown.c index d9cc4488b..05bdd833d 100644 --- a/source/libs/libpng/libpng-src/contrib/libtests/pngunknown.c +++ b/source/libs/libpng/libpng-src/contrib/libtests/pngunknown.c @@ -56,7 +56,7 @@ defined(PNG_SAVE_UNKNOWN_CHUNKS_SUPPORTED) #if PNG_LIBPNG_VER < 10500 -/* This deliberately lacks the PNG_CONST. */ +/* This deliberately lacks the const. */ typedef png_byte *png_const_bytep; /* This is copied from 1.5.1 png.h: */ diff --git a/source/libs/libpng/libpng-src/contrib/libtests/pngvalid.c b/source/libs/libpng/libpng-src/contrib/libtests/pngvalid.c index e66f2fa61..d800110c7 100644 --- a/source/libs/libpng/libpng-src/contrib/libtests/pngvalid.c +++ b/source/libs/libpng/libpng-src/contrib/libtests/pngvalid.c @@ -21,6 +21,7 @@ #define _POSIX_SOURCE 1 #define _ISOC99_SOURCE 1 /* For floating point */ #define _GNU_SOURCE 1 /* For the floating point exception extension */ +#define _BSD_SOURCE 1 /* For the floating point exception extension */ #include <signal.h> #include <stdio.h> @@ -961,7 +962,7 @@ bits_of(png_uint_32 num) return b; /* 0..32 */ } -/* Main interface to file storeage, after writing a new PNG file (see the API +/* Main interface to file storage, after writing a new PNG file (see the API * below) call store_storefile to store the result with the given name and id. */ static void @@ -2589,7 +2590,7 @@ static double digitize(double value, int depth, int do_round) * rounding and 'do_round' should be 1, if it is 0 the digitized value will * be truncated. */ - const unsigned int digitization_factor = (1U << depth) -1; + unsigned int digitization_factor = (1U << depth) - 1; /* Limiting the range is done as a convenience to the caller - it's easier to * do it once here than every time at the call site. @@ -3687,8 +3688,8 @@ init_standard_palette(png_store *ps, png_structp pp, png_infop pi, int npalette, #ifdef PNG_WRITE_tRNS_SUPPORTED static void -set_random_tRNS(png_structp pp, png_infop pi, const png_byte colour_type, - const int bit_depth) +set_random_tRNS(png_structp pp, png_infop pi, png_byte colour_type, + int bit_depth) { /* To make this useful the tRNS color needs to match at least one pixel. * Random values are fine for gray, including the 16-bit case where we know @@ -3696,7 +3697,7 @@ set_random_tRNS(png_structp pp, png_infop pi, const png_byte colour_type, * method as only 65536 different RGB values are generated. */ png_color_16 tRNS; - const png_uint_16 mask = (png_uint_16)((1U << bit_depth)-1); + png_uint_16 mask = (png_uint_16)((1U << bit_depth)-1); R8(tRNS); /* makes unset fields random */ @@ -4337,7 +4338,7 @@ make_size_image(png_store* const ps, png_byte const colour_type, /* Make a name and get an appropriate id for the store: */ char name[FILE_NAME_SIZE]; - const png_uint_32 id = FILEID(colour_type, bit_depth, 0/*palette*/, + png_uint_32 id = FILEID(colour_type, bit_depth, 0/*palette*/, interlace_type, w, h, do_interlace); standard_name_from_id(name, sizeof name, 0, id); @@ -4413,7 +4414,7 @@ make_size_image(png_store* const ps, png_byte const colour_type, for (pass=0; pass<npasses; ++pass) { /* The following two are for checking the macros: */ - const png_uint_32 wPass = PNG_PASS_COLS(w, pass); + png_uint_32 wPass = PNG_PASS_COLS(w, pass); /* If do_interlace is set we don't call png_write_row for every * row because some of them are empty. In fact, for a 1x1 image, @@ -4645,7 +4646,7 @@ make_error(png_store* const ps, png_byte const colour_type, Try { png_infop pi; - const png_structp pp = set_store_for_write(ps, &pi, name); + png_structp pp = set_store_for_write(ps, &pi, name); png_uint_32 w, h; gnu_volatile(pp) @@ -4705,7 +4706,7 @@ make_error(png_store* const ps, png_byte const colour_type, else { /* Now write the whole image, just to make sure that the detected, or - * undetected, errro has not created problems inside libpng. This + * undetected, error has not created problems inside libpng. This * doesn't work if there was a png_error in png_write_info because that * can abort before PLTE was written. */ @@ -5468,14 +5469,14 @@ progressive_row(png_structp ppIn, png_bytep new_row, png_uint_32 y, int pass) static void sequential_row(standard_display *dp, png_structp pp, png_infop pi, - const int iImage, const int iDisplay) + int iImage, int iDisplay) { - const int npasses = dp->npasses; - const int do_interlace = dp->do_interlace && + int npasses = dp->npasses; + int do_interlace = dp->do_interlace && dp->interlace_type == PNG_INTERLACE_ADAM7; - const png_uint_32 height = standard_height(pp, dp->id); - const png_uint_32 width = standard_width(pp, dp->id); - const png_store* ps = dp->ps; + png_uint_32 height = standard_height(pp, dp->id); + png_uint_32 width = standard_width(pp, dp->id); + const png_store* ps = dp->ps; int pass; for (pass=0; pass<npasses; ++pass) @@ -5869,7 +5870,7 @@ test_size(png_modifier* const pm, png_byte const colour_type, */ static const png_byte hinc[] = {1, 3, 11, 1, 5}; static const png_byte winc[] = {1, 9, 5, 7, 1}; - const int save_bdlo = bdlo; + int save_bdlo = bdlo; for (; bdlo <= bdhi; ++bdlo) { @@ -6077,12 +6078,12 @@ image_pixel_init(image_pixel *this, png_const_bytep row, png_byte colour_type, png_byte bit_depth, png_uint_32 x, store_palette palette, const image_pixel *format /*from pngvalid transform of input*/) { - const png_byte sample_depth = (png_byte)(colour_type == - PNG_COLOR_TYPE_PALETTE ? 8 : bit_depth); - const unsigned int max = (1U<<sample_depth)-1; - const int swap16 = (format != 0 && format->swap16); - const int littleendian = (format != 0 && format->littleendian); - const int sig_bits = (format != 0 && format->sig_bits); + png_byte sample_depth = + (png_byte)(colour_type == PNG_COLOR_TYPE_PALETTE ? 8 : bit_depth); + unsigned int max = (1U<<sample_depth)-1; + int swap16 = (format != 0 && format->swap16); + int littleendian = (format != 0 && format->littleendian); + int sig_bits = (format != 0 && format->sig_bits); /* Initially just set everything to the same number and the alpha to opaque. * Note that this currently assumes a simple palette where entry x has colour @@ -6100,7 +6101,7 @@ image_pixel_init(image_pixel *this, png_const_bytep row, png_byte colour_type, /* This permits the caller to default to the sample value. */ if (palette != 0) { - const unsigned int i = this->palette_index; + unsigned int i = this->palette_index; this->red = palette[i].red; this->green = palette[i].green; @@ -6431,8 +6432,8 @@ static void image_transform_mod_end(const image_transform *this, image_pixel *that, png_const_structp pp, const transform_display *display) { - const unsigned int scale = (1U<<that->sample_depth)-1; - const int sig_bits = that->sig_bits; + unsigned int scale = (1U<<that->sample_depth)-1; + int sig_bits = that->sig_bits; UNUSED(this) UNUSED(pp) @@ -6755,19 +6756,19 @@ transform_image_validate(transform_display *dp, png_const_structp pp, { /* Constants for the loop below: */ const png_store* const ps = dp->this.ps; - const png_byte in_ct = dp->this.colour_type; - const png_byte in_bd = dp->this.bit_depth; - const png_uint_32 w = dp->this.w; - const png_uint_32 h = dp->this.h; - const png_byte out_ct = dp->output_colour_type; - const png_byte out_bd = dp->output_bit_depth; - const png_byte sample_depth = (png_byte)(out_ct == - PNG_COLOR_TYPE_PALETTE ? 8 : out_bd); - const png_byte red_sBIT = dp->this.red_sBIT; - const png_byte green_sBIT = dp->this.green_sBIT; - const png_byte blue_sBIT = dp->this.blue_sBIT; - const png_byte alpha_sBIT = dp->this.alpha_sBIT; - const int have_tRNS = dp->this.is_transparent; + png_byte in_ct = dp->this.colour_type; + png_byte in_bd = dp->this.bit_depth; + png_uint_32 w = dp->this.w; + png_uint_32 h = dp->this.h; + png_byte out_ct = dp->output_colour_type; + png_byte out_bd = dp->output_bit_depth; + png_byte sample_depth = + (png_byte)(out_ct == PNG_COLOR_TYPE_PALETTE ? 8 : out_bd); + png_byte red_sBIT = dp->this.red_sBIT; + png_byte green_sBIT = dp->this.green_sBIT; + png_byte blue_sBIT = dp->this.blue_sBIT; + png_byte alpha_sBIT = dp->this.alpha_sBIT; + int have_tRNS = dp->this.is_transparent; double digitization_error; store_palette out_palette; @@ -6928,7 +6929,7 @@ transform_end(png_structp ppIn, png_infop pi) /* A single test run. */ static void -transform_test(png_modifier *pmIn, const png_uint_32 idIn, +transform_test(png_modifier *pmIn, png_uint_32 idIn, const image_transform* transform_listIn, const char * const name) { transform_display d; @@ -7763,7 +7764,7 @@ static void image_transform_png_set_rgb_to_gray_set(const image_transform *this, transform_display *that, png_structp pp, png_infop pi) { - const int error_action = 1; /* no error, no defines in png.h */ + int error_action = 1; /* no error, no defines in png.h */ # ifdef PNG_FLOATING_POINT_SUPPORTED png_set_rgb_to_gray(pp, error_action, data.red_to_set, data.green_to_set); @@ -7904,10 +7905,10 @@ image_transform_png_set_rgb_to_gray_mod(const image_transform *this, # if DIGITIZE { png_modifier *pm = display->pm; - const unsigned int sample_depth = that->sample_depth; - const unsigned int calc_depth = (pm->assume_16_bit_calculations ? 16 : + unsigned int sample_depth = that->sample_depth; + unsigned int calc_depth = (pm->assume_16_bit_calculations ? 16 : sample_depth); - const unsigned int gamma_depth = + unsigned int gamma_depth = (sample_depth == 16 ? display->max_gamma_8 : (pm->assume_16_bit_calculations ? @@ -8001,7 +8002,7 @@ image_transform_png_set_rgb_to_gray_mod(const image_transform *this, b * data.blue_coefficient; { - const int do_round = data.gamma != 1 || calc_depth == 16; + int do_round = data.gamma != 1 || calc_depth == 16; const double ce = 2. / 32768; graylo = DD(rlo * (data.red_coefficient-ce) + @@ -8625,7 +8626,7 @@ image_transform_png_set_filler_mod(const image_transform *this, (that->colour_type == PNG_COLOR_TYPE_RGB || that->colour_type == PNG_COLOR_TYPE_GRAY)) { - const unsigned int max = (1U << that->bit_depth)-1; + unsigned int max = (1U << that->bit_depth)-1; that->alpha = data.filler & max; that->alphaf = ((double)that->alpha) / max; that->alphae = 0; @@ -8692,7 +8693,7 @@ image_transform_png_set_add_alpha_mod(const image_transform *this, (that->colour_type == PNG_COLOR_TYPE_RGB || that->colour_type == PNG_COLOR_TYPE_GRAY)) { - const unsigned int max = (1U << that->bit_depth)-1; + unsigned int max = (1U << that->bit_depth)-1; that->alpha = data.filler & max; that->alphaf = ((double)that->alpha) / max; that->alphae = 0; @@ -8883,7 +8884,7 @@ image_transform_png_set_shift_set(const image_transform *this, * field is randomized independently. This acts as a check that * libpng does use the correct field. */ - const unsigned int depth = that->this.bit_depth; + unsigned int depth = that->this.bit_depth; data.red = (png_byte)/*SAFE*/(random_mod(depth)+1); data.green = (png_byte)/*SAFE*/(random_mod(depth)+1); @@ -9298,12 +9299,12 @@ gamma_info_imp(gamma_display *dp, png_structp pp, png_infop pi) int mode = dp->do_background - ALPHA_MODE_OFFSET; /* The gamma value is the output gamma, and is in the standard, - * non-inverted, represenation. It provides a default for the PNG file + * non-inverted, representation. It provides a default for the PNG file * gamma, but since the file has a gAMA chunk this does not matter. */ const double sg = dp->screen_gamma; # ifndef PNG_FLOATING_POINT_SUPPORTED - const png_fixed_point g = fix(sg); + png_fixed_point g = fix(sg); # endif # ifdef PNG_FLOATING_POINT_SUPPORTED @@ -9351,7 +9352,7 @@ gamma_info_imp(gamma_display *dp, png_structp pp, png_infop pi) */ const double bg = dp->background_gamma; # ifndef PNG_FLOATING_POINT_SUPPORTED - const png_fixed_point g = fix(bg); + png_fixed_point g = fix(bg); # endif # ifdef PNG_FLOATING_POINT_SUPPORTED @@ -9425,7 +9426,7 @@ static void init_validate_info(validate_info *vi, gamma_display *dp, png_const_structp pp, int in_depth, int out_depth) { - const unsigned int outmax = (1U<<out_depth)-1; + unsigned int outmax = (1U<<out_depth)-1; vi->pp = pp; vi->dp = dp; @@ -9587,14 +9588,14 @@ gamma_component_compose(int do_background, double input_sample, double alpha, /* This API returns the encoded *input* component, in the range 0..1 */ static double gamma_component_validate(const char *name, const validate_info *vi, - const unsigned int id, const unsigned int od, + unsigned int id, unsigned int od, const double alpha /* <0 for the alpha channel itself */, const double background /* component background value */) { - const unsigned int isbit = id >> vi->isbit_shift; - const unsigned int sbit_max = vi->sbit_max; - const unsigned int outmax = vi->outmax; - const int do_background = vi->do_background; + unsigned int isbit = id >> vi->isbit_shift; + unsigned int sbit_max = vi->sbit_max; + unsigned int outmax = vi->outmax; + int do_background = vi->do_background; double i; @@ -10160,13 +10161,13 @@ gamma_image_validate(gamma_display *dp, png_const_structp pp, { /* Get some constants derived from the input and output file formats: */ const png_store* const ps = dp->this.ps; - const png_byte in_ct = dp->this.colour_type; - const png_byte in_bd = dp->this.bit_depth; - const png_uint_32 w = dp->this.w; - const png_uint_32 h = dp->this.h; + png_byte in_ct = dp->this.colour_type; + png_byte in_bd = dp->this.bit_depth; + png_uint_32 w = dp->this.w; + png_uint_32 h = dp->this.h; const size_t cbRow = dp->this.cbRow; - const png_byte out_ct = png_get_color_type(pp, pi); - const png_byte out_bd = png_get_bit_depth(pp, pi); + png_byte out_ct = png_get_color_type(pp, pi); + png_byte out_bd = png_get_bit_depth(pp, pi); /* There are three sources of error, firstly the quantization in the * file encoding, determined by sbit and/or the file depth, secondly @@ -10207,11 +10208,11 @@ gamma_image_validate(gamma_display *dp, png_const_structp pp, * The basic tests below do not do this, however if 'use_input_precision' * is set a subsequent test is performed above. */ - const unsigned int samples_per_pixel = (out_ct & 2U) ? 3U : 1U; + unsigned int samples_per_pixel = (out_ct & 2U) ? 3U : 1U; int processing; png_uint_32 y; const store_palette_entry *in_palette = dp->this.palette; - const int in_is_transparent = dp->this.is_transparent; + int in_is_transparent = dp->this.is_transparent; int process_tRNS; int out_npalette = -1; int out_is_transparent = 0; /* Just refers to the palette case */ @@ -10259,9 +10260,9 @@ gamma_image_validate(gamma_display *dp, png_const_structp pp, double alpha = 1; /* serves as a flag value */ /* Record the palette index for index images. */ - const unsigned int in_index = + unsigned int in_index = in_ct == 3 ? sample(std, 3, in_bd, x, 0, 0, 0) : 256; - const unsigned int out_index = + unsigned int out_index = out_ct == 3 ? sample(std, 3, out_bd, x, 0, 0, 0) : 256; /* Handle input alpha - png_set_background will cause the output @@ -10270,7 +10271,7 @@ gamma_image_validate(gamma_display *dp, png_const_structp pp, if ((in_ct & PNG_COLOR_MASK_ALPHA) != 0 || (in_ct == 3 && in_is_transparent)) { - const unsigned int input_alpha = in_ct == 3 ? + unsigned int input_alpha = in_ct == 3 ? dp->this.palette[in_index].alpha : sample(std, in_ct, in_bd, x, samples_per_pixel, 0, 0); @@ -10395,14 +10396,14 @@ gamma_end(png_structp ppIn, png_infop pi) * maxpc: maximum percentage error (as a percentage) */ static void -gamma_test(png_modifier *pmIn, const png_byte colour_typeIn, - const png_byte bit_depthIn, const int palette_numberIn, - const int interlace_typeIn, +gamma_test(png_modifier *pmIn, png_byte colour_typeIn, + png_byte bit_depthIn, int palette_numberIn, + int interlace_typeIn, const double file_gammaIn, const double screen_gammaIn, - const png_byte sbitIn, const int threshold_testIn, + png_byte sbitIn, int threshold_testIn, const char *name, - const int use_input_precisionIn, const int scale16In, - const int expand16In, const int do_backgroundIn, + int use_input_precisionIn, int scale16In, + int expand16In, int do_backgroundIn, const png_color_16 *bkgd_colorIn, double bkgd_gammaIn) { gamma_display d; @@ -10606,11 +10607,11 @@ perform_gamma_threshold_tests(png_modifier *pm) } static void gamma_transform_test(png_modifier *pm, - const png_byte colour_type, const png_byte bit_depth, - const int palette_number, - const int interlace_type, const double file_gamma, - const double screen_gamma, const png_byte sbit, - const int use_input_precision, const int scale16) + png_byte colour_type, png_byte bit_depth, + int palette_number, + int interlace_type, const double file_gamma, + const double screen_gamma, png_byte sbit, + int use_input_precision, int scale16) { size_t pos = 0; char name[64]; @@ -10767,12 +10768,12 @@ static void perform_gamma_scale16_tests(png_modifier *pm) #if defined(PNG_READ_BACKGROUND_SUPPORTED) ||\ defined(PNG_READ_ALPHA_MODE_SUPPORTED) static void gamma_composition_test(png_modifier *pm, - const png_byte colour_type, const png_byte bit_depth, - const int palette_number, - const int interlace_type, const double file_gamma, + png_byte colour_type, png_byte bit_depth, + int palette_number, + int interlace_type, const double file_gamma, const double screen_gamma, - const int use_input_precision, const int do_background, - const int expand_16) + int use_input_precision, int do_background, + int expand_16) { size_t pos = 0; png_const_charp base; diff --git a/source/libs/libpng/libpng-src/contrib/libtests/tarith.c b/source/libs/libpng/libpng-src/contrib/libtests/tarith.c index c95226f03..c03f05a80 100644 --- a/source/libs/libpng/libpng-src/contrib/libtests/tarith.c +++ b/source/libs/libpng/libpng-src/contrib/libtests/tarith.c @@ -331,8 +331,8 @@ static int check_one_character(checkfp_command *co, checkfp_control c, int ch) */ size_t index = 0; const char test = (char)ch; - const int number_is_valid = png_check_fp_number(&test, 1, &c.state, &index); - const int character_accepted = (index == 1); + int number_is_valid = png_check_fp_number(&test, 1, &c.state, &index); + int character_accepted = (index == 1); if (c.check_state != exponent && isdigit(ch) && ch != '0') c.is_zero = 0; diff --git a/source/libs/libpng/libpng-src/contrib/powerpc-vsx/linux_aux.c b/source/libs/libpng/libpng-src/contrib/powerpc-vsx/linux_aux.c index 796922d77..7828acafb 100644 --- a/source/libs/libpng/libpng-src/contrib/powerpc-vsx/linux_aux.c +++ b/source/libs/libpng/libpng-src/contrib/powerpc-vsx/linux_aux.c @@ -23,14 +23,12 @@ static int png_have_vsx(png_structp png_ptr) { - - const unsigned long auxv = getauxval( AT_HWCAP ); + unsigned long auxv = getauxval(AT_HWCAP); PNG_UNUSED(png_ptr) - if(auxv & (PPC_FEATURE_HAS_ALTIVEC|PPC_FEATURE_HAS_VSX )) + if(auxv & (PPC_FEATURE_HAS_ALTIVEC|PPC_FEATURE_HAS_VSX)) return 1; else return 0; } - diff --git a/source/libs/libpng/libpng-src/contrib/tools/makesRGB.c b/source/libs/libpng/libpng-src/contrib/tools/makesRGB.c index e66c9f157..d0c0ca931 100644 --- a/source/libs/libpng/libpng-src/contrib/tools/makesRGB.c +++ b/source/libs/libpng/libpng-src/contrib/tools/makesRGB.c @@ -388,7 +388,7 @@ main(int argc, char **argv) if (!test_only) { - printf("PNG_CONST png_uint_16 png_sRGB_table[256] =\n{\n "); + printf("const png_uint_16 png_sRGB_table[256] =\n{\n "); for (i=0; i<255; ) { do @@ -401,7 +401,7 @@ main(int argc, char **argv) printf("%d\n};\n\n", png_sRGB_table[i]); - printf("PNG_CONST png_uint_16 png_sRGB_base[512] =\n{\n "); + printf("const png_uint_16 png_sRGB_base[512] =\n{\n "); for (i=0; i<511; ) { do @@ -413,7 +413,7 @@ main(int argc, char **argv) } printf("%d\n};\n\n", png_sRGB_base[i]); - printf("PNG_CONST png_byte png_sRGB_delta[512] =\n{\n "); + printf("const png_byte png_sRGB_delta[512] =\n{\n "); for (i=0; i<511; ) { do diff --git a/source/libs/libpng/libpng-src/contrib/tools/pngcp.c b/source/libs/libpng/libpng-src/contrib/tools/pngcp.c index f6a0d50f4..16d4e7f4d 100644 --- a/source/libs/libpng/libpng-src/contrib/tools/pngcp.c +++ b/source/libs/libpng/libpng-src/contrib/tools/pngcp.c @@ -735,7 +735,7 @@ option_index(struct display *dp, const char *opt, size_t len) static int get_option(struct display *dp, const char *opt, int *value) { - const png_byte i = option_index(dp, opt, strlen(opt)); + png_byte i = option_index(dp, opt, strlen(opt)); if (dp->entry[i]) /* option was set on command line */ { @@ -789,7 +789,7 @@ record_opt(struct display *dp, png_byte opt, const char *entry_name) * numerical value. */ { - const unsigned int sp = dp->csp; /* stack entry of next searched option */ + unsigned int sp = dp->csp; /* stack entry of next searched option */ if (sp >= dp->tsp) { @@ -797,7 +797,7 @@ record_opt(struct display *dp, png_byte opt, const char *entry_name) * searched entry or the start of the dp->curr buffer if there is nothing * on the stack yet (sp == 0). */ - const int offset = set_opt_string_(dp, sp, opt, entry_name); + int offset = set_opt_string_(dp, sp, opt, entry_name); if (sp > 0) dp->stack[sp-1].opt_string_end = offset; @@ -1222,7 +1222,7 @@ advance_opt(struct display *dp, png_byte opt, int search) } static int -getallopts_(struct display *dp, const png_byte opt, int *value, int record) +getallopts_(struct display *dp, png_byte opt, int *value, int record) /* Like getop but iterate over all the values if the option was set to "all". */ { @@ -1259,7 +1259,7 @@ getsearchopts(struct display *dp, const char *opt_str, int *value) /* As above except that if the option was not set try a search */ { png_byte istrat; - const png_byte opt = option_index(dp, opt_str, strlen(opt_str)); + png_byte opt = option_index(dp, opt_str, strlen(opt_str)); int record = options[opt].search; const char *entry_name; @@ -2220,7 +2220,7 @@ cp_one_file(struct display *dp, const char *filename, const char *destname) strcpy(dp->best, dp->curr); dp->best_size = dp->write_size; - if (dp->nsp > 0) /* interating over lists */ + if (dp->nsp > 0) /* iterating over lists */ { char *tmpname, tmpbuf[(sizeof dp->namebuf) + 4]; assert(dp->curr[0] == ' ' && dp->tsp > 0); @@ -2302,7 +2302,7 @@ cppng(struct display *dp, const char *file, const char *gv dest) } int -main(const int argc, const char * const * const argv) +main(int argc, char **argv) { /* For each file on the command line test it with a range of transforms */ int option_end; @@ -2379,7 +2379,7 @@ main(const int argc, const char * const * const argv) /* Here on any return, including failures, except user/internal issues */ { - const int pass = (d.options & STRICT) ? + int pass = (d.options & STRICT) ? RESULT_STRICT(d.results) : RESULT_RELAXED(d.results); if (!pass) diff --git a/source/libs/libpng/libpng-src/contrib/tools/pngfix.c b/source/libs/libpng/libpng-src/contrib/tools/pngfix.c index f494230d8..2fa5d13ea 100644 --- a/source/libs/libpng/libpng-src/contrib/tools/pngfix.c +++ b/source/libs/libpng/libpng-src/contrib/tools/pngfix.c @@ -772,7 +772,7 @@ skip_chunk_type(const struct global *global, png_uint_32 type) return 0; /* Chunks that specify gamma encoding which should therefore only be - * removed the the user insists: + * removed if the user insists: */ case png_gAMA: case png_sRGB: if (global->skip >= SKIP_ALL) @@ -2514,7 +2514,7 @@ zlib_run(struct zlib *zlib) */ for (;;) { - const unsigned int count = list->count; + unsigned int count = list->count; unsigned int i; for (i = 0; i<count; ++i) @@ -2791,7 +2791,7 @@ process_chunk(struct file *file, png_uint_32 file_crc, png_uint_32 next_length, * to read_chunk. */ { - const png_uint_32 type = file->type; + png_uint_32 type = file->type; if (file->global->verbose > 1) { @@ -3152,7 +3152,7 @@ read_chunk(struct file *file) } } - /* Control gets to here if the the stream seems invalid or damaged in some + /* Control gets to here if the stream seems invalid or damaged in some * way. Either there was a problem reading all the expected data (this * chunk's data, its CRC and the length and type of the next chunk) or the * next chunk length/type are invalid. Notice that the cases that end up @@ -3710,7 +3710,7 @@ usage(const char *prog) " practice most programs will ignore it.", " bKGD [transform]: This is used by libpng transforms." " --max=<number>:", -" Use IDAT chunks sized <number>. If no number is given the the IDAT", +" Use IDAT chunks sized <number>. If no number is given the IDAT", " chunks will be the maximum size permitted; 2^31-1 bytes. If the option", " is omitted the original chunk sizes will not be changed. When the", " option is given --strip=unsafe is set automatically. This may be", diff --git a/source/libs/libpng/libpng-src/example.c b/source/libs/libpng/libpng-src/example.c index 34ecfde22..2e2afaafb 100644 --- a/source/libs/libpng/libpng-src/example.c +++ b/source/libs/libpng/libpng-src/example.c @@ -2,19 +2,20 @@ #if 0 /* in case someone actually tries to compile this */ /* example.c - an example of using libpng - * Last changed in libpng 1.6.35 [July 15, 2018] + * * Maintained 2018 Cosmin Truta * Maintained 1998-2016 Glenn Randers-Pehrson - * Maintained 1996, 1997 Andreas Dilger) - * Written 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Maintained 1996-1997 Andreas Dilger + * Written 1995-1996 Guy Eric Schalnat, Group 42, Inc. + * * To the extent possible under law, the authors have waived * all copyright and related or neighboring rights to this file. * This work is published from: United States, Canada. */ /* This is an example of how to use libpng to read and write PNG files. - * The file libpng-manual.txt is much more verbose then this. If you have not - * read it, do so first. This was designed to be a starting point of an + * The file libpng-manual.txt is much more verbose then this. If you have + * not read it, do so first. This was designed to be a starting point of an * implementation. This is not officially part of libpng, is hereby placed * in the public domain, and therefore does not require a copyright notice. * @@ -25,16 +26,17 @@ * see also the programs in the contrib directory. */ -/* The simple, but restricted, approach to reading a PNG file or data stream - * just requires two function calls, as in the following complete program. - * Writing a file just needs one function call, so long as the data has an +/* The simple, but restricted approach to reading a PNG file or data stream + * requires just two function calls, as in the following complete program. + * Writing a file needs just one function call, so long as the data has an * appropriate layout. * * The following code reads PNG image data from a file and writes it, in a - * potentially new format, to a new file. While this code will compile there is - * minimal (insufficient) error checking; for a more realistic version look at - * contrib/examples/pngtopng.c + * potentially new format, to a new file. While this code will compile, there + * is minimal (insufficient) error checking. For a more realistic version, + * see contrib/examples/pngtopng.c */ + #include <stddef.h> #include <stdlib.h> #include <string.h> @@ -69,28 +71,28 @@ int main(int argc, const char **argv) */ buffer = malloc(PNG_IMAGE_SIZE(image)); - /* If enough memory was available read the image in the desired format - * then write the result out to the new file. 'background' is not - * necessary when reading the image because the alpha channel is + /* If enough memory was available, read the image in the desired + * format, then write the result out to the new file. 'background' is + * not necessary when reading the image, because the alpha channel is * preserved; if it were to be removed, for example if we requested * PNG_FORMAT_RGB, then either a solid background color would have to - * be supplied or the output buffer would have to be initialized to the - * actual background of the image. + * be supplied, or the output buffer would have to be initialized to + * the actual background of the image. * * The fourth argument to png_image_finish_read is the 'row_stride' - * this is the number of components allocated for the image in each * row. It has to be at least as big as the value returned by * PNG_IMAGE_ROW_STRIDE, but if you just allocate space for the - * default, minimum, size using PNG_IMAGE_SIZE as above you can pass + * default, minimum size, using PNG_IMAGE_SIZE as above, you can pass * zero. * * The final argument is a pointer to a buffer for the colormap; - * colormaps have exactly the same format as a row of image pixels (so - * you choose what format to make the colormap by setting + * colormaps have exactly the same format as a row of image pixels + * (so you choose what format to make the colormap by setting * image.format). A colormap is only returned if * PNG_FORMAT_FLAG_COLORMAP is also set in image.format, so in this * case NULL is passed as the final argument. If you do want to force - * all images into an index/color-mapped format then you can use: + * all images into an index/color-mapped format, then you can use: * * PNG_IMAGE_COLORMAP_SIZE(image) * @@ -112,17 +114,15 @@ int main(int argc, const char **argv) exit(0); } } - else { /* Calling png_image_free is optional unless the simplified API was - * not run to completion. In this case if there wasn't enough - * memory for 'buffer' we didn't complete the read, so we must free - * the image: + * not run to completion. In this case, if there wasn't enough + * memory for 'buffer', we didn't complete the read, so we must + * free the image: */ if (buffer == NULL) png_image_free(&image); - else free(buffer); } @@ -131,65 +131,67 @@ int main(int argc, const char **argv) * textual message in the 'png_image' structure: */ fprintf(stderr, "pngtopng: error: %s\n", image.message); - exit (1); + exit(1); } fprintf(stderr, "pngtopng: usage: pngtopng input-file output-file\n"); - exit(1); + exit(2); } /* That's it ;-) Of course you probably want to do more with PNG files than * just converting them all to 32-bit RGBA PNG files; you can do that between * the call to png_image_finish_read and png_image_write_to_file. You can also - * ask for the image data to be presented in a number of different formats. You - * do this by simply changing the 'format' parameter set before allocating the - * buffer. + * ask for the image data to be presented in a number of different formats. + * You do this by simply changing the 'format' parameter set before allocating + * the buffer. * * The format parameter consists of five flags that define various aspects of - * the image, you can simply add these together to get the format or you can use - * one of the predefined macros from png.h (as above): + * the image. You can simply add these together to get the format, or you can + * use one of the predefined macros from png.h (as above): * - * PNG_FORMAT_FLAG_COLOR: if set the image will have three color components per - * pixel (red, green and blue), if not set the image will just have one + * PNG_FORMAT_FLAG_COLOR: if set, the image will have three color components + * per pixel (red, green and blue); if not set, the image will just have one * luminance (grayscale) component. * - * PNG_FORMAT_FLAG_ALPHA: if set each pixel in the image will have an additional - * alpha value; a linear value that describes the degree the image pixel - * covers (overwrites) the contents of the existing pixel on the display. + * PNG_FORMAT_FLAG_ALPHA: if set, each pixel in the image will have an + * additional alpha value; a linear value that describes the degree the + * image pixel covers (overwrites) the contents of the existing pixel on the + * display. * - * PNG_FORMAT_FLAG_LINEAR: if set the components of each pixel will be returned - * as a series of 16-bit linear values, if not set the components will be - * returned as a series of 8-bit values encoded according to the 'sRGB' - * standard. The 8-bit format is the normal format for images intended for - * direct display, because almost all display devices do the inverse of the - * sRGB transformation to the data they receive. The 16-bit format is more - * common for scientific data and image data that must be further processed; - * because it is linear simple math can be done on the component values. - * Regardless of the setting of this flag the alpha channel is always linear, - * although it will be 8 bits or 16 bits wide as specified by the flag. + * PNG_FORMAT_FLAG_LINEAR: if set, the components of each pixel will be + * returned as a series of 16-bit linear values; if not set, the components + * will be returned as a series of 8-bit values encoded according to the + * sRGB standard. The 8-bit format is the normal format for images intended + * for direct display, because almost all display devices do the inverse of + * the sRGB transformation to the data they receive. The 16-bit format is + * more common for scientific data and image data that must be further + * processed; because it is linear, simple math can be done on the component + * values. Regardless of the setting of this flag, the alpha channel is + * always linear, although it will be 8 bits or 16 bits wide as specified by + * the flag. * - * PNG_FORMAT_FLAG_BGR: if set the components of a color pixel will be returned - * in the order blue, then green, then red. If not set the pixel components - * are in the order red, then green, then blue. + * PNG_FORMAT_FLAG_BGR: if set, the components of a color pixel will be + * returned in the order blue, then green, then red. If not set, the pixel + * components are in the order red, then green, then blue. * - * PNG_FORMAT_FLAG_AFIRST: if set the alpha channel (if present) precedes the - * color or grayscale components. If not set the alpha channel follows the + * PNG_FORMAT_FLAG_AFIRST: if set, the alpha channel (if present) precedes the + * color or grayscale components. If not set, the alpha channel follows the * components. * * You do not have to read directly from a file. You can read from memory or, * on systems that support it, from a <stdio.h> FILE*. This is controlled by - * the particular png_image_read_from_ function you call at the start. Likewise - * on write you can write to a FILE* if your system supports it. Check the - * macro PNG_STDIO_SUPPORTED to see if stdio support has been included in your - * libpng build. + * the particular png_image_read_from_ function you call at the start. + * Likewise, on write, you can write to a FILE* if your system supports it. + * Check the macro PNG_STDIO_SUPPORTED to see if stdio support has been + * included in your libpng build. * - * If you read 16-bit (PNG_FORMAT_FLAG_LINEAR) data you may need to write it in - * the 8-bit format for display. You do this by setting the convert_to_8bit + * If you read 16-bit (PNG_FORMAT_FLAG_LINEAR) data, you may need to write it + * in the 8-bit format for display. You do this by setting the convert_to_8bit * flag to 'true'. * * Don't repeatedly convert between the 8-bit and 16-bit forms. There is - * significant data loss when 16-bit data is converted to the 8-bit encoding and - * the current libpng implementation of conversion to 16-bit is also + * significant data loss when 16-bit data is converted to the 8-bit encoding, + * and the current libpng implementation of conversion to 16-bit is also * significantly lossy. The latter will be fixed in the future, but the former * is unavoidable - the 8-bit format just doesn't have enough resolution. */ @@ -200,10 +202,10 @@ int main(int argc, const char **argv) * interfaces. * * All these interfaces require that you do your own error handling - your - * program must be able to arrange for control to return to your own code any - * time libpng encounters a problem. There are several ways to do this, but the - * standard way is to use the ANSI-C (C90) <setjmp.h> interface to establish a - * return point within your own code. You must do this if you do not use the + * program must be able to arrange for control to return to your own code, any + * time libpng encounters a problem. There are several ways to do this, but + * the standard way is to use the <setjmp.h> interface to establish a return + * point within your own code. You must do this if you do not use the * simplified interface (above). * * The first step is to include the header files you need, including the libpng @@ -215,7 +217,7 @@ int main(int argc, const char **argv) /* The png_jmpbuf() macro, used in error handling, became available in * libpng version 1.0.6. If you want to be able to run your code with older * versions of libpng, you must define the macro yourself (but only if it - * is not already defined by libpng!). + * is not already defined by libpng!) */ #ifndef png_jmpbuf @@ -223,10 +225,10 @@ int main(int argc, const char **argv) #endif /* Check to see if a file is a PNG file using png_sig_cmp(). png_sig_cmp() - * returns zero if the image is a PNG and nonzero if it isn't a PNG. + * returns zero if the image is a PNG, and nonzero otherwise. * * The function check_if_png() shown here, but not used, returns nonzero (true) - * if the file can be opened and is a PNG, 0 (false) otherwise. + * if the file can be opened and is a PNG, and 0 (false) otherwise. * * If this call is successful, and you are going to keep the file open, * you should call png_set_sig_bytes(png_ptr, PNG_BYTES_TO_CHECK); once @@ -239,7 +241,7 @@ int main(int argc, const char **argv) * * Many applications already read the first 2 or 4 bytes from the start * of the image to determine the file type, so it would be easiest just - * to pass the bytes to png_sig_cmp() or even skip that if you know + * to pass the bytes to png_sig_cmp(), or even skip that if you know * you have a PNG file, and call png_set_sig_bytes(). */ #define PNG_BYTES_TO_CHECK 4 @@ -251,13 +253,13 @@ int check_if_png(char *file_name, FILE **fp) if ((*fp = fopen(file_name, "rb")) == NULL) return 0; - /* Read in some of the signature bytes */ + /* Read in some of the signature bytes. */ if (fread(buf, 1, PNG_BYTES_TO_CHECK, *fp) != PNG_BYTES_TO_CHECK) return 0; /* Compare the first PNG_BYTES_TO_CHECK bytes of the signature. - Return nonzero (true) if they match */ - + * Return nonzero (true) if they match. + */ return(!png_sig_cmp(buf, 0, PNG_BYTES_TO_CHECK)); } @@ -268,7 +270,7 @@ int check_if_png(char *file_name, FILE **fp) * some or all of the magic bytes read - see comments above). */ #ifdef open_file /* prototype 1 */ -void read_png(char *file_name) /* We need to open the file */ +void read_png(char *file_name) /* We need to open the file */ { png_structp png_ptr; png_infop info_ptr; @@ -281,7 +283,7 @@ void read_png(char *file_name) /* We need to open the file */ return (ERROR); #else no_open_file /* prototype 2 */ -void read_png(FILE *fp, int sig_read) /* File is already open */ +void read_png(FILE *fp, int sig_read) /* File is already open */ { png_structp png_ptr; png_infop info_ptr; @@ -293,7 +295,7 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ * functions. If you want to use the default stderr and longjump method, * you can supply NULL for the last three parameters. We also supply the * the compiler header file version, so that we know if the application - * was compiled with a compatible version of the library. REQUIRED + * was compiled with a compatible version of the library. REQUIRED. */ png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, png_voidp user_error_ptr, user_error_fn, user_warning_fn); @@ -317,35 +319,33 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ * the normal method of doing things with libpng). REQUIRED unless you * set up your own error handlers in the png_create_read_struct() earlier. */ - if (setjmp(png_jmpbuf(png_ptr))) { - /* Free all of the memory associated with the png_ptr and info_ptr */ + /* Free all of the memory associated with the png_ptr and info_ptr. */ png_destroy_read_struct(&png_ptr, &info_ptr, NULL); fclose(fp); - /* If we get here, we had a problem reading the file */ + /* If we get here, we had a problem reading the file. */ return (ERROR); } - /* One of the following I/O initialization methods is REQUIRED */ + /* One of the following I/O initialization methods is REQUIRED. */ #ifdef streams /* PNG file I/O method 1 */ - /* Set up the input control if you are using standard C streams */ + /* Set up the input control if you are using standard C streams. */ png_init_io(png_ptr, fp); #else no_streams /* PNG file I/O method 2 */ /* If you are using replacement read functions, instead of calling - * png_init_io() here you would call: + * png_init_io(), you would call: */ png_set_read_fn(png_ptr, (void *)user_io_ptr, user_read_fn); - /* where user_io_ptr is a structure you want available to the callbacks */ + /* where user_io_ptr is a structure you want available to the callbacks. */ #endif no_streams /* Use only one I/O method! */ /* If we have already read some of the signature */ png_set_sig_bytes(png_ptr, sig_read); #ifdef hilevel - /* - * If you have enough memory to read in the entire image at once, + /* If you have enough memory to read in the entire image at once, * and you need to specify only transforms that can be controlled * with one of the PNG_TRANSFORM_* bits (this presently excludes * quantizing, filling, setting background, and doing gamma @@ -355,10 +355,10 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ png_read_png(png_ptr, info_ptr, png_transforms, NULL); #else - /* OK, you're doing it the hard way, with the lower-level functions */ + /* OK, you're doing it the hard way, with the lower-level functions. */ /* The call to png_read_info() gives us all of the information from the - * PNG file before the first IDAT (image data chunk). REQUIRED + * PNG file before the first IDAT (image data chunk). REQUIRED. */ png_read_info(png_ptr, info_ptr); @@ -386,20 +386,21 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ */ png_set_strip_alpha(png_ptr); - /* Extract multiple pixels with bit depths of 1, 2, and 4 from a single + /* Extract multiple pixels with bit depths of 1, 2 or 4 from a single * byte into separate bytes (useful for paletted and grayscale images). */ png_set_packing(png_ptr); /* Change the order of packed pixels to least significant bit first - * (not useful if you are using png_set_packing). */ + * (not useful if you are using png_set_packing). + */ png_set_packswap(png_ptr); - /* Expand paletted colors into true RGB triplets */ + /* Expand paletted colors into true RGB triplets. */ if (color_type == PNG_COLOR_TYPE_PALETTE) png_set_palette_to_rgb(png_ptr); - /* Expand grayscale images to the full 8 bits from 1, 2, or 4 bits/pixel */ + /* Expand grayscale images to the full 8 bits from 1, 2 or 4 bits/pixel. */ if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8) png_set_expand_gray_1_2_4_to_8(png_ptr); @@ -410,12 +411,11 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ png_set_tRNS_to_alpha(png_ptr); /* Set the background color to draw transparent and alpha images over. - * It is possible to set the red, green, and blue components directly - * for paletted images instead of supplying a palette index. Note that + * It is possible to set the red, green and blue components directly + * for paletted images, instead of supplying a palette index. Note that, * even if the PNG file supplies a background, you are not required to * use it - you should use the (solid) application background if it has one. */ - png_color_16 my_background, *image_background; if (png_get_bKGD(png_ptr, info_ptr, &image_background) != 0) @@ -425,32 +425,29 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ png_set_background(png_ptr, &my_background, PNG_BACKGROUND_GAMMA_SCREEN, 0, 1.0); - /* Some suggestions as to how to get a screen gamma value + /* Some suggestions as to how to get a screen gamma value. * * Note that screen gamma is the display_exponent, which includes - * the CRT_exponent and any correction for viewing conditions + * the CRT_exponent and any correction for viewing conditions. */ if (/* We have a user-defined screen gamma value */) - { screen_gamma = user-defined screen_gamma; - } - /* This is one way that applications share the same screen gamma value */ + /* This is one way that applications share the same screen gamma value. */ else if ((gamma_str = getenv("SCREEN_GAMMA")) != NULL) - { screen_gamma = atof(gamma_str); - } /* If we don't have another value */ else { - screen_gamma = PNG_DEFAULT_sRGB; /* A good guess for a PC monitor - in a dimly lit room */ - screen_gamma = PNG_GAMMA_MAC_18 or 1.0; /* Good guesses for Mac systems */ + screen_gamma = PNG_DEFAULT_sRGB; /* A good guess for a PC monitor + in a dimly lit room */ + screen_gamma = PNG_GAMMA_MAC_18 or 1.0; /* Good guesses for Mac + systems */ } /* Tell libpng to handle the gamma conversion for you. The final call * is a good guess for PC generated images, but it should be configurable - * by the user at run time by the user. It is strongly suggested that - * your application support gamma correction. + * by the user at run time. Gamma correction support in your application + * is strongly recommended. */ int intent; @@ -467,7 +464,7 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ } #ifdef PNG_READ_QUANTIZE_SUPPORTED - /* Quantize RGB files down to 8-bit palette or reduce palettes + /* Quantize RGB files down to 8-bit palette, or reduce palettes * to the number of colors available on your screen. */ if ((color_type & PNG_COLOR_MASK_COLOR) != 0) @@ -475,29 +472,26 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ int num_palette; png_colorp palette; - /* This reduces the image to the application supplied palette */ + /* This reduces the image to the application-supplied palette. */ if (/* We have our own palette */) { - /* An array of colors to which the image should be quantized */ + /* An array of colors to which the image should be quantized. */ png_color std_color_cube[MAX_SCREEN_COLORS]; - png_set_quantize(png_ptr, std_color_cube, MAX_SCREEN_COLORS, MAX_SCREEN_COLORS, NULL, 0); } - /* This reduces the image to the palette supplied in the file */ + /* This reduces the image to the palette supplied in the file. */ else if (png_get_PLTE(png_ptr, info_ptr, &palette, &num_palette) != 0) { png_uint_16p histogram = NULL; - png_get_hIST(png_ptr, info_ptr, &histogram); - png_set_quantize(png_ptr, palette, num_palette, max_screen_colors, histogram, 0); } } #endif /* READ_QUANTIZE */ - /* Invert monochrome files to have 0 as white and 1 as black */ + /* Invert monochrome files to have 0 as white and 1 as black. */ png_set_invert_mono(png_ptr); /* If you want to shift the pixel values from the range [0,255] or @@ -507,22 +501,21 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ if (png_get_valid(png_ptr, info_ptr, PNG_INFO_sBIT) != 0) { png_color_8p sig_bit_p; - png_get_sBIT(png_ptr, info_ptr, &sig_bit_p); png_set_shift(png_ptr, sig_bit_p); } - /* Flip the RGB pixels to BGR (or RGBA to BGRA) */ + /* Flip the RGB pixels to BGR (or RGBA to BGRA). */ if ((color_type & PNG_COLOR_MASK_COLOR) != 0) png_set_bgr(png_ptr); - /* Swap the RGBA or GA data to ARGB or AG (or BGRA to ABGR) */ + /* Swap the RGBA or GA data to ARGB or AG (or BGRA to ABGR). */ png_set_swap_alpha(png_ptr); - /* Swap bytes of 16-bit files to least significant byte first */ + /* Swap bytes of 16-bit files to least significant byte first. */ png_set_swap(png_ptr); - /* Add filler (or alpha) byte (before/after each RGB triplet) */ + /* Add filler (or alpha) byte (before/after each RGB triplet). */ png_set_filler(png_ptr, 0xffff, PNG_FILLER_AFTER); #ifdef PNG_READ_INTERLACING_SUPPORTED @@ -535,40 +528,31 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ number_passes = 1; #endif /* READ_INTERLACING */ - /* Optional call to gamma correct and add the background to the palette * and update info structure. REQUIRED if you are expecting libpng to - * update the palette for you (ie you selected such a transform above). + * update the palette for you (i.e. you selected such a transform above). */ png_read_update_info(png_ptr, info_ptr); /* Allocate the memory to hold the image using the fields of info_ptr. */ - - /* The easiest way to read the image: */ png_bytep row_pointers[height]; - - /* Clear the pointer array */ for (row = 0; row < height; row++) - row_pointers[row] = NULL; - + row_pointers[row] = NULL; /* Clear the pointer array */ for (row = 0; row < height; row++) row_pointers[row] = png_malloc(png_ptr, png_get_rowbytes(png_ptr, info_ptr)); - /* Now it's time to read the image. One of these methods is REQUIRED */ + /* Now it's time to read the image. One of these methods is REQUIRED. */ #ifdef entire /* Read the entire image in one go */ png_read_image(png_ptr, row_pointers); #else no_entire /* Read the image one or more scanlines at a time */ /* The other way to read images - deal with interlacing: */ - for (pass = 0; pass < number_passes; pass++) { #ifdef single /* Read the image a single row at a time */ for (y = 0; y < height; y++) - { png_read_rows(png_ptr, &row_pointers[y], NULL, 1); - } #else no_single /* Read the image several rows at a time */ for (y = 0; y < height; y += number_of_rows) @@ -582,24 +566,24 @@ void read_png(FILE *fp, int sig_read) /* File is already open */ #endif no_sparkle /* Use only one of these two methods */ } - /* If you want to display the image after every pass, do so here */ + /* If you want to display the image after every pass, do so here. */ #endif no_single /* Use only one of these two methods */ } #endif no_entire /* Use only one of these two methods */ - /* Read rest of file, and get additional chunks in info_ptr - REQUIRED */ + /* Read rest of file, and get additional chunks in info_ptr. REQUIRED. */ png_read_end(png_ptr, info_ptr); #endif hilevel - /* At this point you have read the entire image */ + /* At this point you have read the entire image. */ - /* Clean up after the read, and free any memory allocated - REQUIRED */ + /* Clean up after the read, and free any memory allocated. REQUIRED. */ png_destroy_read_struct(&png_ptr, &info_ptr, NULL); - /* Close the file */ + /* Close the file. */ fclose(fp); - /* That's it */ + /* That's it! */ return (OK); } @@ -611,34 +595,30 @@ initialize_png_reader(png_structp *png_ptr, png_infop *info_ptr) /* Create and initialize the png_struct with the desired error handler * functions. If you want to use the default stderr and longjump method, * you can supply NULL for the last three parameters. We also check that - * the library version is compatible in case we are using dynamically + * the library version is compatible, in case we are using dynamically * linked libraries. */ *png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, png_voidp user_error_ptr, user_error_fn, user_warning_fn); - if (*png_ptr == NULL) { *info_ptr = NULL; return (ERROR); } - *info_ptr = png_create_info_struct(png_ptr); - if (*info_ptr == NULL) { png_destroy_read_struct(png_ptr, info_ptr, NULL); return (ERROR); } - if (setjmp(png_jmpbuf((*png_ptr)))) { png_destroy_read_struct(png_ptr, info_ptr, NULL); return (ERROR); } - /* This one's new. You will need to provide all three - * function callbacks, even if you aren't using them all. + /* You will need to provide all three function callbacks, + * even if you aren't using all of them. * If you aren't using all functions, you can specify NULL * parameters. Even when all three functions are NULL, * you need to call png_set_progressive_read_fn(). @@ -651,7 +631,6 @@ initialize_png_reader(png_structp *png_ptr, png_infop *info_ptr) */ png_set_progressive_read_fn(*png_ptr, (void *)stream_data, info_callback, row_callback, end_callback); - return (OK); } @@ -661,18 +640,18 @@ process_data(png_structp *png_ptr, png_infop *info_ptr, { if (setjmp(png_jmpbuf((*png_ptr)))) { - /* Free the png_ptr and info_ptr memory on error */ + /* Free the png_ptr and info_ptr memory on error. */ png_destroy_read_struct(png_ptr, info_ptr, NULL); return (ERROR); } - /* This one's new also. Simply give it chunks of data as - * they arrive from the data stream (in order, of course). + /* Give chunks of data as they arrive from the data stream + * (in order, of course). * On segmented machines, don't give it any more than 64K. * The library seems to run fine with sizes of 4K, although - * you can give it much less if necessary (I assume you can + * you can give it much less if necessary. (I assume you can * give it chunks of 1 byte, but I haven't tried with less - * than 256 bytes yet). When this function returns, you may + * than 256 bytes yet.) When this function returns, you may * want to display any rows that were generated in the row * callback, if you aren't already displaying them there. */ @@ -694,8 +673,7 @@ info_callback(png_structp png_ptr, png_infop info) row_callback(png_structp png_ptr, png_bytep new_row, png_uint_32 row_num, int pass) { - /* - * This function is called for every row in the image. If the + /* This function is called for every row in the image. If the * image is interlaced, and you turned on the interlace handler, * this function will be called for every row in every pass. * @@ -706,25 +684,22 @@ row_callback(png_structp png_ptr, png_bytep new_row, * The new row data pointer "new_row" may be NULL, indicating there is * no new data to be replaced (in cases of interlace loading). * - * If new_row is not NULL then you need to call - * png_progressive_combine_row() to replace the corresponding row as + * If new_row is not NULL, then you need to call + * png_progressive_combine_row(), to replace the corresponding row as * shown below: */ - /* Get pointer to corresponding row in our - * PNG read buffer. - */ + /* Get pointer to corresponding row in our PNG read buffer. */ png_bytep old_row = ((png_bytep *)our_data)[row_num]; #ifdef PNG_READ_INTERLACING_SUPPORTED - /* If both rows are allocated then copy the new row + /* If both rows are allocated, then copy the new row * data to the corresponding row data. */ - if ((old_row != NULL) && (new_row != NULL)) - png_progressive_combine_row(png_ptr, old_row, new_row); + if (old_row != NULL && new_row != NULL) + png_progressive_combine_row(png_ptr, old_row, new_row); - /* - * The rows and passes are called in order, so you don't really + /* The rows and passes are called in order, so you don't really * need the row_num and pass, but I'm supplying them because it * may make your life easier. * @@ -735,7 +710,6 @@ row_callback(png_structp png_ptr, png_bytep new_row, * (it just does the memcpy for you) if it will make the code * easier. Thus, you can just do this for all cases: */ - png_progressive_combine_row(png_ptr, old_row, new_row); /* where old_row is what was displayed for previous rows. Note @@ -782,14 +756,13 @@ void write_png(char *file_name /* , ... other image information ... */) */ png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, png_voidp user_error_ptr, user_error_fn, user_warning_fn); - if (png_ptr == NULL) { fclose(fp); return (ERROR); } - /* Allocate/initialize the image information data. REQUIRED */ + /* Allocate/initialize the image information data. REQUIRED. */ info_ptr = png_create_info_struct(png_ptr); if (info_ptr == NULL) { @@ -798,30 +771,30 @@ void write_png(char *file_name /* , ... other image information ... */) return (ERROR); } - /* Set error handling. REQUIRED if you aren't supplying your own + /* Set up error handling. REQUIRED if you aren't supplying your own * error handling functions in the png_create_write_struct() call. */ if (setjmp(png_jmpbuf(png_ptr))) { - /* If we get here, we had a problem writing the file */ + /* If we get here, we had a problem writing the file. */ fclose(fp); png_destroy_write_struct(&png_ptr, &info_ptr); return (ERROR); } - /* One of the following I/O initialization functions is REQUIRED */ + /* One of the following I/O initialization functions is REQUIRED. */ #ifdef streams /* I/O initialization method 1 */ - /* Set up the output control if you are using standard C streams */ + /* Set up the output control if you are using standard C streams. */ png_init_io(png_ptr, fp); #else no_streams /* I/O initialization method 2 */ /* If you are using replacement write functions, instead of calling - * png_init_io() here you would call + * png_init_io(), you would call: */ png_set_write_fn(png_ptr, (void *)user_io_ptr, user_write_fn, user_IO_flush_function); - /* where user_io_ptr is a structure you want available to the callbacks */ + /* where user_io_ptr is a structure you want available to the callbacks. */ #endif no_streams /* Only use one initialization method */ #ifdef hilevel @@ -832,30 +805,32 @@ void write_png(char *file_name /* , ... other image information ... */) png_write_png(png_ptr, info_ptr, png_transforms, NULL); #else - /* This is the hard way */ + /* This is the hard way. */ /* Set the image information here. Width and height are up to 2^31, - * bit_depth is one of 1, 2, 4, 8, or 16, but valid values also depend on - * the color_type selected. color_type is one of PNG_COLOR_TYPE_GRAY, + * bit_depth is one of 1, 2, 4, 8 or 16, but valid values also depend on + * the color_type selected. color_type is one of PNG_COLOR_TYPE_GRAY, * PNG_COLOR_TYPE_GRAY_ALPHA, PNG_COLOR_TYPE_PALETTE, PNG_COLOR_TYPE_RGB, * or PNG_COLOR_TYPE_RGB_ALPHA. interlace is either PNG_INTERLACE_NONE or * PNG_INTERLACE_ADAM7, and the compression_type and filter_type MUST - * currently be PNG_COMPRESSION_TYPE_BASE and PNG_FILTER_TYPE_BASE. REQUIRED + * currently be PNG_COMPRESSION_TYPE_BASE and PNG_FILTER_TYPE_BASE. + * REQUIRED. */ - png_set_IHDR(png_ptr, info_ptr, width, height, bit_depth, PNG_COLOR_TYPE_???, - PNG_INTERLACE_????, PNG_COMPRESSION_TYPE_BASE, PNG_FILTER_TYPE_BASE); + png_set_IHDR(png_ptr, info_ptr, width, height, bit_depth, + PNG_COLOR_TYPE_???, PNG_INTERLACE_????, + PNG_COMPRESSION_TYPE_BASE, PNG_FILTER_TYPE_BASE); - /* Set the palette if there is one. REQUIRED for indexed-color images */ - palette = (png_colorp)png_malloc(png_ptr, PNG_MAX_PALETTE_LENGTH - * (sizeof (png_color))); + /* Set the palette if there is one. REQUIRED for indexed-color images. */ + palette = (png_colorp)png_malloc(png_ptr, + PNG_MAX_PALETTE_LENGTH * (sizeof (png_color))); /* ... Set palette colors ... */ png_set_PLTE(png_ptr, info_ptr, palette, PNG_MAX_PALETTE_LENGTH); - /* You must not free palette here, because png_set_PLTE only makes a link to - * the palette that you malloced. Wait until you are about to destroy + /* You must not free palette here, because png_set_PLTE only makes a link + * to the palette that you allocated. Wait until you are about to destroy * the png structure. */ - /* Optional significant bit (sBIT) chunk */ + /* Optional significant bit (sBIT) chunk. */ png_color_8 sig_bit; /* If we are dealing with a grayscale image then */ @@ -871,18 +846,17 @@ void write_png(char *file_name /* , ... other image information ... */) png_set_sBIT(png_ptr, info_ptr, &sig_bit); - /* Optional gamma chunk is strongly suggested if you have any guess * as to the correct gamma of the image. */ png_set_gAMA(png_ptr, info_ptr, gamma); - /* Optionally write comments into the image */ + /* Optionally write comments into the image. */ { png_text text_ptr[3]; - char key0[]="Title"; - char text0[]="Mona Lisa"; + char key0[] = "Title"; + char text0[] = "Mona Lisa"; text_ptr[0].key = key0; text_ptr[0].text = text0; text_ptr[0].compression = PNG_TEXT_COMPRESSION_NONE; @@ -890,8 +864,8 @@ void write_png(char *file_name /* , ... other image information ... */) text_ptr[0].lang = NULL; text_ptr[0].lang_key = NULL; - char key1[]="Author"; - char text1[]="Leonardo DaVinci"; + char key1[] = "Author"; + char text1[] = "Leonardo DaVinci"; text_ptr[1].key = key1; text_ptr[1].text = text1; text_ptr[1].compression = PNG_TEXT_COMPRESSION_NONE; @@ -899,8 +873,8 @@ void write_png(char *file_name /* , ... other image information ... */) text_ptr[1].lang = NULL; text_ptr[1].lang_key = NULL; - char key2[]="Description"; - char text2[]="<long text>"; + char key2[] = "Description"; + char text2[] = "<long text>"; text_ptr[2].key = key2; text_ptr[2].text = text2; text_ptr[2].compression = PNG_TEXT_COMPRESSION_zTXt; @@ -911,14 +885,14 @@ void write_png(char *file_name /* , ... other image information ... */) png_set_text(write_ptr, write_info_ptr, text_ptr, 3); } - /* Other optional chunks like cHRM, bKGD, tRNS, tIME, oFFs, pHYs */ + /* Other optional chunks like cHRM, bKGD, tRNS, tIME, oFFs, pHYs. */ - /* Note that if sRGB is present the gAMA and cHRM chunks must be ignored + /* Note that if sRGB is present, the gAMA and cHRM chunks must be ignored * on read and, if your application chooses to write them, they must - * be written in accordance with the sRGB profile + * be written in accordance with the sRGB profile. */ - /* Write the file header information. REQUIRED */ + /* Write the file header information. REQUIRED. */ png_write_info(png_ptr, info_ptr); /* If you want, you can write the info in two steps, in case you need to @@ -942,7 +916,7 @@ void write_png(char *file_name /* , ... other image information ... */) * all optional. Only call them if you want them. */ - /* Invert monochrome pixels */ + /* Invert monochrome pixels. */ png_set_invert_mono(png_ptr); /* Shift the pixels up to a legal bit depth and fill in @@ -950,30 +924,29 @@ void write_png(char *file_name /* , ... other image information ... */) */ png_set_shift(png_ptr, &sig_bit); - /* Pack pixels into bytes */ + /* Pack pixels into bytes. */ png_set_packing(png_ptr); - /* Swap location of alpha bytes from ARGB to RGBA */ + /* Swap location of alpha bytes from ARGB to RGBA. */ png_set_swap_alpha(png_ptr); /* Get rid of filler (OR ALPHA) bytes, pack XRGB/RGBX/ARGB/RGBA into - * RGB (4 channels -> 3 channels). The second parameter is not used. + * RGB (4 channels -> 3 channels). The second parameter is not used. */ png_set_filler(png_ptr, 0, PNG_FILLER_BEFORE); - /* Flip BGR pixels to RGB */ + /* Flip BGR pixels to RGB. */ png_set_bgr(png_ptr); - /* Swap bytes of 16-bit files to most significant byte first */ + /* Swap bytes of 16-bit files to most significant byte first. */ png_set_swap(png_ptr); - /* Swap bits of 1-bit, 2-bit, 4-bit packed pixel formats */ + /* Swap bits of 1-bit, 2-bit, 4-bit packed pixel formats. */ png_set_packswap(png_ptr); - /* Turn on interlace handling if you are not using png_write_image() */ + /* Turn on interlace handling if you are not using png_write_image(). */ if (interlacing != 0) number_passes = png_set_interlace_handling(png_ptr); - else number_passes = 1; @@ -983,29 +956,28 @@ void write_png(char *file_name /* , ... other image information ... */) */ png_uint_32 k, height, width; - /* In this example, "image" is a one-dimensional array of bytes */ + /* In this example, "image" is a one-dimensional array of bytes. */ - /* Guard against integer overflow */ - if (height > PNG_SIZE_MAX/(width*bytes_per_pixel)) { - png_error(png_ptr, "Image_data buffer would be too large"); - } - png_byte image[height*width*bytes_per_pixel]; + /* Guard against integer overflow. */ + if (height > PNG_SIZE_MAX / (width * bytes_per_pixel)) + png_error(png_ptr, "Image data buffer would be too large"); + png_byte image[height * width * bytes_per_pixel]; png_bytep row_pointers[height]; - if (height > PNG_UINT_32_MAX/(sizeof (png_bytep))) - png_error (png_ptr, "Image is too tall to process in memory"); + if (height > PNG_UINT_32_MAX / (sizeof (png_bytep))) + png_error(png_ptr, "Image is too tall to process in memory"); - /* Set up pointers into your "image" byte array */ + /* Set up pointers into your "image" byte array. */ for (k = 0; k < height; k++) - row_pointers[k] = image + k*width*bytes_per_pixel; + row_pointers[k] = image + k * width * bytes_per_pixel; - /* One of the following output methods is REQUIRED */ + /* One of the following output methods is REQUIRED. */ #ifdef entire /* Write out the entire image data in one call */ png_write_image(png_ptr, row_pointers); - /* The other way to write the image - deal with interlacing */ + /* The other way to write the image - deal with interlacing. */ #else no_entire /* Write out the image data by one or more scanlines */ @@ -1017,27 +989,27 @@ void write_png(char *file_name /* , ... other image information ... */) /* Write a few rows at a time. */ png_write_rows(png_ptr, &row_pointers[first_row], number_of_rows); - /* If you are only writing one row at a time, this works */ + /* If you are only writing one row at a time, this works. */ for (y = 0; y < height; y++) png_write_rows(png_ptr, &row_pointers[y], 1); } #endif no_entire /* Use only one output method */ /* You can write optional chunks like tEXt, zTXt, and tIME at the end - * as well. Shouldn't be necessary in 1.2.0 and up as all the public - * chunks are supported and you can use png_set_unknown_chunks() to + * as well. Shouldn't be necessary in 1.2.0 and up, as all the public + * chunks are supported, and you can use png_set_unknown_chunks() to * register unknown chunks into the info structure to be written out. */ - /* It is REQUIRED to call this to finish writing the rest of the file */ + /* It is REQUIRED to call this to finish writing the rest of the file. */ png_write_end(png_ptr, info_ptr); #endif hilevel - /* If you png_malloced a palette, free it here (don't free info_ptr->palette, - * as recommended in versions 1.0.5m and earlier of this example; if - * libpng mallocs info_ptr->palette, libpng will free it). If you - * allocated it with malloc() instead of png_malloc(), use free() instead - * of png_free(). + /* If you png_malloced a palette, free it here. + * (Don't free info_ptr->palette, as shown in versions 1.0.5m and earlier of + * this example; if libpng mallocs info_ptr->palette, libpng will free it). + * If you allocated it with malloc() instead of png_malloc(), use free() + * instead of png_free(). */ png_free(png_ptr, palette); palette = NULL; @@ -1048,19 +1020,20 @@ void write_png(char *file_name /* , ... other image information ... */) */ png_free(png_ptr, trans); trans = NULL; - /* Whenever you use png_free() it is a good idea to set the pointer to + + /* Whenever you use png_free(), it is a good idea to set the pointer to * NULL in case your application inadvertently tries to png_free() it - * again. When png_free() sees a NULL it returns without action, thus - * avoiding the double-free security problem. + * again. When png_free() sees a NULL it returns without action, avoiding + * the double-free problem. */ - /* Clean up after the write, and free any memory allocated */ + /* Clean up after the write, and free any allocated memory. */ png_destroy_write_struct(&png_ptr, &info_ptr); - /* Close the file */ + /* Close the file. */ fclose(fp); - /* That's it */ + /* That's it! */ return (OK); } diff --git a/source/libs/libpng/libpng-src/intel/filter_sse2_intrinsics.c b/source/libs/libpng/libpng-src/intel/filter_sse2_intrinsics.c index ef1fc7d6b..f52aaa800 100644 --- a/source/libs/libpng/libpng-src/intel/filter_sse2_intrinsics.c +++ b/source/libs/libpng/libpng-src/intel/filter_sse2_intrinsics.c @@ -1,12 +1,11 @@ /* filter_sse2_intrinsics.c - SSE2 optimized filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2016-2017 Glenn Randers-Pehrson * Written by Mike Klein and Matt Sarett * Derived from arm/filter_neon_intrinsics.c * - * Last changed in libpng 1.6.31 [July 27, 2017] - * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h @@ -29,39 +28,25 @@ */ static __m128i load4(const void* p) { - return _mm_cvtsi32_si128(*(const int*)p); + int tmp; + memcpy(&tmp, p, sizeof(tmp)); + return _mm_cvtsi32_si128(tmp); } static void store4(void* p, __m128i v) { - *(int*)p = _mm_cvtsi128_si32(v); + int tmp = _mm_cvtsi128_si32(v); + memcpy(p, &tmp, sizeof(int)); } static __m128i load3(const void* p) { - /* We'll load 2 bytes, then 1 byte, - * then mask them together, and finally load into SSE. - */ - const png_uint_16* p01 = (png_const_uint_16p)p; - const png_byte* p2 = (const png_byte*)(p01+1); - - png_uint_32 v012 = (png_uint_32)(*p01) - | (png_uint_32)(*p2) << 16; - return load4(&v012); + png_uint_32 tmp = 0; + memcpy(&tmp, p, 3); + return _mm_cvtsi32_si128(tmp); } static void store3(void* p, __m128i v) { - /* We'll pull from SSE as a 32-bit int, then write - * its bottom two bytes, then its third byte. - */ - png_uint_32 v012; - png_uint_16* p01; - png_byte* p2; - - store4(&v012, v); - - p01 = (png_uint_16p)p; - p2 = (png_byte*)(p01+1); - *p01 = (png_uint_16)v012; - *p2 = (png_byte)(v012 >> 16); + int tmp = _mm_cvtsi128_si32(v); + memcpy(p, &tmp, 3); } void png_read_filter_row_sub3_sse2(png_row_infop row_info, png_bytep row, diff --git a/source/libs/libpng/libpng-src/intel/intel_init.c b/source/libs/libpng/libpng-src/intel/intel_init.c index 8f08baf8c..2f8168b7c 100644 --- a/source/libs/libpng/libpng-src/intel/intel_init.c +++ b/source/libs/libpng/libpng-src/intel/intel_init.c @@ -1,12 +1,11 @@ /* intel_init.c - SSE2 optimized filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2016-2017 Glenn Randers-Pehrson * Written by Mike Klein and Matt Sarett, Google, Inc. * Derived from arm/arm_init.c * - * Last changed in libpng 1.6.29 [March 16, 2017] - * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h diff --git a/source/libs/libpng/libpng-src/libpng-manual.txt b/source/libs/libpng/libpng-src/libpng-manual.txt index b14a53416..19cfed28a 100644 --- a/source/libs/libpng/libpng-src/libpng-manual.txt +++ b/source/libs/libpng/libpng-src/libpng-manual.txt @@ -1,7 +1,6 @@ libpng-manual.txt - A description on how to use and modify libpng - libpng version 1.6.35 - July 15, 2018 - Updated and distributed by Glenn Randers-Pehrson + Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2018 Glenn Randers-Pehrson This document is released under the libpng license. @@ -10,9 +9,13 @@ libpng-manual.txt - A description on how to use and modify libpng Based on: + libpng version 1.6.36 - December 1, 2018 + Updated and distributed by Cosmin Truta + Copyright (c) 2018 Cosmin Truta + libpng versions 0.97, January 1998, through 1.6.35 - July 15, 2018 Updated and distributed by Glenn Randers-Pehrson - Copyright (c) 1998-2017 Glenn Randers-Pehrson + Copyright (c) 1998-2018 Glenn Randers-Pehrson libpng 1.0 beta 6 - version 0.96 - May 28, 1997 Updated and distributed by Andreas Dilger @@ -44,7 +47,6 @@ libpng-manual.txt - A description on how to use and modify libpng XIII. Detecting libpng XIV. Source code repository XV. Coding style - XVI. Y2K Compliance in libpng I. Introduction @@ -65,7 +67,7 @@ file format in application programs. The PNG specification (second edition), November 2003, is available as a W3C Recommendation and as an ISO Standard (ISO/IEC 15948:2004 (E)) at -<https://www.w3.org/TR/2003/REC-PNG-20031110/ +<https://www.w3.org/TR/2003/REC-PNG-20031110/>. The W3C and ISO documents have identical technical content. The PNG-1.2 specification is available at @@ -73,9 +75,9 @@ The PNG-1.2 specification is available at It is technically equivalent to the PNG specification (second edition) but has some additional material. -The PNG-1.0 specification is available as RFC 2083 +The PNG-1.0 specification is available as RFC 2083 at <https://png-mng.sourceforge.io/pub/png/spec/1.0/> and as a -W3C Recommendation <https://www.w3.org/TR/REC-png-961001>. +W3C Recommendation at <https://www.w3.org/TR/REC-png-961001>. Some additional chunks are described in the special-purpose public chunks documents at <http://www.libpng.org/pub/png/spec/register/> @@ -4054,7 +4056,7 @@ Flags containing additional information about the image are held in the 'flags' field of png_image. PNG_IMAGE_FLAG_COLORSPACE_NOT_sRGB == 0x01 - This indicates the the RGB values of the in-memory bitmap do not + This indicates that the RGB values of the in-memory bitmap do not correspond to the red, green and blue end-points defined by sRGB. PNG_IMAGE_FLAG_FAST == 0x02 @@ -4520,7 +4522,7 @@ When PNG_DEBUG = 1, the macros are defined, but only png_debug statements having level = 0 will be printed. There aren't any such statements in this version of libpng, but if you insert some they will be printed. -VII. MNG support +VII. MNG support The MNG specification (available at http://www.libpng.org/pub/mng) allows certain extensions to PNG for PNG images that are embedded in MNG datastreams. @@ -4547,7 +4549,7 @@ or any other MNG chunks; your application must provide its own support for them. You may wish to consider using libmng (available at https://www.libmng.com/) instead. -VIII. Changes to Libpng from version 0.88 +VIII. Changes to Libpng from version 0.88 It should be noted that versions of libpng later than 0.96 are not distributed by the original libpng author, Guy Schalnat, nor by @@ -4602,7 +4604,7 @@ application: png_uint_32 application_vn = PNG_LIBPNG_VER; -IX. Changes to Libpng from version 1.0.x to 1.2.x +IX. Changes to Libpng from version 1.0.x to 1.2.x Support for user memory management was enabled by default. To accomplish this, the functions png_create_read_struct_2(), @@ -4699,7 +4701,7 @@ which also expands tRNS to alpha was replaced with png_set_expand_gray_1_2_4_to_8() which does not. It has been deprecated since libpng-1.0.18 and 1.2.9. -X. Changes to Libpng from version 1.0.x/1.2.x to 1.4.x +X. Changes to Libpng from version 1.0.x/1.2.x to 1.4.x Private libpng prototypes and macro definitions were moved from png.h and pngconf.h into a new pngpriv.h header file. @@ -4809,7 +4811,7 @@ was renamed to PNG_READ_QUANTIZE_SUPPORTED. We removed the trailing '.' from the warning and error messages. -XI. Changes to Libpng from version 1.4.x to 1.5.x +XI. Changes to Libpng from version 1.4.x to 1.5.x From libpng-1.4.0 until 1.4.4, the png_get_uint_16 macro (but not the function) incorrectly returned a value of type png_uint_32. @@ -4872,7 +4874,7 @@ to png_bytepp, and in png_set_iCCP, from png_charp to png_const_bytep. There are changes of form in png.h, including new and changed macros to declare parts of the API. Some API functions with arguments that are pointers to data not modified within the function have been corrected to -declare these arguments with PNG_CONST. +declare these arguments with const. Much of the internal use of C macros to control the library build has also changed and some of this is visible in the exported header files, in @@ -5067,7 +5069,7 @@ even though the default is to use the macros - this allows applications to choose at app buildtime whether or not to use macros (previously impossible because the functions weren't in the default build.) -XII. Changes to Libpng from version 1.5.x to 1.6.x +XII. Changes to Libpng from version 1.5.x to 1.6.x A "simplified API" has been added (see documentation in png.h and a simple example in contrib/examples/pngtopng.c). The new publicly visible API @@ -5230,7 +5232,7 @@ attempt to decode the Exif profile; it simply returns a byte array containing the profile to the calling application which must do its own decoding. -XIII. Detecting libpng +XIII. Detecting libpng The png_get_io_ptr() function has been present since libpng-0.88, has never changed, and is unaffected by conditional compilation macros. It is the @@ -5255,7 +5257,7 @@ or you can browse it with a web browser at https://sourceforge.net/p/libpng/code/ci/libpng16/tree/ Patches can be sent to png-mng-implement at lists.sourceforge.net or -you can upload them to the libpng bug tracker at +uploaded to the libpng bug tracker at https://libpng.sourceforge.io/ @@ -5405,58 +5407,3 @@ We do not use the TAB character for indentation in the C sources. Lines do not exceed 80 characters. Other rules can be inferred by inspecting the libpng source. - -XVI. Y2K Compliance in libpng - -Since the PNG Development group is an ad-hoc body, we can't make -an official declaration. - -This is your unofficial assurance that libpng from version 0.71 and -upward through 1.6.35 are Y2K compliant. It is my belief that earlier -versions were also Y2K compliant. - -Libpng only has two year fields. One is a 2-byte unsigned integer -that will hold years up to 65535. The other, which is deprecated, -holds the date in text format, and will hold years up to 9999. - -The integer is - "png_uint_16 year" in png_time_struct. - -The string is - "char time_buffer[29]" in png_struct. This is no longer used -in libpng-1.6.x and will be removed from libpng-1.7.0. - -There are seven time-related functions: - - png_convert_to_rfc_1123_buffer() in png.c - (formerly png_convert_to_rfc_1152() in error, and - also formerly png_convert_to_rfc_1123()) - png_convert_from_struct_tm() in pngwrite.c, called - in pngwrite.c - png_convert_from_time_t() in pngwrite.c - png_get_tIME() in pngget.c - png_handle_tIME() in pngrutil.c, called in pngread.c - png_set_tIME() in pngset.c - png_write_tIME() in pngwutil.c, called in pngwrite.c - -All appear to handle dates properly in a Y2K environment. The -png_convert_from_time_t() function calls gmtime() to convert from system -clock time, which returns (year - 1900), which we properly convert to -the full 4-digit year. There is a possibility that applications using -libpng are not passing 4-digit years into the png_convert_to_rfc_1123() -function, or that they are incorrectly passing only a 2-digit year -instead of "year - 1900" into the png_convert_from_struct_tm() function, -but this is not under our control. The libpng documentation has always -stated that it works with 4-digit years, and the APIs have been -documented as such. - -The tIME chunk itself is also Y2K compliant. It uses a 2-byte unsigned -integer to hold the year, and can hold years as large as 65535. - -zlib, upon which libpng depends, is also Y2K compliant. It contains -no date-related code. - - - Glenn Randers-Pehrson - libpng maintainer - PNG Development Group diff --git a/source/libs/libpng/libpng-src/libpng.3 b/source/libs/libpng/libpng-src/libpng.3 index 01cd905e6..9757debcc 100644 --- a/source/libs/libpng/libpng-src/libpng.3 +++ b/source/libs/libpng/libpng-src/libpng.3 @@ -1,11 +1,11 @@ -.TH LIBPNG 3 "July 15, 2018" +.TH LIBPNG 3 "December 1, 2018" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35 +libpng \- Portable Network Graphics (PNG) Reference Library 1.6.36 + .SH SYNOPSIS -\fB -#include <png.h>\fP +\fB#include <png.h>\fP -\fBpng_uint_32 png_access_version_number \fI(void\fP\fB);\fP +\fBpng_uint_32 png_access_version_number (void);\fP \fBvoid png_benign_error (png_structp \fP\fIpng_ptr\fP\fB, png_const_charp \fIerror\fP\fB);\fP @@ -35,7 +35,7 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35 \fBpng_structp png_create_write_struct_2 (png_const_charp \fP\fIuser_png_ver\fP\fB, png_voidp \fP\fIerror_ptr\fP\fB, png_error_ptr \fP\fIerror_fn\fP\fB, png_error_ptr \fP\fIwarn_fn\fP\fB, png_voidp \fP\fImem_ptr\fP\fB, png_malloc_ptr \fP\fImalloc_fn\fP\fB, png_free_ptr \fIfree_fn\fP\fB);\fP -\fBvoid png_data_freer (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, int \fP\fIfreer\fP\fB, png_uint_32 \fImask)\fP\fB);\fP +\fBvoid png_data_freer (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, int \fP\fIfreer\fP\fB, png_uint_32 \fImask\fP\fB);\fP \fBvoid png_destroy_info_struct (png_structp \fP\fIpng_ptr\fP\fB, png_infopp \fIinfo_ptr_ptr\fP\fB);\fP @@ -233,9 +233,9 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35 \fBint png_image_write_to_file (png_imagep \fP\fIimage\fP\fB, const char \fP\fI*file\fP\fB, int \fP\fIconvert_to_8bit\fP\fB, const void \fP\fI*buffer\fP\fB, png_int_32 \fP\fIrow_stride\fP\fB, void \fI*colormap\fP\fB);\fP -\fBint png_image_write_to_memory (png_imagep \fP\fIimage\fP\fB, void \fP\fI*memory\fP\fB, png_alloc_size_t * PNG_RESTRICT \fP\fImemory_bytes\fP\fB, int \fP\fIconvert_to_8_bit\fP\fB, const void \fP\fI*buffer\fP\fB, png_int_32 \fP\fIrow_stride\fP\fB, const void \fI*colormap)\fP\fB);\fP +\fBint png_image_write_to_memory (png_imagep \fP\fIimage\fP\fB, void \fP\fI*memory\fP\fB, png_alloc_size_t * PNG_RESTRICT \fP\fImemory_bytes\fP\fB, int \fP\fIconvert_to_8_bit\fP\fB, const void \fP\fI*buffer\fP\fB, png_int_32 \fP\fIrow_stride\fP\fB, const void \fI*colormap\fP\fB);\fP -\fBint png_image_write_to_stdio (png_imagep \fP\fIimage\fP\fB, FILE \fP\fI*file\fP\fB, int \fP\fIconvert_to_8_bit\fP\fB, const void \fP\fI*buffer\fP\fB, png_int_32 \fP\fIrow_stride\fP\fB, void \fI*colormap)\fP\fB);\fP +\fBint png_image_write_to_stdio (png_imagep \fP\fIimage\fP\fB, FILE \fP\fI*file\fP\fB, int \fP\fIconvert_to_8_bit\fP\fB, const void \fP\fI*buffer\fP\fB, png_int_32 \fP\fIrow_stride\fP\fB, void \fI*colormap\fP\fB);\fP \fBvoid png_info_init_3 (png_infopp \fP\fIinfo_ptr\fP\fB, size_t \fIpng_info_struct_size\fP\fB);\fP @@ -253,9 +253,9 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35 \fBvoid png_process_data (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, png_bytep \fP\fIbuffer\fP\fB, size_t \fIbuffer_size\fP\fB);\fP -\fBsize_t png_process_data_pause \fP\fI(png_structp\fP\fB, int \fIsave\fP\fB);\fP +\fBsize_t png_process_data_pause (png_structp \fP\fIpng_ptr\fP\fB, int \fIsave\fP\fB);\fP -\fBpng_uint_32 png_process_data_skip \fI(png_structp\fP\fB);\fP +\fBpng_uint_32 png_process_data_skip (png_structp \fP\fIpng_ptr\fP\fB);\fP \fBvoid png_progressive_combine_row (png_structp \fP\fIpng_ptr\fP\fB, png_bytep \fP\fIold_row\fP\fB, png_bytep \fInew_row\fP\fB);\fP @@ -297,7 +297,7 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35 \fBvoid png_set_bKGD (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, png_color_16p \fIbackground\fP\fB);\fP -\fBvoid png_set_check_for_invalid_index(png_structrp \fP\fIpng_ptr\fP\fB, int \fIallowed\fP\fB);\fP +\fBvoid png_set_check_for_invalid_index (png_structrp \fP\fIpng_ptr\fP\fB, int \fIallowed\fP\fB);\fP \fBvoid png_set_cHRM (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, double \fP\fIwhite_x\fP\fB, double \fP\fIwhite_y\fP\fB, double \fP\fIred_x\fP\fB, double \fP\fIred_y\fP\fB, double \fP\fIgreen_x\fP\fB, double \fP\fIgreen_y\fP\fB, double \fP\fIblue_x\fP\fB, double \fIblue_y\fP\fB);\fP @@ -353,7 +353,7 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35 \fBvoid png_set_eXIf (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, png_bytep \fIexif\fP\fB);\fP -\fBvoid png_set_eXIf_1 (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, const png_uint_32 \fP\fInum_exif\fP\fB, png_bytep \fIexif\fP\fB);\fP +\fBvoid png_set_eXIf_1 (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, png_uint_32 \fP\fInum_exif\fP\fB, png_bytep \fIexif\fP\fB);\fP \fBvoid png_set_hIST (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, png_uint_16p \fIhist\fP\fB);\fP @@ -453,7 +453,7 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35 \fBvoid png_set_text_compression_window_bits (png_structp \fP\fIpng_ptr\fP\fB, int \fIwindow_bits\fP\fB);\fP -\fBvoid \fP\fIpng_set_text_compression_method\fP\fB, (png_structp \fP\fIpng_ptr\fP\fB, int \fImethod)\fP\fB);\fP +\fBvoid png_set_text_compression_method (png_structp \fP\fIpng_ptr\fP\fB, int \fImethod\fP\fB);\fP \fBvoid png_set_tIME (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, png_timep \fImod_time\fP\fB);\fP @@ -515,11 +515,11 @@ the Portable Network Graphics (PNG) format image files. It uses the .IR zlib(3) compression library. Following is a copy of the libpng-manual.txt file that accompanies libpng. + .SH LIBPNG.TXT libpng-manual.txt - A description on how to use and modify libpng - libpng version 1.6.35 - July 15, 2018 - Updated and distributed by Glenn Randers-Pehrson + Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2018 Glenn Randers-Pehrson This document is released under the libpng license. @@ -528,9 +528,13 @@ libpng-manual.txt - A description on how to use and modify libpng Based on: + libpng version 1.6.36 - December 1, 2018 + Updated and distributed by Cosmin Truta + Copyright (c) 2018 Cosmin Truta + libpng versions 0.97, January 1998, through 1.6.35 - July 15, 2018 Updated and distributed by Glenn Randers-Pehrson - Copyright (c) 1998-2017 Glenn Randers-Pehrson + Copyright (c) 1998-2018 Glenn Randers-Pehrson libpng 1.0 beta 6 - version 0.96 - May 28, 1997 Updated and distributed by Andreas Dilger @@ -562,7 +566,6 @@ libpng-manual.txt - A description on how to use and modify libpng XIII. Detecting libpng XIV. Source code repository XV. Coding style - XVI. Y2K Compliance in libpng .SH I. Introduction @@ -583,7 +586,7 @@ file format in application programs. The PNG specification (second edition), November 2003, is available as a W3C Recommendation and as an ISO Standard (ISO/IEC 15948:2004 (E)) at -<https://www.w3.org/TR/2003/REC-PNG-20031110/ +<https://www.w3.org/TR/2003/REC-PNG-20031110/>. The W3C and ISO documents have identical technical content. The PNG-1.2 specification is available at @@ -591,9 +594,9 @@ The PNG-1.2 specification is available at It is technically equivalent to the PNG specification (second edition) but has some additional material. -The PNG-1.0 specification is available as RFC 2083 +The PNG-1.0 specification is available as RFC 2083 at <https://png-mng.sourceforge.io/pub/png/spec/1.0/> and as a -W3C Recommendation <https://www.w3.org/TR/REC-png-961001>. +W3C Recommendation at <https://www.w3.org/TR/REC-png-961001>. Some additional chunks are described in the special-purpose public chunks documents at <http://www.libpng.org/pub/png/spec/register/> @@ -4572,7 +4575,7 @@ Flags containing additional information about the image are held in the 'flags' field of png_image. PNG_IMAGE_FLAG_COLORSPACE_NOT_sRGB == 0x01 - This indicates the the RGB values of the in-memory bitmap do not + This indicates that the RGB values of the in-memory bitmap do not correspond to the red, green and blue end-points defined by sRGB. PNG_IMAGE_FLAG_FAST == 0x02 @@ -5038,7 +5041,7 @@ When PNG_DEBUG = 1, the macros are defined, but only png_debug statements having level = 0 will be printed. There aren't any such statements in this version of libpng, but if you insert some they will be printed. -.SH VII. MNG support +.SH VII. MNG support The MNG specification (available at http://www.libpng.org/pub/mng) allows certain extensions to PNG for PNG images that are embedded in MNG datastreams. @@ -5065,7 +5068,7 @@ or any other MNG chunks; your application must provide its own support for them. You may wish to consider using libmng (available at https://www.libmng.com/) instead. -.SH VIII. Changes to Libpng from version 0.88 +.SH VIII. Changes to Libpng from version 0.88 It should be noted that versions of libpng later than 0.96 are not distributed by the original libpng author, Guy Schalnat, nor by @@ -5120,7 +5123,7 @@ application: png_uint_32 application_vn = PNG_LIBPNG_VER; -.SH IX. Changes to Libpng from version 1.0.x to 1.2.x +.SH IX. Changes to Libpng from version 1.0.x to 1.2.x Support for user memory management was enabled by default. To accomplish this, the functions png_create_read_struct_2(), @@ -5217,7 +5220,7 @@ which also expands tRNS to alpha was replaced with png_set_expand_gray_1_2_4_to_8() which does not. It has been deprecated since libpng-1.0.18 and 1.2.9. -.SH X. Changes to Libpng from version 1.0.x/1.2.x to 1.4.x +.SH X. Changes to Libpng from version 1.0.x/1.2.x to 1.4.x Private libpng prototypes and macro definitions were moved from png.h and pngconf.h into a new pngpriv.h header file. @@ -5327,7 +5330,7 @@ was renamed to PNG_READ_QUANTIZE_SUPPORTED. We removed the trailing '.' from the warning and error messages. -.SH XI. Changes to Libpng from version 1.4.x to 1.5.x +.SH XI. Changes to Libpng from version 1.4.x to 1.5.x From libpng-1.4.0 until 1.4.4, the png_get_uint_16 macro (but not the function) incorrectly returned a value of type png_uint_32. @@ -5390,7 +5393,7 @@ to png_bytepp, and in png_set_iCCP, from png_charp to png_const_bytep. There are changes of form in png.h, including new and changed macros to declare parts of the API. Some API functions with arguments that are pointers to data not modified within the function have been corrected to -declare these arguments with PNG_CONST. +declare these arguments with const. Much of the internal use of C macros to control the library build has also changed and some of this is visible in the exported header files, in @@ -5585,7 +5588,7 @@ even though the default is to use the macros - this allows applications to choose at app buildtime whether or not to use macros (previously impossible because the functions weren't in the default build.) -.SH XII. Changes to Libpng from version 1.5.x to 1.6.x +.SH XII. Changes to Libpng from version 1.5.x to 1.6.x A "simplified API" has been added (see documentation in png.h and a simple example in contrib/examples/pngtopng.c). The new publicly visible API @@ -5748,7 +5751,7 @@ attempt to decode the Exif profile; it simply returns a byte array containing the profile to the calling application which must do its own decoding. -.SH XIII. Detecting libpng +.SH XIII. Detecting libpng The png_get_io_ptr() function has been present since libpng-0.88, has never changed, and is unaffected by conditional compilation macros. It is the @@ -5924,61 +5927,6 @@ Lines do not exceed 80 characters. Other rules can be inferred by inspecting the libpng source. -.SH XVI. Y2K Compliance in libpng - -Since the PNG Development group is an ad-hoc body, we can't make -an official declaration. - -This is your unofficial assurance that libpng from version 0.71 and -upward through 1.6.35 are Y2K compliant. It is my belief that earlier -versions were also Y2K compliant. - -Libpng only has two year fields. One is a 2-byte unsigned integer -that will hold years up to 65535. The other, which is deprecated, -holds the date in text format, and will hold years up to 9999. - -The integer is - "png_uint_16 year" in png_time_struct. - -The string is - "char time_buffer[29]" in png_struct. This is no longer used -in libpng-1.6.x and will be removed from libpng-1.7.0. - -There are seven time-related functions: - - png_convert_to_rfc_1123_buffer() in png.c - (formerly png_convert_to_rfc_1152() in error, and - also formerly png_convert_to_rfc_1123()) - png_convert_from_struct_tm() in pngwrite.c, called - in pngwrite.c - png_convert_from_time_t() in pngwrite.c - png_get_tIME() in pngget.c - png_handle_tIME() in pngrutil.c, called in pngread.c - png_set_tIME() in pngset.c - png_write_tIME() in pngwutil.c, called in pngwrite.c - -All appear to handle dates properly in a Y2K environment. The -png_convert_from_time_t() function calls gmtime() to convert from system -clock time, which returns (year - 1900), which we properly convert to -the full 4-digit year. There is a possibility that applications using -libpng are not passing 4-digit years into the png_convert_to_rfc_1123() -function, or that they are incorrectly passing only a 2-digit year -instead of "year - 1900" into the png_convert_from_struct_tm() function, -but this is not under our control. The libpng documentation has always -stated that it works with 4-digit years, and the APIs have been -documented as such. - -The tIME chunk itself is also Y2K compliant. It uses a 2-byte unsigned -integer to hold the year, and can hold years as large as 65535. - -zlib, upon which libpng depends, is also Y2K compliant. It contains -no date-related code. - - - Glenn Randers-Pehrson - libpng maintainer - PNG Development Group - .SH NOTE Note about libpng version numbers: @@ -5989,9 +5937,9 @@ on the library has not always been consistent and straightforward. The following table summarizes matters since version 0.89c, which was the first widely used release: - source png.h png.h shared-lib - version string int version - ------- ------ ----- ---------- + source png.h png.h shared-lib + version string int version + ------- ------ ----- ---------- 0.89c "1.0 beta 3" 0.89 89 1.0.89 0.90 "1.0 beta 4" 0.90 90 0.90 [should have been 2.0.90] 0.95 "1.0 beta 5" 0.95 95 0.95 [should have been 2.0.95] @@ -6026,23 +5974,25 @@ the first widely used release: 1.0.7rc1-2 1 10007 2.1.0.7rc1-2 (binary compatible) 1.0.7 1 10007 (still compatible) ... - 1.0.19 10 10019 10.so.0.19[.0] + 1.0.69 10 10069 10.so.0.69[.0] ... 1.2.59 13 10259 12.so.0.59[.0] ... + 1.4.20 14 10420 14.so.0.20[.0] + ... 1.5.30 15 10530 15.so.15.30[.0] ... 1.6.35 16 10635 16.so.16.35[.0] -Henceforth the source version will match the shared-library minor -and patch numbers; the shared-library major version number will be -used for changes in backward compatibility, as it is intended. The -PNG_PNGLIB_VER macro, which is not used within libpng but is available -for applications, is an unsigned integer of the form xyyzz corresponding -to the source version x.y.z (leading zeros in y and z). Beta versions -were given the previous public release number plus a letter, until -version 1.0.6j; from then on they were given the upcoming public -release number plus "betaNN" or "rcNN". +Henceforth the source version will match the shared-library minor and +patch numbers; the shared-library major version number will be used for +changes in backward compatibility, as it is intended. +The PNG_PNGLIB_VER macro, which is not used within libpng but is +available for applications, is an unsigned integer of the form XYYZZ +corresponding to the source version X.Y.Z (leading zeros in Y and Z). +Beta versions were given the previous public release number plus a +letter, until version 1.0.6j; from then on they were given the upcoming +public release number plus "betaNN" or "rcNN". .SH "SEE ALSO" .IR libpngpf(3) ", " png(5) @@ -6079,8 +6029,9 @@ In the case of any inconsistency between the PNG specification and this library, the specification takes precedence. .SH AUTHORS -This man page: Glenn Randers-Pehrson -<glennrp at users.sourceforge.net> +This man page: +Initially created by Glenn Randers-Pehrson. +Maintained by Cosmin Truta. The contributing authors would like to thank all those who helped with testing, bug fixes, and patience. This wouldn't have been @@ -6088,9 +6039,9 @@ possible without all of you. Thanks to Frank J. T. Wojcik for helping with the documentation. -Libpng version 1.6.35 - July 15, 2018: +Libpng: Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. -Maintained by Glenn Randers-Pehrson. +Maintained by Cosmin Truta. Supported by the PNG development group .br @@ -6100,146 +6051,4 @@ png-mng-implement at lists.sourceforge.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement to subscribe). -.SH NOTICES: - -This copy of the libpng notices is provided for your convenience. In case of -any discrepancy between this copy and the notices in the file png.h that is -included in the libpng distribution, the latter shall prevail. - -COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: - -If you modify libpng you may insert additional notices immediately following -this sentence. - -This code is released under the libpng license. - -libpng versions 1.0.7, July 1, 2000 through 1.6.35, July 15, 2018 are -Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are -derived from libpng-1.0.6, and are distributed according to the same -disclaimer and license as libpng-1.0.6 with the following individuals -added to the list of Contributing Authors: - - Simon-Pierre Cadieux - Eric S. Raymond - Mans Rullgard - Cosmin Truta - Gilles Vollant - James Yu - Mandar Sahastrabuddhe - Google Inc. - Vadim Barkov - -and with the following additions to the disclaimer: - - There is no warranty against interference with your enjoyment of the - library or against infringement. There is no warranty that our - efforts or the library will fulfill any of your particular purposes - or needs. This library is provided with all faults, and the entire - risk of satisfactory quality, performance, accuracy, and effort is with - the user. - -Some files in the "contrib" directory and some configure-generated -files that are distributed with libpng have other copyright owners and -are released under other open source licenses. - -libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are -Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from -libpng-0.96, and are distributed according to the same disclaimer and -license as libpng-0.96, with the following individuals added to the list -of Contributing Authors: - - Tom Lane - Glenn Randers-Pehrson - Willem van Schaik - -libpng versions 0.89, June 1996, through 0.96, May 1997, are -Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88, -and are distributed according to the same disclaimer and license as -libpng-0.88, with the following individuals added to the list of -Contributing Authors: - - John Bowler - Kevin Bracey - Sam Bushell - Magnus Holmgren - Greg Roelofs - Tom Tanner - -Some files in the "scripts" directory have other copyright owners -but are released under this license. - -libpng versions 0.5, May 1995, through 0.88, January 1996, are -Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. - -For the purposes of this copyright and license, "Contributing Authors" -is defined as the following set of individuals: - - Andreas Dilger - Dave Martindale - Guy Eric Schalnat - Paul Schmidt - Tim Wegner - -The PNG Reference Library is supplied "AS IS". The Contributing Authors -and Group 42, Inc. disclaim all warranties, expressed or implied, -including, without limitation, the warranties of merchantability and of -fitness for any purpose. The Contributing Authors and Group 42, Inc. -assume no liability for direct, indirect, incidental, special, exemplary, -or consequential damages, which may result from the use of the PNG -Reference Library, even if advised of the possibility of such damage. - -Permission is hereby granted to use, copy, modify, and distribute this -source code, or portions hereof, for any purpose, without fee, subject -to the following restrictions: - - 1. The origin of this source code must not be misrepresented. - - 2. Altered versions must be plainly marked as such and must not - be misrepresented as being the original source. - - 3. This Copyright notice may not be removed or altered from any - source or altered source distribution. - -The Contributing Authors and Group 42, Inc. specifically permit, without -fee, and encourage the use of this source code as a component to -supporting the PNG file format in commercial products. If you use this -source code in a product, acknowledgment is not required but would be -appreciated. - -END OF COPYRIGHT NOTICE, DISCLAIMER, and LICENSE. - -TRADEMARK: - -The name "libpng" has not been registered by the Copyright owner -as a trademark in any jurisdiction. However, because libpng has -been distributed and maintained world-wide, continually since 1995, -the Copyright owner claims "common-law trademark protection" in any -jurisdiction where common-law trademark is recognized. - -OSI CERTIFICATION: - -Libpng is OSI Certified Open Source Software. OSI Certified Open Source is -a certification mark of the Open Source Initiative. OSI has not addressed -the additional disclaimers inserted at version 1.0.7. - -EXPORT CONTROL: - -The Copyright owner believes that the Export Control Classification -Number (ECCN) for libpng is EAR99, which means not subject to export -controls or International Traffic in Arms Regulations (ITAR) because -it is open source, publicly available software, that does not contain -any encryption software. See the EAR, paragraphs 734.3(b)(3) and -734.7(b). - -A "png_get_copyright" function is available, for convenient use in "about" -boxes and the like: - - printf("%s", png_get_copyright(NULL)); - -Also, the PNG logo (in PNG format, of course) is supplied in the -files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). - -Glenn Randers-Pehrson -July 15, 2018 - .\" end of man page diff --git a/source/libs/libpng/libpng-src/libpngpf.3 b/source/libs/libpng/libpng-src/libpngpf.3 index ed371a41a..b736d82c4 100644 --- a/source/libs/libpng/libpng-src/libpngpf.3 +++ b/source/libs/libpng/libpng-src/libpngpf.3 @@ -1,7 +1,8 @@ -.TH LIBPNGPF 3 "July 15, 2018" +.TH LIBPNGPF 3 "December 1, 2018" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35 +libpng \- Portable Network Graphics (PNG) Reference Library 1.6.36 (private functions) + .SH SYNOPSIS \fB#include \fI"pngpriv.h" @@ -16,7 +17,8 @@ The functions previously listed here are used privately by libpng and are not available for use by applications. They are not "exported" to applications using shared libraries. -.SH SEE ALSO +.SH "SEE ALSO" .BR "png"(5), " libpng"(3), " zlib"(3), " deflate"(5), " " and " zlib"(5) -.SH AUTHOR -Glenn Randers-Pehrson + +.SH AUTHORS +Cosmin Truta, Glenn Randers-Pehrson diff --git a/source/libs/libpng/libpng-src/mips/filter_msa_intrinsics.c b/source/libs/libpng/libpng-src/mips/filter_msa_intrinsics.c index 570562801..a57917942 100644 --- a/source/libs/libpng/libpng-src/mips/filter_msa_intrinsics.c +++ b/source/libs/libpng/libpng-src/mips/filter_msa_intrinsics.c @@ -1,14 +1,15 @@ /* filter_msa_intrinsics.c - MSA optimised filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2016 Glenn Randers-Pehrson * Written by Mandar Sahastrabuddhe, August 2016. - * Last changed in libpng 1.6.25 [September 1, 2016] * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h */ + #include <stdio.h> #include <stdint.h> #include "../pngpriv.h" diff --git a/source/libs/libpng/libpng-src/mips/mips_init.c b/source/libs/libpng/libpng-src/mips/mips_init.c index 0bfb7a32e..8dd283dee 100644 --- a/source/libs/libpng/libpng-src/mips/mips_init.c +++ b/source/libs/libpng/libpng-src/mips/mips_init.c @@ -1,14 +1,15 @@ /* mips_init.c - MSA optimised filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2016 Glenn Randers-Pehrson * Written by Mandar Sahastrabuddhe, 2016. - * Last changed in libpng 1.6.25 [September 1, 2016] * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h */ + /* Below, after checking __linux__, various non-C90 POSIX 1003.1 functions are * called. */ diff --git a/source/libs/libpng/libpng-src/png.5 b/source/libs/libpng/libpng-src/png.5 index b0cbd2cfa..2077d1f2a 100644 --- a/source/libs/libpng/libpng-src/png.5 +++ b/source/libs/libpng/libpng-src/png.5 @@ -1,47 +1,49 @@ -.TH PNG 5 "April 1, 2017" +.TH PNG 5 "December 1, 2018" .SH NAME png \- Portable Network Graphics (PNG) format + .SH DESCRIPTION PNG (Portable Network Graphics) is an extensible file format for the -lossless, portable, well-compressed storage of raster images. PNG provides -a patent-free replacement for GIF and can also replace many +lossless, portable, well-compressed storage of raster images. PNG +provides a patent-free replacement for GIF, and can also replace many common uses of TIFF. Indexed-color, grayscale, and truecolor images are -supported, plus an optional alpha channel. Sample depths range from +supported, plus an optional alpha channel. Sample depths range from 1 to 16 bits. .br - -PNG is designed to work well in online viewing applications, such as the -World Wide Web, so it is fully streamable with a progressive display -option. PNG is robust, providing both full file integrity checking and -fast, simple detection of common transmission errors. Also, PNG can store -gamma and chromaticity data for improved color matching on heterogeneous -platforms. +PNG is designed to work well in online viewing applications, such +as the World Wide Web, so it is fully streamable with a progressive +display option. PNG is robust, providing both full file integrity +checking and fast, simple detection of common transmission errors. +Also, PNG can store gamma and chromaticity data for improved color +matching on heterogeneous platforms. .SH "SEE ALSO" .BR "libpng"(3), " libpngpf"(3), " zlib"(3), " deflate"(5), " " and " zlib"(5) .LP -PNG specification (second edition), November 2003: +PNG Specification (Second Edition), November 2003: .IP .br - <https://www.w3.org/TR/2003/REC-PNG-20031110/ -PNG 1.2 specification, July 1999: +https://www.w3.org/TR/2003/REC-PNG-20031110/ +.LP +PNG 1.2 Specification, July 1999: .IP .br https://png-mng.sourceforge.io/pub/png/spec/1.2/ .LP -PNG 1.0 specification, October 1996: +PNG 1.0 Specification, October 1996: .IP .br RFC 2083 -.IP .br https://www.ietf.org/rfc/rfc2083.txt +.IP .br -or (as a W3C Recommendation) at +or W3C Recommendation .br https://www.w3.org/TR/REC-png-961001 + .SH AUTHORS -This man page: Glenn Randers-Pehrson +This man page: Cosmin Truta, Glenn Randers-Pehrson .LP Portable Network Graphics (PNG) Specification (Second Edition) Information technology - Computer graphics and image processing - @@ -53,22 +55,30 @@ Glenn Randers-Pehrson and others (png-list). .LP Portable Network Graphics (PNG) Specification Version 1.0 (October 1, 1996): Thomas Boutell and others (png-list). -.LP - -.SH COPYRIGHT NOTICE +.SH COPYRIGHT .LP -This man page is Copyright (c) 1998-2006 Glenn Randers-Pehrson. See png.h -for conditions of use and distribution. +This man page is +.br +Copyright (c) 2018 Cosmin Truta. +.br +Copyright (c) 1998-2006 Glenn Randers-Pehrson. +.br +See png.h for conditions of use and distribution. .LP The PNG Specification (Second Edition) is +.br Copyright (c) 2003 W3C. (MIT, ERCIM, Keio), All Rights Reserved. .LP -The PNG-1.2 specification is copyright (c) 1999 Glenn Randers-Pehrson. +The PNG-1.2 Specification is +.br +Copyright (c) 1999 Glenn Randers-Pehrson. +.br See the specification for conditions of use and distribution. .LP -The PNG-1.0 specification is copyright (c) 1996 Massachusetts Institute of -Technology. See the specification for conditions of use and distribution. -.LP +The PNG-1.0 Specification is +.br +Copyright (c) 1996 Massachusetts Institute of Technology. +.br +See the specification for conditions of use and distribution. .\" end of man page - diff --git a/source/libs/libpng/libpng-src/png.c b/source/libs/libpng/libpng-src/png.c index a25afebcc..3dce191d1 100644 --- a/source/libs/libpng/libpng-src/png.c +++ b/source/libs/libpng/libpng-src/png.c @@ -1,10 +1,10 @@ /* png.c - location for general purpose libpng functions * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -14,7 +14,7 @@ #include "pngpriv.h" /* Generate a compiler error if there is an old png.h in the search path. */ -typedef png_libpng_version_1_6_35 Your_png_h_is_not_version_1_6_35; +typedef png_libpng_version_1_6_36 Your_png_h_is_not_version_1_6_36; #ifdef __GNUC__ /* The version tests may need to be added to, but the problem warning has @@ -736,7 +736,7 @@ png_save_int_32(png_bytep buf, png_int_32 i) int PNGAPI png_convert_to_rfc1123_buffer(char out[29], png_const_timep ptime) { - static PNG_CONST char short_months[12][4] = + static const char short_months[12][4] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; @@ -814,20 +814,14 @@ png_get_copyright(png_const_structrp png_ptr) #ifdef PNG_STRING_COPYRIGHT return PNG_STRING_COPYRIGHT #else -# ifdef __STDC__ return PNG_STRING_NEWLINE \ - "libpng version 1.6.35 - July 15, 2018" PNG_STRING_NEWLINE \ + "libpng version 1.6.36" PNG_STRING_NEWLINE \ + "Copyright (c) 2018 Cosmin Truta" PNG_STRING_NEWLINE \ "Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson" \ PNG_STRING_NEWLINE \ "Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \ "Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc." \ PNG_STRING_NEWLINE; -# else - return "libpng version 1.6.35 - July 15, 2018\ - Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson\ - Copyright (c) 1996-1997 Andreas Dilger\ - Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc."; -# endif #endif } @@ -1121,7 +1115,7 @@ png_colorspace_set_gamma(png_const_structrp png_ptr, png_colorspacerp colorspace, png_fixed_point gAMA) { /* Changed in libpng-1.5.4 to limit the values to ensure overflow can't - * occur. Since the fixed point representation is asymetrical it is + * occur. Since the fixed point representation is asymmetrical it is * possible for 1/gamma to overflow the limit of 21474 and this means the * gamma value must be at least 5/100000 and hence at most 20000.0. For * safety the limits here are a little narrower. The values are 0.00016 to @@ -3134,11 +3128,11 @@ png_ascii_from_fp(png_const_structrp png_ptr, png_charp ascii, size_t size, /* The total output count (max) is now 4+precision */ /* Check for an exponent, if we don't need one we are - * done and just need to terminate the string. At - * this point exp_b10==(-1) is effectively a flag - it got - * to '-1' because of the decrement after outputting - * the decimal point above (the exponent required is - * *not* -1!) + * done and just need to terminate the string. At this + * point, exp_b10==(-1) is effectively a flag: it got + * to '-1' because of the decrement, after outputting + * the decimal point above. (The exponent required is + * *not* -1.) */ if (exp_b10 >= (-1) && exp_b10 <= 2) { @@ -3976,18 +3970,18 @@ png_gamma_correct(png_structrp png_ptr, unsigned int value, */ static void png_build_16bit_table(png_structrp png_ptr, png_uint_16pp *ptable, - PNG_CONST unsigned int shift, PNG_CONST png_fixed_point gamma_val) + unsigned int shift, png_fixed_point gamma_val) { /* Various values derived from 'shift': */ - PNG_CONST unsigned int num = 1U << (8U - shift); + unsigned int num = 1U << (8U - shift); #ifdef PNG_FLOATING_ARITHMETIC_SUPPORTED /* CSE the division and work round wacky GCC warnings (see the comments * in png_gamma_8bit_correct for where these come from.) */ - PNG_CONST double fmax = 1./(((png_int_32)1 << (16U - shift))-1); + double fmax = 1.0 / (((png_int_32)1 << (16U - shift)) - 1); #endif - PNG_CONST unsigned int max = (1U << (16U - shift))-1U; - PNG_CONST unsigned int max_by_2 = 1U << (15U-shift); + unsigned int max = (1U << (16U - shift)) - 1U; + unsigned int max_by_2 = 1U << (15U - shift); unsigned int i; png_uint_16pp table = *ptable = @@ -4053,10 +4047,10 @@ png_build_16bit_table(png_structrp png_ptr, png_uint_16pp *ptable, */ static void png_build_16to8_table(png_structrp png_ptr, png_uint_16pp *ptable, - PNG_CONST unsigned int shift, PNG_CONST png_fixed_point gamma_val) + unsigned int shift, png_fixed_point gamma_val) { - PNG_CONST unsigned int num = 1U << (8U - shift); - PNG_CONST unsigned int max = (1U << (16U - shift))-1U; + unsigned int num = 1U << (8U - shift); + unsigned int max = (1U << (16U - shift))-1U; unsigned int i; png_uint_32 last; @@ -4121,7 +4115,7 @@ png_build_16to8_table(png_structrp png_ptr, png_uint_16pp *ptable, */ static void png_build_8bit_table(png_structrp png_ptr, png_bytepp ptable, - PNG_CONST png_fixed_point gamma_val) + png_fixed_point gamma_val) { unsigned int i; png_bytep table = *ptable = (png_bytep)png_malloc(png_ptr, 256); diff --git a/source/libs/libpng/libpng-src/png.h b/source/libs/libpng/libpng-src/png.h index 19e464cc1..8e272a055 100644 --- a/source/libs/libpng/libpng-src/png.h +++ b/source/libs/libpng/libpng-src/png.h @@ -1,29 +1,65 @@ /* png.h - header file for PNG reference library * - * libpng version 1.6.35, July 15, 2018 + * libpng version 1.6.36 - December 1, 2018 * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * - * This code is released under the libpng license (See LICENSE, below) + * This code is released under the libpng license. (See LICENSE, below.) * * Authors and maintainers: * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat * libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger - * libpng versions 0.97, January 1998, through 1.6.35, July 15, 2018: + * libpng versions 0.97, January 1998, through 1.6.35, July 2018: * Glenn Randers-Pehrson. + * libpng version 1.6.36, December 1, 2018: Cosmin Truta * See also "Contributing Authors", below. */ /* - * COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: + * COPYRIGHT NOTICE, DISCLAIMER, and LICENSE + * ========================================= + * + * PNG Reference Library License version 2 + * --------------------------------------- + * + * * Copyright (c) 1995-2018 The PNG Reference Library Authors. + * * Copyright (c) 2018 Cosmin Truta. + * * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. + * * Copyright (c) 1996-1997 Andreas Dilger. + * * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. + * + * The software is supplied "as is", without warranty of any kind, + * express or implied, including, without limitation, the warranties + * of merchantability, fitness for a particular purpose, title, and + * non-infringement. In no even shall the Copyright owners, or + * anyone distributing the software, be liable for any damages or + * other liability, whether in contract, tort or otherwise, arising + * from, out of, or in connection with the software, or the use or + * other dealings in the software, even if advised of the possibility + * of such damage. + * + * Permission is hereby granted to use, copy, modify, and distribute + * this software, or portions hereof, for any purpose, without fee, + * subject to the following restrictions: * - * If you modify libpng you may insert additional notices immediately following - * this sentence. + * 1. The origin of this software must not be misrepresented; you + * must not claim that you wrote the original software. If you + * use this software in a product, an acknowledgment in the product + * documentation would be appreciated, but is not required. * - * This code is released under the libpng license. + * 2. Altered source versions must be plainly marked as such, and must + * not be misrepresented as being the original software. + * + * 3. This Copyright notice may not be removed or altered from any + * source or altered source distribution. + * + * + * PNG Reference Library License version 1 (for libpng 0.5 through 1.6.35) + * ----------------------------------------------------------------------- * * libpng versions 1.0.7, July 1, 2000 through 1.6.35, July 15, 2018 are * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are @@ -31,38 +67,38 @@ * disclaimer and license as libpng-1.0.6 with the following individuals * added to the list of Contributing Authors: * - * Simon-Pierre Cadieux - * Eric S. Raymond - * Mans Rullgard - * Cosmin Truta - * Gilles Vollant - * James Yu - * Mandar Sahastrabuddhe - * Google Inc. - * Vadim Barkov + * Simon-Pierre Cadieux + * Eric S. Raymond + * Mans Rullgard + * Cosmin Truta + * Gilles Vollant + * James Yu + * Mandar Sahastrabuddhe + * Google Inc. + * Vadim Barkov * * and with the following additions to the disclaimer: * - * There is no warranty against interference with your enjoyment of the - * library or against infringement. There is no warranty that our - * efforts or the library will fulfill any of your particular purposes - * or needs. This library is provided with all faults, and the entire - * risk of satisfactory quality, performance, accuracy, and effort is with - * the user. + * There is no warranty against interference with your enjoyment of + * the library or against infringement. There is no warranty that our + * efforts or the library will fulfill any of your particular purposes + * or needs. This library is provided with all faults, and the entire + * risk of satisfactory quality, performance, accuracy, and effort is + * with the user. * * Some files in the "contrib" directory and some configure-generated - * files that are distributed with libpng have other copyright owners and + * files that are distributed with libpng have other copyright owners, and * are released under other open source licenses. * * libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are * Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from * libpng-0.96, and are distributed according to the same disclaimer and - * license as libpng-0.96, with the following individuals added to the list - * of Contributing Authors: + * license as libpng-0.96, with the following individuals added to the + * list of Contributing Authors: * - * Tom Lane - * Glenn Randers-Pehrson - * Willem van Schaik + * Tom Lane + * Glenn Randers-Pehrson + * Willem van Schaik * * libpng versions 0.89, June 1996, through 0.96, May 1997, are * Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88, @@ -70,14 +106,14 @@ * libpng-0.88, with the following individuals added to the list of * Contributing Authors: * - * John Bowler - * Kevin Bracey - * Sam Bushell - * Magnus Holmgren - * Greg Roelofs - * Tom Tanner + * John Bowler + * Kevin Bracey + * Sam Bushell + * Magnus Holmgren + * Greg Roelofs + * Tom Tanner * - * Some files in the "scripts" directory have other copyright owners + * Some files in the "scripts" directory have other copyright owners, * but are released under this license. * * libpng versions 0.5, May 1995, through 0.88, January 1996, are @@ -86,62 +122,49 @@ * For the purposes of this copyright and license, "Contributing Authors" * is defined as the following set of individuals: * - * Andreas Dilger - * Dave Martindale - * Guy Eric Schalnat - * Paul Schmidt - * Tim Wegner - * - * The PNG Reference Library is supplied "AS IS". The Contributing Authors - * and Group 42, Inc. disclaim all warranties, expressed or implied, - * including, without limitation, the warranties of merchantability and of - * fitness for any purpose. The Contributing Authors and Group 42, Inc. - * assume no liability for direct, indirect, incidental, special, exemplary, - * or consequential damages, which may result from the use of the PNG - * Reference Library, even if advised of the possibility of such damage. + * Andreas Dilger + * Dave Martindale + * Guy Eric Schalnat + * Paul Schmidt + * Tim Wegner + * + * The PNG Reference Library is supplied "AS IS". The Contributing + * Authors and Group 42, Inc. disclaim all warranties, expressed or + * implied, including, without limitation, the warranties of + * merchantability and of fitness for any purpose. The Contributing + * Authors and Group 42, Inc. assume no liability for direct, indirect, + * incidental, special, exemplary, or consequential damages, which may + * result from the use of the PNG Reference Library, even if advised of + * the possibility of such damage. * * Permission is hereby granted to use, copy, modify, and distribute this * source code, or portions hereof, for any purpose, without fee, subject * to the following restrictions: * - * 1. The origin of this source code must not be misrepresented. + * 1. The origin of this source code must not be misrepresented. * - * 2. Altered versions must be plainly marked as such and must not - * be misrepresented as being the original source. + * 2. Altered versions must be plainly marked as such and must not + * be misrepresented as being the original source. * - * 3. This Copyright notice may not be removed or altered from any - * source or altered source distribution. + * 3. This Copyright notice may not be removed or altered from any + * source or altered source distribution. * - * The Contributing Authors and Group 42, Inc. specifically permit, without - * fee, and encourage the use of this source code as a component to - * supporting the PNG file format in commercial products. If you use this - * source code in a product, acknowledgment is not required but would be - * appreciated. + * The Contributing Authors and Group 42, Inc. specifically permit, + * without fee, and encourage the use of this source code as a component + * to supporting the PNG file format in commercial products. If you use + * this source code in a product, acknowledgment is not required but would + * be appreciated. * * END OF COPYRIGHT NOTICE, DISCLAIMER, and LICENSE. * - * TRADEMARK: + * TRADEMARK + * ========= * - * The name "libpng" has not been registered by the Copyright owner + * The name "libpng" has not been registered by the Copyright owners * as a trademark in any jurisdiction. However, because libpng has * been distributed and maintained world-wide, continually since 1995, - * the Copyright owner claims "common-law trademark protection" in any + * the Copyright owners claim "common-law trademark protection" in any * jurisdiction where common-law trademark is recognized. - * - * OSI CERTIFICATION: - * - * Libpng is OSI Certified Open Source Software. OSI Certified Open Source is - * a certification mark of the Open Source Initiative. OSI has not addressed - * the additional disclaimers inserted at version 1.0.7. - * - * EXPORT CONTROL: - * - * The Copyright owner believes that the Export Control Classification - * Number (ECCN) for libpng is EAR99, which means not subject to export - * controls or International Traffic in Arms Regulations (ITAR) because - * it is open source, publicly available software, that does not contain - * any encryption software. See the EAR, paragraphs 734.3(b)(3) and - * 734.7(b). */ /* @@ -207,23 +230,25 @@ * 1.0.7rc1-2 1 10007 2.1.0.7rc1-2 (binary compatible) * 1.0.7 1 10007 (still compatible) * ... - * 1.0.19 10 10019 10.so.0.19[.0] + * 1.0.69 10 10069 10.so.0.69[.0] * ... - * 1.2.59 13 10257 12.so.0.59[.0] + * 1.2.59 13 10259 12.so.0.59[.0] * ... - * 1.5.30 15 10527 15.so.15.30[.0] + * 1.4.20 14 10420 14.so.0.20[.0] * ... - * 1.6.35 16 10635 16.so.16.35[.0] - * - * Henceforth the source version will match the shared-library major - * and minor numbers; the shared-library major version number will be - * used for changes in backward compatibility, as it is intended. The - * PNG_LIBPNG_VER macro, which is not used within libpng but is available - * for applications, is an unsigned integer of the form xyyzz corresponding - * to the source version x.y.z (leading zeros in y and z). Beta versions - * were given the previous public release number plus a letter, until - * version 1.0.6j; from then on they were given the upcoming public - * release number plus "betaNN" or "rcNN". + * 1.5.30 15 10530 15.so.15.30[.0] + * ... + * 1.6.36 16 10636 16.so.16.36[.0] + * + * Henceforth the source version will match the shared-library major and + * minor numbers; the shared-library major version number will be used for + * changes in backward compatibility, as it is intended. + * The PNG_LIBPNG_VER macro, which is not used within libpng but is + * available for applications, is an unsigned integer of the form XYYZZ + * corresponding to the source version X.Y.Z (leading zeros in Y and Z). + * Beta versions were given the previous public release number plus a + * letter, until version 1.0.6j; from then on they were given the upcoming + * public release number plus "betaNN" or "rcNN". * * Binary incompatibility exists only when applications make direct access * to the info_ptr or png_ptr members through png.h, and the compiled @@ -233,65 +258,8 @@ * in binary compatibility (e.g., when a new feature is added). * * See libpng.txt or libpng.3 for more information. The PNG specification - * is available as a W3C Recommendation and as an ISO Specification, - * <https://www.w3.org/TR/2003/REC-PNG-20031110/ - */ - -/* - * Y2K compliance in libpng: - * ========================= - * - * July 15, 2018 - * - * Since the PNG Development group is an ad-hoc body, we can't make - * an official declaration. - * - * This is your unofficial assurance that libpng from version 0.71 and - * upward through 1.6.35 are Y2K compliant. It is my belief that - * earlier versions were also Y2K compliant. - * - * Libpng only has two year fields. One is a 2-byte unsigned integer - * that will hold years up to 65535. The other, which is deprecated, - * holds the date in text format, and will hold years up to 9999. - * - * The integer is - * "png_uint_16 year" in png_time_struct. - * - * The string is - * "char time_buffer[29]" in png_struct. This is no longer used - * in libpng-1.6.x and will be removed from libpng-1.7.0. - * - * There are seven time-related functions: - * png.c: png_convert_to_rfc_1123_buffer() in png.c - * (formerly png_convert_to_rfc_1123() prior to libpng-1.5.x and - * png_convert_to_rfc_1152() in error prior to libpng-0.98) - * png_convert_from_struct_tm() in pngwrite.c, called in pngwrite.c - * png_convert_from_time_t() in pngwrite.c - * png_get_tIME() in pngget.c - * png_handle_tIME() in pngrutil.c, called in pngread.c - * png_set_tIME() in pngset.c - * png_write_tIME() in pngwutil.c, called in pngwrite.c - * - * All handle dates properly in a Y2K environment. The - * png_convert_from_time_t() function calls gmtime() to convert from system - * clock time, which returns (year - 1900), which we properly convert to - * the full 4-digit year. There is a possibility that libpng applications - * are not passing 4-digit years into the png_convert_to_rfc_1123_buffer() - * function, or that they are incorrectly passing only a 2-digit year - * instead of "year - 1900" into the png_convert_from_struct_tm() function, - * but this is not under our control. The libpng documentation has always - * stated that it works with 4-digit years, and the APIs have been - * documented as such. - * - * The tIME chunk itself is also Y2K compliant. It uses a 2-byte unsigned - * integer to hold the year, and can hold years as large as 65535. - * - * zlib, upon which libpng depends, is also Y2K compliant. It contains - * no date-related code. - * - * Glenn Randers-Pehrson - * libpng maintainer - * PNG Development Group + * is available as a W3C Recommendation and as an ISO/IEC Standard; see + * <https://www.w3.org/TR/2003/REC-PNG-20031110/> */ #ifndef PNG_H @@ -309,8 +277,8 @@ */ /* Version information for png.h - this should match the version in png.c */ -#define PNG_LIBPNG_VER_STRING "1.6.35" -#define PNG_HEADER_VERSION_STRING " libpng version 1.6.35 - July 15, 2018\n" +#define PNG_LIBPNG_VER_STRING "1.6.36" +#define PNG_HEADER_VERSION_STRING " libpng version 1.6.36 - December 1, 2018\n" #define PNG_LIBPNG_VER_SONUM 16 #define PNG_LIBPNG_VER_DLLNUM 16 @@ -318,13 +286,13 @@ /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */ #define PNG_LIBPNG_VER_MAJOR 1 #define PNG_LIBPNG_VER_MINOR 6 -#define PNG_LIBPNG_VER_RELEASE 35 +#define PNG_LIBPNG_VER_RELEASE 36 /* This should match the numeric part of the final component of * PNG_LIBPNG_VER_STRING, omitting any leading zero: */ -#define PNG_LIBPNG_VER_BUILD 02 +#define PNG_LIBPNG_VER_BUILD 0 /* Release Status */ #define PNG_LIBPNG_BUILD_ALPHA 1 @@ -341,15 +309,16 @@ #define PNG_LIBPNG_BUILD_SPECIAL 32 /* Cannot be OR'ed with PNG_LIBPNG_BUILD_PRIVATE */ -#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_BETA +#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_STABLE -/* Careful here. At one time, Guy wanted to use 082, but that would be octal. - * We must not include leading zeros. - * Versions 0.7 through 1.0.0 were in the range 0 to 100 here (only - * version 1.0.0 was mis-numbered 100 instead of 10000). From - * version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release +/* Careful here. At one time, Guy wanted to use 082, but that + * would be octal. We must not include leading zeros. + * Versions 0.7 through 1.0.0 were in the range 0 to 100 here + * (only version 1.0.0 was mis-numbered 100 instead of 10000). + * From version 1.0.1 it is: + * XXYYZZ, where XX=major, YY=minor, ZZ=release */ -#define PNG_LIBPNG_VER 10635 /* 1.6.35 */ +#define PNG_LIBPNG_VER 10636 /* 1.6.36 */ /* Library configuration: these options cannot be changed after * the library has been built. @@ -459,7 +428,7 @@ extern "C" { /* This triggers a compiler error in png.c, if png.c and png.h * do not agree upon the version number. */ -typedef char* png_libpng_version_1_6_35; +typedef char* png_libpng_version_1_6_36; /* Basic control structions. Read libpng-manual.txt or libpng.3 for more info. * @@ -2013,12 +1982,12 @@ PNG_FIXED_EXPORT(233, void, png_set_cHRM_XYZ_fixed, (png_const_structrp png_ptr, PNG_EXPORT(246, png_uint_32, png_get_eXIf, (png_const_structrp png_ptr, png_inforp info_ptr, png_bytep *exif)); PNG_EXPORT(247, void, png_set_eXIf, (png_const_structrp png_ptr, - png_inforp info_ptr, const png_bytep exif)); + png_inforp info_ptr, png_bytep exif)); PNG_EXPORT(248, png_uint_32, png_get_eXIf_1, (png_const_structrp png_ptr, png_const_inforp info_ptr, png_uint_32 *num_exif, png_bytep *exif)); PNG_EXPORT(249, void, png_set_eXIf_1, (png_const_structrp png_ptr, - png_inforp info_ptr, const png_uint_32 num_exif, const png_bytep exif)); + png_inforp info_ptr, png_uint_32 num_exif, png_bytep exif)); #endif #ifdef PNG_gAMA_SUPPORTED @@ -2764,7 +2733,7 @@ typedef struct * * When the simplified API needs to convert between sRGB and linear colorspaces, * the actual sRGB transfer curve defined in the sRGB specification (see the - * article at https://en.wikipedia.org/wiki/SRGB) is used, not the gamma=1/2.2 + * article at <https://en.wikipedia.org/wiki/SRGB>) is used, not the gamma=1/2.2 * approximation used elsewhere in libpng. * * When an alpha channel is present it is expected to denote pixel coverage @@ -2967,7 +2936,7 @@ typedef struct * 'flags' field of png_image. */ #define PNG_IMAGE_FLAG_COLORSPACE_NOT_sRGB 0x01 - /* This indicates the the RGB values of the in-memory bitmap do not + /* This indicates that the RGB values of the in-memory bitmap do not * correspond to the red, green and blue end-points defined by sRGB. */ diff --git a/source/libs/libpng/libpng-src/pngconf.h b/source/libs/libpng/libpng-src/pngconf.h index a4646bab8..5e641b250 100644 --- a/source/libs/libpng/libpng-src/pngconf.h +++ b/source/libs/libpng/libpng-src/pngconf.h @@ -1,11 +1,12 @@ /* pngconf.h - machine configurable file for libpng * - * libpng version 1.6.35, July 15, 2018 + * libpng version 1.6.36 * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -57,14 +58,13 @@ #endif /* PNG_BUILDING_SYMBOL_TABLE */ -/* Prior to 1.6.0 it was possible to turn off 'const' in declarations using - * PNG_NO_CONST; this is no longer supported except for data declarations which - * apparently still cause problems in 2011 on some compilers. +/* Prior to 1.6.0, it was possible to turn off 'const' in declarations, + * using PNG_NO_CONST. This is no longer supported. */ #define PNG_CONST const /* backward compatibility only */ -/* This controls optimization of the reading of 16-bit and 32-bit values - * from PNG files. It can be set on a per-app-file basis - it +/* This controls optimization of the reading of 16-bit and 32-bit + * values from PNG files. It can be set on a per-app-file basis: it * just changes whether a macro is used when the function is called. * The library builder sets the default; if read functions are not * built into the library the macro implementation is forced on. diff --git a/source/libs/libpng/libpng-src/pngdebug.h b/source/libs/libpng/libpng-src/pngdebug.h index 15a7ed0c9..00d5a4569 100644 --- a/source/libs/libpng/libpng-src/pngdebug.h +++ b/source/libs/libpng/libpng-src/pngdebug.h @@ -1,10 +1,10 @@ /* pngdebug.h - Debugging macros for libpng, also used in pngtest.c * - * Last changed in libpng 1.6.8 [December 19, 2013] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2013 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer diff --git a/source/libs/libpng/libpng-src/pngerror.c b/source/libs/libpng/libpng-src/pngerror.c index ad48bfb98..ec3a709b9 100644 --- a/source/libs/libpng/libpng-src/pngerror.c +++ b/source/libs/libpng/libpng-src/pngerror.c @@ -1,10 +1,10 @@ /* pngerror.c - stub functions for i/o and memory allocation * - * Last changed in libpng 1.6.31 [July 27, 2017] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2017 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -425,7 +425,7 @@ png_app_error(png_const_structrp png_ptr, png_const_charp error_message) * if the character is invalid. */ #define isnonalpha(c) ((c) < 65 || (c) > 122 || ((c) > 90 && (c) < 97)) -static PNG_CONST char png_digit[16] = { +static const char png_digit[16] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' }; @@ -885,7 +885,7 @@ PNG_FUNCTION(void /* PRIVATE */, (PNGCBAPI png_safe_error),(png_structp png_nonconst_ptr, png_const_charp error_message), PNG_NORETURN) { - const png_const_structrp png_ptr = png_nonconst_ptr; + png_const_structrp png_ptr = png_nonconst_ptr; png_imagep image = png_voidcast(png_imagep, png_ptr->error_ptr); /* An error is always logged here, overwriting anything (typically a warning) @@ -920,7 +920,7 @@ png_safe_error),(png_structp png_nonconst_ptr, png_const_charp error_message), void /* PRIVATE */ PNGCBAPI png_safe_warning(png_structp png_nonconst_ptr, png_const_charp warning_message) { - const png_const_structrp png_ptr = png_nonconst_ptr; + png_const_structrp png_ptr = png_nonconst_ptr; png_imagep image = png_voidcast(png_imagep, png_ptr->error_ptr); /* A warning is only logged if there is no prior warning or error. */ diff --git a/source/libs/libpng/libpng-src/pngget.c b/source/libs/libpng/libpng-src/pngget.c index 2325508f1..5abf1efd9 100644 --- a/source/libs/libpng/libpng-src/pngget.c +++ b/source/libs/libpng/libpng-src/pngget.c @@ -1,10 +1,10 @@ /* pngget.c - retrieval of values from info struct * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer diff --git a/source/libs/libpng/libpng-src/pnginfo.h b/source/libs/libpng/libpng-src/pnginfo.h index 2fcf868da..1f98dedc4 100644 --- a/source/libs/libpng/libpng-src/pnginfo.h +++ b/source/libs/libpng/libpng-src/pnginfo.h @@ -1,10 +1,10 @@ /* pnginfo.h - header file for PNG reference library * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2013,2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer diff --git a/source/libs/libpng/libpng-src/pnglibconf.h b/source/libs/libpng/libpng-src/pnglibconf.h index 00acecc69..00340c678 100644 --- a/source/libs/libpng/libpng-src/pnglibconf.h +++ b/source/libs/libpng/libpng-src/pnglibconf.h @@ -1,10 +1,9 @@ -/* libpng 1.6.35 STANDARD API DEFINITION */ - /* pnglibconf.h - library build configuration */ -/* Libpng version 1.6.35 - July 15, 2018 */ +/* libpng version 1.6.36 */ -/* Copyright (c) 1998-2018 Glenn Randers-Pehrson */ +/* Copyright (c) 2018 Cosmin Truta */ +/* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson */ /* This code is released under the libpng license. */ /* For conditions of distribution and use, see the disclaimer */ @@ -20,8 +19,6 @@ #define PNG_ALIGNED_MEMORY_SUPPORTED /*#undef PNG_ARM_NEON_API_SUPPORTED*/ /*#undef PNG_ARM_NEON_CHECK_SUPPORTED*/ -/*#undef PNG_POWERPC_VSX_API_SUPPORTED*/ -/*#undef PNG_POWERPC_VSX_CHECK_SUPPORTED*/ #define PNG_BENIGN_ERRORS_SUPPORTED #define PNG_BENIGN_READ_ERRORS_SUPPORTED /*#undef PNG_BENIGN_WRITE_ERRORS_SUPPORTED*/ @@ -46,6 +43,8 @@ #define PNG_IO_STATE_SUPPORTED #define PNG_MNG_FEATURES_SUPPORTED #define PNG_POINTER_INDEXING_SUPPORTED +/*#undef PNG_POWERPC_VSX_API_SUPPORTED*/ +/*#undef PNG_POWERPC_VSX_CHECK_SUPPORTED*/ #define PNG_PROGRESSIVE_READ_SUPPORTED #define PNG_READ_16BIT_SUPPORTED #define PNG_READ_ALPHA_MODE_SUPPORTED diff --git a/source/libs/libpng/libpng-src/pngmem.c b/source/libs/libpng/libpng-src/pngmem.c index ff3ef7e88..09ed9c1c9 100644 --- a/source/libs/libpng/libpng-src/pngmem.c +++ b/source/libs/libpng/libpng-src/pngmem.c @@ -1,10 +1,10 @@ /* pngmem.c - stub functions for memory allocation * - * Last changed in libpng 1.6.26 [October 20, 2016] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2014,2016 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer diff --git a/source/libs/libpng/libpng-src/pngpread.c b/source/libs/libpng/libpng-src/pngpread.c index c4ba51c4d..e283627b7 100644 --- a/source/libs/libpng/libpng-src/pngpread.c +++ b/source/libs/libpng/libpng-src/pngpread.c @@ -1,10 +1,10 @@ /* pngpread.c - read a png file in push mode * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -972,20 +972,20 @@ png_read_push_finish_row(png_structrp png_ptr) /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */ /* Start of interlace block */ - static PNG_CONST png_byte png_pass_start[] = {0, 4, 0, 2, 0, 1, 0}; + static const png_byte png_pass_start[] = {0, 4, 0, 2, 0, 1, 0}; /* Offset to next interlace block */ - static PNG_CONST png_byte png_pass_inc[] = {8, 8, 4, 4, 2, 2, 1}; + static const png_byte png_pass_inc[] = {8, 8, 4, 4, 2, 2, 1}; /* Start of interlace block in the y direction */ - static PNG_CONST png_byte png_pass_ystart[] = {0, 0, 4, 0, 2, 0, 1}; + static const png_byte png_pass_ystart[] = {0, 0, 4, 0, 2, 0, 1}; /* Offset to next interlace block in the y direction */ - static PNG_CONST png_byte png_pass_yinc[] = {8, 8, 8, 4, 4, 2, 2}; + static const png_byte png_pass_yinc[] = {8, 8, 8, 4, 4, 2, 2}; /* Height of interlace block. This is not currently used - if you need * it, uncomment it here and in png.h - static PNG_CONST png_byte png_pass_height[] = {8, 8, 4, 4, 2, 2, 1}; + static const png_byte png_pass_height[] = {8, 8, 4, 4, 2, 2, 1}; */ #endif diff --git a/source/libs/libpng/libpng-src/pngpriv.h b/source/libs/libpng/libpng-src/pngpriv.h index 3581f6791..973c3eac1 100644 --- a/source/libs/libpng/libpng-src/pngpriv.h +++ b/source/libs/libpng/libpng-src/pngpriv.h @@ -1,10 +1,10 @@ /* pngpriv.h - private declarations for use inside libpng * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -174,7 +174,10 @@ # else /* !defined __ARM_NEON__ */ /* The 'intrinsics' code simply won't compile without this -mfpu=neon: */ -# define PNG_ARM_NEON_IMPLEMENTATION 2 +# if !defined(__aarch64__) + /* The assembler code currently does not work on ARM64 */ +# define PNG_ARM_NEON_IMPLEMENTATION 2 +# endif /* __aarch64__ */ # endif /* __ARM_NEON__ */ # endif /* !PNG_ARM_NEON_IMPLEMENTATION */ @@ -1534,10 +1537,10 @@ PNG_INTERNAL_FUNCTION(void,png_handle_zTXt,(png_structrp png_ptr, #endif PNG_INTERNAL_FUNCTION(void,png_check_chunk_name,(png_const_structrp png_ptr, - const png_uint_32 chunk_name),PNG_EMPTY); + png_uint_32 chunk_name),PNG_EMPTY); PNG_INTERNAL_FUNCTION(void,png_check_chunk_length,(png_const_structrp png_ptr, - const png_uint_32 chunk_length),PNG_EMPTY); + png_uint_32 chunk_length),PNG_EMPTY); PNG_INTERNAL_FUNCTION(void,png_handle_unknown,(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length, int keep),PNG_EMPTY); @@ -2114,6 +2117,29 @@ PNG_INTERNAL_FUNCTION(void, png_init_filter_functions_sse2, PNG_INTERNAL_FUNCTION(png_uint_32, png_check_keyword, (png_structrp png_ptr, png_const_charp key, png_bytep new_key), PNG_EMPTY); +#if PNG_ARM_NEON_IMPLEMENTATION == 1 +PNG_INTERNAL_FUNCTION(void, + png_riffle_palette_rgba, + (png_structrp, png_row_infop), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, + png_do_expand_palette_neon_rgba, + (png_structrp, + png_row_infop, + png_const_bytep, + const png_bytepp, + const png_bytepp), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, + png_do_expand_palette_neon_rgb, + (png_structrp, + png_row_infop, + png_const_bytep, + const png_bytepp, + const png_bytepp), + PNG_EMPTY); +#endif + /* Maintainer: Put new private prototypes here ^ */ #include "pngdebug.h" diff --git a/source/libs/libpng/libpng-src/pngread.c b/source/libs/libpng/libpng-src/pngread.c index bff7503ee..f8e762196 100644 --- a/source/libs/libpng/libpng-src/pngread.c +++ b/source/libs/libpng/libpng-src/pngread.c @@ -1,10 +1,10 @@ /* pngread.c - read a PNG file * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -1621,7 +1621,7 @@ png_image_skip_unused_chunks(png_structrp png_ptr) * errors (which are unfortunately quite common.) */ { - static PNG_CONST png_byte chunks_to_process[] = { + static const png_byte chunks_to_process[] = { 98, 75, 71, 68, '\0', /* bKGD */ 99, 72, 82, 77, '\0', /* cHRM */ 103, 65, 77, 65, '\0', /* gAMA */ @@ -1758,9 +1758,9 @@ png_create_colormap_entry(png_image_read_control *display, png_uint_32 alpha, int encoding) { png_imagep image = display->image; - const int output_encoding = (image->format & PNG_FORMAT_FLAG_LINEAR) != 0 ? + int output_encoding = (image->format & PNG_FORMAT_FLAG_LINEAR) != 0 ? P_LINEAR : P_sRGB; - const int convert_to_Y = (image->format & PNG_FORMAT_FLAG_COLOR) == 0 && + int convert_to_Y = (image->format & PNG_FORMAT_FLAG_COLOR) == 0 && (red != green || green != blue); if (ip > 255) @@ -1869,13 +1869,13 @@ png_create_colormap_entry(png_image_read_control *display, /* Store the value. */ { # ifdef PNG_FORMAT_AFIRST_SUPPORTED - const int afirst = (image->format & PNG_FORMAT_FLAG_AFIRST) != 0 && + int afirst = (image->format & PNG_FORMAT_FLAG_AFIRST) != 0 && (image->format & PNG_FORMAT_FLAG_ALPHA) != 0; # else # define afirst 0 # endif # ifdef PNG_FORMAT_BGR_SUPPORTED - const int bgr = (image->format & PNG_FORMAT_FLAG_BGR) != 0 ? 2 : 0; + int bgr = (image->format & PNG_FORMAT_FLAG_BGR) != 0 ? 2 : 0; # else # define bgr 0 # endif @@ -2085,11 +2085,11 @@ png_image_read_colormap(png_voidp argument) { png_image_read_control *display = png_voidcast(png_image_read_control*, argument); - const png_imagep image = display->image; + png_imagep image = display->image; - const png_structrp png_ptr = image->opaque->png_ptr; - const png_uint_32 output_format = image->format; - const int output_encoding = (output_format & PNG_FORMAT_FLAG_LINEAR) != 0 ? + png_structrp png_ptr = image->opaque->png_ptr; + png_uint_32 output_format = image->format; + int output_encoding = (output_format & PNG_FORMAT_FLAG_LINEAR) != 0 ? P_LINEAR : P_sRGB; unsigned int cmap_entries; @@ -2802,7 +2802,7 @@ png_image_read_colormap(png_voidp argument) unsigned int num_trans = png_ptr->num_trans; png_const_bytep trans = num_trans > 0 ? png_ptr->trans_alpha : NULL; png_const_colorp colormap = png_ptr->palette; - const int do_background = trans != NULL && + int do_background = trans != NULL && (output_format & PNG_FORMAT_FLAG_ALPHA) == 0; unsigned int i; @@ -3946,7 +3946,7 @@ png_image_read_direct(png_voidp argument) */ if (linear != 0) { - PNG_CONST png_uint_16 le = 0x0001; + png_uint_16 le = 0x0001; if ((*(png_const_bytep) & le) != 0) png_set_swap(png_ptr); @@ -4108,7 +4108,7 @@ png_image_finish_read(png_imagep image, png_const_colorp background, * original PNG format because it may not occur in the output PNG format * and libpng deals with the issues of reading the original. */ - const unsigned int channels = PNG_IMAGE_PIXEL_CHANNELS(image->format); + unsigned int channels = PNG_IMAGE_PIXEL_CHANNELS(image->format); /* The following checks just the 'row_stride' calculation to ensure it * fits in a signed 32-bit value. Because channels/components can be @@ -4119,7 +4119,7 @@ png_image_finish_read(png_imagep image, png_const_colorp background, if (image->width <= 0x7fffffffU/channels) /* no overflow */ { png_uint_32 check; - const png_uint_32 png_row_stride = image->width * channels; + png_uint_32 png_row_stride = image->width * channels; if (row_stride == 0) row_stride = (png_int_32)/*SAFE*/png_row_stride; diff --git a/source/libs/libpng/libpng-src/pngrio.c b/source/libs/libpng/libpng-src/pngrio.c index 372221483..794635810 100644 --- a/source/libs/libpng/libpng-src/pngrio.c +++ b/source/libs/libpng/libpng-src/pngrio.c @@ -1,10 +1,10 @@ /* pngrio.c - functions for data input * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer diff --git a/source/libs/libpng/libpng-src/pngrtran.c b/source/libs/libpng/libpng-src/pngrtran.c index 67d1f249a..ccc58ce6f 100644 --- a/source/libs/libpng/libpng-src/pngrtran.c +++ b/source/libs/libpng/libpng-src/pngrtran.c @@ -1,10 +1,10 @@ /* pngrtran.c - transforms the data in a row for PNG readers * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -18,6 +18,17 @@ #include "pngpriv.h" +#ifdef PNG_ARM_NEON_IMPLEMENTATION +# if PNG_ARM_NEON_IMPLEMENTATION == 1 +# define PNG_ARM_NEON_INTRINSICS_AVAILABLE +# if defined(_MSC_VER) && defined(_M_ARM64) +# include <arm64_neon.h> +# else +# include <arm_neon.h> +# endif +# endif +#endif + #ifdef PNG_READ_SUPPORTED /* Set the action on getting a CRC error for an ancillary or critical chunk. */ @@ -2986,7 +2997,6 @@ png_do_gray_to_rgb(png_row_infop row_info, png_bytep row) */ static int png_do_rgb_to_gray(png_structrp png_ptr, png_row_infop row_info, png_bytep row) - { int rgb_error = 0; @@ -2995,12 +3005,11 @@ png_do_rgb_to_gray(png_structrp png_ptr, png_row_infop row_info, png_bytep row) if ((row_info->color_type & PNG_COLOR_MASK_PALETTE) == 0 && (row_info->color_type & PNG_COLOR_MASK_COLOR) != 0) { - PNG_CONST png_uint_32 rc = png_ptr->rgb_to_gray_red_coeff; - PNG_CONST png_uint_32 gc = png_ptr->rgb_to_gray_green_coeff; - PNG_CONST png_uint_32 bc = 32768 - rc - gc; - PNG_CONST png_uint_32 row_width = row_info->width; - PNG_CONST int have_alpha = - (row_info->color_type & PNG_COLOR_MASK_ALPHA) != 0; + png_uint_32 rc = png_ptr->rgb_to_gray_red_coeff; + png_uint_32 gc = png_ptr->rgb_to_gray_green_coeff; + png_uint_32 bc = 32768 - rc - gc; + png_uint_32 row_width = row_info->width; + int have_alpha = (row_info->color_type & PNG_COLOR_MASK_ALPHA) != 0; if (row_info->bit_depth == 8) { @@ -4143,12 +4152,11 @@ png_do_encode_alpha(png_row_infop row_info, png_bytep row, png_structrp png_ptr) { if (row_info->bit_depth == 8) { - PNG_CONST png_bytep table = png_ptr->gamma_from_1; + png_bytep table = png_ptr->gamma_from_1; if (table != NULL) { - PNG_CONST int step = - (row_info->color_type & PNG_COLOR_MASK_COLOR) ? 4 : 2; + int step = (row_info->color_type & PNG_COLOR_MASK_COLOR) ? 4 : 2; /* The alpha channel is the last component: */ row += step - 1; @@ -4162,13 +4170,12 @@ png_do_encode_alpha(png_row_infop row_info, png_bytep row, png_structrp png_ptr) else if (row_info->bit_depth == 16) { - PNG_CONST png_uint_16pp table = png_ptr->gamma_16_from_1; - PNG_CONST int gamma_shift = png_ptr->gamma_shift; + png_uint_16pp table = png_ptr->gamma_16_from_1; + int gamma_shift = png_ptr->gamma_shift; if (table != NULL) { - PNG_CONST int step = - (row_info->color_type & PNG_COLOR_MASK_COLOR) ? 8 : 4; + int step = (row_info->color_type & PNG_COLOR_MASK_COLOR) ? 8 : 4; /* The alpha channel is the last component: */ row += step - 2; @@ -4199,8 +4206,9 @@ png_do_encode_alpha(png_row_infop row_info, png_bytep row, png_structrp png_ptr) * upon whether you supply trans and num_trans. */ static void -png_do_expand_palette(png_row_infop row_info, png_bytep row, - png_const_colorp palette, png_const_bytep trans_alpha, int num_trans) +png_do_expand_palette(png_structrp png_ptr, png_row_infop row_info, + png_bytep row, png_const_colorp palette, png_const_bytep trans_alpha, + int num_trans) { int shift, value; png_bytep sp, dp; @@ -4304,14 +4312,25 @@ png_do_expand_palette(png_row_infop row_info, png_bytep row, sp = row + (size_t)row_width - 1; dp = row + ((size_t)row_width << 2) - 1; - for (i = 0; i < row_width; i++) + i = 0; +#ifdef PNG_ARM_NEON_INTRINSICS_AVAILABLE + if (png_ptr->riffled_palette != NULL) + { + /* The RGBA optimization works with png_ptr->bit_depth == 8 + * but sometimes row_info->bit_depth has been changed to 8. + * In these cases, the palette hasn't been riffled. + */ + i = png_do_expand_palette_neon_rgba(png_ptr, row_info, row, + &sp, &dp); + } +#endif + + for (; i < row_width; i++) { if ((int)(*sp) >= num_trans) *dp-- = 0xff; - else *dp-- = trans_alpha[*sp]; - *dp-- = palette[*sp].blue; *dp-- = palette[*sp].green; *dp-- = palette[*sp].red; @@ -4328,8 +4347,13 @@ png_do_expand_palette(png_row_infop row_info, png_bytep row, { sp = row + (size_t)row_width - 1; dp = row + (size_t)(row_width * 3) - 1; + i = 0; +#ifdef PNG_ARM_NEON_INTRINSICS_AVAILABLE + i = png_do_expand_palette_neon_rgb(png_ptr, row_info, row, + &sp, &dp); +#endif - for (i = 0; i < row_width; i++) + for (; i < row_width; i++) { *dp-- = palette[*sp].blue; *dp-- = palette[*sp].green; @@ -4743,8 +4767,22 @@ png_do_read_transformations(png_structrp png_ptr, png_row_infop row_info) { if (row_info->color_type == PNG_COLOR_TYPE_PALETTE) { - png_do_expand_palette(row_info, png_ptr->row_buf + 1, - png_ptr->palette, png_ptr->trans_alpha, png_ptr->num_trans); +#ifdef PNG_ARM_NEON_INTRINSICS_AVAILABLE + if ((png_ptr->num_trans > 0) && (png_ptr->bit_depth == 8)) + { + /* Allocate space for the decompressed full palette. */ + if (png_ptr->riffled_palette == NULL) + { + png_ptr->riffled_palette = png_malloc(png_ptr, 256*4); + if (png_ptr->riffled_palette == NULL) + png_error(png_ptr, "NULL row buffer"); + /* Build the RGBA palette. */ + png_riffle_palette_rgba(png_ptr, row_info); + } + } +#endif + png_do_expand_palette(png_ptr, row_info, png_ptr->row_buf + 1, + png_ptr->palette, png_ptr->trans_alpha, png_ptr->num_trans); } else diff --git a/source/libs/libpng/libpng-src/pngrutil.c b/source/libs/libpng/libpng-src/pngrutil.c index 7001f1976..d5fa08c39 100644 --- a/source/libs/libpng/libpng-src/pngrutil.c +++ b/source/libs/libpng/libpng-src/pngrutil.c @@ -1,10 +1,10 @@ /* pngrutil.c - utilities to read a PNG file * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -1461,8 +1461,7 @@ png_handle_iCCP(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) { /* We have the ICC profile header; do the basic header checks. */ - const png_uint_32 profile_length = - png_get_uint_32(profile_header); + png_uint_32 profile_length = png_get_uint_32(profile_header); if (png_icc_check_length(png_ptr, &png_ptr->colorspace, keyword, profile_length) != 0) @@ -1479,8 +1478,8 @@ png_handle_iCCP(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) * profile. The header check has already validated * that none of this stuff will overflow. */ - const png_uint_32 tag_count = png_get_uint_32( - profile_header+128); + png_uint_32 tag_count = + png_get_uint_32(profile_header + 128); png_bytep profile = png_read_buffer(png_ptr, profile_length, 2/*silent*/); @@ -3132,7 +3131,7 @@ png_handle_unknown(png_structrp png_ptr, png_inforp info_ptr, */ void /* PRIVATE */ -png_check_chunk_name(png_const_structrp png_ptr, const png_uint_32 chunk_name) +png_check_chunk_name(png_const_structrp png_ptr, png_uint_32 chunk_name) { int i; png_uint_32 cn=chunk_name; @@ -3151,7 +3150,7 @@ png_check_chunk_name(png_const_structrp png_ptr, const png_uint_32 chunk_name) } void /* PRIVATE */ -png_check_chunk_length(png_const_structrp png_ptr, const png_uint_32 length) +png_check_chunk_length(png_const_structrp png_ptr, png_uint_32 length) { png_alloc_size_t limit = PNG_UINT_31_MAX; @@ -3363,7 +3362,7 @@ png_combine_row(png_const_structrp png_ptr, png_bytep dp, int display) /* Hence the pre-compiled masks indexed by PACKSWAP (or not), depth and * then pass: */ - static PNG_CONST png_uint_32 row_mask[2/*PACKSWAP*/][3/*depth*/][6] = + static const png_uint_32 row_mask[2/*PACKSWAP*/][3/*depth*/][6] = { /* Little-endian byte masks for PACKSWAP */ { S_MASKS(1,0), S_MASKS(2,0), S_MASKS(4,0) }, @@ -3374,7 +3373,7 @@ png_combine_row(png_const_structrp png_ptr, png_bytep dp, int display) /* display_mask has only three entries for the odd passes, so index by * pass>>1. */ - static PNG_CONST png_uint_32 display_mask[2][3][3] = + static const png_uint_32 display_mask[2][3][3] = { /* Little-endian byte masks for PACKSWAP */ { B_MASKS(1,0), B_MASKS(2,0), B_MASKS(4,0) }, @@ -3687,7 +3686,7 @@ png_do_read_interlace(png_row_infop row_info, png_bytep row, int pass, { /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */ /* Offset to next interlace block */ - static PNG_CONST unsigned int png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; + static const unsigned int png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; png_debug(1, "in png_do_read_interlace"); if (row != NULL && row_info != NULL) @@ -4329,16 +4328,16 @@ png_read_finish_row(png_structrp png_ptr) /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */ /* Start of interlace block */ - static PNG_CONST png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; + static const png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; /* Offset to next interlace block */ - static PNG_CONST png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; + static const png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; /* Start of interlace block in the y direction */ - static PNG_CONST png_byte png_pass_ystart[7] = {0, 0, 4, 0, 2, 0, 1}; + static const png_byte png_pass_ystart[7] = {0, 0, 4, 0, 2, 0, 1}; /* Offset to next interlace block in the y direction */ - static PNG_CONST png_byte png_pass_yinc[7] = {8, 8, 8, 4, 4, 2, 2}; + static const png_byte png_pass_yinc[7] = {8, 8, 8, 4, 4, 2, 2}; png_debug(1, "in png_read_finish_row"); png_ptr->row_number++; @@ -4394,16 +4393,16 @@ png_read_start_row(png_structrp png_ptr) /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */ /* Start of interlace block */ - static PNG_CONST png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; + static const png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; /* Offset to next interlace block */ - static PNG_CONST png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; + static const png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; /* Start of interlace block in the y direction */ - static PNG_CONST png_byte png_pass_ystart[7] = {0, 0, 4, 0, 2, 0, 1}; + static const png_byte png_pass_ystart[7] = {0, 0, 4, 0, 2, 0, 1}; /* Offset to next interlace block in the y direction */ - static PNG_CONST png_byte png_pass_yinc[7] = {8, 8, 8, 4, 4, 2, 2}; + static const png_byte png_pass_yinc[7] = {8, 8, 8, 4, 4, 2, 2}; unsigned int max_pixel_depth; size_t row_bytes; diff --git a/source/libs/libpng/libpng-src/pngset.c b/source/libs/libpng/libpng-src/pngset.c index 7cf54d924..ec75dbe36 100644 --- a/source/libs/libpng/libpng-src/pngset.c +++ b/source/libs/libpng/libpng-src/pngset.c @@ -1,10 +1,10 @@ /* pngset.c - storage of image information into info struct * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -137,7 +137,7 @@ png_set_cHRM_XYZ(png_const_structrp png_ptr, png_inforp info_ptr, double red_X, #ifdef PNG_eXIf_SUPPORTED void PNGAPI png_set_eXIf(png_const_structrp png_ptr, png_inforp info_ptr, - const png_bytep eXIf_buf) + png_bytep eXIf_buf) { png_warning(png_ptr, "png_set_eXIf does not work; use png_set_eXIf_1"); PNG_UNUSED(info_ptr) @@ -146,7 +146,7 @@ png_set_eXIf(png_const_structrp png_ptr, png_inforp info_ptr, void PNGAPI png_set_eXIf_1(png_const_structrp png_ptr, png_inforp info_ptr, - const png_uint_32 num_exif, const png_bytep eXIf_buf) + png_uint_32 num_exif, png_bytep eXIf_buf) { int i; @@ -1399,7 +1399,7 @@ png_set_keep_unknown_chunks(png_structrp png_ptr, int keep, /* Ignore all unknown chunks and all chunks recognized by * libpng except for IHDR, PLTE, tRNS, IDAT, and IEND */ - static PNG_CONST png_byte chunks_to_ignore[] = { + static const png_byte chunks_to_ignore[] = { 98, 75, 71, 68, '\0', /* bKGD */ 99, 72, 82, 77, '\0', /* cHRM */ 101, 88, 73, 102, '\0', /* eXIf */ diff --git a/source/libs/libpng/libpng-src/pngstruct.h b/source/libs/libpng/libpng-src/pngstruct.h index 699e8ac68..94a6d041f 100644 --- a/source/libs/libpng/libpng-src/pngstruct.h +++ b/source/libs/libpng/libpng-src/pngstruct.h @@ -1,10 +1,10 @@ /* pngstruct.h - header file for PNG reference library * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -228,6 +228,10 @@ struct png_struct_def * big_row_buf; while writing it is separately * allocated. */ +#ifdef PNG_READ_EXPAND_SUPPORTED + /* Buffer to accelerate palette transformations. */ + png_bytep riffled_palette; +#endif #ifdef PNG_WRITE_FILTER_SUPPORTED png_bytep try_row; /* buffer to save trial row when filtering */ png_bytep tst_row; /* buffer to save best trial row when filtering */ diff --git a/source/libs/libpng/libpng-src/pngtest.c b/source/libs/libpng/libpng-src/pngtest.c index 4411fd985..f27e91eb8 100644 --- a/source/libs/libpng/libpng-src/pngtest.c +++ b/source/libs/libpng/libpng-src/pngtest.c @@ -1,10 +1,10 @@ /* pngtest.c - a simple test program to test libpng * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -449,13 +449,13 @@ pngtest_write_data(png_structp png_ptr, png_bytep data, size_t length) */ typedef struct { - PNG_CONST char *file_name; + const char *file_name; } pngtest_error_parameters; static void PNGCBAPI pngtest_warning(png_structp png_ptr, png_const_charp message) { - PNG_CONST char *name = "UNKNOWN (ERROR!)"; + const char *name = "UNKNOWN (ERROR!)"; pngtest_error_parameters *test = (pngtest_error_parameters*)png_get_error_ptr(png_ptr); @@ -850,7 +850,7 @@ pngtest_check_text_support(png_structp png_ptr, png_textp text_ptr, /* Test one file */ static int -test_one_file(PNG_CONST char *inname, PNG_CONST char *outname) +test_one_file(const char *inname, const char *outname) { static png_FILE_p fpin; static png_FILE_p fpout; /* "static" prevents setjmp corruption */ @@ -1809,11 +1809,11 @@ test_one_file(PNG_CONST char *inname, PNG_CONST char *outname) /* Input and output filenames */ #ifdef RISCOS -static PNG_CONST char *inname = "pngtest/png"; -static PNG_CONST char *outname = "pngout/png"; +static const char *inname = "pngtest/png"; +static const char *outname = "pngout/png"; #else -static PNG_CONST char *inname = "pngtest.png"; -static PNG_CONST char *outname = "pngout.png"; +static const char *inname = "pngtest.png"; +static const char *outname = "pngout.png"; #endif int @@ -2153,4 +2153,4 @@ main(void) #endif /* Generate a compiler error if there is an old png.h in the search path. */ -typedef png_libpng_version_1_6_35 Your_png_h_is_not_version_1_6_35; +typedef png_libpng_version_1_6_36 Your_png_h_is_not_version_1_6_36; diff --git a/source/libs/libpng/libpng-src/pngtrans.c b/source/libs/libpng/libpng-src/pngtrans.c index de84aa6d6..1100f46eb 100644 --- a/source/libs/libpng/libpng-src/pngtrans.c +++ b/source/libs/libpng/libpng-src/pngtrans.c @@ -1,10 +1,10 @@ /* pngtrans.c - transforms the data in a row (used by both readers and writers) * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -345,7 +345,7 @@ png_do_swap(png_row_infop row_info, png_bytep row) #endif #if defined(PNG_READ_PACKSWAP_SUPPORTED)||defined(PNG_WRITE_PACKSWAP_SUPPORTED) -static PNG_CONST png_byte onebppswaptable[256] = { +static const png_byte onebppswaptable[256] = { 0x00, 0x80, 0x40, 0xC0, 0x20, 0xA0, 0x60, 0xE0, 0x10, 0x90, 0x50, 0xD0, 0x30, 0xB0, 0x70, 0xF0, 0x08, 0x88, 0x48, 0xC8, 0x28, 0xA8, 0x68, 0xE8, @@ -380,7 +380,7 @@ static PNG_CONST png_byte onebppswaptable[256] = { 0x1F, 0x9F, 0x5F, 0xDF, 0x3F, 0xBF, 0x7F, 0xFF }; -static PNG_CONST png_byte twobppswaptable[256] = { +static const png_byte twobppswaptable[256] = { 0x00, 0x40, 0x80, 0xC0, 0x10, 0x50, 0x90, 0xD0, 0x20, 0x60, 0xA0, 0xE0, 0x30, 0x70, 0xB0, 0xF0, 0x04, 0x44, 0x84, 0xC4, 0x14, 0x54, 0x94, 0xD4, @@ -415,7 +415,7 @@ static PNG_CONST png_byte twobppswaptable[256] = { 0x2F, 0x6F, 0xAF, 0xEF, 0x3F, 0x7F, 0xBF, 0xFF }; -static PNG_CONST png_byte fourbppswaptable[256] = { +static const png_byte fourbppswaptable[256] = { 0x00, 0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80, 0x90, 0xA0, 0xB0, 0xC0, 0xD0, 0xE0, 0xF0, 0x01, 0x11, 0x21, 0x31, 0x41, 0x51, 0x61, 0x71, diff --git a/source/libs/libpng/libpng-src/pngwio.c b/source/libs/libpng/libpng-src/pngwio.c index e5391687a..10e919dd0 100644 --- a/source/libs/libpng/libpng-src/pngwio.c +++ b/source/libs/libpng/libpng-src/pngwio.c @@ -1,10 +1,10 @@ /* pngwio.c - functions for data output * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2014,2016,2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer diff --git a/source/libs/libpng/libpng-src/pngwrite.c b/source/libs/libpng/libpng-src/pngwrite.c index 5bd87f373..160c877d3 100644 --- a/source/libs/libpng/libpng-src/pngwrite.c +++ b/source/libs/libpng/libpng-src/pngwrite.c @@ -1,10 +1,10 @@ /* pngwrite.c - general routines to write a PNG file * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -469,7 +469,7 @@ png_write_end(png_structrp png_ptr, png_inforp info_ptr) #ifdef PNG_CONVERT_tIME_SUPPORTED void PNGAPI -png_convert_from_struct_tm(png_timep ptime, PNG_CONST struct tm * ttime) +png_convert_from_struct_tm(png_timep ptime, const struct tm * ttime) { png_debug(1, "in png_convert_from_struct_tm"); @@ -948,6 +948,10 @@ png_write_destroy(png_structrp png_ptr) png_free_buffer_list(png_ptr, &png_ptr->zbuffer_list); png_free(png_ptr, png_ptr->row_buf); png_ptr->row_buf = NULL; +#ifdef PNG_READ_EXPANDED_SUPPORTED + png_free(png_ptr, png_ptr->riffled_palette); + png_ptr->riffled_palette = NULL; +#endif #ifdef PNG_WRITE_FILTER_SUPPORTED png_free(png_ptr, png_ptr->prev_row); png_free(png_ptr, png_ptr->try_row); @@ -1536,7 +1540,7 @@ png_write_image_16bit(png_voidp argument) display->first_row); png_uint_16p output_row = png_voidcast(png_uint_16p, display->local_row); png_uint_16p row_end; - const unsigned int channels = (image->format & PNG_FORMAT_FLAG_COLOR) != 0 ? + unsigned int channels = (image->format & PNG_FORMAT_FLAG_COLOR) != 0 ? 3 : 1; int aindex = 0; png_uint_32 y = image->height; @@ -1573,7 +1577,7 @@ png_write_image_16bit(png_voidp argument) while (out_ptr < row_end) { - const png_uint_16 alpha = in_ptr[aindex]; + png_uint_16 alpha = in_ptr[aindex]; png_uint_32 reciprocal = 0; int c; @@ -1695,7 +1699,7 @@ png_write_image_8bit(png_voidp argument) display->first_row); png_bytep output_row = png_voidcast(png_bytep, display->local_row); png_uint_32 y = image->height; - const unsigned int channels = (image->format & PNG_FORMAT_FLAG_COLOR) != 0 ? + unsigned int channels = (image->format & PNG_FORMAT_FLAG_COLOR) != 0 ? 3 : 1; if ((image->format & PNG_FORMAT_FLAG_ALPHA) != 0) @@ -1783,25 +1787,25 @@ png_write_image_8bit(png_voidp argument) static void png_image_set_PLTE(png_image_write_control *display) { - const png_imagep image = display->image; + png_imagep image = display->image; const void *cmap = display->colormap; - const int entries = image->colormap_entries > 256 ? 256 : + int entries = image->colormap_entries > 256 ? 256 : (int)image->colormap_entries; /* NOTE: the caller must check for cmap != NULL and entries != 0 */ - const png_uint_32 format = image->format; - const unsigned int channels = PNG_IMAGE_SAMPLE_CHANNELS(format); + png_uint_32 format = image->format; + unsigned int channels = PNG_IMAGE_SAMPLE_CHANNELS(format); # if defined(PNG_FORMAT_BGR_SUPPORTED) &&\ defined(PNG_SIMPLIFIED_WRITE_AFIRST_SUPPORTED) - const int afirst = (format & PNG_FORMAT_FLAG_AFIRST) != 0 && + int afirst = (format & PNG_FORMAT_FLAG_AFIRST) != 0 && (format & PNG_FORMAT_FLAG_ALPHA) != 0; # else # define afirst 0 # endif # ifdef PNG_FORMAT_BGR_SUPPORTED - const int bgr = (format & PNG_FORMAT_FLAG_BGR) != 0 ? 2 : 0; + int bgr = (format & PNG_FORMAT_FLAG_BGR) != 0 ? 2 : 0; # else # define bgr 0 # endif @@ -1951,12 +1955,12 @@ png_image_write_main(png_voidp argument) * and total image size to ensure that they are within the system limits. */ { - const unsigned int channels = PNG_IMAGE_PIXEL_CHANNELS(image->format); + unsigned int channels = PNG_IMAGE_PIXEL_CHANNELS(image->format); if (image->width <= 0x7fffffffU/channels) /* no overflow */ { png_uint_32 check; - const png_uint_32 png_row_stride = image->width * channels; + png_uint_32 png_row_stride = image->width * channels; if (display->row_stride == 0) display->row_stride = (png_int_32)/*SAFE*/png_row_stride; @@ -2052,7 +2056,7 @@ png_image_write_main(png_voidp argument) */ if (write_16bit != 0) { - PNG_CONST png_uint_16 le = 0x0001; + png_uint_16 le = 0x0001; if ((*(png_const_bytep) & le) != 0) png_set_swap(png_ptr); @@ -2166,7 +2170,7 @@ image_memory_write)(png_structp png_ptr, png_bytep/*const*/ data, size_t size) { png_image_write_control *display = png_voidcast(png_image_write_control*, png_ptr->io_ptr/*backdoor: png_get_io_ptr(png_ptr)*/); - const png_alloc_size_t ob = display->output_bytes; + png_alloc_size_t ob = display->output_bytes; /* Check for overflow; this should never happen: */ if (size <= ((png_alloc_size_t)-1) - ob) diff --git a/source/libs/libpng/libpng-src/pngwtran.c b/source/libs/libpng/libpng-src/pngwtran.c index 3a1e0a21d..49a13c1e9 100644 --- a/source/libs/libpng/libpng-src/pngwtran.c +++ b/source/libs/libpng/libpng-src/pngwtran.c @@ -1,10 +1,10 @@ /* pngwtran.c - transforms the data in a row for PNG writers * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -254,8 +254,7 @@ png_do_shift(png_row_infop row_info, png_bytep row, for (i = 0; i < istop; i++, bp++) { - - const unsigned int c = i%channels; + unsigned int c = i%channels; int j; unsigned int v, out; @@ -283,7 +282,7 @@ png_do_shift(png_row_infop row_info, png_bytep row, for (bp = row, i = 0; i < istop; i++) { - const unsigned int c = i%channels; + unsigned int c = i%channels; int j; unsigned int value, v; diff --git a/source/libs/libpng/libpng-src/pngwutil.c b/source/libs/libpng/libpng-src/pngwutil.c index ab431e712..16345e4c0 100644 --- a/source/libs/libpng/libpng-src/pngwutil.c +++ b/source/libs/libpng/libpng-src/pngwutil.c @@ -1,10 +1,10 @@ /* pngwutil.c - utilities to write a PNG file * - * Last changed in libpng 1.6.35 [July 15, 2018] + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson - * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) - * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) + * Copyright (c) 1996-1997 Andreas Dilger + * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer @@ -1893,16 +1893,16 @@ png_write_start_row(png_structrp png_ptr) /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */ /* Start of interlace block */ - static PNG_CONST png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; + static const png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; /* Offset to next interlace block */ - static PNG_CONST png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; + static const png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; /* Start of interlace block in the y direction */ - static PNG_CONST png_byte png_pass_ystart[7] = {0, 0, 4, 0, 2, 0, 1}; + static const png_byte png_pass_ystart[7] = {0, 0, 4, 0, 2, 0, 1}; /* Offset to next interlace block in the y direction */ - static PNG_CONST png_byte png_pass_yinc[7] = {8, 8, 8, 4, 4, 2, 2}; + static const png_byte png_pass_yinc[7] = {8, 8, 8, 4, 4, 2, 2}; #endif png_alloc_size_t buf_size; @@ -2008,16 +2008,16 @@ png_write_finish_row(png_structrp png_ptr) /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */ /* Start of interlace block */ - static PNG_CONST png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; + static const png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; /* Offset to next interlace block */ - static PNG_CONST png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; + static const png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; /* Start of interlace block in the y direction */ - static PNG_CONST png_byte png_pass_ystart[7] = {0, 0, 4, 0, 2, 0, 1}; + static const png_byte png_pass_ystart[7] = {0, 0, 4, 0, 2, 0, 1}; /* Offset to next interlace block in the y direction */ - static PNG_CONST png_byte png_pass_yinc[7] = {8, 8, 8, 4, 4, 2, 2}; + static const png_byte png_pass_yinc[7] = {8, 8, 8, 4, 4, 2, 2}; #endif png_debug(1, "in png_write_finish_row"); @@ -2098,10 +2098,10 @@ png_do_write_interlace(png_row_infop row_info, png_bytep row, int pass) /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */ /* Start of interlace block */ - static PNG_CONST png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; + static const png_byte png_pass_start[7] = {0, 4, 0, 2, 0, 1, 0}; /* Offset to next interlace block */ - static PNG_CONST png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; + static const png_byte png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; png_debug(1, "in png_do_write_interlace"); @@ -2276,7 +2276,7 @@ png_write_filtered_row(png_structrp png_ptr, png_bytep filtered_row, #ifdef PNG_WRITE_FILTER_SUPPORTED static size_t /* PRIVATE */ -png_setup_sub_row(png_structrp png_ptr, const png_uint_32 bpp, +png_setup_sub_row(png_structrp png_ptr, png_uint_32 bpp, size_t row_bytes, size_t lmins) { png_bytep rp, dp, lp; @@ -2315,7 +2315,7 @@ png_setup_sub_row(png_structrp png_ptr, const png_uint_32 bpp, } static void /* PRIVATE */ -png_setup_sub_row_only(png_structrp png_ptr, const png_uint_32 bpp, +png_setup_sub_row_only(png_structrp png_ptr, png_uint_32 bpp, size_t row_bytes) { png_bytep rp, dp, lp; @@ -2380,7 +2380,7 @@ png_setup_up_row_only(png_structrp png_ptr, size_t row_bytes) } static size_t /* PRIVATE */ -png_setup_avg_row(png_structrp png_ptr, const png_uint_32 bpp, +png_setup_avg_row(png_structrp png_ptr, png_uint_32 bpp, size_t row_bytes, size_t lmins) { png_bytep rp, dp, pp, lp; @@ -2420,7 +2420,7 @@ png_setup_avg_row(png_structrp png_ptr, const png_uint_32 bpp, return (sum); } static void /* PRIVATE */ -png_setup_avg_row_only(png_structrp png_ptr, const png_uint_32 bpp, +png_setup_avg_row_only(png_structrp png_ptr, png_uint_32 bpp, size_t row_bytes) { png_bytep rp, dp, pp, lp; @@ -2442,7 +2442,7 @@ png_setup_avg_row_only(png_structrp png_ptr, const png_uint_32 bpp, } static size_t /* PRIVATE */ -png_setup_paeth_row(png_structrp png_ptr, const png_uint_32 bpp, +png_setup_paeth_row(png_structrp png_ptr, png_uint_32 bpp, size_t row_bytes, size_t lmins) { png_bytep rp, dp, pp, cp, lp; @@ -2503,7 +2503,7 @@ png_setup_paeth_row(png_structrp png_ptr, const png_uint_32 bpp, return (sum); } static void /* PRIVATE */ -png_setup_paeth_row_only(png_structrp png_ptr, const png_uint_32 bpp, +png_setup_paeth_row_only(png_structrp png_ptr, png_uint_32 bpp, size_t row_bytes) { png_bytep rp, dp, pp, cp, lp; diff --git a/source/libs/libpng/libpng-src/powerpc/filter_vsx_intrinsics.c b/source/libs/libpng/libpng-src/powerpc/filter_vsx_intrinsics.c index 39521cfc8..01cf8800d 100644 --- a/source/libs/libpng/libpng-src/powerpc/filter_vsx_intrinsics.c +++ b/source/libs/libpng/libpng-src/powerpc/filter_vsx_intrinsics.c @@ -1,13 +1,14 @@ /* filter_vsx_intrinsics.c - PowerPC optimised filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2017 Glenn Randers-Pehrson * Written by Vadim Barkov, 2017. - * Last changed in libpng 1.6.29 [March 16, 2017] * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h */ + #include <stdio.h> #include <stdint.h> #include "../pngpriv.h" @@ -173,7 +174,7 @@ static const vector unsigned char VSX_SHORT_TO_CHAR4_3 = {16,16,16,16,16,16,16,1 void png_read_filter_row_sub4_vsx(png_row_infop row_info, png_bytep row, png_const_bytep prev_row) { - const png_byte bpp = 4; + png_byte bpp = 4; vector unsigned char rp_vec; vector unsigned char part_vec; @@ -230,7 +231,7 @@ void png_read_filter_row_sub4_vsx(png_row_infop row_info, png_bytep row, void png_read_filter_row_sub3_vsx(png_row_infop row_info, png_bytep row, png_const_bytep prev_row) { - const png_byte bpp = 3; + png_byte bpp = 3; vector unsigned char rp_vec; vector unsigned char part_vec; @@ -294,7 +295,7 @@ void png_read_filter_row_sub3_vsx(png_row_infop row_info, png_bytep row, void png_read_filter_row_avg4_vsx(png_row_infop row_info, png_bytep row, png_const_bytep prev_row) { - const png_byte bpp = 4; + png_byte bpp = 4; vector unsigned char rp_vec; vector unsigned char pp_vec; @@ -381,7 +382,7 @@ void png_read_filter_row_avg4_vsx(png_row_infop row_info, png_bytep row, void png_read_filter_row_avg3_vsx(png_row_infop row_info, png_bytep row, png_const_bytep prev_row) { - const png_byte bpp = 3; + png_byte bpp = 3; vector unsigned char rp_vec; vector unsigned char pp_vec; @@ -499,7 +500,7 @@ void png_read_filter_row_avg3_vsx(png_row_infop row_info, png_bytep row, void png_read_filter_row_paeth4_vsx(png_row_infop row_info, png_bytep row, png_const_bytep prev_row) { - const png_byte bpp = 4; + png_byte bpp = 4; int a, b, c, pa, pb, pc, p; vector unsigned char rp_vec; @@ -619,7 +620,7 @@ void png_read_filter_row_paeth4_vsx(png_row_infop row_info, png_bytep row, void png_read_filter_row_paeth3_vsx(png_row_infop row_info, png_bytep row, png_const_bytep prev_row) { - const png_byte bpp = 3; + png_byte bpp = 3; int a, b, c, pa, pb, pc, p; vector unsigned char rp_vec; diff --git a/source/libs/libpng/libpng-src/powerpc/powerpc_init.c b/source/libs/libpng/libpng-src/powerpc/powerpc_init.c index 07016177c..54426c558 100644 --- a/source/libs/libpng/libpng-src/powerpc/powerpc_init.c +++ b/source/libs/libpng/libpng-src/powerpc/powerpc_init.c @@ -1,14 +1,15 @@ /* powerpc_init.c - POWERPC optimised filter functions * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 2017 Glenn Randers-Pehrson * Written by Vadim Barkov, 2017. - * Last changed in libpng 1.6.29 [March 16, 2017] * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h */ + /* Below, after checking __linux__, various non-C90 POSIX 1003.1 functions are * called. */ diff --git a/source/libs/libpng/libpng-src/projects/vstudio/README.txt b/source/libs/libpng/libpng-src/projects/vstudio/README.txt index b8b4a3a8e..e28ec9549 100644 --- a/source/libs/libpng/libpng-src/projects/vstudio/README.txt +++ b/source/libs/libpng/libpng-src/projects/vstudio/README.txt @@ -1,76 +1,77 @@ +Instructions for building libpng using Microsoft Visual Studio +============================================================== -VisualStudio instructions - -libpng version 1.6.35 - July 15, 2018 - +Copyright (c) 2018 Cosmin Truta Copyright (c) 2010,2013,2015 Glenn Randers-Pehrson This code is released under the libpng license. -For conditions of distribution and use, see the disclaimer -and license in png.h +For conditions of distribution and use, see the disclaimer and license +in png.h -This directory contains support for building libpng under MicroSoft -VisualStudio 2010. It may also work under later versions of VisualStudio. -You should be familiar with VisualStudio before using this directory. +This directory contains a solution for building libpng under Microsoft +Visual Studio 2010. It may also work under later versions of Visual +Studio. You should be familiar with Visual Studio before using this +solution. Initial preparations -==================== -You must enter some information in zlib.props before attempting to build -with this 'solution'. Please read and edit zlib.props first. You will -probably not be familiar with the contents of zlib.props - do not worry, -it is mostly harmless. +-------------------- +You must enter some information in zlib.props before attempting to +build with this 'solution'. Please read and edit zlib.props first. +You will probably not be familiar with the contents of zlib.props - +do not worry, it is mostly harmless. This is all you need to do to build the 'release' and 'release library' configurations. Debugging -========= +--------- The release configurations default to /Ox optimization. Full debugging -information is produced (in the .pdb), but if you encounter a problem the -optimization may make it difficult to debug. Simply rebuild with a lower -optimization level (e.g. /Od.) +information is produced (in the .pdb), but if you encounter a problem +the optimization may make it difficult to debug. Simply rebuild with a +lower optimization level (e.g. /Od.) Linking your application -======================== -Normally you should link against the 'release' configuration. This builds a -DLL for libpng with the default runtime options used by Visual Studio 2010. -In particular the runtime library is the "MultiThreaded DLL" version. -If you use Visual Studio defaults to build your application you will have no -problems. - -If you don't use the Visual Studio defaults your application must still be -built with the default runtime option (/MD). If, for some reason, it is not -then your application will crash inside libpng16.dll as soon as libpng -tries to read from a file handle you pass in. - -If you do not want to use the DLL, for example for a very small application, -the 'release library' configuration may be more appropriate. This is built -with a non-standard runtime library - the "MultiThreaded" version. When you -build your application it must be compiled with this option (/MT), otherwise -it will not build (if you are lucky) or crash (if you are not.) See the -WARNING file that is distributed along with this readme.txt. +------------------------ +Normally you should link against the 'release' configuration. This +builds a DLL for libpng with the default runtime options used by Visual +Studio. In particular the runtime library is the "MultiThreaded DLL" +version. If you use Visual Studio defaults to build your application, +you should have no problems. + +If you don't use the Visual Studio defaults your application must still +be built with the default runtime option (/MD). If, for some reason, +it is not then your application will crash inside libpng16.dll as soon +as libpng tries to read from a file handle you pass in. + +If you do not want to use the DLL, and prefer static linking instead, +you may choose the 'release library' configuration. This is built with +a non-standard runtime library - the "MultiThreaded" version. When you +build your application, it must be compiled with this option (/MT), +otherwise it will not build (if you are lucky) or it will crash (if you +are not.) See the WARNING file that is distributed with this README. Stop reading here -================= +----------------- You have enough information to build a working application. Debug versions have limited support -=================================== -This solution includes limited support for debug versions of libpng. You -do not need these unless your own solution itself uses debug builds (it is -far more effective to debug on the release builds, there is no point building -a special debug build unless you have heap corruption problems that you can't -track down.) +----------------------------------- +This solution includes limited support for debug versions of libpng. +You do not need these unless your own solution itself uses debug builds +(it is far more effective to debug on the release builds, there is no +point building a special debug build unless you have heap corruption +problems that you can't track down.) -The debug build of libpng is minimally supported. Support for debug builds of -zlib is also minimal. You really don't want to do this. +The debug build of libpng is minimally supported. Support for debug +builds of zlib is also minimal. Please keep this in mind, if you want +to use it. WARNING -======= -Libpng 1.6.x does not use the default run-time library when building static -library builds of libpng; instead of the shared DLL runtime it uses a static -runtime. If you need to change this make sure to change the setting on all the -relevant projects: +------- +Libpng 1.6.x does not use the default run-time library when building +static library builds of libpng; instead of the shared DLL runtime, it +uses a static runtime. If you need to change this, make sure to change +the setting on all the relevant projects: libpng zlib @@ -82,16 +83,5 @@ The runtime library settings for each build are as follows: DLL /MD /MDd Library /MT /MTd -NOTICE that libpng 1.5.x erroneously used /MD for Debug DLL builds; if you used -the debug builds in your app and you changed your app to use /MD you will need -to change it back to /MDd for libpng 1.6.0 and later. - -The Visual Studio 2010 defaults for a Win32 DLL or Static Library project are -as follows: - - Release Debug - DLL /MD /MDd - Static Library /MD /MDd - -Also, be sure to build libpng, zlib, and your project all for the same +Also, be sure to build libpng, zlib, and your project, all for the same platform (e.g., 32-bit or 64-bit). diff --git a/source/libs/libpng/libpng-src/projects/vstudio/zlib.props b/source/libs/libpng/libpng-src/projects/vstudio/zlib.props index 5bf6e28fb..878627966 100644 --- a/source/libs/libpng/libpng-src/projects/vstudio/zlib.props +++ b/source/libs/libpng/libpng-src/projects/vstudio/zlib.props @@ -2,16 +2,15 @@ <!-- * zlib.props - location of zlib source * - * libpng version 1.6.35 - July 15, 2018 - * + * Copyright (c) 2018 Cosmin Truta * Copyright (c) 1998-2011 Glenn Randers-Pehrson * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h - * You must edit this file to record the location of the zlib - * source code. + * You may need to edit this file in order to update the location + * of the zlib source code. --> <Project ToolsVersion="4.0" @@ -32,7 +31,7 @@ versions do not match. The zlib version used in this build is recorded below: --> - <ZLibSrcDir>..\..\..\..\zlib-1.2.8</ZLibSrcDir> + <ZLibSrcDir>..\..\..\..\zlib</ZLibSrcDir> <!-- The following line allows compilation for an ARM target with Visual Studio 2012. Notice that this is not supported by the Visual Studio diff --git a/source/libs/libpng/libpng-src/scripts/README.txt b/source/libs/libpng/libpng-src/scripts/README.txt index 4faf115f1..3d911ef2f 100644 --- a/source/libs/libpng/libpng-src/scripts/README.txt +++ b/source/libs/libpng/libpng-src/scripts/README.txt @@ -1,24 +1,20 @@ -Makefiles for libpng version 1.6.35 - July 15, 2018 +Makefiles for libpng -pnglibconf.h.prebuilt => Stores configuration settings +pnglibconf.h.prebuilt => Configuration settings makefile.linux => Linux/ELF makefile - (gcc, creates libpng16.so.16.1.6.35) + (gcc, creates shared libpng16.so.16.1.6.*) makefile.linux-opt=> Linux/ELF makefile with hardware optimizations on - (gcc, creates libpng16.so.16.1.6.35) + (gcc, creates shared libpng16.so.16.1.6.*) makefile.gcc => Generic makefile (gcc, creates static libpng.a) - makefile.knr => Archaic UNIX Makefile that converts files with - ansi2knr (Requires ansi2knr.c from - ftp://ftp.cs.wisc.edu/ghost) makefile.acorn => Acorn makefile makefile.aix => AIX/gcc makefile makefile.amiga => Amiga makefile makefile.atari => Atari makefile makefile.bc32 => 32-bit Borland C++ (all modules compiled in C mode) - makefile.beos => beos makefile - makefile.bor => Borland makefile (uses bcc) + makefile.beos => BeOS makefile makefile.cegcc => minge32ce for Windows CE makefile - makefile.darwin => Darwin makefile, can use on MacosX + makefile.darwin => Darwin makefile, for macOS (formerly Mac OS X) makefile.dec => DEC Alpha UNIX makefile makefile.dj2 => DJGPP 2 makefile makefile.freebsd => FreeBSD makefile @@ -29,23 +25,20 @@ pnglibconf.h.prebuilt => Stores configuration settings makefile.ibmc => IBM C/C++ version 3.x for Win32 and OS/2 (static) makefile.intel => Intel C/C++ version 4.0 and later makefile.mips => MIPS makefile - makefile.msc => Microsoft C makefile - makefile.netbsd => NetBSD/cc makefile, makes libpng.so. + makefile.netbsd => NetBSD/cc makefile, makes shared libpng.so makefile.openbsd => OpenBSD makefile - makefile.os2 => OS/2 Makefile (gcc and emx, requires libpng.def) - makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc - makefile.sggcc => Silicon Graphics (gcc, - creates libpng16.so.16.1.6.35) + makefile.sco => SCO OSr5 ELF and Unixware 7 with Native cc + makefile.sggcc => Silicon Graphics makefile + (gcc, creates shared libpng16.so.16.1.6.*) makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib) - makefile.solaris => Solaris 2.X makefile (gcc, - creates libpng16.so.16.1.6.35) - makefile.so9 => Solaris 9 makefile (gcc, - creates libpng16.so.16.1.6.35) + makefile.solaris => Solaris 2.X makefile + (gcc, creates shared libpng16.so.16.1.6.*) + makefile.so9 => Solaris 9 makefile + (gcc, creates shared libpng16.so.16.1.6.*) makefile.std => Generic UNIX makefile (cc, creates static libpng.a) makefile.sunos => Sun makefile makefile.32sunu => Sun Ultra 32-bit makefile makefile.64sunu => Sun Ultra 64-bit makefile - makefile.tc3 => Turbo C 3.0 makefile makefile.vcwin32 => makefile for Microsoft Visual C++ 4.0 and later makevms.com => VMS build script smakefile.ppc => AMIGA smakefile for SAS C V6.58/7.00 PPC compiler @@ -57,20 +50,20 @@ Other supporting scripts: libpng-config-body.in => used by several makefiles to create libpng-config libpng-config-head.in => used by several makefiles to create libpng-config libpng.pc.in => Used by several makefiles to create libpng.pc - pngwin.rc => Used by the visualc71 project. + pngwin.rc => Used by the visualc71 project pngwin.def => Used by makefile.os2 pngwin.dfn => Used to maintain pngwin.def SCOPTIONS.ppc => Used with smakefile.ppc - checksym.awk => Used for maintaining pnglibconf.h - def.dfn => Used for maintaining pnglibconf.h - options.awk => Used for maintaining pnglibconf.h - pnglibconf.dfa => Used for maintaining pnglibconf.h - pnglibconf.mak => Used for maintaining pnglibconf.h - sym.dfn => Used for symbol versioning - symbols.def => Used for symbol versioning - symbols.dfn => Used for symbol versioning - vers.dfn => Used for symbol versioning + checksym.awk => Used for maintaining pnglibconf.h + def.dfn => Used for maintaining pnglibconf.h + options.awk => Used for maintaining pnglibconf.h + pnglibconf.dfa => Used for maintaining pnglibconf.h + pnglibconf.mak => Used for maintaining pnglibconf.h + sym.dfn => Used for symbol versioning + symbols.def => Used for symbol versioning + symbols.dfn => Used for symbol versioning + vers.dfn => Used for symbol versioning libtool.m4 => Used by autoconf tools ltoptions.m4 => Used by autoconf tools diff --git a/source/libs/libpng/libpng-src/scripts/def.c b/source/libs/libpng/libpng-src/scripts/def.c deleted file mode 100644 index 5a159052c..000000000 --- a/source/libs/libpng/libpng-src/scripts/def.c +++ /dev/null @@ -1,29 +0,0 @@ -/* def.c - define format of libpng.def - * - * Last changed in libpng version 1.6.16 [December 22, 2014] - * Copyright (c) 2011-2014 Glenn Randers-Pehrson - * - * This code is released under the libpng license. - * For conditions of distribution and use, see the disclaimer - * and license in png.h - */ - -/* Write the export file header: */ -PNG_DFN ";--------------------------------------------------------------" -PNG_DFN "; LIBPNG module definition file for OS/2" -PNG_DFN ";--------------------------------------------------------------" -PNG_DFN "" -PNG_DFN "; If you give the library an explicit name one or other files" -PNG_DFN "; may need modifying to support the new name on one or more" -PNG_DFN "; systems." -PNG_DFN "LIBRARY" -PNG_DFN "OS2 DESCRIPTION "PNG image compression library"" -PNG_DFN "OS2 CODE PRELOAD MOVEABLE DISCARDABLE" -PNG_DFN "" -PNG_DFN "EXPORTS" -PNG_DFN ";Version 1.6.35" - -#define PNG_EXPORTA(ordinal, type, name, args, attributes)\ - PNG_DFN "@" SYMBOL_PREFIX "@@" name "@" - -#include "../png.h" diff --git a/source/libs/libpng/libpng-src/scripts/descrip.mms b/source/libs/libpng/libpng-src/scripts/descrip.mms index 463c4251e..a3aefbf4c 100644 --- a/source/libs/libpng/libpng-src/scripts/descrip.mms +++ b/source/libs/libpng/libpng-src/scripts/descrip.mms @@ -16,10 +16,10 @@ OBJS = png.obj, pngset.obj, pngget.obj, pngrutil.obj, pngtrans.obj,\ CFLAGS= $(C_DEB) $(CC_DEFS) $(PREF) all : pngtest.exe libpng.olb - @ write sys$output " pngtest available" + @ write sys$output " pngtest available" libpng.olb : libpng.olb($(OBJS)) - @ write sys$output " Libpng available" + @ write sys$output " libpng available" pngtest.exe : pngtest.obj libpng.olb diff --git a/source/libs/libpng/libpng-src/scripts/libpng-config-head.in b/source/libs/libpng/libpng-src/scripts/libpng-config-head.in index c601ccdf2..985271af4 100644 --- a/source/libs/libpng/libpng-src/scripts/libpng-config-head.in +++ b/source/libs/libpng/libpng-src/scripts/libpng-config-head.in @@ -11,7 +11,7 @@ # Modeled after libxml-config. -version=1.6.35 +version=1.6.36 prefix="" libdir="" libs="" diff --git a/source/libs/libpng/libpng-src/scripts/libpng.pc.in b/source/libs/libpng/libpng-src/scripts/libpng.pc.in index 985db64ce..2f7492397 100644 --- a/source/libs/libpng/libpng-src/scripts/libpng.pc.in +++ b/source/libs/libpng/libpng-src/scripts/libpng.pc.in @@ -5,6 +5,6 @@ includedir=@includedir@/libpng16 Name: libpng Description: Loads and saves PNG files -Version: 1.6.35 +Version: 1.6.36 Libs: -L${libdir} -lpng16 Cflags: -I${includedir} diff --git a/source/libs/libpng/libpng-src/scripts/makefile.32sunu b/source/libs/libpng/libpng-src/scripts/makefile.32sunu index 7d4b7c53a..c849ecd27 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.32sunu +++ b/source/libs/libpng/libpng-src/scripts/makefile.32sunu @@ -219,7 +219,7 @@ clean: libpng-config $(LIBSO) $(LIBSOMAJ)* \ libpng.pc -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.64sunu b/source/libs/libpng/libpng-src/scripts/makefile.64sunu index 341fce969..8880fa9b9 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.64sunu +++ b/source/libs/libpng/libpng-src/scripts/makefile.64sunu @@ -219,7 +219,7 @@ clean: libpng-config $(LIBSO) $(LIBSOMAJ)* \ libpng.pc -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.bor b/source/libs/libpng/libpng-src/scripts/makefile.bor deleted file mode 100644 index 6693772db..000000000 --- a/source/libs/libpng/libpng-src/scripts/makefile.bor +++ /dev/null @@ -1,170 +0,0 @@ -# Makefile for libpng -# 16-bit Borland C++ (Note: All modules are compiled in C mode) -# To build the library, do: -# "make -fmakefile.bor -DMODEL=c" -# or: "make -fmakefile.bor -DMODEL=l" -# -# ------------ Borland C++ ------------ - -### Absolutely necessary for this makefile to work -.AUTODEPEND - -## Where zlib.h, zconf.h and zlib_MODEL.lib are -ZLIB_DIR=..\zlib - -## Compiler, linker, librarian and other tools -CC=bcc -LD=bcc -LIB=tlib -CP=copy - -!ifndef MODEL -MODEL=l -!endif - -MODEL_ARG=-m$(MODEL) - -#TARGET_CPU=3 -# 2 = 286, 3 = 386, etc. -!ifndef TARGET_CPU -TARGET_CPU=2 -!endif - -# Use this if you don't want Borland's fancy exception handling -# (for Borland C++ 4.0 or later) -#NOEHLIB=noeh$(MODEL).lib - -!ifdef DEBUG -CDEBUG=-v -LDEBUG=-v -!else -CDEBUG= -LDEBUG= -!endif - -# STACKOFLOW=1 -!ifdef STACKOFLOW -CDEBUG=$(CDEBUG) -N -LDEBUG=$(LDEBUG) -N -!endif - -# -X- turn on dependency generation in the object file -# -w set all warnings on -# -O2 optimize for speed -# -Z global optimization -CPPFLAGS=-I$(ZLIB_DIR) -CFLAGS=-O2 -Z -X- -w -$(TARGET_CPU) $(MODEL_ARG) $(CDEBUG) - -# -M generate map file -LDFLAGS=-M -L$(ZLIB_DIR) $(MODEL_ARG) $(LDEBUG) - -# Pre-built configuration -# See scripts\pnglibconf.mak for more options -!ifndef PNGLIBCONF_H_PREBUILT -PNGLIBCONF_H_PREBUILT = scripts\pnglibconf.h.prebuilt -!endif - -## Variables - -OBJS = \ - png.obj \ - pngerror.obj \ - pngget.obj \ - pngmem.obj \ - pngpread.obj \ - pngread.obj \ - pngrio.obj \ - pngrtran.obj \ - pngrutil.obj \ - pngset.obj \ - pngtrans.obj \ - pngwio.obj \ - pngwrite.obj \ - pngwtran.obj \ - pngwutil.obj - -LIBOBJS = \ - +png.obj \ - +pngerror.obj \ - +pngget.obj \ - +pngmem.obj \ - +pngpread.obj \ - +pngread.obj \ - +pngrio.obj \ - +pngrtran.obj \ - +pngrutil.obj \ - +pngset.obj \ - +pngtrans.obj \ - +pngwio.obj \ - +pngwrite.obj \ - +pngwtran.obj \ - +pngwutil.obj - -LIBNAME=libpng$(MODEL).lib - -## Implicit rules - -# Braces let make "batch" calls to the compiler, -# 2 calls instead of 12; space is important. -.c.obj: - $(CC) $(CPPFLAGS) $(CFLAGS) -c {$*.c } - -.c.exe: - $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $*.c \ - $(LIBNAME) zlib_$(MODEL).lib $(NOEHLIB) - -## Major targets - -all: libpng pngtest - -# try !include scripts\pnglibconf.mak for more options -pnglibconf.h: $(PNGLIBCONF_H_PREBUILT) - $(CP) $(PNGLIBCONF_H_PREBUILT) $@ - -libpng: $(LIBNAME) - -pngtest: pngtest$(MODEL).exe - -test: pngtest$(MODEL).exe - pngtest$(MODEL) - -## Minor Targets - -png.obj: png.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngerror.obj: pngerror.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngget.obj: pngget.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngmem.obj: pngmem.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngpread.obj: pngpread.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngread.obj: pngread.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrio.obj: pngrio.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrtran.obj: pngrtran.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrutil.obj: pngrutil.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngset.obj: pngset.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngtrans.obj: pngtrans.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwio.obj: pngwio.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwrite.obj: pngwrite.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwtran.obj: pngwtran.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwutil.obj: pngwutil.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - -$(LIBNAME): $(OBJS) - -del $(LIBNAME) - $(LIB) $(LIBNAME) @&&| -$(LIBOBJS), libpng$(MODEL) -| - -pngtest$(MODEL).obj: pngtest.c png.h pngconf.h pnglibconf.h - $(CC) $(CFLAGS) -opngtest$(MODEL) -c pngtest.c - -pngtest$(MODEL).exe: pngtest$(MODEL).obj - $(LD) $(LDFLAGS) pngtest$(MODEL).obj $(LIBNAME) zlib_$(MODEL).lib $(NOEHLIB) - -# Clean up anything else you want -clean: - -del pnglibconf.h - -del *.obj - -del *.exe - -del *.lib - -del *.lst - -del *.map - -# End of makefile for libpng diff --git a/source/libs/libpng/libpng-src/scripts/makefile.cegcc b/source/libs/libpng/libpng-src/scripts/makefile.cegcc index 31d2078fd..60fb113cf 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.cegcc +++ b/source/libs/libpng/libpng-src/scripts/makefile.cegcc @@ -23,7 +23,7 @@ VERMAJ = 1 VERMIN = 6 -VERMIC = 35 +VERMIC = 36 VER = $(VERMAJ).$(VERMIN).$(VERMIC) NAME = libpng PACKAGE = $(NAME)-$(VER) diff --git a/source/libs/libpng/libpng-src/scripts/makefile.darwin b/source/libs/libpng/libpng-src/scripts/makefile.darwin index be3f92c54..33c27cc1f 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.darwin +++ b/source/libs/libpng/libpng-src/scripts/makefile.darwin @@ -200,7 +200,7 @@ clean: $(RM_F) *.o libpng.a pngtest pngout.png libpng-config \ libpng.pc $(LIBNAME).*dylib pngtesti pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.freebsd b/source/libs/libpng/libpng-src/scripts/makefile.freebsd index cad1a5aa8..5fec61e35 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.freebsd +++ b/source/libs/libpng/libpng-src/scripts/makefile.freebsd @@ -62,7 +62,7 @@ test: pngtest pnglibconf.h: $(PNGLIBCONF_H_PREBUILT) cp $(PNGLIBCONF_H_PREBUILT) $@ -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.hp64 b/source/libs/libpng/libpng-src/scripts/makefile.hp64 index 5948be8ec..4421e787d 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.hp64 +++ b/source/libs/libpng/libpng-src/scripts/makefile.hp64 @@ -1,7 +1,7 @@ # makefile for libpng, HPUX (10.20 and 11.00) using the ANSI/C product. # Copyright (C) 1999-2002, 2006, 2009, 2010-2014 Glenn Randers-Pehrson # Copyright (C) 1995 Guy Eric Schalnat, Group 42 -# contributed by Jim Rice and updated by Chris Schleicher, Hewlett Packard +# Contributed by Jim Rice and updated by Chris Schleicher, Hewlett Packard # # This code is released under the libpng license. # For conditions of distribution and use, see the disclaimer @@ -206,7 +206,7 @@ clean: libpng-config $(LIBSO) $(LIBSOMAJ)* \ libpng.pc pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.hpgcc b/source/libs/libpng/libpng-src/scripts/makefile.hpgcc index 5c8791b13..efef1f3fb 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.hpgcc +++ b/source/libs/libpng/libpng-src/scripts/makefile.hpgcc @@ -209,7 +209,7 @@ clean: libpng-config $(LIBSO) $(LIBSOMAJ)* \ libpng.pc pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.hpux b/source/libs/libpng/libpng-src/scripts/makefile.hpux index b07612dc7..27b312a38 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.hpux +++ b/source/libs/libpng/libpng-src/scripts/makefile.hpux @@ -1,7 +1,7 @@ # makefile for libpng, HPUX (10.20 and 11.00) using the ANSI/C product. # Copyright (C) 1999-2002, 2006, 2010-2014 Glenn Randers-Pehrson # Copyright (C) 1995 Guy Eric Schalnat, Group 42 -# contributed by Jim Rice and updated by Chris Schleicher, Hewlett Packard +# Contributed by Jim Rice and updated by Chris Schleicher, Hewlett Packard # # This code is released under the libpng license. # For conditions of distribution and use, see the disclaimer @@ -204,7 +204,7 @@ clean: libpng-config $(LIBSO) $(LIBSOMAJ)* \ libpng.pc pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.knr b/source/libs/libpng/libpng-src/scripts/makefile.knr deleted file mode 100644 index d8de064c4..000000000 --- a/source/libs/libpng/libpng-src/scripts/makefile.knr +++ /dev/null @@ -1,116 +0,0 @@ -# makefile for libpng -# Copyright (C) 2002, 2006, 2009, 2014 Glenn Randers-Pehrson -# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc. -# -# This code is released under the libpng license. -# For conditions of distribution and use, see the disclaimer -# and license in png.h -# -# This makefile requires the file ansi2knr.c, which you can get -# from the Ghostscript ftp site at ftp://ftp.cs.wisc.edu/ghost/ -# If you have libjpeg, you probably already have ansi2knr.c in the jpeg -# source distribution. - -# where make install puts libpng.a and png.h -prefix=/usr/local -INCPATH=$(prefix)/include -LIBPATH=$(prefix)/lib - -# override DESTDIR= on the make install command line to easily support -# installing into a temporary location. Example: -# -# make install DESTDIR=/tmp/build/libpng -# -# If you're going to install into a temporary location -# via DESTDIR, $(DESTDIR)$(prefix) must already exist before -# you execute make install. -DESTDIR= - -CC = cc -CPPFLAGS = -I../zlib -CFLAGS = -O -LDFLAGS = -L. -L../zlib/ -lpng -lz -lm -# flags for ansi2knr -ANSI2KNRFLAGS= - -RANLIB = ranlib -#RANLIB = echo - -CP = cp -RM_F = rm -f - -# Pre-built configuration -# See scripts/pnglibconf.mak for more options -PNGLIBCONF_H_PREBUILT = scripts/pnglibconf.h.prebuilt - -OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \ - pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \ - pngwtran.o pngmem.o pngerror.o pngpread.o - -all: ansi2knr libpng.a pngtest - -pnglibconf.h: $(PNGLIBCONF_H_PREBUILT) - $(CP) $(PNGLIBCONF_H_PREBUILT) $@ - -# general rule to allow ansi2knr to work -.c.o: - ./ansi2knr $*.c T$*.c - $(CC) $(CPPFLAGS) $(CFLAGS) -c T$*.c - rm -f T$*.c $*.o - mv T$*.o $*.o - -ansi2knr: ansi2knr.c - $(CC) $(CPPFLAGS) $(CFLAGS) $(ANSI2KNRFLAGS) -o ansi2knr ansi2knr.c - -libpng.a: ansi2knr $(OBJS) - ar rc $@ $(OBJS) - $(RANLIB) $@ - -pngtest: pngtest.o libpng.a - $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) - -test: pngtest - ./pngtest - -install: libpng.a png.h pngconf.h pnglibconf.h - -@mkdir $(DESTDIR)$(INCPATH) - -@mkdir $(DESTDIR)$(INCPATH)/libpng - -@mkdir $(DESTDIR)$(LIBPATH) - -@rm -f $(DESTDIR)$(INCPATH)/png.h - -@rm -f $(DESTDIR)$(INCPATH)/pngconf.h - cp png.h $(DESTDIR)$(INCPATH)/libpng - cp pngconf.h $(DESTDIR)$(INCPATH)/libpng - cp pnglibconf.h $(DESTDIR)$(INCPATH)/libpng - chmod 644 $(DESTDIR)$(INCPATH)/libpng/png.h - chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngconf.h - chmod 644 $(DESTDIR)$(INCPATH)/libpng/pnglibconf.h - (cd $(DESTDIR)$(INCPATH); ln -f -s libpng/* .) - cp libpng.a $(DESTDIR)$(LIBPATH) - chmod 644 $(DESTDIR)$(LIBPATH)/libpng.a - -clean: - $(RM_F) *.o libpng.a pngtest pngout.png ansi2knr pnglibconf.h - -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO -writelock: - chmod a-w *.[ch35] $(DOCS) scripts/* - -# DO NOT DELETE THIS LINE -- make depend depends on it. - -png.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngerror.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngmem.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngset.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngget.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngpread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngtrans.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwrite.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - -pngtest.o: png.h pngconf.h pnglibconf.h diff --git a/source/libs/libpng/libpng-src/scripts/makefile.linux b/source/libs/libpng/libpng-src/scripts/makefile.linux index 556891252..32eb859b0 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.linux +++ b/source/libs/libpng/libpng-src/scripts/makefile.linux @@ -10,7 +10,7 @@ # Library name: LIBNAME = libpng16 PNGMAJ = 16 -RELEASE = 35 +RELEASE = 36 # Shared library names: LIBSO=$(LIBNAME).so @@ -50,8 +50,7 @@ WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \ # for pgcc version 2.95.1, -O3 is buggy; don't use it. CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5 -CFLAGS= -W -Wall -O3 -funroll-loops \ - $(ALIGN) # $(WARNMORE) -g -DPNG_DEBUG=5 +CFLAGS=-W -Wall -O3 -funroll-loops $(ALIGN) # $(WARNMORE) -g LDFLAGS=-L. -Wl,-rpath,. -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) -lpng16 -lz -lm LDFLAGS_A=-L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) libpng.a -lz -lm @@ -222,7 +221,7 @@ clean: $(LIBSO) $(LIBSOMAJ)* pngtest-static pngtesti \ libpng.pc pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.linux-opt b/source/libs/libpng/libpng-src/scripts/makefile.linux-opt index d4a5e3b4e..76f6d1afc 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.linux-opt +++ b/source/libs/libpng/libpng-src/scripts/makefile.linux-opt @@ -10,7 +10,7 @@ # Library name: LIBNAME = libpng16 PNGMAJ = 16 -RELEASE = 35 +RELEASE = 36 # Shared library names: LIBSO=$(LIBNAME).so @@ -232,7 +232,7 @@ clean: $(LIBSO) $(LIBSOMAJ)* pngtest-static pngtesti \ libpng.pc pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.mips b/source/libs/libpng/libpng-src/scripts/makefile.mips index 5633608c8..0357ae81c 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.mips +++ b/source/libs/libpng/libpng-src/scripts/makefile.mips @@ -78,7 +78,7 @@ install: libpng.a clean: rm -f *.o libpng.a pngtest pngout.png pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.msc b/source/libs/libpng/libpng-src/scripts/makefile.msc deleted file mode 100644 index 539d62e94..000000000 --- a/source/libs/libpng/libpng-src/scripts/makefile.msc +++ /dev/null @@ -1,100 +0,0 @@ -# makefile for libpng -# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc. -# Copyright (C) 2006, 2009, 2014 Glenn Randers-Pehrson -# -# This code is released under the libpng license. -# For conditions of distribution and use, see the disclaimer -# and license in png.h -# -# Assumes that zlib.lib, zconf.h, and zlib.h have been copied to ..\zlib - -# -------- Microsoft C 5.1 and later, does not use assembler code -------- -MODEL=L -CPPFLAGS=-I..\zlib -CFLAGS=-Oait -Gs -nologo -W3 -A$(MODEL) -#-Ox generates bad code with MSC 5.1 -CC=cl -LD=link -LDFLAGS=/e/st:0x1500/noe -CP=copy -O=.obj - -# Pre-built configuration -# See scripts\pnglibconf.mak for more options -PNGLIBCONF_H_PREBUILT = scripts\pnglibconf.h.prebuilt - -#uncomment next to put error messages in a file -ERRFILE= >> pngerrs - -# variables -OBJS1 = png$(O) pngset$(O) pngget$(O) pngrutil$(O) pngtrans$(O) pngwutil$(O) -OBJS2 = pngmem$(O) pngpread$(O) pngread$(O) pngerror$(O) pngwrite$(O) -OBJS3 = pngrtran$(O) pngwtran$(O) pngrio$(O) pngwio$(O) - -all: libpng.lib - -pnglibconf.h: $(PNGLIBCONF_H_PREBUILT) - $(CP) $(PNGLIBCONF_H_PREBUILT) $@ - -png$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngset$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngget$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngpread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngrtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngrutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngerror$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngmem$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngrio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngwio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngtrans$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngwrite$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngwtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngwutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -libpng.lib: $(OBJS1) $(OBJS2) $(OBJS3) - del libpng.lib - lib libpng $(OBJS1); - lib libpng $(OBJS2); - lib libpng $(OBJS3); - -pngtest$(O): png.h pngconf.h pnglibconf.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) - -pngtest.exe: pngtest.obj libpng.lib - $(LD) $(LDFLAGS) pngtest.obj,,,libpng.lib ..\zlib\zlib.lib ; - -test: pngtest.exe - pngtest - -# End of makefile for libpng - diff --git a/source/libs/libpng/libpng-src/scripts/makefile.msys b/source/libs/libpng/libpng-src/scripts/makefile.msys index 209ad4f0f..2af7a6aeb 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.msys +++ b/source/libs/libpng/libpng-src/scripts/makefile.msys @@ -18,7 +18,7 @@ exec_prefix=$(prefix) # Library name: LIBNAME = libpng16 PNGMAJ = 16 -RELEASE = 35 +RELEASE = 36 # Shared library names: LIBSO=$(LIBNAME).dll diff --git a/source/libs/libpng/libpng-src/scripts/makefile.ne12bsd b/source/libs/libpng/libpng-src/scripts/makefile.ne12bsd index 8a490352c..d0a6a3764 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.ne12bsd +++ b/source/libs/libpng/libpng-src/scripts/makefile.ne12bsd @@ -17,7 +17,7 @@ INCSDIR=${LOCALBASE}/include/libpng16 LIB= png16 SHLIB_MAJOR= 0 -SHLIB_MINOR= 1.6.35 +SHLIB_MINOR= 1.6.36 SRCS= png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \ pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \ pngwtran.c pngmem.c pngerror.c pngpread.c diff --git a/source/libs/libpng/libpng-src/scripts/makefile.netbsd b/source/libs/libpng/libpng-src/scripts/makefile.netbsd index b1e8e9579..589c1f8e5 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.netbsd +++ b/source/libs/libpng/libpng-src/scripts/makefile.netbsd @@ -17,7 +17,7 @@ INCSDIR=${LOCALBASE}/include LIB= png SHLIB_MAJOR= 16 -SHLIB_MINOR= 1.6.35 +SHLIB_MINOR= 1.6.36 SRCS= png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \ pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \ pngwtran.c pngmem.c pngerror.c pngpread.c diff --git a/source/libs/libpng/libpng-src/scripts/makefile.openbsd b/source/libs/libpng/libpng-src/scripts/makefile.openbsd index 5edac0f03..4057b2ee8 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.openbsd +++ b/source/libs/libpng/libpng-src/scripts/makefile.openbsd @@ -11,7 +11,7 @@ LIBDIR= ${PREFIX}/lib MANDIR= ${PREFIX}/man/cat SHLIB_MAJOR= 16 -SHLIB_MINOR= 1.6.35 +SHLIB_MINOR= 1.6.36 LIB= png SRCS= png.c pngerror.c pngget.c pngmem.c pngpread.c \ @@ -28,7 +28,7 @@ NOPROFILE= Yes CLEANFILES+= pngtest.o pngtest pnglibconf.h MAN= libpng.3 libpngpf.3 png.5 -DOCS= ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO \ +DOCS= ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO \ libpng-manual.txt # Pre-built configuration diff --git a/source/libs/libpng/libpng-src/scripts/makefile.sco b/source/libs/libpng/libpng-src/scripts/makefile.sco index 67d84aaac..01d7eaaaa 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.sco +++ b/source/libs/libpng/libpng-src/scripts/makefile.sco @@ -201,7 +201,7 @@ clean: $(LIBSO) $(LIBSOMAJ)* pngtest-static pngtesti \ pnglibconf.h libpng.pc -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.sggcc b/source/libs/libpng/libpng-src/scripts/makefile.sggcc index a0d051dbd..82efe7a22 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.sggcc +++ b/source/libs/libpng/libpng-src/scripts/makefile.sggcc @@ -211,7 +211,7 @@ clean: $(RM_F) libpng.a pngtest pngtesti pngout.png libpng.pc \ so_locations libpng-config $(LIBSO) $(LIBSOMAJ)* pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.sgi b/source/libs/libpng/libpng-src/scripts/makefile.sgi index 7df090222..5d9c23fa9 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.sgi +++ b/source/libs/libpng/libpng-src/scripts/makefile.sgi @@ -212,7 +212,7 @@ clean: $(LIBSO) $(LIBSOMAJ)* \ so_locations pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.so9 b/source/libs/libpng/libpng-src/scripts/makefile.so9 index ba9308c8a..93166f30e 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.so9 +++ b/source/libs/libpng/libpng-src/scripts/makefile.so9 @@ -222,7 +222,7 @@ clean: libpng-config $(LIBSO) $(LIBSOMAJ)* \ libpng.pc pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.solaris b/source/libs/libpng/libpng-src/scripts/makefile.solaris index 8a450d371..f6d7b5860 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.solaris +++ b/source/libs/libpng/libpng-src/scripts/makefile.solaris @@ -44,8 +44,7 @@ WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \ -Wmissing-declarations -Wtraditional -Wcast-align \ -Wstrict-prototypes -Wmissing-prototypes #-Wconversion CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5 -CFLAGS= -W -Wall -O \ - # $(WARNMORE) -g -DPNG_DEBUG=5 +CFLAGS=-W -Wall -O # $(WARNMORE) -g LDFLAGS=-L. -R. -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng16 -lz -lm INCPATH=$(prefix)/include @@ -219,7 +218,7 @@ clean: libpng-config $(LIBSO) $(LIBSOMAJ)* \ libpng.pc pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.solaris-x86 b/source/libs/libpng/libpng-src/scripts/makefile.solaris-x86 deleted file mode 100644 index 2ee3c14a5..000000000 --- a/source/libs/libpng/libpng-src/scripts/makefile.solaris-x86 +++ /dev/null @@ -1,243 +0,0 @@ -# makefile for libpng on Solaris 2.x with gcc -# Copyright (C) 2004, 2006-2008, 2010-2014 Glenn Randers-Pehrson -# Contributed by William L. Sebok, based on makefile.linux -# Copyright (C) 1998 Greg Roelofs -# Copyright (C) 1996, 1997 Andreas Dilger - -# This code is released under the libpng license. -# For conditions of distribution and use, see the disclaimer -# and license in png.h - -# Library name: -LIBNAME = libpng16 -PNGMAJ = 16 - -# Shared library names: -LIBSO=$(LIBNAME).so -LIBSOMAJ=$(LIBNAME).so.$(PNGMAJ) -LIBSOREL=$(LIBSOMAJ).$(RELEASE) -OLDSO=libpng.so - -# Utilities: -AR_RC=ar rc -CC=gcc -MKDIR_P=mkdir -p -LN_SF=ln -f -s -RANLIB=echo -CP=cp -RM_F=/bin/rm -f - -# Where make install puts libpng.a, libpng16.so*, and png.h -prefix=/usr/local -exec_prefix=$(prefix) - -# Where the zlib library and include files are located -# Changing these to ../zlib poses a security risk. If you want -# to have zlib in an adjacent directory, specify the full path instead of "..". -#ZLIBLIB=../zlib -#ZLIBINC=../zlib - -ZLIBLIB=/usr/local/lib -ZLIBINC=/usr/local/include - -WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \ - -Wmissing-declarations -Wtraditional -Wcast-align \ - -Wstrict-prototypes -Wmissing-prototypes #-Wconversion -CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5 -CFLAGS=-W -Wall -O # $(WARNMORE) -g -LDFLAGS=-L. -R. -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng16 -lz -lm - -INCPATH=$(prefix)/include -LIBPATH=$(exec_prefix)/lib -MANPATH=$(prefix)/man -BINPATH=$(exec_prefix)/bin - -# override DESTDIR= on the make install command line to easily support -# installing into a temporary location. Example: -# -# make install DESTDIR=/tmp/build/libpng -# -# If you're going to install into a temporary location -# via DESTDIR, $(DESTDIR)$(prefix) must already exist before -# you execute make install. -DESTDIR= - -DB=$(DESTDIR)$(BINPATH) -DI=$(DESTDIR)$(INCPATH) -DL=$(DESTDIR)$(LIBPATH) -DM=$(DESTDIR)$(MANPATH) - -# Pre-built configuration -# See scripts/pnglibconf.mak for more options -PNGLIBCONF_H_PREBUILT = scripts/pnglibconf.h.prebuilt - -OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \ - pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \ - pngwtran.o pngmem.o pngerror.o pngpread.o - -OBJSDLL = $(OBJS:.o=.pic.o) - -.SUFFIXES: .c .o .pic.o - -.c.o: - $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $< - -.c.pic.o: - $(CC) -c $(CPPFLAGS) $(CFLAGS) -fPIC -o $@ $*.c - -all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config - -pnglibconf.h: $(PNGLIBCONF_H_PREBUILT) - $(CP) $(PNGLIBCONF_H_PREBUILT) $@ - -libpng.a: $(OBJS) - $(AR_RC) $@ $(OBJS) - $(RANLIB) $@ - -libpng.pc: - cat scripts/libpng.pc.in | sed -e s!@prefix@!$(prefix)! \ - -e s!@exec_prefix@!$(exec_prefix)! \ - -e s!@libdir@!$(LIBPATH)! \ - -e s!@includedir@!$(INCPATH)! \ - -e s!-lpng16!-lpng16\ -lz\ -lm! > libpng.pc - -libpng-config: - ( cat scripts/libpng-config-head.in; \ - echo prefix=\"$(prefix)\"; \ - echo I_opts=\"-I$(INCPATH)/$(LIBNAME)\"; \ - echo cppflags=\""; \ - echo L_opts=\"-L$(LIBPATH)\"; \ - echo R_opts=\"-R$(LIBPATH)\"; \ - echo libs=\"-lpng16 -lz -lm\"; \ - cat scripts/libpng-config-body.in ) > libpng-config - chmod +x libpng-config - -$(LIBSO): $(LIBSOMAJ) - $(LN_SF) $(LIBSOMAJ) $(LIBSO) - -$(LIBSOMAJ): $(OBJSDLL) - @case "`type ld`" in *ucb*) \ - echo; \ - echo '## WARNING:'; \ - echo '## The commands "CC" and "LD" must NOT refer to /usr/ucb/cc'; \ - echo '## and /usr/ucb/ld. If they do, you need to adjust your PATH'; \ - echo '## environment variable to put /usr/ccs/bin ahead of /usr/ucb.'; \ - echo '## The environment variable LD_LIBRARY_PATH should not be set'; \ - echo '## at all. If it is, things are likely to break because of'; \ - echo '## the libucb dependency that is created.'; \ - echo; \ - ;; \ - esac - $(LD) -G -h $(LIBSOMAJ) \ - -o $(LIBSOMAJ) $(OBJSDLL) - -pngtest: pngtest.o $(LIBSO) - $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) - -test: pngtest - ./pngtest - -install-headers: png.h pngconf.h pnglibconf.h - -@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi - -@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi - cp png.h pngconf.h pnglibconf.h $(DI)/$(LIBNAME) - chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h $(DI)/$(LIBNAME)/pnglibconf.h - -@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pnglibconf.h - -@$(RM_F) $(DI)/libpng - (cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .) - -install-static: install-headers libpng.a - -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi - cp libpng.a $(DL)/$(LIBNAME).a - chmod 644 $(DL)/$(LIBNAME).a - -@$(RM_F) $(DL)/libpng.a - (cd $(DL); $(LN_SF) $(LIBNAME).a libpng.a) - -install-shared: install-headers $(LIBSOMAJ) libpng.pc - -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi - -@$(RM_F) $(DL)/$(LIBSO) - -@$(RM_F) $(DL)/$(LIBSOREL) - -@$(RM_F) $(DL)/$(OLDSO) - cp $(LIBSOMAJ) $(DL)/$(LIBSOREL) - chmod 755 $(DL)/$(LIBSOREL) - (cd $(DL); \ - $(LN_SF) $(LIBSOREL) $(LIBSO); \ - $(LN_SF) $(LIBSO) $(OLDSO)) - -@if [ ! -d $(DL)/pkgconfig ]; then $(MKDIR_P) $(DL)/pkgconfig; fi - -@$(RM_F) $(DL)/pkgconfig/$(LIBNAME).pc - -@$(RM_F) $(DL)/pkgconfig/libpng.pc - cp libpng.pc $(DL)/pkgconfig/$(LIBNAME).pc - chmod 644 $(DL)/pkgconfig/$(LIBNAME).pc - (cd $(DL)/pkgconfig; $(LN_SF) $(LIBNAME).pc libpng.pc) - -install-man: libpng.3 libpngpf.3 png.5 - -@if [ ! -d $(DM) ]; then $(MKDIR_P) $(DM); fi - -@if [ ! -d $(DM)/man3 ]; then $(MKDIR_P) $(DM)/man3; fi - -@$(RM_F) $(DM)/man3/libpng.3 - -@$(RM_F) $(DM)/man3/libpngpf.3 - cp libpng.3 $(DM)/man3 - cp libpngpf.3 $(DM)/man3 - -@if [ ! -d $(DM)/man5 ]; then $(MKDIR_P) $(DM)/man5; fi - -@$(RM_F) $(DM)/man5/png.5 - cp png.5 $(DM)/man5 - -install-config: libpng-config - -@if [ ! -d $(DB) ]; then $(MKDIR_P) $(DB); fi - -@$(RM_F) $(DB)/libpng-config - -@$(RM_F) $(DB)/$(LIBNAME)-config - cp libpng-config $(DB)/$(LIBNAME)-config - chmod 755 $(DB)/$(LIBNAME)-config - (cd $(DB); $(LN_SF) $(LIBNAME)-config libpng-config) - -install: install-static install-shared install-man install-config - -# If you installed in $(DESTDIR), test-installed won't work until you -# move the library to its final location. Use test-dd to test it -# before then. - -test-dd: - echo - echo Testing installed dynamic shared library in $(DL). - $(CC) -I$(DI) $(CPPFLAGS) \ - `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \ - -o pngtestd `$(BINPATH)/$(LIBNAME)-config --ldflags` \ - -L$(DL) -L$(ZLIBLIB) -R$(ZLIBLIB) -R$(DL) - ./pngtestd pngtest.png - -test-installed: - echo - echo Testing installed dynamic shared library. - $(CC) $(CPPFLAGS) \ - `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \ - -o pngtesti `$(BINPATH)/$(LIBNAME)-config --ldflags` \ - -L$(ZLIBLIB) -R$(ZLIBLIB) - ./pngtesti pngtest.png - -clean: - $(RM_F) *.o libpng.a pngtest pngtesti pngout.png \ - libpng-config $(LIBSO) $(LIBSOMAJ)* \ - libpng.pc pnglibconf.h - -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO -writelock: - chmod a-w *.[ch35] $(DOCS) scripts/* - -# DO NOT DELETE THIS LINE -- make depend depends on it. - -png.o png.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngerror.o pngerror.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrio.o pngrio.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwio.o pngwio.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngmem.o pngmem.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngset.o pngset.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngget.o pngget.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngread.o pngread.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrtran.o pngrtran.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngrutil.o pngrutil.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngtrans.o pngtrans.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwrite.o pngwrite.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwtran.o pngwtran.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngwutil.o pngwutil.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngpread.o pngpread.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - -pngtest.o: png.h pngconf.h pnglibconf.h diff --git a/source/libs/libpng/libpng-src/scripts/makefile.std b/source/libs/libpng/libpng-src/scripts/makefile.std index ee6a86835..2f4871df9 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.std +++ b/source/libs/libpng/libpng-src/scripts/makefile.std @@ -109,7 +109,7 @@ clean: $(RM_F) *.o libpng.a pngtest pngout.png pnglibconf.h pnglibconf.c \ pnglibconf.out -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* @@ -122,6 +122,7 @@ pngwio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug. pngmem.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngset.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngget.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h +pngpread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngrtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngrutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h @@ -129,6 +130,5 @@ pngtrans.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebu pngwrite.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngwtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngwutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h -pngpread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngtest.o: png.h pngconf.h pnglibconf.h diff --git a/source/libs/libpng/libpng-src/scripts/makefile.sunos b/source/libs/libpng/libpng-src/scripts/makefile.sunos index efe308c47..9a0e28e72 100644 --- a/source/libs/libpng/libpng-src/scripts/makefile.sunos +++ b/source/libs/libpng/libpng-src/scripts/makefile.sunos @@ -90,7 +90,7 @@ install: libpng.a clean: $(RM_F) *.o libpng.a pngtest pngout.png pnglibconf.h -DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO writelock: chmod a-w *.[ch35] $(DOCS) scripts/* diff --git a/source/libs/libpng/libpng-src/scripts/makefile.tc3 b/source/libs/libpng/libpng-src/scripts/makefile.tc3 deleted file mode 100644 index 1d015026c..000000000 --- a/source/libs/libpng/libpng-src/scripts/makefile.tc3 +++ /dev/null @@ -1,100 +0,0 @@ -# Makefile for libpng -# TurboC/C++ (Note: All modules are compiled in C mode) - -# To use, do "make -fmakefile.tc3" - -# ----- Turbo C++ 3.0 ----- - -MODEL=l -CPPFLAGS=-I..\zlib -CFLAGS=-O2 -Z -m$(MODEL) -CC=tcc -LD=tcc -LIB=tlib -LDFLAGS=-m$(MODEL) -L..\zlib -CP=copy - -# Pre-built configuration -# See scripts\pnglibconf.mak for more options -!ifndef PNGLIBCONF_H_PREBUILT -PNGLIBCONF_H_PREBUILT = scripts\pnglibconf.h.prebuilt -!endif - -O=.obj -E=.exe - -# variables -OBJS1 = png$(O) pngset$(O) pngget$(O) pngrutil$(O) pngtrans$(O) pngwutil$(O) -OBJS2 = pngmem$(O) pngpread$(O) pngread$(O) pngerror$(O) pngwrite$(O) -OBJS3 = pngrtran$(O) pngwtran$(O) pngrio$(O) pngwio$(O) -OBJSL1 = +png$(O) +pngset$(O) +pngget$(O) +pngrutil$(O) +pngtrans$(O) -OBJSL2 = +pngwutil$(O) +pngmem$(O) +pngpread$(O) +pngread$(O) +pngerror$(O) -OBJSL3 = +pngwrite$(O) +pngrtran$(O) +pngwtran$(O) +pngrio$(O) +pngwio$(O) - -all: libpng$(MODEL).lib pngtest$(E) - -pnglibconf.h: $(PNGLIBCONF_H_PREBUILT) - $(CP) $(PNGLIBCONF_H_PREBUILT) $@ - -pngtest: pngtest$(E) - -test: pngtest$(E) - pngtest$(E) - -png$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngset$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngget$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngpread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngrtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngrutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngerror$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngmem$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngrio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngwio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngtest$(O): png.h pngconf.h pnglibconf.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngtrans$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngwrite$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngwtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -pngwutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c - -libpng$(MODEL).lib: $(OBJS1) $(OBJS2) $(OBJS3) - $(LIB) libpng$(MODEL) +$(OBJSL1) - $(LIB) libpng$(MODEL) +$(OBJSL2) - $(LIB) libpng$(MODEL) +$(OBJSL3) - -pngtest$(E): pngtest$(O) libpng$(MODEL).lib - $(LD) $(LDFLAGS) pngtest.obj libpng$(MODEL).lib zlib_$(MODEL).lib - -# End of makefile for libpng diff --git a/source/libs/libpng/libpng-src/scripts/pnglibconf.dfa b/source/libs/libpng/libpng-src/scripts/pnglibconf.dfa index b298a72f3..15bd08e90 100644 --- a/source/libs/libpng/libpng-src/scripts/pnglibconf.dfa +++ b/source/libs/libpng/libpng-src/scripts/pnglibconf.dfa @@ -8,7 +8,8 @@ com pnglibconf.h - library build configuration com version com -com Copyright (c) 1998-2017 Glenn Randers-Pehrson +com Copyright (c) 2018 Cosmin Truta +com Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson com com This code is released under the libpng license. com For conditions of distribution and use, see the disclaimer diff --git a/source/libs/libpng/libpng-src/scripts/pnglibconf.h.prebuilt b/source/libs/libpng/libpng-src/scripts/pnglibconf.h.prebuilt index 00acecc69..00340c678 100644 --- a/source/libs/libpng/libpng-src/scripts/pnglibconf.h.prebuilt +++ b/source/libs/libpng/libpng-src/scripts/pnglibconf.h.prebuilt @@ -1,10 +1,9 @@ -/* libpng 1.6.35 STANDARD API DEFINITION */ - /* pnglibconf.h - library build configuration */ -/* Libpng version 1.6.35 - July 15, 2018 */ +/* libpng version 1.6.36 */ -/* Copyright (c) 1998-2018 Glenn Randers-Pehrson */ +/* Copyright (c) 2018 Cosmin Truta */ +/* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson */ /* This code is released under the libpng license. */ /* For conditions of distribution and use, see the disclaimer */ @@ -20,8 +19,6 @@ #define PNG_ALIGNED_MEMORY_SUPPORTED /*#undef PNG_ARM_NEON_API_SUPPORTED*/ /*#undef PNG_ARM_NEON_CHECK_SUPPORTED*/ -/*#undef PNG_POWERPC_VSX_API_SUPPORTED*/ -/*#undef PNG_POWERPC_VSX_CHECK_SUPPORTED*/ #define PNG_BENIGN_ERRORS_SUPPORTED #define PNG_BENIGN_READ_ERRORS_SUPPORTED /*#undef PNG_BENIGN_WRITE_ERRORS_SUPPORTED*/ @@ -46,6 +43,8 @@ #define PNG_IO_STATE_SUPPORTED #define PNG_MNG_FEATURES_SUPPORTED #define PNG_POINTER_INDEXING_SUPPORTED +/*#undef PNG_POWERPC_VSX_API_SUPPORTED*/ +/*#undef PNG_POWERPC_VSX_CHECK_SUPPORTED*/ #define PNG_PROGRESSIVE_READ_SUPPORTED #define PNG_READ_16BIT_SUPPORTED #define PNG_READ_ALPHA_MODE_SUPPORTED diff --git a/source/libs/libpng/libpng-src/scripts/symbols.def b/source/libs/libpng/libpng-src/scripts/symbols.def index a8f7ce287..82494bbf9 100644 --- a/source/libs/libpng/libpng-src/scripts/symbols.def +++ b/source/libs/libpng/libpng-src/scripts/symbols.def @@ -1,4 +1,3 @@ -;Version 1.6.35 ;-------------------------------------------------------------- ; LIBPNG symbol list as a Win32 DEF file ; Contains all the symbols that can be exported from libpng diff --git a/source/libs/libpng/version.ac b/source/libs/libpng/version.ac index 794227d04..1d6a2edb8 100644 --- a/source/libs/libpng/version.ac +++ b/source/libs/libpng/version.ac @@ -8,4 +8,4 @@ dnl dnl -------------------------------------------------------- dnl dnl m4-include this file to define the current libpng version -m4_define([libpng_version], [1.6.35]) +m4_define([libpng_version], [1.6.36]) diff --git a/source/libs/lua52/ChangeLog b/source/libs/lua52/ChangeLog deleted file mode 100644 index b8ad27b00..000000000 --- a/source/libs/lua52/ChangeLog +++ /dev/null @@ -1,75 +0,0 @@ -2018-09-09 Karl Berry <karl@tug.org> - - * luaerror.test: LC_ALL=LANGUAGE=C. - -2016-02-18 Akira Kakuto <kakuto@fuk.kindai.ac.jp> - - * Makefile.am, configure.ac: New convention. - -2015-07-06 Peter Breitenlohner <peb@mppmu.mpg.de> - - * Makefile.am: Better dependencies for 'make check'. - -2015-03-11 Peter Breitenlohner <peb@mppmu.mpg.de> - - Import lua-5.2.4. - * version.ac: Adjust. - -2015-02-16 Peter Breitenlohner <peb@mppmu.mpg.de> - - * Makefile.am: Use the fragment ../../am/dist_hook.am. - -2014-10-22 Peter Breitenlohner <peb@mppmu.mpg.de> - - * Makefile.am, configure.ac: Build lua52 as (possibly shared) - Libtool library, install headers, library, and .pc file. - * luaerror.test: Adapted. - -2014-06-02 Peter Breitenlohner <peb@mppmu.mpg.de> - - * Makefile.am (AM_CPPFLAGS): Drop LUAI_HASHLIMIT. - -2014-03-21 Peter Breitenlohner <peb@mppmu.mpg.de> - - * configure.ac: Add -DHAVE_UNISTD_H to LUA52_DEFINES because - config.h is not used. - -2014-03-15 Peter Breitenlohner <peb@mppmu.mpg.de> - - * Makefile.am (AM_CPPFLAGS): Define LUAI_HASHLIMIT=6 for LuaTeX. - -2014-03-03 Peter Breitenlohner <peb@mppmu.mpg.de> - - * luaerror.test (new): Shell script to test error handling. - * error.exp (new): Expected test output. - * Makefile.am: Add the new files. - * configure.ac: The test program requires sqrt(). - -2014-02-11 Peter Breitenlohner <peb@mppmu.mpg.de> - - * lua52.test (new): Shell script for a basic test. - * luatest.c (new): Source code for test program. - * Makefile.am: Add the new files. - -2013-12-07 Peter Breitenlohner <peb@mppmu.mpg.de> - - Import lua-5.2.3. - * version.ac: Adjust. - -2013-07-06 Peter Breitenlohner <peb@mppmu.mpg.de> - - * Makefile.am: Use ../../am/rebuild.am. - -2013-07-05 Peter Breitenlohner <peb@mppmu.mpg.de> - - * include/Makefile.am: Moved Makefile fragments to ../../am/. - -2012-06-25 Peter Breitenlohner <peb@mppmu.mpg.de> - - Import lua-5.2.2. - * version.ac: Adjust. - -2012-06-18 Peter Breitenlohner <peb@mppmu.mpg.de> - - Import lua-5.2.1/ from http://www.lua.org/ftp/lua-5.2.1.tar.gz. - diff --git a/source/libs/lua52/Makefile.am b/source/libs/lua52/Makefile.am deleted file mode 100644 index 808681eeb..000000000 --- a/source/libs/lua52/Makefile.am +++ /dev/null @@ -1,106 +0,0 @@ -## $Id: Makefile.am 43567 2017-03-21 17:43:10Z karl $ -## Proxy Makefile.am to build Lua52 for TeX Live. -## -## Copyright 2017 Karl Berry <tex-live@tug.org> -## Copyright 2013-2015 Peter Breitenlohner <tex-live@tug.org> -## -## This file is free software; the copyright holder -## gives unlimited permission to copy and/or distribute it, -## with or without modifications, as long as this notice is preserved. -## -## We want to re-distribute the whole Lua52 source tree. -## -EXTRA_DIST = $(LUA52_TREE) - -## Changes applied to the original source tree -## -EXTRA_DIST += TLpatches - -# Files not to be distributed -include $(srcdir)/../../am/dist_hook.am -NEVER_NAMES += $(NEVER_NAMES_SUB) $(NEVER_NAMES_LT) - -SUBDIRS = . include - -AM_CPPFLAGS = -I$(top_srcdir)/$(LUA52_TREE)/src $(LUA52_DEFINES) -AM_CFLAGS = $(WARNING_CFLAGS) - -lib_LTLIBRARIES = libtexlua52.la - -libtexlua52_la_LDFLAGS = -bindir @bindir@ -no-undefined -version-info $(LUA52_LT_VERSINFO) - -nodist_libtexlua52_la_SOURCES = \ - @LUA52_TREE@/src/lapi.c \ - @LUA52_TREE@/src/lauxlib.c \ - @LUA52_TREE@/src/lbaselib.c \ - @LUA52_TREE@/src/lbitlib.c \ - @LUA52_TREE@/src/lcode.c \ - @LUA52_TREE@/src/lcorolib.c \ - @LUA52_TREE@/src/lctype.c \ - @LUA52_TREE@/src/ldblib.c \ - @LUA52_TREE@/src/ldebug.c \ - @LUA52_TREE@/src/ldo.c \ - @LUA52_TREE@/src/ldump.c \ - @LUA52_TREE@/src/lfunc.c \ - @LUA52_TREE@/src/lgc.c \ - @LUA52_TREE@/src/linit.c \ - @LUA52_TREE@/src/liolib.c \ - @LUA52_TREE@/src/llex.c \ - @LUA52_TREE@/src/lmathlib.c \ - @LUA52_TREE@/src/lmem.c \ - @LUA52_TREE@/src/loadlib.c \ - @LUA52_TREE@/src/lobject.c \ - @LUA52_TREE@/src/lopcodes.c \ - @LUA52_TREE@/src/loslib.c \ - @LUA52_TREE@/src/lparser.c \ - @LUA52_TREE@/src/lstate.c \ - @LUA52_TREE@/src/lstring.c \ - @LUA52_TREE@/src/lstrlib.c \ - @LUA52_TREE@/src/ltable.c \ - @LUA52_TREE@/src/ltablib.c \ - @LUA52_TREE@/src/ltm.c \ - @LUA52_TREE@/src/luaconf.h \ - @LUA52_TREE@/src/lundump.c \ - @LUA52_TREE@/src/lvm.c \ - @LUA52_TREE@/src/lzio.c - -lua52includedir = ${includedir}/texlua52 - -lua52include_HEADERS = \ - $(LUA52_TREE)/src/lauxlib.h \ - $(LUA52_TREE)/src/luaconf.h \ - $(LUA52_TREE)/src/lua.h \ - $(LUA52_TREE)/src/lua.hpp \ - $(LUA52_TREE)/src/lualib.h - -pkgconfigdir = ${libdir}/pkgconfig - -pkgconfig_DATA = texlua52.pc - -if build -check_PROGRAMS = luatest luatry -dist_check_SCRIPTS = lua52.test luaerror.test -TESTS = lua52.test luaerror.test -endif build -lua52.log: luatest$(EXEEXT) -luaerror.log: luatry$(EXEEXT) - -luatest_SOURCES = luatest.c - -luatest_CPPFLAGS = -Iinclude - -nodist_luatry_SOURCES = @LUA52_TREE@/src/lua.c - -luatry_CPPFLAGS = -Iinclude - -LDADD = libtexlua52.la - -EXTRA_DIST += error.exp -CLEANFILES = error.out error.tmp - -# Rebuild -rebuild_prereq = -rebuild_target = all - -include $(srcdir)/../../am/rebuild.am - diff --git a/source/libs/lua52/Makefile.in b/source/libs/lua52/Makefile.in deleted file mode 100644 index 37e8ded80..000000000 --- a/source/libs/lua52/Makefile.in +++ /dev/null @@ -1,1763 +0,0 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2018 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - - - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -@build_TRUE@check_PROGRAMS = luatest$(EXEEXT) luatry$(EXEEXT) -subdir = . -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/../../m4/kpse-common.m4 \ - $(top_srcdir)/../../m4/kpse-dll-name.m4 \ - $(top_srcdir)/../../m4/kpse-largefile.m4 \ - $(top_srcdir)/../../m4/kpse-lib-version.m4 \ - $(top_srcdir)/../../m4/kpse-lua52-flags.m4 \ - $(top_srcdir)/../../m4/kpse-warnings.m4 \ - $(top_srcdir)/../../m4/kpse-win32.m4 \ - $(top_srcdir)/../../m4/libtool.m4 \ - $(top_srcdir)/../../m4/ltoptions.m4 \ - $(top_srcdir)/../../m4/ltsugar.m4 \ - $(top_srcdir)/../../m4/ltversion.m4 \ - $(top_srcdir)/../../m4/lt~obsolete.m4 $(top_srcdir)/version.ac \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ - $(am__configure_deps) $(am__dist_check_SCRIPTS_DIST) \ - $(lua52include_HEADERS) $(am__DIST_COMMON) -am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ - configure.lineno config.status.lineno -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = texlua52.pc -CONFIG_CLEAN_VPATH_FILES = -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" \ - "$(DESTDIR)$(lua52includedir)" -LTLIBRARIES = $(lib_LTLIBRARIES) -libtexlua52_la_LIBADD = -am__dirstamp = $(am__leading_dot)dirstamp -nodist_libtexlua52_la_OBJECTS = @LUA52_TREE@/src/lapi.lo \ - @LUA52_TREE@/src/lauxlib.lo @LUA52_TREE@/src/lbaselib.lo \ - @LUA52_TREE@/src/lbitlib.lo @LUA52_TREE@/src/lcode.lo \ - @LUA52_TREE@/src/lcorolib.lo @LUA52_TREE@/src/lctype.lo \ - @LUA52_TREE@/src/ldblib.lo @LUA52_TREE@/src/ldebug.lo \ - @LUA52_TREE@/src/ldo.lo @LUA52_TREE@/src/ldump.lo \ - @LUA52_TREE@/src/lfunc.lo @LUA52_TREE@/src/lgc.lo \ - @LUA52_TREE@/src/linit.lo @LUA52_TREE@/src/liolib.lo \ - @LUA52_TREE@/src/llex.lo @LUA52_TREE@/src/lmathlib.lo \ - @LUA52_TREE@/src/lmem.lo @LUA52_TREE@/src/loadlib.lo \ - @LUA52_TREE@/src/lobject.lo @LUA52_TREE@/src/lopcodes.lo \ - @LUA52_TREE@/src/loslib.lo @LUA52_TREE@/src/lparser.lo \ - @LUA52_TREE@/src/lstate.lo @LUA52_TREE@/src/lstring.lo \ - @LUA52_TREE@/src/lstrlib.lo @LUA52_TREE@/src/ltable.lo \ - @LUA52_TREE@/src/ltablib.lo @LUA52_TREE@/src/ltm.lo \ - @LUA52_TREE@/src/lundump.lo @LUA52_TREE@/src/lvm.lo \ - @LUA52_TREE@/src/lzio.lo -libtexlua52_la_OBJECTS = $(nodist_libtexlua52_la_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -libtexlua52_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(AM_CFLAGS) $(CFLAGS) $(libtexlua52_la_LDFLAGS) $(LDFLAGS) -o \ - $@ -am_luatest_OBJECTS = luatest-luatest.$(OBJEXT) -luatest_OBJECTS = $(am_luatest_OBJECTS) -luatest_LDADD = $(LDADD) -luatest_DEPENDENCIES = libtexlua52.la -nodist_luatry_OBJECTS = @LUA52_TREE@/src/luatry-lua.$(OBJEXT) -luatry_OBJECTS = $(nodist_luatry_OBJECTS) -luatry_LDADD = $(LDADD) -luatry_DEPENDENCIES = libtexlua52.la -am__dist_check_SCRIPTS_DIST = lua52.test luaerror.test -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -depcomp = $(SHELL) $(top_srcdir)/../../build-aux/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/luatest-luatest.Po \ - @LUA52_TREE@/src/$(DEPDIR)/lapi.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lauxlib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lbaselib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lbitlib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lcode.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lcorolib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lctype.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/ldblib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/ldebug.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/ldo.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/ldump.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lfunc.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lgc.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/linit.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/liolib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/llex.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lmathlib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lmem.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/loadlib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lobject.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lopcodes.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/loslib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lparser.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lstate.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lstring.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lstrlib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/ltable.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/ltablib.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/ltm.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Po \ - @LUA52_TREE@/src/$(DEPDIR)/lundump.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lvm.Plo \ - @LUA52_TREE@/src/$(DEPDIR)/lzio.Plo -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(nodist_libtexlua52_la_SOURCES) $(luatest_SOURCES) \ - $(nodist_luatry_SOURCES) -DIST_SOURCES = $(luatest_SOURCES) -RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ - ctags-recursive dvi-recursive html-recursive info-recursive \ - install-data-recursive install-dvi-recursive \ - install-exec-recursive install-html-recursive \ - install-info-recursive install-pdf-recursive \ - install-ps-recursive install-recursive installcheck-recursive \ - installdirs-recursive pdf-recursive ps-recursive \ - tags-recursive uninstall-recursive -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -DATA = $(pkgconfig_DATA) -HEADERS = $(lua52include_HEADERS) -RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive -am__recursive_targets = \ - $(RECURSIVE_TARGETS) \ - $(RECURSIVE_CLEAN_TARGETS) \ - $(am__extra_recursive_targets) -AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - cscope check recheck distdir distdir-am dist dist-all \ - distcheck -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ - $(LISP)config.h.in -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags -CSCOPE = cscope -am__tty_colors_dummy = \ - mgn= red= grn= lgn= blu= brg= std=; \ - am__color_tests=no -am__tty_colors = { \ - $(am__tty_colors_dummy); \ - if test "X$(AM_COLOR_TESTS)" = Xno; then \ - am__color_tests=no; \ - elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ - am__color_tests=yes; \ - elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ - am__color_tests=yes; \ - fi; \ - if test $$am__color_tests = yes; then \ - red='[0;31m'; \ - grn='[0;32m'; \ - lgn='[1;32m'; \ - blu='[1;34m'; \ - mgn='[0;35m'; \ - brg='[1m'; \ - std='[m'; \ - fi; \ -} -am__recheck_rx = ^[ ]*:recheck:[ ]* -am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* -am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* -# A command that, given a newline-separated list of test names on the -# standard input, print the name of the tests that are to be re-run -# upon "make recheck". -am__list_recheck_tests = $(AWK) '{ \ - recheck = 1; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - { \ - if ((getline line2 < ($$0 ".log")) < 0) \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ - { \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ - { \ - break; \ - } \ - }; \ - if (recheck) \ - print $$0; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# A command that, given a newline-separated list of test names on the -# standard input, create the global log from their .trs and .log files. -am__create_global_log = $(AWK) ' \ -function fatal(msg) \ -{ \ - print "fatal: making $@: " msg | "cat >&2"; \ - exit 1; \ -} \ -function rst_section(header) \ -{ \ - print header; \ - len = length(header); \ - for (i = 1; i <= len; i = i + 1) \ - printf "="; \ - printf "\n\n"; \ -} \ -{ \ - copy_in_global_log = 1; \ - global_test_result = "RUN"; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".trs"); \ - if (line ~ /$(am__global_test_result_rx)/) \ - { \ - sub("$(am__global_test_result_rx)", "", line); \ - sub("[ ]*$$", "", line); \ - global_test_result = line; \ - } \ - else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ - copy_in_global_log = 0; \ - }; \ - if (copy_in_global_log) \ - { \ - rst_section(global_test_result ": " $$0); \ - while ((rc = (getline line < ($$0 ".log"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".log"); \ - print line; \ - }; \ - printf "\n"; \ - }; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# Restructured Text title. -am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } -# Solaris 10 'make', and several other traditional 'make' implementations, -# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it -# by disabling -e (using the XSI extension "set +e") if it's set. -am__sh_e_setup = case $$- in *e*) set +e;; esac -# Default flags passed to test drivers. -am__common_driver_flags = \ - --color-tests "$$am__color_tests" \ - --enable-hard-errors "$$am__enable_hard_errors" \ - --expect-failure "$$am__expect_failure" -# To be inserted before the command running the test. Creates the -# directory for the log if needed. Stores in $dir the directory -# containing $f, in $tst the test, in $log the log. Executes the -# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and -# passes TESTS_ENVIRONMENT. Set up options for the wrapper that -# will run the test scripts (or their associated LOG_COMPILER, if -# thy have one). -am__check_pre = \ -$(am__sh_e_setup); \ -$(am__vpath_adj_setup) $(am__vpath_adj) \ -$(am__tty_colors); \ -srcdir=$(srcdir); export srcdir; \ -case "$@" in \ - */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ - *) am__odir=.;; \ -esac; \ -test "x$$am__odir" = x"." || test -d "$$am__odir" \ - || $(MKDIR_P) "$$am__odir" || exit $$?; \ -if test -f "./$$f"; then dir=./; \ -elif test -f "$$f"; then dir=; \ -else dir="$(srcdir)/"; fi; \ -tst=$$dir$$f; log='$@'; \ -if test -n '$(DISABLE_HARD_ERRORS)'; then \ - am__enable_hard_errors=no; \ -else \ - am__enable_hard_errors=yes; \ -fi; \ -case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ - am__expect_failure=yes;; \ - *) \ - am__expect_failure=no;; \ -esac; \ -$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) -# A shell command to get the names of the tests scripts with any registered -# extension removed (i.e., equivalently, the names of the test logs, with -# the '.log' extension removed). The result is saved in the shell variable -# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, -# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", -# since that might cause problem with VPATH rewrites for suffix-less tests. -# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. -am__set_TESTS_bases = \ - bases='$(TEST_LOGS)'; \ - bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ - bases=`echo $$bases` -RECHECK_LOGS = $(TEST_LOGS) -TEST_SUITE_LOG = test-suite.log -TEST_EXTENSIONS = @EXEEXT@ .test -am__test_logs1 = $(TESTS:=.log) -am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) -TEST_LOGS = $(am__test_logs2:.test.log=.log) -TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/../../build-aux/test-driver -TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ - $(TEST_LOG_FLAGS) -am__set_b = \ - case '$@' in \ - */*) \ - case '$*' in \ - */*) b='$*';; \ - *) b=`echo '$@' | sed 's/\.log$$//'`; \ - esac;; \ - *) \ - b='$*';; \ - esac -DIST_SUBDIRS = $(SUBDIRS) -am__DIST_COMMON = $(srcdir)/../../am/dist_hook.am \ - $(srcdir)/../../am/rebuild.am $(srcdir)/Makefile.in \ - $(srcdir)/config.h.in $(srcdir)/texlua52.pc.in \ - $(top_srcdir)/../../build-aux/compile \ - $(top_srcdir)/../../build-aux/config.guess \ - $(top_srcdir)/../../build-aux/config.sub \ - $(top_srcdir)/../../build-aux/depcomp \ - $(top_srcdir)/../../build-aux/install-sh \ - $(top_srcdir)/../../build-aux/ltmain.sh \ - $(top_srcdir)/../../build-aux/missing \ - $(top_srcdir)/../../build-aux/test-driver \ - ../../build-aux/ar-lib ../../build-aux/compile \ - ../../build-aux/config.guess ../../build-aux/config.sub \ - ../../build-aux/depcomp ../../build-aux/install-sh \ - ../../build-aux/ltmain.sh ../../build-aux/missing \ - ../../build-aux/texinfo.tex ../../build-aux/ylwrap ChangeLog -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -distdir = $(PACKAGE)-$(VERSION) -top_distdir = $(distdir) -am__remove_distdir = \ - if test -d "$(distdir)"; then \ - find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ - && rm -rf "$(distdir)" \ - || { sleep 5 && rm -rf "$(distdir)"; }; \ - else :; fi -am__post_remove_distdir = $(am__remove_distdir) -am__relativize = \ - dir0=`pwd`; \ - sed_first='s,^\([^/]*\)/.*$$,\1,'; \ - sed_rest='s,^[^/]*/*,,'; \ - sed_last='s,^.*/\([^/]*\)$$,\1,'; \ - sed_butlast='s,/*[^/]*$$,,'; \ - while test -n "$$dir1"; do \ - first=`echo "$$dir1" | sed -e "$$sed_first"`; \ - if test "$$first" != "."; then \ - if test "$$first" = ".."; then \ - dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ - dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ - else \ - first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ - if test "$$first2" = "$$first"; then \ - dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ - else \ - dir2="../$$dir2"; \ - fi; \ - dir0="$$dir0"/"$$first"; \ - fi; \ - fi; \ - dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ - done; \ - reldir="$$dir2" -DIST_ARCHIVES = $(distdir).tar.gz -GZIP_ENV = --best -DIST_TARGETS = dist-gzip -distuninstallcheck_listfiles = find . -type f -print -am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ - | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' -distcleancheck_listfiles = find . -type f -print -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -AS = @AS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ -LUA52VERSION = @LUA52VERSION@ -LUA52_DEFINES = @LUA52_DEFINES@ -LUA52_LT_VERSINFO = @LUA52_LT_VERSINFO@ -LUA52_TREE = @LUA52_TREE@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MKDIR_P = @MKDIR_P@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -RANLIB = @RANLIB@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -VERSION = @VERSION@ -WARNING_CFLAGS = @WARNING_CFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -EXTRA_DIST = $(LUA52_TREE) TLpatches error.exp -NEVER_DIST = `find . $(NEVER_NAMES)` - -# Files not to be distributed -NEVER_NAMES = -name .svn $(NEVER_NAMES_SUB) $(NEVER_NAMES_LT) -NEVER_NAMES_SUB = -o -name .deps -o -name .dirstamp -o -name '*.$(OBJEXT)' -NEVER_NAMES_LT = -o -name .libs -o -name '*.lo' -SUBDIRS = . include -AM_CPPFLAGS = -I$(top_srcdir)/$(LUA52_TREE)/src $(LUA52_DEFINES) -AM_CFLAGS = $(WARNING_CFLAGS) -lib_LTLIBRARIES = libtexlua52.la -libtexlua52_la_LDFLAGS = -bindir @bindir@ -no-undefined -version-info $(LUA52_LT_VERSINFO) -nodist_libtexlua52_la_SOURCES = \ - @LUA52_TREE@/src/lapi.c \ - @LUA52_TREE@/src/lauxlib.c \ - @LUA52_TREE@/src/lbaselib.c \ - @LUA52_TREE@/src/lbitlib.c \ - @LUA52_TREE@/src/lcode.c \ - @LUA52_TREE@/src/lcorolib.c \ - @LUA52_TREE@/src/lctype.c \ - @LUA52_TREE@/src/ldblib.c \ - @LUA52_TREE@/src/ldebug.c \ - @LUA52_TREE@/src/ldo.c \ - @LUA52_TREE@/src/ldump.c \ - @LUA52_TREE@/src/lfunc.c \ - @LUA52_TREE@/src/lgc.c \ - @LUA52_TREE@/src/linit.c \ - @LUA52_TREE@/src/liolib.c \ - @LUA52_TREE@/src/llex.c \ - @LUA52_TREE@/src/lmathlib.c \ - @LUA52_TREE@/src/lmem.c \ - @LUA52_TREE@/src/loadlib.c \ - @LUA52_TREE@/src/lobject.c \ - @LUA52_TREE@/src/lopcodes.c \ - @LUA52_TREE@/src/loslib.c \ - @LUA52_TREE@/src/lparser.c \ - @LUA52_TREE@/src/lstate.c \ - @LUA52_TREE@/src/lstring.c \ - @LUA52_TREE@/src/lstrlib.c \ - @LUA52_TREE@/src/ltable.c \ - @LUA52_TREE@/src/ltablib.c \ - @LUA52_TREE@/src/ltm.c \ - @LUA52_TREE@/src/luaconf.h \ - @LUA52_TREE@/src/lundump.c \ - @LUA52_TREE@/src/lvm.c \ - @LUA52_TREE@/src/lzio.c - -lua52includedir = ${includedir}/texlua52 -lua52include_HEADERS = \ - $(LUA52_TREE)/src/lauxlib.h \ - $(LUA52_TREE)/src/luaconf.h \ - $(LUA52_TREE)/src/lua.h \ - $(LUA52_TREE)/src/lua.hpp \ - $(LUA52_TREE)/src/lualib.h - -pkgconfigdir = ${libdir}/pkgconfig -pkgconfig_DATA = texlua52.pc -@build_TRUE@dist_check_SCRIPTS = lua52.test luaerror.test -@build_TRUE@TESTS = lua52.test luaerror.test -luatest_SOURCES = luatest.c -luatest_CPPFLAGS = -Iinclude -nodist_luatry_SOURCES = @LUA52_TREE@/src/lua.c -luatry_CPPFLAGS = -Iinclude -LDADD = libtexlua52.la -CLEANFILES = error.out error.tmp rebuild.stamp - -# Rebuild -rebuild_prereq = -rebuild_target = all -all: config.h - $(MAKE) $(AM_MAKEFLAGS) all-recursive - -.SUFFIXES: -.SUFFIXES: .c .lo .log .o .obj .test .test$(EXEEXT) .trs -am--refresh: Makefile - @: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/../../am/dist_hook.am $(srcdir)/../../am/rebuild.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ - $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - echo ' $(SHELL) ./config.status'; \ - $(SHELL) ./config.status;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \ - esac; -$(srcdir)/../../am/dist_hook.am $(srcdir)/../../am/rebuild.am $(am__empty): - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - $(SHELL) ./config.status --recheck - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - $(am__cd) $(srcdir) && $(AUTOCONF) -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) -$(am__aclocal_m4_deps): - -config.h: stamp-h1 - @test -f $@ || rm -f stamp-h1 - @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 - -stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status - @rm -f stamp-h1 - cd $(top_builddir) && $(SHELL) ./config.status config.h -$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) - rm -f stamp-h1 - touch $@ - -distclean-hdr: - -rm -f config.h stamp-h1 -texlua52.pc: $(top_builddir)/config.status $(srcdir)/texlua52.pc.in - cd $(top_builddir) && $(SHELL) ./config.status $@ - -clean-checkPROGRAMS: - @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list - -install-libLTLIBRARIES: $(lib_LTLIBRARIES) - @$(NORMAL_INSTALL) - @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ - list2=; for p in $$list; do \ - if test -f $$p; then \ - list2="$$list2 $$p"; \ - else :; fi; \ - done; \ - test -z "$$list2" || { \ - echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ - } - -uninstall-libLTLIBRARIES: - @$(NORMAL_UNINSTALL) - @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ - done - -clean-libLTLIBRARIES: - -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) - @list='$(lib_LTLIBRARIES)'; \ - locs=`for p in $$list; do echo $$p; done | \ - sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ - sort -u`; \ - test -z "$$locs" || { \ - echo rm -f $${locs}; \ - rm -f $${locs}; \ - } -@LUA52_TREE@/src/$(am__dirstamp): - @$(MKDIR_P) @LUA52_TREE@/src - @: > @LUA52_TREE@/src/$(am__dirstamp) -@LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) @LUA52_TREE@/src/$(DEPDIR) - @: > @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lapi.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lauxlib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lbaselib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lbitlib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lcode.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lcorolib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lctype.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/ldblib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/ldebug.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/ldo.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/ldump.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lfunc.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lgc.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/linit.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/liolib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/llex.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lmathlib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lmem.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/loadlib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lobject.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lopcodes.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/loslib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lparser.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lstate.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lstring.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lstrlib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/ltable.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/ltablib.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/ltm.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lundump.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lvm.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) -@LUA52_TREE@/src/lzio.lo: @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) - -libtexlua52.la: $(libtexlua52_la_OBJECTS) $(libtexlua52_la_DEPENDENCIES) $(EXTRA_libtexlua52_la_DEPENDENCIES) - $(AM_V_CCLD)$(libtexlua52_la_LINK) -rpath $(libdir) $(libtexlua52_la_OBJECTS) $(libtexlua52_la_LIBADD) $(LIBS) - -luatest$(EXEEXT): $(luatest_OBJECTS) $(luatest_DEPENDENCIES) $(EXTRA_luatest_DEPENDENCIES) - @rm -f luatest$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(luatest_OBJECTS) $(luatest_LDADD) $(LIBS) -@LUA52_TREE@/src/luatry-lua.$(OBJEXT): \ - @LUA52_TREE@/src/$(am__dirstamp) \ - @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) - -luatry$(EXEEXT): $(luatry_OBJECTS) $(luatry_DEPENDENCIES) $(EXTRA_luatry_DEPENDENCIES) - @rm -f luatry$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(luatry_OBJECTS) $(luatry_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -rm -f @LUA52_TREE@/src/*.$(OBJEXT) - -rm -f @LUA52_TREE@/src/*.lo - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/luatest-luatest.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lapi.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lauxlib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lbaselib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lbitlib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lcode.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lcorolib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lctype.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/ldblib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/ldebug.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/ldo.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/ldump.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lfunc.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lgc.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/linit.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/liolib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/llex.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lmathlib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lmem.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/loadlib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lobject.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lopcodes.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/loslib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lparser.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lstate.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lstring.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lstrlib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/ltable.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/ltablib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/ltm.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lundump.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lvm.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@@LUA52_TREE@/src/$(DEPDIR)/lzio.Plo@am__quote@ # am--include-marker - -$(am__depfiles_remade): - @$(MKDIR_P) $(@D) - @echo '# dummy' >$@-t && $(am__mv) $@-t $@ - -am--depfiles: $(am__depfiles_remade) - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -.c.lo: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< - -luatest-luatest.o: luatest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatest_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatest-luatest.o -MD -MP -MF $(DEPDIR)/luatest-luatest.Tpo -c -o luatest-luatest.o `test -f 'luatest.c' || echo '$(srcdir)/'`luatest.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/luatest-luatest.Tpo $(DEPDIR)/luatest-luatest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatest.c' object='luatest-luatest.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatest_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatest-luatest.o `test -f 'luatest.c' || echo '$(srcdir)/'`luatest.c - -luatest-luatest.obj: luatest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatest_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatest-luatest.obj -MD -MP -MF $(DEPDIR)/luatest-luatest.Tpo -c -o luatest-luatest.obj `if test -f 'luatest.c'; then $(CYGPATH_W) 'luatest.c'; else $(CYGPATH_W) '$(srcdir)/luatest.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/luatest-luatest.Tpo $(DEPDIR)/luatest-luatest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatest.c' object='luatest-luatest.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatest_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatest-luatest.obj `if test -f 'luatest.c'; then $(CYGPATH_W) 'luatest.c'; else $(CYGPATH_W) '$(srcdir)/luatest.c'; fi` - -@LUA52_TREE@/src/luatry-lua.o: @LUA52_TREE@/src/lua.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT @LUA52_TREE@/src/luatry-lua.o -MD -MP -MF @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Tpo -c -o @LUA52_TREE@/src/luatry-lua.o `test -f '@LUA52_TREE@/src/lua.c' || echo '$(srcdir)/'`@LUA52_TREE@/src/lua.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Tpo @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='@LUA52_TREE@/src/lua.c' object='@LUA52_TREE@/src/luatry-lua.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o @LUA52_TREE@/src/luatry-lua.o `test -f '@LUA52_TREE@/src/lua.c' || echo '$(srcdir)/'`@LUA52_TREE@/src/lua.c - -@LUA52_TREE@/src/luatry-lua.obj: @LUA52_TREE@/src/lua.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT @LUA52_TREE@/src/luatry-lua.obj -MD -MP -MF @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Tpo -c -o @LUA52_TREE@/src/luatry-lua.obj `if test -f '@LUA52_TREE@/src/lua.c'; then $(CYGPATH_W) '@LUA52_TREE@/src/lua.c'; else $(CYGPATH_W) '$(srcdir)/@LUA52_TREE@/src/lua.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Tpo @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='@LUA52_TREE@/src/lua.c' object='@LUA52_TREE@/src/luatry-lua.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o @LUA52_TREE@/src/luatry-lua.obj `if test -f '@LUA52_TREE@/src/lua.c'; then $(CYGPATH_W) '@LUA52_TREE@/src/lua.c'; else $(CYGPATH_W) '$(srcdir)/@LUA52_TREE@/src/lua.c'; fi` - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -rm -rf @LUA52_TREE@/src/.libs @LUA52_TREE@/src/_libs - -distclean-libtool: - -rm -f libtool config.lt -install-pkgconfigDATA: $(pkgconfig_DATA) - @$(NORMAL_INSTALL) - @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ - done - -uninstall-pkgconfigDATA: - @$(NORMAL_UNINSTALL) - @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir) -install-lua52includeHEADERS: $(lua52include_HEADERS) - @$(NORMAL_INSTALL) - @list='$(lua52include_HEADERS)'; test -n "$(lua52includedir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(lua52includedir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(lua52includedir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(lua52includedir)'"; \ - $(INSTALL_HEADER) $$files "$(DESTDIR)$(lua52includedir)" || exit $$?; \ - done - -uninstall-lua52includeHEADERS: - @$(NORMAL_UNINSTALL) - @list='$(lua52include_HEADERS)'; test -n "$(lua52includedir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(lua52includedir)'; $(am__uninstall_files_from_dir) - -# This directory's subdirectories are mostly independent; you can cd -# into them and run 'make' without going through this Makefile. -# To change the values of 'make' variables: instead of editing Makefiles, -# (1) if the variable is set in 'config.status', edit 'config.status' -# (which will cause the Makefiles to be regenerated when you run 'make'); -# (2) otherwise, pass the desired values on the 'make' command line. -$(am__recursive_targets): - @fail=; \ - if $(am__make_keepgoing); then \ - failcom='fail=yes'; \ - else \ - failcom='exit 1'; \ - fi; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-recursive -TAGS: tags - -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscope: cscope.files - test ! -s cscope.files \ - || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) -clean-cscope: - -rm -f cscope.files -cscope.files: clean-cscope cscopelist -cscopelist: cscopelist-recursive - -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -rm -f cscope.out cscope.in.out cscope.po.out cscope.files - -# Recover from deleted '.trs' file; this should ensure that -# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create -# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells -# to avoid problems with "make -n". -.log.trs: - rm -f $< $@ - $(MAKE) $(AM_MAKEFLAGS) $< - -# Leading 'am--fnord' is there to ensure the list of targets does not -# expand to empty, as could happen e.g. with make check TESTS=''. -am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) -am--force-recheck: - @: - -$(TEST_SUITE_LOG): $(TEST_LOGS) - @$(am__set_TESTS_bases); \ - am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ - redo_bases=`for i in $$bases; do \ - am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ - done`; \ - if test -n "$$redo_bases"; then \ - redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ - redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ - if $(am__make_dryrun); then :; else \ - rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ - fi; \ - fi; \ - if test -n "$$am__remaking_logs"; then \ - echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ - "recursion detected" >&2; \ - elif test -n "$$redo_logs"; then \ - am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ - fi; \ - if $(am__make_dryrun); then :; else \ - st=0; \ - errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ - for i in $$redo_bases; do \ - test -f $$i.trs && test -r $$i.trs \ - || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ - test -f $$i.log && test -r $$i.log \ - || { echo "$$errmsg $$i.log" >&2; st=1; }; \ - done; \ - test $$st -eq 0 || exit 1; \ - fi - @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ - ws='[ ]'; \ - results=`for b in $$bases; do echo $$b.trs; done`; \ - test -n "$$results" || results=/dev/null; \ - all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ - pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ - fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ - skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ - xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ - xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ - error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ - if test `expr $$fail + $$xpass + $$error` -eq 0; then \ - success=true; \ - else \ - success=false; \ - fi; \ - br='==================='; br=$$br$$br$$br$$br; \ - result_count () \ - { \ - if test x"$$1" = x"--maybe-color"; then \ - maybe_colorize=yes; \ - elif test x"$$1" = x"--no-color"; then \ - maybe_colorize=no; \ - else \ - echo "$@: invalid 'result_count' usage" >&2; exit 4; \ - fi; \ - shift; \ - desc=$$1 count=$$2; \ - if test $$maybe_colorize = yes && test $$count -gt 0; then \ - color_start=$$3 color_end=$$std; \ - else \ - color_start= color_end=; \ - fi; \ - echo "$${color_start}# $$desc $$count$${color_end}"; \ - }; \ - create_testsuite_report () \ - { \ - result_count $$1 "TOTAL:" $$all "$$brg"; \ - result_count $$1 "PASS: " $$pass "$$grn"; \ - result_count $$1 "SKIP: " $$skip "$$blu"; \ - result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ - result_count $$1 "FAIL: " $$fail "$$red"; \ - result_count $$1 "XPASS:" $$xpass "$$red"; \ - result_count $$1 "ERROR:" $$error "$$mgn"; \ - }; \ - { \ - echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ - $(am__rst_title); \ - create_testsuite_report --no-color; \ - echo; \ - echo ".. contents:: :depth: 2"; \ - echo; \ - for b in $$bases; do echo $$b; done \ - | $(am__create_global_log); \ - } >$(TEST_SUITE_LOG).tmp || exit 1; \ - mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ - if $$success; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ - fi; \ - echo "$${col}$$br$${std}"; \ - echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ - echo "$${col}$$br$${std}"; \ - create_testsuite_report --maybe-color; \ - echo "$$col$$br$$std"; \ - if $$success; then :; else \ - echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ - if test -n "$(PACKAGE_BUGREPORT)"; then \ - echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ - fi; \ - echo "$$col$$br$$std"; \ - fi; \ - $$success || exit 1 - -check-TESTS: $(check_PROGRAMS) $(dist_check_SCRIPTS) - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ - exit $$?; -recheck: all $(check_PROGRAMS) $(dist_check_SCRIPTS) - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - bases=`for i in $$bases; do echo $$i; done \ - | $(am__list_recheck_tests)` || exit 1; \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - log_list=`echo $$log_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ - am__force_recheck=am--force-recheck \ - TEST_LOGS="$$log_list"; \ - exit $$? -.test.log: - @p='$<'; \ - $(am__set_b); \ - $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -@am__EXEEXT_TRUE@.test$(EXEEXT).log: -@am__EXEEXT_TRUE@ @p='$<'; \ -@am__EXEEXT_TRUE@ $(am__set_b); \ -@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ -@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ -@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ -@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) - -distdir: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) distdir-am - -distdir-am: $(DISTFILES) - $(am__remove_distdir) - test -d "$(distdir)" || mkdir "$(distdir)" - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - $(am__make_dryrun) \ - || test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ - $(am__relativize); \ - new_distdir=$$reldir; \ - dir1=$$subdir; dir2="$(top_distdir)"; \ - $(am__relativize); \ - new_top_distdir=$$reldir; \ - echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ - echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ - ($(am__cd) $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$new_top_distdir" \ - distdir="$$new_distdir" \ - am__remove_distdir=: \ - am__skip_length_check=: \ - am__skip_mode_fix=: \ - distdir) \ - || exit 1; \ - fi; \ - done - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$(top_distdir)" distdir="$(distdir)" \ - dist-hook - -test -n "$(am__skip_mode_fix)" \ - || find "$(distdir)" -type d ! -perm -755 \ - -exec chmod u+rwx,go+rx {} \; -o \ - ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ - || chmod -R a+r "$(distdir)" -dist-gzip: distdir - tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz - $(am__post_remove_distdir) - -dist-bzip2: distdir - tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 - $(am__post_remove_distdir) - -dist-lzip: distdir - tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz - $(am__post_remove_distdir) - -dist-xz: distdir - tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz - $(am__post_remove_distdir) - -dist-tarZ: distdir - @echo WARNING: "Support for distribution archives compressed with" \ - "legacy program 'compress' is deprecated." >&2 - @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z - $(am__post_remove_distdir) - -dist-shar: distdir - @echo WARNING: "Support for shar distribution archives is" \ - "deprecated." >&2 - @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz - $(am__post_remove_distdir) - -dist-zip: distdir - -rm -f $(distdir).zip - zip -rq $(distdir).zip $(distdir) - $(am__post_remove_distdir) - -dist dist-all: - $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' - $(am__post_remove_distdir) - -# This target untars the dist file and tries a VPATH configuration. Then -# it guarantees that the distribution is self-contained by making another -# tarfile. -distcheck: dist - case '$(DIST_ARCHIVES)' in \ - *.tar.gz*) \ - eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ - *.tar.bz2*) \ - bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ - *.tar.lz*) \ - lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ - *.tar.xz*) \ - xz -dc $(distdir).tar.xz | $(am__untar) ;;\ - *.tar.Z*) \ - uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ - *.shar.gz*) \ - eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ - *.zip*) \ - unzip $(distdir).zip ;;\ - esac - chmod -R a-w $(distdir) - chmod u+w $(distdir) - mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst - chmod a-w $(distdir) - test -d $(distdir)/_build || exit 0; \ - dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ - && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ - && am__cwd=`pwd` \ - && $(am__cd) $(distdir)/_build/sub \ - && ../../configure \ - $(AM_DISTCHECK_CONFIGURE_FLAGS) \ - $(DISTCHECK_CONFIGURE_FLAGS) \ - --srcdir=../.. --prefix="$$dc_install_base" \ - && $(MAKE) $(AM_MAKEFLAGS) \ - && $(MAKE) $(AM_MAKEFLAGS) dvi \ - && $(MAKE) $(AM_MAKEFLAGS) check \ - && $(MAKE) $(AM_MAKEFLAGS) install \ - && $(MAKE) $(AM_MAKEFLAGS) installcheck \ - && $(MAKE) $(AM_MAKEFLAGS) uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ - distuninstallcheck \ - && chmod -R a-w "$$dc_install_base" \ - && ({ \ - (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ - distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ - } || { rm -rf "$$dc_destdir"; exit 1; }) \ - && rm -rf "$$dc_destdir" \ - && $(MAKE) $(AM_MAKEFLAGS) dist \ - && rm -rf $(DIST_ARCHIVES) \ - && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ - && cd "$$am__cwd" \ - || exit 1 - $(am__post_remove_distdir) - @(echo "$(distdir) archives ready for distribution: "; \ - list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ - sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' -distuninstallcheck: - @test -n '$(distuninstallcheck_dir)' || { \ - echo 'ERROR: trying to run $@ with an empty' \ - '$$(distuninstallcheck_dir)' >&2; \ - exit 1; \ - }; \ - $(am__cd) '$(distuninstallcheck_dir)' || { \ - echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ - exit 1; \ - }; \ - test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ - || { echo "ERROR: files left after uninstall:" ; \ - if test -n "$(DESTDIR)"; then \ - echo " (check DESTDIR support)"; \ - fi ; \ - $(distuninstallcheck_listfiles) ; \ - exit 1; } >&2 -distcleancheck: distclean - @if test '$(srcdir)' = . ; then \ - echo "ERROR: distcleancheck can only run from a VPATH build" ; \ - exit 1 ; \ - fi - @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ - || { echo "ERROR: files left in build directory after distclean:" ; \ - $(distcleancheck_listfiles) ; \ - exit 1; } >&2 -check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) \ - $(dist_check_SCRIPTS) - $(MAKE) $(AM_MAKEFLAGS) check-TESTS -check: check-recursive -all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS) config.h -installdirs: installdirs-recursive -installdirs-am: - for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(lua52includedir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -rm -f @LUA52_TREE@/src/$(DEPDIR)/$(am__dirstamp) - -rm -f @LUA52_TREE@/src/$(am__dirstamp) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-recursive - -clean-am: clean-checkPROGRAMS clean-generic clean-libLTLIBRARIES \ - clean-libtool mostlyclean-am - -distclean: distclean-recursive - -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -f ./$(DEPDIR)/luatest-luatest.Po - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lapi.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lauxlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lbaselib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lbitlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lcode.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lcorolib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lctype.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ldblib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ldebug.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ldo.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ldump.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lfunc.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lgc.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/linit.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/liolib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/llex.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lmathlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lmem.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/loadlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lobject.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lopcodes.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/loslib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lparser.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lstate.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lstring.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lstrlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ltable.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ltablib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ltm.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Po - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lundump.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lvm.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lzio.Plo - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-hdr distclean-libtool distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -html-am: - -info: info-recursive - -info-am: - -install-data-am: install-lua52includeHEADERS install-pkgconfigDATA - -install-dvi: install-dvi-recursive - -install-dvi-am: - -install-exec-am: install-libLTLIBRARIES - -install-html: install-html-recursive - -install-html-am: - -install-info: install-info-recursive - -install-info-am: - -install-man: - -install-pdf: install-pdf-recursive - -install-pdf-am: - -install-ps: install-ps-recursive - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -rf $(top_srcdir)/autom4te.cache - -rm -f ./$(DEPDIR)/luatest-luatest.Po - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lapi.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lauxlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lbaselib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lbitlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lcode.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lcorolib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lctype.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ldblib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ldebug.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ldo.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ldump.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lfunc.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lgc.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/linit.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/liolib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/llex.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lmathlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lmem.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/loadlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lobject.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lopcodes.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/loslib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lparser.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lstate.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lstring.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lstrlib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ltable.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ltablib.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/ltm.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/luatry-lua.Po - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lundump.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lvm.Plo - -rm -f @LUA52_TREE@/src/$(DEPDIR)/lzio.Plo - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: uninstall-libLTLIBRARIES uninstall-lua52includeHEADERS \ - uninstall-pkgconfigDATA - -.MAKE: $(am__recursive_targets) all check-am install-am install-strip - -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ - am--depfiles am--refresh check check-TESTS check-am clean \ - clean-checkPROGRAMS clean-cscope clean-generic \ - clean-libLTLIBRARIES clean-libtool cscope cscopelist-am ctags \ - ctags-am dist dist-all dist-bzip2 dist-gzip dist-hook \ - dist-lzip dist-shar dist-tarZ dist-xz dist-zip distcheck \ - distclean distclean-compile distclean-generic distclean-hdr \ - distclean-libtool distclean-tags distcleancheck distdir \ - distuninstallcheck dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-dvi \ - install-dvi-am install-exec install-exec-am install-html \ - install-html-am install-info install-info-am \ - install-libLTLIBRARIES install-lua52includeHEADERS install-man \ - install-pdf install-pdf-am install-pkgconfigDATA install-ps \ - install-ps-am install-strip installcheck installcheck-am \ - installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - recheck tags tags-am uninstall uninstall-am \ - uninstall-libLTLIBRARIES uninstall-lua52includeHEADERS \ - uninstall-pkgconfigDATA - -.PRECIOUS: Makefile - -dist-hook: - cd "$(distdir)" && rm -rf $(NEVER_DIST) -lua52.log: luatest$(EXEEXT) -luaerror.log: luatry$(EXEEXT) -rebuild.stamp: $(rebuild_target) - echo timestamp >$@ - -.PHONY: rebuild -rebuild: $(rebuild_prereq) - @dry=; for f in x $$MAKEFLAGS; do \ - case $$f in \ - *=*|--*);; \ - *n*) dry=:;; \ - esac; \ - done; \ - if test -f rebuild.stamp; then :; else \ - $$dry trap 'rm -rf rebuild.lock' 1 2 13 15; \ - if $$dry mkdir rebuild.lock 2>/dev/null; then \ - $(MAKE) $(AM_MAKEFLAGS) rebuild.stamp; \ - $$dry rmdir rebuild.lock; \ - else \ - while test -d rebuild.lock && test -z "$$dry"; do sleep 1; done; \ - fi; \ - $$dry test -f rebuild.stamp; exit $$?; \ - fi - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/source/libs/lua52/TLpatches/ChangeLog b/source/libs/lua52/TLpatches/ChangeLog deleted file mode 100644 index a8f1b4d38..000000000 --- a/source/libs/lua52/TLpatches/ChangeLog +++ /dev/null @@ -1,36 +0,0 @@ -2015-03-11 Peter Breitenlohner <peb@mppmu.mpg.de> - - Import lua-5.2.4/ from http://www.lua.org/ftp/lua-5.2.4.tar.gz. - - * patch-01-utf-8, patch-02-FreeBSD, patch-03-export: Adapted. - -2014-10-22 Peter Breitenlohner <peb@mppmu.mpg.de> - - * patch-03-export (new): Export symbols for LuaTeX (from Luigi). - -2014-02-13 Peter Breitenlohner <peb@mppmu.mpg.de> - - * patch-02-FreeBSD (new): Required for FreeBSD. - From Nikola Lecic <nikola.lecic@anthesphoria.net>. - -2014-02-13 Peter Breitenlohner <peb@mppmu.mpg.de> - - * patch-01-utf-8 (new): Allow utf-8 chars in identifiers. - From Luigi Scarso <luigi.scarso@gmail.com>. - -2012-12-07 Peter Breitenlohner <peb@mppmu.mpg.de> - - Import lua-5.2.3/ from http://www.lua.org/ftp/lua-5.2.3.tar.gz. - -2012-06-25 Peter Breitenlohner <peb@mppmu.mpg.de> - - Import lua-5.2.2/ from http://www.lua.org/ftp/lua-5.2.2.tar.gz. - - * patch-01-const (removed): Now included upstream. - -2012-06-18 Peter Breitenlohner <peb@mppmu.mpg.de> - - Import lua-5.2.1/ from http://www.lua.org/ftp/lua-5.2.1.tar.gz. - - * patch-01-const (new): Add const to avoid warning. - diff --git a/source/libs/lua52/TLpatches/patch-01-utf-8 b/source/libs/lua52/TLpatches/patch-01-utf-8 deleted file mode 100644 index 9ad974941..000000000 --- a/source/libs/lua52/TLpatches/patch-01-utf-8 +++ /dev/null @@ -1,26 +0,0 @@ -diff -ur lua-5.2.4.orig/src/lctype.h lua-5.2.4/src/lctype.h ---- lua-5.2.4.orig/src/lctype.h 2013-04-12 20:48:47.000000000 +0200 -+++ lua-5.2.4/src/lctype.h 2014-02-13 13:17:33.000000000 +0100 -@@ -7,6 +7,8 @@ - #ifndef lctype_h - #define lctype_h - -+#include <ctype.h> -+ - #include "lua.h" - - -@@ -53,9 +55,11 @@ - - /* - ** 'lalpha' (Lua alphabetic) and 'lalnum' (Lua alphanumeric) both include '_' -+** -+** all utf-8 chars (greater than 0x7f) are always alphabetic - */ --#define lislalpha(c) testprop(c, MASK(ALPHABIT)) --#define lislalnum(c) testprop(c, (MASK(ALPHABIT) | MASK(DIGITBIT))) -+#define lislalpha(c) (isalpha(c) || (c) == '_' || (c) > 0x7f) -+#define lislalnum(c) (isalnum(c) || (c) == '_' || (c) > 0x7f) - #define lisdigit(c) testprop(c, MASK(DIGITBIT)) - #define lisspace(c) testprop(c, MASK(SPACEBIT)) - #define lisprint(c) testprop(c, MASK(PRINTBIT)) diff --git a/source/libs/lua52/TLpatches/patch-02-FreeBSD b/source/libs/lua52/TLpatches/patch-02-FreeBSD deleted file mode 100644 index c9465de94..000000000 --- a/source/libs/lua52/TLpatches/patch-02-FreeBSD +++ /dev/null @@ -1,13 +0,0 @@ -diff -ur lua-5.2.4.orig/src/liolib.c lua-5.2.4/src/liolib.c ---- lua-5.2.4.orig/src/liolib.c 2013-04-12 20:48:47.000000000 +0200 -+++ lua-5.2.4/src/liolib.c 2014-03-19 15:03:49.727286832 +0100 -@@ -19,6 +19,9 @@ - #include <stdio.h> - #include <stdlib.h> - #include <string.h> -+#if defined(HAVE_UNISTD_H) -+#include <unistd.h> -+#endif - - #define liolib_c - #define LUA_LIB diff --git a/source/libs/lua52/TLpatches/patch-03-export b/source/libs/lua52/TLpatches/patch-03-export deleted file mode 100644 index 2c2edd01b..000000000 --- a/source/libs/lua52/TLpatches/patch-03-export +++ /dev/null @@ -1,33 +0,0 @@ -diff -ur lua-5.2.4.orig/src/lopcodes.h lua-5.2.4/src/lopcodes.h ---- lua-5.2.4.orig/src/lopcodes.h 2014-10-20 20:32:09.000000000 +0200 -+++ lua-5.2.4/src/lopcodes.h 2015-03-11 08:31:42.000000000 +0100 -@@ -269,7 +269,7 @@ - OpArgK /* argument is a constant or register/constant */ - }; - --LUAI_DDEC const lu_byte luaP_opmodes[NUM_OPCODES]; -+LUA_API const lu_byte luaP_opmodes[NUM_OPCODES]; - - #define getOpMode(m) (cast(enum OpMode, luaP_opmodes[m] & 3)) - #define getBMode(m) (cast(enum OpArgMask, (luaP_opmodes[m] >> 4) & 3)) -@@ -278,7 +278,7 @@ - #define testTMode(m) (luaP_opmodes[m] & (1 << 7)) - - --LUAI_DDEC const char *const luaP_opnames[NUM_OPCODES+1]; /* opcode names */ -+LUA_API const char *const luaP_opnames[NUM_OPCODES+1]; /* opcode names */ - - - /* number of list items to accumulate before a SETLIST instruction */ -diff -ur lua-5.2.4.orig/src/lundump.h lua-5.2.4/src/lundump.h ---- lua-5.2.4.orig/src/lundump.h 2013-04-12 20:48:47.000000000 +0200 -+++ lua-5.2.4/src/lundump.h 2014-10-22 11:14:59.000000000 +0200 -@@ -17,7 +17,7 @@ - LUAI_FUNC void luaU_header (lu_byte* h); - - /* dump one chunk; from ldump.c */ --LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip); -+LUA_API int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip); - - /* data to catch conversion errors */ - #define LUAC_TAIL "\x19\x93\r\n\x1a\n" diff --git a/source/libs/lua52/ac/withenable.ac b/source/libs/lua52/ac/withenable.ac deleted file mode 100644 index 2f44378ef..000000000 --- a/source/libs/lua52/ac/withenable.ac +++ /dev/null @@ -1,7 +0,0 @@ -## libs/lua52/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua52/ -dnl -dnl Copyright (C) 2013 Peter Breitenlohner <tex-live@tug.org> -dnl You may freely use, modify and/or distribute this file. -dnl -## configure options and TL libraries required for lua52 -KPSE_WITH_LIB([lua52], , [tree]) diff --git a/source/libs/lua52/aclocal.m4 b/source/libs/lua52/aclocal.m4 deleted file mode 100644 index f614d40ab..000000000 --- a/source/libs/lua52/aclocal.m4 +++ /dev/null @@ -1,1183 +0,0 @@ -# generated automatically by aclocal 1.16.1 -*- Autoconf -*- - -# Copyright (C) 1996-2018 Free Software Foundation, Inc. - -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, -[m4_warning([this file was generated for autoconf 2.69. -You have another version of autoconf. It may work, but is not guaranteed to. -If you have problems, you may need to regenerate the build system entirely. -To do so, use the procedure documented by the package, typically 'autoreconf'.])]) - -# Copyright (C) 2002-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_AUTOMAKE_VERSION(VERSION) -# ---------------------------- -# Automake X.Y traces this macro to ensure aclocal.m4 has been -# generated from the m4 files accompanying Automake X.Y. -# (This private macro should not be called outside this file.) -AC_DEFUN([AM_AUTOMAKE_VERSION], -[am__api_version='1.16' -dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to -dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.16.1], [], - [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl -]) - -# _AM_AUTOCONF_VERSION(VERSION) -# ----------------------------- -# aclocal traces this macro to find the Autoconf version. -# This is a private macro too. Using m4_define simplifies -# the logic in aclocal, which can simply ignore this definition. -m4_define([_AM_AUTOCONF_VERSION], []) - -# AM_SET_CURRENT_AUTOMAKE_VERSION -# ------------------------------- -# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. -# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. -AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.16.1])dnl -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) - -# AM_AUX_DIR_EXPAND -*- Autoconf -*- - -# Copyright (C) 2001-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets -# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to -# '$srcdir', '$srcdir/..', or '$srcdir/../..'. -# -# Of course, Automake must honor this variable whenever it calls a -# tool from the auxiliary directory. The problem is that $srcdir (and -# therefore $ac_aux_dir as well) can be either absolute or relative, -# depending on how configure is run. This is pretty annoying, since -# it makes $ac_aux_dir quite unusable in subdirectories: in the top -# source directory, any form will work fine, but in subdirectories a -# relative path needs to be adjusted first. -# -# $ac_aux_dir/missing -# fails when called from a subdirectory if $ac_aux_dir is relative -# $top_srcdir/$ac_aux_dir/missing -# fails if $ac_aux_dir is absolute, -# fails when called from a subdirectory in a VPATH build with -# a relative $ac_aux_dir -# -# The reason of the latter failure is that $top_srcdir and $ac_aux_dir -# are both prefixed by $srcdir. In an in-source build this is usually -# harmless because $srcdir is '.', but things will broke when you -# start a VPATH build or use an absolute $srcdir. -# -# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, -# iff we strip the leading $srcdir from $ac_aux_dir. That would be: -# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` -# and then we would define $MISSING as -# MISSING="\${SHELL} $am_aux_dir/missing" -# This will work as long as MISSING is not called from configure, because -# unfortunately $(top_srcdir) has no meaning in configure. -# However there are other variables, like CC, which are often used in -# configure, and could therefore not use this "fixed" $ac_aux_dir. -# -# Another solution, used here, is to always expand $ac_aux_dir to an -# absolute PATH. The drawback is that using absolute paths prevent a -# configured tree to be moved without reconfiguration. - -AC_DEFUN([AM_AUX_DIR_EXPAND], -[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl -# Expand $ac_aux_dir to an absolute path. -am_aux_dir=`cd "$ac_aux_dir" && pwd` -]) - -# AM_CONDITIONAL -*- Autoconf -*- - -# Copyright (C) 1997-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_CONDITIONAL(NAME, SHELL-CONDITION) -# ------------------------------------- -# Define a conditional. -AC_DEFUN([AM_CONDITIONAL], -[AC_PREREQ([2.52])dnl - m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], - [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl -AC_SUBST([$1_TRUE])dnl -AC_SUBST([$1_FALSE])dnl -_AM_SUBST_NOTMAKE([$1_TRUE])dnl -_AM_SUBST_NOTMAKE([$1_FALSE])dnl -m4_define([_AM_COND_VALUE_$1], [$2])dnl -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi -AC_CONFIG_COMMANDS_PRE( -[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then - AC_MSG_ERROR([[conditional "$1" was never defined. -Usually this means the macro was only invoked conditionally.]]) -fi])]) - -# Copyright (C) 1999-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - - -# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be -# written in clear, in which case automake, when reading aclocal.m4, -# will think it sees a *use*, and therefore will trigger all it's -# C support machinery. Also note that it means that autoscan, seeing -# CC etc. in the Makefile, will ask for an AC_PROG_CC use... - - -# _AM_DEPENDENCIES(NAME) -# ---------------------- -# See how the compiler implements dependency checking. -# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". -# We try a few techniques and use that to set a single cache variable. -# -# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was -# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular -# dependency, and given that the user is not expected to run this macro, -# just rely on AC_PROG_CC. -AC_DEFUN([_AM_DEPENDENCIES], -[AC_REQUIRE([AM_SET_DEPDIR])dnl -AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl -AC_REQUIRE([AM_MAKE_INCLUDE])dnl -AC_REQUIRE([AM_DEP_TRACK])dnl - -m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], - [$1], [CXX], [depcc="$CXX" am_compiler_list=], - [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], - [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], - [$1], [UPC], [depcc="$UPC" am_compiler_list=], - [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], - [depcc="$$1" am_compiler_list=]) - -AC_CACHE_CHECK([dependency style of $depcc], - [am_cv_$1_dependencies_compiler_type], -[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_$1_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` - fi - am__universal=false - m4_case([$1], [CC], - [case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac], - [CXX], - [case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac]) - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_$1_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_$1_dependencies_compiler_type=none -fi -]) -AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) -AM_CONDITIONAL([am__fastdep$1], [ - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) -]) - - -# AM_SET_DEPDIR -# ------------- -# Choose a directory name for dependency files. -# This macro is AC_REQUIREd in _AM_DEPENDENCIES. -AC_DEFUN([AM_SET_DEPDIR], -[AC_REQUIRE([AM_SET_LEADING_DOT])dnl -AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl -]) - - -# AM_DEP_TRACK -# ------------ -AC_DEFUN([AM_DEP_TRACK], -[AC_ARG_ENABLE([dependency-tracking], [dnl -AS_HELP_STRING( - [--enable-dependency-tracking], - [do not reject slow dependency extractors]) -AS_HELP_STRING( - [--disable-dependency-tracking], - [speeds up one-time build])]) -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' - am__nodep='_no' -fi -AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) -AC_SUBST([AMDEPBACKSLASH])dnl -_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl -AC_SUBST([am__nodep])dnl -_AM_SUBST_NOTMAKE([am__nodep])dnl -]) - -# Generate code to set up dependency tracking. -*- Autoconf -*- - -# Copyright (C) 1999-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_OUTPUT_DEPENDENCY_COMMANDS -# ------------------------------ -AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], -[{ - # Older Autoconf quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - # TODO: see whether this extra hack can be removed once we start - # requiring Autoconf 2.70 or later. - AS_CASE([$CONFIG_FILES], - [*\'*], [eval set x "$CONFIG_FILES"], - [*], [set x $CONFIG_FILES]) - shift - # Used to flag and report bootstrapping failures. - am_rc=0 - for am_mf - do - # Strip MF so we end up with the name of the file. - am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile which includes - # dependency-tracking related rules and includes. - # Grep'ing the whole file directly is not great: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ - || continue - am_dirpart=`AS_DIRNAME(["$am_mf"])` - am_filepart=`AS_BASENAME(["$am_mf"])` - AM_RUN_LOG([cd "$am_dirpart" \ - && sed -e '/# am--include-marker/d' "$am_filepart" \ - | $MAKE -f - am--depfiles]) || am_rc=$? - done - if test $am_rc -ne 0; then - AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments - for automatic dependency tracking. Try re-running configure with the - '--disable-dependency-tracking' option to at least be able to build - the package (albeit without support for automatic dependency tracking).]) - fi - AS_UNSET([am_dirpart]) - AS_UNSET([am_filepart]) - AS_UNSET([am_mf]) - AS_UNSET([am_rc]) - rm -f conftest-deps.mk -} -])# _AM_OUTPUT_DEPENDENCY_COMMANDS - - -# AM_OUTPUT_DEPENDENCY_COMMANDS -# ----------------------------- -# This macro should only be invoked once -- use via AC_REQUIRE. -# -# This code is only required when automatic dependency tracking is enabled. -# This creates each '.Po' and '.Plo' makefile fragment that we'll need in -# order to bootstrap the dependency handling code. -AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], -[AC_CONFIG_COMMANDS([depfiles], - [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], - [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])]) - -# Do all the work for Automake. -*- Autoconf -*- - -# Copyright (C) 1996-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This macro actually does too much. Some checks are only needed if -# your package does certain things. But this isn't really a big deal. - -dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. -m4_define([AC_PROG_CC], -m4_defn([AC_PROG_CC]) -[_AM_PROG_CC_C_O -]) - -# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) -# AM_INIT_AUTOMAKE([OPTIONS]) -# ----------------------------------------------- -# The call with PACKAGE and VERSION arguments is the old style -# call (pre autoconf-2.50), which is being phased out. PACKAGE -# and VERSION should now be passed to AC_INIT and removed from -# the call to AM_INIT_AUTOMAKE. -# We support both call styles for the transition. After -# the next Automake release, Autoconf can make the AC_INIT -# arguments mandatory, and then we can depend on a new Autoconf -# release and drop the old call support. -AC_DEFUN([AM_INIT_AUTOMAKE], -[AC_PREREQ([2.65])dnl -dnl Autoconf wants to disallow AM_ names. We explicitly allow -dnl the ones we care about. -m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl -AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl -AC_REQUIRE([AC_PROG_INSTALL])dnl -if test "`cd $srcdir && pwd`" != "`pwd`"; then - # Use -I$(srcdir) only when $(srcdir) != ., so that make's output - # is not polluted with repeated "-I." - AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl - # test to see if srcdir already configured - if test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) - fi -fi - -# test whether we have cygpath -if test -z "$CYGPATH_W"; then - if (cygpath --version) >/dev/null 2>/dev/null; then - CYGPATH_W='cygpath -w' - else - CYGPATH_W=echo - fi -fi -AC_SUBST([CYGPATH_W]) - -# Define the identity of the package. -dnl Distinguish between old-style and new-style calls. -m4_ifval([$2], -[AC_DIAGNOSE([obsolete], - [$0: two- and three-arguments forms are deprecated.]) -m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl - AC_SUBST([PACKAGE], [$1])dnl - AC_SUBST([VERSION], [$2])], -[_AM_SET_OPTIONS([$1])dnl -dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. -m4_if( - m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), - [ok:ok],, - [m4_fatal([AC_INIT should be called with package and version arguments])])dnl - AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl - AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl - -_AM_IF_OPTION([no-define],, -[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) - AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl - -# Some tools Automake needs. -AC_REQUIRE([AM_SANITY_CHECK])dnl -AC_REQUIRE([AC_ARG_PROGRAM])dnl -AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) -AM_MISSING_PROG([AUTOCONF], [autoconf]) -AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) -AM_MISSING_PROG([AUTOHEADER], [autoheader]) -AM_MISSING_PROG([MAKEINFO], [makeinfo]) -AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl -AC_REQUIRE([AC_PROG_MKDIR_P])dnl -# For better backward compatibility. To be removed once Automake 1.9.x -# dies out for good. For more background, see: -# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html> -# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html> -AC_SUBST([mkdir_p], ['$(MKDIR_P)']) -# We need awk for the "check" target (and possibly the TAP driver). The -# system "awk" is bad on some platforms. -AC_REQUIRE([AC_PROG_AWK])dnl -AC_REQUIRE([AC_PROG_MAKE_SET])dnl -AC_REQUIRE([AM_SET_LEADING_DOT])dnl -_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], - [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], - [_AM_PROG_TAR([v7])])]) -_AM_IF_OPTION([no-dependencies],, -[AC_PROVIDE_IFELSE([AC_PROG_CC], - [_AM_DEPENDENCIES([CC])], - [m4_define([AC_PROG_CC], - m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_CXX], - [_AM_DEPENDENCIES([CXX])], - [m4_define([AC_PROG_CXX], - m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_OBJC], - [_AM_DEPENDENCIES([OBJC])], - [m4_define([AC_PROG_OBJC], - m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], - [_AM_DEPENDENCIES([OBJCXX])], - [m4_define([AC_PROG_OBJCXX], - m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl -]) -AC_REQUIRE([AM_SILENT_RULES])dnl -dnl The testsuite driver may need to know about EXEEXT, so add the -dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This -dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. -AC_CONFIG_COMMANDS_PRE(dnl -[m4_provide_if([_AM_COMPILER_EXEEXT], - [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl - -# POSIX will say in a future version that running "rm -f" with no argument -# is OK; and we want to be able to make that assumption in our Makefile -# recipes. So use an aggressive probe to check that the usage we want is -# actually supported "in the wild" to an acceptable degree. -# See automake bug#10828. -# To make any issue more visible, cause the running configure to be aborted -# by default if the 'rm' program in use doesn't match our expectations; the -# user can still override this though. -if rm -f && rm -fr && rm -rf; then : OK; else - cat >&2 <<'END' -Oops! - -Your 'rm' program seems unable to run without file operands specified -on the command line, even when the '-f' option is present. This is contrary -to the behaviour of most rm programs out there, and not conforming with -the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542> - -Please tell bug-automake@gnu.org about your system, including the value -of your $PATH and any error possibly output before this message. This -can help us improve future automake versions. - -END - if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then - echo 'Configuration will proceed anyway, since you have set the' >&2 - echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 - echo >&2 - else - cat >&2 <<'END' -Aborting the configuration process, to ensure you take notice of the issue. - -You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: <https://www.gnu.org/software/coreutils/>. - -If you want to complete the configuration process using your problematic -'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM -to "yes", and re-run configure. - -END - AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) - fi -fi -dnl The trailing newline in this macro's definition is deliberate, for -dnl backward compatibility and to allow trailing 'dnl'-style comments -dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. -]) - -dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not -dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further -dnl mangled by Autoconf and run in a shell conditional statement. -m4_define([_AC_COMPILER_EXEEXT], -m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) - -# When config.status generates a header, we must update the stamp-h file. -# This file resides in the same directory as the config header -# that is generated. The stamp files are numbered to have different names. - -# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the -# loop where config.status creates the headers, so we can generate -# our stamp files there. -AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], -[# Compute $1's index in $config_headers. -_am_arg=$1 -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) - -# Copyright (C) 2001-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_INSTALL_SH -# ------------------ -# Define $install_sh. -AC_DEFUN([AM_PROG_INSTALL_SH], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -if test x"${install_sh+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; - *) - install_sh="\${SHELL} $am_aux_dir/install-sh" - esac -fi -AC_SUBST([install_sh])]) - -# Copyright (C) 2003-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# Check whether the underlying file-system supports filenames -# with a leading dot. For instance MS-DOS doesn't. -AC_DEFUN([AM_SET_LEADING_DOT], -[rm -rf .tst 2>/dev/null -mkdir .tst 2>/dev/null -if test -d .tst; then - am__leading_dot=. -else - am__leading_dot=_ -fi -rmdir .tst 2>/dev/null -AC_SUBST([am__leading_dot])]) - -# Add --enable-maintainer-mode option to configure. -*- Autoconf -*- -# From Jim Meyering - -# Copyright (C) 1996-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_MAINTAINER_MODE([DEFAULT-MODE]) -# ---------------------------------- -# Control maintainer-specific portions of Makefiles. -# Default is to disable them, unless 'enable' is passed literally. -# For symmetry, 'disable' may be passed as well. Anyway, the user -# can override the default with the --enable/--disable switch. -AC_DEFUN([AM_MAINTAINER_MODE], -[m4_case(m4_default([$1], [disable]), - [enable], [m4_define([am_maintainer_other], [disable])], - [disable], [m4_define([am_maintainer_other], [enable])], - [m4_define([am_maintainer_other], [enable]) - m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) -AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) - dnl maintainer-mode's default is 'disable' unless 'enable' is passed - AC_ARG_ENABLE([maintainer-mode], - [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode], - am_maintainer_other[ make rules and dependencies not useful - (and sometimes confusing) to the casual installer])], - [USE_MAINTAINER_MODE=$enableval], - [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) - AC_MSG_RESULT([$USE_MAINTAINER_MODE]) - AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) - MAINT=$MAINTAINER_MODE_TRUE - AC_SUBST([MAINT])dnl -] -) - -# Check to see how 'make' treats includes. -*- Autoconf -*- - -# Copyright (C) 2001-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_MAKE_INCLUDE() -# ----------------- -# Check whether make has an 'include' directive that can support all -# the idioms we need for our automatic dependency tracking code. -AC_DEFUN([AM_MAKE_INCLUDE], -[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive]) -cat > confinc.mk << 'END' -am__doit: - @echo this is the am__doit target >confinc.out -.PHONY: am__doit -END -am__include="#" -am__quote= -# BSD make does it like this. -echo '.include "confinc.mk" # ignored' > confmf.BSD -# Other make implementations (GNU, Solaris 10, AIX) do it like this. -echo 'include confinc.mk # ignored' > confmf.GNU -_am_result=no -for s in GNU BSD; do - AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out]) - AS_CASE([$?:`cat confinc.out 2>/dev/null`], - ['0:this is the am__doit target'], - [AS_CASE([$s], - [BSD], [am__include='.include' am__quote='"'], - [am__include='include' am__quote=''])]) - if test "$am__include" != "#"; then - _am_result="yes ($s style)" - break - fi -done -rm -f confinc.* confmf.* -AC_MSG_RESULT([${_am_result}]) -AC_SUBST([am__include])]) -AC_SUBST([am__quote])]) - -# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- - -# Copyright (C) 1997-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_MISSING_PROG(NAME, PROGRAM) -# ------------------------------ -AC_DEFUN([AM_MISSING_PROG], -[AC_REQUIRE([AM_MISSING_HAS_RUN]) -$1=${$1-"${am_missing_run}$2"} -AC_SUBST($1)]) - -# AM_MISSING_HAS_RUN -# ------------------ -# Define MISSING if not defined so far and test if it is modern enough. -# If it is, set am_missing_run to use it, otherwise, to nothing. -AC_DEFUN([AM_MISSING_HAS_RUN], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -AC_REQUIRE_AUX_FILE([missing])dnl -if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac -fi -# Use eval to expand $SHELL -if eval "$MISSING --is-lightweight"; then - am_missing_run="$MISSING " -else - am_missing_run= - AC_MSG_WARN(['missing' script is too old or missing]) -fi -]) - -# Helper functions for option handling. -*- Autoconf -*- - -# Copyright (C) 2001-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_MANGLE_OPTION(NAME) -# ----------------------- -AC_DEFUN([_AM_MANGLE_OPTION], -[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) - -# _AM_SET_OPTION(NAME) -# -------------------- -# Set option NAME. Presently that only means defining a flag for this option. -AC_DEFUN([_AM_SET_OPTION], -[m4_define(_AM_MANGLE_OPTION([$1]), [1])]) - -# _AM_SET_OPTIONS(OPTIONS) -# ------------------------ -# OPTIONS is a space-separated list of Automake options. -AC_DEFUN([_AM_SET_OPTIONS], -[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) - -# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) -# ------------------------------------------- -# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. -AC_DEFUN([_AM_IF_OPTION], -[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) - -# Copyright (C) 1999-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_PROG_CC_C_O -# --------------- -# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC -# to automatically call this. -AC_DEFUN([_AM_PROG_CC_C_O], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -AC_REQUIRE_AUX_FILE([compile])dnl -AC_LANG_PUSH([C])dnl -AC_CACHE_CHECK( - [whether $CC understands -c and -o together], - [am_cv_prog_cc_c_o], - [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i]) -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -AC_LANG_POP([C])]) - -# For backward compatibility. -AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) - -# Copyright (C) 2001-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_RUN_LOG(COMMAND) -# ------------------- -# Run COMMAND, save the exit status in ac_status, and log it. -# (This has been adapted from Autoconf's _AC_RUN_LOG macro.) -AC_DEFUN([AM_RUN_LOG], -[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD - ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - (exit $ac_status); }]) - -# Check to make sure that the build environment is sane. -*- Autoconf -*- - -# Copyright (C) 1996-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_SANITY_CHECK -# --------------- -AC_DEFUN([AM_SANITY_CHECK], -[AC_MSG_CHECKING([whether build environment is sane]) -# Reject unsafe characters in $srcdir or the absolute working directory -# name. Accept space and tab only in the latter. -am_lf=' -' -case `pwd` in - *[[\\\"\#\$\&\'\`$am_lf]]*) - AC_MSG_ERROR([unsafe absolute working directory name]);; -esac -case $srcdir in - *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) - AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; -esac - -# Do 'set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - am_has_slept=no - for am_try in 1 2; do - echo "timestamp, slept: $am_has_slept" > conftest.file - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$[*]" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - if test "$[*]" != "X $srcdir/configure conftest.file" \ - && test "$[*]" != "X conftest.file $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken - alias in your environment]) - fi - if test "$[2]" = conftest.file || test $am_try -eq 2; then - break - fi - # Just in case. - sleep 1 - am_has_slept=yes - done - test "$[2]" = conftest.file - ) -then - # Ok. - : -else - AC_MSG_ERROR([newly created file is older than distributed files! -Check your system clock]) -fi -AC_MSG_RESULT([yes]) -# If we didn't sleep, we still need to ensure time stamps of config.status and -# generated files are strictly newer. -am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & - am_sleep_pid=$! -fi -AC_CONFIG_COMMANDS_PRE( - [AC_MSG_CHECKING([that generated files are newer than configure]) - if test -n "$am_sleep_pid"; then - # Hide warnings about reused PIDs. - wait $am_sleep_pid 2>/dev/null - fi - AC_MSG_RESULT([done])]) -rm -f conftest.file -]) - -# Copyright (C) 2009-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_SILENT_RULES([DEFAULT]) -# -------------------------- -# Enable less verbose build rules; with the default set to DEFAULT -# ("yes" being less verbose, "no" or empty being verbose). -AC_DEFUN([AM_SILENT_RULES], -[AC_ARG_ENABLE([silent-rules], [dnl -AS_HELP_STRING( - [--enable-silent-rules], - [less verbose build output (undo: "make V=1")]) -AS_HELP_STRING( - [--disable-silent-rules], - [verbose build output (undo: "make V=0")])dnl -]) -case $enable_silent_rules in @%:@ ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; -esac -dnl -dnl A few 'make' implementations (e.g., NonStop OS and NextStep) -dnl do not support nested variable expansions. -dnl See automake bug#9928 and bug#10237. -am_make=${MAKE-make} -AC_CACHE_CHECK([whether $am_make supports nested variables], - [am_cv_make_support_nested_variables], - [if AS_ECHO([['TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi]) -if test $am_cv_make_support_nested_variables = yes; then - dnl Using '$V' instead of '$(V)' breaks IRIX make. - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AC_SUBST([AM_V])dnl -AM_SUBST_NOTMAKE([AM_V])dnl -AC_SUBST([AM_DEFAULT_V])dnl -AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl -AC_SUBST([AM_DEFAULT_VERBOSITY])dnl -AM_BACKSLASH='\' -AC_SUBST([AM_BACKSLASH])dnl -_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl -]) - -# Copyright (C) 2001-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_INSTALL_STRIP -# --------------------- -# One issue with vendor 'install' (even GNU) is that you can't -# specify the program used to strip binaries. This is especially -# annoying in cross-compiling environments, where the build's strip -# is unlikely to handle the host's binaries. -# Fortunately install-sh will honor a STRIPPROG variable, so we -# always use install-sh in "make install-strip", and initialize -# STRIPPROG with the value of the STRIP variable (set by the user). -AC_DEFUN([AM_PROG_INSTALL_STRIP], -[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the 'STRIP' environment variable to overrule this program. -dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. -if test "$cross_compiling" != no; then - AC_CHECK_TOOL([STRIP], [strip], :) -fi -INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" -AC_SUBST([INSTALL_STRIP_PROGRAM])]) - -# Copyright (C) 2006-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_SUBST_NOTMAKE(VARIABLE) -# --------------------------- -# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. -# This macro is traced by Automake. -AC_DEFUN([_AM_SUBST_NOTMAKE]) - -# AM_SUBST_NOTMAKE(VARIABLE) -# -------------------------- -# Public sister of _AM_SUBST_NOTMAKE. -AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) - -# Check how to create a tarball. -*- Autoconf -*- - -# Copyright (C) 2004-2018 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_PROG_TAR(FORMAT) -# -------------------- -# Check how to create a tarball in format FORMAT. -# FORMAT should be one of 'v7', 'ustar', or 'pax'. -# -# Substitute a variable $(am__tar) that is a command -# writing to stdout a FORMAT-tarball containing the directory -# $tardir. -# tardir=directory && $(am__tar) > result.tar -# -# Substitute a variable $(am__untar) that extract such -# a tarball read from stdin. -# $(am__untar) < result.tar -# -AC_DEFUN([_AM_PROG_TAR], -[# Always define AMTAR for backward compatibility. Yes, it's still used -# in the wild :-( We should find a proper way to deprecate it ... -AC_SUBST([AMTAR], ['$${TAR-tar}']) - -# We'll loop over all known methods to create a tar archive until one works. -_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' - -m4_if([$1], [v7], - [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], - - [m4_case([$1], - [ustar], - [# The POSIX 1988 'ustar' format is defined with fixed-size fields. - # There is notably a 21 bits limit for the UID and the GID. In fact, - # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 - # and bug#13588). - am_max_uid=2097151 # 2^21 - 1 - am_max_gid=$am_max_uid - # The $UID and $GID variables are not portable, so we need to resort - # to the POSIX-mandated id(1) utility. Errors in the 'id' calls - # below are definitely unexpected, so allow the users to see them - # (that is, avoid stderr redirection). - am_uid=`id -u || echo unknown` - am_gid=`id -g || echo unknown` - AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) - if test $am_uid -le $am_max_uid; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - _am_tools=none - fi - AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) - if test $am_gid -le $am_max_gid; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - _am_tools=none - fi], - - [pax], - [], - - [m4_fatal([Unknown tar format])]) - - AC_MSG_CHECKING([how to create a $1 tar archive]) - - # Go ahead even if we have the value already cached. We do so because we - # need to set the values for the 'am__tar' and 'am__untar' variables. - _am_tools=${am_cv_prog_tar_$1-$_am_tools} - - for _am_tool in $_am_tools; do - case $_am_tool in - gnutar) - for _am_tar in tar gnutar gtar; do - AM_RUN_LOG([$_am_tar --version]) && break - done - am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' - am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' - am__untar="$_am_tar -xf -" - ;; - plaintar) - # Must skip GNU tar: if it does not support --format= it doesn't create - # ustar tarball either. - (tar --version) >/dev/null 2>&1 && continue - am__tar='tar chf - "$$tardir"' - am__tar_='tar chf - "$tardir"' - am__untar='tar xf -' - ;; - pax) - am__tar='pax -L -x $1 -w "$$tardir"' - am__tar_='pax -L -x $1 -w "$tardir"' - am__untar='pax -r' - ;; - cpio) - am__tar='find "$$tardir" -print | cpio -o -H $1 -L' - am__tar_='find "$tardir" -print | cpio -o -H $1 -L' - am__untar='cpio -i -H $1 -d' - ;; - none) - am__tar=false - am__tar_=false - am__untar=false - ;; - esac - - # If the value was cached, stop now. We just wanted to have am__tar - # and am__untar set. - test -n "${am_cv_prog_tar_$1}" && break - - # tar/untar a dummy directory, and stop if the command works. - rm -rf conftest.dir - mkdir conftest.dir - echo GrepMe > conftest.dir/file - AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) - rm -rf conftest.dir - if test -s conftest.tar; then - AM_RUN_LOG([$am__untar <conftest.tar]) - AM_RUN_LOG([cat conftest.dir/file]) - grep GrepMe conftest.dir/file >/dev/null 2>&1 && break - fi - done - rm -rf conftest.dir - - AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) - AC_MSG_RESULT([$am_cv_prog_tar_$1])]) - -AC_SUBST([am__tar]) -AC_SUBST([am__untar]) -]) # _AM_PROG_TAR - -m4_include([../../m4/kpse-common.m4]) -m4_include([../../m4/kpse-dll-name.m4]) -m4_include([../../m4/kpse-largefile.m4]) -m4_include([../../m4/kpse-lib-version.m4]) -m4_include([../../m4/kpse-lua52-flags.m4]) -m4_include([../../m4/kpse-warnings.m4]) -m4_include([../../m4/kpse-win32.m4]) -m4_include([../../m4/libtool.m4]) -m4_include([../../m4/ltoptions.m4]) -m4_include([../../m4/ltsugar.m4]) -m4_include([../../m4/ltversion.m4]) -m4_include([../../m4/lt~obsolete.m4]) diff --git a/source/libs/lua52/config.h.in b/source/libs/lua52/config.h.in deleted file mode 100644 index 0aa075a8f..000000000 --- a/source/libs/lua52/config.h.in +++ /dev/null @@ -1,81 +0,0 @@ -/* config.h.in. Generated from configure.ac by autoheader. */ - -/* Define to 1 if you have the <dlfcn.h> header file. */ -#undef HAVE_DLFCN_H - -/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ -#undef HAVE_FSEEKO - -/* Define to 1 if you have the <inttypes.h> header file. */ -#undef HAVE_INTTYPES_H - -/* Define to 1 if you have the <memory.h> header file. */ -#undef HAVE_MEMORY_H - -/* Define to 1 if you have the <stdint.h> header file. */ -#undef HAVE_STDINT_H - -/* Define to 1 if you have the <stdlib.h> header file. */ -#undef HAVE_STDLIB_H - -/* Define to 1 if you have the <strings.h> header file. */ -#undef HAVE_STRINGS_H - -/* Define to 1 if you have the <string.h> header file. */ -#undef HAVE_STRING_H - -/* Define to 1 if you have the <sys/stat.h> header file. */ -#undef HAVE_SYS_STAT_H - -/* Define to 1 if you have the <sys/types.h> header file. */ -#undef HAVE_SYS_TYPES_H - -/* Define to 1 if you have the <unistd.h> header file. */ -#undef HAVE_UNISTD_H - -/* Define to the sub-directory where libtool stores uninstalled libraries. */ -#undef LT_OBJDIR - -/* Name of package */ -#undef PACKAGE - -/* Define to the address where bug reports for this package should be sent. */ -#undef PACKAGE_BUGREPORT - -/* Define to the full name of this package. */ -#undef PACKAGE_NAME - -/* Define to the full name and version of this package. */ -#undef PACKAGE_STRING - -/* Define to the one symbol short name of this package. */ -#undef PACKAGE_TARNAME - -/* Define to the home page for this package. */ -#undef PACKAGE_URL - -/* Define to the version of this package. */ -#undef PACKAGE_VERSION - -/* The size of `void *', as computed by sizeof. */ -#undef SIZEOF_VOID_P - -/* Define to 1 if you have the ANSI C header files. */ -#undef STDC_HEADERS - -/* Version number of package */ -#undef VERSION - -/* Enable large inode numbers on Mac OS X 10.5. */ -#ifndef _DARWIN_USE_64_BIT_INODE -# define _DARWIN_USE_64_BIT_INODE 1 -#endif - -/* Number of bits in a file offset, on hosts where this is settable. */ -#undef _FILE_OFFSET_BITS - -/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ -#undef _LARGEFILE_SOURCE - -/* Define for large files, on AIX-style hosts. */ -#undef _LARGE_FILES diff --git a/source/libs/lua52/configure b/source/libs/lua52/configure deleted file mode 100755 index f576aed1a..000000000 --- a/source/libs/lua52/configure +++ /dev/null @@ -1,16136 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for lua52 (TeX Live) 5.2.4. -# -# Report bugs to <tex-k@tug.org>. -# -# -# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. -# -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -# Use a proper internal environment variable to ensure we don't fall - # into an infinite loop, continuously re-executing ourselves. - if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then - _as_can_reexec=no; export _as_can_reexec; - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -as_fn_exit 255 - fi - # We don't want this to propagate to other subprocesses. - { _as_can_reexec=; unset _as_can_reexec;} -if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else - case \`(set -o) 2>/dev/null\` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi -" - as_required="as_fn_return () { (exit \$1); } -as_fn_success () { as_fn_return 0; } -as_fn_failure () { as_fn_return 1; } -as_fn_ret_success () { return 0; } -as_fn_ret_failure () { return 1; } - -exitcode=0 -as_fn_success || { exitcode=1; echo as_fn_success failed.; } -as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } -as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } -as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } -if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : - -else - exitcode=1; echo positional parameters were not saved. -fi -test x\$exitcode = x0 || exit 1 -test -x / || exit 1" - as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO - as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO - eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && - test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 - - test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( - ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' - ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO - ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO - PATH=/empty FPATH=/empty; export PATH FPATH - test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ - || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 -test \$(( 1 + 1 )) = 2 || exit 1" - if (eval "$as_required") 2>/dev/null; then : - as_have_required=yes -else - as_have_required=no -fi - if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : - -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -as_found=false -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - as_found=: - case $as_dir in #( - /*) - for as_base in sh bash ksh sh5; do - # Try only shells that exist, to save several forks. - as_shell=$as_dir/$as_base - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : - CONFIG_SHELL=$as_shell as_have_required=yes - if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : - break 2 -fi -fi - done;; - esac - as_found=false -done -$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : - CONFIG_SHELL=$SHELL as_have_required=yes -fi; } -IFS=$as_save_IFS - - - if test "x$CONFIG_SHELL" != x; then : - export CONFIG_SHELL - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -exit 255 -fi - - if test x$as_have_required = xno; then : - $as_echo "$0: This script requires a shell more modern than all" - $as_echo "$0: the shells that I found on your system." - if test x${ZSH_VERSION+set} = xset ; then - $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" - $as_echo "$0: be upgraded to zsh 4.3.4 or later." - else - $as_echo "$0: Please tell bug-autoconf@gnu.org and tex-k@tug.org -$0: about your system, including any error possibly output -$0: before this message. Then install a modern shell, or -$0: manually run the script under such a shell if you do -$0: have one." - fi - exit 1 -fi -fi -fi -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -# Unset more variables known to interfere with behavior of common tools. -CLICOLOR_FORCE= GREP_OPTIONS= -unset CLICOLOR_FORCE GREP_OPTIONS - -## --------------------- ## -## M4sh Shell Functions. ## -## --------------------- ## -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - - - as_lineno_1=$LINENO as_lineno_1a=$LINENO - as_lineno_2=$LINENO as_lineno_2a=$LINENO - eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && - test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { - # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - - # If we had to re-execute with $CONFIG_SHELL, we're ensured to have - # already done that, so ensure we don't try to do so again and fall - # in an infinite loop. This has already happened in practice. - _as_can_reexec=no; export _as_can_reexec - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - -SHELL=${CONFIG_SHELL-/bin/sh} - - -test -n "$DJDIR" || exec 7<&0 </dev/null -exec 6>&1 - -# Name of the host. -# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_clean_files= -ac_config_libobj_dir=. -LIBOBJS= -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= - -# Identity of this package. -PACKAGE_NAME='lua52 (TeX Live)' -PACKAGE_TARNAME='lua52--tex-live-' -PACKAGE_VERSION='5.2.4' -PACKAGE_STRING='lua52 (TeX Live) 5.2.4' -PACKAGE_BUGREPORT='tex-k@tug.org' -PACKAGE_URL='' - -ac_unique_file="lua52-src/src/lua.c" -# Factoring default headers for most tests. -ac_includes_default="\ -#include <stdio.h> -#ifdef HAVE_SYS_TYPES_H -# include <sys/types.h> -#endif -#ifdef HAVE_SYS_STAT_H -# include <sys/stat.h> -#endif -#ifdef STDC_HEADERS -# include <stdlib.h> -# include <stddef.h> -#else -# ifdef HAVE_STDLIB_H -# include <stdlib.h> -# endif -#endif -#ifdef HAVE_STRING_H -# if !defined STDC_HEADERS && defined HAVE_MEMORY_H -# include <memory.h> -# endif -# include <string.h> -#endif -#ifdef HAVE_STRINGS_H -# include <strings.h> -#endif -#ifdef HAVE_INTTYPES_H -# include <inttypes.h> -#endif -#ifdef HAVE_STDINT_H -# include <stdint.h> -#endif -#ifdef HAVE_UNISTD_H -# include <unistd.h> -#endif" - -ac_subst_vars='am__EXEEXT_FALSE -am__EXEEXT_TRUE -LTLIBOBJS -LIBOBJS -LUA52_TREE -LUA52_DEFINES -build_FALSE -build_TRUE -CPP -LT_SYS_LIBRARY_PATH -OTOOL64 -OTOOL -LIPO -NMEDIT -DSYMUTIL -MANIFEST_TOOL -ac_ct_AR -AR -NM -ac_ct_DUMPBIN -DUMPBIN -LD -FGREP -EGREP -GREP -SED -host_os -host_vendor -host_cpu -host -build_os -build_vendor -build_cpu -build -LIBTOOL -OBJDUMP -DLLTOOL -AS -LUA52_LT_VERSINFO -LUA52VERSION -LN_S -RANLIB -WARNING_CFLAGS -am__fastdepCC_FALSE -am__fastdepCC_TRUE -CCDEPMODE -am__nodep -AMDEPBACKSLASH -AMDEP_FALSE -AMDEP_TRUE -am__include -DEPDIR -OBJEXT -EXEEXT -ac_ct_CC -CPPFLAGS -LDFLAGS -CFLAGS -CC -MAINT -MAINTAINER_MODE_FALSE -MAINTAINER_MODE_TRUE -AM_BACKSLASH -AM_DEFAULT_VERBOSITY -AM_DEFAULT_V -AM_V -am__untar -am__tar -AMTAR -am__leading_dot -SET_MAKE -AWK -mkdir_p -MKDIR_P -INSTALL_STRIP_PROGRAM -STRIP -install_sh -MAKEINFO -AUTOHEADER -AUTOMAKE -AUTOCONF -ACLOCAL -VERSION -PACKAGE -CYGPATH_W -am__isrc -INSTALL_DATA -INSTALL_SCRIPT -INSTALL_PROGRAM -target_alias -host_alias -build_alias -LIBS -ECHO_T -ECHO_N -ECHO_C -DEFS -mandir -localedir -libdir -psdir -pdfdir -dvidir -htmldir -infodir -docdir -oldincludedir -includedir -localstatedir -sharedstatedir -sysconfdir -datadir -datarootdir -libexecdir -sbindir -bindir -program_transform_name -prefix -exec_prefix -PACKAGE_URL -PACKAGE_BUGREPORT -PACKAGE_STRING -PACKAGE_VERSION -PACKAGE_TARNAME -PACKAGE_NAME -PATH_SEPARATOR -SHELL -am__quote' -ac_subst_files='' -ac_user_opts=' -enable_option_checking -enable_silent_rules -enable_maintainer_mode -enable_dependency_tracking -enable_compiler_warnings -enable_shared -enable_static -with_pic -enable_fast_install -with_aix_soname -with_gnu_ld -with_sysroot -enable_libtool_lock -enable_largefile -' - ac_precious_vars='build_alias -host_alias -target_alias -CC -CFLAGS -LDFLAGS -LIBS -CPPFLAGS -LT_SYS_LIBRARY_PATH -CPP' - - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -ac_unrecognized_opts= -ac_unrecognized_sep= -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -# (The list follows the same order as the GNU Coding Standards.) -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datarootdir='${prefix}/share' -datadir='${datarootdir}' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -includedir='${prefix}/include' -oldincludedir='/usr/include' -docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -infodir='${datarootdir}/info' -htmldir='${docdir}' -dvidir='${docdir}' -pdfdir='${docdir}' -psdir='${docdir}' -libdir='${exec_prefix}/lib' -localedir='${datarootdir}/locale' -mandir='${datarootdir}/man' - -ac_prev= -ac_dashdash= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval $ac_prev=\$ac_option - ac_prev= - continue - fi - - case $ac_option in - *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *=) ac_optarg= ;; - *) ac_optarg=yes ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_dashdash$ac_option in - --) - ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=*) - datadir=$ac_optarg ;; - - -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ - | --dataroo | --dataro | --datar) - ac_prev=datarootdir ;; - -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ - | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) - datarootdir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=no ;; - - -docdir | --docdir | --docdi | --doc | --do) - ac_prev=docdir ;; - -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) - docdir=$ac_optarg ;; - - -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) - ac_prev=dvidir ;; - -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) - dvidir=$ac_optarg ;; - - -enable-* | --enable-*) - ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) - ac_prev=htmldir ;; - -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ - | --ht=*) - htmldir=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localedir | --localedir | --localedi | --localed | --locale) - ac_prev=localedir ;; - -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) - localedir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) - ac_prev=pdfdir ;; - -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) - pdfdir=$ac_optarg ;; - - -psdir | --psdir | --psdi | --psd | --ps) - ac_prev=psdir ;; - -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) - psdir=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=\$ac_optarg ;; - - -without-* | --without-*) - ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=no ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) as_fn_error $? "unrecognized option: \`$ac_option' -Try \`$0 --help' for more information" - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - case $ac_envvar in #( - '' | [0-9]* | *[!_$as_cr_alnum]* ) - as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; - esac - eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - as_fn_error $? "missing argument to $ac_option" -fi - -if test -n "$ac_unrecognized_opts"; then - case $enable_option_checking in - no) ;; - fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; - *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; - esac -fi - -# Check all directory arguments for consistency. -for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ - datadir sysconfdir sharedstatedir localstatedir includedir \ - oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir -do - eval ac_val=\$$ac_var - # Remove trailing slashes. - case $ac_val in - */ ) - ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` - eval $ac_var=\$ac_val;; - esac - # Be sure to have absolute directory names. - case $ac_val in - [\\/$]* | ?:[\\/]* ) continue;; - NONE | '' ) case $ac_var in *prefix ) continue;; esac;; - esac - as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -ac_pwd=`pwd` && test -n "$ac_pwd" && -ac_ls_di=`ls -di .` && -ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - as_fn_error $? "working directory cannot be determined" -test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - as_fn_error $? "pwd does not report name of working directory" - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then the parent directory. - ac_confdir=`$as_dirname -- "$as_myself" || -$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_myself" : 'X\(//\)[^/]' \| \ - X"$as_myself" : 'X\(//\)$' \| \ - X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_myself" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r "$srcdir/$ac_unique_file"; then - test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" -fi -ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" -ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" - pwd)` -# When building in place, set srcdir=. -if test "$ac_abs_confdir" = "$ac_pwd"; then - srcdir=. -fi -# Remove unnecessary trailing slashes from srcdir. -# Double slashes in file names in object file debugging info -# mess up M-x gdb in Emacs. -case $srcdir in -*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; -esac -for ac_var in $ac_precious_vars; do - eval ac_env_${ac_var}_set=\${${ac_var}+set} - eval ac_env_${ac_var}_value=\$${ac_var} - eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} - eval ac_cv_env_${ac_var}_value=\$${ac_var} -done - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures lua52 (TeX Live) 5.2.4 to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking ...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] - --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --infodir=DIR info documentation [DATAROOTDIR/info] - --localedir=DIR locale-dependent data [DATAROOTDIR/locale] - --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root - [DATAROOTDIR/doc/lua52--tex-live-] - --htmldir=DIR html documentation [DOCDIR] - --dvidir=DIR dvi documentation [DOCDIR] - --pdfdir=DIR pdf documentation [DOCDIR] - --psdir=DIR ps documentation [DOCDIR] -_ACEOF - - cat <<\_ACEOF - -Program names: - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM run sed PROGRAM on installed program names - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -_ACEOF -fi - -if test -n "$ac_init_help"; then - case $ac_init_help in - short | recursive ) echo "Configuration of lua52 (TeX Live) 5.2.4:";; - esac - cat <<\_ACEOF - -Optional Features: - --disable-option-checking ignore unrecognized --enable/--with options - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-silent-rules less verbose build output (undo: "make V=1") - --disable-silent-rules verbose build output (undo: "make V=0") - --enable-maintainer-mode - enable make rules and dependencies not useful (and - sometimes confusing) to the casual installer - --enable-dependency-tracking - do not reject slow dependency extractors - --disable-dependency-tracking - speeds up one-time build - --enable-compiler-warnings=[no|min|yes|max|all] - Turn on compiler warnings [default: yes if - maintainer-mode, min otherwise] - --enable-shared[=PKGS] build shared libraries [default=yes] - --enable-static[=PKGS] build static libraries [default=yes] - --enable-fast-install[=PKGS] - optimize for fast installation [default=yes] - --disable-libtool-lock avoid locking (might break parallel builds) - --disable-largefile omit support for large files - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use - both] - --with-aix-soname=aix|svr4|both - shared library versioning (aka "SONAME") variant to - provide on AIX, [default=aix]. - --with-gnu-ld assume the C compiler uses GNU ld [default=no] - --with-sysroot[=DIR] Search for dependent libraries within DIR (or the - compiler's sysroot if not specified). - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a - nonstandard directory <lib dir> - LIBS libraries to pass to the linker, e.g. -l<library> - CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if - you have headers in a nonstandard directory <include dir> - LT_SYS_LIBRARY_PATH - User-defined run-time library search path. - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -Report bugs to <tex-k@tug.org>. -_ACEOF -ac_status=$? -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d "$ac_dir" || - { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || - continue - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - cd "$ac_dir" || { ac_status=$?; continue; } - # Check for guested configure. - if test -f "$ac_srcdir/configure.gnu"; then - echo && - $SHELL "$ac_srcdir/configure.gnu" --help=recursive - elif test -f "$ac_srcdir/configure"; then - echo && - $SHELL "$ac_srcdir/configure" --help=recursive - else - $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi || ac_status=$? - cd "$ac_pwd" || { ac_status=$?; break; } - done -fi - -test -n "$ac_init_help" && exit $ac_status -if $ac_init_version; then - cat <<\_ACEOF -lua52 (TeX Live) configure 5.2.4 -generated by GNU Autoconf 2.69 - -Copyright (C) 2012 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit -fi - -## ------------------------ ## -## Autoconf initialization. ## -## ------------------------ ## - -# ac_fn_c_try_compile LINENO -# -------------------------- -# Try to compile conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext - if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_compile - -# ac_fn_c_try_link LINENO -# ----------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_link () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext conftest$ac_exeext - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - test -x conftest$ac_exeext - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information - # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would - # interfere with the next link command; also delete a directory that is - # left behind by Apple's compiler. We do this before executing the actions. - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_link - -# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists and can be compiled using the include files in -# INCLUDES, setting the cache variable VAR accordingly. -ac_fn_c_check_header_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$3=yes" -else - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_compile - -# ac_fn_c_try_cpp LINENO -# ---------------------- -# Try to preprocess conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_cpp () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } > conftest.i && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_cpp - -# ac_fn_c_try_run LINENO -# ---------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes -# that executables *can* be run. -ac_fn_c_try_run () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then : - ac_retval=0 -else - $as_echo "$as_me: program exited with status $ac_status" >&5 - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=$ac_status -fi - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_run - -# ac_fn_c_check_func LINENO FUNC VAR -# ---------------------------------- -# Tests whether FUNC exists, setting the cache variable VAR accordingly -ac_fn_c_check_func () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Define $2 to an innocuous variant, in case <limits.h> declares $2. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define $2 innocuous_$2 - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $2 (); below. - Prefer <limits.h> to <assert.h> if __STDC__ is defined, since - <limits.h> exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include <limits.h> -#else -# include <assert.h> -#endif - -#undef $2 - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $2 (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$2 || defined __stub___$2 -choke me -#endif - -int -main () -{ -return $2 (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - eval "$3=yes" -else - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_func - -# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES -# -------------------------------------------- -# Tries to find the compile-time value of EXPR in a program that includes -# INCLUDES, setting VAR accordingly. Returns whether the value could be -# computed -ac_fn_c_compute_int () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main () -{ -static int test_array [1 - 2 * !(($2) >= 0)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_lo=0 ac_mid=0 - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main () -{ -static int test_array [1 - 2 * !(($2) <= $ac_mid)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_hi=$ac_mid; break -else - as_fn_arith $ac_mid + 1 && ac_lo=$as_val - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main () -{ -static int test_array [1 - 2 * !(($2) < 0)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_hi=-1 ac_mid=-1 - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main () -{ -static int test_array [1 - 2 * !(($2) >= $ac_mid)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_lo=$ac_mid; break -else - as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - ac_lo= ac_hi= -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main () -{ -static int test_array [1 - 2 * !(($2) <= $ac_mid)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_hi=$ac_mid -else - as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in #(( -?*) eval "$3=\$ac_lo"; ac_retval=0 ;; -'') ac_retval=1 ;; -esac - else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -static long int longval () { return $2; } -static unsigned long int ulongval () { return $2; } -#include <stdio.h> -#include <stdlib.h> -int -main () -{ - - FILE *f = fopen ("conftest.val", "w"); - if (! f) - return 1; - if (($2) < 0) - { - long int i = longval (); - if (i != ($2)) - return 1; - fprintf (f, "%ld", i); - } - else - { - unsigned long int i = ulongval (); - if (i != ($2)) - return 1; - fprintf (f, "%lu", i); - } - /* Do not output a trailing newline, as this causes \r\n confusion - on some platforms. */ - return ferror (f) || fclose (f) != 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - echo >>conftest.val; read $3 <conftest.val; ac_retval=0 -else - ac_retval=1 -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -rm -f conftest.val - - fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_compute_int -cat >config.log <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by lua52 (TeX Live) $as_me 5.2.4, which was -generated by GNU Autoconf 2.69. Invocation command line was - - $ $0 $@ - -_ACEOF -exec 5>>config.log -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" - done -IFS=$as_save_IFS - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *\'*) - ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; - 2) - as_fn_append ac_configure_args1 " '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - as_fn_append ac_configure_args " '$ac_arg'" - ;; - esac - done -done -{ ac_configure_args0=; unset ac_configure_args0;} -{ ac_configure_args1=; unset ac_configure_args1;} - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Use '\'' to represent an apostrophe within the trap. -# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - $as_echo "## ---------------- ## -## Cache variables. ## -## ---------------- ##" - echo - # The following way of writing the cache mishandles newlines in values, -( - for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - (set) 2>&1 | - case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - sed -n \ - "s/'\''/'\''\\\\'\'''\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" - ;; #( - *) - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) - echo - - $as_echo "## ----------------- ## -## Output variables. ## -## ----------------- ##" - echo - for ac_var in $ac_subst_vars - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - $as_echo "## ------------------- ## -## File substitutions. ## -## ------------------- ##" - echo - for ac_var in $ac_subst_files - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - fi - - if test -s confdefs.h; then - $as_echo "## ----------- ## -## confdefs.h. ## -## ----------- ##" - echo - cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - $as_echo "$as_me: caught signal $ac_signal" - $as_echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core core.conftest.* && - rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -f -r conftest* confdefs.h - -$as_echo "/* confdefs.h */" > confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_URL "$PACKAGE_URL" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer an explicitly selected file to automatically selected ones. -ac_site_file1=NONE -ac_site_file2=NONE -if test -n "$CONFIG_SITE"; then - # We do not want a PATH search for config.site. - case $CONFIG_SITE in #(( - -*) ac_site_file1=./$CONFIG_SITE;; - */*) ac_site_file1=$CONFIG_SITE;; - *) ac_site_file1=./$CONFIG_SITE;; - esac -elif test "x$prefix" != xNONE; then - ac_site_file1=$prefix/share/config.site - ac_site_file2=$prefix/etc/config.site -else - ac_site_file1=$ac_default_prefix/share/config.site - ac_site_file2=$ac_default_prefix/etc/config.site -fi -for ac_site_file in "$ac_site_file1" "$ac_site_file2" -do - test "x$ac_site_file" = xNONE && continue - if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 -$as_echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" \ - || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "failed to load site script $ac_site_file -See \`config.log' for more details" "$LINENO" 5; } - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special files - # actually), so we avoid doing that. DJGPP emulates it as a regular file. - if test /dev/null != "$cache_file" && test -f "$cache_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 -$as_echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . "$cache_file";; - *) . "./$cache_file";; - esac - fi -else - { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 -$as_echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in $ac_precious_vars; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val=\$ac_cv_env_${ac_var}_value - eval ac_new_val=\$ac_env_${ac_var}_value - case $ac_old_set,$ac_new_set in - set,) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - # differences in whitespace do not lead to failure. - ac_old_val_w=`echo x $ac_old_val` - ac_new_val_w=`echo x $ac_new_val` - if test "$ac_old_val_w" != "$ac_new_val_w"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 -$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - ac_cache_corrupted=: - else - { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 -$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} - eval $ac_var=\$ac_old_val - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 -$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 -$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) as_fn_append ac_configure_args " '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 -$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 -fi -## -------------------- ## -## Main body of script. ## -## -------------------- ## - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - -ac_aux_dir= -for ac_dir in ../../build-aux "$srcdir"/../../build-aux; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi -done -if test -z "$ac_aux_dir"; then - as_fn_error $? "cannot find install-sh, install.sh, or shtool in ../../build-aux \"$srcdir\"/../../build-aux" "$LINENO" 5 -fi - -# These three variables are undocumented and unsupported, -# and are intended to be withdrawn in a future Autoconf release. -# They can cause serious problems if a builder's source tree is in a directory -# whose full name contains unusual characters. -ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. -ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. -ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. - - - - -am__api_version='1.16' - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -# Reject install programs that cannot install multiple files. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 -$as_echo_n "checking for a BSD-compatible install... " >&6; } -if test -z "$INSTALL"; then -if ${ac_cv_path_install+:} false; then : - $as_echo_n "(cached) " >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in #(( - ./ | .// | /[cC]/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - rm -rf conftest.one conftest.two conftest.dir - echo one > conftest.one - echo two > conftest.two - mkdir conftest.dir - if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && - test -s conftest.one && test -s conftest.two && - test -s conftest.dir/conftest.one && - test -s conftest.dir/conftest.two - then - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - fi - done - done - ;; -esac - - done -IFS=$as_save_IFS - -rm -rf conftest.one conftest.two conftest.dir - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. Don't cache a - # value for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - INSTALL=$ac_install_sh - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 -$as_echo "$INSTALL" >&6; } - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 -$as_echo_n "checking whether build environment is sane... " >&6; } -# Reject unsafe characters in $srcdir or the absolute working directory -# name. Accept space and tab only in the latter. -am_lf=' -' -case `pwd` in - *[\\\"\#\$\&\'\`$am_lf]*) - as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; -esac -case $srcdir in - *[\\\"\#\$\&\'\`$am_lf\ \ ]*) - as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; -esac - -# Do 'set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - am_has_slept=no - for am_try in 1 2; do - echo "timestamp, slept: $am_has_slept" > conftest.file - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$*" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - if test "$*" != "X $srcdir/configure conftest.file" \ - && test "$*" != "X conftest.file $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - as_fn_error $? "ls -t appears to fail. Make sure there is not a broken - alias in your environment" "$LINENO" 5 - fi - if test "$2" = conftest.file || test $am_try -eq 2; then - break - fi - # Just in case. - sleep 1 - am_has_slept=yes - done - test "$2" = conftest.file - ) -then - # Ok. - : -else - as_fn_error $? "newly created file is older than distributed files! -Check your system clock" "$LINENO" 5 -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -# If we didn't sleep, we still need to ensure time stamps of config.status and -# generated files are strictly newer. -am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & - am_sleep_pid=$! -fi - -rm -f conftest.file - -test "$program_prefix" != NONE && - program_transform_name="s&^&$program_prefix&;$program_transform_name" -# Use a double $ so make ignores it. -test "$program_suffix" != NONE && - program_transform_name="s&\$&$program_suffix&;$program_transform_name" -# Double any \ or $. -# By default was `s,x,x', remove it if useless. -ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' -program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` - -# Expand $ac_aux_dir to an absolute path. -am_aux_dir=`cd "$ac_aux_dir" && pwd` - -if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac -fi -# Use eval to expand $SHELL -if eval "$MISSING --is-lightweight"; then - am_missing_run="$MISSING " -else - am_missing_run= - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 -$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} -fi - -if test x"${install_sh+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; - *) - install_sh="\${SHELL} $am_aux_dir/install-sh" - esac -fi - -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the 'STRIP' environment variable to overrule this program. -if test "$cross_compiling" != no; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 -$as_echo "$STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 -$as_echo "$ac_ct_STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_STRIP" = x; then - STRIP=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - STRIP=$ac_ct_STRIP - fi -else - STRIP="$ac_cv_prog_STRIP" -fi - -fi -INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 -$as_echo_n "checking for a thread-safe mkdir -p... " >&6; } -if test -z "$MKDIR_P"; then - if ${ac_cv_path_mkdir+:} false; then : - $as_echo_n "(cached) " >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in mkdir gmkdir; do - for ac_exec_ext in '' $ac_executable_extensions; do - as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue - case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( - 'mkdir (GNU coreutils) '* | \ - 'mkdir (coreutils) '* | \ - 'mkdir (fileutils) '4.1*) - ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext - break 3;; - esac - done - done - done -IFS=$as_save_IFS - -fi - - test -d ./--version && rmdir ./--version - if test "${ac_cv_path_mkdir+set}" = set; then - MKDIR_P="$ac_cv_path_mkdir -p" - else - # As a last resort, use the slow shell script. Don't cache a - # value for MKDIR_P within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - MKDIR_P="$ac_install_sh -d" - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 -$as_echo "$MKDIR_P" >&6; } - -for ac_prog in gawk mawk nawk awk -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AWK+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$AWK"; then - ac_cv_prog_AWK="$AWK" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AWK="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -AWK=$ac_cv_prog_AWK -if test -n "$AWK"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 -$as_echo "$AWK" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$AWK" && break -done - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } -set x ${MAKE-make} -ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat >conftest.make <<\_ACEOF -SHELL = /bin/sh -all: - @echo '@@@%%%=$(MAKE)=@@@%%%' -_ACEOF -# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. -case `${MAKE-make} -f conftest.make 2>/dev/null` in - *@@@%%%=?*=@@@%%%*) - eval ac_cv_prog_make_${ac_make}_set=yes;; - *) - eval ac_cv_prog_make_${ac_make}_set=no;; -esac -rm -f conftest.make -fi -if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - SET_MAKE= -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - SET_MAKE="MAKE=${MAKE-make}" -fi - -rm -rf .tst 2>/dev/null -mkdir .tst 2>/dev/null -if test -d .tst; then - am__leading_dot=. -else - am__leading_dot=_ -fi -rmdir .tst 2>/dev/null - -# Check whether --enable-silent-rules was given. -if test "${enable_silent_rules+set}" = set; then : - enableval=$enable_silent_rules; -fi - -case $enable_silent_rules in # ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=1;; -esac -am_make=${MAKE-make} -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 -$as_echo_n "checking whether $am_make supports nested variables... " >&6; } -if ${am_cv_make_support_nested_variables+:} false; then : - $as_echo_n "(cached) " >&6 -else - if $as_echo 'TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 -$as_echo "$am_cv_make_support_nested_variables" >&6; } -if test $am_cv_make_support_nested_variables = yes; then - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AM_BACKSLASH='\' - -DEPDIR="${am__leading_dot}deps" - -ac_config_commands="$ac_config_commands depfiles" - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5 -$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; } -cat > confinc.mk << 'END' -am__doit: - @echo this is the am__doit target >confinc.out -.PHONY: am__doit -END -am__include="#" -am__quote= -# BSD make does it like this. -echo '.include "confinc.mk" # ignored' > confmf.BSD -# Other make implementations (GNU, Solaris 10, AIX) do it like this. -echo 'include confinc.mk # ignored' > confmf.GNU -_am_result=no -for s in GNU BSD; do - { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5 - (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - case $?:`cat confinc.out 2>/dev/null` in #( - '0:this is the am__doit target') : - case $s in #( - BSD) : - am__include='.include' am__quote='"' ;; #( - *) : - am__include='include' am__quote='' ;; -esac ;; #( - *) : - ;; -esac - if test "$am__include" != "#"; then - _am_result="yes ($s style)" - break - fi -done -rm -f confinc.* confmf.* -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5 -$as_echo "${_am_result}" >&6; } - -# Check whether --enable-dependency-tracking was given. -if test "${enable_dependency_tracking+set}" = set; then : - enableval=$enable_dependency_tracking; -fi - -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' - am__nodep='_no' -fi - if test "x$enable_dependency_tracking" != xno; then - AMDEP_TRUE= - AMDEP_FALSE='#' -else - AMDEP_TRUE='#' - AMDEP_FALSE= -fi - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - fi -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl.exe - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl.exe -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_CC" && break -done - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -fi - -fi - - -test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5; } - -# Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 -$as_echo_n "checking whether the C compiler works... " >&6; } -ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` - -# The possible output files: -ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" - -ac_rmfiles= -for ac_file in $ac_files -do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - * ) ac_rmfiles="$ac_rmfiles $ac_file";; - esac -done -rm -f $ac_rmfiles - -if { { ac_try="$ac_link_default" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link_default") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. -# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' -# in a Makefile. We should not override ac_cv_exeext if it was cached, -# so that the user can short-circuit this test for compilers unknown to -# Autoconf. -for ac_file in $ac_files '' -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; - then :; else - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - fi - # We set ac_cv_exeext here because the later test for it is not - # safe: cross compilers may not add the suffix if given an `-o' - # argument, so we may need to know it at that point already. - # Even if this section looks crufty: it has the advantage of - # actually working. - break;; - * ) - break;; - esac -done -test "$ac_cv_exeext" = no && ac_cv_exeext= - -else - ac_file='' -fi -if test -z "$ac_file"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -$as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "C compiler cannot create executables -See \`config.log' for more details" "$LINENO" 5; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 -$as_echo_n "checking for C compiler default output file name... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 -$as_echo "$ac_file" >&6; } -ac_exeext=$ac_cv_exeext - -rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 -$as_echo_n "checking for suffix of executables... " >&6; } -if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - break;; - * ) break;; - esac -done -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest conftest$ac_cv_exeext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 -$as_echo "$ac_cv_exeext" >&6; } - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdio.h> -int -main () -{ -FILE *f = fopen ("conftest.out", "w"); - return ferror (f) || fclose (f) != 0; - - ; - return 0; -} -_ACEOF -ac_clean_files="$ac_clean_files conftest.out" -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 -$as_echo_n "checking whether we are cross compiling... " >&6; } -if test "$cross_compiling" != yes; then - { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if { ac_try='./conftest$ac_cv_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details" "$LINENO" 5; } - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 -$as_echo "$cross_compiling" >&6; } - -rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out -ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 -$as_echo_n "checking for suffix of object files... " >&6; } -if ${ac_cv_objext+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - for ac_file in conftest.o conftest.obj conftest.*; do - test -f "$ac_file" || continue; - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of object files: cannot compile -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 -$as_echo "$ac_cv_objext" >&6; } -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 -$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if ${ac_cv_c_compiler_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_compiler_gnu=yes -else - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 -$as_echo "$ac_cv_c_compiler_gnu" >&6; } -if test $ac_compiler_gnu = yes; then - GCC=yes -else - GCC= -fi -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 -$as_echo_n "checking whether $CC accepts -g... " >&6; } -if ${ac_cv_prog_cc_g+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_save_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -else - CFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - ac_c_werror_flag=$ac_save_c_werror_flag - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 -$as_echo "$ac_cv_prog_cc_g" >&6; } -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 -$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if ${ac_cv_prog_cc_c89+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_prog_cc_c89=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdarg.h> -#include <stdio.h> -struct stat; -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters - inside strings and character constants. */ -#define FOO(x) 'x' -int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ - -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_c89=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext - test "x$ac_cv_prog_cc_c89" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC - -fi -# AC_CACHE_VAL -case "x$ac_cv_prog_cc_c89" in - x) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -$as_echo "none needed" >&6; } ;; - xno) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -$as_echo "unsupported" >&6; } ;; - *) - CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 -$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; -esac -if test "x$ac_cv_prog_cc_c89" != xno; then : - -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 -$as_echo_n "checking whether $CC understands -c and -o together... " >&6; } -if ${am_cv_prog_cc_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 - ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 -$as_echo "$am_cv_prog_cc_c_o" >&6; } -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -depcc="$CC" am_compiler_list= - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -$as_echo_n "checking dependency style of $depcc... " >&6; } -if ${am_cv_CC_dependencies_compiler_type+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CC_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - am__universal=false - case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CC_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CC_dependencies_compiler_type=none -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } -CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type - - if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then - am__fastdepCC_TRUE= - am__fastdepCC_FALSE='#' -else - am__fastdepCC_TRUE='#' - am__fastdepCC_FALSE= -fi - - - -# Check whether --enable-compiler-warnings was given. -if test "${enable_compiler_warnings+set}" = set; then : - enableval=$enable_compiler_warnings; -fi -case $enable_compiler_warnings in #( - no | min | yes | max | all) : - ;; #( - *) : - if test "x$enable_maintainer_mode" = xyes; then : - enable_compiler_warnings=yes -else - enable_compiler_warnings=min -fi ;; -esac - - -if test "`cd $srcdir && pwd`" != "`pwd`"; then - # Use -I$(srcdir) only when $(srcdir) != ., so that make's output - # is not polluted with repeated "-I." - am__isrc=' -I$(srcdir)' - # test to see if srcdir already configured - if test -f $srcdir/config.status; then - as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 - fi -fi - -# test whether we have cygpath -if test -z "$CYGPATH_W"; then - if (cygpath --version) >/dev/null 2>/dev/null; then - CYGPATH_W='cygpath -w' - else - CYGPATH_W=echo - fi -fi - - -# Define the identity of the package. - PACKAGE='lua52--tex-live-' - VERSION='5.2.4' - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE "$PACKAGE" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define VERSION "$VERSION" -_ACEOF - -# Some tools Automake needs. - -ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} - - -AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} - - -AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} - - -AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} - - -MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} - -# For better backward compatibility. To be removed once Automake 1.9.x -# dies out for good. For more background, see: -# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html> -# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html> -mkdir_p='$(MKDIR_P)' - -# We need awk for the "check" target (and possibly the TAP driver). The -# system "awk" is bad on some platforms. -# Always define AMTAR for backward compatibility. Yes, it's still used -# in the wild :-( We should find a proper way to deprecate it ... -AMTAR='$${TAR-tar}' - - -# We'll loop over all known methods to create a tar archive until one works. -_am_tools='gnutar pax cpio none' - -am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' - - - - - - -# POSIX will say in a future version that running "rm -f" with no argument -# is OK; and we want to be able to make that assumption in our Makefile -# recipes. So use an aggressive probe to check that the usage we want is -# actually supported "in the wild" to an acceptable degree. -# See automake bug#10828. -# To make any issue more visible, cause the running configure to be aborted -# by default if the 'rm' program in use doesn't match our expectations; the -# user can still override this though. -if rm -f && rm -fr && rm -rf; then : OK; else - cat >&2 <<'END' -Oops! - -Your 'rm' program seems unable to run without file operands specified -on the command line, even when the '-f' option is present. This is contrary -to the behaviour of most rm programs out there, and not conforming with -the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542> - -Please tell bug-automake@gnu.org about your system, including the value -of your $PATH and any error possibly output before this message. This -can help us improve future automake versions. - -END - if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then - echo 'Configuration will proceed anyway, since you have set the' >&2 - echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 - echo >&2 - else - cat >&2 <<'END' -Aborting the configuration process, to ensure you take notice of the issue. - -You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: <https://www.gnu.org/software/coreutils/>. - -If you want to complete the configuration process using your problematic -'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM -to "yes", and re-run configure. - -END - as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 - fi -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 -$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } - # Check whether --enable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then : - enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval -else - USE_MAINTAINER_MODE=no -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 -$as_echo "$USE_MAINTAINER_MODE" >&6; } - if test $USE_MAINTAINER_MODE = yes; then - MAINTAINER_MODE_TRUE= - MAINTAINER_MODE_FALSE='#' -else - MAINTAINER_MODE_TRUE='#' - MAINTAINER_MODE_FALSE= -fi - - MAINT=$MAINTAINER_MODE_TRUE - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler accepts prototypes" >&5 -$as_echo_n "checking whether the compiler accepts prototypes... " >&6; } -if ${kb_cv_c_prototypes+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdarg.h> -int -main () -{ -extern void foo(int i,...); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - kb_cv_c_prototypes=yes -else - kb_cv_c_prototypes=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $kb_cv_c_prototypes" >&5 -$as_echo "$kb_cv_c_prototypes" >&6; } -if test "x$kb_cv_c_prototypes" = xno; then - as_fn_error $? "Sorry, your compiler does not understand prototypes." "$LINENO" 5 -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking what warning flags to pass to the C compiler" >&5 -$as_echo_n "checking what warning flags to pass to the C compiler... " >&6; } -if ${kpse_cv_warning_cflags+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "x$GCC" = xyes; then - kpse_cv_warning_cflags= -if test "x$enable_compiler_warnings" != xno; then - kpse_cv_warning_cflags="-Wimplicit -Wreturn-type" - case `$CC -dumpversion` in #( - 3.4.* | 4.* | 5.*) : - kpse_cv_warning_cflags="$kpse_cv_warning_cflags -Wdeclaration-after-statement" ;; #( - *) : - ;; -esac - case `$CC -dumpversion` in #( - 3.[234].* | 4.* | 5.*) : - kpse_cv_warning_cflags="$kpse_cv_warning_cflags -Wno-unknown-pragmas" ;; #( - *) : - ;; -esac - if test "x$enable_compiler_warnings" != xmin; then - kpse_cv_warning_cflags="-Wall -Wunused $kpse_cv_warning_cflags" - kpse_cv_warning_cflags="$kpse_cv_warning_cflags -Wmissing-prototypes -Wmissing-declarations" - if test "x$enable_compiler_warnings" != xyes; then - kpse_cv_warning_cflags="$kpse_cv_warning_cflags -Wparentheses -Wswitch -Wtrigraphs -Wpointer-arith" - kpse_cv_warning_cflags="$kpse_cv_warning_cflags -Wcast-qual -Wcast-align -Wwrite-strings" - case `$CC -dumpversion` in #( - 3.4.* | 4.* | 5.*) : - kpse_cv_warning_cflags="$kpse_cv_warning_cflags -Wold-style-definition" ;; #( - *) : - ;; -esac - if test "x$enable_compiler_warnings" != xmax; then - kpse_cv_warning_cflags="$kpse_cv_warning_cflags -Wshadow" - fi - fi - fi -fi -elif test "x$enable_compiler_warnings" = xno; then - kpse_cv_warning_cflags= -else - kpse_cv_warning_cflags= # FIXME: warning flags for non-GNU C compilers -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $kpse_cv_warning_cflags" >&5 -$as_echo "$kpse_cv_warning_cflags" >&6; } -WARNING_CFLAGS=$kpse_cv_warning_cflags - - - - - - - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - fi -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl.exe - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl.exe -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_CC" && break -done - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -fi - -fi - - -test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5; } - -# Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 -$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if ${ac_cv_c_compiler_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_compiler_gnu=yes -else - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 -$as_echo "$ac_cv_c_compiler_gnu" >&6; } -if test $ac_compiler_gnu = yes; then - GCC=yes -else - GCC= -fi -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 -$as_echo_n "checking whether $CC accepts -g... " >&6; } -if ${ac_cv_prog_cc_g+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_save_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -else - CFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - ac_c_werror_flag=$ac_save_c_werror_flag - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 -$as_echo "$ac_cv_prog_cc_g" >&6; } -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 -$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if ${ac_cv_prog_cc_c89+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_prog_cc_c89=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdarg.h> -#include <stdio.h> -struct stat; -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters - inside strings and character constants. */ -#define FOO(x) 'x' -int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ - -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_c89=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext - test "x$ac_cv_prog_cc_c89" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC - -fi -# AC_CACHE_VAL -case "x$ac_cv_prog_cc_c89" in - x) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -$as_echo "none needed" >&6; } ;; - xno) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -$as_echo "unsupported" >&6; } ;; - *) - CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 -$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; -esac -if test "x$ac_cv_prog_cc_c89" != xno; then : - -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 -$as_echo_n "checking whether $CC understands -c and -o together... " >&6; } -if ${am_cv_prog_cc_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 - ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 -$as_echo "$am_cv_prog_cc_c_o" >&6; } -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -depcc="$CC" am_compiler_list= - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -$as_echo_n "checking dependency style of $depcc... " >&6; } -if ${am_cv_CC_dependencies_compiler_type+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CC_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - am__universal=false - case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CC_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CC_dependencies_compiler_type=none -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } -CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type - - if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then - am__fastdepCC_TRUE= - am__fastdepCC_FALSE='#' -else - am__fastdepCC_TRUE='#' - am__fastdepCC_FALSE= -fi - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 -$as_echo "$RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 -$as_echo "$ac_ct_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_RANLIB" = x; then - RANLIB=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - RANLIB=$ac_ct_RANLIB - fi -else - RANLIB="$ac_cv_prog_RANLIB" -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 -$as_echo_n "checking whether ln -s works... " >&6; } -LN_S=$as_ln_s -if test "$LN_S" = "ln -s"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 -$as_echo "no, using $LN_S" >&6; } -fi - - -LUA52VERSION=5.2.4 - - -LUA52_LT_VERSINFO=7:4:2 - - -case `pwd` in - *\ * | *\ *) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 -$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; -esac - - - -macro_version='2.4.6' -macro_revision='2.4.6' - - - - - - - - - - - - - -ltmain=$ac_aux_dir/ltmain.sh - -# Make sure we can run config.sub. -$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 -$as_echo_n "checking build system type... " >&6; } -if ${ac_cv_build+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_build_alias=$build_alias -test "x$ac_build_alias" = x && - ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` -test "x$ac_build_alias" = x && - as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 -ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 -$as_echo "$ac_cv_build" >&6; } -case $ac_cv_build in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; -esac -build=$ac_cv_build -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_build -shift -build_cpu=$1 -build_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -build_os=$* -IFS=$ac_save_IFS -case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 -$as_echo_n "checking host system type... " >&6; } -if ${ac_cv_host+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "x$host_alias" = x; then - ac_cv_host=$ac_cv_build -else - ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 -$as_echo "$ac_cv_host" >&6; } -case $ac_cv_host in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; -esac -host=$ac_cv_host -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_host -shift -host_cpu=$1 -host_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -host_os=$* -IFS=$ac_save_IFS -case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac - - -# Backslashify metacharacters that are still active within -# double-quoted strings. -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\(["`\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Sed substitution to delay expansion of an escaped single quote. -delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' - -# Sed substitution to avoid accidental globbing in evaled expressions -no_glob_subst='s/\*/\\\*/g' - -ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO -ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 -$as_echo_n "checking how to print strings... " >&6; } -# Test print first, because it will be a builtin if present. -if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ - test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then - ECHO='print -r --' -elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then - ECHO='printf %s\n' -else - # Use this function as a fallback that always works. - func_fallback_echo () - { - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' - } - ECHO='func_fallback_echo' -fi - -# func_echo_all arg... -# Invoke $ECHO with all args, space-separated. -func_echo_all () -{ - $ECHO "" -} - -case $ECHO in - printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 -$as_echo "printf" >&6; } ;; - print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 -$as_echo "print -r" >&6; } ;; - *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 -$as_echo "cat" >&6; } ;; -esac - - - - - - - - - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 -$as_echo_n "checking for a sed that does not truncate output... " >&6; } -if ${ac_cv_path_SED+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ - for ac_i in 1 2 3 4 5 6 7; do - ac_script="$ac_script$as_nl$ac_script" - done - echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed - { ac_script=; unset ac_script;} - if test -z "$SED"; then - ac_path_SED_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_SED" || continue -# Check for GNU ac_path_SED and select it if it is found. - # Check for GNU $ac_path_SED -case `"$ac_path_SED" --version 2>&1` in -*GNU*) - ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo '' >> "conftest.nl" - "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_SED_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_SED="$ac_path_SED" - ac_path_SED_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_SED_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_SED"; then - as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 - fi -else - ac_cv_path_SED=$SED -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 -$as_echo "$ac_cv_path_SED" >&6; } - SED="$ac_cv_path_SED" - rm -f conftest.sed - -test -z "$SED" && SED=sed -Xsed="$SED -e 1s/^X//" - - - - - - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -$as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if ${ac_cv_path_GREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$GREP"; then - ac_path_GREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_GREP" || continue -# Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP -case `"$ac_path_GREP" --version 2>&1` in -*GNU*) - ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'GREP' >> "conftest.nl" - "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_GREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_GREP="$ac_path_GREP" - ac_path_GREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_GREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_GREP"; then - as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_GREP=$GREP -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -$as_echo "$ac_cv_path_GREP" >&6; } - GREP="$ac_cv_path_GREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -$as_echo_n "checking for egrep... " >&6; } -if ${ac_cv_path_EGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 - then ac_cv_path_EGREP="$GREP -E" - else - if test -z "$EGREP"; then - ac_path_EGREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_EGREP" || continue -# Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP -case `"$ac_path_EGREP" --version 2>&1` in -*GNU*) - ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'EGREP' >> "conftest.nl" - "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_EGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_EGREP="$ac_path_EGREP" - ac_path_EGREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_EGREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_EGREP"; then - as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_EGREP=$EGREP -fi - - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -$as_echo "$ac_cv_path_EGREP" >&6; } - EGREP="$ac_cv_path_EGREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 -$as_echo_n "checking for fgrep... " >&6; } -if ${ac_cv_path_FGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 - then ac_cv_path_FGREP="$GREP -F" - else - if test -z "$FGREP"; then - ac_path_FGREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in fgrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_FGREP" || continue -# Check for GNU ac_path_FGREP and select it if it is found. - # Check for GNU $ac_path_FGREP -case `"$ac_path_FGREP" --version 2>&1` in -*GNU*) - ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'FGREP' >> "conftest.nl" - "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_FGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_FGREP="$ac_path_FGREP" - ac_path_FGREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_FGREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_FGREP"; then - as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_FGREP=$FGREP -fi - - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 -$as_echo "$ac_cv_path_FGREP" >&6; } - FGREP="$ac_cv_path_FGREP" - - -test -z "$GREP" && GREP=grep - - - - - - - - - - - - - - - - - - - -# Check whether --with-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then : - withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes -else - with_gnu_ld=no -fi - -ac_prog=ld -if test yes = "$GCC"; then - # Check if gcc -print-prog-name=ld gives a path. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 -$as_echo_n "checking for ld used by $CC... " >&6; } - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return, which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | ?:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` - while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do - ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` - done - test -z "$LD" && LD=$ac_prog - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test yes = "$with_gnu_ld"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 -$as_echo_n "checking for GNU ld... " >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 -$as_echo_n "checking for non-GNU ld... " >&6; } -fi -if ${lt_cv_path_LD+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$LD"; then - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD=$ac_dir/$ac_prog - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in - *GNU* | *'with BFD'*) - test no != "$with_gnu_ld" && break - ;; - *) - test yes != "$with_gnu_ld" && break - ;; - esac - fi - done - IFS=$lt_save_ifs -else - lt_cv_path_LD=$LD # Let the user override the test with a path. -fi -fi - -LD=$lt_cv_path_LD -if test -n "$LD"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 -$as_echo "$LD" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 -$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } -if ${lt_cv_prog_gnu_ld+:} false; then : - $as_echo_n "(cached) " >&6 -else - # I'd rather use --version here, but apparently some GNU lds only accept -v. -case `$LD -v 2>&1 </dev/null` in -*GNU* | *'with BFD'*) - lt_cv_prog_gnu_ld=yes - ;; -*) - lt_cv_prog_gnu_ld=no - ;; -esac -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5 -$as_echo "$lt_cv_prog_gnu_ld" >&6; } -with_gnu_ld=$lt_cv_prog_gnu_ld - - - - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 -$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } -if ${lt_cv_path_NM+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM=$NM -else - lt_nm_to_check=${ac_tool_prefix}nm - if test -n "$ac_tool_prefix" && test "$build" = "$host"; then - lt_nm_to_check="$lt_nm_to_check nm" - fi - for lt_tmp_nm in $lt_nm_to_check; do - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/$lt_tmp_nm - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the 'sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty - case $build_os in - mingw*) lt_bad_file=conftest.nm/nofile ;; - *) lt_bad_file=/dev/null ;; - esac - case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in - *$lt_bad_file* | *'Invalid file or object type'*) - lt_cv_path_NM="$tmp_nm -B" - break 2 - ;; - *) - case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in - */dev/null*) - lt_cv_path_NM="$tmp_nm -p" - break 2 - ;; - *) - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - ;; - esac - ;; - esac - fi - done - IFS=$lt_save_ifs - done - : ${lt_cv_path_NM=no} -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 -$as_echo "$lt_cv_path_NM" >&6; } -if test no != "$lt_cv_path_NM"; then - NM=$lt_cv_path_NM -else - # Didn't find any BSD compatible name lister, look for dumpbin. - if test -n "$DUMPBIN"; then : - # Let the user override the test. - else - if test -n "$ac_tool_prefix"; then - for ac_prog in dumpbin "link -dump" - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_DUMPBIN+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$DUMPBIN"; then - ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -DUMPBIN=$ac_cv_prog_DUMPBIN -if test -n "$DUMPBIN"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 -$as_echo "$DUMPBIN" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$DUMPBIN" && break - done -fi -if test -z "$DUMPBIN"; then - ac_ct_DUMPBIN=$DUMPBIN - for ac_prog in dumpbin "link -dump" -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_DUMPBIN"; then - ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN -if test -n "$ac_ct_DUMPBIN"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 -$as_echo "$ac_ct_DUMPBIN" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_DUMPBIN" && break -done - - if test "x$ac_ct_DUMPBIN" = x; then - DUMPBIN=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - DUMPBIN=$ac_ct_DUMPBIN - fi -fi - - case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in - *COFF*) - DUMPBIN="$DUMPBIN -symbols -headers" - ;; - *) - DUMPBIN=: - ;; - esac - fi - - if test : != "$DUMPBIN"; then - NM=$DUMPBIN - fi -fi -test -z "$NM" && NM=nm - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 -$as_echo_n "checking the name lister ($NM) interface... " >&6; } -if ${lt_cv_nm_interface+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_nm_interface="BSD nm" - echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) - (eval "$ac_compile" 2>conftest.err) - cat conftest.err >&5 - (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) - (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) - cat conftest.err >&5 - (eval echo "\"\$as_me:$LINENO: output\"" >&5) - cat conftest.out >&5 - if $GREP 'External.*some_variable' conftest.out > /dev/null; then - lt_cv_nm_interface="MS dumpbin" - fi - rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 -$as_echo "$lt_cv_nm_interface" >&6; } - -# find the maximum length of command line arguments -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 -$as_echo_n "checking the maximum length of command line arguments... " >&6; } -if ${lt_cv_sys_max_cmd_len+:} false; then : - $as_echo_n "(cached) " >&6 -else - i=0 - teststring=ABCD - - case $build_os in - msdosdjgpp*) - # On DJGPP, this test can blow up pretty badly due to problems in libc - # (any single argument exceeding 2000 bytes causes a buffer overrun - # during glob expansion). Even if it were fixed, the result of this - # check would be larger than it should be. - lt_cv_sys_max_cmd_len=12288; # 12K is about right - ;; - - gnu*) - # Under GNU Hurd, this test is not required because there is - # no limit to the length of command line arguments. - # Libtool will interpret -1 as no limit whatsoever - lt_cv_sys_max_cmd_len=-1; - ;; - - cygwin* | mingw* | cegcc*) - # On Win9x/ME, this test blows up -- it succeeds, but takes - # about 5 minutes as the teststring grows exponentially. - # Worse, since 9x/ME are not pre-emptively multitasking, - # you end up with a "frozen" computer, even though with patience - # the test eventually succeeds (with a max line length of 256k). - # Instead, let's just punt: use the minimum linelength reported by - # all of the supported platforms: 8192 (on NT/2K/XP). - lt_cv_sys_max_cmd_len=8192; - ;; - - mint*) - # On MiNT this can take a long time and run out of memory. - lt_cv_sys_max_cmd_len=8192; - ;; - - amigaos*) - # On AmigaOS with pdksh, this test takes hours, literally. - # So we just punt and use a minimum line length of 8192. - lt_cv_sys_max_cmd_len=8192; - ;; - - bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) - # This has been around since 386BSD, at least. Likely further. - if test -x /sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` - elif test -x /usr/sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` - else - lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs - fi - # And add a safety zone - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - ;; - - interix*) - # We know the value 262144 and hardcode it with a safety zone (like BSD) - lt_cv_sys_max_cmd_len=196608 - ;; - - os2*) - # The test takes a long time on OS/2. - lt_cv_sys_max_cmd_len=8192 - ;; - - osf*) - # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure - # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not - # nice to cause kernel panics so lets avoid the loop below. - # First set a reasonable default. - lt_cv_sys_max_cmd_len=16384 - # - if test -x /sbin/sysconfig; then - case `/sbin/sysconfig -q proc exec_disable_arg_limit` in - *1*) lt_cv_sys_max_cmd_len=-1 ;; - esac - fi - ;; - sco3.2v5*) - lt_cv_sys_max_cmd_len=102400 - ;; - sysv5* | sco5v6* | sysv4.2uw2*) - kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` - if test -n "$kargmax"; then - lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` - else - lt_cv_sys_max_cmd_len=32768 - fi - ;; - *) - lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len" && \ - test undefined != "$lt_cv_sys_max_cmd_len"; then - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - else - # Make teststring a little bigger before we do anything with it. - # a 1K string should be a reasonable start. - for i in 1 2 3 4 5 6 7 8; do - teststring=$teststring$teststring - done - SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} - # If test is not a shell built-in, we'll probably end up computing a - # maximum length that is only half of the actual maximum length, but - # we can't tell. - while { test X`env echo "$teststring$teststring" 2>/dev/null` \ - = "X$teststring$teststring"; } >/dev/null 2>&1 && - test 17 != "$i" # 1/2 MB should be enough - do - i=`expr $i + 1` - teststring=$teststring$teststring - done - # Only check the string length outside the loop. - lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` - teststring= - # Add a significant safety factor because C++ compilers can tack on - # massive amounts of additional arguments before passing them to the - # linker. It appears as though 1/2 is a usable value. - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` - fi - ;; - esac - -fi - -if test -n "$lt_cv_sys_max_cmd_len"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 -$as_echo "$lt_cv_sys_max_cmd_len" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 -$as_echo "none" >&6; } -fi -max_cmd_len=$lt_cv_sys_max_cmd_len - - - - - - -: ${CP="cp -f"} -: ${MV="mv -f"} -: ${RM="rm -f"} - -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - lt_unset=unset -else - lt_unset=false -fi - - - - - -# test EBCDIC or ASCII -case `echo X|tr X '\101'` in - A) # ASCII based system - # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr - lt_SP2NL='tr \040 \012' - lt_NL2SP='tr \015\012 \040\040' - ;; - *) # EBCDIC based system - lt_SP2NL='tr \100 \n' - lt_NL2SP='tr \r\n \100\100' - ;; -esac - - - - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 -$as_echo_n "checking how to convert $build file names to $host format... " >&6; } -if ${lt_cv_to_host_file_cmd+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $host in - *-*-mingw* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 - ;; - *-*-cygwin* ) - lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 - ;; - * ) # otherwise, assume *nix - lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 - ;; - esac - ;; - *-*-cygwin* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin - ;; - *-*-cygwin* ) - lt_cv_to_host_file_cmd=func_convert_file_noop - ;; - * ) # otherwise, assume *nix - lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin - ;; - esac - ;; - * ) # unhandled hosts (and "normal" native builds) - lt_cv_to_host_file_cmd=func_convert_file_noop - ;; -esac - -fi - -to_host_file_cmd=$lt_cv_to_host_file_cmd -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 -$as_echo "$lt_cv_to_host_file_cmd" >&6; } - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 -$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } -if ${lt_cv_to_tool_file_cmd+:} false; then : - $as_echo_n "(cached) " >&6 -else - #assume ordinary cross tools, or native build. -lt_cv_to_tool_file_cmd=func_convert_file_noop -case $host in - *-*-mingw* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 - ;; - esac - ;; -esac - -fi - -to_tool_file_cmd=$lt_cv_to_tool_file_cmd -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 -$as_echo "$lt_cv_to_tool_file_cmd" >&6; } - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 -$as_echo_n "checking for $LD option to reload object files... " >&6; } -if ${lt_cv_ld_reload_flag+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_ld_reload_flag='-r' -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 -$as_echo "$lt_cv_ld_reload_flag" >&6; } -reload_flag=$lt_cv_ld_reload_flag -case $reload_flag in -"" | " "*) ;; -*) reload_flag=" $reload_flag" ;; -esac -reload_cmds='$LD$reload_flag -o $output$reload_objs' -case $host_os in - cygwin* | mingw* | pw32* | cegcc*) - if test yes != "$GCC"; then - reload_cmds=false - fi - ;; - darwin*) - if test yes = "$GCC"; then - reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' - else - reload_cmds='$LD$reload_flag -o $output$reload_objs' - fi - ;; -esac - - - - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. -set dummy ${ac_tool_prefix}objdump; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OBJDUMP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OBJDUMP"; then - ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -OBJDUMP=$ac_cv_prog_OBJDUMP -if test -n "$OBJDUMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 -$as_echo "$OBJDUMP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_OBJDUMP"; then - ac_ct_OBJDUMP=$OBJDUMP - # Extract the first word of "objdump", so it can be a program name with args. -set dummy objdump; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_OBJDUMP"; then - ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_OBJDUMP="objdump" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP -if test -n "$ac_ct_OBJDUMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 -$as_echo "$ac_ct_OBJDUMP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_OBJDUMP" = x; then - OBJDUMP="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - OBJDUMP=$ac_ct_OBJDUMP - fi -else - OBJDUMP="$ac_cv_prog_OBJDUMP" -fi - -test -z "$OBJDUMP" && OBJDUMP=objdump - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 -$as_echo_n "checking how to recognize dependent libraries... " >&6; } -if ${lt_cv_deplibs_check_method+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# 'unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# that responds to the $file_magic_cmd with a given extended regex. -# If you have 'file' or equivalent on your system and you're not sure -# whether 'pass_all' will *always* work, you probably want this one. - -case $host_os in -aix[4-9]*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi[45]*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin*) - # func_win32_libid is a shell function defined in ltmain.sh - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='func_win32_libid' - ;; - -mingw* | pw32*) - # Base MSYS/MinGW do not provide the 'file' command needed by - # func_win32_libid shell function, so use a weaker test based on 'objdump', - # unless we find 'file', for example because we are cross-compiling. - if ( file / ) >/dev/null 2>&1; then - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='func_win32_libid' - else - # Keep this pattern in sync with the one in func_win32_libid. - lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' - lt_cv_file_magic_cmd='$OBJDUMP -f' - fi - ;; - -cegcc*) - # use the weaker test based on 'objdump'. See mingw*. - lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method=pass_all - ;; - -freebsd* | dragonfly*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -haiku*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=/usr/bin/file - case $host_cpu in - ia64*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' - lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so - ;; - hppa*64*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]' - lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl - ;; - *) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library' - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - esac - ;; - -interix[3-9]*) - # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$' - ;; - -irix5* | irix6* | nonstopux*) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -*nto* | *qnx*) - lt_cv_deplibs_check_method=pass_all - ;; - -openbsd* | bitrig*) - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' - fi - ;; - -osf3* | osf4* | osf5*) - lt_cv_deplibs_check_method=pass_all - ;; - -rdos*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.3*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - pc) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; - -tpf*) - lt_cv_deplibs_check_method=pass_all - ;; -os2*) - lt_cv_deplibs_check_method=pass_all - ;; -esac - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 -$as_echo "$lt_cv_deplibs_check_method" >&6; } - -file_magic_glob= -want_nocaseglob=no -if test "$build" = "$host"; then - case $host_os in - mingw* | pw32*) - if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then - want_nocaseglob=yes - else - file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` - fi - ;; - esac -fi - -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method -test -z "$deplibs_check_method" && deplibs_check_method=unknown - - - - - - - - - - - - - - - - - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. -set dummy ${ac_tool_prefix}dlltool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_DLLTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$DLLTOOL"; then - ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -DLLTOOL=$ac_cv_prog_DLLTOOL -if test -n "$DLLTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 -$as_echo "$DLLTOOL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_DLLTOOL"; then - ac_ct_DLLTOOL=$DLLTOOL - # Extract the first word of "dlltool", so it can be a program name with args. -set dummy dlltool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_DLLTOOL"; then - ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_DLLTOOL="dlltool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL -if test -n "$ac_ct_DLLTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 -$as_echo "$ac_ct_DLLTOOL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_DLLTOOL" = x; then - DLLTOOL="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - DLLTOOL=$ac_ct_DLLTOOL - fi -else - DLLTOOL="$ac_cv_prog_DLLTOOL" -fi - -test -z "$DLLTOOL" && DLLTOOL=dlltool - - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 -$as_echo_n "checking how to associate runtime and link libraries... " >&6; } -if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_sharedlib_from_linklib_cmd='unknown' - -case $host_os in -cygwin* | mingw* | pw32* | cegcc*) - # two different shell functions defined in ltmain.sh; - # decide which one to use based on capabilities of $DLLTOOL - case `$DLLTOOL --help 2>&1` in - *--identify-strict*) - lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib - ;; - *) - lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback - ;; - esac - ;; -*) - # fallback: assume linklib IS sharedlib - lt_cv_sharedlib_from_linklib_cmd=$ECHO - ;; -esac - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 -$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; } -sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd -test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO - - - - - - - -if test -n "$ac_tool_prefix"; then - for ac_prog in ar - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AR+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$AR"; then - ac_cv_prog_AR="$AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AR="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -AR=$ac_cv_prog_AR -if test -n "$AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 -$as_echo "$AR" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$AR" && break - done -fi -if test -z "$AR"; then - ac_ct_AR=$AR - for ac_prog in ar -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_AR+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_AR"; then - ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_AR="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_AR=$ac_cv_prog_ac_ct_AR -if test -n "$ac_ct_AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 -$as_echo "$ac_ct_AR" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_AR" && break -done - - if test "x$ac_ct_AR" = x; then - AR="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - AR=$ac_ct_AR - fi -fi - -: ${AR=ar} -: ${AR_FLAGS=cru} - - - - - - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 -$as_echo_n "checking for archiver @FILE support... " >&6; } -if ${lt_cv_ar_at_file+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_ar_at_file=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - echo conftest.$ac_objext > conftest.lst - lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 - (eval $lt_ar_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if test 0 -eq "$ac_status"; then - # Ensure the archiver fails upon bogus file names. - rm -f conftest.$ac_objext libconftest.a - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 - (eval $lt_ar_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if test 0 -ne "$ac_status"; then - lt_cv_ar_at_file=@ - fi - fi - rm -f conftest.* libconftest.a - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 -$as_echo "$lt_cv_ar_at_file" >&6; } - -if test no = "$lt_cv_ar_at_file"; then - archiver_list_spec= -else - archiver_list_spec=$lt_cv_ar_at_file -fi - - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 -$as_echo "$STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 -$as_echo "$ac_ct_STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_STRIP" = x; then - STRIP=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - STRIP=$ac_ct_STRIP - fi -else - STRIP="$ac_cv_prog_STRIP" -fi - -test -z "$STRIP" && STRIP=: - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 -$as_echo "$RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 -$as_echo "$ac_ct_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_RANLIB" = x; then - RANLIB=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - RANLIB=$ac_ct_RANLIB - fi -else - RANLIB="$ac_cv_prog_RANLIB" -fi - -test -z "$RANLIB" && RANLIB=: - - - - - - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - bitrig* | openbsd*) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" - ;; - *) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" -fi - -case $host_os in - darwin*) - lock_old_archive_extraction=yes ;; - *) - lock_old_archive_extraction=no ;; -esac - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# If no C compiler flags were specified, use CFLAGS. -LTCFLAGS=${LTCFLAGS-"$CFLAGS"} - -# Allow CC to be a program name with arguments. -compiler=$CC - - -# Check for command to grab the raw symbol name followed by C symbol from nm. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 -$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } -if ${lt_cv_sys_global_symbol_pipe+:} false; then : - $as_echo_n "(cached) " >&6 -else - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[BCDEGRST]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([_A-Za-z][_A-Za-z0-9]*\)' - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[BCDT]' - ;; -cygwin* | mingw* | pw32* | cegcc*) - symcode='[ABCDGISTW]' - ;; -hpux*) - if test ia64 = "$host_cpu"; then - symcode='[ABCDEGRST]' - fi - ;; -irix* | nonstopux*) - symcode='[BCDEGRST]' - ;; -osf*) - symcode='[BCDEGQRST]' - ;; -solaris*) - symcode='[BDRT]' - ;; -sco3.2v5*) - symcode='[DT]' - ;; -sysv4.2uw2*) - symcode='[DT]' - ;; -sysv5* | sco5v6* | unixware* | OpenUNIX*) - symcode='[ABDT]' - ;; -sysv4) - symcode='[DFNSTU]' - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -case `$NM -V 2>&1` in -*GNU* | *'with BFD'*) - symcode='[ABCDGIRSTW]' ;; -esac - -if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Gets list of data symbols to import. - lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" - # Adjust the below global symbol transforms to fixup imported variables. - lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" - lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" - lt_c_name_lib_hook="\ - -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ - -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" -else - # Disable hooks by default. - lt_cv_sys_global_symbol_to_import= - lt_cdecl_hook= - lt_c_name_hook= - lt_c_name_lib_hook= -fi - -# Transform an extracted symbol line into a proper C declaration. -# Some systems (esp. on ia64) link data and code symbols differently, -# so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="sed -n"\ -$lt_cdecl_hook\ -" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ -$lt_c_name_hook\ -" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" - -# Transform an extracted symbol line into symbol name with lib prefix and -# symbol address. -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ -$lt_c_name_lib_hook\ -" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ -" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" - -# Handle CRLF in mingw tool chain -opt_cr= -case $build_os in -mingw*) - opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# Try without a prefix underscore, then with it. -for ac_symprfx in "" "_"; do - - # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. - symxfrm="\\1 $ac_symprfx\\2 \\2" - - # Write the raw and C identifiers. - if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Fake it for dumpbin and say T for any non-static function, - # D for any global variable and I for any imported variable. - # Also find C++ and __fastcall symbols from MSVC++, - # which start with @ or ?. - lt_cv_sys_global_symbol_pipe="$AWK '"\ -" {last_section=section; section=\$ 3};"\ -" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ -" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ -" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ -" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ -" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ -" \$ 0!~/External *\|/{next};"\ -" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ -" {if(hide[section]) next};"\ -" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ -" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ -" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ -" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ -" ' prfx=^$ac_symprfx" - else - lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" - fi - lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" - - # Check to see that the pipe works correctly. - pipe_works=no - - rm -f conftest* - cat > conftest.$ac_ext <<_LT_EOF -#ifdef __cplusplus -extern "C" { -#endif -char nm_test_var; -void nm_test_func(void); -void nm_test_func(void){} -#ifdef __cplusplus -} -#endif -int main(){nm_test_var='a';nm_test_func();return(0);} -_LT_EOF - - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - # Now try to grab the symbols. - nlist=conftest.nm - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 - (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if $GREP ' nm_test_var$' "$nlist" >/dev/null; then - if $GREP ' nm_test_func$' "$nlist" >/dev/null; then - cat <<_LT_EOF > conftest.$ac_ext -/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE -/* DATA imports from DLLs on WIN32 can't be const, because runtime - relocations are performed -- see ld's documentation on pseudo-relocs. */ -# define LT_DLSYM_CONST -#elif defined __osf__ -/* This system does not cope well with relocations in const data. */ -# define LT_DLSYM_CONST -#else -# define LT_DLSYM_CONST const -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -_LT_EOF - # Now generate the symbol file. - eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' - - cat <<_LT_EOF >> conftest.$ac_ext - -/* The mapping between symbol names and symbols. */ -LT_DLSYM_CONST struct { - const char *name; - void *address; -} -lt__PROGRAM__LTX_preloaded_symbols[] = -{ - { "@PROGRAM@", (void *) 0 }, -_LT_EOF - $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext - cat <<\_LT_EOF >> conftest.$ac_ext - {0, (void *) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt__PROGRAM__LTX_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif -_LT_EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - lt_globsym_save_LIBS=$LIBS - lt_globsym_save_CFLAGS=$CFLAGS - LIBS=conftstm.$ac_objext - CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS=$lt_globsym_save_LIBS - CFLAGS=$lt_globsym_save_CFLAGS - else - echo "cannot find nm_test_func in $nlist" >&5 - fi - else - echo "cannot find nm_test_var in $nlist" >&5 - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 - fi - else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - fi - rm -rf conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test yes = "$pipe_works"; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done - -fi - -if test -z "$lt_cv_sys_global_symbol_pipe"; then - lt_cv_sys_global_symbol_to_cdecl= -fi -if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 -$as_echo "failed" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 -$as_echo "ok" >&6; } -fi - -# Response file support. -if test "$lt_cv_nm_interface" = "MS dumpbin"; then - nm_file_list_spec='@' -elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then - nm_file_list_spec='@' -fi - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 -$as_echo_n "checking for sysroot... " >&6; } - -# Check whether --with-sysroot was given. -if test "${with_sysroot+set}" = set; then : - withval=$with_sysroot; -else - with_sysroot=no -fi - - -lt_sysroot= -case $with_sysroot in #( - yes) - if test yes = "$GCC"; then - lt_sysroot=`$CC --print-sysroot 2>/dev/null` - fi - ;; #( - /*) - lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` - ;; #( - no|'') - ;; #( - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 -$as_echo "$with_sysroot" >&6; } - as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 - ;; -esac - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 -$as_echo "${lt_sysroot:-no}" >&6; } - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 -$as_echo_n "checking for a working dd... " >&6; } -if ${ac_cv_path_lt_DD+:} false; then : - $as_echo_n "(cached) " >&6 -else - printf 0123456789abcdef0123456789abcdef >conftest.i -cat conftest.i conftest.i >conftest2.i -: ${lt_DD:=$DD} -if test -z "$lt_DD"; then - ac_path_lt_DD_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in dd; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_lt_DD" || continue -if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then - cmp -s conftest.i conftest.out \ - && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: -fi - $ac_path_lt_DD_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_lt_DD"; then - : - fi -else - ac_cv_path_lt_DD=$lt_DD -fi - -rm -f conftest.i conftest2.i conftest.out -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 -$as_echo "$ac_cv_path_lt_DD" >&6; } - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 -$as_echo_n "checking how to truncate binary pipes... " >&6; } -if ${lt_cv_truncate_bin+:} false; then : - $as_echo_n "(cached) " >&6 -else - printf 0123456789abcdef0123456789abcdef >conftest.i -cat conftest.i conftest.i >conftest2.i -lt_cv_truncate_bin= -if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then - cmp -s conftest.i conftest.out \ - && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" -fi -rm -f conftest.i conftest2.i conftest.out -test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 -$as_echo "$lt_cv_truncate_bin" >&6; } - - - - - - - -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. -func_cc_basename () -{ - for cc_temp in $*""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac - done - func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` -} - -# Check whether --enable-libtool-lock was given. -if test "${enable_libtool_lock+set}" = set; then : - enableval=$enable_libtool_lock; -fi - -test no = "$enable_libtool_lock" || enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -ia64-*-hpux*) - # Find out what ABI is being produced by ac_compile, and set mode - # options accordingly. - echo 'int i;' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - case `/usr/bin/file conftest.$ac_objext` in - *ELF-32*) - HPUX_IA64_MODE=32 - ;; - *ELF-64*) - HPUX_IA64_MODE=64 - ;; - esac - fi - rm -rf conftest* - ;; -*-*-irix6*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo '#line '$LINENO' "configure"' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - if test yes = "$lt_cv_prog_gnu_ld"; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -melf32bsmip" - ;; - *N32*) - LD="${LD-ld} -melf32bmipn32" - ;; - *64-bit*) - LD="${LD-ld} -melf64bmip" - ;; - esac - else - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - fi - rm -rf conftest* - ;; - -mips64*-*linux*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo '#line '$LINENO' "configure"' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - emul=elf - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - emul="${emul}32" - ;; - *64-bit*) - emul="${emul}64" - ;; - esac - case `/usr/bin/file conftest.$ac_objext` in - *MSB*) - emul="${emul}btsmip" - ;; - *LSB*) - emul="${emul}ltsmip" - ;; - esac - case `/usr/bin/file conftest.$ac_objext` in - *N32*) - emul="${emul}n32" - ;; - esac - LD="${LD-ld} -m $emul" - fi - rm -rf conftest* - ;; - -x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ -s390*-*linux*|s390*-*tpf*|sparc*-*linux*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. Note that the listed cases only cover the - # situations where additional linker options are needed (such as when - # doing 32-bit compilation for a host where ld defaults to 64-bit, or - # vice versa); the common cases where no linker options are needed do - # not appear in the list. - echo 'int i;' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - case `/usr/bin/file conftest.o` in - *32-bit*) - case $host in - x86_64-*kfreebsd*-gnu) - LD="${LD-ld} -m elf_i386_fbsd" - ;; - x86_64-*linux*) - case `/usr/bin/file conftest.o` in - *x86-64*) - LD="${LD-ld} -m elf32_x86_64" - ;; - *) - LD="${LD-ld} -m elf_i386" - ;; - esac - ;; - powerpc64le-*linux*) - LD="${LD-ld} -m elf32lppclinux" - ;; - powerpc64-*linux*) - LD="${LD-ld} -m elf32ppclinux" - ;; - s390x-*linux*) - LD="${LD-ld} -m elf_s390" - ;; - sparc64-*linux*) - LD="${LD-ld} -m elf32_sparc" - ;; - esac - ;; - *64-bit*) - case $host in - x86_64-*kfreebsd*-gnu) - LD="${LD-ld} -m elf_x86_64_fbsd" - ;; - x86_64-*linux*) - LD="${LD-ld} -m elf_x86_64" - ;; - powerpcle-*linux*) - LD="${LD-ld} -m elf64lppc" - ;; - powerpc-*linux*) - LD="${LD-ld} -m elf64ppc" - ;; - s390*-*linux*|s390*-*tpf*) - LD="${LD-ld} -m elf64_s390" - ;; - sparc*-*linux*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS -belf" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 -$as_echo_n "checking whether the C compiler needs -belf... " >&6; } -if ${lt_cv_cc_needs_belf+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - lt_cv_cc_needs_belf=yes -else - lt_cv_cc_needs_belf=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 -$as_echo "$lt_cv_cc_needs_belf" >&6; } - if test yes != "$lt_cv_cc_needs_belf"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS=$SAVE_CFLAGS - fi - ;; -*-*solaris*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo 'int i;' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - case `/usr/bin/file conftest.o` in - *64-bit*) - case $lt_cv_prog_gnu_ld in - yes*) - case $host in - i?86-*-solaris*|x86_64-*-solaris*) - LD="${LD-ld} -m elf_x86_64" - ;; - sparc*-*-solaris*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - # GNU ld 2.21 introduced _sol2 emulations. Use them if available. - if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then - LD=${LD-ld}_sol2 - fi - ;; - *) - if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then - LD="${LD-ld} -64" - fi - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; -esac - -need_locks=$enable_libtool_lock - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. -set dummy ${ac_tool_prefix}mt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$MANIFEST_TOOL"; then - ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL -if test -n "$MANIFEST_TOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 -$as_echo "$MANIFEST_TOOL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_MANIFEST_TOOL"; then - ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL - # Extract the first word of "mt", so it can be a program name with args. -set dummy mt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_MANIFEST_TOOL"; then - ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL -if test -n "$ac_ct_MANIFEST_TOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 -$as_echo "$ac_ct_MANIFEST_TOOL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_MANIFEST_TOOL" = x; then - MANIFEST_TOOL=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL - fi -else - MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" -fi - -test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 -$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } -if ${lt_cv_path_mainfest_tool+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_path_mainfest_tool=no - echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 - $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out - cat conftest.err >&5 - if $GREP 'Manifest Tool' conftest.out > /dev/null; then - lt_cv_path_mainfest_tool=yes - fi - rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 -$as_echo "$lt_cv_path_mainfest_tool" >&6; } -if test yes != "$lt_cv_path_mainfest_tool"; then - MANIFEST_TOOL=: -fi - - - - - - - case $host_os in - rhapsody* | darwin*) - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. -set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_DSYMUTIL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$DSYMUTIL"; then - ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -DSYMUTIL=$ac_cv_prog_DSYMUTIL -if test -n "$DSYMUTIL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 -$as_echo "$DSYMUTIL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_DSYMUTIL"; then - ac_ct_DSYMUTIL=$DSYMUTIL - # Extract the first word of "dsymutil", so it can be a program name with args. -set dummy dsymutil; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_DSYMUTIL"; then - ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL -if test -n "$ac_ct_DSYMUTIL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 -$as_echo "$ac_ct_DSYMUTIL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_DSYMUTIL" = x; then - DSYMUTIL=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - DSYMUTIL=$ac_ct_DSYMUTIL - fi -else - DSYMUTIL="$ac_cv_prog_DSYMUTIL" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. -set dummy ${ac_tool_prefix}nmedit; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_NMEDIT+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$NMEDIT"; then - ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -NMEDIT=$ac_cv_prog_NMEDIT -if test -n "$NMEDIT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 -$as_echo "$NMEDIT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_NMEDIT"; then - ac_ct_NMEDIT=$NMEDIT - # Extract the first word of "nmedit", so it can be a program name with args. -set dummy nmedit; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_NMEDIT"; then - ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_NMEDIT="nmedit" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT -if test -n "$ac_ct_NMEDIT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 -$as_echo "$ac_ct_NMEDIT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_NMEDIT" = x; then - NMEDIT=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - NMEDIT=$ac_ct_NMEDIT - fi -else - NMEDIT="$ac_cv_prog_NMEDIT" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. -set dummy ${ac_tool_prefix}lipo; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_LIPO+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$LIPO"; then - ac_cv_prog_LIPO="$LIPO" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_LIPO="${ac_tool_prefix}lipo" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -LIPO=$ac_cv_prog_LIPO -if test -n "$LIPO"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 -$as_echo "$LIPO" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_LIPO"; then - ac_ct_LIPO=$LIPO - # Extract the first word of "lipo", so it can be a program name with args. -set dummy lipo; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_LIPO+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_LIPO"; then - ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_LIPO="lipo" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO -if test -n "$ac_ct_LIPO"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 -$as_echo "$ac_ct_LIPO" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_LIPO" = x; then - LIPO=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - LIPO=$ac_ct_LIPO - fi -else - LIPO="$ac_cv_prog_LIPO" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. -set dummy ${ac_tool_prefix}otool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OTOOL"; then - ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_OTOOL="${ac_tool_prefix}otool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -OTOOL=$ac_cv_prog_OTOOL -if test -n "$OTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 -$as_echo "$OTOOL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_OTOOL"; then - ac_ct_OTOOL=$OTOOL - # Extract the first word of "otool", so it can be a program name with args. -set dummy otool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_OTOOL"; then - ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_OTOOL="otool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL -if test -n "$ac_ct_OTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 -$as_echo "$ac_ct_OTOOL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_OTOOL" = x; then - OTOOL=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - OTOOL=$ac_ct_OTOOL - fi -else - OTOOL="$ac_cv_prog_OTOOL" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. -set dummy ${ac_tool_prefix}otool64; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OTOOL64+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OTOOL64"; then - ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -OTOOL64=$ac_cv_prog_OTOOL64 -if test -n "$OTOOL64"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 -$as_echo "$OTOOL64" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_OTOOL64"; then - ac_ct_OTOOL64=$OTOOL64 - # Extract the first word of "otool64", so it can be a program name with args. -set dummy otool64; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_OTOOL64"; then - ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_OTOOL64="otool64" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 -if test -n "$ac_ct_OTOOL64"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 -$as_echo "$ac_ct_OTOOL64" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_OTOOL64" = x; then - OTOOL64=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - OTOOL64=$ac_ct_OTOOL64 - fi -else - OTOOL64="$ac_cv_prog_OTOOL64" -fi - - - - - - - - - - - - - - - - - - - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 -$as_echo_n "checking for -single_module linker flag... " >&6; } -if ${lt_cv_apple_cc_single_mod+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_apple_cc_single_mod=no - if test -z "$LT_MULTI_MODULE"; then - # By default we will add the -single_module flag. You can override - # by either setting the environment variable LT_MULTI_MODULE - # non-empty at configure time, or by adding -multi_module to the - # link flags. - rm -rf libconftest.dylib* - echo "int foo(void){return 1;}" > conftest.c - echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ --dynamiclib -Wl,-single_module conftest.c" >&5 - $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ - -dynamiclib -Wl,-single_module conftest.c 2>conftest.err - _lt_result=$? - # If there is a non-empty error log, and "single_module" - # appears in it, assume the flag caused a linker warning - if test -s conftest.err && $GREP single_module conftest.err; then - cat conftest.err >&5 - # Otherwise, if the output was created with a 0 exit code from - # the compiler, it worked. - elif test -f libconftest.dylib && test 0 = "$_lt_result"; then - lt_cv_apple_cc_single_mod=yes - else - cat conftest.err >&5 - fi - rm -rf libconftest.dylib* - rm -f conftest.* - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 -$as_echo "$lt_cv_apple_cc_single_mod" >&6; } - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 -$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } -if ${lt_cv_ld_exported_symbols_list+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_ld_exported_symbols_list=no - save_LDFLAGS=$LDFLAGS - echo "_main" > conftest.sym - LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - lt_cv_ld_exported_symbols_list=yes -else - lt_cv_ld_exported_symbols_list=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$save_LDFLAGS - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 -$as_echo "$lt_cv_ld_exported_symbols_list" >&6; } - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 -$as_echo_n "checking for -force_load linker flag... " >&6; } -if ${lt_cv_ld_force_load+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_ld_force_load=no - cat > conftest.c << _LT_EOF -int forced_loaded() { return 2;} -_LT_EOF - echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 - $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 - echo "$AR cru libconftest.a conftest.o" >&5 - $AR cru libconftest.a conftest.o 2>&5 - echo "$RANLIB libconftest.a" >&5 - $RANLIB libconftest.a 2>&5 - cat > conftest.c << _LT_EOF -int main() { return 0;} -_LT_EOF - echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 - $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err - _lt_result=$? - if test -s conftest.err && $GREP force_load conftest.err; then - cat conftest.err >&5 - elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then - lt_cv_ld_force_load=yes - else - cat conftest.err >&5 - fi - rm -f conftest.err libconftest.a conftest conftest.c - rm -rf conftest.dSYM - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 -$as_echo "$lt_cv_ld_force_load" >&6; } - case $host_os in - rhapsody* | darwin1.[012]) - _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; - darwin1.*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - darwin*) # darwin 5.x on - # if running on 10.5 or later, the deployment target defaults - # to the OS version, if on x86, and 10.4, the deployment - # target defaults to 10.4. Don't you love it? - case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in - 10.0,*86*-darwin8*|10.0,*-darwin[91]*) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; - 10.[012][,.]*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - 10.*) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; - esac - ;; - esac - if test yes = "$lt_cv_apple_cc_single_mod"; then - _lt_dar_single_mod='$single_module' - fi - if test yes = "$lt_cv_ld_exported_symbols_list"; then - _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' - else - _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' - fi - if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then - _lt_dsymutil='~$DSYMUTIL $lib || :' - else - _lt_dsymutil= - fi - ;; - esac - -# func_munge_path_list VARIABLE PATH -# ----------------------------------- -# VARIABLE is name of variable containing _space_ separated list of -# directories to be munged by the contents of PATH, which is string -# having a format: -# "DIR[:DIR]:" -# string "DIR[ DIR]" will be prepended to VARIABLE -# ":DIR[:DIR]" -# string "DIR[ DIR]" will be appended to VARIABLE -# "DIRP[:DIRP]::[DIRA:]DIRA" -# string "DIRP[ DIRP]" will be prepended to VARIABLE and string -# "DIRA[ DIRA]" will be appended to VARIABLE -# "DIR[:DIR]" -# VARIABLE will be replaced by "DIR[ DIR]" -func_munge_path_list () -{ - case x$2 in - x) - ;; - *:) - eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" - ;; - x:*) - eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" - ;; - *::*) - eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" - eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" - ;; - *) - eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" - ;; - esac -} - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 -$as_echo_n "checking how to run the C preprocessor... " >&6; } -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if ${ac_cv_prog_CPP+:} false; then : - $as_echo_n "(cached) " >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since - # <limits.h> exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include <limits.h> -#else -# include <assert.h> -#endif - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - -else - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <ac_nonexistent.h> -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 -$as_echo "$CPP" >&6; } -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since - # <limits.h> exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include <limits.h> -#else -# include <assert.h> -#endif - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - -else - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <ac_nonexistent.h> -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details" "$LINENO" 5; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 -$as_echo_n "checking for ANSI C header files... " >&6; } -if ${ac_cv_header_stdc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> -#include <stdarg.h> -#include <string.h> -#include <float.h> - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdc=yes -else - ac_cv_header_stdc=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <string.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <ctype.h> -#include <stdlib.h> -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - -else - ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then - -$as_echo "#define STDC_HEADERS 1" >>confdefs.h - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -for ac_header in dlfcn.h -do : - ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default -" -if test "x$ac_cv_header_dlfcn_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_DLFCN_H 1 -_ACEOF - -fi - -done - - - - - -# Set options -enable_win32_dll=yes - -case $host in -*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args. -set dummy ${ac_tool_prefix}as; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AS+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$AS"; then - ac_cv_prog_AS="$AS" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AS="${ac_tool_prefix}as" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -AS=$ac_cv_prog_AS -if test -n "$AS"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5 -$as_echo "$AS" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_AS"; then - ac_ct_AS=$AS - # Extract the first word of "as", so it can be a program name with args. -set dummy as; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_AS+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_AS"; then - ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_AS="as" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_AS=$ac_cv_prog_ac_ct_AS -if test -n "$ac_ct_AS"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5 -$as_echo "$ac_ct_AS" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_AS" = x; then - AS="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - AS=$ac_ct_AS - fi -else - AS="$ac_cv_prog_AS" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. -set dummy ${ac_tool_prefix}dlltool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_DLLTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$DLLTOOL"; then - ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -DLLTOOL=$ac_cv_prog_DLLTOOL -if test -n "$DLLTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 -$as_echo "$DLLTOOL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_DLLTOOL"; then - ac_ct_DLLTOOL=$DLLTOOL - # Extract the first word of "dlltool", so it can be a program name with args. -set dummy dlltool; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_DLLTOOL"; then - ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_DLLTOOL="dlltool" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL -if test -n "$ac_ct_DLLTOOL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 -$as_echo "$ac_ct_DLLTOOL" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_DLLTOOL" = x; then - DLLTOOL="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - DLLTOOL=$ac_ct_DLLTOOL - fi -else - DLLTOOL="$ac_cv_prog_DLLTOOL" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. -set dummy ${ac_tool_prefix}objdump; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OBJDUMP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OBJDUMP"; then - ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -OBJDUMP=$ac_cv_prog_OBJDUMP -if test -n "$OBJDUMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 -$as_echo "$OBJDUMP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_OBJDUMP"; then - ac_ct_OBJDUMP=$OBJDUMP - # Extract the first word of "objdump", so it can be a program name with args. -set dummy objdump; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_OBJDUMP"; then - ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_OBJDUMP="objdump" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP -if test -n "$ac_ct_OBJDUMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 -$as_echo "$ac_ct_OBJDUMP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_OBJDUMP" = x; then - OBJDUMP="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - OBJDUMP=$ac_ct_OBJDUMP - fi -else - OBJDUMP="$ac_cv_prog_OBJDUMP" -fi - - ;; -esac - -test -z "$AS" && AS=as - - - - - -test -z "$DLLTOOL" && DLLTOOL=dlltool - - - - - -test -z "$OBJDUMP" && OBJDUMP=objdump - - - - - - - - enable_dlopen=no - - - - # Check whether --enable-shared was given. -if test "${enable_shared+set}" = set; then : - enableval=$enable_shared; p=${PACKAGE-default} - case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else - enable_shared=yes -fi - - - - - - - - - - # Check whether --enable-static was given. -if test "${enable_static+set}" = set; then : - enableval=$enable_static; p=${PACKAGE-default} - case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) - enable_static=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else - enable_static=yes -fi - - - - - - - - - - -# Check whether --with-pic was given. -if test "${with_pic+set}" = set; then : - withval=$with_pic; lt_p=${PACKAGE-default} - case $withval in - yes|no) pic_mode=$withval ;; - *) - pic_mode=default - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for lt_pkg in $withval; do - IFS=$lt_save_ifs - if test "X$lt_pkg" = "X$lt_p"; then - pic_mode=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else - pic_mode=default -fi - - - - - - - - - # Check whether --enable-fast-install was given. -if test "${enable_fast_install+set}" = set; then : - enableval=$enable_fast_install; p=${PACKAGE-default} - case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else - enable_fast_install=yes -fi - - - - - - - - - shared_archive_member_spec= -case $host,$enable_shared in -power*-*-aix[5-9]*,yes) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 -$as_echo_n "checking which variant of shared library versioning to provide... " >&6; } - -# Check whether --with-aix-soname was given. -if test "${with_aix_soname+set}" = set; then : - withval=$with_aix_soname; case $withval in - aix|svr4|both) - ;; - *) - as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5 - ;; - esac - lt_cv_with_aix_soname=$with_aix_soname -else - if ${lt_cv_with_aix_soname+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_with_aix_soname=aix -fi - - with_aix_soname=$lt_cv_with_aix_soname -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 -$as_echo "$with_aix_soname" >&6; } - if test aix != "$with_aix_soname"; then - # For the AIX way of multilib, we name the shared archive member - # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', - # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. - # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, - # the AIX toolchain works better with OBJECT_MODE set (default 32). - if test 64 = "${OBJECT_MODE-32}"; then - shared_archive_member_spec=shr_64 - else - shared_archive_member_spec=shr - fi - fi - ;; -*) - with_aix_soname=aix - ;; -esac - - - - - - - - - - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS=$ltmain - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -test -z "$LN_S" && LN_S="ln -s" - - - - - - - - - - - - - - -if test -n "${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 -$as_echo_n "checking for objdir... " >&6; } -if ${lt_cv_objdir+:} false; then : - $as_echo_n "(cached) " >&6 -else - rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - lt_cv_objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - lt_cv_objdir=_libs -fi -rmdir .libs 2>/dev/null -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 -$as_echo "$lt_cv_objdir" >&6; } -objdir=$lt_cv_objdir - - - - - -cat >>confdefs.h <<_ACEOF -#define LT_OBJDIR "$lt_cv_objdir/" -_ACEOF - - - - -case $host_os in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test set != "${COLLECT_NAMES+set}"; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Global variables: -ofile=libtool -can_build_shared=yes - -# All known linkers require a '.a' archive for static linking (except MSVC, -# which needs '.lib'). -libext=a - -with_gnu_ld=$lt_cv_prog_gnu_ld - -old_CC=$CC -old_CFLAGS=$CFLAGS - -# Set sane defaults for various variables -test -z "$CC" && CC=cc -test -z "$LTCC" && LTCC=$CC -test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS -test -z "$LD" && LD=ld -test -z "$ac_objext" && ac_objext=o - -func_cc_basename $compiler -cc_basename=$func_cc_basename_result - - -# Only perform the check for file, if the check method requires it -test -z "$MAGIC_CMD" && MAGIC_CMD=file -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 -$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } -if ${lt_cv_path_MAGIC_CMD+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $MAGIC_CMD in -[\\/*] | ?:[\\/]*) - lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD=$MAGIC_CMD - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" - for ac_dir in $ac_dummy; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/${ac_tool_prefix}file"; then - lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD=$lt_cv_path_MAGIC_CMD - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <<_LT_EOF 1>&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -_LT_EOF - fi ;; - esac - fi - break - fi - done - IFS=$lt_save_ifs - MAGIC_CMD=$lt_save_MAGIC_CMD - ;; -esac -fi - -MAGIC_CMD=$lt_cv_path_MAGIC_CMD -if test -n "$MAGIC_CMD"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 -$as_echo "$MAGIC_CMD" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - - - -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 -$as_echo_n "checking for file... " >&6; } -if ${lt_cv_path_MAGIC_CMD+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $MAGIC_CMD in -[\\/*] | ?:[\\/]*) - lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD=$MAGIC_CMD - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" - for ac_dir in $ac_dummy; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/file"; then - lt_cv_path_MAGIC_CMD=$ac_dir/"file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD=$lt_cv_path_MAGIC_CMD - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <<_LT_EOF 1>&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -_LT_EOF - fi ;; - esac - fi - break - fi - done - IFS=$lt_save_ifs - MAGIC_CMD=$lt_save_MAGIC_CMD - ;; -esac -fi - -MAGIC_CMD=$lt_cv_path_MAGIC_CMD -if test -n "$MAGIC_CMD"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 -$as_echo "$MAGIC_CMD" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - else - MAGIC_CMD=: - fi -fi - - fi - ;; -esac - -# Use C for the default configuration in the libtool script - -lt_save_CC=$CC -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o -objext=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(){return(0);}' - - - - - - - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# If no C compiler flags were specified, use CFLAGS. -LTCFLAGS=${LTCFLAGS-"$CFLAGS"} - -# Allow CC to be a program name with arguments. -compiler=$CC - -# Save the default compiler, since it gets overwritten when the other -# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. -compiler_DEFAULT=$CC - -# save warnings/boilerplate of simple test code -ac_outfile=conftest.$ac_objext -echo "$lt_simple_compile_test_code" >conftest.$ac_ext -eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_compiler_boilerplate=`cat conftest.err` -$RM conftest* - -ac_outfile=conftest.$ac_objext -echo "$lt_simple_link_test_code" >conftest.$ac_ext -eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_linker_boilerplate=`cat conftest.err` -$RM -r conftest* - - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -if test -n "$compiler"; then - -lt_prog_compiler_no_builtin_flag= - -if test yes = "$GCC"; then - case $cc_basename in - nvcc*) - lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; - *) - lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; - esac - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } -if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_prog_compiler_rtti_exceptions=no - ac_outfile=conftest.$ac_objext - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - lt_cv_prog_compiler_rtti_exceptions=yes - fi - fi - $RM conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 -$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } - -if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then - lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" -else - : -fi - -fi - - - - - - - lt_prog_compiler_wl= -lt_prog_compiler_pic= -lt_prog_compiler_static= - - - if test yes = "$GCC"; then - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_static='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test ia64 = "$host_cpu"; then - # AIX 5 now supports IA64 processor - lt_prog_compiler_static='-Bstatic' - fi - lt_prog_compiler_pic='-fPIC' - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - lt_prog_compiler_pic='-fPIC' - ;; - m68k) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the '-m68020' flag to GCC prevents building anything better, - # like '-m68040'. - lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' - ;; - esac - ;; - - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - - mingw* | cygwin* | pw32* | os2* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - # Although the cygwin gcc ignores -fPIC, still need this for old-style - # (--disable-auto-import) libraries - lt_prog_compiler_pic='-DDLL_EXPORT' - case $host_os in - os2*) - lt_prog_compiler_static='$wl-static' - ;; - esac - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_prog_compiler_pic='-fno-common' - ;; - - haiku*) - # PIC is the default for Haiku. - # The "-static" flag exists, but is broken. - lt_prog_compiler_static= - ;; - - hpux*) - # PIC is the default for 64-bit PA HP-UX, but not for 32-bit - # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag - # sets the default TLS model and affects inlining. - case $host_cpu in - hppa*64*) - # +Z the default - ;; - *) - lt_prog_compiler_pic='-fPIC' - ;; - esac - ;; - - interix[3-9]*) - # Interix 3.x gcc -fpic/-fPIC options generate broken code. - # Instead, we relocate shared libraries at runtime. - ;; - - msdosdjgpp*) - # Just because we use GCC doesn't mean we suddenly get shared libraries - # on systems that don't support them. - lt_prog_compiler_can_build_shared=no - enable_shared=no - ;; - - *nto* | *qnx*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - lt_prog_compiler_pic='-fPIC -shared' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - lt_prog_compiler_pic=-Kconform_pic - fi - ;; - - *) - lt_prog_compiler_pic='-fPIC' - ;; - esac - - case $cc_basename in - nvcc*) # Cuda Compiler Driver 2.2 - lt_prog_compiler_wl='-Xlinker ' - if test -n "$lt_prog_compiler_pic"; then - lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" - fi - ;; - esac - else - # PORTME Check for flag to pass linker flags through the system compiler. - case $host_os in - aix*) - lt_prog_compiler_wl='-Wl,' - if test ia64 = "$host_cpu"; then - # AIX 5 now supports IA64 processor - lt_prog_compiler_static='-Bstatic' - else - lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_prog_compiler_pic='-fno-common' - case $cc_basename in - nagfor*) - # NAG Fortran compiler - lt_prog_compiler_wl='-Wl,-Wl,,' - lt_prog_compiler_pic='-PIC' - lt_prog_compiler_static='-Bstatic' - ;; - esac - ;; - - mingw* | cygwin* | pw32* | os2* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_prog_compiler_pic='-DDLL_EXPORT' - case $host_os in - os2*) - lt_prog_compiler_static='$wl-static' - ;; - esac - ;; - - hpux9* | hpux10* | hpux11*) - lt_prog_compiler_wl='-Wl,' - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - lt_prog_compiler_pic='+Z' - ;; - esac - # Is there a better lt_prog_compiler_static that works with the bundled CC? - lt_prog_compiler_static='$wl-a ${wl}archive' - ;; - - irix5* | irix6* | nonstopux*) - lt_prog_compiler_wl='-Wl,' - # PIC (with -KPIC) is the default. - lt_prog_compiler_static='-non_shared' - ;; - - linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - case $cc_basename in - # old Intel for x86_64, which still supported -KPIC. - ecc*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-static' - ;; - # icc used to be incompatible with GCC. - # ICC 10 doesn't accept -KPIC any more. - icc* | ifort*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fPIC' - lt_prog_compiler_static='-static' - ;; - # Lahey Fortran 8.1. - lf95*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='--shared' - lt_prog_compiler_static='--static' - ;; - nagfor*) - # NAG Fortran compiler - lt_prog_compiler_wl='-Wl,-Wl,,' - lt_prog_compiler_pic='-PIC' - lt_prog_compiler_static='-Bstatic' - ;; - tcc*) - # Fabrice Bellard et al's Tiny C Compiler - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fPIC' - lt_prog_compiler_static='-static' - ;; - pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fpic' - lt_prog_compiler_static='-Bstatic' - ;; - ccc*) - lt_prog_compiler_wl='-Wl,' - # All Alpha code is PIC. - lt_prog_compiler_static='-non_shared' - ;; - xl* | bgxl* | bgf* | mpixl*) - # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-qpic' - lt_prog_compiler_static='-qstaticlink' - ;; - *) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) - # Sun Fortran 8.3 passes all unrecognized flags to the linker - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - lt_prog_compiler_wl='' - ;; - *Sun\ F* | *Sun*Fortran*) - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - lt_prog_compiler_wl='-Qoption ld ' - ;; - *Sun\ C*) - # Sun C 5.9 - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - lt_prog_compiler_wl='-Wl,' - ;; - *Intel*\ [CF]*Compiler*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fPIC' - lt_prog_compiler_static='-static' - ;; - *Portland\ Group*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fpic' - lt_prog_compiler_static='-Bstatic' - ;; - esac - ;; - esac - ;; - - newsos6) - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - ;; - - *nto* | *qnx*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - lt_prog_compiler_pic='-fPIC -shared' - ;; - - osf3* | osf4* | osf5*) - lt_prog_compiler_wl='-Wl,' - # All OSF/1 code is PIC. - lt_prog_compiler_static='-non_shared' - ;; - - rdos*) - lt_prog_compiler_static='-non_shared' - ;; - - solaris*) - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - case $cc_basename in - f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) - lt_prog_compiler_wl='-Qoption ld ';; - *) - lt_prog_compiler_wl='-Wl,';; - esac - ;; - - sunos4*) - lt_prog_compiler_wl='-Qoption ld ' - lt_prog_compiler_pic='-PIC' - lt_prog_compiler_static='-Bstatic' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - lt_prog_compiler_pic='-Kconform_pic' - lt_prog_compiler_static='-Bstatic' - fi - ;; - - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - ;; - - unicos*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_can_build_shared=no - ;; - - uts4*) - lt_prog_compiler_pic='-pic' - lt_prog_compiler_static='-Bstatic' - ;; - - *) - lt_prog_compiler_can_build_shared=no - ;; - esac - fi - -case $host_os in - # For platforms that do not support PIC, -DPIC is meaningless: - *djgpp*) - lt_prog_compiler_pic= - ;; - *) - lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" - ;; -esac - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 -$as_echo_n "checking for $compiler option to produce PIC... " >&6; } -if ${lt_cv_prog_compiler_pic+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_prog_compiler_pic=$lt_prog_compiler_pic -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 -$as_echo "$lt_cv_prog_compiler_pic" >&6; } -lt_prog_compiler_pic=$lt_cv_prog_compiler_pic - -# -# Check to make sure the PIC flag actually works. -# -if test -n "$lt_prog_compiler_pic"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 -$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } -if ${lt_cv_prog_compiler_pic_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_prog_compiler_pic_works=no - ac_outfile=conftest.$ac_objext - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - lt_cv_prog_compiler_pic_works=yes - fi - fi - $RM conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 -$as_echo "$lt_cv_prog_compiler_pic_works" >&6; } - -if test yes = "$lt_cv_prog_compiler_pic_works"; then - case $lt_prog_compiler_pic in - "" | " "*) ;; - *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; - esac -else - lt_prog_compiler_pic= - lt_prog_compiler_can_build_shared=no -fi - -fi - - - - - - - - - - - -# -# Check to make sure the static flag actually works. -# -wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 -$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } -if ${lt_cv_prog_compiler_static_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_prog_compiler_static_works=no - save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS $lt_tmp_static_flag" - echo "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The linker can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&5 - $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if diff conftest.exp conftest.er2 >/dev/null; then - lt_cv_prog_compiler_static_works=yes - fi - else - lt_cv_prog_compiler_static_works=yes - fi - fi - $RM -r conftest* - LDFLAGS=$save_LDFLAGS - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 -$as_echo "$lt_cv_prog_compiler_static_works" >&6; } - -if test yes = "$lt_cv_prog_compiler_static_works"; then - : -else - lt_prog_compiler_static= -fi - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 -$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if ${lt_cv_prog_compiler_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_prog_compiler_c_o=no - $RM -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp - $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 - if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then - lt_cv_prog_compiler_c_o=yes - fi - fi - chmod u+w . 2>&5 - $RM conftest* - # SGI C++ compiler will create directory out/ii_files/ for - # template instantiation - test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files - $RM out/* && rmdir out - cd .. - $RM -r conftest - $RM conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 -$as_echo "$lt_cv_prog_compiler_c_o" >&6; } - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 -$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if ${lt_cv_prog_compiler_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_prog_compiler_c_o=no - $RM -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp - $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 - if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then - lt_cv_prog_compiler_c_o=yes - fi - fi - chmod u+w . 2>&5 - $RM conftest* - # SGI C++ compiler will create directory out/ii_files/ for - # template instantiation - test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files - $RM out/* && rmdir out - cd .. - $RM -r conftest - $RM conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 -$as_echo "$lt_cv_prog_compiler_c_o" >&6; } - - - - -hard_links=nottested -if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then - # do not overwrite the value of need_locks provided by the user - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 -$as_echo_n "checking if we can lock with hard links... " >&6; } - hard_links=yes - $RM conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 -$as_echo "$hard_links" >&6; } - if test no = "$hard_links"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 -$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} - need_locks=warn - fi -else - need_locks=no -fi - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } - - runpath_var= - allow_undefined_flag= - always_export_symbols=no - archive_cmds= - archive_expsym_cmds= - compiler_needs_object=no - enable_shared_with_static_runtimes=no - export_dynamic_flag_spec= - export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - hardcode_automatic=no - hardcode_direct=no - hardcode_direct_absolute=no - hardcode_libdir_flag_spec= - hardcode_libdir_separator= - hardcode_minus_L=no - hardcode_shlibpath_var=unsupported - inherit_rpath=no - link_all_deplibs=unknown - module_cmds= - module_expsym_cmds= - old_archive_from_new_cmds= - old_archive_from_expsyms_cmds= - thread_safe_flag_spec= - whole_archive_flag_spec= - # include_expsyms should be a list of space-separated symbols to be *always* - # included in the symbol list - include_expsyms= - # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ' (' and ')$', so one must not match beginning or - # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', - # as well as any symbol that contains 'd'. - exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' - # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out - # platforms (ab)use it in PIC code, but their linkers get confused if - # the symbol is explicitly referenced. Since portable code cannot - # rely on this symbol name, it's probably fine to never include it in - # preloaded symbol tables. - # Exclude shared library initialization/finalization symbols. - extract_expsyms_cmds= - - case $host_os in - cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test yes != "$GCC"; then - with_gnu_ld=no - fi - ;; - interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++) - with_gnu_ld=yes - ;; - openbsd* | bitrig*) - with_gnu_ld=no - ;; - esac - - ld_shlibs=yes - - # On some targets, GNU ld is compatible enough with the native linker - # that we're better off using the native interface for both. - lt_use_gnu_ld_interface=no - if test yes = "$with_gnu_ld"; then - case $host_os in - aix*) - # The AIX port of GNU ld has always aspired to compatibility - # with the native linker. However, as the warning in the GNU ld - # block says, versions before 2.19.5* couldn't really create working - # shared libraries, regardless of the interface used. - case `$LD -v 2>&1` in - *\ \(GNU\ Binutils\)\ 2.19.5*) ;; - *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; - *\ \(GNU\ Binutils\)\ [3-9]*) ;; - *) - lt_use_gnu_ld_interface=yes - ;; - esac - ;; - *) - lt_use_gnu_ld_interface=yes - ;; - esac - fi - - if test yes = "$lt_use_gnu_ld_interface"; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='$wl' - - # Set some defaults for GNU ld with shared library support. These - # are reset later if shared libraries are not supported. Putting them - # here allows them to be overridden if necessary. - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - export_dynamic_flag_spec='$wl--export-dynamic' - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' - else - whole_archive_flag_spec= - fi - supports_anon_versioning=no - case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in - *GNU\ gold*) supports_anon_versioning=yes ;; - *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 - *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... - *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... - *\ 2.11.*) ;; # other 2.11 versions - *) supports_anon_versioning=yes ;; - esac - - # See if GNU ld supports shared libraries. - case $host_os in - aix[3-9]*) - # On AIX/PPC, the GNU linker is very broken - if test ia64 != "$host_cpu"; then - ld_shlibs=no - cat <<_LT_EOF 1>&2 - -*** Warning: the GNU linker, at least up to release 2.19, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to install binutils -*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. -*** You will then need to restart the configuration process. - -_LT_EOF - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='' - ;; - m68k) - archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - esac - ;; - - beos*) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach <jrb3@best.com> says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, - # as there is no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - export_dynamic_flag_spec='$wl--export-all-symbols' - allow_undefined_flag=unsupported - always_export_symbols=no - enable_shared_with_static_runtimes=yes - export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' - exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' - - if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file, use it as - # is; otherwise, prepend EXPORTS... - archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - ld_shlibs=no - fi - ;; - - haiku*) - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - link_all_deplibs=yes - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - shrext_cmds=.dll - archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - prefix_cmds="$SED"~ - if test EXPORTS = "`$SED 1q $export_symbols`"; then - prefix_cmds="$prefix_cmds -e 1d"; - fi~ - prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ - cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' - enable_shared_with_static_runtimes=yes - ;; - - interix[3-9]*) - hardcode_direct=no - hardcode_shlibpath_var=no - hardcode_libdir_flag_spec='$wl-rpath,$libdir' - export_dynamic_flag_spec='$wl-E' - # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. - # Instead, shared libraries are loaded at an image base (0x10000000 by - # default) and relocated if they conflict, which is a slow very memory - # consuming and fragmenting process. To avoid this, we pick a random, - # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link - # time. Moving up from 0x10000000 also allows more sbrk(2) space. - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - ;; - - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) - tmp_diet=no - if test linux-dietlibc = "$host_os"; then - case $cc_basename in - diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) - esac - fi - if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ - && test no = "$tmp_diet" - then - tmp_addflag=' $pic_flag' - tmp_sharedflag='-shared' - case $cc_basename,$host_cpu in - pgcc*) # Portland Group C compiler - whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - tmp_addflag=' $pic_flag' - ;; - pgf77* | pgf90* | pgf95* | pgfortran*) - # Portland Group f77 and f90 compilers - whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - tmp_addflag=' $pic_flag -Mnomain' ;; - ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 - tmp_addflag=' -i_dynamic' ;; - efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 - tmp_addflag=' -i_dynamic -nofor_main' ;; - ifc* | ifort*) # Intel Fortran compiler - tmp_addflag=' -nofor_main' ;; - lf95*) # Lahey Fortran 8.1 - whole_archive_flag_spec= - tmp_sharedflag='--shared' ;; - nagfor*) # NAGFOR 5.3 - tmp_sharedflag='-Wl,-shared' ;; - xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) - tmp_sharedflag='-qmkshrobj' - tmp_addflag= ;; - nvcc*) # Cuda Compiler Driver 2.2 - whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - compiler_needs_object=yes - ;; - esac - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) # Sun C 5.9 - whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - compiler_needs_object=yes - tmp_sharedflag='-G' ;; - *Sun\ F*) # Sun Fortran 8.3 - tmp_sharedflag='-G' ;; - esac - archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - - if test yes = "$supports_anon_versioning"; then - archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' - fi - - case $cc_basename in - tcc*) - export_dynamic_flag_spec='-rdynamic' - ;; - xlf* | bgf* | bgxlf* | mpixlf*) - # IBM XL Fortran 10.1 on PPC cannot create shared libs itself - whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' - if test yes = "$supports_anon_versioning"; then - archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' - fi - ;; - esac - else - ld_shlibs=no - fi - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris*) - if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <<_LT_EOF 1>&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) - case `$LD -v 2>&1` in - *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) - ld_shlibs=no - cat <<_LT_EOF 1>&2 - -*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot -*** reliably create shared libraries on SCO systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.16.91.0.3 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - ;; - *) - # For security reasons, it is highly recommended that you always - # use absolute paths for naming shared libraries, and exclude the - # DT_RUNPATH tag from executables and libraries. But doing so - # requires that you compile everything twice, which is a pain. - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test no = "$ld_shlibs"; then - runpath_var= - hardcode_libdir_flag_spec= - export_dynamic_flag_spec= - whole_archive_flag_spec= - fi - else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix[4-9]*) - if test ia64 = "$host_cpu"; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag= - else - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to GNU nm, but means don't demangle to AIX nm. - # Without the "-l" option, or with the "-B" option, AIX nm treats - # weak defined symbols like other global defined symbols, whereas - # GNU nm marks them as "W". - # While the 'weak' keyword is ignored in the Export File, we need - # it in the Import File for the 'aix-soname' feature, so we have - # to replace the "-B" option with "-P" for AIX nm. - if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' - else - export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' - fi - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # have runtime linking enabled, and use it for executables. - # For shared libraries, we enable/disable runtime linking - # depending on the kind of the shared library created - - # when "with_aix_soname,aix_use_runtimelinking" is: - # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables - # "aix,yes" lib.so shared, rtl:yes, for executables - # lib.a static archive - # "both,no" lib.so.V(shr.o) shared, rtl:yes - # lib.a(lib.so.V) shared, rtl:no, for executables - # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables - # lib.a(lib.so.V) shared, rtl:no - # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables - # lib.a static archive - case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) - for ld_flag in $LDFLAGS; do - if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then - aix_use_runtimelinking=yes - break - fi - done - if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then - # With aix-soname=svr4, we create the lib.so.V shared archives only, - # so we don't have lib.a shared libs to link our executables. - # We have to force runtime linking in this case. - aix_use_runtimelinking=yes - LDFLAGS="$LDFLAGS -Wl,-brtl" - fi - ;; - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - archive_cmds='' - hardcode_direct=yes - hardcode_direct_absolute=yes - hardcode_libdir_separator=':' - link_all_deplibs=yes - file_list_spec='$wl-f,' - case $with_aix_soname,$aix_use_runtimelinking in - aix,*) ;; # traditional, no import file - svr4,* | *,yes) # use import file - # The Import File defines what to hardcode. - hardcode_direct=no - hardcode_direct_absolute=no - ;; - esac - - if test yes = "$GCC"; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`$CC -print-prog-name=collect2` - if test -f "$collect2name" && - strings "$collect2name" | $GREP resolve_lib_name >/dev/null - then - # We have reworked collect2 - : - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - ;; - esac - shared_flag='-shared' - if test yes = "$aix_use_runtimelinking"; then - shared_flag="$shared_flag "'$wl-G' - fi - # Need to ensure runtime linking is disabled for the traditional - # shared library, or the linker may eventually find shared libraries - # /with/ Import File - we do not want to mix them. - shared_flag_aix='-shared' - shared_flag_svr4='-shared $wl-G' - else - # not using gcc - if test ia64 = "$host_cpu"; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test yes = "$aix_use_runtimelinking"; then - shared_flag='$wl-G' - else - shared_flag='$wl-bM:SRE' - fi - shared_flag_aix='$wl-bM:SRE' - shared_flag_svr4='$wl-G' - fi - fi - - export_dynamic_flag_spec='$wl-bexpall' - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to export. - always_export_symbols=yes - if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='-berok' - # Determine the default libpath from the value encoded in an - # empty executable. - if test set = "${lt_cv_aix_libpath+set}"; then - aix_libpath=$lt_cv_aix_libpath -else - if ${lt_cv_aix_libpath_+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - - lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\([^ ]*\) *$/\1/ - p - } - }' - lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - # Check for a 64-bit object if we didn't find anything. - if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - fi -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_=/usr/lib:/lib - fi - -fi - - aix_libpath=$lt_cv_aix_libpath_ -fi - - hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" - archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag - else - if test ia64 = "$host_cpu"; then - hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an - # empty executable. - if test set = "${lt_cv_aix_libpath+set}"; then - aix_libpath=$lt_cv_aix_libpath -else - if ${lt_cv_aix_libpath_+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - - lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\([^ ]*\) *$/\1/ - p - } - }' - lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - # Check for a 64-bit object if we didn't find anything. - if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - fi -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_=/usr/lib:/lib - fi - -fi - - aix_libpath=$lt_cv_aix_libpath_ -fi - - hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - no_undefined_flag=' $wl-bernotok' - allow_undefined_flag=' $wl-berok' - if test yes = "$with_gnu_ld"; then - # We only use this code for GNU lds that support --whole-archive. - whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive' - else - # Exported symbols can be pulled into shared objects from archives - whole_archive_flag_spec='$convenience' - fi - archive_cmds_need_lc=yes - archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' - # -brtl affects multiple linker settings, -berok does not and is overridden later - compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' - if test svr4 != "$with_aix_soname"; then - # This is similar to how AIX traditionally builds its shared libraries. - archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' - fi - if test aix != "$with_aix_soname"; then - archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' - else - # used by -dlpreopen to get the symbols - archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir' - fi - archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d' - fi - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='' - ;; - m68k) - archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - esac - ;; - - bsdi[45]*) - export_dynamic_flag_spec=-rdynamic - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - case $cc_basename in - cl*) - # Native MSVC - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - always_export_symbols=yes - file_list_spec='@' - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=.dll - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' - archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then - cp "$export_symbols" "$output_objdir/$soname.def"; - echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; - else - $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' - # The linker will not automatically build a static lib if we build a DLL. - # _LT_TAGVAR(old_archive_from_new_cmds, )='true' - enable_shared_with_static_runtimes=yes - exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' - export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' - # Don't use ranlib - old_postinstall_cmds='chmod 644 $oldlib' - postlink_cmds='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile=$lt_outputfile.exe - lt_tool_outputfile=$lt_tool_outputfile.exe - ;; - esac~ - if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' - ;; - *) - # Assume MSVC wrapper - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=.dll - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' - enable_shared_with_static_runtimes=yes - ;; - esac - ;; - - darwin* | rhapsody*) - - - archive_cmds_need_lc=no - hardcode_direct=no - hardcode_automatic=yes - hardcode_shlibpath_var=unsupported - if test yes = "$lt_cv_ld_force_load"; then - whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' - - else - whole_archive_flag_spec='' - fi - link_all_deplibs=yes - allow_undefined_flag=$_lt_dar_allow_undefined - case $cc_basename in - ifort*|nagfor*) _lt_dar_can_shared=yes ;; - *) _lt_dar_can_shared=$GCC ;; - esac - if test yes = "$_lt_dar_can_shared"; then - output_verbose_link_cmd=func_echo_all - archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" - module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" - archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" - module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" - - else - ld_shlibs=no - fi - - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2.*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | dragonfly*) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9*) - if test yes = "$GCC"; then - archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' - else - archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' - fi - hardcode_libdir_flag_spec='$wl+b $wl$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - export_dynamic_flag_spec='$wl-E' - ;; - - hpux10*) - if test yes,no = "$GCC,$with_gnu_ld"; then - archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' - fi - if test no = "$with_gnu_ld"; then - hardcode_libdir_flag_spec='$wl+b $wl$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_direct_absolute=yes - export_dynamic_flag_spec='$wl-E' - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - fi - ;; - - hpux11*) - if test yes,no = "$GCC,$with_gnu_ld"; then - case $host_cpu in - hppa*64*) - archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - else - case $host_cpu in - hppa*64*) - archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - - # Older versions of the 11.00 compiler do not understand -b yet - # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 -$as_echo_n "checking if $CC understands -b... " >&6; } -if ${lt_cv_prog_compiler__b+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_prog_compiler__b=no - save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -b" - echo "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The linker can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&5 - $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if diff conftest.exp conftest.er2 >/dev/null; then - lt_cv_prog_compiler__b=yes - fi - else - lt_cv_prog_compiler__b=yes - fi - fi - $RM -r conftest* - LDFLAGS=$save_LDFLAGS - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 -$as_echo "$lt_cv_prog_compiler__b" >&6; } - -if test yes = "$lt_cv_prog_compiler__b"; then - archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' -else - archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' -fi - - ;; - esac - fi - if test no = "$with_gnu_ld"; then - hardcode_libdir_flag_spec='$wl+b $wl$libdir' - hardcode_libdir_separator=: - - case $host_cpu in - hppa*64*|ia64*) - hardcode_direct=no - hardcode_shlibpath_var=no - ;; - *) - hardcode_direct=yes - hardcode_direct_absolute=yes - export_dynamic_flag_spec='$wl-E' - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - ;; - esac - fi - ;; - - irix5* | irix6* | nonstopux*) - if test yes = "$GCC"; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - # Try to use the -exported_symbol ld option, if it does not - # work, assume that -exports_file does not work either and - # implicitly export all symbols. - # This should be the same for all languages, so no per-tag cache variable. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 -$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } -if ${lt_cv_irix_exported_symbol+:} false; then : - $as_echo_n "(cached) " >&6 -else - save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -int foo (void) { return 0; } -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - lt_cv_irix_exported_symbol=yes -else - lt_cv_irix_exported_symbol=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$save_LDFLAGS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 -$as_echo "$lt_cv_irix_exported_symbol" >&6; } - if test yes = "$lt_cv_irix_exported_symbol"; then - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' - fi - else - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' - fi - archive_cmds_need_lc='no' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - hardcode_libdir_separator=: - inherit_rpath=yes - link_all_deplibs=yes - ;; - - linux*) - case $cc_basename in - tcc*) - # Fabrice Bellard et al's Tiny C Compiler - ld_shlibs=yes - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - *nto* | *qnx*) - ;; - - openbsd* | bitrig*) - if test -f /usr/libexec/ld.so; then - hardcode_direct=yes - hardcode_shlibpath_var=no - hardcode_direct_absolute=yes - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' - hardcode_libdir_flag_spec='$wl-rpath,$libdir' - export_dynamic_flag_spec='$wl-E' - else - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='$wl-rpath,$libdir' - fi - else - ld_shlibs=no - fi - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - shrext_cmds=.dll - archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - prefix_cmds="$SED"~ - if test EXPORTS = "`$SED 1q $export_symbols`"; then - prefix_cmds="$prefix_cmds -e 1d"; - fi~ - prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ - cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' - enable_shared_with_static_runtimes=yes - ;; - - osf3*) - if test yes = "$GCC"; then - allow_undefined_flag=' $wl-expect_unresolved $wl\*' - archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - fi - archive_cmds_need_lc='no' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test yes = "$GCC"; then - allow_undefined_flag=' $wl-expect_unresolved $wl\*' - archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' - - # Both c and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - archive_cmds_need_lc='no' - hardcode_libdir_separator=: - ;; - - solaris*) - no_undefined_flag=' -z defs' - if test yes = "$GCC"; then - wlarc='$wl' - archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' - else - case `$CC -V 2>&1` in - *"Compilers 5.0"*) - wlarc='' - archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' - ;; - *) - wlarc='$wl' - archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' - ;; - esac - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) - # The compiler driver will combine and reorder linker options, - # but understands '-z linker_flag'. GCC discards it without '$wl', - # but is careful enough not to reorder. - # Supported since Solaris 2.6 (maybe 2.5.1?) - if test yes = "$GCC"; then - whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' - else - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' - fi - ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - if test sequent = "$host_vendor"; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - case $host_vendor in - sni) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - reload_cmds='$CC -r -o $output$reload_objs' - hardcode_direct=no - ;; - motorola) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) - no_undefined_flag='$wl-z,text' - archive_cmds_need_lc=no - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - - if test yes = "$GCC"; then - archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - sysv5* | sco3.2v5* | sco5v6*) - # Note: We CANNOT use -z defs as we might desire, because we do not - # link with -lc, and that would cause any symbols used from libc to - # always be unresolved, which means just about no library would - # ever link correctly. If we're not using GNU ld we use -z text - # though, which does catch some bad symbols but isn't as heavy-handed - # as -z defs. - no_undefined_flag='$wl-z,text' - allow_undefined_flag='$wl-z,nodefs' - archive_cmds_need_lc=no - hardcode_shlibpath_var=no - hardcode_libdir_flag_spec='$wl-R,$libdir' - hardcode_libdir_separator=':' - link_all_deplibs=yes - export_dynamic_flag_spec='$wl-Bexport' - runpath_var='LD_RUN_PATH' - - if test yes = "$GCC"; then - archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac - - if test sni = "$host_vendor"; then - case $host in - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - export_dynamic_flag_spec='$wl-Blargedynsym' - ;; - esac - fi - fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 -$as_echo "$ld_shlibs" >&6; } -test no = "$ld_shlibs" && can_build_shared=no - -with_gnu_ld=$with_gnu_ld - - - - - - - - - - - - - - - -# -# Do we need to explicitly link libc? -# -case "x$archive_cmds_need_lc" in -x|xyes) - # Assume -lc should be added - archive_cmds_need_lc=yes - - if test yes,yes = "$GCC,$enable_shared"; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 -$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } -if ${lt_cv_archive_cmds_need_lc+:} false; then : - $as_echo_n "(cached) " >&6 -else - $RM conftest* - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_prog_compiler_wl - pic_flag=$lt_prog_compiler_pic - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 - (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - then - lt_cv_archive_cmds_need_lc=no - else - lt_cv_archive_cmds_need_lc=yes - fi - allow_undefined_flag=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $RM conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 -$as_echo "$lt_cv_archive_cmds_need_lc" >&6; } - archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc - ;; - esac - fi - ;; -esac - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 -$as_echo_n "checking dynamic linker characteristics... " >&6; } - -if test yes = "$GCC"; then - case $host_os in - darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; - *) lt_awk_arg='/^libraries:/' ;; - esac - case $host_os in - mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;; - *) lt_sed_strip_eq='s|=/|/|g' ;; - esac - lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` - case $lt_search_path_spec in - *\;*) - # if the path contains ";" then we assume it to be the separator - # otherwise default to the standard path separator (i.e. ":") - it is - # assumed that no part of a normal pathname contains ";" but that should - # okay in the real world where ";" in dirpaths is itself problematic. - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` - ;; - *) - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` - ;; - esac - # Ok, now we have the path, separated by spaces, we can step through it - # and add multilib dir if necessary... - lt_tmp_lt_search_path_spec= - lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` - # ...but if some path component already ends with the multilib dir we assume - # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). - case "$lt_multi_os_dir; $lt_search_path_spec " in - "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) - lt_multi_os_dir= - ;; - esac - for lt_sys_path in $lt_search_path_spec; do - if test -d "$lt_sys_path$lt_multi_os_dir"; then - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" - elif test -n "$lt_multi_os_dir"; then - test -d "$lt_sys_path" && \ - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" - fi - done - lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' -BEGIN {RS = " "; FS = "/|\n";} { - lt_foo = ""; - lt_count = 0; - for (lt_i = NF; lt_i > 0; lt_i--) { - if ($lt_i != "" && $lt_i != ".") { - if ($lt_i == "..") { - lt_count++; - } else { - if (lt_count == 0) { - lt_foo = "/" $lt_i lt_foo; - } else { - lt_count--; - } - } - } - } - if (lt_foo != "") { lt_freq[lt_foo]++; } - if (lt_freq[lt_foo] == 1) { print lt_foo; } -}'` - # AWK program above erroneously prepends '/' to C:/dos/paths - # for these hosts. - case $host_os in - mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ - $SED 's|/\([A-Za-z]:\)|\1|g'` ;; - esac - sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` -else - sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -fi -library_names_spec= -libname_spec='lib$name' -soname_spec= -shrext_cmds=.so -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -need_lib_prefix=unknown -hardcode_into_libs=no - -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -need_version=unknown - - - -case $host_os in -aix3*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='$libname$release$shared_ext$major' - ;; - -aix[4-9]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test ia64 = "$host_cpu"; then - # AIX 5 supports IA64 - library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line '#! .'. This would cause the generated library to - # depend on '.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[01] | aix4.[01].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # Using Import Files as archive members, it is possible to support - # filename-based versioning of shared library archives on AIX. While - # this would work for both with and without runtime linking, it will - # prevent static linking of such archives. So we do filename-based - # shared library versioning with .so extension only, which is used - # when both runtime linking and shared linking is enabled. - # Unfortunately, runtime linking may impact performance, so we do - # not want this to be the default eventually. Also, we use the - # versioned .so libs for executables only if there is the -brtl - # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. - # To allow for filename-based versioning support, we need to create - # libNAME.so.V as an archive file, containing: - # *) an Import File, referring to the versioned filename of the - # archive as well as the shared archive member, telling the - # bitwidth (32 or 64) of that shared object, and providing the - # list of exported symbols of that shared object, eventually - # decorated with the 'weak' keyword - # *) the shared object with the F_LOADONLY flag set, to really avoid - # it being seen by the linker. - # At run time we better use the real file rather than another symlink, - # but for link time we create the symlink libNAME.so -> libNAME.so.V - - case $with_aix_soname,$aix_use_runtimelinking in - # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - aix,yes) # traditional libtool - dynamic_linker='AIX unversionable lib.so' - # If using run time linking (on AIX 4.2 or later) use lib<name>.so - # instead of lib<name>.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - ;; - aix,no) # traditional AIX only - dynamic_linker='AIX lib.a(lib.so.V)' - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='$libname$release.a $libname.a' - soname_spec='$libname$release$shared_ext$major' - ;; - svr4,*) # full svr4 only - dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" - library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' - # We do not specify a path in Import Files, so LIBPATH fires. - shlibpath_overrides_runpath=yes - ;; - *,yes) # both, prefer svr4 - dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" - library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' - # unpreferred sharedlib libNAME.a needs extra handling - postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' - postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' - # We do not specify a path in Import Files, so LIBPATH fires. - shlibpath_overrides_runpath=yes - ;; - *,no) # both, prefer aix - dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" - library_names_spec='$libname$release.a $libname.a' - soname_spec='$libname$release$shared_ext$major' - # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling - postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' - postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' - ;; - esac - shlibpath_var=LIBPATH - fi - ;; - -amigaos*) - case $host_cpu in - powerpc) - # Since July 2007 AmigaOS4 officially supports .so libraries. - # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - ;; - m68k) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' - ;; - esac - ;; - -beos*) - library_names_spec='$libname$shared_ext' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi[45]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32* | cegcc*) - version_type=windows - shrext_cmds=.dll - need_version=no - need_lib_prefix=no - - case $GCC,$cc_basename in - yes,*) - # gcc - library_names_spec='$libname.dll.a' - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname~ - chmod a+x \$dldir/$dlname~ - if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then - eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; - fi' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - shlibpath_overrides_runpath=yes - - case $host_os in - cygwin*) - # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' - - sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" - ;; - mingw* | cegcc*) - # MinGW DLLs use traditional 'lib' prefix - soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' - ;; - pw32*) - # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' - ;; - esac - dynamic_linker='Win32 ld.exe' - ;; - - *,cl*) - # Native MSVC - libname_spec='$name' - soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' - library_names_spec='$libname.dll.lib' - - case $build_os in - mingw*) - sys_lib_search_path_spec= - lt_save_ifs=$IFS - IFS=';' - for lt_path in $LIB - do - IFS=$lt_save_ifs - # Let DOS variable expansion print the short 8.3 style file name. - lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` - sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" - done - IFS=$lt_save_ifs - # Convert to MSYS style. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` - ;; - cygwin*) - # Convert to unix form, then to dos form, then back to unix form - # but this time dos style (no spaces!) so that the unix form looks - # like /cygdrive/c/PROGRA~1:/cygdr... - sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` - sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` - sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - ;; - *) - sys_lib_search_path_spec=$LIB - if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then - # It is most probably a Windows format PATH. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi - # FIXME: find the short name or the path components, as spaces are - # common. (e.g. "Program Files" -> "PROGRA~1") - ;; - esac - - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - shlibpath_overrides_runpath=yes - dynamic_linker='Win32 link.exe' - ;; - - *) - # Assume MSVC wrapper - library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' - dynamic_linker='Win32 ld.exe' - ;; - esac - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' - soname_spec='$libname$release$major$shared_ext' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' - - sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" - sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' - ;; - -dgux*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -freebsd* | dragonfly*) - # DragonFly does not have aout. When/if they implement a new - # versioning mechanism, adjust this. - if test -x /usr/bin/objformat; then - objformat=`/usr/bin/objformat` - else - case $host_os in - freebsd[23].*) objformat=aout ;; - *) objformat=elf ;; - esac - fi - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2.*) - shlibpath_overrides_runpath=yes - ;; - freebsd3.[01]* | freebsdelf3.[01]*) - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ - freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - *) # from 4.6 on, and DragonFly - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - esac - ;; - -haiku*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - dynamic_linker="$host_os runtime_loader" - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LIBRARY_PATH - shlibpath_overrides_runpath=no - sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - version_type=sunos - need_lib_prefix=no - need_version=no - case $host_cpu in - ia64*) - shrext_cmds='.so' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.so" - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - if test 32 = "$HPUX_IA64_MODE"; then - sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" - sys_lib_dlsearch_path_spec=/usr/lib/hpux32 - else - sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" - sys_lib_dlsearch_path_spec=/usr/lib/hpux64 - fi - ;; - hppa*64*) - shrext_cmds='.sl' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.sl" - shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - *) - shrext_cmds='.sl' - dynamic_linker="$host_os dld.sl" - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - ;; - esac - # HP-UX runs *really* slowly unless shared libraries are mode 555, ... - postinstall_cmds='chmod 555 $lib' - # or fails outright, so override atomically: - install_override_mode=555 - ;; - -interix[3-9]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) - if test yes = "$lt_cv_prog_gnu_ld"; then - version_type=linux # correct to gnu/linux during the next big refactor - else - version_type=irix - fi ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='$libname$release$shared_ext$major' - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") - libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") - libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") - libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" - sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" - hardcode_into_libs=yes - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux*oldld* | linux*aout* | linux*coff*) - dynamic_linker=no - ;; - -linux*android*) - version_type=none # Android doesn't support versioned libraries. - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext' - soname_spec='$libname$release$shared_ext' - finish_cmds= - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - dynamic_linker='Android linker' - # Don't embed -rpath directories since the linker doesn't support them. - hardcode_libdir_flag_spec='-L$libdir' - ;; - -# This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - - # Some binutils ld are patched to set DT_RUNPATH - if ${lt_cv_shlibpath_overrides_runpath+:} false; then : - $as_echo_n "(cached) " >&6 -else - lt_cv_shlibpath_overrides_runpath=no - save_LDFLAGS=$LDFLAGS - save_libdir=$libdir - eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ - LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : - lt_cv_shlibpath_overrides_runpath=yes -fi -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$save_LDFLAGS - libdir=$save_libdir - -fi - - shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath - - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # Ideally, we could use ldconfig to report *all* directores which are - # searched for libraries, however this is still not possible. Aside from not - # being certain /sbin/ldconfig is available, command - # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, - # even though it is searched at run-time. Try to do the best guess by - # appending ld.so.conf contents (and includes) to the search path. - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -*nto* | *qnx*) - version_type=qnx - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='ldqnx.so' - ;; - -openbsd* | bitrig*) - version_type=sunos - sys_lib_dlsearch_path_spec=/usr/lib - need_lib_prefix=no - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - need_version=no - else - need_version=yes - fi - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -os2*) - libname_spec='$name' - version_type=windows - shrext_cmds=.dll - need_version=no - need_lib_prefix=no - # OS/2 can only load a DLL with a base name of 8 characters or less. - soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; - v=$($ECHO $release$versuffix | tr -d .-); - n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); - $ECHO $n$v`$shared_ext' - library_names_spec='${libname}_dll.$libext' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=BEGINLIBPATH - sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname~ - chmod a+x \$dldir/$dlname~ - if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then - eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; - fi' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_lib_prefix=no - need_version=no - soname_spec='$libname$release$shared_ext$major' - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - -rdos*) - dynamic_linker=no - ;; - -solaris*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test yes = "$with_gnu_ld"; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.3*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -sysv4*MP*) - if test -d /usr/nec; then - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' - soname_spec='$libname$shared_ext.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=sco - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - if test yes = "$with_gnu_ld"; then - sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' - else - sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' - case $host_os in - sco3.2v5*) - sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" - ;; - esac - fi - sys_lib_dlsearch_path_spec='/usr/lib' - ;; - -tpf*) - # TPF is a cross-target only. Preferred cross-host = GNU/Linux. - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -uts4*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -*) - dynamic_linker=no - ;; -esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 -$as_echo "$dynamic_linker" >&6; } -test no = "$dynamic_linker" && can_build_shared=no - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test yes = "$GCC"; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then - sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec -fi - -if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then - sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec -fi - -# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... -configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec - -# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code -func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" - -# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool -configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 -$as_echo_n "checking how to hardcode library paths into programs... " >&6; } -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || - test -n "$runpath_var" || - test yes = "$hardcode_automatic"; then - - # We can hardcode non-existent directories. - if test no != "$hardcode_direct" && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" && - test no != "$hardcode_minus_L"; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 -$as_echo "$hardcode_action" >&6; } - -if test relink = "$hardcode_action" || - test yes = "$inherit_rpath"; then - # Fast installation is not supported - enable_fast_install=no -elif test yes = "$shlibpath_overrides_runpath" || - test no = "$enable_shared"; then - # Fast installation is not necessary - enable_fast_install=needless -fi - - - - - - - if test yes != "$enable_dlopen"; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen=load_add_on - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - mingw* | pw32* | cegcc*) - lt_cv_dlopen=LoadLibrary - lt_cv_dlopen_libs= - ;; - - cygwin*) - lt_cv_dlopen=dlopen - lt_cv_dlopen_libs= - ;; - - darwin*) - # if libdl is installed we need to link against it - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 -$as_echo_n "checking for dlopen in -ldl... " >&6; } -if ${ac_cv_lib_dl_dlopen+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dlopen (); -int -main () -{ -return dlopen (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_dl_dlopen=yes -else - ac_cv_lib_dl_dlopen=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 -$as_echo "$ac_cv_lib_dl_dlopen" >&6; } -if test "x$ac_cv_lib_dl_dlopen" = xyes; then : - lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl -else - - lt_cv_dlopen=dyld - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - -fi - - ;; - - tpf*) - # Don't try to run any link tests for TPF. We know it's impossible - # because TPF is a cross-compiler, and we know how we open DSOs. - lt_cv_dlopen=dlopen - lt_cv_dlopen_libs= - lt_cv_dlopen_self=no - ;; - - *) - ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" -if test "x$ac_cv_func_shl_load" = xyes; then : - lt_cv_dlopen=shl_load -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 -$as_echo_n "checking for shl_load in -ldld... " >&6; } -if ${ac_cv_lib_dld_shl_load+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char shl_load (); -int -main () -{ -return shl_load (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_dld_shl_load=yes -else - ac_cv_lib_dld_shl_load=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 -$as_echo "$ac_cv_lib_dld_shl_load" >&6; } -if test "x$ac_cv_lib_dld_shl_load" = xyes; then : - lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld -else - ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" -if test "x$ac_cv_func_dlopen" = xyes; then : - lt_cv_dlopen=dlopen -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 -$as_echo_n "checking for dlopen in -ldl... " >&6; } -if ${ac_cv_lib_dl_dlopen+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dlopen (); -int -main () -{ -return dlopen (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_dl_dlopen=yes -else - ac_cv_lib_dl_dlopen=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 -$as_echo "$ac_cv_lib_dl_dlopen" >&6; } -if test "x$ac_cv_lib_dl_dlopen" = xyes; then : - lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 -$as_echo_n "checking for dlopen in -lsvld... " >&6; } -if ${ac_cv_lib_svld_dlopen+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsvld $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dlopen (); -int -main () -{ -return dlopen (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_svld_dlopen=yes -else - ac_cv_lib_svld_dlopen=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 -$as_echo "$ac_cv_lib_svld_dlopen" >&6; } -if test "x$ac_cv_lib_svld_dlopen" = xyes; then : - lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 -$as_echo_n "checking for dld_link in -ldld... " >&6; } -if ${ac_cv_lib_dld_dld_link+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dld_link (); -int -main () -{ -return dld_link (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_dld_dld_link=yes -else - ac_cv_lib_dld_dld_link=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 -$as_echo "$ac_cv_lib_dld_dld_link" >&6; } -if test "x$ac_cv_lib_dld_dld_link" = xyes; then : - lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld -fi - - -fi - - -fi - - -fi - - -fi - - -fi - - ;; - esac - - if test no = "$lt_cv_dlopen"; then - enable_dlopen=no - else - enable_dlopen=yes - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS=$CPPFLAGS - test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS=$LDFLAGS - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS=$LIBS - LIBS="$lt_cv_dlopen_libs $LIBS" - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 -$as_echo_n "checking whether a program can dlopen itself... " >&6; } -if ${lt_cv_dlopen_self+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test yes = "$cross_compiling"; then : - lt_cv_dlopen_self=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF -#line $LINENO "configure" -#include "confdefs.h" - -#if HAVE_DLFCN_H -#include <dlfcn.h> -#endif - -#include <stdio.h> - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -/* When -fvisibility=hidden is used, assume the code has been annotated - correspondingly for the symbols needed. */ -#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) -int fnord () __attribute__((visibility("default"))); -#endif - -int fnord () { return 42; } -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else - { - if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - else puts (dlerror ()); - } - /* dlclose (self); */ - } - else - puts (dlerror ()); - - return status; -} -_LT_EOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then - (./conftest; exit; ) >&5 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; - x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self=no - fi -fi -rm -fr conftest* - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 -$as_echo "$lt_cv_dlopen_self" >&6; } - - if test yes = "$lt_cv_dlopen_self"; then - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 -$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } -if ${lt_cv_dlopen_self_static+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test yes = "$cross_compiling"; then : - lt_cv_dlopen_self_static=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF -#line $LINENO "configure" -#include "confdefs.h" - -#if HAVE_DLFCN_H -#include <dlfcn.h> -#endif - -#include <stdio.h> - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -/* When -fvisibility=hidden is used, assume the code has been annotated - correspondingly for the symbols needed. */ -#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) -int fnord () __attribute__((visibility("default"))); -#endif - -int fnord () { return 42; } -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else - { - if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - else puts (dlerror ()); - } - /* dlclose (self); */ - } - else - puts (dlerror ()); - - return status; -} -_LT_EOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then - (./conftest; exit; ) >&5 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self_static=no - fi -fi -rm -fr conftest* - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 -$as_echo "$lt_cv_dlopen_self_static" >&6; } - fi - - CPPFLAGS=$save_CPPFLAGS - LDFLAGS=$save_LDFLAGS - LIBS=$save_LIBS - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi - - - - - - - - - - - - - - - - - -striplib= -old_striplib= -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 -$as_echo_n "checking whether stripping libraries is possible... " >&6; } -if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else -# FIXME - insert some real tests, host_os isn't really good enough - case $host_os in - darwin*) - if test -n "$STRIP"; then - striplib="$STRIP -x" - old_striplib="$STRIP -S" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - fi - ;; - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; - esac -fi - - - - - - - - - - - - - # Report what library types will actually be built - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 -$as_echo_n "checking if libtool supports shared libraries... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 -$as_echo "$can_build_shared" >&6; } - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 -$as_echo_n "checking whether to build shared libraries... " >&6; } - test no = "$can_build_shared" && enable_shared=no - - # On AIX, shared libraries and static libraries use the same namespace, and - # are all built from PIC. - case $host_os in - aix3*) - test yes = "$enable_shared" && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - - aix[4-9]*) - if test ia64 != "$host_cpu"; then - case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in - yes,aix,yes) ;; # shared object as lib.so file only - yes,svr4,*) ;; # shared object as lib.so archive member only - yes,*) enable_static=no ;; # shared object in lib.a archive as well - esac - fi - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 -$as_echo "$enable_shared" >&6; } - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 -$as_echo_n "checking whether to build static libraries... " >&6; } - # Make sure either enable_shared or enable_static is yes. - test yes = "$enable_shared" || enable_static=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 -$as_echo "$enable_static" >&6; } - - - - -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -CC=$lt_save_CC - - - - - - - - - - - - - - - - ac_config_commands="$ac_config_commands libtool" - - - - -# Only expand once: - - - -# The cast to long int works around a bug in the HP C Compiler -# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects -# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. -# This bug is HP SR number 8606223364. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void *" >&5 -$as_echo_n "checking size of void *... " >&6; } -if ${ac_cv_sizeof_void_p+:} false; then : - $as_echo_n "(cached) " >&6 -else - if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void *))" "ac_cv_sizeof_void_p" "$ac_includes_default"; then : - -else - if test "$ac_cv_type_void_p" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "cannot compute sizeof (void *) -See \`config.log' for more details" "$LINENO" 5; } - else - ac_cv_sizeof_void_p=0 - fi -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_void_p" >&5 -$as_echo "$ac_cv_sizeof_void_p" >&6; } - - - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_VOID_P $ac_cv_sizeof_void_p -_ACEOF - - -case $host:$ac_cv_sizeof_void_p in #( - *-*-mingw*:4) : - kpse_dll_name=texlua52 ;; #( - *-*-mingw*:8) : - kpse_dll_name=texlua52 ;; #( - *-*-cygwin:4) : - kpse_dll_name= ;; #( - *-*-cygwin:8) : - kpse_dll_name= ;; #( - *) : - kpse_dll_name= ;; -esac - - - - - -ac_config_headers="$ac_config_headers config.h" - - if test "x$enable_build" != xno; then - build_TRUE= - build_FALSE='#' -else - build_TRUE='#' - build_FALSE= -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing pow" >&5 -$as_echo_n "checking for library containing pow... " >&6; } -if ${ac_cv_search_pow+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pow (); -int -main () -{ -return pow (); - ; - return 0; -} -_ACEOF -for ac_lib in '' m; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_pow=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_pow+:} false; then : - break -fi -done -if ${ac_cv_search_pow+:} false; then : - -else - ac_cv_search_pow=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_pow" >&5 -$as_echo "$ac_cv_search_pow" >&6; } -ac_res=$ac_cv_search_pow -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for native WIN32 or MINGW32" >&5 -$as_echo_n "checking for native WIN32 or MINGW32... " >&6; } -if ${kpse_cv_have_win32+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef WIN32 - choke me -#endif -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __MINGW32__ - choke me -#endif -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - kpse_cv_have_win32=mingw32 -else - kpse_cv_have_win32=native -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - kpse_cv_have_win32=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $kpse_cv_have_win32" >&5 -$as_echo "$kpse_cv_have_win32" >&6; } - -LUA52_DEFINES='-DLUA_COMPAT_MODULE -DLUAI_HASHLIMIT=6' - -if test "x$kpse_cv_have_win32" = xno; then - LUA52_DEFINES="$LUA52_DEFINES -DLUA_USE_POSIX" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5 -$as_echo_n "checking for library containing dlopen... " >&6; } -if ${ac_cv_search_dlopen+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dlopen (); -int -main () -{ -return dlopen (); - ; - return 0; -} -_ACEOF -for ac_lib in '' dl; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_dlopen=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_dlopen+:} false; then : - break -fi -done -if ${ac_cv_search_dlopen+:} false; then : - -else - ac_cv_search_dlopen=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5 -$as_echo "$ac_cv_search_dlopen" >&6; } -ac_res=$ac_cv_search_dlopen -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -fi - - if test "x$ac_cv_search_dlopen" != xno; then - ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default -" -if test "x$ac_cv_header_dlfcn_h" = xyes; then : - LUA52_DEFINES="$LUA52_DEFINES -DLUA_USE_DLOPEN" -fi - - - fi -fi - -# Check whether --enable-largefile was given. -if test "${enable_largefile+set}" = set; then : - enableval=$enable_largefile; -fi - -if test "$enable_largefile" != no; then - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 -$as_echo_n "checking for special C compiler options needed for large files... " >&6; } -if ${ac_cv_sys_largefile_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_sys_largefile_CC=no - if test "$GCC" != yes; then - ac_save_CC=$CC - while :; do - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <sys/types.h> - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main () -{ - - ; - return 0; -} -_ACEOF - if ac_fn_c_try_compile "$LINENO"; then : - break -fi -rm -f core conftest.err conftest.$ac_objext - CC="$CC -n32" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_largefile_CC=' -n32'; break -fi -rm -f core conftest.err conftest.$ac_objext - break - done - CC=$ac_save_CC - rm -f conftest.$ac_ext - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 -$as_echo "$ac_cv_sys_largefile_CC" >&6; } - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 -$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } -if ${ac_cv_sys_file_offset_bits+:} false; then : - $as_echo_n "(cached) " >&6 -else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <sys/types.h> - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_file_offset_bits=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _FILE_OFFSET_BITS 64 -#include <sys/types.h> - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_file_offset_bits=64; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_sys_file_offset_bits=unknown - break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 -$as_echo "$ac_cv_sys_file_offset_bits" >&6; } -case $ac_cv_sys_file_offset_bits in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits -_ACEOF -;; -esac -rm -rf conftest* - if test $ac_cv_sys_file_offset_bits = unknown; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 -$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } -if ${ac_cv_sys_large_files+:} false; then : - $as_echo_n "(cached) " >&6 -else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <sys/types.h> - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_large_files=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _LARGE_FILES 1 -#include <sys/types.h> - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_large_files=1; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_sys_large_files=unknown - break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 -$as_echo "$ac_cv_sys_large_files" >&6; } -case $ac_cv_sys_large_files in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _LARGE_FILES $ac_cv_sys_large_files -_ACEOF -;; -esac -rm -rf conftest* - fi - - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGEFILE_SOURCE value needed for large files" >&5 -$as_echo_n "checking for _LARGEFILE_SOURCE value needed for large files... " >&6; } -if ${ac_cv_sys_largefile_source+:} false; then : - $as_echo_n "(cached) " >&6 -else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <sys/types.h> /* for off_t */ - #include <stdio.h> -int -main () -{ -int (*fp) (FILE *, off_t, int) = fseeko; - return fseeko (stdin, 0, 0) && fp (stdin, 0, 0); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_sys_largefile_source=no; break -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _LARGEFILE_SOURCE 1 -#include <sys/types.h> /* for off_t */ - #include <stdio.h> -int -main () -{ -int (*fp) (FILE *, off_t, int) = fseeko; - return fseeko (stdin, 0, 0) && fp (stdin, 0, 0); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_sys_largefile_source=1; break -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - ac_cv_sys_largefile_source=unknown - break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_source" >&5 -$as_echo "$ac_cv_sys_largefile_source" >&6; } -case $ac_cv_sys_largefile_source in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _LARGEFILE_SOURCE $ac_cv_sys_largefile_source -_ACEOF -;; -esac -rm -rf conftest* - -# We used to try defining _XOPEN_SOURCE=500 too, to work around a bug -# in glibc 2.1.3, but that breaks too many other things. -# If you want fseeko and ftello with glibc, upgrade to a fixed glibc. -if test $ac_cv_sys_largefile_source != unknown; then - -$as_echo "#define HAVE_FSEEKO 1" >>confdefs.h - -fi - -if test "x$enable_largefile" != xno; then - case $ac_cv_sys_file_offset_bits in #( - no) : - ;; #( - unknown) : - case $ac_cv_sys_large_files in #( - no | unknown) : - ;; #( - *) : - LUA52_DEFINES="$LUA52_DEFINES -D_LARGE_FILES" ;; -esac ;; #( - *) : - LUA52_DEFINES="$LUA52_DEFINES -D_FILE_OFFSET_BITS=64" ;; -esac -fi -case $ac_cv_sys_largefile_source in #( - no | unknown) : - ;; #( - *) : - LUA52_DEFINES="$LUA52_DEFINES -D_LARGEFILE_SOURCE" ;; -esac - - -if test "x$ac_cv_header_stdc" = xyes; then - LUA52_DEFINES="$LUA52_DEFINES -DHAVE_UNISTD_H" -fi - -LUA52_TREE=lua52-src - - -ac_config_files="$ac_config_files Makefile include/Makefile texlua52.pc" - - -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, we kill variables containing newlines. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -( - for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - - (set) 2>&1 | - case $as_nl`(ac_space=' '; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes: double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \. - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; #( - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) | - sed ' - /^ac_cv_env_/b end - t clear - :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - :end' >>confcache -if diff "$cache_file" confcache >/dev/null 2>&1; then :; else - if test -w "$cache_file"; then - if test "x$cache_file" != "x/dev/null"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 -$as_echo "$as_me: updating cache $cache_file" >&6;} - if test ! -f "$cache_file" || test -h "$cache_file"; then - cat confcache >"$cache_file" - else - case $cache_file in #( - */* | ?:*) - mv -f confcache "$cache_file"$$ && - mv -f "$cache_file"$$ "$cache_file" ;; #( - *) - mv -f confcache "$cache_file" ;; - esac - fi - fi - else - { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 -$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -U= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`$as_echo "$ac_i" | sed "$ac_script"` - # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR - # will be set to the directory where LIBOBJS objects are built. - as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" - as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 -$as_echo_n "checking that generated files are newer than configure... " >&6; } - if test -n "$am_sleep_pid"; then - # Hide warnings about reused PIDs. - wait $am_sleep_pid 2>/dev/null - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 -$as_echo "done" >&6; } - if test -n "$EXEEXT"; then - am__EXEEXT_TRUE= - am__EXEEXT_FALSE='#' -else - am__EXEEXT_TRUE='#' - am__EXEEXT_FALSE= -fi - -if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then - as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then - as_fn_error $? "conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - as_fn_error $? "conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - as_fn_error $? "conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${build_TRUE}" && test -z "${build_FALSE}"; then - as_fn_error $? "conditional \"build\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi - -: "${CONFIG_STATUS=./config.status}" -ac_write_fail=0 -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 -$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} -as_write_fail=0 -cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=\${CONFIG_SHELL-$SHELL} -export SHELL -_ASEOF -cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -_ASEOF -test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by lua52 (TeX Live) $as_me 5.2.4, which was -generated by GNU Autoconf 2.69. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -_ACEOF - -case $ac_config_files in *" -"*) set x $ac_config_files; shift; ac_config_files=$*;; -esac - -case $ac_config_headers in *" -"*) set x $ac_config_headers; shift; ac_config_headers=$*;; -esac - - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# Files that config.status was made for. -config_files="$ac_config_files" -config_headers="$ac_config_headers" -config_commands="$ac_config_commands" - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to <tex-k@tug.org>." - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" -ac_cs_version="\\ -lua52 (TeX Live) config.status 5.2.4 -configured by $0, generated by GNU Autoconf 2.69, - with options \\"\$ac_cs_config\\" - -Copyright (C) 2012 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='$ac_pwd' -srcdir='$srcdir' -INSTALL='$INSTALL' -MKDIR_P='$MKDIR_P' -AWK='$AWK' -test -n "\$AWK" || AWK=awk -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -if \$ac_cs_recheck; then - set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - shift - \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 - CONFIG_SHELL='$SHELL' - export CONFIG_SHELL - exec "\$@" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# -# INIT-COMMANDS -# -AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}" - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='$sed_quote_subst' -double_quote_subst='$double_quote_subst' -delay_variable_subst='$delay_variable_subst' -macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' -macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' -AS='`$ECHO "$AS" | $SED "$delay_single_quote_subst"`' -DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' -OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' -enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' -enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' -pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' -enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' -shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' -SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' -ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' -PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' -host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' -host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' -host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' -build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' -build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' -build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' -SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' -Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' -GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' -EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' -FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' -LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' -NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' -LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' -max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' -ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' -exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' -lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' -lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' -lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' -lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' -lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' -reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' -reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' -deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' -file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' -file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' -want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' -sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' -AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' -AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' -archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' -STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' -RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' -old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' -old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' -old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' -lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' -CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' -CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' -compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' -GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' -lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' -nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' -lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' -lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' -objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' -MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' -lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' -lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' -lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' -lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' -lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' -need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' -MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' -DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' -NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' -LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' -OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' -OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' -libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' -shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' -extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' -archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' -enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' -export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' -whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' -compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' -old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' -old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' -archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' -archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' -module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' -module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' -with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' -allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' -no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' -hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' -hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' -hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' -hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' -hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' -hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' -hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' -inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' -link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' -always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' -export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' -exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' -include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' -prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' -postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' -file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' -variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' -need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' -need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' -version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' -runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' -shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' -shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' -libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' -library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' -soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' -install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' -postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' -postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' -finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' -finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' -hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' -sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' -configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' -configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' -hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' -enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' -enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' -enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' -old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' -striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' - -LTCC='$LTCC' -LTCFLAGS='$LTCFLAGS' -compiler='$compiler_DEFAULT' - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -\$1 -_LTECHO_EOF' -} - -# Quote evaled strings. -for var in AS \ -DLLTOOL \ -OBJDUMP \ -SHELL \ -ECHO \ -PATH_SEPARATOR \ -SED \ -GREP \ -EGREP \ -FGREP \ -LD \ -NM \ -LN_S \ -lt_SP2NL \ -lt_NL2SP \ -reload_flag \ -deplibs_check_method \ -file_magic_cmd \ -file_magic_glob \ -want_nocaseglob \ -sharedlib_from_linklib_cmd \ -AR \ -AR_FLAGS \ -archiver_list_spec \ -STRIP \ -RANLIB \ -CC \ -CFLAGS \ -compiler \ -lt_cv_sys_global_symbol_pipe \ -lt_cv_sys_global_symbol_to_cdecl \ -lt_cv_sys_global_symbol_to_import \ -lt_cv_sys_global_symbol_to_c_name_address \ -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ -lt_cv_nm_interface \ -nm_file_list_spec \ -lt_cv_truncate_bin \ -lt_prog_compiler_no_builtin_flag \ -lt_prog_compiler_pic \ -lt_prog_compiler_wl \ -lt_prog_compiler_static \ -lt_cv_prog_compiler_c_o \ -need_locks \ -MANIFEST_TOOL \ -DSYMUTIL \ -NMEDIT \ -LIPO \ -OTOOL \ -OTOOL64 \ -shrext_cmds \ -export_dynamic_flag_spec \ -whole_archive_flag_spec \ -compiler_needs_object \ -with_gnu_ld \ -allow_undefined_flag \ -no_undefined_flag \ -hardcode_libdir_flag_spec \ -hardcode_libdir_separator \ -exclude_expsyms \ -include_expsyms \ -file_list_spec \ -variables_saved_for_relink \ -libname_spec \ -library_names_spec \ -soname_spec \ -install_override_mode \ -finish_eval \ -old_striplib \ -striplib; do - case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in - *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes - ;; - *) - eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds \ -old_postinstall_cmds \ -old_postuninstall_cmds \ -old_archive_cmds \ -extract_expsyms_cmds \ -old_archive_from_new_cmds \ -old_archive_from_expsyms_cmds \ -archive_cmds \ -archive_expsym_cmds \ -module_cmds \ -module_expsym_cmds \ -export_symbols_cmds \ -prelink_cmds \ -postlink_cmds \ -postinstall_cmds \ -postuninstall_cmds \ -finish_cmds \ -sys_lib_search_path_spec \ -configure_time_dlsearch_path \ -configure_time_lt_sys_library_path; do - case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in - *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes - ;; - *) - eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" - ;; - esac -done - -ac_aux_dir='$ac_aux_dir' - -# See if we are running on zsh, and set the options that allow our -# commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='$PACKAGE' - VERSION='$VERSION' - RM='$RM' - ofile='$ofile' - -kpse_dll_name='$kpse_dll_name' - - - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "texlua52.pc") CONFIG_FILES="$CONFIG_FILES texlua52.pc" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -_ACEOF - - -{ - echo "cat >conf$$subs.awk <<_ACEOF" && - echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && - echo "_ACEOF" -} >conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 -ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - . ./conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - - ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` - if test $ac_delim_n = $ac_delim_num; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done -rm -f conf$$subs.sh - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && -_ACEOF -sed -n ' -h -s/^/S["/; s/!.*/"]=/ -p -g -s/^[^!]*!// -:repl -t repl -s/'"$ac_delim"'$// -t delim -:nl -h -s/\(.\{148\}\)..*/\1/ -t more1 -s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ -p -n -b repl -:more1 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t nl -:delim -h -s/\(.\{148\}\)..*/\1/ -t more2 -s/["\\]/\\&/g; s/^/"/; s/$/"/ -p -b -:more2 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t delim -' <conf$$subs.awk | sed ' -/^[^""]/{ - N - s/\n// -} -' >>$CONFIG_STATUS || ac_write_fail=1 -rm -f conf$$subs.awk -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACAWK -cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -_ACEOF - -# VPATH may cause trouble with some makes, so we remove sole $(srcdir), -# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -}' -fi - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$ac_tmp/defines.awk" <<\_ACAWK || -BEGIN { -_ACEOF - -# Transform confdefs.h into an awk script `defines.awk', embedded as -# here-document in config.status, that substitutes the proper values into -# config.h.in to produce config.h. - -# Create a delimiter string that does not exist in confdefs.h, to ease -# handling of long lines. -ac_delim='%!_!# ' -for ac_last_try in false false :; do - ac_tt=`sed -n "/$ac_delim/p" confdefs.h` - if test -z "$ac_tt"; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done - -# For the awk script, D is an array of macro values keyed by name, -# likewise P contains macro parameters if any. Preserve backslash -# newline sequences. - -ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* -sed -n ' -s/.\{148\}/&'"$ac_delim"'/g -t rset -:rset -s/^[ ]*#[ ]*define[ ][ ]*/ / -t def -d -:def -s/\\$// -t bsnl -s/["\\]/\\&/g -s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ -D["\1"]=" \3"/p -s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p -d -:bsnl -s/["\\]/\\&/g -s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ -D["\1"]=" \3\\\\\\n"\\/p -t cont -s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p -t cont -d -:cont -n -s/.\{148\}/&'"$ac_delim"'/g -t clear -:clear -s/\\$// -t bsnlc -s/["\\]/\\&/g; s/^/"/; s/$/"/p -d -:bsnlc -s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p -b cont -' <confdefs.h | sed ' -s/'"$ac_delim"'/"\\\ -"/g' >>$CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { - line = \$ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_datarootdir_hack=' - s&@datadir@&$datadir&g - s&@docdir@&$docdir&g - s&@infodir@&$infodir&g - s&@localedir@&$localedir&g - s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; -esac -_ACEOF - -# Neutralize VPATH when `$srcdir' = `.'. -# Shell code in configure.ac might set extrasub. -# FIXME: do we really want to maintain this feature? -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_sed_extra="$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" - } >"$ac_tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$ac_tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Older Autoconf quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - # TODO: see whether this extra hack can be removed once we start - # requiring Autoconf 2.70 or later. - case $CONFIG_FILES in #( - *\'*) : - eval set x "$CONFIG_FILES" ;; #( - *) : - set x $CONFIG_FILES ;; #( - *) : - ;; -esac - shift - # Used to flag and report bootstrapping failures. - am_rc=0 - for am_mf - do - # Strip MF so we end up with the name of the file. - am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile which includes - # dependency-tracking related rules and includes. - # Grep'ing the whole file directly is not great: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ - || continue - am_dirpart=`$as_dirname -- "$am_mf" || -$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$am_mf" : 'X\(//\)[^/]' \| \ - X"$am_mf" : 'X\(//\)$' \| \ - X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$am_mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - am_filepart=`$as_basename -- "$am_mf" || -$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \ - X"$am_mf" : 'X\(//\)$' \| \ - X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$am_mf" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { echo "$as_me:$LINENO: cd "$am_dirpart" \ - && sed -e '/# am--include-marker/d' "$am_filepart" \ - | $MAKE -f - am--depfiles" >&5 - (cd "$am_dirpart" \ - && sed -e '/# am--include-marker/d' "$am_filepart" \ - | $MAKE -f - am--depfiles) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } || am_rc=$? - done - if test $am_rc -ne 0; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "Something went wrong bootstrapping makefile fragments - for automatic dependency tracking. Try re-running configure with the - '--disable-dependency-tracking' option to at least be able to build - the package (albeit without support for automatic dependency tracking). -See \`config.log' for more details" "$LINENO" 5; } - fi - { am_dirpart=; unset am_dirpart;} - { am_filepart=; unset am_filepart;} - { am_mf=; unset am_mf;} - { am_rc=; unset am_rc;} - rm -f conftest-deps.mk -} - ;; - "libtool":C) - - # See if we are running on zsh, and set the options that allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST - fi - - cfgfile=${ofile}T - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL -# Generated automatically by $as_me ($PACKAGE) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. - -# Provide generalized library-building support services. -# Written by Gordon Matzigkeit, 1996 - -# Copyright (C) 2014 Free Software Foundation, Inc. -# This is free software; see the source for copying conditions. There is NO -# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -# GNU Libtool is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of of the License, or -# (at your option) any later version. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program or library that is built -# using GNU Libtool, you may include this file under the same -# distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - - -# The names of the tagged configurations supported by this script. -available_tags='' - -# Configured defaults for sys_lib_dlsearch_path munging. -: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} - -# ### BEGIN LIBTOOL CONFIG - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Assembler program. -AS=$lt_AS - -# DLL creation program. -DLLTOOL=$lt_DLLTOOL - -# Object dumper program. -OBJDUMP=$lt_OBJDUMP - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# Shared archive member basename,for filename based shared library versioning on AIX. -shared_archive_member_spec=$shared_archive_member_spec - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that protects backslashes. -ECHO=$lt_ECHO - -# The PATH separator for the build system. -PATH_SEPARATOR=$lt_PATH_SEPARATOR - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# convert \$build file names to \$host format. -to_host_file_cmd=$lt_cv_to_host_file_cmd - -# convert \$build files to toolchain format. -to_tool_file_cmd=$lt_cv_to_tool_file_cmd - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method = "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# How to find potential files when deplibs_check_method = "file_magic". -file_magic_glob=$lt_file_magic_glob - -# Find potential files using nocaseglob when deplibs_check_method = "file_magic". -want_nocaseglob=$lt_want_nocaseglob - -# Command to associate shared and link libraries. -sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd - -# The archiver. -AR=$lt_AR - -# Flags to create an archive. -AR_FLAGS=$lt_AR_FLAGS - -# How to feed a file listing to the archiver. -archiver_list_spec=$lt_archiver_list_spec - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Whether to use a lock for old archive extraction. -lock_old_archive_extraction=$lock_old_archive_extraction - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm into a list of symbols to manually relocate. -global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# The name lister interface. -nm_interface=$lt_lt_cv_nm_interface - -# Specify filename containing input files for \$NM. -nm_file_list_spec=$lt_nm_file_list_spec - -# The root where to search for dependent libraries,and where our libraries should be installed. -lt_sysroot=$lt_sysroot - -# Command to truncate a binary pipe. -lt_truncate_bin=$lt_lt_cv_truncate_bin - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Manifest tool. -MANIFEST_TOOL=$lt_MANIFEST_TOOL - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Permission mode override for installation of shared libraries. -install_override_mode=$lt_install_override_mode - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Detected run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path - -# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. -configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \$shlibpath_var if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Commands necessary for finishing linking programs. -postlink_cmds=$lt_postlink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - cat <<'_LT_EOF' >> "$cfgfile" - -# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE - -# func_munge_path_list VARIABLE PATH -# ----------------------------------- -# VARIABLE is name of variable containing _space_ separated list of -# directories to be munged by the contents of PATH, which is string -# having a format: -# "DIR[:DIR]:" -# string "DIR[ DIR]" will be prepended to VARIABLE -# ":DIR[:DIR]" -# string "DIR[ DIR]" will be appended to VARIABLE -# "DIRP[:DIRP]::[DIRA:]DIRA" -# string "DIRP[ DIRP]" will be prepended to VARIABLE and string -# "DIRA[ DIRA]" will be appended to VARIABLE -# "DIR[:DIR]" -# VARIABLE will be replaced by "DIR[ DIR]" -func_munge_path_list () -{ - case x$2 in - x) - ;; - *:) - eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" - ;; - x:*) - eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" - ;; - *::*) - eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" - eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" - ;; - *) - eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" - ;; - esac -} - - -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. -func_cc_basename () -{ - for cc_temp in $*""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac - done - func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` -} - - -# ### END FUNCTIONS SHARED WITH CONFIGURE - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test set != "${COLLECT_NAMES+set}"; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain=$ac_aux_dir/ltmain.sh - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - -## KPSE_DLL_NAME: Specify the DLL name -if test "x$kpse_dll_name" != x; then - $SED '/^soname_spec=/a\ -## KPSE_DLL_NAME: Specify the DLL name\ -soname_spec='$kpse_dll_name'.dll\ -' "$ofile" >"$cfgfile" - mv "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" -fi - ;; - - esac -done # for ac_tag - - -as_fn_exit 0 -_ACEOF -ac_clean_files=$ac_clean_files_save - -test $ac_write_fail = 0 || - as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || as_fn_exit 1 -fi -if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 -$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} -fi - diff --git a/source/libs/lua52/configure.ac b/source/libs/lua52/configure.ac deleted file mode 100644 index 747a0d209..000000000 --- a/source/libs/lua52/configure.ac +++ /dev/null @@ -1,46 +0,0 @@ -dnl Process this file with autoconf to produce a configure script. -dnl -dnl Copyright (C) 2013, 2014 Peter Breitenlohner <tex-live@tug.org> -dnl -dnl This file is free software; the copyright holder -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. -dnl -m4_include([version.ac])[] dnl define lua52_version -AC_INIT([lua52 (TeX Live)], lua52_version, [tex-k@tug.org]) -AC_PREREQ([2.65]) -AC_CONFIG_SRCDIR([lua52-src/src/lua.c]) -AC_CONFIG_AUX_DIR([../../build-aux]) -AC_CONFIG_MACRO_DIR([../../m4]) - -KPSE_BASIC([lua52]) - -AC_PROG_CC -AC_PROG_RANLIB -AC_PROG_LN_S - -AC_SUBST([LUA52VERSION], [lua52_version]) -KPSE_LT_VERSION([lua52]) - -LT_INIT([win32-dll]) - -KPSE_DLL_NAME([texlua52], [texlua52]) - -AC_CONFIG_HEADERS([config.h])[]dnl unused, to avoid zillions of -D's on command line - -AM_CONDITIONAL([build], [test "x$enable_build" != xno]) - -AC_SEARCH_LIBS([pow], [m]) - -KPSE_LUA52_DEFINES -KPSE_LARGEFILE([LUA52_DEFINES]) - -if test "x$ac_cv_header_stdc" = xyes; then - LUA52_DEFINES="$LUA52_DEFINES -DHAVE_UNISTD_H" -fi - -AC_SUBST([LUA52_TREE], [lua52-src]) - -AC_CONFIG_FILES([Makefile include/Makefile texlua52.pc]) - -AC_OUTPUT diff --git a/source/libs/lua52/error.exp b/source/libs/lua52/error.exp deleted file mode 100644 index 6b84f091d..000000000 --- a/source/libs/lua52/error.exp +++ /dev/null @@ -1,5 +0,0 @@ -./luatry: (command line):1: test -stack traceback: - [C]: in function 'error' - (command line):1: in main chunk - [C]: in ? diff --git a/source/libs/lua52/include/Makefile.am b/source/libs/lua52/include/Makefile.am deleted file mode 100644 index a5a89ace6..000000000 --- a/source/libs/lua52/include/Makefile.am +++ /dev/null @@ -1,41 +0,0 @@ -## Proxy Makefile.am to install lua52 headers for TeX Live. -## -## Copyright (C) 2013 Peter Breitenlohner <tex-live@tug.org> -## -## This file is free software; the copyright holder -## gives unlimited permission to copy and/or distribute it, -## with or without modifications, as long as this notice is preserved. -## -LUA52_SRC = $(top_srcdir)/$(LUA52_TREE)/src - -hdr_links = \ - $(LUA52_SRC)/lapi.h \ - $(LUA52_SRC)/lauxlib.h \ - $(LUA52_SRC)/lcode.h \ - $(LUA52_SRC)/lctype.h \ - $(LUA52_SRC)/ldebug.h \ - $(LUA52_SRC)/ldo.h \ - $(LUA52_SRC)/lfunc.h \ - $(LUA52_SRC)/lgc.h \ - $(LUA52_SRC)/llex.h \ - $(LUA52_SRC)/llimits.h \ - $(LUA52_SRC)/lmem.h \ - $(LUA52_SRC)/lobject.h \ - $(LUA52_SRC)/lopcodes.h \ - $(LUA52_SRC)/lparser.h \ - $(LUA52_SRC)/lstate.h \ - $(LUA52_SRC)/lstring.h \ - $(LUA52_SRC)/ltable.h \ - $(LUA52_SRC)/ltm.h \ - $(LUA52_SRC)/luaconf.h \ - $(LUA52_SRC)/lua.h \ - $(LUA52_SRC)/lua.hpp \ - $(LUA52_SRC)/lualib.h \ - $(LUA52_SRC)/lundump.h \ - $(LUA52_SRC)/lvm.h \ - $(LUA52_SRC)/lzio.h - -include $(top_srcdir)/../../am/hdr_links.am - -DISTCLEANFILES = lua.hpp - diff --git a/source/libs/lua52/include/Makefile.in b/source/libs/lua52/include/Makefile.in deleted file mode 100644 index d3026799f..000000000 --- a/source/libs/lua52/include/Makefile.in +++ /dev/null @@ -1,499 +0,0 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2018 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -subdir = include -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/../../m4/kpse-common.m4 \ - $(top_srcdir)/../../m4/kpse-dll-name.m4 \ - $(top_srcdir)/../../m4/kpse-largefile.m4 \ - $(top_srcdir)/../../m4/kpse-lib-version.m4 \ - $(top_srcdir)/../../m4/kpse-lua52-flags.m4 \ - $(top_srcdir)/../../m4/kpse-warnings.m4 \ - $(top_srcdir)/../../m4/kpse-win32.m4 \ - $(top_srcdir)/../../m4/libtool.m4 \ - $(top_srcdir)/../../m4/ltoptions.m4 \ - $(top_srcdir)/../../m4/ltsugar.m4 \ - $(top_srcdir)/../../m4/ltversion.m4 \ - $(top_srcdir)/../../m4/lt~obsolete.m4 $(top_srcdir)/version.ac \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -SOURCES = -DIST_SOURCES = -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -am__DIST_COMMON = $(srcdir)/Makefile.in \ - $(top_srcdir)/../../am/hdr_links.am -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -AS = @AS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ -LUA52VERSION = @LUA52VERSION@ -LUA52_DEFINES = @LUA52_DEFINES@ -LUA52_LT_VERSINFO = @LUA52_LT_VERSINFO@ -LUA52_TREE = @LUA52_TREE@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MKDIR_P = @MKDIR_P@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -RANLIB = @RANLIB@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -VERSION = @VERSION@ -WARNING_CFLAGS = @WARNING_CFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -LUA52_SRC = $(top_srcdir)/$(LUA52_TREE)/src -hdr_links = \ - $(LUA52_SRC)/lapi.h \ - $(LUA52_SRC)/lauxlib.h \ - $(LUA52_SRC)/lcode.h \ - $(LUA52_SRC)/lctype.h \ - $(LUA52_SRC)/ldebug.h \ - $(LUA52_SRC)/ldo.h \ - $(LUA52_SRC)/lfunc.h \ - $(LUA52_SRC)/lgc.h \ - $(LUA52_SRC)/llex.h \ - $(LUA52_SRC)/llimits.h \ - $(LUA52_SRC)/lmem.h \ - $(LUA52_SRC)/lobject.h \ - $(LUA52_SRC)/lopcodes.h \ - $(LUA52_SRC)/lparser.h \ - $(LUA52_SRC)/lstate.h \ - $(LUA52_SRC)/lstring.h \ - $(LUA52_SRC)/ltable.h \ - $(LUA52_SRC)/ltm.h \ - $(LUA52_SRC)/luaconf.h \ - $(LUA52_SRC)/lua.h \ - $(LUA52_SRC)/lua.hpp \ - $(LUA52_SRC)/lualib.h \ - $(LUA52_SRC)/lundump.h \ - $(LUA52_SRC)/lvm.h \ - $(LUA52_SRC)/lzio.h - -DISTCLEANFILES = lua.hpp -all: all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../../am/hdr_links.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign include/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ - esac; -$(top_srcdir)/../../am/hdr_links.am $(am__empty): - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags TAGS: - -ctags CTAGS: - -cscope cscopelist: - - -distdir: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) distdir-am - -distdir-am: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile all-local -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-local - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: all all-am all-local check check-am clean clean-generic \ - clean-libtool cscopelist-am ctags-am distclean \ - distclean-generic distclean-libtool distclean-local distdir \ - dvi dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \ - uninstall-am - -.PRECIOUS: Makefile - -all-local: - @for file in $(hdr_links); do \ - test -f $$file || continue; \ - inst=`echo $$file | sed -e 's/^.*\///'`; \ - test -f $$inst || { \ - rm -f $$inst; \ - if $(AM_V_P); then echo "$(LN_S) $$file $$inst"; \ - else echo " INST $$inst"; fi; \ - $(LN_S) $$file $$inst; } || exit 1; \ - done - -distclean-local: - rm -f *.h - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/source/libs/lua52/lua52-src/Makefile b/source/libs/lua52/lua52-src/Makefile deleted file mode 100644 index b2a62cfdd..000000000 --- a/source/libs/lua52/lua52-src/Makefile +++ /dev/null @@ -1,114 +0,0 @@ -# Makefile for installing Lua -# See doc/readme.html for installation and customization instructions. - -# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= - -# Your platform. See PLATS for possible values. -PLAT= none - -# Where to install. The installation starts in the src and doc directories, -# so take care if INSTALL_TOP is not an absolute path. See the local target. -# You may want to make INSTALL_LMOD and INSTALL_CMOD consistent with -# LUA_ROOT, LUA_LDIR, and LUA_CDIR in luaconf.h. -INSTALL_TOP= /usr/local -INSTALL_BIN= $(INSTALL_TOP)/bin -INSTALL_INC= $(INSTALL_TOP)/include -INSTALL_LIB= $(INSTALL_TOP)/lib -INSTALL_MAN= $(INSTALL_TOP)/man/man1 -INSTALL_LMOD= $(INSTALL_TOP)/share/lua/$V -INSTALL_CMOD= $(INSTALL_TOP)/lib/lua/$V - -# How to install. If your install program does not support "-p", then -# you may have to run ranlib on the installed liblua.a. -INSTALL= install -p -INSTALL_EXEC= $(INSTALL) -m 0755 -INSTALL_DATA= $(INSTALL) -m 0644 -# -# If you don't have "install" you can use "cp" instead. -# INSTALL= cp -p -# INSTALL_EXEC= $(INSTALL) -# INSTALL_DATA= $(INSTALL) - -# Other utilities. -MKDIR= mkdir -p -RM= rm -f - -# == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE ======= - -# Convenience platforms targets. -PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris - -# What to install. -TO_BIN= lua luac -TO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp -TO_LIB= liblua.a -TO_MAN= lua.1 luac.1 - -# Lua version and release. -V= 5.2 -R= $V.4 - -# Targets start here. -all: $(PLAT) - -$(PLATS) clean: - cd src && $(MAKE) $@ - -test: dummy - src/lua -v - -install: dummy - cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) - cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN) - cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC) - cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB) - cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN) - -uninstall: - cd src && cd $(INSTALL_BIN) && $(RM) $(TO_BIN) - cd src && cd $(INSTALL_INC) && $(RM) $(TO_INC) - cd src && cd $(INSTALL_LIB) && $(RM) $(TO_LIB) - cd doc && cd $(INSTALL_MAN) && $(RM) $(TO_MAN) - -local: - $(MAKE) install INSTALL_TOP=../install - -none: - @echo "Please do 'make PLATFORM' where PLATFORM is one of these:" - @echo " $(PLATS)" - @echo "See doc/readme.html for complete instructions." - -# make may get confused with test/ and install/ -dummy: - -# echo config parameters -echo: - @cd src && $(MAKE) -s echo - @echo "PLAT= $(PLAT)" - @echo "V= $V" - @echo "R= $R" - @echo "TO_BIN= $(TO_BIN)" - @echo "TO_INC= $(TO_INC)" - @echo "TO_LIB= $(TO_LIB)" - @echo "TO_MAN= $(TO_MAN)" - @echo "INSTALL_TOP= $(INSTALL_TOP)" - @echo "INSTALL_BIN= $(INSTALL_BIN)" - @echo "INSTALL_INC= $(INSTALL_INC)" - @echo "INSTALL_LIB= $(INSTALL_LIB)" - @echo "INSTALL_MAN= $(INSTALL_MAN)" - @echo "INSTALL_LMOD= $(INSTALL_LMOD)" - @echo "INSTALL_CMOD= $(INSTALL_CMOD)" - @echo "INSTALL_EXEC= $(INSTALL_EXEC)" - @echo "INSTALL_DATA= $(INSTALL_DATA)" - -# echo pkg-config data -pc: - @echo "version=$R" - @echo "prefix=$(INSTALL_TOP)" - @echo "libdir=$(INSTALL_LIB)" - @echo "includedir=$(INSTALL_INC)" - -# list targets that do not create files (but not all makes understand .PHONY) -.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho - -# (end of Makefile) diff --git a/source/libs/lua52/lua52-src/README b/source/libs/lua52/lua52-src/README deleted file mode 100644 index 6e3256f46..000000000 --- a/source/libs/lua52/lua52-src/README +++ /dev/null @@ -1,6 +0,0 @@ - -This is Lua 5.2.4, released on 25 Feb 2015. - -For installation instructions, license details, and -further information about Lua, see doc/readme.html. - diff --git a/source/libs/lua52/lua52-src/doc/contents.html b/source/libs/lua52/lua52-src/doc/contents.html deleted file mode 100644 index 89516c18c..000000000 --- a/source/libs/lua52/lua52-src/doc/contents.html +++ /dev/null @@ -1,608 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<HTML> -<HEAD> -<TITLE>Lua 5.2 Reference Manual - contents</TITLE> -<LINK REL="stylesheet" TYPE="text/css" HREF="lua.css"> -<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1"> -<STYLE TYPE="text/css"> -ul { - list-style-type: none ; -} -</STYLE> -</HEAD> - -<BODY> - -<HR> -<H1> -<A HREF="http://www.lua.org/"><IMG SRC="logo.gif" ALT="" BORDER=0></A> -Lua 5.2 Reference Manual -</H1> - -<P> -The reference manual is the official definition of the Lua language. -For a complete introduction to Lua programming, see the book -<A HREF="http://www.lua.org/pil/">Programming in Lua</A>. - -<P> -<A HREF="manual.html">start</A> -· -<A HREF="#contents">contents</A> -· -<A HREF="#index">index</A> -<HR> -<SMALL> -Copyright © 2011–2015 Lua.org, PUC-Rio. -Freely available under the terms of the -<A HREF="http://www.lua.org/license.html">Lua license</A>. -</SMALL> - -<H2><A NAME="contents">Contents</A></H2> -<UL style="padding: 0"> -<LI><A HREF="manual.html">1 – Introduction</A> -<P> -<LI><A HREF="manual.html#2">2 – Basic Concepts</A> -<UL> -<LI><A HREF="manual.html#2.1">2.1 – Values and Types</A> -<LI><A HREF="manual.html#2.2">2.2 – Environments and the Global Environment</A> -<LI><A HREF="manual.html#2.3">2.3 – Error Handling</A> -<LI><A HREF="manual.html#2.4">2.4 – Metatables and Metamethods</A> -<LI><A HREF="manual.html#2.5">2.5 – Garbage Collection</A> -<UL> -<LI><A HREF="manual.html#2.5.1">2.5.1 – Garbage-Collection Metamethods</A> -<LI><A HREF="manual.html#2.5.2">2.5.2 – Weak Tables</A> -</UL> -<LI><A HREF="manual.html#2.6">2.6 – Coroutines</A> -</UL> -<P> -<LI><A HREF="manual.html#3">3 – The Language</A> -<UL> -<LI><A HREF="manual.html#3.1">3.1 – Lexical Conventions</A> -<LI><A HREF="manual.html#3.2">3.2 – Variables</A> -<LI><A HREF="manual.html#3.3">3.3 – Statements</A> -<UL> -<LI><A HREF="manual.html#3.3.1">3.3.1 – Blocks</A> -<LI><A HREF="manual.html#3.3.2">3.3.2 – Chunks</A> -<LI><A HREF="manual.html#3.3.3">3.3.3 – Assignment</A> -<LI><A HREF="manual.html#3.3.4">3.3.4 – Control Structures</A> -<LI><A HREF="manual.html#3.3.5">3.3.5 – For Statement</A> -<LI><A HREF="manual.html#3.3.6">3.3.6 – Function Calls as Statements</A> -<LI><A HREF="manual.html#3.3.7">3.3.7 – Local Declarations</A> -</UL> -<LI><A HREF="manual.html#3.4">3.4 – Expressions</A> -<UL> -<LI><A HREF="manual.html#3.4.1">3.4.1 – Arithmetic Operators</A> -<LI><A HREF="manual.html#3.4.2">3.4.2 – Coercion</A> -<LI><A HREF="manual.html#3.4.3">3.4.3 – Relational Operators</A> -<LI><A HREF="manual.html#3.4.4">3.4.4 – Logical Operators</A> -<LI><A HREF="manual.html#3.4.5">3.4.5 – Concatenation</A> -<LI><A HREF="manual.html#3.4.6">3.4.6 – The Length Operator</A> -<LI><A HREF="manual.html#3.4.7">3.4.7 – Precedence</A> -<LI><A HREF="manual.html#3.4.8">3.4.8 – Table Constructors</A> -<LI><A HREF="manual.html#3.4.9">3.4.9 – Function Calls</A> -<LI><A HREF="manual.html#3.4.10">3.4.10 – Function Definitions</A> -</UL> -<LI><A HREF="manual.html#3.5">3.5 – Visibility Rules</A> -</UL> -<P> -<LI><A HREF="manual.html#4">4 – The Application Program Interface</A> -<UL> -<LI><A HREF="manual.html#4.1">4.1 – The Stack</A> -<LI><A HREF="manual.html#4.2">4.2 – Stack Size</A> -<LI><A HREF="manual.html#4.3">4.3 – Valid and Acceptable Indices</A> -<LI><A HREF="manual.html#4.4">4.4 – C Closures</A> -<LI><A HREF="manual.html#4.5">4.5 – Registry</A> -<LI><A HREF="manual.html#4.6">4.6 – Error Handling in C</A> -<LI><A HREF="manual.html#4.7">4.7 – Handling Yields in C</A> -<LI><A HREF="manual.html#4.8">4.8 – Functions and Types</A> -<LI><A HREF="manual.html#4.9">4.9 – The Debug Interface</A> -</UL> -<P> -<LI><A HREF="manual.html#5">5 – The Auxiliary Library</A> -<UL> -<LI><A HREF="manual.html#5.1">5.1 – Functions and Types</A> -</UL> -<P> -<LI><A HREF="manual.html#6">6 – Standard Libraries</A> -<UL> -<LI><A HREF="manual.html#6.1">6.1 – Basic Functions</A> -<LI><A HREF="manual.html#6.2">6.2 – Coroutine Manipulation</A> -<LI><A HREF="manual.html#6.3">6.3 – Modules</A> -<LI><A HREF="manual.html#6.4">6.4 – String Manipulation</A> -<UL> -<LI><A HREF="manual.html#6.4.1">6.4.1 – Patterns</A> -</UL> -<LI><A HREF="manual.html#6.5">6.5 – Table Manipulation</A> -<LI><A HREF="manual.html#6.6">6.6 – Mathematical Functions</A> -<LI><A HREF="manual.html#6.7">6.7 – Bitwise Operations</A> -<LI><A HREF="manual.html#6.8">6.8 – Input and Output Facilities</A> -<LI><A HREF="manual.html#6.9">6.9 – Operating System Facilities</A> -<LI><A HREF="manual.html#6.10">6.10 – The Debug Library</A> -</UL> -<P> -<LI><A HREF="manual.html#7">7 – Lua Standalone</A> -<P> -<LI><A HREF="manual.html#8">8 – Incompatibilities with the Previous Version</A> -<UL> -<LI><A HREF="manual.html#8.1">8.1 – Changes in the Language</A> -<LI><A HREF="manual.html#8.2">8.2 – Changes in the Libraries</A> -<LI><A HREF="manual.html#8.3">8.3 – Changes in the API</A> -</UL> -<P> -<LI><A HREF="manual.html#9">9 – The Complete Syntax of Lua</A> -</UL> - -<H2><A NAME="index">Index</A></H2> -<TABLE WIDTH="100%"> -<TR VALIGN="top"> -<TD> -<H3><A NAME="functions">Lua functions</A></H3> -<P> -<A HREF="manual.html#6.1">basic</A><BR> -<A HREF="manual.html#pdf-_G">_G</A><BR> -<A HREF="manual.html#pdf-_VERSION">_VERSION</A><BR> - -<A HREF="manual.html#pdf-assert">assert</A><BR> -<A HREF="manual.html#pdf-collectgarbage">collectgarbage</A><BR> -<A HREF="manual.html#pdf-dofile">dofile</A><BR> -<A HREF="manual.html#pdf-error">error</A><BR> -<A HREF="manual.html#pdf-getmetatable">getmetatable</A><BR> -<A HREF="manual.html#pdf-ipairs">ipairs</A><BR> -<A HREF="manual.html#pdf-load">load</A><BR> -<A HREF="manual.html#pdf-loadfile">loadfile</A><BR> -<A HREF="manual.html#pdf-next">next</A><BR> -<A HREF="manual.html#pdf-pairs">pairs</A><BR> -<A HREF="manual.html#pdf-pcall">pcall</A><BR> -<A HREF="manual.html#pdf-print">print</A><BR> -<A HREF="manual.html#pdf-rawequal">rawequal</A><BR> -<A HREF="manual.html#pdf-rawget">rawget</A><BR> -<A HREF="manual.html#pdf-rawlen">rawlen</A><BR> -<A HREF="manual.html#pdf-rawset">rawset</A><BR> -<A HREF="manual.html#pdf-require">require</A><BR> -<A HREF="manual.html#pdf-select">select</A><BR> -<A HREF="manual.html#pdf-setmetatable">setmetatable</A><BR> -<A HREF="manual.html#pdf-tonumber">tonumber</A><BR> -<A HREF="manual.html#pdf-tostring">tostring</A><BR> -<A HREF="manual.html#pdf-type">type</A><BR> -<A HREF="manual.html#pdf-xpcall">xpcall</A><BR> - -<P> -<A HREF="manual.html#6.7">bit32</A><BR> -<A HREF="manual.html#pdf-bit32.arshift">bit32.arshift</A><BR> -<A HREF="manual.html#pdf-bit32.band">bit32.band</A><BR> -<A HREF="manual.html#pdf-bit32.bnot">bit32.bnot</A><BR> -<A HREF="manual.html#pdf-bit32.bor">bit32.bor</A><BR> -<A HREF="manual.html#pdf-bit32.btest">bit32.btest</A><BR> -<A HREF="manual.html#pdf-bit32.bxor">bit32.bxor</A><BR> -<A HREF="manual.html#pdf-bit32.extract">bit32.extract</A><BR> -<A HREF="manual.html#pdf-bit32.lrotate">bit32.lrotate</A><BR> -<A HREF="manual.html#pdf-bit32.lshift">bit32.lshift</A><BR> -<A HREF="manual.html#pdf-bit32.replace">bit32.replace</A><BR> -<A HREF="manual.html#pdf-bit32.rrotate">bit32.rrotate</A><BR> -<A HREF="manual.html#pdf-bit32.rshift">bit32.rshift</A><BR> - -<P> -<A HREF="manual.html#6.2">coroutine</A><BR> -<A HREF="manual.html#pdf-coroutine.create">coroutine.create</A><BR> -<A HREF="manual.html#pdf-coroutine.resume">coroutine.resume</A><BR> -<A HREF="manual.html#pdf-coroutine.running">coroutine.running</A><BR> -<A HREF="manual.html#pdf-coroutine.status">coroutine.status</A><BR> -<A HREF="manual.html#pdf-coroutine.wrap">coroutine.wrap</A><BR> -<A HREF="manual.html#pdf-coroutine.yield">coroutine.yield</A><BR> - -<P> -<A HREF="manual.html#6.10">debug</A><BR> -<A HREF="manual.html#pdf-debug.debug">debug.debug</A><BR> -<A HREF="manual.html#pdf-debug.getuservalue">debug.getuservalue</A><BR> -<A HREF="manual.html#pdf-debug.gethook">debug.gethook</A><BR> -<A HREF="manual.html#pdf-debug.getinfo">debug.getinfo</A><BR> -<A HREF="manual.html#pdf-debug.getlocal">debug.getlocal</A><BR> -<A HREF="manual.html#pdf-debug.getmetatable">debug.getmetatable</A><BR> -<A HREF="manual.html#pdf-debug.getregistry">debug.getregistry</A><BR> -<A HREF="manual.html#pdf-debug.getupvalue">debug.getupvalue</A><BR> -<A HREF="manual.html#pdf-debug.setuservalue">debug.setuservalue</A><BR> -<A HREF="manual.html#pdf-debug.sethook">debug.sethook</A><BR> -<A HREF="manual.html#pdf-debug.setlocal">debug.setlocal</A><BR> -<A HREF="manual.html#pdf-debug.setmetatable">debug.setmetatable</A><BR> -<A HREF="manual.html#pdf-debug.setupvalue">debug.setupvalue</A><BR> -<A HREF="manual.html#pdf-debug.traceback">debug.traceback</A><BR> -<A HREF="manual.html#pdf-debug.upvalueid">debug.upvalueid</A><BR> -<A HREF="manual.html#pdf-debug.upvaluejoin">debug.upvaluejoin</A><BR> - -<P> -<A HREF="manual.html#6.8">io</A><BR> -<A HREF="manual.html#pdf-io.close">io.close</A><BR> -<A HREF="manual.html#pdf-io.flush">io.flush</A><BR> -<A HREF="manual.html#pdf-io.input">io.input</A><BR> -<A HREF="manual.html#pdf-io.lines">io.lines</A><BR> -<A HREF="manual.html#pdf-io.open">io.open</A><BR> -<A HREF="manual.html#pdf-io.output">io.output</A><BR> -<A HREF="manual.html#pdf-io.popen">io.popen</A><BR> -<A HREF="manual.html#pdf-io.read">io.read</A><BR> -<A HREF="manual.html#pdf-io.stderr">io.stderr</A><BR> -<A HREF="manual.html#pdf-io.stdin">io.stdin</A><BR> -<A HREF="manual.html#pdf-io.stdout">io.stdout</A><BR> -<A HREF="manual.html#pdf-io.tmpfile">io.tmpfile</A><BR> -<A HREF="manual.html#pdf-io.type">io.type</A><BR> -<A HREF="manual.html#pdf-io.write">io.write</A><BR> -<A HREF="manual.html#pdf-file:close">file:close</A><BR> -<A HREF="manual.html#pdf-file:flush">file:flush</A><BR> -<A HREF="manual.html#pdf-file:lines">file:lines</A><BR> -<A HREF="manual.html#pdf-file:read">file:read</A><BR> -<A HREF="manual.html#pdf-file:seek">file:seek</A><BR> -<A HREF="manual.html#pdf-file:setvbuf">file:setvbuf</A><BR> -<A HREF="manual.html#pdf-file:write">file:write</A><BR> - -</TD> -<TD> -<H3> </H3> -<P> -<A HREF="manual.html#6.6">math</A><BR> -<A HREF="manual.html#pdf-math.abs">math.abs</A><BR> -<A HREF="manual.html#pdf-math.acos">math.acos</A><BR> -<A HREF="manual.html#pdf-math.asin">math.asin</A><BR> -<A HREF="manual.html#pdf-math.atan">math.atan</A><BR> -<A HREF="manual.html#pdf-math.atan2">math.atan2</A><BR> -<A HREF="manual.html#pdf-math.ceil">math.ceil</A><BR> -<A HREF="manual.html#pdf-math.cos">math.cos</A><BR> -<A HREF="manual.html#pdf-math.cosh">math.cosh</A><BR> -<A HREF="manual.html#pdf-math.deg">math.deg</A><BR> -<A HREF="manual.html#pdf-math.exp">math.exp</A><BR> -<A HREF="manual.html#pdf-math.floor">math.floor</A><BR> -<A HREF="manual.html#pdf-math.fmod">math.fmod</A><BR> -<A HREF="manual.html#pdf-math.frexp">math.frexp</A><BR> -<A HREF="manual.html#pdf-math.huge">math.huge</A><BR> -<A HREF="manual.html#pdf-math.ldexp">math.ldexp</A><BR> -<A HREF="manual.html#pdf-math.log">math.log</A><BR> -<A HREF="manual.html#pdf-math.max">math.max</A><BR> -<A HREF="manual.html#pdf-math.min">math.min</A><BR> -<A HREF="manual.html#pdf-math.modf">math.modf</A><BR> -<A HREF="manual.html#pdf-math.pi">math.pi</A><BR> -<A HREF="manual.html#pdf-math.pow">math.pow</A><BR> -<A HREF="manual.html#pdf-math.rad">math.rad</A><BR> -<A HREF="manual.html#pdf-math.random">math.random</A><BR> -<A HREF="manual.html#pdf-math.randomseed">math.randomseed</A><BR> -<A HREF="manual.html#pdf-math.sin">math.sin</A><BR> -<A HREF="manual.html#pdf-math.sinh">math.sinh</A><BR> -<A HREF="manual.html#pdf-math.sqrt">math.sqrt</A><BR> -<A HREF="manual.html#pdf-math.tan">math.tan</A><BR> -<A HREF="manual.html#pdf-math.tanh">math.tanh</A><BR> - -<P> -<A HREF="manual.html#6.9">os</A><BR> -<A HREF="manual.html#pdf-os.clock">os.clock</A><BR> -<A HREF="manual.html#pdf-os.date">os.date</A><BR> -<A HREF="manual.html#pdf-os.difftime">os.difftime</A><BR> -<A HREF="manual.html#pdf-os.execute">os.execute</A><BR> -<A HREF="manual.html#pdf-os.exit">os.exit</A><BR> -<A HREF="manual.html#pdf-os.getenv">os.getenv</A><BR> -<A HREF="manual.html#pdf-os.remove">os.remove</A><BR> -<A HREF="manual.html#pdf-os.rename">os.rename</A><BR> -<A HREF="manual.html#pdf-os.setlocale">os.setlocale</A><BR> -<A HREF="manual.html#pdf-os.time">os.time</A><BR> -<A HREF="manual.html#pdf-os.tmpname">os.tmpname</A><BR> - -<P> -<A HREF="manual.html#6.3">package</A><BR> -<A HREF="manual.html#pdf-package.config">package.config</A><BR> -<A HREF="manual.html#pdf-package.cpath">package.cpath</A><BR> -<A HREF="manual.html#pdf-package.loaded">package.loaded</A><BR> -<A HREF="manual.html#pdf-package.loadlib">package.loadlib</A><BR> -<A HREF="manual.html#pdf-package.path">package.path</A><BR> -<A HREF="manual.html#pdf-package.preload">package.preload</A><BR> -<A HREF="manual.html#pdf-package.searchers">package.searchers</A><BR> -<A HREF="manual.html#pdf-package.searchpath">package.searchpath</A><BR> - -<P> -<A HREF="manual.html#6.4">string</A><BR> -<A HREF="manual.html#pdf-string.byte">string.byte</A><BR> -<A HREF="manual.html#pdf-string.char">string.char</A><BR> -<A HREF="manual.html#pdf-string.dump">string.dump</A><BR> -<A HREF="manual.html#pdf-string.find">string.find</A><BR> -<A HREF="manual.html#pdf-string.format">string.format</A><BR> -<A HREF="manual.html#pdf-string.gmatch">string.gmatch</A><BR> -<A HREF="manual.html#pdf-string.gsub">string.gsub</A><BR> -<A HREF="manual.html#pdf-string.len">string.len</A><BR> -<A HREF="manual.html#pdf-string.lower">string.lower</A><BR> -<A HREF="manual.html#pdf-string.match">string.match</A><BR> -<A HREF="manual.html#pdf-string.rep">string.rep</A><BR> -<A HREF="manual.html#pdf-string.reverse">string.reverse</A><BR> -<A HREF="manual.html#pdf-string.sub">string.sub</A><BR> -<A HREF="manual.html#pdf-string.upper">string.upper</A><BR> - -<P> -<A HREF="manual.html#6.5">table</A><BR> -<A HREF="manual.html#pdf-table.concat">table.concat</A><BR> -<A HREF="manual.html#pdf-table.insert">table.insert</A><BR> -<A HREF="manual.html#pdf-table.pack">table.pack</A><BR> -<A HREF="manual.html#pdf-table.remove">table.remove</A><BR> -<A HREF="manual.html#pdf-table.sort">table.sort</A><BR> -<A HREF="manual.html#pdf-table.unpack">table.unpack</A><BR> - -<H3><A NAME="env">environment<BR>variables</A></H3> -<A HREF="manual.html#pdf-LUA_CPATH">LUA_CPATH</A><BR> -<A HREF="manual.html#pdf-LUA_CPATH_5_2">LUA_CPATH_5_2</A><BR> -<A HREF="manual.html#pdf-LUA_INIT">LUA_INIT</A><BR> -<A HREF="manual.html#pdf-LUA_INIT_5_2">LUA_INIT_5_2</A><BR> -<A HREF="manual.html#pdf-LUA_PATH">LUA_PATH</A><BR> -<A HREF="manual.html#pdf-LUA_PATH_5_2">LUA_PATH_5_2</A><BR> - -</TD> -<TD> -<H3>C API</H3> -<P> -<A HREF="manual.html#lua_Alloc">lua_Alloc</A><BR> -<A HREF="manual.html#lua_CFunction">lua_CFunction</A><BR> -<A HREF="manual.html#lua_Debug">lua_Debug</A><BR> -<A HREF="manual.html#lua_Hook">lua_Hook</A><BR> -<A HREF="manual.html#lua_Integer">lua_Integer</A><BR> -<A HREF="manual.html#lua_Number">lua_Number</A><BR> -<A HREF="manual.html#lua_Reader">lua_Reader</A><BR> -<A HREF="manual.html#lua_State">lua_State</A><BR> -<A HREF="manual.html#lua_Unsigned">lua_Unsigned</A><BR> -<A HREF="manual.html#lua_Writer">lua_Writer</A><BR> - -<P> -<A HREF="manual.html#lua_absindex">lua_absindex</A><BR> -<A HREF="manual.html#lua_arith">lua_arith</A><BR> -<A HREF="manual.html#lua_atpanic">lua_atpanic</A><BR> -<A HREF="manual.html#lua_call">lua_call</A><BR> -<A HREF="manual.html#lua_callk">lua_callk</A><BR> -<A HREF="manual.html#lua_checkstack">lua_checkstack</A><BR> -<A HREF="manual.html#lua_close">lua_close</A><BR> -<A HREF="manual.html#lua_compare">lua_compare</A><BR> -<A HREF="manual.html#lua_concat">lua_concat</A><BR> -<A HREF="manual.html#lua_copy">lua_copy</A><BR> -<A HREF="manual.html#lua_createtable">lua_createtable</A><BR> -<A HREF="manual.html#lua_dump">lua_dump</A><BR> -<A HREF="manual.html#lua_error">lua_error</A><BR> -<A HREF="manual.html#lua_gc">lua_gc</A><BR> -<A HREF="manual.html#lua_getallocf">lua_getallocf</A><BR> -<A HREF="manual.html#lua_getctx">lua_getctx</A><BR> -<A HREF="manual.html#lua_getfield">lua_getfield</A><BR> -<A HREF="manual.html#lua_getglobal">lua_getglobal</A><BR> -<A HREF="manual.html#lua_gethook">lua_gethook</A><BR> -<A HREF="manual.html#lua_gethookcount">lua_gethookcount</A><BR> -<A HREF="manual.html#lua_gethookmask">lua_gethookmask</A><BR> -<A HREF="manual.html#lua_getinfo">lua_getinfo</A><BR> -<A HREF="manual.html#lua_getlocal">lua_getlocal</A><BR> -<A HREF="manual.html#lua_getmetatable">lua_getmetatable</A><BR> -<A HREF="manual.html#lua_getstack">lua_getstack</A><BR> -<A HREF="manual.html#lua_gettable">lua_gettable</A><BR> -<A HREF="manual.html#lua_gettop">lua_gettop</A><BR> -<A HREF="manual.html#lua_getupvalue">lua_getupvalue</A><BR> -<A HREF="manual.html#lua_getuservalue">lua_getuservalue</A><BR> -<A HREF="manual.html#lua_insert">lua_insert</A><BR> -<A HREF="manual.html#lua_isboolean">lua_isboolean</A><BR> -<A HREF="manual.html#lua_iscfunction">lua_iscfunction</A><BR> -<A HREF="manual.html#lua_isfunction">lua_isfunction</A><BR> -<A HREF="manual.html#lua_islightuserdata">lua_islightuserdata</A><BR> -<A HREF="manual.html#lua_isnil">lua_isnil</A><BR> -<A HREF="manual.html#lua_isnone">lua_isnone</A><BR> -<A HREF="manual.html#lua_isnoneornil">lua_isnoneornil</A><BR> -<A HREF="manual.html#lua_isnumber">lua_isnumber</A><BR> -<A HREF="manual.html#lua_isstring">lua_isstring</A><BR> -<A HREF="manual.html#lua_istable">lua_istable</A><BR> -<A HREF="manual.html#lua_isthread">lua_isthread</A><BR> -<A HREF="manual.html#lua_isuserdata">lua_isuserdata</A><BR> -<A HREF="manual.html#lua_len">lua_len</A><BR> -<A HREF="manual.html#lua_load">lua_load</A><BR> -<A HREF="manual.html#lua_newstate">lua_newstate</A><BR> -<A HREF="manual.html#lua_newtable">lua_newtable</A><BR> -<A HREF="manual.html#lua_newthread">lua_newthread</A><BR> -<A HREF="manual.html#lua_newuserdata">lua_newuserdata</A><BR> -<A HREF="manual.html#lua_next">lua_next</A><BR> -<A HREF="manual.html#lua_pcall">lua_pcall</A><BR> -<A HREF="manual.html#lua_pcallk">lua_pcallk</A><BR> -<A HREF="manual.html#lua_pop">lua_pop</A><BR> -<A HREF="manual.html#lua_pushboolean">lua_pushboolean</A><BR> -<A HREF="manual.html#lua_pushcclosure">lua_pushcclosure</A><BR> -<A HREF="manual.html#lua_pushcfunction">lua_pushcfunction</A><BR> -<A HREF="manual.html#lua_pushfstring">lua_pushfstring</A><BR> -<A HREF="manual.html#lua_pushglobaltable">lua_pushglobaltable</A><BR> -<A HREF="manual.html#lua_pushinteger">lua_pushinteger</A><BR> -<A HREF="manual.html#lua_pushlightuserdata">lua_pushlightuserdata</A><BR> -<A HREF="manual.html#lua_pushliteral">lua_pushliteral</A><BR> -<A HREF="manual.html#lua_pushlstring">lua_pushlstring</A><BR> -<A HREF="manual.html#lua_pushnil">lua_pushnil</A><BR> -<A HREF="manual.html#lua_pushnumber">lua_pushnumber</A><BR> -<A HREF="manual.html#lua_pushstring">lua_pushstring</A><BR> -<A HREF="manual.html#lua_pushthread">lua_pushthread</A><BR> -<A HREF="manual.html#lua_pushunsigned">lua_pushunsigned</A><BR> -<A HREF="manual.html#lua_pushvalue">lua_pushvalue</A><BR> -<A HREF="manual.html#lua_pushvfstring">lua_pushvfstring</A><BR> -<A HREF="manual.html#lua_rawequal">lua_rawequal</A><BR> -<A HREF="manual.html#lua_rawget">lua_rawget</A><BR> -<A HREF="manual.html#lua_rawgeti">lua_rawgeti</A><BR> -<A HREF="manual.html#lua_rawgetp">lua_rawgetp</A><BR> -<A HREF="manual.html#lua_rawlen">lua_rawlen</A><BR> -<A HREF="manual.html#lua_rawset">lua_rawset</A><BR> -<A HREF="manual.html#lua_rawseti">lua_rawseti</A><BR> -<A HREF="manual.html#lua_rawsetp">lua_rawsetp</A><BR> -<A HREF="manual.html#lua_register">lua_register</A><BR> -<A HREF="manual.html#lua_remove">lua_remove</A><BR> -<A HREF="manual.html#lua_replace">lua_replace</A><BR> -<A HREF="manual.html#lua_resume">lua_resume</A><BR> -<A HREF="manual.html#lua_setallocf">lua_setallocf</A><BR> -<A HREF="manual.html#lua_setfield">lua_setfield</A><BR> -<A HREF="manual.html#lua_setglobal">lua_setglobal</A><BR> -<A HREF="manual.html#lua_sethook">lua_sethook</A><BR> -<A HREF="manual.html#lua_setlocal">lua_setlocal</A><BR> -<A HREF="manual.html#lua_setmetatable">lua_setmetatable</A><BR> -<A HREF="manual.html#lua_settable">lua_settable</A><BR> -<A HREF="manual.html#lua_settop">lua_settop</A><BR> -<A HREF="manual.html#lua_setupvalue">lua_setupvalue</A><BR> -<A HREF="manual.html#lua_setuservalue">lua_setuservalue</A><BR> -<A HREF="manual.html#lua_status">lua_status</A><BR> -<A HREF="manual.html#lua_toboolean">lua_toboolean</A><BR> -<A HREF="manual.html#lua_tocfunction">lua_tocfunction</A><BR> -<A HREF="manual.html#lua_tointeger">lua_tointeger</A><BR> -<A HREF="manual.html#lua_tointegerx">lua_tointegerx</A><BR> -<A HREF="manual.html#lua_tolstring">lua_tolstring</A><BR> -<A HREF="manual.html#lua_tonumber">lua_tonumber</A><BR> -<A HREF="manual.html#lua_tonumberx">lua_tonumberx</A><BR> -<A HREF="manual.html#lua_topointer">lua_topointer</A><BR> -<A HREF="manual.html#lua_tostring">lua_tostring</A><BR> -<A HREF="manual.html#lua_tothread">lua_tothread</A><BR> -<A HREF="manual.html#lua_tounsigned">lua_tounsigned</A><BR> -<A HREF="manual.html#lua_tounsignedx">lua_tounsignedx</A><BR> -<A HREF="manual.html#lua_touserdata">lua_touserdata</A><BR> -<A HREF="manual.html#lua_type">lua_type</A><BR> -<A HREF="manual.html#lua_typename">lua_typename</A><BR> -<A HREF="manual.html#lua_upvalueid">lua_upvalueid</A><BR> -<A HREF="manual.html#lua_upvalueindex">lua_upvalueindex</A><BR> -<A HREF="manual.html#lua_upvaluejoin">lua_upvaluejoin</A><BR> -<A HREF="manual.html#lua_version">lua_version</A><BR> -<A HREF="manual.html#lua_xmove">lua_xmove</A><BR> -<A HREF="manual.html#lua_yield">lua_yield</A><BR> -<A HREF="manual.html#lua_yieldk">lua_yieldk</A><BR> - -</TD> -<TD> -<H3>auxiliary library</H3> -<P> -<A HREF="manual.html#luaL_Buffer">luaL_Buffer</A><BR> -<A HREF="manual.html#luaL_Reg">luaL_Reg</A><BR> - -<P> -<A HREF="manual.html#luaL_addchar">luaL_addchar</A><BR> -<A HREF="manual.html#luaL_addlstring">luaL_addlstring</A><BR> -<A HREF="manual.html#luaL_addsize">luaL_addsize</A><BR> -<A HREF="manual.html#luaL_addstring">luaL_addstring</A><BR> -<A HREF="manual.html#luaL_addvalue">luaL_addvalue</A><BR> -<A HREF="manual.html#luaL_argcheck">luaL_argcheck</A><BR> -<A HREF="manual.html#luaL_argerror">luaL_argerror</A><BR> -<A HREF="manual.html#luaL_buffinit">luaL_buffinit</A><BR> -<A HREF="manual.html#luaL_buffinitsize">luaL_buffinitsize</A><BR> -<A HREF="manual.html#luaL_callmeta">luaL_callmeta</A><BR> -<A HREF="manual.html#luaL_checkany">luaL_checkany</A><BR> -<A HREF="manual.html#luaL_checkint">luaL_checkint</A><BR> -<A HREF="manual.html#luaL_checkinteger">luaL_checkinteger</A><BR> -<A HREF="manual.html#luaL_checklong">luaL_checklong</A><BR> -<A HREF="manual.html#luaL_checklstring">luaL_checklstring</A><BR> -<A HREF="manual.html#luaL_checknumber">luaL_checknumber</A><BR> -<A HREF="manual.html#luaL_checkoption">luaL_checkoption</A><BR> -<A HREF="manual.html#luaL_checkstack">luaL_checkstack</A><BR> -<A HREF="manual.html#luaL_checkstring">luaL_checkstring</A><BR> -<A HREF="manual.html#luaL_checktype">luaL_checktype</A><BR> -<A HREF="manual.html#luaL_checkudata">luaL_checkudata</A><BR> -<A HREF="manual.html#luaL_checkunsigned">luaL_checkunsigned</A><BR> -<A HREF="manual.html#luaL_checkversion">luaL_checkversion</A><BR> -<A HREF="manual.html#luaL_dofile">luaL_dofile</A><BR> -<A HREF="manual.html#luaL_dostring">luaL_dostring</A><BR> -<A HREF="manual.html#luaL_error">luaL_error</A><BR> -<A HREF="manual.html#luaL_execresult">luaL_execresult</A><BR> -<A HREF="manual.html#luaL_fileresult">luaL_fileresult</A><BR> -<A HREF="manual.html#luaL_getmetafield">luaL_getmetafield</A><BR> -<A HREF="manual.html#luaL_getmetatable">luaL_getmetatable</A><BR> -<A HREF="manual.html#luaL_getsubtable">luaL_getsubtable</A><BR> -<A HREF="manual.html#luaL_gsub">luaL_gsub</A><BR> -<A HREF="manual.html#luaL_len">luaL_len</A><BR> -<A HREF="manual.html#luaL_loadbuffer">luaL_loadbuffer</A><BR> -<A HREF="manual.html#luaL_loadbufferx">luaL_loadbufferx</A><BR> -<A HREF="manual.html#luaL_loadfile">luaL_loadfile</A><BR> -<A HREF="manual.html#luaL_loadfilex">luaL_loadfilex</A><BR> -<A HREF="manual.html#luaL_loadstring">luaL_loadstring</A><BR> -<A HREF="manual.html#luaL_newlib">luaL_newlib</A><BR> -<A HREF="manual.html#luaL_newlibtable">luaL_newlibtable</A><BR> -<A HREF="manual.html#luaL_newmetatable">luaL_newmetatable</A><BR> -<A HREF="manual.html#luaL_newstate">luaL_newstate</A><BR> -<A HREF="manual.html#luaL_openlibs">luaL_openlibs</A><BR> -<A HREF="manual.html#luaL_optint">luaL_optint</A><BR> -<A HREF="manual.html#luaL_optinteger">luaL_optinteger</A><BR> -<A HREF="manual.html#luaL_optlong">luaL_optlong</A><BR> -<A HREF="manual.html#luaL_optlstring">luaL_optlstring</A><BR> -<A HREF="manual.html#luaL_optnumber">luaL_optnumber</A><BR> -<A HREF="manual.html#luaL_optstring">luaL_optstring</A><BR> -<A HREF="manual.html#luaL_optunsigned">luaL_optunsigned</A><BR> -<A HREF="manual.html#luaL_prepbuffer">luaL_prepbuffer</A><BR> -<A HREF="manual.html#luaL_prepbuffsize">luaL_prepbuffsize</A><BR> -<A HREF="manual.html#luaL_pushresult">luaL_pushresult</A><BR> -<A HREF="manual.html#luaL_pushresultsize">luaL_pushresultsize</A><BR> -<A HREF="manual.html#luaL_ref">luaL_ref</A><BR> -<A HREF="manual.html#luaL_requiref">luaL_requiref</A><BR> -<A HREF="manual.html#luaL_setfuncs">luaL_setfuncs</A><BR> -<A HREF="manual.html#luaL_setmetatable">luaL_setmetatable</A><BR> -<A HREF="manual.html#luaL_testudata">luaL_testudata</A><BR> -<A HREF="manual.html#luaL_tolstring">luaL_tolstring</A><BR> -<A HREF="manual.html#luaL_traceback">luaL_traceback</A><BR> -<A HREF="manual.html#luaL_typename">luaL_typename</A><BR> -<A HREF="manual.html#luaL_unref">luaL_unref</A><BR> -<A HREF="manual.html#luaL_where">luaL_where</A><BR> - -<H3><A NAME="library">standard library</A></H3> -<P> -<A HREF="manual.html#pdf-luaopen_base">luaopen_base</A><BR> -<A HREF="manual.html#pdf-luaopen_bit32">luaopen_bit32</A><BR> -<A HREF="manual.html#pdf-luaopen_coroutine">luaopen_coroutine</A><BR> -<A HREF="manual.html#pdf-luaopen_debug">luaopen_debug</A><BR> -<A HREF="manual.html#pdf-luaopen_io">luaopen_io</A><BR> -<A HREF="manual.html#pdf-luaopen_math">luaopen_math</A><BR> -<A HREF="manual.html#pdf-luaopen_os">luaopen_os</A><BR> -<A HREF="manual.html#pdf-luaopen_package">luaopen_package</A><BR> -<A HREF="manual.html#pdf-luaopen_string">luaopen_string</A><BR> -<A HREF="manual.html#pdf-luaopen_table">luaopen_table</A><BR> - -<H3><A NAME="constants">constants</A></H3> -<A HREF="manual.html#pdf-LUA_ERRERR">LUA_ERRERR</A><BR> -<A HREF="manual.html#pdf-LUA_ERRFILE">LUA_ERRFILE</A><BR> -<A HREF="manual.html#pdf-LUA_ERRGCMM">LUA_ERRGCMM</A><BR> -<A HREF="manual.html#pdf-LUA_ERRMEM">LUA_ERRMEM</A><BR> -<A HREF="manual.html#pdf-LUA_ERRRUN">LUA_ERRRUN</A><BR> -<A HREF="manual.html#pdf-LUA_ERRSYNTAX">LUA_ERRSYNTAX</A><BR> -<A HREF="manual.html#pdf-LUA_HOOKCALL">LUA_HOOKCALL</A><BR> -<A HREF="manual.html#pdf-LUA_HOOKCOUNT">LUA_HOOKCOUNT</A><BR> -<A HREF="manual.html#pdf-LUA_HOOKLINE">LUA_HOOKLINE</A><BR> -<A HREF="manual.html#pdf-LUA_HOOKRET">LUA_HOOKRET</A><BR> -<A HREF="manual.html#pdf-LUA_HOOKTAILCALL">LUA_HOOKTAILCALL</A><BR> -<A HREF="manual.html#pdf-LUA_MASKCALL">LUA_MASKCALL</A><BR> -<A HREF="manual.html#pdf-LUA_MASKCOUNT">LUA_MASKCOUNT</A><BR> -<A HREF="manual.html#pdf-LUA_MASKLINE">LUA_MASKLINE</A><BR> -<A HREF="manual.html#pdf-LUA_MASKRET">LUA_MASKRET</A><BR> -<A HREF="manual.html#pdf-LUA_MINSTACK">LUA_MINSTACK</A><BR> -<A HREF="manual.html#pdf-LUA_MULTRET">LUA_MULTRET</A><BR> -<A HREF="manual.html#pdf-LUA_NOREF">LUA_NOREF</A><BR> -<A HREF="manual.html#pdf-LUA_OK">LUA_OK</A><BR> -<A HREF="manual.html#pdf-LUA_OPADD">LUA_OPADD</A><BR> -<A HREF="manual.html#pdf-LUA_OPDIV">LUA_OPDIV</A><BR> -<A HREF="manual.html#pdf-LUA_OPEQ">LUA_OPEQ</A><BR> -<A HREF="manual.html#pdf-LUA_OPLE">LUA_OPLE</A><BR> -<A HREF="manual.html#pdf-LUA_OPLT">LUA_OPLT</A><BR> -<A HREF="manual.html#pdf-LUA_OPMOD">LUA_OPMOD</A><BR> -<A HREF="manual.html#pdf-LUA_OPMUL">LUA_OPMUL</A><BR> -<A HREF="manual.html#pdf-LUA_OPPOW">LUA_OPPOW</A><BR> -<A HREF="manual.html#pdf-LUA_OPSUB">LUA_OPSUB</A><BR> -<A HREF="manual.html#pdf-LUA_OPUNM">LUA_OPUNM</A><BR> -<A HREF="manual.html#pdf-LUA_REFNIL">LUA_REFNIL</A><BR> -<A HREF="manual.html#pdf-LUA_REGISTRYINDEX">LUA_REGISTRYINDEX</A><BR> -<A HREF="manual.html#pdf-LUA_RIDX_GLOBALS">LUA_RIDX_GLOBALS</A><BR> -<A HREF="manual.html#pdf-LUA_RIDX_MAINTHREAD">LUA_RIDX_MAINTHREAD</A><BR> -<A HREF="manual.html#pdf-LUA_TBOOLEAN">LUA_TBOOLEAN</A><BR> -<A HREF="manual.html#pdf-LUA_TFUNCTION">LUA_TFUNCTION</A><BR> -<A HREF="manual.html#pdf-LUA_TLIGHTUSERDATA">LUA_TLIGHTUSERDATA</A><BR> -<A HREF="manual.html#pdf-LUA_TNIL">LUA_TNIL</A><BR> -<A HREF="manual.html#pdf-LUA_TNONE">LUA_TNONE</A><BR> -<A HREF="manual.html#pdf-LUA_TNUMBER">LUA_TNUMBER</A><BR> -<A HREF="manual.html#pdf-LUA_TSTRING">LUA_TSTRING</A><BR> -<A HREF="manual.html#pdf-LUA_TTABLE">LUA_TTABLE</A><BR> -<A HREF="manual.html#pdf-LUA_TTHREAD">LUA_TTHREAD</A><BR> -<A HREF="manual.html#pdf-LUA_TUSERDATA">LUA_TUSERDATA</A><BR> -<A HREF="manual.html#pdf-LUA_USE_APICHECK">LUA_USE_APICHECK</A><BR> -<A HREF="manual.html#pdf-LUA_YIELD">LUA_YIELD</A><BR> -<A HREF="manual.html#pdf-LUAL_BUFFERSIZE">LUAL_BUFFERSIZE</A><BR> - -</TD> -</TR> -</TABLE> - -<HR> -<SMALL CLASS="footer"> -Last update: -Mon Feb 23 22:24:36 BRT 2015 -</SMALL> -<!-- -Last change: revised for Lua 5.2.4 ---> - -</BODY> -</HTML> diff --git a/source/libs/lua52/lua52-src/doc/logo.gif b/source/libs/lua52/lua52-src/doc/logo.gif deleted file mode 100644 index 2f5e4ac2e742fbb7675e739879211553758aea9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4232 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 PWz_J}_#7St0k8iB@FZjZ diff --git a/source/libs/lua52/lua52-src/doc/lua.1 b/source/libs/lua52/lua52-src/doc/lua.1 deleted file mode 100644 index 6d3aa8c36..000000000 --- a/source/libs/lua52/lua52-src/doc/lua.1 +++ /dev/null @@ -1,116 +0,0 @@ -.\" $Id: lua.man,v 1.13 2011/11/16 17:16:53 lhf Exp $ -.TH LUA 1 "$Date: 2011/11/16 17:16:53 $" -.SH NAME -lua \- Lua interpreter -.SH SYNOPSIS -.B lua -[ -.I options -] -[ -.I script -[ -.I args -] -] -.SH DESCRIPTION -.B lua -is the standalone Lua interpreter. -It loads and executes Lua programs, -either in textual source form or -in precompiled binary form. -(Precompiled binaries are output by -.BR luac , -the Lua compiler.) -.B lua -can be used as a batch interpreter and also interactively. -.LP -The given -.I options -are handled in order and then -the Lua program in file -.I script -is loaded and executed. -The given -.I args -are available to -.I script -as strings in a global table named -.BR arg . -If no options or arguments are given, -then -.B "\-v \-i" -is assumed when the standard input is a terminal; -otherwise, -.B "\-" -is assumed. -.LP -In interactive mode, -.B lua -prompts the user, -reads lines from the standard input, -and executes them as they are read. -If a line does not contain a complete statement, -then a secondary prompt is displayed and -lines are read until a complete statement is formed or -a syntax error is found. -If a line starts with -.BR '=' , -then -.B lua -evaluates and displays -the values of the expressions in the remainder of the line. -.LP -At the very start, -before even handling the command line, -.B lua -checks the contents of the environment variables -.B LUA_INIT_5_2 -or -.BR LUA_INIT , -in that order. -If the contents is of the form -.RI '@ filename ', -then -.I filename -is executed. -Otherwise, the string is assumed to be a Lua statement and is executed. -.SH OPTIONS -.TP -.BI \-e " stat" -execute statement -.IR stat . -.TP -.B \-i -enter interactive mode after executing -.IR script . -.TP -.BI \-l " name" -execute the equivalent of -.IB name =require(' name ') -before executing -.IR script . -.TP -.B \-v -show version information. -.TP -.B \-E -ignore environment variables. -.TP -.B \-\- -stop handling options. -.TP -.B \- -stop handling options and execute the standard input as a file. -.SH "SEE ALSO" -.BR luac (1) -.br -The documentation at lua.org, -especially section 7 of the reference manual. -.SH DIAGNOSTICS -Error messages should be self explanatory. -.SH AUTHORS -R. Ierusalimschy, -L. H. de Figueiredo, -W. Celes -.\" EOF diff --git a/source/libs/lua52/lua52-src/doc/lua.css b/source/libs/lua52/lua52-src/doc/lua.css deleted file mode 100644 index 2d2e19def..000000000 --- a/source/libs/lua52/lua52-src/doc/lua.css +++ /dev/null @@ -1,106 +0,0 @@ -html { - background-color: #F8F8F8 ; -} - -body { - border: solid #a0a0a0 1px ; - border-radius: 20px ; - padding: 26px ; - margin: 16px ; - color: #000000 ; - background-color: #FFFFFF ; - font-family: Helvetica, Arial, sans-serif ; - text-align: justify ; - line-height: 1.25 ; -} - -h1, h2, h3, h4 { - font-family: Verdana, Geneva, sans-serif ; - font-weight: normal ; - font-style: normal ; -} - -h2 { - padding-top: 0.4em ; - padding-bottom: 0.4em ; - padding-left: 0.8em ; - padding-right: 0.8em ; - background-color: #D0D0FF ; - border-radius: 8px ; - border: solid #a0a0a0 1px ; -} - -h3 { - padding-left: 0.5em ; - border-left: solid #D0D0FF 1em ; -} - -table h3 { - padding-left: 0px ; - border-left: none ; -} - -a:link { - color: #000080 ; - background-color: inherit ; - text-decoration: none ; -} - -a:visited { - background-color: inherit ; - text-decoration: none ; -} - -a:link:hover, a:visited:hover { - color: #000080 ; - background-color: #D0D0FF ; - border-radius: 4px ; -} - -a:link:active, a:visited:active { - color: #FF0000 ; -} - -h1 a img { - vertical-align: text-bottom ; -} - -hr { - border: 0 ; - height: 1px ; - color: #a0a0a0 ; - background-color: #a0a0a0 ; - display: none ; -} - -table hr { - display: block ; -} - -:target { - background-color: #F8F8F8 ; - padding: 8px ; - border: solid #a0a0a0 2px ; - border-radius: 8px ; -} - -.footer { - color: gray ; - font-size: x-small ; -} - -input[type=text] { - border: solid #a0a0a0 2px ; - border-radius: 2em ; - background-image: url('images/search.png') ; - background-repeat: no-repeat ; - background-position: 4px center ; - padding-left: 20px ; - height: 2em ; -} - -pre.session { - background-color: #F8F8F8 ; - padding: 1em ; - border-radius: 8px ; -} diff --git a/source/libs/lua52/lua52-src/doc/luac.1 b/source/libs/lua52/lua52-src/doc/luac.1 deleted file mode 100644 index 9d8f475f5..000000000 --- a/source/libs/lua52/lua52-src/doc/luac.1 +++ /dev/null @@ -1,118 +0,0 @@ -.\" $Id: luac.man,v 1.29 2011/11/16 13:53:40 lhf Exp $ -.TH LUAC 1 "$Date: 2011/11/16 13:53:40 $" -.SH NAME -luac \- Lua compiler -.SH SYNOPSIS -.B luac -[ -.I options -] [ -.I filenames -] -.SH DESCRIPTION -.B luac -is the Lua compiler. -It translates programs written in the Lua programming language -into binary files containing precompiled chunks -that can be later loaded and executed. -.LP -The main advantages of precompiling chunks are: -faster loading, -protecting source code from accidental user changes, -and -off-line syntax checking. -Precompiling does not imply faster execution -because in Lua chunks are always compiled into bytecodes before being executed. -.B luac -simply allows those bytecodes to be saved in a file for later execution. -Precompiled chunks are not necessarily smaller than the corresponding source. -The main goal in precompiling is faster loading. -.LP -In the command line, -you can mix -text files containing Lua source and -binary files containing precompiled chunks. -.B luac -produces a single output file containing the combined bytecodes -for all files given. -Executing the combined file is equivalent to executing the given files. -By default, -the output file is named -.BR luac.out , -but you can change this with the -.B \-o -option. -.LP -Precompiled chunks are -.I not -portable across different architectures. -Moreover, -the internal format of precompiled chunks -is likely to change when a new version of Lua is released. -Make sure you save the source files of all Lua programs that you precompile. -.LP -.SH OPTIONS -.TP -.B \-l -produce a listing of the compiled bytecode for Lua's virtual machine. -Listing bytecodes is useful to learn about Lua's virtual machine. -If no files are given, then -.B luac -loads -.B luac.out -and lists its contents. -Use -.B \-l \-l -for a full listing. -.TP -.BI \-o " file" -output to -.IR file , -instead of the default -.BR luac.out . -(You can use -.B "'\-'" -for standard output, -but not on platforms that open standard output in text mode.) -The output file may be one of the given files because -all files are loaded before the output file is written. -Be careful not to overwrite precious files. -.TP -.B \-p -load files but do not generate any output file. -Used mainly for syntax checking and for testing precompiled chunks: -corrupted files will probably generate errors when loaded. -If no files are given, then -.B luac -loads -.B luac.out -and tests its contents. -No messages are displayed if the file loads without errors. -.TP -.B \-s -strip debug information before writing the output file. -This saves some space in very large chunks, -but if errors occur when running a stripped chunk, -then the error messages may not contain the full information they usually do. -In particular, -line numbers and names of local variables are lost. -.TP -.B \-v -show version information. -.TP -.B \-\- -stop handling options. -.TP -.B \- -stop handling options and process standard input. -.SH "SEE ALSO" -.BR lua (1) -.br -The documentation at lua.org. -.SH DIAGNOSTICS -Error messages should be self explanatory. -.SH AUTHORS -R. Ierusalimschy, -L. H. de Figueiredo, -W. Celes -.\" EOF diff --git a/source/libs/lua52/lua52-src/doc/manual.css b/source/libs/lua52/lua52-src/doc/manual.css deleted file mode 100644 index 375f7e7f5..000000000 --- a/source/libs/lua52/lua52-src/doc/manual.css +++ /dev/null @@ -1,27 +0,0 @@ -h3 code { - font-family: inherit ; - font-size: inherit ; -} - -pre, code { - font-size: 12pt ; -} - -span.apii { - float: right ; - font-family: inherit ; - font-style: normal ; - font-size: small ; - color: gray ; -} - -p+h1, ul+h1 { - font-style: normal ; - padding-top: 0.4em ; - padding-bottom: 0.4em ; - padding-left: 16px ; - margin-left: -16px ; - background-color: #D0D0FF ; - border-radius: 8px ; - border: solid #000080 1px ; -} diff --git a/source/libs/lua52/lua52-src/doc/manual.html b/source/libs/lua52/lua52-src/doc/manual.html deleted file mode 100644 index 26d4e58e1..000000000 --- a/source/libs/lua52/lua52-src/doc/manual.html +++ /dev/null @@ -1,10508 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> - -<head> -<title>Lua 5.2 Reference Manual</title> -<link rel="stylesheet" type="text/css" href="lua.css"> -<link rel="stylesheet" type="text/css" href="manual.css"> -<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1"> -</head> - -<body> - -<hr> -<h1> -<a href="http://www.lua.org/"><img src="logo.gif" alt="" border="0"></a> -Lua 5.2 Reference Manual -</h1> - -by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes -<p> -<small> -Copyright © 2011–2015 Lua.org, PUC-Rio. -Freely available under the terms of the -<a href="http://www.lua.org/license.html">Lua license</a>. -</small> -<hr> -<p> - -<a href="contents.html#contents">contents</A> -· -<a href="contents.html#index">index</A> - -<!-- ====================================================================== --> -<p> - -<!-- $Id: manual.of,v 1.104 2013/06/01 00:13:11 roberto Exp $ --> - - - - -<h1>1 – <a name="1">Introduction</a></h1> - -<p> -Lua is an extension programming language designed to support -general procedural programming with data description -facilities. -It also offers good support for object-oriented programming, -functional programming, and data-driven programming. -Lua is intended to be used as a powerful, lightweight, -embeddable scripting language for any program that needs one. -Lua is implemented as a library, written in <em>clean C</em>, -the common subset of Standard C and C++. - - -<p> -Being an extension language, Lua has no notion of a "main" program: -it only works <em>embedded</em> in a host client, -called the <em>embedding program</em> or simply the <em>host</em>. -The host program can invoke functions to execute a piece of Lua code, -can write and read Lua variables, -and can register C functions to be called by Lua code. -Through the use of C functions, Lua can be augmented to cope with -a wide range of different domains, -thus creating customized programming languages sharing a syntactical framework. -The Lua distribution includes a sample host program called <code>lua</code>, -which uses the Lua library to offer a complete, standalone Lua interpreter, -for interactive or batch use. - - -<p> -Lua is free software, -and is provided as usual with no guarantees, -as stated in its license. -The implementation described in this manual is available -at Lua's official web site, <code>www.lua.org</code>. - - -<p> -Like any other reference manual, -this document is dry in places. -For a discussion of the decisions behind the design of Lua, -see the technical papers available at Lua's web site. -For a detailed introduction to programming in Lua, -see Roberto's book, <em>Programming in Lua</em>. - - - -<h1>2 – <a name="2">Basic Concepts</a></h1> - -<p> -This section describes the basic concepts of the language. - - - -<h2>2.1 – <a name="2.1">Values and Types</a></h2> - -<p> -Lua is a <em>dynamically typed language</em>. -This means that -variables do not have types; only values do. -There are no type definitions in the language. -All values carry their own type. - - -<p> -All values in Lua are <em>first-class values</em>. -This means that all values can be stored in variables, -passed as arguments to other functions, and returned as results. - - -<p> -There are eight basic types in Lua: -<em>nil</em>, <em>boolean</em>, <em>number</em>, -<em>string</em>, <em>function</em>, <em>userdata</em>, -<em>thread</em>, and <em>table</em>. -<em>Nil</em> is the type of the value <b>nil</b>, -whose main property is to be different from any other value; -it usually represents the absence of a useful value. -<em>Boolean</em> is the type of the values <b>false</b> and <b>true</b>. -Both <b>nil</b> and <b>false</b> make a condition false; -any other value makes it true. -<em>Number</em> represents real (double-precision floating-point) numbers. -Operations on numbers follow the same rules of -the underlying C implementation, -which, in turn, usually follows the IEEE 754 standard. -(It is easy to build Lua interpreters that use other -internal representations for numbers, -such as single-precision floats or long integers; -see file <code>luaconf.h</code>.) -<em>String</em> represents immutable sequences of bytes. - -Lua is 8-bit clean: -strings can contain any 8-bit value, -including embedded zeros ('<code>\0</code>'). - - -<p> -Lua can call (and manipulate) functions written in Lua and -functions written in C -(see <a href="#3.4.9">§3.4.9</a>). - - -<p> -The type <em>userdata</em> is provided to allow arbitrary C data to -be stored in Lua variables. -A userdata value is a pointer to a block of raw memory. -There are two kinds of userdata: -full userdata, where the block of memory is managed by Lua, -and light userdata, where the block of memory is managed by the host. -Userdata has no predefined operations in Lua, -except assignment and identity test. -By using <em>metatables</em>, -the programmer can define operations for full userdata values -(see <a href="#2.4">§2.4</a>). -Userdata values cannot be created or modified in Lua, -only through the C API. -This guarantees the integrity of data owned by the host program. - - -<p> -The type <em>thread</em> represents independent threads of execution -and it is used to implement coroutines (see <a href="#2.6">§2.6</a>). -Do not confuse Lua threads with operating-system threads. -Lua supports coroutines on all systems, -even those that do not support threads. - - -<p> -The type <em>table</em> implements associative arrays, -that is, arrays that can be indexed not only with numbers, -but with any Lua value except <b>nil</b> and NaN -(<em>Not a Number</em>, a special numeric value used to represent -undefined or unrepresentable results, such as <code>0/0</code>). -Tables can be <em>heterogeneous</em>; -that is, they can contain values of all types (except <b>nil</b>). -Any key with value <b>nil</b> is not considered part of the table. -Conversely, any key that is not part of a table has -an associated value <b>nil</b>. - - -<p> -Tables are the sole data structuring mechanism in Lua; -they can be used to represent ordinary arrays, sequences, -symbol tables, sets, records, graphs, trees, etc. -To represent records, Lua uses the field name as an index. -The language supports this representation by -providing <code>a.name</code> as syntactic sugar for <code>a["name"]</code>. -There are several convenient ways to create tables in Lua -(see <a href="#3.4.8">§3.4.8</a>). - - -<p> -We use the term <em>sequence</em> to denote a table where -the set of all positive numeric keys is equal to <em>{1..n}</em> -for some integer <em>n</em>, -which is called the length of the sequence (see <a href="#3.4.6">§3.4.6</a>). - - -<p> -Like indices, -the values of table fields can be of any type. -In particular, -because functions are first-class values, -table fields can contain functions. -Thus tables can also carry <em>methods</em> (see <a href="#3.4.10">§3.4.10</a>). - - -<p> -The indexing of tables follows -the definition of raw equality in the language. -The expressions <code>a[i]</code> and <code>a[j]</code> -denote the same table element -if and only if <code>i</code> and <code>j</code> are raw equal -(that is, equal without metamethods). - - -<p> -Tables, functions, threads, and (full) userdata values are <em>objects</em>: -variables do not actually <em>contain</em> these values, -only <em>references</em> to them. -Assignment, parameter passing, and function returns -always manipulate references to such values; -these operations do not imply any kind of copy. - - -<p> -The library function <a href="#pdf-type"><code>type</code></a> returns a string describing the type -of a given value (see <a href="#6.1">§6.1</a>). - - - - - -<h2>2.2 – <a name="2.2">Environments and the Global Environment</a></h2> - -<p> -As will be discussed in <a href="#3.2">§3.2</a> and <a href="#3.3.3">§3.3.3</a>, -any reference to a global name <code>var</code> is syntactically translated -to <code>_ENV.var</code>. -Moreover, every chunk is compiled in the scope of -an external local variable called <code>_ENV</code> (see <a href="#3.3.2">§3.3.2</a>), -so <code>_ENV</code> itself is never a global name in a chunk. - - -<p> -Despite the existence of this external <code>_ENV</code> variable and -the translation of global names, -<code>_ENV</code> is a completely regular name. -In particular, -you can define new variables and parameters with that name. -Each reference to a global name uses the <code>_ENV</code> that is -visible at that point in the program, -following the usual visibility rules of Lua (see <a href="#3.5">§3.5</a>). - - -<p> -Any table used as the value of <code>_ENV</code> is called an <em>environment</em>. - - -<p> -Lua keeps a distinguished environment called the <em>global environment</em>. -This value is kept at a special index in the C registry (see <a href="#4.5">§4.5</a>). -In Lua, the variable <a href="#pdf-_G"><code>_G</code></a> is initialized with this same value. - - -<p> -When Lua compiles a chunk, -it initializes the value of its <code>_ENV</code> upvalue -with the global environment (see <a href="#pdf-load"><code>load</code></a>). -Therefore, by default, -global variables in Lua code refer to entries in the global environment. -Moreover, all standard libraries are loaded in the global environment -and several functions there operate on that environment. -You can use <a href="#pdf-load"><code>load</code></a> (or <a href="#pdf-loadfile"><code>loadfile</code></a>) -to load a chunk with a different environment. -(In C, you have to load the chunk and then change the value -of its first upvalue.) - - -<p> -If you change the global environment in the registry -(through C code or the debug library), -all chunks loaded after the change will get the new environment. -Previously loaded chunks are not affected, however, -as each has its own reference to the environment in its <code>_ENV</code> variable. -Moreover, the variable <a href="#pdf-_G"><code>_G</code></a> -(which is stored in the original global environment) -is never updated by Lua. - - - - - -<h2>2.3 – <a name="2.3">Error Handling</a></h2> - -<p> -Because Lua is an embedded extension language, -all Lua actions start from C code in the host program -calling a function from the Lua library (see <a href="#lua_pcall"><code>lua_pcall</code></a>). -Whenever an error occurs during -the compilation or execution of a Lua chunk, -control returns to the host, -which can take appropriate measures -(such as printing an error message). - - -<p> -Lua code can explicitly generate an error by calling the -<a href="#pdf-error"><code>error</code></a> function. -If you need to catch errors in Lua, -you can use <a href="#pdf-pcall"><code>pcall</code></a> or <a href="#pdf-xpcall"><code>xpcall</code></a> -to call a given function in <em>protected mode</em>. - - -<p> -Whenever there is an error, -an <em>error object</em> (also called an <em>error message</em>) -is propagated with information about the error. -Lua itself only generates errors where the error object is a string, -but programs may generate errors with -any value for the error object. - - -<p> -When you use <a href="#pdf-xpcall"><code>xpcall</code></a> or <a href="#lua_pcall"><code>lua_pcall</code></a>, -you may give a <em>message handler</em> -to be called in case of errors. -This function is called with the original error message -and returns a new error message. -It is called before the error unwinds the stack, -so that it can gather more information about the error, -for instance by inspecting the stack and creating a stack traceback. -This message handler is still protected by the protected call; -so, an error inside the message handler -will call the message handler again. -If this loop goes on, Lua breaks it and returns an appropriate message. - - - - - -<h2>2.4 – <a name="2.4">Metatables and Metamethods</a></h2> - -<p> -Every value in Lua can have a <em>metatable</em>. -This <em>metatable</em> is an ordinary Lua table -that defines the behavior of the original value -under certain special operations. -You can change several aspects of the behavior -of operations over a value by setting specific fields in its metatable. -For instance, when a non-numeric value is the operand of an addition, -Lua checks for a function in the field "<code>__add</code>" of the value's metatable. -If it finds one, -Lua calls this function to perform the addition. - - -<p> -The keys in a metatable are derived from the <em>event</em> names; -the corresponding values are called <em>metamethods</em>. -In the previous example, the event is <code>"add"</code> -and the metamethod is the function that performs the addition. - - -<p> -You can query the metatable of any value -using the <a href="#pdf-getmetatable"><code>getmetatable</code></a> function. - - -<p> -You can replace the metatable of tables -using the <a href="#pdf-setmetatable"><code>setmetatable</code></a> function. -You cannot change the metatable of other types from Lua -(except by using the debug library); -you must use the C API for that. - - -<p> -Tables and full userdata have individual metatables -(although multiple tables and userdata can share their metatables). -Values of all other types share one single metatable per type; -that is, there is one single metatable for all numbers, -one for all strings, etc. -By default, a value has no metatable, -but the string library sets a metatable for the string type (see <a href="#6.4">§6.4</a>). - - -<p> -A metatable controls how an object behaves in arithmetic operations, -order comparisons, concatenation, length operation, and indexing. -A metatable also can define a function to be called -when a userdata or a table is garbage collected. -When Lua performs one of these operations over a value, -it checks whether this value has a metatable with the corresponding event. -If so, the value associated with that key (the metamethod) -controls how Lua will perform the operation. - - -<p> -Metatables control the operations listed next. -Each operation is identified by its corresponding name. -The key for each operation is a string with its name prefixed by -two underscores, '<code>__</code>'; -for instance, the key for operation "add" is the -string "<code>__add</code>". - - -<p> -The semantics of these operations is better explained by a Lua function -describing how the interpreter executes the operation. -The code shown here in Lua is only illustrative; -the real behavior is hard coded in the interpreter -and it is much more efficient than this simulation. -All functions used in these descriptions -(<a href="#pdf-rawget"><code>rawget</code></a>, <a href="#pdf-tonumber"><code>tonumber</code></a>, etc.) -are described in <a href="#6.1">§6.1</a>. -In particular, to retrieve the metamethod of a given object, -we use the expression - -<pre> - metatable(obj)[event] -</pre><p> -This should be read as - -<pre> - rawget(getmetatable(obj) or {}, event) -</pre><p> -This means that the access to a metamethod does not invoke other metamethods, -and access to objects with no metatables does not fail -(it simply results in <b>nil</b>). - - -<p> -For the unary <code>-</code> and <code>#</code> operators, -the metamethod is called with a dummy second argument. -This extra argument is only to simplify Lua's internals; -it may be removed in future versions and therefore it is not present -in the following code. -(For most uses this extra argument is irrelevant.) - - - -<ul> - -<li><b>"add": </b> -the <code>+</code> operation. - - - -<p> -The function <code>getbinhandler</code> below defines how Lua chooses a handler -for a binary operation. -First, Lua tries the first operand. -If its type does not define a handler for the operation, -then Lua tries the second operand. - -<pre> - function getbinhandler (op1, op2, event) - return metatable(op1)[event] or metatable(op2)[event] - end -</pre><p> -By using this function, -the behavior of the <code>op1 + op2</code> is - -<pre> - function add_event (op1, op2) - local o1, o2 = tonumber(op1), tonumber(op2) - if o1 and o2 then -- both operands are numeric? - return o1 + o2 -- '+' here is the primitive 'add' - else -- at least one of the operands is not numeric - local h = getbinhandler(op1, op2, "__add") - if h then - -- call the handler with both operands - return (h(op1, op2)) - else -- no handler available: default behavior - error(···) - end - end - end -</pre><p> -</li> - -<li><b>"sub": </b> -the <code>-</code> operation. - -Behavior similar to the "add" operation. -</li> - -<li><b>"mul": </b> -the <code>*</code> operation. - -Behavior similar to the "add" operation. -</li> - -<li><b>"div": </b> -the <code>/</code> operation. - -Behavior similar to the "add" operation. -</li> - -<li><b>"mod": </b> -the <code>%</code> operation. - -Behavior similar to the "add" operation, -with the operation -<code>o1 - floor(o1/o2)*o2</code> as the primitive operation. -</li> - -<li><b>"pow": </b> -the <code>^</code> (exponentiation) operation. - -Behavior similar to the "add" operation, -with the function <code>pow</code> (from the C math library) -as the primitive operation. -</li> - -<li><b>"unm": </b> -the unary <code>-</code> operation. - - -<pre> - function unm_event (op) - local o = tonumber(op) - if o then -- operand is numeric? - return -o -- '-' here is the primitive 'unm' - else -- the operand is not numeric. - -- Try to get a handler from the operand - local h = metatable(op).__unm - if h then - -- call the handler with the operand - return (h(op)) - else -- no handler available: default behavior - error(···) - end - end - end -</pre><p> -</li> - -<li><b>"concat": </b> -the <code>..</code> (concatenation) operation. - - -<pre> - function concat_event (op1, op2) - if (type(op1) == "string" or type(op1) == "number") and - (type(op2) == "string" or type(op2) == "number") then - return op1 .. op2 -- primitive string concatenation - else - local h = getbinhandler(op1, op2, "__concat") - if h then - return (h(op1, op2)) - else - error(···) - end - end - end -</pre><p> -</li> - -<li><b>"len": </b> -the <code>#</code> operation. - - -<pre> - function len_event (op) - if type(op) == "string" then - return strlen(op) -- primitive string length - else - local h = metatable(op).__len - if h then - return (h(op)) -- call handler with the operand - elseif type(op) == "table" then - return #op -- primitive table length - else -- no handler available: error - error(···) - end - end - end -</pre><p> -See <a href="#3.4.6">§3.4.6</a> for a description of the length of a table. -</li> - -<li><b>"eq": </b> -the <code>==</code> operation. - -The function <code>getequalhandler</code> defines how Lua chooses a metamethod -for equality. -A metamethod is selected only when both values -being compared have the same type -and the same metamethod for the selected operation, -and the values are either tables or full userdata. - -<pre> - function getequalhandler (op1, op2) - if type(op1) ~= type(op2) or - (type(op1) ~= "table" and type(op1) ~= "userdata") then - return nil -- different values - end - local mm1 = metatable(op1).__eq - local mm2 = metatable(op2).__eq - if mm1 == mm2 then return mm1 else return nil end - end -</pre><p> -The "eq" event is defined as follows: - -<pre> - function eq_event (op1, op2) - if op1 == op2 then -- primitive equal? - return true -- values are equal - end - -- try metamethod - local h = getequalhandler(op1, op2) - if h then - return not not h(op1, op2) - else - return false - end - end -</pre><p> -Note that the result is always a boolean. -</li> - -<li><b>"lt": </b> -the <code><</code> operation. - - -<pre> - function lt_event (op1, op2) - if type(op1) == "number" and type(op2) == "number" then - return op1 < op2 -- numeric comparison - elseif type(op1) == "string" and type(op2) == "string" then - return op1 < op2 -- lexicographic comparison - else - local h = getbinhandler(op1, op2, "__lt") - if h then - return not not h(op1, op2) - else - error(···) - end - end - end -</pre><p> -Note that the result is always a boolean. -</li> - -<li><b>"le": </b> -the <code><=</code> operation. - - -<pre> - function le_event (op1, op2) - if type(op1) == "number" and type(op2) == "number" then - return op1 <= op2 -- numeric comparison - elseif type(op1) == "string" and type(op2) == "string" then - return op1 <= op2 -- lexicographic comparison - else - local h = getbinhandler(op1, op2, "__le") - if h then - return not not h(op1, op2) - else - h = getbinhandler(op1, op2, "__lt") - if h then - return not h(op2, op1) - else - error(···) - end - end - end - end -</pre><p> -Note that, in the absence of a "le" metamethod, -Lua tries the "lt", assuming that <code>a <= b</code> is -equivalent to <code>not (b < a)</code>. - - -<p> -As with the other comparison operators, -the result is always a boolean. -</li> - -<li><b>"index": </b> -The indexing access <code>table[key]</code>. -Note that the metamethod is tried only -when <code>key</code> is not present in <code>table</code>. -(When <code>table</code> is not a table, -no key is ever present, -so the metamethod is always tried.) - - -<pre> - function gettable_event (table, key) - local h - if type(table) == "table" then - local v = rawget(table, key) - -- if key is present, return raw value - if v ~= nil then return v end - h = metatable(table).__index - if h == nil then return nil end - else - h = metatable(table).__index - if h == nil then - error(···) - end - end - if type(h) == "function" then - return (h(table, key)) -- call the handler - else return h[key] -- or repeat operation on it - end - end -</pre><p> -</li> - -<li><b>"newindex": </b> -The indexing assignment <code>table[key] = value</code>. -Note that the metamethod is tried only -when <code>key</code> is not present in <code>table</code>. - - -<pre> - function settable_event (table, key, value) - local h - if type(table) == "table" then - local v = rawget(table, key) - -- if key is present, do raw assignment - if v ~= nil then rawset(table, key, value); return end - h = metatable(table).__newindex - if h == nil then rawset(table, key, value); return end - else - h = metatable(table).__newindex - if h == nil then - error(···) - end - end - if type(h) == "function" then - h(table, key,value) -- call the handler - else h[key] = value -- or repeat operation on it - end - end -</pre><p> -</li> - -<li><b>"call": </b> -called when Lua calls a value. - - -<pre> - function function_event (func, ...) - if type(func) == "function" then - return func(...) -- primitive call - else - local h = metatable(func).__call - if h then - return h(func, ...) - else - error(···) - end - end - end -</pre><p> -</li> - -</ul> - - - - -<h2>2.5 – <a name="2.5">Garbage Collection</a></h2> - -<p> -Lua performs automatic memory management. -This means that -you have to worry neither about allocating memory for new objects -nor about freeing it when the objects are no longer needed. -Lua manages memory automatically by running -a <em>garbage collector</em> to collect all <em>dead objects</em> -(that is, objects that are no longer accessible from Lua). -All memory used by Lua is subject to automatic management: -strings, tables, userdata, functions, threads, internal structures, etc. - - -<p> -Lua implements an incremental mark-and-sweep collector. -It uses two numbers to control its garbage-collection cycles: -the <em>garbage-collector pause</em> and -the <em>garbage-collector step multiplier</em>. -Both use percentage points as units -(e.g., a value of 100 means an internal value of 1). - - -<p> -The garbage-collector pause -controls how long the collector waits before starting a new cycle. -Larger values make the collector less aggressive. -Values smaller than 100 mean the collector will not wait to -start a new cycle. -A value of 200 means that the collector waits for the total memory in use -to double before starting a new cycle. - - -<p> -The garbage-collector step multiplier -controls the relative speed of the collector relative to -memory allocation. -Larger values make the collector more aggressive but also increase -the size of each incremental step. -Values smaller than 100 make the collector too slow and -can result in the collector never finishing a cycle. -The default is 200, -which means that the collector runs at "twice" -the speed of memory allocation. - - -<p> -If you set the step multiplier to a very large number -(larger than 10% of the maximum number of -bytes that the program may use), -the collector behaves like a stop-the-world collector. -If you then set the pause to 200, -the collector behaves as in old Lua versions, -doing a complete collection every time Lua doubles its -memory usage. - - -<p> -You can change these numbers by calling <a href="#lua_gc"><code>lua_gc</code></a> in C -or <a href="#pdf-collectgarbage"><code>collectgarbage</code></a> in Lua. -You can also use these functions to control -the collector directly (e.g., stop and restart it). - - -<p> -As an experimental feature in Lua 5.2, -you can change the collector's operation mode -from incremental to <em>generational</em>. -A <em>generational collector</em> assumes that most objects die young, -and therefore it traverses only young (recently created) objects. -This behavior can reduce the time used by the collector, -but also increases memory usage (as old dead objects may accumulate). -To mitigate this second problem, -from time to time the generational collector performs a full collection. -Remember that this is an experimental feature; -you are welcome to try it, -but check your gains. - - - -<h3>2.5.1 – <a name="2.5.1">Garbage-Collection Metamethods</a></h3> - -<p> -You can set garbage-collector metamethods for tables -and, using the C API, -for full userdata (see <a href="#2.4">§2.4</a>). -These metamethods are also called <em>finalizers</em>. -Finalizers allow you to coordinate Lua's garbage collection -with external resource management -(such as closing files, network or database connections, -or freeing your own memory). - - -<p> -For an object (table or userdata) to be finalized when collected, -you must <em>mark</em> it for finalization. - -You mark an object for finalization when you set its metatable -and the metatable has a field indexed by the string "<code>__gc</code>". -Note that if you set a metatable without a <code>__gc</code> field -and later create that field in the metatable, -the object will not be marked for finalization. -However, after an object is marked, -you can freely change the <code>__gc</code> field of its metatable. - - -<p> -When a marked object becomes garbage, -it is not collected immediately by the garbage collector. -Instead, Lua puts it in a list. -After the collection, -Lua does the equivalent of the following function -for each object in that list: - -<pre> - function gc_event (obj) - local h = metatable(obj).__gc - if type(h) == "function" then - h(obj) - end - end -</pre> - -<p> -At the end of each garbage-collection cycle, -the finalizers for objects are called in -the reverse order that they were marked for collection, -among those collected in that cycle; -that is, the first finalizer to be called is the one associated -with the object marked last in the program. -The execution of each finalizer may occur at any point during -the execution of the regular code. - - -<p> -Because the object being collected must still be used by the finalizer, -it (and other objects accessible only through it) -must be <em>resurrected</em> by Lua. -Usually, this resurrection is transient, -and the object memory is freed in the next garbage-collection cycle. -However, if the finalizer stores the object in some global place -(e.g., a global variable), -then there is a permanent resurrection. -In any case, -the object memory is freed only when it becomes completely inaccessible; -its finalizer will never be called twice. - - -<p> -When you close a state (see <a href="#lua_close"><code>lua_close</code></a>), -Lua calls the finalizers of all objects marked for finalization, -following the reverse order that they were marked. -If any finalizer marks new objects for collection during that phase, -these new objects will not be finalized. - - - - - -<h3>2.5.2 – <a name="2.5.2">Weak Tables</a></h3> - -<p> -A <em>weak table</em> is a table whose elements are -<em>weak references</em>. -A weak reference is ignored by the garbage collector. -In other words, -if the only references to an object are weak references, -then the garbage collector will collect that object. - - -<p> -A weak table can have weak keys, weak values, or both. -A table with weak keys allows the collection of its keys, -but prevents the collection of its values. -A table with both weak keys and weak values allows the collection of -both keys and values. -In any case, if either the key or the value is collected, -the whole pair is removed from the table. -The weakness of a table is controlled by the -<code>__mode</code> field of its metatable. -If the <code>__mode</code> field is a string containing the character '<code>k</code>', -the keys in the table are weak. -If <code>__mode</code> contains '<code>v</code>', -the values in the table are weak. - - -<p> -A table with weak keys and strong values -is also called an <em>ephemeron table</em>. -In an ephemeron table, -a value is considered reachable only if its key is reachable. -In particular, -if the only reference to a key comes through its value, -the pair is removed. - - -<p> -Any change in the weakness of a table may take effect only -at the next collect cycle. -In particular, if you change the weakness to a stronger mode, -Lua may still collect some items from that table -before the change takes effect. - - -<p> -Only objects that have an explicit construction -are removed from weak tables. -Values, such as numbers and light C functions, -are not subject to garbage collection, -and therefore are not removed from weak tables -(unless its associated value is collected). -Although strings are subject to garbage collection, -they do not have an explicit construction, -and therefore are not removed from weak tables. - - -<p> -Resurrected objects -(that is, objects being finalized -and objects accessible only through objects being finalized) -have a special behavior in weak tables. -They are removed from weak values before running their finalizers, -but are removed from weak keys only in the next collection -after running their finalizers, when such objects are actually freed. -This behavior allows the finalizer to access properties -associated with the object through weak tables. - - -<p> -If a weak table is among the resurrected objects in a collection cycle, -it may not be properly cleared until the next cycle. - - - - - - - -<h2>2.6 – <a name="2.6">Coroutines</a></h2> - -<p> -Lua supports coroutines, -also called <em>collaborative multithreading</em>. -A coroutine in Lua represents an independent thread of execution. -Unlike threads in multithread systems, however, -a coroutine only suspends its execution by explicitly calling -a yield function. - - -<p> -You create a coroutine by calling <a href="#pdf-coroutine.create"><code>coroutine.create</code></a>. -Its sole argument is a function -that is the main function of the coroutine. -The <code>create</code> function only creates a new coroutine and -returns a handle to it (an object of type <em>thread</em>); -it does not start the coroutine. - - -<p> -You execute a coroutine by calling <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a>. -When you first call <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a>, -passing as its first argument -a thread returned by <a href="#pdf-coroutine.create"><code>coroutine.create</code></a>, -the coroutine starts its execution, -at the first line of its main function. -Extra arguments passed to <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a> are passed on -to the coroutine main function. -After the coroutine starts running, -it runs until it terminates or <em>yields</em>. - - -<p> -A coroutine can terminate its execution in two ways: -normally, when its main function returns -(explicitly or implicitly, after the last instruction); -and abnormally, if there is an unprotected error. -In the first case, <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a> returns <b>true</b>, -plus any values returned by the coroutine main function. -In case of errors, <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a> returns <b>false</b> -plus an error message. - - -<p> -A coroutine yields by calling <a href="#pdf-coroutine.yield"><code>coroutine.yield</code></a>. -When a coroutine yields, -the corresponding <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a> returns immediately, -even if the yield happens inside nested function calls -(that is, not in the main function, -but in a function directly or indirectly called by the main function). -In the case of a yield, <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a> also returns <b>true</b>, -plus any values passed to <a href="#pdf-coroutine.yield"><code>coroutine.yield</code></a>. -The next time you resume the same coroutine, -it continues its execution from the point where it yielded, -with the call to <a href="#pdf-coroutine.yield"><code>coroutine.yield</code></a> returning any extra -arguments passed to <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a>. - - -<p> -Like <a href="#pdf-coroutine.create"><code>coroutine.create</code></a>, -the <a href="#pdf-coroutine.wrap"><code>coroutine.wrap</code></a> function also creates a coroutine, -but instead of returning the coroutine itself, -it returns a function that, when called, resumes the coroutine. -Any arguments passed to this function -go as extra arguments to <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a>. -<a href="#pdf-coroutine.wrap"><code>coroutine.wrap</code></a> returns all the values returned by <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a>, -except the first one (the boolean error code). -Unlike <a href="#pdf-coroutine.resume"><code>coroutine.resume</code></a>, -<a href="#pdf-coroutine.wrap"><code>coroutine.wrap</code></a> does not catch errors; -any error is propagated to the caller. - - -<p> -As an example of how coroutines work, -consider the following code: - -<pre> - function foo (a) - print("foo", a) - return coroutine.yield(2*a) - end - - co = coroutine.create(function (a,b) - print("co-body", a, b) - local r = foo(a+1) - print("co-body", r) - local r, s = coroutine.yield(a+b, a-b) - print("co-body", r, s) - return b, "end" - end) - - print("main", coroutine.resume(co, 1, 10)) - print("main", coroutine.resume(co, "r")) - print("main", coroutine.resume(co, "x", "y")) - print("main", coroutine.resume(co, "x", "y")) -</pre><p> -When you run it, it produces the following output: - -<pre> - co-body 1 10 - foo 2 - main true 4 - co-body r - main true 11 -9 - co-body x y - main true 10 end - main false cannot resume dead coroutine -</pre> - -<p> -You can also create and manipulate coroutines through the C API: -see functions <a href="#lua_newthread"><code>lua_newthread</code></a>, <a href="#lua_resume"><code>lua_resume</code></a>, -and <a href="#lua_yield"><code>lua_yield</code></a>. - - - - - -<h1>3 – <a name="3">The Language</a></h1> - -<p> -This section describes the lexis, the syntax, and the semantics of Lua. -In other words, -this section describes -which tokens are valid, -how they can be combined, -and what their combinations mean. - - -<p> -Language constructs will be explained using the usual extended BNF notation, -in which -{<em>a</em>} means 0 or more <em>a</em>'s, and -[<em>a</em>] means an optional <em>a</em>. -Non-terminals are shown like non-terminal, -keywords are shown like <b>kword</b>, -and other terminal symbols are shown like ‘<b>=</b>’. -The complete syntax of Lua can be found in <a href="#9">§9</a> -at the end of this manual. - - - -<h2>3.1 – <a name="3.1">Lexical Conventions</a></h2> - -<p> -Lua is a free-form language. -It ignores spaces (including new lines) and comments -between lexical elements (tokens), -except as delimiters between names and keywords. - - -<p> -<em>Names</em> -(also called <em>identifiers</em>) -in Lua can be any string of letters, -digits, and underscores, -not beginning with a digit. -Identifiers are used to name variables, table fields, and labels. - - -<p> -The following <em>keywords</em> are reserved -and cannot be used as names: - - -<pre> - and break do else elseif end - false for function goto if in - local nil not or repeat return - then true until while -</pre> - -<p> -Lua is a case-sensitive language: -<code>and</code> is a reserved word, but <code>And</code> and <code>AND</code> -are two different, valid names. -As a convention, names starting with an underscore followed by -uppercase letters (such as <a href="#pdf-_VERSION"><code>_VERSION</code></a>) -are reserved for variables used by Lua. - - -<p> -The following strings denote other tokens: - -<pre> - + - * / % ^ # - == ~= <= >= < > = - ( ) { } [ ] :: - ; : , . .. ... -</pre> - -<p> -<em>Literal strings</em> -can be delimited by matching single or double quotes, -and can contain the following C-like escape sequences: -'<code>\a</code>' (bell), -'<code>\b</code>' (backspace), -'<code>\f</code>' (form feed), -'<code>\n</code>' (newline), -'<code>\r</code>' (carriage return), -'<code>\t</code>' (horizontal tab), -'<code>\v</code>' (vertical tab), -'<code>\\</code>' (backslash), -'<code>\"</code>' (quotation mark [double quote]), -and '<code>\'</code>' (apostrophe [single quote]). -A backslash followed by a real newline -results in a newline in the string. -The escape sequence '<code>\z</code>' skips the following span -of white-space characters, -including line breaks; -it is particularly useful to break and indent a long literal string -into multiple lines without adding the newlines and spaces -into the string contents. - - -<p> -A byte in a literal string can also be specified by its numerical value. -This can be done with the escape sequence <code>\x<em>XX</em></code>, -where <em>XX</em> is a sequence of exactly two hexadecimal digits, -or with the escape sequence <code>\<em>ddd</em></code>, -where <em>ddd</em> is a sequence of up to three decimal digits. -(Note that if a decimal escape is to be followed by a digit, -it must be expressed using exactly three digits.) -Strings in Lua can contain any 8-bit value, including embedded zeros, -which can be specified as '<code>\0</code>'. - - -<p> -Literal strings can also be defined using a long format -enclosed by <em>long brackets</em>. -We define an <em>opening long bracket of level <em>n</em></em> as an opening -square bracket followed by <em>n</em> equal signs followed by another -opening square bracket. -So, an opening long bracket of level 0 is written as <code>[[</code>, -an opening long bracket of level 1 is written as <code>[=[</code>, -and so on. -A <em>closing long bracket</em> is defined similarly; -for instance, a closing long bracket of level 4 is written as <code>]====]</code>. -A <em>long literal</em> starts with an opening long bracket of any level and -ends at the first closing long bracket of the same level. -It can contain any text except a closing bracket of the proper level. -Literals in this bracketed form can run for several lines, -do not interpret any escape sequences, -and ignore long brackets of any other level. -Any kind of end-of-line sequence -(carriage return, newline, carriage return followed by newline, -or newline followed by carriage return) -is converted to a simple newline. - - -<p> -Any byte in a literal string not -explicitly affected by the previous rules represents itself. -However, Lua opens files for parsing in text mode, -and the system file functions may have problems with -some control characters. -So, it is safer to represent -non-text data as a quoted literal with -explicit escape sequences for non-text characters. - - -<p> -For convenience, -when the opening long bracket is immediately followed by a newline, -the newline is not included in the string. -As an example, in a system using ASCII -(in which '<code>a</code>' is coded as 97, -newline is coded as 10, and '<code>1</code>' is coded as 49), -the five literal strings below denote the same string: - -<pre> - a = 'alo\n123"' - a = "alo\n123\"" - a = '\97lo\10\04923"' - a = [[alo - 123"]] - a = [==[ - alo - 123"]==] -</pre> - -<p> -A <em>numerical constant</em> can be written with an optional fractional part -and an optional decimal exponent, -marked by a letter '<code>e</code>' or '<code>E</code>'. -Lua also accepts hexadecimal constants, -which start with <code>0x</code> or <code>0X</code>. -Hexadecimal constants also accept an optional fractional part -plus an optional binary exponent, -marked by a letter '<code>p</code>' or '<code>P</code>'. -Examples of valid numerical constants are - -<pre> - 3 3.0 3.1416 314.16e-2 0.31416E1 - 0xff 0x0.1E 0xA23p-4 0X1.921FB54442D18P+1 -</pre> - -<p> -A <em>comment</em> starts with a double hyphen (<code>--</code>) -anywhere outside a string. -If the text immediately after <code>--</code> is not an opening long bracket, -the comment is a <em>short comment</em>, -which runs until the end of the line. -Otherwise, it is a <em>long comment</em>, -which runs until the corresponding closing long bracket. -Long comments are frequently used to disable code temporarily. - - - - - -<h2>3.2 – <a name="3.2">Variables</a></h2> - -<p> -Variables are places that store values. -There are three kinds of variables in Lua: -global variables, local variables, and table fields. - - -<p> -A single name can denote a global variable or a local variable -(or a function's formal parameter, -which is a particular kind of local variable): - -<pre> - var ::= Name -</pre><p> -Name denotes identifiers, as defined in <a href="#3.1">§3.1</a>. - - -<p> -Any variable name is assumed to be global unless explicitly declared -as a local (see <a href="#3.3.7">§3.3.7</a>). -Local variables are <em>lexically scoped</em>: -local variables can be freely accessed by functions -defined inside their scope (see <a href="#3.5">§3.5</a>). - - -<p> -Before the first assignment to a variable, its value is <b>nil</b>. - - -<p> -Square brackets are used to index a table: - -<pre> - var ::= prefixexp ‘<b>[</b>’ exp ‘<b>]</b>’ -</pre><p> -The meaning of accesses to table fields can be changed via metatables. -An access to an indexed variable <code>t[i]</code> is equivalent to -a call <code>gettable_event(t,i)</code>. -(See <a href="#2.4">§2.4</a> for a complete description of the -<code>gettable_event</code> function. -This function is not defined or callable in Lua. -We use it here only for explanatory purposes.) - - -<p> -The syntax <code>var.Name</code> is just syntactic sugar for -<code>var["Name"]</code>: - -<pre> - var ::= prefixexp ‘<b>.</b>’ Name -</pre> - -<p> -An access to a global variable <code>x</code> -is equivalent to <code>_ENV.x</code>. -Due to the way that chunks are compiled, -<code>_ENV</code> is never a global name (see <a href="#2.2">§2.2</a>). - - - - - -<h2>3.3 – <a name="3.3">Statements</a></h2> - -<p> -Lua supports an almost conventional set of statements, -similar to those in Pascal or C. -This set includes -assignments, control structures, function calls, -and variable declarations. - - - -<h3>3.3.1 – <a name="3.3.1">Blocks</a></h3> - -<p> -A block is a list of statements, -which are executed sequentially: - -<pre> - block ::= {stat} -</pre><p> -Lua has <em>empty statements</em> -that allow you to separate statements with semicolons, -start a block with a semicolon -or write two semicolons in sequence: - -<pre> - stat ::= ‘<b>;</b>’ -</pre> - -<p> -Function calls and assignments -can start with an open parenthesis. -This possibility leads to an ambiguity in Lua's grammar. -Consider the following fragment: - -<pre> - a = b + c - (print or io.write)('done') -</pre><p> -The grammar could see it in two ways: - -<pre> - a = b + c(print or io.write)('done') - - a = b + c; (print or io.write)('done') -</pre><p> -The current parser always sees such constructions -in the first way, -interpreting the open parenthesis -as the start of the arguments to a call. -To avoid this ambiguity, -it is a good practice to always precede with a semicolon -statements that start with a parenthesis: - -<pre> - ;(print or io.write)('done') -</pre> - -<p> -A block can be explicitly delimited to produce a single statement: - -<pre> - stat ::= <b>do</b> block <b>end</b> -</pre><p> -Explicit blocks are useful -to control the scope of variable declarations. -Explicit blocks are also sometimes used to -add a <b>return</b> statement in the middle -of another block (see <a href="#3.3.4">§3.3.4</a>). - - - - - -<h3>3.3.2 – <a name="3.3.2">Chunks</a></h3> - -<p> -The unit of compilation of Lua is called a <em>chunk</em>. -Syntactically, -a chunk is simply a block: - -<pre> - chunk ::= block -</pre> - -<p> -Lua handles a chunk as the body of an anonymous function -with a variable number of arguments -(see <a href="#3.4.10">§3.4.10</a>). -As such, chunks can define local variables, -receive arguments, and return values. -Moreover, such anonymous function is compiled as in the -scope of an external local variable called <code>_ENV</code> (see <a href="#2.2">§2.2</a>). -The resulting function always has <code>_ENV</code> as its only upvalue, -even if it does not use that variable. - - -<p> -A chunk can be stored in a file or in a string inside the host program. -To execute a chunk, -Lua first precompiles the chunk into instructions for a virtual machine, -and then it executes the compiled code -with an interpreter for the virtual machine. - - -<p> -Chunks can also be precompiled into binary form; -see program <code>luac</code> for details. -Programs in source and compiled forms are interchangeable; -Lua automatically detects the file type and acts accordingly. - - - - - - -<h3>3.3.3 – <a name="3.3.3">Assignment</a></h3> - -<p> -Lua allows multiple assignments. -Therefore, the syntax for assignment -defines a list of variables on the left side -and a list of expressions on the right side. -The elements in both lists are separated by commas: - -<pre> - stat ::= varlist ‘<b>=</b>’ explist - varlist ::= var {‘<b>,</b>’ var} - explist ::= exp {‘<b>,</b>’ exp} -</pre><p> -Expressions are discussed in <a href="#3.4">§3.4</a>. - - -<p> -Before the assignment, -the list of values is <em>adjusted</em> to the length of -the list of variables. -If there are more values than needed, -the excess values are thrown away. -If there are fewer values than needed, -the list is extended with as many <b>nil</b>'s as needed. -If the list of expressions ends with a function call, -then all values returned by that call enter the list of values, -before the adjustment -(except when the call is enclosed in parentheses; see <a href="#3.4">§3.4</a>). - - -<p> -The assignment statement first evaluates all its expressions -and only then are the assignments performed. -Thus the code - -<pre> - i = 3 - i, a[i] = i+1, 20 -</pre><p> -sets <code>a[3]</code> to 20, without affecting <code>a[4]</code> -because the <code>i</code> in <code>a[i]</code> is evaluated (to 3) -before it is assigned 4. -Similarly, the line - -<pre> - x, y = y, x -</pre><p> -exchanges the values of <code>x</code> and <code>y</code>, -and - -<pre> - x, y, z = y, z, x -</pre><p> -cyclically permutes the values of <code>x</code>, <code>y</code>, and <code>z</code>. - - -<p> -The meaning of assignments to global variables -and table fields can be changed via metatables. -An assignment to an indexed variable <code>t[i] = val</code> is equivalent to -<code>settable_event(t,i,val)</code>. -(See <a href="#2.4">§2.4</a> for a complete description of the -<code>settable_event</code> function. -This function is not defined or callable in Lua. -We use it here only for explanatory purposes.) - - -<p> -An assignment to a global variable <code>x = val</code> -is equivalent to the assignment -<code>_ENV.x = val</code> (see <a href="#2.2">§2.2</a>). - - - - - -<h3>3.3.4 – <a name="3.3.4">Control Structures</a></h3><p> -The control structures -<b>if</b>, <b>while</b>, and <b>repeat</b> have the usual meaning and -familiar syntax: - - - - -<pre> - stat ::= <b>while</b> exp <b>do</b> block <b>end</b> - stat ::= <b>repeat</b> block <b>until</b> exp - stat ::= <b>if</b> exp <b>then</b> block {<b>elseif</b> exp <b>then</b> block} [<b>else</b> block] <b>end</b> -</pre><p> -Lua also has a <b>for</b> statement, in two flavors (see <a href="#3.3.5">§3.3.5</a>). - - -<p> -The condition expression of a -control structure can return any value. -Both <b>false</b> and <b>nil</b> are considered false. -All values different from <b>nil</b> and <b>false</b> are considered true -(in particular, the number 0 and the empty string are also true). - - -<p> -In the <b>repeat</b>–<b>until</b> loop, -the inner block does not end at the <b>until</b> keyword, -but only after the condition. -So, the condition can refer to local variables -declared inside the loop block. - - -<p> -The <b>goto</b> statement transfers the program control to a label. -For syntactical reasons, -labels in Lua are considered statements too: - - - -<pre> - stat ::= <b>goto</b> Name - stat ::= label - label ::= ‘<b>::</b>’ Name ‘<b>::</b>’ -</pre> - -<p> -A label is visible in the entire block where it is defined, -except -inside nested blocks where a label with the same name is defined and -inside nested functions. -A goto may jump to any visible label as long as it does not -enter into the scope of a local variable. - - -<p> -Labels and empty statements are called <em>void statements</em>, -as they perform no actions. - - -<p> -The <b>break</b> statement terminates the execution of a -<b>while</b>, <b>repeat</b>, or <b>for</b> loop, -skipping to the next statement after the loop: - - -<pre> - stat ::= <b>break</b> -</pre><p> -A <b>break</b> ends the innermost enclosing loop. - - -<p> -The <b>return</b> statement is used to return values -from a function or a chunk (which is a function in disguise). - -Functions can return more than one value, -so the syntax for the <b>return</b> statement is - -<pre> - stat ::= <b>return</b> [explist] [‘<b>;</b>’] -</pre> - -<p> -The <b>return</b> statement can only be written -as the last statement of a block. -If it is really necessary to <b>return</b> in the middle of a block, -then an explicit inner block can be used, -as in the idiom <code>do return end</code>, -because now <b>return</b> is the last statement in its (inner) block. - - - - - -<h3>3.3.5 – <a name="3.3.5">For Statement</a></h3> - -<p> - -The <b>for</b> statement has two forms: -one numeric and one generic. - - -<p> -The numeric <b>for</b> loop repeats a block of code while a -control variable runs through an arithmetic progression. -It has the following syntax: - -<pre> - stat ::= <b>for</b> Name ‘<b>=</b>’ exp ‘<b>,</b>’ exp [‘<b>,</b>’ exp] <b>do</b> block <b>end</b> -</pre><p> -The <em>block</em> is repeated for <em>name</em> starting at the value of -the first <em>exp</em>, until it passes the second <em>exp</em> by steps of the -third <em>exp</em>. -More precisely, a <b>for</b> statement like - -<pre> - for v = <em>e1</em>, <em>e2</em>, <em>e3</em> do <em>block</em> end -</pre><p> -is equivalent to the code: - -<pre> - do - local <em>var</em>, <em>limit</em>, <em>step</em> = tonumber(<em>e1</em>), tonumber(<em>e2</em>), tonumber(<em>e3</em>) - if not (<em>var</em> and <em>limit</em> and <em>step</em>) then error() end - while (<em>step</em> > 0 and <em>var</em> <= <em>limit</em>) or (<em>step</em> <= 0 and <em>var</em> >= <em>limit</em>) do - local v = <em>var</em> - <em>block</em> - <em>var</em> = <em>var</em> + <em>step</em> - end - end -</pre><p> -Note the following: - -<ul> - -<li> -All three control expressions are evaluated only once, -before the loop starts. -They must all result in numbers. -</li> - -<li> -<code><em>var</em></code>, <code><em>limit</em></code>, and <code><em>step</em></code> are invisible variables. -The names shown here are for explanatory purposes only. -</li> - -<li> -If the third expression (the step) is absent, -then a step of 1 is used. -</li> - -<li> -You can use <b>break</b> to exit a <b>for</b> loop. -</li> - -<li> -The loop variable <code>v</code> is local to the loop; -you cannot use its value after the <b>for</b> ends or is broken. -If you need this value, -assign it to another variable before breaking or exiting the loop. -</li> - -</ul> - -<p> -The generic <b>for</b> statement works over functions, -called <em>iterators</em>. -On each iteration, the iterator function is called to produce a new value, -stopping when this new value is <b>nil</b>. -The generic <b>for</b> loop has the following syntax: - -<pre> - stat ::= <b>for</b> namelist <b>in</b> explist <b>do</b> block <b>end</b> - namelist ::= Name {‘<b>,</b>’ Name} -</pre><p> -A <b>for</b> statement like - -<pre> - for <em>var_1</em>, ···, <em>var_n</em> in <em>explist</em> do <em>block</em> end -</pre><p> -is equivalent to the code: - -<pre> - do - local <em>f</em>, <em>s</em>, <em>var</em> = <em>explist</em> - while true do - local <em>var_1</em>, ···, <em>var_n</em> = <em>f</em>(<em>s</em>, <em>var</em>) - if <em>var_1</em> == nil then break end - <em>var</em> = <em>var_1</em> - <em>block</em> - end - end -</pre><p> -Note the following: - -<ul> - -<li> -<code><em>explist</em></code> is evaluated only once. -Its results are an <em>iterator</em> function, -a <em>state</em>, -and an initial value for the first <em>iterator variable</em>. -</li> - -<li> -<code><em>f</em></code>, <code><em>s</em></code>, and <code><em>var</em></code> are invisible variables. -The names are here for explanatory purposes only. -</li> - -<li> -You can use <b>break</b> to exit a <b>for</b> loop. -</li> - -<li> -The loop variables <code><em>var_i</em></code> are local to the loop; -you cannot use their values after the <b>for</b> ends. -If you need these values, -then assign them to other variables before breaking or exiting the loop. -</li> - -</ul> - - - - -<h3>3.3.6 – <a name="3.3.6">Function Calls as Statements</a></h3><p> -To allow possible side-effects, -function calls can be executed as statements: - -<pre> - stat ::= functioncall -</pre><p> -In this case, all returned values are thrown away. -Function calls are explained in <a href="#3.4.9">§3.4.9</a>. - - - - - -<h3>3.3.7 – <a name="3.3.7">Local Declarations</a></h3><p> -Local variables can be declared anywhere inside a block. -The declaration can include an initial assignment: - -<pre> - stat ::= <b>local</b> namelist [‘<b>=</b>’ explist] -</pre><p> -If present, an initial assignment has the same semantics -of a multiple assignment (see <a href="#3.3.3">§3.3.3</a>). -Otherwise, all variables are initialized with <b>nil</b>. - - -<p> -A chunk is also a block (see <a href="#3.3.2">§3.3.2</a>), -and so local variables can be declared in a chunk outside any explicit block. - - -<p> -The visibility rules for local variables are explained in <a href="#3.5">§3.5</a>. - - - - - - - -<h2>3.4 – <a name="3.4">Expressions</a></h2> - -<p> -The basic expressions in Lua are the following: - -<pre> - exp ::= prefixexp - exp ::= <b>nil</b> | <b>false</b> | <b>true</b> - exp ::= Number - exp ::= String - exp ::= functiondef - exp ::= tableconstructor - exp ::= ‘<b>...</b>’ - exp ::= exp binop exp - exp ::= unop exp - prefixexp ::= var | functioncall | ‘<b>(</b>’ exp ‘<b>)</b>’ -</pre> - -<p> -Numbers and literal strings are explained in <a href="#3.1">§3.1</a>; -variables are explained in <a href="#3.2">§3.2</a>; -function definitions are explained in <a href="#3.4.10">§3.4.10</a>; -function calls are explained in <a href="#3.4.9">§3.4.9</a>; -table constructors are explained in <a href="#3.4.8">§3.4.8</a>. -Vararg expressions, -denoted by three dots ('<code>...</code>'), can only be used when -directly inside a vararg function; -they are explained in <a href="#3.4.10">§3.4.10</a>. - - -<p> -Binary operators comprise arithmetic operators (see <a href="#3.4.1">§3.4.1</a>), -relational operators (see <a href="#3.4.3">§3.4.3</a>), logical operators (see <a href="#3.4.4">§3.4.4</a>), -and the concatenation operator (see <a href="#3.4.5">§3.4.5</a>). -Unary operators comprise the unary minus (see <a href="#3.4.1">§3.4.1</a>), -the unary <b>not</b> (see <a href="#3.4.4">§3.4.4</a>), -and the unary <em>length operator</em> (see <a href="#3.4.6">§3.4.6</a>). - - -<p> -Both function calls and vararg expressions can result in multiple values. -If a function call is used as a statement (see <a href="#3.3.6">§3.3.6</a>), -then its return list is adjusted to zero elements, -thus discarding all returned values. -If an expression is used as the last (or the only) element -of a list of expressions, -then no adjustment is made -(unless the expression is enclosed in parentheses). -In all other contexts, -Lua adjusts the result list to one element, -either discarding all values except the first one -or adding a single <b>nil</b> if there are no values. - - -<p> -Here are some examples: - -<pre> - f() -- adjusted to 0 results - g(f(), x) -- f() is adjusted to 1 result - g(x, f()) -- g gets x plus all results from f() - a,b,c = f(), x -- f() is adjusted to 1 result (c gets nil) - a,b = ... -- a gets the first vararg parameter, b gets - -- the second (both a and b can get nil if there - -- is no corresponding vararg parameter) - - a,b,c = x, f() -- f() is adjusted to 2 results - a,b,c = f() -- f() is adjusted to 3 results - return f() -- returns all results from f() - return ... -- returns all received vararg parameters - return x,y,f() -- returns x, y, and all results from f() - {f()} -- creates a list with all results from f() - {...} -- creates a list with all vararg parameters - {f(), nil} -- f() is adjusted to 1 result -</pre> - -<p> -Any expression enclosed in parentheses always results in only one value. -Thus, -<code>(f(x,y,z))</code> is always a single value, -even if <code>f</code> returns several values. -(The value of <code>(f(x,y,z))</code> is the first value returned by <code>f</code> -or <b>nil</b> if <code>f</code> does not return any values.) - - - -<h3>3.4.1 – <a name="3.4.1">Arithmetic Operators</a></h3><p> -Lua supports the usual arithmetic operators: -the binary <code>+</code> (addition), -<code>-</code> (subtraction), <code>*</code> (multiplication), -<code>/</code> (division), <code>%</code> (modulo), and <code>^</code> (exponentiation); -and unary <code>-</code> (mathematical negation). -If the operands are numbers, or strings that can be converted to -numbers (see <a href="#3.4.2">§3.4.2</a>), -then all operations have the usual meaning. -Exponentiation works for any exponent. -For instance, <code>x^(-0.5)</code> computes the inverse of the square root of <code>x</code>. -Modulo is defined as - -<pre> - a % b == a - math.floor(a/b)*b -</pre><p> -That is, it is the remainder of a division that rounds -the quotient towards minus infinity. - - - - - -<h3>3.4.2 – <a name="3.4.2">Coercion</a></h3> - -<p> -Lua provides automatic conversion between -string and number values at run time. -Any arithmetic operation applied to a string tries to convert -this string to a number, following the rules of the Lua lexer. -(The string may have leading and trailing spaces and a sign.) -Conversely, whenever a number is used where a string is expected, -the number is converted to a string, in a reasonable format. -For complete control over how numbers are converted to strings, -use the <code>format</code> function from the string library -(see <a href="#pdf-string.format"><code>string.format</code></a>). - - - - - -<h3>3.4.3 – <a name="3.4.3">Relational Operators</a></h3><p> -The relational operators in Lua are - -<pre> - == ~= < > <= >= -</pre><p> -These operators always result in <b>false</b> or <b>true</b>. - - -<p> -Equality (<code>==</code>) first compares the type of its operands. -If the types are different, then the result is <b>false</b>. -Otherwise, the values of the operands are compared. -Numbers and strings are compared in the usual way. -Tables, userdata, and threads -are compared by reference: -two objects are considered equal only if they are the same object. -Every time you create a new object -(a table, userdata, or thread), -this new object is different from any previously existing object. -Closures with the same reference are always equal. -Closures with any detectable difference -(different behavior, different definition) are always different. - - -<p> -You can change the way that Lua compares tables and userdata -by using the "eq" metamethod (see <a href="#2.4">§2.4</a>). - - -<p> -The conversion rules of <a href="#3.4.2">§3.4.2</a> -do not apply to equality comparisons. -Thus, <code>"0"==0</code> evaluates to <b>false</b>, -and <code>t[0]</code> and <code>t["0"]</code> denote different -entries in a table. - - -<p> -The operator <code>~=</code> is exactly the negation of equality (<code>==</code>). - - -<p> -The order operators work as follows. -If both arguments are numbers, then they are compared as such. -Otherwise, if both arguments are strings, -then their values are compared according to the current locale. -Otherwise, Lua tries to call the "lt" or the "le" -metamethod (see <a href="#2.4">§2.4</a>). -A comparison <code>a > b</code> is translated to <code>b < a</code> -and <code>a >= b</code> is translated to <code>b <= a</code>. - - - - - -<h3>3.4.4 – <a name="3.4.4">Logical Operators</a></h3><p> -The logical operators in Lua are -<b>and</b>, <b>or</b>, and <b>not</b>. -Like the control structures (see <a href="#3.3.4">§3.3.4</a>), -all logical operators consider both <b>false</b> and <b>nil</b> as false -and anything else as true. - - -<p> -The negation operator <b>not</b> always returns <b>false</b> or <b>true</b>. -The conjunction operator <b>and</b> returns its first argument -if this value is <b>false</b> or <b>nil</b>; -otherwise, <b>and</b> returns its second argument. -The disjunction operator <b>or</b> returns its first argument -if this value is different from <b>nil</b> and <b>false</b>; -otherwise, <b>or</b> returns its second argument. -Both <b>and</b> and <b>or</b> use short-cut evaluation; -that is, -the second operand is evaluated only if necessary. -Here are some examples: - -<pre> - 10 or 20 --> 10 - 10 or error() --> 10 - nil or "a" --> "a" - nil and 10 --> nil - false and error() --> false - false and nil --> false - false or nil --> nil - 10 and 20 --> 20 -</pre><p> -(In this manual, -<code>--></code> indicates the result of the preceding expression.) - - - - - -<h3>3.4.5 – <a name="3.4.5">Concatenation</a></h3><p> -The string concatenation operator in Lua is -denoted by two dots ('<code>..</code>'). -If both operands are strings or numbers, then they are converted to -strings according to the rules mentioned in <a href="#3.4.2">§3.4.2</a>. -Otherwise, the <code>__concat</code> metamethod is called (see <a href="#2.4">§2.4</a>). - - - - - -<h3>3.4.6 – <a name="3.4.6">The Length Operator</a></h3> - -<p> -The length operator is denoted by the unary prefix operator <code>#</code>. -The length of a string is its number of bytes -(that is, the usual meaning of string length when each -character is one byte). - - -<p> -A program can modify the behavior of the length operator for -any value but strings through the <code>__len</code> metamethod (see <a href="#2.4">§2.4</a>). - - -<p> -Unless a <code>__len</code> metamethod is given, -the length of a table <code>t</code> is only defined if the -table is a <em>sequence</em>, -that is, -the set of its positive numeric keys is equal to <em>{1..n}</em> -for some non-negative integer <em>n</em>. -In that case, <em>n</em> is its length. -Note that a table like - -<pre> - {10, 20, nil, 40} -</pre><p> -is not a sequence, because it has the key <code>4</code> -but does not have the key <code>3</code>. -(So, there is no <em>n</em> such that the set <em>{1..n}</em> is equal -to the set of positive numeric keys of that table.) -Note, however, that non-numeric keys do not interfere -with whether a table is a sequence. - - - - - -<h3>3.4.7 – <a name="3.4.7">Precedence</a></h3><p> -Operator precedence in Lua follows the table below, -from lower to higher priority: - -<pre> - or - and - < > <= >= ~= == - .. - + - - * / % - not # - (unary) - ^ -</pre><p> -As usual, -you can use parentheses to change the precedences of an expression. -The concatenation ('<code>..</code>') and exponentiation ('<code>^</code>') -operators are right associative. -All other binary operators are left associative. - - - - - -<h3>3.4.8 – <a name="3.4.8">Table Constructors</a></h3><p> -Table constructors are expressions that create tables. -Every time a constructor is evaluated, a new table is created. -A constructor can be used to create an empty table -or to create a table and initialize some of its fields. -The general syntax for constructors is - -<pre> - tableconstructor ::= ‘<b>{</b>’ [fieldlist] ‘<b>}</b>’ - fieldlist ::= field {fieldsep field} [fieldsep] - field ::= ‘<b>[</b>’ exp ‘<b>]</b>’ ‘<b>=</b>’ exp | Name ‘<b>=</b>’ exp | exp - fieldsep ::= ‘<b>,</b>’ | ‘<b>;</b>’ -</pre> - -<p> -Each field of the form <code>[exp1] = exp2</code> adds to the new table an entry -with key <code>exp1</code> and value <code>exp2</code>. -A field of the form <code>name = exp</code> is equivalent to -<code>["name"] = exp</code>. -Finally, fields of the form <code>exp</code> are equivalent to -<code>[i] = exp</code>, where <code>i</code> are consecutive numerical integers, -starting with 1. -Fields in the other formats do not affect this counting. -For example, - -<pre> - a = { [f(1)] = g; "x", "y"; x = 1, f(x), [30] = 23; 45 } -</pre><p> -is equivalent to - -<pre> - do - local t = {} - t[f(1)] = g - t[1] = "x" -- 1st exp - t[2] = "y" -- 2nd exp - t.x = 1 -- t["x"] = 1 - t[3] = f(x) -- 3rd exp - t[30] = 23 - t[4] = 45 -- 4th exp - a = t - end -</pre> - -<p> -If the last field in the list has the form <code>exp</code> -and the expression is a function call or a vararg expression, -then all values returned by this expression enter the list consecutively -(see <a href="#3.4.9">§3.4.9</a>). - - -<p> -The field list can have an optional trailing separator, -as a convenience for machine-generated code. - - - - - -<h3>3.4.9 – <a name="3.4.9">Function Calls</a></h3><p> -A function call in Lua has the following syntax: - -<pre> - functioncall ::= prefixexp args -</pre><p> -In a function call, -first prefixexp and args are evaluated. -If the value of prefixexp has type <em>function</em>, -then this function is called -with the given arguments. -Otherwise, the prefixexp "call" metamethod is called, -having as first parameter the value of prefixexp, -followed by the original call arguments -(see <a href="#2.4">§2.4</a>). - - -<p> -The form - -<pre> - functioncall ::= prefixexp ‘<b>:</b>’ Name args -</pre><p> -can be used to call "methods". -A call <code>v:name(<em>args</em>)</code> -is syntactic sugar for <code>v.name(v,<em>args</em>)</code>, -except that <code>v</code> is evaluated only once. - - -<p> -Arguments have the following syntax: - -<pre> - args ::= ‘<b>(</b>’ [explist] ‘<b>)</b>’ - args ::= tableconstructor - args ::= String -</pre><p> -All argument expressions are evaluated before the call. -A call of the form <code>f{<em>fields</em>}</code> is -syntactic sugar for <code>f({<em>fields</em>})</code>; -that is, the argument list is a single new table. -A call of the form <code>f'<em>string</em>'</code> -(or <code>f"<em>string</em>"</code> or <code>f[[<em>string</em>]]</code>) -is syntactic sugar for <code>f('<em>string</em>')</code>; -that is, the argument list is a single literal string. - - -<p> -A call of the form <code>return <em>functioncall</em></code> is called -a <em>tail call</em>. -Lua implements <em>proper tail calls</em> -(or <em>proper tail recursion</em>): -in a tail call, -the called function reuses the stack entry of the calling function. -Therefore, there is no limit on the number of nested tail calls that -a program can execute. -However, a tail call erases any debug information about the -calling function. -Note that a tail call only happens with a particular syntax, -where the <b>return</b> has one single function call as argument; -this syntax makes the calling function return exactly -the returns of the called function. -So, none of the following examples are tail calls: - -<pre> - return (f(x)) -- results adjusted to 1 - return 2 * f(x) - return x, f(x) -- additional results - f(x); return -- results discarded - return x or f(x) -- results adjusted to 1 -</pre> - - - - -<h3>3.4.10 – <a name="3.4.10">Function Definitions</a></h3> - -<p> -The syntax for function definition is - -<pre> - functiondef ::= <b>function</b> funcbody - funcbody ::= ‘<b>(</b>’ [parlist] ‘<b>)</b>’ block <b>end</b> -</pre> - -<p> -The following syntactic sugar simplifies function definitions: - -<pre> - stat ::= <b>function</b> funcname funcbody - stat ::= <b>local</b> <b>function</b> Name funcbody - funcname ::= Name {‘<b>.</b>’ Name} [‘<b>:</b>’ Name] -</pre><p> -The statement - -<pre> - function f () <em>body</em> end -</pre><p> -translates to - -<pre> - f = function () <em>body</em> end -</pre><p> -The statement - -<pre> - function t.a.b.c.f () <em>body</em> end -</pre><p> -translates to - -<pre> - t.a.b.c.f = function () <em>body</em> end -</pre><p> -The statement - -<pre> - local function f () <em>body</em> end -</pre><p> -translates to - -<pre> - local f; f = function () <em>body</em> end -</pre><p> -not to - -<pre> - local f = function () <em>body</em> end -</pre><p> -(This only makes a difference when the body of the function -contains references to <code>f</code>.) - - -<p> -A function definition is an executable expression, -whose value has type <em>function</em>. -When Lua precompiles a chunk, -all its function bodies are precompiled too. -Then, whenever Lua executes the function definition, -the function is <em>instantiated</em> (or <em>closed</em>). -This function instance (or <em>closure</em>) -is the final value of the expression. - - -<p> -Parameters act as local variables that are -initialized with the argument values: - -<pre> - parlist ::= namelist [‘<b>,</b>’ ‘<b>...</b>’] | ‘<b>...</b>’ -</pre><p> -When a function is called, -the list of arguments is adjusted to -the length of the list of parameters, -unless the function is a <em>vararg function</em>, -which is indicated by three dots ('<code>...</code>') -at the end of its parameter list. -A vararg function does not adjust its argument list; -instead, it collects all extra arguments and supplies them -to the function through a <em>vararg expression</em>, -which is also written as three dots. -The value of this expression is a list of all actual extra arguments, -similar to a function with multiple results. -If a vararg expression is used inside another expression -or in the middle of a list of expressions, -then its return list is adjusted to one element. -If the expression is used as the last element of a list of expressions, -then no adjustment is made -(unless that last expression is enclosed in parentheses). - - -<p> -As an example, consider the following definitions: - -<pre> - function f(a, b) end - function g(a, b, ...) end - function r() return 1,2,3 end -</pre><p> -Then, we have the following mapping from arguments to parameters and -to the vararg expression: - -<pre> - CALL PARAMETERS - - f(3) a=3, b=nil - f(3, 4) a=3, b=4 - f(3, 4, 5) a=3, b=4 - f(r(), 10) a=1, b=10 - f(r()) a=1, b=2 - - g(3) a=3, b=nil, ... --> (nothing) - g(3, 4) a=3, b=4, ... --> (nothing) - g(3, 4, 5, 8) a=3, b=4, ... --> 5 8 - g(5, r()) a=5, b=1, ... --> 2 3 -</pre> - -<p> -Results are returned using the <b>return</b> statement (see <a href="#3.3.4">§3.3.4</a>). -If control reaches the end of a function -without encountering a <b>return</b> statement, -then the function returns with no results. - - -<p> - -There is a system-dependent limit on the number of values -that a function may return. -This limit is guaranteed to be larger than 1000. - - -<p> -The <em>colon</em> syntax -is used for defining <em>methods</em>, -that is, functions that have an implicit extra parameter <code>self</code>. -Thus, the statement - -<pre> - function t.a.b.c:f (<em>params</em>) <em>body</em> end -</pre><p> -is syntactic sugar for - -<pre> - t.a.b.c.f = function (self, <em>params</em>) <em>body</em> end -</pre> - - - - - - -<h2>3.5 – <a name="3.5">Visibility Rules</a></h2> - -<p> - -Lua is a lexically scoped language. -The scope of a local variable begins at the first statement after -its declaration and lasts until the last non-void statement -of the innermost block that includes the declaration. -Consider the following example: - -<pre> - x = 10 -- global variable - do -- new block - local x = x -- new 'x', with value 10 - print(x) --> 10 - x = x+1 - do -- another block - local x = x+1 -- another 'x' - print(x) --> 12 - end - print(x) --> 11 - end - print(x) --> 10 (the global one) -</pre> - -<p> -Notice that, in a declaration like <code>local x = x</code>, -the new <code>x</code> being declared is not in scope yet, -and so the second <code>x</code> refers to the outside variable. - - -<p> -Because of the lexical scoping rules, -local variables can be freely accessed by functions -defined inside their scope. -A local variable used by an inner function is called -an <em>upvalue</em>, or <em>external local variable</em>, -inside the inner function. - - -<p> -Notice that each execution of a <b>local</b> statement -defines new local variables. -Consider the following example: - -<pre> - a = {} - local x = 20 - for i=1,10 do - local y = 0 - a[i] = function () y=y+1; return x+y end - end -</pre><p> -The loop creates ten closures -(that is, ten instances of the anonymous function). -Each of these closures uses a different <code>y</code> variable, -while all of them share the same <code>x</code>. - - - - - -<h1>4 – <a name="4">The Application Program Interface</a></h1> - -<p> - -This section describes the C API for Lua, that is, -the set of C functions available to the host program to communicate -with Lua. -All API functions and related types and constants -are declared in the header file <a name="pdf-lua.h"><code>lua.h</code></a>. - - -<p> -Even when we use the term "function", -any facility in the API may be provided as a macro instead. -Except where stated otherwise, -all such macros use each of their arguments exactly once -(except for the first argument, which is always a Lua state), -and so do not generate any hidden side-effects. - - -<p> -As in most C libraries, -the Lua API functions do not check their arguments for validity or consistency. -However, you can change this behavior by compiling Lua -with the macro <a name="pdf-LUA_USE_APICHECK"><code>LUA_USE_APICHECK</code></a> defined. - - - -<h2>4.1 – <a name="4.1">The Stack</a></h2> - -<p> -Lua uses a <em>virtual stack</em> to pass values to and from C. -Each element in this stack represents a Lua value -(<b>nil</b>, number, string, etc.). - - -<p> -Whenever Lua calls C, the called function gets a new stack, -which is independent of previous stacks and of stacks of -C functions that are still active. -This stack initially contains any arguments to the C function -and it is where the C function pushes its results -to be returned to the caller (see <a href="#lua_CFunction"><code>lua_CFunction</code></a>). - - -<p> -For convenience, -most query operations in the API do not follow a strict stack discipline. -Instead, they can refer to any element in the stack -by using an <em>index</em>: -A positive index represents an absolute stack position -(starting at 1); -a negative index represents an offset relative to the top of the stack. -More specifically, if the stack has <em>n</em> elements, -then index 1 represents the first element -(that is, the element that was pushed onto the stack first) -and -index <em>n</em> represents the last element; -index -1 also represents the last element -(that is, the element at the top) -and index <em>-n</em> represents the first element. - - - - - -<h2>4.2 – <a name="4.2">Stack Size</a></h2> - -<p> -When you interact with the Lua API, -you are responsible for ensuring consistency. -In particular, -<em>you are responsible for controlling stack overflow</em>. -You can use the function <a href="#lua_checkstack"><code>lua_checkstack</code></a> -to ensure that the stack has extra slots when pushing new elements. - - -<p> -Whenever Lua calls C, -it ensures that the stack has at least <a name="pdf-LUA_MINSTACK"><code>LUA_MINSTACK</code></a> extra slots. -<code>LUA_MINSTACK</code> is defined as 20, -so that usually you do not have to worry about stack space -unless your code has loops pushing elements onto the stack. - - -<p> -When you call a Lua function -without a fixed number of results (see <a href="#lua_call"><code>lua_call</code></a>), -Lua ensures that the stack has enough size for all results, -but it does not ensure any extra space. -So, before pushing anything in the stack after such a call -you should use <a href="#lua_checkstack"><code>lua_checkstack</code></a>. - - - - - -<h2>4.3 – <a name="4.3">Valid and Acceptable Indices</a></h2> - -<p> -Any function in the API that receives stack indices -works only with <em>valid indices</em> or <em>acceptable indices</em>. - - -<p> -A <em>valid index</em> is an index that refers to a -real position within the stack, that is, -its position lies between 1 and the stack top -(<code>1 ≤ abs(index) ≤ top</code>). - -Usually, functions that can modify the value at an index -require valid indices. - - -<p> -Unless otherwise noted, -any function that accepts valid indices also accepts <em>pseudo-indices</em>, -which represent some Lua values that are accessible to C code -but which are not in the stack. -Pseudo-indices are used to access the registry -and the upvalues of a C function (see <a href="#4.4">§4.4</a>). - - -<p> -Functions that do not need a specific stack position, -but only a value in the stack (e.g., query functions), -can be called with acceptable indices. -An <em>acceptable index</em> can be any valid index, -including the pseudo-indices, -but it also can be any positive index after the stack top -within the space allocated for the stack, -that is, indices up to the stack size. -(Note that 0 is never an acceptable index.) -Except when noted otherwise, -functions in the API work with acceptable indices. - - -<p> -Acceptable indices serve to avoid extra tests -against the stack top when querying the stack. -For instance, a C function can query its third argument -without the need to first check whether there is a third argument, -that is, without the need to check whether 3 is a valid index. - - -<p> -For functions that can be called with acceptable indices, -any non-valid index is treated as if it -contains a value of a virtual type <a name="pdf-LUA_TNONE"><code>LUA_TNONE</code></a>, -which behaves like a nil value. - - - - - -<h2>4.4 – <a name="4.4">C Closures</a></h2> - -<p> -When a C function is created, -it is possible to associate some values with it, -thus creating a <em>C closure</em> -(see <a href="#lua_pushcclosure"><code>lua_pushcclosure</code></a>); -these values are called <em>upvalues</em> and are -accessible to the function whenever it is called. - - -<p> -Whenever a C function is called, -its upvalues are located at specific pseudo-indices. -These pseudo-indices are produced by the macro -<a href="#lua_upvalueindex"><code>lua_upvalueindex</code></a>. -The first value associated with a function is at position -<code>lua_upvalueindex(1)</code>, and so on. -Any access to <code>lua_upvalueindex(<em>n</em>)</code>, -where <em>n</em> is greater than the number of upvalues of the -current function (but not greater than 256), -produces an acceptable but invalid index. - - - - - -<h2>4.5 – <a name="4.5">Registry</a></h2> - -<p> -Lua provides a <em>registry</em>, -a predefined table that can be used by any C code to -store whatever Lua values it needs to store. -The registry table is always located at pseudo-index -<a name="pdf-LUA_REGISTRYINDEX"><code>LUA_REGISTRYINDEX</code></a>, -which is a valid index. -Any C library can store data into this table, -but it should take care to choose keys -that are different from those used -by other libraries, to avoid collisions. -Typically, you should use as key a string containing your library name, -or a light userdata with the address of a C object in your code, -or any Lua object created by your code. -As with global names, -string keys starting with an underscore followed by -uppercase letters are reserved for Lua. - - -<p> -The integer keys in the registry are used by the reference mechanism, -implemented by the auxiliary library, -and by some predefined values. -Therefore, integer keys should not be used for other purposes. - - -<p> -When you create a new Lua state, -its registry comes with some predefined values. -These predefined values are indexed with integer keys -defined as constants in <code>lua.h</code>. -The following constants are defined: - -<ul> -<li><b><a name="pdf-LUA_RIDX_MAINTHREAD"><code>LUA_RIDX_MAINTHREAD</code></a>: </b> At this index the registry has -the main thread of the state. -(The main thread is the one created together with the state.) -</li> - -<li><b><a name="pdf-LUA_RIDX_GLOBALS"><code>LUA_RIDX_GLOBALS</code></a>: </b> At this index the registry has -the global environment. -</li> -</ul> - - - - -<h2>4.6 – <a name="4.6">Error Handling in C</a></h2> - -<p> -Internally, Lua uses the C <code>longjmp</code> facility to handle errors. -(You can also choose to use exceptions if you compile Lua as C++; -search for <code>LUAI_THROW</code> in the source code.) -When Lua faces any error -(such as a memory allocation error, type errors, syntax errors, -and runtime errors) -it <em>raises</em> an error; -that is, it does a long jump. -A <em>protected environment</em> uses <code>setjmp</code> -to set a recovery point; -any error jumps to the most recent active recovery point. - - -<p> -If an error happens outside any protected environment, -Lua calls a <em>panic function</em> (see <a href="#lua_atpanic"><code>lua_atpanic</code></a>) -and then calls <code>abort</code>, -thus exiting the host application. -Your panic function can avoid this exit by -never returning -(e.g., doing a long jump to your own recovery point outside Lua). - - -<p> -The panic function runs as if it were a message handler (see <a href="#2.3">§2.3</a>); -in particular, the error message is at the top of the stack. -However, there is no guarantees about stack space. -To push anything on the stack, -the panic function should first check the available space (see <a href="#4.2">§4.2</a>). - - -<p> -Most functions in the API can throw an error, -for instance due to a memory allocation error. -The documentation for each function indicates whether -it can throw errors. - - -<p> -Inside a C function you can throw an error by calling <a href="#lua_error"><code>lua_error</code></a>. - - - - - -<h2>4.7 – <a name="4.7">Handling Yields in C</a></h2> - -<p> -Internally, Lua uses the C <code>longjmp</code> facility to yield a coroutine. -Therefore, if a function <code>foo</code> calls an API function -and this API function yields -(directly or indirectly by calling another function that yields), -Lua cannot return to <code>foo</code> any more, -because the <code>longjmp</code> removes its frame from the C stack. - - -<p> -To avoid this kind of problem, -Lua raises an error whenever it tries to yield across an API call, -except for three functions: -<a href="#lua_yieldk"><code>lua_yieldk</code></a>, <a href="#lua_callk"><code>lua_callk</code></a>, and <a href="#lua_pcallk"><code>lua_pcallk</code></a>. -All those functions receive a <em>continuation function</em> -(as a parameter called <code>k</code>) to continue execution after a yield. - - -<p> -We need to set some terminology to explain continuations. -We have a C function called from Lua which we will call -the <em>original function</em>. -This original function then calls one of those three functions in the C API, -which we will call the <em>callee function</em>, -that then yields the current thread. -(This can happen when the callee function is <a href="#lua_yieldk"><code>lua_yieldk</code></a>, -or when the callee function is either <a href="#lua_callk"><code>lua_callk</code></a> or <a href="#lua_pcallk"><code>lua_pcallk</code></a> -and the function called by them yields.) - - -<p> -Suppose the running thread yields while executing the callee function. -After the thread resumes, -it eventually will finish running the callee function. -However, -the callee function cannot return to the original function, -because its frame in the C stack was destroyed by the yield. -Instead, Lua calls a <em>continuation function</em>, -which was given as an argument to the callee function. -As the name implies, -the continuation function should continue the task -of the original function. - - -<p> -Lua treats the continuation function as if it were the original function. -The continuation function receives the same Lua stack -from the original function, -in the same state it would be if the callee function had returned. -(For instance, -after a <a href="#lua_callk"><code>lua_callk</code></a> the function and its arguments are -removed from the stack and replaced by the results from the call.) -It also has the same upvalues. -Whatever it returns is handled by Lua as if it were the return -of the original function. - - -<p> -The only difference in the Lua state between the original function -and its continuation is the result of a call to <a href="#lua_getctx"><code>lua_getctx</code></a>. - - - - - -<h2>4.8 – <a name="4.8">Functions and Types</a></h2> - -<p> -Here we list all functions and types from the C API in -alphabetical order. -Each function has an indicator like this: -<span class="apii">[-o, +p, <em>x</em>]</span> - - -<p> -The first field, <code>o</code>, -is how many elements the function pops from the stack. -The second field, <code>p</code>, -is how many elements the function pushes onto the stack. -(Any function always pushes its results after popping its arguments.) -A field in the form <code>x|y</code> means the function can push (or pop) -<code>x</code> or <code>y</code> elements, -depending on the situation; -an interrogation mark '<code>?</code>' means that -we cannot know how many elements the function pops/pushes -by looking only at its arguments -(e.g., they may depend on what is on the stack). -The third field, <code>x</code>, -tells whether the function may throw errors: -'<code>-</code>' means the function never throws any error; -'<code>e</code>' means the function may throw errors; -'<code>v</code>' means the function may throw an error on purpose. - - - -<hr><h3><a name="lua_absindex"><code>lua_absindex</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_absindex (lua_State *L, int idx);</pre> - -<p> -Converts the acceptable index <code>idx</code> into an absolute index -(that is, one that does not depend on the stack top). - - - - - -<hr><h3><a name="lua_Alloc"><code>lua_Alloc</code></a></h3> -<pre>typedef void * (*lua_Alloc) (void *ud, - void *ptr, - size_t osize, - size_t nsize);</pre> - -<p> -The type of the memory-allocation function used by Lua states. -The allocator function must provide a -functionality similar to <code>realloc</code>, -but not exactly the same. -Its arguments are -<code>ud</code>, an opaque pointer passed to <a href="#lua_newstate"><code>lua_newstate</code></a>; -<code>ptr</code>, a pointer to the block being allocated/reallocated/freed; -<code>osize</code>, the original size of the block or some code about what -is being allocated; -<code>nsize</code>, the new size of the block. - - -<p> -When <code>ptr</code> is not <code>NULL</code>, -<code>osize</code> is the size of the block pointed by <code>ptr</code>, -that is, the size given when it was allocated or reallocated. - - -<p> -When <code>ptr</code> is <code>NULL</code>, -<code>osize</code> encodes the kind of object that Lua is allocating. -<code>osize</code> is any of -<a href="#pdf-LUA_TSTRING"><code>LUA_TSTRING</code></a>, <a href="#pdf-LUA_TTABLE"><code>LUA_TTABLE</code></a>, <a href="#pdf-LUA_TFUNCTION"><code>LUA_TFUNCTION</code></a>, -<a href="#pdf-LUA_TUSERDATA"><code>LUA_TUSERDATA</code></a>, or <a href="#pdf-LUA_TTHREAD"><code>LUA_TTHREAD</code></a> when (and only when) -Lua is creating a new object of that type. -When <code>osize</code> is some other value, -Lua is allocating memory for something else. - - -<p> -Lua assumes the following behavior from the allocator function: - - -<p> -When <code>nsize</code> is zero, -the allocator should behave like <code>free</code> -and return <code>NULL</code>. - - -<p> -When <code>nsize</code> is not zero, -the allocator should behave like <code>realloc</code>. -The allocator returns <code>NULL</code> -if and only if it cannot fulfill the request. -Lua assumes that the allocator never fails when -<code>osize >= nsize</code>. - - -<p> -Here is a simple implementation for the allocator function. -It is used in the auxiliary library by <a href="#luaL_newstate"><code>luaL_newstate</code></a>. - -<pre> - static void *l_alloc (void *ud, void *ptr, size_t osize, - size_t nsize) { - (void)ud; (void)osize; /* not used */ - if (nsize == 0) { - free(ptr); - return NULL; - } - else - return realloc(ptr, nsize); - } -</pre><p> -Note that Standard C ensures -that <code>free(NULL)</code> has no effect and that -<code>realloc(NULL, size)</code> is equivalent to <code>malloc(size)</code>. -This code assumes that <code>realloc</code> does not fail when shrinking a block. -(Although Standard C does not ensure this behavior, -it seems to be a safe assumption.) - - - - - -<hr><h3><a name="lua_arith"><code>lua_arith</code></a></h3><p> -<span class="apii">[-(2|1), +1, <em>e</em>]</span> -<pre>void lua_arith (lua_State *L, int op);</pre> - -<p> -Performs an arithmetic operation over the two values -(or one, in the case of negation) -at the top of the stack, -with the value at the top being the second operand, -pops these values, and pushes the result of the operation. -The function follows the semantics of the corresponding Lua operator -(that is, it may call metamethods). - - -<p> -The value of <code>op</code> must be one of the following constants: - -<ul> - -<li><b><a name="pdf-LUA_OPADD"><code>LUA_OPADD</code></a>: </b> performs addition (<code>+</code>)</li> -<li><b><a name="pdf-LUA_OPSUB"><code>LUA_OPSUB</code></a>: </b> performs subtraction (<code>-</code>)</li> -<li><b><a name="pdf-LUA_OPMUL"><code>LUA_OPMUL</code></a>: </b> performs multiplication (<code>*</code>)</li> -<li><b><a name="pdf-LUA_OPDIV"><code>LUA_OPDIV</code></a>: </b> performs division (<code>/</code>)</li> -<li><b><a name="pdf-LUA_OPMOD"><code>LUA_OPMOD</code></a>: </b> performs modulo (<code>%</code>)</li> -<li><b><a name="pdf-LUA_OPPOW"><code>LUA_OPPOW</code></a>: </b> performs exponentiation (<code>^</code>)</li> -<li><b><a name="pdf-LUA_OPUNM"><code>LUA_OPUNM</code></a>: </b> performs mathematical negation (unary <code>-</code>)</li> - -</ul> - - - - -<hr><h3><a name="lua_atpanic"><code>lua_atpanic</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_CFunction lua_atpanic (lua_State *L, lua_CFunction panicf);</pre> - -<p> -Sets a new panic function and returns the old one (see <a href="#4.6">§4.6</a>). - - - - - -<hr><h3><a name="lua_call"><code>lua_call</code></a></h3><p> -<span class="apii">[-(nargs+1), +nresults, <em>e</em>]</span> -<pre>void lua_call (lua_State *L, int nargs, int nresults);</pre> - -<p> -Calls a function. - - -<p> -To call a function you must use the following protocol: -first, the function to be called is pushed onto the stack; -then, the arguments to the function are pushed -in direct order; -that is, the first argument is pushed first. -Finally you call <a href="#lua_call"><code>lua_call</code></a>; -<code>nargs</code> is the number of arguments that you pushed onto the stack. -All arguments and the function value are popped from the stack -when the function is called. -The function results are pushed onto the stack when the function returns. -The number of results is adjusted to <code>nresults</code>, -unless <code>nresults</code> is <a name="pdf-LUA_MULTRET"><code>LUA_MULTRET</code></a>. -In this case, all results from the function are pushed. -Lua takes care that the returned values fit into the stack space. -The function results are pushed onto the stack in direct order -(the first result is pushed first), -so that after the call the last result is on the top of the stack. - - -<p> -Any error inside the called function is propagated upwards -(with a <code>longjmp</code>). - - -<p> -The following example shows how the host program can do the -equivalent to this Lua code: - -<pre> - a = f("how", t.x, 14) -</pre><p> -Here it is in C: - -<pre> - lua_getglobal(L, "f"); /* function to be called */ - lua_pushstring(L, "how"); /* 1st argument */ - lua_getglobal(L, "t"); /* table to be indexed */ - lua_getfield(L, -1, "x"); /* push result of t.x (2nd arg) */ - lua_remove(L, -2); /* remove 't' from the stack */ - lua_pushinteger(L, 14); /* 3rd argument */ - lua_call(L, 3, 1); /* call 'f' with 3 arguments and 1 result */ - lua_setglobal(L, "a"); /* set global 'a' */ -</pre><p> -Note that the code above is "balanced": -at its end, the stack is back to its original configuration. -This is considered good programming practice. - - - - - -<hr><h3><a name="lua_callk"><code>lua_callk</code></a></h3><p> -<span class="apii">[-(nargs + 1), +nresults, <em>e</em>]</span> -<pre>void lua_callk (lua_State *L, int nargs, int nresults, int ctx, - lua_CFunction k);</pre> - -<p> -This function behaves exactly like <a href="#lua_call"><code>lua_call</code></a>, -but allows the called function to yield (see <a href="#4.7">§4.7</a>). - - - - - -<hr><h3><a name="lua_CFunction"><code>lua_CFunction</code></a></h3> -<pre>typedef int (*lua_CFunction) (lua_State *L);</pre> - -<p> -Type for C functions. - - -<p> -In order to communicate properly with Lua, -a C function must use the following protocol, -which defines the way parameters and results are passed: -a C function receives its arguments from Lua in its stack -in direct order (the first argument is pushed first). -So, when the function starts, -<code>lua_gettop(L)</code> returns the number of arguments received by the function. -The first argument (if any) is at index 1 -and its last argument is at index <code>lua_gettop(L)</code>. -To return values to Lua, a C function just pushes them onto the stack, -in direct order (the first result is pushed first), -and returns the number of results. -Any other value in the stack below the results will be properly -discarded by Lua. -Like a Lua function, a C function called by Lua can also return -many results. - - -<p> -As an example, the following function receives a variable number -of numerical arguments and returns their average and sum: - -<pre> - static int foo (lua_State *L) { - int n = lua_gettop(L); /* number of arguments */ - lua_Number sum = 0; - int i; - for (i = 1; i <= n; i++) { - if (!lua_isnumber(L, i)) { - lua_pushstring(L, "incorrect argument"); - lua_error(L); - } - sum += lua_tonumber(L, i); - } - lua_pushnumber(L, sum/n); /* first result */ - lua_pushnumber(L, sum); /* second result */ - return 2; /* number of results */ - } -</pre> - - - - -<hr><h3><a name="lua_checkstack"><code>lua_checkstack</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_checkstack (lua_State *L, int extra);</pre> - -<p> -Ensures that there are at least <code>extra</code> free stack slots in the stack. -It returns false if it cannot fulfill the request, -because it would cause the stack to be larger than a fixed maximum size -(typically at least a few thousand elements) or -because it cannot allocate memory for the new stack size. -This function never shrinks the stack; -if the stack is already larger than the new size, -it is left unchanged. - - - - - -<hr><h3><a name="lua_close"><code>lua_close</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void lua_close (lua_State *L);</pre> - -<p> -Destroys all objects in the given Lua state -(calling the corresponding garbage-collection metamethods, if any) -and frees all dynamic memory used by this state. -On several platforms, you may not need to call this function, -because all resources are naturally released when the host program ends. -On the other hand, long-running programs that create multiple states, -such as daemons or web servers, -might need to close states as soon as they are not needed. - - - - - -<hr><h3><a name="lua_compare"><code>lua_compare</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>int lua_compare (lua_State *L, int index1, int index2, int op);</pre> - -<p> -Compares two Lua values. -Returns 1 if the value at index <code>index1</code> satisfies <code>op</code> -when compared with the value at index <code>index2</code>, -following the semantics of the corresponding Lua operator -(that is, it may call metamethods). -Otherwise returns 0. -Also returns 0 if any of the indices is non valid. - - -<p> -The value of <code>op</code> must be one of the following constants: - -<ul> - -<li><b><a name="pdf-LUA_OPEQ"><code>LUA_OPEQ</code></a>: </b> compares for equality (<code>==</code>)</li> -<li><b><a name="pdf-LUA_OPLT"><code>LUA_OPLT</code></a>: </b> compares for less than (<code><</code>)</li> -<li><b><a name="pdf-LUA_OPLE"><code>LUA_OPLE</code></a>: </b> compares for less or equal (<code><=</code>)</li> - -</ul> - - - - -<hr><h3><a name="lua_concat"><code>lua_concat</code></a></h3><p> -<span class="apii">[-n, +1, <em>e</em>]</span> -<pre>void lua_concat (lua_State *L, int n);</pre> - -<p> -Concatenates the <code>n</code> values at the top of the stack, -pops them, and leaves the result at the top. -If <code>n</code> is 1, the result is the single value on the stack -(that is, the function does nothing); -if <code>n</code> is 0, the result is the empty string. -Concatenation is performed following the usual semantics of Lua -(see <a href="#3.4.5">§3.4.5</a>). - - - - - -<hr><h3><a name="lua_copy"><code>lua_copy</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void lua_copy (lua_State *L, int fromidx, int toidx);</pre> - -<p> -Moves the element at index <code>fromidx</code> -into the valid index <code>toidx</code> -without shifting any element -(therefore replacing the value at that position). - - - - - -<hr><h3><a name="lua_createtable"><code>lua_createtable</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void lua_createtable (lua_State *L, int narr, int nrec);</pre> - -<p> -Creates a new empty table and pushes it onto the stack. -Parameter <code>narr</code> is a hint for how many elements the table -will have as a sequence; -parameter <code>nrec</code> is a hint for how many other elements -the table will have. -Lua may use these hints to preallocate memory for the new table. -This pre-allocation is useful for performance when you know in advance -how many elements the table will have. -Otherwise you can use the function <a href="#lua_newtable"><code>lua_newtable</code></a>. - - - - - -<hr><h3><a name="lua_dump"><code>lua_dump</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>int lua_dump (lua_State *L, lua_Writer writer, void *data);</pre> - -<p> -Dumps a function as a binary chunk. -Receives a Lua function on the top of the stack -and produces a binary chunk that, -if loaded again, -results in a function equivalent to the one dumped. -As it produces parts of the chunk, -<a href="#lua_dump"><code>lua_dump</code></a> calls function <code>writer</code> (see <a href="#lua_Writer"><code>lua_Writer</code></a>) -with the given <code>data</code> -to write them. - - -<p> -The value returned is the error code returned by the last -call to the writer; -0 means no errors. - - -<p> -This function does not pop the Lua function from the stack. - - - - - -<hr><h3><a name="lua_error"><code>lua_error</code></a></h3><p> -<span class="apii">[-1, +0, <em>v</em>]</span> -<pre>int lua_error (lua_State *L);</pre> - -<p> -Generates a Lua error. -The error message (which can actually be a Lua value of any type) -must be on the stack top. -This function does a long jump, -and therefore never returns -(see <a href="#luaL_error"><code>luaL_error</code></a>). - - - - - -<hr><h3><a name="lua_gc"><code>lua_gc</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>int lua_gc (lua_State *L, int what, int data);</pre> - -<p> -Controls the garbage collector. - - -<p> -This function performs several tasks, -according to the value of the parameter <code>what</code>: - -<ul> - -<li><b><code>LUA_GCSTOP</code>: </b> -stops the garbage collector. -</li> - -<li><b><code>LUA_GCRESTART</code>: </b> -restarts the garbage collector. -</li> - -<li><b><code>LUA_GCCOLLECT</code>: </b> -performs a full garbage-collection cycle. -</li> - -<li><b><code>LUA_GCCOUNT</code>: </b> -returns the current amount of memory (in Kbytes) in use by Lua. -</li> - -<li><b><code>LUA_GCCOUNTB</code>: </b> -returns the remainder of dividing the current amount of bytes of -memory in use by Lua by 1024. -</li> - -<li><b><code>LUA_GCSTEP</code>: </b> -performs an incremental step of garbage collection. -The step "size" is controlled by <code>data</code> -(larger values mean more steps) in a non-specified way. -If you want to control the step size -you must experimentally tune the value of <code>data</code>. -The function returns 1 if the step finished a -garbage-collection cycle. -</li> - -<li><b><code>LUA_GCSETPAUSE</code>: </b> -sets <code>data</code> as the new value -for the <em>pause</em> of the collector (see <a href="#2.5">§2.5</a>). -The function returns the previous value of the pause. -</li> - -<li><b><code>LUA_GCSETSTEPMUL</code>: </b> -sets <code>data</code> as the new value for the <em>step multiplier</em> of -the collector (see <a href="#2.5">§2.5</a>). -The function returns the previous value of the step multiplier. -</li> - -<li><b><code>LUA_GCISRUNNING</code>: </b> -returns a boolean that tells whether the collector is running -(i.e., not stopped). -</li> - -<li><b><code>LUA_GCGEN</code>: </b> -changes the collector to generational mode -(see <a href="#2.5">§2.5</a>). -</li> - -<li><b><code>LUA_GCINC</code>: </b> -changes the collector to incremental mode. -This is the default mode. -</li> - -</ul> - -<p> -For more details about these options, -see <a href="#pdf-collectgarbage"><code>collectgarbage</code></a>. - - - - - -<hr><h3><a name="lua_getallocf"><code>lua_getallocf</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_Alloc lua_getallocf (lua_State *L, void **ud);</pre> - -<p> -Returns the memory-allocation function of a given state. -If <code>ud</code> is not <code>NULL</code>, Lua stores in <code>*ud</code> the -opaque pointer passed to <a href="#lua_newstate"><code>lua_newstate</code></a>. - - - - - -<hr><h3><a name="lua_getctx"><code>lua_getctx</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_getctx (lua_State *L, int *ctx);</pre> - -<p> -This function is called by a continuation function (see <a href="#4.7">§4.7</a>) -to retrieve the status of the thread and a context information. - - -<p> -When called in the original function, -<a href="#lua_getctx"><code>lua_getctx</code></a> always returns <a href="#pdf-LUA_OK"><code>LUA_OK</code></a> -and does not change the value of its argument <code>ctx</code>. -When called inside a continuation function, -<a href="#lua_getctx"><code>lua_getctx</code></a> returns <a href="#pdf-LUA_YIELD"><code>LUA_YIELD</code></a> and sets -the value of <code>ctx</code> to be the context information -(the value passed as the <code>ctx</code> argument -to the callee together with the continuation function). - - -<p> -When the callee is <a href="#lua_pcallk"><code>lua_pcallk</code></a>, -Lua may also call its continuation function -to handle errors during the call. -That is, upon an error in the function called by <a href="#lua_pcallk"><code>lua_pcallk</code></a>, -Lua may not return to the original function -but instead may call the continuation function. -In that case, a call to <a href="#lua_getctx"><code>lua_getctx</code></a> will return the error code -(the value that would be returned by <a href="#lua_pcallk"><code>lua_pcallk</code></a>); -the value of <code>ctx</code> will be set to the context information, -as in the case of a yield. - - - - - -<hr><h3><a name="lua_getfield"><code>lua_getfield</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void lua_getfield (lua_State *L, int index, const char *k);</pre> - -<p> -Pushes onto the stack the value <code>t[k]</code>, -where <code>t</code> is the value at the given index. -As in Lua, this function may trigger a metamethod -for the "index" event (see <a href="#2.4">§2.4</a>). - - - - - -<hr><h3><a name="lua_getglobal"><code>lua_getglobal</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void lua_getglobal (lua_State *L, const char *name);</pre> - -<p> -Pushes onto the stack the value of the global <code>name</code>. - - - - - -<hr><h3><a name="lua_getmetatable"><code>lua_getmetatable</code></a></h3><p> -<span class="apii">[-0, +(0|1), –]</span> -<pre>int lua_getmetatable (lua_State *L, int index);</pre> - -<p> -Pushes onto the stack the metatable of the value at the given index. -If the value does not have a metatable, -the function returns 0 and pushes nothing on the stack. - - - - - -<hr><h3><a name="lua_gettable"><code>lua_gettable</code></a></h3><p> -<span class="apii">[-1, +1, <em>e</em>]</span> -<pre>void lua_gettable (lua_State *L, int index);</pre> - -<p> -Pushes onto the stack the value <code>t[k]</code>, -where <code>t</code> is the value at the given index -and <code>k</code> is the value at the top of the stack. - - -<p> -This function pops the key from the stack -(putting the resulting value in its place). -As in Lua, this function may trigger a metamethod -for the "index" event (see <a href="#2.4">§2.4</a>). - - - - - -<hr><h3><a name="lua_gettop"><code>lua_gettop</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_gettop (lua_State *L);</pre> - -<p> -Returns the index of the top element in the stack. -Because indices start at 1, -this result is equal to the number of elements in the stack -(and so 0 means an empty stack). - - - - - -<hr><h3><a name="lua_getuservalue"><code>lua_getuservalue</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_getuservalue (lua_State *L, int index);</pre> - -<p> -Pushes onto the stack the Lua value associated with the userdata -at the given index. -This Lua value must be a table or <b>nil</b>. - - - - - -<hr><h3><a name="lua_insert"><code>lua_insert</code></a></h3><p> -<span class="apii">[-1, +1, –]</span> -<pre>void lua_insert (lua_State *L, int index);</pre> - -<p> -Moves the top element into the given valid index, -shifting up the elements above this index to open space. -This function cannot be called with a pseudo-index, -because a pseudo-index is not an actual stack position. - - - - - -<hr><h3><a name="lua_Integer"><code>lua_Integer</code></a></h3> -<pre>typedef ptrdiff_t lua_Integer;</pre> - -<p> -The type used by the Lua API to represent signed integral values. - - -<p> -By default it is a <code>ptrdiff_t</code>, -which is usually the largest signed integral type the machine handles -"comfortably". - - - - - -<hr><h3><a name="lua_isboolean"><code>lua_isboolean</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isboolean (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a boolean, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_iscfunction"><code>lua_iscfunction</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_iscfunction (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a C function, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_isfunction"><code>lua_isfunction</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isfunction (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a function -(either C or Lua), and 0 otherwise. - - - - - -<hr><h3><a name="lua_islightuserdata"><code>lua_islightuserdata</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_islightuserdata (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a light userdata, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_isnil"><code>lua_isnil</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isnil (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is <b>nil</b>, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_isnone"><code>lua_isnone</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isnone (lua_State *L, int index);</pre> - -<p> -Returns 1 if the given index is not valid, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_isnoneornil"><code>lua_isnoneornil</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isnoneornil (lua_State *L, int index);</pre> - -<p> -Returns 1 if the given index is not valid -or if the value at this index is <b>nil</b>, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_isnumber"><code>lua_isnumber</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isnumber (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a number -or a string convertible to a number, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_isstring"><code>lua_isstring</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isstring (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a string -or a number (which is always convertible to a string), -and 0 otherwise. - - - - - -<hr><h3><a name="lua_istable"><code>lua_istable</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_istable (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a table, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_isthread"><code>lua_isthread</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isthread (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a thread, -and 0 otherwise. - - - - - -<hr><h3><a name="lua_isuserdata"><code>lua_isuserdata</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_isuserdata (lua_State *L, int index);</pre> - -<p> -Returns 1 if the value at the given index is a userdata -(either full or light), and 0 otherwise. - - - - - -<hr><h3><a name="lua_len"><code>lua_len</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void lua_len (lua_State *L, int index);</pre> - -<p> -Returns the "length" of the value at the given index; -it is equivalent to the '<code>#</code>' operator in Lua (see <a href="#3.4.6">§3.4.6</a>). -The result is pushed on the stack. - - - - - -<hr><h3><a name="lua_load"><code>lua_load</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>int lua_load (lua_State *L, - lua_Reader reader, - void *data, - const char *source, - const char *mode);</pre> - -<p> -Loads a Lua chunk (without running it). -If there are no errors, -<code>lua_load</code> pushes the compiled chunk as a Lua -function on top of the stack. -Otherwise, it pushes an error message. - - -<p> -The return values of <code>lua_load</code> are: - -<ul> - -<li><b><a href="#pdf-LUA_OK"><code>LUA_OK</code></a>: </b> no errors;</li> - -<li><b><a name="pdf-LUA_ERRSYNTAX"><code>LUA_ERRSYNTAX</code></a>: </b> -syntax error during precompilation;</li> - -<li><b><a href="#pdf-LUA_ERRMEM"><code>LUA_ERRMEM</code></a>: </b> -memory allocation error;</li> - -<li><b><a href="#pdf-LUA_ERRGCMM"><code>LUA_ERRGCMM</code></a>: </b> -error while running a <code>__gc</code> metamethod. -(This error has no relation with the chunk being loaded. -It is generated by the garbage collector.) -</li> - -</ul> - -<p> -The <code>lua_load</code> function uses a user-supplied <code>reader</code> function -to read the chunk (see <a href="#lua_Reader"><code>lua_Reader</code></a>). -The <code>data</code> argument is an opaque value passed to the reader function. - - -<p> -The <code>source</code> argument gives a name to the chunk, -which is used for error messages and in debug information (see <a href="#4.9">§4.9</a>). - - -<p> -<code>lua_load</code> automatically detects whether the chunk is text or binary -and loads it accordingly (see program <code>luac</code>). -The string <code>mode</code> works as in function <a href="#pdf-load"><code>load</code></a>, -with the addition that -a <code>NULL</code> value is equivalent to the string "<code>bt</code>". - - -<p> -<code>lua_load</code> uses the stack internally, -so the reader function should always leave the stack -unmodified when returning. - - -<p> -If the resulting function has one upvalue, -this upvalue is set to the value of the global environment -stored at index <code>LUA_RIDX_GLOBALS</code> in the registry (see <a href="#4.5">§4.5</a>). -When loading main chunks, -this upvalue will be the <code>_ENV</code> variable (see <a href="#2.2">§2.2</a>). - - - - - -<hr><h3><a name="lua_newstate"><code>lua_newstate</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_State *lua_newstate (lua_Alloc f, void *ud);</pre> - -<p> -Creates a new thread running in a new, independent state. -Returns <code>NULL</code> if cannot create the thread or the state -(due to lack of memory). -The argument <code>f</code> is the allocator function; -Lua does all memory allocation for this state through this function. -The second argument, <code>ud</code>, is an opaque pointer that Lua -passes to the allocator in every call. - - - - - -<hr><h3><a name="lua_newtable"><code>lua_newtable</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void lua_newtable (lua_State *L);</pre> - -<p> -Creates a new empty table and pushes it onto the stack. -It is equivalent to <code>lua_createtable(L, 0, 0)</code>. - - - - - -<hr><h3><a name="lua_newthread"><code>lua_newthread</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>lua_State *lua_newthread (lua_State *L);</pre> - -<p> -Creates a new thread, pushes it on the stack, -and returns a pointer to a <a href="#lua_State"><code>lua_State</code></a> that represents this new thread. -The new thread returned by this function shares with the original thread -its global environment, -but has an independent execution stack. - - -<p> -There is no explicit function to close or to destroy a thread. -Threads are subject to garbage collection, -like any Lua object. - - - - - -<hr><h3><a name="lua_newuserdata"><code>lua_newuserdata</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void *lua_newuserdata (lua_State *L, size_t size);</pre> - -<p> -This function allocates a new block of memory with the given size, -pushes onto the stack a new full userdata with the block address, -and returns this address. -The host program can freely use this memory. - - - - - -<hr><h3><a name="lua_next"><code>lua_next</code></a></h3><p> -<span class="apii">[-1, +(2|0), <em>e</em>]</span> -<pre>int lua_next (lua_State *L, int index);</pre> - -<p> -Pops a key from the stack, -and pushes a key–value pair from the table at the given index -(the "next" pair after the given key). -If there are no more elements in the table, -then <a href="#lua_next"><code>lua_next</code></a> returns 0 (and pushes nothing). - - -<p> -A typical traversal looks like this: - -<pre> - /* table is in the stack at index 't' */ - lua_pushnil(L); /* first key */ - while (lua_next(L, t) != 0) { - /* uses 'key' (at index -2) and 'value' (at index -1) */ - printf("%s - %s\n", - lua_typename(L, lua_type(L, -2)), - lua_typename(L, lua_type(L, -1))); - /* removes 'value'; keeps 'key' for next iteration */ - lua_pop(L, 1); - } -</pre> - -<p> -While traversing a table, -do not call <a href="#lua_tolstring"><code>lua_tolstring</code></a> directly on a key, -unless you know that the key is actually a string. -Recall that <a href="#lua_tolstring"><code>lua_tolstring</code></a> may change -the value at the given index; -this confuses the next call to <a href="#lua_next"><code>lua_next</code></a>. - - -<p> -See function <a href="#pdf-next"><code>next</code></a> for the caveats of modifying -the table during its traversal. - - - - - -<hr><h3><a name="lua_Number"><code>lua_Number</code></a></h3> -<pre>typedef double lua_Number;</pre> - -<p> -The type of numbers in Lua. -By default, it is double, but that can be changed in <code>luaconf.h</code>. -Through this configuration file you can change -Lua to operate with another type for numbers (e.g., float or long). - - - - - -<hr><h3><a name="lua_pcall"><code>lua_pcall</code></a></h3><p> -<span class="apii">[-(nargs + 1), +(nresults|1), –]</span> -<pre>int lua_pcall (lua_State *L, int nargs, int nresults, int msgh);</pre> - -<p> -Calls a function in protected mode. - - -<p> -Both <code>nargs</code> and <code>nresults</code> have the same meaning as -in <a href="#lua_call"><code>lua_call</code></a>. -If there are no errors during the call, -<a href="#lua_pcall"><code>lua_pcall</code></a> behaves exactly like <a href="#lua_call"><code>lua_call</code></a>. -However, if there is any error, -<a href="#lua_pcall"><code>lua_pcall</code></a> catches it, -pushes a single value on the stack (the error message), -and returns an error code. -Like <a href="#lua_call"><code>lua_call</code></a>, -<a href="#lua_pcall"><code>lua_pcall</code></a> always removes the function -and its arguments from the stack. - - -<p> -If <code>msgh</code> is 0, -then the error message returned on the stack -is exactly the original error message. -Otherwise, <code>msgh</code> is the stack index of a -<em>message handler</em>. -(In the current implementation, this index cannot be a pseudo-index.) -In case of runtime errors, -this function will be called with the error message -and its return value will be the message -returned on the stack by <a href="#lua_pcall"><code>lua_pcall</code></a>. - - -<p> -Typically, the message handler is used to add more debug -information to the error message, such as a stack traceback. -Such information cannot be gathered after the return of <a href="#lua_pcall"><code>lua_pcall</code></a>, -since by then the stack has unwound. - - -<p> -The <a href="#lua_pcall"><code>lua_pcall</code></a> function returns one of the following codes -(defined in <code>lua.h</code>): - -<ul> - -<li><b><a name="pdf-LUA_OK"><code>LUA_OK</code></a> (0): </b> -success.</li> - -<li><b><a name="pdf-LUA_ERRRUN"><code>LUA_ERRRUN</code></a>: </b> -a runtime error. -</li> - -<li><b><a name="pdf-LUA_ERRMEM"><code>LUA_ERRMEM</code></a>: </b> -memory allocation error. -For such errors, Lua does not call the message handler. -</li> - -<li><b><a name="pdf-LUA_ERRERR"><code>LUA_ERRERR</code></a>: </b> -error while running the message handler. -</li> - -<li><b><a name="pdf-LUA_ERRGCMM"><code>LUA_ERRGCMM</code></a>: </b> -error while running a <code>__gc</code> metamethod. -(This error typically has no relation with the function being called. -It is generated by the garbage collector.) -</li> - -</ul> - - - - -<hr><h3><a name="lua_pcallk"><code>lua_pcallk</code></a></h3><p> -<span class="apii">[-(nargs + 1), +(nresults|1), –]</span> -<pre>int lua_pcallk (lua_State *L, - int nargs, - int nresults, - int errfunc, - int ctx, - lua_CFunction k);</pre> - -<p> -This function behaves exactly like <a href="#lua_pcall"><code>lua_pcall</code></a>, -but allows the called function to yield (see <a href="#4.7">§4.7</a>). - - - - - -<hr><h3><a name="lua_pop"><code>lua_pop</code></a></h3><p> -<span class="apii">[-n, +0, –]</span> -<pre>void lua_pop (lua_State *L, int n);</pre> - -<p> -Pops <code>n</code> elements from the stack. - - - - - -<hr><h3><a name="lua_pushboolean"><code>lua_pushboolean</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushboolean (lua_State *L, int b);</pre> - -<p> -Pushes a boolean value with value <code>b</code> onto the stack. - - - - - -<hr><h3><a name="lua_pushcclosure"><code>lua_pushcclosure</code></a></h3><p> -<span class="apii">[-n, +1, <em>e</em>]</span> -<pre>void lua_pushcclosure (lua_State *L, lua_CFunction fn, int n);</pre> - -<p> -Pushes a new C closure onto the stack. - - -<p> -When a C function is created, -it is possible to associate some values with it, -thus creating a C closure (see <a href="#4.4">§4.4</a>); -these values are then accessible to the function whenever it is called. -To associate values with a C function, -first these values should be pushed onto the stack -(when there are multiple values, the first value is pushed first). -Then <a href="#lua_pushcclosure"><code>lua_pushcclosure</code></a> -is called to create and push the C function onto the stack, -with the argument <code>n</code> telling how many values should be -associated with the function. -<a href="#lua_pushcclosure"><code>lua_pushcclosure</code></a> also pops these values from the stack. - - -<p> -The maximum value for <code>n</code> is 255. - - -<p> -When <code>n</code> is zero, -this function creates a <em>light C function</em>, -which is just a pointer to the C function. -In that case, it never throws a memory error. - - - - - -<hr><h3><a name="lua_pushcfunction"><code>lua_pushcfunction</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushcfunction (lua_State *L, lua_CFunction f);</pre> - -<p> -Pushes a C function onto the stack. -This function receives a pointer to a C function -and pushes onto the stack a Lua value of type <code>function</code> that, -when called, invokes the corresponding C function. - - -<p> -Any function to be registered in Lua must -follow the correct protocol to receive its parameters -and return its results (see <a href="#lua_CFunction"><code>lua_CFunction</code></a>). - - -<p> -<code>lua_pushcfunction</code> is defined as a macro: - -<pre> - #define lua_pushcfunction(L,f) lua_pushcclosure(L,f,0) -</pre><p> -Note that <code>f</code> is used twice. - - - - - -<hr><h3><a name="lua_pushfstring"><code>lua_pushfstring</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>const char *lua_pushfstring (lua_State *L, const char *fmt, ...);</pre> - -<p> -Pushes onto the stack a formatted string -and returns a pointer to this string. -It is similar to the ISO C function <code>sprintf</code>, -but has some important differences: - -<ul> - -<li> -You do not have to allocate space for the result: -the result is a Lua string and Lua takes care of memory allocation -(and deallocation, through garbage collection). -</li> - -<li> -The conversion specifiers are quite restricted. -There are no flags, widths, or precisions. -The conversion specifiers can only be -'<code>%%</code>' (inserts a '<code>%</code>' in the string), -'<code>%s</code>' (inserts a zero-terminated string, with no size restrictions), -'<code>%f</code>' (inserts a <a href="#lua_Number"><code>lua_Number</code></a>), -'<code>%p</code>' (inserts a pointer as a hexadecimal numeral), -'<code>%d</code>' (inserts an <code>int</code>), and -'<code>%c</code>' (inserts an <code>int</code> as a byte). -</li> - -</ul> - - - - -<hr><h3><a name="lua_pushglobaltable"><code>lua_pushglobaltable</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushglobaltable (lua_State *L);</pre> - -<p> -Pushes the global environment onto the stack. - - - - - -<hr><h3><a name="lua_pushinteger"><code>lua_pushinteger</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushinteger (lua_State *L, lua_Integer n);</pre> - -<p> -Pushes a number with value <code>n</code> onto the stack. - - - - - -<hr><h3><a name="lua_pushlightuserdata"><code>lua_pushlightuserdata</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushlightuserdata (lua_State *L, void *p);</pre> - -<p> -Pushes a light userdata onto the stack. - - -<p> -Userdata represent C values in Lua. -A <em>light userdata</em> represents a pointer, a <code>void*</code>. -It is a value (like a number): -you do not create it, it has no individual metatable, -and it is not collected (as it was never created). -A light userdata is equal to "any" -light userdata with the same C address. - - - - - -<hr><h3><a name="lua_pushliteral"><code>lua_pushliteral</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>const char *lua_pushliteral (lua_State *L, const char *s);</pre> - -<p> -This macro is equivalent to <a href="#lua_pushlstring"><code>lua_pushlstring</code></a>, -but can be used only when <code>s</code> is a literal string. -It automatically provides the string length. - - - - - -<hr><h3><a name="lua_pushlstring"><code>lua_pushlstring</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>const char *lua_pushlstring (lua_State *L, const char *s, size_t len);</pre> - -<p> -Pushes the string pointed to by <code>s</code> with size <code>len</code> -onto the stack. -Lua makes (or reuses) an internal copy of the given string, -so the memory at <code>s</code> can be freed or reused immediately after -the function returns. -The string can contain any binary data, -including embedded zeros. - - -<p> -Returns a pointer to the internal copy of the string. - - - - - -<hr><h3><a name="lua_pushnil"><code>lua_pushnil</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushnil (lua_State *L);</pre> - -<p> -Pushes a nil value onto the stack. - - - - - -<hr><h3><a name="lua_pushnumber"><code>lua_pushnumber</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushnumber (lua_State *L, lua_Number n);</pre> - -<p> -Pushes a number with value <code>n</code> onto the stack. - - - - - -<hr><h3><a name="lua_pushstring"><code>lua_pushstring</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>const char *lua_pushstring (lua_State *L, const char *s);</pre> - -<p> -Pushes the zero-terminated string pointed to by <code>s</code> -onto the stack. -Lua makes (or reuses) an internal copy of the given string, -so the memory at <code>s</code> can be freed or reused immediately after -the function returns. - - -<p> -Returns a pointer to the internal copy of the string. - - -<p> -If <code>s</code> is <code>NULL</code>, pushes <b>nil</b> and returns <code>NULL</code>. - - - - - -<hr><h3><a name="lua_pushthread"><code>lua_pushthread</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>int lua_pushthread (lua_State *L);</pre> - -<p> -Pushes the thread represented by <code>L</code> onto the stack. -Returns 1 if this thread is the main thread of its state. - - - - - -<hr><h3><a name="lua_pushunsigned"><code>lua_pushunsigned</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushunsigned (lua_State *L, lua_Unsigned n);</pre> - -<p> -Pushes a number with value <code>n</code> onto the stack. - - - - - -<hr><h3><a name="lua_pushvalue"><code>lua_pushvalue</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_pushvalue (lua_State *L, int index);</pre> - -<p> -Pushes a copy of the element at the given index -onto the stack. - - - - - -<hr><h3><a name="lua_pushvfstring"><code>lua_pushvfstring</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>const char *lua_pushvfstring (lua_State *L, - const char *fmt, - va_list argp);</pre> - -<p> -Equivalent to <a href="#lua_pushfstring"><code>lua_pushfstring</code></a>, except that it receives a <code>va_list</code> -instead of a variable number of arguments. - - - - - -<hr><h3><a name="lua_rawequal"><code>lua_rawequal</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_rawequal (lua_State *L, int index1, int index2);</pre> - -<p> -Returns 1 if the two values in indices <code>index1</code> and -<code>index2</code> are primitively equal -(that is, without calling metamethods). -Otherwise returns 0. -Also returns 0 if any of the indices are non valid. - - - - - -<hr><h3><a name="lua_rawget"><code>lua_rawget</code></a></h3><p> -<span class="apii">[-1, +1, –]</span> -<pre>void lua_rawget (lua_State *L, int index);</pre> - -<p> -Similar to <a href="#lua_gettable"><code>lua_gettable</code></a>, but does a raw access -(i.e., without metamethods). - - - - - -<hr><h3><a name="lua_rawgeti"><code>lua_rawgeti</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_rawgeti (lua_State *L, int index, int n);</pre> - -<p> -Pushes onto the stack the value <code>t[n]</code>, -where <code>t</code> is the table at the given index. -The access is raw; -that is, it does not invoke metamethods. - - - - - -<hr><h3><a name="lua_rawgetp"><code>lua_rawgetp</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void lua_rawgetp (lua_State *L, int index, const void *p);</pre> - -<p> -Pushes onto the stack the value <code>t[k]</code>, -where <code>t</code> is the table at the given index and -<code>k</code> is the pointer <code>p</code> represented as a light userdata. -The access is raw; -that is, it does not invoke metamethods. - - - - - -<hr><h3><a name="lua_rawlen"><code>lua_rawlen</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>size_t lua_rawlen (lua_State *L, int index);</pre> - -<p> -Returns the raw "length" of the value at the given index: -for strings, this is the string length; -for tables, this is the result of the length operator ('<code>#</code>') -with no metamethods; -for userdata, this is the size of the block of memory allocated -for the userdata; -for other values, it is 0. - - - - - -<hr><h3><a name="lua_rawset"><code>lua_rawset</code></a></h3><p> -<span class="apii">[-2, +0, <em>e</em>]</span> -<pre>void lua_rawset (lua_State *L, int index);</pre> - -<p> -Similar to <a href="#lua_settable"><code>lua_settable</code></a>, but does a raw assignment -(i.e., without metamethods). - - - - - -<hr><h3><a name="lua_rawseti"><code>lua_rawseti</code></a></h3><p> -<span class="apii">[-1, +0, <em>e</em>]</span> -<pre>void lua_rawseti (lua_State *L, int index, int n);</pre> - -<p> -Does the equivalent of <code>t[n] = v</code>, -where <code>t</code> is the table at the given index -and <code>v</code> is the value at the top of the stack. - - -<p> -This function pops the value from the stack. -The assignment is raw; -that is, it does not invoke metamethods. - - - - - -<hr><h3><a name="lua_rawsetp"><code>lua_rawsetp</code></a></h3><p> -<span class="apii">[-1, +0, <em>e</em>]</span> -<pre>void lua_rawsetp (lua_State *L, int index, const void *p);</pre> - -<p> -Does the equivalent of <code>t[k] = v</code>, -where <code>t</code> is the table at the given index, -<code>k</code> is the pointer <code>p</code> represented as a light userdata, -and <code>v</code> is the value at the top of the stack. - - -<p> -This function pops the value from the stack. -The assignment is raw; -that is, it does not invoke metamethods. - - - - - -<hr><h3><a name="lua_Reader"><code>lua_Reader</code></a></h3> -<pre>typedef const char * (*lua_Reader) (lua_State *L, - void *data, - size_t *size);</pre> - -<p> -The reader function used by <a href="#lua_load"><code>lua_load</code></a>. -Every time it needs another piece of the chunk, -<a href="#lua_load"><code>lua_load</code></a> calls the reader, -passing along its <code>data</code> parameter. -The reader must return a pointer to a block of memory -with a new piece of the chunk -and set <code>size</code> to the block size. -The block must exist until the reader function is called again. -To signal the end of the chunk, -the reader must return <code>NULL</code> or set <code>size</code> to zero. -The reader function may return pieces of any size greater than zero. - - - - - -<hr><h3><a name="lua_register"><code>lua_register</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>void lua_register (lua_State *L, const char *name, lua_CFunction f);</pre> - -<p> -Sets the C function <code>f</code> as the new value of global <code>name</code>. -It is defined as a macro: - -<pre> - #define lua_register(L,n,f) \ - (lua_pushcfunction(L, f), lua_setglobal(L, n)) -</pre> - - - - -<hr><h3><a name="lua_remove"><code>lua_remove</code></a></h3><p> -<span class="apii">[-1, +0, –]</span> -<pre>void lua_remove (lua_State *L, int index);</pre> - -<p> -Removes the element at the given valid index, -shifting down the elements above this index to fill the gap. -This function cannot be called with a pseudo-index, -because a pseudo-index is not an actual stack position. - - - - - -<hr><h3><a name="lua_replace"><code>lua_replace</code></a></h3><p> -<span class="apii">[-1, +0, –]</span> -<pre>void lua_replace (lua_State *L, int index);</pre> - -<p> -Moves the top element into the given valid index -without shifting any element -(therefore replacing the value at the given index), -and then pops the top element. - - - - - -<hr><h3><a name="lua_resume"><code>lua_resume</code></a></h3><p> -<span class="apii">[-?, +?, –]</span> -<pre>int lua_resume (lua_State *L, lua_State *from, int nargs);</pre> - -<p> -Starts and resumes a coroutine in a given thread. - - -<p> -To start a coroutine, -you push onto the thread stack the main function plus any arguments; -then you call <a href="#lua_resume"><code>lua_resume</code></a>, -with <code>nargs</code> being the number of arguments. -This call returns when the coroutine suspends or finishes its execution. -When it returns, the stack contains all values passed to <a href="#lua_yield"><code>lua_yield</code></a>, -or all values returned by the body function. -<a href="#lua_resume"><code>lua_resume</code></a> returns -<a href="#pdf-LUA_YIELD"><code>LUA_YIELD</code></a> if the coroutine yields, -<a href="#pdf-LUA_OK"><code>LUA_OK</code></a> if the coroutine finishes its execution -without errors, -or an error code in case of errors (see <a href="#lua_pcall"><code>lua_pcall</code></a>). - - -<p> -In case of errors, -the stack is not unwound, -so you can use the debug API over it. -The error message is on the top of the stack. - - -<p> -To resume a coroutine, -you remove any results from the last <a href="#lua_yield"><code>lua_yield</code></a>, -put on its stack only the values to -be passed as results from <code>yield</code>, -and then call <a href="#lua_resume"><code>lua_resume</code></a>. - - -<p> -The parameter <code>from</code> represents the coroutine that is resuming <code>L</code>. -If there is no such coroutine, -this parameter can be <code>NULL</code>. - - - - - -<hr><h3><a name="lua_setallocf"><code>lua_setallocf</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void lua_setallocf (lua_State *L, lua_Alloc f, void *ud);</pre> - -<p> -Changes the allocator function of a given state to <code>f</code> -with user data <code>ud</code>. - - - - - -<hr><h3><a name="lua_setfield"><code>lua_setfield</code></a></h3><p> -<span class="apii">[-1, +0, <em>e</em>]</span> -<pre>void lua_setfield (lua_State *L, int index, const char *k);</pre> - -<p> -Does the equivalent to <code>t[k] = v</code>, -where <code>t</code> is the value at the given index -and <code>v</code> is the value at the top of the stack. - - -<p> -This function pops the value from the stack. -As in Lua, this function may trigger a metamethod -for the "newindex" event (see <a href="#2.4">§2.4</a>). - - - - - -<hr><h3><a name="lua_setglobal"><code>lua_setglobal</code></a></h3><p> -<span class="apii">[-1, +0, <em>e</em>]</span> -<pre>void lua_setglobal (lua_State *L, const char *name);</pre> - -<p> -Pops a value from the stack and -sets it as the new value of global <code>name</code>. - - - - - -<hr><h3><a name="lua_setmetatable"><code>lua_setmetatable</code></a></h3><p> -<span class="apii">[-1, +0, –]</span> -<pre>void lua_setmetatable (lua_State *L, int index);</pre> - -<p> -Pops a table from the stack and -sets it as the new metatable for the value at the given index. - - - - - -<hr><h3><a name="lua_settable"><code>lua_settable</code></a></h3><p> -<span class="apii">[-2, +0, <em>e</em>]</span> -<pre>void lua_settable (lua_State *L, int index);</pre> - -<p> -Does the equivalent to <code>t[k] = v</code>, -where <code>t</code> is the value at the given index, -<code>v</code> is the value at the top of the stack, -and <code>k</code> is the value just below the top. - - -<p> -This function pops both the key and the value from the stack. -As in Lua, this function may trigger a metamethod -for the "newindex" event (see <a href="#2.4">§2.4</a>). - - - - - -<hr><h3><a name="lua_settop"><code>lua_settop</code></a></h3><p> -<span class="apii">[-?, +?, –]</span> -<pre>void lua_settop (lua_State *L, int index);</pre> - -<p> -Accepts any index, or 0, -and sets the stack top to this index. -If the new top is larger than the old one, -then the new elements are filled with <b>nil</b>. -If <code>index</code> is 0, then all stack elements are removed. - - - - - -<hr><h3><a name="lua_setuservalue"><code>lua_setuservalue</code></a></h3><p> -<span class="apii">[-1, +0, –]</span> -<pre>void lua_setuservalue (lua_State *L, int index);</pre> - -<p> -Pops a table or <b>nil</b> from the stack and sets it as -the new value associated to the userdata at the given index. - - - - - -<hr><h3><a name="lua_State"><code>lua_State</code></a></h3> -<pre>typedef struct lua_State lua_State;</pre> - -<p> -An opaque structure that points to a thread and indirectly -(through the thread) to the whole state of a Lua interpreter. -The Lua library is fully reentrant: -it has no global variables. -All information about a state is accessible through this structure. - - -<p> -A pointer to this structure must be passed as the first argument to -every function in the library, except to <a href="#lua_newstate"><code>lua_newstate</code></a>, -which creates a Lua state from scratch. - - - - - -<hr><h3><a name="lua_status"><code>lua_status</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_status (lua_State *L);</pre> - -<p> -Returns the status of the thread <code>L</code>. - - -<p> -The status can be 0 (<a href="#pdf-LUA_OK"><code>LUA_OK</code></a>) for a normal thread, -an error code if the thread finished the execution -of a <a href="#lua_resume"><code>lua_resume</code></a> with an error, -or <a name="pdf-LUA_YIELD"><code>LUA_YIELD</code></a> if the thread is suspended. - - -<p> -You can only call functions in threads with status <a href="#pdf-LUA_OK"><code>LUA_OK</code></a>. -You can resume threads with status <a href="#pdf-LUA_OK"><code>LUA_OK</code></a> -(to start a new coroutine) or <a href="#pdf-LUA_YIELD"><code>LUA_YIELD</code></a> -(to resume a coroutine). - - - - - -<hr><h3><a name="lua_toboolean"><code>lua_toboolean</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_toboolean (lua_State *L, int index);</pre> - -<p> -Converts the Lua value at the given index to a C boolean -value (0 or 1). -Like all tests in Lua, -<a href="#lua_toboolean"><code>lua_toboolean</code></a> returns true for any Lua value -different from <b>false</b> and <b>nil</b>; -otherwise it returns false. -(If you want to accept only actual boolean values, -use <a href="#lua_isboolean"><code>lua_isboolean</code></a> to test the value's type.) - - - - - -<hr><h3><a name="lua_tocfunction"><code>lua_tocfunction</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_CFunction lua_tocfunction (lua_State *L, int index);</pre> - -<p> -Converts a value at the given index to a C function. -That value must be a C function; -otherwise, returns <code>NULL</code>. - - - - - -<hr><h3><a name="lua_tointeger"><code>lua_tointeger</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_Integer lua_tointeger (lua_State *L, int index);</pre> - -<p> -Equivalent to <a href="#lua_tointegerx"><code>lua_tointegerx</code></a> with <code>isnum</code> equal to <code>NULL</code>. - - - - - -<hr><h3><a name="lua_tointegerx"><code>lua_tointegerx</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_Integer lua_tointegerx (lua_State *L, int index, int *isnum);</pre> - -<p> -Converts the Lua value at the given index -to the signed integral type <a href="#lua_Integer"><code>lua_Integer</code></a>. -The Lua value must be a number or a string convertible to a number -(see <a href="#3.4.2">§3.4.2</a>); -otherwise, <code>lua_tointegerx</code> returns 0. - - -<p> -If the number is not an integer, -it is truncated in some non-specified way. - - -<p> -If <code>isnum</code> is not <code>NULL</code>, -its referent is assigned a boolean value that -indicates whether the operation succeeded. - - - - - -<hr><h3><a name="lua_tolstring"><code>lua_tolstring</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>const char *lua_tolstring (lua_State *L, int index, size_t *len);</pre> - -<p> -Converts the Lua value at the given index to a C string. -If <code>len</code> is not <code>NULL</code>, -it also sets <code>*len</code> with the string length. -The Lua value must be a string or a number; -otherwise, the function returns <code>NULL</code>. -If the value is a number, -then <code>lua_tolstring</code> also -<em>changes the actual value in the stack to a string</em>. -(This change confuses <a href="#lua_next"><code>lua_next</code></a> -when <code>lua_tolstring</code> is applied to keys during a table traversal.) - - -<p> -<code>lua_tolstring</code> returns a fully aligned pointer -to a string inside the Lua state. -This string always has a zero ('<code>\0</code>') -after its last character (as in C), -but can contain other zeros in its body. -Because Lua has garbage collection, -there is no guarantee that the pointer returned by <code>lua_tolstring</code> -will be valid after the corresponding value is removed from the stack. - - - - - -<hr><h3><a name="lua_tonumber"><code>lua_tonumber</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_Number lua_tonumber (lua_State *L, int index);</pre> - -<p> -Equivalent to <a href="#lua_tonumberx"><code>lua_tonumberx</code></a> with <code>isnum</code> equal to <code>NULL</code>. - - - - - -<hr><h3><a name="lua_tonumberx"><code>lua_tonumberx</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_Number lua_tonumberx (lua_State *L, int index, int *isnum);</pre> - -<p> -Converts the Lua value at the given index -to the C type <a href="#lua_Number"><code>lua_Number</code></a> (see <a href="#lua_Number"><code>lua_Number</code></a>). -The Lua value must be a number or a string convertible to a number -(see <a href="#3.4.2">§3.4.2</a>); -otherwise, <a href="#lua_tonumberx"><code>lua_tonumberx</code></a> returns 0. - - -<p> -If <code>isnum</code> is not <code>NULL</code>, -its referent is assigned a boolean value that -indicates whether the operation succeeded. - - - - - -<hr><h3><a name="lua_topointer"><code>lua_topointer</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>const void *lua_topointer (lua_State *L, int index);</pre> - -<p> -Converts the value at the given index to a generic -C pointer (<code>void*</code>). -The value can be a userdata, a table, a thread, or a function; -otherwise, <code>lua_topointer</code> returns <code>NULL</code>. -Different objects will give different pointers. -There is no way to convert the pointer back to its original value. - - -<p> -Typically this function is used only for debug information. - - - - - -<hr><h3><a name="lua_tostring"><code>lua_tostring</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>const char *lua_tostring (lua_State *L, int index);</pre> - -<p> -Equivalent to <a href="#lua_tolstring"><code>lua_tolstring</code></a> with <code>len</code> equal to <code>NULL</code>. - - - - - -<hr><h3><a name="lua_tothread"><code>lua_tothread</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_State *lua_tothread (lua_State *L, int index);</pre> - -<p> -Converts the value at the given index to a Lua thread -(represented as <code>lua_State*</code>). -This value must be a thread; -otherwise, the function returns <code>NULL</code>. - - - - - -<hr><h3><a name="lua_tounsigned"><code>lua_tounsigned</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_Unsigned lua_tounsigned (lua_State *L, int index);</pre> - -<p> -Equivalent to <a href="#lua_tounsignedx"><code>lua_tounsignedx</code></a> with <code>isnum</code> equal to <code>NULL</code>. - - - - - -<hr><h3><a name="lua_tounsignedx"><code>lua_tounsignedx</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_Unsigned lua_tounsignedx (lua_State *L, int index, int *isnum);</pre> - -<p> -Converts the Lua value at the given index -to the unsigned integral type <a href="#lua_Unsigned"><code>lua_Unsigned</code></a>. -The Lua value must be a number or a string convertible to a number -(see <a href="#3.4.2">§3.4.2</a>); -otherwise, <code>lua_tounsignedx</code> returns 0. - - -<p> -If the number is not an integer, -it is truncated in some non-specified way. -If the number is outside the range of representable values, -it is normalized to the remainder of its division by -one more than the maximum representable value. - - -<p> -If <code>isnum</code> is not <code>NULL</code>, -its referent is assigned a boolean value that -indicates whether the operation succeeded. - - - - - -<hr><h3><a name="lua_touserdata"><code>lua_touserdata</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void *lua_touserdata (lua_State *L, int index);</pre> - -<p> -If the value at the given index is a full userdata, -returns its block address. -If the value is a light userdata, -returns its pointer. -Otherwise, returns <code>NULL</code>. - - - - - -<hr><h3><a name="lua_type"><code>lua_type</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_type (lua_State *L, int index);</pre> - -<p> -Returns the type of the value in the given valid index, -or <code>LUA_TNONE</code> for a non-valid (but acceptable) index. -The types returned by <a href="#lua_type"><code>lua_type</code></a> are coded by the following constants -defined in <code>lua.h</code>: -<a name="pdf-LUA_TNIL"><code>LUA_TNIL</code></a>, -<a name="pdf-LUA_TNUMBER"><code>LUA_TNUMBER</code></a>, -<a name="pdf-LUA_TBOOLEAN"><code>LUA_TBOOLEAN</code></a>, -<a name="pdf-LUA_TSTRING"><code>LUA_TSTRING</code></a>, -<a name="pdf-LUA_TTABLE"><code>LUA_TTABLE</code></a>, -<a name="pdf-LUA_TFUNCTION"><code>LUA_TFUNCTION</code></a>, -<a name="pdf-LUA_TUSERDATA"><code>LUA_TUSERDATA</code></a>, -<a name="pdf-LUA_TTHREAD"><code>LUA_TTHREAD</code></a>, -and -<a name="pdf-LUA_TLIGHTUSERDATA"><code>LUA_TLIGHTUSERDATA</code></a>. - - - - - -<hr><h3><a name="lua_typename"><code>lua_typename</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>const char *lua_typename (lua_State *L, int tp);</pre> - -<p> -Returns the name of the type encoded by the value <code>tp</code>, -which must be one the values returned by <a href="#lua_type"><code>lua_type</code></a>. - - - - - -<hr><h3><a name="lua_Unsigned"><code>lua_Unsigned</code></a></h3> -<pre>typedef unsigned long lua_Unsigned;</pre> - -<p> -The type used by the Lua API to represent unsigned integral values. -It must have at least 32 bits. - - -<p> -By default it is an <code>unsigned int</code> or an <code>unsigned long</code>, -whichever can hold 32-bit values. - - - - - -<hr><h3><a name="lua_upvalueindex"><code>lua_upvalueindex</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_upvalueindex (int i);</pre> - -<p> -Returns the pseudo-index that represents the <code>i</code>-th upvalue of -the running function (see <a href="#4.4">§4.4</a>). - - - - - -<hr><h3><a name="lua_version"><code>lua_version</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>const lua_Number *lua_version (lua_State *L);</pre> - -<p> -Returns the address of the version number stored in the Lua core. -When called with a valid <a href="#lua_State"><code>lua_State</code></a>, -returns the address of the version used to create that state. -When called with <code>NULL</code>, -returns the address of the version running the call. - - - - - -<hr><h3><a name="lua_Writer"><code>lua_Writer</code></a></h3> -<pre>typedef int (*lua_Writer) (lua_State *L, - const void* p, - size_t sz, - void* ud);</pre> - -<p> -The type of the writer function used by <a href="#lua_dump"><code>lua_dump</code></a>. -Every time it produces another piece of chunk, -<a href="#lua_dump"><code>lua_dump</code></a> calls the writer, -passing along the buffer to be written (<code>p</code>), -its size (<code>sz</code>), -and the <code>data</code> parameter supplied to <a href="#lua_dump"><code>lua_dump</code></a>. - - -<p> -The writer returns an error code: -0 means no errors; -any other value means an error and stops <a href="#lua_dump"><code>lua_dump</code></a> from -calling the writer again. - - - - - -<hr><h3><a name="lua_xmove"><code>lua_xmove</code></a></h3><p> -<span class="apii">[-?, +?, –]</span> -<pre>void lua_xmove (lua_State *from, lua_State *to, int n);</pre> - -<p> -Exchange values between different threads of the same state. - - -<p> -This function pops <code>n</code> values from the stack <code>from</code>, -and pushes them onto the stack <code>to</code>. - - - - - -<hr><h3><a name="lua_yield"><code>lua_yield</code></a></h3><p> -<span class="apii">[-?, +?, –]</span> -<pre>int lua_yield (lua_State *L, int nresults);</pre> - -<p> -This function is equivalent to <a href="#lua_yieldk"><code>lua_yieldk</code></a>, -but it has no continuation (see <a href="#4.7">§4.7</a>). -Therefore, when the thread resumes, -it returns to the function that called -the function calling <code>lua_yield</code>. - - - - - -<hr><h3><a name="lua_yieldk"><code>lua_yieldk</code></a></h3><p> -<span class="apii">[-?, +?, –]</span> -<pre>int lua_yieldk (lua_State *L, int nresults, int ctx, lua_CFunction k);</pre> - -<p> -Yields a coroutine. - - -<p> -This function should only be called as the -return expression of a C function, as follows: - -<pre> - return lua_yieldk (L, n, i, k); -</pre><p> -When a C function calls <a href="#lua_yieldk"><code>lua_yieldk</code></a> in that way, -the running coroutine suspends its execution, -and the call to <a href="#lua_resume"><code>lua_resume</code></a> that started this coroutine returns. -The parameter <code>nresults</code> is the number of values from the stack -that are passed as results to <a href="#lua_resume"><code>lua_resume</code></a>. - - -<p> -When the coroutine is resumed again, -Lua calls the given continuation function <code>k</code> to continue -the execution of the C function that yielded (see <a href="#4.7">§4.7</a>). -This continuation function receives the same stack -from the previous function, -with the results removed and -replaced by the arguments passed to <a href="#lua_resume"><code>lua_resume</code></a>. -Moreover, -the continuation function may access the value <code>ctx</code> -by calling <a href="#lua_getctx"><code>lua_getctx</code></a>. - - - - - - - -<h2>4.9 – <a name="4.9">The Debug Interface</a></h2> - -<p> -Lua has no built-in debugging facilities. -Instead, it offers a special interface -by means of functions and <em>hooks</em>. -This interface allows the construction of different -kinds of debuggers, profilers, and other tools -that need "inside information" from the interpreter. - - - -<hr><h3><a name="lua_Debug"><code>lua_Debug</code></a></h3> -<pre>typedef struct lua_Debug { - int event; - const char *name; /* (n) */ - const char *namewhat; /* (n) */ - const char *what; /* (S) */ - const char *source; /* (S) */ - int currentline; /* (l) */ - int linedefined; /* (S) */ - int lastlinedefined; /* (S) */ - unsigned char nups; /* (u) number of upvalues */ - unsigned char nparams; /* (u) number of parameters */ - char isvararg; /* (u) */ - char istailcall; /* (t) */ - char short_src[LUA_IDSIZE]; /* (S) */ - /* private part */ - <em>other fields</em> -} lua_Debug;</pre> - -<p> -A structure used to carry different pieces of -information about a function or an activation record. -<a href="#lua_getstack"><code>lua_getstack</code></a> fills only the private part -of this structure, for later use. -To fill the other fields of <a href="#lua_Debug"><code>lua_Debug</code></a> with useful information, -call <a href="#lua_getinfo"><code>lua_getinfo</code></a>. - - -<p> -The fields of <a href="#lua_Debug"><code>lua_Debug</code></a> have the following meaning: - -<ul> - -<li><b><code>source</code>: </b> -the source of the chunk that created the function. -If <code>source</code> starts with a '<code>@</code>', -it means that the function was defined in a file where -the file name follows the '<code>@</code>'. -If <code>source</code> starts with a '<code>=</code>', -the remainder of its contents describe the source in a user-dependent manner. -Otherwise, -the function was defined in a string where -<code>source</code> is that string. -</li> - -<li><b><code>short_src</code>: </b> -a "printable" version of <code>source</code>, to be used in error messages. -</li> - -<li><b><code>linedefined</code>: </b> -the line number where the definition of the function starts. -</li> - -<li><b><code>lastlinedefined</code>: </b> -the line number where the definition of the function ends. -</li> - -<li><b><code>what</code>: </b> -the string <code>"Lua"</code> if the function is a Lua function, -<code>"C"</code> if it is a C function, -<code>"main"</code> if it is the main part of a chunk. -</li> - -<li><b><code>currentline</code>: </b> -the current line where the given function is executing. -When no line information is available, -<code>currentline</code> is set to -1. -</li> - -<li><b><code>name</code>: </b> -a reasonable name for the given function. -Because functions in Lua are first-class values, -they do not have a fixed name: -some functions can be the value of multiple global variables, -while others can be stored only in a table field. -The <code>lua_getinfo</code> function checks how the function was -called to find a suitable name. -If it cannot find a name, -then <code>name</code> is set to <code>NULL</code>. -</li> - -<li><b><code>namewhat</code>: </b> -explains the <code>name</code> field. -The value of <code>namewhat</code> can be -<code>"global"</code>, <code>"local"</code>, <code>"method"</code>, -<code>"field"</code>, <code>"upvalue"</code>, or <code>""</code> (the empty string), -according to how the function was called. -(Lua uses the empty string when no other option seems to apply.) -</li> - -<li><b><code>istailcall</code>: </b> -true if this function invocation was called by a tail call. -In this case, the caller of this level is not in the stack. -</li> - -<li><b><code>nups</code>: </b> -the number of upvalues of the function. -</li> - -<li><b><code>nparams</code>: </b> -the number of fixed parameters of the function -(always 0 for C functions). -</li> - -<li><b><code>isvararg</code>: </b> -true if the function is a vararg function -(always true for C functions). -</li> - -</ul> - - - - -<hr><h3><a name="lua_gethook"><code>lua_gethook</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_Hook lua_gethook (lua_State *L);</pre> - -<p> -Returns the current hook function. - - - - - -<hr><h3><a name="lua_gethookcount"><code>lua_gethookcount</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_gethookcount (lua_State *L);</pre> - -<p> -Returns the current hook count. - - - - - -<hr><h3><a name="lua_gethookmask"><code>lua_gethookmask</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_gethookmask (lua_State *L);</pre> - -<p> -Returns the current hook mask. - - - - - -<hr><h3><a name="lua_getinfo"><code>lua_getinfo</code></a></h3><p> -<span class="apii">[-(0|1), +(0|1|2), <em>e</em>]</span> -<pre>int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar);</pre> - -<p> -Gets information about a specific function or function invocation. - - -<p> -To get information about a function invocation, -the parameter <code>ar</code> must be a valid activation record that was -filled by a previous call to <a href="#lua_getstack"><code>lua_getstack</code></a> or -given as argument to a hook (see <a href="#lua_Hook"><code>lua_Hook</code></a>). - - -<p> -To get information about a function you push it onto the stack -and start the <code>what</code> string with the character '<code>></code>'. -(In that case, -<code>lua_getinfo</code> pops the function from the top of the stack.) -For instance, to know in which line a function <code>f</code> was defined, -you can write the following code: - -<pre> - lua_Debug ar; - lua_getglobal(L, "f"); /* get global 'f' */ - lua_getinfo(L, ">S", &ar); - printf("%d\n", ar.linedefined); -</pre> - -<p> -Each character in the string <code>what</code> -selects some fields of the structure <code>ar</code> to be filled or -a value to be pushed on the stack: - -<ul> - -<li><b>'<code>n</code>': </b> fills in the field <code>name</code> and <code>namewhat</code>; -</li> - -<li><b>'<code>S</code>': </b> -fills in the fields <code>source</code>, <code>short_src</code>, -<code>linedefined</code>, <code>lastlinedefined</code>, and <code>what</code>; -</li> - -<li><b>'<code>l</code>': </b> fills in the field <code>currentline</code>; -</li> - -<li><b>'<code>t</code>': </b> fills in the field <code>istailcall</code>; -</li> - -<li><b>'<code>u</code>': </b> fills in the fields -<code>nups</code>, <code>nparams</code>, and <code>isvararg</code>; -</li> - -<li><b>'<code>f</code>': </b> -pushes onto the stack the function that is -running at the given level; -</li> - -<li><b>'<code>L</code>': </b> -pushes onto the stack a table whose indices are the -numbers of the lines that are valid on the function. -(A <em>valid line</em> is a line with some associated code, -that is, a line where you can put a break point. -Non-valid lines include empty lines and comments.) -</li> - -</ul> - -<p> -This function returns 0 on error -(for instance, an invalid option in <code>what</code>). - - - - - -<hr><h3><a name="lua_getlocal"><code>lua_getlocal</code></a></h3><p> -<span class="apii">[-0, +(0|1), –]</span> -<pre>const char *lua_getlocal (lua_State *L, lua_Debug *ar, int n);</pre> - -<p> -Gets information about a local variable of -a given activation record or a given function. - - -<p> -In the first case, -the parameter <code>ar</code> must be a valid activation record that was -filled by a previous call to <a href="#lua_getstack"><code>lua_getstack</code></a> or -given as argument to a hook (see <a href="#lua_Hook"><code>lua_Hook</code></a>). -The index <code>n</code> selects which local variable to inspect; -see <a href="#pdf-debug.getlocal"><code>debug.getlocal</code></a> for details about variable indices -and names. - - -<p> -<a href="#lua_getlocal"><code>lua_getlocal</code></a> pushes the variable's value onto the stack -and returns its name. - - -<p> -In the second case, <code>ar</code> should be <code>NULL</code> and the function -to be inspected must be at the top of the stack. -In this case, only parameters of Lua functions are visible -(as there is no information about what variables are active) -and no values are pushed onto the stack. - - -<p> -Returns <code>NULL</code> (and pushes nothing) -when the index is greater than -the number of active local variables. - - - - - -<hr><h3><a name="lua_getstack"><code>lua_getstack</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_getstack (lua_State *L, int level, lua_Debug *ar);</pre> - -<p> -Gets information about the interpreter runtime stack. - - -<p> -This function fills parts of a <a href="#lua_Debug"><code>lua_Debug</code></a> structure with -an identification of the <em>activation record</em> -of the function executing at a given level. -Level 0 is the current running function, -whereas level <em>n+1</em> is the function that has called level <em>n</em> -(except for tail calls, which do not count on the stack). -When there are no errors, <a href="#lua_getstack"><code>lua_getstack</code></a> returns 1; -when called with a level greater than the stack depth, -it returns 0. - - - - - -<hr><h3><a name="lua_getupvalue"><code>lua_getupvalue</code></a></h3><p> -<span class="apii">[-0, +(0|1), –]</span> -<pre>const char *lua_getupvalue (lua_State *L, int funcindex, int n);</pre> - -<p> -Gets information about a closure's upvalue. -(For Lua functions, -upvalues are the external local variables that the function uses, -and that are consequently included in its closure.) -<a href="#lua_getupvalue"><code>lua_getupvalue</code></a> gets the index <code>n</code> of an upvalue, -pushes the upvalue's value onto the stack, -and returns its name. -<code>funcindex</code> points to the closure in the stack. -(Upvalues have no particular order, -as they are active through the whole function. -So, they are numbered in an arbitrary order.) - - -<p> -Returns <code>NULL</code> (and pushes nothing) -when the index is greater than the number of upvalues. -For C functions, this function uses the empty string <code>""</code> -as a name for all upvalues. - - - - - -<hr><h3><a name="lua_Hook"><code>lua_Hook</code></a></h3> -<pre>typedef void (*lua_Hook) (lua_State *L, lua_Debug *ar);</pre> - -<p> -Type for debugging hook functions. - - -<p> -Whenever a hook is called, its <code>ar</code> argument has its field -<code>event</code> set to the specific event that triggered the hook. -Lua identifies these events with the following constants: -<a name="pdf-LUA_HOOKCALL"><code>LUA_HOOKCALL</code></a>, <a name="pdf-LUA_HOOKRET"><code>LUA_HOOKRET</code></a>, -<a name="pdf-LUA_HOOKTAILCALL"><code>LUA_HOOKTAILCALL</code></a>, <a name="pdf-LUA_HOOKLINE"><code>LUA_HOOKLINE</code></a>, -and <a name="pdf-LUA_HOOKCOUNT"><code>LUA_HOOKCOUNT</code></a>. -Moreover, for line events, the field <code>currentline</code> is also set. -To get the value of any other field in <code>ar</code>, -the hook must call <a href="#lua_getinfo"><code>lua_getinfo</code></a>. - - -<p> -For call events, <code>event</code> can be <code>LUA_HOOKCALL</code>, -the normal value, or <code>LUA_HOOKTAILCALL</code>, for a tail call; -in this case, there will be no corresponding return event. - - -<p> -While Lua is running a hook, it disables other calls to hooks. -Therefore, if a hook calls back Lua to execute a function or a chunk, -this execution occurs without any calls to hooks. - - -<p> -Hook functions cannot have continuations, -that is, they cannot call <a href="#lua_yieldk"><code>lua_yieldk</code></a>, -<a href="#lua_pcallk"><code>lua_pcallk</code></a>, or <a href="#lua_callk"><code>lua_callk</code></a> with a non-null <code>k</code>. - - -<p> -Hook functions can yield under the following conditions: -Only count and line events can yield -and they cannot yield any value; -to yield a hook function must finish its execution -calling <a href="#lua_yield"><code>lua_yield</code></a> with <code>nresults</code> equal to zero. - - - - - -<hr><h3><a name="lua_sethook"><code>lua_sethook</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>int lua_sethook (lua_State *L, lua_Hook f, int mask, int count);</pre> - -<p> -Sets the debugging hook function. - - -<p> -Argument <code>f</code> is the hook function. -<code>mask</code> specifies on which events the hook will be called: -it is formed by a bitwise or of the constants -<a name="pdf-LUA_MASKCALL"><code>LUA_MASKCALL</code></a>, -<a name="pdf-LUA_MASKRET"><code>LUA_MASKRET</code></a>, -<a name="pdf-LUA_MASKLINE"><code>LUA_MASKLINE</code></a>, -and <a name="pdf-LUA_MASKCOUNT"><code>LUA_MASKCOUNT</code></a>. -The <code>count</code> argument is only meaningful when the mask -includes <code>LUA_MASKCOUNT</code>. -For each event, the hook is called as explained below: - -<ul> - -<li><b>The call hook: </b> is called when the interpreter calls a function. -The hook is called just after Lua enters the new function, -before the function gets its arguments. -</li> - -<li><b>The return hook: </b> is called when the interpreter returns from a function. -The hook is called just before Lua leaves the function. -There is no standard way to access the values -to be returned by the function. -</li> - -<li><b>The line hook: </b> is called when the interpreter is about to -start the execution of a new line of code, -or when it jumps back in the code (even to the same line). -(This event only happens while Lua is executing a Lua function.) -</li> - -<li><b>The count hook: </b> is called after the interpreter executes every -<code>count</code> instructions. -(This event only happens while Lua is executing a Lua function.) -</li> - -</ul> - -<p> -A hook is disabled by setting <code>mask</code> to zero. - - - - - -<hr><h3><a name="lua_setlocal"><code>lua_setlocal</code></a></h3><p> -<span class="apii">[-(0|1), +0, –]</span> -<pre>const char *lua_setlocal (lua_State *L, lua_Debug *ar, int n);</pre> - -<p> -Sets the value of a local variable of a given activation record. -Parameters <code>ar</code> and <code>n</code> are as in <a href="#lua_getlocal"><code>lua_getlocal</code></a> -(see <a href="#lua_getlocal"><code>lua_getlocal</code></a>). -<a href="#lua_setlocal"><code>lua_setlocal</code></a> assigns the value at the top of the stack -to the variable and returns its name. -It also pops the value from the stack. - - -<p> -Returns <code>NULL</code> (and pops nothing) -when the index is greater than -the number of active local variables. - - - - - -<hr><h3><a name="lua_setupvalue"><code>lua_setupvalue</code></a></h3><p> -<span class="apii">[-(0|1), +0, –]</span> -<pre>const char *lua_setupvalue (lua_State *L, int funcindex, int n);</pre> - -<p> -Sets the value of a closure's upvalue. -It assigns the value at the top of the stack -to the upvalue and returns its name. -It also pops the value from the stack. -Parameters <code>funcindex</code> and <code>n</code> are as in the <a href="#lua_getupvalue"><code>lua_getupvalue</code></a> -(see <a href="#lua_getupvalue"><code>lua_getupvalue</code></a>). - - -<p> -Returns <code>NULL</code> (and pops nothing) -when the index is greater than the number of upvalues. - - - - - -<hr><h3><a name="lua_upvalueid"><code>lua_upvalueid</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void *lua_upvalueid (lua_State *L, int funcindex, int n);</pre> - -<p> -Returns an unique identifier for the upvalue numbered <code>n</code> -from the closure at index <code>funcindex</code>. -Parameters <code>funcindex</code> and <code>n</code> are as in the <a href="#lua_getupvalue"><code>lua_getupvalue</code></a> -(see <a href="#lua_getupvalue"><code>lua_getupvalue</code></a>) -(but <code>n</code> cannot be greater than the number of upvalues). - - -<p> -These unique identifiers allow a program to check whether different -closures share upvalues. -Lua closures that share an upvalue -(that is, that access a same external local variable) -will return identical ids for those upvalue indices. - - - - - -<hr><h3><a name="lua_upvaluejoin"><code>lua_upvaluejoin</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void lua_upvaluejoin (lua_State *L, int funcindex1, int n1, - int funcindex2, int n2);</pre> - -<p> -Make the <code>n1</code>-th upvalue of the Lua closure at index <code>funcindex1</code> -refer to the <code>n2</code>-th upvalue of the Lua closure at index <code>funcindex2</code>. - - - - - - - -<h1>5 – <a name="5">The Auxiliary Library</a></h1> - -<p> - -The <em>auxiliary library</em> provides several convenient functions -to interface C with Lua. -While the basic API provides the primitive functions for all -interactions between C and Lua, -the auxiliary library provides higher-level functions for some -common tasks. - - -<p> -All functions and types from the auxiliary library -are defined in header file <code>lauxlib.h</code> and -have a prefix <code>luaL_</code>. - - -<p> -All functions in the auxiliary library are built on -top of the basic API, -and so they provide nothing that cannot be done with that API. -Nevertheless, the use of the auxiliary library ensures -more consistency to your code. - - -<p> -Several functions in the auxiliary library use internally some -extra stack slots. -When a function in the auxiliary library uses less than five slots, -it does not check the stack size; -it simply assumes that there are enough slots. - - -<p> -Several functions in the auxiliary library are used to -check C function arguments. -Because the error message is formatted for arguments -(e.g., "<code>bad argument #1</code>"), -you should not use these functions for other stack values. - - -<p> -Functions called <code>luaL_check*</code> -always throw an error if the check is not satisfied. - - - -<h2>5.1 – <a name="5.1">Functions and Types</a></h2> - -<p> -Here we list all functions and types from the auxiliary library -in alphabetical order. - - - -<hr><h3><a name="luaL_addchar"><code>luaL_addchar</code></a></h3><p> -<span class="apii">[-?, +?, <em>e</em>]</span> -<pre>void luaL_addchar (luaL_Buffer *B, char c);</pre> - -<p> -Adds the byte <code>c</code> to the buffer <code>B</code> -(see <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>). - - - - - -<hr><h3><a name="luaL_addlstring"><code>luaL_addlstring</code></a></h3><p> -<span class="apii">[-?, +?, <em>e</em>]</span> -<pre>void luaL_addlstring (luaL_Buffer *B, const char *s, size_t l);</pre> - -<p> -Adds the string pointed to by <code>s</code> with length <code>l</code> to -the buffer <code>B</code> -(see <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>). -The string can contain embedded zeros. - - - - - -<hr><h3><a name="luaL_addsize"><code>luaL_addsize</code></a></h3><p> -<span class="apii">[-?, +?, <em>e</em>]</span> -<pre>void luaL_addsize (luaL_Buffer *B, size_t n);</pre> - -<p> -Adds to the buffer <code>B</code> (see <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>) -a string of length <code>n</code> previously copied to the -buffer area (see <a href="#luaL_prepbuffer"><code>luaL_prepbuffer</code></a>). - - - - - -<hr><h3><a name="luaL_addstring"><code>luaL_addstring</code></a></h3><p> -<span class="apii">[-?, +?, <em>e</em>]</span> -<pre>void luaL_addstring (luaL_Buffer *B, const char *s);</pre> - -<p> -Adds the zero-terminated string pointed to by <code>s</code> -to the buffer <code>B</code> -(see <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>). -The string cannot contain embedded zeros. - - - - - -<hr><h3><a name="luaL_addvalue"><code>luaL_addvalue</code></a></h3><p> -<span class="apii">[-1, +?, <em>e</em>]</span> -<pre>void luaL_addvalue (luaL_Buffer *B);</pre> - -<p> -Adds the value at the top of the stack -to the buffer <code>B</code> -(see <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>). -Pops the value. - - -<p> -This is the only function on string buffers that can (and must) -be called with an extra element on the stack, -which is the value to be added to the buffer. - - - - - -<hr><h3><a name="luaL_argcheck"><code>luaL_argcheck</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>void luaL_argcheck (lua_State *L, - int cond, - int arg, - const char *extramsg);</pre> - -<p> -Checks whether <code>cond</code> is true. -If not, raises an error with a standard message. - - - - - -<hr><h3><a name="luaL_argerror"><code>luaL_argerror</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>int luaL_argerror (lua_State *L, int arg, const char *extramsg);</pre> - -<p> -Raises an error with a standard message -that includes <code>extramsg</code> as a comment. - - -<p> -This function never returns, -but it is an idiom to use it in C functions -as <code>return luaL_argerror(<em>args</em>)</code>. - - - - - -<hr><h3><a name="luaL_Buffer"><code>luaL_Buffer</code></a></h3> -<pre>typedef struct luaL_Buffer luaL_Buffer;</pre> - -<p> -Type for a <em>string buffer</em>. - - -<p> -A string buffer allows C code to build Lua strings piecemeal. -Its pattern of use is as follows: - -<ul> - -<li>First declare a variable <code>b</code> of type <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>.</li> - -<li>Then initialize it with a call <code>luaL_buffinit(L, &b)</code>.</li> - -<li> -Then add string pieces to the buffer calling any of -the <code>luaL_add*</code> functions. -</li> - -<li> -Finish by calling <code>luaL_pushresult(&b)</code>. -This call leaves the final string on the top of the stack. -</li> - -</ul> - -<p> -If you know beforehand the total size of the resulting string, -you can use the buffer like this: - -<ul> - -<li>First declare a variable <code>b</code> of type <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>.</li> - -<li>Then initialize it and preallocate a space of -size <code>sz</code> with a call <code>luaL_buffinitsize(L, &b, sz)</code>.</li> - -<li>Then copy the string into that space.</li> - -<li> -Finish by calling <code>luaL_pushresultsize(&b, sz)</code>, -where <code>sz</code> is the total size of the resulting string -copied into that space. -</li> - -</ul> - -<p> -During its normal operation, -a string buffer uses a variable number of stack slots. -So, while using a buffer, you cannot assume that you know where -the top of the stack is. -You can use the stack between successive calls to buffer operations -as long as that use is balanced; -that is, -when you call a buffer operation, -the stack is at the same level -it was immediately after the previous buffer operation. -(The only exception to this rule is <a href="#luaL_addvalue"><code>luaL_addvalue</code></a>.) -After calling <a href="#luaL_pushresult"><code>luaL_pushresult</code></a> the stack is back to its -level when the buffer was initialized, -plus the final string on its top. - - - - - -<hr><h3><a name="luaL_buffinit"><code>luaL_buffinit</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void luaL_buffinit (lua_State *L, luaL_Buffer *B);</pre> - -<p> -Initializes a buffer <code>B</code>. -This function does not allocate any space; -the buffer must be declared as a variable -(see <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>). - - - - - -<hr><h3><a name="luaL_buffinitsize"><code>luaL_buffinitsize</code></a></h3><p> -<span class="apii">[-?, +?, <em>e</em>]</span> -<pre>char *luaL_buffinitsize (lua_State *L, luaL_Buffer *B, size_t sz);</pre> - -<p> -Equivalent to the sequence -<a href="#luaL_buffinit"><code>luaL_buffinit</code></a>, <a href="#luaL_prepbuffsize"><code>luaL_prepbuffsize</code></a>. - - - - - -<hr><h3><a name="luaL_callmeta"><code>luaL_callmeta</code></a></h3><p> -<span class="apii">[-0, +(0|1), <em>e</em>]</span> -<pre>int luaL_callmeta (lua_State *L, int obj, const char *e);</pre> - -<p> -Calls a metamethod. - - -<p> -If the object at index <code>obj</code> has a metatable and this -metatable has a field <code>e</code>, -this function calls this field passing the object as its only argument. -In this case this function returns true and pushes onto the -stack the value returned by the call. -If there is no metatable or no metamethod, -this function returns false (without pushing any value on the stack). - - - - - -<hr><h3><a name="luaL_checkany"><code>luaL_checkany</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>void luaL_checkany (lua_State *L, int arg);</pre> - -<p> -Checks whether the function has an argument -of any type (including <b>nil</b>) at position <code>arg</code>. - - - - - -<hr><h3><a name="luaL_checkint"><code>luaL_checkint</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>int luaL_checkint (lua_State *L, int arg);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a number -and returns this number cast to an <code>int</code>. - - - - - -<hr><h3><a name="luaL_checkinteger"><code>luaL_checkinteger</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>lua_Integer luaL_checkinteger (lua_State *L, int arg);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a number -and returns this number cast to a <a href="#lua_Integer"><code>lua_Integer</code></a>. - - - - - -<hr><h3><a name="luaL_checklong"><code>luaL_checklong</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>long luaL_checklong (lua_State *L, int arg);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a number -and returns this number cast to a <code>long</code>. - - - - - -<hr><h3><a name="luaL_checklstring"><code>luaL_checklstring</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>const char *luaL_checklstring (lua_State *L, int arg, size_t *l);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a string -and returns this string; -if <code>l</code> is not <code>NULL</code> fills <code>*l</code> -with the string's length. - - -<p> -This function uses <a href="#lua_tolstring"><code>lua_tolstring</code></a> to get its result, -so all conversions and caveats of that function apply here. - - - - - -<hr><h3><a name="luaL_checknumber"><code>luaL_checknumber</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>lua_Number luaL_checknumber (lua_State *L, int arg);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a number -and returns this number. - - - - - -<hr><h3><a name="luaL_checkoption"><code>luaL_checkoption</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>int luaL_checkoption (lua_State *L, - int arg, - const char *def, - const char *const lst[]);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a string and -searches for this string in the array <code>lst</code> -(which must be NULL-terminated). -Returns the index in the array where the string was found. -Raises an error if the argument is not a string or -if the string cannot be found. - - -<p> -If <code>def</code> is not <code>NULL</code>, -the function uses <code>def</code> as a default value when -there is no argument <code>arg</code> or when this argument is <b>nil</b>. - - -<p> -This is a useful function for mapping strings to C enums. -(The usual convention in Lua libraries is -to use strings instead of numbers to select options.) - - - - - -<hr><h3><a name="luaL_checkstack"><code>luaL_checkstack</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>void luaL_checkstack (lua_State *L, int sz, const char *msg);</pre> - -<p> -Grows the stack size to <code>top + sz</code> elements, -raising an error if the stack cannot grow to that size. -<code>msg</code> is an additional text to go into the error message -(or <code>NULL</code> for no additional text). - - - - - -<hr><h3><a name="luaL_checkstring"><code>luaL_checkstring</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>const char *luaL_checkstring (lua_State *L, int arg);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a string -and returns this string. - - -<p> -This function uses <a href="#lua_tolstring"><code>lua_tolstring</code></a> to get its result, -so all conversions and caveats of that function apply here. - - - - - -<hr><h3><a name="luaL_checktype"><code>luaL_checktype</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>void luaL_checktype (lua_State *L, int arg, int t);</pre> - -<p> -Checks whether the function argument <code>arg</code> has type <code>t</code>. -See <a href="#lua_type"><code>lua_type</code></a> for the encoding of types for <code>t</code>. - - - - - -<hr><h3><a name="luaL_checkudata"><code>luaL_checkudata</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>void *luaL_checkudata (lua_State *L, int arg, const char *tname);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a userdata -of the type <code>tname</code> (see <a href="#luaL_newmetatable"><code>luaL_newmetatable</code></a>) and -returns the userdata address (see <a href="#lua_touserdata"><code>lua_touserdata</code></a>). - - - - - -<hr><h3><a name="luaL_checkunsigned"><code>luaL_checkunsigned</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>lua_Unsigned luaL_checkunsigned (lua_State *L, int arg);</pre> - -<p> -Checks whether the function argument <code>arg</code> is a number -and returns this number cast to a <a href="#lua_Unsigned"><code>lua_Unsigned</code></a>. - - - - - -<hr><h3><a name="luaL_checkversion"><code>luaL_checkversion</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void luaL_checkversion (lua_State *L);</pre> - -<p> -Checks whether the core running the call, -the core that created the Lua state, -and the code making the call are all using the same version of Lua. -Also checks whether the core running the call -and the core that created the Lua state -are using the same address space. - - - - - -<hr><h3><a name="luaL_dofile"><code>luaL_dofile</code></a></h3><p> -<span class="apii">[-0, +?, <em>e</em>]</span> -<pre>int luaL_dofile (lua_State *L, const char *filename);</pre> - -<p> -Loads and runs the given file. -It is defined as the following macro: - -<pre> - (luaL_loadfile(L, filename) || lua_pcall(L, 0, LUA_MULTRET, 0)) -</pre><p> -It returns false if there are no errors -or true in case of errors. - - - - - -<hr><h3><a name="luaL_dostring"><code>luaL_dostring</code></a></h3><p> -<span class="apii">[-0, +?, –]</span> -<pre>int luaL_dostring (lua_State *L, const char *str);</pre> - -<p> -Loads and runs the given string. -It is defined as the following macro: - -<pre> - (luaL_loadstring(L, str) || lua_pcall(L, 0, LUA_MULTRET, 0)) -</pre><p> -It returns false if there are no errors -or true in case of errors. - - - - - -<hr><h3><a name="luaL_error"><code>luaL_error</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>int luaL_error (lua_State *L, const char *fmt, ...);</pre> - -<p> -Raises an error. -The error message format is given by <code>fmt</code> -plus any extra arguments, -following the same rules of <a href="#lua_pushfstring"><code>lua_pushfstring</code></a>. -It also adds at the beginning of the message the file name and -the line number where the error occurred, -if this information is available. - - -<p> -This function never returns, -but it is an idiom to use it in C functions -as <code>return luaL_error(<em>args</em>)</code>. - - - - - -<hr><h3><a name="luaL_execresult"><code>luaL_execresult</code></a></h3><p> -<span class="apii">[-0, +3, <em>e</em>]</span> -<pre>int luaL_execresult (lua_State *L, int stat);</pre> - -<p> -This function produces the return values for -process-related functions in the standard library -(<a href="#pdf-os.execute"><code>os.execute</code></a> and <a href="#pdf-io.close"><code>io.close</code></a>). - - - - - -<hr><h3><a name="luaL_fileresult"><code>luaL_fileresult</code></a></h3><p> -<span class="apii">[-0, +(1|3), <em>e</em>]</span> -<pre>int luaL_fileresult (lua_State *L, int stat, const char *fname);</pre> - -<p> -This function produces the return values for -file-related functions in the standard library -(<a href="#pdf-io.open"><code>io.open</code></a>, <a href="#pdf-os.rename"><code>os.rename</code></a>, <a href="#pdf-file:seek"><code>file:seek</code></a>, etc.). - - - - - -<hr><h3><a name="luaL_getmetafield"><code>luaL_getmetafield</code></a></h3><p> -<span class="apii">[-0, +(0|1), <em>e</em>]</span> -<pre>int luaL_getmetafield (lua_State *L, int obj, const char *e);</pre> - -<p> -Pushes onto the stack the field <code>e</code> from the metatable -of the object at index <code>obj</code>. -If the object does not have a metatable, -or if the metatable does not have this field, -returns false and pushes nothing. - - - - - -<hr><h3><a name="luaL_getmetatable"><code>luaL_getmetatable</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>void luaL_getmetatable (lua_State *L, const char *tname);</pre> - -<p> -Pushes onto the stack the metatable associated with name <code>tname</code> -in the registry (see <a href="#luaL_newmetatable"><code>luaL_newmetatable</code></a>). - - - - - -<hr><h3><a name="luaL_getsubtable"><code>luaL_getsubtable</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>int luaL_getsubtable (lua_State *L, int idx, const char *fname);</pre> - -<p> -Ensures that the value <code>t[fname]</code>, -where <code>t</code> is the value at index <code>idx</code>, -is a table, -and pushes that table onto the stack. -Returns true if it finds a previous table there -and false if it creates a new table. - - - - - -<hr><h3><a name="luaL_gsub"><code>luaL_gsub</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>const char *luaL_gsub (lua_State *L, - const char *s, - const char *p, - const char *r);</pre> - -<p> -Creates a copy of string <code>s</code> by replacing -any occurrence of the string <code>p</code> -with the string <code>r</code>. -Pushes the resulting string on the stack and returns it. - - - - - -<hr><h3><a name="luaL_len"><code>luaL_len</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>int luaL_len (lua_State *L, int index);</pre> - -<p> -Returns the "length" of the value at the given index -as a number; -it is equivalent to the '<code>#</code>' operator in Lua (see <a href="#3.4.6">§3.4.6</a>). -Raises an error if the result of the operation is not a number. -(This case only can happen through metamethods.) - - - - - -<hr><h3><a name="luaL_loadbuffer"><code>luaL_loadbuffer</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>int luaL_loadbuffer (lua_State *L, - const char *buff, - size_t sz, - const char *name);</pre> - -<p> -Equivalent to <a href="#luaL_loadbufferx"><code>luaL_loadbufferx</code></a> with <code>mode</code> equal to <code>NULL</code>. - - - - - -<hr><h3><a name="luaL_loadbufferx"><code>luaL_loadbufferx</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>int luaL_loadbufferx (lua_State *L, - const char *buff, - size_t sz, - const char *name, - const char *mode);</pre> - -<p> -Loads a buffer as a Lua chunk. -This function uses <a href="#lua_load"><code>lua_load</code></a> to load the chunk in the -buffer pointed to by <code>buff</code> with size <code>sz</code>. - - -<p> -This function returns the same results as <a href="#lua_load"><code>lua_load</code></a>. -<code>name</code> is the chunk name, -used for debug information and error messages. -The string <code>mode</code> works as in function <a href="#lua_load"><code>lua_load</code></a>. - - - - - -<hr><h3><a name="luaL_loadfile"><code>luaL_loadfile</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>int luaL_loadfile (lua_State *L, const char *filename);</pre> - -<p> -Equivalent to <a href="#luaL_loadfilex"><code>luaL_loadfilex</code></a> with <code>mode</code> equal to <code>NULL</code>. - - - - - -<hr><h3><a name="luaL_loadfilex"><code>luaL_loadfilex</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>int luaL_loadfilex (lua_State *L, const char *filename, - const char *mode);</pre> - -<p> -Loads a file as a Lua chunk. -This function uses <a href="#lua_load"><code>lua_load</code></a> to load the chunk in the file -named <code>filename</code>. -If <code>filename</code> is <code>NULL</code>, -then it loads from the standard input. -The first line in the file is ignored if it starts with a <code>#</code>. - - -<p> -The string <code>mode</code> works as in function <a href="#lua_load"><code>lua_load</code></a>. - - -<p> -This function returns the same results as <a href="#lua_load"><code>lua_load</code></a>, -but it has an extra error code <a name="pdf-LUA_ERRFILE"><code>LUA_ERRFILE</code></a> -if it cannot open/read the file or the file has a wrong mode. - - -<p> -As <a href="#lua_load"><code>lua_load</code></a>, this function only loads the chunk; -it does not run it. - - - - - -<hr><h3><a name="luaL_loadstring"><code>luaL_loadstring</code></a></h3><p> -<span class="apii">[-0, +1, –]</span> -<pre>int luaL_loadstring (lua_State *L, const char *s);</pre> - -<p> -Loads a string as a Lua chunk. -This function uses <a href="#lua_load"><code>lua_load</code></a> to load the chunk in -the zero-terminated string <code>s</code>. - - -<p> -This function returns the same results as <a href="#lua_load"><code>lua_load</code></a>. - - -<p> -Also as <a href="#lua_load"><code>lua_load</code></a>, this function only loads the chunk; -it does not run it. - - - - - -<hr><h3><a name="luaL_newlib"><code>luaL_newlib</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void luaL_newlib (lua_State *L, const luaL_Reg *l);</pre> - -<p> -Creates a new table and registers there -the functions in list <code>l</code>. -It is implemented as the following macro: - -<pre> - (luaL_newlibtable(L,l), luaL_setfuncs(L,l,0)) -</pre> - - - - -<hr><h3><a name="luaL_newlibtable"><code>luaL_newlibtable</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void luaL_newlibtable (lua_State *L, const luaL_Reg l[]);</pre> - -<p> -Creates a new table with a size optimized -to store all entries in the array <code>l</code> -(but does not actually store them). -It is intended to be used in conjunction with <a href="#luaL_setfuncs"><code>luaL_setfuncs</code></a> -(see <a href="#luaL_newlib"><code>luaL_newlib</code></a>). - - -<p> -It is implemented as a macro. -The array <code>l</code> must be the actual array, -not a pointer to it. - - - - - -<hr><h3><a name="luaL_newmetatable"><code>luaL_newmetatable</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>int luaL_newmetatable (lua_State *L, const char *tname);</pre> - -<p> -If the registry already has the key <code>tname</code>, -returns 0. -Otherwise, -creates a new table to be used as a metatable for userdata, -adds it to the registry with key <code>tname</code>, -and returns 1. - - -<p> -In both cases pushes onto the stack the final value associated -with <code>tname</code> in the registry. - - - - - -<hr><h3><a name="luaL_newstate"><code>luaL_newstate</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>lua_State *luaL_newstate (void);</pre> - -<p> -Creates a new Lua state. -It calls <a href="#lua_newstate"><code>lua_newstate</code></a> with an -allocator based on the standard C <code>realloc</code> function -and then sets a panic function (see <a href="#4.6">§4.6</a>) that prints -an error message to the standard error output in case of fatal -errors. - - -<p> -Returns the new state, -or <code>NULL</code> if there is a memory allocation error. - - - - - -<hr><h3><a name="luaL_openlibs"><code>luaL_openlibs</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>void luaL_openlibs (lua_State *L);</pre> - -<p> -Opens all standard Lua libraries into the given state. - - - - - -<hr><h3><a name="luaL_optint"><code>luaL_optint</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>int luaL_optint (lua_State *L, int arg, int d);</pre> - -<p> -If the function argument <code>arg</code> is a number, -returns this number cast to an <code>int</code>. -If this argument is absent or is <b>nil</b>, -returns <code>d</code>. -Otherwise, raises an error. - - - - - -<hr><h3><a name="luaL_optinteger"><code>luaL_optinteger</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>lua_Integer luaL_optinteger (lua_State *L, - int arg, - lua_Integer d);</pre> - -<p> -If the function argument <code>arg</code> is a number, -returns this number cast to a <a href="#lua_Integer"><code>lua_Integer</code></a>. -If this argument is absent or is <b>nil</b>, -returns <code>d</code>. -Otherwise, raises an error. - - - - - -<hr><h3><a name="luaL_optlong"><code>luaL_optlong</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>long luaL_optlong (lua_State *L, int arg, long d);</pre> - -<p> -If the function argument <code>arg</code> is a number, -returns this number cast to a <code>long</code>. -If this argument is absent or is <b>nil</b>, -returns <code>d</code>. -Otherwise, raises an error. - - - - - -<hr><h3><a name="luaL_optlstring"><code>luaL_optlstring</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>const char *luaL_optlstring (lua_State *L, - int arg, - const char *d, - size_t *l);</pre> - -<p> -If the function argument <code>arg</code> is a string, -returns this string. -If this argument is absent or is <b>nil</b>, -returns <code>d</code>. -Otherwise, raises an error. - - -<p> -If <code>l</code> is not <code>NULL</code>, -fills the position <code>*l</code> with the result's length. - - - - - -<hr><h3><a name="luaL_optnumber"><code>luaL_optnumber</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>lua_Number luaL_optnumber (lua_State *L, int arg, lua_Number d);</pre> - -<p> -If the function argument <code>arg</code> is a number, -returns this number. -If this argument is absent or is <b>nil</b>, -returns <code>d</code>. -Otherwise, raises an error. - - - - - -<hr><h3><a name="luaL_optstring"><code>luaL_optstring</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>const char *luaL_optstring (lua_State *L, - int arg, - const char *d);</pre> - -<p> -If the function argument <code>arg</code> is a string, -returns this string. -If this argument is absent or is <b>nil</b>, -returns <code>d</code>. -Otherwise, raises an error. - - - - - -<hr><h3><a name="luaL_optunsigned"><code>luaL_optunsigned</code></a></h3><p> -<span class="apii">[-0, +0, <em>v</em>]</span> -<pre>lua_Unsigned luaL_optunsigned (lua_State *L, - int arg, - lua_Unsigned u);</pre> - -<p> -If the function argument <code>arg</code> is a number, -returns this number cast to a <a href="#lua_Unsigned"><code>lua_Unsigned</code></a>. -If this argument is absent or is <b>nil</b>, -returns <code>u</code>. -Otherwise, raises an error. - - - - - -<hr><h3><a name="luaL_prepbuffer"><code>luaL_prepbuffer</code></a></h3><p> -<span class="apii">[-?, +?, <em>e</em>]</span> -<pre>char *luaL_prepbuffer (luaL_Buffer *B);</pre> - -<p> -Equivalent to <a href="#luaL_prepbuffsize"><code>luaL_prepbuffsize</code></a> -with the predefined size <a name="pdf-LUAL_BUFFERSIZE"><code>LUAL_BUFFERSIZE</code></a>. - - - - - -<hr><h3><a name="luaL_prepbuffsize"><code>luaL_prepbuffsize</code></a></h3><p> -<span class="apii">[-?, +?, <em>e</em>]</span> -<pre>char *luaL_prepbuffsize (luaL_Buffer *B, size_t sz);</pre> - -<p> -Returns an address to a space of size <code>sz</code> -where you can copy a string to be added to buffer <code>B</code> -(see <a href="#luaL_Buffer"><code>luaL_Buffer</code></a>). -After copying the string into this space you must call -<a href="#luaL_addsize"><code>luaL_addsize</code></a> with the size of the string to actually add -it to the buffer. - - - - - -<hr><h3><a name="luaL_pushresult"><code>luaL_pushresult</code></a></h3><p> -<span class="apii">[-?, +1, <em>e</em>]</span> -<pre>void luaL_pushresult (luaL_Buffer *B);</pre> - -<p> -Finishes the use of buffer <code>B</code> leaving the final string on -the top of the stack. - - - - - -<hr><h3><a name="luaL_pushresultsize"><code>luaL_pushresultsize</code></a></h3><p> -<span class="apii">[-?, +1, <em>e</em>]</span> -<pre>void luaL_pushresultsize (luaL_Buffer *B, size_t sz);</pre> - -<p> -Equivalent to the sequence <a href="#luaL_addsize"><code>luaL_addsize</code></a>, <a href="#luaL_pushresult"><code>luaL_pushresult</code></a>. - - - - - -<hr><h3><a name="luaL_ref"><code>luaL_ref</code></a></h3><p> -<span class="apii">[-1, +0, <em>e</em>]</span> -<pre>int luaL_ref (lua_State *L, int t);</pre> - -<p> -Creates and returns a <em>reference</em>, -in the table at index <code>t</code>, -for the object at the top of the stack (and pops the object). - - -<p> -A reference is a unique integer key. -As long as you do not manually add integer keys into table <code>t</code>, -<a href="#luaL_ref"><code>luaL_ref</code></a> ensures the uniqueness of the key it returns. -You can retrieve an object referred by reference <code>r</code> -by calling <code>lua_rawgeti(L, t, r)</code>. -Function <a href="#luaL_unref"><code>luaL_unref</code></a> frees a reference and its associated object. - - -<p> -If the object at the top of the stack is <b>nil</b>, -<a href="#luaL_ref"><code>luaL_ref</code></a> returns the constant <a name="pdf-LUA_REFNIL"><code>LUA_REFNIL</code></a>. -The constant <a name="pdf-LUA_NOREF"><code>LUA_NOREF</code></a> is guaranteed to be different -from any reference returned by <a href="#luaL_ref"><code>luaL_ref</code></a>. - - - - - -<hr><h3><a name="luaL_Reg"><code>luaL_Reg</code></a></h3> -<pre>typedef struct luaL_Reg { - const char *name; - lua_CFunction func; -} luaL_Reg;</pre> - -<p> -Type for arrays of functions to be registered by -<a href="#luaL_setfuncs"><code>luaL_setfuncs</code></a>. -<code>name</code> is the function name and <code>func</code> is a pointer to -the function. -Any array of <a href="#luaL_Reg"><code>luaL_Reg</code></a> must end with an sentinel entry -in which both <code>name</code> and <code>func</code> are <code>NULL</code>. - - - - - -<hr><h3><a name="luaL_requiref"><code>luaL_requiref</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void luaL_requiref (lua_State *L, const char *modname, - lua_CFunction openf, int glb);</pre> - -<p> -Calls function <code>openf</code> with string <code>modname</code> as an argument -and sets the call result in <code>package.loaded[modname]</code>, -as if that function has been called through <a href="#pdf-require"><code>require</code></a>. - - -<p> -If <code>glb</code> is true, -also stores the result into global <code>modname</code>. - - -<p> -Leaves a copy of that result on the stack. - - - - - -<hr><h3><a name="luaL_setfuncs"><code>luaL_setfuncs</code></a></h3><p> -<span class="apii">[-nup, +0, <em>e</em>]</span> -<pre>void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup);</pre> - -<p> -Registers all functions in the array <code>l</code> -(see <a href="#luaL_Reg"><code>luaL_Reg</code></a>) into the table on the top of the stack -(below optional upvalues, see next). - - -<p> -When <code>nup</code> is not zero, -all functions are created sharing <code>nup</code> upvalues, -which must be previously pushed on the stack -on top of the library table. -These values are popped from the stack after the registration. - - - - - -<hr><h3><a name="luaL_setmetatable"><code>luaL_setmetatable</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void luaL_setmetatable (lua_State *L, const char *tname);</pre> - -<p> -Sets the metatable of the object at the top of the stack -as the metatable associated with name <code>tname</code> -in the registry (see <a href="#luaL_newmetatable"><code>luaL_newmetatable</code></a>). - - - - - -<hr><h3><a name="luaL_testudata"><code>luaL_testudata</code></a></h3><p> -<span class="apii">[-0, +0, <em>e</em>]</span> -<pre>void *luaL_testudata (lua_State *L, int arg, const char *tname);</pre> - -<p> -This function works like <a href="#luaL_checkudata"><code>luaL_checkudata</code></a>, -except that, when the test fails, -it returns <code>NULL</code> instead of throwing an error. - - - - - -<hr><h3><a name="luaL_tolstring"><code>luaL_tolstring</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>const char *luaL_tolstring (lua_State *L, int idx, size_t *len);</pre> - -<p> -Converts any Lua value at the given index to a C string -in a reasonable format. -The resulting string is pushed onto the stack and also -returned by the function. -If <code>len</code> is not <code>NULL</code>, -the function also sets <code>*len</code> with the string length. - - -<p> -If the value has a metatable with a <code>"__tostring"</code> field, -then <code>luaL_tolstring</code> calls the corresponding metamethod -with the value as argument, -and uses the result of the call as its result. - - - - - -<hr><h3><a name="luaL_traceback"><code>luaL_traceback</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void luaL_traceback (lua_State *L, lua_State *L1, const char *msg, - int level);</pre> - -<p> -Creates and pushes a traceback of the stack <code>L1</code>. -If <code>msg</code> is not <code>NULL</code> it is appended -at the beginning of the traceback. -The <code>level</code> parameter tells at which level -to start the traceback. - - - - - -<hr><h3><a name="luaL_typename"><code>luaL_typename</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>const char *luaL_typename (lua_State *L, int index);</pre> - -<p> -Returns the name of the type of the value at the given index. - - - - - -<hr><h3><a name="luaL_unref"><code>luaL_unref</code></a></h3><p> -<span class="apii">[-0, +0, –]</span> -<pre>void luaL_unref (lua_State *L, int t, int ref);</pre> - -<p> -Releases reference <code>ref</code> from the table at index <code>t</code> -(see <a href="#luaL_ref"><code>luaL_ref</code></a>). -The entry is removed from the table, -so that the referred object can be collected. -The reference <code>ref</code> is also freed to be used again. - - -<p> -If <code>ref</code> is <a href="#pdf-LUA_NOREF"><code>LUA_NOREF</code></a> or <a href="#pdf-LUA_REFNIL"><code>LUA_REFNIL</code></a>, -<a href="#luaL_unref"><code>luaL_unref</code></a> does nothing. - - - - - -<hr><h3><a name="luaL_where"><code>luaL_where</code></a></h3><p> -<span class="apii">[-0, +1, <em>e</em>]</span> -<pre>void luaL_where (lua_State *L, int lvl);</pre> - -<p> -Pushes onto the stack a string identifying the current position -of the control at level <code>lvl</code> in the call stack. -Typically this string has the following format: - -<pre> - <em>chunkname</em>:<em>currentline</em>: -</pre><p> -Level 0 is the running function, -level 1 is the function that called the running function, -etc. - - -<p> -This function is used to build a prefix for error messages. - - - - - - - -<h1>6 – <a name="6">Standard Libraries</a></h1> - -<p> -The standard Lua libraries provide useful functions -that are implemented directly through the C API. -Some of these functions provide essential services to the language -(e.g., <a href="#pdf-type"><code>type</code></a> and <a href="#pdf-getmetatable"><code>getmetatable</code></a>); -others provide access to "outside" services (e.g., I/O); -and others could be implemented in Lua itself, -but are quite useful or have critical performance requirements that -deserve an implementation in C (e.g., <a href="#pdf-table.sort"><code>table.sort</code></a>). - - -<p> -All libraries are implemented through the official C API -and are provided as separate C modules. -Currently, Lua has the following standard libraries: - -<ul> - -<li>basic library (<a href="#6.1">§6.1</a>);</li> - -<li>coroutine library (<a href="#6.2">§6.2</a>);</li> - -<li>package library (<a href="#6.3">§6.3</a>);</li> - -<li>string manipulation (<a href="#6.4">§6.4</a>);</li> - -<li>table manipulation (<a href="#6.5">§6.5</a>);</li> - -<li>mathematical functions (<a href="#6.6">§6.6</a>) (sin, log, etc.);</li> - -<li>bitwise operations (<a href="#6.7">§6.7</a>);</li> - -<li>input and output (<a href="#6.8">§6.8</a>);</li> - -<li>operating system facilities (<a href="#6.9">§6.9</a>);</li> - -<li>debug facilities (<a href="#6.10">§6.10</a>).</li> - -</ul><p> -Except for the basic and the package libraries, -each library provides all its functions as fields of a global table -or as methods of its objects. - - -<p> -To have access to these libraries, -the C host program should call the <a href="#luaL_openlibs"><code>luaL_openlibs</code></a> function, -which opens all standard libraries. -Alternatively, -the host program can open them individually by using -<a href="#luaL_requiref"><code>luaL_requiref</code></a> to call -<a name="pdf-luaopen_base"><code>luaopen_base</code></a> (for the basic library), -<a name="pdf-luaopen_package"><code>luaopen_package</code></a> (for the package library), -<a name="pdf-luaopen_coroutine"><code>luaopen_coroutine</code></a> (for the coroutine library), -<a name="pdf-luaopen_string"><code>luaopen_string</code></a> (for the string library), -<a name="pdf-luaopen_table"><code>luaopen_table</code></a> (for the table library), -<a name="pdf-luaopen_math"><code>luaopen_math</code></a> (for the mathematical library), -<a name="pdf-luaopen_bit32"><code>luaopen_bit32</code></a> (for the bit library), -<a name="pdf-luaopen_io"><code>luaopen_io</code></a> (for the I/O library), -<a name="pdf-luaopen_os"><code>luaopen_os</code></a> (for the Operating System library), -and <a name="pdf-luaopen_debug"><code>luaopen_debug</code></a> (for the debug library). -These functions are declared in <a name="pdf-lualib.h"><code>lualib.h</code></a>. - - - -<h2>6.1 – <a name="6.1">Basic Functions</a></h2> - -<p> -The basic library provides core functions to Lua. -If you do not include this library in your application, -you should check carefully whether you need to provide -implementations for some of its facilities. - - -<p> -<hr><h3><a name="pdf-assert"><code>assert (v [, message])</code></a></h3> -Issues an error when -the value of its argument <code>v</code> is false (i.e., <b>nil</b> or <b>false</b>); -otherwise, returns all its arguments. -<code>message</code> is an error message; -when absent, it defaults to "assertion failed!" - - - - -<p> -<hr><h3><a name="pdf-collectgarbage"><code>collectgarbage ([opt [, arg]])</code></a></h3> - - -<p> -This function is a generic interface to the garbage collector. -It performs different functions according to its first argument, <code>opt</code>: - -<ul> - -<li><b>"<code>collect</code>": </b> -performs a full garbage-collection cycle. -This is the default option. -</li> - -<li><b>"<code>stop</code>": </b> -stops automatic execution of the garbage collector. -The collector will run only when explicitly invoked, -until a call to restart it. -</li> - -<li><b>"<code>restart</code>": </b> -restarts automatic execution of the garbage collector. -</li> - -<li><b>"<code>count</code>": </b> -returns the total memory in use by Lua (in Kbytes) and -a second value with the total memory in bytes modulo 1024. -The first value has a fractional part, -so the following equality is always true: - -<pre> - k, b = collectgarbage("count") - assert(k*1024 == math.floor(k)*1024 + b) -</pre><p> -(The second result is useful when Lua is compiled -with a non floating-point type for numbers.) -</li> - -<li><b>"<code>step</code>": </b> -performs a garbage-collection step. -The step "size" is controlled by <code>arg</code> -(larger values mean more steps) in a non-specified way. -If you want to control the step size -you must experimentally tune the value of <code>arg</code>. -Returns <b>true</b> if the step finished a collection cycle. -</li> - -<li><b>"<code>setpause</code>": </b> -sets <code>arg</code> as the new value for the <em>pause</em> of -the collector (see <a href="#2.5">§2.5</a>). -Returns the previous value for <em>pause</em>. -</li> - -<li><b>"<code>setstepmul</code>": </b> -sets <code>arg</code> as the new value for the <em>step multiplier</em> of -the collector (see <a href="#2.5">§2.5</a>). -Returns the previous value for <em>step</em>. -</li> - -<li><b>"<code>isrunning</code>": </b> -returns a boolean that tells whether the collector is running -(i.e., not stopped). -</li> - -<li><b>"<code>generational</code>": </b> -changes the collector to generational mode. -This is an experimental feature (see <a href="#2.5">§2.5</a>). -</li> - -<li><b>"<code>incremental</code>": </b> -changes the collector to incremental mode. -This is the default mode. -</li> - -</ul> - - - -<p> -<hr><h3><a name="pdf-dofile"><code>dofile ([filename])</code></a></h3> -Opens the named file and executes its contents as a Lua chunk. -When called without arguments, -<code>dofile</code> executes the contents of the standard input (<code>stdin</code>). -Returns all values returned by the chunk. -In case of errors, <code>dofile</code> propagates the error -to its caller (that is, <code>dofile</code> does not run in protected mode). - - - - -<p> -<hr><h3><a name="pdf-error"><code>error (message [, level])</code></a></h3> -Terminates the last protected function called -and returns <code>message</code> as the error message. -Function <code>error</code> never returns. - - -<p> -Usually, <code>error</code> adds some information about the error position -at the beginning of the message, if the message is a string. -The <code>level</code> argument specifies how to get the error position. -With level 1 (the default), the error position is where the -<code>error</code> function was called. -Level 2 points the error to where the function -that called <code>error</code> was called; and so on. -Passing a level 0 avoids the addition of error position information -to the message. - - - - -<p> -<hr><h3><a name="pdf-_G"><code>_G</code></a></h3> -A global variable (not a function) that -holds the global environment (see <a href="#2.2">§2.2</a>). -Lua itself does not use this variable; -changing its value does not affect any environment, -nor vice-versa. - - - - -<p> -<hr><h3><a name="pdf-getmetatable"><code>getmetatable (object)</code></a></h3> - - -<p> -If <code>object</code> does not have a metatable, returns <b>nil</b>. -Otherwise, -if the object's metatable has a <code>"__metatable"</code> field, -returns the associated value. -Otherwise, returns the metatable of the given object. - - - - -<p> -<hr><h3><a name="pdf-ipairs"><code>ipairs (t)</code></a></h3> - - -<p> -If <code>t</code> has a metamethod <code>__ipairs</code>, -calls it with <code>t</code> as argument and returns the first three -results from the call. - - -<p> -Otherwise, -returns three values: an iterator function, the table <code>t</code>, and 0, -so that the construction - -<pre> - for i,v in ipairs(t) do <em>body</em> end -</pre><p> -will iterate over the pairs (<code>1,t[1]</code>), (<code>2,t[2]</code>), ..., -up to the first integer key absent from the table. - - - - -<p> -<hr><h3><a name="pdf-load"><code>load (ld [, source [, mode [, env]]])</code></a></h3> - - -<p> -Loads a chunk. - - -<p> -If <code>ld</code> is a string, the chunk is this string. -If <code>ld</code> is a function, -<code>load</code> calls it repeatedly to get the chunk pieces. -Each call to <code>ld</code> must return a string that concatenates -with previous results. -A return of an empty string, <b>nil</b>, or no value signals the end of the chunk. - - -<p> -If there are no syntactic errors, -returns the compiled chunk as a function; -otherwise, returns <b>nil</b> plus the error message. - - -<p> -If the resulting function has upvalues, -the first upvalue is set to the value of <code>env</code>, -if that parameter is given, -or to the value of the global environment. -(When you load a main chunk, -the resulting function will always have exactly one upvalue, -the <code>_ENV</code> variable (see <a href="#2.2">§2.2</a>). -When you load a binary chunk created from a function (see <a href="#pdf-string.dump"><code>string.dump</code></a>), -the resulting function can have arbitrary upvalues.) - - -<p> -<code>source</code> is used as the source of the chunk for error messages -and debug information (see <a href="#4.9">§4.9</a>). -When absent, -it defaults to <code>ld</code>, if <code>ld</code> is a string, -or to "<code>=(load)</code>" otherwise. - - -<p> -The string <code>mode</code> controls whether the chunk can be text or binary -(that is, a precompiled chunk). -It may be the string "<code>b</code>" (only binary chunks), -"<code>t</code>" (only text chunks), -or "<code>bt</code>" (both binary and text). -The default is "<code>bt</code>". - - - - -<p> -<hr><h3><a name="pdf-loadfile"><code>loadfile ([filename [, mode [, env]]])</code></a></h3> - - -<p> -Similar to <a href="#pdf-load"><code>load</code></a>, -but gets the chunk from file <code>filename</code> -or from the standard input, -if no file name is given. - - - - -<p> -<hr><h3><a name="pdf-next"><code>next (table [, index])</code></a></h3> - - -<p> -Allows a program to traverse all fields of a table. -Its first argument is a table and its second argument -is an index in this table. -<code>next</code> returns the next index of the table -and its associated value. -When called with <b>nil</b> as its second argument, -<code>next</code> returns an initial index -and its associated value. -When called with the last index, -or with <b>nil</b> in an empty table, -<code>next</code> returns <b>nil</b>. -If the second argument is absent, then it is interpreted as <b>nil</b>. -In particular, -you can use <code>next(t)</code> to check whether a table is empty. - - -<p> -The order in which the indices are enumerated is not specified, -<em>even for numeric indices</em>. -(To traverse a table in numeric order, -use a numerical <b>for</b>.) - - -<p> -The behavior of <code>next</code> is undefined if, -during the traversal, -you assign any value to a non-existent field in the table. -You may however modify existing fields. -In particular, you may clear existing fields. - - - - -<p> -<hr><h3><a name="pdf-pairs"><code>pairs (t)</code></a></h3> - - -<p> -If <code>t</code> has a metamethod <code>__pairs</code>, -calls it with <code>t</code> as argument and returns the first three -results from the call. - - -<p> -Otherwise, -returns three values: the <a href="#pdf-next"><code>next</code></a> function, the table <code>t</code>, and <b>nil</b>, -so that the construction - -<pre> - for k,v in pairs(t) do <em>body</em> end -</pre><p> -will iterate over all key–value pairs of table <code>t</code>. - - -<p> -See function <a href="#pdf-next"><code>next</code></a> for the caveats of modifying -the table during its traversal. - - - - -<p> -<hr><h3><a name="pdf-pcall"><code>pcall (f [, arg1, ···])</code></a></h3> - - -<p> -Calls function <code>f</code> with -the given arguments in <em>protected mode</em>. -This means that any error inside <code>f</code> is not propagated; -instead, <code>pcall</code> catches the error -and returns a status code. -Its first result is the status code (a boolean), -which is true if the call succeeds without errors. -In such case, <code>pcall</code> also returns all results from the call, -after this first result. -In case of any error, <code>pcall</code> returns <b>false</b> plus the error message. - - - - -<p> -<hr><h3><a name="pdf-print"><code>print (···)</code></a></h3> -Receives any number of arguments -and prints their values to <code>stdout</code>, -using the <a href="#pdf-tostring"><code>tostring</code></a> function to convert each argument to a string. -<code>print</code> is not intended for formatted output, -but only as a quick way to show a value, -for instance for debugging. -For complete control over the output, -use <a href="#pdf-string.format"><code>string.format</code></a> and <a href="#pdf-io.write"><code>io.write</code></a>. - - - - -<p> -<hr><h3><a name="pdf-rawequal"><code>rawequal (v1, v2)</code></a></h3> -Checks whether <code>v1</code> is equal to <code>v2</code>, -without invoking any metamethod. -Returns a boolean. - - - - -<p> -<hr><h3><a name="pdf-rawget"><code>rawget (table, index)</code></a></h3> -Gets the real value of <code>table[index]</code>, -without invoking any metamethod. -<code>table</code> must be a table; -<code>index</code> may be any value. - - - - -<p> -<hr><h3><a name="pdf-rawlen"><code>rawlen (v)</code></a></h3> -Returns the length of the object <code>v</code>, -which must be a table or a string, -without invoking any metamethod. -Returns an integer number. - - - - -<p> -<hr><h3><a name="pdf-rawset"><code>rawset (table, index, value)</code></a></h3> -Sets the real value of <code>table[index]</code> to <code>value</code>, -without invoking any metamethod. -<code>table</code> must be a table, -<code>index</code> any value different from <b>nil</b> and NaN, -and <code>value</code> any Lua value. - - -<p> -This function returns <code>table</code>. - - - - -<p> -<hr><h3><a name="pdf-select"><code>select (index, ···)</code></a></h3> - - -<p> -If <code>index</code> is a number, -returns all arguments after argument number <code>index</code>; -a negative number indexes from the end (-1 is the last argument). -Otherwise, <code>index</code> must be the string <code>"#"</code>, -and <code>select</code> returns the total number of extra arguments it received. - - - - -<p> -<hr><h3><a name="pdf-setmetatable"><code>setmetatable (table, metatable)</code></a></h3> - - -<p> -Sets the metatable for the given table. -(You cannot change the metatable of other types from Lua, only from C.) -If <code>metatable</code> is <b>nil</b>, -removes the metatable of the given table. -If the original metatable has a <code>"__metatable"</code> field, -raises an error. - - -<p> -This function returns <code>table</code>. - - - - -<p> -<hr><h3><a name="pdf-tonumber"><code>tonumber (e [, base])</code></a></h3> - - -<p> -When called with no <code>base</code>, -<code>tonumber</code> tries to convert its argument to a number. -If the argument is already a number or -a string convertible to a number (see <a href="#3.4.2">§3.4.2</a>), -then <code>tonumber</code> returns this number; -otherwise, it returns <b>nil</b>. - - -<p> -When called with <code>base</code>, -then <code>e</code> should be a string to be interpreted as -an integer numeral in that base. -The base may be any integer between 2 and 36, inclusive. -In bases above 10, the letter '<code>A</code>' (in either upper or lower case) -represents 10, '<code>B</code>' represents 11, and so forth, -with '<code>Z</code>' representing 35. -If the string <code>e</code> is not a valid numeral in the given base, -the function returns <b>nil</b>. - - - - -<p> -<hr><h3><a name="pdf-tostring"><code>tostring (v)</code></a></h3> -Receives a value of any type and -converts it to a string in a reasonable format. -(For complete control of how numbers are converted, -use <a href="#pdf-string.format"><code>string.format</code></a>.) - - -<p> -If the metatable of <code>v</code> has a <code>"__tostring"</code> field, -then <code>tostring</code> calls the corresponding value -with <code>v</code> as argument, -and uses the result of the call as its result. - - - - -<p> -<hr><h3><a name="pdf-type"><code>type (v)</code></a></h3> -Returns the type of its only argument, coded as a string. -The possible results of this function are -"<code>nil</code>" (a string, not the value <b>nil</b>), -"<code>number</code>", -"<code>string</code>", -"<code>boolean</code>", -"<code>table</code>", -"<code>function</code>", -"<code>thread</code>", -and "<code>userdata</code>". - - - - -<p> -<hr><h3><a name="pdf-_VERSION"><code>_VERSION</code></a></h3> -A global variable (not a function) that -holds a string containing the current interpreter version. -The current contents of this variable is "<code>Lua 5.2</code>". - - - - -<p> -<hr><h3><a name="pdf-xpcall"><code>xpcall (f, msgh [, arg1, ···])</code></a></h3> - - -<p> -This function is similar to <a href="#pdf-pcall"><code>pcall</code></a>, -except that it sets a new message handler <code>msgh</code>. - - - - - - - -<h2>6.2 – <a name="6.2">Coroutine Manipulation</a></h2> - -<p> -The operations related to coroutines comprise a sub-library of -the basic library and come inside the table <a name="pdf-coroutine"><code>coroutine</code></a>. -See <a href="#2.6">§2.6</a> for a general description of coroutines. - - -<p> -<hr><h3><a name="pdf-coroutine.create"><code>coroutine.create (f)</code></a></h3> - - -<p> -Creates a new coroutine, with body <code>f</code>. -<code>f</code> must be a Lua function. -Returns this new coroutine, -an object with type <code>"thread"</code>. - - - - -<p> -<hr><h3><a name="pdf-coroutine.resume"><code>coroutine.resume (co [, val1, ···])</code></a></h3> - - -<p> -Starts or continues the execution of coroutine <code>co</code>. -The first time you resume a coroutine, -it starts running its body. -The values <code>val1</code>, ... are passed -as the arguments to the body function. -If the coroutine has yielded, -<code>resume</code> restarts it; -the values <code>val1</code>, ... are passed -as the results from the yield. - - -<p> -If the coroutine runs without any errors, -<code>resume</code> returns <b>true</b> plus any values passed to <code>yield</code> -(if the coroutine yields) or any values returned by the body function -(if the coroutine terminates). -If there is any error, -<code>resume</code> returns <b>false</b> plus the error message. - - - - -<p> -<hr><h3><a name="pdf-coroutine.running"><code>coroutine.running ()</code></a></h3> - - -<p> -Returns the running coroutine plus a boolean, -true when the running coroutine is the main one. - - - - -<p> -<hr><h3><a name="pdf-coroutine.status"><code>coroutine.status (co)</code></a></h3> - - -<p> -Returns the status of coroutine <code>co</code>, as a string: -<code>"running"</code>, -if the coroutine is running (that is, it called <code>status</code>); -<code>"suspended"</code>, if the coroutine is suspended in a call to <code>yield</code>, -or if it has not started running yet; -<code>"normal"</code> if the coroutine is active but not running -(that is, it has resumed another coroutine); -and <code>"dead"</code> if the coroutine has finished its body function, -or if it has stopped with an error. - - - - -<p> -<hr><h3><a name="pdf-coroutine.wrap"><code>coroutine.wrap (f)</code></a></h3> - - -<p> -Creates a new coroutine, with body <code>f</code>. -<code>f</code> must be a Lua function. -Returns a function that resumes the coroutine each time it is called. -Any arguments passed to the function behave as the -extra arguments to <code>resume</code>. -Returns the same values returned by <code>resume</code>, -except the first boolean. -In case of error, propagates the error. - - - - -<p> -<hr><h3><a name="pdf-coroutine.yield"><code>coroutine.yield (···)</code></a></h3> - - -<p> -Suspends the execution of the calling coroutine. -Any arguments to <code>yield</code> are passed as extra results to <code>resume</code>. - - - - - - - -<h2>6.3 – <a name="6.3">Modules</a></h2> - -<p> -The package library provides basic -facilities for loading modules in Lua. -It exports one function directly in the global environment: -<a href="#pdf-require"><code>require</code></a>. -Everything else is exported in a table <a name="pdf-package"><code>package</code></a>. - - -<p> -<hr><h3><a name="pdf-require"><code>require (modname)</code></a></h3> - - -<p> -Loads the given module. -The function starts by looking into the <a href="#pdf-package.loaded"><code>package.loaded</code></a> table -to determine whether <code>modname</code> is already loaded. -If it is, then <code>require</code> returns the value stored -at <code>package.loaded[modname]</code>. -Otherwise, it tries to find a <em>loader</em> for the module. - - -<p> -To find a loader, -<code>require</code> is guided by the <a href="#pdf-package.searchers"><code>package.searchers</code></a> sequence. -By changing this sequence, -we can change how <code>require</code> looks for a module. -The following explanation is based on the default configuration -for <a href="#pdf-package.searchers"><code>package.searchers</code></a>. - - -<p> -First <code>require</code> queries <code>package.preload[modname]</code>. -If it has a value, -this value (which should be a function) is the loader. -Otherwise <code>require</code> searches for a Lua loader using the -path stored in <a href="#pdf-package.path"><code>package.path</code></a>. -If that also fails, it searches for a C loader using the -path stored in <a href="#pdf-package.cpath"><code>package.cpath</code></a>. -If that also fails, -it tries an <em>all-in-one</em> loader (see <a href="#pdf-package.searchers"><code>package.searchers</code></a>). - - -<p> -Once a loader is found, -<code>require</code> calls the loader with two arguments: -<code>modname</code> and an extra value dependent on how it got the loader. -(If the loader came from a file, -this extra value is the file name.) -If the loader returns any non-nil value, -<code>require</code> assigns the returned value to <code>package.loaded[modname]</code>. -If the loader does not return a non-nil value and -has not assigned any value to <code>package.loaded[modname]</code>, -then <code>require</code> assigns <b>true</b> to this entry. -In any case, <code>require</code> returns the -final value of <code>package.loaded[modname]</code>. - - -<p> -If there is any error loading or running the module, -or if it cannot find any loader for the module, -then <code>require</code> raises an error. - - - - -<p> -<hr><h3><a name="pdf-package.config"><code>package.config</code></a></h3> - - -<p> -A string describing some compile-time configurations for packages. -This string is a sequence of lines: - -<ul> - -<li>The first line is the directory separator string. -Default is '<code>\</code>' for Windows and '<code>/</code>' for all other systems.</li> - -<li>The second line is the character that separates templates in a path. -Default is '<code>;</code>'.</li> - -<li>The third line is the string that marks the -substitution points in a template. -Default is '<code>?</code>'.</li> - -<li>The fourth line is a string that, in a path in Windows, -is replaced by the executable's directory. -Default is '<code>!</code>'.</li> - -<li>The fifth line is a mark to ignore all text before it -when building the <code>luaopen_</code> function name. -Default is '<code>-</code>'.</li> - -</ul> - - - -<p> -<hr><h3><a name="pdf-package.cpath"><code>package.cpath</code></a></h3> - - -<p> -The path used by <a href="#pdf-require"><code>require</code></a> to search for a C loader. - - -<p> -Lua initializes the C path <a href="#pdf-package.cpath"><code>package.cpath</code></a> in the same way -it initializes the Lua path <a href="#pdf-package.path"><code>package.path</code></a>, -using the environment variable <a name="pdf-LUA_CPATH_5_2"><code>LUA_CPATH_5_2</code></a> -or the environment variable <a name="pdf-LUA_CPATH"><code>LUA_CPATH</code></a> -or a default path defined in <code>luaconf.h</code>. - - - - -<p> -<hr><h3><a name="pdf-package.loaded"><code>package.loaded</code></a></h3> - - -<p> -A table used by <a href="#pdf-require"><code>require</code></a> to control which -modules are already loaded. -When you require a module <code>modname</code> and -<code>package.loaded[modname]</code> is not false, -<a href="#pdf-require"><code>require</code></a> simply returns the value stored there. - - -<p> -This variable is only a reference to the real table; -assignments to this variable do not change the -table used by <a href="#pdf-require"><code>require</code></a>. - - - - -<p> -<hr><h3><a name="pdf-package.loadlib"><code>package.loadlib (libname, funcname)</code></a></h3> - - -<p> -Dynamically links the host program with the C library <code>libname</code>. - - -<p> -If <code>funcname</code> is "<code>*</code>", -then it only links with the library, -making the symbols exported by the library -available to other dynamically linked libraries. -Otherwise, -it looks for a function <code>funcname</code> inside the library -and returns this function as a C function. -So, <code>funcname</code> must follow the <a href="#lua_CFunction"><code>lua_CFunction</code></a> prototype -(see <a href="#lua_CFunction"><code>lua_CFunction</code></a>). - - -<p> -This is a low-level function. -It completely bypasses the package and module system. -Unlike <a href="#pdf-require"><code>require</code></a>, -it does not perform any path searching and -does not automatically adds extensions. -<code>libname</code> must be the complete file name of the C library, -including if necessary a path and an extension. -<code>funcname</code> must be the exact name exported by the C library -(which may depend on the C compiler and linker used). - - -<p> -This function is not supported by Standard C. -As such, it is only available on some platforms -(Windows, Linux, Mac OS X, Solaris, BSD, -plus other Unix systems that support the <code>dlfcn</code> standard). - - - - -<p> -<hr><h3><a name="pdf-package.path"><code>package.path</code></a></h3> - - -<p> -The path used by <a href="#pdf-require"><code>require</code></a> to search for a Lua loader. - - -<p> -At start-up, Lua initializes this variable with -the value of the environment variable <a name="pdf-LUA_PATH_5_2"><code>LUA_PATH_5_2</code></a> or -the environment variable <a name="pdf-LUA_PATH"><code>LUA_PATH</code></a> or -with a default path defined in <code>luaconf.h</code>, -if those environment variables are not defined. -Any "<code>;;</code>" in the value of the environment variable -is replaced by the default path. - - - - -<p> -<hr><h3><a name="pdf-package.preload"><code>package.preload</code></a></h3> - - -<p> -A table to store loaders for specific modules -(see <a href="#pdf-require"><code>require</code></a>). - - -<p> -This variable is only a reference to the real table; -assignments to this variable do not change the -table used by <a href="#pdf-require"><code>require</code></a>. - - - - -<p> -<hr><h3><a name="pdf-package.searchers"><code>package.searchers</code></a></h3> - - -<p> -A table used by <a href="#pdf-require"><code>require</code></a> to control how to load modules. - - -<p> -Each entry in this table is a <em>searcher function</em>. -When looking for a module, -<a href="#pdf-require"><code>require</code></a> calls each of these searchers in ascending order, -with the module name (the argument given to <a href="#pdf-require"><code>require</code></a>) as its -sole parameter. -The function can return another function (the module <em>loader</em>) -plus an extra value that will be passed to that loader, -or a string explaining why it did not find that module -(or <b>nil</b> if it has nothing to say). - - -<p> -Lua initializes this table with four searcher functions. - - -<p> -The first searcher simply looks for a loader in the -<a href="#pdf-package.preload"><code>package.preload</code></a> table. - - -<p> -The second searcher looks for a loader as a Lua library, -using the path stored at <a href="#pdf-package.path"><code>package.path</code></a>. -The search is done as described in function <a href="#pdf-package.searchpath"><code>package.searchpath</code></a>. - - -<p> -The third searcher looks for a loader as a C library, -using the path given by the variable <a href="#pdf-package.cpath"><code>package.cpath</code></a>. -Again, -the search is done as described in function <a href="#pdf-package.searchpath"><code>package.searchpath</code></a>. -For instance, -if the C path is the string - -<pre> - "./?.so;./?.dll;/usr/local/?/init.so" -</pre><p> -the searcher for module <code>foo</code> -will try to open the files <code>./foo.so</code>, <code>./foo.dll</code>, -and <code>/usr/local/foo/init.so</code>, in that order. -Once it finds a C library, -this searcher first uses a dynamic link facility to link the -application with the library. -Then it tries to find a C function inside the library to -be used as the loader. -The name of this C function is the string "<code>luaopen_</code>" -concatenated with a copy of the module name where each dot -is replaced by an underscore. -Moreover, if the module name has a hyphen, -its prefix up to (and including) the first hyphen is removed. -For instance, if the module name is <code>a.v1-b.c</code>, -the function name will be <code>luaopen_b_c</code>. - - -<p> -The fourth searcher tries an <em>all-in-one loader</em>. -It searches the C path for a library for -the root name of the given module. -For instance, when requiring <code>a.b.c</code>, -it will search for a C library for <code>a</code>. -If found, it looks into it for an open function for -the submodule; -in our example, that would be <code>luaopen_a_b_c</code>. -With this facility, a package can pack several C submodules -into one single library, -with each submodule keeping its original open function. - - -<p> -All searchers except the first one (preload) return as the extra value -the file name where the module was found, -as returned by <a href="#pdf-package.searchpath"><code>package.searchpath</code></a>. -The first searcher returns no extra value. - - - - -<p> -<hr><h3><a name="pdf-package.searchpath"><code>package.searchpath (name, path [, sep [, rep]])</code></a></h3> - - -<p> -Searches for the given <code>name</code> in the given <code>path</code>. - - -<p> -A path is a string containing a sequence of -<em>templates</em> separated by semicolons. -For each template, -the function replaces each interrogation mark (if any) -in the template with a copy of <code>name</code> -wherein all occurrences of <code>sep</code> -(a dot, by default) -were replaced by <code>rep</code> -(the system's directory separator, by default), -and then tries to open the resulting file name. - - -<p> -For instance, if the path is the string - -<pre> - "./?.lua;./?.lc;/usr/local/?/init.lua" -</pre><p> -the search for the name <code>foo.a</code> -will try to open the files -<code>./foo/a.lua</code>, <code>./foo/a.lc</code>, and -<code>/usr/local/foo/a/init.lua</code>, in that order. - - -<p> -Returns the resulting name of the first file that it can -open in read mode (after closing the file), -or <b>nil</b> plus an error message if none succeeds. -(This error message lists all file names it tried to open.) - - - - - - - -<h2>6.4 – <a name="6.4">String Manipulation</a></h2> - -<p> -This library provides generic functions for string manipulation, -such as finding and extracting substrings, and pattern matching. -When indexing a string in Lua, the first character is at position 1 -(not at 0, as in C). -Indices are allowed to be negative and are interpreted as indexing backwards, -from the end of the string. -Thus, the last character is at position -1, and so on. - - -<p> -The string library provides all its functions inside the table -<a name="pdf-string"><code>string</code></a>. -It also sets a metatable for strings -where the <code>__index</code> field points to the <code>string</code> table. -Therefore, you can use the string functions in object-oriented style. -For instance, <code>string.byte(s,i)</code> -can be written as <code>s:byte(i)</code>. - - -<p> -The string library assumes one-byte character encodings. - - -<p> -<hr><h3><a name="pdf-string.byte"><code>string.byte (s [, i [, j]])</code></a></h3> -Returns the internal numerical codes of the characters <code>s[i]</code>, -<code>s[i+1]</code>, ..., <code>s[j]</code>. -The default value for <code>i</code> is 1; -the default value for <code>j</code> is <code>i</code>. -These indices are corrected -following the same rules of function <a href="#pdf-string.sub"><code>string.sub</code></a>. - - -<p> -Numerical codes are not necessarily portable across platforms. - - - - -<p> -<hr><h3><a name="pdf-string.char"><code>string.char (···)</code></a></h3> -Receives zero or more integers. -Returns a string with length equal to the number of arguments, -in which each character has the internal numerical code equal -to its corresponding argument. - - -<p> -Numerical codes are not necessarily portable across platforms. - - - - -<p> -<hr><h3><a name="pdf-string.dump"><code>string.dump (function)</code></a></h3> - - -<p> -Returns a string containing a binary representation of the given function, -so that a later <a href="#pdf-load"><code>load</code></a> on this string returns -a copy of the function (but with new upvalues). - - - - -<p> -<hr><h3><a name="pdf-string.find"><code>string.find (s, pattern [, init [, plain]])</code></a></h3> - - -<p> -Looks for the first match of -<code>pattern</code> in the string <code>s</code>. -If it finds a match, then <code>find</code> returns the indices of <code>s</code> -where this occurrence starts and ends; -otherwise, it returns <b>nil</b>. -A third, optional numerical argument <code>init</code> specifies -where to start the search; -its default value is 1 and can be negative. -A value of <b>true</b> as a fourth, optional argument <code>plain</code> -turns off the pattern matching facilities, -so the function does a plain "find substring" operation, -with no characters in <code>pattern</code> being considered magic. -Note that if <code>plain</code> is given, then <code>init</code> must be given as well. - - -<p> -If the pattern has captures, -then in a successful match -the captured values are also returned, -after the two indices. - - - - -<p> -<hr><h3><a name="pdf-string.format"><code>string.format (formatstring, ···)</code></a></h3> - - -<p> -Returns a formatted version of its variable number of arguments -following the description given in its first argument (which must be a string). -The format string follows the same rules as the ISO C function <code>sprintf</code>. -The only differences are that the options/modifiers -<code>*</code>, <code>h</code>, <code>L</code>, <code>l</code>, <code>n</code>, -and <code>p</code> are not supported -and that there is an extra option, <code>q</code>. -The <code>q</code> option formats a string between double quotes, -using escape sequences when necessary to ensure that -it can safely be read back by the Lua interpreter. -For instance, the call - -<pre> - string.format('%q', 'a string with "quotes" and \n new line') -</pre><p> -may produce the string: - -<pre> - "a string with \"quotes\" and \ - new line" -</pre> - -<p> -Options -<code>A</code> and <code>a</code> (when available), -<code>E</code>, <code>e</code>, <code>f</code>, -<code>G</code>, and <code>g</code> all expect a number as argument. -Options <code>c</code>, <code>d</code>, -<code>i</code>, <code>o</code>, <code>u</code>, <code>X</code>, and <code>x</code> -also expect a number, -but the range of that number may be limited by -the underlying C implementation. -For options <code>o</code>, <code>u</code>, <code>X</code>, and <code>x</code>, -the number cannot be negative. -Option <code>q</code> expects a string; -option <code>s</code> expects a string without embedded zeros. -If the argument to option <code>s</code> is not a string, -it is converted to one following the same rules of <a href="#pdf-tostring"><code>tostring</code></a>. - - - - -<p> -<hr><h3><a name="pdf-string.gmatch"><code>string.gmatch (s, pattern)</code></a></h3> -Returns an iterator function that, -each time it is called, -returns the next captures from <code>pattern</code> over the string <code>s</code>. -If <code>pattern</code> specifies no captures, -then the whole match is produced in each call. - - -<p> -As an example, the following loop -will iterate over all the words from string <code>s</code>, -printing one per line: - -<pre> - s = "hello world from Lua" - for w in string.gmatch(s, "%a+") do - print(w) - end -</pre><p> -The next example collects all pairs <code>key=value</code> from the -given string into a table: - -<pre> - t = {} - s = "from=world, to=Lua" - for k, v in string.gmatch(s, "(%w+)=(%w+)") do - t[k] = v - end -</pre> - -<p> -For this function, a caret '<code>^</code>' at the start of a pattern does not -work as an anchor, as this would prevent the iteration. - - - - -<p> -<hr><h3><a name="pdf-string.gsub"><code>string.gsub (s, pattern, repl [, n])</code></a></h3> -Returns a copy of <code>s</code> -in which all (or the first <code>n</code>, if given) -occurrences of the <code>pattern</code> have been -replaced by a replacement string specified by <code>repl</code>, -which can be a string, a table, or a function. -<code>gsub</code> also returns, as its second value, -the total number of matches that occurred. -The name <code>gsub</code> comes from <em>Global SUBstitution</em>. - - -<p> -If <code>repl</code> is a string, then its value is used for replacement. -The character <code>%</code> works as an escape character: -any sequence in <code>repl</code> of the form <code>%<em>d</em></code>, -with <em>d</em> between 1 and 9, -stands for the value of the <em>d</em>-th captured substring. -The sequence <code>%0</code> stands for the whole match. -The sequence <code>%%</code> stands for a single <code>%</code>. - - -<p> -If <code>repl</code> is a table, then the table is queried for every match, -using the first capture as the key. - - -<p> -If <code>repl</code> is a function, then this function is called every time a -match occurs, with all captured substrings passed as arguments, -in order. - - -<p> -In any case, -if the pattern specifies no captures, -then it behaves as if the whole pattern was inside a capture. - - -<p> -If the value returned by the table query or by the function call -is a string or a number, -then it is used as the replacement string; -otherwise, if it is <b>false</b> or <b>nil</b>, -then there is no replacement -(that is, the original match is kept in the string). - - -<p> -Here are some examples: - -<pre> - x = string.gsub("hello world", "(%w+)", "%1 %1") - --> x="hello hello world world" - - x = string.gsub("hello world", "%w+", "%0 %0", 1) - --> x="hello hello world" - - x = string.gsub("hello world from Lua", "(%w+)%s*(%w+)", "%2 %1") - --> x="world hello Lua from" - - x = string.gsub("home = $HOME, user = $USER", "%$(%w+)", os.getenv) - --> x="home = /home/roberto, user = roberto" - - x = string.gsub("4+5 = $return 4+5$", "%$(.-)%$", function (s) - return load(s)() - end) - --> x="4+5 = 9" - - local t = {name="lua", version="5.2"} - x = string.gsub("$name-$version.tar.gz", "%$(%w+)", t) - --> x="lua-5.2.tar.gz" -</pre> - - - -<p> -<hr><h3><a name="pdf-string.len"><code>string.len (s)</code></a></h3> -Receives a string and returns its length. -The empty string <code>""</code> has length 0. -Embedded zeros are counted, -so <code>"a\000bc\000"</code> has length 5. - - - - -<p> -<hr><h3><a name="pdf-string.lower"><code>string.lower (s)</code></a></h3> -Receives a string and returns a copy of this string with all -uppercase letters changed to lowercase. -All other characters are left unchanged. -The definition of what an uppercase letter is depends on the current locale. - - - - -<p> -<hr><h3><a name="pdf-string.match"><code>string.match (s, pattern [, init])</code></a></h3> -Looks for the first <em>match</em> of -<code>pattern</code> in the string <code>s</code>. -If it finds one, then <code>match</code> returns -the captures from the pattern; -otherwise it returns <b>nil</b>. -If <code>pattern</code> specifies no captures, -then the whole match is returned. -A third, optional numerical argument <code>init</code> specifies -where to start the search; -its default value is 1 and can be negative. - - - - -<p> -<hr><h3><a name="pdf-string.rep"><code>string.rep (s, n [, sep])</code></a></h3> -Returns a string that is the concatenation of <code>n</code> copies of -the string <code>s</code> separated by the string <code>sep</code>. -The default value for <code>sep</code> is the empty string -(that is, no separator). - - - - -<p> -<hr><h3><a name="pdf-string.reverse"><code>string.reverse (s)</code></a></h3> -Returns a string that is the string <code>s</code> reversed. - - - - -<p> -<hr><h3><a name="pdf-string.sub"><code>string.sub (s, i [, j])</code></a></h3> -Returns the substring of <code>s</code> that -starts at <code>i</code> and continues until <code>j</code>; -<code>i</code> and <code>j</code> can be negative. -If <code>j</code> is absent, then it is assumed to be equal to -1 -(which is the same as the string length). -In particular, -the call <code>string.sub(s,1,j)</code> returns a prefix of <code>s</code> -with length <code>j</code>, -and <code>string.sub(s, -i)</code> returns a suffix of <code>s</code> -with length <code>i</code>. - - -<p> -If, after the translation of negative indices, -<code>i</code> is less than 1, -it is corrected to 1. -If <code>j</code> is greater than the string length, -it is corrected to that length. -If, after these corrections, -<code>i</code> is greater than <code>j</code>, -the function returns the empty string. - - - - -<p> -<hr><h3><a name="pdf-string.upper"><code>string.upper (s)</code></a></h3> -Receives a string and returns a copy of this string with all -lowercase letters changed to uppercase. -All other characters are left unchanged. -The definition of what a lowercase letter is depends on the current locale. - - - -<h3>6.4.1 – <a name="6.4.1">Patterns</a></h3> - - -<h4>Character Class:</h4><p> -A <em>character class</em> is used to represent a set of characters. -The following combinations are allowed in describing a character class: - -<ul> - -<li><b><em>x</em>: </b> -(where <em>x</em> is not one of the <em>magic characters</em> -<code>^$()%.[]*+-?</code>) -represents the character <em>x</em> itself. -</li> - -<li><b><code>.</code>: </b> (a dot) represents all characters.</li> - -<li><b><code>%a</code>: </b> represents all letters.</li> - -<li><b><code>%c</code>: </b> represents all control characters.</li> - -<li><b><code>%d</code>: </b> represents all digits.</li> - -<li><b><code>%g</code>: </b> represents all printable characters except space.</li> - -<li><b><code>%l</code>: </b> represents all lowercase letters.</li> - -<li><b><code>%p</code>: </b> represents all punctuation characters.</li> - -<li><b><code>%s</code>: </b> represents all space characters.</li> - -<li><b><code>%u</code>: </b> represents all uppercase letters.</li> - -<li><b><code>%w</code>: </b> represents all alphanumeric characters.</li> - -<li><b><code>%x</code>: </b> represents all hexadecimal digits.</li> - -<li><b><code>%<em>x</em></code>: </b> (where <em>x</em> is any non-alphanumeric character) -represents the character <em>x</em>. -This is the standard way to escape the magic characters. -Any punctuation character (even the non magic) -can be preceded by a '<code>%</code>' -when used to represent itself in a pattern. -</li> - -<li><b><code>[<em>set</em>]</code>: </b> -represents the class which is the union of all -characters in <em>set</em>. -A range of characters can be specified by -separating the end characters of the range, -in ascending order, with a '<code>-</code>', -All classes <code>%</code><em>x</em> described above can also be used as -components in <em>set</em>. -All other characters in <em>set</em> represent themselves. -For example, <code>[%w_]</code> (or <code>[_%w]</code>) -represents all alphanumeric characters plus the underscore, -<code>[0-7]</code> represents the octal digits, -and <code>[0-7%l%-]</code> represents the octal digits plus -the lowercase letters plus the '<code>-</code>' character. - - -<p> -The interaction between ranges and classes is not defined. -Therefore, patterns like <code>[%a-z]</code> or <code>[a-%%]</code> -have no meaning. -</li> - -<li><b><code>[^<em>set</em>]</code>: </b> -represents the complement of <em>set</em>, -where <em>set</em> is interpreted as above. -</li> - -</ul><p> -For all classes represented by single letters (<code>%a</code>, <code>%c</code>, etc.), -the corresponding uppercase letter represents the complement of the class. -For instance, <code>%S</code> represents all non-space characters. - - -<p> -The definitions of letter, space, and other character groups -depend on the current locale. -In particular, the class <code>[a-z]</code> may not be equivalent to <code>%l</code>. - - - - - -<h4>Pattern Item:</h4><p> -A <em>pattern item</em> can be - -<ul> - -<li> -a single character class, -which matches any single character in the class; -</li> - -<li> -a single character class followed by '<code>*</code>', -which matches 0 or more repetitions of characters in the class. -These repetition items will always match the longest possible sequence; -</li> - -<li> -a single character class followed by '<code>+</code>', -which matches 1 or more repetitions of characters in the class. -These repetition items will always match the longest possible sequence; -</li> - -<li> -a single character class followed by '<code>-</code>', -which also matches 0 or more repetitions of characters in the class. -Unlike '<code>*</code>', -these repetition items will always match the shortest possible sequence; -</li> - -<li> -a single character class followed by '<code>?</code>', -which matches 0 or 1 occurrence of a character in the class; -</li> - -<li> -<code>%<em>n</em></code>, for <em>n</em> between 1 and 9; -such item matches a substring equal to the <em>n</em>-th captured string -(see below); -</li> - -<li> -<code>%b<em>xy</em></code>, where <em>x</em> and <em>y</em> are two distinct characters; -such item matches strings that start with <em>x</em>, end with <em>y</em>, -and where the <em>x</em> and <em>y</em> are <em>balanced</em>. -This means that, if one reads the string from left to right, -counting <em>+1</em> for an <em>x</em> and <em>-1</em> for a <em>y</em>, -the ending <em>y</em> is the first <em>y</em> where the count reaches 0. -For instance, the item <code>%b()</code> matches expressions with -balanced parentheses. -</li> - -<li> -<code>%f[<em>set</em>]</code>, a <em>frontier pattern</em>; -such item matches an empty string at any position such that -the next character belongs to <em>set</em> -and the previous character does not belong to <em>set</em>. -The set <em>set</em> is interpreted as previously described. -The beginning and the end of the subject are handled as if -they were the character '<code>\0</code>'. -</li> - -</ul> - - - - -<h4>Pattern:</h4><p> -A <em>pattern</em> is a sequence of pattern items. -A caret '<code>^</code>' at the beginning of a pattern anchors the match at the -beginning of the subject string. -A '<code>$</code>' at the end of a pattern anchors the match at the -end of the subject string. -At other positions, -'<code>^</code>' and '<code>$</code>' have no special meaning and represent themselves. - - - - - -<h4>Captures:</h4><p> -A pattern can contain sub-patterns enclosed in parentheses; -they describe <em>captures</em>. -When a match succeeds, the substrings of the subject string -that match captures are stored (<em>captured</em>) for future use. -Captures are numbered according to their left parentheses. -For instance, in the pattern <code>"(a*(.)%w(%s*))"</code>, -the part of the string matching <code>"a*(.)%w(%s*)"</code> is -stored as the first capture (and therefore has number 1); -the character matching "<code>.</code>" is captured with number 2, -and the part matching "<code>%s*</code>" has number 3. - - -<p> -As a special case, the empty capture <code>()</code> captures -the current string position (a number). -For instance, if we apply the pattern <code>"()aa()"</code> on the -string <code>"flaaap"</code>, there will be two captures: 3 and 5. - - - - - - - - - - - -<h2>6.5 – <a name="6.5">Table Manipulation</a></h2> - -<p> -This library provides generic functions for table manipulation. -It provides all its functions inside the table <a name="pdf-table"><code>table</code></a>. - - -<p> -Remember that, whenever an operation needs the length of a table, -the table should be a proper sequence -or have a <code>__len</code> metamethod (see <a href="#3.4.6">§3.4.6</a>). -All functions ignore non-numeric keys -in tables given as arguments. - - -<p> -For performance reasons, -all table accesses (get/set) performed by these functions are raw. - - -<p> -<hr><h3><a name="pdf-table.concat"><code>table.concat (list [, sep [, i [, j]]])</code></a></h3> - - -<p> -Given a list where all elements are strings or numbers, -returns the string <code>list[i]..sep..list[i+1] ··· sep..list[j]</code>. -The default value for <code>sep</code> is the empty string, -the default for <code>i</code> is 1, -and the default for <code>j</code> is <code>#list</code>. -If <code>i</code> is greater than <code>j</code>, returns the empty string. - - - - -<p> -<hr><h3><a name="pdf-table.insert"><code>table.insert (list, [pos,] value)</code></a></h3> - - -<p> -Inserts element <code>value</code> at position <code>pos</code> in <code>list</code>, -shifting up the elements -<code>list[pos], list[pos+1], ···, list[#list]</code>. -The default value for <code>pos</code> is <code>#list+1</code>, -so that a call <code>table.insert(t,x)</code> inserts <code>x</code> at the end -of list <code>t</code>. - - - - -<p> -<hr><h3><a name="pdf-table.pack"><code>table.pack (···)</code></a></h3> - - -<p> -Returns a new table with all parameters stored into keys 1, 2, etc. -and with a field "<code>n</code>" with the total number of parameters. -Note that the resulting table may not be a sequence. - - - - -<p> -<hr><h3><a name="pdf-table.remove"><code>table.remove (list [, pos])</code></a></h3> - - -<p> -Removes from <code>list</code> the element at position <code>pos</code>, -returning the value of the removed element. -When <code>pos</code> is an integer between 1 and <code>#list</code>, -it shifts down the elements -<code>list[pos+1], list[pos+2], ···, list[#list]</code> -and erases element <code>list[#list]</code>; -The index <code>pos</code> can also be 0 when <code>#list</code> is 0, -or <code>#list + 1</code>; -in those cases, the function erases the element <code>list[pos]</code>. - - -<p> -The default value for <code>pos</code> is <code>#list</code>, -so that a call <code>table.remove(t)</code> removes the last element -of list <code>t</code>. - - - - -<p> -<hr><h3><a name="pdf-table.sort"><code>table.sort (list [, comp])</code></a></h3> - - -<p> -Sorts list elements in a given order, <em>in-place</em>, -from <code>list[1]</code> to <code>list[#list]</code>. -If <code>comp</code> is given, -then it must be a function that receives two list elements -and returns true when the first element must come -before the second in the final order -(so that <code>not comp(list[i+1],list[i])</code> will be true after the sort). -If <code>comp</code> is not given, -then the standard Lua operator <code><</code> is used instead. - - -<p> -The sort algorithm is not stable; -that is, elements considered equal by the given order -may have their relative positions changed by the sort. - - - - -<p> -<hr><h3><a name="pdf-table.unpack"><code>table.unpack (list [, i [, j]])</code></a></h3> - - -<p> -Returns the elements from the given table. -This function is equivalent to - -<pre> - return list[i], list[i+1], ···, list[j] -</pre><p> -By default, <code>i</code> is 1 and <code>j</code> is <code>#list</code>. - - - - - - - -<h2>6.6 – <a name="6.6">Mathematical Functions</a></h2> - -<p> -This library is an interface to the standard C math library. -It provides all its functions inside the table <a name="pdf-math"><code>math</code></a>. - - -<p> -<hr><h3><a name="pdf-math.abs"><code>math.abs (x)</code></a></h3> - - -<p> -Returns the absolute value of <code>x</code>. - - - - -<p> -<hr><h3><a name="pdf-math.acos"><code>math.acos (x)</code></a></h3> - - -<p> -Returns the arc cosine of <code>x</code> (in radians). - - - - -<p> -<hr><h3><a name="pdf-math.asin"><code>math.asin (x)</code></a></h3> - - -<p> -Returns the arc sine of <code>x</code> (in radians). - - - - -<p> -<hr><h3><a name="pdf-math.atan"><code>math.atan (x)</code></a></h3> - - -<p> -Returns the arc tangent of <code>x</code> (in radians). - - - - -<p> -<hr><h3><a name="pdf-math.atan2"><code>math.atan2 (y, x)</code></a></h3> - - -<p> -Returns the arc tangent of <code>y/x</code> (in radians), -but uses the signs of both parameters to find the -quadrant of the result. -(It also handles correctly the case of <code>x</code> being zero.) - - - - -<p> -<hr><h3><a name="pdf-math.ceil"><code>math.ceil (x)</code></a></h3> - - -<p> -Returns the smallest integer larger than or equal to <code>x</code>. - - - - -<p> -<hr><h3><a name="pdf-math.cos"><code>math.cos (x)</code></a></h3> - - -<p> -Returns the cosine of <code>x</code> (assumed to be in radians). - - - - -<p> -<hr><h3><a name="pdf-math.cosh"><code>math.cosh (x)</code></a></h3> - - -<p> -Returns the hyperbolic cosine of <code>x</code>. - - - - -<p> -<hr><h3><a name="pdf-math.deg"><code>math.deg (x)</code></a></h3> - - -<p> -Returns the angle <code>x</code> (given in radians) in degrees. - - - - -<p> -<hr><h3><a name="pdf-math.exp"><code>math.exp (x)</code></a></h3> - - -<p> -Returns the value <em>e<sup>x</sup></em>. - - - - -<p> -<hr><h3><a name="pdf-math.floor"><code>math.floor (x)</code></a></h3> - - -<p> -Returns the largest integer smaller than or equal to <code>x</code>. - - - - -<p> -<hr><h3><a name="pdf-math.fmod"><code>math.fmod (x, y)</code></a></h3> - - -<p> -Returns the remainder of the division of <code>x</code> by <code>y</code> -that rounds the quotient towards zero. - - - - -<p> -<hr><h3><a name="pdf-math.frexp"><code>math.frexp (x)</code></a></h3> - - -<p> -Returns <code>m</code> and <code>e</code> such that <em>x = m2<sup>e</sup></em>, -<code>e</code> is an integer and the absolute value of <code>m</code> is -in the range <em>[0.5, 1)</em> -(or zero when <code>x</code> is zero). - - - - -<p> -<hr><h3><a name="pdf-math.huge"><code>math.huge</code></a></h3> - - -<p> -The value <code>HUGE_VAL</code>, -a value larger than or equal to any other numerical value. - - - - -<p> -<hr><h3><a name="pdf-math.ldexp"><code>math.ldexp (m, e)</code></a></h3> - - -<p> -Returns <em>m2<sup>e</sup></em> (<code>e</code> should be an integer). - - - - -<p> -<hr><h3><a name="pdf-math.log"><code>math.log (x [, base])</code></a></h3> - - -<p> -Returns the logarithm of <code>x</code> in the given base. -The default for <code>base</code> is <em>e</em> -(so that the function returns the natural logarithm of <code>x</code>). - - - - -<p> -<hr><h3><a name="pdf-math.max"><code>math.max (x, ···)</code></a></h3> - - -<p> -Returns the maximum value among its arguments. - - - - -<p> -<hr><h3><a name="pdf-math.min"><code>math.min (x, ···)</code></a></h3> - - -<p> -Returns the minimum value among its arguments. - - - - -<p> -<hr><h3><a name="pdf-math.modf"><code>math.modf (x)</code></a></h3> - - -<p> -Returns two numbers, -the integral part of <code>x</code> and the fractional part of <code>x</code>. - - - - -<p> -<hr><h3><a name="pdf-math.pi"><code>math.pi</code></a></h3> - - -<p> -The value of <em>π</em>. - - - - -<p> -<hr><h3><a name="pdf-math.pow"><code>math.pow (x, y)</code></a></h3> - - -<p> -Returns <em>x<sup>y</sup></em>. -(You can also use the expression <code>x^y</code> to compute this value.) - - - - -<p> -<hr><h3><a name="pdf-math.rad"><code>math.rad (x)</code></a></h3> - - -<p> -Returns the angle <code>x</code> (given in degrees) in radians. - - - - -<p> -<hr><h3><a name="pdf-math.random"><code>math.random ([m [, n]])</code></a></h3> - - -<p> -This function is an interface to the simple -pseudo-random generator function <code>rand</code> provided by Standard C. -(No guarantees can be given for its statistical properties.) - - -<p> -When called without arguments, -returns a uniform pseudo-random real number -in the range <em>[0,1)</em>. -When called with an integer number <code>m</code>, -<code>math.random</code> returns -a uniform pseudo-random integer in the range <em>[1, m]</em>. -When called with two integer numbers <code>m</code> and <code>n</code>, -<code>math.random</code> returns a uniform pseudo-random -integer in the range <em>[m, n]</em>. - - - - -<p> -<hr><h3><a name="pdf-math.randomseed"><code>math.randomseed (x)</code></a></h3> - - -<p> -Sets <code>x</code> as the "seed" -for the pseudo-random generator: -equal seeds produce equal sequences of numbers. - - - - -<p> -<hr><h3><a name="pdf-math.sin"><code>math.sin (x)</code></a></h3> - - -<p> -Returns the sine of <code>x</code> (assumed to be in radians). - - - - -<p> -<hr><h3><a name="pdf-math.sinh"><code>math.sinh (x)</code></a></h3> - - -<p> -Returns the hyperbolic sine of <code>x</code>. - - - - -<p> -<hr><h3><a name="pdf-math.sqrt"><code>math.sqrt (x)</code></a></h3> - - -<p> -Returns the square root of <code>x</code>. -(You can also use the expression <code>x^0.5</code> to compute this value.) - - - - -<p> -<hr><h3><a name="pdf-math.tan"><code>math.tan (x)</code></a></h3> - - -<p> -Returns the tangent of <code>x</code> (assumed to be in radians). - - - - -<p> -<hr><h3><a name="pdf-math.tanh"><code>math.tanh (x)</code></a></h3> - - -<p> -Returns the hyperbolic tangent of <code>x</code>. - - - - - - - -<h2>6.7 – <a name="6.7">Bitwise Operations</a></h2> - -<p> -This library provides bitwise operations. -It provides all its functions inside the table <a name="pdf-bit32"><code>bit32</code></a>. - - -<p> -Unless otherwise stated, -all functions accept numeric arguments in the range -<em>(-2<sup>51</sup>,+2<sup>51</sup>)</em>; -each argument is normalized to -the remainder of its division by <em>2<sup>32</sup></em> -and truncated to an integer (in some unspecified way), -so that its final value falls in the range <em>[0,2<sup>32</sup> - 1]</em>. -Similarly, all results are in the range <em>[0,2<sup>32</sup> - 1]</em>. -Note that <code>bit32.bnot(0)</code> is <code>0xFFFFFFFF</code>, -which is different from <code>-1</code>. - - -<p> -<hr><h3><a name="pdf-bit32.arshift"><code>bit32.arshift (x, disp)</code></a></h3> - - -<p> -Returns the number <code>x</code> shifted <code>disp</code> bits to the right. -The number <code>disp</code> may be any representable integer. -Negative displacements shift to the left. - - -<p> -This shift operation is what is called arithmetic shift. -Vacant bits on the left are filled -with copies of the higher bit of <code>x</code>; -vacant bits on the right are filled with zeros. -In particular, -displacements with absolute values higher than 31 -result in zero or <code>0xFFFFFFFF</code> (all original bits are shifted out). - - - - -<p> -<hr><h3><a name="pdf-bit32.band"><code>bit32.band (···)</code></a></h3> - - -<p> -Returns the bitwise <em>and</em> of its operands. - - - - -<p> -<hr><h3><a name="pdf-bit32.bnot"><code>bit32.bnot (x)</code></a></h3> - - -<p> -Returns the bitwise negation of <code>x</code>. -For any integer <code>x</code>, -the following identity holds: - -<pre> - assert(bit32.bnot(x) == (-1 - x) % 2^32) -</pre> - - - -<p> -<hr><h3><a name="pdf-bit32.bor"><code>bit32.bor (···)</code></a></h3> - - -<p> -Returns the bitwise <em>or</em> of its operands. - - - - -<p> -<hr><h3><a name="pdf-bit32.btest"><code>bit32.btest (···)</code></a></h3> - - -<p> -Returns a boolean signaling -whether the bitwise <em>and</em> of its operands is different from zero. - - - - -<p> -<hr><h3><a name="pdf-bit32.bxor"><code>bit32.bxor (···)</code></a></h3> - - -<p> -Returns the bitwise <em>exclusive or</em> of its operands. - - - - -<p> -<hr><h3><a name="pdf-bit32.extract"><code>bit32.extract (n, field [, width])</code></a></h3> - - -<p> -Returns the unsigned number formed by the bits -<code>field</code> to <code>field + width - 1</code> from <code>n</code>. -Bits are numbered from 0 (least significant) to 31 (most significant). -All accessed bits must be in the range <em>[0, 31]</em>. - - -<p> -The default for <code>width</code> is 1. - - - - -<p> -<hr><h3><a name="pdf-bit32.replace"><code>bit32.replace (n, v, field [, width])</code></a></h3> - - -<p> -Returns a copy of <code>n</code> with -the bits <code>field</code> to <code>field + width - 1</code> -replaced by the value <code>v</code>. -See <a href="#pdf-bit32.extract"><code>bit32.extract</code></a> for details about <code>field</code> and <code>width</code>. - - - - -<p> -<hr><h3><a name="pdf-bit32.lrotate"><code>bit32.lrotate (x, disp)</code></a></h3> - - -<p> -Returns the number <code>x</code> rotated <code>disp</code> bits to the left. -The number <code>disp</code> may be any representable integer. - - -<p> -For any valid displacement, -the following identity holds: - -<pre> - assert(bit32.lrotate(x, disp) == bit32.lrotate(x, disp % 32)) -</pre><p> -In particular, -negative displacements rotate to the right. - - - - -<p> -<hr><h3><a name="pdf-bit32.lshift"><code>bit32.lshift (x, disp)</code></a></h3> - - -<p> -Returns the number <code>x</code> shifted <code>disp</code> bits to the left. -The number <code>disp</code> may be any representable integer. -Negative displacements shift to the right. -In any direction, vacant bits are filled with zeros. -In particular, -displacements with absolute values higher than 31 -result in zero (all bits are shifted out). - - -<p> -For positive displacements, -the following equality holds: - -<pre> - assert(bit32.lshift(b, disp) == (b * 2^disp) % 2^32) -</pre> - - - -<p> -<hr><h3><a name="pdf-bit32.rrotate"><code>bit32.rrotate (x, disp)</code></a></h3> - - -<p> -Returns the number <code>x</code> rotated <code>disp</code> bits to the right. -The number <code>disp</code> may be any representable integer. - - -<p> -For any valid displacement, -the following identity holds: - -<pre> - assert(bit32.rrotate(x, disp) == bit32.rrotate(x, disp % 32)) -</pre><p> -In particular, -negative displacements rotate to the left. - - - - -<p> -<hr><h3><a name="pdf-bit32.rshift"><code>bit32.rshift (x, disp)</code></a></h3> - - -<p> -Returns the number <code>x</code> shifted <code>disp</code> bits to the right. -The number <code>disp</code> may be any representable integer. -Negative displacements shift to the left. -In any direction, vacant bits are filled with zeros. -In particular, -displacements with absolute values higher than 31 -result in zero (all bits are shifted out). - - -<p> -For positive displacements, -the following equality holds: - -<pre> - assert(bit32.rshift(b, disp) == math.floor(b % 2^32 / 2^disp)) -</pre> - -<p> -This shift operation is what is called logical shift. - - - - - - - -<h2>6.8 – <a name="6.8">Input and Output Facilities</a></h2> - -<p> -The I/O library provides two different styles for file manipulation. -The first one uses implicit file descriptors; -that is, there are operations to set a default input file and a -default output file, -and all input/output operations are over these default files. -The second style uses explicit file descriptors. - - -<p> -When using implicit file descriptors, -all operations are supplied by table <a name="pdf-io"><code>io</code></a>. -When using explicit file descriptors, -the operation <a href="#pdf-io.open"><code>io.open</code></a> returns a file descriptor -and then all operations are supplied as methods of the file descriptor. - - -<p> -The table <code>io</code> also provides -three predefined file descriptors with their usual meanings from C: -<a name="pdf-io.stdin"><code>io.stdin</code></a>, <a name="pdf-io.stdout"><code>io.stdout</code></a>, and <a name="pdf-io.stderr"><code>io.stderr</code></a>. -The I/O library never closes these files. - - -<p> -Unless otherwise stated, -all I/O functions return <b>nil</b> on failure -(plus an error message as a second result and -a system-dependent error code as a third result) -and some value different from <b>nil</b> on success. -On non-Posix systems, -the computation of the error message and error code -in case of errors -may be not thread safe, -because they rely on the global C variable <code>errno</code>. - - -<p> -<hr><h3><a name="pdf-io.close"><code>io.close ([file])</code></a></h3> - - -<p> -Equivalent to <code>file:close()</code>. -Without a <code>file</code>, closes the default output file. - - - - -<p> -<hr><h3><a name="pdf-io.flush"><code>io.flush ()</code></a></h3> - - -<p> -Equivalent to <code>io.output():flush()</code>. - - - - -<p> -<hr><h3><a name="pdf-io.input"><code>io.input ([file])</code></a></h3> - - -<p> -When called with a file name, it opens the named file (in text mode), -and sets its handle as the default input file. -When called with a file handle, -it simply sets this file handle as the default input file. -When called without parameters, -it returns the current default input file. - - -<p> -In case of errors this function raises the error, -instead of returning an error code. - - - - -<p> -<hr><h3><a name="pdf-io.lines"><code>io.lines ([filename ···])</code></a></h3> - - -<p> -Opens the given file name in read mode -and returns an iterator function that -works like <code>file:lines(···)</code> over the opened file. -When the iterator function detects the end of file, -it returns <b>nil</b> (to finish the loop) and automatically closes the file. - - -<p> -The call <code>io.lines()</code> (with no file name) is equivalent -to <code>io.input():lines()</code>; -that is, it iterates over the lines of the default input file. -In this case it does not close the file when the loop ends. - - -<p> -In case of errors this function raises the error, -instead of returning an error code. - - - - -<p> -<hr><h3><a name="pdf-io.open"><code>io.open (filename [, mode])</code></a></h3> - - -<p> -This function opens a file, -in the mode specified in the string <code>mode</code>. -It returns a new file handle, -or, in case of errors, <b>nil</b> plus an error message. - - -<p> -The <code>mode</code> string can be any of the following: - -<ul> -<li><b>"<code>r</code>": </b> read mode (the default);</li> -<li><b>"<code>w</code>": </b> write mode;</li> -<li><b>"<code>a</code>": </b> append mode;</li> -<li><b>"<code>r+</code>": </b> update mode, all previous data is preserved;</li> -<li><b>"<code>w+</code>": </b> update mode, all previous data is erased;</li> -<li><b>"<code>a+</code>": </b> append update mode, previous data is preserved, - writing is only allowed at the end of file.</li> -</ul><p> -The <code>mode</code> string can also have a '<code>b</code>' at the end, -which is needed in some systems to open the file in binary mode. - - - - -<p> -<hr><h3><a name="pdf-io.output"><code>io.output ([file])</code></a></h3> - - -<p> -Similar to <a href="#pdf-io.input"><code>io.input</code></a>, but operates over the default output file. - - - - -<p> -<hr><h3><a name="pdf-io.popen"><code>io.popen (prog [, mode])</code></a></h3> - - -<p> -This function is system dependent and is not available -on all platforms. - - -<p> -Starts program <code>prog</code> in a separated process and returns -a file handle that you can use to read data from this program -(if <code>mode</code> is <code>"r"</code>, the default) -or to write data to this program -(if <code>mode</code> is <code>"w"</code>). - - - - -<p> -<hr><h3><a name="pdf-io.read"><code>io.read (···)</code></a></h3> - - -<p> -Equivalent to <code>io.input():read(···)</code>. - - - - -<p> -<hr><h3><a name="pdf-io.tmpfile"><code>io.tmpfile ()</code></a></h3> - - -<p> -Returns a handle for a temporary file. -This file is opened in update mode -and it is automatically removed when the program ends. - - - - -<p> -<hr><h3><a name="pdf-io.type"><code>io.type (obj)</code></a></h3> - - -<p> -Checks whether <code>obj</code> is a valid file handle. -Returns the string <code>"file"</code> if <code>obj</code> is an open file handle, -<code>"closed file"</code> if <code>obj</code> is a closed file handle, -or <b>nil</b> if <code>obj</code> is not a file handle. - - - - -<p> -<hr><h3><a name="pdf-io.write"><code>io.write (···)</code></a></h3> - - -<p> -Equivalent to <code>io.output():write(···)</code>. - - - - -<p> -<hr><h3><a name="pdf-file:close"><code>file:close ()</code></a></h3> - - -<p> -Closes <code>file</code>. -Note that files are automatically closed when -their handles are garbage collected, -but that takes an unpredictable amount of time to happen. - - -<p> -When closing a file handle created with <a href="#pdf-io.popen"><code>io.popen</code></a>, -<a href="#pdf-file:close"><code>file:close</code></a> returns the same values -returned by <a href="#pdf-os.execute"><code>os.execute</code></a>. - - - - -<p> -<hr><h3><a name="pdf-file:flush"><code>file:flush ()</code></a></h3> - - -<p> -Saves any written data to <code>file</code>. - - - - -<p> -<hr><h3><a name="pdf-file:lines"><code>file:lines (···)</code></a></h3> - - -<p> -Returns an iterator function that, -each time it is called, -reads the file according to the given formats. -When no format is given, -uses "*l" as a default. -As an example, the construction - -<pre> - for c in file:lines(1) do <em>body</em> end -</pre><p> -will iterate over all characters of the file, -starting at the current position. -Unlike <a href="#pdf-io.lines"><code>io.lines</code></a>, this function does not close the file -when the loop ends. - - -<p> -In case of errors this function raises the error, -instead of returning an error code. - - - - -<p> -<hr><h3><a name="pdf-file:read"><code>file:read (···)</code></a></h3> - - -<p> -Reads the file <code>file</code>, -according to the given formats, which specify what to read. -For each format, -the function returns a string (or a number) with the characters read, -or <b>nil</b> if it cannot read data with the specified format. -When called without formats, -it uses a default format that reads the next line -(see below). - - -<p> -The available formats are - -<ul> - -<li><b>"<code>*n</code>": </b> -reads a number; -this is the only format that returns a number instead of a string. -</li> - -<li><b>"<code>*a</code>": </b> -reads the whole file, starting at the current position. -On end of file, it returns the empty string. -</li> - -<li><b>"<code>*l</code>": </b> -reads the next line skipping the end of line, -returning <b>nil</b> on end of file. -This is the default format. -</li> - -<li><b>"<code>*L</code>": </b> -reads the next line keeping the end of line (if present), -returning <b>nil</b> on end of file. -</li> - -<li><b><em>number</em>: </b> -reads a string with up to this number of bytes, -returning <b>nil</b> on end of file. -If number is zero, -it reads nothing and returns an empty string, -or <b>nil</b> on end of file. -</li> - -</ul> - - - -<p> -<hr><h3><a name="pdf-file:seek"><code>file:seek ([whence [, offset]])</code></a></h3> - - -<p> -Sets and gets the file position, -measured from the beginning of the file, -to the position given by <code>offset</code> plus a base -specified by the string <code>whence</code>, as follows: - -<ul> -<li><b>"<code>set</code>": </b> base is position 0 (beginning of the file);</li> -<li><b>"<code>cur</code>": </b> base is current position;</li> -<li><b>"<code>end</code>": </b> base is end of file;</li> -</ul><p> -In case of success, <code>seek</code> returns the final file position, -measured in bytes from the beginning of the file. -If <code>seek</code> fails, it returns <b>nil</b>, -plus a string describing the error. - - -<p> -The default value for <code>whence</code> is <code>"cur"</code>, -and for <code>offset</code> is 0. -Therefore, the call <code>file:seek()</code> returns the current -file position, without changing it; -the call <code>file:seek("set")</code> sets the position to the -beginning of the file (and returns 0); -and the call <code>file:seek("end")</code> sets the position to the -end of the file, and returns its size. - - - - -<p> -<hr><h3><a name="pdf-file:setvbuf"><code>file:setvbuf (mode [, size])</code></a></h3> - - -<p> -Sets the buffering mode for an output file. -There are three available modes: - -<ul> - -<li><b>"<code>no</code>": </b> -no buffering; the result of any output operation appears immediately. -</li> - -<li><b>"<code>full</code>": </b> -full buffering; output operation is performed only -when the buffer is full or when -you explicitly <code>flush</code> the file (see <a href="#pdf-io.flush"><code>io.flush</code></a>). -</li> - -<li><b>"<code>line</code>": </b> -line buffering; output is buffered until a newline is output -or there is any input from some special files -(such as a terminal device). -</li> - -</ul><p> -For the last two cases, <code>size</code> -specifies the size of the buffer, in bytes. -The default is an appropriate size. - - - - -<p> -<hr><h3><a name="pdf-file:write"><code>file:write (···)</code></a></h3> - - -<p> -Writes the value of each of its arguments to <code>file</code>. -The arguments must be strings or numbers. - - -<p> -In case of success, this function returns <code>file</code>. -Otherwise it returns <b>nil</b> plus a string describing the error. - - - - - - - -<h2>6.9 – <a name="6.9">Operating System Facilities</a></h2> - -<p> -This library is implemented through table <a name="pdf-os"><code>os</code></a>. - - -<p> -<hr><h3><a name="pdf-os.clock"><code>os.clock ()</code></a></h3> - - -<p> -Returns an approximation of the amount in seconds of CPU time -used by the program. - - - - -<p> -<hr><h3><a name="pdf-os.date"><code>os.date ([format [, time]])</code></a></h3> - - -<p> -Returns a string or a table containing date and time, -formatted according to the given string <code>format</code>. - - -<p> -If the <code>time</code> argument is present, -this is the time to be formatted -(see the <a href="#pdf-os.time"><code>os.time</code></a> function for a description of this value). -Otherwise, <code>date</code> formats the current time. - - -<p> -If <code>format</code> starts with '<code>!</code>', -then the date is formatted in Coordinated Universal Time. -After this optional character, -if <code>format</code> is the string "<code>*t</code>", -then <code>date</code> returns a table with the following fields: -<code>year</code> (four digits), <code>month</code> (1–12), <code>day</code> (1–31), -<code>hour</code> (0–23), <code>min</code> (0–59), <code>sec</code> (0–61), -<code>wday</code> (weekday, Sunday is 1), -<code>yday</code> (day of the year), -and <code>isdst</code> (daylight saving flag, a boolean). -This last field may be absent -if the information is not available. - - -<p> -If <code>format</code> is not "<code>*t</code>", -then <code>date</code> returns the date as a string, -formatted according to the same rules as the ISO C function <code>strftime</code>. - - -<p> -When called without arguments, -<code>date</code> returns a reasonable date and time representation that depends on -the host system and on the current locale -(that is, <code>os.date()</code> is equivalent to <code>os.date("%c")</code>). - - -<p> -On non-Posix systems, -this function may be not thread safe -because of its reliance on C function <code>gmtime</code> and C function <code>localtime</code>. - - - - -<p> -<hr><h3><a name="pdf-os.difftime"><code>os.difftime (t2, t1)</code></a></h3> - - -<p> -Returns the number of seconds from time <code>t1</code> to time <code>t2</code>. -In POSIX, Windows, and some other systems, -this value is exactly <code>t2</code><em>-</em><code>t1</code>. - - - - -<p> -<hr><h3><a name="pdf-os.execute"><code>os.execute ([command])</code></a></h3> - - -<p> -This function is equivalent to the ISO C function <code>system</code>. -It passes <code>command</code> to be executed by an operating system shell. -Its first result is <b>true</b> -if the command terminated successfully, -or <b>nil</b> otherwise. -After this first result -the function returns a string and a number, -as follows: - -<ul> - -<li><b>"<code>exit</code>": </b> -the command terminated normally; -the following number is the exit status of the command. -</li> - -<li><b>"<code>signal</code>": </b> -the command was terminated by a signal; -the following number is the signal that terminated the command. -</li> - -</ul> - -<p> -When called without a <code>command</code>, -<code>os.execute</code> returns a boolean that is true if a shell is available. - - - - -<p> -<hr><h3><a name="pdf-os.exit"><code>os.exit ([code [, close])</code></a></h3> - - -<p> -Calls the ISO C function <code>exit</code> to terminate the host program. -If <code>code</code> is <b>true</b>, -the returned status is <code>EXIT_SUCCESS</code>; -if <code>code</code> is <b>false</b>, -the returned status is <code>EXIT_FAILURE</code>; -if <code>code</code> is a number, -the returned status is this number. -The default value for <code>code</code> is <b>true</b>. - - -<p> -If the optional second argument <code>close</code> is true, -closes the Lua state before exiting. - - - - -<p> -<hr><h3><a name="pdf-os.getenv"><code>os.getenv (varname)</code></a></h3> - - -<p> -Returns the value of the process environment variable <code>varname</code>, -or <b>nil</b> if the variable is not defined. - - - - -<p> -<hr><h3><a name="pdf-os.remove"><code>os.remove (filename)</code></a></h3> - - -<p> -Deletes the file (or empty directory, on POSIX systems) -with the given name. -If this function fails, it returns <b>nil</b>, -plus a string describing the error and the error code. - - - - -<p> -<hr><h3><a name="pdf-os.rename"><code>os.rename (oldname, newname)</code></a></h3> - - -<p> -Renames file or directory named <code>oldname</code> to <code>newname</code>. -If this function fails, it returns <b>nil</b>, -plus a string describing the error and the error code. - - - - -<p> -<hr><h3><a name="pdf-os.setlocale"><code>os.setlocale (locale [, category])</code></a></h3> - - -<p> -Sets the current locale of the program. -<code>locale</code> is a system-dependent string specifying a locale; -<code>category</code> is an optional string describing which category to change: -<code>"all"</code>, <code>"collate"</code>, <code>"ctype"</code>, -<code>"monetary"</code>, <code>"numeric"</code>, or <code>"time"</code>; -the default category is <code>"all"</code>. -The function returns the name of the new locale, -or <b>nil</b> if the request cannot be honored. - - -<p> -If <code>locale</code> is the empty string, -the current locale is set to an implementation-defined native locale. -If <code>locale</code> is the string "<code>C</code>", -the current locale is set to the standard C locale. - - -<p> -When called with <b>nil</b> as the first argument, -this function only returns the name of the current locale -for the given category. - - -<p> -This function may be not thread safe -because of its reliance on C function <code>setlocale</code>. - - - - -<p> -<hr><h3><a name="pdf-os.time"><code>os.time ([table])</code></a></h3> - - -<p> -Returns the current time when called without arguments, -or a time representing the date and time specified by the given table. -This table must have fields <code>year</code>, <code>month</code>, and <code>day</code>, -and may have fields -<code>hour</code> (default is 12), -<code>min</code> (default is 0), -<code>sec</code> (default is 0), -and <code>isdst</code> (default is <b>nil</b>). -For a description of these fields, see the <a href="#pdf-os.date"><code>os.date</code></a> function. - - -<p> -The returned value is a number, whose meaning depends on your system. -In POSIX, Windows, and some other systems, -this number counts the number -of seconds since some given start time (the "epoch"). -In other systems, the meaning is not specified, -and the number returned by <code>time</code> can be used only as an argument to -<a href="#pdf-os.date"><code>os.date</code></a> and <a href="#pdf-os.difftime"><code>os.difftime</code></a>. - - - - -<p> -<hr><h3><a name="pdf-os.tmpname"><code>os.tmpname ()</code></a></h3> - - -<p> -Returns a string with a file name that can -be used for a temporary file. -The file must be explicitly opened before its use -and explicitly removed when no longer needed. - - -<p> -On POSIX systems, -this function also creates a file with that name, -to avoid security risks. -(Someone else might create the file with wrong permissions -in the time between getting the name and creating the file.) -You still have to open the file to use it -and to remove it (even if you do not use it). - - -<p> -When possible, -you may prefer to use <a href="#pdf-io.tmpfile"><code>io.tmpfile</code></a>, -which automatically removes the file when the program ends. - - - - - - - -<h2>6.10 – <a name="6.10">The Debug Library</a></h2> - -<p> -This library provides -the functionality of the debug interface (<a href="#4.9">§4.9</a>) to Lua programs. -You should exert care when using this library. -Several of its functions -violate basic assumptions about Lua code -(e.g., that variables local to a function -cannot be accessed from outside; -that userdata metatables cannot be changed by Lua code; -that Lua programs do not crash) -and therefore can compromise otherwise secure code. -Moreover, some functions in this library may be slow. - - -<p> -All functions in this library are provided -inside the <a name="pdf-debug"><code>debug</code></a> table. -All functions that operate over a thread -have an optional first argument which is the -thread to operate over. -The default is always the current thread. - - -<p> -<hr><h3><a name="pdf-debug.debug"><code>debug.debug ()</code></a></h3> - - -<p> -Enters an interactive mode with the user, -running each string that the user enters. -Using simple commands and other debug facilities, -the user can inspect global and local variables, -change their values, evaluate expressions, and so on. -A line containing only the word <code>cont</code> finishes this function, -so that the caller continues its execution. - - -<p> -Note that commands for <code>debug.debug</code> are not lexically nested -within any function and so have no direct access to local variables. - - - - -<p> -<hr><h3><a name="pdf-debug.gethook"><code>debug.gethook ([thread])</code></a></h3> - - -<p> -Returns the current hook settings of the thread, as three values: -the current hook function, the current hook mask, -and the current hook count -(as set by the <a href="#pdf-debug.sethook"><code>debug.sethook</code></a> function). - - - - -<p> -<hr><h3><a name="pdf-debug.getinfo"><code>debug.getinfo ([thread,] f [, what])</code></a></h3> - - -<p> -Returns a table with information about a function. -You can give the function directly -or you can give a number as the value of <code>f</code>, -which means the function running at level <code>f</code> of the call stack -of the given thread: -level 0 is the current function (<code>getinfo</code> itself); -level 1 is the function that called <code>getinfo</code> -(except for tail calls, which do not count on the stack); -and so on. -If <code>f</code> is a number larger than the number of active functions, -then <code>getinfo</code> returns <b>nil</b>. - - -<p> -The returned table can contain all the fields returned by <a href="#lua_getinfo"><code>lua_getinfo</code></a>, -with the string <code>what</code> describing which fields to fill in. -The default for <code>what</code> is to get all information available, -except the table of valid lines. -If present, -the option '<code>f</code>' -adds a field named <code>func</code> with the function itself. -If present, -the option '<code>L</code>' -adds a field named <code>activelines</code> with the table of -valid lines. - - -<p> -For instance, the expression <code>debug.getinfo(1,"n").name</code> returns -a table with a name for the current function, -if a reasonable name can be found, -and the expression <code>debug.getinfo(print)</code> -returns a table with all available information -about the <a href="#pdf-print"><code>print</code></a> function. - - - - -<p> -<hr><h3><a name="pdf-debug.getlocal"><code>debug.getlocal ([thread,] f, local)</code></a></h3> - - -<p> -This function returns the name and the value of the local variable -with index <code>local</code> of the function at level <code>f</code> of the stack. -This function accesses not only explicit local variables, -but also parameters, temporaries, etc. - - -<p> -The first parameter or local variable has index 1, and so on, -until the last active variable. -Negative indices refer to vararg parameters; --1 is the first vararg parameter. -The function returns <b>nil</b> if there is no variable with the given index, -and raises an error when called with a level out of range. -(You can call <a href="#pdf-debug.getinfo"><code>debug.getinfo</code></a> to check whether the level is valid.) - - -<p> -Variable names starting with '<code>(</code>' (open parenthesis) -represent internal variables -(loop control variables, temporaries, varargs, and C function locals). - - -<p> -The parameter <code>f</code> may also be a function. -In that case, <code>getlocal</code> returns only the name of function parameters. - - - - -<p> -<hr><h3><a name="pdf-debug.getmetatable"><code>debug.getmetatable (value)</code></a></h3> - - -<p> -Returns the metatable of the given <code>value</code> -or <b>nil</b> if it does not have a metatable. - - - - -<p> -<hr><h3><a name="pdf-debug.getregistry"><code>debug.getregistry ()</code></a></h3> - - -<p> -Returns the registry table (see <a href="#4.5">§4.5</a>). - - - - -<p> -<hr><h3><a name="pdf-debug.getupvalue"><code>debug.getupvalue (f, up)</code></a></h3> - - -<p> -This function returns the name and the value of the upvalue -with index <code>up</code> of the function <code>f</code>. -The function returns <b>nil</b> if there is no upvalue with the given index. - - - - -<p> -<hr><h3><a name="pdf-debug.getuservalue"><code>debug.getuservalue (u)</code></a></h3> - - -<p> -Returns the Lua value associated to <code>u</code>. -If <code>u</code> is not a userdata, -returns <b>nil</b>. - - - - -<p> -<hr><h3><a name="pdf-debug.sethook"><code>debug.sethook ([thread,] hook, mask [, count])</code></a></h3> - - -<p> -Sets the given function as a hook. -The string <code>mask</code> and the number <code>count</code> describe -when the hook will be called. -The string mask may have any combination of the following characters, -with the given meaning: - -<ul> -<li><b>'<code>c</code>': </b> the hook is called every time Lua calls a function;</li> -<li><b>'<code>r</code>': </b> the hook is called every time Lua returns from a function;</li> -<li><b>'<code>l</code>': </b> the hook is called every time Lua enters a new line of code.</li> -</ul><p> -Moreover, -with a <code>count</code> different from zero, -the hook is called also after every <code>count</code> instructions. - - -<p> -When called without arguments, -<a href="#pdf-debug.sethook"><code>debug.sethook</code></a> turns off the hook. - - -<p> -When the hook is called, its first parameter is a string -describing the event that has triggered its call: -<code>"call"</code> (or <code>"tail call"</code>), -<code>"return"</code>, -<code>"line"</code>, and <code>"count"</code>. -For line events, -the hook also gets the new line number as its second parameter. -Inside a hook, -you can call <code>getinfo</code> with level 2 to get more information about -the running function -(level 0 is the <code>getinfo</code> function, -and level 1 is the hook function). - - - - -<p> -<hr><h3><a name="pdf-debug.setlocal"><code>debug.setlocal ([thread,] level, local, value)</code></a></h3> - - -<p> -This function assigns the value <code>value</code> to the local variable -with index <code>local</code> of the function at level <code>level</code> of the stack. -The function returns <b>nil</b> if there is no local -variable with the given index, -and raises an error when called with a <code>level</code> out of range. -(You can call <code>getinfo</code> to check whether the level is valid.) -Otherwise, it returns the name of the local variable. - - -<p> -See <a href="#pdf-debug.getlocal"><code>debug.getlocal</code></a> for more information about -variable indices and names. - - - - -<p> -<hr><h3><a name="pdf-debug.setmetatable"><code>debug.setmetatable (value, table)</code></a></h3> - - -<p> -Sets the metatable for the given <code>value</code> to the given <code>table</code> -(which can be <b>nil</b>). -Returns <code>value</code>. - - - - -<p> -<hr><h3><a name="pdf-debug.setupvalue"><code>debug.setupvalue (f, up, value)</code></a></h3> - - -<p> -This function assigns the value <code>value</code> to the upvalue -with index <code>up</code> of the function <code>f</code>. -The function returns <b>nil</b> if there is no upvalue -with the given index. -Otherwise, it returns the name of the upvalue. - - - - -<p> -<hr><h3><a name="pdf-debug.setuservalue"><code>debug.setuservalue (udata, value)</code></a></h3> - - -<p> -Sets the given <code>value</code> as -the Lua value associated to the given <code>udata</code>. -<code>value</code> must be a table or <b>nil</b>; -<code>udata</code> must be a full userdata. - - -<p> -Returns <code>udata</code>. - - - - -<p> -<hr><h3><a name="pdf-debug.traceback"><code>debug.traceback ([thread,] [message [, level]])</code></a></h3> - - -<p> -If <code>message</code> is present but is neither a string nor <b>nil</b>, -this function returns <code>message</code> without further processing. -Otherwise, -it returns a string with a traceback of the call stack. -An optional <code>message</code> string is appended -at the beginning of the traceback. -An optional <code>level</code> number tells at which level -to start the traceback -(default is 1, the function calling <code>traceback</code>). - - - - -<p> -<hr><h3><a name="pdf-debug.upvalueid"><code>debug.upvalueid (f, n)</code></a></h3> - - -<p> -Returns an unique identifier (as a light userdata) -for the upvalue numbered <code>n</code> -from the given function. - - -<p> -These unique identifiers allow a program to check whether different -closures share upvalues. -Lua closures that share an upvalue -(that is, that access a same external local variable) -will return identical ids for those upvalue indices. - - - - -<p> -<hr><h3><a name="pdf-debug.upvaluejoin"><code>debug.upvaluejoin (f1, n1, f2, n2)</code></a></h3> - - -<p> -Make the <code>n1</code>-th upvalue of the Lua closure <code>f1</code> -refer to the <code>n2</code>-th upvalue of the Lua closure <code>f2</code>. - - - - - - - -<h1>7 – <a name="7">Lua Standalone</a></h1> - -<p> -Although Lua has been designed as an extension language, -to be embedded in a host C program, -it is also frequently used as a standalone language. -An interpreter for Lua as a standalone language, -called simply <code>lua</code>, -is provided with the standard distribution. -The standalone interpreter includes -all standard libraries, including the debug library. -Its usage is: - -<pre> - lua [options] [script [args]] -</pre><p> -The options are: - -<ul> -<li><b><code>-e <em>stat</em></code>: </b> executes string <em>stat</em>;</li> -<li><b><code>-l <em>mod</em></code>: </b> "requires" <em>mod</em>;</li> -<li><b><code>-i</code>: </b> enters interactive mode after running <em>script</em>;</li> -<li><b><code>-v</code>: </b> prints version information;</li> -<li><b><code>-E</code>: </b> ignores environment variables;</li> -<li><b><code>--</code>: </b> stops handling options;</li> -<li><b><code>-</code>: </b> executes <code>stdin</code> as a file and stops handling options.</li> -</ul><p> -After handling its options, <code>lua</code> runs the given <em>script</em>, -passing to it the given <em>args</em> as string arguments. -When called without arguments, -<code>lua</code> behaves as <code>lua -v -i</code> -when the standard input (<code>stdin</code>) is a terminal, -and as <code>lua -</code> otherwise. - - -<p> -When called without option <code>-E</code>, -the interpreter checks for an environment variable <a name="pdf-LUA_INIT_5_2"><code>LUA_INIT_5_2</code></a> -(or <a name="pdf-LUA_INIT"><code>LUA_INIT</code></a> if it is not defined) -before running any argument. -If the variable content has the format <code>@<em>filename</em></code>, -then <code>lua</code> executes the file. -Otherwise, <code>lua</code> executes the string itself. - - -<p> -When called with option <code>-E</code>, -besides ignoring <code>LUA_INIT</code>, -Lua also ignores -the values of <code>LUA_PATH</code> and <code>LUA_CPATH</code>, -setting the values of -<a href="#pdf-package.path"><code>package.path</code></a> and <a href="#pdf-package.cpath"><code>package.cpath</code></a> -with the default paths defined in <code>luaconf.h</code>. - - -<p> -All options are handled in order, except <code>-i</code> and <code>-E</code>. -For instance, an invocation like - -<pre> - $ lua -e'a=1' -e 'print(a)' script.lua -</pre><p> -will first set <code>a</code> to 1, then print the value of <code>a</code>, -and finally run the file <code>script.lua</code> with no arguments. -(Here <code>$</code> is the shell prompt. Your prompt may be different.) - - -<p> -Before starting to run the script, -<code>lua</code> collects all arguments in the command line -in a global table called <code>arg</code>. -The script name is stored at index 0, -the first argument after the script name goes to index 1, -and so on. -Any arguments before the script name -(that is, the interpreter name plus the options) -go to negative indices. -For instance, in the call - -<pre> - $ lua -la b.lua t1 t2 -</pre><p> -the interpreter first runs the file <code>a.lua</code>, -then creates a table - -<pre> - arg = { [-2] = "lua", [-1] = "-la", - [0] = "b.lua", - [1] = "t1", [2] = "t2" } -</pre><p> -and finally runs the file <code>b.lua</code>. -The script is called with <code>arg[1]</code>, <code>arg[2]</code>, ... -as arguments; -it can also access these arguments with the vararg expression '<code>...</code>'. - - -<p> -In interactive mode, -if you write an incomplete statement, -the interpreter waits for its completion -by issuing a different prompt. - - -<p> -In case of unprotected errors in the script, -the interpreter reports the error to the standard error stream. -If the error object is a string, -the interpreter adds a stack traceback to it. -Otherwise, if the error object has a metamethod <code>__tostring</code>, -the interpreter calls this metamethod to produce the final message. -Finally, if the error object is <b>nil</b>, -the interpreter does not report the error. - - -<p> -When finishing normally, -the interpreter closes its main Lua state -(see <a href="#lua_close"><code>lua_close</code></a>). -The script can avoid this step by -calling <a href="#pdf-os.exit"><code>os.exit</code></a> to terminate. - - -<p> -To allow the use of Lua as a -script interpreter in Unix systems, -the standalone interpreter skips -the first line of a chunk if it starts with <code>#</code>. -Therefore, Lua scripts can be made into executable programs -by using <code>chmod +x</code> and the <code>#!</code> form, -as in - -<pre> - #!/usr/local/bin/lua -</pre><p> -(Of course, -the location of the Lua interpreter may be different in your machine. -If <code>lua</code> is in your <code>PATH</code>, -then - -<pre> - #!/usr/bin/env lua -</pre><p> -is a more portable solution.) - - - -<h1>8 – <a name="8">Incompatibilities with the Previous Version</a></h1> - -<p> -Here we list the incompatibilities that you may find when moving a program -from Lua 5.1 to Lua 5.2. -You can avoid some incompatibilities by compiling Lua with -appropriate options (see file <code>luaconf.h</code>). -However, -all these compatibility options will be removed in the next version of Lua. -Similarly, -all features marked as deprecated in Lua 5.1 -have been removed in Lua 5.2. - - - -<h2>8.1 – <a name="8.1">Changes in the Language</a></h2> -<ul> - -<li> -The concept of <em>environment</em> changed. -Only Lua functions have environments. -To set the environment of a Lua function, -use the variable <code>_ENV</code> or the function <a href="#pdf-load"><code>load</code></a>. - - -<p> -C functions no longer have environments. -Use an upvalue with a shared table if you need to keep -shared state among several C functions. -(You may use <a href="#luaL_setfuncs"><code>luaL_setfuncs</code></a> to open a C library -with all functions sharing a common upvalue.) - - -<p> -To manipulate the "environment" of a userdata -(which is now called user value), -use the new functions -<a href="#lua_getuservalue"><code>lua_getuservalue</code></a> and <a href="#lua_setuservalue"><code>lua_setuservalue</code></a>. -</li> - -<li> -Lua identifiers cannot use locale-dependent letters. -</li> - -<li> -Doing a step or a full collection in the garbage collector -does not restart the collector if it has been stopped. -</li> - -<li> -Weak tables with weak keys now perform like <em>ephemeron tables</em>. -</li> - -<li> -The event <em>tail return</em> in debug hooks was removed. -Instead, tail calls generate a special new event, -<em>tail call</em>, so that the debugger can know that -there will not be a corresponding return event. -</li> - -<li> -Equality between function values has changed. -Now, a function definition may not create a new value; -it may reuse some previous value if there is no -observable difference to the new function. -</li> - -</ul> - - - - -<h2>8.2 – <a name="8.2">Changes in the Libraries</a></h2> -<ul> - -<li> -Function <code>module</code> is deprecated. -It is easy to set up a module with regular Lua code. -Modules are not expected to set global variables. -</li> - -<li> -Functions <code>setfenv</code> and <code>getfenv</code> were removed, -because of the changes in environments. -</li> - -<li> -Function <code>math.log10</code> is deprecated. -Use <a href="#pdf-math.log"><code>math.log</code></a> with 10 as its second argument, instead. -</li> - -<li> -Function <code>loadstring</code> is deprecated. -Use <code>load</code> instead; it now accepts string arguments -and are exactly equivalent to <code>loadstring</code>. -</li> - -<li> -Function <code>table.maxn</code> is deprecated. -Write it in Lua if you really need it. -</li> - -<li> -Function <code>os.execute</code> now returns <b>true</b> when command -terminates successfully and <b>nil</b> plus error information -otherwise. -</li> - -<li> -Function <code>unpack</code> was moved into the table library -and therefore must be called as <a href="#pdf-table.unpack"><code>table.unpack</code></a>. -</li> - -<li> -Character class <code>%z</code> in patterns is deprecated, -as now patterns may contain '<code>\0</code>' as a regular character. -</li> - -<li> -The table <code>package.loaders</code> was renamed <code>package.searchers</code>. -</li> - -<li> -Lua does not have bytecode verification anymore. -So, all functions that load code -(<a href="#pdf-load"><code>load</code></a> and <a href="#pdf-loadfile"><code>loadfile</code></a>) -are potentially insecure when loading untrusted binary data. -(Actually, those functions were already insecure because -of flaws in the verification algorithm.) -When in doubt, -use the <code>mode</code> argument of those functions -to restrict them to loading textual chunks. -</li> - -<li> -The standard paths in the official distribution may -change between versions. -</li> - -</ul> - - - - -<h2>8.3 – <a name="8.3">Changes in the API</a></h2> -<ul> - -<li> -Pseudoindex <code>LUA_GLOBALSINDEX</code> was removed. -You must get the global environment from the registry -(see <a href="#4.5">§4.5</a>). -</li> - -<li> -Pseudoindex <code>LUA_ENVIRONINDEX</code> -and functions <code>lua_getfenv</code>/<code>lua_setfenv</code> -were removed, -as C functions no longer have environments. -</li> - -<li> -Function <code>luaL_register</code> is deprecated. -Use <a href="#luaL_setfuncs"><code>luaL_setfuncs</code></a> so that your module does not create globals. -(Modules are not expected to set global variables anymore.) -</li> - -<li> -The <code>osize</code> argument to the allocation function -may not be zero when creating a new block, -that is, when <code>ptr</code> is <code>NULL</code> -(see <a href="#lua_Alloc"><code>lua_Alloc</code></a>). -Use only the test <code>ptr == NULL</code> to check whether -the block is new. -</li> - -<li> -Finalizers (<code>__gc</code> metamethods) for userdata are called in the -reverse order that they were marked for finalization, -not that they were created (see <a href="#2.5.1">§2.5.1</a>). -(Most userdata are marked immediately after they are created.) -Moreover, -if the metatable does not have a <code>__gc</code> field when set, -the finalizer will not be called, -even if it is set later. -</li> - -<li> -<code>luaL_typerror</code> was removed. -Write your own version if you need it. -</li> - -<li> -Function <code>lua_cpcall</code> is deprecated. -You can simply push the function with <a href="#lua_pushcfunction"><code>lua_pushcfunction</code></a> -and call it with <a href="#lua_pcall"><code>lua_pcall</code></a>. -</li> - -<li> -Functions <code>lua_equal</code> and <code>lua_lessthan</code> are deprecated. -Use the new <a href="#lua_compare"><code>lua_compare</code></a> with appropriate options instead. -</li> - -<li> -Function <code>lua_objlen</code> was renamed <a href="#lua_rawlen"><code>lua_rawlen</code></a>. -</li> - -<li> -Function <a href="#lua_load"><code>lua_load</code></a> has an extra parameter, <code>mode</code>. -Pass <code>NULL</code> to simulate the old behavior. -</li> - -<li> -Function <a href="#lua_resume"><code>lua_resume</code></a> has an extra parameter, <code>from</code>. -Pass <code>NULL</code> or the thread doing the call. -</li> - -</ul> - - - - -<h1>9 – <a name="9">The Complete Syntax of Lua</a></h1> - -<p> -Here is the complete syntax of Lua in extended BNF. -(It does not describe operator precedences.) - - - - -<pre> - - chunk ::= block - - block ::= {stat} [retstat] - - stat ::= ‘<b>;</b>’ | - varlist ‘<b>=</b>’ explist | - functioncall | - label | - <b>break</b> | - <b>goto</b> Name | - <b>do</b> block <b>end</b> | - <b>while</b> exp <b>do</b> block <b>end</b> | - <b>repeat</b> block <b>until</b> exp | - <b>if</b> exp <b>then</b> block {<b>elseif</b> exp <b>then</b> block} [<b>else</b> block] <b>end</b> | - <b>for</b> Name ‘<b>=</b>’ exp ‘<b>,</b>’ exp [‘<b>,</b>’ exp] <b>do</b> block <b>end</b> | - <b>for</b> namelist <b>in</b> explist <b>do</b> block <b>end</b> | - <b>function</b> funcname funcbody | - <b>local</b> <b>function</b> Name funcbody | - <b>local</b> namelist [‘<b>=</b>’ explist] - - retstat ::= <b>return</b> [explist] [‘<b>;</b>’] - - label ::= ‘<b>::</b>’ Name ‘<b>::</b>’ - - funcname ::= Name {‘<b>.</b>’ Name} [‘<b>:</b>’ Name] - - varlist ::= var {‘<b>,</b>’ var} - - var ::= Name | prefixexp ‘<b>[</b>’ exp ‘<b>]</b>’ | prefixexp ‘<b>.</b>’ Name - - namelist ::= Name {‘<b>,</b>’ Name} - - explist ::= exp {‘<b>,</b>’ exp} - - exp ::= <b>nil</b> | <b>false</b> | <b>true</b> | Number | String | ‘<b>...</b>’ | functiondef | - prefixexp | tableconstructor | exp binop exp | unop exp - - prefixexp ::= var | functioncall | ‘<b>(</b>’ exp ‘<b>)</b>’ - - functioncall ::= prefixexp args | prefixexp ‘<b>:</b>’ Name args - - args ::= ‘<b>(</b>’ [explist] ‘<b>)</b>’ | tableconstructor | String - - functiondef ::= <b>function</b> funcbody - - funcbody ::= ‘<b>(</b>’ [parlist] ‘<b>)</b>’ block <b>end</b> - - parlist ::= namelist [‘<b>,</b>’ ‘<b>...</b>’] | ‘<b>...</b>’ - - tableconstructor ::= ‘<b>{</b>’ [fieldlist] ‘<b>}</b>’ - - fieldlist ::= field {fieldsep field} [fieldsep] - - field ::= ‘<b>[</b>’ exp ‘<b>]</b>’ ‘<b>=</b>’ exp | Name ‘<b>=</b>’ exp | exp - - fieldsep ::= ‘<b>,</b>’ | ‘<b>;</b>’ - - binop ::= ‘<b>+</b>’ | ‘<b>-</b>’ | ‘<b>*</b>’ | ‘<b>/</b>’ | ‘<b>^</b>’ | ‘<b>%</b>’ | ‘<b>..</b>’ | - ‘<b><</b>’ | ‘<b><=</b>’ | ‘<b>></b>’ | ‘<b>>=</b>’ | ‘<b>==</b>’ | ‘<b>~=</b>’ | - <b>and</b> | <b>or</b> - - unop ::= ‘<b>-</b>’ | <b>not</b> | ‘<b>#</b>’ - -</pre> - -<p> - - - - - - - -<HR> -<SMALL CLASS="footer"> -Last update: -Mon Feb 23 22:24:44 BRT 2015 -</SMALL> -<!-- -Last change: revised for Lua 5.2.4 ---> - -</body></html> - diff --git a/source/libs/lua52/lua52-src/doc/osi-certified-72x60.png b/source/libs/lua52/lua52-src/doc/osi-certified-72x60.png deleted file mode 100644 index 07df5f6ee7a7a8b2108025dcd815f73f145a83af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3774 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 diff --git a/source/libs/lua52/lua52-src/doc/readme.html b/source/libs/lua52/lua52-src/doc/readme.html deleted file mode 100644 index 82dfe8119..000000000 --- a/source/libs/lua52/lua52-src/doc/readme.html +++ /dev/null @@ -1,417 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<HTML> -<HEAD> -<TITLE>Lua 5.2 readme</TITLE> -<LINK REL="stylesheet" TYPE="text/css" HREF="lua.css"> -<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1"> -<STYLE TYPE="text/css"> -blockquote, .display { - border: solid #a0a0a0 2px ; - border-radius: 8px ; - padding: 1em ; - margin: 0px ; -} - -.display { - word-spacing: 0.25em ; -} - -dl.display dd { - padding-bottom: 0.2em ; -} - -tt, kbd, code { - font-size: 12pt ; -} -</STYLE> -</HEAD> - -<BODY> - -<HR> -<H1> -<A HREF="http://www.lua.org/"><IMG SRC="logo.gif" ALT="Lua" BORDER=0></A> -Welcome to Lua 5.2 -</H1> - -<P> -<A HREF="#about">about</A> -· -<A HREF="#install">installation</A> -· -<A HREF="#changes">changes</A> -· -<A HREF="#license">license</A> -· -<A HREF="contents.html">reference manual</A> - -<H2><A NAME="about">About Lua</A></H2> - -<P> -Lua is a powerful, fast, lightweight, embeddable scripting language -developed by a -<A HREF="http://www.lua.org/authors.html">team</A> -at -<A HREF="http://www.puc-rio.br/">PUC-Rio</A>, -the Pontifical Catholic University of Rio de Janeiro in Brazil. -Lua is -<A HREF="#license">free software</A> -used in many products and projects around the world. - -<P> -Lua's -<A HREF="http://www.lua.org/">official web site</A> -provides complete information -about Lua, -including -an -<A HREF="http://www.lua.org/about.html">executive summary</A> -and -updated -<A HREF="http://www.lua.org/docs.html">documentation</A>, -especially the -<A HREF="http://www.lua.org/manual/5.2/">reference manual</A>, -which may differ slightly from the -<A HREF="contents.html">local copy</A> -distributed in this package. - -<H2><A NAME="install">Installing Lua</A></H2> - -<P> -Lua is distributed in -<A HREF="http://www.lua.org/ftp/">source</A> -form. -You need to build it before using it. -Building Lua should be straightforward -because -Lua is implemented in pure ANSI C and compiles unmodified in all known -platforms that have an ANSI C compiler. -Lua also compiles unmodified as C++. -The instructions given below for building Lua are for Unix-like platforms. -See also -<A HREF="#other">instructions for other systems</A> -and -<A HREF="#customization">customization options</A>. - -<P> -If you don't have the time or the inclination to compile Lua yourself, -get a binary from -<A HREF="http://lua-users.org/wiki/LuaBinaries">LuaBinaries</A>. -Try also -<A HREF="http://luadist.org/">LuaDist</A>, -a multi-platform distribution of Lua that includes batteries. - -<H3>Building Lua</H3> - -<P> -In most Unix-like platforms, simply do "<KBD>make</KBD>" with a suitable target. -Here are the details. - -<OL> -<LI> -Open a terminal window and move to -the top-level directory, which is named <TT>lua-5.2.x</TT>. -The <TT>Makefile</TT> there controls both the build process and the installation process. -<P> -<LI> - Do "<KBD>make</KBD>" and see if your platform is listed. - The platforms currently supported are: -<P> -<P CLASS="display"> - aix ansi bsd freebsd generic linux macosx mingw posix solaris -</P> -<P> - If your platform is listed, just do "<KBD>make xxx</KBD>", where xxx - is your platform name. -<P> - If your platform is not listed, try the closest one or posix, generic, - ansi, in this order. -<P> -<LI> -The compilation takes only a few moments -and produces three files in the <TT>src</TT> directory: -lua (the interpreter), -luac (the compiler), -and liblua.a (the library). -<P> -<LI> - To check that Lua has been built correctly, do "<KBD>make test</KBD>" - after building Lua. This will run the interpreter and print its version. -</OL> -<P> -If you're running Linux and get compilation errors, -make sure you have installed the <TT>readline</TT> development package -(which is probably named <TT>libreadline-dev</TT> or <TT>readline-devel</TT>). -If you get link errors after that, -then try "<KBD>make linux MYLIBS=-ltermcap</KBD>". - -<H3>Installing Lua</H3> -<P> - Once you have built Lua, you may want to install it in an official - place in your system. In this case, do "<KBD>make install</KBD>". The official - place and the way to install files are defined in the <TT>Makefile</TT>. You'll - probably need the right permissions to install files. - -<P> - To build and install Lua in one step, do "<KBD>make xxx install</KBD>", - where xxx is your platform name. - -<P> - To install Lua locally, do "<KBD>make local</KBD>". - This will create a directory <TT>install</TT> with subdirectories - <TT>bin</TT>, <TT>include</TT>, <TT>lib</TT>, <TT>man</TT>, <TT>share</TT>, - and install Lua as listed below. - - To install Lua locally, but in some other directory, do - "<KBD>make install INSTALL_TOP=xxx</KBD>", where xxx is your chosen directory. - The installation starts in the <TT>src</TT> and <TT>doc</TT> directories, - so take care if <TT>INSTALL_TOP</TT> is not an absolute path. - -<DL CLASS="display"> -<DT> - bin: -<DD> - lua luac -<DT> - include: -<DD> - lua.h luaconf.h lualib.h lauxlib.h lua.hpp -<DT> - lib: -<DD> - liblua.a -<DT> - man/man1: -<DD> - lua.1 luac.1 -</DL> - -<P> - These are the only directories you need for development. - If you only want to run Lua programs, - you only need the files in <TT>bin</TT> and <TT>man</TT>. - The files in <TT>include</TT> and <TT>lib</TT> are needed for - embedding Lua in C or C++ programs. - -<H3><A NAME="customization">Customization</A></H3> -<P> - Three kinds of things can be customized by editing a file: -<UL> - <LI> Where and how to install Lua — edit <TT>Makefile</TT>. - <LI> How to build Lua — edit <TT>src/Makefile</TT>. - <LI> Lua features — edit <TT>src/luaconf.h</TT>. -</UL> - -<P> - You don't actually need to edit the Makefiles because you may set the - relevant variables in the command line when invoking make. - Nevertheless, it's probably best to edit and save the Makefiles to - record the changes you've made. - -<P> - On the other hand, if you need to customize some Lua features, you'll need - to edit <TT>src/luaconf.h</TT> before building and installing Lua. - The edited file will be the one installed, and - it will be used by any Lua clients that you build, to ensure consistency. - Further customization is available to experts by editing the Lua sources. - -<P> - We strongly recommend that you enable dynamic loading in <TT>src/luaconf.h</TT>. - This is done automatically for all platforms listed above that have - this feature and also for Windows. - -<H3><A NAME="other">Building Lua on other systems</A></H3> - -<P> - If you're not using the usual Unix tools, then the instructions for - building Lua depend on the compiler you use. You'll need to create - projects (or whatever your compiler uses) for building the library, - the interpreter, and the compiler, as follows: - -<DL CLASS="display"> -<DT> -library: -<DD> -lapi.c lcode.c lctype.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c -lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c ltable.c -ltm.c lundump.c lvm.c lzio.c -lauxlib.c lbaselib.c lbitlib.c lcorolib.c ldblib.c liolib.c -lmathlib.c loslib.c lstrlib.c ltablib.c loadlib.c linit.c -<DT> -interpreter: -<DD> - library, lua.c -<DT> -compiler: -<DD> - library, luac.c -</DL> - -<P> - To use Lua as a library in your own programs you'll need to know how to - create and use libraries with your compiler. Moreover, to dynamically load - C libraries for Lua you'll need to know how to create dynamic libraries - and you'll need to make sure that the Lua API functions are accessible to - those dynamic libraries — but <EM>don't</EM> link the Lua library - into each dynamic library. For Unix, we recommend that the Lua library - be linked statically into the host program and its symbols exported for - dynamic linking; <TT>src/Makefile</TT> does this for the Lua interpreter. - For Windows, we recommend that the Lua library be a DLL. - In all cases, the compiler luac should be linked statically. - -<P> - As mentioned above, you may edit <TT>src/luaconf.h</TT> to customize - some features before building Lua. - -<H2><A NAME="changes">Changes since Lua 5.1</A></H2> - -<P> -Here are the main changes introduced in Lua 5.2. -The -<A HREF="contents.html">reference manual</A> -lists the -<A HREF="manual.html#8">incompatibilities</A> that had to be introduced. - -<H3>Main changes</H3> -<UL> -<LI> yieldable pcall and metamethods -<LI> new lexical scheme for globals -<LI> ephemeron tables -<LI> new library for bitwise operations -<LI> light C functions -<LI> emergency garbage collector -<LI> <CODE>goto</CODE> statement -<LI> finalizers for tables -</UL> - -Here are the other changes introduced in Lua 5.2: -<H3>Language</H3> -<UL> -<LI> no more fenv for threads or functions -<LI> tables honor the <CODE>__len</CODE> metamethod -<LI> hex and <CODE>\z</CODE> escapes in strings -<LI> support for hexadecimal floats -<LI> order metamethods work for different types -<LI> no more verification of opcode consistency -<LI> hook event "tail return" replaced by "tail call" -<LI> empty statement -<LI> <CODE>break</CODE> statement may appear in the middle of a block -</UL> - -<H3>Libraries</H3> -<UL> -<LI> arguments for function called through <CODE>xpcall</CODE> -<LI> optional 'mode' argument to load and loadfile (to control binary x text) -<LI> optional 'env' argument to load and loadfile (environment for loaded chunk) -<LI> <CODE>loadlib</CODE> may load libraries with global names (RTLD_GLOBAL) -<LI> new function <CODE>package.searchpath</CODE> -<LI> modules receive their paths when loaded -<LI> optional base in <CODE>math.log</CODE> -<LI> optional separator in <CODE>string.rep</CODE> -<LI> <CODE>file:write</CODE> returns <CODE>file</CODE> -<LI> closing a pipe returns exit status -<LI> <CODE>os.exit</CODE> may close state -<LI> new metamethods <CODE>__pairs</CODE> and <CODE>__ipairs</CODE> -<LI> new option 'isrunning' for <CODE>collectgarbage</CODE> and <CODE>lua_gc</CODE> -<LI> frontier patterns -<LI> <CODE>\0</CODE> in patterns -<LI> new option <CODE>*L</CODE> for <CODE>io.read</CODE> -<LI> options for <CODE>io.lines</CODE> -<LI> <CODE>debug.getlocal</CODE> can access function varargs -</UL> - -<H3>C API</H3> -<UL> -<LI> main thread predefined in the registry -<LI> new functions -<CODE>lua_absindex</CODE>, -<CODE>lua_arith</CODE>, -<CODE>lua_compare</CODE>, -<CODE>lua_copy</CODE>, -<CODE>lua_len</CODE>, -<CODE>lua_rawgetp</CODE>, -<CODE>lua_rawsetp</CODE>, -<CODE>lua_upvalueid</CODE>, -<CODE>lua_upvaluejoin</CODE>, -<CODE>lua_version</CODE>. -<LI> new functions -<CODE>luaL_checkversion</CODE>, -<CODE>luaL_setmetatable</CODE>, -<CODE>luaL_testudata</CODE>, -<CODE>luaL_tolstring</CODE>. -<LI> <CODE>lua_pushstring</CODE> and <CODE>pushlstring</CODE> return string -<LI> <CODE>nparams</CODE> and <CODE>isvararg</CODE> available in debug API -<LI> new <CODE>lua_Unsigned</CODE> -</UL> - -<H3>Implementation</H3> -<UL> -<LI> max constants per function raised to 2<SUP>26</SUP> -<LI> generational mode for garbage collection (experimental) -<LI> NaN trick (experimental) -<LI> internal (immutable) version of ctypes -<LI> simpler implementation for string buffers -<LI> parser uses much less C-stack space (no more auto arrays) -</UL> - -<H3>Lua standalone interpreter</H3> -<UL> -<LI> new <CODE>-E</CODE> option to avoid environment variables -<LI> handling of non-string error messages -</UL> - -<H2><A NAME="license">License</A></H2> -<A HREF="http://www.opensource.org/docs/definition.php"> -<IMG SRC="osi-certified-72x60.png" ALIGN="right" BORDER="0" ALT="[osi certified]" STYLE="padding-left: 30px ;"> -</A> - -<P> -Lua is free software distributed under the terms of the -<A HREF="http://www.opensource.org/licenses/mit-license.html">MIT license</A> -reproduced below; -it may be used for any purpose, including commercial purposes, -at absolutely no cost without having to ask us. - -The only requirement is that if you do use Lua, -then you should give us credit by including the appropriate copyright notice somewhere in your product or its documentation. - -For details, see -<A HREF="http://www.lua.org/license.html">this</A>. - -<BLOCKQUOTE STYLE="padding-bottom: 0em"> -Copyright © 1994–2015 Lua.org, PUC-Rio. - -<P> -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -<P> -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -<P> -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -</BLOCKQUOTE> -<P> - -<HR> -<SMALL CLASS="footer"> -Last update: -Mon Feb 23 22:25:08 BRT 2015 -</SMALL> -<!-- -Last change: revised for Lua 5.2.4 ---> - -</BODY> -</HTML> diff --git a/source/libs/lua52/lua52-src/src/Makefile b/source/libs/lua52/lua52-src/src/Makefile deleted file mode 100644 index 7b4b2b754..000000000 --- a/source/libs/lua52/lua52-src/src/Makefile +++ /dev/null @@ -1,187 +0,0 @@ -# Makefile for building Lua -# See ../doc/readme.html for installation and customization instructions. - -# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= - -# Your platform. See PLATS for possible values. -PLAT= none - -CC= gcc -CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS) -LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS) -LIBS= -lm $(SYSLIBS) $(MYLIBS) - -AR= ar rcu -RANLIB= ranlib -RM= rm -f - -SYSCFLAGS= -SYSLDFLAGS= -SYSLIBS= - -MYCFLAGS= -MYLDFLAGS= -MYLIBS= -MYOBJS= - -# == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE ======= - -PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris - -LUA_A= liblua.a -CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o \ - lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o \ - ltm.o lundump.o lvm.o lzio.o -LIB_O= lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o \ - lmathlib.o loslib.o lstrlib.o ltablib.o loadlib.o linit.o -BASE_O= $(CORE_O) $(LIB_O) $(MYOBJS) - -LUA_T= lua -LUA_O= lua.o - -LUAC_T= luac -LUAC_O= luac.o - -ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O) -ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) -ALL_A= $(LUA_A) - -# Targets start here. -default: $(PLAT) - -all: $(ALL_T) - -o: $(ALL_O) - -a: $(ALL_A) - -$(LUA_A): $(BASE_O) - $(AR) $@ $(BASE_O) - $(RANLIB) $@ - -$(LUA_T): $(LUA_O) $(LUA_A) - $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) - -$(LUAC_T): $(LUAC_O) $(LUA_A) - $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) - -clean: - $(RM) $(ALL_T) $(ALL_O) - -depend: - @$(CC) $(CFLAGS) -MM l*.c - -echo: - @echo "PLAT= $(PLAT)" - @echo "CC= $(CC)" - @echo "CFLAGS= $(CFLAGS)" - @echo "LDFLAGS= $(SYSLDFLAGS)" - @echo "LIBS= $(LIBS)" - @echo "AR= $(AR)" - @echo "RANLIB= $(RANLIB)" - @echo "RM= $(RM)" - -# Convenience targets for popular platforms -ALL= all - -none: - @echo "Please do 'make PLATFORM' where PLATFORM is one of these:" - @echo " $(PLATS)" - -aix: - $(MAKE) $(ALL) CC="xlc" CFLAGS="-O2 -DLUA_USE_POSIX -DLUA_USE_DLOPEN" SYSLIBS="-ldl" SYSLDFLAGS="-brtl -bexpall" - -ansi: - $(MAKE) $(ALL) SYSCFLAGS="-DLUA_ANSI" - -bsd: - $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" SYSLIBS="-Wl,-E" - -freebsd: - $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -lreadline" - -generic: $(ALL) - -linux: - $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline" - -macosx: - $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_MACOSX" SYSLIBS="-lreadline" CC=cc - -mingw: - $(MAKE) "LUA_A=lua52.dll" "LUA_T=lua.exe" \ - "AR=$(CC) -shared -o" "RANLIB=strip --strip-unneeded" \ - "SYSCFLAGS=-DLUA_BUILD_AS_DLL" "SYSLIBS=" "SYSLDFLAGS=-s" lua.exe - $(MAKE) "LUAC_T=luac.exe" luac.exe - -posix: - $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_POSIX" - -solaris: - $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" SYSLIBS="-ldl" - -# list targets that do not create files (but not all makes understand .PHONY) -.PHONY: all $(PLATS) default o a clean depend echo none - -# DO NOT DELETE - -lapi.o: lapi.c lua.h luaconf.h lapi.h llimits.h lstate.h lobject.h ltm.h \ - lzio.h lmem.h ldebug.h ldo.h lfunc.h lgc.h lstring.h ltable.h lundump.h \ - lvm.h -lauxlib.o: lauxlib.c lua.h luaconf.h lauxlib.h -lbaselib.o: lbaselib.c lua.h luaconf.h lauxlib.h lualib.h -lbitlib.o: lbitlib.c lua.h luaconf.h lauxlib.h lualib.h -lcode.o: lcode.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ - lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h lgc.h \ - lstring.h ltable.h lvm.h -lcorolib.o: lcorolib.c lua.h luaconf.h lauxlib.h lualib.h -lctype.o: lctype.c lctype.h lua.h luaconf.h llimits.h -ldblib.o: ldblib.c lua.h luaconf.h lauxlib.h lualib.h -ldebug.o: ldebug.c lua.h luaconf.h lapi.h llimits.h lstate.h lobject.h \ - ltm.h lzio.h lmem.h lcode.h llex.h lopcodes.h lparser.h ldebug.h ldo.h \ - lfunc.h lstring.h lgc.h ltable.h lvm.h -ldo.o: ldo.c lua.h luaconf.h lapi.h llimits.h lstate.h lobject.h ltm.h \ - lzio.h lmem.h ldebug.h ldo.h lfunc.h lgc.h lopcodes.h lparser.h \ - lstring.h ltable.h lundump.h lvm.h -ldump.o: ldump.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h \ - lzio.h lmem.h lundump.h -lfunc.o: lfunc.c lua.h luaconf.h lfunc.h lobject.h llimits.h lgc.h \ - lstate.h ltm.h lzio.h lmem.h -lgc.o: lgc.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ - lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h -linit.o: linit.c lua.h luaconf.h lualib.h lauxlib.h -liolib.o: liolib.c lua.h luaconf.h lauxlib.h lualib.h -llex.o: llex.c lua.h luaconf.h lctype.h llimits.h ldo.h lobject.h \ - lstate.h ltm.h lzio.h lmem.h llex.h lparser.h lstring.h lgc.h ltable.h -lmathlib.o: lmathlib.c lua.h luaconf.h lauxlib.h lualib.h -lmem.o: lmem.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ - ltm.h lzio.h lmem.h ldo.h lgc.h -loadlib.o: loadlib.c lua.h luaconf.h lauxlib.h lualib.h -lobject.o: lobject.c lua.h luaconf.h lctype.h llimits.h ldebug.h lstate.h \ - lobject.h ltm.h lzio.h lmem.h ldo.h lstring.h lgc.h lvm.h -lopcodes.o: lopcodes.c lopcodes.h llimits.h lua.h luaconf.h -loslib.o: loslib.c lua.h luaconf.h lauxlib.h lualib.h -lparser.o: lparser.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ - lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h lfunc.h \ - lstring.h lgc.h ltable.h -lstate.o: lstate.c lua.h luaconf.h lapi.h llimits.h lstate.h lobject.h \ - ltm.h lzio.h lmem.h ldebug.h ldo.h lfunc.h lgc.h llex.h lstring.h \ - ltable.h -lstring.o: lstring.c lua.h luaconf.h lmem.h llimits.h lobject.h lstate.h \ - ltm.h lzio.h lstring.h lgc.h -lstrlib.o: lstrlib.c lua.h luaconf.h lauxlib.h lualib.h -ltable.o: ltable.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ - ltm.h lzio.h lmem.h ldo.h lgc.h lstring.h ltable.h lvm.h -ltablib.o: ltablib.c lua.h luaconf.h lauxlib.h lualib.h -ltm.o: ltm.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h lzio.h \ - lmem.h lstring.h lgc.h ltable.h -lua.o: lua.c lua.h luaconf.h lauxlib.h lualib.h -luac.o: luac.c lua.h luaconf.h lauxlib.h lobject.h llimits.h lstate.h \ - ltm.h lzio.h lmem.h lundump.h ldebug.h lopcodes.h -lundump.o: lundump.c lua.h luaconf.h ldebug.h lstate.h lobject.h \ - llimits.h ltm.h lzio.h lmem.h ldo.h lfunc.h lstring.h lgc.h lundump.h -lvm.o: lvm.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ - lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lstring.h ltable.h lvm.h -lzio.o: lzio.c lua.h luaconf.h llimits.h lmem.h lstate.h lobject.h ltm.h \ - lzio.h - diff --git a/source/libs/lua52/lua52-src/src/lapi.c b/source/libs/lua52/lua52-src/src/lapi.c deleted file mode 100644 index d011431ea..000000000 --- a/source/libs/lua52/lua52-src/src/lapi.c +++ /dev/null @@ -1,1284 +0,0 @@ -/* -** $Id: lapi.c,v 2.171.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lua API -** See Copyright Notice in lua.h -*/ - - -#include <stdarg.h> -#include <string.h> - -#define lapi_c -#define LUA_CORE - -#include "lua.h" - -#include "lapi.h" -#include "ldebug.h" -#include "ldo.h" -#include "lfunc.h" -#include "lgc.h" -#include "lmem.h" -#include "lobject.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "ltm.h" -#include "lundump.h" -#include "lvm.h" - - - -const char lua_ident[] = - "$LuaVersion: " LUA_COPYRIGHT " $" - "$LuaAuthors: " LUA_AUTHORS " $"; - - -/* value at a non-valid index */ -#define NONVALIDVALUE cast(TValue *, luaO_nilobject) - -/* corresponding test */ -#define isvalid(o) ((o) != luaO_nilobject) - -/* test for pseudo index */ -#define ispseudo(i) ((i) <= LUA_REGISTRYINDEX) - -/* test for valid but not pseudo index */ -#define isstackindex(i, o) (isvalid(o) && !ispseudo(i)) - -#define api_checkvalidindex(L, o) api_check(L, isvalid(o), "invalid index") - -#define api_checkstackindex(L, i, o) \ - api_check(L, isstackindex(i, o), "index not in the stack") - - -static TValue *index2addr (lua_State *L, int idx) { - CallInfo *ci = L->ci; - if (idx > 0) { - TValue *o = ci->func + idx; - api_check(L, idx <= ci->top - (ci->func + 1), "unacceptable index"); - if (o >= L->top) return NONVALIDVALUE; - else return o; - } - else if (!ispseudo(idx)) { /* negative index */ - api_check(L, idx != 0 && -idx <= L->top - (ci->func + 1), "invalid index"); - return L->top + idx; - } - else if (idx == LUA_REGISTRYINDEX) - return &G(L)->l_registry; - else { /* upvalues */ - idx = LUA_REGISTRYINDEX - idx; - api_check(L, idx <= MAXUPVAL + 1, "upvalue index too large"); - if (ttislcf(ci->func)) /* light C function? */ - return NONVALIDVALUE; /* it has no upvalues */ - else { - CClosure *func = clCvalue(ci->func); - return (idx <= func->nupvalues) ? &func->upvalue[idx-1] : NONVALIDVALUE; - } - } -} - - -/* -** to be called by 'lua_checkstack' in protected mode, to grow stack -** capturing memory errors -*/ -static void growstack (lua_State *L, void *ud) { - int size = *(int *)ud; - luaD_growstack(L, size); -} - - -LUA_API int lua_checkstack (lua_State *L, int size) { - int res; - CallInfo *ci = L->ci; - lua_lock(L); - if (L->stack_last - L->top > size) /* stack large enough? */ - res = 1; /* yes; check is OK */ - else { /* no; need to grow stack */ - int inuse = cast_int(L->top - L->stack) + EXTRA_STACK; - if (inuse > LUAI_MAXSTACK - size) /* can grow without overflow? */ - res = 0; /* no */ - else /* try to grow stack */ - res = (luaD_rawrunprotected(L, &growstack, &size) == LUA_OK); - } - if (res && ci->top < L->top + size) - ci->top = L->top + size; /* adjust frame top */ - lua_unlock(L); - return res; -} - - -LUA_API void lua_xmove (lua_State *from, lua_State *to, int n) { - int i; - if (from == to) return; - lua_lock(to); - api_checknelems(from, n); - api_check(from, G(from) == G(to), "moving among independent states"); - api_check(from, to->ci->top - to->top >= n, "not enough elements to move"); - from->top -= n; - for (i = 0; i < n; i++) { - setobj2s(to, to->top++, from->top + i); - } - lua_unlock(to); -} - - -LUA_API lua_CFunction lua_atpanic (lua_State *L, lua_CFunction panicf) { - lua_CFunction old; - lua_lock(L); - old = G(L)->panic; - G(L)->panic = panicf; - lua_unlock(L); - return old; -} - - -LUA_API const lua_Number *lua_version (lua_State *L) { - static const lua_Number version = LUA_VERSION_NUM; - if (L == NULL) return &version; - else return G(L)->version; -} - - - -/* -** basic stack manipulation -*/ - - -/* -** convert an acceptable stack index into an absolute index -*/ -LUA_API int lua_absindex (lua_State *L, int idx) { - return (idx > 0 || ispseudo(idx)) - ? idx - : cast_int(L->top - L->ci->func + idx); -} - - -LUA_API int lua_gettop (lua_State *L) { - return cast_int(L->top - (L->ci->func + 1)); -} - - -LUA_API void lua_settop (lua_State *L, int idx) { - StkId func = L->ci->func; - lua_lock(L); - if (idx >= 0) { - api_check(L, idx <= L->stack_last - (func + 1), "new top too large"); - while (L->top < (func + 1) + idx) - setnilvalue(L->top++); - L->top = (func + 1) + idx; - } - else { - api_check(L, -(idx+1) <= (L->top - (func + 1)), "invalid new top"); - L->top += idx+1; /* `subtract' index (index is negative) */ - } - lua_unlock(L); -} - - -LUA_API void lua_remove (lua_State *L, int idx) { - StkId p; - lua_lock(L); - p = index2addr(L, idx); - api_checkstackindex(L, idx, p); - while (++p < L->top) setobjs2s(L, p-1, p); - L->top--; - lua_unlock(L); -} - - -LUA_API void lua_insert (lua_State *L, int idx) { - StkId p; - StkId q; - lua_lock(L); - p = index2addr(L, idx); - api_checkstackindex(L, idx, p); - for (q = L->top; q > p; q--) /* use L->top as a temporary */ - setobjs2s(L, q, q - 1); - setobjs2s(L, p, L->top); - lua_unlock(L); -} - - -static void moveto (lua_State *L, TValue *fr, int idx) { - TValue *to = index2addr(L, idx); - api_checkvalidindex(L, to); - setobj(L, to, fr); - if (idx < LUA_REGISTRYINDEX) /* function upvalue? */ - luaC_barrier(L, clCvalue(L->ci->func), fr); - /* LUA_REGISTRYINDEX does not need gc barrier - (collector revisits it before finishing collection) */ -} - - -LUA_API void lua_replace (lua_State *L, int idx) { - lua_lock(L); - api_checknelems(L, 1); - moveto(L, L->top - 1, idx); - L->top--; - lua_unlock(L); -} - - -LUA_API void lua_copy (lua_State *L, int fromidx, int toidx) { - TValue *fr; - lua_lock(L); - fr = index2addr(L, fromidx); - moveto(L, fr, toidx); - lua_unlock(L); -} - - -LUA_API void lua_pushvalue (lua_State *L, int idx) { - lua_lock(L); - setobj2s(L, L->top, index2addr(L, idx)); - api_incr_top(L); - lua_unlock(L); -} - - - -/* -** access functions (stack -> C) -*/ - - -LUA_API int lua_type (lua_State *L, int idx) { - StkId o = index2addr(L, idx); - return (isvalid(o) ? ttypenv(o) : LUA_TNONE); -} - - -LUA_API const char *lua_typename (lua_State *L, int t) { - UNUSED(L); - return ttypename(t); -} - - -LUA_API int lua_iscfunction (lua_State *L, int idx) { - StkId o = index2addr(L, idx); - return (ttislcf(o) || (ttisCclosure(o))); -} - - -LUA_API int lua_isnumber (lua_State *L, int idx) { - TValue n; - const TValue *o = index2addr(L, idx); - return tonumber(o, &n); -} - - -LUA_API int lua_isstring (lua_State *L, int idx) { - int t = lua_type(L, idx); - return (t == LUA_TSTRING || t == LUA_TNUMBER); -} - - -LUA_API int lua_isuserdata (lua_State *L, int idx) { - const TValue *o = index2addr(L, idx); - return (ttisuserdata(o) || ttislightuserdata(o)); -} - - -LUA_API int lua_rawequal (lua_State *L, int index1, int index2) { - StkId o1 = index2addr(L, index1); - StkId o2 = index2addr(L, index2); - return (isvalid(o1) && isvalid(o2)) ? luaV_rawequalobj(o1, o2) : 0; -} - - -LUA_API void lua_arith (lua_State *L, int op) { - StkId o1; /* 1st operand */ - StkId o2; /* 2nd operand */ - lua_lock(L); - if (op != LUA_OPUNM) /* all other operations expect two operands */ - api_checknelems(L, 2); - else { /* for unary minus, add fake 2nd operand */ - api_checknelems(L, 1); - setobjs2s(L, L->top, L->top - 1); - L->top++; - } - o1 = L->top - 2; - o2 = L->top - 1; - if (ttisnumber(o1) && ttisnumber(o2)) { - setnvalue(o1, luaO_arith(op, nvalue(o1), nvalue(o2))); - } - else - luaV_arith(L, o1, o1, o2, cast(TMS, op - LUA_OPADD + TM_ADD)); - L->top--; - lua_unlock(L); -} - - -LUA_API int lua_compare (lua_State *L, int index1, int index2, int op) { - StkId o1, o2; - int i = 0; - lua_lock(L); /* may call tag method */ - o1 = index2addr(L, index1); - o2 = index2addr(L, index2); - if (isvalid(o1) && isvalid(o2)) { - switch (op) { - case LUA_OPEQ: i = equalobj(L, o1, o2); break; - case LUA_OPLT: i = luaV_lessthan(L, o1, o2); break; - case LUA_OPLE: i = luaV_lessequal(L, o1, o2); break; - default: api_check(L, 0, "invalid option"); - } - } - lua_unlock(L); - return i; -} - - -LUA_API lua_Number lua_tonumberx (lua_State *L, int idx, int *isnum) { - TValue n; - const TValue *o = index2addr(L, idx); - if (tonumber(o, &n)) { - if (isnum) *isnum = 1; - return nvalue(o); - } - else { - if (isnum) *isnum = 0; - return 0; - } -} - - -LUA_API lua_Integer lua_tointegerx (lua_State *L, int idx, int *isnum) { - TValue n; - const TValue *o = index2addr(L, idx); - if (tonumber(o, &n)) { - lua_Integer res; - lua_Number num = nvalue(o); - lua_number2integer(res, num); - if (isnum) *isnum = 1; - return res; - } - else { - if (isnum) *isnum = 0; - return 0; - } -} - - -LUA_API lua_Unsigned lua_tounsignedx (lua_State *L, int idx, int *isnum) { - TValue n; - const TValue *o = index2addr(L, idx); - if (tonumber(o, &n)) { - lua_Unsigned res; - lua_Number num = nvalue(o); - lua_number2unsigned(res, num); - if (isnum) *isnum = 1; - return res; - } - else { - if (isnum) *isnum = 0; - return 0; - } -} - - -LUA_API int lua_toboolean (lua_State *L, int idx) { - const TValue *o = index2addr(L, idx); - return !l_isfalse(o); -} - - -LUA_API const char *lua_tolstring (lua_State *L, int idx, size_t *len) { - StkId o = index2addr(L, idx); - if (!ttisstring(o)) { - lua_lock(L); /* `luaV_tostring' may create a new string */ - if (!luaV_tostring(L, o)) { /* conversion failed? */ - if (len != NULL) *len = 0; - lua_unlock(L); - return NULL; - } - luaC_checkGC(L); - o = index2addr(L, idx); /* previous call may reallocate the stack */ - lua_unlock(L); - } - if (len != NULL) *len = tsvalue(o)->len; - return svalue(o); -} - - -LUA_API size_t lua_rawlen (lua_State *L, int idx) { - StkId o = index2addr(L, idx); - switch (ttypenv(o)) { - case LUA_TSTRING: return tsvalue(o)->len; - case LUA_TUSERDATA: return uvalue(o)->len; - case LUA_TTABLE: return luaH_getn(hvalue(o)); - default: return 0; - } -} - - -LUA_API lua_CFunction lua_tocfunction (lua_State *L, int idx) { - StkId o = index2addr(L, idx); - if (ttislcf(o)) return fvalue(o); - else if (ttisCclosure(o)) - return clCvalue(o)->f; - else return NULL; /* not a C function */ -} - - -LUA_API void *lua_touserdata (lua_State *L, int idx) { - StkId o = index2addr(L, idx); - switch (ttypenv(o)) { - case LUA_TUSERDATA: return (rawuvalue(o) + 1); - case LUA_TLIGHTUSERDATA: return pvalue(o); - default: return NULL; - } -} - - -LUA_API lua_State *lua_tothread (lua_State *L, int idx) { - StkId o = index2addr(L, idx); - return (!ttisthread(o)) ? NULL : thvalue(o); -} - - -LUA_API const void *lua_topointer (lua_State *L, int idx) { - StkId o = index2addr(L, idx); - switch (ttype(o)) { - case LUA_TTABLE: return hvalue(o); - case LUA_TLCL: return clLvalue(o); - case LUA_TCCL: return clCvalue(o); - case LUA_TLCF: return cast(void *, cast(size_t, fvalue(o))); - case LUA_TTHREAD: return thvalue(o); - case LUA_TUSERDATA: - case LUA_TLIGHTUSERDATA: - return lua_touserdata(L, idx); - default: return NULL; - } -} - - - -/* -** push functions (C -> stack) -*/ - - -LUA_API void lua_pushnil (lua_State *L) { - lua_lock(L); - setnilvalue(L->top); - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API void lua_pushnumber (lua_State *L, lua_Number n) { - lua_lock(L); - setnvalue(L->top, n); - luai_checknum(L, L->top, - luaG_runerror(L, "C API - attempt to push a signaling NaN")); - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API void lua_pushinteger (lua_State *L, lua_Integer n) { - lua_lock(L); - setnvalue(L->top, cast_num(n)); - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API void lua_pushunsigned (lua_State *L, lua_Unsigned u) { - lua_Number n; - lua_lock(L); - n = lua_unsigned2number(u); - setnvalue(L->top, n); - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API const char *lua_pushlstring (lua_State *L, const char *s, size_t len) { - TString *ts; - lua_lock(L); - luaC_checkGC(L); - ts = luaS_newlstr(L, s, len); - setsvalue2s(L, L->top, ts); - api_incr_top(L); - lua_unlock(L); - return getstr(ts); -} - - -LUA_API const char *lua_pushstring (lua_State *L, const char *s) { - if (s == NULL) { - lua_pushnil(L); - return NULL; - } - else { - TString *ts; - lua_lock(L); - luaC_checkGC(L); - ts = luaS_new(L, s); - setsvalue2s(L, L->top, ts); - api_incr_top(L); - lua_unlock(L); - return getstr(ts); - } -} - - -LUA_API const char *lua_pushvfstring (lua_State *L, const char *fmt, - va_list argp) { - const char *ret; - lua_lock(L); - luaC_checkGC(L); - ret = luaO_pushvfstring(L, fmt, argp); - lua_unlock(L); - return ret; -} - - -LUA_API const char *lua_pushfstring (lua_State *L, const char *fmt, ...) { - const char *ret; - va_list argp; - lua_lock(L); - luaC_checkGC(L); - va_start(argp, fmt); - ret = luaO_pushvfstring(L, fmt, argp); - va_end(argp); - lua_unlock(L); - return ret; -} - - -LUA_API void lua_pushcclosure (lua_State *L, lua_CFunction fn, int n) { - lua_lock(L); - if (n == 0) { - setfvalue(L->top, fn); - } - else { - Closure *cl; - api_checknelems(L, n); - api_check(L, n <= MAXUPVAL, "upvalue index too large"); - luaC_checkGC(L); - cl = luaF_newCclosure(L, n); - cl->c.f = fn; - L->top -= n; - while (n--) - setobj2n(L, &cl->c.upvalue[n], L->top + n); - setclCvalue(L, L->top, cl); - } - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API void lua_pushboolean (lua_State *L, int b) { - lua_lock(L); - setbvalue(L->top, (b != 0)); /* ensure that true is 1 */ - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API void lua_pushlightuserdata (lua_State *L, void *p) { - lua_lock(L); - setpvalue(L->top, p); - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API int lua_pushthread (lua_State *L) { - lua_lock(L); - setthvalue(L, L->top, L); - api_incr_top(L); - lua_unlock(L); - return (G(L)->mainthread == L); -} - - - -/* -** get functions (Lua -> stack) -*/ - - -LUA_API void lua_getglobal (lua_State *L, const char *var) { - Table *reg = hvalue(&G(L)->l_registry); - const TValue *gt; /* global table */ - lua_lock(L); - gt = luaH_getint(reg, LUA_RIDX_GLOBALS); - setsvalue2s(L, L->top++, luaS_new(L, var)); - luaV_gettable(L, gt, L->top - 1, L->top - 1); - lua_unlock(L); -} - - -LUA_API void lua_gettable (lua_State *L, int idx) { - StkId t; - lua_lock(L); - t = index2addr(L, idx); - luaV_gettable(L, t, L->top - 1, L->top - 1); - lua_unlock(L); -} - - -LUA_API void lua_getfield (lua_State *L, int idx, const char *k) { - StkId t; - lua_lock(L); - t = index2addr(L, idx); - setsvalue2s(L, L->top, luaS_new(L, k)); - api_incr_top(L); - luaV_gettable(L, t, L->top - 1, L->top - 1); - lua_unlock(L); -} - - -LUA_API void lua_rawget (lua_State *L, int idx) { - StkId t; - lua_lock(L); - t = index2addr(L, idx); - api_check(L, ttistable(t), "table expected"); - setobj2s(L, L->top - 1, luaH_get(hvalue(t), L->top - 1)); - lua_unlock(L); -} - - -LUA_API void lua_rawgeti (lua_State *L, int idx, int n) { - StkId t; - lua_lock(L); - t = index2addr(L, idx); - api_check(L, ttistable(t), "table expected"); - setobj2s(L, L->top, luaH_getint(hvalue(t), n)); - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API void lua_rawgetp (lua_State *L, int idx, const void *p) { - StkId t; - TValue k; - lua_lock(L); - t = index2addr(L, idx); - api_check(L, ttistable(t), "table expected"); - setpvalue(&k, cast(void *, p)); - setobj2s(L, L->top, luaH_get(hvalue(t), &k)); - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API void lua_createtable (lua_State *L, int narray, int nrec) { - Table *t; - lua_lock(L); - luaC_checkGC(L); - t = luaH_new(L); - sethvalue(L, L->top, t); - api_incr_top(L); - if (narray > 0 || nrec > 0) - luaH_resize(L, t, narray, nrec); - lua_unlock(L); -} - - -LUA_API int lua_getmetatable (lua_State *L, int objindex) { - const TValue *obj; - Table *mt = NULL; - int res; - lua_lock(L); - obj = index2addr(L, objindex); - switch (ttypenv(obj)) { - case LUA_TTABLE: - mt = hvalue(obj)->metatable; - break; - case LUA_TUSERDATA: - mt = uvalue(obj)->metatable; - break; - default: - mt = G(L)->mt[ttypenv(obj)]; - break; - } - if (mt == NULL) - res = 0; - else { - sethvalue(L, L->top, mt); - api_incr_top(L); - res = 1; - } - lua_unlock(L); - return res; -} - - -LUA_API void lua_getuservalue (lua_State *L, int idx) { - StkId o; - lua_lock(L); - o = index2addr(L, idx); - api_check(L, ttisuserdata(o), "userdata expected"); - if (uvalue(o)->env) { - sethvalue(L, L->top, uvalue(o)->env); - } else - setnilvalue(L->top); - api_incr_top(L); - lua_unlock(L); -} - - -/* -** set functions (stack -> Lua) -*/ - - -LUA_API void lua_setglobal (lua_State *L, const char *var) { - Table *reg = hvalue(&G(L)->l_registry); - const TValue *gt; /* global table */ - lua_lock(L); - api_checknelems(L, 1); - gt = luaH_getint(reg, LUA_RIDX_GLOBALS); - setsvalue2s(L, L->top++, luaS_new(L, var)); - luaV_settable(L, gt, L->top - 1, L->top - 2); - L->top -= 2; /* pop value and key */ - lua_unlock(L); -} - - -LUA_API void lua_settable (lua_State *L, int idx) { - StkId t; - lua_lock(L); - api_checknelems(L, 2); - t = index2addr(L, idx); - luaV_settable(L, t, L->top - 2, L->top - 1); - L->top -= 2; /* pop index and value */ - lua_unlock(L); -} - - -LUA_API void lua_setfield (lua_State *L, int idx, const char *k) { - StkId t; - lua_lock(L); - api_checknelems(L, 1); - t = index2addr(L, idx); - setsvalue2s(L, L->top++, luaS_new(L, k)); - luaV_settable(L, t, L->top - 1, L->top - 2); - L->top -= 2; /* pop value and key */ - lua_unlock(L); -} - - -LUA_API void lua_rawset (lua_State *L, int idx) { - StkId t; - lua_lock(L); - api_checknelems(L, 2); - t = index2addr(L, idx); - api_check(L, ttistable(t), "table expected"); - setobj2t(L, luaH_set(L, hvalue(t), L->top-2), L->top-1); - invalidateTMcache(hvalue(t)); - luaC_barrierback(L, gcvalue(t), L->top-1); - L->top -= 2; - lua_unlock(L); -} - - -LUA_API void lua_rawseti (lua_State *L, int idx, int n) { - StkId t; - lua_lock(L); - api_checknelems(L, 1); - t = index2addr(L, idx); - api_check(L, ttistable(t), "table expected"); - luaH_setint(L, hvalue(t), n, L->top - 1); - luaC_barrierback(L, gcvalue(t), L->top-1); - L->top--; - lua_unlock(L); -} - - -LUA_API void lua_rawsetp (lua_State *L, int idx, const void *p) { - StkId t; - TValue k; - lua_lock(L); - api_checknelems(L, 1); - t = index2addr(L, idx); - api_check(L, ttistable(t), "table expected"); - setpvalue(&k, cast(void *, p)); - setobj2t(L, luaH_set(L, hvalue(t), &k), L->top - 1); - luaC_barrierback(L, gcvalue(t), L->top - 1); - L->top--; - lua_unlock(L); -} - - -LUA_API int lua_setmetatable (lua_State *L, int objindex) { - TValue *obj; - Table *mt; - lua_lock(L); - api_checknelems(L, 1); - obj = index2addr(L, objindex); - if (ttisnil(L->top - 1)) - mt = NULL; - else { - api_check(L, ttistable(L->top - 1), "table expected"); - mt = hvalue(L->top - 1); - } - switch (ttypenv(obj)) { - case LUA_TTABLE: { - hvalue(obj)->metatable = mt; - if (mt) { - luaC_objbarrierback(L, gcvalue(obj), mt); - luaC_checkfinalizer(L, gcvalue(obj), mt); - } - break; - } - case LUA_TUSERDATA: { - uvalue(obj)->metatable = mt; - if (mt) { - luaC_objbarrier(L, rawuvalue(obj), mt); - luaC_checkfinalizer(L, gcvalue(obj), mt); - } - break; - } - default: { - G(L)->mt[ttypenv(obj)] = mt; - break; - } - } - L->top--; - lua_unlock(L); - return 1; -} - - -LUA_API void lua_setuservalue (lua_State *L, int idx) { - StkId o; - lua_lock(L); - api_checknelems(L, 1); - o = index2addr(L, idx); - api_check(L, ttisuserdata(o), "userdata expected"); - if (ttisnil(L->top - 1)) - uvalue(o)->env = NULL; - else { - api_check(L, ttistable(L->top - 1), "table expected"); - uvalue(o)->env = hvalue(L->top - 1); - luaC_objbarrier(L, gcvalue(o), hvalue(L->top - 1)); - } - L->top--; - lua_unlock(L); -} - - -/* -** `load' and `call' functions (run Lua code) -*/ - - -#define checkresults(L,na,nr) \ - api_check(L, (nr) == LUA_MULTRET || (L->ci->top - L->top >= (nr) - (na)), \ - "results from function overflow current stack size") - - -LUA_API int lua_getctx (lua_State *L, int *ctx) { - if (L->ci->callstatus & CIST_YIELDED) { - if (ctx) *ctx = L->ci->u.c.ctx; - return L->ci->u.c.status; - } - else return LUA_OK; -} - - -LUA_API void lua_callk (lua_State *L, int nargs, int nresults, int ctx, - lua_CFunction k) { - StkId func; - lua_lock(L); - api_check(L, k == NULL || !isLua(L->ci), - "cannot use continuations inside hooks"); - api_checknelems(L, nargs+1); - api_check(L, L->status == LUA_OK, "cannot do calls on non-normal thread"); - checkresults(L, nargs, nresults); - func = L->top - (nargs+1); - if (k != NULL && L->nny == 0) { /* need to prepare continuation? */ - L->ci->u.c.k = k; /* save continuation */ - L->ci->u.c.ctx = ctx; /* save context */ - luaD_call(L, func, nresults, 1); /* do the call */ - } - else /* no continuation or no yieldable */ - luaD_call(L, func, nresults, 0); /* just do the call */ - adjustresults(L, nresults); - lua_unlock(L); -} - - - -/* -** Execute a protected call. -*/ -struct CallS { /* data to `f_call' */ - StkId func; - int nresults; -}; - - -static void f_call (lua_State *L, void *ud) { - struct CallS *c = cast(struct CallS *, ud); - luaD_call(L, c->func, c->nresults, 0); -} - - - -LUA_API int lua_pcallk (lua_State *L, int nargs, int nresults, int errfunc, - int ctx, lua_CFunction k) { - struct CallS c; - int status; - ptrdiff_t func; - lua_lock(L); - api_check(L, k == NULL || !isLua(L->ci), - "cannot use continuations inside hooks"); - api_checknelems(L, nargs+1); - api_check(L, L->status == LUA_OK, "cannot do calls on non-normal thread"); - checkresults(L, nargs, nresults); - if (errfunc == 0) - func = 0; - else { - StkId o = index2addr(L, errfunc); - api_checkstackindex(L, errfunc, o); - func = savestack(L, o); - } - c.func = L->top - (nargs+1); /* function to be called */ - if (k == NULL || L->nny > 0) { /* no continuation or no yieldable? */ - c.nresults = nresults; /* do a 'conventional' protected call */ - status = luaD_pcall(L, f_call, &c, savestack(L, c.func), func); - } - else { /* prepare continuation (call is already protected by 'resume') */ - CallInfo *ci = L->ci; - ci->u.c.k = k; /* save continuation */ - ci->u.c.ctx = ctx; /* save context */ - /* save information for error recovery */ - ci->extra = savestack(L, c.func); - ci->u.c.old_allowhook = L->allowhook; - ci->u.c.old_errfunc = L->errfunc; - L->errfunc = func; - /* mark that function may do error recovery */ - ci->callstatus |= CIST_YPCALL; - luaD_call(L, c.func, nresults, 1); /* do the call */ - ci->callstatus &= ~CIST_YPCALL; - L->errfunc = ci->u.c.old_errfunc; - status = LUA_OK; /* if it is here, there were no errors */ - } - adjustresults(L, nresults); - lua_unlock(L); - return status; -} - - -LUA_API int lua_load (lua_State *L, lua_Reader reader, void *data, - const char *chunkname, const char *mode) { - ZIO z; - int status; - lua_lock(L); - if (!chunkname) chunkname = "?"; - luaZ_init(L, &z, reader, data); - status = luaD_protectedparser(L, &z, chunkname, mode); - if (status == LUA_OK) { /* no errors? */ - LClosure *f = clLvalue(L->top - 1); /* get newly created function */ - if (f->nupvalues == 1) { /* does it have one upvalue? */ - /* get global table from registry */ - Table *reg = hvalue(&G(L)->l_registry); - const TValue *gt = luaH_getint(reg, LUA_RIDX_GLOBALS); - /* set global table as 1st upvalue of 'f' (may be LUA_ENV) */ - setobj(L, f->upvals[0]->v, gt); - luaC_barrier(L, f->upvals[0], gt); - } - } - lua_unlock(L); - return status; -} - - -LUA_API int lua_dump (lua_State *L, lua_Writer writer, void *data) { - int status; - TValue *o; - lua_lock(L); - api_checknelems(L, 1); - o = L->top - 1; - if (isLfunction(o)) - status = luaU_dump(L, getproto(o), writer, data, 0); - else - status = 1; - lua_unlock(L); - return status; -} - - -LUA_API int lua_status (lua_State *L) { - return L->status; -} - - -/* -** Garbage-collection function -*/ - -LUA_API int lua_gc (lua_State *L, int what, int data) { - int res = 0; - global_State *g; - lua_lock(L); - g = G(L); - switch (what) { - case LUA_GCSTOP: { - g->gcrunning = 0; - break; - } - case LUA_GCRESTART: { - luaE_setdebt(g, 0); - g->gcrunning = 1; - break; - } - case LUA_GCCOLLECT: { - luaC_fullgc(L, 0); - break; - } - case LUA_GCCOUNT: { - /* GC values are expressed in Kbytes: #bytes/2^10 */ - res = cast_int(gettotalbytes(g) >> 10); - break; - } - case LUA_GCCOUNTB: { - res = cast_int(gettotalbytes(g) & 0x3ff); - break; - } - case LUA_GCSTEP: { - if (g->gckind == KGC_GEN) { /* generational mode? */ - res = (g->GCestimate == 0); /* true if it will do major collection */ - luaC_forcestep(L); /* do a single step */ - } - else { - lu_mem debt = cast(lu_mem, data) * 1024 - GCSTEPSIZE; - if (g->gcrunning) - debt += g->GCdebt; /* include current debt */ - luaE_setdebt(g, debt); - luaC_forcestep(L); - if (g->gcstate == GCSpause) /* end of cycle? */ - res = 1; /* signal it */ - } - break; - } - case LUA_GCSETPAUSE: { - res = g->gcpause; - g->gcpause = data; - break; - } - case LUA_GCSETMAJORINC: { - res = g->gcmajorinc; - g->gcmajorinc = data; - break; - } - case LUA_GCSETSTEPMUL: { - res = g->gcstepmul; - g->gcstepmul = data; - break; - } - case LUA_GCISRUNNING: { - res = g->gcrunning; - break; - } - case LUA_GCGEN: { /* change collector to generational mode */ - luaC_changemode(L, KGC_GEN); - break; - } - case LUA_GCINC: { /* change collector to incremental mode */ - luaC_changemode(L, KGC_NORMAL); - break; - } - default: res = -1; /* invalid option */ - } - lua_unlock(L); - return res; -} - - - -/* -** miscellaneous functions -*/ - - -LUA_API int lua_error (lua_State *L) { - lua_lock(L); - api_checknelems(L, 1); - luaG_errormsg(L); - /* code unreachable; will unlock when control actually leaves the kernel */ - return 0; /* to avoid warnings */ -} - - -LUA_API int lua_next (lua_State *L, int idx) { - StkId t; - int more; - lua_lock(L); - t = index2addr(L, idx); - api_check(L, ttistable(t), "table expected"); - more = luaH_next(L, hvalue(t), L->top - 1); - if (more) { - api_incr_top(L); - } - else /* no more elements */ - L->top -= 1; /* remove key */ - lua_unlock(L); - return more; -} - - -LUA_API void lua_concat (lua_State *L, int n) { - lua_lock(L); - api_checknelems(L, n); - if (n >= 2) { - luaC_checkGC(L); - luaV_concat(L, n); - } - else if (n == 0) { /* push empty string */ - setsvalue2s(L, L->top, luaS_newlstr(L, "", 0)); - api_incr_top(L); - } - /* else n == 1; nothing to do */ - lua_unlock(L); -} - - -LUA_API void lua_len (lua_State *L, int idx) { - StkId t; - lua_lock(L); - t = index2addr(L, idx); - luaV_objlen(L, L->top, t); - api_incr_top(L); - lua_unlock(L); -} - - -LUA_API lua_Alloc lua_getallocf (lua_State *L, void **ud) { - lua_Alloc f; - lua_lock(L); - if (ud) *ud = G(L)->ud; - f = G(L)->frealloc; - lua_unlock(L); - return f; -} - - -LUA_API void lua_setallocf (lua_State *L, lua_Alloc f, void *ud) { - lua_lock(L); - G(L)->ud = ud; - G(L)->frealloc = f; - lua_unlock(L); -} - - -LUA_API void *lua_newuserdata (lua_State *L, size_t size) { - Udata *u; - lua_lock(L); - luaC_checkGC(L); - u = luaS_newudata(L, size, NULL); - setuvalue(L, L->top, u); - api_incr_top(L); - lua_unlock(L); - return u + 1; -} - - - -static const char *aux_upvalue (StkId fi, int n, TValue **val, - GCObject **owner) { - switch (ttype(fi)) { - case LUA_TCCL: { /* C closure */ - CClosure *f = clCvalue(fi); - if (!(1 <= n && n <= f->nupvalues)) return NULL; - *val = &f->upvalue[n-1]; - if (owner) *owner = obj2gco(f); - return ""; - } - case LUA_TLCL: { /* Lua closure */ - LClosure *f = clLvalue(fi); - TString *name; - Proto *p = f->p; - if (!(1 <= n && n <= p->sizeupvalues)) return NULL; - *val = f->upvals[n-1]->v; - if (owner) *owner = obj2gco(f->upvals[n - 1]); - name = p->upvalues[n-1].name; - return (name == NULL) ? "" : getstr(name); - } - default: return NULL; /* not a closure */ - } -} - - -LUA_API const char *lua_getupvalue (lua_State *L, int funcindex, int n) { - const char *name; - TValue *val = NULL; /* to avoid warnings */ - lua_lock(L); - name = aux_upvalue(index2addr(L, funcindex), n, &val, NULL); - if (name) { - setobj2s(L, L->top, val); - api_incr_top(L); - } - lua_unlock(L); - return name; -} - - -LUA_API const char *lua_setupvalue (lua_State *L, int funcindex, int n) { - const char *name; - TValue *val = NULL; /* to avoid warnings */ - GCObject *owner = NULL; /* to avoid warnings */ - StkId fi; - lua_lock(L); - fi = index2addr(L, funcindex); - api_checknelems(L, 1); - name = aux_upvalue(fi, n, &val, &owner); - if (name) { - L->top--; - setobj(L, val, L->top); - luaC_barrier(L, owner, L->top); - } - lua_unlock(L); - return name; -} - - -static UpVal **getupvalref (lua_State *L, int fidx, int n, LClosure **pf) { - LClosure *f; - StkId fi = index2addr(L, fidx); - api_check(L, ttisLclosure(fi), "Lua function expected"); - f = clLvalue(fi); - api_check(L, (1 <= n && n <= f->p->sizeupvalues), "invalid upvalue index"); - if (pf) *pf = f; - return &f->upvals[n - 1]; /* get its upvalue pointer */ -} - - -LUA_API void *lua_upvalueid (lua_State *L, int fidx, int n) { - StkId fi = index2addr(L, fidx); - switch (ttype(fi)) { - case LUA_TLCL: { /* lua closure */ - return *getupvalref(L, fidx, n, NULL); - } - case LUA_TCCL: { /* C closure */ - CClosure *f = clCvalue(fi); - api_check(L, 1 <= n && n <= f->nupvalues, "invalid upvalue index"); - return &f->upvalue[n - 1]; - } - default: { - api_check(L, 0, "closure expected"); - return NULL; - } - } -} - - -LUA_API void lua_upvaluejoin (lua_State *L, int fidx1, int n1, - int fidx2, int n2) { - LClosure *f1; - UpVal **up1 = getupvalref(L, fidx1, n1, &f1); - UpVal **up2 = getupvalref(L, fidx2, n2, NULL); - *up1 = *up2; - luaC_objbarrier(L, f1, *up2); -} - diff --git a/source/libs/lua52/lua52-src/src/lapi.h b/source/libs/lua52/lua52-src/src/lapi.h deleted file mode 100644 index c7d34ad84..000000000 --- a/source/libs/lua52/lua52-src/src/lapi.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -** $Id: lapi.h,v 2.7.1.1 2013/04/12 18:48:47 roberto Exp $ -** Auxiliary functions from Lua API -** See Copyright Notice in lua.h -*/ - -#ifndef lapi_h -#define lapi_h - - -#include "llimits.h" -#include "lstate.h" - -#define api_incr_top(L) {L->top++; api_check(L, L->top <= L->ci->top, \ - "stack overflow");} - -#define adjustresults(L,nres) \ - { if ((nres) == LUA_MULTRET && L->ci->top < L->top) L->ci->top = L->top; } - -#define api_checknelems(L,n) api_check(L, (n) < (L->top - L->ci->func), \ - "not enough elements in the stack") - - -#endif diff --git a/source/libs/lua52/lua52-src/src/lauxlib.c b/source/libs/lua52/lua52-src/src/lauxlib.c deleted file mode 100644 index b00f8c709..000000000 --- a/source/libs/lua52/lua52-src/src/lauxlib.c +++ /dev/null @@ -1,959 +0,0 @@ -/* -** $Id: lauxlib.c,v 1.248.1.1 2013/04/12 18:48:47 roberto Exp $ -** Auxiliary functions for building Lua libraries -** See Copyright Notice in lua.h -*/ - - -#include <errno.h> -#include <stdarg.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - - -/* This file uses only the official API of Lua. -** Any function declared here could be written as an application function. -*/ - -#define lauxlib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" - - -/* -** {====================================================== -** Traceback -** ======================================================= -*/ - - -#define LEVELS1 12 /* size of the first part of the stack */ -#define LEVELS2 10 /* size of the second part of the stack */ - - - -/* -** search for 'objidx' in table at index -1. -** return 1 + string at top if find a good name. -*/ -static int findfield (lua_State *L, int objidx, int level) { - if (level == 0 || !lua_istable(L, -1)) - return 0; /* not found */ - lua_pushnil(L); /* start 'next' loop */ - while (lua_next(L, -2)) { /* for each pair in table */ - if (lua_type(L, -2) == LUA_TSTRING) { /* ignore non-string keys */ - if (lua_rawequal(L, objidx, -1)) { /* found object? */ - lua_pop(L, 1); /* remove value (but keep name) */ - return 1; - } - else if (findfield(L, objidx, level - 1)) { /* try recursively */ - lua_remove(L, -2); /* remove table (but keep name) */ - lua_pushliteral(L, "."); - lua_insert(L, -2); /* place '.' between the two names */ - lua_concat(L, 3); - return 1; - } - } - lua_pop(L, 1); /* remove value */ - } - return 0; /* not found */ -} - - -static int pushglobalfuncname (lua_State *L, lua_Debug *ar) { - int top = lua_gettop(L); - lua_getinfo(L, "f", ar); /* push function */ - lua_pushglobaltable(L); - if (findfield(L, top + 1, 2)) { - lua_copy(L, -1, top + 1); /* move name to proper place */ - lua_pop(L, 2); /* remove pushed values */ - return 1; - } - else { - lua_settop(L, top); /* remove function and global table */ - return 0; - } -} - - -static void pushfuncname (lua_State *L, lua_Debug *ar) { - if (*ar->namewhat != '\0') /* is there a name? */ - lua_pushfstring(L, "function " LUA_QS, ar->name); - else if (*ar->what == 'm') /* main? */ - lua_pushliteral(L, "main chunk"); - else if (*ar->what == 'C') { - if (pushglobalfuncname(L, ar)) { - lua_pushfstring(L, "function " LUA_QS, lua_tostring(L, -1)); - lua_remove(L, -2); /* remove name */ - } - else - lua_pushliteral(L, "?"); - } - else - lua_pushfstring(L, "function <%s:%d>", ar->short_src, ar->linedefined); -} - - -static int countlevels (lua_State *L) { - lua_Debug ar; - int li = 1, le = 1; - /* find an upper bound */ - while (lua_getstack(L, le, &ar)) { li = le; le *= 2; } - /* do a binary search */ - while (li < le) { - int m = (li + le)/2; - if (lua_getstack(L, m, &ar)) li = m + 1; - else le = m; - } - return le - 1; -} - - -LUALIB_API void luaL_traceback (lua_State *L, lua_State *L1, - const char *msg, int level) { - lua_Debug ar; - int top = lua_gettop(L); - int numlevels = countlevels(L1); - int mark = (numlevels > LEVELS1 + LEVELS2) ? LEVELS1 : 0; - if (msg) lua_pushfstring(L, "%s\n", msg); - lua_pushliteral(L, "stack traceback:"); - while (lua_getstack(L1, level++, &ar)) { - if (level == mark) { /* too many levels? */ - lua_pushliteral(L, "\n\t..."); /* add a '...' */ - level = numlevels - LEVELS2; /* and skip to last ones */ - } - else { - lua_getinfo(L1, "Slnt", &ar); - lua_pushfstring(L, "\n\t%s:", ar.short_src); - if (ar.currentline > 0) - lua_pushfstring(L, "%d:", ar.currentline); - lua_pushliteral(L, " in "); - pushfuncname(L, &ar); - if (ar.istailcall) - lua_pushliteral(L, "\n\t(...tail calls...)"); - lua_concat(L, lua_gettop(L) - top); - } - } - lua_concat(L, lua_gettop(L) - top); -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Error-report functions -** ======================================================= -*/ - -LUALIB_API int luaL_argerror (lua_State *L, int narg, const char *extramsg) { - lua_Debug ar; - if (!lua_getstack(L, 0, &ar)) /* no stack frame? */ - return luaL_error(L, "bad argument #%d (%s)", narg, extramsg); - lua_getinfo(L, "n", &ar); - if (strcmp(ar.namewhat, "method") == 0) { - narg--; /* do not count `self' */ - if (narg == 0) /* error is in the self argument itself? */ - return luaL_error(L, "calling " LUA_QS " on bad self (%s)", - ar.name, extramsg); - } - if (ar.name == NULL) - ar.name = (pushglobalfuncname(L, &ar)) ? lua_tostring(L, -1) : "?"; - return luaL_error(L, "bad argument #%d to " LUA_QS " (%s)", - narg, ar.name, extramsg); -} - - -static int typeerror (lua_State *L, int narg, const char *tname) { - const char *msg = lua_pushfstring(L, "%s expected, got %s", - tname, luaL_typename(L, narg)); - return luaL_argerror(L, narg, msg); -} - - -static void tag_error (lua_State *L, int narg, int tag) { - typeerror(L, narg, lua_typename(L, tag)); -} - - -LUALIB_API void luaL_where (lua_State *L, int level) { - lua_Debug ar; - if (lua_getstack(L, level, &ar)) { /* check function at level */ - lua_getinfo(L, "Sl", &ar); /* get info about it */ - if (ar.currentline > 0) { /* is there info? */ - lua_pushfstring(L, "%s:%d: ", ar.short_src, ar.currentline); - return; - } - } - lua_pushliteral(L, ""); /* else, no information available... */ -} - - -LUALIB_API int luaL_error (lua_State *L, const char *fmt, ...) { - va_list argp; - va_start(argp, fmt); - luaL_where(L, 1); - lua_pushvfstring(L, fmt, argp); - va_end(argp); - lua_concat(L, 2); - return lua_error(L); -} - - -LUALIB_API int luaL_fileresult (lua_State *L, int stat, const char *fname) { - int en = errno; /* calls to Lua API may change this value */ - if (stat) { - lua_pushboolean(L, 1); - return 1; - } - else { - lua_pushnil(L); - if (fname) - lua_pushfstring(L, "%s: %s", fname, strerror(en)); - else - lua_pushstring(L, strerror(en)); - lua_pushinteger(L, en); - return 3; - } -} - - -#if !defined(inspectstat) /* { */ - -#if defined(LUA_USE_POSIX) - -#include <sys/wait.h> - -/* -** use appropriate macros to interpret 'pclose' return status -*/ -#define inspectstat(stat,what) \ - if (WIFEXITED(stat)) { stat = WEXITSTATUS(stat); } \ - else if (WIFSIGNALED(stat)) { stat = WTERMSIG(stat); what = "signal"; } - -#else - -#define inspectstat(stat,what) /* no op */ - -#endif - -#endif /* } */ - - -LUALIB_API int luaL_execresult (lua_State *L, int stat) { - const char *what = "exit"; /* type of termination */ - if (stat == -1) /* error? */ - return luaL_fileresult(L, 0, NULL); - else { - inspectstat(stat, what); /* interpret result */ - if (*what == 'e' && stat == 0) /* successful termination? */ - lua_pushboolean(L, 1); - else - lua_pushnil(L); - lua_pushstring(L, what); - lua_pushinteger(L, stat); - return 3; /* return true/nil,what,code */ - } -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Userdata's metatable manipulation -** ======================================================= -*/ - -LUALIB_API int luaL_newmetatable (lua_State *L, const char *tname) { - luaL_getmetatable(L, tname); /* try to get metatable */ - if (!lua_isnil(L, -1)) /* name already in use? */ - return 0; /* leave previous value on top, but return 0 */ - lua_pop(L, 1); - lua_newtable(L); /* create metatable */ - lua_pushvalue(L, -1); - lua_setfield(L, LUA_REGISTRYINDEX, tname); /* registry.name = metatable */ - return 1; -} - - -LUALIB_API void luaL_setmetatable (lua_State *L, const char *tname) { - luaL_getmetatable(L, tname); - lua_setmetatable(L, -2); -} - - -LUALIB_API void *luaL_testudata (lua_State *L, int ud, const char *tname) { - void *p = lua_touserdata(L, ud); - if (p != NULL) { /* value is a userdata? */ - if (lua_getmetatable(L, ud)) { /* does it have a metatable? */ - luaL_getmetatable(L, tname); /* get correct metatable */ - if (!lua_rawequal(L, -1, -2)) /* not the same? */ - p = NULL; /* value is a userdata with wrong metatable */ - lua_pop(L, 2); /* remove both metatables */ - return p; - } - } - return NULL; /* value is not a userdata with a metatable */ -} - - -LUALIB_API void *luaL_checkudata (lua_State *L, int ud, const char *tname) { - void *p = luaL_testudata(L, ud, tname); - if (p == NULL) typeerror(L, ud, tname); - return p; -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Argument check functions -** ======================================================= -*/ - -LUALIB_API int luaL_checkoption (lua_State *L, int narg, const char *def, - const char *const lst[]) { - const char *name = (def) ? luaL_optstring(L, narg, def) : - luaL_checkstring(L, narg); - int i; - for (i=0; lst[i]; i++) - if (strcmp(lst[i], name) == 0) - return i; - return luaL_argerror(L, narg, - lua_pushfstring(L, "invalid option " LUA_QS, name)); -} - - -LUALIB_API void luaL_checkstack (lua_State *L, int space, const char *msg) { - /* keep some extra space to run error routines, if needed */ - const int extra = LUA_MINSTACK; - if (!lua_checkstack(L, space + extra)) { - if (msg) - luaL_error(L, "stack overflow (%s)", msg); - else - luaL_error(L, "stack overflow"); - } -} - - -LUALIB_API void luaL_checktype (lua_State *L, int narg, int t) { - if (lua_type(L, narg) != t) - tag_error(L, narg, t); -} - - -LUALIB_API void luaL_checkany (lua_State *L, int narg) { - if (lua_type(L, narg) == LUA_TNONE) - luaL_argerror(L, narg, "value expected"); -} - - -LUALIB_API const char *luaL_checklstring (lua_State *L, int narg, size_t *len) { - const char *s = lua_tolstring(L, narg, len); - if (!s) tag_error(L, narg, LUA_TSTRING); - return s; -} - - -LUALIB_API const char *luaL_optlstring (lua_State *L, int narg, - const char *def, size_t *len) { - if (lua_isnoneornil(L, narg)) { - if (len) - *len = (def ? strlen(def) : 0); - return def; - } - else return luaL_checklstring(L, narg, len); -} - - -LUALIB_API lua_Number luaL_checknumber (lua_State *L, int narg) { - int isnum; - lua_Number d = lua_tonumberx(L, narg, &isnum); - if (!isnum) - tag_error(L, narg, LUA_TNUMBER); - return d; -} - - -LUALIB_API lua_Number luaL_optnumber (lua_State *L, int narg, lua_Number def) { - return luaL_opt(L, luaL_checknumber, narg, def); -} - - -LUALIB_API lua_Integer luaL_checkinteger (lua_State *L, int narg) { - int isnum; - lua_Integer d = lua_tointegerx(L, narg, &isnum); - if (!isnum) - tag_error(L, narg, LUA_TNUMBER); - return d; -} - - -LUALIB_API lua_Unsigned luaL_checkunsigned (lua_State *L, int narg) { - int isnum; - lua_Unsigned d = lua_tounsignedx(L, narg, &isnum); - if (!isnum) - tag_error(L, narg, LUA_TNUMBER); - return d; -} - - -LUALIB_API lua_Integer luaL_optinteger (lua_State *L, int narg, - lua_Integer def) { - return luaL_opt(L, luaL_checkinteger, narg, def); -} - - -LUALIB_API lua_Unsigned luaL_optunsigned (lua_State *L, int narg, - lua_Unsigned def) { - return luaL_opt(L, luaL_checkunsigned, narg, def); -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Generic Buffer manipulation -** ======================================================= -*/ - -/* -** check whether buffer is using a userdata on the stack as a temporary -** buffer -*/ -#define buffonstack(B) ((B)->b != (B)->initb) - - -/* -** returns a pointer to a free area with at least 'sz' bytes -*/ -LUALIB_API char *luaL_prepbuffsize (luaL_Buffer *B, size_t sz) { - lua_State *L = B->L; - if (B->size - B->n < sz) { /* not enough space? */ - char *newbuff; - size_t newsize = B->size * 2; /* double buffer size */ - if (newsize - B->n < sz) /* not big enough? */ - newsize = B->n + sz; - if (newsize < B->n || newsize - B->n < sz) - luaL_error(L, "buffer too large"); - /* create larger buffer */ - newbuff = (char *)lua_newuserdata(L, newsize * sizeof(char)); - /* move content to new buffer */ - memcpy(newbuff, B->b, B->n * sizeof(char)); - if (buffonstack(B)) - lua_remove(L, -2); /* remove old buffer */ - B->b = newbuff; - B->size = newsize; - } - return &B->b[B->n]; -} - - -LUALIB_API void luaL_addlstring (luaL_Buffer *B, const char *s, size_t l) { - char *b = luaL_prepbuffsize(B, l); - memcpy(b, s, l * sizeof(char)); - luaL_addsize(B, l); -} - - -LUALIB_API void luaL_addstring (luaL_Buffer *B, const char *s) { - luaL_addlstring(B, s, strlen(s)); -} - - -LUALIB_API void luaL_pushresult (luaL_Buffer *B) { - lua_State *L = B->L; - lua_pushlstring(L, B->b, B->n); - if (buffonstack(B)) - lua_remove(L, -2); /* remove old buffer */ -} - - -LUALIB_API void luaL_pushresultsize (luaL_Buffer *B, size_t sz) { - luaL_addsize(B, sz); - luaL_pushresult(B); -} - - -LUALIB_API void luaL_addvalue (luaL_Buffer *B) { - lua_State *L = B->L; - size_t l; - const char *s = lua_tolstring(L, -1, &l); - if (buffonstack(B)) - lua_insert(L, -2); /* put value below buffer */ - luaL_addlstring(B, s, l); - lua_remove(L, (buffonstack(B)) ? -2 : -1); /* remove value */ -} - - -LUALIB_API void luaL_buffinit (lua_State *L, luaL_Buffer *B) { - B->L = L; - B->b = B->initb; - B->n = 0; - B->size = LUAL_BUFFERSIZE; -} - - -LUALIB_API char *luaL_buffinitsize (lua_State *L, luaL_Buffer *B, size_t sz) { - luaL_buffinit(L, B); - return luaL_prepbuffsize(B, sz); -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Reference system -** ======================================================= -*/ - -/* index of free-list header */ -#define freelist 0 - - -LUALIB_API int luaL_ref (lua_State *L, int t) { - int ref; - if (lua_isnil(L, -1)) { - lua_pop(L, 1); /* remove from stack */ - return LUA_REFNIL; /* `nil' has a unique fixed reference */ - } - t = lua_absindex(L, t); - lua_rawgeti(L, t, freelist); /* get first free element */ - ref = (int)lua_tointeger(L, -1); /* ref = t[freelist] */ - lua_pop(L, 1); /* remove it from stack */ - if (ref != 0) { /* any free element? */ - lua_rawgeti(L, t, ref); /* remove it from list */ - lua_rawseti(L, t, freelist); /* (t[freelist] = t[ref]) */ - } - else /* no free elements */ - ref = (int)lua_rawlen(L, t) + 1; /* get a new reference */ - lua_rawseti(L, t, ref); - return ref; -} - - -LUALIB_API void luaL_unref (lua_State *L, int t, int ref) { - if (ref >= 0) { - t = lua_absindex(L, t); - lua_rawgeti(L, t, freelist); - lua_rawseti(L, t, ref); /* t[ref] = t[freelist] */ - lua_pushinteger(L, ref); - lua_rawseti(L, t, freelist); /* t[freelist] = ref */ - } -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Load functions -** ======================================================= -*/ - -typedef struct LoadF { - int n; /* number of pre-read characters */ - FILE *f; /* file being read */ - char buff[LUAL_BUFFERSIZE]; /* area for reading file */ -} LoadF; - - -static const char *getF (lua_State *L, void *ud, size_t *size) { - LoadF *lf = (LoadF *)ud; - (void)L; /* not used */ - if (lf->n > 0) { /* are there pre-read characters to be read? */ - *size = lf->n; /* return them (chars already in buffer) */ - lf->n = 0; /* no more pre-read characters */ - } - else { /* read a block from file */ - /* 'fread' can return > 0 *and* set the EOF flag. If next call to - 'getF' called 'fread', it might still wait for user input. - The next check avoids this problem. */ - if (feof(lf->f)) return NULL; - *size = fread(lf->buff, 1, sizeof(lf->buff), lf->f); /* read block */ - } - return lf->buff; -} - - -static int errfile (lua_State *L, const char *what, int fnameindex) { - const char *serr = strerror(errno); - const char *filename = lua_tostring(L, fnameindex) + 1; - lua_pushfstring(L, "cannot %s %s: %s", what, filename, serr); - lua_remove(L, fnameindex); - return LUA_ERRFILE; -} - - -static int skipBOM (LoadF *lf) { - const char *p = "\xEF\xBB\xBF"; /* Utf8 BOM mark */ - int c; - lf->n = 0; - do { - c = getc(lf->f); - if (c == EOF || c != *(const unsigned char *)p++) return c; - lf->buff[lf->n++] = c; /* to be read by the parser */ - } while (*p != '\0'); - lf->n = 0; /* prefix matched; discard it */ - return getc(lf->f); /* return next character */ -} - - -/* -** reads the first character of file 'f' and skips an optional BOM mark -** in its beginning plus its first line if it starts with '#'. Returns -** true if it skipped the first line. In any case, '*cp' has the -** first "valid" character of the file (after the optional BOM and -** a first-line comment). -*/ -static int skipcomment (LoadF *lf, int *cp) { - int c = *cp = skipBOM(lf); - if (c == '#') { /* first line is a comment (Unix exec. file)? */ - do { /* skip first line */ - c = getc(lf->f); - } while (c != EOF && c != '\n') ; - *cp = getc(lf->f); /* skip end-of-line, if present */ - return 1; /* there was a comment */ - } - else return 0; /* no comment */ -} - - -LUALIB_API int luaL_loadfilex (lua_State *L, const char *filename, - const char *mode) { - LoadF lf; - int status, readstatus; - int c; - int fnameindex = lua_gettop(L) + 1; /* index of filename on the stack */ - if (filename == NULL) { - lua_pushliteral(L, "=stdin"); - lf.f = stdin; - } - else { - lua_pushfstring(L, "@%s", filename); - lf.f = fopen(filename, "r"); - if (lf.f == NULL) return errfile(L, "open", fnameindex); - } - if (skipcomment(&lf, &c)) /* read initial portion */ - lf.buff[lf.n++] = '\n'; /* add line to correct line numbers */ - if (c == LUA_SIGNATURE[0] && filename) { /* binary file? */ - lf.f = freopen(filename, "rb", lf.f); /* reopen in binary mode */ - if (lf.f == NULL) return errfile(L, "reopen", fnameindex); - skipcomment(&lf, &c); /* re-read initial portion */ - } - if (c != EOF) - lf.buff[lf.n++] = c; /* 'c' is the first character of the stream */ - status = lua_load(L, getF, &lf, lua_tostring(L, -1), mode); - readstatus = ferror(lf.f); - if (filename) fclose(lf.f); /* close file (even in case of errors) */ - if (readstatus) { - lua_settop(L, fnameindex); /* ignore results from `lua_load' */ - return errfile(L, "read", fnameindex); - } - lua_remove(L, fnameindex); - return status; -} - - -typedef struct LoadS { - const char *s; - size_t size; -} LoadS; - - -static const char *getS (lua_State *L, void *ud, size_t *size) { - LoadS *ls = (LoadS *)ud; - (void)L; /* not used */ - if (ls->size == 0) return NULL; - *size = ls->size; - ls->size = 0; - return ls->s; -} - - -LUALIB_API int luaL_loadbufferx (lua_State *L, const char *buff, size_t size, - const char *name, const char *mode) { - LoadS ls; - ls.s = buff; - ls.size = size; - return lua_load(L, getS, &ls, name, mode); -} - - -LUALIB_API int luaL_loadstring (lua_State *L, const char *s) { - return luaL_loadbuffer(L, s, strlen(s), s); -} - -/* }====================================================== */ - - - -LUALIB_API int luaL_getmetafield (lua_State *L, int obj, const char *event) { - if (!lua_getmetatable(L, obj)) /* no metatable? */ - return 0; - lua_pushstring(L, event); - lua_rawget(L, -2); - if (lua_isnil(L, -1)) { - lua_pop(L, 2); /* remove metatable and metafield */ - return 0; - } - else { - lua_remove(L, -2); /* remove only metatable */ - return 1; - } -} - - -LUALIB_API int luaL_callmeta (lua_State *L, int obj, const char *event) { - obj = lua_absindex(L, obj); - if (!luaL_getmetafield(L, obj, event)) /* no metafield? */ - return 0; - lua_pushvalue(L, obj); - lua_call(L, 1, 1); - return 1; -} - - -LUALIB_API int luaL_len (lua_State *L, int idx) { - int l; - int isnum; - lua_len(L, idx); - l = (int)lua_tointegerx(L, -1, &isnum); - if (!isnum) - luaL_error(L, "object length is not a number"); - lua_pop(L, 1); /* remove object */ - return l; -} - - -LUALIB_API const char *luaL_tolstring (lua_State *L, int idx, size_t *len) { - if (!luaL_callmeta(L, idx, "__tostring")) { /* no metafield? */ - switch (lua_type(L, idx)) { - case LUA_TNUMBER: - case LUA_TSTRING: - lua_pushvalue(L, idx); - break; - case LUA_TBOOLEAN: - lua_pushstring(L, (lua_toboolean(L, idx) ? "true" : "false")); - break; - case LUA_TNIL: - lua_pushliteral(L, "nil"); - break; - default: - lua_pushfstring(L, "%s: %p", luaL_typename(L, idx), - lua_topointer(L, idx)); - break; - } - } - return lua_tolstring(L, -1, len); -} - - -/* -** {====================================================== -** Compatibility with 5.1 module functions -** ======================================================= -*/ -#if defined(LUA_COMPAT_MODULE) - -static const char *luaL_findtable (lua_State *L, int idx, - const char *fname, int szhint) { - const char *e; - if (idx) lua_pushvalue(L, idx); - do { - e = strchr(fname, '.'); - if (e == NULL) e = fname + strlen(fname); - lua_pushlstring(L, fname, e - fname); - lua_rawget(L, -2); - if (lua_isnil(L, -1)) { /* no such field? */ - lua_pop(L, 1); /* remove this nil */ - lua_createtable(L, 0, (*e == '.' ? 1 : szhint)); /* new table for field */ - lua_pushlstring(L, fname, e - fname); - lua_pushvalue(L, -2); - lua_settable(L, -4); /* set new table into field */ - } - else if (!lua_istable(L, -1)) { /* field has a non-table value? */ - lua_pop(L, 2); /* remove table and value */ - return fname; /* return problematic part of the name */ - } - lua_remove(L, -2); /* remove previous table */ - fname = e + 1; - } while (*e == '.'); - return NULL; -} - - -/* -** Count number of elements in a luaL_Reg list. -*/ -static int libsize (const luaL_Reg *l) { - int size = 0; - for (; l && l->name; l++) size++; - return size; -} - - -/* -** Find or create a module table with a given name. The function -** first looks at the _LOADED table and, if that fails, try a -** global variable with that name. In any case, leaves on the stack -** the module table. -*/ -LUALIB_API void luaL_pushmodule (lua_State *L, const char *modname, - int sizehint) { - luaL_findtable(L, LUA_REGISTRYINDEX, "_LOADED", 1); /* get _LOADED table */ - lua_getfield(L, -1, modname); /* get _LOADED[modname] */ - if (!lua_istable(L, -1)) { /* not found? */ - lua_pop(L, 1); /* remove previous result */ - /* try global variable (and create one if it does not exist) */ - lua_pushglobaltable(L); - if (luaL_findtable(L, 0, modname, sizehint) != NULL) - luaL_error(L, "name conflict for module " LUA_QS, modname); - lua_pushvalue(L, -1); - lua_setfield(L, -3, modname); /* _LOADED[modname] = new table */ - } - lua_remove(L, -2); /* remove _LOADED table */ -} - - -LUALIB_API void luaL_openlib (lua_State *L, const char *libname, - const luaL_Reg *l, int nup) { - luaL_checkversion(L); - if (libname) { - luaL_pushmodule(L, libname, libsize(l)); /* get/create library table */ - lua_insert(L, -(nup + 1)); /* move library table to below upvalues */ - } - if (l) - luaL_setfuncs(L, l, nup); - else - lua_pop(L, nup); /* remove upvalues */ -} - -#endif -/* }====================================================== */ - -/* -** set functions from list 'l' into table at top - 'nup'; each -** function gets the 'nup' elements at the top as upvalues. -** Returns with only the table at the stack. -*/ -LUALIB_API void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup) { - luaL_checkversion(L); - luaL_checkstack(L, nup, "too many upvalues"); - for (; l->name != NULL; l++) { /* fill the table with given functions */ - int i; - for (i = 0; i < nup; i++) /* copy upvalues to the top */ - lua_pushvalue(L, -nup); - lua_pushcclosure(L, l->func, nup); /* closure with those upvalues */ - lua_setfield(L, -(nup + 2), l->name); - } - lua_pop(L, nup); /* remove upvalues */ -} - - -/* -** ensure that stack[idx][fname] has a table and push that table -** into the stack -*/ -LUALIB_API int luaL_getsubtable (lua_State *L, int idx, const char *fname) { - lua_getfield(L, idx, fname); - if (lua_istable(L, -1)) return 1; /* table already there */ - else { - lua_pop(L, 1); /* remove previous result */ - idx = lua_absindex(L, idx); - lua_newtable(L); - lua_pushvalue(L, -1); /* copy to be left at top */ - lua_setfield(L, idx, fname); /* assign new table to field */ - return 0; /* false, because did not find table there */ - } -} - - -/* -** stripped-down 'require'. Calls 'openf' to open a module, -** registers the result in 'package.loaded' table and, if 'glb' -** is true, also registers the result in the global table. -** Leaves resulting module on the top. -*/ -LUALIB_API void luaL_requiref (lua_State *L, const char *modname, - lua_CFunction openf, int glb) { - lua_pushcfunction(L, openf); - lua_pushstring(L, modname); /* argument to open function */ - lua_call(L, 1, 1); /* open module */ - luaL_getsubtable(L, LUA_REGISTRYINDEX, "_LOADED"); - lua_pushvalue(L, -2); /* make copy of module (call result) */ - lua_setfield(L, -2, modname); /* _LOADED[modname] = module */ - lua_pop(L, 1); /* remove _LOADED table */ - if (glb) { - lua_pushvalue(L, -1); /* copy of 'mod' */ - lua_setglobal(L, modname); /* _G[modname] = module */ - } -} - - -LUALIB_API const char *luaL_gsub (lua_State *L, const char *s, const char *p, - const char *r) { - const char *wild; - size_t l = strlen(p); - luaL_Buffer b; - luaL_buffinit(L, &b); - while ((wild = strstr(s, p)) != NULL) { - luaL_addlstring(&b, s, wild - s); /* push prefix */ - luaL_addstring(&b, r); /* push replacement in place of pattern */ - s = wild + l; /* continue after `p' */ - } - luaL_addstring(&b, s); /* push last suffix */ - luaL_pushresult(&b); - return lua_tostring(L, -1); -} - - -static void *l_alloc (void *ud, void *ptr, size_t osize, size_t nsize) { - (void)ud; (void)osize; /* not used */ - if (nsize == 0) { - free(ptr); - return NULL; - } - else - return realloc(ptr, nsize); -} - - -static int panic (lua_State *L) { - luai_writestringerror("PANIC: unprotected error in call to Lua API (%s)\n", - lua_tostring(L, -1)); - return 0; /* return to Lua to abort */ -} - - -LUALIB_API lua_State *luaL_newstate (void) { - lua_State *L = lua_newstate(l_alloc, NULL); - if (L) lua_atpanic(L, &panic); - return L; -} - - -LUALIB_API void luaL_checkversion_ (lua_State *L, lua_Number ver) { - const lua_Number *v = lua_version(L); - if (v != lua_version(NULL)) - luaL_error(L, "multiple Lua VMs detected"); - else if (*v != ver) - luaL_error(L, "version mismatch: app. needs %f, Lua core provides %f", - ver, *v); - /* check conversions number -> integer types */ - lua_pushnumber(L, -(lua_Number)0x1234); - if (lua_tointeger(L, -1) != -0x1234 || - lua_tounsigned(L, -1) != (lua_Unsigned)-0x1234) - luaL_error(L, "bad conversion number->int;" - " must recompile Lua with proper settings"); - lua_pop(L, 1); -} - diff --git a/source/libs/lua52/lua52-src/src/lauxlib.h b/source/libs/lua52/lua52-src/src/lauxlib.h deleted file mode 100644 index 0fb023b8e..000000000 --- a/source/libs/lua52/lua52-src/src/lauxlib.h +++ /dev/null @@ -1,212 +0,0 @@ -/* -** $Id: lauxlib.h,v 1.120.1.1 2013/04/12 18:48:47 roberto Exp $ -** Auxiliary functions for building Lua libraries -** See Copyright Notice in lua.h -*/ - - -#ifndef lauxlib_h -#define lauxlib_h - - -#include <stddef.h> -#include <stdio.h> - -#include "lua.h" - - - -/* extra error code for `luaL_load' */ -#define LUA_ERRFILE (LUA_ERRERR+1) - - -typedef struct luaL_Reg { - const char *name; - lua_CFunction func; -} luaL_Reg; - - -LUALIB_API void (luaL_checkversion_) (lua_State *L, lua_Number ver); -#define luaL_checkversion(L) luaL_checkversion_(L, LUA_VERSION_NUM) - -LUALIB_API int (luaL_getmetafield) (lua_State *L, int obj, const char *e); -LUALIB_API int (luaL_callmeta) (lua_State *L, int obj, const char *e); -LUALIB_API const char *(luaL_tolstring) (lua_State *L, int idx, size_t *len); -LUALIB_API int (luaL_argerror) (lua_State *L, int numarg, const char *extramsg); -LUALIB_API const char *(luaL_checklstring) (lua_State *L, int numArg, - size_t *l); -LUALIB_API const char *(luaL_optlstring) (lua_State *L, int numArg, - const char *def, size_t *l); -LUALIB_API lua_Number (luaL_checknumber) (lua_State *L, int numArg); -LUALIB_API lua_Number (luaL_optnumber) (lua_State *L, int nArg, lua_Number def); - -LUALIB_API lua_Integer (luaL_checkinteger) (lua_State *L, int numArg); -LUALIB_API lua_Integer (luaL_optinteger) (lua_State *L, int nArg, - lua_Integer def); -LUALIB_API lua_Unsigned (luaL_checkunsigned) (lua_State *L, int numArg); -LUALIB_API lua_Unsigned (luaL_optunsigned) (lua_State *L, int numArg, - lua_Unsigned def); - -LUALIB_API void (luaL_checkstack) (lua_State *L, int sz, const char *msg); -LUALIB_API void (luaL_checktype) (lua_State *L, int narg, int t); -LUALIB_API void (luaL_checkany) (lua_State *L, int narg); - -LUALIB_API int (luaL_newmetatable) (lua_State *L, const char *tname); -LUALIB_API void (luaL_setmetatable) (lua_State *L, const char *tname); -LUALIB_API void *(luaL_testudata) (lua_State *L, int ud, const char *tname); -LUALIB_API void *(luaL_checkudata) (lua_State *L, int ud, const char *tname); - -LUALIB_API void (luaL_where) (lua_State *L, int lvl); -LUALIB_API int (luaL_error) (lua_State *L, const char *fmt, ...); - -LUALIB_API int (luaL_checkoption) (lua_State *L, int narg, const char *def, - const char *const lst[]); - -LUALIB_API int (luaL_fileresult) (lua_State *L, int stat, const char *fname); -LUALIB_API int (luaL_execresult) (lua_State *L, int stat); - -/* pre-defined references */ -#define LUA_NOREF (-2) -#define LUA_REFNIL (-1) - -LUALIB_API int (luaL_ref) (lua_State *L, int t); -LUALIB_API void (luaL_unref) (lua_State *L, int t, int ref); - -LUALIB_API int (luaL_loadfilex) (lua_State *L, const char *filename, - const char *mode); - -#define luaL_loadfile(L,f) luaL_loadfilex(L,f,NULL) - -LUALIB_API int (luaL_loadbufferx) (lua_State *L, const char *buff, size_t sz, - const char *name, const char *mode); -LUALIB_API int (luaL_loadstring) (lua_State *L, const char *s); - -LUALIB_API lua_State *(luaL_newstate) (void); - -LUALIB_API int (luaL_len) (lua_State *L, int idx); - -LUALIB_API const char *(luaL_gsub) (lua_State *L, const char *s, const char *p, - const char *r); - -LUALIB_API void (luaL_setfuncs) (lua_State *L, const luaL_Reg *l, int nup); - -LUALIB_API int (luaL_getsubtable) (lua_State *L, int idx, const char *fname); - -LUALIB_API void (luaL_traceback) (lua_State *L, lua_State *L1, - const char *msg, int level); - -LUALIB_API void (luaL_requiref) (lua_State *L, const char *modname, - lua_CFunction openf, int glb); - -/* -** =============================================================== -** some useful macros -** =============================================================== -*/ - - -#define luaL_newlibtable(L,l) \ - lua_createtable(L, 0, sizeof(l)/sizeof((l)[0]) - 1) - -#define luaL_newlib(L,l) (luaL_newlibtable(L,l), luaL_setfuncs(L,l,0)) - -#define luaL_argcheck(L, cond,numarg,extramsg) \ - ((void)((cond) || luaL_argerror(L, (numarg), (extramsg)))) -#define luaL_checkstring(L,n) (luaL_checklstring(L, (n), NULL)) -#define luaL_optstring(L,n,d) (luaL_optlstring(L, (n), (d), NULL)) -#define luaL_checkint(L,n) ((int)luaL_checkinteger(L, (n))) -#define luaL_optint(L,n,d) ((int)luaL_optinteger(L, (n), (d))) -#define luaL_checklong(L,n) ((long)luaL_checkinteger(L, (n))) -#define luaL_optlong(L,n,d) ((long)luaL_optinteger(L, (n), (d))) - -#define luaL_typename(L,i) lua_typename(L, lua_type(L,(i))) - -#define luaL_dofile(L, fn) \ - (luaL_loadfile(L, fn) || lua_pcall(L, 0, LUA_MULTRET, 0)) - -#define luaL_dostring(L, s) \ - (luaL_loadstring(L, s) || lua_pcall(L, 0, LUA_MULTRET, 0)) - -#define luaL_getmetatable(L,n) (lua_getfield(L, LUA_REGISTRYINDEX, (n))) - -#define luaL_opt(L,f,n,d) (lua_isnoneornil(L,(n)) ? (d) : f(L,(n))) - -#define luaL_loadbuffer(L,s,sz,n) luaL_loadbufferx(L,s,sz,n,NULL) - - -/* -** {====================================================== -** Generic Buffer manipulation -** ======================================================= -*/ - -typedef struct luaL_Buffer { - char *b; /* buffer address */ - size_t size; /* buffer size */ - size_t n; /* number of characters in buffer */ - lua_State *L; - char initb[LUAL_BUFFERSIZE]; /* initial buffer */ -} luaL_Buffer; - - -#define luaL_addchar(B,c) \ - ((void)((B)->n < (B)->size || luaL_prepbuffsize((B), 1)), \ - ((B)->b[(B)->n++] = (c))) - -#define luaL_addsize(B,s) ((B)->n += (s)) - -LUALIB_API void (luaL_buffinit) (lua_State *L, luaL_Buffer *B); -LUALIB_API char *(luaL_prepbuffsize) (luaL_Buffer *B, size_t sz); -LUALIB_API void (luaL_addlstring) (luaL_Buffer *B, const char *s, size_t l); -LUALIB_API void (luaL_addstring) (luaL_Buffer *B, const char *s); -LUALIB_API void (luaL_addvalue) (luaL_Buffer *B); -LUALIB_API void (luaL_pushresult) (luaL_Buffer *B); -LUALIB_API void (luaL_pushresultsize) (luaL_Buffer *B, size_t sz); -LUALIB_API char *(luaL_buffinitsize) (lua_State *L, luaL_Buffer *B, size_t sz); - -#define luaL_prepbuffer(B) luaL_prepbuffsize(B, LUAL_BUFFERSIZE) - -/* }====================================================== */ - - - -/* -** {====================================================== -** File handles for IO library -** ======================================================= -*/ - -/* -** A file handle is a userdata with metatable 'LUA_FILEHANDLE' and -** initial structure 'luaL_Stream' (it may contain other fields -** after that initial structure). -*/ - -#define LUA_FILEHANDLE "FILE*" - - -typedef struct luaL_Stream { - FILE *f; /* stream (NULL for incompletely created streams) */ - lua_CFunction closef; /* to close stream (NULL for closed streams) */ -} luaL_Stream; - -/* }====================================================== */ - - - -/* compatibility with old module system */ -#if defined(LUA_COMPAT_MODULE) - -LUALIB_API void (luaL_pushmodule) (lua_State *L, const char *modname, - int sizehint); -LUALIB_API void (luaL_openlib) (lua_State *L, const char *libname, - const luaL_Reg *l, int nup); - -#define luaL_register(L,n,l) (luaL_openlib(L,(n),(l),0)) - -#endif - - -#endif - - diff --git a/source/libs/lua52/lua52-src/src/lbaselib.c b/source/libs/lua52/lua52-src/src/lbaselib.c deleted file mode 100644 index 5255b3cd9..000000000 --- a/source/libs/lua52/lua52-src/src/lbaselib.c +++ /dev/null @@ -1,458 +0,0 @@ -/* -** $Id: lbaselib.c,v 1.276.1.1 2013/04/12 18:48:47 roberto Exp $ -** Basic library -** See Copyright Notice in lua.h -*/ - - - -#include <ctype.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#define lbaselib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -static int luaB_print (lua_State *L) { - int n = lua_gettop(L); /* number of arguments */ - int i; - lua_getglobal(L, "tostring"); - for (i=1; i<=n; i++) { - const char *s; - size_t l; - lua_pushvalue(L, -1); /* function to be called */ - lua_pushvalue(L, i); /* value to print */ - lua_call(L, 1, 1); - s = lua_tolstring(L, -1, &l); /* get result */ - if (s == NULL) - return luaL_error(L, - LUA_QL("tostring") " must return a string to " LUA_QL("print")); - if (i>1) luai_writestring("\t", 1); - luai_writestring(s, l); - lua_pop(L, 1); /* pop result */ - } - luai_writeline(); - return 0; -} - - -#define SPACECHARS " \f\n\r\t\v" - -static int luaB_tonumber (lua_State *L) { - if (lua_isnoneornil(L, 2)) { /* standard conversion */ - int isnum; - lua_Number n = lua_tonumberx(L, 1, &isnum); - if (isnum) { - lua_pushnumber(L, n); - return 1; - } /* else not a number; must be something */ - luaL_checkany(L, 1); - } - else { - size_t l; - const char *s = luaL_checklstring(L, 1, &l); - const char *e = s + l; /* end point for 's' */ - int base = luaL_checkint(L, 2); - int neg = 0; - luaL_argcheck(L, 2 <= base && base <= 36, 2, "base out of range"); - s += strspn(s, SPACECHARS); /* skip initial spaces */ - if (*s == '-') { s++; neg = 1; } /* handle signal */ - else if (*s == '+') s++; - if (isalnum((unsigned char)*s)) { - lua_Number n = 0; - do { - int digit = (isdigit((unsigned char)*s)) ? *s - '0' - : toupper((unsigned char)*s) - 'A' + 10; - if (digit >= base) break; /* invalid numeral; force a fail */ - n = n * (lua_Number)base + (lua_Number)digit; - s++; - } while (isalnum((unsigned char)*s)); - s += strspn(s, SPACECHARS); /* skip trailing spaces */ - if (s == e) { /* no invalid trailing characters? */ - lua_pushnumber(L, (neg) ? -n : n); - return 1; - } /* else not a number */ - } /* else not a number */ - } - lua_pushnil(L); /* not a number */ - return 1; -} - - -static int luaB_error (lua_State *L) { - int level = luaL_optint(L, 2, 1); - lua_settop(L, 1); - if (lua_isstring(L, 1) && level > 0) { /* add extra information? */ - luaL_where(L, level); - lua_pushvalue(L, 1); - lua_concat(L, 2); - } - return lua_error(L); -} - - -static int luaB_getmetatable (lua_State *L) { - luaL_checkany(L, 1); - if (!lua_getmetatable(L, 1)) { - lua_pushnil(L); - return 1; /* no metatable */ - } - luaL_getmetafield(L, 1, "__metatable"); - return 1; /* returns either __metatable field (if present) or metatable */ -} - - -static int luaB_setmetatable (lua_State *L) { - int t = lua_type(L, 2); - luaL_checktype(L, 1, LUA_TTABLE); - luaL_argcheck(L, t == LUA_TNIL || t == LUA_TTABLE, 2, - "nil or table expected"); - if (luaL_getmetafield(L, 1, "__metatable")) - return luaL_error(L, "cannot change a protected metatable"); - lua_settop(L, 2); - lua_setmetatable(L, 1); - return 1; -} - - -static int luaB_rawequal (lua_State *L) { - luaL_checkany(L, 1); - luaL_checkany(L, 2); - lua_pushboolean(L, lua_rawequal(L, 1, 2)); - return 1; -} - - -static int luaB_rawlen (lua_State *L) { - int t = lua_type(L, 1); - luaL_argcheck(L, t == LUA_TTABLE || t == LUA_TSTRING, 1, - "table or string expected"); - lua_pushinteger(L, lua_rawlen(L, 1)); - return 1; -} - - -static int luaB_rawget (lua_State *L) { - luaL_checktype(L, 1, LUA_TTABLE); - luaL_checkany(L, 2); - lua_settop(L, 2); - lua_rawget(L, 1); - return 1; -} - -static int luaB_rawset (lua_State *L) { - luaL_checktype(L, 1, LUA_TTABLE); - luaL_checkany(L, 2); - luaL_checkany(L, 3); - lua_settop(L, 3); - lua_rawset(L, 1); - return 1; -} - - -static int luaB_collectgarbage (lua_State *L) { - static const char *const opts[] = {"stop", "restart", "collect", - "count", "step", "setpause", "setstepmul", - "setmajorinc", "isrunning", "generational", "incremental", NULL}; - static const int optsnum[] = {LUA_GCSTOP, LUA_GCRESTART, LUA_GCCOLLECT, - LUA_GCCOUNT, LUA_GCSTEP, LUA_GCSETPAUSE, LUA_GCSETSTEPMUL, - LUA_GCSETMAJORINC, LUA_GCISRUNNING, LUA_GCGEN, LUA_GCINC}; - int o = optsnum[luaL_checkoption(L, 1, "collect", opts)]; - int ex = luaL_optint(L, 2, 0); - int res = lua_gc(L, o, ex); - switch (o) { - case LUA_GCCOUNT: { - int b = lua_gc(L, LUA_GCCOUNTB, 0); - lua_pushnumber(L, res + ((lua_Number)b/1024)); - lua_pushinteger(L, b); - return 2; - } - case LUA_GCSTEP: case LUA_GCISRUNNING: { - lua_pushboolean(L, res); - return 1; - } - default: { - lua_pushinteger(L, res); - return 1; - } - } -} - - -static int luaB_type (lua_State *L) { - luaL_checkany(L, 1); - lua_pushstring(L, luaL_typename(L, 1)); - return 1; -} - - -static int pairsmeta (lua_State *L, const char *method, int iszero, - lua_CFunction iter) { - if (!luaL_getmetafield(L, 1, method)) { /* no metamethod? */ - luaL_checktype(L, 1, LUA_TTABLE); /* argument must be a table */ - lua_pushcfunction(L, iter); /* will return generator, */ - lua_pushvalue(L, 1); /* state, */ - if (iszero) lua_pushinteger(L, 0); /* and initial value */ - else lua_pushnil(L); - } - else { - lua_pushvalue(L, 1); /* argument 'self' to metamethod */ - lua_call(L, 1, 3); /* get 3 values from metamethod */ - } - return 3; -} - - -static int luaB_next (lua_State *L) { - luaL_checktype(L, 1, LUA_TTABLE); - lua_settop(L, 2); /* create a 2nd argument if there isn't one */ - if (lua_next(L, 1)) - return 2; - else { - lua_pushnil(L); - return 1; - } -} - - -static int luaB_pairs (lua_State *L) { - return pairsmeta(L, "__pairs", 0, luaB_next); -} - - -static int ipairsaux (lua_State *L) { - int i = luaL_checkint(L, 2); - luaL_checktype(L, 1, LUA_TTABLE); - i++; /* next value */ - lua_pushinteger(L, i); - lua_rawgeti(L, 1, i); - return (lua_isnil(L, -1)) ? 1 : 2; -} - - -static int luaB_ipairs (lua_State *L) { - return pairsmeta(L, "__ipairs", 1, ipairsaux); -} - - -static int load_aux (lua_State *L, int status, int envidx) { - if (status == LUA_OK) { - if (envidx != 0) { /* 'env' parameter? */ - lua_pushvalue(L, envidx); /* environment for loaded function */ - if (!lua_setupvalue(L, -2, 1)) /* set it as 1st upvalue */ - lua_pop(L, 1); /* remove 'env' if not used by previous call */ - } - return 1; - } - else { /* error (message is on top of the stack) */ - lua_pushnil(L); - lua_insert(L, -2); /* put before error message */ - return 2; /* return nil plus error message */ - } -} - - -static int luaB_loadfile (lua_State *L) { - const char *fname = luaL_optstring(L, 1, NULL); - const char *mode = luaL_optstring(L, 2, NULL); - int env = (!lua_isnone(L, 3) ? 3 : 0); /* 'env' index or 0 if no 'env' */ - int status = luaL_loadfilex(L, fname, mode); - return load_aux(L, status, env); -} - - -/* -** {====================================================== -** Generic Read function -** ======================================================= -*/ - - -/* -** reserved slot, above all arguments, to hold a copy of the returned -** string to avoid it being collected while parsed. 'load' has four -** optional arguments (chunk, source name, mode, and environment). -*/ -#define RESERVEDSLOT 5 - - -/* -** Reader for generic `load' function: `lua_load' uses the -** stack for internal stuff, so the reader cannot change the -** stack top. Instead, it keeps its resulting string in a -** reserved slot inside the stack. -*/ -static const char *generic_reader (lua_State *L, void *ud, size_t *size) { - (void)(ud); /* not used */ - luaL_checkstack(L, 2, "too many nested functions"); - lua_pushvalue(L, 1); /* get function */ - lua_call(L, 0, 1); /* call it */ - if (lua_isnil(L, -1)) { - lua_pop(L, 1); /* pop result */ - *size = 0; - return NULL; - } - else if (!lua_isstring(L, -1)) - luaL_error(L, "reader function must return a string"); - lua_replace(L, RESERVEDSLOT); /* save string in reserved slot */ - return lua_tolstring(L, RESERVEDSLOT, size); -} - - -static int luaB_load (lua_State *L) { - int status; - size_t l; - const char *s = lua_tolstring(L, 1, &l); - const char *mode = luaL_optstring(L, 3, "bt"); - int env = (!lua_isnone(L, 4) ? 4 : 0); /* 'env' index or 0 if no 'env' */ - if (s != NULL) { /* loading a string? */ - const char *chunkname = luaL_optstring(L, 2, s); - status = luaL_loadbufferx(L, s, l, chunkname, mode); - } - else { /* loading from a reader function */ - const char *chunkname = luaL_optstring(L, 2, "=(load)"); - luaL_checktype(L, 1, LUA_TFUNCTION); - lua_settop(L, RESERVEDSLOT); /* create reserved slot */ - status = lua_load(L, generic_reader, NULL, chunkname, mode); - } - return load_aux(L, status, env); -} - -/* }====================================================== */ - - -static int dofilecont (lua_State *L) { - return lua_gettop(L) - 1; -} - - -static int luaB_dofile (lua_State *L) { - const char *fname = luaL_optstring(L, 1, NULL); - lua_settop(L, 1); - if (luaL_loadfile(L, fname) != LUA_OK) - return lua_error(L); - lua_callk(L, 0, LUA_MULTRET, 0, dofilecont); - return dofilecont(L); -} - - -static int luaB_assert (lua_State *L) { - if (!lua_toboolean(L, 1)) - return luaL_error(L, "%s", luaL_optstring(L, 2, "assertion failed!")); - return lua_gettop(L); -} - - -static int luaB_select (lua_State *L) { - int n = lua_gettop(L); - if (lua_type(L, 1) == LUA_TSTRING && *lua_tostring(L, 1) == '#') { - lua_pushinteger(L, n-1); - return 1; - } - else { - int i = luaL_checkint(L, 1); - if (i < 0) i = n + i; - else if (i > n) i = n; - luaL_argcheck(L, 1 <= i, 1, "index out of range"); - return n - i; - } -} - - -static int finishpcall (lua_State *L, int status) { - if (!lua_checkstack(L, 1)) { /* no space for extra boolean? */ - lua_settop(L, 0); /* create space for return values */ - lua_pushboolean(L, 0); - lua_pushstring(L, "stack overflow"); - return 2; /* return false, msg */ - } - lua_pushboolean(L, status); /* first result (status) */ - lua_replace(L, 1); /* put first result in first slot */ - return lua_gettop(L); -} - - -static int pcallcont (lua_State *L) { - int status = lua_getctx(L, NULL); - return finishpcall(L, (status == LUA_YIELD)); -} - - -static int luaB_pcall (lua_State *L) { - int status; - luaL_checkany(L, 1); - lua_pushnil(L); - lua_insert(L, 1); /* create space for status result */ - status = lua_pcallk(L, lua_gettop(L) - 2, LUA_MULTRET, 0, 0, pcallcont); - return finishpcall(L, (status == LUA_OK)); -} - - -static int luaB_xpcall (lua_State *L) { - int status; - int n = lua_gettop(L); - luaL_argcheck(L, n >= 2, 2, "value expected"); - lua_pushvalue(L, 1); /* exchange function... */ - lua_copy(L, 2, 1); /* ...and error handler */ - lua_replace(L, 2); - status = lua_pcallk(L, n - 2, LUA_MULTRET, 1, 0, pcallcont); - return finishpcall(L, (status == LUA_OK)); -} - - -static int luaB_tostring (lua_State *L) { - luaL_checkany(L, 1); - luaL_tolstring(L, 1, NULL); - return 1; -} - - -static const luaL_Reg base_funcs[] = { - {"assert", luaB_assert}, - {"collectgarbage", luaB_collectgarbage}, - {"dofile", luaB_dofile}, - {"error", luaB_error}, - {"getmetatable", luaB_getmetatable}, - {"ipairs", luaB_ipairs}, - {"loadfile", luaB_loadfile}, - {"load", luaB_load}, -#if defined(LUA_COMPAT_LOADSTRING) - {"loadstring", luaB_load}, -#endif - {"next", luaB_next}, - {"pairs", luaB_pairs}, - {"pcall", luaB_pcall}, - {"print", luaB_print}, - {"rawequal", luaB_rawequal}, - {"rawlen", luaB_rawlen}, - {"rawget", luaB_rawget}, - {"rawset", luaB_rawset}, - {"select", luaB_select}, - {"setmetatable", luaB_setmetatable}, - {"tonumber", luaB_tonumber}, - {"tostring", luaB_tostring}, - {"type", luaB_type}, - {"xpcall", luaB_xpcall}, - {NULL, NULL} -}; - - -LUAMOD_API int luaopen_base (lua_State *L) { - /* set global _G */ - lua_pushglobaltable(L); - lua_pushglobaltable(L); - lua_setfield(L, -2, "_G"); - /* open lib into global table */ - luaL_setfuncs(L, base_funcs, 0); - lua_pushliteral(L, LUA_VERSION); - lua_setfield(L, -2, "_VERSION"); /* set global _VERSION */ - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/lbitlib.c b/source/libs/lua52/lua52-src/src/lbitlib.c deleted file mode 100644 index 31c7b66f1..000000000 --- a/source/libs/lua52/lua52-src/src/lbitlib.c +++ /dev/null @@ -1,212 +0,0 @@ -/* -** $Id: lbitlib.c,v 1.18.1.2 2013/07/09 18:01:41 roberto Exp $ -** Standard library for bitwise operations -** See Copyright Notice in lua.h -*/ - -#define lbitlib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -/* number of bits to consider in a number */ -#if !defined(LUA_NBITS) -#define LUA_NBITS 32 -#endif - - -#define ALLONES (~(((~(lua_Unsigned)0) << (LUA_NBITS - 1)) << 1)) - -/* macro to trim extra bits */ -#define trim(x) ((x) & ALLONES) - - -/* builds a number with 'n' ones (1 <= n <= LUA_NBITS) */ -#define mask(n) (~((ALLONES << 1) << ((n) - 1))) - - -typedef lua_Unsigned b_uint; - - - -static b_uint andaux (lua_State *L) { - int i, n = lua_gettop(L); - b_uint r = ~(b_uint)0; - for (i = 1; i <= n; i++) - r &= luaL_checkunsigned(L, i); - return trim(r); -} - - -static int b_and (lua_State *L) { - b_uint r = andaux(L); - lua_pushunsigned(L, r); - return 1; -} - - -static int b_test (lua_State *L) { - b_uint r = andaux(L); - lua_pushboolean(L, r != 0); - return 1; -} - - -static int b_or (lua_State *L) { - int i, n = lua_gettop(L); - b_uint r = 0; - for (i = 1; i <= n; i++) - r |= luaL_checkunsigned(L, i); - lua_pushunsigned(L, trim(r)); - return 1; -} - - -static int b_xor (lua_State *L) { - int i, n = lua_gettop(L); - b_uint r = 0; - for (i = 1; i <= n; i++) - r ^= luaL_checkunsigned(L, i); - lua_pushunsigned(L, trim(r)); - return 1; -} - - -static int b_not (lua_State *L) { - b_uint r = ~luaL_checkunsigned(L, 1); - lua_pushunsigned(L, trim(r)); - return 1; -} - - -static int b_shift (lua_State *L, b_uint r, int i) { - if (i < 0) { /* shift right? */ - i = -i; - r = trim(r); - if (i >= LUA_NBITS) r = 0; - else r >>= i; - } - else { /* shift left */ - if (i >= LUA_NBITS) r = 0; - else r <<= i; - r = trim(r); - } - lua_pushunsigned(L, r); - return 1; -} - - -static int b_lshift (lua_State *L) { - return b_shift(L, luaL_checkunsigned(L, 1), luaL_checkint(L, 2)); -} - - -static int b_rshift (lua_State *L) { - return b_shift(L, luaL_checkunsigned(L, 1), -luaL_checkint(L, 2)); -} - - -static int b_arshift (lua_State *L) { - b_uint r = luaL_checkunsigned(L, 1); - int i = luaL_checkint(L, 2); - if (i < 0 || !(r & ((b_uint)1 << (LUA_NBITS - 1)))) - return b_shift(L, r, -i); - else { /* arithmetic shift for 'negative' number */ - if (i >= LUA_NBITS) r = ALLONES; - else - r = trim((r >> i) | ~(~(b_uint)0 >> i)); /* add signal bit */ - lua_pushunsigned(L, r); - return 1; - } -} - - -static int b_rot (lua_State *L, int i) { - b_uint r = luaL_checkunsigned(L, 1); - i &= (LUA_NBITS - 1); /* i = i % NBITS */ - r = trim(r); - if (i != 0) /* avoid undefined shift of LUA_NBITS when i == 0 */ - r = (r << i) | (r >> (LUA_NBITS - i)); - lua_pushunsigned(L, trim(r)); - return 1; -} - - -static int b_lrot (lua_State *L) { - return b_rot(L, luaL_checkint(L, 2)); -} - - -static int b_rrot (lua_State *L) { - return b_rot(L, -luaL_checkint(L, 2)); -} - - -/* -** get field and width arguments for field-manipulation functions, -** checking whether they are valid. -** ('luaL_error' called without 'return' to avoid later warnings about -** 'width' being used uninitialized.) -*/ -static int fieldargs (lua_State *L, int farg, int *width) { - int f = luaL_checkint(L, farg); - int w = luaL_optint(L, farg + 1, 1); - luaL_argcheck(L, 0 <= f, farg, "field cannot be negative"); - luaL_argcheck(L, 0 < w, farg + 1, "width must be positive"); - if (f + w > LUA_NBITS) - luaL_error(L, "trying to access non-existent bits"); - *width = w; - return f; -} - - -static int b_extract (lua_State *L) { - int w; - b_uint r = luaL_checkunsigned(L, 1); - int f = fieldargs(L, 2, &w); - r = (r >> f) & mask(w); - lua_pushunsigned(L, r); - return 1; -} - - -static int b_replace (lua_State *L) { - int w; - b_uint r = luaL_checkunsigned(L, 1); - b_uint v = luaL_checkunsigned(L, 2); - int f = fieldargs(L, 3, &w); - int m = mask(w); - v &= m; /* erase bits outside given width */ - r = (r & ~(m << f)) | (v << f); - lua_pushunsigned(L, r); - return 1; -} - - -static const luaL_Reg bitlib[] = { - {"arshift", b_arshift}, - {"band", b_and}, - {"bnot", b_not}, - {"bor", b_or}, - {"bxor", b_xor}, - {"btest", b_test}, - {"extract", b_extract}, - {"lrotate", b_lrot}, - {"lshift", b_lshift}, - {"replace", b_replace}, - {"rrotate", b_rrot}, - {"rshift", b_rshift}, - {NULL, NULL} -}; - - - -LUAMOD_API int luaopen_bit32 (lua_State *L) { - luaL_newlib(L, bitlib); - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/lcode.c b/source/libs/lua52/lua52-src/src/lcode.c deleted file mode 100644 index 820b95c0e..000000000 --- a/source/libs/lua52/lua52-src/src/lcode.c +++ /dev/null @@ -1,881 +0,0 @@ -/* -** $Id: lcode.c,v 2.62.1.1 2013/04/12 18:48:47 roberto Exp $ -** Code generator for Lua -** See Copyright Notice in lua.h -*/ - - -#include <stdlib.h> - -#define lcode_c -#define LUA_CORE - -#include "lua.h" - -#include "lcode.h" -#include "ldebug.h" -#include "ldo.h" -#include "lgc.h" -#include "llex.h" -#include "lmem.h" -#include "lobject.h" -#include "lopcodes.h" -#include "lparser.h" -#include "lstring.h" -#include "ltable.h" -#include "lvm.h" - - -#define hasjumps(e) ((e)->t != (e)->f) - - -static int isnumeral(expdesc *e) { - return (e->k == VKNUM && e->t == NO_JUMP && e->f == NO_JUMP); -} - - -void luaK_nil (FuncState *fs, int from, int n) { - Instruction *previous; - int l = from + n - 1; /* last register to set nil */ - if (fs->pc > fs->lasttarget) { /* no jumps to current position? */ - previous = &fs->f->code[fs->pc-1]; - if (GET_OPCODE(*previous) == OP_LOADNIL) { - int pfrom = GETARG_A(*previous); - int pl = pfrom + GETARG_B(*previous); - if ((pfrom <= from && from <= pl + 1) || - (from <= pfrom && pfrom <= l + 1)) { /* can connect both? */ - if (pfrom < from) from = pfrom; /* from = min(from, pfrom) */ - if (pl > l) l = pl; /* l = max(l, pl) */ - SETARG_A(*previous, from); - SETARG_B(*previous, l - from); - return; - } - } /* else go through */ - } - luaK_codeABC(fs, OP_LOADNIL, from, n - 1, 0); /* else no optimization */ -} - - -int luaK_jump (FuncState *fs) { - int jpc = fs->jpc; /* save list of jumps to here */ - int j; - fs->jpc = NO_JUMP; - j = luaK_codeAsBx(fs, OP_JMP, 0, NO_JUMP); - luaK_concat(fs, &j, jpc); /* keep them on hold */ - return j; -} - - -void luaK_ret (FuncState *fs, int first, int nret) { - luaK_codeABC(fs, OP_RETURN, first, nret+1, 0); -} - - -static int condjump (FuncState *fs, OpCode op, int A, int B, int C) { - luaK_codeABC(fs, op, A, B, C); - return luaK_jump(fs); -} - - -static void fixjump (FuncState *fs, int pc, int dest) { - Instruction *jmp = &fs->f->code[pc]; - int offset = dest-(pc+1); - lua_assert(dest != NO_JUMP); - if (abs(offset) > MAXARG_sBx) - luaX_syntaxerror(fs->ls, "control structure too long"); - SETARG_sBx(*jmp, offset); -} - - -/* -** returns current `pc' and marks it as a jump target (to avoid wrong -** optimizations with consecutive instructions not in the same basic block). -*/ -int luaK_getlabel (FuncState *fs) { - fs->lasttarget = fs->pc; - return fs->pc; -} - - -static int getjump (FuncState *fs, int pc) { - int offset = GETARG_sBx(fs->f->code[pc]); - if (offset == NO_JUMP) /* point to itself represents end of list */ - return NO_JUMP; /* end of list */ - else - return (pc+1)+offset; /* turn offset into absolute position */ -} - - -static Instruction *getjumpcontrol (FuncState *fs, int pc) { - Instruction *pi = &fs->f->code[pc]; - if (pc >= 1 && testTMode(GET_OPCODE(*(pi-1)))) - return pi-1; - else - return pi; -} - - -/* -** check whether list has any jump that do not produce a value -** (or produce an inverted value) -*/ -static int need_value (FuncState *fs, int list) { - for (; list != NO_JUMP; list = getjump(fs, list)) { - Instruction i = *getjumpcontrol(fs, list); - if (GET_OPCODE(i) != OP_TESTSET) return 1; - } - return 0; /* not found */ -} - - -static int patchtestreg (FuncState *fs, int node, int reg) { - Instruction *i = getjumpcontrol(fs, node); - if (GET_OPCODE(*i) != OP_TESTSET) - return 0; /* cannot patch other instructions */ - if (reg != NO_REG && reg != GETARG_B(*i)) - SETARG_A(*i, reg); - else /* no register to put value or register already has the value */ - *i = CREATE_ABC(OP_TEST, GETARG_B(*i), 0, GETARG_C(*i)); - - return 1; -} - - -static void removevalues (FuncState *fs, int list) { - for (; list != NO_JUMP; list = getjump(fs, list)) - patchtestreg(fs, list, NO_REG); -} - - -static void patchlistaux (FuncState *fs, int list, int vtarget, int reg, - int dtarget) { - while (list != NO_JUMP) { - int next = getjump(fs, list); - if (patchtestreg(fs, list, reg)) - fixjump(fs, list, vtarget); - else - fixjump(fs, list, dtarget); /* jump to default target */ - list = next; - } -} - - -static void dischargejpc (FuncState *fs) { - patchlistaux(fs, fs->jpc, fs->pc, NO_REG, fs->pc); - fs->jpc = NO_JUMP; -} - - -void luaK_patchlist (FuncState *fs, int list, int target) { - if (target == fs->pc) - luaK_patchtohere(fs, list); - else { - lua_assert(target < fs->pc); - patchlistaux(fs, list, target, NO_REG, target); - } -} - - -LUAI_FUNC void luaK_patchclose (FuncState *fs, int list, int level) { - level++; /* argument is +1 to reserve 0 as non-op */ - while (list != NO_JUMP) { - int next = getjump(fs, list); - lua_assert(GET_OPCODE(fs->f->code[list]) == OP_JMP && - (GETARG_A(fs->f->code[list]) == 0 || - GETARG_A(fs->f->code[list]) >= level)); - SETARG_A(fs->f->code[list], level); - list = next; - } -} - - -void luaK_patchtohere (FuncState *fs, int list) { - luaK_getlabel(fs); - luaK_concat(fs, &fs->jpc, list); -} - - -void luaK_concat (FuncState *fs, int *l1, int l2) { - if (l2 == NO_JUMP) return; - else if (*l1 == NO_JUMP) - *l1 = l2; - else { - int list = *l1; - int next; - while ((next = getjump(fs, list)) != NO_JUMP) /* find last element */ - list = next; - fixjump(fs, list, l2); - } -} - - -static int luaK_code (FuncState *fs, Instruction i) { - Proto *f = fs->f; - dischargejpc(fs); /* `pc' will change */ - /* put new instruction in code array */ - luaM_growvector(fs->ls->L, f->code, fs->pc, f->sizecode, Instruction, - MAX_INT, "opcodes"); - f->code[fs->pc] = i; - /* save corresponding line information */ - luaM_growvector(fs->ls->L, f->lineinfo, fs->pc, f->sizelineinfo, int, - MAX_INT, "opcodes"); - f->lineinfo[fs->pc] = fs->ls->lastline; - return fs->pc++; -} - - -int luaK_codeABC (FuncState *fs, OpCode o, int a, int b, int c) { - lua_assert(getOpMode(o) == iABC); - lua_assert(getBMode(o) != OpArgN || b == 0); - lua_assert(getCMode(o) != OpArgN || c == 0); - lua_assert(a <= MAXARG_A && b <= MAXARG_B && c <= MAXARG_C); - return luaK_code(fs, CREATE_ABC(o, a, b, c)); -} - - -int luaK_codeABx (FuncState *fs, OpCode o, int a, unsigned int bc) { - lua_assert(getOpMode(o) == iABx || getOpMode(o) == iAsBx); - lua_assert(getCMode(o) == OpArgN); - lua_assert(a <= MAXARG_A && bc <= MAXARG_Bx); - return luaK_code(fs, CREATE_ABx(o, a, bc)); -} - - -static int codeextraarg (FuncState *fs, int a) { - lua_assert(a <= MAXARG_Ax); - return luaK_code(fs, CREATE_Ax(OP_EXTRAARG, a)); -} - - -int luaK_codek (FuncState *fs, int reg, int k) { - if (k <= MAXARG_Bx) - return luaK_codeABx(fs, OP_LOADK, reg, k); - else { - int p = luaK_codeABx(fs, OP_LOADKX, reg, 0); - codeextraarg(fs, k); - return p; - } -} - - -void luaK_checkstack (FuncState *fs, int n) { - int newstack = fs->freereg + n; - if (newstack > fs->f->maxstacksize) { - if (newstack >= MAXSTACK) - luaX_syntaxerror(fs->ls, "function or expression too complex"); - fs->f->maxstacksize = cast_byte(newstack); - } -} - - -void luaK_reserveregs (FuncState *fs, int n) { - luaK_checkstack(fs, n); - fs->freereg += n; -} - - -static void freereg (FuncState *fs, int reg) { - if (!ISK(reg) && reg >= fs->nactvar) { - fs->freereg--; - lua_assert(reg == fs->freereg); - } -} - - -static void freeexp (FuncState *fs, expdesc *e) { - if (e->k == VNONRELOC) - freereg(fs, e->u.info); -} - - -static int addk (FuncState *fs, TValue *key, TValue *v) { - lua_State *L = fs->ls->L; - TValue *idx = luaH_set(L, fs->h, key); - Proto *f = fs->f; - int k, oldsize; - if (ttisnumber(idx)) { - lua_Number n = nvalue(idx); - lua_number2int(k, n); - if (luaV_rawequalobj(&f->k[k], v)) - return k; - /* else may be a collision (e.g., between 0.0 and "\0\0\0\0\0\0\0\0"); - go through and create a new entry for this value */ - } - /* constant not found; create a new entry */ - oldsize = f->sizek; - k = fs->nk; - /* numerical value does not need GC barrier; - table has no metatable, so it does not need to invalidate cache */ - setnvalue(idx, cast_num(k)); - luaM_growvector(L, f->k, k, f->sizek, TValue, MAXARG_Ax, "constants"); - while (oldsize < f->sizek) setnilvalue(&f->k[oldsize++]); - setobj(L, &f->k[k], v); - fs->nk++; - luaC_barrier(L, f, v); - return k; -} - - -int luaK_stringK (FuncState *fs, TString *s) { - TValue o; - setsvalue(fs->ls->L, &o, s); - return addk(fs, &o, &o); -} - - -int luaK_numberK (FuncState *fs, lua_Number r) { - int n; - lua_State *L = fs->ls->L; - TValue o; - setnvalue(&o, r); - if (r == 0 || luai_numisnan(NULL, r)) { /* handle -0 and NaN */ - /* use raw representation as key to avoid numeric problems */ - setsvalue(L, L->top++, luaS_newlstr(L, (char *)&r, sizeof(r))); - n = addk(fs, L->top - 1, &o); - L->top--; - } - else - n = addk(fs, &o, &o); /* regular case */ - return n; -} - - -static int boolK (FuncState *fs, int b) { - TValue o; - setbvalue(&o, b); - return addk(fs, &o, &o); -} - - -static int nilK (FuncState *fs) { - TValue k, v; - setnilvalue(&v); - /* cannot use nil as key; instead use table itself to represent nil */ - sethvalue(fs->ls->L, &k, fs->h); - return addk(fs, &k, &v); -} - - -void luaK_setreturns (FuncState *fs, expdesc *e, int nresults) { - if (e->k == VCALL) { /* expression is an open function call? */ - SETARG_C(getcode(fs, e), nresults+1); - } - else if (e->k == VVARARG) { - SETARG_B(getcode(fs, e), nresults+1); - SETARG_A(getcode(fs, e), fs->freereg); - luaK_reserveregs(fs, 1); - } -} - - -void luaK_setoneret (FuncState *fs, expdesc *e) { - if (e->k == VCALL) { /* expression is an open function call? */ - e->k = VNONRELOC; - e->u.info = GETARG_A(getcode(fs, e)); - } - else if (e->k == VVARARG) { - SETARG_B(getcode(fs, e), 2); - e->k = VRELOCABLE; /* can relocate its simple result */ - } -} - - -void luaK_dischargevars (FuncState *fs, expdesc *e) { - switch (e->k) { - case VLOCAL: { - e->k = VNONRELOC; - break; - } - case VUPVAL: { - e->u.info = luaK_codeABC(fs, OP_GETUPVAL, 0, e->u.info, 0); - e->k = VRELOCABLE; - break; - } - case VINDEXED: { - OpCode op = OP_GETTABUP; /* assume 't' is in an upvalue */ - freereg(fs, e->u.ind.idx); - if (e->u.ind.vt == VLOCAL) { /* 't' is in a register? */ - freereg(fs, e->u.ind.t); - op = OP_GETTABLE; - } - e->u.info = luaK_codeABC(fs, op, 0, e->u.ind.t, e->u.ind.idx); - e->k = VRELOCABLE; - break; - } - case VVARARG: - case VCALL: { - luaK_setoneret(fs, e); - break; - } - default: break; /* there is one value available (somewhere) */ - } -} - - -static int code_label (FuncState *fs, int A, int b, int jump) { - luaK_getlabel(fs); /* those instructions may be jump targets */ - return luaK_codeABC(fs, OP_LOADBOOL, A, b, jump); -} - - -static void discharge2reg (FuncState *fs, expdesc *e, int reg) { - luaK_dischargevars(fs, e); - switch (e->k) { - case VNIL: { - luaK_nil(fs, reg, 1); - break; - } - case VFALSE: case VTRUE: { - luaK_codeABC(fs, OP_LOADBOOL, reg, e->k == VTRUE, 0); - break; - } - case VK: { - luaK_codek(fs, reg, e->u.info); - break; - } - case VKNUM: { - luaK_codek(fs, reg, luaK_numberK(fs, e->u.nval)); - break; - } - case VRELOCABLE: { - Instruction *pc = &getcode(fs, e); - SETARG_A(*pc, reg); - break; - } - case VNONRELOC: { - if (reg != e->u.info) - luaK_codeABC(fs, OP_MOVE, reg, e->u.info, 0); - break; - } - default: { - lua_assert(e->k == VVOID || e->k == VJMP); - return; /* nothing to do... */ - } - } - e->u.info = reg; - e->k = VNONRELOC; -} - - -static void discharge2anyreg (FuncState *fs, expdesc *e) { - if (e->k != VNONRELOC) { - luaK_reserveregs(fs, 1); - discharge2reg(fs, e, fs->freereg-1); - } -} - - -static void exp2reg (FuncState *fs, expdesc *e, int reg) { - discharge2reg(fs, e, reg); - if (e->k == VJMP) - luaK_concat(fs, &e->t, e->u.info); /* put this jump in `t' list */ - if (hasjumps(e)) { - int final; /* position after whole expression */ - int p_f = NO_JUMP; /* position of an eventual LOAD false */ - int p_t = NO_JUMP; /* position of an eventual LOAD true */ - if (need_value(fs, e->t) || need_value(fs, e->f)) { - int fj = (e->k == VJMP) ? NO_JUMP : luaK_jump(fs); - p_f = code_label(fs, reg, 0, 1); - p_t = code_label(fs, reg, 1, 0); - luaK_patchtohere(fs, fj); - } - final = luaK_getlabel(fs); - patchlistaux(fs, e->f, final, reg, p_f); - patchlistaux(fs, e->t, final, reg, p_t); - } - e->f = e->t = NO_JUMP; - e->u.info = reg; - e->k = VNONRELOC; -} - - -void luaK_exp2nextreg (FuncState *fs, expdesc *e) { - luaK_dischargevars(fs, e); - freeexp(fs, e); - luaK_reserveregs(fs, 1); - exp2reg(fs, e, fs->freereg - 1); -} - - -int luaK_exp2anyreg (FuncState *fs, expdesc *e) { - luaK_dischargevars(fs, e); - if (e->k == VNONRELOC) { - if (!hasjumps(e)) return e->u.info; /* exp is already in a register */ - if (e->u.info >= fs->nactvar) { /* reg. is not a local? */ - exp2reg(fs, e, e->u.info); /* put value on it */ - return e->u.info; - } - } - luaK_exp2nextreg(fs, e); /* default */ - return e->u.info; -} - - -void luaK_exp2anyregup (FuncState *fs, expdesc *e) { - if (e->k != VUPVAL || hasjumps(e)) - luaK_exp2anyreg(fs, e); -} - - -void luaK_exp2val (FuncState *fs, expdesc *e) { - if (hasjumps(e)) - luaK_exp2anyreg(fs, e); - else - luaK_dischargevars(fs, e); -} - - -int luaK_exp2RK (FuncState *fs, expdesc *e) { - luaK_exp2val(fs, e); - switch (e->k) { - case VTRUE: - case VFALSE: - case VNIL: { - if (fs->nk <= MAXINDEXRK) { /* constant fits in RK operand? */ - e->u.info = (e->k == VNIL) ? nilK(fs) : boolK(fs, (e->k == VTRUE)); - e->k = VK; - return RKASK(e->u.info); - } - else break; - } - case VKNUM: { - e->u.info = luaK_numberK(fs, e->u.nval); - e->k = VK; - /* go through */ - } - case VK: { - if (e->u.info <= MAXINDEXRK) /* constant fits in argC? */ - return RKASK(e->u.info); - else break; - } - default: break; - } - /* not a constant in the right range: put it in a register */ - return luaK_exp2anyreg(fs, e); -} - - -void luaK_storevar (FuncState *fs, expdesc *var, expdesc *ex) { - switch (var->k) { - case VLOCAL: { - freeexp(fs, ex); - exp2reg(fs, ex, var->u.info); - return; - } - case VUPVAL: { - int e = luaK_exp2anyreg(fs, ex); - luaK_codeABC(fs, OP_SETUPVAL, e, var->u.info, 0); - break; - } - case VINDEXED: { - OpCode op = (var->u.ind.vt == VLOCAL) ? OP_SETTABLE : OP_SETTABUP; - int e = luaK_exp2RK(fs, ex); - luaK_codeABC(fs, op, var->u.ind.t, var->u.ind.idx, e); - break; - } - default: { - lua_assert(0); /* invalid var kind to store */ - break; - } - } - freeexp(fs, ex); -} - - -void luaK_self (FuncState *fs, expdesc *e, expdesc *key) { - int ereg; - luaK_exp2anyreg(fs, e); - ereg = e->u.info; /* register where 'e' was placed */ - freeexp(fs, e); - e->u.info = fs->freereg; /* base register for op_self */ - e->k = VNONRELOC; - luaK_reserveregs(fs, 2); /* function and 'self' produced by op_self */ - luaK_codeABC(fs, OP_SELF, e->u.info, ereg, luaK_exp2RK(fs, key)); - freeexp(fs, key); -} - - -static void invertjump (FuncState *fs, expdesc *e) { - Instruction *pc = getjumpcontrol(fs, e->u.info); - lua_assert(testTMode(GET_OPCODE(*pc)) && GET_OPCODE(*pc) != OP_TESTSET && - GET_OPCODE(*pc) != OP_TEST); - SETARG_A(*pc, !(GETARG_A(*pc))); -} - - -static int jumponcond (FuncState *fs, expdesc *e, int cond) { - if (e->k == VRELOCABLE) { - Instruction ie = getcode(fs, e); - if (GET_OPCODE(ie) == OP_NOT) { - fs->pc--; /* remove previous OP_NOT */ - return condjump(fs, OP_TEST, GETARG_B(ie), 0, !cond); - } - /* else go through */ - } - discharge2anyreg(fs, e); - freeexp(fs, e); - return condjump(fs, OP_TESTSET, NO_REG, e->u.info, cond); -} - - -void luaK_goiftrue (FuncState *fs, expdesc *e) { - int pc; /* pc of last jump */ - luaK_dischargevars(fs, e); - switch (e->k) { - case VJMP: { - invertjump(fs, e); - pc = e->u.info; - break; - } - case VK: case VKNUM: case VTRUE: { - pc = NO_JUMP; /* always true; do nothing */ - break; - } - default: { - pc = jumponcond(fs, e, 0); - break; - } - } - luaK_concat(fs, &e->f, pc); /* insert last jump in `f' list */ - luaK_patchtohere(fs, e->t); - e->t = NO_JUMP; -} - - -void luaK_goiffalse (FuncState *fs, expdesc *e) { - int pc; /* pc of last jump */ - luaK_dischargevars(fs, e); - switch (e->k) { - case VJMP: { - pc = e->u.info; - break; - } - case VNIL: case VFALSE: { - pc = NO_JUMP; /* always false; do nothing */ - break; - } - default: { - pc = jumponcond(fs, e, 1); - break; - } - } - luaK_concat(fs, &e->t, pc); /* insert last jump in `t' list */ - luaK_patchtohere(fs, e->f); - e->f = NO_JUMP; -} - - -static void codenot (FuncState *fs, expdesc *e) { - luaK_dischargevars(fs, e); - switch (e->k) { - case VNIL: case VFALSE: { - e->k = VTRUE; - break; - } - case VK: case VKNUM: case VTRUE: { - e->k = VFALSE; - break; - } - case VJMP: { - invertjump(fs, e); - break; - } - case VRELOCABLE: - case VNONRELOC: { - discharge2anyreg(fs, e); - freeexp(fs, e); - e->u.info = luaK_codeABC(fs, OP_NOT, 0, e->u.info, 0); - e->k = VRELOCABLE; - break; - } - default: { - lua_assert(0); /* cannot happen */ - break; - } - } - /* interchange true and false lists */ - { int temp = e->f; e->f = e->t; e->t = temp; } - removevalues(fs, e->f); - removevalues(fs, e->t); -} - - -void luaK_indexed (FuncState *fs, expdesc *t, expdesc *k) { - lua_assert(!hasjumps(t)); - t->u.ind.t = t->u.info; - t->u.ind.idx = luaK_exp2RK(fs, k); - t->u.ind.vt = (t->k == VUPVAL) ? VUPVAL - : check_exp(vkisinreg(t->k), VLOCAL); - t->k = VINDEXED; -} - - -static int constfolding (OpCode op, expdesc *e1, expdesc *e2) { - lua_Number r; - if (!isnumeral(e1) || !isnumeral(e2)) return 0; - if ((op == OP_DIV || op == OP_MOD) && e2->u.nval == 0) - return 0; /* do not attempt to divide by 0 */ - r = luaO_arith(op - OP_ADD + LUA_OPADD, e1->u.nval, e2->u.nval); - e1->u.nval = r; - return 1; -} - - -static void codearith (FuncState *fs, OpCode op, - expdesc *e1, expdesc *e2, int line) { - if (constfolding(op, e1, e2)) - return; - else { - int o2 = (op != OP_UNM && op != OP_LEN) ? luaK_exp2RK(fs, e2) : 0; - int o1 = luaK_exp2RK(fs, e1); - if (o1 > o2) { - freeexp(fs, e1); - freeexp(fs, e2); - } - else { - freeexp(fs, e2); - freeexp(fs, e1); - } - e1->u.info = luaK_codeABC(fs, op, 0, o1, o2); - e1->k = VRELOCABLE; - luaK_fixline(fs, line); - } -} - - -static void codecomp (FuncState *fs, OpCode op, int cond, expdesc *e1, - expdesc *e2) { - int o1 = luaK_exp2RK(fs, e1); - int o2 = luaK_exp2RK(fs, e2); - freeexp(fs, e2); - freeexp(fs, e1); - if (cond == 0 && op != OP_EQ) { - int temp; /* exchange args to replace by `<' or `<=' */ - temp = o1; o1 = o2; o2 = temp; /* o1 <==> o2 */ - cond = 1; - } - e1->u.info = condjump(fs, op, cond, o1, o2); - e1->k = VJMP; -} - - -void luaK_prefix (FuncState *fs, UnOpr op, expdesc *e, int line) { - expdesc e2; - e2.t = e2.f = NO_JUMP; e2.k = VKNUM; e2.u.nval = 0; - switch (op) { - case OPR_MINUS: { - if (isnumeral(e)) /* minus constant? */ - e->u.nval = luai_numunm(NULL, e->u.nval); /* fold it */ - else { - luaK_exp2anyreg(fs, e); - codearith(fs, OP_UNM, e, &e2, line); - } - break; - } - case OPR_NOT: codenot(fs, e); break; - case OPR_LEN: { - luaK_exp2anyreg(fs, e); /* cannot operate on constants */ - codearith(fs, OP_LEN, e, &e2, line); - break; - } - default: lua_assert(0); - } -} - - -void luaK_infix (FuncState *fs, BinOpr op, expdesc *v) { - switch (op) { - case OPR_AND: { - luaK_goiftrue(fs, v); - break; - } - case OPR_OR: { - luaK_goiffalse(fs, v); - break; - } - case OPR_CONCAT: { - luaK_exp2nextreg(fs, v); /* operand must be on the `stack' */ - break; - } - case OPR_ADD: case OPR_SUB: case OPR_MUL: case OPR_DIV: - case OPR_MOD: case OPR_POW: { - if (!isnumeral(v)) luaK_exp2RK(fs, v); - break; - } - default: { - luaK_exp2RK(fs, v); - break; - } - } -} - - -void luaK_posfix (FuncState *fs, BinOpr op, - expdesc *e1, expdesc *e2, int line) { - switch (op) { - case OPR_AND: { - lua_assert(e1->t == NO_JUMP); /* list must be closed */ - luaK_dischargevars(fs, e2); - luaK_concat(fs, &e2->f, e1->f); - *e1 = *e2; - break; - } - case OPR_OR: { - lua_assert(e1->f == NO_JUMP); /* list must be closed */ - luaK_dischargevars(fs, e2); - luaK_concat(fs, &e2->t, e1->t); - *e1 = *e2; - break; - } - case OPR_CONCAT: { - luaK_exp2val(fs, e2); - if (e2->k == VRELOCABLE && GET_OPCODE(getcode(fs, e2)) == OP_CONCAT) { - lua_assert(e1->u.info == GETARG_B(getcode(fs, e2))-1); - freeexp(fs, e1); - SETARG_B(getcode(fs, e2), e1->u.info); - e1->k = VRELOCABLE; e1->u.info = e2->u.info; - } - else { - luaK_exp2nextreg(fs, e2); /* operand must be on the 'stack' */ - codearith(fs, OP_CONCAT, e1, e2, line); - } - break; - } - case OPR_ADD: case OPR_SUB: case OPR_MUL: case OPR_DIV: - case OPR_MOD: case OPR_POW: { - codearith(fs, cast(OpCode, op - OPR_ADD + OP_ADD), e1, e2, line); - break; - } - case OPR_EQ: case OPR_LT: case OPR_LE: { - codecomp(fs, cast(OpCode, op - OPR_EQ + OP_EQ), 1, e1, e2); - break; - } - case OPR_NE: case OPR_GT: case OPR_GE: { - codecomp(fs, cast(OpCode, op - OPR_NE + OP_EQ), 0, e1, e2); - break; - } - default: lua_assert(0); - } -} - - -void luaK_fixline (FuncState *fs, int line) { - fs->f->lineinfo[fs->pc - 1] = line; -} - - -void luaK_setlist (FuncState *fs, int base, int nelems, int tostore) { - int c = (nelems - 1)/LFIELDS_PER_FLUSH + 1; - int b = (tostore == LUA_MULTRET) ? 0 : tostore; - lua_assert(tostore != 0); - if (c <= MAXARG_C) - luaK_codeABC(fs, OP_SETLIST, base, b, c); - else if (c <= MAXARG_Ax) { - luaK_codeABC(fs, OP_SETLIST, base, b, 0); - codeextraarg(fs, c); - } - else - luaX_syntaxerror(fs->ls, "constructor too long"); - fs->freereg = base + 1; /* free registers with list values */ -} - diff --git a/source/libs/lua52/lua52-src/src/lcode.h b/source/libs/lua52/lua52-src/src/lcode.h deleted file mode 100644 index 6a1424cf5..000000000 --- a/source/libs/lua52/lua52-src/src/lcode.h +++ /dev/null @@ -1,83 +0,0 @@ -/* -** $Id: lcode.h,v 1.58.1.1 2013/04/12 18:48:47 roberto Exp $ -** Code generator for Lua -** See Copyright Notice in lua.h -*/ - -#ifndef lcode_h -#define lcode_h - -#include "llex.h" -#include "lobject.h" -#include "lopcodes.h" -#include "lparser.h" - - -/* -** Marks the end of a patch list. It is an invalid value both as an absolute -** address, and as a list link (would link an element to itself). -*/ -#define NO_JUMP (-1) - - -/* -** grep "ORDER OPR" if you change these enums (ORDER OP) -*/ -typedef enum BinOpr { - OPR_ADD, OPR_SUB, OPR_MUL, OPR_DIV, OPR_MOD, OPR_POW, - OPR_CONCAT, - OPR_EQ, OPR_LT, OPR_LE, - OPR_NE, OPR_GT, OPR_GE, - OPR_AND, OPR_OR, - OPR_NOBINOPR -} BinOpr; - - -typedef enum UnOpr { OPR_MINUS, OPR_NOT, OPR_LEN, OPR_NOUNOPR } UnOpr; - - -#define getcode(fs,e) ((fs)->f->code[(e)->u.info]) - -#define luaK_codeAsBx(fs,o,A,sBx) luaK_codeABx(fs,o,A,(sBx)+MAXARG_sBx) - -#define luaK_setmultret(fs,e) luaK_setreturns(fs, e, LUA_MULTRET) - -#define luaK_jumpto(fs,t) luaK_patchlist(fs, luaK_jump(fs), t) - -LUAI_FUNC int luaK_codeABx (FuncState *fs, OpCode o, int A, unsigned int Bx); -LUAI_FUNC int luaK_codeABC (FuncState *fs, OpCode o, int A, int B, int C); -LUAI_FUNC int luaK_codek (FuncState *fs, int reg, int k); -LUAI_FUNC void luaK_fixline (FuncState *fs, int line); -LUAI_FUNC void luaK_nil (FuncState *fs, int from, int n); -LUAI_FUNC void luaK_reserveregs (FuncState *fs, int n); -LUAI_FUNC void luaK_checkstack (FuncState *fs, int n); -LUAI_FUNC int luaK_stringK (FuncState *fs, TString *s); -LUAI_FUNC int luaK_numberK (FuncState *fs, lua_Number r); -LUAI_FUNC void luaK_dischargevars (FuncState *fs, expdesc *e); -LUAI_FUNC int luaK_exp2anyreg (FuncState *fs, expdesc *e); -LUAI_FUNC void luaK_exp2anyregup (FuncState *fs, expdesc *e); -LUAI_FUNC void luaK_exp2nextreg (FuncState *fs, expdesc *e); -LUAI_FUNC void luaK_exp2val (FuncState *fs, expdesc *e); -LUAI_FUNC int luaK_exp2RK (FuncState *fs, expdesc *e); -LUAI_FUNC void luaK_self (FuncState *fs, expdesc *e, expdesc *key); -LUAI_FUNC void luaK_indexed (FuncState *fs, expdesc *t, expdesc *k); -LUAI_FUNC void luaK_goiftrue (FuncState *fs, expdesc *e); -LUAI_FUNC void luaK_goiffalse (FuncState *fs, expdesc *e); -LUAI_FUNC void luaK_storevar (FuncState *fs, expdesc *var, expdesc *e); -LUAI_FUNC void luaK_setreturns (FuncState *fs, expdesc *e, int nresults); -LUAI_FUNC void luaK_setoneret (FuncState *fs, expdesc *e); -LUAI_FUNC int luaK_jump (FuncState *fs); -LUAI_FUNC void luaK_ret (FuncState *fs, int first, int nret); -LUAI_FUNC void luaK_patchlist (FuncState *fs, int list, int target); -LUAI_FUNC void luaK_patchtohere (FuncState *fs, int list); -LUAI_FUNC void luaK_patchclose (FuncState *fs, int list, int level); -LUAI_FUNC void luaK_concat (FuncState *fs, int *l1, int l2); -LUAI_FUNC int luaK_getlabel (FuncState *fs); -LUAI_FUNC void luaK_prefix (FuncState *fs, UnOpr op, expdesc *v, int line); -LUAI_FUNC void luaK_infix (FuncState *fs, BinOpr op, expdesc *v); -LUAI_FUNC void luaK_posfix (FuncState *fs, BinOpr op, expdesc *v1, - expdesc *v2, int line); -LUAI_FUNC void luaK_setlist (FuncState *fs, int base, int nelems, int tostore); - - -#endif diff --git a/source/libs/lua52/lua52-src/src/lcorolib.c b/source/libs/lua52/lua52-src/src/lcorolib.c deleted file mode 100644 index ce4f6ad42..000000000 --- a/source/libs/lua52/lua52-src/src/lcorolib.c +++ /dev/null @@ -1,155 +0,0 @@ -/* -** $Id: lcorolib.c,v 1.5.1.1 2013/04/12 18:48:47 roberto Exp $ -** Coroutine Library -** See Copyright Notice in lua.h -*/ - - -#include <stdlib.h> - - -#define lcorolib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -static int auxresume (lua_State *L, lua_State *co, int narg) { - int status; - if (!lua_checkstack(co, narg)) { - lua_pushliteral(L, "too many arguments to resume"); - return -1; /* error flag */ - } - if (lua_status(co) == LUA_OK && lua_gettop(co) == 0) { - lua_pushliteral(L, "cannot resume dead coroutine"); - return -1; /* error flag */ - } - lua_xmove(L, co, narg); - status = lua_resume(co, L, narg); - if (status == LUA_OK || status == LUA_YIELD) { - int nres = lua_gettop(co); - if (!lua_checkstack(L, nres + 1)) { - lua_pop(co, nres); /* remove results anyway */ - lua_pushliteral(L, "too many results to resume"); - return -1; /* error flag */ - } - lua_xmove(co, L, nres); /* move yielded values */ - return nres; - } - else { - lua_xmove(co, L, 1); /* move error message */ - return -1; /* error flag */ - } -} - - -static int luaB_coresume (lua_State *L) { - lua_State *co = lua_tothread(L, 1); - int r; - luaL_argcheck(L, co, 1, "coroutine expected"); - r = auxresume(L, co, lua_gettop(L) - 1); - if (r < 0) { - lua_pushboolean(L, 0); - lua_insert(L, -2); - return 2; /* return false + error message */ - } - else { - lua_pushboolean(L, 1); - lua_insert(L, -(r + 1)); - return r + 1; /* return true + `resume' returns */ - } -} - - -static int luaB_auxwrap (lua_State *L) { - lua_State *co = lua_tothread(L, lua_upvalueindex(1)); - int r = auxresume(L, co, lua_gettop(L)); - if (r < 0) { - if (lua_isstring(L, -1)) { /* error object is a string? */ - luaL_where(L, 1); /* add extra info */ - lua_insert(L, -2); - lua_concat(L, 2); - } - return lua_error(L); /* propagate error */ - } - return r; -} - - -static int luaB_cocreate (lua_State *L) { - lua_State *NL; - luaL_checktype(L, 1, LUA_TFUNCTION); - NL = lua_newthread(L); - lua_pushvalue(L, 1); /* move function to top */ - lua_xmove(L, NL, 1); /* move function from L to NL */ - return 1; -} - - -static int luaB_cowrap (lua_State *L) { - luaB_cocreate(L); - lua_pushcclosure(L, luaB_auxwrap, 1); - return 1; -} - - -static int luaB_yield (lua_State *L) { - return lua_yield(L, lua_gettop(L)); -} - - -static int luaB_costatus (lua_State *L) { - lua_State *co = lua_tothread(L, 1); - luaL_argcheck(L, co, 1, "coroutine expected"); - if (L == co) lua_pushliteral(L, "running"); - else { - switch (lua_status(co)) { - case LUA_YIELD: - lua_pushliteral(L, "suspended"); - break; - case LUA_OK: { - lua_Debug ar; - if (lua_getstack(co, 0, &ar) > 0) /* does it have frames? */ - lua_pushliteral(L, "normal"); /* it is running */ - else if (lua_gettop(co) == 0) - lua_pushliteral(L, "dead"); - else - lua_pushliteral(L, "suspended"); /* initial state */ - break; - } - default: /* some error occurred */ - lua_pushliteral(L, "dead"); - break; - } - } - return 1; -} - - -static int luaB_corunning (lua_State *L) { - int ismain = lua_pushthread(L); - lua_pushboolean(L, ismain); - return 2; -} - - -static const luaL_Reg co_funcs[] = { - {"create", luaB_cocreate}, - {"resume", luaB_coresume}, - {"running", luaB_corunning}, - {"status", luaB_costatus}, - {"wrap", luaB_cowrap}, - {"yield", luaB_yield}, - {NULL, NULL} -}; - - - -LUAMOD_API int luaopen_coroutine (lua_State *L) { - luaL_newlib(L, co_funcs); - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/lctype.c b/source/libs/lua52/lua52-src/src/lctype.c deleted file mode 100644 index 93f8cadc3..000000000 --- a/source/libs/lua52/lua52-src/src/lctype.c +++ /dev/null @@ -1,52 +0,0 @@ -/* -** $Id: lctype.c,v 1.11.1.1 2013/04/12 18:48:47 roberto Exp $ -** 'ctype' functions for Lua -** See Copyright Notice in lua.h -*/ - -#define lctype_c -#define LUA_CORE - -#include "lctype.h" - -#if !LUA_USE_CTYPE /* { */ - -#include <limits.h> - -LUAI_DDEF const lu_byte luai_ctype_[UCHAR_MAX + 2] = { - 0x00, /* EOZ */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0. */ - 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 1. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x0c, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, /* 2. */ - 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, - 0x16, 0x16, 0x16, 0x16, 0x16, 0x16, 0x16, 0x16, /* 3. */ - 0x16, 0x16, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, - 0x04, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x05, /* 4. */ - 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, - 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, /* 5. */ - 0x05, 0x05, 0x05, 0x04, 0x04, 0x04, 0x04, 0x05, - 0x04, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x05, /* 6. */ - 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, - 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, /* 7. */ - 0x05, 0x05, 0x05, 0x04, 0x04, 0x04, 0x04, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 8. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 9. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* a. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* b. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* c. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* d. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* e. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* f. */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -#endif /* } */ diff --git a/source/libs/lua52/lua52-src/src/lctype.h b/source/libs/lua52/lua52-src/src/lctype.h deleted file mode 100644 index a963eb901..000000000 --- a/source/libs/lua52/lua52-src/src/lctype.h +++ /dev/null @@ -1,99 +0,0 @@ -/* -** $Id: lctype.h,v 1.12.1.1 2013/04/12 18:48:47 roberto Exp $ -** 'ctype' functions for Lua -** See Copyright Notice in lua.h -*/ - -#ifndef lctype_h -#define lctype_h - -#include <ctype.h> - -#include "lua.h" - - -/* -** WARNING: the functions defined here do not necessarily correspond -** to the similar functions in the standard C ctype.h. They are -** optimized for the specific needs of Lua -*/ - -#if !defined(LUA_USE_CTYPE) - -#if 'A' == 65 && '0' == 48 -/* ASCII case: can use its own tables; faster and fixed */ -#define LUA_USE_CTYPE 0 -#else -/* must use standard C ctype */ -#define LUA_USE_CTYPE 1 -#endif - -#endif - - -#if !LUA_USE_CTYPE /* { */ - -#include <limits.h> - -#include "llimits.h" - - -#define ALPHABIT 0 -#define DIGITBIT 1 -#define PRINTBIT 2 -#define SPACEBIT 3 -#define XDIGITBIT 4 - - -#define MASK(B) (1 << (B)) - - -/* -** add 1 to char to allow index -1 (EOZ) -*/ -#define testprop(c,p) (luai_ctype_[(c)+1] & (p)) - -/* -** 'lalpha' (Lua alphabetic) and 'lalnum' (Lua alphanumeric) both include '_' -** -** all utf-8 chars (greater than 0x7f) are always alphabetic -*/ -#define lislalpha(c) (isalpha(c) || (c) == '_' || (c) > 0x7f) -#define lislalnum(c) (isalnum(c) || (c) == '_' || (c) > 0x7f) -#define lisdigit(c) testprop(c, MASK(DIGITBIT)) -#define lisspace(c) testprop(c, MASK(SPACEBIT)) -#define lisprint(c) testprop(c, MASK(PRINTBIT)) -#define lisxdigit(c) testprop(c, MASK(XDIGITBIT)) - -/* -** this 'ltolower' only works for alphabetic characters -*/ -#define ltolower(c) ((c) | ('A' ^ 'a')) - - -/* two more entries for 0 and -1 (EOZ) */ -LUAI_DDEC const lu_byte luai_ctype_[UCHAR_MAX + 2]; - - -#else /* }{ */ - -/* -** use standard C ctypes -*/ - -#include <ctype.h> - - -#define lislalpha(c) (isalpha(c) || (c) == '_') -#define lislalnum(c) (isalnum(c) || (c) == '_') -#define lisdigit(c) (isdigit(c)) -#define lisspace(c) (isspace(c)) -#define lisprint(c) (isprint(c)) -#define lisxdigit(c) (isxdigit(c)) - -#define ltolower(c) (tolower(c)) - -#endif /* } */ - -#endif - diff --git a/source/libs/lua52/lua52-src/src/ldblib.c b/source/libs/lua52/lua52-src/src/ldblib.c deleted file mode 100644 index bd8df9da3..000000000 --- a/source/libs/lua52/lua52-src/src/ldblib.c +++ /dev/null @@ -1,408 +0,0 @@ -/* -** $Id: ldblib.c,v 1.132.1.2 2015/02/19 17:16:55 roberto Exp $ -** Interface from Lua to its debug API -** See Copyright Notice in lua.h -*/ - - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#define ldblib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -#define HOOKKEY "_HKEY" - - -static void checkstack (lua_State *L, lua_State *L1, int n) { - if (L != L1 && !lua_checkstack(L1, n)) - luaL_error(L, "stack overflow"); -} - - -static int db_getregistry (lua_State *L) { - lua_pushvalue(L, LUA_REGISTRYINDEX); - return 1; -} - - -static int db_getmetatable (lua_State *L) { - luaL_checkany(L, 1); - if (!lua_getmetatable(L, 1)) { - lua_pushnil(L); /* no metatable */ - } - return 1; -} - - -static int db_setmetatable (lua_State *L) { - int t = lua_type(L, 2); - luaL_argcheck(L, t == LUA_TNIL || t == LUA_TTABLE, 2, - "nil or table expected"); - lua_settop(L, 2); - lua_setmetatable(L, 1); - return 1; /* return 1st argument */ -} - - -static int db_getuservalue (lua_State *L) { - if (lua_type(L, 1) != LUA_TUSERDATA) - lua_pushnil(L); - else - lua_getuservalue(L, 1); - return 1; -} - - -static int db_setuservalue (lua_State *L) { - if (lua_type(L, 1) == LUA_TLIGHTUSERDATA) - luaL_argerror(L, 1, "full userdata expected, got light userdata"); - luaL_checktype(L, 1, LUA_TUSERDATA); - if (!lua_isnoneornil(L, 2)) - luaL_checktype(L, 2, LUA_TTABLE); - lua_settop(L, 2); - lua_setuservalue(L, 1); - return 1; -} - - -static void settabss (lua_State *L, const char *i, const char *v) { - lua_pushstring(L, v); - lua_setfield(L, -2, i); -} - - -static void settabsi (lua_State *L, const char *i, int v) { - lua_pushinteger(L, v); - lua_setfield(L, -2, i); -} - - -static void settabsb (lua_State *L, const char *i, int v) { - lua_pushboolean(L, v); - lua_setfield(L, -2, i); -} - - -static lua_State *getthread (lua_State *L, int *arg) { - if (lua_isthread(L, 1)) { - *arg = 1; - return lua_tothread(L, 1); - } - else { - *arg = 0; - return L; - } -} - - -static void treatstackoption (lua_State *L, lua_State *L1, const char *fname) { - if (L == L1) { - lua_pushvalue(L, -2); - lua_remove(L, -3); - } - else - lua_xmove(L1, L, 1); - lua_setfield(L, -2, fname); -} - - -static int db_getinfo (lua_State *L) { - lua_Debug ar; - int arg; - lua_State *L1 = getthread(L, &arg); - const char *options = luaL_optstring(L, arg+2, "flnStu"); - checkstack(L, L1, 3); - if (lua_isnumber(L, arg+1)) { - if (!lua_getstack(L1, (int)lua_tointeger(L, arg+1), &ar)) { - lua_pushnil(L); /* level out of range */ - return 1; - } - } - else if (lua_isfunction(L, arg+1)) { - lua_pushfstring(L, ">%s", options); - options = lua_tostring(L, -1); - lua_pushvalue(L, arg+1); - lua_xmove(L, L1, 1); - } - else - return luaL_argerror(L, arg+1, "function or level expected"); - if (!lua_getinfo(L1, options, &ar)) - return luaL_argerror(L, arg+2, "invalid option"); - lua_createtable(L, 0, 2); - if (strchr(options, 'S')) { - settabss(L, "source", ar.source); - settabss(L, "short_src", ar.short_src); - settabsi(L, "linedefined", ar.linedefined); - settabsi(L, "lastlinedefined", ar.lastlinedefined); - settabss(L, "what", ar.what); - } - if (strchr(options, 'l')) - settabsi(L, "currentline", ar.currentline); - if (strchr(options, 'u')) { - settabsi(L, "nups", ar.nups); - settabsi(L, "nparams", ar.nparams); - settabsb(L, "isvararg", ar.isvararg); - } - if (strchr(options, 'n')) { - settabss(L, "name", ar.name); - settabss(L, "namewhat", ar.namewhat); - } - if (strchr(options, 't')) - settabsb(L, "istailcall", ar.istailcall); - if (strchr(options, 'L')) - treatstackoption(L, L1, "activelines"); - if (strchr(options, 'f')) - treatstackoption(L, L1, "func"); - return 1; /* return table */ -} - - -static int db_getlocal (lua_State *L) { - int arg; - lua_State *L1 = getthread(L, &arg); - lua_Debug ar; - const char *name; - int nvar = luaL_checkint(L, arg+2); /* local-variable index */ - if (lua_isfunction(L, arg + 1)) { /* function argument? */ - lua_pushvalue(L, arg + 1); /* push function */ - lua_pushstring(L, lua_getlocal(L, NULL, nvar)); /* push local name */ - return 1; - } - else { /* stack-level argument */ - if (!lua_getstack(L1, luaL_checkint(L, arg+1), &ar)) /* out of range? */ - return luaL_argerror(L, arg+1, "level out of range"); - checkstack(L, L1, 1); - name = lua_getlocal(L1, &ar, nvar); - if (name) { - lua_xmove(L1, L, 1); /* push local value */ - lua_pushstring(L, name); /* push name */ - lua_pushvalue(L, -2); /* re-order */ - return 2; - } - else { - lua_pushnil(L); /* no name (nor value) */ - return 1; - } - } -} - - -static int db_setlocal (lua_State *L) { - int arg; - lua_State *L1 = getthread(L, &arg); - lua_Debug ar; - if (!lua_getstack(L1, luaL_checkint(L, arg+1), &ar)) /* out of range? */ - return luaL_argerror(L, arg+1, "level out of range"); - luaL_checkany(L, arg+3); - lua_settop(L, arg+3); - checkstack(L, L1, 1); - lua_xmove(L, L1, 1); - lua_pushstring(L, lua_setlocal(L1, &ar, luaL_checkint(L, arg+2))); - return 1; -} - - -static int auxupvalue (lua_State *L, int get) { - const char *name; - int n = luaL_checkint(L, 2); - luaL_checktype(L, 1, LUA_TFUNCTION); - name = get ? lua_getupvalue(L, 1, n) : lua_setupvalue(L, 1, n); - if (name == NULL) return 0; - lua_pushstring(L, name); - lua_insert(L, -(get+1)); - return get + 1; -} - - -static int db_getupvalue (lua_State *L) { - return auxupvalue(L, 1); -} - - -static int db_setupvalue (lua_State *L) { - luaL_checkany(L, 3); - return auxupvalue(L, 0); -} - - -static int checkupval (lua_State *L, int argf, int argnup) { - lua_Debug ar; - int nup = luaL_checkint(L, argnup); - luaL_checktype(L, argf, LUA_TFUNCTION); - lua_pushvalue(L, argf); - lua_getinfo(L, ">u", &ar); - luaL_argcheck(L, 1 <= nup && nup <= ar.nups, argnup, "invalid upvalue index"); - return nup; -} - - -static int db_upvalueid (lua_State *L) { - int n = checkupval(L, 1, 2); - lua_pushlightuserdata(L, lua_upvalueid(L, 1, n)); - return 1; -} - - -static int db_upvaluejoin (lua_State *L) { - int n1 = checkupval(L, 1, 2); - int n2 = checkupval(L, 3, 4); - luaL_argcheck(L, !lua_iscfunction(L, 1), 1, "Lua function expected"); - luaL_argcheck(L, !lua_iscfunction(L, 3), 3, "Lua function expected"); - lua_upvaluejoin(L, 1, n1, 3, n2); - return 0; -} - - -#define gethooktable(L) luaL_getsubtable(L, LUA_REGISTRYINDEX, HOOKKEY) - - -static void hookf (lua_State *L, lua_Debug *ar) { - static const char *const hooknames[] = - {"call", "return", "line", "count", "tail call"}; - gethooktable(L); - lua_pushthread(L); - lua_rawget(L, -2); - if (lua_isfunction(L, -1)) { - lua_pushstring(L, hooknames[(int)ar->event]); - if (ar->currentline >= 0) - lua_pushinteger(L, ar->currentline); - else lua_pushnil(L); - lua_assert(lua_getinfo(L, "lS", ar)); - lua_call(L, 2, 0); - } -} - - -static int makemask (const char *smask, int count) { - int mask = 0; - if (strchr(smask, 'c')) mask |= LUA_MASKCALL; - if (strchr(smask, 'r')) mask |= LUA_MASKRET; - if (strchr(smask, 'l')) mask |= LUA_MASKLINE; - if (count > 0) mask |= LUA_MASKCOUNT; - return mask; -} - - -static char *unmakemask (int mask, char *smask) { - int i = 0; - if (mask & LUA_MASKCALL) smask[i++] = 'c'; - if (mask & LUA_MASKRET) smask[i++] = 'r'; - if (mask & LUA_MASKLINE) smask[i++] = 'l'; - smask[i] = '\0'; - return smask; -} - - -static int db_sethook (lua_State *L) { - int arg, mask, count; - lua_Hook func; - lua_State *L1 = getthread(L, &arg); - if (lua_isnoneornil(L, arg+1)) { - lua_settop(L, arg+1); - func = NULL; mask = 0; count = 0; /* turn off hooks */ - } - else { - const char *smask = luaL_checkstring(L, arg+2); - luaL_checktype(L, arg+1, LUA_TFUNCTION); - count = luaL_optint(L, arg+3, 0); - func = hookf; mask = makemask(smask, count); - } - if (gethooktable(L) == 0) { /* creating hook table? */ - lua_pushstring(L, "k"); - lua_setfield(L, -2, "__mode"); /** hooktable.__mode = "k" */ - lua_pushvalue(L, -1); - lua_setmetatable(L, -2); /* setmetatable(hooktable) = hooktable */ - } - checkstack(L, L1, 1); - lua_pushthread(L1); lua_xmove(L1, L, 1); - lua_pushvalue(L, arg+1); - lua_rawset(L, -3); /* set new hook */ - lua_sethook(L1, func, mask, count); /* set hooks */ - return 0; -} - - -static int db_gethook (lua_State *L) { - int arg; - lua_State *L1 = getthread(L, &arg); - char buff[5]; - int mask = lua_gethookmask(L1); - lua_Hook hook = lua_gethook(L1); - if (hook != NULL && hook != hookf) /* external hook? */ - lua_pushliteral(L, "external hook"); - else { - gethooktable(L); - checkstack(L, L1, 1); - lua_pushthread(L1); lua_xmove(L1, L, 1); - lua_rawget(L, -2); /* get hook */ - lua_remove(L, -2); /* remove hook table */ - } - lua_pushstring(L, unmakemask(mask, buff)); - lua_pushinteger(L, lua_gethookcount(L1)); - return 3; -} - - -static int db_debug (lua_State *L) { - for (;;) { - char buffer[250]; - luai_writestringerror("%s", "lua_debug> "); - if (fgets(buffer, sizeof(buffer), stdin) == 0 || - strcmp(buffer, "cont\n") == 0) - return 0; - if (luaL_loadbuffer(L, buffer, strlen(buffer), "=(debug command)") || - lua_pcall(L, 0, 0, 0)) - luai_writestringerror("%s\n", lua_tostring(L, -1)); - lua_settop(L, 0); /* remove eventual returns */ - } -} - - -static int db_traceback (lua_State *L) { - int arg; - lua_State *L1 = getthread(L, &arg); - const char *msg = lua_tostring(L, arg + 1); - if (msg == NULL && !lua_isnoneornil(L, arg + 1)) /* non-string 'msg'? */ - lua_pushvalue(L, arg + 1); /* return it untouched */ - else { - int level = luaL_optint(L, arg + 2, (L == L1) ? 1 : 0); - luaL_traceback(L, L1, msg, level); - } - return 1; -} - - -static const luaL_Reg dblib[] = { - {"debug", db_debug}, - {"getuservalue", db_getuservalue}, - {"gethook", db_gethook}, - {"getinfo", db_getinfo}, - {"getlocal", db_getlocal}, - {"getregistry", db_getregistry}, - {"getmetatable", db_getmetatable}, - {"getupvalue", db_getupvalue}, - {"upvaluejoin", db_upvaluejoin}, - {"upvalueid", db_upvalueid}, - {"setuservalue", db_setuservalue}, - {"sethook", db_sethook}, - {"setlocal", db_setlocal}, - {"setmetatable", db_setmetatable}, - {"setupvalue", db_setupvalue}, - {"traceback", db_traceback}, - {NULL, NULL} -}; - - -LUAMOD_API int luaopen_debug (lua_State *L) { - luaL_newlib(L, dblib); - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/ldebug.c b/source/libs/lua52/lua52-src/src/ldebug.c deleted file mode 100644 index 96118461d..000000000 --- a/source/libs/lua52/lua52-src/src/ldebug.c +++ /dev/null @@ -1,610 +0,0 @@ -/* -** $Id: ldebug.c,v 2.90.1.4 2015/02/19 17:05:13 roberto Exp $ -** Debug Interface -** See Copyright Notice in lua.h -*/ - - -#include <stdarg.h> -#include <stddef.h> -#include <string.h> - - -#define ldebug_c -#define LUA_CORE - -#include "lua.h" - -#include "lapi.h" -#include "lcode.h" -#include "ldebug.h" -#include "ldo.h" -#include "lfunc.h" -#include "lobject.h" -#include "lopcodes.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "ltm.h" -#include "lvm.h" - - - -#define noLuaClosure(f) ((f) == NULL || (f)->c.tt == LUA_TCCL) - - -static const char *getfuncname (lua_State *L, CallInfo *ci, const char **name); - - -static int currentpc (CallInfo *ci) { - lua_assert(isLua(ci)); - return pcRel(ci->u.l.savedpc, ci_func(ci)->p); -} - - -static int currentline (CallInfo *ci) { - return getfuncline(ci_func(ci)->p, currentpc(ci)); -} - - -static void swapextra (lua_State *L) { - if (L->status == LUA_YIELD) { - CallInfo *ci = L->ci; /* get function that yielded */ - StkId temp = ci->func; /* exchange its 'func' and 'extra' values */ - ci->func = restorestack(L, ci->extra); - ci->extra = savestack(L, temp); - } -} - - -/* -** this function can be called asynchronous (e.g. during a signal) -*/ -LUA_API int lua_sethook (lua_State *L, lua_Hook func, int mask, int count) { - if (func == NULL || mask == 0) { /* turn off hooks? */ - mask = 0; - func = NULL; - } - if (isLua(L->ci)) - L->oldpc = L->ci->u.l.savedpc; - L->hook = func; - L->basehookcount = count; - resethookcount(L); - L->hookmask = cast_byte(mask); - return 1; -} - - -LUA_API lua_Hook lua_gethook (lua_State *L) { - return L->hook; -} - - -LUA_API int lua_gethookmask (lua_State *L) { - return L->hookmask; -} - - -LUA_API int lua_gethookcount (lua_State *L) { - return L->basehookcount; -} - - -LUA_API int lua_getstack (lua_State *L, int level, lua_Debug *ar) { - int status; - CallInfo *ci; - if (level < 0) return 0; /* invalid (negative) level */ - lua_lock(L); - for (ci = L->ci; level > 0 && ci != &L->base_ci; ci = ci->previous) - level--; - if (level == 0 && ci != &L->base_ci) { /* level found? */ - status = 1; - ar->i_ci = ci; - } - else status = 0; /* no such level */ - lua_unlock(L); - return status; -} - - -static const char *upvalname (Proto *p, int uv) { - TString *s = check_exp(uv < p->sizeupvalues, p->upvalues[uv].name); - if (s == NULL) return "?"; - else return getstr(s); -} - - -static const char *findvararg (CallInfo *ci, int n, StkId *pos) { - int nparams = clLvalue(ci->func)->p->numparams; - if (n >= ci->u.l.base - ci->func - nparams) - return NULL; /* no such vararg */ - else { - *pos = ci->func + nparams + n; - return "(*vararg)"; /* generic name for any vararg */ - } -} - - -static const char *findlocal (lua_State *L, CallInfo *ci, int n, - StkId *pos) { - const char *name = NULL; - StkId base; - if (isLua(ci)) { - if (n < 0) /* access to vararg values? */ - return findvararg(ci, -n, pos); - else { - base = ci->u.l.base; - name = luaF_getlocalname(ci_func(ci)->p, n, currentpc(ci)); - } - } - else - base = ci->func + 1; - if (name == NULL) { /* no 'standard' name? */ - StkId limit = (ci == L->ci) ? L->top : ci->next->func; - if (limit - base >= n && n > 0) /* is 'n' inside 'ci' stack? */ - name = "(*temporary)"; /* generic name for any valid slot */ - else - return NULL; /* no name */ - } - *pos = base + (n - 1); - return name; -} - - -LUA_API const char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n) { - const char *name; - lua_lock(L); - swapextra(L); - if (ar == NULL) { /* information about non-active function? */ - if (!isLfunction(L->top - 1)) /* not a Lua function? */ - name = NULL; - else /* consider live variables at function start (parameters) */ - name = luaF_getlocalname(clLvalue(L->top - 1)->p, n, 0); - } - else { /* active function; get information through 'ar' */ - StkId pos = 0; /* to avoid warnings */ - name = findlocal(L, ar->i_ci, n, &pos); - if (name) { - setobj2s(L, L->top, pos); - api_incr_top(L); - } - } - swapextra(L); - lua_unlock(L); - return name; -} - - -LUA_API const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n) { - StkId pos = 0; /* to avoid warnings */ - const char *name; - lua_lock(L); - swapextra(L); - name = findlocal(L, ar->i_ci, n, &pos); - if (name) - setobjs2s(L, pos, L->top - 1); - L->top--; /* pop value */ - swapextra(L); - lua_unlock(L); - return name; -} - - -static void funcinfo (lua_Debug *ar, Closure *cl) { - if (noLuaClosure(cl)) { - ar->source = "=[C]"; - ar->linedefined = -1; - ar->lastlinedefined = -1; - ar->what = "C"; - } - else { - Proto *p = cl->l.p; - ar->source = p->source ? getstr(p->source) : "=?"; - ar->linedefined = p->linedefined; - ar->lastlinedefined = p->lastlinedefined; - ar->what = (ar->linedefined == 0) ? "main" : "Lua"; - } - luaO_chunkid(ar->short_src, ar->source, LUA_IDSIZE); -} - - -static void collectvalidlines (lua_State *L, Closure *f) { - if (noLuaClosure(f)) { - setnilvalue(L->top); - api_incr_top(L); - } - else { - int i; - TValue v; - int *lineinfo = f->l.p->lineinfo; - Table *t = luaH_new(L); /* new table to store active lines */ - sethvalue(L, L->top, t); /* push it on stack */ - api_incr_top(L); - setbvalue(&v, 1); /* boolean 'true' to be the value of all indices */ - for (i = 0; i < f->l.p->sizelineinfo; i++) /* for all lines with code */ - luaH_setint(L, t, lineinfo[i], &v); /* table[line] = true */ - } -} - - -static int auxgetinfo (lua_State *L, const char *what, lua_Debug *ar, - Closure *f, CallInfo *ci) { - int status = 1; - for (; *what; what++) { - switch (*what) { - case 'S': { - funcinfo(ar, f); - break; - } - case 'l': { - ar->currentline = (ci && isLua(ci)) ? currentline(ci) : -1; - break; - } - case 'u': { - ar->nups = (f == NULL) ? 0 : f->c.nupvalues; - if (noLuaClosure(f)) { - ar->isvararg = 1; - ar->nparams = 0; - } - else { - ar->isvararg = f->l.p->is_vararg; - ar->nparams = f->l.p->numparams; - } - break; - } - case 't': { - ar->istailcall = (ci) ? ci->callstatus & CIST_TAIL : 0; - break; - } - case 'n': { - /* calling function is a known Lua function? */ - if (ci && !(ci->callstatus & CIST_TAIL) && isLua(ci->previous)) - ar->namewhat = getfuncname(L, ci->previous, &ar->name); - else - ar->namewhat = NULL; - if (ar->namewhat == NULL) { - ar->namewhat = ""; /* not found */ - ar->name = NULL; - } - break; - } - case 'L': - case 'f': /* handled by lua_getinfo */ - break; - default: status = 0; /* invalid option */ - } - } - return status; -} - - -LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) { - int status; - Closure *cl; - CallInfo *ci; - StkId func; - lua_lock(L); - swapextra(L); - if (*what == '>') { - ci = NULL; - func = L->top - 1; - api_check(L, ttisfunction(func), "function expected"); - what++; /* skip the '>' */ - L->top--; /* pop function */ - } - else { - ci = ar->i_ci; - func = ci->func; - lua_assert(ttisfunction(ci->func)); - } - cl = ttisclosure(func) ? clvalue(func) : NULL; - status = auxgetinfo(L, what, ar, cl, ci); - if (strchr(what, 'f')) { - setobjs2s(L, L->top, func); - api_incr_top(L); - } - swapextra(L); - if (strchr(what, 'L')) - collectvalidlines(L, cl); - lua_unlock(L); - return status; -} - - -/* -** {====================================================== -** Symbolic Execution -** ======================================================= -*/ - -static const char *getobjname (Proto *p, int lastpc, int reg, - const char **name); - - -/* -** find a "name" for the RK value 'c' -*/ -static void kname (Proto *p, int pc, int c, const char **name) { - if (ISK(c)) { /* is 'c' a constant? */ - TValue *kvalue = &p->k[INDEXK(c)]; - if (ttisstring(kvalue)) { /* literal constant? */ - *name = svalue(kvalue); /* it is its own name */ - return; - } - /* else no reasonable name found */ - } - else { /* 'c' is a register */ - const char *what = getobjname(p, pc, c, name); /* search for 'c' */ - if (what && *what == 'c') { /* found a constant name? */ - return; /* 'name' already filled */ - } - /* else no reasonable name found */ - } - *name = "?"; /* no reasonable name found */ -} - - -static int filterpc (int pc, int jmptarget) { - if (pc < jmptarget) /* is code conditional (inside a jump)? */ - return -1; /* cannot know who sets that register */ - else return pc; /* current position sets that register */ -} - - -/* -** try to find last instruction before 'lastpc' that modified register 'reg' -*/ -static int findsetreg (Proto *p, int lastpc, int reg) { - int pc; - int setreg = -1; /* keep last instruction that changed 'reg' */ - int jmptarget = 0; /* any code before this address is conditional */ - for (pc = 0; pc < lastpc; pc++) { - Instruction i = p->code[pc]; - OpCode op = GET_OPCODE(i); - int a = GETARG_A(i); - switch (op) { - case OP_LOADNIL: { - int b = GETARG_B(i); - if (a <= reg && reg <= a + b) /* set registers from 'a' to 'a+b' */ - setreg = filterpc(pc, jmptarget); - break; - } - case OP_TFORCALL: { - if (reg >= a + 2) /* affect all regs above its base */ - setreg = filterpc(pc, jmptarget); - break; - } - case OP_CALL: - case OP_TAILCALL: { - if (reg >= a) /* affect all registers above base */ - setreg = filterpc(pc, jmptarget); - break; - } - case OP_JMP: { - int b = GETARG_sBx(i); - int dest = pc + 1 + b; - /* jump is forward and do not skip `lastpc'? */ - if (pc < dest && dest <= lastpc) { - if (dest > jmptarget) - jmptarget = dest; /* update 'jmptarget' */ - } - break; - } - case OP_TEST: { - if (reg == a) /* jumped code can change 'a' */ - setreg = filterpc(pc, jmptarget); - break; - } - default: - if (testAMode(op) && reg == a) /* any instruction that set A */ - setreg = filterpc(pc, jmptarget); - break; - } - } - return setreg; -} - - -static const char *getobjname (Proto *p, int lastpc, int reg, - const char **name) { - int pc; - *name = luaF_getlocalname(p, reg + 1, lastpc); - if (*name) /* is a local? */ - return "local"; - /* else try symbolic execution */ - pc = findsetreg(p, lastpc, reg); - if (pc != -1) { /* could find instruction? */ - Instruction i = p->code[pc]; - OpCode op = GET_OPCODE(i); - switch (op) { - case OP_MOVE: { - int b = GETARG_B(i); /* move from 'b' to 'a' */ - if (b < GETARG_A(i)) - return getobjname(p, pc, b, name); /* get name for 'b' */ - break; - } - case OP_GETTABUP: - case OP_GETTABLE: { - int k = GETARG_C(i); /* key index */ - int t = GETARG_B(i); /* table index */ - const char *vn = (op == OP_GETTABLE) /* name of indexed variable */ - ? luaF_getlocalname(p, t + 1, pc) - : upvalname(p, t); - kname(p, pc, k, name); - return (vn && strcmp(vn, LUA_ENV) == 0) ? "global" : "field"; - } - case OP_GETUPVAL: { - *name = upvalname(p, GETARG_B(i)); - return "upvalue"; - } - case OP_LOADK: - case OP_LOADKX: { - int b = (op == OP_LOADK) ? GETARG_Bx(i) - : GETARG_Ax(p->code[pc + 1]); - if (ttisstring(&p->k[b])) { - *name = svalue(&p->k[b]); - return "constant"; - } - break; - } - case OP_SELF: { - int k = GETARG_C(i); /* key index */ - kname(p, pc, k, name); - return "method"; - } - default: break; /* go through to return NULL */ - } - } - return NULL; /* could not find reasonable name */ -} - - -static const char *getfuncname (lua_State *L, CallInfo *ci, const char **name) { - TMS tm; - Proto *p = ci_func(ci)->p; /* calling function */ - int pc = currentpc(ci); /* calling instruction index */ - Instruction i = p->code[pc]; /* calling instruction */ - switch (GET_OPCODE(i)) { - case OP_CALL: - case OP_TAILCALL: /* get function name */ - return getobjname(p, pc, GETARG_A(i), name); - case OP_TFORCALL: { /* for iterator */ - *name = "for iterator"; - return "for iterator"; - } - /* all other instructions can call only through metamethods */ - case OP_SELF: - case OP_GETTABUP: - case OP_GETTABLE: tm = TM_INDEX; break; - case OP_SETTABUP: - case OP_SETTABLE: tm = TM_NEWINDEX; break; - case OP_EQ: tm = TM_EQ; break; - case OP_ADD: tm = TM_ADD; break; - case OP_SUB: tm = TM_SUB; break; - case OP_MUL: tm = TM_MUL; break; - case OP_DIV: tm = TM_DIV; break; - case OP_MOD: tm = TM_MOD; break; - case OP_POW: tm = TM_POW; break; - case OP_UNM: tm = TM_UNM; break; - case OP_LEN: tm = TM_LEN; break; - case OP_LT: tm = TM_LT; break; - case OP_LE: tm = TM_LE; break; - case OP_CONCAT: tm = TM_CONCAT; break; - default: - return NULL; /* else no useful name can be found */ - } - *name = getstr(G(L)->tmname[tm]); - return "metamethod"; -} - -/* }====================================================== */ - - - -/* -** only ANSI way to check whether a pointer points to an array -** (used only for error messages, so efficiency is not a big concern) -*/ -static int isinstack (CallInfo *ci, const TValue *o) { - StkId p; - for (p = ci->u.l.base; p < ci->top; p++) - if (o == p) return 1; - return 0; -} - - -static const char *getupvalname (CallInfo *ci, const TValue *o, - const char **name) { - LClosure *c = ci_func(ci); - int i; - for (i = 0; i < c->nupvalues; i++) { - if (c->upvals[i]->v == o) { - *name = upvalname(c->p, i); - return "upvalue"; - } - } - return NULL; -} - - -l_noret luaG_typeerror (lua_State *L, const TValue *o, const char *op) { - CallInfo *ci = L->ci; - const char *name = NULL; - const char *t = objtypename(o); - const char *kind = NULL; - if (isLua(ci)) { - kind = getupvalname(ci, o, &name); /* check whether 'o' is an upvalue */ - if (!kind && isinstack(ci, o)) /* no? try a register */ - kind = getobjname(ci_func(ci)->p, currentpc(ci), - cast_int(o - ci->u.l.base), &name); - } - if (kind) - luaG_runerror(L, "attempt to %s %s " LUA_QS " (a %s value)", - op, kind, name, t); - else - luaG_runerror(L, "attempt to %s a %s value", op, t); -} - - -l_noret luaG_concaterror (lua_State *L, StkId p1, StkId p2) { - if (ttisstring(p1) || ttisnumber(p1)) p1 = p2; - lua_assert(!ttisstring(p1) && !ttisnumber(p1)); - luaG_typeerror(L, p1, "concatenate"); -} - - -l_noret luaG_aritherror (lua_State *L, const TValue *p1, const TValue *p2) { - TValue temp; - if (luaV_tonumber(p1, &temp) == NULL) - p2 = p1; /* first operand is wrong */ - luaG_typeerror(L, p2, "perform arithmetic on"); -} - - -l_noret luaG_ordererror (lua_State *L, const TValue *p1, const TValue *p2) { - const char *t1 = objtypename(p1); - const char *t2 = objtypename(p2); - if (t1 == t2) - luaG_runerror(L, "attempt to compare two %s values", t1); - else - luaG_runerror(L, "attempt to compare %s with %s", t1, t2); -} - - -static void addinfo (lua_State *L, const char *msg) { - CallInfo *ci = L->ci; - if (isLua(ci)) { /* is Lua code? */ - char buff[LUA_IDSIZE]; /* add file:line information */ - int line = currentline(ci); - TString *src = ci_func(ci)->p->source; - if (src) - luaO_chunkid(buff, getstr(src), LUA_IDSIZE); - else { /* no source available; use "?" instead */ - buff[0] = '?'; buff[1] = '\0'; - } - luaO_pushfstring(L, "%s:%d: %s", buff, line, msg); - } -} - - -l_noret luaG_errormsg (lua_State *L) { - if (L->errfunc != 0) { /* is there an error handling function? */ - StkId errfunc = restorestack(L, L->errfunc); - if (!ttisfunction(errfunc)) luaD_throw(L, LUA_ERRERR); - setobjs2s(L, L->top, L->top - 1); /* move argument */ - setobjs2s(L, L->top - 1, errfunc); /* push function */ - L->top++; - luaD_call(L, L->top - 2, 1, 0); /* call it */ - } - luaD_throw(L, LUA_ERRRUN); -} - - -l_noret luaG_runerror (lua_State *L, const char *fmt, ...) { - va_list argp; - va_start(argp, fmt); - addinfo(L, luaO_pushvfstring(L, fmt, argp)); - va_end(argp); - luaG_errormsg(L); -} - diff --git a/source/libs/lua52/lua52-src/src/ldebug.h b/source/libs/lua52/lua52-src/src/ldebug.h deleted file mode 100644 index 6445c763e..000000000 --- a/source/libs/lua52/lua52-src/src/ldebug.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -** $Id: ldebug.h,v 2.7.1.1 2013/04/12 18:48:47 roberto Exp $ -** Auxiliary functions from Debug Interface module -** See Copyright Notice in lua.h -*/ - -#ifndef ldebug_h -#define ldebug_h - - -#include "lstate.h" - - -#define pcRel(pc, p) (cast(int, (pc) - (p)->code) - 1) - -#define getfuncline(f,pc) (((f)->lineinfo) ? (f)->lineinfo[pc] : 0) - -#define resethookcount(L) (L->hookcount = L->basehookcount) - -/* Active Lua function (given call info) */ -#define ci_func(ci) (clLvalue((ci)->func)) - - -LUAI_FUNC l_noret luaG_typeerror (lua_State *L, const TValue *o, - const char *opname); -LUAI_FUNC l_noret luaG_concaterror (lua_State *L, StkId p1, StkId p2); -LUAI_FUNC l_noret luaG_aritherror (lua_State *L, const TValue *p1, - const TValue *p2); -LUAI_FUNC l_noret luaG_ordererror (lua_State *L, const TValue *p1, - const TValue *p2); -LUAI_FUNC l_noret luaG_runerror (lua_State *L, const char *fmt, ...); -LUAI_FUNC l_noret luaG_errormsg (lua_State *L); - -#endif diff --git a/source/libs/lua52/lua52-src/src/ldo.c b/source/libs/lua52/lua52-src/src/ldo.c deleted file mode 100644 index e9dd5fa95..000000000 --- a/source/libs/lua52/lua52-src/src/ldo.c +++ /dev/null @@ -1,681 +0,0 @@ -/* -** $Id: ldo.c,v 2.108.1.3 2013/11/08 18:22:50 roberto Exp $ -** Stack and Call structure of Lua -** See Copyright Notice in lua.h -*/ - - -#include <setjmp.h> -#include <stdlib.h> -#include <string.h> - -#define ldo_c -#define LUA_CORE - -#include "lua.h" - -#include "lapi.h" -#include "ldebug.h" -#include "ldo.h" -#include "lfunc.h" -#include "lgc.h" -#include "lmem.h" -#include "lobject.h" -#include "lopcodes.h" -#include "lparser.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "ltm.h" -#include "lundump.h" -#include "lvm.h" -#include "lzio.h" - - - - -/* -** {====================================================== -** Error-recovery functions -** ======================================================= -*/ - -/* -** LUAI_THROW/LUAI_TRY define how Lua does exception handling. By -** default, Lua handles errors with exceptions when compiling as -** C++ code, with _longjmp/_setjmp when asked to use them, and with -** longjmp/setjmp otherwise. -*/ -#if !defined(LUAI_THROW) - -#if defined(__cplusplus) && !defined(LUA_USE_LONGJMP) -/* C++ exceptions */ -#define LUAI_THROW(L,c) throw(c) -#define LUAI_TRY(L,c,a) \ - try { a } catch(...) { if ((c)->status == 0) (c)->status = -1; } -#define luai_jmpbuf int /* dummy variable */ - -#elif defined(LUA_USE_ULONGJMP) -/* in Unix, try _longjmp/_setjmp (more efficient) */ -#define LUAI_THROW(L,c) _longjmp((c)->b, 1) -#define LUAI_TRY(L,c,a) if (_setjmp((c)->b) == 0) { a } -#define luai_jmpbuf jmp_buf - -#else -/* default handling with long jumps */ -#define LUAI_THROW(L,c) longjmp((c)->b, 1) -#define LUAI_TRY(L,c,a) if (setjmp((c)->b) == 0) { a } -#define luai_jmpbuf jmp_buf - -#endif - -#endif - - - -/* chain list of long jump buffers */ -struct lua_longjmp { - struct lua_longjmp *previous; - luai_jmpbuf b; - volatile int status; /* error code */ -}; - - -static void seterrorobj (lua_State *L, int errcode, StkId oldtop) { - switch (errcode) { - case LUA_ERRMEM: { /* memory error? */ - setsvalue2s(L, oldtop, G(L)->memerrmsg); /* reuse preregistered msg. */ - break; - } - case LUA_ERRERR: { - setsvalue2s(L, oldtop, luaS_newliteral(L, "error in error handling")); - break; - } - default: { - setobjs2s(L, oldtop, L->top - 1); /* error message on current top */ - break; - } - } - L->top = oldtop + 1; -} - - -l_noret luaD_throw (lua_State *L, int errcode) { - if (L->errorJmp) { /* thread has an error handler? */ - L->errorJmp->status = errcode; /* set status */ - LUAI_THROW(L, L->errorJmp); /* jump to it */ - } - else { /* thread has no error handler */ - L->status = cast_byte(errcode); /* mark it as dead */ - if (G(L)->mainthread->errorJmp) { /* main thread has a handler? */ - setobjs2s(L, G(L)->mainthread->top++, L->top - 1); /* copy error obj. */ - luaD_throw(G(L)->mainthread, errcode); /* re-throw in main thread */ - } - else { /* no handler at all; abort */ - if (G(L)->panic) { /* panic function? */ - lua_unlock(L); - G(L)->panic(L); /* call it (last chance to jump out) */ - } - abort(); - } - } -} - - -int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud) { - unsigned short oldnCcalls = L->nCcalls; - struct lua_longjmp lj; - lj.status = LUA_OK; - lj.previous = L->errorJmp; /* chain new error handler */ - L->errorJmp = &lj; - LUAI_TRY(L, &lj, - (*f)(L, ud); - ); - L->errorJmp = lj.previous; /* restore old error handler */ - L->nCcalls = oldnCcalls; - return lj.status; -} - -/* }====================================================== */ - - -static void correctstack (lua_State *L, TValue *oldstack) { - CallInfo *ci; - GCObject *up; - L->top = (L->top - oldstack) + L->stack; - for (up = L->openupval; up != NULL; up = up->gch.next) - gco2uv(up)->v = (gco2uv(up)->v - oldstack) + L->stack; - for (ci = L->ci; ci != NULL; ci = ci->previous) { - ci->top = (ci->top - oldstack) + L->stack; - ci->func = (ci->func - oldstack) + L->stack; - if (isLua(ci)) - ci->u.l.base = (ci->u.l.base - oldstack) + L->stack; - } -} - - -/* some space for error handling */ -#define ERRORSTACKSIZE (LUAI_MAXSTACK + 200) - - -void luaD_reallocstack (lua_State *L, int newsize) { - TValue *oldstack = L->stack; - int lim = L->stacksize; - lua_assert(newsize <= LUAI_MAXSTACK || newsize == ERRORSTACKSIZE); - lua_assert(L->stack_last - L->stack == L->stacksize - EXTRA_STACK); - luaM_reallocvector(L, L->stack, L->stacksize, newsize, TValue); - for (; lim < newsize; lim++) - setnilvalue(L->stack + lim); /* erase new segment */ - L->stacksize = newsize; - L->stack_last = L->stack + newsize - EXTRA_STACK; - correctstack(L, oldstack); -} - - -void luaD_growstack (lua_State *L, int n) { - int size = L->stacksize; - if (size > LUAI_MAXSTACK) /* error after extra size? */ - luaD_throw(L, LUA_ERRERR); - else { - int needed = cast_int(L->top - L->stack) + n + EXTRA_STACK; - int newsize = 2 * size; - if (newsize > LUAI_MAXSTACK) newsize = LUAI_MAXSTACK; - if (newsize < needed) newsize = needed; - if (newsize > LUAI_MAXSTACK) { /* stack overflow? */ - luaD_reallocstack(L, ERRORSTACKSIZE); - luaG_runerror(L, "stack overflow"); - } - else - luaD_reallocstack(L, newsize); - } -} - - -static int stackinuse (lua_State *L) { - CallInfo *ci; - StkId lim = L->top; - for (ci = L->ci; ci != NULL; ci = ci->previous) { - lua_assert(ci->top <= L->stack_last); - if (lim < ci->top) lim = ci->top; - } - return cast_int(lim - L->stack) + 1; /* part of stack in use */ -} - - -void luaD_shrinkstack (lua_State *L) { - int inuse = stackinuse(L); - int goodsize = inuse + (inuse / 8) + 2*EXTRA_STACK; - if (goodsize > LUAI_MAXSTACK) goodsize = LUAI_MAXSTACK; - if (inuse > LUAI_MAXSTACK || /* handling stack overflow? */ - goodsize >= L->stacksize) /* would grow instead of shrink? */ - condmovestack(L); /* don't change stack (change only for debugging) */ - else - luaD_reallocstack(L, goodsize); /* shrink it */ -} - - -void luaD_hook (lua_State *L, int event, int line) { - lua_Hook hook = L->hook; - if (hook && L->allowhook) { - CallInfo *ci = L->ci; - ptrdiff_t top = savestack(L, L->top); - ptrdiff_t ci_top = savestack(L, ci->top); - lua_Debug ar; - ar.event = event; - ar.currentline = line; - ar.i_ci = ci; - luaD_checkstack(L, LUA_MINSTACK); /* ensure minimum stack size */ - ci->top = L->top + LUA_MINSTACK; - lua_assert(ci->top <= L->stack_last); - L->allowhook = 0; /* cannot call hooks inside a hook */ - ci->callstatus |= CIST_HOOKED; - lua_unlock(L); - (*hook)(L, &ar); - lua_lock(L); - lua_assert(!L->allowhook); - L->allowhook = 1; - ci->top = restorestack(L, ci_top); - L->top = restorestack(L, top); - ci->callstatus &= ~CIST_HOOKED; - } -} - - -static void callhook (lua_State *L, CallInfo *ci) { - int hook = LUA_HOOKCALL; - ci->u.l.savedpc++; /* hooks assume 'pc' is already incremented */ - if (isLua(ci->previous) && - GET_OPCODE(*(ci->previous->u.l.savedpc - 1)) == OP_TAILCALL) { - ci->callstatus |= CIST_TAIL; - hook = LUA_HOOKTAILCALL; - } - luaD_hook(L, hook, -1); - ci->u.l.savedpc--; /* correct 'pc' */ -} - - -static StkId adjust_varargs (lua_State *L, Proto *p, int actual) { - int i; - int nfixargs = p->numparams; - StkId base, fixed; - lua_assert(actual >= nfixargs); - /* move fixed parameters to final position */ - luaD_checkstack(L, p->maxstacksize); /* check again for new 'base' */ - fixed = L->top - actual; /* first fixed argument */ - base = L->top; /* final position of first argument */ - for (i=0; i<nfixargs; i++) { - setobjs2s(L, L->top++, fixed + i); - setnilvalue(fixed + i); - } - return base; -} - - -static StkId tryfuncTM (lua_State *L, StkId func) { - const TValue *tm = luaT_gettmbyobj(L, func, TM_CALL); - StkId p; - ptrdiff_t funcr = savestack(L, func); - if (!ttisfunction(tm)) - luaG_typeerror(L, func, "call"); - /* Open a hole inside the stack at `func' */ - for (p = L->top; p > func; p--) setobjs2s(L, p, p-1); - incr_top(L); - func = restorestack(L, funcr); /* previous call may change stack */ - setobj2s(L, func, tm); /* tag method is the new function to be called */ - return func; -} - - - -#define next_ci(L) (L->ci = (L->ci->next ? L->ci->next : luaE_extendCI(L))) - - -/* -** returns true if function has been executed (C function) -*/ -int luaD_precall (lua_State *L, StkId func, int nresults) { - lua_CFunction f; - CallInfo *ci; - int n; /* number of arguments (Lua) or returns (C) */ - ptrdiff_t funcr = savestack(L, func); - switch (ttype(func)) { - case LUA_TLCF: /* light C function */ - f = fvalue(func); - goto Cfunc; - case LUA_TCCL: { /* C closure */ - f = clCvalue(func)->f; - Cfunc: - luaD_checkstack(L, LUA_MINSTACK); /* ensure minimum stack size */ - ci = next_ci(L); /* now 'enter' new function */ - ci->nresults = nresults; - ci->func = restorestack(L, funcr); - ci->top = L->top + LUA_MINSTACK; - lua_assert(ci->top <= L->stack_last); - ci->callstatus = 0; - luaC_checkGC(L); /* stack grow uses memory */ - if (L->hookmask & LUA_MASKCALL) - luaD_hook(L, LUA_HOOKCALL, -1); - lua_unlock(L); - n = (*f)(L); /* do the actual call */ - lua_lock(L); - api_checknelems(L, n); - luaD_poscall(L, L->top - n); - return 1; - } - case LUA_TLCL: { /* Lua function: prepare its call */ - StkId base; - Proto *p = clLvalue(func)->p; - n = cast_int(L->top - func) - 1; /* number of real arguments */ - luaD_checkstack(L, p->maxstacksize); - for (; n < p->numparams; n++) - setnilvalue(L->top++); /* complete missing arguments */ - if (!p->is_vararg) { - func = restorestack(L, funcr); - base = func + 1; - } - else { - base = adjust_varargs(L, p, n); - func = restorestack(L, funcr); /* previous call can change stack */ - } - ci = next_ci(L); /* now 'enter' new function */ - ci->nresults = nresults; - ci->func = func; - ci->u.l.base = base; - ci->top = base + p->maxstacksize; - lua_assert(ci->top <= L->stack_last); - ci->u.l.savedpc = p->code; /* starting point */ - ci->callstatus = CIST_LUA; - L->top = ci->top; - luaC_checkGC(L); /* stack grow uses memory */ - if (L->hookmask & LUA_MASKCALL) - callhook(L, ci); - return 0; - } - default: { /* not a function */ - func = tryfuncTM(L, func); /* retry with 'function' tag method */ - return luaD_precall(L, func, nresults); /* now it must be a function */ - } - } -} - - -int luaD_poscall (lua_State *L, StkId firstResult) { - StkId res; - int wanted, i; - CallInfo *ci = L->ci; - if (L->hookmask & (LUA_MASKRET | LUA_MASKLINE)) { - if (L->hookmask & LUA_MASKRET) { - ptrdiff_t fr = savestack(L, firstResult); /* hook may change stack */ - luaD_hook(L, LUA_HOOKRET, -1); - firstResult = restorestack(L, fr); - } - L->oldpc = ci->previous->u.l.savedpc; /* 'oldpc' for caller function */ - } - res = ci->func; /* res == final position of 1st result */ - wanted = ci->nresults; - L->ci = ci = ci->previous; /* back to caller */ - /* move results to correct place */ - for (i = wanted; i != 0 && firstResult < L->top; i--) - setobjs2s(L, res++, firstResult++); - while (i-- > 0) - setnilvalue(res++); - L->top = res; - return (wanted - LUA_MULTRET); /* 0 iff wanted == LUA_MULTRET */ -} - - -/* -** Call a function (C or Lua). The function to be called is at *func. -** The arguments are on the stack, right after the function. -** When returns, all the results are on the stack, starting at the original -** function position. -*/ -void luaD_call (lua_State *L, StkId func, int nResults, int allowyield) { - if (++L->nCcalls >= LUAI_MAXCCALLS) { - if (L->nCcalls == LUAI_MAXCCALLS) - luaG_runerror(L, "C stack overflow"); - else if (L->nCcalls >= (LUAI_MAXCCALLS + (LUAI_MAXCCALLS>>3))) - luaD_throw(L, LUA_ERRERR); /* error while handing stack error */ - } - if (!allowyield) L->nny++; - if (!luaD_precall(L, func, nResults)) /* is a Lua function? */ - luaV_execute(L); /* call it */ - if (!allowyield) L->nny--; - L->nCcalls--; -} - - -static void finishCcall (lua_State *L) { - CallInfo *ci = L->ci; - int n; - lua_assert(ci->u.c.k != NULL); /* must have a continuation */ - lua_assert(L->nny == 0); - if (ci->callstatus & CIST_YPCALL) { /* was inside a pcall? */ - ci->callstatus &= ~CIST_YPCALL; /* finish 'lua_pcall' */ - L->errfunc = ci->u.c.old_errfunc; - } - /* finish 'lua_callk'/'lua_pcall' */ - adjustresults(L, ci->nresults); - /* call continuation function */ - if (!(ci->callstatus & CIST_STAT)) /* no call status? */ - ci->u.c.status = LUA_YIELD; /* 'default' status */ - lua_assert(ci->u.c.status != LUA_OK); - ci->callstatus = (ci->callstatus & ~(CIST_YPCALL | CIST_STAT)) | CIST_YIELDED; - lua_unlock(L); - n = (*ci->u.c.k)(L); - lua_lock(L); - api_checknelems(L, n); - /* finish 'luaD_precall' */ - luaD_poscall(L, L->top - n); -} - - -static void unroll (lua_State *L, void *ud) { - UNUSED(ud); - for (;;) { - if (L->ci == &L->base_ci) /* stack is empty? */ - return; /* coroutine finished normally */ - if (!isLua(L->ci)) /* C function? */ - finishCcall(L); - else { /* Lua function */ - luaV_finishOp(L); /* finish interrupted instruction */ - luaV_execute(L); /* execute down to higher C 'boundary' */ - } - } -} - - -/* -** check whether thread has a suspended protected call -*/ -static CallInfo *findpcall (lua_State *L) { - CallInfo *ci; - for (ci = L->ci; ci != NULL; ci = ci->previous) { /* search for a pcall */ - if (ci->callstatus & CIST_YPCALL) - return ci; - } - return NULL; /* no pending pcall */ -} - - -static int recover (lua_State *L, int status) { - StkId oldtop; - CallInfo *ci = findpcall(L); - if (ci == NULL) return 0; /* no recovery point */ - /* "finish" luaD_pcall */ - oldtop = restorestack(L, ci->extra); - luaF_close(L, oldtop); - seterrorobj(L, status, oldtop); - L->ci = ci; - L->allowhook = ci->u.c.old_allowhook; - L->nny = 0; /* should be zero to be yieldable */ - luaD_shrinkstack(L); - L->errfunc = ci->u.c.old_errfunc; - ci->callstatus |= CIST_STAT; /* call has error status */ - ci->u.c.status = status; /* (here it is) */ - return 1; /* continue running the coroutine */ -} - - -/* -** signal an error in the call to 'resume', not in the execution of the -** coroutine itself. (Such errors should not be handled by any coroutine -** error handler and should not kill the coroutine.) -*/ -static l_noret resume_error (lua_State *L, const char *msg, StkId firstArg) { - L->top = firstArg; /* remove args from the stack */ - setsvalue2s(L, L->top, luaS_new(L, msg)); /* push error message */ - api_incr_top(L); - luaD_throw(L, -1); /* jump back to 'lua_resume' */ -} - - -/* -** do the work for 'lua_resume' in protected mode -*/ -static void resume (lua_State *L, void *ud) { - int nCcalls = L->nCcalls; - StkId firstArg = cast(StkId, ud); - CallInfo *ci = L->ci; - if (nCcalls >= LUAI_MAXCCALLS) - resume_error(L, "C stack overflow", firstArg); - if (L->status == LUA_OK) { /* may be starting a coroutine */ - if (ci != &L->base_ci) /* not in base level? */ - resume_error(L, "cannot resume non-suspended coroutine", firstArg); - /* coroutine is in base level; start running it */ - if (!luaD_precall(L, firstArg - 1, LUA_MULTRET)) /* Lua function? */ - luaV_execute(L); /* call it */ - } - else if (L->status != LUA_YIELD) - resume_error(L, "cannot resume dead coroutine", firstArg); - else { /* resuming from previous yield */ - L->status = LUA_OK; - ci->func = restorestack(L, ci->extra); - if (isLua(ci)) /* yielded inside a hook? */ - luaV_execute(L); /* just continue running Lua code */ - else { /* 'common' yield */ - if (ci->u.c.k != NULL) { /* does it have a continuation? */ - int n; - ci->u.c.status = LUA_YIELD; /* 'default' status */ - ci->callstatus |= CIST_YIELDED; - lua_unlock(L); - n = (*ci->u.c.k)(L); /* call continuation */ - lua_lock(L); - api_checknelems(L, n); - firstArg = L->top - n; /* yield results come from continuation */ - } - luaD_poscall(L, firstArg); /* finish 'luaD_precall' */ - } - unroll(L, NULL); - } - lua_assert(nCcalls == L->nCcalls); -} - - -LUA_API int lua_resume (lua_State *L, lua_State *from, int nargs) { - int status; - int oldnny = L->nny; /* save 'nny' */ - lua_lock(L); - luai_userstateresume(L, nargs); - L->nCcalls = (from) ? from->nCcalls + 1 : 1; - L->nny = 0; /* allow yields */ - api_checknelems(L, (L->status == LUA_OK) ? nargs + 1 : nargs); - status = luaD_rawrunprotected(L, resume, L->top - nargs); - if (status == -1) /* error calling 'lua_resume'? */ - status = LUA_ERRRUN; - else { /* yield or regular error */ - while (status != LUA_OK && status != LUA_YIELD) { /* error? */ - if (recover(L, status)) /* recover point? */ - status = luaD_rawrunprotected(L, unroll, NULL); /* run continuation */ - else { /* unrecoverable error */ - L->status = cast_byte(status); /* mark thread as `dead' */ - seterrorobj(L, status, L->top); - L->ci->top = L->top; - break; - } - } - lua_assert(status == L->status); - } - L->nny = oldnny; /* restore 'nny' */ - L->nCcalls--; - lua_assert(L->nCcalls == ((from) ? from->nCcalls : 0)); - lua_unlock(L); - return status; -} - - -LUA_API int lua_yieldk (lua_State *L, int nresults, int ctx, lua_CFunction k) { - CallInfo *ci = L->ci; - luai_userstateyield(L, nresults); - lua_lock(L); - api_checknelems(L, nresults); - if (L->nny > 0) { - if (L != G(L)->mainthread) - luaG_runerror(L, "attempt to yield across a C-call boundary"); - else - luaG_runerror(L, "attempt to yield from outside a coroutine"); - } - L->status = LUA_YIELD; - ci->extra = savestack(L, ci->func); /* save current 'func' */ - if (isLua(ci)) { /* inside a hook? */ - api_check(L, k == NULL, "hooks cannot continue after yielding"); - } - else { - if ((ci->u.c.k = k) != NULL) /* is there a continuation? */ - ci->u.c.ctx = ctx; /* save context */ - ci->func = L->top - nresults - 1; /* protect stack below results */ - luaD_throw(L, LUA_YIELD); - } - lua_assert(ci->callstatus & CIST_HOOKED); /* must be inside a hook */ - lua_unlock(L); - return 0; /* return to 'luaD_hook' */ -} - - -int luaD_pcall (lua_State *L, Pfunc func, void *u, - ptrdiff_t old_top, ptrdiff_t ef) { - int status; - CallInfo *old_ci = L->ci; - lu_byte old_allowhooks = L->allowhook; - unsigned short old_nny = L->nny; - ptrdiff_t old_errfunc = L->errfunc; - L->errfunc = ef; - status = luaD_rawrunprotected(L, func, u); - if (status != LUA_OK) { /* an error occurred? */ - StkId oldtop = restorestack(L, old_top); - luaF_close(L, oldtop); /* close possible pending closures */ - seterrorobj(L, status, oldtop); - L->ci = old_ci; - L->allowhook = old_allowhooks; - L->nny = old_nny; - luaD_shrinkstack(L); - } - L->errfunc = old_errfunc; - return status; -} - - - -/* -** Execute a protected parser. -*/ -struct SParser { /* data to `f_parser' */ - ZIO *z; - Mbuffer buff; /* dynamic structure used by the scanner */ - Dyndata dyd; /* dynamic structures used by the parser */ - const char *mode; - const char *name; -}; - - -static void checkmode (lua_State *L, const char *mode, const char *x) { - if (mode && strchr(mode, x[0]) == NULL) { - luaO_pushfstring(L, - "attempt to load a %s chunk (mode is " LUA_QS ")", x, mode); - luaD_throw(L, LUA_ERRSYNTAX); - } -} - - -static void f_parser (lua_State *L, void *ud) { - int i; - Closure *cl; - struct SParser *p = cast(struct SParser *, ud); - int c = zgetc(p->z); /* read first character */ - if (c == LUA_SIGNATURE[0]) { - checkmode(L, p->mode, "binary"); - cl = luaU_undump(L, p->z, &p->buff, p->name); - } - else { - checkmode(L, p->mode, "text"); - cl = luaY_parser(L, p->z, &p->buff, &p->dyd, p->name, c); - } - lua_assert(cl->l.nupvalues == cl->l.p->sizeupvalues); - for (i = 0; i < cl->l.nupvalues; i++) { /* initialize upvalues */ - UpVal *up = luaF_newupval(L); - cl->l.upvals[i] = up; - luaC_objbarrier(L, cl, up); - } -} - - -int luaD_protectedparser (lua_State *L, ZIO *z, const char *name, - const char *mode) { - struct SParser p; - int status; - L->nny++; /* cannot yield during parsing */ - p.z = z; p.name = name; p.mode = mode; - p.dyd.actvar.arr = NULL; p.dyd.actvar.size = 0; - p.dyd.gt.arr = NULL; p.dyd.gt.size = 0; - p.dyd.label.arr = NULL; p.dyd.label.size = 0; - luaZ_initbuffer(L, &p.buff); - status = luaD_pcall(L, f_parser, &p, savestack(L, L->top), L->errfunc); - luaZ_freebuffer(L, &p.buff); - luaM_freearray(L, p.dyd.actvar.arr, p.dyd.actvar.size); - luaM_freearray(L, p.dyd.gt.arr, p.dyd.gt.size); - luaM_freearray(L, p.dyd.label.arr, p.dyd.label.size); - L->nny--; - return status; -} - - diff --git a/source/libs/lua52/lua52-src/src/ldo.h b/source/libs/lua52/lua52-src/src/ldo.h deleted file mode 100644 index d3d3082c9..000000000 --- a/source/libs/lua52/lua52-src/src/ldo.h +++ /dev/null @@ -1,46 +0,0 @@ -/* -** $Id: ldo.h,v 2.20.1.1 2013/04/12 18:48:47 roberto Exp $ -** Stack and Call structure of Lua -** See Copyright Notice in lua.h -*/ - -#ifndef ldo_h -#define ldo_h - - -#include "lobject.h" -#include "lstate.h" -#include "lzio.h" - - -#define luaD_checkstack(L,n) if (L->stack_last - L->top <= (n)) \ - luaD_growstack(L, n); else condmovestack(L); - - -#define incr_top(L) {L->top++; luaD_checkstack(L,0);} - -#define savestack(L,p) ((char *)(p) - (char *)L->stack) -#define restorestack(L,n) ((TValue *)((char *)L->stack + (n))) - - -/* type of protected functions, to be ran by `runprotected' */ -typedef void (*Pfunc) (lua_State *L, void *ud); - -LUAI_FUNC int luaD_protectedparser (lua_State *L, ZIO *z, const char *name, - const char *mode); -LUAI_FUNC void luaD_hook (lua_State *L, int event, int line); -LUAI_FUNC int luaD_precall (lua_State *L, StkId func, int nresults); -LUAI_FUNC void luaD_call (lua_State *L, StkId func, int nResults, - int allowyield); -LUAI_FUNC int luaD_pcall (lua_State *L, Pfunc func, void *u, - ptrdiff_t oldtop, ptrdiff_t ef); -LUAI_FUNC int luaD_poscall (lua_State *L, StkId firstResult); -LUAI_FUNC void luaD_reallocstack (lua_State *L, int newsize); -LUAI_FUNC void luaD_growstack (lua_State *L, int n); -LUAI_FUNC void luaD_shrinkstack (lua_State *L); - -LUAI_FUNC l_noret luaD_throw (lua_State *L, int errcode); -LUAI_FUNC int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud); - -#endif - diff --git a/source/libs/lua52/lua52-src/src/ldump.c b/source/libs/lua52/lua52-src/src/ldump.c deleted file mode 100644 index 61fa2cd89..000000000 --- a/source/libs/lua52/lua52-src/src/ldump.c +++ /dev/null @@ -1,173 +0,0 @@ -/* -** $Id: ldump.c,v 2.17.1.1 2013/04/12 18:48:47 roberto Exp $ -** save precompiled Lua chunks -** See Copyright Notice in lua.h -*/ - -#include <stddef.h> - -#define ldump_c -#define LUA_CORE - -#include "lua.h" - -#include "lobject.h" -#include "lstate.h" -#include "lundump.h" - -typedef struct { - lua_State* L; - lua_Writer writer; - void* data; - int strip; - int status; -} DumpState; - -#define DumpMem(b,n,size,D) DumpBlock(b,(n)*(size),D) -#define DumpVar(x,D) DumpMem(&x,1,sizeof(x),D) - -static void DumpBlock(const void* b, size_t size, DumpState* D) -{ - if (D->status==0) - { - lua_unlock(D->L); - D->status=(*D->writer)(D->L,b,size,D->data); - lua_lock(D->L); - } -} - -static void DumpChar(int y, DumpState* D) -{ - char x=(char)y; - DumpVar(x,D); -} - -static void DumpInt(int x, DumpState* D) -{ - DumpVar(x,D); -} - -static void DumpNumber(lua_Number x, DumpState* D) -{ - DumpVar(x,D); -} - -static void DumpVector(const void* b, int n, size_t size, DumpState* D) -{ - DumpInt(n,D); - DumpMem(b,n,size,D); -} - -static void DumpString(const TString* s, DumpState* D) -{ - if (s==NULL) - { - size_t size=0; - DumpVar(size,D); - } - else - { - size_t size=s->tsv.len+1; /* include trailing '\0' */ - DumpVar(size,D); - DumpBlock(getstr(s),size*sizeof(char),D); - } -} - -#define DumpCode(f,D) DumpVector(f->code,f->sizecode,sizeof(Instruction),D) - -static void DumpFunction(const Proto* f, DumpState* D); - -static void DumpConstants(const Proto* f, DumpState* D) -{ - int i,n=f->sizek; - DumpInt(n,D); - for (i=0; i<n; i++) - { - const TValue* o=&f->k[i]; - DumpChar(ttypenv(o),D); - switch (ttypenv(o)) - { - case LUA_TNIL: - break; - case LUA_TBOOLEAN: - DumpChar(bvalue(o),D); - break; - case LUA_TNUMBER: - DumpNumber(nvalue(o),D); - break; - case LUA_TSTRING: - DumpString(rawtsvalue(o),D); - break; - default: lua_assert(0); - } - } - n=f->sizep; - DumpInt(n,D); - for (i=0; i<n; i++) DumpFunction(f->p[i],D); -} - -static void DumpUpvalues(const Proto* f, DumpState* D) -{ - int i,n=f->sizeupvalues; - DumpInt(n,D); - for (i=0; i<n; i++) - { - DumpChar(f->upvalues[i].instack,D); - DumpChar(f->upvalues[i].idx,D); - } -} - -static void DumpDebug(const Proto* f, DumpState* D) -{ - int i,n; - DumpString((D->strip) ? NULL : f->source,D); - n= (D->strip) ? 0 : f->sizelineinfo; - DumpVector(f->lineinfo,n,sizeof(int),D); - n= (D->strip) ? 0 : f->sizelocvars; - DumpInt(n,D); - for (i=0; i<n; i++) - { - DumpString(f->locvars[i].varname,D); - DumpInt(f->locvars[i].startpc,D); - DumpInt(f->locvars[i].endpc,D); - } - n= (D->strip) ? 0 : f->sizeupvalues; - DumpInt(n,D); - for (i=0; i<n; i++) DumpString(f->upvalues[i].name,D); -} - -static void DumpFunction(const Proto* f, DumpState* D) -{ - DumpInt(f->linedefined,D); - DumpInt(f->lastlinedefined,D); - DumpChar(f->numparams,D); - DumpChar(f->is_vararg,D); - DumpChar(f->maxstacksize,D); - DumpCode(f,D); - DumpConstants(f,D); - DumpUpvalues(f,D); - DumpDebug(f,D); -} - -static void DumpHeader(DumpState* D) -{ - lu_byte h[LUAC_HEADERSIZE]; - luaU_header(h); - DumpBlock(h,LUAC_HEADERSIZE,D); -} - -/* -** dump Lua function as precompiled chunk -*/ -int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip) -{ - DumpState D; - D.L=L; - D.writer=w; - D.data=data; - D.strip=strip; - D.status=0; - DumpHeader(&D); - DumpFunction(f,&D); - return D.status; -} diff --git a/source/libs/lua52/lua52-src/src/lfunc.c b/source/libs/lua52/lua52-src/src/lfunc.c deleted file mode 100644 index e90e1520c..000000000 --- a/source/libs/lua52/lua52-src/src/lfunc.c +++ /dev/null @@ -1,161 +0,0 @@ -/* -** $Id: lfunc.c,v 2.30.1.1 2013/04/12 18:48:47 roberto Exp $ -** Auxiliary functions to manipulate prototypes and closures -** See Copyright Notice in lua.h -*/ - - -#include <stddef.h> - -#define lfunc_c -#define LUA_CORE - -#include "lua.h" - -#include "lfunc.h" -#include "lgc.h" -#include "lmem.h" -#include "lobject.h" -#include "lstate.h" - - - -Closure *luaF_newCclosure (lua_State *L, int n) { - Closure *c = &luaC_newobj(L, LUA_TCCL, sizeCclosure(n), NULL, 0)->cl; - c->c.nupvalues = cast_byte(n); - return c; -} - - -Closure *luaF_newLclosure (lua_State *L, int n) { - Closure *c = &luaC_newobj(L, LUA_TLCL, sizeLclosure(n), NULL, 0)->cl; - c->l.p = NULL; - c->l.nupvalues = cast_byte(n); - while (n--) c->l.upvals[n] = NULL; - return c; -} - - -UpVal *luaF_newupval (lua_State *L) { - UpVal *uv = &luaC_newobj(L, LUA_TUPVAL, sizeof(UpVal), NULL, 0)->uv; - uv->v = &uv->u.value; - setnilvalue(uv->v); - return uv; -} - - -UpVal *luaF_findupval (lua_State *L, StkId level) { - global_State *g = G(L); - GCObject **pp = &L->openupval; - UpVal *p; - UpVal *uv; - while (*pp != NULL && (p = gco2uv(*pp))->v >= level) { - GCObject *o = obj2gco(p); - lua_assert(p->v != &p->u.value); - lua_assert(!isold(o) || isold(obj2gco(L))); - if (p->v == level) { /* found a corresponding upvalue? */ - if (isdead(g, o)) /* is it dead? */ - changewhite(o); /* resurrect it */ - return p; - } - pp = &p->next; - } - /* not found: create a new one */ - uv = &luaC_newobj(L, LUA_TUPVAL, sizeof(UpVal), pp, 0)->uv; - uv->v = level; /* current value lives in the stack */ - uv->u.l.prev = &g->uvhead; /* double link it in `uvhead' list */ - uv->u.l.next = g->uvhead.u.l.next; - uv->u.l.next->u.l.prev = uv; - g->uvhead.u.l.next = uv; - lua_assert(uv->u.l.next->u.l.prev == uv && uv->u.l.prev->u.l.next == uv); - return uv; -} - - -static void unlinkupval (UpVal *uv) { - lua_assert(uv->u.l.next->u.l.prev == uv && uv->u.l.prev->u.l.next == uv); - uv->u.l.next->u.l.prev = uv->u.l.prev; /* remove from `uvhead' list */ - uv->u.l.prev->u.l.next = uv->u.l.next; -} - - -void luaF_freeupval (lua_State *L, UpVal *uv) { - if (uv->v != &uv->u.value) /* is it open? */ - unlinkupval(uv); /* remove from open list */ - luaM_free(L, uv); /* free upvalue */ -} - - -void luaF_close (lua_State *L, StkId level) { - UpVal *uv; - global_State *g = G(L); - while (L->openupval != NULL && (uv = gco2uv(L->openupval))->v >= level) { - GCObject *o = obj2gco(uv); - lua_assert(!isblack(o) && uv->v != &uv->u.value); - L->openupval = uv->next; /* remove from `open' list */ - if (isdead(g, o)) - luaF_freeupval(L, uv); /* free upvalue */ - else { - unlinkupval(uv); /* remove upvalue from 'uvhead' list */ - setobj(L, &uv->u.value, uv->v); /* move value to upvalue slot */ - uv->v = &uv->u.value; /* now current value lives here */ - gch(o)->next = g->allgc; /* link upvalue into 'allgc' list */ - g->allgc = o; - luaC_checkupvalcolor(g, uv); - } - } -} - - -Proto *luaF_newproto (lua_State *L) { - Proto *f = &luaC_newobj(L, LUA_TPROTO, sizeof(Proto), NULL, 0)->p; - f->k = NULL; - f->sizek = 0; - f->p = NULL; - f->sizep = 0; - f->code = NULL; - f->cache = NULL; - f->sizecode = 0; - f->lineinfo = NULL; - f->sizelineinfo = 0; - f->upvalues = NULL; - f->sizeupvalues = 0; - f->numparams = 0; - f->is_vararg = 0; - f->maxstacksize = 0; - f->locvars = NULL; - f->sizelocvars = 0; - f->linedefined = 0; - f->lastlinedefined = 0; - f->source = NULL; - return f; -} - - -void luaF_freeproto (lua_State *L, Proto *f) { - luaM_freearray(L, f->code, f->sizecode); - luaM_freearray(L, f->p, f->sizep); - luaM_freearray(L, f->k, f->sizek); - luaM_freearray(L, f->lineinfo, f->sizelineinfo); - luaM_freearray(L, f->locvars, f->sizelocvars); - luaM_freearray(L, f->upvalues, f->sizeupvalues); - luaM_free(L, f); -} - - -/* -** Look for n-th local variable at line `line' in function `func'. -** Returns NULL if not found. -*/ -const char *luaF_getlocalname (const Proto *f, int local_number, int pc) { - int i; - for (i = 0; i<f->sizelocvars && f->locvars[i].startpc <= pc; i++) { - if (pc < f->locvars[i].endpc) { /* is variable active? */ - local_number--; - if (local_number == 0) - return getstr(f->locvars[i].varname); - } - } - return NULL; /* not found */ -} - diff --git a/source/libs/lua52/lua52-src/src/lfunc.h b/source/libs/lua52/lua52-src/src/lfunc.h deleted file mode 100644 index ca0d3a3e0..000000000 --- a/source/libs/lua52/lua52-src/src/lfunc.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -** $Id: lfunc.h,v 2.8.1.1 2013/04/12 18:48:47 roberto Exp $ -** Auxiliary functions to manipulate prototypes and closures -** See Copyright Notice in lua.h -*/ - -#ifndef lfunc_h -#define lfunc_h - - -#include "lobject.h" - - -#define sizeCclosure(n) (cast(int, sizeof(CClosure)) + \ - cast(int, sizeof(TValue)*((n)-1))) - -#define sizeLclosure(n) (cast(int, sizeof(LClosure)) + \ - cast(int, sizeof(TValue *)*((n)-1))) - - -LUAI_FUNC Proto *luaF_newproto (lua_State *L); -LUAI_FUNC Closure *luaF_newCclosure (lua_State *L, int nelems); -LUAI_FUNC Closure *luaF_newLclosure (lua_State *L, int nelems); -LUAI_FUNC UpVal *luaF_newupval (lua_State *L); -LUAI_FUNC UpVal *luaF_findupval (lua_State *L, StkId level); -LUAI_FUNC void luaF_close (lua_State *L, StkId level); -LUAI_FUNC void luaF_freeproto (lua_State *L, Proto *f); -LUAI_FUNC void luaF_freeupval (lua_State *L, UpVal *uv); -LUAI_FUNC const char *luaF_getlocalname (const Proto *func, int local_number, - int pc); - - -#endif diff --git a/source/libs/lua52/lua52-src/src/lgc.c b/source/libs/lua52/lua52-src/src/lgc.c deleted file mode 100644 index 553fd1774..000000000 --- a/source/libs/lua52/lua52-src/src/lgc.c +++ /dev/null @@ -1,1220 +0,0 @@ -/* -** $Id: lgc.c,v 2.140.1.3 2014/09/01 16:55:08 roberto Exp $ -** Garbage Collector -** See Copyright Notice in lua.h -*/ - -#include <string.h> - -#define lgc_c -#define LUA_CORE - -#include "lua.h" - -#include "ldebug.h" -#include "ldo.h" -#include "lfunc.h" -#include "lgc.h" -#include "lmem.h" -#include "lobject.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "ltm.h" - - - -/* -** cost of sweeping one element (the size of a small object divided -** by some adjust for the sweep speed) -*/ -#define GCSWEEPCOST ((sizeof(TString) + 4) / 4) - -/* maximum number of elements to sweep in each single step */ -#define GCSWEEPMAX (cast_int((GCSTEPSIZE / GCSWEEPCOST) / 4)) - -/* maximum number of finalizers to call in each GC step */ -#define GCFINALIZENUM 4 - - -/* -** macro to adjust 'stepmul': 'stepmul' is actually used like -** 'stepmul / STEPMULADJ' (value chosen by tests) -*/ -#define STEPMULADJ 200 - - -/* -** macro to adjust 'pause': 'pause' is actually used like -** 'pause / PAUSEADJ' (value chosen by tests) -*/ -#define PAUSEADJ 100 - - -/* -** 'makewhite' erases all color bits plus the old bit and then -** sets only the current white bit -*/ -#define maskcolors (~(bit2mask(BLACKBIT, OLDBIT) | WHITEBITS)) -#define makewhite(g,x) \ - (gch(x)->marked = cast_byte((gch(x)->marked & maskcolors) | luaC_white(g))) - -#define white2gray(x) resetbits(gch(x)->marked, WHITEBITS) -#define black2gray(x) resetbit(gch(x)->marked, BLACKBIT) - - -#define isfinalized(x) testbit(gch(x)->marked, FINALIZEDBIT) - -#define checkdeadkey(n) lua_assert(!ttisdeadkey(gkey(n)) || ttisnil(gval(n))) - - -#define checkconsistency(obj) \ - lua_longassert(!iscollectable(obj) || righttt(obj)) - - -#define markvalue(g,o) { checkconsistency(o); \ - if (valiswhite(o)) reallymarkobject(g,gcvalue(o)); } - -#define markobject(g,t) { if ((t) && iswhite(obj2gco(t))) \ - reallymarkobject(g, obj2gco(t)); } - -static void reallymarkobject (global_State *g, GCObject *o); - - -/* -** {====================================================== -** Generic functions -** ======================================================= -*/ - - -/* -** one after last element in a hash array -*/ -#define gnodelast(h) gnode(h, cast(size_t, sizenode(h))) - - -/* -** link table 'h' into list pointed by 'p' -*/ -#define linktable(h,p) ((h)->gclist = *(p), *(p) = obj2gco(h)) - - -/* -** if key is not marked, mark its entry as dead (therefore removing it -** from the table) -*/ -static void removeentry (Node *n) { - lua_assert(ttisnil(gval(n))); - if (valiswhite(gkey(n))) - setdeadvalue(gkey(n)); /* unused and unmarked key; remove it */ -} - - -/* -** tells whether a key or value can be cleared from a weak -** table. Non-collectable objects are never removed from weak -** tables. Strings behave as `values', so are never removed too. for -** other objects: if really collected, cannot keep them; for objects -** being finalized, keep them in keys, but not in values -*/ -static int iscleared (global_State *g, const TValue *o) { - if (!iscollectable(o)) return 0; - else if (ttisstring(o)) { - markobject(g, rawtsvalue(o)); /* strings are `values', so are never weak */ - return 0; - } - else return iswhite(gcvalue(o)); -} - - -/* -** barrier that moves collector forward, that is, mark the white object -** being pointed by a black object. -*/ -void luaC_barrier_ (lua_State *L, GCObject *o, GCObject *v) { - global_State *g = G(L); - lua_assert(isblack(o) && iswhite(v) && !isdead(g, v) && !isdead(g, o)); - lua_assert(g->gcstate != GCSpause); - lua_assert(gch(o)->tt != LUA_TTABLE); - if (keepinvariantout(g)) /* must keep invariant? */ - reallymarkobject(g, v); /* restore invariant */ - else { /* sweep phase */ - lua_assert(issweepphase(g)); - makewhite(g, o); /* mark main obj. as white to avoid other barriers */ - } -} - - -/* -** barrier that moves collector backward, that is, mark the black object -** pointing to a white object as gray again. (Current implementation -** only works for tables; access to 'gclist' is not uniform across -** different types.) -*/ -void luaC_barrierback_ (lua_State *L, GCObject *o) { - global_State *g = G(L); - lua_assert(isblack(o) && !isdead(g, o) && gch(o)->tt == LUA_TTABLE); - black2gray(o); /* make object gray (again) */ - gco2t(o)->gclist = g->grayagain; - g->grayagain = o; -} - - -/* -** barrier for prototypes. When creating first closure (cache is -** NULL), use a forward barrier; this may be the only closure of the -** prototype (if it is a "regular" function, with a single instance) -** and the prototype may be big, so it is better to avoid traversing -** it again. Otherwise, use a backward barrier, to avoid marking all -** possible instances. -*/ -LUAI_FUNC void luaC_barrierproto_ (lua_State *L, Proto *p, Closure *c) { - global_State *g = G(L); - lua_assert(isblack(obj2gco(p))); - if (p->cache == NULL) { /* first time? */ - luaC_objbarrier(L, p, c); - } - else { /* use a backward barrier */ - black2gray(obj2gco(p)); /* make prototype gray (again) */ - p->gclist = g->grayagain; - g->grayagain = obj2gco(p); - } -} - - -/* -** check color (and invariants) for an upvalue that was closed, -** i.e., moved into the 'allgc' list -*/ -void luaC_checkupvalcolor (global_State *g, UpVal *uv) { - GCObject *o = obj2gco(uv); - lua_assert(!isblack(o)); /* open upvalues are never black */ - if (isgray(o)) { - if (keepinvariant(g)) { - resetoldbit(o); /* see MOVE OLD rule */ - gray2black(o); /* it is being visited now */ - markvalue(g, uv->v); - } - else { - lua_assert(issweepphase(g)); - makewhite(g, o); - } - } -} - - -/* -** create a new collectable object (with given type and size) and link -** it to '*list'. 'offset' tells how many bytes to allocate before the -** object itself (used only by states). -*/ -GCObject *luaC_newobj (lua_State *L, int tt, size_t sz, GCObject **list, - int offset) { - global_State *g = G(L); - char *raw = cast(char *, luaM_newobject(L, novariant(tt), sz)); - GCObject *o = obj2gco(raw + offset); - if (list == NULL) - list = &g->allgc; /* standard list for collectable objects */ - gch(o)->marked = luaC_white(g); - gch(o)->tt = tt; - gch(o)->next = *list; - *list = o; - return o; -} - -/* }====================================================== */ - - - -/* -** {====================================================== -** Mark functions -** ======================================================= -*/ - - -/* -** mark an object. Userdata, strings, and closed upvalues are visited -** and turned black here. Other objects are marked gray and added -** to appropriate list to be visited (and turned black) later. (Open -** upvalues are already linked in 'headuv' list.) -*/ -static void reallymarkobject (global_State *g, GCObject *o) { - lu_mem size; - white2gray(o); - switch (gch(o)->tt) { - case LUA_TSHRSTR: - case LUA_TLNGSTR: { - size = sizestring(gco2ts(o)); - break; /* nothing else to mark; make it black */ - } - case LUA_TUSERDATA: { - Table *mt = gco2u(o)->metatable; - markobject(g, mt); - markobject(g, gco2u(o)->env); - size = sizeudata(gco2u(o)); - break; - } - case LUA_TUPVAL: { - UpVal *uv = gco2uv(o); - markvalue(g, uv->v); - if (uv->v != &uv->u.value) /* open? */ - return; /* open upvalues remain gray */ - size = sizeof(UpVal); - break; - } - case LUA_TLCL: { - gco2lcl(o)->gclist = g->gray; - g->gray = o; - return; - } - case LUA_TCCL: { - gco2ccl(o)->gclist = g->gray; - g->gray = o; - return; - } - case LUA_TTABLE: { - linktable(gco2t(o), &g->gray); - return; - } - case LUA_TTHREAD: { - gco2th(o)->gclist = g->gray; - g->gray = o; - return; - } - case LUA_TPROTO: { - gco2p(o)->gclist = g->gray; - g->gray = o; - return; - } - default: lua_assert(0); return; - } - gray2black(o); - g->GCmemtrav += size; -} - - -/* -** mark metamethods for basic types -*/ -static void markmt (global_State *g) { - int i; - for (i=0; i < LUA_NUMTAGS; i++) - markobject(g, g->mt[i]); -} - - -/* -** mark all objects in list of being-finalized -*/ -static void markbeingfnz (global_State *g) { - GCObject *o; - for (o = g->tobefnz; o != NULL; o = gch(o)->next) { - makewhite(g, o); - reallymarkobject(g, o); - } -} - - -/* -** mark all values stored in marked open upvalues. (See comment in -** 'lstate.h'.) -*/ -static void remarkupvals (global_State *g) { - UpVal *uv; - for (uv = g->uvhead.u.l.next; uv != &g->uvhead; uv = uv->u.l.next) { - if (isgray(obj2gco(uv))) - markvalue(g, uv->v); - } -} - - -/* -** mark root set and reset all gray lists, to start a new -** incremental (or full) collection -*/ -static void restartcollection (global_State *g) { - g->gray = g->grayagain = NULL; - g->weak = g->allweak = g->ephemeron = NULL; - markobject(g, g->mainthread); - markvalue(g, &g->l_registry); - markmt(g); - markbeingfnz(g); /* mark any finalizing object left from previous cycle */ -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Traverse functions -** ======================================================= -*/ - -static void traverseweakvalue (global_State *g, Table *h) { - Node *n, *limit = gnodelast(h); - /* if there is array part, assume it may have white values (do not - traverse it just to check) */ - int hasclears = (h->sizearray > 0); - for (n = gnode(h, 0); n < limit; n++) { - checkdeadkey(n); - if (ttisnil(gval(n))) /* entry is empty? */ - removeentry(n); /* remove it */ - else { - lua_assert(!ttisnil(gkey(n))); - markvalue(g, gkey(n)); /* mark key */ - if (!hasclears && iscleared(g, gval(n))) /* is there a white value? */ - hasclears = 1; /* table will have to be cleared */ - } - } - if (hasclears) - linktable(h, &g->weak); /* has to be cleared later */ - else /* no white values */ - linktable(h, &g->grayagain); /* no need to clean */ -} - - -static int traverseephemeron (global_State *g, Table *h) { - int marked = 0; /* true if an object is marked in this traversal */ - int hasclears = 0; /* true if table has white keys */ - int prop = 0; /* true if table has entry "white-key -> white-value" */ - Node *n, *limit = gnodelast(h); - int i; - /* traverse array part (numeric keys are 'strong') */ - for (i = 0; i < h->sizearray; i++) { - if (valiswhite(&h->array[i])) { - marked = 1; - reallymarkobject(g, gcvalue(&h->array[i])); - } - } - /* traverse hash part */ - for (n = gnode(h, 0); n < limit; n++) { - checkdeadkey(n); - if (ttisnil(gval(n))) /* entry is empty? */ - removeentry(n); /* remove it */ - else if (iscleared(g, gkey(n))) { /* key is not marked (yet)? */ - hasclears = 1; /* table must be cleared */ - if (valiswhite(gval(n))) /* value not marked yet? */ - prop = 1; /* must propagate again */ - } - else if (valiswhite(gval(n))) { /* value not marked yet? */ - marked = 1; - reallymarkobject(g, gcvalue(gval(n))); /* mark it now */ - } - } - if (g->gcstate != GCSatomic || prop) - linktable(h, &g->ephemeron); /* have to propagate again */ - else if (hasclears) /* does table have white keys? */ - linktable(h, &g->allweak); /* may have to clean white keys */ - else /* no white keys */ - linktable(h, &g->grayagain); /* no need to clean */ - return marked; -} - - -static void traversestrongtable (global_State *g, Table *h) { - Node *n, *limit = gnodelast(h); - int i; - for (i = 0; i < h->sizearray; i++) /* traverse array part */ - markvalue(g, &h->array[i]); - for (n = gnode(h, 0); n < limit; n++) { /* traverse hash part */ - checkdeadkey(n); - if (ttisnil(gval(n))) /* entry is empty? */ - removeentry(n); /* remove it */ - else { - lua_assert(!ttisnil(gkey(n))); - markvalue(g, gkey(n)); /* mark key */ - markvalue(g, gval(n)); /* mark value */ - } - } -} - - -static lu_mem traversetable (global_State *g, Table *h) { - const char *weakkey, *weakvalue; - const TValue *mode = gfasttm(g, h->metatable, TM_MODE); - markobject(g, h->metatable); - if (mode && ttisstring(mode) && /* is there a weak mode? */ - ((weakkey = strchr(svalue(mode), 'k')), - (weakvalue = strchr(svalue(mode), 'v')), - (weakkey || weakvalue))) { /* is really weak? */ - black2gray(obj2gco(h)); /* keep table gray */ - if (!weakkey) /* strong keys? */ - traverseweakvalue(g, h); - else if (!weakvalue) /* strong values? */ - traverseephemeron(g, h); - else /* all weak */ - linktable(h, &g->allweak); /* nothing to traverse now */ - } - else /* not weak */ - traversestrongtable(g, h); - return sizeof(Table) + sizeof(TValue) * h->sizearray + - sizeof(Node) * cast(size_t, sizenode(h)); -} - - -static int traverseproto (global_State *g, Proto *f) { - int i; - if (f->cache && iswhite(obj2gco(f->cache))) - f->cache = NULL; /* allow cache to be collected */ - markobject(g, f->source); - for (i = 0; i < f->sizek; i++) /* mark literals */ - markvalue(g, &f->k[i]); - for (i = 0; i < f->sizeupvalues; i++) /* mark upvalue names */ - markobject(g, f->upvalues[i].name); - for (i = 0; i < f->sizep; i++) /* mark nested protos */ - markobject(g, f->p[i]); - for (i = 0; i < f->sizelocvars; i++) /* mark local-variable names */ - markobject(g, f->locvars[i].varname); - return sizeof(Proto) + sizeof(Instruction) * f->sizecode + - sizeof(Proto *) * f->sizep + - sizeof(TValue) * f->sizek + - sizeof(int) * f->sizelineinfo + - sizeof(LocVar) * f->sizelocvars + - sizeof(Upvaldesc) * f->sizeupvalues; -} - - -static lu_mem traverseCclosure (global_State *g, CClosure *cl) { - int i; - for (i = 0; i < cl->nupvalues; i++) /* mark its upvalues */ - markvalue(g, &cl->upvalue[i]); - return sizeCclosure(cl->nupvalues); -} - -static lu_mem traverseLclosure (global_State *g, LClosure *cl) { - int i; - markobject(g, cl->p); /* mark its prototype */ - for (i = 0; i < cl->nupvalues; i++) /* mark its upvalues */ - markobject(g, cl->upvals[i]); - return sizeLclosure(cl->nupvalues); -} - - -static lu_mem traversestack (global_State *g, lua_State *th) { - int n = 0; - StkId o = th->stack; - if (o == NULL) - return 1; /* stack not completely built yet */ - for (; o < th->top; o++) /* mark live elements in the stack */ - markvalue(g, o); - if (g->gcstate == GCSatomic) { /* final traversal? */ - StkId lim = th->stack + th->stacksize; /* real end of stack */ - for (; o < lim; o++) /* clear not-marked stack slice */ - setnilvalue(o); - } - else { /* count call infos to compute size */ - CallInfo *ci; - for (ci = &th->base_ci; ci != th->ci; ci = ci->next) - n++; - } - return sizeof(lua_State) + sizeof(TValue) * th->stacksize + - sizeof(CallInfo) * n; -} - - -/* -** traverse one gray object, turning it to black (except for threads, -** which are always gray). -*/ -static void propagatemark (global_State *g) { - lu_mem size; - GCObject *o = g->gray; - lua_assert(isgray(o)); - gray2black(o); - switch (gch(o)->tt) { - case LUA_TTABLE: { - Table *h = gco2t(o); - g->gray = h->gclist; /* remove from 'gray' list */ - size = traversetable(g, h); - break; - } - case LUA_TLCL: { - LClosure *cl = gco2lcl(o); - g->gray = cl->gclist; /* remove from 'gray' list */ - size = traverseLclosure(g, cl); - break; - } - case LUA_TCCL: { - CClosure *cl = gco2ccl(o); - g->gray = cl->gclist; /* remove from 'gray' list */ - size = traverseCclosure(g, cl); - break; - } - case LUA_TTHREAD: { - lua_State *th = gco2th(o); - g->gray = th->gclist; /* remove from 'gray' list */ - th->gclist = g->grayagain; - g->grayagain = o; /* insert into 'grayagain' list */ - black2gray(o); - size = traversestack(g, th); - break; - } - case LUA_TPROTO: { - Proto *p = gco2p(o); - g->gray = p->gclist; /* remove from 'gray' list */ - size = traverseproto(g, p); - break; - } - default: lua_assert(0); return; - } - g->GCmemtrav += size; -} - - -static void propagateall (global_State *g) { - while (g->gray) propagatemark(g); -} - - -static void propagatelist (global_State *g, GCObject *l) { - lua_assert(g->gray == NULL); /* no grays left */ - g->gray = l; - propagateall(g); /* traverse all elements from 'l' */ -} - -/* -** retraverse all gray lists. Because tables may be reinserted in other -** lists when traversed, traverse the original lists to avoid traversing -** twice the same table (which is not wrong, but inefficient) -*/ -static void retraversegrays (global_State *g) { - GCObject *weak = g->weak; /* save original lists */ - GCObject *grayagain = g->grayagain; - GCObject *ephemeron = g->ephemeron; - g->weak = g->grayagain = g->ephemeron = NULL; - propagateall(g); /* traverse main gray list */ - propagatelist(g, grayagain); - propagatelist(g, weak); - propagatelist(g, ephemeron); -} - - -static void convergeephemerons (global_State *g) { - int changed; - do { - GCObject *w; - GCObject *next = g->ephemeron; /* get ephemeron list */ - g->ephemeron = NULL; /* tables will return to this list when traversed */ - changed = 0; - while ((w = next) != NULL) { - next = gco2t(w)->gclist; - if (traverseephemeron(g, gco2t(w))) { /* traverse marked some value? */ - propagateall(g); /* propagate changes */ - changed = 1; /* will have to revisit all ephemeron tables */ - } - } - } while (changed); -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Sweep Functions -** ======================================================= -*/ - - -/* -** clear entries with unmarked keys from all weaktables in list 'l' up -** to element 'f' -*/ -static void clearkeys (global_State *g, GCObject *l, GCObject *f) { - for (; l != f; l = gco2t(l)->gclist) { - Table *h = gco2t(l); - Node *n, *limit = gnodelast(h); - for (n = gnode(h, 0); n < limit; n++) { - if (!ttisnil(gval(n)) && (iscleared(g, gkey(n)))) { - setnilvalue(gval(n)); /* remove value ... */ - removeentry(n); /* and remove entry from table */ - } - } - } -} - - -/* -** clear entries with unmarked values from all weaktables in list 'l' up -** to element 'f' -*/ -static void clearvalues (global_State *g, GCObject *l, GCObject *f) { - for (; l != f; l = gco2t(l)->gclist) { - Table *h = gco2t(l); - Node *n, *limit = gnodelast(h); - int i; - for (i = 0; i < h->sizearray; i++) { - TValue *o = &h->array[i]; - if (iscleared(g, o)) /* value was collected? */ - setnilvalue(o); /* remove value */ - } - for (n = gnode(h, 0); n < limit; n++) { - if (!ttisnil(gval(n)) && iscleared(g, gval(n))) { - setnilvalue(gval(n)); /* remove value ... */ - removeentry(n); /* and remove entry from table */ - } - } - } -} - - -static void freeobj (lua_State *L, GCObject *o) { - switch (gch(o)->tt) { - case LUA_TPROTO: luaF_freeproto(L, gco2p(o)); break; - case LUA_TLCL: { - luaM_freemem(L, o, sizeLclosure(gco2lcl(o)->nupvalues)); - break; - } - case LUA_TCCL: { - luaM_freemem(L, o, sizeCclosure(gco2ccl(o)->nupvalues)); - break; - } - case LUA_TUPVAL: luaF_freeupval(L, gco2uv(o)); break; - case LUA_TTABLE: luaH_free(L, gco2t(o)); break; - case LUA_TTHREAD: luaE_freethread(L, gco2th(o)); break; - case LUA_TUSERDATA: luaM_freemem(L, o, sizeudata(gco2u(o))); break; - case LUA_TSHRSTR: - G(L)->strt.nuse--; - /* go through */ - case LUA_TLNGSTR: { - luaM_freemem(L, o, sizestring(gco2ts(o))); - break; - } - default: lua_assert(0); - } -} - - -#define sweepwholelist(L,p) sweeplist(L,p,MAX_LUMEM) -static GCObject **sweeplist (lua_State *L, GCObject **p, lu_mem count); - - -/* -** sweep the (open) upvalues of a thread and resize its stack and -** list of call-info structures. -*/ -static void sweepthread (lua_State *L, lua_State *L1) { - if (L1->stack == NULL) return; /* stack not completely built yet */ - sweepwholelist(L, &L1->openupval); /* sweep open upvalues */ - luaE_freeCI(L1); /* free extra CallInfo slots */ - /* should not change the stack during an emergency gc cycle */ - if (G(L)->gckind != KGC_EMERGENCY) - luaD_shrinkstack(L1); -} - - -/* -** sweep at most 'count' elements from a list of GCObjects erasing dead -** objects, where a dead (not alive) object is one marked with the "old" -** (non current) white and not fixed. -** In non-generational mode, change all non-dead objects back to white, -** preparing for next collection cycle. -** In generational mode, keep black objects black, and also mark them as -** old; stop when hitting an old object, as all objects after that -** one will be old too. -** When object is a thread, sweep its list of open upvalues too. -*/ -static GCObject **sweeplist (lua_State *L, GCObject **p, lu_mem count) { - global_State *g = G(L); - int ow = otherwhite(g); - int toclear, toset; /* bits to clear and to set in all live objects */ - int tostop; /* stop sweep when this is true */ - if (isgenerational(g)) { /* generational mode? */ - toclear = ~0; /* clear nothing */ - toset = bitmask(OLDBIT); /* set the old bit of all surviving objects */ - tostop = bitmask(OLDBIT); /* do not sweep old generation */ - } - else { /* normal mode */ - toclear = maskcolors; /* clear all color bits + old bit */ - toset = luaC_white(g); /* make object white */ - tostop = 0; /* do not stop */ - } - while (*p != NULL && count-- > 0) { - GCObject *curr = *p; - int marked = gch(curr)->marked; - if (isdeadm(ow, marked)) { /* is 'curr' dead? */ - *p = gch(curr)->next; /* remove 'curr' from list */ - freeobj(L, curr); /* erase 'curr' */ - } - else { - if (testbits(marked, tostop)) - return NULL; /* stop sweeping this list */ - if (gch(curr)->tt == LUA_TTHREAD) - sweepthread(L, gco2th(curr)); /* sweep thread's upvalues */ - /* update marks */ - gch(curr)->marked = cast_byte((marked & toclear) | toset); - p = &gch(curr)->next; /* go to next element */ - } - } - return (*p == NULL) ? NULL : p; -} - - -/* -** sweep a list until a live object (or end of list) -*/ -static GCObject **sweeptolive (lua_State *L, GCObject **p, int *n) { - GCObject ** old = p; - int i = 0; - do { - i++; - p = sweeplist(L, p, 1); - } while (p == old); - if (n) *n += i; - return p; -} - -/* }====================================================== */ - - -/* -** {====================================================== -** Finalization -** ======================================================= -*/ - -static void checkSizes (lua_State *L) { - global_State *g = G(L); - if (g->gckind != KGC_EMERGENCY) { /* do not change sizes in emergency */ - int hs = g->strt.size / 2; /* half the size of the string table */ - if (g->strt.nuse < cast(lu_int32, hs)) /* using less than that half? */ - luaS_resize(L, hs); /* halve its size */ - luaZ_freebuffer(L, &g->buff); /* free concatenation buffer */ - } -} - - -static GCObject *udata2finalize (global_State *g) { - GCObject *o = g->tobefnz; /* get first element */ - lua_assert(isfinalized(o)); - g->tobefnz = gch(o)->next; /* remove it from 'tobefnz' list */ - gch(o)->next = g->allgc; /* return it to 'allgc' list */ - g->allgc = o; - resetbit(gch(o)->marked, SEPARATED); /* mark that it is not in 'tobefnz' */ - lua_assert(!isold(o)); /* see MOVE OLD rule */ - if (!keepinvariantout(g)) /* not keeping invariant? */ - makewhite(g, o); /* "sweep" object */ - return o; -} - - -static void dothecall (lua_State *L, void *ud) { - UNUSED(ud); - luaD_call(L, L->top - 2, 0, 0); -} - - -static void GCTM (lua_State *L, int propagateerrors) { - global_State *g = G(L); - const TValue *tm; - TValue v; - setgcovalue(L, &v, udata2finalize(g)); - tm = luaT_gettmbyobj(L, &v, TM_GC); - if (tm != NULL && ttisfunction(tm)) { /* is there a finalizer? */ - int status; - lu_byte oldah = L->allowhook; - int running = g->gcrunning; - L->allowhook = 0; /* stop debug hooks during GC metamethod */ - g->gcrunning = 0; /* avoid GC steps */ - setobj2s(L, L->top, tm); /* push finalizer... */ - setobj2s(L, L->top + 1, &v); /* ... and its argument */ - L->top += 2; /* and (next line) call the finalizer */ - status = luaD_pcall(L, dothecall, NULL, savestack(L, L->top - 2), 0); - L->allowhook = oldah; /* restore hooks */ - g->gcrunning = running; /* restore state */ - if (status != LUA_OK && propagateerrors) { /* error while running __gc? */ - if (status == LUA_ERRRUN) { /* is there an error object? */ - const char *msg = (ttisstring(L->top - 1)) - ? svalue(L->top - 1) - : "no message"; - luaO_pushfstring(L, "error in __gc metamethod (%s)", msg); - status = LUA_ERRGCMM; /* error in __gc metamethod */ - } - luaD_throw(L, status); /* re-throw error */ - } - } -} - - -/* -** move all unreachable objects (or 'all' objects) that need -** finalization from list 'finobj' to list 'tobefnz' (to be finalized) -*/ -static void separatetobefnz (lua_State *L, int all) { - global_State *g = G(L); - GCObject **p = &g->finobj; - GCObject *curr; - GCObject **lastnext = &g->tobefnz; - /* find last 'next' field in 'tobefnz' list (to add elements in its end) */ - while (*lastnext != NULL) - lastnext = &gch(*lastnext)->next; - while ((curr = *p) != NULL) { /* traverse all finalizable objects */ - lua_assert(!isfinalized(curr)); - lua_assert(testbit(gch(curr)->marked, SEPARATED)); - if (!(iswhite(curr) || all)) /* not being collected? */ - p = &gch(curr)->next; /* don't bother with it */ - else { - l_setbit(gch(curr)->marked, FINALIZEDBIT); /* won't be finalized again */ - *p = gch(curr)->next; /* remove 'curr' from 'finobj' list */ - gch(curr)->next = *lastnext; /* link at the end of 'tobefnz' list */ - *lastnext = curr; - lastnext = &gch(curr)->next; - } - } -} - - -/* -** if object 'o' has a finalizer, remove it from 'allgc' list (must -** search the list to find it) and link it in 'finobj' list. -*/ -void luaC_checkfinalizer (lua_State *L, GCObject *o, Table *mt) { - global_State *g = G(L); - if (testbit(gch(o)->marked, SEPARATED) || /* obj. is already separated... */ - isfinalized(o) || /* ... or is finalized... */ - gfasttm(g, mt, TM_GC) == NULL) /* or has no finalizer? */ - return; /* nothing to be done */ - else { /* move 'o' to 'finobj' list */ - GCObject **p; - GCheader *ho = gch(o); - if (g->sweepgc == &ho->next) { /* avoid removing current sweep object */ - lua_assert(issweepphase(g)); - g->sweepgc = sweeptolive(L, g->sweepgc, NULL); - } - /* search for pointer pointing to 'o' */ - for (p = &g->allgc; *p != o; p = &gch(*p)->next) { /* empty */ } - *p = ho->next; /* remove 'o' from root list */ - ho->next = g->finobj; /* link it in list 'finobj' */ - g->finobj = o; - l_setbit(ho->marked, SEPARATED); /* mark it as such */ - if (!keepinvariantout(g)) /* not keeping invariant? */ - makewhite(g, o); /* "sweep" object */ - else - resetoldbit(o); /* see MOVE OLD rule */ - } -} - -/* }====================================================== */ - - -/* -** {====================================================== -** GC control -** ======================================================= -*/ - - -/* -** set a reasonable "time" to wait before starting a new GC cycle; -** cycle will start when memory use hits threshold -*/ -static void setpause (global_State *g, l_mem estimate) { - l_mem debt, threshold; - estimate = estimate / PAUSEADJ; /* adjust 'estimate' */ - threshold = (g->gcpause < MAX_LMEM / estimate) /* overflow? */ - ? estimate * g->gcpause /* no overflow */ - : MAX_LMEM; /* overflow; truncate to maximum */ - debt = -cast(l_mem, threshold - gettotalbytes(g)); - luaE_setdebt(g, debt); -} - - -#define sweepphases \ - (bitmask(GCSsweepstring) | bitmask(GCSsweepudata) | bitmask(GCSsweep)) - - -/* -** enter first sweep phase (strings) and prepare pointers for other -** sweep phases. The calls to 'sweeptolive' make pointers point to an -** object inside the list (instead of to the header), so that the real -** sweep do not need to skip objects created between "now" and the start -** of the real sweep. -** Returns how many objects it swept. -*/ -static int entersweep (lua_State *L) { - global_State *g = G(L); - int n = 0; - g->gcstate = GCSsweepstring; - lua_assert(g->sweepgc == NULL && g->sweepfin == NULL); - /* prepare to sweep strings, finalizable objects, and regular objects */ - g->sweepstrgc = 0; - g->sweepfin = sweeptolive(L, &g->finobj, &n); - g->sweepgc = sweeptolive(L, &g->allgc, &n); - return n; -} - - -/* -** change GC mode -*/ -void luaC_changemode (lua_State *L, int mode) { - global_State *g = G(L); - if (mode == g->gckind) return; /* nothing to change */ - if (mode == KGC_GEN) { /* change to generational mode */ - /* make sure gray lists are consistent */ - luaC_runtilstate(L, bitmask(GCSpropagate)); - g->GCestimate = gettotalbytes(g); - g->gckind = KGC_GEN; - } - else { /* change to incremental mode */ - /* sweep all objects to turn them back to white - (as white has not changed, nothing extra will be collected) */ - g->gckind = KGC_NORMAL; - entersweep(L); - luaC_runtilstate(L, ~sweepphases); - } -} - - -/* -** call all pending finalizers -*/ -static void callallpendingfinalizers (lua_State *L, int propagateerrors) { - global_State *g = G(L); - while (g->tobefnz) { - resetoldbit(g->tobefnz); - GCTM(L, propagateerrors); - } -} - - -void luaC_freeallobjects (lua_State *L) { - global_State *g = G(L); - int i; - separatetobefnz(L, 1); /* separate all objects with finalizers */ - lua_assert(g->finobj == NULL); - callallpendingfinalizers(L, 0); - g->currentwhite = WHITEBITS; /* this "white" makes all objects look dead */ - g->gckind = KGC_NORMAL; - sweepwholelist(L, &g->finobj); /* finalizers can create objs. in 'finobj' */ - sweepwholelist(L, &g->allgc); - for (i = 0; i < g->strt.size; i++) /* free all string lists */ - sweepwholelist(L, &g->strt.hash[i]); - lua_assert(g->strt.nuse == 0); -} - - -static l_mem atomic (lua_State *L) { - global_State *g = G(L); - l_mem work = -cast(l_mem, g->GCmemtrav); /* start counting work */ - GCObject *origweak, *origall; - lua_assert(!iswhite(obj2gco(g->mainthread))); - markobject(g, L); /* mark running thread */ - /* registry and global metatables may be changed by API */ - markvalue(g, &g->l_registry); - markmt(g); /* mark basic metatables */ - /* remark occasional upvalues of (maybe) dead threads */ - remarkupvals(g); - propagateall(g); /* propagate changes */ - work += g->GCmemtrav; /* stop counting (do not (re)count grays) */ - /* traverse objects caught by write barrier and by 'remarkupvals' */ - retraversegrays(g); - work -= g->GCmemtrav; /* restart counting */ - convergeephemerons(g); - /* at this point, all strongly accessible objects are marked. */ - /* clear values from weak tables, before checking finalizers */ - clearvalues(g, g->weak, NULL); - clearvalues(g, g->allweak, NULL); - origweak = g->weak; origall = g->allweak; - work += g->GCmemtrav; /* stop counting (objects being finalized) */ - separatetobefnz(L, 0); /* separate objects to be finalized */ - markbeingfnz(g); /* mark objects that will be finalized */ - propagateall(g); /* remark, to propagate `preserveness' */ - work -= g->GCmemtrav; /* restart counting */ - convergeephemerons(g); - /* at this point, all resurrected objects are marked. */ - /* remove dead objects from weak tables */ - clearkeys(g, g->ephemeron, NULL); /* clear keys from all ephemeron tables */ - clearkeys(g, g->allweak, NULL); /* clear keys from all allweak tables */ - /* clear values from resurrected weak tables */ - clearvalues(g, g->weak, origweak); - clearvalues(g, g->allweak, origall); - g->currentwhite = cast_byte(otherwhite(g)); /* flip current white */ - work += g->GCmemtrav; /* complete counting */ - return work; /* estimate of memory marked by 'atomic' */ -} - - -static lu_mem singlestep (lua_State *L) { - global_State *g = G(L); - switch (g->gcstate) { - case GCSpause: { - /* start to count memory traversed */ - g->GCmemtrav = g->strt.size * sizeof(GCObject*); - lua_assert(!isgenerational(g)); - restartcollection(g); - g->gcstate = GCSpropagate; - return g->GCmemtrav; - } - case GCSpropagate: { - if (g->gray) { - lu_mem oldtrav = g->GCmemtrav; - propagatemark(g); - return g->GCmemtrav - oldtrav; /* memory traversed in this step */ - } - else { /* no more `gray' objects */ - lu_mem work; - int sw; - g->gcstate = GCSatomic; /* finish mark phase */ - g->GCestimate = g->GCmemtrav; /* save what was counted */; - work = atomic(L); /* add what was traversed by 'atomic' */ - g->GCestimate += work; /* estimate of total memory traversed */ - sw = entersweep(L); - return work + sw * GCSWEEPCOST; - } - } - case GCSsweepstring: { - int i; - for (i = 0; i < GCSWEEPMAX && g->sweepstrgc + i < g->strt.size; i++) - sweepwholelist(L, &g->strt.hash[g->sweepstrgc + i]); - g->sweepstrgc += i; - if (g->sweepstrgc >= g->strt.size) /* no more strings to sweep? */ - g->gcstate = GCSsweepudata; - return i * GCSWEEPCOST; - } - case GCSsweepudata: { - if (g->sweepfin) { - g->sweepfin = sweeplist(L, g->sweepfin, GCSWEEPMAX); - return GCSWEEPMAX*GCSWEEPCOST; - } - else { - g->gcstate = GCSsweep; - return 0; - } - } - case GCSsweep: { - if (g->sweepgc) { - g->sweepgc = sweeplist(L, g->sweepgc, GCSWEEPMAX); - return GCSWEEPMAX*GCSWEEPCOST; - } - else { - /* sweep main thread */ - GCObject *mt = obj2gco(g->mainthread); - sweeplist(L, &mt, 1); - checkSizes(L); - g->gcstate = GCSpause; /* finish collection */ - return GCSWEEPCOST; - } - } - default: lua_assert(0); return 0; - } -} - - -/* -** advances the garbage collector until it reaches a state allowed -** by 'statemask' -*/ -void luaC_runtilstate (lua_State *L, int statesmask) { - global_State *g = G(L); - while (!testbit(statesmask, g->gcstate)) - singlestep(L); -} - - -static void generationalcollection (lua_State *L) { - global_State *g = G(L); - lua_assert(g->gcstate == GCSpropagate); - if (g->GCestimate == 0) { /* signal for another major collection? */ - luaC_fullgc(L, 0); /* perform a full regular collection */ - g->GCestimate = gettotalbytes(g); /* update control */ - } - else { - lu_mem estimate = g->GCestimate; - luaC_runtilstate(L, bitmask(GCSpause)); /* run complete (minor) cycle */ - g->gcstate = GCSpropagate; /* skip restart */ - if (gettotalbytes(g) > (estimate / 100) * g->gcmajorinc) - g->GCestimate = 0; /* signal for a major collection */ - else - g->GCestimate = estimate; /* keep estimate from last major coll. */ - - } - setpause(g, gettotalbytes(g)); - lua_assert(g->gcstate == GCSpropagate); -} - - -static void incstep (lua_State *L) { - global_State *g = G(L); - l_mem debt = g->GCdebt; - int stepmul = g->gcstepmul; - if (stepmul < 40) stepmul = 40; /* avoid ridiculous low values (and 0) */ - /* convert debt from Kb to 'work units' (avoid zero debt and overflows) */ - debt = (debt / STEPMULADJ) + 1; - debt = (debt < MAX_LMEM / stepmul) ? debt * stepmul : MAX_LMEM; - do { /* always perform at least one single step */ - lu_mem work = singlestep(L); /* do some work */ - debt -= work; - } while (debt > -GCSTEPSIZE && g->gcstate != GCSpause); - if (g->gcstate == GCSpause) - setpause(g, g->GCestimate); /* pause until next cycle */ - else { - debt = (debt / stepmul) * STEPMULADJ; /* convert 'work units' to Kb */ - luaE_setdebt(g, debt); - } -} - - -/* -** performs a basic GC step -*/ -void luaC_forcestep (lua_State *L) { - global_State *g = G(L); - int i; - if (isgenerational(g)) generationalcollection(L); - else incstep(L); - /* run a few finalizers (or all of them at the end of a collect cycle) */ - for (i = 0; g->tobefnz && (i < GCFINALIZENUM || g->gcstate == GCSpause); i++) - GCTM(L, 1); /* call one finalizer */ -} - - -/* -** performs a basic GC step only if collector is running -*/ -void luaC_step (lua_State *L) { - global_State *g = G(L); - if (g->gcrunning) luaC_forcestep(L); - else luaE_setdebt(g, -GCSTEPSIZE); /* avoid being called too often */ -} - - - -/* -** performs a full GC cycle; if "isemergency", does not call -** finalizers (which could change stack positions) -*/ -void luaC_fullgc (lua_State *L, int isemergency) { - global_State *g = G(L); - int origkind = g->gckind; - lua_assert(origkind != KGC_EMERGENCY); - if (isemergency) /* do not run finalizers during emergency GC */ - g->gckind = KGC_EMERGENCY; - else { - g->gckind = KGC_NORMAL; - callallpendingfinalizers(L, 1); - } - if (keepinvariant(g)) { /* may there be some black objects? */ - /* must sweep all objects to turn them back to white - (as white has not changed, nothing will be collected) */ - entersweep(L); - } - /* finish any pending sweep phase to start a new cycle */ - luaC_runtilstate(L, bitmask(GCSpause)); - luaC_runtilstate(L, ~bitmask(GCSpause)); /* start new collection */ - luaC_runtilstate(L, bitmask(GCSpause)); /* run entire collection */ - if (origkind == KGC_GEN) { /* generational mode? */ - /* generational mode must be kept in propagate phase */ - luaC_runtilstate(L, bitmask(GCSpropagate)); - } - g->gckind = origkind; - setpause(g, gettotalbytes(g)); - if (!isemergency) /* do not run finalizers during emergency GC */ - callallpendingfinalizers(L, 1); -} - -/* }====================================================== */ - - diff --git a/source/libs/lua52/lua52-src/src/lgc.h b/source/libs/lua52/lua52-src/src/lgc.h deleted file mode 100644 index 84bb1cdf9..000000000 --- a/source/libs/lua52/lua52-src/src/lgc.h +++ /dev/null @@ -1,157 +0,0 @@ -/* -** $Id: lgc.h,v 2.58.1.1 2013/04/12 18:48:47 roberto Exp $ -** Garbage Collector -** See Copyright Notice in lua.h -*/ - -#ifndef lgc_h -#define lgc_h - - -#include "lobject.h" -#include "lstate.h" - -/* -** Collectable objects may have one of three colors: white, which -** means the object is not marked; gray, which means the -** object is marked, but its references may be not marked; and -** black, which means that the object and all its references are marked. -** The main invariant of the garbage collector, while marking objects, -** is that a black object can never point to a white one. Moreover, -** any gray object must be in a "gray list" (gray, grayagain, weak, -** allweak, ephemeron) so that it can be visited again before finishing -** the collection cycle. These lists have no meaning when the invariant -** is not being enforced (e.g., sweep phase). -*/ - - - -/* how much to allocate before next GC step */ -#if !defined(GCSTEPSIZE) -/* ~100 small strings */ -#define GCSTEPSIZE (cast_int(100 * sizeof(TString))) -#endif - - -/* -** Possible states of the Garbage Collector -*/ -#define GCSpropagate 0 -#define GCSatomic 1 -#define GCSsweepstring 2 -#define GCSsweepudata 3 -#define GCSsweep 4 -#define GCSpause 5 - - -#define issweepphase(g) \ - (GCSsweepstring <= (g)->gcstate && (g)->gcstate <= GCSsweep) - -#define isgenerational(g) ((g)->gckind == KGC_GEN) - -/* -** macros to tell when main invariant (white objects cannot point to black -** ones) must be kept. During a non-generational collection, the sweep -** phase may break the invariant, as objects turned white may point to -** still-black objects. The invariant is restored when sweep ends and -** all objects are white again. During a generational collection, the -** invariant must be kept all times. -*/ - -#define keepinvariant(g) (isgenerational(g) || g->gcstate <= GCSatomic) - - -/* -** Outside the collector, the state in generational mode is kept in -** 'propagate', so 'keepinvariant' is always true. -*/ -#define keepinvariantout(g) \ - check_exp(g->gcstate == GCSpropagate || !isgenerational(g), \ - g->gcstate <= GCSatomic) - - -/* -** some useful bit tricks -*/ -#define resetbits(x,m) ((x) &= cast(lu_byte, ~(m))) -#define setbits(x,m) ((x) |= (m)) -#define testbits(x,m) ((x) & (m)) -#define bitmask(b) (1<<(b)) -#define bit2mask(b1,b2) (bitmask(b1) | bitmask(b2)) -#define l_setbit(x,b) setbits(x, bitmask(b)) -#define resetbit(x,b) resetbits(x, bitmask(b)) -#define testbit(x,b) testbits(x, bitmask(b)) - - -/* Layout for bit use in `marked' field: */ -#define WHITE0BIT 0 /* object is white (type 0) */ -#define WHITE1BIT 1 /* object is white (type 1) */ -#define BLACKBIT 2 /* object is black */ -#define FINALIZEDBIT 3 /* object has been separated for finalization */ -#define SEPARATED 4 /* object is in 'finobj' list or in 'tobefnz' */ -#define FIXEDBIT 5 /* object is fixed (should not be collected) */ -#define OLDBIT 6 /* object is old (only in generational mode) */ -/* bit 7 is currently used by tests (luaL_checkmemory) */ - -#define WHITEBITS bit2mask(WHITE0BIT, WHITE1BIT) - - -#define iswhite(x) testbits((x)->gch.marked, WHITEBITS) -#define isblack(x) testbit((x)->gch.marked, BLACKBIT) -#define isgray(x) /* neither white nor black */ \ - (!testbits((x)->gch.marked, WHITEBITS | bitmask(BLACKBIT))) - -#define isold(x) testbit((x)->gch.marked, OLDBIT) - -/* MOVE OLD rule: whenever an object is moved to the beginning of - a GC list, its old bit must be cleared */ -#define resetoldbit(o) resetbit((o)->gch.marked, OLDBIT) - -#define otherwhite(g) (g->currentwhite ^ WHITEBITS) -#define isdeadm(ow,m) (!(((m) ^ WHITEBITS) & (ow))) -#define isdead(g,v) isdeadm(otherwhite(g), (v)->gch.marked) - -#define changewhite(x) ((x)->gch.marked ^= WHITEBITS) -#define gray2black(x) l_setbit((x)->gch.marked, BLACKBIT) - -#define valiswhite(x) (iscollectable(x) && iswhite(gcvalue(x))) - -#define luaC_white(g) cast(lu_byte, (g)->currentwhite & WHITEBITS) - - -#define luaC_condGC(L,c) \ - {if (G(L)->GCdebt > 0) {c;}; condchangemem(L);} -#define luaC_checkGC(L) luaC_condGC(L, luaC_step(L);) - - -#define luaC_barrier(L,p,v) { if (valiswhite(v) && isblack(obj2gco(p))) \ - luaC_barrier_(L,obj2gco(p),gcvalue(v)); } - -#define luaC_barrierback(L,p,v) { if (valiswhite(v) && isblack(obj2gco(p))) \ - luaC_barrierback_(L,p); } - -#define luaC_objbarrier(L,p,o) \ - { if (iswhite(obj2gco(o)) && isblack(obj2gco(p))) \ - luaC_barrier_(L,obj2gco(p),obj2gco(o)); } - -#define luaC_objbarrierback(L,p,o) \ - { if (iswhite(obj2gco(o)) && isblack(obj2gco(p))) luaC_barrierback_(L,p); } - -#define luaC_barrierproto(L,p,c) \ - { if (isblack(obj2gco(p))) luaC_barrierproto_(L,p,c); } - -LUAI_FUNC void luaC_freeallobjects (lua_State *L); -LUAI_FUNC void luaC_step (lua_State *L); -LUAI_FUNC void luaC_forcestep (lua_State *L); -LUAI_FUNC void luaC_runtilstate (lua_State *L, int statesmask); -LUAI_FUNC void luaC_fullgc (lua_State *L, int isemergency); -LUAI_FUNC GCObject *luaC_newobj (lua_State *L, int tt, size_t sz, - GCObject **list, int offset); -LUAI_FUNC void luaC_barrier_ (lua_State *L, GCObject *o, GCObject *v); -LUAI_FUNC void luaC_barrierback_ (lua_State *L, GCObject *o); -LUAI_FUNC void luaC_barrierproto_ (lua_State *L, Proto *p, Closure *c); -LUAI_FUNC void luaC_checkfinalizer (lua_State *L, GCObject *o, Table *mt); -LUAI_FUNC void luaC_checkupvalcolor (global_State *g, UpVal *uv); -LUAI_FUNC void luaC_changemode (lua_State *L, int mode); - -#endif diff --git a/source/libs/lua52/lua52-src/src/linit.c b/source/libs/lua52/lua52-src/src/linit.c deleted file mode 100644 index c1a383047..000000000 --- a/source/libs/lua52/lua52-src/src/linit.c +++ /dev/null @@ -1,67 +0,0 @@ -/* -** $Id: linit.c,v 1.32.1.1 2013/04/12 18:48:47 roberto Exp $ -** Initialization of libraries for lua.c and other clients -** See Copyright Notice in lua.h -*/ - - -/* -** If you embed Lua in your program and need to open the standard -** libraries, call luaL_openlibs in your program. If you need a -** different set of libraries, copy this file to your project and edit -** it to suit your needs. -*/ - - -#define linit_c -#define LUA_LIB - -#include "lua.h" - -#include "lualib.h" -#include "lauxlib.h" - - -/* -** these libs are loaded by lua.c and are readily available to any Lua -** program -*/ -static const luaL_Reg loadedlibs[] = { - {"_G", luaopen_base}, - {LUA_LOADLIBNAME, luaopen_package}, - {LUA_COLIBNAME, luaopen_coroutine}, - {LUA_TABLIBNAME, luaopen_table}, - {LUA_IOLIBNAME, luaopen_io}, - {LUA_OSLIBNAME, luaopen_os}, - {LUA_STRLIBNAME, luaopen_string}, - {LUA_BITLIBNAME, luaopen_bit32}, - {LUA_MATHLIBNAME, luaopen_math}, - {LUA_DBLIBNAME, luaopen_debug}, - {NULL, NULL} -}; - - -/* -** these libs are preloaded and must be required before used -*/ -static const luaL_Reg preloadedlibs[] = { - {NULL, NULL} -}; - - -LUALIB_API void luaL_openlibs (lua_State *L) { - const luaL_Reg *lib; - /* call open functions from 'loadedlibs' and set results to global table */ - for (lib = loadedlibs; lib->func; lib++) { - luaL_requiref(L, lib->name, lib->func, 1); - lua_pop(L, 1); /* remove lib */ - } - /* add open functions from 'preloadedlibs' into 'package.preload' table */ - luaL_getsubtable(L, LUA_REGISTRYINDEX, "_PRELOAD"); - for (lib = preloadedlibs; lib->func; lib++) { - lua_pushcfunction(L, lib->func); - lua_setfield(L, -2, lib->name); - } - lua_pop(L, 1); /* remove _PRELOAD table */ -} - diff --git a/source/libs/lua52/lua52-src/src/liolib.c b/source/libs/lua52/lua52-src/src/liolib.c deleted file mode 100644 index 481630101..000000000 --- a/source/libs/lua52/lua52-src/src/liolib.c +++ /dev/null @@ -1,669 +0,0 @@ -/* -** $Id: liolib.c,v 2.112.1.1 2013/04/12 18:48:47 roberto Exp $ -** Standard I/O (and system) library -** See Copyright Notice in lua.h -*/ - - -/* -** This definition must come before the inclusion of 'stdio.h'; it -** should not affect non-POSIX systems -*/ -#if !defined(_FILE_OFFSET_BITS) -#define _LARGEFILE_SOURCE 1 -#define _FILE_OFFSET_BITS 64 -#endif - - -#include <errno.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif - -#define liolib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -#if !defined(lua_checkmode) - -/* -** Check whether 'mode' matches '[rwa]%+?b?'. -** Change this macro to accept other modes for 'fopen' besides -** the standard ones. -*/ -#define lua_checkmode(mode) \ - (*mode != '\0' && strchr("rwa", *(mode++)) != NULL && \ - (*mode != '+' || ++mode) && /* skip if char is '+' */ \ - (*mode != 'b' || ++mode) && /* skip if char is 'b' */ \ - (*mode == '\0')) - -#endif - -/* -** {====================================================== -** lua_popen spawns a new process connected to the current -** one through the file streams. -** ======================================================= -*/ - -#if !defined(lua_popen) /* { */ - -#if defined(LUA_USE_POPEN) /* { */ - -#define lua_popen(L,c,m) ((void)L, fflush(NULL), popen(c,m)) -#define lua_pclose(L,file) ((void)L, pclose(file)) - -#elif defined(LUA_WIN) /* }{ */ - -#define lua_popen(L,c,m) ((void)L, _popen(c,m)) -#define lua_pclose(L,file) ((void)L, _pclose(file)) - - -#else /* }{ */ - -#define lua_popen(L,c,m) ((void)((void)c, m), \ - luaL_error(L, LUA_QL("popen") " not supported"), (FILE*)0) -#define lua_pclose(L,file) ((void)((void)L, file), -1) - - -#endif /* } */ - -#endif /* } */ - -/* }====================================================== */ - - -/* -** {====================================================== -** lua_fseek: configuration for longer offsets -** ======================================================= -*/ - -#if !defined(lua_fseek) && !defined(LUA_ANSI) /* { */ - -#if defined(LUA_USE_POSIX) /* { */ - -#define l_fseek(f,o,w) fseeko(f,o,w) -#define l_ftell(f) ftello(f) -#define l_seeknum off_t - -#elif defined(LUA_WIN) && !defined(_CRTIMP_TYPEINFO) \ - && defined(_MSC_VER) && (_MSC_VER >= 1400) /* }{ */ -/* Windows (but not DDK) and Visual C++ 2005 or higher */ - -#define l_fseek(f,o,w) _fseeki64(f,o,w) -#define l_ftell(f) _ftelli64(f) -#define l_seeknum __int64 - -#endif /* } */ - -#endif /* } */ - - -#if !defined(l_fseek) /* default definitions */ -#define l_fseek(f,o,w) fseek(f,o,w) -#define l_ftell(f) ftell(f) -#define l_seeknum long -#endif - -/* }====================================================== */ - - -#define IO_PREFIX "_IO_" -#define IO_INPUT (IO_PREFIX "input") -#define IO_OUTPUT (IO_PREFIX "output") - - -typedef luaL_Stream LStream; - - -#define tolstream(L) ((LStream *)luaL_checkudata(L, 1, LUA_FILEHANDLE)) - -#define isclosed(p) ((p)->closef == NULL) - - -static int io_type (lua_State *L) { - LStream *p; - luaL_checkany(L, 1); - p = (LStream *)luaL_testudata(L, 1, LUA_FILEHANDLE); - if (p == NULL) - lua_pushnil(L); /* not a file */ - else if (isclosed(p)) - lua_pushliteral(L, "closed file"); - else - lua_pushliteral(L, "file"); - return 1; -} - - -static int f_tostring (lua_State *L) { - LStream *p = tolstream(L); - if (isclosed(p)) - lua_pushliteral(L, "file (closed)"); - else - lua_pushfstring(L, "file (%p)", p->f); - return 1; -} - - -static FILE *tofile (lua_State *L) { - LStream *p = tolstream(L); - if (isclosed(p)) - luaL_error(L, "attempt to use a closed file"); - lua_assert(p->f); - return p->f; -} - - -/* -** When creating file handles, always creates a `closed' file handle -** before opening the actual file; so, if there is a memory error, the -** file is not left opened. -*/ -static LStream *newprefile (lua_State *L) { - LStream *p = (LStream *)lua_newuserdata(L, sizeof(LStream)); - p->closef = NULL; /* mark file handle as 'closed' */ - luaL_setmetatable(L, LUA_FILEHANDLE); - return p; -} - - -static int aux_close (lua_State *L) { - LStream *p = tolstream(L); - lua_CFunction cf = p->closef; - p->closef = NULL; /* mark stream as closed */ - return (*cf)(L); /* close it */ -} - - -static int io_close (lua_State *L) { - if (lua_isnone(L, 1)) /* no argument? */ - lua_getfield(L, LUA_REGISTRYINDEX, IO_OUTPUT); /* use standard output */ - tofile(L); /* make sure argument is an open stream */ - return aux_close(L); -} - - -static int f_gc (lua_State *L) { - LStream *p = tolstream(L); - if (!isclosed(p) && p->f != NULL) - aux_close(L); /* ignore closed and incompletely open files */ - return 0; -} - - -/* -** function to close regular files -*/ -static int io_fclose (lua_State *L) { - LStream *p = tolstream(L); - int res = fclose(p->f); - return luaL_fileresult(L, (res == 0), NULL); -} - - -static LStream *newfile (lua_State *L) { - LStream *p = newprefile(L); - p->f = NULL; - p->closef = &io_fclose; - return p; -} - - -static void opencheck (lua_State *L, const char *fname, const char *mode) { - LStream *p = newfile(L); - p->f = fopen(fname, mode); - if (p->f == NULL) - luaL_error(L, "cannot open file " LUA_QS " (%s)", fname, strerror(errno)); -} - - -static int io_open (lua_State *L) { - const char *filename = luaL_checkstring(L, 1); - const char *mode = luaL_optstring(L, 2, "r"); - LStream *p = newfile(L); - const char *md = mode; /* to traverse/check mode */ - luaL_argcheck(L, lua_checkmode(md), 2, "invalid mode"); - p->f = fopen(filename, mode); - return (p->f == NULL) ? luaL_fileresult(L, 0, filename) : 1; -} - - -/* -** function to close 'popen' files -*/ -static int io_pclose (lua_State *L) { - LStream *p = tolstream(L); - return luaL_execresult(L, lua_pclose(L, p->f)); -} - - -static int io_popen (lua_State *L) { - const char *filename = luaL_checkstring(L, 1); - const char *mode = luaL_optstring(L, 2, "r"); - LStream *p = newprefile(L); - p->f = lua_popen(L, filename, mode); - p->closef = &io_pclose; - return (p->f == NULL) ? luaL_fileresult(L, 0, filename) : 1; -} - - -static int io_tmpfile (lua_State *L) { - LStream *p = newfile(L); - p->f = tmpfile(); - return (p->f == NULL) ? luaL_fileresult(L, 0, NULL) : 1; -} - - -static FILE *getiofile (lua_State *L, const char *findex) { - LStream *p; - lua_getfield(L, LUA_REGISTRYINDEX, findex); - p = (LStream *)lua_touserdata(L, -1); - if (isclosed(p)) - luaL_error(L, "standard %s file is closed", findex + strlen(IO_PREFIX)); - return p->f; -} - - -static int g_iofile (lua_State *L, const char *f, const char *mode) { - if (!lua_isnoneornil(L, 1)) { - const char *filename = lua_tostring(L, 1); - if (filename) - opencheck(L, filename, mode); - else { - tofile(L); /* check that it's a valid file handle */ - lua_pushvalue(L, 1); - } - lua_setfield(L, LUA_REGISTRYINDEX, f); - } - /* return current value */ - lua_getfield(L, LUA_REGISTRYINDEX, f); - return 1; -} - - -static int io_input (lua_State *L) { - return g_iofile(L, IO_INPUT, "r"); -} - - -static int io_output (lua_State *L) { - return g_iofile(L, IO_OUTPUT, "w"); -} - - -static int io_readline (lua_State *L); - - -static void aux_lines (lua_State *L, int toclose) { - int i; - int n = lua_gettop(L) - 1; /* number of arguments to read */ - /* ensure that arguments will fit here and into 'io_readline' stack */ - luaL_argcheck(L, n <= LUA_MINSTACK - 3, LUA_MINSTACK - 3, "too many options"); - lua_pushvalue(L, 1); /* file handle */ - lua_pushinteger(L, n); /* number of arguments to read */ - lua_pushboolean(L, toclose); /* close/not close file when finished */ - for (i = 1; i <= n; i++) lua_pushvalue(L, i + 1); /* copy arguments */ - lua_pushcclosure(L, io_readline, 3 + n); -} - - -static int f_lines (lua_State *L) { - tofile(L); /* check that it's a valid file handle */ - aux_lines(L, 0); - return 1; -} - - -static int io_lines (lua_State *L) { - int toclose; - if (lua_isnone(L, 1)) lua_pushnil(L); /* at least one argument */ - if (lua_isnil(L, 1)) { /* no file name? */ - lua_getfield(L, LUA_REGISTRYINDEX, IO_INPUT); /* get default input */ - lua_replace(L, 1); /* put it at index 1 */ - tofile(L); /* check that it's a valid file handle */ - toclose = 0; /* do not close it after iteration */ - } - else { /* open a new file */ - const char *filename = luaL_checkstring(L, 1); - opencheck(L, filename, "r"); - lua_replace(L, 1); /* put file at index 1 */ - toclose = 1; /* close it after iteration */ - } - aux_lines(L, toclose); - return 1; -} - - -/* -** {====================================================== -** READ -** ======================================================= -*/ - - -static int read_number (lua_State *L, FILE *f) { - lua_Number d; - if (fscanf(f, LUA_NUMBER_SCAN, &d) == 1) { - lua_pushnumber(L, d); - return 1; - } - else { - lua_pushnil(L); /* "result" to be removed */ - return 0; /* read fails */ - } -} - - -static int test_eof (lua_State *L, FILE *f) { - int c = getc(f); - ungetc(c, f); - lua_pushlstring(L, NULL, 0); - return (c != EOF); -} - - -static int read_line (lua_State *L, FILE *f, int chop) { - luaL_Buffer b; - luaL_buffinit(L, &b); - for (;;) { - size_t l; - char *p = luaL_prepbuffer(&b); - if (fgets(p, LUAL_BUFFERSIZE, f) == NULL) { /* eof? */ - luaL_pushresult(&b); /* close buffer */ - return (lua_rawlen(L, -1) > 0); /* check whether read something */ - } - l = strlen(p); - if (l == 0 || p[l-1] != '\n') - luaL_addsize(&b, l); - else { - luaL_addsize(&b, l - chop); /* chop 'eol' if needed */ - luaL_pushresult(&b); /* close buffer */ - return 1; /* read at least an `eol' */ - } - } -} - - -#define MAX_SIZE_T (~(size_t)0) - -static void read_all (lua_State *L, FILE *f) { - size_t rlen = LUAL_BUFFERSIZE; /* how much to read in each cycle */ - luaL_Buffer b; - luaL_buffinit(L, &b); - for (;;) { - char *p = luaL_prepbuffsize(&b, rlen); - size_t nr = fread(p, sizeof(char), rlen, f); - luaL_addsize(&b, nr); - if (nr < rlen) break; /* eof? */ - else if (rlen <= (MAX_SIZE_T / 4)) /* avoid buffers too large */ - rlen *= 2; /* double buffer size at each iteration */ - } - luaL_pushresult(&b); /* close buffer */ -} - - -static int read_chars (lua_State *L, FILE *f, size_t n) { - size_t nr; /* number of chars actually read */ - char *p; - luaL_Buffer b; - luaL_buffinit(L, &b); - p = luaL_prepbuffsize(&b, n); /* prepare buffer to read whole block */ - nr = fread(p, sizeof(char), n, f); /* try to read 'n' chars */ - luaL_addsize(&b, nr); - luaL_pushresult(&b); /* close buffer */ - return (nr > 0); /* true iff read something */ -} - - -static int g_read (lua_State *L, FILE *f, int first) { - int nargs = lua_gettop(L) - 1; - int success; - int n; - clearerr(f); - if (nargs == 0) { /* no arguments? */ - success = read_line(L, f, 1); - n = first+1; /* to return 1 result */ - } - else { /* ensure stack space for all results and for auxlib's buffer */ - luaL_checkstack(L, nargs+LUA_MINSTACK, "too many arguments"); - success = 1; - for (n = first; nargs-- && success; n++) { - if (lua_type(L, n) == LUA_TNUMBER) { - size_t l = (size_t)lua_tointeger(L, n); - success = (l == 0) ? test_eof(L, f) : read_chars(L, f, l); - } - else { - const char *p = lua_tostring(L, n); - luaL_argcheck(L, p && p[0] == '*', n, "invalid option"); - switch (p[1]) { - case 'n': /* number */ - success = read_number(L, f); - break; - case 'l': /* line */ - success = read_line(L, f, 1); - break; - case 'L': /* line with end-of-line */ - success = read_line(L, f, 0); - break; - case 'a': /* file */ - read_all(L, f); /* read entire file */ - success = 1; /* always success */ - break; - default: - return luaL_argerror(L, n, "invalid format"); - } - } - } - } - if (ferror(f)) - return luaL_fileresult(L, 0, NULL); - if (!success) { - lua_pop(L, 1); /* remove last result */ - lua_pushnil(L); /* push nil instead */ - } - return n - first; -} - - -static int io_read (lua_State *L) { - return g_read(L, getiofile(L, IO_INPUT), 1); -} - - -static int f_read (lua_State *L) { - return g_read(L, tofile(L), 2); -} - - -static int io_readline (lua_State *L) { - LStream *p = (LStream *)lua_touserdata(L, lua_upvalueindex(1)); - int i; - int n = (int)lua_tointeger(L, lua_upvalueindex(2)); - if (isclosed(p)) /* file is already closed? */ - return luaL_error(L, "file is already closed"); - lua_settop(L , 1); - for (i = 1; i <= n; i++) /* push arguments to 'g_read' */ - lua_pushvalue(L, lua_upvalueindex(3 + i)); - n = g_read(L, p->f, 2); /* 'n' is number of results */ - lua_assert(n > 0); /* should return at least a nil */ - if (!lua_isnil(L, -n)) /* read at least one value? */ - return n; /* return them */ - else { /* first result is nil: EOF or error */ - if (n > 1) { /* is there error information? */ - /* 2nd result is error message */ - return luaL_error(L, "%s", lua_tostring(L, -n + 1)); - } - if (lua_toboolean(L, lua_upvalueindex(3))) { /* generator created file? */ - lua_settop(L, 0); - lua_pushvalue(L, lua_upvalueindex(1)); - aux_close(L); /* close it */ - } - return 0; - } -} - -/* }====================================================== */ - - -static int g_write (lua_State *L, FILE *f, int arg) { - int nargs = lua_gettop(L) - arg; - int status = 1; - for (; nargs--; arg++) { - if (lua_type(L, arg) == LUA_TNUMBER) { - /* optimization: could be done exactly as for strings */ - status = status && - fprintf(f, LUA_NUMBER_FMT, lua_tonumber(L, arg)) > 0; - } - else { - size_t l; - const char *s = luaL_checklstring(L, arg, &l); - status = status && (fwrite(s, sizeof(char), l, f) == l); - } - } - if (status) return 1; /* file handle already on stack top */ - else return luaL_fileresult(L, status, NULL); -} - - -static int io_write (lua_State *L) { - return g_write(L, getiofile(L, IO_OUTPUT), 1); -} - - -static int f_write (lua_State *L) { - FILE *f = tofile(L); - lua_pushvalue(L, 1); /* push file at the stack top (to be returned) */ - return g_write(L, f, 2); -} - - -static int f_seek (lua_State *L) { - static const int mode[] = {SEEK_SET, SEEK_CUR, SEEK_END}; - static const char *const modenames[] = {"set", "cur", "end", NULL}; - FILE *f = tofile(L); - int op = luaL_checkoption(L, 2, "cur", modenames); - lua_Number p3 = luaL_optnumber(L, 3, 0); - l_seeknum offset = (l_seeknum)p3; - luaL_argcheck(L, (lua_Number)offset == p3, 3, - "not an integer in proper range"); - op = l_fseek(f, offset, mode[op]); - if (op) - return luaL_fileresult(L, 0, NULL); /* error */ - else { - lua_pushnumber(L, (lua_Number)l_ftell(f)); - return 1; - } -} - - -static int f_setvbuf (lua_State *L) { - static const int mode[] = {_IONBF, _IOFBF, _IOLBF}; - static const char *const modenames[] = {"no", "full", "line", NULL}; - FILE *f = tofile(L); - int op = luaL_checkoption(L, 2, NULL, modenames); - lua_Integer sz = luaL_optinteger(L, 3, LUAL_BUFFERSIZE); - int res = setvbuf(f, NULL, mode[op], sz); - return luaL_fileresult(L, res == 0, NULL); -} - - - -static int io_flush (lua_State *L) { - return luaL_fileresult(L, fflush(getiofile(L, IO_OUTPUT)) == 0, NULL); -} - - -static int f_flush (lua_State *L) { - return luaL_fileresult(L, fflush(tofile(L)) == 0, NULL); -} - - -/* -** functions for 'io' library -*/ -static const luaL_Reg iolib[] = { - {"close", io_close}, - {"flush", io_flush}, - {"input", io_input}, - {"lines", io_lines}, - {"open", io_open}, - {"output", io_output}, - {"popen", io_popen}, - {"read", io_read}, - {"tmpfile", io_tmpfile}, - {"type", io_type}, - {"write", io_write}, - {NULL, NULL} -}; - - -/* -** methods for file handles -*/ -static const luaL_Reg flib[] = { - {"close", io_close}, - {"flush", f_flush}, - {"lines", f_lines}, - {"read", f_read}, - {"seek", f_seek}, - {"setvbuf", f_setvbuf}, - {"write", f_write}, - {"__gc", f_gc}, - {"__tostring", f_tostring}, - {NULL, NULL} -}; - - -static void createmeta (lua_State *L) { - luaL_newmetatable(L, LUA_FILEHANDLE); /* create metatable for file handles */ - lua_pushvalue(L, -1); /* push metatable */ - lua_setfield(L, -2, "__index"); /* metatable.__index = metatable */ - luaL_setfuncs(L, flib, 0); /* add file methods to new metatable */ - lua_pop(L, 1); /* pop new metatable */ -} - - -/* -** function to (not) close the standard files stdin, stdout, and stderr -*/ -static int io_noclose (lua_State *L) { - LStream *p = tolstream(L); - p->closef = &io_noclose; /* keep file opened */ - lua_pushnil(L); - lua_pushliteral(L, "cannot close standard file"); - return 2; -} - - -static void createstdfile (lua_State *L, FILE *f, const char *k, - const char *fname) { - LStream *p = newprefile(L); - p->f = f; - p->closef = &io_noclose; - if (k != NULL) { - lua_pushvalue(L, -1); - lua_setfield(L, LUA_REGISTRYINDEX, k); /* add file to registry */ - } - lua_setfield(L, -2, fname); /* add file to module */ -} - - -LUAMOD_API int luaopen_io (lua_State *L) { - luaL_newlib(L, iolib); /* new module */ - createmeta(L); - /* create (and set) default files */ - createstdfile(L, stdin, IO_INPUT, "stdin"); - createstdfile(L, stdout, IO_OUTPUT, "stdout"); - createstdfile(L, stderr, NULL, "stderr"); - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/llex.c b/source/libs/lua52/lua52-src/src/llex.c deleted file mode 100644 index 32cdcf1cf..000000000 --- a/source/libs/lua52/lua52-src/src/llex.c +++ /dev/null @@ -1,530 +0,0 @@ -/* -** $Id: llex.c,v 2.63.1.3 2015/02/09 17:56:34 roberto Exp $ -** Lexical Analyzer -** See Copyright Notice in lua.h -*/ - - -#include <locale.h> -#include <string.h> - -#define llex_c -#define LUA_CORE - -#include "lua.h" - -#include "lctype.h" -#include "ldo.h" -#include "llex.h" -#include "lobject.h" -#include "lparser.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "lzio.h" - - - -#define next(ls) (ls->current = zgetc(ls->z)) - - - -#define currIsNewline(ls) (ls->current == '\n' || ls->current == '\r') - - -/* ORDER RESERVED */ -static const char *const luaX_tokens [] = { - "and", "break", "do", "else", "elseif", - "end", "false", "for", "function", "goto", "if", - "in", "local", "nil", "not", "or", "repeat", - "return", "then", "true", "until", "while", - "..", "...", "==", ">=", "<=", "~=", "::", "<eof>", - "<number>", "<name>", "<string>" -}; - - -#define save_and_next(ls) (save(ls, ls->current), next(ls)) - - -static l_noret lexerror (LexState *ls, const char *msg, int token); - - -static void save (LexState *ls, int c) { - Mbuffer *b = ls->buff; - if (luaZ_bufflen(b) + 1 > luaZ_sizebuffer(b)) { - size_t newsize; - if (luaZ_sizebuffer(b) >= MAX_SIZET/2) - lexerror(ls, "lexical element too long", 0); - newsize = luaZ_sizebuffer(b) * 2; - luaZ_resizebuffer(ls->L, b, newsize); - } - b->buffer[luaZ_bufflen(b)++] = cast(char, c); -} - - -void luaX_init (lua_State *L) { - int i; - for (i=0; i<NUM_RESERVED; i++) { - TString *ts = luaS_new(L, luaX_tokens[i]); - luaS_fix(ts); /* reserved words are never collected */ - ts->tsv.extra = cast_byte(i+1); /* reserved word */ - } -} - - -const char *luaX_token2str (LexState *ls, int token) { - if (token < FIRST_RESERVED) { /* single-byte symbols? */ - lua_assert(token == cast(unsigned char, token)); - return (lisprint(token)) ? luaO_pushfstring(ls->L, LUA_QL("%c"), token) : - luaO_pushfstring(ls->L, "char(%d)", token); - } - else { - const char *s = luaX_tokens[token - FIRST_RESERVED]; - if (token < TK_EOS) /* fixed format (symbols and reserved words)? */ - return luaO_pushfstring(ls->L, LUA_QS, s); - else /* names, strings, and numerals */ - return s; - } -} - - -static const char *txtToken (LexState *ls, int token) { - switch (token) { - case TK_NAME: - case TK_STRING: - case TK_NUMBER: - save(ls, '\0'); - return luaO_pushfstring(ls->L, LUA_QS, luaZ_buffer(ls->buff)); - default: - return luaX_token2str(ls, token); - } -} - - -static l_noret lexerror (LexState *ls, const char *msg, int token) { - char buff[LUA_IDSIZE]; - luaO_chunkid(buff, getstr(ls->source), LUA_IDSIZE); - msg = luaO_pushfstring(ls->L, "%s:%d: %s", buff, ls->linenumber, msg); - if (token) - luaO_pushfstring(ls->L, "%s near %s", msg, txtToken(ls, token)); - luaD_throw(ls->L, LUA_ERRSYNTAX); -} - - -l_noret luaX_syntaxerror (LexState *ls, const char *msg) { - lexerror(ls, msg, ls->t.token); -} - - -/* -** creates a new string and anchors it in function's table so that -** it will not be collected until the end of the function's compilation -** (by that time it should be anchored in function's prototype) -*/ -TString *luaX_newstring (LexState *ls, const char *str, size_t l) { - lua_State *L = ls->L; - TValue *o; /* entry for `str' */ - TString *ts = luaS_newlstr(L, str, l); /* create new string */ - setsvalue2s(L, L->top++, ts); /* temporarily anchor it in stack */ - o = luaH_set(L, ls->fs->h, L->top - 1); - if (ttisnil(o)) { /* not in use yet? (see 'addK') */ - /* boolean value does not need GC barrier; - table has no metatable, so it does not need to invalidate cache */ - setbvalue(o, 1); /* t[string] = true */ - luaC_checkGC(L); - } - else { /* string already present */ - ts = rawtsvalue(keyfromval(o)); /* re-use value previously stored */ - } - L->top--; /* remove string from stack */ - return ts; -} - - -/* -** increment line number and skips newline sequence (any of -** \n, \r, \n\r, or \r\n) -*/ -static void inclinenumber (LexState *ls) { - int old = ls->current; - lua_assert(currIsNewline(ls)); - next(ls); /* skip `\n' or `\r' */ - if (currIsNewline(ls) && ls->current != old) - next(ls); /* skip `\n\r' or `\r\n' */ - if (++ls->linenumber >= MAX_INT) - lexerror(ls, "chunk has too many lines", 0); -} - - -void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, TString *source, - int firstchar) { - ls->decpoint = '.'; - ls->L = L; - ls->current = firstchar; - ls->lookahead.token = TK_EOS; /* no look-ahead token */ - ls->z = z; - ls->fs = NULL; - ls->linenumber = 1; - ls->lastline = 1; - ls->source = source; - ls->envn = luaS_new(L, LUA_ENV); /* create env name */ - luaS_fix(ls->envn); /* never collect this name */ - luaZ_resizebuffer(ls->L, ls->buff, LUA_MINBUFFER); /* initialize buffer */ -} - - - -/* -** ======================================================= -** LEXICAL ANALYZER -** ======================================================= -*/ - - - -static int check_next (LexState *ls, const char *set) { - if (ls->current == '\0' || !strchr(set, ls->current)) - return 0; - save_and_next(ls); - return 1; -} - - -/* -** change all characters 'from' in buffer to 'to' -*/ -static void buffreplace (LexState *ls, char from, char to) { - size_t n = luaZ_bufflen(ls->buff); - char *p = luaZ_buffer(ls->buff); - while (n--) - if (p[n] == from) p[n] = to; -} - - -#if !defined(getlocaledecpoint) -#define getlocaledecpoint() (localeconv()->decimal_point[0]) -#endif - - -#define buff2d(b,e) luaO_str2d(luaZ_buffer(b), luaZ_bufflen(b) - 1, e) - -/* -** in case of format error, try to change decimal point separator to -** the one defined in the current locale and check again -*/ -static void trydecpoint (LexState *ls, SemInfo *seminfo) { - char old = ls->decpoint; - ls->decpoint = getlocaledecpoint(); - buffreplace(ls, old, ls->decpoint); /* try new decimal separator */ - if (!buff2d(ls->buff, &seminfo->r)) { - /* format error with correct decimal point: no more options */ - buffreplace(ls, ls->decpoint, '.'); /* undo change (for error message) */ - lexerror(ls, "malformed number", TK_NUMBER); - } -} - - -/* LUA_NUMBER */ -/* -** this function is quite liberal in what it accepts, as 'luaO_str2d' -** will reject ill-formed numerals. -*/ -static void read_numeral (LexState *ls, SemInfo *seminfo) { - const char *expo = "Ee"; - int first = ls->current; - lua_assert(lisdigit(ls->current)); - save_and_next(ls); - if (first == '0' && check_next(ls, "Xx")) /* hexadecimal? */ - expo = "Pp"; - for (;;) { - if (check_next(ls, expo)) /* exponent part? */ - check_next(ls, "+-"); /* optional exponent sign */ - if (lisxdigit(ls->current) || ls->current == '.') - save_and_next(ls); - else break; - } - save(ls, '\0'); - buffreplace(ls, '.', ls->decpoint); /* follow locale for decimal point */ - if (!buff2d(ls->buff, &seminfo->r)) /* format error? */ - trydecpoint(ls, seminfo); /* try to update decimal point separator */ -} - - -/* -** skip a sequence '[=*[' or ']=*]' and return its number of '='s or -** -1 if sequence is malformed -*/ -static int skip_sep (LexState *ls) { - int count = 0; - int s = ls->current; - lua_assert(s == '[' || s == ']'); - save_and_next(ls); - while (ls->current == '=') { - save_and_next(ls); - count++; - } - return (ls->current == s) ? count : (-count) - 1; -} - - -static void read_long_string (LexState *ls, SemInfo *seminfo, int sep) { - save_and_next(ls); /* skip 2nd `[' */ - if (currIsNewline(ls)) /* string starts with a newline? */ - inclinenumber(ls); /* skip it */ - for (;;) { - switch (ls->current) { - case EOZ: - lexerror(ls, (seminfo) ? "unfinished long string" : - "unfinished long comment", TK_EOS); - break; /* to avoid warnings */ - case ']': { - if (skip_sep(ls) == sep) { - save_and_next(ls); /* skip 2nd `]' */ - goto endloop; - } - break; - } - case '\n': case '\r': { - save(ls, '\n'); - inclinenumber(ls); - if (!seminfo) luaZ_resetbuffer(ls->buff); /* avoid wasting space */ - break; - } - default: { - if (seminfo) save_and_next(ls); - else next(ls); - } - } - } endloop: - if (seminfo) - seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + (2 + sep), - luaZ_bufflen(ls->buff) - 2*(2 + sep)); -} - - -static void escerror (LexState *ls, int *c, int n, const char *msg) { - int i; - luaZ_resetbuffer(ls->buff); /* prepare error message */ - save(ls, '\\'); - for (i = 0; i < n && c[i] != EOZ; i++) - save(ls, c[i]); - lexerror(ls, msg, TK_STRING); -} - - -static int readhexaesc (LexState *ls) { - int c[3], i; /* keep input for error message */ - int r = 0; /* result accumulator */ - c[0] = 'x'; /* for error message */ - for (i = 1; i < 3; i++) { /* read two hexadecimal digits */ - c[i] = next(ls); - if (!lisxdigit(c[i])) - escerror(ls, c, i + 1, "hexadecimal digit expected"); - r = (r << 4) + luaO_hexavalue(c[i]); - } - return r; -} - - -static int readdecesc (LexState *ls) { - int c[3], i; - int r = 0; /* result accumulator */ - for (i = 0; i < 3 && lisdigit(ls->current); i++) { /* read up to 3 digits */ - c[i] = ls->current; - r = 10*r + c[i] - '0'; - next(ls); - } - if (r > UCHAR_MAX) - escerror(ls, c, i, "decimal escape too large"); - return r; -} - - -static void read_string (LexState *ls, int del, SemInfo *seminfo) { - save_and_next(ls); /* keep delimiter (for error messages) */ - while (ls->current != del) { - switch (ls->current) { - case EOZ: - lexerror(ls, "unfinished string", TK_EOS); - break; /* to avoid warnings */ - case '\n': - case '\r': - lexerror(ls, "unfinished string", TK_STRING); - break; /* to avoid warnings */ - case '\\': { /* escape sequences */ - int c; /* final character to be saved */ - next(ls); /* do not save the `\' */ - switch (ls->current) { - case 'a': c = '\a'; goto read_save; - case 'b': c = '\b'; goto read_save; - case 'f': c = '\f'; goto read_save; - case 'n': c = '\n'; goto read_save; - case 'r': c = '\r'; goto read_save; - case 't': c = '\t'; goto read_save; - case 'v': c = '\v'; goto read_save; - case 'x': c = readhexaesc(ls); goto read_save; - case '\n': case '\r': - inclinenumber(ls); c = '\n'; goto only_save; - case '\\': case '\"': case '\'': - c = ls->current; goto read_save; - case EOZ: goto no_save; /* will raise an error next loop */ - case 'z': { /* zap following span of spaces */ - next(ls); /* skip the 'z' */ - while (lisspace(ls->current)) { - if (currIsNewline(ls)) inclinenumber(ls); - else next(ls); - } - goto no_save; - } - default: { - if (!lisdigit(ls->current)) - escerror(ls, &ls->current, 1, "invalid escape sequence"); - /* digital escape \ddd */ - c = readdecesc(ls); - goto only_save; - } - } - read_save: next(ls); /* read next character */ - only_save: save(ls, c); /* save 'c' */ - no_save: break; - } - default: - save_and_next(ls); - } - } - save_and_next(ls); /* skip delimiter */ - seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + 1, - luaZ_bufflen(ls->buff) - 2); -} - - -static int llex (LexState *ls, SemInfo *seminfo) { - luaZ_resetbuffer(ls->buff); - for (;;) { - switch (ls->current) { - case '\n': case '\r': { /* line breaks */ - inclinenumber(ls); - break; - } - case ' ': case '\f': case '\t': case '\v': { /* spaces */ - next(ls); - break; - } - case '-': { /* '-' or '--' (comment) */ - next(ls); - if (ls->current != '-') return '-'; - /* else is a comment */ - next(ls); - if (ls->current == '[') { /* long comment? */ - int sep = skip_sep(ls); - luaZ_resetbuffer(ls->buff); /* `skip_sep' may dirty the buffer */ - if (sep >= 0) { - read_long_string(ls, NULL, sep); /* skip long comment */ - luaZ_resetbuffer(ls->buff); /* previous call may dirty the buff. */ - break; - } - } - /* else short comment */ - while (!currIsNewline(ls) && ls->current != EOZ) - next(ls); /* skip until end of line (or end of file) */ - break; - } - case '[': { /* long string or simply '[' */ - int sep = skip_sep(ls); - if (sep >= 0) { - read_long_string(ls, seminfo, sep); - return TK_STRING; - } - else if (sep == -1) return '['; - else lexerror(ls, "invalid long string delimiter", TK_STRING); - } - case '=': { - next(ls); - if (ls->current != '=') return '='; - else { next(ls); return TK_EQ; } - } - case '<': { - next(ls); - if (ls->current != '=') return '<'; - else { next(ls); return TK_LE; } - } - case '>': { - next(ls); - if (ls->current != '=') return '>'; - else { next(ls); return TK_GE; } - } - case '~': { - next(ls); - if (ls->current != '=') return '~'; - else { next(ls); return TK_NE; } - } - case ':': { - next(ls); - if (ls->current != ':') return ':'; - else { next(ls); return TK_DBCOLON; } - } - case '"': case '\'': { /* short literal strings */ - read_string(ls, ls->current, seminfo); - return TK_STRING; - } - case '.': { /* '.', '..', '...', or number */ - save_and_next(ls); - if (check_next(ls, ".")) { - if (check_next(ls, ".")) - return TK_DOTS; /* '...' */ - else return TK_CONCAT; /* '..' */ - } - else if (!lisdigit(ls->current)) return '.'; - /* else go through */ - } - case '0': case '1': case '2': case '3': case '4': - case '5': case '6': case '7': case '8': case '9': { - read_numeral(ls, seminfo); - return TK_NUMBER; - } - case EOZ: { - return TK_EOS; - } - default: { - if (lislalpha(ls->current)) { /* identifier or reserved word? */ - TString *ts; - do { - save_and_next(ls); - } while (lislalnum(ls->current)); - ts = luaX_newstring(ls, luaZ_buffer(ls->buff), - luaZ_bufflen(ls->buff)); - seminfo->ts = ts; - if (isreserved(ts)) /* reserved word? */ - return ts->tsv.extra - 1 + FIRST_RESERVED; - else { - return TK_NAME; - } - } - else { /* single-char tokens (+ - / ...) */ - int c = ls->current; - next(ls); - return c; - } - } - } - } -} - - -void luaX_next (LexState *ls) { - ls->lastline = ls->linenumber; - if (ls->lookahead.token != TK_EOS) { /* is there a look-ahead token? */ - ls->t = ls->lookahead; /* use this one */ - ls->lookahead.token = TK_EOS; /* and discharge it */ - } - else - ls->t.token = llex(ls, &ls->t.seminfo); /* read next token */ -} - - -int luaX_lookahead (LexState *ls) { - lua_assert(ls->lookahead.token == TK_EOS); - ls->lookahead.token = llex(ls, &ls->lookahead.seminfo); - return ls->lookahead.token; -} - diff --git a/source/libs/lua52/lua52-src/src/llex.h b/source/libs/lua52/lua52-src/src/llex.h deleted file mode 100644 index a4acdd302..000000000 --- a/source/libs/lua52/lua52-src/src/llex.h +++ /dev/null @@ -1,78 +0,0 @@ -/* -** $Id: llex.h,v 1.72.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lexical Analyzer -** See Copyright Notice in lua.h -*/ - -#ifndef llex_h -#define llex_h - -#include "lobject.h" -#include "lzio.h" - - -#define FIRST_RESERVED 257 - - - -/* -* WARNING: if you change the order of this enumeration, -* grep "ORDER RESERVED" -*/ -enum RESERVED { - /* terminal symbols denoted by reserved words */ - TK_AND = FIRST_RESERVED, TK_BREAK, - TK_DO, TK_ELSE, TK_ELSEIF, TK_END, TK_FALSE, TK_FOR, TK_FUNCTION, - TK_GOTO, TK_IF, TK_IN, TK_LOCAL, TK_NIL, TK_NOT, TK_OR, TK_REPEAT, - TK_RETURN, TK_THEN, TK_TRUE, TK_UNTIL, TK_WHILE, - /* other terminal symbols */ - TK_CONCAT, TK_DOTS, TK_EQ, TK_GE, TK_LE, TK_NE, TK_DBCOLON, TK_EOS, - TK_NUMBER, TK_NAME, TK_STRING -}; - -/* number of reserved words */ -#define NUM_RESERVED (cast(int, TK_WHILE-FIRST_RESERVED+1)) - - -typedef union { - lua_Number r; - TString *ts; -} SemInfo; /* semantics information */ - - -typedef struct Token { - int token; - SemInfo seminfo; -} Token; - - -/* state of the lexer plus state of the parser when shared by all - functions */ -typedef struct LexState { - int current; /* current character (charint) */ - int linenumber; /* input line counter */ - int lastline; /* line of last token `consumed' */ - Token t; /* current token */ - Token lookahead; /* look ahead token */ - struct FuncState *fs; /* current function (parser) */ - struct lua_State *L; - ZIO *z; /* input stream */ - Mbuffer *buff; /* buffer for tokens */ - struct Dyndata *dyd; /* dynamic structures used by the parser */ - TString *source; /* current source name */ - TString *envn; /* environment variable name */ - char decpoint; /* locale decimal point */ -} LexState; - - -LUAI_FUNC void luaX_init (lua_State *L); -LUAI_FUNC void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, - TString *source, int firstchar); -LUAI_FUNC TString *luaX_newstring (LexState *ls, const char *str, size_t l); -LUAI_FUNC void luaX_next (LexState *ls); -LUAI_FUNC int luaX_lookahead (LexState *ls); -LUAI_FUNC l_noret luaX_syntaxerror (LexState *ls, const char *s); -LUAI_FUNC const char *luaX_token2str (LexState *ls, int token); - - -#endif diff --git a/source/libs/lua52/lua52-src/src/llimits.h b/source/libs/lua52/lua52-src/src/llimits.h deleted file mode 100644 index 152dd0551..000000000 --- a/source/libs/lua52/lua52-src/src/llimits.h +++ /dev/null @@ -1,309 +0,0 @@ -/* -** $Id: llimits.h,v 1.103.1.1 2013/04/12 18:48:47 roberto Exp $ -** Limits, basic types, and some other `installation-dependent' definitions -** See Copyright Notice in lua.h -*/ - -#ifndef llimits_h -#define llimits_h - - -#include <limits.h> -#include <stddef.h> - - -#include "lua.h" - - -typedef unsigned LUA_INT32 lu_int32; - -typedef LUAI_UMEM lu_mem; - -typedef LUAI_MEM l_mem; - - - -/* chars used as small naturals (so that `char' is reserved for characters) */ -typedef unsigned char lu_byte; - - -#define MAX_SIZET ((size_t)(~(size_t)0)-2) - -#define MAX_LUMEM ((lu_mem)(~(lu_mem)0)-2) - -#define MAX_LMEM ((l_mem) ((MAX_LUMEM >> 1) - 2)) - - -#define MAX_INT (INT_MAX-2) /* maximum value of an int (-2 for safety) */ - -/* -** conversion of pointer to integer -** this is for hashing only; there is no problem if the integer -** cannot hold the whole pointer value -*/ -#define IntPoint(p) ((unsigned int)(lu_mem)(p)) - - - -/* type to ensure maximum alignment */ -#if !defined(LUAI_USER_ALIGNMENT_T) -#define LUAI_USER_ALIGNMENT_T union { double u; void *s; long l; } -#endif - -typedef LUAI_USER_ALIGNMENT_T L_Umaxalign; - - -/* result of a `usual argument conversion' over lua_Number */ -typedef LUAI_UACNUMBER l_uacNumber; - - -/* internal assertions for in-house debugging */ -#if defined(lua_assert) -#define check_exp(c,e) (lua_assert(c), (e)) -/* to avoid problems with conditions too long */ -#define lua_longassert(c) { if (!(c)) lua_assert(0); } -#else -#define lua_assert(c) ((void)0) -#define check_exp(c,e) (e) -#define lua_longassert(c) ((void)0) -#endif - -/* -** assertion for checking API calls -*/ -#if !defined(luai_apicheck) - -#if defined(LUA_USE_APICHECK) -#include <assert.h> -#define luai_apicheck(L,e) assert(e) -#else -#define luai_apicheck(L,e) lua_assert(e) -#endif - -#endif - -#define api_check(l,e,msg) luai_apicheck(l,(e) && msg) - - -#if !defined(UNUSED) -#define UNUSED(x) ((void)(x)) /* to avoid warnings */ -#endif - - -#define cast(t, exp) ((t)(exp)) - -#define cast_byte(i) cast(lu_byte, (i)) -#define cast_num(i) cast(lua_Number, (i)) -#define cast_int(i) cast(int, (i)) -#define cast_uchar(i) cast(unsigned char, (i)) - - -/* -** non-return type -*/ -#if defined(__GNUC__) -#define l_noret void __attribute__((noreturn)) -#elif defined(_MSC_VER) -#define l_noret void __declspec(noreturn) -#else -#define l_noret void -#endif - - - -/* -** maximum depth for nested C calls and syntactical nested non-terminals -** in a program. (Value must fit in an unsigned short int.) -*/ -#if !defined(LUAI_MAXCCALLS) -#define LUAI_MAXCCALLS 200 -#endif - -/* -** maximum number of upvalues in a closure (both C and Lua). (Value -** must fit in an unsigned char.) -*/ -#define MAXUPVAL UCHAR_MAX - - -/* -** type for virtual-machine instructions -** must be an unsigned with (at least) 4 bytes (see details in lopcodes.h) -*/ -typedef lu_int32 Instruction; - - - -/* maximum stack for a Lua function */ -#define MAXSTACK 250 - - - -/* minimum size for the string table (must be power of 2) */ -#if !defined(MINSTRTABSIZE) -#define MINSTRTABSIZE 32 -#endif - - -/* minimum size for string buffer */ -#if !defined(LUA_MINBUFFER) -#define LUA_MINBUFFER 32 -#endif - - -#if !defined(lua_lock) -#define lua_lock(L) ((void) 0) -#define lua_unlock(L) ((void) 0) -#endif - -#if !defined(luai_threadyield) -#define luai_threadyield(L) {lua_unlock(L); lua_lock(L);} -#endif - - -/* -** these macros allow user-specific actions on threads when you defined -** LUAI_EXTRASPACE and need to do something extra when a thread is -** created/deleted/resumed/yielded. -*/ -#if !defined(luai_userstateopen) -#define luai_userstateopen(L) ((void)L) -#endif - -#if !defined(luai_userstateclose) -#define luai_userstateclose(L) ((void)L) -#endif - -#if !defined(luai_userstatethread) -#define luai_userstatethread(L,L1) ((void)L) -#endif - -#if !defined(luai_userstatefree) -#define luai_userstatefree(L,L1) ((void)L) -#endif - -#if !defined(luai_userstateresume) -#define luai_userstateresume(L,n) ((void)L) -#endif - -#if !defined(luai_userstateyield) -#define luai_userstateyield(L,n) ((void)L) -#endif - -/* -** lua_number2int is a macro to convert lua_Number to int. -** lua_number2integer is a macro to convert lua_Number to lua_Integer. -** lua_number2unsigned is a macro to convert a lua_Number to a lua_Unsigned. -** lua_unsigned2number is a macro to convert a lua_Unsigned to a lua_Number. -** luai_hashnum is a macro to hash a lua_Number value into an integer. -** The hash must be deterministic and give reasonable values for -** both small and large values (outside the range of integers). -*/ - -#if defined(MS_ASMTRICK) || defined(LUA_MSASMTRICK) /* { */ -/* trick with Microsoft assembler for X86 */ - -#define lua_number2int(i,n) __asm {__asm fld n __asm fistp i} -#define lua_number2integer(i,n) lua_number2int(i, n) -#define lua_number2unsigned(i,n) \ - {__int64 l; __asm {__asm fld n __asm fistp l} i = (unsigned int)l;} - - -#elif defined(LUA_IEEE754TRICK) /* }{ */ -/* the next trick should work on any machine using IEEE754 with - a 32-bit int type */ - -union luai_Cast { double l_d; LUA_INT32 l_p[2]; }; - -#if !defined(LUA_IEEEENDIAN) /* { */ -#define LUAI_EXTRAIEEE \ - static const union luai_Cast ieeeendian = {-(33.0 + 6755399441055744.0)}; -#define LUA_IEEEENDIANLOC (ieeeendian.l_p[1] == 33) -#else -#define LUA_IEEEENDIANLOC LUA_IEEEENDIAN -#define LUAI_EXTRAIEEE /* empty */ -#endif /* } */ - -#define lua_number2int32(i,n,t) \ - { LUAI_EXTRAIEEE \ - volatile union luai_Cast u; u.l_d = (n) + 6755399441055744.0; \ - (i) = (t)u.l_p[LUA_IEEEENDIANLOC]; } - -#define luai_hashnum(i,n) \ - { volatile union luai_Cast u; u.l_d = (n) + 1.0; /* avoid -0 */ \ - (i) = u.l_p[0]; (i) += u.l_p[1]; } /* add double bits for his hash */ - -#define lua_number2int(i,n) lua_number2int32(i, n, int) -#define lua_number2unsigned(i,n) lua_number2int32(i, n, lua_Unsigned) - -/* the trick can be expanded to lua_Integer when it is a 32-bit value */ -#if defined(LUA_IEEELL) -#define lua_number2integer(i,n) lua_number2int32(i, n, lua_Integer) -#endif - -#endif /* } */ - - -/* the following definitions always work, but may be slow */ - -#if !defined(lua_number2int) -#define lua_number2int(i,n) ((i)=(int)(n)) -#endif - -#if !defined(lua_number2integer) -#define lua_number2integer(i,n) ((i)=(lua_Integer)(n)) -#endif - -#if !defined(lua_number2unsigned) /* { */ -/* the following definition assures proper modulo behavior */ -#if defined(LUA_NUMBER_DOUBLE) || defined(LUA_NUMBER_FLOAT) -#include <math.h> -#define SUPUNSIGNED ((lua_Number)(~(lua_Unsigned)0) + 1) -#define lua_number2unsigned(i,n) \ - ((i)=(lua_Unsigned)((n) - floor((n)/SUPUNSIGNED)*SUPUNSIGNED)) -#else -#define lua_number2unsigned(i,n) ((i)=(lua_Unsigned)(n)) -#endif -#endif /* } */ - - -#if !defined(lua_unsigned2number) -/* on several machines, coercion from unsigned to double is slow, - so it may be worth to avoid */ -#define lua_unsigned2number(u) \ - (((u) <= (lua_Unsigned)INT_MAX) ? (lua_Number)(int)(u) : (lua_Number)(u)) -#endif - - - -#if defined(ltable_c) && !defined(luai_hashnum) - -#include <float.h> -#include <math.h> - -#define luai_hashnum(i,n) { int e; \ - n = l_mathop(frexp)(n, &e) * (lua_Number)(INT_MAX - DBL_MAX_EXP); \ - lua_number2int(i, n); i += e; } - -#endif - - - -/* -** macro to control inclusion of some hard tests on stack reallocation -*/ -#if !defined(HARDSTACKTESTS) -#define condmovestack(L) ((void)0) -#else -/* realloc stack keeping its size */ -#define condmovestack(L) luaD_reallocstack((L), (L)->stacksize) -#endif - -#if !defined(HARDMEMTESTS) -#define condchangemem(L) condmovestack(L) -#else -#define condchangemem(L) \ - ((void)(!(G(L)->gcrunning) || (luaC_fullgc(L, 0), 1))) -#endif - -#endif diff --git a/source/libs/lua52/lua52-src/src/lmathlib.c b/source/libs/lua52/lua52-src/src/lmathlib.c deleted file mode 100644 index fe9fc5423..000000000 --- a/source/libs/lua52/lua52-src/src/lmathlib.c +++ /dev/null @@ -1,279 +0,0 @@ -/* -** $Id: lmathlib.c,v 1.83.1.1 2013/04/12 18:48:47 roberto Exp $ -** Standard mathematical library -** See Copyright Notice in lua.h -*/ - - -#include <stdlib.h> -#include <math.h> - -#define lmathlib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -#undef PI -#define PI ((lua_Number)(3.1415926535897932384626433832795)) -#define RADIANS_PER_DEGREE ((lua_Number)(PI/180.0)) - - - -static int math_abs (lua_State *L) { - lua_pushnumber(L, l_mathop(fabs)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_sin (lua_State *L) { - lua_pushnumber(L, l_mathop(sin)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_sinh (lua_State *L) { - lua_pushnumber(L, l_mathop(sinh)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_cos (lua_State *L) { - lua_pushnumber(L, l_mathop(cos)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_cosh (lua_State *L) { - lua_pushnumber(L, l_mathop(cosh)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_tan (lua_State *L) { - lua_pushnumber(L, l_mathop(tan)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_tanh (lua_State *L) { - lua_pushnumber(L, l_mathop(tanh)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_asin (lua_State *L) { - lua_pushnumber(L, l_mathop(asin)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_acos (lua_State *L) { - lua_pushnumber(L, l_mathop(acos)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_atan (lua_State *L) { - lua_pushnumber(L, l_mathop(atan)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_atan2 (lua_State *L) { - lua_pushnumber(L, l_mathop(atan2)(luaL_checknumber(L, 1), - luaL_checknumber(L, 2))); - return 1; -} - -static int math_ceil (lua_State *L) { - lua_pushnumber(L, l_mathop(ceil)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_floor (lua_State *L) { - lua_pushnumber(L, l_mathop(floor)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_fmod (lua_State *L) { - lua_pushnumber(L, l_mathop(fmod)(luaL_checknumber(L, 1), - luaL_checknumber(L, 2))); - return 1; -} - -static int math_modf (lua_State *L) { - lua_Number ip; - lua_Number fp = l_mathop(modf)(luaL_checknumber(L, 1), &ip); - lua_pushnumber(L, ip); - lua_pushnumber(L, fp); - return 2; -} - -static int math_sqrt (lua_State *L) { - lua_pushnumber(L, l_mathop(sqrt)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_pow (lua_State *L) { - lua_Number x = luaL_checknumber(L, 1); - lua_Number y = luaL_checknumber(L, 2); - lua_pushnumber(L, l_mathop(pow)(x, y)); - return 1; -} - -static int math_log (lua_State *L) { - lua_Number x = luaL_checknumber(L, 1); - lua_Number res; - if (lua_isnoneornil(L, 2)) - res = l_mathop(log)(x); - else { - lua_Number base = luaL_checknumber(L, 2); - if (base == (lua_Number)10.0) res = l_mathop(log10)(x); - else res = l_mathop(log)(x)/l_mathop(log)(base); - } - lua_pushnumber(L, res); - return 1; -} - -#if defined(LUA_COMPAT_LOG10) -static int math_log10 (lua_State *L) { - lua_pushnumber(L, l_mathop(log10)(luaL_checknumber(L, 1))); - return 1; -} -#endif - -static int math_exp (lua_State *L) { - lua_pushnumber(L, l_mathop(exp)(luaL_checknumber(L, 1))); - return 1; -} - -static int math_deg (lua_State *L) { - lua_pushnumber(L, luaL_checknumber(L, 1)/RADIANS_PER_DEGREE); - return 1; -} - -static int math_rad (lua_State *L) { - lua_pushnumber(L, luaL_checknumber(L, 1)*RADIANS_PER_DEGREE); - return 1; -} - -static int math_frexp (lua_State *L) { - int e; - lua_pushnumber(L, l_mathop(frexp)(luaL_checknumber(L, 1), &e)); - lua_pushinteger(L, e); - return 2; -} - -static int math_ldexp (lua_State *L) { - lua_Number x = luaL_checknumber(L, 1); - int ep = luaL_checkint(L, 2); - lua_pushnumber(L, l_mathop(ldexp)(x, ep)); - return 1; -} - - - -static int math_min (lua_State *L) { - int n = lua_gettop(L); /* number of arguments */ - lua_Number dmin = luaL_checknumber(L, 1); - int i; - for (i=2; i<=n; i++) { - lua_Number d = luaL_checknumber(L, i); - if (d < dmin) - dmin = d; - } - lua_pushnumber(L, dmin); - return 1; -} - - -static int math_max (lua_State *L) { - int n = lua_gettop(L); /* number of arguments */ - lua_Number dmax = luaL_checknumber(L, 1); - int i; - for (i=2; i<=n; i++) { - lua_Number d = luaL_checknumber(L, i); - if (d > dmax) - dmax = d; - } - lua_pushnumber(L, dmax); - return 1; -} - - -static int math_random (lua_State *L) { - /* the `%' avoids the (rare) case of r==1, and is needed also because on - some systems (SunOS!) `rand()' may return a value larger than RAND_MAX */ - lua_Number r = (lua_Number)(rand()%RAND_MAX) / (lua_Number)RAND_MAX; - switch (lua_gettop(L)) { /* check number of arguments */ - case 0: { /* no arguments */ - lua_pushnumber(L, r); /* Number between 0 and 1 */ - break; - } - case 1: { /* only upper limit */ - lua_Number u = luaL_checknumber(L, 1); - luaL_argcheck(L, (lua_Number)1.0 <= u, 1, "interval is empty"); - lua_pushnumber(L, l_mathop(floor)(r*u) + (lua_Number)(1.0)); /* [1, u] */ - break; - } - case 2: { /* lower and upper limits */ - lua_Number l = luaL_checknumber(L, 1); - lua_Number u = luaL_checknumber(L, 2); - luaL_argcheck(L, l <= u, 2, "interval is empty"); - lua_pushnumber(L, l_mathop(floor)(r*(u-l+1)) + l); /* [l, u] */ - break; - } - default: return luaL_error(L, "wrong number of arguments"); - } - return 1; -} - - -static int math_randomseed (lua_State *L) { - srand(luaL_checkunsigned(L, 1)); - (void)rand(); /* discard first value to avoid undesirable correlations */ - return 0; -} - - -static const luaL_Reg mathlib[] = { - {"abs", math_abs}, - {"acos", math_acos}, - {"asin", math_asin}, - {"atan2", math_atan2}, - {"atan", math_atan}, - {"ceil", math_ceil}, - {"cosh", math_cosh}, - {"cos", math_cos}, - {"deg", math_deg}, - {"exp", math_exp}, - {"floor", math_floor}, - {"fmod", math_fmod}, - {"frexp", math_frexp}, - {"ldexp", math_ldexp}, -#if defined(LUA_COMPAT_LOG10) - {"log10", math_log10}, -#endif - {"log", math_log}, - {"max", math_max}, - {"min", math_min}, - {"modf", math_modf}, - {"pow", math_pow}, - {"rad", math_rad}, - {"random", math_random}, - {"randomseed", math_randomseed}, - {"sinh", math_sinh}, - {"sin", math_sin}, - {"sqrt", math_sqrt}, - {"tanh", math_tanh}, - {"tan", math_tan}, - {NULL, NULL} -}; - - -/* -** Open math library -*/ -LUAMOD_API int luaopen_math (lua_State *L) { - luaL_newlib(L, mathlib); - lua_pushnumber(L, PI); - lua_setfield(L, -2, "pi"); - lua_pushnumber(L, HUGE_VAL); - lua_setfield(L, -2, "huge"); - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/lmem.c b/source/libs/lua52/lua52-src/src/lmem.c deleted file mode 100644 index ee343e3e0..000000000 --- a/source/libs/lua52/lua52-src/src/lmem.c +++ /dev/null @@ -1,99 +0,0 @@ -/* -** $Id: lmem.c,v 1.84.1.1 2013/04/12 18:48:47 roberto Exp $ -** Interface to Memory Manager -** See Copyright Notice in lua.h -*/ - - -#include <stddef.h> - -#define lmem_c -#define LUA_CORE - -#include "lua.h" - -#include "ldebug.h" -#include "ldo.h" -#include "lgc.h" -#include "lmem.h" -#include "lobject.h" -#include "lstate.h" - - - -/* -** About the realloc function: -** void * frealloc (void *ud, void *ptr, size_t osize, size_t nsize); -** (`osize' is the old size, `nsize' is the new size) -** -** * frealloc(ud, NULL, x, s) creates a new block of size `s' (no -** matter 'x'). -** -** * frealloc(ud, p, x, 0) frees the block `p' -** (in this specific case, frealloc must return NULL); -** particularly, frealloc(ud, NULL, 0, 0) does nothing -** (which is equivalent to free(NULL) in ANSI C) -** -** frealloc returns NULL if it cannot create or reallocate the area -** (any reallocation to an equal or smaller size cannot fail!) -*/ - - - -#define MINSIZEARRAY 4 - - -void *luaM_growaux_ (lua_State *L, void *block, int *size, size_t size_elems, - int limit, const char *what) { - void *newblock; - int newsize; - if (*size >= limit/2) { /* cannot double it? */ - if (*size >= limit) /* cannot grow even a little? */ - luaG_runerror(L, "too many %s (limit is %d)", what, limit); - newsize = limit; /* still have at least one free place */ - } - else { - newsize = (*size)*2; - if (newsize < MINSIZEARRAY) - newsize = MINSIZEARRAY; /* minimum size */ - } - newblock = luaM_reallocv(L, block, *size, newsize, size_elems); - *size = newsize; /* update only when everything else is OK */ - return newblock; -} - - -l_noret luaM_toobig (lua_State *L) { - luaG_runerror(L, "memory allocation error: block too big"); -} - - - -/* -** generic allocation routine. -*/ -void *luaM_realloc_ (lua_State *L, void *block, size_t osize, size_t nsize) { - void *newblock; - global_State *g = G(L); - size_t realosize = (block) ? osize : 0; - lua_assert((realosize == 0) == (block == NULL)); -#if defined(HARDMEMTESTS) - if (nsize > realosize && g->gcrunning) - luaC_fullgc(L, 1); /* force a GC whenever possible */ -#endif - newblock = (*g->frealloc)(g->ud, block, osize, nsize); - if (newblock == NULL && nsize > 0) { - api_check(L, nsize > realosize, - "realloc cannot fail when shrinking a block"); - if (g->gcrunning) { - luaC_fullgc(L, 1); /* try to free some memory... */ - newblock = (*g->frealloc)(g->ud, block, osize, nsize); /* try again */ - } - if (newblock == NULL) - luaD_throw(L, LUA_ERRMEM); - } - lua_assert((nsize == 0) == (newblock == NULL)); - g->GCdebt = (g->GCdebt + nsize) - realosize; - return newblock; -} - diff --git a/source/libs/lua52/lua52-src/src/lmem.h b/source/libs/lua52/lua52-src/src/lmem.h deleted file mode 100644 index bd4f4e072..000000000 --- a/source/libs/lua52/lua52-src/src/lmem.h +++ /dev/null @@ -1,57 +0,0 @@ -/* -** $Id: lmem.h,v 1.40.1.1 2013/04/12 18:48:47 roberto Exp $ -** Interface to Memory Manager -** See Copyright Notice in lua.h -*/ - -#ifndef lmem_h -#define lmem_h - - -#include <stddef.h> - -#include "llimits.h" -#include "lua.h" - - -/* -** This macro avoids the runtime division MAX_SIZET/(e), as 'e' is -** always constant. -** The macro is somewhat complex to avoid warnings: -** +1 avoids warnings of "comparison has constant result"; -** cast to 'void' avoids warnings of "value unused". -*/ -#define luaM_reallocv(L,b,on,n,e) \ - (cast(void, \ - (cast(size_t, (n)+1) > MAX_SIZET/(e)) ? (luaM_toobig(L), 0) : 0), \ - luaM_realloc_(L, (b), (on)*(e), (n)*(e))) - -#define luaM_freemem(L, b, s) luaM_realloc_(L, (b), (s), 0) -#define luaM_free(L, b) luaM_realloc_(L, (b), sizeof(*(b)), 0) -#define luaM_freearray(L, b, n) luaM_reallocv(L, (b), n, 0, sizeof((b)[0])) - -#define luaM_malloc(L,s) luaM_realloc_(L, NULL, 0, (s)) -#define luaM_new(L,t) cast(t *, luaM_malloc(L, sizeof(t))) -#define luaM_newvector(L,n,t) \ - cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t))) - -#define luaM_newobject(L,tag,s) luaM_realloc_(L, NULL, tag, (s)) - -#define luaM_growvector(L,v,nelems,size,t,limit,e) \ - if ((nelems)+1 > (size)) \ - ((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e))) - -#define luaM_reallocvector(L, v,oldn,n,t) \ - ((v)=cast(t *, luaM_reallocv(L, v, oldn, n, sizeof(t)))) - -LUAI_FUNC l_noret luaM_toobig (lua_State *L); - -/* not to be called directly */ -LUAI_FUNC void *luaM_realloc_ (lua_State *L, void *block, size_t oldsize, - size_t size); -LUAI_FUNC void *luaM_growaux_ (lua_State *L, void *block, int *size, - size_t size_elem, int limit, - const char *what); - -#endif - diff --git a/source/libs/lua52/lua52-src/src/loadlib.c b/source/libs/lua52/lua52-src/src/loadlib.c deleted file mode 100644 index bedbea3e9..000000000 --- a/source/libs/lua52/lua52-src/src/loadlib.c +++ /dev/null @@ -1,725 +0,0 @@ -/* -** $Id: loadlib.c,v 1.111.1.1 2013/04/12 18:48:47 roberto Exp $ -** Dynamic library loader for Lua -** See Copyright Notice in lua.h -** -** This module contains an implementation of loadlib for Unix systems -** that have dlfcn, an implementation for Windows, and a stub for other -** systems. -*/ - - -/* -** if needed, includes windows header before everything else -*/ -#if defined(_WIN32) -#include <windows.h> -#endif - - -#include <stdlib.h> -#include <string.h> - - -#define loadlib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -/* -** LUA_PATH and LUA_CPATH are the names of the environment -** variables that Lua check to set its paths. -*/ -#if !defined(LUA_PATH) -#define LUA_PATH "LUA_PATH" -#endif - -#if !defined(LUA_CPATH) -#define LUA_CPATH "LUA_CPATH" -#endif - -#define LUA_PATHSUFFIX "_" LUA_VERSION_MAJOR "_" LUA_VERSION_MINOR - -#define LUA_PATHVERSION LUA_PATH LUA_PATHSUFFIX -#define LUA_CPATHVERSION LUA_CPATH LUA_PATHSUFFIX - -/* -** LUA_PATH_SEP is the character that separates templates in a path. -** LUA_PATH_MARK is the string that marks the substitution points in a -** template. -** LUA_EXEC_DIR in a Windows path is replaced by the executable's -** directory. -** LUA_IGMARK is a mark to ignore all before it when building the -** luaopen_ function name. -*/ -#if !defined (LUA_PATH_SEP) -#define LUA_PATH_SEP ";" -#endif -#if !defined (LUA_PATH_MARK) -#define LUA_PATH_MARK "?" -#endif -#if !defined (LUA_EXEC_DIR) -#define LUA_EXEC_DIR "!" -#endif -#if !defined (LUA_IGMARK) -#define LUA_IGMARK "-" -#endif - - -/* -** LUA_CSUBSEP is the character that replaces dots in submodule names -** when searching for a C loader. -** LUA_LSUBSEP is the character that replaces dots in submodule names -** when searching for a Lua loader. -*/ -#if !defined(LUA_CSUBSEP) -#define LUA_CSUBSEP LUA_DIRSEP -#endif - -#if !defined(LUA_LSUBSEP) -#define LUA_LSUBSEP LUA_DIRSEP -#endif - - -/* prefix for open functions in C libraries */ -#define LUA_POF "luaopen_" - -/* separator for open functions in C libraries */ -#define LUA_OFSEP "_" - - -/* table (in the registry) that keeps handles for all loaded C libraries */ -#define CLIBS "_CLIBS" - -#define LIB_FAIL "open" - - -/* error codes for ll_loadfunc */ -#define ERRLIB 1 -#define ERRFUNC 2 - -#define setprogdir(L) ((void)0) - - -/* -** system-dependent functions -*/ -static void ll_unloadlib (void *lib); -static void *ll_load (lua_State *L, const char *path, int seeglb); -static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym); - - - -#if defined(LUA_USE_DLOPEN) -/* -** {======================================================================== -** This is an implementation of loadlib based on the dlfcn interface. -** The dlfcn interface is available in Linux, SunOS, Solaris, IRIX, FreeBSD, -** NetBSD, AIX 4.2, HPUX 11, and probably most other Unix flavors, at least -** as an emulation layer on top of native functions. -** ========================================================================= -*/ - -#include <dlfcn.h> - -static void ll_unloadlib (void *lib) { - dlclose(lib); -} - - -static void *ll_load (lua_State *L, const char *path, int seeglb) { - void *lib = dlopen(path, RTLD_NOW | (seeglb ? RTLD_GLOBAL : RTLD_LOCAL)); - if (lib == NULL) lua_pushstring(L, dlerror()); - return lib; -} - - -static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { - lua_CFunction f = (lua_CFunction)dlsym(lib, sym); - if (f == NULL) lua_pushstring(L, dlerror()); - return f; -} - -/* }====================================================== */ - - - -#elif defined(LUA_DL_DLL) -/* -** {====================================================================== -** This is an implementation of loadlib for Windows using native functions. -** ======================================================================= -*/ - -#undef setprogdir - -/* -** optional flags for LoadLibraryEx -*/ -#if !defined(LUA_LLE_FLAGS) -#define LUA_LLE_FLAGS 0 -#endif - - -static void setprogdir (lua_State *L) { - char buff[MAX_PATH + 1]; - char *lb; - DWORD nsize = sizeof(buff)/sizeof(char); - DWORD n = GetModuleFileNameA(NULL, buff, nsize); - if (n == 0 || n == nsize || (lb = strrchr(buff, '\\')) == NULL) - luaL_error(L, "unable to get ModuleFileName"); - else { - *lb = '\0'; - luaL_gsub(L, lua_tostring(L, -1), LUA_EXEC_DIR, buff); - lua_remove(L, -2); /* remove original string */ - } -} - - -static void pusherror (lua_State *L) { - int error = GetLastError(); - char buffer[128]; - if (FormatMessageA(FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_FROM_SYSTEM, - NULL, error, 0, buffer, sizeof(buffer)/sizeof(char), NULL)) - lua_pushstring(L, buffer); - else - lua_pushfstring(L, "system error %d\n", error); -} - -static void ll_unloadlib (void *lib) { - FreeLibrary((HMODULE)lib); -} - - -static void *ll_load (lua_State *L, const char *path, int seeglb) { - HMODULE lib = LoadLibraryExA(path, NULL, LUA_LLE_FLAGS); - (void)(seeglb); /* not used: symbols are 'global' by default */ - if (lib == NULL) pusherror(L); - return lib; -} - - -static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { - lua_CFunction f = (lua_CFunction)GetProcAddress((HMODULE)lib, sym); - if (f == NULL) pusherror(L); - return f; -} - -/* }====================================================== */ - - -#else -/* -** {====================================================== -** Fallback for other systems -** ======================================================= -*/ - -#undef LIB_FAIL -#define LIB_FAIL "absent" - - -#define DLMSG "dynamic libraries not enabled; check your Lua installation" - - -static void ll_unloadlib (void *lib) { - (void)(lib); /* not used */ -} - - -static void *ll_load (lua_State *L, const char *path, int seeglb) { - (void)(path); (void)(seeglb); /* not used */ - lua_pushliteral(L, DLMSG); - return NULL; -} - - -static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { - (void)(lib); (void)(sym); /* not used */ - lua_pushliteral(L, DLMSG); - return NULL; -} - -/* }====================================================== */ -#endif - - -static void *ll_checkclib (lua_State *L, const char *path) { - void *plib; - lua_getfield(L, LUA_REGISTRYINDEX, CLIBS); - lua_getfield(L, -1, path); - plib = lua_touserdata(L, -1); /* plib = CLIBS[path] */ - lua_pop(L, 2); /* pop CLIBS table and 'plib' */ - return plib; -} - - -static void ll_addtoclib (lua_State *L, const char *path, void *plib) { - lua_getfield(L, LUA_REGISTRYINDEX, CLIBS); - lua_pushlightuserdata(L, plib); - lua_pushvalue(L, -1); - lua_setfield(L, -3, path); /* CLIBS[path] = plib */ - lua_rawseti(L, -2, luaL_len(L, -2) + 1); /* CLIBS[#CLIBS + 1] = plib */ - lua_pop(L, 1); /* pop CLIBS table */ -} - - -/* -** __gc tag method for CLIBS table: calls 'll_unloadlib' for all lib -** handles in list CLIBS -*/ -static int gctm (lua_State *L) { - int n = luaL_len(L, 1); - for (; n >= 1; n--) { /* for each handle, in reverse order */ - lua_rawgeti(L, 1, n); /* get handle CLIBS[n] */ - ll_unloadlib(lua_touserdata(L, -1)); - lua_pop(L, 1); /* pop handle */ - } - return 0; -} - - -static int ll_loadfunc (lua_State *L, const char *path, const char *sym) { - void *reg = ll_checkclib(L, path); /* check loaded C libraries */ - if (reg == NULL) { /* must load library? */ - reg = ll_load(L, path, *sym == '*'); - if (reg == NULL) return ERRLIB; /* unable to load library */ - ll_addtoclib(L, path, reg); - } - if (*sym == '*') { /* loading only library (no function)? */ - lua_pushboolean(L, 1); /* return 'true' */ - return 0; /* no errors */ - } - else { - lua_CFunction f = ll_sym(L, reg, sym); - if (f == NULL) - return ERRFUNC; /* unable to find function */ - lua_pushcfunction(L, f); /* else create new function */ - return 0; /* no errors */ - } -} - - -static int ll_loadlib (lua_State *L) { - const char *path = luaL_checkstring(L, 1); - const char *init = luaL_checkstring(L, 2); - int stat = ll_loadfunc(L, path, init); - if (stat == 0) /* no errors? */ - return 1; /* return the loaded function */ - else { /* error; error message is on stack top */ - lua_pushnil(L); - lua_insert(L, -2); - lua_pushstring(L, (stat == ERRLIB) ? LIB_FAIL : "init"); - return 3; /* return nil, error message, and where */ - } -} - - - -/* -** {====================================================== -** 'require' function -** ======================================================= -*/ - - -static int readable (const char *filename) { - FILE *f = fopen(filename, "r"); /* try to open file */ - if (f == NULL) return 0; /* open failed */ - fclose(f); - return 1; -} - - -static const char *pushnexttemplate (lua_State *L, const char *path) { - const char *l; - while (*path == *LUA_PATH_SEP) path++; /* skip separators */ - if (*path == '\0') return NULL; /* no more templates */ - l = strchr(path, *LUA_PATH_SEP); /* find next separator */ - if (l == NULL) l = path + strlen(path); - lua_pushlstring(L, path, l - path); /* template */ - return l; -} - - -static const char *searchpath (lua_State *L, const char *name, - const char *path, - const char *sep, - const char *dirsep) { - luaL_Buffer msg; /* to build error message */ - luaL_buffinit(L, &msg); - if (*sep != '\0') /* non-empty separator? */ - name = luaL_gsub(L, name, sep, dirsep); /* replace it by 'dirsep' */ - while ((path = pushnexttemplate(L, path)) != NULL) { - const char *filename = luaL_gsub(L, lua_tostring(L, -1), - LUA_PATH_MARK, name); - lua_remove(L, -2); /* remove path template */ - if (readable(filename)) /* does file exist and is readable? */ - return filename; /* return that file name */ - lua_pushfstring(L, "\n\tno file " LUA_QS, filename); - lua_remove(L, -2); /* remove file name */ - luaL_addvalue(&msg); /* concatenate error msg. entry */ - } - luaL_pushresult(&msg); /* create error message */ - return NULL; /* not found */ -} - - -static int ll_searchpath (lua_State *L) { - const char *f = searchpath(L, luaL_checkstring(L, 1), - luaL_checkstring(L, 2), - luaL_optstring(L, 3, "."), - luaL_optstring(L, 4, LUA_DIRSEP)); - if (f != NULL) return 1; - else { /* error message is on top of the stack */ - lua_pushnil(L); - lua_insert(L, -2); - return 2; /* return nil + error message */ - } -} - - -static const char *findfile (lua_State *L, const char *name, - const char *pname, - const char *dirsep) { - const char *path; - lua_getfield(L, lua_upvalueindex(1), pname); - path = lua_tostring(L, -1); - if (path == NULL) - luaL_error(L, LUA_QL("package.%s") " must be a string", pname); - return searchpath(L, name, path, ".", dirsep); -} - - -static int checkload (lua_State *L, int stat, const char *filename) { - if (stat) { /* module loaded successfully? */ - lua_pushstring(L, filename); /* will be 2nd argument to module */ - return 2; /* return open function and file name */ - } - else - return luaL_error(L, "error loading module " LUA_QS - " from file " LUA_QS ":\n\t%s", - lua_tostring(L, 1), filename, lua_tostring(L, -1)); -} - - -static int searcher_Lua (lua_State *L) { - const char *filename; - const char *name = luaL_checkstring(L, 1); - filename = findfile(L, name, "path", LUA_LSUBSEP); - if (filename == NULL) return 1; /* module not found in this path */ - return checkload(L, (luaL_loadfile(L, filename) == LUA_OK), filename); -} - - -static int loadfunc (lua_State *L, const char *filename, const char *modname) { - const char *funcname; - const char *mark; - modname = luaL_gsub(L, modname, ".", LUA_OFSEP); - mark = strchr(modname, *LUA_IGMARK); - if (mark) { - int stat; - funcname = lua_pushlstring(L, modname, mark - modname); - funcname = lua_pushfstring(L, LUA_POF"%s", funcname); - stat = ll_loadfunc(L, filename, funcname); - if (stat != ERRFUNC) return stat; - modname = mark + 1; /* else go ahead and try old-style name */ - } - funcname = lua_pushfstring(L, LUA_POF"%s", modname); - return ll_loadfunc(L, filename, funcname); -} - - -static int searcher_C (lua_State *L) { - const char *name = luaL_checkstring(L, 1); - const char *filename = findfile(L, name, "cpath", LUA_CSUBSEP); - if (filename == NULL) return 1; /* module not found in this path */ - return checkload(L, (loadfunc(L, filename, name) == 0), filename); -} - - -static int searcher_Croot (lua_State *L) { - const char *filename; - const char *name = luaL_checkstring(L, 1); - const char *p = strchr(name, '.'); - int stat; - if (p == NULL) return 0; /* is root */ - lua_pushlstring(L, name, p - name); - filename = findfile(L, lua_tostring(L, -1), "cpath", LUA_CSUBSEP); - if (filename == NULL) return 1; /* root not found */ - if ((stat = loadfunc(L, filename, name)) != 0) { - if (stat != ERRFUNC) - return checkload(L, 0, filename); /* real error */ - else { /* open function not found */ - lua_pushfstring(L, "\n\tno module " LUA_QS " in file " LUA_QS, - name, filename); - return 1; - } - } - lua_pushstring(L, filename); /* will be 2nd argument to module */ - return 2; -} - - -static int searcher_preload (lua_State *L) { - const char *name = luaL_checkstring(L, 1); - lua_getfield(L, LUA_REGISTRYINDEX, "_PRELOAD"); - lua_getfield(L, -1, name); - if (lua_isnil(L, -1)) /* not found? */ - lua_pushfstring(L, "\n\tno field package.preload['%s']", name); - return 1; -} - - -static void findloader (lua_State *L, const char *name) { - int i; - luaL_Buffer msg; /* to build error message */ - luaL_buffinit(L, &msg); - lua_getfield(L, lua_upvalueindex(1), "searchers"); /* will be at index 3 */ - if (!lua_istable(L, 3)) - luaL_error(L, LUA_QL("package.searchers") " must be a table"); - /* iterate over available searchers to find a loader */ - for (i = 1; ; i++) { - lua_rawgeti(L, 3, i); /* get a searcher */ - if (lua_isnil(L, -1)) { /* no more searchers? */ - lua_pop(L, 1); /* remove nil */ - luaL_pushresult(&msg); /* create error message */ - luaL_error(L, "module " LUA_QS " not found:%s", - name, lua_tostring(L, -1)); - } - lua_pushstring(L, name); - lua_call(L, 1, 2); /* call it */ - if (lua_isfunction(L, -2)) /* did it find a loader? */ - return; /* module loader found */ - else if (lua_isstring(L, -2)) { /* searcher returned error message? */ - lua_pop(L, 1); /* remove extra return */ - luaL_addvalue(&msg); /* concatenate error message */ - } - else - lua_pop(L, 2); /* remove both returns */ - } -} - - -static int ll_require (lua_State *L) { - const char *name = luaL_checkstring(L, 1); - lua_settop(L, 1); /* _LOADED table will be at index 2 */ - lua_getfield(L, LUA_REGISTRYINDEX, "_LOADED"); - lua_getfield(L, 2, name); /* _LOADED[name] */ - if (lua_toboolean(L, -1)) /* is it there? */ - return 1; /* package is already loaded */ - /* else must load package */ - lua_pop(L, 1); /* remove 'getfield' result */ - findloader(L, name); - lua_pushstring(L, name); /* pass name as argument to module loader */ - lua_insert(L, -2); /* name is 1st argument (before search data) */ - lua_call(L, 2, 1); /* run loader to load module */ - if (!lua_isnil(L, -1)) /* non-nil return? */ - lua_setfield(L, 2, name); /* _LOADED[name] = returned value */ - lua_getfield(L, 2, name); - if (lua_isnil(L, -1)) { /* module did not set a value? */ - lua_pushboolean(L, 1); /* use true as result */ - lua_pushvalue(L, -1); /* extra copy to be returned */ - lua_setfield(L, 2, name); /* _LOADED[name] = true */ - } - return 1; -} - -/* }====================================================== */ - - - -/* -** {====================================================== -** 'module' function -** ======================================================= -*/ -#if defined(LUA_COMPAT_MODULE) - -/* -** changes the environment variable of calling function -*/ -static void set_env (lua_State *L) { - lua_Debug ar; - if (lua_getstack(L, 1, &ar) == 0 || - lua_getinfo(L, "f", &ar) == 0 || /* get calling function */ - lua_iscfunction(L, -1)) - luaL_error(L, LUA_QL("module") " not called from a Lua function"); - lua_pushvalue(L, -2); /* copy new environment table to top */ - lua_setupvalue(L, -2, 1); - lua_pop(L, 1); /* remove function */ -} - - -static void dooptions (lua_State *L, int n) { - int i; - for (i = 2; i <= n; i++) { - if (lua_isfunction(L, i)) { /* avoid 'calling' extra info. */ - lua_pushvalue(L, i); /* get option (a function) */ - lua_pushvalue(L, -2); /* module */ - lua_call(L, 1, 0); - } - } -} - - -static void modinit (lua_State *L, const char *modname) { - const char *dot; - lua_pushvalue(L, -1); - lua_setfield(L, -2, "_M"); /* module._M = module */ - lua_pushstring(L, modname); - lua_setfield(L, -2, "_NAME"); - dot = strrchr(modname, '.'); /* look for last dot in module name */ - if (dot == NULL) dot = modname; - else dot++; - /* set _PACKAGE as package name (full module name minus last part) */ - lua_pushlstring(L, modname, dot - modname); - lua_setfield(L, -2, "_PACKAGE"); -} - - -static int ll_module (lua_State *L) { - const char *modname = luaL_checkstring(L, 1); - int lastarg = lua_gettop(L); /* last parameter */ - luaL_pushmodule(L, modname, 1); /* get/create module table */ - /* check whether table already has a _NAME field */ - lua_getfield(L, -1, "_NAME"); - if (!lua_isnil(L, -1)) /* is table an initialized module? */ - lua_pop(L, 1); - else { /* no; initialize it */ - lua_pop(L, 1); - modinit(L, modname); - } - lua_pushvalue(L, -1); - set_env(L); - dooptions(L, lastarg); - return 1; -} - - -static int ll_seeall (lua_State *L) { - luaL_checktype(L, 1, LUA_TTABLE); - if (!lua_getmetatable(L, 1)) { - lua_createtable(L, 0, 1); /* create new metatable */ - lua_pushvalue(L, -1); - lua_setmetatable(L, 1); - } - lua_pushglobaltable(L); - lua_setfield(L, -2, "__index"); /* mt.__index = _G */ - return 0; -} - -#endif -/* }====================================================== */ - - - -/* auxiliary mark (for internal use) */ -#define AUXMARK "\1" - - -/* -** return registry.LUA_NOENV as a boolean -*/ -static int noenv (lua_State *L) { - int b; - lua_getfield(L, LUA_REGISTRYINDEX, "LUA_NOENV"); - b = lua_toboolean(L, -1); - lua_pop(L, 1); /* remove value */ - return b; -} - - -static void setpath (lua_State *L, const char *fieldname, const char *envname1, - const char *envname2, const char *def) { - const char *path = getenv(envname1); - if (path == NULL) /* no environment variable? */ - path = getenv(envname2); /* try alternative name */ - if (path == NULL || noenv(L)) /* no environment variable? */ - lua_pushstring(L, def); /* use default */ - else { - /* replace ";;" by ";AUXMARK;" and then AUXMARK by default path */ - path = luaL_gsub(L, path, LUA_PATH_SEP LUA_PATH_SEP, - LUA_PATH_SEP AUXMARK LUA_PATH_SEP); - luaL_gsub(L, path, AUXMARK, def); - lua_remove(L, -2); - } - setprogdir(L); - lua_setfield(L, -2, fieldname); -} - - -static const luaL_Reg pk_funcs[] = { - {"loadlib", ll_loadlib}, - {"searchpath", ll_searchpath}, -#if defined(LUA_COMPAT_MODULE) - {"seeall", ll_seeall}, -#endif - {NULL, NULL} -}; - - -static const luaL_Reg ll_funcs[] = { -#if defined(LUA_COMPAT_MODULE) - {"module", ll_module}, -#endif - {"require", ll_require}, - {NULL, NULL} -}; - - -static void createsearcherstable (lua_State *L) { - static const lua_CFunction searchers[] = - {searcher_preload, searcher_Lua, searcher_C, searcher_Croot, NULL}; - int i; - /* create 'searchers' table */ - lua_createtable(L, sizeof(searchers)/sizeof(searchers[0]) - 1, 0); - /* fill it with pre-defined searchers */ - for (i=0; searchers[i] != NULL; i++) { - lua_pushvalue(L, -2); /* set 'package' as upvalue for all searchers */ - lua_pushcclosure(L, searchers[i], 1); - lua_rawseti(L, -2, i+1); - } -} - - -LUAMOD_API int luaopen_package (lua_State *L) { - /* create table CLIBS to keep track of loaded C libraries */ - luaL_getsubtable(L, LUA_REGISTRYINDEX, CLIBS); - lua_createtable(L, 0, 1); /* metatable for CLIBS */ - lua_pushcfunction(L, gctm); - lua_setfield(L, -2, "__gc"); /* set finalizer for CLIBS table */ - lua_setmetatable(L, -2); - /* create `package' table */ - luaL_newlib(L, pk_funcs); - createsearcherstable(L); -#if defined(LUA_COMPAT_LOADERS) - lua_pushvalue(L, -1); /* make a copy of 'searchers' table */ - lua_setfield(L, -3, "loaders"); /* put it in field `loaders' */ -#endif - lua_setfield(L, -2, "searchers"); /* put it in field 'searchers' */ - /* set field 'path' */ - setpath(L, "path", LUA_PATHVERSION, LUA_PATH, LUA_PATH_DEFAULT); - /* set field 'cpath' */ - setpath(L, "cpath", LUA_CPATHVERSION, LUA_CPATH, LUA_CPATH_DEFAULT); - /* store config information */ - lua_pushliteral(L, LUA_DIRSEP "\n" LUA_PATH_SEP "\n" LUA_PATH_MARK "\n" - LUA_EXEC_DIR "\n" LUA_IGMARK "\n"); - lua_setfield(L, -2, "config"); - /* set field `loaded' */ - luaL_getsubtable(L, LUA_REGISTRYINDEX, "_LOADED"); - lua_setfield(L, -2, "loaded"); - /* set field `preload' */ - luaL_getsubtable(L, LUA_REGISTRYINDEX, "_PRELOAD"); - lua_setfield(L, -2, "preload"); - lua_pushglobaltable(L); - lua_pushvalue(L, -2); /* set 'package' as upvalue for next lib */ - luaL_setfuncs(L, ll_funcs, 1); /* open lib into global table */ - lua_pop(L, 1); /* pop global table */ - return 1; /* return 'package' table */ -} - diff --git a/source/libs/lua52/lua52-src/src/lobject.c b/source/libs/lua52/lua52-src/src/lobject.c deleted file mode 100644 index 882d994d4..000000000 --- a/source/libs/lua52/lua52-src/src/lobject.c +++ /dev/null @@ -1,287 +0,0 @@ -/* -** $Id: lobject.c,v 2.58.1.1 2013/04/12 18:48:47 roberto Exp $ -** Some generic functions over Lua objects -** See Copyright Notice in lua.h -*/ - -#include <stdarg.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#define lobject_c -#define LUA_CORE - -#include "lua.h" - -#include "lctype.h" -#include "ldebug.h" -#include "ldo.h" -#include "lmem.h" -#include "lobject.h" -#include "lstate.h" -#include "lstring.h" -#include "lvm.h" - - - -LUAI_DDEF const TValue luaO_nilobject_ = {NILCONSTANT}; - - -/* -** converts an integer to a "floating point byte", represented as -** (eeeeexxx), where the real value is (1xxx) * 2^(eeeee - 1) if -** eeeee != 0 and (xxx) otherwise. -*/ -int luaO_int2fb (unsigned int x) { - int e = 0; /* exponent */ - if (x < 8) return x; - while (x >= 0x10) { - x = (x+1) >> 1; - e++; - } - return ((e+1) << 3) | (cast_int(x) - 8); -} - - -/* converts back */ -int luaO_fb2int (int x) { - int e = (x >> 3) & 0x1f; - if (e == 0) return x; - else return ((x & 7) + 8) << (e - 1); -} - - -int luaO_ceillog2 (unsigned int x) { - static const lu_byte log_2[256] = { - 0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, - 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, - 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, - 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, - 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 - }; - int l = 0; - x--; - while (x >= 256) { l += 8; x >>= 8; } - return l + log_2[x]; -} - - -lua_Number luaO_arith (int op, lua_Number v1, lua_Number v2) { - switch (op) { - case LUA_OPADD: return luai_numadd(NULL, v1, v2); - case LUA_OPSUB: return luai_numsub(NULL, v1, v2); - case LUA_OPMUL: return luai_nummul(NULL, v1, v2); - case LUA_OPDIV: return luai_numdiv(NULL, v1, v2); - case LUA_OPMOD: return luai_nummod(NULL, v1, v2); - case LUA_OPPOW: return luai_numpow(NULL, v1, v2); - case LUA_OPUNM: return luai_numunm(NULL, v1); - default: lua_assert(0); return 0; - } -} - - -int luaO_hexavalue (int c) { - if (lisdigit(c)) return c - '0'; - else return ltolower(c) - 'a' + 10; -} - - -#if !defined(lua_strx2number) - -#include <math.h> - - -static int isneg (const char **s) { - if (**s == '-') { (*s)++; return 1; } - else if (**s == '+') (*s)++; - return 0; -} - - -static lua_Number readhexa (const char **s, lua_Number r, int *count) { - for (; lisxdigit(cast_uchar(**s)); (*s)++) { /* read integer part */ - r = (r * cast_num(16.0)) + cast_num(luaO_hexavalue(cast_uchar(**s))); - (*count)++; - } - return r; -} - - -/* -** convert an hexadecimal numeric string to a number, following -** C99 specification for 'strtod' -*/ -static lua_Number lua_strx2number (const char *s, char **endptr) { - lua_Number r = 0.0; - int e = 0, i = 0; - int neg = 0; /* 1 if number is negative */ - *endptr = cast(char *, s); /* nothing is valid yet */ - while (lisspace(cast_uchar(*s))) s++; /* skip initial spaces */ - neg = isneg(&s); /* check signal */ - if (!(*s == '0' && (*(s + 1) == 'x' || *(s + 1) == 'X'))) /* check '0x' */ - return 0.0; /* invalid format (no '0x') */ - s += 2; /* skip '0x' */ - r = readhexa(&s, r, &i); /* read integer part */ - if (*s == '.') { - s++; /* skip dot */ - r = readhexa(&s, r, &e); /* read fractional part */ - } - if (i == 0 && e == 0) - return 0.0; /* invalid format (no digit) */ - e *= -4; /* each fractional digit divides value by 2^-4 */ - *endptr = cast(char *, s); /* valid up to here */ - if (*s == 'p' || *s == 'P') { /* exponent part? */ - int exp1 = 0; - int neg1; - s++; /* skip 'p' */ - neg1 = isneg(&s); /* signal */ - if (!lisdigit(cast_uchar(*s))) - goto ret; /* must have at least one digit */ - while (lisdigit(cast_uchar(*s))) /* read exponent */ - exp1 = exp1 * 10 + *(s++) - '0'; - if (neg1) exp1 = -exp1; - e += exp1; - } - *endptr = cast(char *, s); /* valid up to here */ - ret: - if (neg) r = -r; - return l_mathop(ldexp)(r, e); -} - -#endif - - -int luaO_str2d (const char *s, size_t len, lua_Number *result) { - char *endptr; - if (strpbrk(s, "nN")) /* reject 'inf' and 'nan' */ - return 0; - else if (strpbrk(s, "xX")) /* hexa? */ - *result = lua_strx2number(s, &endptr); - else - *result = lua_str2number(s, &endptr); - if (endptr == s) return 0; /* nothing recognized */ - while (lisspace(cast_uchar(*endptr))) endptr++; - return (endptr == s + len); /* OK if no trailing characters */ -} - - - -static void pushstr (lua_State *L, const char *str, size_t l) { - setsvalue2s(L, L->top++, luaS_newlstr(L, str, l)); -} - - -/* this function handles only `%d', `%c', %f, %p, and `%s' formats */ -const char *luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp) { - int n = 0; - for (;;) { - const char *e = strchr(fmt, '%'); - if (e == NULL) break; - luaD_checkstack(L, 2); /* fmt + item */ - pushstr(L, fmt, e - fmt); - switch (*(e+1)) { - case 's': { - const char *s = va_arg(argp, char *); - if (s == NULL) s = "(null)"; - pushstr(L, s, strlen(s)); - break; - } - case 'c': { - char buff; - buff = cast(char, va_arg(argp, int)); - pushstr(L, &buff, 1); - break; - } - case 'd': { - setnvalue(L->top++, cast_num(va_arg(argp, int))); - break; - } - case 'f': { - setnvalue(L->top++, cast_num(va_arg(argp, l_uacNumber))); - break; - } - case 'p': { - char buff[4*sizeof(void *) + 8]; /* should be enough space for a `%p' */ - int l = sprintf(buff, "%p", va_arg(argp, void *)); - pushstr(L, buff, l); - break; - } - case '%': { - pushstr(L, "%", 1); - break; - } - default: { - luaG_runerror(L, - "invalid option " LUA_QL("%%%c") " to " LUA_QL("lua_pushfstring"), - *(e + 1)); - } - } - n += 2; - fmt = e+2; - } - luaD_checkstack(L, 1); - pushstr(L, fmt, strlen(fmt)); - if (n > 0) luaV_concat(L, n + 1); - return svalue(L->top - 1); -} - - -const char *luaO_pushfstring (lua_State *L, const char *fmt, ...) { - const char *msg; - va_list argp; - va_start(argp, fmt); - msg = luaO_pushvfstring(L, fmt, argp); - va_end(argp); - return msg; -} - - -/* number of chars of a literal string without the ending \0 */ -#define LL(x) (sizeof(x)/sizeof(char) - 1) - -#define RETS "..." -#define PRE "[string \"" -#define POS "\"]" - -#define addstr(a,b,l) ( memcpy(a,b,(l) * sizeof(char)), a += (l) ) - -void luaO_chunkid (char *out, const char *source, size_t bufflen) { - size_t l = strlen(source); - if (*source == '=') { /* 'literal' source */ - if (l <= bufflen) /* small enough? */ - memcpy(out, source + 1, l * sizeof(char)); - else { /* truncate it */ - addstr(out, source + 1, bufflen - 1); - *out = '\0'; - } - } - else if (*source == '@') { /* file name */ - if (l <= bufflen) /* small enough? */ - memcpy(out, source + 1, l * sizeof(char)); - else { /* add '...' before rest of name */ - addstr(out, RETS, LL(RETS)); - bufflen -= LL(RETS); - memcpy(out, source + 1 + l - bufflen, bufflen * sizeof(char)); - } - } - else { /* string; format as [string "source"] */ - const char *nl = strchr(source, '\n'); /* find first new line (if any) */ - addstr(out, PRE, LL(PRE)); /* add prefix */ - bufflen -= LL(PRE RETS POS) + 1; /* save space for prefix+suffix+'\0' */ - if (l < bufflen && nl == NULL) { /* small one-line source? */ - addstr(out, source, l); /* keep it */ - } - else { - if (nl != NULL) l = nl - source; /* stop at first newline */ - if (l > bufflen) l = bufflen; - addstr(out, source, l); - addstr(out, RETS, LL(RETS)); - } - memcpy(out, POS, (LL(POS) + 1) * sizeof(char)); - } -} - diff --git a/source/libs/lua52/lua52-src/src/lobject.h b/source/libs/lua52/lua52-src/src/lobject.h deleted file mode 100644 index bc0bb69f1..000000000 --- a/source/libs/lua52/lua52-src/src/lobject.h +++ /dev/null @@ -1,607 +0,0 @@ -/* -** $Id: lobject.h,v 2.71.1.2 2014/05/07 14:14:58 roberto Exp $ -** Type definitions for Lua objects -** See Copyright Notice in lua.h -*/ - - -#ifndef lobject_h -#define lobject_h - - -#include <stdarg.h> - - -#include "llimits.h" -#include "lua.h" - - -/* -** Extra tags for non-values -*/ -#define LUA_TPROTO LUA_NUMTAGS -#define LUA_TUPVAL (LUA_NUMTAGS+1) -#define LUA_TDEADKEY (LUA_NUMTAGS+2) - -/* -** number of all possible tags (including LUA_TNONE but excluding DEADKEY) -*/ -#define LUA_TOTALTAGS (LUA_TUPVAL+2) - - -/* -** tags for Tagged Values have the following use of bits: -** bits 0-3: actual tag (a LUA_T* value) -** bits 4-5: variant bits -** bit 6: whether value is collectable -*/ - -#define VARBITS (3 << 4) - - -/* -** LUA_TFUNCTION variants: -** 0 - Lua function -** 1 - light C function -** 2 - regular C function (closure) -*/ - -/* Variant tags for functions */ -#define LUA_TLCL (LUA_TFUNCTION | (0 << 4)) /* Lua closure */ -#define LUA_TLCF (LUA_TFUNCTION | (1 << 4)) /* light C function */ -#define LUA_TCCL (LUA_TFUNCTION | (2 << 4)) /* C closure */ - - -/* Variant tags for strings */ -#define LUA_TSHRSTR (LUA_TSTRING | (0 << 4)) /* short strings */ -#define LUA_TLNGSTR (LUA_TSTRING | (1 << 4)) /* long strings */ - - -/* Bit mark for collectable types */ -#define BIT_ISCOLLECTABLE (1 << 6) - -/* mark a tag as collectable */ -#define ctb(t) ((t) | BIT_ISCOLLECTABLE) - - -/* -** Union of all collectable objects -*/ -typedef union GCObject GCObject; - - -/* -** Common Header for all collectable objects (in macro form, to be -** included in other objects) -*/ -#define CommonHeader GCObject *next; lu_byte tt; lu_byte marked - - -/* -** Common header in struct form -*/ -typedef struct GCheader { - CommonHeader; -} GCheader; - - - -/* -** Union of all Lua values -*/ -typedef union Value Value; - - -#define numfield lua_Number n; /* numbers */ - - - -/* -** Tagged Values. This is the basic representation of values in Lua, -** an actual value plus a tag with its type. -*/ - -#define TValuefields Value value_; int tt_ - -typedef struct lua_TValue TValue; - - -/* macro defining a nil value */ -#define NILCONSTANT {NULL}, LUA_TNIL - - -#define val_(o) ((o)->value_) -#define num_(o) (val_(o).n) - - -/* raw type tag of a TValue */ -#define rttype(o) ((o)->tt_) - -/* tag with no variants (bits 0-3) */ -#define novariant(x) ((x) & 0x0F) - -/* type tag of a TValue (bits 0-3 for tags + variant bits 4-5) */ -#define ttype(o) (rttype(o) & 0x3F) - -/* type tag of a TValue with no variants (bits 0-3) */ -#define ttypenv(o) (novariant(rttype(o))) - - -/* Macros to test type */ -#define checktag(o,t) (rttype(o) == (t)) -#define checktype(o,t) (ttypenv(o) == (t)) -#define ttisnumber(o) checktag((o), LUA_TNUMBER) -#define ttisnil(o) checktag((o), LUA_TNIL) -#define ttisboolean(o) checktag((o), LUA_TBOOLEAN) -#define ttislightuserdata(o) checktag((o), LUA_TLIGHTUSERDATA) -#define ttisstring(o) checktype((o), LUA_TSTRING) -#define ttisshrstring(o) checktag((o), ctb(LUA_TSHRSTR)) -#define ttislngstring(o) checktag((o), ctb(LUA_TLNGSTR)) -#define ttistable(o) checktag((o), ctb(LUA_TTABLE)) -#define ttisfunction(o) checktype(o, LUA_TFUNCTION) -#define ttisclosure(o) ((rttype(o) & 0x1F) == LUA_TFUNCTION) -#define ttisCclosure(o) checktag((o), ctb(LUA_TCCL)) -#define ttisLclosure(o) checktag((o), ctb(LUA_TLCL)) -#define ttislcf(o) checktag((o), LUA_TLCF) -#define ttisuserdata(o) checktag((o), ctb(LUA_TUSERDATA)) -#define ttisthread(o) checktag((o), ctb(LUA_TTHREAD)) -#define ttisdeadkey(o) checktag((o), LUA_TDEADKEY) - -#define ttisequal(o1,o2) (rttype(o1) == rttype(o2)) - -/* Macros to access values */ -#define nvalue(o) check_exp(ttisnumber(o), num_(o)) -#define gcvalue(o) check_exp(iscollectable(o), val_(o).gc) -#define pvalue(o) check_exp(ttislightuserdata(o), val_(o).p) -#define rawtsvalue(o) check_exp(ttisstring(o), &val_(o).gc->ts) -#define tsvalue(o) (&rawtsvalue(o)->tsv) -#define rawuvalue(o) check_exp(ttisuserdata(o), &val_(o).gc->u) -#define uvalue(o) (&rawuvalue(o)->uv) -#define clvalue(o) check_exp(ttisclosure(o), &val_(o).gc->cl) -#define clLvalue(o) check_exp(ttisLclosure(o), &val_(o).gc->cl.l) -#define clCvalue(o) check_exp(ttisCclosure(o), &val_(o).gc->cl.c) -#define fvalue(o) check_exp(ttislcf(o), val_(o).f) -#define hvalue(o) check_exp(ttistable(o), &val_(o).gc->h) -#define bvalue(o) check_exp(ttisboolean(o), val_(o).b) -#define thvalue(o) check_exp(ttisthread(o), &val_(o).gc->th) -/* a dead value may get the 'gc' field, but cannot access its contents */ -#define deadvalue(o) check_exp(ttisdeadkey(o), cast(void *, val_(o).gc)) - -#define l_isfalse(o) (ttisnil(o) || (ttisboolean(o) && bvalue(o) == 0)) - - -#define iscollectable(o) (rttype(o) & BIT_ISCOLLECTABLE) - - -/* Macros for internal tests */ -#define righttt(obj) (ttype(obj) == gcvalue(obj)->gch.tt) - -#define checkliveness(g,obj) \ - lua_longassert(!iscollectable(obj) || \ - (righttt(obj) && !isdead(g,gcvalue(obj)))) - - -/* Macros to set values */ -#define settt_(o,t) ((o)->tt_=(t)) - -#define setnvalue(obj,x) \ - { TValue *io=(obj); num_(io)=(x); settt_(io, LUA_TNUMBER); } - -#define setnilvalue(obj) settt_(obj, LUA_TNIL) - -#define setfvalue(obj,x) \ - { TValue *io=(obj); val_(io).f=(x); settt_(io, LUA_TLCF); } - -#define setpvalue(obj,x) \ - { TValue *io=(obj); val_(io).p=(x); settt_(io, LUA_TLIGHTUSERDATA); } - -#define setbvalue(obj,x) \ - { TValue *io=(obj); val_(io).b=(x); settt_(io, LUA_TBOOLEAN); } - -#define setgcovalue(L,obj,x) \ - { TValue *io=(obj); GCObject *i_g=(x); \ - val_(io).gc=i_g; settt_(io, ctb(gch(i_g)->tt)); } - -#define setsvalue(L,obj,x) \ - { TValue *io=(obj); \ - TString *x_ = (x); \ - val_(io).gc=cast(GCObject *, x_); settt_(io, ctb(x_->tsv.tt)); \ - checkliveness(G(L),io); } - -#define setuvalue(L,obj,x) \ - { TValue *io=(obj); \ - val_(io).gc=cast(GCObject *, (x)); settt_(io, ctb(LUA_TUSERDATA)); \ - checkliveness(G(L),io); } - -#define setthvalue(L,obj,x) \ - { TValue *io=(obj); \ - val_(io).gc=cast(GCObject *, (x)); settt_(io, ctb(LUA_TTHREAD)); \ - checkliveness(G(L),io); } - -#define setclLvalue(L,obj,x) \ - { TValue *io=(obj); \ - val_(io).gc=cast(GCObject *, (x)); settt_(io, ctb(LUA_TLCL)); \ - checkliveness(G(L),io); } - -#define setclCvalue(L,obj,x) \ - { TValue *io=(obj); \ - val_(io).gc=cast(GCObject *, (x)); settt_(io, ctb(LUA_TCCL)); \ - checkliveness(G(L),io); } - -#define sethvalue(L,obj,x) \ - { TValue *io=(obj); \ - val_(io).gc=cast(GCObject *, (x)); settt_(io, ctb(LUA_TTABLE)); \ - checkliveness(G(L),io); } - -#define setdeadvalue(obj) settt_(obj, LUA_TDEADKEY) - - - -#define setobj(L,obj1,obj2) \ - { const TValue *io2=(obj2); TValue *io1=(obj1); \ - io1->value_ = io2->value_; io1->tt_ = io2->tt_; \ - checkliveness(G(L),io1); } - - -/* -** different types of assignments, according to destination -*/ - -/* from stack to (same) stack */ -#define setobjs2s setobj -/* to stack (not from same stack) */ -#define setobj2s setobj -#define setsvalue2s setsvalue -#define sethvalue2s sethvalue -#define setptvalue2s setptvalue -/* from table to same table */ -#define setobjt2t setobj -/* to table */ -#define setobj2t setobj -/* to new object */ -#define setobj2n setobj -#define setsvalue2n setsvalue - - -/* check whether a number is valid (useful only for NaN trick) */ -#define luai_checknum(L,o,c) { /* empty */ } - - -/* -** {====================================================== -** NaN Trick -** ======================================================= -*/ -#if defined(LUA_NANTRICK) - -/* -** numbers are represented in the 'd_' field. All other values have the -** value (NNMARK | tag) in 'tt__'. A number with such pattern would be -** a "signaled NaN", which is never generated by regular operations by -** the CPU (nor by 'strtod') -*/ - -/* allows for external implementation for part of the trick */ -#if !defined(NNMARK) /* { */ - - -#if !defined(LUA_IEEEENDIAN) -#error option 'LUA_NANTRICK' needs 'LUA_IEEEENDIAN' -#endif - - -#define NNMARK 0x7FF7A500 -#define NNMASK 0x7FFFFF00 - -#undef TValuefields -#undef NILCONSTANT - -#if (LUA_IEEEENDIAN == 0) /* { */ - -/* little endian */ -#define TValuefields \ - union { struct { Value v__; int tt__; } i; double d__; } u -#define NILCONSTANT {{{NULL}, tag2tt(LUA_TNIL)}} -/* field-access macros */ -#define v_(o) ((o)->u.i.v__) -#define d_(o) ((o)->u.d__) -#define tt_(o) ((o)->u.i.tt__) - -#else /* }{ */ - -/* big endian */ -#define TValuefields \ - union { struct { int tt__; Value v__; } i; double d__; } u -#define NILCONSTANT {{tag2tt(LUA_TNIL), {NULL}}} -/* field-access macros */ -#define v_(o) ((o)->u.i.v__) -#define d_(o) ((o)->u.d__) -#define tt_(o) ((o)->u.i.tt__) - -#endif /* } */ - -#endif /* } */ - - -/* correspondence with standard representation */ -#undef val_ -#define val_(o) v_(o) -#undef num_ -#define num_(o) d_(o) - - -#undef numfield -#define numfield /* no such field; numbers are the entire struct */ - -/* basic check to distinguish numbers from non-numbers */ -#undef ttisnumber -#define ttisnumber(o) ((tt_(o) & NNMASK) != NNMARK) - -#define tag2tt(t) (NNMARK | (t)) - -#undef rttype -#define rttype(o) (ttisnumber(o) ? LUA_TNUMBER : tt_(o) & 0xff) - -#undef settt_ -#define settt_(o,t) (tt_(o) = tag2tt(t)) - -#undef setnvalue -#define setnvalue(obj,x) \ - { TValue *io_=(obj); num_(io_)=(x); lua_assert(ttisnumber(io_)); } - -#undef setobj -#define setobj(L,obj1,obj2) \ - { const TValue *o2_=(obj2); TValue *o1_=(obj1); \ - o1_->u = o2_->u; \ - checkliveness(G(L),o1_); } - - -/* -** these redefinitions are not mandatory, but these forms are more efficient -*/ - -#undef checktag -#undef checktype -#define checktag(o,t) (tt_(o) == tag2tt(t)) -#define checktype(o,t) (ctb(tt_(o) | VARBITS) == ctb(tag2tt(t) | VARBITS)) - -#undef ttisequal -#define ttisequal(o1,o2) \ - (ttisnumber(o1) ? ttisnumber(o2) : (tt_(o1) == tt_(o2))) - - -#undef luai_checknum -#define luai_checknum(L,o,c) { if (!ttisnumber(o)) c; } - -#endif -/* }====================================================== */ - - - -/* -** {====================================================== -** types and prototypes -** ======================================================= -*/ - - -union Value { - GCObject *gc; /* collectable objects */ - void *p; /* light userdata */ - int b; /* booleans */ - lua_CFunction f; /* light C functions */ - numfield /* numbers */ -}; - - -struct lua_TValue { - TValuefields; -}; - - -typedef TValue *StkId; /* index to stack elements */ - - - - -/* -** Header for string value; string bytes follow the end of this structure -*/ -typedef union TString { - L_Umaxalign dummy; /* ensures maximum alignment for strings */ - struct { - CommonHeader; - lu_byte extra; /* reserved words for short strings; "has hash" for longs */ - unsigned int hash; - size_t len; /* number of characters in string */ - } tsv; -} TString; - - -/* get the actual string (array of bytes) from a TString */ -#define getstr(ts) cast(const char *, (ts) + 1) - -/* get the actual string (array of bytes) from a Lua value */ -#define svalue(o) getstr(rawtsvalue(o)) - - -/* -** Header for userdata; memory area follows the end of this structure -*/ -typedef union Udata { - L_Umaxalign dummy; /* ensures maximum alignment for `local' udata */ - struct { - CommonHeader; - struct Table *metatable; - struct Table *env; - size_t len; /* number of bytes */ - } uv; -} Udata; - - - -/* -** Description of an upvalue for function prototypes -*/ -typedef struct Upvaldesc { - TString *name; /* upvalue name (for debug information) */ - lu_byte instack; /* whether it is in stack */ - lu_byte idx; /* index of upvalue (in stack or in outer function's list) */ -} Upvaldesc; - - -/* -** Description of a local variable for function prototypes -** (used for debug information) -*/ -typedef struct LocVar { - TString *varname; - int startpc; /* first point where variable is active */ - int endpc; /* first point where variable is dead */ -} LocVar; - - -/* -** Function Prototypes -*/ -typedef struct Proto { - CommonHeader; - TValue *k; /* constants used by the function */ - Instruction *code; - struct Proto **p; /* functions defined inside the function */ - int *lineinfo; /* map from opcodes to source lines (debug information) */ - LocVar *locvars; /* information about local variables (debug information) */ - Upvaldesc *upvalues; /* upvalue information */ - union Closure *cache; /* last created closure with this prototype */ - TString *source; /* used for debug information */ - int sizeupvalues; /* size of 'upvalues' */ - int sizek; /* size of `k' */ - int sizecode; - int sizelineinfo; - int sizep; /* size of `p' */ - int sizelocvars; - int linedefined; - int lastlinedefined; - GCObject *gclist; - lu_byte numparams; /* number of fixed parameters */ - lu_byte is_vararg; - lu_byte maxstacksize; /* maximum stack used by this function */ -} Proto; - - - -/* -** Lua Upvalues -*/ -typedef struct UpVal { - CommonHeader; - TValue *v; /* points to stack or to its own value */ - union { - TValue value; /* the value (when closed) */ - struct { /* double linked list (when open) */ - struct UpVal *prev; - struct UpVal *next; - } l; - } u; -} UpVal; - - -/* -** Closures -*/ - -#define ClosureHeader \ - CommonHeader; lu_byte nupvalues; GCObject *gclist - -typedef struct CClosure { - ClosureHeader; - lua_CFunction f; - TValue upvalue[1]; /* list of upvalues */ -} CClosure; - - -typedef struct LClosure { - ClosureHeader; - struct Proto *p; - UpVal *upvals[1]; /* list of upvalues */ -} LClosure; - - -typedef union Closure { - CClosure c; - LClosure l; -} Closure; - - -#define isLfunction(o) ttisLclosure(o) - -#define getproto(o) (clLvalue(o)->p) - - -/* -** Tables -*/ - -typedef union TKey { - struct { - TValuefields; - struct Node *next; /* for chaining */ - } nk; - TValue tvk; -} TKey; - - -typedef struct Node { - TValue i_val; - TKey i_key; -} Node; - - -typedef struct Table { - CommonHeader; - lu_byte flags; /* 1<<p means tagmethod(p) is not present */ - lu_byte lsizenode; /* log2 of size of `node' array */ - int sizearray; /* size of `array' array */ - TValue *array; /* array part */ - Node *node; - Node *lastfree; /* any free position is before this position */ - struct Table *metatable; - GCObject *gclist; -} Table; - - - -/* -** `module' operation for hashing (size is always a power of 2) -*/ -#define lmod(s,size) \ - (check_exp((size&(size-1))==0, (cast(int, (s) & ((size)-1))))) - - -#define twoto(x) (1<<(x)) -#define sizenode(t) (twoto((t)->lsizenode)) - - -/* -** (address of) a fixed nil value -*/ -#define luaO_nilobject (&luaO_nilobject_) - - -LUAI_DDEC const TValue luaO_nilobject_; - - -LUAI_FUNC int luaO_int2fb (unsigned int x); -LUAI_FUNC int luaO_fb2int (int x); -LUAI_FUNC int luaO_ceillog2 (unsigned int x); -LUAI_FUNC lua_Number luaO_arith (int op, lua_Number v1, lua_Number v2); -LUAI_FUNC int luaO_str2d (const char *s, size_t len, lua_Number *result); -LUAI_FUNC int luaO_hexavalue (int c); -LUAI_FUNC const char *luaO_pushvfstring (lua_State *L, const char *fmt, - va_list argp); -LUAI_FUNC const char *luaO_pushfstring (lua_State *L, const char *fmt, ...); -LUAI_FUNC void luaO_chunkid (char *out, const char *source, size_t len); - - -#endif - diff --git a/source/libs/lua52/lua52-src/src/lopcodes.c b/source/libs/lua52/lua52-src/src/lopcodes.c deleted file mode 100644 index 4190dc762..000000000 --- a/source/libs/lua52/lua52-src/src/lopcodes.c +++ /dev/null @@ -1,107 +0,0 @@ -/* -** $Id: lopcodes.c,v 1.49.1.1 2013/04/12 18:48:47 roberto Exp $ -** Opcodes for Lua virtual machine -** See Copyright Notice in lua.h -*/ - - -#define lopcodes_c -#define LUA_CORE - - -#include "lopcodes.h" - - -/* ORDER OP */ - -LUAI_DDEF const char *const luaP_opnames[NUM_OPCODES+1] = { - "MOVE", - "LOADK", - "LOADKX", - "LOADBOOL", - "LOADNIL", - "GETUPVAL", - "GETTABUP", - "GETTABLE", - "SETTABUP", - "SETUPVAL", - "SETTABLE", - "NEWTABLE", - "SELF", - "ADD", - "SUB", - "MUL", - "DIV", - "MOD", - "POW", - "UNM", - "NOT", - "LEN", - "CONCAT", - "JMP", - "EQ", - "LT", - "LE", - "TEST", - "TESTSET", - "CALL", - "TAILCALL", - "RETURN", - "FORLOOP", - "FORPREP", - "TFORCALL", - "TFORLOOP", - "SETLIST", - "CLOSURE", - "VARARG", - "EXTRAARG", - NULL -}; - - -#define opmode(t,a,b,c,m) (((t)<<7) | ((a)<<6) | ((b)<<4) | ((c)<<2) | (m)) - -LUAI_DDEF const lu_byte luaP_opmodes[NUM_OPCODES] = { -/* T A B C mode opcode */ - opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_MOVE */ - ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_LOADK */ - ,opmode(0, 1, OpArgN, OpArgN, iABx) /* OP_LOADKX */ - ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_LOADBOOL */ - ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_LOADNIL */ - ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_GETUPVAL */ - ,opmode(0, 1, OpArgU, OpArgK, iABC) /* OP_GETTABUP */ - ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_GETTABLE */ - ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABUP */ - ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_SETUPVAL */ - ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABLE */ - ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_NEWTABLE */ - ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_SELF */ - ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_ADD */ - ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_SUB */ - ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MUL */ - ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_DIV */ - ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MOD */ - ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_POW */ - ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_UNM */ - ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_NOT */ - ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_LEN */ - ,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_CONCAT */ - ,opmode(0, 0, OpArgR, OpArgN, iAsBx) /* OP_JMP */ - ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_EQ */ - ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LT */ - ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LE */ - ,opmode(1, 0, OpArgN, OpArgU, iABC) /* OP_TEST */ - ,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TESTSET */ - ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_CALL */ - ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_TAILCALL */ - ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_RETURN */ - ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORLOOP */ - ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORPREP */ - ,opmode(0, 0, OpArgN, OpArgU, iABC) /* OP_TFORCALL */ - ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_TFORLOOP */ - ,opmode(0, 0, OpArgU, OpArgU, iABC) /* OP_SETLIST */ - ,opmode(0, 1, OpArgU, OpArgN, iABx) /* OP_CLOSURE */ - ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_VARARG */ - ,opmode(0, 0, OpArgU, OpArgU, iAx) /* OP_EXTRAARG */ -}; - diff --git a/source/libs/lua52/lua52-src/src/lopcodes.h b/source/libs/lua52/lua52-src/src/lopcodes.h deleted file mode 100644 index c80175766..000000000 --- a/source/libs/lua52/lua52-src/src/lopcodes.h +++ /dev/null @@ -1,288 +0,0 @@ -/* -** $Id: lopcodes.h,v 1.142.1.2 2014/10/20 18:32:09 roberto Exp $ -** Opcodes for Lua virtual machine -** See Copyright Notice in lua.h -*/ - -#ifndef lopcodes_h -#define lopcodes_h - -#include "llimits.h" - - -/*=========================================================================== - We assume that instructions are unsigned numbers. - All instructions have an opcode in the first 6 bits. - Instructions can have the following fields: - `A' : 8 bits - `B' : 9 bits - `C' : 9 bits - 'Ax' : 26 bits ('A', 'B', and 'C' together) - `Bx' : 18 bits (`B' and `C' together) - `sBx' : signed Bx - - A signed argument is represented in excess K; that is, the number - value is the unsigned value minus K. K is exactly the maximum value - for that argument (so that -max is represented by 0, and +max is - represented by 2*max), which is half the maximum for the corresponding - unsigned argument. -===========================================================================*/ - - -enum OpMode {iABC, iABx, iAsBx, iAx}; /* basic instruction format */ - - -/* -** size and position of opcode arguments. -*/ -#define SIZE_C 9 -#define SIZE_B 9 -#define SIZE_Bx (SIZE_C + SIZE_B) -#define SIZE_A 8 -#define SIZE_Ax (SIZE_C + SIZE_B + SIZE_A) - -#define SIZE_OP 6 - -#define POS_OP 0 -#define POS_A (POS_OP + SIZE_OP) -#define POS_C (POS_A + SIZE_A) -#define POS_B (POS_C + SIZE_C) -#define POS_Bx POS_C -#define POS_Ax POS_A - - -/* -** limits for opcode arguments. -** we use (signed) int to manipulate most arguments, -** so they must fit in LUAI_BITSINT-1 bits (-1 for sign) -*/ -#if SIZE_Bx < LUAI_BITSINT-1 -#define MAXARG_Bx ((1<<SIZE_Bx)-1) -#define MAXARG_sBx (MAXARG_Bx>>1) /* `sBx' is signed */ -#else -#define MAXARG_Bx MAX_INT -#define MAXARG_sBx MAX_INT -#endif - -#if SIZE_Ax < LUAI_BITSINT-1 -#define MAXARG_Ax ((1<<SIZE_Ax)-1) -#else -#define MAXARG_Ax MAX_INT -#endif - - -#define MAXARG_A ((1<<SIZE_A)-1) -#define MAXARG_B ((1<<SIZE_B)-1) -#define MAXARG_C ((1<<SIZE_C)-1) - - -/* creates a mask with `n' 1 bits at position `p' */ -#define MASK1(n,p) ((~((~(Instruction)0)<<(n)))<<(p)) - -/* creates a mask with `n' 0 bits at position `p' */ -#define MASK0(n,p) (~MASK1(n,p)) - -/* -** the following macros help to manipulate instructions -*/ - -#define GET_OPCODE(i) (cast(OpCode, ((i)>>POS_OP) & MASK1(SIZE_OP,0))) -#define SET_OPCODE(i,o) ((i) = (((i)&MASK0(SIZE_OP,POS_OP)) | \ - ((cast(Instruction, o)<<POS_OP)&MASK1(SIZE_OP,POS_OP)))) - -#define getarg(i,pos,size) (cast(int, ((i)>>pos) & MASK1(size,0))) -#define setarg(i,v,pos,size) ((i) = (((i)&MASK0(size,pos)) | \ - ((cast(Instruction, v)<<pos)&MASK1(size,pos)))) - -#define GETARG_A(i) getarg(i, POS_A, SIZE_A) -#define SETARG_A(i,v) setarg(i, v, POS_A, SIZE_A) - -#define GETARG_B(i) getarg(i, POS_B, SIZE_B) -#define SETARG_B(i,v) setarg(i, v, POS_B, SIZE_B) - -#define GETARG_C(i) getarg(i, POS_C, SIZE_C) -#define SETARG_C(i,v) setarg(i, v, POS_C, SIZE_C) - -#define GETARG_Bx(i) getarg(i, POS_Bx, SIZE_Bx) -#define SETARG_Bx(i,v) setarg(i, v, POS_Bx, SIZE_Bx) - -#define GETARG_Ax(i) getarg(i, POS_Ax, SIZE_Ax) -#define SETARG_Ax(i,v) setarg(i, v, POS_Ax, SIZE_Ax) - -#define GETARG_sBx(i) (GETARG_Bx(i)-MAXARG_sBx) -#define SETARG_sBx(i,b) SETARG_Bx((i),cast(unsigned int, (b)+MAXARG_sBx)) - - -#define CREATE_ABC(o,a,b,c) ((cast(Instruction, o)<<POS_OP) \ - | (cast(Instruction, a)<<POS_A) \ - | (cast(Instruction, b)<<POS_B) \ - | (cast(Instruction, c)<<POS_C)) - -#define CREATE_ABx(o,a,bc) ((cast(Instruction, o)<<POS_OP) \ - | (cast(Instruction, a)<<POS_A) \ - | (cast(Instruction, bc)<<POS_Bx)) - -#define CREATE_Ax(o,a) ((cast(Instruction, o)<<POS_OP) \ - | (cast(Instruction, a)<<POS_Ax)) - - -/* -** Macros to operate RK indices -*/ - -/* this bit 1 means constant (0 means register) */ -#define BITRK (1 << (SIZE_B - 1)) - -/* test whether value is a constant */ -#define ISK(x) ((x) & BITRK) - -/* gets the index of the constant */ -#define INDEXK(r) ((int)(r) & ~BITRK) - -#define MAXINDEXRK (BITRK - 1) - -/* code a constant index as a RK value */ -#define RKASK(x) ((x) | BITRK) - - -/* -** invalid register that fits in 8 bits -*/ -#define NO_REG MAXARG_A - - -/* -** R(x) - register -** Kst(x) - constant (in constant table) -** RK(x) == if ISK(x) then Kst(INDEXK(x)) else R(x) -*/ - - -/* -** grep "ORDER OP" if you change these enums -*/ - -typedef enum { -/*---------------------------------------------------------------------- -name args description -------------------------------------------------------------------------*/ -OP_MOVE,/* A B R(A) := R(B) */ -OP_LOADK,/* A Bx R(A) := Kst(Bx) */ -OP_LOADKX,/* A R(A) := Kst(extra arg) */ -OP_LOADBOOL,/* A B C R(A) := (Bool)B; if (C) pc++ */ -OP_LOADNIL,/* A B R(A), R(A+1), ..., R(A+B) := nil */ -OP_GETUPVAL,/* A B R(A) := UpValue[B] */ - -OP_GETTABUP,/* A B C R(A) := UpValue[B][RK(C)] */ -OP_GETTABLE,/* A B C R(A) := R(B)[RK(C)] */ - -OP_SETTABUP,/* A B C UpValue[A][RK(B)] := RK(C) */ -OP_SETUPVAL,/* A B UpValue[B] := R(A) */ -OP_SETTABLE,/* A B C R(A)[RK(B)] := RK(C) */ - -OP_NEWTABLE,/* A B C R(A) := {} (size = B,C) */ - -OP_SELF,/* A B C R(A+1) := R(B); R(A) := R(B)[RK(C)] */ - -OP_ADD,/* A B C R(A) := RK(B) + RK(C) */ -OP_SUB,/* A B C R(A) := RK(B) - RK(C) */ -OP_MUL,/* A B C R(A) := RK(B) * RK(C) */ -OP_DIV,/* A B C R(A) := RK(B) / RK(C) */ -OP_MOD,/* A B C R(A) := RK(B) % RK(C) */ -OP_POW,/* A B C R(A) := RK(B) ^ RK(C) */ -OP_UNM,/* A B R(A) := -R(B) */ -OP_NOT,/* A B R(A) := not R(B) */ -OP_LEN,/* A B R(A) := length of R(B) */ - -OP_CONCAT,/* A B C R(A) := R(B).. ... ..R(C) */ - -OP_JMP,/* A sBx pc+=sBx; if (A) close all upvalues >= R(A - 1) */ -OP_EQ,/* A B C if ((RK(B) == RK(C)) ~= A) then pc++ */ -OP_LT,/* A B C if ((RK(B) < RK(C)) ~= A) then pc++ */ -OP_LE,/* A B C if ((RK(B) <= RK(C)) ~= A) then pc++ */ - -OP_TEST,/* A C if not (R(A) <=> C) then pc++ */ -OP_TESTSET,/* A B C if (R(B) <=> C) then R(A) := R(B) else pc++ */ - -OP_CALL,/* A B C R(A), ... ,R(A+C-2) := R(A)(R(A+1), ... ,R(A+B-1)) */ -OP_TAILCALL,/* A B C return R(A)(R(A+1), ... ,R(A+B-1)) */ -OP_RETURN,/* A B return R(A), ... ,R(A+B-2) (see note) */ - -OP_FORLOOP,/* A sBx R(A)+=R(A+2); - if R(A) <?= R(A+1) then { pc+=sBx; R(A+3)=R(A) }*/ -OP_FORPREP,/* A sBx R(A)-=R(A+2); pc+=sBx */ - -OP_TFORCALL,/* A C R(A+3), ... ,R(A+2+C) := R(A)(R(A+1), R(A+2)); */ -OP_TFORLOOP,/* A sBx if R(A+1) ~= nil then { R(A)=R(A+1); pc += sBx }*/ - -OP_SETLIST,/* A B C R(A)[(C-1)*FPF+i] := R(A+i), 1 <= i <= B */ - -OP_CLOSURE,/* A Bx R(A) := closure(KPROTO[Bx]) */ - -OP_VARARG,/* A B R(A), R(A+1), ..., R(A+B-2) = vararg */ - -OP_EXTRAARG/* Ax extra (larger) argument for previous opcode */ -} OpCode; - - -#define NUM_OPCODES (cast(int, OP_EXTRAARG) + 1) - - - -/*=========================================================================== - Notes: - (*) In OP_CALL, if (B == 0) then B = top. If (C == 0), then `top' is - set to last_result+1, so next open instruction (OP_CALL, OP_RETURN, - OP_SETLIST) may use `top'. - - (*) In OP_VARARG, if (B == 0) then use actual number of varargs and - set top (like in OP_CALL with C == 0). - - (*) In OP_RETURN, if (B == 0) then return up to `top'. - - (*) In OP_SETLIST, if (B == 0) then B = `top'; if (C == 0) then next - 'instruction' is EXTRAARG(real C). - - (*) In OP_LOADKX, the next 'instruction' is always EXTRAARG. - - (*) For comparisons, A specifies what condition the test should accept - (true or false). - - (*) All `skips' (pc++) assume that next instruction is a jump. - -===========================================================================*/ - - -/* -** masks for instruction properties. The format is: -** bits 0-1: op mode -** bits 2-3: C arg mode -** bits 4-5: B arg mode -** bit 6: instruction set register A -** bit 7: operator is a test (next instruction must be a jump) -*/ - -enum OpArgMask { - OpArgN, /* argument is not used */ - OpArgU, /* argument is used */ - OpArgR, /* argument is a register or a jump offset */ - OpArgK /* argument is a constant or register/constant */ -}; - -LUA_API const lu_byte luaP_opmodes[NUM_OPCODES]; - -#define getOpMode(m) (cast(enum OpMode, luaP_opmodes[m] & 3)) -#define getBMode(m) (cast(enum OpArgMask, (luaP_opmodes[m] >> 4) & 3)) -#define getCMode(m) (cast(enum OpArgMask, (luaP_opmodes[m] >> 2) & 3)) -#define testAMode(m) (luaP_opmodes[m] & (1 << 6)) -#define testTMode(m) (luaP_opmodes[m] & (1 << 7)) - - -LUA_API const char *const luaP_opnames[NUM_OPCODES+1]; /* opcode names */ - - -/* number of list items to accumulate before a SETLIST instruction */ -#define LFIELDS_PER_FLUSH 50 - - -#endif diff --git a/source/libs/lua52/lua52-src/src/loslib.c b/source/libs/lua52/lua52-src/src/loslib.c deleted file mode 100644 index 052ba1744..000000000 --- a/source/libs/lua52/lua52-src/src/loslib.c +++ /dev/null @@ -1,323 +0,0 @@ -/* -** $Id: loslib.c,v 1.40.1.1 2013/04/12 18:48:47 roberto Exp $ -** Standard Operating System library -** See Copyright Notice in lua.h -*/ - - -#include <errno.h> -#include <locale.h> -#include <stdlib.h> -#include <string.h> -#include <time.h> - -#define loslib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -/* -** list of valid conversion specifiers for the 'strftime' function -*/ -#if !defined(LUA_STRFTIMEOPTIONS) - -#if !defined(LUA_USE_POSIX) -#define LUA_STRFTIMEOPTIONS { "aAbBcdHIjmMpSUwWxXyYz%", "" } -#else -#define LUA_STRFTIMEOPTIONS \ - { "aAbBcCdDeFgGhHIjmMnprRStTuUVwWxXyYzZ%", "" \ - "", "E", "cCxXyY", \ - "O", "deHImMSuUVwWy" } -#endif - -#endif - - - -/* -** By default, Lua uses tmpnam except when POSIX is available, where it -** uses mkstemp. -*/ -#if defined(LUA_USE_MKSTEMP) -#include <unistd.h> -#define LUA_TMPNAMBUFSIZE 32 -#define lua_tmpnam(b,e) { \ - strcpy(b, "/tmp/lua_XXXXXX"); \ - e = mkstemp(b); \ - if (e != -1) close(e); \ - e = (e == -1); } - -#elif !defined(lua_tmpnam) - -#define LUA_TMPNAMBUFSIZE L_tmpnam -#define lua_tmpnam(b,e) { e = (tmpnam(b) == NULL); } - -#endif - - -/* -** By default, Lua uses gmtime/localtime, except when POSIX is available, -** where it uses gmtime_r/localtime_r -*/ -#if defined(LUA_USE_GMTIME_R) - -#define l_gmtime(t,r) gmtime_r(t,r) -#define l_localtime(t,r) localtime_r(t,r) - -#elif !defined(l_gmtime) - -#define l_gmtime(t,r) ((void)r, gmtime(t)) -#define l_localtime(t,r) ((void)r, localtime(t)) - -#endif - - - -static int os_execute (lua_State *L) { - const char *cmd = luaL_optstring(L, 1, NULL); - int stat = system(cmd); - if (cmd != NULL) - return luaL_execresult(L, stat); - else { - lua_pushboolean(L, stat); /* true if there is a shell */ - return 1; - } -} - - -static int os_remove (lua_State *L) { - const char *filename = luaL_checkstring(L, 1); - return luaL_fileresult(L, remove(filename) == 0, filename); -} - - -static int os_rename (lua_State *L) { - const char *fromname = luaL_checkstring(L, 1); - const char *toname = luaL_checkstring(L, 2); - return luaL_fileresult(L, rename(fromname, toname) == 0, NULL); -} - - -static int os_tmpname (lua_State *L) { - char buff[LUA_TMPNAMBUFSIZE]; - int err; - lua_tmpnam(buff, err); - if (err) - return luaL_error(L, "unable to generate a unique filename"); - lua_pushstring(L, buff); - return 1; -} - - -static int os_getenv (lua_State *L) { - lua_pushstring(L, getenv(luaL_checkstring(L, 1))); /* if NULL push nil */ - return 1; -} - - -static int os_clock (lua_State *L) { - lua_pushnumber(L, ((lua_Number)clock())/(lua_Number)CLOCKS_PER_SEC); - return 1; -} - - -/* -** {====================================================== -** Time/Date operations -** { year=%Y, month=%m, day=%d, hour=%H, min=%M, sec=%S, -** wday=%w+1, yday=%j, isdst=? } -** ======================================================= -*/ - -static void setfield (lua_State *L, const char *key, int value) { - lua_pushinteger(L, value); - lua_setfield(L, -2, key); -} - -static void setboolfield (lua_State *L, const char *key, int value) { - if (value < 0) /* undefined? */ - return; /* does not set field */ - lua_pushboolean(L, value); - lua_setfield(L, -2, key); -} - -static int getboolfield (lua_State *L, const char *key) { - int res; - lua_getfield(L, -1, key); - res = lua_isnil(L, -1) ? -1 : lua_toboolean(L, -1); - lua_pop(L, 1); - return res; -} - - -static int getfield (lua_State *L, const char *key, int d) { - int res, isnum; - lua_getfield(L, -1, key); - res = (int)lua_tointegerx(L, -1, &isnum); - if (!isnum) { - if (d < 0) - return luaL_error(L, "field " LUA_QS " missing in date table", key); - res = d; - } - lua_pop(L, 1); - return res; -} - - -static const char *checkoption (lua_State *L, const char *conv, char *buff) { - static const char *const options[] = LUA_STRFTIMEOPTIONS; - unsigned int i; - for (i = 0; i < sizeof(options)/sizeof(options[0]); i += 2) { - if (*conv != '\0' && strchr(options[i], *conv) != NULL) { - buff[1] = *conv; - if (*options[i + 1] == '\0') { /* one-char conversion specifier? */ - buff[2] = '\0'; /* end buffer */ - return conv + 1; - } - else if (*(conv + 1) != '\0' && - strchr(options[i + 1], *(conv + 1)) != NULL) { - buff[2] = *(conv + 1); /* valid two-char conversion specifier */ - buff[3] = '\0'; /* end buffer */ - return conv + 2; - } - } - } - luaL_argerror(L, 1, - lua_pushfstring(L, "invalid conversion specifier '%%%s'", conv)); - return conv; /* to avoid warnings */ -} - - -static int os_date (lua_State *L) { - const char *s = luaL_optstring(L, 1, "%c"); - time_t t = luaL_opt(L, (time_t)luaL_checknumber, 2, time(NULL)); - struct tm tmr, *stm; - if (*s == '!') { /* UTC? */ - stm = l_gmtime(&t, &tmr); - s++; /* skip `!' */ - } - else - stm = l_localtime(&t, &tmr); - if (stm == NULL) /* invalid date? */ - lua_pushnil(L); - else if (strcmp(s, "*t") == 0) { - lua_createtable(L, 0, 9); /* 9 = number of fields */ - setfield(L, "sec", stm->tm_sec); - setfield(L, "min", stm->tm_min); - setfield(L, "hour", stm->tm_hour); - setfield(L, "day", stm->tm_mday); - setfield(L, "month", stm->tm_mon+1); - setfield(L, "year", stm->tm_year+1900); - setfield(L, "wday", stm->tm_wday+1); - setfield(L, "yday", stm->tm_yday+1); - setboolfield(L, "isdst", stm->tm_isdst); - } - else { - char cc[4]; - luaL_Buffer b; - cc[0] = '%'; - luaL_buffinit(L, &b); - while (*s) { - if (*s != '%') /* no conversion specifier? */ - luaL_addchar(&b, *s++); - else { - size_t reslen; - char buff[200]; /* should be big enough for any conversion result */ - s = checkoption(L, s + 1, cc); - reslen = strftime(buff, sizeof(buff), cc, stm); - luaL_addlstring(&b, buff, reslen); - } - } - luaL_pushresult(&b); - } - return 1; -} - - -static int os_time (lua_State *L) { - time_t t; - if (lua_isnoneornil(L, 1)) /* called without args? */ - t = time(NULL); /* get current time */ - else { - struct tm ts; - luaL_checktype(L, 1, LUA_TTABLE); - lua_settop(L, 1); /* make sure table is at the top */ - ts.tm_sec = getfield(L, "sec", 0); - ts.tm_min = getfield(L, "min", 0); - ts.tm_hour = getfield(L, "hour", 12); - ts.tm_mday = getfield(L, "day", -1); - ts.tm_mon = getfield(L, "month", -1) - 1; - ts.tm_year = getfield(L, "year", -1) - 1900; - ts.tm_isdst = getboolfield(L, "isdst"); - t = mktime(&ts); - } - if (t == (time_t)(-1)) - lua_pushnil(L); - else - lua_pushnumber(L, (lua_Number)t); - return 1; -} - - -static int os_difftime (lua_State *L) { - lua_pushnumber(L, difftime((time_t)(luaL_checknumber(L, 1)), - (time_t)(luaL_optnumber(L, 2, 0)))); - return 1; -} - -/* }====================================================== */ - - -static int os_setlocale (lua_State *L) { - static const int cat[] = {LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY, - LC_NUMERIC, LC_TIME}; - static const char *const catnames[] = {"all", "collate", "ctype", "monetary", - "numeric", "time", NULL}; - const char *l = luaL_optstring(L, 1, NULL); - int op = luaL_checkoption(L, 2, "all", catnames); - lua_pushstring(L, setlocale(cat[op], l)); - return 1; -} - - -static int os_exit (lua_State *L) { - int status; - if (lua_isboolean(L, 1)) - status = (lua_toboolean(L, 1) ? EXIT_SUCCESS : EXIT_FAILURE); - else - status = luaL_optint(L, 1, EXIT_SUCCESS); - if (lua_toboolean(L, 2)) - lua_close(L); - if (L) exit(status); /* 'if' to avoid warnings for unreachable 'return' */ - return 0; -} - - -static const luaL_Reg syslib[] = { - {"clock", os_clock}, - {"date", os_date}, - {"difftime", os_difftime}, - {"execute", os_execute}, - {"exit", os_exit}, - {"getenv", os_getenv}, - {"remove", os_remove}, - {"rename", os_rename}, - {"setlocale", os_setlocale}, - {"time", os_time}, - {"tmpname", os_tmpname}, - {NULL, NULL} -}; - -/* }====================================================== */ - - - -LUAMOD_API int luaopen_os (lua_State *L) { - luaL_newlib(L, syslib); - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/lparser.c b/source/libs/lua52/lua52-src/src/lparser.c deleted file mode 100644 index 9e1a9ca2c..000000000 --- a/source/libs/lua52/lua52-src/src/lparser.c +++ /dev/null @@ -1,1638 +0,0 @@ -/* -** $Id: lparser.c,v 2.130.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lua Parser -** See Copyright Notice in lua.h -*/ - - -#include <string.h> - -#define lparser_c -#define LUA_CORE - -#include "lua.h" - -#include "lcode.h" -#include "ldebug.h" -#include "ldo.h" -#include "lfunc.h" -#include "llex.h" -#include "lmem.h" -#include "lobject.h" -#include "lopcodes.h" -#include "lparser.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" - - - -/* maximum number of local variables per function (must be smaller - than 250, due to the bytecode format) */ -#define MAXVARS 200 - - -#define hasmultret(k) ((k) == VCALL || (k) == VVARARG) - - - -/* -** nodes for block list (list of active blocks) -*/ -typedef struct BlockCnt { - struct BlockCnt *previous; /* chain */ - short firstlabel; /* index of first label in this block */ - short firstgoto; /* index of first pending goto in this block */ - lu_byte nactvar; /* # active locals outside the block */ - lu_byte upval; /* true if some variable in the block is an upvalue */ - lu_byte isloop; /* true if `block' is a loop */ -} BlockCnt; - - - -/* -** prototypes for recursive non-terminal functions -*/ -static void statement (LexState *ls); -static void expr (LexState *ls, expdesc *v); - - -static void anchor_token (LexState *ls) { - /* last token from outer function must be EOS */ - lua_assert(ls->fs != NULL || ls->t.token == TK_EOS); - if (ls->t.token == TK_NAME || ls->t.token == TK_STRING) { - TString *ts = ls->t.seminfo.ts; - luaX_newstring(ls, getstr(ts), ts->tsv.len); - } -} - - -/* semantic error */ -static l_noret semerror (LexState *ls, const char *msg) { - ls->t.token = 0; /* remove 'near to' from final message */ - luaX_syntaxerror(ls, msg); -} - - -static l_noret error_expected (LexState *ls, int token) { - luaX_syntaxerror(ls, - luaO_pushfstring(ls->L, "%s expected", luaX_token2str(ls, token))); -} - - -static l_noret errorlimit (FuncState *fs, int limit, const char *what) { - lua_State *L = fs->ls->L; - const char *msg; - int line = fs->f->linedefined; - const char *where = (line == 0) - ? "main function" - : luaO_pushfstring(L, "function at line %d", line); - msg = luaO_pushfstring(L, "too many %s (limit is %d) in %s", - what, limit, where); - luaX_syntaxerror(fs->ls, msg); -} - - -static void checklimit (FuncState *fs, int v, int l, const char *what) { - if (v > l) errorlimit(fs, l, what); -} - - -static int testnext (LexState *ls, int c) { - if (ls->t.token == c) { - luaX_next(ls); - return 1; - } - else return 0; -} - - -static void check (LexState *ls, int c) { - if (ls->t.token != c) - error_expected(ls, c); -} - - -static void checknext (LexState *ls, int c) { - check(ls, c); - luaX_next(ls); -} - - -#define check_condition(ls,c,msg) { if (!(c)) luaX_syntaxerror(ls, msg); } - - - -static void check_match (LexState *ls, int what, int who, int where) { - if (!testnext(ls, what)) { - if (where == ls->linenumber) - error_expected(ls, what); - else { - luaX_syntaxerror(ls, luaO_pushfstring(ls->L, - "%s expected (to close %s at line %d)", - luaX_token2str(ls, what), luaX_token2str(ls, who), where)); - } - } -} - - -static TString *str_checkname (LexState *ls) { - TString *ts; - check(ls, TK_NAME); - ts = ls->t.seminfo.ts; - luaX_next(ls); - return ts; -} - - -static void init_exp (expdesc *e, expkind k, int i) { - e->f = e->t = NO_JUMP; - e->k = k; - e->u.info = i; -} - - -static void codestring (LexState *ls, expdesc *e, TString *s) { - init_exp(e, VK, luaK_stringK(ls->fs, s)); -} - - -static void checkname (LexState *ls, expdesc *e) { - codestring(ls, e, str_checkname(ls)); -} - - -static int registerlocalvar (LexState *ls, TString *varname) { - FuncState *fs = ls->fs; - Proto *f = fs->f; - int oldsize = f->sizelocvars; - luaM_growvector(ls->L, f->locvars, fs->nlocvars, f->sizelocvars, - LocVar, SHRT_MAX, "local variables"); - while (oldsize < f->sizelocvars) f->locvars[oldsize++].varname = NULL; - f->locvars[fs->nlocvars].varname = varname; - luaC_objbarrier(ls->L, f, varname); - return fs->nlocvars++; -} - - -static void new_localvar (LexState *ls, TString *name) { - FuncState *fs = ls->fs; - Dyndata *dyd = ls->dyd; - int reg = registerlocalvar(ls, name); - checklimit(fs, dyd->actvar.n + 1 - fs->firstlocal, - MAXVARS, "local variables"); - luaM_growvector(ls->L, dyd->actvar.arr, dyd->actvar.n + 1, - dyd->actvar.size, Vardesc, MAX_INT, "local variables"); - dyd->actvar.arr[dyd->actvar.n++].idx = cast(short, reg); -} - - -static void new_localvarliteral_ (LexState *ls, const char *name, size_t sz) { - new_localvar(ls, luaX_newstring(ls, name, sz)); -} - -#define new_localvarliteral(ls,v) \ - new_localvarliteral_(ls, "" v, (sizeof(v)/sizeof(char))-1) - - -static LocVar *getlocvar (FuncState *fs, int i) { - int idx = fs->ls->dyd->actvar.arr[fs->firstlocal + i].idx; - lua_assert(idx < fs->nlocvars); - return &fs->f->locvars[idx]; -} - - -static void adjustlocalvars (LexState *ls, int nvars) { - FuncState *fs = ls->fs; - fs->nactvar = cast_byte(fs->nactvar + nvars); - for (; nvars; nvars--) { - getlocvar(fs, fs->nactvar - nvars)->startpc = fs->pc; - } -} - - -static void removevars (FuncState *fs, int tolevel) { - fs->ls->dyd->actvar.n -= (fs->nactvar - tolevel); - while (fs->nactvar > tolevel) - getlocvar(fs, --fs->nactvar)->endpc = fs->pc; -} - - -static int searchupvalue (FuncState *fs, TString *name) { - int i; - Upvaldesc *up = fs->f->upvalues; - for (i = 0; i < fs->nups; i++) { - if (luaS_eqstr(up[i].name, name)) return i; - } - return -1; /* not found */ -} - - -static int newupvalue (FuncState *fs, TString *name, expdesc *v) { - Proto *f = fs->f; - int oldsize = f->sizeupvalues; - checklimit(fs, fs->nups + 1, MAXUPVAL, "upvalues"); - luaM_growvector(fs->ls->L, f->upvalues, fs->nups, f->sizeupvalues, - Upvaldesc, MAXUPVAL, "upvalues"); - while (oldsize < f->sizeupvalues) f->upvalues[oldsize++].name = NULL; - f->upvalues[fs->nups].instack = (v->k == VLOCAL); - f->upvalues[fs->nups].idx = cast_byte(v->u.info); - f->upvalues[fs->nups].name = name; - luaC_objbarrier(fs->ls->L, f, name); - return fs->nups++; -} - - -static int searchvar (FuncState *fs, TString *n) { - int i; - for (i = cast_int(fs->nactvar) - 1; i >= 0; i--) { - if (luaS_eqstr(n, getlocvar(fs, i)->varname)) - return i; - } - return -1; /* not found */ -} - - -/* - Mark block where variable at given level was defined - (to emit close instructions later). -*/ -static void markupval (FuncState *fs, int level) { - BlockCnt *bl = fs->bl; - while (bl->nactvar > level) bl = bl->previous; - bl->upval = 1; -} - - -/* - Find variable with given name 'n'. If it is an upvalue, add this - upvalue into all intermediate functions. -*/ -static int singlevaraux (FuncState *fs, TString *n, expdesc *var, int base) { - if (fs == NULL) /* no more levels? */ - return VVOID; /* default is global */ - else { - int v = searchvar(fs, n); /* look up locals at current level */ - if (v >= 0) { /* found? */ - init_exp(var, VLOCAL, v); /* variable is local */ - if (!base) - markupval(fs, v); /* local will be used as an upval */ - return VLOCAL; - } - else { /* not found as local at current level; try upvalues */ - int idx = searchupvalue(fs, n); /* try existing upvalues */ - if (idx < 0) { /* not found? */ - if (singlevaraux(fs->prev, n, var, 0) == VVOID) /* try upper levels */ - return VVOID; /* not found; is a global */ - /* else was LOCAL or UPVAL */ - idx = newupvalue(fs, n, var); /* will be a new upvalue */ - } - init_exp(var, VUPVAL, idx); - return VUPVAL; - } - } -} - - -static void singlevar (LexState *ls, expdesc *var) { - TString *varname = str_checkname(ls); - FuncState *fs = ls->fs; - if (singlevaraux(fs, varname, var, 1) == VVOID) { /* global name? */ - expdesc key; - singlevaraux(fs, ls->envn, var, 1); /* get environment variable */ - lua_assert(var->k == VLOCAL || var->k == VUPVAL); - codestring(ls, &key, varname); /* key is variable name */ - luaK_indexed(fs, var, &key); /* env[varname] */ - } -} - - -static void adjust_assign (LexState *ls, int nvars, int nexps, expdesc *e) { - FuncState *fs = ls->fs; - int extra = nvars - nexps; - if (hasmultret(e->k)) { - extra++; /* includes call itself */ - if (extra < 0) extra = 0; - luaK_setreturns(fs, e, extra); /* last exp. provides the difference */ - if (extra > 1) luaK_reserveregs(fs, extra-1); - } - else { - if (e->k != VVOID) luaK_exp2nextreg(fs, e); /* close last expression */ - if (extra > 0) { - int reg = fs->freereg; - luaK_reserveregs(fs, extra); - luaK_nil(fs, reg, extra); - } - } -} - - -static void enterlevel (LexState *ls) { - lua_State *L = ls->L; - ++L->nCcalls; - checklimit(ls->fs, L->nCcalls, LUAI_MAXCCALLS, "C levels"); -} - - -#define leavelevel(ls) ((ls)->L->nCcalls--) - - -static void closegoto (LexState *ls, int g, Labeldesc *label) { - int i; - FuncState *fs = ls->fs; - Labellist *gl = &ls->dyd->gt; - Labeldesc *gt = &gl->arr[g]; - lua_assert(luaS_eqstr(gt->name, label->name)); - if (gt->nactvar < label->nactvar) { - TString *vname = getlocvar(fs, gt->nactvar)->varname; - const char *msg = luaO_pushfstring(ls->L, - "<goto %s> at line %d jumps into the scope of local " LUA_QS, - getstr(gt->name), gt->line, getstr(vname)); - semerror(ls, msg); - } - luaK_patchlist(fs, gt->pc, label->pc); - /* remove goto from pending list */ - for (i = g; i < gl->n - 1; i++) - gl->arr[i] = gl->arr[i + 1]; - gl->n--; -} - - -/* -** try to close a goto with existing labels; this solves backward jumps -*/ -static int findlabel (LexState *ls, int g) { - int i; - BlockCnt *bl = ls->fs->bl; - Dyndata *dyd = ls->dyd; - Labeldesc *gt = &dyd->gt.arr[g]; - /* check labels in current block for a match */ - for (i = bl->firstlabel; i < dyd->label.n; i++) { - Labeldesc *lb = &dyd->label.arr[i]; - if (luaS_eqstr(lb->name, gt->name)) { /* correct label? */ - if (gt->nactvar > lb->nactvar && - (bl->upval || dyd->label.n > bl->firstlabel)) - luaK_patchclose(ls->fs, gt->pc, lb->nactvar); - closegoto(ls, g, lb); /* close it */ - return 1; - } - } - return 0; /* label not found; cannot close goto */ -} - - -static int newlabelentry (LexState *ls, Labellist *l, TString *name, - int line, int pc) { - int n = l->n; - luaM_growvector(ls->L, l->arr, n, l->size, - Labeldesc, SHRT_MAX, "labels/gotos"); - l->arr[n].name = name; - l->arr[n].line = line; - l->arr[n].nactvar = ls->fs->nactvar; - l->arr[n].pc = pc; - l->n++; - return n; -} - - -/* -** check whether new label 'lb' matches any pending gotos in current -** block; solves forward jumps -*/ -static void findgotos (LexState *ls, Labeldesc *lb) { - Labellist *gl = &ls->dyd->gt; - int i = ls->fs->bl->firstgoto; - while (i < gl->n) { - if (luaS_eqstr(gl->arr[i].name, lb->name)) - closegoto(ls, i, lb); - else - i++; - } -} - - -/* -** "export" pending gotos to outer level, to check them against -** outer labels; if the block being exited has upvalues, and -** the goto exits the scope of any variable (which can be the -** upvalue), close those variables being exited. -*/ -static void movegotosout (FuncState *fs, BlockCnt *bl) { - int i = bl->firstgoto; - Labellist *gl = &fs->ls->dyd->gt; - /* correct pending gotos to current block and try to close it - with visible labels */ - while (i < gl->n) { - Labeldesc *gt = &gl->arr[i]; - if (gt->nactvar > bl->nactvar) { - if (bl->upval) - luaK_patchclose(fs, gt->pc, bl->nactvar); - gt->nactvar = bl->nactvar; - } - if (!findlabel(fs->ls, i)) - i++; /* move to next one */ - } -} - - -static void enterblock (FuncState *fs, BlockCnt *bl, lu_byte isloop) { - bl->isloop = isloop; - bl->nactvar = fs->nactvar; - bl->firstlabel = fs->ls->dyd->label.n; - bl->firstgoto = fs->ls->dyd->gt.n; - bl->upval = 0; - bl->previous = fs->bl; - fs->bl = bl; - lua_assert(fs->freereg == fs->nactvar); -} - - -/* -** create a label named "break" to resolve break statements -*/ -static void breaklabel (LexState *ls) { - TString *n = luaS_new(ls->L, "break"); - int l = newlabelentry(ls, &ls->dyd->label, n, 0, ls->fs->pc); - findgotos(ls, &ls->dyd->label.arr[l]); -} - -/* -** generates an error for an undefined 'goto'; choose appropriate -** message when label name is a reserved word (which can only be 'break') -*/ -static l_noret undefgoto (LexState *ls, Labeldesc *gt) { - const char *msg = isreserved(gt->name) - ? "<%s> at line %d not inside a loop" - : "no visible label " LUA_QS " for <goto> at line %d"; - msg = luaO_pushfstring(ls->L, msg, getstr(gt->name), gt->line); - semerror(ls, msg); -} - - -static void leaveblock (FuncState *fs) { - BlockCnt *bl = fs->bl; - LexState *ls = fs->ls; - if (bl->previous && bl->upval) { - /* create a 'jump to here' to close upvalues */ - int j = luaK_jump(fs); - luaK_patchclose(fs, j, bl->nactvar); - luaK_patchtohere(fs, j); - } - if (bl->isloop) - breaklabel(ls); /* close pending breaks */ - fs->bl = bl->previous; - removevars(fs, bl->nactvar); - lua_assert(bl->nactvar == fs->nactvar); - fs->freereg = fs->nactvar; /* free registers */ - ls->dyd->label.n = bl->firstlabel; /* remove local labels */ - if (bl->previous) /* inner block? */ - movegotosout(fs, bl); /* update pending gotos to outer block */ - else if (bl->firstgoto < ls->dyd->gt.n) /* pending gotos in outer block? */ - undefgoto(ls, &ls->dyd->gt.arr[bl->firstgoto]); /* error */ -} - - -/* -** adds a new prototype into list of prototypes -*/ -static Proto *addprototype (LexState *ls) { - Proto *clp; - lua_State *L = ls->L; - FuncState *fs = ls->fs; - Proto *f = fs->f; /* prototype of current function */ - if (fs->np >= f->sizep) { - int oldsize = f->sizep; - luaM_growvector(L, f->p, fs->np, f->sizep, Proto *, MAXARG_Bx, "functions"); - while (oldsize < f->sizep) f->p[oldsize++] = NULL; - } - f->p[fs->np++] = clp = luaF_newproto(L); - luaC_objbarrier(L, f, clp); - return clp; -} - - -/* -** codes instruction to create new closure in parent function. -** The OP_CLOSURE instruction must use the last available register, -** so that, if it invokes the GC, the GC knows which registers -** are in use at that time. -*/ -static void codeclosure (LexState *ls, expdesc *v) { - FuncState *fs = ls->fs->prev; - init_exp(v, VRELOCABLE, luaK_codeABx(fs, OP_CLOSURE, 0, fs->np - 1)); - luaK_exp2nextreg(fs, v); /* fix it at the last register */ -} - - -static void open_func (LexState *ls, FuncState *fs, BlockCnt *bl) { - lua_State *L = ls->L; - Proto *f; - fs->prev = ls->fs; /* linked list of funcstates */ - fs->ls = ls; - ls->fs = fs; - fs->pc = 0; - fs->lasttarget = 0; - fs->jpc = NO_JUMP; - fs->freereg = 0; - fs->nk = 0; - fs->np = 0; - fs->nups = 0; - fs->nlocvars = 0; - fs->nactvar = 0; - fs->firstlocal = ls->dyd->actvar.n; - fs->bl = NULL; - f = fs->f; - f->source = ls->source; - f->maxstacksize = 2; /* registers 0/1 are always valid */ - fs->h = luaH_new(L); - /* anchor table of constants (to avoid being collected) */ - sethvalue2s(L, L->top, fs->h); - incr_top(L); - enterblock(fs, bl, 0); -} - - -static void close_func (LexState *ls) { - lua_State *L = ls->L; - FuncState *fs = ls->fs; - Proto *f = fs->f; - luaK_ret(fs, 0, 0); /* final return */ - leaveblock(fs); - luaM_reallocvector(L, f->code, f->sizecode, fs->pc, Instruction); - f->sizecode = fs->pc; - luaM_reallocvector(L, f->lineinfo, f->sizelineinfo, fs->pc, int); - f->sizelineinfo = fs->pc; - luaM_reallocvector(L, f->k, f->sizek, fs->nk, TValue); - f->sizek = fs->nk; - luaM_reallocvector(L, f->p, f->sizep, fs->np, Proto *); - f->sizep = fs->np; - luaM_reallocvector(L, f->locvars, f->sizelocvars, fs->nlocvars, LocVar); - f->sizelocvars = fs->nlocvars; - luaM_reallocvector(L, f->upvalues, f->sizeupvalues, fs->nups, Upvaldesc); - f->sizeupvalues = fs->nups; - lua_assert(fs->bl == NULL); - ls->fs = fs->prev; - /* last token read was anchored in defunct function; must re-anchor it */ - anchor_token(ls); - L->top--; /* pop table of constants */ - luaC_checkGC(L); -} - - - -/*============================================================*/ -/* GRAMMAR RULES */ -/*============================================================*/ - - -/* -** check whether current token is in the follow set of a block. -** 'until' closes syntactical blocks, but do not close scope, -** so it handled in separate. -*/ -static int block_follow (LexState *ls, int withuntil) { - switch (ls->t.token) { - case TK_ELSE: case TK_ELSEIF: - case TK_END: case TK_EOS: - return 1; - case TK_UNTIL: return withuntil; - default: return 0; - } -} - - -static void statlist (LexState *ls) { - /* statlist -> { stat [`;'] } */ - while (!block_follow(ls, 1)) { - if (ls->t.token == TK_RETURN) { - statement(ls); - return; /* 'return' must be last statement */ - } - statement(ls); - } -} - - -static void fieldsel (LexState *ls, expdesc *v) { - /* fieldsel -> ['.' | ':'] NAME */ - FuncState *fs = ls->fs; - expdesc key; - luaK_exp2anyregup(fs, v); - luaX_next(ls); /* skip the dot or colon */ - checkname(ls, &key); - luaK_indexed(fs, v, &key); -} - - -static void yindex (LexState *ls, expdesc *v) { - /* index -> '[' expr ']' */ - luaX_next(ls); /* skip the '[' */ - expr(ls, v); - luaK_exp2val(ls->fs, v); - checknext(ls, ']'); -} - - -/* -** {====================================================================== -** Rules for Constructors -** ======================================================================= -*/ - - -struct ConsControl { - expdesc v; /* last list item read */ - expdesc *t; /* table descriptor */ - int nh; /* total number of `record' elements */ - int na; /* total number of array elements */ - int tostore; /* number of array elements pending to be stored */ -}; - - -static void recfield (LexState *ls, struct ConsControl *cc) { - /* recfield -> (NAME | `['exp1`]') = exp1 */ - FuncState *fs = ls->fs; - int reg = ls->fs->freereg; - expdesc key, val; - int rkkey; - if (ls->t.token == TK_NAME) { - checklimit(fs, cc->nh, MAX_INT, "items in a constructor"); - checkname(ls, &key); - } - else /* ls->t.token == '[' */ - yindex(ls, &key); - cc->nh++; - checknext(ls, '='); - rkkey = luaK_exp2RK(fs, &key); - expr(ls, &val); - luaK_codeABC(fs, OP_SETTABLE, cc->t->u.info, rkkey, luaK_exp2RK(fs, &val)); - fs->freereg = reg; /* free registers */ -} - - -static void closelistfield (FuncState *fs, struct ConsControl *cc) { - if (cc->v.k == VVOID) return; /* there is no list item */ - luaK_exp2nextreg(fs, &cc->v); - cc->v.k = VVOID; - if (cc->tostore == LFIELDS_PER_FLUSH) { - luaK_setlist(fs, cc->t->u.info, cc->na, cc->tostore); /* flush */ - cc->tostore = 0; /* no more items pending */ - } -} - - -static void lastlistfield (FuncState *fs, struct ConsControl *cc) { - if (cc->tostore == 0) return; - if (hasmultret(cc->v.k)) { - luaK_setmultret(fs, &cc->v); - luaK_setlist(fs, cc->t->u.info, cc->na, LUA_MULTRET); - cc->na--; /* do not count last expression (unknown number of elements) */ - } - else { - if (cc->v.k != VVOID) - luaK_exp2nextreg(fs, &cc->v); - luaK_setlist(fs, cc->t->u.info, cc->na, cc->tostore); - } -} - - -static void listfield (LexState *ls, struct ConsControl *cc) { - /* listfield -> exp */ - expr(ls, &cc->v); - checklimit(ls->fs, cc->na, MAX_INT, "items in a constructor"); - cc->na++; - cc->tostore++; -} - - -static void field (LexState *ls, struct ConsControl *cc) { - /* field -> listfield | recfield */ - switch(ls->t.token) { - case TK_NAME: { /* may be 'listfield' or 'recfield' */ - if (luaX_lookahead(ls) != '=') /* expression? */ - listfield(ls, cc); - else - recfield(ls, cc); - break; - } - case '[': { - recfield(ls, cc); - break; - } - default: { - listfield(ls, cc); - break; - } - } -} - - -static void constructor (LexState *ls, expdesc *t) { - /* constructor -> '{' [ field { sep field } [sep] ] '}' - sep -> ',' | ';' */ - FuncState *fs = ls->fs; - int line = ls->linenumber; - int pc = luaK_codeABC(fs, OP_NEWTABLE, 0, 0, 0); - struct ConsControl cc; - cc.na = cc.nh = cc.tostore = 0; - cc.t = t; - init_exp(t, VRELOCABLE, pc); - init_exp(&cc.v, VVOID, 0); /* no value (yet) */ - luaK_exp2nextreg(ls->fs, t); /* fix it at stack top */ - checknext(ls, '{'); - do { - lua_assert(cc.v.k == VVOID || cc.tostore > 0); - if (ls->t.token == '}') break; - closelistfield(fs, &cc); - field(ls, &cc); - } while (testnext(ls, ',') || testnext(ls, ';')); - check_match(ls, '}', '{', line); - lastlistfield(fs, &cc); - SETARG_B(fs->f->code[pc], luaO_int2fb(cc.na)); /* set initial array size */ - SETARG_C(fs->f->code[pc], luaO_int2fb(cc.nh)); /* set initial table size */ -} - -/* }====================================================================== */ - - - -static void parlist (LexState *ls) { - /* parlist -> [ param { `,' param } ] */ - FuncState *fs = ls->fs; - Proto *f = fs->f; - int nparams = 0; - f->is_vararg = 0; - if (ls->t.token != ')') { /* is `parlist' not empty? */ - do { - switch (ls->t.token) { - case TK_NAME: { /* param -> NAME */ - new_localvar(ls, str_checkname(ls)); - nparams++; - break; - } - case TK_DOTS: { /* param -> `...' */ - luaX_next(ls); - f->is_vararg = 1; - break; - } - default: luaX_syntaxerror(ls, "<name> or " LUA_QL("...") " expected"); - } - } while (!f->is_vararg && testnext(ls, ',')); - } - adjustlocalvars(ls, nparams); - f->numparams = cast_byte(fs->nactvar); - luaK_reserveregs(fs, fs->nactvar); /* reserve register for parameters */ -} - - -static void body (LexState *ls, expdesc *e, int ismethod, int line) { - /* body -> `(' parlist `)' block END */ - FuncState new_fs; - BlockCnt bl; - new_fs.f = addprototype(ls); - new_fs.f->linedefined = line; - open_func(ls, &new_fs, &bl); - checknext(ls, '('); - if (ismethod) { - new_localvarliteral(ls, "self"); /* create 'self' parameter */ - adjustlocalvars(ls, 1); - } - parlist(ls); - checknext(ls, ')'); - statlist(ls); - new_fs.f->lastlinedefined = ls->linenumber; - check_match(ls, TK_END, TK_FUNCTION, line); - codeclosure(ls, e); - close_func(ls); -} - - -static int explist (LexState *ls, expdesc *v) { - /* explist -> expr { `,' expr } */ - int n = 1; /* at least one expression */ - expr(ls, v); - while (testnext(ls, ',')) { - luaK_exp2nextreg(ls->fs, v); - expr(ls, v); - n++; - } - return n; -} - - -static void funcargs (LexState *ls, expdesc *f, int line) { - FuncState *fs = ls->fs; - expdesc args; - int base, nparams; - switch (ls->t.token) { - case '(': { /* funcargs -> `(' [ explist ] `)' */ - luaX_next(ls); - if (ls->t.token == ')') /* arg list is empty? */ - args.k = VVOID; - else { - explist(ls, &args); - luaK_setmultret(fs, &args); - } - check_match(ls, ')', '(', line); - break; - } - case '{': { /* funcargs -> constructor */ - constructor(ls, &args); - break; - } - case TK_STRING: { /* funcargs -> STRING */ - codestring(ls, &args, ls->t.seminfo.ts); - luaX_next(ls); /* must use `seminfo' before `next' */ - break; - } - default: { - luaX_syntaxerror(ls, "function arguments expected"); - } - } - lua_assert(f->k == VNONRELOC); - base = f->u.info; /* base register for call */ - if (hasmultret(args.k)) - nparams = LUA_MULTRET; /* open call */ - else { - if (args.k != VVOID) - luaK_exp2nextreg(fs, &args); /* close last argument */ - nparams = fs->freereg - (base+1); - } - init_exp(f, VCALL, luaK_codeABC(fs, OP_CALL, base, nparams+1, 2)); - luaK_fixline(fs, line); - fs->freereg = base+1; /* call remove function and arguments and leaves - (unless changed) one result */ -} - - - - -/* -** {====================================================================== -** Expression parsing -** ======================================================================= -*/ - - -static void primaryexp (LexState *ls, expdesc *v) { - /* primaryexp -> NAME | '(' expr ')' */ - switch (ls->t.token) { - case '(': { - int line = ls->linenumber; - luaX_next(ls); - expr(ls, v); - check_match(ls, ')', '(', line); - luaK_dischargevars(ls->fs, v); - return; - } - case TK_NAME: { - singlevar(ls, v); - return; - } - default: { - luaX_syntaxerror(ls, "unexpected symbol"); - } - } -} - - -static void suffixedexp (LexState *ls, expdesc *v) { - /* suffixedexp -> - primaryexp { '.' NAME | '[' exp ']' | ':' NAME funcargs | funcargs } */ - FuncState *fs = ls->fs; - int line = ls->linenumber; - primaryexp(ls, v); - for (;;) { - switch (ls->t.token) { - case '.': { /* fieldsel */ - fieldsel(ls, v); - break; - } - case '[': { /* `[' exp1 `]' */ - expdesc key; - luaK_exp2anyregup(fs, v); - yindex(ls, &key); - luaK_indexed(fs, v, &key); - break; - } - case ':': { /* `:' NAME funcargs */ - expdesc key; - luaX_next(ls); - checkname(ls, &key); - luaK_self(fs, v, &key); - funcargs(ls, v, line); - break; - } - case '(': case TK_STRING: case '{': { /* funcargs */ - luaK_exp2nextreg(fs, v); - funcargs(ls, v, line); - break; - } - default: return; - } - } -} - - -static void simpleexp (LexState *ls, expdesc *v) { - /* simpleexp -> NUMBER | STRING | NIL | TRUE | FALSE | ... | - constructor | FUNCTION body | suffixedexp */ - switch (ls->t.token) { - case TK_NUMBER: { - init_exp(v, VKNUM, 0); - v->u.nval = ls->t.seminfo.r; - break; - } - case TK_STRING: { - codestring(ls, v, ls->t.seminfo.ts); - break; - } - case TK_NIL: { - init_exp(v, VNIL, 0); - break; - } - case TK_TRUE: { - init_exp(v, VTRUE, 0); - break; - } - case TK_FALSE: { - init_exp(v, VFALSE, 0); - break; - } - case TK_DOTS: { /* vararg */ - FuncState *fs = ls->fs; - check_condition(ls, fs->f->is_vararg, - "cannot use " LUA_QL("...") " outside a vararg function"); - init_exp(v, VVARARG, luaK_codeABC(fs, OP_VARARG, 0, 1, 0)); - break; - } - case '{': { /* constructor */ - constructor(ls, v); - return; - } - case TK_FUNCTION: { - luaX_next(ls); - body(ls, v, 0, ls->linenumber); - return; - } - default: { - suffixedexp(ls, v); - return; - } - } - luaX_next(ls); -} - - -static UnOpr getunopr (int op) { - switch (op) { - case TK_NOT: return OPR_NOT; - case '-': return OPR_MINUS; - case '#': return OPR_LEN; - default: return OPR_NOUNOPR; - } -} - - -static BinOpr getbinopr (int op) { - switch (op) { - case '+': return OPR_ADD; - case '-': return OPR_SUB; - case '*': return OPR_MUL; - case '/': return OPR_DIV; - case '%': return OPR_MOD; - case '^': return OPR_POW; - case TK_CONCAT: return OPR_CONCAT; - case TK_NE: return OPR_NE; - case TK_EQ: return OPR_EQ; - case '<': return OPR_LT; - case TK_LE: return OPR_LE; - case '>': return OPR_GT; - case TK_GE: return OPR_GE; - case TK_AND: return OPR_AND; - case TK_OR: return OPR_OR; - default: return OPR_NOBINOPR; - } -} - - -static const struct { - lu_byte left; /* left priority for each binary operator */ - lu_byte right; /* right priority */ -} priority[] = { /* ORDER OPR */ - {6, 6}, {6, 6}, {7, 7}, {7, 7}, {7, 7}, /* `+' `-' `*' `/' `%' */ - {10, 9}, {5, 4}, /* ^, .. (right associative) */ - {3, 3}, {3, 3}, {3, 3}, /* ==, <, <= */ - {3, 3}, {3, 3}, {3, 3}, /* ~=, >, >= */ - {2, 2}, {1, 1} /* and, or */ -}; - -#define UNARY_PRIORITY 8 /* priority for unary operators */ - - -/* -** subexpr -> (simpleexp | unop subexpr) { binop subexpr } -** where `binop' is any binary operator with a priority higher than `limit' -*/ -static BinOpr subexpr (LexState *ls, expdesc *v, int limit) { - BinOpr op; - UnOpr uop; - enterlevel(ls); - uop = getunopr(ls->t.token); - if (uop != OPR_NOUNOPR) { - int line = ls->linenumber; - luaX_next(ls); - subexpr(ls, v, UNARY_PRIORITY); - luaK_prefix(ls->fs, uop, v, line); - } - else simpleexp(ls, v); - /* expand while operators have priorities higher than `limit' */ - op = getbinopr(ls->t.token); - while (op != OPR_NOBINOPR && priority[op].left > limit) { - expdesc v2; - BinOpr nextop; - int line = ls->linenumber; - luaX_next(ls); - luaK_infix(ls->fs, op, v); - /* read sub-expression with higher priority */ - nextop = subexpr(ls, &v2, priority[op].right); - luaK_posfix(ls->fs, op, v, &v2, line); - op = nextop; - } - leavelevel(ls); - return op; /* return first untreated operator */ -} - - -static void expr (LexState *ls, expdesc *v) { - subexpr(ls, v, 0); -} - -/* }==================================================================== */ - - - -/* -** {====================================================================== -** Rules for Statements -** ======================================================================= -*/ - - -static void block (LexState *ls) { - /* block -> statlist */ - FuncState *fs = ls->fs; - BlockCnt bl; - enterblock(fs, &bl, 0); - statlist(ls); - leaveblock(fs); -} - - -/* -** structure to chain all variables in the left-hand side of an -** assignment -*/ -struct LHS_assign { - struct LHS_assign *prev; - expdesc v; /* variable (global, local, upvalue, or indexed) */ -}; - - -/* -** check whether, in an assignment to an upvalue/local variable, the -** upvalue/local variable is begin used in a previous assignment to a -** table. If so, save original upvalue/local value in a safe place and -** use this safe copy in the previous assignment. -*/ -static void check_conflict (LexState *ls, struct LHS_assign *lh, expdesc *v) { - FuncState *fs = ls->fs; - int extra = fs->freereg; /* eventual position to save local variable */ - int conflict = 0; - for (; lh; lh = lh->prev) { /* check all previous assignments */ - if (lh->v.k == VINDEXED) { /* assigning to a table? */ - /* table is the upvalue/local being assigned now? */ - if (lh->v.u.ind.vt == v->k && lh->v.u.ind.t == v->u.info) { - conflict = 1; - lh->v.u.ind.vt = VLOCAL; - lh->v.u.ind.t = extra; /* previous assignment will use safe copy */ - } - /* index is the local being assigned? (index cannot be upvalue) */ - if (v->k == VLOCAL && lh->v.u.ind.idx == v->u.info) { - conflict = 1; - lh->v.u.ind.idx = extra; /* previous assignment will use safe copy */ - } - } - } - if (conflict) { - /* copy upvalue/local value to a temporary (in position 'extra') */ - OpCode op = (v->k == VLOCAL) ? OP_MOVE : OP_GETUPVAL; - luaK_codeABC(fs, op, extra, v->u.info, 0); - luaK_reserveregs(fs, 1); - } -} - - -static void assignment (LexState *ls, struct LHS_assign *lh, int nvars) { - expdesc e; - check_condition(ls, vkisvar(lh->v.k), "syntax error"); - if (testnext(ls, ',')) { /* assignment -> ',' suffixedexp assignment */ - struct LHS_assign nv; - nv.prev = lh; - suffixedexp(ls, &nv.v); - if (nv.v.k != VINDEXED) - check_conflict(ls, lh, &nv.v); - checklimit(ls->fs, nvars + ls->L->nCcalls, LUAI_MAXCCALLS, - "C levels"); - assignment(ls, &nv, nvars+1); - } - else { /* assignment -> `=' explist */ - int nexps; - checknext(ls, '='); - nexps = explist(ls, &e); - if (nexps != nvars) { - adjust_assign(ls, nvars, nexps, &e); - if (nexps > nvars) - ls->fs->freereg -= nexps - nvars; /* remove extra values */ - } - else { - luaK_setoneret(ls->fs, &e); /* close last expression */ - luaK_storevar(ls->fs, &lh->v, &e); - return; /* avoid default */ - } - } - init_exp(&e, VNONRELOC, ls->fs->freereg-1); /* default assignment */ - luaK_storevar(ls->fs, &lh->v, &e); -} - - -static int cond (LexState *ls) { - /* cond -> exp */ - expdesc v; - expr(ls, &v); /* read condition */ - if (v.k == VNIL) v.k = VFALSE; /* `falses' are all equal here */ - luaK_goiftrue(ls->fs, &v); - return v.f; -} - - -static void gotostat (LexState *ls, int pc) { - int line = ls->linenumber; - TString *label; - int g; - if (testnext(ls, TK_GOTO)) - label = str_checkname(ls); - else { - luaX_next(ls); /* skip break */ - label = luaS_new(ls->L, "break"); - } - g = newlabelentry(ls, &ls->dyd->gt, label, line, pc); - findlabel(ls, g); /* close it if label already defined */ -} - - -/* check for repeated labels on the same block */ -static void checkrepeated (FuncState *fs, Labellist *ll, TString *label) { - int i; - for (i = fs->bl->firstlabel; i < ll->n; i++) { - if (luaS_eqstr(label, ll->arr[i].name)) { - const char *msg = luaO_pushfstring(fs->ls->L, - "label " LUA_QS " already defined on line %d", - getstr(label), ll->arr[i].line); - semerror(fs->ls, msg); - } - } -} - - -/* skip no-op statements */ -static void skipnoopstat (LexState *ls) { - while (ls->t.token == ';' || ls->t.token == TK_DBCOLON) - statement(ls); -} - - -static void labelstat (LexState *ls, TString *label, int line) { - /* label -> '::' NAME '::' */ - FuncState *fs = ls->fs; - Labellist *ll = &ls->dyd->label; - int l; /* index of new label being created */ - checkrepeated(fs, ll, label); /* check for repeated labels */ - checknext(ls, TK_DBCOLON); /* skip double colon */ - /* create new entry for this label */ - l = newlabelentry(ls, ll, label, line, fs->pc); - skipnoopstat(ls); /* skip other no-op statements */ - if (block_follow(ls, 0)) { /* label is last no-op statement in the block? */ - /* assume that locals are already out of scope */ - ll->arr[l].nactvar = fs->bl->nactvar; - } - findgotos(ls, &ll->arr[l]); -} - - -static void whilestat (LexState *ls, int line) { - /* whilestat -> WHILE cond DO block END */ - FuncState *fs = ls->fs; - int whileinit; - int condexit; - BlockCnt bl; - luaX_next(ls); /* skip WHILE */ - whileinit = luaK_getlabel(fs); - condexit = cond(ls); - enterblock(fs, &bl, 1); - checknext(ls, TK_DO); - block(ls); - luaK_jumpto(fs, whileinit); - check_match(ls, TK_END, TK_WHILE, line); - leaveblock(fs); - luaK_patchtohere(fs, condexit); /* false conditions finish the loop */ -} - - -static void repeatstat (LexState *ls, int line) { - /* repeatstat -> REPEAT block UNTIL cond */ - int condexit; - FuncState *fs = ls->fs; - int repeat_init = luaK_getlabel(fs); - BlockCnt bl1, bl2; - enterblock(fs, &bl1, 1); /* loop block */ - enterblock(fs, &bl2, 0); /* scope block */ - luaX_next(ls); /* skip REPEAT */ - statlist(ls); - check_match(ls, TK_UNTIL, TK_REPEAT, line); - condexit = cond(ls); /* read condition (inside scope block) */ - if (bl2.upval) /* upvalues? */ - luaK_patchclose(fs, condexit, bl2.nactvar); - leaveblock(fs); /* finish scope */ - luaK_patchlist(fs, condexit, repeat_init); /* close the loop */ - leaveblock(fs); /* finish loop */ -} - - -static int exp1 (LexState *ls) { - expdesc e; - int reg; - expr(ls, &e); - luaK_exp2nextreg(ls->fs, &e); - lua_assert(e.k == VNONRELOC); - reg = e.u.info; - return reg; -} - - -static void forbody (LexState *ls, int base, int line, int nvars, int isnum) { - /* forbody -> DO block */ - BlockCnt bl; - FuncState *fs = ls->fs; - int prep, endfor; - adjustlocalvars(ls, 3); /* control variables */ - checknext(ls, TK_DO); - prep = isnum ? luaK_codeAsBx(fs, OP_FORPREP, base, NO_JUMP) : luaK_jump(fs); - enterblock(fs, &bl, 0); /* scope for declared variables */ - adjustlocalvars(ls, nvars); - luaK_reserveregs(fs, nvars); - block(ls); - leaveblock(fs); /* end of scope for declared variables */ - luaK_patchtohere(fs, prep); - if (isnum) /* numeric for? */ - endfor = luaK_codeAsBx(fs, OP_FORLOOP, base, NO_JUMP); - else { /* generic for */ - luaK_codeABC(fs, OP_TFORCALL, base, 0, nvars); - luaK_fixline(fs, line); - endfor = luaK_codeAsBx(fs, OP_TFORLOOP, base + 2, NO_JUMP); - } - luaK_patchlist(fs, endfor, prep + 1); - luaK_fixline(fs, line); -} - - -static void fornum (LexState *ls, TString *varname, int line) { - /* fornum -> NAME = exp1,exp1[,exp1] forbody */ - FuncState *fs = ls->fs; - int base = fs->freereg; - new_localvarliteral(ls, "(for index)"); - new_localvarliteral(ls, "(for limit)"); - new_localvarliteral(ls, "(for step)"); - new_localvar(ls, varname); - checknext(ls, '='); - exp1(ls); /* initial value */ - checknext(ls, ','); - exp1(ls); /* limit */ - if (testnext(ls, ',')) - exp1(ls); /* optional step */ - else { /* default step = 1 */ - luaK_codek(fs, fs->freereg, luaK_numberK(fs, 1)); - luaK_reserveregs(fs, 1); - } - forbody(ls, base, line, 1, 1); -} - - -static void forlist (LexState *ls, TString *indexname) { - /* forlist -> NAME {,NAME} IN explist forbody */ - FuncState *fs = ls->fs; - expdesc e; - int nvars = 4; /* gen, state, control, plus at least one declared var */ - int line; - int base = fs->freereg; - /* create control variables */ - new_localvarliteral(ls, "(for generator)"); - new_localvarliteral(ls, "(for state)"); - new_localvarliteral(ls, "(for control)"); - /* create declared variables */ - new_localvar(ls, indexname); - while (testnext(ls, ',')) { - new_localvar(ls, str_checkname(ls)); - nvars++; - } - checknext(ls, TK_IN); - line = ls->linenumber; - adjust_assign(ls, 3, explist(ls, &e), &e); - luaK_checkstack(fs, 3); /* extra space to call generator */ - forbody(ls, base, line, nvars - 3, 0); -} - - -static void forstat (LexState *ls, int line) { - /* forstat -> FOR (fornum | forlist) END */ - FuncState *fs = ls->fs; - TString *varname; - BlockCnt bl; - enterblock(fs, &bl, 1); /* scope for loop and control variables */ - luaX_next(ls); /* skip `for' */ - varname = str_checkname(ls); /* first variable name */ - switch (ls->t.token) { - case '=': fornum(ls, varname, line); break; - case ',': case TK_IN: forlist(ls, varname); break; - default: luaX_syntaxerror(ls, LUA_QL("=") " or " LUA_QL("in") " expected"); - } - check_match(ls, TK_END, TK_FOR, line); - leaveblock(fs); /* loop scope (`break' jumps to this point) */ -} - - -static void test_then_block (LexState *ls, int *escapelist) { - /* test_then_block -> [IF | ELSEIF] cond THEN block */ - BlockCnt bl; - FuncState *fs = ls->fs; - expdesc v; - int jf; /* instruction to skip 'then' code (if condition is false) */ - luaX_next(ls); /* skip IF or ELSEIF */ - expr(ls, &v); /* read condition */ - checknext(ls, TK_THEN); - if (ls->t.token == TK_GOTO || ls->t.token == TK_BREAK) { - luaK_goiffalse(ls->fs, &v); /* will jump to label if condition is true */ - enterblock(fs, &bl, 0); /* must enter block before 'goto' */ - gotostat(ls, v.t); /* handle goto/break */ - skipnoopstat(ls); /* skip other no-op statements */ - if (block_follow(ls, 0)) { /* 'goto' is the entire block? */ - leaveblock(fs); - return; /* and that is it */ - } - else /* must skip over 'then' part if condition is false */ - jf = luaK_jump(fs); - } - else { /* regular case (not goto/break) */ - luaK_goiftrue(ls->fs, &v); /* skip over block if condition is false */ - enterblock(fs, &bl, 0); - jf = v.f; - } - statlist(ls); /* `then' part */ - leaveblock(fs); - if (ls->t.token == TK_ELSE || - ls->t.token == TK_ELSEIF) /* followed by 'else'/'elseif'? */ - luaK_concat(fs, escapelist, luaK_jump(fs)); /* must jump over it */ - luaK_patchtohere(fs, jf); -} - - -static void ifstat (LexState *ls, int line) { - /* ifstat -> IF cond THEN block {ELSEIF cond THEN block} [ELSE block] END */ - FuncState *fs = ls->fs; - int escapelist = NO_JUMP; /* exit list for finished parts */ - test_then_block(ls, &escapelist); /* IF cond THEN block */ - while (ls->t.token == TK_ELSEIF) - test_then_block(ls, &escapelist); /* ELSEIF cond THEN block */ - if (testnext(ls, TK_ELSE)) - block(ls); /* `else' part */ - check_match(ls, TK_END, TK_IF, line); - luaK_patchtohere(fs, escapelist); /* patch escape list to 'if' end */ -} - - -static void localfunc (LexState *ls) { - expdesc b; - FuncState *fs = ls->fs; - new_localvar(ls, str_checkname(ls)); /* new local variable */ - adjustlocalvars(ls, 1); /* enter its scope */ - body(ls, &b, 0, ls->linenumber); /* function created in next register */ - /* debug information will only see the variable after this point! */ - getlocvar(fs, b.u.info)->startpc = fs->pc; -} - - -static void localstat (LexState *ls) { - /* stat -> LOCAL NAME {`,' NAME} [`=' explist] */ - int nvars = 0; - int nexps; - expdesc e; - do { - new_localvar(ls, str_checkname(ls)); - nvars++; - } while (testnext(ls, ',')); - if (testnext(ls, '=')) - nexps = explist(ls, &e); - else { - e.k = VVOID; - nexps = 0; - } - adjust_assign(ls, nvars, nexps, &e); - adjustlocalvars(ls, nvars); -} - - -static int funcname (LexState *ls, expdesc *v) { - /* funcname -> NAME {fieldsel} [`:' NAME] */ - int ismethod = 0; - singlevar(ls, v); - while (ls->t.token == '.') - fieldsel(ls, v); - if (ls->t.token == ':') { - ismethod = 1; - fieldsel(ls, v); - } - return ismethod; -} - - -static void funcstat (LexState *ls, int line) { - /* funcstat -> FUNCTION funcname body */ - int ismethod; - expdesc v, b; - luaX_next(ls); /* skip FUNCTION */ - ismethod = funcname(ls, &v); - body(ls, &b, ismethod, line); - luaK_storevar(ls->fs, &v, &b); - luaK_fixline(ls->fs, line); /* definition `happens' in the first line */ -} - - -static void exprstat (LexState *ls) { - /* stat -> func | assignment */ - FuncState *fs = ls->fs; - struct LHS_assign v; - suffixedexp(ls, &v.v); - if (ls->t.token == '=' || ls->t.token == ',') { /* stat -> assignment ? */ - v.prev = NULL; - assignment(ls, &v, 1); - } - else { /* stat -> func */ - check_condition(ls, v.v.k == VCALL, "syntax error"); - SETARG_C(getcode(fs, &v.v), 1); /* call statement uses no results */ - } -} - - -static void retstat (LexState *ls) { - /* stat -> RETURN [explist] [';'] */ - FuncState *fs = ls->fs; - expdesc e; - int first, nret; /* registers with returned values */ - if (block_follow(ls, 1) || ls->t.token == ';') - first = nret = 0; /* return no values */ - else { - nret = explist(ls, &e); /* optional return values */ - if (hasmultret(e.k)) { - luaK_setmultret(fs, &e); - if (e.k == VCALL && nret == 1) { /* tail call? */ - SET_OPCODE(getcode(fs,&e), OP_TAILCALL); - lua_assert(GETARG_A(getcode(fs,&e)) == fs->nactvar); - } - first = fs->nactvar; - nret = LUA_MULTRET; /* return all values */ - } - else { - if (nret == 1) /* only one single value? */ - first = luaK_exp2anyreg(fs, &e); - else { - luaK_exp2nextreg(fs, &e); /* values must go to the `stack' */ - first = fs->nactvar; /* return all `active' values */ - lua_assert(nret == fs->freereg - first); - } - } - } - luaK_ret(fs, first, nret); - testnext(ls, ';'); /* skip optional semicolon */ -} - - -static void statement (LexState *ls) { - int line = ls->linenumber; /* may be needed for error messages */ - enterlevel(ls); - switch (ls->t.token) { - case ';': { /* stat -> ';' (empty statement) */ - luaX_next(ls); /* skip ';' */ - break; - } - case TK_IF: { /* stat -> ifstat */ - ifstat(ls, line); - break; - } - case TK_WHILE: { /* stat -> whilestat */ - whilestat(ls, line); - break; - } - case TK_DO: { /* stat -> DO block END */ - luaX_next(ls); /* skip DO */ - block(ls); - check_match(ls, TK_END, TK_DO, line); - break; - } - case TK_FOR: { /* stat -> forstat */ - forstat(ls, line); - break; - } - case TK_REPEAT: { /* stat -> repeatstat */ - repeatstat(ls, line); - break; - } - case TK_FUNCTION: { /* stat -> funcstat */ - funcstat(ls, line); - break; - } - case TK_LOCAL: { /* stat -> localstat */ - luaX_next(ls); /* skip LOCAL */ - if (testnext(ls, TK_FUNCTION)) /* local function? */ - localfunc(ls); - else - localstat(ls); - break; - } - case TK_DBCOLON: { /* stat -> label */ - luaX_next(ls); /* skip double colon */ - labelstat(ls, str_checkname(ls), line); - break; - } - case TK_RETURN: { /* stat -> retstat */ - luaX_next(ls); /* skip RETURN */ - retstat(ls); - break; - } - case TK_BREAK: /* stat -> breakstat */ - case TK_GOTO: { /* stat -> 'goto' NAME */ - gotostat(ls, luaK_jump(ls->fs)); - break; - } - default: { /* stat -> func | assignment */ - exprstat(ls); - break; - } - } - lua_assert(ls->fs->f->maxstacksize >= ls->fs->freereg && - ls->fs->freereg >= ls->fs->nactvar); - ls->fs->freereg = ls->fs->nactvar; /* free registers */ - leavelevel(ls); -} - -/* }====================================================================== */ - - -/* -** compiles the main function, which is a regular vararg function with an -** upvalue named LUA_ENV -*/ -static void mainfunc (LexState *ls, FuncState *fs) { - BlockCnt bl; - expdesc v; - open_func(ls, fs, &bl); - fs->f->is_vararg = 1; /* main function is always vararg */ - init_exp(&v, VLOCAL, 0); /* create and... */ - newupvalue(fs, ls->envn, &v); /* ...set environment upvalue */ - luaX_next(ls); /* read first token */ - statlist(ls); /* parse main body */ - check(ls, TK_EOS); - close_func(ls); -} - - -Closure *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, - Dyndata *dyd, const char *name, int firstchar) { - LexState lexstate; - FuncState funcstate; - Closure *cl = luaF_newLclosure(L, 1); /* create main closure */ - /* anchor closure (to avoid being collected) */ - setclLvalue(L, L->top, cl); - incr_top(L); - funcstate.f = cl->l.p = luaF_newproto(L); - funcstate.f->source = luaS_new(L, name); /* create and anchor TString */ - lexstate.buff = buff; - lexstate.dyd = dyd; - dyd->actvar.n = dyd->gt.n = dyd->label.n = 0; - luaX_setinput(L, &lexstate, z, funcstate.f->source, firstchar); - mainfunc(&lexstate, &funcstate); - lua_assert(!funcstate.prev && funcstate.nups == 1 && !lexstate.fs); - /* all scopes should be correctly finished */ - lua_assert(dyd->actvar.n == 0 && dyd->gt.n == 0 && dyd->label.n == 0); - return cl; /* it's on the stack too */ -} - diff --git a/source/libs/lua52/lua52-src/src/lparser.h b/source/libs/lua52/lua52-src/src/lparser.h deleted file mode 100644 index 0346e3c41..000000000 --- a/source/libs/lua52/lua52-src/src/lparser.h +++ /dev/null @@ -1,119 +0,0 @@ -/* -** $Id: lparser.h,v 1.70.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lua Parser -** See Copyright Notice in lua.h -*/ - -#ifndef lparser_h -#define lparser_h - -#include "llimits.h" -#include "lobject.h" -#include "lzio.h" - - -/* -** Expression descriptor -*/ - -typedef enum { - VVOID, /* no value */ - VNIL, - VTRUE, - VFALSE, - VK, /* info = index of constant in `k' */ - VKNUM, /* nval = numerical value */ - VNONRELOC, /* info = result register */ - VLOCAL, /* info = local register */ - VUPVAL, /* info = index of upvalue in 'upvalues' */ - VINDEXED, /* t = table register/upvalue; idx = index R/K */ - VJMP, /* info = instruction pc */ - VRELOCABLE, /* info = instruction pc */ - VCALL, /* info = instruction pc */ - VVARARG /* info = instruction pc */ -} expkind; - - -#define vkisvar(k) (VLOCAL <= (k) && (k) <= VINDEXED) -#define vkisinreg(k) ((k) == VNONRELOC || (k) == VLOCAL) - -typedef struct expdesc { - expkind k; - union { - struct { /* for indexed variables (VINDEXED) */ - short idx; /* index (R/K) */ - lu_byte t; /* table (register or upvalue) */ - lu_byte vt; /* whether 't' is register (VLOCAL) or upvalue (VUPVAL) */ - } ind; - int info; /* for generic use */ - lua_Number nval; /* for VKNUM */ - } u; - int t; /* patch list of `exit when true' */ - int f; /* patch list of `exit when false' */ -} expdesc; - - -/* description of active local variable */ -typedef struct Vardesc { - short idx; /* variable index in stack */ -} Vardesc; - - -/* description of pending goto statements and label statements */ -typedef struct Labeldesc { - TString *name; /* label identifier */ - int pc; /* position in code */ - int line; /* line where it appeared */ - lu_byte nactvar; /* local level where it appears in current block */ -} Labeldesc; - - -/* list of labels or gotos */ -typedef struct Labellist { - Labeldesc *arr; /* array */ - int n; /* number of entries in use */ - int size; /* array size */ -} Labellist; - - -/* dynamic structures used by the parser */ -typedef struct Dyndata { - struct { /* list of active local variables */ - Vardesc *arr; - int n; - int size; - } actvar; - Labellist gt; /* list of pending gotos */ - Labellist label; /* list of active labels */ -} Dyndata; - - -/* control of blocks */ -struct BlockCnt; /* defined in lparser.c */ - - -/* state needed to generate code for a given function */ -typedef struct FuncState { - Proto *f; /* current function header */ - Table *h; /* table to find (and reuse) elements in `k' */ - struct FuncState *prev; /* enclosing function */ - struct LexState *ls; /* lexical state */ - struct BlockCnt *bl; /* chain of current blocks */ - int pc; /* next position to code (equivalent to `ncode') */ - int lasttarget; /* 'label' of last 'jump label' */ - int jpc; /* list of pending jumps to `pc' */ - int nk; /* number of elements in `k' */ - int np; /* number of elements in `p' */ - int firstlocal; /* index of first local var (in Dyndata array) */ - short nlocvars; /* number of elements in 'f->locvars' */ - lu_byte nactvar; /* number of active local variables */ - lu_byte nups; /* number of upvalues */ - lu_byte freereg; /* first free register */ -} FuncState; - - -LUAI_FUNC Closure *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, - Dyndata *dyd, const char *name, int firstchar); - - -#endif diff --git a/source/libs/lua52/lua52-src/src/lstate.c b/source/libs/lua52/lua52-src/src/lstate.c deleted file mode 100644 index c7f2672be..000000000 --- a/source/libs/lua52/lua52-src/src/lstate.c +++ /dev/null @@ -1,323 +0,0 @@ -/* -** $Id: lstate.c,v 2.99.1.2 2013/11/08 17:45:31 roberto Exp $ -** Global State -** See Copyright Notice in lua.h -*/ - - -#include <stddef.h> -#include <string.h> - -#define lstate_c -#define LUA_CORE - -#include "lua.h" - -#include "lapi.h" -#include "ldebug.h" -#include "ldo.h" -#include "lfunc.h" -#include "lgc.h" -#include "llex.h" -#include "lmem.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "ltm.h" - - -#if !defined(LUAI_GCPAUSE) -#define LUAI_GCPAUSE 200 /* 200% */ -#endif - -#if !defined(LUAI_GCMAJOR) -#define LUAI_GCMAJOR 200 /* 200% */ -#endif - -#if !defined(LUAI_GCMUL) -#define LUAI_GCMUL 200 /* GC runs 'twice the speed' of memory allocation */ -#endif - - -#define MEMERRMSG "not enough memory" - - -/* -** a macro to help the creation of a unique random seed when a state is -** created; the seed is used to randomize hashes. -*/ -#if !defined(luai_makeseed) -#include <time.h> -#define luai_makeseed() cast(unsigned int, time(NULL)) -#endif - - - -/* -** thread state + extra space -*/ -typedef struct LX { -#if defined(LUAI_EXTRASPACE) - char buff[LUAI_EXTRASPACE]; -#endif - lua_State l; -} LX; - - -/* -** Main thread combines a thread state and the global state -*/ -typedef struct LG { - LX l; - global_State g; -} LG; - - - -#define fromstate(L) (cast(LX *, cast(lu_byte *, (L)) - offsetof(LX, l))) - - -/* -** Compute an initial seed as random as possible. In ANSI, rely on -** Address Space Layout Randomization (if present) to increase -** randomness.. -*/ -#define addbuff(b,p,e) \ - { size_t t = cast(size_t, e); \ - memcpy(buff + p, &t, sizeof(t)); p += sizeof(t); } - -static unsigned int makeseed (lua_State *L) { - char buff[4 * sizeof(size_t)]; - unsigned int h = luai_makeseed(); - int p = 0; - addbuff(buff, p, L); /* heap variable */ - addbuff(buff, p, &h); /* local variable */ - addbuff(buff, p, luaO_nilobject); /* global variable */ - addbuff(buff, p, &lua_newstate); /* public function */ - lua_assert(p == sizeof(buff)); - return luaS_hash(buff, p, h); -} - - -/* -** set GCdebt to a new value keeping the value (totalbytes + GCdebt) -** invariant -*/ -void luaE_setdebt (global_State *g, l_mem debt) { - g->totalbytes -= (debt - g->GCdebt); - g->GCdebt = debt; -} - - -CallInfo *luaE_extendCI (lua_State *L) { - CallInfo *ci = luaM_new(L, CallInfo); - lua_assert(L->ci->next == NULL); - L->ci->next = ci; - ci->previous = L->ci; - ci->next = NULL; - return ci; -} - - -void luaE_freeCI (lua_State *L) { - CallInfo *ci = L->ci; - CallInfo *next = ci->next; - ci->next = NULL; - while ((ci = next) != NULL) { - next = ci->next; - luaM_free(L, ci); - } -} - - -static void stack_init (lua_State *L1, lua_State *L) { - int i; CallInfo *ci; - /* initialize stack array */ - L1->stack = luaM_newvector(L, BASIC_STACK_SIZE, TValue); - L1->stacksize = BASIC_STACK_SIZE; - for (i = 0; i < BASIC_STACK_SIZE; i++) - setnilvalue(L1->stack + i); /* erase new stack */ - L1->top = L1->stack; - L1->stack_last = L1->stack + L1->stacksize - EXTRA_STACK; - /* initialize first ci */ - ci = &L1->base_ci; - ci->next = ci->previous = NULL; - ci->callstatus = 0; - ci->func = L1->top; - setnilvalue(L1->top++); /* 'function' entry for this 'ci' */ - ci->top = L1->top + LUA_MINSTACK; - L1->ci = ci; -} - - -static void freestack (lua_State *L) { - if (L->stack == NULL) - return; /* stack not completely built yet */ - L->ci = &L->base_ci; /* free the entire 'ci' list */ - luaE_freeCI(L); - luaM_freearray(L, L->stack, L->stacksize); /* free stack array */ -} - - -/* -** Create registry table and its predefined values -*/ -static void init_registry (lua_State *L, global_State *g) { - TValue mt; - /* create registry */ - Table *registry = luaH_new(L); - sethvalue(L, &g->l_registry, registry); - luaH_resize(L, registry, LUA_RIDX_LAST, 0); - /* registry[LUA_RIDX_MAINTHREAD] = L */ - setthvalue(L, &mt, L); - luaH_setint(L, registry, LUA_RIDX_MAINTHREAD, &mt); - /* registry[LUA_RIDX_GLOBALS] = table of globals */ - sethvalue(L, &mt, luaH_new(L)); - luaH_setint(L, registry, LUA_RIDX_GLOBALS, &mt); -} - - -/* -** open parts of the state that may cause memory-allocation errors -*/ -static void f_luaopen (lua_State *L, void *ud) { - global_State *g = G(L); - UNUSED(ud); - stack_init(L, L); /* init stack */ - init_registry(L, g); - luaS_resize(L, MINSTRTABSIZE); /* initial size of string table */ - luaT_init(L); - luaX_init(L); - /* pre-create memory-error message */ - g->memerrmsg = luaS_newliteral(L, MEMERRMSG); - luaS_fix(g->memerrmsg); /* it should never be collected */ - g->gcrunning = 1; /* allow gc */ - g->version = lua_version(NULL); - luai_userstateopen(L); -} - - -/* -** preinitialize a state with consistent values without allocating -** any memory (to avoid errors) -*/ -static void preinit_state (lua_State *L, global_State *g) { - G(L) = g; - L->stack = NULL; - L->ci = NULL; - L->stacksize = 0; - L->errorJmp = NULL; - L->nCcalls = 0; - L->hook = NULL; - L->hookmask = 0; - L->basehookcount = 0; - L->allowhook = 1; - resethookcount(L); - L->openupval = NULL; - L->nny = 1; - L->status = LUA_OK; - L->errfunc = 0; -} - - -static void close_state (lua_State *L) { - global_State *g = G(L); - luaF_close(L, L->stack); /* close all upvalues for this thread */ - luaC_freeallobjects(L); /* collect all objects */ - if (g->version) /* closing a fully built state? */ - luai_userstateclose(L); - luaM_freearray(L, G(L)->strt.hash, G(L)->strt.size); - luaZ_freebuffer(L, &g->buff); - freestack(L); - lua_assert(gettotalbytes(g) == sizeof(LG)); - (*g->frealloc)(g->ud, fromstate(L), sizeof(LG), 0); /* free main block */ -} - - -LUA_API lua_State *lua_newthread (lua_State *L) { - lua_State *L1; - lua_lock(L); - luaC_checkGC(L); - L1 = &luaC_newobj(L, LUA_TTHREAD, sizeof(LX), NULL, offsetof(LX, l))->th; - setthvalue(L, L->top, L1); - api_incr_top(L); - preinit_state(L1, G(L)); - L1->hookmask = L->hookmask; - L1->basehookcount = L->basehookcount; - L1->hook = L->hook; - resethookcount(L1); - luai_userstatethread(L, L1); - stack_init(L1, L); /* init stack */ - lua_unlock(L); - return L1; -} - - -void luaE_freethread (lua_State *L, lua_State *L1) { - LX *l = fromstate(L1); - luaF_close(L1, L1->stack); /* close all upvalues for this thread */ - lua_assert(L1->openupval == NULL); - luai_userstatefree(L, L1); - freestack(L1); - luaM_free(L, l); -} - - -LUA_API lua_State *lua_newstate (lua_Alloc f, void *ud) { - int i; - lua_State *L; - global_State *g; - LG *l = cast(LG *, (*f)(ud, NULL, LUA_TTHREAD, sizeof(LG))); - if (l == NULL) return NULL; - L = &l->l.l; - g = &l->g; - L->next = NULL; - L->tt = LUA_TTHREAD; - g->currentwhite = bit2mask(WHITE0BIT, FIXEDBIT); - L->marked = luaC_white(g); - g->gckind = KGC_NORMAL; - preinit_state(L, g); - g->frealloc = f; - g->ud = ud; - g->mainthread = L; - g->seed = makeseed(L); - g->uvhead.u.l.prev = &g->uvhead; - g->uvhead.u.l.next = &g->uvhead; - g->gcrunning = 0; /* no GC while building state */ - g->GCestimate = 0; - g->strt.size = 0; - g->strt.nuse = 0; - g->strt.hash = NULL; - setnilvalue(&g->l_registry); - luaZ_initbuffer(L, &g->buff); - g->panic = NULL; - g->version = NULL; - g->gcstate = GCSpause; - g->allgc = NULL; - g->finobj = NULL; - g->tobefnz = NULL; - g->sweepgc = g->sweepfin = NULL; - g->gray = g->grayagain = NULL; - g->weak = g->ephemeron = g->allweak = NULL; - g->totalbytes = sizeof(LG); - g->GCdebt = 0; - g->gcpause = LUAI_GCPAUSE; - g->gcmajorinc = LUAI_GCMAJOR; - g->gcstepmul = LUAI_GCMUL; - for (i=0; i < LUA_NUMTAGS; i++) g->mt[i] = NULL; - if (luaD_rawrunprotected(L, f_luaopen, NULL) != LUA_OK) { - /* memory allocation error: free partial state */ - close_state(L); - L = NULL; - } - return L; -} - - -LUA_API void lua_close (lua_State *L) { - L = G(L)->mainthread; /* only the main thread can be closed */ - lua_lock(L); - close_state(L); -} - - diff --git a/source/libs/lua52/lua52-src/src/lstate.h b/source/libs/lua52/lua52-src/src/lstate.h deleted file mode 100644 index daffd9aac..000000000 --- a/source/libs/lua52/lua52-src/src/lstate.h +++ /dev/null @@ -1,228 +0,0 @@ -/* -** $Id: lstate.h,v 2.82.1.1 2013/04/12 18:48:47 roberto Exp $ -** Global State -** See Copyright Notice in lua.h -*/ - -#ifndef lstate_h -#define lstate_h - -#include "lua.h" - -#include "lobject.h" -#include "ltm.h" -#include "lzio.h" - - -/* - -** Some notes about garbage-collected objects: All objects in Lua must -** be kept somehow accessible until being freed. -** -** Lua keeps most objects linked in list g->allgc. The link uses field -** 'next' of the CommonHeader. -** -** Strings are kept in several lists headed by the array g->strt.hash. -** -** Open upvalues are not subject to independent garbage collection. They -** are collected together with their respective threads. Lua keeps a -** double-linked list with all open upvalues (g->uvhead) so that it can -** mark objects referred by them. (They are always gray, so they must -** be remarked in the atomic step. Usually their contents would be marked -** when traversing the respective threads, but the thread may already be -** dead, while the upvalue is still accessible through closures.) -** -** Objects with finalizers are kept in the list g->finobj. -** -** The list g->tobefnz links all objects being finalized. - -*/ - - -struct lua_longjmp; /* defined in ldo.c */ - - - -/* extra stack space to handle TM calls and some other extras */ -#define EXTRA_STACK 5 - - -#define BASIC_STACK_SIZE (2*LUA_MINSTACK) - - -/* kinds of Garbage Collection */ -#define KGC_NORMAL 0 -#define KGC_EMERGENCY 1 /* gc was forced by an allocation failure */ -#define KGC_GEN 2 /* generational collection */ - - -typedef struct stringtable { - GCObject **hash; - lu_int32 nuse; /* number of elements */ - int size; -} stringtable; - - -/* -** information about a call -*/ -typedef struct CallInfo { - StkId func; /* function index in the stack */ - StkId top; /* top for this function */ - struct CallInfo *previous, *next; /* dynamic call link */ - short nresults; /* expected number of results from this function */ - lu_byte callstatus; - ptrdiff_t extra; - union { - struct { /* only for Lua functions */ - StkId base; /* base for this function */ - const Instruction *savedpc; - } l; - struct { /* only for C functions */ - int ctx; /* context info. in case of yields */ - lua_CFunction k; /* continuation in case of yields */ - ptrdiff_t old_errfunc; - lu_byte old_allowhook; - lu_byte status; - } c; - } u; -} CallInfo; - - -/* -** Bits in CallInfo status -*/ -#define CIST_LUA (1<<0) /* call is running a Lua function */ -#define CIST_HOOKED (1<<1) /* call is running a debug hook */ -#define CIST_REENTRY (1<<2) /* call is running on same invocation of - luaV_execute of previous call */ -#define CIST_YIELDED (1<<3) /* call reentered after suspension */ -#define CIST_YPCALL (1<<4) /* call is a yieldable protected call */ -#define CIST_STAT (1<<5) /* call has an error status (pcall) */ -#define CIST_TAIL (1<<6) /* call was tail called */ -#define CIST_HOOKYIELD (1<<7) /* last hook called yielded */ - - -#define isLua(ci) ((ci)->callstatus & CIST_LUA) - - -/* -** `global state', shared by all threads of this state -*/ -typedef struct global_State { - lua_Alloc frealloc; /* function to reallocate memory */ - void *ud; /* auxiliary data to `frealloc' */ - lu_mem totalbytes; /* number of bytes currently allocated - GCdebt */ - l_mem GCdebt; /* bytes allocated not yet compensated by the collector */ - lu_mem GCmemtrav; /* memory traversed by the GC */ - lu_mem GCestimate; /* an estimate of the non-garbage memory in use */ - stringtable strt; /* hash table for strings */ - TValue l_registry; - unsigned int seed; /* randomized seed for hashes */ - lu_byte currentwhite; - lu_byte gcstate; /* state of garbage collector */ - lu_byte gckind; /* kind of GC running */ - lu_byte gcrunning; /* true if GC is running */ - int sweepstrgc; /* position of sweep in `strt' */ - GCObject *allgc; /* list of all collectable objects */ - GCObject *finobj; /* list of collectable objects with finalizers */ - GCObject **sweepgc; /* current position of sweep in list 'allgc' */ - GCObject **sweepfin; /* current position of sweep in list 'finobj' */ - GCObject *gray; /* list of gray objects */ - GCObject *grayagain; /* list of objects to be traversed atomically */ - GCObject *weak; /* list of tables with weak values */ - GCObject *ephemeron; /* list of ephemeron tables (weak keys) */ - GCObject *allweak; /* list of all-weak tables */ - GCObject *tobefnz; /* list of userdata to be GC */ - UpVal uvhead; /* head of double-linked list of all open upvalues */ - Mbuffer buff; /* temporary buffer for string concatenation */ - int gcpause; /* size of pause between successive GCs */ - int gcmajorinc; /* pause between major collections (only in gen. mode) */ - int gcstepmul; /* GC `granularity' */ - lua_CFunction panic; /* to be called in unprotected errors */ - struct lua_State *mainthread; - const lua_Number *version; /* pointer to version number */ - TString *memerrmsg; /* memory-error message */ - TString *tmname[TM_N]; /* array with tag-method names */ - struct Table *mt[LUA_NUMTAGS]; /* metatables for basic types */ -} global_State; - - -/* -** `per thread' state -*/ -struct lua_State { - CommonHeader; - lu_byte status; - StkId top; /* first free slot in the stack */ - global_State *l_G; - CallInfo *ci; /* call info for current function */ - const Instruction *oldpc; /* last pc traced */ - StkId stack_last; /* last free slot in the stack */ - StkId stack; /* stack base */ - int stacksize; - unsigned short nny; /* number of non-yieldable calls in stack */ - unsigned short nCcalls; /* number of nested C calls */ - lu_byte hookmask; - lu_byte allowhook; - int basehookcount; - int hookcount; - lua_Hook hook; - GCObject *openupval; /* list of open upvalues in this stack */ - GCObject *gclist; - struct lua_longjmp *errorJmp; /* current error recover point */ - ptrdiff_t errfunc; /* current error handling function (stack index) */ - CallInfo base_ci; /* CallInfo for first level (C calling Lua) */ -}; - - -#define G(L) (L->l_G) - - -/* -** Union of all collectable objects -*/ -union GCObject { - GCheader gch; /* common header */ - union TString ts; - union Udata u; - union Closure cl; - struct Table h; - struct Proto p; - struct UpVal uv; - struct lua_State th; /* thread */ -}; - - -#define gch(o) (&(o)->gch) - -/* macros to convert a GCObject into a specific value */ -#define rawgco2ts(o) \ - check_exp(novariant((o)->gch.tt) == LUA_TSTRING, &((o)->ts)) -#define gco2ts(o) (&rawgco2ts(o)->tsv) -#define rawgco2u(o) check_exp((o)->gch.tt == LUA_TUSERDATA, &((o)->u)) -#define gco2u(o) (&rawgco2u(o)->uv) -#define gco2lcl(o) check_exp((o)->gch.tt == LUA_TLCL, &((o)->cl.l)) -#define gco2ccl(o) check_exp((o)->gch.tt == LUA_TCCL, &((o)->cl.c)) -#define gco2cl(o) \ - check_exp(novariant((o)->gch.tt) == LUA_TFUNCTION, &((o)->cl)) -#define gco2t(o) check_exp((o)->gch.tt == LUA_TTABLE, &((o)->h)) -#define gco2p(o) check_exp((o)->gch.tt == LUA_TPROTO, &((o)->p)) -#define gco2uv(o) check_exp((o)->gch.tt == LUA_TUPVAL, &((o)->uv)) -#define gco2th(o) check_exp((o)->gch.tt == LUA_TTHREAD, &((o)->th)) - -/* macro to convert any Lua object into a GCObject */ -#define obj2gco(v) (cast(GCObject *, (v))) - - -/* actual number of total bytes allocated */ -#define gettotalbytes(g) ((g)->totalbytes + (g)->GCdebt) - -LUAI_FUNC void luaE_setdebt (global_State *g, l_mem debt); -LUAI_FUNC void luaE_freethread (lua_State *L, lua_State *L1); -LUAI_FUNC CallInfo *luaE_extendCI (lua_State *L); -LUAI_FUNC void luaE_freeCI (lua_State *L); - - -#endif - diff --git a/source/libs/lua52/lua52-src/src/lstring.c b/source/libs/lua52/lua52-src/src/lstring.c deleted file mode 100644 index af96c89c1..000000000 --- a/source/libs/lua52/lua52-src/src/lstring.c +++ /dev/null @@ -1,185 +0,0 @@ -/* -** $Id: lstring.c,v 2.26.1.1 2013/04/12 18:48:47 roberto Exp $ -** String table (keeps all strings handled by Lua) -** See Copyright Notice in lua.h -*/ - - -#include <string.h> - -#define lstring_c -#define LUA_CORE - -#include "lua.h" - -#include "lmem.h" -#include "lobject.h" -#include "lstate.h" -#include "lstring.h" - - -/* -** Lua will use at most ~(2^LUAI_HASHLIMIT) bytes from a string to -** compute its hash -*/ -#if !defined(LUAI_HASHLIMIT) -#define LUAI_HASHLIMIT 5 -#endif - - -/* -** equality for long strings -*/ -int luaS_eqlngstr (TString *a, TString *b) { - size_t len = a->tsv.len; - lua_assert(a->tsv.tt == LUA_TLNGSTR && b->tsv.tt == LUA_TLNGSTR); - return (a == b) || /* same instance or... */ - ((len == b->tsv.len) && /* equal length and ... */ - (memcmp(getstr(a), getstr(b), len) == 0)); /* equal contents */ -} - - -/* -** equality for strings -*/ -int luaS_eqstr (TString *a, TString *b) { - return (a->tsv.tt == b->tsv.tt) && - (a->tsv.tt == LUA_TSHRSTR ? eqshrstr(a, b) : luaS_eqlngstr(a, b)); -} - - -unsigned int luaS_hash (const char *str, size_t l, unsigned int seed) { - unsigned int h = seed ^ cast(unsigned int, l); - size_t l1; - size_t step = (l >> LUAI_HASHLIMIT) + 1; - for (l1 = l; l1 >= step; l1 -= step) - h = h ^ ((h<<5) + (h>>2) + cast_byte(str[l1 - 1])); - return h; -} - - -/* -** resizes the string table -*/ -void luaS_resize (lua_State *L, int newsize) { - int i; - stringtable *tb = &G(L)->strt; - /* cannot resize while GC is traversing strings */ - luaC_runtilstate(L, ~bitmask(GCSsweepstring)); - if (newsize > tb->size) { - luaM_reallocvector(L, tb->hash, tb->size, newsize, GCObject *); - for (i = tb->size; i < newsize; i++) tb->hash[i] = NULL; - } - /* rehash */ - for (i=0; i<tb->size; i++) { - GCObject *p = tb->hash[i]; - tb->hash[i] = NULL; - while (p) { /* for each node in the list */ - GCObject *next = gch(p)->next; /* save next */ - unsigned int h = lmod(gco2ts(p)->hash, newsize); /* new position */ - gch(p)->next = tb->hash[h]; /* chain it */ - tb->hash[h] = p; - resetoldbit(p); /* see MOVE OLD rule */ - p = next; - } - } - if (newsize < tb->size) { - /* shrinking slice must be empty */ - lua_assert(tb->hash[newsize] == NULL && tb->hash[tb->size - 1] == NULL); - luaM_reallocvector(L, tb->hash, tb->size, newsize, GCObject *); - } - tb->size = newsize; -} - - -/* -** creates a new string object -*/ -static TString *createstrobj (lua_State *L, const char *str, size_t l, - int tag, unsigned int h, GCObject **list) { - TString *ts; - size_t totalsize; /* total size of TString object */ - totalsize = sizeof(TString) + ((l + 1) * sizeof(char)); - ts = &luaC_newobj(L, tag, totalsize, list, 0)->ts; - ts->tsv.len = l; - ts->tsv.hash = h; - ts->tsv.extra = 0; - memcpy(ts+1, str, l*sizeof(char)); - ((char *)(ts+1))[l] = '\0'; /* ending 0 */ - return ts; -} - - -/* -** creates a new short string, inserting it into string table -*/ -static TString *newshrstr (lua_State *L, const char *str, size_t l, - unsigned int h) { - GCObject **list; /* (pointer to) list where it will be inserted */ - stringtable *tb = &G(L)->strt; - TString *s; - if (tb->nuse >= cast(lu_int32, tb->size) && tb->size <= MAX_INT/2) - luaS_resize(L, tb->size*2); /* too crowded */ - list = &tb->hash[lmod(h, tb->size)]; - s = createstrobj(L, str, l, LUA_TSHRSTR, h, list); - tb->nuse++; - return s; -} - - -/* -** checks whether short string exists and reuses it or creates a new one -*/ -static TString *internshrstr (lua_State *L, const char *str, size_t l) { - GCObject *o; - global_State *g = G(L); - unsigned int h = luaS_hash(str, l, g->seed); - for (o = g->strt.hash[lmod(h, g->strt.size)]; - o != NULL; - o = gch(o)->next) { - TString *ts = rawgco2ts(o); - if (h == ts->tsv.hash && - l == ts->tsv.len && - (memcmp(str, getstr(ts), l * sizeof(char)) == 0)) { - if (isdead(G(L), o)) /* string is dead (but was not collected yet)? */ - changewhite(o); /* resurrect it */ - return ts; - } - } - return newshrstr(L, str, l, h); /* not found; create a new string */ -} - - -/* -** new string (with explicit length) -*/ -TString *luaS_newlstr (lua_State *L, const char *str, size_t l) { - if (l <= LUAI_MAXSHORTLEN) /* short string? */ - return internshrstr(L, str, l); - else { - if (l + 1 > (MAX_SIZET - sizeof(TString))/sizeof(char)) - luaM_toobig(L); - return createstrobj(L, str, l, LUA_TLNGSTR, G(L)->seed, NULL); - } -} - - -/* -** new zero-terminated string -*/ -TString *luaS_new (lua_State *L, const char *str) { - return luaS_newlstr(L, str, strlen(str)); -} - - -Udata *luaS_newudata (lua_State *L, size_t s, Table *e) { - Udata *u; - if (s > MAX_SIZET - sizeof(Udata)) - luaM_toobig(L); - u = &luaC_newobj(L, LUA_TUSERDATA, sizeof(Udata) + s, NULL, 0)->u; - u->uv.len = s; - u->uv.metatable = NULL; - u->uv.env = e; - return u; -} - diff --git a/source/libs/lua52/lua52-src/src/lstring.h b/source/libs/lua52/lua52-src/src/lstring.h deleted file mode 100644 index 260e7f169..000000000 --- a/source/libs/lua52/lua52-src/src/lstring.h +++ /dev/null @@ -1,46 +0,0 @@ -/* -** $Id: lstring.h,v 1.49.1.1 2013/04/12 18:48:47 roberto Exp $ -** String table (keep all strings handled by Lua) -** See Copyright Notice in lua.h -*/ - -#ifndef lstring_h -#define lstring_h - -#include "lgc.h" -#include "lobject.h" -#include "lstate.h" - - -#define sizestring(s) (sizeof(union TString)+((s)->len+1)*sizeof(char)) - -#define sizeudata(u) (sizeof(union Udata)+(u)->len) - -#define luaS_newliteral(L, s) (luaS_newlstr(L, "" s, \ - (sizeof(s)/sizeof(char))-1)) - -#define luaS_fix(s) l_setbit((s)->tsv.marked, FIXEDBIT) - - -/* -** test whether a string is a reserved word -*/ -#define isreserved(s) ((s)->tsv.tt == LUA_TSHRSTR && (s)->tsv.extra > 0) - - -/* -** equality for short strings, which are always internalized -*/ -#define eqshrstr(a,b) check_exp((a)->tsv.tt == LUA_TSHRSTR, (a) == (b)) - - -LUAI_FUNC unsigned int luaS_hash (const char *str, size_t l, unsigned int seed); -LUAI_FUNC int luaS_eqlngstr (TString *a, TString *b); -LUAI_FUNC int luaS_eqstr (TString *a, TString *b); -LUAI_FUNC void luaS_resize (lua_State *L, int newsize); -LUAI_FUNC Udata *luaS_newudata (lua_State *L, size_t s, Table *e); -LUAI_FUNC TString *luaS_newlstr (lua_State *L, const char *str, size_t l); -LUAI_FUNC TString *luaS_new (lua_State *L, const char *str); - - -#endif diff --git a/source/libs/lua52/lua52-src/src/lstrlib.c b/source/libs/lua52/lua52-src/src/lstrlib.c deleted file mode 100644 index 9261fd220..000000000 --- a/source/libs/lua52/lua52-src/src/lstrlib.c +++ /dev/null @@ -1,1019 +0,0 @@ -/* -** $Id: lstrlib.c,v 1.178.1.1 2013/04/12 18:48:47 roberto Exp $ -** Standard library for string operations and pattern-matching -** See Copyright Notice in lua.h -*/ - - -#include <ctype.h> -#include <stddef.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#define lstrlib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -/* -** maximum number of captures that a pattern can do during -** pattern-matching. This limit is arbitrary. -*/ -#if !defined(LUA_MAXCAPTURES) -#define LUA_MAXCAPTURES 32 -#endif - - -/* macro to `unsign' a character */ -#define uchar(c) ((unsigned char)(c)) - - - -static int str_len (lua_State *L) { - size_t l; - luaL_checklstring(L, 1, &l); - lua_pushinteger(L, (lua_Integer)l); - return 1; -} - - -/* translate a relative string position: negative means back from end */ -static size_t posrelat (ptrdiff_t pos, size_t len) { - if (pos >= 0) return (size_t)pos; - else if (0u - (size_t)pos > len) return 0; - else return len - ((size_t)-pos) + 1; -} - - -static int str_sub (lua_State *L) { - size_t l; - const char *s = luaL_checklstring(L, 1, &l); - size_t start = posrelat(luaL_checkinteger(L, 2), l); - size_t end = posrelat(luaL_optinteger(L, 3, -1), l); - if (start < 1) start = 1; - if (end > l) end = l; - if (start <= end) - lua_pushlstring(L, s + start - 1, end - start + 1); - else lua_pushliteral(L, ""); - return 1; -} - - -static int str_reverse (lua_State *L) { - size_t l, i; - luaL_Buffer b; - const char *s = luaL_checklstring(L, 1, &l); - char *p = luaL_buffinitsize(L, &b, l); - for (i = 0; i < l; i++) - p[i] = s[l - i - 1]; - luaL_pushresultsize(&b, l); - return 1; -} - - -static int str_lower (lua_State *L) { - size_t l; - size_t i; - luaL_Buffer b; - const char *s = luaL_checklstring(L, 1, &l); - char *p = luaL_buffinitsize(L, &b, l); - for (i=0; i<l; i++) - p[i] = tolower(uchar(s[i])); - luaL_pushresultsize(&b, l); - return 1; -} - - -static int str_upper (lua_State *L) { - size_t l; - size_t i; - luaL_Buffer b; - const char *s = luaL_checklstring(L, 1, &l); - char *p = luaL_buffinitsize(L, &b, l); - for (i=0; i<l; i++) - p[i] = toupper(uchar(s[i])); - luaL_pushresultsize(&b, l); - return 1; -} - - -/* reasonable limit to avoid arithmetic overflow */ -#define MAXSIZE ((~(size_t)0) >> 1) - -static int str_rep (lua_State *L) { - size_t l, lsep; - const char *s = luaL_checklstring(L, 1, &l); - int n = luaL_checkint(L, 2); - const char *sep = luaL_optlstring(L, 3, "", &lsep); - if (n <= 0) lua_pushliteral(L, ""); - else if (l + lsep < l || l + lsep >= MAXSIZE / n) /* may overflow? */ - return luaL_error(L, "resulting string too large"); - else { - size_t totallen = n * l + (n - 1) * lsep; - luaL_Buffer b; - char *p = luaL_buffinitsize(L, &b, totallen); - while (n-- > 1) { /* first n-1 copies (followed by separator) */ - memcpy(p, s, l * sizeof(char)); p += l; - if (lsep > 0) { /* avoid empty 'memcpy' (may be expensive) */ - memcpy(p, sep, lsep * sizeof(char)); p += lsep; - } - } - memcpy(p, s, l * sizeof(char)); /* last copy (not followed by separator) */ - luaL_pushresultsize(&b, totallen); - } - return 1; -} - - -static int str_byte (lua_State *L) { - size_t l; - const char *s = luaL_checklstring(L, 1, &l); - size_t posi = posrelat(luaL_optinteger(L, 2, 1), l); - size_t pose = posrelat(luaL_optinteger(L, 3, posi), l); - int n, i; - if (posi < 1) posi = 1; - if (pose > l) pose = l; - if (posi > pose) return 0; /* empty interval; return no values */ - n = (int)(pose - posi + 1); - if (posi + n <= pose) /* (size_t -> int) overflow? */ - return luaL_error(L, "string slice too long"); - luaL_checkstack(L, n, "string slice too long"); - for (i=0; i<n; i++) - lua_pushinteger(L, uchar(s[posi+i-1])); - return n; -} - - -static int str_char (lua_State *L) { - int n = lua_gettop(L); /* number of arguments */ - int i; - luaL_Buffer b; - char *p = luaL_buffinitsize(L, &b, n); - for (i=1; i<=n; i++) { - int c = luaL_checkint(L, i); - luaL_argcheck(L, uchar(c) == c, i, "value out of range"); - p[i - 1] = uchar(c); - } - luaL_pushresultsize(&b, n); - return 1; -} - - -static int writer (lua_State *L, const void* b, size_t size, void* B) { - (void)L; - luaL_addlstring((luaL_Buffer*) B, (const char *)b, size); - return 0; -} - - -static int str_dump (lua_State *L) { - luaL_Buffer b; - luaL_checktype(L, 1, LUA_TFUNCTION); - lua_settop(L, 1); - luaL_buffinit(L,&b); - if (lua_dump(L, writer, &b) != 0) - return luaL_error(L, "unable to dump given function"); - luaL_pushresult(&b); - return 1; -} - - - -/* -** {====================================================== -** PATTERN MATCHING -** ======================================================= -*/ - - -#define CAP_UNFINISHED (-1) -#define CAP_POSITION (-2) - - -typedef struct MatchState { - int matchdepth; /* control for recursive depth (to avoid C stack overflow) */ - const char *src_init; /* init of source string */ - const char *src_end; /* end ('\0') of source string */ - const char *p_end; /* end ('\0') of pattern */ - lua_State *L; - int level; /* total number of captures (finished or unfinished) */ - struct { - const char *init; - ptrdiff_t len; - } capture[LUA_MAXCAPTURES]; -} MatchState; - - -/* recursive function */ -static const char *match (MatchState *ms, const char *s, const char *p); - - -/* maximum recursion depth for 'match' */ -#if !defined(MAXCCALLS) -#define MAXCCALLS 200 -#endif - - -#define L_ESC '%' -#define SPECIALS "^$*+?.([%-" - - -static int check_capture (MatchState *ms, int l) { - l -= '1'; - if (l < 0 || l >= ms->level || ms->capture[l].len == CAP_UNFINISHED) - return luaL_error(ms->L, "invalid capture index %%%d", l + 1); - return l; -} - - -static int capture_to_close (MatchState *ms) { - int level = ms->level; - for (level--; level>=0; level--) - if (ms->capture[level].len == CAP_UNFINISHED) return level; - return luaL_error(ms->L, "invalid pattern capture"); -} - - -static const char *classend (MatchState *ms, const char *p) { - switch (*p++) { - case L_ESC: { - if (p == ms->p_end) - luaL_error(ms->L, "malformed pattern (ends with " LUA_QL("%%") ")"); - return p+1; - } - case '[': { - if (*p == '^') p++; - do { /* look for a `]' */ - if (p == ms->p_end) - luaL_error(ms->L, "malformed pattern (missing " LUA_QL("]") ")"); - if (*(p++) == L_ESC && p < ms->p_end) - p++; /* skip escapes (e.g. `%]') */ - } while (*p != ']'); - return p+1; - } - default: { - return p; - } - } -} - - -static int match_class (int c, int cl) { - int res; - switch (tolower(cl)) { - case 'a' : res = isalpha(c); break; - case 'c' : res = iscntrl(c); break; - case 'd' : res = isdigit(c); break; - case 'g' : res = isgraph(c); break; - case 'l' : res = islower(c); break; - case 'p' : res = ispunct(c); break; - case 's' : res = isspace(c); break; - case 'u' : res = isupper(c); break; - case 'w' : res = isalnum(c); break; - case 'x' : res = isxdigit(c); break; - case 'z' : res = (c == 0); break; /* deprecated option */ - default: return (cl == c); - } - return (islower(cl) ? res : !res); -} - - -static int matchbracketclass (int c, const char *p, const char *ec) { - int sig = 1; - if (*(p+1) == '^') { - sig = 0; - p++; /* skip the `^' */ - } - while (++p < ec) { - if (*p == L_ESC) { - p++; - if (match_class(c, uchar(*p))) - return sig; - } - else if ((*(p+1) == '-') && (p+2 < ec)) { - p+=2; - if (uchar(*(p-2)) <= c && c <= uchar(*p)) - return sig; - } - else if (uchar(*p) == c) return sig; - } - return !sig; -} - - -static int singlematch (MatchState *ms, const char *s, const char *p, - const char *ep) { - if (s >= ms->src_end) - return 0; - else { - int c = uchar(*s); - switch (*p) { - case '.': return 1; /* matches any char */ - case L_ESC: return match_class(c, uchar(*(p+1))); - case '[': return matchbracketclass(c, p, ep-1); - default: return (uchar(*p) == c); - } - } -} - - -static const char *matchbalance (MatchState *ms, const char *s, - const char *p) { - if (p >= ms->p_end - 1) - luaL_error(ms->L, "malformed pattern " - "(missing arguments to " LUA_QL("%%b") ")"); - if (*s != *p) return NULL; - else { - int b = *p; - int e = *(p+1); - int cont = 1; - while (++s < ms->src_end) { - if (*s == e) { - if (--cont == 0) return s+1; - } - else if (*s == b) cont++; - } - } - return NULL; /* string ends out of balance */ -} - - -static const char *max_expand (MatchState *ms, const char *s, - const char *p, const char *ep) { - ptrdiff_t i = 0; /* counts maximum expand for item */ - while (singlematch(ms, s + i, p, ep)) - i++; - /* keeps trying to match with the maximum repetitions */ - while (i>=0) { - const char *res = match(ms, (s+i), ep+1); - if (res) return res; - i--; /* else didn't match; reduce 1 repetition to try again */ - } - return NULL; -} - - -static const char *min_expand (MatchState *ms, const char *s, - const char *p, const char *ep) { - for (;;) { - const char *res = match(ms, s, ep+1); - if (res != NULL) - return res; - else if (singlematch(ms, s, p, ep)) - s++; /* try with one more repetition */ - else return NULL; - } -} - - -static const char *start_capture (MatchState *ms, const char *s, - const char *p, int what) { - const char *res; - int level = ms->level; - if (level >= LUA_MAXCAPTURES) luaL_error(ms->L, "too many captures"); - ms->capture[level].init = s; - ms->capture[level].len = what; - ms->level = level+1; - if ((res=match(ms, s, p)) == NULL) /* match failed? */ - ms->level--; /* undo capture */ - return res; -} - - -static const char *end_capture (MatchState *ms, const char *s, - const char *p) { - int l = capture_to_close(ms); - const char *res; - ms->capture[l].len = s - ms->capture[l].init; /* close capture */ - if ((res = match(ms, s, p)) == NULL) /* match failed? */ - ms->capture[l].len = CAP_UNFINISHED; /* undo capture */ - return res; -} - - -static const char *match_capture (MatchState *ms, const char *s, int l) { - size_t len; - l = check_capture(ms, l); - len = ms->capture[l].len; - if ((size_t)(ms->src_end-s) >= len && - memcmp(ms->capture[l].init, s, len) == 0) - return s+len; - else return NULL; -} - - -static const char *match (MatchState *ms, const char *s, const char *p) { - if (ms->matchdepth-- == 0) - luaL_error(ms->L, "pattern too complex"); - init: /* using goto's to optimize tail recursion */ - if (p != ms->p_end) { /* end of pattern? */ - switch (*p) { - case '(': { /* start capture */ - if (*(p + 1) == ')') /* position capture? */ - s = start_capture(ms, s, p + 2, CAP_POSITION); - else - s = start_capture(ms, s, p + 1, CAP_UNFINISHED); - break; - } - case ')': { /* end capture */ - s = end_capture(ms, s, p + 1); - break; - } - case '$': { - if ((p + 1) != ms->p_end) /* is the `$' the last char in pattern? */ - goto dflt; /* no; go to default */ - s = (s == ms->src_end) ? s : NULL; /* check end of string */ - break; - } - case L_ESC: { /* escaped sequences not in the format class[*+?-]? */ - switch (*(p + 1)) { - case 'b': { /* balanced string? */ - s = matchbalance(ms, s, p + 2); - if (s != NULL) { - p += 4; goto init; /* return match(ms, s, p + 4); */ - } /* else fail (s == NULL) */ - break; - } - case 'f': { /* frontier? */ - const char *ep; char previous; - p += 2; - if (*p != '[') - luaL_error(ms->L, "missing " LUA_QL("[") " after " - LUA_QL("%%f") " in pattern"); - ep = classend(ms, p); /* points to what is next */ - previous = (s == ms->src_init) ? '\0' : *(s - 1); - if (!matchbracketclass(uchar(previous), p, ep - 1) && - matchbracketclass(uchar(*s), p, ep - 1)) { - p = ep; goto init; /* return match(ms, s, ep); */ - } - s = NULL; /* match failed */ - break; - } - case '0': case '1': case '2': case '3': - case '4': case '5': case '6': case '7': - case '8': case '9': { /* capture results (%0-%9)? */ - s = match_capture(ms, s, uchar(*(p + 1))); - if (s != NULL) { - p += 2; goto init; /* return match(ms, s, p + 2) */ - } - break; - } - default: goto dflt; - } - break; - } - default: dflt: { /* pattern class plus optional suffix */ - const char *ep = classend(ms, p); /* points to optional suffix */ - /* does not match at least once? */ - if (!singlematch(ms, s, p, ep)) { - if (*ep == '*' || *ep == '?' || *ep == '-') { /* accept empty? */ - p = ep + 1; goto init; /* return match(ms, s, ep + 1); */ - } - else /* '+' or no suffix */ - s = NULL; /* fail */ - } - else { /* matched once */ - switch (*ep) { /* handle optional suffix */ - case '?': { /* optional */ - const char *res; - if ((res = match(ms, s + 1, ep + 1)) != NULL) - s = res; - else { - p = ep + 1; goto init; /* else return match(ms, s, ep + 1); */ - } - break; - } - case '+': /* 1 or more repetitions */ - s++; /* 1 match already done */ - /* go through */ - case '*': /* 0 or more repetitions */ - s = max_expand(ms, s, p, ep); - break; - case '-': /* 0 or more repetitions (minimum) */ - s = min_expand(ms, s, p, ep); - break; - default: /* no suffix */ - s++; p = ep; goto init; /* return match(ms, s + 1, ep); */ - } - } - break; - } - } - } - ms->matchdepth++; - return s; -} - - - -static const char *lmemfind (const char *s1, size_t l1, - const char *s2, size_t l2) { - if (l2 == 0) return s1; /* empty strings are everywhere */ - else if (l2 > l1) return NULL; /* avoids a negative `l1' */ - else { - const char *init; /* to search for a `*s2' inside `s1' */ - l2--; /* 1st char will be checked by `memchr' */ - l1 = l1-l2; /* `s2' cannot be found after that */ - while (l1 > 0 && (init = (const char *)memchr(s1, *s2, l1)) != NULL) { - init++; /* 1st char is already checked */ - if (memcmp(init, s2+1, l2) == 0) - return init-1; - else { /* correct `l1' and `s1' to try again */ - l1 -= init-s1; - s1 = init; - } - } - return NULL; /* not found */ - } -} - - -static void push_onecapture (MatchState *ms, int i, const char *s, - const char *e) { - if (i >= ms->level) { - if (i == 0) /* ms->level == 0, too */ - lua_pushlstring(ms->L, s, e - s); /* add whole match */ - else - luaL_error(ms->L, "invalid capture index"); - } - else { - ptrdiff_t l = ms->capture[i].len; - if (l == CAP_UNFINISHED) luaL_error(ms->L, "unfinished capture"); - if (l == CAP_POSITION) - lua_pushinteger(ms->L, ms->capture[i].init - ms->src_init + 1); - else - lua_pushlstring(ms->L, ms->capture[i].init, l); - } -} - - -static int push_captures (MatchState *ms, const char *s, const char *e) { - int i; - int nlevels = (ms->level == 0 && s) ? 1 : ms->level; - luaL_checkstack(ms->L, nlevels, "too many captures"); - for (i = 0; i < nlevels; i++) - push_onecapture(ms, i, s, e); - return nlevels; /* number of strings pushed */ -} - - -/* check whether pattern has no special characters */ -static int nospecials (const char *p, size_t l) { - size_t upto = 0; - do { - if (strpbrk(p + upto, SPECIALS)) - return 0; /* pattern has a special character */ - upto += strlen(p + upto) + 1; /* may have more after \0 */ - } while (upto <= l); - return 1; /* no special chars found */ -} - - -static int str_find_aux (lua_State *L, int find) { - size_t ls, lp; - const char *s = luaL_checklstring(L, 1, &ls); - const char *p = luaL_checklstring(L, 2, &lp); - size_t init = posrelat(luaL_optinteger(L, 3, 1), ls); - if (init < 1) init = 1; - else if (init > ls + 1) { /* start after string's end? */ - lua_pushnil(L); /* cannot find anything */ - return 1; - } - /* explicit request or no special characters? */ - if (find && (lua_toboolean(L, 4) || nospecials(p, lp))) { - /* do a plain search */ - const char *s2 = lmemfind(s + init - 1, ls - init + 1, p, lp); - if (s2) { - lua_pushinteger(L, s2 - s + 1); - lua_pushinteger(L, s2 - s + lp); - return 2; - } - } - else { - MatchState ms; - const char *s1 = s + init - 1; - int anchor = (*p == '^'); - if (anchor) { - p++; lp--; /* skip anchor character */ - } - ms.L = L; - ms.matchdepth = MAXCCALLS; - ms.src_init = s; - ms.src_end = s + ls; - ms.p_end = p + lp; - do { - const char *res; - ms.level = 0; - lua_assert(ms.matchdepth == MAXCCALLS); - if ((res=match(&ms, s1, p)) != NULL) { - if (find) { - lua_pushinteger(L, s1 - s + 1); /* start */ - lua_pushinteger(L, res - s); /* end */ - return push_captures(&ms, NULL, 0) + 2; - } - else - return push_captures(&ms, s1, res); - } - } while (s1++ < ms.src_end && !anchor); - } - lua_pushnil(L); /* not found */ - return 1; -} - - -static int str_find (lua_State *L) { - return str_find_aux(L, 1); -} - - -static int str_match (lua_State *L) { - return str_find_aux(L, 0); -} - - -static int gmatch_aux (lua_State *L) { - MatchState ms; - size_t ls, lp; - const char *s = lua_tolstring(L, lua_upvalueindex(1), &ls); - const char *p = lua_tolstring(L, lua_upvalueindex(2), &lp); - const char *src; - ms.L = L; - ms.matchdepth = MAXCCALLS; - ms.src_init = s; - ms.src_end = s+ls; - ms.p_end = p + lp; - for (src = s + (size_t)lua_tointeger(L, lua_upvalueindex(3)); - src <= ms.src_end; - src++) { - const char *e; - ms.level = 0; - lua_assert(ms.matchdepth == MAXCCALLS); - if ((e = match(&ms, src, p)) != NULL) { - lua_Integer newstart = e-s; - if (e == src) newstart++; /* empty match? go at least one position */ - lua_pushinteger(L, newstart); - lua_replace(L, lua_upvalueindex(3)); - return push_captures(&ms, src, e); - } - } - return 0; /* not found */ -} - - -static int gmatch (lua_State *L) { - luaL_checkstring(L, 1); - luaL_checkstring(L, 2); - lua_settop(L, 2); - lua_pushinteger(L, 0); - lua_pushcclosure(L, gmatch_aux, 3); - return 1; -} - - -static void add_s (MatchState *ms, luaL_Buffer *b, const char *s, - const char *e) { - size_t l, i; - const char *news = lua_tolstring(ms->L, 3, &l); - for (i = 0; i < l; i++) { - if (news[i] != L_ESC) - luaL_addchar(b, news[i]); - else { - i++; /* skip ESC */ - if (!isdigit(uchar(news[i]))) { - if (news[i] != L_ESC) - luaL_error(ms->L, "invalid use of " LUA_QL("%c") - " in replacement string", L_ESC); - luaL_addchar(b, news[i]); - } - else if (news[i] == '0') - luaL_addlstring(b, s, e - s); - else { - push_onecapture(ms, news[i] - '1', s, e); - luaL_addvalue(b); /* add capture to accumulated result */ - } - } - } -} - - -static void add_value (MatchState *ms, luaL_Buffer *b, const char *s, - const char *e, int tr) { - lua_State *L = ms->L; - switch (tr) { - case LUA_TFUNCTION: { - int n; - lua_pushvalue(L, 3); - n = push_captures(ms, s, e); - lua_call(L, n, 1); - break; - } - case LUA_TTABLE: { - push_onecapture(ms, 0, s, e); - lua_gettable(L, 3); - break; - } - default: { /* LUA_TNUMBER or LUA_TSTRING */ - add_s(ms, b, s, e); - return; - } - } - if (!lua_toboolean(L, -1)) { /* nil or false? */ - lua_pop(L, 1); - lua_pushlstring(L, s, e - s); /* keep original text */ - } - else if (!lua_isstring(L, -1)) - luaL_error(L, "invalid replacement value (a %s)", luaL_typename(L, -1)); - luaL_addvalue(b); /* add result to accumulator */ -} - - -static int str_gsub (lua_State *L) { - size_t srcl, lp; - const char *src = luaL_checklstring(L, 1, &srcl); - const char *p = luaL_checklstring(L, 2, &lp); - int tr = lua_type(L, 3); - size_t max_s = luaL_optinteger(L, 4, srcl+1); - int anchor = (*p == '^'); - size_t n = 0; - MatchState ms; - luaL_Buffer b; - luaL_argcheck(L, tr == LUA_TNUMBER || tr == LUA_TSTRING || - tr == LUA_TFUNCTION || tr == LUA_TTABLE, 3, - "string/function/table expected"); - luaL_buffinit(L, &b); - if (anchor) { - p++; lp--; /* skip anchor character */ - } - ms.L = L; - ms.matchdepth = MAXCCALLS; - ms.src_init = src; - ms.src_end = src+srcl; - ms.p_end = p + lp; - while (n < max_s) { - const char *e; - ms.level = 0; - lua_assert(ms.matchdepth == MAXCCALLS); - e = match(&ms, src, p); - if (e) { - n++; - add_value(&ms, &b, src, e, tr); - } - if (e && e>src) /* non empty match? */ - src = e; /* skip it */ - else if (src < ms.src_end) - luaL_addchar(&b, *src++); - else break; - if (anchor) break; - } - luaL_addlstring(&b, src, ms.src_end-src); - luaL_pushresult(&b); - lua_pushinteger(L, n); /* number of substitutions */ - return 2; -} - -/* }====================================================== */ - - - -/* -** {====================================================== -** STRING FORMAT -** ======================================================= -*/ - -/* -** LUA_INTFRMLEN is the length modifier for integer conversions in -** 'string.format'; LUA_INTFRM_T is the integer type corresponding to -** the previous length -*/ -#if !defined(LUA_INTFRMLEN) /* { */ -#if defined(LUA_USE_LONGLONG) - -#define LUA_INTFRMLEN "ll" -#define LUA_INTFRM_T long long - -#else - -#define LUA_INTFRMLEN "l" -#define LUA_INTFRM_T long - -#endif -#endif /* } */ - - -/* -** LUA_FLTFRMLEN is the length modifier for float conversions in -** 'string.format'; LUA_FLTFRM_T is the float type corresponding to -** the previous length -*/ -#if !defined(LUA_FLTFRMLEN) - -#define LUA_FLTFRMLEN "" -#define LUA_FLTFRM_T double - -#endif - - -/* maximum size of each formatted item (> len(format('%99.99f', -1e308))) */ -#define MAX_ITEM 512 -/* valid flags in a format specification */ -#define FLAGS "-+ #0" -/* -** maximum size of each format specification (such as '%-099.99d') -** (+10 accounts for %99.99x plus margin of error) -*/ -#define MAX_FORMAT (sizeof(FLAGS) + sizeof(LUA_INTFRMLEN) + 10) - - -static void addquoted (lua_State *L, luaL_Buffer *b, int arg) { - size_t l; - const char *s = luaL_checklstring(L, arg, &l); - luaL_addchar(b, '"'); - while (l--) { - if (*s == '"' || *s == '\\' || *s == '\n') { - luaL_addchar(b, '\\'); - luaL_addchar(b, *s); - } - else if (*s == '\0' || iscntrl(uchar(*s))) { - char buff[10]; - if (!isdigit(uchar(*(s+1)))) - sprintf(buff, "\\%d", (int)uchar(*s)); - else - sprintf(buff, "\\%03d", (int)uchar(*s)); - luaL_addstring(b, buff); - } - else - luaL_addchar(b, *s); - s++; - } - luaL_addchar(b, '"'); -} - -static const char *scanformat (lua_State *L, const char *strfrmt, char *form) { - const char *p = strfrmt; - while (*p != '\0' && strchr(FLAGS, *p) != NULL) p++; /* skip flags */ - if ((size_t)(p - strfrmt) >= sizeof(FLAGS)/sizeof(char)) - luaL_error(L, "invalid format (repeated flags)"); - if (isdigit(uchar(*p))) p++; /* skip width */ - if (isdigit(uchar(*p))) p++; /* (2 digits at most) */ - if (*p == '.') { - p++; - if (isdigit(uchar(*p))) p++; /* skip precision */ - if (isdigit(uchar(*p))) p++; /* (2 digits at most) */ - } - if (isdigit(uchar(*p))) - luaL_error(L, "invalid format (width or precision too long)"); - *(form++) = '%'; - memcpy(form, strfrmt, (p - strfrmt + 1) * sizeof(char)); - form += p - strfrmt + 1; - *form = '\0'; - return p; -} - - -/* -** add length modifier into formats -*/ -static void addlenmod (char *form, const char *lenmod) { - size_t l = strlen(form); - size_t lm = strlen(lenmod); - char spec = form[l - 1]; - strcpy(form + l - 1, lenmod); - form[l + lm - 1] = spec; - form[l + lm] = '\0'; -} - - -static int str_format (lua_State *L) { - int top = lua_gettop(L); - int arg = 1; - size_t sfl; - const char *strfrmt = luaL_checklstring(L, arg, &sfl); - const char *strfrmt_end = strfrmt+sfl; - luaL_Buffer b; - luaL_buffinit(L, &b); - while (strfrmt < strfrmt_end) { - if (*strfrmt != L_ESC) - luaL_addchar(&b, *strfrmt++); - else if (*++strfrmt == L_ESC) - luaL_addchar(&b, *strfrmt++); /* %% */ - else { /* format item */ - char form[MAX_FORMAT]; /* to store the format (`%...') */ - char *buff = luaL_prepbuffsize(&b, MAX_ITEM); /* to put formatted item */ - int nb = 0; /* number of bytes in added item */ - if (++arg > top) - luaL_argerror(L, arg, "no value"); - strfrmt = scanformat(L, strfrmt, form); - switch (*strfrmt++) { - case 'c': { - nb = sprintf(buff, form, luaL_checkint(L, arg)); - break; - } - case 'd': case 'i': { - lua_Number n = luaL_checknumber(L, arg); - LUA_INTFRM_T ni = (LUA_INTFRM_T)n; - lua_Number diff = n - (lua_Number)ni; - luaL_argcheck(L, -1 < diff && diff < 1, arg, - "not a number in proper range"); - addlenmod(form, LUA_INTFRMLEN); - nb = sprintf(buff, form, ni); - break; - } - case 'o': case 'u': case 'x': case 'X': { - lua_Number n = luaL_checknumber(L, arg); - unsigned LUA_INTFRM_T ni = (unsigned LUA_INTFRM_T)n; - lua_Number diff = n - (lua_Number)ni; - luaL_argcheck(L, -1 < diff && diff < 1, arg, - "not a non-negative number in proper range"); - addlenmod(form, LUA_INTFRMLEN); - nb = sprintf(buff, form, ni); - break; - } - case 'e': case 'E': case 'f': -#if defined(LUA_USE_AFORMAT) - case 'a': case 'A': -#endif - case 'g': case 'G': { - addlenmod(form, LUA_FLTFRMLEN); - nb = sprintf(buff, form, (LUA_FLTFRM_T)luaL_checknumber(L, arg)); - break; - } - case 'q': { - addquoted(L, &b, arg); - break; - } - case 's': { - size_t l; - const char *s = luaL_tolstring(L, arg, &l); - if (!strchr(form, '.') && l >= 100) { - /* no precision and string is too long to be formatted; - keep original string */ - luaL_addvalue(&b); - break; - } - else { - nb = sprintf(buff, form, s); - lua_pop(L, 1); /* remove result from 'luaL_tolstring' */ - break; - } - } - default: { /* also treat cases `pnLlh' */ - return luaL_error(L, "invalid option " LUA_QL("%%%c") " to " - LUA_QL("format"), *(strfrmt - 1)); - } - } - luaL_addsize(&b, nb); - } - } - luaL_pushresult(&b); - return 1; -} - -/* }====================================================== */ - - -static const luaL_Reg strlib[] = { - {"byte", str_byte}, - {"char", str_char}, - {"dump", str_dump}, - {"find", str_find}, - {"format", str_format}, - {"gmatch", gmatch}, - {"gsub", str_gsub}, - {"len", str_len}, - {"lower", str_lower}, - {"match", str_match}, - {"rep", str_rep}, - {"reverse", str_reverse}, - {"sub", str_sub}, - {"upper", str_upper}, - {NULL, NULL} -}; - - -static void createmetatable (lua_State *L) { - lua_createtable(L, 0, 1); /* table to be metatable for strings */ - lua_pushliteral(L, ""); /* dummy string */ - lua_pushvalue(L, -2); /* copy table */ - lua_setmetatable(L, -2); /* set table as metatable for strings */ - lua_pop(L, 1); /* pop dummy string */ - lua_pushvalue(L, -2); /* get string library */ - lua_setfield(L, -2, "__index"); /* metatable.__index = string */ - lua_pop(L, 1); /* pop metatable */ -} - - -/* -** Open string library -*/ -LUAMOD_API int luaopen_string (lua_State *L) { - luaL_newlib(L, strlib); - createmetatable(L); - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/ltable.c b/source/libs/lua52/lua52-src/src/ltable.c deleted file mode 100644 index 5d76f97ec..000000000 --- a/source/libs/lua52/lua52-src/src/ltable.c +++ /dev/null @@ -1,588 +0,0 @@ -/* -** $Id: ltable.c,v 2.72.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lua tables (hash) -** See Copyright Notice in lua.h -*/ - - -/* -** Implementation of tables (aka arrays, objects, or hash tables). -** Tables keep its elements in two parts: an array part and a hash part. -** Non-negative integer keys are all candidates to be kept in the array -** part. The actual size of the array is the largest `n' such that at -** least half the slots between 0 and n are in use. -** Hash uses a mix of chained scatter table with Brent's variation. -** A main invariant of these tables is that, if an element is not -** in its main position (i.e. the `original' position that its hash gives -** to it), then the colliding element is in its own main position. -** Hence even when the load factor reaches 100%, performance remains good. -*/ - -#include <string.h> - -#define ltable_c -#define LUA_CORE - -#include "lua.h" - -#include "ldebug.h" -#include "ldo.h" -#include "lgc.h" -#include "lmem.h" -#include "lobject.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "lvm.h" - - -/* -** max size of array part is 2^MAXBITS -*/ -#if LUAI_BITSINT >= 32 -#define MAXBITS 30 -#else -#define MAXBITS (LUAI_BITSINT-2) -#endif - -#define MAXASIZE (1 << MAXBITS) - - -#define hashpow2(t,n) (gnode(t, lmod((n), sizenode(t)))) - -#define hashstr(t,str) hashpow2(t, (str)->tsv.hash) -#define hashboolean(t,p) hashpow2(t, p) - - -/* -** for some types, it is better to avoid modulus by power of 2, as -** they tend to have many 2 factors. -*/ -#define hashmod(t,n) (gnode(t, ((n) % ((sizenode(t)-1)|1)))) - - -#define hashpointer(t,p) hashmod(t, IntPoint(p)) - - -#define dummynode (&dummynode_) - -#define isdummy(n) ((n) == dummynode) - -static const Node dummynode_ = { - {NILCONSTANT}, /* value */ - {{NILCONSTANT, NULL}} /* key */ -}; - - -/* -** hash for lua_Numbers -*/ -static Node *hashnum (const Table *t, lua_Number n) { - int i; - luai_hashnum(i, n); - if (i < 0) { - if (cast(unsigned int, i) == 0u - i) /* use unsigned to avoid overflows */ - i = 0; /* handle INT_MIN */ - i = -i; /* must be a positive value */ - } - return hashmod(t, i); -} - - - -/* -** returns the `main' position of an element in a table (that is, the index -** of its hash value) -*/ -static Node *mainposition (const Table *t, const TValue *key) { - switch (ttype(key)) { - case LUA_TNUMBER: - return hashnum(t, nvalue(key)); - case LUA_TLNGSTR: { - TString *s = rawtsvalue(key); - if (s->tsv.extra == 0) { /* no hash? */ - s->tsv.hash = luaS_hash(getstr(s), s->tsv.len, s->tsv.hash); - s->tsv.extra = 1; /* now it has its hash */ - } - return hashstr(t, rawtsvalue(key)); - } - case LUA_TSHRSTR: - return hashstr(t, rawtsvalue(key)); - case LUA_TBOOLEAN: - return hashboolean(t, bvalue(key)); - case LUA_TLIGHTUSERDATA: - return hashpointer(t, pvalue(key)); - case LUA_TLCF: - return hashpointer(t, fvalue(key)); - default: - return hashpointer(t, gcvalue(key)); - } -} - - -/* -** returns the index for `key' if `key' is an appropriate key to live in -** the array part of the table, -1 otherwise. -*/ -static int arrayindex (const TValue *key) { - if (ttisnumber(key)) { - lua_Number n = nvalue(key); - int k; - lua_number2int(k, n); - if (luai_numeq(cast_num(k), n)) - return k; - } - return -1; /* `key' did not match some condition */ -} - - -/* -** returns the index of a `key' for table traversals. First goes all -** elements in the array part, then elements in the hash part. The -** beginning of a traversal is signaled by -1. -*/ -static int findindex (lua_State *L, Table *t, StkId key) { - int i; - if (ttisnil(key)) return -1; /* first iteration */ - i = arrayindex(key); - if (0 < i && i <= t->sizearray) /* is `key' inside array part? */ - return i-1; /* yes; that's the index (corrected to C) */ - else { - Node *n = mainposition(t, key); - for (;;) { /* check whether `key' is somewhere in the chain */ - /* key may be dead already, but it is ok to use it in `next' */ - if (luaV_rawequalobj(gkey(n), key) || - (ttisdeadkey(gkey(n)) && iscollectable(key) && - deadvalue(gkey(n)) == gcvalue(key))) { - i = cast_int(n - gnode(t, 0)); /* key index in hash table */ - /* hash elements are numbered after array ones */ - return i + t->sizearray; - } - else n = gnext(n); - if (n == NULL) - luaG_runerror(L, "invalid key to " LUA_QL("next")); /* key not found */ - } - } -} - - -int luaH_next (lua_State *L, Table *t, StkId key) { - int i = findindex(L, t, key); /* find original element */ - for (i++; i < t->sizearray; i++) { /* try first array part */ - if (!ttisnil(&t->array[i])) { /* a non-nil value? */ - setnvalue(key, cast_num(i+1)); - setobj2s(L, key+1, &t->array[i]); - return 1; - } - } - for (i -= t->sizearray; i < sizenode(t); i++) { /* then hash part */ - if (!ttisnil(gval(gnode(t, i)))) { /* a non-nil value? */ - setobj2s(L, key, gkey(gnode(t, i))); - setobj2s(L, key+1, gval(gnode(t, i))); - return 1; - } - } - return 0; /* no more elements */ -} - - -/* -** {============================================================= -** Rehash -** ============================================================== -*/ - - -static int computesizes (int nums[], int *narray) { - int i; - int twotoi; /* 2^i */ - int a = 0; /* number of elements smaller than 2^i */ - int na = 0; /* number of elements to go to array part */ - int n = 0; /* optimal size for array part */ - for (i = 0, twotoi = 1; twotoi/2 < *narray; i++, twotoi *= 2) { - if (nums[i] > 0) { - a += nums[i]; - if (a > twotoi/2) { /* more than half elements present? */ - n = twotoi; /* optimal size (till now) */ - na = a; /* all elements smaller than n will go to array part */ - } - } - if (a == *narray) break; /* all elements already counted */ - } - *narray = n; - lua_assert(*narray/2 <= na && na <= *narray); - return na; -} - - -static int countint (const TValue *key, int *nums) { - int k = arrayindex(key); - if (0 < k && k <= MAXASIZE) { /* is `key' an appropriate array index? */ - nums[luaO_ceillog2(k)]++; /* count as such */ - return 1; - } - else - return 0; -} - - -static int numusearray (const Table *t, int *nums) { - int lg; - int ttlg; /* 2^lg */ - int ause = 0; /* summation of `nums' */ - int i = 1; /* count to traverse all array keys */ - for (lg=0, ttlg=1; lg<=MAXBITS; lg++, ttlg*=2) { /* for each slice */ - int lc = 0; /* counter */ - int lim = ttlg; - if (lim > t->sizearray) { - lim = t->sizearray; /* adjust upper limit */ - if (i > lim) - break; /* no more elements to count */ - } - /* count elements in range (2^(lg-1), 2^lg] */ - for (; i <= lim; i++) { - if (!ttisnil(&t->array[i-1])) - lc++; - } - nums[lg] += lc; - ause += lc; - } - return ause; -} - - -static int numusehash (const Table *t, int *nums, int *pnasize) { - int totaluse = 0; /* total number of elements */ - int ause = 0; /* summation of `nums' */ - int i = sizenode(t); - while (i--) { - Node *n = &t->node[i]; - if (!ttisnil(gval(n))) { - ause += countint(gkey(n), nums); - totaluse++; - } - } - *pnasize += ause; - return totaluse; -} - - -static void setarrayvector (lua_State *L, Table *t, int size) { - int i; - luaM_reallocvector(L, t->array, t->sizearray, size, TValue); - for (i=t->sizearray; i<size; i++) - setnilvalue(&t->array[i]); - t->sizearray = size; -} - - -static void setnodevector (lua_State *L, Table *t, int size) { - int lsize; - if (size == 0) { /* no elements to hash part? */ - t->node = cast(Node *, dummynode); /* use common `dummynode' */ - lsize = 0; - } - else { - int i; - lsize = luaO_ceillog2(size); - if (lsize > MAXBITS) - luaG_runerror(L, "table overflow"); - size = twoto(lsize); - t->node = luaM_newvector(L, size, Node); - for (i=0; i<size; i++) { - Node *n = gnode(t, i); - gnext(n) = NULL; - setnilvalue(gkey(n)); - setnilvalue(gval(n)); - } - } - t->lsizenode = cast_byte(lsize); - t->lastfree = gnode(t, size); /* all positions are free */ -} - - -void luaH_resize (lua_State *L, Table *t, int nasize, int nhsize) { - int i; - int oldasize = t->sizearray; - int oldhsize = t->lsizenode; - Node *nold = t->node; /* save old hash ... */ - if (nasize > oldasize) /* array part must grow? */ - setarrayvector(L, t, nasize); - /* create new hash part with appropriate size */ - setnodevector(L, t, nhsize); - if (nasize < oldasize) { /* array part must shrink? */ - t->sizearray = nasize; - /* re-insert elements from vanishing slice */ - for (i=nasize; i<oldasize; i++) { - if (!ttisnil(&t->array[i])) - luaH_setint(L, t, i + 1, &t->array[i]); - } - /* shrink array */ - luaM_reallocvector(L, t->array, oldasize, nasize, TValue); - } - /* re-insert elements from hash part */ - for (i = twoto(oldhsize) - 1; i >= 0; i--) { - Node *old = nold+i; - if (!ttisnil(gval(old))) { - /* doesn't need barrier/invalidate cache, as entry was - already present in the table */ - setobjt2t(L, luaH_set(L, t, gkey(old)), gval(old)); - } - } - if (!isdummy(nold)) - luaM_freearray(L, nold, cast(size_t, twoto(oldhsize))); /* free old array */ -} - - -void luaH_resizearray (lua_State *L, Table *t, int nasize) { - int nsize = isdummy(t->node) ? 0 : sizenode(t); - luaH_resize(L, t, nasize, nsize); -} - - -static void rehash (lua_State *L, Table *t, const TValue *ek) { - int nasize, na; - int nums[MAXBITS+1]; /* nums[i] = number of keys with 2^(i-1) < k <= 2^i */ - int i; - int totaluse; - for (i=0; i<=MAXBITS; i++) nums[i] = 0; /* reset counts */ - nasize = numusearray(t, nums); /* count keys in array part */ - totaluse = nasize; /* all those keys are integer keys */ - totaluse += numusehash(t, nums, &nasize); /* count keys in hash part */ - /* count extra key */ - nasize += countint(ek, nums); - totaluse++; - /* compute new size for array part */ - na = computesizes(nums, &nasize); - /* resize the table to new computed sizes */ - luaH_resize(L, t, nasize, totaluse - na); -} - - - -/* -** }============================================================= -*/ - - -Table *luaH_new (lua_State *L) { - Table *t = &luaC_newobj(L, LUA_TTABLE, sizeof(Table), NULL, 0)->h; - t->metatable = NULL; - t->flags = cast_byte(~0); - t->array = NULL; - t->sizearray = 0; - setnodevector(L, t, 0); - return t; -} - - -void luaH_free (lua_State *L, Table *t) { - if (!isdummy(t->node)) - luaM_freearray(L, t->node, cast(size_t, sizenode(t))); - luaM_freearray(L, t->array, t->sizearray); - luaM_free(L, t); -} - - -static Node *getfreepos (Table *t) { - while (t->lastfree > t->node) { - t->lastfree--; - if (ttisnil(gkey(t->lastfree))) - return t->lastfree; - } - return NULL; /* could not find a free place */ -} - - - -/* -** inserts a new key into a hash table; first, check whether key's main -** position is free. If not, check whether colliding node is in its main -** position or not: if it is not, move colliding node to an empty place and -** put new key in its main position; otherwise (colliding node is in its main -** position), new key goes to an empty position. -*/ -TValue *luaH_newkey (lua_State *L, Table *t, const TValue *key) { - Node *mp; - if (ttisnil(key)) luaG_runerror(L, "table index is nil"); - else if (ttisnumber(key) && luai_numisnan(L, nvalue(key))) - luaG_runerror(L, "table index is NaN"); - mp = mainposition(t, key); - if (!ttisnil(gval(mp)) || isdummy(mp)) { /* main position is taken? */ - Node *othern; - Node *n = getfreepos(t); /* get a free place */ - if (n == NULL) { /* cannot find a free place? */ - rehash(L, t, key); /* grow table */ - /* whatever called 'newkey' take care of TM cache and GC barrier */ - return luaH_set(L, t, key); /* insert key into grown table */ - } - lua_assert(!isdummy(n)); - othern = mainposition(t, gkey(mp)); - if (othern != mp) { /* is colliding node out of its main position? */ - /* yes; move colliding node into free position */ - while (gnext(othern) != mp) othern = gnext(othern); /* find previous */ - gnext(othern) = n; /* redo the chain with `n' in place of `mp' */ - *n = *mp; /* copy colliding node into free pos. (mp->next also goes) */ - gnext(mp) = NULL; /* now `mp' is free */ - setnilvalue(gval(mp)); - } - else { /* colliding node is in its own main position */ - /* new node will go into free position */ - gnext(n) = gnext(mp); /* chain new position */ - gnext(mp) = n; - mp = n; - } - } - setobj2t(L, gkey(mp), key); - luaC_barrierback(L, obj2gco(t), key); - lua_assert(ttisnil(gval(mp))); - return gval(mp); -} - - -/* -** search function for integers -*/ -const TValue *luaH_getint (Table *t, int key) { - /* (1 <= key && key <= t->sizearray) */ - if (cast(unsigned int, key-1) < cast(unsigned int, t->sizearray)) - return &t->array[key-1]; - else { - lua_Number nk = cast_num(key); - Node *n = hashnum(t, nk); - do { /* check whether `key' is somewhere in the chain */ - if (ttisnumber(gkey(n)) && luai_numeq(nvalue(gkey(n)), nk)) - return gval(n); /* that's it */ - else n = gnext(n); - } while (n); - return luaO_nilobject; - } -} - - -/* -** search function for short strings -*/ -const TValue *luaH_getstr (Table *t, TString *key) { - Node *n = hashstr(t, key); - lua_assert(key->tsv.tt == LUA_TSHRSTR); - do { /* check whether `key' is somewhere in the chain */ - if (ttisshrstring(gkey(n)) && eqshrstr(rawtsvalue(gkey(n)), key)) - return gval(n); /* that's it */ - else n = gnext(n); - } while (n); - return luaO_nilobject; -} - - -/* -** main search function -*/ -const TValue *luaH_get (Table *t, const TValue *key) { - switch (ttype(key)) { - case LUA_TSHRSTR: return luaH_getstr(t, rawtsvalue(key)); - case LUA_TNIL: return luaO_nilobject; - case LUA_TNUMBER: { - int k; - lua_Number n = nvalue(key); - lua_number2int(k, n); - if (luai_numeq(cast_num(k), n)) /* index is int? */ - return luaH_getint(t, k); /* use specialized version */ - /* else go through */ - } - default: { - Node *n = mainposition(t, key); - do { /* check whether `key' is somewhere in the chain */ - if (luaV_rawequalobj(gkey(n), key)) - return gval(n); /* that's it */ - else n = gnext(n); - } while (n); - return luaO_nilobject; - } - } -} - - -/* -** beware: when using this function you probably need to check a GC -** barrier and invalidate the TM cache. -*/ -TValue *luaH_set (lua_State *L, Table *t, const TValue *key) { - const TValue *p = luaH_get(t, key); - if (p != luaO_nilobject) - return cast(TValue *, p); - else return luaH_newkey(L, t, key); -} - - -void luaH_setint (lua_State *L, Table *t, int key, TValue *value) { - const TValue *p = luaH_getint(t, key); - TValue *cell; - if (p != luaO_nilobject) - cell = cast(TValue *, p); - else { - TValue k; - setnvalue(&k, cast_num(key)); - cell = luaH_newkey(L, t, &k); - } - setobj2t(L, cell, value); -} - - -static int unbound_search (Table *t, unsigned int j) { - unsigned int i = j; /* i is zero or a present index */ - j++; - /* find `i' and `j' such that i is present and j is not */ - while (!ttisnil(luaH_getint(t, j))) { - i = j; - j *= 2; - if (j > cast(unsigned int, MAX_INT)) { /* overflow? */ - /* table was built with bad purposes: resort to linear search */ - i = 1; - while (!ttisnil(luaH_getint(t, i))) i++; - return i - 1; - } - } - /* now do a binary search between them */ - while (j - i > 1) { - unsigned int m = (i+j)/2; - if (ttisnil(luaH_getint(t, m))) j = m; - else i = m; - } - return i; -} - - -/* -** Try to find a boundary in table `t'. A `boundary' is an integer index -** such that t[i] is non-nil and t[i+1] is nil (and 0 if t[1] is nil). -*/ -int luaH_getn (Table *t) { - unsigned int j = t->sizearray; - if (j > 0 && ttisnil(&t->array[j - 1])) { - /* there is a boundary in the array part: (binary) search for it */ - unsigned int i = 0; - while (j - i > 1) { - unsigned int m = (i+j)/2; - if (ttisnil(&t->array[m - 1])) j = m; - else i = m; - } - return i; - } - /* else must find a boundary in hash part */ - else if (isdummy(t->node)) /* hash part is empty? */ - return j; /* that is easy... */ - else return unbound_search(t, j); -} - - - -#if defined(LUA_DEBUG) - -Node *luaH_mainposition (const Table *t, const TValue *key) { - return mainposition(t, key); -} - -int luaH_isdummy (Node *n) { return isdummy(n); } - -#endif diff --git a/source/libs/lua52/lua52-src/src/ltable.h b/source/libs/lua52/lua52-src/src/ltable.h deleted file mode 100644 index d69449b2b..000000000 --- a/source/libs/lua52/lua52-src/src/ltable.h +++ /dev/null @@ -1,45 +0,0 @@ -/* -** $Id: ltable.h,v 2.16.1.2 2013/08/30 15:49:41 roberto Exp $ -** Lua tables (hash) -** See Copyright Notice in lua.h -*/ - -#ifndef ltable_h -#define ltable_h - -#include "lobject.h" - - -#define gnode(t,i) (&(t)->node[i]) -#define gkey(n) (&(n)->i_key.tvk) -#define gval(n) (&(n)->i_val) -#define gnext(n) ((n)->i_key.nk.next) - -#define invalidateTMcache(t) ((t)->flags = 0) - -/* returns the key, given the value of a table entry */ -#define keyfromval(v) \ - (gkey(cast(Node *, cast(char *, (v)) - offsetof(Node, i_val)))) - - -LUAI_FUNC const TValue *luaH_getint (Table *t, int key); -LUAI_FUNC void luaH_setint (lua_State *L, Table *t, int key, TValue *value); -LUAI_FUNC const TValue *luaH_getstr (Table *t, TString *key); -LUAI_FUNC const TValue *luaH_get (Table *t, const TValue *key); -LUAI_FUNC TValue *luaH_newkey (lua_State *L, Table *t, const TValue *key); -LUAI_FUNC TValue *luaH_set (lua_State *L, Table *t, const TValue *key); -LUAI_FUNC Table *luaH_new (lua_State *L); -LUAI_FUNC void luaH_resize (lua_State *L, Table *t, int nasize, int nhsize); -LUAI_FUNC void luaH_resizearray (lua_State *L, Table *t, int nasize); -LUAI_FUNC void luaH_free (lua_State *L, Table *t); -LUAI_FUNC int luaH_next (lua_State *L, Table *t, StkId key); -LUAI_FUNC int luaH_getn (Table *t); - - -#if defined(LUA_DEBUG) -LUAI_FUNC Node *luaH_mainposition (const Table *t, const TValue *key); -LUAI_FUNC int luaH_isdummy (Node *n); -#endif - - -#endif diff --git a/source/libs/lua52/lua52-src/src/ltablib.c b/source/libs/lua52/lua52-src/src/ltablib.c deleted file mode 100644 index 99764d26d..000000000 --- a/source/libs/lua52/lua52-src/src/ltablib.c +++ /dev/null @@ -1,285 +0,0 @@ -/* -** $Id: ltablib.c,v 1.65.1.2 2014/05/07 16:32:55 roberto Exp $ -** Library for Table Manipulation -** See Copyright Notice in lua.h -*/ - - -#include <limits.h> -#include <stddef.h> - -#define ltablib_c -#define LUA_LIB - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -#define aux_getn(L,n) (luaL_checktype(L, n, LUA_TTABLE), luaL_len(L, n)) - - - -#if defined(LUA_COMPAT_MAXN) -static int maxn (lua_State *L) { - lua_Number max = 0; - luaL_checktype(L, 1, LUA_TTABLE); - lua_pushnil(L); /* first key */ - while (lua_next(L, 1)) { - lua_pop(L, 1); /* remove value */ - if (lua_type(L, -1) == LUA_TNUMBER) { - lua_Number v = lua_tonumber(L, -1); - if (v > max) max = v; - } - } - lua_pushnumber(L, max); - return 1; -} -#endif - - -static int tinsert (lua_State *L) { - int e = aux_getn(L, 1) + 1; /* first empty element */ - int pos; /* where to insert new element */ - switch (lua_gettop(L)) { - case 2: { /* called with only 2 arguments */ - pos = e; /* insert new element at the end */ - break; - } - case 3: { - int i; - pos = luaL_checkint(L, 2); /* 2nd argument is the position */ - luaL_argcheck(L, 1 <= pos && pos <= e, 2, "position out of bounds"); - for (i = e; i > pos; i--) { /* move up elements */ - lua_rawgeti(L, 1, i-1); - lua_rawseti(L, 1, i); /* t[i] = t[i-1] */ - } - break; - } - default: { - return luaL_error(L, "wrong number of arguments to " LUA_QL("insert")); - } - } - lua_rawseti(L, 1, pos); /* t[pos] = v */ - return 0; -} - - -static int tremove (lua_State *L) { - int size = aux_getn(L, 1); - int pos = luaL_optint(L, 2, size); - if (pos != size) /* validate 'pos' if given */ - luaL_argcheck(L, 1 <= pos && pos <= size + 1, 1, "position out of bounds"); - lua_rawgeti(L, 1, pos); /* result = t[pos] */ - for ( ; pos < size; pos++) { - lua_rawgeti(L, 1, pos+1); - lua_rawseti(L, 1, pos); /* t[pos] = t[pos+1] */ - } - lua_pushnil(L); - lua_rawseti(L, 1, pos); /* t[pos] = nil */ - return 1; -} - - -static void addfield (lua_State *L, luaL_Buffer *b, int i) { - lua_rawgeti(L, 1, i); - if (!lua_isstring(L, -1)) - luaL_error(L, "invalid value (%s) at index %d in table for " - LUA_QL("concat"), luaL_typename(L, -1), i); - luaL_addvalue(b); -} - - -static int tconcat (lua_State *L) { - luaL_Buffer b; - size_t lsep; - int i, last; - const char *sep = luaL_optlstring(L, 2, "", &lsep); - luaL_checktype(L, 1, LUA_TTABLE); - i = luaL_optint(L, 3, 1); - last = luaL_opt(L, luaL_checkint, 4, luaL_len(L, 1)); - luaL_buffinit(L, &b); - for (; i < last; i++) { - addfield(L, &b, i); - luaL_addlstring(&b, sep, lsep); - } - if (i == last) /* add last value (if interval was not empty) */ - addfield(L, &b, i); - luaL_pushresult(&b); - return 1; -} - - -/* -** {====================================================== -** Pack/unpack -** ======================================================= -*/ - -static int pack (lua_State *L) { - int n = lua_gettop(L); /* number of elements to pack */ - lua_createtable(L, n, 1); /* create result table */ - lua_pushinteger(L, n); - lua_setfield(L, -2, "n"); /* t.n = number of elements */ - if (n > 0) { /* at least one element? */ - int i; - lua_pushvalue(L, 1); - lua_rawseti(L, -2, 1); /* insert first element */ - lua_replace(L, 1); /* move table into index 1 */ - for (i = n; i >= 2; i--) /* assign other elements */ - lua_rawseti(L, 1, i); - } - return 1; /* return table */ -} - - -static int unpack (lua_State *L) { - int i, e; - unsigned int n; - luaL_checktype(L, 1, LUA_TTABLE); - i = luaL_optint(L, 2, 1); - e = luaL_opt(L, luaL_checkint, 3, luaL_len(L, 1)); - if (i > e) return 0; /* empty range */ - n = (unsigned int)e - (unsigned int)i; /* number of elements minus 1 */ - if (n > (INT_MAX - 10) || !lua_checkstack(L, ++n)) - return luaL_error(L, "too many results to unpack"); - lua_rawgeti(L, 1, i); /* push arg[i] (avoiding overflow problems) */ - while (i++ < e) /* push arg[i + 1...e] */ - lua_rawgeti(L, 1, i); - return n; -} - -/* }====================================================== */ - - - -/* -** {====================================================== -** Quicksort -** (based on `Algorithms in MODULA-3', Robert Sedgewick; -** Addison-Wesley, 1993.) -** ======================================================= -*/ - - -static void set2 (lua_State *L, int i, int j) { - lua_rawseti(L, 1, i); - lua_rawseti(L, 1, j); -} - -static int sort_comp (lua_State *L, int a, int b) { - if (!lua_isnil(L, 2)) { /* function? */ - int res; - lua_pushvalue(L, 2); - lua_pushvalue(L, a-1); /* -1 to compensate function */ - lua_pushvalue(L, b-2); /* -2 to compensate function and `a' */ - lua_call(L, 2, 1); - res = lua_toboolean(L, -1); - lua_pop(L, 1); - return res; - } - else /* a < b? */ - return lua_compare(L, a, b, LUA_OPLT); -} - -static void auxsort (lua_State *L, int l, int u) { - while (l < u) { /* for tail recursion */ - int i, j; - /* sort elements a[l], a[(l+u)/2] and a[u] */ - lua_rawgeti(L, 1, l); - lua_rawgeti(L, 1, u); - if (sort_comp(L, -1, -2)) /* a[u] < a[l]? */ - set2(L, l, u); /* swap a[l] - a[u] */ - else - lua_pop(L, 2); - if (u-l == 1) break; /* only 2 elements */ - i = (l+u)/2; - lua_rawgeti(L, 1, i); - lua_rawgeti(L, 1, l); - if (sort_comp(L, -2, -1)) /* a[i]<a[l]? */ - set2(L, i, l); - else { - lua_pop(L, 1); /* remove a[l] */ - lua_rawgeti(L, 1, u); - if (sort_comp(L, -1, -2)) /* a[u]<a[i]? */ - set2(L, i, u); - else - lua_pop(L, 2); - } - if (u-l == 2) break; /* only 3 elements */ - lua_rawgeti(L, 1, i); /* Pivot */ - lua_pushvalue(L, -1); - lua_rawgeti(L, 1, u-1); - set2(L, i, u-1); - /* a[l] <= P == a[u-1] <= a[u], only need to sort from l+1 to u-2 */ - i = l; j = u-1; - for (;;) { /* invariant: a[l..i] <= P <= a[j..u] */ - /* repeat ++i until a[i] >= P */ - while (lua_rawgeti(L, 1, ++i), sort_comp(L, -1, -2)) { - if (i>=u) luaL_error(L, "invalid order function for sorting"); - lua_pop(L, 1); /* remove a[i] */ - } - /* repeat --j until a[j] <= P */ - while (lua_rawgeti(L, 1, --j), sort_comp(L, -3, -1)) { - if (j<=l) luaL_error(L, "invalid order function for sorting"); - lua_pop(L, 1); /* remove a[j] */ - } - if (j<i) { - lua_pop(L, 3); /* pop pivot, a[i], a[j] */ - break; - } - set2(L, i, j); - } - lua_rawgeti(L, 1, u-1); - lua_rawgeti(L, 1, i); - set2(L, u-1, i); /* swap pivot (a[u-1]) with a[i] */ - /* a[l..i-1] <= a[i] == P <= a[i+1..u] */ - /* adjust so that smaller half is in [j..i] and larger one in [l..u] */ - if (i-l < u-i) { - j=l; i=i-1; l=i+2; - } - else { - j=i+1; i=u; u=j-2; - } - auxsort(L, j, i); /* call recursively the smaller one */ - } /* repeat the routine for the larger one */ -} - -static int sort (lua_State *L) { - int n = aux_getn(L, 1); - luaL_checkstack(L, 40, ""); /* assume array is smaller than 2^40 */ - if (!lua_isnoneornil(L, 2)) /* is there a 2nd argument? */ - luaL_checktype(L, 2, LUA_TFUNCTION); - lua_settop(L, 2); /* make sure there is two arguments */ - auxsort(L, 1, n); - return 0; -} - -/* }====================================================== */ - - -static const luaL_Reg tab_funcs[] = { - {"concat", tconcat}, -#if defined(LUA_COMPAT_MAXN) - {"maxn", maxn}, -#endif - {"insert", tinsert}, - {"pack", pack}, - {"unpack", unpack}, - {"remove", tremove}, - {"sort", sort}, - {NULL, NULL} -}; - - -LUAMOD_API int luaopen_table (lua_State *L) { - luaL_newlib(L, tab_funcs); -#if defined(LUA_COMPAT_UNPACK) - /* _G.unpack = table.unpack */ - lua_getfield(L, -1, "unpack"); - lua_setglobal(L, "unpack"); -#endif - return 1; -} - diff --git a/source/libs/lua52/lua52-src/src/ltm.c b/source/libs/lua52/lua52-src/src/ltm.c deleted file mode 100644 index 69b4ed772..000000000 --- a/source/libs/lua52/lua52-src/src/ltm.c +++ /dev/null @@ -1,77 +0,0 @@ -/* -** $Id: ltm.c,v 2.14.1.1 2013/04/12 18:48:47 roberto Exp $ -** Tag methods -** See Copyright Notice in lua.h -*/ - - -#include <string.h> - -#define ltm_c -#define LUA_CORE - -#include "lua.h" - -#include "lobject.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "ltm.h" - - -static const char udatatypename[] = "userdata"; - -LUAI_DDEF const char *const luaT_typenames_[LUA_TOTALTAGS] = { - "no value", - "nil", "boolean", udatatypename, "number", - "string", "table", "function", udatatypename, "thread", - "proto", "upval" /* these last two cases are used for tests only */ -}; - - -void luaT_init (lua_State *L) { - static const char *const luaT_eventname[] = { /* ORDER TM */ - "__index", "__newindex", - "__gc", "__mode", "__len", "__eq", - "__add", "__sub", "__mul", "__div", "__mod", - "__pow", "__unm", "__lt", "__le", - "__concat", "__call" - }; - int i; - for (i=0; i<TM_N; i++) { - G(L)->tmname[i] = luaS_new(L, luaT_eventname[i]); - luaS_fix(G(L)->tmname[i]); /* never collect these names */ - } -} - - -/* -** function to be used with macro "fasttm": optimized for absence of -** tag methods -*/ -const TValue *luaT_gettm (Table *events, TMS event, TString *ename) { - const TValue *tm = luaH_getstr(events, ename); - lua_assert(event <= TM_EQ); - if (ttisnil(tm)) { /* no tag method? */ - events->flags |= cast_byte(1u<<event); /* cache this fact */ - return NULL; - } - else return tm; -} - - -const TValue *luaT_gettmbyobj (lua_State *L, const TValue *o, TMS event) { - Table *mt; - switch (ttypenv(o)) { - case LUA_TTABLE: - mt = hvalue(o)->metatable; - break; - case LUA_TUSERDATA: - mt = uvalue(o)->metatable; - break; - default: - mt = G(L)->mt[ttypenv(o)]; - } - return (mt ? luaH_getstr(mt, G(L)->tmname[event]) : luaO_nilobject); -} - diff --git a/source/libs/lua52/lua52-src/src/ltm.h b/source/libs/lua52/lua52-src/src/ltm.h deleted file mode 100644 index 7f89c841f..000000000 --- a/source/libs/lua52/lua52-src/src/ltm.h +++ /dev/null @@ -1,57 +0,0 @@ -/* -** $Id: ltm.h,v 2.11.1.1 2013/04/12 18:48:47 roberto Exp $ -** Tag methods -** See Copyright Notice in lua.h -*/ - -#ifndef ltm_h -#define ltm_h - - -#include "lobject.h" - - -/* -* WARNING: if you change the order of this enumeration, -* grep "ORDER TM" -*/ -typedef enum { - TM_INDEX, - TM_NEWINDEX, - TM_GC, - TM_MODE, - TM_LEN, - TM_EQ, /* last tag method with `fast' access */ - TM_ADD, - TM_SUB, - TM_MUL, - TM_DIV, - TM_MOD, - TM_POW, - TM_UNM, - TM_LT, - TM_LE, - TM_CONCAT, - TM_CALL, - TM_N /* number of elements in the enum */ -} TMS; - - - -#define gfasttm(g,et,e) ((et) == NULL ? NULL : \ - ((et)->flags & (1u<<(e))) ? NULL : luaT_gettm(et, e, (g)->tmname[e])) - -#define fasttm(l,et,e) gfasttm(G(l), et, e) - -#define ttypename(x) luaT_typenames_[(x) + 1] -#define objtypename(x) ttypename(ttypenv(x)) - -LUAI_DDEC const char *const luaT_typenames_[LUA_TOTALTAGS]; - - -LUAI_FUNC const TValue *luaT_gettm (Table *events, TMS event, TString *ename); -LUAI_FUNC const TValue *luaT_gettmbyobj (lua_State *L, const TValue *o, - TMS event); -LUAI_FUNC void luaT_init (lua_State *L); - -#endif diff --git a/source/libs/lua52/lua52-src/src/lua.c b/source/libs/lua52/lua52-src/src/lua.c deleted file mode 100644 index 4345e554e..000000000 --- a/source/libs/lua52/lua52-src/src/lua.c +++ /dev/null @@ -1,497 +0,0 @@ -/* -** $Id: lua.c,v 1.206.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lua stand-alone interpreter -** See Copyright Notice in lua.h -*/ - - -#include <signal.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#define lua_c - -#include "lua.h" - -#include "lauxlib.h" -#include "lualib.h" - - -#if !defined(LUA_PROMPT) -#define LUA_PROMPT "> " -#define LUA_PROMPT2 ">> " -#endif - -#if !defined(LUA_PROGNAME) -#define LUA_PROGNAME "lua" -#endif - -#if !defined(LUA_MAXINPUT) -#define LUA_MAXINPUT 512 -#endif - -#if !defined(LUA_INIT) -#define LUA_INIT "LUA_INIT" -#endif - -#define LUA_INITVERSION \ - LUA_INIT "_" LUA_VERSION_MAJOR "_" LUA_VERSION_MINOR - - -/* -** lua_stdin_is_tty detects whether the standard input is a 'tty' (that -** is, whether we're running lua interactively). -*/ -#if defined(LUA_USE_ISATTY) -#include <unistd.h> -#define lua_stdin_is_tty() isatty(0) -#elif defined(LUA_WIN) -#include <io.h> -#include <stdio.h> -#define lua_stdin_is_tty() _isatty(_fileno(stdin)) -#else -#define lua_stdin_is_tty() 1 /* assume stdin is a tty */ -#endif - - -/* -** lua_readline defines how to show a prompt and then read a line from -** the standard input. -** lua_saveline defines how to "save" a read line in a "history". -** lua_freeline defines how to free a line read by lua_readline. -*/ -#if defined(LUA_USE_READLINE) - -#include <stdio.h> -#include <readline/readline.h> -#include <readline/history.h> -#define lua_readline(L,b,p) ((void)L, ((b)=readline(p)) != NULL) -#define lua_saveline(L,idx) \ - if (lua_rawlen(L,idx) > 0) /* non-empty line? */ \ - add_history(lua_tostring(L, idx)); /* add it to history */ -#define lua_freeline(L,b) ((void)L, free(b)) - -#elif !defined(lua_readline) - -#define lua_readline(L,b,p) \ - ((void)L, fputs(p, stdout), fflush(stdout), /* show prompt */ \ - fgets(b, LUA_MAXINPUT, stdin) != NULL) /* get line */ -#define lua_saveline(L,idx) { (void)L; (void)idx; } -#define lua_freeline(L,b) { (void)L; (void)b; } - -#endif - - - - -static lua_State *globalL = NULL; - -static const char *progname = LUA_PROGNAME; - - - -static void lstop (lua_State *L, lua_Debug *ar) { - (void)ar; /* unused arg. */ - lua_sethook(L, NULL, 0, 0); - luaL_error(L, "interrupted!"); -} - - -static void laction (int i) { - signal(i, SIG_DFL); /* if another SIGINT happens before lstop, - terminate process (default action) */ - lua_sethook(globalL, lstop, LUA_MASKCALL | LUA_MASKRET | LUA_MASKCOUNT, 1); -} - - -static void print_usage (const char *badoption) { - luai_writestringerror("%s: ", progname); - if (badoption[1] == 'e' || badoption[1] == 'l') - luai_writestringerror("'%s' needs argument\n", badoption); - else - luai_writestringerror("unrecognized option '%s'\n", badoption); - luai_writestringerror( - "usage: %s [options] [script [args]]\n" - "Available options are:\n" - " -e stat execute string " LUA_QL("stat") "\n" - " -i enter interactive mode after executing " LUA_QL("script") "\n" - " -l name require library " LUA_QL("name") "\n" - " -v show version information\n" - " -E ignore environment variables\n" - " -- stop handling options\n" - " - stop handling options and execute stdin\n" - , - progname); -} - - -static void l_message (const char *pname, const char *msg) { - if (pname) luai_writestringerror("%s: ", pname); - luai_writestringerror("%s\n", msg); -} - - -static int report (lua_State *L, int status) { - if (status != LUA_OK && !lua_isnil(L, -1)) { - const char *msg = lua_tostring(L, -1); - if (msg == NULL) msg = "(error object is not a string)"; - l_message(progname, msg); - lua_pop(L, 1); - /* force a complete garbage collection in case of errors */ - lua_gc(L, LUA_GCCOLLECT, 0); - } - return status; -} - - -/* the next function is called unprotected, so it must avoid errors */ -static void finalreport (lua_State *L, int status) { - if (status != LUA_OK) { - const char *msg = (lua_type(L, -1) == LUA_TSTRING) ? lua_tostring(L, -1) - : NULL; - if (msg == NULL) msg = "(error object is not a string)"; - l_message(progname, msg); - lua_pop(L, 1); - } -} - - -static int traceback (lua_State *L) { - const char *msg = lua_tostring(L, 1); - if (msg) - luaL_traceback(L, L, msg, 1); - else if (!lua_isnoneornil(L, 1)) { /* is there an error object? */ - if (!luaL_callmeta(L, 1, "__tostring")) /* try its 'tostring' metamethod */ - lua_pushliteral(L, "(no error message)"); - } - return 1; -} - - -static int docall (lua_State *L, int narg, int nres) { - int status; - int base = lua_gettop(L) - narg; /* function index */ - lua_pushcfunction(L, traceback); /* push traceback function */ - lua_insert(L, base); /* put it under chunk and args */ - globalL = L; /* to be available to 'laction' */ - signal(SIGINT, laction); - status = lua_pcall(L, narg, nres, base); - signal(SIGINT, SIG_DFL); - lua_remove(L, base); /* remove traceback function */ - return status; -} - - -static void print_version (void) { - luai_writestring(LUA_COPYRIGHT, strlen(LUA_COPYRIGHT)); - luai_writeline(); -} - - -static int getargs (lua_State *L, char **argv, int n) { - int narg; - int i; - int argc = 0; - while (argv[argc]) argc++; /* count total number of arguments */ - narg = argc - (n + 1); /* number of arguments to the script */ - luaL_checkstack(L, narg + 3, "too many arguments to script"); - for (i=n+1; i < argc; i++) - lua_pushstring(L, argv[i]); - lua_createtable(L, narg, n + 1); - for (i=0; i < argc; i++) { - lua_pushstring(L, argv[i]); - lua_rawseti(L, -2, i - n); - } - return narg; -} - - -static int dofile (lua_State *L, const char *name) { - int status = luaL_loadfile(L, name); - if (status == LUA_OK) status = docall(L, 0, 0); - return report(L, status); -} - - -static int dostring (lua_State *L, const char *s, const char *name) { - int status = luaL_loadbuffer(L, s, strlen(s), name); - if (status == LUA_OK) status = docall(L, 0, 0); - return report(L, status); -} - - -static int dolibrary (lua_State *L, const char *name) { - int status; - lua_getglobal(L, "require"); - lua_pushstring(L, name); - status = docall(L, 1, 1); /* call 'require(name)' */ - if (status == LUA_OK) - lua_setglobal(L, name); /* global[name] = require return */ - return report(L, status); -} - - -static const char *get_prompt (lua_State *L, int firstline) { - const char *p; - lua_getglobal(L, firstline ? "_PROMPT" : "_PROMPT2"); - p = lua_tostring(L, -1); - if (p == NULL) p = (firstline ? LUA_PROMPT : LUA_PROMPT2); - return p; -} - -/* mark in error messages for incomplete statements */ -#define EOFMARK "<eof>" -#define marklen (sizeof(EOFMARK)/sizeof(char) - 1) - -static int incomplete (lua_State *L, int status) { - if (status == LUA_ERRSYNTAX) { - size_t lmsg; - const char *msg = lua_tolstring(L, -1, &lmsg); - if (lmsg >= marklen && strcmp(msg + lmsg - marklen, EOFMARK) == 0) { - lua_pop(L, 1); - return 1; - } - } - return 0; /* else... */ -} - - -static int pushline (lua_State *L, int firstline) { - char buffer[LUA_MAXINPUT]; - char *b = buffer; - size_t l; - const char *prmt = get_prompt(L, firstline); - int readstatus = lua_readline(L, b, prmt); - lua_pop(L, 1); /* remove result from 'get_prompt' */ - if (readstatus == 0) - return 0; /* no input */ - l = strlen(b); - if (l > 0 && b[l-1] == '\n') /* line ends with newline? */ - b[l-1] = '\0'; /* remove it */ - if (firstline && b[0] == '=') /* first line starts with `=' ? */ - lua_pushfstring(L, "return %s", b+1); /* change it to `return' */ - else - lua_pushstring(L, b); - lua_freeline(L, b); - return 1; -} - - -static int loadline (lua_State *L) { - int status; - lua_settop(L, 0); - if (!pushline(L, 1)) - return -1; /* no input */ - for (;;) { /* repeat until gets a complete line */ - size_t l; - const char *line = lua_tolstring(L, 1, &l); - status = luaL_loadbuffer(L, line, l, "=stdin"); - if (!incomplete(L, status)) break; /* cannot try to add lines? */ - if (!pushline(L, 0)) /* no more input? */ - return -1; - lua_pushliteral(L, "\n"); /* add a new line... */ - lua_insert(L, -2); /* ...between the two lines */ - lua_concat(L, 3); /* join them */ - } - lua_saveline(L, 1); - lua_remove(L, 1); /* remove line */ - return status; -} - - -static void dotty (lua_State *L) { - int status; - const char *oldprogname = progname; - progname = NULL; - while ((status = loadline(L)) != -1) { - if (status == LUA_OK) status = docall(L, 0, LUA_MULTRET); - report(L, status); - if (status == LUA_OK && lua_gettop(L) > 0) { /* any result to print? */ - luaL_checkstack(L, LUA_MINSTACK, "too many results to print"); - lua_getglobal(L, "print"); - lua_insert(L, 1); - if (lua_pcall(L, lua_gettop(L)-1, 0, 0) != LUA_OK) - l_message(progname, lua_pushfstring(L, - "error calling " LUA_QL("print") " (%s)", - lua_tostring(L, -1))); - } - } - lua_settop(L, 0); /* clear stack */ - luai_writeline(); - progname = oldprogname; -} - - -static int handle_script (lua_State *L, char **argv, int n) { - int status; - const char *fname; - int narg = getargs(L, argv, n); /* collect arguments */ - lua_setglobal(L, "arg"); - fname = argv[n]; - if (strcmp(fname, "-") == 0 && strcmp(argv[n-1], "--") != 0) - fname = NULL; /* stdin */ - status = luaL_loadfile(L, fname); - lua_insert(L, -(narg+1)); - if (status == LUA_OK) - status = docall(L, narg, LUA_MULTRET); - else - lua_pop(L, narg); - return report(L, status); -} - - -/* check that argument has no extra characters at the end */ -#define noextrachars(x) {if ((x)[2] != '\0') return -1;} - - -/* indices of various argument indicators in array args */ -#define has_i 0 /* -i */ -#define has_v 1 /* -v */ -#define has_e 2 /* -e */ -#define has_E 3 /* -E */ - -#define num_has 4 /* number of 'has_*' */ - - -static int collectargs (char **argv, int *args) { - int i; - for (i = 1; argv[i] != NULL; i++) { - if (argv[i][0] != '-') /* not an option? */ - return i; - switch (argv[i][1]) { /* option */ - case '-': - noextrachars(argv[i]); - return (argv[i+1] != NULL ? i+1 : 0); - case '\0': - return i; - case 'E': - args[has_E] = 1; - break; - case 'i': - noextrachars(argv[i]); - args[has_i] = 1; /* go through */ - case 'v': - noextrachars(argv[i]); - args[has_v] = 1; - break; - case 'e': - args[has_e] = 1; /* go through */ - case 'l': /* both options need an argument */ - if (argv[i][2] == '\0') { /* no concatenated argument? */ - i++; /* try next 'argv' */ - if (argv[i] == NULL || argv[i][0] == '-') - return -(i - 1); /* no next argument or it is another option */ - } - break; - default: /* invalid option; return its index... */ - return -i; /* ...as a negative value */ - } - } - return 0; -} - - -static int runargs (lua_State *L, char **argv, int n) { - int i; - for (i = 1; i < n; i++) { - lua_assert(argv[i][0] == '-'); - switch (argv[i][1]) { /* option */ - case 'e': { - const char *chunk = argv[i] + 2; - if (*chunk == '\0') chunk = argv[++i]; - lua_assert(chunk != NULL); - if (dostring(L, chunk, "=(command line)") != LUA_OK) - return 0; - break; - } - case 'l': { - const char *filename = argv[i] + 2; - if (*filename == '\0') filename = argv[++i]; - lua_assert(filename != NULL); - if (dolibrary(L, filename) != LUA_OK) - return 0; /* stop if file fails */ - break; - } - default: break; - } - } - return 1; -} - - -static int handle_luainit (lua_State *L) { - const char *name = "=" LUA_INITVERSION; - const char *init = getenv(name + 1); - if (init == NULL) { - name = "=" LUA_INIT; - init = getenv(name + 1); /* try alternative name */ - } - if (init == NULL) return LUA_OK; - else if (init[0] == '@') - return dofile(L, init+1); - else - return dostring(L, init, name); -} - - -static int pmain (lua_State *L) { - int argc = (int)lua_tointeger(L, 1); - char **argv = (char **)lua_touserdata(L, 2); - int script; - int args[num_has]; - args[has_i] = args[has_v] = args[has_e] = args[has_E] = 0; - if (argv[0] && argv[0][0]) progname = argv[0]; - script = collectargs(argv, args); - if (script < 0) { /* invalid arg? */ - print_usage(argv[-script]); - return 0; - } - if (args[has_v]) print_version(); - if (args[has_E]) { /* option '-E'? */ - lua_pushboolean(L, 1); /* signal for libraries to ignore env. vars. */ - lua_setfield(L, LUA_REGISTRYINDEX, "LUA_NOENV"); - } - /* open standard libraries */ - luaL_checkversion(L); - lua_gc(L, LUA_GCSTOP, 0); /* stop collector during initialization */ - luaL_openlibs(L); /* open libraries */ - lua_gc(L, LUA_GCRESTART, 0); - if (!args[has_E] && handle_luainit(L) != LUA_OK) - return 0; /* error running LUA_INIT */ - /* execute arguments -e and -l */ - if (!runargs(L, argv, (script > 0) ? script : argc)) return 0; - /* execute main script (if there is one) */ - if (script && handle_script(L, argv, script) != LUA_OK) return 0; - if (args[has_i]) /* -i option? */ - dotty(L); - else if (script == 0 && !args[has_e] && !args[has_v]) { /* no arguments? */ - if (lua_stdin_is_tty()) { - print_version(); - dotty(L); - } - else dofile(L, NULL); /* executes stdin as a file */ - } - lua_pushboolean(L, 1); /* signal no errors */ - return 1; -} - - -int main (int argc, char **argv) { - int status, result; - lua_State *L = luaL_newstate(); /* create state */ - if (L == NULL) { - l_message(argv[0], "cannot create state: not enough memory"); - return EXIT_FAILURE; - } - /* call 'pmain' in protected mode */ - lua_pushcfunction(L, &pmain); - lua_pushinteger(L, argc); /* 1st argument */ - lua_pushlightuserdata(L, argv); /* 2nd argument */ - status = lua_pcall(L, 2, 1, 0); - result = lua_toboolean(L, -1); /* get result */ - finalreport(L, status); - lua_close(L); - return (result && status == LUA_OK) ? EXIT_SUCCESS : EXIT_FAILURE; -} - diff --git a/source/libs/lua52/lua52-src/src/lua.h b/source/libs/lua52/lua52-src/src/lua.h deleted file mode 100644 index ff4a10861..000000000 --- a/source/libs/lua52/lua52-src/src/lua.h +++ /dev/null @@ -1,444 +0,0 @@ -/* -** $Id: lua.h,v 1.285.1.4 2015/02/21 14:04:50 roberto Exp $ -** Lua - A Scripting Language -** Lua.org, PUC-Rio, Brazil (http://www.lua.org) -** See Copyright Notice at the end of this file -*/ - - -#ifndef lua_h -#define lua_h - -#include <stdarg.h> -#include <stddef.h> - - -#include "luaconf.h" - - -#define LUA_VERSION_MAJOR "5" -#define LUA_VERSION_MINOR "2" -#define LUA_VERSION_NUM 502 -#define LUA_VERSION_RELEASE "4" - -#define LUA_VERSION "Lua " LUA_VERSION_MAJOR "." LUA_VERSION_MINOR -#define LUA_RELEASE LUA_VERSION "." LUA_VERSION_RELEASE -#define LUA_COPYRIGHT LUA_RELEASE " Copyright (C) 1994-2015 Lua.org, PUC-Rio" -#define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo, W. Celes" - - -/* mark for precompiled code ('<esc>Lua') */ -#define LUA_SIGNATURE "\033Lua" - -/* option for multiple returns in 'lua_pcall' and 'lua_call' */ -#define LUA_MULTRET (-1) - - -/* -** pseudo-indices -*/ -#define LUA_REGISTRYINDEX LUAI_FIRSTPSEUDOIDX -#define lua_upvalueindex(i) (LUA_REGISTRYINDEX - (i)) - - -/* thread status */ -#define LUA_OK 0 -#define LUA_YIELD 1 -#define LUA_ERRRUN 2 -#define LUA_ERRSYNTAX 3 -#define LUA_ERRMEM 4 -#define LUA_ERRGCMM 5 -#define LUA_ERRERR 6 - - -typedef struct lua_State lua_State; - -typedef int (*lua_CFunction) (lua_State *L); - - -/* -** functions that read/write blocks when loading/dumping Lua chunks -*/ -typedef const char * (*lua_Reader) (lua_State *L, void *ud, size_t *sz); - -typedef int (*lua_Writer) (lua_State *L, const void* p, size_t sz, void* ud); - - -/* -** prototype for memory-allocation functions -*/ -typedef void * (*lua_Alloc) (void *ud, void *ptr, size_t osize, size_t nsize); - - -/* -** basic types -*/ -#define LUA_TNONE (-1) - -#define LUA_TNIL 0 -#define LUA_TBOOLEAN 1 -#define LUA_TLIGHTUSERDATA 2 -#define LUA_TNUMBER 3 -#define LUA_TSTRING 4 -#define LUA_TTABLE 5 -#define LUA_TFUNCTION 6 -#define LUA_TUSERDATA 7 -#define LUA_TTHREAD 8 - -#define LUA_NUMTAGS 9 - - - -/* minimum Lua stack available to a C function */ -#define LUA_MINSTACK 20 - - -/* predefined values in the registry */ -#define LUA_RIDX_MAINTHREAD 1 -#define LUA_RIDX_GLOBALS 2 -#define LUA_RIDX_LAST LUA_RIDX_GLOBALS - - -/* type of numbers in Lua */ -typedef LUA_NUMBER lua_Number; - - -/* type for integer functions */ -typedef LUA_INTEGER lua_Integer; - -/* unsigned integer type */ -typedef LUA_UNSIGNED lua_Unsigned; - - - -/* -** generic extra include file -*/ -#if defined(LUA_USER_H) -#include LUA_USER_H -#endif - - -/* -** RCS ident string -*/ -extern const char lua_ident[]; - - -/* -** state manipulation -*/ -LUA_API lua_State *(lua_newstate) (lua_Alloc f, void *ud); -LUA_API void (lua_close) (lua_State *L); -LUA_API lua_State *(lua_newthread) (lua_State *L); - -LUA_API lua_CFunction (lua_atpanic) (lua_State *L, lua_CFunction panicf); - - -LUA_API const lua_Number *(lua_version) (lua_State *L); - - -/* -** basic stack manipulation -*/ -LUA_API int (lua_absindex) (lua_State *L, int idx); -LUA_API int (lua_gettop) (lua_State *L); -LUA_API void (lua_settop) (lua_State *L, int idx); -LUA_API void (lua_pushvalue) (lua_State *L, int idx); -LUA_API void (lua_remove) (lua_State *L, int idx); -LUA_API void (lua_insert) (lua_State *L, int idx); -LUA_API void (lua_replace) (lua_State *L, int idx); -LUA_API void (lua_copy) (lua_State *L, int fromidx, int toidx); -LUA_API int (lua_checkstack) (lua_State *L, int sz); - -LUA_API void (lua_xmove) (lua_State *from, lua_State *to, int n); - - -/* -** access functions (stack -> C) -*/ - -LUA_API int (lua_isnumber) (lua_State *L, int idx); -LUA_API int (lua_isstring) (lua_State *L, int idx); -LUA_API int (lua_iscfunction) (lua_State *L, int idx); -LUA_API int (lua_isuserdata) (lua_State *L, int idx); -LUA_API int (lua_type) (lua_State *L, int idx); -LUA_API const char *(lua_typename) (lua_State *L, int tp); - -LUA_API lua_Number (lua_tonumberx) (lua_State *L, int idx, int *isnum); -LUA_API lua_Integer (lua_tointegerx) (lua_State *L, int idx, int *isnum); -LUA_API lua_Unsigned (lua_tounsignedx) (lua_State *L, int idx, int *isnum); -LUA_API int (lua_toboolean) (lua_State *L, int idx); -LUA_API const char *(lua_tolstring) (lua_State *L, int idx, size_t *len); -LUA_API size_t (lua_rawlen) (lua_State *L, int idx); -LUA_API lua_CFunction (lua_tocfunction) (lua_State *L, int idx); -LUA_API void *(lua_touserdata) (lua_State *L, int idx); -LUA_API lua_State *(lua_tothread) (lua_State *L, int idx); -LUA_API const void *(lua_topointer) (lua_State *L, int idx); - - -/* -** Comparison and arithmetic functions -*/ - -#define LUA_OPADD 0 /* ORDER TM */ -#define LUA_OPSUB 1 -#define LUA_OPMUL 2 -#define LUA_OPDIV 3 -#define LUA_OPMOD 4 -#define LUA_OPPOW 5 -#define LUA_OPUNM 6 - -LUA_API void (lua_arith) (lua_State *L, int op); - -#define LUA_OPEQ 0 -#define LUA_OPLT 1 -#define LUA_OPLE 2 - -LUA_API int (lua_rawequal) (lua_State *L, int idx1, int idx2); -LUA_API int (lua_compare) (lua_State *L, int idx1, int idx2, int op); - - -/* -** push functions (C -> stack) -*/ -LUA_API void (lua_pushnil) (lua_State *L); -LUA_API void (lua_pushnumber) (lua_State *L, lua_Number n); -LUA_API void (lua_pushinteger) (lua_State *L, lua_Integer n); -LUA_API void (lua_pushunsigned) (lua_State *L, lua_Unsigned n); -LUA_API const char *(lua_pushlstring) (lua_State *L, const char *s, size_t l); -LUA_API const char *(lua_pushstring) (lua_State *L, const char *s); -LUA_API const char *(lua_pushvfstring) (lua_State *L, const char *fmt, - va_list argp); -LUA_API const char *(lua_pushfstring) (lua_State *L, const char *fmt, ...); -LUA_API void (lua_pushcclosure) (lua_State *L, lua_CFunction fn, int n); -LUA_API void (lua_pushboolean) (lua_State *L, int b); -LUA_API void (lua_pushlightuserdata) (lua_State *L, void *p); -LUA_API int (lua_pushthread) (lua_State *L); - - -/* -** get functions (Lua -> stack) -*/ -LUA_API void (lua_getglobal) (lua_State *L, const char *var); -LUA_API void (lua_gettable) (lua_State *L, int idx); -LUA_API void (lua_getfield) (lua_State *L, int idx, const char *k); -LUA_API void (lua_rawget) (lua_State *L, int idx); -LUA_API void (lua_rawgeti) (lua_State *L, int idx, int n); -LUA_API void (lua_rawgetp) (lua_State *L, int idx, const void *p); -LUA_API void (lua_createtable) (lua_State *L, int narr, int nrec); -LUA_API void *(lua_newuserdata) (lua_State *L, size_t sz); -LUA_API int (lua_getmetatable) (lua_State *L, int objindex); -LUA_API void (lua_getuservalue) (lua_State *L, int idx); - - -/* -** set functions (stack -> Lua) -*/ -LUA_API void (lua_setglobal) (lua_State *L, const char *var); -LUA_API void (lua_settable) (lua_State *L, int idx); -LUA_API void (lua_setfield) (lua_State *L, int idx, const char *k); -LUA_API void (lua_rawset) (lua_State *L, int idx); -LUA_API void (lua_rawseti) (lua_State *L, int idx, int n); -LUA_API void (lua_rawsetp) (lua_State *L, int idx, const void *p); -LUA_API int (lua_setmetatable) (lua_State *L, int objindex); -LUA_API void (lua_setuservalue) (lua_State *L, int idx); - - -/* -** 'load' and 'call' functions (load and run Lua code) -*/ -LUA_API void (lua_callk) (lua_State *L, int nargs, int nresults, int ctx, - lua_CFunction k); -#define lua_call(L,n,r) lua_callk(L, (n), (r), 0, NULL) - -LUA_API int (lua_getctx) (lua_State *L, int *ctx); - -LUA_API int (lua_pcallk) (lua_State *L, int nargs, int nresults, int errfunc, - int ctx, lua_CFunction k); -#define lua_pcall(L,n,r,f) lua_pcallk(L, (n), (r), (f), 0, NULL) - -LUA_API int (lua_load) (lua_State *L, lua_Reader reader, void *dt, - const char *chunkname, - const char *mode); - -LUA_API int (lua_dump) (lua_State *L, lua_Writer writer, void *data); - - -/* -** coroutine functions -*/ -LUA_API int (lua_yieldk) (lua_State *L, int nresults, int ctx, - lua_CFunction k); -#define lua_yield(L,n) lua_yieldk(L, (n), 0, NULL) -LUA_API int (lua_resume) (lua_State *L, lua_State *from, int narg); -LUA_API int (lua_status) (lua_State *L); - -/* -** garbage-collection function and options -*/ - -#define LUA_GCSTOP 0 -#define LUA_GCRESTART 1 -#define LUA_GCCOLLECT 2 -#define LUA_GCCOUNT 3 -#define LUA_GCCOUNTB 4 -#define LUA_GCSTEP 5 -#define LUA_GCSETPAUSE 6 -#define LUA_GCSETSTEPMUL 7 -#define LUA_GCSETMAJORINC 8 -#define LUA_GCISRUNNING 9 -#define LUA_GCGEN 10 -#define LUA_GCINC 11 - -LUA_API int (lua_gc) (lua_State *L, int what, int data); - - -/* -** miscellaneous functions -*/ - -LUA_API int (lua_error) (lua_State *L); - -LUA_API int (lua_next) (lua_State *L, int idx); - -LUA_API void (lua_concat) (lua_State *L, int n); -LUA_API void (lua_len) (lua_State *L, int idx); - -LUA_API lua_Alloc (lua_getallocf) (lua_State *L, void **ud); -LUA_API void (lua_setallocf) (lua_State *L, lua_Alloc f, void *ud); - - - -/* -** =============================================================== -** some useful macros -** =============================================================== -*/ - -#define lua_tonumber(L,i) lua_tonumberx(L,i,NULL) -#define lua_tointeger(L,i) lua_tointegerx(L,i,NULL) -#define lua_tounsigned(L,i) lua_tounsignedx(L,i,NULL) - -#define lua_pop(L,n) lua_settop(L, -(n)-1) - -#define lua_newtable(L) lua_createtable(L, 0, 0) - -#define lua_register(L,n,f) (lua_pushcfunction(L, (f)), lua_setglobal(L, (n))) - -#define lua_pushcfunction(L,f) lua_pushcclosure(L, (f), 0) - -#define lua_isfunction(L,n) (lua_type(L, (n)) == LUA_TFUNCTION) -#define lua_istable(L,n) (lua_type(L, (n)) == LUA_TTABLE) -#define lua_islightuserdata(L,n) (lua_type(L, (n)) == LUA_TLIGHTUSERDATA) -#define lua_isnil(L,n) (lua_type(L, (n)) == LUA_TNIL) -#define lua_isboolean(L,n) (lua_type(L, (n)) == LUA_TBOOLEAN) -#define lua_isthread(L,n) (lua_type(L, (n)) == LUA_TTHREAD) -#define lua_isnone(L,n) (lua_type(L, (n)) == LUA_TNONE) -#define lua_isnoneornil(L, n) (lua_type(L, (n)) <= 0) - -#define lua_pushliteral(L, s) \ - lua_pushlstring(L, "" s, (sizeof(s)/sizeof(char))-1) - -#define lua_pushglobaltable(L) \ - lua_rawgeti(L, LUA_REGISTRYINDEX, LUA_RIDX_GLOBALS) - -#define lua_tostring(L,i) lua_tolstring(L, (i), NULL) - - - -/* -** {====================================================================== -** Debug API -** ======================================================================= -*/ - - -/* -** Event codes -*/ -#define LUA_HOOKCALL 0 -#define LUA_HOOKRET 1 -#define LUA_HOOKLINE 2 -#define LUA_HOOKCOUNT 3 -#define LUA_HOOKTAILCALL 4 - - -/* -** Event masks -*/ -#define LUA_MASKCALL (1 << LUA_HOOKCALL) -#define LUA_MASKRET (1 << LUA_HOOKRET) -#define LUA_MASKLINE (1 << LUA_HOOKLINE) -#define LUA_MASKCOUNT (1 << LUA_HOOKCOUNT) - -typedef struct lua_Debug lua_Debug; /* activation record */ - - -/* Functions to be called by the debugger in specific events */ -typedef void (*lua_Hook) (lua_State *L, lua_Debug *ar); - - -LUA_API int (lua_getstack) (lua_State *L, int level, lua_Debug *ar); -LUA_API int (lua_getinfo) (lua_State *L, const char *what, lua_Debug *ar); -LUA_API const char *(lua_getlocal) (lua_State *L, const lua_Debug *ar, int n); -LUA_API const char *(lua_setlocal) (lua_State *L, const lua_Debug *ar, int n); -LUA_API const char *(lua_getupvalue) (lua_State *L, int funcindex, int n); -LUA_API const char *(lua_setupvalue) (lua_State *L, int funcindex, int n); - -LUA_API void *(lua_upvalueid) (lua_State *L, int fidx, int n); -LUA_API void (lua_upvaluejoin) (lua_State *L, int fidx1, int n1, - int fidx2, int n2); - -LUA_API int (lua_sethook) (lua_State *L, lua_Hook func, int mask, int count); -LUA_API lua_Hook (lua_gethook) (lua_State *L); -LUA_API int (lua_gethookmask) (lua_State *L); -LUA_API int (lua_gethookcount) (lua_State *L); - - -struct lua_Debug { - int event; - const char *name; /* (n) */ - const char *namewhat; /* (n) 'global', 'local', 'field', 'method' */ - const char *what; /* (S) 'Lua', 'C', 'main', 'tail' */ - const char *source; /* (S) */ - int currentline; /* (l) */ - int linedefined; /* (S) */ - int lastlinedefined; /* (S) */ - unsigned char nups; /* (u) number of upvalues */ - unsigned char nparams;/* (u) number of parameters */ - char isvararg; /* (u) */ - char istailcall; /* (t) */ - char short_src[LUA_IDSIZE]; /* (S) */ - /* private part */ - struct CallInfo *i_ci; /* active function */ -}; - -/* }====================================================================== */ - - -/****************************************************************************** -* Copyright (C) 1994-2015 Lua.org, PUC-Rio. -* -* Permission is hereby granted, free of charge, to any person obtaining -* a copy of this software and associated documentation files (the -* "Software"), to deal in the Software without restriction, including -* without limitation the rights to use, copy, modify, merge, publish, -* distribute, sublicense, and/or sell copies of the Software, and to -* permit persons to whom the Software is furnished to do so, subject to -* the following conditions: -* -* The above copyright notice and this permission notice shall be -* included in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -******************************************************************************/ - - -#endif diff --git a/source/libs/lua52/lua52-src/src/lua.hpp b/source/libs/lua52/lua52-src/src/lua.hpp deleted file mode 100644 index ec417f594..000000000 --- a/source/libs/lua52/lua52-src/src/lua.hpp +++ /dev/null @@ -1,9 +0,0 @@ -// lua.hpp -// Lua header files for C++ -// <<extern "C">> not supplied automatically because Lua also compiles as C++ - -extern "C" { -#include "lua.h" -#include "lualib.h" -#include "lauxlib.h" -} diff --git a/source/libs/lua52/lua52-src/src/luac.c b/source/libs/lua52/lua52-src/src/luac.c deleted file mode 100644 index 7409706ec..000000000 --- a/source/libs/lua52/lua52-src/src/luac.c +++ /dev/null @@ -1,432 +0,0 @@ -/* -** $Id: luac.c,v 1.69 2011/11/29 17:46:33 lhf Exp $ -** Lua compiler (saves bytecodes to files; also list bytecodes) -** See Copyright Notice in lua.h -*/ - -#include <errno.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#define luac_c -#define LUA_CORE - -#include "lua.h" -#include "lauxlib.h" - -#include "lobject.h" -#include "lstate.h" -#include "lundump.h" - -static void PrintFunction(const Proto* f, int full); -#define luaU_print PrintFunction - -#define PROGNAME "luac" /* default program name */ -#define OUTPUT PROGNAME ".out" /* default output file */ - -static int listing=0; /* list bytecodes? */ -static int dumping=1; /* dump bytecodes? */ -static int stripping=0; /* strip debug information? */ -static char Output[]={ OUTPUT }; /* default output file name */ -static const char* output=Output; /* actual output file name */ -static const char* progname=PROGNAME; /* actual program name */ - -static void fatal(const char* message) -{ - fprintf(stderr,"%s: %s\n",progname,message); - exit(EXIT_FAILURE); -} - -static void cannot(const char* what) -{ - fprintf(stderr,"%s: cannot %s %s: %s\n",progname,what,output,strerror(errno)); - exit(EXIT_FAILURE); -} - -static void usage(const char* message) -{ - if (*message=='-') - fprintf(stderr,"%s: unrecognized option " LUA_QS "\n",progname,message); - else - fprintf(stderr,"%s: %s\n",progname,message); - fprintf(stderr, - "usage: %s [options] [filenames]\n" - "Available options are:\n" - " -l list (use -l -l for full listing)\n" - " -o name output to file " LUA_QL("name") " (default is \"%s\")\n" - " -p parse only\n" - " -s strip debug information\n" - " -v show version information\n" - " -- stop handling options\n" - " - stop handling options and process stdin\n" - ,progname,Output); - exit(EXIT_FAILURE); -} - -#define IS(s) (strcmp(argv[i],s)==0) - -static int doargs(int argc, char* argv[]) -{ - int i; - int version=0; - if (argv[0]!=NULL && *argv[0]!=0) progname=argv[0]; - for (i=1; i<argc; i++) - { - if (*argv[i]!='-') /* end of options; keep it */ - break; - else if (IS("--")) /* end of options; skip it */ - { - ++i; - if (version) ++version; - break; - } - else if (IS("-")) /* end of options; use stdin */ - break; - else if (IS("-l")) /* list */ - ++listing; - else if (IS("-o")) /* output file */ - { - output=argv[++i]; - if (output==NULL || *output==0 || (*output=='-' && output[1]!=0)) - usage(LUA_QL("-o") " needs argument"); - if (IS("-")) output=NULL; - } - else if (IS("-p")) /* parse only */ - dumping=0; - else if (IS("-s")) /* strip debug information */ - stripping=1; - else if (IS("-v")) /* show version */ - ++version; - else /* unknown option */ - usage(argv[i]); - } - if (i==argc && (listing || !dumping)) - { - dumping=0; - argv[--i]=Output; - } - if (version) - { - printf("%s\n",LUA_COPYRIGHT); - if (version==argc-1) exit(EXIT_SUCCESS); - } - return i; -} - -#define FUNCTION "(function()end)();" - -static const char* reader(lua_State *L, void *ud, size_t *size) -{ - UNUSED(L); - if ((*(int*)ud)--) - { - *size=sizeof(FUNCTION)-1; - return FUNCTION; - } - else - { - *size=0; - return NULL; - } -} - -#define toproto(L,i) getproto(L->top+(i)) - -static const Proto* combine(lua_State* L, int n) -{ - if (n==1) - return toproto(L,-1); - else - { - Proto* f; - int i=n; - if (lua_load(L,reader,&i,"=(" PROGNAME ")",NULL)!=LUA_OK) fatal(lua_tostring(L,-1)); - f=toproto(L,-1); - for (i=0; i<n; i++) - { - f->p[i]=toproto(L,i-n-1); - if (f->p[i]->sizeupvalues>0) f->p[i]->upvalues[0].instack=0; - } - f->sizelineinfo=0; - return f; - } -} - -static int writer(lua_State* L, const void* p, size_t size, void* u) -{ - UNUSED(L); - return (fwrite(p,size,1,(FILE*)u)!=1) && (size!=0); -} - -static int pmain(lua_State* L) -{ - int argc=(int)lua_tointeger(L,1); - char** argv=(char**)lua_touserdata(L,2); - const Proto* f; - int i; - if (!lua_checkstack(L,argc)) fatal("too many input files"); - for (i=0; i<argc; i++) - { - const char* filename=IS("-") ? NULL : argv[i]; - if (luaL_loadfile(L,filename)!=LUA_OK) fatal(lua_tostring(L,-1)); - } - f=combine(L,argc); - if (listing) luaU_print(f,listing>1); - if (dumping) - { - FILE* D= (output==NULL) ? stdout : fopen(output,"wb"); - if (D==NULL) cannot("open"); - lua_lock(L); - luaU_dump(L,f,writer,D,stripping); - lua_unlock(L); - if (ferror(D)) cannot("write"); - if (fclose(D)) cannot("close"); - } - return 0; -} - -int main(int argc, char* argv[]) -{ - lua_State* L; - int i=doargs(argc,argv); - argc-=i; argv+=i; - if (argc<=0) usage("no input files given"); - L=luaL_newstate(); - if (L==NULL) fatal("cannot create state: not enough memory"); - lua_pushcfunction(L,&pmain); - lua_pushinteger(L,argc); - lua_pushlightuserdata(L,argv); - if (lua_pcall(L,2,0,0)!=LUA_OK) fatal(lua_tostring(L,-1)); - lua_close(L); - return EXIT_SUCCESS; -} - -/* -** $Id: print.c,v 1.69 2013/07/04 01:03:46 lhf Exp $ -** print bytecodes -** See Copyright Notice in lua.h -*/ - -#include <ctype.h> -#include <stdio.h> - -#define luac_c -#define LUA_CORE - -#include "ldebug.h" -#include "lobject.h" -#include "lopcodes.h" - -#define VOID(p) ((const void*)(p)) - -static void PrintString(const TString* ts) -{ - const char* s=getstr(ts); - size_t i,n=ts->tsv.len; - printf("%c",'"'); - for (i=0; i<n; i++) - { - int c=(int)(unsigned char)s[i]; - switch (c) - { - case '"': printf("\\\""); break; - case '\\': printf("\\\\"); break; - case '\a': printf("\\a"); break; - case '\b': printf("\\b"); break; - case '\f': printf("\\f"); break; - case '\n': printf("\\n"); break; - case '\r': printf("\\r"); break; - case '\t': printf("\\t"); break; - case '\v': printf("\\v"); break; - default: if (isprint(c)) - printf("%c",c); - else - printf("\\%03d",c); - } - } - printf("%c",'"'); -} - -static void PrintConstant(const Proto* f, int i) -{ - const TValue* o=&f->k[i]; - switch (ttypenv(o)) - { - case LUA_TNIL: - printf("nil"); - break; - case LUA_TBOOLEAN: - printf(bvalue(o) ? "true" : "false"); - break; - case LUA_TNUMBER: - printf(LUA_NUMBER_FMT,nvalue(o)); - break; - case LUA_TSTRING: - PrintString(rawtsvalue(o)); - break; - default: /* cannot happen */ - printf("? type=%d",ttype(o)); - break; - } -} - -#define UPVALNAME(x) ((f->upvalues[x].name) ? getstr(f->upvalues[x].name) : "-") -#define MYK(x) (-1-(x)) - -static void PrintCode(const Proto* f) -{ - const Instruction* code=f->code; - int pc,n=f->sizecode; - for (pc=0; pc<n; pc++) - { - Instruction i=code[pc]; - OpCode o=GET_OPCODE(i); - int a=GETARG_A(i); - int b=GETARG_B(i); - int c=GETARG_C(i); - int ax=GETARG_Ax(i); - int bx=GETARG_Bx(i); - int sbx=GETARG_sBx(i); - int line=getfuncline(f,pc); - printf("\t%d\t",pc+1); - if (line>0) printf("[%d]\t",line); else printf("[-]\t"); - printf("%-9s\t",luaP_opnames[o]); - switch (getOpMode(o)) - { - case iABC: - printf("%d",a); - if (getBMode(o)!=OpArgN) printf(" %d",ISK(b) ? (MYK(INDEXK(b))) : b); - if (getCMode(o)!=OpArgN) printf(" %d",ISK(c) ? (MYK(INDEXK(c))) : c); - break; - case iABx: - printf("%d",a); - if (getBMode(o)==OpArgK) printf(" %d",MYK(bx)); - if (getBMode(o)==OpArgU) printf(" %d",bx); - break; - case iAsBx: - printf("%d %d",a,sbx); - break; - case iAx: - printf("%d",MYK(ax)); - break; - } - switch (o) - { - case OP_LOADK: - printf("\t; "); PrintConstant(f,bx); - break; - case OP_GETUPVAL: - case OP_SETUPVAL: - printf("\t; %s",UPVALNAME(b)); - break; - case OP_GETTABUP: - printf("\t; %s",UPVALNAME(b)); - if (ISK(c)) { printf(" "); PrintConstant(f,INDEXK(c)); } - break; - case OP_SETTABUP: - printf("\t; %s",UPVALNAME(a)); - if (ISK(b)) { printf(" "); PrintConstant(f,INDEXK(b)); } - if (ISK(c)) { printf(" "); PrintConstant(f,INDEXK(c)); } - break; - case OP_GETTABLE: - case OP_SELF: - if (ISK(c)) { printf("\t; "); PrintConstant(f,INDEXK(c)); } - break; - case OP_SETTABLE: - case OP_ADD: - case OP_SUB: - case OP_MUL: - case OP_DIV: - case OP_POW: - case OP_EQ: - case OP_LT: - case OP_LE: - if (ISK(b) || ISK(c)) - { - printf("\t; "); - if (ISK(b)) PrintConstant(f,INDEXK(b)); else printf("-"); - printf(" "); - if (ISK(c)) PrintConstant(f,INDEXK(c)); else printf("-"); - } - break; - case OP_JMP: - case OP_FORLOOP: - case OP_FORPREP: - case OP_TFORLOOP: - printf("\t; to %d",sbx+pc+2); - break; - case OP_CLOSURE: - printf("\t; %p",VOID(f->p[bx])); - break; - case OP_SETLIST: - if (c==0) printf("\t; %d",(int)code[++pc]); else printf("\t; %d",c); - break; - case OP_EXTRAARG: - printf("\t; "); PrintConstant(f,ax); - break; - default: - break; - } - printf("\n"); - } -} - -#define SS(x) ((x==1)?"":"s") -#define S(x) (int)(x),SS(x) - -static void PrintHeader(const Proto* f) -{ - const char* s=f->source ? getstr(f->source) : "=?"; - if (*s=='@' || *s=='=') - s++; - else if (*s==LUA_SIGNATURE[0]) - s="(bstring)"; - else - s="(string)"; - printf("\n%s <%s:%d,%d> (%d instruction%s at %p)\n", - (f->linedefined==0)?"main":"function",s, - f->linedefined,f->lastlinedefined, - S(f->sizecode),VOID(f)); - printf("%d%s param%s, %d slot%s, %d upvalue%s, ", - (int)(f->numparams),f->is_vararg?"+":"",SS(f->numparams), - S(f->maxstacksize),S(f->sizeupvalues)); - printf("%d local%s, %d constant%s, %d function%s\n", - S(f->sizelocvars),S(f->sizek),S(f->sizep)); -} - -static void PrintDebug(const Proto* f) -{ - int i,n; - n=f->sizek; - printf("constants (%d) for %p:\n",n,VOID(f)); - for (i=0; i<n; i++) - { - printf("\t%d\t",i+1); - PrintConstant(f,i); - printf("\n"); - } - n=f->sizelocvars; - printf("locals (%d) for %p:\n",n,VOID(f)); - for (i=0; i<n; i++) - { - printf("\t%d\t%s\t%d\t%d\n", - i,getstr(f->locvars[i].varname),f->locvars[i].startpc+1,f->locvars[i].endpc+1); - } - n=f->sizeupvalues; - printf("upvalues (%d) for %p:\n",n,VOID(f)); - for (i=0; i<n; i++) - { - printf("\t%d\t%s\t%d\t%d\n", - i,UPVALNAME(i),f->upvalues[i].instack,f->upvalues[i].idx); - } -} - -static void PrintFunction(const Proto* f, int full) -{ - int i,n=f->sizep; - PrintHeader(f); - PrintCode(f); - if (full) PrintDebug(f); - for (i=0; i<n; i++) PrintFunction(f->p[i],full); -} diff --git a/source/libs/lua52/lua52-src/src/luaconf.h b/source/libs/lua52/lua52-src/src/luaconf.h deleted file mode 100644 index 1b0ff59fa..000000000 --- a/source/libs/lua52/lua52-src/src/luaconf.h +++ /dev/null @@ -1,551 +0,0 @@ -/* -** $Id: luaconf.h,v 1.176.1.2 2013/11/21 17:26:16 roberto Exp $ -** Configuration file for Lua -** See Copyright Notice in lua.h -*/ - - -#ifndef lconfig_h -#define lconfig_h - -#include <limits.h> -#include <stddef.h> - - -/* -** ================================================================== -** Search for "@@" to find all configurable definitions. -** =================================================================== -*/ - - -/* -@@ LUA_ANSI controls the use of non-ansi features. -** CHANGE it (define it) if you want Lua to avoid the use of any -** non-ansi feature or library. -*/ -#if !defined(LUA_ANSI) && defined(__STRICT_ANSI__) -#define LUA_ANSI -#endif - - -#if !defined(LUA_ANSI) && defined(_WIN32) && !defined(_WIN32_WCE) -#define LUA_WIN /* enable goodies for regular Windows platforms */ -#endif - -#if defined(LUA_WIN) -#define LUA_DL_DLL -#define LUA_USE_AFORMAT /* assume 'printf' handles 'aA' specifiers */ -#endif - - - -#if defined(LUA_USE_LINUX) -#define LUA_USE_POSIX -#define LUA_USE_DLOPEN /* needs an extra library: -ldl */ -#define LUA_USE_READLINE /* needs some extra libraries */ -#define LUA_USE_STRTODHEX /* assume 'strtod' handles hex formats */ -#define LUA_USE_AFORMAT /* assume 'printf' handles 'aA' specifiers */ -#define LUA_USE_LONGLONG /* assume support for long long */ -#endif - -#if defined(LUA_USE_MACOSX) -#define LUA_USE_POSIX -#define LUA_USE_DLOPEN /* does not need -ldl */ -#define LUA_USE_READLINE /* needs an extra library: -lreadline */ -#define LUA_USE_STRTODHEX /* assume 'strtod' handles hex formats */ -#define LUA_USE_AFORMAT /* assume 'printf' handles 'aA' specifiers */ -#define LUA_USE_LONGLONG /* assume support for long long */ -#endif - - - -/* -@@ LUA_USE_POSIX includes all functionality listed as X/Open System -@* Interfaces Extension (XSI). -** CHANGE it (define it) if your system is XSI compatible. -*/ -#if defined(LUA_USE_POSIX) -#define LUA_USE_MKSTEMP -#define LUA_USE_ISATTY -#define LUA_USE_POPEN -#define LUA_USE_ULONGJMP -#define LUA_USE_GMTIME_R -#endif - - - -/* -@@ LUA_PATH_DEFAULT is the default path that Lua uses to look for -@* Lua libraries. -@@ LUA_CPATH_DEFAULT is the default path that Lua uses to look for -@* C libraries. -** CHANGE them if your machine has a non-conventional directory -** hierarchy or if you want to install your libraries in -** non-conventional directories. -*/ -#if defined(_WIN32) /* { */ -/* -** In Windows, any exclamation mark ('!') in the path is replaced by the -** path of the directory of the executable file of the current process. -*/ -#define LUA_LDIR "!\\lua\\" -#define LUA_CDIR "!\\" -#define LUA_PATH_DEFAULT \ - LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;" \ - LUA_CDIR"?.lua;" LUA_CDIR"?\\init.lua;" ".\\?.lua" -#define LUA_CPATH_DEFAULT \ - LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll;" ".\\?.dll" - -#else /* }{ */ - -#define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR "/" -#define LUA_ROOT "/usr/local/" -#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR -#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR -#define LUA_PATH_DEFAULT \ - LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ - LUA_CDIR"?.lua;" LUA_CDIR"?/init.lua;" "./?.lua" -#define LUA_CPATH_DEFAULT \ - LUA_CDIR"?.so;" LUA_CDIR"loadall.so;" "./?.so" -#endif /* } */ - - -/* -@@ LUA_DIRSEP is the directory separator (for submodules). -** CHANGE it if your machine does not use "/" as the directory separator -** and is not Windows. (On Windows Lua automatically uses "\".) -*/ -#if defined(_WIN32) -#define LUA_DIRSEP "\\" -#else -#define LUA_DIRSEP "/" -#endif - - -/* -@@ LUA_ENV is the name of the variable that holds the current -@@ environment, used to access global names. -** CHANGE it if you do not like this name. -*/ -#define LUA_ENV "_ENV" - - -/* -@@ LUA_API is a mark for all core API functions. -@@ LUALIB_API is a mark for all auxiliary library functions. -@@ LUAMOD_API is a mark for all standard library opening functions. -** CHANGE them if you need to define those functions in some special way. -** For instance, if you want to create one Windows DLL with the core and -** the libraries, you may want to use the following definition (define -** LUA_BUILD_AS_DLL to get it). -*/ -#if defined(LUA_BUILD_AS_DLL) /* { */ - -#if defined(LUA_CORE) || defined(LUA_LIB) /* { */ -#define LUA_API __declspec(dllexport) -#else /* }{ */ -#define LUA_API __declspec(dllimport) -#endif /* } */ - -#else /* }{ */ - -#define LUA_API extern - -#endif /* } */ - - -/* more often than not the libs go together with the core */ -#define LUALIB_API LUA_API -#define LUAMOD_API LUALIB_API - - -/* -@@ LUAI_FUNC is a mark for all extern functions that are not to be -@* exported to outside modules. -@@ LUAI_DDEF and LUAI_DDEC are marks for all extern (const) variables -@* that are not to be exported to outside modules (LUAI_DDEF for -@* definitions and LUAI_DDEC for declarations). -** CHANGE them if you need to mark them in some special way. Elf/gcc -** (versions 3.2 and later) mark them as "hidden" to optimize access -** when Lua is compiled as a shared library. Not all elf targets support -** this attribute. Unfortunately, gcc does not offer a way to check -** whether the target offers that support, and those without support -** give a warning about it. To avoid these warnings, change to the -** default definition. -*/ -#if defined(__GNUC__) && ((__GNUC__*100 + __GNUC_MINOR__) >= 302) && \ - defined(__ELF__) /* { */ -#define LUAI_FUNC __attribute__((visibility("hidden"))) extern -#define LUAI_DDEC LUAI_FUNC -#define LUAI_DDEF /* empty */ - -#else /* }{ */ -#define LUAI_FUNC extern -#define LUAI_DDEC extern -#define LUAI_DDEF /* empty */ -#endif /* } */ - - - -/* -@@ LUA_QL describes how error messages quote program elements. -** CHANGE it if you want a different appearance. -*/ -#define LUA_QL(x) "'" x "'" -#define LUA_QS LUA_QL("%s") - - -/* -@@ LUA_IDSIZE gives the maximum size for the description of the source -@* of a function in debug information. -** CHANGE it if you want a different size. -*/ -#define LUA_IDSIZE 60 - - -/* -@@ luai_writestring/luai_writeline define how 'print' prints its results. -** They are only used in libraries and the stand-alone program. (The #if -** avoids including 'stdio.h' everywhere.) -*/ -#if defined(LUA_LIB) || defined(lua_c) -#include <stdio.h> -#define luai_writestring(s,l) fwrite((s), sizeof(char), (l), stdout) -#define luai_writeline() (luai_writestring("\n", 1), fflush(stdout)) -#endif - -/* -@@ luai_writestringerror defines how to print error messages. -** (A format string with one argument is enough for Lua...) -*/ -#define luai_writestringerror(s,p) \ - (fprintf(stderr, (s), (p)), fflush(stderr)) - - -/* -@@ LUAI_MAXSHORTLEN is the maximum length for short strings, that is, -** strings that are internalized. (Cannot be smaller than reserved words -** or tags for metamethods, as these strings must be internalized; -** #("function") = 8, #("__newindex") = 10.) -*/ -#define LUAI_MAXSHORTLEN 40 - - - -/* -** {================================================================== -** Compatibility with previous versions -** =================================================================== -*/ - -/* -@@ LUA_COMPAT_ALL controls all compatibility options. -** You can define it to get all options, or change specific options -** to fit your specific needs. -*/ -#if defined(LUA_COMPAT_ALL) /* { */ - -/* -@@ LUA_COMPAT_UNPACK controls the presence of global 'unpack'. -** You can replace it with 'table.unpack'. -*/ -#define LUA_COMPAT_UNPACK - -/* -@@ LUA_COMPAT_LOADERS controls the presence of table 'package.loaders'. -** You can replace it with 'package.searchers'. -*/ -#define LUA_COMPAT_LOADERS - -/* -@@ macro 'lua_cpcall' emulates deprecated function lua_cpcall. -** You can call your C function directly (with light C functions). -*/ -#define lua_cpcall(L,f,u) \ - (lua_pushcfunction(L, (f)), \ - lua_pushlightuserdata(L,(u)), \ - lua_pcall(L,1,0,0)) - - -/* -@@ LUA_COMPAT_LOG10 defines the function 'log10' in the math library. -** You can rewrite 'log10(x)' as 'log(x, 10)'. -*/ -#define LUA_COMPAT_LOG10 - -/* -@@ LUA_COMPAT_LOADSTRING defines the function 'loadstring' in the base -** library. You can rewrite 'loadstring(s)' as 'load(s)'. -*/ -#define LUA_COMPAT_LOADSTRING - -/* -@@ LUA_COMPAT_MAXN defines the function 'maxn' in the table library. -*/ -#define LUA_COMPAT_MAXN - -/* -@@ The following macros supply trivial compatibility for some -** changes in the API. The macros themselves document how to -** change your code to avoid using them. -*/ -#define lua_strlen(L,i) lua_rawlen(L, (i)) - -#define lua_objlen(L,i) lua_rawlen(L, (i)) - -#define lua_equal(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPEQ) -#define lua_lessthan(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPLT) - -/* -@@ LUA_COMPAT_MODULE controls compatibility with previous -** module functions 'module' (Lua) and 'luaL_register' (C). -*/ -#define LUA_COMPAT_MODULE - -#endif /* } */ - -/* }================================================================== */ - - - -/* -@@ LUAI_BITSINT defines the number of bits in an int. -** CHANGE here if Lua cannot automatically detect the number of bits of -** your machine. Probably you do not need to change this. -*/ -/* avoid overflows in comparison */ -#if INT_MAX-20 < 32760 /* { */ -#define LUAI_BITSINT 16 -#elif INT_MAX > 2147483640L /* }{ */ -/* int has at least 32 bits */ -#define LUAI_BITSINT 32 -#else /* }{ */ -#error "you must define LUA_BITSINT with number of bits in an integer" -#endif /* } */ - - -/* -@@ LUA_INT32 is a signed integer with exactly 32 bits. -@@ LUAI_UMEM is an unsigned integer big enough to count the total -@* memory used by Lua. -@@ LUAI_MEM is a signed integer big enough to count the total memory -@* used by Lua. -** CHANGE here if for some weird reason the default definitions are not -** good enough for your machine. Probably you do not need to change -** this. -*/ -#if LUAI_BITSINT >= 32 /* { */ -#define LUA_INT32 int -#define LUAI_UMEM size_t -#define LUAI_MEM ptrdiff_t -#else /* }{ */ -/* 16-bit ints */ -#define LUA_INT32 long -#define LUAI_UMEM unsigned long -#define LUAI_MEM long -#endif /* } */ - - -/* -@@ LUAI_MAXSTACK limits the size of the Lua stack. -** CHANGE it if you need a different limit. This limit is arbitrary; -** its only purpose is to stop Lua from consuming unlimited stack -** space (and to reserve some numbers for pseudo-indices). -*/ -#if LUAI_BITSINT >= 32 -#define LUAI_MAXSTACK 1000000 -#else -#define LUAI_MAXSTACK 15000 -#endif - -/* reserve some space for error handling */ -#define LUAI_FIRSTPSEUDOIDX (-LUAI_MAXSTACK - 1000) - - - - -/* -@@ LUAL_BUFFERSIZE is the buffer size used by the lauxlib buffer system. -** CHANGE it if it uses too much C-stack space. -*/ -#define LUAL_BUFFERSIZE BUFSIZ - - - - -/* -** {================================================================== -@@ LUA_NUMBER is the type of numbers in Lua. -** CHANGE the following definitions only if you want to build Lua -** with a number type different from double. You may also need to -** change lua_number2int & lua_number2integer. -** =================================================================== -*/ - -#define LUA_NUMBER_DOUBLE -#define LUA_NUMBER double - -/* -@@ LUAI_UACNUMBER is the result of an 'usual argument conversion' -@* over a number. -*/ -#define LUAI_UACNUMBER double - - -/* -@@ LUA_NUMBER_SCAN is the format for reading numbers. -@@ LUA_NUMBER_FMT is the format for writing numbers. -@@ lua_number2str converts a number to a string. -@@ LUAI_MAXNUMBER2STR is maximum size of previous conversion. -*/ -#define LUA_NUMBER_SCAN "%lf" -#define LUA_NUMBER_FMT "%.14g" -#define lua_number2str(s,n) sprintf((s), LUA_NUMBER_FMT, (n)) -#define LUAI_MAXNUMBER2STR 32 /* 16 digits, sign, point, and \0 */ - - -/* -@@ l_mathop allows the addition of an 'l' or 'f' to all math operations -*/ -#define l_mathop(x) (x) - - -/* -@@ lua_str2number converts a decimal numeric string to a number. -@@ lua_strx2number converts an hexadecimal numeric string to a number. -** In C99, 'strtod' does both conversions. C89, however, has no function -** to convert floating hexadecimal strings to numbers. For these -** systems, you can leave 'lua_strx2number' undefined and Lua will -** provide its own implementation. -*/ -#define lua_str2number(s,p) strtod((s), (p)) - -#if defined(LUA_USE_STRTODHEX) -#define lua_strx2number(s,p) strtod((s), (p)) -#endif - - -/* -@@ The luai_num* macros define the primitive operations over numbers. -*/ - -/* the following operations need the math library */ -#if defined(lobject_c) || defined(lvm_c) -#include <math.h> -#define luai_nummod(L,a,b) ((a) - l_mathop(floor)((a)/(b))*(b)) -#define luai_numpow(L,a,b) (l_mathop(pow)(a,b)) -#endif - -/* these are quite standard operations */ -#if defined(LUA_CORE) -#define luai_numadd(L,a,b) ((a)+(b)) -#define luai_numsub(L,a,b) ((a)-(b)) -#define luai_nummul(L,a,b) ((a)*(b)) -#define luai_numdiv(L,a,b) ((a)/(b)) -#define luai_numunm(L,a) (-(a)) -#define luai_numeq(a,b) ((a)==(b)) -#define luai_numlt(L,a,b) ((a)<(b)) -#define luai_numle(L,a,b) ((a)<=(b)) -#define luai_numisnan(L,a) (!luai_numeq((a), (a))) -#endif - - - -/* -@@ LUA_INTEGER is the integral type used by lua_pushinteger/lua_tointeger. -** CHANGE that if ptrdiff_t is not adequate on your machine. (On most -** machines, ptrdiff_t gives a good choice between int or long.) -*/ -#define LUA_INTEGER ptrdiff_t - -/* -@@ LUA_UNSIGNED is the integral type used by lua_pushunsigned/lua_tounsigned. -** It must have at least 32 bits. -*/ -#define LUA_UNSIGNED unsigned LUA_INT32 - - - -/* -** Some tricks with doubles -*/ - -#if defined(LUA_NUMBER_DOUBLE) && !defined(LUA_ANSI) /* { */ -/* -** The next definitions activate some tricks to speed up the -** conversion from doubles to integer types, mainly to LUA_UNSIGNED. -** -@@ LUA_MSASMTRICK uses Microsoft assembler to avoid clashes with a -** DirectX idiosyncrasy. -** -@@ LUA_IEEE754TRICK uses a trick that should work on any machine -** using IEEE754 with a 32-bit integer type. -** -@@ LUA_IEEELL extends the trick to LUA_INTEGER; should only be -** defined when LUA_INTEGER is a 32-bit integer. -** -@@ LUA_IEEEENDIAN is the endianness of doubles in your machine -** (0 for little endian, 1 for big endian); if not defined, Lua will -** check it dynamically for LUA_IEEE754TRICK (but not for LUA_NANTRICK). -** -@@ LUA_NANTRICK controls the use of a trick to pack all types into -** a single double value, using NaN values to represent non-number -** values. The trick only works on 32-bit machines (ints and pointers -** are 32-bit values) with numbers represented as IEEE 754-2008 doubles -** with conventional endianess (12345678 or 87654321), in CPUs that do -** not produce signaling NaN values (all NaNs are quiet). -*/ - -/* Microsoft compiler on a Pentium (32 bit) ? */ -#if defined(LUA_WIN) && defined(_MSC_VER) && defined(_M_IX86) /* { */ - -#define LUA_MSASMTRICK -#define LUA_IEEEENDIAN 0 -#define LUA_NANTRICK - - -/* pentium 32 bits? */ -#elif defined(__i386__) || defined(__i386) || defined(__X86__) /* }{ */ - -#define LUA_IEEE754TRICK -#define LUA_IEEELL -#define LUA_IEEEENDIAN 0 -#define LUA_NANTRICK - -/* pentium 64 bits? */ -#elif defined(__x86_64) /* }{ */ - -#define LUA_IEEE754TRICK -#define LUA_IEEEENDIAN 0 - -#elif defined(__POWERPC__) || defined(__ppc__) /* }{ */ - -#define LUA_IEEE754TRICK -#define LUA_IEEEENDIAN 1 - -#else /* }{ */ - -/* assume IEEE754 and a 32-bit integer type */ -#define LUA_IEEE754TRICK - -#endif /* } */ - -#endif /* } */ - -/* }================================================================== */ - - - - -/* =================================================================== */ - -/* -** Local configuration. You can use this space to add your redefinitions -** without modifying the main part of the file. -*/ - - - -#endif - diff --git a/source/libs/lua52/lua52-src/src/lualib.h b/source/libs/lua52/lua52-src/src/lualib.h deleted file mode 100644 index da82005c9..000000000 --- a/source/libs/lua52/lua52-src/src/lualib.h +++ /dev/null @@ -1,55 +0,0 @@ -/* -** $Id: lualib.h,v 1.43.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lua standard libraries -** See Copyright Notice in lua.h -*/ - - -#ifndef lualib_h -#define lualib_h - -#include "lua.h" - - - -LUAMOD_API int (luaopen_base) (lua_State *L); - -#define LUA_COLIBNAME "coroutine" -LUAMOD_API int (luaopen_coroutine) (lua_State *L); - -#define LUA_TABLIBNAME "table" -LUAMOD_API int (luaopen_table) (lua_State *L); - -#define LUA_IOLIBNAME "io" -LUAMOD_API int (luaopen_io) (lua_State *L); - -#define LUA_OSLIBNAME "os" -LUAMOD_API int (luaopen_os) (lua_State *L); - -#define LUA_STRLIBNAME "string" -LUAMOD_API int (luaopen_string) (lua_State *L); - -#define LUA_BITLIBNAME "bit32" -LUAMOD_API int (luaopen_bit32) (lua_State *L); - -#define LUA_MATHLIBNAME "math" -LUAMOD_API int (luaopen_math) (lua_State *L); - -#define LUA_DBLIBNAME "debug" -LUAMOD_API int (luaopen_debug) (lua_State *L); - -#define LUA_LOADLIBNAME "package" -LUAMOD_API int (luaopen_package) (lua_State *L); - - -/* open all previous libraries */ -LUALIB_API void (luaL_openlibs) (lua_State *L); - - - -#if !defined(lua_assert) -#define lua_assert(x) ((void)0) -#endif - - -#endif diff --git a/source/libs/lua52/lua52-src/src/lundump.c b/source/libs/lua52/lua52-src/src/lundump.c deleted file mode 100644 index 4163cb5d3..000000000 --- a/source/libs/lua52/lua52-src/src/lundump.c +++ /dev/null @@ -1,258 +0,0 @@ -/* -** $Id: lundump.c,v 2.22.1.1 2013/04/12 18:48:47 roberto Exp $ -** load precompiled Lua chunks -** See Copyright Notice in lua.h -*/ - -#include <string.h> - -#define lundump_c -#define LUA_CORE - -#include "lua.h" - -#include "ldebug.h" -#include "ldo.h" -#include "lfunc.h" -#include "lmem.h" -#include "lobject.h" -#include "lstring.h" -#include "lundump.h" -#include "lzio.h" - -typedef struct { - lua_State* L; - ZIO* Z; - Mbuffer* b; - const char* name; -} LoadState; - -static l_noret error(LoadState* S, const char* why) -{ - luaO_pushfstring(S->L,"%s: %s precompiled chunk",S->name,why); - luaD_throw(S->L,LUA_ERRSYNTAX); -} - -#define LoadMem(S,b,n,size) LoadBlock(S,b,(n)*(size)) -#define LoadByte(S) (lu_byte)LoadChar(S) -#define LoadVar(S,x) LoadMem(S,&x,1,sizeof(x)) -#define LoadVector(S,b,n,size) LoadMem(S,b,n,size) - -#if !defined(luai_verifycode) -#define luai_verifycode(L,b,f) /* empty */ -#endif - -static void LoadBlock(LoadState* S, void* b, size_t size) -{ - if (luaZ_read(S->Z,b,size)!=0) error(S,"truncated"); -} - -static int LoadChar(LoadState* S) -{ - char x; - LoadVar(S,x); - return x; -} - -static int LoadInt(LoadState* S) -{ - int x; - LoadVar(S,x); - if (x<0) error(S,"corrupted"); - return x; -} - -static lua_Number LoadNumber(LoadState* S) -{ - lua_Number x; - LoadVar(S,x); - return x; -} - -static TString* LoadString(LoadState* S) -{ - size_t size; - LoadVar(S,size); - if (size==0) - return NULL; - else - { - char* s=luaZ_openspace(S->L,S->b,size); - LoadBlock(S,s,size*sizeof(char)); - return luaS_newlstr(S->L,s,size-1); /* remove trailing '\0' */ - } -} - -static void LoadCode(LoadState* S, Proto* f) -{ - int n=LoadInt(S); - f->code=luaM_newvector(S->L,n,Instruction); - f->sizecode=n; - LoadVector(S,f->code,n,sizeof(Instruction)); -} - -static void LoadFunction(LoadState* S, Proto* f); - -static void LoadConstants(LoadState* S, Proto* f) -{ - int i,n; - n=LoadInt(S); - f->k=luaM_newvector(S->L,n,TValue); - f->sizek=n; - for (i=0; i<n; i++) setnilvalue(&f->k[i]); - for (i=0; i<n; i++) - { - TValue* o=&f->k[i]; - int t=LoadChar(S); - switch (t) - { - case LUA_TNIL: - setnilvalue(o); - break; - case LUA_TBOOLEAN: - setbvalue(o,LoadChar(S)); - break; - case LUA_TNUMBER: - setnvalue(o,LoadNumber(S)); - break; - case LUA_TSTRING: - setsvalue2n(S->L,o,LoadString(S)); - break; - default: lua_assert(0); - } - } - n=LoadInt(S); - f->p=luaM_newvector(S->L,n,Proto*); - f->sizep=n; - for (i=0; i<n; i++) f->p[i]=NULL; - for (i=0; i<n; i++) - { - f->p[i]=luaF_newproto(S->L); - LoadFunction(S,f->p[i]); - } -} - -static void LoadUpvalues(LoadState* S, Proto* f) -{ - int i,n; - n=LoadInt(S); - f->upvalues=luaM_newvector(S->L,n,Upvaldesc); - f->sizeupvalues=n; - for (i=0; i<n; i++) f->upvalues[i].name=NULL; - for (i=0; i<n; i++) - { - f->upvalues[i].instack=LoadByte(S); - f->upvalues[i].idx=LoadByte(S); - } -} - -static void LoadDebug(LoadState* S, Proto* f) -{ - int i,n; - f->source=LoadString(S); - n=LoadInt(S); - f->lineinfo=luaM_newvector(S->L,n,int); - f->sizelineinfo=n; - LoadVector(S,f->lineinfo,n,sizeof(int)); - n=LoadInt(S); - f->locvars=luaM_newvector(S->L,n,LocVar); - f->sizelocvars=n; - for (i=0; i<n; i++) f->locvars[i].varname=NULL; - for (i=0; i<n; i++) - { - f->locvars[i].varname=LoadString(S); - f->locvars[i].startpc=LoadInt(S); - f->locvars[i].endpc=LoadInt(S); - } - n=LoadInt(S); - for (i=0; i<n; i++) f->upvalues[i].name=LoadString(S); -} - -static void LoadFunction(LoadState* S, Proto* f) -{ - f->linedefined=LoadInt(S); - f->lastlinedefined=LoadInt(S); - f->numparams=LoadByte(S); - f->is_vararg=LoadByte(S); - f->maxstacksize=LoadByte(S); - LoadCode(S,f); - LoadConstants(S,f); - LoadUpvalues(S,f); - LoadDebug(S,f); -} - -/* the code below must be consistent with the code in luaU_header */ -#define N0 LUAC_HEADERSIZE -#define N1 (sizeof(LUA_SIGNATURE)-sizeof(char)) -#define N2 N1+2 -#define N3 N2+6 - -static void LoadHeader(LoadState* S) -{ - lu_byte h[LUAC_HEADERSIZE]; - lu_byte s[LUAC_HEADERSIZE]; - luaU_header(h); - memcpy(s,h,sizeof(char)); /* first char already read */ - LoadBlock(S,s+sizeof(char),LUAC_HEADERSIZE-sizeof(char)); - if (memcmp(h,s,N0)==0) return; - if (memcmp(h,s,N1)!=0) error(S,"not a"); - if (memcmp(h,s,N2)!=0) error(S,"version mismatch in"); - if (memcmp(h,s,N3)!=0) error(S,"incompatible"); else error(S,"corrupted"); -} - -/* -** load precompiled chunk -*/ -Closure* luaU_undump (lua_State* L, ZIO* Z, Mbuffer* buff, const char* name) -{ - LoadState S; - Closure* cl; - if (*name=='@' || *name=='=') - S.name=name+1; - else if (*name==LUA_SIGNATURE[0]) - S.name="binary string"; - else - S.name=name; - S.L=L; - S.Z=Z; - S.b=buff; - LoadHeader(&S); - cl=luaF_newLclosure(L,1); - setclLvalue(L,L->top,cl); incr_top(L); - cl->l.p=luaF_newproto(L); - LoadFunction(&S,cl->l.p); - if (cl->l.p->sizeupvalues != 1) - { - Proto* p=cl->l.p; - cl=luaF_newLclosure(L,cl->l.p->sizeupvalues); - cl->l.p=p; - setclLvalue(L,L->top-1,cl); - } - luai_verifycode(L,buff,cl->l.p); - return cl; -} - -#define MYINT(s) (s[0]-'0') -#define VERSION MYINT(LUA_VERSION_MAJOR)*16+MYINT(LUA_VERSION_MINOR) -#define FORMAT 0 /* this is the official format */ - -/* -* make header for precompiled chunks -* if you change the code below be sure to update LoadHeader and FORMAT above -* and LUAC_HEADERSIZE in lundump.h -*/ -void luaU_header (lu_byte* h) -{ - int x=1; - memcpy(h,LUA_SIGNATURE,sizeof(LUA_SIGNATURE)-sizeof(char)); - h+=sizeof(LUA_SIGNATURE)-sizeof(char); - *h++=cast_byte(VERSION); - *h++=cast_byte(FORMAT); - *h++=cast_byte(*(char*)&x); /* endianness */ - *h++=cast_byte(sizeof(int)); - *h++=cast_byte(sizeof(size_t)); - *h++=cast_byte(sizeof(Instruction)); - *h++=cast_byte(sizeof(lua_Number)); - *h++=cast_byte(((lua_Number)0.5)==0); /* is lua_Number integral? */ - memcpy(h,LUAC_TAIL,sizeof(LUAC_TAIL)-sizeof(char)); -} diff --git a/source/libs/lua52/lua52-src/src/lundump.h b/source/libs/lua52/lua52-src/src/lundump.h deleted file mode 100644 index ede365a22..000000000 --- a/source/libs/lua52/lua52-src/src/lundump.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -** $Id: lundump.h,v 1.39.1.1 2013/04/12 18:48:47 roberto Exp $ -** load precompiled Lua chunks -** See Copyright Notice in lua.h -*/ - -#ifndef lundump_h -#define lundump_h - -#include "lobject.h" -#include "lzio.h" - -/* load one chunk; from lundump.c */ -LUAI_FUNC Closure* luaU_undump (lua_State* L, ZIO* Z, Mbuffer* buff, const char* name); - -/* make header; from lundump.c */ -LUAI_FUNC void luaU_header (lu_byte* h); - -/* dump one chunk; from ldump.c */ -LUA_API int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip); - -/* data to catch conversion errors */ -#define LUAC_TAIL "\x19\x93\r\n\x1a\n" - -/* size in bytes of header of binary files */ -#define LUAC_HEADERSIZE (sizeof(LUA_SIGNATURE)-sizeof(char)+2+6+sizeof(LUAC_TAIL)-sizeof(char)) - -#endif diff --git a/source/libs/lua52/lua52-src/src/lvm.c b/source/libs/lua52/lua52-src/src/lvm.c deleted file mode 100644 index 141b9fd19..000000000 --- a/source/libs/lua52/lua52-src/src/lvm.c +++ /dev/null @@ -1,867 +0,0 @@ -/* -** $Id: lvm.c,v 2.155.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lua virtual machine -** See Copyright Notice in lua.h -*/ - - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#define lvm_c -#define LUA_CORE - -#include "lua.h" - -#include "ldebug.h" -#include "ldo.h" -#include "lfunc.h" -#include "lgc.h" -#include "lobject.h" -#include "lopcodes.h" -#include "lstate.h" -#include "lstring.h" -#include "ltable.h" -#include "ltm.h" -#include "lvm.h" - - - -/* limit for table tag-method chains (to avoid loops) */ -#define MAXTAGLOOP 100 - - -const TValue *luaV_tonumber (const TValue *obj, TValue *n) { - lua_Number num; - if (ttisnumber(obj)) return obj; - if (ttisstring(obj) && luaO_str2d(svalue(obj), tsvalue(obj)->len, &num)) { - setnvalue(n, num); - return n; - } - else - return NULL; -} - - -int luaV_tostring (lua_State *L, StkId obj) { - if (!ttisnumber(obj)) - return 0; - else { - char s[LUAI_MAXNUMBER2STR]; - lua_Number n = nvalue(obj); - int l = lua_number2str(s, n); - setsvalue2s(L, obj, luaS_newlstr(L, s, l)); - return 1; - } -} - - -static void traceexec (lua_State *L) { - CallInfo *ci = L->ci; - lu_byte mask = L->hookmask; - int counthook = ((mask & LUA_MASKCOUNT) && L->hookcount == 0); - if (counthook) - resethookcount(L); /* reset count */ - if (ci->callstatus & CIST_HOOKYIELD) { /* called hook last time? */ - ci->callstatus &= ~CIST_HOOKYIELD; /* erase mark */ - return; /* do not call hook again (VM yielded, so it did not move) */ - } - if (counthook) - luaD_hook(L, LUA_HOOKCOUNT, -1); /* call count hook */ - if (mask & LUA_MASKLINE) { - Proto *p = ci_func(ci)->p; - int npc = pcRel(ci->u.l.savedpc, p); - int newline = getfuncline(p, npc); - if (npc == 0 || /* call linehook when enter a new function, */ - ci->u.l.savedpc <= L->oldpc || /* when jump back (loop), or when */ - newline != getfuncline(p, pcRel(L->oldpc, p))) /* enter a new line */ - luaD_hook(L, LUA_HOOKLINE, newline); /* call line hook */ - } - L->oldpc = ci->u.l.savedpc; - if (L->status == LUA_YIELD) { /* did hook yield? */ - if (counthook) - L->hookcount = 1; /* undo decrement to zero */ - ci->u.l.savedpc--; /* undo increment (resume will increment it again) */ - ci->callstatus |= CIST_HOOKYIELD; /* mark that it yielded */ - ci->func = L->top - 1; /* protect stack below results */ - luaD_throw(L, LUA_YIELD); - } -} - - -static void callTM (lua_State *L, const TValue *f, const TValue *p1, - const TValue *p2, TValue *p3, int hasres) { - ptrdiff_t result = savestack(L, p3); - setobj2s(L, L->top++, f); /* push function */ - setobj2s(L, L->top++, p1); /* 1st argument */ - setobj2s(L, L->top++, p2); /* 2nd argument */ - if (!hasres) /* no result? 'p3' is third argument */ - setobj2s(L, L->top++, p3); /* 3rd argument */ - /* metamethod may yield only when called from Lua code */ - luaD_call(L, L->top - (4 - hasres), hasres, isLua(L->ci)); - if (hasres) { /* if has result, move it to its place */ - p3 = restorestack(L, result); - setobjs2s(L, p3, --L->top); - } -} - - -void luaV_gettable (lua_State *L, const TValue *t, TValue *key, StkId val) { - int loop; - for (loop = 0; loop < MAXTAGLOOP; loop++) { - const TValue *tm; - if (ttistable(t)) { /* `t' is a table? */ - Table *h = hvalue(t); - const TValue *res = luaH_get(h, key); /* do a primitive get */ - if (!ttisnil(res) || /* result is not nil? */ - (tm = fasttm(L, h->metatable, TM_INDEX)) == NULL) { /* or no TM? */ - setobj2s(L, val, res); - return; - } - /* else will try the tag method */ - } - else if (ttisnil(tm = luaT_gettmbyobj(L, t, TM_INDEX))) - luaG_typeerror(L, t, "index"); - if (ttisfunction(tm)) { - callTM(L, tm, t, key, val, 1); - return; - } - t = tm; /* else repeat with 'tm' */ - } - luaG_runerror(L, "loop in gettable"); -} - - -void luaV_settable (lua_State *L, const TValue *t, TValue *key, StkId val) { - int loop; - for (loop = 0; loop < MAXTAGLOOP; loop++) { - const TValue *tm; - if (ttistable(t)) { /* `t' is a table? */ - Table *h = hvalue(t); - TValue *oldval = cast(TValue *, luaH_get(h, key)); - /* if previous value is not nil, there must be a previous entry - in the table; moreover, a metamethod has no relevance */ - if (!ttisnil(oldval) || - /* previous value is nil; must check the metamethod */ - ((tm = fasttm(L, h->metatable, TM_NEWINDEX)) == NULL && - /* no metamethod; is there a previous entry in the table? */ - (oldval != luaO_nilobject || - /* no previous entry; must create one. (The next test is - always true; we only need the assignment.) */ - (oldval = luaH_newkey(L, h, key), 1)))) { - /* no metamethod and (now) there is an entry with given key */ - setobj2t(L, oldval, val); /* assign new value to that entry */ - invalidateTMcache(h); - luaC_barrierback(L, obj2gco(h), val); - return; - } - /* else will try the metamethod */ - } - else /* not a table; check metamethod */ - if (ttisnil(tm = luaT_gettmbyobj(L, t, TM_NEWINDEX))) - luaG_typeerror(L, t, "index"); - /* there is a metamethod */ - if (ttisfunction(tm)) { - callTM(L, tm, t, key, val, 0); - return; - } - t = tm; /* else repeat with 'tm' */ - } - luaG_runerror(L, "loop in settable"); -} - - -static int call_binTM (lua_State *L, const TValue *p1, const TValue *p2, - StkId res, TMS event) { - const TValue *tm = luaT_gettmbyobj(L, p1, event); /* try first operand */ - if (ttisnil(tm)) - tm = luaT_gettmbyobj(L, p2, event); /* try second operand */ - if (ttisnil(tm)) return 0; - callTM(L, tm, p1, p2, res, 1); - return 1; -} - - -static const TValue *get_equalTM (lua_State *L, Table *mt1, Table *mt2, - TMS event) { - const TValue *tm1 = fasttm(L, mt1, event); - const TValue *tm2; - if (tm1 == NULL) return NULL; /* no metamethod */ - if (mt1 == mt2) return tm1; /* same metatables => same metamethods */ - tm2 = fasttm(L, mt2, event); - if (tm2 == NULL) return NULL; /* no metamethod */ - if (luaV_rawequalobj(tm1, tm2)) /* same metamethods? */ - return tm1; - return NULL; -} - - -static int call_orderTM (lua_State *L, const TValue *p1, const TValue *p2, - TMS event) { - if (!call_binTM(L, p1, p2, L->top, event)) - return -1; /* no metamethod */ - else - return !l_isfalse(L->top); -} - - -static int l_strcmp (const TString *ls, const TString *rs) { - const char *l = getstr(ls); - size_t ll = ls->tsv.len; - const char *r = getstr(rs); - size_t lr = rs->tsv.len; - for (;;) { - int temp = strcoll(l, r); - if (temp != 0) return temp; - else { /* strings are equal up to a `\0' */ - size_t len = strlen(l); /* index of first `\0' in both strings */ - if (len == lr) /* r is finished? */ - return (len == ll) ? 0 : 1; - else if (len == ll) /* l is finished? */ - return -1; /* l is smaller than r (because r is not finished) */ - /* both strings longer than `len'; go on comparing (after the `\0') */ - len++; - l += len; ll -= len; r += len; lr -= len; - } - } -} - - -int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r) { - int res; - if (ttisnumber(l) && ttisnumber(r)) - return luai_numlt(L, nvalue(l), nvalue(r)); - else if (ttisstring(l) && ttisstring(r)) - return l_strcmp(rawtsvalue(l), rawtsvalue(r)) < 0; - else if ((res = call_orderTM(L, l, r, TM_LT)) < 0) - luaG_ordererror(L, l, r); - return res; -} - - -int luaV_lessequal (lua_State *L, const TValue *l, const TValue *r) { - int res; - if (ttisnumber(l) && ttisnumber(r)) - return luai_numle(L, nvalue(l), nvalue(r)); - else if (ttisstring(l) && ttisstring(r)) - return l_strcmp(rawtsvalue(l), rawtsvalue(r)) <= 0; - else if ((res = call_orderTM(L, l, r, TM_LE)) >= 0) /* first try `le' */ - return res; - else if ((res = call_orderTM(L, r, l, TM_LT)) < 0) /* else try `lt' */ - luaG_ordererror(L, l, r); - return !res; -} - - -/* -** equality of Lua values. L == NULL means raw equality (no metamethods) -*/ -int luaV_equalobj_ (lua_State *L, const TValue *t1, const TValue *t2) { - const TValue *tm; - lua_assert(ttisequal(t1, t2)); - switch (ttype(t1)) { - case LUA_TNIL: return 1; - case LUA_TNUMBER: return luai_numeq(nvalue(t1), nvalue(t2)); - case LUA_TBOOLEAN: return bvalue(t1) == bvalue(t2); /* true must be 1 !! */ - case LUA_TLIGHTUSERDATA: return pvalue(t1) == pvalue(t2); - case LUA_TLCF: return fvalue(t1) == fvalue(t2); - case LUA_TSHRSTR: return eqshrstr(rawtsvalue(t1), rawtsvalue(t2)); - case LUA_TLNGSTR: return luaS_eqlngstr(rawtsvalue(t1), rawtsvalue(t2)); - case LUA_TUSERDATA: { - if (uvalue(t1) == uvalue(t2)) return 1; - else if (L == NULL) return 0; - tm = get_equalTM(L, uvalue(t1)->metatable, uvalue(t2)->metatable, TM_EQ); - break; /* will try TM */ - } - case LUA_TTABLE: { - if (hvalue(t1) == hvalue(t2)) return 1; - else if (L == NULL) return 0; - tm = get_equalTM(L, hvalue(t1)->metatable, hvalue(t2)->metatable, TM_EQ); - break; /* will try TM */ - } - default: - lua_assert(iscollectable(t1)); - return gcvalue(t1) == gcvalue(t2); - } - if (tm == NULL) return 0; /* no TM? */ - callTM(L, tm, t1, t2, L->top, 1); /* call TM */ - return !l_isfalse(L->top); -} - - -void luaV_concat (lua_State *L, int total) { - lua_assert(total >= 2); - do { - StkId top = L->top; - int n = 2; /* number of elements handled in this pass (at least 2) */ - if (!(ttisstring(top-2) || ttisnumber(top-2)) || !tostring(L, top-1)) { - if (!call_binTM(L, top-2, top-1, top-2, TM_CONCAT)) - luaG_concaterror(L, top-2, top-1); - } - else if (tsvalue(top-1)->len == 0) /* second operand is empty? */ - (void)tostring(L, top - 2); /* result is first operand */ - else if (ttisstring(top-2) && tsvalue(top-2)->len == 0) { - setobjs2s(L, top - 2, top - 1); /* result is second op. */ - } - else { - /* at least two non-empty string values; get as many as possible */ - size_t tl = tsvalue(top-1)->len; - char *buffer; - int i; - /* collect total length */ - for (i = 1; i < total && tostring(L, top-i-1); i++) { - size_t l = tsvalue(top-i-1)->len; - if (l >= (MAX_SIZET/sizeof(char)) - tl) - luaG_runerror(L, "string length overflow"); - tl += l; - } - buffer = luaZ_openspace(L, &G(L)->buff, tl); - tl = 0; - n = i; - do { /* concat all strings */ - size_t l = tsvalue(top-i)->len; - memcpy(buffer+tl, svalue(top-i), l * sizeof(char)); - tl += l; - } while (--i > 0); - setsvalue2s(L, top-n, luaS_newlstr(L, buffer, tl)); - } - total -= n-1; /* got 'n' strings to create 1 new */ - L->top -= n-1; /* popped 'n' strings and pushed one */ - } while (total > 1); /* repeat until only 1 result left */ -} - - -void luaV_objlen (lua_State *L, StkId ra, const TValue *rb) { - const TValue *tm; - switch (ttypenv(rb)) { - case LUA_TTABLE: { - Table *h = hvalue(rb); - tm = fasttm(L, h->metatable, TM_LEN); - if (tm) break; /* metamethod? break switch to call it */ - setnvalue(ra, cast_num(luaH_getn(h))); /* else primitive len */ - return; - } - case LUA_TSTRING: { - setnvalue(ra, cast_num(tsvalue(rb)->len)); - return; - } - default: { /* try metamethod */ - tm = luaT_gettmbyobj(L, rb, TM_LEN); - if (ttisnil(tm)) /* no metamethod? */ - luaG_typeerror(L, rb, "get length of"); - break; - } - } - callTM(L, tm, rb, rb, ra, 1); -} - - -void luaV_arith (lua_State *L, StkId ra, const TValue *rb, - const TValue *rc, TMS op) { - TValue tempb, tempc; - const TValue *b, *c; - if ((b = luaV_tonumber(rb, &tempb)) != NULL && - (c = luaV_tonumber(rc, &tempc)) != NULL) { - lua_Number res = luaO_arith(op - TM_ADD + LUA_OPADD, nvalue(b), nvalue(c)); - setnvalue(ra, res); - } - else if (!call_binTM(L, rb, rc, ra, op)) - luaG_aritherror(L, rb, rc); -} - - -/* -** check whether cached closure in prototype 'p' may be reused, that is, -** whether there is a cached closure with the same upvalues needed by -** new closure to be created. -*/ -static Closure *getcached (Proto *p, UpVal **encup, StkId base) { - Closure *c = p->cache; - if (c != NULL) { /* is there a cached closure? */ - int nup = p->sizeupvalues; - Upvaldesc *uv = p->upvalues; - int i; - for (i = 0; i < nup; i++) { /* check whether it has right upvalues */ - TValue *v = uv[i].instack ? base + uv[i].idx : encup[uv[i].idx]->v; - if (c->l.upvals[i]->v != v) - return NULL; /* wrong upvalue; cannot reuse closure */ - } - } - return c; /* return cached closure (or NULL if no cached closure) */ -} - - -/* -** create a new Lua closure, push it in the stack, and initialize -** its upvalues. Note that the call to 'luaC_barrierproto' must come -** before the assignment to 'p->cache', as the function needs the -** original value of that field. -*/ -static void pushclosure (lua_State *L, Proto *p, UpVal **encup, StkId base, - StkId ra) { - int nup = p->sizeupvalues; - Upvaldesc *uv = p->upvalues; - int i; - Closure *ncl = luaF_newLclosure(L, nup); - ncl->l.p = p; - setclLvalue(L, ra, ncl); /* anchor new closure in stack */ - for (i = 0; i < nup; i++) { /* fill in its upvalues */ - if (uv[i].instack) /* upvalue refers to local variable? */ - ncl->l.upvals[i] = luaF_findupval(L, base + uv[i].idx); - else /* get upvalue from enclosing function */ - ncl->l.upvals[i] = encup[uv[i].idx]; - } - luaC_barrierproto(L, p, ncl); - p->cache = ncl; /* save it on cache for reuse */ -} - - -/* -** finish execution of an opcode interrupted by an yield -*/ -void luaV_finishOp (lua_State *L) { - CallInfo *ci = L->ci; - StkId base = ci->u.l.base; - Instruction inst = *(ci->u.l.savedpc - 1); /* interrupted instruction */ - OpCode op = GET_OPCODE(inst); - switch (op) { /* finish its execution */ - case OP_ADD: case OP_SUB: case OP_MUL: case OP_DIV: - case OP_MOD: case OP_POW: case OP_UNM: case OP_LEN: - case OP_GETTABUP: case OP_GETTABLE: case OP_SELF: { - setobjs2s(L, base + GETARG_A(inst), --L->top); - break; - } - case OP_LE: case OP_LT: case OP_EQ: { - int res = !l_isfalse(L->top - 1); - L->top--; - /* metamethod should not be called when operand is K */ - lua_assert(!ISK(GETARG_B(inst))); - if (op == OP_LE && /* "<=" using "<" instead? */ - ttisnil(luaT_gettmbyobj(L, base + GETARG_B(inst), TM_LE))) - res = !res; /* invert result */ - lua_assert(GET_OPCODE(*ci->u.l.savedpc) == OP_JMP); - if (res != GETARG_A(inst)) /* condition failed? */ - ci->u.l.savedpc++; /* skip jump instruction */ - break; - } - case OP_CONCAT: { - StkId top = L->top - 1; /* top when 'call_binTM' was called */ - int b = GETARG_B(inst); /* first element to concatenate */ - int total = cast_int(top - 1 - (base + b)); /* yet to concatenate */ - setobj2s(L, top - 2, top); /* put TM result in proper position */ - if (total > 1) { /* are there elements to concat? */ - L->top = top - 1; /* top is one after last element (at top-2) */ - luaV_concat(L, total); /* concat them (may yield again) */ - } - /* move final result to final position */ - setobj2s(L, ci->u.l.base + GETARG_A(inst), L->top - 1); - L->top = ci->top; /* restore top */ - break; - } - case OP_TFORCALL: { - lua_assert(GET_OPCODE(*ci->u.l.savedpc) == OP_TFORLOOP); - L->top = ci->top; /* correct top */ - break; - } - case OP_CALL: { - if (GETARG_C(inst) - 1 >= 0) /* nresults >= 0? */ - L->top = ci->top; /* adjust results */ - break; - } - case OP_TAILCALL: case OP_SETTABUP: case OP_SETTABLE: - break; - default: lua_assert(0); - } -} - - - -/* -** some macros for common tasks in `luaV_execute' -*/ - -#if !defined luai_runtimecheck -#define luai_runtimecheck(L, c) /* void */ -#endif - - -#define RA(i) (base+GETARG_A(i)) -/* to be used after possible stack reallocation */ -#define RB(i) check_exp(getBMode(GET_OPCODE(i)) == OpArgR, base+GETARG_B(i)) -#define RC(i) check_exp(getCMode(GET_OPCODE(i)) == OpArgR, base+GETARG_C(i)) -#define RKB(i) check_exp(getBMode(GET_OPCODE(i)) == OpArgK, \ - ISK(GETARG_B(i)) ? k+INDEXK(GETARG_B(i)) : base+GETARG_B(i)) -#define RKC(i) check_exp(getCMode(GET_OPCODE(i)) == OpArgK, \ - ISK(GETARG_C(i)) ? k+INDEXK(GETARG_C(i)) : base+GETARG_C(i)) -#define KBx(i) \ - (k + (GETARG_Bx(i) != 0 ? GETARG_Bx(i) - 1 : GETARG_Ax(*ci->u.l.savedpc++))) - - -/* execute a jump instruction */ -#define dojump(ci,i,e) \ - { int a = GETARG_A(i); \ - if (a > 0) luaF_close(L, ci->u.l.base + a - 1); \ - ci->u.l.savedpc += GETARG_sBx(i) + e; } - -/* for test instructions, execute the jump instruction that follows it */ -#define donextjump(ci) { i = *ci->u.l.savedpc; dojump(ci, i, 1); } - - -#define Protect(x) { {x;}; base = ci->u.l.base; } - -#define checkGC(L,c) \ - Protect( luaC_condGC(L,{L->top = (c); /* limit of live values */ \ - luaC_step(L); \ - L->top = ci->top;}) /* restore top */ \ - luai_threadyield(L); ) - - -#define arith_op(op,tm) { \ - TValue *rb = RKB(i); \ - TValue *rc = RKC(i); \ - if (ttisnumber(rb) && ttisnumber(rc)) { \ - lua_Number nb = nvalue(rb), nc = nvalue(rc); \ - setnvalue(ra, op(L, nb, nc)); \ - } \ - else { Protect(luaV_arith(L, ra, rb, rc, tm)); } } - - -#define vmdispatch(o) switch(o) -#define vmcase(l,b) case l: {b} break; -#define vmcasenb(l,b) case l: {b} /* nb = no break */ - -void luaV_execute (lua_State *L) { - CallInfo *ci = L->ci; - LClosure *cl; - TValue *k; - StkId base; - newframe: /* reentry point when frame changes (call/return) */ - lua_assert(ci == L->ci); - cl = clLvalue(ci->func); - k = cl->p->k; - base = ci->u.l.base; - /* main loop of interpreter */ - for (;;) { - Instruction i = *(ci->u.l.savedpc++); - StkId ra; - if ((L->hookmask & (LUA_MASKLINE | LUA_MASKCOUNT)) && - (--L->hookcount == 0 || L->hookmask & LUA_MASKLINE)) { - Protect(traceexec(L)); - } - /* WARNING: several calls may realloc the stack and invalidate `ra' */ - ra = RA(i); - lua_assert(base == ci->u.l.base); - lua_assert(base <= L->top && L->top < L->stack + L->stacksize); - vmdispatch (GET_OPCODE(i)) { - vmcase(OP_MOVE, - setobjs2s(L, ra, RB(i)); - ) - vmcase(OP_LOADK, - TValue *rb = k + GETARG_Bx(i); - setobj2s(L, ra, rb); - ) - vmcase(OP_LOADKX, - TValue *rb; - lua_assert(GET_OPCODE(*ci->u.l.savedpc) == OP_EXTRAARG); - rb = k + GETARG_Ax(*ci->u.l.savedpc++); - setobj2s(L, ra, rb); - ) - vmcase(OP_LOADBOOL, - setbvalue(ra, GETARG_B(i)); - if (GETARG_C(i)) ci->u.l.savedpc++; /* skip next instruction (if C) */ - ) - vmcase(OP_LOADNIL, - int b = GETARG_B(i); - do { - setnilvalue(ra++); - } while (b--); - ) - vmcase(OP_GETUPVAL, - int b = GETARG_B(i); - setobj2s(L, ra, cl->upvals[b]->v); - ) - vmcase(OP_GETTABUP, - int b = GETARG_B(i); - Protect(luaV_gettable(L, cl->upvals[b]->v, RKC(i), ra)); - ) - vmcase(OP_GETTABLE, - Protect(luaV_gettable(L, RB(i), RKC(i), ra)); - ) - vmcase(OP_SETTABUP, - int a = GETARG_A(i); - Protect(luaV_settable(L, cl->upvals[a]->v, RKB(i), RKC(i))); - ) - vmcase(OP_SETUPVAL, - UpVal *uv = cl->upvals[GETARG_B(i)]; - setobj(L, uv->v, ra); - luaC_barrier(L, uv, ra); - ) - vmcase(OP_SETTABLE, - Protect(luaV_settable(L, ra, RKB(i), RKC(i))); - ) - vmcase(OP_NEWTABLE, - int b = GETARG_B(i); - int c = GETARG_C(i); - Table *t = luaH_new(L); - sethvalue(L, ra, t); - if (b != 0 || c != 0) - luaH_resize(L, t, luaO_fb2int(b), luaO_fb2int(c)); - checkGC(L, ra + 1); - ) - vmcase(OP_SELF, - StkId rb = RB(i); - setobjs2s(L, ra+1, rb); - Protect(luaV_gettable(L, rb, RKC(i), ra)); - ) - vmcase(OP_ADD, - arith_op(luai_numadd, TM_ADD); - ) - vmcase(OP_SUB, - arith_op(luai_numsub, TM_SUB); - ) - vmcase(OP_MUL, - arith_op(luai_nummul, TM_MUL); - ) - vmcase(OP_DIV, - arith_op(luai_numdiv, TM_DIV); - ) - vmcase(OP_MOD, - arith_op(luai_nummod, TM_MOD); - ) - vmcase(OP_POW, - arith_op(luai_numpow, TM_POW); - ) - vmcase(OP_UNM, - TValue *rb = RB(i); - if (ttisnumber(rb)) { - lua_Number nb = nvalue(rb); - setnvalue(ra, luai_numunm(L, nb)); - } - else { - Protect(luaV_arith(L, ra, rb, rb, TM_UNM)); - } - ) - vmcase(OP_NOT, - TValue *rb = RB(i); - int res = l_isfalse(rb); /* next assignment may change this value */ - setbvalue(ra, res); - ) - vmcase(OP_LEN, - Protect(luaV_objlen(L, ra, RB(i))); - ) - vmcase(OP_CONCAT, - int b = GETARG_B(i); - int c = GETARG_C(i); - StkId rb; - L->top = base + c + 1; /* mark the end of concat operands */ - Protect(luaV_concat(L, c - b + 1)); - ra = RA(i); /* 'luav_concat' may invoke TMs and move the stack */ - rb = b + base; - setobjs2s(L, ra, rb); - checkGC(L, (ra >= rb ? ra + 1 : rb)); - L->top = ci->top; /* restore top */ - ) - vmcase(OP_JMP, - dojump(ci, i, 0); - ) - vmcase(OP_EQ, - TValue *rb = RKB(i); - TValue *rc = RKC(i); - Protect( - if (cast_int(equalobj(L, rb, rc)) != GETARG_A(i)) - ci->u.l.savedpc++; - else - donextjump(ci); - ) - ) - vmcase(OP_LT, - Protect( - if (luaV_lessthan(L, RKB(i), RKC(i)) != GETARG_A(i)) - ci->u.l.savedpc++; - else - donextjump(ci); - ) - ) - vmcase(OP_LE, - Protect( - if (luaV_lessequal(L, RKB(i), RKC(i)) != GETARG_A(i)) - ci->u.l.savedpc++; - else - donextjump(ci); - ) - ) - vmcase(OP_TEST, - if (GETARG_C(i) ? l_isfalse(ra) : !l_isfalse(ra)) - ci->u.l.savedpc++; - else - donextjump(ci); - ) - vmcase(OP_TESTSET, - TValue *rb = RB(i); - if (GETARG_C(i) ? l_isfalse(rb) : !l_isfalse(rb)) - ci->u.l.savedpc++; - else { - setobjs2s(L, ra, rb); - donextjump(ci); - } - ) - vmcase(OP_CALL, - int b = GETARG_B(i); - int nresults = GETARG_C(i) - 1; - if (b != 0) L->top = ra+b; /* else previous instruction set top */ - if (luaD_precall(L, ra, nresults)) { /* C function? */ - if (nresults >= 0) L->top = ci->top; /* adjust results */ - base = ci->u.l.base; - } - else { /* Lua function */ - ci = L->ci; - ci->callstatus |= CIST_REENTRY; - goto newframe; /* restart luaV_execute over new Lua function */ - } - ) - vmcase(OP_TAILCALL, - int b = GETARG_B(i); - if (b != 0) L->top = ra+b; /* else previous instruction set top */ - lua_assert(GETARG_C(i) - 1 == LUA_MULTRET); - if (luaD_precall(L, ra, LUA_MULTRET)) /* C function? */ - base = ci->u.l.base; - else { - /* tail call: put called frame (n) in place of caller one (o) */ - CallInfo *nci = L->ci; /* called frame */ - CallInfo *oci = nci->previous; /* caller frame */ - StkId nfunc = nci->func; /* called function */ - StkId ofunc = oci->func; /* caller function */ - /* last stack slot filled by 'precall' */ - StkId lim = nci->u.l.base + getproto(nfunc)->numparams; - int aux; - /* close all upvalues from previous call */ - if (cl->p->sizep > 0) luaF_close(L, oci->u.l.base); - /* move new frame into old one */ - for (aux = 0; nfunc + aux < lim; aux++) - setobjs2s(L, ofunc + aux, nfunc + aux); - oci->u.l.base = ofunc + (nci->u.l.base - nfunc); /* correct base */ - oci->top = L->top = ofunc + (L->top - nfunc); /* correct top */ - oci->u.l.savedpc = nci->u.l.savedpc; - oci->callstatus |= CIST_TAIL; /* function was tail called */ - ci = L->ci = oci; /* remove new frame */ - lua_assert(L->top == oci->u.l.base + getproto(ofunc)->maxstacksize); - goto newframe; /* restart luaV_execute over new Lua function */ - } - ) - vmcasenb(OP_RETURN, - int b = GETARG_B(i); - if (b != 0) L->top = ra+b-1; - if (cl->p->sizep > 0) luaF_close(L, base); - b = luaD_poscall(L, ra); - if (!(ci->callstatus & CIST_REENTRY)) /* 'ci' still the called one */ - return; /* external invocation: return */ - else { /* invocation via reentry: continue execution */ - ci = L->ci; - if (b) L->top = ci->top; - lua_assert(isLua(ci)); - lua_assert(GET_OPCODE(*((ci)->u.l.savedpc - 1)) == OP_CALL); - goto newframe; /* restart luaV_execute over new Lua function */ - } - ) - vmcase(OP_FORLOOP, - lua_Number step = nvalue(ra+2); - lua_Number idx = luai_numadd(L, nvalue(ra), step); /* increment index */ - lua_Number limit = nvalue(ra+1); - if (luai_numlt(L, 0, step) ? luai_numle(L, idx, limit) - : luai_numle(L, limit, idx)) { - ci->u.l.savedpc += GETARG_sBx(i); /* jump back */ - setnvalue(ra, idx); /* update internal index... */ - setnvalue(ra+3, idx); /* ...and external index */ - } - ) - vmcase(OP_FORPREP, - const TValue *init = ra; - const TValue *plimit = ra+1; - const TValue *pstep = ra+2; - if (!tonumber(init, ra)) - luaG_runerror(L, LUA_QL("for") " initial value must be a number"); - else if (!tonumber(plimit, ra+1)) - luaG_runerror(L, LUA_QL("for") " limit must be a number"); - else if (!tonumber(pstep, ra+2)) - luaG_runerror(L, LUA_QL("for") " step must be a number"); - setnvalue(ra, luai_numsub(L, nvalue(ra), nvalue(pstep))); - ci->u.l.savedpc += GETARG_sBx(i); - ) - vmcasenb(OP_TFORCALL, - StkId cb = ra + 3; /* call base */ - setobjs2s(L, cb+2, ra+2); - setobjs2s(L, cb+1, ra+1); - setobjs2s(L, cb, ra); - L->top = cb + 3; /* func. + 2 args (state and index) */ - Protect(luaD_call(L, cb, GETARG_C(i), 1)); - L->top = ci->top; - i = *(ci->u.l.savedpc++); /* go to next instruction */ - ra = RA(i); - lua_assert(GET_OPCODE(i) == OP_TFORLOOP); - goto l_tforloop; - ) - vmcase(OP_TFORLOOP, - l_tforloop: - if (!ttisnil(ra + 1)) { /* continue loop? */ - setobjs2s(L, ra, ra + 1); /* save control variable */ - ci->u.l.savedpc += GETARG_sBx(i); /* jump back */ - } - ) - vmcase(OP_SETLIST, - int n = GETARG_B(i); - int c = GETARG_C(i); - int last; - Table *h; - if (n == 0) n = cast_int(L->top - ra) - 1; - if (c == 0) { - lua_assert(GET_OPCODE(*ci->u.l.savedpc) == OP_EXTRAARG); - c = GETARG_Ax(*ci->u.l.savedpc++); - } - luai_runtimecheck(L, ttistable(ra)); - h = hvalue(ra); - last = ((c-1)*LFIELDS_PER_FLUSH) + n; - if (last > h->sizearray) /* needs more space? */ - luaH_resizearray(L, h, last); /* pre-allocate it at once */ - for (; n > 0; n--) { - TValue *val = ra+n; - luaH_setint(L, h, last--, val); - luaC_barrierback(L, obj2gco(h), val); - } - L->top = ci->top; /* correct top (in case of previous open call) */ - ) - vmcase(OP_CLOSURE, - Proto *p = cl->p->p[GETARG_Bx(i)]; - Closure *ncl = getcached(p, cl->upvals, base); /* cached closure */ - if (ncl == NULL) /* no match? */ - pushclosure(L, p, cl->upvals, base, ra); /* create a new one */ - else - setclLvalue(L, ra, ncl); /* push cashed closure */ - checkGC(L, ra + 1); - ) - vmcase(OP_VARARG, - int b = GETARG_B(i) - 1; - int j; - int n = cast_int(base - ci->func) - cl->p->numparams - 1; - if (b < 0) { /* B == 0? */ - b = n; /* get all var. arguments */ - Protect(luaD_checkstack(L, n)); - ra = RA(i); /* previous call may change the stack */ - L->top = ra + n; - } - for (j = 0; j < b; j++) { - if (j < n) { - setobjs2s(L, ra + j, base - n + j); - } - else { - setnilvalue(ra + j); - } - } - ) - vmcase(OP_EXTRAARG, - lua_assert(0); - ) - } - } -} - diff --git a/source/libs/lua52/lua52-src/src/lvm.h b/source/libs/lua52/lua52-src/src/lvm.h deleted file mode 100644 index 5380270da..000000000 --- a/source/libs/lua52/lua52-src/src/lvm.h +++ /dev/null @@ -1,44 +0,0 @@ -/* -** $Id: lvm.h,v 2.18.1.1 2013/04/12 18:48:47 roberto Exp $ -** Lua virtual machine -** See Copyright Notice in lua.h -*/ - -#ifndef lvm_h -#define lvm_h - - -#include "ldo.h" -#include "lobject.h" -#include "ltm.h" - - -#define tostring(L,o) (ttisstring(o) || (luaV_tostring(L, o))) - -#define tonumber(o,n) (ttisnumber(o) || (((o) = luaV_tonumber(o,n)) != NULL)) - -#define equalobj(L,o1,o2) (ttisequal(o1, o2) && luaV_equalobj_(L, o1, o2)) - -#define luaV_rawequalobj(o1,o2) equalobj(NULL,o1,o2) - - -/* not to called directly */ -LUAI_FUNC int luaV_equalobj_ (lua_State *L, const TValue *t1, const TValue *t2); - - -LUAI_FUNC int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r); -LUAI_FUNC int luaV_lessequal (lua_State *L, const TValue *l, const TValue *r); -LUAI_FUNC const TValue *luaV_tonumber (const TValue *obj, TValue *n); -LUAI_FUNC int luaV_tostring (lua_State *L, StkId obj); -LUAI_FUNC void luaV_gettable (lua_State *L, const TValue *t, TValue *key, - StkId val); -LUAI_FUNC void luaV_settable (lua_State *L, const TValue *t, TValue *key, - StkId val); -LUAI_FUNC void luaV_finishOp (lua_State *L); -LUAI_FUNC void luaV_execute (lua_State *L); -LUAI_FUNC void luaV_concat (lua_State *L, int total); -LUAI_FUNC void luaV_arith (lua_State *L, StkId ra, const TValue *rb, - const TValue *rc, TMS op); -LUAI_FUNC void luaV_objlen (lua_State *L, StkId ra, const TValue *rb); - -#endif diff --git a/source/libs/lua52/lua52-src/src/lzio.c b/source/libs/lua52/lua52-src/src/lzio.c deleted file mode 100644 index 20efea983..000000000 --- a/source/libs/lua52/lua52-src/src/lzio.c +++ /dev/null @@ -1,76 +0,0 @@ -/* -** $Id: lzio.c,v 1.35.1.1 2013/04/12 18:48:47 roberto Exp $ -** Buffered streams -** See Copyright Notice in lua.h -*/ - - -#include <string.h> - -#define lzio_c -#define LUA_CORE - -#include "lua.h" - -#include "llimits.h" -#include "lmem.h" -#include "lstate.h" -#include "lzio.h" - - -int luaZ_fill (ZIO *z) { - size_t size; - lua_State *L = z->L; - const char *buff; - lua_unlock(L); - buff = z->reader(L, z->data, &size); - lua_lock(L); - if (buff == NULL || size == 0) - return EOZ; - z->n = size - 1; /* discount char being returned */ - z->p = buff; - return cast_uchar(*(z->p++)); -} - - -void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader, void *data) { - z->L = L; - z->reader = reader; - z->data = data; - z->n = 0; - z->p = NULL; -} - - -/* --------------------------------------------------------------- read --- */ -size_t luaZ_read (ZIO *z, void *b, size_t n) { - while (n) { - size_t m; - if (z->n == 0) { /* no bytes in buffer? */ - if (luaZ_fill(z) == EOZ) /* try to read more */ - return n; /* no more input; return number of missing bytes */ - else { - z->n++; /* luaZ_fill consumed first byte; put it back */ - z->p--; - } - } - m = (n <= z->n) ? n : z->n; /* min. between n and z->n */ - memcpy(b, z->p, m); - z->n -= m; - z->p += m; - b = (char *)b + m; - n -= m; - } - return 0; -} - -/* ------------------------------------------------------------------------ */ -char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n) { - if (n > buff->buffsize) { - if (n < LUA_MINBUFFER) n = LUA_MINBUFFER; - luaZ_resizebuffer(L, buff, n); - } - return buff->buffer; -} - - diff --git a/source/libs/lua52/lua52-src/src/lzio.h b/source/libs/lua52/lua52-src/src/lzio.h deleted file mode 100644 index 441f7479c..000000000 --- a/source/libs/lua52/lua52-src/src/lzio.h +++ /dev/null @@ -1,65 +0,0 @@ -/* -** $Id: lzio.h,v 1.26.1.1 2013/04/12 18:48:47 roberto Exp $ -** Buffered streams -** See Copyright Notice in lua.h -*/ - - -#ifndef lzio_h -#define lzio_h - -#include "lua.h" - -#include "lmem.h" - - -#define EOZ (-1) /* end of stream */ - -typedef struct Zio ZIO; - -#define zgetc(z) (((z)->n--)>0 ? cast_uchar(*(z)->p++) : luaZ_fill(z)) - - -typedef struct Mbuffer { - char *buffer; - size_t n; - size_t buffsize; -} Mbuffer; - -#define luaZ_initbuffer(L, buff) ((buff)->buffer = NULL, (buff)->buffsize = 0) - -#define luaZ_buffer(buff) ((buff)->buffer) -#define luaZ_sizebuffer(buff) ((buff)->buffsize) -#define luaZ_bufflen(buff) ((buff)->n) - -#define luaZ_resetbuffer(buff) ((buff)->n = 0) - - -#define luaZ_resizebuffer(L, buff, size) \ - (luaM_reallocvector(L, (buff)->buffer, (buff)->buffsize, size, char), \ - (buff)->buffsize = size) - -#define luaZ_freebuffer(L, buff) luaZ_resizebuffer(L, buff, 0) - - -LUAI_FUNC char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n); -LUAI_FUNC void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader, - void *data); -LUAI_FUNC size_t luaZ_read (ZIO* z, void* b, size_t n); /* read next n bytes */ - - - -/* --------- Private Part ------------------ */ - -struct Zio { - size_t n; /* bytes still unread */ - const char *p; /* current position in buffer */ - lua_Reader reader; /* reader function */ - void* data; /* additional data */ - lua_State *L; /* Lua state (for reader) */ -}; - - -LUAI_FUNC int luaZ_fill (ZIO *z); - -#endif diff --git a/source/libs/lua52/lua52.test b/source/libs/lua52/lua52.test deleted file mode 100644 index 34d5c4bad..000000000 --- a/source/libs/lua52/lua52.test +++ /dev/null @@ -1,7 +0,0 @@ -#! /bin/sh - -# Copyright (C) 2014 Peter Breitenlohner <tex-live@tug.org> -# You may freely use, modify and/or distribute this file. - -./luatest || exit 1 - diff --git a/source/libs/lua52/luaerror.test b/source/libs/lua52/luaerror.test deleted file mode 100644 index 3992b1d4b..000000000 --- a/source/libs/lua52/luaerror.test +++ /dev/null @@ -1,15 +0,0 @@ -#! /bin/sh -vx -# Copyright 2017-2018 Karl Berry <tex-live@tug.org> -# Copyright 2014 Peter Breitenlohner <tex-live@tug.org> -# You may freely use, modify and/or distribute this file. - -LC_ALL=C; export LC_ALL; LANGUAGE=C; export LANGUAGE - -./luatry -e "error('test')" 2>error.tmp && exit 1 - -sed -e 's/lt-luatry/luatry/;s,^.*/luatry,./luatry,' error.tmp >error.out - -diff $srcdir/error.exp error.out || exit 1 - - - diff --git a/source/libs/lua52/luatest.c b/source/libs/lua52/luatest.c deleted file mode 100644 index ae2f3dcbe..000000000 --- a/source/libs/lua52/luatest.c +++ /dev/null @@ -1,15 +0,0 @@ -/* luatest.c: Basic test for liblua52 - * - * Copyright (C) 2014 Peter Breitenlohner <tex-live@tug.org> - * You may freely use, modify and/or distribute this file. - */ - -#include <stdio.h> -#include <lua.h> - -int main (int argc, char **argv) -{ - printf ("%s: Compiled with %s\n", - argv[0], LUA_VERSION); - return 0; -} diff --git a/source/libs/lua52/texlua52.pc.in b/source/libs/lua52/texlua52.pc.in deleted file mode 100644 index 2e91e4f36..000000000 --- a/source/libs/lua52/texlua52.pc.in +++ /dev/null @@ -1,12 +0,0 @@ -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Lua for LuaTeX -Description: Lua 5.2, modified for use with LuaTeX -Version: @LUA52VERSION@ -Libs: -L${libdir} -ltexlua52 -Libs.private: @LIBS@ -Cflags: -I${includedir}/texlua52 - diff --git a/source/libs/lua52/version.ac b/source/libs/lua52/version.ac deleted file mode 100644 index 6909c27af..000000000 --- a/source/libs/lua52/version.ac +++ /dev/null @@ -1,11 +0,0 @@ -dnl -dnl Copyright (C) 2013-2015 Peter Breitenlohner <tex-live@tug.org> -dnl -dnl This file is free software; the copyright holder -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. -dnl -dnl -------------------------------------------------------- -dnl -dnl m4-include this file to define the current lua52 version -m4_define([lua52_version], [5.2.4]) diff --git a/source/libs/lua53/configure b/source/libs/lua53/configure index 587651654..f9bdca4da 100755 --- a/source/libs/lua53/configure +++ b/source/libs/lua53/configure @@ -3876,6 +3876,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember lua53 () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -13321,9 +13322,9 @@ _ACEOF case $host:$ac_cv_sizeof_void_p in #( *-*-mingw*:4) : - kpse_dll_name=texlua53 ;; #( + kpse_dll_name=texlua ;; #( *-*-mingw*:8) : - kpse_dll_name=texlua53 ;; #( + kpse_dll_name=texlua ;; #( *-*-cygwin:4) : kpse_dll_name= ;; #( *-*-cygwin:8) : diff --git a/source/libs/lua53/configure.ac b/source/libs/lua53/configure.ac index a95651ea4..b5f9f0532 100644 --- a/source/libs/lua53/configure.ac +++ b/source/libs/lua53/configure.ac @@ -24,7 +24,7 @@ KPSE_LT_VERSION([lua53]) LT_INIT([win32-dll]) -KPSE_DLL_NAME([texlua53], [texlua53]) +KPSE_DLL_NAME([texlua], [texlua]) AC_CONFIG_HEADERS([config.h])[]dnl unused, to avoid zillions of -D's on command line diff --git a/source/libs/luajit/LuaJIT-src/src/lj_alloc.c b/source/libs/luajit/LuaJIT-src/src/lj_alloc.c index 95d15d046..e482a8346 100644 --- a/source/libs/luajit/LuaJIT-src/src/lj_alloc.c +++ b/source/libs/luajit/LuaJIT-src/src/lj_alloc.c @@ -343,7 +343,7 @@ static void *CALL_MMAP(size_t size) } #endif -#if (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && !LJ_TARGET_PS4 +#if ((defined(__FreeBSD__) && __FreeBSD__ < 10) || defined(__FreeBSD_kernel__)) && !LJ_TARGET_PS4 #include <sys/resource.h> diff --git a/source/libs/luajit/TLpatches/patch-13 b/source/libs/luajit/TLpatches/patch-13 new file mode 100644 index 000000000..a4aaeedbe --- /dev/null +++ b/source/libs/luajit/TLpatches/patch-13 @@ -0,0 +1,13 @@ +diff -bur lj_alloc.c.orig lj_alloc.c +--- lj_alloc.c.orig 2018-10-27 20:24:05.499136144 +0200 ++++ lj_alloc.c 2018-10-27 20:24:28.790707009 +0200 +@@ -343,7 +343,7 @@ + } + #endif + +-#if (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && !LJ_TARGET_PS4 ++#if ((defined(__FreeBSD__) && __FreeBSD__ < 10) || defined(__FreeBSD_kernel__)) && !LJ_TARGET_PS4 + + #include <sys/resource.h> + + diff --git a/source/libs/luajit/configure b/source/libs/luajit/configure index 62e0e4524..1c0ad48d9 100755 --- a/source/libs/luajit/configure +++ b/source/libs/luajit/configure @@ -3943,6 +3943,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember luajit () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -13810,7 +13811,6 @@ if test "$ac_res" != no; then : fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5 $as_echo_n "checking for library containing dlopen... " >&6; } if ${ac_cv_search_dlopen+:} false; then : diff --git a/source/libs/luajit/configure.ac b/source/libs/luajit/configure.ac index 1eed7f255..f3e20d481 100644 --- a/source/libs/luajit/configure.ac +++ b/source/libs/luajit/configure.ac @@ -34,7 +34,6 @@ AC_CHECK_SIZEOF([void *]) ac_configure_args="$ac_configure_args HOST_PTR_SIZE='$ac_cv_sizeof_void_p'" AC_SEARCH_LIBS([pow], [m]) - AC_SEARCH_LIBS([dlopen], [dl]) KPSE_LUAJIT_DEFINES diff --git a/source/libs/luajit/native/configure b/source/libs/luajit/native/configure index 6668bba1a..7294da4c7 100755 --- a/source/libs/luajit/native/configure +++ b/source/libs/luajit/native/configure @@ -3747,6 +3747,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember luajit native () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -5141,8 +5142,11 @@ _ACEOF if test "x$ac_cv_sizeof_void_p" != "x$HOST_PTR_SIZE"; then : HOST_PTR_BITS=`expr 8 \* $HOST_PTR_SIZE` -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: pointer size mismatch in cross-build; use a ${HOST_PTR_BITS}bit compiler BULDCC." >&5 -$as_echo "$as_me: WARNING: pointer size mismatch in cross-build; use a ${HOST_PTR_BITS}bit compiler BULDCC." >&2;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: pointer size mismatch in cross-build; use a ${HOST_PTR_BITS}bit compiler LUAJITCROSSCOMPILER." >&5 +$as_echo "$as_me: WARNING: pointer size mismatch in cross-build; use a ${HOST_PTR_BITS}bit compiler LUAJITCROSSCOMPILER." >&2;} +if test "x$LUAJITCROSSCOMPILER" != x""; then : + CC=$LUAJITCROSSCOMPILER +fi case $HOST_PTR_BITS in #( 32|64) : CC="$CC -m$HOST_PTR_BITS"; { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: trying: $CC" >&5 diff --git a/source/libs/luajit/native/configure.ac b/source/libs/luajit/native/configure.ac index ebb6d324d..4d7940412 100644 --- a/source/libs/luajit/native/configure.ac +++ b/source/libs/luajit/native/configure.ac @@ -21,7 +21,8 @@ AC_PROG_LN_S AC_CHECK_SIZEOF([void *]) AS_IF([test "x$ac_cv_sizeof_void_p" != "x$HOST_PTR_SIZE"], [dnl HOST_PTR_BITS=`expr 8 \* $HOST_PTR_SIZE` -AC_MSG_WARN([pointer size mismatch in cross-build; use a ${HOST_PTR_BITS}bit compiler BULDCC.]) +AC_MSG_WARN([pointer size mismatch in cross-build; use a ${HOST_PTR_BITS}bit compiler LUAJITCROSSCOMPILER.]) +AS_IF([test "x$LUAJITCROSSCOMPILER" != x""],[CC=$LUAJITCROSSCOMPILER], []) AS_CASE([$HOST_PTR_BITS], [32|64], [CC="$CC -m$HOST_PTR_BITS"; AC_MSG_WARN([trying: $CC])])]) diff --git a/source/libs/zlib/configure b/source/libs/zlib/configure index 40ffe82aa..e40b8d0ea 100755 --- a/source/libs/zlib/configure +++ b/source/libs/zlib/configure @@ -3646,6 +3646,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember zlib () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -4700,7 +4701,7 @@ $as_echo "no, using $LN_S" >&6; } fi -echo 'dbg:_KPSE_COMPILER_VISIBILITY called.' >&5 +echo 'tldbg:KPSE_COMPILER_VISIBILITY called.' >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking CFLAGS for C to hide external symbols" >&5 $as_echo_n "checking CFLAGS for C to hide external symbols... " >&6; } if ${kpse_cv_visibility_cflags+:} false; then : diff --git a/source/libs/zziplib/configure b/source/libs/zziplib/configure index 511990a70..266754948 100755 --- a/source/libs/zziplib/configure +++ b/source/libs/zziplib/configure @@ -3978,6 +3978,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember zziplib () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -5105,7 +5106,7 @@ $as_echo "no, using $LN_S" >&6; } fi -echo 'dbg:_KPSE_COMPILER_VISIBILITY called.' >&5 +echo 'tldbg:KPSE_COMPILER_VISIBILITY called.' >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking CFLAGS for C to hide external symbols" >&5 $as_echo_n "checking CFLAGS for C to hide external symbols... " >&6; } if ${kpse_cv_visibility_cflags+:} false; then : @@ -6684,11 +6685,13 @@ done kpse_save_CPPFLAGS=$CPPFLAGS kpse_save_LIBS=$LIBS -## _KPSE_INIT: Initialize TL infrastructure +##tldbg _KPSE_INIT: Initialize TL infrastructure. kpse_BLD=`(cd "./../../." && pwd)` kpse_SRC=`(cd "$srcdir/../../." && pwd)` -## _KPSE_LIB_FLAGS: Setup zlib (-lz) flags +##tldbg _KPSE_LIB_FLAGS: Setup zlib (-lz) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=zlib, libname=z, options=, tlincl=-IBLD/libs/zlib/include, tllib=BLD/libs/zlib/libz.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/zlib/include/zconf.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: zlib (z) . # Check whether --with-system-zlib was given. if test "${with_system_zlib+set}" = set; then : @@ -6705,7 +6708,8 @@ if test "${with_zlib_libdir+set}" = set; then : withval=$with_zlib_libdir; fi if test "x$with_system_zlib" = xyes; then - if test "x$with_zlib_includes" != x && test "x$with_zlib_includes" != xyes; then + ##tldbg _KPSE_LIB_FLAGS_SYSTEM: zlib (z). +if test "x$with_zlib_includes" != x && test "x$with_zlib_includes" != xyes; then ZLIB_INCLUDES="-I$with_zlib_includes" fi ZLIB_LIBS="-lz" diff --git a/source/m4/ChangeLog b/source/m4/ChangeLog index 3879271b2..957005d80 100644 --- a/source/m4/ChangeLog +++ b/source/m4/ChangeLog @@ -1,3 +1,15 @@ +2018-12-24 Karl Berry <karl@freefriends.org> + + * kpse-common.m4, + * kpse-pkgs.m4, + * kpse-setup.m4, + * kpse-visibility.m4: consistently use tldbg in tracing messages, + both in the configure scripts and the config.log transcript. + * kpse-icu-flags.m4 (_KPSE_ICU_FLAGS): special case to include + -lpthread when $build_os is openbsd. Reported by Mojca and Nelson + and others, e.g., + https://tug.org/pipermail/tlbuild/2017q2/003799.html + 2018-08-27 Karl Berry <karl@freefriends.org> * kpse-potrace-flags.m4: remove file, again bundled with dvisvgm. diff --git a/source/m4/kpse-common.m4 b/source/m4/kpse-common.m4 index c1f193d85..05aed4437 100644 --- a/source/m4/kpse-common.m4 +++ b/source/m4/kpse-common.m4 @@ -1,6 +1,7 @@ +# $Id: kpse-common.m4 49495 2018-12-24 23:17:30Z karl $ # Public macros for the TeX Live (TL) tree. -# Copyright (C) 1995-2009 Karl Berry <tex-live@tug.org> -# Copyright (C) 2009-2015 Peter Breitenlohner <tex-live@tug.org> +# Copyright 1995-2009, 2018 Karl Berry <tex-live@tug.org> +# Copyright 2009-2015 Peter Breitenlohner <tex-live@tug.org> # # This file is free software; the copyright holders # give unlimited permission to copy and/or distribute it, @@ -16,7 +17,7 @@ AC_DEFUN([KPSE_LIBS_PREPARE], []) # Initialize infrastructure for libraries and programs in the TL tree. # If in the TL tree, define kpse_TL as relative path to the TL root. AC_DEFUN([_KPSE_INIT], -[## $0: Initialize TL infrastructure +[##tldbg $0: Initialize TL infrastructure. m4_syscmd([test -f ../../texk/kpathsea/doc/kpathsea.texi])[]dnl m4_if(m4_sysval, [0], [m4_define([kpse_TL], [../../])])[]dnl m4_ifdef([kpse_TL], @@ -34,7 +35,7 @@ AC_DEFUN([KPSE_INIT], # _KPSE_USE_LIBTOOL() # ------------------- AC_DEFUN([_KPSE_USE_LIBTOOL], -[## $0: Generate a libtool script for use in configure tests +[##tldbg $0: Generate a libtool script for use in configure tests. AC_PROVIDE_IFELSE([LT_INIT], , [m4_fatal([$0: requires libtool])])[]dnl LT_OUTPUT @@ -79,7 +80,8 @@ AC_LANG(_AC_LANG)[]dnl # the TL tree). AC_DEFUN([_KPSE_LIB_FLAGS], [AC_REQUIRE([_KPSE_INIT])[]dnl -## $0: Setup $1 (-l$2) flags +##tldbg $0: Setup $1 (-l$2) flags. +echo 'tldbg:[$0] called: libdir=[$1], libname=[$2], options=[$3], tlincl=[$4], tllib=[$5], tlextra=[$6], rebuildsrcdeps=[$7], rebuildblddeps=[$8].' >&AS_MESSAGE_LOG_FD m4_ifdef([kpse_TL], [_KPSE_LIB_FLAGS_TL($@)], [_KPSE_LIB_FLAGS_STANDALONE($@)])[]dnl @@ -106,7 +108,8 @@ AC_DEFUN([_KPSE_TEXLIB_FLAGS], # -------------------------------------------------- # Internal subroutine for use of _KPSE_LIB_FLAGS inside the TL tree. m4_define([_KPSE_LIB_FLAGS_TL], -[m4_if(m4_index([ $3 ], [ lt ]), [-1], , +[##tldbg $0: $1 ($2) $3. +m4_if(m4_index([ $3 ], [ lt ]), [-1], , [AC_REQUIRE([_KPSE_USE_LIBTOOL])])[]dnl m4_if m4_if(m4_index([ $3 ], [ tree ]), [-1], [KPSE_]AS_TR_CPP([$1])[_OPTIONS([with-system])[]dnl @@ -140,7 +143,8 @@ m4_if(m4_index([ $3 ], [ tree ]), [-1], # ---------------------------------------------------- # Internal subroutine for standalone use of _KPSE_LIB_FLAGS. m4_define([_KPSE_LIB_FLAGS_STANDALONE], -[m4_if(m4_index([ $3 ], [ tree ]), [-1], +[##tldbg $0: $1 ($2) $3. +m4_if(m4_index([ $3 ], [ tree ]), [-1], [KPSE_]AS_TR_CPP([$1])[_OPTIONS([])]dnl [KPSE_]AS_TR_CPP([$1])[_SYSTEM_FLAGS], [m4_fatal([$0: not in TL tree])])[]dnl m4_if @@ -167,7 +171,8 @@ AC_ARG_WITH([$1-libdir], # --------------------------------------- # Internal subroutine: default flags for system library. m4_define([_KPSE_LIB_FLAGS_SYSTEM], -[if test "x$with_[]AS_TR_SH($1)_includes" != x && test "x$with_[]AS_TR_SH($1)_includes" != xyes; then +[##tldbg $0: $1 ($2). +if test "x$with_[]AS_TR_SH($1)_includes" != x && test "x$with_[]AS_TR_SH($1)_includes" != xyes; then AS_TR_CPP($1)_INCLUDES="-I$with_[]AS_TR_SH($1)_includes" fi AS_TR_CPP($1)_LIBS="-l$2" @@ -207,7 +212,8 @@ eval LIBS=\"$[]AS_TR_CPP($1)_LIBS \$LIBS\" # Common Autoconf code for all libraries and programs. # # Initialization of Automake, compiler warnings, etc. -AC_DEFUN([KPSE_BASIC], [dnl Remember PACKAGE-NAME as Kpse_Package (for future messages) +AC_DEFUN([KPSE_BASIC], [dnl +##tldbg $0: Remember $1 ($2) as Kpse_Package (for future messages). m4_define([Kpse_Package], [$1]) dnl AM_INIT_AUTOMAKE([foreign silent-rules subdir-objects]m4_ifval([$2], [ $2])) @@ -234,6 +240,7 @@ KPSE_COMPILER_WARNINGS # Originally written by Karl Berry as texk/kpathsea/common.ac. # AC_DEFUN([KPSE_COMMON], [dnl +##tldbg $0: $1 ($2). KPSE_BASIC($@) dnl LT_PREREQ([2.2.6]) diff --git a/source/m4/kpse-icu-flags.m4 b/source/m4/kpse-icu-flags.m4 index 8a1fbea97..c7c02676a 100644 --- a/source/m4/kpse-icu-flags.m4 +++ b/source/m4/kpse-icu-flags.m4 @@ -1,22 +1,24 @@ -# $Id: kpse-icu-flags.m4 46014 2017-12-07 23:42:12Z karl $ -# ICU support for the TeX Live (TL) tree. -# Copyright 2017 Karl Berry <tex-live@tug.org> +# $Id: kpse-icu-flags.m4 49495 2018-12-24 23:17:30Z karl $ +# ICU support in the TeX Live (TL) tree. +# Copyright 2017-2018 Karl Berry <tex-live@tug.org> # Copyright 2009-2015 Peter Breitenlohner <tex-live@tug.org> # # This file is free software; the copyright holder # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# KPSE_ICU_FLAGS([MORE-ICU-LIBS], [ICU_CONFIG_ARGS]) +# KPSE_ICU_FLAGS([MORE-ICU-LIBS], [ICU-CONFIG-ARGS]) # -------------------------------------------------- # Provide the configure option '--with-system-icu' (if in the TL tree). # -# ICU_CONFIG_ARGS: icu-config arguments for additional icu libraries. +# MORE-ICU-LIBS: icu libraries from TL tree in addition to icuuc and icudata. +# ICU-CONFIG-ARGS: icu-config arguments for additional icu libraries. # # Set the make variables ICU_INCLUDES and ICU_LIBS to the CPPFLAGS and # LIBS required for the icu libraries in libs/icu/ of the TL tree. AC_DEFUN([KPSE_ICU_FLAGS], -[m4_pushdef([kpse_icu_config_args], [$2])[]dnl +[echo 'tldbg:[$0] called: more-icu-libs=[$1], icu-config-args=[$2].' >&AS_MESSAGE_LOG_FD +m4_pushdef([kpse_icu_config_args], [$2])[]dnl _KPSE_ICU_FLAGS([icuxxx], [], [$1])[]dnl m4_popdef([kpse_icu_config_args])[]dnl ]) # KPSE_ICU_FLAGS @@ -26,8 +28,7 @@ m4_popdef([kpse_icu_config_args])[]dnl # Internal subroutine. # # LIBNAME and OPTIONS as for _KPSE_LIB_FLAGS(). -# MORE-ICU-LIBS: icu libraries from the TL tree in addition to icuuc and -# icudata. +# MORE-ICU-LIBS: as above. m4_define([_KPSE_ICU_FLAGS], [dnl _KPSE_LIB_FLAGS([icu], [$1], [$2], [-DU_STATIC_IMPLEMENTATION -IBLD/libs/icu/include], @@ -36,6 +37,12 @@ _KPSE_LIB_FLAGS([icu], [$1], [$2], [BLD/libs/icu/icu-build/lib/libicu\1.a]), [], [], [${top_builddir}/../../libs/icu/include/unicode/uversion.h])[]dnl +# checking for openbsd to add -lpthread for icu. +case $build_os in +openbsd*) + eval AS_TR_CPP($1)_LIBS=\"$[]AS_TR_CPP($1)_LIBS -lpthread\" + ;; +esac ]) # _KPSE_ICU_FLAGS # KPSE_ICU_OPTIONS([WITH-SYSTEM]) @@ -51,7 +58,7 @@ m4_ifval([$1], # --------------------- AC_DEFUN([KPSE_ICU_SYSTEM_FLAGS], [dnl AC_REQUIRE([AC_CANONICAL_HOST])[]dnl -echo 'dbg:[_KPSE_ICU_SYSTEM_FLAGS] called.' >&AS_MESSAGE_LOG_FD +echo 'tldbg:[$0] called.' >&AS_MESSAGE_LOG_FD AC_CHECK_TOOL([ICU_CONFIG], [icu-config], [false])[]dnl AC_CHECK_TOOL([PKG_CONFIG], [pkg-config], [false])[]dnl if $ICU_CONFIG --version >/dev/null 2>&1; then diff --git a/source/m4/kpse-pkgs.m4 b/source/m4/kpse-pkgs.m4 index 70c77478c..50df0e583 100644 --- a/source/m4/kpse-pkgs.m4 +++ b/source/m4/kpse-pkgs.m4 @@ -1,4 +1,4 @@ -# $Id: kpse-pkgs.m4 48527 2018-08-31 23:11:41Z karl $ +# $Id: kpse-pkgs.m4 49495 2018-12-24 23:17:30Z karl $ # Private Autoconf macros for the TeX Live (TL) tree. # Copyright 2016-2018 Karl Berry <tex-live@tug.org> # Copyright 2009-2015 Peter Breitenlohner <tex-live@tug.org> @@ -7,9 +7,9 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -## ------------------------------ ## -## Define lists of sub-packages. ## -## ------------------------------ ## +# ------------------------------ # +# Define lists of sub-packages. # +# ------------------------------ # # Hopefully these lists are defined here and nowhere else. # Note: directories in these lists need not exist. @@ -112,6 +112,7 @@ dtl dvi2tty dvidvi dviljk +dviout-util dvipdfm-x dvipng dvipos @@ -135,11 +136,9 @@ xdvik texlive ])]) # KPSE_TEXK_PKGS - - -## ------------------------------- ## -## Loop over one of these lists. ## -## ------------------------------- ## +# ------------------------------- # +# Loop over one of these lists. # +# ------------------------------- # # KPSE_FOR_PKGS(LIST, ACTION) # --------------------------- diff --git a/source/m4/kpse-setup.m4 b/source/m4/kpse-setup.m4 index 020adfea8..bb174a110 100644 --- a/source/m4/kpse-setup.m4 +++ b/source/m4/kpse-setup.m4 @@ -1,6 +1,6 @@ -# $Id: kpse-setup.m4 45671 2017-11-02 18:12:59Z karl $ +# $Id: kpse-setup.m4 49495 2018-12-24 23:17:30Z karl $ # Private macros for the TeX Live (TL) tree. -# Copyright 2017 Karl Berry <tex-live@tug.org> +# Copyright 2017-2018 Karl Berry <tex-live@tug.org> # Copyright 2009-2015 Peter Breitenlohner <tex-live@tug.org> # # This file is free software; the copyright holder @@ -275,7 +275,7 @@ m4_popdef([Kpse_add])[]dnl # m4_define([_KPSE_RECURSE], [dnl AC_MSG_CHECKING([for $2 to build]) -echo 'dbg:[_KPSE_RECURSE] called: list=$1, text=$2, cond=$3, prefix=$4.' >&AS_MESSAGE_LOG_FD +echo 'tldbg:[$0] called: list=[$1], text=[$2], cond=[$3], prefix=[$4].' >&AS_MESSAGE_LOG_FD MAKE_SUBDIRS= CONF_SUBDIRS= KPSE_FOR_PKGS([$1], [dnl diff --git a/source/m4/kpse-visibility.m4 b/source/m4/kpse-visibility.m4 index c2761156f..c07938ac2 100644 --- a/source/m4/kpse-visibility.m4 +++ b/source/m4/kpse-visibility.m4 @@ -1,6 +1,6 @@ -# $Id: kpse-visibility.m4 45970 2017-12-02 23:50:45Z karl $ +# $Id: kpse-visibility.m4 49495 2018-12-24 23:17:30Z karl $ # Public macros for the TeX Live (TL) tree. -# Copyright 2017 Karl Berry <tex-live@tug.org> +# Copyright 2017-2018 Karl Berry <tex-live@tug.org> # Copyright 2013-2014 Peter Breitenlohner <tex-live@tug.org> # # This file is free software; the copyright holder @@ -15,7 +15,7 @@ # them a Makefile.am must use them, e.g., in AM_CFLAGS or AM_CXXFLAGS. AC_DEFUN([KPSE_COMPILER_VISIBILITY], [dnl arrange that AC_PROG_CC uses _KPSE_VISIBILITY_CFLAGS etc. -echo 'dbg:[_KPSE_COMPILER_VISIBILITY] called.' >&AS_MESSAGE_LOG_FD +echo 'tldbg:[$0] called.' >&AS_MESSAGE_LOG_FD AC_PROVIDE_IFELSE([AC_PROG_CC], [_KPSE_VISIBILITY_CFLAGS], [m4_define([AC_PROG_CC], diff --git a/source/texk/Makefile.in b/source/texk/Makefile.in index 19325d2a8..72a8e2bb1 100644 --- a/source/texk/Makefile.in +++ b/source/texk/Makefile.in @@ -111,7 +111,6 @@ am__aclocal_m4_deps = $(top_srcdir)/../m4/kpse-common.m4 \ $(top_srcdir)/../libs/zziplib/ac/withenable.ac \ $(top_srcdir)/../libs/libpng/ac/withenable.ac \ $(top_srcdir)/../libs/luajit/ac/withenable.ac \ - $(top_srcdir)/../libs/lua52/ac/withenable.ac \ $(top_srcdir)/../libs/lua53/ac/withenable.ac \ $(top_srcdir)/../libs/zlib/ac/withenable.ac \ $(top_srcdir)/../texk/kpathsea/ac/withenable.ac \ diff --git a/source/texk/README b/source/texk/README index 62ebc875d..39308215f 100644 --- a/source/texk/README +++ b/source/texk/README @@ -1,4 +1,4 @@ -$Id: README 48410 2018-08-16 00:59:29Z hironobu $ +$Id: README 49020 2018-10-29 22:11:07Z karl $ Copyright 2006-2018 TeX Users Group. You may freely use, modify and/or distribute this file. @@ -47,6 +47,10 @@ dvidvi - maintained here dviljk - maintained here, by Joachim Schrod +dviout-util - by Japanese TeX Development Community (Hironobu, Takuji et al.) + https://github.com/texjporg/tex-jp-build + but also: https://github.com/aminophen/dviout-util + dvipdfm-x - maintained here, by us, contains dvipdfmx xdvipdfmx @@ -60,7 +64,7 @@ dvipos - maintained here, by us dvipsk - maintained here, by us -dvisvgm 2.4.2 - checked 19jul18 +dvisvgm 2.6.1 - checked 29oct18 https://dvisvgm.de/Downloads/ gregorio 5.1.1 - checked 25mar18 diff --git a/source/texk/configure b/source/texk/configure index bf3706ce2..c3320d8bc 100755 --- a/source/texk/configure +++ b/source/texk/configure @@ -3686,9 +3686,6 @@ test "x$need_libpng" = xyes && { ## libs/luajit/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/luajit/ ## configure options and TL libraries required for luajit -## libs/lua52/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua52/ -## configure options and TL libraries required for lua52 - ## libs/lua53/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua53/ ## configure options and TL libraries required for lua53 @@ -4317,6 +4314,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember texk () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -4673,7 +4671,7 @@ WARNING_CFLAGS=$kpse_cv_warning_cflags { $as_echo "$as_me:${as_lineno-$LINENO}: checking for TeXk programs to build" >&5 $as_echo_n "checking for TeXk programs to build... " >&6; } -echo 'dbg:_KPSE_RECURSE called: list=texk, text=TeXk programs, cond=test "x$enable_Kpse_pkg" = xyes, prefix=.' >&5 +echo 'tldbg:_KPSE_RECURSE called: list=texk, text=TeXk programs, cond=test "x$enable_[]Kpse_pkg" = xyes, prefix=.' >&5 MAKE_SUBDIRS= CONF_SUBDIRS= if test -x $srcdir/web2c/configure; then diff --git a/source/texk/kpathsea/ChangeLog b/source/texk/kpathsea/ChangeLog index 634132693..5d0e75517 100644 --- a/source/texk/kpathsea/ChangeLog +++ b/source/texk/kpathsea/ChangeLog @@ -1,3 +1,80 @@ +2018-12-30 Karl Berry <karl@tug.org> + + * texmf.cnf (shell_escape_commands): make that r-mpost. + +2018-12-24 Andreas Scherer <https://ascherer.github.io> + + * kpsewhich.c: Add missing format placeholder. + +2018-12-21 Karl Berry <karl@freefriends.org> + + * texmf.cnf (shell_escape_commands): add rmpost. + +2018-12-17 Karl Berry <karl@freefriends.org> + + * kpsewhich.c (--var-brace-value, var_to_brace_value): new option + and corresponding option. + (main): new case for it. For --var-value, go back to just variable + (kpathsea_var_value) expansion. + * doc/kpathsea.texi (Auxiliary tasks): document the new option, + try to explain the difference. + Follow-up report from jbglaw, + https://github.com/TeX-Live/texlive-source/issues/3. + +2018-12-14 Karl Berry <karl@tug.org> + + * c-pathch.h (IS_KPSE_SEP): check for both : and ; only on Unix. + On Windows, : is the c: drive separator and must not ever be + a path separator. + + * texmf.cnf (TEXMFDOTDIR): new variable, used instead of + literal "." in all search paths, so that it can be redefined as + ".//". Suggestion from Linas Stonys, tex-k 4 Dec 2018 10:09:35. + +2018-12-13 Karl Berry <karl@freefriends.org> + + * c-pathch.h (IS_KPSE_SEP): new macro to check for either : or ; + regardless of the current system. + * path-elt.c (element): use it when extracting the path elements, + so that we'll get ~ expansion on Unix in, e.g., + env FOO='/;~' ./kpsewhich --expand-braces='$FOO' + * kpsewhich.c (main): call kpathsea_brace_expand on the result + from kpathsea_var_value, so that we'll get ~ expansion in, e.g., + env FOO='/:~' ./kpsewhich --var-value=FOO + Original report from e-kwsm (E Kawashima), + https://github.com/TeX-Live/texlive-source/issues/3 + + * NEWS, + * doc/kpathsea.texi (Auxiliary tasks): document that -var-value + now does brace expansion. + +2018-12-12 Karl Berry <karl@freefriends.org> + + * expand.h, + * pathsearch.h, + * cnf.c: doc fixes. + + * kpsewhich.c (main): show path when --show-path can't run. + +2018-12-11 Karl Berry <karl@freefriends.org> + + * kpsewhich.c (main): formatting. + +2018-12-04 Karl Berry <karl@freefriends.org> + + * kpsewhich.c (main) [WIN32]: #define puts kpathsea_win32_puts + once, instead of many #ifdefs throughout function. + +2018-11-23 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * elt-dirs.c, knj.c, progname.c: Support non-ascii values + for variables in the case of + command_line_encoding = utf-8 (w32 only). + +2018-11-12 Andreas Scherer <https://ascherer.github.io> + + * tex-make.c (maketex): check return value from dup(2). + 2018-07-02 Karl Berry <karl@freefriends.org> * kpsewhich.c (lookup): warn that --all is ignored with bitmap fonts. diff --git a/source/texk/kpathsea/NEWS b/source/texk/kpathsea/NEWS index 3be0479b0..68dc912e1 100644 --- a/source/texk/kpathsea/NEWS +++ b/source/texk/kpathsea/NEWS @@ -1,6 +1,13 @@ -$Id: NEWS 47457 2018-04-13 22:20:58Z karl $ +$Id: NEWS 49400 2018-12-13 17:23:10Z karl $ This file records noteworthy changes. (Public domain.) +6.3.1 (for TeX Live 2019) +* kpsewhich --var-value does brace expansion as well as variable and + tilde expansion. +* The kpathsea_path_search() and related functions always recognize either + common path separator (: or ;) when splitting paths into elements. + (Before, there were some unusual contexts where this did not happen.) + 6.3.0 (for TeX Live 2018, 14 April 2018) * New configuration value texmf_casefold_search to fall back to case-insensitive search in non-system directories if there is no exact diff --git a/source/texk/kpathsea/c-pathch.h b/source/texk/kpathsea/c-pathch.h index 76352f82a..44b101035 100644 --- a/source/texk/kpathsea/c-pathch.h +++ b/source/texk/kpathsea/c-pathch.h @@ -1,7 +1,7 @@ /* c-pathch.h: define the characters which separate components of filenames and environment variable paths. - Copyright 1992, 1993, 1995, 1997, 2008 Karl Berry. + Copyright 1992, 1993, 1995, 1997, 2008, 2018 Karl Berry. Copyright 1997, 1999, 2001, 2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -90,6 +90,10 @@ #else # define ENV_SEP ':' # define ENV_SEP_STRING ":" +/* Because paths in Kpathsea cnf files allow use of either ; or : separators + regardless of the current system, on Unix we sometimes need to check + for either . */ +# define IS_KPSE_SEP(ch) ((ch) == ':' || (ch) == ';') #endif #endif /* not ENV_SEP */ @@ -97,4 +101,11 @@ #define IS_ENV_SEP(ch) ((ch) == ENV_SEP) #endif +#ifndef IS_KPSE_SEP +/* But for Windows, we do not want to consider : as a path separator, + ever, because it is the drive separator (as in c:\tex). So just + check for the regular separator (;). */ +#define IS_KPSE_SEP(ch) (IS_ENV_SEP (ch)) +#endif + #endif /* not C_PATHCH_H */ diff --git a/source/texk/kpathsea/cnf.c b/source/texk/kpathsea/cnf.c index b8d4a9c69..60a5df93e 100644 --- a/source/texk/kpathsea/cnf.c +++ b/source/texk/kpathsea/cnf.c @@ -1,7 +1,7 @@ /* cnf.c: read config files. Copyright 1994, 1995, 1996, 1997, 2008, 2009, 2011, 2012, 2016, - 2017 Karl Berry. + 2017, 2018 Karl Berry. Copyright 1997-2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -140,14 +140,14 @@ do_line (kpathsea kpse, string line) value[len] = 0; /* Suppose we want to write a single texmf.cnf that can be used under - both NT and Unix. This is feasible except for the path separators - : on Unix, ; on NT. We can't switch NT to allowing :'s, since : - is the drive separator. So we switch Unix to allowing ;'s. On the - other hand, we don't want to change IS_ENV_SEP and all the rest. - - So, simply translate all ;'s in the path - values to :'s if we are a Unix binary. (Fortunately we don't use ; - in other kinds of texmf.cnf values.) */ + both Windows and Unix. This is feasible except for the path + separators: : on Unix, ; on Windows. We can't switch Windows to + allowing :, since : is the drive separator. So we switch Unix to + allowing ;. On the other hand, we don't want to change IS_ENV_SEP + and all the rest. + + So, translate all ;'s in the path values to :'s if we'd normally + use :. (Fortunately we don't use ; as a normal character in values.) */ if (IS_ENV_SEP(':')) { string loc; diff --git a/source/texk/kpathsea/configure b/source/texk/kpathsea/configure index 9b88c3db5..6537f0559 100755 --- a/source/texk/kpathsea/configure +++ b/source/texk/kpathsea/configure @@ -8048,6 +8048,8 @@ fi done +##tldbg KPSE_COMMON: kpathsea (). +##tldbg KPSE_BASIC: Remember kpathsea () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output diff --git a/source/texk/kpathsea/doc/kpathsea.info b/source/texk/kpathsea/doc/kpathsea.info index 547ea1a51..b6438df80 100644 --- a/source/texk/kpathsea/doc/kpathsea.info +++ b/source/texk/kpathsea/doc/kpathsea.info @@ -37,7 +37,7 @@ Kpathsea library **************** This manual documents the Kpathsea library for path searching. It -corresponds to version 6.3.0, released in July 2018. +corresponds to version 6.3.0, released in December 2018. * Menu: @@ -62,7 +62,7 @@ File: kpathsea.info, Node: Introduction, Next: unixtex.ftp, Prev: Top, Up: T ************** This manual corresponds to version 6.3.0 of the Kpathsea library, -released in July 2018. +released in December 2018. The library's fundamental purpose is to return a filename from a list of directories specified by the user, similar to what shells do when @@ -725,7 +725,7 @@ File: kpathsea.info, Node: Brace expansion, Next: KPSE_DOT expansion, Prev: T foo/{1,2}/baz expands to 'foo/1/baz:foo/2/baz'. ':' is the path separator on the -current system; e.g., on a DOS system, it's ';'. +current system; e.g., on a Windows system, it's ';'. Braces can be nested; for example, 'x{A,B{1,2}}y' expands to 'xAy:xB1y:xB2y'. @@ -738,7 +738,7 @@ example, 'x{A,B}{1,2}y' expands to 'x{A,B}1y:x{A,B}2y', which expands to assigning a brace list to '$TEXMF', as mentioned in 'texmf.in'. You can also use the path separator instead of the comma. The last -example could have been written 'x{A:B}{1:2}y'. +example could have been written 'x{A:B}{1:2}y' (on Unix). Brace expansion is implemented in the source file 'kpathsea/expand.c'. @@ -1425,8 +1425,8 @@ Kpsewhich provides some features in addition to path lookup as such: Set debugging options to NUM. *Note Debugging::. '--expand-braces=STRING' - Output variable and brace expansion of STRING. *Note Path - expansion::. + Output variable, tilde, and brace expansion of STRING, which is + assumed to be a single path element. *Note Path expansion::. '--expand-path=STRING' Output the complete expansion of STRING, with each element @@ -1444,12 +1444,12 @@ Kpsewhich provides some features in addition to path lookup as such: => For one-shot uses of an arbitrary (not built in to Kpathsea) path, - see '--path' (*note Path searching options::) + see '--path' (*note Path searching options::). '--expand-var=STRING' - Output the variable and tilde expansion of STRING the 'mktex...' - scripts run 'kpsewhich --expand-var='$TEXMF'' to find the root of - the TeX system hierarchy. *Note Path expansion::. + Output the variable and tilde expansion of STRING. For example, + with the usual 'texmf.cnf', 'kpsewhich --expand-var='$TEXMF'' + returns the TeX system hierarchy root(s). *Note Path expansion::. '--help-formats' Output information about each supported format (*note Supported @@ -1469,11 +1469,33 @@ Kpsewhich provides some features in addition to path lookup as such: integer can be used, just as with '--format', described in the previous section. +'--var-brace-value=VARIABLE' + Like '--var-value' (next), but also expands '{...}' constructs. + (*note Brace expansion::). Thus, the value is assumed to possibly + be several path elements, and '~' is expanded at the beginning of + each. The path separator is changed to that of the current system + in the expansion. + + Example: 'FOO='.;~' kpsewhich --var-brace-value=FOO' outputs (on a + Unix-ish system) '.:/home/karl', supposing the latter is the + current user's home directory. Note that the ';' in the source + value, as commonly used in 'texmf.cnf', has changed to a ':', as + the normal path separator on the current system. (On a Windows-ish + system, the ';' would remain.) + '--var-value=VARIABLE' - Outputs the value of VARIABLE (a simple identifier like 'TEXMF', - with no '$' or other constructs), expanding '$' (*note Variable - expansion:: and '~' (*note Tilde expansion::) constructs, but not - performing other expansions. + Outputs the value of VARIABLE (a simple identifier like + 'TEXMFDIST', with no '$' or other constructs), expanding '$' (*note + Variable expansion::) and '~' (*note Tilde expansion::) constructs + in the value. '~' expansion happens at the beginning of the + overall value and at the beginning of a variable expansion, but not + arbitrarily within the string. Braces are not expanded. + + Example: '--var-value=texmf_casefold_search' outputs (if the + default is not changed) '1'. + + Example to contrast with '--var-brace-value': 'FOO='.;~' kpsewhich + --var-value=FOO' outputs '.;~', i.e., the same as the input value. File: kpathsea.info, Node: Standard options, Prev: Auxiliary tasks, Up: Invoking kpsewhich @@ -2911,9 +2933,6 @@ running a normal input file, the problem is usually a compiler bug passed, problems may lurk. Optimization occasionally causes trouble in programs other than TeX and Metafont themselves, too. - Insufficient swap space may also cause core dumps or other erratic -behavior. - For a workaround, if you enabled any optimization flags, it's best to omit optimization entirely. In any case, the way to find the facts is to run the program under the debugger and see where it's failing. @@ -2926,8 +2945,7 @@ also recommend reporting a bug to the GCC mailing list; see *note To report compiler bugs effectively requires perseverance and perspicacity: you must find the miscompiled line, and that usually involves delving backwards in time from the point of error, checking -through TeX's (or whatever program's) data structures. Things are not -helped by all-too-common bugs in the debugger itself. Good luck. +through TeX's (or whatever program's) data structures. Good luck. File: kpathsea.info, Node: Index, Prev: Reporting bugs, Up: Top @@ -2978,7 +2996,8 @@ Index * --show-path=NAME: Auxiliary tasks. (line 51) * --subdir=STRING: Path searching options. (line 164) -* --var-value=VARIABLE: Auxiliary tasks. (line 57) +* --var-brace-value=VARIABLE: Auxiliary tasks. (line 57) +* --var-value=VARIABLE: Auxiliary tasks. (line 71) * --version: Standard options. (line 11) * --with-mktextex-default: mktex configuration. (line 12) * --without-mktexfmt-default: mktex configuration. (line 12) @@ -3195,7 +3214,7 @@ Index * compiler bugs: TeX or Metafont failing. (line 6) * compiler bugs, finding: TeX or Metafont failing. - (line 24) + (line 21) * conditions for use: Introduction. (line 32) * config files: Config files. (line 6) * config files, for Kpathsea-using programs: Calling sequence. @@ -3360,7 +3379,7 @@ Index * glyphlist.txt: Specially-recognized files. (line 25) * GNU C compiler bugs: TeX or Metafont failing. - (line 19) + (line 16) * GNU General Public License: Introduction. (line 32) * group-writable directories: Security. (line 40) * GSFTOPK_DEBUG (128): Debugging. (line 88) @@ -3535,7 +3554,7 @@ Index * OPENTYPEFONTS: Supported file formats. (line 145) * optimization caveat: TeX or Metafont failing. - (line 15) + (line 12) * options for debugging: Debugging. (line 6) * OTPINPUTS: Supported file formats. (line 151) @@ -3669,7 +3688,7 @@ Index * symbolic links, and ls-R: ls-R. (line 38) * symlinks, resolving: Calling sequence. (line 31) * system C compiler bugs: TeX or Metafont failing. - (line 19) + (line 16) * system-dependent casefolding behavior: Casefolding rationale. (line 6) * T1FONTS: Supported file formats. @@ -3847,61 +3866,61 @@ Index Tag Table: Node: Top1480 -Node: Introduction2259 -Node: History4328 -Node: unixtex.ftp8924 -Node: Security10349 -Node: TeX directory structure12853 -Node: Path searching16901 -Node: Searching overview17628 -Node: Path sources21447 -Node: Config files22538 -Node: Path expansion26465 -Node: Default expansion27418 -Node: Variable expansion29488 -Node: Tilde expansion30889 -Node: Brace expansion31869 -Node: KPSE_DOT expansion32794 -Node: Subdirectory expansion33307 -Node: Casefolding search35661 -Node: Casefolding rationale36430 -Node: Casefolding examples37769 -Node: Filename database42819 -Node: ls-R43877 -Node: Filename aliases46772 -Node: Database format47950 -Node: Invoking kpsewhich48963 -Node: Path searching options49918 -Node: Specially-recognized files58437 -Node: Auxiliary tasks59792 -Node: Standard options62131 -Node: TeX support62487 -Node: Supported file formats63841 -Node: File lookup71506 -Node: Glyph lookup73255 -Node: Basic glyph lookup74379 -Node: Fontmap75259 -Node: Fallback font77788 -Node: Suppressing warnings78700 -Node: mktex scripts79827 -Node: mktex configuration81042 -Node: mktex script names86845 -Node: mktex script arguments88231 -Node: Programming89110 -Node: Programming overview89683 -Node: Calling sequence92544 -Node: Program-specific files99076 -Node: Programming with config files100099 -Node: Reporting bugs101411 -Node: Bug checklist102089 -Node: Mailing lists105561 -Node: Debugging106236 -Node: Logging111313 -Node: Common problems113180 -Node: Unable to find files113657 -Node: Slow path searching116067 -Node: Unable to generate fonts117442 -Node: TeX or Metafont failing119913 -Node: Index121266 +Node: Introduction2263 +Node: History4336 +Node: unixtex.ftp8932 +Node: Security10357 +Node: TeX directory structure12861 +Node: Path searching16909 +Node: Searching overview17636 +Node: Path sources21455 +Node: Config files22546 +Node: Path expansion26473 +Node: Default expansion27426 +Node: Variable expansion29496 +Node: Tilde expansion30897 +Node: Brace expansion31877 +Node: KPSE_DOT expansion32816 +Node: Subdirectory expansion33329 +Node: Casefolding search35683 +Node: Casefolding rationale36452 +Node: Casefolding examples37791 +Node: Filename database42841 +Node: ls-R43899 +Node: Filename aliases46794 +Node: Database format47972 +Node: Invoking kpsewhich48985 +Node: Path searching options49940 +Node: Specially-recognized files58459 +Node: Auxiliary tasks59814 +Node: Standard options63353 +Node: TeX support63709 +Node: Supported file formats65063 +Node: File lookup72728 +Node: Glyph lookup74477 +Node: Basic glyph lookup75601 +Node: Fontmap76481 +Node: Fallback font79010 +Node: Suppressing warnings79922 +Node: mktex scripts81049 +Node: mktex configuration82264 +Node: mktex script names88067 +Node: mktex script arguments89453 +Node: Programming90332 +Node: Programming overview90905 +Node: Calling sequence93766 +Node: Program-specific files100298 +Node: Programming with config files101321 +Node: Reporting bugs102633 +Node: Bug checklist103311 +Node: Mailing lists106783 +Node: Debugging107458 +Node: Logging112535 +Node: Common problems114402 +Node: Unable to find files114879 +Node: Slow path searching117289 +Node: Unable to generate fonts118664 +Node: TeX or Metafont failing121135 +Node: Index122337 End Tag Table diff --git a/source/texk/kpathsea/doc/kpathsea.texi b/source/texk/kpathsea/doc/kpathsea.texi index 999819a51..449bd0e74 100644 --- a/source/texk/kpathsea/doc/kpathsea.texi +++ b/source/texk/kpathsea/doc/kpathsea.texi @@ -3,7 +3,7 @@ @settitle Kpathsea: A library for path searching @set version 6.3.0 -@set month-year July 2018 +@set month-year December 2018 @copying This file documents the Kpathsea library for path searching. @@ -919,7 +919,7 @@ foo/@{1,2@}/baz @end example @noindent expands to @samp{foo/1/baz:foo/2/baz}. @samp{:} is the path -separator on the current system; e.g., on a DOS system, it's @samp{;}. +separator on the current system; e.g., on a Windows system, it's @samp{;}. Braces can be nested; for example, @samp{x@{A,B@{1,2@}@}y} expands to @samp{xAy:xB1y:xB2y}. @@ -934,7 +934,7 @@ assigning a brace list to @code{$TEXMF}, as mentioned in @file{texmf.in}. You can also use the path separator instead of the comma. The last -example could have been written @samp{x@{A:B@}@{1:2@}y}. +example could have been written @samp{x@{A:B@}@{1:2@}y} (on Unix). @flindex expand.c @@ -1769,8 +1769,8 @@ Set debugging options to @var{num}. @xref{Debugging}. @item --expand-braces=@var{string} @opindex --expand-braces=@var{string} -Output variable and brace expansion of @var{string}. @xref{Path -expansion}. +Output variable, tilde, and brace expansion of @var{string}, which is +assumed to be a single path element. @xref{Path expansion}. @item --expand-path=@var{string} @opindex --expand-path=@var{string} @@ -1791,14 +1791,14 @@ $ kpsewhich --expand-path '/nonesuch' @end example For one-shot uses of an arbitrary (not built in to Kpathsea) path, see -@samp{--path} (@pxref{Path searching options}) +@samp{--path} (@pxref{Path searching options}). @item --expand-var=@var{string} @opindex --expand-var=@var{string} -Output the variable and tilde expansion of @var{string} -the @samp{mktex@dots{}} scripts run @samp{kpsewhich ---expand-var='$TEXMF'} to find the root of the @TeX{} system -hierarchy. @xref{Path expansion}. +Output the variable and tilde expansion of @var{string}. For example, +with the usual @file{texmf.cnf}, @samp{kpsewhich +--expand-var='$TEXMF'} returns the @TeX{} system hierarchy root(s). +@xref{Path expansion}. @item --help-formats @opindex --help-formats @@ -1822,12 +1822,36 @@ Show the path that would be used for file lookups of file type or an integer can be used, just as with @samp{--format}, described in the previous section. +@item --var-brace-value=@var{variable} +@opindex --var-brace-value=@var{variable} +Like @samp{--var-value} (next), but also expands @samp{@{...@}} +constructs. (@pxref{Brace expansion}). Thus, the value is assumed to +possibly be several path elements, and @samp{~} is expanded at the +beginning of each. The path separator is changed to that of the +current system in the expansion. + +Example: @samp{FOO='.;~' kpsewhich --var-brace-value=FOO} outputs (on +a Unix-ish system) @samp{.:/home/karl}, supposing the latter is the +current user's home directory. Note that the @samp{;} in the source +value, as commonly used in @file{texmf.cnf}, has changed to a +@samp{:}, as the normal path separator on the current system. (On a +Windows-ish system, the @samp{;} would remain.) + @item --var-value=@var{variable} @opindex --var-value=@var{variable} Outputs the value of @var{variable} (a simple identifier like -@samp{TEXMF}, with no @samp{$} or other constructs), expanding -@samp{$} (@pxref{Variable expansion} and @samp{~} (@pxref{Tilde -expansion}) constructs, but not performing other expansions. +@samp{TEXMFDIST}, with no @samp{$} or other constructs), expanding +@samp{$} (@pxref{Variable expansion}) and @samp{~} (@pxref{Tilde +expansion}) constructs in the value. @samp{~} expansion happens at the +beginning of the overall value and at the beginning of a variable +expansion, but not arbitrarily within the string. Braces are not expanded. + +Example: @samp{--var-value=texmf_casefold_search} outputs (if the +default is not changed) @samp{1}. + +Example to contrast with @samp{--var-brace-value}: @samp{FOO='.;~' +kpsewhich --var-value=FOO} outputs @samp{.;~}, i.e., the same as the +input value. @end table @@ -3790,9 +3814,6 @@ running a normal input file, the problem is usually a compiler bug passed, problems may lurk. Optimization occasionally causes trouble in programs other than @TeX{} and Metafont themselves, too. -Insufficient swap space may also cause core dumps or other erratic -behavior. - @cindex optimization caveat For a workaround, if you enabled any optimization flags, it's best to omit optimization entirely. In any case, the way to find the facts is @@ -3809,8 +3830,7 @@ Using and Porting GNU CC}. To report compiler bugs effectively requires perseverance and perspicacity: you must find the miscompiled line, and that usually involves delving backwards in time from the point of error, checking -through @TeX{}'s (or whatever program's) data structures. Things are -not helped by all-too-common bugs in the debugger itself. Good luck. +through @TeX{}'s (or whatever program's) data structures. Good luck. @node Index diff --git a/source/texk/kpathsea/elt-dirs.c b/source/texk/kpathsea/elt-dirs.c index 5db08f370..ec60fe82d 100644 --- a/source/texk/kpathsea/elt-dirs.c +++ b/source/texk/kpathsea/elt-dirs.c @@ -1,7 +1,7 @@ /* elt-dirs.c: Translate a path element to its corresponding director{y,ies}. Copyright 1993, 1994, 1995, 1996, 1997, 2008, 2009, 2010, 2011, 2016, - 2017 Karl Berry. + 2017, 2018 Karl Berry. Copyright 1997, 1998, 1999, 2000, 2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -409,17 +409,44 @@ kpathsea_element_dirs (kpathsea kpse, string elt) str_llist_type *ret; unsigned i; +#ifdef _WIN32 + char *tname = NULL; + wchar_t *wtname = NULL; +#endif /* _WIN32 */ + /* If given nothing, return nothing. */ if (!elt || !*elt) return NULL; +#ifdef _WIN32 +/* + Change encoding of a variable into kpse->File_system_codepage + to support non-ascii values for the variable. +*/ + if (kpse->File_system_codepage != kpse->Win32_codepage) { + wtname = get_wstring_from_mbstring (kpse->Win32_codepage, + elt, wtname = NULL); + tname = get_mbstring_from_wstring (kpse->File_system_codepage, + wtname, tname = NULL); + elt = tname; + free(wtname); + } +#endif /* _WIN32 */ + /* Normalize ELT before looking for a cached value. */ i = kpathsea_normalize_path (kpse, elt); /* If we've already cached the answer for ELT, return it. */ ret = cached (kpse, elt); +#ifdef _WIN32 + if (ret) { + if (tname) free (tname); + return ret; + } +#else if (ret) return ret; +#endif /* _WIN32 */ /* We're going to have a real directory list to return. */ ret = XTALLOC1 (str_llist_type); @@ -447,6 +474,10 @@ kpathsea_element_dirs (kpathsea kpse, string elt) } #endif /* KPSE_DEBUG */ +#ifdef _WIN32 + if (tname) free (tname); +#endif /* _WIN32 */ + return ret; } diff --git a/source/texk/kpathsea/expand.h b/source/texk/kpathsea/expand.h index cebeb747b..7d38611be 100644 --- a/source/texk/kpathsea/expand.h +++ b/source/texk/kpathsea/expand.h @@ -1,6 +1,6 @@ /* expand.h: general expansion. - Copyright 1993, 1994, 1996, 2008, 2011 Karl Berry. + Copyright 1993, 1994, 1996, 2008, 2011, 2018 Karl Berry. Copyright 1999, 2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -34,7 +34,7 @@ extern string kpathsea_expand (kpathsea kpse, const_string s); #endif /* MAKE_KPSE_DLL */ -/* Do brace expansion and call `kpse_expand' on each element of the +/* Do brace expansion and call `kpathsea_expand' on each element of the result; return the final expansion (always in fresh memory, even if no expansions were done). We don't call `kpse_expand_default' because there is a whole sequence of defaults to run through; see diff --git a/source/texk/kpathsea/knj.c b/source/texk/kpathsea/knj.c index 09d718ce8..6db626216 100644 --- a/source/texk/kpathsea/knj.c +++ b/source/texk/kpathsea/knj.c @@ -1,6 +1,6 @@ /* knj.c: check for 2-Byte Kanji (CP 932, SJIS) codes. - Copyright 2010, 2016 Akira Kakuto. + Copyright 2010, 2016, 2018 Akira Kakuto. Copyright 2013, 2016 TANAKA Takuji. This library is free software; you can redistribute it and/or @@ -244,7 +244,12 @@ kpathsea_get_command_line_args_utf8 (kpathsea kpse, const_string enc, int *p_ac, hStderr = GetStdHandle( STD_ERROR_HANDLE ); #endif /* DEBUG */ kpse->File_system_codepage = CP_UTF8; +/* + IS_KANJI() in the CP932-like system seems to be necessary to + support non-ascii values for variables in the case of + command_line_encoding = utf-8. kpse->Is_cp932_system = 0; +*/ argvw = CommandLineToArgvW(GetCommandLineW(), &argcw); argc = argcw; argv = xmalloc(sizeof(char *)*(argcw+1)); diff --git a/source/texk/kpathsea/kpsewhich.c b/source/texk/kpathsea/kpsewhich.c index 76fc21d1a..b4e1d9889 100644 --- a/source/texk/kpathsea/kpsewhich.c +++ b/source/texk/kpathsea/kpsewhich.c @@ -31,12 +31,13 @@ #include <kpathsea/version.h> /* For variable and path expansion. (-expand-var, -expand-path, - -show-path) */ + -show-path, etc.) */ string var_to_expand = NULL; string braces_to_expand = NULL; string path_to_expand = NULL; string path_to_show = NULL; string var_to_value = NULL; +string var_to_brace_value = NULL; /* Base resolution. (-D, -dpi) */ unsigned dpi = 600; @@ -493,7 +494,8 @@ to also use -engine, or nothing will be returned; in particular,\n\ -show-path=TYPE output search path for file type TYPE\n\ (list shown by -help-formats).\n\ -subdir=STRING only output matches whose directory ends with STRING.\n\ --var-value=STRING output the value of variable $STRING.\n\ +-var-brace-value=STRING output brace-expanded value of variable $STRING.\n\ +-var-value=STRING output variable-expanded value of variable $STRING.\n\ -version display version information number and exit.\n \ " @@ -607,6 +609,7 @@ static struct option long_options[] { "safe-out-name", 1, 0, 0 }, { "subdir", 1, 0, 0 }, { "show-path", 1, 0, 0 }, + { "var-brace-value", 1, 0, 0 }, { "var-value", 1, 0, 0 }, { "version", 0, 0, 0 }, { 0, 0, 0, 0 } }; @@ -694,6 +697,9 @@ read_command_line (kpathsea kpse, int argc, string *argv) } else if (ARGUMENT_IS ("subdir")) { str_list_add (&subdir_paths, optarg); + } else if (ARGUMENT_IS ("var-brace-value")) { + var_to_brace_value = optarg; + } else if (ARGUMENT_IS ("var-value")) { var_to_value = optarg; @@ -718,7 +724,7 @@ There is NO WARRANTY, to the extent permitted by law.\n"); if (optind == argc && !var_to_expand && !braces_to_expand && !path_to_expand - && !path_to_show && !var_to_value + && !path_to_show && !var_to_value && !var_to_brace_value && !safe_in_name && !safe_out_name) { fputs ("Missing argument. Try `kpsewhich --help' for more information.\n", stderr); @@ -767,11 +773,12 @@ int main (int argc, string *argv) { #ifdef WIN32 +#define puts(s) kpathsea_win32_puts(kpse, (s)) string *av, enc; int ac; -#endif +#endif /* WIN32 */ unsigned unfound = 0; - kpathsea kpse = kpathsea_new(); + kpathsea kpse = kpathsea_new (); /* Read options, then dependent initializations. */ read_command_line (kpse, argc, argv); @@ -796,7 +803,7 @@ main (int argc, string *argv) argc = ac; } } -#endif +#endif /* WIN32 */ init_more (kpse); @@ -804,55 +811,57 @@ main (int argc, string *argv) /* Variable expansion. */ if (var_to_expand) -#ifdef WIN32 - kpathsea_win32_puts (kpse, kpathsea_var_expand (kpse, var_to_expand)); -#else puts (kpathsea_var_expand (kpse, var_to_expand)); -#endif /* Brace expansion. */ if (braces_to_expand) -#ifdef WIN32 - kpathsea_win32_puts (kpse, kpathsea_brace_expand (kpse, braces_to_expand)); -#else puts (kpathsea_brace_expand (kpse, braces_to_expand)); -#endif /* Path expansion. */ if (path_to_expand) -#ifdef WIN32 - kpathsea_win32_puts (kpse, kpathsea_path_expand (kpse, path_to_expand)); -#else puts (kpathsea_path_expand (kpse, path_to_expand)); -#endif /* Show a search path. */ if (path_to_show) { if (user_format != kpse_last_format) { - if (!kpse->format_info[user_format].type) /* needed if arg was numeric */ + if (!kpse->format_info[user_format].type) { + /* needed if arg was numeric */ kpathsea_init_format (kpse, user_format); -#ifdef WIN32 - kpathsea_win32_puts (kpse, kpse->format_info[user_format].path); -#else + } puts (kpse->format_info[user_format].path); -#endif } else { - WARNING ("kpsewhich: Cannot show path for unknown file type"); + WARNING1 ("kpsewhich: Unknown file type, cannot show path: %s", + path_to_show); } } - /* Var to value. */ + /* Var to value. */ if (var_to_value) { const_string value = kpathsea_var_value (kpse, var_to_value); if (!value) { unfound++; value = ""; } -#ifdef WIN32 - kpathsea_win32_puts (kpse, value); -#else puts (value); -#endif + } + + /* Var to brace-expanded value. This is separate from --var-value for + compatibility; people use --var-value for non-path values, where + changing commas to colons, which brace expansion does, is not right. */ + if (var_to_brace_value) { + const_string value = kpathsea_var_value (kpse, var_to_brace_value); + if (!value) { + unfound++; + value = ""; + } else { + /* Sometimes users want the fully-expanded (as a string, no + filesystem checks) value. We can't call brace_expand as part of + kpathsea_var_value, though, because unfortunately it is not + reentrant. We use var_value in lots of places in the source, + and it clobbers the static buffer in the kpse structure. */ + value = kpathsea_brace_expand (kpse, value); + } + puts (value); } if (safe_in_name) { diff --git a/source/texk/kpathsea/path-elt.c b/source/texk/kpathsea/path-elt.c index b678bdf4c..5666e30b6 100644 --- a/source/texk/kpathsea/path-elt.c +++ b/source/texk/kpathsea/path-elt.c @@ -1,6 +1,6 @@ /* path-elt.c: return the stuff between colons. - Copyright 1993, 1996 2008, 2016 Karl Berry. + Copyright 1993, 1996, 2008, 2016, 2018 Karl Berry. Copyright 1997, 2001, 2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -28,7 +28,7 @@ thus, we parse the same path over and over, on every lookup. If that turns out to be a significant lose, it can be fixed, but I'm guessing disk accesses overwhelm everything else. If ENV_P is true, use - IS_ENV_SEP; else use IS_DIR_SEP. */ + IS_KPSE_SEP; else use IS_DIR_SEP. */ static string element (kpathsea kpse, const_string passed_path, boolean env_p) @@ -49,10 +49,16 @@ element (kpathsea kpse, const_string passed_path, boolean env_p) assert (kpse->path); p = kpse->path; - /* Find the next colon not enclosed by braces (or the end of the path). */ + /* Find the next path separator not enclosed by braces (or the end of + the path). Here we want to check for either : or ; because we might + be called with the ;-using paths from the default texmf.cnf, e.g., + with kpsewhich --expand-braces or kpsewhich --var-value, while on a + Unix system. Otherwise, the path elements are not parsed and thus ~ + expansion (for example), does not happen except on the first element. + https://github.com/TeX-Live/texlive-source/issues/3 */ brace_level = 0; - while (*p != 0 && !(brace_level == 0 - && (env_p ? IS_ENV_SEP (*p) : IS_DIR_SEP (*p)))) { + while (*p != 0 && !(brace_level == 0 + && (env_p ? IS_KPSE_SEP (*p) : IS_DIR_SEP (*p)))) { if (*p == '{') ++brace_level; else if (*p == '}') --brace_level; #if defined(WIN32) diff --git a/source/texk/kpathsea/pathsearch.h b/source/texk/kpathsea/pathsearch.h index 7b4d5a792..057c6c92c 100644 --- a/source/texk/kpathsea/pathsearch.h +++ b/source/texk/kpathsea/pathsearch.h @@ -1,7 +1,7 @@ /* pathsearch.h: mostly-generic path searching. Copyright 1993, 1994, 1996, 1997, 2007, 2008, 2009, 2011, 2012, - 2014 Karl Berry. + 2014, 2018 Karl Berry. Copyright 1999-2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -36,7 +36,7 @@ extern "C" { #ifdef MAKE_KPSE_DLL /* libkpathsea internal only */ /* If PATH is non-null, return its first element (as defined by - IS_ENV_SEP). If it's NULL, return the next element in the previous + IS_KPSE_SEP). If it's NULL, return the next element in the previous path, a la strtok. Leading, trailing, or doubled colons result in the empty string. When at the end of PATH, return NULL. In any case, return a pointer to an area that may be overwritten on @@ -47,10 +47,9 @@ extern string kpathsea_path_element (kpathsea kpse, const_string path); IS_DIR_SEP). Uses same area as `kpathsea_path_element'. */ extern string kpathsea_filename_component (kpathsea kpse, const_string path); -/* - This function may rewrite its argument to avoid bugs when calling - stat() or equivalent under Win32. Also, it returns the index after - which the program should start to look for expandable constructs. */ +/* This function may rewrite its argument to avoid bugs when calling + stat() or equivalent under Windows. Also, it returns the index after + which the program should start to look for expandable constructs. */ extern unsigned kpathsea_normalize_path (kpathsea kpse, string elt); /* Given a path element ELT, return a pointer to a NULL-terminated list @@ -61,8 +60,7 @@ extern unsigned kpathsea_normalize_path (kpathsea kpse, string elt); It's up to the caller to expand ELT. This is because this routine is most likely only useful to be called from `kpathsea_path_search', which has already assumed expansion has been done. */ -extern str_llist_type *kpathsea_element_dirs (kpathsea kpse, - string elt); +extern str_llist_type *kpathsea_element_dirs (kpathsea kpse, string elt); #endif /* MAKE_KPSE_DLL */ diff --git a/source/texk/kpathsea/progname.c b/source/texk/kpathsea/progname.c index 54563f136..545f44392 100644 --- a/source/texk/kpathsea/progname.c +++ b/source/texk/kpathsea/progname.c @@ -494,9 +494,10 @@ kpathsea_set_program_name (kpathsea kpse, const_string argv0, } #if defined(WIN32) + cp = AreFileApisANSI() ? GetACP() : GetOEMCP(); if (!kpse->File_system_codepage) - kpse->File_system_codepage = AreFileApisANSI() ? GetACP() : GetOEMCP(); - cp = kpse->Win32_codepage = kpse->File_system_codepage; + kpse->File_system_codepage = cp; + kpse->Win32_codepage = cp; if (cp == 932 || cp == 936 || cp == 950) { kpse->Is_cp932_system = cp; } diff --git a/source/texk/kpathsea/tex-make.c b/source/texk/kpathsea/tex-make.c index 95851fdd5..629857a33 100644 --- a/source/texk/kpathsea/tex-make.c +++ b/source/texk/kpathsea/tex-make.c @@ -318,20 +318,32 @@ maketex (kpathsea kpse, kpse_file_format_type format, string* args) /* stdin -- the child will not receive input from this */ if (childin != 0) { close(0); - dup(childin); + if (dup(childin) != 0) { + perror("kpathsea: dup(2) failed for stdin"); + close(childin); + _exit(1); + } close(childin); } /* stdout -- the output of the child's action */ if (childout[1] != 1) { close(1); - dup(childout[1]); + if (dup(childout[1]) != 1) { + perror("kpathsea: dup(2) failed for stdout"); + close(childout[1]); + _exit(1); + } close(childout[1]); } /* stderr -- use /dev/null if we discard errors */ if (childerr != 2) { if (kpse->make_tex_discard_errors) { close(2); - dup(childerr); + if (dup(childerr) != 2) { + perror("kpathsea: dup(2) failed for stderr"); + close(childerr); + _exit(1); + } } close(childerr); } diff --git a/source/texk/kpathsea/texmf.cnf b/source/texk/kpathsea/texmf.cnf index 7d5acb45a..65c5c40c6 100644 --- a/source/texk/kpathsea/texmf.cnf +++ b/source/texk/kpathsea/texmf.cnf @@ -153,131 +153,140 @@ VARTEXFONTS = $TEXMFVAR/fonts % a good place to look for them. WEB2C = $TEXMF/web2c +% This variable exists only to be redefined; it is used in nearly all +% search paths. If a document has source files not only in the current +% directory but also in subdirectories, it is convenient to set +% TEXMFDOTDIR=.// so that everything will be searched automatically. +% On the other hand, if you never want the current directory to be +% searched at all, setting TEXMFDOTDIR=/nonesuch should come close. +% +TEXMFDOTDIR = . + % TEXINPUTS is for TeX input files -- i.e., anything to be found by \input % or \openin, including .sty, .eps, etc. We specify paths for all known % formats, past or present. Not all of them are built these days. % Plain TeX. Have the command tex check all directories as a last % resort, we may have plain-compatible stuff anywhere. -TEXINPUTS.tex = .;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.tex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,}// % Fontinst needs to read afm files. -TEXINPUTS.fontinst = .;$TEXMF/{tex,fonts/afm}// +TEXINPUTS.fontinst = $TEXMFDOTDIR;$TEXMF/{tex,fonts/afm}// % Other plain-based formats. -TEXINPUTS.amstex = .;$TEXMF/tex/{amstex,plain,generic,}// -TEXINPUTS.csplain = .;$TEXMF/tex/{csplain,plain,generic,}// -TEXINPUTS.eplain = .;$TEXMF/tex/{eplain,plain,generic,}// -TEXINPUTS.ftex = .;$TEXMF/tex/{formate,plain,generic,}// -TEXINPUTS.mex = .;$TEXMF/tex/{mex,plain,generic,}// -TEXINPUTS.texinfo = .;$TEXMF/tex/{texinfo,plain,generic,}// +TEXINPUTS.amstex = $TEXMFDOTDIR;$TEXMF/tex/{amstex,plain,generic,}// +TEXINPUTS.csplain = $TEXMFDOTDIR;$TEXMF/tex/{csplain,plain,generic,}// +TEXINPUTS.eplain = $TEXMFDOTDIR;$TEXMF/tex/{eplain,plain,generic,}// +TEXINPUTS.ftex = $TEXMFDOTDIR;$TEXMF/tex/{formate,plain,generic,}// +TEXINPUTS.mex = $TEXMFDOTDIR;$TEXMF/tex/{mex,plain,generic,}// +TEXINPUTS.texinfo = $TEXMFDOTDIR;$TEXMF/tex/{texinfo,plain,generic,}// % LaTeX 2e specific macros are stored in latex/, macros that can only be % used with 2.09 in latex209/. In addition, we look in the directory % latex209, useful for macros that were written for 2.09 and do not % mention 2e at all, but can be used with 2e. -TEXINPUTS.cslatex = .;$TEXMF/tex/{cslatex,csplain,latex,generic,}// -TEXINPUTS.latex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.latex209 = .;$TEXMF/tex/{latex209,generic,latex,}// -TEXINPUTS.olatex = .;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.cslatex = $TEXMFDOTDIR;$TEXMF/tex/{cslatex,csplain,latex,generic,}// +TEXINPUTS.latex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.latex209 = $TEXMFDOTDIR;$TEXMF/tex/{latex209,generic,latex,}// +TEXINPUTS.olatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}// % MLTeX. -TEXINPUTS.frlatex = .;$TEXMF/tex/{french,latex,generic,}// -TEXINPUTS.frtex = .;$TEXMF/tex/{french,plain,generic,}// -TEXINPUTS.mllatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.mltex = .;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.frlatex = $TEXMFDOTDIR;$TEXMF/tex/{french,latex,generic,}// +TEXINPUTS.frtex = $TEXMFDOTDIR;$TEXMF/tex/{french,plain,generic,}// +TEXINPUTS.mllatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.mltex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,}// % e-TeX. -TEXINPUTS.elatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.etex = .;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.elatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.etex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,}// % pdfTeX. -TEXINPUTS.pdfcslatex = .;$TEXMF/tex/{cslatex,csplain,latex,generic,}// -TEXINPUTS.pdfcsplain = .;$TEXMF/tex/{csplain,plain,generic,}// -TEXINPUTS.pdflatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.pdfmex = .;$TEXMF/tex/{mex,plain,generic,}// -TEXINPUTS.utf8mex = .;$TEXMF/tex/{mex,plain,generic,}// -TEXINPUTS.pdftex = .;$TEXMF/tex/{plain,generic,}// -TEXINPUTS.pdftexinfo = .;$TEXMF/tex/{texinfo,plain,generic,}// -TEXINPUTS.pdfamstex = .;$TEXMF/tex/{amstex,plain,generic,}// +TEXINPUTS.pdfcslatex = $TEXMFDOTDIR;$TEXMF/tex/{cslatex,csplain,latex,generic,}// +TEXINPUTS.pdfcsplain = $TEXMFDOTDIR;$TEXMF/tex/{csplain,plain,generic,}// +TEXINPUTS.pdflatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.pdfmex = $TEXMFDOTDIR;$TEXMF/tex/{mex,plain,generic,}// +TEXINPUTS.utf8mex = $TEXMFDOTDIR;$TEXMF/tex/{mex,plain,generic,}// +TEXINPUTS.pdftex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.pdftexinfo = $TEXMFDOTDIR;$TEXMF/tex/{texinfo,plain,generic,}// +TEXINPUTS.pdfamstex = $TEXMFDOTDIR;$TEXMF/tex/{amstex,plain,generic,}// % pdfeTeX. -TEXINPUTS.pdfelatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.pdfetex = .;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.pdfelatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.pdfetex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,}// % LuaTeX. -TEXINPUTS.luatex = .;$TEXMF/tex/{luatex,plain,generic,}// -TEXINPUTS.luajittex = .;$TEXMF/tex/{luatex,plain,generic,}// -TEXINPUTS.dviluatex = .;$TEXMF/tex/{luatex,plain,generic,}// -TEXINPUTS.lualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}// -TEXINPUTS.luajitlatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}// -TEXINPUTS.dvilualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +TEXINPUTS.luatex = $TEXMFDOTDIR;$TEXMF/tex/{luatex,plain,generic,}// +TEXINPUTS.luajittex = $TEXMFDOTDIR;$TEXMF/tex/{luatex,plain,generic,}// +TEXINPUTS.dviluatex = $TEXMFDOTDIR;$TEXMF/tex/{luatex,plain,generic,}// +TEXINPUTS.lualatex = $TEXMFDOTDIR;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +TEXINPUTS.luajitlatex = $TEXMFDOTDIR;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +TEXINPUTS.dvilualatex = $TEXMFDOTDIR;$TEXMF/tex/{lualatex,latex,luatex,generic,}// % XeTeX. -TEXINPUTS.xelatex = .;$TEXMF/tex/{xelatex,latex,xetex,generic,}// -TEXINPUTS.xeplain = .;$TEXMF/tex/{xeplain,eplain,plain,xetex,generic,}// -TEXINPUTS.xetex = .;$TEXMF/tex/{xetex,plain,generic,}// +TEXINPUTS.xelatex = $TEXMFDOTDIR;$TEXMF/tex/{xelatex,latex,xetex,generic,}// +TEXINPUTS.xeplain = $TEXMFDOTDIR;$TEXMF/tex/{xeplain,eplain,plain,xetex,generic,}// +TEXINPUTS.xetex = $TEXMFDOTDIR;$TEXMF/tex/{xetex,plain,generic,}// % Omega / Aleph. -TEXINPUTS.aleph = .;$TEXMF/tex/{plain,generic,}// -TEXINPUTS.elambda = .;$TEXMF/tex/{lambda,latex,generic,}// -TEXINPUTS.eomega = .;$TEXMF/tex/{plain,generic,}// -TEXINPUTS.lambda = .;$TEXMF/tex/{lambda,latex,generic,}// -TEXINPUTS.lamed = .;$TEXMF/tex/{lambda,latex,generic,}// -TEXINPUTS.omega = .;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.aleph = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.elambda = $TEXMFDOTDIR;$TEXMF/tex/{lambda,latex,generic,}// +TEXINPUTS.eomega = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.lambda = $TEXMFDOTDIR;$TEXMF/tex/{lambda,latex,generic,}// +TEXINPUTS.lamed = $TEXMFDOTDIR;$TEXMF/tex/{lambda,latex,generic,}// +TEXINPUTS.omega = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,}// % p(La)TeX. -TEXINPUTS.ptex = .;$TEXMF/tex/{ptex,plain,generic,}// -TEXINPUTS.platex = .;$TEXMF/tex/{platex,latex,generic,}// +TEXINPUTS.ptex = $TEXMFDOTDIR;$TEXMF/tex/{ptex,plain,generic,}// +TEXINPUTS.platex = $TEXMFDOTDIR;$TEXMF/tex/{platex,latex,generic,}// % epTeX, and for pmpost. -TEXINPUTS.eptex = .;$TEXMF/tex/{ptex,plain,generic,}// +TEXINPUTS.eptex = $TEXMFDOTDIR;$TEXMF/tex/{ptex,plain,generic,}// TEX.pmpost = eptex % p(La)TeX-ng -TEXINPUTS.ptex-ng = .;$TEXMF/tex/{uptex,ptex,plain,generic,}// -TEXINPUTS.platex-ng = .;$TEXMF/tex/{uplatex,platex,latex,generic,}// +TEXINPUTS.ptex-ng = $TEXMFDOTDIR;$TEXMF/tex/{uptex,ptex,plain,generic,}// +TEXINPUTS.platex-ng = $TEXMFDOTDIR;$TEXMF/tex/{uplatex,platex,latex,generic,}// % (e)up(La)TeX, and for upmpost -TEXINPUTS.uplatex = .;$TEXMF/tex/{uplatex,platex,latex,generic,}// -TEXINPUTS.uptex = .;$TEXMF/tex/{uptex,ptex,plain,generic,}// -TEXINPUTS.euptex = .;$TEXMF/tex/{uptex,ptex,plain,generic,}// +TEXINPUTS.uplatex = $TEXMFDOTDIR;$TEXMF/tex/{uplatex,platex,latex,generic,}// +TEXINPUTS.uptex = $TEXMFDOTDIR;$TEXMF/tex/{uptex,ptex,plain,generic,}// +TEXINPUTS.euptex = $TEXMFDOTDIR;$TEXMF/tex/{uptex,ptex,plain,generic,}// TEX.upmpost = euptex % pBibTeX bibliographies and style files. -BIBINPUTS.pbibtex = .;$TEXMF/{pbibtex,bibtex}/bib// -BSTINPUTS.pbibtex = .;$TEXMF/{pbibtex,bibtex}/bst// +BIBINPUTS.pbibtex = $TEXMFDOTDIR;$TEXMF/{pbibtex,bibtex}/bib// +BSTINPUTS.pbibtex = $TEXMFDOTDIR;$TEXMF/{pbibtex,bibtex}/bst// % upBibTeX bibliographies and style files. -BIBINPUTS.upbibtex = .;$TEXMF/{upbibtex,pbibtex,bibtex}/bib// -BSTINPUTS.upbibtex = .;$TEXMF/{upbibtex,pbibtex,bibtex}/bst// +BIBINPUTS.upbibtex = $TEXMFDOTDIR;$TEXMF/{upbibtex,pbibtex,bibtex}/bib// +BSTINPUTS.upbibtex = $TEXMFDOTDIR;$TEXMF/{upbibtex,pbibtex,bibtex}/bst// % ConTeXt. -TEXINPUTS.context = .;$TEXMF/tex/{context,plain,generic,}// +TEXINPUTS.context = $TEXMFDOTDIR;$TEXMF/tex/{context,plain,generic,}// % jadetex. -TEXINPUTS.jadetex = .;$TEXMF/tex/{jadetex,latex,generic,}// -TEXINPUTS.pdfjadetex = .;$TEXMF/tex/{jadetex,latex,generic,}// +TEXINPUTS.jadetex = $TEXMFDOTDIR;$TEXMF/tex/{jadetex,latex,generic,}// +TEXINPUTS.pdfjadetex = $TEXMFDOTDIR;$TEXMF/tex/{jadetex,latex,generic,}// % XMLTeX. -TEXINPUTS.xmltex = .;$TEXMF/tex/{xmltex,latex,generic,}// -TEXINPUTS.pdfxmltex = .;$TEXMF/tex/{xmltex,latex,generic,}// +TEXINPUTS.xmltex = $TEXMFDOTDIR;$TEXMF/tex/{xmltex,latex,generic,}// +TEXINPUTS.pdfxmltex = $TEXMFDOTDIR;$TEXMF/tex/{xmltex,latex,generic,}// % Miscellany, no longer built. -TEXINPUTS.lamstex = .;$TEXMF/tex/{lamstex,plain,generic,}// -TEXINPUTS.lollipop = .;$TEXMF/tex/{lollipop,plain,generic,}// -TEXINPUTS.frpdflatex = .;$TEXMF/tex/{french,latex,generic,}// -TEXINPUTS.frpdftex = .;$TEXMF/tex/{french,plain,generic,}// +TEXINPUTS.lamstex = $TEXMFDOTDIR;$TEXMF/tex/{lamstex,plain,generic,}// +TEXINPUTS.lollipop = $TEXMFDOTDIR;$TEXMF/tex/{lollipop,plain,generic,}// +TEXINPUTS.frpdflatex = $TEXMFDOTDIR;$TEXMF/tex/{french,latex,generic,}// +TEXINPUTS.frpdftex = $TEXMFDOTDIR;$TEXMF/tex/{french,plain,generic,}// % Earlier entries override later ones, so put this generic one last. -TEXINPUTS = .;$TEXMF/tex/{$progname,generic,}// +TEXINPUTS = $TEXMFDOTDIR;$TEXMF/tex/{$progname,generic,}// % ttf2tfm. -TTF2TFMINPUTS = .;$TEXMF/ttf2pk// +TTF2TFMINPUTS = $TEXMFDOTDIR;$TEXMF/ttf2pk// % Metafont, MetaPost inputs. -MFINPUTS = .;$TEXMF/metafont//;{$TEXMF/fonts,$VARTEXFONTS}/source// -MPINPUTS = .;$TEXMF/metapost// +MFINPUTS = $TEXMFDOTDIR;$TEXMF/metafont//;{$TEXMF/fonts,$VARTEXFONTS}/source// +MPINPUTS = $TEXMFDOTDIR;$TEXMF/metapost// % Dump files (fmt/base/mem) for vir{tex,mf,mp} to read. % We want to find the engine-specific file, e.g., cont-en.fmt can @@ -286,67 +295,67 @@ MPINPUTS = .;$TEXMF/metapost// % We repeat the same definition three times because of the way fmtutil % is implemented; if we use ${TEXFORMATS}, the mpost/mf/etc. formats % will not be found. -TEXFORMATS = .;$TEXMF/web2c{/$engine,} -MFBASES = .;$TEXMF/web2c{/$engine,} -MPMEMS = .;$TEXMF/web2c{/$engine,} +TEXFORMATS = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,} +MFBASES = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,} +MPMEMS = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,} % % As of 2008, pool files don't exist any more (the strings are compiled % into the binaries), but just in case something expects to find these: -TEXPOOL = .;$TEXMF/web2c +TEXPOOL = $TEXMFDOTDIR;$TEXMF/web2c MFPOOL = ${TEXPOOL} MPPOOL = ${TEXPOOL} % support the original xdvi. Must come before the generic settings. -PKFONTS.XDvi = .;$TEXMF/%s;$VARTEXFONTS/pk/{%m,modeless}// -VFFONTS.XDvi = .;$TEXMF/%s -PSHEADERS.XDvi = .;$TEXMF/%q{dvips,fonts/type1}// -TEXPICTS.XDvi = .;$TEXMF/%q{dvips,tex}// +PKFONTS.XDvi = $TEXMFDOTDIR;$TEXMF/%s;$VARTEXFONTS/pk/{%m,modeless}// +VFFONTS.XDvi = $TEXMFDOTDIR;$TEXMF/%s +PSHEADERS.XDvi = $TEXMFDOTDIR;$TEXMF/%q{dvips,fonts/type1}// +TEXPICTS.XDvi = $TEXMFDOTDIR;$TEXMF/%q{dvips,tex}// % Device-independent font metric files. -VFFONTS = .;$TEXMF/fonts/vf// -TFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/tfm// +VFFONTS = $TEXMFDOTDIR;$TEXMF/fonts/vf// +TFMFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/tfm// % The $MAKETEX_MODE below means the drivers will not use a cx font when % the mode is ricoh. If no mode is explicitly specified, kpse_prog_init % sets MAKETEX_MODE to /, so all subdirectories are searched. See the manual. % The modeless part guarantees that bitmaps for PostScript fonts are found. -PKFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}// +PKFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}// % Similarly for the GF format, which only remains in existence because % Metafont outputs it (and MF isn't going to change). -GFFONTS = .;$TEXMF/fonts/gf/$MAKETEX_MODE// +GFFONTS = $TEXMFDOTDIR;$TEXMF/fonts/gf/$MAKETEX_MODE// % A backup for PKFONTS and GFFONTS. Not used for anything. -GLYPHFONTS = .;$TEXMF/fonts +GLYPHFONTS = $TEXMFDOTDIR;$TEXMF/fonts % A place to puth everything that doesn't fit the other font categories. -MISCFONTS = .;$TEXMF/fonts/misc// +MISCFONTS = $TEXMFDOTDIR;$TEXMF/fonts/misc// % font name map files. This isn't just fonts/map// because ConTeXt % wants support for having files with the same name in the different % subdirs. Maybe if the programs ever get unified to accepting the same % map file syntax the definition can be simplified again. -TEXFONTMAPS = .;$TEXMF/fonts/map/{$progname,pdftex,dvips,}// +TEXFONTMAPS = $TEXMFDOTDIR;$TEXMF/fonts/map/{$progname,pdftex,dvips,}// % BibTeX bibliographies and style files. bibtex8 also uses these. -BIBINPUTS = .;$TEXMF/bibtex/bib// -BSTINPUTS = .;$TEXMF/bibtex/{bst,csf}// +BIBINPUTS = $TEXMFDOTDIR;$TEXMF/bibtex/bib// +BSTINPUTS = $TEXMFDOTDIR;$TEXMF/bibtex/{bst,csf}// % MlBibTeX. -MLBIBINPUTS = .;$TEXMF/bibtex/bib/{mlbib,}// -MLBSTINPUTS = .;$TEXMF/bibtex/{mlbst,bst}// +MLBIBINPUTS = $TEXMFDOTDIR;$TEXMF/bibtex/bib/{mlbib,}// +MLBSTINPUTS = $TEXMFDOTDIR;$TEXMF/bibtex/{mlbst,bst}// % .ris and .bltxml bibliography formats. -RISINPUTS = .;$TEXMF/biber/ris// -BLTXMLINPUTS = .;$TEXMF/biber/bltxml// +RISINPUTS = $TEXMFDOTDIR;$TEXMF/biber/ris// +BLTXMLINPUTS = $TEXMFDOTDIR;$TEXMF/biber/bltxml// % MFT style files. -MFTINPUTS = .;$TEXMF/mft// +MFTINPUTS = $TEXMFDOTDIR;$TEXMF/mft// % PostScript headers and prologues (.pro); unfortunately, some programs % also use this for acessing font files (enc, type1, truetype) -TEXPSHEADERS = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3}}// -TEXPSHEADERS.gsftopk = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3,truetype}}// +TEXPSHEADERS = $TEXMFDOTDIR;$TEXMF/{dvips,fonts/{enc,type1,type42,type3}}// +TEXPSHEADERS.gsftopk = $TEXMFDOTDIR;$TEXMF/{dvips,fonts/{enc,type1,type42,type3,truetype}}// % OSFONTDIR is to provide a convenient hook for allowing TeX to find % fonts installed on the system (outside of TeX). An empty default @@ -354,54 +363,54 @@ TEXPSHEADERS.gsftopk = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3,truetype}}/ OSFONTDIR = /please/set/osfontdir/in/the/environment % PostScript Type 1 outline fonts. -T1FONTS = .;$TEXMF/fonts/type1//;$OSFONTDIR// +T1FONTS = $TEXMFDOTDIR;$TEXMF/fonts/type1//;$OSFONTDIR// % PostScript AFM metric files. -AFMFONTS = .;$TEXMF/fonts/afm//;$OSFONTDIR// +AFMFONTS = $TEXMFDOTDIR;$TEXMF/fonts/afm//;$OSFONTDIR// % TrueType outline fonts. -TTFONTS = .;$TEXMF/fonts/{truetype,opentype}//;$OSFONTDIR// +TTFONTS = $TEXMFDOTDIR;$TEXMF/fonts/{truetype,opentype}//;$OSFONTDIR// % OpenType outline fonts. -OPENTYPEFONTS = .;$TEXMF/fonts/{opentype,truetype}//;$OSFONTDIR// +OPENTYPEFONTS = $TEXMFDOTDIR;$TEXMF/fonts/{opentype,truetype}//;$OSFONTDIR// % Type 42 outline fonts. -T42FONTS = .;$TEXMF/fonts/type42// +T42FONTS = $TEXMFDOTDIR;$TEXMF/fonts/type42// % Ligature definition files. -LIGFONTS = .;$TEXMF/fonts/lig// +LIGFONTS = $TEXMFDOTDIR;$TEXMF/fonts/lig// % Dvips' config.* files (this name should not start with `TEX'!). TEXCONFIG = $TEXMF/dvips// % Makeindex style (.ist) files. -INDEXSTYLE = .;$TEXMF/makeindex// +INDEXSTYLE = $TEXMFDOTDIR;$TEXMF/makeindex// % mendex dictionary files. Used internally by mendex and upmendex. % It is not necessary to introduce a new format in Kpathsea. -INDEXDICTIONARY = .;$TEXMF/makeindex// +INDEXDICTIONARY = $TEXMFDOTDIR;$TEXMF/makeindex// % Font encoding files (.enc). -ENCFONTS = .;$TEXMF/fonts/enc// +ENCFONTS = $TEXMFDOTDIR;$TEXMF/fonts/enc// % CMap files. -CMAPFONTS = .;$TEXMF/fonts/cmap// +CMAPFONTS = $TEXMFDOTDIR;$TEXMF/fonts/cmap// % Subfont definition files. -SFDFONTS = .;$TEXMF/fonts/sfd// +SFDFONTS = $TEXMFDOTDIR;$TEXMF/fonts/sfd// % OpenType feature files (.fea). -FONTFEATURES=.;$TEXMF/fonts/fea// +FONTFEATURES=$TEXMFDOTDIR;$TEXMF/fonts/fea// % .cid and .cidmap -FONTCIDMAPS=.;$TEXMF/fonts/cid// +FONTCIDMAPS=$TEXMFDOTDIR;$TEXMF/fonts/cid// % pdftex config files: -PDFTEXCONFIG = .;$TEXMF/pdftex/{$progname,}// +PDFTEXCONFIG = $TEXMFDOTDIR;$TEXMF/pdftex/{$progname,}// % Used by DMP (ditroff-to-mpx), called by makempx -troff. TRFONTS = /usr{/local,}/share/groff/{current/font,site-font}/devps -MPSUPPORT = .;$TEXMF/metapost/support +MPSUPPORT = $TEXMFDOTDIR;$TEXMF/metapost/support % For xdvi to find mime.types and .mailcap, if they do not exist in % ~. These are single directories, not paths. @@ -419,28 +428,28 @@ FC_CACHEDIR = $TEXMFSYSVAR/fonts/cache % TeX documentation and source files, for use with texdoc and kpsewhich. TEXDOCS = $TEXMF/doc// -TEXSOURCES = .;$TEXMF/source// +TEXSOURCES = $TEXMFDOTDIR;$TEXMF/source// % Web and CWeb input paths. -WEBINPUTS = .;$TEXMF/web// -CWEBINPUTS = .;$TEXMF/cweb// +WEBINPUTS = $TEXMFDOTDIR;$TEXMF/web// +CWEBINPUTS = $TEXMFDOTDIR;$TEXMF/cweb// % Omega-related fonts and other files. -OFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ofm,tfm}// -OPLFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/opl// -OVFFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ovf,vf}// -OVPFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/ovp// -OTPINPUTS = .;$TEXMF/omega/otp// -OCPINPUTS = .;$TEXMF/omega/ocp// +OFMFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/{ofm,tfm}// +OPLFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/opl// +OVFFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/{ovf,vf}// +OVPFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/ovp// +OTPINPUTS = $TEXMFDOTDIR;$TEXMF/omega/otp// +OCPINPUTS = $TEXMFDOTDIR;$TEXMF/omega/ocp// % Some additional input variables for several programs. If you add % a program that uses the `other text files' or `other binary files' % search formats, you'll want to add their variables here as well. -T4HTINPUTS = .;$TEXMF/tex4ht// +T4HTINPUTS = $TEXMFDOTDIR;$TEXMF/tex4ht// %% t4ht utility, sharing files with TeX4ht TEX4HTFONTSET=alias,iso8859,unicode -TEX4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// +TEX4HTINPUTS = $TEXMFDOTDIR;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// % TeXworks editor configuration and settings TW_LIBPATH = $TEXMFCONFIG/texworks @@ -460,21 +469,21 @@ DVIPDFMXINPUTS = $TEXMF/dvipdfmx % So, duplicate the TEXINPUTS.*lualatex values as LUAINPUTS.*lualatex. % The default LUAINPUTS suffices for luatex and dviluatex. % -LUAINPUTS.lualatex = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}// -LUAINPUTS.dvilualatex = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}// -LUAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{luatex,plain,generic,}// +LUAINPUTS.lualatex = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +LUAINPUTS.dvilualatex = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +LUAINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{luatex,plain,generic,}// % Lua needs to look for binary lua libraries distributed with packages. -CLUAINPUTS = .;$SELFAUTOLOC/lib/{$progname,$engine,}/lua// +CLUAINPUTS = $TEXMFDOTDIR;$SELFAUTOLOC/lib/{$progname,$engine,}/lua// % Architecture independent executables. TEXMFSCRIPTS = $TEXMF/scripts/{$progname,$engine,}// % Other languages. -JAVAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/java// -PERLINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/perl// -PYTHONINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/python// -RUBYINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/ruby// +JAVAINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/java// +PERLINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/perl// +PYTHONINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/python// +RUBYINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/ruby// %% The mktex* scripts rely on KPSE_DOT. Do not set it in the environment. @@ -591,6 +600,7 @@ gregorio,\ kpsewhich,\ makeindex,\ repstopdf,\ +r-mpost,\ texosquery-jre8,\ % we'd like to allow: diff --git a/source/texk/texlive/linked_scripts/Makefile.am b/source/texk/texlive/linked_scripts/Makefile.am index 2f2e27e0d..163aa0d90 100644 --- a/source/texk/texlive/linked_scripts/Makefile.am +++ b/source/texk/texlive/linked_scripts/Makefile.am @@ -78,6 +78,7 @@ texmf_shell_scripts = \ pdfjam/pdfjoin \ pdfjam/pdfnup \ pdfjam/pdfpun \ + pdftex-quiet/pdftex-quiet \ pdfxup/pdfxup \ pst-pdf/ps4pdf \ simpdftex/simpdftex \ @@ -100,6 +101,7 @@ texmf_other_scripts = \ cachepic/cachepic.tlu \ checkcites/checkcites.lua \ cjk-gs-integrate/cjk-gs-integrate.pl \ + cluttex/cluttex.lua \ context/perl/mptopdf.pl \ convbkmk/convbkmk.rb \ crossrefware/bbl2bib.pl \ @@ -213,6 +215,7 @@ texmf_other_scripts = \ ulqda/ulqda.pl \ urlbst/urlbst \ vpe/vpe.pl \ + xindex/xindex.lua \ yplan/yplan texmf_context_scripts = \ context/stubs/unix/context \ @@ -234,6 +237,8 @@ nobase_dist_texmf_scripts_SCRIPTS = \ ## Symlinks within $(bindir): FILE:LINK here means "ln -s FILE LINK" is done. bin_links = \ + cluttex:clxelatex \ + cluttex:cllualatex \ epstopdf:repstopdf \ pdfcrop:rpdfcrop \ texdef:latexdef diff --git a/source/texk/texlive/linked_scripts/Makefile.in b/source/texk/texlive/linked_scripts/Makefile.in index 0a33fb7e4..13dc1d7d3 100644 --- a/source/texk/texlive/linked_scripts/Makefile.in +++ b/source/texk/texlive/linked_scripts/Makefile.in @@ -291,6 +291,7 @@ texmf_shell_scripts = \ pdfjam/pdfjoin \ pdfjam/pdfnup \ pdfjam/pdfpun \ + pdftex-quiet/pdftex-quiet \ pdfxup/pdfxup \ pst-pdf/ps4pdf \ simpdftex/simpdftex \ @@ -314,6 +315,7 @@ texmf_other_scripts = \ cachepic/cachepic.tlu \ checkcites/checkcites.lua \ cjk-gs-integrate/cjk-gs-integrate.pl \ + cluttex/cluttex.lua \ context/perl/mptopdf.pl \ convbkmk/convbkmk.rb \ crossrefware/bbl2bib.pl \ @@ -427,6 +429,7 @@ texmf_other_scripts = \ ulqda/ulqda.pl \ urlbst/urlbst \ vpe/vpe.pl \ + xindex/xindex.lua \ yplan/yplan texmf_context_scripts = \ @@ -444,6 +447,8 @@ nobase_dist_texmf_scripts_SCRIPTS = \ $(texmf_context_scripts) bin_links = \ + cluttex:clxelatex \ + cluttex:cllualatex \ epstopdf:repstopdf \ pdfcrop:rpdfcrop \ texdef:latexdef diff --git a/source/texk/texlive/w32_wrapper/runscript.tlu b/source/texk/texlive/w32_wrapper/runscript.tlu index da2c1cf5e..3356ed09d 100644 --- a/source/texk/texlive/w32_wrapper/runscript.tlu +++ b/source/texk/texlive/w32_wrapper/runscript.tlu @@ -1,7 +1,7 @@ -local svnrevision = string.match("$Revision: 48059 $", "%d+") or "0" -local svndate = string.match("$Date: 2018-06-20 05:55:23 +0200 (Wed, 20 Jun 2018) $", "[-%d]+") or "2009-12-04" +local svnrevision = string.match("$Revision: 48877 $", "%d+") or "0" +local svndate = string.match("$Date: 2018-10-10 09:25:30 +0200 (Wed, 10 Oct 2018) $", "[-%d]+") or "2009-12-04" local bannerstr = "runscript wrapper utility (rev. " .. svnrevision .. ", " .. svndate .. ")\n" .. "usage: runscript script-name [arguments]\n" .. @@ -270,6 +270,9 @@ local docstr = [[ 2018/06/20 - support also scripts in trees other than TEXMFDIST: https://tug.org/pipermail/tex-live/2018-June/041922.html + 2018/10/10 + - support cluttex scripts + ]] -- HELPER SUBROUTINES -- @@ -762,6 +765,12 @@ elseif progname == 'tlperl' then elseif progname == 'latexdef' then progname = 'texdef' argline = ' --tex latex ' .. argline +elseif progname == 'cllualatex' then + progname = 'cluttex' + argline = ' --engine=lualatex ' .. argline +elseif progname == 'clxelatex' then + progname = 'cluttex' + argline = ' --engine=xelatex ' .. argline end -- general case diff --git a/source/texk/web2c/ChangeLog b/source/texk/web2c/ChangeLog index 8f828367d..4960c0986 100644 --- a/source/texk/web2c/ChangeLog +++ b/source/texk/web2c/ChangeLog @@ -1,3 +1,35 @@ +2018-12-30 Karl Berry <karl@tug.org> + + * mplibdir/am/mplib.am, + * pmpostdir/am/pmpost.am (bin_links): make that r- instead of r. + Suggested by Hironobu, + https://tug.org/pipermail/tex-live/2018-December/043014.html. + +2018-12-21 Karl Berry <karl@freefriends.org> + + * mplibdir/am/mplib.am, + * pmpostdir/am/pmpost.am (bin_links): make links at install time: + ln -s mpost rmpost + ln -s pmpost rpmpost + ln -s upmpost rupmpost + which implicitly specify -restricted; these new links can be + included in shell_escape_commands (we hope). + Thread starting here: + https://tug.org/pipermail/tex-live/2017-May/040169.html + +2018-11-19 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * texmfmp.h: Remove unused functions in XeTeX. + +2018-11-17 Joseph Wright <joseph.wright@morningstar2.co.uk> + + * texmfmp.h: Support some primitives from pdfTeX in XeTeX. + +2018-09-09 Karl Berry <karl@tug.org> + + * mftraptest.test, + * triptest.test: LC_ALL=LANGUAGE=C. + 2018-07-24 Akira Kakuto <kakuto@fuk.kindai.ac.jp> * synctexdir/am/synctex.am: Add synctex_version.h. diff --git a/source/texk/web2c/Makefile.am b/source/texk/web2c/Makefile.am index 1a2c7036b..945e012f8 100644 --- a/source/texk/web2c/Makefile.am +++ b/source/texk/web2c/Makefile.am @@ -1,4 +1,4 @@ -## $Id: Makefile.am 46348 2018-01-17 18:00:12Z lscarso $ +## $Id: Makefile.am 48591 2018-09-05 21:30:41Z lscarso $ ## Makefile.am for the TeX Live subdirectory texk/web2c/. ## ## Copyright 2017 Karl Berry <tex-live@tug.org> diff --git a/source/texk/web2c/Makefile.in b/source/texk/web2c/Makefile.in index a21359290..ea032018d 100644 --- a/source/texk/web2c/Makefile.in +++ b/source/texk/web2c/Makefile.in @@ -14,6 +14,10 @@ @SET_MAKE@ +#LUA_INCLUDES = $(LUA52_INCLUDES) $(LUA52_DEFINES) +#LUA_LIBS = $(LUA52_LIBS) +#LUA_DEPEND = $(LUA52_DEPEND) + @@ -98,9 +102,9 @@ EXTRA_PROGRAMS = $(am__EXEEXT_1) tex$(EXEEXT) mf$(EXEEXT) \ pmpost$(EXEEXT) upmpost$(EXEEXT) etex$(EXEEXT) ptex$(EXEEXT) \ $(am__EXEEXT_2) eptex$(EXEEXT) uptex$(EXEEXT) $(am__EXEEXT_3) \ euptex$(EXEEXT) pdftex$(EXEEXT) ttf2afm$(EXEEXT) \ - pdftosrc$(EXEEXT) luatex$(EXEEXT) luatex53$(EXEEXT) \ - luajittex$(EXEEXT) xetex$(EXEEXT) $(am__EXEEXT_4) \ - aleph$(EXEEXT) synctex$(EXEEXT) md5main$(EXEEXT) + pdftosrc$(EXEEXT) luatex$(EXEEXT) luajittex$(EXEEXT) \ + xetex$(EXEEXT) $(am__EXEEXT_4) aleph$(EXEEXT) synctex$(EXEEXT) \ + md5main$(EXEEXT) bin_PROGRAMS = tangle$(EXEEXT) ctangle$(EXEEXT) $(am__EXEEXT_5) \ ctie$(EXEEXT) cweave$(EXEEXT) tie$(EXEEXT) $(am__EXEEXT_6) \ $(am__EXEEXT_7) $(am__EXEEXT_8) $(am__EXEEXT_9) \ @@ -110,22 +114,20 @@ bin_PROGRAMS = tangle$(EXEEXT) ctangle$(EXEEXT) $(am__EXEEXT_5) \ $(am__EXEEXT_19) $(am__EXEEXT_20) $(am__EXEEXT_21) \ $(am__EXEEXT_22) $(am__EXEEXT_23) $(am__EXEEXT_24) \ $(am__EXEEXT_25) $(am__EXEEXT_26) $(am__EXEEXT_27) \ - $(am__EXEEXT_28) $(am__EXEEXT_29) $(am__EXEEXT_30) \ - $(am__EXEEXT_31) + $(am__EXEEXT_28) $(am__EXEEXT_29) $(am__EXEEXT_30) noinst_PROGRAMS = tangleboot$(EXEEXT) ctangleboot$(EXEEXT) \ - $(am__EXEEXT_32) $(am__EXEEXT_33) $(am__EXEEXT_34) \ - $(am__EXEEXT_35) $(am__EXEEXT_36) $(am__EXEEXT_37) \ - $(am__EXEEXT_38) $(am__EXEEXT_39) $(am__EXEEXT_40) -TESTS = tangle.test $(am__EXEEXT_43) ctiedir/ctie.test \ + $(am__EXEEXT_31) $(am__EXEEXT_32) $(am__EXEEXT_33) \ + $(am__EXEEXT_34) $(am__EXEEXT_35) $(am__EXEEXT_36) \ + $(am__EXEEXT_37) $(am__EXEEXT_38) +TESTS = tangle.test $(am__EXEEXT_41) ctiedir/ctie.test \ cwebdir/cweave.test tiedir/tie.test $(am__append_6) \ $(am__append_16) $(am__append_25) $(am__append_34) \ $(am__append_42) $(am__append_55) $(am__append_56) \ $(am__append_58) $(am__append_63) $(am__append_66) \ $(am__append_68) $(am__append_73) $(am__append_76) \ - $(am__append_78) $(am__append_83) $(am__append_99) \ - $(am__append_100) $(am__append_101) $(am__append_109) \ - $(am__append_111) $(am__append_113) $(am__append_147) \ - libmd5/md5.test + $(am__append_78) $(am__append_83) $(am__append_94) \ + $(am__append_95) $(am__append_103) $(am__append_105) \ + $(am__append_107) $(am__append_141) libmd5/md5.test @WEB_TRUE@am__append_1 = $(web_programs) @WEB_TRUE@am__append_2 = $(web_tests) @TEX_TRUE@am__append_3 = tex @@ -166,7 +168,9 @@ TESTS = tangle.test $(am__EXEEXT_43) ctiedir/ctie.test \ @MP_TRUE@@WIN32_TRUE@am__append_38 = call_mpost @MP_TRUE@@WIN32_TRUE@am__append_39 = install-mpost-links @MP_TRUE@@WIN32_TRUE@am__append_40 = uninstall-mpost-links -@MP_TRUE@@WIN32_FALSE@am__append_41 = mpost$(EXEEXT):dvitomp mpost$(EXEEXT):mfplain +@MP_TRUE@@WIN32_FALSE@am__append_41 = mpost$(EXEEXT):dvitomp \ +@MP_TRUE@@WIN32_FALSE@ mpost$(EXEEXT):mfplain \ +@MP_TRUE@@WIN32_FALSE@ mpost$(EXEEXT):r-mpost @MP_TRUE@am__append_42 = $(mp_tests) @MP_TRUE@am__append_43 = mptrap.diffs @MP_TRUE@am__append_44 = mptrap-clean @@ -174,12 +178,14 @@ TESTS = tangle.test $(am__EXEEXT_43) ctiedir/ctie.test \ @PMP_TRUE@@WIN32_TRUE@am__append_46 = call_pmpost @PMP_TRUE@@WIN32_TRUE@am__append_47 = install-pmpost-links @PMP_TRUE@@WIN32_TRUE@am__append_48 = uninstall-pmpost-links -@PMP_TRUE@@WIN32_FALSE@am__append_49 = pmpost$(EXEEXT):pdvitomp +@PMP_TRUE@@WIN32_FALSE@am__append_49 = pmpost$(EXEEXT):pdvitomp \ +@PMP_TRUE@@WIN32_FALSE@ pmpost$(EXEEXT):r-pmpost @UPMP_TRUE@am__append_50 = upmpost @UPMP_TRUE@@WIN32_TRUE@am__append_51 = call_upmpost @UPMP_TRUE@@WIN32_TRUE@am__append_52 = install-upmpost-links @UPMP_TRUE@@WIN32_TRUE@am__append_53 = uninstall-upmpost-links -@UPMP_TRUE@@WIN32_FALSE@am__append_54 = upmpost$(EXEEXT):updvitomp +@UPMP_TRUE@@WIN32_FALSE@am__append_54 = upmpost$(EXEEXT):updvitomp \ +@UPMP_TRUE@@WIN32_FALSE@ upmpost$(EXEEXT):r-upmpost @PMP_TRUE@am__append_55 = $(pmpost_tests) @UPMP_TRUE@am__append_56 = $(upmpost_tests) @ETEX_TRUE@am__append_57 = etex @@ -218,130 +224,138 @@ TESTS = tangle.test $(am__EXEEXT_43) ctiedir/ctie.test \ @LUATEX_TRUE@@WIN32_TRUE@am__append_86 = install-luatex-links @LUATEX_TRUE@@WIN32_TRUE@am__append_87 = uninstall-luatex-links @LUATEX_TRUE@@WIN32_FALSE@am__append_88 = luatex$(EXEEXT):texlua luatex$(EXEEXT):texluac -@LUATEX53_TRUE@am__append_89 = luatex53 -@LUATEX53_TRUE@@WIN32_TRUE@am__append_90 = call_luatex53 -@LUATEX53_TRUE@@WIN32_TRUE@am__append_91 = install-luatex53-links -@LUATEX53_TRUE@@WIN32_TRUE@am__append_92 = uninstall-luatex53-links -@LUATEX53_TRUE@@WIN32_FALSE@am__append_93 = luatex53$(EXEEXT):texlua53 -@LUAJITTEX_TRUE@am__append_94 = luajittex -@LUAJITTEX_TRUE@@WIN32_TRUE@am__append_95 = call_luajittex -@LUAJITTEX_TRUE@@WIN32_TRUE@am__append_96 = install-luajittex-links -@LUAJITTEX_TRUE@@WIN32_TRUE@am__append_97 = uninstall-luajittex-links -@LUAJITTEX_TRUE@@WIN32_FALSE@am__append_98 = luajittex$(EXEEXT):texluajit luajittex$(EXEEXT):texluajitc -@LUATEX_TRUE@am__append_99 = $(luatex_tests) -@LUATEX53_TRUE@am__append_100 = $(luatex_tests) -@LUAJITTEX_TRUE@am__append_101 = $(luajittex_tests) -@XETEX_TRUE@am__append_102 = xetex -@XETEX_MACOSX_TRUE@am__append_103 = -DXETEX_MAC -@XETEX_MACOSX_TRUE@am__append_104 = -std=c++11 -@XETEX_MACOSX_FALSE@am__append_105 = $(FONTCONFIG_INCLUDES) -@XETEX_MACOSX_FALSE@am__append_106 = $(FONTCONFIG_LIBS) -@XETEX_MACOSX_TRUE@am__append_107 = \ + +#if LUATEX53 +#bin_PROGRAMS += luatex53 +#if WIN32 +#noinst_PROGRAMS += call_luatex53 +#install_exe_links += install-luatex53-links +#uninstall_exe_links += uninstall-luatex53-links +#else !WIN32 +#bin_links += luatex53$(EXEEXT):texlua53 +#endif !WIN32 +#endif LUATEX53 +@LUAJITTEX_TRUE@am__append_89 = luajittex +@LUAJITTEX_TRUE@@WIN32_TRUE@am__append_90 = call_luajittex +@LUAJITTEX_TRUE@@WIN32_TRUE@am__append_91 = install-luajittex-links +@LUAJITTEX_TRUE@@WIN32_TRUE@am__append_92 = uninstall-luajittex-links +@LUAJITTEX_TRUE@@WIN32_FALSE@am__append_93 = luajittex$(EXEEXT):texluajit luajittex$(EXEEXT):texluajitc +@LUATEX_TRUE@am__append_94 = $(luatex_tests) +#if LUATEX53 +#TESTS += $(luatex_tests) +#endif LUATEX53 +@LUAJITTEX_TRUE@am__append_95 = $(luajittex_tests) +@XETEX_TRUE@am__append_96 = xetex +@XETEX_MACOSX_TRUE@am__append_97 = -DXETEX_MAC +@XETEX_MACOSX_TRUE@am__append_98 = -std=c++11 +@XETEX_MACOSX_FALSE@am__append_99 = $(FONTCONFIG_INCLUDES) +@XETEX_MACOSX_FALSE@am__append_100 = $(FONTCONFIG_LIBS) +@XETEX_MACOSX_TRUE@am__append_101 = \ @XETEX_MACOSX_TRUE@ xetexdir/XeTeXFontInst_Mac.cpp \ @XETEX_MACOSX_TRUE@ xetexdir/XeTeXFontInst_Mac.h \ @XETEX_MACOSX_TRUE@ xetexdir/XeTeXFontMgr_Mac.mm \ @XETEX_MACOSX_TRUE@ xetexdir/XeTeXFontMgr_Mac.h \ @XETEX_MACOSX_TRUE@ xetexdir/XeTeX_mac.c -@XETEX_MACOSX_FALSE@am__append_108 = \ +@XETEX_MACOSX_FALSE@am__append_102 = \ @XETEX_MACOSX_FALSE@ xetexdir/XeTeXFontMgr_FC.cpp \ @XETEX_MACOSX_FALSE@ xetexdir/XeTeXFontMgr_FC.h -@XETEX_TRUE@am__append_109 = $(xetex_tests) -@OTANGLE_TRUE@am__append_110 = $(omegaware_programs) -@OTANGLE_TRUE@am__append_111 = $(OTANGLE_tests) $(OMFONTS_tests) -@ALEPH_TRUE@am__append_112 = aleph -@ALEPH_TRUE@am__append_113 = $(aleph_tests) -@SYNCTEX_TRUE@am__append_114 = synctex -@SYNCTEX_TRUE@am__append_115 = $(LTLIBSYNCTEX) -@SYNCTEX_TRUE@am__append_116 = $(LIBSYNCTEX) -@MINGW32_TRUE@am__append_117 = -lshlwapi -@MINGW32_TRUE@am__append_118 = -lshlwapi -@TEX_SYNCTEX_TRUE@am__append_119 = -I$(srcdir)/synctexdir \ +@XETEX_TRUE@am__append_103 = $(xetex_tests) +@OTANGLE_TRUE@am__append_104 = $(omegaware_programs) +@OTANGLE_TRUE@am__append_105 = $(OTANGLE_tests) $(OMFONTS_tests) +@ALEPH_TRUE@am__append_106 = aleph +@ALEPH_TRUE@am__append_107 = $(aleph_tests) +@SYNCTEX_TRUE@am__append_108 = synctex +@SYNCTEX_TRUE@am__append_109 = $(LTLIBSYNCTEX) +@SYNCTEX_TRUE@am__append_110 = $(LIBSYNCTEX) +@MINGW32_TRUE@am__append_111 = -lshlwapi +@MINGW32_TRUE@am__append_112 = -lshlwapi +@TEX_SYNCTEX_TRUE@am__append_113 = -I$(srcdir)/synctexdir \ @TEX_SYNCTEX_TRUE@ $(ZLIB_INCLUDES) -D__SyncTeX__ \ @TEX_SYNCTEX_TRUE@ -DSYNCTEX_ENGINE_H=\"synctex-tex.h\" -@TEX_SYNCTEX_TRUE@am__append_120 = $(ZLIB_LIBS) -@TEX_SYNCTEX_TRUE@am__append_121 = $(ZLIB_DEPEND) -@TEX_SYNCTEX_TRUE@am__append_122 = \ +@TEX_SYNCTEX_TRUE@am__append_114 = $(ZLIB_LIBS) +@TEX_SYNCTEX_TRUE@am__append_115 = $(ZLIB_DEPEND) +@TEX_SYNCTEX_TRUE@am__append_116 = \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex.c \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex.h \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex-common.h \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex-tex.h -@ETEX_SYNCTEX_TRUE@am__append_123 = -I$(srcdir)/synctexdir \ +@ETEX_SYNCTEX_TRUE@am__append_117 = -I$(srcdir)/synctexdir \ @ETEX_SYNCTEX_TRUE@ $(ZLIB_INCLUDES) -D__SyncTeX__ \ @ETEX_SYNCTEX_TRUE@ -DSYNCTEX_ENGINE_H=\"synctex-etex.h\" -@ETEX_SYNCTEX_TRUE@am__append_124 = $(ZLIB_LIBS) -@ETEX_SYNCTEX_TRUE@am__append_125 = $(ZLIB_DEPEND) -@ETEX_SYNCTEX_TRUE@am__append_126 = \ +@ETEX_SYNCTEX_TRUE@am__append_118 = $(ZLIB_LIBS) +@ETEX_SYNCTEX_TRUE@am__append_119 = $(ZLIB_DEPEND) +@ETEX_SYNCTEX_TRUE@am__append_120 = \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex.c \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex.h \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex-common.h \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex-etex.h -@PTEX_SYNCTEX_TRUE@am__append_127 = -I$(srcdir)/synctexdir \ +@PTEX_SYNCTEX_TRUE@am__append_121 = -I$(srcdir)/synctexdir \ @PTEX_SYNCTEX_TRUE@ $(ZLIB_INCLUDES) -D__SyncTeX__ \ @PTEX_SYNCTEX_TRUE@ -DSYNCTEX_ENGINE_H=\"synctex-ptex.h\" -@PTEX_SYNCTEX_TRUE@am__append_128 = $(ZLIB_LIBS) -@PTEX_SYNCTEX_TRUE@am__append_129 = $(ZLIB_DEPEND) -@PTEX_SYNCTEX_TRUE@am__append_130 = \ +@PTEX_SYNCTEX_TRUE@am__append_122 = $(ZLIB_LIBS) +@PTEX_SYNCTEX_TRUE@am__append_123 = $(ZLIB_DEPEND) +@PTEX_SYNCTEX_TRUE@am__append_124 = \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex.c \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex.h \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex-common.h \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex-ptex.h -@UPTEX_SYNCTEX_TRUE@am__append_131 = -I$(srcdir)/synctexdir \ +@UPTEX_SYNCTEX_TRUE@am__append_125 = -I$(srcdir)/synctexdir \ @UPTEX_SYNCTEX_TRUE@ $(ZLIB_INCLUDES) -D__SyncTeX__ \ @UPTEX_SYNCTEX_TRUE@ -DSYNCTEX_ENGINE_H=\"synctex-uptex.h\" -@UPTEX_SYNCTEX_TRUE@am__append_132 = $(ZLIB_LIBS) -@UPTEX_SYNCTEX_TRUE@am__append_133 = $(ZLIB_DEPEND) -@UPTEX_SYNCTEX_TRUE@am__append_134 = \ +@UPTEX_SYNCTEX_TRUE@am__append_126 = $(ZLIB_LIBS) +@UPTEX_SYNCTEX_TRUE@am__append_127 = $(ZLIB_DEPEND) +@UPTEX_SYNCTEX_TRUE@am__append_128 = \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex.c \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex.h \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-common.h \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-uptex.h -@EPTEX_SYNCTEX_TRUE@am__append_135 = -I$(srcdir)/synctexdir \ +@EPTEX_SYNCTEX_TRUE@am__append_129 = -I$(srcdir)/synctexdir \ @EPTEX_SYNCTEX_TRUE@ $(ZLIB_INCLUDES) -D__SyncTeX__ \ @EPTEX_SYNCTEX_TRUE@ -DSYNCTEX_ENGINE_H=\"synctex-eptex.h\" -@EPTEX_SYNCTEX_TRUE@am__append_136 = $(ZLIB_LIBS) -@EPTEX_SYNCTEX_TRUE@am__append_137 = $(ZLIB_DEPEND) -@EPTEX_SYNCTEX_TRUE@am__append_138 = \ +@EPTEX_SYNCTEX_TRUE@am__append_130 = $(ZLIB_LIBS) +@EPTEX_SYNCTEX_TRUE@am__append_131 = $(ZLIB_DEPEND) +@EPTEX_SYNCTEX_TRUE@am__append_132 = \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex.c \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex.h \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-common.h \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-eptex.h -@EUPTEX_SYNCTEX_TRUE@am__append_139 = -I$(srcdir)/synctexdir \ +@EUPTEX_SYNCTEX_TRUE@am__append_133 = -I$(srcdir)/synctexdir \ @EUPTEX_SYNCTEX_TRUE@ $(ZLIB_INCLUDES) -D__SyncTeX__ \ @EUPTEX_SYNCTEX_TRUE@ -DSYNCTEX_ENGINE_H=\"synctex-euptex.h\" -@EUPTEX_SYNCTEX_TRUE@am__append_140 = $(ZLIB_LIBS) -@EUPTEX_SYNCTEX_TRUE@am__append_141 = $(ZLIB_DEPEND) -@EUPTEX_SYNCTEX_TRUE@am__append_142 = \ +@EUPTEX_SYNCTEX_TRUE@am__append_134 = $(ZLIB_LIBS) +@EUPTEX_SYNCTEX_TRUE@am__append_135 = $(ZLIB_DEPEND) +@EUPTEX_SYNCTEX_TRUE@am__append_136 = \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex.c \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex.h \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-common.h \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-euptex.h -@PDFTEX_SYNCTEX_TRUE@am__append_143 = -I$(srcdir)/synctexdir \ +@PDFTEX_SYNCTEX_TRUE@am__append_137 = -I$(srcdir)/synctexdir \ @PDFTEX_SYNCTEX_TRUE@ -D__SyncTeX__ \ @PDFTEX_SYNCTEX_TRUE@ -DSYNCTEX_ENGINE_H=\"synctex-pdftex.h\" -@PDFTEX_SYNCTEX_TRUE@am__append_144 = \ +@PDFTEX_SYNCTEX_TRUE@am__append_138 = \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex.c \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex.h \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-common.h \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-pdftex.h -@XETEX_SYNCTEX_TRUE@am__append_145 = -I$(srcdir)/synctexdir \ +@XETEX_SYNCTEX_TRUE@am__append_139 = -I$(srcdir)/synctexdir \ @XETEX_SYNCTEX_TRUE@ -D__SyncTeX__ \ @XETEX_SYNCTEX_TRUE@ -DSYNCTEX_ENGINE_H=\"synctex-xetex.h\" -@XETEX_SYNCTEX_TRUE@am__append_146 = \ +@XETEX_SYNCTEX_TRUE@am__append_140 = \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex.c \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex.h \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex-common.h \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex-xetex.h -@SYNCTEX_TRUE@am__append_147 = $(synctex_tests) +@SYNCTEX_TRUE@am__append_141 = $(synctex_tests) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/web2c-disable.m4 \ @@ -435,25 +449,23 @@ am__EXEEXT_4 = odvicopy$(EXEEXT) odvitype$(EXEEXT) otangle$(EXEEXT) \ @PDFTEX_TRUE@am__EXEEXT_24 = pdftex$(EXEEXT) ttf2afm$(EXEEXT) \ @PDFTEX_TRUE@ pdftosrc$(EXEEXT) @LUATEX_TRUE@am__EXEEXT_25 = luatex$(EXEEXT) -@LUATEX53_TRUE@am__EXEEXT_26 = luatex53$(EXEEXT) -@LUAJITTEX_TRUE@am__EXEEXT_27 = luajittex$(EXEEXT) -@XETEX_TRUE@am__EXEEXT_28 = xetex$(EXEEXT) -@OTANGLE_TRUE@am__EXEEXT_29 = $(am__EXEEXT_4) -@ALEPH_TRUE@am__EXEEXT_30 = aleph$(EXEEXT) -@SYNCTEX_TRUE@am__EXEEXT_31 = synctex$(EXEEXT) +@LUAJITTEX_TRUE@am__EXEEXT_26 = luajittex$(EXEEXT) +@XETEX_TRUE@am__EXEEXT_27 = xetex$(EXEEXT) +@OTANGLE_TRUE@am__EXEEXT_28 = $(am__EXEEXT_4) +@ALEPH_TRUE@am__EXEEXT_29 = aleph$(EXEEXT) +@SYNCTEX_TRUE@am__EXEEXT_30 = synctex$(EXEEXT) am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libdir)" \ "$(DESTDIR)$(libdir)" "$(DESTDIR)$(man1dir)" \ "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(pkgconfigdir)" \ "$(DESTDIR)$(syncincludedir)" -@MF_TRUE@@WIN32_TRUE@am__EXEEXT_32 = call_mf$(EXEEXT) -@MFLUA_TRUE@@WIN32_TRUE@am__EXEEXT_33 = call_mflua$(EXEEXT) -@MFLUAJIT_TRUE@@WIN32_TRUE@am__EXEEXT_34 = call_mfluajit$(EXEEXT) -@MP_TRUE@@WIN32_TRUE@am__EXEEXT_35 = call_mpost$(EXEEXT) -@PMP_TRUE@@WIN32_TRUE@am__EXEEXT_36 = call_pmpost$(EXEEXT) -@UPMP_TRUE@@WIN32_TRUE@am__EXEEXT_37 = call_upmpost$(EXEEXT) -@LUATEX_TRUE@@WIN32_TRUE@am__EXEEXT_38 = call_luatex$(EXEEXT) -@LUATEX53_TRUE@@WIN32_TRUE@am__EXEEXT_39 = call_luatex53$(EXEEXT) -@LUAJITTEX_TRUE@@WIN32_TRUE@am__EXEEXT_40 = call_luajittex$(EXEEXT) +@MF_TRUE@@WIN32_TRUE@am__EXEEXT_31 = call_mf$(EXEEXT) +@MFLUA_TRUE@@WIN32_TRUE@am__EXEEXT_32 = call_mflua$(EXEEXT) +@MFLUAJIT_TRUE@@WIN32_TRUE@am__EXEEXT_33 = call_mfluajit$(EXEEXT) +@MP_TRUE@@WIN32_TRUE@am__EXEEXT_34 = call_mpost$(EXEEXT) +@PMP_TRUE@@WIN32_TRUE@am__EXEEXT_35 = call_pmpost$(EXEEXT) +@UPMP_TRUE@@WIN32_TRUE@am__EXEEXT_36 = call_upmpost$(EXEEXT) +@LUATEX_TRUE@@WIN32_TRUE@am__EXEEXT_37 = call_luatex$(EXEEXT) +@LUAJITTEX_TRUE@@WIN32_TRUE@am__EXEEXT_38 = call_luajittex$(EXEEXT) PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ @@ -539,208 +551,17 @@ libkanji_a_AR = $(AR) $(ARFLAGS) libkanji_a_LIBADD = am_libkanji_a_OBJECTS = ptexdir/libkanji_a-kanji.$(OBJEXT) libkanji_a_OBJECTS = $(am_libkanji_a_OBJECTS) -liblua53ffi_a_AR = $(AR) $(ARFLAGS) -liblua53ffi_a_LIBADD = -am__objects_1 = luatexdir/luaffi/liblua53ffi_a-call.$(OBJEXT) \ - luatexdir/luaffi/liblua53ffi_a-ctype.$(OBJEXT) \ - luatexdir/luaffi/liblua53ffi_a-ffi.$(OBJEXT) \ - luatexdir/luaffi/liblua53ffi_a-parser.$(OBJEXT) -nodist_liblua53ffi_a_OBJECTS = $(am__objects_1) -liblua53ffi_a_OBJECTS = $(nodist_liblua53ffi_a_OBJECTS) -liblua53misc_a_AR = $(AR) $(ARFLAGS) -liblua53misc_a_LIBADD = -am__objects_2 = \ - luatexdir/luafilesystem/src/liblua53misc_a-lfs.$(OBJEXT) \ - luatexdir/luamd5/liblua53misc_a-md5.$(OBJEXT) \ - luatexdir/luamd5/liblua53misc_a-md5lib.$(OBJEXT) \ - luatexdir/luapeg/liblua53misc_a-lpeg.$(OBJEXT) \ - luatexdir/luazip/src/liblua53misc_a-luazip.$(OBJEXT) \ - luatexdir/luazlib/liblua53misc_a-lgzip.$(OBJEXT) \ - luatexdir/luazlib/liblua53misc_a-lzlib.$(OBJEXT) \ - luatexdir/slnunicode/liblua53misc_a-slnunico.$(OBJEXT) -nodist_liblua53misc_a_OBJECTS = $(am__objects_2) -liblua53misc_a_OBJECTS = $(nodist_liblua53misc_a_OBJECTS) -liblua53pplib_a_AR = $(AR) $(ARFLAGS) -liblua53pplib_a_LIBADD = -am__objects_3 = luatexdir/luapplib/liblua53pplib_a-pparray.$(OBJEXT) \ - luatexdir/luapplib/liblua53pplib_a-ppcrypt.$(OBJEXT) \ - luatexdir/luapplib/liblua53pplib_a-ppdict.$(OBJEXT) \ - luatexdir/luapplib/liblua53pplib_a-ppheap.$(OBJEXT) \ - luatexdir/luapplib/liblua53pplib_a-ppload.$(OBJEXT) \ - luatexdir/luapplib/liblua53pplib_a-ppstream.$(OBJEXT) \ - luatexdir/luapplib/liblua53pplib_a-ppxref.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utilflate.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utilfpred.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utiliof.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utillog.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utillzw.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utilmd5.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utilmem.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utilnumber.$(OBJEXT) \ - luatexdir/luapplib/util/liblua53pplib_a-utilsha.$(OBJEXT) -nodist_liblua53pplib_a_OBJECTS = $(am__objects_3) -liblua53pplib_a_OBJECTS = $(nodist_liblua53pplib_a_OBJECTS) -liblua53socket_a_AR = $(AR) $(ARFLAGS) -liblua53socket_a_LIBADD = -am__objects_4 = \ - luatexdir/luasocket/src/liblua53socket_a-auxiliar.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-buffer.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-compat.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-except.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-inet.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-io.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-lua_preload.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-luasocket.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-mime.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-options.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-select.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-serial.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-socket.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-tcp.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-timeout.$(OBJEXT) \ - luatexdir/luasocket/src/liblua53socket_a-udp.$(OBJEXT) -nodist_liblua53socket_a_OBJECTS = $(am__objects_4) -liblua53socket_a_OBJECTS = $(nodist_liblua53socket_a_OBJECTS) -liblua53tex_a_AR = $(AR) $(ARFLAGS) -liblua53tex_a_LIBADD = -dist_liblua53tex_a_OBJECTS = \ - luatexdir/lua/liblua53tex_a-lstrlibext.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-helpers.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-texluac.$(OBJEXT) -am__objects_5 = \ - luatexdir/luafontloader/src/liblua53tex_a-ffdummies.$(OBJEXT) \ - luatexdir/luafontloader/src/liblua53tex_a-luafflib.$(OBJEXT) \ - luatexdir/dvi/liblua53tex_a-dvigen.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-dofont.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-luafont.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-mapfile.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-pkin.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-sfnt.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-texfont.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-tfmofm.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-tounicode.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-tt_glyf.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-tt_table.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-vfovf.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-vfpacket.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-writecff.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-writeenc.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-writefont.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-writet1.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-writet3.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-writettf.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-writetype0.$(OBJEXT) \ - luatexdir/font/liblua53tex_a-writetype2.$(OBJEXT) \ - luatexdir/image/liblua53tex_a-pdftoepdf.$(OBJEXT) \ - luatexdir/image/liblua53tex_a-writeimg.$(OBJEXT) \ - luatexdir/image/liblua53tex_a-writejbig2.$(OBJEXT) \ - luatexdir/image/liblua53tex_a-writejp2.$(OBJEXT) \ - luatexdir/image/liblua53tex_a-writejpg.$(OBJEXT) \ - luatexdir/image/liblua53tex_a-writepng.$(OBJEXT) \ - luatexdir/lang/liblua53tex_a-hnjalloc.$(OBJEXT) \ - luatexdir/lang/liblua53tex_a-hyphen.$(OBJEXT) \ - luatexdir/lang/liblua53tex_a-texlang.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lcallbacklib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lfontlib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-limglib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lpdfelib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lpdfscannerlib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lkpselib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-llanglib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-llualib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lnodelib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-liolibext.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-loslibext.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lpdflib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lstatslib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-ltexiolib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-ltexlib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-lnewtokenlib.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-luatex-core.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-helpers.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-luainit.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-luanode.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-luastuff.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-luatoken.$(OBJEXT) \ - luatexdir/lua/liblua53tex_a-mplibstuff.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfaction.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfannot.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfcolorstack.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfdest.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdffont.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfgen.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfglyph.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfimage.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdflink.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdflistout.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfliteral.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfobj.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfoutline.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfpage.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfpagetree.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfrule.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfsaverestore.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfsetmatrix.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfshipout.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdftables.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfthread.$(OBJEXT) \ - luatexdir/pdf/liblua53tex_a-pdfxform.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-backend.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-align.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-arithmetic.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-buildpage.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-commands.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-conditional.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-directions.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-dumpdata.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-equivalents.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-errors.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-expand.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-extensions.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-filename.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-inputstack.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-linebreak.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-mainbody.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-maincontrol.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-mathcodes.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-memoryword.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-mlist.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-nesting.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-packaging.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-postlinebreak.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-primitive.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-printing.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-scanning.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-stringpool.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-texdeffont.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-texfileio.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-texmath.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-texnodes.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-textcodes.$(OBJEXT) \ - luatexdir/tex/liblua53tex_a-textoken.$(OBJEXT) \ - luatexdir/utils/liblua53tex_a-avl.$(OBJEXT) \ - luatexdir/utils/liblua53tex_a-avlstuff.$(OBJEXT) \ - luatexdir/utils/liblua53tex_a-managed-sa.$(OBJEXT) \ - luatexdir/utils/liblua53tex_a-unistring.$(OBJEXT) \ - luatexdir/utils/liblua53tex_a-utils.$(OBJEXT) \ - synctexdir/liblua53tex_a-synctex.$(OBJEXT) -am__objects_6 = -nodist_liblua53tex_a_OBJECTS = $(am__objects_5) $(am__objects_6) -liblua53tex_a_OBJECTS = $(dist_liblua53tex_a_OBJECTS) \ - $(nodist_liblua53tex_a_OBJECTS) libluaffi_a_AR = $(AR) $(ARFLAGS) libluaffi_a_LIBADD = -am__objects_7 = luatexdir/luaffi/libluaffi_a-call.$(OBJEXT) \ +am__objects_1 = luatexdir/luaffi/libluaffi_a-call.$(OBJEXT) \ luatexdir/luaffi/libluaffi_a-ctype.$(OBJEXT) \ luatexdir/luaffi/libluaffi_a-ffi.$(OBJEXT) \ luatexdir/luaffi/libluaffi_a-parser.$(OBJEXT) -nodist_libluaffi_a_OBJECTS = $(am__objects_7) +nodist_libluaffi_a_OBJECTS = $(am__objects_1) libluaffi_a_OBJECTS = $(nodist_libluaffi_a_OBJECTS) libluajitmisc_a_AR = $(AR) $(ARFLAGS) libluajitmisc_a_LIBADD = -am__objects_8 = \ +am__objects_2 = \ luatexdir/luafilesystem/src/libluajitmisc_a-lfs.$(OBJEXT) \ luatexdir/luamd5/libluajitmisc_a-md5.$(OBJEXT) \ luatexdir/luamd5/libluajitmisc_a-md5lib.$(OBJEXT) \ @@ -749,16 +570,19 @@ am__objects_8 = \ luatexdir/luazlib/libluajitmisc_a-lgzip.$(OBJEXT) \ luatexdir/luazlib/libluajitmisc_a-lzlib.$(OBJEXT) \ luatexdir/slnunicode/libluajitmisc_a-slnunico.$(OBJEXT) -nodist_libluajitmisc_a_OBJECTS = $(am__objects_8) +nodist_libluajitmisc_a_OBJECTS = $(am__objects_2) libluajitmisc_a_OBJECTS = $(nodist_libluajitmisc_a_OBJECTS) libluajitpplib_a_AR = $(AR) $(ARFLAGS) libluajitpplib_a_LIBADD = -am__objects_9 = luatexdir/luapplib/libluajitpplib_a-pparray.$(OBJEXT) \ +am__objects_3 = luatexdir/luapplib/libluajitpplib_a-pparray.$(OBJEXT) \ luatexdir/luapplib/libluajitpplib_a-ppcrypt.$(OBJEXT) \ luatexdir/luapplib/libluajitpplib_a-ppdict.$(OBJEXT) \ luatexdir/luapplib/libluajitpplib_a-ppheap.$(OBJEXT) \ luatexdir/luapplib/libluajitpplib_a-ppload.$(OBJEXT) \ luatexdir/luapplib/libluajitpplib_a-ppstream.$(OBJEXT) \ + luatexdir/luapplib/libluajitpplib_a-pptest1.$(OBJEXT) \ + luatexdir/luapplib/libluajitpplib_a-pptest2.$(OBJEXT) \ + luatexdir/luapplib/libluajitpplib_a-pptest3.$(OBJEXT) \ luatexdir/luapplib/libluajitpplib_a-ppxref.$(OBJEXT) \ luatexdir/luapplib/util/libluajitpplib_a-utilbasexx.$(OBJEXT) \ luatexdir/luapplib/util/libluajitpplib_a-utilcrypt.$(OBJEXT) \ @@ -771,11 +595,11 @@ am__objects_9 = luatexdir/luapplib/libluajitpplib_a-pparray.$(OBJEXT) \ luatexdir/luapplib/util/libluajitpplib_a-utilmem.$(OBJEXT) \ luatexdir/luapplib/util/libluajitpplib_a-utilnumber.$(OBJEXT) \ luatexdir/luapplib/util/libluajitpplib_a-utilsha.$(OBJEXT) -nodist_libluajitpplib_a_OBJECTS = $(am__objects_9) +nodist_libluajitpplib_a_OBJECTS = $(am__objects_3) libluajitpplib_a_OBJECTS = $(nodist_libluajitpplib_a_OBJECTS) libluajitsocket_a_AR = $(AR) $(ARFLAGS) libluajitsocket_a_LIBADD = -am__objects_10 = \ +am__objects_4 = \ luatexdir/luasocket/src/libluajitsocket_a-auxiliar.$(OBJEXT) \ luatexdir/luasocket/src/libluajitsocket_a-buffer.$(OBJEXT) \ luatexdir/luasocket/src/libluajitsocket_a-compat.$(OBJEXT) \ @@ -792,14 +616,14 @@ am__objects_10 = \ luatexdir/luasocket/src/libluajitsocket_a-tcp.$(OBJEXT) \ luatexdir/luasocket/src/libluajitsocket_a-timeout.$(OBJEXT) \ luatexdir/luasocket/src/libluajitsocket_a-udp.$(OBJEXT) -nodist_libluajitsocket_a_OBJECTS = $(am__objects_10) +nodist_libluajitsocket_a_OBJECTS = $(am__objects_4) libluajitsocket_a_OBJECTS = $(nodist_libluajitsocket_a_OBJECTS) libluajittex_a_AR = $(AR) $(ARFLAGS) libluajittex_a_LIBADD = dist_libluajittex_a_OBJECTS = \ luatexdir/lua/libluajittex_a-lstrlibext.$(OBJEXT) \ luatexdir/lua/libluajittex_a-texluajitc.$(OBJEXT) -am__objects_11 = luatexdir/luafontloader/src/libluajittex_a-ffdummies.$(OBJEXT) \ +am__objects_5 = luatexdir/luafontloader/src/libluajittex_a-ffdummies.$(OBJEXT) \ luatexdir/luafontloader/src/libluajittex_a-luafflib.$(OBJEXT) \ luatexdir/dvi/libluajittex_a-dvigen.$(OBJEXT) \ luatexdir/font/libluajittex_a-dofont.$(OBJEXT) \ @@ -915,12 +739,13 @@ am__objects_11 = luatexdir/luafontloader/src/libluajittex_a-ffdummies.$(OBJEXT) luatexdir/utils/libluajittex_a-unistring.$(OBJEXT) \ luatexdir/utils/libluajittex_a-utils.$(OBJEXT) \ synctexdir/libluajittex_a-synctex.$(OBJEXT) -nodist_libluajittex_a_OBJECTS = $(am__objects_11) $(am__objects_6) +am__objects_6 = +nodist_libluajittex_a_OBJECTS = $(am__objects_5) $(am__objects_6) libluajittex_a_OBJECTS = $(dist_libluajittex_a_OBJECTS) \ $(nodist_libluajittex_a_OBJECTS) libluamisc_a_AR = $(AR) $(ARFLAGS) libluamisc_a_LIBADD = -am__objects_12 = \ +am__objects_7 = \ luatexdir/luafilesystem/src/libluamisc_a-lfs.$(OBJEXT) \ luatexdir/luamd5/libluamisc_a-md5.$(OBJEXT) \ luatexdir/luamd5/libluamisc_a-md5lib.$(OBJEXT) \ @@ -929,16 +754,19 @@ am__objects_12 = \ luatexdir/luazlib/libluamisc_a-lgzip.$(OBJEXT) \ luatexdir/luazlib/libluamisc_a-lzlib.$(OBJEXT) \ luatexdir/slnunicode/libluamisc_a-slnunico.$(OBJEXT) -nodist_libluamisc_a_OBJECTS = $(am__objects_12) +nodist_libluamisc_a_OBJECTS = $(am__objects_7) libluamisc_a_OBJECTS = $(nodist_libluamisc_a_OBJECTS) libluapplib_a_AR = $(AR) $(ARFLAGS) libluapplib_a_LIBADD = -am__objects_13 = luatexdir/luapplib/libluapplib_a-pparray.$(OBJEXT) \ +am__objects_8 = luatexdir/luapplib/libluapplib_a-pparray.$(OBJEXT) \ luatexdir/luapplib/libluapplib_a-ppcrypt.$(OBJEXT) \ luatexdir/luapplib/libluapplib_a-ppdict.$(OBJEXT) \ luatexdir/luapplib/libluapplib_a-ppheap.$(OBJEXT) \ luatexdir/luapplib/libluapplib_a-ppload.$(OBJEXT) \ luatexdir/luapplib/libluapplib_a-ppstream.$(OBJEXT) \ + luatexdir/luapplib/libluapplib_a-pptest1.$(OBJEXT) \ + luatexdir/luapplib/libluapplib_a-pptest2.$(OBJEXT) \ + luatexdir/luapplib/libluapplib_a-pptest3.$(OBJEXT) \ luatexdir/luapplib/libluapplib_a-ppxref.$(OBJEXT) \ luatexdir/luapplib/util/libluapplib_a-utilbasexx.$(OBJEXT) \ luatexdir/luapplib/util/libluapplib_a-utilcrypt.$(OBJEXT) \ @@ -951,11 +779,11 @@ am__objects_13 = luatexdir/luapplib/libluapplib_a-pparray.$(OBJEXT) \ luatexdir/luapplib/util/libluapplib_a-utilmem.$(OBJEXT) \ luatexdir/luapplib/util/libluapplib_a-utilnumber.$(OBJEXT) \ luatexdir/luapplib/util/libluapplib_a-utilsha.$(OBJEXT) -nodist_libluapplib_a_OBJECTS = $(am__objects_13) +nodist_libluapplib_a_OBJECTS = $(am__objects_8) libluapplib_a_OBJECTS = $(nodist_libluapplib_a_OBJECTS) libluasocket_a_AR = $(AR) $(ARFLAGS) libluasocket_a_LIBADD = -am__objects_14 = \ +am__objects_9 = \ luatexdir/luasocket/src/libluasocket_a-auxiliar.$(OBJEXT) \ luatexdir/luasocket/src/libluasocket_a-buffer.$(OBJEXT) \ luatexdir/luasocket/src/libluasocket_a-compat.$(OBJEXT) \ @@ -972,7 +800,7 @@ am__objects_14 = \ luatexdir/luasocket/src/libluasocket_a-tcp.$(OBJEXT) \ luatexdir/luasocket/src/libluasocket_a-timeout.$(OBJEXT) \ luatexdir/luasocket/src/libluasocket_a-udp.$(OBJEXT) -nodist_libluasocket_a_OBJECTS = $(am__objects_14) +nodist_libluasocket_a_OBJECTS = $(am__objects_9) libluasocket_a_OBJECTS = $(nodist_libluasocket_a_OBJECTS) libluatex_a_AR = $(AR) $(ARFLAGS) libluatex_a_LIBADD = @@ -980,7 +808,7 @@ dist_libluatex_a_OBJECTS = \ luatexdir/lua/libluatex_a-lstrlibext.$(OBJEXT) \ luatexdir/lua/libluatex_a-helpers.$(OBJEXT) \ luatexdir/lua/libluatex_a-texluac.$(OBJEXT) -am__objects_15 = \ +am__objects_10 = \ luatexdir/luafontloader/src/libluatex_a-ffdummies.$(OBJEXT) \ luatexdir/luafontloader/src/libluatex_a-luafflib.$(OBJEXT) \ luatexdir/dvi/libluatex_a-dvigen.$(OBJEXT) \ @@ -1097,7 +925,7 @@ am__objects_15 = \ luatexdir/utils/libluatex_a-unistring.$(OBJEXT) \ luatexdir/utils/libluatex_a-utils.$(OBJEXT) \ synctexdir/libluatex_a-synctex.$(OBJEXT) -nodist_libluatex_a_OBJECTS = $(am__objects_15) $(am__objects_6) +nodist_libluatex_a_OBJECTS = $(am__objects_10) $(am__objects_6) libluatex_a_OBJECTS = $(dist_libluatex_a_OBJECTS) \ $(nodist_libluatex_a_OBJECTS) libmd5_a_AR = $(AR) $(ARFLAGS) @@ -1106,16 +934,16 @@ am_libmd5_a_OBJECTS = libmd5/a-md5.$(OBJEXT) libmd5_a_OBJECTS = $(am_libmd5_a_OBJECTS) libmf_a_AR = $(AR) $(ARFLAGS) libmf_a_LIBADD = -am__objects_16 = mfini.$(OBJEXT) mf0.$(OBJEXT) -nodist_libmf_a_OBJECTS = $(am__objects_16) mf-pool.$(OBJEXT) +am__objects_11 = mfini.$(OBJEXT) mf0.$(OBJEXT) +nodist_libmf_a_OBJECTS = $(am__objects_11) mf-pool.$(OBJEXT) libmf_a_OBJECTS = $(nodist_libmf_a_OBJECTS) libmflua_a_AR = $(AR) $(ARFLAGS) libmflua_a_LIBADD = dist_libmflua_a_OBJECTS = luatexdir/lua/libmflua_a-lkpselib.$(OBJEXT) \ mfluadir/libmflua_a-mfluac.$(OBJEXT) -am__objects_17 = libmflua_a-mfluaini.$(OBJEXT) \ +am__objects_12 = libmflua_a-mfluaini.$(OBJEXT) \ libmflua_a-mflua0.$(OBJEXT) -nodist_libmflua_a_OBJECTS = $(am__objects_17) \ +nodist_libmflua_a_OBJECTS = $(am__objects_12) \ libmflua_a-mflua-pool.$(OBJEXT) libmflua_a_OBJECTS = $(dist_libmflua_a_OBJECTS) \ $(nodist_libmflua_a_OBJECTS) @@ -1124,35 +952,35 @@ libmfluajit_a_LIBADD = dist_libmfluajit_a_OBJECTS = \ luatexdir/lua/libmfluajit_a-lkpselib.$(OBJEXT) \ mfluadir/libmfluajit_a-mfluac.$(OBJEXT) -am__objects_18 = libmfluajit_a-mfluajitini.$(OBJEXT) \ +am__objects_13 = libmfluajit_a-mfluajitini.$(OBJEXT) \ libmfluajit_a-mfluajit0.$(OBJEXT) -nodist_libmfluajit_a_OBJECTS = $(am__objects_18) \ +nodist_libmfluajit_a_OBJECTS = $(am__objects_13) \ libmfluajit_a-mfluajit-pool.$(OBJEXT) libmfluajit_a_OBJECTS = $(dist_libmfluajit_a_OBJECTS) \ $(nodist_libmfluajit_a_OBJECTS) libmplibbackends_a_AR = $(AR) $(ARFLAGS) libmplibbackends_a_LIBADD = -am__objects_19 = libmplibbackends_a-pngout.$(OBJEXT) -am__objects_20 = libmplibbackends_a-svgout.$(OBJEXT) -nodist_libmplibbackends_a_OBJECTS = $(am__objects_19) \ - $(am__objects_20) +am__objects_14 = libmplibbackends_a-pngout.$(OBJEXT) +am__objects_15 = libmplibbackends_a-svgout.$(OBJEXT) +nodist_libmplibbackends_a_OBJECTS = $(am__objects_14) \ + $(am__objects_15) libmplibbackends_a_OBJECTS = $(nodist_libmplibbackends_a_OBJECTS) libmplibcore_a_AR = $(AR) $(ARFLAGS) libmplibcore_a_LIBADD = -am__objects_21 = libmplibcore_a-mp.$(OBJEXT) -am__objects_22 = libmplibcore_a-mpmath.$(OBJEXT) -am__objects_23 = libmplibcore_a-mpmathdecimal.$(OBJEXT) -am__objects_24 = libmplibcore_a-mpmathdouble.$(OBJEXT) -am__objects_25 = libmplibcore_a-mpstrings.$(OBJEXT) -am__objects_26 = libmplibcore_a-psout.$(OBJEXT) +am__objects_16 = libmplibcore_a-mp.$(OBJEXT) +am__objects_17 = libmplibcore_a-mpmath.$(OBJEXT) +am__objects_18 = libmplibcore_a-mpmathdecimal.$(OBJEXT) +am__objects_19 = libmplibcore_a-mpmathdouble.$(OBJEXT) +am__objects_20 = libmplibcore_a-mpstrings.$(OBJEXT) +am__objects_21 = libmplibcore_a-psout.$(OBJEXT) nodist_libmplibcore_a_OBJECTS = libmplibcore_a-tfmin.$(OBJEXT) \ - $(am__objects_21) $(am__objects_22) $(am__objects_23) \ - $(am__objects_24) $(am__objects_25) $(am__objects_26) + $(am__objects_16) $(am__objects_17) $(am__objects_18) \ + $(am__objects_19) $(am__objects_20) $(am__objects_21) libmplibcore_a_OBJECTS = $(nodist_libmplibcore_a_OBJECTS) libmplibextramath_a_AR = $(AR) $(ARFLAGS) libmplibextramath_a_LIBADD = -am__objects_27 = libmplibextramath_a-mpmathbinary.$(OBJEXT) -nodist_libmplibextramath_a_OBJECTS = $(am__objects_27) +am__objects_22 = libmplibextramath_a-mpmathbinary.$(OBJEXT) +nodist_libmplibextramath_a_OBJECTS = $(am__objects_22) libmplibextramath_a_OBJECTS = $(nodist_libmplibextramath_a_OBJECTS) libmputil_a_AR = $(AR) $(ARFLAGS) libmputil_a_LIBADD = @@ -1174,7 +1002,7 @@ am__libpdftex_a_SOURCES_DIST = pdftexdir/avl.c pdftexdir/avl.h \ pdftexdir/writepng.c pdftexdir/writet1.c pdftexdir/writet3.c \ pdftexdir/writettf.c pdftexdir/writettf.h pdftexdir/writezip.c \ pdftexdir/regex/regex.c pdftexdir/regex/regex.h -@MINGW32_TRUE@am__objects_28 = \ +@MINGW32_TRUE@am__objects_23 = \ @MINGW32_TRUE@ pdftexdir/regex/libpdftex_a-regex.$(OBJEXT) am_libpdftex_a_OBJECTS = pdftexdir/libpdftex_a-avl.$(OBJEXT) \ pdftexdir/libpdftex_a-avlstuff.$(OBJEXT) \ @@ -1195,13 +1023,13 @@ am_libpdftex_a_OBJECTS = pdftexdir/libpdftex_a-avl.$(OBJEXT) \ pdftexdir/libpdftex_a-writet1.$(OBJEXT) \ pdftexdir/libpdftex_a-writet3.$(OBJEXT) \ pdftexdir/libpdftex_a-writettf.$(OBJEXT) \ - pdftexdir/libpdftex_a-writezip.$(OBJEXT) $(am__objects_28) + pdftexdir/libpdftex_a-writezip.$(OBJEXT) $(am__objects_23) libpdftex_a_OBJECTS = $(am_libpdftex_a_OBJECTS) libsynctex_a_AR = $(AR) $(ARFLAGS) libsynctex_a_LIBADD = -am__objects_29 = synctexdir/libsynctex_a-synctex_parser.$(OBJEXT) \ +am__objects_24 = synctexdir/libsynctex_a-synctex_parser.$(OBJEXT) \ synctexdir/libsynctex_a-synctex_parser_utils.$(OBJEXT) -nodist_libsynctex_a_OBJECTS = $(am__objects_29) +nodist_libsynctex_a_OBJECTS = $(am__objects_24) libsynctex_a_OBJECTS = $(nodist_libsynctex_a_OBJECTS) libukanji_a_AR = $(AR) $(ARFLAGS) libukanji_a_LIBADD = @@ -1241,10 +1069,10 @@ am__libxetex_a_SOURCES_DIST = xetexdir/XeTeXFontInst.cpp \ xetexdir/XeTeXFontInst_Mac.h xetexdir/XeTeXFontMgr_Mac.mm \ xetexdir/XeTeXFontMgr_Mac.h xetexdir/XeTeX_mac.c \ xetexdir/XeTeXFontMgr_FC.cpp xetexdir/XeTeXFontMgr_FC.h -@XETEX_MACOSX_TRUE@am__objects_30 = xetexdir/libxetex_a-XeTeXFontInst_Mac.$(OBJEXT) \ +@XETEX_MACOSX_TRUE@am__objects_25 = xetexdir/libxetex_a-XeTeXFontInst_Mac.$(OBJEXT) \ @XETEX_MACOSX_TRUE@ xetexdir/libxetex_a-XeTeXFontMgr_Mac.$(OBJEXT) \ @XETEX_MACOSX_TRUE@ xetexdir/libxetex_a-XeTeX_mac.$(OBJEXT) -@XETEX_MACOSX_FALSE@am__objects_31 = xetexdir/libxetex_a-XeTeXFontMgr_FC.$(OBJEXT) +@XETEX_MACOSX_FALSE@am__objects_26 = xetexdir/libxetex_a-XeTeXFontMgr_FC.$(OBJEXT) am_libxetex_a_OBJECTS = xetexdir/libxetex_a-XeTeXFontInst.$(OBJEXT) \ xetexdir/libxetex_a-XeTeXFontMgr.$(OBJEXT) \ xetexdir/libxetex_a-XeTeXLayoutInterface.$(OBJEXT) \ @@ -1258,8 +1086,8 @@ am_libxetex_a_OBJECTS = xetexdir/libxetex_a-XeTeXFontInst.$(OBJEXT) \ xetexdir/image/libxetex_a-jpegimage.$(OBJEXT) \ xetexdir/image/libxetex_a-mfileio.$(OBJEXT) \ xetexdir/image/libxetex_a-numbers.$(OBJEXT) \ - xetexdir/image/libxetex_a-pngimage.$(OBJEXT) $(am__objects_30) \ - $(am__objects_31) + xetexdir/image/libxetex_a-pngimage.$(OBJEXT) $(am__objects_25) \ + $(am__objects_26) libxetex_a_OBJECTS = $(am_libxetex_a_OBJECTS) am__DEPENDENCIES_1 = libsynctex_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ @@ -1277,8 +1105,8 @@ libsynctex_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ dist_aleph_OBJECTS = alephdir/aleph-aleph.$(OBJEXT) \ alephdir/aleph-alephbis.$(OBJEXT) \ alephdir/aleph-alephextra.$(OBJEXT) -am__objects_32 = aleph-alephini.$(OBJEXT) aleph-aleph0.$(OBJEXT) -nodist_aleph_OBJECTS = $(am__objects_32) aleph-aleph-pool.$(OBJEXT) +am__objects_27 = aleph-alephini.$(OBJEXT) aleph-aleph0.$(OBJEXT) +nodist_aleph_OBJECTS = $(am__objects_27) aleph-aleph-pool.$(OBJEXT) aleph_OBJECTS = $(dist_aleph_OBJECTS) $(nodist_aleph_OBJECTS) am__DEPENDENCIES_2 = $(proglib) $(am__DEPENDENCIES_1) aleph_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) @@ -1292,9 +1120,6 @@ call_luajittex_DEPENDENCIES = nodist_call_luatex_OBJECTS = call_luatex-callexe.$(OBJEXT) call_luatex_OBJECTS = $(nodist_call_luatex_OBJECTS) call_luatex_DEPENDENCIES = -nodist_call_luatex53_OBJECTS = call_luatex53-callexe.$(OBJEXT) -call_luatex53_OBJECTS = $(nodist_call_luatex53_OBJECTS) -call_luatex53_DEPENDENCIES = nodist_call_mf_OBJECTS = call_mf-callexe.$(OBJEXT) call_mf_OBJECTS = $(nodist_call_mf_OBJECTS) call_mf_DEPENDENCIES = @@ -1340,22 +1165,22 @@ am__dist_eptex_SOURCES_DIST = eptexdir/eptexextra.c \ eptexdir/eptexextra.h eptexdir/eptex_version.h \ synctexdir/synctex.c synctexdir/synctex.h \ synctexdir/synctex-common.h synctexdir/synctex-eptex.h -@EPTEX_SYNCTEX_TRUE@am__objects_33 = \ +@EPTEX_SYNCTEX_TRUE@am__objects_28 = \ @EPTEX_SYNCTEX_TRUE@ synctexdir/eptex-synctex.$(OBJEXT) dist_eptex_OBJECTS = eptexdir/eptex-eptexextra.$(OBJEXT) \ - $(am__objects_33) -am__objects_34 = eptex-eptexini.$(OBJEXT) eptex-eptex0.$(OBJEXT) -nodist_eptex_OBJECTS = $(am__objects_34) eptex-eptex-pool.$(OBJEXT) + $(am__objects_28) +am__objects_29 = eptex-eptexini.$(OBJEXT) eptex-eptex0.$(OBJEXT) +nodist_eptex_OBJECTS = $(am__objects_29) eptex-eptex-pool.$(OBJEXT) eptex_OBJECTS = $(dist_eptex_OBJECTS) $(nodist_eptex_OBJECTS) @EPTEX_SYNCTEX_TRUE@am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) am__dist_etex_SOURCES_DIST = etexdir/etexextra.c etexdir/etexextra.h \ etexdir/etex_version.h synctexdir/synctex.c \ synctexdir/synctex.h synctexdir/synctex-common.h \ synctexdir/synctex-etex.h -@ETEX_SYNCTEX_TRUE@am__objects_35 = synctexdir/etex-synctex.$(OBJEXT) -dist_etex_OBJECTS = etexdir/etex-etexextra.$(OBJEXT) $(am__objects_35) -am__objects_36 = etex-etexini.$(OBJEXT) etex-etex0.$(OBJEXT) -nodist_etex_OBJECTS = $(am__objects_36) etex-etex-pool.$(OBJEXT) +@ETEX_SYNCTEX_TRUE@am__objects_30 = synctexdir/etex-synctex.$(OBJEXT) +dist_etex_OBJECTS = etexdir/etex-etexextra.$(OBJEXT) $(am__objects_30) +am__objects_31 = etex-etexini.$(OBJEXT) etex-etex0.$(OBJEXT) +nodist_etex_OBJECTS = $(am__objects_31) etex-etex-pool.$(OBJEXT) etex_OBJECTS = $(dist_etex_OBJECTS) $(nodist_etex_OBJECTS) @ETEX_SYNCTEX_TRUE@am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1) etex_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ @@ -1364,12 +1189,12 @@ am__dist_euptex_SOURCES_DIST = euptexdir/euptexextra.c \ euptexdir/euptexextra.h synctexdir/synctex.c \ synctexdir/synctex.h synctexdir/synctex-common.h \ synctexdir/synctex-euptex.h -@EUPTEX_SYNCTEX_TRUE@am__objects_37 = \ +@EUPTEX_SYNCTEX_TRUE@am__objects_32 = \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/euptex-synctex.$(OBJEXT) dist_euptex_OBJECTS = euptexdir/euptex-euptexextra.$(OBJEXT) \ - $(am__objects_37) -am__objects_38 = euptex-euptexini.$(OBJEXT) euptex-euptex0.$(OBJEXT) -nodist_euptex_OBJECTS = $(am__objects_38) euptex-euptex-pool.$(OBJEXT) + $(am__objects_32) +am__objects_33 = euptex-euptexini.$(OBJEXT) euptex-euptex0.$(OBJEXT) +nodist_euptex_OBJECTS = $(am__objects_33) euptex-euptex-pool.$(OBJEXT) euptex_OBJECTS = $(dist_euptex_OBJECTS) $(nodist_euptex_OBJECTS) @EUPTEX_SYNCTEX_TRUE@am__DEPENDENCIES_5 = $(am__DEPENDENCIES_1) am_gftodvi_OBJECTS = @@ -1388,9 +1213,9 @@ gftype_DEPENDENCIES = $(proglib) $(am__DEPENDENCIES_1) nodist_initex_OBJECTS = initex-callexe.$(OBJEXT) initex_OBJECTS = $(nodist_initex_OBJECTS) initex_DEPENDENCIES = -am__objects_39 = luatexdir/luajittex-luatex.$(OBJEXT) \ +am__objects_34 = luatexdir/luajittex-luatex.$(OBJEXT) \ mplibdir/luajittex-lmplib.$(OBJEXT) -nodist_luajittex_OBJECTS = $(am__objects_39) +nodist_luajittex_OBJECTS = $(am__objects_34) luajittex_OBJECTS = $(nodist_luajittex_OBJECTS) am__DEPENDENCIES_6 = libmplibcore.a $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ @@ -1399,21 +1224,14 @@ am__DEPENDENCIES_6 = libmplibcore.a $(am__DEPENDENCIES_1) \ luajittex_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(luajittex_LDFLAGS) $(LDFLAGS) -o $@ -am__objects_40 = luatexdir/luatex-luatex.$(OBJEXT) \ +am__objects_35 = luatexdir/luatex-luatex.$(OBJEXT) \ mplibdir/luatex-lmplib.$(OBJEXT) -nodist_luatex_OBJECTS = $(am__objects_40) +nodist_luatex_OBJECTS = $(am__objects_35) luatex_OBJECTS = $(nodist_luatex_OBJECTS) am__DEPENDENCIES_7 = $(am__DEPENDENCIES_1) luatex_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(luatex_LDFLAGS) $(LDFLAGS) -o $@ -am__objects_41 = luatexdir/luatex53-luatex.$(OBJEXT) \ - mplibdir/luatex53-lmplib.$(OBJEXT) -nodist_luatex53_OBJECTS = $(am__objects_41) -luatex53_OBJECTS = $(nodist_luatex53_OBJECTS) -luatex53_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(luatex53_LDFLAGS) $(LDFLAGS) -o $@ am_md5main_OBJECTS = libmd5/md5main-md5main.$(OBJEXT) md5main_OBJECTS = $(am_md5main_OBJECTS) md5main_DEPENDENCIES = libmd5.a @@ -1435,8 +1253,8 @@ mflua_DEPENDENCIES = libmflua.a $(am__DEPENDENCIES_2) $(windowlib) \ mflua_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(mflua_LDFLAGS) $(LDFLAGS) -o $@ -am__objects_42 = mfluadir/mflua_nowin-mfluaextra.$(OBJEXT) -nodist_mflua_nowin_OBJECTS = $(am__objects_42) +am__objects_36 = mfluadir/mflua_nowin-mfluaextra.$(OBJEXT) +nodist_mflua_nowin_OBJECTS = $(am__objects_36) mflua_nowin_OBJECTS = $(nodist_mflua_nowin_OBJECTS) mflua_nowin_DEPENDENCIES = libmflua.a $(am__DEPENDENCIES_2) \ $(windowlib) $(am__DEPENDENCIES_7) @@ -1450,8 +1268,8 @@ mfluajit_DEPENDENCIES = libmfluajit.a $(am__DEPENDENCIES_2) \ mfluajit_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(mfluajit_LDFLAGS) $(LDFLAGS) -o $@ -am__objects_43 = mfluajitdir/mfluajit_nowin-mfluajitextra.$(OBJEXT) -nodist_mfluajit_nowin_OBJECTS = $(am__objects_43) +am__objects_37 = mfluajitdir/mfluajit_nowin-mfluajitextra.$(OBJEXT) +nodist_mfluajit_nowin_OBJECTS = $(am__objects_37) mfluajit_nowin_OBJECTS = $(nodist_mfluajit_nowin_OBJECTS) mfluajit_nowin_DEPENDENCIES = libmfluajit.a $(am__DEPENDENCIES_2) \ $(windowlib) $(am__DEPENDENCIES_1) @@ -1463,8 +1281,8 @@ nodist_mft_OBJECTS = mft.$(OBJEXT) mft_OBJECTS = $(nodist_mft_OBJECTS) mft_LDADD = $(LDADD) mft_DEPENDENCIES = $(proglib) $(am__DEPENDENCIES_1) -am__objects_44 = mpost-mpxout.$(OBJEXT) -nodist_mpost_OBJECTS = mpost-mpost.$(OBJEXT) $(am__objects_44) +am__objects_38 = mpost-mpxout.$(OBJEXT) +nodist_mpost_OBJECTS = mpost-mpost.$(OBJEXT) $(am__objects_38) mpost_OBJECTS = $(nodist_mpost_OBJECTS) mpost_DEPENDENCIES = libmplibcore.a libmplibextramath.a \ libmplibbackends.a $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ @@ -1497,12 +1315,12 @@ am__dist_pdftex_SOURCES_DIST = pdftexdir/pdftexextra.c \ pdftexdir/etex_version.h synctexdir/synctex.c \ synctexdir/synctex.h synctexdir/synctex-common.h \ synctexdir/synctex-pdftex.h -@PDFTEX_SYNCTEX_TRUE@am__objects_45 = \ +@PDFTEX_SYNCTEX_TRUE@am__objects_39 = \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/pdftex-synctex.$(OBJEXT) dist_pdftex_OBJECTS = pdftexdir/pdftex-pdftexextra.$(OBJEXT) \ - $(am__objects_45) -am__objects_46 = pdftex-pdftexini.$(OBJEXT) pdftex-pdftex0.$(OBJEXT) -nodist_pdftex_OBJECTS = $(am__objects_46) pdftex-pdftex-pool.$(OBJEXT) + $(am__objects_39) +am__objects_40 = pdftex-pdftexini.$(OBJEXT) pdftex-pdftex0.$(OBJEXT) +nodist_pdftex_OBJECTS = $(am__objects_40) pdftex-pdftex-pool.$(OBJEXT) pdftex_OBJECTS = $(dist_pdftex_OBJECTS) $(nodist_pdftex_OBJECTS) am__DEPENDENCIES_10 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) libmd5.a @@ -1529,20 +1347,20 @@ nodist_pltotf_OBJECTS = pltotf.$(OBJEXT) pltotf_OBJECTS = $(nodist_pltotf_OBJECTS) pltotf_LDADD = $(LDADD) pltotf_DEPENDENCIES = $(proglib) $(am__DEPENDENCIES_1) -am__objects_47 = pmpost-pmp.$(OBJEXT) -am__objects_48 = pmpost-pmpmath.$(OBJEXT) -am__objects_49 = pmpost-pmpmathbinary.$(OBJEXT) -am__objects_50 = pmpost-pmpmathdecimal.$(OBJEXT) -am__objects_51 = pmpost-pmpmathdouble.$(OBJEXT) -am__objects_52 = pmpost-pmpstrings.$(OBJEXT) -am__objects_53 = pmpost-pmpxout.$(OBJEXT) -am__objects_54 = pmpost-ppngout.$(OBJEXT) -am__objects_55 = pmpost-ppsout.$(OBJEXT) -am__objects_56 = pmpost-psvgout.$(OBJEXT) -nodist_pmpost_OBJECTS = $(am__objects_47) $(am__objects_48) \ - $(am__objects_49) $(am__objects_50) $(am__objects_51) \ - pmpost-pmpost.$(OBJEXT) $(am__objects_52) $(am__objects_53) \ - $(am__objects_54) $(am__objects_55) $(am__objects_56) \ +am__objects_41 = pmpost-pmp.$(OBJEXT) +am__objects_42 = pmpost-pmpmath.$(OBJEXT) +am__objects_43 = pmpost-pmpmathbinary.$(OBJEXT) +am__objects_44 = pmpost-pmpmathdecimal.$(OBJEXT) +am__objects_45 = pmpost-pmpmathdouble.$(OBJEXT) +am__objects_46 = pmpost-pmpstrings.$(OBJEXT) +am__objects_47 = pmpost-pmpxout.$(OBJEXT) +am__objects_48 = pmpost-ppngout.$(OBJEXT) +am__objects_49 = pmpost-ppsout.$(OBJEXT) +am__objects_50 = pmpost-psvgout.$(OBJEXT) +nodist_pmpost_OBJECTS = $(am__objects_41) $(am__objects_42) \ + $(am__objects_43) $(am__objects_44) $(am__objects_45) \ + pmpost-pmpost.$(OBJEXT) $(am__objects_46) $(am__objects_47) \ + $(am__objects_48) $(am__objects_49) $(am__objects_50) \ pmpost-ptfmin.$(OBJEXT) pmpost_OBJECTS = $(nodist_pmpost_OBJECTS) pmpost_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ @@ -1560,10 +1378,10 @@ am__dist_ptex_SOURCES_DIST = ptexdir/ptexextra.c ptexdir/ptexextra.h \ ptexdir/ptex_version.h synctexdir/synctex.c \ synctexdir/synctex.h synctexdir/synctex-common.h \ synctexdir/synctex-ptex.h -@PTEX_SYNCTEX_TRUE@am__objects_57 = synctexdir/ptex-synctex.$(OBJEXT) -dist_ptex_OBJECTS = ptexdir/ptex-ptexextra.$(OBJEXT) $(am__objects_57) -am__objects_58 = ptex-ptexini.$(OBJEXT) ptex-ptex0.$(OBJEXT) -nodist_ptex_OBJECTS = $(am__objects_58) ptex-ptex-pool.$(OBJEXT) +@PTEX_SYNCTEX_TRUE@am__objects_51 = synctexdir/ptex-synctex.$(OBJEXT) +dist_ptex_OBJECTS = ptexdir/ptex-ptexextra.$(OBJEXT) $(am__objects_51) +am__objects_52 = ptex-ptexini.$(OBJEXT) ptex-ptex0.$(OBJEXT) +nodist_ptex_OBJECTS = $(am__objects_52) ptex-ptex-pool.$(OBJEXT) ptex_OBJECTS = $(dist_ptex_OBJECTS) $(nodist_ptex_OBJECTS) @PTEX_SYNCTEX_TRUE@am__DEPENDENCIES_11 = $(am__DEPENDENCIES_1) am_ptftopl_OBJECTS = @@ -1584,10 +1402,10 @@ tangleboot_LDADD = $(LDADD) am__dist_tex_SOURCES_DIST = texextra.c synctexdir/synctex.c \ synctexdir/synctex.h synctexdir/synctex-common.h \ synctexdir/synctex-tex.h -@TEX_SYNCTEX_TRUE@am__objects_59 = synctexdir/tex-synctex.$(OBJEXT) -dist_tex_OBJECTS = tex-texextra.$(OBJEXT) $(am__objects_59) -am__objects_60 = tex-texini.$(OBJEXT) tex-tex0.$(OBJEXT) -nodist_tex_OBJECTS = $(am__objects_60) tex-tex-pool.$(OBJEXT) +@TEX_SYNCTEX_TRUE@am__objects_53 = synctexdir/tex-synctex.$(OBJEXT) +dist_tex_OBJECTS = tex-texextra.$(OBJEXT) $(am__objects_53) +am__objects_54 = tex-texini.$(OBJEXT) tex-tex0.$(OBJEXT) +nodist_tex_OBJECTS = $(am__objects_54) tex-tex-pool.$(OBJEXT) tex_OBJECTS = $(dist_tex_OBJECTS) $(nodist_tex_OBJECTS) @TEX_SYNCTEX_TRUE@am__DEPENDENCIES_13 = $(am__DEPENDENCIES_1) tex_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ @@ -1612,21 +1430,21 @@ am_updvitype_OBJECTS = nodist_updvitype_OBJECTS = updvitype-updvitype.$(OBJEXT) updvitype_OBJECTS = $(am_updvitype_OBJECTS) \ $(nodist_updvitype_OBJECTS) -am__objects_61 = upmpost-pmp.$(OBJEXT) -am__objects_62 = upmpost-pmpmath.$(OBJEXT) -am__objects_63 = upmpost-pmpmathbinary.$(OBJEXT) -am__objects_64 = upmpost-pmpmathdecimal.$(OBJEXT) -am__objects_65 = upmpost-pmpmathdouble.$(OBJEXT) -am__objects_66 = upmpost-pmpstrings.$(OBJEXT) -am__objects_67 = upmpost-pmpxout.$(OBJEXT) -am__objects_68 = upmpost-ppngout.$(OBJEXT) -am__objects_69 = upmpost-ppsout.$(OBJEXT) -am__objects_70 = upmpost-psvgout.$(OBJEXT) -am__objects_71 = $(am__objects_61) $(am__objects_62) $(am__objects_63) \ - $(am__objects_64) $(am__objects_65) upmpost-pmpost.$(OBJEXT) \ - $(am__objects_66) $(am__objects_67) $(am__objects_68) \ - $(am__objects_69) $(am__objects_70) upmpost-ptfmin.$(OBJEXT) -nodist_upmpost_OBJECTS = $(am__objects_71) +am__objects_55 = upmpost-pmp.$(OBJEXT) +am__objects_56 = upmpost-pmpmath.$(OBJEXT) +am__objects_57 = upmpost-pmpmathbinary.$(OBJEXT) +am__objects_58 = upmpost-pmpmathdecimal.$(OBJEXT) +am__objects_59 = upmpost-pmpmathdouble.$(OBJEXT) +am__objects_60 = upmpost-pmpstrings.$(OBJEXT) +am__objects_61 = upmpost-pmpxout.$(OBJEXT) +am__objects_62 = upmpost-ppngout.$(OBJEXT) +am__objects_63 = upmpost-ppsout.$(OBJEXT) +am__objects_64 = upmpost-psvgout.$(OBJEXT) +am__objects_65 = $(am__objects_55) $(am__objects_56) $(am__objects_57) \ + $(am__objects_58) $(am__objects_59) upmpost-pmpost.$(OBJEXT) \ + $(am__objects_60) $(am__objects_61) $(am__objects_62) \ + $(am__objects_63) $(am__objects_64) upmpost-ptfmin.$(OBJEXT) +nodist_upmpost_OBJECTS = $(am__objects_65) upmpost_OBJECTS = $(nodist_upmpost_OBJECTS) am__DEPENDENCIES_15 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ @@ -1640,12 +1458,12 @@ am__dist_uptex_SOURCES_DIST = uptexdir/uptexextra.c \ uptexdir/uptexextra.h uptexdir/uptex_version.h \ synctexdir/synctex.c synctexdir/synctex.h \ synctexdir/synctex-common.h synctexdir/synctex-uptex.h -@UPTEX_SYNCTEX_TRUE@am__objects_72 = \ +@UPTEX_SYNCTEX_TRUE@am__objects_66 = \ @UPTEX_SYNCTEX_TRUE@ synctexdir/uptex-synctex.$(OBJEXT) dist_uptex_OBJECTS = uptexdir/uptex-uptexextra.$(OBJEXT) \ - $(am__objects_72) -am__objects_73 = uptex-uptexini.$(OBJEXT) uptex-uptex0.$(OBJEXT) -nodist_uptex_OBJECTS = $(am__objects_73) uptex-uptex-pool.$(OBJEXT) + $(am__objects_66) +am__objects_67 = uptex-uptexini.$(OBJEXT) uptex-uptex0.$(OBJEXT) +nodist_uptex_OBJECTS = $(am__objects_67) uptex-uptex-pool.$(OBJEXT) uptex_OBJECTS = $(dist_uptex_OBJECTS) $(nodist_uptex_OBJECTS) @UPTEX_SYNCTEX_TRUE@am__DEPENDENCIES_16 = $(am__DEPENDENCIES_1) am_uptftopl_OBJECTS = @@ -1684,12 +1502,12 @@ am__dist_xetex_SOURCES_DIST = xetexdir/xetexextra.c \ xetexdir/xetex_version.h synctexdir/synctex.c \ synctexdir/synctex.h synctexdir/synctex-common.h \ synctexdir/synctex-xetex.h -@XETEX_SYNCTEX_TRUE@am__objects_74 = \ +@XETEX_SYNCTEX_TRUE@am__objects_68 = \ @XETEX_SYNCTEX_TRUE@ synctexdir/xetex-synctex.$(OBJEXT) dist_xetex_OBJECTS = xetexdir/xetex-xetexextra.$(OBJEXT) \ - $(am__objects_74) -am__objects_75 = xetex-xetexini.$(OBJEXT) xetex-xetex0.$(OBJEXT) -nodist_xetex_OBJECTS = $(am__objects_75) xetex-xetex-pool.$(OBJEXT) + $(am__objects_68) +am__objects_69 = xetex-xetexini.$(OBJEXT) xetex-xetex0.$(OBJEXT) +nodist_xetex_OBJECTS = $(am__objects_69) xetex-xetex-pool.$(OBJEXT) xetex_OBJECTS = $(dist_xetex_OBJECTS) $(nodist_xetex_OBJECTS) @XETEX_MACOSX_FALSE@am__DEPENDENCIES_17 = $(am__DEPENDENCIES_1) am__DEPENDENCIES_18 = $(libxetex) $(am__DEPENDENCIES_1) \ @@ -1721,7 +1539,6 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ ./$(DEPDIR)/aleph-aleph0.Po ./$(DEPDIR)/aleph-alephini.Po \ ./$(DEPDIR)/bibtex.Po ./$(DEPDIR)/call_luajittex-callexe.Po \ ./$(DEPDIR)/call_luatex-callexe.Po \ - ./$(DEPDIR)/call_luatex53-callexe.Po \ ./$(DEPDIR)/call_mf-callexe.Po \ ./$(DEPDIR)/call_mflua-callexe.Po \ ./$(DEPDIR)/call_mfluajit-callexe.Po \ @@ -1808,30 +1625,8 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ libmd5/$(DEPDIR)/a-md5.Po libmd5/$(DEPDIR)/md5main-md5main.Po \ luatexdir/$(DEPDIR)/luajittex-luatex.Po \ luatexdir/$(DEPDIR)/luatex-luatex.Po \ - luatexdir/$(DEPDIR)/luatex53-luatex.Po \ - luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Po \ luatexdir/dvi/$(DEPDIR)/libluajittex_a-dvigen.Po \ luatexdir/dvi/$(DEPDIR)/libluatex_a-dvigen.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Po \ - luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Po \ luatexdir/font/$(DEPDIR)/libluajittex_a-dofont.Po \ luatexdir/font/$(DEPDIR)/libluajittex_a-luafont.Po \ luatexdir/font/$(DEPDIR)/libluajittex_a-mapfile.Po \ @@ -1872,12 +1667,6 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/font/$(DEPDIR)/libluatex_a-writettf.Po \ luatexdir/font/$(DEPDIR)/libluatex_a-writetype0.Po \ luatexdir/font/$(DEPDIR)/libluatex_a-writetype2.Po \ - luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Po \ - luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Po \ - luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Po \ - luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Po \ - luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Po \ - luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Po \ luatexdir/image/$(DEPDIR)/libluajittex_a-pdftoepdf.Po \ luatexdir/image/$(DEPDIR)/libluajittex_a-writeimg.Po \ luatexdir/image/$(DEPDIR)/libluajittex_a-writejbig2.Po \ @@ -1890,40 +1679,12 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/image/$(DEPDIR)/libluatex_a-writejp2.Po \ luatexdir/image/$(DEPDIR)/libluatex_a-writejpg.Po \ luatexdir/image/$(DEPDIR)/libluatex_a-writepng.Po \ - luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Po \ - luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Po \ - luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Po \ luatexdir/lang/$(DEPDIR)/libluajittex_a-hnjalloc.Po \ luatexdir/lang/$(DEPDIR)/libluajittex_a-hyphen.Po \ luatexdir/lang/$(DEPDIR)/libluajittex_a-texlang.Po \ luatexdir/lang/$(DEPDIR)/libluatex_a-hnjalloc.Po \ luatexdir/lang/$(DEPDIR)/libluatex_a-hyphen.Po \ luatexdir/lang/$(DEPDIR)/libluatex_a-texlang.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Po \ - luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Po \ luatexdir/lua/$(DEPDIR)/libluajittex_a-helpers.Po \ luatexdir/lua/$(DEPDIR)/libluajittex_a-lcallbacklib.Po \ luatexdir/lua/$(DEPDIR)/libluajittex_a-lfontlib.Po \ @@ -1976,15 +1737,10 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/lua/$(DEPDIR)/libluatex_a-texluac.Po \ luatexdir/lua/$(DEPDIR)/libmflua_a-lkpselib.Po \ luatexdir/lua/$(DEPDIR)/libmfluajit_a-lkpselib.Po \ - luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Po \ - luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Po \ - luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Po \ - luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Po \ luatexdir/luaffi/$(DEPDIR)/libluaffi_a-call.Po \ luatexdir/luaffi/$(DEPDIR)/libluaffi_a-ctype.Po \ luatexdir/luaffi/$(DEPDIR)/libluaffi_a-ffi.Po \ luatexdir/luaffi/$(DEPDIR)/libluaffi_a-parser.Po \ - luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Po \ luatexdir/luafilesystem/src/$(DEPDIR)/libluajitmisc_a-lfs.Po \ luatexdir/luafilesystem/src/$(DEPDIR)/libluamisc_a-lfs.Po \ luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Po \ @@ -2029,34 +1785,25 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Po \ luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Po \ luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Po \ - luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Po \ - luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Po \ luatexdir/luafontloader/src/$(DEPDIR)/libluajittex_a-ffdummies.Po \ luatexdir/luafontloader/src/$(DEPDIR)/libluajittex_a-luafflib.Po \ luatexdir/luafontloader/src/$(DEPDIR)/libluatex_a-ffdummies.Po \ luatexdir/luafontloader/src/$(DEPDIR)/libluatex_a-luafflib.Po \ - luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Po \ - luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Po \ luatexdir/luamd5/$(DEPDIR)/libluajitmisc_a-md5.Po \ luatexdir/luamd5/$(DEPDIR)/libluajitmisc_a-md5lib.Po \ luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5.Po \ luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5lib.Po \ - luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Po \ luatexdir/luapeg/$(DEPDIR)/libluajitmisc_a-lpeg.Po \ luatexdir/luapeg/$(DEPDIR)/libluamisc_a-lpeg.Po \ - luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Po \ - luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Po \ - luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Po \ - luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Po \ - luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Po \ - luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Po \ - luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Po \ luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pparray.Po \ luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po \ luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppdict.Po \ luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppheap.Po \ luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppload.Po \ luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppstream.Po \ + luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Po \ + luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Po \ + luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Po \ luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppxref.Po \ luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pparray.Po \ luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppcrypt.Po \ @@ -2064,18 +1811,10 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppheap.Po \ luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppload.Po \ luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppstream.Po \ + luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Po \ + luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Po \ + luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Po \ luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppxref.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Po \ - luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Po \ luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po \ luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po \ luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po \ @@ -2098,22 +1837,6 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilmem.Po \ luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilnumber.Po \ luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilsha.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Po \ - luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Po \ luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po \ luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-buffer.Po \ luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-compat.Po \ @@ -2146,37 +1869,12 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-tcp.Po \ luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-timeout.Po \ luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-udp.Po \ - luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Po \ luatexdir/luazip/src/$(DEPDIR)/libluajitmisc_a-luazip.Po \ luatexdir/luazip/src/$(DEPDIR)/libluamisc_a-luazip.Po \ - luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Po \ - luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Po \ luatexdir/luazlib/$(DEPDIR)/libluajitmisc_a-lgzip.Po \ luatexdir/luazlib/$(DEPDIR)/libluajitmisc_a-lzlib.Po \ luatexdir/luazlib/$(DEPDIR)/libluamisc_a-lgzip.Po \ luatexdir/luazlib/$(DEPDIR)/libluamisc_a-lzlib.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Po \ - luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Po \ luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfaction.Po \ luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfannot.Po \ luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfcolorstack.Po \ @@ -2221,42 +1919,8 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/pdf/$(DEPDIR)/libluatex_a-pdftables.Po \ luatexdir/pdf/$(DEPDIR)/libluatex_a-pdfthread.Po \ luatexdir/pdf/$(DEPDIR)/libluatex_a-pdfxform.Po \ - luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Po \ luatexdir/slnunicode/$(DEPDIR)/libluajitmisc_a-slnunico.Po \ luatexdir/slnunicode/$(DEPDIR)/libluamisc_a-slnunico.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Po \ - luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Po \ luatexdir/tex/$(DEPDIR)/libluajittex_a-align.Po \ luatexdir/tex/$(DEPDIR)/libluajittex_a-arithmetic.Po \ luatexdir/tex/$(DEPDIR)/libluajittex_a-backend.Po \ @@ -2333,11 +1997,6 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ luatexdir/unilib/$(DEPDIR)/libunilib_a-usprintf.Po \ luatexdir/unilib/$(DEPDIR)/libunilib_a-ustring.Po \ luatexdir/unilib/$(DEPDIR)/libunilib_a-utype.Po \ - luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Po \ - luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Po \ - luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Po \ - luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Po \ - luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Po \ luatexdir/utils/$(DEPDIR)/libluajittex_a-avl.Po \ luatexdir/utils/$(DEPDIR)/libluajittex_a-avlstuff.Po \ luatexdir/utils/$(DEPDIR)/libluajittex_a-managed-sa.Po \ @@ -2359,7 +2018,6 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ mplibdir/$(DEPDIR)/libmputil_a-decNumber.Po \ mplibdir/$(DEPDIR)/luajittex-lmplib.Po \ mplibdir/$(DEPDIR)/luatex-lmplib.Po \ - mplibdir/$(DEPDIR)/luatex53-lmplib.Po \ pdftexdir/$(DEPDIR)/libpdftex_a-avl.Po \ pdftexdir/$(DEPDIR)/libpdftex_a-avlstuff.Po \ pdftexdir/$(DEPDIR)/libpdftex_a-epdf.Po \ @@ -2394,7 +2052,6 @@ am__depfiles_remade = ./$(DEPDIR)/aleph-aleph-pool.Po \ synctexdir/$(DEPDIR)/eptex-synctex.Po \ synctexdir/$(DEPDIR)/etex-synctex.Po \ synctexdir/$(DEPDIR)/euptex-synctex.Po \ - synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Po \ synctexdir/$(DEPDIR)/libluajittex_a-synctex.Po \ synctexdir/$(DEPDIR)/libluatex_a-synctex.Po \ synctexdir/$(DEPDIR)/libsynctex_a-synctex_parser.Po \ @@ -2484,11 +2141,6 @@ am__v_OBJCXXLD_ = $(am__v_OBJCXXLD_@AM_DEFAULT_V@) am__v_OBJCXXLD_0 = @echo " OBJCXXLD" $@; am__v_OBJCXXLD_1 = SOURCES = $(libff_a_SOURCES) $(libkanji_a_SOURCES) \ - $(nodist_liblua53ffi_a_SOURCES) \ - $(nodist_liblua53misc_a_SOURCES) \ - $(nodist_liblua53pplib_a_SOURCES) \ - $(nodist_liblua53socket_a_SOURCES) \ - $(dist_liblua53tex_a_SOURCES) $(nodist_liblua53tex_a_SOURCES) \ $(nodist_libluaffi_a_SOURCES) \ $(nodist_libluajitmisc_a_SOURCES) \ $(nodist_libluajitpplib_a_SOURCES) \ @@ -2510,35 +2162,34 @@ SOURCES = $(libff_a_SOURCES) $(libkanji_a_SOURCES) \ $(libsynctex_la_SOURCES) $(dist_aleph_SOURCES) \ $(nodist_aleph_SOURCES) $(nodist_bibtex_SOURCES) \ $(nodist_call_luajittex_SOURCES) $(nodist_call_luatex_SOURCES) \ - $(nodist_call_luatex53_SOURCES) $(nodist_call_mf_SOURCES) \ - $(nodist_call_mflua_SOURCES) $(nodist_call_mfluajit_SOURCES) \ - $(nodist_call_mpost_SOURCES) $(nodist_call_pmpost_SOURCES) \ - $(nodist_call_upmpost_SOURCES) $(nodist_ctangle_SOURCES) \ - $(nodist_ctangleboot_SOURCES) $(nodist_ctie_SOURCES) \ - $(nodist_cweave_SOURCES) $(nodist_dvicopy_SOURCES) \ - $(nodist_dvitype_SOURCES) $(dist_eptex_SOURCES) \ - $(nodist_eptex_SOURCES) $(dist_etex_SOURCES) \ - $(nodist_etex_SOURCES) $(dist_euptex_SOURCES) \ - $(nodist_euptex_SOURCES) $(gftodvi_SOURCES) \ - $(nodist_gftodvi_SOURCES) $(nodist_gftopk_SOURCES) \ - $(nodist_gftype_SOURCES) $(nodist_initex_SOURCES) \ - $(nodist_luajittex_SOURCES) $(nodist_luatex_SOURCES) \ - $(nodist_luatex53_SOURCES) $(md5main_SOURCES) \ - $(dist_mf_SOURCES) $(dist_mf_nowin_SOURCES) \ - $(dist_mflua_SOURCES) $(nodist_mflua_nowin_SOURCES) \ - $(dist_mfluajit_SOURCES) $(nodist_mfluajit_nowin_SOURCES) \ - $(nodist_mft_SOURCES) $(nodist_mpost_SOURCES) \ - $(nodist_odvicopy_SOURCES) $(nodist_odvitype_SOURCES) \ - $(nodist_otangle_SOURCES) $(nodist_patgen_SOURCES) \ - $(pbibtex_SOURCES) $(nodist_pbibtex_SOURCES) \ - $(dist_pdftex_SOURCES) $(nodist_pdftex_SOURCES) \ - $(nodist_EXTRA_pdftex_SOURCES) $(pdftosrc_SOURCES) \ - $(nodist_EXTRA_pdftosrc_SOURCES) $(pdvitype_SOURCES) \ - $(nodist_pdvitype_SOURCES) $(nodist_pktogf_SOURCES) \ - $(nodist_pktype_SOURCES) $(nodist_pltotf_SOURCES) \ - $(nodist_pmpost_SOURCES) $(nodist_pooltype_SOURCES) \ - $(ppltotf_SOURCES) $(nodist_ppltotf_SOURCES) \ - $(dist_ptex_SOURCES) $(nodist_ptex_SOURCES) $(ptftopl_SOURCES) \ + $(nodist_call_mf_SOURCES) $(nodist_call_mflua_SOURCES) \ + $(nodist_call_mfluajit_SOURCES) $(nodist_call_mpost_SOURCES) \ + $(nodist_call_pmpost_SOURCES) $(nodist_call_upmpost_SOURCES) \ + $(nodist_ctangle_SOURCES) $(nodist_ctangleboot_SOURCES) \ + $(nodist_ctie_SOURCES) $(nodist_cweave_SOURCES) \ + $(nodist_dvicopy_SOURCES) $(nodist_dvitype_SOURCES) \ + $(dist_eptex_SOURCES) $(nodist_eptex_SOURCES) \ + $(dist_etex_SOURCES) $(nodist_etex_SOURCES) \ + $(dist_euptex_SOURCES) $(nodist_euptex_SOURCES) \ + $(gftodvi_SOURCES) $(nodist_gftodvi_SOURCES) \ + $(nodist_gftopk_SOURCES) $(nodist_gftype_SOURCES) \ + $(nodist_initex_SOURCES) $(nodist_luajittex_SOURCES) \ + $(nodist_luatex_SOURCES) $(md5main_SOURCES) $(dist_mf_SOURCES) \ + $(dist_mf_nowin_SOURCES) $(dist_mflua_SOURCES) \ + $(nodist_mflua_nowin_SOURCES) $(dist_mfluajit_SOURCES) \ + $(nodist_mfluajit_nowin_SOURCES) $(nodist_mft_SOURCES) \ + $(nodist_mpost_SOURCES) $(nodist_odvicopy_SOURCES) \ + $(nodist_odvitype_SOURCES) $(nodist_otangle_SOURCES) \ + $(nodist_patgen_SOURCES) $(pbibtex_SOURCES) \ + $(nodist_pbibtex_SOURCES) $(dist_pdftex_SOURCES) \ + $(nodist_pdftex_SOURCES) $(nodist_EXTRA_pdftex_SOURCES) \ + $(pdftosrc_SOURCES) $(nodist_EXTRA_pdftosrc_SOURCES) \ + $(pdvitype_SOURCES) $(nodist_pdvitype_SOURCES) \ + $(nodist_pktogf_SOURCES) $(nodist_pktype_SOURCES) \ + $(nodist_pltotf_SOURCES) $(nodist_pmpost_SOURCES) \ + $(nodist_pooltype_SOURCES) $(ppltotf_SOURCES) \ + $(nodist_ppltotf_SOURCES) $(dist_ptex_SOURCES) \ + $(nodist_ptex_SOURCES) $(ptftopl_SOURCES) \ $(nodist_ptftopl_SOURCES) $(synctex_SOURCES) \ $(nodist_tangle_SOURCES) $(nodist_tangleboot_SOURCES) \ $(dist_tex_SOURCES) $(nodist_tex_SOURCES) \ @@ -2556,19 +2207,19 @@ SOURCES = $(libff_a_SOURCES) $(libkanji_a_SOURCES) \ $(dist_xetex_SOURCES) $(nodist_xetex_SOURCES) \ $(nodist_EXTRA_xetex_SOURCES) DIST_SOURCES = $(libff_a_SOURCES) $(libkanji_a_SOURCES) \ - $(dist_liblua53tex_a_SOURCES) $(dist_libluajittex_a_SOURCES) \ - $(dist_libluatex_a_SOURCES) $(libmd5_a_SOURCES) \ - $(dist_libmflua_a_SOURCES) $(dist_libmfluajit_a_SOURCES) \ - $(libmputil_a_SOURCES) $(am__libpdftex_a_SOURCES_DIST) \ - $(EXTRA_libpdftex_a_SOURCES) $(libukanji_a_SOURCES) \ - $(libunilib_a_SOURCES) $(am__libxetex_a_SOURCES_DIST) \ - $(libsynctex_la_SOURCES) $(dist_aleph_SOURCES) \ - $(am__dist_eptex_SOURCES_DIST) $(am__dist_etex_SOURCES_DIST) \ - $(am__dist_euptex_SOURCES_DIST) $(gftodvi_SOURCES) \ - $(md5main_SOURCES) $(dist_mf_SOURCES) $(dist_mf_nowin_SOURCES) \ - $(dist_mflua_SOURCES) $(dist_mfluajit_SOURCES) \ - $(pbibtex_SOURCES) $(am__dist_pdftex_SOURCES_DIST) \ - $(pdftosrc_SOURCES) $(pdvitype_SOURCES) $(ppltotf_SOURCES) \ + $(dist_libluajittex_a_SOURCES) $(dist_libluatex_a_SOURCES) \ + $(libmd5_a_SOURCES) $(dist_libmflua_a_SOURCES) \ + $(dist_libmfluajit_a_SOURCES) $(libmputil_a_SOURCES) \ + $(am__libpdftex_a_SOURCES_DIST) $(EXTRA_libpdftex_a_SOURCES) \ + $(libukanji_a_SOURCES) $(libunilib_a_SOURCES) \ + $(am__libxetex_a_SOURCES_DIST) $(libsynctex_la_SOURCES) \ + $(dist_aleph_SOURCES) $(am__dist_eptex_SOURCES_DIST) \ + $(am__dist_etex_SOURCES_DIST) $(am__dist_euptex_SOURCES_DIST) \ + $(gftodvi_SOURCES) $(md5main_SOURCES) $(dist_mf_SOURCES) \ + $(dist_mf_nowin_SOURCES) $(dist_mflua_SOURCES) \ + $(dist_mfluajit_SOURCES) $(pbibtex_SOURCES) \ + $(am__dist_pdftex_SOURCES_DIST) $(pdftosrc_SOURCES) \ + $(pdvitype_SOURCES) $(ppltotf_SOURCES) \ $(am__dist_ptex_SOURCES_DIST) $(ptftopl_SOURCES) \ $(synctex_SOURCES) $(am__dist_tex_SOURCES_DIST) \ $(ttf2afm_SOURCES) $(EXTRA_ttf2afm_SOURCES) \ @@ -2782,14 +2433,14 @@ am__set_TESTS_bases = \ bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ bases=`echo $$bases` RECHECK_LOGS = $(TEST_LOGS) -am__EXEEXT_41 = bibtex.test dvicopy.test dvitype.test gftodvi.test \ +am__EXEEXT_39 = bibtex.test dvicopy.test dvitype.test gftodvi.test \ gftopk.test gftype.test mft.test patgen.test pktogf.test \ pktype.test pltotf.test pooltype.test tftopl.test vftovp.test \ vptovf.test weave.test -am__EXEEXT_42 = $(am__EXEEXT_41) tests/bibtex-openout-test.pl \ +am__EXEEXT_40 = $(am__EXEEXT_39) tests/bibtex-openout-test.pl \ tests/bibtex-longline-test.pl tests/bibtex-mem.test \ tests/bibtex-auxinclude.test -@WEB_TRUE@am__EXEEXT_43 = $(am__EXEEXT_42) +@WEB_TRUE@am__EXEEXT_41 = $(am__EXEEXT_40) TEST_SUITE_LOG = test-suite.log am__test_logs1 = $(TESTS:=.log) am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) @@ -3010,7 +2661,7 @@ NM = @NM@ NMEDIT = @NMEDIT@ OBJCXX = @OBJCXX@ OBJCXXDEPMODE = @OBJCXXDEPMODE@ -OBJCXXFLAGS = @OBJCXXFLAGS@ $(am__append_104) +OBJCXXFLAGS = @OBJCXXFLAGS@ $(am__append_98) OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTANGLE = @OTANGLE@ @@ -3135,20 +2786,30 @@ AM_OBJCXXFLAGS = ## $(WARNING_OBJCXXFLAGS) version = $(WEB2CVERSION) SUBDIRS = doc lib man web2c . window omegafonts otps proglib = lib/lib.a + +#EXTRA_LIBRARIES += libluasocket.a liblua53socket.a libluajitsocket.a + +#EXTRA_LIBRARIES += libluamisc.a liblua53misc.a libluajitmisc.a + +#EXTRA_LIBRARIES += libluatex.a liblua53tex.a libluajittex.a + +#EXTRA_LIBRARIES += libluaffi.a liblua53ffi.a + +#EXTRA_LIBRARIES += libluapplib.a liblua53pplib.a libluajitpplib.a EXTRA_LIBRARIES = libmf.a libmflua.a libmfluajit.a libmputil.a \ libmplibcore.a libmplibextramath.a libmplibbackends.a \ libkanji.a libukanji.a libpdftex.a libluasocket.a \ - liblua53socket.a libluajitsocket.a libluamisc.a liblua53misc.a \ - libluajitmisc.a libunilib.a libff.a libluatex.a liblua53tex.a \ - libluajittex.a libluaffi.a liblua53ffi.a libluapplib.a \ - liblua53pplib.a libluajitpplib.a libxetex.a libsynctex.a \ - libmd5.a + libluajitsocket.a libluamisc.a libluajitmisc.a libunilib.a \ + libff.a libluatex.a libluajittex.a libluaffi.a libluapplib.a \ + libluajitpplib.a libxetex.a libsynctex.a libmd5.a EXTRA_LTLIBRARIES = libsynctex.la -lib_LIBRARIES = $(am__append_116) -lib_LTLIBRARIES = $(am__append_115) +lib_LIBRARIES = $(am__append_110) +lib_LTLIBRARIES = $(am__append_109) dist_man_MANS = synctexdir/man1/synctex.1 synctexdir/man5/synctex.5 nodist_man_MANS = TEST_EXTENSIONS = .pl .test + +#dist_liblua53tex_sources = $(dist_libluatex_sources) EXTRA_DIST = PROJECTS cftests cpascal.h help.h w2c/config.h \ triptrap-sh tangle.web tangle.ch tangleboot.pin cwebdir \ ctangleboot.cin cwebboot.cin cwebboot.hin tangle.test \ @@ -3586,14 +3247,13 @@ TRIPTRAP = $(am__append_7) $(am__append_17) $(am__append_26) \ bin_links = $(am__append_5) $(am__append_14) $(am__append_15) \ $(am__append_24) $(am__append_33) $(am__append_41) \ $(am__append_49) $(am__append_54) $(am__append_88) \ - $(am__append_93) $(am__append_98) + $(am__append_93) install_exe_links = $(am__append_12) $(am__append_22) $(am__append_31) \ $(am__append_39) $(am__append_47) $(am__append_52) \ - $(am__append_86) $(am__append_91) $(am__append_96) + $(am__append_86) $(am__append_91) uninstall_exe_links = $(am__append_13) $(am__append_23) \ $(am__append_32) $(am__append_40) $(am__append_48) \ - $(am__append_53) $(am__append_87) $(am__append_92) \ - $(am__append_97) + $(am__append_53) $(am__append_87) $(am__append_92) NEVER_DIST = `find . $(NEVER_NAMES)` cwebdir/cweave.log \ cwebdir/cweave.trs ctiedir/ctie.log ctiedir/ctie.trs \ tiedir/tie.log tiedir/tie.trs @@ -3707,18 +3367,18 @@ tie_CPPFLAGS = $(AM_CPPFLAGS) -DNOT_WEB2C initex_CPPFLAGS = -DEXEPROG=\"tex.exe\" nodist_initex_SOURCES = callexe.c initex_LDADD = -tex_CPPFLAGS = $(AM_CPPFLAGS) $(am__append_119) +tex_CPPFLAGS = $(AM_CPPFLAGS) $(am__append_113) # With --enable-ipc, TeX may need to link with -lsocket. -tex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_120) +tex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_114) # TeX C sources tex_c_h = texini.c tex0.c texcoerce.h texd.h nodist_tex_SOURCES = $(tex_c_h) tex-pool.c -dist_tex_SOURCES = texextra.c $(am__append_122) +dist_tex_SOURCES = texextra.c $(am__append_116) # We must create texd.h before building the tex_OBJECTS. -tex_prereq = texd.h $(am__append_121) +tex_prereq = texd.h $(am__append_115) tex_ch_srcs = \ tex.web \ tex.ch \ @@ -3913,19 +3573,19 @@ libmplib_web = mplibdir/mp.w mplibdir/psout.w mplibdir/svgout.w \ mplibdir/pngout.w mplibdir/mpmath.w mplibdir/mpmathbinary.w \ mplibdir/mpmathdecimal.w mplibdir/mpmathdouble.w \ mplibdir/mpstrings.w mplibdir/tfmin.w -etex_CPPFLAGS = $(AM_CPPFLAGS) $(am__append_123) +etex_CPPFLAGS = $(AM_CPPFLAGS) $(am__append_117) # With --enable-ipc, e-TeX may need to link with -lsocket. -etex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_124) +etex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_118) # e-TeX C sources etex_c_h = etexini.c etex0.c etexcoerce.h etexd.h nodist_etex_SOURCES = $(etex_c_h) etex-pool.c dist_etex_SOURCES = etexdir/etexextra.c etexdir/etexextra.h \ - etexdir/etex_version.h $(am__append_126) + etexdir/etex_version.h $(am__append_120) # We must create etexd.h and etexdir/etex_version.h before building the etex_OBJECTS. -etex_prereq = etexd.h etexdir/etex_version.h $(am__append_125) +etex_prereq = etexd.h etexdir/etex_version.h $(am__append_119) etex_web_srcs = \ tex.web \ etexdir/etex.ch @@ -3951,20 +3611,20 @@ pweb_programs = pbibtex pdvitype ppltotf ptftopl pproglib = lib/libp.a libkanji_a_SOURCES = ptexdir/kanji.c ptexdir/kanji.h libkanji_a_CPPFLAGS = $(ptex_cppflags) -ptex_CPPFLAGS = $(ptex_cppflags) $(am__append_127) +ptex_CPPFLAGS = $(ptex_cppflags) $(am__append_121) # With --enable-ipc, pTeX may need to link with -lsocket. -ptex_LDADD = $(ptex_ldadd) $(ipc_socketlibs) $(am__append_128) +ptex_LDADD = $(ptex_ldadd) $(ipc_socketlibs) $(am__append_122) ptex_DEPENDENCIES = $(ptex_dependencies) # pTeX C sources ptex_c_h = ptexini.c ptex0.c ptexcoerce.h ptexd.h nodist_ptex_SOURCES = $(ptex_c_h) ptex-pool.c dist_ptex_SOURCES = ptexdir/ptexextra.c ptexdir/ptexextra.h \ - ptexdir/ptex_version.h $(am__append_130) + ptexdir/ptex_version.h $(am__append_124) # We must create ptexd.h and ptexdir/ptex_version.h before building the ptex_OBJECTS. -ptex_prereq = ptexd.h ptexdir/ptex_version.h $(am__append_129) +ptex_prereq = ptexd.h ptexdir/ptex_version.h $(am__append_123) ptex_web_srcs = \ tex.web \ tex.ch @@ -4005,22 +3665,22 @@ pweb_tests = ptexdir/pbibtex.test ptexdir/pdvitype.test \ ptexdir/nissya.test ptexdir/sample.test ptexdir/yokotate.test \ ptexdir/skipjfmp.test eptex_CPPFLAGS = $(PTEXENC_INCLUDES) $(AM_CPPFLAGS) -I$(srcdir)/libmd5 \ - $(am__append_135) + $(am__append_129) # With --enable-ipc, e-pTeX may need to link with -lsocket. eptex_LDADD = libkanji.a $(pproglib) $(PTEXENC_LIBS) $(LDADD) \ - $(ipc_socketlibs) libmd5.a $(am__append_136) + $(ipc_socketlibs) libmd5.a $(am__append_130) eptex_DEPENDENCIES = libkanji.a $(pproglib) $(PTEXENC_DEPEND) $(default_dependencies) libmd5.a # e-pTeX C sources eptex_c_h = eptexini.c eptex0.c eptexcoerce.h eptexd.h nodist_eptex_SOURCES = $(eptex_c_h) eptex-pool.c dist_eptex_SOURCES = eptexdir/eptexextra.c eptexdir/eptexextra.h \ - eptexdir/eptex_version.h $(am__append_138) + eptexdir/eptex_version.h $(am__append_132) # We must create eptexd.h and eptexdir/eptex_version.h before building the eptex_OBJECTS. eptex_prereq = eptexd.h etexdir/etex_version.h ptexdir/ptex_version.h \ - eptexdir/eptex_version.h $(am__append_137) + eptexdir/eptex_version.h $(am__append_131) eptex_web_srcs = \ tex.web \ etexdir/etex.ch \ @@ -4050,21 +3710,21 @@ up_tangle = $(tangle_silent)WEBINPUTS=.:$(srcdir)/uptexdir:$(srcdir) $(buildenv) upweb_programs = upbibtex updvitype uppltotf uptftopl libukanji_a_SOURCES = uptexdir/kanji.c uptexdir/kanji.h uptexdir/kanji_dump.c libukanji_a_CPPFLAGS = $(uptex_cppflags) -uptex_CPPFLAGS = $(uptex_cppflags) $(am__append_131) +uptex_CPPFLAGS = $(uptex_cppflags) $(am__append_125) # With --enable-ipc, upTeX may need to link with -lsocket. -uptex_LDADD = $(uptex_ldadd) $(ipc_socketlibs) $(am__append_132) +uptex_LDADD = $(uptex_ldadd) $(ipc_socketlibs) $(am__append_126) uptex_DEPENDENCIES = $(uptex_dependencies) # upTeX C sources uptex_c_h = uptexini.c uptex0.c uptexcoerce.h uptexd.h nodist_uptex_SOURCES = $(uptex_c_h) uptex-pool.c dist_uptex_SOURCES = uptexdir/uptexextra.c uptexdir/uptexextra.h \ - uptexdir/uptex_version.h $(am__append_134) + uptexdir/uptex_version.h $(am__append_128) # We must create uptexd.h and uptexdir/uptex_version.h before building the uptex_OBJECTS. uptex_prereq = uptexd.h ptexdir/ptex_version.h \ - uptexdir/uptex_version.h $(am__append_133) + uptexdir/uptex_version.h $(am__append_127) uptex_web_srcs = \ tex.web \ tex.ch @@ -4109,23 +3769,23 @@ upweb_tests = \ uptexdir/gkhuge.test euptex_CPPFLAGS = $(PTEXENC_INCLUDES) $(AM_CPPFLAGS) \ - -I$(srcdir)/libmd5 $(am__append_139) + -I$(srcdir)/libmd5 $(am__append_133) # With --enable-ipc, e-upTeX may need to link with -lsocket. euptex_LDADD = libukanji.a $(pproglib) $(PTEXENC_LIBS) $(LDADD) \ - $(ipc_socketlibs) libmd5.a $(am__append_140) + $(ipc_socketlibs) libmd5.a $(am__append_134) euptex_DEPENDENCIES = libukanji.a $(pproglib) $(PTEXENC_DEPEND) $(default_dependencies) libmd5.a # e-upTeX C sources euptex_c_h = euptexini.c euptex0.c euptexcoerce.h euptexd.h nodist_euptex_SOURCES = $(euptex_c_h) euptex-pool.c dist_euptex_SOURCES = euptexdir/euptexextra.c euptexdir/euptexextra.h \ - $(am__append_142) + $(am__append_136) # We must create euptexd.h and [eu]ptexdir/[eu]ptex_version.h before building the euptex_OBJECTS. euptex_prereq = euptexd.h etexdir/etex_version.h \ ptexdir/ptex_version.h eptexdir/eptex_version.h \ - uptexdir/uptex_version.h $(am__append_141) + uptexdir/uptex_version.h $(am__append_135) euptex_web_srcs = \ tex.web \ etexdir/etex.ch \ @@ -4181,7 +3841,7 @@ pdftex_dependencies = $(proglib) $(KPATHSEA_DEPEND) $(LIBPNG_DEPEND) \ # Force Automake to use CXXLD for linking nodist_EXTRA_pdftex_SOURCES = dummy.cxx pdf_tangle = WEBINPUTS=.:$(srcdir)/pdftexdir AM_V_P=$(AM_V_P) $(SHELL) ./tangle-sh $@ $(TANGLE) -pdftex_CPPFLAGS = $(pdftex_cppflags) $(am__append_143) +pdftex_CPPFLAGS = $(pdftex_cppflags) $(am__append_137) pdftex_CXXFLAGS = $(WARNING_CXXFLAGS) # With --enable-ipc, pdfTeX may need to link with -lsocket. @@ -4194,7 +3854,7 @@ pdftex_c_h = pdftexini.c pdftex0.c pdftexcoerce.h pdftexd.h nodist_pdftex_SOURCES = $(pdftex_c_h) pdftex-pool.c dist_pdftex_SOURCES = pdftexdir/pdftexextra.c pdftexdir/pdftexextra.h \ pdftexdir/pdftex_version.h pdftexdir/etex_version.h \ - $(am__append_144) + $(am__append_138) pdftex_ch_srcs = \ pdftexdir/pdftex.web \ pdftexdir/tex.ch0 \ @@ -4225,21 +3885,21 @@ pdftosrc_LDADD = $(pdftex_ldadd) $(LDADD) pdftosrc_DEPENDENCIES = $(pdftex_dependencies) pdftosrc_tests = pdftexdir/pdftosrc.test libluasocket_a_DEPENDENCIES = $(ZLIB_DEPEND) -liblua53socket_a_DEPENDENCIES = $(ZLIB_DEPEND) +#liblua53socket_a_DEPENDENCIES = $(ZLIB_DEPEND) libluajitsocket_a_DEPENDENCIES = $(ZLIB_DEPEND) libluasocket_a_CPPFLAGS = \ -DLUASOCKET_DEBUG -I$(top_srcdir)/luatexdir/luasocket $(LUA_INCLUDES) -liblua53socket_a_CPPFLAGS = \ - -DLUASOCKET_DEBUG -I$(top_srcdir)/luatexdir/luasocket $(LUA_LUA53_INCLUDES) +#liblua53socket_a_CPPFLAGS = \ +# -DLUASOCKET_DEBUG -I$(top_srcdir)/luatexdir/luasocket $(LUA_LUA53_INCLUDES) libluajitsocket_a_CPPFLAGS = \ -DLUASOCKET_DEBUG -I$(top_srcdir)/luatexdir/luasocket $(LUAJIT_INCLUDES) libluasocket_a_CFLAGS = # $(WARNING_CFLAGS) libluajitsocket_a_CFLAGS = # $(WARNING_CFLAGS) nodist_libluasocket_a_SOURCES = $(libluasocket_sources) -nodist_liblua53socket_a_SOURCES = $(libluasocket_sources) +#nodist_liblua53socket_a_SOURCES = $(libluasocket_sources) nodist_libluajitsocket_a_SOURCES = $(libluasocket_sources) libluasocket_sources = \ luatexdir/luasocket/src/auxiliar.c \ @@ -4275,17 +3935,17 @@ libluasocket_sources = \ luatexdir/luasocket/src/usocket.h libluamisc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) libluasocket.a libluaffi.a libluapplib.a -liblua53misc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) liblua53socket.a liblua53ffi.a liblua53pplib.a +#liblua53misc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) liblua53socket.a liblua53ffi.a liblua53pplib.a libluajitmisc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) libluajitsocket.a libluajitpplib.a libluamisc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUA_INCLUDES) -liblua53misc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUA_LUA53_INCLUDES) +#liblua53misc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUA_LUA53_INCLUDES) libluajitmisc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) \ $(LUAJIT_INCLUDES) -DLuajitTeX -I$(srcdir)/luatexdir libluamisc_a_CFLAGS = # $(WARNING_CFLAGS) -liblua53misc_a_CFLAGS = # $(WARNING_CFLAGS) +#liblua53misc_a_CFLAGS = # $(WARNING_CFLAGS) libluajitmisc_a_CFLAGS = # $(WARNING_CFLAGS) nodist_libluamisc_a_SOURCES = $(libluamisc_sources) -nodist_liblua53misc_a_SOURCES = $(libluamisc_sources) +#nodist_liblua53misc_a_SOURCES = $(libluamisc_sources) nodist_libluajitmisc_a_SOURCES = $(libluamisc_sources) libluamisc_sources = \ luatexdir/luafilesystem/src/lfs.c \ @@ -4402,14 +4062,15 @@ libff_a_SOURCES = \ luatexdir/luafontloader/fontforge/inc/gimage.h \ luatexdir/luafontloader/fontforge/inc/intl.h -LUA_INCLUDES = $(LUA52_INCLUDES) $(LUA52_DEFINES) -LUA_LIBS = $(LUA52_LIBS) -LUA_DEPEND = $(LUA52_DEPEND) -LUA_LUA53_INCLUDES = $(LUA53_INCLUDES) $(LUA53_DEFINES) -LUA_LUA53_LIBS = $(LUA53_LIBS) -LUA_LUA53_DEPEND = $(LUA53_DEPEND) + +#LUA_LUA53_INCLUDES = $(LUA53_INCLUDES) $(LUA53_DEFINES) +#LUA_LUA53_LIBS = $(LUA53_LIBS) +#LUA_LUA53_DEPEND = $(LUA53_DEPEND) +LUA_INCLUDES = $(LUA53_INCLUDES) $(LUA53_DEFINES) +LUA_LIBS = $(LUA53_LIBS) +LUA_DEPEND = $(LUA53_DEPEND) libluatex_a_DEPENDENCIES = libff.a libluamisc.a -liblua53tex_a_DEPENDENCIES = libff.a liblua53misc.a +#liblua53tex_a_DEPENDENCIES = libff.a liblua53misc.a libluajittex_a_DEPENDENCIES = libff.a libluajitmisc.a libluatex_a_preflags = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) \ $(LIBPNG_INCLUDES) -I$(srcdir)/libmd5 -DpdfTeX \ @@ -4420,11 +4081,11 @@ libluatex_a_preflags = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) \ -I$(srcdir)/luatexdir/luafontloader/fontforge/fontforge \ -DSYNCTEX_ENGINE_H='<synctex-luatex.h>' -I$(srcdir)/synctexdir libluatex_a_CPPFLAGS = $(libluatex_a_preflags) $(LUA_INCLUDES) -liblua53tex_a_CPPFLAGS = $(libluatex_a_preflags) $(LUA_LUA53_INCLUDES) +#liblua53tex_a_CPPFLAGS = $(libluatex_a_preflags) $(LUA_LUA53_INCLUDES) libluajittex_a_CPPFLAGS = $(libluatex_a_preflags) $(LUAJIT_INCLUDES) \ $(LUAJIT_DEFINES) -DLuajitTeX libluatex_a_CXXFLAGS = $(WARNING_CXXFLAGS) -liblua53tex_a_CXXFLAGS = $(WARNING_CXXFLAGS) +#liblua53tex_a_CXXFLAGS = $(WARNING_CXXFLAGS) libluajittex_a_CXXFLAGS = $(WARNING_CXXFLAGS) dist_libluatex_a_SOURCES = \ luatexdir/lua/lstrlibext.c \ @@ -4435,15 +4096,13 @@ nodist_libluatex_a_SOURCES = \ $(dist_libluatex_sources) \ $(nodist_libluatex_sources) -dist_liblua53tex_a_SOURCES = \ - luatexdir/lua/lstrlibext.c \ - luatexdir/lua/helpers.c \ - luatexdir/lua/texluac.c - -nodist_liblua53tex_a_SOURCES = \ - $(dist_libluatex_sources) \ - $(nodist_libluatex_sources) - +# dist_liblua53tex_a_SOURCES = \ +# luatexdir/lua/lstrlibext.c \ +# luatexdir/lua/helpers.c \ +# luatexdir/lua/texluac.c +# nodist_liblua53tex_a_SOURCES = \ +# $(dist_libluatex_sources) \ +# $(nodist_libluatex_sources) dist_libluajittex_a_SOURCES = \ luatexdir/lua/lauxlib_bridge.h \ luatexdir/lua/lstrlibext.c \ @@ -4847,17 +4506,17 @@ luatex_pdf_ctangle = $(ctangle_silent)CWEBINPUTS=$(srcdir)/luatexdir/pdf $(ctang ################################################################################ luatex_tex_ctangle = $(ctangle_silent)CWEBINPUTS=$(srcdir)/luatexdir/tex $(ctangle) luatex_utils_ctangle = $(ctangle_silent)CWEBINPUTS=$(srcdir)/luatexdir/utils $(ctangle) -dist_liblua53tex_sources = $(dist_libluatex_sources) +#$(liblua53ffi_a_OBJECTS): $(LUA_LUA53_DEPEND) libluaffi_a_CPPFLAGS = \ -I$(top_srcdir)/luatexdir/luaffi -I$(top_srcdir)/luatexdir/luaffi/dynasm $(LUA_INCLUDES) -liblua53ffi_a_CPPFLAGS = \ - -I$(top_srcdir)/luatexdir/luaffi -I$(top_srcdir)/luatexdir/luaffi/dynasm $(LUA_LUA53_INCLUDES) +#liblua53ffi_a_CPPFLAGS = \ +# -I$(top_srcdir)/luatexdir/luaffi -I$(top_srcdir)/luatexdir/luaffi/dynasm $(LUA_LUA53_INCLUDES) libluaffi_a_CFLAGS = # $(WARNING_CFLAGS) -liblua53ffi_a_CFLAGS = # $(WARNING_CFLAGS) +#liblua53ffi_a_CFLAGS = # $(WARNING_CFLAGS) nodist_libluaffi_a_SOURCES = $(libluaffi_sources) -nodist_liblua53ffi_a_SOURCES = $(libluaffi_sources) +#nodist_liblua53ffi_a_SOURCES = $(libluaffi_sources) libluaffi_sources = \ luatexdir/luaffi/call_arm.h \ luatexdir/luaffi/call.c \ @@ -4869,23 +4528,22 @@ libluaffi_sources = \ luatexdir/luaffi/ffi.h \ luatexdir/luaffi/parser.c -liblua53ffi_sources = $(libluaffi_sources) libluapplib_a_DEPENDENCIES = $(ZLIB_DEPEND) -liblua53pplib_a_DEPENDENCIES = $(ZLIB_DEPEND) +#liblua53pplib_a_DEPENDENCIES = $(ZLIB_DEPEND) libluajitpplib_a_DEPENDENCIES = $(ZLIB_DEPEND) libluapplib_a_CPPFLAGS = \ -I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/util $(ZLIB_INCLUDES) $(LUA_INCLUDES) -liblua53pplib_a_CPPFLAGS = \ - -I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/util $(ZLIB_INCLUDES) $(LUA_LUA53_INCLUDES) +#liblua53pplib_a_CPPFLAGS = \ +# -I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/util $(ZLIB_INCLUDES) $(LUA_LUA53_INCLUDES) libluajitpplib_a_CPPFLAGS = \ -I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/util $(ZLIB_INCLUDES) $(LUAJIT_INCLUDES) libluapplib_a_CFLAGS = # $(WARNING_CFLAGS) libluajitpplib_a_CFLAGS = # $(WARNING_CFLAGS) nodist_libluapplib_a_SOURCES = $(libluapplib_sources) -nodist_liblua53pplib_a_SOURCES = $(libluapplib_sources) +#nodist_liblua53pplib_a_SOURCES = $(libluapplib_sources) nodist_libluajitpplib_a_SOURCES = $(libluapplib_sources) libluapplib_sources = \ luatexdir/luapplib/ppapi.h \ @@ -4904,8 +4562,12 @@ libluapplib_sources = \ luatexdir/luapplib/ppload.h \ luatexdir/luapplib/ppstream.c \ luatexdir/luapplib/ppstream.h \ + luatexdir/luapplib/pptest1.c \ + luatexdir/luapplib/pptest2.c \ + luatexdir/luapplib/pptest3.c \ luatexdir/luapplib/ppxref.c \ luatexdir/luapplib/ppxref.h \ + luatexdir/luapplib/util/utilarm.h \ luatexdir/luapplib/util/utilbasexx.c \ luatexdir/luapplib/util/utilbasexx.h \ luatexdir/luapplib/util/utilcrypt.c \ @@ -4930,11 +4592,10 @@ libluapplib_sources = \ luatexdir/luapplib/util/utilnumber.h \ luatexdir/luapplib/util/utilplat.h \ luatexdir/luapplib/util/utilsha.c \ - luatexdir/luapplib/util/utilsha.h \ - luatexdir/luapplib/zlib/zconf.h \ - luatexdir/luapplib/zlib/zlib.h + luatexdir/luapplib/util/utilsha.h -liblua53pplib_sources = $(libluapplib_sources) + +#liblua53pplib_sources = $(libluapplib_sources) libluajitpplib_sources = $(libluapplib_sources) # Force Automake to use CXXLD for linking @@ -4946,14 +4607,14 @@ luatex_postflags = -I$(srcdir)/libmd5 -DpdfTeX -I$(srcdir)/luatexdir \ -I$(srcdir)/mplibdir -Dextra_version_info=`date +-%Y%m%d%H` \ -I$(srcdir)/synctexdir -DSYNCTEX_ENGINE_H='<synctex-luatex.h>' luatex_CPPFLAGS = $(luatex_preflags) $(LUA_INCLUDES) $(luatex_postflags) -luatex53_CPPFLAGS = $(luatex_preflags) $(LUA_LUA53_INCLUDES) $(luatex_postflags) +#luatex53_CPPFLAGS = $(luatex_preflags) $(LUA_LUA53_INCLUDES) $(luatex_postflags) luajittex_CPPFLAGS = $(luatex_preflags) $(LUAJIT_INCLUDES) \ $(LUAJIT_DEFINES) $(luatex_postflags) -DLuajitTeX luatex_CXXFLAGS = $(WARNING_CXXFLAGS) -luatex53_CXXFLAGS = $(WARNING_CXXFLAGS) +#luatex53_CXXFLAGS = $(WARNING_CXXFLAGS) luajittex_CXXFLAGS = $(WARNING_CXXFLAGS) luatex_LDFLAGS = -export-dynamic -luatex53_LDFLAGS = -export-dynamic +#luatex53_LDFLAGS = -export-dynamic luajittex_LDFLAGS = -export-dynamic $(LUAJIT_LDEXTRA) #luatex_postldadd = libmplibcore.a $(MPFR_LIBS) $(GMP_LIBS) @@ -4961,14 +4622,14 @@ luatex_postldadd = libmplibcore.a $(ZZIPLIB_LIBS) $(LIBPNG_LIBS) \ $(ZLIB_LIBS) $(LDADD) libmputil.a libunilib.a libmd5.a \ $(lua_socketlibs) luatex_LDADD = libluatex.a libff.a libluamisc.a libluasocket.a libluaffi.a libluapplib.a $(LUA_LIBS) $(luatex_postldadd) -luatex53_LDADD = liblua53tex.a libff.a liblua53misc.a liblua53socket.a liblua53ffi.a liblua53pplib.a $(LUA_LUA53_LIBS) $(luatex_postldadd) +#luatex53_LDADD = liblua53tex.a libff.a liblua53misc.a liblua53socket.a liblua53ffi.a liblua53pplib.a $(LUA_LUA53_LIBS) $(luatex_postldadd) luajittex_LDADD = libluajittex.a libff.a libluajitmisc.a libluajitsocket.a libluajitpplib.a $(LUAJIT_LIBS) $(luatex_postldadd) luatex_depend = $(proglib) $(KPATHSEA_DEPEND) $(LIBPNG_DEPEND) libmputil.a libmd5.a luatex_DEPENDENCIES = $(luatex_depend) libluatex.a -luatex53_DEPENDENCIES = $(luatex_depend) liblua53tex.a +#luatex53_DEPENDENCIES = $(luatex_depend) liblua53tex.a luajittex_DEPENDENCIES = $(luatex_depend) libluajittex.a nodist_luatex_SOURCES = $(luatex_sources) -nodist_luatex53_SOURCES = $(luatex_sources) +#nodist_luatex53_SOURCES = $(luatex_sources) nodist_luajittex_SOURCES = $(luatex_sources) luatex_sources = \ luatexdir/luatex_svnversion.h \ @@ -4979,9 +4640,10 @@ luatex_sources = \ call_luatex_CPPFLAGS = -DEXEPROG=\"luatex.exe\" nodist_call_luatex_SOURCES = callexe.c call_luatex_LDADD = -call_luatex53_CPPFLAGS = -DEXEPROG=\"luatex53.exe\" -nodist_call_luatex53_SOURCES = callexe.c -call_luatex53_LDADD = + +#call_luatex53_CPPFLAGS = -DEXEPROG=\"luatex53.exe\" +#nodist_call_luatex53_SOURCES = callexe.c +#call_luatex53_LDADD = call_luajittex_CPPFLAGS = -DEXEPROG=\"luajittex.exe\" nodist_call_luajittex_SOURCES = callexe.c call_luajittex_LDADD = @@ -4989,7 +4651,8 @@ call_luajittex_LDADD = # LuaTeX/LuaJITTeX Tests # luatex_tests = luatexdir/luatex.test luatexdir/luaimage.test -luatex53_tests = luatexdir/luatex.test luatexdir/luaimage.test +#luatex53_tests = luatexdir/luatex.test luatexdir/luaimage.test +#luatexdir/luatex53.log luatexdir/luaimage53.log: luatex53$(EXEEXT) luajittex_tests = luatexdir/luajittex.test luatexdir/luajitimage.test # Force Automake to use CXXLD for linking @@ -4999,18 +4662,18 @@ libxetex = libxetex.a xetex_cppflags = $(AM_CPPFLAGS) -I$(srcdir)/xetexdir $(ICU_INCLUDES) \ $(FREETYPE2_INCLUDES) $(TECKIT_INCLUDES) $(HARFBUZZ_INCLUDES) \ $(GRAPHITE2_INCLUDES) $(POPPLER_INCLUDES) $(LIBPNG_INCLUDES) \ - $(ZLIB_INCLUDES) -I$(srcdir)/libmd5 $(am__append_103) \ - $(am__append_105) + $(ZLIB_INCLUDES) -I$(srcdir)/libmd5 $(am__append_97) \ + $(am__append_99) xetex_ldadd = $(libxetex) $(HARFBUZZ_LIBS) $(GRAPHITE2_LIBS) \ $(ICU_LIBS) $(ICU_LIBS_EXTRA) $(TECKIT_LIBS) $(POPPLER_LIBS) \ $(LIBPNG_LIBS) $(FREETYPE2_LIBS) $(ZLIB_LIBS) libmd5.a \ - $(am__append_106) + $(am__append_100) xetex_dependencies = $(proglib) $(KPATHSEA_DEPEND) $(ICU_DEPEND) \ $(TECKIT_DEPEND) $(HARFBUZZ_DEPEND) $(GRAPHITE2_DEPEND) \ $(POPPLER_DEPEND) $(LIBPNG_DEPEND) $(FREETYPE2_DEPEND) \ $(ZLIB_DEPEND) libmd5.a @XETEX_MACOSX_TRUE@xetex_LDFLAGS = -framework ApplicationServices -framework Cocoa -xetex_CPPFLAGS = $(xetex_cppflags) $(am__append_145) +xetex_CPPFLAGS = $(xetex_cppflags) $(am__append_139) xetex_CFLAGS = $(WARNING_CFLAGS) xetex_CXXFLAGS = # $(WARNING_CXXFLAGS) xetex_LDADD = $(xetex_ldadd) $(LDADD) $(ipc_socketlibs) @@ -5021,7 +4684,7 @@ xetex_c_h = xetexini.c xetex0.c xetexcoerce.h xetexd.h nodist_xetex_SOURCES = $(xetex_c_h) xetex-pool.c dist_xetex_SOURCES = xetexdir/xetexextra.c xetexdir/xetexextra.h \ xetexdir/etex_version.h xetexdir/xetex_version.h \ - $(am__append_146) + $(am__append_140) xetex_ch_srcs = \ xetexdir/xetex.web \ xetexdir/tex.ch0 \ @@ -5048,7 +4711,7 @@ libxetex_a_SOURCES = xetexdir/XeTeXFontInst.cpp \ xetexdir/image/jpegimage.h xetexdir/image/mfileio.c \ xetexdir/image/mfileio.h xetexdir/image/numbers.c \ xetexdir/image/numbers.h xetexdir/image/pngimage.c \ - xetexdir/image/pngimage.h $(am__append_107) $(am__append_108) + xetexdir/image/pngimage.h $(am__append_101) $(am__append_102) # We must create xetexd.h etc. before building the libxetex_a_OBJECTS. libxetex_prereq = xetexd.h $(xetex_dependencies) @@ -5152,12 +4815,12 @@ synctex_SOURCES = \ synctexdir/synctex_main.c synctex_CPPFLAGS = -I$(srcdir)/synctexdir -synctex_LDADD = $(libsynctex) $(ZLIB_LIBS) $(am__append_117) +synctex_LDADD = $(libsynctex) $(ZLIB_LIBS) $(am__append_111) libsynctex = $(LTLIBSYNCTEX) $(LIBSYNCTEX) libsynctex_la_CPPFLAGS = -I$(srcdir)/synctexdir $(ZLIB_INCLUDES) -DSYNCTEX_USE_LOCAL_HEADER libsynctex_a_CPPFLAGS = $(libsynctex_la_CPPFLAGS) libsynctex_la_LDFLAGS = -rpath @libdir@ -bindir @bindir@ -no-undefined -version-info $(SYNCTEX_LT_VERSINFO) -libsynctex_la_LIBADD = $(ZLIB_LIBS) $(am__append_118) +libsynctex_la_LIBADD = $(ZLIB_LIBS) $(am__append_112) libsynctex_la_SOURCES = \ synctexdir/synctex_parser.c \ synctexdir/synctex_parser_local.h \ @@ -5631,30 +5294,30 @@ luatexdir/luaffi/$(am__dirstamp): luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luaffi/$(DEPDIR) @: > luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) -luatexdir/luaffi/liblua53ffi_a-call.$(OBJEXT): \ +luatexdir/luaffi/libluaffi_a-call.$(OBJEXT): \ luatexdir/luaffi/$(am__dirstamp) \ luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) -luatexdir/luaffi/liblua53ffi_a-ctype.$(OBJEXT): \ +luatexdir/luaffi/libluaffi_a-ctype.$(OBJEXT): \ luatexdir/luaffi/$(am__dirstamp) \ luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) -luatexdir/luaffi/liblua53ffi_a-ffi.$(OBJEXT): \ +luatexdir/luaffi/libluaffi_a-ffi.$(OBJEXT): \ luatexdir/luaffi/$(am__dirstamp) \ luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) -luatexdir/luaffi/liblua53ffi_a-parser.$(OBJEXT): \ +luatexdir/luaffi/libluaffi_a-parser.$(OBJEXT): \ luatexdir/luaffi/$(am__dirstamp) \ luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) -liblua53ffi.a: $(liblua53ffi_a_OBJECTS) $(liblua53ffi_a_DEPENDENCIES) $(EXTRA_liblua53ffi_a_DEPENDENCIES) - $(AM_V_at)-rm -f liblua53ffi.a - $(AM_V_AR)$(liblua53ffi_a_AR) liblua53ffi.a $(liblua53ffi_a_OBJECTS) $(liblua53ffi_a_LIBADD) - $(AM_V_at)$(RANLIB) liblua53ffi.a +libluaffi.a: $(libluaffi_a_OBJECTS) $(libluaffi_a_DEPENDENCIES) $(EXTRA_libluaffi_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluaffi.a + $(AM_V_AR)$(libluaffi_a_AR) libluaffi.a $(libluaffi_a_OBJECTS) $(libluaffi_a_LIBADD) + $(AM_V_at)$(RANLIB) libluaffi.a luatexdir/luafilesystem/src/$(am__dirstamp): @$(MKDIR_P) luatexdir/luafilesystem/src @: > luatexdir/luafilesystem/src/$(am__dirstamp) luatexdir/luafilesystem/src/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luafilesystem/src/$(DEPDIR) @: > luatexdir/luafilesystem/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luafilesystem/src/liblua53misc_a-lfs.$(OBJEXT): \ +luatexdir/luafilesystem/src/libluajitmisc_a-lfs.$(OBJEXT): \ luatexdir/luafilesystem/src/$(am__dirstamp) \ luatexdir/luafilesystem/src/$(DEPDIR)/$(am__dirstamp) luatexdir/luamd5/$(am__dirstamp): @@ -5663,10 +5326,10 @@ luatexdir/luamd5/$(am__dirstamp): luatexdir/luamd5/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luamd5/$(DEPDIR) @: > luatexdir/luamd5/$(DEPDIR)/$(am__dirstamp) -luatexdir/luamd5/liblua53misc_a-md5.$(OBJEXT): \ +luatexdir/luamd5/libluajitmisc_a-md5.$(OBJEXT): \ luatexdir/luamd5/$(am__dirstamp) \ luatexdir/luamd5/$(DEPDIR)/$(am__dirstamp) -luatexdir/luamd5/liblua53misc_a-md5lib.$(OBJEXT): \ +luatexdir/luamd5/libluajitmisc_a-md5lib.$(OBJEXT): \ luatexdir/luamd5/$(am__dirstamp) \ luatexdir/luamd5/$(DEPDIR)/$(am__dirstamp) luatexdir/luapeg/$(am__dirstamp): @@ -5675,7 +5338,7 @@ luatexdir/luapeg/$(am__dirstamp): luatexdir/luapeg/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luapeg/$(DEPDIR) @: > luatexdir/luapeg/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapeg/liblua53misc_a-lpeg.$(OBJEXT): \ +luatexdir/luapeg/libluajitmisc_a-lpeg.$(OBJEXT): \ luatexdir/luapeg/$(am__dirstamp) \ luatexdir/luapeg/$(DEPDIR)/$(am__dirstamp) luatexdir/luazip/src/$(am__dirstamp): @@ -5684,7 +5347,7 @@ luatexdir/luazip/src/$(am__dirstamp): luatexdir/luazip/src/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luazip/src/$(DEPDIR) @: > luatexdir/luazip/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazip/src/liblua53misc_a-luazip.$(OBJEXT): \ +luatexdir/luazip/src/libluajitmisc_a-luazip.$(OBJEXT): \ luatexdir/luazip/src/$(am__dirstamp) \ luatexdir/luazip/src/$(DEPDIR)/$(am__dirstamp) luatexdir/luazlib/$(am__dirstamp): @@ -5693,10 +5356,10 @@ luatexdir/luazlib/$(am__dirstamp): luatexdir/luazlib/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luazlib/$(DEPDIR) @: > luatexdir/luazlib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazlib/liblua53misc_a-lgzip.$(OBJEXT): \ +luatexdir/luazlib/libluajitmisc_a-lgzip.$(OBJEXT): \ luatexdir/luazlib/$(am__dirstamp) \ luatexdir/luazlib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazlib/liblua53misc_a-lzlib.$(OBJEXT): \ +luatexdir/luazlib/libluajitmisc_a-lzlib.$(OBJEXT): \ luatexdir/luazlib/$(am__dirstamp) \ luatexdir/luazlib/$(DEPDIR)/$(am__dirstamp) luatexdir/slnunicode/$(am__dirstamp): @@ -5705,39 +5368,48 @@ luatexdir/slnunicode/$(am__dirstamp): luatexdir/slnunicode/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/slnunicode/$(DEPDIR) @: > luatexdir/slnunicode/$(DEPDIR)/$(am__dirstamp) -luatexdir/slnunicode/liblua53misc_a-slnunico.$(OBJEXT): \ +luatexdir/slnunicode/libluajitmisc_a-slnunico.$(OBJEXT): \ luatexdir/slnunicode/$(am__dirstamp) \ luatexdir/slnunicode/$(DEPDIR)/$(am__dirstamp) -liblua53misc.a: $(liblua53misc_a_OBJECTS) $(liblua53misc_a_DEPENDENCIES) $(EXTRA_liblua53misc_a_DEPENDENCIES) - $(AM_V_at)-rm -f liblua53misc.a - $(AM_V_AR)$(liblua53misc_a_AR) liblua53misc.a $(liblua53misc_a_OBJECTS) $(liblua53misc_a_LIBADD) - $(AM_V_at)$(RANLIB) liblua53misc.a +libluajitmisc.a: $(libluajitmisc_a_OBJECTS) $(libluajitmisc_a_DEPENDENCIES) $(EXTRA_libluajitmisc_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluajitmisc.a + $(AM_V_AR)$(libluajitmisc_a_AR) libluajitmisc.a $(libluajitmisc_a_OBJECTS) $(libluajitmisc_a_LIBADD) + $(AM_V_at)$(RANLIB) libluajitmisc.a luatexdir/luapplib/$(am__dirstamp): @$(MKDIR_P) luatexdir/luapplib @: > luatexdir/luapplib/$(am__dirstamp) luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luapplib/$(DEPDIR) @: > luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/liblua53pplib_a-pparray.$(OBJEXT): \ +luatexdir/luapplib/libluajitpplib_a-pparray.$(OBJEXT): \ + luatexdir/luapplib/$(am__dirstamp) \ + luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) +luatexdir/luapplib/libluajitpplib_a-ppcrypt.$(OBJEXT): \ + luatexdir/luapplib/$(am__dirstamp) \ + luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) +luatexdir/luapplib/libluajitpplib_a-ppdict.$(OBJEXT): \ + luatexdir/luapplib/$(am__dirstamp) \ + luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) +luatexdir/luapplib/libluajitpplib_a-ppheap.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/liblua53pplib_a-ppcrypt.$(OBJEXT): \ +luatexdir/luapplib/libluajitpplib_a-ppload.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/liblua53pplib_a-ppdict.$(OBJEXT): \ +luatexdir/luapplib/libluajitpplib_a-ppstream.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/liblua53pplib_a-ppheap.$(OBJEXT): \ +luatexdir/luapplib/libluajitpplib_a-pptest1.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/liblua53pplib_a-ppload.$(OBJEXT): \ +luatexdir/luapplib/libluajitpplib_a-pptest2.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/liblua53pplib_a-ppstream.$(OBJEXT): \ +luatexdir/luapplib/libluajitpplib_a-pptest3.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/liblua53pplib_a-ppxref.$(OBJEXT): \ +luatexdir/luapplib/libluajitpplib_a-ppxref.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) luatexdir/luapplib/util/$(am__dirstamp): @@ -5746,116 +5418,113 @@ luatexdir/luapplib/util/$(am__dirstamp): luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luapplib/util/$(DEPDIR) @: > luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utilbasexx.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utilcrypt.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utilflate.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utilflate.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utilfpred.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utilfpred.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utiliof.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utiliof.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utillog.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utillog.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utillzw.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utillzw.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utilmd5.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utilmd5.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utilmem.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utilmem.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utilnumber.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utilnumber.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/liblua53pplib_a-utilsha.$(OBJEXT): \ +luatexdir/luapplib/util/libluajitpplib_a-utilsha.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -liblua53pplib.a: $(liblua53pplib_a_OBJECTS) $(liblua53pplib_a_DEPENDENCIES) $(EXTRA_liblua53pplib_a_DEPENDENCIES) - $(AM_V_at)-rm -f liblua53pplib.a - $(AM_V_AR)$(liblua53pplib_a_AR) liblua53pplib.a $(liblua53pplib_a_OBJECTS) $(liblua53pplib_a_LIBADD) - $(AM_V_at)$(RANLIB) liblua53pplib.a +libluajitpplib.a: $(libluajitpplib_a_OBJECTS) $(libluajitpplib_a_DEPENDENCIES) $(EXTRA_libluajitpplib_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluajitpplib.a + $(AM_V_AR)$(libluajitpplib_a_AR) libluajitpplib.a $(libluajitpplib_a_OBJECTS) $(libluajitpplib_a_LIBADD) + $(AM_V_at)$(RANLIB) libluajitpplib.a luatexdir/luasocket/src/$(am__dirstamp): @$(MKDIR_P) luatexdir/luasocket/src @: > luatexdir/luasocket/src/$(am__dirstamp) luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luasocket/src/$(DEPDIR) @: > luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-auxiliar.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-auxiliar.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-buffer.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-buffer.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-compat.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-compat.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-except.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-except.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-inet.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-inet.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-io.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-io.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-lua_preload.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-lua_preload.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-luasocket.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-luasocket.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-mime.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-mime.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-options.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-options.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-select.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-select.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-serial.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-serial.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-socket.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-socket.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-tcp.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-tcp.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-timeout.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-timeout.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/liblua53socket_a-udp.$(OBJEXT): \ +luatexdir/luasocket/src/libluajitsocket_a-udp.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -liblua53socket.a: $(liblua53socket_a_OBJECTS) $(liblua53socket_a_DEPENDENCIES) $(EXTRA_liblua53socket_a_DEPENDENCIES) - $(AM_V_at)-rm -f liblua53socket.a - $(AM_V_AR)$(liblua53socket_a_AR) liblua53socket.a $(liblua53socket_a_OBJECTS) $(liblua53socket_a_LIBADD) - $(AM_V_at)$(RANLIB) liblua53socket.a +libluajitsocket.a: $(libluajitsocket_a_OBJECTS) $(libluajitsocket_a_DEPENDENCIES) $(EXTRA_libluajitsocket_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluajitsocket.a + $(AM_V_AR)$(libluajitsocket_a_AR) libluajitsocket.a $(libluajitsocket_a_OBJECTS) $(libluajitsocket_a_LIBADD) + $(AM_V_at)$(RANLIB) libluajitsocket.a luatexdir/lua/$(am__dirstamp): @$(MKDIR_P) luatexdir/lua @: > luatexdir/lua/$(am__dirstamp) luatexdir/lua/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/lua/$(DEPDIR) @: > luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lstrlibext.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-helpers.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lstrlibext.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-texluac.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-texluajitc.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) luatexdir/luafontloader/src/$(am__dirstamp): @@ -5864,10 +5533,10 @@ luatexdir/luafontloader/src/$(am__dirstamp): luatexdir/luafontloader/src/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/luafontloader/src/$(DEPDIR) @: > luatexdir/luafontloader/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luafontloader/src/liblua53tex_a-ffdummies.$(OBJEXT): \ +luatexdir/luafontloader/src/libluajittex_a-ffdummies.$(OBJEXT): \ luatexdir/luafontloader/src/$(am__dirstamp) \ luatexdir/luafontloader/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luafontloader/src/liblua53tex_a-luafflib.$(OBJEXT): \ +luatexdir/luafontloader/src/libluajittex_a-luafflib.$(OBJEXT): \ luatexdir/luafontloader/src/$(am__dirstamp) \ luatexdir/luafontloader/src/$(DEPDIR)/$(am__dirstamp) luatexdir/dvi/$(am__dirstamp): @@ -5876,7 +5545,7 @@ luatexdir/dvi/$(am__dirstamp): luatexdir/dvi/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/dvi/$(DEPDIR) @: > luatexdir/dvi/$(DEPDIR)/$(am__dirstamp) -luatexdir/dvi/liblua53tex_a-dvigen.$(OBJEXT): \ +luatexdir/dvi/libluajittex_a-dvigen.$(OBJEXT): \ luatexdir/dvi/$(am__dirstamp) \ luatexdir/dvi/$(DEPDIR)/$(am__dirstamp) luatexdir/font/$(am__dirstamp): @@ -5885,64 +5554,64 @@ luatexdir/font/$(am__dirstamp): luatexdir/font/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/font/$(DEPDIR) @: > luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-dofont.$(OBJEXT): \ +luatexdir/font/libluajittex_a-dofont.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-luafont.$(OBJEXT): \ +luatexdir/font/libluajittex_a-luafont.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-mapfile.$(OBJEXT): \ +luatexdir/font/libluajittex_a-mapfile.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-pkin.$(OBJEXT): \ +luatexdir/font/libluajittex_a-pkin.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-sfnt.$(OBJEXT): \ +luatexdir/font/libluajittex_a-sfnt.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-texfont.$(OBJEXT): \ +luatexdir/font/libluajittex_a-texfont.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-tfmofm.$(OBJEXT): \ +luatexdir/font/libluajittex_a-tfmofm.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-tounicode.$(OBJEXT): \ +luatexdir/font/libluajittex_a-tounicode.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-tt_glyf.$(OBJEXT): \ +luatexdir/font/libluajittex_a-tt_glyf.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-tt_table.$(OBJEXT): \ +luatexdir/font/libluajittex_a-tt_table.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-vfovf.$(OBJEXT): \ +luatexdir/font/libluajittex_a-vfovf.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-vfpacket.$(OBJEXT): \ +luatexdir/font/libluajittex_a-vfpacket.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-writecff.$(OBJEXT): \ +luatexdir/font/libluajittex_a-writecff.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-writeenc.$(OBJEXT): \ +luatexdir/font/libluajittex_a-writeenc.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-writefont.$(OBJEXT): \ +luatexdir/font/libluajittex_a-writefont.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-writet1.$(OBJEXT): \ +luatexdir/font/libluajittex_a-writet1.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-writet3.$(OBJEXT): \ +luatexdir/font/libluajittex_a-writet3.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-writettf.$(OBJEXT): \ +luatexdir/font/libluajittex_a-writettf.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-writetype0.$(OBJEXT): \ +luatexdir/font/libluajittex_a-writetype0.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/liblua53tex_a-writetype2.$(OBJEXT): \ +luatexdir/font/libluajittex_a-writetype2.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) luatexdir/image/$(am__dirstamp): @@ -5951,22 +5620,22 @@ luatexdir/image/$(am__dirstamp): luatexdir/image/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/image/$(DEPDIR) @: > luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/liblua53tex_a-pdftoepdf.$(OBJEXT): \ +luatexdir/image/libluajittex_a-pdftoepdf.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/liblua53tex_a-writeimg.$(OBJEXT): \ +luatexdir/image/libluajittex_a-writeimg.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/liblua53tex_a-writejbig2.$(OBJEXT): \ +luatexdir/image/libluajittex_a-writejbig2.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/liblua53tex_a-writejp2.$(OBJEXT): \ +luatexdir/image/libluajittex_a-writejp2.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/liblua53tex_a-writejpg.$(OBJEXT): \ +luatexdir/image/libluajittex_a-writejpg.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/liblua53tex_a-writepng.$(OBJEXT): \ +luatexdir/image/libluajittex_a-writepng.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) luatexdir/lang/$(am__dirstamp): @@ -5975,79 +5644,82 @@ luatexdir/lang/$(am__dirstamp): luatexdir/lang/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/lang/$(DEPDIR) @: > luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/liblua53tex_a-hnjalloc.$(OBJEXT): \ +luatexdir/lang/libluajittex_a-hnjalloc.$(OBJEXT): \ luatexdir/lang/$(am__dirstamp) \ luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/liblua53tex_a-hyphen.$(OBJEXT): \ +luatexdir/lang/libluajittex_a-hyphen.$(OBJEXT): \ luatexdir/lang/$(am__dirstamp) \ luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/liblua53tex_a-texlang.$(OBJEXT): \ +luatexdir/lang/libluajittex_a-texlang.$(OBJEXT): \ luatexdir/lang/$(am__dirstamp) \ luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lcallbacklib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lcallbacklib.$(OBJEXT): \ + luatexdir/lua/$(am__dirstamp) \ + luatexdir/lua/$(DEPDIR)/$(am__dirstamp) +luatexdir/lua/libluajittex_a-lfontlib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lfontlib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-limglib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-limglib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lpdfelib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lpdfelib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lpdfscannerlib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lpdfscannerlib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lkpselib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lkpselib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-llanglib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-llanglib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-llualib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-llualib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lnodelib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lnodelib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-liolibext.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-liolibext.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-loslibext.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-loslibext.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lpdflib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lpdflib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lstatslib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lstatslib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-ltexiolib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-ltexiolib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-ltexlib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-ltexlib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-lnewtokenlib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-lnewtokenlib.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-luatex-core.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-luatex-core.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-helpers.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-luainit.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-luainit.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-luanode.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-luanode.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-luastuff.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-luastuff.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-luatoken.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-luatoken.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/liblua53tex_a-mplibstuff.$(OBJEXT): \ +luatexdir/lua/libluajittex_a-mplibstuff.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) luatexdir/pdf/$(am__dirstamp): @@ -6056,70 +5728,70 @@ luatexdir/pdf/$(am__dirstamp): luatexdir/pdf/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/pdf/$(DEPDIR) @: > luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfaction.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfaction.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfannot.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfannot.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfcolorstack.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfcolorstack.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfdest.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfdest.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdffont.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdffont.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfgen.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfgen.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfglyph.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfglyph.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfimage.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfimage.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdflink.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdflink.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdflistout.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdflistout.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfliteral.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfliteral.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfobj.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfobj.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfoutline.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfoutline.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfpage.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfpage.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfpagetree.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfpagetree.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfrule.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfrule.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfsaverestore.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfsaverestore.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfsetmatrix.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfsetmatrix.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfshipout.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfshipout.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdftables.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdftables.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfthread.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfthread.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/liblua53tex_a-pdfxform.$(OBJEXT): \ +luatexdir/pdf/libluajittex_a-pdfxform.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) luatexdir/tex/$(am__dirstamp): @@ -6128,103 +5800,103 @@ luatexdir/tex/$(am__dirstamp): luatexdir/tex/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/tex/$(DEPDIR) @: > luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-backend.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-backend.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-align.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-align.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-arithmetic.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-arithmetic.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-buildpage.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-buildpage.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-commands.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-commands.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-conditional.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-conditional.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-directions.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-directions.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-dumpdata.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-dumpdata.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-equivalents.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-equivalents.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-errors.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-errors.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-expand.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-expand.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-extensions.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-extensions.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-filename.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-filename.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-inputstack.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-inputstack.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-linebreak.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-linebreak.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-mainbody.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-mainbody.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-maincontrol.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-maincontrol.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-mathcodes.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-mathcodes.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-memoryword.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-memoryword.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-mlist.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-mlist.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-nesting.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-nesting.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-packaging.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-packaging.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-postlinebreak.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-postlinebreak.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-primitive.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-primitive.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-printing.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-printing.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-scanning.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-scanning.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-stringpool.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-stringpool.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-texdeffont.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-texdeffont.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-texfileio.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-texfileio.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-texmath.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-texmath.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-texnodes.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-texnodes.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-textcodes.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-textcodes.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/liblua53tex_a-textoken.$(OBJEXT): \ +luatexdir/tex/libluajittex_a-textoken.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) luatexdir/utils/$(am__dirstamp): @@ -6233,19 +5905,19 @@ luatexdir/utils/$(am__dirstamp): luatexdir/utils/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) luatexdir/utils/$(DEPDIR) @: > luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/liblua53tex_a-avl.$(OBJEXT): \ +luatexdir/utils/libluajittex_a-avl.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/liblua53tex_a-avlstuff.$(OBJEXT): \ +luatexdir/utils/libluajittex_a-avlstuff.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/liblua53tex_a-managed-sa.$(OBJEXT): \ +luatexdir/utils/libluajittex_a-managed-sa.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/liblua53tex_a-unistring.$(OBJEXT): \ +luatexdir/utils/libluajittex_a-unistring.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/liblua53tex_a-utils.$(OBJEXT): \ +luatexdir/utils/libluajittex_a-utils.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) synctexdir/$(am__dirstamp): @@ -6254,1065 +5926,557 @@ synctexdir/$(am__dirstamp): synctexdir/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) synctexdir/$(DEPDIR) @: > synctexdir/$(DEPDIR)/$(am__dirstamp) -synctexdir/liblua53tex_a-synctex.$(OBJEXT): \ +synctexdir/libluajittex_a-synctex.$(OBJEXT): \ synctexdir/$(am__dirstamp) \ synctexdir/$(DEPDIR)/$(am__dirstamp) -liblua53tex.a: $(liblua53tex_a_OBJECTS) $(liblua53tex_a_DEPENDENCIES) $(EXTRA_liblua53tex_a_DEPENDENCIES) - $(AM_V_at)-rm -f liblua53tex.a - $(AM_V_AR)$(liblua53tex_a_AR) liblua53tex.a $(liblua53tex_a_OBJECTS) $(liblua53tex_a_LIBADD) - $(AM_V_at)$(RANLIB) liblua53tex.a -luatexdir/luaffi/libluaffi_a-call.$(OBJEXT): \ - luatexdir/luaffi/$(am__dirstamp) \ - luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) -luatexdir/luaffi/libluaffi_a-ctype.$(OBJEXT): \ - luatexdir/luaffi/$(am__dirstamp) \ - luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) -luatexdir/luaffi/libluaffi_a-ffi.$(OBJEXT): \ - luatexdir/luaffi/$(am__dirstamp) \ - luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) -luatexdir/luaffi/libluaffi_a-parser.$(OBJEXT): \ - luatexdir/luaffi/$(am__dirstamp) \ - luatexdir/luaffi/$(DEPDIR)/$(am__dirstamp) - -libluaffi.a: $(libluaffi_a_OBJECTS) $(libluaffi_a_DEPENDENCIES) $(EXTRA_libluaffi_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluaffi.a - $(AM_V_AR)$(libluaffi_a_AR) libluaffi.a $(libluaffi_a_OBJECTS) $(libluaffi_a_LIBADD) - $(AM_V_at)$(RANLIB) libluaffi.a -luatexdir/luafilesystem/src/libluajitmisc_a-lfs.$(OBJEXT): \ +libluajittex.a: $(libluajittex_a_OBJECTS) $(libluajittex_a_DEPENDENCIES) $(EXTRA_libluajittex_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluajittex.a + $(AM_V_AR)$(libluajittex_a_AR) libluajittex.a $(libluajittex_a_OBJECTS) $(libluajittex_a_LIBADD) + $(AM_V_at)$(RANLIB) libluajittex.a +luatexdir/luafilesystem/src/libluamisc_a-lfs.$(OBJEXT): \ luatexdir/luafilesystem/src/$(am__dirstamp) \ luatexdir/luafilesystem/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luamd5/libluajitmisc_a-md5.$(OBJEXT): \ +luatexdir/luamd5/libluamisc_a-md5.$(OBJEXT): \ luatexdir/luamd5/$(am__dirstamp) \ luatexdir/luamd5/$(DEPDIR)/$(am__dirstamp) -luatexdir/luamd5/libluajitmisc_a-md5lib.$(OBJEXT): \ +luatexdir/luamd5/libluamisc_a-md5lib.$(OBJEXT): \ luatexdir/luamd5/$(am__dirstamp) \ luatexdir/luamd5/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapeg/libluajitmisc_a-lpeg.$(OBJEXT): \ +luatexdir/luapeg/libluamisc_a-lpeg.$(OBJEXT): \ luatexdir/luapeg/$(am__dirstamp) \ luatexdir/luapeg/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazip/src/libluajitmisc_a-luazip.$(OBJEXT): \ +luatexdir/luazip/src/libluamisc_a-luazip.$(OBJEXT): \ luatexdir/luazip/src/$(am__dirstamp) \ luatexdir/luazip/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazlib/libluajitmisc_a-lgzip.$(OBJEXT): \ +luatexdir/luazlib/libluamisc_a-lgzip.$(OBJEXT): \ luatexdir/luazlib/$(am__dirstamp) \ luatexdir/luazlib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazlib/libluajitmisc_a-lzlib.$(OBJEXT): \ +luatexdir/luazlib/libluamisc_a-lzlib.$(OBJEXT): \ luatexdir/luazlib/$(am__dirstamp) \ luatexdir/luazlib/$(DEPDIR)/$(am__dirstamp) -luatexdir/slnunicode/libluajitmisc_a-slnunico.$(OBJEXT): \ +luatexdir/slnunicode/libluamisc_a-slnunico.$(OBJEXT): \ luatexdir/slnunicode/$(am__dirstamp) \ luatexdir/slnunicode/$(DEPDIR)/$(am__dirstamp) -libluajitmisc.a: $(libluajitmisc_a_OBJECTS) $(libluajitmisc_a_DEPENDENCIES) $(EXTRA_libluajitmisc_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluajitmisc.a - $(AM_V_AR)$(libluajitmisc_a_AR) libluajitmisc.a $(libluajitmisc_a_OBJECTS) $(libluajitmisc_a_LIBADD) - $(AM_V_at)$(RANLIB) libluajitmisc.a -luatexdir/luapplib/libluajitpplib_a-pparray.$(OBJEXT): \ +libluamisc.a: $(libluamisc_a_OBJECTS) $(libluamisc_a_DEPENDENCIES) $(EXTRA_libluamisc_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluamisc.a + $(AM_V_AR)$(libluamisc_a_AR) libluamisc.a $(libluamisc_a_OBJECTS) $(libluamisc_a_LIBADD) + $(AM_V_at)$(RANLIB) libluamisc.a +luatexdir/luapplib/libluapplib_a-pparray.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluajitpplib_a-ppcrypt.$(OBJEXT): \ +luatexdir/luapplib/libluapplib_a-ppcrypt.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluajitpplib_a-ppdict.$(OBJEXT): \ +luatexdir/luapplib/libluapplib_a-ppdict.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluajitpplib_a-ppheap.$(OBJEXT): \ +luatexdir/luapplib/libluapplib_a-ppheap.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluajitpplib_a-ppload.$(OBJEXT): \ +luatexdir/luapplib/libluapplib_a-ppload.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluajitpplib_a-ppstream.$(OBJEXT): \ +luatexdir/luapplib/libluapplib_a-ppstream.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluajitpplib_a-ppxref.$(OBJEXT): \ +luatexdir/luapplib/libluapplib_a-pptest1.$(OBJEXT): \ luatexdir/luapplib/$(am__dirstamp) \ luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utilbasexx.$(OBJEXT): \ +luatexdir/luapplib/libluapplib_a-pptest2.$(OBJEXT): \ + luatexdir/luapplib/$(am__dirstamp) \ + luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) +luatexdir/luapplib/libluapplib_a-pptest3.$(OBJEXT): \ + luatexdir/luapplib/$(am__dirstamp) \ + luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) +luatexdir/luapplib/libluapplib_a-ppxref.$(OBJEXT): \ + luatexdir/luapplib/$(am__dirstamp) \ + luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) +luatexdir/luapplib/util/libluapplib_a-utilbasexx.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utilcrypt.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utilcrypt.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utilflate.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utilflate.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utilfpred.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utilfpred.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utiliof.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utiliof.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utillog.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utillog.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utillzw.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utillzw.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utilmd5.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utilmd5.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utilmem.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utilmem.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utilnumber.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utilnumber.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluajitpplib_a-utilsha.$(OBJEXT): \ +luatexdir/luapplib/util/libluapplib_a-utilsha.$(OBJEXT): \ luatexdir/luapplib/util/$(am__dirstamp) \ luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -libluajitpplib.a: $(libluajitpplib_a_OBJECTS) $(libluajitpplib_a_DEPENDENCIES) $(EXTRA_libluajitpplib_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluajitpplib.a - $(AM_V_AR)$(libluajitpplib_a_AR) libluajitpplib.a $(libluajitpplib_a_OBJECTS) $(libluajitpplib_a_LIBADD) - $(AM_V_at)$(RANLIB) libluajitpplib.a -luatexdir/luasocket/src/libluajitsocket_a-auxiliar.$(OBJEXT): \ +libluapplib.a: $(libluapplib_a_OBJECTS) $(libluapplib_a_DEPENDENCIES) $(EXTRA_libluapplib_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluapplib.a + $(AM_V_AR)$(libluapplib_a_AR) libluapplib.a $(libluapplib_a_OBJECTS) $(libluapplib_a_LIBADD) + $(AM_V_at)$(RANLIB) libluapplib.a +luatexdir/luasocket/src/libluasocket_a-auxiliar.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-buffer.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-buffer.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-compat.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-compat.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-except.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-except.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-inet.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-inet.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-io.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-io.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-lua_preload.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-lua_preload.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-luasocket.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-luasocket.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-mime.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-mime.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-options.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-options.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-select.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-select.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-serial.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-serial.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-socket.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-socket.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-tcp.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-tcp.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-timeout.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-timeout.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluajitsocket_a-udp.$(OBJEXT): \ +luatexdir/luasocket/src/libluasocket_a-udp.$(OBJEXT): \ luatexdir/luasocket/src/$(am__dirstamp) \ luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -libluajitsocket.a: $(libluajitsocket_a_OBJECTS) $(libluajitsocket_a_DEPENDENCIES) $(EXTRA_libluajitsocket_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluajitsocket.a - $(AM_V_AR)$(libluajitsocket_a_AR) libluajitsocket.a $(libluajitsocket_a_OBJECTS) $(libluajitsocket_a_LIBADD) - $(AM_V_at)$(RANLIB) libluajitsocket.a -luatexdir/lua/libluajittex_a-lstrlibext.$(OBJEXT): \ +libluasocket.a: $(libluasocket_a_OBJECTS) $(libluasocket_a_DEPENDENCIES) $(EXTRA_libluasocket_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluasocket.a + $(AM_V_AR)$(libluasocket_a_AR) libluasocket.a $(libluasocket_a_OBJECTS) $(libluasocket_a_LIBADD) + $(AM_V_at)$(RANLIB) libluasocket.a +luatexdir/lua/libluatex_a-lstrlibext.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-texluajitc.$(OBJEXT): \ +luatexdir/lua/libluatex_a-helpers.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/luafontloader/src/libluajittex_a-ffdummies.$(OBJEXT): \ +luatexdir/lua/libluatex_a-texluac.$(OBJEXT): \ + luatexdir/lua/$(am__dirstamp) \ + luatexdir/lua/$(DEPDIR)/$(am__dirstamp) +luatexdir/luafontloader/src/libluatex_a-ffdummies.$(OBJEXT): \ luatexdir/luafontloader/src/$(am__dirstamp) \ luatexdir/luafontloader/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luafontloader/src/libluajittex_a-luafflib.$(OBJEXT): \ +luatexdir/luafontloader/src/libluatex_a-luafflib.$(OBJEXT): \ luatexdir/luafontloader/src/$(am__dirstamp) \ luatexdir/luafontloader/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/dvi/libluajittex_a-dvigen.$(OBJEXT): \ +luatexdir/dvi/libluatex_a-dvigen.$(OBJEXT): \ luatexdir/dvi/$(am__dirstamp) \ luatexdir/dvi/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-dofont.$(OBJEXT): \ +luatexdir/font/libluatex_a-dofont.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-luafont.$(OBJEXT): \ +luatexdir/font/libluatex_a-luafont.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-mapfile.$(OBJEXT): \ +luatexdir/font/libluatex_a-mapfile.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-pkin.$(OBJEXT): \ +luatexdir/font/libluatex_a-pkin.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-sfnt.$(OBJEXT): \ +luatexdir/font/libluatex_a-sfnt.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-texfont.$(OBJEXT): \ +luatexdir/font/libluatex_a-texfont.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-tfmofm.$(OBJEXT): \ +luatexdir/font/libluatex_a-tfmofm.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-tounicode.$(OBJEXT): \ +luatexdir/font/libluatex_a-tounicode.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-tt_glyf.$(OBJEXT): \ +luatexdir/font/libluatex_a-tt_glyf.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-tt_table.$(OBJEXT): \ +luatexdir/font/libluatex_a-tt_table.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-vfovf.$(OBJEXT): \ +luatexdir/font/libluatex_a-vfovf.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-vfpacket.$(OBJEXT): \ +luatexdir/font/libluatex_a-vfpacket.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-writecff.$(OBJEXT): \ +luatexdir/font/libluatex_a-writecff.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-writeenc.$(OBJEXT): \ +luatexdir/font/libluatex_a-writeenc.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-writefont.$(OBJEXT): \ +luatexdir/font/libluatex_a-writefont.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-writet1.$(OBJEXT): \ +luatexdir/font/libluatex_a-writet1.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-writet3.$(OBJEXT): \ +luatexdir/font/libluatex_a-writet3.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-writettf.$(OBJEXT): \ +luatexdir/font/libluatex_a-writettf.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-writetype0.$(OBJEXT): \ +luatexdir/font/libluatex_a-writetype0.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluajittex_a-writetype2.$(OBJEXT): \ +luatexdir/font/libluatex_a-writetype2.$(OBJEXT): \ luatexdir/font/$(am__dirstamp) \ luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluajittex_a-pdftoepdf.$(OBJEXT): \ +luatexdir/image/libluatex_a-pdftoepdf.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluajittex_a-writeimg.$(OBJEXT): \ +luatexdir/image/libluatex_a-writeimg.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluajittex_a-writejbig2.$(OBJEXT): \ +luatexdir/image/libluatex_a-writejbig2.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluajittex_a-writejp2.$(OBJEXT): \ +luatexdir/image/libluatex_a-writejp2.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluajittex_a-writejpg.$(OBJEXT): \ +luatexdir/image/libluatex_a-writejpg.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluajittex_a-writepng.$(OBJEXT): \ +luatexdir/image/libluatex_a-writepng.$(OBJEXT): \ luatexdir/image/$(am__dirstamp) \ luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/libluajittex_a-hnjalloc.$(OBJEXT): \ +luatexdir/lang/libluatex_a-hnjalloc.$(OBJEXT): \ luatexdir/lang/$(am__dirstamp) \ luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/libluajittex_a-hyphen.$(OBJEXT): \ +luatexdir/lang/libluatex_a-hyphen.$(OBJEXT): \ luatexdir/lang/$(am__dirstamp) \ luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/libluajittex_a-texlang.$(OBJEXT): \ +luatexdir/lang/libluatex_a-texlang.$(OBJEXT): \ luatexdir/lang/$(am__dirstamp) \ luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lcallbacklib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lfontlib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lcallbacklib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-limglib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lfontlib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lpdfelib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-limglib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lpdfscannerlib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lpdfelib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lkpselib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lpdfscannerlib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-llanglib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lkpselib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-llualib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-llanglib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lnodelib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-llualib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-liolibext.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lnodelib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-loslibext.$(OBJEXT): \ +luatexdir/lua/libluatex_a-liolibext.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lpdflib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-loslibext.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lstatslib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lpdflib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-ltexiolib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lstatslib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-ltexlib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-ltexiolib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-lnewtokenlib.$(OBJEXT): \ +luatexdir/lua/libluatex_a-ltexlib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-luatex-core.$(OBJEXT): \ +luatexdir/lua/libluatex_a-lnewtokenlib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-helpers.$(OBJEXT): \ +luatexdir/lua/libluatex_a-luatex-core.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-luainit.$(OBJEXT): \ +luatexdir/lua/libluatex_a-luainit.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-luanode.$(OBJEXT): \ +luatexdir/lua/libluatex_a-luanode.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-luastuff.$(OBJEXT): \ +luatexdir/lua/libluatex_a-luastuff.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-luatoken.$(OBJEXT): \ +luatexdir/lua/libluatex_a-luatoken.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluajittex_a-mplibstuff.$(OBJEXT): \ +luatexdir/lua/libluatex_a-mplibstuff.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfaction.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfaction.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfannot.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfannot.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfcolorstack.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfcolorstack.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfdest.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfdest.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdffont.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdffont.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfgen.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfgen.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfglyph.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfglyph.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfimage.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfimage.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdflink.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdflink.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdflistout.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdflistout.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfliteral.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfliteral.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfobj.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfobj.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfoutline.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfoutline.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfpage.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfpage.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfpagetree.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfpagetree.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfrule.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfrule.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfsaverestore.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfsaverestore.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfsetmatrix.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfsetmatrix.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfshipout.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfshipout.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdftables.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdftables.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfthread.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfthread.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluajittex_a-pdfxform.$(OBJEXT): \ +luatexdir/pdf/libluatex_a-pdfxform.$(OBJEXT): \ luatexdir/pdf/$(am__dirstamp) \ luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-backend.$(OBJEXT): \ +luatexdir/tex/libluatex_a-backend.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-align.$(OBJEXT): \ +luatexdir/tex/libluatex_a-align.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-arithmetic.$(OBJEXT): \ +luatexdir/tex/libluatex_a-arithmetic.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-buildpage.$(OBJEXT): \ +luatexdir/tex/libluatex_a-buildpage.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-commands.$(OBJEXT): \ +luatexdir/tex/libluatex_a-commands.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-conditional.$(OBJEXT): \ +luatexdir/tex/libluatex_a-conditional.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-directions.$(OBJEXT): \ +luatexdir/tex/libluatex_a-directions.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-dumpdata.$(OBJEXT): \ +luatexdir/tex/libluatex_a-dumpdata.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-equivalents.$(OBJEXT): \ +luatexdir/tex/libluatex_a-equivalents.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-errors.$(OBJEXT): \ +luatexdir/tex/libluatex_a-errors.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-expand.$(OBJEXT): \ +luatexdir/tex/libluatex_a-expand.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-extensions.$(OBJEXT): \ +luatexdir/tex/libluatex_a-extensions.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-filename.$(OBJEXT): \ +luatexdir/tex/libluatex_a-filename.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-inputstack.$(OBJEXT): \ +luatexdir/tex/libluatex_a-inputstack.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-linebreak.$(OBJEXT): \ +luatexdir/tex/libluatex_a-linebreak.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-mainbody.$(OBJEXT): \ +luatexdir/tex/libluatex_a-mainbody.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-maincontrol.$(OBJEXT): \ +luatexdir/tex/libluatex_a-maincontrol.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-mathcodes.$(OBJEXT): \ +luatexdir/tex/libluatex_a-mathcodes.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-memoryword.$(OBJEXT): \ +luatexdir/tex/libluatex_a-memoryword.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-mlist.$(OBJEXT): \ +luatexdir/tex/libluatex_a-mlist.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-nesting.$(OBJEXT): \ +luatexdir/tex/libluatex_a-nesting.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-packaging.$(OBJEXT): \ +luatexdir/tex/libluatex_a-packaging.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-postlinebreak.$(OBJEXT): \ +luatexdir/tex/libluatex_a-postlinebreak.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-primitive.$(OBJEXT): \ +luatexdir/tex/libluatex_a-primitive.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-printing.$(OBJEXT): \ +luatexdir/tex/libluatex_a-printing.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-scanning.$(OBJEXT): \ +luatexdir/tex/libluatex_a-scanning.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-stringpool.$(OBJEXT): \ +luatexdir/tex/libluatex_a-stringpool.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-texdeffont.$(OBJEXT): \ +luatexdir/tex/libluatex_a-texdeffont.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-texfileio.$(OBJEXT): \ +luatexdir/tex/libluatex_a-texfileio.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-texmath.$(OBJEXT): \ +luatexdir/tex/libluatex_a-texmath.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-texnodes.$(OBJEXT): \ +luatexdir/tex/libluatex_a-texnodes.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-textcodes.$(OBJEXT): \ +luatexdir/tex/libluatex_a-textcodes.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluajittex_a-textoken.$(OBJEXT): \ +luatexdir/tex/libluatex_a-textoken.$(OBJEXT): \ luatexdir/tex/$(am__dirstamp) \ luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluajittex_a-avl.$(OBJEXT): \ +luatexdir/utils/libluatex_a-avl.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluajittex_a-avlstuff.$(OBJEXT): \ +luatexdir/utils/libluatex_a-avlstuff.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluajittex_a-managed-sa.$(OBJEXT): \ +luatexdir/utils/libluatex_a-managed-sa.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluajittex_a-unistring.$(OBJEXT): \ +luatexdir/utils/libluatex_a-unistring.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluajittex_a-utils.$(OBJEXT): \ +luatexdir/utils/libluatex_a-utils.$(OBJEXT): \ luatexdir/utils/$(am__dirstamp) \ luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -synctexdir/libluajittex_a-synctex.$(OBJEXT): \ - synctexdir/$(am__dirstamp) \ +synctexdir/libluatex_a-synctex.$(OBJEXT): synctexdir/$(am__dirstamp) \ synctexdir/$(DEPDIR)/$(am__dirstamp) -libluajittex.a: $(libluajittex_a_OBJECTS) $(libluajittex_a_DEPENDENCIES) $(EXTRA_libluajittex_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluajittex.a - $(AM_V_AR)$(libluajittex_a_AR) libluajittex.a $(libluajittex_a_OBJECTS) $(libluajittex_a_LIBADD) - $(AM_V_at)$(RANLIB) libluajittex.a -luatexdir/luafilesystem/src/libluamisc_a-lfs.$(OBJEXT): \ - luatexdir/luafilesystem/src/$(am__dirstamp) \ - luatexdir/luafilesystem/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luamd5/libluamisc_a-md5.$(OBJEXT): \ - luatexdir/luamd5/$(am__dirstamp) \ - luatexdir/luamd5/$(DEPDIR)/$(am__dirstamp) -luatexdir/luamd5/libluamisc_a-md5lib.$(OBJEXT): \ - luatexdir/luamd5/$(am__dirstamp) \ - luatexdir/luamd5/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapeg/libluamisc_a-lpeg.$(OBJEXT): \ - luatexdir/luapeg/$(am__dirstamp) \ - luatexdir/luapeg/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazip/src/libluamisc_a-luazip.$(OBJEXT): \ - luatexdir/luazip/src/$(am__dirstamp) \ - luatexdir/luazip/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazlib/libluamisc_a-lgzip.$(OBJEXT): \ - luatexdir/luazlib/$(am__dirstamp) \ - luatexdir/luazlib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luazlib/libluamisc_a-lzlib.$(OBJEXT): \ - luatexdir/luazlib/$(am__dirstamp) \ - luatexdir/luazlib/$(DEPDIR)/$(am__dirstamp) -luatexdir/slnunicode/libluamisc_a-slnunico.$(OBJEXT): \ - luatexdir/slnunicode/$(am__dirstamp) \ - luatexdir/slnunicode/$(DEPDIR)/$(am__dirstamp) - -libluamisc.a: $(libluamisc_a_OBJECTS) $(libluamisc_a_DEPENDENCIES) $(EXTRA_libluamisc_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluamisc.a - $(AM_V_AR)$(libluamisc_a_AR) libluamisc.a $(libluamisc_a_OBJECTS) $(libluamisc_a_LIBADD) - $(AM_V_at)$(RANLIB) libluamisc.a -luatexdir/luapplib/libluapplib_a-pparray.$(OBJEXT): \ - luatexdir/luapplib/$(am__dirstamp) \ - luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluapplib_a-ppcrypt.$(OBJEXT): \ - luatexdir/luapplib/$(am__dirstamp) \ - luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluapplib_a-ppdict.$(OBJEXT): \ - luatexdir/luapplib/$(am__dirstamp) \ - luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluapplib_a-ppheap.$(OBJEXT): \ - luatexdir/luapplib/$(am__dirstamp) \ - luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluapplib_a-ppload.$(OBJEXT): \ - luatexdir/luapplib/$(am__dirstamp) \ - luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluapplib_a-ppstream.$(OBJEXT): \ - luatexdir/luapplib/$(am__dirstamp) \ - luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/libluapplib_a-ppxref.$(OBJEXT): \ - luatexdir/luapplib/$(am__dirstamp) \ - luatexdir/luapplib/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utilbasexx.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utilcrypt.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utilflate.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utilfpred.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utiliof.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utillog.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utillzw.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utilmd5.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utilmem.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utilnumber.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) -luatexdir/luapplib/util/libluapplib_a-utilsha.$(OBJEXT): \ - luatexdir/luapplib/util/$(am__dirstamp) \ - luatexdir/luapplib/util/$(DEPDIR)/$(am__dirstamp) +libluatex.a: $(libluatex_a_OBJECTS) $(libluatex_a_DEPENDENCIES) $(EXTRA_libluatex_a_DEPENDENCIES) + $(AM_V_at)-rm -f libluatex.a + $(AM_V_AR)$(libluatex_a_AR) libluatex.a $(libluatex_a_OBJECTS) $(libluatex_a_LIBADD) + $(AM_V_at)$(RANLIB) libluatex.a +libmd5/$(am__dirstamp): + @$(MKDIR_P) libmd5 + @: > libmd5/$(am__dirstamp) +libmd5/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) libmd5/$(DEPDIR) + @: > libmd5/$(DEPDIR)/$(am__dirstamp) +libmd5/a-md5.$(OBJEXT): libmd5/$(am__dirstamp) \ + libmd5/$(DEPDIR)/$(am__dirstamp) -libluapplib.a: $(libluapplib_a_OBJECTS) $(libluapplib_a_DEPENDENCIES) $(EXTRA_libluapplib_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluapplib.a - $(AM_V_AR)$(libluapplib_a_AR) libluapplib.a $(libluapplib_a_OBJECTS) $(libluapplib_a_LIBADD) - $(AM_V_at)$(RANLIB) libluapplib.a -luatexdir/luasocket/src/libluasocket_a-auxiliar.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-buffer.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-compat.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-except.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-inet.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-io.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-lua_preload.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-luasocket.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-mime.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-options.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-select.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-serial.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-socket.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-tcp.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-timeout.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luasocket/src/libluasocket_a-udp.$(OBJEXT): \ - luatexdir/luasocket/src/$(am__dirstamp) \ - luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp) +libmd5.a: $(libmd5_a_OBJECTS) $(libmd5_a_DEPENDENCIES) $(EXTRA_libmd5_a_DEPENDENCIES) + $(AM_V_at)-rm -f libmd5.a + $(AM_V_AR)$(libmd5_a_AR) libmd5.a $(libmd5_a_OBJECTS) $(libmd5_a_LIBADD) + $(AM_V_at)$(RANLIB) libmd5.a -libluasocket.a: $(libluasocket_a_OBJECTS) $(libluasocket_a_DEPENDENCIES) $(EXTRA_libluasocket_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluasocket.a - $(AM_V_AR)$(libluasocket_a_AR) libluasocket.a $(libluasocket_a_OBJECTS) $(libluasocket_a_LIBADD) - $(AM_V_at)$(RANLIB) libluasocket.a -luatexdir/lua/libluatex_a-lstrlibext.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-helpers.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-texluac.$(OBJEXT): \ +libmf.a: $(libmf_a_OBJECTS) $(libmf_a_DEPENDENCIES) $(EXTRA_libmf_a_DEPENDENCIES) + $(AM_V_at)-rm -f libmf.a + $(AM_V_AR)$(libmf_a_AR) libmf.a $(libmf_a_OBJECTS) $(libmf_a_LIBADD) + $(AM_V_at)$(RANLIB) libmf.a +luatexdir/lua/libmflua_a-lkpselib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/luafontloader/src/libluatex_a-ffdummies.$(OBJEXT): \ - luatexdir/luafontloader/src/$(am__dirstamp) \ - luatexdir/luafontloader/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/luafontloader/src/libluatex_a-luafflib.$(OBJEXT): \ - luatexdir/luafontloader/src/$(am__dirstamp) \ - luatexdir/luafontloader/src/$(DEPDIR)/$(am__dirstamp) -luatexdir/dvi/libluatex_a-dvigen.$(OBJEXT): \ - luatexdir/dvi/$(am__dirstamp) \ - luatexdir/dvi/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-dofont.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-luafont.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-mapfile.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-pkin.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-sfnt.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-texfont.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-tfmofm.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-tounicode.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-tt_glyf.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-tt_table.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-vfovf.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-vfpacket.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-writecff.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-writeenc.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-writefont.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-writet1.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-writet3.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-writettf.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-writetype0.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/font/libluatex_a-writetype2.$(OBJEXT): \ - luatexdir/font/$(am__dirstamp) \ - luatexdir/font/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluatex_a-pdftoepdf.$(OBJEXT): \ - luatexdir/image/$(am__dirstamp) \ - luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluatex_a-writeimg.$(OBJEXT): \ - luatexdir/image/$(am__dirstamp) \ - luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluatex_a-writejbig2.$(OBJEXT): \ - luatexdir/image/$(am__dirstamp) \ - luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluatex_a-writejp2.$(OBJEXT): \ - luatexdir/image/$(am__dirstamp) \ - luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluatex_a-writejpg.$(OBJEXT): \ - luatexdir/image/$(am__dirstamp) \ - luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/image/libluatex_a-writepng.$(OBJEXT): \ - luatexdir/image/$(am__dirstamp) \ - luatexdir/image/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/libluatex_a-hnjalloc.$(OBJEXT): \ - luatexdir/lang/$(am__dirstamp) \ - luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/libluatex_a-hyphen.$(OBJEXT): \ - luatexdir/lang/$(am__dirstamp) \ - luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lang/libluatex_a-texlang.$(OBJEXT): \ - luatexdir/lang/$(am__dirstamp) \ - luatexdir/lang/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lcallbacklib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lfontlib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-limglib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lpdfelib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lpdfscannerlib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lkpselib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-llanglib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-llualib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lnodelib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-liolibext.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-loslibext.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lpdflib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lstatslib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-ltexiolib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-ltexlib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-lnewtokenlib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-luatex-core.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-luainit.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-luanode.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-luastuff.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-luatoken.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/lua/libluatex_a-mplibstuff.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfaction.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfannot.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfcolorstack.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfdest.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdffont.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfgen.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfglyph.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfimage.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdflink.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdflistout.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfliteral.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfobj.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfoutline.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfpage.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfpagetree.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfrule.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfsaverestore.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfsetmatrix.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfshipout.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdftables.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfthread.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/pdf/libluatex_a-pdfxform.$(OBJEXT): \ - luatexdir/pdf/$(am__dirstamp) \ - luatexdir/pdf/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-backend.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-align.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-arithmetic.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-buildpage.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-commands.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-conditional.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-directions.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-dumpdata.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-equivalents.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-errors.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-expand.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-extensions.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-filename.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-inputstack.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-linebreak.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-mainbody.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-maincontrol.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-mathcodes.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-memoryword.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-mlist.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-nesting.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-packaging.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-postlinebreak.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-primitive.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-printing.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-scanning.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-stringpool.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-texdeffont.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-texfileio.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-texmath.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-texnodes.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-textcodes.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/tex/libluatex_a-textoken.$(OBJEXT): \ - luatexdir/tex/$(am__dirstamp) \ - luatexdir/tex/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluatex_a-avl.$(OBJEXT): \ - luatexdir/utils/$(am__dirstamp) \ - luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluatex_a-avlstuff.$(OBJEXT): \ - luatexdir/utils/$(am__dirstamp) \ - luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluatex_a-managed-sa.$(OBJEXT): \ - luatexdir/utils/$(am__dirstamp) \ - luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluatex_a-unistring.$(OBJEXT): \ - luatexdir/utils/$(am__dirstamp) \ - luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -luatexdir/utils/libluatex_a-utils.$(OBJEXT): \ - luatexdir/utils/$(am__dirstamp) \ - luatexdir/utils/$(DEPDIR)/$(am__dirstamp) -synctexdir/libluatex_a-synctex.$(OBJEXT): synctexdir/$(am__dirstamp) \ - synctexdir/$(DEPDIR)/$(am__dirstamp) - -libluatex.a: $(libluatex_a_OBJECTS) $(libluatex_a_DEPENDENCIES) $(EXTRA_libluatex_a_DEPENDENCIES) - $(AM_V_at)-rm -f libluatex.a - $(AM_V_AR)$(libluatex_a_AR) libluatex.a $(libluatex_a_OBJECTS) $(libluatex_a_LIBADD) - $(AM_V_at)$(RANLIB) libluatex.a -libmd5/$(am__dirstamp): - @$(MKDIR_P) libmd5 - @: > libmd5/$(am__dirstamp) -libmd5/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) libmd5/$(DEPDIR) - @: > libmd5/$(DEPDIR)/$(am__dirstamp) -libmd5/a-md5.$(OBJEXT): libmd5/$(am__dirstamp) \ - libmd5/$(DEPDIR)/$(am__dirstamp) - -libmd5.a: $(libmd5_a_OBJECTS) $(libmd5_a_DEPENDENCIES) $(EXTRA_libmd5_a_DEPENDENCIES) - $(AM_V_at)-rm -f libmd5.a - $(AM_V_AR)$(libmd5_a_AR) libmd5.a $(libmd5_a_OBJECTS) $(libmd5_a_LIBADD) - $(AM_V_at)$(RANLIB) libmd5.a - -libmf.a: $(libmf_a_OBJECTS) $(libmf_a_DEPENDENCIES) $(EXTRA_libmf_a_DEPENDENCIES) - $(AM_V_at)-rm -f libmf.a - $(AM_V_AR)$(libmf_a_AR) libmf.a $(libmf_a_OBJECTS) $(libmf_a_LIBADD) - $(AM_V_at)$(RANLIB) libmf.a -luatexdir/lua/libmflua_a-lkpselib.$(OBJEXT): \ - luatexdir/lua/$(am__dirstamp) \ - luatexdir/lua/$(DEPDIR)/$(am__dirstamp) -mfluadir/$(am__dirstamp): - @$(MKDIR_P) mfluadir - @: > mfluadir/$(am__dirstamp) -mfluadir/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) mfluadir/$(DEPDIR) - @: > mfluadir/$(DEPDIR)/$(am__dirstamp) -mfluadir/libmflua_a-mfluac.$(OBJEXT): mfluadir/$(am__dirstamp) \ - mfluadir/$(DEPDIR)/$(am__dirstamp) - -libmflua.a: $(libmflua_a_OBJECTS) $(libmflua_a_DEPENDENCIES) $(EXTRA_libmflua_a_DEPENDENCIES) - $(AM_V_at)-rm -f libmflua.a - $(AM_V_AR)$(libmflua_a_AR) libmflua.a $(libmflua_a_OBJECTS) $(libmflua_a_LIBADD) - $(AM_V_at)$(RANLIB) libmflua.a -luatexdir/lua/libmfluajit_a-lkpselib.$(OBJEXT): \ +mfluadir/$(am__dirstamp): + @$(MKDIR_P) mfluadir + @: > mfluadir/$(am__dirstamp) +mfluadir/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) mfluadir/$(DEPDIR) + @: > mfluadir/$(DEPDIR)/$(am__dirstamp) +mfluadir/libmflua_a-mfluac.$(OBJEXT): mfluadir/$(am__dirstamp) \ + mfluadir/$(DEPDIR)/$(am__dirstamp) + +libmflua.a: $(libmflua_a_OBJECTS) $(libmflua_a_DEPENDENCIES) $(EXTRA_libmflua_a_DEPENDENCIES) + $(AM_V_at)-rm -f libmflua.a + $(AM_V_AR)$(libmflua_a_AR) libmflua.a $(libmflua_a_OBJECTS) $(libmflua_a_LIBADD) + $(AM_V_at)$(RANLIB) libmflua.a +luatexdir/lua/libmfluajit_a-lkpselib.$(OBJEXT): \ luatexdir/lua/$(am__dirstamp) \ luatexdir/lua/$(DEPDIR)/$(am__dirstamp) mfluadir/libmfluajit_a-mfluac.$(OBJEXT): mfluadir/$(am__dirstamp) \ @@ -7588,10 +6752,6 @@ call_luatex$(EXEEXT): $(call_luatex_OBJECTS) $(call_luatex_DEPENDENCIES) $(EXTRA @rm -f call_luatex$(EXEEXT) $(AM_V_CCLD)$(LINK) $(call_luatex_OBJECTS) $(call_luatex_LDADD) $(LIBS) -call_luatex53$(EXEEXT): $(call_luatex53_OBJECTS) $(call_luatex53_DEPENDENCIES) $(EXTRA_call_luatex53_DEPENDENCIES) - @rm -f call_luatex53$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(call_luatex53_OBJECTS) $(call_luatex53_LDADD) $(LIBS) - call_mf$(EXEEXT): $(call_mf_OBJECTS) $(call_mf_DEPENDENCIES) $(EXTRA_call_mf_DEPENDENCIES) @rm -f call_mf$(EXEEXT) $(AM_V_CCLD)$(LINK) $(call_mf_OBJECTS) $(call_mf_LDADD) $(LIBS) @@ -7719,14 +6879,6 @@ mplibdir/luatex-lmplib.$(OBJEXT): mplibdir/$(am__dirstamp) \ luatex$(EXEEXT): $(luatex_OBJECTS) $(luatex_DEPENDENCIES) $(EXTRA_luatex_DEPENDENCIES) @rm -f luatex$(EXEEXT) $(AM_V_CCLD)$(luatex_LINK) $(luatex_OBJECTS) $(luatex_LDADD) $(LIBS) -luatexdir/luatex53-luatex.$(OBJEXT): luatexdir/$(am__dirstamp) \ - luatexdir/$(DEPDIR)/$(am__dirstamp) -mplibdir/luatex53-lmplib.$(OBJEXT): mplibdir/$(am__dirstamp) \ - mplibdir/$(DEPDIR)/$(am__dirstamp) - -luatex53$(EXEEXT): $(luatex53_OBJECTS) $(luatex53_DEPENDENCIES) $(EXTRA_luatex53_DEPENDENCIES) - @rm -f luatex53$(EXEEXT) - $(AM_V_CCLD)$(luatex53_LINK) $(luatex53_OBJECTS) $(luatex53_LDADD) $(LIBS) libmd5/md5main-md5main.$(OBJEXT): libmd5/$(am__dirstamp) \ libmd5/$(DEPDIR)/$(am__dirstamp) @@ -8007,7 +7159,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bibtex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/call_luajittex-callexe.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/call_luatex-callexe.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/call_luatex53-callexe.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/call_mf-callexe.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/call_mflua-callexe.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/call_mfluajit-callexe.Po@am__quote@ # am--include-marker @@ -8139,30 +7290,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@libmd5/$(DEPDIR)/md5main-md5main.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/$(DEPDIR)/luajittex-luatex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/$(DEPDIR)/luatex-luatex.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/$(DEPDIR)/luatex53-luatex.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/dvi/$(DEPDIR)/libluajittex_a-dvigen.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/dvi/$(DEPDIR)/libluatex_a-dvigen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/libluajittex_a-dofont.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/libluajittex_a-luafont.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/libluajittex_a-mapfile.Po@am__quote@ # am--include-marker @@ -8203,12 +7332,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/libluatex_a-writettf.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/libluatex_a-writetype0.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/font/$(DEPDIR)/libluatex_a-writetype2.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/libluajittex_a-pdftoepdf.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/libluajittex_a-writeimg.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/libluajittex_a-writejbig2.Po@am__quote@ # am--include-marker @@ -8221,40 +7344,12 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/libluatex_a-writejp2.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/libluatex_a-writejpg.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/image/$(DEPDIR)/libluatex_a-writepng.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/libluajittex_a-hnjalloc.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/libluajittex_a-hyphen.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/libluajittex_a-texlang.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/libluatex_a-hnjalloc.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/libluatex_a-hyphen.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lang/$(DEPDIR)/libluatex_a-texlang.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-helpers.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-lcallbacklib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-lfontlib.Po@am__quote@ # am--include-marker @@ -8307,15 +7402,10 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluatex_a-texluac.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libmflua_a-lkpselib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libmfluajit_a-lkpselib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luaffi/$(DEPDIR)/libluaffi_a-call.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luaffi/$(DEPDIR)/libluaffi_a-ctype.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luaffi/$(DEPDIR)/libluaffi_a-ffi.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luaffi/$(DEPDIR)/libluaffi_a-parser.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafilesystem/src/$(DEPDIR)/libluajitmisc_a-lfs.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafilesystem/src/$(DEPDIR)/libluamisc_a-lfs.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Po@am__quote@ # am--include-marker @@ -8360,34 +7450,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/src/$(DEPDIR)/libluajittex_a-ffdummies.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/src/$(DEPDIR)/libluajittex_a-luafflib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/src/$(DEPDIR)/libluatex_a-ffdummies.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luafontloader/src/$(DEPDIR)/libluatex_a-luafflib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luamd5/$(DEPDIR)/libluajitmisc_a-md5.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luamd5/$(DEPDIR)/libluajitmisc_a-md5lib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5lib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapeg/$(DEPDIR)/libluajitmisc_a-lpeg.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapeg/$(DEPDIR)/libluamisc_a-lpeg.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pparray.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppdict.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppheap.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppload.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppstream.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppxref.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pparray.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppcrypt.Po@am__quote@ # am--include-marker @@ -8395,18 +7476,10 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppheap.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppload.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppstream.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppxref.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po@am__quote@ # am--include-marker @@ -8429,22 +7502,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilmem.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilnumber.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilsha.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-buffer.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-compat.Po@am__quote@ # am--include-marker @@ -8477,37 +7534,12 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-tcp.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-timeout.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-udp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazip/src/$(DEPDIR)/libluajitmisc_a-luazip.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazip/src/$(DEPDIR)/libluamisc_a-luazip.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazlib/$(DEPDIR)/libluajitmisc_a-lgzip.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazlib/$(DEPDIR)/libluajitmisc_a-lzlib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazlib/$(DEPDIR)/libluamisc_a-lgzip.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/luazlib/$(DEPDIR)/libluamisc_a-lzlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfaction.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfannot.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfcolorstack.Po@am__quote@ # am--include-marker @@ -8552,42 +7584,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/libluatex_a-pdftables.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/libluatex_a-pdfthread.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/pdf/$(DEPDIR)/libluatex_a-pdfxform.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/slnunicode/$(DEPDIR)/libluajitmisc_a-slnunico.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/slnunicode/$(DEPDIR)/libluamisc_a-slnunico.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/libluajittex_a-align.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/libluajittex_a-arithmetic.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/tex/$(DEPDIR)/libluajittex_a-backend.Po@am__quote@ # am--include-marker @@ -8664,11 +7662,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/unilib/$(DEPDIR)/libunilib_a-usprintf.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/unilib/$(DEPDIR)/libunilib_a-ustring.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/unilib/$(DEPDIR)/libunilib_a-utype.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/utils/$(DEPDIR)/libluajittex_a-avl.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/utils/$(DEPDIR)/libluajittex_a-avlstuff.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@luatexdir/utils/$(DEPDIR)/libluajittex_a-managed-sa.Po@am__quote@ # am--include-marker @@ -8690,7 +7683,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@mplibdir/$(DEPDIR)/libmputil_a-decNumber.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@mplibdir/$(DEPDIR)/luajittex-lmplib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@mplibdir/$(DEPDIR)/luatex-lmplib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@mplibdir/$(DEPDIR)/luatex53-lmplib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@pdftexdir/$(DEPDIR)/libpdftex_a-avl.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@pdftexdir/$(DEPDIR)/libpdftex_a-avlstuff.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@pdftexdir/$(DEPDIR)/libpdftex_a-epdf.Po@am__quote@ # am--include-marker @@ -8725,7 +7717,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/eptex-synctex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/etex-synctex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/euptex-synctex.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/libluajittex_a-synctex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/libluatex_a-synctex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/libsynctex_a-synctex_parser.Po@am__quote@ # am--include-marker @@ -8739,2955 +7730,659 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/uptex-synctex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@synctexdir/$(DEPDIR)/xetex-synctex.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@uptexdir/$(DEPDIR)/libukanji_a-kanji.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@uptexdir/$(DEPDIR)/libukanji_a-kanji_dump.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@uptexdir/$(DEPDIR)/uptex-uptexextra.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontInst.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontInst_Mac.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontMgr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontMgr_FC.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontMgr_Mac.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXLayoutInterface.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXOTMath.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeX_ext.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeX_mac.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeX_pic.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-hz.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-pdfimage.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-trans.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/xetex-xetexextra.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-bmpimage.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-jpegimage.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-mfileio.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-numbers.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-pngimage.Po@am__quote@ # am--include-marker - -$(am__depfiles_remade): - @$(MKDIR_P) $(@D) - @echo '# dummy' >$@-t && $(am__mv) $@-t $@ - -am--depfiles: $(am__depfiles_remade) - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -.c.lo: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< - -luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o: luatexdir/luafontloader/fontforge/fontforge/autohint.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/autohint.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/autohint.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/autohint.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/autohint.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/autohint.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj: luatexdir/luafontloader/fontforge/fontforge/autohint.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/autohint.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/autohint.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/autohint.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/autohint.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/autohint.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/autohint.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/autohint.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o: luatexdir/luafontloader/fontforge/fontforge/clipnoui.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/clipnoui.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/clipnoui.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/clipnoui.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj: luatexdir/luafontloader/fontforge/fontforge/clipnoui.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/clipnoui.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o: luatexdir/luafontloader/fontforge/fontforge/cvundoes.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/cvundoes.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/cvundoes.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/cvundoes.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj: luatexdir/luafontloader/fontforge/fontforge/cvundoes.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/cvundoes.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o: luatexdir/luafontloader/fontforge/fontforge/dumppfa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/dumppfa.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/dumppfa.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/dumppfa.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj: luatexdir/luafontloader/fontforge/fontforge/dumppfa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/dumppfa.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o: luatexdir/luafontloader/fontforge/fontforge/encoding.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/encoding.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/encoding.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/encoding.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/encoding.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/encoding.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj: luatexdir/luafontloader/fontforge/fontforge/encoding.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/encoding.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/encoding.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/encoding.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/encoding.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/encoding.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/encoding.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/encoding.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o: luatexdir/luafontloader/fontforge/fontforge/featurefile.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/featurefile.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/featurefile.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/featurefile.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj: luatexdir/luafontloader/fontforge/fontforge/featurefile.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/featurefile.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o: luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj: luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o: luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj: luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o: luatexdir/luafontloader/fontforge/fontforge/fvfonts.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fvfonts.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fvfonts.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fvfonts.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj: luatexdir/luafontloader/fontforge/fontforge/fvfonts.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fvfonts.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o: luatexdir/luafontloader/fontforge/fontforge/lookups.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/lookups.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/lookups.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/lookups.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/lookups.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/lookups.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj: luatexdir/luafontloader/fontforge/fontforge/lookups.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/lookups.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/lookups.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/lookups.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/lookups.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/lookups.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/lookups.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/lookups.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o: luatexdir/luafontloader/fontforge/fontforge/macbinary.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/macbinary.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/macbinary.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/macbinary.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj: luatexdir/luafontloader/fontforge/fontforge/macbinary.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/macbinary.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o: luatexdir/luafontloader/fontforge/fontforge/macenc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/macenc.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/macenc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/macenc.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/macenc.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/macenc.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj: luatexdir/luafontloader/fontforge/fontforge/macenc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/macenc.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/macenc.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/macenc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/macenc.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/macenc.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/macenc.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/macenc.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o: luatexdir/luafontloader/fontforge/fontforge/mathconstants.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/mathconstants.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/mathconstants.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/mathconstants.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj: luatexdir/luafontloader/fontforge/fontforge/mathconstants.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/mathconstants.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o: luatexdir/luafontloader/fontforge/fontforge/memory.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/memory.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/memory.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/memory.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/memory.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/memory.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj: luatexdir/luafontloader/fontforge/fontforge/memory.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/memory.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/memory.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/memory.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/memory.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/memory.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/memory.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/memory.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o: luatexdir/luafontloader/fontforge/fontforge/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/mm.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/mm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/mm.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/mm.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/mm.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj: luatexdir/luafontloader/fontforge/fontforge/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/mm.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/mm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/mm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/mm.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/mm.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/mm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/mm.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o: luatexdir/luafontloader/fontforge/fontforge/namelist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/namelist.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/namelist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/namelist.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/namelist.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/namelist.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj: luatexdir/luafontloader/fontforge/fontforge/namelist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/namelist.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/namelist.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/namelist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/namelist.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/namelist.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/namelist.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/namelist.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o: luatexdir/luafontloader/fontforge/fontforge/noprefs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/noprefs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/noprefs.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/noprefs.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj: luatexdir/luafontloader/fontforge/fontforge/noprefs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/noprefs.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o: luatexdir/luafontloader/fontforge/fontforge/nouiutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/nouiutil.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/nouiutil.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/nouiutil.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj: luatexdir/luafontloader/fontforge/fontforge/nouiutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/nouiutil.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o: luatexdir/luafontloader/fontforge/fontforge/parsepfa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsepfa.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsepfa.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsepfa.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj: luatexdir/luafontloader/fontforge/fontforge/parsepfa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsepfa.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o: luatexdir/luafontloader/fontforge/fontforge/parsettf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsettf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsettf.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsettf.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj: luatexdir/luafontloader/fontforge/fontforge/parsettf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsettf.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o: luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj: luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o: luatexdir/luafontloader/fontforge/fontforge/psread.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/psread.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/psread.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/psread.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/psread.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/psread.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj: luatexdir/luafontloader/fontforge/fontforge/psread.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/psread.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/psread.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/psread.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/psread.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/psread.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/psread.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/psread.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o: luatexdir/luafontloader/fontforge/fontforge/pua.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/pua.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/pua.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/pua.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/pua.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/pua.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj: luatexdir/luafontloader/fontforge/fontforge/pua.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/pua.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/pua.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/pua.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/pua.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/pua.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/pua.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/pua.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o: luatexdir/luafontloader/fontforge/fontforge/python.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/python.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/python.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/python.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/python.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/python.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj: luatexdir/luafontloader/fontforge/fontforge/python.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/python.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/python.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/python.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/python.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/python.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/python.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/python.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o: luatexdir/luafontloader/fontforge/fontforge/sfd1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/sfd1.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/sfd1.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/sfd1.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj: luatexdir/luafontloader/fontforge/fontforge/sfd1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/sfd1.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o: luatexdir/luafontloader/fontforge/fontforge/splinechar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinechar.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinechar.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinechar.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj: luatexdir/luafontloader/fontforge/fontforge/splinechar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinechar.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o: luatexdir/luafontloader/fontforge/fontforge/splinefill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinefill.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinefill.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinefill.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj: luatexdir/luafontloader/fontforge/fontforge/splinefill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinefill.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o: luatexdir/luafontloader/fontforge/fontforge/splinefont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinefont.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinefont.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinefont.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj: luatexdir/luafontloader/fontforge/fontforge/splinefont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinefont.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o: luatexdir/luafontloader/fontforge/fontforge/splineorder2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineorder2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineorder2.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineorder2.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj: luatexdir/luafontloader/fontforge/fontforge/splineorder2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineorder2.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o: luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj: luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o: luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj: luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o: luatexdir/luafontloader/fontforge/fontforge/splinesave.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinesave.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinesave.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinesave.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj: luatexdir/luafontloader/fontforge/fontforge/splinesave.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinesave.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o: luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj: luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o: luatexdir/luafontloader/fontforge/fontforge/splinestroke.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinestroke.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinestroke.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinestroke.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj: luatexdir/luafontloader/fontforge/fontforge/splinestroke.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinestroke.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o: luatexdir/luafontloader/fontforge/fontforge/splineutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineutil.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineutil.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineutil.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj: luatexdir/luafontloader/fontforge/fontforge/splineutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineutil.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o: luatexdir/luafontloader/fontforge/fontforge/splineutil2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineutil2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineutil2.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineutil2.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj: luatexdir/luafontloader/fontforge/fontforge/splineutil2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineutil2.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o: luatexdir/luafontloader/fontforge/fontforge/start.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/start.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/start.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/start.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/start.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/start.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj: luatexdir/luafontloader/fontforge/fontforge/start.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/start.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/start.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/start.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/start.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/start.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/start.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/start.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o: luatexdir/luafontloader/fontforge/fontforge/stemdb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/stemdb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/stemdb.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/stemdb.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj: luatexdir/luafontloader/fontforge/fontforge/stemdb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/stemdb.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o: luatexdir/luafontloader/fontforge/fontforge/tottf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/tottf.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/tottf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/tottf.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/tottf.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/tottf.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj: luatexdir/luafontloader/fontforge/fontforge/tottf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/tottf.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/tottf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/tottf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/tottf.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/tottf.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/tottf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/tottf.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o: luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj: luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; fi` - -luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o: luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c - -luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj: luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; fi` - -luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o: luatexdir/luafontloader/fontforge/gutils/fsys.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o -MD -MP -MF luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Tpo -c -o luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o `test -f 'luatexdir/luafontloader/fontforge/gutils/fsys.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/gutils/fsys.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Tpo luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/gutils/fsys.c' object='luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o `test -f 'luatexdir/luafontloader/fontforge/gutils/fsys.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/gutils/fsys.c - -luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj: luatexdir/luafontloader/fontforge/gutils/fsys.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj -MD -MP -MF luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Tpo -c -o luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj `if test -f 'luatexdir/luafontloader/fontforge/gutils/fsys.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/gutils/fsys.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/gutils/fsys.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Tpo luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/gutils/fsys.c' object='luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj `if test -f 'luatexdir/luafontloader/fontforge/gutils/fsys.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/gutils/fsys.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/gutils/fsys.c'; fi` - -ptexdir/libkanji_a-kanji.o: ptexdir/kanji.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libkanji_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ptexdir/libkanji_a-kanji.o -MD -MP -MF ptexdir/$(DEPDIR)/libkanji_a-kanji.Tpo -c -o ptexdir/libkanji_a-kanji.o `test -f 'ptexdir/kanji.c' || echo '$(srcdir)/'`ptexdir/kanji.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ptexdir/$(DEPDIR)/libkanji_a-kanji.Tpo ptexdir/$(DEPDIR)/libkanji_a-kanji.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ptexdir/kanji.c' object='ptexdir/libkanji_a-kanji.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libkanji_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ptexdir/libkanji_a-kanji.o `test -f 'ptexdir/kanji.c' || echo '$(srcdir)/'`ptexdir/kanji.c - -ptexdir/libkanji_a-kanji.obj: ptexdir/kanji.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libkanji_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ptexdir/libkanji_a-kanji.obj -MD -MP -MF ptexdir/$(DEPDIR)/libkanji_a-kanji.Tpo -c -o ptexdir/libkanji_a-kanji.obj `if test -f 'ptexdir/kanji.c'; then $(CYGPATH_W) 'ptexdir/kanji.c'; else $(CYGPATH_W) '$(srcdir)/ptexdir/kanji.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ptexdir/$(DEPDIR)/libkanji_a-kanji.Tpo ptexdir/$(DEPDIR)/libkanji_a-kanji.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ptexdir/kanji.c' object='ptexdir/libkanji_a-kanji.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libkanji_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ptexdir/libkanji_a-kanji.obj `if test -f 'ptexdir/kanji.c'; then $(CYGPATH_W) 'ptexdir/kanji.c'; else $(CYGPATH_W) '$(srcdir)/ptexdir/kanji.c'; fi` - -luatexdir/luaffi/liblua53ffi_a-call.o: luatexdir/luaffi/call.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/liblua53ffi_a-call.o -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Tpo -c -o luatexdir/luaffi/liblua53ffi_a-call.o `test -f 'luatexdir/luaffi/call.c' || echo '$(srcdir)/'`luatexdir/luaffi/call.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Tpo luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luaffi/call.c' object='luatexdir/luaffi/liblua53ffi_a-call.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luaffi/liblua53ffi_a-call.o `test -f 'luatexdir/luaffi/call.c' || echo '$(srcdir)/'`luatexdir/luaffi/call.c - -luatexdir/luaffi/liblua53ffi_a-call.obj: luatexdir/luaffi/call.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/liblua53ffi_a-call.obj -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Tpo -c -o luatexdir/luaffi/liblua53ffi_a-call.obj `if test -f 'luatexdir/luaffi/call.c'; then $(CYGPATH_W) 'luatexdir/luaffi/call.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luaffi/call.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Tpo luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luaffi/call.c' object='luatexdir/luaffi/liblua53ffi_a-call.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luaffi/liblua53ffi_a-call.obj `if test -f 'luatexdir/luaffi/call.c'; then $(CYGPATH_W) 'luatexdir/luaffi/call.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luaffi/call.c'; fi` - -luatexdir/luaffi/liblua53ffi_a-ctype.o: luatexdir/luaffi/ctype.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/liblua53ffi_a-ctype.o -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Tpo -c -o luatexdir/luaffi/liblua53ffi_a-ctype.o `test -f 'luatexdir/luaffi/ctype.c' || echo '$(srcdir)/'`luatexdir/luaffi/ctype.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Tpo luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luaffi/ctype.c' object='luatexdir/luaffi/liblua53ffi_a-ctype.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luaffi/liblua53ffi_a-ctype.o `test -f 'luatexdir/luaffi/ctype.c' || echo '$(srcdir)/'`luatexdir/luaffi/ctype.c - -luatexdir/luaffi/liblua53ffi_a-ctype.obj: luatexdir/luaffi/ctype.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/liblua53ffi_a-ctype.obj -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Tpo -c -o luatexdir/luaffi/liblua53ffi_a-ctype.obj `if test -f 'luatexdir/luaffi/ctype.c'; then $(CYGPATH_W) 'luatexdir/luaffi/ctype.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luaffi/ctype.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Tpo luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luaffi/ctype.c' object='luatexdir/luaffi/liblua53ffi_a-ctype.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luaffi/liblua53ffi_a-ctype.obj `if test -f 'luatexdir/luaffi/ctype.c'; then $(CYGPATH_W) 'luatexdir/luaffi/ctype.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luaffi/ctype.c'; fi` - -luatexdir/luaffi/liblua53ffi_a-ffi.o: luatexdir/luaffi/ffi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/liblua53ffi_a-ffi.o -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Tpo -c -o luatexdir/luaffi/liblua53ffi_a-ffi.o `test -f 'luatexdir/luaffi/ffi.c' || echo '$(srcdir)/'`luatexdir/luaffi/ffi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Tpo luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luaffi/ffi.c' object='luatexdir/luaffi/liblua53ffi_a-ffi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luaffi/liblua53ffi_a-ffi.o `test -f 'luatexdir/luaffi/ffi.c' || echo '$(srcdir)/'`luatexdir/luaffi/ffi.c - -luatexdir/luaffi/liblua53ffi_a-ffi.obj: luatexdir/luaffi/ffi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/liblua53ffi_a-ffi.obj -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Tpo -c -o luatexdir/luaffi/liblua53ffi_a-ffi.obj `if test -f 'luatexdir/luaffi/ffi.c'; then $(CYGPATH_W) 'luatexdir/luaffi/ffi.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luaffi/ffi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Tpo luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luaffi/ffi.c' object='luatexdir/luaffi/liblua53ffi_a-ffi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luaffi/liblua53ffi_a-ffi.obj `if test -f 'luatexdir/luaffi/ffi.c'; then $(CYGPATH_W) 'luatexdir/luaffi/ffi.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luaffi/ffi.c'; fi` - -luatexdir/luaffi/liblua53ffi_a-parser.o: luatexdir/luaffi/parser.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/liblua53ffi_a-parser.o -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Tpo -c -o luatexdir/luaffi/liblua53ffi_a-parser.o `test -f 'luatexdir/luaffi/parser.c' || echo '$(srcdir)/'`luatexdir/luaffi/parser.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Tpo luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luaffi/parser.c' object='luatexdir/luaffi/liblua53ffi_a-parser.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luaffi/liblua53ffi_a-parser.o `test -f 'luatexdir/luaffi/parser.c' || echo '$(srcdir)/'`luatexdir/luaffi/parser.c - -luatexdir/luaffi/liblua53ffi_a-parser.obj: luatexdir/luaffi/parser.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/liblua53ffi_a-parser.obj -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Tpo -c -o luatexdir/luaffi/liblua53ffi_a-parser.obj `if test -f 'luatexdir/luaffi/parser.c'; then $(CYGPATH_W) 'luatexdir/luaffi/parser.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luaffi/parser.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Tpo luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luaffi/parser.c' object='luatexdir/luaffi/liblua53ffi_a-parser.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53ffi_a_CPPFLAGS) $(CPPFLAGS) $(liblua53ffi_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luaffi/liblua53ffi_a-parser.obj `if test -f 'luatexdir/luaffi/parser.c'; then $(CYGPATH_W) 'luatexdir/luaffi/parser.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luaffi/parser.c'; fi` - -luatexdir/luafilesystem/src/liblua53misc_a-lfs.o: luatexdir/luafilesystem/src/lfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafilesystem/src/liblua53misc_a-lfs.o -MD -MP -MF luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Tpo -c -o luatexdir/luafilesystem/src/liblua53misc_a-lfs.o `test -f 'luatexdir/luafilesystem/src/lfs.c' || echo '$(srcdir)/'`luatexdir/luafilesystem/src/lfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Tpo luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafilesystem/src/lfs.c' object='luatexdir/luafilesystem/src/liblua53misc_a-lfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafilesystem/src/liblua53misc_a-lfs.o `test -f 'luatexdir/luafilesystem/src/lfs.c' || echo '$(srcdir)/'`luatexdir/luafilesystem/src/lfs.c - -luatexdir/luafilesystem/src/liblua53misc_a-lfs.obj: luatexdir/luafilesystem/src/lfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafilesystem/src/liblua53misc_a-lfs.obj -MD -MP -MF luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Tpo -c -o luatexdir/luafilesystem/src/liblua53misc_a-lfs.obj `if test -f 'luatexdir/luafilesystem/src/lfs.c'; then $(CYGPATH_W) 'luatexdir/luafilesystem/src/lfs.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafilesystem/src/lfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Tpo luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafilesystem/src/lfs.c' object='luatexdir/luafilesystem/src/liblua53misc_a-lfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafilesystem/src/liblua53misc_a-lfs.obj `if test -f 'luatexdir/luafilesystem/src/lfs.c'; then $(CYGPATH_W) 'luatexdir/luafilesystem/src/lfs.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafilesystem/src/lfs.c'; fi` - -luatexdir/luamd5/liblua53misc_a-md5.o: luatexdir/luamd5/md5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luamd5/liblua53misc_a-md5.o -MD -MP -MF luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Tpo -c -o luatexdir/luamd5/liblua53misc_a-md5.o `test -f 'luatexdir/luamd5/md5.c' || echo '$(srcdir)/'`luatexdir/luamd5/md5.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Tpo luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luamd5/md5.c' object='luatexdir/luamd5/liblua53misc_a-md5.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luamd5/liblua53misc_a-md5.o `test -f 'luatexdir/luamd5/md5.c' || echo '$(srcdir)/'`luatexdir/luamd5/md5.c - -luatexdir/luamd5/liblua53misc_a-md5.obj: luatexdir/luamd5/md5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luamd5/liblua53misc_a-md5.obj -MD -MP -MF luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Tpo -c -o luatexdir/luamd5/liblua53misc_a-md5.obj `if test -f 'luatexdir/luamd5/md5.c'; then $(CYGPATH_W) 'luatexdir/luamd5/md5.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luamd5/md5.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Tpo luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luamd5/md5.c' object='luatexdir/luamd5/liblua53misc_a-md5.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luamd5/liblua53misc_a-md5.obj `if test -f 'luatexdir/luamd5/md5.c'; then $(CYGPATH_W) 'luatexdir/luamd5/md5.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luamd5/md5.c'; fi` - -luatexdir/luamd5/liblua53misc_a-md5lib.o: luatexdir/luamd5/md5lib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luamd5/liblua53misc_a-md5lib.o -MD -MP -MF luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Tpo -c -o luatexdir/luamd5/liblua53misc_a-md5lib.o `test -f 'luatexdir/luamd5/md5lib.c' || echo '$(srcdir)/'`luatexdir/luamd5/md5lib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Tpo luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luamd5/md5lib.c' object='luatexdir/luamd5/liblua53misc_a-md5lib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luamd5/liblua53misc_a-md5lib.o `test -f 'luatexdir/luamd5/md5lib.c' || echo '$(srcdir)/'`luatexdir/luamd5/md5lib.c - -luatexdir/luamd5/liblua53misc_a-md5lib.obj: luatexdir/luamd5/md5lib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luamd5/liblua53misc_a-md5lib.obj -MD -MP -MF luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Tpo -c -o luatexdir/luamd5/liblua53misc_a-md5lib.obj `if test -f 'luatexdir/luamd5/md5lib.c'; then $(CYGPATH_W) 'luatexdir/luamd5/md5lib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luamd5/md5lib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Tpo luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luamd5/md5lib.c' object='luatexdir/luamd5/liblua53misc_a-md5lib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luamd5/liblua53misc_a-md5lib.obj `if test -f 'luatexdir/luamd5/md5lib.c'; then $(CYGPATH_W) 'luatexdir/luamd5/md5lib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luamd5/md5lib.c'; fi` - -luatexdir/luapeg/liblua53misc_a-lpeg.o: luatexdir/luapeg/lpeg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapeg/liblua53misc_a-lpeg.o -MD -MP -MF luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Tpo -c -o luatexdir/luapeg/liblua53misc_a-lpeg.o `test -f 'luatexdir/luapeg/lpeg.c' || echo '$(srcdir)/'`luatexdir/luapeg/lpeg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Tpo luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapeg/lpeg.c' object='luatexdir/luapeg/liblua53misc_a-lpeg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapeg/liblua53misc_a-lpeg.o `test -f 'luatexdir/luapeg/lpeg.c' || echo '$(srcdir)/'`luatexdir/luapeg/lpeg.c - -luatexdir/luapeg/liblua53misc_a-lpeg.obj: luatexdir/luapeg/lpeg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapeg/liblua53misc_a-lpeg.obj -MD -MP -MF luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Tpo -c -o luatexdir/luapeg/liblua53misc_a-lpeg.obj `if test -f 'luatexdir/luapeg/lpeg.c'; then $(CYGPATH_W) 'luatexdir/luapeg/lpeg.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapeg/lpeg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Tpo luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapeg/lpeg.c' object='luatexdir/luapeg/liblua53misc_a-lpeg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapeg/liblua53misc_a-lpeg.obj `if test -f 'luatexdir/luapeg/lpeg.c'; then $(CYGPATH_W) 'luatexdir/luapeg/lpeg.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapeg/lpeg.c'; fi` - -luatexdir/luazip/src/liblua53misc_a-luazip.o: luatexdir/luazip/src/luazip.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luazip/src/liblua53misc_a-luazip.o -MD -MP -MF luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Tpo -c -o luatexdir/luazip/src/liblua53misc_a-luazip.o `test -f 'luatexdir/luazip/src/luazip.c' || echo '$(srcdir)/'`luatexdir/luazip/src/luazip.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Tpo luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luazip/src/luazip.c' object='luatexdir/luazip/src/liblua53misc_a-luazip.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luazip/src/liblua53misc_a-luazip.o `test -f 'luatexdir/luazip/src/luazip.c' || echo '$(srcdir)/'`luatexdir/luazip/src/luazip.c - -luatexdir/luazip/src/liblua53misc_a-luazip.obj: luatexdir/luazip/src/luazip.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luazip/src/liblua53misc_a-luazip.obj -MD -MP -MF luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Tpo -c -o luatexdir/luazip/src/liblua53misc_a-luazip.obj `if test -f 'luatexdir/luazip/src/luazip.c'; then $(CYGPATH_W) 'luatexdir/luazip/src/luazip.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luazip/src/luazip.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Tpo luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luazip/src/luazip.c' object='luatexdir/luazip/src/liblua53misc_a-luazip.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luazip/src/liblua53misc_a-luazip.obj `if test -f 'luatexdir/luazip/src/luazip.c'; then $(CYGPATH_W) 'luatexdir/luazip/src/luazip.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luazip/src/luazip.c'; fi` - -luatexdir/luazlib/liblua53misc_a-lgzip.o: luatexdir/luazlib/lgzip.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luazlib/liblua53misc_a-lgzip.o -MD -MP -MF luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Tpo -c -o luatexdir/luazlib/liblua53misc_a-lgzip.o `test -f 'luatexdir/luazlib/lgzip.c' || echo '$(srcdir)/'`luatexdir/luazlib/lgzip.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Tpo luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luazlib/lgzip.c' object='luatexdir/luazlib/liblua53misc_a-lgzip.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luazlib/liblua53misc_a-lgzip.o `test -f 'luatexdir/luazlib/lgzip.c' || echo '$(srcdir)/'`luatexdir/luazlib/lgzip.c - -luatexdir/luazlib/liblua53misc_a-lgzip.obj: luatexdir/luazlib/lgzip.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luazlib/liblua53misc_a-lgzip.obj -MD -MP -MF luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Tpo -c -o luatexdir/luazlib/liblua53misc_a-lgzip.obj `if test -f 'luatexdir/luazlib/lgzip.c'; then $(CYGPATH_W) 'luatexdir/luazlib/lgzip.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luazlib/lgzip.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Tpo luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luazlib/lgzip.c' object='luatexdir/luazlib/liblua53misc_a-lgzip.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luazlib/liblua53misc_a-lgzip.obj `if test -f 'luatexdir/luazlib/lgzip.c'; then $(CYGPATH_W) 'luatexdir/luazlib/lgzip.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luazlib/lgzip.c'; fi` - -luatexdir/luazlib/liblua53misc_a-lzlib.o: luatexdir/luazlib/lzlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luazlib/liblua53misc_a-lzlib.o -MD -MP -MF luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Tpo -c -o luatexdir/luazlib/liblua53misc_a-lzlib.o `test -f 'luatexdir/luazlib/lzlib.c' || echo '$(srcdir)/'`luatexdir/luazlib/lzlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Tpo luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luazlib/lzlib.c' object='luatexdir/luazlib/liblua53misc_a-lzlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luazlib/liblua53misc_a-lzlib.o `test -f 'luatexdir/luazlib/lzlib.c' || echo '$(srcdir)/'`luatexdir/luazlib/lzlib.c - -luatexdir/luazlib/liblua53misc_a-lzlib.obj: luatexdir/luazlib/lzlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/luazlib/liblua53misc_a-lzlib.obj -MD -MP -MF luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Tpo -c -o luatexdir/luazlib/liblua53misc_a-lzlib.obj `if test -f 'luatexdir/luazlib/lzlib.c'; then $(CYGPATH_W) 'luatexdir/luazlib/lzlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luazlib/lzlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Tpo luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luazlib/lzlib.c' object='luatexdir/luazlib/liblua53misc_a-lzlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luazlib/liblua53misc_a-lzlib.obj `if test -f 'luatexdir/luazlib/lzlib.c'; then $(CYGPATH_W) 'luatexdir/luazlib/lzlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luazlib/lzlib.c'; fi` - -luatexdir/slnunicode/liblua53misc_a-slnunico.o: luatexdir/slnunicode/slnunico.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/slnunicode/liblua53misc_a-slnunico.o -MD -MP -MF luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Tpo -c -o luatexdir/slnunicode/liblua53misc_a-slnunico.o `test -f 'luatexdir/slnunicode/slnunico.c' || echo '$(srcdir)/'`luatexdir/slnunicode/slnunico.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Tpo luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/slnunicode/slnunico.c' object='luatexdir/slnunicode/liblua53misc_a-slnunico.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/slnunicode/liblua53misc_a-slnunico.o `test -f 'luatexdir/slnunicode/slnunico.c' || echo '$(srcdir)/'`luatexdir/slnunicode/slnunico.c - -luatexdir/slnunicode/liblua53misc_a-slnunico.obj: luatexdir/slnunicode/slnunico.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -MT luatexdir/slnunicode/liblua53misc_a-slnunico.obj -MD -MP -MF luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Tpo -c -o luatexdir/slnunicode/liblua53misc_a-slnunico.obj `if test -f 'luatexdir/slnunicode/slnunico.c'; then $(CYGPATH_W) 'luatexdir/slnunicode/slnunico.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/slnunicode/slnunico.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Tpo luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/slnunicode/slnunico.c' object='luatexdir/slnunicode/liblua53misc_a-slnunico.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53misc_a_CPPFLAGS) $(CPPFLAGS) $(liblua53misc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/slnunicode/liblua53misc_a-slnunico.obj `if test -f 'luatexdir/slnunicode/slnunico.c'; then $(CYGPATH_W) 'luatexdir/slnunicode/slnunico.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/slnunicode/slnunico.c'; fi` - -luatexdir/luapplib/liblua53pplib_a-pparray.o: luatexdir/luapplib/pparray.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-pparray.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-pparray.o `test -f 'luatexdir/luapplib/pparray.c' || echo '$(srcdir)/'`luatexdir/luapplib/pparray.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pparray.c' object='luatexdir/luapplib/liblua53pplib_a-pparray.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-pparray.o `test -f 'luatexdir/luapplib/pparray.c' || echo '$(srcdir)/'`luatexdir/luapplib/pparray.c - -luatexdir/luapplib/liblua53pplib_a-pparray.obj: luatexdir/luapplib/pparray.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-pparray.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-pparray.obj `if test -f 'luatexdir/luapplib/pparray.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pparray.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pparray.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pparray.c' object='luatexdir/luapplib/liblua53pplib_a-pparray.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-pparray.obj `if test -f 'luatexdir/luapplib/pparray.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pparray.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pparray.c'; fi` - -luatexdir/luapplib/liblua53pplib_a-ppcrypt.o: luatexdir/luapplib/ppcrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppcrypt.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppcrypt.o `test -f 'luatexdir/luapplib/ppcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppcrypt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppcrypt.c' object='luatexdir/luapplib/liblua53pplib_a-ppcrypt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppcrypt.o `test -f 'luatexdir/luapplib/ppcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppcrypt.c - -luatexdir/luapplib/liblua53pplib_a-ppcrypt.obj: luatexdir/luapplib/ppcrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppcrypt.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppcrypt.obj `if test -f 'luatexdir/luapplib/ppcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppcrypt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppcrypt.c' object='luatexdir/luapplib/liblua53pplib_a-ppcrypt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppcrypt.obj `if test -f 'luatexdir/luapplib/ppcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppcrypt.c'; fi` - -luatexdir/luapplib/liblua53pplib_a-ppdict.o: luatexdir/luapplib/ppdict.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppdict.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppdict.o `test -f 'luatexdir/luapplib/ppdict.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppdict.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppdict.c' object='luatexdir/luapplib/liblua53pplib_a-ppdict.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppdict.o `test -f 'luatexdir/luapplib/ppdict.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppdict.c - -luatexdir/luapplib/liblua53pplib_a-ppdict.obj: luatexdir/luapplib/ppdict.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppdict.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppdict.obj `if test -f 'luatexdir/luapplib/ppdict.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppdict.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppdict.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppdict.c' object='luatexdir/luapplib/liblua53pplib_a-ppdict.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppdict.obj `if test -f 'luatexdir/luapplib/ppdict.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppdict.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppdict.c'; fi` - -luatexdir/luapplib/liblua53pplib_a-ppheap.o: luatexdir/luapplib/ppheap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppheap.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppheap.o `test -f 'luatexdir/luapplib/ppheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppheap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppheap.c' object='luatexdir/luapplib/liblua53pplib_a-ppheap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppheap.o `test -f 'luatexdir/luapplib/ppheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppheap.c - -luatexdir/luapplib/liblua53pplib_a-ppheap.obj: luatexdir/luapplib/ppheap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppheap.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppheap.obj `if test -f 'luatexdir/luapplib/ppheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppheap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppheap.c' object='luatexdir/luapplib/liblua53pplib_a-ppheap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppheap.obj `if test -f 'luatexdir/luapplib/ppheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppheap.c'; fi` - -luatexdir/luapplib/liblua53pplib_a-ppload.o: luatexdir/luapplib/ppload.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppload.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppload.o `test -f 'luatexdir/luapplib/ppload.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppload.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppload.c' object='luatexdir/luapplib/liblua53pplib_a-ppload.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppload.o `test -f 'luatexdir/luapplib/ppload.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppload.c - -luatexdir/luapplib/liblua53pplib_a-ppload.obj: luatexdir/luapplib/ppload.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppload.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppload.obj `if test -f 'luatexdir/luapplib/ppload.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppload.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppload.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppload.c' object='luatexdir/luapplib/liblua53pplib_a-ppload.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppload.obj `if test -f 'luatexdir/luapplib/ppload.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppload.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppload.c'; fi` - -luatexdir/luapplib/liblua53pplib_a-ppstream.o: luatexdir/luapplib/ppstream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppstream.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppstream.o `test -f 'luatexdir/luapplib/ppstream.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppstream.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppstream.c' object='luatexdir/luapplib/liblua53pplib_a-ppstream.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppstream.o `test -f 'luatexdir/luapplib/ppstream.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppstream.c - -luatexdir/luapplib/liblua53pplib_a-ppstream.obj: luatexdir/luapplib/ppstream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppstream.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppstream.obj `if test -f 'luatexdir/luapplib/ppstream.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppstream.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppstream.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppstream.c' object='luatexdir/luapplib/liblua53pplib_a-ppstream.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppstream.obj `if test -f 'luatexdir/luapplib/ppstream.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppstream.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppstream.c'; fi` - -luatexdir/luapplib/liblua53pplib_a-ppxref.o: luatexdir/luapplib/ppxref.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppxref.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppxref.o `test -f 'luatexdir/luapplib/ppxref.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppxref.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppxref.c' object='luatexdir/luapplib/liblua53pplib_a-ppxref.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppxref.o `test -f 'luatexdir/luapplib/ppxref.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppxref.c - -luatexdir/luapplib/liblua53pplib_a-ppxref.obj: luatexdir/luapplib/ppxref.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/liblua53pplib_a-ppxref.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Tpo -c -o luatexdir/luapplib/liblua53pplib_a-ppxref.obj `if test -f 'luatexdir/luapplib/ppxref.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppxref.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppxref.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Tpo luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/ppxref.c' object='luatexdir/luapplib/liblua53pplib_a-ppxref.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/liblua53pplib_a-ppxref.obj `if test -f 'luatexdir/luapplib/ppxref.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppxref.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppxref.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.o: luatexdir/luapplib/util/utilbasexx.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.o `test -f 'luatexdir/luapplib/util/utilbasexx.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilbasexx.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilbasexx.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.o `test -f 'luatexdir/luapplib/util/utilbasexx.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilbasexx.c - -luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.obj: luatexdir/luapplib/util/utilbasexx.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.obj `if test -f 'luatexdir/luapplib/util/utilbasexx.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilbasexx.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilbasexx.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilbasexx.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilbasexx.obj `if test -f 'luatexdir/luapplib/util/utilbasexx.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilbasexx.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilbasexx.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.o: luatexdir/luapplib/util/utilcrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.o `test -f 'luatexdir/luapplib/util/utilcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilcrypt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilcrypt.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.o `test -f 'luatexdir/luapplib/util/utilcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilcrypt.c - -luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.obj: luatexdir/luapplib/util/utilcrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.obj `if test -f 'luatexdir/luapplib/util/utilcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilcrypt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilcrypt.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilcrypt.obj `if test -f 'luatexdir/luapplib/util/utilcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilcrypt.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utilflate.o: luatexdir/luapplib/util/utilflate.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilflate.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilflate.o `test -f 'luatexdir/luapplib/util/utilflate.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilflate.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilflate.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilflate.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilflate.o `test -f 'luatexdir/luapplib/util/utilflate.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilflate.c - -luatexdir/luapplib/util/liblua53pplib_a-utilflate.obj: luatexdir/luapplib/util/utilflate.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilflate.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilflate.obj `if test -f 'luatexdir/luapplib/util/utilflate.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilflate.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilflate.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilflate.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilflate.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilflate.obj `if test -f 'luatexdir/luapplib/util/utilflate.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilflate.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilflate.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utilfpred.o: luatexdir/luapplib/util/utilfpred.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilfpred.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilfpred.o `test -f 'luatexdir/luapplib/util/utilfpred.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilfpred.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilfpred.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilfpred.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilfpred.o `test -f 'luatexdir/luapplib/util/utilfpred.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilfpred.c - -luatexdir/luapplib/util/liblua53pplib_a-utilfpred.obj: luatexdir/luapplib/util/utilfpred.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilfpred.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilfpred.obj `if test -f 'luatexdir/luapplib/util/utilfpred.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilfpred.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilfpred.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilfpred.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilfpred.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilfpred.obj `if test -f 'luatexdir/luapplib/util/utilfpred.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilfpred.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilfpred.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utiliof.o: luatexdir/luapplib/util/utiliof.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utiliof.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utiliof.o `test -f 'luatexdir/luapplib/util/utiliof.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utiliof.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utiliof.c' object='luatexdir/luapplib/util/liblua53pplib_a-utiliof.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utiliof.o `test -f 'luatexdir/luapplib/util/utiliof.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utiliof.c - -luatexdir/luapplib/util/liblua53pplib_a-utiliof.obj: luatexdir/luapplib/util/utiliof.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utiliof.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utiliof.obj `if test -f 'luatexdir/luapplib/util/utiliof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utiliof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utiliof.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utiliof.c' object='luatexdir/luapplib/util/liblua53pplib_a-utiliof.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utiliof.obj `if test -f 'luatexdir/luapplib/util/utiliof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utiliof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utiliof.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utillog.o: luatexdir/luapplib/util/utillog.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utillog.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utillog.o `test -f 'luatexdir/luapplib/util/utillog.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utillog.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utillog.c' object='luatexdir/luapplib/util/liblua53pplib_a-utillog.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utillog.o `test -f 'luatexdir/luapplib/util/utillog.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utillog.c - -luatexdir/luapplib/util/liblua53pplib_a-utillog.obj: luatexdir/luapplib/util/utillog.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utillog.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utillog.obj `if test -f 'luatexdir/luapplib/util/utillog.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utillog.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utillog.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utillog.c' object='luatexdir/luapplib/util/liblua53pplib_a-utillog.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utillog.obj `if test -f 'luatexdir/luapplib/util/utillog.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utillog.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utillog.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utillzw.o: luatexdir/luapplib/util/utillzw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utillzw.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utillzw.o `test -f 'luatexdir/luapplib/util/utillzw.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utillzw.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utillzw.c' object='luatexdir/luapplib/util/liblua53pplib_a-utillzw.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utillzw.o `test -f 'luatexdir/luapplib/util/utillzw.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utillzw.c - -luatexdir/luapplib/util/liblua53pplib_a-utillzw.obj: luatexdir/luapplib/util/utillzw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utillzw.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utillzw.obj `if test -f 'luatexdir/luapplib/util/utillzw.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utillzw.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utillzw.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utillzw.c' object='luatexdir/luapplib/util/liblua53pplib_a-utillzw.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utillzw.obj `if test -f 'luatexdir/luapplib/util/utillzw.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utillzw.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utillzw.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utilmd5.o: luatexdir/luapplib/util/utilmd5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilmd5.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilmd5.o `test -f 'luatexdir/luapplib/util/utilmd5.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilmd5.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilmd5.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilmd5.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilmd5.o `test -f 'luatexdir/luapplib/util/utilmd5.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilmd5.c - -luatexdir/luapplib/util/liblua53pplib_a-utilmd5.obj: luatexdir/luapplib/util/utilmd5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilmd5.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilmd5.obj `if test -f 'luatexdir/luapplib/util/utilmd5.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilmd5.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilmd5.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilmd5.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilmd5.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilmd5.obj `if test -f 'luatexdir/luapplib/util/utilmd5.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilmd5.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilmd5.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utilmem.o: luatexdir/luapplib/util/utilmem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilmem.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilmem.o `test -f 'luatexdir/luapplib/util/utilmem.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilmem.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilmem.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilmem.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilmem.o `test -f 'luatexdir/luapplib/util/utilmem.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilmem.c - -luatexdir/luapplib/util/liblua53pplib_a-utilmem.obj: luatexdir/luapplib/util/utilmem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilmem.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilmem.obj `if test -f 'luatexdir/luapplib/util/utilmem.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilmem.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilmem.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilmem.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilmem.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilmem.obj `if test -f 'luatexdir/luapplib/util/utilmem.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilmem.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilmem.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utilnumber.o: luatexdir/luapplib/util/utilnumber.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilnumber.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilnumber.o `test -f 'luatexdir/luapplib/util/utilnumber.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilnumber.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilnumber.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilnumber.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilnumber.o `test -f 'luatexdir/luapplib/util/utilnumber.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilnumber.c - -luatexdir/luapplib/util/liblua53pplib_a-utilnumber.obj: luatexdir/luapplib/util/utilnumber.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilnumber.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilnumber.obj `if test -f 'luatexdir/luapplib/util/utilnumber.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilnumber.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilnumber.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilnumber.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilnumber.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilnumber.obj `if test -f 'luatexdir/luapplib/util/utilnumber.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilnumber.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilnumber.c'; fi` - -luatexdir/luapplib/util/liblua53pplib_a-utilsha.o: luatexdir/luapplib/util/utilsha.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilsha.o -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilsha.o `test -f 'luatexdir/luapplib/util/utilsha.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilsha.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilsha.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilsha.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilsha.o `test -f 'luatexdir/luapplib/util/utilsha.c' || echo '$(srcdir)/'`luatexdir/luapplib/util/utilsha.c - -luatexdir/luapplib/util/liblua53pplib_a-utilsha.obj: luatexdir/luapplib/util/utilsha.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/util/liblua53pplib_a-utilsha.obj -MD -MP -MF luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Tpo -c -o luatexdir/luapplib/util/liblua53pplib_a-utilsha.obj `if test -f 'luatexdir/luapplib/util/utilsha.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilsha.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilsha.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Tpo luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/util/utilsha.c' object='luatexdir/luapplib/util/liblua53pplib_a-utilsha.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53pplib_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/util/liblua53pplib_a-utilsha.obj `if test -f 'luatexdir/luapplib/util/utilsha.c'; then $(CYGPATH_W) 'luatexdir/luapplib/util/utilsha.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/util/utilsha.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-auxiliar.o: luatexdir/luasocket/src/auxiliar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-auxiliar.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-auxiliar.o `test -f 'luatexdir/luasocket/src/auxiliar.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/auxiliar.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/auxiliar.c' object='luatexdir/luasocket/src/liblua53socket_a-auxiliar.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-auxiliar.o `test -f 'luatexdir/luasocket/src/auxiliar.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/auxiliar.c - -luatexdir/luasocket/src/liblua53socket_a-auxiliar.obj: luatexdir/luasocket/src/auxiliar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-auxiliar.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-auxiliar.obj `if test -f 'luatexdir/luasocket/src/auxiliar.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/auxiliar.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/auxiliar.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/auxiliar.c' object='luatexdir/luasocket/src/liblua53socket_a-auxiliar.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-auxiliar.obj `if test -f 'luatexdir/luasocket/src/auxiliar.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/auxiliar.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/auxiliar.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-buffer.o: luatexdir/luasocket/src/buffer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-buffer.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-buffer.o `test -f 'luatexdir/luasocket/src/buffer.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/buffer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/buffer.c' object='luatexdir/luasocket/src/liblua53socket_a-buffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-buffer.o `test -f 'luatexdir/luasocket/src/buffer.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/buffer.c - -luatexdir/luasocket/src/liblua53socket_a-buffer.obj: luatexdir/luasocket/src/buffer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-buffer.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-buffer.obj `if test -f 'luatexdir/luasocket/src/buffer.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/buffer.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/buffer.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/buffer.c' object='luatexdir/luasocket/src/liblua53socket_a-buffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-buffer.obj `if test -f 'luatexdir/luasocket/src/buffer.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/buffer.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/buffer.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-compat.o: luatexdir/luasocket/src/compat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-compat.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-compat.o `test -f 'luatexdir/luasocket/src/compat.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/compat.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/compat.c' object='luatexdir/luasocket/src/liblua53socket_a-compat.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-compat.o `test -f 'luatexdir/luasocket/src/compat.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/compat.c - -luatexdir/luasocket/src/liblua53socket_a-compat.obj: luatexdir/luasocket/src/compat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-compat.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-compat.obj `if test -f 'luatexdir/luasocket/src/compat.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/compat.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/compat.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/compat.c' object='luatexdir/luasocket/src/liblua53socket_a-compat.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-compat.obj `if test -f 'luatexdir/luasocket/src/compat.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/compat.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/compat.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-except.o: luatexdir/luasocket/src/except.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-except.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-except.o `test -f 'luatexdir/luasocket/src/except.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/except.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/except.c' object='luatexdir/luasocket/src/liblua53socket_a-except.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-except.o `test -f 'luatexdir/luasocket/src/except.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/except.c - -luatexdir/luasocket/src/liblua53socket_a-except.obj: luatexdir/luasocket/src/except.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-except.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-except.obj `if test -f 'luatexdir/luasocket/src/except.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/except.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/except.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/except.c' object='luatexdir/luasocket/src/liblua53socket_a-except.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-except.obj `if test -f 'luatexdir/luasocket/src/except.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/except.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/except.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-inet.o: luatexdir/luasocket/src/inet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-inet.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-inet.o `test -f 'luatexdir/luasocket/src/inet.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/inet.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/inet.c' object='luatexdir/luasocket/src/liblua53socket_a-inet.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-inet.o `test -f 'luatexdir/luasocket/src/inet.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/inet.c - -luatexdir/luasocket/src/liblua53socket_a-inet.obj: luatexdir/luasocket/src/inet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-inet.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-inet.obj `if test -f 'luatexdir/luasocket/src/inet.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/inet.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/inet.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/inet.c' object='luatexdir/luasocket/src/liblua53socket_a-inet.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-inet.obj `if test -f 'luatexdir/luasocket/src/inet.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/inet.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/inet.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-io.o: luatexdir/luasocket/src/io.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-io.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-io.o `test -f 'luatexdir/luasocket/src/io.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/io.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/io.c' object='luatexdir/luasocket/src/liblua53socket_a-io.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-io.o `test -f 'luatexdir/luasocket/src/io.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/io.c - -luatexdir/luasocket/src/liblua53socket_a-io.obj: luatexdir/luasocket/src/io.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-io.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-io.obj `if test -f 'luatexdir/luasocket/src/io.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/io.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/io.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/io.c' object='luatexdir/luasocket/src/liblua53socket_a-io.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-io.obj `if test -f 'luatexdir/luasocket/src/io.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/io.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/io.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-lua_preload.o: luatexdir/luasocket/src/lua_preload.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-lua_preload.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-lua_preload.o `test -f 'luatexdir/luasocket/src/lua_preload.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/lua_preload.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/lua_preload.c' object='luatexdir/luasocket/src/liblua53socket_a-lua_preload.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-lua_preload.o `test -f 'luatexdir/luasocket/src/lua_preload.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/lua_preload.c - -luatexdir/luasocket/src/liblua53socket_a-lua_preload.obj: luatexdir/luasocket/src/lua_preload.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-lua_preload.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-lua_preload.obj `if test -f 'luatexdir/luasocket/src/lua_preload.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/lua_preload.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/lua_preload.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/lua_preload.c' object='luatexdir/luasocket/src/liblua53socket_a-lua_preload.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-lua_preload.obj `if test -f 'luatexdir/luasocket/src/lua_preload.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/lua_preload.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/lua_preload.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-luasocket.o: luatexdir/luasocket/src/luasocket.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-luasocket.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-luasocket.o `test -f 'luatexdir/luasocket/src/luasocket.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/luasocket.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/luasocket.c' object='luatexdir/luasocket/src/liblua53socket_a-luasocket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-luasocket.o `test -f 'luatexdir/luasocket/src/luasocket.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/luasocket.c - -luatexdir/luasocket/src/liblua53socket_a-luasocket.obj: luatexdir/luasocket/src/luasocket.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-luasocket.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-luasocket.obj `if test -f 'luatexdir/luasocket/src/luasocket.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/luasocket.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/luasocket.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/luasocket.c' object='luatexdir/luasocket/src/liblua53socket_a-luasocket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-luasocket.obj `if test -f 'luatexdir/luasocket/src/luasocket.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/luasocket.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/luasocket.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-mime.o: luatexdir/luasocket/src/mime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-mime.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-mime.o `test -f 'luatexdir/luasocket/src/mime.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/mime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/mime.c' object='luatexdir/luasocket/src/liblua53socket_a-mime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-mime.o `test -f 'luatexdir/luasocket/src/mime.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/mime.c - -luatexdir/luasocket/src/liblua53socket_a-mime.obj: luatexdir/luasocket/src/mime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-mime.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-mime.obj `if test -f 'luatexdir/luasocket/src/mime.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/mime.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/mime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/mime.c' object='luatexdir/luasocket/src/liblua53socket_a-mime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-mime.obj `if test -f 'luatexdir/luasocket/src/mime.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/mime.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/mime.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-options.o: luatexdir/luasocket/src/options.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-options.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-options.o `test -f 'luatexdir/luasocket/src/options.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/options.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/options.c' object='luatexdir/luasocket/src/liblua53socket_a-options.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-options.o `test -f 'luatexdir/luasocket/src/options.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/options.c - -luatexdir/luasocket/src/liblua53socket_a-options.obj: luatexdir/luasocket/src/options.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-options.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-options.obj `if test -f 'luatexdir/luasocket/src/options.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/options.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/options.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/options.c' object='luatexdir/luasocket/src/liblua53socket_a-options.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-options.obj `if test -f 'luatexdir/luasocket/src/options.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/options.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/options.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-select.o: luatexdir/luasocket/src/select.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-select.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-select.o `test -f 'luatexdir/luasocket/src/select.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/select.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/select.c' object='luatexdir/luasocket/src/liblua53socket_a-select.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-select.o `test -f 'luatexdir/luasocket/src/select.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/select.c - -luatexdir/luasocket/src/liblua53socket_a-select.obj: luatexdir/luasocket/src/select.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-select.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-select.obj `if test -f 'luatexdir/luasocket/src/select.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/select.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/select.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/select.c' object='luatexdir/luasocket/src/liblua53socket_a-select.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-select.obj `if test -f 'luatexdir/luasocket/src/select.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/select.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/select.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-serial.o: luatexdir/luasocket/src/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-serial.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-serial.o `test -f 'luatexdir/luasocket/src/serial.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/serial.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/serial.c' object='luatexdir/luasocket/src/liblua53socket_a-serial.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-serial.o `test -f 'luatexdir/luasocket/src/serial.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/serial.c - -luatexdir/luasocket/src/liblua53socket_a-serial.obj: luatexdir/luasocket/src/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-serial.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-serial.obj `if test -f 'luatexdir/luasocket/src/serial.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/serial.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/serial.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/serial.c' object='luatexdir/luasocket/src/liblua53socket_a-serial.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-serial.obj `if test -f 'luatexdir/luasocket/src/serial.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/serial.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/serial.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-socket.o: luatexdir/luasocket/src/socket.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-socket.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-socket.o `test -f 'luatexdir/luasocket/src/socket.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/socket.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/socket.c' object='luatexdir/luasocket/src/liblua53socket_a-socket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-socket.o `test -f 'luatexdir/luasocket/src/socket.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/socket.c - -luatexdir/luasocket/src/liblua53socket_a-socket.obj: luatexdir/luasocket/src/socket.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-socket.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-socket.obj `if test -f 'luatexdir/luasocket/src/socket.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/socket.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/socket.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/socket.c' object='luatexdir/luasocket/src/liblua53socket_a-socket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-socket.obj `if test -f 'luatexdir/luasocket/src/socket.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/socket.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/socket.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-tcp.o: luatexdir/luasocket/src/tcp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-tcp.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-tcp.o `test -f 'luatexdir/luasocket/src/tcp.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/tcp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/tcp.c' object='luatexdir/luasocket/src/liblua53socket_a-tcp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-tcp.o `test -f 'luatexdir/luasocket/src/tcp.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/tcp.c - -luatexdir/luasocket/src/liblua53socket_a-tcp.obj: luatexdir/luasocket/src/tcp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-tcp.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-tcp.obj `if test -f 'luatexdir/luasocket/src/tcp.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/tcp.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/tcp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/tcp.c' object='luatexdir/luasocket/src/liblua53socket_a-tcp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-tcp.obj `if test -f 'luatexdir/luasocket/src/tcp.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/tcp.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/tcp.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-timeout.o: luatexdir/luasocket/src/timeout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-timeout.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-timeout.o `test -f 'luatexdir/luasocket/src/timeout.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/timeout.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/timeout.c' object='luatexdir/luasocket/src/liblua53socket_a-timeout.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-timeout.o `test -f 'luatexdir/luasocket/src/timeout.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/timeout.c - -luatexdir/luasocket/src/liblua53socket_a-timeout.obj: luatexdir/luasocket/src/timeout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-timeout.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-timeout.obj `if test -f 'luatexdir/luasocket/src/timeout.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/timeout.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/timeout.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/timeout.c' object='luatexdir/luasocket/src/liblua53socket_a-timeout.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-timeout.obj `if test -f 'luatexdir/luasocket/src/timeout.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/timeout.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/timeout.c'; fi` - -luatexdir/luasocket/src/liblua53socket_a-udp.o: luatexdir/luasocket/src/udp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-udp.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-udp.o `test -f 'luatexdir/luasocket/src/udp.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/udp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/udp.c' object='luatexdir/luasocket/src/liblua53socket_a-udp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-udp.o `test -f 'luatexdir/luasocket/src/udp.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/udp.c - -luatexdir/luasocket/src/liblua53socket_a-udp.obj: luatexdir/luasocket/src/udp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/liblua53socket_a-udp.obj -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Tpo -c -o luatexdir/luasocket/src/liblua53socket_a-udp.obj `if test -f 'luatexdir/luasocket/src/udp.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/udp.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/udp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Tpo luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luasocket/src/udp.c' object='luatexdir/luasocket/src/liblua53socket_a-udp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53socket_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luasocket/src/liblua53socket_a-udp.obj `if test -f 'luatexdir/luasocket/src/udp.c'; then $(CYGPATH_W) 'luatexdir/luasocket/src/udp.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luasocket/src/udp.c'; fi` - -luatexdir/lua/liblua53tex_a-lstrlibext.o: luatexdir/lua/lstrlibext.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lstrlibext.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Tpo -c -o luatexdir/lua/liblua53tex_a-lstrlibext.o `test -f 'luatexdir/lua/lstrlibext.c' || echo '$(srcdir)/'`luatexdir/lua/lstrlibext.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lstrlibext.c' object='luatexdir/lua/liblua53tex_a-lstrlibext.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lstrlibext.o `test -f 'luatexdir/lua/lstrlibext.c' || echo '$(srcdir)/'`luatexdir/lua/lstrlibext.c - -luatexdir/lua/liblua53tex_a-lstrlibext.obj: luatexdir/lua/lstrlibext.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lstrlibext.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Tpo -c -o luatexdir/lua/liblua53tex_a-lstrlibext.obj `if test -f 'luatexdir/lua/lstrlibext.c'; then $(CYGPATH_W) 'luatexdir/lua/lstrlibext.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lstrlibext.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lstrlibext.c' object='luatexdir/lua/liblua53tex_a-lstrlibext.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lstrlibext.obj `if test -f 'luatexdir/lua/lstrlibext.c'; then $(CYGPATH_W) 'luatexdir/lua/lstrlibext.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lstrlibext.c'; fi` - -luatexdir/lua/liblua53tex_a-helpers.o: luatexdir/lua/helpers.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-helpers.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Tpo -c -o luatexdir/lua/liblua53tex_a-helpers.o `test -f 'luatexdir/lua/helpers.c' || echo '$(srcdir)/'`luatexdir/lua/helpers.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/helpers.c' object='luatexdir/lua/liblua53tex_a-helpers.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-helpers.o `test -f 'luatexdir/lua/helpers.c' || echo '$(srcdir)/'`luatexdir/lua/helpers.c - -luatexdir/lua/liblua53tex_a-helpers.obj: luatexdir/lua/helpers.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-helpers.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Tpo -c -o luatexdir/lua/liblua53tex_a-helpers.obj `if test -f 'luatexdir/lua/helpers.c'; then $(CYGPATH_W) 'luatexdir/lua/helpers.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/helpers.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/helpers.c' object='luatexdir/lua/liblua53tex_a-helpers.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-helpers.obj `if test -f 'luatexdir/lua/helpers.c'; then $(CYGPATH_W) 'luatexdir/lua/helpers.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/helpers.c'; fi` - -luatexdir/lua/liblua53tex_a-texluac.o: luatexdir/lua/texluac.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-texluac.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Tpo -c -o luatexdir/lua/liblua53tex_a-texluac.o `test -f 'luatexdir/lua/texluac.c' || echo '$(srcdir)/'`luatexdir/lua/texluac.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/texluac.c' object='luatexdir/lua/liblua53tex_a-texluac.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-texluac.o `test -f 'luatexdir/lua/texluac.c' || echo '$(srcdir)/'`luatexdir/lua/texluac.c - -luatexdir/lua/liblua53tex_a-texluac.obj: luatexdir/lua/texluac.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-texluac.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Tpo -c -o luatexdir/lua/liblua53tex_a-texluac.obj `if test -f 'luatexdir/lua/texluac.c'; then $(CYGPATH_W) 'luatexdir/lua/texluac.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/texluac.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/texluac.c' object='luatexdir/lua/liblua53tex_a-texluac.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-texluac.obj `if test -f 'luatexdir/lua/texluac.c'; then $(CYGPATH_W) 'luatexdir/lua/texluac.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/texluac.c'; fi` - -luatexdir/luafontloader/src/liblua53tex_a-ffdummies.o: luatexdir/luafontloader/src/ffdummies.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/src/liblua53tex_a-ffdummies.o -MD -MP -MF luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Tpo -c -o luatexdir/luafontloader/src/liblua53tex_a-ffdummies.o `test -f 'luatexdir/luafontloader/src/ffdummies.c' || echo '$(srcdir)/'`luatexdir/luafontloader/src/ffdummies.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Tpo luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/src/ffdummies.c' object='luatexdir/luafontloader/src/liblua53tex_a-ffdummies.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/src/liblua53tex_a-ffdummies.o `test -f 'luatexdir/luafontloader/src/ffdummies.c' || echo '$(srcdir)/'`luatexdir/luafontloader/src/ffdummies.c - -luatexdir/luafontloader/src/liblua53tex_a-ffdummies.obj: luatexdir/luafontloader/src/ffdummies.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/src/liblua53tex_a-ffdummies.obj -MD -MP -MF luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Tpo -c -o luatexdir/luafontloader/src/liblua53tex_a-ffdummies.obj `if test -f 'luatexdir/luafontloader/src/ffdummies.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/src/ffdummies.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/src/ffdummies.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Tpo luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/src/ffdummies.c' object='luatexdir/luafontloader/src/liblua53tex_a-ffdummies.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/src/liblua53tex_a-ffdummies.obj `if test -f 'luatexdir/luafontloader/src/ffdummies.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/src/ffdummies.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/src/ffdummies.c'; fi` - -luatexdir/luafontloader/src/liblua53tex_a-luafflib.o: luatexdir/luafontloader/src/luafflib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/src/liblua53tex_a-luafflib.o -MD -MP -MF luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Tpo -c -o luatexdir/luafontloader/src/liblua53tex_a-luafflib.o `test -f 'luatexdir/luafontloader/src/luafflib.c' || echo '$(srcdir)/'`luatexdir/luafontloader/src/luafflib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Tpo luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/src/luafflib.c' object='luatexdir/luafontloader/src/liblua53tex_a-luafflib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/src/liblua53tex_a-luafflib.o `test -f 'luatexdir/luafontloader/src/luafflib.c' || echo '$(srcdir)/'`luatexdir/luafontloader/src/luafflib.c - -luatexdir/luafontloader/src/liblua53tex_a-luafflib.obj: luatexdir/luafontloader/src/luafflib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/src/liblua53tex_a-luafflib.obj -MD -MP -MF luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Tpo -c -o luatexdir/luafontloader/src/liblua53tex_a-luafflib.obj `if test -f 'luatexdir/luafontloader/src/luafflib.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/src/luafflib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/src/luafflib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Tpo luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/src/luafflib.c' object='luatexdir/luafontloader/src/liblua53tex_a-luafflib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/src/liblua53tex_a-luafflib.obj `if test -f 'luatexdir/luafontloader/src/luafflib.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/src/luafflib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/src/luafflib.c'; fi` - -luatexdir/dvi/liblua53tex_a-dvigen.o: luatexdir/dvi/dvigen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/dvi/liblua53tex_a-dvigen.o -MD -MP -MF luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Tpo -c -o luatexdir/dvi/liblua53tex_a-dvigen.o `test -f 'luatexdir/dvi/dvigen.c' || echo '$(srcdir)/'`luatexdir/dvi/dvigen.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Tpo luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/dvi/dvigen.c' object='luatexdir/dvi/liblua53tex_a-dvigen.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/dvi/liblua53tex_a-dvigen.o `test -f 'luatexdir/dvi/dvigen.c' || echo '$(srcdir)/'`luatexdir/dvi/dvigen.c - -luatexdir/dvi/liblua53tex_a-dvigen.obj: luatexdir/dvi/dvigen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/dvi/liblua53tex_a-dvigen.obj -MD -MP -MF luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Tpo -c -o luatexdir/dvi/liblua53tex_a-dvigen.obj `if test -f 'luatexdir/dvi/dvigen.c'; then $(CYGPATH_W) 'luatexdir/dvi/dvigen.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/dvi/dvigen.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Tpo luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/dvi/dvigen.c' object='luatexdir/dvi/liblua53tex_a-dvigen.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/dvi/liblua53tex_a-dvigen.obj `if test -f 'luatexdir/dvi/dvigen.c'; then $(CYGPATH_W) 'luatexdir/dvi/dvigen.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/dvi/dvigen.c'; fi` - -luatexdir/font/liblua53tex_a-dofont.o: luatexdir/font/dofont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-dofont.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Tpo -c -o luatexdir/font/liblua53tex_a-dofont.o `test -f 'luatexdir/font/dofont.c' || echo '$(srcdir)/'`luatexdir/font/dofont.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/dofont.c' object='luatexdir/font/liblua53tex_a-dofont.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-dofont.o `test -f 'luatexdir/font/dofont.c' || echo '$(srcdir)/'`luatexdir/font/dofont.c - -luatexdir/font/liblua53tex_a-dofont.obj: luatexdir/font/dofont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-dofont.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Tpo -c -o luatexdir/font/liblua53tex_a-dofont.obj `if test -f 'luatexdir/font/dofont.c'; then $(CYGPATH_W) 'luatexdir/font/dofont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/dofont.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/dofont.c' object='luatexdir/font/liblua53tex_a-dofont.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-dofont.obj `if test -f 'luatexdir/font/dofont.c'; then $(CYGPATH_W) 'luatexdir/font/dofont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/dofont.c'; fi` - -luatexdir/font/liblua53tex_a-luafont.o: luatexdir/font/luafont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-luafont.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Tpo -c -o luatexdir/font/liblua53tex_a-luafont.o `test -f 'luatexdir/font/luafont.c' || echo '$(srcdir)/'`luatexdir/font/luafont.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/luafont.c' object='luatexdir/font/liblua53tex_a-luafont.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-luafont.o `test -f 'luatexdir/font/luafont.c' || echo '$(srcdir)/'`luatexdir/font/luafont.c - -luatexdir/font/liblua53tex_a-luafont.obj: luatexdir/font/luafont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-luafont.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Tpo -c -o luatexdir/font/liblua53tex_a-luafont.obj `if test -f 'luatexdir/font/luafont.c'; then $(CYGPATH_W) 'luatexdir/font/luafont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/luafont.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/luafont.c' object='luatexdir/font/liblua53tex_a-luafont.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-luafont.obj `if test -f 'luatexdir/font/luafont.c'; then $(CYGPATH_W) 'luatexdir/font/luafont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/luafont.c'; fi` - -luatexdir/font/liblua53tex_a-mapfile.o: luatexdir/font/mapfile.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-mapfile.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Tpo -c -o luatexdir/font/liblua53tex_a-mapfile.o `test -f 'luatexdir/font/mapfile.c' || echo '$(srcdir)/'`luatexdir/font/mapfile.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/mapfile.c' object='luatexdir/font/liblua53tex_a-mapfile.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-mapfile.o `test -f 'luatexdir/font/mapfile.c' || echo '$(srcdir)/'`luatexdir/font/mapfile.c - -luatexdir/font/liblua53tex_a-mapfile.obj: luatexdir/font/mapfile.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-mapfile.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Tpo -c -o luatexdir/font/liblua53tex_a-mapfile.obj `if test -f 'luatexdir/font/mapfile.c'; then $(CYGPATH_W) 'luatexdir/font/mapfile.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/mapfile.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/mapfile.c' object='luatexdir/font/liblua53tex_a-mapfile.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-mapfile.obj `if test -f 'luatexdir/font/mapfile.c'; then $(CYGPATH_W) 'luatexdir/font/mapfile.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/mapfile.c'; fi` - -luatexdir/font/liblua53tex_a-pkin.o: luatexdir/font/pkin.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-pkin.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Tpo -c -o luatexdir/font/liblua53tex_a-pkin.o `test -f 'luatexdir/font/pkin.c' || echo '$(srcdir)/'`luatexdir/font/pkin.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/pkin.c' object='luatexdir/font/liblua53tex_a-pkin.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-pkin.o `test -f 'luatexdir/font/pkin.c' || echo '$(srcdir)/'`luatexdir/font/pkin.c - -luatexdir/font/liblua53tex_a-pkin.obj: luatexdir/font/pkin.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-pkin.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Tpo -c -o luatexdir/font/liblua53tex_a-pkin.obj `if test -f 'luatexdir/font/pkin.c'; then $(CYGPATH_W) 'luatexdir/font/pkin.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/pkin.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/pkin.c' object='luatexdir/font/liblua53tex_a-pkin.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-pkin.obj `if test -f 'luatexdir/font/pkin.c'; then $(CYGPATH_W) 'luatexdir/font/pkin.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/pkin.c'; fi` - -luatexdir/font/liblua53tex_a-sfnt.o: luatexdir/font/sfnt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-sfnt.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Tpo -c -o luatexdir/font/liblua53tex_a-sfnt.o `test -f 'luatexdir/font/sfnt.c' || echo '$(srcdir)/'`luatexdir/font/sfnt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/sfnt.c' object='luatexdir/font/liblua53tex_a-sfnt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-sfnt.o `test -f 'luatexdir/font/sfnt.c' || echo '$(srcdir)/'`luatexdir/font/sfnt.c - -luatexdir/font/liblua53tex_a-sfnt.obj: luatexdir/font/sfnt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-sfnt.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Tpo -c -o luatexdir/font/liblua53tex_a-sfnt.obj `if test -f 'luatexdir/font/sfnt.c'; then $(CYGPATH_W) 'luatexdir/font/sfnt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/sfnt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/sfnt.c' object='luatexdir/font/liblua53tex_a-sfnt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-sfnt.obj `if test -f 'luatexdir/font/sfnt.c'; then $(CYGPATH_W) 'luatexdir/font/sfnt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/sfnt.c'; fi` - -luatexdir/font/liblua53tex_a-texfont.o: luatexdir/font/texfont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-texfont.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Tpo -c -o luatexdir/font/liblua53tex_a-texfont.o `test -f 'luatexdir/font/texfont.c' || echo '$(srcdir)/'`luatexdir/font/texfont.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/texfont.c' object='luatexdir/font/liblua53tex_a-texfont.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-texfont.o `test -f 'luatexdir/font/texfont.c' || echo '$(srcdir)/'`luatexdir/font/texfont.c - -luatexdir/font/liblua53tex_a-texfont.obj: luatexdir/font/texfont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-texfont.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Tpo -c -o luatexdir/font/liblua53tex_a-texfont.obj `if test -f 'luatexdir/font/texfont.c'; then $(CYGPATH_W) 'luatexdir/font/texfont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/texfont.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/texfont.c' object='luatexdir/font/liblua53tex_a-texfont.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-texfont.obj `if test -f 'luatexdir/font/texfont.c'; then $(CYGPATH_W) 'luatexdir/font/texfont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/texfont.c'; fi` - -luatexdir/font/liblua53tex_a-tfmofm.o: luatexdir/font/tfmofm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-tfmofm.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Tpo -c -o luatexdir/font/liblua53tex_a-tfmofm.o `test -f 'luatexdir/font/tfmofm.c' || echo '$(srcdir)/'`luatexdir/font/tfmofm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/tfmofm.c' object='luatexdir/font/liblua53tex_a-tfmofm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-tfmofm.o `test -f 'luatexdir/font/tfmofm.c' || echo '$(srcdir)/'`luatexdir/font/tfmofm.c - -luatexdir/font/liblua53tex_a-tfmofm.obj: luatexdir/font/tfmofm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-tfmofm.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Tpo -c -o luatexdir/font/liblua53tex_a-tfmofm.obj `if test -f 'luatexdir/font/tfmofm.c'; then $(CYGPATH_W) 'luatexdir/font/tfmofm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/tfmofm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/tfmofm.c' object='luatexdir/font/liblua53tex_a-tfmofm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-tfmofm.obj `if test -f 'luatexdir/font/tfmofm.c'; then $(CYGPATH_W) 'luatexdir/font/tfmofm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/tfmofm.c'; fi` - -luatexdir/font/liblua53tex_a-tounicode.o: luatexdir/font/tounicode.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-tounicode.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Tpo -c -o luatexdir/font/liblua53tex_a-tounicode.o `test -f 'luatexdir/font/tounicode.c' || echo '$(srcdir)/'`luatexdir/font/tounicode.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/tounicode.c' object='luatexdir/font/liblua53tex_a-tounicode.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-tounicode.o `test -f 'luatexdir/font/tounicode.c' || echo '$(srcdir)/'`luatexdir/font/tounicode.c - -luatexdir/font/liblua53tex_a-tounicode.obj: luatexdir/font/tounicode.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-tounicode.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Tpo -c -o luatexdir/font/liblua53tex_a-tounicode.obj `if test -f 'luatexdir/font/tounicode.c'; then $(CYGPATH_W) 'luatexdir/font/tounicode.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/tounicode.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/tounicode.c' object='luatexdir/font/liblua53tex_a-tounicode.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-tounicode.obj `if test -f 'luatexdir/font/tounicode.c'; then $(CYGPATH_W) 'luatexdir/font/tounicode.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/tounicode.c'; fi` - -luatexdir/font/liblua53tex_a-tt_glyf.o: luatexdir/font/tt_glyf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-tt_glyf.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Tpo -c -o luatexdir/font/liblua53tex_a-tt_glyf.o `test -f 'luatexdir/font/tt_glyf.c' || echo '$(srcdir)/'`luatexdir/font/tt_glyf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/tt_glyf.c' object='luatexdir/font/liblua53tex_a-tt_glyf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-tt_glyf.o `test -f 'luatexdir/font/tt_glyf.c' || echo '$(srcdir)/'`luatexdir/font/tt_glyf.c - -luatexdir/font/liblua53tex_a-tt_glyf.obj: luatexdir/font/tt_glyf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-tt_glyf.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Tpo -c -o luatexdir/font/liblua53tex_a-tt_glyf.obj `if test -f 'luatexdir/font/tt_glyf.c'; then $(CYGPATH_W) 'luatexdir/font/tt_glyf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/tt_glyf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/tt_glyf.c' object='luatexdir/font/liblua53tex_a-tt_glyf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-tt_glyf.obj `if test -f 'luatexdir/font/tt_glyf.c'; then $(CYGPATH_W) 'luatexdir/font/tt_glyf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/tt_glyf.c'; fi` - -luatexdir/font/liblua53tex_a-tt_table.o: luatexdir/font/tt_table.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-tt_table.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Tpo -c -o luatexdir/font/liblua53tex_a-tt_table.o `test -f 'luatexdir/font/tt_table.c' || echo '$(srcdir)/'`luatexdir/font/tt_table.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/tt_table.c' object='luatexdir/font/liblua53tex_a-tt_table.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-tt_table.o `test -f 'luatexdir/font/tt_table.c' || echo '$(srcdir)/'`luatexdir/font/tt_table.c - -luatexdir/font/liblua53tex_a-tt_table.obj: luatexdir/font/tt_table.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-tt_table.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Tpo -c -o luatexdir/font/liblua53tex_a-tt_table.obj `if test -f 'luatexdir/font/tt_table.c'; then $(CYGPATH_W) 'luatexdir/font/tt_table.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/tt_table.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/tt_table.c' object='luatexdir/font/liblua53tex_a-tt_table.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-tt_table.obj `if test -f 'luatexdir/font/tt_table.c'; then $(CYGPATH_W) 'luatexdir/font/tt_table.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/tt_table.c'; fi` - -luatexdir/font/liblua53tex_a-vfovf.o: luatexdir/font/vfovf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-vfovf.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Tpo -c -o luatexdir/font/liblua53tex_a-vfovf.o `test -f 'luatexdir/font/vfovf.c' || echo '$(srcdir)/'`luatexdir/font/vfovf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/vfovf.c' object='luatexdir/font/liblua53tex_a-vfovf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-vfovf.o `test -f 'luatexdir/font/vfovf.c' || echo '$(srcdir)/'`luatexdir/font/vfovf.c - -luatexdir/font/liblua53tex_a-vfovf.obj: luatexdir/font/vfovf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-vfovf.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Tpo -c -o luatexdir/font/liblua53tex_a-vfovf.obj `if test -f 'luatexdir/font/vfovf.c'; then $(CYGPATH_W) 'luatexdir/font/vfovf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/vfovf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/vfovf.c' object='luatexdir/font/liblua53tex_a-vfovf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-vfovf.obj `if test -f 'luatexdir/font/vfovf.c'; then $(CYGPATH_W) 'luatexdir/font/vfovf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/vfovf.c'; fi` - -luatexdir/font/liblua53tex_a-vfpacket.o: luatexdir/font/vfpacket.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-vfpacket.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Tpo -c -o luatexdir/font/liblua53tex_a-vfpacket.o `test -f 'luatexdir/font/vfpacket.c' || echo '$(srcdir)/'`luatexdir/font/vfpacket.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/vfpacket.c' object='luatexdir/font/liblua53tex_a-vfpacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-vfpacket.o `test -f 'luatexdir/font/vfpacket.c' || echo '$(srcdir)/'`luatexdir/font/vfpacket.c - -luatexdir/font/liblua53tex_a-vfpacket.obj: luatexdir/font/vfpacket.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-vfpacket.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Tpo -c -o luatexdir/font/liblua53tex_a-vfpacket.obj `if test -f 'luatexdir/font/vfpacket.c'; then $(CYGPATH_W) 'luatexdir/font/vfpacket.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/vfpacket.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/vfpacket.c' object='luatexdir/font/liblua53tex_a-vfpacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-vfpacket.obj `if test -f 'luatexdir/font/vfpacket.c'; then $(CYGPATH_W) 'luatexdir/font/vfpacket.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/vfpacket.c'; fi` - -luatexdir/font/liblua53tex_a-writecff.o: luatexdir/font/writecff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writecff.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Tpo -c -o luatexdir/font/liblua53tex_a-writecff.o `test -f 'luatexdir/font/writecff.c' || echo '$(srcdir)/'`luatexdir/font/writecff.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writecff.c' object='luatexdir/font/liblua53tex_a-writecff.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writecff.o `test -f 'luatexdir/font/writecff.c' || echo '$(srcdir)/'`luatexdir/font/writecff.c - -luatexdir/font/liblua53tex_a-writecff.obj: luatexdir/font/writecff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writecff.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Tpo -c -o luatexdir/font/liblua53tex_a-writecff.obj `if test -f 'luatexdir/font/writecff.c'; then $(CYGPATH_W) 'luatexdir/font/writecff.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writecff.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writecff.c' object='luatexdir/font/liblua53tex_a-writecff.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writecff.obj `if test -f 'luatexdir/font/writecff.c'; then $(CYGPATH_W) 'luatexdir/font/writecff.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writecff.c'; fi` - -luatexdir/font/liblua53tex_a-writeenc.o: luatexdir/font/writeenc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writeenc.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Tpo -c -o luatexdir/font/liblua53tex_a-writeenc.o `test -f 'luatexdir/font/writeenc.c' || echo '$(srcdir)/'`luatexdir/font/writeenc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writeenc.c' object='luatexdir/font/liblua53tex_a-writeenc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writeenc.o `test -f 'luatexdir/font/writeenc.c' || echo '$(srcdir)/'`luatexdir/font/writeenc.c - -luatexdir/font/liblua53tex_a-writeenc.obj: luatexdir/font/writeenc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writeenc.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Tpo -c -o luatexdir/font/liblua53tex_a-writeenc.obj `if test -f 'luatexdir/font/writeenc.c'; then $(CYGPATH_W) 'luatexdir/font/writeenc.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writeenc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writeenc.c' object='luatexdir/font/liblua53tex_a-writeenc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writeenc.obj `if test -f 'luatexdir/font/writeenc.c'; then $(CYGPATH_W) 'luatexdir/font/writeenc.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writeenc.c'; fi` - -luatexdir/font/liblua53tex_a-writefont.o: luatexdir/font/writefont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writefont.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Tpo -c -o luatexdir/font/liblua53tex_a-writefont.o `test -f 'luatexdir/font/writefont.c' || echo '$(srcdir)/'`luatexdir/font/writefont.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writefont.c' object='luatexdir/font/liblua53tex_a-writefont.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writefont.o `test -f 'luatexdir/font/writefont.c' || echo '$(srcdir)/'`luatexdir/font/writefont.c - -luatexdir/font/liblua53tex_a-writefont.obj: luatexdir/font/writefont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writefont.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Tpo -c -o luatexdir/font/liblua53tex_a-writefont.obj `if test -f 'luatexdir/font/writefont.c'; then $(CYGPATH_W) 'luatexdir/font/writefont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writefont.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writefont.c' object='luatexdir/font/liblua53tex_a-writefont.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writefont.obj `if test -f 'luatexdir/font/writefont.c'; then $(CYGPATH_W) 'luatexdir/font/writefont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writefont.c'; fi` - -luatexdir/font/liblua53tex_a-writet1.o: luatexdir/font/writet1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writet1.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Tpo -c -o luatexdir/font/liblua53tex_a-writet1.o `test -f 'luatexdir/font/writet1.c' || echo '$(srcdir)/'`luatexdir/font/writet1.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writet1.c' object='luatexdir/font/liblua53tex_a-writet1.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writet1.o `test -f 'luatexdir/font/writet1.c' || echo '$(srcdir)/'`luatexdir/font/writet1.c - -luatexdir/font/liblua53tex_a-writet1.obj: luatexdir/font/writet1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writet1.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Tpo -c -o luatexdir/font/liblua53tex_a-writet1.obj `if test -f 'luatexdir/font/writet1.c'; then $(CYGPATH_W) 'luatexdir/font/writet1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writet1.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writet1.c' object='luatexdir/font/liblua53tex_a-writet1.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writet1.obj `if test -f 'luatexdir/font/writet1.c'; then $(CYGPATH_W) 'luatexdir/font/writet1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writet1.c'; fi` - -luatexdir/font/liblua53tex_a-writet3.o: luatexdir/font/writet3.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writet3.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Tpo -c -o luatexdir/font/liblua53tex_a-writet3.o `test -f 'luatexdir/font/writet3.c' || echo '$(srcdir)/'`luatexdir/font/writet3.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writet3.c' object='luatexdir/font/liblua53tex_a-writet3.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writet3.o `test -f 'luatexdir/font/writet3.c' || echo '$(srcdir)/'`luatexdir/font/writet3.c - -luatexdir/font/liblua53tex_a-writet3.obj: luatexdir/font/writet3.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writet3.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Tpo -c -o luatexdir/font/liblua53tex_a-writet3.obj `if test -f 'luatexdir/font/writet3.c'; then $(CYGPATH_W) 'luatexdir/font/writet3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writet3.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writet3.c' object='luatexdir/font/liblua53tex_a-writet3.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writet3.obj `if test -f 'luatexdir/font/writet3.c'; then $(CYGPATH_W) 'luatexdir/font/writet3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writet3.c'; fi` - -luatexdir/font/liblua53tex_a-writettf.o: luatexdir/font/writettf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writettf.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Tpo -c -o luatexdir/font/liblua53tex_a-writettf.o `test -f 'luatexdir/font/writettf.c' || echo '$(srcdir)/'`luatexdir/font/writettf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writettf.c' object='luatexdir/font/liblua53tex_a-writettf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writettf.o `test -f 'luatexdir/font/writettf.c' || echo '$(srcdir)/'`luatexdir/font/writettf.c - -luatexdir/font/liblua53tex_a-writettf.obj: luatexdir/font/writettf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writettf.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Tpo -c -o luatexdir/font/liblua53tex_a-writettf.obj `if test -f 'luatexdir/font/writettf.c'; then $(CYGPATH_W) 'luatexdir/font/writettf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writettf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writettf.c' object='luatexdir/font/liblua53tex_a-writettf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writettf.obj `if test -f 'luatexdir/font/writettf.c'; then $(CYGPATH_W) 'luatexdir/font/writettf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writettf.c'; fi` - -luatexdir/font/liblua53tex_a-writetype0.o: luatexdir/font/writetype0.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writetype0.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Tpo -c -o luatexdir/font/liblua53tex_a-writetype0.o `test -f 'luatexdir/font/writetype0.c' || echo '$(srcdir)/'`luatexdir/font/writetype0.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writetype0.c' object='luatexdir/font/liblua53tex_a-writetype0.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writetype0.o `test -f 'luatexdir/font/writetype0.c' || echo '$(srcdir)/'`luatexdir/font/writetype0.c - -luatexdir/font/liblua53tex_a-writetype0.obj: luatexdir/font/writetype0.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writetype0.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Tpo -c -o luatexdir/font/liblua53tex_a-writetype0.obj `if test -f 'luatexdir/font/writetype0.c'; then $(CYGPATH_W) 'luatexdir/font/writetype0.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writetype0.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writetype0.c' object='luatexdir/font/liblua53tex_a-writetype0.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writetype0.obj `if test -f 'luatexdir/font/writetype0.c'; then $(CYGPATH_W) 'luatexdir/font/writetype0.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writetype0.c'; fi` - -luatexdir/font/liblua53tex_a-writetype2.o: luatexdir/font/writetype2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writetype2.o -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Tpo -c -o luatexdir/font/liblua53tex_a-writetype2.o `test -f 'luatexdir/font/writetype2.c' || echo '$(srcdir)/'`luatexdir/font/writetype2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writetype2.c' object='luatexdir/font/liblua53tex_a-writetype2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writetype2.o `test -f 'luatexdir/font/writetype2.c' || echo '$(srcdir)/'`luatexdir/font/writetype2.c - -luatexdir/font/liblua53tex_a-writetype2.obj: luatexdir/font/writetype2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/font/liblua53tex_a-writetype2.obj -MD -MP -MF luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Tpo -c -o luatexdir/font/liblua53tex_a-writetype2.obj `if test -f 'luatexdir/font/writetype2.c'; then $(CYGPATH_W) 'luatexdir/font/writetype2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writetype2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Tpo luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/font/writetype2.c' object='luatexdir/font/liblua53tex_a-writetype2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/font/liblua53tex_a-writetype2.obj `if test -f 'luatexdir/font/writetype2.c'; then $(CYGPATH_W) 'luatexdir/font/writetype2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/font/writetype2.c'; fi` - -luatexdir/image/liblua53tex_a-pdftoepdf.o: luatexdir/image/pdftoepdf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-pdftoepdf.o -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Tpo -c -o luatexdir/image/liblua53tex_a-pdftoepdf.o `test -f 'luatexdir/image/pdftoepdf.c' || echo '$(srcdir)/'`luatexdir/image/pdftoepdf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/pdftoepdf.c' object='luatexdir/image/liblua53tex_a-pdftoepdf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-pdftoepdf.o `test -f 'luatexdir/image/pdftoepdf.c' || echo '$(srcdir)/'`luatexdir/image/pdftoepdf.c - -luatexdir/image/liblua53tex_a-pdftoepdf.obj: luatexdir/image/pdftoepdf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-pdftoepdf.obj -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Tpo -c -o luatexdir/image/liblua53tex_a-pdftoepdf.obj `if test -f 'luatexdir/image/pdftoepdf.c'; then $(CYGPATH_W) 'luatexdir/image/pdftoepdf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/pdftoepdf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/pdftoepdf.c' object='luatexdir/image/liblua53tex_a-pdftoepdf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-pdftoepdf.obj `if test -f 'luatexdir/image/pdftoepdf.c'; then $(CYGPATH_W) 'luatexdir/image/pdftoepdf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/pdftoepdf.c'; fi` - -luatexdir/image/liblua53tex_a-writeimg.o: luatexdir/image/writeimg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writeimg.o -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Tpo -c -o luatexdir/image/liblua53tex_a-writeimg.o `test -f 'luatexdir/image/writeimg.c' || echo '$(srcdir)/'`luatexdir/image/writeimg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writeimg.c' object='luatexdir/image/liblua53tex_a-writeimg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writeimg.o `test -f 'luatexdir/image/writeimg.c' || echo '$(srcdir)/'`luatexdir/image/writeimg.c - -luatexdir/image/liblua53tex_a-writeimg.obj: luatexdir/image/writeimg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writeimg.obj -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Tpo -c -o luatexdir/image/liblua53tex_a-writeimg.obj `if test -f 'luatexdir/image/writeimg.c'; then $(CYGPATH_W) 'luatexdir/image/writeimg.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writeimg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writeimg.c' object='luatexdir/image/liblua53tex_a-writeimg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writeimg.obj `if test -f 'luatexdir/image/writeimg.c'; then $(CYGPATH_W) 'luatexdir/image/writeimg.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writeimg.c'; fi` - -luatexdir/image/liblua53tex_a-writejbig2.o: luatexdir/image/writejbig2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writejbig2.o -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Tpo -c -o luatexdir/image/liblua53tex_a-writejbig2.o `test -f 'luatexdir/image/writejbig2.c' || echo '$(srcdir)/'`luatexdir/image/writejbig2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writejbig2.c' object='luatexdir/image/liblua53tex_a-writejbig2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writejbig2.o `test -f 'luatexdir/image/writejbig2.c' || echo '$(srcdir)/'`luatexdir/image/writejbig2.c - -luatexdir/image/liblua53tex_a-writejbig2.obj: luatexdir/image/writejbig2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writejbig2.obj -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Tpo -c -o luatexdir/image/liblua53tex_a-writejbig2.obj `if test -f 'luatexdir/image/writejbig2.c'; then $(CYGPATH_W) 'luatexdir/image/writejbig2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writejbig2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writejbig2.c' object='luatexdir/image/liblua53tex_a-writejbig2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writejbig2.obj `if test -f 'luatexdir/image/writejbig2.c'; then $(CYGPATH_W) 'luatexdir/image/writejbig2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writejbig2.c'; fi` - -luatexdir/image/liblua53tex_a-writejp2.o: luatexdir/image/writejp2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writejp2.o -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Tpo -c -o luatexdir/image/liblua53tex_a-writejp2.o `test -f 'luatexdir/image/writejp2.c' || echo '$(srcdir)/'`luatexdir/image/writejp2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writejp2.c' object='luatexdir/image/liblua53tex_a-writejp2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writejp2.o `test -f 'luatexdir/image/writejp2.c' || echo '$(srcdir)/'`luatexdir/image/writejp2.c - -luatexdir/image/liblua53tex_a-writejp2.obj: luatexdir/image/writejp2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writejp2.obj -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Tpo -c -o luatexdir/image/liblua53tex_a-writejp2.obj `if test -f 'luatexdir/image/writejp2.c'; then $(CYGPATH_W) 'luatexdir/image/writejp2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writejp2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writejp2.c' object='luatexdir/image/liblua53tex_a-writejp2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writejp2.obj `if test -f 'luatexdir/image/writejp2.c'; then $(CYGPATH_W) 'luatexdir/image/writejp2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writejp2.c'; fi` - -luatexdir/image/liblua53tex_a-writejpg.o: luatexdir/image/writejpg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writejpg.o -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Tpo -c -o luatexdir/image/liblua53tex_a-writejpg.o `test -f 'luatexdir/image/writejpg.c' || echo '$(srcdir)/'`luatexdir/image/writejpg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writejpg.c' object='luatexdir/image/liblua53tex_a-writejpg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writejpg.o `test -f 'luatexdir/image/writejpg.c' || echo '$(srcdir)/'`luatexdir/image/writejpg.c - -luatexdir/image/liblua53tex_a-writejpg.obj: luatexdir/image/writejpg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writejpg.obj -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Tpo -c -o luatexdir/image/liblua53tex_a-writejpg.obj `if test -f 'luatexdir/image/writejpg.c'; then $(CYGPATH_W) 'luatexdir/image/writejpg.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writejpg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writejpg.c' object='luatexdir/image/liblua53tex_a-writejpg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writejpg.obj `if test -f 'luatexdir/image/writejpg.c'; then $(CYGPATH_W) 'luatexdir/image/writejpg.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writejpg.c'; fi` - -luatexdir/image/liblua53tex_a-writepng.o: luatexdir/image/writepng.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writepng.o -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Tpo -c -o luatexdir/image/liblua53tex_a-writepng.o `test -f 'luatexdir/image/writepng.c' || echo '$(srcdir)/'`luatexdir/image/writepng.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writepng.c' object='luatexdir/image/liblua53tex_a-writepng.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writepng.o `test -f 'luatexdir/image/writepng.c' || echo '$(srcdir)/'`luatexdir/image/writepng.c - -luatexdir/image/liblua53tex_a-writepng.obj: luatexdir/image/writepng.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/image/liblua53tex_a-writepng.obj -MD -MP -MF luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Tpo -c -o luatexdir/image/liblua53tex_a-writepng.obj `if test -f 'luatexdir/image/writepng.c'; then $(CYGPATH_W) 'luatexdir/image/writepng.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writepng.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Tpo luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/image/writepng.c' object='luatexdir/image/liblua53tex_a-writepng.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/image/liblua53tex_a-writepng.obj `if test -f 'luatexdir/image/writepng.c'; then $(CYGPATH_W) 'luatexdir/image/writepng.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/image/writepng.c'; fi` - -luatexdir/lang/liblua53tex_a-hnjalloc.o: luatexdir/lang/hnjalloc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lang/liblua53tex_a-hnjalloc.o -MD -MP -MF luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Tpo -c -o luatexdir/lang/liblua53tex_a-hnjalloc.o `test -f 'luatexdir/lang/hnjalloc.c' || echo '$(srcdir)/'`luatexdir/lang/hnjalloc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Tpo luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lang/hnjalloc.c' object='luatexdir/lang/liblua53tex_a-hnjalloc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lang/liblua53tex_a-hnjalloc.o `test -f 'luatexdir/lang/hnjalloc.c' || echo '$(srcdir)/'`luatexdir/lang/hnjalloc.c - -luatexdir/lang/liblua53tex_a-hnjalloc.obj: luatexdir/lang/hnjalloc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lang/liblua53tex_a-hnjalloc.obj -MD -MP -MF luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Tpo -c -o luatexdir/lang/liblua53tex_a-hnjalloc.obj `if test -f 'luatexdir/lang/hnjalloc.c'; then $(CYGPATH_W) 'luatexdir/lang/hnjalloc.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lang/hnjalloc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Tpo luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lang/hnjalloc.c' object='luatexdir/lang/liblua53tex_a-hnjalloc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lang/liblua53tex_a-hnjalloc.obj `if test -f 'luatexdir/lang/hnjalloc.c'; then $(CYGPATH_W) 'luatexdir/lang/hnjalloc.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lang/hnjalloc.c'; fi` - -luatexdir/lang/liblua53tex_a-hyphen.o: luatexdir/lang/hyphen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lang/liblua53tex_a-hyphen.o -MD -MP -MF luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Tpo -c -o luatexdir/lang/liblua53tex_a-hyphen.o `test -f 'luatexdir/lang/hyphen.c' || echo '$(srcdir)/'`luatexdir/lang/hyphen.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Tpo luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lang/hyphen.c' object='luatexdir/lang/liblua53tex_a-hyphen.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lang/liblua53tex_a-hyphen.o `test -f 'luatexdir/lang/hyphen.c' || echo '$(srcdir)/'`luatexdir/lang/hyphen.c - -luatexdir/lang/liblua53tex_a-hyphen.obj: luatexdir/lang/hyphen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lang/liblua53tex_a-hyphen.obj -MD -MP -MF luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Tpo -c -o luatexdir/lang/liblua53tex_a-hyphen.obj `if test -f 'luatexdir/lang/hyphen.c'; then $(CYGPATH_W) 'luatexdir/lang/hyphen.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lang/hyphen.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Tpo luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lang/hyphen.c' object='luatexdir/lang/liblua53tex_a-hyphen.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lang/liblua53tex_a-hyphen.obj `if test -f 'luatexdir/lang/hyphen.c'; then $(CYGPATH_W) 'luatexdir/lang/hyphen.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lang/hyphen.c'; fi` - -luatexdir/lang/liblua53tex_a-texlang.o: luatexdir/lang/texlang.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lang/liblua53tex_a-texlang.o -MD -MP -MF luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Tpo -c -o luatexdir/lang/liblua53tex_a-texlang.o `test -f 'luatexdir/lang/texlang.c' || echo '$(srcdir)/'`luatexdir/lang/texlang.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Tpo luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lang/texlang.c' object='luatexdir/lang/liblua53tex_a-texlang.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lang/liblua53tex_a-texlang.o `test -f 'luatexdir/lang/texlang.c' || echo '$(srcdir)/'`luatexdir/lang/texlang.c - -luatexdir/lang/liblua53tex_a-texlang.obj: luatexdir/lang/texlang.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lang/liblua53tex_a-texlang.obj -MD -MP -MF luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Tpo -c -o luatexdir/lang/liblua53tex_a-texlang.obj `if test -f 'luatexdir/lang/texlang.c'; then $(CYGPATH_W) 'luatexdir/lang/texlang.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lang/texlang.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Tpo luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lang/texlang.c' object='luatexdir/lang/liblua53tex_a-texlang.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lang/liblua53tex_a-texlang.obj `if test -f 'luatexdir/lang/texlang.c'; then $(CYGPATH_W) 'luatexdir/lang/texlang.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lang/texlang.c'; fi` - -luatexdir/lua/liblua53tex_a-lcallbacklib.o: luatexdir/lua/lcallbacklib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lcallbacklib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Tpo -c -o luatexdir/lua/liblua53tex_a-lcallbacklib.o `test -f 'luatexdir/lua/lcallbacklib.c' || echo '$(srcdir)/'`luatexdir/lua/lcallbacklib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lcallbacklib.c' object='luatexdir/lua/liblua53tex_a-lcallbacklib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lcallbacklib.o `test -f 'luatexdir/lua/lcallbacklib.c' || echo '$(srcdir)/'`luatexdir/lua/lcallbacklib.c - -luatexdir/lua/liblua53tex_a-lcallbacklib.obj: luatexdir/lua/lcallbacklib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lcallbacklib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Tpo -c -o luatexdir/lua/liblua53tex_a-lcallbacklib.obj `if test -f 'luatexdir/lua/lcallbacklib.c'; then $(CYGPATH_W) 'luatexdir/lua/lcallbacklib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lcallbacklib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lcallbacklib.c' object='luatexdir/lua/liblua53tex_a-lcallbacklib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lcallbacklib.obj `if test -f 'luatexdir/lua/lcallbacklib.c'; then $(CYGPATH_W) 'luatexdir/lua/lcallbacklib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lcallbacklib.c'; fi` - -luatexdir/lua/liblua53tex_a-lfontlib.o: luatexdir/lua/lfontlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lfontlib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Tpo -c -o luatexdir/lua/liblua53tex_a-lfontlib.o `test -f 'luatexdir/lua/lfontlib.c' || echo '$(srcdir)/'`luatexdir/lua/lfontlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lfontlib.c' object='luatexdir/lua/liblua53tex_a-lfontlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lfontlib.o `test -f 'luatexdir/lua/lfontlib.c' || echo '$(srcdir)/'`luatexdir/lua/lfontlib.c - -luatexdir/lua/liblua53tex_a-lfontlib.obj: luatexdir/lua/lfontlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lfontlib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Tpo -c -o luatexdir/lua/liblua53tex_a-lfontlib.obj `if test -f 'luatexdir/lua/lfontlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lfontlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lfontlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lfontlib.c' object='luatexdir/lua/liblua53tex_a-lfontlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lfontlib.obj `if test -f 'luatexdir/lua/lfontlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lfontlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lfontlib.c'; fi` - -luatexdir/lua/liblua53tex_a-limglib.o: luatexdir/lua/limglib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-limglib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Tpo -c -o luatexdir/lua/liblua53tex_a-limglib.o `test -f 'luatexdir/lua/limglib.c' || echo '$(srcdir)/'`luatexdir/lua/limglib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/limglib.c' object='luatexdir/lua/liblua53tex_a-limglib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-limglib.o `test -f 'luatexdir/lua/limglib.c' || echo '$(srcdir)/'`luatexdir/lua/limglib.c - -luatexdir/lua/liblua53tex_a-limglib.obj: luatexdir/lua/limglib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-limglib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Tpo -c -o luatexdir/lua/liblua53tex_a-limglib.obj `if test -f 'luatexdir/lua/limglib.c'; then $(CYGPATH_W) 'luatexdir/lua/limglib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/limglib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/limglib.c' object='luatexdir/lua/liblua53tex_a-limglib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-limglib.obj `if test -f 'luatexdir/lua/limglib.c'; then $(CYGPATH_W) 'luatexdir/lua/limglib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/limglib.c'; fi` - -luatexdir/lua/liblua53tex_a-lpdfelib.o: luatexdir/lua/lpdfelib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lpdfelib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Tpo -c -o luatexdir/lua/liblua53tex_a-lpdfelib.o `test -f 'luatexdir/lua/lpdfelib.c' || echo '$(srcdir)/'`luatexdir/lua/lpdfelib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lpdfelib.c' object='luatexdir/lua/liblua53tex_a-lpdfelib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lpdfelib.o `test -f 'luatexdir/lua/lpdfelib.c' || echo '$(srcdir)/'`luatexdir/lua/lpdfelib.c - -luatexdir/lua/liblua53tex_a-lpdfelib.obj: luatexdir/lua/lpdfelib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lpdfelib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Tpo -c -o luatexdir/lua/liblua53tex_a-lpdfelib.obj `if test -f 'luatexdir/lua/lpdfelib.c'; then $(CYGPATH_W) 'luatexdir/lua/lpdfelib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lpdfelib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lpdfelib.c' object='luatexdir/lua/liblua53tex_a-lpdfelib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lpdfelib.obj `if test -f 'luatexdir/lua/lpdfelib.c'; then $(CYGPATH_W) 'luatexdir/lua/lpdfelib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lpdfelib.c'; fi` - -luatexdir/lua/liblua53tex_a-lpdfscannerlib.o: luatexdir/lua/lpdfscannerlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lpdfscannerlib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Tpo -c -o luatexdir/lua/liblua53tex_a-lpdfscannerlib.o `test -f 'luatexdir/lua/lpdfscannerlib.c' || echo '$(srcdir)/'`luatexdir/lua/lpdfscannerlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lpdfscannerlib.c' object='luatexdir/lua/liblua53tex_a-lpdfscannerlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lpdfscannerlib.o `test -f 'luatexdir/lua/lpdfscannerlib.c' || echo '$(srcdir)/'`luatexdir/lua/lpdfscannerlib.c - -luatexdir/lua/liblua53tex_a-lpdfscannerlib.obj: luatexdir/lua/lpdfscannerlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lpdfscannerlib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Tpo -c -o luatexdir/lua/liblua53tex_a-lpdfscannerlib.obj `if test -f 'luatexdir/lua/lpdfscannerlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lpdfscannerlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lpdfscannerlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lpdfscannerlib.c' object='luatexdir/lua/liblua53tex_a-lpdfscannerlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lpdfscannerlib.obj `if test -f 'luatexdir/lua/lpdfscannerlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lpdfscannerlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lpdfscannerlib.c'; fi` - -luatexdir/lua/liblua53tex_a-lkpselib.o: luatexdir/lua/lkpselib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lkpselib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Tpo -c -o luatexdir/lua/liblua53tex_a-lkpselib.o `test -f 'luatexdir/lua/lkpselib.c' || echo '$(srcdir)/'`luatexdir/lua/lkpselib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lkpselib.c' object='luatexdir/lua/liblua53tex_a-lkpselib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lkpselib.o `test -f 'luatexdir/lua/lkpselib.c' || echo '$(srcdir)/'`luatexdir/lua/lkpselib.c - -luatexdir/lua/liblua53tex_a-lkpselib.obj: luatexdir/lua/lkpselib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lkpselib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Tpo -c -o luatexdir/lua/liblua53tex_a-lkpselib.obj `if test -f 'luatexdir/lua/lkpselib.c'; then $(CYGPATH_W) 'luatexdir/lua/lkpselib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lkpselib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lkpselib.c' object='luatexdir/lua/liblua53tex_a-lkpselib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lkpselib.obj `if test -f 'luatexdir/lua/lkpselib.c'; then $(CYGPATH_W) 'luatexdir/lua/lkpselib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lkpselib.c'; fi` - -luatexdir/lua/liblua53tex_a-llanglib.o: luatexdir/lua/llanglib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-llanglib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Tpo -c -o luatexdir/lua/liblua53tex_a-llanglib.o `test -f 'luatexdir/lua/llanglib.c' || echo '$(srcdir)/'`luatexdir/lua/llanglib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/llanglib.c' object='luatexdir/lua/liblua53tex_a-llanglib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-llanglib.o `test -f 'luatexdir/lua/llanglib.c' || echo '$(srcdir)/'`luatexdir/lua/llanglib.c - -luatexdir/lua/liblua53tex_a-llanglib.obj: luatexdir/lua/llanglib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-llanglib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Tpo -c -o luatexdir/lua/liblua53tex_a-llanglib.obj `if test -f 'luatexdir/lua/llanglib.c'; then $(CYGPATH_W) 'luatexdir/lua/llanglib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/llanglib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/llanglib.c' object='luatexdir/lua/liblua53tex_a-llanglib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-llanglib.obj `if test -f 'luatexdir/lua/llanglib.c'; then $(CYGPATH_W) 'luatexdir/lua/llanglib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/llanglib.c'; fi` - -luatexdir/lua/liblua53tex_a-llualib.o: luatexdir/lua/llualib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-llualib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Tpo -c -o luatexdir/lua/liblua53tex_a-llualib.o `test -f 'luatexdir/lua/llualib.c' || echo '$(srcdir)/'`luatexdir/lua/llualib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/llualib.c' object='luatexdir/lua/liblua53tex_a-llualib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-llualib.o `test -f 'luatexdir/lua/llualib.c' || echo '$(srcdir)/'`luatexdir/lua/llualib.c - -luatexdir/lua/liblua53tex_a-llualib.obj: luatexdir/lua/llualib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-llualib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Tpo -c -o luatexdir/lua/liblua53tex_a-llualib.obj `if test -f 'luatexdir/lua/llualib.c'; then $(CYGPATH_W) 'luatexdir/lua/llualib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/llualib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/llualib.c' object='luatexdir/lua/liblua53tex_a-llualib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-llualib.obj `if test -f 'luatexdir/lua/llualib.c'; then $(CYGPATH_W) 'luatexdir/lua/llualib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/llualib.c'; fi` - -luatexdir/lua/liblua53tex_a-lnodelib.o: luatexdir/lua/lnodelib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lnodelib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Tpo -c -o luatexdir/lua/liblua53tex_a-lnodelib.o `test -f 'luatexdir/lua/lnodelib.c' || echo '$(srcdir)/'`luatexdir/lua/lnodelib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lnodelib.c' object='luatexdir/lua/liblua53tex_a-lnodelib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lnodelib.o `test -f 'luatexdir/lua/lnodelib.c' || echo '$(srcdir)/'`luatexdir/lua/lnodelib.c - -luatexdir/lua/liblua53tex_a-lnodelib.obj: luatexdir/lua/lnodelib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lnodelib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Tpo -c -o luatexdir/lua/liblua53tex_a-lnodelib.obj `if test -f 'luatexdir/lua/lnodelib.c'; then $(CYGPATH_W) 'luatexdir/lua/lnodelib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lnodelib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lnodelib.c' object='luatexdir/lua/liblua53tex_a-lnodelib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lnodelib.obj `if test -f 'luatexdir/lua/lnodelib.c'; then $(CYGPATH_W) 'luatexdir/lua/lnodelib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lnodelib.c'; fi` - -luatexdir/lua/liblua53tex_a-liolibext.o: luatexdir/lua/liolibext.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-liolibext.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Tpo -c -o luatexdir/lua/liblua53tex_a-liolibext.o `test -f 'luatexdir/lua/liolibext.c' || echo '$(srcdir)/'`luatexdir/lua/liolibext.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/liolibext.c' object='luatexdir/lua/liblua53tex_a-liolibext.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-liolibext.o `test -f 'luatexdir/lua/liolibext.c' || echo '$(srcdir)/'`luatexdir/lua/liolibext.c - -luatexdir/lua/liblua53tex_a-liolibext.obj: luatexdir/lua/liolibext.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-liolibext.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Tpo -c -o luatexdir/lua/liblua53tex_a-liolibext.obj `if test -f 'luatexdir/lua/liolibext.c'; then $(CYGPATH_W) 'luatexdir/lua/liolibext.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/liolibext.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/liolibext.c' object='luatexdir/lua/liblua53tex_a-liolibext.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-liolibext.obj `if test -f 'luatexdir/lua/liolibext.c'; then $(CYGPATH_W) 'luatexdir/lua/liolibext.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/liolibext.c'; fi` - -luatexdir/lua/liblua53tex_a-loslibext.o: luatexdir/lua/loslibext.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-loslibext.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Tpo -c -o luatexdir/lua/liblua53tex_a-loslibext.o `test -f 'luatexdir/lua/loslibext.c' || echo '$(srcdir)/'`luatexdir/lua/loslibext.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/loslibext.c' object='luatexdir/lua/liblua53tex_a-loslibext.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-loslibext.o `test -f 'luatexdir/lua/loslibext.c' || echo '$(srcdir)/'`luatexdir/lua/loslibext.c - -luatexdir/lua/liblua53tex_a-loslibext.obj: luatexdir/lua/loslibext.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-loslibext.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Tpo -c -o luatexdir/lua/liblua53tex_a-loslibext.obj `if test -f 'luatexdir/lua/loslibext.c'; then $(CYGPATH_W) 'luatexdir/lua/loslibext.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/loslibext.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/loslibext.c' object='luatexdir/lua/liblua53tex_a-loslibext.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-loslibext.obj `if test -f 'luatexdir/lua/loslibext.c'; then $(CYGPATH_W) 'luatexdir/lua/loslibext.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/loslibext.c'; fi` - -luatexdir/lua/liblua53tex_a-lpdflib.o: luatexdir/lua/lpdflib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lpdflib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Tpo -c -o luatexdir/lua/liblua53tex_a-lpdflib.o `test -f 'luatexdir/lua/lpdflib.c' || echo '$(srcdir)/'`luatexdir/lua/lpdflib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lpdflib.c' object='luatexdir/lua/liblua53tex_a-lpdflib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lpdflib.o `test -f 'luatexdir/lua/lpdflib.c' || echo '$(srcdir)/'`luatexdir/lua/lpdflib.c - -luatexdir/lua/liblua53tex_a-lpdflib.obj: luatexdir/lua/lpdflib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lpdflib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Tpo -c -o luatexdir/lua/liblua53tex_a-lpdflib.obj `if test -f 'luatexdir/lua/lpdflib.c'; then $(CYGPATH_W) 'luatexdir/lua/lpdflib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lpdflib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lpdflib.c' object='luatexdir/lua/liblua53tex_a-lpdflib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lpdflib.obj `if test -f 'luatexdir/lua/lpdflib.c'; then $(CYGPATH_W) 'luatexdir/lua/lpdflib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lpdflib.c'; fi` - -luatexdir/lua/liblua53tex_a-lstatslib.o: luatexdir/lua/lstatslib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lstatslib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Tpo -c -o luatexdir/lua/liblua53tex_a-lstatslib.o `test -f 'luatexdir/lua/lstatslib.c' || echo '$(srcdir)/'`luatexdir/lua/lstatslib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lstatslib.c' object='luatexdir/lua/liblua53tex_a-lstatslib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lstatslib.o `test -f 'luatexdir/lua/lstatslib.c' || echo '$(srcdir)/'`luatexdir/lua/lstatslib.c - -luatexdir/lua/liblua53tex_a-lstatslib.obj: luatexdir/lua/lstatslib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lstatslib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Tpo -c -o luatexdir/lua/liblua53tex_a-lstatslib.obj `if test -f 'luatexdir/lua/lstatslib.c'; then $(CYGPATH_W) 'luatexdir/lua/lstatslib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lstatslib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lstatslib.c' object='luatexdir/lua/liblua53tex_a-lstatslib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lstatslib.obj `if test -f 'luatexdir/lua/lstatslib.c'; then $(CYGPATH_W) 'luatexdir/lua/lstatslib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lstatslib.c'; fi` - -luatexdir/lua/liblua53tex_a-ltexiolib.o: luatexdir/lua/ltexiolib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-ltexiolib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Tpo -c -o luatexdir/lua/liblua53tex_a-ltexiolib.o `test -f 'luatexdir/lua/ltexiolib.c' || echo '$(srcdir)/'`luatexdir/lua/ltexiolib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/ltexiolib.c' object='luatexdir/lua/liblua53tex_a-ltexiolib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-ltexiolib.o `test -f 'luatexdir/lua/ltexiolib.c' || echo '$(srcdir)/'`luatexdir/lua/ltexiolib.c - -luatexdir/lua/liblua53tex_a-ltexiolib.obj: luatexdir/lua/ltexiolib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-ltexiolib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Tpo -c -o luatexdir/lua/liblua53tex_a-ltexiolib.obj `if test -f 'luatexdir/lua/ltexiolib.c'; then $(CYGPATH_W) 'luatexdir/lua/ltexiolib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/ltexiolib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/ltexiolib.c' object='luatexdir/lua/liblua53tex_a-ltexiolib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-ltexiolib.obj `if test -f 'luatexdir/lua/ltexiolib.c'; then $(CYGPATH_W) 'luatexdir/lua/ltexiolib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/ltexiolib.c'; fi` - -luatexdir/lua/liblua53tex_a-ltexlib.o: luatexdir/lua/ltexlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-ltexlib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Tpo -c -o luatexdir/lua/liblua53tex_a-ltexlib.o `test -f 'luatexdir/lua/ltexlib.c' || echo '$(srcdir)/'`luatexdir/lua/ltexlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/ltexlib.c' object='luatexdir/lua/liblua53tex_a-ltexlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-ltexlib.o `test -f 'luatexdir/lua/ltexlib.c' || echo '$(srcdir)/'`luatexdir/lua/ltexlib.c - -luatexdir/lua/liblua53tex_a-ltexlib.obj: luatexdir/lua/ltexlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-ltexlib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Tpo -c -o luatexdir/lua/liblua53tex_a-ltexlib.obj `if test -f 'luatexdir/lua/ltexlib.c'; then $(CYGPATH_W) 'luatexdir/lua/ltexlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/ltexlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/ltexlib.c' object='luatexdir/lua/liblua53tex_a-ltexlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-ltexlib.obj `if test -f 'luatexdir/lua/ltexlib.c'; then $(CYGPATH_W) 'luatexdir/lua/ltexlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/ltexlib.c'; fi` - -luatexdir/lua/liblua53tex_a-lnewtokenlib.o: luatexdir/lua/lnewtokenlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lnewtokenlib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Tpo -c -o luatexdir/lua/liblua53tex_a-lnewtokenlib.o `test -f 'luatexdir/lua/lnewtokenlib.c' || echo '$(srcdir)/'`luatexdir/lua/lnewtokenlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lnewtokenlib.c' object='luatexdir/lua/liblua53tex_a-lnewtokenlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lnewtokenlib.o `test -f 'luatexdir/lua/lnewtokenlib.c' || echo '$(srcdir)/'`luatexdir/lua/lnewtokenlib.c - -luatexdir/lua/liblua53tex_a-lnewtokenlib.obj: luatexdir/lua/lnewtokenlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-lnewtokenlib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Tpo -c -o luatexdir/lua/liblua53tex_a-lnewtokenlib.obj `if test -f 'luatexdir/lua/lnewtokenlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lnewtokenlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lnewtokenlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lnewtokenlib.c' object='luatexdir/lua/liblua53tex_a-lnewtokenlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-lnewtokenlib.obj `if test -f 'luatexdir/lua/lnewtokenlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lnewtokenlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lnewtokenlib.c'; fi` - -luatexdir/lua/liblua53tex_a-luatex-core.o: luatexdir/lua/luatex-core.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luatex-core.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Tpo -c -o luatexdir/lua/liblua53tex_a-luatex-core.o `test -f 'luatexdir/lua/luatex-core.c' || echo '$(srcdir)/'`luatexdir/lua/luatex-core.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luatex-core.c' object='luatexdir/lua/liblua53tex_a-luatex-core.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luatex-core.o `test -f 'luatexdir/lua/luatex-core.c' || echo '$(srcdir)/'`luatexdir/lua/luatex-core.c - -luatexdir/lua/liblua53tex_a-luatex-core.obj: luatexdir/lua/luatex-core.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luatex-core.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Tpo -c -o luatexdir/lua/liblua53tex_a-luatex-core.obj `if test -f 'luatexdir/lua/luatex-core.c'; then $(CYGPATH_W) 'luatexdir/lua/luatex-core.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luatex-core.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luatex-core.c' object='luatexdir/lua/liblua53tex_a-luatex-core.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luatex-core.obj `if test -f 'luatexdir/lua/luatex-core.c'; then $(CYGPATH_W) 'luatexdir/lua/luatex-core.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luatex-core.c'; fi` - -luatexdir/lua/liblua53tex_a-luainit.o: luatexdir/lua/luainit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luainit.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Tpo -c -o luatexdir/lua/liblua53tex_a-luainit.o `test -f 'luatexdir/lua/luainit.c' || echo '$(srcdir)/'`luatexdir/lua/luainit.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luainit.c' object='luatexdir/lua/liblua53tex_a-luainit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luainit.o `test -f 'luatexdir/lua/luainit.c' || echo '$(srcdir)/'`luatexdir/lua/luainit.c - -luatexdir/lua/liblua53tex_a-luainit.obj: luatexdir/lua/luainit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luainit.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Tpo -c -o luatexdir/lua/liblua53tex_a-luainit.obj `if test -f 'luatexdir/lua/luainit.c'; then $(CYGPATH_W) 'luatexdir/lua/luainit.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luainit.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luainit.c' object='luatexdir/lua/liblua53tex_a-luainit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luainit.obj `if test -f 'luatexdir/lua/luainit.c'; then $(CYGPATH_W) 'luatexdir/lua/luainit.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luainit.c'; fi` - -luatexdir/lua/liblua53tex_a-luanode.o: luatexdir/lua/luanode.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luanode.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Tpo -c -o luatexdir/lua/liblua53tex_a-luanode.o `test -f 'luatexdir/lua/luanode.c' || echo '$(srcdir)/'`luatexdir/lua/luanode.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luanode.c' object='luatexdir/lua/liblua53tex_a-luanode.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luanode.o `test -f 'luatexdir/lua/luanode.c' || echo '$(srcdir)/'`luatexdir/lua/luanode.c - -luatexdir/lua/liblua53tex_a-luanode.obj: luatexdir/lua/luanode.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luanode.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Tpo -c -o luatexdir/lua/liblua53tex_a-luanode.obj `if test -f 'luatexdir/lua/luanode.c'; then $(CYGPATH_W) 'luatexdir/lua/luanode.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luanode.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luanode.c' object='luatexdir/lua/liblua53tex_a-luanode.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luanode.obj `if test -f 'luatexdir/lua/luanode.c'; then $(CYGPATH_W) 'luatexdir/lua/luanode.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luanode.c'; fi` - -luatexdir/lua/liblua53tex_a-luastuff.o: luatexdir/lua/luastuff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luastuff.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Tpo -c -o luatexdir/lua/liblua53tex_a-luastuff.o `test -f 'luatexdir/lua/luastuff.c' || echo '$(srcdir)/'`luatexdir/lua/luastuff.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luastuff.c' object='luatexdir/lua/liblua53tex_a-luastuff.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luastuff.o `test -f 'luatexdir/lua/luastuff.c' || echo '$(srcdir)/'`luatexdir/lua/luastuff.c - -luatexdir/lua/liblua53tex_a-luastuff.obj: luatexdir/lua/luastuff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luastuff.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Tpo -c -o luatexdir/lua/liblua53tex_a-luastuff.obj `if test -f 'luatexdir/lua/luastuff.c'; then $(CYGPATH_W) 'luatexdir/lua/luastuff.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luastuff.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luastuff.c' object='luatexdir/lua/liblua53tex_a-luastuff.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luastuff.obj `if test -f 'luatexdir/lua/luastuff.c'; then $(CYGPATH_W) 'luatexdir/lua/luastuff.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luastuff.c'; fi` - -luatexdir/lua/liblua53tex_a-luatoken.o: luatexdir/lua/luatoken.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luatoken.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Tpo -c -o luatexdir/lua/liblua53tex_a-luatoken.o `test -f 'luatexdir/lua/luatoken.c' || echo '$(srcdir)/'`luatexdir/lua/luatoken.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luatoken.c' object='luatexdir/lua/liblua53tex_a-luatoken.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luatoken.o `test -f 'luatexdir/lua/luatoken.c' || echo '$(srcdir)/'`luatexdir/lua/luatoken.c - -luatexdir/lua/liblua53tex_a-luatoken.obj: luatexdir/lua/luatoken.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-luatoken.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Tpo -c -o luatexdir/lua/liblua53tex_a-luatoken.obj `if test -f 'luatexdir/lua/luatoken.c'; then $(CYGPATH_W) 'luatexdir/lua/luatoken.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luatoken.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/luatoken.c' object='luatexdir/lua/liblua53tex_a-luatoken.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-luatoken.obj `if test -f 'luatexdir/lua/luatoken.c'; then $(CYGPATH_W) 'luatexdir/lua/luatoken.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/luatoken.c'; fi` - -luatexdir/lua/liblua53tex_a-mplibstuff.o: luatexdir/lua/mplibstuff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-mplibstuff.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Tpo -c -o luatexdir/lua/liblua53tex_a-mplibstuff.o `test -f 'luatexdir/lua/mplibstuff.c' || echo '$(srcdir)/'`luatexdir/lua/mplibstuff.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/mplibstuff.c' object='luatexdir/lua/liblua53tex_a-mplibstuff.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-mplibstuff.o `test -f 'luatexdir/lua/mplibstuff.c' || echo '$(srcdir)/'`luatexdir/lua/mplibstuff.c - -luatexdir/lua/liblua53tex_a-mplibstuff.obj: luatexdir/lua/mplibstuff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/liblua53tex_a-mplibstuff.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Tpo -c -o luatexdir/lua/liblua53tex_a-mplibstuff.obj `if test -f 'luatexdir/lua/mplibstuff.c'; then $(CYGPATH_W) 'luatexdir/lua/mplibstuff.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/mplibstuff.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Tpo luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/mplibstuff.c' object='luatexdir/lua/liblua53tex_a-mplibstuff.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/liblua53tex_a-mplibstuff.obj `if test -f 'luatexdir/lua/mplibstuff.c'; then $(CYGPATH_W) 'luatexdir/lua/mplibstuff.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/mplibstuff.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfaction.o: luatexdir/pdf/pdfaction.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfaction.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfaction.o `test -f 'luatexdir/pdf/pdfaction.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfaction.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfaction.c' object='luatexdir/pdf/liblua53tex_a-pdfaction.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfaction.o `test -f 'luatexdir/pdf/pdfaction.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfaction.c - -luatexdir/pdf/liblua53tex_a-pdfaction.obj: luatexdir/pdf/pdfaction.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfaction.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfaction.obj `if test -f 'luatexdir/pdf/pdfaction.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfaction.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfaction.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfaction.c' object='luatexdir/pdf/liblua53tex_a-pdfaction.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfaction.obj `if test -f 'luatexdir/pdf/pdfaction.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfaction.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfaction.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfannot.o: luatexdir/pdf/pdfannot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfannot.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfannot.o `test -f 'luatexdir/pdf/pdfannot.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfannot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfannot.c' object='luatexdir/pdf/liblua53tex_a-pdfannot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfannot.o `test -f 'luatexdir/pdf/pdfannot.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfannot.c - -luatexdir/pdf/liblua53tex_a-pdfannot.obj: luatexdir/pdf/pdfannot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfannot.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfannot.obj `if test -f 'luatexdir/pdf/pdfannot.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfannot.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfannot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfannot.c' object='luatexdir/pdf/liblua53tex_a-pdfannot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfannot.obj `if test -f 'luatexdir/pdf/pdfannot.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfannot.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfannot.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfcolorstack.o: luatexdir/pdf/pdfcolorstack.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfcolorstack.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfcolorstack.o `test -f 'luatexdir/pdf/pdfcolorstack.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfcolorstack.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfcolorstack.c' object='luatexdir/pdf/liblua53tex_a-pdfcolorstack.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfcolorstack.o `test -f 'luatexdir/pdf/pdfcolorstack.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfcolorstack.c - -luatexdir/pdf/liblua53tex_a-pdfcolorstack.obj: luatexdir/pdf/pdfcolorstack.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfcolorstack.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfcolorstack.obj `if test -f 'luatexdir/pdf/pdfcolorstack.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfcolorstack.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfcolorstack.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfcolorstack.c' object='luatexdir/pdf/liblua53tex_a-pdfcolorstack.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfcolorstack.obj `if test -f 'luatexdir/pdf/pdfcolorstack.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfcolorstack.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfcolorstack.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfdest.o: luatexdir/pdf/pdfdest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfdest.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfdest.o `test -f 'luatexdir/pdf/pdfdest.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfdest.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfdest.c' object='luatexdir/pdf/liblua53tex_a-pdfdest.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfdest.o `test -f 'luatexdir/pdf/pdfdest.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfdest.c - -luatexdir/pdf/liblua53tex_a-pdfdest.obj: luatexdir/pdf/pdfdest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfdest.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfdest.obj `if test -f 'luatexdir/pdf/pdfdest.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfdest.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfdest.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfdest.c' object='luatexdir/pdf/liblua53tex_a-pdfdest.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfdest.obj `if test -f 'luatexdir/pdf/pdfdest.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfdest.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfdest.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdffont.o: luatexdir/pdf/pdffont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdffont.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdffont.o `test -f 'luatexdir/pdf/pdffont.c' || echo '$(srcdir)/'`luatexdir/pdf/pdffont.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdffont.c' object='luatexdir/pdf/liblua53tex_a-pdffont.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdffont.o `test -f 'luatexdir/pdf/pdffont.c' || echo '$(srcdir)/'`luatexdir/pdf/pdffont.c - -luatexdir/pdf/liblua53tex_a-pdffont.obj: luatexdir/pdf/pdffont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdffont.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdffont.obj `if test -f 'luatexdir/pdf/pdffont.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdffont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdffont.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdffont.c' object='luatexdir/pdf/liblua53tex_a-pdffont.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdffont.obj `if test -f 'luatexdir/pdf/pdffont.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdffont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdffont.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfgen.o: luatexdir/pdf/pdfgen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfgen.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfgen.o `test -f 'luatexdir/pdf/pdfgen.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfgen.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfgen.c' object='luatexdir/pdf/liblua53tex_a-pdfgen.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfgen.o `test -f 'luatexdir/pdf/pdfgen.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfgen.c - -luatexdir/pdf/liblua53tex_a-pdfgen.obj: luatexdir/pdf/pdfgen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfgen.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfgen.obj `if test -f 'luatexdir/pdf/pdfgen.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfgen.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfgen.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfgen.c' object='luatexdir/pdf/liblua53tex_a-pdfgen.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfgen.obj `if test -f 'luatexdir/pdf/pdfgen.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfgen.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfgen.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfglyph.o: luatexdir/pdf/pdfglyph.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfglyph.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfglyph.o `test -f 'luatexdir/pdf/pdfglyph.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfglyph.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfglyph.c' object='luatexdir/pdf/liblua53tex_a-pdfglyph.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfglyph.o `test -f 'luatexdir/pdf/pdfglyph.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfglyph.c - -luatexdir/pdf/liblua53tex_a-pdfglyph.obj: luatexdir/pdf/pdfglyph.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfglyph.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfglyph.obj `if test -f 'luatexdir/pdf/pdfglyph.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfglyph.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfglyph.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfglyph.c' object='luatexdir/pdf/liblua53tex_a-pdfglyph.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfglyph.obj `if test -f 'luatexdir/pdf/pdfglyph.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfglyph.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfglyph.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfimage.o: luatexdir/pdf/pdfimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfimage.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfimage.o `test -f 'luatexdir/pdf/pdfimage.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfimage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfimage.c' object='luatexdir/pdf/liblua53tex_a-pdfimage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfimage.o `test -f 'luatexdir/pdf/pdfimage.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfimage.c - -luatexdir/pdf/liblua53tex_a-pdfimage.obj: luatexdir/pdf/pdfimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfimage.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfimage.obj `if test -f 'luatexdir/pdf/pdfimage.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfimage.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfimage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfimage.c' object='luatexdir/pdf/liblua53tex_a-pdfimage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfimage.obj `if test -f 'luatexdir/pdf/pdfimage.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfimage.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfimage.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdflink.o: luatexdir/pdf/pdflink.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdflink.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdflink.o `test -f 'luatexdir/pdf/pdflink.c' || echo '$(srcdir)/'`luatexdir/pdf/pdflink.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdflink.c' object='luatexdir/pdf/liblua53tex_a-pdflink.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdflink.o `test -f 'luatexdir/pdf/pdflink.c' || echo '$(srcdir)/'`luatexdir/pdf/pdflink.c - -luatexdir/pdf/liblua53tex_a-pdflink.obj: luatexdir/pdf/pdflink.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdflink.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdflink.obj `if test -f 'luatexdir/pdf/pdflink.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdflink.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdflink.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdflink.c' object='luatexdir/pdf/liblua53tex_a-pdflink.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdflink.obj `if test -f 'luatexdir/pdf/pdflink.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdflink.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdflink.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdflistout.o: luatexdir/pdf/pdflistout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdflistout.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdflistout.o `test -f 'luatexdir/pdf/pdflistout.c' || echo '$(srcdir)/'`luatexdir/pdf/pdflistout.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdflistout.c' object='luatexdir/pdf/liblua53tex_a-pdflistout.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdflistout.o `test -f 'luatexdir/pdf/pdflistout.c' || echo '$(srcdir)/'`luatexdir/pdf/pdflistout.c - -luatexdir/pdf/liblua53tex_a-pdflistout.obj: luatexdir/pdf/pdflistout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdflistout.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdflistout.obj `if test -f 'luatexdir/pdf/pdflistout.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdflistout.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdflistout.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdflistout.c' object='luatexdir/pdf/liblua53tex_a-pdflistout.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdflistout.obj `if test -f 'luatexdir/pdf/pdflistout.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdflistout.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdflistout.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfliteral.o: luatexdir/pdf/pdfliteral.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfliteral.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfliteral.o `test -f 'luatexdir/pdf/pdfliteral.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfliteral.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfliteral.c' object='luatexdir/pdf/liblua53tex_a-pdfliteral.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfliteral.o `test -f 'luatexdir/pdf/pdfliteral.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfliteral.c - -luatexdir/pdf/liblua53tex_a-pdfliteral.obj: luatexdir/pdf/pdfliteral.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfliteral.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfliteral.obj `if test -f 'luatexdir/pdf/pdfliteral.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfliteral.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfliteral.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfliteral.c' object='luatexdir/pdf/liblua53tex_a-pdfliteral.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfliteral.obj `if test -f 'luatexdir/pdf/pdfliteral.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfliteral.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfliteral.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfobj.o: luatexdir/pdf/pdfobj.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfobj.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfobj.o `test -f 'luatexdir/pdf/pdfobj.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfobj.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfobj.c' object='luatexdir/pdf/liblua53tex_a-pdfobj.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfobj.o `test -f 'luatexdir/pdf/pdfobj.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfobj.c - -luatexdir/pdf/liblua53tex_a-pdfobj.obj: luatexdir/pdf/pdfobj.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfobj.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfobj.obj `if test -f 'luatexdir/pdf/pdfobj.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfobj.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfobj.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfobj.c' object='luatexdir/pdf/liblua53tex_a-pdfobj.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfobj.obj `if test -f 'luatexdir/pdf/pdfobj.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfobj.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfobj.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfoutline.o: luatexdir/pdf/pdfoutline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfoutline.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfoutline.o `test -f 'luatexdir/pdf/pdfoutline.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfoutline.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfoutline.c' object='luatexdir/pdf/liblua53tex_a-pdfoutline.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfoutline.o `test -f 'luatexdir/pdf/pdfoutline.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfoutline.c - -luatexdir/pdf/liblua53tex_a-pdfoutline.obj: luatexdir/pdf/pdfoutline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfoutline.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfoutline.obj `if test -f 'luatexdir/pdf/pdfoutline.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfoutline.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfoutline.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfoutline.c' object='luatexdir/pdf/liblua53tex_a-pdfoutline.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfoutline.obj `if test -f 'luatexdir/pdf/pdfoutline.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfoutline.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfoutline.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfpage.o: luatexdir/pdf/pdfpage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfpage.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfpage.o `test -f 'luatexdir/pdf/pdfpage.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfpage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfpage.c' object='luatexdir/pdf/liblua53tex_a-pdfpage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfpage.o `test -f 'luatexdir/pdf/pdfpage.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfpage.c - -luatexdir/pdf/liblua53tex_a-pdfpage.obj: luatexdir/pdf/pdfpage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfpage.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfpage.obj `if test -f 'luatexdir/pdf/pdfpage.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfpage.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfpage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfpage.c' object='luatexdir/pdf/liblua53tex_a-pdfpage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfpage.obj `if test -f 'luatexdir/pdf/pdfpage.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfpage.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfpage.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfpagetree.o: luatexdir/pdf/pdfpagetree.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfpagetree.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfpagetree.o `test -f 'luatexdir/pdf/pdfpagetree.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfpagetree.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfpagetree.c' object='luatexdir/pdf/liblua53tex_a-pdfpagetree.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfpagetree.o `test -f 'luatexdir/pdf/pdfpagetree.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfpagetree.c - -luatexdir/pdf/liblua53tex_a-pdfpagetree.obj: luatexdir/pdf/pdfpagetree.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfpagetree.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfpagetree.obj `if test -f 'luatexdir/pdf/pdfpagetree.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfpagetree.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfpagetree.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfpagetree.c' object='luatexdir/pdf/liblua53tex_a-pdfpagetree.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfpagetree.obj `if test -f 'luatexdir/pdf/pdfpagetree.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfpagetree.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfpagetree.c'; fi` - -luatexdir/pdf/liblua53tex_a-pdfrule.o: luatexdir/pdf/pdfrule.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfrule.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfrule.o `test -f 'luatexdir/pdf/pdfrule.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfrule.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfrule.c' object='luatexdir/pdf/liblua53tex_a-pdfrule.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfrule.o `test -f 'luatexdir/pdf/pdfrule.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfrule.c +@AMDEP_TRUE@@am__include@ @am__quote@uptexdir/$(DEPDIR)/libukanji_a-kanji_dump.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uptexdir/$(DEPDIR)/uptex-uptexextra.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontInst.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontInst_Mac.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontMgr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontMgr_FC.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXFontMgr_Mac.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXLayoutInterface.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeXOTMath.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeX_ext.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeX_mac.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-XeTeX_pic.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-hz.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-pdfimage.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/libxetex_a-trans.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/$(DEPDIR)/xetex-xetexextra.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-bmpimage.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-jpegimage.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-mfileio.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-numbers.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@xetexdir/image/$(DEPDIR)/libxetex_a-pngimage.Po@am__quote@ # am--include-marker -luatexdir/pdf/liblua53tex_a-pdfrule.obj: luatexdir/pdf/pdfrule.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfrule.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfrule.obj `if test -f 'luatexdir/pdf/pdfrule.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfrule.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfrule.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfrule.c' object='luatexdir/pdf/liblua53tex_a-pdfrule.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfrule.obj `if test -f 'luatexdir/pdf/pdfrule.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfrule.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfrule.c'; fi` +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ -luatexdir/pdf/liblua53tex_a-pdfsaverestore.o: luatexdir/pdf/pdfsaverestore.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfsaverestore.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfsaverestore.o `test -f 'luatexdir/pdf/pdfsaverestore.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfsaverestore.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfsaverestore.c' object='luatexdir/pdf/liblua53tex_a-pdfsaverestore.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfsaverestore.o `test -f 'luatexdir/pdf/pdfsaverestore.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfsaverestore.c +am--depfiles: $(am__depfiles_remade) -luatexdir/pdf/liblua53tex_a-pdfsaverestore.obj: luatexdir/pdf/pdfsaverestore.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfsaverestore.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfsaverestore.obj `if test -f 'luatexdir/pdf/pdfsaverestore.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfsaverestore.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfsaverestore.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfsaverestore.c' object='luatexdir/pdf/liblua53tex_a-pdfsaverestore.obj' libtool=no @AMDEPBACKSLASH@ +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfsaverestore.obj `if test -f 'luatexdir/pdf/pdfsaverestore.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfsaverestore.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfsaverestore.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< -luatexdir/pdf/liblua53tex_a-pdfsetmatrix.o: luatexdir/pdf/pdfsetmatrix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfsetmatrix.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfsetmatrix.o `test -f 'luatexdir/pdf/pdfsetmatrix.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfsetmatrix.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfsetmatrix.c' object='luatexdir/pdf/liblua53tex_a-pdfsetmatrix.o' libtool=no @AMDEPBACKSLASH@ +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfsetmatrix.o `test -f 'luatexdir/pdf/pdfsetmatrix.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfsetmatrix.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` -luatexdir/pdf/liblua53tex_a-pdfsetmatrix.obj: luatexdir/pdf/pdfsetmatrix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfsetmatrix.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfsetmatrix.obj `if test -f 'luatexdir/pdf/pdfsetmatrix.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfsetmatrix.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfsetmatrix.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfsetmatrix.c' object='luatexdir/pdf/liblua53tex_a-pdfsetmatrix.obj' libtool=no @AMDEPBACKSLASH@ +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfsetmatrix.obj `if test -f 'luatexdir/pdf/pdfsetmatrix.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfsetmatrix.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfsetmatrix.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< -luatexdir/pdf/liblua53tex_a-pdfshipout.o: luatexdir/pdf/pdfshipout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfshipout.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfshipout.o `test -f 'luatexdir/pdf/pdfshipout.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfshipout.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfshipout.c' object='luatexdir/pdf/liblua53tex_a-pdfshipout.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o: luatexdir/luafontloader/fontforge/fontforge/autohint.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/autohint.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/autohint.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/autohint.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfshipout.o `test -f 'luatexdir/pdf/pdfshipout.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfshipout.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/autohint.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/autohint.c -luatexdir/pdf/liblua53tex_a-pdfshipout.obj: luatexdir/pdf/pdfshipout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfshipout.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfshipout.obj `if test -f 'luatexdir/pdf/pdfshipout.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfshipout.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfshipout.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfshipout.c' object='luatexdir/pdf/liblua53tex_a-pdfshipout.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj: luatexdir/luafontloader/fontforge/fontforge/autohint.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/autohint.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/autohint.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/autohint.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/autohint.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfshipout.obj `if test -f 'luatexdir/pdf/pdfshipout.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfshipout.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfshipout.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-autohint.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/autohint.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/autohint.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/autohint.c'; fi` -luatexdir/pdf/liblua53tex_a-pdftables.o: luatexdir/pdf/pdftables.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdftables.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdftables.o `test -f 'luatexdir/pdf/pdftables.c' || echo '$(srcdir)/'`luatexdir/pdf/pdftables.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdftables.c' object='luatexdir/pdf/liblua53tex_a-pdftables.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o: luatexdir/luafontloader/fontforge/fontforge/clipnoui.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/clipnoui.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/clipnoui.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdftables.o `test -f 'luatexdir/pdf/pdftables.c' || echo '$(srcdir)/'`luatexdir/pdf/pdftables.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/clipnoui.c -luatexdir/pdf/liblua53tex_a-pdftables.obj: luatexdir/pdf/pdftables.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdftables.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdftables.obj `if test -f 'luatexdir/pdf/pdftables.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdftables.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdftables.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdftables.c' object='luatexdir/pdf/liblua53tex_a-pdftables.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj: luatexdir/luafontloader/fontforge/fontforge/clipnoui.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-clipnoui.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/clipnoui.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdftables.obj `if test -f 'luatexdir/pdf/pdftables.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdftables.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdftables.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-clipnoui.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/clipnoui.c'; fi` -luatexdir/pdf/liblua53tex_a-pdfthread.o: luatexdir/pdf/pdfthread.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfthread.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfthread.o `test -f 'luatexdir/pdf/pdfthread.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfthread.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfthread.c' object='luatexdir/pdf/liblua53tex_a-pdfthread.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o: luatexdir/luafontloader/fontforge/fontforge/cvundoes.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/cvundoes.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/cvundoes.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfthread.o `test -f 'luatexdir/pdf/pdfthread.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfthread.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/cvundoes.c -luatexdir/pdf/liblua53tex_a-pdfthread.obj: luatexdir/pdf/pdfthread.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfthread.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfthread.obj `if test -f 'luatexdir/pdf/pdfthread.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfthread.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfthread.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfthread.c' object='luatexdir/pdf/liblua53tex_a-pdfthread.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj: luatexdir/luafontloader/fontforge/fontforge/cvundoes.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-cvundoes.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/cvundoes.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfthread.obj `if test -f 'luatexdir/pdf/pdfthread.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfthread.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfthread.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-cvundoes.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/cvundoes.c'; fi` -luatexdir/pdf/liblua53tex_a-pdfxform.o: luatexdir/pdf/pdfxform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfxform.o -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfxform.o `test -f 'luatexdir/pdf/pdfxform.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfxform.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfxform.c' object='luatexdir/pdf/liblua53tex_a-pdfxform.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o: luatexdir/luafontloader/fontforge/fontforge/dumppfa.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/dumppfa.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/dumppfa.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfxform.o `test -f 'luatexdir/pdf/pdfxform.c' || echo '$(srcdir)/'`luatexdir/pdf/pdfxform.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/dumppfa.c -luatexdir/pdf/liblua53tex_a-pdfxform.obj: luatexdir/pdf/pdfxform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/pdf/liblua53tex_a-pdfxform.obj -MD -MP -MF luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Tpo -c -o luatexdir/pdf/liblua53tex_a-pdfxform.obj `if test -f 'luatexdir/pdf/pdfxform.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfxform.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfxform.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Tpo luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/pdf/pdfxform.c' object='luatexdir/pdf/liblua53tex_a-pdfxform.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj: luatexdir/luafontloader/fontforge/fontforge/dumppfa.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-dumppfa.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/dumppfa.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/pdf/liblua53tex_a-pdfxform.obj `if test -f 'luatexdir/pdf/pdfxform.c'; then $(CYGPATH_W) 'luatexdir/pdf/pdfxform.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/pdf/pdfxform.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-dumppfa.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/dumppfa.c'; fi` -luatexdir/tex/liblua53tex_a-backend.o: luatexdir/tex/backend.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-backend.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Tpo -c -o luatexdir/tex/liblua53tex_a-backend.o `test -f 'luatexdir/tex/backend.c' || echo '$(srcdir)/'`luatexdir/tex/backend.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/backend.c' object='luatexdir/tex/liblua53tex_a-backend.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o: luatexdir/luafontloader/fontforge/fontforge/encoding.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/encoding.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/encoding.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/encoding.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-backend.o `test -f 'luatexdir/tex/backend.c' || echo '$(srcdir)/'`luatexdir/tex/backend.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/encoding.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/encoding.c -luatexdir/tex/liblua53tex_a-backend.obj: luatexdir/tex/backend.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-backend.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Tpo -c -o luatexdir/tex/liblua53tex_a-backend.obj `if test -f 'luatexdir/tex/backend.c'; then $(CYGPATH_W) 'luatexdir/tex/backend.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/backend.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/backend.c' object='luatexdir/tex/liblua53tex_a-backend.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj: luatexdir/luafontloader/fontforge/fontforge/encoding.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/encoding.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/encoding.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/encoding.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-encoding.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/encoding.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-backend.obj `if test -f 'luatexdir/tex/backend.c'; then $(CYGPATH_W) 'luatexdir/tex/backend.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/backend.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-encoding.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/encoding.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/encoding.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/encoding.c'; fi` -luatexdir/tex/liblua53tex_a-align.o: luatexdir/tex/align.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-align.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Tpo -c -o luatexdir/tex/liblua53tex_a-align.o `test -f 'luatexdir/tex/align.c' || echo '$(srcdir)/'`luatexdir/tex/align.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/align.c' object='luatexdir/tex/liblua53tex_a-align.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o: luatexdir/luafontloader/fontforge/fontforge/featurefile.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/featurefile.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/featurefile.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-align.o `test -f 'luatexdir/tex/align.c' || echo '$(srcdir)/'`luatexdir/tex/align.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/featurefile.c -luatexdir/tex/liblua53tex_a-align.obj: luatexdir/tex/align.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-align.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Tpo -c -o luatexdir/tex/liblua53tex_a-align.obj `if test -f 'luatexdir/tex/align.c'; then $(CYGPATH_W) 'luatexdir/tex/align.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/align.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/align.c' object='luatexdir/tex/liblua53tex_a-align.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj: luatexdir/luafontloader/fontforge/fontforge/featurefile.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-featurefile.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/featurefile.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-align.obj `if test -f 'luatexdir/tex/align.c'; then $(CYGPATH_W) 'luatexdir/tex/align.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/align.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-featurefile.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/featurefile.c'; fi` -luatexdir/tex/liblua53tex_a-arithmetic.o: luatexdir/tex/arithmetic.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-arithmetic.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Tpo -c -o luatexdir/tex/liblua53tex_a-arithmetic.o `test -f 'luatexdir/tex/arithmetic.c' || echo '$(srcdir)/'`luatexdir/tex/arithmetic.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/arithmetic.c' object='luatexdir/tex/liblua53tex_a-arithmetic.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o: luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-arithmetic.o `test -f 'luatexdir/tex/arithmetic.c' || echo '$(srcdir)/'`luatexdir/tex/arithmetic.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c -luatexdir/tex/liblua53tex_a-arithmetic.obj: luatexdir/tex/arithmetic.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-arithmetic.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Tpo -c -o luatexdir/tex/liblua53tex_a-arithmetic.obj `if test -f 'luatexdir/tex/arithmetic.c'; then $(CYGPATH_W) 'luatexdir/tex/arithmetic.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/arithmetic.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/arithmetic.c' object='luatexdir/tex/liblua53tex_a-arithmetic.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj: luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fontviewbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-arithmetic.obj `if test -f 'luatexdir/tex/arithmetic.c'; then $(CYGPATH_W) 'luatexdir/tex/arithmetic.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/arithmetic.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fontviewbase.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fontviewbase.c'; fi` -luatexdir/tex/liblua53tex_a-buildpage.o: luatexdir/tex/buildpage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-buildpage.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Tpo -c -o luatexdir/tex/liblua53tex_a-buildpage.o `test -f 'luatexdir/tex/buildpage.c' || echo '$(srcdir)/'`luatexdir/tex/buildpage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/buildpage.c' object='luatexdir/tex/liblua53tex_a-buildpage.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o: luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-buildpage.o `test -f 'luatexdir/tex/buildpage.c' || echo '$(srcdir)/'`luatexdir/tex/buildpage.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c -luatexdir/tex/liblua53tex_a-buildpage.obj: luatexdir/tex/buildpage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-buildpage.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Tpo -c -o luatexdir/tex/liblua53tex_a-buildpage.obj `if test -f 'luatexdir/tex/buildpage.c'; then $(CYGPATH_W) 'luatexdir/tex/buildpage.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/buildpage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/buildpage.c' object='luatexdir/tex/liblua53tex_a-buildpage.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj: luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvcomposit.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-buildpage.obj `if test -f 'luatexdir/tex/buildpage.c'; then $(CYGPATH_W) 'luatexdir/tex/buildpage.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/buildpage.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvcomposit.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fvcomposit.c'; fi` -luatexdir/tex/liblua53tex_a-commands.o: luatexdir/tex/commands.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-commands.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Tpo -c -o luatexdir/tex/liblua53tex_a-commands.o `test -f 'luatexdir/tex/commands.c' || echo '$(srcdir)/'`luatexdir/tex/commands.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/commands.c' object='luatexdir/tex/liblua53tex_a-commands.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o: luatexdir/luafontloader/fontforge/fontforge/fvfonts.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fvfonts.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fvfonts.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-commands.o `test -f 'luatexdir/tex/commands.c' || echo '$(srcdir)/'`luatexdir/tex/commands.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/fvfonts.c -luatexdir/tex/liblua53tex_a-commands.obj: luatexdir/tex/commands.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-commands.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Tpo -c -o luatexdir/tex/liblua53tex_a-commands.obj `if test -f 'luatexdir/tex/commands.c'; then $(CYGPATH_W) 'luatexdir/tex/commands.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/commands.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/commands.c' object='luatexdir/tex/liblua53tex_a-commands.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj: luatexdir/luafontloader/fontforge/fontforge/fvfonts.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-fvfonts.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/fvfonts.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-commands.obj `if test -f 'luatexdir/tex/commands.c'; then $(CYGPATH_W) 'luatexdir/tex/commands.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/commands.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-fvfonts.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/fvfonts.c'; fi` -luatexdir/tex/liblua53tex_a-conditional.o: luatexdir/tex/conditional.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-conditional.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Tpo -c -o luatexdir/tex/liblua53tex_a-conditional.o `test -f 'luatexdir/tex/conditional.c' || echo '$(srcdir)/'`luatexdir/tex/conditional.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/conditional.c' object='luatexdir/tex/liblua53tex_a-conditional.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o: luatexdir/luafontloader/fontforge/fontforge/lookups.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/lookups.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/lookups.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/lookups.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-conditional.o `test -f 'luatexdir/tex/conditional.c' || echo '$(srcdir)/'`luatexdir/tex/conditional.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/lookups.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/lookups.c -luatexdir/tex/liblua53tex_a-conditional.obj: luatexdir/tex/conditional.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-conditional.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Tpo -c -o luatexdir/tex/liblua53tex_a-conditional.obj `if test -f 'luatexdir/tex/conditional.c'; then $(CYGPATH_W) 'luatexdir/tex/conditional.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/conditional.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/conditional.c' object='luatexdir/tex/liblua53tex_a-conditional.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj: luatexdir/luafontloader/fontforge/fontforge/lookups.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/lookups.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/lookups.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/lookups.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-lookups.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/lookups.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-conditional.obj `if test -f 'luatexdir/tex/conditional.c'; then $(CYGPATH_W) 'luatexdir/tex/conditional.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/conditional.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-lookups.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/lookups.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/lookups.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/lookups.c'; fi` -luatexdir/tex/liblua53tex_a-directions.o: luatexdir/tex/directions.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-directions.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Tpo -c -o luatexdir/tex/liblua53tex_a-directions.o `test -f 'luatexdir/tex/directions.c' || echo '$(srcdir)/'`luatexdir/tex/directions.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/directions.c' object='luatexdir/tex/liblua53tex_a-directions.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o: luatexdir/luafontloader/fontforge/fontforge/macbinary.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/macbinary.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/macbinary.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-directions.o `test -f 'luatexdir/tex/directions.c' || echo '$(srcdir)/'`luatexdir/tex/directions.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/macbinary.c -luatexdir/tex/liblua53tex_a-directions.obj: luatexdir/tex/directions.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-directions.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Tpo -c -o luatexdir/tex/liblua53tex_a-directions.obj `if test -f 'luatexdir/tex/directions.c'; then $(CYGPATH_W) 'luatexdir/tex/directions.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/directions.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/directions.c' object='luatexdir/tex/liblua53tex_a-directions.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj: luatexdir/luafontloader/fontforge/fontforge/macbinary.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macbinary.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/macbinary.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-directions.obj `if test -f 'luatexdir/tex/directions.c'; then $(CYGPATH_W) 'luatexdir/tex/directions.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/directions.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macbinary.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/macbinary.c'; fi` -luatexdir/tex/liblua53tex_a-dumpdata.o: luatexdir/tex/dumpdata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-dumpdata.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Tpo -c -o luatexdir/tex/liblua53tex_a-dumpdata.o `test -f 'luatexdir/tex/dumpdata.c' || echo '$(srcdir)/'`luatexdir/tex/dumpdata.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/dumpdata.c' object='luatexdir/tex/liblua53tex_a-dumpdata.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o: luatexdir/luafontloader/fontforge/fontforge/macenc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/macenc.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/macenc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/macenc.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-dumpdata.o `test -f 'luatexdir/tex/dumpdata.c' || echo '$(srcdir)/'`luatexdir/tex/dumpdata.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/macenc.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/macenc.c -luatexdir/tex/liblua53tex_a-dumpdata.obj: luatexdir/tex/dumpdata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-dumpdata.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Tpo -c -o luatexdir/tex/liblua53tex_a-dumpdata.obj `if test -f 'luatexdir/tex/dumpdata.c'; then $(CYGPATH_W) 'luatexdir/tex/dumpdata.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/dumpdata.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/dumpdata.c' object='luatexdir/tex/liblua53tex_a-dumpdata.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj: luatexdir/luafontloader/fontforge/fontforge/macenc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/macenc.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/macenc.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/macenc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-macenc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/macenc.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-dumpdata.obj `if test -f 'luatexdir/tex/dumpdata.c'; then $(CYGPATH_W) 'luatexdir/tex/dumpdata.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/dumpdata.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-macenc.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/macenc.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/macenc.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/macenc.c'; fi` -luatexdir/tex/liblua53tex_a-equivalents.o: luatexdir/tex/equivalents.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-equivalents.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Tpo -c -o luatexdir/tex/liblua53tex_a-equivalents.o `test -f 'luatexdir/tex/equivalents.c' || echo '$(srcdir)/'`luatexdir/tex/equivalents.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/equivalents.c' object='luatexdir/tex/liblua53tex_a-equivalents.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o: luatexdir/luafontloader/fontforge/fontforge/mathconstants.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/mathconstants.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/mathconstants.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-equivalents.o `test -f 'luatexdir/tex/equivalents.c' || echo '$(srcdir)/'`luatexdir/tex/equivalents.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/mathconstants.c -luatexdir/tex/liblua53tex_a-equivalents.obj: luatexdir/tex/equivalents.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-equivalents.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Tpo -c -o luatexdir/tex/liblua53tex_a-equivalents.obj `if test -f 'luatexdir/tex/equivalents.c'; then $(CYGPATH_W) 'luatexdir/tex/equivalents.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/equivalents.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/equivalents.c' object='luatexdir/tex/liblua53tex_a-equivalents.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj: luatexdir/luafontloader/fontforge/fontforge/mathconstants.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mathconstants.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/mathconstants.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-equivalents.obj `if test -f 'luatexdir/tex/equivalents.c'; then $(CYGPATH_W) 'luatexdir/tex/equivalents.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/equivalents.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mathconstants.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/mathconstants.c'; fi` -luatexdir/tex/liblua53tex_a-errors.o: luatexdir/tex/errors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-errors.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Tpo -c -o luatexdir/tex/liblua53tex_a-errors.o `test -f 'luatexdir/tex/errors.c' || echo '$(srcdir)/'`luatexdir/tex/errors.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/errors.c' object='luatexdir/tex/liblua53tex_a-errors.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o: luatexdir/luafontloader/fontforge/fontforge/memory.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/memory.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/memory.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/memory.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-errors.o `test -f 'luatexdir/tex/errors.c' || echo '$(srcdir)/'`luatexdir/tex/errors.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/memory.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/memory.c -luatexdir/tex/liblua53tex_a-errors.obj: luatexdir/tex/errors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-errors.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Tpo -c -o luatexdir/tex/liblua53tex_a-errors.obj `if test -f 'luatexdir/tex/errors.c'; then $(CYGPATH_W) 'luatexdir/tex/errors.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/errors.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/errors.c' object='luatexdir/tex/liblua53tex_a-errors.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj: luatexdir/luafontloader/fontforge/fontforge/memory.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/memory.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/memory.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/memory.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-memory.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/memory.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-errors.obj `if test -f 'luatexdir/tex/errors.c'; then $(CYGPATH_W) 'luatexdir/tex/errors.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/errors.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-memory.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/memory.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/memory.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/memory.c'; fi` -luatexdir/tex/liblua53tex_a-expand.o: luatexdir/tex/expand.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-expand.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Tpo -c -o luatexdir/tex/liblua53tex_a-expand.o `test -f 'luatexdir/tex/expand.c' || echo '$(srcdir)/'`luatexdir/tex/expand.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/expand.c' object='luatexdir/tex/liblua53tex_a-expand.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o: luatexdir/luafontloader/fontforge/fontforge/mm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/mm.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/mm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/mm.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-expand.o `test -f 'luatexdir/tex/expand.c' || echo '$(srcdir)/'`luatexdir/tex/expand.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/mm.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/mm.c -luatexdir/tex/liblua53tex_a-expand.obj: luatexdir/tex/expand.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-expand.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Tpo -c -o luatexdir/tex/liblua53tex_a-expand.obj `if test -f 'luatexdir/tex/expand.c'; then $(CYGPATH_W) 'luatexdir/tex/expand.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/expand.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/expand.c' object='luatexdir/tex/liblua53tex_a-expand.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj: luatexdir/luafontloader/fontforge/fontforge/mm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/mm.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/mm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/mm.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-mm.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/mm.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-expand.obj `if test -f 'luatexdir/tex/expand.c'; then $(CYGPATH_W) 'luatexdir/tex/expand.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/expand.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-mm.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/mm.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/mm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/mm.c'; fi` -luatexdir/tex/liblua53tex_a-extensions.o: luatexdir/tex/extensions.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-extensions.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Tpo -c -o luatexdir/tex/liblua53tex_a-extensions.o `test -f 'luatexdir/tex/extensions.c' || echo '$(srcdir)/'`luatexdir/tex/extensions.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/extensions.c' object='luatexdir/tex/liblua53tex_a-extensions.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o: luatexdir/luafontloader/fontforge/fontforge/namelist.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/namelist.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/namelist.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/namelist.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-extensions.o `test -f 'luatexdir/tex/extensions.c' || echo '$(srcdir)/'`luatexdir/tex/extensions.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/namelist.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/namelist.c -luatexdir/tex/liblua53tex_a-extensions.obj: luatexdir/tex/extensions.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-extensions.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Tpo -c -o luatexdir/tex/liblua53tex_a-extensions.obj `if test -f 'luatexdir/tex/extensions.c'; then $(CYGPATH_W) 'luatexdir/tex/extensions.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/extensions.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/extensions.c' object='luatexdir/tex/liblua53tex_a-extensions.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj: luatexdir/luafontloader/fontforge/fontforge/namelist.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/namelist.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/namelist.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/namelist.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-namelist.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/namelist.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-extensions.obj `if test -f 'luatexdir/tex/extensions.c'; then $(CYGPATH_W) 'luatexdir/tex/extensions.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/extensions.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-namelist.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/namelist.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/namelist.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/namelist.c'; fi` -luatexdir/tex/liblua53tex_a-filename.o: luatexdir/tex/filename.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-filename.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Tpo -c -o luatexdir/tex/liblua53tex_a-filename.o `test -f 'luatexdir/tex/filename.c' || echo '$(srcdir)/'`luatexdir/tex/filename.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/filename.c' object='luatexdir/tex/liblua53tex_a-filename.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o: luatexdir/luafontloader/fontforge/fontforge/noprefs.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/noprefs.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/noprefs.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-filename.o `test -f 'luatexdir/tex/filename.c' || echo '$(srcdir)/'`luatexdir/tex/filename.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/noprefs.c -luatexdir/tex/liblua53tex_a-filename.obj: luatexdir/tex/filename.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-filename.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Tpo -c -o luatexdir/tex/liblua53tex_a-filename.obj `if test -f 'luatexdir/tex/filename.c'; then $(CYGPATH_W) 'luatexdir/tex/filename.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/filename.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/filename.c' object='luatexdir/tex/liblua53tex_a-filename.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj: luatexdir/luafontloader/fontforge/fontforge/noprefs.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-noprefs.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/noprefs.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-filename.obj `if test -f 'luatexdir/tex/filename.c'; then $(CYGPATH_W) 'luatexdir/tex/filename.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/filename.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-noprefs.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/noprefs.c'; fi` -luatexdir/tex/liblua53tex_a-inputstack.o: luatexdir/tex/inputstack.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-inputstack.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Tpo -c -o luatexdir/tex/liblua53tex_a-inputstack.o `test -f 'luatexdir/tex/inputstack.c' || echo '$(srcdir)/'`luatexdir/tex/inputstack.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/inputstack.c' object='luatexdir/tex/liblua53tex_a-inputstack.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o: luatexdir/luafontloader/fontforge/fontforge/nouiutil.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/nouiutil.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/nouiutil.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-inputstack.o `test -f 'luatexdir/tex/inputstack.c' || echo '$(srcdir)/'`luatexdir/tex/inputstack.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/nouiutil.c -luatexdir/tex/liblua53tex_a-inputstack.obj: luatexdir/tex/inputstack.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-inputstack.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Tpo -c -o luatexdir/tex/liblua53tex_a-inputstack.obj `if test -f 'luatexdir/tex/inputstack.c'; then $(CYGPATH_W) 'luatexdir/tex/inputstack.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/inputstack.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/inputstack.c' object='luatexdir/tex/liblua53tex_a-inputstack.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj: luatexdir/luafontloader/fontforge/fontforge/nouiutil.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-nouiutil.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/nouiutil.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-inputstack.obj `if test -f 'luatexdir/tex/inputstack.c'; then $(CYGPATH_W) 'luatexdir/tex/inputstack.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/inputstack.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-nouiutil.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/nouiutil.c'; fi` -luatexdir/tex/liblua53tex_a-linebreak.o: luatexdir/tex/linebreak.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-linebreak.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Tpo -c -o luatexdir/tex/liblua53tex_a-linebreak.o `test -f 'luatexdir/tex/linebreak.c' || echo '$(srcdir)/'`luatexdir/tex/linebreak.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/linebreak.c' object='luatexdir/tex/liblua53tex_a-linebreak.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o: luatexdir/luafontloader/fontforge/fontforge/parsepfa.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsepfa.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsepfa.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-linebreak.o `test -f 'luatexdir/tex/linebreak.c' || echo '$(srcdir)/'`luatexdir/tex/linebreak.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsepfa.c -luatexdir/tex/liblua53tex_a-linebreak.obj: luatexdir/tex/linebreak.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-linebreak.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Tpo -c -o luatexdir/tex/liblua53tex_a-linebreak.obj `if test -f 'luatexdir/tex/linebreak.c'; then $(CYGPATH_W) 'luatexdir/tex/linebreak.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/linebreak.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/linebreak.c' object='luatexdir/tex/liblua53tex_a-linebreak.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj: luatexdir/luafontloader/fontforge/fontforge/parsepfa.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsepfa.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsepfa.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-linebreak.obj `if test -f 'luatexdir/tex/linebreak.c'; then $(CYGPATH_W) 'luatexdir/tex/linebreak.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/linebreak.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsepfa.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsepfa.c'; fi` -luatexdir/tex/liblua53tex_a-mainbody.o: luatexdir/tex/mainbody.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-mainbody.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Tpo -c -o luatexdir/tex/liblua53tex_a-mainbody.o `test -f 'luatexdir/tex/mainbody.c' || echo '$(srcdir)/'`luatexdir/tex/mainbody.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/mainbody.c' object='luatexdir/tex/liblua53tex_a-mainbody.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o: luatexdir/luafontloader/fontforge/fontforge/parsettf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsettf.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsettf.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-mainbody.o `test -f 'luatexdir/tex/mainbody.c' || echo '$(srcdir)/'`luatexdir/tex/mainbody.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsettf.c -luatexdir/tex/liblua53tex_a-mainbody.obj: luatexdir/tex/mainbody.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-mainbody.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Tpo -c -o luatexdir/tex/liblua53tex_a-mainbody.obj `if test -f 'luatexdir/tex/mainbody.c'; then $(CYGPATH_W) 'luatexdir/tex/mainbody.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/mainbody.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/mainbody.c' object='luatexdir/tex/liblua53tex_a-mainbody.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj: luatexdir/luafontloader/fontforge/fontforge/parsettf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsettf.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-mainbody.obj `if test -f 'luatexdir/tex/mainbody.c'; then $(CYGPATH_W) 'luatexdir/tex/mainbody.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/mainbody.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettf.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsettf.c'; fi` -luatexdir/tex/liblua53tex_a-maincontrol.o: luatexdir/tex/maincontrol.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-maincontrol.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Tpo -c -o luatexdir/tex/liblua53tex_a-maincontrol.o `test -f 'luatexdir/tex/maincontrol.c' || echo '$(srcdir)/'`luatexdir/tex/maincontrol.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/maincontrol.c' object='luatexdir/tex/liblua53tex_a-maincontrol.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o: luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-maincontrol.o `test -f 'luatexdir/tex/maincontrol.c' || echo '$(srcdir)/'`luatexdir/tex/maincontrol.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c -luatexdir/tex/liblua53tex_a-maincontrol.obj: luatexdir/tex/maincontrol.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-maincontrol.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Tpo -c -o luatexdir/tex/liblua53tex_a-maincontrol.obj `if test -f 'luatexdir/tex/maincontrol.c'; then $(CYGPATH_W) 'luatexdir/tex/maincontrol.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/maincontrol.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/maincontrol.c' object='luatexdir/tex/liblua53tex_a-maincontrol.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj: luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-parsettfatt.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-maincontrol.obj `if test -f 'luatexdir/tex/maincontrol.c'; then $(CYGPATH_W) 'luatexdir/tex/maincontrol.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/maincontrol.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-parsettfatt.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/parsettfatt.c'; fi` -luatexdir/tex/liblua53tex_a-mathcodes.o: luatexdir/tex/mathcodes.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-mathcodes.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Tpo -c -o luatexdir/tex/liblua53tex_a-mathcodes.o `test -f 'luatexdir/tex/mathcodes.c' || echo '$(srcdir)/'`luatexdir/tex/mathcodes.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/mathcodes.c' object='luatexdir/tex/liblua53tex_a-mathcodes.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o: luatexdir/luafontloader/fontforge/fontforge/psread.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/psread.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/psread.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/psread.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-mathcodes.o `test -f 'luatexdir/tex/mathcodes.c' || echo '$(srcdir)/'`luatexdir/tex/mathcodes.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/psread.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/psread.c -luatexdir/tex/liblua53tex_a-mathcodes.obj: luatexdir/tex/mathcodes.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-mathcodes.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Tpo -c -o luatexdir/tex/liblua53tex_a-mathcodes.obj `if test -f 'luatexdir/tex/mathcodes.c'; then $(CYGPATH_W) 'luatexdir/tex/mathcodes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/mathcodes.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/mathcodes.c' object='luatexdir/tex/liblua53tex_a-mathcodes.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj: luatexdir/luafontloader/fontforge/fontforge/psread.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/psread.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/psread.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/psread.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-psread.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/psread.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-mathcodes.obj `if test -f 'luatexdir/tex/mathcodes.c'; then $(CYGPATH_W) 'luatexdir/tex/mathcodes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/mathcodes.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-psread.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/psread.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/psread.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/psread.c'; fi` -luatexdir/tex/liblua53tex_a-memoryword.o: luatexdir/tex/memoryword.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-memoryword.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Tpo -c -o luatexdir/tex/liblua53tex_a-memoryword.o `test -f 'luatexdir/tex/memoryword.c' || echo '$(srcdir)/'`luatexdir/tex/memoryword.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/memoryword.c' object='luatexdir/tex/liblua53tex_a-memoryword.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o: luatexdir/luafontloader/fontforge/fontforge/pua.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/pua.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/pua.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/pua.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-memoryword.o `test -f 'luatexdir/tex/memoryword.c' || echo '$(srcdir)/'`luatexdir/tex/memoryword.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/pua.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/pua.c -luatexdir/tex/liblua53tex_a-memoryword.obj: luatexdir/tex/memoryword.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-memoryword.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Tpo -c -o luatexdir/tex/liblua53tex_a-memoryword.obj `if test -f 'luatexdir/tex/memoryword.c'; then $(CYGPATH_W) 'luatexdir/tex/memoryword.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/memoryword.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/memoryword.c' object='luatexdir/tex/liblua53tex_a-memoryword.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj: luatexdir/luafontloader/fontforge/fontforge/pua.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/pua.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/pua.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/pua.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-pua.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/pua.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-memoryword.obj `if test -f 'luatexdir/tex/memoryword.c'; then $(CYGPATH_W) 'luatexdir/tex/memoryword.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/memoryword.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-pua.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/pua.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/pua.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/pua.c'; fi` -luatexdir/tex/liblua53tex_a-mlist.o: luatexdir/tex/mlist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-mlist.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Tpo -c -o luatexdir/tex/liblua53tex_a-mlist.o `test -f 'luatexdir/tex/mlist.c' || echo '$(srcdir)/'`luatexdir/tex/mlist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/mlist.c' object='luatexdir/tex/liblua53tex_a-mlist.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o: luatexdir/luafontloader/fontforge/fontforge/python.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/python.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/python.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/python.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-mlist.o `test -f 'luatexdir/tex/mlist.c' || echo '$(srcdir)/'`luatexdir/tex/mlist.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-python.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/python.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/python.c -luatexdir/tex/liblua53tex_a-mlist.obj: luatexdir/tex/mlist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-mlist.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Tpo -c -o luatexdir/tex/liblua53tex_a-mlist.obj `if test -f 'luatexdir/tex/mlist.c'; then $(CYGPATH_W) 'luatexdir/tex/mlist.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/mlist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/mlist.c' object='luatexdir/tex/liblua53tex_a-mlist.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj: luatexdir/luafontloader/fontforge/fontforge/python.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/python.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/python.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/python.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-python.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/python.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-mlist.obj `if test -f 'luatexdir/tex/mlist.c'; then $(CYGPATH_W) 'luatexdir/tex/mlist.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/mlist.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-python.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/python.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/python.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/python.c'; fi` -luatexdir/tex/liblua53tex_a-nesting.o: luatexdir/tex/nesting.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-nesting.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Tpo -c -o luatexdir/tex/liblua53tex_a-nesting.o `test -f 'luatexdir/tex/nesting.c' || echo '$(srcdir)/'`luatexdir/tex/nesting.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/nesting.c' object='luatexdir/tex/liblua53tex_a-nesting.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o: luatexdir/luafontloader/fontforge/fontforge/sfd1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/sfd1.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/sfd1.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-nesting.o `test -f 'luatexdir/tex/nesting.c' || echo '$(srcdir)/'`luatexdir/tex/nesting.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/sfd1.c -luatexdir/tex/liblua53tex_a-nesting.obj: luatexdir/tex/nesting.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-nesting.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Tpo -c -o luatexdir/tex/liblua53tex_a-nesting.obj `if test -f 'luatexdir/tex/nesting.c'; then $(CYGPATH_W) 'luatexdir/tex/nesting.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/nesting.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/nesting.c' object='luatexdir/tex/liblua53tex_a-nesting.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj: luatexdir/luafontloader/fontforge/fontforge/sfd1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-sfd1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/sfd1.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-nesting.obj `if test -f 'luatexdir/tex/nesting.c'; then $(CYGPATH_W) 'luatexdir/tex/nesting.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/nesting.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-sfd1.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/sfd1.c'; fi` -luatexdir/tex/liblua53tex_a-packaging.o: luatexdir/tex/packaging.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-packaging.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Tpo -c -o luatexdir/tex/liblua53tex_a-packaging.o `test -f 'luatexdir/tex/packaging.c' || echo '$(srcdir)/'`luatexdir/tex/packaging.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/packaging.c' object='luatexdir/tex/liblua53tex_a-packaging.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o: luatexdir/luafontloader/fontforge/fontforge/splinechar.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinechar.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinechar.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-packaging.o `test -f 'luatexdir/tex/packaging.c' || echo '$(srcdir)/'`luatexdir/tex/packaging.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinechar.c -luatexdir/tex/liblua53tex_a-packaging.obj: luatexdir/tex/packaging.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-packaging.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Tpo -c -o luatexdir/tex/liblua53tex_a-packaging.obj `if test -f 'luatexdir/tex/packaging.c'; then $(CYGPATH_W) 'luatexdir/tex/packaging.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/packaging.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/packaging.c' object='luatexdir/tex/liblua53tex_a-packaging.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj: luatexdir/luafontloader/fontforge/fontforge/splinechar.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinechar.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinechar.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-packaging.obj `if test -f 'luatexdir/tex/packaging.c'; then $(CYGPATH_W) 'luatexdir/tex/packaging.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/packaging.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinechar.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinechar.c'; fi` -luatexdir/tex/liblua53tex_a-postlinebreak.o: luatexdir/tex/postlinebreak.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-postlinebreak.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Tpo -c -o luatexdir/tex/liblua53tex_a-postlinebreak.o `test -f 'luatexdir/tex/postlinebreak.c' || echo '$(srcdir)/'`luatexdir/tex/postlinebreak.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/postlinebreak.c' object='luatexdir/tex/liblua53tex_a-postlinebreak.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o: luatexdir/luafontloader/fontforge/fontforge/splinefill.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinefill.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinefill.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-postlinebreak.o `test -f 'luatexdir/tex/postlinebreak.c' || echo '$(srcdir)/'`luatexdir/tex/postlinebreak.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinefill.c -luatexdir/tex/liblua53tex_a-postlinebreak.obj: luatexdir/tex/postlinebreak.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-postlinebreak.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Tpo -c -o luatexdir/tex/liblua53tex_a-postlinebreak.obj `if test -f 'luatexdir/tex/postlinebreak.c'; then $(CYGPATH_W) 'luatexdir/tex/postlinebreak.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/postlinebreak.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/postlinebreak.c' object='luatexdir/tex/liblua53tex_a-postlinebreak.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj: luatexdir/luafontloader/fontforge/fontforge/splinefill.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefill.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinefill.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-postlinebreak.obj `if test -f 'luatexdir/tex/postlinebreak.c'; then $(CYGPATH_W) 'luatexdir/tex/postlinebreak.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/postlinebreak.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefill.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinefill.c'; fi` -luatexdir/tex/liblua53tex_a-primitive.o: luatexdir/tex/primitive.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-primitive.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Tpo -c -o luatexdir/tex/liblua53tex_a-primitive.o `test -f 'luatexdir/tex/primitive.c' || echo '$(srcdir)/'`luatexdir/tex/primitive.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/primitive.c' object='luatexdir/tex/liblua53tex_a-primitive.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o: luatexdir/luafontloader/fontforge/fontforge/splinefont.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinefont.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinefont.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-primitive.o `test -f 'luatexdir/tex/primitive.c' || echo '$(srcdir)/'`luatexdir/tex/primitive.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinefont.c -luatexdir/tex/liblua53tex_a-primitive.obj: luatexdir/tex/primitive.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-primitive.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Tpo -c -o luatexdir/tex/liblua53tex_a-primitive.obj `if test -f 'luatexdir/tex/primitive.c'; then $(CYGPATH_W) 'luatexdir/tex/primitive.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/primitive.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/primitive.c' object='luatexdir/tex/liblua53tex_a-primitive.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj: luatexdir/luafontloader/fontforge/fontforge/splinefont.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinefont.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinefont.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-primitive.obj `if test -f 'luatexdir/tex/primitive.c'; then $(CYGPATH_W) 'luatexdir/tex/primitive.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/primitive.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinefont.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinefont.c'; fi` -luatexdir/tex/liblua53tex_a-printing.o: luatexdir/tex/printing.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-printing.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Tpo -c -o luatexdir/tex/liblua53tex_a-printing.o `test -f 'luatexdir/tex/printing.c' || echo '$(srcdir)/'`luatexdir/tex/printing.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/printing.c' object='luatexdir/tex/liblua53tex_a-printing.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o: luatexdir/luafontloader/fontforge/fontforge/splineorder2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineorder2.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineorder2.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-printing.o `test -f 'luatexdir/tex/printing.c' || echo '$(srcdir)/'`luatexdir/tex/printing.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineorder2.c -luatexdir/tex/liblua53tex_a-printing.obj: luatexdir/tex/printing.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-printing.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Tpo -c -o luatexdir/tex/liblua53tex_a-printing.obj `if test -f 'luatexdir/tex/printing.c'; then $(CYGPATH_W) 'luatexdir/tex/printing.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/printing.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/printing.c' object='luatexdir/tex/liblua53tex_a-printing.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj: luatexdir/luafontloader/fontforge/fontforge/splineorder2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineorder2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineorder2.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-printing.obj `if test -f 'luatexdir/tex/printing.c'; then $(CYGPATH_W) 'luatexdir/tex/printing.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/printing.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineorder2.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineorder2.c'; fi` -luatexdir/tex/liblua53tex_a-scanning.o: luatexdir/tex/scanning.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-scanning.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Tpo -c -o luatexdir/tex/liblua53tex_a-scanning.o `test -f 'luatexdir/tex/scanning.c' || echo '$(srcdir)/'`luatexdir/tex/scanning.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/scanning.c' object='luatexdir/tex/liblua53tex_a-scanning.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o: luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-scanning.o `test -f 'luatexdir/tex/scanning.c' || echo '$(srcdir)/'`luatexdir/tex/scanning.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c -luatexdir/tex/liblua53tex_a-scanning.obj: luatexdir/tex/scanning.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-scanning.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Tpo -c -o luatexdir/tex/liblua53tex_a-scanning.obj `if test -f 'luatexdir/tex/scanning.c'; then $(CYGPATH_W) 'luatexdir/tex/scanning.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/scanning.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/scanning.c' object='luatexdir/tex/liblua53tex_a-scanning.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj: luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineoverlap.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-scanning.obj `if test -f 'luatexdir/tex/scanning.c'; then $(CYGPATH_W) 'luatexdir/tex/scanning.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/scanning.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineoverlap.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineoverlap.c'; fi` -luatexdir/tex/liblua53tex_a-stringpool.o: luatexdir/tex/stringpool.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-stringpool.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Tpo -c -o luatexdir/tex/liblua53tex_a-stringpool.o `test -f 'luatexdir/tex/stringpool.c' || echo '$(srcdir)/'`luatexdir/tex/stringpool.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/stringpool.c' object='luatexdir/tex/liblua53tex_a-stringpool.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o: luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-stringpool.o `test -f 'luatexdir/tex/stringpool.c' || echo '$(srcdir)/'`luatexdir/tex/stringpool.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c -luatexdir/tex/liblua53tex_a-stringpool.obj: luatexdir/tex/stringpool.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-stringpool.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Tpo -c -o luatexdir/tex/liblua53tex_a-stringpool.obj `if test -f 'luatexdir/tex/stringpool.c'; then $(CYGPATH_W) 'luatexdir/tex/stringpool.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/stringpool.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/stringpool.c' object='luatexdir/tex/liblua53tex_a-stringpool.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj: luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinerefigure.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-stringpool.obj `if test -f 'luatexdir/tex/stringpool.c'; then $(CYGPATH_W) 'luatexdir/tex/stringpool.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/stringpool.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinerefigure.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinerefigure.c'; fi` -luatexdir/tex/liblua53tex_a-texdeffont.o: luatexdir/tex/texdeffont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-texdeffont.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Tpo -c -o luatexdir/tex/liblua53tex_a-texdeffont.o `test -f 'luatexdir/tex/texdeffont.c' || echo '$(srcdir)/'`luatexdir/tex/texdeffont.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/texdeffont.c' object='luatexdir/tex/liblua53tex_a-texdeffont.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o: luatexdir/luafontloader/fontforge/fontforge/splinesave.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinesave.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinesave.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-texdeffont.o `test -f 'luatexdir/tex/texdeffont.c' || echo '$(srcdir)/'`luatexdir/tex/texdeffont.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinesave.c -luatexdir/tex/liblua53tex_a-texdeffont.obj: luatexdir/tex/texdeffont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-texdeffont.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Tpo -c -o luatexdir/tex/liblua53tex_a-texdeffont.obj `if test -f 'luatexdir/tex/texdeffont.c'; then $(CYGPATH_W) 'luatexdir/tex/texdeffont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/texdeffont.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/texdeffont.c' object='luatexdir/tex/liblua53tex_a-texdeffont.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj: luatexdir/luafontloader/fontforge/fontforge/splinesave.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesave.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinesave.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-texdeffont.obj `if test -f 'luatexdir/tex/texdeffont.c'; then $(CYGPATH_W) 'luatexdir/tex/texdeffont.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/texdeffont.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesave.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinesave.c'; fi` -luatexdir/tex/liblua53tex_a-texfileio.o: luatexdir/tex/texfileio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-texfileio.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Tpo -c -o luatexdir/tex/liblua53tex_a-texfileio.o `test -f 'luatexdir/tex/texfileio.c' || echo '$(srcdir)/'`luatexdir/tex/texfileio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/texfileio.c' object='luatexdir/tex/liblua53tex_a-texfileio.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o: luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-texfileio.o `test -f 'luatexdir/tex/texfileio.c' || echo '$(srcdir)/'`luatexdir/tex/texfileio.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c -luatexdir/tex/liblua53tex_a-texfileio.obj: luatexdir/tex/texfileio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-texfileio.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Tpo -c -o luatexdir/tex/liblua53tex_a-texfileio.obj `if test -f 'luatexdir/tex/texfileio.c'; then $(CYGPATH_W) 'luatexdir/tex/texfileio.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/texfileio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/texfileio.c' object='luatexdir/tex/liblua53tex_a-texfileio.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj: luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinesaveafm.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-texfileio.obj `if test -f 'luatexdir/tex/texfileio.c'; then $(CYGPATH_W) 'luatexdir/tex/texfileio.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/texfileio.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinesaveafm.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinesaveafm.c'; fi` -luatexdir/tex/liblua53tex_a-texmath.o: luatexdir/tex/texmath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-texmath.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Tpo -c -o luatexdir/tex/liblua53tex_a-texmath.o `test -f 'luatexdir/tex/texmath.c' || echo '$(srcdir)/'`luatexdir/tex/texmath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/texmath.c' object='luatexdir/tex/liblua53tex_a-texmath.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o: luatexdir/luafontloader/fontforge/fontforge/splinestroke.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinestroke.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinestroke.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-texmath.o `test -f 'luatexdir/tex/texmath.c' || echo '$(srcdir)/'`luatexdir/tex/texmath.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splinestroke.c -luatexdir/tex/liblua53tex_a-texmath.obj: luatexdir/tex/texmath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-texmath.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Tpo -c -o luatexdir/tex/liblua53tex_a-texmath.obj `if test -f 'luatexdir/tex/texmath.c'; then $(CYGPATH_W) 'luatexdir/tex/texmath.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/texmath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/texmath.c' object='luatexdir/tex/liblua53tex_a-texmath.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj: luatexdir/luafontloader/fontforge/fontforge/splinestroke.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splinestroke.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splinestroke.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-texmath.obj `if test -f 'luatexdir/tex/texmath.c'; then $(CYGPATH_W) 'luatexdir/tex/texmath.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/texmath.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splinestroke.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splinestroke.c'; fi` -luatexdir/tex/liblua53tex_a-texnodes.o: luatexdir/tex/texnodes.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-texnodes.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Tpo -c -o luatexdir/tex/liblua53tex_a-texnodes.o `test -f 'luatexdir/tex/texnodes.c' || echo '$(srcdir)/'`luatexdir/tex/texnodes.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/texnodes.c' object='luatexdir/tex/liblua53tex_a-texnodes.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o: luatexdir/luafontloader/fontforge/fontforge/splineutil.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineutil.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineutil.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-texnodes.o `test -f 'luatexdir/tex/texnodes.c' || echo '$(srcdir)/'`luatexdir/tex/texnodes.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineutil.c -luatexdir/tex/liblua53tex_a-texnodes.obj: luatexdir/tex/texnodes.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-texnodes.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Tpo -c -o luatexdir/tex/liblua53tex_a-texnodes.obj `if test -f 'luatexdir/tex/texnodes.c'; then $(CYGPATH_W) 'luatexdir/tex/texnodes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/texnodes.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/texnodes.c' object='luatexdir/tex/liblua53tex_a-texnodes.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj: luatexdir/luafontloader/fontforge/fontforge/splineutil.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineutil.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-texnodes.obj `if test -f 'luatexdir/tex/texnodes.c'; then $(CYGPATH_W) 'luatexdir/tex/texnodes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/texnodes.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineutil.c'; fi` -luatexdir/tex/liblua53tex_a-textcodes.o: luatexdir/tex/textcodes.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-textcodes.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Tpo -c -o luatexdir/tex/liblua53tex_a-textcodes.o `test -f 'luatexdir/tex/textcodes.c' || echo '$(srcdir)/'`luatexdir/tex/textcodes.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/textcodes.c' object='luatexdir/tex/liblua53tex_a-textcodes.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o: luatexdir/luafontloader/fontforge/fontforge/splineutil2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineutil2.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineutil2.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-textcodes.o `test -f 'luatexdir/tex/textcodes.c' || echo '$(srcdir)/'`luatexdir/tex/textcodes.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/splineutil2.c -luatexdir/tex/liblua53tex_a-textcodes.obj: luatexdir/tex/textcodes.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-textcodes.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Tpo -c -o luatexdir/tex/liblua53tex_a-textcodes.obj `if test -f 'luatexdir/tex/textcodes.c'; then $(CYGPATH_W) 'luatexdir/tex/textcodes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/textcodes.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/textcodes.c' object='luatexdir/tex/liblua53tex_a-textcodes.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj: luatexdir/luafontloader/fontforge/fontforge/splineutil2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-splineutil2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/splineutil2.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-textcodes.obj `if test -f 'luatexdir/tex/textcodes.c'; then $(CYGPATH_W) 'luatexdir/tex/textcodes.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/textcodes.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-splineutil2.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/splineutil2.c'; fi` -luatexdir/tex/liblua53tex_a-textoken.o: luatexdir/tex/textoken.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-textoken.o -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Tpo -c -o luatexdir/tex/liblua53tex_a-textoken.o `test -f 'luatexdir/tex/textoken.c' || echo '$(srcdir)/'`luatexdir/tex/textoken.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/textoken.c' object='luatexdir/tex/liblua53tex_a-textoken.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o: luatexdir/luafontloader/fontforge/fontforge/start.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/start.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/start.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/start.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-textoken.o `test -f 'luatexdir/tex/textoken.c' || echo '$(srcdir)/'`luatexdir/tex/textoken.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-start.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/start.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/start.c -luatexdir/tex/liblua53tex_a-textoken.obj: luatexdir/tex/textoken.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/tex/liblua53tex_a-textoken.obj -MD -MP -MF luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Tpo -c -o luatexdir/tex/liblua53tex_a-textoken.obj `if test -f 'luatexdir/tex/textoken.c'; then $(CYGPATH_W) 'luatexdir/tex/textoken.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/textoken.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Tpo luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/tex/textoken.c' object='luatexdir/tex/liblua53tex_a-textoken.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj: luatexdir/luafontloader/fontforge/fontforge/start.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/start.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/start.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/start.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-start.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/start.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/tex/liblua53tex_a-textoken.obj `if test -f 'luatexdir/tex/textoken.c'; then $(CYGPATH_W) 'luatexdir/tex/textoken.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/tex/textoken.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-start.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/start.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/start.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/start.c'; fi` -luatexdir/utils/liblua53tex_a-avl.o: luatexdir/utils/avl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-avl.o -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Tpo -c -o luatexdir/utils/liblua53tex_a-avl.o `test -f 'luatexdir/utils/avl.c' || echo '$(srcdir)/'`luatexdir/utils/avl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/avl.c' object='luatexdir/utils/liblua53tex_a-avl.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o: luatexdir/luafontloader/fontforge/fontforge/stemdb.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/stemdb.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/stemdb.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-avl.o `test -f 'luatexdir/utils/avl.c' || echo '$(srcdir)/'`luatexdir/utils/avl.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/stemdb.c -luatexdir/utils/liblua53tex_a-avl.obj: luatexdir/utils/avl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-avl.obj -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Tpo -c -o luatexdir/utils/liblua53tex_a-avl.obj `if test -f 'luatexdir/utils/avl.c'; then $(CYGPATH_W) 'luatexdir/utils/avl.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/avl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/avl.c' object='luatexdir/utils/liblua53tex_a-avl.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj: luatexdir/luafontloader/fontforge/fontforge/stemdb.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-stemdb.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/stemdb.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-avl.obj `if test -f 'luatexdir/utils/avl.c'; then $(CYGPATH_W) 'luatexdir/utils/avl.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/avl.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-stemdb.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/stemdb.c'; fi` -luatexdir/utils/liblua53tex_a-avlstuff.o: luatexdir/utils/avlstuff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-avlstuff.o -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Tpo -c -o luatexdir/utils/liblua53tex_a-avlstuff.o `test -f 'luatexdir/utils/avlstuff.c' || echo '$(srcdir)/'`luatexdir/utils/avlstuff.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/avlstuff.c' object='luatexdir/utils/liblua53tex_a-avlstuff.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o: luatexdir/luafontloader/fontforge/fontforge/tottf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/tottf.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/tottf.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/tottf.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-avlstuff.o `test -f 'luatexdir/utils/avlstuff.c' || echo '$(srcdir)/'`luatexdir/utils/avlstuff.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/tottf.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/tottf.c -luatexdir/utils/liblua53tex_a-avlstuff.obj: luatexdir/utils/avlstuff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-avlstuff.obj -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Tpo -c -o luatexdir/utils/liblua53tex_a-avlstuff.obj `if test -f 'luatexdir/utils/avlstuff.c'; then $(CYGPATH_W) 'luatexdir/utils/avlstuff.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/avlstuff.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/avlstuff.c' object='luatexdir/utils/liblua53tex_a-avlstuff.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj: luatexdir/luafontloader/fontforge/fontforge/tottf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/tottf.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/tottf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/tottf.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/tottf.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-avlstuff.obj `if test -f 'luatexdir/utils/avlstuff.c'; then $(CYGPATH_W) 'luatexdir/utils/avlstuff.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/avlstuff.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottf.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/tottf.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/tottf.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/tottf.c'; fi` -luatexdir/utils/liblua53tex_a-managed-sa.o: luatexdir/utils/managed-sa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-managed-sa.o -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Tpo -c -o luatexdir/utils/liblua53tex_a-managed-sa.o `test -f 'luatexdir/utils/managed-sa.c' || echo '$(srcdir)/'`luatexdir/utils/managed-sa.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/managed-sa.c' object='luatexdir/utils/liblua53tex_a-managed-sa.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o: luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-managed-sa.o `test -f 'luatexdir/utils/managed-sa.c' || echo '$(srcdir)/'`luatexdir/utils/managed-sa.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c -luatexdir/utils/liblua53tex_a-managed-sa.obj: luatexdir/utils/managed-sa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-managed-sa.obj -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Tpo -c -o luatexdir/utils/liblua53tex_a-managed-sa.obj `if test -f 'luatexdir/utils/managed-sa.c'; then $(CYGPATH_W) 'luatexdir/utils/managed-sa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/managed-sa.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/managed-sa.c' object='luatexdir/utils/liblua53tex_a-managed-sa.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj: luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-managed-sa.obj `if test -f 'luatexdir/utils/managed-sa.c'; then $(CYGPATH_W) 'luatexdir/utils/managed-sa.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/managed-sa.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-tottfgpos.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/tottfgpos.c'; fi` -luatexdir/utils/liblua53tex_a-unistring.o: luatexdir/utils/unistring.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-unistring.o -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Tpo -c -o luatexdir/utils/liblua53tex_a-unistring.o `test -f 'luatexdir/utils/unistring.c' || echo '$(srcdir)/'`luatexdir/utils/unistring.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/unistring.c' object='luatexdir/utils/liblua53tex_a-unistring.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o: luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-unistring.o `test -f 'luatexdir/utils/unistring.c' || echo '$(srcdir)/'`luatexdir/utils/unistring.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.o `test -f 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c -luatexdir/utils/liblua53tex_a-unistring.obj: luatexdir/utils/unistring.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-unistring.obj -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Tpo -c -o luatexdir/utils/liblua53tex_a-unistring.obj `if test -f 'luatexdir/utils/unistring.c'; then $(CYGPATH_W) 'luatexdir/utils/unistring.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/unistring.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/unistring.c' object='luatexdir/utils/liblua53tex_a-unistring.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj: luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj -MD -MP -MF luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Tpo -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Tpo luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c' object='luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-unistring.obj `if test -f 'luatexdir/utils/unistring.c'; then $(CYGPATH_W) 'luatexdir/utils/unistring.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/unistring.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/fontforge/libff_a-ttfspecial.obj `if test -f 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/fontforge/ttfspecial.c'; fi` -luatexdir/utils/liblua53tex_a-utils.o: luatexdir/utils/utils.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-utils.o -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Tpo -c -o luatexdir/utils/liblua53tex_a-utils.o `test -f 'luatexdir/utils/utils.c' || echo '$(srcdir)/'`luatexdir/utils/utils.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/utils.c' object='luatexdir/utils/liblua53tex_a-utils.o' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o: luatexdir/luafontloader/fontforge/gutils/fsys.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o -MD -MP -MF luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Tpo -c -o luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o `test -f 'luatexdir/luafontloader/fontforge/gutils/fsys.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/gutils/fsys.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Tpo luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/gutils/fsys.c' object='luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-utils.o `test -f 'luatexdir/utils/utils.c' || echo '$(srcdir)/'`luatexdir/utils/utils.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.o `test -f 'luatexdir/luafontloader/fontforge/gutils/fsys.c' || echo '$(srcdir)/'`luatexdir/luafontloader/fontforge/gutils/fsys.c -luatexdir/utils/liblua53tex_a-utils.obj: luatexdir/utils/utils.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/liblua53tex_a-utils.obj -MD -MP -MF luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Tpo -c -o luatexdir/utils/liblua53tex_a-utils.obj `if test -f 'luatexdir/utils/utils.c'; then $(CYGPATH_W) 'luatexdir/utils/utils.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/utils.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Tpo luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/utils/utils.c' object='luatexdir/utils/liblua53tex_a-utils.obj' libtool=no @AMDEPBACKSLASH@ +luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj: luatexdir/luafontloader/fontforge/gutils/fsys.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -MT luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj -MD -MP -MF luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Tpo -c -o luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj `if test -f 'luatexdir/luafontloader/fontforge/gutils/fsys.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/gutils/fsys.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/gutils/fsys.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Tpo luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luafontloader/fontforge/gutils/fsys.c' object='luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/utils/liblua53tex_a-utils.obj `if test -f 'luatexdir/utils/utils.c'; then $(CYGPATH_W) 'luatexdir/utils/utils.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/utils/utils.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libff_a_CPPFLAGS) $(CPPFLAGS) $(libff_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luafontloader/fontforge/gutils/libff_a-fsys.obj `if test -f 'luatexdir/luafontloader/fontforge/gutils/fsys.c'; then $(CYGPATH_W) 'luatexdir/luafontloader/fontforge/gutils/fsys.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luafontloader/fontforge/gutils/fsys.c'; fi` -synctexdir/liblua53tex_a-synctex.o: synctexdir/synctex.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT synctexdir/liblua53tex_a-synctex.o -MD -MP -MF synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Tpo -c -o synctexdir/liblua53tex_a-synctex.o `test -f 'synctexdir/synctex.c' || echo '$(srcdir)/'`synctexdir/synctex.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Tpo synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='synctexdir/synctex.c' object='synctexdir/liblua53tex_a-synctex.o' libtool=no @AMDEPBACKSLASH@ +ptexdir/libkanji_a-kanji.o: ptexdir/kanji.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libkanji_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ptexdir/libkanji_a-kanji.o -MD -MP -MF ptexdir/$(DEPDIR)/libkanji_a-kanji.Tpo -c -o ptexdir/libkanji_a-kanji.o `test -f 'ptexdir/kanji.c' || echo '$(srcdir)/'`ptexdir/kanji.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ptexdir/$(DEPDIR)/libkanji_a-kanji.Tpo ptexdir/$(DEPDIR)/libkanji_a-kanji.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ptexdir/kanji.c' object='ptexdir/libkanji_a-kanji.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o synctexdir/liblua53tex_a-synctex.o `test -f 'synctexdir/synctex.c' || echo '$(srcdir)/'`synctexdir/synctex.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libkanji_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ptexdir/libkanji_a-kanji.o `test -f 'ptexdir/kanji.c' || echo '$(srcdir)/'`ptexdir/kanji.c -synctexdir/liblua53tex_a-synctex.obj: synctexdir/synctex.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT synctexdir/liblua53tex_a-synctex.obj -MD -MP -MF synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Tpo -c -o synctexdir/liblua53tex_a-synctex.obj `if test -f 'synctexdir/synctex.c'; then $(CYGPATH_W) 'synctexdir/synctex.c'; else $(CYGPATH_W) '$(srcdir)/synctexdir/synctex.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Tpo synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='synctexdir/synctex.c' object='synctexdir/liblua53tex_a-synctex.obj' libtool=no @AMDEPBACKSLASH@ +ptexdir/libkanji_a-kanji.obj: ptexdir/kanji.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libkanji_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ptexdir/libkanji_a-kanji.obj -MD -MP -MF ptexdir/$(DEPDIR)/libkanji_a-kanji.Tpo -c -o ptexdir/libkanji_a-kanji.obj `if test -f 'ptexdir/kanji.c'; then $(CYGPATH_W) 'ptexdir/kanji.c'; else $(CYGPATH_W) '$(srcdir)/ptexdir/kanji.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ptexdir/$(DEPDIR)/libkanji_a-kanji.Tpo ptexdir/$(DEPDIR)/libkanji_a-kanji.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ptexdir/kanji.c' object='ptexdir/libkanji_a-kanji.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblua53tex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o synctexdir/liblua53tex_a-synctex.obj `if test -f 'synctexdir/synctex.c'; then $(CYGPATH_W) 'synctexdir/synctex.c'; else $(CYGPATH_W) '$(srcdir)/synctexdir/synctex.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libkanji_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ptexdir/libkanji_a-kanji.obj `if test -f 'ptexdir/kanji.c'; then $(CYGPATH_W) 'ptexdir/kanji.c'; else $(CYGPATH_W) '$(srcdir)/ptexdir/kanji.c'; fi` luatexdir/luaffi/libluaffi_a-call.o: luatexdir/luaffi/call.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluaffi_a_CPPFLAGS) $(CPPFLAGS) $(libluaffi_a_CFLAGS) $(CFLAGS) -MT luatexdir/luaffi/libluaffi_a-call.o -MD -MP -MF luatexdir/luaffi/$(DEPDIR)/libluaffi_a-call.Tpo -c -o luatexdir/luaffi/libluaffi_a-call.o `test -f 'luatexdir/luaffi/call.c' || echo '$(srcdir)/'`luatexdir/luaffi/call.c @@ -11941,6 +8636,48 @@ luatexdir/luapplib/libluajitpplib_a-ppstream.obj: luatexdir/luapplib/ppstream.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluajitpplib_a-ppstream.obj `if test -f 'luatexdir/luapplib/ppstream.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppstream.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppstream.c'; fi` +luatexdir/luapplib/libluajitpplib_a-pptest1.o: luatexdir/luapplib/pptest1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluajitpplib_a-pptest1.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Tpo -c -o luatexdir/luapplib/libluajitpplib_a-pptest1.o `test -f 'luatexdir/luapplib/pptest1.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest1.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Tpo luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest1.c' object='luatexdir/luapplib/libluajitpplib_a-pptest1.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluajitpplib_a-pptest1.o `test -f 'luatexdir/luapplib/pptest1.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest1.c + +luatexdir/luapplib/libluajitpplib_a-pptest1.obj: luatexdir/luapplib/pptest1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluajitpplib_a-pptest1.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Tpo -c -o luatexdir/luapplib/libluajitpplib_a-pptest1.obj `if test -f 'luatexdir/luapplib/pptest1.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest1.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Tpo luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest1.c' object='luatexdir/luapplib/libluajitpplib_a-pptest1.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluajitpplib_a-pptest1.obj `if test -f 'luatexdir/luapplib/pptest1.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest1.c'; fi` + +luatexdir/luapplib/libluajitpplib_a-pptest2.o: luatexdir/luapplib/pptest2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluajitpplib_a-pptest2.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Tpo -c -o luatexdir/luapplib/libluajitpplib_a-pptest2.o `test -f 'luatexdir/luapplib/pptest2.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest2.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Tpo luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest2.c' object='luatexdir/luapplib/libluajitpplib_a-pptest2.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluajitpplib_a-pptest2.o `test -f 'luatexdir/luapplib/pptest2.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest2.c + +luatexdir/luapplib/libluajitpplib_a-pptest2.obj: luatexdir/luapplib/pptest2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluajitpplib_a-pptest2.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Tpo -c -o luatexdir/luapplib/libluajitpplib_a-pptest2.obj `if test -f 'luatexdir/luapplib/pptest2.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest2.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Tpo luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest2.c' object='luatexdir/luapplib/libluajitpplib_a-pptest2.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluajitpplib_a-pptest2.obj `if test -f 'luatexdir/luapplib/pptest2.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest2.c'; fi` + +luatexdir/luapplib/libluajitpplib_a-pptest3.o: luatexdir/luapplib/pptest3.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluajitpplib_a-pptest3.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Tpo -c -o luatexdir/luapplib/libluajitpplib_a-pptest3.o `test -f 'luatexdir/luapplib/pptest3.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest3.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Tpo luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest3.c' object='luatexdir/luapplib/libluajitpplib_a-pptest3.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluajitpplib_a-pptest3.o `test -f 'luatexdir/luapplib/pptest3.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest3.c + +luatexdir/luapplib/libluajitpplib_a-pptest3.obj: luatexdir/luapplib/pptest3.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluajitpplib_a-pptest3.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Tpo -c -o luatexdir/luapplib/libluajitpplib_a-pptest3.obj `if test -f 'luatexdir/luapplib/pptest3.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest3.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Tpo luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest3.c' object='luatexdir/luapplib/libluajitpplib_a-pptest3.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluajitpplib_a-pptest3.obj `if test -f 'luatexdir/luapplib/pptest3.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest3.c'; fi` + luatexdir/luapplib/libluajitpplib_a-ppxref.o: luatexdir/luapplib/ppxref.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluajitpplib_a-ppxref.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppxref.Tpo -c -o luatexdir/luapplib/libluajitpplib_a-ppxref.o `test -f 'luatexdir/luapplib/ppxref.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppxref.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppxref.Tpo luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppxref.Po @@ -14181,6 +10918,48 @@ luatexdir/luapplib/libluapplib_a-ppstream.obj: luatexdir/luapplib/ppstream.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluapplib_a-ppstream.obj `if test -f 'luatexdir/luapplib/ppstream.c'; then $(CYGPATH_W) 'luatexdir/luapplib/ppstream.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/ppstream.c'; fi` +luatexdir/luapplib/libluapplib_a-pptest1.o: luatexdir/luapplib/pptest1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluapplib_a-pptest1.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Tpo -c -o luatexdir/luapplib/libluapplib_a-pptest1.o `test -f 'luatexdir/luapplib/pptest1.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest1.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Tpo luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest1.c' object='luatexdir/luapplib/libluapplib_a-pptest1.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluapplib_a-pptest1.o `test -f 'luatexdir/luapplib/pptest1.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest1.c + +luatexdir/luapplib/libluapplib_a-pptest1.obj: luatexdir/luapplib/pptest1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluapplib_a-pptest1.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Tpo -c -o luatexdir/luapplib/libluapplib_a-pptest1.obj `if test -f 'luatexdir/luapplib/pptest1.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest1.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Tpo luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest1.c' object='luatexdir/luapplib/libluapplib_a-pptest1.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluapplib_a-pptest1.obj `if test -f 'luatexdir/luapplib/pptest1.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest1.c'; fi` + +luatexdir/luapplib/libluapplib_a-pptest2.o: luatexdir/luapplib/pptest2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluapplib_a-pptest2.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Tpo -c -o luatexdir/luapplib/libluapplib_a-pptest2.o `test -f 'luatexdir/luapplib/pptest2.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest2.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Tpo luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest2.c' object='luatexdir/luapplib/libluapplib_a-pptest2.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluapplib_a-pptest2.o `test -f 'luatexdir/luapplib/pptest2.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest2.c + +luatexdir/luapplib/libluapplib_a-pptest2.obj: luatexdir/luapplib/pptest2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluapplib_a-pptest2.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Tpo -c -o luatexdir/luapplib/libluapplib_a-pptest2.obj `if test -f 'luatexdir/luapplib/pptest2.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest2.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Tpo luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest2.c' object='luatexdir/luapplib/libluapplib_a-pptest2.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluapplib_a-pptest2.obj `if test -f 'luatexdir/luapplib/pptest2.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest2.c'; fi` + +luatexdir/luapplib/libluapplib_a-pptest3.o: luatexdir/luapplib/pptest3.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluapplib_a-pptest3.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Tpo -c -o luatexdir/luapplib/libluapplib_a-pptest3.o `test -f 'luatexdir/luapplib/pptest3.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest3.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Tpo luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest3.c' object='luatexdir/luapplib/libluapplib_a-pptest3.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluapplib_a-pptest3.o `test -f 'luatexdir/luapplib/pptest3.c' || echo '$(srcdir)/'`luatexdir/luapplib/pptest3.c + +luatexdir/luapplib/libluapplib_a-pptest3.obj: luatexdir/luapplib/pptest3.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluapplib_a-pptest3.obj -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Tpo -c -o luatexdir/luapplib/libluapplib_a-pptest3.obj `if test -f 'luatexdir/luapplib/pptest3.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest3.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Tpo luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luapplib/pptest3.c' object='luatexdir/luapplib/libluapplib_a-pptest3.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/libluapplib_a-pptest3.obj `if test -f 'luatexdir/luapplib/pptest3.c'; then $(CYGPATH_W) 'luatexdir/luapplib/pptest3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/pptest3.c'; fi` + luatexdir/luapplib/libluapplib_a-ppxref.o: luatexdir/luapplib/ppxref.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/libluapplib_a-ppxref.o -MD -MP -MF luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppxref.Tpo -c -o luatexdir/luapplib/libluapplib_a-ppxref.o `test -f 'luatexdir/luapplib/ppxref.c' || echo '$(srcdir)/'`luatexdir/luapplib/ppxref.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppxref.Tpo luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppxref.Po @@ -17345,20 +14124,6 @@ call_luatex-callexe.obj: callexe.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(call_luatex_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o call_luatex-callexe.obj `if test -f 'callexe.c'; then $(CYGPATH_W) 'callexe.c'; else $(CYGPATH_W) '$(srcdir)/callexe.c'; fi` -call_luatex53-callexe.o: callexe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(call_luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT call_luatex53-callexe.o -MD -MP -MF $(DEPDIR)/call_luatex53-callexe.Tpo -c -o call_luatex53-callexe.o `test -f 'callexe.c' || echo '$(srcdir)/'`callexe.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/call_luatex53-callexe.Tpo $(DEPDIR)/call_luatex53-callexe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='callexe.c' object='call_luatex53-callexe.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(call_luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o call_luatex53-callexe.o `test -f 'callexe.c' || echo '$(srcdir)/'`callexe.c - -call_luatex53-callexe.obj: callexe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(call_luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT call_luatex53-callexe.obj -MD -MP -MF $(DEPDIR)/call_luatex53-callexe.Tpo -c -o call_luatex53-callexe.obj `if test -f 'callexe.c'; then $(CYGPATH_W) 'callexe.c'; else $(CYGPATH_W) '$(srcdir)/callexe.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/call_luatex53-callexe.Tpo $(DEPDIR)/call_luatex53-callexe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='callexe.c' object='call_luatex53-callexe.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(call_luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o call_luatex53-callexe.obj `if test -f 'callexe.c'; then $(CYGPATH_W) 'callexe.c'; else $(CYGPATH_W) '$(srcdir)/callexe.c'; fi` - call_mf-callexe.o: callexe.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(call_mf_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT call_mf-callexe.o -MD -MP -MF $(DEPDIR)/call_mf-callexe.Tpo -c -o call_mf-callexe.o `test -f 'callexe.c' || echo '$(srcdir)/'`callexe.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/call_mf-callexe.Tpo $(DEPDIR)/call_mf-callexe.Po @@ -17723,34 +14488,6 @@ mplibdir/luatex-lmplib.obj: mplibdir/lmplib.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mplibdir/luatex-lmplib.obj `if test -f 'mplibdir/lmplib.c'; then $(CYGPATH_W) 'mplibdir/lmplib.c'; else $(CYGPATH_W) '$(srcdir)/mplibdir/lmplib.c'; fi` -luatexdir/luatex53-luatex.o: luatexdir/luatex.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luatex53-luatex.o -MD -MP -MF luatexdir/$(DEPDIR)/luatex53-luatex.Tpo -c -o luatexdir/luatex53-luatex.o `test -f 'luatexdir/luatex.c' || echo '$(srcdir)/'`luatexdir/luatex.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/$(DEPDIR)/luatex53-luatex.Tpo luatexdir/$(DEPDIR)/luatex53-luatex.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luatex.c' object='luatexdir/luatex53-luatex.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luatex53-luatex.o `test -f 'luatexdir/luatex.c' || echo '$(srcdir)/'`luatexdir/luatex.c - -luatexdir/luatex53-luatex.obj: luatexdir/luatex.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/luatex53-luatex.obj -MD -MP -MF luatexdir/$(DEPDIR)/luatex53-luatex.Tpo -c -o luatexdir/luatex53-luatex.obj `if test -f 'luatexdir/luatex.c'; then $(CYGPATH_W) 'luatexdir/luatex.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luatex.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/$(DEPDIR)/luatex53-luatex.Tpo luatexdir/$(DEPDIR)/luatex53-luatex.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/luatex.c' object='luatexdir/luatex53-luatex.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/luatex53-luatex.obj `if test -f 'luatexdir/luatex.c'; then $(CYGPATH_W) 'luatexdir/luatex.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luatex.c'; fi` - -mplibdir/luatex53-lmplib.o: mplibdir/lmplib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mplibdir/luatex53-lmplib.o -MD -MP -MF mplibdir/$(DEPDIR)/luatex53-lmplib.Tpo -c -o mplibdir/luatex53-lmplib.o `test -f 'mplibdir/lmplib.c' || echo '$(srcdir)/'`mplibdir/lmplib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mplibdir/$(DEPDIR)/luatex53-lmplib.Tpo mplibdir/$(DEPDIR)/luatex53-lmplib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mplibdir/lmplib.c' object='mplibdir/luatex53-lmplib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mplibdir/luatex53-lmplib.o `test -f 'mplibdir/lmplib.c' || echo '$(srcdir)/'`mplibdir/lmplib.c - -mplibdir/luatex53-lmplib.obj: mplibdir/lmplib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mplibdir/luatex53-lmplib.obj -MD -MP -MF mplibdir/$(DEPDIR)/luatex53-lmplib.Tpo -c -o mplibdir/luatex53-lmplib.obj `if test -f 'mplibdir/lmplib.c'; then $(CYGPATH_W) 'mplibdir/lmplib.c'; else $(CYGPATH_W) '$(srcdir)/mplibdir/lmplib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mplibdir/$(DEPDIR)/luatex53-lmplib.Tpo mplibdir/$(DEPDIR)/luatex53-lmplib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mplibdir/lmplib.c' object='mplibdir/luatex53-lmplib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luatex53_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mplibdir/luatex53-lmplib.obj `if test -f 'mplibdir/lmplib.c'; then $(CYGPATH_W) 'mplibdir/lmplib.c'; else $(CYGPATH_W) '$(srcdir)/mplibdir/lmplib.c'; fi` - libmd5/md5main-md5main.o: libmd5/md5main.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(md5main_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmd5/md5main-md5main.o -MD -MP -MF libmd5/$(DEPDIR)/md5main-md5main.Tpo -c -o libmd5/md5main-md5main.o `test -f 'libmd5/md5main.c' || echo '$(srcdir)/'`libmd5/md5main.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libmd5/$(DEPDIR)/md5main-md5main.Tpo libmd5/$(DEPDIR)/md5main-md5main.Po @@ -19768,7 +16505,6 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/bibtex.Po -rm -f ./$(DEPDIR)/call_luajittex-callexe.Po -rm -f ./$(DEPDIR)/call_luatex-callexe.Po - -rm -f ./$(DEPDIR)/call_luatex53-callexe.Po -rm -f ./$(DEPDIR)/call_mf-callexe.Po -rm -f ./$(DEPDIR)/call_mflua-callexe.Po -rm -f ./$(DEPDIR)/call_mfluajit-callexe.Po @@ -19900,30 +16636,8 @@ distclean: distclean-recursive -rm -f libmd5/$(DEPDIR)/md5main-md5main.Po -rm -f luatexdir/$(DEPDIR)/luajittex-luatex.Po -rm -f luatexdir/$(DEPDIR)/luatex-luatex.Po - -rm -f luatexdir/$(DEPDIR)/luatex53-luatex.Po - -rm -f luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Po -rm -f luatexdir/dvi/$(DEPDIR)/libluajittex_a-dvigen.Po -rm -f luatexdir/dvi/$(DEPDIR)/libluatex_a-dvigen.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Po -rm -f luatexdir/font/$(DEPDIR)/libluajittex_a-dofont.Po -rm -f luatexdir/font/$(DEPDIR)/libluajittex_a-luafont.Po -rm -f luatexdir/font/$(DEPDIR)/libluajittex_a-mapfile.Po @@ -19964,12 +16678,6 @@ distclean: distclean-recursive -rm -f luatexdir/font/$(DEPDIR)/libluatex_a-writettf.Po -rm -f luatexdir/font/$(DEPDIR)/libluatex_a-writetype0.Po -rm -f luatexdir/font/$(DEPDIR)/libluatex_a-writetype2.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Po -rm -f luatexdir/image/$(DEPDIR)/libluajittex_a-pdftoepdf.Po -rm -f luatexdir/image/$(DEPDIR)/libluajittex_a-writeimg.Po -rm -f luatexdir/image/$(DEPDIR)/libluajittex_a-writejbig2.Po @@ -19982,40 +16690,12 @@ distclean: distclean-recursive -rm -f luatexdir/image/$(DEPDIR)/libluatex_a-writejp2.Po -rm -f luatexdir/image/$(DEPDIR)/libluatex_a-writejpg.Po -rm -f luatexdir/image/$(DEPDIR)/libluatex_a-writepng.Po - -rm -f luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Po - -rm -f luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Po - -rm -f luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Po -rm -f luatexdir/lang/$(DEPDIR)/libluajittex_a-hnjalloc.Po -rm -f luatexdir/lang/$(DEPDIR)/libluajittex_a-hyphen.Po -rm -f luatexdir/lang/$(DEPDIR)/libluajittex_a-texlang.Po -rm -f luatexdir/lang/$(DEPDIR)/libluatex_a-hnjalloc.Po -rm -f luatexdir/lang/$(DEPDIR)/libluatex_a-hyphen.Po -rm -f luatexdir/lang/$(DEPDIR)/libluatex_a-texlang.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Po -rm -f luatexdir/lua/$(DEPDIR)/libluajittex_a-helpers.Po -rm -f luatexdir/lua/$(DEPDIR)/libluajittex_a-lcallbacklib.Po -rm -f luatexdir/lua/$(DEPDIR)/libluajittex_a-lfontlib.Po @@ -20068,15 +16748,10 @@ distclean: distclean-recursive -rm -f luatexdir/lua/$(DEPDIR)/libluatex_a-texluac.Po -rm -f luatexdir/lua/$(DEPDIR)/libmflua_a-lkpselib.Po -rm -f luatexdir/lua/$(DEPDIR)/libmfluajit_a-lkpselib.Po - -rm -f luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Po - -rm -f luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Po - -rm -f luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Po - -rm -f luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Po -rm -f luatexdir/luaffi/$(DEPDIR)/libluaffi_a-call.Po -rm -f luatexdir/luaffi/$(DEPDIR)/libluaffi_a-ctype.Po -rm -f luatexdir/luaffi/$(DEPDIR)/libluaffi_a-ffi.Po -rm -f luatexdir/luaffi/$(DEPDIR)/libluaffi_a-parser.Po - -rm -f luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Po -rm -f luatexdir/luafilesystem/src/$(DEPDIR)/libluajitmisc_a-lfs.Po -rm -f luatexdir/luafilesystem/src/$(DEPDIR)/libluamisc_a-lfs.Po -rm -f luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Po @@ -20121,34 +16796,25 @@ distclean: distclean-recursive -rm -f luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Po -rm -f luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Po -rm -f luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Po - -rm -f luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Po - -rm -f luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Po -rm -f luatexdir/luafontloader/src/$(DEPDIR)/libluajittex_a-ffdummies.Po -rm -f luatexdir/luafontloader/src/$(DEPDIR)/libluajittex_a-luafflib.Po -rm -f luatexdir/luafontloader/src/$(DEPDIR)/libluatex_a-ffdummies.Po -rm -f luatexdir/luafontloader/src/$(DEPDIR)/libluatex_a-luafflib.Po - -rm -f luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Po - -rm -f luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Po -rm -f luatexdir/luamd5/$(DEPDIR)/libluajitmisc_a-md5.Po -rm -f luatexdir/luamd5/$(DEPDIR)/libluajitmisc_a-md5lib.Po -rm -f luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5.Po -rm -f luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5lib.Po - -rm -f luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Po -rm -f luatexdir/luapeg/$(DEPDIR)/libluajitmisc_a-lpeg.Po -rm -f luatexdir/luapeg/$(DEPDIR)/libluamisc_a-lpeg.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pparray.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppdict.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppheap.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppload.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppstream.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppxref.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pparray.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppcrypt.Po @@ -20156,18 +16822,10 @@ distclean: distclean-recursive -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppheap.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppload.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppstream.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppxref.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po @@ -20190,22 +16848,6 @@ distclean: distclean-recursive -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilmem.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilnumber.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilsha.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-buffer.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-compat.Po @@ -20238,37 +16880,12 @@ distclean: distclean-recursive -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-tcp.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-timeout.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-udp.Po - -rm -f luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Po -rm -f luatexdir/luazip/src/$(DEPDIR)/libluajitmisc_a-luazip.Po -rm -f luatexdir/luazip/src/$(DEPDIR)/libluamisc_a-luazip.Po - -rm -f luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Po - -rm -f luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Po -rm -f luatexdir/luazlib/$(DEPDIR)/libluajitmisc_a-lgzip.Po -rm -f luatexdir/luazlib/$(DEPDIR)/libluajitmisc_a-lzlib.Po -rm -f luatexdir/luazlib/$(DEPDIR)/libluamisc_a-lgzip.Po -rm -f luatexdir/luazlib/$(DEPDIR)/libluamisc_a-lzlib.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfaction.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfannot.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfcolorstack.Po @@ -20313,42 +16930,8 @@ distclean: distclean-recursive -rm -f luatexdir/pdf/$(DEPDIR)/libluatex_a-pdftables.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluatex_a-pdfthread.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluatex_a-pdfxform.Po - -rm -f luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Po -rm -f luatexdir/slnunicode/$(DEPDIR)/libluajitmisc_a-slnunico.Po -rm -f luatexdir/slnunicode/$(DEPDIR)/libluamisc_a-slnunico.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Po -rm -f luatexdir/tex/$(DEPDIR)/libluajittex_a-align.Po -rm -f luatexdir/tex/$(DEPDIR)/libluajittex_a-arithmetic.Po -rm -f luatexdir/tex/$(DEPDIR)/libluajittex_a-backend.Po @@ -20425,11 +17008,6 @@ distclean: distclean-recursive -rm -f luatexdir/unilib/$(DEPDIR)/libunilib_a-usprintf.Po -rm -f luatexdir/unilib/$(DEPDIR)/libunilib_a-ustring.Po -rm -f luatexdir/unilib/$(DEPDIR)/libunilib_a-utype.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Po -rm -f luatexdir/utils/$(DEPDIR)/libluajittex_a-avl.Po -rm -f luatexdir/utils/$(DEPDIR)/libluajittex_a-avlstuff.Po -rm -f luatexdir/utils/$(DEPDIR)/libluajittex_a-managed-sa.Po @@ -20451,7 +17029,6 @@ distclean: distclean-recursive -rm -f mplibdir/$(DEPDIR)/libmputil_a-decNumber.Po -rm -f mplibdir/$(DEPDIR)/luajittex-lmplib.Po -rm -f mplibdir/$(DEPDIR)/luatex-lmplib.Po - -rm -f mplibdir/$(DEPDIR)/luatex53-lmplib.Po -rm -f pdftexdir/$(DEPDIR)/libpdftex_a-avl.Po -rm -f pdftexdir/$(DEPDIR)/libpdftex_a-avlstuff.Po -rm -f pdftexdir/$(DEPDIR)/libpdftex_a-epdf.Po @@ -20486,7 +17063,6 @@ distclean: distclean-recursive -rm -f synctexdir/$(DEPDIR)/eptex-synctex.Po -rm -f synctexdir/$(DEPDIR)/etex-synctex.Po -rm -f synctexdir/$(DEPDIR)/euptex-synctex.Po - -rm -f synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Po -rm -f synctexdir/$(DEPDIR)/libluajittex_a-synctex.Po -rm -f synctexdir/$(DEPDIR)/libluatex_a-synctex.Po -rm -f synctexdir/$(DEPDIR)/libsynctex_a-synctex_parser.Po @@ -20577,7 +17153,6 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/bibtex.Po -rm -f ./$(DEPDIR)/call_luajittex-callexe.Po -rm -f ./$(DEPDIR)/call_luatex-callexe.Po - -rm -f ./$(DEPDIR)/call_luatex53-callexe.Po -rm -f ./$(DEPDIR)/call_mf-callexe.Po -rm -f ./$(DEPDIR)/call_mflua-callexe.Po -rm -f ./$(DEPDIR)/call_mfluajit-callexe.Po @@ -20709,30 +17284,8 @@ maintainer-clean: maintainer-clean-recursive -rm -f libmd5/$(DEPDIR)/md5main-md5main.Po -rm -f luatexdir/$(DEPDIR)/luajittex-luatex.Po -rm -f luatexdir/$(DEPDIR)/luatex-luatex.Po - -rm -f luatexdir/$(DEPDIR)/luatex53-luatex.Po - -rm -f luatexdir/dvi/$(DEPDIR)/liblua53tex_a-dvigen.Po -rm -f luatexdir/dvi/$(DEPDIR)/libluajittex_a-dvigen.Po -rm -f luatexdir/dvi/$(DEPDIR)/libluatex_a-dvigen.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-dofont.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-luafont.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-mapfile.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-pkin.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-sfnt.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-texfont.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-tfmofm.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-tounicode.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_glyf.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-tt_table.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-vfovf.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-vfpacket.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writecff.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writeenc.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writefont.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writet1.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writet3.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writettf.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype0.Po - -rm -f luatexdir/font/$(DEPDIR)/liblua53tex_a-writetype2.Po -rm -f luatexdir/font/$(DEPDIR)/libluajittex_a-dofont.Po -rm -f luatexdir/font/$(DEPDIR)/libluajittex_a-luafont.Po -rm -f luatexdir/font/$(DEPDIR)/libluajittex_a-mapfile.Po @@ -20773,12 +17326,6 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/font/$(DEPDIR)/libluatex_a-writettf.Po -rm -f luatexdir/font/$(DEPDIR)/libluatex_a-writetype0.Po -rm -f luatexdir/font/$(DEPDIR)/libluatex_a-writetype2.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-pdftoepdf.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writeimg.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writejbig2.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writejp2.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writejpg.Po - -rm -f luatexdir/image/$(DEPDIR)/liblua53tex_a-writepng.Po -rm -f luatexdir/image/$(DEPDIR)/libluajittex_a-pdftoepdf.Po -rm -f luatexdir/image/$(DEPDIR)/libluajittex_a-writeimg.Po -rm -f luatexdir/image/$(DEPDIR)/libluajittex_a-writejbig2.Po @@ -20791,40 +17338,12 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/image/$(DEPDIR)/libluatex_a-writejp2.Po -rm -f luatexdir/image/$(DEPDIR)/libluatex_a-writejpg.Po -rm -f luatexdir/image/$(DEPDIR)/libluatex_a-writepng.Po - -rm -f luatexdir/lang/$(DEPDIR)/liblua53tex_a-hnjalloc.Po - -rm -f luatexdir/lang/$(DEPDIR)/liblua53tex_a-hyphen.Po - -rm -f luatexdir/lang/$(DEPDIR)/liblua53tex_a-texlang.Po -rm -f luatexdir/lang/$(DEPDIR)/libluajittex_a-hnjalloc.Po -rm -f luatexdir/lang/$(DEPDIR)/libluajittex_a-hyphen.Po -rm -f luatexdir/lang/$(DEPDIR)/libluajittex_a-texlang.Po -rm -f luatexdir/lang/$(DEPDIR)/libluatex_a-hnjalloc.Po -rm -f luatexdir/lang/$(DEPDIR)/libluatex_a-hyphen.Po -rm -f luatexdir/lang/$(DEPDIR)/libluatex_a-texlang.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-helpers.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lcallbacklib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lfontlib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-limglib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-liolibext.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lkpselib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-llanglib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-llualib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnewtokenlib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lnodelib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-loslibext.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfelib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdflib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lpdfscannerlib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstatslib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-lstrlibext.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexiolib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-ltexlib.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luainit.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luanode.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luastuff.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatex-core.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-luatoken.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-mplibstuff.Po - -rm -f luatexdir/lua/$(DEPDIR)/liblua53tex_a-texluac.Po -rm -f luatexdir/lua/$(DEPDIR)/libluajittex_a-helpers.Po -rm -f luatexdir/lua/$(DEPDIR)/libluajittex_a-lcallbacklib.Po -rm -f luatexdir/lua/$(DEPDIR)/libluajittex_a-lfontlib.Po @@ -20877,15 +17396,10 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/lua/$(DEPDIR)/libluatex_a-texluac.Po -rm -f luatexdir/lua/$(DEPDIR)/libmflua_a-lkpselib.Po -rm -f luatexdir/lua/$(DEPDIR)/libmfluajit_a-lkpselib.Po - -rm -f luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-call.Po - -rm -f luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ctype.Po - -rm -f luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-ffi.Po - -rm -f luatexdir/luaffi/$(DEPDIR)/liblua53ffi_a-parser.Po -rm -f luatexdir/luaffi/$(DEPDIR)/libluaffi_a-call.Po -rm -f luatexdir/luaffi/$(DEPDIR)/libluaffi_a-ctype.Po -rm -f luatexdir/luaffi/$(DEPDIR)/libluaffi_a-ffi.Po -rm -f luatexdir/luaffi/$(DEPDIR)/libluaffi_a-parser.Po - -rm -f luatexdir/luafilesystem/src/$(DEPDIR)/liblua53misc_a-lfs.Po -rm -f luatexdir/luafilesystem/src/$(DEPDIR)/libluajitmisc_a-lfs.Po -rm -f luatexdir/luafilesystem/src/$(DEPDIR)/libluamisc_a-lfs.Po -rm -f luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-autohint.Po @@ -20930,34 +17444,25 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-tottfgpos.Po -rm -f luatexdir/luafontloader/fontforge/fontforge/$(DEPDIR)/libff_a-ttfspecial.Po -rm -f luatexdir/luafontloader/fontforge/gutils/$(DEPDIR)/libff_a-fsys.Po - -rm -f luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-ffdummies.Po - -rm -f luatexdir/luafontloader/src/$(DEPDIR)/liblua53tex_a-luafflib.Po -rm -f luatexdir/luafontloader/src/$(DEPDIR)/libluajittex_a-ffdummies.Po -rm -f luatexdir/luafontloader/src/$(DEPDIR)/libluajittex_a-luafflib.Po -rm -f luatexdir/luafontloader/src/$(DEPDIR)/libluatex_a-ffdummies.Po -rm -f luatexdir/luafontloader/src/$(DEPDIR)/libluatex_a-luafflib.Po - -rm -f luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5.Po - -rm -f luatexdir/luamd5/$(DEPDIR)/liblua53misc_a-md5lib.Po -rm -f luatexdir/luamd5/$(DEPDIR)/libluajitmisc_a-md5.Po -rm -f luatexdir/luamd5/$(DEPDIR)/libluajitmisc_a-md5lib.Po -rm -f luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5.Po -rm -f luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5lib.Po - -rm -f luatexdir/luapeg/$(DEPDIR)/liblua53misc_a-lpeg.Po -rm -f luatexdir/luapeg/$(DEPDIR)/libluajitmisc_a-lpeg.Po -rm -f luatexdir/luapeg/$(DEPDIR)/libluamisc_a-lpeg.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-pparray.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppcrypt.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppdict.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppheap.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppload.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppstream.Po - -rm -f luatexdir/luapplib/$(DEPDIR)/liblua53pplib_a-ppxref.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pparray.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppdict.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppheap.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppload.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppstream.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest1.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest2.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-pptest3.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluajitpplib_a-ppxref.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pparray.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppcrypt.Po @@ -20965,18 +17470,10 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppheap.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppload.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppstream.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest1.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest2.Po + -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-pptest3.Po -rm -f luatexdir/luapplib/$(DEPDIR)/libluapplib_a-ppxref.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilbasexx.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilcrypt.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilflate.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilfpred.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utiliof.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillog.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utillzw.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmd5.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilmem.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilnumber.Po - -rm -f luatexdir/luapplib/util/$(DEPDIR)/liblua53pplib_a-utilsha.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po @@ -20999,22 +17496,6 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilmem.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilnumber.Po -rm -f luatexdir/luapplib/util/$(DEPDIR)/libluapplib_a-utilsha.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-auxiliar.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-buffer.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-compat.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-except.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-inet.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-io.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-lua_preload.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-luasocket.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-mime.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-options.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-select.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-serial.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-socket.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-tcp.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-timeout.Po - -rm -f luatexdir/luasocket/src/$(DEPDIR)/liblua53socket_a-udp.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-buffer.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-compat.Po @@ -21047,37 +17528,12 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-tcp.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-timeout.Po -rm -f luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-udp.Po - -rm -f luatexdir/luazip/src/$(DEPDIR)/liblua53misc_a-luazip.Po -rm -f luatexdir/luazip/src/$(DEPDIR)/libluajitmisc_a-luazip.Po -rm -f luatexdir/luazip/src/$(DEPDIR)/libluamisc_a-luazip.Po - -rm -f luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lgzip.Po - -rm -f luatexdir/luazlib/$(DEPDIR)/liblua53misc_a-lzlib.Po -rm -f luatexdir/luazlib/$(DEPDIR)/libluajitmisc_a-lgzip.Po -rm -f luatexdir/luazlib/$(DEPDIR)/libluajitmisc_a-lzlib.Po -rm -f luatexdir/luazlib/$(DEPDIR)/libluamisc_a-lgzip.Po -rm -f luatexdir/luazlib/$(DEPDIR)/libluamisc_a-lzlib.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfaction.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfannot.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfcolorstack.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfdest.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdffont.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfgen.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfglyph.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfimage.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflink.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdflistout.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfliteral.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfobj.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfoutline.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpage.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfpagetree.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfrule.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsaverestore.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfsetmatrix.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfshipout.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdftables.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfthread.Po - -rm -f luatexdir/pdf/$(DEPDIR)/liblua53tex_a-pdfxform.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfaction.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfannot.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluajittex_a-pdfcolorstack.Po @@ -21122,42 +17578,8 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/pdf/$(DEPDIR)/libluatex_a-pdftables.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluatex_a-pdfthread.Po -rm -f luatexdir/pdf/$(DEPDIR)/libluatex_a-pdfxform.Po - -rm -f luatexdir/slnunicode/$(DEPDIR)/liblua53misc_a-slnunico.Po -rm -f luatexdir/slnunicode/$(DEPDIR)/libluajitmisc_a-slnunico.Po -rm -f luatexdir/slnunicode/$(DEPDIR)/libluamisc_a-slnunico.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-align.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-arithmetic.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-backend.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-buildpage.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-commands.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-conditional.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-directions.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-dumpdata.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-equivalents.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-errors.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-expand.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-extensions.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-filename.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-inputstack.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-linebreak.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-mainbody.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-maincontrol.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-mathcodes.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-memoryword.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-mlist.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-nesting.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-packaging.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-postlinebreak.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-primitive.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-printing.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-scanning.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-stringpool.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-texdeffont.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-texfileio.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-texmath.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-texnodes.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-textcodes.Po - -rm -f luatexdir/tex/$(DEPDIR)/liblua53tex_a-textoken.Po -rm -f luatexdir/tex/$(DEPDIR)/libluajittex_a-align.Po -rm -f luatexdir/tex/$(DEPDIR)/libluajittex_a-arithmetic.Po -rm -f luatexdir/tex/$(DEPDIR)/libluajittex_a-backend.Po @@ -21234,11 +17656,6 @@ maintainer-clean: maintainer-clean-recursive -rm -f luatexdir/unilib/$(DEPDIR)/libunilib_a-usprintf.Po -rm -f luatexdir/unilib/$(DEPDIR)/libunilib_a-ustring.Po -rm -f luatexdir/unilib/$(DEPDIR)/libunilib_a-utype.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-avl.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-avlstuff.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-managed-sa.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-unistring.Po - -rm -f luatexdir/utils/$(DEPDIR)/liblua53tex_a-utils.Po -rm -f luatexdir/utils/$(DEPDIR)/libluajittex_a-avl.Po -rm -f luatexdir/utils/$(DEPDIR)/libluajittex_a-avlstuff.Po -rm -f luatexdir/utils/$(DEPDIR)/libluajittex_a-managed-sa.Po @@ -21260,7 +17677,6 @@ maintainer-clean: maintainer-clean-recursive -rm -f mplibdir/$(DEPDIR)/libmputil_a-decNumber.Po -rm -f mplibdir/$(DEPDIR)/luajittex-lmplib.Po -rm -f mplibdir/$(DEPDIR)/luatex-lmplib.Po - -rm -f mplibdir/$(DEPDIR)/luatex53-lmplib.Po -rm -f pdftexdir/$(DEPDIR)/libpdftex_a-avl.Po -rm -f pdftexdir/$(DEPDIR)/libpdftex_a-avlstuff.Po -rm -f pdftexdir/$(DEPDIR)/libpdftex_a-epdf.Po @@ -21295,7 +17711,6 @@ maintainer-clean: maintainer-clean-recursive -rm -f synctexdir/$(DEPDIR)/eptex-synctex.Po -rm -f synctexdir/$(DEPDIR)/etex-synctex.Po -rm -f synctexdir/$(DEPDIR)/euptex-synctex.Po - -rm -f synctexdir/$(DEPDIR)/liblua53tex_a-synctex.Po -rm -f synctexdir/$(DEPDIR)/libluajittex_a-synctex.Po -rm -f synctexdir/$(DEPDIR)/libluatex_a-synctex.Po -rm -f synctexdir/$(DEPDIR)/libsynctex_a-synctex_parser.Po @@ -22215,31 +18630,32 @@ $(pdftosrc_OBJECTS): $(ZLIB_DEPEND) $(LIBPNG_DEPEND) $(XPDF_DEPEND) pdftexdir/pdftosrc.log: pdftosrc$(EXEEXT) $(libluasocket_a_OBJECTS): $(LUA_DEPEND) -$(liblua53socket_a_OBJECTS): $(LUA_DEPEND) +#$(liblua53socket_a_OBJECTS): $(LUA_DEPEND) $(libluajitsocket_a_OBJECTS): $(LUAJIT_DEPEND) $(libluamisc_a_OBJECTS): $(libluamisc_a_DEPENDENCIES) -$(liblua53misc_a_OBJECTS): $(liblua53misc_a_DEPENDENCIES) +#$(liblua53misc_a_OBJECTS): $(liblua53misc_a_DEPENDENCIES) $(libluajitmisc_a_OBJECTS): $(libluajitmisc_a_DEPENDENCIES) $(libff_a_OBJECTS): libunilib.a $(libluatex_a_OBJECTS): libff.a libmplibcore.a libluamisc.a -$(liblua53tex_a_OBJECTS): libff.a libmplibcore.a liblua53misc.a +#$(liblua53tex_a_OBJECTS): libff.a libmplibcore.a liblua53misc.a $(libluajittex_a_OBJECTS): libff.a libmplibcore.a libluajitmisc.a #libluaffi_a_DEPENDENCIES = $(ZLIB_DEPEND) $(libluaffi_a_OBJECTS): $(LUA_DEPEND) -$(liblua53ffi_a_OBJECTS): $(LUA_LUA53_DEPEND) + +#liblua53ffi_sources = $(libluaffi_sources) #EXTRA_DIST $(libluapplib_a_OBJECTS): $(LUA_DEPEND) -$(liblua53pplib_a_OBJECTS): $(LUA_DEPEND) +#$(liblua53pplib_a_OBJECTS): $(LUA_DEPEND) $(libluajitpplib_a_OBJECTS): $(LUAJIT_DEPEND) $(luatex_OBJECTS): libluatex.a -$(luatex53_OBJECTS): liblua53tex.a +#$(luatex53_OBJECTS): liblua53tex.a $(luajittex_OBJECTS): libluajittex.a .PHONY: install-luatex-links uninstall-luatex-links @@ -22257,7 +18673,6 @@ $(luajittex_OBJECTS): libluajittex.a @WIN32_TRUE@ rm -f $(DESTDIR)$(bindir)/texluajit$(EXEEXT) @WIN32_TRUE@ rm -f $(DESTDIR)$(bindir)/texluajitc$(EXEEXT) luatexdir/luatex.log luatexdir/luaimage.log: luatex$(EXEEXT) -luatexdir/luatex53.log luatexdir/luaimage53.log: luatex53$(EXEEXT) luatexdir/luajittex.log luatexdir/luajitimage.log: luajittex$(EXEEXT) $(xetex_OBJECTS): $(xetex_prereq) diff --git a/source/texk/web2c/configure b/source/texk/web2c/configure index d0f95e308..a8308b3a4 100755 --- a/source/texk/web2c/configure +++ b/source/texk/web2c/configure @@ -8667,6 +8667,8 @@ fi done +##tldbg KPSE_COMMON: web2c programs (). +##tldbg KPSE_BASIC: Remember web2c programs () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -23236,11 +23238,11 @@ _ACEOF kpse_save_CPPFLAGS=$CPPFLAGS kpse_save_LIBS=$LIBS -## _KPSE_INIT: Initialize TL infrastructure +##tldbg _KPSE_INIT: Initialize TL infrastructure. kpse_BLD=`(cd "./../../." && pwd)` kpse_SRC=`(cd "$srcdir/../../." && pwd)` -## _KPSE_USE_LIBTOOL: Generate a libtool script for use in configure tests +##tldbg _KPSE_USE_LIBTOOL: Generate a libtool script for use in configure tests. : ${CONFIG_LT=./config.lt} { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_LT" >&5 $as_echo "$as_me: creating $CONFIG_LT" >&6;} @@ -24816,7 +24818,9 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_link="./libtool --mode=link --tag=CC $ac_link" -## _KPSE_LIB_FLAGS: Setup kpathsea (-lkpathsea) flags +##tldbg _KPSE_LIB_FLAGS: Setup kpathsea (-lkpathsea) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=kpathsea, libname=kpathsea, options=lt, tlincl=-IBLD/texk -ISRC/texk, tllib=BLD/texk/kpathsea/libkpathsea.la, tlextra=, rebuildsrcdeps=${top_srcdir}/../kpathsea/*.[ch], rebuildblddeps=${top_builddir}/../kpathsea/paths.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: kpathsea (kpathsea) lt. # Check whether --with-system-kpathsea was given. if test "${with_system_kpathsea+set}" = set; then : @@ -24876,7 +24880,9 @@ if test "x$kpse_cv_kpse_debug" != xyes; then : KPATHSEA_INCLUDES="$KPATHSEA_INCLUDES -DNO_DEBUG" fi -## _KPSE_LIB_FLAGS: Setup ptexenc (-lptexenc) flags +##tldbg _KPSE_LIB_FLAGS: Setup ptexenc (-lptexenc) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=ptexenc, libname=ptexenc, options=lt, tlincl=-IBLD/texk/ptexenc -ISRC/texk/ptexenc, tllib=BLD/texk/ptexenc/libptexenc.la, tlextra=, rebuildsrcdeps=${top_srcdir}/../ptexenc/*.c ${top_srcdir}/../ptexenc/ptexenc/*.h, rebuildblddeps=.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: ptexenc (ptexenc) lt. # Check whether --with-system-ptexenc was given. if test "${with_system_ptexenc+set}" = set; then : @@ -24898,7 +24904,9 @@ $(PTEXENC_DEPEND): ${top_srcdir}/../ptexenc/*.c ${top_srcdir}/../ptexenc/ptexenc cd ${top_builddir}/../ptexenc && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup zlib (-lz) flags +##tldbg _KPSE_LIB_FLAGS: Setup zlib (-lz) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=zlib, libname=z, options=, tlincl=-IBLD/libs/zlib/include, tllib=BLD/libs/zlib/libz.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/zlib/include/zconf.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: zlib (z) . # Check whether --with-system-zlib was given. if test "${with_system_zlib+set}" = set; then : @@ -24915,7 +24923,8 @@ if test "${with_zlib_libdir+set}" = set; then : withval=$with_zlib_libdir; fi if test "x$with_system_zlib" = xyes; then - if test "x$with_zlib_includes" != x && test "x$with_zlib_includes" != xyes; then + ##tldbg _KPSE_LIB_FLAGS_SYSTEM: zlib (z). +if test "x$with_zlib_includes" != x && test "x$with_zlib_includes" != xyes; then ZLIB_INCLUDES="-I$with_zlib_includes" fi ZLIB_LIBS="-lz" @@ -24974,7 +24983,9 @@ $as_echo "#define z_const /**/" >>confdefs.h ;; esac -## _KPSE_LIB_FLAGS: Setup lua53 (-ltexlua53) flags +##tldbg _KPSE_LIB_FLAGS: Setup lua53 (-ltexlua53) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=lua53, libname=texlua53, options=lt tree, tlincl=-IBLD/libs/lua53/include, tllib=BLD/libs/lua53/libtexlua53.la, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/lua53/include/lua.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: lua53 (texlua53) lt tree. LUA53_INCLUDES="-I$kpse_BLD/libs/lua53/include" LUA53_LIBS="$kpse_BLD/libs/lua53/libtexlua53.la" LUA53_DEPEND='${top_builddir}/../../libs/lua53/libtexlua53.la' @@ -24984,7 +24995,9 @@ $(LUA53_DEPEND): ${top_builddir}/../../libs/lua53/include/lua.h ${top_builddir}/../../libs/lua53/include/lua.h: cd ${top_builddir}/../../libs/lua53 && $(MAKE) $(AM_MAKEFLAGS) rebuild' -## _KPSE_LIB_FLAGS: Setup lua52 (-ltexlua52) flags +##tldbg _KPSE_LIB_FLAGS: Setup lua52 (-ltexlua52) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=lua52, libname=texlua52, options=lt tree, tlincl=-IBLD/libs/lua52/include, tllib=BLD/libs/lua52/libtexlua52.la, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/lua52/include/lua.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: lua52 (texlua52) lt tree. LUA52_INCLUDES="-I$kpse_BLD/libs/lua52/include" LUA52_LIBS="$kpse_BLD/libs/lua52/libtexlua52.la" LUA52_DEPEND='${top_builddir}/../../libs/lua52/libtexlua52.la' @@ -24994,7 +25007,9 @@ $(LUA52_DEPEND): ${top_builddir}/../../libs/lua52/include/lua.h ${top_builddir}/../../libs/lua52/include/lua.h: cd ${top_builddir}/../../libs/lua52 && $(MAKE) $(AM_MAKEFLAGS) rebuild' -## _KPSE_LIB_FLAGS: Setup luajit (-ltexluajit) flags +##tldbg _KPSE_LIB_FLAGS: Setup luajit (-ltexluajit) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=luajit, libname=texluajit, options=lt tree, tlincl=-IBLD/libs/luajit/include, tllib=BLD/libs/luajit/libtexluajit.la, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/luajit/include/luajit.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: luajit (texluajit) lt tree. LUAJIT_INCLUDES="-I$kpse_BLD/libs/luajit/include" LUAJIT_LIBS="$kpse_BLD/libs/luajit/libtexluajit.la" LUAJIT_DEPEND='${top_builddir}/../../libs/luajit/libtexluajit.la' @@ -25004,7 +25019,9 @@ $(LUAJIT_DEPEND): ${top_builddir}/../../libs/luajit/include/luajit.h ${top_builddir}/../../libs/luajit/include/luajit.h: cd ${top_builddir}/../../libs/luajit && $(MAKE) $(AM_MAKEFLAGS) rebuild' -## _KPSE_LIB_FLAGS: Setup libpng (-lpng) flags +##tldbg _KPSE_LIB_FLAGS: Setup libpng (-lpng) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=libpng, libname=png, options=, tlincl=-IBLD/libs/libpng/include, tllib=BLD/libs/libpng/libpng.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/libpng/include/png.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: libpng (png) . # Check whether --with-system-libpng was given. if test "${with_system_libpng+set}" = set; then : @@ -25028,7 +25045,9 @@ ${top_builddir}/../../libs/libpng/include/png.h: cd ${top_builddir}/../../libs/libpng && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup freetype2 (-lfreetype) flags +##tldbg _KPSE_LIB_FLAGS: Setup freetype2 (-lfreetype) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=freetype2, libname=freetype, options=, tlincl=-IBLD/libs/freetype2/freetype2, tllib=BLD/libs/freetype2/libfreetype.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/freetype2/freetype2/ft2build.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: freetype2 (freetype) . # Check whether --with-system-freetype2 was given. if test "${with_system_freetype2+set}" = set; then : @@ -25143,7 +25162,9 @@ ${top_builddir}/../../libs/freetype2/freetype2/ft2build.h: cd ${top_builddir}/../../libs/freetype2 && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup pixman (-lpixman) flags +##tldbg _KPSE_LIB_FLAGS: Setup pixman (-lpixman) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=pixman, libname=pixman, options=, tlincl=-IBLD/libs/pixman/include, tllib=BLD/libs/pixman/libpixman.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/pixman/include/pixman.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: pixman (pixman) . # Check whether --with-system-pixman was given. if test "${with_system_pixman+set}" = set; then : @@ -25167,7 +25188,9 @@ ${top_builddir}/../../libs/pixman/include/pixman.h: cd ${top_builddir}/../../libs/pixman && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup cairo (-lcairo) flags +##tldbg _KPSE_LIB_FLAGS: Setup cairo (-lcairo) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=cairo, libname=cairo, options=, tlincl=-IBLD/libs/cairo/cairo, tllib=BLD/libs/cairo/libcairo.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/cairo/cairo/cairo.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: cairo (cairo) . # Check whether --with-system-cairo was given. if test "${with_system_cairo+set}" = set; then : @@ -25191,7 +25214,9 @@ ${top_builddir}/../../libs/cairo/cairo/cairo.h: cd ${top_builddir}/../../libs/cairo && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup gmp (-lgmp) flags +##tldbg _KPSE_LIB_FLAGS: Setup gmp (-lgmp) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=gmp, libname=gmp, options=, tlincl=-IBLD/libs/gmp/include, tllib=BLD/libs/gmp/libgmp.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/gmp/include/gmp.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: gmp (gmp) . # Check whether --with-system-gmp was given. if test "${with_system_gmp+set}" = set; then : @@ -25208,7 +25233,8 @@ if test "${with_gmp_libdir+set}" = set; then : withval=$with_gmp_libdir; fi if test "x$with_system_gmp" = xyes; then - if test "x$with_gmp_includes" != x && test "x$with_gmp_includes" != xyes; then + ##tldbg _KPSE_LIB_FLAGS_SYSTEM: gmp (gmp). +if test "x$with_gmp_includes" != x && test "x$with_gmp_includes" != xyes; then GMP_INCLUDES="-I$with_gmp_includes" fi GMP_LIBS="-lgmp" @@ -25226,7 +25252,9 @@ ${top_builddir}/../../libs/gmp/include/gmp.h: cd ${top_builddir}/../../libs/gmp && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup mpfr (-lmpfr) flags +##tldbg _KPSE_LIB_FLAGS: Setup mpfr (-lmpfr) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=mpfr, libname=mpfr, options=, tlincl=-IBLD/libs/mpfr/include, tllib=BLD/libs/mpfr/libmpfr.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/mpfr/include/mpfr.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: mpfr (mpfr) . # Check whether --with-system-mpfr was given. if test "${with_system_mpfr+set}" = set; then : @@ -25243,7 +25271,8 @@ if test "${with_mpfr_libdir+set}" = set; then : withval=$with_mpfr_libdir; fi if test "x$with_system_mpfr" = xyes; then - if test "x$with_mpfr_includes" != x && test "x$with_mpfr_includes" != xyes; then + ##tldbg _KPSE_LIB_FLAGS_SYSTEM: mpfr (mpfr). +if test "x$with_mpfr_includes" != x && test "x$with_mpfr_includes" != xyes; then MPFR_INCLUDES="-I$with_mpfr_includes" fi MPFR_LIBS="-lmpfr" @@ -25261,7 +25290,9 @@ ${top_builddir}/../../libs/mpfr/include/mpfr.h: cd ${top_builddir}/../../libs/mpfr && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup poppler (-lpoppler) flags +##tldbg _KPSE_LIB_FLAGS: Setup poppler (-lpoppler) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=poppler, libname=poppler, options=, tlincl=-IBLD/libs/poppler/include, tllib=BLD/libs/poppler/libpoppler.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/poppler/include/Stream.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: poppler (poppler) . # Check whether --with-system-poppler was given. if test "${with_system_poppler+set}" = set; then : @@ -25289,7 +25320,9 @@ ${top_builddir}/../../libs/poppler/include/Stream.h: fi test "x$kpse_cv_have_win32" = xno || POPPLER_LIBS="$POPPLER_LIBS -lgdi32" -## _KPSE_LIB_FLAGS: Setup xpdf (-lxpdf) flags +##tldbg _KPSE_LIB_FLAGS: Setup xpdf (-lxpdf) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=xpdf, libname=xpdf, options=, tlincl=-DPDF_PARSER_ONLY -IBLD/libs/xpdf -IBLD/libs/xpdf/goo -IBLD/libs/xpdf/xpdf, tllib=BLD/libs/xpdf/libxpdf.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/xpdf/xpdf/Stream.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: xpdf (xpdf) . # Check whether --with-system-xpdf was given. if test "${with_system_xpdf+set}" = set; then : @@ -25317,7 +25350,9 @@ ${top_builddir}/../../libs/xpdf/xpdf/Stream.h: fi test "x$kpse_cv_have_win32" = xno || XPDF_LIBS="$XPDF_LIBS -lgdi32" -## _KPSE_LIB_FLAGS: Setup zziplib (-lzzip) flags +##tldbg _KPSE_LIB_FLAGS: Setup zziplib (-lzzip) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=zziplib, libname=zzip, options=, tlincl=-IBLD/libs/zziplib/include, tllib=BLD/libs/zziplib/libzzip.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/zziplib/include/zzip/zzip.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: zziplib (zzip) . # Check whether --with-system-zziplib was given. if test "${with_system_zziplib+set}" = set; then : @@ -25341,7 +25376,9 @@ ${top_builddir}/../../libs/zziplib/include/zzip/zzip.h: cd ${top_builddir}/../../libs/zziplib && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup teckit (-lTECkit) flags +##tldbg _KPSE_LIB_FLAGS: Setup teckit (-lTECkit) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=teckit, libname=TECkit, options=, tlincl=-IBLD/libs/teckit/include, tllib=BLD/libs/teckit/libTECkit.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/teckit/include/teckit/TECkit_Common.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: teckit (TECkit) . # Check whether --with-system-teckit was given. if test "${with_system_teckit+set}" = set; then : @@ -25365,14 +25402,17 @@ ${top_builddir}/../../libs/teckit/include/teckit/TECkit_Common.h: cd ${top_builddir}/../../libs/teckit && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup icu (-licuxxx) flags +echo 'tldbg:KPSE_ICU_FLAGS called: more-icu-libs=, icu-config-args=.' >&5 +##tldbg _KPSE_LIB_FLAGS: Setup icu (-licuxxx) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=icu, libname=icuxxx, options=, tlincl=-DU_STATIC_IMPLEMENTATION -IBLD/libs/icu/include, tllib= BLD/libs/icu/icu-build/lib/libicuuc.a BLD/libs/icu/icu-build/lib/libicudata.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/icu/include/unicode/uversion.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: icu (icuxxx) . # Check whether --with-system-icu was given. if test "${with_system_icu+set}" = set; then : withval=$with_system_icu; fi if test "x$with_system_icu" = xyes; then - echo 'dbg:_KPSE_ICU_SYSTEM_FLAGS called.' >&5 + echo 'tldbg:KPSE_ICU_SYSTEM_FLAGS called.' >&5 if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}icu-config", so it can be a program name with args. set dummy ${ac_tool_prefix}icu-config; ac_word=$2 @@ -25574,8 +25614,16 @@ $(ICU_DEPEND): ${top_builddir}/../../libs/icu/include/unicode/uversion.h ${top_builddir}/../../libs/icu/include/unicode/uversion.h: cd ${top_builddir}/../../libs/icu && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi +# checking for openbsd to add -lpthread for icu. +case $build_os in +openbsd*) + eval ICUXXX_LIBS=\"$ICUXXX_LIBS -lpthread\" + ;; +esac -## _KPSE_LIB_FLAGS: Setup graphite2 (-lgraphite2) flags +##tldbg _KPSE_LIB_FLAGS: Setup graphite2 (-lgraphite2) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=graphite2, libname=graphite2, options=, tlincl=-IBLD/libs/graphite2/include -DGRAPHITE2_STATIC, tllib=BLD/libs/graphite2/libgraphite2.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/graphite2/include/graphite2/Font.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: graphite2 (graphite2) . # Check whether --with-system-graphite2 was given. if test "${with_system_graphite2+set}" = set; then : @@ -25599,7 +25647,9 @@ ${top_builddir}/../../libs/graphite2/include/graphite2/Font.h: cd ${top_builddir}/../../libs/graphite2 && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup harfbuzz (-lharfbuzz) flags +##tldbg _KPSE_LIB_FLAGS: Setup harfbuzz (-lharfbuzz) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=harfbuzz, libname=harfbuzz, options=, tlincl=-IBLD/libs/harfbuzz/include, tllib=BLD/libs/harfbuzz/libharfbuzz.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/harfbuzz/include/hb.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: harfbuzz (harfbuzz) . # Check whether --with-system-harfbuzz was given. if test "${with_system_harfbuzz+set}" = set; then : @@ -25623,7 +25673,9 @@ ${top_builddir}/../../libs/harfbuzz/include/hb.h: cd ${top_builddir}/../../libs/harfbuzz && $(MAKE) $(AM_MAKEFLAGS) rebuild' fi -## _KPSE_LIB_FLAGS: Setup graphite2 (-lgraphite2) flags +##tldbg _KPSE_LIB_FLAGS: Setup graphite2 (-lgraphite2) flags. +echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=graphite2, libname=graphite2, options=, tlincl=-IBLD/libs/graphite2/include -DGRAPHITE2_STATIC, tllib=BLD/libs/graphite2/libgraphite2.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/graphite2/include/graphite2/Font.h.' >&5 +##tldbg _KPSE_LIB_FLAGS_TL: graphite2 (graphite2) . # Check whether --with-system-graphite2 was given. if test "${with_system_graphite2+set}" = set; then : diff --git a/source/texk/web2c/configure.ac b/source/texk/web2c/configure.ac index 6d35f5d34..10aa5be8b 100644 --- a/source/texk/web2c/configure.ac +++ b/source/texk/web2c/configure.ac @@ -1,4 +1,4 @@ -dnl $Id: configure.ac 48318 2018-07-31 20:52:36Z karl $ +dnl $Id: configure.ac 48591 2018-09-05 21:30:41Z lscarso $ dnl Process this file with Autoconf to produce a configure script for Web2c. dnl dnl Copyright 2018 Karl Berry <tex-live@tug.org> diff --git a/source/texk/web2c/ctangleboot.cin b/source/texk/web2c/ctangleboot.cin index 83e0a3a59..0a4e28617 100644 --- a/source/texk/web2c/ctangleboot.cin +++ b/source/texk/web2c/ctangleboot.cin @@ -216,11 +216,11 @@ extern char scn_file_name[]; extern char file_name[][max_file_name_length]; extern char change_file_name[]; -#line 180 "cwebdir/ctang-w2c.ch" +#line 181 "cwebdir/ctang-w2c.ch" extern int line[]; extern int change_line; -#line 150 "cwebdir/common.h" -extern change_depth; +extern int change_depth; +#line 151 "cwebdir/common.h" extern boolean input_has_ended; extern boolean changing; extern boolean web_file_open; @@ -369,35 +369,35 @@ extern sixteen_bits section_count; /*40:*/ #line 533 "cwebdir/ctangle.w" -#line 282 "cwebdir/ctang-w2c.ch" +#line 284 "cwebdir/ctang-w2c.ch" static void phase_two(void); #line 535 "cwebdir/ctangle.w" /*:40*//*45:*/ #line 602 "cwebdir/ctangle.w" -#line 308 "cwebdir/ctang-w2c.ch" +#line 310 "cwebdir/ctang-w2c.ch" static void output_defs(void); #line 604 "cwebdir/ctangle.w" /*:45*//*47:*/ #line 648 "cwebdir/ctangle.w" -#line 326 "cwebdir/ctang-w2c.ch" +#line 328 "cwebdir/ctang-w2c.ch" static void out_char(eight_bits); #line 650 "cwebdir/ctangle.w" /*:47*//*89:*/ #line 1460 "cwebdir/ctangle.w" -#line 440 "cwebdir/ctang-w2c.ch" +#line 442 "cwebdir/ctang-w2c.ch" static void phase_one(void); #line 1462 "cwebdir/ctangle.w" /*:89*//*91:*/ #line 1478 "cwebdir/ctangle.w" -#line 458 "cwebdir/ctang-w2c.ch" +#line 460 "cwebdir/ctang-w2c.ch" static void skip_limbo(void); #line 1480 "cwebdir/ctangle.w" @@ -486,7 +486,7 @@ return wrap_up(); /*:2*//*20:*/ #line 183 "cwebdir/ctangle.w" -#line 206 "cwebdir/ctang-w2c.ch" +#line 208 "cwebdir/ctang-w2c.ch" int names_match(name_pointer p,const char*first,int l,char t) #line 188 "cwebdir/ctangle.w" { @@ -498,21 +498,21 @@ return!strncmp(first,p->byte_start,l); #line 198 "cwebdir/ctangle.w" void -#line 215 "cwebdir/ctang-w2c.ch" +#line 217 "cwebdir/ctang-w2c.ch" init_node(name_pointer node) #line 202 "cwebdir/ctangle.w" { node->equiv= (char*)text_info; } void -#line 221 "cwebdir/ctang-w2c.ch" +#line 223 "cwebdir/ctang-w2c.ch" init_p(name_pointer p,char t){} #line 207 "cwebdir/ctangle.w" /*:21*//*25:*/ #line 260 "cwebdir/ctangle.w" -#line 231 "cwebdir/ctang-w2c.ch" +#line 233 "cwebdir/ctang-w2c.ch" static void store_two_bytes(sixteen_bits x) #line 264 "cwebdir/ctangle.w" @@ -525,7 +525,7 @@ if(tok_ptr+2> tok_mem_end)overflow("token"); /*:25*//*29:*/ #line 336 "cwebdir/ctangle.w" -#line 242 "cwebdir/ctang-w2c.ch" +#line 244 "cwebdir/ctang-w2c.ch" static void push_level(name_pointer p) #line 340 "cwebdir/ctangle.w" @@ -543,7 +543,7 @@ cur_section= 0; /*:29*//*30:*/ #line 355 "cwebdir/ctangle.w" -#line 253 "cwebdir/ctang-w2c.ch" +#line 255 "cwebdir/ctang-w2c.ch" static void pop_level(int flag) #line 359 "cwebdir/ctangle.w" @@ -560,7 +560,7 @@ if(stack_ptr> stack)cur_state= *stack_ptr; /*:30*//*32:*/ #line 391 "cwebdir/ctangle.w" -#line 263 "cwebdir/ctang-w2c.ch" +#line 265 "cwebdir/ctang-w2c.ch" static void get_output(void) #line 394 "cwebdir/ctangle.w" @@ -609,7 +609,7 @@ out_char(section_number); /*:32*//*36:*/ #line 481 "cwebdir/ctangle.w" -#line 273 "cwebdir/ctang-w2c.ch" +#line 275 "cwebdir/ctang-w2c.ch" static void flush_buffer(void) #line 484 "cwebdir/ctangle.w" @@ -626,7 +626,7 @@ cur_line++; /*:36*//*41:*/ #line 536 "cwebdir/ctangle.w" -#line 291 "cwebdir/ctang-w2c.ch" +#line 293 "cwebdir/ctang-w2c.ch" static void phase_two(void){ #line 539 "cwebdir/ctangle.w" @@ -677,7 +677,7 @@ for(an_output_file= end_output_files;an_output_file> cur_out_file;){ an_output_file--; sprint_section_name(output_file_name,*an_output_file); fclose(C_file); -#line 300 "cwebdir/ctang-w2c.ch" +#line 302 "cwebdir/ctang-w2c.ch" C_file= fopen(output_file_name,"wb"); #line 578 "cwebdir/ctangle.w" if(C_file==0)fatal("! Cannot open output file:",output_file_name); @@ -703,7 +703,7 @@ if(show_happiness)printf("\nDone."); /*:41*//*46:*/ #line 605 "cwebdir/ctangle.w" -#line 317 "cwebdir/ctang-w2c.ch" +#line 319 "cwebdir/ctang-w2c.ch" static void output_defs(void) #line 608 "cwebdir/ctangle.w" @@ -746,7 +746,7 @@ pop_level(0); #line 651 "cwebdir/ctangle.w" static void -#line 335 "cwebdir/ctang-w2c.ch" +#line 337 "cwebdir/ctang-w2c.ch" out_char(eight_bits cur_char) #line 655 "cwebdir/ctangle.w" { @@ -847,7 +847,7 @@ default:C_putc(cur_char);out_state= normal;break; /*:48*//*57:*/ #line 813 "cwebdir/ctangle.w" -#line 344 "cwebdir/ctang-w2c.ch" +#line 346 "cwebdir/ctang-w2c.ch" static eight_bits skip_ahead(void) #line 816 "cwebdir/ctangle.w" @@ -867,7 +867,7 @@ if(c!=ignore||*(loc-1)=='>')return(c); /*:57*//*59:*/ #line 848 "cwebdir/ctangle.w" -#line 354 "cwebdir/ctang-w2c.ch" +#line 356 "cwebdir/ctang-w2c.ch" static int skip_comment(boolean is_long_comment) #line 851 "cwebdir/ctangle.w" @@ -903,7 +903,7 @@ else loc++; /*:59*//*62:*/ #line 900 "cwebdir/ctangle.w" -#line 371 "cwebdir/ctang-w2c.ch" +#line 373 "cwebdir/ctang-w2c.ch" static eight_bits get_next(void) #line 903 "cwebdir/ctangle.w" @@ -928,7 +928,7 @@ id_first= cur_file_name; store_two_bytes((sixteen_bits)cur_line); } id_loc= id_first+strlen(id_first); -#line 408 "cwebdir/ctang-w2c.ch" +#line 410 "cwebdir/ctang-w2c.ch" {int a_l= id_lookup(id_first,id_loc,0)-name_dir;app_repl((a_l/0400)+0200); app_repl(a_l%0400);} #line 1237 "cwebdir/ctangle.w" @@ -1027,7 +1027,7 @@ else if(isalpha(c)||isxalpha(c)||ishigh(c)) #line 972 "cwebdir/ctangle.w" { id_first= --loc; -#line 388 "cwebdir/ctang-w2c.ch" +#line 390 "cwebdir/ctang-w2c.ch" while(isalpha((unsigned char)*++loc)||isdigit((unsigned char)*loc)||isxalpha(*loc)||ishigh(*loc)); #line 975 "cwebdir/ctangle.w" id_loc= loc;return(identifier); @@ -1194,7 +1194,7 @@ mistake:/*63:*/ switch(c){ case'+':if(*loc=='+')compress(plus_plus);break; case'-':if(*loc=='-'){compress(minus_minus);} -#line 381 "cwebdir/ctang-w2c.ch" +#line 383 "cwebdir/ctang-w2c.ch" else if(*loc=='>'){if(*(loc+1)=='*'){loc++;compress(minus_gt_ast);} else compress(minus_gt);}break; #line 956 "cwebdir/ctangle.w" @@ -1224,7 +1224,7 @@ return(c); /*:62*//*75:*/ #line 1199 "cwebdir/ctangle.w" -#line 398 "cwebdir/ctang-w2c.ch" +#line 400 "cwebdir/ctang-w2c.ch" static void scan_repl(eight_bits t) #line 1203 "cwebdir/ctangle.w" @@ -1242,7 +1242,7 @@ id_first= cur_file_name; store_two_bytes((sixteen_bits)cur_line); } id_loc= id_first+strlen(id_first); -#line 408 "cwebdir/ctang-w2c.ch" +#line 410 "cwebdir/ctang-w2c.ch" {int a_l= id_lookup(id_first,id_loc,0)-name_dir;app_repl((a_l/0400)+0200); app_repl(a_l%0400);} #line 1237 "cwebdir/ctangle.w" @@ -1290,7 +1290,7 @@ id_first= cur_file_name; store_two_bytes((sixteen_bits)cur_line); } id_loc= id_first+strlen(id_first); -#line 408 "cwebdir/ctang-w2c.ch" +#line 410 "cwebdir/ctang-w2c.ch" {int a_l= id_lookup(id_first,id_loc,0)-name_dir;app_repl((a_l/0400)+0200); app_repl(a_l%0400);} #line 1237 "cwebdir/ctangle.w" @@ -1318,7 +1318,7 @@ id_first= cur_file_name; store_two_bytes((sixteen_bits)cur_line); } id_loc= id_first+strlen(id_first); -#line 408 "cwebdir/ctang-w2c.ch" +#line 410 "cwebdir/ctang-w2c.ch" {int a_l= id_lookup(id_first,id_loc,0)-name_dir;app_repl((a_l/0400)+0200); app_repl(a_l%0400);} #line 1237 "cwebdir/ctangle.w" @@ -1374,14 +1374,14 @@ case'x': if(xisdigit(*(id_first+1)))c= *(++id_first)-'0'; else if(xisxdigit(*(id_first+1))){ ++id_first; -#line 417 "cwebdir/ctang-w2c.ch" +#line 419 "cwebdir/ctang-w2c.ch" c= toupper((unsigned char)*id_first)-'A'+10; #line 1324 "cwebdir/ctangle.w" } if(xisdigit(*(id_first+1)))c= 16*c+*(++id_first)-'0'; else if(xisxdigit(*(id_first+1))){ ++id_first; -#line 422 "cwebdir/ctang-w2c.ch" +#line 424 "cwebdir/ctang-w2c.ch" c= 16*c+toupper((unsigned char)*id_first)-'A'+10; #line 1329 "cwebdir/ctangle.w" } @@ -1428,7 +1428,7 @@ cur_text= text_ptr;(++text_ptr)->tok_start= tok_ptr; /*:75*//*82:*/ #line 1360 "cwebdir/ctangle.w" -#line 431 "cwebdir/ctang-w2c.ch" +#line 433 "cwebdir/ctang-w2c.ch" static void scan_section(void) #line 1363 "cwebdir/ctangle.w" @@ -1541,7 +1541,7 @@ cur_text->text_link= section_flag; /*:82*//*90:*/ #line 1463 "cwebdir/ctangle.w" -#line 449 "cwebdir/ctang-w2c.ch" +#line 451 "cwebdir/ctang-w2c.ch" static void phase_one(void){ #line 1466 "cwebdir/ctangle.w" @@ -1557,7 +1557,7 @@ phase= 2; /*:90*//*92:*/ #line 1481 "cwebdir/ctangle.w" -#line 467 "cwebdir/ctang-w2c.ch" +#line 469 "cwebdir/ctang-w2c.ch" static void skip_limbo(void) #line 1484 "cwebdir/ctangle.w" @@ -1618,7 +1618,7 @@ default:err_print("! Double @ should be used in limbo"); #line 1536 "cwebdir/ctangle.w" void -#line 476 "cwebdir/ctang-w2c.ch" +#line 478 "cwebdir/ctang-w2c.ch" print_stats(void){ #line 1539 "cwebdir/ctangle.w" printf("\nMemory usage statistics:\n"); diff --git a/source/texk/web2c/cwebboot.cin b/source/texk/web2c/cwebboot.cin index 38f65b8ef..b8f0a754c 100644 --- a/source/texk/web2c/cwebboot.cin +++ b/source/texk/web2c/cwebboot.cin @@ -250,7 +250,7 @@ FILE*C_file; FILE*tex_file; FILE*idx_file; FILE*scn_file; -#line 730 "cwebdir/comm-w2c.ch" +#line 736 "cwebdir/comm-w2c.ch" FILE*active_file; char*found_filename; #line 1376 "cwebdir/common.w" @@ -283,7 +283,7 @@ static int section_name_cmp(char**,int,name_pointer); /*:55*//*71:*/ #line 1251 "cwebdir/common.w" -#line 647 "cwebdir/comm-w2c.ch" +#line 653 "cwebdir/comm-w2c.ch" static void scan_args(void); #line 1253 "cwebdir/common.w" @@ -334,7 +334,7 @@ kpse_set_program_name(argv[0],"cweb"); /*70:*/ #line 1233 "cwebdir/common.w" -#line 639 "cwebdir/comm-w2c.ch" +#line 645 "cwebdir/comm-w2c.ch" show_banner= show_happiness= show_progress= 1; #line 1235 "cwebdir/common.w" @@ -346,14 +346,14 @@ show_banner= show_happiness= show_progress= 1; scan_args(); if(program==ctangle){ -#line 739 "cwebdir/comm-w2c.ch" +#line 745 "cwebdir/comm-w2c.ch" if((C_file= fopen(C_file_name,"wb"))==NULL) #line 1381 "cwebdir/common.w" fatal("! Cannot open output file ",C_file_name); } else{ -#line 745 "cwebdir/comm-w2c.ch" +#line 751 "cwebdir/comm-w2c.ch" if((tex_file= fopen(tex_file_name,"wb"))==NULL) #line 1386 "cwebdir/common.w" fatal("! Cannot open output file ",tex_file_name); @@ -1098,7 +1098,9 @@ void fatal(const char*s,const char*t) #line 1182 "cwebdir/common.w" { +#line 595 "cwebdir/comm-w2c.ch" if(*s)printf("%s",s); +#line 1184 "cwebdir/common.w" err_print(t); history= fatal_message;exit(wrap_up()); } @@ -1106,7 +1108,7 @@ history= fatal_message;exit(wrap_up()); /*:66*//*67:*/ #line 1190 "cwebdir/common.w" void -#line 598 "cwebdir/comm-w2c.ch" +#line 604 "cwebdir/comm-w2c.ch" overflow(const char*t) #line 1193 "cwebdir/common.w" { @@ -1117,7 +1119,7 @@ printf("\n! Sorry, %s capacity exceeded",t);fatal("",""); /*:67*//*72:*/ #line 1254 "cwebdir/common.w" -#line 657 "cwebdir/comm-w2c.ch" +#line 663 "cwebdir/comm-w2c.ch" static void scan_args(void) #line 1257 "cwebdir/common.w" @@ -1131,40 +1133,40 @@ boolean flag_change; while(--argc> 0){ if((**(++argv)=='-'||**argv=='+')&&*(*argv+1))/*76:*/ -#line 682 "cwebdir/comm-w2c.ch" +#line 688 "cwebdir/comm-w2c.ch" { if(strcmp("-help",*argv)==0||strcmp("--help",*argv)==0) /*86:*/ -#line 797 "cwebdir/comm-w2c.ch" +#line 803 "cwebdir/comm-w2c.ch" usagehelp(program==ctangle?CTANGLEHELP:CWEAVEHELP,NULL); /*:86*/ -#line 685 "cwebdir/comm-w2c.ch" +#line 691 "cwebdir/comm-w2c.ch" ; if(strcmp("-version",*argv)==0||strcmp("--version",*argv)==0) /*87:*/ -#line 806 "cwebdir/comm-w2c.ch" +#line 812 "cwebdir/comm-w2c.ch" printversionandexit((program==ctangle?ctangle_banner:cweave_banner), "Silvio Levy and Donald E. Knuth",NULL,NULL); /*:87*/ -#line 687 "cwebdir/comm-w2c.ch" +#line 693 "cwebdir/comm-w2c.ch" ; #line 1346 "cwebdir/common.w" if(**argv=='-')flag_change= 0; -#line 693 "cwebdir/comm-w2c.ch" +#line 699 "cwebdir/comm-w2c.ch" else flag_change= 1; if(*(*argv+1)=='d') if(sscanf(*argv+2,"%u",&kpathsea_debug)!=1)/*77:*/ #line 1352 "cwebdir/common.w" { -#line 716 "cwebdir/comm-w2c.ch" +#line 722 "cwebdir/comm-w2c.ch" if(program==ctangle){ fprintf(stderr,"ctangle: Need one to three file arguments.\n"); usage("ctangle"); @@ -1176,11 +1178,11 @@ usage("cweave"); } /*:77*/ -#line 695 "cwebdir/comm-w2c.ch" +#line 701 "cwebdir/comm-w2c.ch" ; #line 1348 "cwebdir/common.w" for(dot_pos= *argv+1;*dot_pos> '\0';dot_pos++) -#line 701 "cwebdir/comm-w2c.ch" +#line 707 "cwebdir/comm-w2c.ch" flags[(unsigned char)*dot_pos]= flag_change; #line 1350 "cwebdir/common.w" } @@ -1280,7 +1282,7 @@ sprintf(scn_file_name,"%s.scn",*argv); found_out= 1; } -#line 682 "cwebdir/comm-w2c.ch" +#line 688 "cwebdir/comm-w2c.ch" /*:75*/ #line 1277 "cwebdir/common.w" @@ -1288,7 +1290,7 @@ else/*77:*/ #line 1352 "cwebdir/common.w" { -#line 716 "cwebdir/comm-w2c.ch" +#line 722 "cwebdir/comm-w2c.ch" if(program==ctangle){ fprintf(stderr,"ctangle: Need one to three file arguments.\n"); usage("ctangle"); @@ -1308,7 +1310,7 @@ if(!found_web)/*77:*/ #line 1352 "cwebdir/common.w" { -#line 716 "cwebdir/comm-w2c.ch" +#line 722 "cwebdir/comm-w2c.ch" if(program==ctangle){ fprintf(stderr,"ctangle: Need one to three file arguments.\n"); usage("ctangle"); @@ -1322,7 +1324,7 @@ usage("cweave"); /*:77*/ #line 1281 "cwebdir/common.w" ; -#line 667 "cwebdir/comm-w2c.ch" +#line 673 "cwebdir/comm-w2c.ch" if(found_change<=0)strcpy(change_file_name,DEV_NULL); #line 1283 "cwebdir/common.w" } diff --git a/source/texk/web2c/cwebboot.hin b/source/texk/web2c/cwebboot.hin index 9028733d3..23678f6d0 100644 --- a/source/texk/web2c/cwebboot.hin +++ b/source/texk/web2c/cwebboot.hin @@ -1,5 +1,5 @@ /*84:*/ -#line 786 "cwebdir/comm-w2c.ch" +#line 792 "cwebdir/comm-w2c.ch" /* Prototypes for functions, either * declared in common.w and used in ctangle.w and cweave.w, or @@ -43,7 +43,7 @@ extern void overflow(const char*); #line 1175 "cwebdir/common.w" /*:65*//*83:*/ -#line 767 "cwebdir/comm-w2c.ch" +#line 773 "cwebdir/comm-w2c.ch" extern void common_init(void); extern int input_ln(FILE*fp); @@ -56,9 +56,9 @@ extern void sprint_section_name(char*dest,name_pointer p); extern name_pointer section_lookup(char*first,char*last,int ispref); #line 1417 "cwebdir/common.w" -#line 782 "cwebdir/comm-w2c.ch" +#line 788 "cwebdir/comm-w2c.ch" /*:83*/ -#line 790 "cwebdir/comm-w2c.ch" +#line 796 "cwebdir/comm-w2c.ch" extern const char*versionstring; diff --git a/source/texk/web2c/cwebdir/ChangeLog b/source/texk/web2c/cwebdir/ChangeLog index 8e71c0220..e982318a2 100644 --- a/source/texk/web2c/cwebdir/ChangeLog +++ b/source/texk/web2c/cwebdir/ChangeLog @@ -1,3 +1,19 @@ +2018-12-30 Andreas Scherer <https://ascherer.github.io> + + * cweave.w, + * common.w, + * common.c, + * ../cwebboot.cin: do not change the CWEB sources, use + changefile entries instead. + * examples: add directory (unchanged) from cweb-3.64c.tar.gz. + +2018-11-02 Andreas Scherer <https://ascherer.github.io> + + * ctang-w2c.ch, + * cweav-w2c.ch, + * ../ctangleboot.cin: clean build with non-implicit 'int change_depth'. + tex-k mail, 2 Nov 2018 18:03:39. + 2018-01-18 Karl Berry <karl@tug.org> * cweave.w, diff --git a/source/texk/web2c/cwebdir/comm-w2c.ch b/source/texk/web2c/cwebdir/comm-w2c.ch index 426a011b6..d1ed2df5b 100644 --- a/source/texk/web2c/cwebdir/comm-w2c.ch +++ b/source/texk/web2c/cwebdir/comm-w2c.ch @@ -589,6 +589,12 @@ fatal(s,t) fatal (const char *s, const char *t) @z +@x l.1183 + if (*s) printf(s); +@y + if (*s) printf("%s",s); +@z + Section 65. @x l.1191 diff --git a/source/texk/web2c/cwebdir/common.c b/source/texk/web2c/cwebdir/common.c index 25bd81007..2bf7a9d4a 100644 --- a/source/texk/web2c/cwebdir/common.c +++ b/source/texk/web2c/cwebdir/common.c @@ -1063,7 +1063,7 @@ void fatal(s,t) char*s,*t; { -if(*s)printf("%s",s); +if(*s)printf(s); err_print(t); history= fatal_message;exit(wrap_up()); } diff --git a/source/texk/web2c/cwebdir/common.w b/source/texk/web2c/cwebdir/common.w index da3df6d3b..d8aacfb7b 100644 --- a/source/texk/web2c/cwebdir/common.w +++ b/source/texk/web2c/cwebdir/common.w @@ -1180,7 +1180,7 @@ concatenated to print the final error message. fatal(s,t) char *s,*t; { - if (*s) printf("%s",s); + if (*s) printf(s); err_print(t); history=fatal_message; exit(wrap_up()); } diff --git a/source/texk/web2c/cwebdir/ctang-w2c.ch b/source/texk/web2c/cwebdir/ctang-w2c.ch index 1b58dc240..133509afb 100644 --- a/source/texk/web2c/cwebdir/ctang-w2c.ch +++ b/source/texk/web2c/cwebdir/ctang-w2c.ch @@ -176,9 +176,11 @@ extern int include_depth; /* current level of nesting */ @x common.h l.148 - explicit types. extern line[]; /* number of current line in the stacked files */ extern change_line; /* number of current line in change file */ +extern change_depth; /* where \.{@@y} originated during a change */ @y extern int line[]; /* number of current line in the stacked files */ extern int change_line; /* number of current line in change file */ +extern int change_depth; /* where \.{@@y} originated during a change */ @z @x common.h l.153 - protos now all in cweb.h. diff --git a/source/texk/web2c/cwebdir/cweav-w2c.ch b/source/texk/web2c/cwebdir/cweav-w2c.ch index c4dada00d..193bda51b 100644 --- a/source/texk/web2c/cwebdir/cweav-w2c.ch +++ b/source/texk/web2c/cwebdir/cweav-w2c.ch @@ -202,9 +202,11 @@ extern int include_depth; /* current level of nesting */ @x common.h l.148 - explicit types. extern line[]; /* number of current line in the stacked files */ extern change_line; /* number of current line in change file */ +extern change_depth; /* where \.{@@y} originated during a change */ @y extern int line[]; /* number of current line in the stacked files */ extern int change_line; /* number of current line in change file */ +extern int change_depth; /* where \.{@@y} originated during a change */ @z @x common.h l.153 - protos now all in cweb.h. @@ -597,6 +599,12 @@ static void print_cat (eight_bits c) @z +@x l.1788 + printf(cat_name[c]); +@y + printf("%s",cat_name[c]); +@z + Section 106. @x l.2138 diff --git a/source/texk/web2c/cwebdir/cweave.w b/source/texk/web2c/cwebdir/cweave.w index 38afa9344..e06762b1f 100644 --- a/source/texk/web2c/cwebdir/cweave.w +++ b/source/texk/web2c/cwebdir/cweave.w @@ -1785,7 +1785,7 @@ void print_cat(c) /* symbolic printout of a category */ eight_bits c; { - printf("%s",cat_name[c]); + printf(cat_name[c]); } @ The token lists for translated \TEX/ output contain some special control diff --git a/source/texk/web2c/lib/ChangeLog b/source/texk/web2c/lib/ChangeLog index e787c982c..ca3bbb0c2 100644 --- a/source/texk/web2c/lib/ChangeLog +++ b/source/texk/web2c/lib/ChangeLog @@ -1,3 +1,52 @@ +2019-01-01 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * printversion.c: Update copyright year. + +2018-12-17 Igor Liferenko <igor.liferenko@gmail.com> + + * texmfmp.c (maininit): default to guessing an explicit &dumpname + as the "preloaded" (not really) format, if one was specified. + tex-k msgs of 23 Sep 2018 12:13:06, 23 Sep 2018 18:36:52. + (With comment and formatting tinkering from karl.) + +2018-12-17 Andreas Scherer <https://ascherer.github.io> + + * printversion.c (printversionandexit): Search for PROGNAME + in banner independent of 'This is' prefix. + +2018-11-19 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * texmfmp.c: Remove unused functions for XeTeX. + Check kpse_in_name_ok() in getfilesize(), getfiledump(), + and getmd5sum(). + +2018-11-18 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * texmfmp.c: Make necessary changes for XeTeX in + getcreationdate(), getfilemoddate(), getfilesize(), + and getfiledump(). + +2018-11-17 Joseph Wright <joseph.wright@morningstar2.co.uk> + + * texmfmp.c: Support some primitives from pdfTeX in XeTeX. + +2018-11-14 Andreas Scherer <https://ascherer.github.io> + + * printversion.c: free xmalloc'd prog_name. + +2018-11-13 Karl Berry <karl@freefriends.org> + + * texmfmp.c (FORCE_SOURCE_DATE_set, SOURCE_DATE_EPOCH_set): new static. + (init_start_time, get_date_and_time): initialize them. + (getfilemoddate): use_utc if both vars set. + Original suggestion from Ulrike Fischer, tex-live 3 Nov 2018 23:00:48, + original patch from Akira Kakuto. + (getfilemoddate): also, return nothing if ! kpse_in_name_ok. + +2018-11-04 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * openclose.c: cleanup for non-ascii file names (w32 only) + 2018-06-28 Karl Berry <karl@freefriends.org> * openclose.c (open_input_with_dirname): do not prepend the diff --git a/source/texk/web2c/lib/openclose.c b/source/texk/web2c/lib/openclose.c index 44dcf4517..945c73267 100644 --- a/source/texk/web2c/lib/openclose.c +++ b/source/texk/web2c/lib/openclose.c @@ -12,12 +12,59 @@ #include <ptexenc/ptexenc.h> #endif -#ifdef WIN32 +#ifdef _WIN32 +static int fsyscp_remove(char *s) +{ + wchar_t *sw = NULL; + int ret; + + if(!file_system_codepage) + return remove(s); + + sw = get_wstring_from_fsyscp(s, sw); + ret = _wremove(sw); + if(sw) free(sw); + return ret; +} + +static int fsyscp_rename(char *s1, char *s2) +{ + wchar_t *sw1 = NULL, *sw2 = NULL; + int ret; + + if(!file_system_codepage) + return rename(s1, s2); + + sw1 = get_wstring_from_fsyscp(s1, sw1); + sw2 = get_wstring_from_fsyscp(s2, sw2); + ret = _wrename(sw1, sw2); + if(sw1) free(sw1); + if(sw2) free(sw2); + return ret; +} + +static FILE *f_fsyscp_fopen(const char *filename, const char *mode) +{ + if(!file_system_codepage) + return fopen(filename, mode); + + return fsyscp_fopen(filename, mode); +} + +static FILE *f_fsyscp_xfopen(const char *filename, const char *mode) +{ + if(!file_system_codepage) + return xfopen(filename, mode); + + return fsyscp_xfopen(filename, mode); +} #undef fopen #undef xfopen -#define fopen fsyscp_fopen -#define xfopen fsyscp_xfopen -#endif +#define fopen f_fsyscp_fopen +#define xfopen f_fsyscp_xfopen +#define rename fsyscp_rename +#define remove fsyscp_remove +#endif /* _WIN32 */ /* The globals we use to communicate. */ extern string nameoffile; @@ -87,9 +134,9 @@ recorder_change_filename (string new_name) return; /* On windows, an opened file cannot be renamed. */ -#if defined(WIN32) +#if defined(_WIN32) fclose (recorder_file); -#endif +#endif /* _WIN32 */ /* If an output directory was specified, use it. */ if (output_directory) { @@ -98,18 +145,18 @@ recorder_change_filename (string new_name) } /* On windows, renaming fails if a file with new_name exists. */ -#if defined(WIN32) +#if defined(_WIN32) remove (new_name); -#endif +#endif /* _WIN32 */ rename(recorder_name, new_name); free(recorder_name); recorder_name = xstrdup(new_name); /* reopen the recorder file by FOPEN_A_MODE. */ -#if defined(WIN32) - recorder_file = fsyscp_xfopen (recorder_name, FOPEN_A_MODE); -#endif +#if defined(_WIN32) + recorder_file = xfopen (recorder_name, FOPEN_A_MODE); +#endif /* _WIN32 */ if (temp) free (temp); diff --git a/source/texk/web2c/lib/printversion.c b/source/texk/web2c/lib/printversion.c index cba87a949..e1acd798e 100644 --- a/source/texk/web2c/lib/printversion.c +++ b/source/texk/web2c/lib/printversion.c @@ -28,22 +28,27 @@ printversionandexit (const_string banner, { string prog_name; unsigned len; + const_string prog_name_start; const_string prog_name_end = strchr (banner, ','); const_string prog_version = strrchr (banner, ' '); assert (prog_name_end && prog_version); prog_version++; - len = prog_name_end - banner - sizeof ("This is"); + len = prog_name_end - banner; prog_name = xmalloc (len + 1); - strncpy (prog_name, banner + sizeof ("This is"), len); + strncpy (prog_name, banner, len); prog_name[len] = 0; + prog_name_start = strrchr (prog_name, ' '); + assert (prog_name_start); + prog_name_start++; + /* The Web2c version string starts with a space. */ #ifdef PTEX - printf ("%s %s (%s)%s\n", prog_name, prog_version, get_enc_string(), + printf ("%s %s (%s)%s\n", prog_name_start, prog_version, get_enc_string(), versionstring); #else - printf ("%s %s%s\n", prog_name, prog_version, versionstring); + printf ("%s %s%s\n", prog_name_start, prog_version, versionstring); #endif puts (kpathsea_version_string); #ifdef PTEX @@ -51,21 +56,23 @@ printversionandexit (const_string banner, #endif if (copyright_holder) { - printf ("Copyright 2018 %s.\n", copyright_holder); + printf ("Copyright 2019 %s.\n", copyright_holder); if (!author) author = copyright_holder; } puts ("There is NO warranty. Redistribution of this software is"); fputs ("covered by the terms of ", stdout); - printf ("both the %s copyright and\n", prog_name); + printf ("both the %s copyright and\n", prog_name_start); puts ("the Lesser GNU General Public License."); puts ("For more information about these matters, see the file"); - printf ("named COPYING and the %s source.\n", prog_name); - printf ("Primary author of %s: %s.\n", prog_name, author); + printf ("named COPYING and the %s source.\n", prog_name_start); + printf ("Primary author of %s: %s.\n", prog_name_start, author); if (extra_info) fputs (extra_info, stdout); + free (prog_name); + uexit (0); } diff --git a/source/texk/web2c/lib/texmfmp.c b/source/texk/web2c/lib/texmfmp.c index f6c98b5bb..c0606272b 100644 --- a/source/texk/web2c/lib/texmfmp.c +++ b/source/texk/web2c/lib/texmfmp.c @@ -151,7 +151,22 @@ char *generic_synctex_get_current_name (void) #if !IS_pTeX FILE *Poptr; #endif -#endif +#undef fopen +#undef xfopen +#define fopen fsyscp_fopen +#define xfopen fsyscp_xfopen +#include <wchar.h> +int fsyscp_stat(const char *path, struct stat *buffer) +{ + wchar_t *wpath; + int ret; + wpath = get_wstring_from_mbstring(file_system_codepage, + path, wpath = NULL); + ret = _wstat(wpath, buffer); + free(wpath); + return ret; +} +#endif /* WIN32 */ #if defined(TeX) || (defined(MF) && defined(WIN32)) static int @@ -768,7 +783,7 @@ maininit (int ac, string *av) xputenv ("engine", TEXMFENGINENAME); /* Were we given a simple filename? */ - main_input_file = get_input_file_name(); + main_input_file = get_input_file_name (); #ifdef WIN32 if (main_input_file == NULL) { @@ -838,7 +853,9 @@ maininit (int ac, string *av) translate_filename = default_translate_filename; } /* If we're preloaded, I guess everything is set up. I don't really - know any more, it's been so long since anyone preloaded. */ + know any more, it's been so long since anyone truly preloaded. We + still use the word "preloaded" in the messages, though (via the + original .web sources), at Knuth's request. */ if (readyalready != 314159) { /* The `ini_version' variable is declared/used in the change files. */ boolean virversion = false; @@ -858,9 +875,16 @@ maininit (int ac, string *av) #endif /* TeX */ } + /* If run like `tex \&foo', reasonable to guess "foo" as the fmt name. */ + if (!main_input_file) { + if (argv[1] && *argv[1] == '&') { + dump_name = argv[1] + 1; + } + } + if (!dump_name) { /* If called as *vir{mf,tex,mpost} use `plain'. Otherwise, use the - name we were invoked under. */ + name we were invoked under as our best guess. */ dump_name = (virversion ? "plain" : kpse_program_name); } } @@ -1379,24 +1403,6 @@ tcx_get_num (int upb, /* FIXME: A new format ought to be introduced for these files. */ -#ifdef _WIN32 -#undef fopen -#undef xfopen -#define fopen fsyscp_fopen -#define xfopen fsyscp_xfopen -#include <wchar.h> -int fsyscp_stat(const char *path, struct stat *buffer) -{ - wchar_t *wpath; - int ret; - wpath = get_wstring_from_mbstring(file_system_codepage, - path, wpath = NULL); - ret = _wstat(wpath, buffer); - free(wpath); - return ret; -} -#endif /* WIN32 */ - void readtcxfile (void) { @@ -2219,6 +2225,9 @@ catch_interrupt (int arg) static boolean start_time_set = false; static time_t start_time = 0; +static boolean SOURCE_DATE_EPOCH_set = false; +static boolean FORCE_SOURCE_DATE_set = false; + void init_start_time() { char *source_date_epoch; unsigned long long epoch; @@ -2239,6 +2248,7 @@ FATAL1 ("invalid epoch-seconds-timezone value for environment variable $SOURCE_D epoch = 32535291599ULL; #endif start_time = epoch; + SOURCE_DATE_EPOCH_set = true; } else #endif /* not onlyTeX */ { @@ -2263,6 +2273,7 @@ get_date_and_time (integer *minutes, integer *day, if (sde_texprim && STREQ (sde_texprim, "1")) { init_start_time (); tmptr = gmtime (&start_time); + FORCE_SOURCE_DATE_set = true; } else #endif /* not onlyTeX */ { @@ -2317,7 +2328,7 @@ WARNING1 ("invalid value (expected 0 or 1) for environment variable $FORCE_SOURC } } -#if defined(pdfTeX) || defined(epTeX) || defined(eupTeX) +#if defined(pdfTeX) || defined(epTeX) || defined(eupTeX) || defined(XeTeX) /* Getting a high resolution time. */ @@ -3005,8 +3016,6 @@ void pdftex_fail(const char *fmt, ...) } #endif /* not pdfTeX */ -#if !defined(XeTeX) - #define TIME_STR_SIZE 30 char start_time_str[TIME_STR_SIZE]; static char time_str[TIME_STR_SIZE]; @@ -3077,6 +3086,7 @@ void initstarttime(void) } } +#if !defined(XeTeX) char *makecstring(integer s) { static char *cstrbuf = NULL; @@ -3125,10 +3135,14 @@ char *makecfilename(integer s) *q = '\0'; return name; } +#endif /* !XeTeX */ void getcreationdate(void) { size_t len; +#if defined(XeTeX) + int i; +#endif initstarttime(); /* put creation date on top of string pool and update poolptr */ len = strlen(start_time_str); @@ -3142,18 +3156,31 @@ void getcreationdate(void) return; } +#if defined(XeTeX) + for (i = 0; i < len; i++) + strpool[poolptr++] = (uint16_t)start_time_str[i]; +#else memcpy(&strpool[poolptr], start_time_str, len); +#endif poolptr += len; } void getfilemoddate(integer s) { struct stat file_data; - - char *file_name = kpse_find_tex(makecfilename(s)); +#if defined(XeTeX) + int i; + const_string orig_name = gettexstring(s); +#else + const_string orig_name = makecfilename(s); +#endif + char *file_name = kpse_find_tex(orig_name); if (file_name == NULL) { return; /* empty string */ } + if (! kpse_in_name_ok(file_name)) { + return; /* no permission */ + } recorder_record_input(file_name); /* get file status */ @@ -3163,15 +3190,20 @@ void getfilemoddate(integer s) if (stat(file_name, &file_data) == 0) { #endif size_t len; - - makepdftime(file_data.st_mtime, time_str, /* utc= */false); + boolean use_utc = FORCE_SOURCE_DATE_set && SOURCE_DATE_EPOCH_set; + makepdftime(file_data.st_mtime, time_str, use_utc); len = strlen(time_str); if ((unsigned) (poolptr + len) >= (unsigned) (poolsize)) { poolptr = poolsize; /* error by str_toks that calls str_room(1) */ } else { +#if defined(XeTeX) + for (i = 0; i < len; i++) + strpool[poolptr++] = (uint16_t)time_str[i]; +#else memcpy(&strpool[poolptr], time_str, len); poolptr += len; +#endif } } /* else { errno contains error code } */ @@ -3184,10 +3216,17 @@ void getfilesize(integer s) struct stat file_data; int i; +#if defined(XeTeX) + char *file_name = kpse_find_tex(gettexstring(s)); +#else char *file_name = kpse_find_tex(makecfilename(s)); +#endif if (file_name == NULL) { return; /* empty string */ } + if (! kpse_in_name_ok(file_name)) { + return; /* no permission */ + } recorder_record_input(file_name); /* get file status */ @@ -3208,8 +3247,13 @@ void getfilesize(integer s) poolptr = poolsize; /* error by str_toks that calls str_room(1) */ } else { +#if defined(XeTeX) + for (i = 0; i < len; i++) + strpool[poolptr++] = (uint16_t)buf[i]; +#else memcpy(&strpool[poolptr], buf, len); poolptr += len; +#endif } } /* else { errno contains error code } */ @@ -3221,8 +3265,13 @@ void getfiledump(integer s, int offset, int length) { FILE *f; int read, i; +#if defined(XeTeX) + char *readbuffer, strbuf[3]; + int j, k; +#else poolpointer data_ptr; poolpointer data_end; +#endif /* XeTeX */ char *file_name; if (length == 0) { @@ -3237,10 +3286,17 @@ void getfiledump(integer s, int offset, int length) return; } +#if defined(XeTeX) + file_name = kpse_find_tex(gettexstring(s)); +#else file_name = kpse_find_tex(makecfilename(s)); +#endif if (file_name == NULL) { return; /* empty string */ } + if (! kpse_in_name_ok(file_name)) { + return; /* no permission */ + } /* read file data */ f = fopen(file_name, FOPEN_RBIN_MODE); @@ -3253,6 +3309,18 @@ void getfiledump(integer s, int offset, int length) xfree(file_name); return; } +#if defined(XeTeX) + readbuffer = (char *)xmalloc (length + 1); + read = fread(readbuffer, sizeof(char), length, f); + fclose(f); + for (j = 0; j < read; j++) { + i = snprintf (strbuf, 3, "%.2X", (unsigned int)readbuffer[j]); + check_nprintf(i, 3); + for (k = 0; k < i; k++) + strpool[poolptr++] = (uint16_t)strbuf[k]; + } + xfree (readbuffer); +#else /* there is enough space in the string pool, the read data are put in the upper half of the result, thus the conversion to hex can be done without overwriting @@ -3269,9 +3337,9 @@ void getfiledump(integer s, int offset, int length) check_nprintf(i, 3); poolptr += i; } +#endif /* XeTeX */ xfree(file_name); } -#endif /* not XeTeX */ /* Converts any given string in into an allowed PDF string which is * hexadecimal encoded; @@ -3322,6 +3390,10 @@ void getmd5sum(strnumber s, boolean file) if (file_name == NULL) { return; /* empty string */ } + if (! kpse_in_name_ok(file_name)) { + return; /* no permission */ + } + /* in case of error the empty string is returned, no need for xfopen that aborts on error. */ diff --git a/source/texk/web2c/luatexdir/am/libluatex.am b/source/texk/web2c/luatexdir/am/libluatex.am index e3678b64b..5f7ae526c 100644 --- a/source/texk/web2c/luatexdir/am/libluatex.am +++ b/source/texk/web2c/luatexdir/am/libluatex.am @@ -5,24 +5,29 @@ ## liblua52 ## -LUA_INCLUDES = $(LUA52_INCLUDES) $(LUA52_DEFINES) -LUA_LIBS = $(LUA52_LIBS) -LUA_DEPEND = $(LUA52_DEPEND) +#LUA_INCLUDES = $(LUA52_INCLUDES) $(LUA52_DEFINES) +#LUA_LIBS = $(LUA52_LIBS) +#LUA_DEPEND = $(LUA52_DEPEND) ## liblua53 ## -LUA_LUA53_INCLUDES = $(LUA53_INCLUDES) $(LUA53_DEFINES) -LUA_LUA53_LIBS = $(LUA53_LIBS) -LUA_LUA53_DEPEND = $(LUA53_DEPEND) +#LUA_LUA53_INCLUDES = $(LUA53_INCLUDES) $(LUA53_DEFINES) +#LUA_LUA53_LIBS = $(LUA53_LIBS) +#LUA_LUA53_DEPEND = $(LUA53_DEPEND) +LUA_INCLUDES = $(LUA53_INCLUDES) $(LUA53_DEFINES) +LUA_LIBS = $(LUA53_LIBS) +LUA_DEPEND = $(LUA53_DEPEND) + ## libluatex ## -EXTRA_LIBRARIES += libluatex.a liblua53tex.a libluajittex.a +#EXTRA_LIBRARIES += libluatex.a liblua53tex.a libluajittex.a +EXTRA_LIBRARIES += libluatex.a libluajittex.a libluatex_a_DEPENDENCIES = libff.a libluamisc.a -liblua53tex_a_DEPENDENCIES = libff.a liblua53misc.a +#liblua53tex_a_DEPENDENCIES = libff.a liblua53misc.a libluajittex_a_DEPENDENCIES = libff.a libluajitmisc.a libluatex_a_preflags = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) $(LIBPNG_INCLUDES) @@ -35,12 +40,12 @@ libluatex_a_preflags += -DLUA_FF_LIB=1 -I$(srcdir)/luatexdir/luafontloader/fontf libluatex_a_preflags += -DSYNCTEX_ENGINE_H='<synctex-luatex.h>' -I$(srcdir)/synctexdir libluatex_a_CPPFLAGS = $(libluatex_a_preflags) $(LUA_INCLUDES) -liblua53tex_a_CPPFLAGS = $(libluatex_a_preflags) $(LUA_LUA53_INCLUDES) +#liblua53tex_a_CPPFLAGS = $(libluatex_a_preflags) $(LUA_LUA53_INCLUDES) libluajittex_a_CPPFLAGS = $(libluatex_a_preflags) $(LUAJIT_INCLUDES) $(LUAJIT_DEFINES) libluajittex_a_CPPFLAGS += -DLuajitTeX libluatex_a_CXXFLAGS = $(WARNING_CXXFLAGS) -liblua53tex_a_CXXFLAGS = $(WARNING_CXXFLAGS) +#liblua53tex_a_CXXFLAGS = $(WARNING_CXXFLAGS) libluajittex_a_CXXFLAGS = $(WARNING_CXXFLAGS) dist_libluatex_a_SOURCES = \ @@ -50,13 +55,13 @@ dist_libluatex_a_SOURCES = \ nodist_libluatex_a_SOURCES = \ $(dist_libluatex_sources) \ $(nodist_libluatex_sources) -dist_liblua53tex_a_SOURCES = \ - luatexdir/lua/lstrlibext.c \ - luatexdir/lua/helpers.c \ - luatexdir/lua/texluac.c -nodist_liblua53tex_a_SOURCES = \ - $(dist_libluatex_sources) \ - $(nodist_libluatex_sources) +# dist_liblua53tex_a_SOURCES = \ +# luatexdir/lua/lstrlibext.c \ +# luatexdir/lua/helpers.c \ +# luatexdir/lua/texluac.c +# nodist_liblua53tex_a_SOURCES = \ +# $(dist_libluatex_sources) \ +# $(nodist_libluatex_sources) dist_libluajittex_a_SOURCES = \ luatexdir/lua/lauxlib_bridge.h \ luatexdir/lua/lstrlibext.c \ @@ -67,7 +72,7 @@ nodist_libluajittex_a_SOURCES = \ ## mplib "stub" backends are in mplibstuff.c $(libluatex_a_OBJECTS): libff.a libmplibcore.a libluamisc.a -$(liblua53tex_a_OBJECTS): libff.a libmplibcore.a liblua53misc.a +#$(liblua53tex_a_OBJECTS): libff.a libmplibcore.a liblua53misc.a $(libluajittex_a_OBJECTS): libff.a libmplibcore.a libluajitmisc.a @@ -633,7 +638,7 @@ dist_libluatex_sources += \ synctexdir/synctex.c \ synctexdir/synctex.h -dist_liblua53tex_sources = $(dist_libluatex_sources) +#dist_liblua53tex_sources = $(dist_libluatex_sources) EXTRA_DIST += \ $(dist_libluatex_sources) \ diff --git a/source/texk/web2c/luatexdir/am/luaffi.am b/source/texk/web2c/luatexdir/am/luaffi.am index c927b3df7..260b7da83 100644 --- a/source/texk/web2c/luatexdir/am/luaffi.am +++ b/source/texk/web2c/luatexdir/am/luaffi.am @@ -12,25 +12,26 @@ ## -EXTRA_LIBRARIES += libluaffi.a liblua53ffi.a +#EXTRA_LIBRARIES += libluaffi.a liblua53ffi.a +EXTRA_LIBRARIES += libluaffi.a #libluaffi_a_DEPENDENCIES = $(ZLIB_DEPEND) $(libluaffi_a_OBJECTS): $(LUA_DEPEND) -$(liblua53ffi_a_OBJECTS): $(LUA_LUA53_DEPEND) +#$(liblua53ffi_a_OBJECTS): $(LUA_LUA53_DEPEND) libluaffi_a_CPPFLAGS = \ -I$(top_srcdir)/luatexdir/luaffi -I$(top_srcdir)/luatexdir/luaffi/dynasm $(LUA_INCLUDES) -liblua53ffi_a_CPPFLAGS = \ - -I$(top_srcdir)/luatexdir/luaffi -I$(top_srcdir)/luatexdir/luaffi/dynasm $(LUA_LUA53_INCLUDES) +#liblua53ffi_a_CPPFLAGS = \ +# -I$(top_srcdir)/luatexdir/luaffi -I$(top_srcdir)/luatexdir/luaffi/dynasm $(LUA_LUA53_INCLUDES) libluaffi_a_CFLAGS = # $(WARNING_CFLAGS) -liblua53ffi_a_CFLAGS = # $(WARNING_CFLAGS) +#liblua53ffi_a_CFLAGS = # $(WARNING_CFLAGS) nodist_libluaffi_a_SOURCES = $(libluaffi_sources) -nodist_liblua53ffi_a_SOURCES = $(libluaffi_sources) +#nodist_liblua53ffi_a_SOURCES = $(libluaffi_sources) libluaffi_sources = \ @@ -44,7 +45,7 @@ libluaffi_sources = \ luatexdir/luaffi/ffi.h \ luatexdir/luaffi/parser.c -liblua53ffi_sources = $(libluaffi_sources) +#liblua53ffi_sources = $(libluaffi_sources) ## Not used ## #EXTRA_DIST diff --git a/source/texk/web2c/luatexdir/am/luamisc.am b/source/texk/web2c/luatexdir/am/luamisc.am index 014b6eb3f..9b9915e11 100644 --- a/source/texk/web2c/luatexdir/am/luamisc.am +++ b/source/texk/web2c/luatexdir/am/luamisc.am @@ -6,27 +6,28 @@ ## libluamisc (luafilesystem, luamd5, luapeg, luazip, luazlib, ## and slnunicode) -EXTRA_LIBRARIES += libluamisc.a liblua53misc.a libluajitmisc.a +#EXTRA_LIBRARIES += libluamisc.a liblua53misc.a libluajitmisc.a +EXTRA_LIBRARIES += libluamisc.a libluajitmisc.a libluamisc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) libluasocket.a libluaffi.a libluapplib.a -liblua53misc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) liblua53socket.a liblua53ffi.a liblua53pplib.a +#liblua53misc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) liblua53socket.a liblua53ffi.a liblua53pplib.a libluajitmisc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) libluajitsocket.a libluajitpplib.a $(libluamisc_a_OBJECTS): $(libluamisc_a_DEPENDENCIES) -$(liblua53misc_a_OBJECTS): $(liblua53misc_a_DEPENDENCIES) +#$(liblua53misc_a_OBJECTS): $(liblua53misc_a_DEPENDENCIES) $(libluajitmisc_a_OBJECTS): $(libluajitmisc_a_DEPENDENCIES) libluamisc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUA_INCLUDES) -liblua53misc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUA_LUA53_INCLUDES) +#liblua53misc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUA_LUA53_INCLUDES) libluajitmisc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUAJIT_INCLUDES) libluajitmisc_a_CPPFLAGS += -DLuajitTeX -I$(srcdir)/luatexdir libluamisc_a_CFLAGS = # $(WARNING_CFLAGS) -liblua53misc_a_CFLAGS = # $(WARNING_CFLAGS) +#liblua53misc_a_CFLAGS = # $(WARNING_CFLAGS) libluajitmisc_a_CFLAGS = # $(WARNING_CFLAGS) nodist_libluamisc_a_SOURCES = $(libluamisc_sources) -nodist_liblua53misc_a_SOURCES = $(libluamisc_sources) +#nodist_liblua53misc_a_SOURCES = $(libluamisc_sources) nodist_libluajitmisc_a_SOURCES = $(libluamisc_sources) libluamisc_sources = \ diff --git a/source/texk/web2c/luatexdir/am/luapplib.am b/source/texk/web2c/luatexdir/am/luapplib.am index ee6758a33..06293da4d 100644 --- a/source/texk/web2c/luatexdir/am/luapplib.am +++ b/source/texk/web2c/luatexdir/am/luapplib.am @@ -5,22 +5,23 @@ ## luapplib ## -EXTRA_LIBRARIES += libluapplib.a liblua53pplib.a libluajitpplib.a +#EXTRA_LIBRARIES += libluapplib.a liblua53pplib.a libluajitpplib.a +EXTRA_LIBRARIES += libluapplib.a libluajitpplib.a libluapplib_a_DEPENDENCIES = $(ZLIB_DEPEND) -liblua53pplib_a_DEPENDENCIES = $(ZLIB_DEPEND) +#liblua53pplib_a_DEPENDENCIES = $(ZLIB_DEPEND) libluajitpplib_a_DEPENDENCIES = $(ZLIB_DEPEND) $(libluapplib_a_OBJECTS): $(LUA_DEPEND) -$(liblua53pplib_a_OBJECTS): $(LUA_DEPEND) +#$(liblua53pplib_a_OBJECTS): $(LUA_DEPEND) $(libluajitpplib_a_OBJECTS): $(LUAJIT_DEPEND) libluapplib_a_CPPFLAGS = \ -I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/util $(ZLIB_INCLUDES) $(LUA_INCLUDES) -liblua53pplib_a_CPPFLAGS = \ - -I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/util $(ZLIB_INCLUDES) $(LUA_LUA53_INCLUDES) +#liblua53pplib_a_CPPFLAGS = \ +# -I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/util $(ZLIB_INCLUDES) $(LUA_LUA53_INCLUDES) libluajitpplib_a_CPPFLAGS = \ -I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/util $(ZLIB_INCLUDES) $(LUAJIT_INCLUDES) @@ -29,7 +30,7 @@ libluapplib_a_CFLAGS = # $(WARNING_CFLAGS) libluajitpplib_a_CFLAGS = # $(WARNING_CFLAGS) nodist_libluapplib_a_SOURCES = $(libluapplib_sources) -nodist_liblua53pplib_a_SOURCES = $(libluapplib_sources) +#nodist_liblua53pplib_a_SOURCES = $(libluapplib_sources) nodist_libluajitpplib_a_SOURCES = $(libluapplib_sources) libluapplib_sources = \ @@ -49,8 +50,12 @@ libluapplib_sources = \ luatexdir/luapplib/ppload.h \ luatexdir/luapplib/ppstream.c \ luatexdir/luapplib/ppstream.h \ + luatexdir/luapplib/pptest1.c \ + luatexdir/luapplib/pptest2.c \ + luatexdir/luapplib/pptest3.c \ luatexdir/luapplib/ppxref.c \ luatexdir/luapplib/ppxref.h \ + luatexdir/luapplib/util/utilarm.h \ luatexdir/luapplib/util/utilbasexx.c \ luatexdir/luapplib/util/utilbasexx.h \ luatexdir/luapplib/util/utilcrypt.c \ @@ -75,9 +80,8 @@ libluapplib_sources = \ luatexdir/luapplib/util/utilnumber.h \ luatexdir/luapplib/util/utilplat.h \ luatexdir/luapplib/util/utilsha.c \ - luatexdir/luapplib/util/utilsha.h \ + luatexdir/luapplib/util/utilsha.h - -liblua53pplib_sources = $(libluapplib_sources) +#liblua53pplib_sources = $(libluapplib_sources) libluajitpplib_sources = $(libluapplib_sources) diff --git a/source/texk/web2c/luatexdir/am/luasocket.am b/source/texk/web2c/luatexdir/am/luasocket.am index 8f8e1ab44..64dd20784 100644 --- a/source/texk/web2c/luatexdir/am/luasocket.am +++ b/source/texk/web2c/luatexdir/am/luasocket.am @@ -5,21 +5,22 @@ ## luasocket ## -EXTRA_LIBRARIES += libluasocket.a liblua53socket.a libluajitsocket.a +#EXTRA_LIBRARIES += libluasocket.a liblua53socket.a libluajitsocket.a +EXTRA_LIBRARIES += libluasocket.a libluajitsocket.a libluasocket_a_DEPENDENCIES = $(ZLIB_DEPEND) -liblua53socket_a_DEPENDENCIES = $(ZLIB_DEPEND) +#liblua53socket_a_DEPENDENCIES = $(ZLIB_DEPEND) libluajitsocket_a_DEPENDENCIES = $(ZLIB_DEPEND) $(libluasocket_a_OBJECTS): $(LUA_DEPEND) -$(liblua53socket_a_OBJECTS): $(LUA_DEPEND) +#$(liblua53socket_a_OBJECTS): $(LUA_DEPEND) $(libluajitsocket_a_OBJECTS): $(LUAJIT_DEPEND) libluasocket_a_CPPFLAGS = \ -DLUASOCKET_DEBUG -I$(top_srcdir)/luatexdir/luasocket $(LUA_INCLUDES) -liblua53socket_a_CPPFLAGS = \ - -DLUASOCKET_DEBUG -I$(top_srcdir)/luatexdir/luasocket $(LUA_LUA53_INCLUDES) +#liblua53socket_a_CPPFLAGS = \ +# -DLUASOCKET_DEBUG -I$(top_srcdir)/luatexdir/luasocket $(LUA_LUA53_INCLUDES) libluajitsocket_a_CPPFLAGS = \ -DLUASOCKET_DEBUG -I$(top_srcdir)/luatexdir/luasocket $(LUAJIT_INCLUDES) @@ -28,7 +29,7 @@ libluasocket_a_CFLAGS = # $(WARNING_CFLAGS) libluajitsocket_a_CFLAGS = # $(WARNING_CFLAGS) nodist_libluasocket_a_SOURCES = $(libluasocket_sources) -nodist_liblua53socket_a_SOURCES = $(libluasocket_sources) +#nodist_liblua53socket_a_SOURCES = $(libluasocket_sources) nodist_libluajitsocket_a_SOURCES = $(libluasocket_sources) libluasocket_sources = \ diff --git a/source/texk/web2c/luatexdir/am/luatex.am b/source/texk/web2c/luatexdir/am/luatex.am index 2fb4d64f6..9d289ab00 100644 --- a/source/texk/web2c/luatexdir/am/luatex.am +++ b/source/texk/web2c/luatexdir/am/luatex.am @@ -17,16 +17,16 @@ bin_links += luatex$(EXEEXT):texlua luatex$(EXEEXT):texluac endif !WIN32 endif LUATEX -if LUATEX53 -bin_PROGRAMS += luatex53 -if WIN32 -noinst_PROGRAMS += call_luatex53 -install_exe_links += install-luatex53-links -uninstall_exe_links += uninstall-luatex53-links -else !WIN32 -bin_links += luatex53$(EXEEXT):texlua53 -endif !WIN32 -endif LUATEX53 +#if LUATEX53 +#bin_PROGRAMS += luatex53 +#if WIN32 +#noinst_PROGRAMS += call_luatex53 +#install_exe_links += install-luatex53-links +#uninstall_exe_links += uninstall-luatex53-links +#else !WIN32 +#bin_links += luatex53$(EXEEXT):texlua53 +#endif !WIN32 +#endif LUATEX53 if LUAJITTEX bin_PROGRAMS += luajittex @@ -39,7 +39,8 @@ bin_links += luajittex$(EXEEXT):texluajit luajittex$(EXEEXT):texluajitc endif !WIN32 endif LUAJITTEX -EXTRA_PROGRAMS += luatex luatex53 luajittex +#EXTRA_PROGRAMS += luatex luatex53 luajittex +EXTRA_PROGRAMS += luatex luajittex # Force Automake to use CXXLD for linking #nodist_EXTRA_luatex_SOURCES = dummy.cxx @@ -52,16 +53,16 @@ luatex_postflags += -Dextra_version_info=`date +-%Y%m%d%H` luatex_postflags += -I$(srcdir)/synctexdir -DSYNCTEX_ENGINE_H='<synctex-luatex.h>' luatex_CPPFLAGS = $(luatex_preflags) $(LUA_INCLUDES) $(luatex_postflags) -luatex53_CPPFLAGS = $(luatex_preflags) $(LUA_LUA53_INCLUDES) $(luatex_postflags) +#luatex53_CPPFLAGS = $(luatex_preflags) $(LUA_LUA53_INCLUDES) $(luatex_postflags) luajittex_CPPFLAGS = $(luatex_preflags) $(LUAJIT_INCLUDES) $(LUAJIT_DEFINES) $(luatex_postflags) luajittex_CPPFLAGS += -DLuajitTeX luatex_CXXFLAGS = $(WARNING_CXXFLAGS) -luatex53_CXXFLAGS = $(WARNING_CXXFLAGS) +#luatex53_CXXFLAGS = $(WARNING_CXXFLAGS) luajittex_CXXFLAGS = $(WARNING_CXXFLAGS) luatex_LDFLAGS = -export-dynamic -luatex53_LDFLAGS = -export-dynamic +#luatex53_LDFLAGS = -export-dynamic luajittex_LDFLAGS = -export-dynamic $(LUAJIT_LDEXTRA) #luatex_postldadd = libmplibcore.a $(MPFR_LIBS) $(GMP_LIBS) @@ -71,20 +72,20 @@ luatex_postldadd += $(LDADD) libmputil.a libunilib.a libmd5.a $(lua_socketlibs) luatex_LDADD = libluatex.a libff.a libluamisc.a libluasocket.a libluaffi.a libluapplib.a $(LUA_LIBS) $(luatex_postldadd) -luatex53_LDADD = liblua53tex.a libff.a liblua53misc.a liblua53socket.a liblua53ffi.a liblua53pplib.a $(LUA_LUA53_LIBS) $(luatex_postldadd) +#luatex53_LDADD = liblua53tex.a libff.a liblua53misc.a liblua53socket.a liblua53ffi.a liblua53pplib.a $(LUA_LUA53_LIBS) $(luatex_postldadd) luajittex_LDADD = libluajittex.a libff.a libluajitmisc.a libluajitsocket.a libluajitpplib.a $(LUAJIT_LIBS) $(luatex_postldadd) luatex_depend = $(proglib) $(KPATHSEA_DEPEND) $(LIBPNG_DEPEND) libmputil.a libmd5.a luatex_DEPENDENCIES = $(luatex_depend) libluatex.a -luatex53_DEPENDENCIES = $(luatex_depend) liblua53tex.a +#luatex53_DEPENDENCIES = $(luatex_depend) liblua53tex.a luajittex_DEPENDENCIES = $(luatex_depend) libluajittex.a $(luatex_OBJECTS): libluatex.a -$(luatex53_OBJECTS): liblua53tex.a +#$(luatex53_OBJECTS): liblua53tex.a $(luajittex_OBJECTS): libluajittex.a nodist_luatex_SOURCES = $(luatex_sources) -nodist_luatex53_SOURCES = $(luatex_sources) +#nodist_luatex53_SOURCES = $(luatex_sources) nodist_luajittex_SOURCES = $(luatex_sources) @@ -101,9 +102,9 @@ call_luatex_CPPFLAGS = -DEXEPROG=\"luatex.exe\" nodist_call_luatex_SOURCES = callexe.c call_luatex_LDADD = -call_luatex53_CPPFLAGS = -DEXEPROG=\"luatex53.exe\" -nodist_call_luatex53_SOURCES = callexe.c -call_luatex53_LDADD = +#call_luatex53_CPPFLAGS = -DEXEPROG=\"luatex53.exe\" +#nodist_call_luatex53_SOURCES = callexe.c +#call_luatex53_LDADD = call_luajittex_CPPFLAGS = -DEXEPROG=\"luajittex.exe\" nodist_call_luajittex_SOURCES = callexe.c @@ -130,8 +131,8 @@ endif WIN32 # luatex_tests = luatexdir/luatex.test luatexdir/luaimage.test luatexdir/luatex.log luatexdir/luaimage.log: luatex$(EXEEXT) -luatex53_tests = luatexdir/luatex.test luatexdir/luaimage.test -luatexdir/luatex53.log luatexdir/luaimage53.log: luatex53$(EXEEXT) +#luatex53_tests = luatexdir/luatex.test luatexdir/luaimage.test +#luatexdir/luatex53.log luatexdir/luaimage53.log: luatex53$(EXEEXT) luajittex_tests = luatexdir/luajittex.test luatexdir/luajitimage.test @@ -142,9 +143,9 @@ EXTRA_DIST += $(luatex_tests) $(luajittex_tests) if LUATEX TESTS += $(luatex_tests) endif LUATEX -if LUATEX53 -TESTS += $(luatex_tests) -endif LUATEX53 +#if LUATEX53 +#TESTS += $(luatex_tests) +#endif LUATEX53 if LUAJITTEX TESTS += $(luajittex_tests) endif LUAJITTEX diff --git a/source/texk/web2c/luatexdir/font/sfnt.c b/source/texk/web2c/luatexdir/font/sfnt.c index c7f4723c4..a58bda092 100644 --- a/source/texk/web2c/luatexdir/font/sfnt.c +++ b/source/texk/web2c/luatexdir/font/sfnt.c @@ -248,8 +248,9 @@ ULONG sfnt_locate_table(sfnt * sfont, const char *tag) { ULONG offset; offset = sfnt_find_table_pos(sfont, tag); - if (offset == 0) - normal_error("ttf","sfnt table not found"); + if (offset == 0) { + formatted_error("ttf","%s table not found",tag); + } sfnt_seek_set(sfont, (long) offset); return offset; } diff --git a/source/texk/web2c/luatexdir/font/tounicode.c b/source/texk/web2c/luatexdir/font/tounicode.c index f0449aff9..32210600c 100644 --- a/source/texk/web2c/luatexdir/font/tounicode.c +++ b/source/texk/web2c/luatexdir/font/tounicode.c @@ -287,6 +287,7 @@ static void set_glyph_unicode(char *s, glyph_unicode_entry * gp) } } +/* static void set_cid_glyph_unicode(long index, glyph_unicode_entry * gp, internal_font_number f) { char *s; @@ -295,13 +296,14 @@ static void set_cid_glyph_unicode(long index, glyph_unicode_entry * gp, internal gp->code = UNI_EXTRA_STRING; gp->unicode_seq = xstrdup(s); } else { - /*tex No fall back as we're providing them ourselves. */ + // No fall back as we're providing them ourselves. } } else { - /*tex Fall back. */ + // Fall back gp->code = index; } } +*/ int write_tounicode(PDF pdf, char **glyph_names, char *name) { @@ -470,9 +472,10 @@ int write_cid_tounicode(PDF pdf, fo_entry * fo, internal_font_number f) static int range_size[65537]; static glyph_unicode_entry gtab[65537]; int objnum; - int i, j, k; + int i, j, k, tu; int bfchar_count, bfrange_count, subrange_count; char *buf; + char *s; buf = xmalloc((unsigned) (strlen(fo->fd->fontname) + 8)); sprintf(buf, "%s-%s", (fo->fd->subset_tag != NULL ? fo->fd->subset_tag : "UCS"), fo->fd->fontname); objnum = pdf_create_obj(pdf, obj_type_others, 0); @@ -514,7 +517,36 @@ int write_cid_tounicode(PDF pdf, fo_entry * fo, internal_font_number f) if (quick_char_exists(k, i) && char_used(k, i)) { j = char_index(k, i); if (gtab[j].code == UNI_UNDEF) { + /* set_cid_glyph_unicode(i, >ab[j], f); + */ + tu = 0; + /*tex + First look in the instance (new). Ff this fails + us (context) it will go away or become an option. + */ + if (font_tounicode(k)) { + tu = 1; /*tex no fallback to index */ + if ((s = get_charinfo_tounicode(char_info(k, (int) i))) != NULL) { + gtab[j].code = UNI_EXTRA_STRING; + gtab[j].unicode_seq = xstrdup(s); + } + } + /*tex + Then look in the parent (was default, so one can + still be sparse). + */ + if (k != f && gtab[j].code == UNI_UNDEF && font_tounicode(f)) { + tu = 1; /*tex no fallback to index */ + if ((s = get_charinfo_tounicode(char_info(f, (int) i))) != NULL) { + gtab[j].code = UNI_EXTRA_STRING; + gtab[j].unicode_seq = xstrdup(s); + } + } + if (! tu) { + /*tex No tonunicode so we map onto index. */ + gtab[j].code = i; + } } } } diff --git a/source/texk/web2c/luatexdir/font/tt_table.c b/source/texk/web2c/luatexdir/font/tt_table.c index dfcd4d650..eba827287 100644 --- a/source/texk/web2c/luatexdir/font/tt_table.c +++ b/source/texk/web2c/luatexdir/font/tt_table.c @@ -328,15 +328,23 @@ struct tt_os2__table *tt_read_os2__table(sfnt * sfont) table->sTypoLineGap = sfnt_get_short(sfont); table->usWinAscent = sfnt_get_ushort(sfont); table->usWinDescent = sfnt_get_ushort(sfont); - table->ulCodePageRange1 = sfnt_get_ulong(sfont); - table->ulCodePageRange2 = sfnt_get_ulong(sfont); - if (table->version == 0x0002) { + if (table->version >= 0x0001) { + table->ulCodePageRange1 = sfnt_get_ulong(sfont); + table->ulCodePageRange2 = sfnt_get_ulong(sfont); + } + if (table->version >= 0x0002) { table->sxHeight = sfnt_get_short(sfont); table->sCapHeight = sfnt_get_short(sfont); table->usDefaultChar = sfnt_get_ushort(sfont); table->usBreakChar = sfnt_get_ushort(sfont); table->usMaxContext = sfnt_get_ushort(sfont); } + /* + https://docs.microsoft.com/en-us/typography/opentype/spec/os2 + + There are now 5 versions but we don't read the few additional + fields as we don't use them. Some changes are cosmetical (names). + */ return table; } diff --git a/source/texk/web2c/luatexdir/font/writecff.c b/source/texk/web2c/luatexdir/font/writecff.c index cf0751179..2d0b16b08 100644 --- a/source/texk/web2c/luatexdir/font/writecff.c +++ b/source/texk/web2c/luatexdir/font/writecff.c @@ -2884,7 +2884,7 @@ void write_cff(PDF pdf, cff_font * cffont, fd_entry * fd) cff_add_string(cffont, "Identity"); if (cffont->header_major == 2) { /*tex A crash. */ - } else { + } else if (cffont->private && (cffont->private)[0]) { cff_dict_update(cffont->private[0], cffont); } cff_update_string(cffont); diff --git a/source/texk/web2c/luatexdir/image/epdf.h b/source/texk/web2c/luatexdir/image/epdf.h index 9c32c06b7..d0cd7f79e 100644 --- a/source/texk/web2c/luatexdir/image/epdf.h +++ b/source/texk/web2c/luatexdir/image/epdf.h @@ -145,7 +145,8 @@ int luaopen_epdf(lua_State * L); typedef struct InObj InObj; struct InObj { - ppref *ref; /* ref in original PDF */ + /* int version; */ /* old object number in included PDF */ + int objnum; /* old version number in included PDF, we can do without */ int num; /* new object number in output PDF */ InObj *next; /* next entry in list of indirect objects */ } ; diff --git a/source/texk/web2c/luatexdir/image/pdftoepdf.c b/source/texk/web2c/luatexdir/image/pdftoepdf.c index 653f630a2..664bfef18 100644 --- a/source/texk/web2c/luatexdir/image/pdftoepdf.c +++ b/source/texk/web2c/luatexdir/image/pdftoepdf.c @@ -275,31 +275,37 @@ PdfDocument *refMemStreamPdfDocument(char *docstream, unsigned long long streams typedef struct ObjMap ObjMap ; struct ObjMap { - ppref * in; + /* int version; */ /* not really needed */ + int objnum; int out_num; }; static int CompObjMap(const void *pa, const void *pb, void *p) { - const ppref *a = (((const ObjMap *) pa)->in); - const ppref *b = (((const ObjMap *) pb)->in); - if (a->number > b->number) + const ObjMap *a = (((const ObjMap *) pa)); + const ObjMap *b = (((const ObjMap *) pb)); + if (a->objnum > b->objnum) return 1; - else if (a->number < b->number) + else if (a->objnum < b->objnum) return -1; + /* else if (a->version == b->version) return 0; else if (a->version < b->version) return -1; return 1; + */ + return 0; } static ObjMap *findObjMap(PdfDocument * pdf_doc, ppref * in) { ObjMap *obj_map, tmp; - if (pdf_doc->ObjMapTree == NULL) + if (pdf_doc->ObjMapTree == NULL) { return NULL; - tmp.in = in; + } + tmp.objnum = in->number; + /* tmp.version = in->version; */ obj_map = (ObjMap *) avl_find(pdf_doc->ObjMapTree, &tmp); return obj_map; } @@ -307,10 +313,12 @@ static ObjMap *findObjMap(PdfDocument * pdf_doc, ppref * in) static void addObjMap(PdfDocument * pdf_doc, ppref * in, int out_num) { ObjMap *obj_map = NULL; - if (pdf_doc->ObjMapTree == NULL) + if (pdf_doc->ObjMapTree == NULL) { pdf_doc->ObjMapTree = avl_create(CompObjMap, NULL, &avl_xallocator); + } obj_map = (ObjMap*)xmalloc(sizeof(ObjMap)); - obj_map->in = in; + /* obj_map->version = in->version; */ + obj_map->objnum = in->number; obj_map->out_num = out_num; avl_probe(pdf_doc->ObjMapTree, obj_map); } @@ -337,7 +345,8 @@ static int addInObj(PDF pdf, PdfDocument * pdf_doc, ppref * ref) return obj_map->out_num; } n = (InObj*)xmalloc(sizeof(InObj)); - n->ref = ref; + n->objnum = ref->number; + /* n->version = ref->version; */ n->next = NULL; n->num = pdf_create_obj(pdf, obj_type_others, 0); addObjMap(pdf_doc, ref, n->num); @@ -540,12 +549,16 @@ static void writeRefs(PDF pdf, PdfDocument * pdf_doc) { InObj *r, *n; ppobj * obj; + ppref * ref ; + ppxref * xref = ppdoc_xref (pdf_doc->pdfe); for (r = pdf_doc->inObjList; r != NULL;) { - obj = ppref_obj(r->ref); - if (obj->type == PPSTREAM) + ref = ppxref_find (xref, (ppuint) r->objnum); + obj = ppref_obj(ref); + if (obj->type == PPSTREAM) { pdf_begin_obj(pdf, r->num, OBJSTM_NEVER); - else + } else { pdf_begin_obj(pdf, r->num, 2); + } copyObject(pdf, pdf_doc, obj); pdf_end_obj(pdf); n = r->next; @@ -555,6 +568,7 @@ static void writeRefs(PDF pdf, PdfDocument * pdf_doc) } } + /* get the pagebox coordinates according to the pagebox_spec */ static void somebox(ppdict *page, const char * key, pprect * box) @@ -613,11 +627,6 @@ static ppdict * get_pdf_page_dict(ppdoc *pdfe, int n) return NULL; } -// static ppdict * get_pdf_page_dict(ppdoc *pdfe, int n) -// { -// return ppref_obj(ppdoc_page(pdfe,n))->dict; -// } - void read_pdf_info(image_dict * idict) { PdfDocument *pdf_doc = NULL; @@ -913,7 +922,7 @@ void write_epdf(PDF pdf, image_dict * idict, int suppress_optional_info) } */ } - pdf_end_dict(pdf); + pdf_end_dict(pdf); pdf_begin_stream(pdf); copyStreamStream(pdf, stream, 0, 0); } else { diff --git a/source/texk/web2c/luatexdir/lua/llanglib.c b/source/texk/web2c/luatexdir/lua/llanglib.c index 5855f33fc..8f4e35f46 100644 --- a/source/texk/web2c/luatexdir/lua/llanglib.c +++ b/source/texk/web2c/luatexdir/lua/llanglib.c @@ -242,20 +242,22 @@ static int do_lang_clean(lua_State * L) static int do_lang_hyphenate(lua_State * L) { - halfword *h, *t, tt; - h = check_isnode(L, 1); + halfword t = null; + halfword h = *check_isnode(L, 1); if (lua_isuserdata(L, 2)) { - t = check_isnode(L, 2); - tt = *t; - lua_pop(L, 1); - } else { - tt = *h; - while (vlink(tt) != null) - tt = vlink(tt); + t = *check_isnode(L, 2); + } + if (t == null) { + t = h; + while (vlink(t) != null) { + t = vlink(t); + } } - hnj_hyphenation(*h, tt); + hnj_hyphenation(h, t); + lua_nodelib_push_fast(L, h); + lua_nodelib_push_fast(L, t); lua_pushboolean(L, 1); - return 1; + return 3; } static const struct luaL_Reg langlib_d[] = { diff --git a/source/texk/web2c/luatexdir/lua/lnodelib.c b/source/texk/web2c/luatexdir/lua/lnodelib.c index baa85f33a..dd7948276 100644 --- a/source/texk/web2c/luatexdir/lua/lnodelib.c +++ b/source/texk/web2c/luatexdir/lua/lnodelib.c @@ -998,12 +998,10 @@ static int lua_nodelib_direct_getkern(lua_State * L) if (n) { halfword t = type(n); if (t == kern_node) { + lua_pushnumber(L, width(n)); if (lua_toboolean(L,2)) { - lua_pushnumber(L, (1+ex_kern(n)/1000) * width(n)); lua_pushinteger(L, ex_kern(n)); return 2; - } else { - lua_pushinteger(L, width(n)); } } else if (t == margin_kern_node) { lua_pushinteger(L, width(n)); @@ -1257,20 +1255,20 @@ static int lua_nodelib_direct_setdisc(lua_State * L) /* node.direct.getwhd */ /* node.direct.setwhd */ -#define push_list_whd(n) do { \ +# define push_list_whd(n) do { \ lua_pushinteger(L, width(n)); \ lua_pushinteger(L, height(n)); \ lua_pushinteger(L, depth(n)); \ } while (0) -#define push_char_whd(n) do { \ +# define push_char_whd(n) do { \ lua_pushinteger(L, char_width(font(n),character(n))); \ lua_pushinteger(L, char_height(font(n),character(n))); \ lua_pushinteger(L, char_depth(font(n),character(n))); \ } while (0) -#define push_char_ehd(n) do { \ - lua_pushnumber(L, (1+ex_glyph(n)/1000) * char_width(font(n),character(n))); \ +# define push_char_ehd(n) do { \ + lua_pushinteger(L, char_width(font(n),character(n))); \ lua_pushinteger(L, char_height(font(n),character(n))); \ lua_pushinteger(L, char_depth(font(n),character(n))); \ lua_pushinteger(L, ex_glyph(n)); \ @@ -1647,10 +1645,20 @@ static int lua_nodelib_direct_setleader(lua_State * L) write_tokens(n) = nodelib_gettoks(L, i); \ } while (0) -#define get_write_direct_value(L,n) do { \ +#define xget_write_direct_value(L,n) do { \ tokenlist_to_lua(L, write_tokens(n)); \ } while (0) +#define get_write_direct_value(L,n) do { \ + int l; \ + char *s; \ + expand_macros_in_tokenlist(n); \ + s = tokenlist_to_cstring(def_ref, 1, &l); \ + lua_pushlstring(L, s, (size_t) l); \ + free(s); \ + flush_list(def_ref); \ +} while (0) + #define set_pdf_setmatrix_direct_value(L,n,i) do { \ pdf_setmatrix_data(n) = nodelib_gettoks(L, i); \ } while (0) @@ -3598,22 +3606,18 @@ static int lua_nodelib_direct_getwidth(lua_State * L) if (t == hlist_node || t == vlist_node || t == rule_node) { lua_pushinteger(L,width(n)); } else if (t == glyph_node) { + lua_pushnumber(L, char_width(font(n),character(n))); if (lua_toboolean(L,2)) { - lua_pushnumber(L, (1+ex_glyph(n)/1000) * char_width(font(n),character(n))); lua_pushinteger(L, ex_glyph(n)); return 2; - } else { - lua_pushinteger(L, char_width(font(n),character(n))); } } else if (t == glue_node || t == glue_spec_node || t == math_node || t == ins_node) { lua_pushinteger(L,width(n)); } else if (t == kern_node) { + lua_pushinteger(L, width(n)); if (lua_toboolean(L,2)) { - lua_pushnumber(L, (1+ex_kern(n)/1000) * width(n)); lua_pushinteger(L, ex_kern(n)); return 2; - } else { - lua_pushinteger(L, width(n)); } } else if (t == margin_kern_node) { lua_pushinteger(L,width(n)); @@ -4720,7 +4724,7 @@ static int lua_nodelib_fast_getfield(lua_State * L) } else if (lua_key_eq(s, depth)) { lua_pushinteger(L, depth(n)); } else if (lua_key_eq(s, direction)) { - lua_pushinteger(L, box_dir(n)); + lua_push_direction(L, box_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_par(L, box_dir(n)); } else if (lua_key_eq(s, shift)) { @@ -4799,7 +4803,7 @@ static int lua_nodelib_fast_getfield(lua_State * L) } else if (lua_key_eq(s, right)) { lua_pushinteger(L,rule_right(n)); } else if (lua_key_eq(s, direction)) { - lua_pushinteger(L, rule_dir(n)); + lua_push_direction(L, rule_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_par(L, rule_dir(n)); } else if (lua_key_eq(s, index)) { @@ -4811,7 +4815,7 @@ static int lua_nodelib_fast_getfield(lua_State * L) } } else if (t == dir_node) { if (lua_key_eq(s, direction)) { - lua_pushinteger(L, dir_dir(n)); + lua_push_direction(L, dir_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_text(L, dir_dir(n),subtype(n)); } else if (lua_key_eq(s, level)) { @@ -4827,7 +4831,7 @@ static int lua_nodelib_fast_getfield(lua_State * L) } else if (lua_key_eq(s, pen_broken)) { lua_pushinteger(L, local_pen_broken(n)); } else if (lua_key_eq(s, direction)) { - lua_pushinteger(L, local_par_dir(n)); + lua_push_direction(L, local_par_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_par(L, local_par_dir(n)); } else if (lua_key_eq(s, box_left)) { @@ -5130,7 +5134,7 @@ static int lua_nodelib_fast_getfield(lua_State * L) } else if (lua_key_eq(s, depth)) { lua_pushinteger(L, depth(n)); } else if (lua_key_eq(s, direction)) { - lua_pushinteger(L, box_dir(n)); + lua_push_direction(L, box_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_par(L, box_dir(n)); } else if (lua_key_eq(s, shrink)) { @@ -5475,7 +5479,7 @@ static int lua_nodelib_direct_getfield(lua_State * L) } else if (lua_key_eq(s, depth)) { lua_pushinteger(L, depth(n)); } else if (lua_key_eq(s, direction)) { - lua_pushinteger(L, box_dir(n)); + lua_push_direction(L, box_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_par(L, box_dir(n)); } else if (lua_key_eq(s, shift)) { @@ -5544,7 +5548,7 @@ static int lua_nodelib_direct_getfield(lua_State * L) } else if (lua_key_eq(s, right)) { lua_pushinteger(L,rule_right(n)); } else if (lua_key_eq(s, direction)) { - lua_pushinteger(L, rule_dir(n)); + lua_push_direction(L, rule_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_par(L, rule_dir(n)); } else if (lua_key_eq(s, index)) { @@ -5556,7 +5560,7 @@ static int lua_nodelib_direct_getfield(lua_State * L) } } else if (t == dir_node) { if (lua_key_eq(s, direction)) { - lua_pushinteger(L, dir_dir(n)); + lua_push_direction(L, dir_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_text(L, dir_dir(n), subtype(n)); } else if (lua_key_eq(s, level)) { @@ -5572,7 +5576,7 @@ static int lua_nodelib_direct_getfield(lua_State * L) } else if (lua_key_eq(s, pen_broken)) { lua_pushinteger(L, local_pen_broken(n)); } else if (lua_key_eq(s, direction)) { - lua_pushinteger(L, local_par_dir(n)); + lua_push_direction(L, local_par_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_par(L, local_par_dir(n)); } else if (lua_key_eq(s, box_left)) { @@ -5816,7 +5820,7 @@ static int lua_nodelib_direct_getfield(lua_State * L) } else if (lua_key_eq(s, depth)) { lua_pushinteger(L, depth(n)); } else if (lua_key_eq(s, direction)) { - lua_pushinteger(L, box_dir(n)); + lua_push_direction(L, box_dir(n)); } else if (lua_key_eq(s, dir)) { lua_push_dir_par(L, box_dir(n)); } else if (lua_key_eq(s, shrink)) { @@ -6070,6 +6074,51 @@ static int font_tex_direct_kerning(lua_State * L) return 3; } +/*tex + It's more consistent to have it here (so we will alias in lang later). Todo: + if no glyph then quit. +*/ + +static int lang_tex_hyphenating(lua_State * L) +{ + halfword t = null; + halfword h = *check_isnode(L, 1); + if (lua_isuserdata(L, 2)) { + t = *check_isnode(L, 2); + } + if (t == null) { + t = h; + while (vlink(t) != null) { + t = vlink(t); + } + } + hnj_hyphenation(h, t); + lua_nodelib_push_fast(L, h); + lua_nodelib_push_fast(L, t); + lua_pushboolean(L, 1); + return 3; +} + +static int lang_tex_direct_hyphenating(lua_State * L) +{ + halfword t = null; + halfword h = lua_tointeger(L, 1); + if (lua_type(L,1) != LUA_TNUMBER) { + t = lua_tointeger(L, 2); + } + if (t == null) { + t = h; + while (vlink(t) != null) { + t = vlink(t); + } + } + hnj_hyphenation(h, t); + lua_pushinteger(L, h); + lua_pushinteger(L, t); + lua_pushboolean(L, 1); + return 3; +} + /* node.protect_glyphs (returns also boolean because that signals callback) */ /* node.unprotect_glyphs (returns also boolean because that signals callback) */ @@ -8849,6 +8898,7 @@ static const struct luaL_Reg direct_nodelib_f[] = { {"is_glyph", lua_nodelib_direct_is_glyph}, {"uses_font", lua_nodelib_direct_uses_font}, {"hpack", lua_nodelib_direct_hpack}, + {"hyphenating", lang_tex_direct_hyphenating}, /* {"id", lua_nodelib_id}, */ /* no node argument */ {"insert_after", lua_nodelib_direct_insert_after}, {"insert_before", lua_nodelib_direct_insert_before}, @@ -8979,6 +9029,7 @@ static const struct luaL_Reg nodelib_f[] = { {"is_glyph", lua_nodelib_is_glyph}, {"uses_font", lua_nodelib_uses_font}, {"hpack", lua_nodelib_hpack}, + {"hyphenating", lang_tex_hyphenating}, {"id", lua_nodelib_id}, {"insert_after", lua_nodelib_insert_after}, {"insert_before", lua_nodelib_insert_before}, diff --git a/source/texk/web2c/luatexdir/lua/lpdfelib.c b/source/texk/web2c/luatexdir/lua/lpdfelib.c index 31fad9f63..dc09d347a 100644 --- a/source/texk/web2c/luatexdir/lua/lpdfelib.c +++ b/source/texk/web2c/luatexdir/lua/lpdfelib.c @@ -1,11 +1,30 @@ +/* loslibext.c + + This file is part of LuaTeX. + + LuaTeX is free software; you can redistribute it and/or modify it under the + terms of the GNU General Public License as published by the Free Software + Foundation; either version 2 of the License, or (at your option) any later + version. + + LuaTeX is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + details. + + You should have received a copy of the GNU General Public License along with + LuaTeX; if not, see <http://www.gnu.org/licenses/>. + +*/ + /*tex - This file will host the encapsulated \PDF\ support code used for inclusion - and access from \LUA. + This file hosts the encapsulated \PDF\ support code used for inclusion and + access from \LUA. */ -#include "ptexlib.h" +# include "ptexlib.h" /*tex @@ -13,34 +32,34 @@ */ -#undef lpdfelib_orig_input -#undef lpdfelib_orig_output +# undef lpdfelib_orig_input +# undef lpdfelib_orig_output -#ifdef input -#define lpdfelib_orig_input input -#undef input -#endif +# ifdef input +# define lpdfelib_orig_input input +# undef input +# endif -#ifdef output -#define lpdfelib_orig_output output -#undef output -#endif +# ifdef output +# define lpdfelib_orig_output output +# undef output +# endif -#include "luapplib/pplib.h" +# include "luapplib/pplib.h" -#include "image/epdf.h" +# include "image/epdf.h" -#ifdef lpdfelib_orig_input -#define input lpdfelib_orig_input -#undef lpdfelib_orig_input -#endif +# ifdef lpdfelib_orig_input +# define input lpdfelib_orig_input +# undef lpdfelib_orig_input +# endif -#ifdef lpdfelib_orig_output -#define output lpdfelib_orig_output -#undef lpdfelib_orig_output -#endif +# ifdef lpdfelib_orig_output +# define output lpdfelib_orig_output +# undef lpdfelib_orig_output +# endif -#include "lua/luatex-api.h" +# include "lua/luatex-api.h" /*tex @@ -50,11 +69,11 @@ */ -#define PDFE_METATABLE "luatex.pdfe" -#define PDFE_METATABLE_DICTIONARY "luatex.pdfe.dictionary" -#define PDFE_METATABLE_ARRAY "luatex.pdfe.array" -#define PDFE_METATABLE_STREAM "luatex.pdfe.stream" -#define PDFE_METATABLE_REFERENCE "luatex.pdfe.reference" +# define PDFE_METATABLE "luatex.pdfe" +# define PDFE_METATABLE_DICTIONARY "luatex.pdfe.dictionary" +# define PDFE_METATABLE_ARRAY "luatex.pdfe.array" +# define PDFE_METATABLE_STREAM "luatex.pdfe.stream" +# define PDFE_METATABLE_REFERENCE "luatex.pdfe.reference" typedef struct { ppdoc *document; @@ -67,23 +86,22 @@ typedef struct { typedef struct { ppdict *dictionary; - ppref *ref; } pdfe_dictionary; typedef struct { pparray *array; - ppref *ref; } pdfe_array; typedef struct { ppstream *stream; - ppref *ref; int decode; int open; } pdfe_stream; typedef struct { - ppref *reference; + /* ppref *reference; */ + ppxref *xref; + int onum; } pdfe_reference; /*tex @@ -194,7 +212,7 @@ static pdfe_reference *check_isreference(lua_State * L, int n) */ -#define check_type(field,meta,name) do { \ +# define check_type(field,meta,name) do { \ lua_get_metatablelua(luatex_##meta); \ if (lua_rawequal(L, -1, -2)) { \ lua_pushstring(L,name); \ @@ -223,7 +241,7 @@ static int pdfelib_type(lua_State * L) */ -#define define_to_string(field,what) \ +# define define_to_string(field,what) \ static int pdfelib_tostring_##field(lua_State * L) { \ pdfe_##field *p = check_is##field(L, 1); \ if (p != NULL) { \ @@ -236,9 +254,17 @@ static int pdfelib_tostring_##field(lua_State * L) { \ define_to_string(document, "pdfe") define_to_string(dictionary,"pdfe.dictionary") define_to_string(array, "pdfe.array") -define_to_string(reference, "pdfe.reference") define_to_string(stream, "pdfe.stream") +static int pdfelib_tostring_reference(lua_State * L) { \ + pdfe_reference *p = check_isreference(L, 1); \ + if (p != NULL) { \ + lua_pushfstring(L, "<pdfe.reference " "%i>", p->onum); \ + return 1; \ + } \ + return 0; \ +} + /*tex The pushers look rather similar. We have two variants, one that just pushes @@ -246,7 +272,7 @@ define_to_string(stream, "pdfe.stream") */ -#define pdfe_push_dictionary do { \ +# define pdfe_push_dictionary do { \ pdfe_dictionary *d = (pdfe_dictionary *)lua_newuserdata(L, sizeof(pdfe_dictionary)); \ luaL_getmetatable(L, PDFE_METATABLE_DICTIONARY); \ lua_setmetatable(L, -2); \ @@ -272,7 +298,7 @@ static int pushdictionaryonly(lua_State * L, ppdict *dictionary) return 0; } -#define pdfe_push_array do { \ +# define pdfe_push_array do { \ pdfe_array *a = (pdfe_array *)lua_newuserdata(L, sizeof(pdfe_array)); \ luaL_getmetatable(L, PDFE_METATABLE_ARRAY); \ lua_setmetatable(L, -2); \ @@ -298,7 +324,7 @@ static int pusharrayonly(lua_State * L, pparray * array) return 0; } -#define pdfe_push_stream do { \ +# define pdfe_push_stream do { \ pdfe_stream *s = (pdfe_stream *)lua_newuserdata(L, sizeof(pdfe_stream)); \ luaL_getmetatable(L, PDFE_METATABLE_STREAM); \ lua_setmetatable(L, -2); \ @@ -331,11 +357,12 @@ static int pushstreamonly(lua_State * L, ppstream * stream) return 0; } -#define pdfe_push_reference do { \ +# define pdfe_push_reference do { \ pdfe_reference *r = (pdfe_reference *)lua_newuserdata(L, sizeof(pdfe_reference)); \ luaL_getmetatable(L, PDFE_METATABLE_REFERENCE); \ lua_setmetatable(L, -2); \ - r->reference = reference; \ + r->xref = reference->xref; \ + r->onum = reference->number; \ } while (0) static int pushreference(lua_State * L, ppref * reference) @@ -709,9 +736,11 @@ static int pdfelib_readwholestream(lua_State * L) Alternatively streams can be fetched stepwise: + \starttyping okay = openstream(streamobject,[decode]) string, n = readfromstream(streamobject) closestream(streamobject) + \stoptyping */ @@ -1130,7 +1159,7 @@ static int pdfelib_getfromreference(lua_State * L) { pdfe_reference *r = check_isreference(L, 1); if (r != NULL) { - ppobj *o = ppref_obj(r->reference); + ppobj *o = ppref_obj(ppxref_find(r->xref, (ppuint) r->onum)); lua_pushinteger(L,o->type); return 1 + pushvalue(L,o); } @@ -1158,7 +1187,7 @@ static int pdfelib_getfromreference(lua_State * L) */ -#define pdfelib_get_value_check_1 do { \ +# define pdfelib_get_value_check_1 do { \ if (p == NULL) { \ if (t == LUA_TSTRING) { \ normal_warning("pdfe lib","lua <pdfe dictionary> expected"); \ @@ -1173,7 +1202,7 @@ static int pdfelib_getfromreference(lua_State * L) } \ } while (0) -#define pdfelib_get_value_check_2 \ +# define pdfelib_get_value_check_2 \ normal_warning("pdfe lib","second argument should be integer or string"); /*tex @@ -1183,7 +1212,11 @@ static int pdfelib_getfromreference(lua_State * L) */ -#define pdfelib_get_value_direct(get_d,get_a) do { \ +# define pdfelib_get_indirect_o(p) \ + ppref *r = ppxref_find(((pdfe_reference *) p)->xref, (ppuint) (((pdfe_reference *) p)->onum)); \ + ppobj *o = ppref_obj(r); \ + +# define pdfelib_get_value_direct(get_d,get_a) do { \ int t = lua_type(L,2); \ void *p = lua_touserdata(L, 1); \ pdfelib_get_value_check_1; \ @@ -1196,7 +1229,7 @@ static int pdfelib_getfromreference(lua_State * L) lua_pop(L,1); \ lua_get_metatablelua(luatex_pdfe_reference); \ if (lua_rawequal(L, -1, -2)) { \ - ppobj * o = ppref_obj((ppref *) (((pdfe_reference *) p)->reference)); \ + pdfelib_get_indirect_o(p); \ if (o != NULL && o->type == PPDICT) { \ value = get_d((ppdict *)o->dict, key); \ } \ @@ -1211,7 +1244,7 @@ static int pdfelib_getfromreference(lua_State * L) lua_pop(L,1); \ lua_get_metatablelua(luatex_pdfe_reference); \ if (lua_rawequal(L, -1, -2)) { \ - ppobj * o = ppref_obj((ppref *) (((pdfe_reference *) p)->reference)); \ + pdfelib_get_indirect_o(p); \ if (o != NULL && o->type == PPARRAY) { \ value = get_a((pparray *) o->array, index); \ } \ @@ -1229,7 +1262,7 @@ static int pdfelib_getfromreference(lua_State * L) */ -#define pdfelib_get_value_indirect(get_d,get_a) do { \ +# define pdfelib_get_value_indirect(get_d,get_a) do { \ int t = lua_type(L,2); \ void *p = lua_touserdata(L, 1); \ pdfelib_get_value_check_1; \ @@ -1242,7 +1275,7 @@ static int pdfelib_getfromreference(lua_State * L) lua_pop(L,1); \ lua_get_metatablelua(luatex_pdfe_reference); \ if (lua_rawequal(L, -1, -2)) { \ - ppobj * o = ppref_obj((ppref *) (((pdfe_reference *) p)->reference)); \ + pdfelib_get_indirect_o(p); \ if (o != NULL && o->type == PPDICT) \ okay = get_d(o->dict, key, &value); \ } \ @@ -1256,7 +1289,7 @@ static int pdfelib_getfromreference(lua_State * L) lua_pop(L,1); \ lua_get_metatablelua(luatex_pdfe_reference); \ if (lua_rawequal(L, -1, -2)) { \ - ppobj * o = ppref_obj((ppref *) (((pdfe_reference *) p)->reference)); \ + pdfelib_get_indirect_o(p); \ if (o != NULL && o->type == PPARRAY) \ okay = get_a(o->array, index, &value); \ } \ @@ -1523,8 +1556,8 @@ static int pdfelib_stream_size(lua_State * L) /*tex - We now initialize the main interface. We might aa few more - informational helpers but this is it. + We now initialize the main interface. We might add few more informational + helpers but this is it. */ diff --git a/source/texk/web2c/luatexdir/lua/luatex-core.c b/source/texk/web2c/luatexdir/lua/luatex-core.c index 5cb58af65..386023d97 100644 --- a/source/texk/web2c/luatexdir/lua/luatex-core.c +++ b/source/texk/web2c/luatexdir/lua/luatex-core.c @@ -129,507 +129,509 @@ int load_luatex_core_lua (lua_State * L) 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x28, 0x6e, 0x61, 0x6d, - 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x68, 0x6f, - 0x77, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, - 0x6f, 0x77, 0x20, 0x3d, 0x20, 0x27, 0x72, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, - 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x3d, 0x20, - 0x67, 0x73, 0x75, 0x62, 0x28, 0x68, 0x6f, 0x77, 0x2c, 0x27, 0x5b, 0x5e, 0x72, 0x62, 0x5d, 0x27, - 0x2c, 0x27, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, - 0x68, 0x6f, 0x77, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x27, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x3d, - 0x20, 0x27, 0x72, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, - 0x61, 0x6c, 0x20, 0x66, 0x20, 0x3d, 0x20, 0x69, 0x6f, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x6e, - 0x61, 0x6d, 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, - 0x66, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, - 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, - 0x65, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x27, 0x72, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, - 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x70, - 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6f, 0x6b, 0x61, 0x79, 0x2c, 0x20, 0x66, - 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x3d, 0x20, 0x66, 0x69, 0x6f, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, - 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6f, 0x6b, 0x61, 0x79, 0x20, 0x61, 0x6e, 0x64, - 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x69, 0x6f, 0x5f, 0x70, 0x6f, - 0x70, 0x65, 0x6e, 0x28, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x6c, - 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x75, - 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x28, 0x6e, 0x61, - 0x6d, 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x29, 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, - 0x66, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x2d, 0x2d, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x20, 0x3d, - 0x20, 0x69, 0x6f, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x68, 0x6f, - 0x77, 0x20, 0x6f, 0x72, 0x20, 0x27, 0x72, 0x27, 0x29, 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x2d, - 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x0a, - 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x69, 0x6f, 0x5f, 0x72, 0x65, - 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x28, 0x66, 0x29, 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x2d, 0x2d, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x2d, 0x2d, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x69, 0x6f, 0x5f, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x28, 0x29, 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, - 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x73, - 0x6f, 0x6d, 0x65, 0x20, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, - 0x63, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74, 0x20, 0x6b, 0x69, 0x63, 0x6b, 0x20, 0x69, - 0x6e, 0x20, 0x73, 0x6f, 0x20, 0x77, 0x65, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, - 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x20, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x74, 0x6c, 0x79, 0x0a, 0x2d, - 0x2d, 0x20, 0x73, 0x6f, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x65, 0x64, 0x2e, - 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x2c, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x20, 0x3d, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x2c, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, + 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, + 0x74, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x3d, 0x20, 0x27, 0x72, 0x27, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x6f, + 0x77, 0x20, 0x3d, 0x20, 0x67, 0x73, 0x75, 0x62, 0x28, 0x68, 0x6f, 0x77, 0x2c, 0x27, 0x5b, 0x5e, + 0x72, 0x62, 0x5d, 0x27, 0x2c, 0x27, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x66, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x27, 0x20, 0x74, 0x68, + 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, + 0x6f, 0x77, 0x20, 0x3d, 0x20, 0x27, 0x72, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x20, 0x3d, 0x20, 0x69, 0x6f, 0x5f, 0x6f, 0x70, + 0x65, 0x6e, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x66, 0x20, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x66, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x66, 0x69, 0x6c, + 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x27, 0x72, 0x27, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, + 0x72, 0x6e, 0x20, 0x66, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, + 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, + 0x69, 0x6f, 0x5f, 0x70, 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x2e, 0x2e, + 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6f, 0x6b, 0x61, + 0x79, 0x2c, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x3d, 0x20, 0x66, 0x69, 0x6f, 0x5f, 0x63, + 0x68, 0x65, 0x63, 0x6b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x28, 0x6e, + 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6f, 0x6b, 0x61, 0x79, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x69, + 0x6f, 0x5f, 0x70, 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x2e, 0x2e, + 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, + 0x2d, 0x2d, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x6c, 0x69, 0x6e, 0x65, - 0x73, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x69, 0x66, 0x20, 0x74, 0x79, 0x70, 0x65, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x20, 0x3d, 0x3d, - 0x20, 0x22, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x20, 0x3d, - 0x20, 0x69, 0x6f, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x68, 0x6f, - 0x77, 0x20, 0x6f, 0x72, 0x20, 0x27, 0x72, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x69, 0x66, 0x20, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, - 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, - 0x6c, 0x20, 0x3d, 0x20, 0x66, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, - 0x28, 0x66, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x20, 0x74, 0x68, 0x65, - 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x3a, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x28, 0x29, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6c, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x6f, - 0x73, 0x65, 0x20, 0x77, 0x68, 0x6f, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x20, 0x69, 0x74, 0x20, 0x74, - 0x68, 0x69, 0x73, 0x20, 0x77, 0x61, 0x79, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x28, 0x22, 0x70, 0x61, 0x74, 0x63, - 0x68, 0x65, 0x64, 0x20, 0x27, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x27, 0x20, 0x63, - 0x61, 0x6e, 0x27, 0x74, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x27, 0x22, 0x20, 0x2e, 0x2e, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x2e, 0x2e, 0x20, 0x22, 0x27, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, - 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, - 0x20, 0x69, 0x6f, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x65, 0x6e, 0x64, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, - 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, - 0x6f, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x28, 0x66, 0x29, 0x0a, 0x20, 0x20, + 0x73, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x29, 0x0a, 0x2d, 0x2d, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, + 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, + 0x20, 0x66, 0x20, 0x3d, 0x20, 0x69, 0x6f, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x6e, 0x61, 0x6d, + 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x20, 0x6f, 0x72, 0x20, 0x27, 0x72, 0x27, 0x29, 0x0a, 0x2d, 0x2d, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x66, 0x20, 0x74, 0x68, + 0x65, 0x6e, 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x20, 0x66, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x28, - 0x66, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, - 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, - 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x0a, 0x6d, 0x74, 0x2e, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, - 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x57, 0x65, 0x20, - 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, - 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6b, 0x70, 0x73, 0x65, 0x2e, 0x20, 0x54, 0x68, 0x69, - 0x73, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x2d, 0x2d, 0x20, 0x63, 0x61, 0x73, 0x65, - 0x20, 0x69, 0x6e, 0x20, 0x43, 0x6f, 0x6e, 0x54, 0x65, 0x58, 0x74, 0x2e, 0x0a, 0x0a, 0x69, 0x66, - 0x20, 0x6b, 0x70, 0x73, 0x65, 0x75, 0x73, 0x65, 0x64, 0x20, 0x3d, 0x3d, 0x20, 0x31, 0x20, 0x74, - 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, - 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x6f, 0x70, - 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x70, 0x6f, 0x70, 0x65, 0x6e, 0x20, - 0x3d, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x70, 0x6f, 0x70, 0x65, - 0x6e, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x73, 0x61, 0x66, 0x65, 0x72, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x3d, 0x20, 0x31, 0x20, 0x74, 0x68, 0x65, 0x6e, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, - 0x79, 0x28, 0x73, 0x74, 0x72, 0x2c, 0x66, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, - 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, - 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x6e, 0x28, 0x29, 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x69, + 0x6f, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x28, 0x66, 0x29, 0x0a, 0x2d, 0x2d, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, + 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, + 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x2d, 0x2d, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x69, 0x6f, + 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x28, 0x29, 0x0a, 0x2d, 0x2d, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x65, 0x6e, 0x64, 0x0a, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x46, + 0x6f, 0x72, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x67, 0x63, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74, 0x20, 0x6b, 0x69, + 0x63, 0x6b, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x6f, 0x20, 0x77, 0x65, 0x20, 0x6e, 0x65, 0x65, 0x64, + 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x20, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x74, + 0x6c, 0x79, 0x0a, 0x2d, 0x2d, 0x20, 0x73, 0x6f, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x66, 0x6c, 0x75, 0x73, + 0x68, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x65, 0x72, 0x72, 0x6f, + 0x72, 0x2c, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x3d, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x2c, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x74, 0x79, 0x70, 0x65, 0x28, 0x6e, 0x61, 0x6d, 0x65, + 0x29, 0x20, 0x3d, 0x3d, 0x20, 0x22, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x20, 0x74, 0x68, + 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, + 0x20, 0x66, 0x20, 0x3d, 0x20, 0x69, 0x6f, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x6e, 0x61, 0x6d, + 0x65, 0x2c, 0x68, 0x6f, 0x77, 0x20, 0x6f, 0x72, 0x20, 0x27, 0x72, 0x27, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, + 0x72, 0x6e, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, + 0x63, 0x61, 0x6c, 0x20, 0x6c, 0x20, 0x3d, 0x20, 0x66, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x61, 0x64, + 0x6c, 0x69, 0x6e, 0x65, 0x28, 0x66, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6e, 0x6c, 0x28, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x22, 0x73, 0x61, 0x66, 0x65, 0x72, 0x20, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x65, 0x74, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x20, 0x25, 0x71, 0x20, 0x69, 0x73, 0x20, 0x25, 0x73, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x73, 0x74, 0x72, 0x2c, 0x66, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x22, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x65, 0x64, 0x22, 0x20, 0x6f, 0x72, 0x20, 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x22, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x3d, 0x20, - 0x74, 0x72, 0x75, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x69, 0x66, 0x20, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x66, 0x28, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x3a, 0x63, 0x6c, 0x6f, 0x73, + 0x65, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x20, 0x77, 0x68, 0x6f, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x20, + 0x69, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x77, 0x61, 0x79, 0x3a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x28, 0x22, + 0x70, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x20, 0x27, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x65, + 0x73, 0x27, 0x20, 0x63, 0x61, 0x6e, 0x27, 0x74, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x27, 0x22, + 0x20, 0x2e, 0x2e, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x2e, 0x2e, 0x20, 0x22, 0x27, 0x22, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, + 0x74, 0x75, 0x72, 0x6e, 0x20, 0x69, 0x6f, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x28, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, + 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x75, 0x61, 0x74, + 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x28, 0x66, + 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6c, + 0x69, 0x6e, 0x65, 0x28, 0x66, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x65, + 0x6e, 0x64, 0x0a, 0x0a, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x6c, + 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x0a, 0x6d, + 0x74, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, + 0x5f, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x0a, 0x2d, 0x2d, + 0x20, 0x57, 0x65, 0x20, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x20, 0x6d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x70, 0x6c, + 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6b, 0x70, 0x73, 0x65, 0x2e, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x2d, 0x2d, 0x20, + 0x63, 0x61, 0x73, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x43, 0x6f, 0x6e, 0x54, 0x65, 0x58, 0x74, 0x2e, + 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x6b, 0x70, 0x73, 0x65, 0x75, 0x73, 0x65, 0x64, 0x20, 0x3d, 0x3d, + 0x20, 0x31, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, + 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, + 0x6f, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x70, 0x6f, + 0x70, 0x65, 0x6e, 0x20, 0x3d, 0x20, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, + 0x70, 0x6f, 0x70, 0x65, 0x6e, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x73, + 0x61, 0x66, 0x65, 0x72, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x3d, 0x20, 0x31, 0x20, + 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, + 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, + 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x73, 0x74, 0x72, 0x2c, 0x66, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x28, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x72, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, + 0x6e, 0x6c, 0x28, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x22, 0x73, 0x61, 0x66, 0x65, 0x72, + 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x65, 0x74, 0x2c, 0x20, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x25, 0x71, 0x20, 0x69, 0x73, 0x20, 0x25, 0x73, 0x22, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x72, 0x2c, 0x66, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x22, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x22, 0x20, 0x6f, 0x72, 0x20, 0x22, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x20, 0x3d, 0x20, 0x74, 0x72, 0x75, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x28, 0x73, 0x74, - 0x72, 0x2c, 0x66, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, - 0x61, 0x6c, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x66, 0x61, - 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x6f, 0x73, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x65, - 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, - 0x73, 0x70, 0x61, 0x77, 0x6e, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, - 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x73, 0x70, 0x61, 0x77, 0x6e, - 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x28, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x75, 0x6e, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x28, 0x73, 0x74, 0x72, 0x2c, 0x66, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, + 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x62, 0x75, 0x67, 0x20, 0x3d, + 0x20, 0x6e, 0x69, 0x6c, 0x20, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, 0x65, 0x78, + 0x65, 0x63, 0x75, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, + 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, + 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, - 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x6f, 0x73, 0x2e, 0x73, 0x65, 0x74, 0x65, 0x6e, 0x76, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x73, 0x65, - 0x74, 0x65, 0x6e, 0x76, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, 0x74, 0x65, - 0x6d, 0x70, 0x64, 0x69, 0x72, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, - 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x64, 0x69, 0x72, - 0x22, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x70, 0x6f, 0x70, 0x65, 0x6e, - 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, - 0x79, 0x28, 0x22, 0x69, 0x6f, 0x2e, 0x70, 0x6f, 0x70, 0x65, 0x6e, 0x22, 0x29, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, + 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x73, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x65, + 0x78, 0x65, 0x63, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, 0x73, 0x65, 0x74, + 0x65, 0x6e, 0x76, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, + 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x73, 0x65, 0x74, 0x65, 0x6e, 0x76, 0x22, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x64, 0x69, 0x72, 0x20, + 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, + 0x6f, 0x73, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x64, 0x69, 0x72, 0x22, 0x29, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x70, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x69, 0x6f, 0x2e, - 0x6f, 0x70, 0x65, 0x6e, 0x22, 0x2c, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, - 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x29, 0x0a, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x3d, - 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, - 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, - 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x72, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x22, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x74, 0x6d, - 0x70, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, - 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x69, 0x6f, 0x2e, 0x74, 0x6d, 0x70, 0x66, 0x69, 0x6c, 0x65, - 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, - 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, - 0x28, 0x22, 0x69, 0x6f, 0x2e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x29, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x63, 0x68, 0x64, 0x69, 0x72, 0x20, 0x20, 0x3d, 0x20, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6c, 0x66, - 0x73, 0x2e, 0x63, 0x68, 0x64, 0x69, 0x72, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x66, - 0x73, 0x2e, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6c, 0x66, 0x73, 0x2e, 0x6c, 0x6f, 0x63, - 0x6b, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x74, 0x6f, 0x75, 0x63, - 0x68, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, - 0x79, 0x28, 0x22, 0x6c, 0x66, 0x73, 0x2e, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x22, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x72, 0x6d, 0x64, 0x69, 0x72, 0x20, 0x20, 0x3d, 0x20, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6c, 0x66, - 0x73, 0x2e, 0x72, 0x6d, 0x64, 0x69, 0x72, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x66, - 0x73, 0x2e, 0x6d, 0x6b, 0x64, 0x69, 0x72, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6c, 0x66, 0x73, 0x2e, 0x6d, 0x6b, 0x64, - 0x69, 0x72, 0x22, 0x29, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x73, 0x61, - 0x66, 0x65, 0x72, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x3d, 0x20, 0x31, 0x20, 0x6f, - 0x72, 0x20, 0x73, 0x68, 0x65, 0x6c, 0x6c, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x20, 0x7e, 0x3d, - 0x20, 0x31, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x66, 0x69, - 0x20, 0x3d, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x28, 0x27, 0x66, 0x66, 0x69, 0x27, - 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6b, 0x2c, 0x20, 0x76, 0x20, 0x69, - 0x6e, 0x20, 0x6e, 0x65, 0x78, 0x74, 0x2c, 0x20, 0x66, 0x66, 0x69, 0x20, 0x64, 0x6f, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6b, 0x20, 0x7e, 0x3d, 0x20, 0x27, - 0x67, 0x63, 0x27, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x66, 0x69, 0x5b, 0x6b, 0x5d, 0x20, 0x3d, 0x20, 0x6e, 0x69, - 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x66, 0x69, 0x20, 0x3d, 0x20, - 0x6e, 0x69, 0x6c, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x6f, 0x73, 0x2e, - 0x5b, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x7c, 0x6f, 0x73, 0x2e, 0x73, 0x70, 0x61, 0x77, - 0x6e, 0x7c, 0x6f, 0x73, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x5d, 0x20, 0x61, 0x6c, 0x72, 0x65, 0x61, - 0x64, 0x79, 0x20, 0x61, 0x72, 0x65, 0x20, 0x73, 0x68, 0x65, 0x6c, 0x6c, 0x65, 0x73, 0x63, 0x61, - 0x70, 0x65, 0x20, 0x61, 0x77, 0x61, 0x72, 0x65, 0x29, 0x0a, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x6d, - 0x64, 0x35, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, - 0x61, 0x6c, 0x20, 0x73, 0x75, 0x6d, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6d, 0x64, 0x35, 0x2e, - 0x73, 0x75, 0x6d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x67, 0x73, - 0x75, 0x62, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x67, 0x73, - 0x75, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x20, 0x3d, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x62, 0x79, - 0x74, 0x65, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x79, - 0x74, 0x65, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6d, - 0x64, 0x35, 0x2e, 0x73, 0x75, 0x6d, 0x68, 0x65, 0x78, 0x61, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x20, 0x6d, 0x64, 0x35, 0x2e, 0x73, 0x75, 0x6d, 0x68, 0x65, 0x78, 0x61, 0x28, 0x6b, 0x29, 0x0a, + 0x70, 0x6f, 0x70, 0x65, 0x6e, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x6f, + 0x70, 0x65, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, + 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x22, 0x2c, + 0x6c, 0x75, 0x61, 0x74, 0x65, 0x78, 0x5f, 0x69, 0x6f, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x72, + 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, + 0x2e, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x61, + 0x6d, 0x65, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, + 0x6d, 0x79, 0x28, 0x22, 0x6f, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0x29, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6f, 0x2e, 0x74, 0x6d, 0x70, 0x66, 0x69, 0x6c, 0x65, 0x20, + 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, + 0x69, 0x6f, 0x2e, 0x74, 0x6d, 0x70, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x6f, 0x2e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x69, 0x6f, 0x2e, 0x6f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x66, 0x73, + 0x2e, 0x63, 0x68, 0x64, 0x69, 0x72, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, + 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6c, 0x66, 0x73, 0x2e, 0x63, 0x68, 0x64, 0x69, + 0x72, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x6c, 0x6f, 0x63, 0x6b, + 0x20, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, + 0x79, 0x28, 0x22, 0x6c, 0x66, 0x73, 0x2e, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x20, 0x20, 0x3d, 0x20, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6c, 0x66, 0x73, + 0x2e, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x66, 0x73, + 0x2e, 0x72, 0x6d, 0x64, 0x69, 0x72, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, + 0x6c, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x28, 0x22, 0x6c, 0x66, 0x73, 0x2e, 0x72, 0x6d, 0x64, 0x69, + 0x72, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x6d, 0x6b, 0x64, 0x69, + 0x72, 0x20, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x64, 0x75, 0x6d, 0x6d, + 0x79, 0x28, 0x22, 0x6c, 0x66, 0x73, 0x2e, 0x6d, 0x6b, 0x64, 0x69, 0x72, 0x22, 0x29, 0x0a, 0x0a, + 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x73, 0x61, 0x66, 0x65, 0x72, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x3d, 0x20, 0x31, 0x20, 0x6f, 0x72, 0x20, 0x73, 0x68, 0x65, 0x6c, + 0x6c, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x20, 0x7e, 0x3d, 0x20, 0x31, 0x20, 0x74, 0x68, 0x65, + 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x66, 0x69, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x28, 0x27, 0x66, 0x66, 0x69, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x6b, 0x2c, 0x20, 0x76, 0x20, 0x69, 0x6e, 0x20, 0x6e, 0x65, 0x78, 0x74, + 0x2c, 0x20, 0x66, 0x66, 0x69, 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x66, 0x20, 0x6b, 0x20, 0x7e, 0x3d, 0x20, 0x27, 0x67, 0x63, 0x27, 0x20, 0x74, 0x68, + 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, + 0x66, 0x69, 0x5b, 0x6b, 0x5d, 0x20, 0x3d, 0x20, 0x6e, 0x69, 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x66, 0x69, 0x20, 0x3d, 0x20, 0x6e, 0x69, 0x6c, 0x0a, 0x0a, 0x65, + 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x6f, 0x73, 0x2e, 0x5b, 0x65, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x65, 0x7c, 0x6f, 0x73, 0x2e, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x7c, 0x6f, 0x73, 0x2e, 0x65, + 0x78, 0x65, 0x63, 0x5d, 0x20, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x20, 0x61, 0x72, 0x65, + 0x20, 0x73, 0x68, 0x65, 0x6c, 0x6c, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x20, 0x61, 0x77, 0x61, + 0x72, 0x65, 0x29, 0x0a, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x6d, 0x64, 0x35, 0x20, 0x74, 0x68, 0x65, + 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x75, 0x6d, + 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6d, 0x64, 0x35, 0x2e, 0x73, 0x75, 0x6d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x67, 0x73, 0x75, 0x62, 0x20, 0x20, 0x20, 0x3d, + 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x67, 0x73, 0x75, 0x62, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x20, 0x3d, 0x20, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x62, 0x79, 0x74, 0x65, 0x20, 0x20, 0x20, 0x3d, + 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x79, 0x74, 0x65, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6d, 0x64, 0x35, 0x2e, 0x73, 0x75, 0x6d, + 0x68, 0x65, 0x78, 0x61, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x64, 0x35, 0x2e, 0x73, + 0x75, 0x6d, 0x68, 0x65, 0x78, 0x61, 0x28, 0x6b, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x67, 0x73, + 0x75, 0x62, 0x28, 0x73, 0x75, 0x6d, 0x28, 0x6b, 0x29, 0x2c, 0x20, 0x22, 0x2e, 0x22, 0x2c, 0x20, + 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x63, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x20, 0x28, 0x67, 0x73, 0x75, 0x62, 0x28, 0x73, 0x75, 0x6d, 0x28, 0x6b, 0x29, 0x2c, - 0x20, 0x22, 0x2e, 0x22, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x63, - 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, - 0x22, 0x25, 0x30, 0x32, 0x78, 0x22, 0x2c, 0x62, 0x79, 0x74, 0x65, 0x28, 0x63, 0x29, 0x29, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x29, - 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, - 0x74, 0x20, 0x6d, 0x64, 0x35, 0x2e, 0x73, 0x75, 0x6d, 0x48, 0x45, 0x58, 0x41, 0x20, 0x74, 0x68, - 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x64, 0x35, 0x2e, 0x73, 0x75, 0x6d, 0x48, 0x45, 0x58, 0x41, 0x28, - 0x6b, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, - 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x67, 0x73, 0x75, 0x62, 0x28, 0x73, 0x75, 0x6d, 0x28, - 0x6b, 0x29, 0x2c, 0x20, 0x22, 0x2e, 0x22, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x28, 0x63, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x74, 0x28, 0x22, 0x25, 0x30, 0x32, 0x58, 0x22, 0x2c, 0x62, 0x79, 0x74, 0x65, 0x28, 0x63, - 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, - 0x6e, 0x64, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, - 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x3a, - 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x67, 0x6f, 0x20, 0x61, - 0x77, 0x61, 0x79, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x75, 0x6e, 0x70, 0x61, - 0x63, 0x6b, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x6e, 0x70, 0x61, - 0x63, 0x6b, 0x20, 0x3d, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x75, 0x6e, 0x70, 0x61, 0x63, - 0x6b, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x70, 0x61, - 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, - 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, 0x6c, - 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, - 0x2e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x65, 0x72, 0x73, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, - 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x73, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x0a, 0x65, 0x6e, 0x64, - 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x3a, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x73, - 0x74, 0x61, 0x79, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, 0x74, 0x68, - 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x6c, 0x75, 0x61, 0x20, 0x35, - 0x2e, 0x32, 0x3a, 0x20, 0x77, 0x65, 0x27, 0x72, 0x65, 0x20, 0x6f, 0x6b, 0x61, 0x79, 0x0a, 0x0a, - 0x65, 0x6c, 0x73, 0x65, 0x69, 0x66, 0x20, 0x75, 0x74, 0x66, 0x38, 0x20, 0x74, 0x68, 0x65, 0x6e, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x6c, 0x75, 0x61, 0x20, 0x35, 0x2e, 0x33, - 0x3a, 0x20, 0x20, 0x62, 0x69, 0x74, 0x77, 0x69, 0x73, 0x65, 0x2e, 0x6c, 0x75, 0x61, 0x2c, 0x20, - 0x76, 0x20, 0x31, 0x2e, 0x32, 0x34, 0x20, 0x32, 0x30, 0x31, 0x34, 0x2f, 0x31, 0x32, 0x2f, 0x32, - 0x36, 0x20, 0x31, 0x37, 0x3a, 0x32, 0x30, 0x3a, 0x35, 0x33, 0x20, 0x72, 0x6f, 0x62, 0x65, 0x72, - 0x74, 0x6f, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, 0x3d, 0x20, - 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x28, 0x20, 0x5b, 0x5b, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, - 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, - 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x64, 0x20, 0x6f, 0x66, 0x3a, 0x20, 0x61, - 0x72, 0x67, 0x20, 0x3d, 0x20, 0x7b, 0x20, 0x2e, 0x2e, 0x2e, 0x20, 0x7d, 0x0a, 0x0a, 0x62, 0x69, - 0x74, 0x33, 0x32, 0x20, 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x62, 0x6e, 0x6f, 0x74, 0x20, 0x3d, - 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x29, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x7e, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, - 0x20, 0x20, 0x62, 0x61, 0x6e, 0x64, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x20, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x2c, 0x20, 0x7a, 0x2c, 0x20, 0x2e, 0x2e, 0x2e, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x7a, 0x20, 0x74, 0x68, - 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, - 0x28, 0x28, 0x78, 0x20, 0x6f, 0x72, 0x20, 0x2d, 0x31, 0x29, 0x20, 0x26, 0x20, 0x28, 0x79, 0x20, - 0x6f, 0x72, 0x20, 0x2d, 0x31, 0x29, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, - 0x78, 0x20, 0x26, 0x20, 0x79, 0x20, 0x26, 0x20, 0x7a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x66, 0x6f, 0x72, 0x20, 0x69, 0x3d, 0x31, 0x2c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x22, - 0x23, 0x22, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x73, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x69, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, - 0x75, 0x72, 0x6e, 0x20, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x65, - 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x2c, 0x20, 0x7a, 0x2c, 0x20, 0x2e, - 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x7a, - 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x20, 0x28, 0x28, 0x78, 0x20, 0x6f, 0x72, 0x20, 0x30, 0x29, 0x20, 0x7c, 0x20, 0x28, - 0x79, 0x20, 0x6f, 0x72, 0x20, 0x30, 0x29, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, - 0x20, 0x78, 0x20, 0x7c, 0x20, 0x79, 0x20, 0x7c, 0x20, 0x7a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x3d, 0x31, 0x2c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, - 0x22, 0x23, 0x22, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x73, 0x20, 0x7c, 0x20, - 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x69, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x20, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, - 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x78, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x66, 0x75, - 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x2c, 0x20, 0x7a, 0x2c, - 0x20, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, - 0x20, 0x7a, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x78, 0x20, 0x6f, 0x72, 0x20, 0x30, 0x29, 0x20, 0x7e, - 0x20, 0x28, 0x79, 0x20, 0x6f, 0x72, 0x20, 0x30, 0x29, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, - 0x20, 0x3d, 0x20, 0x78, 0x20, 0x7e, 0x20, 0x79, 0x20, 0x7e, 0x20, 0x7a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x3d, 0x31, 0x2c, 0x73, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x28, 0x22, 0x23, 0x22, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x73, 0x20, - 0x7e, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x69, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, - 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x74, 0x65, 0x73, 0x74, 0x20, 0x3d, - 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x2c, - 0x20, 0x7a, 0x2c, 0x20, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, - 0x6e, 0x6f, 0x74, 0x20, 0x7a, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x28, 0x78, 0x20, 0x6f, 0x72, 0x20, - 0x2d, 0x31, 0x29, 0x20, 0x26, 0x20, 0x28, 0x79, 0x20, 0x6f, 0x72, 0x20, 0x2d, 0x31, 0x29, 0x29, - 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x29, 0x20, 0x7e, - 0x3d, 0x20, 0x30, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x78, - 0x20, 0x26, 0x20, 0x79, 0x20, 0x26, 0x20, 0x7a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, - 0x6f, 0x72, 0x20, 0x69, 0x3d, 0x31, 0x2c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x22, 0x23, - 0x22, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, - 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x69, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x29, 0x20, 0x7e, 0x3d, 0x20, 0x30, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x6c, 0x73, - 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, - 0x28, 0x61, 0x2c, 0x20, 0x62, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x28, 0x28, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x62, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, - 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x20, 0x28, 0x61, 0x2c, 0x20, 0x62, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, - 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x62, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, - 0x20, 0x20, 0x61, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x2c, 0x20, 0x62, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x61, 0x20, 0x3d, 0x20, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x62, 0x20, 0x3c, 0x3d, 0x20, 0x30, - 0x20, 0x6f, 0x72, 0x20, 0x28, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x38, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x29, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x61, 0x20, 0x3e, - 0x3e, 0x20, 0x62, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, + 0x72, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x22, 0x25, 0x30, 0x32, 0x78, 0x22, + 0x2c, 0x62, 0x79, 0x74, 0x65, 0x28, 0x63, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6d, 0x64, 0x35, 0x2e, + 0x73, 0x75, 0x6d, 0x48, 0x45, 0x58, 0x41, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x64, + 0x35, 0x2e, 0x73, 0x75, 0x6d, 0x48, 0x45, 0x58, 0x41, 0x28, 0x6b, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, + 0x28, 0x67, 0x73, 0x75, 0x62, 0x28, 0x73, 0x75, 0x6d, 0x28, 0x6b, 0x29, 0x2c, 0x20, 0x22, 0x2e, + 0x22, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x63, 0x29, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x22, 0x25, 0x30, + 0x32, 0x58, 0x22, 0x2c, 0x62, 0x79, 0x74, 0x65, 0x28, 0x63, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x29, 0x29, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, + 0x6e, 0x64, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x3a, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x67, 0x6f, 0x20, 0x61, 0x77, 0x61, 0x79, 0x0a, 0x0a, 0x69, + 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x75, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x20, 0x74, 0x68, 0x65, + 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x20, 0x3d, 0x20, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x75, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x0a, 0x65, 0x6e, 0x64, 0x0a, + 0x0a, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, + 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, + 0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, 0x73, 0x65, 0x61, 0x72, 0x63, + 0x68, 0x65, 0x72, 0x73, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, + 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x6e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, + 0x3d, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x3a, 0x20, 0x74, 0x68, + 0x69, 0x73, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x73, 0x74, 0x61, 0x79, 0x0a, 0x0a, 0x69, + 0x66, 0x20, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x6c, 0x75, 0x61, 0x20, 0x35, 0x2e, 0x32, 0x3a, 0x20, 0x77, 0x65, + 0x27, 0x72, 0x65, 0x20, 0x6f, 0x6b, 0x61, 0x79, 0x0a, 0x0a, 0x65, 0x6c, 0x73, 0x65, 0x69, 0x66, + 0x20, 0x75, 0x74, 0x66, 0x38, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x2d, 0x2d, 0x20, 0x6c, 0x75, 0x61, 0x20, 0x35, 0x2e, 0x33, 0x3a, 0x20, 0x20, 0x62, 0x69, 0x74, + 0x77, 0x69, 0x73, 0x65, 0x2e, 0x6c, 0x75, 0x61, 0x2c, 0x20, 0x76, 0x20, 0x31, 0x2e, 0x32, 0x34, + 0x20, 0x32, 0x30, 0x31, 0x34, 0x2f, 0x31, 0x32, 0x2f, 0x32, 0x36, 0x20, 0x31, 0x37, 0x3a, 0x32, + 0x30, 0x3a, 0x35, 0x33, 0x20, 0x72, 0x6f, 0x62, 0x65, 0x72, 0x74, 0x6f, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x28, + 0x20, 0x5b, 0x5b, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x73, + 0x74, 0x65, 0x61, 0x64, 0x20, 0x6f, 0x66, 0x3a, 0x20, 0x61, 0x72, 0x67, 0x20, 0x3d, 0x20, 0x7b, + 0x20, 0x2e, 0x2e, 0x2e, 0x20, 0x7d, 0x0a, 0x0a, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, 0x3d, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x62, 0x6e, 0x6f, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, + 0x72, 0x6e, 0x20, 0x7e, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, + 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x61, 0x6e, 0x64, + 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x78, 0x2c, 0x20, + 0x79, 0x2c, 0x20, 0x7a, 0x2c, 0x20, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, + 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x7a, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x78, 0x20, 0x6f, 0x72, + 0x20, 0x2d, 0x31, 0x29, 0x20, 0x26, 0x20, 0x28, 0x79, 0x20, 0x6f, 0x72, 0x20, 0x2d, 0x31, 0x29, + 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, + 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x78, 0x20, 0x26, 0x20, 0x79, 0x20, + 0x26, 0x20, 0x7a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x3d, + 0x31, 0x2c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x22, 0x23, 0x22, 0x2c, 0x2e, 0x2e, 0x2e, + 0x29, 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x73, + 0x20, 0x3d, 0x20, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, + 0x69, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x72, 0x65, + 0x73, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, + 0x62, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, + 0x78, 0x2c, 0x20, 0x79, 0x2c, 0x20, 0x7a, 0x2c, 0x20, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x7a, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x78, + 0x20, 0x6f, 0x72, 0x20, 0x30, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x79, 0x20, 0x6f, 0x72, 0x20, 0x30, + 0x29, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, + 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x78, 0x20, 0x7c, 0x20, 0x79, + 0x20, 0x7c, 0x20, 0x7a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, + 0x3d, 0x31, 0x2c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x22, 0x23, 0x22, 0x2c, 0x2e, 0x2e, + 0x2e, 0x29, 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, + 0x73, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x73, 0x20, 0x7c, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x28, 0x69, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, + 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x72, + 0x65, 0x73, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, + 0x20, 0x62, 0x78, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x2c, 0x20, 0x7a, 0x2c, 0x20, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x7a, 0x20, 0x74, 0x68, 0x65, + 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, + 0x28, 0x78, 0x20, 0x6f, 0x72, 0x20, 0x30, 0x29, 0x20, 0x7e, 0x20, 0x28, 0x79, 0x20, 0x6f, 0x72, + 0x20, 0x30, 0x29, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, 0x62, - 0x29, 0x20, 0x7c, 0x20, 0x7e, 0x28, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, - 0x20, 0x3e, 0x3e, 0x20, 0x62, 0x29, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x65, - 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x6c, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, - 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x20, 0x2c, 0x62, 0x29, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x62, 0x20, 0x3d, 0x20, 0x62, 0x20, 0x26, 0x20, 0x33, 0x31, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x28, 0x61, - 0x20, 0x3c, 0x3c, 0x20, 0x62, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, 0x28, - 0x33, 0x32, 0x20, 0x2d, 0x20, 0x62, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, - 0x75, 0x72, 0x6e, 0x20, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x72, 0x72, 0x6f, 0x74, - 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, - 0x61, 0x2c, 0x20, 0x62, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, 0x20, 0x3d, 0x20, 0x2d, 0x62, - 0x20, 0x26, 0x20, 0x33, 0x31, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x61, 0x20, + 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x78, 0x20, 0x7e, + 0x20, 0x79, 0x20, 0x7e, 0x20, 0x7a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x69, 0x3d, 0x31, 0x2c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x22, 0x23, 0x22, 0x2c, + 0x2e, 0x2e, 0x2e, 0x29, 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x73, 0x20, 0x7e, 0x20, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x28, 0x69, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, + 0x20, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, + 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, + 0x0a, 0x20, 0x20, 0x62, 0x74, 0x65, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x2c, 0x20, 0x7a, 0x2c, 0x20, 0x2e, 0x2e, + 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x7a, 0x20, + 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x20, 0x28, 0x28, 0x28, 0x78, 0x20, 0x6f, 0x72, 0x20, 0x2d, 0x31, 0x29, 0x20, 0x26, 0x20, + 0x28, 0x79, 0x20, 0x6f, 0x72, 0x20, 0x2d, 0x31, 0x29, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, + 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x29, 0x20, 0x7e, 0x3d, 0x20, 0x30, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, + 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x78, 0x20, 0x26, 0x20, 0x79, 0x20, 0x26, + 0x20, 0x7a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x3d, 0x31, + 0x2c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x22, 0x23, 0x22, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, + 0x20, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, + 0x73, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x28, 0x69, 0x2c, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, + 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, + 0x72, 0x65, 0x73, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, + 0x29, 0x20, 0x7e, 0x3d, 0x20, 0x30, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, + 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, + 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x2c, 0x20, 0x62, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x61, 0x20, + 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x29, 0x20, 0x3c, 0x3c, + 0x20, 0x62, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, + 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, + 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x2c, 0x20, + 0x62, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, + 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x29, 0x20, + 0x3e, 0x3e, 0x20, 0x62, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, + 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x61, 0x72, 0x73, 0x68, + 0x69, 0x66, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, + 0x61, 0x2c, 0x20, 0x62, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x20, 0x3d, 0x20, 0x28, 0x61, 0x20, 0x3c, 0x3c, 0x20, 0x62, 0x29, 0x20, 0x7c, 0x20, - 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, 0x28, 0x33, 0x32, 0x20, 0x2d, 0x20, 0x62, 0x29, 0x29, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x61, 0x20, 0x26, 0x20, 0x30, - 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, - 0x0a, 0x20, 0x20, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x2c, 0x20, 0x66, 0x2c, 0x20, 0x77, 0x29, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x61, 0x20, 0x3e, 0x3e, - 0x20, 0x66, 0x29, 0x20, 0x26, 0x20, 0x7e, 0x28, 0x2d, 0x31, 0x20, 0x3c, 0x3c, 0x20, 0x28, 0x77, - 0x20, 0x6f, 0x72, 0x20, 0x31, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, - 0x20, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x2c, 0x20, 0x76, 0x2c, 0x20, 0x66, 0x2c, 0x20, 0x77, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x20, - 0x3d, 0x20, 0x7e, 0x28, 0x2d, 0x31, 0x20, 0x3c, 0x3c, 0x20, 0x28, 0x77, 0x20, 0x6f, 0x72, 0x20, - 0x31, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, - 0x28, 0x61, 0x20, 0x26, 0x20, 0x7e, 0x28, 0x6d, 0x61, 0x73, 0x6b, 0x20, 0x3c, 0x3c, 0x20, 0x66, - 0x29, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x28, 0x76, 0x20, 0x26, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x29, - 0x20, 0x3c, 0x3c, 0x20, 0x66, 0x29, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, - 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x7d, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x5d, 0x20, 0x29, 0x0a, 0x0a, 0x65, 0x6c, 0x73, 0x65, - 0x69, 0x66, 0x20, 0x62, 0x69, 0x74, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x2d, 0x2d, 0x20, 0x6c, 0x75, 0x61, 0x6a, 0x69, 0x74, 0x20, 0x28, 0x66, 0x6f, 0x72, 0x20, - 0x6e, 0x6f, 0x77, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, - 0x3d, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x28, 0x20, 0x5b, 0x5b, 0x0a, 0x6c, 0x6f, 0x63, 0x61, - 0x6c, 0x20, 0x62, 0x61, 0x6e, 0x64, 0x2c, 0x20, 0x62, 0x6e, 0x6f, 0x74, 0x2c, 0x20, 0x72, 0x73, - 0x68, 0x69, 0x66, 0x74, 0x2c, 0x20, 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, 0x20, 0x62, - 0x69, 0x74, 0x2e, 0x62, 0x61, 0x6e, 0x64, 0x2c, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x62, 0x6e, 0x6f, - 0x74, 0x2c, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2c, 0x20, 0x62, - 0x69, 0x74, 0x2e, 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x0a, 0x0a, 0x62, 0x69, 0x74, 0x33, 0x32, - 0x20, 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x61, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, - 0x20, 0x62, 0x69, 0x74, 0x2e, 0x61, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2c, 0x0a, 0x20, 0x20, - 0x62, 0x61, 0x6e, 0x64, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x62, 0x61, 0x6e, 0x64, 0x2c, 0x0a, - 0x20, 0x20, 0x62, 0x6e, 0x6f, 0x74, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x62, 0x6e, 0x6f, 0x74, - 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x6f, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x62, 0x69, - 0x74, 0x2e, 0x62, 0x6f, 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x78, 0x6f, 0x72, 0x20, 0x20, 0x20, - 0x20, 0x3d, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x62, 0x78, 0x6f, 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x62, - 0x74, 0x65, 0x73, 0x74, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x28, 0x2e, 0x2e, 0x2e, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x62, 0x61, 0x6e, 0x64, 0x28, 0x2e, 0x2e, 0x2e, 0x29, 0x20, 0x7e, 0x3d, 0x20, 0x30, - 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x61, 0x2c, 0x66, - 0x2c, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x62, - 0x61, 0x6e, 0x64, 0x28, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x28, 0x61, 0x2c, 0x66, 0x29, 0x2c, - 0x32, 0x5e, 0x28, 0x77, 0x20, 0x6f, 0x72, 0x20, 0x31, 0x29, 0x2d, 0x31, 0x29, 0x0a, 0x20, 0x20, - 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x6c, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x20, 0x3d, - 0x20, 0x62, 0x69, 0x74, 0x2e, 0x72, 0x6f, 0x6c, 0x2c, 0x0a, 0x20, 0x20, 0x6c, 0x73, 0x68, 0x69, - 0x66, 0x74, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2c, 0x0a, 0x20, 0x20, - 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x28, 0x61, 0x2c, 0x76, 0x2c, 0x66, 0x2c, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x20, 0x3d, 0x20, 0x32, 0x5e, 0x28, - 0x77, 0x20, 0x6f, 0x72, 0x20, 0x31, 0x29, 0x2d, 0x31, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x20, 0x62, 0x61, 0x6e, 0x64, 0x28, 0x61, 0x2c, 0x62, 0x6e, 0x6f, 0x74, - 0x28, 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x28, 0x6d, 0x61, 0x73, 0x6b, 0x2c, 0x66, 0x29, 0x29, - 0x29, 0x2b, 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x28, 0x62, 0x61, 0x6e, 0x64, 0x28, 0x76, 0x2c, - 0x6d, 0x61, 0x73, 0x6b, 0x29, 0x2c, 0x66, 0x29, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, - 0x20, 0x20, 0x72, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x62, 0x69, 0x74, 0x2e, - 0x72, 0x6f, 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x20, 0x3d, - 0x20, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2c, 0x0a, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x5d, 0x5d, 0x20, 0x29, 0x0a, 0x0a, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x68, 0x6f, 0x70, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, - 0x68, 0x65, 0x20, 0x62, 0x65, 0x73, 0x74, 0x20, 0x6f, 0x72, 0x20, 0x66, 0x61, 0x69, 0x6c, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x71, - 0x75, 0x69, 0x72, 0x65, 0x28, 0x22, 0x62, 0x69, 0x74, 0x33, 0x32, 0x22, 0x29, 0x0a, 0x0a, 0x65, - 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x6e, - 0x65, 0x65, 0x64, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x67, 0x65, 0x74, 0x74, 0x69, 0x6e, - 0x67, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x28, 0x22, 0x73, 0x6f, 0x63, 0x6b, 0x65, - 0x74, 0x22, 0x29, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x0a, 0x0a, 0x64, 0x6f, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x20, - 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x6f, 0x61, - 0x64, 0x65, 0x64, 0x2e, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, - 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x2e, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x20, 0x3d, 0x20, - 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x5b, 0x22, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x63, - 0x6f, 0x72, 0x65, 0x22, 0x5d, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, - 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x2e, 0x6d, 0x69, 0x6d, 0x65, - 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x2e, 0x6d, - 0x69, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x5b, 0x22, - 0x6d, 0x69, 0x6d, 0x65, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x5d, 0x20, 0x20, 0x20, 0x65, 0x6e, - 0x64, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x64, 0x6f, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6c, 0x66, 0x73, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, - 0x74, 0x65, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x61, 0x74, - 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, - 0x61, 0x6c, 0x20, 0x73, 0x79, 0x6d, 0x6c, 0x69, 0x6e, 0x6b, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, - 0x75, 0x74, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x73, 0x79, 0x6d, 0x6c, 0x69, - 0x6e, 0x6b, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x6e, - 0x6f, 0x77, 0x20, 0x62, 0x65, 0x20, 0x64, 0x6f, 0x6e, 0x65, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, - 0x20, 0x6c, 0x66, 0x73, 0x20, 0x28, 0x77, 0x61, 0x73, 0x20, 0x64, 0x65, 0x61, 0x64, 0x20, 0x73, - 0x6c, 0x6f, 0x77, 0x20, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x69, 0x73, 0x66, 0x69, - 0x6c, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x69, 0x73, 0x66, - 0x69, 0x6c, 0x65, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x20, 0x3d, 0x20, - 0x6c, 0x66, 0x73, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x28, 0x6e, 0x61, - 0x6d, 0x65, 0x2c, 0x22, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6d, 0x20, - 0x3d, 0x3d, 0x20, 0x22, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x20, 0x3d, - 0x3d, 0x20, 0x22, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x69, 0x73, 0x64, - 0x69, 0x72, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x69, 0x73, 0x64, - 0x69, 0x72, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x20, 0x3d, 0x20, 0x6c, - 0x66, 0x73, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x28, 0x6e, 0x61, 0x6d, - 0x65, 0x2c, 0x22, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6d, 0x20, 0x3d, - 0x3d, 0x20, 0x22, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, - 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x62, - 0x65, 0x20, 0x73, 0x6f, 0x72, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, - 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x6b, 0x70, 0x73, 0x65, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x73, 0x68, 0x6f, 0x72, - 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x66, 0x73, 0x2e, - 0x73, 0x68, 0x6f, 0x72, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x66, 0x20, 0x62, 0x20, 0x3c, 0x3d, 0x20, 0x30, 0x20, 0x6f, 0x72, 0x20, 0x28, 0x61, + 0x20, 0x26, 0x20, 0x30, 0x78, 0x38, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x29, 0x20, 0x3d, + 0x3d, 0x20, 0x30, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, 0x62, 0x29, 0x20, 0x26, + 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x20, 0x28, 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, 0x62, 0x29, 0x20, 0x7c, 0x20, 0x7e, 0x28, + 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x20, 0x3e, 0x3e, 0x20, 0x62, 0x29, + 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, + 0x6c, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x20, 0x2c, 0x62, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, 0x20, + 0x3d, 0x20, 0x62, 0x20, 0x26, 0x20, 0x33, 0x31, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x3d, + 0x20, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x28, 0x61, 0x20, 0x3c, 0x3c, 0x20, 0x62, 0x29, + 0x20, 0x7c, 0x20, 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, 0x28, 0x33, 0x32, 0x20, 0x2d, 0x20, 0x62, + 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x61, 0x20, + 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, + 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x72, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, + 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, 0x2c, 0x20, 0x62, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x62, 0x20, 0x3d, 0x20, 0x2d, 0x62, 0x20, 0x26, 0x20, 0x33, 0x31, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, + 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x28, + 0x61, 0x20, 0x3c, 0x3c, 0x20, 0x62, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, + 0x28, 0x33, 0x32, 0x20, 0x2d, 0x20, 0x62, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, + 0x74, 0x75, 0x72, 0x6e, 0x20, 0x61, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, + 0x46, 0x46, 0x46, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x65, 0x78, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x28, 0x61, 0x2c, 0x20, 0x66, 0x2c, 0x20, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, + 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, 0x66, 0x29, 0x20, 0x26, 0x20, + 0x7e, 0x28, 0x2d, 0x31, 0x20, 0x3c, 0x3c, 0x20, 0x28, 0x77, 0x20, 0x6f, 0x72, 0x20, 0x31, 0x29, + 0x29, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x72, 0x65, 0x70, 0x6c, 0x61, + 0x63, 0x65, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x61, + 0x2c, 0x20, 0x76, 0x2c, 0x20, 0x66, 0x2c, 0x20, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, + 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x20, 0x3d, 0x20, 0x7e, 0x28, 0x2d, 0x31, + 0x20, 0x3c, 0x3c, 0x20, 0x28, 0x77, 0x20, 0x6f, 0x72, 0x20, 0x31, 0x29, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x61, 0x20, 0x26, 0x20, 0x7e, + 0x28, 0x6d, 0x61, 0x73, 0x6b, 0x20, 0x3c, 0x3c, 0x20, 0x66, 0x29, 0x29, 0x20, 0x7c, 0x20, 0x28, + 0x28, 0x76, 0x20, 0x26, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x66, 0x29, + 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x0a, 0x20, + 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x5d, 0x5d, 0x20, 0x29, 0x0a, 0x0a, 0x65, 0x6c, 0x73, 0x65, 0x69, 0x66, 0x20, 0x62, 0x69, 0x74, + 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x6c, 0x75, + 0x61, 0x6a, 0x69, 0x74, 0x20, 0x28, 0x66, 0x6f, 0x72, 0x20, 0x6e, 0x6f, 0x77, 0x29, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x61, 0x64, + 0x20, 0x28, 0x20, 0x5b, 0x5b, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x62, 0x61, 0x6e, 0x64, + 0x2c, 0x20, 0x62, 0x6e, 0x6f, 0x74, 0x2c, 0x20, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2c, 0x20, + 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x62, 0x61, 0x6e, + 0x64, 0x2c, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x62, 0x6e, 0x6f, 0x74, 0x2c, 0x20, 0x62, 0x69, 0x74, + 0x2e, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2c, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x6c, 0x73, 0x68, + 0x69, 0x66, 0x74, 0x0a, 0x0a, 0x62, 0x69, 0x74, 0x33, 0x32, 0x20, 0x3d, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x61, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x61, + 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x61, 0x6e, 0x64, 0x20, 0x20, + 0x20, 0x20, 0x3d, 0x20, 0x62, 0x61, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x6e, 0x6f, 0x74, + 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x62, 0x6e, 0x6f, 0x74, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x6f, + 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x62, 0x6f, 0x72, 0x2c, + 0x0a, 0x20, 0x20, 0x62, 0x78, 0x6f, 0x72, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x62, 0x69, 0x74, + 0x2e, 0x62, 0x78, 0x6f, 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x62, 0x74, 0x65, 0x73, 0x74, 0x20, 0x20, + 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x2e, 0x2e, 0x2e, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x62, 0x61, 0x6e, 0x64, + 0x28, 0x2e, 0x2e, 0x2e, 0x29, 0x20, 0x7e, 0x3d, 0x20, 0x30, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, + 0x2c, 0x0a, 0x20, 0x20, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x75, + 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x61, 0x2c, 0x66, 0x2c, 0x77, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x62, 0x61, 0x6e, 0x64, 0x28, 0x72, 0x73, + 0x68, 0x69, 0x66, 0x74, 0x28, 0x61, 0x2c, 0x66, 0x29, 0x2c, 0x32, 0x5e, 0x28, 0x77, 0x20, 0x6f, + 0x72, 0x20, 0x31, 0x29, 0x2d, 0x31, 0x29, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, + 0x20, 0x6c, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x72, + 0x6f, 0x6c, 0x2c, 0x0a, 0x20, 0x20, 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x20, 0x3d, 0x20, + 0x6c, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2c, 0x0a, 0x20, 0x20, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x61, 0x2c, 0x76, + 0x2c, 0x66, 0x2c, 0x77, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, + 0x6d, 0x61, 0x73, 0x6b, 0x20, 0x3d, 0x20, 0x32, 0x5e, 0x28, 0x77, 0x20, 0x6f, 0x72, 0x20, 0x31, + 0x29, 0x2d, 0x31, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x62, + 0x61, 0x6e, 0x64, 0x28, 0x61, 0x2c, 0x62, 0x6e, 0x6f, 0x74, 0x28, 0x6c, 0x73, 0x68, 0x69, 0x66, + 0x74, 0x28, 0x6d, 0x61, 0x73, 0x6b, 0x2c, 0x66, 0x29, 0x29, 0x29, 0x2b, 0x6c, 0x73, 0x68, 0x69, + 0x66, 0x74, 0x28, 0x62, 0x61, 0x6e, 0x64, 0x28, 0x76, 0x2c, 0x6d, 0x61, 0x73, 0x6b, 0x29, 0x2c, + 0x66, 0x29, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x72, 0x72, 0x6f, 0x74, + 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x62, 0x69, 0x74, 0x2e, 0x72, 0x6f, 0x72, 0x2c, 0x0a, 0x20, + 0x20, 0x72, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x20, 0x3d, 0x20, 0x72, 0x73, 0x68, 0x69, 0x66, + 0x74, 0x2c, 0x0a, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x5d, 0x20, + 0x29, 0x0a, 0x0a, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, + 0x68, 0x6f, 0x70, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x65, 0x73, + 0x74, 0x20, 0x6f, 0x72, 0x20, 0x66, 0x61, 0x69, 0x6c, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, + 0x69, 0x74, 0x33, 0x32, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x28, 0x22, + 0x62, 0x69, 0x74, 0x33, 0x32, 0x22, 0x29, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, + 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x67, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x28, 0x22, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x29, 0x20, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x0a, 0x0a, 0x64, 0x6f, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, + 0x61, 0x6c, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, + 0x61, 0x67, 0x65, 0x2e, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x2e, 0x73, 0x6f, + 0x63, 0x6b, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, + 0x2e, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, + 0x5b, 0x22, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x5d, 0x20, + 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, + 0x6f, 0x61, 0x64, 0x65, 0x64, 0x2e, 0x6d, 0x69, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, + 0x6e, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x2e, 0x6d, 0x69, 0x6d, 0x65, 0x20, 0x20, 0x20, + 0x3d, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x5b, 0x22, 0x6d, 0x69, 0x6d, 0x65, 0x2e, 0x63, + 0x6f, 0x72, 0x65, 0x22, 0x5d, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x65, 0x6e, 0x64, + 0x0a, 0x0a, 0x64, 0x6f, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, + 0x6c, 0x66, 0x73, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x79, 0x6d, + 0x6c, 0x69, 0x6e, 0x6b, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x3d, + 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x73, 0x79, 0x6d, 0x6c, 0x69, 0x6e, 0x6b, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x74, + 0x68, 0x65, 0x73, 0x65, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x6e, 0x6f, 0x77, 0x20, 0x62, 0x65, 0x20, + 0x64, 0x6f, 0x6e, 0x65, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6c, 0x66, 0x73, 0x20, 0x28, + 0x77, 0x61, 0x73, 0x20, 0x64, 0x65, 0x61, 0x64, 0x20, 0x73, 0x6c, 0x6f, 0x77, 0x20, 0x62, 0x65, + 0x66, 0x6f, 0x72, 0x65, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, + 0x74, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x69, 0x73, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x74, 0x68, 0x65, + 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x69, 0x73, 0x66, 0x69, 0x6c, 0x65, 0x28, 0x6e, 0x61, + 0x6d, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x20, 0x3d, 0x20, 0x6c, 0x66, 0x73, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x22, 0x6d, 0x6f, + 0x64, 0x65, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6d, 0x20, 0x3d, 0x3d, 0x20, 0x22, 0x66, 0x69, + 0x6c, 0x65, 0x22, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x20, 0x3d, 0x3d, 0x20, 0x22, 0x6c, 0x69, 0x6e, + 0x6b, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, + 0x6f, 0x74, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x69, 0x73, 0x64, 0x69, 0x72, 0x20, 0x74, 0x68, 0x65, + 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x69, 0x73, 0x64, 0x69, 0x72, 0x28, 0x6e, 0x61, 0x6d, + 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, + 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x20, 0x3d, 0x20, 0x6c, 0x66, 0x73, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x22, 0x6d, 0x6f, 0x64, + 0x65, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6d, 0x20, 0x3d, 0x3d, 0x20, 0x22, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x2d, 0x2d, 0x20, 0x6e, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x69, 0x73, - 0x20, 0x61, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x2c, - 0x20, 0x73, 0x6f, 0x20, 0x2e, 0x2e, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, - 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x6b, - 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, - 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x6c, - 0x69, 0x6e, 0x6b, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x79, 0x6d, - 0x6c, 0x69, 0x6e, 0x6b, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x28, 0x6e, - 0x61, 0x6d, 0x65, 0x2c, 0x22, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x29, 0x20, 0x6f, 0x72, - 0x20, 0x6e, 0x69, 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, - 0x2d, 0x20, 0x73, 0x6f, 0x20, 0x66, 0x61, 0x72, 0x0a, 0x0a, 0x00 + 0x20, 0x2d, 0x2d, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x68, + 0x61, 0x76, 0x65, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x73, 0x6f, 0x72, 0x74, + 0x20, 0x6f, 0x66, 0x20, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, + 0x20, 0x6b, 0x70, 0x73, 0x65, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, + 0x74, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x74, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x6e, + 0x61, 0x6d, 0x65, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x6e, 0x6f, + 0x77, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x2e, 0x2e, + 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x66, + 0x73, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x6c, 0x66, 0x73, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x6b, 0x28, 0x6e, 0x61, + 0x6d, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x79, 0x6d, 0x6c, 0x69, 0x6e, 0x6b, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x28, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x22, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x29, 0x20, 0x6f, 0x72, 0x20, 0x6e, 0x69, 0x6c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, + 0x6e, 0x64, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x0a, 0x0a, 0x2d, 0x2d, 0x20, 0x73, 0x6f, 0x20, 0x66, + 0x61, 0x72, 0x0a, 0x0a, 0x00 }; return luaL_dostring(L, (const char*) luatex_core_lua); } \ No newline at end of file diff --git a/source/texk/web2c/luatexdir/lua/luatex-core.lua b/source/texk/web2c/luatexdir/lua/luatex-core.lua index f2d55fd99..5ed425a99 100644 --- a/source/texk/web2c/luatexdir/lua/luatex-core.lua +++ b/source/texk/web2c/luatexdir/lua/luatex-core.lua @@ -1,465 +1,466 @@ --- luatex-core security and io overloads ........... - --- if not modules then modules = { } end modules ['luatex-core'] = { --- version = 1.080, --- comment = 'companion to luatex', --- author = 'Hans Hagen & Luigi Scarso', --- copyright = 'LuaTeX Development Team', --- } - -LUATEXCOREVERSION = 1.080 -- we reflect the luatex version where changes happened - --- This file overloads some Lua functions. The readline variants provide the same --- functionality as LuaTeX <= 1.04 and doing it this way permits us to keep the --- original io libraries clean. Performance is probably even a bit better now. - --- We test for functions already being defined so that we don't overload ones that --- are provided in the startup script. - -local type, next, getmetatable, require = type, next, getmetatable, require -local find, gsub, format = string.find, string.gsub, string.format - -local io_open = io.open -local io_popen = io.popen -local io_lines = io.lines - -local fio_readline = fio.readline -local fio_checkpermission = fio.checkpermission -local fio_recordfilename = fio.recordfilename - -local mt = getmetatable(io.stderr) -local mt_lines = mt.lines -local saferoption = status.safer_option -local shellescape = status.shell_escape -- 0 (disabled) 1 (anything) 2 (restricted) -local kpseused = status.kpse_used -- 0 1 - -local write_nl = texio.write_nl - -io.saved_lines = io_lines -- always readonly -mt.saved_lines = mt_lines -- always readonly - -local function luatex_io_open(name,how) - if not how then - how = 'r' - end - local f = io_open(name,how) - if f then - if type(how) == 'string' and find(how,'w') then - fio_recordfilename(name,'w') - else - fio_recordfilename(name,'r') - end - end - return f -end - -local function luatex_io_open_readonly(name,how) - if how then - how = 'r' - else - how = gsub(how,'[^rb]','') - if how == '' then - how = 'r' - end - end - local f = io_open(name,how) - if f then - fio_recordfilename(name,'r') - end - return f -end - -local function luatex_io_popen(name,...) - local okay, found = fio_checkpermission(name) - if okay and found then - return io_popen(found,...) - end -end - --- local function luatex_io_lines(name,how) --- if name then --- local f = io_open(name,how or 'r') --- if f then --- return function() --- return fio_readline(f) --- end --- end --- else --- return io_lines() --- end --- end - --- For some reason the gc doesn't kick in so we need to close explitly --- so that the handle is flushed. - -local error, type = error, type - -local function luatex_io_lines(name,how) - if type(name) == "string" then - local f = io_open(name,how or 'r') - if f then - return function() - local l = fio_readline(f) - if not l then - f:close() - end - return l - end - else - -- for those who like it this way: - error("patched 'io.lines' can't open '" .. name .. "'") - end - else - return io_lines() - end -end - -local function luatex_io_readline(f) - return function() - return fio_readline(f) - end -end - -io.lines = luatex_io_lines -mt.lines = luatex_io_readline - --- We assume management to be provided by the replacement of kpse. This is the --- case in ConTeXt. - -if kpseused == 1 then - - io.open = luatex_io_open - io.popen = luatex_io_popen - -end - -if saferoption == 1 then - - local function installdummy(str,f) - local reported = false - return function(...) - if not reported then - write_nl(format("safer option set, function %q is %s", - str,f and "limited" or "disabled")) - reported = true - end - if f then - return f(...) - end - end - end - - local function installlimit(str,f) - local reported = false - end - - os.execute = installdummy("os.execute") - os.spawn = installdummy("os.spawn") - os.exec = installdummy("os.exec") - os.setenv = installdummy("os.setenv") - os.tempdir = installdummy("os.tempdir") - - io.popen = installdummy("io.popen") - io.open = installdummy("io.open",luatex_io_open_readonly) - - os.rename = installdummy("os.rename") - os.remove = installdummy("os.remove") - - io.tmpfile = installdummy("io.tmpfile") - io.output = installdummy("io.output") - - lfs.chdir = installdummy("lfs.chdir") - lfs.lock = installdummy("lfs.lock") - lfs.touch = installdummy("lfs.touch") - lfs.rmdir = installdummy("lfs.rmdir") - lfs.mkdir = installdummy("lfs.mkdir") - -end - -if saferoption == 1 or shellescape ~= 1 then - - ffi = require('ffi') - for k, v in next, ffi do - if k ~= 'gc' then - ffi[k] = nil - end - end - ffi = nil - -end - --- os.[execute|os.spawn|os.exec] already are shellescape aware) - - -if md5 then - - local sum = md5.sum - local gsub = string.gsub - local format = string.format - local byte = string.byte - - if not md5.sumhexa then - function md5.sumhexa(k) - return (gsub(sum(k), ".", function(c) - return format("%02x",byte(c)) - end)) - end - end - - if not md5.sumHEXA then - function md5.sumHEXA(k) - return (gsub(sum(k), ".", function(c) - return format("%02X",byte(c)) - end)) - end - end - -end - --- compatibility: this might go away - -if not unpack then - unpack = table.unpack -end - -if not package.loaders then - package.loaders = package.searchers -end - -if not loadstring then - loadstring = load -end - --- compatibility: this might stay - -if bit32 then - - -- lua 5.2: we're okay - -elseif utf8 then - - -- lua 5.3: bitwise.lua, v 1.24 2014/12/26 17:20:53 roberto - - bit32 = load ( [[ -local select = select -- instead of: arg = { ... } - -bit32 = { - bnot = function (a) - return ~a & 0xFFFFFFFF - end, - band = function (x, y, z, ...) - if not z then - return ((x or -1) & (y or -1)) & 0xFFFFFFFF - else - local res = x & y & z - for i=1,select("#",...) do - res = res & select(i,...) - end - return res & 0xFFFFFFFF - end - end, - bor = function (x, y, z, ...) - if not z then - return ((x or 0) | (y or 0)) & 0xFFFFFFFF - else - local res = x | y | z - for i=1,select("#",...) do - res = res | select(i,...) - end - return res & 0xFFFFFFFF - end - end, - bxor = function (x, y, z, ...) - if not z then - return ((x or 0) ~ (y or 0)) & 0xFFFFFFFF - else - local res = x ~ y ~ z - for i=1,select("#",...) do - res = res ~ select(i,...) - end - return res & 0xFFFFFFFF - end - end, - btest = function (x, y, z, ...) - if not z then - return (((x or -1) & (y or -1)) & 0xFFFFFFFF) ~= 0 - else - local res = x & y & z - for i=1,select("#",...) do - res = res & select(i,...) - end - return (res & 0xFFFFFFFF) ~= 0 - end - end, - lshift = function (a, b) - return ((a & 0xFFFFFFFF) << b) & 0xFFFFFFFF - end, - rshift = function (a, b) - return ((a & 0xFFFFFFFF) >> b) & 0xFFFFFFFF - end, - arshift = function (a, b) - a = a & 0xFFFFFFFF - if b <= 0 or (a & 0x80000000) == 0 then - return (a >> b) & 0xFFFFFFFF - else - return ((a >> b) | ~(0xFFFFFFFF >> b)) & 0xFFFFFFFF - end - end, - lrotate = function (a ,b) - b = b & 31 - a = a & 0xFFFFFFFF - a = (a << b) | (a >> (32 - b)) - return a & 0xFFFFFFFF - end, - rrotate = function (a, b) - b = -b & 31 - a = a & 0xFFFFFFFF - a = (a << b) | (a >> (32 - b)) - return a & 0xFFFFFFFF - end, - extract = function (a, f, w) - return (a >> f) & ~(-1 << (w or 1)) - end, - replace = function (a, v, f, w) - local mask = ~(-1 << (w or 1)) - return ((a & ~(mask << f)) | ((v & mask) << f)) & 0xFFFFFFFF - end, -} - ]] ) - -elseif bit then - - -- luajit (for now) - - bit32 = load ( [[ -local band, bnot, rshift, lshift = bit.band, bit.bnot, bit.rshift, bit.lshift - -bit32 = { - arshift = bit.arshift, - band = band, - bnot = bnot, - bor = bit.bor, - bxor = bit.bxor, - btest = function(...) - return band(...) ~= 0 - end, - extract = function(a,f,w) - return band(rshift(a,f),2^(w or 1)-1) - end, - lrotate = bit.rol, - lshift = lshift, - replace = function(a,v,f,w) - local mask = 2^(w or 1)-1 - return band(a,bnot(lshift(mask,f)))+lshift(band(v,mask),f) - end, - rrotate = bit.ror, - rshift = rshift, -} - ]] ) - -else - - -- hope for the best or fail - - bit32 = require("bit32") - -end - --- this is needed for getting require("socket") right - -do - - local loaded = package.loaded - - if not loaded.socket then loaded.socket = loaded["socket.core"] end - if not loaded.mime then loaded.mime = loaded["mime.core"] end - -end - -do - - local lfsattributes = lfs.attributes - local symlinkattributes = lfs.symlinkattributes - - -- these can now be done using lfs (was dead slow before) - - if not lfs.isfile then - function lfs.isfile(name) - local m = lfsattributes(name,"mode") - return m == "file" or m == "link" - end - end - - if not lfs.isdir then - function lfs.isdir(name) - local m = lfsattributes(name,"mode") - return m == "directory" - end - end - - -- shortnames have also be sort of dropped from kpse - - if not lfs.shortname then - function lfs.shortname(name) - return name - end - end - - -- now there is a target field, so ... - - if not lfs.readlink then - function lfs.readlink(name) - return symlinkattributes(name,"target") or nil - end - end - -end - --- so far - -if utilities and utilities.merger and utilities.merger.compact then - - local byte, format, gmatch = string.byte, string.format, string.gmatch - local concat = table.concat - - local data = gsub(io.loaddata('luatex-core.lua'),'if%s+utilities.*','') - - local t = { } - local r = { } - local n = 0 - local d = gsub(data,'\r\n','\n') -- be nice for unix - local s = utilities.merger.compact(d) -- no comments and less spaces - - t[#t+1] = '/* generated from and by luatex-core.lua */' - t[#t+1] = '' - -- t[#t+1] = format('/*\n\n%s\n\n*/',d) - -- t[#t+1] = '' - t[#t+1] = '#include "lua.h"' - t[#t+1] = '#include "lauxlib.h"' - t[#t+1] = '' - t[#t+1] = 'int load_luatex_core_lua (lua_State * L);' - t[#t+1] = '' - t[#t+1] = 'int load_luatex_core_lua (lua_State * L)' - t[#t+1] = '{' - t[#t+1] = ' static unsigned char luatex_core_lua[] = {' - for c in gmatch(d,'.') do - if n == 16 then - n = 1 - t[#t+1] = ' ' .. concat(r,', ') .. ',' - else - n = n + 1 - end - r[n] = format('0x%02x',byte(c)) - end - n = n + 1 - r[n] = '0x00' - t[#t+1] = ' ' .. concat(r,', ',1,n) - t[#t+1] = ' };' - -- t[#t+1] = format('unsigned int luatex_core_lua_len = 0x%x;',#d+1) - t[#t+1] = ' return luaL_dostring(L, (const char*) luatex_core_lua);' - t[#t+1] = '}' - - io.savedata('luatex-core.c',concat(t,'\n')) - io.savedata('luatex-core-stripped.lua',s) - -end +-- luatex-core security and io overloads ........... + +-- if not modules then modules = { } end modules ['luatex-core'] = { +-- version = 1.080, +-- comment = 'companion to luatex', +-- author = 'Hans Hagen & Luigi Scarso', +-- copyright = 'LuaTeX Development Team', +-- } + +LUATEXCOREVERSION = 1.080 -- we reflect the luatex version where changes happened + +-- This file overloads some Lua functions. The readline variants provide the same +-- functionality as LuaTeX <= 1.04 and doing it this way permits us to keep the +-- original io libraries clean. Performance is probably even a bit better now. + +-- We test for functions already being defined so that we don't overload ones that +-- are provided in the startup script. + +local type, next, getmetatable, require = type, next, getmetatable, require +local find, gsub, format = string.find, string.gsub, string.format + +local io_open = io.open +local io_popen = io.popen +local io_lines = io.lines + +local fio_readline = fio.readline +local fio_checkpermission = fio.checkpermission +local fio_recordfilename = fio.recordfilename + +local mt = getmetatable(io.stderr) +local mt_lines = mt.lines +local saferoption = status.safer_option +local shellescape = status.shell_escape -- 0 (disabled) 1 (anything) 2 (restricted) +local kpseused = status.kpse_used -- 0 1 + +local write_nl = texio.write_nl + +io.saved_lines = io_lines -- always readonly +mt.saved_lines = mt_lines -- always readonly + +local function luatex_io_open(name,how) + if not how then + how = 'r' + end + local f = io_open(name,how) + if f then + if type(how) == 'string' and find(how,'w') then + fio_recordfilename(name,'w') + else + fio_recordfilename(name,'r') + end + end + return f +end + +local function luatex_io_open_readonly(name,how) + if not how then + how = 'r' + else + how = gsub(how,'[^rb]','') + if how == '' then + how = 'r' + end + end + local f = io_open(name,how) + if f then + fio_recordfilename(name,'r') + end + return f +end + +local function luatex_io_popen(name,...) + local okay, found = fio_checkpermission(name) + if okay and found then + return io_popen(found,...) + end +end + +-- local function luatex_io_lines(name,how) +-- if name then +-- local f = io_open(name,how or 'r') +-- if f then +-- return function() +-- return fio_readline(f) +-- end +-- end +-- else +-- return io_lines() +-- end +-- end + +-- For some reason the gc doesn't kick in so we need to close explitly +-- so that the handle is flushed. + +local error, type = error, type + +local function luatex_io_lines(name,how) + if type(name) == "string" then + local f = io_open(name,how or 'r') + if f then + return function() + local l = fio_readline(f) + if not l then + f:close() + end + return l + end + else + -- for those who like it this way: + error("patched 'io.lines' can't open '" .. name .. "'") + end + else + return io_lines() + end +end + +local function luatex_io_readline(f) + return function() + return fio_readline(f) + end +end + +io.lines = luatex_io_lines +mt.lines = luatex_io_readline + +-- We assume management to be provided by the replacement of kpse. This is the +-- case in ConTeXt. + +if kpseused == 1 then + + io.open = luatex_io_open + io.popen = luatex_io_popen + +end + +if saferoption == 1 then + + local function installdummy(str,f) + local reported = false + return function(...) + if not reported then + write_nl(format("safer option set, function %q is %s", + str,f and "limited" or "disabled")) + reported = true + end + if f then + return f(...) + end + end + end + + local function installlimit(str,f) + local reported = false + end + + debug = nil + os.execute = installdummy("os.execute") + os.spawn = installdummy("os.spawn") + os.exec = installdummy("os.exec") + os.setenv = installdummy("os.setenv") + os.tempdir = installdummy("os.tempdir") + + io.popen = installdummy("io.popen") + io.open = installdummy("io.open",luatex_io_open_readonly) + + os.rename = installdummy("os.rename") + os.remove = installdummy("os.remove") + + io.tmpfile = installdummy("io.tmpfile") + io.output = installdummy("io.output") + + lfs.chdir = installdummy("lfs.chdir") + lfs.lock = installdummy("lfs.lock") + lfs.touch = installdummy("lfs.touch") + lfs.rmdir = installdummy("lfs.rmdir") + lfs.mkdir = installdummy("lfs.mkdir") + +end + +if saferoption == 1 or shellescape ~= 1 then + + ffi = require('ffi') + for k, v in next, ffi do + if k ~= 'gc' then + ffi[k] = nil + end + end + ffi = nil + +end + +-- os.[execute|os.spawn|os.exec] already are shellescape aware) + + +if md5 then + + local sum = md5.sum + local gsub = string.gsub + local format = string.format + local byte = string.byte + + if not md5.sumhexa then + function md5.sumhexa(k) + return (gsub(sum(k), ".", function(c) + return format("%02x",byte(c)) + end)) + end + end + + if not md5.sumHEXA then + function md5.sumHEXA(k) + return (gsub(sum(k), ".", function(c) + return format("%02X",byte(c)) + end)) + end + end + +end + +-- compatibility: this might go away + +if not unpack then + unpack = table.unpack +end + +if not package.loaders then + package.loaders = package.searchers +end + +if not loadstring then + loadstring = load +end + +-- compatibility: this might stay + +if bit32 then + + -- lua 5.2: we're okay + +elseif utf8 then + + -- lua 5.3: bitwise.lua, v 1.24 2014/12/26 17:20:53 roberto + + bit32 = load ( [[ +local select = select -- instead of: arg = { ... } + +bit32 = { + bnot = function (a) + return ~a & 0xFFFFFFFF + end, + band = function (x, y, z, ...) + if not z then + return ((x or -1) & (y or -1)) & 0xFFFFFFFF + else + local res = x & y & z + for i=1,select("#",...) do + res = res & select(i,...) + end + return res & 0xFFFFFFFF + end + end, + bor = function (x, y, z, ...) + if not z then + return ((x or 0) | (y or 0)) & 0xFFFFFFFF + else + local res = x | y | z + for i=1,select("#",...) do + res = res | select(i,...) + end + return res & 0xFFFFFFFF + end + end, + bxor = function (x, y, z, ...) + if not z then + return ((x or 0) ~ (y or 0)) & 0xFFFFFFFF + else + local res = x ~ y ~ z + for i=1,select("#",...) do + res = res ~ select(i,...) + end + return res & 0xFFFFFFFF + end + end, + btest = function (x, y, z, ...) + if not z then + return (((x or -1) & (y or -1)) & 0xFFFFFFFF) ~= 0 + else + local res = x & y & z + for i=1,select("#",...) do + res = res & select(i,...) + end + return (res & 0xFFFFFFFF) ~= 0 + end + end, + lshift = function (a, b) + return ((a & 0xFFFFFFFF) << b) & 0xFFFFFFFF + end, + rshift = function (a, b) + return ((a & 0xFFFFFFFF) >> b) & 0xFFFFFFFF + end, + arshift = function (a, b) + a = a & 0xFFFFFFFF + if b <= 0 or (a & 0x80000000) == 0 then + return (a >> b) & 0xFFFFFFFF + else + return ((a >> b) | ~(0xFFFFFFFF >> b)) & 0xFFFFFFFF + end + end, + lrotate = function (a ,b) + b = b & 31 + a = a & 0xFFFFFFFF + a = (a << b) | (a >> (32 - b)) + return a & 0xFFFFFFFF + end, + rrotate = function (a, b) + b = -b & 31 + a = a & 0xFFFFFFFF + a = (a << b) | (a >> (32 - b)) + return a & 0xFFFFFFFF + end, + extract = function (a, f, w) + return (a >> f) & ~(-1 << (w or 1)) + end, + replace = function (a, v, f, w) + local mask = ~(-1 << (w or 1)) + return ((a & ~(mask << f)) | ((v & mask) << f)) & 0xFFFFFFFF + end, +} + ]] ) + +elseif bit then + + -- luajit (for now) + + bit32 = load ( [[ +local band, bnot, rshift, lshift = bit.band, bit.bnot, bit.rshift, bit.lshift + +bit32 = { + arshift = bit.arshift, + band = band, + bnot = bnot, + bor = bit.bor, + bxor = bit.bxor, + btest = function(...) + return band(...) ~= 0 + end, + extract = function(a,f,w) + return band(rshift(a,f),2^(w or 1)-1) + end, + lrotate = bit.rol, + lshift = lshift, + replace = function(a,v,f,w) + local mask = 2^(w or 1)-1 + return band(a,bnot(lshift(mask,f)))+lshift(band(v,mask),f) + end, + rrotate = bit.ror, + rshift = rshift, +} + ]] ) + +else + + -- hope for the best or fail + + bit32 = require("bit32") + +end + +-- this is needed for getting require("socket") right + +do + + local loaded = package.loaded + + if not loaded.socket then loaded.socket = loaded["socket.core"] end + if not loaded.mime then loaded.mime = loaded["mime.core"] end + +end + +do + + local lfsattributes = lfs.attributes + local symlinkattributes = lfs.symlinkattributes + + -- these can now be done using lfs (was dead slow before) + + if not lfs.isfile then + function lfs.isfile(name) + local m = lfsattributes(name,"mode") + return m == "file" or m == "link" + end + end + + if not lfs.isdir then + function lfs.isdir(name) + local m = lfsattributes(name,"mode") + return m == "directory" + end + end + + -- shortnames have also be sort of dropped from kpse + + if not lfs.shortname then + function lfs.shortname(name) + return name + end + end + + -- now there is a target field, so ... + + if not lfs.readlink then + function lfs.readlink(name) + return symlinkattributes(name,"target") or nil + end + end + +end + +-- so far + +if utilities and utilities.merger and utilities.merger.compact then + + local byte, format, gmatch = string.byte, string.format, string.gmatch + local concat = table.concat + + local data = gsub(io.loaddata('luatex-core.lua'),'if%s+utilities.*','') + + local t = { } + local r = { } + local n = 0 + local d = gsub(data,'\r\n','\n') -- be nice for unix + local s = utilities.merger.compact(d) -- no comments and less spaces + + t[#t+1] = '/* generated from and by luatex-core.lua */' + t[#t+1] = '' + -- t[#t+1] = format('/*\n\n%s\n\n*/',d) + -- t[#t+1] = '' + t[#t+1] = '#include "lua.h"' + t[#t+1] = '#include "lauxlib.h"' + t[#t+1] = '' + t[#t+1] = 'int load_luatex_core_lua (lua_State * L);' + t[#t+1] = '' + t[#t+1] = 'int load_luatex_core_lua (lua_State * L)' + t[#t+1] = '{' + t[#t+1] = ' static unsigned char luatex_core_lua[] = {' + for c in gmatch(d,'.') do + if n == 16 then + n = 1 + t[#t+1] = ' ' .. concat(r,', ') .. ',' + else + n = n + 1 + end + r[n] = format('0x%02x',byte(c)) + end + n = n + 1 + r[n] = '0x00' + t[#t+1] = ' ' .. concat(r,', ',1,n) + t[#t+1] = ' };' + -- t[#t+1] = format('unsigned int luatex_core_lua_len = 0x%x;',#d+1) + t[#t+1] = ' return luaL_dostring(L, (const char*) luatex_core_lua);' + t[#t+1] = '}' + + io.savedata('luatex-core.c',concat(t,'\n')) + io.savedata('luatex-core-stripped.lua',s) + +end diff --git a/source/texk/web2c/luatexdir/luapplib/html/_sources/ppcode.rst.txt b/source/texk/web2c/luatexdir/luapplib/html/_sources/ppcode.rst.txt index 0803364c5..06f5659c6 100644 --- a/source/texk/web2c/luatexdir/luapplib/html/_sources/ppcode.rst.txt +++ b/source/texk/web2c/luatexdir/luapplib/html/_sources/ppcode.rst.txt @@ -50,6 +50,14 @@ v1.02 ----- Fixed page finder (thanks Luigi) +v1.03 +----- +Fixed TIFF predictor (thanks folks) + +v1.04 +----- +Fixed TIFF predictor for ARM + TODO ==== - external streams (egzotic) diff --git a/source/texk/web2c/luatexdir/luapplib/html/ppcode.html b/source/texk/web2c/luatexdir/luapplib/html/ppcode.html index a35369a6f..e65000d0f 100644 --- a/source/texk/web2c/luatexdir/luapplib/html/ppcode.html +++ b/source/texk/web2c/luatexdir/luapplib/html/ppcode.html @@ -52,6 +52,8 @@ <li><a class="reference internal" href="#v1-00">v1.00</a></li> <li><a class="reference internal" href="#v1-01">v1.01</a></li> <li><a class="reference internal" href="#v1-02">v1.02</a></li> +<li><a class="reference internal" href="#v1-03">v1.03</a></li> +<li><a class="reference internal" href="#v1-04">v1.04</a></li> </ul> </li> <li><a class="reference internal" href="#todo">TODO</a></li> @@ -439,7 +441,7 @@ int main (int argc, const char **argv) <span class="c1">#include "ppconf.h"</span> -<span class="c1">#define pplib_version "v1.01"</span> +<span class="c1">#define pplib_version "v1.03"</span> <span class="c1">#define pplib_author "p.jackowski@gust.org.pl"</span> <span class="o">/*</span> <span class="n">types</span> <span class="o">*/</span> @@ -465,7 +467,7 @@ int main (int argc, const char **argv) <span class="n">typedef</span> <span class="n">struct</span> <span class="n">ppref</span> <span class="n">ppref</span><span class="p">;</span> -<span class="c1">#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ </span> +<span class="c1">#if ARM_COMPLIANT</span> <span class="n">typedef</span> <span class="n">struct</span> <span class="p">{</span> <span class="n">ppobj</span> <span class="o">*</span><span class="n">data</span><span class="p">;</span> <span class="n">size_t</span> <span class="n">size</span><span class="p">;</span> @@ -479,7 +481,7 @@ int main (int argc, const char **argv) <span class="c1">#endif</span> -<span class="c1">#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ </span> +<span class="c1">#if ARM_COMPLIANT</span> <span class="n">typedef</span> <span class="n">struct</span> <span class="p">{</span> <span class="n">ppobj</span> <span class="o">*</span><span class="n">data</span><span class="p">;</span> <span class="n">ppname</span> <span class="o">*</span><span class="n">keys</span><span class="p">;</span> @@ -621,7 +623,7 @@ int main (int argc, const char **argv) <span class="c1">#define ppname_is(name, s) (memcmp(name, s, sizeof("" s) - 1) == 0)</span> <span class="c1">#define ppname_eq(name, n) (memcmp(name, s, ppname_size(name)) == 0)</span> -<span class="c1">#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ </span> +<span class="c1">#if ARM_COMPLIANT</span> <span class="c1">#define _ppname_ghost(name) (((const _ppname *)((void *)name)) - 1)</span> <span class="c1">#else</span> <span class="c1">#define _ppname_ghost(name) (((const _ppname *)(name)) - 1)</span> @@ -639,7 +641,7 @@ int main (int argc, const char **argv) <span class="o">/*</span> <span class="n">string</span> <span class="o">*/</span> -<span class="c1">#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ </span> +<span class="c1">#if ARM_COMPLIANT</span> <span class="c1">#define _ppstring_ghost(string) (((const _ppstring *)((void *)string)) - 1)</span> <span class="c1">#else</span> <span class="c1">#define _ppstring_ghost(string) (((const _ppstring *)(string)) - 1)</span> @@ -879,6 +881,14 @@ Revised streams handling, ppstream API extended</p> <h2>v1.02<a class="headerlink" href="#v1-02" title="Permalink to this headline">¶</a></h2> <p>Fixed page finder (thanks Luigi)</p> </div> +<div class="section" id="v1-03"> +<h2>v1.03<a class="headerlink" href="#v1-03" title="Permalink to this headline">¶</a></h2> +<p>Fixed TIFF predictor (thanks folks)</p> +</div> +<div class="section" id="v1-04"> +<h2>v1.04<a class="headerlink" href="#v1-04" title="Permalink to this headline">¶</a></h2> +<p>Fixed TIFF predictor for ARM</p> +</div> </div> <div class="section" id="todo"> <h1>TODO<a class="headerlink" href="#todo" title="Permalink to this headline">¶</a></h1> diff --git a/source/texk/web2c/luatexdir/luapplib/html/pplib.html b/source/texk/web2c/luatexdir/luapplib/html/pplib.html index 82c411743..add2b726a 100644 --- a/source/texk/web2c/luatexdir/luapplib/html/pplib.html +++ b/source/texk/web2c/luatexdir/luapplib/html/pplib.html @@ -105,6 +105,8 @@ <li class="toctree-l2"><a class="reference internal" href="ppcode.html#v1-00">v1.00</a></li> <li class="toctree-l2"><a class="reference internal" href="ppcode.html#v1-01">v1.01</a></li> <li class="toctree-l2"><a class="reference internal" href="ppcode.html#v1-02">v1.02</a></li> +<li class="toctree-l2"><a class="reference internal" href="ppcode.html#v1-03">v1.03</a></li> +<li class="toctree-l2"><a class="reference internal" href="ppcode.html#v1-04">v1.04</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="ppcode.html#todo">TODO</a></li> diff --git a/source/texk/web2c/luatexdir/luapplib/html/searchindex.js b/source/texk/web2c/luatexdir/luapplib/html/searchindex.js index 19b0d65ba..df9ec39cd 100644 --- a/source/texk/web2c/luatexdir/luapplib/html/searchindex.js +++ b/source/texk/web2c/luatexdir/luapplib/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["ppapi","ppcode","pplib"],envversion:52,filenames:["ppapi.rst","ppcode.rst","pplib.rst"],objects:{},objnames:{},objtypes:{},terms:{"1mb":0,"2fkb":1,"2fmb":1,"64kb":0,"boolean":0,"break":[0,1],"byte":0,"case":[0,1],"char":[0,1],"const":[0,1],"default":[0,1],"enum":[0,1],"final":0,"function":0,"int":[0,1],"long":[0,1],"new":0,"null":[0,1],"return":[0,1],"short":0,"static":1,"switch":[0,1],"void":[0,1],"while":0,And:0,But:0,For:0,NOT:1,One:0,Such:0,The:0,Then:0,There:0,Use:0,__aarch64__:1,__arm:1,__arm__:1,__arm_arch:1,_ppname:1,_ppname_ghost:1,_ppstring:1,_ppstring_ghost:1,about:0,abov:0,absolutelli:0,accept:0,access:[0,1],accessor:0,accord:0,acrobat:[0,1],actual:0,addit:0,after:[0,1],again:0,ahead:0,alia:0,alias:[],alien:[0,1],aliv:0,all:0,alloc:0,allow:0,alreadi:0,also:0,alter:0,alwai:0,among:0,ani:[0,1],annoi:0,anoth:0,anyhow:0,anymor:0,anyth:0,api:[1,2],app:0,appear:0,appli:0,applic:0,approach:0,approx:0,arbitrari:0,aren:0,argc:1,argument:0,argv0:1,argv:1,arm:1,arrai:[1,2],artbox:1,ascii85decod:0,ascii:0,asciihexdecod:0,ask:0,assert:1,associ:0,assum:0,auxilari:0,avail:0,avoid:0,awar:0,base16:0,base85:0,basic:0,bbox:0,becaus:0,been:0,befor:[0,1],beings:0,belong:0,below:0,besid:0,better:0,between:0,beyond:0,binari:0,bit:0,bleedbox:1,bodi:0,boject:0,bom:0,both:0,bother:0,bound:0,box:[1,2],box_info:1,buffer:[0,1],bug:0,build:0,bunch:0,call:0,callback:0,can:[0,1],captur:[],care:0,cast:0,catalog:0,ccitt:0,ccittfaxdecod:0,chang:2,charact:[0,1],check:0,chunk:0,cipher:0,clear:0,close:0,code:0,coercion:0,come:0,common:0,compar:0,comparison:0,complet:0,completelli:0,compound:0,compress:[0,1],conceptu:0,condit:0,confus:0,consid:0,constant:0,construct:0,contain:0,content:[1,2],context:[0,1],continu:1,conveni:0,convert:0,copi:[0,1],correspond:0,cost:0,could:0,count:[0,1],counterpart:0,covert:0,creat:[0,1],creator:1,cropbox:1,cross:0,crypt:[0,1],crypt_info:1,cryptkei:1,cstr:0,cstring:0,current:0,custom:0,data1:0,data2:0,data3:0,data:[0,1],dct:0,dctdecod:0,deal:0,debug:[],declar:0,decod:[0,1],decodeparm:[0,1],decompress:[0,1],decrypt:0,dedic:0,dedict:0,defin:[0,1],delim:0,demand:0,depend:0,depth:[],derefer:0,describ:0,descript:0,design:0,destroi:0,detect:0,determin:0,dict:[1,2],differ:0,digit:[0,1],direct:0,directli:0,distinguish:0,distingush:0,doc:1,document:0,doe:0,doesn:0,don:0,done:[0,1],doubl:[0,1],due:0,dummi:[0,1],each:0,eat:0,effect:[0,1],ego:0,egzot:1,element:0,elementari:0,els:1,empti:[0,1],encod:0,encount:[],encrypt:[1,2],end:0,endif:1,enough:0,ensur:0,entir:0,entri:0,equiv:0,error:2,escap:0,even:0,everi:0,exactli:0,exampl:[0,2],except:0,execut:0,expect:0,explain:0,explicit:0,expos:0,extend:[0,1],extens:0,extern:1,extra:0,fail:[0,1],failur:0,far:0,fast:0,fault:0,fclose:1,featur:0,fetch:0,field:[0,1],file1:1,file2:1,file:[0,1],filenam:[0,1],filepath:1,files:1,filespec:1,fill:[0,1],filter:[1,2],filternam:[0,1],filtertyp:[0,1],find:0,finder:1,first:[0,1],fix:1,flag:[0,1],flate:0,flatedecod:0,fly:0,follow:0,fopen:1,forbidden:0,form:[0,1],found:0,fprintf:[0,1],free:0,freed:0,from:[0,1],futur:0,fwrite:1,genuin:0,get:0,get_file_nam:1,getter:0,give:0,given:0,gobbl:1,goe:0,going:0,grant:0,grow:0,guess:0,gust:1,han:1,handl:[1,2],handler:0,happen:[0,1],has:0,hash:0,have:0,haven:0,header:0,heap:0,helper:0,here:0,hex:0,hide:0,host:0,how:0,howev:0,hundr:0,ident:0,identifi:0,iff:0,ifndef:1,imag:[0,1],imagedict:0,implement:0,includ:[0,1],incomplet:0,increment:[0,1],independ:0,index:[0,1],indic:0,indirect:0,info:[0,1],inform:0,initi:0,inlin:0,input:1,instead:0,insuffici:0,int64_t:[0,1],integ:[0,1],integr:1,intend:0,intent:0,interfac:0,intern:0,introduc:0,invalid:[0,1],item:[0,1],iter:0,its:0,itself:0,jackowski:1,jbig2:0,jbig2decod:0,jbig:0,jpeg:0,jpegsiz:0,jpegstream:0,jpx:0,jpxdecod:0,jump:0,just:0,keep:0,kei:[0,1],kep:0,kept:0,keyval:0,keyword:1,kind:0,know:0,known:0,larg:0,last:[0,1],later:0,lead:0,length:[0,1],less:0,letter:0,librari:0,like:0,linear:0,list:0,liter:0,load:[0,1],loader:0,log:0,log_callback:1,logger:[0,1],longer:0,look:0,lookup:0,loop:0,luatex:1,luigi:1,lzw:0,lzwdecod:0,machin:[0,1],macro:0,magic:0,mai:0,main:[0,1],major:0,make:0,malloc:0,map:0,mark:0,match:0,matrix:[0,1],matter:0,mean:0,mechan:[],mediabox:[0,1],member:0,memcmp:[0,1],memori:0,memus:1,memwast:1,mention:0,messag:[0,1],might:0,mind:0,minor:[0,1],moment:0,more:0,most:0,must:0,name:[1,2],necessari:0,need:[0,1],newest:0,next:0,node:0,non:0,none:1,nonempti:1,nooop:[0,1],normal:0,note:[0,1],noth:0,now:[0,1],number:[0,1],numer:0,obj:[0,1],object:[1,2],obligatori:0,obscur:0,offset:[0,1],often:0,older:0,omit:0,onc:0,one:0,onli:[0,1],open:[0,1],oper:[0,1],operand:0,operato:0,oprat:0,option:0,org:1,origin:0,other:[0,1],otherwis:0,out:[0,1],outdir:1,outnam:1,output:0,over:0,own:0,owner:0,ownerpass:[0,1],ownerpasslength:[0,1],page:[1,2],pagecount:1,pagedict:[0,1],pageno:[0,1],pageref:1,pair:0,parallel:0,param:[0,1],paramet:0,parent:0,pars:[0,1],parser:[0,1],part:0,password:[0,1],path:1,pcontext:0,pdf:[1,2],perfectli:0,perform:0,permiss:[0,1],piec:0,pkei:[0,1],plain:[0,1],plu:1,pname:[0,1],point:0,pointer:0,pool:0,portabl:1,possibl:0,postscript:[0,1],pp_api_h:1,ppapi:[0,2],pparrai:[0,1],pparray_align:1,pparray_at:[0,1],pparray_first:[0,1],pparray_get:[0,1],pparray_get_:0,pparray_get_arrai:[0,1],pparray_get_bool:[0,1],pparray_get_dict:[0,1],pparray_get_int:[0,1],pparray_get_nam:[0,1],pparray_get_num:[0,1],pparray_get_obj:[0,1],pparray_get_ref:[0,1],pparray_get_str:[0,1],pparray_get_stream:[0,1],pparray_get_uint:[0,1],pparray_next:[0,1],pparray_rget_:0,pparray_rget_arrai:1,pparray_rget_bool:1,pparray_rget_dict:1,pparray_rget_int:1,pparray_rget_nam:1,pparray_rget_num:1,pparray_rget_obj:1,pparray_rget_ref:1,pparray_rget_str:1,pparray_rget_stream:[0,1],pparray_rget_uint:1,pparray_s:[0,1],pparray_to_matrix:[0,1],pparray_to_rect:[0,1],ppbool:[0,1],ppconf:1,ppcontents_first:[0,1],ppcontents_first_op:[0,1],ppcontents_next:[0,1],ppcontents_next_op:[0,1],ppcontents_pars:[0,1],ppcontext:[0,1],ppcontext_don:[0,1],ppcontext_fre:[0,1],ppcontext_new:[0,1],ppcrypt_don:[0,1],ppcrypt_fail:[0,1],ppcrypt_non:[0,1],ppcrypt_pass:[0,1],ppcrypt_statu:[0,1],ppdef:1,ppdic_rget_dict:0,ppdict:[0,1],ppdict_align:1,ppdict_at:[0,1],ppdict_first:[0,1],ppdict_get_:0,ppdict_get_arrai:[0,1],ppdict_get_bool:[0,1],ppdict_get_box:[0,1],ppdict_get_dict:[0,1],ppdict_get_int:[0,1],ppdict_get_matrix:[0,1],ppdict_get_nam:[0,1],ppdict_get_num:[0,1],ppdict_get_obj:[0,1],ppdict_get_rect:[0,1],ppdict_get_ref:[0,1],ppdict_get_str:[0,1],ppdict_get_stream:[0,1],ppdict_get_uint:[0,1],ppdict_kei:[0,1],ppdict_next:[0,1],ppdict_rget_:0,ppdict_rget_arrai:1,ppdict_rget_bool:1,ppdict_rget_dict:[0,1],ppdict_rget_int:1,ppdict_rget_nam:1,ppdict_rget_num:1,ppdict_rget_obj:1,ppdict_rget_ref:1,ppdict_rget_str:1,ppdict_rget_stream:[0,1],ppdict_rget_uint:1,ppdict_siz:[0,1],ppdoc:[0,1],ppdoc_allow_annot:[0,1],ppdoc_allow_assembl:[0,1],ppdoc_allow_copi:[0,1],ppdoc_allow_extract:[0,1],ppdoc_allow_modifi:[0,1],ppdoc_allow_print:[0,1],ppdoc_allow_print_hir:[0,1],ppdoc_catalog:[0,1],ppdoc_crypt_pass:[0,1],ppdoc_crypt_statu:[0,1],ppdoc_file_s:[0,1],ppdoc_first_pag:[0,1],ppdoc_fre:[0,1],ppdoc_info:[0,1],ppdoc_load:[0,1],ppdoc_mem:[0,1],ppdoc_memori:[0,1],ppdoc_next_pag:[0,1],ppdoc_object:[0,1],ppdoc_pag:[0,1],ppdoc_page_count:[0,1],ppdoc_permiss:[0,1],ppdoc_trail:[0,1],ppdoc_version_numb:[0,1],ppdoc_version_str:[0,1],ppdoc_xref:[0,1],ppint:[0,1],pplib:1,pplib_author:1,pplib_vers:1,pplog_callback:[0,1],pplog_prefix:[0,1],pplogger_callback:[0,1],ppmatrix:[0,1],ppmess:[],ppname:[0,1],ppname_decod:[0,1],ppname_encod:[0,1],ppname_eq:[0,1],ppname_exec:[0,1],ppname_i:[0,1],ppname_s:[0,1],ppnone:[0,1],ppnull:[0,1],ppnum:[0,1],ppobj:[0,1],ppobj_get_:0,ppobj_get_arrai:[0,1],ppobj_get_bool:[0,1],ppobj_get_bool_valu:1,ppobj_get_dict:[0,1],ppobj_get_int:[0,1],ppobj_get_int_valu:1,ppobj_get_nam:[0,1],ppobj_get_nul:[0,1],ppobj_get_num:[0,1],ppobj_get_num_valu:1,ppobj_get_ref:[0,1],ppobj_get_str:[0,1],ppobj_get_stream:[0,1],ppobj_get_uint:[0,1],ppobj_kind:1,ppobj_rget_:0,ppobj_rget_arrai:1,ppobj_rget_bool:1,ppobj_rget_dict:[0,1],ppobj_rget_int:1,ppobj_rget_nam:1,ppobj_rget_nul:1,ppobj_rget_num:1,ppobj_rget_obj:[0,1],ppobj_rget_ref:1,ppobj_rget_str:1,ppobj_rget_stream:1,ppobj_rget_uint:1,ppobjtp:[0,1],pprect:[0,1],ppref:[0,1],ppref_obj:[0,1],ppsizef:1,ppstream:[0,1],ppstream_al:[0,1],ppstream_base16:[0,1],ppstream_base85:[0,1],ppstream_ccitt:[0,1],ppstream_compress:[0,1],ppstream_crypt:[0,1],ppstream_dct:[0,1],ppstream_dict:[0,1],ppstream_don:[0,1],ppstream_encrypt:[0,1],ppstream_encrypted_a:1,ppstream_encrypted_own:[0,1],ppstream_encrypted_rc4:1,ppstream_filt:[0,1],ppstream_filter_info:[0,1],ppstream_filter_nam:[0,1],ppstream_filter_typ:[0,1],ppstream_first:[0,1],ppstream_flat:[0,1],ppstream_free_buff:[0,1],ppstream_imag:[0,1],ppstream_init_buff:[0,1],ppstream_jbig2:[0,1],ppstream_jpx:[0,1],ppstream_lzw:[0,1],ppstream_next:[0,1],ppstream_not_support:1,ppstream_runlength:[0,1],ppstreamtp:[0,1],ppstring:[0,1],ppstring_base16:[0,1],ppstring_base85:[0,1],ppstring_decod:[0,1],ppstring_encod:[0,1],ppstring_exec:1,ppstring_hex:[0,1],ppstring_plain:[0,1],ppstring_siz:[0,1],ppstring_typ:[0,1],ppstring_utf16b:[0,1],ppstring_utf16l:[0,1],ppstring_utf:[0,1],ppuint:[0,1],ppuintf:1,ppxref:[0,1],ppxref_catalog:1,ppxref_find:[0,1],ppxref_info:1,ppxref_pag:1,ppxref_prev:[0,1],ppxref_trail:1,ppxsec:1,practis:0,preceed:0,precis:0,prefer:0,prefix:[0,1],present:0,preserv:0,pretend:0,pretti:0,previou:0,print:[0,1],print_info:1,print_result_filt:1,print_stream_info:1,printabl:0,printf:[0,1],probabl:0,problem:[],proce:0,procee:0,process:0,produc:[0,1],prompt:0,proper:0,properti:[0,1],protect:[0,1],provid:0,psize:[0,1],put:0,queri:0,quit:0,rather:0,raw:0,read:0,readabl:0,reader:0,readi:0,real:0,realli:0,reason:0,reclaim:0,reconstruct:0,rect:[0,1],rectangl:0,redirect:0,ref:[1,2],refer:[0,1],referenc:0,refnum:1,refnumb:[0,1],relat:0,releas:[0,1],relev:0,remain:0,replac:0,repres:0,resolv:[0,1],resourc:0,restor:0,restrict:0,result:0,reus:0,revers:0,revis:1,rewrit:0,root:0,roughli:0,runlength:0,runlengthdecod:0,sai:0,same:0,saniti:0,scheme:0,search:0,second:0,sect:1,secur:[0,1],see:0,segment:0,sens:0,separ:0,set:0,sever:0,should:[0,1],shouldn:[0,1],show:0,sign:[0,1],simpl:0,simpli:0,sinc:0,singl:0,size:[0,1],size_t:[0,1],sizenum:1,sizeof:[0,1],skip:1,small:0,smarter:0,some:0,some_output:0,somehow:[],someth:0,somewher:0,soon:0,sorri:[0,1],sourc:[0,1],space:0,spec:0,special:0,specif:0,sprintf:1,stack:0,standalon:0,start:0,stat:[],state:0,statu:0,stddef:1,stderr:[0,1],stdint:1,stdio:1,stdout:0,still:0,stop:0,store:0,stream:[1,2],string:[1,2],strip:0,strlen:0,struct:[0,1],structur:0,style:0,suboptim:0,subsequ:0,succe:0,succeed:0,suffer:0,suit:0,sum:0,support:0,surround:0,syntax:0,tab:[0,1],tabl:0,take:0,target:0,tech:1,tell:0,templat:[0,1],termin:0,termini:0,text:0,than:0,thank:1,thei:0,them:0,thi:[0,1],think:0,those:0,though:0,through:0,todo:2,top:0,trailer:0,transform:[1,2],treat:0,tree:0,tri:0,trickeri:0,trimbox:1,triplet:0,two:0,type:[1,2],typedef:[0,1],typic:0,uint8_t:[0,1],uncompress:1,unconst:0,undocu:0,unescap:0,unicod:0,union:[0,1],unless:0,unnecesari:0,unnecessari:0,unread:0,unsign:[0,1],unsupport:0,until:0,updat:[0,1],usag:[0,1],use:0,used:0,useless:0,user:[],userpass:[0,1],userpasslength:[0,1],uses:0,using:0,usual:0,utf16:0,utf16b:0,utf16l:0,util:0,val:0,valid:0,valu:0,variabl:0,verbos:0,verifi:0,version:[0,1],via:0,wai:0,want:0,wast:[0,1],well:0,weren:[0,1],what:0,whatev:0,when:[0,1],whenev:0,which:0,without:0,wntri:0,won:0,word:[0,1],would:0,write:1,wrong:0,xref:[1,2],xsec:1,yes:0,you:0,your:0,your_callback:0,yourself:0,zero:0},titles:["<code class=\"docutils literal notranslate\"><span class=\"pre\">pplib</span></code>","Examples","pplib"],titleterms:{api:0,arrai:0,box:0,chang:1,content:0,dict:0,encrypt:0,error:0,exampl:1,filter:0,handl:0,name:0,object:0,page:0,pdf:0,ppapi:1,pplib:[0,2],ref:0,stream:0,string:0,todo:1,transform:0,type:0,xref:0}}) \ No newline at end of file +Search.setIndex({docnames:["ppapi","ppcode","pplib"],envversion:52,filenames:["ppapi.rst","ppcode.rst","pplib.rst"],objects:{},objnames:{},objtypes:{},terms:{"1mb":0,"2fkb":1,"2fmb":1,"64kb":0,"boolean":0,"break":[0,1],"byte":0,"case":[0,1],"char":[0,1],"const":[0,1],"default":[0,1],"enum":[0,1],"final":0,"function":0,"int":[0,1],"long":[0,1],"new":0,"null":[0,1],"return":[0,1],"short":0,"static":1,"switch":[0,1],"void":[0,1],"while":0,And:0,But:0,For:0,NOT:1,One:0,Such:0,The:0,Then:0,There:0,Use:0,__aarch64__:[],__arm:[],__arm__:[],__arm_arch:[],__sun:[],__svr4:[],_ppname:1,_ppname_ghost:1,_ppstring:1,_ppstring_ghost:1,about:0,abov:0,absolutelli:0,accept:0,access:[0,1],accessor:0,accord:0,acrobat:[0,1],actual:0,addit:0,after:[0,1],again:0,ahead:0,alia:0,alias:[],alien:[0,1],aliv:0,all:0,alloc:0,allow:0,alreadi:0,also:0,alter:0,alwai:0,among:0,ani:[0,1],annoi:0,anoth:0,anyhow:0,anymor:0,anyth:0,api:[1,2],app:0,appear:0,appli:0,applic:0,approach:0,approx:0,arbitrari:0,aren:0,argc:1,argument:0,argv0:1,argv:1,arm:1,arm_compli:1,arrai:[1,2],artbox:1,ascii85decod:0,ascii:0,asciihexdecod:0,ask:0,assert:1,associ:0,assum:0,auxilari:0,avail:0,avoid:0,awar:0,base16:0,base85:0,basic:0,bbox:0,becaus:0,been:0,befor:[0,1],beings:0,belong:0,below:0,besid:0,better:0,between:0,beyond:0,binari:0,bit:0,bleedbox:1,bodi:0,boject:0,bom:0,both:0,bother:0,bound:0,box:[1,2],box_info:1,buffer:[0,1],bug:0,build:0,bunch:0,call:0,callback:0,can:[0,1],captur:[],care:0,cast:0,catalog:0,ccitt:0,ccittfaxdecod:0,chang:2,charact:[0,1],check:0,chunk:0,cipher:0,clear:0,close:0,code:0,coercion:0,come:0,common:0,compar:0,comparison:0,complet:0,completelli:0,compound:0,compress:[0,1],conceptu:0,condit:0,confus:0,consid:0,constant:0,construct:0,contain:0,content:[1,2],context:[0,1],continu:1,conveni:0,convert:0,copi:[0,1],correspond:0,cost:0,could:0,count:[0,1],counterpart:0,covert:0,creat:[0,1],creator:1,cropbox:1,cross:0,crypt:[0,1],crypt_info:1,cryptkei:1,cstr:0,cstring:0,current:0,custom:0,data1:0,data2:0,data3:0,data:[0,1],dct:0,dctdecod:0,deal:0,debug:[],declar:0,decod:[0,1],decodeparm:[0,1],decompress:[0,1],decrypt:0,dedic:0,dedict:0,defin:[0,1],delim:0,demand:0,depend:0,depth:[],derefer:0,describ:0,descript:0,design:0,destroi:0,detect:0,determin:0,dict:[1,2],differ:0,digit:[0,1],direct:0,directli:0,distinguish:0,distingush:0,doc:1,document:0,doe:0,doesn:0,don:0,done:[0,1],doubl:[0,1],due:0,dummi:[0,1],each:0,eat:0,effect:[0,1],ego:0,egzot:1,element:0,elementari:0,els:1,empti:[0,1],encod:0,encount:[],encrypt:[1,2],end:0,endif:1,enough:0,ensur:0,entir:0,entri:0,equiv:0,error:2,escap:0,even:0,everi:0,exactli:0,exampl:[0,2],except:0,execut:0,expect:0,explain:0,explicit:0,expos:0,extend:[0,1],extens:0,extern:1,extra:0,fail:[0,1],failur:0,far:0,fast:0,fault:0,fclose:1,featur:0,fetch:0,field:[0,1],file1:1,file2:1,file:[0,1],filenam:[0,1],filepath:1,files:1,filespec:1,fill:[0,1],filter:[1,2],filternam:[0,1],filtertyp:[0,1],find:0,finder:1,first:[0,1],fix:1,flag:[0,1],flate:0,flatedecod:0,fly:0,folk:1,follow:0,fopen:1,forbidden:0,form:[0,1],found:0,fprintf:[0,1],free:0,freed:0,from:[0,1],futur:0,fwrite:1,genuin:0,get:0,get_file_nam:1,getter:0,give:0,given:0,gobbl:1,goe:0,going:0,grant:0,grow:0,guess:0,gust:1,han:1,handl:[1,2],handler:0,happen:[0,1],has:0,hash:0,have:0,haven:0,header:0,heap:0,helper:0,here:0,hex:0,hide:0,host:0,how:0,howev:0,hundr:0,ident:0,identifi:0,iff:0,ifndef:1,imag:[0,1],imagedict:0,implement:0,includ:[0,1],incomplet:0,increment:[0,1],independ:0,index:[0,1],indic:0,indirect:0,info:[0,1],inform:0,initi:0,inlin:0,input:1,instead:0,insuffici:0,int64_t:[0,1],integ:[0,1],integr:1,intend:0,intent:0,interfac:0,intern:0,introduc:0,invalid:[0,1],item:[0,1],iter:0,its:0,itself:0,jackowski:1,jbig2:0,jbig2decod:0,jbig:0,jpeg:0,jpegsiz:0,jpegstream:0,jpx:0,jpxdecod:0,jump:0,just:0,keep:0,kei:[0,1],kep:0,kept:0,keyval:0,keyword:1,kind:0,know:0,known:0,larg:0,last:[0,1],later:0,lead:0,length:[0,1],less:0,letter:0,librari:0,like:0,linear:0,list:0,liter:0,load:[0,1],loader:0,log:0,log_callback:1,logger:[0,1],longer:0,look:0,lookup:0,loop:0,luatex:1,luigi:1,lzw:0,lzwdecod:0,machin:[0,1],macro:0,magic:0,mai:0,main:[0,1],major:0,make:0,malloc:0,map:0,mark:0,match:0,matrix:[0,1],matter:0,mean:0,mechan:[],mediabox:[0,1],member:0,memcmp:[0,1],memori:0,memus:1,memwast:1,mention:0,messag:[0,1],might:0,mind:0,minor:[0,1],moment:0,more:0,most:0,must:0,name:[1,2],necessari:0,need:[0,1],newest:0,next:0,node:0,non:0,none:1,nonempti:1,nooop:[0,1],normal:0,note:[0,1],noth:0,now:[0,1],number:[0,1],numer:0,obj:[0,1],object:[1,2],obligatori:0,obscur:0,offset:[0,1],often:0,older:0,omit:0,onc:0,one:0,onli:[0,1],open:[0,1],oper:[0,1],operand:0,operato:0,oprat:0,option:0,org:1,origin:0,other:[0,1],otherwis:0,out:[0,1],outdir:1,outnam:1,output:0,over:0,own:0,owner:0,ownerpass:[0,1],ownerpasslength:[0,1],page:[1,2],pagecount:1,pagedict:[0,1],pageno:[0,1],pageref:1,pair:0,parallel:0,param:[0,1],paramet:0,parent:0,pars:[0,1],parser:[0,1],part:0,password:[0,1],path:1,pcontext:0,pdf:[1,2],perfectli:0,perform:0,permiss:[0,1],piec:0,pkei:[0,1],plain:[0,1],plu:1,pname:[0,1],point:0,pointer:0,pool:0,portabl:1,possibl:0,postscript:[0,1],pp_api_h:1,ppapi:[0,2],pparrai:[0,1],pparray_align:1,pparray_at:[0,1],pparray_first:[0,1],pparray_get:[0,1],pparray_get_:0,pparray_get_arrai:[0,1],pparray_get_bool:[0,1],pparray_get_dict:[0,1],pparray_get_int:[0,1],pparray_get_nam:[0,1],pparray_get_num:[0,1],pparray_get_obj:[0,1],pparray_get_ref:[0,1],pparray_get_str:[0,1],pparray_get_stream:[0,1],pparray_get_uint:[0,1],pparray_next:[0,1],pparray_rget_:0,pparray_rget_arrai:1,pparray_rget_bool:1,pparray_rget_dict:1,pparray_rget_int:1,pparray_rget_nam:1,pparray_rget_num:1,pparray_rget_obj:1,pparray_rget_ref:1,pparray_rget_str:1,pparray_rget_stream:[0,1],pparray_rget_uint:1,pparray_s:[0,1],pparray_to_matrix:[0,1],pparray_to_rect:[0,1],ppbool:[0,1],ppconf:1,ppcontents_first:[0,1],ppcontents_first_op:[0,1],ppcontents_next:[0,1],ppcontents_next_op:[0,1],ppcontents_pars:[0,1],ppcontext:[0,1],ppcontext_don:[0,1],ppcontext_fre:[0,1],ppcontext_new:[0,1],ppcrypt_don:[0,1],ppcrypt_fail:[0,1],ppcrypt_non:[0,1],ppcrypt_pass:[0,1],ppcrypt_statu:[0,1],ppdef:1,ppdic_rget_dict:0,ppdict:[0,1],ppdict_align:1,ppdict_at:[0,1],ppdict_first:[0,1],ppdict_get_:0,ppdict_get_arrai:[0,1],ppdict_get_bool:[0,1],ppdict_get_box:[0,1],ppdict_get_dict:[0,1],ppdict_get_int:[0,1],ppdict_get_matrix:[0,1],ppdict_get_nam:[0,1],ppdict_get_num:[0,1],ppdict_get_obj:[0,1],ppdict_get_rect:[0,1],ppdict_get_ref:[0,1],ppdict_get_str:[0,1],ppdict_get_stream:[0,1],ppdict_get_uint:[0,1],ppdict_kei:[0,1],ppdict_next:[0,1],ppdict_rget_:0,ppdict_rget_arrai:1,ppdict_rget_bool:1,ppdict_rget_dict:[0,1],ppdict_rget_int:1,ppdict_rget_nam:1,ppdict_rget_num:1,ppdict_rget_obj:1,ppdict_rget_ref:1,ppdict_rget_str:1,ppdict_rget_stream:[0,1],ppdict_rget_uint:1,ppdict_siz:[0,1],ppdoc:[0,1],ppdoc_allow_annot:[0,1],ppdoc_allow_assembl:[0,1],ppdoc_allow_copi:[0,1],ppdoc_allow_extract:[0,1],ppdoc_allow_modifi:[0,1],ppdoc_allow_print:[0,1],ppdoc_allow_print_hir:[0,1],ppdoc_catalog:[0,1],ppdoc_crypt_pass:[0,1],ppdoc_crypt_statu:[0,1],ppdoc_file_s:[0,1],ppdoc_first_pag:[0,1],ppdoc_fre:[0,1],ppdoc_info:[0,1],ppdoc_load:[0,1],ppdoc_mem:[0,1],ppdoc_memori:[0,1],ppdoc_next_pag:[0,1],ppdoc_object:[0,1],ppdoc_pag:[0,1],ppdoc_page_count:[0,1],ppdoc_permiss:[0,1],ppdoc_trail:[0,1],ppdoc_version_numb:[0,1],ppdoc_version_str:[0,1],ppdoc_xref:[0,1],ppint:[0,1],pplib:1,pplib_author:1,pplib_vers:1,pplog_callback:[0,1],pplog_prefix:[0,1],pplogger_callback:[0,1],ppmatrix:[0,1],ppmess:[],ppname:[0,1],ppname_decod:[0,1],ppname_encod:[0,1],ppname_eq:[0,1],ppname_exec:[0,1],ppname_i:[0,1],ppname_s:[0,1],ppnone:[0,1],ppnull:[0,1],ppnum:[0,1],ppobj:[0,1],ppobj_get_:0,ppobj_get_arrai:[0,1],ppobj_get_bool:[0,1],ppobj_get_bool_valu:1,ppobj_get_dict:[0,1],ppobj_get_int:[0,1],ppobj_get_int_valu:1,ppobj_get_nam:[0,1],ppobj_get_nul:[0,1],ppobj_get_num:[0,1],ppobj_get_num_valu:1,ppobj_get_ref:[0,1],ppobj_get_str:[0,1],ppobj_get_stream:[0,1],ppobj_get_uint:[0,1],ppobj_kind:1,ppobj_rget_:0,ppobj_rget_arrai:1,ppobj_rget_bool:1,ppobj_rget_dict:[0,1],ppobj_rget_int:1,ppobj_rget_nam:1,ppobj_rget_nul:1,ppobj_rget_num:1,ppobj_rget_obj:[0,1],ppobj_rget_ref:1,ppobj_rget_str:1,ppobj_rget_stream:1,ppobj_rget_uint:1,ppobjtp:[0,1],pprect:[0,1],ppref:[0,1],ppref_obj:[0,1],ppsizef:1,ppstream:[0,1],ppstream_al:[0,1],ppstream_base16:[0,1],ppstream_base85:[0,1],ppstream_ccitt:[0,1],ppstream_compress:[0,1],ppstream_crypt:[0,1],ppstream_dct:[0,1],ppstream_dict:[0,1],ppstream_don:[0,1],ppstream_encrypt:[0,1],ppstream_encrypted_a:1,ppstream_encrypted_own:[0,1],ppstream_encrypted_rc4:1,ppstream_filt:[0,1],ppstream_filter_info:[0,1],ppstream_filter_nam:[0,1],ppstream_filter_typ:[0,1],ppstream_first:[0,1],ppstream_flat:[0,1],ppstream_free_buff:[0,1],ppstream_imag:[0,1],ppstream_init_buff:[0,1],ppstream_jbig2:[0,1],ppstream_jpx:[0,1],ppstream_lzw:[0,1],ppstream_next:[0,1],ppstream_not_support:1,ppstream_runlength:[0,1],ppstreamtp:[0,1],ppstring:[0,1],ppstring_base16:[0,1],ppstring_base85:[0,1],ppstring_decod:[0,1],ppstring_encod:[0,1],ppstring_exec:1,ppstring_hex:[0,1],ppstring_plain:[0,1],ppstring_siz:[0,1],ppstring_typ:[0,1],ppstring_utf16b:[0,1],ppstring_utf16l:[0,1],ppstring_utf:[0,1],ppuint:[0,1],ppuintf:1,ppxref:[0,1],ppxref_catalog:1,ppxref_find:[0,1],ppxref_info:1,ppxref_pag:1,ppxref_prev:[0,1],ppxref_trail:1,ppxsec:1,practis:0,preceed:0,precis:0,predictor:1,prefer:0,prefix:[0,1],present:0,preserv:0,pretend:0,pretti:0,previou:0,print:[0,1],print_info:1,print_result_filt:1,print_stream_info:1,printabl:0,printf:[0,1],probabl:0,problem:[],proce:0,procee:0,process:0,produc:[0,1],prompt:0,proper:0,properti:[0,1],protect:[0,1],provid:0,psize:[0,1],put:0,queri:0,quit:0,rather:0,raw:0,read:0,readabl:0,reader:0,readi:0,real:0,realli:0,reason:0,reclaim:0,reconstruct:0,rect:[0,1],rectangl:0,redirect:0,ref:[1,2],refer:[0,1],referenc:0,refnum:1,refnumb:[0,1],relat:0,releas:[0,1],relev:0,remain:0,replac:0,repres:0,resolv:[0,1],resourc:0,restor:0,restrict:0,result:0,reus:0,revers:0,revis:1,rewrit:0,root:0,roughli:0,runlength:0,runlengthdecod:0,sai:0,same:0,saniti:0,scheme:0,search:0,second:0,sect:1,secur:[0,1],see:0,segment:0,sens:0,separ:0,set:0,sever:0,should:[0,1],shouldn:[0,1],show:0,sign:[0,1],simpl:0,simpli:0,sinc:0,singl:0,size:[0,1],size_t:[0,1],sizenum:1,sizeof:[0,1],skip:1,small:0,smarter:0,some:0,some_output:0,somehow:[],someth:0,somewher:0,soon:0,sorri:[0,1],sourc:[0,1],space:0,spec:0,special:0,specif:0,sprintf:1,stack:0,standalon:0,start:0,stat:[],state:0,statu:0,stddef:1,stderr:[0,1],stdint:1,stdio:1,stdout:0,still:0,stop:0,store:0,stream:[1,2],string:[1,2],strip:0,strlen:0,struct:[0,1],structur:0,style:0,suboptim:0,subsequ:0,succe:0,succeed:0,suffer:0,suit:0,sum:0,support:0,surround:0,syntax:0,tab:[0,1],tabl:0,take:0,target:0,tech:1,tell:0,templat:[0,1],termin:0,termini:0,text:0,than:0,thank:1,thei:0,them:0,thi:[0,1],think:0,those:0,though:0,through:0,tiff:1,todo:2,top:0,trailer:0,transform:[1,2],treat:0,tree:0,tri:0,trickeri:0,trimbox:1,triplet:0,two:0,type:[1,2],typedef:[0,1],typic:0,uint8_t:[0,1],uncompress:1,unconst:0,undocu:0,unescap:0,unicod:0,union:[0,1],unless:0,unnecesari:0,unnecessari:0,unread:0,unsign:[0,1],unsupport:0,until:0,updat:[0,1],usag:[0,1],use:0,used:0,useless:0,user:[],userpass:[0,1],userpasslength:[0,1],uses:0,using:0,usual:0,utf16:0,utf16b:0,utf16l:0,util:0,val:0,valid:0,valu:0,variabl:0,verbos:0,verifi:0,version:[0,1],via:0,wai:0,want:0,wast:[0,1],well:0,weren:[0,1],what:0,whatev:0,when:[0,1],whenev:0,which:0,without:0,wntri:0,won:0,word:[0,1],would:0,write:1,wrong:0,xref:[1,2],xsec:1,yes:0,you:0,your:0,your_callback:0,yourself:0,zero:0},titles:["<code class=\"docutils literal notranslate\"><span class=\"pre\">pplib</span></code>","Examples","pplib"],titleterms:{api:0,arrai:0,box:0,chang:1,content:0,dict:0,encrypt:0,error:0,exampl:1,filter:0,handl:0,name:0,object:0,page:0,pdf:0,ppapi:1,pplib:[0,2],ref:0,stream:0,string:0,todo:1,transform:0,type:0,xref:0}}) \ No newline at end of file diff --git a/source/texk/web2c/luatexdir/luapplib/ppapi.h b/source/texk/web2c/luatexdir/luapplib/ppapi.h index 9714279ea..a61ca04a0 100644 --- a/source/texk/web2c/luatexdir/luapplib/ppapi.h +++ b/source/texk/web2c/luatexdir/luapplib/ppapi.h @@ -8,7 +8,7 @@ #include "ppconf.h" -#define pplib_version "v1.02" +#define pplib_version "v1.03" #define pplib_author "p.jackowski@gust.org.pl" /* types */ @@ -34,7 +34,7 @@ typedef struct ppobj ppobj; typedef struct ppref ppref; -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ ||( defined(__sun) && defined(__SVR4)) +#if ARM_COMPLIANT typedef struct { ppobj *data; size_t size; @@ -48,7 +48,7 @@ typedef struct { #endif -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ ||( defined(__sun) && defined(__SVR4)) +#if ARM_COMPLIANT typedef struct { ppobj *data; ppname *keys; @@ -190,7 +190,7 @@ typedef struct ppdoc ppdoc; #define ppname_is(name, s) (memcmp(name, s, sizeof("" s) - 1) == 0) #define ppname_eq(name, n) (memcmp(name, s, ppname_size(name)) == 0) -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ ||( defined(__sun) && defined(__SVR4)) +#if ARM_COMPLIANT #define _ppname_ghost(name) (((const _ppname *)((void *)name)) - 1) #else #define _ppname_ghost(name) (((const _ppname *)(name)) - 1) @@ -208,7 +208,7 @@ PPAPI ppname ppname_encoded (ppname name); /* string */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ ||( defined(__sun) && defined(__SVR4)) +#if ARM_COMPLIANT #define _ppstring_ghost(string) (((const _ppstring *)((void *)string)) - 1) #else #define _ppstring_ghost(string) (((const _ppstring *)(string)) - 1) diff --git a/source/texk/web2c/luatexdir/luapplib/ppconf.h b/source/texk/web2c/luatexdir/luapplib/ppconf.h index 57edc205a..85d6dcb13 100644 --- a/source/texk/web2c/luatexdir/luapplib/ppconf.h +++ b/source/texk/web2c/luatexdir/luapplib/ppconf.h @@ -2,6 +2,14 @@ #ifndef PP_CONF_H #define PP_CONF_H +//#include "utilarm.h" // keep in sync +#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ ||( defined(__sun) && defined(__SVR4)) +# define ARM_COMPLIANT 1 +#else +# define ARM_COMPLIANT 0 +#endif + + /* Aux flags: PPDLL -- indicates a part of a shared library diff --git a/source/texk/web2c/luatexdir/luapplib/ppheap.c b/source/texk/web2c/luatexdir/luapplib/ppheap.c index 8592e4d6f..d2a885b53 100644 --- a/source/texk/web2c/luatexdir/luapplib/ppheap.c +++ b/source/texk/web2c/luatexdir/luapplib/ppheap.c @@ -7,7 +7,7 @@ #define ppheap_head(heap) ((uint8_t *)((heap) + 1)) -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT # define PPHEAP_ARCH_ARM # define PPHEAP_NEED_ALIGNMENT #endif diff --git a/source/texk/web2c/luatexdir/luapplib/pplib.h b/source/texk/web2c/luatexdir/luapplib/pplib.h index e753cfa05..a3bf1eb18 100644 --- a/source/texk/web2c/luatexdir/luapplib/pplib.h +++ b/source/texk/web2c/luatexdir/luapplib/pplib.h @@ -9,6 +9,7 @@ #include "utiliof.h" #include "utillog.h" +#include "utilarm.h" #include "ppapi.h" #include "ppheap.h" diff --git a/source/texk/web2c/luatexdir/luapplib/ppload.c b/source/texk/web2c/luatexdir/luapplib/ppload.c index 26e4bc385..14b8bca19 100644 --- a/source/texk/web2c/luatexdir/luapplib/ppload.c +++ b/source/texk/web2c/luatexdir/luapplib/ppload.c @@ -70,7 +70,7 @@ const char ppname_byte_lookup[] = { (ppname)(ghost + 1)) -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__||( defined(__sun) && defined(__SVR4)) +#if ARM_COMPLIANT #define ppname_set_alter_ego(name, ghost, ego) do {\ ppname temp;\ ppname *temp1;\ @@ -82,7 +82,7 @@ const char ppname_byte_lookup[] = { #define ppname_set_alter_ego(name, ghost, ego) (*((ppname *)(name + (ghost)->size + 1)) = ego) #endif -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__||( defined(__sun) && defined(__SVR4)) +#if ARM_COMPLIANT #define ppname_get_alter_ego(name) (*((ppname *)( (void*)(name + ppname_size(name) + 1)))) #else #define ppname_get_alter_ego(name) (*((ppname *)(name + ppname_size(name) + 1))) @@ -225,14 +225,14 @@ ppname ppname_encoded (ppname name) -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__||( defined(__sun) && defined(__SVR4)) +#if ARM_COMPLIANT #define ppstring_set_alter_ego(string, ghost, ego) (*((ppstring *)((void *)(string + (ghost)->size + 1))) = ego) #else #define ppstring_set_alter_ego(string, ghost, ego) (*((ppstring *)(string + (ghost)->size + 1)) = ego) #endif -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__||( defined(__sun) && defined(__SVR4)) +#if ARM_COMPLIANT #define ppstring_get_alter_ego(string) (*((ppstring *)((void *)(string + ppstring_size(string) + 1)))) #else #define ppstring_get_alter_ego(string) (*((ppstring *)(string + ppstring_size(string) + 1))) diff --git a/source/texk/web2c/luatexdir/luapplib/util/utilarm.h b/source/texk/web2c/luatexdir/luapplib/util/utilarm.h new file mode 100644 index 000000000..546c6d4dd --- /dev/null +++ b/source/texk/web2c/luatexdir/luapplib/util/utilarm.h @@ -0,0 +1,10 @@ +#ifndef UTIL_ARM_H +#define UTIL_ARM_H + +#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ ||( defined(__sun) && defined(__SVR4)) +# define ARM_COMPLIANT 1 +#else +# define ARM_COMPLIANT 0 +#endif + +#endif \ No newline at end of file diff --git a/source/texk/web2c/luatexdir/luapplib/util/utilfpred.c b/source/texk/web2c/luatexdir/luapplib/util/utilfpred.c index c30bccac1..4416161ea 100644 --- a/source/texk/web2c/luatexdir/luapplib/util/utilfpred.c +++ b/source/texk/web2c/luatexdir/luapplib/util/utilfpred.c @@ -1,15 +1,12 @@ /* predictor filters; common for flate and lzw */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ -#include <assert.h> -#endif #include "utilmem.h" #include "utillog.h" #include "utilfpred.h" /* Here we implement predictor filters used with flate and lzw compressions in PDF streams. The main idea of data prediction -is to compute and output the differences between data records instead of this records. Adjacent pixels in images are usually +is to compute and output the differences between data records instead of those records. Adjacent pixels in images are usually similar, so differences between pixel values tends to be zero. And both Flate and LZW performs better when the input is rather smooth. Although a preliminary use of predictors is related to bitmap data, The actual need for predictor filter came from the fact that xref streams may also be predicted (usually with PNG up-predictor). @@ -27,7 +24,7 @@ PDF specification allows to use several predictor algorithms, specified by /Pred All PNG predictors works on bytes, regardless the image color-depth. While encoding, every input data byte is decreased by the appropriate byte of the previous pixel. Even if the pixel does not fit a full byte, PNG predictors use an artificial pixel size rounded up to a full byte. PNG predictors utilizes previous (left) pixel, pixel above and previous to above -pixel. In case of PNG, the type of the predictor is written on a dedicated byte on the beginning of every scanline. It +pixel. In case of PNG, the type of the predictor is written on a dedicated byte at the beginning of every scanline. It means all predictor functions must maintain and information about left, above and left-above pixels. Despite the same differencing idea, TIFF predictors are different. The prediction process bases on pixel components, @@ -41,20 +38,13 @@ input value (or 0 at the beginning of the scanline) and output a difference betw previously decoded value (or zero) and outputs their sum. When encoding, the result is cast to the proper unsigned integer, when decoding, modulo 256 (or appropriate) is used, which makes encoding and decoding looseless. -Some extra bits trickery is involved in TIFF predictor function, when components doesn't fit bytes boundary. In that case, -an input is treated as an bits stream. Every input byte is "buffered" in a larger integer, as its lower bits (from right). +Some extra bits trickery is involved in TIFF predictor function, when components don't fit bytes boundary. In that case, +an input is treated as a bits stream. Every input byte is "buffered" in a larger integer, as its lower bits (from right). Every output value is taken from its higher (left) bits. In a special case of bits-per-component equal 1, we buffer all pixel bits and use XOR to compute bits difference between pixels. I've excerpted that trick from poppler, but I'm not really sure if it works any better, especially when the number of components per pixel is 1. In that case we do a hard bit-by-bit work anyway. -Predictor codecs state keeps a notion of surrounding pixels. PNG predictors uses left, up and upleft -pixel data, while TIFF predictor (2) only needs the previous (left) pixel. Important to note that PNG -predictors always work on bytes, no matter of color-depth (bits per component), while TIFF predictor -works on pixel components, which not necessarily fits into a complete byte. However, for PNG predictor -the size of a pixel still matters, because 'left' and 'upleft' refers to a corresponding pixel byte, -not necessarily previous byte. - In PNG prediction, we record every pixel byte (in decoded form) in state->rowsave. At the end of a scanline we copy state->rowsave to state->rowup, so that in the next scanline we can access up-pixel byte. Left pixel byte is accessed as state->rowsave (the byte recently stored or virtual left edge byte \0). @@ -63,9 +53,10 @@ at the left edge of the row). Both state->rowup and state->rowsave has a safe sp that are permanently \0. */ -/* #define predictor_component_t unsigned short */ -#define predictor_component_t unsigned int -#define predictor_pixel1b_t unsigned int +#define predictor_component_t uint16_t +#define predictor_pixel1b_t uint32_t + +#define MAX_COMPONENTS 8 typedef struct predictor_state { int default_predictor; /* default predictor indicator */ @@ -74,7 +65,7 @@ typedef struct predictor_state { int compbits; /* number of bits per component (/DecodeParms << /BitsPerComponent ... >>) */ int components; /* number of components (/DecodeParms << /Colors ... >>) */ uint8_t *buffer; /* temporary private buffer area */ - uint8_t *rowin; /* an input row buffer position */ + uint8_t *rowin; /* an input row buffer position */ int rowsize; /* size of a current scanline in bytes (rounded up) */ int rowend; /* an input buffer end position */ int rowindex; /* an output buffer position */ @@ -85,8 +76,9 @@ typedef struct predictor_state { int pixelsize; /* number of bytes per pixel (rounded up) */ }; struct { /* used by TIFF predictor codecs */ + predictor_component_t compbuffer[MAX_COMPONENTS]; union { - predictor_component_t *prevcomp; /* an array of left pixel components */ + predictor_component_t *prevcomp; /* an array of left pixel components, typically eq ->compbuffer */ predictor_pixel1b_t *prevpixel; /* left pixel value stored on a single integer (for 1bit color-depth) */ }; int compin, compout; /* bit stream buffers */ @@ -102,7 +94,23 @@ typedef struct predictor_state { enum { STATUS_LAST = 0, - STATUS_CONTINUE = 1 // any value different then IOFEOF, IOFERR, ... + STATUS_CONTINUE = 1 // any value different then IOFEOF, IOFERR, ... which are < 0 +}; + +/* +Predictor type identifiers (pdf spec 76). lpdf doesn't hire the codec if predictor is 1. Predictor 15 indicates +that the type of PNG prediction algorithm may change in subsequent lines. We always check algorithm marker anyway. +*/ + +enum predictor_code { + NONE_PREDICTOR = 1, + TIFF_PREDICTOR = 2, + PNG_NONE_PREDICTOR = 10, + PNG_SUB_PREDICTOR = 11, + PNG_UP_PREDICTOR = 12, + PNG_AVERAGE_PREDICTOR = 13, + PNG_PAETH_PREDICTOR = 14, + PNG_OPTIMUM_PREDICTOR = 15 }; predictor_state * predictor_decoder_init (predictor_state *state, int predictor, int rowsamples, int components, int compbits) @@ -120,34 +128,19 @@ predictor_state * predictor_decoder_init (predictor_state *state, int predictor, state->components = components; state->compbits = compbits; - if (predictor == 2) + if (predictor == TIFF_PREDICTOR) { /* tiff predictor */ size_t compbuf, pixbuf; - compbuf = state->components * sizeof(predictor_component_t); + compbuf = components * sizeof(predictor_component_t); pixbuf = 1 * sizeof(predictor_pixel1b_t); state->pixbufsize = (int)(compbuf > pixbuf ? compbuf : pixbuf); - buffersize = rowsize + state->pixbufsize; + buffersize = rowsize * sizeof(uint8_t); buffer = (uint8_t *)util_calloc(buffersize, 1); -/* #if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ */ -/* { /\*memory leak *\/ */ -/* predictor_component_t *c; */ -/* if (state->pixbufsize%(sizeof(predictor_component_t))) { */ -/* c = malloc(state->pixbufsize - state->pixbufsize%(sizeof(predictor_component_t)) + sizeof(predictor_component_t) ); */ -/* } else { */ -/* c = malloc(state->pixbufsize); */ -/* } */ -/* assert(c); */ -/* memcpy(c,(state->rowin + rowsize),state->pixbufsize); */ -/* if (state->prevcomp){ */ -/* free(state->prevcomp); */ -/* } */ -/* state->prevcomp = c; */ -/* } */ -/* #else */ - state->prevcomp = NULL ; /* will be assigned later */ - /* if (state->rowin) */ - /* state->prevcomp = (predictor_component_t *)(state->rowin + rowsize); */ -/* #endif */ + if (state->pixbufsize > sizeof(state->compbuffer)) // components > MAX_COMPONENTS + state->prevcomp = (predictor_component_t *)util_calloc(state->pixbufsize, 1); + else + state->prevcomp = state->compbuffer; + // &state->prevcomp == &state->prevpixel state->sampleindex = state->compindex = 0; state->bitsin = state->bitsout = 0; state->compin = state->compout = 0; @@ -180,29 +173,15 @@ predictor_state * predictor_encoder_init (predictor_state *state, int predictor, void predictor_decoder_close (predictor_state *state) { util_free(state->buffer); + if (state->default_predictor == TIFF_PREDICTOR && state->prevcomp != NULL && state->prevcomp != state->compbuffer) + util_free(state->prevcomp); } void predictor_encoder_close (predictor_state *state) { - util_free(state->buffer); + predictor_decoder_close(state); } -/* -Predictor type identifiers (pdf spec 76). lpdf doesn't hire the codec if predictor is 1. Predictor 15 indicates -that the type of PNG prediction algorithm may change in subsequent lines. We always check algorithm marker anyway. -*/ - -enum predictor_code { - NONE_PREDICTOR = 1, - TIFF_PREDICTOR = 2, - PNG_NONE_PREDICTOR = 10, - PNG_SUB_PREDICTOR = 11, - PNG_UP_PREDICTOR = 12, - PNG_AVERAGE_PREDICTOR = 13, - PNG_PAETH_PREDICTOR = 14, - PNG_OPTIMUM_PREDICTOR = 15 -}; - /* All predoctor codecs first read the entire data row into a buffer. This is not crucial for the process, but allows to separate read/write states. In particular, there is one place in which codec functions @@ -261,20 +240,22 @@ static int read_scanline (predictor_state *state, iof *I, int size) #define ensure_output_bytes(O, n) if (!iof_ensure(O, n)) return IOFFULL -#define tobyte(c) ((unsigned char)(c)) -#define tocomp(c) ((unsigned short)(c)) +#define tobyte(c) ((uint8_t)(c)) +#define tocomp(c) ((uint16_t)(c)) #define row_byte(state) (state->rowin[state->rowindex]) +/* png predictor macros; on bytes */ + #define up_pixel_byte(state) (state->rowup[state->rowindex]) #define upleft_pixel_byte(state) (state->rowup[state->rowindex - state->pixelsize]) #define left_pixel_byte(state) (state->rowsave[state->rowindex - state->pixelsize]) - #define save_pixel_byte(state, c) (state->rowsave[state->rowindex] = c) +/* tiff predictor macros; on components */ + #define left_pixel_component(state) (state->prevcomp[state->compindex]) // tiff predictor with 2, 4, 8, 16 components #define left_pixel_value(state) (state->prevpixel[0]) // tiff predictor with 1bit components - #define save_pixel_component(state, c) ((void)\ ((state->prevcomp[state->compindex] = c), \ (++state->compindex < state->components || (state->compindex = 0)))) @@ -413,8 +394,7 @@ iof_status predictor_decode_state (iof *I, iof *O, predictor_state *state) for ( ; state->rowindex < state->rowsize; ++state->rowindex) { ensure_output_bytes(O, 1); - state->prevcomp = (predictor_component_t *)(state->rowin + state->rowsize); - c = (left_pixel_component(state)) & 0xff; + c = (row_byte(state) + left_pixel_component(state)) & 0xff; save_pixel_component(state, c); iof_set(O, c); } @@ -426,9 +406,7 @@ iof_status predictor_decode_state (iof *I, iof *O, predictor_state *state) d = row_byte(state) << 8; ++state->rowindex; d |= row_byte(state); - state->prevcomp = (predictor_component_t *)(state->rowin + state->rowsize); - /*c = (d + left_pixel_component(state)) & 0xff;*/ - c = (d + left_pixel_component(state)) & 0xffff; + c = (d + left_pixel_component(state)) & 0xffff; save_pixel_component(state, c); iof_set2(O, c >> 8, c & 0xff); } diff --git a/source/texk/web2c/luatexdir/luapplib/util/utiliof.c b/source/texk/web2c/luatexdir/luapplib/util/utiliof.c index 7d07cf12d..2a1c6c7ee 100644 --- a/source/texk/web2c/luatexdir/luapplib/util/utiliof.c +++ b/source/texk/web2c/luatexdir/luapplib/util/utiliof.c @@ -8,6 +8,8 @@ #include "utillog.h" #include "utiliof.h" +#include "utilarm.h" + /* commons */ void * iof_copy_data (const void *data, size_t size) @@ -2001,7 +2003,7 @@ void iof_filters_free (void) iof_filters_heap = NULL; } -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT #define iof_heap_get(hp, ghost, data, siz) \ (ghost = (iof_heap_ghost *)((void*)((hp)->pos)), \ ghost->heap = hp, \ diff --git a/source/texk/web2c/luatexdir/luapplib/util/utilsha.c b/source/texk/web2c/luatexdir/luapplib/util/utilsha.c index 665320730..aa640ec24 100644 --- a/source/texk/web2c/luatexdir/luapplib/util/utilsha.c +++ b/source/texk/web2c/luatexdir/luapplib/util/utilsha.c @@ -1,6 +1,8 @@ /* sha2 implementation by Aaron D. Gifford (http://www.aarongifford.com) */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#include "utilarm.h" + +#if ARM_COMPLIANT #include <stdlib.h> #endif @@ -44,9 +46,6 @@ */ #include <string.h> /* memcpy()/memset() or bcopy()/bzero() */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ -#include <stdlib.h> -#endif #include <assert.h> /* assert() */ //#include "sha2.h" #include "utilsha.h" @@ -450,7 +449,7 @@ static void SHA256_Transform(SHA256_CTX* context, const uint32_t* data) { uint32_t T1, T2, *W256; int j; -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT W256 = (uint32_t*)((void *)context->buffer); #else W256 = (uint32_t*)context->buffer; @@ -552,7 +551,7 @@ static void SHA256_Update(SHA256_CTX* context, const uint8_t *data, size_t len) context->bitcount += freespace << 3; len -= freespace; data += freespace; -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT SHA256_Transform(context, (uint32_t*)((void *)context->buffer)); #else SHA256_Transform(context, (uint32_t*)context->buffer); @@ -569,8 +568,8 @@ static void SHA256_Update(SHA256_CTX* context, const uint8_t *data, size_t len) } while (len >= SHA256_BLOCK_LENGTH) { /* Process as many complete blocks as we can */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ - SHA256_Transform(context, (const uint32_t*)(const void *)(data)); +#if ARM_COMPLIANT + SHA256_Transform(context, (const uint32_t*)(const void *)(data)); #else SHA256_Transform(context, (const uint32_t*)data); #endif @@ -589,7 +588,7 @@ static void SHA256_Update(SHA256_CTX* context, const uint8_t *data, size_t len) } static void SHA256_Final(uint8_t digest[], SHA256_CTX* context) { -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT uint32_t *d ; #else uint32_t *d = (uint32_t*)digest; @@ -599,7 +598,7 @@ static void SHA256_Final(uint8_t digest[], SHA256_CTX* context) { /* Sanity check: */ assert(context != (SHA256_CTX*)0); -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT d = malloc(sizeof(uint32_t)*8); /* why 8 ? see below for loop */ assert(d); #endif @@ -623,7 +622,7 @@ static void SHA256_Final(uint8_t digest[], SHA256_CTX* context) { MEMSET_BZERO(&context->buffer[usedspace], SHA256_BLOCK_LENGTH - usedspace); } /* Do second-to-last transform: */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT SHA256_Transform(context, (uint32_t*)(void *)(context->buffer)); #else SHA256_Transform(context, (uint32_t*)context->buffer); @@ -645,9 +644,8 @@ static void SHA256_Final(uint8_t digest[], SHA256_CTX* context) { context->buffer64[SHA256_SHORT_BLOCK_LENGTH / sizeof(uint64_t)] = context->bitcount; /* Final transform: */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ - SHA256_Transform(context, (uint32_t*)((void *)(context->buffer))); - +#if ARM_COMPLIANT + SHA256_Transform(context, (uint32_t*)((void *)(context->buffer))); #else SHA256_Transform(context, (uint32_t*)context->buffer); @@ -667,7 +665,7 @@ static void SHA256_Final(uint8_t digest[], SHA256_CTX* context) { #endif } -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT memcpy(digest,d,SHA256_DIGEST_LENGTH); free(d); #endif @@ -912,7 +910,7 @@ static void SHA512_Update(SHA512_CTX* context, const uint8_t *data, size_t len) ADDINC128(context->bitcount, freespace << 3); len -= freespace; data += freespace; -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT SHA512_Transform(context, (uint64_t*)((void *)context->buffer)); #else SHA512_Transform(context, (uint64_t*)context->buffer); @@ -928,10 +926,10 @@ static void SHA512_Update(SHA512_CTX* context, const uint8_t *data, size_t len) } while (len >= SHA512_BLOCK_LENGTH) { /* Process as many complete blocks as we can */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ - SHA512_Transform(context, (uint64_t*)((void *)context->buffer)); +#if ARM_COMPLIANT + SHA512_Transform(context, (uint64_t*)((void *)context->buffer)); #else - SHA512_Transform(context, (uint64_t*)context->buffer); + SHA512_Transform(context, (uint64_t*)context->buffer); #endif ADDINC128(context->bitcount, SHA512_BLOCK_LENGTH << 3); len -= SHA512_BLOCK_LENGTH; @@ -967,7 +965,7 @@ static void SHA512_Last(SHA512_CTX* context) { MEMSET_BZERO(&context->buffer[usedspace], SHA512_BLOCK_LENGTH - usedspace); } /* Do second-to-last transform: */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT SHA512_Transform(context, (uint64_t*)((void *)context->buffer)); #else SHA512_Transform(context, (uint64_t*)context->buffer); @@ -991,7 +989,7 @@ static void SHA512_Last(SHA512_CTX* context) { context->buffer64[SHA512_SHORT_BLOCK_LENGTH / sizeof(uint64_t) + 1] = context->bitcount[0]; /* Final transform: */ -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT SHA512_Transform(context, (uint64_t*)((void *)context->buffer)); #else SHA512_Transform(context, (uint64_t*)context->buffer); @@ -1000,16 +998,15 @@ static void SHA512_Last(SHA512_CTX* context) { } static void SHA512_Final(uint8_t digest[], SHA512_CTX* context) { -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT uint64_t *d ; #else uint64_t *d = (uint64_t*)digest; - #endif /* Sanity check: */ assert(context != (SHA512_CTX*)0); -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT d = malloc(sizeof(uint64_t)*8); /* why 8 ? see below for loop */ assert(d); #endif @@ -1032,7 +1029,7 @@ static void SHA512_Final(uint8_t digest[], SHA512_CTX* context) { MEMCPY_BCOPY(d, context->state, SHA512_DIGEST_LENGTH); #endif } -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT memcpy(digest,d,SHA512_DIGEST_LENGTH); free(d); #endif @@ -1089,7 +1086,7 @@ static void SHA384_Update(SHA384_CTX* context, const uint8_t* data, size_t len) } static void SHA384_Final(uint8_t digest[], SHA384_CTX* context) { -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT uint64_t *d; #else uint64_t *d = (uint64_t*)digest; @@ -1099,7 +1096,7 @@ static void SHA384_Final(uint8_t digest[], SHA384_CTX* context) { /* Sanity check: */ assert(context != (SHA384_CTX*)0); -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT d = malloc(sizeof(uint64_t)*6); /* why 6 ? see below for loop */ assert(d); #endif @@ -1122,7 +1119,7 @@ static void SHA384_Final(uint8_t digest[], SHA384_CTX* context) { MEMCPY_BCOPY(d, context->state, SHA384_DIGEST_LENGTH); #endif } -#if defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm || defined __ARM_ARCH ||defined __aarch64__ +#if ARM_COMPLIANT memcpy(digest,d,SHA384_DIGEST_LENGTH); free(d); #endif diff --git a/source/texk/web2c/luatexdir/luatex.c b/source/texk/web2c/luatexdir/luatex.c index 014d8bfd2..a057c3a6c 100644 --- a/source/texk/web2c/luatexdir/luatex.c +++ b/source/texk/web2c/luatexdir/luatex.c @@ -33,8 +33,8 @@ */ int luatex_version = 109; -int luatex_revision = '0'; -const char *luatex_version_string = "1.09.0"; +int luatex_revision = '2'; +const char *luatex_version_string = "1.09.2"; const char *engine_name = my_name; #include <kpathsea/c-ctype.h> diff --git a/source/texk/web2c/luatexdir/luatex_svnversion.h b/source/texk/web2c/luatexdir/luatex_svnversion.h index ba7e144d2..28582b654 100644 --- a/source/texk/web2c/luatexdir/luatex_svnversion.h +++ b/source/texk/web2c/luatexdir/luatex_svnversion.h @@ -1 +1 @@ -#define luatex_svn_revision 6998 +#define luatex_svn_revision 7019 diff --git a/source/texk/web2c/luatexdir/luazlib/lzlib.c b/source/texk/web2c/luatexdir/luazlib/lzlib.c index 707c0cbc5..2f6f26918 100644 --- a/source/texk/web2c/luatexdir/luazlib/lzlib.c +++ b/source/texk/web2c/luatexdir/luazlib/lzlib.c @@ -478,21 +478,16 @@ static int lzlib_decompress(lua_State *L) { zs.next_out = (Bytef*)luaL_prepbuffer(&b); zs.avail_out = LUAL_BUFFERSIZE; - /* bake some more */ - ret = inflate(&zs, Z_FINISH); - + ret = inflate(&zs, Z_NO_FLUSH); /* push gathered data */ luaL_addsize(&b, LUAL_BUFFERSIZE - zs.avail_out); - /* need dictionary? - no dictionary support here, so just quit */ if (ret == Z_NEED_DICT) break; - /* done processing? */ if (ret == Z_STREAM_END) break; - /* error condition? */ if (ret != Z_OK) break; diff --git a/source/texk/web2c/luatexdir/tex/mainbody.c b/source/texk/web2c/luatexdir/tex/mainbody.c index ca9a79dbb..9116d8bdb 100644 --- a/source/texk/web2c/luatexdir/tex/mainbody.c +++ b/source/texk/web2c/luatexdir/tex/mainbody.c @@ -668,6 +668,7 @@ void close_files_and_terminate(void) print_ln(); } lua_a_close_out(log_file); + log_opened_global = false; } callback_id = callback_defined(wrapup_run_callback); if (callback_id > 0) { diff --git a/source/texk/web2c/luatexdir/tex/printing.c b/source/texk/web2c/luatexdir/tex/printing.c index 0a961071b..6ad4634a1 100644 --- a/source/texk/web2c/luatexdir/tex/printing.c +++ b/source/texk/web2c/luatexdir/tex/printing.c @@ -466,7 +466,8 @@ void tprint(const char *sss) /*tex What is left is the 3 term/log settings. */ if (dolog || doterm) { buffer = xmalloc(strlen(sss)*3); - if (dolog) { + /*tex The |wrapup_run| callback acts when the log file is already closed.*/ + if (dolog && log_opened_global) { const unsigned char *ss = (const unsigned char *) sss; while (*ss) { int s = *ss++; diff --git a/source/texk/web2c/luatexdir/tex/texnodes.c b/source/texk/web2c/luatexdir/tex/texnodes.c index d68d3a4c8..e0bf15227 100644 --- a/source/texk/web2c/luatexdir/tex/texnodes.c +++ b/source/texk/web2c/luatexdir/tex/texnodes.c @@ -4774,7 +4774,7 @@ halfword make_local_par_node(int mode) { int callback_id; halfword q; - halfword p = new_node(local_par_node,0); + halfword p = new_node(local_par_node,mode); local_pen_inter(p) = local_inter_line_penalty_par; local_pen_broken(p) = local_broken_penalty_par; if (local_left_box_par != null) { diff --git a/source/texk/web2c/man/ChangeLog b/source/texk/web2c/man/ChangeLog index 01270be75..38f3f7588 100644 --- a/source/texk/web2c/man/ChangeLog +++ b/source/texk/web2c/man/ChangeLog @@ -1,3 +1,11 @@ +2018-12-21 Karl Berry <karl@freefriends.org> + + * mpost.man: mention rmpost, (r)pmpost, and (r)upmpost. + +2018-10-28 Andreas Scherer <https://ascherer.github.io> + + * cweb.man: do not mention nonexistent -DSTAT option. + 2018-06-04 Karl Berry <karl@tug.org> * Makefile.am (man_sources, man1_links) [PTEX]: add ptex.man. diff --git a/source/texk/web2c/man/cweb.man b/source/texk/web2c/man/cweb.man index 04572a15b..82a134a8d 100644 --- a/source/texk/web2c/man/cweb.man +++ b/source/texk/web2c/man/cweb.man @@ -1,4 +1,4 @@ -.TH CWEB 1 "7 April 2010" "Web2C @VERSION@" +.TH CWEB 1 "28 October 2018" "Web2C @VERSION@" .\"===================================================================== .SH NAME ctangle, cweave \- translate CWEB to C and/or TeX @@ -90,8 +90,7 @@ you get nothing but error messages. .PP The .B +s -option prints statistics about memory usage at the end of a run -(assuming that the programs have been compiled with the -DSTAT switch). +option prints statistics about memory usage at the end of a run. .PP There are three other options applicable to .B cweave diff --git a/source/texk/web2c/man/mpost.man b/source/texk/web2c/man/mpost.man index 924666fbf..7eac5c0e0 100644 --- a/source/texk/web2c/man/mpost.man +++ b/source/texk/web2c/man/mpost.man @@ -1,4 +1,4 @@ -.TH MPOST 1 "16 June 2015" "Web2C @VERSION@" +.TH MPOST 1 "31 December 2018" "Web2C @VERSION@" .\"===================================================================== .de URL \\$2 \(laURL: \\$1 \(ra\\$3 @@ -22,7 +22,8 @@ .if t .ds WB W\s-2EB\s0 .\"===================================================================== .SH NAME -mpost \- MetaPost, a system for creating graphics +mpost, pmpost, upmpost \- MetaPost, a system for creating graphics +r-mpost, r-pmpost, r-upmpost \- restricted MetaPost .SH SYNOPSIS .B mpost .RI [ options ] @@ -43,14 +44,14 @@ or .BR troff (1) commands and accessing features of PostScript not found in \*(MF. .PP -\*(MP is normally used with some preloaded macros, and it +\*(MP is normally used with a set of basic macros, and it will use its executable name as the name of the preload file to use. For example, when called as .B mpost the .I mpost.mp -file is used, which is identical to -.I plain.mp. +file is used, which simply reads +.IR plain.mp . When the .B --ini option is given, preloading does not happen. @@ -80,16 +81,32 @@ When the option is given, \*(MP acts as DVI-to-MPX converter only. See dvitomp (1) for details. .PP -This manual page is not meant to be exhaustive. The complete -documentation for this version of \*(MP can be found in the +The +.B pmpost +program is a variant with Japanese support, and +.B upmpost +has Unicode-enabled Japanese support, analogous to ptex and uptex. +.PP +All three variants are also installed with an `r-' prefix, that is, +.BR r-mpost , +.BR r-pmpost , +.BR r-upmpost , +which implicitly specify the +.B --restricted +option to make MetaPost safe to run on unknown input; the tex, makempx, +and editor commands are disabled. +.PP +This manual page is a mere skeleton. For a list of all command line +options, run +.BR --help . +.PP +The main documentation for this version of \*(MP can be found in the User Manual that should have been installed along with the program and -is also available from http://tug.org/metapost. -See the FILES section below. +is also available from https://tug.org/metapost. .PP The \*(MP language is similar to \*(MF, but the manual assumes no knowledge of \*(MF. \*(MP does not have bitmap output commands or \*(MF's online display mechanism. - .\"===================================================================== .SH FILES .TP @@ -132,34 +149,30 @@ Addison-Wesley, 1986, ISBN 0-201-13445-4. (the journal of the \*(TX Users Group). .\"===================================================================== .SH "SEE ALSO" -.PP .BR dvitomp (1), .BR epstopdf (1), .BR mf (1), .BR mptopdf (1), .BR tex (1), -.PP -.URL "http://foundry.supelec.fr/gf/project/metapost/" "MetaPost source code" . .br -.URL "http://tug.org/metapost/" "MetaPost home page" . +.URL "https://tug.org/metapost/" "MetaPost home page" . .\"===================================================================== .SH AUTHORS -\*(MP was designed by John D. Hobby, incorporating algorithms from +\*(MP was created by John D. Hobby, incorporating algorithms from \*(MF by Donald E. Knuth. It was originally implemented on Unix, incorporating system-dependent routines from .BR web2c , while not relying on it except for the actual \*(WB-to-C translator. .PP -The primary author of the current \*(MP was Taco Hoekwater, with -assistance from Hans Hagen and many others. It is currently maintained -by Luigi Scarso. -.PP Ulrik Vieth adapted \*(MP to take advantage of the advanced path searching features in more recent versions of .B web2c and worked towards fully integrating \*(MP into the canonical Unix \*(TX distribution. +.PP +The primary author of the current \*(MP was Taco Hoekwater, with +assistance from Hans Hagen and many others. It is currently maintained +by Luigi Scarso. .\"===================================================================== .SH BUGS -The MetaPost home page is http://tug.org/metapost. - +The MetaPost home page is https://tug.org/metapost. diff --git a/source/texk/web2c/mplibdir/ChangeLog b/source/texk/web2c/mplibdir/ChangeLog index 312193939..90cedb967 100644 --- a/source/texk/web2c/mplibdir/ChangeLog +++ b/source/texk/web2c/mplibdir/ChangeLog @@ -1,3 +1,7 @@ +2019-01-06 Luigi Scarso <luigi.scarso@gmail.com> + * Added r-mpost as an alias for mpost --restricted + + 2018-10-22 Luigi Scarso <luigi.scarso@gmail.com> * Fixed a bug in cubic intersection in arbitrary precision math with low precision. * Raised minimal precision to 2 for decimal and binary mode. diff --git a/source/texk/web2c/mplibdir/am/mplib.am b/source/texk/web2c/mplibdir/am/mplib.am index 10b1fe4aa..a8b0da6ee 100644 --- a/source/texk/web2c/mplibdir/am/mplib.am +++ b/source/texk/web2c/mplibdir/am/mplib.am @@ -1,6 +1,7 @@ ## texk/web2c/mplibdir/am/mplib.am: Makefile fragment for MetaPost. ## -## Copyright (C) 2009-2015 Peter Breitenlohner <tex-live@tug.org> +## Copyright 2017-2018 Luigi Scarso <tex-live@tug.org> +## Copyright 2009-2015 Peter Breitenlohner <tex-live@tug.org> ## You may freely use, modify and/or distribute this file. ## MetaPost @@ -13,6 +14,7 @@ install_exe_links += install-mpost-links uninstall_exe_links += uninstall-mpost-links else !WIN32 bin_links += mpost$(EXEEXT):dvitomp mpost$(EXEEXT):mfplain +bin_links += mpost$(EXEEXT):r-mpost endif !WIN32 endif MP EXTRA_PROGRAMS += mpost diff --git a/source/texk/web2c/mplibdir/mp.w b/source/texk/web2c/mplibdir/mp.w index bbd048453..8afa03cd2 100644 --- a/source/texk/web2c/mplibdir/mp.w +++ b/source/texk/web2c/mplibdir/mp.w @@ -4857,7 +4857,7 @@ mp_knot mp_get_path_value (MP mp, const char *s, size_t l) { char *ss = mp_xstrdup(mp,s); if (ss) { mp_sym sym = mp_id_lookup(mp,ss,l,false); - if (sym != NULL) { + if (sym != NULL && sym->v.data.node != NULL) { if (mp_type(sym->v.data.node) == mp_path_type) { mp_xfree (ss); return (mp_knot) sym->v.data.node->data.p; @@ -15772,16 +15772,16 @@ static void mp_cubic_intersection (MP mp, mp_knot p, mp_knot pp) { mp_number x_two_t; /* increment bit precision by x bit */ mp->time_to_go = max_patience; set_number_from_scaled (mp->max_t, 2); - new_number (x_two_t); - number_clone (x_two_t,two_t); - number_double(x_two_t); number_double(x_two_t); /* add x=3 bit of precision */ - number_double(x_two_t); + new_number (x_two_t); + number_clone (x_two_t,two_t); + number_double(x_two_t); number_double(x_two_t); /* add x=3 bit of precision */ + number_double(x_two_t); @<Initialize for intersections at level zero@>; CONTINUE: while (1) { /* When we are in arbitrary precision math, low precisions can */ /* lead to acces locations beyond the stack_size: in this case */ - /* we say that there is no intersection.*/ + /* we say that there is no intersection.*/ if ( ((x_packet (mp->xy))+4)>bistack_size || ((u_packet (mp->uv))+4)>bistack_size || ((y_packet (mp->xy))+4)>bistack_size || diff --git a/source/texk/web2c/mplibdir/mpost.w b/source/texk/web2c/mplibdir/mpost.w index 43da635c3..3cf35eedb 100644 --- a/source/texk/web2c/mplibdir/mpost.w +++ b/source/texk/web2c/mplibdir/mpost.w @@ -1389,6 +1389,9 @@ main (int argc, char **argv) if (FILESTRCASEEQ(base, "rmpost")){ base++; restricted_mode = true; + } else if (FILESTRCASEEQ(base, "r-mpost")){ + base += 2; + restricted_mode = true; } if (FILESTRCASEEQ(base, "dvitomp")) dvitomp_only=1; @@ -1425,6 +1428,8 @@ main (int argc, char **argv) kpse_set_program_name(argv[0], user_progname); if (FILESTRCASEEQ(kpse_program_name, "rmpost")) kpse_program_name++; + else if (FILESTRCASEEQ(kpse_program_name, "r-mpost")) + kpse_program_name += 2; } @= /*@@=nullpass@@*/ @> if(putenv(xstrdup("engine=metapost"))) diff --git a/source/texk/web2c/omegafonts/Makefile.in b/source/texk/web2c/omegafonts/Makefile.in index e2371e624..c0fc10c34 100644 --- a/source/texk/web2c/omegafonts/Makefile.in +++ b/source/texk/web2c/omegafonts/Makefile.in @@ -135,7 +135,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/web2c-disable.m4 \ $(top_srcdir)/../../m4/lt~obsolete.m4 \ $(top_srcdir)/../../version.ac $(top_srcdir)/ac/web2c.ac \ $(top_srcdir)/synctexdir/ac/synctex.ac \ - $(top_srcdir)/synctexdir/synctex_parser_version.txt \ + $(top_srcdir)/synctexdir/synctex_parser_api_level.txt \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) diff --git a/source/texk/web2c/otps/Makefile.in b/source/texk/web2c/otps/Makefile.in index 775163c48..b3dffe3e5 100644 --- a/source/texk/web2c/otps/Makefile.in +++ b/source/texk/web2c/otps/Makefile.in @@ -135,7 +135,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/web2c-disable.m4 \ $(top_srcdir)/../../m4/lt~obsolete.m4 \ $(top_srcdir)/../../version.ac $(top_srcdir)/ac/web2c.ac \ $(top_srcdir)/synctexdir/ac/synctex.ac \ - $(top_srcdir)/synctexdir/synctex_parser_version.txt \ + $(top_srcdir)/synctexdir/synctex_parser_api_level.txt \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) diff --git a/source/texk/web2c/otps/win32/Makefile.in b/source/texk/web2c/otps/win32/Makefile.in index bb435ac8c..885cd577f 100644 --- a/source/texk/web2c/otps/win32/Makefile.in +++ b/source/texk/web2c/otps/win32/Makefile.in @@ -132,7 +132,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/web2c-disable.m4 \ $(top_srcdir)/../../m4/lt~obsolete.m4 \ $(top_srcdir)/../../version.ac $(top_srcdir)/ac/web2c.ac \ $(top_srcdir)/synctexdir/ac/synctex.ac \ - $(top_srcdir)/synctexdir/synctex_parser_version.txt \ + $(top_srcdir)/synctexdir/synctex_parser_api_level.txt \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) diff --git a/source/texk/web2c/pmpostdir/am/pmpost.am b/source/texk/web2c/pmpostdir/am/pmpost.am index 4297c9637..f7e60851b 100644 --- a/source/texk/web2c/pmpostdir/am/pmpost.am +++ b/source/texk/web2c/pmpostdir/am/pmpost.am @@ -1,6 +1,7 @@ ## texk/web2c/pmpostdir/am/pmpost.am: Makefile fragment for pMetaPost. ## -## Copyright (C) 2014, 2015 Peter Breitenlohner <tex-live@tug.org> +## Copyright 2018 Karl Berry <tex-live@tug.org> +## Copyright 2014-2015 Peter Breitenlohner <tex-live@tug.org> ## You may freely use, modify and/or distribute this file. ## pMetaPost and upMetaPost @@ -13,6 +14,7 @@ install_exe_links += install-pmpost-links uninstall_exe_links += uninstall-pmpost-links else !WIN32 bin_links += pmpost$(EXEEXT):pdvitomp +bin_links += pmpost$(EXEEXT):r-pmpost endif !WIN32 endif PMP if UPMP @@ -23,6 +25,7 @@ install_exe_links += install-upmpost-links uninstall_exe_links += uninstall-upmpost-links else !WIN32 bin_links += upmpost$(EXEEXT):updvitomp +bin_links += upmpost$(EXEEXT):r-upmpost endif !WIN32 endif UPMP EXTRA_PROGRAMS += pmpost upmpost diff --git a/source/texk/web2c/synctexdir/ChangeLog b/source/texk/web2c/synctexdir/ChangeLog index 1a0e601be..a49d19d71 100644 --- a/source/texk/web2c/synctexdir/ChangeLog +++ b/source/texk/web2c/synctexdir/ChangeLog @@ -1,3 +1,7 @@ +2018-10-25 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * synctex.c: Cleanup for non-ascii file names (w32 only). + 2018-07-27 Karl Berry <karl@freefriends.org> * synctex_parser_api_level.txt: new file (contents "2.0.0"). diff --git a/source/texk/web2c/synctexdir/synctex.c b/source/texk/web2c/synctexdir/synctex.c index 987a8c2d9..598c2b304 100644 --- a/source/texk/web2c/synctexdir/synctex.c +++ b/source/texk/web2c/synctexdir/synctex.c @@ -292,13 +292,14 @@ mem[NODE+TYPE##_node_size-synchronization_field_size+1].cint # define SYNCTEX_OFFSET_IS_PDF 0 # endif -#if defined(_WIN32) && (defined(pdfTeX) || defined(upTeX) || defined(eupTeX) || defined(XeTeX)) +#if defined(_WIN32) +#if defined(pdfTeX) || defined(upTeX) || defined(eupTeX) || defined(XeTeX) #define W32UPTEXSYNCTEX 1 #include <wchar.h> static char *chgto_oem(char *src); static int fsyscp_remove(char *name); -#define remove fsyscp_remove -#endif +#endif /* pdfTeX ... */ +#endif /* _WIN32 */ /* This macro layer was added to take luatex into account as suggested by T. Hoekwater. */ # if !defined(SYNCTEX_GET_JOB_NAME) @@ -496,7 +497,11 @@ void synctexabort(boolean log_opened __attribute__ ((unused))) gzclose((gzFile) SYNCTEX_FILE); } SYNCTEX_FILE = NULL; +#if defined(W32UPTEXSYNCTEX) + fsyscp_remove(synctex_ctxt.busy_name); +#else remove(synctex_ctxt.busy_name); +#endif /* W32UPTEXSYNCTEX */ SYNCTEX_FREE(synctex_ctxt.busy_name); synctex_ctxt.busy_name = NULL; } @@ -530,7 +535,7 @@ static char *chgto_oem(char *src) f_codepage = AreFileApisANSI() ? GetACP() : GetOEMCP(); } - if(f_codepage == file_system_codepage) { + if(file_system_codepage == 0 || f_codepage == file_system_codepage) { dst = xstrdup(src); return dst; } @@ -545,6 +550,10 @@ static gzFile fsyscp_gzopen(const char *path, const char *mode) { gzFile gzf; wchar_t *pathw = NULL; + + if(!file_system_codepage) + return gzopen(path, mode); + pathw = get_wstring_from_fsyscp(path, pathw); gzf = gzopen_w(pathw, mode); free(pathw); @@ -555,6 +564,10 @@ static int fsyscp_remove(char *s) { wchar_t *sw = NULL; int ret; + + if(!file_system_codepage) + return remove(s); + sw = get_wstring_from_fsyscp(s, sw); ret = _wremove(sw); if(sw) free(sw); @@ -566,6 +579,9 @@ static int fsyscp_rename(char *s1, char *s2) wchar_t *sw1 = NULL, *sw2 = NULL; int ret; + if(!file_system_codepage) + return rename(s1, s2); + sw1 = get_wstring_from_fsyscp(s1, sw1); sw2 = get_wstring_from_fsyscp(s2, sw2); ret = _wrename(sw1, sw2); @@ -578,7 +594,8 @@ static int fsyscp_rename(char *s1, char *s2) #define fopen fsyscp_fopen #define gzopen fsyscp_gzopen #define rename fsyscp_rename -#endif +#define remove fsyscp_remove +#endif /* W32UPTEXSYNCTEX */ /* synctex_dot_open ensures that the foo.synctex file is open. * In case of problem, it definitely disables synchronization. diff --git a/source/texk/web2c/tangle.ch b/source/texk/web2c/tangle.ch new file mode 100644 index 000000000..5331307af --- /dev/null +++ b/source/texk/web2c/tangle.ch @@ -0,0 +1,834 @@ +% tangle.ch for C compilation with web2c. +% +% 10/9/82 (HT) Original version +% 11/29 (HT) New version, with conversion to lowercase handled properly +% Also, new control sequence: +% @=...text...@> Put ...text... verbatim on a line +% by itself in the Pascal output. +% (argument must fit on one line) +% This control sequence facilitates putting #include "gcons.h" +% (for example) in files meant for the pc compiler. +% Also, changed command line usage, so that the absence of a +% change file implies no change file, rather than one with the +% same name as the web file, with .ch at the end. +% 1/15/83 (HT) Changed to work with version 1.2, which incorporates the +% above change (though unbundling the output line breaking), +% so mainly had to remove stuff. +% 2/17 (HT) Fixed bug that caused 0-9 in identifiers to be converted to +% Q-Y on output. +% 3/18 (HT) Brought up to work with Version 1.5. Added -r command line +% flag to cause a .rpl file to be written with all the lines +% of the .web file that were replaced because of the .ch file +% (useful for comparing with previous .rpl files, to see if a +% change file will still work with a new version of a .web file) +% Also, made it write a newline just before exit. +% 4/12 (PC) Merged with Pavel's version, including adding a call to exit() +% at the end depending upon the value of history. +% 4/16 (PC) Brought up to date with version 1.5 released April, 1983. +% 6/28 (HWT) Brought up to date with version 1.7 released June, 1983. +% With new change file format, the -r option is now unnecessary. +% 7/17 (HWT) Brought up to date with version 2.0 released July, 1983. +% 12/18/83 (ETM) Brought up to date with version 2.5 released November, 1983. +% 11/07/84 (ETM) Brought up to date with version 2.6. +% 12/15/85 (ETM) Brought up to date with version 2.8. +% 03/07/88 (ETM) Converted for use with WEB2C +% 01/02/89 (PAM) Cosmetic upgrade to version 2.9 +% 11/30/89 (KB) Version 4. +% (more recent changes in the ChangeLog) + +@x [0] Print only changes. +\pageno=\contentspagenumber \advance\pageno by 1 +@y +\pageno=\contentspagenumber \advance\pageno by 1 +\let\maybe=\iffalse +\def\title{TANGLE changes for C} +@z + +@x [1] Define my_name +@d banner=='This is TANGLE, Version 4.5' +@y +@d my_name=='tangle' +@d banner=='This is TANGLE, Version 4.5' +@z + +@x [2] Eliminate the |end_of_TANGLE| label. +@d end_of_TANGLE = 9999 {go here to wrap it up} + +@y +@z +@x +label end_of_TANGLE; {go here to finish} +@y +@z + +@x [2] Define and call parse_arguments. +procedure initialize; + var @<Local variables for initialization@>@/ + begin @<Set initial values@>@/ +@y +@<Define |parse_arguments|@> +procedure initialize; + var @<Local variables for initialization@>@/ + begin + kpse_set_program_name (argv[0], my_name); + parse_arguments; + @<Set initial values@>@/ +@z + +@x [8] Constants: increase id lengths, for TeX--XeT and tex2pdf. +@!buf_size=100; {maximum length of input line} +@y +@!buf_size=3000; {maximum length of input line} +@z +@x +@!max_bytes=45000; {|1/ww| times the number of bytes in identifiers, + strings, and module names; must be less than 65536} +@!max_toks=50000; {|1/zz| times the number of bytes in compressed \PASCAL\ code; + must be less than 65536} +@!max_names=4000; {number of identifiers, strings, module names; + must be less than 10240} +@!max_texts=2000; {number of replacement texts, must be less than 10240} +@y +@!max_bytes=65535; {|1/ww| times the number of bytes in identifiers, + strings, and module names; must be less than 65536} +@!max_toks=65535; {|1/zz| times the number of bytes in compressed \PASCAL\ code; + must be less than 65536} +@!max_names=10000; {number of identifiers, strings, module names; + must be less than 10240} +@!max_texts=10000; {number of replacement texts, must be less than 10240} +@z + +@x +@!stack_size=50; {number of simultaneous levels of macro expansion} +@!max_id_length=12; {long identifiers are chopped to this length, which must + not exceed |line_length|} +@!unambig_length=7; {identifiers must be unique if chopped to this length} + {note that 7 is more strict than \PASCAL's 8, but this can be varied} +@y +@!stack_size=100; {number of simultaneous levels of macro expansion} +@!max_id_length=50; {long identifiers are chopped to this length, which must + not exceed |line_length|} +@!def_unambig_length=32; {identifiers must be unique if chopped to this length} +@z + +% [12] The text_char type is used as an array index into xord. The +% default type `char' may produce signed integers, which are bad array +% indices in C. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +@x +@d text_char == char {the data type of characters in text files} +@y +@d text_char == ASCII_code {the data type of characters in text files} +@z + +@x [17] enable maximum character set +for i:=1 to @'37 do xchr[i]:=' '; +for i:=@'200 to @'377 do xchr[i]:=' '; +@y +for i:=1 to @'37 do xchr[i]:=chr(i); +for i:=@'200 to @'377 do xchr[i]:=chr(i); +@z + +@x [20] terminal output: use standard i/o +@d print(#)==write(term_out,#) {`|print|' means write on the terminal} +@y +@d term_out==stdout +@d print(#)==write(term_out,#) {`|print|' means write on the terminal} +@z + +@x +@<Globals...@>= +@!term_out:text_file; {the terminal as an output file} +@y +@z + +@x [21] init terminal +@ Different systems have different ways of specifying that the output on a +certain file will appear on the user's terminal. Here is one way to do this +on the \PASCAL\ system that was used in \.{TANGLE}'s initial development: +@^system dependencies@> + +@<Set init...@>= +rewrite(term_out,'TTY:'); {send |term_out| output to the terminal} +@y +@ Different systems have different ways of specifying that the output on a +certain file will appear on the user's terminal. +@^system dependencies@> + +@<Set init...@>= + {Nothing need be done for C.} +@z + +@x [22] flush terminal buffer +@d update_terminal == break(term_out) {empty the terminal output buffer} +@y +@d update_terminal == fflush(term_out) {empty the terminal output buffer} +@z + +@x [24] open input files +begin reset(web_file); reset(change_file); +@y +begin web_file := kpse_open_file(web_name, kpse_web_format); +if chg_name then change_file := kpse_open_file(chg_name, kpse_web_format); +@z + +@x [26] Open output files (except for the pool file). +rewrite(Pascal_file); rewrite(pool); +@y +rewrite (Pascal_file, pascal_name); +@z + +@x [28] Fix f^. + begin buffer[limit]:=xord[f^]; get(f); + incr(limit); + if buffer[limit-1]<>" " then final_limit:=limit; + if limit=buf_size then + begin while not eoln(f) do get(f); +@y + begin buffer[limit]:=xord[getc(f)]; + incr(limit); + if buffer[limit-1]<>" " then final_limit:=limit; + if limit=buf_size then + begin while not eoln(f) do vgetc(f); +@z + +@x [34] Fix `jump_out'. +@d fatal_error(#)==begin new_line; print(#); error; mark_fatal; jump_out; + end + +@<Error handling...@>= +procedure jump_out; +begin goto end_of_TANGLE; +end; +@y +@d jump_out==uexit(1) +@d fatal_error(#)==begin new_line; write(stderr, #); + error; mark_fatal; uexit(1); + end +@z + +@x [38] Provide for a larger `byte_mem' and `tok_mem'. Extra capacity: +@d ww=2 {we multiply the byte capacity by approximately this amount} +@d zz=3 {we multiply the token capacity by approximately this amount} +@y +@d ww=3 {we multiply the byte capacity by approximately this amount} +@d zz=5 {we multiply the token capacity by approximately this amount} +@z + +@x [38] Provide for larger than 16bit numeric macros. +@!equiv: array [0..max_names] of sixteen_bits; {info corresponding to names} +@y +@!equiv: array [0..max_names] of integer; {info corresponding to names} +@z + +@x [47] Provide for larger than 16bit numeric macros. +their |equiv| value contains the corresponding numeric value plus $2^{15}$. +@y +their |equiv| value contains the corresponding numeric value plus $2^{30}$. +@z + +@x [47] Add parametric2 macros (macros that use [] to delimit arguments). +\yskip\hang |parametric| identifiers have been defined to be parametric macros; +like simple identifiers, their |equiv| value points to the replacement text. +@y +\yskip\hang |parametric| and |parametric2| identifiers have been defined to +be parametric macros; like simple identifiers, their |equiv| value points to +the replacement text. +@z +@x +@d parametric=3 {parametric macros have |parametric| ilk} +@y +@d parametric=3 {parametric macros have |parametric| ilk} +@d parametric2=4 {second type of parametric macros have this |ilk|} +@z + +@x [50] unambig_length is a variabe now +@!chopped_id:array [0..unambig_length] of ASCII_code; {chopped identifier} +@y +@!chopped_id:array [0..max_id_length] of ASCII_code; {chopped identifier} +@z + +@x [53] Add parametric2 macros (macros that use [] to delimit arguments). +|numeric|, |simple|, or |parametric|. +@y +|numeric|, |simple|, |parametric|, or |parametric2|. +@z + +@x [53] unambig_length is a variable. +@!s:0..unambig_length; {index into |chopped_id|} +@y +@!s:0..max_id_length; {index into |chopped_id|} +@z + +@x [58] Case smashing options/strict checking. + begin if buffer[i]<>"_" then + begin if buffer[i]>="a" then chopped_id[s]:=buffer[i]-@'40 +@y + begin if (buffer[i]<>"_") or (allow_underlines and not strict_mode) then + begin if (strict_mode or force_uppercase) and (buffer[i]>="a") then + chopped_id[s]:=buffer[i]-@'40 + else if (not strict_mode and force_lowercase) + and (buffer[i]>="A") and (buffer[i]<="Z") then + chopped_id[s]:=buffer[i]+@'40 +@z + +@x [63] Case smashing options/strict checking. + if c<>"_" then + begin if c>="a" then c:=c-@'40; {merge lowercase with uppercase} +@y + if c<>"_" or (allow_underlines and not strict_mode) then + begin if (strict_mode or force_uppercase) and (c>="a") then c:=c-@'40 + else if (not strict_mode and force_lowercase) + and (c>="A") and (c<="Z") then + c:=c+@'40; +@z + +@x [64] Delayed pool file opening / larger numerics. +@<Define and output a new string...@>= +begin ilk[p]:=numeric; {strings are like numeric macros} +if l-double_chars=2 then {this string is for a single character} + equiv[p]:=buffer[id_first+1]+@'100000 +else begin equiv[p]:=string_ptr+@'100000; + l:=l-double_chars-1; +@y +@<Define and output a new string...@>= +begin ilk[p]:=numeric; {strings are like numeric macros} +if l-double_chars=2 then {this string is for a single character} + equiv[p]:=buffer[id_first+1]+@'10000000000 +else begin + {Avoid creating empty pool files.} + if string_ptr = 256 then begin + {Change |".web"| to |".pool"| and use the current directory.} + pool_name := basename_change_suffix (web_name, '.web', '.pool'); + rewritebin (pool, pool_name); + end; + equiv[p]:=string_ptr+@'10000000000; + l:=l-double_chars-1; +@z + +@x [85] Add parametric2 macros (macros that use [] to delimit arguments). + begin if ilk[cur_name]=parametric then +@y + begin if (ilk[cur_name]=parametric) or (ilk[cur_name]=parametric2) then +@z + +@x [89] Larger numerics. +numeric: begin cur_val:=equiv[a]-@'100000; a:=number; +@y +numeric: begin cur_val:=equiv[a]-@'10000000000; a:=number; +@z + +@x [89] Add parametric2 macros (macros that use [] to delimit arguments). +parametric: begin @<Put a parameter on the parameter stack, +@y +parametric,parametric2: begin @<Put a parameter on the parameter stack, +@z + +@x [90] Add parametric2 macros (macros that use [] to delimit arguments). +if (stack_ptr=0)or(tok_mem[zo,cur_byte]<>"(") then +@y +if (stack_ptr=0)or((ilk[a]=parametric)and(tok_mem[zo,cur_byte]<>"(")) + or((ilk[a]=parametric2)and(tok_mem[zo,cur_byte]<>"[")) then +@z + +@x [93] Add parametric2 macros (macros that use [] to delimit arguments). +bal:=1; incr(cur_byte); {skip the opening `\.('} +@y +bal:=1; incr(cur_byte); {skip the opening `\.(' or `['} +@z +@x + "(": incr(bal); + ")": begin decr(bal); +@y + "(": if ilk[a]=parametric then incr(bal); + ")": if ilk[a]=parametric then begin decr(bal); + if bal=0 then goto done; + end; + "[": if ilk[a]=parametric2 then incr(bal); + "]": if ilk[a]=parametric2 then begin decr(bal); +@z + +@x [105] Accept DIV, div, MOD, and mod + (((out_contrib[1]="D")and(out_contrib[2]="I")and(out_contrib[3]="V")) or@| + ((out_contrib[1]="M")and(out_contrib[2]="O")and(out_contrib[3]="D")) ))or@| +@^uppercase@> +@y + (((out_contrib[1]="D")and(out_contrib[2]="I")and(out_contrib[3]="V")) or@| + ((out_contrib[1]="d")and(out_contrib[2]="i")and(out_contrib[3]="v")) or@| + ((out_contrib[1]="M")and(out_contrib[2]="O")and(out_contrib[3]="D")) or@| + ((out_contrib[1]="m")and(out_contrib[2]="o")and(out_contrib[3]="d")) ))or@| +@z + +@x [110] lowercase ids +@^uppercase@> + if ((out_buf[out_ptr-3]="D")and(out_buf[out_ptr-2]="I")and + (out_buf[out_ptr-1]="V"))or @/ + ((out_buf[out_ptr-3]="M")and(out_buf[out_ptr-2]="O")and + (out_buf[out_ptr-1]="D")) then@/ goto bad_case +@y + if ((out_buf[out_ptr-3]="D")and(out_buf[out_ptr-2]="I")and + (out_buf[out_ptr-1]="V"))or @/ + ((out_buf[out_ptr-3]="d")and(out_buf[out_ptr-2]="i")and + (out_buf[out_ptr-1]="v"))or @/ + ((out_buf[out_ptr-3]="M")and(out_buf[out_ptr-2]="O")and + (out_buf[out_ptr-1]="D"))or @/ + ((out_buf[out_ptr-3]="m")and(out_buf[out_ptr-2]="o")and + (out_buf[out_ptr-1]="d")) then@/ goto bad_case +@z + +@x [114] lowercase operators (`and', `or', etc.) +and_sign: begin out_contrib[1]:="A"; out_contrib[2]:="N"; out_contrib[3]:="D"; +@^uppercase@> + send_out(ident,3); + end; +not_sign: begin out_contrib[1]:="N"; out_contrib[2]:="O"; out_contrib[3]:="T"; + send_out(ident,3); + end; +set_element_sign: begin out_contrib[1]:="I"; out_contrib[2]:="N"; + send_out(ident,2); + end; +or_sign: begin out_contrib[1]:="O"; out_contrib[2]:="R"; send_out(ident,2); +@y +and_sign: begin out_contrib[1]:="a"; out_contrib[2]:="n"; out_contrib[3]:="d"; + send_out(ident,3); + end; +not_sign: begin out_contrib[1]:="n"; out_contrib[2]:="o"; out_contrib[3]:="t"; + send_out(ident,3); + end; +set_element_sign: begin out_contrib[1]:="i"; out_contrib[2]:="n"; + send_out(ident,2); + end; +or_sign: begin out_contrib[1]:="o"; out_contrib[2]:="r"; send_out(ident,2); +@z + +@x [116] Case smashing options. +@ Single-character identifiers represent themselves, while longer ones +appear in |byte_mem|. All must be converted to uppercase, +with underlines removed. Extremely long identifiers must be chopped. + +(Some \PASCAL\ compilers work with lowercase letters instead of +uppercase. If this module of \.{TANGLE} is changed, it's also necessary +to change from uppercase to lowercase in the modules that are +listed in the index under ``uppercase''.) +@^system dependencies@> +@^uppercase@> + +@d up_to(#)==#-24,#-23,#-22,#-21,#-20,#-19,#-18,#-17,#-16,#-15,#-14, + #-13,#-12,#-11,#-10,#-9,#-8,#-7,#-6,#-5,#-4,#-3,#-2,#-1,# + +@<Cases related to identifiers@>= +"A",up_to("Z"): begin out_contrib[1]:=cur_char; send_out(ident,1); + end; +"a",up_to("z"): begin out_contrib[1]:=cur_char-@'40; send_out(ident,1); + end; +identifier: begin k:=0; j:=byte_start[cur_val]; w:=cur_val mod ww; + while (k<max_id_length)and(j<byte_start[cur_val+ww]) do + begin incr(k); out_contrib[k]:=byte_mem[w,j]; incr(j); + if out_contrib[k]>="a" then out_contrib[k]:=out_contrib[k]-@'40 + else if out_contrib[k]="_" then decr(k); + end; + send_out(ident,k); + end; +@y +@ Single-character identifiers represent themselves, while longer ones +appear in |byte_mem|. All must be converted to lowercase, +with underlines removed. Extremely long identifiers must be chopped. +@^system dependencies@> + +@d up_to(#)==#-24,#-23,#-22,#-21,#-20,#-19,#-18,#-17,#-16,#-15,#-14, + #-13,#-12,#-11,#-10,#-9,#-8,#-7,#-6,#-5,#-4,#-3,#-2,#-1,# + +@<Cases related to identifiers@>= +"A",up_to("Z"): begin if force_lowercase then out_contrib[1]:=cur_char+@'40 + else out_contrib[1]:=cur_char; + send_out(ident,1); + end; +"a",up_to("z"): begin if force_uppercase then out_contrib[1]:=cur_char-@'40 + else out_contrib[1]:=cur_char; + send_out(ident,1); + end; +identifier: begin k:=0; j:=byte_start[cur_val]; w:=cur_val mod ww; + while (k<max_id_length)and(j<byte_start[cur_val+ww]) do + begin incr(k); out_contrib[k]:=byte_mem[w,j]; incr(j); + if force_uppercase and (out_contrib[k]>="a") then + out_contrib[k]:=out_contrib[k]-@'40 + else if force_lowercase and (out_contrib[k]<="Z") then + out_contrib[k]:=out_contrib[k]+@'40 + else if not allow_underlines and (out_contrib[k]="_") then decr(k); + end; + send_out(ident,k); + end; +@z + +@x [119] Stretch limits of constants to match what we set for expressions. + if n>=@'2000000000 then err_print('! Constant too big') +@y + if n>=@'10000000000 then err_print('! Constant too big') +@z +@x + if n>=@"8000000 then err_print('! Constant too big') +@y + if n>=@"40000000 then err_print('! Constant too big') +@z + +@x [157] Larger numerics. +if abs(accumulator)>=@'100000 then +@y +if abs(accumulator)>=@'10000000000 then +@z + +@x [157] Larger numerics. +equiv[p]:=accumulator+@'100000; {name |p| now is defined to equal |accumulator|} +@y +equiv[p]:=accumulator+@'10000000000; {name |p| now is defined to equal |accumulator|} +@z + +@x [158] Larger numerics. + add_in(equiv[q]-@'100000); +@y + add_in(equiv[q]-@'10000000000); +@z + +@x [165] Add parametric2 macros (macros that use [] to delimit arguments). + "(": incr(bal); + ")": if bal=0 then err_print('! Extra )') +@.Extra )@> + else decr(bal); + "'": @<Copy a string from the buffer to |tok_mem|@>; + "#": if t=parametric then a:=param; +@y + "(": if t=parametric then incr(bal); + ")": if t=parametric then if bal=0 then err_print('! Extra )') +@.Extra )@> + else decr(bal); + "[": if t=parametric2 then incr(bal); + "]": if t=parametric2 then if bal=0 then err_print('! Extra ]') +@.Extra ]@> + else decr(bal); + "'": @<Copy a string from the buffer to |tok_mem|@>; + "#": if (t=parametric)or(t=parametric2) then a:=param; +@z + +@x [166] Add parametric2 macros (macros that use [] to delimit arguments). + begin if bal=1 then err_print('! Missing )') + else err_print('! Missing ',bal:1,' )''s'); +@.Missing n )@> + while bal>0 do + begin app_repl(")"); decr(bal); + end; + end +@y + if t=parametric then begin + if bal=1 then err_print('! Missing )') + else err_print('! Missing ',bal:1,' )''s'); +@.Missing n )@> + while bal>0 do + begin app_repl(")"); decr(bal); + end; + end + else begin + if bal=1 then err_print('! Missing ]') + else err_print('! Missing ',bal:1,' ]''s'); +@.Missing n ]@> + while bal>0 do + begin app_repl("]"); decr(bal); + end; + end +@z + +@x [173] Add parametric2 macros (macros that use [] to delimit arguments). + else @<If the next text is `|(#)==|', call |define_macro| + and |goto continue|@>; +@y + else @<If the next text is `|(#)==|' or |[#]==|, call |define_macro| + and |goto continue|@>; +@z + +@x [174] Add parametric2 macros (macros that use [] to delimit arguments). +@ @<If the next text is `|(#)==|'...@>= +if next_control="(" then + begin next_control:=get_next; + if next_control="#" then + begin next_control:=get_next; + if next_control=")" then + begin next_control:=get_next; + if next_control="=" then + begin err_print('! Use == for macros'); +@.Use == for macros@> + next_control:=equivalence_sign; + end; + if next_control=equivalence_sign then + begin define_macro(parametric); goto continue; + end; + end; + end; + end; +@y +@ @<If the next text is `|(#)==|'...@>= +if next_control="(" then + begin next_control:=get_next; + if next_control="#" then + begin next_control:=get_next; + if next_control=")" then + begin next_control:=get_next; + if next_control="=" then + begin err_print('! Use == for macros'); +@.Use == for macros@> + next_control:=equivalence_sign; + end; + if next_control=equivalence_sign then + begin define_macro(parametric); goto continue; + end; + end; + end; + end +else if next_control="[" then + begin next_control:=get_next; + if next_control="#" then + begin next_control:=get_next; + if next_control="]" then + begin next_control:=get_next; + if next_control="=" then + begin err_print('! Use == for macros'); +@.Use == for macros@> + next_control:=equivalence_sign; + end; + if next_control=equivalence_sign then + begin define_macro(parametric2); goto continue; + end; + end; + end; + end +@z + +@x [179] make term_in = input +any error stop will set |debug_cycle| to zero. +@y +any error stop will set |debug_cycle| to zero. + +@d term_in==stdin +@z + +@x +@!term_in:text_file; {the user's terminal as an input file} +@y +@z + +@x [180] remove term_in reset +reset(term_in,'TTY:','/I'); {open |term_in| as the terminal, don't do a |get|} +@y +@z + +@x [182] write newline just before exit; use value of |history| +print_ln(banner); {print a ``banner line''} +@y +print (banner); {print a ``banner line''} +print_ln (version_string); +@z + +@x Eliminate the |end_of_TANGLE| label. +end_of_TANGLE: +@y +@z + +@x +@<Print the job |history|@>; +@y +@<Print the job |history|@>; +new_line; +if (history <> spotless) and (history <> harmless_message) +then uexit (1) +else uexit (0); +@z + +@x [188] System-dependent changes. +This module should be replaced, if necessary, by changes to the program +that are necessary to make \.{TANGLE} work at a particular installation. +It is usually best to design your change file so that all changes to +previous modules preserve the module numbering; then everybody's version +will be consistent with the printed program. More extensive changes, +which introduce new modules, can be inserted here; then only the index +itself will get a new module number. +@^system dependencies@> +@y +Parse a Unix-style command line. + +@d argument_is (#) == (strcmp (long_options[option_index].name, #) = 0) + +@<Define |parse_arguments|@> = +procedure parse_arguments; +const n_options = 10; {Pascal won't count array lengths for us.} +var @!long_options: array[0..n_options] of getopt_struct; + @!getopt_return_val: integer; + @!option_index: c_int_type; + @!current_option: 0..n_options; + @!len: integer; +begin + @<Define the option table@>; + unambig_length := def_unambig_length; + repeat + getopt_return_val := getopt_long_only (argc, argv, '', long_options, + address_of (option_index)); + if getopt_return_val = -1 then begin + {End of arguments; we exit the loop below.} ; + + end else if getopt_return_val = "?" then begin + usage (my_name); + + end else if argument_is ('help') then begin + usage_help (TANGLE_HELP, nil); + + end else if argument_is ('version') then begin + print_version_and_exit (banner, nil, 'D.E. Knuth', nil); + + end else if argument_is ('mixedcase') then begin + force_uppercase := false; + force_lowercase := false; + + end else if argument_is ('uppercase') then begin + force_uppercase := true; + force_lowercase := false; + + end else if argument_is ('lowercase') then begin + force_uppercase := false; + force_lowercase := true; + + end else if argument_is ('underlines') then begin + allow_underlines := true; + + end else if argument_is ('strict') then begin + strict_mode := true; + + end else if argument_is ('loose') then begin + strict_mode := false; + + end else if argument_is ('length') then begin + len := atoi(optarg); + if (len<=0) or (len>max_id_length) then len := max_id_length; + unambig_length := len; + + end; {Else it was a flag; |getopt| has already done the assignment.} + until getopt_return_val = -1; + + {Now |optind| is the index of first non-option on the command line.} + if (optind + 1 <> argc) and (optind + 2 <> argc) then begin + write_ln (stderr, my_name, ': Need one or two file arguments.'); + usage (my_name); + end; + + {Supply |".web"| and |".ch"| extensions if necessary.} + web_name := extend_filename (cmdline (optind), 'web'); + if optind + 2 = argc then begin + chg_name := extend_filename (cmdline (optind + 1), 'ch'); + end; + + {Change |".web"| to |".p"| and use the current directory.} + pascal_name := basename_change_suffix (web_name, '.web', '.p'); +end; + +@ Here are the options we allow. The first is one of the standard GNU options. +@.-help@> + +@<Define the option...@> = +current_option := 0; +long_options[current_option].name := 'help'; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ Another of the standard options. +@.-version@> + +@<Define the option...@> = +long_options[current_option].name := 'version'; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ Use all mixed case. +@.-mixedcase@> + +@<Define the option...@> = +long_options[current_option].name := 'mixedcase'; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ Use all uppercase. +@.-uppercase@> + +@<Define the option...@> = +long_options[current_option].name := 'uppercase'; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ Use all lowercase. +@.-lowercase@> + +@<Define the option...@> = +long_options[current_option].name := 'lowercase'; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ Allow underlines. +@.-underlines@> + +@<Define the option...@> = +long_options[current_option].name := 'underlines'; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ Strict comparisions. +@.-strict@> + +@<Define the option...@> = +long_options[current_option].name := 'strict'; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ Loose comparisions. +@.-loose@> + +@<Define the option...@> = +long_options[current_option].name := 'loose'; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ Loose comparisions. +@.-length@> + +@<Define the option...@> = +long_options[current_option].name := 'length'; +long_options[current_option].has_arg := 1; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; +incr (current_option); + +@ An element with all zeros always ends the list. + +@<Define the option...@> = +long_options[current_option].name := 0; +long_options[current_option].has_arg := 0; +long_options[current_option].flag := 0; +long_options[current_option].val := 0; + +@ Global filenames. + +@<Globals...@>= +@!web_name,@!chg_name,@!pascal_name,@!pool_name:const_c_string; +@!force_uppercase,@!force_lowercase,@!allow_underlines,@!strict_mode:boolean; +@!unambig_length:0..max_id_length; +@z diff --git a/source/texk/web2c/tangle.web b/source/texk/web2c/tangle.web new file mode 100644 index 000000000..8fa1c395f --- /dev/null +++ b/source/texk/web2c/tangle.web @@ -0,0 +1,3325 @@ +% This program by D. E. Knuth is not copyrighted and can be used freely. +% Version 0 was released in December, 1981. +% Version 1 was released in September, 1982, with version 0 of TeX. +% Slight changes were made in October, 1982, for version 0.6 of TeX. +% Version 1.2 introduced {:nnn} comments, added @@= and @@\ (December, 1982). +% Version 1.4 added "history" (February, 1983). +% Version 1.5 conformed to TeX version 0.96 and fixed @@\ (March, 1983). +% Version 1.7 introduced the new change file format (June, 1983). +% Version 2.0 was released in July, 1983, with version 0.999 of TeX. +% Version 2.5 was released in November, 1983, with version 1.0 of TeX. +% Version 2.6 fixed a bug: force-line-break after a constant (August, 1984). +% Version 2.7 fixed the definition of check_sum_prime (May, 1985). +% Version 2.8 fixed a bug in change_buffer movement (August, 1985). +% Version 2.9 allows nonnumeric macros before their def (December, 1988). +% Version 3, for Sewell's book, fixed long-line bug in input_ln (March, 1989). +% Version 4 was major change to allow 8-bit input (September, 1989). +% Version 4.1 conforms to ANSI standard for-loop rules (September, 1990). +% Version 4.2 fixes stat report if phase one dies (March, 1991). +% Version 4.3 fixes @@ bug in verbatim, catches extra } (September, 1991). +% Version 4.4 activates debug_help on errors as advertised (February, 1993). +% Version 4.5 prevents modno-comments from being split across lines (Dec 2002). + +% Here is TeX material that gets inserted after \input webmac +\def\hang{\hangindent 3em\indent\ignorespaces} +\font\ninerm=cmr9 +\let\mc=\ninerm % medium caps for names like SAIL +\def\PASCAL{Pascal} +\def\pb{$\.|\ldots\.|$} % Pascal brackets (|...|) +\def\v{\.{\char'174}} % vertical (|) in typewriter font +\mathchardef\BA="3224 % double arrow +\def\({} % kludge for alphabetizing certain module names + +\def\title{TANGLE} +\def\contentspagenumber{123} % should be odd +\def\topofcontents{\null\vfill + \titlefalse % include headline on the contents page + \def\rheader{\mainfont Appendix E\hfil \contentspagenumber} + \centerline{\titlefont The {\ttitlefont TANGLE} processor} + \vskip 15pt + \centerline{(Version 4.5)} + \vfill} +\pageno=\contentspagenumber \advance\pageno by 1 + +@* Introduction. +This program converts a \.{WEB} file to a \PASCAL\ file. It was written +by D. E. Knuth in September, 1981; a somewhat similar {\mc SAIL} program had +been developed in March, 1979. Since this program describes itself, a +bootstrapping process involving hand-translation had to be used to get started. + +For large \.{WEB} files one should have a large memory, since \.{TANGLE} keeps +all the \PASCAL\ text in memory (in an abbreviated form). The program uses +a few features of the local \PASCAL\ compiler that may need to be changed in +other installations: + +\yskip\item{1)} Case statements have a default. +\item{2)} Input-output routines may need to be adapted for use with a particular +character set and/or for printing messages on the user's terminal. + +\yskip\noindent +These features are also present in the \PASCAL\ version of \TeX, where they +are used in a similar (but more complex) way. System-dependent portions +of \.{TANGLE} can be identified by looking at the entries for `system +dependencies' in the index below. +@!@^system dependencies@> + +The ``banner line'' defined here should be changed whenever \.{TANGLE} +is modified. + +@d banner=='This is TANGLE, Version 4.5' + +@ The program begins with a fairly normal header, made up of pieces that +@^system dependencies@> +will mostly be filled in later. The \.{WEB} input comes from files |web_file| +and |change_file|, the \PASCAL\ output goes to file |Pascal_file|, +and the string pool output goes to file |pool|. + +If it is necessary to abort the job because of a fatal error, the program +calls the `|jump_out|' procedure, which goes to the label |end_of_TANGLE|. + +@d end_of_TANGLE = 9999 {go here to wrap it up} + +@p @t\4@>@<Compiler directives@>@/ +program TANGLE(@!web_file,@!change_file,@!Pascal_file,@!pool); +label end_of_TANGLE; {go here to finish} +const @<Constants in the outer block@>@/ +type @<Types in the outer block@>@/ +var @<Globals in the outer block@>@/ +@<Error handling procedures@>@/ +procedure initialize; + var @<Local variables for initialization@>@/ + begin @<Set initial values@>@/ + end; + +@ Some of this code is optional for use when debugging only; +such material is enclosed between the delimiters |debug| and $|gubed|$. +Other parts, delimited by |stat| and $|tats|$, are optionally included if +statistics about \.{TANGLE}'s memory usage are desired. + +@d debug==@{ {change this to `$\\{debug}\equiv\null$' when debugging} +@d gubed==@t@>@} {change this to `$\\{gubed}\equiv\null$' when debugging} +@f debug==begin +@f gubed==end +@# +@d stat==@{ {change this to `$\\{stat}\equiv\null$' + when gathering usage statistics} +@d tats==@t@>@} {change this to `$\\{tats}\equiv\null$' + when gathering usage statistics} +@f stat==begin +@f tats==end + +@ The \PASCAL\ compiler used to develop this system has ``compiler +directives'' that can appear in comments whose first character is a dollar sign. +In production versions of \.{TANGLE} these directives tell the compiler that +@^system dependencies@> +it is safe to avoid range checks and to leave out the extra code it inserts +for the \PASCAL\ debugger's benefit, although interrupts will occur if +there is arithmetic overflow. + +@<Compiler directives@>= +@{@&$C-,A+,D-@} {no range check, catch arithmetic overflow, no debug overhead} +@!debug @{@&$C+,D+@}@+ gubed {but turn everything on when debugging} + +@ Labels are given symbolic names by the following definitions. We insert +the label `|exit|:' just before the `\ignorespaces|end|\unskip' of a +procedure in which we have used the `|return|' statement defined below; +the label `|restart|' is occasionally used at the very beginning of a +procedure; and the label `|reswitch|' is occasionally used just prior to +a \&{case} statement in which some cases change the conditions and we wish to +branch to the newly applicable case. +Loops that are set up with the \&{loop} construction defined below are +commonly exited by going to `|done|' or to `|found|' or to `|not_found|', +and they are sometimes repeated by going to `|continue|'. + +@d exit=10 {go here to leave a procedure} +@d restart=20 {go here to start a procedure again} +@d reswitch=21 {go here to start a case statement again} +@d continue=22 {go here to resume a loop} +@d done=30 {go here to exit a loop} +@d found=31 {go here when you've found it} +@d not_found=32 {go here when you've found something else} + +@ Here are some macros for common programming idioms. + +@d incr(#) == #:=#+1 {increase a variable by unity} +@d decr(#) == #:=#-1 {decrease a variable by unity} +@d loop == @+ while true do@+ {repeat over and over until a |goto| happens} +@d do_nothing == {empty statement} +@d return == goto exit {terminate a procedure call} +@f return == nil +@f loop == xclause + +@ We assume that |case| statements may include a default case that applies +if no matching label is found. Thus, we shall use constructions like +@^system dependencies@> +$$\vbox{\halign{#\hfil\cr +|case x of|\cr +1: $\langle\,$code for $x=1\,\rangle$;\cr +3: $\langle\,$code for $x=3\,\rangle$;\cr +|othercases| $\langle\,$code for |x<>1| and |x<>3|$\,\rangle$\cr +|endcases|\cr}}$$ +since most \PASCAL\ compilers have plugged this hole in the language by +incorporating some sort of default mechanism. For example, the compiler +used to develop \.{WEB} and \TeX\ allows `|others|:' as a default label, +and other \PASCAL s allow syntaxes like `\ignorespaces|else|\unskip' or +`\&{otherwise}' or `\\{otherwise}:', etc. The definitions of |othercases| +and |endcases| should be changed to agree with local conventions. (Of +course, if no default mechanism is available, the |case| statements of +this program must be extended by listing all remaining cases. The author +would have taken the trouble to modify \.{TANGLE} so that such extensions +were done automatically, if he had not wanted to encourage \PASCAL\ +compiler writers to make this important change in \PASCAL, where it belongs.) + +@d othercases == others: {default for cases not listed explicitly} +@d endcases == @+end {follows the default case in an extended |case| statement} +@f othercases == else +@f endcases == end + +@ The following parameters are set big enough to handle \TeX, so they +should be sufficient for most applications of \.{TANGLE}. + +@<Constants...@>= +@!buf_size=100; {maximum length of input line} +@!max_bytes=45000; {|1/ww| times the number of bytes in identifiers, + strings, and module names; must be less than 65536} +@!max_toks=50000; {|1/zz| times the number of bytes in compressed \PASCAL\ code; + must be less than 65536} +@!max_names=4000; {number of identifiers, strings, module names; + must be less than 10240} +@!max_texts=2000; {number of replacement texts, must be less than 10240} +@!hash_size=353; {should be prime} +@!longest_name=400; {module names shouldn't be longer than this} +@!line_length=72; {lines of \PASCAL\ output have at most this many characters} +@!out_buf_size=144; {length of output buffer, should be twice |line_length|} +@!stack_size=50; {number of simultaneous levels of macro expansion} +@!max_id_length=12; {long identifiers are chopped to this length, which must + not exceed |line_length|} +@!unambig_length=7; {identifiers must be unique if chopped to this length} + {note that 7 is more strict than \PASCAL's 8, but this can be varied} + +@ A global variable called |history| will contain one of four values +at the end of every run: |spotless| means that no unusual messages were +printed; |harmless_message| means that a message of possible interest +was printed but no serious errors were detected; |error_message| means that +at least one error was found; |fatal_message| means that the program +terminated abnormally. The value of |history| does not influence the +behavior of the program; it is simply computed for the convenience +of systems that might want to use such information. + +@d spotless=0 {|history| value for normal jobs} +@d harmless_message=1 {|history| value when non-serious info was printed} +@d error_message=2 {|history| value when an error was noted} +@d fatal_message=3 {|history| value when we had to stop prematurely} +@# +@d mark_harmless==@t@>@+if history=spotless then history:=harmless_message +@d mark_error==history:=error_message +@d mark_fatal==history:=fatal_message + +@<Glob...@>=@!history:spotless..fatal_message; {how bad was this run?} + +@ @<Set init...@>=history:=spotless; + +@* The character set. +One of the main goals in the design of \.{WEB} has been to make it readily +portable between a wide variety of computers. Yet \.{WEB} by its very +nature must use a greater variety of characters than most computer +programs deal with, and character encoding is one of the areas in which +existing machines differ most widely from each other. + +To resolve this problem, all input to \.{WEAVE} and \.{TANGLE} is converted +to an internal eight-bit code that is essentially standard ASCII, the ``American +Standard Code for Information Interchange.'' The conversion is done +immediately when each character is read in. Conversely, characters are +converted from ASCII to the user's external representation just before +they are output. (The original ASCII code was seven bits only; \.{WEB} now +allows eight bits in an attempt to keep up with modern times.) + +Such an internal code is relevant to users of \.{WEB} only because it is +the code used for preprocessed constants like \.{"A"}. If you are writing +a program in \.{WEB} that makes use of such one-character constants, you +should convert your input to ASCII form, like \.{WEAVE} and \.{TANGLE} do. +Otherwise \.{WEB}'s internal coding scheme does not affect you. +@^ASCII code@> + +Here is a table of the standard visible ASCII codes: +$$\def\:{\char\count255\global\advance\count255 by 1} +\count255='40 +\vbox{ +\hbox{\hbox to 40pt{\it\hfill0\/\hfill}% +\hbox to 40pt{\it\hfill1\/\hfill}% +\hbox to 40pt{\it\hfill2\/\hfill}% +\hbox to 40pt{\it\hfill3\/\hfill}% +\hbox to 40pt{\it\hfill4\/\hfill}% +\hbox to 40pt{\it\hfill5\/\hfill}% +\hbox to 40pt{\it\hfill6\/\hfill}% +\hbox to 40pt{\it\hfill7\/\hfill}} +\vskip 4pt +\hrule +\def\^{\vrule height 10.5pt depth 4.5pt} +\halign{\hbox to 0pt{\hskip -24pt\O{#0}\hfill}&\^ +\hbox to 40pt{\tt\hfill#\hfill\^}& +&\hbox to 40pt{\tt\hfill#\hfill\^}\cr +04&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +05&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +06&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +07&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +10&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +11&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +12&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +13&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +14&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +15&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +16&\:&\:&\:&\:&\:&\:&\:&\:\cr\noalign{\hrule} +17&\:&\:&\:&\:&\:&\:&\:\cr} +\hrule width 280pt}$$ +(Actually, of course, code @'040 is an invisible blank space.) Code @'136 +was once an upward arrow (\.{\char'13}), and code @'137 was +once a left arrow (\.^^X), in olden times when the first draft +of ASCII code was prepared; but \.{WEB} works with today's standard +ASCII in which those codes represent circumflex and underline as shown. + +@<Types...@>= +@!ASCII_code=0..255; {eight-bit numbers, a subrange of the integers} + +@ The original \PASCAL\ compiler was designed in the late 60s, when six-bit +character sets were common, so it did not make provision for lowercase +letters. Nowadays, of course, we need to deal with both capital and small +letters in a convenient way, so \.{WEB} assumes that it is being used +with a \PASCAL\ whose character set contains at least the characters of +standard ASCII as listed above. Some \PASCAL\ compilers use the original +name |char| for the data type associated with the characters in text files, +while other \PASCAL s consider |char| to be a 64-element subrange of a larger +data type that has some other name. + +In order to accommodate this difference, we shall use the name |text_char| +to stand for the data type of the characters in the input and output +files. We shall also assume that |text_char| consists of the elements +|chr(first_text_char)| through |chr(last_text_char)|, inclusive. The +following definitions should be adjusted if necessary. +@^system dependencies@> + +@d text_char == char {the data type of characters in text files} +@d first_text_char=0 {ordinal number of the smallest element of |text_char|} +@d last_text_char=255 {ordinal number of the largest element of |text_char|} + +@<Types...@>= +@!text_file=packed file of text_char; + +@ The \.{WEAVE} and \.{TANGLE} processors convert between ASCII code and +the user's external character set by means of arrays |xord| and |xchr| +that are analogous to \PASCAL's |ord| and |chr| functions. + +@<Globals...@>= +@!xord: array [text_char] of ASCII_code; + {specifies conversion of input characters} +@!xchr: array [ASCII_code] of text_char; + {specifies conversion of output characters} + +@ If we assume that every system using \.{WEB} is able to read and write the +visible characters of standard ASCII (although not necessarily using the +ASCII codes to represent them), the following assignment statements initialize +most of the |xchr| array properly, without needing any system-dependent +changes. For example, the statement \.{xchr[@@\'101]:=\'A\'} that appears +in the present \.{WEB} file might be encoded in, say, {\mc EBCDIC} code +on the external medium on which it resides, but \.{TANGLE} will convert from +this external code to ASCII and back again. Therefore the assignment +statement \.{XCHR[65]:=\'A\'} will appear in the corresponding \PASCAL\ file, +and \PASCAL\ will compile this statement so that |xchr[65]| receives the +character \.A in the external (|char|) code. Note that it would be quite +incorrect to say \.{xchr[@@\'101]:="A"}, because |"A"| is a constant of +type |integer|, not |char|, and because we have $|"A"|=65$ regardless of +the external character set. + +@<Set init...@>= +xchr[@'40]:=' '; +xchr[@'41]:='!'; +xchr[@'42]:='"'; +xchr[@'43]:='#'; +xchr[@'44]:='$'; +xchr[@'45]:='%'; +xchr[@'46]:='&'; +xchr[@'47]:='''';@/ +xchr[@'50]:='('; +xchr[@'51]:=')'; +xchr[@'52]:='*'; +xchr[@'53]:='+'; +xchr[@'54]:=','; +xchr[@'55]:='-'; +xchr[@'56]:='.'; +xchr[@'57]:='/';@/ +xchr[@'60]:='0'; +xchr[@'61]:='1'; +xchr[@'62]:='2'; +xchr[@'63]:='3'; +xchr[@'64]:='4'; +xchr[@'65]:='5'; +xchr[@'66]:='6'; +xchr[@'67]:='7';@/ +xchr[@'70]:='8'; +xchr[@'71]:='9'; +xchr[@'72]:=':'; +xchr[@'73]:=';'; +xchr[@'74]:='<'; +xchr[@'75]:='='; +xchr[@'76]:='>'; +xchr[@'77]:='?';@/ +xchr[@'100]:='@@'; +xchr[@'101]:='A'; +xchr[@'102]:='B'; +xchr[@'103]:='C'; +xchr[@'104]:='D'; +xchr[@'105]:='E'; +xchr[@'106]:='F'; +xchr[@'107]:='G';@/ +xchr[@'110]:='H'; +xchr[@'111]:='I'; +xchr[@'112]:='J'; +xchr[@'113]:='K'; +xchr[@'114]:='L'; +xchr[@'115]:='M'; +xchr[@'116]:='N'; +xchr[@'117]:='O';@/ +xchr[@'120]:='P'; +xchr[@'121]:='Q'; +xchr[@'122]:='R'; +xchr[@'123]:='S'; +xchr[@'124]:='T'; +xchr[@'125]:='U'; +xchr[@'126]:='V'; +xchr[@'127]:='W';@/ +xchr[@'130]:='X'; +xchr[@'131]:='Y'; +xchr[@'132]:='Z'; +xchr[@'133]:='['; +xchr[@'134]:='\'; +xchr[@'135]:=']'; +xchr[@'136]:='^'; +xchr[@'137]:='_';@/ +xchr[@'140]:='`'; +xchr[@'141]:='a'; +xchr[@'142]:='b'; +xchr[@'143]:='c'; +xchr[@'144]:='d'; +xchr[@'145]:='e'; +xchr[@'146]:='f'; +xchr[@'147]:='g';@/ +xchr[@'150]:='h'; +xchr[@'151]:='i'; +xchr[@'152]:='j'; +xchr[@'153]:='k'; +xchr[@'154]:='l'; +xchr[@'155]:='m'; +xchr[@'156]:='n'; +xchr[@'157]:='o';@/ +xchr[@'160]:='p'; +xchr[@'161]:='q'; +xchr[@'162]:='r'; +xchr[@'163]:='s'; +xchr[@'164]:='t'; +xchr[@'165]:='u'; +xchr[@'166]:='v'; +xchr[@'167]:='w';@/ +xchr[@'170]:='x'; +xchr[@'171]:='y'; +xchr[@'172]:='z'; +xchr[@'173]:='{'; +xchr[@'174]:='|'; +xchr[@'175]:='}'; +xchr[@'176]:='~';@/ +xchr[0]:=' '; xchr[@'177]:=' '; {these ASCII codes are not used} + +@ Some of the ASCII codes below @'40 have been given symbolic names in +\.{WEAVE} and \.{TANGLE} because they are used with a special meaning. + +@d and_sign=@'4 {equivalent to `\.{and}'} +@d not_sign=@'5 {equivalent to `\.{not}'} +@d set_element_sign=@'6 {equivalent to `\.{in}'} +@d tab_mark=@'11 {ASCII code used as tab-skip} +@d line_feed=@'12 {ASCII code thrown away at end of line} +@d form_feed=@'14 {ASCII code used at end of page} +@d carriage_return=@'15 {ASCII code used at end of line} +@d left_arrow=@'30 {equivalent to `\.{:=}'} +@d not_equal=@'32 {equivalent to `\.{<>}'} +@d less_or_equal=@'34 {equivalent to `\.{<=}'} +@d greater_or_equal=@'35 {equivalent to `\.{>=}'} +@d equivalence_sign=@'36 {equivalent to `\.{==}'} +@d or_sign=@'37 {equivalent to `\.{or}'} + +@ When we initialize the |xord| array and the remaining parts of |xchr|, +it will be convenient to make use of an index variable, |i|. + +@<Local variables for init...@>= +@!i:0..255; + +@ Here now is the system-dependent part of the character set. +If \.{WEB} is being implemented on a garden-variety \PASCAL\ for which +only standard ASCII codes will appear in the input and output files, you +don't need to make any changes here. But if you have, for example, an extended +character set like the one in Appendix~C of {\sl The \TeX book}, the first +line of code in this module should be changed to +$$\hbox{|for i:=1 to @'37 do xchr[i]:=chr(i);|}$$ +\.{WEB}'s character set is essentially identical to \TeX's, even with respect to +characters less than @'40. +@^system dependencies@> + +Changes to the present module will make \.{WEB} more friendly on computers +that have an extended character set, so that one can type things like +\.^^Z\ instead of \.{<>}. If you have an extended set of characters that +are easily incorporated into text files, you can assign codes arbitrarily +here, giving an |xchr| equivalent to whatever characters the users of +\.{WEB} are allowed to have in their input files, provided that unsuitable +characters do not correspond to special codes like |carriage_return| +that are listed above. + +(The present file \.{TANGLE.WEB} does not contain any of the non-ASCII +characters, because it is intended to be used with all implementations of +\.{WEB}. It was originally created on a Stanford system that has a +convenient extended character set, then ``sanitized'' by applying another +program that transliterated all of the non-standard characters into +standard equivalents.) + +@<Set init...@>= +for i:=1 to @'37 do xchr[i]:=' '; +for i:=@'200 to @'377 do xchr[i]:=' '; + +@ The following system-independent code makes the |xord| array contain a +suitable inverse to the information in |xchr|. + +@<Set init...@>= +for i:=first_text_char to last_text_char do xord[chr(i)]:=" "; +for i:=1 to @'377 do xord[xchr[i]]:=i; +xord[' ']:=" "; + +@* Input and output. +The input conventions of this program are intended to be very much like those +of \TeX\ (except, of course, that they are much simpler, because much less +needs to be done). Furthermore they are identical to those of \.{WEAVE}. +Therefore people who need to make modifications to all three systems +should be able to do so without too many headaches. + +We use the standard \PASCAL\ input/output procedures in several places that +\TeX\ cannot, since \.{TANGLE} does not have to deal with files that are named +dynamically by the user, and since there is no input from the terminal. + +@ Terminal output is done by writing on file |term_out|, which is assumed to +consist of characters of type |text_char|: +@^system dependencies@> + +@d print(#)==write(term_out,#) {`|print|' means write on the terminal} +@d print_ln(#)==write_ln(term_out,#) {`|print|' and then start new line} +@d new_line==write_ln(term_out) {start new line} +@d print_nl(#)== {print information starting on a new line} + begin new_line; print(#); + end + +@<Globals...@>= +@!term_out:text_file; {the terminal as an output file} + +@ Different systems have different ways of specifying that the output on a +certain file will appear on the user's terminal. Here is one way to do this +on the \PASCAL\ system that was used in \.{TANGLE}'s initial development: +@^system dependencies@> + +@<Set init...@>= +rewrite(term_out,'TTY:'); {send |term_out| output to the terminal} + +@ The |update_terminal| procedure is called when we want +to make sure that everything we have output to the terminal so far has +actually left the computer's internal buffers and been sent. +@^system dependencies@> + +@d update_terminal == break(term_out) {empty the terminal output buffer} + +@ The main input comes from |web_file|; this input may be overridden +by changes in |change_file|. (If |change_file| is empty, there are no changes.) + +@<Globals...@>= +@!web_file:text_file; {primary input} +@!change_file:text_file; {updates} + +@ The following code opens the input files. Since these files were listed +in the program header, we assume that the \PASCAL\ runtime system has +already checked that suitable file names have been given; therefore no +additional error checking needs to be done. +@^system dependencies@> + +@p procedure open_input; {prepare to read |web_file| and |change_file|} +begin reset(web_file); reset(change_file); +end; + +@ The main output goes to |Pascal_file|, and string pool constants are +written to the |pool| file. + +@<Globals...@>= +@!Pascal_file: text_file; +@!pool: text_file; + +@ The following code opens |Pascal_file| and |pool|. +Since these files were listed in the program header, we assume that the +\PASCAL\ runtime system has checked that suitable external file names have +been given. +@^system dependencies@> + +@<Set init...@>= +rewrite(Pascal_file); rewrite(pool); + +@ Input goes into an array called |buffer|. + +@<Globals...@>=@!buffer: array[0..buf_size] of ASCII_code; + +@ The |input_ln| procedure brings the next line of input from the specified +file into the |buffer| array and returns the value |true|, unless the file has +already been entirely read, in which case it returns |false|. The conventions +of \TeX\ are followed; i.e., |ASCII_code| numbers representing the next line +of the file are input into |buffer[0]|, |buffer[1]|, \dots, +|buffer[limit-1]|; trailing blanks are ignored; +and the global variable |limit| is set to the length of the +@^system dependencies@> +line. The value of |limit| must be strictly less than |buf_size|. + +We assume that none of the |ASCII_code| values +of |buffer[j]| for |0<=j<limit| is equal to 0, @'177, |line_feed|, |form_feed|, +or |carriage_return|. + +@p function input_ln(var f:text_file):boolean; + {inputs a line or returns |false|} +var final_limit:0..buf_size; {|limit| without trailing blanks} +begin limit:=0; final_limit:=0; +if eof(f) then input_ln:=false +else begin while not eoln(f) do + begin buffer[limit]:=xord[f^]; get(f); + incr(limit); + if buffer[limit-1]<>" " then final_limit:=limit; + if limit=buf_size then + begin while not eoln(f) do get(f); + decr(limit); {keep |buffer[buf_size]| empty} + if final_limit>limit then final_limit:=limit; + print_nl('! Input line too long'); loc:=0; error; +@.Input line too long@> + end; + end; + read_ln(f); limit:=final_limit; input_ln:=true; + end; +end; + +@* Reporting errors to the user. +The \.{TANGLE} processor operates in two phases: first it inputs the source +file and stores a compressed representation of the program, then it produces +the \PASCAL\ output from the compressed representation. + +The global variable |phase_one| tells whether we are in Phase I or not. + +@<Globals...@>= +@!phase_one: boolean; {|true| in Phase I, |false| in Phase II} + +@ If an error is detected while we are debugging, +we usually want to look at the contents of memory. +A special procedure will be declared later for this purpose. + +@<Error handling...@>= +@!debug @+ procedure debug_help; forward;@+ gubed + +@ During the first phase, syntax errors are reported to the user by saying +$$\hbox{`|err_print('! Error message')|'},$$ +followed by `|jump_out|' if no recovery from the error is provided. +This will print the error message followed by an indication of where the error +was spotted in the source file. Note that no period follows the error message, +since the error routine will automatically supply a period. + +Errors that are noticed during the second phase are reported to the user +in the same fashion, but the error message will be +followed by an indication of where the error was spotted in the output file. + +The actual error indications are provided by a procedure called |error|. + +@d err_print(#)==begin new_line; print(#); error; + end + +@<Error handling...@>= +procedure error; {prints '\..' and location of error message} +var j: 0..out_buf_size; {index into |out_buf|} +@!k,@!l: 0..buf_size; {indices into |buffer|} +begin if phase_one then @<Print error location based on input buffer@> +else @<Print error location based on output buffer@>; +update_terminal; mark_error; +@!debug debug_skipped:=debug_cycle; debug_help;@+gubed +end; + +@ The error locations during Phase I can be indicated by using the global +variables |loc|, |line|, and |changing|, which tell respectively the first +unlooked-at position in |buffer|, the current line number, and whether or not +the current line is from |change_file| or |web_file|. +This routine should be modified on systems whose standard text editor +has special line-numbering conventions. +@^system dependencies@> + +@<Print error location based on input buffer@>= +begin if changing then print('. (change file ')@+else print('. ('); +print_ln('l.', line:1, ')'); +if loc>=limit then l:=limit else l:=loc; +for k:=1 to l do + if buffer[k-1]=tab_mark then print(' ') + else print(xchr[buffer[k-1]]); {print the characters already read} +new_line; +for k:=1 to l do print(' '); {space out the next line} +for k:=l+1 to limit do print(xchr[buffer[k-1]]); {print the part not yet read} +print(' '); {this space separates the message from future asterisks} +end + +@ The position of errors detected during the second phase can be indicated +by outputting the partially-filled output buffer, which contains |out_ptr| +entries. + +@<Print error location based on output...@>= +begin print_ln('. (l.',line:1,')'); +for j:=1 to out_ptr do print(xchr[out_buf[j-1]]); {print current partial line} +print('... '); {indicate that this information is partial} +end + +@ The |jump_out| procedure just cuts across all active procedure levels +and jumps out of the program. This is the only non-local |goto| statement +in \.{TANGLE}. It is used when no recovery from a particular error has +been provided. + +Some \PASCAL\ compilers do not implement non-local |goto| statements. +@^system dependencies@> +In such cases the code that appears at label |end_of_TANGLE| should be +copied into the |jump_out| procedure, followed by a call to a system procedure +that terminates the program. + +@d fatal_error(#)==begin new_line; print(#); error; mark_fatal; jump_out; + end + +@<Error handling...@>= +procedure jump_out; +begin goto end_of_TANGLE; +end; + +@ Sometimes the program's behavior is far different from what it should be, +and \.{TANGLE} prints an error message that is really for the \.{TANGLE} +maintenance person, not the user. In such cases the program says +|confusion('indication of where we are')|. + +@d confusion(#)==fatal_error('! This can''t happen (',#,')') +@.This can't happen@> + +@ An overflow stop occurs if \.{TANGLE}'s tables aren't large enough. + +@d overflow(#)==fatal_error('! Sorry, ',#,' capacity exceeded') +@.Sorry, x capacity exceeded@> + + +@* Data structures. +Most of the user's \PASCAL\ code is packed into eight-bit integers +in two large arrays called |byte_mem| and |tok_mem|. +The |byte_mem| array holds the names of identifiers, strings, and modules; +the |tok_mem| array holds the replacement texts +for macros and modules. Allocation is sequential, since things are deleted only +during Phase II, and only in a last-in-first-out manner. + +Auxiliary arrays |byte_start| and |tok_start| are used as directories to +|byte_mem| and |tok_mem|, and the |link|, |ilk|, |equiv|, and |text_link| +arrays give further information about names. These auxiliary arrays +consist of sixteen-bit items. + +@<Types...@>= +@!eight_bits=0..255; {unsigned one-byte quantity} +@!sixteen_bits=0..65535; {unsigned two-byte quantity} + +@ \.{TANGLE} has been designed to avoid the need for indices that are more +than sixteen bits wide, so that it can be used on most computers. But +there are programs that need more than 65536 tokens, and some programs +even need more than 65536 bytes; \TeX\ is one of these. To get around +this problem, a slight complication has been added to the data structures: +|byte_mem| and |tok_mem| are two-dimensional arrays, whose first index is +either 0 or 1. (For generality, the first index is actually allowed to run +between 0 and |ww-1| in |byte_mem|, or between 0 and |zz-1| in |tok_mem|, +where |ww| and |zz| are set to 2 and~3; the program will work for any +positive values of |ww| and |zz|, and it can be simplified in obvious ways +if |ww=1| or |zz=1|.) + +@d ww=2 {we multiply the byte capacity by approximately this amount} +@d zz=3 {we multiply the token capacity by approximately this amount} + +@<Globals...@>= +@!byte_mem: packed array [0..ww-1,0..max_bytes] of ASCII_code; + {characters of names} +@!tok_mem: packed array [0..zz-1,0..max_toks] of eight_bits; {tokens} +@!byte_start: array [0..max_names] of sixteen_bits; {directory into |byte_mem|} +@!tok_start: array [0..max_texts] of sixteen_bits; {directory into |tok_mem|} +@!link: array [0..max_names] of sixteen_bits; {hash table or tree links} +@!ilk: array [0..max_names] of sixteen_bits; {type codes or tree links} +@!equiv: array [0..max_names] of sixteen_bits; {info corresponding to names} +@!text_link: array [0..max_texts] of sixteen_bits; {relates replacement texts} + +@ The names of identifiers are found by computing a hash address |h| and +then looking at strings of bytes signified by |hash[h]|, |link[hash[h]]|, +|link[link[hash[h]]]|, \dots, until either finding the desired name +or encountering a zero. + +A `|name_pointer|' variable, which signifies a name, is an index into +|byte_start|. The actual sequence of characters in the name pointed to by +|p| appears in positions |byte_start[p]| to |byte_start[p+ww]-1|, inclusive, +in the segment of |byte_mem| whose first index is |p mod ww|. Thus, when +|ww=2| the even-numbered name bytes appear in |byte_mem[0,@t$*$@>]| +and the odd-numbered ones appear in |byte_mem[1,@t$*$@>]|. +The pointer 0 is used for undefined module names; we don't +want to use it for the names of identifiers, since 0 stands for a null +pointer in a linked list. + +Strings are treated like identifiers; the first character (a double-quote) +distinguishes a string from an alphabetic name, but for \.{TANGLE}'s purposes +strings behave like numeric macros. (A `string' here refers to the +strings delimited by double-quotes that \.{TANGLE} processes. \PASCAL\ +string constants delimited by single-quote marks are not given such special +treatment; they simply appear as sequences of characters in the \PASCAL\ +texts.) The total number of strings in the string +pool is called |string_ptr|, and the total number of names in |byte_mem| +is called |name_ptr|. The total number of bytes occupied in +|byte_mem[w,@t$*$@>]| is called |byte_ptr[w]|. + +We usually have |byte_start[name_ptr+w]=byte_ptr[(name_ptr+w) mod ww]| +for |0<=w<ww|, since these are the starting positions for the next |ww| +names to be stored in |byte_mem|. + +@d length(#)==byte_start[#+ww]-byte_start[#] {the length of a name} + +@<Types...@>= +@!name_pointer=0..max_names; {identifies a name} + +@ @<Global...@>= +@!name_ptr:name_pointer; {first unused position in |byte_start|} +@!string_ptr:name_pointer; {next number to be given to a string of length |<>1|} +@!byte_ptr:array [0..ww-1] of 0..max_bytes; + {first unused position in |byte_mem|} +@!pool_check_sum:integer; {sort of a hash for the whole string pool} + +@ @<Local variables for init...@>= +@!wi: 0..ww-1; {to initialize the |byte_mem| indices} + +@ @<Set init...@>= +for wi:=0 to ww-1 do + begin byte_start[wi]:=0; byte_ptr[wi]:=0; + end; +byte_start[ww]:=0; {this makes name 0 of length zero} +name_ptr:=1; string_ptr:=256; pool_check_sum:=271828; + +@ Replacement texts are stored in |tok_mem|, using similar conventions. +A `|text_pointer|' variable is an index into |tok_start|, and the +replacement text that corresponds to |p| runs from positions +|tok_start[p]| to |tok_start[p+zz]-1|, inclusive, in the segment of +|tok_mem| whose first index is |p mod zz|. Thus, when |zz=2| the +even-numbered replacement texts appear in |tok_mem[0,@t$*$@>]| and the +odd-numbered ones appear in |tok_mem[1,@t$*$@>]|. Furthermore, +|text_link[p]| is used to connect pieces of text that have the same name, +as we shall see later. The pointer 0 is used for undefined replacement +texts. + +The first position of |tok_mem[z,@t$*$@>]| that is unoccupied by +replacement text is called |tok_ptr[z]|, and the first unused location of +|tok_start| is called |text_ptr|. We usually have the identity +|tok_start[text_ptr+z]=tok_ptr[(text_ptr+z) mod zz]|, for |0<=z<zz|, since +these are the starting positions for the next |zz| replacement texts to +be stored in |tok_mem|. + +@<Types...@>= +@!text_pointer=0..max_texts; {identifies a replacement text} + +@ It is convenient to maintain a variable |z| that is equal to |text_ptr +mod zz|, so that we always insert tokens into segment |z| of |tok_mem|. + +@<Glob...@>= +@t\hskip1em@>@!text_ptr:text_pointer; {first unused position in |tok_start|} +@t\hskip1em@>@!tok_ptr:array[0..zz-1] of 0..max_toks; + {first unused position in a given segment of |tok_mem|} +@t\hskip1em@>@!z:0..zz-1; {current segment of |tok_mem|} +stat @!max_tok_ptr:array[0..zz-1] of 0..max_toks; + {largest values assumed by |tok_ptr|} +tats + +@ @<Local variables for init...@>= +@!zi:0..zz-1; {to initialize the |tok_mem| indices} + +@ @<Set init...@>= +for zi:=0 to zz-1 do + begin tok_start[zi]:=0; tok_ptr[zi]:=0; + end; +tok_start[zz]:=0; {this makes replacement text 0 of length zero} +text_ptr:=1; z:=1 mod zz; + +@ Four types of identifiers are distinguished by their |ilk|: + +\yskip\hang |normal| identifiers will appear in the \PASCAL\ program as +ordinary identifiers since they have not been defined to be macros; the +corresponding value in the |equiv| array +for such identifiers is a link in a secondary hash table that +is used to check whether any two of them agree in their first |unambig_length| +characters after underline symbols are removed and lowercase letters are +changed to uppercase. + +\yskip\hang |numeric| identifiers have been defined to be numeric macros; +their |equiv| value contains the corresponding numeric value plus $2^{15}$. +Strings are treated as numeric macros. + +\yskip\hang |simple| identifiers have been defined to be simple macros; +their |equiv| value points to the corresponding replacement text. + +\yskip\hang |parametric| identifiers have been defined to be parametric macros; +like simple identifiers, their |equiv| value points to the replacement text. + +@d normal=0 {ordinary identifiers have |normal| ilk} +@d numeric=1 {numeric macros and strings have |numeric| ilk} +@d simple=2 {simple macros have |simple| ilk} +@d parametric=3 {parametric macros have |parametric| ilk} + +@ The names of modules are stored in |byte_mem| together +with the identifier names, but a hash table is not used for them because +\.{TANGLE} needs to be able to recognize a module name when given a prefix of +that name. A conventional binary seach tree is used to retrieve module names, +with fields called |llink| and |rlink| in place of |link| and |ilk|. The +root of this tree is |rlink[0]|. If |p| is a pointer to a module name, +|equiv[p]| points to its replacement text, just as in simple and parametric +macros, unless this replacement text has not yet been defined (in which case +|equiv[p]=0|). + +@d llink==link {left link in binary search tree for module names} +@d rlink==ilk {right link in binary search tree for module names} + +@<Set init...@>= +rlink[0]:=0; {the binary search tree starts out with nothing in it} +equiv[0]:=0; {the undefined module has no replacement text} + +@ Here is a little procedure that prints the text of a given name. + +@p procedure print_id(@!p:name_pointer); {print identifier or module name} +var k:0..max_bytes; {index into |byte_mem|} +@!w:0..ww-1; {segment of |byte_mem|} +begin if p>=name_ptr then print('IMPOSSIBLE') +else begin w:=p mod ww; + for k:=byte_start[p] to byte_start[p+ww]-1 do print(xchr[byte_mem[w,k]]); + end; +end; + +@* Searching for identifiers. +The hash table described above is updated by the |id_lookup| procedure, +which finds a given identifier and returns a pointer to its index in +|byte_start|. If the identifier was not already present, it is inserted with +a given |ilk| code; and an error message is printed if the identifier is being +doubly defined. + +Because of the way \.{TANGLE}'s scanning mechanism works, it is most convenient +to let |id_lookup| search for an identifier that is present in the |buffer| +array. Two other global variables specify its position in the buffer: the +first character is |buffer[id_first]|, and the last is |buffer[id_loc-1]|. +Furthermore, if the identifier is really a string, the global variable +|double_chars| tells how many of the characters in the buffer appear +twice (namely \.{@@@@} and \.{""}), since this additional information makes +it easy to calculate the true length of the string. The final double-quote +of the string is not included in its ``identifier,'' but the first one is, +so the string length is |id_loc-id_first-double_chars-1|. + +We have mentioned that |normal| identifiers belong to two hash tables, +one for their true names as they appear in the \.{WEB} file and the other +when they have been reduced to their first |unambig_length| characters. +The hash tables are kept by the method of simple chaining, where the +heads of the individual lists appear in the |hash| and |chop_hash| arrays. +If |h| is a hash code, the primary hash table list starts at |hash[h]| and +proceeds through |link| pointers; the secondary hash table list starts at +|chop_hash[h]| and proceeds through |equiv| pointers. Of course, the same +identifier will probably have two different values of |h|. + +The |id_lookup| procedure uses an auxiliary array called |chopped_id| to +contain up to |unambig_length| characters of the current identifier, if +it is necessary to compute the secondary hash code. (This array could be +declared local to |id_lookup|, but in general we are making all array +declarations global in this program, because some compilers and some machine +architectures make dynamic array allocation inefficient.) + +@<Glob...@>= +@!id_first:0..buf_size; {where the current identifier begins in the buffer} +@!id_loc:0..buf_size; {just after the current identifier in the buffer} +@!double_chars:0..buf_size; {correction to length in case of strings} +@# +@!hash,@!chop_hash:array [0..hash_size] of sixteen_bits; {heads of hash lists} +@!chopped_id:array [0..unambig_length] of ASCII_code; {chopped identifier} + +@ Initially all the hash lists are empty. + +@<Local variables for init...@>= +@!h:0..hash_size; {index into hash-head arrays} + +@ @<Set init...@>= +for h:=0 to hash_size-1 do + begin hash[h]:=0; chop_hash[h]:=0; + end; + +@ Here now is the main procedure for finding identifiers (and strings). +The parameter |t| is set to |normal| except when the identifier is +a macro name that is just being defined; in the latter case, |t| will be +|numeric|, |simple|, or |parametric|. + +@p function id_lookup(@!t:eight_bits):name_pointer; {finds current identifier} +label found, not_found; +var c:eight_bits; {byte being chopped} +@!i:0..buf_size; {index into |buffer|} +@!h:0..hash_size; {hash code} +@!k:0..max_bytes; {index into |byte_mem|} +@!w:0..ww-1; {segment of |byte_mem|} +@!l:0..buf_size; {length of the given identifier} +@!p,@!q:name_pointer; {where the identifier is being sought} +@!s:0..unambig_length; {index into |chopped_id|} +begin l:=id_loc-id_first; {compute the length} +@<Compute the hash code |h|@>; +@<Compute the name location |p|@>; +if (p=name_ptr)or(t<>normal) then + @<Update the tables and check for possible errors@>; +id_lookup:=p; +end; + +@ A simple hash code is used: If the sequence of +ASCII codes is $c_1c_2\ldots c_m$, its hash value will be +$$(2^{n-1}c_1+2^{n-2}c_2+\cdots+c_n)\,\bmod\,|hash_size|.$$ + +@<Compute the hash...@>= +h:=buffer[id_first]; i:=id_first+1; +while i<id_loc do + begin h:=(h+h+buffer[i]) mod hash_size; incr(i); + end + +@ If the identifier is new, it will be placed in position |p=name_ptr|, +otherwise |p| will point to its existing location. + +@<Compute the name location...@>= +p:=hash[h]; +while p<>0 do + begin if length(p)=l then + @<Compare name |p| with current identifier, |goto found| if equal@>; + p:=link[p]; + end; +p:=name_ptr; {the current identifier is new} +link[p]:=hash[h]; hash[h]:=p; {insert |p| at beginning of hash list} +found: + +@ @<Compare name |p|...@>= +begin i:=id_first; k:=byte_start[p]; w:=p mod ww; +while (i<id_loc)and(buffer[i]=byte_mem[w,k]) do + begin incr(i); incr(k); + end; +if i=id_loc then goto found; {all characters agree} +end + +@ @<Update the tables...@>= +begin if ((p<>name_ptr)and(t<>normal)and(ilk[p]=normal)) or + ((p=name_ptr)and(t=normal)and(buffer[id_first]<>"""")) then + @<Compute the secondary hash code |h| and put the first characters + into the auxiliary array |chopped_id|@>; +if p<>name_ptr then + @<Give double-definition error, if necessary, and change |p| to type |t|@> +else @<Enter a new identifier into the table at position |p|@>; +end + +@ The following routine, which is called into play when it is necessary to +look at the secondary hash table, computes the same hash function as before +(but on the chopped data), and places a zero after the chopped identifier +in |chopped_id| to serve as a convenient sentinel. + +@<Compute the secondary...@>= +begin i:=id_first; s:=0; h:=0; +while (i<id_loc)and(s<unambig_length) do + begin if buffer[i]<>"_" then + begin if buffer[i]>="a" then chopped_id[s]:=buffer[i]-@'40 + else chopped_id[s]:=buffer[i]; + h:=(h+h+chopped_id[s]) mod hash_size; incr(s); + end; + incr(i); + end; +chopped_id[s]:=0; +end + +@ If a nonnumeric macro has appeared before it was defined, \.{TANGLE} +will still work all right; after all, such behavior is typical of the +replacement texts for modules, which act very much like macros. +However, an undefined numeric macro may not be used on the right-hand +side of another numeric macro definition, so \.{TANGLE} finds it +simplest to make a blanket rule that numeric macros should be defined +before they are used. The following routine gives an error message and +also fixes up any damage that may have been caused. + +@<Give double...@>= {now |p<>name_ptr| and |t<>normal|} +begin if ilk[p]=normal then + begin if t=numeric then err_print('! This identifier has already appeared'); +@.This identifier has already...@> + @<Remove |p| from secondary hash table@>; + end +else err_print('! This identifier was defined before'); +@.This identifier was defined...@> +ilk[p]:=t; +end + +@ When we have to remove a secondary hash entry, because a |normal| identifier +is changing to another |ilk|, the hash code |h| and chopped identifier have +already been computed. + +@<Remove |p| from secondary...@>= +q:=chop_hash[h]; +if q=p then chop_hash[h]:=equiv[p] +else begin while equiv[q]<>p do q:=equiv[q]; + equiv[q]:=equiv[p]; + end + +@ The following routine could make good use of a generalized |pack| procedure +that puts items into just part of a packed array instead of the whole thing. + +@<Enter a new identifier...@>= +begin if (t=normal)and(buffer[id_first]<>"""") then + @<Check for ambiguity and update secondary hash@>; +w:=name_ptr mod ww; k:=byte_ptr[w]; +if k+l>max_bytes then overflow('byte memory'); +if name_ptr>max_names-ww then overflow('name'); +i:=id_first; {get ready to move the identifier into |byte_mem|} +while i<id_loc do + begin byte_mem[w,k]:=buffer[i]; incr(k); incr(i); + end; +byte_ptr[w]:=k; byte_start[name_ptr+ww]:=k; incr(name_ptr); +if buffer[id_first]<>"""" then ilk[p]:=t +else @<Define and output a new string of the pool@>; +end + +@ @<Check for ambig...@>= +begin q:=chop_hash[h]; +while q<>0 do + begin @<Check if |q| conflicts with |p|@>; + q:=equiv[q]; + end; +equiv[p]:=chop_hash[h]; chop_hash[h]:=p; {put |p| at front of secondary list} +end + +@ @<Check if |q| conflicts...@>= +begin k:=byte_start[q]; s:=0; w:=q mod ww; +while (k<byte_start[q+ww]) and (s<unambig_length) do + begin c:=byte_mem[w,k]; + if c<>"_" then + begin if c>="a" then c:=c-@'40; {merge lowercase with uppercase} + if chopped_id[s]<>c then goto not_found; + incr(s); + end; + incr(k); + end; +if (k=byte_start[q+ww])and(chopped_id[s]<>0) then goto not_found; +print_nl('! Identifier conflict with '); +@.Identifier conflict...@> +for k:=byte_start[q] to byte_start[q+ww]-1 do print(xchr[byte_mem[w,k]]); +error; q:=0; {only one conflict will be printed, since |equiv[0]=0|} +not_found: +end + +@ We compute the string pool check sum by working modulo a prime number +that is large but not so large that overflow might occur. + +@d check_sum_prime==@'3777777667 {$2^{29}-73$} +@^preprocessed strings@> + +@<Define and output a new string...@>= +begin ilk[p]:=numeric; {strings are like numeric macros} +if l-double_chars=2 then {this string is for a single character} + equiv[p]:=buffer[id_first+1]+@'100000 +else begin equiv[p]:=string_ptr+@'100000; + l:=l-double_chars-1; + if l>99 then err_print('! Preprocessed string is too long'); +@.Preprocessed string is too long@> + incr(string_ptr); + write(pool,xchr["0"+l div 10],xchr["0"+l mod 10]); {output the length} + pool_check_sum:=pool_check_sum+pool_check_sum+l; + while pool_check_sum>check_sum_prime do + pool_check_sum:=pool_check_sum-check_sum_prime; + i:=id_first+1; + while i<id_loc do + begin write(pool,xchr[buffer[i]]); {output characters of string} + pool_check_sum:=pool_check_sum+pool_check_sum+buffer[i]; + while pool_check_sum>check_sum_prime do + pool_check_sum:=pool_check_sum-check_sum_prime; + if (buffer[i]="""") or (buffer[i]="@@") then + i:=i+2 {omit second appearance of doubled character} + else incr(i); + end; + write_ln(pool); + end; +end + +@* Searching for module names. +The |mod_lookup| procedure finds the module name |mod_text[1..l]| in the +search tree, after inserting it if necessary, and returns a pointer to +where it was found. + +@<Glob...@>= +@!mod_text:array [0..longest_name] of ASCII_code; {name being sought for} + +@ According to the rules of \.{WEB}, no module name +should be a proper prefix of another, so a ``clean'' comparison should +occur between any two names. The result of |mod_lookup| is 0 if this +prefix condition is violated. An error message is printed when such violations +are detected during phase two of \.{WEAVE}. + +@d less=0 {the first name is lexicographically less than the second} +@d equal=1 {the first name is equal to the second} +@d greater=2 {the first name is lexicographically greater than the second} +@d prefix=3 {the first name is a proper prefix of the second} +@d extension=4 {the first name is a proper extension of the second} + +@p function mod_lookup(@!l:sixteen_bits):name_pointer; {finds module name} +label found; +var c:less..extension; {comparison between two names} +@!j:0..longest_name; {index into |mod_text|} +@!k:0..max_bytes; {index into |byte_mem|} +@!w:0..ww-1; {segment of |byte_mem|} +@!p:name_pointer; {current node of the search tree} +@!q:name_pointer; {father of node |p|} +begin c:=greater; q:=0; p:=rlink[0]; {|rlink[0]| is the root of the tree} +while p<>0 do + begin @<Set \(|c| to the result of comparing the given name to + name |p|@>; + q:=p; + if c=less then p:=llink[q] + else if c=greater then p:=rlink[q] + else goto found; + end; +@<Enter a new module name into the tree@>; +found: if c<>equal then + begin err_print('! Incompatible section names'); p:=0; +@.Incompatible module names@> + end; +mod_lookup:=p; +end; + +@ @<Enter a new module name...@>= +w:=name_ptr mod ww; k:=byte_ptr[w]; +if k+l>max_bytes then overflow('byte memory'); +if name_ptr>max_names-ww then overflow('name'); +p:=name_ptr; +if c=less then llink[q]:=p else rlink[q]:=p; +llink[p]:=0; rlink[p]:=0; c:=equal; equiv[p]:=0; +for j:=1 to l do byte_mem[w,k+j-1]:=mod_text[j]; +byte_ptr[w]:=k+l; byte_start[name_ptr+ww]:=k+l; incr(name_ptr); + +@ @<Set \(|c|...@>= +begin k:=byte_start[p]; w:=p mod ww; c:=equal; j:=1; +while (k<byte_start[p+ww]) and (j<=l) and (mod_text[j]=byte_mem[w,k]) do + begin incr(k); incr(j); + end; +if k=byte_start[p+ww] then + if j>l then c:=equal + else c:=extension +else if j>l then c:=prefix +else if mod_text[j]<byte_mem[w,k] then c:=less +else c:=greater; +end + +@ The |prefix_lookup| procedure is supposed to find exactly one module +name that has |mod_text[1..l]| as a prefix. Actually the algorithm silently +accepts also the situation that some module name is a prefix of +|mod_text[1..l]|, because the user who painstakingly typed in more than +necessary probably doesn't want to be told about the wasted effort. + +@p function prefix_lookup(@!l:sixteen_bits):name_pointer; {finds name extension} +var c:less..extension; {comparison between two names} +@!count:0..max_names; {the number of hits} +@!j:0..longest_name; {index into |mod_text|} +@!k:0..max_bytes; {index into |byte_mem|} +@!w:0..ww-1; {segment of |byte_mem|} +@!p:name_pointer; {current node of the search tree} +@!q:name_pointer; {another place to resume the search after one branch is done} +@!r:name_pointer; {extension found} +begin q:=0; p:=rlink[0]; count:=0; r:=0; {begin search at root of tree} +while p<>0 do + begin @<Set \(|c|...@>; + if c=less then p:=llink[p] + else if c=greater then p:=rlink[p] + else begin r:=p; incr(count); q:=rlink[p]; p:=llink[p]; + end; + if p=0 then + begin p:=q; q:=0; + end; + end; +if count<>1 then + if count=0 then err_print('! Name does not match') +@.Name does not match@> + else err_print('! Ambiguous prefix'); +@.Ambiguous prefix@> +prefix_lookup:=r; {the result will be 0 if there was no match} +end; + +@* Tokens. +Replacement texts, which represent \PASCAL\ code in a compressed format, +appear in |tok_mem| as mentioned above. The codes in +these texts are called `tokens'; some tokens occupy two consecutive +eight-bit byte positions, and the others take just one byte. + +If $p>0$ points to a replacement text, |tok_start[p]| is the |tok_mem| position +of the first eight-bit code of that text. If |text_link[p]=0|, +this is the replacement text for a macro, otherwise it is the replacement +text for a module. In the latter case |text_link[p]| is either equal to +|module_flag|, which means that there is no further text for this module, or +|text_link[p]| points to a +continuation of this replacement text; such links are created when +several modules have \PASCAL\ texts with the same name, and they also +tie together all the \PASCAL\ texts of unnamed modules. +The replacement text pointer for the first unnamed module +appears in |text_link[0]|, and the most recent such pointer is |last_unnamed|. + +@d module_flag==max_texts {final |text_link| in module replacement texts} + +@<Glob...@>= +@!last_unnamed:text_pointer; {most recent replacement text of unnamed module} + +@ @<Set init...@>= last_unnamed:=0; text_link[0]:=0; + +@ If the first byte of a token is less than @'200, the token occupies a +single byte. Otherwise we make a sixteen-bit token by combining two consecutive +bytes |a| and |b|. If |@'200<=a<@'250|, then $(a-@'200)\times2^8+b$ points +to an identifier; if |@'250<=a<@'320|, then +$(a-@'250)\times2^8+b$ points to a module name; otherwise, i.e., if +|@'320<=a<@'400|, then $(a-@'320)\times2^8+b$ is the number of the module +in which the current replacement text appears. + +Codes less than @'200 are 7-bit ASCII codes that represent themselves. +In particular, a single-character identifier like `|x|' will be a one-byte +token, while all longer identifiers will occupy two bytes. + +Some of the 7-bit ASCII codes will not be present, however, so we can +use them for special purposes. The following symbolic names are used: + +\yskip\hang |param| denotes insertion of a parameter. This occurs only in +the replacement texts of parametric macros, outside of single-quoted strings +in those texts. + +\hang |begin_comment| denotes \.{@@\{}, which will become either +\.{\{} or \.{[}. + +\hang |end_comment| denotes \.{@@\}}, which will become either +\.{\}} or \.{]}. + +\hang |octal| denotes the \.{@@\'} that precedes an octal constant. + +\hang |hex| denotes the \.{@@"} that precedes a hexadecimal constant. + +\hang |check_sum| denotes the \.{@@\char'44} that denotes the string pool +check sum. + +\hang |join| denotes the concatenation of adjacent items with no +space or line breaks allowed between them (the \.{@@\&} operation of \.{WEB}). + +\hang |double_dot| denotes `\.{..}' in \PASCAL. + +\hang |verbatim| denotes the \.{@@=} that begins a verbatim \PASCAL\ string. +It is also used for the end of the string. + +\hang |force_line| denotes the \.{@@\\} that forces a new line in the +\PASCAL\ output. +@^ASCII code@> + +@d param=0 {ASCII null code will not appear} +@d verbatim=@'2 {extended ASCII alpha should not appear} +@d force_line=@'3 {extended ASCII beta should not appear} +@d begin_comment=@'11 {ASCII tab mark will not appear} +@d end_comment=@'12 {ASCII line feed will not appear} +@d octal=@'14 {ASCII form feed will not appear} +@d hex=@'15 {ASCII carriage return will not appear} +@d double_dot=@'40 {ASCII space will not appear except in strings} +@d check_sum=@'175 {will not be confused with right brace} +@d join=@'177 {ASCII delete will not appear} + +@ The following procedure is used to enter a two-byte value into +|tok_mem| when a replacement text is being generated. + +@p procedure store_two_bytes(@!x:sixteen_bits); + {stores high byte, then low byte} +begin if tok_ptr[z]+2>max_toks then overflow('token'); +tok_mem[z,tok_ptr[z]]:=x div@'400; {this could be done by a shift command} +tok_mem[z,tok_ptr[z]+1]:=x mod@'400; {this could be done by a logical and} +tok_ptr[z]:=tok_ptr[z]+2; +end; + +@ When \.{TANGLE} is being operated in debug mode, it has a procedure to display +a replacement text in symbolic form. This procedure has not been spruced up to +generate a real great format, but at least the results are not as bad as +a memory dump. + +@p @!debug procedure print_repl(@!p:text_pointer); +var k:0..max_toks; {index into |tok_mem|} +@!a: sixteen_bits; {current byte(s)} +@!zp: 0..zz-1; {segment of |tok_mem| being accessed} +begin if p>=text_ptr then print('BAD') +else begin k:=tok_start[p]; zp:=p mod zz; + while k<tok_start[p+zz] do + begin a:=tok_mem[zp,k]; + if a>=@'200 then @<Display two-byte token starting with |a|@> + else @<Display one-byte token |a|@>; + incr(k); + end; + end; +end; +gubed + +@ @<Display two-byte...@>= +begin incr(k); +if a<@'250 then {identifier or string} + begin a:=(a-@'200)*@'400+tok_mem[zp,k]; print_id(a); + if byte_mem[a mod ww,byte_start[a]]="""" then print('"') + else print(' '); + end +else if a<@'320 then {module name} + begin print('@@<'); print_id((a-@'250)*@'400+tok_mem[zp,k]); + print('@@>'); + end +else begin a:=(a-@'320)*@'400+tok_mem[zp,k]; {module number} + print('@@',xchr["{"],a:1,'@@',xchr["}"]); {can't use right brace + between \&{debug} and \&{gubed}} + end; +end + +@ @<Display one-byte...@>= +case a of +begin_comment: print('@@',xchr["{"]); +end_comment: print('@@',xchr["}"]); {can't use right brace + between \&{debug} and \&{gubed}} +octal: print('@@'''); +hex: print('@@"'); +check_sum: print('@@$'); +param: print('#'); +"@@": print('@@@@'); +verbatim: print('@@='); +force_line: print('@@\'); +othercases print(xchr[a]) +endcases + +@* Stacks for output. +Let's make sure that our data structures contain enough information to +produce the entire \PASCAL\ program as desired, by working next on the +algorithms that actually do produce that program. + +@ The output process uses a stack to keep track of what is going on at +different ``levels'' as the macros are being expanded. +Entries on this stack have five parts: + +\yskip\hang |end_field| is the |tok_mem| location where the replacement +text of a particular level will end; + +\hang |byte_field| is the |tok_mem| location from which the next token +on a particular level will be read; + +\hang |name_field| points to the name corresponding to a particular level; + +\hang |repl_field| points to the replacement text currently being read +at a particular level; + +\hang |mod_field| is the module number, or zero if this is a macro. + +\yskip\noindent The current values of these five quantities are referred to +quite frequently, so they are stored in a separate place instead of in +the |stack| array. We call the current values |cur_end|, |cur_byte|, +|cur_name|, |cur_repl|, and |cur_mod|. + +The global variable |stack_ptr| tells how many levels of output are +currently in progress. The end of all output occurs when the stack is +empty, i.e., when |stack_ptr=0|. + +@<Types...@>= +@t\4@>@!output_state=record + @!end_field: sixteen_bits; {ending location of replacement text} + @!byte_field: sixteen_bits; {present location within replacement text} + @!name_field: name_pointer; {|byte_start| index for text being output} + @!repl_field: text_pointer; {|tok_start| index for text being output} + @!mod_field: 0..@'27777; {module number or zero if not a module} + end; + +@ @d cur_end==cur_state.end_field {current ending location in |tok_mem|} +@d cur_byte==cur_state.byte_field {location of next output byte in |tok_mem|} +@d cur_name==cur_state.name_field {pointer to current name being expanded} +@d cur_repl==cur_state.repl_field {pointer to current replacement text} +@d cur_mod==cur_state.mod_field {current module number being expanded} + +@<Globals...@>= +@!cur_state : output_state; {|cur_end|, |cur_byte|, |cur_name|, + |cur_repl|, |cur_mod|} +@!stack : array [1..stack_size] of output_state; {info for non-current levels} +@!stack_ptr: 0..stack_size; {first unused location in the output state stack} + +@ It is convenient to keep a global variable |zo| equal to |cur_repl mod zz|. + +@<Glob...@>= +@!zo:0..zz-1; {the segment of |tok_mem| from which output is coming} + +@ Parameters must also be stacked. They are placed in +|tok_mem| just above the other replacement texts, and dummy parameter +`names' are placed in |byte_start| just after the other names. +The variables |text_ptr| and |tok_ptr[z]| essentially serve as parameter +stack pointers during the output phase, so there is no need for a separate +data structure to handle this problem. + +@ There is an implicit stack corresponding to meta-comments that are output +via \.{@@\{} and \.{@@\}}. But this stack need not be represented in detail, +because we only need to know whether it is empty or not. A global variable +|brace_level| tells how many items would be on this stack if it were present. + +@<Globals...@>= +@!brace_level: eight_bits; {current depth of $\.{@@\{}\ldots\.{@@\}}$ nesting} + +@ To get the output process started, we will perform the following +initialization steps. We may assume that |text_link[0]| is nonzero, since it +points to the \PASCAL\ text in the first unnamed module that generates +code; if there are no such modules, there is nothing to output, and an +error message will have been generated before we do any of the initialization. + +@<Initialize the output stacks@>= +stack_ptr:=1; brace_level:=0; cur_name:=0; cur_repl:=text_link[0]; +zo:=cur_repl mod zz; cur_byte:=tok_start[cur_repl]; +cur_end:=tok_start[cur_repl+zz]; cur_mod:=0; + +@ When the replacement text for name |p| is to be inserted into the output, +the following subroutine is called to save the old level of output and get +the new one going. + +@p procedure push_level(@!p:name_pointer); {suspends the current level} +begin if stack_ptr=stack_size then overflow('stack') +else begin stack[stack_ptr]:=cur_state; {save |cur_end|, |cur_byte|, etc.} + incr(stack_ptr); + cur_name:=p; cur_repl:=equiv[p]; zo:=cur_repl mod zz; + cur_byte:=tok_start[cur_repl]; cur_end:=tok_start[cur_repl+zz]; + cur_mod:=0; + end; +end; + +@ When we come to the end of a replacement text, the |pop_level| subroutine +does the right thing: It either moves to the continuation of this replacement +text or returns the state to the most recently stacked level. Part of this +subroutine, which updates the parameter stack, will be given later when we +study the parameter stack in more detail. + +@p procedure pop_level; {do this when |cur_byte| reaches |cur_end|} +label exit; +begin if text_link[cur_repl]=0 then {end of macro expansion} + begin if ilk[cur_name]=parametric then + @<Remove a parameter from the parameter stack@>; + end +else if text_link[cur_repl]<module_flag then {link to a continuation} + begin cur_repl:=text_link[cur_repl]; {we will stay on the same level} + zo:=cur_repl mod zz; + cur_byte:=tok_start[cur_repl]; cur_end:=tok_start[cur_repl+zz]; + return; + end; +decr(stack_ptr); {we will go down to the previous level} +if stack_ptr>0 then + begin cur_state:=stack[stack_ptr]; zo:=cur_repl mod zz; + end; +exit: end; + +@ The heart of the output procedure is the |get_output| routine, which produces +the next token of output that is not a reference to a macro. This procedure +handles all the stacking and unstacking that is necessary. It returns the +value |number| if the next output has a numeric value (the value of a +numeric macro or string), in which case |cur_val| has been set to the +number in question. The procedure also returns the value |module_number| +if the next output begins or ends the replacement text of some module, +in which case |cur_val| is that module's number (if beginning) or the +negative of that value (if ending). And it returns the value |identifier| +if the next output is an identifier of length two or more, in which case +|cur_val| points to that identifier name. + +@d number=@'200 {code returned by |get_output| when next output is numeric} +@d module_number=@'201 {code returned by |get_output| for module numbers} +@d identifier=@'202 {code returned by |get_output| for identifiers} + +@<Globals...@>= +@!cur_val:integer; {additional information corresponding to output token} + +@ If |get_output| finds that no more output remains, it returns the value zero. + +@p function get_output:sixteen_bits; {returns next token after macro expansion} +label restart, done, found; +var a:sixteen_bits; {value of current byte} +@!b:eight_bits; {byte being copied} +@!bal:sixteen_bits; {excess of \.( versus \.) while copying a parameter} +@!k:0..max_bytes; {index into |byte_mem|} +@!w:0..ww-1; {segment of |byte_mem|} +begin restart: if stack_ptr=0 then + begin a:=0; goto found; + end; +if cur_byte=cur_end then + begin cur_val:=-cur_mod; pop_level; + if cur_val=0 then goto restart; + a:=module_number; goto found; + end; +a:=tok_mem[zo,cur_byte]; incr(cur_byte); +if a<@'200 then {one-byte token} + if a=param then + @<Start scanning current macro parameter, |goto restart|@> + else goto found; +a:=(a-@'200)*@'400+tok_mem[zo,cur_byte]; incr(cur_byte); +if a<@'24000 then {|@'24000=(@'250-@'200)*@'400|} + @<Expand macro |a| and |goto found|, or |goto restart| if no output found@>; +if a<@'50000 then {|@'50000=(@'320-@'200)*@'400|} + @<Expand module |a-@'24000|, |goto restart|@>; +cur_val:=a-@'50000; a:=module_number; cur_mod:=cur_val; +found: +@!debug if trouble_shooting then debug_help;@;@+gubed@/ +get_output:=a; +end; + +@ The user may have forgotten to give any \PASCAL\ text for a module name, +or the \PASCAL\ text may have been associated with a different name by mistake. + +@<Expand module |a-...@>= +begin a:=a-@'24000; +if equiv[a]<>0 then push_level(a) +else if a<>0 then + begin print_nl('! Not present: <'); print_id(a); print('>'); error; +@.Not present: <section name>@> + end; +goto restart; +end + +@ @<Expand macro ...@>= +begin case ilk[a] of +normal: begin cur_val:=a; a:=identifier; + end; +numeric: begin cur_val:=equiv[a]-@'100000; a:=number; + end; +simple: begin push_level(a); goto restart; + end; +parametric: begin @<Put a parameter on the parameter stack, + or |goto restart| if error occurs@>; + push_level(a); goto restart; + end; +othercases confusion('output') +endcases;@/ +goto found; +end + +@ We come now to the interesting part, the job of putting a parameter on +the parameter stack. First we pop the stack if necessary until getting to +a level that hasn't ended. Then the next character must be a `\.('; +and since parentheses are balanced on each level, the entire parameter must +be present, so we can copy it without difficulty. + +@<Put a parameter...@>= +while (cur_byte=cur_end)and(stack_ptr>0) do pop_level; +if (stack_ptr=0)or(tok_mem[zo,cur_byte]<>"(") then + begin print_nl('! No parameter given for '); print_id(a); error; +@.No parameter given for macro@> + goto restart; + end; +@<Copy the parameter into |tok_mem|@>; +equiv[name_ptr]:=text_ptr; ilk[name_ptr]:=simple; w:=name_ptr mod ww; +k:=byte_ptr[w]; +@!debug if k=max_bytes then overflow('byte memory'); +byte_mem[w,k]:="#"; incr(k); byte_ptr[w]:=k; +gubed {this code has set the parameter identifier for debugging printouts} +if name_ptr>max_names-ww then overflow('name'); +byte_start[name_ptr+ww]:=k; incr(name_ptr); +if text_ptr>max_texts-zz then overflow('text'); +text_link[text_ptr]:=0; tok_start[text_ptr+zz]:=tok_ptr[z]; +incr(text_ptr); +z:=text_ptr mod zz + +@ The |pop_level| routine undoes the effect of parameter-pushing when +a parameter macro is finished: + +@<Remove a parameter...@>= +begin decr(name_ptr); decr(text_ptr); +z:=text_ptr mod zz; +stat if tok_ptr[z]>max_tok_ptr[z] then max_tok_ptr[z]:=tok_ptr[z]; +tats {the maximum value of |tok_ptr| occurs just before parameter popping} +tok_ptr[z]:=tok_start[text_ptr]; +@!debug decr(byte_ptr[name_ptr mod ww]);@+gubed +end + +@ When a parameter occurs in a replacement text, we treat it as a simple +macro in position (|name_ptr-1|): + +@<Start scanning...@>= +begin push_level(name_ptr-1); goto restart; +end + +@ Similarly, a |param| token encountered as we copy a parameter is converted +into a simple macro call for |name_ptr-1|. +Some care is needed to handle cases like \\{macro}|(#; print('#)'))|; the +\.{\#} token will have been changed to |param| outside of strings, but we +still must distinguish `real' parentheses from those in strings. + +@d app_repl(#)==begin if tok_ptr[z]=max_toks then overflow('token'); + tok_mem[z,tok_ptr[z]]:=#; incr(tok_ptr[z]); end + +@<Copy the parameter...@>= +bal:=1; incr(cur_byte); {skip the opening `\.('} +loop@+ begin b:=tok_mem[zo,cur_byte]; incr(cur_byte); + if b=param then store_two_bytes(name_ptr+@'77777) + else begin if b>=@'200 then + begin app_repl(b); + b:=tok_mem[zo,cur_byte]; incr(cur_byte); + end + else case b of + "(": incr(bal); + ")": begin decr(bal); + if bal=0 then goto done; + end; + "'": repeat app_repl(b); + b:=tok_mem[zo,cur_byte]; incr(cur_byte); + until b="'"; {copy string, don't change |bal|} + othercases do_nothing + endcases; + app_repl(b); + end; + end; +done: + +@* Producing the output. +The |get_output| routine above handles most of the complexity of output +generation, but there are two further considerations that have a nontrivial +effect on \.{TANGLE}'s algorithms. + +First, we want to make sure that the output is broken into lines not +exceeding |line_length| characters per line, where these breaks occur at +valid places (e.g., not in the middle of a string or a constant or an +identifier, not between `\.<' and `\.>', not at a `\.{@@\&}' position +where quantities are being joined together). Therefore we assemble the +output into a buffer before deciding where the line breaks will appear. +However, we make very little attempt to make ``logical'' line breaks that +would enhance the readability of the output; people are supposed to read +the input of \.{TANGLE} or the \TeX ed output of \.{WEAVE}, but not the +tangled-up output. The only concession to readability is that a break after +a semicolon will be made if possible, since commonly used ``pretty +printing'' routines give better results in such cases. + +Second, we want to decimalize non-decimal constants, and to combine integer +quantities that are added or subtracted, because \PASCAL\ doesn't allow +constant expressions in subrange types or in case labels. This means we +want to have a procedure that treats a construction like \.{(E-15+17)} +as equivalent to `\.{(E+2)}', while also leaving `\.{(1E-15+17)}' and +`\.{(E-15+17*y)}' untouched. Consider also `\.{-15+17.5}' versus +`\.{-15+17..5}'. We shall not combine integers preceding or following +\.*, \./, \.{div}, \.{mod}, or \.{@@\&}. Note that if |y| has been defined +to equal $-2$, we must expand `\.{x*y}' into `\.{x*(-2)}'; but `\.{x-y}' +can expand into `\.{x+2}' and we can even change `\.{x - y mod z}' to +@^mod@> +`\.{x + 2 mod z}' because \PASCAL\ has a nonstandard \&{mod} operation! + +The following solution to these problems has been adopted: An array +|out_buf| contains characters that have been generated but not yet output, +and there are three pointers into this array. One of these, |out_ptr|, is +the number of characters currently in the buffer, and we will have +|1<=out_ptr<=line_length| most of the time. The second is |break_ptr|, +which is the largest value |<=out_ptr| such that we are definitely entitled +to end a line by outputting the characters |out_buf[1..(break_ptr-1)]|; +we will always have |break_ptr<=line_length|. Finally, |semi_ptr| is either +zero or the largest known value of a legal break after a semicolon or comment +on the current line; we will always have |semi_ptr<=break_ptr|. + +@<Globals...@>= +@!out_buf: array [0..out_buf_size] of ASCII_code; {assembled characters} +@!out_ptr: 0..out_buf_size; {first available place in |out_buf|} +@!break_ptr: 0..out_buf_size; {last breaking place in |out_buf|} +@!semi_ptr: 0..out_buf_size; {last semicolon breaking place in |out_buf|} + +@ Besides having those three pointers, +the output process is in one of several states: + +\yskip\hang |num_or_id| means that the last item in the buffer is a number or +identifier, hence a blank space or line break must be inserted if the next +item is also a number or identifier. + +\yskip\hang |unbreakable| means that the last item in the buffer was followed +by the \.{@@\&} operation that inhibits spaces between it and the next item. + +\yskip\hang |sign| means that the last item in the buffer is to be followed +by \.+ or \.-, depending on whether |out_app| is positive or negative. + +\yskip\hang |sign_val| means that the decimal equivalent of +$\vert|out_val|\vert$ should be appended to the buffer. If |out_val<0|, +or if |out_val=0| and |last_sign<0|, the number should be preceded by a minus +sign. Otherwise it should be preceded by the character |out_sign| unless +|out_sign=0|; the |out_sign| variable is either 0 or \.{"\ "} or \.{"+"}. + +\yskip\hang |sign_val_sign| is like |sign_val|, but also append \.+ or \.- +afterwards, depending on whether |out_app| is positive or negative. + +\yskip\hang |sign_val_val| is like |sign_val|, but also append the decimal +equivalent of |out_app| including its sign, using |last_sign| in case +|out_app=0|. + +\yskip\hang |misc| means none of the above. + +\yskip\noindent +For example, the output buffer and output state run through the following +sequence as we generate characters from `\.{(x-15+19-2)}': +$$\vbox{\halign{$\hfil#\hfil$\quad&#\hfil&\quad\hfil#\hfil&\quad +\hfil#\hfil&\quad\hfil#\hfil&\quad\hfil#\hfil\quad&\hfil#\hfil\cr +output&|out_buf|&|out_state|&|out_sign|&|out_val|&|out_app|&|last_sign|\cr +\noalign{\vskip 3pt} +(&\.(&|misc|\cr +x&\.{(x}&|num_or_id|\cr +-&\.{(x}&|sign|&&&$-1$&$-1$\cr +15&\.{(x}&|sign_val|&\.{"+"}&$-15$&&$-15$\cr ++&\.{(x}&|sign_val_sign|&\.{"+"}&$-15$&$+1$&$+1$\cr +19&\.{(x}&|sign_val_val|&\.{"+"}&$-15$&$+19$&$+1$\cr +-&\.{(x}&|sign_val_sign|&\.{"+"}&$+4$&$-1$&$-1$\cr +2&\.{(x}&|sign_val_val|&\.{"+"}&$+4$&$-2$&$-2$\cr +)&\.{(x+2)}&|misc|\cr}}$$ +At each stage we have put as much into the buffer as possible without +knowing what is coming next. Examples like `\.{x-0.1}' indicate why +|last_sign| is needed to associate the proper sign with an output of zero. + +In states |num_or_id|, |unbreakable|, and |misc| the last item in the buffer +lies between |break_ptr| and |out_ptr-1|, inclusive; in the other states we +have |break_ptr=out_ptr|. + +The numeric values assigned to |num_or_id|, etc., have been chosen to +shorten some of the program logic; for example, the program makes use of +the fact that |sign+2=sign_val_sign|. + +@d misc=0 {state associated with special characters} +@d num_or_id=1 {state associated with numbers and identifiers} +@d sign=2 {state associated with pending \.+ or \.-} +@d sign_val=num_or_id+2 {state associated with pending sign and value} +@d sign_val_sign=sign+2 {|sign_val| followed by another pending sign} +@d sign_val_val=sign_val+2 {|sign_val| followed by another pending value} +@d unbreakable=sign_val_val+1 {state associated with \.{@@\&}} + +@<Globals...@>= +@!out_state:eight_bits; {current status of partial output} +@!out_val,@!out_app:integer; {pending values} +@!out_sign:ASCII_code; {sign to use if appending |out_val>=0|} +@!last_sign:-1..+1; {sign to use if appending a zero} + +@ During the output process, |line| will equal the number of the next line +to be output. + +@<Initialize the output buffer@>= +out_state:=misc; out_ptr:=0; break_ptr:=0; semi_ptr:=0; out_buf[0]:=0; line:=1; + +@ Here is a routine that is invoked when |out_ptr>line_length| +or when it is time to flush out the final line. The |flush_buffer| procedure +often writes out the line up to the current |break_ptr| position, then moves the +remaining information to the front of |out_buf|. However, it prefers to +write only up to |semi_ptr|, if the residual line won't be too long. + +@d check_break==if out_ptr>line_length then flush_buffer + +@p procedure flush_buffer; {writes one line to output file} +var k:0..out_buf_size; {index into |out_buf|} +@!b:0..out_buf_size; {value of |break_ptr| upon entry} +begin b:=break_ptr; +if (semi_ptr<>0)and(out_ptr-semi_ptr<=line_length) then break_ptr:=semi_ptr; +for k:=1 to break_ptr do write(Pascal_file,xchr[out_buf[k-1]]); +write_ln(Pascal_file); incr(line); +if line mod 100 = 0 then + begin print('.'); + if line mod 500 = 0 then print(line:1); + update_terminal; {progress report} + end; +if break_ptr<out_ptr then + begin if out_buf[break_ptr]=" " then + begin incr(break_ptr); {drop space at break} + if break_ptr>b then b:=break_ptr; + end; + for k:=break_ptr to out_ptr-1 do out_buf[k-break_ptr]:=out_buf[k]; + end; +out_ptr:=out_ptr-break_ptr; break_ptr:=b-break_ptr; semi_ptr:=0; +if out_ptr>line_length then + begin err_print('! Long line must be truncated'); out_ptr:=line_length; +@.Long line must be truncated@> + end; +end; + +@ @<Empty the last line from the buffer@>= +break_ptr:=out_ptr; semi_ptr:=0; flush_buffer; +if brace_level<>0 then + err_print('! Program ended at brace level ',brace_level:1); +@.Program ended at brace level n@> + +@ Another simple and useful routine appends the decimal equivalent of +a nonnegative integer to the output buffer. + +@d app(#)==begin out_buf[out_ptr]:=#; incr(out_ptr); {append a single character} + end + +@p procedure app_val(@!v:integer); {puts |v| into buffer, assumes |v>=0|} +var k:0..out_buf_size; {index into |out_buf|} +begin k:=out_buf_size; {first we put the digits at the very end of |out_buf|} +repeat out_buf[k]:=v mod 10; v:=v div 10; decr(k); +until v=0; +repeat incr(k); app(out_buf[k]+"0"); +until k=out_buf_size; {then we append them, most significant first} +end; + +@ The output states are kept up to date by the output routines, which are +called |send_out|, |send_val|, and |send_sign|. The |send_out| procedure +has two parameters: |t| tells the type of information being sent and +|v| contains the information proper. Some information may also be passed +in the array |out_contrib|. + +\yskip\hang If |t=misc| then |v| is a character to be output. + +\hang If |t=str| then |v| is the length of a string or something like `\.{<>}' +in |out_contrib|. + +\hang If |t=ident| then |v| is the length of an identifier in |out_contrib|. + +\hang If |t=frac| then |v| is the length of a fraction and/or exponent in +|out_contrib|. + +@d str=1 {|send_out| code for a string} +@d ident=2 {|send_out| code for an identifier} +@d frac=3 {|send_out| code for a fraction} + +@<Glob...@>= +@!out_contrib:array[1..line_length] of ASCII_code; {a contribution to |out_buf|} + +@ A slightly subtle point in the following code is that the user may ask +for a |join| operation (i.e., \.{@@\&}) following whatever is being sent +out. We will see later that |join| is implemented in part by calling +|send_out(frac,0)|. + +@p procedure send_out(@!t:eight_bits; @!v:sixteen_bits); + {outputs |v| of type |t|} +label restart; +var k: 0..line_length; {index into |out_contrib|} +begin @<Get the buffer ready for appending the new information@>; +if t<>misc then for k:=1 to v do app(out_contrib[k]) +else app(v); +check_break; +if (t=misc)and((v=";")or(v="}")) then + begin semi_ptr:=out_ptr; break_ptr:=out_ptr; + end; +if t>=ident then out_state:=num_or_id {|t=ident| or |frac|} +else out_state:=misc {|t=str| or |misc|} +end; + +@ Here is where the buffer states for signs and values collapse into simpler +states, because we are about to append something that doesn't combine with +the previous integer constants. + +We use an ASCII-code trick: Since |","-1="+"| and |","+1="-"|, we have +|","-c=@t sign of $c$@>|, when $\vert c\vert=1$. + +@<Get the buffer ready...@>= +restart: case out_state of +num_or_id: if t<>frac then + begin break_ptr:=out_ptr; + if t=ident then app(" "); + end; +sign: begin app(","-out_app); check_break; break_ptr:=out_ptr; + end; +sign_val,sign_val_sign: begin @<Append \(|out_val| to buffer@>; + out_state:=out_state-2; goto restart; + end; +sign_val_val: @<Reduce |sign_val_val| to |sign_val| and |goto restart|@>; +misc: if t<>frac then break_ptr:=out_ptr;@/ +othercases do_nothing {this is for |unbreakable| state} +endcases + +@ @<Append \(|out_val|...@>= +if (out_val<0)or((out_val=0)and(last_sign<0)) then app("-") +else if out_sign>0 then app(out_sign); +app_val(abs(out_val)); check_break; + +@ @<Reduce |sign_val_val|...@>= +begin if (t=frac)or(@<Contribution is \.* or \./ or \.{DIV} or \.{MOD}@>) then + begin @<Append \(|out_val| to buffer@>; + out_sign:="+"; out_val:=out_app; + end +else out_val:=out_val+out_app; +out_state:=sign_val; goto restart; +end + +@ @<Contribution is \.*...@>= +((t=ident)and(v=3)and@| + (((out_contrib[1]="D")and(out_contrib[2]="I")and(out_contrib[3]="V")) or@| + ((out_contrib[1]="M")and(out_contrib[2]="O")and(out_contrib[3]="D")) ))or@| +@^uppercase@> + ((t=misc)and((v="*")or(v="/"))) + +@ The following routine is called with $v=\pm1$ when a plus or minus sign is +appended to the output. It extends \PASCAL\ to allow repeated signs +(e.g., `\.{--}' is equivalent to `\.+'), rather than to give an error message. +The signs following `\.E' in real constants are treated as part of a fraction, +so they are not seen by this routine. + +@p procedure send_sign(@!v:integer); +begin case out_state of +sign, sign_val_sign: out_app:=out_app*v; +sign_val:begin out_app:=v; out_state:=sign_val_sign; + end; +sign_val_val: begin out_val:=out_val+out_app; out_app:=v; + out_state:=sign_val_sign; + end; +othercases begin break_ptr:=out_ptr; out_app:=v; out_state:=sign; + end +endcases;@/ +last_sign:=out_app; +end; + +@ When a (signed) integer value is to be output, we call |send_val|. + +@d bad_case=666 {this is a label used below} + +@p procedure send_val(@!v:integer); {output the (signed) value |v|} +label bad_case, {go here if we can't keep |v| in the output state} + exit; +begin case out_state of +num_or_id: begin @<If previous output was \.{DIV} or \.{MOD}, |goto bad_case|@>; + out_sign:=" "; out_state:=sign_val; out_val:=v; break_ptr:=out_ptr; + last_sign:=+1; + end; +misc: begin @<If previous output was \.* or \./, |goto bad_case|@>; + out_sign:=0; out_state:=sign_val; out_val:=v; break_ptr:=out_ptr; + last_sign:=+1; + end; +@t\4@>@<Handle cases of |send_val| when |out_state| contains a sign@>@; +othercases goto bad_case +endcases;@/ +return; +bad_case: @<Append the decimal value of |v|, with parentheses if negative@>; +exit: end; + +@ @<Handle cases of |send_val|...@>= +sign: begin out_sign:="+"; out_state:=sign_val; out_val:=out_app*v; + end; +sign_val: begin out_state:=sign_val_val; out_app:=v; + err_print('! Two numbers occurred without a sign between them'); + end; +sign_val_sign: begin out_state:=sign_val_val; out_app:=out_app*v; + end; +sign_val_val: begin out_val:=out_val+out_app; out_app:=v; + err_print('! Two numbers occurred without a sign between them'); +@.Two numbers occurred...@> + end; + +@ @<If previous output was \.*...@>= +if (out_ptr=break_ptr+1)and((out_buf[break_ptr]="*")or(out_buf[break_ptr]="/")) + then goto bad_case + +@ @<If previous output was \.{DIV}...@>= +if (out_ptr=break_ptr+3)or + ((out_ptr=break_ptr+4)and(out_buf[break_ptr]=" ")) then +@^uppercase@> + if ((out_buf[out_ptr-3]="D")and(out_buf[out_ptr-2]="I")and + (out_buf[out_ptr-1]="V"))or @/ + ((out_buf[out_ptr-3]="M")and(out_buf[out_ptr-2]="O")and + (out_buf[out_ptr-1]="D")) then@/ goto bad_case + +@ @<Append the decimal value...@>= +if v>=0 then + begin if out_state=num_or_id then + begin break_ptr:=out_ptr; app(" "); + end; + app_val(v); check_break; out_state:=num_or_id; + end +else begin app("("); app("-"); app_val(-v); app(")"); check_break; + out_state:=misc; + end + +@* The big output switch. +To complete the output process, we need a routine that takes the results +of |get_output| and feeds them to |send_out|, |send_val|, or |send_sign|. +This procedure `|send_the_output|' will be invoked just once, as follows: + +@<Phase II: Output the contents of the compressed tables@>= +if text_link[0]=0 then + begin print_nl('! No output was specified.'); mark_harmless; +@.No output was specified@> + end +else begin print_nl('Writing the output file'); update_terminal;@/ + @<Initialize the output stacks@>; + @<Initialize the output buffer@>; + send_the_output;@/ + @<Empty the last line...@>; + print_nl('Done.'); + end + +@ A many-way switch is used to send the output: + +@d get_fraction=2 {this label is used below} + +@p procedure send_the_output; +label get_fraction, {go here to finish scanning a real constant} + reswitch, continue; +var cur_char:eight_bits; {the latest character received} + @!k:0..line_length; {index into |out_contrib|} + @!j:0..max_bytes; {index into |byte_mem|} + @!w:0..ww-1; {segment of |byte_mem|} + @!n:integer; {number being scanned} +begin while stack_ptr>0 do + begin cur_char:=get_output; + reswitch: case cur_char of + 0: do_nothing; {this case might arise if output ends unexpectedly} + @t\4@>@<Cases related to identifiers@>@; + @t\4@>@<Cases related to constants, possibly leading to + |get_fraction| or |reswitch|@>@; + "+","-": send_sign(","-cur_char); + @t\4@>@<Cases like \.{<>} and \.{:=}@>@; + "'": @<Send a string, |goto reswitch|@>; + @<Other printable characters@>: send_out(misc,cur_char); + @t\4@>@<Cases involving \.{@@\{} and \.{@@\}}@>@; + join: begin send_out(frac,0); out_state:=unbreakable; + end; + verbatim: @<Send verbatim string@>; + force_line: @<Force a line break@>; + othercases err_print('! Can''t output ASCII code ',cur_char:1) +@.Can't output ASCII code n@> + endcases;@/ + goto continue; + get_fraction: @<Special code to finish real constants@>; + continue: end; +end; + +@ @<Cases like \.{<>}...@>= +and_sign: begin out_contrib[1]:="A"; out_contrib[2]:="N"; out_contrib[3]:="D"; +@^uppercase@> + send_out(ident,3); + end; +not_sign: begin out_contrib[1]:="N"; out_contrib[2]:="O"; out_contrib[3]:="T"; + send_out(ident,3); + end; +set_element_sign: begin out_contrib[1]:="I"; out_contrib[2]:="N"; + send_out(ident,2); + end; +or_sign: begin out_contrib[1]:="O"; out_contrib[2]:="R"; send_out(ident,2); + end; +left_arrow: begin out_contrib[1]:=":"; out_contrib[2]:="="; send_out(str,2); + end; +not_equal: begin out_contrib[1]:="<"; out_contrib[2]:=">"; send_out(str,2); + end; +less_or_equal: begin out_contrib[1]:="<"; out_contrib[2]:="="; send_out(str,2); + end; +greater_or_equal: begin out_contrib[1]:=">"; out_contrib[2]:="="; + send_out(str,2); + end; +equivalence_sign: begin out_contrib[1]:="="; out_contrib[2]:="="; + send_out(str,2); + end; +double_dot: begin out_contrib[1]:="."; out_contrib[2]:="."; send_out(str,2); + end; + +@ Please don't ask how all of the following characters can actually get +through \.{TANGLE} outside of strings. It seems that |""""| and |"{"| +cannot actually occur at this point of the program, but they have +been included just in case \.{TANGLE} changes. + +If \.{TANGLE} is producing code for a \PASCAL\ compiler that uses `\.{(.}' +and `\.{.)}' instead of square brackets (e.g., on machines with {\mc EBCDIC} +code), one should remove |"["| and |"]"| from this list and put them into +the preceding module in the appropriate way. Similarly, some compilers +want `\.\^' to be converted to `\.{@@}'. +@^system dependencies@>@^EBCDIC@> + +@<Other printable characters@>= +"!","""","#","$","%","&","(",")","*",",","/",":",";","<","=",">","?", +"@@","[","\","]","^","_","`","{","|" + +@ Single-character identifiers represent themselves, while longer ones +appear in |byte_mem|. All must be converted to uppercase, +with underlines removed. Extremely long identifiers must be chopped. + +(Some \PASCAL\ compilers work with lowercase letters instead of +uppercase. If this module of \.{TANGLE} is changed, it's also necessary +to change from uppercase to lowercase in the modules that are +listed in the index under ``uppercase''.) +@^system dependencies@> +@^uppercase@> + +@d up_to(#)==#-24,#-23,#-22,#-21,#-20,#-19,#-18,#-17,#-16,#-15,#-14, + #-13,#-12,#-11,#-10,#-9,#-8,#-7,#-6,#-5,#-4,#-3,#-2,#-1,# + +@<Cases related to identifiers@>= +"A",up_to("Z"): begin out_contrib[1]:=cur_char; send_out(ident,1); + end; +"a",up_to("z"): begin out_contrib[1]:=cur_char-@'40; send_out(ident,1); + end; +identifier: begin k:=0; j:=byte_start[cur_val]; w:=cur_val mod ww; + while (k<max_id_length)and(j<byte_start[cur_val+ww]) do + begin incr(k); out_contrib[k]:=byte_mem[w,j]; incr(j); + if out_contrib[k]>="a" then out_contrib[k]:=out_contrib[k]-@'40 + else if out_contrib[k]="_" then decr(k); + end; + send_out(ident,k); + end; + +@ After sending a string, we need to look ahead at the next character, in order +to see if there were two consecutive single-quote marks. Afterwards we go to +|reswitch| to process the next character. + +@<Send a string...@>= +begin k:=1; out_contrib[1]:="'"; +repeat if k<line_length then incr(k); +out_contrib[k]:=get_output; +until (out_contrib[k]="'")or(stack_ptr=0); +if k=line_length then err_print('! String too long'); +@.String too long@> +send_out(str,k); cur_char:=get_output; +if cur_char="'" then out_state:=unbreakable; +goto reswitch; +end + +@ Sending a verbatim string is similar, but we don't have to look ahead. + +@<Send verbatim string@>= +begin k:=0; +repeat if k<line_length then incr(k); +out_contrib[k]:=get_output; +until (out_contrib[k]=verbatim)or(stack_ptr=0); +if k=line_length then err_print('! Verbatim string too long'); +@.Verbatim string too long@> +send_out(str,k-1); +end + +@ In order to encourage portable software, \.{TANGLE} complains +if the constants get dangerously close to the largest value representable +on a 32-bit computer ($2^{31}-1$). + +@d digits=="0","1","2","3","4","5","6","7","8","9" + +@<Cases related to constants...@>= +digits: begin n:=0; + repeat cur_char:=cur_char-"0"; + if n>=@'1463146314 then err_print('! Constant too big') +@.Constant too big@> + else n:=10*n+cur_char; + cur_char:=get_output; + until (cur_char>"9")or(cur_char<"0"); + send_val(n); k:=0; + if cur_char="e" then cur_char:="E"; +@^uppercase@> + if cur_char="E" then goto get_fraction + else goto reswitch; + end; +check_sum: send_val(pool_check_sum); +octal: begin n:=0; cur_char:="0"; + repeat cur_char:=cur_char-"0"; + if n>=@'2000000000 then err_print('! Constant too big') + else n:=8*n+cur_char; + cur_char:=get_output; + until (cur_char>"7")or(cur_char<"0"); + send_val(n); goto reswitch; + end; +hex: begin n:=0; cur_char:="0"; + repeat if cur_char>="A" then cur_char:=cur_char+10-"A" + else cur_char:=cur_char-"0"; + if n>=@"8000000 then err_print('! Constant too big') + else n:=16*n+cur_char; + cur_char:=get_output; + until (cur_char>"F")or(cur_char<"0")or@| + ((cur_char>"9")and(cur_char<"A")); + send_val(n); goto reswitch; + end; +number: send_val(cur_val); +".": begin k:=1; out_contrib[1]:="."; cur_char:=get_output; + if cur_char="." then + begin out_contrib[2]:="."; send_out(str,2); + end + else if (cur_char>="0")and(cur_char<="9") then goto get_fraction + else begin send_out(misc,"."); goto reswitch; + end; + end; + +@ The following code appears at label `|get_fraction|', when we want to +scan to the end of a real constant. The first |k| characters of a fraction +have already been placed in |out_contrib|, and |cur_char| is the next character. + +@<Special code...@>= +repeat if k<line_length then incr(k); +out_contrib[k]:=cur_char; cur_char:=get_output; +if (out_contrib[k]="E")and((cur_char="+")or(cur_char="-")) then +@^uppercase@> + begin if k<line_length then incr(k); + out_contrib[k]:=cur_char; cur_char:=get_output; + end +else if cur_char="e" then cur_char:="E"; +until (cur_char<>"E")and((cur_char<"0")or(cur_char>"9")); +if k=line_length then err_print('! Fraction too long'); +@.Fraction too long@> +send_out(frac,k); goto reswitch + +@ Some \PASCAL\ compilers do not recognize comments in braces, so the +comments must be delimited by `\.{(*}' and `\.{*)}'. +@^system dependencies@> +In such cases the statement `|out_contrib[1]:="{"|' that appears here should +be replaced by `\ignorespaces|begin out_contrib[1]:="("; out_contrib[2]:="*"; +incr(k); end|', and a similar change should be made to +`|out_contrib[k]:="}"|'. + +@<Cases involving \.{@@\{} and \.{@@\}}@>= +begin_comment: begin if brace_level=0 then send_out(misc,"{") + else send_out(misc,"["); + incr(brace_level); + end; +end_comment: if brace_level>0 then + begin decr(brace_level); + if brace_level=0 then send_out(misc,"}") + else send_out(misc,"]"); + end + else err_print('! Extra @@}'); +@.Extra \AT!\}@> +module_number: begin k:=2; + if brace_level=0 then out_contrib[1]:="{" + else out_contrib[1]:="["; + if cur_val<0 then + begin out_contrib[k]:=":"; cur_val:=-cur_val; incr(k); + end; + n:=10; + while cur_val>=n do n:=10*n; + repeat n:=n div 10; + out_contrib[k]:="0"+(cur_val div n); cur_val:=cur_val mod n; incr(k); + until n=1; + if out_contrib[2]<>":" then + begin out_contrib[k]:=":"; incr(k); + end; + if brace_level=0 then out_contrib[k]:="}" + else out_contrib[k]:="]"; + send_out(str,k); + end; + +@ @<Force a line break@>= +begin send_out(str,0); {normalize the buffer} +while out_ptr>0 do + begin if out_ptr<=line_length then break_ptr:=out_ptr; + flush_buffer; + end; +out_state:=misc; +end + +@* Introduction to the input phase. +We have now seen that \.{TANGLE} will be able to output the full +\PASCAL\ program, if we can only get that program into the byte memory in +the proper format. The input process is something like the output process +in reverse, since we compress the text as we read it in and we expand it +as we write it out. + +There are three main input routines. The most interesting is the one that gets +the next token of a \PASCAL\ text; the other two are used to scan rapidly past +\TeX\ text in the \.{WEB} source code. One of the latter routines will jump to +the next token that starts with `\.{@@}', and the other skips to the end +of a \PASCAL\ comment. + +@ But first we need to consider the low-level routine |get_line| +that takes care of merging |change_file| into |web_file|. The |get_line| +procedure also updates the line numbers for error messages. + +@<Globals...@>= +@!ii:integer; {general purpose |for| loop variable in the outer block} +@!line:integer; {the number of the current line in the current file} +@!other_line:integer; {the number of the current line in the input file that + is not currently being read} +@!temp_line:integer; {used when interchanging |line| with |other_line|} +@!limit:0..buf_size; {the last character position occupied in the buffer} +@!loc:0..buf_size; {the next character position to be read from the buffer} +@!input_has_ended: boolean; {if |true|, there is no more input} +@!changing: boolean; {if |true|, the current line is from |change_file|} + +@ As we change |changing| from |true| to |false| and back again, we must +remember to swap the values of |line| and |other_line| so that the |err_print| +routine will be sure to report the correct line number. + +@d change_changing== + changing := not changing; + temp_line:=other_line; other_line:=line; line:=temp_line + {|line @t$\null\BA\null$@> other_line|} + +@ When |changing| is |false|, the next line of |change_file| is kept in +|change_buffer[0..change_limit]|, for purposes of comparison with the next +line of |web_file|. After the change file has been completely input, we +set |change_limit:=0|, so that no further matches will be made. + +@<Globals...@>= +@!change_buffer:array[0..buf_size] of ASCII_code; +@!change_limit:0..buf_size; {the last position occupied in |change_buffer|} + +@ Here's a simple function that checks if the two buffers are different. + +@p function lines_dont_match:boolean; +label exit; +var k:0..buf_size; {index into the buffers} +begin lines_dont_match:=true; +if change_limit<>limit then return; +if limit>0 then + for k:=0 to limit-1 do if change_buffer[k]<>buffer[k] then return; +lines_dont_match:=false; +exit: end; + +@ Procedure |prime_the_change_buffer| sets |change_buffer| in preparation +for the next matching operation. Since blank lines in the change file are +not used for matching, we have |(change_limit=0)and not changing| if and +only if the change file is exhausted. This procedure is called only +when |changing| is true; hence error messages will be reported correctly. + +@p procedure prime_the_change_buffer; +label continue, done, exit; +var k:0..buf_size; {index into the buffers} +begin change_limit:=0; {this value will be used if the change file ends} +@<Skip over comment lines in the change file; |return| if end of file@>; +@<Skip to the next nonblank line; |return| if end of file@>; +@<Move |buffer| and |limit| to |change_buffer| and |change_limit|@>; +exit: end; + +@ While looking for a line that begins with \.{@@x} in the change file, +we allow lines that begin with \.{@@}, as long as they don't begin with +\.{@@y} or \.{@@z} (which would probably indicate that the change file is +fouled up). + +@<Skip over comment lines in the change file...@>= +loop@+ begin incr(line); + if not input_ln(change_file) then return; + if limit<2 then goto continue; + if buffer[0]<>"@@" then goto continue; + if (buffer[1]>="X")and(buffer[1]<="Z") then + buffer[1]:=buffer[1]+"z"-"Z"; {lowercasify} + if buffer[1]="x" then goto done; + if (buffer[1]="y")or(buffer[1]="z") then + begin loc:=2; err_print('! Where is the matching @@x?'); +@.Where is the match...@> + end; +continue: end; +done: + +@ Here we are looking at lines following the \.{@@x}. + +@<Skip to the next nonblank line...@>= +repeat incr(line); + if not input_ln(change_file) then + begin err_print('! Change file ended after @@x'); +@.Change file ended...@> + return; + end; +until limit>0; + +@ @<Move |buffer| and |limit| to |change_buffer| and |change_limit|@>= +begin change_limit:=limit; +if limit>0 then for k:=0 to limit-1 do change_buffer[k]:=buffer[k]; +end + +@ The following procedure is used to see if the next change entry should +go into effect; it is called only when |changing| is false. +The idea is to test whether or not the current +contents of |buffer| matches the current contents of |change_buffer|. +If not, there's nothing more to do; but if so, a change is called for: +All of the text down to the \.{@@y} is supposed to match. An error +message is issued if any discrepancy is found. Then the procedure +prepares to read the next line from |change_file|. + +@p procedure check_change; {switches to |change_file| if the buffers match} +label exit; +var n:integer; {the number of discrepancies found} +@!k:0..buf_size; {index into the buffers} +begin if lines_dont_match then return; +n:=0; +loop@+ begin change_changing; {now it's |true|} + incr(line); + if not input_ln(change_file) then + begin err_print('! Change file ended before @@y'); +@.Change file ended...@> + change_limit:=0; change_changing; {|false| again} + return; + end; + @<If the current line starts with \.{@@y}, + report any discrepancies and |return|@>; + @<Move |buffer| and |limit|...@>; + change_changing; {now it's |false|} + incr(line); + if not input_ln(web_file) then + begin err_print('! WEB file ended during a change'); +@.WEB file ended...@> + input_has_ended:=true; return; + end; + if lines_dont_match then incr(n); + end; +exit: end; + +@ @<If the current line starts with \.{@@y}...@>= +if limit>1 then if buffer[0]="@@" then + begin if (buffer[1]>="X")and(buffer[1]<="Z") then + buffer[1]:=buffer[1]+"z"-"Z"; {lowercasify} + if (buffer[1]="x")or(buffer[1]="z") then + begin loc:=2; err_print('! Where is the matching @@y?'); +@.Where is the match...@> + end + else if buffer[1]="y" then + begin if n>0 then + begin loc:=2; err_print('! Hmm... ',n:1, + ' of the preceding lines failed to match'); +@.Hmm... n of the preceding...@> + end; + return; + end; + end + +@ @<Initialize the input system@>= +open_input; line:=0; other_line:=0;@/ +changing:=true; prime_the_change_buffer; change_changing;@/ +limit:=0; loc:=1; buffer[0]:=" "; input_has_ended:=false; + +@ The |get_line| procedure is called when |loc>limit|; it puts the next +line of merged input into the buffer and updates the other variables +appropriately. A space is placed at the right end of the line. + +@p procedure get_line; {inputs the next line} +label restart; +begin restart: if changing then + @<Read from |change_file| and maybe turn off |changing|@>; +if not changing then + begin @<Read from |web_file| and maybe turn on |changing|@>; + if changing then goto restart; + end; +loc:=0; buffer[limit]:=" "; +end; + +@ @<Read from |web_file|...@>= +begin incr(line); +if not input_ln(web_file) then input_has_ended:=true +else if limit=change_limit then + if buffer[0]=change_buffer[0] then + if change_limit>0 then check_change; +end + +@ @<Read from |change_file|...@>= +begin incr(line); +if not input_ln(change_file) then + begin err_print('! Change file ended without @@z'); +@.Change file ended...@> + buffer[0]:="@@"; buffer[1]:="z"; limit:=2; + end; +if limit>1 then {check if the change has ended} + if buffer[0]="@@" then + begin if (buffer[1]>="X")and(buffer[1]<="Z") then + buffer[1]:=buffer[1]+"z"-"Z"; {lowercasify} + if (buffer[1]="x")or(buffer[1]="y") then + begin loc:=2; err_print('! Where is the matching @@z?'); +@.Where is the match...@> + end + else if buffer[1]="z" then + begin prime_the_change_buffer; change_changing; + end; + end; +end + +@ At the end of the program, we will tell the user if the change file +had a line that didn't match any relevant line in |web_file|. + +@<Check that all changes have been read@>= +if change_limit<>0 then {|changing| is false} + begin for ii:=0 to change_limit do buffer[ii]:=change_buffer[ii]; + limit:=change_limit; changing:=true; line:=other_line; loc:=change_limit; + err_print('! Change file entry did not match'); +@.Change file entry did not match@> + end + +@ Important milestones are reached during the input phase when certain +control codes are sensed. + +Control codes in \.{WEB} begin with `\.{@@}', and the next character +identifies the code. Some of these are of interest only to \.{WEAVE}, +so \.{TANGLE} ignores them; the others are converted by \.{TANGLE} into +internal code numbers by the |control_code| function below. The ordering +of these internal code numbers has been chosen to simplify the program logic; +larger numbers are given to the control codes that denote more significant +milestones. + +@d ignore=0 {control code of no interest to \.{TANGLE}} +@d control_text=@'203 {control code for `\.{@@t}', `\.{@@\^}', etc.} +@d format=@'204 {control code for `\.{@@f}'} +@d definition=@'205 {control code for `\.{@@d}'} +@d begin_Pascal=@'206 {control code for `\.{@@p}'} +@d module_name=@'207 {control code for `\.{@@<}'} +@d new_module=@'210 {control code for `\.{@@\ }' and `\.{@@*}'} + +@p function control_code(@!c:ASCII_code):eight_bits; {convert |c| after \.{@@}} +begin case c of +"@@": control_code:="@@"; {`quoted' at sign} +"'": control_code:=octal; {precedes octal constant} +"""": control_code:=hex; {precedes hexadecimal constant} +"$": control_code:=check_sum; {string pool check sum} +" ",tab_mark: control_code:=new_module; {beginning of a new module} +"*": begin print('*',module_count+1:1); + update_terminal; {print a progress report} + control_code:=new_module; {beginning of a new module} + end; +"D","d": control_code:=definition; {macro definition} +"F","f": control_code:=format; {format definition} +"{": control_code:=begin_comment; {begin-comment delimiter} +"}": control_code:=end_comment; {end-comment delimiter} +"P","p": control_code:=begin_Pascal; {\PASCAL\ text in unnamed module} +"T","t","^",".",":": control_code:=control_text; {control text to be ignored} +"&": control_code:=join; {concatenate two tokens} +"<": control_code:=module_name; {beginning of a module name} +"=": control_code:=verbatim; {beginning of \PASCAL\ verbatim mode} +"\": control_code:=force_line; {force a new line in \PASCAL\ output} +othercases control_code:=ignore {ignore all other cases} +endcases; +end; + +@ The |skip_ahead| procedure reads through the input at fairly high speed +until finding the next non-ignorable control code, which it returns. + +@p function skip_ahead:eight_bits; {skip to next control code} +label done; +var c:eight_bits; {control code found} +begin loop begin if loc>limit then + begin get_line; + if input_has_ended then + begin c:=new_module; goto done; + end; + end; + buffer[limit+1]:="@@"; + while buffer[loc]<>"@@" do incr(loc); + if loc<=limit then + begin loc:=loc+2; c:=control_code(buffer[loc-1]); + if (c<>ignore)or(buffer[loc-1]=">") then goto done; + end; + end; +done: skip_ahead:=c; +end; + +@ The |skip_comment| procedure reads through the input at somewhat high speed +until finding the first unmatched right brace or until coming to the end +of the file. It ignores characters following `\.\\' characters, since all +braces that aren't nested are supposed to be hidden in that way. For +example, consider the process of skipping the first comment below, +where the string containing the right brace has been typed as \.{\`\\.\\\}\'} +in the \.{WEB} file. + +@p procedure skip_comment; {skips to next unmatched `\.\}'} +label exit; +var bal:eight_bits; {excess of left braces} +@!c:ASCII_code; {current character} +begin bal:=0; +loop@+ begin if loc>limit then + begin get_line; + if input_has_ended then + begin err_print('! Input ended in mid-comment'); +@.Input ended in mid-comment@> + return; + end; + end; + c:=buffer[loc]; incr(loc); + @<Do special things when |c="@@", "\", "{", "}"|; |return| at end@>; + end; +exit:end; + +@ @<Do special things when |c="@@"...@>= +if c="@@" then + begin c:=buffer[loc]; + if (c<>" ")and(c<>tab_mark)and(c<>"*")and(c<>"z")and(c<>"Z") then incr(loc) + else begin err_print('! Section ended in mid-comment'); +@.Section ended in mid-comment@> + decr(loc); return; + end + end +else if (c="\")and(buffer[loc]<>"@@") then incr(loc) +else if c="{" then incr(bal) +else if c="}" then + begin if bal=0 then return; + decr(bal); + end + +@* Inputting the next token. +As stated above, \.{TANGLE}'s most interesting input procedure is the +|get_next| routine that inputs the next token. However, the procedure +isn't especially difficult. + +In most cases the tokens output by |get_next| have the form used in +replacement texts, except that two-byte tokens are not produced. +An identifier that isn't one letter long is represented by the +output `|identifier|', and in such a case the global variables +|id_first| and |id_loc| will have been set to the appropriate values +needed by the |id_lookup| procedure. A string that begins with a +double-quote is also considered an |identifier|, and in such a case +the global variable |double_chars| will also have been set appropriately. +Control codes produce the corresponding output of the |control_code| +function above; and if that code is |module_name|, the value of |cur_module| +will point to the |byte_start| entry for that module name. + +Another global variable, |scanning_hex|, is |true| during the time that +the letters \.A through \.F should be treated as if they were digits. + +@<Globals...@>= +@!cur_module: name_pointer; {name of module just scanned} +@!scanning_hex: boolean; {are we scanning a hexadecimal constant?} + +@ @<Set init...@>= +scanning_hex:=false; + +@ At the top level, |get_next| is a multi-way switch based on the next +character in the input buffer. A |new_module| code is inserted at the +very end of the input file. + +@p function get_next:eight_bits; {produces the next input token} +label restart,done,found; +var c:eight_bits; {the current character} +@!d:eight_bits; {the next character} +@!j,@!k:0..longest_name; {indices into |mod_text|} +begin restart: if loc>limit then + begin get_line; + if input_has_ended then + begin c:=new_module; goto found; + end; + end; +c:=buffer[loc]; incr(loc); +if scanning_hex then @<Go to |found| if |c| is a hexadecimal digit, + otherwise set |scanning_hex:=false|@>; +case c of +"A",up_to("Z"),"a",up_to("z"): @<Get an identifier@>; +"""": @<Get a preprocessed string@>; +"@@": @<Get control code and possible module name@>; +@t\4@>@<Compress two-symbol combinations like `\.{:=}'@>@; +" ",tab_mark: goto restart; {ignore spaces and tabs} +"{": begin skip_comment; goto restart; + end; +"}": begin err_print('! Extra }'); goto restart; +@.Extra \}@> + end; +othercases if c>=128 then goto restart {ignore nonstandard characters} + else do_nothing +endcases; +found:@!debug if trouble_shooting then debug_help;@;@+gubed@/ +get_next:=c; +end; + +@ @<Go to |found| if |c| is a hexadecimal digit...@>= +if ((c>="0")and(c<="9"))or((c>="A")and(c<="F")) then goto found +else scanning_hex:=false + +@ Note that the following code substitutes \.{@@\{} and \.{@@\}} for the +respective combinations `\.{(*}' and `\.{*)}'. Explicit braces should be used +for \TeX\ comments in \PASCAL\ text. + +@d compress(#)==begin if loc<=limit then begin c:=#; incr(loc); end; end + +@<Compress two-symbol...@>= +".": if buffer[loc]="." then compress(double_dot) + else if buffer[loc]=")" then compress("]"); +":": if buffer[loc]="=" then compress(left_arrow); +"=": if buffer[loc]="=" then compress(equivalence_sign); +">": if buffer[loc]="=" then compress(greater_or_equal); +"<": if buffer[loc]="=" then compress(less_or_equal) + else if buffer[loc]=">" then compress(not_equal); +"(": if buffer[loc]="*" then compress(begin_comment) + else if buffer[loc]="." then compress("["); +"*": if buffer[loc]=")" then compress(end_comment); + +@ We have to look at the preceding character to make sure this isn't part +of a real constant, before trying to find an identifier starting with +`\.e' or `\.E'. + +@<Get an identifier@>= +begin if ((c="e")or(c="E"))and(loc>1) then + if (buffer[loc-2]<="9")and(buffer[loc-2]>="0") then c:=0; +if c<>0 then + begin decr(loc); id_first:=loc; + repeat incr(loc); d:=buffer[loc]; + until ((d<"0")or((d>"9")and(d<"A"))or((d>"Z")and(d<"a"))or(d>"z")) and + (d<>"_"); + if loc>id_first+1 then + begin c:=identifier; id_loc:=loc; + end; + end +else c:="E"; {exponent of a real constant} +end + +@ A string that starts and ends with double-quote marks is converted into +an identifier that behaves like a numeric macro by means of the following +piece of the program. +@^preprocessed strings@> + +@<Get a preprocessed string@>= +begin double_chars:=0; id_first:=loc-1; +repeat d:=buffer[loc]; incr(loc); + if (d="""")or(d="@@") then + if buffer[loc]=d then + begin incr(loc); d:=0; incr(double_chars); + end + else begin if d="@@" then err_print('! Double @@ sign missing') +@.Double \AT! sign missing@> + end + else if loc>limit then + begin err_print('! String constant didn''t end'); d:=""""; +@.String constant didn't end@> + end; +until d=""""; +id_loc:=loc-1; c:=identifier; +end + +@ After an \.{@@} sign has been scanned, the next character tells us +whether there is more work to do. + +@<Get control code and possible module name@>= +begin c:=control_code(buffer[loc]); incr(loc); +if c=ignore then goto restart +else if c=hex then scanning_hex:=true +else if c=module_name then + @<Scan the \(module name and make |cur_module| point to it@> +else if c=control_text then + begin repeat c:=skip_ahead; + until c<>"@@"; + if buffer[loc-1]<>">" then + err_print('! Improper @@ within control text'); +@.Improper \AT! within control text@> + goto restart; + end; +end + +@ @<Scan the \(module name...@>= +begin @<Put module name into |mod_text[1..k]|@>; +if k>3 then + begin if (mod_text[k]=".")and(mod_text[k-1]=".")and(mod_text[k-2]=".") then + cur_module:=prefix_lookup(k-3) + else cur_module:=mod_lookup(k); + end +else cur_module:=mod_lookup(k); +end + +@ Module names are placed into the |mod_text| array with consecutive spaces, +tabs, and carriage-returns replaced by single spaces. There will be no +spaces at the beginning or the end. (We set |mod_text[0]:=" "| to facilitate +this, since the |mod_lookup| routine uses |mod_text[1]| as the first +character of the name.) + +@<Set init...@>=mod_text[0]:=" "; + +@ @<Put module name...@>= +k:=0; +loop@+ begin if loc>limit then + begin get_line; + if input_has_ended then + begin err_print('! Input ended in section name'); +@.Input ended in section name@> + goto done; + end; + end; + d:=buffer[loc]; + @<If end of name, |goto done|@>; + incr(loc); if k<longest_name-1 then incr(k); + if (d=" ")or(d=tab_mark) then + begin d:=" "; if mod_text[k-1]=" " then decr(k); + end; + mod_text[k]:=d; + end; +done: @<Check for overlong name@>; +if (mod_text[k]=" ")and(k>0) then decr(k); + +@ @<If end of name,...@>= +if d="@@" then + begin d:=buffer[loc+1]; + if d=">" then + begin loc:=loc+2; goto done; + end; + if (d=" ")or(d=tab_mark)or(d="*") then + begin err_print('! Section name didn''t end'); goto done; +@.Section name didn't end@> + end; + incr(k); mod_text[k]:="@@"; incr(loc); {now |d=buffer[loc]| again} + end + +@ @<Check for overlong name@>= +if k>=longest_name-2 then + begin print_nl('! Section name too long: '); +@.Section name too long@> + for j:=1 to 25 do print(xchr[mod_text[j]]); + print('...'); mark_harmless; + end + +@* Scanning a numeric definition. +When \.{TANGLE} looks at the \PASCAL\ text following the `\.=' of a numeric +macro definition, it calls on the precedure |scan_numeric(p)|, where |p| +points to the name that is to be defined. This procedure evaluates the +right-hand side, which must consist entirely of integer constants and +defined numeric macros connected with \.+ and \.- signs (no parentheses). +It also sets the global variable |next_control| to the control code that +terminated this definition. + +A definition ends with the control codes |definition|, |format|, |module_name|, +|begin_Pascal|, and |new_module|, all of which can be recognized +by the fact that they are the largest values |get_next| can return. + +@d end_of_definition(#)==(#>=format) + {is |#| a control code ending a definition?} + +@<Global...@>= +@!next_control:eight_bits; {control code waiting to be acted upon} + +@ The evaluation of a numeric expression makes use of two variables called the +|accumulator| and the |next_sign|. At the beginning, |accumulator| is zero and +|next_sign| is $+1$. When a \.+ or \.- is scanned, |next_sign| is multiplied +by the value of that sign. When a numeric value is scanned, it is multiplied by +|next_sign| and added to the |accumulator|, then |next_sign| is reset to $+1$. + +@d add_in(#)==begin accumulator:=accumulator+next_sign*(#); next_sign:=+1; + end + +@p procedure scan_numeric(@!p:name_pointer); {defines numeric macros} +label reswitch, done; +var accumulator:integer; {accumulates sums} +@!next_sign:-1..+1; {sign to attach to next value} +@!q:name_pointer; {points to identifiers being evaluated} +@!val:integer; {constants being evaluated} +begin @<Set \(|accumulator| to the value of the right-hand side@>; +if abs(accumulator)>=@'100000 then + begin err_print('! Value too big: ',accumulator:1); accumulator:=0; +@.Value too big@> + end; +equiv[p]:=accumulator+@'100000; {name |p| now is defined to equal |accumulator|} +end; + +@ @<Set \(|accumulator| to the value of the right-hand side@>= +accumulator:=0; next_sign:=+1; +loop@+ begin next_control:=get_next; + reswitch: case next_control of + digits: begin @<Set |val| to value of decimal constant, and + set |next_control| to the following token@>; + add_in(val); goto reswitch; + end; + octal: begin @<Set |val| to value of octal constant, and + set |next_control| to the following token@>; + add_in(val); goto reswitch; + end; + hex: begin @<Set |val| to value of hexadecimal constant, and + set |next_control| to the following token@>; + add_in(val); goto reswitch; + end; + identifier: begin q:=id_lookup(normal); + if ilk[q]<>numeric then + begin next_control:="*"; goto reswitch; {leads to error} + end; + add_in(equiv[q]-@'100000); + end; + "+": do_nothing; + "-": next_sign:=-next_sign; + format, definition, module_name, begin_Pascal, new_module: goto done; + ";": err_print('! Omit semicolon in numeric definition'); +@.Omit semicolon in numeric def...@> + othercases @<Signal error, flush rest of the definition@> + endcases; + end; +done: + +@ @<Signal error, flush rest...@>= +begin err_print('! Improper numeric definition will be flushed'); +@.Improper numeric definition...@> +repeat next_control:=skip_ahead +until end_of_definition(next_control); +if next_control=module_name then + begin {we want to scan the module name too} + loc:=loc-2; next_control:=get_next; + end; +accumulator:=0; goto done; +end + +@ @<Set |val| to value of decimal...@>= +val:=0; +repeat val:=10*val+next_control-"0"; next_control:=get_next; +until (next_control>"9")or(next_control<"0") + +@ @<Set |val| to value of octal...@>= +val:=0; next_control:="0"; +repeat val:=8*val+next_control-"0"; next_control:=get_next; +until (next_control>"7")or(next_control<"0") + +@ @<Set |val| to value of hex...@>= +val:=0; next_control:="0"; +repeat if next_control>="A" then next_control:=next_control+"0"+10-"A"; +val:=16*val+next_control-"0"; next_control:=get_next; +until (next_control>"F")or(next_control<"0")or@| + ((next_control>"9")and(next_control<"A")) + +@* Scanning a macro definition. +The rules for generating the replacement texts corresponding to simple +macros, parametric macros, and \PASCAL\ texts of a module are almost +identical, so a single procedure is used for all three cases. The +differences are that + +\yskip\item{a)} The sign |#| denotes a parameter only when it appears +outside of strings in a parametric macro; otherwise it stands for the +ASCII character |#|. (This is not used in standard \PASCAL, but some +\PASCAL s allow, for example, `\.{/\#}' after a certain kind of file name.) + +\item{b)}Module names are not allowed in simple macros or parametric macros; +in fact, the appearance of a module name terminates such macros and denotes +the name of the current module. + +\item{c)}The symbols \.{@@d} and \.{@@f} and \.{@@p} are not allowed after +module names, while they terminate macro definitions. + +@ Therefore there is a procedure |scan_repl| whose parameter |t| specifies +either |simple| or |parametric| or |module_name|. After |scan_repl| has +acted, |cur_repl_text| will point to the replacement text just generated, and +|next_control| will contain the control code that terminated the activity. + +@<Globals...@>= +@!cur_repl_text:text_pointer; {replacement text formed by |scan_repl|} + +@ @p procedure scan_repl(@!t:eight_bits); {creates a replacement text} +label continue, done, found, reswitch; +var a:sixteen_bits; {the current token} +@!b:ASCII_code; {a character from the buffer} +@!bal:eight_bits; {left parentheses minus right parentheses} +begin bal:=0; +loop@+ begin continue: a:=get_next; + case a of + "(": incr(bal); + ")": if bal=0 then err_print('! Extra )') +@.Extra )@> + else decr(bal); + "'": @<Copy a string from the buffer to |tok_mem|@>; + "#": if t=parametric then a:=param; + @t\4@>@<In cases that |a| is a non-ASCII token (|identifier|, + |module_name|, etc.), either process it and change |a| to a byte + that should be stored, or |goto continue| if |a| should be ignored, + or |goto done| if |a| signals the end of this replacement text@>@; + othercases do_nothing + endcases;@/ + app_repl(a); {store |a| in |tok_mem|} + end; +done: next_control:=a; +@<Make sure the parentheses balance@>; +if text_ptr>max_texts-zz then overflow('text'); +cur_repl_text:=text_ptr; tok_start[text_ptr+zz]:=tok_ptr[z]; +incr(text_ptr); +if z=zz-1 then z:=0@+else incr(z); +end; + +@ @<Make sure the parentheses balance@>= +if bal>0 then + begin if bal=1 then err_print('! Missing )') + else err_print('! Missing ',bal:1,' )''s'); +@.Missing n )@> + while bal>0 do + begin app_repl(")"); decr(bal); + end; + end + +@ @<In cases that |a| is...@>= +identifier: begin a:=id_lookup(normal); app_repl((a div @'400)+@'200); + a:=a mod @'400; + end; +module_name: if t<>module_name then goto done + else begin app_repl((cur_module div @'400)+@'250); + a:=cur_module mod @'400; + end; +verbatim: @<Copy verbatim string from the buffer to |tok_mem|@>; +definition, format, begin_Pascal: if t<>module_name then goto done + else begin err_print('! @@',xchr[buffer[loc-1]], +@.\AT!p is ignored in Pascal text@> +@.\AT!d is ignored in Pascal text@> +@.\AT!f is ignored in Pascal text@> + ' is ignored in Pascal text'); goto continue; + end; +new_module: goto done; + +@ @<Copy a string...@>= +begin b:="'"; +loop@+ begin app_repl(b); + if b="@@" then + if buffer[loc]="@@" then incr(loc) {store only one \.{@@}} + else err_print('! You should double @@ signs in strings'); +@.You should double \AT! signs@> + if loc=limit then + begin err_print('! String didn''t end'); +@.String didn't end@> + buffer[loc]:="'"; buffer[loc+1]:=0; + end; + b:=buffer[loc]; incr(loc); + if b="'" then + begin if buffer[loc]<>"'" then goto found + else begin incr(loc); app_repl("'"); + end; + end; + end; +found: end {now |a| holds the final |"'"| that will be stored} + +@ @<Copy verbatim string...@>= +begin app_repl(verbatim); +buffer[limit+1]:="@@"; +reswitch: if buffer[loc]="@@" then + begin if loc<limit then if buffer[loc+1]="@@" then + begin app_repl("@@"); + loc:=loc+2; + goto reswitch; + end; + end +else begin app_repl(buffer[loc]); + incr(loc); + goto reswitch; + end; +if loc>=limit then err_print('! Verbatim string didn''t end') +@.Verbatim string didn't end@> +else if buffer[loc+1]<>">" then + err_print('! You should double @@ signs in verbatim strings'); +@.You should double \AT! signs@> +loc:=loc+2; +end {another |verbatim| byte will be stored, since |a=verbatim|} + +@ The following procedure is used to define a simple or parametric macro, +just after the `\.{==}' of its definition has been scanned. + +@p procedure define_macro(@!t:eight_bits); +var p:name_pointer; {the identifier being defined} +begin p:=id_lookup(t); scan_repl(t);@/ +equiv[p]:=cur_repl_text; text_link[cur_repl_text]:=0; +end; + +@* Scanning a module. +The |scan_module| procedure starts when `\.{@@\ }' or `\.{@@*}' has been +sensed in the input, and it proceeds until the end of that module. It +uses |module_count| to keep track of the current module number; with luck, +\.{WEAVE} and \.{TANGLE} will both assign the same numbers to modules. + +@<Globals...@>= +@!module_count:0..@'27777; {the current module number} + +@ The top level of |scan_module| is trivial. +@p procedure scan_module; +label continue, done, exit; +var p:name_pointer; {module name for the current module} +begin incr(module_count); +@<Scan the \(definition part of the current module@>; +@<Scan the \PASCAL\ part of the current module@>; +exit: end; + +@ @<Scan the \(definition part...@>= +next_control:=0; +loop@+ begin continue: while next_control<=format do + begin next_control:=skip_ahead; + if next_control=module_name then + begin {we want to scan the module name too} + loc:=loc-2; next_control:=get_next; + end; + end; + if next_control<>definition then goto done; + next_control:=get_next; {get identifier name} + if next_control<>identifier then + begin err_print('! Definition flushed, must start with ', +@.Definition flushed...@> + 'identifier of length > 1'); goto continue; + end; + next_control:=get_next; {get token after the identifier} + if next_control="=" then + begin scan_numeric(id_lookup(numeric)); goto continue; + end + else if next_control=equivalence_sign then + begin define_macro(simple); goto continue; + end + else @<If the next text is `|(#)==|', call |define_macro| + and |goto continue|@>; + err_print('! Definition flushed since it starts badly'); +@.Definition flushed...@> + end; +done: + +@ @<If the next text is `|(#)==|'...@>= +if next_control="(" then + begin next_control:=get_next; + if next_control="#" then + begin next_control:=get_next; + if next_control=")" then + begin next_control:=get_next; + if next_control="=" then + begin err_print('! Use == for macros'); +@.Use == for macros@> + next_control:=equivalence_sign; + end; + if next_control=equivalence_sign then + begin define_macro(parametric); goto continue; + end; + end; + end; + end; + +@ @<Scan the \PASCAL...@>= +case next_control of +begin_Pascal:p:=0; +module_name: begin p:=cur_module; + @<Check that |=| or |==| follows this module name, otherwise |return|@>; + end; +othercases return +endcases;@/ +@<Insert the module number into |tok_mem|@>; +scan_repl(module_name); {now |cur_repl_text| points to the replacement text} +@<Update the data structure so that the replacement text is accessible@>; + +@ @<Check that |=|...@>= +repeat next_control:=get_next; +until next_control<>"+"; {allow optional `\.{+=}'} +if (next_control<>"=")and(next_control<>equivalence_sign) then + begin err_print('! Pascal text flushed, = sign is missing'); +@.Pascal text flushed...@> + repeat next_control:=skip_ahead; + until next_control=new_module; + return; + end + +@ @<Insert the module number...@>= +store_two_bytes(@'150000+module_count); {|@'150000=@'320*@'400|} + +@ @<Update the data...@>= +if p=0 then {unnamed module} + begin text_link[last_unnamed]:=cur_repl_text; last_unnamed:=cur_repl_text; + end +else if equiv[p]=0 then equiv[p]:=cur_repl_text {first module of this name} +else begin p:=equiv[p]; + while text_link[p]<module_flag do p:=text_link[p]; {find end of list} + text_link[p]:=cur_repl_text; + end; +text_link[cur_repl_text]:=module_flag; + {mark this replacement text as a nonmacro} + +@* Debugging. +The \PASCAL\ debugger with which \.{TANGLE} was developed allows breakpoints +to be set, and variables can be read and changed, but procedures cannot be +executed. Therefore a `|debug_help|' procedure has been inserted in the main +loops of each phase of the program; when |ddt| and |dd| are set to appropriate +values, symbolic printouts of various tables will appear. + +The idea is to set a breakpoint inside the |debug_help| routine, at the +place of `\ignorespaces|breakpoint:|\unskip' below. Then when +|debug_help| is to be activated, set |trouble_shooting| equal to |true|. +The |debug_help| routine will prompt you for values of |ddt| and |dd|, +discontinuing this when |ddt<=0|; thus you type $2n+1$ integers, ending +with zero or a negative number. Then control either passes to the +breakpoint, allowing you to look at and/or change variables (if you typed +zero), or to exit the routine (if you typed a negative value). + +Another global variable, |debug_cycle|, can be used to skip silently +past calls on |debug_help|. If you set |debug_cycle>1|, the program stops +only every |debug_cycle| times |debug_help| is called; however, +any error stop will set |debug_cycle| to zero. + +@<Globals...@>= +@!debug@!trouble_shooting:boolean; {is |debug_help| wanted?} +@!ddt:integer; {operation code for the |debug_help| routine} +@!dd:integer; {operand in procedures performed by |debug_help|} +@!debug_cycle:integer; {threshold for |debug_help| stopping} +@!debug_skipped:integer; {we have skipped this many |debug_help| calls} +@!term_in:text_file; {the user's terminal as an input file} +gubed + +@ The debugging routine needs to read from the user's terminal. +@^system dependencies@> +@<Set init...@>= +@!debug trouble_shooting:=true; debug_cycle:=1; debug_skipped:=0;@/ +trouble_shooting:=false; debug_cycle:=99999; {use these when it almost works} +reset(term_in,'TTY:','/I'); {open |term_in| as the terminal, don't do a |get|} +gubed + +@ @d breakpoint=888 {place where a breakpoint is desirable} +@^system dependencies@> + +@p @!debug procedure debug_help; {routine to display various things} +label breakpoint,exit; +var k:integer; {index into various arrays} +begin incr(debug_skipped); +if debug_skipped<debug_cycle then return; +debug_skipped:=0; +loop@+ begin print_nl('#'); update_terminal; {prompt} + read(term_in,ddt); {read a debug-command code} + if ddt<0 then return + else if ddt=0 then + begin goto breakpoint;@\ {go to every label at least once} + breakpoint: ddt:=0;@\ + end + else begin read(term_in,dd); + case ddt of + 1: print_id(dd); + 2: print_repl(dd); + 3: for k:=1 to dd do print(xchr[buffer[k]]); + 4: for k:=1 to dd do print(xchr[mod_text[k]]); + 5: for k:=1 to out_ptr do print(xchr[out_buf[k]]); + 6: for k:=1 to dd do print(xchr[out_contrib[k]]); + othercases print('?') + endcases; + end; + end; +exit:end; +gubed + +@* The main program. +We have defined plenty of procedures, and it is time to put the last +pieces of the puzzle in place. Here is where \.{TANGLE} starts, and where +it ends. +@^system dependencies@> + +@p begin initialize; +@<Initialize the input system@>; +print_ln(banner); {print a ``banner line''} +@<Phase I: Read all the user's text and compress it into |tok_mem|@>; +stat for ii:=0 to zz-1 do max_tok_ptr[ii]:=tok_ptr[ii];@+tats@;@/ +@<Phase II:...@>; +end_of_TANGLE: +if string_ptr>256 then @<Finish off the string pool file@>; +stat @<Print statistics about memory usage@>;@+tats@;@/ +@t\4\4@>{here files should be closed if the operating system requires it} +@<Print the job |history|@>; +end. + +@ @<Phase I:...@>= +phase_one:=true; +module_count:=0; +repeat next_control:=skip_ahead; +until next_control=new_module; +while not input_has_ended do scan_module; +@<Check that all changes have been read@>; +phase_one:=false; + +@ @<Finish off the string pool file@>= +begin print_nl(string_ptr-256:1, ' strings written to string pool file.'); +write(pool,'*'); +for ii:=1 to 9 do + begin out_buf[ii]:=pool_check_sum mod 10; + pool_check_sum:=pool_check_sum div 10; + end; +for ii:=9 downto 1 do write(pool,xchr["0"+out_buf[ii]]); +write_ln(pool); +end + +@ @<Glob...@>= +stat @!wo:0..ww-1; {segment of memory for which statistics are being printed} +tats + +@ @<Print statistics about memory usage@>= +print_nl('Memory usage statistics:'); +print_nl(name_ptr:1, ' names, ', text_ptr:1, ' replacement texts;'); +print_nl(byte_ptr[0]:1); +for wo:=1 to ww-1 do print('+',byte_ptr[wo]:1); +if phase_one then + for ii:=0 to zz-1 do max_tok_ptr[ii]:=tok_ptr[ii]; +print(' bytes, ', max_tok_ptr[0]:1); +for ii:=1 to zz-1 do print('+',max_tok_ptr[ii]:1); +print(' tokens.'); + +@ Some implementations may wish to pass the |history| value to the +operating system so that it can be used to govern whether or not other +programs are started. Here we simply report the history to the user. +@^system dependencies@> + +@<Print the job |history|@>= +case history of +spotless: print_nl('(No errors were found.)'); +harmless_message: print_nl('(Did you see the warning message above?)'); +error_message: print_nl('(Pardon me, but I think I spotted something wrong.)'); +fatal_message: print_nl('(That was a fatal error, my friend.)'); +end {there are no other cases} + +@* System-dependent changes. +This module should be replaced, if necessary, by changes to the program +that are necessary to make \.{TANGLE} work at a particular installation. +It is usually best to design your change file so that all changes to +previous modules preserve the module numbering; then everybody's version +will be consistent with the printed program. More extensive changes, +which introduce new modules, can be inserted here; then only the index +itself will get a new module number. +@^system dependencies@> + +@* Index. +Here is a cross-reference table for the \.{TANGLE} processor. +All modules in which an identifier is +used are listed with that identifier, except that reserved words are +indexed only when they appear in format definitions, and the appearances +of identifiers in module names are not indexed. Underlined entries +correspond to where the identifier was declared. Error messages and +a few other things like ``ASCII code'' are indexed here too. diff --git a/source/texk/web2c/texmfmp.h b/source/texk/web2c/texmfmp.h index be8311f0e..5aead37b1 100644 --- a/source/texk/web2c/texmfmp.h +++ b/source/texk/web2c/texmfmp.h @@ -124,16 +124,16 @@ extern int tfmtemp, texinputtype; #if !defined (pdfTeX) extern void pdftex_fail(const char *fmt, ...); #endif -#if !defined(XeTeX) extern char start_time_str[]; extern void initstarttime(void); +#if !defined(XeTeX) extern char *makecstring(integer s); extern char *makecfilename(integer s); +#endif /* !XeTeX */ extern void getcreationdate(void); extern void getfilemoddate(integer s); extern void getfilesize(integer s); extern void getfiledump(integer s, int offset, int length); -#endif extern void convertStringToHexString(const char *in, char *out, int lin); extern void getmd5sum(integer s, int file); #endif @@ -220,7 +220,7 @@ extern boolean input_line (FILE *); #define dateandtime(i,j,k,l) get_date_and_time (&(i), &(j), &(k), &(l)) extern void get_date_and_time (integer *, integer *, integer *, integer *); -#if defined(pdfTeX) || defined(epTeX) || defined(eupTeX) +#if defined(pdfTeX) || defined(epTeX) || defined(eupTeX) || defined(XeTeX) /* Get high-res time info. */ #define secondsandmicros(i,j) get_seconds_and_micros (&(i), &(j)) extern void get_seconds_and_micros (integer *, integer *); diff --git a/source/texk/web2c/web2c/ChangeLog b/source/texk/web2c/web2c/ChangeLog index 8f95a87ce..897e0b518 100644 --- a/source/texk/web2c/web2c/ChangeLog +++ b/source/texk/web2c/web2c/ChangeLog @@ -1,3 +1,8 @@ +2018-11-11 Andreas Scherer <https://ascherer.github.io> + + * fixwrites.c (main): check return value from fgets. + (tex-k 11 Nov 2018 11:53:24) + 2018-06-08 Karl Berry <karl@freefriends.org> * common.defines (aopeninwithdirname): add. diff --git a/source/texk/web2c/web2c/configure b/source/texk/web2c/web2c/configure index 94493ce53..e977e3f50 100755 --- a/source/texk/web2c/web2c/configure +++ b/source/texk/web2c/web2c/configure @@ -8022,6 +8022,8 @@ fi done +##tldbg KPSE_COMMON: web2c convert (). +##tldbg KPSE_BASIC: Remember web2c convert () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output diff --git a/source/texk/web2c/web2c/fixwrites.c b/source/texk/web2c/web2c/fixwrites.c index 2c1f33608..0e28269af 100644 --- a/source/texk/web2c/web2c/fixwrites.c +++ b/source/texk/web2c/web2c/fixwrites.c @@ -311,7 +311,8 @@ main (int argc, string *argv) cmd = cp; while (!whole (buf)) /* make sure we have whole stmt */ { - fgets (&buf[strlen (buf)], BUFSIZ - strlen (buf), stdin); + if (!fgets (&buf[strlen (buf)], BUFSIZ - strlen (buf), stdin)) + break; remove_newline (buf); } diff --git a/source/texk/web2c/window/Makefile.in b/source/texk/web2c/window/Makefile.in index ffd16ab04..983167a02 100644 --- a/source/texk/web2c/window/Makefile.in +++ b/source/texk/web2c/window/Makefile.in @@ -132,7 +132,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/web2c-disable.m4 \ $(top_srcdir)/../../m4/lt~obsolete.m4 \ $(top_srcdir)/../../version.ac $(top_srcdir)/ac/web2c.ac \ $(top_srcdir)/synctexdir/ac/synctex.ac \ - $(top_srcdir)/synctexdir/synctex_parser_version.txt \ + $(top_srcdir)/synctexdir/synctex_parser_api_level.txt \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) diff --git a/source/texk/web2c/xetexdir/xetex_version.h b/source/texk/web2c/xetexdir/xetex_version.h index 91c95ac0b..51fb7b707 100644 --- a/source/texk/web2c/xetexdir/xetex_version.h +++ b/source/texk/web2c/xetexdir/xetex_version.h @@ -1 +1 @@ -#define XETEX_VERSION "0.99999" +#define XETEX_VERSION "0.999991" diff --git a/source/utils/Makefile.in b/source/utils/Makefile.in index df3d4e90b..2b8970cc6 100644 --- a/source/utils/Makefile.in +++ b/source/utils/Makefile.in @@ -111,7 +111,6 @@ am__aclocal_m4_deps = $(top_srcdir)/../m4/kpse-common.m4 \ $(top_srcdir)/../libs/zziplib/ac/withenable.ac \ $(top_srcdir)/../libs/libpng/ac/withenable.ac \ $(top_srcdir)/../libs/luajit/ac/withenable.ac \ - $(top_srcdir)/../libs/lua52/ac/withenable.ac \ $(top_srcdir)/../libs/lua53/ac/withenable.ac \ $(top_srcdir)/../libs/zlib/ac/withenable.ac \ $(top_srcdir)/../texk/kpathsea/ac/withenable.ac \ diff --git a/source/utils/README b/source/utils/README index 226160055..05b728e53 100644 --- a/source/utils/README +++ b/source/utils/README @@ -1,4 +1,4 @@ -$Id: README 48276 2018-07-26 16:40:39Z karl $ +$Id: README 48727 2018-09-21 22:18:21Z karl $ Public domain. Originally written 2005 by Karl Berry. Extra utilities we (optionally) compile for TeX Live. @@ -51,9 +51,9 @@ After building clisp as described below, run the TL Build --enable-xindy CLISP=$clisp_builddir/clisp to include xindy in the build. It is disabled by default. -xindy/README-clisp has alternative instructions with some extra -information, especially for those building xindy on its own. The -process here is written for building clisp-for-xindy-for-TL. The +xindy/xindy-src/README-clisp has alternative instructions with some +extra information, especially for those building xindy on its own. The +process here is written for building clisp-for-xindy-for-TL. The differences are minimal. mkdir clisp; cd clisp diff --git a/source/utils/configure b/source/utils/configure index 931fdc69c..91af7e82c 100755 --- a/source/utils/configure +++ b/source/utils/configure @@ -3686,9 +3686,6 @@ test "x$need_libpng" = xyes && { ## libs/luajit/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/luajit/ ## configure options and TL libraries required for luajit -## libs/lua52/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua52/ -## configure options and TL libraries required for lua52 - ## libs/lua53/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/lua53/ ## configure options and TL libraries required for lua53 @@ -4317,6 +4314,7 @@ else fi ;; esac +##tldbg KPSE_BASIC: Remember utils () as Kpse_Package (for future messages). if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output @@ -4673,7 +4671,7 @@ WARNING_CFLAGS=$kpse_cv_warning_cflags { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Utils programs to build" >&5 $as_echo_n "checking for Utils programs to build... " >&6; } -echo 'dbg:_KPSE_RECURSE called: list=utils, text=Utils programs, cond=test "x$enable_Kpse_pkg" = xyes, prefix=.' >&5 +echo 'tldbg:_KPSE_RECURSE called: list=utils, text=Utils programs, cond=test "x$enable_[]Kpse_pkg" = xyes, prefix=.' >&5 MAKE_SUBDIRS= CONF_SUBDIRS= -- GitLab