monster-masher-1.8.1/0002777000175000017500000000000011105646702011476 500000000000000monster-masher-1.8.1/po/0002777000175000017500000000000011105646704012116 500000000000000monster-masher-1.8.1/po/ChangeLog0000644000175000017500000002502011105645273013601 000000000000002008-09-21 Duarte Loreto * pt.po: Updated Portuguese translation. 2008-07-31 Djihed Afifi * ar.po: Updated Arabic Translation by Djihed Afifi. 2008-06-15 Yannig Marchegay * oc.po: Updated Occitan translation. 2008-06-08 Olav Vitters * nb.po: Updated translation. 2008-05-02 Petr Kovar * cs.po: Fixed Czech translation by Lucas Lommer (bug #517967). 2008-03-15 Kenneth Nielsen * da.po: Corrected Danish translation. Correction by Mads P. Rommedahl 2008-02-18 Gil Forcada * ca.po: Updated Catalan translation. 2008-02-12 Pawan Chitrakar * ne.po: Updated Nepali Translation. 2008-01-29 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2007-12-31 Yannig Marchegay * oc.po: Updated Occitan translation. 2007-08-28 Satoru SATOH * ja.po: Added Japanese translation. 2007-07-27 Raivis Dejus * lv.po: Added Latvian Translation. 2007-04-21 Djihed Afifi * ar.po: Updated Arabic Translation by Djihed Afifi. 2007-03-07 Leonardo Ferreira Fontenelle * pt_BR.po: Updated Brazilian Portuguese translation by Andre Noel . 2007-02-24 Matic Zgur * sl.po: Added Slovenian translation. 2007-01-14 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2006-11-18 Djihed Afifi * ar.po: Added Arabic Translation. * LINGUAS: Added ar. 2006-09-24 Pawan Chitrakar * ne.po: Updated Nepali Translation 2006-09-13 David Lodge * en_GB.po: Updated English (British) translation 2006-09-12 Kostas Papadimas * el.po: Fixed typos by Dimitris Glezos 2006-08-20 Wouter Bolsterlee * nl.po: Translation updated by Wouter Bolsterlee. 2006-07-24 Christophe Merlet * fr.po: Updated French translation from Jonathan Ernst . 2006-06-15 Hendrik Richter * de.po: Updated German translation. 2006-03-14 Jens Seidel * de.po: Updated German translation. 2006-01-30 Ole Laursen * da.po: Updated Danish translation. 2006-01-14 Chao-Hsiung Liao * zh_TW.po: Updated Traditional Chinese translation(Taiwan). * zh_HK.po: Added Traditional Chinese translation(Hong Kong). 2006-01-07 Kjartan Maraas * nb.po: Add this. 2006-01-01 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-11-22 Francisco Javier F. Serrador * es.po: Updated SPanish translation. 2005-11-03 Miloslav Trmac * cs.po: Updated Czech translation. 2005-10-27 Inaki Larranaga * eu.po: Updated Basque translation. 2005-10-23 Ilkka Tuohela * fi.po: Minor change to fi.po (one fuzzy checked) 2005-10-12 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-07-31 Ilkka Tuohela * fi.po: Bulk updates to Finnish translation for new gnome.fi website. 2005-07-23 Pawan Chitrakar * ne.po: Added Nepali Translation 2005-06-22 Abel Cheung * zh_TW.po: Fix language team reference. 2005-04-29 Alexander Shopov * bg.po: Updated Bulgarian translation by Yavor Doganov 2005-04-01 Steve Murphy * rw.po: Added Kinyarwanda translation. 2005-03-29 Alexander Shopov * bg.po: Added Bulgarian translation by Yavor Doganov 2005-03-16 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-03-05 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from GNOME HK Team 2005-02-15 Christophe Merlet * fr.po: Added French translation from David Soulayrol . 2004-12-13 I�aki Larra�aga *eu.po: Updated Basque translation. 2004-11-29 Funda Wang * zh_CN.po: Added Simplified Chinese translation. 2004-11-05 Jordi Mallach * ca.po: Added translation by Jordi Ivars . 2004-10-11 Mətin Əmirov * ka.po: Translation added by Aiet Kolkhi. 2004-09-30 Maxim Dziumanenko * uk.po: Added Ukrainian translation. 2004-09-13 Jayaradha * ta.po: Added Tamil Translation. 2004-09-08 Ankit Patel * gu.po: Added Gujarati Translation. 2004-09-03 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-09-03 Laurent Dhima * sq.po: Added Albanian translation. 2004-08-19 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2004-08-12 Jarkko Ranta * fi.po: Added Finnish translation by Sini Ruohomaa. 2004-08-09 Duarte Loreto * pt.po: Updated Portuguese translation. 2004-07-17 Alessio Frusciante * it.po: Updated Italian translation by Riccardo Bozzo . 2004-07-15 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2004-07-14 Gustavo Maciel Dias Vieira * pt_BR.po: Updated Brazilian Portuguese translation done by Raphael Higino . 2004-07-10 Miloslav Trmac * cs.po: Updated Czech translation. 2004-07-09 Ole Laursen * *.po: Likewise replaced "every thing" and "every body" to skip the space. * *.po: Replaced "creature rised" with "creature rose" (grammatical error in the original string). 2004-04-24 Duarte Loreto * pt.po: Revised Portuguese translation. 2004-04-08 Adam Weinberger * en_CA.po: Added Canadian English translation. 2004-03-24 Gareth Owen * en_GB.po: Added British English translation 2004-03-21 Alastair McKinstry * ga.po: Updated Irish translation. 2004-03-18 Robert Sedak * hr.po: Updated Croatian translation. 2004-03-16 Iñaki Larrañaga * eu.po: Added Basque translation by Mikel Olasagasti and Iñaki Larrañaga . 2004-03-15 Alessio Frusciante * it.po: Added Italian translation by Riccardo Bozzo . 2004-03-11 Gustavo Maciel Dias Vieira * pt_BR.po: Added Brazilian Portuguese translation done by Franz Gustav Niederheitmann . 2004-03-04 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2004-02-26 Vincent van Adrighem * nl.po: Translation updated by Kees van den Broek. 2004-02-24 Christian Rose * sv.po: Updated Swedish translation. 2004-02-07 Robert Sedak * hr.po: Updated Croatian translation. 2004-01-30 Vincent van Adrighem * nl.po: Translation updated by Michiel Sikkes. 2004-01-28 Miloslav Trmac * cs.po: Fixed Czech translation. 2004-01-18 Christian Neumair * de.po: Updated German translation. 2004-01-18 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-01-16 Kjartan Maraas * no.po: Updated Norwegian translation. 2004-01-13 Vincent van Adrighem * nl.po: Translation updated by Kees van den Broek. 2004-01-12 Žygimantas Beručka * lt.po: Added Lithuanian translation by Tomas Kuliavas. 2004-01-05 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-01-03 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2004-01-03 Miloslav Trmac * cs.po: Updated Czech translation. 2004-01-03 Duarte Loreto * pt.po: Updated Portuguese translation. 2004-01-02 Ole Laursen * da.po: Updated Danish translation. 2003-12-21 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2003-12-16 Francisco Javier F. Serrador * es.po: Added Spanish translation. 2003-11-18 Christian Neumair * de.po: Added German translation. 2003-10-26 Metin Amiroff * az.po: Added Azerbaijani translation. 2003-10-13 Kostas Papadimas * el.po: Added Greek translation. 2003-10-04 Vincent van Adrighem * nl.po: translation added by Michiel Sikkes. 2003-09-28 Artur Flinta * pl.po: Updated Polish translation. 2003-09-23 Abel Cheung * zh_TW.po: New traditional Chinese translation. 2003-09-21 Miloslav Trmac * cs.po: Updated Czech translation. 2003-09-21 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-09-20 Dafydd Harries * cy.po: Updated Welsh translation. 2003-09-20 Miloslav Trmac * cs.po: Updated Czech translation. 2003-09-20 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2003-09-20 Christian Rose * sv.po: Updated Swedish translation. 2003-09-20 Ole Laursen * da.po: Updated Danish translation. 2003-09-15 Christian Rose * sv.po: Added Swedish translation. 2003-09-14 Duarte Loreto * pt.po: Added Portuguese translation. 2003-09-14 Danilo Šegan * sr.po, sr@Latn.po: Added Serbian translation. 2003-09-13 Ole Laursen * da.po, cy.po: Fixed the bogus "Level %1" string. 2003-09-01 Ole Laursen * cy.po: Added Welsh translation from Dafydd Harries. 2003-08-24 Ole Laursen * da.po: Updated Danish translation. monster-masher-1.8.1/po/Makefile.in.in0000644000175000017500000001532611105645777014522 00000000000000# Makefile for program source directory in GNU NLS utilities package. # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper # Copyright (C) 2004-2008 Rodney Dawes # # This file may be copied and used freely without restrictions. It may # be used in projects which are not available under a GNU Public License, # but which still want to provide support for the GNU gettext functionality. # # - Modified by Owen Taylor to use GETTEXT_PACKAGE # instead of PACKAGE and to look for po2tbl in ./ not in intl/ # # - Modified by jacob berkman to install # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize # # - Modified by Rodney Dawes for use with intltool # # We have the following line for use by intltoolize: # INTLTOOL_MAKEFILE GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ PACKAGE = @PACKAGE@ VERSION = @VERSION@ SHELL = /bin/sh srcdir = @srcdir@ top_srcdir = @top_srcdir@ top_builddir = @top_builddir@ VPATH = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ datadir = @datadir@ datarootdir = @datarootdir@ libdir = @libdir@ DATADIRNAME = @DATADIRNAME@ itlocaledir = $(prefix)/$(DATADIRNAME)/locale subdir = po install_sh = @install_sh@ # Automake >= 1.8 provides @mkdir_p@. # Until it can be supposed, use the safe fallback: mkdir_p = $(install_sh) -d INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ GMSGFMT = @GMSGFMT@ MSGFMT = @MSGFMT@ XGETTEXT = @XGETTEXT@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot ALL_LINGUAS = @ALL_LINGUAS@ PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; fi) USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep ^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep ^$$lang$$`"; then printf "$$lang "; fi; done; fi) USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done) POFILES=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done) DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(POFILES) EXTRA_DISTFILES = POTFILES.skip Makevars LINGUAS POTFILES = \ # This comment gets stripped out CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done) .SUFFIXES: .SUFFIXES: .po .pox .gmo .mo .msg .cat .po.pox: $(MAKE) $(GETTEXT_PACKAGE).pot $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox .po.mo: $(MSGFMT) -o $@ $< .po.gmo: file=`echo $* | sed 's,.*/,,'`.gmo \ && rm -f $$file && $(GMSGFMT) -o $$file $< .po.cat: sed -f ../intl/po2msg.sed < $< > $*.msg \ && rm -f $@ && gencat $@ $*.msg all: all-@USE_NLS@ all-yes: $(CATALOGS) all-no: $(GETTEXT_PACKAGE).pot: $(POTFILES) $(GENPOT) install: install-data install-data: install-data-@USE_NLS@ install-data-no: all install-data-yes: all linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \ $(mkdir_p) $$dir; \ if test -r $$lang.gmo; then \ $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \ else \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $(srcdir)/$$lang.gmo as" \ "$$dir/$(GETTEXT_PACKAGE).mo"; \ fi; \ if test -r $$lang.gmo.m; then \ $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ if test -r $(srcdir)/$$lang.gmo.m ; then \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \ $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $(srcdir)/$$lang.gmo.m as" \ "$$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ true; \ fi; \ fi; \ done # Empty stubs to satisfy archaic automake needs dvi info tags TAGS ID: # Define this as empty until I found a useful application. install-exec installcheck: uninstall: linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \ done check: all $(GETTEXT_PACKAGE).pot rm -f missing notexist srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m if [ -r missing -o -r notexist ]; then \ exit 1; \ fi mostlyclean: rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp rm -f .intltool-merge-cache clean: mostlyclean distclean: clean rm -f Makefile Makefile.in POTFILES stamp-it rm -f *.mo *.msg *.cat *.cat.m *.gmo maintainer-clean: distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." rm -f Makefile.in.in distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) dist distdir: $(DISTFILES) dists="$(DISTFILES)"; \ extra_dists="$(EXTRA_DISTFILES)"; \ for file in $$extra_dists; do \ test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \ done; \ for file in $$dists; do \ test -f $$file || file="$(srcdir)/$$file"; \ ln $$file $(distdir) 2> /dev/null \ || cp -p $$file $(distdir); \ done update-po: Makefile $(MAKE) $(GETTEXT_PACKAGE).pot tmpdir=`pwd`; \ linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ echo "$$lang:"; \ result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \ if $$result; then \ if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ :; \ else \ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ rm -f $$tmpdir/$$lang.new.po; \ exit 1; \ fi; \ fi; \ else \ echo "msgmerge for $$lang.gmo failed!"; \ rm -f $$tmpdir/$$lang.new.po; \ fi; \ done Makefile POTFILES: stamp-it @if test ! -f $@; then \ rm -f stamp-it; \ $(MAKE) stamp-it; \ fi stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \ $(SHELL) ./config.status # Tell versions [3.59,3.63) of GNU make not to export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: monster-masher-1.8.1/po/POTFILES.in0000644000175000017500000000032410547745537013621 00000000000000src/game.cpp src/helpers.cpp src/intro.cpp src/main-window.cpp src/main.cpp src/new-game-window.cpp src/persistent.cpp src/preferences-window.cpp src/ui.glade monster-masher.desktop.in monster-masher.schemas.in monster-masher-1.8.1/po/ar.po0000644000175000017500000002254510667464260013011 00000000000000# Arabic translations for THIS package. # Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as THIS package. # Automatically generated, 2007. # Djihed Afifi , 2007 msgid "" msgstr "" "Project-Id-Version: Arabic\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-04-21 10:45+0100\n" "PO-Revision-Date: 2007-04-14 18:49+0100\n" "Last-Translator: Djihed Afifi \n" "Language-Team: Arabeyes \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "" #: ../src/game.cpp:140 #, fuzzy msgid "And the last hero disappeared..." msgstr "وكان معروضاً" #: ../src/game.cpp:151 #, fuzzy msgid "All levels liberated!" msgstr "كل المتعلّق" #: ../src/game.cpp:383 #, fuzzy msgid "Entering level %1..." msgstr "مستوى التسجيل" #: ../src/helpers.cpp:39 #, fuzzy msgid "Fatal error" msgstr "خطأ GOK فادح" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: ../src/intro.cpp:118 #, fuzzy msgid "The world of the gnomes was threatened..." msgstr "عرض لوح الفهرس والبحث." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: ../src/intro.cpp:141 #, fuzzy msgid "That hope is you." msgstr "هذه الطاولة ممتلئة." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, fuzzy, no-c-format msgid "Resurrections: %1" msgstr "إرجاع إستثناء: %s" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, fuzzy, no-c-format msgid "Score: %1" msgstr "النّتيجة: %d" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, fuzzy, no-c-format msgid "Level: %1" msgstr "المستوى:" #: ../src/main-window.cpp:234 #, fuzzy msgid "_New game" msgstr "لعبة جديدة" #: ../src/main-window.cpp:237 #, fuzzy msgid "_Introduction" msgstr "صفحة التقديم" #: ../src/main-window.cpp:240 #, fuzzy msgid "_Preferences" msgstr "ت_فضيلات" #: ../src/main-window.cpp:243 #, fuzzy msgid "_About" msgstr "_6 عن البرنامج" #: ../src/main-window.cpp:246 #, fuzzy msgid "_Quit" msgstr "اخرج" #: ../src/main-window.cpp:258 #, fuzzy msgid "_Resume game" msgstr "است_كمل لعبة قديمة" #: ../src/main-window.cpp:261 #, fuzzy msgid "Re_start level" msgstr "اعد تشغيل الدِسكلت" #: ../src/main-window.cpp:264 #, fuzzy msgid "_End game" msgstr "أ_نهِ اللعبة" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 #, fuzzy msgid "Monster Masher" msgstr "مونت كارلو" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 #, fuzzy msgid "Copyright %1 2003 Ole Laursen" msgstr "حقوق النسخ © 2006 Benjamin Canou" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 #, fuzzy msgid "translator-credits" msgstr "المترجمون:" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: ../src/persistent.cpp:167 #, fuzzy msgid "Load error" msgstr "لا خطأ" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: ../src/persistent.cpp:242 #, fuzzy msgid "Save error" msgstr "خطأ تحليل" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "الصعوبة" #: ../src/ui.glade.h:2 #, fuzzy msgid "Fullscreen" msgstr "ملئ الشاشة" #: ../src/ui.glade.h:3 #, fuzzy msgid "Level" msgstr "الجهاز" #: ../src/ui.glade.h:4 #, fuzzy msgid "Moving" msgstr "الولوج:" #: ../src/ui.glade.h:5 #, fuzzy msgid "Number of Players" msgstr "عدد الصفحات:" #: ../src/ui.glade.h:6 #, fuzzy msgid "Pull block" msgstr "حاسوب جيبي" #: ../src/ui.glade.h:7 #, fuzzy msgid "Appearance" msgstr "ال_مظهر:" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 #, fuzzy msgid "Key for moving down" msgstr "الزر للحركة إلى الأسفل." #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 #, fuzzy msgid "Key for moving to the left" msgstr "انقل القسم لليسار" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 #, fuzzy msgid "Key for moving to the right" msgstr "انقل القسم لليمين" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 #, fuzzy msgid "Key for moving up" msgstr "المفتاح الذي سيستخدم للنقل إلى الأعلى." #: ../src/ui.glade.h:20 #, fuzzy msgid "Player 1 keys" msgstr "اسماء اللاعبين" #: ../src/ui.glade.h:21 #, fuzzy msgid "Player 2 keys" msgstr "اسماء اللاعبين" #: ../src/ui.glade.h:22 #, fuzzy msgid "Preferences" msgstr "ت_فضيلات" #: ../src/ui.glade.h:27 #, fuzzy msgid "Start Game" msgstr "زمن البدء" #: ../src/ui.glade.h:28 #, fuzzy msgid "Start at _level:" msgstr "مستوى الإبتداء" #: ../src/ui.glade.h:29 #, fuzzy msgid "Use _fullscreen mode" msgstr "إجبر نمط ملأ الشاشة" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_سهل" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_صعب" #: ../src/ui.glade.h:32 #, fuzzy msgid "_Medium" msgstr "متوسط" #: ../src/ui.glade.h:33 #, fuzzy msgid "_One player" msgstr "طبقة جديدة" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_ابدأ" #: ../src/ui.glade.h:35 #, fuzzy msgid "_Two players" msgstr "لا طبقات" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: ../monster-masher.schemas.in.h:11 #, fuzzy msgid "Use fullscreen" msgstr "ملئ الشاشة" monster-masher-1.8.1/po/az.po0000644000175000017500000001734010547745537013024 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-07-09 13:02+0200\n" "PO-Revision-Date: 2003-10-26 18:56+0200\n" "Last-Translator: Mətin Əmirov \n" "Language-Team: Azerbaijani \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "" #: src/game.cpp:151 msgid "All levels liberated!" msgstr "" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "" #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Ölümcül Xəta" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "" #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: src/intro.cpp:141 msgid "That hope is you." msgstr "" #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "" #: src/main-window.cpp:234 msgid "_New game" msgstr "_Yeni oyun" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Giriş" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "" #: src/main-window.cpp:243 msgid "_About" msgstr "_Haqqında" #: src/main-window.cpp:246 msgid "_Quit" msgstr "" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "Oyuna _davam et" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "" #: src/main-window.cpp:264 msgid "_End game" msgstr "Oyunu _bitir" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "Mətin Əmirov " #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:167 msgid "Load error" msgstr "" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:242 msgid "Save error" msgstr "" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "" #: src/ui.glade.h:3 msgid "Level" msgstr "" #: src/ui.glade.h:4 msgid "Moving" msgstr "" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "" #: src/ui.glade.h:6 msgid "Pull block" msgstr "" #: src/ui.glade.h:7 msgid "Appearance" msgstr "" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "" #: src/ui.glade.h:22 msgid "Preferences" msgstr "" #: src/ui.glade.h:27 msgid "Start Game" msgstr "" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "" #: src/ui.glade.h:30 msgid "_Easy" msgstr "" #: src/ui.glade.h:31 msgid "_Hard" msgstr "" #: src/ui.glade.h:32 msgid "_Medium" msgstr "" #: src/ui.glade.h:33 msgid "_One player" msgstr "" #: src/ui.glade.h:34 msgid "_Start" msgstr "" #: src/ui.glade.h:35 msgid "_Two players" msgstr "" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/bg.po0000644000175000017500000003374210667464260013000 00000000000000# Bulgarian translation of monster-masher. # Copyright (C) 2005, 2007 Free Software Foundation, Inc. # This file is distributed under the same license as the monster-masher package. # Yavor Doganov , 2005, 2007. # # msgid "" msgstr "" "Project-Id-Version: monster-masher HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-14 21:15+0200\n" "PO-Revision-Date: 2007-01-11 17:14+0200\n" "Last-Translator: Yavor Doganov \n" "Language-Team: Bulgarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Ниво %1 е изчистено от чудовища!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "И последният герой изчезна..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Всички нива са освободени!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Влизане в ниво %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Фатална грешка" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Проверете инсталацията или докладвайте за грешка на дистрибутора, в " "случай, че сте инсталирали от пакет." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "В доброто старо време, преди човекът да се появи на света, гномчетата са " "били в изобилие." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "През векове на тежък труд, малко облекчаван от вълшебните сили на техния " "бог, те са дълбали шахти и тунели в планините." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Търсейки скъпоценни камъни и полезна руда..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Но едно племе копало по-дълбоко от другите. Само богатството му нараствало " "по-бързо от алчността му." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Годините минавали. Вождът на племето станал цар на гномчетата. Хиляди мъже, " "жени и деца били изпратени да работят в най-дълбоките и доходоносни мини." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Един ден бил открит голям залеж от въглища. Или поне така си мислели..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "От черните въглени се изправило странно същество!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Първоначалната изненада сред работниците била заменена с ужас, тъй като " "стотици други форми изскочили от жилата, рушейки всичко и всички по пътя си." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Месеци наред племето се борило с чудовищата. Оцелели само неколцина " "вестоносци, които тръгнали да предупреждават другите племена." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Светът на гномчетата бил в опасност..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "От черните чудовища, направени от въглени по-твърди от стомана, глупави като " "машини; но смъртоносни." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "От бронираните чудовища, толкова добре защитени, че само здрава скала била " "достатъчно твърда, за да ги убие." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "От злите и подли търсачи, почервенели от кръвта на гномчетата, пролята с " "шиповете им." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "И от носачите на сини яйца, които се размножили с хиляди." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Единствената мъждукаща надежда за гномчетата бил един скромен работник. Той " "открил начин да мачка чудовищата в скалите на планината." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Тази надежда сте Вие." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Трябва да навлезете дълбоко в планините, минавайки всички нива на племето на " "царете и да разчистите пътя за събирачите на скали, за да могат да блокират " "жилата." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Само тогава гномчетата ще могат да оцелеят..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: не може да се зареди иконата „%1“.\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Съживявания: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Точки: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Ниво: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Нова игра" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Въведение" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "На_стройки" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Относно" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Изход" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Възстановяване на играта" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "_Рестартиране на нивото" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Край на играта" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Бърза и лесна игра за мачкане на чудовища за GNOME. Размажете чудовищата, " "преди да ви достигнат и завземат света на гномчетата!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Авторски права %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "Явор Доганов \n" "\n" "Проектът за превод на GNOME има нужда от подкрепа\n" "Научете повече за нас на http://gnome.cult.bg\n" "Докладвайте за грешки на http://gnome.cult.bg/bugs" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(съжив.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Възникна грешка при четене на файла „%1“. Това може да означава, че записите " "на преодолените нива са загубени." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Грешка при зареждане" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Възникна грешка при запазване на файла „%1“. Това може да означава, че " "записите на преодолените нива са загубени." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Грешка при запазване" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Трудност" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Пълен екран" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Ниво" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Движение" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Брой играчи" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Дърпане на блок" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Изглед" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Клавиш за активиране на дърпането на блокове" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Клавиш за движение надолу" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Клавиш за движение наляво" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Клавиш за движение наляво и надолу" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Клавиш за движение наляво и нагоре" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Клавиш за движение надясно" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Клавиш за движение надясно и надолу" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Клавиш за движение надясно и нагоре" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Клавиш за движение нагоре" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Клавиши за Играч 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Клавиши за Играч 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Настройки" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Начало на играта" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Начало от _ниво:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "_Пълен екран" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Лесно" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Трудно" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Средно" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Един играч" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Начало" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Двама играчи" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Мачкайте чудовища и спасете гномчетата" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Низът трябва да бъде име на ключ за GDK, който да се използва (може да се " "намери в gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Пълен екран" monster-masher-1.8.1/po/ca.po0000644000175000017500000002701311105645273012756 00000000000000# Traducció al català de Monster-Masher. # Copyright (C) 2004 Free Software Foundation, Inc. # This file is distributed under the same license as the Monster-Masher package. # Jordi Ivars , 2004. msgid "" msgstr "" "Project-Id-Version: Monster-Masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-18 18:58+0100\n" "PO-Revision-Date: 2008-02-18 18:59+0100\n" "Last-Translator: Jordi Ivars \n" "Language-Team: Catalan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Nivell %1 net de monstres" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "I desaparegué l'últim heroi..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "S'han alliberat tots els nivells" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "S'està entrant al nivell %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Error fatal" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Comproveu la vostra instal·lació o si heu instal·lat el programa des " "d'un paquet envieu un informe al distribuïdor." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "En els dies antics abans de que l'home arribés al món els gnoms eren " "abundants." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Durant segles de dur teball, només facilitat pels poders de levitació " "proporcionats pel seu Déu, els gnoms excavaren coves i pous en la muntanya." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Sempre buscant pedres precioses i minerals valuosos..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Però un clan excavà mes profundament que els altres. Únicament la seva " "riquesa creixia més de presa que la seva cobdícia." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Els anys passaren. El cap del clan va esdevenir el rei dels gnoms. Centenars " "d'homes, dones i nens van ser enviats a treballar en les més profundes i " "riques mines." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Aleshores un dia van trobar un gran dipòsit de carbó. O això pensaven ells..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Una estranya criatura va sorgir del negre carbó" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Els primers moments de sorpresa entre els treballadors van ser reemplaçats " "per l'horror de centenars de formes sorgides de la veta, destruint tot allò " "que es creuava en el seu camí." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Durant mesos el clan lluità amb els monstres. Únicament un grapat de " "missatgers enviats a avisar a altres clans van sobreviure." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "El món dels gnoms estava amenaçat..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Pels monstres negres fets d'un carbó més dur que l'acer, mecànics en la seva " "estupidesa; pero mortífers." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Per monstres amb armadures tan ben protegits que solament la roca més " "profunda era prou dura per matar-los." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Pels buscadors, disimulats i difícils, rojos amb la sang derramada pels " "gnoms." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "I per les capes dels ous blaus multiplicaren el seu nombre per milers." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "L'única esperança dels gnoms era un humil treballador levitant. Ell trobà " "una manera d'aixafar els monstres contra les roques de la muntanya." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "L'esperança ets tu." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Heu de lluitar obrint-vos pas pels profunds camins dins la muntanya, passant " "per cada nivell més enllà del clan dels reis i netejar el camí dels " "invocadors de roques per a bloquejar la veta." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Solament aleshores podran els gnoms sobreviure..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: no s'ha pogut carregar la icona \"%1\".\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Resurreccions: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Punts: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Nivell: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Nou joc" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introducció" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Preferències" #: ../src/main-window.cpp:243 msgid "_About" msgstr "Quant _a" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Surt" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Reprèn el joc" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Reini_cia el nivell" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "Finalitza _el joc" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Ràpid joc d'aixafar monstres per a GNOME. Acabeu amb els monstres abans que " "ells us passin pel damut i acabin amb el món dels gnoms!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Jordi Ivars " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(resurr.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "S'ha produït un error en llegir el fitxer \"%1\". Pot significar que s'hagin " "perdutels registres de tots els nivells que ja has passat." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Error de càrrega" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "S'ha produït un error en desar l'arxiu \"%1\". Pot significar que s'hagin " "perdutels registres de tots els nivells que has passat." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Desa l'error" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Dificultat" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Pantalla sencera" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Nivell" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Moviments" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Nombre de jugadors" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Estirar bloc" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Aparença" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tecla per estirar dels blocs" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tecla de desplaçament a baix" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tecla de desplaçament a l'esquerra" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tecla de desplaçament esquerra i baix" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tecla de desplaçament a l'esquerra i dalt" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tecla de desplaçament a la dreta" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tecla de desplaçament a la dreta i baix" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tecla de desplaçament a la dreta i dalt" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tecla de desplaçament a dalt" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Tecles del jugador 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Tecles del jugador 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Preferències" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Comença el joc" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Comença a_l nivell:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Utilitza la _pantalla sencera" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Fàcil" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Difícil" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Mitjà" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "Un jugad_or" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Comença" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Dos jugadors" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Aixafa els monstres i salva els gnoms" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "La cadena deu ser el nom GDK del valor de tecla a utilitzar (es pot trobar a " "gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Utilitza pantalla completa" monster-masher-1.8.1/po/cs.po0000644000175000017500000002715411105645273013006 00000000000000# Czech translation of monster-masher. # Copyright (C) 2003, 2004, 2005, 2008 the author(s) of monster-masher. # Copyright (C) 2004, 2005 Miloslav Trmac . # This file is distributed under the same license as the monster-masher package. # Miloslav Trmac , 2003, 2004, 2005. # Lucas Lommer , 2008. # Petr Kovar , 2008. # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-05-02 02:34+0200\n" "PO-Revision-Date: 2008-05-02 02:31+0100\n" "Last-Translator: Petr Kovar \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Patro %1 vyčištěno od příšer!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "A poslední hrdina zmizel..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Všechna patra osvobozena!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Vstupuji do patra %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Fatální chyba" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Zkontrolujte svou instalaci nebo ohlaste problém distributorovi, pokud " "jste hru nainstalovali z balíčku." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "V dávných dobách, než do světa přišli lidé, bylo mnoho trpaslíků." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Během staletí tvrdé práce, jen mírně usnadněné schopnostmi levitace, které " "jim poskytl jejich bůh, v horách vyvrtali šachty a jeskyně." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Stále hledali drahé kameni a cenné rudy..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Ale jeden klan kopal hlouběji, než ostatní. Jen jejich bohatství rostlo " "rychleji než jejich lakota." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Roky ubíhaly. Náčelník klanu se stal králem trpaslíků. Tisíce mužů, žen a " "dětí bylo posláno pracovat do nejhlubších, nejvýnosnějších dolů." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Jednoho dne bylo nalezeno velké ložisko uhlí. Aspoň si to mysleli..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Z černého uhlíku povstalo podivné stvoření!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "První okamžiky překvapení mezi dělníky byly nahrazeny úděsem, když se ze " "žíly oddělily stovky dalších tvarů, které rozmačkávaly všechno a všechny, " "kteří jim stáli v cestě." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Klan s příšerami bojoval celé měsíce. Přežilo jen několik poslů vyslaných " "ven, aby varovali ostatní klany." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Svět trpaslíků byl ohrožen..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Černými příšerami stvořenými z uhlíku tvrdšího než ocel, mechanickými v " "jejich hlouposti; přesto však smrtelnými." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Obrněnými příšerami, chráněnými tak dobře, že jen skalní podloží bylo dost " "tvrdé na to, aby je zabilo." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Lstivými hledači, červenými od krve trpaslíků, kterou prolily jejich ostny." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "A modrými nosnicemi vajíček, díky kterým se příšery množily po tisících." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Jediná zbylá naděje trpaslíků byl skromný levitující dělník. Objevil způsob, " "jak příšery rozmáčknout o skály." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Tato naděje jsi ty." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Musíš se probojovat hluboko do hor všemi patry klanu králů a vyčistit cestu " "pro skalní kouzelníky, aby žílu zablokovali." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Jen v takovém případě mohou trpaslíci přežít..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: nemohu načíst ikonu \"%1\".\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Vzkříšení: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Skóre: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Patro: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Nová hra" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "Ú_vod" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Nastavení" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_O aplikaci" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Konec" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Obnovit hru" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Znovu _spustit patro" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Ukončit hru" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Rychlá hra pro GNOME o rozmačkávání příšer. Rozmáčkněte příšery, než se přes " "vás převalí a ovládnou svět trpaslíků!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Miloslav Trmač " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(vzkř.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Při načítání souboru \"%1\" došlo k chybě. To možná znamená, že záznamy, " "která patra jste prošli, jsou ztraceny." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Chyba při načítání" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Při ukládání souboru \"%1\" došlo k chybě. To možná znamená, že záznamy, " "která patra jste prošli, jsou ztraceny." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Chyba při ukládání" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Obtížnost" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Celá obrazovka" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Patro" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Pohyb" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Počet hráčů" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Tažení bloku" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Vzhled" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Klávesa pro aktivaci tažení bloků" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Klávesa pro pohyb dolů" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Klávesa pro pohyb doleva" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Klávesa pro pohyb doleva a dolů" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Klávesa pro pohyb doleva a nahoru" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Klávesa pro pohyb doprava" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Klávesa pro pohyb doprava a dolů" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Klávesa pro pohyb doprava a nahoru" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Klávesa pro pohyb nahoru" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Klávesy hráče 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Klávesy hráče 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Nastavení" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Spustit hru" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Spustit v _patře:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Používat režim přes _celou obrazovku" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Snadná" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Těžká" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Střední" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Jeden hráč" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Spustit" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Dva hráči" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Rozmačkávejte příšery a zachraňte trpaslíky" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Řetězec by měl být název GDK pro hodnotu klávesy, kterou použít (dá se najít " "v gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Používat režim přes celou obrazovku" monster-masher-1.8.1/po/cy.po0000644000175000017500000002572110547745537013027 00000000000000# monster-masher yn Gymraeg. # This file is distributed under the same license as the monster-masher # package. # Dafydd Harries , 2003. # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-07-09 13:02+0200\n" "PO-Revision-Date: 2003-09-20 20:09+0100\n" "Last-Translator: Dafydd Harries \n" "Language-Team: Cymraeg \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Lefel %1 yn glîr o fwystfilod!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "A diflannodd yr arwr olaf..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "Rhyddhawyd pob lefel!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Yn mynd i fewn i lefel %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Gwall farwol" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1, Gwiriwch eich ymsefydliad neu adroddwch y broblem i'r darparwr os " "ymsefydloch o becyn." #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Yn yr hen ddyddiau, cyn daeth dyn i'r byd, roedd y corrachod yn niferus." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Drwy ganrifoedd o waith caled, wedi eu cynorthwyo ond ychydig gan y pŵerau " "ymddyrchafol a rhoddwyd iddynt gan eu duw, fe balon nhw siaftau ac ogofâu yn " "y mynyddoedd." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "O hyd yn chwilio am y gemau a'r mwyni gwerthfawr..." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Ond fe balodd un llwyth un ddyfnach na'r lleill. Dim ond ei gyfoeth oedd yn " "tyfu'n gyflymach na'i drachwant." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Fe aeth y blynyddoedd heibio. Fe ddaeth pen y llwyth yn frenin y corrachod. " "Danfonwyd miloedd o ddynion, menywod a phlat i weithrio yn y cloddiau " "dyfnaf, mwyaf gwerthfawr." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Yna, un diwrnod, canfuwyd cramen fawr o lo. Neu felly myddyliwyd..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "O'r carbon du, cododd greadur rhyfedd!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Newidodd y momentau cyntaf o syfrdan i arswyd ymysg y gweithwyr wrth i " "gannoedd o siapau eraill ymddangos o'r wythïen, yn mathru pawb a phopeth yn " "eu ffordd." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Am fisoedd, ymladdodd y llwyth y bwystfilod. Dim ond llond dyrnaid o " "negeswyr a ddanfonwyd i rhybuddio'r llwythi eraill a oroesodd." #: src/intro.cpp:118 #, fuzzy msgid "The world of the gnomes was threatened..." msgstr "Bygythwyd byd y corrachod." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Gan y bwystfilod duon o garbon caletach na dur, yn fecanyddol yn eu twpdra; " "ond yn farwol." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Gan y bwystfilod arfogedig wedi ei amddiffyn mor dda mai dim ond y craigwely " "oedd ddigon caled i'w llad." #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Gan y chwilwyr, cyfrwys a slei, yn goch o waed y corrachod roedd eu pigau " "wedi sarnu." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "A gan y dodwyr wyau glas a luosodd eu rhifau gan filoedd." #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Yr unig obaith oedd gan y corrachod ar ôl oedd gweithwr ymddyrchafu " "diymhongar. Roedd e wedi darganfod fforff o falu'r bwystfilod yn erbyn " "creigiau'r mynydd." #: src/intro.cpp:141 msgid "That hope is you." msgstr "Chi yw'r gobaith hwnnw." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Mae'n rhaid i chi ymladd eich ffordd yn ddwfn i fewn i'r mynyddoedd, heibio " "pob un o lefelau llwyth y brenhinoedd a chlirio'r ffordd i'r gwyswyr craig " "flocio'r wythïen." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Dim ond felly all y corrachod oroesi..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: ni ellir llwytho'r eicon \"%1\".\n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Atgyfodiadau: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Sgôr: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Lefel: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "Gêm _newydd" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Cyflwyniad" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_Hoffterau" #: src/main-window.cpp:243 msgid "_About" msgstr "_Ynghylch" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Gadael" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Adfer y gêm" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "Ail_gychwyn y lefel" #: src/main-window.cpp:264 msgid "_End game" msgstr "_Gorffen y gêm" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "Dafydd Harries " #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Gêm malu bwystfilod cyflym ar gyfer GNOME. Sblatio'r bwystfilod cyn eu bod " "nhw rholio drostoch chi a cymryd drosodd byd y corrachod!" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Mathrwr Bwystfilod" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "Hawlfraint (c) 2003 Ole Laursen" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(atgyfodiadau: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Digwyddod gwall wrth ddarllen y ffeil \"%1\". Fe all hyn olygu fod y cofnod " "o ba lefelau rydych chi wedi eu pasio wedi eu colli." #: src/persistent.cpp:167 msgid "Load error" msgstr "Gwall llwytho" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Digwyddod gwall wrth gadw'r ffeil \"%1\". Fe all hyn olygu fod y cofnod o ba " "lefelau rydych chi wedi pasio wedi eu colli." #: src/persistent.cpp:242 msgid "Save error" msgstr "Gwall cadw" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "Anhawster" #: src/ui.glade.h:2 #, fuzzy msgid "Fullscreen" msgstr "Tynnu bloc" #: src/ui.glade.h:3 msgid "Level" msgstr "Lefel" #: src/ui.glade.h:4 msgid "Moving" msgstr "Symud" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "Nifer o Chwaraewyr" #: src/ui.glade.h:6 msgid "Pull block" msgstr "Tynnu bloc" #: src/ui.glade.h:7 msgid "Appearance" msgstr "" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Y bysell ar gyfer gweithredu tynnu blociau" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Y bysell ar gyfer symud i lawr" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Y bysell ar gyfer symud i'r chiwth" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Y bysell ar gyfer sumud i'r chwith ac i lawr" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Y bysell ar gyfer symud i'r chwith ac i fyny" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Y bysell ar gyfer symud i'r dde" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Y bysell ar gyfer sumud i'r dde ac i lawr" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Y bysell ar gyfer symud i'r dde ac i fyny" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Y bysell ar gyfer sumud i fyny" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Bysellau Chwaraewr 1" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Bysellau Chwaraewr 2" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Hoffterau" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Cychwyn Gêm" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "Cychwyn ar _lefel:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "" #: src/ui.glade.h:30 msgid "_Easy" msgstr "_Hawdd" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_Caled" #: src/ui.glade.h:32 msgid "_Medium" msgstr "C_anolig" #: src/ui.glade.h:33 msgid "_One player" msgstr "_Un chwaraewr" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Cychwyn" #: src/ui.glade.h:35 msgid "_Two players" msgstr "_Dau chwaraewr" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Malu bwystfilod ac arbed y corrachod" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Dylai'r bysell fod yn enw GDK y gwerth bysell i'w ddefnyddio (gellir eu " "canfod yn gdk/gdkkeynames.c)." #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/da.po0000644000175000017500000002676511105645273012774 00000000000000# Danish translation of Monster Masher. # Copyright (C) 2003, 04 Free Software Foundation. # This file is distributed under the same license as the monster-masher package. # Ole Laursen , 2003, 04. # Kenneth Nielsen , 2008 # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-30 15:56+0100\n" "PO-Revision-Date: 2008-03-15 17:09+0100\n" "Last-Translator: Kenneth Nielsen \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Niveau %1 ryddet for monstre!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Og den sidste helt forsvandt..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Alle niveauer er befriet!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Indtræder på niveau %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Fatal fejl" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Kontrollér din installation eller rapportér problemet til " "pakkedistributøren hvis du installerede fra en pakke." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "I gamle dage, før mennesket gik omkring i verden, var gnomerne talrige." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Gennem århundreders hårdt arbejde der kun var blevet lettet en smule af de " "levitationskræfter som deres gud gennem tiderne forsynede dem med, gravede " "gnomerne skakter og huler i bjergene." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Altid på jagt efter de ædle stene og den dyrebare malm..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Men én klan gravede dybere end de andre. Kun rigdommen i klanens skatkamre " "voksede hurtigere end dens grådighed." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Årene gik. Overhovedet for klanen blev gnomernes konge. Tusinder af mænd, " "kvinder og børn blev sendt ned at arbejde i de dybeste, mest givtige miner." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Så en dag blev et stort forråd af kul fundet. Eller det troede man..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "En mystisk skabning hævede sig ud af den sorte karbon!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "De første øjeblikkes overraskelse blandt arbejderne blev erstattet af skræk " "mens hundrede af andre former brød ud af åren og ødelagde og dræbte alting " "på deres vej." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "I måneder kæmpede klanen mod monstrene. Kun en håndfuld budbringere der var " "blevet sendt ud for at advare de andre klaner, overlevede." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Gnomernes verden var truet..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Af de sorte monstre lavet af kulstof hårdere end stål, mekaniske i deres " "tanketomhed; men dødbringende." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Af de rustningsklædte monstre så velbeskyttede at kun grundfjeldet var hårdt " "nok til at knuse dem." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Af de listige søgere, røde fra det gnomblod som deres pigge havde udgydt." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Og af de blå æglæggere som forøgede deres antal med tusinder." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Det eneste tilbageværende håb for gnomerne var en ydmyg levitationsarbejder. " "Han havde fundet en måde at mase monstrene mod bjergets klipper." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Det håb er dig." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Du må kæmpe dig vej dybt ind i bjergene, forbi hvert af niveauerne i " "kongernes klans rige og rydde vejen så klippemagerne kan blokere åren." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Kun da kan gnomerne overleve..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: kan ikke indlæse ikonet \"%1\".\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Genoplivninger: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Point: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Niveau: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Nyt spil" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introduction" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "In_dstillinger" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Om" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Afslut" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Genoptag spil" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Start _forfra på niveau" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Afslut spil" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Hjertedunkende monstermosningsspil til Gnome. Splat monstrene før de ruller " "over dig og overtager gnomernes verden!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monstermoser" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "Ole Laursen\n" "\n" "Dansk-gruppen \n" "Mere info: http://www.dansk-gruppen.dk" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(genopliv.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "En fejl opstod under læsning af filen \"%1\". Dette kan betyde at " "oplysningerne om hvilke niveauer du har passeret, er gået tabt." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Indlæsningsfejl" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "En fejl opstod under gemning af filen \"%1\". Dette kan betyde at " "oplysningerne om hvilke niveauer du har passeret, er gået tabt." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Gemningsfejl" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Sværhedsgrad" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Fuldskærm" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Niveau" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Bevægelser" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Antal spillere" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Træk blok" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Udseende" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tast for at aktivere trækning af blokke" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tast for bevæge helt nedad" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tast for bevæge helt til venstre" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tast for bevæge helt til venstre og ned" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tast for bevæge helt til venstre og op" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tast for bevæge helt til højre" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tast for at bevæge helt til højre og ned" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tast for bevæge helt til højre og op" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tast for bevæge helt opad" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Taster til spiller 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Taster til spiller 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Indstillinger" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Start spil" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Start på _niveau:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Benyt _fuldskærmstilstand" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Let" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "S_vær" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Mellem" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_En spiller" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Start" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_To spillere" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Mos monstre og red gnomerne" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Strengen skal være GDK-navnet for tasteværdien der skal bruges (kan findes i " "gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Benyt fuldskærm" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/de.po0000644000175000017500000002764310547745537013011 00000000000000# German gDesklets translation. # Copyright (C) 2003, 2004 Ole Laursen # This file is distributed under the same license as the monster-masher package. # Christian Neumair , 2003, 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher 1.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-03-14 21:55+0100\n" "PO-Revision-Date: 2006-06-15 17:28+0200\n" "Last-Translator: Hendrik Richter \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Monster in Level %1 beseitigt!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Und der letzte Held verschwand …" #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Alle Level befreit!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Level %1 betreten …" #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Schwerwiegender Fehler" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Überprüfen Sie Ihre Installation oder berichten Sie den Fehler dem " "Distributor, falls Sie Monster Masher aus einem Paket heraus installiert " "haben." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "In alten Zeiten, noch bevor der Mensch das Licht der Welt erblickte, gab es " "Gnome in Hülle und Fülle." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Durch Jahrhunderte harter Arbeit, nur unwesentlich erleichtert durch die von " "ihrem Gott bereitgestellten Flugkräfte, gruben sie Schächte und Stollen in " "die Berge." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Stets suchten Sie nach kostbaren Steinen und wertvollem Erz …" #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Doch ein Clan grub tiefer als die Anderen. Nur sein Wohlstand wuchs " "schneller als seine Gier." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Jahre vergingen. Der Anführer des Clans wurde zum König der Gnome. Tausende " "von Männern, Frauen und Kindern wurden zur Arbeit in den tiefsten, " "gewinnbringendsten Minen gezwungen." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Eines Tages wurde eine gewaltige Kohleader entdeckt - zumindest dachte man " "dies …" #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Der schwarzen Kohle entstieg eine mächtige Kreatur!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Die Überraschung der Arbeiter wurde zu lähmendem Entsetzen, als hunderte " "weiterer Gestalten der Ader entsprangen, wobei sie alles und jeden " "vernichteten, der es wagte, sich ihnen in den Weg zu stellen." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Monatelang kämpfte der Clan gegen die Monster. Nur eine Handvoll Boten " "überlebte, die entsandt wurden, um die anderen Clans zu warnen." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Die Welt der Gnome war in Gefahr …" # CHECK #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Sie ging aus von den schwarzen Kohlemonstern: Härter als Stahl, von " "ungeheurer Torheit; doch tödlich." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Sie ging aus von den gepanzerten Monstern: So gut geschützt, dass nur das " "Felsgestein hart genug war, sie zu zerschmettern." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Sie ging aus von den Suchern, heimtückisch und verschlagen: Rot vor " "Gnomblut, das ihre Sporne vergossen." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Und sie ging aus von ihrer Brut, die ihre Anzahl tausendfach erhöhte." # CHECK #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Die einzig verbleibende Hoffnung der Gnome war ein bedeutungsloser " "Schwebearbeiter. Er fand einen Weg, die Monster an den Bergfelsen zu " "zerschellen." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Diese Hoffnung bist Du." # CHECK #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Du musst tief in die Berge vorstoßen, in jedem der Level des Königs-Clans " "bestehen und den Weg für die Felsenboten freiräumen, damit diese die Ader " "blockieren können." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Nur dann können die Gnome überleben …" #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: Das Symbol »%1« konnte nicht geladen werden.\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Wiederauferstehungen: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Punktzahl: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Level: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Neues Spiel" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "E_inführung" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Einstellungen" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Info" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Beenden" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "Zum Spiel _zurückkehren" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Level _neu starten" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "Spiel _beenden" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Ein schnelles Spiel für GNOME, bei dem es darum geht, Monster zu " "zerschmettern. Zerquetsche die Monster, bevor sie Dich überrollen und die " "Welt der Gnome erobern!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Christian " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(Wieder.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Beim Lesen der Datei »%1« ist ein Fehler aufgetreten. Dies deutet darauf " "hin, dass die Aufzeichnungen darüber verloren gegangen sind, welche Level " "Sie bereits geschafft haben." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Fehler beim Laden" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Beim Speichern der Datei »%1« ist ein Fehler aufgetreten. Dies deutet darauf " "hin, dass die Aufzeichnungen darüber verloren gegangen sind, welche Level " "Sie bereits geschafft haben." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Fehler beim Speichern" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Schwierigkeitsgrad" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Vollbild" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Level" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Fortbewegung" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Spieleranzahl" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Block ziehen" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Erscheinungsbild" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Taste, um an Blöcken zu ziehen" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Taste, um sich nach unten zu bewegen" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Taste, um sich nach links zu bewegen" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Taste, um sich nach unten links zu bewegen" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Taste, um sich nach oben links zu bewegen" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Taste, um sich nach rechts zu bewegen" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Taste, um sich nach unten rechts zu bewegen" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Taste, um sich nach rechts oben zu bewegen" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Taste, um sich nach oben zu bewegen" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Tasten, Spieler 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Tasten, Spieler 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Einstellungen" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Spielbeginn" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Beginnen in _Level:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "_Vollbildmodus verwenden" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Einfach" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Schwer" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Mittel" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "E_in Spieler" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Beginnen" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Zwei Spieler" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Monster zerschmettern und so die Gnome retten" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Die Zeichenkette sollte auf den GDK-Namen des zu verwendenden Tastenwerts " "gesetzt werden (zu finden in gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Vollbild verwenden" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/dz.po0000644000175000017500000004525310667464260013025 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: monster-masher.head.pot\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-02-26 03:22+0000\n" "PO-Revision-Date: 2007-02-27 14:08+0530\n" "Last-Translator: sonam pelden \n" "Language-Team: Dzongkha \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" "X-Poedit-Language: Dzongkha\n" "X-Poedit-Country: Bhutan\n" "X-Poedit-SourceCharset: utf-8\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "གནས་རིམ་ %1 འདི་མཱོནསི་ཊར་གྱི་དོན་ལུ་བསལ་ནུག!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "མཇུག་གི་ཧི་རོ་འདི་ཡལ་ནུག..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "གནས་རིམ་ཆ་མཉམ་རང་དབང་བྱིན་ཡོདཔ!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "གནས་རིམ་ %1 ནང་འཛུལ་ཞུགས་འབད་དོ..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "འཛོལ་བ་འཚུབ་ཆེན་" #: ../src/helpers.cpp:52 msgid "%1. Check your installation or report the problem to the distributor if you installed from a package." msgstr "%1. ཁྱོད་ཀྱིས་ཐུམ་སྒྲིལ་ལས་གཞི་བཙུགས་འབད་དེ་ཡོད་པ་ཅིན་ ཁྱོད་རའི་བཙུག་སྒྲིག་ཡང་ན་དཀའ་ངལ་འདི་ བཀྲམ་སྤེལ་འབད་མི་ལུ་སྙན་ཞུ་འབད།" #: ../src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "དང་ཕུགས་ཀྱི་དུས་ལུ་ མི་ཚུ་འཛམ་གླིང་ནང་མ་འོང་པའི་ཧེ་མ་ ཇི་ནོམ་ཚུ་འབོལ་ཏོག་ཏོ་སྡོད་ནུག།" #: ../src/intro.cpp:82 msgid "Through centuries of hard labour, only slightly eased by the levitational powers provided to them by their god, they bored out shafts and caves in the mountains." msgstr "བརྩོན་ལཱ་གི་དུས་རབས་ལས་ ཁོང་རའི་ལྷ་གིས་གནང་པའི་ལི་བི་ཊེ་ཤོ་ནཱལ་ནུས་ཤུགས་ཀྱིས་དུམ་གྲ་ཅིག་འཇམ་དྲགས་བཟོ་ཡོད་མི་རྐྱངམ་ཅིག་ དེ་ཚུ་གིས་ཕང་མདའ་དང་བྱག་ཕུག་ཚུ་གངས་རི་ཚུ་ནང་དོང་སྤེད་དེ་སྡོད་ནུག།" #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "ཨ་རྟག་རང་རིན་པོ་ཆེ་རྡོའི་རིགས་ཚུ་དང་ལྕགས་རྡོ་ཚུ་འཚོལ་ཏེ་སྡོད་ནུག..." #: ../src/intro.cpp:91 msgid "But one clan dug deeper than the others. Only its wealth was growing quicker than its greed." msgstr "དེ་འབདཝ་ད་མི་རྒྱུད་གཅིག་གིས་གཞན་མི་ལས་ལྷག་སྟེ་བརྐོ་ནུག། འདོད་ཆགས་ལས་རྒྱུ་ཚུ་མགྱོགས་པར་ཡར་འཕེལ་འགྱོ་དོ་ཡོདཔ་ཨིན།" #: ../src/intro.cpp:95 msgid "The years went by. The chief of the clan became the king of the gnomes. Thousands of men, women and children were sent to work in the deepest, most profitable mines." msgstr "ལོ་གྲངས་སོང་ཡོདཔ། མི་རྒྱུད་ཀྱི་གཙོ་བོ་འདི་ཇི་ནོམ་གྱི་རྒྱལཔོ་ཐོབ་ནུག། པོ་རྒས་ ཨམ་སྲུ་དང་ཨ་ལུ་ཚུ་སྟོང་ཕྲག་འབད་ གཏིང་ཟབ་དྲགས་ཁེ་སང་ཅན་གྱི་གཏེར་རྫས་བཏོན་ནི་ནང་ལཱ་འབད་བར་གཏང་ནུག།" #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "ཉིནམ་གཅིག་འབདཝ་ད་ རྡོ་སོལ་སྦོམ་ཅིག་ཡོད་ས་མཐོང་ནུག། ཡང་ན་ མནོ་བསམ་གཏང་ནུག་..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "ནག་རྫས་ལས་ རྣམ་རྟོག་ལང་སི་སི་གི་སེམས་ཅན་ཅིག་ལོང་དེ!" #: ../src/intro.cpp:107 msgid "The first moments of surprise among the workers were replaced with horror as hundreds of other shapes broke out of the vein, crushing everything and everybody on their way." msgstr "ལཱ་འབད་མི་ཚུ་ལས་གློ་བུར་བྱུང་བའི་དུས་སྐབས་འདི་ ཁྲག་རྩ་ལས་དབྱིབས་གཞན་མི་བརྒྱ་སྦེ་ཐོན་ཏེ་ ག་ཅི་རང་ག་རང་ཁོང་ཚུ་གི་ལམ་གུ་བསྣད་དེ་ འཇིགས་སྣང་གིས་བརྗེ་སོར་འབད་ནུག།" #: ../src/intro.cpp:113 msgid "For months, the clan fought the monsters. Only a handful of messengers sent out to warn the other clans survived." msgstr "མི་རྒྱུད་ཚུ་འདྲེ་དང་ཅི་ཁར་ཟླཝ་སྦེ་འཛིང་དགོཔ་བྱུང་ནུག། ཁ་འཐེན་འབག་མི་ཨ་རྩི་ཅིག་རྐྱངམ་ཅིག་ མི་རྒྱུད་མ་ཤི་བར་སྡོད་མི་ཚུ་ལུ་ཉེན་བརྡ་འབད་ནུག།" #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "ཇི་ནོམསི་གི་འཛམ་གླིང་འདི་འཇིགས་སྐུལ་འབད་ནུག..." #: ../src/intro.cpp:121 msgid "By the black monsters made of carbon harder than steel, mechanical in their stupidity; but deadly." msgstr "ལྕགས་ལས་སྲ་ཀྲག་ཡོད་པའི་ནག་རྫས་ཀྱི་བཟོ་ཡོད་པའི་མཱོནསི་ཊར་གནགཔ་གིས་ ཁོང་རའི་བླུན་པོའི་བྱ་སྤྱོད་ཀྱིས་; དེ་འབདཝ་ད་ཉེན་ཁ་ཅན།" #: ../src/intro.cpp:125 msgid "By the armoured monsters so well-protected that only the bed-rock was hard enough to slay them." msgstr "གོ་ཁྲམ་ཅན་གྱི་མཱོནསི་ཊར་ལེགས་ཤོམ་སྦེ་ཉེན་སྲུང་འབད་ཡོདཔ་ལས་ གཞི་རྟེན་འདི་དེ་ཚུ་གསད་ནིའི་དོན་ལུ་ཧ་ལམ་སྲ་ཀྲག་ཡོདཔ་ཨིན།" #: ../src/intro.cpp:129 msgid "By the seekers, sneaky and tricky, red from the gnome blood that their spikes had spilled." msgstr "འཚོལ་མི་ཚུ་ གསང་སྟེ་འགྱོ་མི་དང་གཡོ་བྱུས་ཅན་ ཇི་ནོམ་ཁྲག་ལས་དམརཔོ་ཚུ་ ཁོང་རའི་ལྕགས་རྩང་འདི་འཛགས་ལུད་ནུག།" #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "དང་ སྒོང་རྡོ་ཧོནམོ་དེ་གིས་ ཁོང་གི་ཨང་གྲངས་འདི་སྟོང་ཕྲག་གིས་སྦེ་ཡར་སེང་འགྱོ་ཡོདཔ།" #: ../src/intro.cpp:136 msgid "The only remaining hope of the gnomes was a humble levitation worker. He had found a way to mash the monsters against the mountain rocks." msgstr "ཇི་ནོམ་ལུ་ཡོད་པའི་རེ་བ་འདི་ ལི་བི་ཊེ་ཤན་ལཱ་འབད་མི་ཉམ་ཆུང་ཨིན་མས། མཱོནསི་ཊར་འདི་རི་ཆེན་རྡོ་ཕུང་གུ་བསྣད་ནི་གི་ལམ་འདི་ཨིན་མས།" #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "འ་ནི་རེ་བ་འདི་ཁྱོད་ཨིན།" #: ../src/intro.cpp:143 msgid "You must battle your way deep into the mountains, past each of the levels of the clan of the kings and clear the way for the rock summoners to block the vein." msgstr "ཁྱོད་ཀྱིས་ཁྱོད་རའི་ལམ་འདི་རི་ཆེན་གཏིང་ནང་ལུ་དམག་འཐབ་ནི་, རྒྱལཔོ་ཚུ་གི་མི་རྒྱུད་ཀྱི་གནས་རིམ་གྱི་འདས་པའི་དུས་དང་ ཁྲག་རྩ་བཀག་ནིའི་དོན་ལུ་ རྡོ་ཕུང་འབོད་བཀུག་འབད་མིའི་དོན་ལུ་ ཐབས་ལམ་ཚུ་བསལ།" #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "དེ་འབད་བ་ཅིན་རྐྱངམ་ཅིག་ ཇི་ནོམ་ཚུ་སྡོད་ཚུགས..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "མཱོནསི་ཊར་མ་ཤར: \"%1\"ངོས་དཔར་འདི་མངོན་གསལ་འབད་མ་ཚུགས།\n" #: ../src/main-window.cpp:158 #: ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "བསྐྱར་གསོ: %1" #: ../src/main-window.cpp:164 #: ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "སྐུགས: %1" #: ../src/main-window.cpp:174 #: ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "གནས་རིམ: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "རྩེདམོ་གསརཔ། (_N)" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "འགོ་འཛུགས། (_I)" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "དགའ་གདམ་ཚུ། (_P)" #: ../src/main-window.cpp:243 msgid "_About" msgstr "སྐོར་ལས། (_A)" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "སྤང་། (_Q)" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "རྩེདམོ་བསྐྱར་ལོག་འབད། (_R)" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "གནས་རིམ་ལོག་འགོ་བཙུགས། (_s)" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "རྩེདམོ་མཇུག་བསྡུ། (_E)" #: ../src/main-window.cpp:407 msgid "Fast-paced monster mashing game for GNOME. Splat the monsters before they roll over you and take over the world of the gnomes!" msgstr "ཇི་ནོམ་གྱི་དོན་ལུ་ མགྱོགས་དྲགས་མགྱོགས་ཚད་མཱོནསི་ཊར་རྩེདམོ། མཱོནསི་ཊར་དེ་གིས་ཁྱོད་ཀྱི་ལྟག་ལས་མ་སྒྲིལ་བའི་ཧེ་མ་གཏོར་གཏང་ནི་དང་ ཇི་ནོམ་གྱི་འཛམ་གླིང་ལས་དབང་ལེན་འབད!" #: ../src/main-window.cpp:412 #: ../src/main.cpp:55 #: ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "མཱོནསི་ཊར་མ་ཤར་" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "འདྲ་བཤུས་%1 ༢༠༠༣་ ཨོལ་ ལའུར་སེན་" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "སྐད་བསྒྱུར་པའི་-ངོ་བསྟོད་ཚུ་" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: ../src/persistent.cpp:160 msgid "An error occurred while reading the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "ཡིག་སྣོད་ \"%1\" ལྷགཔ་ད་འཛོལ་བ་བྱུང་ཡོདཔ། ཁྱད་ཀྱིས་གནས་རིམ་ག་ཅི་སྤྲོད་ཡོདཔ་ཨིན་ན་གི་ཐོ་ཡིག་ཚུ་བརླག་སྟོར་ཞུགས་ཡོད་པའི་དོན་ཨིན།" #: ../src/persistent.cpp:167 msgid "Load error" msgstr "འཛོལ་བ་མངོན་གསལ་འབད་" #: ../src/persistent.cpp:235 msgid "An error occurred while saving the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "ཡིག་སྣོད་ \"%1\" སྲུང་བཞག་འབདཝ་ད་ འཛོལ་བ་བྱུང་ནུག། ཁྱོད་ཀྱི་གནས་རིམ་ཚུ་གི་སྒྲ་བཟུང་ག་བཟུམ་གཏང་ཡོད་རུང་བརླག་སྟོར་ཞུགས་ཡོད་ཟེར་བའི་དོན་ཨིན།" #: ../src/persistent.cpp:242 msgid "Save error" msgstr "འཛོལ་བ་སྲུང་བཞག་" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "དཀའ་ངལ་" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "གསལ་གཞི་གངམ་" #: ../src/ui.glade.h:3 msgid "Level" msgstr "གནས་རིམ་" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "འགུལ་བསྐྱོད་" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "རྩེ་མི་གི་ཨང་གྲངས་" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "བཀག་ཆ་འཐེན་ནི་" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "འབྱུང་སྣང་" #: ../src/ui.glade.h:8 #: ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "བཀག་ཆ་ཚུ་གི་ཤུགས་ལྡན་འཐེན་ནིའི་དོན་ལུ་ལྡེ་མིག་" #: ../src/ui.glade.h:9 #: ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "མར་སྤོ་བཤུད་འབད་ནིའི་ལྡེ་མིག་" #: ../src/ui.glade.h:10 #: ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "གཡོན་ལུ་སྤོ་བཤུད་འབད་ནིའི་ལྡེ་མིག་" #: ../src/ui.glade.h:11 #: ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "གཡོན་དང་མར་སྤོ་བཤུད་འབད་ནིའི་དོན་ལུ་ལྡེ་མིག་" #: ../src/ui.glade.h:12 #: ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "གཡོན་དང་ཡར་སྤོ་བཤུད་འབད་ནིའི་དོན་ལུ་ལྡེ་མིག་" #: ../src/ui.glade.h:13 #: ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "གཡས་ལུ་སྤོ་བཤུད་འབད་ནིའི་དོན་ལུ་ལྡེ་མིག་" #: ../src/ui.glade.h:14 #: ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "གཡས་དང་མར་ལུ་སྤོ་བཤུད་འབད་ནིའི་དོན་ལུ་ལྡེ་མིག་" #: ../src/ui.glade.h:15 #: ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "གཡས་དང་ཡར་ལུ་སྤོ་བཤུད་འབད་ནིའི་དོན་ལུ་ལྡེ་མིག་" #: ../src/ui.glade.h:16 #: ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "ཡར་སྤོ་བཤུད་འབད་ནིའི་ལྡེ་མིག་" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "རྩེ་མི་ ༡་ ལྡེ་མིག་ཚུ་" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "རྩེ་མི་ ༢་ ལྡེ་མིག་ཚུ་" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "དགའ་གདམ་ཚུ་" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "རྩེདམོ་འགོ་བཙུགས་" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "གནས་རིམ་གུ་འགོ་བཙུགས: (_l)" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "གསལ་གཞི་གངམ་གྱི་ཐབས་ལམ་ལག་ལེན་འཐབ། (_f)" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "འཇམ་ཏོང་ཏོ། (_E)" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "ལཱ་ཁག། (_H)" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "འབྲིང་མ། (_M)" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "རྩེ་མི་གཅིག། (_O)" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "འགོ་བཙུགས། (_S)" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "རྩེ་མི་གཉིས། (_T)" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "མཱོནསི་ཊར་བསྣད་ནི་དང་ཇི་ནོམ་ཚུ་སྲུང་" #: ../monster-masher.schemas.in.h:10 msgid "The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c)." msgstr "ཡིག་རྒྱུན་འདི་ (ཇི་ཌི་ཀེ་/gdkkeynames.c ནང་ཐོབ་ཨིན་) ལག་ལེན་འཐབ་ནིའི་དོན་ལུ་ གནས་གོང་གཙོ་བོ་གི་ཇི་ཌི་ཀེ་མིང་དགོཔ་ཨིན།" #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "གསལ་གཞི་གངམ་ལག་ལེན་འཐབ་" monster-masher-1.8.1/po/el.po0000644000175000017500000003434010547745537013011 00000000000000# translation of el.po to Greek # This file is distributed under the same license as the PACKAGE package. # Copyright (C) Free Software Foundation , 2003 # Kostas Papadimas , 2003 # msgid "" msgstr "" "Project-Id-Version: el\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-09-12 13:06+0300\n" "PO-Revision-Date: 2003-10-13 22:07+0300\n" "Last-Translator: Kostas Papadimas \n" "Language-Team: Greek \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Το επίπεδο %1 καθαρίστηκε από τέρατα!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Και τελευταίος ήρωας εξαφανίστηκε..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Όλα τα επίπεδα απελευθερώθηκαν!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Είσοδος στο επίπεδο %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Μοιραίο σφάλμα" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "a.%1. Ελέγξτε την εγκατάσταση σας ή αναφέρετε το στο διανομέα σας αν το " "εγκαταστήσατε από ένα πακέτο." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "Παλιά, πριν ο άνθρωπος εμφανιστεί στον κόσμο, τα ξωτικά ήταν άφθονα." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Μέσα από αιώνες σκληρής εργασίας, βοηούμενοι μόνο από τις δυνάμεις " "μετεώρισης που του έδωσε ο θεός τους, έσκαψαν φρεάτια και σπηλιές στα βουνά." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Πάντοτε ψάχνοντας για πολύτιμους λίθους και καιτάσματα..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Αλλά μια φυλή έσκαψε βαθύτερα από τις άλλες. Και ο πλούτος της μεγάλωνε " "γρηγορότερα από την απληστία της." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Τα χρόνια πέρασαν. Ο αρχηγός της φυλής έγινε ο βασιλιάς των ξωτικών. " "Χιλιάδες άνδρες, γυναίκες και παιδιά στάλθηκαν για δουλειά στα πιό βαθιά και " "περισσότερο επικερδή ορυχεία." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Μια μέρα μια μεγάλη φλέβα άνθρακα βρέθηκε. Ή έτσι νόμιζαν..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Από το μαύρο άνθρακα, ένα παράξενο πλάσμα αναδύθηκε!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Τα πρώτα λεπτά έκπληξης ανάμεσα τους εργάτες διαδέχθηκαν από τρόμο, μιας και " "εκατοντάδες άλλων σχημάτων εμφανίστηκαν διαλύοντας κάθε πράγμα και σώμα στο " "διάβα τους. " #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Για μήνες η φυλή πολεμούσε τα τέρατα. Μόνο μια χούφτα αγγελιοφόροι που " "στάλθηκαν για να προειδοποιήσουν τις άλλες φυλές επιβίωσαν." #: ../src/intro.cpp:118 #, fuzzy msgid "The world of the gnomes was threatened..." msgstr "Ο κόσμος των ξωτικών ήταν σε κίνδυνο." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Από τα μαύρα τεράτα φτιαγμένα από άνθρακα- σκληρότερα από ατσάλι, μηχανικά " "στη βλακεία τους, αλλά θανάσιμα." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Από τα οπλισμένα τέρατα , τόσα καλά προστατευμένα που μόνο το βραχώδες " "υπόστρωμα ήταν τόσο σκληρό για να τους σκοτώσει." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Από τους ερευνητές, ύπουλα και μουλωχτά, κόκκινα από το αίμα των ξωτικών που " "τα καρφια τους είχαν διασκορπίσει." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Και από τα επίπεδα μπλέ αυγών που πολλαπλασιάζονταν κατά χιλιάδες." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Η μόνη ελπίδα που απέμενε στα ξωτικά ήταν ένας ταπεινός εργάτης μετεώρισης. " "Είχε βρεί ένα τρόπο να διαλύει τα ξωτικά πάνω στα βράχια του βουνού." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Αυτή η ελπίδα είσαι εσύ." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Θα πρέπει να πολεμήσεις στο δρόμο σου βαθιά μέσα στο βουνό, να περάσεις κάθε " "ένα από τα επίπεδα της φυλής των βασιλιλαδων και να καθαρίσεις το δρόμο για " "τους μετακινητές των βράχων ώστε να φράξουν τη φλέβα. " #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Μόνο τότε θα επιβιώσουν τα ξωτικά..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: Αδυναμία φόρτωσης του εικονιδίου \"%1\".\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Αναστάσεις: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Βαθμολογία: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Επίπεδο: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Νέο παιχνίδι" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "Ει_σαγωγή" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Προτιμήσεις" #: ../src/main-window.cpp:243 msgid "_About" msgstr "Πε_ρί" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "Έ_ξοδος" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "Συνέ_χεια παιχνιδιού" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Ε_πανέναρξη επιπέδου" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Τέλος παιχνιδιού" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "'Ενα παιχνίδι γρήγορης πλοκής για το Gnome. Διαλύστε τα τέρατα πριν πέσουν " "πάνω σας και κυριεύσουν το κόσμο των ξωτικών!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 #, fuzzy msgid "Copyright %1 2003 Ole Laursen" msgstr "Πνευματικα Δικαιώματα (c) 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Κώστας Παπαδήμας " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(αναστ.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Δημιουργία σφάλματος κατά την ανάγνωση του αρχείου \"%1\". Αυτό μπορεί να " "σημαίνεθι ότι οι εγγραφές των επιπέδων που περάσατε χάθηκαν." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Σφάλμα φόρτωσης" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Δημιουργία σφάλματος κατά την αποθήκευση του αρχείου \"%1\". Αυτό μπορεί να " "σημαίνεθι ότι οι εγγραφές των επιπέδων που περάσατε χάθηκαν." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Αφάλμα αποθήκευσης" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Δυσκολία" #: ../src/ui.glade.h:2 #, fuzzy msgid "Fullscreen" msgstr "Τράβηγμα μπλόκ" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Επίπεδο" #: ../src/ui.glade.h:4 msgid "Moving" msgstr " Μετακίνηση" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr " Αριθμός από παίκτες" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Τράβηγμα μπλόκ" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Πλήκτρο για ενεργοποίηση τραβήγματος μπλόκ" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Πλήκτρο για μετακίνηση προς τα κάτω" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Πλήκτρο για μετακίνηση προς τα αριστερά" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Πλήκτρο για μετακίνηση προς τα αριστερά και κάτω" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Πλήκτρο για μετακίνηση προς τα αριστερά και πάνω" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Πλήκτρο για μετακίνηση προς τα δεξιά" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Πλήκτρο για μετακίνηση προς τα δεξιά και κάτω" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Πλήκτρο για μετακίνηση προς τα δεξιά και πάνω" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Πλήκτρο για μετακίνηση προς τα πάνω" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Πλήκτρα Παίκτη 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Πλήκτρα Παίκτη 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Προτιμήσεις" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Έναρξη παιχνιδιού" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Έναρξη στο ε_πίπεδο:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Εύκολο" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Δύσκολο" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Μέτριο" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "Έ_νας παίκτης" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "Έναρ_ξη" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "Δύ_ο παίκτες" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Διαλύστε τα τέρατα και σώστε τα ξωτικά" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/en_CA.po0000644000175000017500000002564510547745537013366 00000000000000# English/Canada translation of monster-masher. # Copyright (C) 2004 Adam Weinberger and the GNOME Foundation # This file is distributed under the same licence as the monster-masher package. # Adam Weinberger , 2004. # # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-10-12 21:29-0400\n" "PO-Revision-Date: 2004-07-09 13:08+0200\n" "Last-Translator: Adam Weinberger \n" "Language-Team: Canadian English \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Level %1 cleared for monsters!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "And the last hero disappeared..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "All levels liberated!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Entering level %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Fatal error" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "In the old days, before man entered the world, the gnomes were abundant." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Always seeking the precious stones and valuable ore..." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Then one day a large deposit of coal was found. Or so it was thought..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "From the black carbon, a strange creature rose!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "The world of the gnomes was threatened..." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "And by the blue egg layers that multiplied their number by thousands." #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." #: src/intro.cpp:141 msgid "That hope is you." msgstr "That hope is you." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Only then can the gnomes survive..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: cannot load the icon \"%1\".\n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Resurrections: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Score: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Level: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_New game" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introduction" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_Preferences" #: src/main-window.cpp:243 msgid "_About" msgstr "_About" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Quit" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Resume game" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "Re_start level" #: src/main-window.cpp:264 msgid "_End game" msgstr "_End game" #: src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" #: src/main-window.cpp:412 src/main.cpp:55 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:422 msgid "translator-credits" msgstr "Adam Weinberger " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." #: src/persistent.cpp:167 msgid "Load error" msgstr "Load error" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." #: src/persistent.cpp:242 msgid "Save error" msgstr "Save error" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "Difficulty" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "Fullscreen" #: src/ui.glade.h:3 msgid "Level" msgstr "Level" #: src/ui.glade.h:4 msgid "Moving" msgstr "Moving" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "Number of Players" #: src/ui.glade.h:6 msgid "Pull block" msgstr "Pull block" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Appearance" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Key for activating pulling of blocks" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Key for moving down" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Key for moving to the left" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Key for moving to the left and down" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Key for moving to the left and up" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Key for moving to the right" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Key for moving to the right and down" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Key for moving to the right and up" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Key for moving up" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Player 1 keys" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Player 2 keys" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Preferences" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Start Game" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "Start at _level:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Use _fullscreen mode" #: src/ui.glade.h:30 msgid "_Easy" msgstr "_Easy" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_Hard" #: src/ui.glade.h:32 msgid "_Medium" msgstr "_Medium" #: src/ui.glade.h:33 msgid "_One player" msgstr "_One player" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Start" #: src/ui.glade.h:35 msgid "_Two players" msgstr "_Two players" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Mash monsters and save the gnomes" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Use fullscreen" monster-masher-1.8.1/po/en_GB.po0000644000175000017500000002576310547745537013374 00000000000000# English (British) translation. # Copyright (C) 2004 THE monster-masher COPYRIGHT HOLDER # This file is distributed under the same license as the monster-masher package. # Gareth Owen , 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-09-13 21:03+0100\n" "PO-Revision-Date: 2006-09-13 21:04-0000\n" "Last-Translator: David Lodge \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Level %1 cleared for monsters!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "And the last hero disappeared..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "All levels liberated!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Entering level %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Fatal error" #: ../src/helpers.cpp:52 msgid "%1. Check your installation or report the problem to the distributor if you installed from a package." msgstr "%1. Check your installation or report the problem to the distributor if you installed from a package." #: ../src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "In the old days, before man entered the world, the gnomes were abundant." #: ../src/intro.cpp:82 msgid "Through centuries of hard labour, only slightly eased by the levitational powers provided to them by their god, they bored out shafts and caves in the mountains." msgstr "Through centuries of hard labour, only slightly eased by the levitational powers provided to them by their god, they bored out shafts and caves in the mountains." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Always seeking the precious stones and valuable ore..." #: ../src/intro.cpp:91 msgid "But one clan dug deeper than the others. Only its wealth was growing quicker than its greed." msgstr "But one clan dug deeper than the others. Only its wealth was growing quicker than its greed." #: ../src/intro.cpp:95 msgid "The years went by. The chief of the clan became the king of the gnomes. Thousands of men, women and children were sent to work in the deepest, most profitable mines." msgstr "The years went by. The chief of the clan became the king of the gnomes. Thousands of men, women and children were sent to work in the deepest, most profitable mines." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Then one day a large deposit of coal was found. Or so it was thought..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "From the black carbon, a strange creature rose!" #: ../src/intro.cpp:107 msgid "The first moments of surprise among the workers were replaced with horror as hundreds of other shapes broke out of the vein, crushing everything and everybody on their way." msgstr "The first moments of surprise among the workers were replaced with horror as hundreds of other shapes broke out of the vein, crushing everything and everybody on their way." #: ../src/intro.cpp:113 msgid "For months, the clan fought the monsters. Only a handful of messengers sent out to warn the other clans survived." msgstr "For months, the clan fought the monsters. Only a handful of messengers sent out to warn the other clans survived." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "The world of the gnomes was threatened..." #: ../src/intro.cpp:121 msgid "By the black monsters made of carbon harder than steel, mechanical in their stupidity; but deadly." msgstr "By the black monsters made of carbon harder than steel, mechanical in their stupidity; but deadly." #: ../src/intro.cpp:125 msgid "By the armoured monsters so well-protected that only the bed-rock was hard enough to slay them." msgstr "By the armoured monsters so well-protected that only the bed-rock was hard enough to slay them." #: ../src/intro.cpp:129 msgid "By the seekers, sneaky and tricky, red from the gnome blood that their spikes had spilled." msgstr "By the seekers, sneaky and tricky, red from the gnome blood that their spikes had spilled." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "And by the blue egg layers that multiplied their number by thousands." #: ../src/intro.cpp:136 msgid "The only remaining hope of the gnomes was a humble levitation worker. He had found a way to mash the monsters against the mountain rocks." msgstr "The only remaining hope of the gnomes was a humble levitation worker. He had found a way to mash the monsters against the mountain rocks." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "That hope is you." #: ../src/intro.cpp:143 msgid "You must battle your way deep into the mountains, past each of the levels of the clan of the kings and clear the way for the rock summoners to block the vein." msgstr "You must battle your way deep into the mountains, past each of the levels of the clan of the kings and clear the way for the rock summoners to block the vein." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Only then can the gnomes survive..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: cannot load the icon \"%1\".\n" #: ../src/main-window.cpp:158 #: ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Resurrections: %1" #: ../src/main-window.cpp:164 #: ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Score: %1" #: ../src/main-window.cpp:174 #: ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Level: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_New game" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introduction" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Preferences" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_About" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Quit" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Resume game" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Re_start level" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_End game" #: ../src/main-window.cpp:407 msgid "Fast-paced monster mashing game for GNOME. Splat the monsters before they roll over you and take over the world of the gnomes!" msgstr "Fast-paced monster mashing game for GNOME. Splat the monsters before they roll over you and take over the world of the gnomes!" #: ../src/main-window.cpp:412 #: ../src/main.cpp:55 #: ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Gareth Owen " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: ../src/persistent.cpp:160 msgid "An error occurred while reading the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "An error occurred while reading the file \"%1\". This may mean that the recordings of what levels you have passed are lost." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Load error" #: ../src/persistent.cpp:235 msgid "An error occurred while saving the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "An error occurred while saving the file \"%1\". This may mean that the recordings of what levels you have passed are lost." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Save error" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Difficulty" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Fullscreen" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Level" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Moving" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Number of Players" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Pull block" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Appearance" #: ../src/ui.glade.h:8 #: ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Key for activating pulling of blocks" #: ../src/ui.glade.h:9 #: ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Key for moving down" #: ../src/ui.glade.h:10 #: ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Key for moving to the left" #: ../src/ui.glade.h:11 #: ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Key for moving to the left and down" #: ../src/ui.glade.h:12 #: ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Key for moving to the left and up" #: ../src/ui.glade.h:13 #: ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Key for moving to the right" #: ../src/ui.glade.h:14 #: ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Key for moving to the right and down" #: ../src/ui.glade.h:15 #: ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Key for moving to the right and up" #: ../src/ui.glade.h:16 #: ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Key for moving up" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Player 1 keys" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Player 2 keys" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Preferences" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Start Game" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Start at _level:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Use _fullscreen mode" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Easy" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Hard" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Medium" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_One player" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Start" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Two players" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Mash monsters and save the gnomes" #: ../monster-masher.schemas.in.h:10 msgid "The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c)." msgstr "The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Use fullscreen" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/es.po0000644000175000017500000002722310547745537013022 00000000000000# translation of es.po to Spanish # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Francisco Javier F. Serrador , 2003. # msgid "" msgstr "" "Project-Id-Version: es\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-11-22 23:39+0100\n" "PO-Revision-Date: 2005-11-22 23:41+0100\n" "Last-Translator: Francisco Javier F. Serrador \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.2\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "¡Nivel %1 limpiado de moustruos!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Y el último héroe desapareció..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "¡Todos los niveles liberados!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Entrando al nivel %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Error fatal" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Compruebe su instalación o informe del problema al distribuidor si " "instaló desde un paquete." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "En los días antiguos, antes de que el hombre entrase en el mundo, los gnomos " "abundaban." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "A través de siglos de duro trabajo, sólo ligeramente facilitados por los " "poderes de levitación otorgados por su dios, cavaron cuevas en las montañas." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Siempre buscando las piedras preciosas y el valioso mineral..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Pero un clan cavó más profundo que otros. Sólo su riqueza iba creciendo más " "rápido que su codicia." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Los años transcurrieron. El jefe del clan se convirtió en el rey de los " "gnomos. Miles de hombres, mujeres y niños se enviaron a trabajar en las " "minas más profundas y ricas." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Un día se encontró un gran depósito de carbón. O eso era lo que creían..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Del negro carbón, ¡una extraña criatura surgió!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Los primeros momentos de sorpresa entre los trabajadores fueron reemplazados " "por el horror a medida que cientos de otras formas salían de la veta, " "destrozando cada cosa y cada cuerpo a su paso." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Por meses, el clan luchó contra los monstruos. Sólo un puñado de mensajeros " "sobrevivieron para marchar a avisar a los otros clanes." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "El mundo de los gnomos estaba amenazado..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Por los monstruos negros hechos de carbón más duros que el acero, mecánicos " "en su estupidez, pero letales." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Pero los monstuos estaban tan bien protegidos que sólo la roca madre era lo " "suficientemente dura para matarlos." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "Por los buscadores, rojo de la sangre de gnomeos que sus lanzas han derramado." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Y por las capas del huvo azul que multiplicaron su número mor miles." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "La última esperanza de los gnomps era un trabajador humilde trabajador " "levitador. Él había encontrado una manera de aplastar a los monstruos contra " "las piedras de la montaña." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Esa esperanza eres tú" #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Debes abrirte camino hasta las profundidades de las montañas, pasado cada " "uno de los niveles del clan de los reyes y limpia el camino de conjuradores " "de roca para bloquear la veta." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Sólo entonces los gnomos podrán sobrevivir..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: no se puede cargar el icono «%1».\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Resurrecciones: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Puntuación: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Nivel: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Juego nuevo" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introducción" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Preferencias" #: ../src/main-window.cpp:243 msgid "_About" msgstr "A_cerca de" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Salir" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Continuar juego" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Rein_iciar nivel" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "Ter_minar juego" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Juego consistente en aplastar monstruos para Gnome. Aplaste los monstruos " "antes de que pasen por encima suyp y conquisten el mundo de los gnomos." #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Francisco F. Serrador " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Ocurrió un error al leer el archivo «%1». Esto puede significar que las " "grabaciones de los nivees que has pasado se han perdido." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Error en la carga" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Ocurrió un error al guardar el archivo «%1». Esto podría significar que las " "grabaciones de los niveles que ha pasado se han perdido." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Error al guardar" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Dificultad" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Pantalla completa" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Nivel" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Movimiento" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Número de jugadores" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Tirar del bloque" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Apariencia" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tecla para activar el arrastre de bloque tirando" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tecla para bajar" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tecla para ir a la izquierda" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tecla para ir a la izquierda y bajar" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tecla para ir a la izquierda y subir" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tecla para ir a la derecha" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tecla para ir a la derecha y bajar" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tecla para ir a la derecha y subir" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tecla para subir" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Teclas del jugador 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Teclas del jugador 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Preferencias" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Iniciar juego" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Iniciar en el _nivel:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Usar modo a pantalla _completa" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Fácil" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Difícil" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Medio" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Un jugador" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Iniciar" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Dos jugadores" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Aplasta a los monstruos y salva a los gnomos" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "La cadena debería ser el nombre GDK del valor de la tecla a usar (puede " "encontrarse en gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Usar pantalla completa" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/eu.po0000644000175000017500000002721211105645273013005 00000000000000# translation of monster-masher.HEAD.po to Basque # translation of monster-masher.HEAD.eu.po to # Basque translation of monster-masher. # Copyright (C) 2004 THE monster-masher'S COPYRIGHT HOLDER # This file is distributed under the same license as the monster-masher package. # # Mikel Olasagasti , 2004. # Iñaki Larrañaga Murgoitio , 2004, 2005, 2008. msgid "" msgstr "" "Project-Id-Version: monster-masher.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-01-29 16:56+0100\n" "PO-Revision-Date: 2008-01-25 19:19+0100\n" "Last-Translator: Iñaki Larrañaga Murgoitio \n" "Language-Team: Basque \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "%1 mailako basapizti guztiak akatuta!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Eta azken heroia desagertu zen..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Maila guztiak askatuta!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "%1 mailara sartzen..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Errore larria" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Egiaztatu zure instalazioa edo bidali txosten bat zure banatzaileari " "pakete batetik instalatu baduzu." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Garai haietan, gizakiak munduan agertu aurretik, ipotxak ugariak ziren." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Mendeetako lan gogorretan zehar, jainkoek emandako lebitazio ahalmenei esker " "bizitza zertxobait erosoagoa izan zuten arren, mendietako kobazulo eta " "meazuloetaz aspertu ziren." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Beti burni baliagarrien eta harribitxien atzetik..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Baina klan batek besteek baino sakonago zulatu zuen. Beraien aberastasuna " "bakarrik ari zen beraien sabelkeria baino azkarrago hazten." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Urteak pasa ziren. Klaneko buruzagiak ipotxen errege bihurtu zen. Milaka " "gizon, emakume eta ume minarik aberatsen eta sakonenetara lanera bidali " "zituen." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Egun batean ikatz meta handi bat topatu zuten arte. Edo hori uste zuten " "zorigaitzeko haiek..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Ikatz beltzetik izaki arraro bat atera zen!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Hasierako langileen poztasuna izu bihurtu zen forma haietatik ehundaka " "basapizti irten ondoren, beraien bidean zegoen edozer eta edozein birrintzen." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Hilabetetan zehar klanekoek basapiztien aurka borrokatu ziren. Atzerrira " "bidalitako mezulari gutxi batzuk bakarrik lortu zuten bizirik irautea." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Ipotxen erreinua mehatxupean zegoen..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Ikatzez osatutako eta altzairua baino gogorragoak eta odolzaleak ziren " "basapizti geldo inozoen erruz." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Geruza gogorreko basapiztiak akatzeko modu bakarra harri lauzoekin zapaltzea " "zen." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Bilatzaileak, maltzur eta tranpatiak, gorriak ziren beraien iltzeek " "isuritako ipotxen odolarengatik." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "Eta arraultz urdinaren geruzarekin milakatan bidertu zuten beraien kopurua." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Ipotxei geratzen zitzaien itxaropen bakarra langile apal bat zen. Honek " "munstroak mendiko arroken kontra birrintzeko bidea aurkitu zuen." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Itxaropen hori zu zara." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Mendien sakonetan borrokatu behar zara, klan bakoitzaren mailak igaroz eta " "bidea ostopatzen duten arrokak apurtuz." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Orduan bakarrik ipotxak bizirik iraungo dute..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: ezin da kargatu \"%1\" ikonoa.\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Berpizteak: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Puntuazioa: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Maila: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "Joko _berria" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Sarrera" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Hobespenak" #: ../src/main-window.cpp:243 msgid "_About" msgstr "Honi _buruz" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Irten" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Jarraitu jokua" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Berrabiarazi maila" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Amaitu jokoa" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Basapizti birrinketa GNOMErako. Zapaldu basapiztiak, beraiek zu hil aurretik " "eta sahiestu ipotxen lurra hondamenditik!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Basapizti birrinketa" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright-a %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "Mikel Olasagasti \n" "Iñaki Larrañaga Murgoitio " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(berpiz.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Errore bat gertatu da \"%1\" fitxategia irakurtzean. Baliteke igaro dituzun " "mailen erregistroak galdu izana." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Errorea kargatzean" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Errore bat gertatu da \"%1\" fitxategia gordetzean. Baliteke igaro dituzun " "mailen erregistroak galdu izana." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Errorea gordetzean" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Zailtasuna" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Pantaila osoa" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Maila" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Mugimenduak" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Jokalarien kopurua" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Tiratu harri-kozkorra" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Itxura" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Harri-kozkorrak tiratzeko tekla" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Behera mugitzeko tekla" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Ezkerrera mugitzeko tekla" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Ezkerrera eta behera mugitzeko tekla" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Ezkerrera eta gora mugitzeko tekla" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Eskuinera mugitzeko tekla" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Eskuinera eta behera mugitzeko tekla" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Eskuinera eta gora mugitzeko tekla" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Gora mugitzeko tekla" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "1. jokalariaren teklak" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "2. jokalariaren teklak" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Hobespenak" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Hasi jokoa" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Hasi maila honetan:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Erabili pantaila _osoko modua" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Erraza" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Zaila" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Ertaina" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Jokalari bat" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Hasi" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Bi jokalari" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Birrindu basapiztiak eta salbatu ipotxak" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Esaldia erabili nahi den tekla-balioaren GDK-izenak beharko luke (gdk/" "gdkkeynames.c fitxategian aurkitu daiteke)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Erabili pantaila osoa" monster-masher-1.8.1/po/fi.po0000644000175000017500000002674410547745537013020 00000000000000# monster-masher Finnish Translation # Suomennos: http://gnome.fi/ # Copyright (C) 2004 Free Software Foundation, Inc. # Sini Ruohomaa , 2004-2005 # # This file is distributed under the same license as the monster-masher package. # msgid "" msgstr "" "Project-Id-Version: 1.7\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-10-23 12:59+0300\n" "PO-Revision-Date: 2004-08-10 20:14+0300\n" "Last-Translator: Sini Ruohomaa \n" "Language-Team: Finnish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Taso %1 siivottu hirviöistä!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Ja viimeinen sankari katosi..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Kaikki tasot vapautettu!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Siirrytään tasolle %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Kriittinen virhe" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Tarkista asennuksesi tai raportoi ongelma levittäjälle, mikäli asensit " "ohjelman pakkauksesta." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Kauan sitten, ennen kuin ihminen saapui maailmaan, sitä hallitsivat maahiset." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Vuosisatojen ajan he kaivoivat kuiluja ja luolia vuoriin. Työ oli kovaa, ja " "sitä kevensi vain hieman maahisten jumalan kansalleen lahjoittama " "leijuntakyky." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" "Loputtoman etsinnän kohteena olivat kallisarvoiset kivet ja arvokkaat " "malmit..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Mutta yksi klaani kaivoi muita syvemmälle. Vain se rikastui ahneutensa " "kasvua nopeammin." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Vuodet vierivät, ja klaanin johtajasta tuli maahisten kuningas. Tuhansia " "miehiä, naisia ja lapsia lähetettiin työhön syvimpiin ja tuottoisimpiin " "kaivoksiin." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Eräänä päivänä löydettiin laaja hiiliesiintymä. Tai niin luultiin..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Mustan hiilen seasta nousikin outo otus!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Työläisten yllätys muuttui hetkessä kauhuksi, kun sadoittain muita hahmoja " "murtautui ulos hiilisuonesta, murskaten kaiken ja kaikki tiellään." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Klaani taisteli hirviöitä vastaan kuukausia. Vain kourallinen muita klaaneja " "varoittamaan lähetettyjä viestinviejiä selvisi." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Maahisten maailma oli uhattuna..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Sitä uhkasivat mustat hirviöt, jotka oli tehty terästäkin kovemmasta " "hiilestä. Ne olivat mekaanisisen typeriä, mutta tappavia." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Sitä uhkasivat panssaroidut kauheudet, joiden kovan suojauksen läpäisemiseen " "vain kallioperän kivi oli kyllin kovaa." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Sitä uhkasivat etsijät, luihut ja ovelat, punaisia maahisverestä, jota " "niiden piikit olivat vuodattaneet." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "Sitä uhkasivat myös siniset munijat, joiden joukot lisääntyivät " "tuhatkertaisiksi." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Maahisten viimeinen toivo oli vähäpätöinen leijujatyöläinen. Hän oli " "löytänyt keinon iskeä hirviöt vasten vuoren kiveä." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Sinä olet tuo toivo." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Sinun tulee taistella tiesi syvälle vuoriin, ohi kunkin kuninkaiden klaanin " "tason, ja raivata tie kivenkutsujille, jotka voivat tukkia hiilisuonen." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Vain siten maahiset voivat selvitä hengissä..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monsunmuussaaja: kuvakkeen \"%1\" lataaminen epäonnistui.\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Henkiinherätyksiä: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Pisteet: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Taso: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Uusi peli" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "Jo_hdanto" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Asetukset" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Tietoja pelistä" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Lopeta" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Jatka peliä" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Aloita _taso alusta" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Lopeta peli" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Nopeatempoinen monsunmuussauspeli Gnomelle. Liiskaa hirviöt ennen kuin ne " "jyräävät sinut ja valtaavat maahisten maailman!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monsunmuussaaja" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "Sini Ruohomaa, 2004-2005\n" "\n" "http://gnome.fi/" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(h-herätyksiä: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Tiedostoa \"%1\" ladattaessa tapahtui virhe. Tämän johdosta tieto " "läpäisemistäsi tasoista saattoi kadota." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Latausvirhe" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Tiedostoa \"%1\" tallennettaessa tapahtui virhe. Tämän johdosta tieto " "läpäisemistäsi tasoista saattoi kadota." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Tallennusvirhe" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Vaikeustaso" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Kokoruututila" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Taso" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Liikkuminen" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Pelaajien määrä" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Järkäleen veto" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Ulkonäkö" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Järkäleiden vetämisen aktivoiva näppäin" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Alas siirtymisen näppäin" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Vasemmalle siirtymisen näppäin" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Alavasemmalle siirtymisen näppäin" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Ylävasemmalle siirtymisen näppäin" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Oikealle siirtymisen näppäin" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Alaoikealle siirtymisen näppäin" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Yläoikealle siirtymisen näppäin" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Ylös siirtymisen näppäin" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Pelaajan 1 näppäimet" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Pelaajan 2 näppäimet" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Asetukset" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Aloita peli" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Aloita _tasolta:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Käytä _koko ruutu" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Helppo" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Vaikea" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "Ke_skitaso" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Yksi pelaaja" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Aloita" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Kaksi pelaajaa" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Liiskaa hirviöt ja pelasta maahiset" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Tämän merkkijonon tulisi olla käytettävän näppäimen GDK-nimi (nimet löytyvät " "tiedostosta gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Käytä koko ruutu" monster-masher-1.8.1/po/fr.po0000644000175000017500000002765510547745537013033 00000000000000# French translation of monster-masher. # Copyright (C) 2005-2006 Free Software Foundation, Inc. # This file is distributed under the same license as the monster-masher package. # # David Soulayrol , 2005. # Jonathan Ernst , 2006. # msgid "" msgstr "" "Project-Id-Version: monster-masher 1.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-07-24 14:22+0200\n" "PO-Revision-Date: 2006-07-24 14:21+0200\n" "Last-Translator: Jonathan Ernst \n" "Language-Team: GNOME French Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Niveau %1 nettoyé de ses monstres !" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Et le dernier héros disparut..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Tous les niveaux ont été libérés !" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Entrée du niveau %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Erreur fatale" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Vérifiez votre installation ou reportez le problème à votre distribution " "si vous avez procédé à l'installation depuis un paquetage." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Dans les temps anciens, avant que l'Homme n'apparaisse dans le monde, les " "gnomes étaient nombreux." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Durant des siècles de dur labeur, assisté seulement par le pouvoir de " "lévitation que leur procuraient leurs dieux, ils creusèrent puits et caves " "dans la montagne." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Toujours cherchant les pierres précieuses et l'or..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Mais un clan creusait plus profond que les autres. Et seul sa richesse " "croîssait plus rapidement que sa cupidité." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Les années passèrent. Le chef du clan devint le roi des gnomes. Des milliers " "d'hommes, de femmes et d'enfants furent envoyés pour travailler dans les " "plus profondes et les plus rentables des mines." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Un jour, une grande quantité de houille fut découverte. Ou du moins le " "pensait-on..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Du carbone noir naquit une étrange créature !" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Les premiers moments de surprise parmi les travailleurs firent place à " "l'horreur lorsque des centaines d'autres formes s'échappèrent de la veine, " "écrasant tout et tous sur leur passage." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Durant des mois, le clan se battit contre les monstres. Seule une poignée de " "messagers envoyés pour prévenir les autres clans survécurent." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Le monde des gnomes était menacé..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Par les monstres noirs faits de carbone plus durs que l'acier, mécaniques " "dans leur stupidité, mais mortels." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Par les monstres blindés si bien protégés que seule la roche mère était " "assez dure pour les détruire." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Par les fouineurs, furtifs et rusés, rouges du sang des gnomes que leurs " "pointes avaient renversés." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "Et par les couches d'oeufs bleus qui multipliaient leur nombre par milliers." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Le seul espoir restant aux gnomes était un humble travailleur en lévitation. " "Il avait trouvé un moyen d'écraser les monstres contre le roc de la montagne." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Cet espoir, c'est vous." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Vous devez vous frayer un chemin profondément à l'intérieur des montagnes, " "passer chacun des niveaux du clan des rois et nettoyer la place pour que les " "incantateurs du roc puissent boucher la veine." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Alors seulement les gnomes pourront survivre..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster masher : impossible de charger l'icône « %1 ».\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Résurrections : %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Score : %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Niveau : %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Nouveau jeu" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introduction" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Préférences" #: ../src/main-window.cpp:243 msgid "_About" msgstr "À _propos" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Quitter" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Reprendre le jeu" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Recommencer le _niveau" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Terminer le jeu" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Jeu rapide de labyrinthe pour GNOME. Écrasez les monstres avant qu'ils ne " "vous aplatissent et sauvez le monde des gnomes !" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "David Soulayrol " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(résur. : %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Une erreur est apparue en lisant le fichier « %1 ». Cela pourrait signifier " "que les enregistrements des niveaux que vous avez passé sont perdus." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Erreur de chargement" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Une erreur est apparue pendant la sauvegarde du fichier « %1 ». Ceci peut " "signifier que les enregistrements des niveaux que vous avez passé sont " "perdus." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Erreur de sauvegarde" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Difficulté" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Plein écran" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Niveau" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Déplacement" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Nombre de joueurs" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Tirer un bloc" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Apparence" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Touche pour tirer un bloc" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Touche pour se déplacer vers le bas" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Touche pour se déplacer vers la gauche" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Touche pour se déplacer vers le bas et à gauche" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Touche pour se déplacer vers le haut et à gauche" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Touche pour se déplacer vers la droite" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Touche pour se déplacer vers le bas et à droite" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Touche pour se déplacer vers le haut et à droite" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Touche pour se déplacer vers le haut" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Touches du joueur 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Touches du joueur 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Préférences" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Démarrer le jeu" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Démarrer au _niveau :" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Utiliser le mode _plein écran" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Facile" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "Di_fficile" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Moyen" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Un joueur" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Démarrer" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "D_eux joueurs" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Écrase les monstres et sauve les gnomes" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "La chaîne devrait être le nom GDK de la valeur de clef à utiliser (voir gdk/" "gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Plein écran" monster-masher-1.8.1/po/ga.po0000644000175000017500000001765011105645273012770 00000000000000# Irish (gaeilge) translations for monster-masher # Copyright (C) 2004 Alastair McKinstry # This file is distributed under the same license as the monster-masher package. # Alastair McKinstry , 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-07-09 13:02+0200\n" "PO-Revision-Date: 2004-03-15 08:01+0000\n" "Last-Translator: Alastair McKinstry \n" "Language-Team: Irish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "" #: src/game.cpp:151 msgid "All levels liberated!" msgstr "" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "" #: src/helpers.cpp:39 msgid "Fatal error" msgstr "" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "" #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: src/intro.cpp:141 msgid "That hope is you." msgstr "" #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Scór: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "" #: src/main-window.cpp:234 msgid "_New game" msgstr "Cluiche _Nua" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Eolas" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_Roghnachais" #: src/main-window.cpp:243 msgid "_About" msgstr "_Faoi" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Ealu" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "" #: src/main-window.cpp:264 msgid "_End game" msgstr "" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "Alastair McKinstry " #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "Cóipcheart (C) 2003 Ole Laursen" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:167 msgid "Load error" msgstr "Earraidh Lódáil" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:242 msgid "Save error" msgstr "Earraidh Sábháil" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "" #: src/ui.glade.h:3 msgid "Level" msgstr "" #: src/ui.glade.h:4 msgid "Moving" msgstr "" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "" #: src/ui.glade.h:6 msgid "Pull block" msgstr "" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Cuma" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Roghnachais" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Tosaigh Cluiche" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "" #: src/ui.glade.h:30 msgid "_Easy" msgstr "" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_Crua" #: src/ui.glade.h:32 msgid "_Medium" msgstr "_Gnáth" #: src/ui.glade.h:33 msgid "_One player" msgstr "" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Tósnaigh" #: src/ui.glade.h:35 msgid "_Two players" msgstr "" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/gu.po0000644000175000017500000002423110547745537013022 00000000000000# translation of monster-masher.HEAD.po to Gujarati # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Ankit Patel , 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-09-08 04:12+0200\n" "PO-Revision-Date: 2004-09-08 16:15+0530\n" "Last-Translator: Ankit Patel \n" "Language-Team: Gujarati\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.3.1\n" "Plural-Forms: Plural-Forms: nplurals=2; plural=(n!=1);\n\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "મોન્સ્ટરો માટે સ્તર%1 સાફ થઈ ગયું!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "અને છેલ્લો હિરો અદ્રશ્ય થયો..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "બધા સ્તરો પાર પડી ગયા!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "સ્તર %1 માં દાખલ થઈ રહ્યા છીએ..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "મોટી ભૂલ" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "%1. જો તમે પેકેજમાંથી સ્થાપન કર્યું હોય તો તમારું સ્થાપન ચકાસો અથવા તમારી સમસ્યાઓનો અહેવાલ વહેંચનારને કરો." #: src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "જૂ old daysાં, before man entered the world, the gnomeવડાંઓ વિશાળ સંખ્યામાંbundant." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "" #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: src/intro.cpp:141 msgid "That hope is you." msgstr "" #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "ગુણ: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "સ્તર: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "નવી રમત (_N)" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "ઓળખાણ (_I)" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "પસંદગીઓ (_P)" #: src/main-window.cpp:243 msgid "_About" msgstr "વિશે (_A)" #: src/main-window.cpp:246 msgid "_Quit" msgstr "બહાર નીકળો (_Q)" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "રમત ફરીથી કરો (_R)" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "સ્તર ફરીથી શરુ કરો (_s)" #: src/main-window.cpp:264 msgid "_End game" msgstr "રમતનો અંત કરો (_E)" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "અંકિત પટેલ " #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "મોન્સ્ટર મેશર" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "મુદ્રણાધિકાર (c) ઓલે લોરેસન" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:167 msgid "Load error" msgstr "ભૂલ લાવો" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:242 msgid "Save error" msgstr "ભૂલ સંગ્રહો" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "મુશ્કેલી" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "પૂર્ણ સ્ક્રીન" #: src/ui.glade.h:3 msgid "Level" msgstr "સ્તર" #: src/ui.glade.h:4 msgid "Moving" msgstr "ખસેડી રહ્યા છીએ" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "ખેલાડીઓની સંખ્યા" #: src/ui.glade.h:6 msgid "Pull block" msgstr "બ્લોક ખેંચો" #: src/ui.glade.h:7 msgid "Appearance" msgstr "દેખાવ" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "બ્લોકોને ખેંચવાનું સક્રિય કરવા માટેની કી" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "નીચે ખેંચવાની કી" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "ડાબે ખસેડવા માટેની કી" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "ડાબે અને નીચે ખસેડવા માટેની કી" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "ડાબે અને ઉપર ખસેડવા માટેની કી" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "જમણે ખસેડવા માટેની કી" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "જમણે અને નીચે ખેંચવા માટેની કી" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "જમણે અને ઉપર ખેંચવા માટેની કી" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "ઉપર ખસેડવા માટેની કી" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "ખેલાડી ૧ ની કી" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "ખેલાડી ૨ ની કી" #: src/ui.glade.h:22 msgid "Preferences" msgstr "પસંદગીઓ" #: src/ui.glade.h:27 msgid "Start Game" msgstr "રમત શરુ કરો" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "આ સ્તરે શરુ કરો (_l):" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "પૂર્ણ સ્ક્રીનવાળી સ્થિતિ વાપરો (_f)" #: src/ui.glade.h:30 msgid "_Easy" msgstr "સરળ (_E)" #: src/ui.glade.h:31 msgid "_Hard" msgstr "સખત (_H)" #: src/ui.glade.h:32 msgid "_Medium" msgstr "મધ્યમ (_M)" #: src/ui.glade.h:33 msgid "_One player" msgstr "એક ખેલાડી (_O)" #: src/ui.glade.h:34 msgid "_Start" msgstr "શરુ કરો (_S)" #: src/ui.glade.h:35 msgid "_Two players" msgstr "બે ખેલાડીઓ (_T)" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "પૂર્ણ સ્ક્રીન વાપરો" monster-masher-1.8.1/po/hr.po0000644000175000017500000002003510547745537013016 00000000000000# Translation of monster-masher to Croatiann # Copyright (C) Croatiann team # Translators: Automatski Prijevod <>,Boris Tudan ,Denis Lackovic ,Robert Sedak ,Vedran Vyroubal ,Vlatko Kosturjak , msgid "" msgstr "" "Project-Id-Version: monster-masher 0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-07-09 13:02+0200\n" "PO-Revision-Date: 2004-03-18 00:09+CET\n" "Last-Translator: auto\n" "Language-Team: Croatian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: TransDict server\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "" #: src/game.cpp:151 msgid "All levels liberated!" msgstr "" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "" #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Ozbiljna greška" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Provjerite svoju instalaciju ili prijavite problem distributeru ako ste " "instalirali iz paketa. " #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "" #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: src/intro.cpp:141 msgid "That hope is you." msgstr "" #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Rezultat: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Razina: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_Nova igra" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Uvod" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_Podešenja" #: src/main-window.cpp:243 msgid "_About" msgstr "_O" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Završi" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Nastavi igru" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "" #: src/main-window.cpp:264 msgid "_End game" msgstr "_Završi igru" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "lokalizacija@linux.hr" #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:167 msgid "Load error" msgstr "" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:242 msgid "Save error" msgstr "Spremi grešku" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "" #: src/ui.glade.h:3 msgid "Level" msgstr "" #: src/ui.glade.h:4 msgid "Moving" msgstr "" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "" #: src/ui.glade.h:6 msgid "Pull block" msgstr "" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Izgled" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Podešenja" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Pokreni igru" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "" #: src/ui.glade.h:30 msgid "_Easy" msgstr "_Lagano" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_Teško" #: src/ui.glade.h:32 msgid "_Medium" msgstr "_Srednje" #: src/ui.glade.h:33 msgid "_One player" msgstr "" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Započni" #: src/ui.glade.h:35 msgid "_Two players" msgstr "" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/it.po0000644000175000017500000002624010547745537013025 00000000000000# Italian translation of PACKAGE. # Copyright (C) 2004 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Riccardo Bozzo , 2004. # , fuzzy # # msgid "" msgstr "" "Project-Id-Version: monster masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-07-14 12:40+0200\n" "PO-Revision-Date: 2004-07-14 12:41+0200\n" "Last-Translator: Riccardo Bozzo \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Livello %1 ripulito dai mostri!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "L'ultimo eroe è scomparso..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "Tutti i livelli ripuliti!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Stai entrando nel livello %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Errore fatale" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Controlla l'installazione o riporta il problema al distributore se " "installato da pacchetto." #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Nelle antiche ere, prima che gli uomini comparissero nel mondo, regnavano " "gli gnomi." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Dopo secoli di duro lavoro, aiutati solamente dai poteri di levitazione " "donati loro dal loro dio, scavarono gallerie e cunicoli nella montagna." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Sempre alla ricerca di pietre preziose e metalli rari..." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Ma un clan scavò più in profondità degli altri. Solo la sua ricchezza " "cresceva più in fretta della sua ambizione." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Gli anni passavano. Il capoclan divenne il re degli gnomi. Migliaia di " "uomini, donne e bambini vennero mandati a lavorare nelle più ricche e " "profonde miniere." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Un giorno venne trovato un grosso deposito di carbone, o almeno così si " "pensava..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Dal nero carbone emerse una strana creatura!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Al primo attimo di sorpresa tra i minatori si sostituì l'orrore, quando " "videro centinaia di figure irrompere dalla vena,· chiacciando tutto e tutti " "sulla loro strada." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Per mesi il clan combattè i mostri. Solo una manciata di messaggeri " "sopravvisse, per avvertire gli altri clan." #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Il mondo degli gnomi era minacciato..." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Dai mostri composti di un carbone più duro dell'acciaio, automi senza " "volontà, ma letali " #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Da mostri corazzati talmente ben protetti che solo la roccia più dura poteva " "scalfirli." #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Dai cercatori, viscidi ed ingannevoli, rossi del sangue degli gnomi che le " "loro lance avevano versato." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "E dagli strati di uova blu che moltiplicavano il loro numero di migliaia." #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "L'ultima speranza rimasta agli gnomi era un umile minatore con il potere " "della levitazione, che aveva trovato il modo di schiacciare i mostri contro " "le roccie della montagna." #: src/intro.cpp:141 msgid "That hope is you." msgstr "Questa speranza sei tu." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Devi liberarti la strada in profondità attraverso la montagna, superare ogni " "livello del re dei clan ed aprire la strada agli evocatori di roccia che " "bloccheranno la vena." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Solo così gli gnomi potranno sopravvivere..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: impossibile caricare l'icona \"%1\" \n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Resurrezioni: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Punteggio: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Livello: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_Nuovo gioco" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introduzione" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "Preferen_ze" #: src/main-window.cpp:243 msgid "_About" msgstr "I_nformazioni" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Esci" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Riprendi il gioco" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "Re_inizia livello" #: src/main-window.cpp:264 msgid "_End game" msgstr "_Fine partita" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "Riccardo BozzoriccardoNOSPAM@upweb.it" #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Un veloce gioco arcade per GNOME. Schiaccia i mostri prima che ti travolgano " "e conquistino il mondo degli gnomi!" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "Copyright (c) 2003 Ole Laursen" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Si è· erificato un errore nella lettura del file \"%1\". Questo potrebbe " "significare che i salvataggi dei livelli superati sono andati perduti." #: src/persistent.cpp:167 msgid "Load error" msgstr "Errore nel caricamento" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Si è verificato un errore nel· alvataggio del file \"%1\". Questo potrebbe " "significare che i salvataggi dei livelli superati sono andati perduti." #: src/persistent.cpp:242 msgid "Save error" msgstr "Errore nel salvataggio" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "Difficoltà" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "Schermo Intero" #: src/ui.glade.h:3 msgid "Level" msgstr "Livello" #: src/ui.glade.h:4 msgid "Moving" msgstr "Movimenti" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "Numero di giocatori" #: src/ui.glade.h:6 msgid "Pull block" msgstr "Trascinare i massi" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Aspetto" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tasto per azionare il trascinamento del masso" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tasto per spostarsi in basso" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tasto per spostarsi a sinistra" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tasto per spostarsi in basso a sinistra" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tasto per spostarsi in alto a sinistra" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tasto per spostarsi a destra" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tasto per spostarsi in basso a destra" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tasto per spostarsi in alto a destra" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tasto per spostarsi in alto" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Tasti giocatore 1" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Tasti giocatore 2" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Preferenze" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Inizia partita" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "Inizia dal _livello:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Usa _schermo intero" #: src/ui.glade.h:30 msgid "_Easy" msgstr "_Facile" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_Difficile" #: src/ui.glade.h:32 msgid "_Medium" msgstr "_Medio" #: src/ui.glade.h:33 msgid "_One player" msgstr "_Un giocatore" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Inizio" #: src/ui.glade.h:35 msgid "_Two players" msgstr "Du_e giocatori" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Schiaccia i mostri e salva gli gnomi" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "La stringa deve essere il nome GDK del valore del tasto da usare (reperibile " "nel file gdk/gdkkeyname.c)" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Utilizza schermo intero" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/ka.po0000644000175000017500000004026510547745537013007 00000000000000# Georgian translation of monster-masher. # Copyright (C) 2004 Aiet Kolkhi # This file is distributed under the same license as the monster-masher package. # Aiet Kolkhi , 2004. # msgid "" msgstr "" "Project-Id-Version: 0.1\n" "POT-Creation-Date: 2004-04-29 15:38+0200\n" "PO-Revision-Date: 2004-05-18 00:51+0400\n" "Last-Translator: Aiet Kolkhi \n" "Language-Team: Georgian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:116 msgid "Level %1 cleared for monsters!" msgstr "დონე %1 მონსტრებისაგან გათავისუფლდა!" #: src/game.cpp:148 msgid "And the last hero disappeared..." msgstr "და ბოლო გმირიც გაუჩინარდა..." #: src/game.cpp:159 msgid "All levels liberated!" msgstr "ყველა დონე გაიწმინდა!" #: src/game.cpp:391 msgid "Entering level %1..." msgstr "შევდივარ დონე %1-ზე..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "გამოუსწორებელი შეცდომა" #: src/helpers.cpp:52 msgid "%1. Check your installation or report the problem to the distributor if you installed from a package." msgstr "%1. გადაამოწმეთ ინსტალაცია, ან შეატყობინეთ პრობლემა დისტრიბუტორს, თუ პაკეტისაგან მოახდინეთ ინსტალირება." #: src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "უხსოვარ დროს, სანამ ადამიანი დედამიწაზე ფეხს დადგამდა, იქ გნომები სახლობდნენ." #: src/intro.cpp:82 msgid "Through centuries of hard labour, only slightly eased by the levitational powers provided to them by their god, they bored out shafts and caves in the mountains." msgstr "საუკუნეების განმავლობაში მძიმე მუშაობით, რომელსაც მხოლოდ მათი ღმერთის მიერ მინიჭებული ფრენის ნიჭი თუ ამსუბუქებდა, ისინი თხრიდნენ მთებსა და გამოქვაბულებს." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "და გულდასმით ეძებდნენ ძვირფას ქვებსა და მადანს..." #: src/intro.cpp:91 msgid "But one clan dug deeper than the others. Only its wealth was growing quicker than its greed." msgstr "მაგრამ ერთმა კლანმა მოახერხა და სხვებზე უფრო ღრმად ამოთხარა. მათი სიმდიდრეც თვალის დახამხამებაში გაიზარდა, მაგრამ ამან მათი სიხარბე არ დააკმაყოფილა და ისინი მუხჩაუხრელად განაგრძობდნენ შრომას." #: src/intro.cpp:95 msgid "The years went by. The chief of the clan became the king of the gnomes. Thousands of men, women and children were sent to work in the deepest, most profitable mines." msgstr "ჩაიარა წლებმა. კლანის მეთაური გნომთა მეფე გახდა. ათასობით კაცი, ქალი და ბავშვი იგზავნებოდა ყველაზე ღრმა, შორეულ მაგრამ მომგებიან საბადოებში სამუშაოდ." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "ერთ დღესაც დიდი ნახშირის ზოდი აღმოაჩინეს. ყოველ შემთხვევაში გნომებმა ასე ჩათვალეს..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rised!" msgstr "შავი ნახშირბადიდან კი უცნაური არსება ამოხტა!" #: src/intro.cpp:107 msgid "The first moments of surprise among the workers were replaced with horror as hundreds of other shapes broke out of the vein, crushing every thing and every body on their way." msgstr "მუშებმა განცვიფრებისაგან პირი დააღეს, მაგრამ გაკვირვება შიშით ტერორით შეეცვალათ. ზვინიდან უთვალავი სხეული ამოფრინდა და ყველას დაერია." #: src/intro.cpp:113 msgid "For months, the clan fought the monsters. Only a handful of messengers sent out to warn the other clans survived." msgstr "თვეების განმავლობაში, კლანი შეუპოვრად ებრძოდა მონსტრებს. სამწუხაროდ მხოლოდ რამდენიმე შიკრიკი გადარჩა, რომლებმაც მოახერხეს და საშინელების შესახებ სხვა კლანებს შეატყობინეს." #: src/intro.cpp:118 msgid "The world of the gnomes was threatened." msgstr "დადგა გნომების ყოფნა-არყოფნის საკითხი. მათ არსებობას წინ აღუდგნენ..." #: src/intro.cpp:121 msgid "By the black monsters made of carbon harder than steel, mechanical in their stupidity; but deadly." msgstr "შავი მონსტრები, რომლებიც ნახშირბადისაგან იყვნენ შექმნილები. ისინი მართალია დიდი გამჭრიახობით და ენამოსწრებულობით არ გამოირჩეოდნენ, მაგრამ ნამდვილი ქილერები გახლდნენ." #: src/intro.cpp:125 msgid "By the armoured monsters so well-protected that only the bed-rock was hard enough to slay them." msgstr "ასევე ჯავშნიანი მონსტრები, როემლთა განგმირვა მხოლოდ სალი კლდის ნატეხით იყო შესაძლებელი." #: src/intro.cpp:129 msgid "By the seekers, sneaky and tricky, red from the gnome blood that their spikes had spilled." msgstr "ასვე მოუხელთებელი, სისხლისფერი სიქერები." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "ასევე ლურჯი კვერცხის მდებელები, რომლებიც ათასობით მრავდებოდნენ." #: src/intro.cpp:136 msgid "The only remaining hope of the gnomes was a humble levitation worker. He had found a way to mash the monsters against the mountain rocks." msgstr "გნომებს ერთადერთი იმედიღა დარჩათ - უცნობი მფრინავი. მან გამონახა მონსტრების დამარცხების გზა: იგი მონსტრებს სალ კლდეზე მინარცხებით მუსრავდა." #: src/intro.cpp:141 msgid "That hope is you." msgstr "ეს იმედი თქვენ ხართ!" #: src/intro.cpp:143 msgid "You must battle your way deep into the mountains, past each of the levels of the clan of the kings and clear the way for the rock summoners to block the vein." msgstr "თქვენ უნდა შეხვიდეთ მთებში, ბრძოლით გაიკაფოთ გზა, გაწმინდოთ ყოველი დონე მეფეთა კლანებისაგან და გზა გაუხსნათ დანარჩენ მებრძოლებს." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "მხოლოდ ესღა თუ გადაარჩენ გნომებს..." #: src/main-window.cpp:66 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: ვერ ვიძახებ სურათს \"%1\".\n" #: src/main-window.cpp:153 #: src/ui.glade.h:25 #, no-c-format msgid "Resurrections: %1" msgstr "სიცოხლე: %1" #: src/main-window.cpp:159 #: src/ui.glade.h:27 #, no-c-format msgid "Score: %1" msgstr "ქულა: %1" #: src/main-window.cpp:169 #: src/ui.glade.h:19 #, no-c-format msgid "Level: %1" msgstr "დონე: %1" #: src/main-window.cpp:236 msgid "_New game" msgstr "_ახალი თამაში" #: src/main-window.cpp:239 msgid "_Introduction" msgstr "_შესავალი" #: src/main-window.cpp:242 msgid "_Preferences" msgstr "_პარამეტრები" #: src/main-window.cpp:245 msgid "_About" msgstr "_შესახებ" #: src/main-window.cpp:248 msgid "_Quit" msgstr "_დამთავრება" #: src/main-window.cpp:260 msgid "_Resume game" msgstr "_თამაშის გაგრძელება" #: src/main-window.cpp:263 msgid "Re_start level" msgstr "დონის თ_ავიდან დაწყება" #: src/main-window.cpp:266 msgid "_End game" msgstr "თამაშის _დასრულება" # add documenters here # note to translators: please fill in your names and email addresses #: src/main-window.cpp:393 msgid "translator-credits" msgstr "ქართული თარგმანი: აიეტ კოლხი http://aiet.qartuli.net" #: src/main-window.cpp:396 msgid "Fast-paced monster mashing game for GNOME. Splat the monsters before they roll over you and take over the world of the gnomes!" msgstr "მძაფრსიუჟეტიანი მონსტრების მმუსვრელი თამაში GNOME–სათვის. გაანადგურეთ მონსტრები, სანამ ისინი დაეპატრონებოდნენ გნომთა სამყაროს!" #: src/main-window.cpp:399 #: src/main.cpp:47 #: src/ui.glade.h:20 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher – მონსტრთა მმუსვრელი" #: src/main-window.cpp:400 msgid "Copyright (c) 2003 Ole Laursen" msgstr "საავტორო უფლებები (c) 2003 ოლე ლორსენ (Ole Laursen)" #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(სიცოც.: %1)" #: src/persistent.cpp:160 msgid "An error occurred while reading the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "შეცდომა ფაილ \"%1\"-ის გამოძახებისას. ეს შესაძლოა ნიშნავდეს, რომ თქვენს მიერ დამახსორებული დონეები დაიკარგოს." #: src/persistent.cpp:167 msgid "Load error" msgstr "შეცდომა გამოძახებისას" #: src/persistent.cpp:235 msgid "An error occurred while saving the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "შეცდომა ფაილ \"%1\"-ის დამახსოვრებისას. ეს შესაძლოა ნიშნავდეს, რომ თქვენს მიერ დამახსორებული დონეები დაიკარგოს." #: src/persistent.cpp:242 msgid "Save error" msgstr "შეცდომის დამახსოვრებისას" #: src/ui.glade.h:1 msgid " " msgstr " " #: src/ui.glade.h:2 msgid "Difficulty" msgstr "სირთულე" #: src/ui.glade.h:3 msgid "Fullscreen" msgstr "მთელ ეკრანზე" #: src/ui.glade.h:4 msgid "Level" msgstr "დონე" #: src/ui.glade.h:5 msgid "Moving" msgstr "მოძრაობა" #: src/ui.glade.h:6 msgid "Number of Players" msgstr "მოთამაშეთა რიცხვი" #: src/ui.glade.h:7 msgid "Pull block" msgstr "ბლოკის გამოთრევა" #: src/ui.glade.h:8 msgid "Appearance" msgstr "წარმოჩენა" #: src/ui.glade.h:9 #: monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "ბლოკების გამოსათრევი ღილაკი" #: src/ui.glade.h:10 #: monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "ქვემოთ ჩამოსასვლელი ღილაკი" #: src/ui.glade.h:11 #: monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "მარცხნივ წასასვლელი ღილაკი" #: src/ui.glade.h:12 #: monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "მარცხნივ და ქვემოთ წასასლვლელი ღილაკი" #: src/ui.glade.h:13 #: monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "მარცხნივ და ზემოთ ასასვლელი ღილაკი" #: src/ui.glade.h:14 #: monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "მარჯვნივ წასასვლელი ღილაკი" #: src/ui.glade.h:15 #: monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "მარჯვნივ და ქვემოთ წასასვლელი ღილაკი" #: src/ui.glade.h:16 #: monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "მარჯვნივ და ზემოთ ასასვლელი ღილაკი" #: src/ui.glade.h:17 #: monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "ზემოთ ასასვლელი ღილაკი" #: src/ui.glade.h:21 msgid "Player 1 keys" msgstr "პირველი მოთამაშის ღილაკები" #: src/ui.glade.h:22 msgid "Player 2 keys" msgstr "მეორე მოთამაშის ღილაკები" #: src/ui.glade.h:23 msgid "Preferences" msgstr "პარამეტრები" #: src/ui.glade.h:28 msgid "Start Game" msgstr "თამაშის დაწყება" #: src/ui.glade.h:29 msgid "Start at _level:" msgstr "დაიწყე _დონიდან:" #: src/ui.glade.h:30 msgid "Use _fullscreen mode" msgstr "გამოიყენე მთელ-ეკრანიანი რეჟიმი" #: src/ui.glade.h:31 msgid "_Easy" msgstr "_ადვილი" #: src/ui.glade.h:32 msgid "_Hard" msgstr "_რთული" #: src/ui.glade.h:33 msgid "_Medium" msgstr "_საშუალო" #: src/ui.glade.h:34 msgid "_One player" msgstr "_ერთი მოთამაშე" #: src/ui.glade.h:35 msgid "_Start" msgstr "_დასაწყისი" #: src/ui.glade.h:36 msgid "_Two players" msgstr "_ორი მოთამაშე" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "მუსრი გაავლეთ მონსტრებს და დაიხსენით კეთილი გნომები" #: monster-masher.schemas.in.h:10 msgid "The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c)." msgstr "" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "მთელ ეკრანზე" monster-masher-1.8.1/po/lt.po0000644000175000017500000002610010547745537013023 00000000000000# Lithuanian translation of monster-masher. # Copyright (C) 2000 Free Software Foundation, Inc. # Tomas Kuliavas , 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-07-09 13:02+0200\n" "PO-Revision-Date: 2004-01-12 09:38+0200\n" "Last-Translator: Tomas Kuliavas \n" "Language-Team: Lithuanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "%1 lygis išvalytas nuo pabaisų!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Ir paskutinis didvyris dingo..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "Visi lygiai išvalyti!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Įeiname į lygį %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Kritinė klaida" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Patikrinkite programos instaliaciją arba informuokite apie problemą " "paketo tvarkytoją, jei Jūs įdiegėte ją kaip paketą." #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Senais gerais laikais, prieš žmogui išvystant šį pasaulį, jame karaliavo " "nykštukai." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Per amžius, naudodamiesi savo menkas jėgas ir sklandymo galią suteiktą jų " "dievo, nykštukai sunkiai triūsė kalnuose greždami šachtas ir rausdami urvus." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Jie ieškojo brangakmenių ir vertingų rūdų..." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Bet viena gentis kapstė giliau nei kitos. Tik jos turtai gausėjo greičiau " "nei gobšumas." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Metai bėgo. Klano vadas tapo visų nykštukų karaliumi. Tūkstančiai vyrų, " "moterų ir vaikų buvo nusiųsti dirbti į giliausias, pelningiausias kasyklas." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Vieną dieną buvo aptikta didelė anglies gysla. Bent jau taip buvo manoma..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Iš juodanglio pakilo keistas padaras!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Nuostabą nykštukų veiduose pakeitė siaubas, kai iš gyslos pasipylė šimtai " "kitų pavidalų, naikinančių viską ir visus savo kelyje." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Mėnesius gentis kovėsi su pabaisomis. Bet tik negausūs žygeiviai išsiųsti " "perspėti kitų genčių išgyveno." #: src/intro.cpp:118 #, fuzzy msgid "The world of the gnomes was threatened..." msgstr "Nykštukų pasauliui iškilo grėsmė." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Tai juodosios pabaisos sudėtos iš anglies, kuri yra kietesnė už plieną. " "Pabaisos yra primityvios ir kvailos, bet mirtinai pavojingos." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Tai šarvuotos pabaisos yra taip gerai apsaugotos, kad tik dideli monolitai " "gali jas pribaigti." #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Tai plėšriosios pabaisos, pasalūniškos ir klastingos, raudonos nuo nykštukų " "kraujo, pralieto jų dyglių." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Tai mėlynieji kiaušinių dėjikai, kurie dauginasi tūkstančiais." #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Vienintelė nykštukų viltis yra menkas sklandantis darbininkas. Jis rado būdą " "sunaikinti pabaisas naudojant kalnų uolas." #: src/intro.cpp:141 msgid "That hope is you." msgstr "Ta viltis esate Jūs." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Jūs turi pralaužti kelius į kalnų gilumą, užsukti į kiekvieną karalių " "genties urvų lygį ir išvalyti urvus, kad akmentašiai galėtų užversti gyslą." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Tik tada nykštukai išgyvens..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Pabaisų Naikintojas: nepavyko įkelti ženklo „%1“.\n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Gyvybių skaičius: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Taškai: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Lygis: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_Naujas žaidimas" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Pristatymas" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_Nuostatos" #: src/main-window.cpp:243 msgid "_About" msgstr "_Apie" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Baigti" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Pratęsti žaidimą" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "_Pereiti lygį iš naujo" #: src/main-window.cpp:264 msgid "_End game" msgstr "_Baigti žaidimą" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "Tomas Kuliavas" #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Greitaeigis pabaisas naikinantis GNOME žaidimas. Ištrėkškite pabaisas prieš " "jiems Jus pasiekiant ir pabaigiant nykštukų pasaulio užkariavimą!" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Pabaisų Naikintojas" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "Autorinės teisės (c) 2003 Ole Laursen" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(gyvyb.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Įvyko klaida skaitant bylą „%1“. Tai gali reikšti, kad Jūsų įveiktų lygių " "įrašai yra prarasti." #: src/persistent.cpp:167 msgid "Load error" msgstr "Įkėlimo klaida" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Įvyko klaida rašant į bylą „%1“. Tai gali reikšti, kad Jūsų įveiktų lygių " "įrašai yra prarasti." #: src/persistent.cpp:242 msgid "Save error" msgstr "Išsaugojimo klaida" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "Sudėtingumas" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "Visas ekranas" #: src/ui.glade.h:3 msgid "Level" msgstr "Lygis" #: src/ui.glade.h:4 msgid "Moving" msgstr "Judėjimas" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "Žaidėjų skaičius" #: src/ui.glade.h:6 msgid "Pull block" msgstr "Paleisti bloką" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Išvaizda" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Akmenų blokus paleidžiantis klavišas" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Judėjimo žemyn klavišas" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Judėjimo kairėn klavišas" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Judėjimo kairėn ir žemyn klavišas" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Judėjimo kairėn ir aukštyn klavišas" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Judėjimo dešinėn klavišas" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Judėjimo dešinėn ir žemyn klavišas" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Judėjimo dešinėn ir aukštyn klavišas" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Judėjimo aukštyn klavišas" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "1-o žaidėjo klavišai" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "2-o žaidėjo klavišai" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Nustatymai" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Pradėti Žaidimą" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "Pradinis _lygis:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Naudoti _viso ekrano rėžimą" #: src/ui.glade.h:30 msgid "_Easy" msgstr "_Lengvas" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_Sunkus" #: src/ui.glade.h:32 msgid "_Medium" msgstr "_Vidutinis" #: src/ui.glade.h:33 msgid "_One player" msgstr "_Vienas žaidėjas" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Žaisti" #: src/ui.glade.h:35 msgid "_Two players" msgstr "_Du žaidėjai" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Naikinkite pabaisas ir gelbėkite nykštukus" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Seka turėtų nurodyti naudojamo klavišo GDK pavadinimą (pavadinimus galima " "rasti tarp gdk/gdkkeynames.c)." #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Naudoti visą ekraną" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/lv.po0000644000175000017500000002614310667464260013026 00000000000000# translation of lv.po to Latvian # translation of monster-masher.HEAD.po to # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Raivis Dejus , 2007. msgid "" msgstr "" "Project-Id-Version: lv\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-07-27 18:29+0300\n" "PO-Revision-Date: 2007-07-27 18:30+0300\n" "Last-Translator: Raivis Dejus \n" "Language-Team: Latvian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Līmenis %1 ir attirīts priekš monstriem!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Un pedejais vāronis ir pazudis..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Visi līmeņi ir attirīti!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Startēju %1 līmeni..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Neizlabojama kļūda" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "%1. Parbaudiet Jūsu instalāciju, vai ziņojiet distributoriem par šo problemu." #: ../src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "Sen-senos laikos, pirms cilvēks valdija par pasauli, rūķi bija bagāti." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "Caur gadiem ilga darba, viņi izurba šahtas un alas kalnu grēdā." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Visu laiku mēkledami dārgus akmeņus un vertīgo rūdu..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Tikai viens klāns rāka dziļāk par citiem. Tikai viņu bagatība auga atrāk par " "viņu skopumu." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Pagajuši gadi. Klāna šefs kļūva par rūķu karali. Tūkstoši vīriešu, sievietes " "un bērnu bija aizsutīti stradāt visdziļākās, visbāgatakās raktuvēs." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Kādu dienu bija atrasts liels akmeņogles slanis. Vai ta viņi domaja..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Nezināma būtne rādas no melnas ogles!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Pārsteigums bija aizstāts ar bailēm, kad tūkstoši eņu izrāvas no dzīslas, " "laužot visu sava ceļā." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Menēšiem ilgi, klāns cīnijas ar monstriem. Tikai sauja izsūtāmo bija " "aizsutīti brīdināt citus klānus." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Rūķu pasaule bija apdraudēta..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "Melnie monstri no ogles, varenākie par tēraudu, nav gudri; bet navejoši." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Broņoti monstri bija tik labi aizsargāti, ka tos varēja nogalināt tikai " "granīts." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "Meklētāji bija sarkāni no rūķu asinim, ko viņu pikas izlēja." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Un zīlas olas līmeni, kas vairojas tūkstošiem." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Rūķu vienīga cerība bija vienkarš stradnieks. Viņš atrāda veidu ka saspiest " "monstrus pret kalna akmeņiem." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Šita cerība ir Tu." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Tev jacīnas dziļi kalnā, jaattira katru kalna līmeni lai beigas nobloķēt " "dzīslu." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Tikai tad rūķi varēs izdzīvot..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: nevaru ielādet ikonu \"%1\".\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Atdzīvināšanas: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Punktu skaits: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Limēnis: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Jauna spēle" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Ievads" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Opcijas" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Par" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Iziet" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Turpināt spēli" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "_Sākt spēli no jauna" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Beigt spēli" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Monster mashing spēle priekš GNOME. Iznicini monstrus pirms viņi iznīcinaja " "tevi, un parņemuši rūķu pasauli!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Autortiesības %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "ag06008" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Kļūda bija atrasta lasot failu \"%1\". Tas var nozimēt, kā Jūsu iepriekšejas " "spēles bija pazaudētas." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Ielādes kļūda" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Kļūda bija atrasta lasot failu \"%1\". Tas var nozimēt, kā Jūsu iepriekšejas " "spēles bija pazaudētas." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Glabāšanas kļūda" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Grūtība līmenis" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Visa logā" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Līmenis" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Kustībā" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Spēletaju skaits" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Stiept bluķi" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Izskats" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Taustiņš priekš stiepšanas aktivācijas" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Taustiņš priekš kustības uz leju" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Taustiņš priekš kustības pa kreisi" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Taustiņš priekš kustības pa kreisi un uz leju" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Taustiņš priekš kustības pa kreisi un uz augšu" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Taustiņš priekš kustības pa labi" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Taustiņš priekš kustības pa labi un uz leju" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Taustiņš priekš kustības pa labi un uz augšu" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Taustiņš priekš kustības uz augšu" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "1. spēletāja taustiņi" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "2. spēletāja taustiņi" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Opcijas" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Sākt spēli" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Sākt līmeni:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Izmantot _lielekrāna režīmu" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Viegli" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Grūti" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Vidēji" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Viens spēletājs" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Sākt" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Divi spēlētaji" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Mash monsters un glabj rūķus" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Izmantot lielekrāna režīmu" monster-masher-1.8.1/po/nb.po0000644000175000017500000002307711105645273013000 00000000000000# Norwegian translation of the gnome-games module (bokmål dialect). # Copyright © 1998-2002 Free Software Foundation, Inc. # Kjartan Maraas , 1998-2006. # msgid "" msgstr "" "Project-Id-Version: monster-masher 1.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-06-08 11:11+0200\n" "PO-Revision-Date: 2008-06-08 11:12+0200\n" "Last-Translator: Kjartan Maraas \n" "Language-Team: Norwegian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Nivå %1 tømt for monstre!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Og den siste helten forsvant..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Alle nivåer frigjort" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Går inn i nivå 1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Fatal feil" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Sjekk din installasjon eller rapporter problemet til distributøren hvis " "du installerte fra en pakke." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "I gamle dager, før mennesker kom inn i verden, fantes det gnomer i hopetall." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Gjennom århudrer med hardt arbeid, kun lettet av løftekrefter gitt dem av " "deres gud, gravde de mineganger og huler i fjellene." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Alltid på søken etter verdifulle steiner og verdifulle årer..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Men en klan gravde dypere enn de andre. Kun rikdommen vokste fortere enn " "grådigheten i denne klanen." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Opp fra det sorte karbonet reiste det seg en rar skapning!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "I månedsvis kjempet klanene mot monstrene. Kun en håndfull av sendebud som " "ble sendt ut for å advare de andre klanene overlevde." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Gnomenes verden var truet..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "" #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Poeng: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Nivå: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Nytt spill" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Innledning" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Brukervalg" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Om" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "A_vslutt" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Gjenoppta spillet" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Sta_rt nivå på nytt" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Avslutt spillet" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Opphavsrett %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Kjartan Maraas " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: ../src/persistent.cpp:167 msgid "Load error" msgstr "" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Feil under lagring" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Vanskelighetsgrad" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Fullskjerm" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Nivå" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Flytting" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Antall spillere" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Trekk blokk" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Utseende" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tast for å aktivere trekking av blokker" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tast for å flytte ned" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tast for å flytte til venstre" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tast for å flytte til venstre og ned" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tast for å flytte til venstre og opp" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tast for å flytte til høyre" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tast for å flytte til høyre og ned" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tast for å flytte til høyre og opp" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tast for å gå opp" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Taster for spiller 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Taster for spiller 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Brukervalg" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Start spill" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Start på _nivå:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Bruk _fullskjerm modus" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "L_ett" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Vanskelig" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Middels" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_En spillere" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Start" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_To spillere" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Knus monstrene og redd gnomene" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Bruk fullskjerm" monster-masher-1.8.1/po/ne.po0000644000175000017500000004124711105645273013002 00000000000000# translation of monster-masher.HEAD.ne.po to Nepali # translation of monster-masher.HEAD.po to Nepali # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Pawan Chitrakar , 2005. # Shiva Prasad Pokharel , 2005. # Ganesh Ghimire , 2005. # Kapil Timilsina , 2005. # Jaydeep Bhusal , 2005. # Bishnu Adhikari , 2005. # Mahesh subedi , 2006. # msgid "" msgstr "" "Project-Id-Version: monster-masher.HEAD.ne\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-02 03:42+0000\n" "PO-Revision-Date: 2006-06-18 15:17+0545\n" "Last-Translator: Mahesh subedi \n" "Language-Team: Nepali \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.10.2\n" "Plural-Forms: nplurals=2;plural=(n!=1)\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "तह %1 ले मोन्सटरहरूलाई सफाइ दिन्छ !" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "र अन्तिम नायक अदृश्य भयो..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "सबै तहहरू स्वतन्त्र भए !" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "%1 तहमा प्रविष्ट गर्दै..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "घातक त्रुटि" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1.तपाईँको स्थापनालाई जाँच गर्नुहोस् वा समस्यालाई वितरक समक्ष जानकारी गराउनुहोस्, यदि " "तपाईँ प्याकेजबाट स्थापना गर्नुभएको हो भने।" #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "पुराना दिनहरूमा, मानिसहरू संसारमा छिर्नु भन्दा पहिले, जिनोमहरू प्रचुर मात्रामा थिए।" #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "कडा परिश्रमको शताब्दिहरू द्वारा, तिनिहरूको भगवानबाट उत्थान शक्ति प्रदान गरेर थोरै मात्र " "सजिलोपना भयो। पहाडहरूमा तिनिहरूले गुफाहरू र लठ्ठिहरू खोजे।" #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "सधै अनमोल ढुङ्गाहरू र अनमोल गहनाहरू खोज्दै..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "तर एउटा चाँहि जातिले अरूले भन्दा गहिरो खन्छ। यसको मात्र संपत्ति भनेको यसको लोभ भन्दा " "छिटो उमार्नु थियो।" #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "वर्षौ बित्यो, जातिको मुखिया जिनोमको राजा बन्यो। हजारौं मानिस, स्वास्नी मानिस र " "बच्चाहरू एकदमै गहिरोमा थिए, बढी नाफा योग्य खनिजहरू भएकोमा पठाईए।" #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "त्यसपछि एक दिन एउटा ठूलो मात्राको कोईला खानि भेटियो। वा यस्तै कल्पना गरियो..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "कालो कार्वनबाट, एउटा अनौंठो सिर्जना उत्पत्ति भयो !" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "कामदारहरूको आश्चर्यको पहिलो क्षण सयौं अरू साइजहरू नशाबाट बाहिर फोरेर, हरेक कुराहरूलाई " "तोड्दै र तिनिहरूको बाटोमा भएका सबैलाई तोडेर, डरबाट पुन:स्थापित भयो" #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "महिनौ सम्म, जाति राक्षसहरूसँग लडे। मात्र केही हाते संवाहकहरू अरू जातिहरूलाई चेतावनी दिनका " "लागि पठाईए।" #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "जिनोमहरूको संसारलाई डराईयो..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "स्टिल भन्दा कडा कार्वनबाट काल राक्षसहरू द्वारा निर्मित, तिनिहरूमा यान्त्रिक मुर्खतापूर्ण; " "तर खतरनाक।" #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "कवची राक्षसहरू द्वारा जुन राम्रोसँग सुरक्षित थियो त्यो खाट-चट्टान मात्रले तिनिहरूलाई मार्न " "निकै गार्हो थियो।" #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "जिज्ञासु, नीच र कपटी द्वारा, जिनोम रगतबाट रातो जुन किलाहरू खसालिदियो।" #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "र नीलो अण्डा तहहरूबाट तिनीहरूको सङ्ख्या हजारौले गुणा गरियो" #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "जिनोमको बाँकी आशा मात्र नम्र उत्थापन कामदार थियो। उसले राक्षसहरूलाई पहाडी चट्टानको " "विरुद्वमा सङ्गठित गर्ने बाटो फेला पर्यो।" #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "त्यो आशा तपाईँ हो।" #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "तपाईँ तपाईँको बाटो बाट दृढतासँग पहाडहरूमा लड्नै पर्छ, राजाहरूका जातिका हरेक तहसँग " "दिनुहोस् र चट्टान आगन्तुकलाई नशा रोक्नका लागि बाटो सफा गर्नुहोस्।" #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "त्यसपछि मात्र जिनोमहरू बाँच्न सक्छन्..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "राक्षस मिश्रण: प्रतिमा लोड गर्न सक्दैन \"%1\".\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "रिसरेक्सन: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "प्राप्तांक: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "तह: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "नयाँ खेल" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "परिचय" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "प्राथमिकताहरू" #: ../src/main-window.cpp:243 msgid "_About" msgstr "बारेमा" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "अन्त्य गर्नुहोस्" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "खेल पुनारम्भ गर्नुहोस्" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "तह पुन: सुरु गर्नुहोस्" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "खेल समाप्त गर्नुहोस्" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "GNOME का लागि छिटो-कदम राक्षस मिश्रण गर्ने खेल। राक्षसहरूले तपाईँलाई घेर्नु र जिनोमको " "संसारलाई खतम पार्नु भन्दा पहिले राक्षसहरूलाई स्पलाट गर्नुहोस् !" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "राक्षस मिश्रण" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "प्रतिलिपि अधिकार %1 २००३ ओले लउरसेन" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "Kapil Timilsina Mahesh Subedi " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(रेजर.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "\"%1\" फाइल पढ्दा त्रुटि रहन गयो . यसको मतलव तपाईँले पार गर्नुभएका कुनै तहका अभिलेखहरू " "हराएका हुनसक्छन् ." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "त्रुटि लोड गर्नुहोस्" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "\"%1\" फाइल बचत गर्दा त्रुटि रहन गयो . यसको मतलब तपाईँले पार गर्नुभएका कुनै तहका " "अभिलेखहरू हरायएका हुनसक्छन्" #: ../src/persistent.cpp:242 msgid "Save error" msgstr "त्रुटि बचत गर्नुहोस्" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "जटिल" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "पूरापर्दा" #: ../src/ui.glade.h:3 msgid "Level" msgstr "तह" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "चल्दै" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "खेलाडीहरूको सङ्ख्या" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "रोकावट तान्नुहोस्" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "देखिएको" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "रोकावटहरूलाई सक्रिय पार्ने कुञ्जीले तान्दै" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "तल आउनका लागि कुञ्जी" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "बायाँ जानका लागि कुञ्जी" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "बायाँ र तल जानका लागि कुञ्जी" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "बायाँ र माथी जानका लागि कुञ्जी" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "दायाँ जानका लागि कुञ्जी" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "दायाँ र तल जानका लागि कुञ्जी" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "दायाँ र माथी जानका लागि कुञ्जी" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "माथी जानका लागि कुञ्जी" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "खेलाडी १ कुञ्जीहरू" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "खेलाडी २ कुञ्जीहरू" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "प्राथमिकताहरू" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "खेल सुरु गर्नुहोस्" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "तहमा सुरु गर्नुहोस्:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "पूरा पर्दा मोड प्रयोग गर्नुहोस्" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "सजिलो" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "कडा" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "मध्यम" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "एउटा खेलाडी" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "सुरु" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "दुई खेलाडी" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "राक्षसलाई मारेर जिनोमहरूलाई बचाउनुहोस्" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "प्रयोग गर्नका लागि कुञ्जी मान GDK नामको स्ट्रिङ हुनुपर्दछ (gdk/gdkkeynames.c मा पाउन " "सकिन्छ)।" #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "पूरा पर्दा प्रयोग गर्नुहोस्" monster-masher-1.8.1/po/nl.po0000644000175000017500000002726510547745537013032 00000000000000# Dutch translation of monster-masher # Copyright (C) 2004 The Free Software Foundation # This file is distributed under the same license as the monster-masher package. # Michiel Sikkes 2004. # Tino Meinen 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher cvs\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-08-20 13:42+0200\n" "PO-Revision-Date: 2004-07-15 23:40+0200\n" "Last-Translator: Tino Meinen \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Niveau %1 vrijgemaakt van monsters!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "En de laatste held verdween..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Alle niveaus zijn vrij!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Bezig met laden niveau %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Fatale fout" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Controleer uw installatie of rapporteer dit bij de distributeur als u " "een pakket heeft geïnstalleerd." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "In vroegere tijden, voordat de mens op de wereld kwam, waren de kabouters er " "in grote getalen." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Na eeuwen van hard werk, slechts een beetje makkelijker gemaakt door de " "krachten hun gegeven door hun god, groeven ze groeven en grotten in de " "bergen." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Altijd zoekend naar de waardevolle stenen en grondstoffen..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Maar één clan groef dieper dan de anderen. Alleen hun welvaart groeide " "sneller dan hun hebzucht." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "De jaren gingen voorbij. De leider van de clan werd de koning van de " "kabouters. Duizenden mannen, vrouwen en kinderen werden te werk gezet in de " "diepste, meest winstgevende mijnen." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Toen, op een dag, werd er een grote vooraad kolen gevonden. Dat was wat men " "dacht in ieder geval." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Er rees een raar wezen uit de zwarte kool!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "De eerste momenten van verassing bij de werkers werden vervangen door angst " "toen honderden andere vormen uit de kolenlaag rezen, alles en iedereen op " "hun pad vernietegend." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "De clan vocht maanden lang met de monsters. Slechts een handje vol van de " "boodschappers die uitgezonden waren de andere clans te waarchuwen " "overleefden." # gnome wel of niet vertalen? #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "De wereld der kabouters werd bedreigd..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Door de zwarte monsters gemaakt van kool, harder dan staal, mechanisch in " "hun domheid; maar dodelijk." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Door de gepantserde monsters, zo goed verdedigd dat alleen het bedsteen hard " "genoeg was om ze te verslaan." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Door de sluipers, stiekem, en verradelijk, rood van het kabouterbloed dat " "hun stekels hadden doen vloeien." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "En door de blauwe egg-grondstof lagen, die zich per duizend " "vermenigvuldigden." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "De enige overgebleven hoop van de kabouters was een lage arbeider. Hij had " "een manier gevonden om de monsters fijn te pletten tegen de bergrotsen." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Die hoop ben jij." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Jij moet je weg diep in de bergen vechten, langs elk niveau van de clan van " "de koningen en de weg vrijmaken voor steen oproepers om de grondstoflaag te " "blokkeren." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Alleen dan zullen de kabouters het overleven..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: kan het pictogram \"%1\" niet laden.\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Herkansingen: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Score: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Niveau: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Nieuw spel" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introductie" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Voorkeuren" #: ../src/main-window.cpp:243 msgid "_About" msgstr "In_fo" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "A_fsluiten" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Verder met het spel" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Niveau _herstarten" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "Spel _beëindigen" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Snel-opgezet monster fijnplet spel voor GNOME. Plet de monsters voordat ze " "over je heen rollen en de wereld van de kabouters overnemen!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Michiel Sikkes " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(herk.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Er ging iets fout bij het inladen van het bestand \"%1\". Dit kan betekenen " "dat de data van welke niveaus u voorbij bent verloren is gegaan." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Fout bij het laden" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Er ging iets fout bij het opslaan van het bestand \"%1\". Dit kan betekenen " "dat de data van welke niveaus u voorbij bent verloren is gegaan." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Fout bij het opslaan" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Moeilijkheidsgraad" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Volledig scherm" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Niveau" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Bewegen" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Aantal spelers" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Trek blokje" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Uiterlijk" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Toets om het trekken van blokken te activeren" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Toets om naar beneden te bewegen" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Toets om naar links te bewegen" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Toets om naar linksonder te bewegen" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Toets om naar linksboven te bewegen" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Toets om naar rechts te bewegen" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Toets om naar rechtsonder te bewegen" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Toets om naar rechtsboven te bewegen" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Toets om naar boven te bewegen" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Toetsen van speler 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Toetsen van speler 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Voorkeuren" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Start spel" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Start bij _niveau:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Gebruik _volledig scherm" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Makkelijk" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "Moe_ilijk" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Gemiddeld" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Eén speler" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Start" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Twee spelers" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Plet monsters en red de dwergen" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "De tekst zou de GDK naam van de key inhoud om te gebruiken moeten zijn (kan " "gevonden worden in gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Gebruik volledig scherm" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/oc.po0000644000175000017500000002103511105645273012772 00000000000000# Translation of oc.po to Occitan # Occitan translation of monster-masher. # Copyright (C) 2005-2006, 2007 Free Software Foundation, Inc. # This file is distributed under the same license as the monster-masher package. # # Yannig Marchegay (Kokoyaya) , 2006-2008 msgid "" msgstr "" "Project-Id-Version: oc\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-06-09 15:21+0200\n" "PO-Revision-Date: 2007-12-30 21:10+0100\n" "Last-Translator: Yannig Marchegay (Kokoyaya) \n" "Language-Team: Occitan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "" #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Dintrada dins lo nivèl %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Error fatala" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "" #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "" #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Nivèl : %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "Jòc _novèl" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introduccion" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Preferéncias" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_A prepaus" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Sortir" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Acabar lo jòc" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Yannig Marchegay (Kokoyaya) " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: ../src/persistent.cpp:167 msgid "Load error" msgstr "" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: ../src/persistent.cpp:242 msgid "Save error" msgstr "" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Dificultat" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Ecran complet" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Nivèl" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Desplaçament" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Nombre de jogaires" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Butar de blòts" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Aparéncia" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Clau per anar enbàs" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Clau per anar a l'esquèrra" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Clau per anar a la drecha" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Preferéncias" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Començar al _nivèl :" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Aisit" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Malaisit" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Un jogaire" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Dos jogaires" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "" monster-masher-1.8.1/po/pa.po0000644000175000017500000002110210547745537013001 00000000000000# translation of pa.po to Punjabi # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Amanpreet Singh Alam , 2004. # msgid "" msgstr "" "Project-Id-Version: pa\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-10-05 04:30+0200\n" "PO-Revision-Date: 2004-10-05 13:21+0530\n" "Last-Translator: Amanpreet Singh Alam \n" "Language-Team: Punjabi \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.3.1\n" "Plural-Forms: Plural-Forms: Plural-Forms: nplurals=2; plural=(n != 1);\n\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "" #: src/game.cpp:151 msgid "All levels liberated!" msgstr "" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "" #: src/helpers.cpp:39 msgid "Fatal error" msgstr "ਘਾਤਕ ਗਲਤੀ" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" #: src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "" #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "" #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: src/intro.cpp:141 msgid "That hope is you." msgstr "ਉਹ ਉਮੀਦ ਤੁਸੀਂ ਹੋ।" #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "ਅੰਕ: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "ਪੱਧਰ: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_ਨਵੀ ਖੇਡ" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_ਜਾਣ-ਪਛਾਣ" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_ਮੇਰੀ ਪਸੰਦ" #: src/main-window.cpp:243 msgid "_About" msgstr "_ਇਸ ਬਾਰੇ" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_ਬਾਹਰ" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "ਖੇਡ ਮੁੜ-ਸ਼ੁਰੂ" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "ਮੁੜ-ਸ਼ੁਰੂਆਤ ਪੱਧਰ" #: src/main-window.cpp:264 msgid "_End game" msgstr "ਖੇਡ ਸਮਾਪਤ" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "" "ਅਮਨਪ੍ਰੀਤ ਸਿੰਘ ਆਲਮ \n" "ਪੰਜਾਬ ਲੀਨਕਸ ਤਕਨਾਲੋਜੀ ਮੋਗਾ" #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:167 msgid "Load error" msgstr "ਲੋਡ ਗਲਤੀ" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:242 msgid "Save error" msgstr "ਸੰਭਾਲਣ ਗਲਤੀ" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "ਮੁਸ਼ਕਿਲ" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "ਪੂਰੇ ਪਰਦੇ ਤੇ" #: src/ui.glade.h:3 msgid "Level" msgstr "ਪੱਧਰ" #: src/ui.glade.h:4 msgid "Moving" msgstr "" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "" #: src/ui.glade.h:6 msgid "Pull block" msgstr "" #: src/ui.glade.h:7 msgid "Appearance" msgstr "ਦਿੱਖ" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "" #: src/ui.glade.h:22 msgid "Preferences" msgstr "ਮੇਰੀ ਪਸੰਦ" #: src/ui.glade.h:27 msgid "Start Game" msgstr "ਖੇਡ ਸ਼ੁਰੂ" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "ਪੱਧਰ ਤੇ ਸ਼ੁਰੂ ਕਰੋ:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "" #: src/ui.glade.h:30 msgid "_Easy" msgstr "ਆਸਾਨ" #: src/ui.glade.h:31 msgid "_Hard" msgstr "ਸਖਤ" #: src/ui.glade.h:32 msgid "_Medium" msgstr "ਮੱਧਮ" #: src/ui.glade.h:33 msgid "_One player" msgstr "ਇੱਕ ਖਿਡਾਰੀ" #: src/ui.glade.h:34 msgid "_Start" msgstr "ਸ਼ੁਰੂ" #: src/ui.glade.h:35 msgid "_Two players" msgstr "ਦੋ ਖਿਡਾਰੀ" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "ਮੈਸ਼ ਮੋਨਸਟੀਰ ਅਤੇ ਗਨੋਮ ਸੰਭਾਲੋ" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "ਪੂਰਾ ਪਰਦਾ ਵਰਤੋਂ" monster-masher-1.8.1/po/pl.po0000644000175000017500000002676710547745537013042 00000000000000# Copyright (C) 2001-2004 Free Software Foundation, Inc. # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- # Aktualną wersję tego pliku możesz odnaleźć w repozytorium cvs.gnome.pl # (:pserver:anonymous@cvs.gnome.pl:/gnomepl, puste hasło) # Jeśli masz jakiekolwiek uwagi odnoszące się do tłumaczenia lub chcesz # pomóc w jego rozwijaniu i pielęgnowaniu, napisz do nas na adres: # translators@gnome.pl # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-08-19 10:19+0200\n" "PO-Revision-Date: 2004-01-18 22:41+0100\n" "Last-Translator: GNOME PL Team \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Poziom %1 został wyczyszczony z monstrów!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "I ostatni bohater zniknął..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "Wszystkie poziomy zostały uwolnione!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Przechodzenie na poziom %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Poważny błąd" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Sprawdź swoją instalację, lub zgłoś problem dystrybutorowi jeśli program " "został zainstalowany z pakietu." #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "W dawnych czasach, zanim ludzie pojawili się na świecie, gnomów było dużo." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Dzięki wiekom ciężkiej pracy i odrobinie uwolnionej energii lewitacji " "udostępnionej im przez swoich bogów, przewiercili szyby i jaskinie w górach." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Zawsze szukając kamieni szlachetnych i wartościowych złóż..." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Lecz jeden klan kopał głębiej niż inne. Tylko jego bogactwo rosło szybciej " "niż jego chciwość." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Lata mijały. Szef klanu został królem gnomów. Tysiące mężczyzn, kobiet i " "dzieci zostało wysłanych do pracy w najgłębszych, dających największe zyski " "kopalniach." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Pewnego dnia odkryto bogate złoże węgla. Lub tak też myślano..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Z czarnego węgla wyłoniło się dziwne stworzenie!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Pierwsze chwile zaskoczenia wśród kopaczy zostały zastąpione przez horror " "setek innych kształtów rozpruwających żyły, niszczących każdą rzecz i ciało " "napotkane na swojej drodze." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Przez miesiące, klan walczył z monstrami. Tylko garstce posłańców kazano " "ostrzec inne klany, które przetrwały." #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Istnienie świata gnomów było zagrożone..." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Z powodu czarnych monstrów złożonych z węgla twardszego niż stal, " "mechanicznych w swojej głupocie, lecz śmiertelnych." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Przez opancerzone monstra tak dobrze chronione, że tylko skała macierzysta " "była wystarczająco twarda aby go przebić." #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Przez szukaczy, cichych i podstępnych, czerwonych od krwi gnomów, którymi " "ich włócznie zostały zbroczone." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "Oraz przez warstwy niebieskich jak, które zwielokrotniają ich liczby do " "tysięcy." #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Jedyną pozostałą nadzieją gnomów jest skromny lewitujący kopacz. Znalazł on " "sposób na pokonanie monstrów za pomocą górskich kamieni." #: src/intro.cpp:141 msgid "That hope is you." msgstr "Tą nadzieją jesteś ty." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Musisz toczyć walkę w głębi gór, przejść każdy poziom klanu królów oraz " "wyczyścić drogę dla przywoływaczy kamieni aby zablokować korytarze." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Tylko wówczas gnomy mogą przeżyć..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: nie można wczytać ikony \"%s\".\n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Wskrzeszenia: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Punktacja: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Poziom: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_Nowa gra" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Wprowadzenie" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_Preferencje" #: src/main-window.cpp:243 msgid "_About" msgstr "_O programie" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Wyjdź" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Wznów grę" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "_Uruchom poziom ponownie" #: src/main-window.cpp:264 msgid "_End game" msgstr "_Zakończ grę" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "GNOME PL Team " #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Szybka gra GNOME w niszczenie monstrów. Zniszcz monstra zanim one zrobią to " "samo z tobą i zajmą świat gnomów!" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "Copyright (c) 2003 Ole Laursen" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(wskrz.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Podczas odczytu pliku \"%1\" wystąpił błąd. To może oznaczać, że zapisane " "poziomy, które udało się ukończyć zostały utracone." #: src/persistent.cpp:167 msgid "Load error" msgstr "Błąd podczas wczytywania" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Wystąpił błąd podczas zapisu pliku \"%1\". To może oznaczać, że nie zostały " "zapisane ukończone poziomy." #: src/persistent.cpp:242 msgid "Save error" msgstr "Błąd podczas zapisu" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "Trudność" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "Pełny ekran" #: src/ui.glade.h:3 msgid "Level" msgstr "Poziom" #: src/ui.glade.h:4 msgid "Moving" msgstr "Poruszanie" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "Liczba graczy" #: src/ui.glade.h:6 msgid "Pull block" msgstr "Przeciąganie bloków" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Wygląd" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Klawisz aktywujący ciągnięcie bloków" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Klawisz do poruszania w dół" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Klawisz do poruszania w lewo" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Klawisz do poruszania w lewo i w dół" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Klawisz do poruszania w lewo i w górę" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Klawisz do poruszania w prawo" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Klawisz do poruszania w prawo i w dół" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Klawisz do poruszania w prawo i w górę" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Klawisz do poruszania w górę" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Klawisze 1-go gracza" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Klawisze 2-go gracza" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Preferencje" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Rozpoczęcie gry" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "Początkowy p_oziom:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Try_b pełnoekranowy" #: src/ui.glade.h:30 msgid "_Easy" msgstr "Ł_atwy" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_Trudny" #: src/ui.glade.h:32 msgid "_Medium" msgstr "Ś_redni" #: src/ui.glade.h:33 msgid "_One player" msgstr "J_eden gracz" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Rozpocznij" #: src/ui.glade.h:35 msgid "_Two players" msgstr "_Dwóch graczy" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Zniszcz potwory i uratuj gnomy" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Napis powinien być nazwą GDK wartości klucza, który ma być używany (można go " "znaleźć w pliku gdk/gdkkeynames.c)." #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Tryb pełnoekranowy" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/pt.po0000644000175000017500000002730011105645273013015 00000000000000# monster-masher's Portuguese translation. # Copyright © 2003, 2004, 2008 monster-masher # This file is distributed under the same license as the monster-masher package. # Duarte Loreto , 2003, 2004, 2008. # msgid "" msgstr "" "Project-Id-Version: 2.24\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-21 15:00+0100\n" "PO-Revision-Date: 2008-09-21 15:10+0000\n" "Last-Translator: Duarte Loreto \n" "Language-Team: Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Nível %1 limpo de monstros!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "E desapareceu o último herói..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Todos os níveis livres!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "A entrar no nível %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Erro fatal" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Verifique a sua instalação ou relate o problema à sua distribuição, caso " "tenha instalado de um pacote." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Nos primórdios, antes do homem caminhar pelo mundo, abundavam os gnomos." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Através de séculos de árduo trabalho, apenas ligeiramente suavizado pelos " "poderes levitacionais disponibilizados pelo seu deus, eles escavaram poços e " "grutas nas montanhas." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Sempre à procura de pedras preciosas e minerais valiosos..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Mas um clã escavou a uma maior profundidade do que os restantes. Apenas as " "suas riquezas cresciam mais depressa do que a sua ganância." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Os anos foram passando. O chefe do clã tornou-se no rei dos gnomos. Milhares " "de homens, mulheres e crianças foram enviados para trabalhar nas minas mais " "profundas e lucrativas." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Um dia, foi encontrado um grande depósito de carvão. Ou assim se pensou..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Do carbono escuro, saiu uma estranha criatura!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Os primeiros momentos de surpresa entre os trabalhadores foram substituídos " "pelo horror à medida que centenas de outras formas saíram do veio, esmagando " "tudo e todos à sua passagem." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Durante meses, o clã lutou contra os monstros. Apenas um punhado de " "mensageiros enviados para avisar os outros clãs sobreviveu." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "O mundo dos gnomos foi ameaçado..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Pelos monstros feitos de carbono mais resistente que o aço, mecânicos na sua " "estupidês; mas mortíferos." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Pelos monstros blindados tão bem protegidos que apenas a crosta rochosa era " "rija o suficiente para os matar." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Pelos farejadores, evasivos e cheios de artimanhas, vermelhos do sangue de " "gnomos que os seus espigões tinham derramado." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "E pelos seres azuis que põem ovos, multiplicando os seus números aos " "milhares." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "A última esperança dos gnomos residia num humilde trabalhador levitacional. " "Ele tinha encontrado uma forma de esmagar os monstros contra as rochas da " "montanha." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Essa esperança reside em si." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Terá de batalhar o seu caminho até às profundezas das montanhas, através de " "cada nível do clã dos reis e limpar o caminho para que os invocadores de " "rochas bloqueiem o veio." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Apenas então poderão os gnomos sobreviver..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: incapaz de ler o ícone \"%1\".\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Ressuscitações: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Pontuação: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Nível: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Novo jogo" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introdução" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Preferências" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Sobre" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Sair" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Retomar o jogo" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Re_iniciar o nível" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Terminar o jogo" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Jogo para o GNOME onde, a um elevado rítmo, teremos de esmagar monstros. " "Esmage os monstros antes que eles rolem sobre si e dominem o mundo dos " "gnomos!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Duarte Loreto " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(ressus.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Ocorreu um erro ao ler o ficheiro \"%1\". Isto poderá significar que a " "gravação dos níveis que já terminou poderá estar perdida." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Erro de leitura" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Ocorreu um erro ao gravar o ficheiro \"%1\". Isto poderá significar que a " "gravação dos níveis que já terminou poderá estar perdida." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Erro de gravação" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Dificuldade" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Ecrã Completo" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Nível" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Movimentos" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Número de Jogadores" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Puxar um bloco" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Aparência" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tecla para puxar blocos" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tecla para mover abaixo" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tecla para mover para a esquerda" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tecla para mover para a esquerda e abaixo" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tecla para mover para a esquerda e acima" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tecla para mover para a direita" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tecla para mover para a direita e abaixo" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tecla para mover para a direita e acima" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tecla para mover acima" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Teclas do jogador 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Teclas do jogador 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Preferências" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Iniciar o Jogo" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Iniciar no níve_l:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Utilizar o modo de _ecrã completo" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Fácil" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Difícil" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Médio" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Um jogador" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Iniciar" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Dois jogadores" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Esmague monstros e salve os gnomos" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "A expressão deveria ser o nome GDK do valor da tecla a utilizar (pode ser " "encontrado em gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Utilizar o ecrã completo" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/pt_BR.po0000644000175000017500000002750410667464260013415 00000000000000# Brazilian Portuguese translation of monster-masher. # Copyright (C) 2004 Free Software Foundation, Inc. # This file is distributed under the same license as the monster-masher package. # Franz Gustav Niederheitmann , 2004. # Raphael Higino , 2004. # Andre Noel , 2007. # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-03-07 01:37-0300\n" "PO-Revision-Date: 2007-03-07 01:40-0300\n" "Last-Translator: Andre Noel \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Nível %1 sem monstros!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "E o último herói desapareceu..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Todos os níveis liberados!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Entrando no nível %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Erro fatal" #: ../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Verifique sua instalação ou relate seu problema ao seu distribuidor, se " "você tiver instalado a partir de um pacote." #: ../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Antigamente, antes do homem viver na Terra, os gnomos viviam em abundância." #: ../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Durante séculos de trabalho duro, ajudado apenas um pouco pelos poderes de " "levitação dados a eles por seus deuses, eles perfuraram minas e cavernas nas " "montanhas." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Sempre à procura de pedras preciosas e minérios valiosos..." #: ../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Mas um clã cavou mais fundo que os outros. Somente suas riquezas foram " "crescendo mais que suas ambições." #: ../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Os anos se passaram. O chefe do clã se tornou rei dos gnomos. Milhares de " "homens, mulheres e crianças foram mandadas para as mais escuras e profundas " "minas para trabalhar." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Então um dia, um grande depósito de carvão mineral foi encontrado. Ou pelo " "menos foi isso que eles pensaram..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Do carvão preto, uma criatura surgiu!" #: ../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Os primeiros momentos de surpresa dos trabalhadores foram substituídos pelo " "horror de centenas de outros seres surgidos dos veios, destruindo tudo e " "todos que estivessem em seu caminho." #: ../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Durante meses o clã lutou contra os monstros. Apenas alguns mensageiros que " "foram enviados para fora para alertar os outros clãs sobreviveram." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "O mundo dos gnomos estava ameaçado..." #: ../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Pelos monstros negros feitos de carbono mais duro que aço, mecânicos em sua " "estupidez; mas mortalmente." #: ../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Pelos monstros em suas couraças, tão bem protegidos que somente as jazidas " "de pedra foram duras o suficiente para arruiná-los." #: ../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Pelos que procuraram, trapaceiro e ordinário, sangue vermelho dos gnomos que " "as estacas derramaram." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "E pelos aves de ovo azul que se multiplicaram aos milhares." #: ../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "A única esperança que restava aos gnomos era um humilde trabalhador que " "levitava. Ele encontrou uma maneira de esmagar os montros contra as rochas " "da montanha." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "A esperança é você." #: ../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Você precisa lutar pelo caminho escuro do interior das montanhas, passar por " "todos os níveis do clã dos reis e limpar o caminho para que possam bloquear " "o veio." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Somente assim os gnomos poderão sobreviver..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Esmagador de Monstros: não foi possível abrir o ícone \"%1\".\n" #: ../src/main-window.cpp:158 ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Resurreições: %1" #: ../src/main-window.cpp:164 ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Pontos: %1" #: ../src/main-window.cpp:174 ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Nível %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Novo jogo" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introdução" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Preferências" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Sobre" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Sair" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Retomar o jogo" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Re_iniciar o nível" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Acabar o jogo" #: ../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Jogo de amassar monstros para o GNOME. Acabe com os monstros antes que " "passem por você e dominem o mundo dos gnomos!" #: ../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Esmagador de Monstros" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "Franz Gustav Niederheitmann \n" "Raphael Higino \n" "Andre Noel " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(ressur.: %1)" #: ../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Ocorreu um erro ao ler o arquivo \"%1\". Isso pode significar que os " "registros dos níveis que você passou foram perdidos." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Erro ao carregar" #: ../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Ocorreu um erro ao salvar o arquivo \"%1\". Isso pode significar que os " "registros dos níveis que você passou foram perdidos." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Erro de gravação" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Dificuldade" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Tela Cheia" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Nível" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Movimento" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Número de Jogadores" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Puxar bloco" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Aparência" #: ../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tecla para ativar o puxo de blocos" #: ../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tecla para mover para baixo" #: ../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tecla para mover para esquerda" #: ../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tecla para mover para esquerda e para baixo" #: ../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tecla para mover para esquerda e para cima" #: ../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tecla para mover para direita" #: ../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tecla para mover para direita e para baixo" #: ../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tecla para mover para direita e para cima" #: ../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tecla para mover para cima" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Teclas do jogador 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Teclas do jogador 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Preferências" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Iniciar Jogo" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Começar no _nível:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Usar modo de _tela cheia" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Fácil" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Difícil" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Médio" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_Um jogador" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Começar" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Dois jogadores" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Amasse os monstros e salve os gnomos" #: ../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "A string deve ser o nome GDK do valor da tecla para ser usada (pode ser " "encontrado em gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Usar tela cheia" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/rw.po0000644000175000017500000003130110547745537013033 00000000000000# translation of monster-masher to Kinyarwanda. # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the monster-masher package. # Steve Murphy , 2005 # Steve performed initial rough translation from compendium built from translations provided by the following translators: # Philibert Ndandali , 2005. # Viateur MUGENZI , 2005. # Noëlla Mupole , 2005. # Carole Karema , 2005. # JEAN BAPTISTE NGENDAHAYO , 2005. # Augustin KIBERWA , 2005. # Donatien NSENGIYUMVA , 2005.. # msgid "" msgstr "" "Project-Id-Version: monster-masher HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-04-01 20:51-0700\n" "PO-Revision-Date: 2005-03-31 20:55-0700\n" "Last-Translator: Steve Murphy \n" "Language-Team: Kinyarwanda \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "ULL NAME \n" #: src/game.cpp:108 #, fuzzy msgid "Level %1 cleared for monsters!" msgstr "kugirango" #: src/game.cpp:140 #, fuzzy msgid "And the last hero disappeared..." msgstr "i Iheruka" #: src/game.cpp:151 #, fuzzy msgid "All levels liberated!" msgstr "Intera" #: src/game.cpp:383 #, fuzzy msgid "Entering level %1..." msgstr "urwego" #: src/helpers.cpp:39 #, fuzzy msgid "Fatal error" msgstr "Ikosa" #: src/helpers.cpp:52 #, fuzzy msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1.Project- Id- Version: basctl\n" "POT- Creation- Date: 2003- 12- 07 17: 13+ 02\n" "PO- Revision- Date: 2004- 11- 04 10: 13- 0700\n" "Last- Translator: Language- Team:< en@ li. org> MIME- Version: 1. 0\n" "Content- Type: text/ plain; charset= UTF- 8\n" "Content- Transfer- Encoding: 8bit\n" "X- Generator: KBabel 1. 0\n" "." #: src/intro.cpp:79 #, fuzzy msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "i ki/ bishaje Iminsi Mbere i i" #: src/intro.cpp:82 #, fuzzy msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "Bya Ikomeye ku i Kuri ku Inyuma Na in i" #: src/intro.cpp:88 #, fuzzy msgid "Always seeking the precious stones and valuable ore..." msgstr "i Na" #: src/intro.cpp:91 #, fuzzy msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "i Ibindi" #: src/intro.cpp:95 #, fuzzy msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "IMYAKA ku Bya i i Bya i Bya Na Yoherejwe: Kuri Akazi in i" #: src/intro.cpp:101 #, fuzzy msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "UMUNSI a Binini Bya Byabonetse" #: src/intro.cpp:104 #, fuzzy msgid "From the black carbon, a strange creature rose!" msgstr "i umukara a" #: src/intro.cpp:107 #, fuzzy msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Itangira Bya Ikitateguwe i Na: Nka Bya Ikindi Imisusire- shusho Inyuma Bya i " "Na ku" #: src/intro.cpp:113 #, fuzzy msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "Amezi i i a Bya Yoherejwe: Inyuma Kuri i Ikindi" #: src/intro.cpp:118 #, fuzzy msgid "The world of the gnomes was threatened..." msgstr "Bya i" #: src/intro.cpp:121 #, fuzzy msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "i umukara Bya in" #: src/intro.cpp:125 #, fuzzy msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "i Birinzwe i Ikomeye Kuri" #: src/intro.cpp:129 #, fuzzy msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "i Na Umutuku Bivuye i" #: src/intro.cpp:133 #, fuzzy msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "ku i Ubururu Umubare ku" #: src/intro.cpp:136 #, fuzzy msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "Bya i a Byabonetse a Kuri i i" #: src/intro.cpp:141 #, fuzzy msgid "That hope is you." msgstr "ni" #: src/intro.cpp:143 #, fuzzy msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Njyakuzimu i Bya i Intera Bya i Bya i Na Gusiba i kugirango i Kuri Funga i" #: src/intro.cpp:149 #, fuzzy msgid "Only then can the gnomes survive..." msgstr "Hanyuma i" #: src/main-window.cpp:72 #, fuzzy msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Ibirimo i Agashushondanga" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "" # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.WriterObject.Table.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.WriterObject.Frame.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.WriterObject.Graphic.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.OfficeObject.Calc.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.OfficeObject.Draw.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.OfficeObject.Chart.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.OfficeObject.Image.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.OfficeObject.Formula.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.OfficeObject.Impress.Settings.Level.text # #-#-#-#-# officecfg.pot (PACKAGE VERSION) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Insert.Caption.OfficeObject.OLEMisc.Settings.Level.text #: src/main-window.cpp:174 src/ui.glade.h:18 #, fuzzy, no-c-format msgid "Level: %1" msgstr "urwego" #: src/main-window.cpp:234 msgid "_New game" msgstr "" #: src/main-window.cpp:237 #, fuzzy msgid "_Introduction" msgstr "Intangiriro" #: src/main-window.cpp:240 #, fuzzy msgid "_Preferences" msgstr "Ibyahiswemo" #: src/main-window.cpp:243 #, fuzzy msgid "_About" msgstr "Bigyanye" #: src/main-window.cpp:246 #, fuzzy msgid "_Quit" msgstr "Kuvamo" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "" #: src/main-window.cpp:261 #, fuzzy msgid "Re_start level" msgstr "urwego" #: src/main-window.cpp:264 #, fuzzy msgid "_End game" msgstr "Impera" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 #, fuzzy msgid "translator-credits" msgstr "Umusemuzi" #: src/main-window.cpp:411 #, fuzzy msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "kugirango i Mbere Kuzinga KURI Na KURI i Bya i" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "" #: src/main-window.cpp:415 #, fuzzy msgid "Copyright (c) 2003 Ole Laursen" msgstr "C" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "" #: src/persistent.cpp:160 #, fuzzy msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "Ikosa i IDOSIYE Gicurasi Impuzandengo- i Bya Intera" #: src/persistent.cpp:167 #, fuzzy msgid "Load error" msgstr "Ikosa" #: src/persistent.cpp:235 #, fuzzy msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "Ikosa Mu kubika i IDOSIYE Gicurasi Impuzandengo- i Bya Intera" #: src/persistent.cpp:242 #, fuzzy msgid "Save error" msgstr "Bika ikosa" #: src/ui.glade.h:1 #, fuzzy msgid "Difficulty" msgstr "Fullscreen" msgstr "Level" msgstr "Moving" msgstr "Number of Players" msgstr "Pull block" msgstr ", 2006, 2007. # msgid "" msgstr "" "Project-Id-Version: monster-masher HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-11-08 04:54+0100\n" "PO-Revision-Date: 2007-01-13 12:04+0100\n" "Last-Translator: Matej Urbančič \n" "Language-Team: Slovenian GNOME Translation Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" "X-Poedit-Language: Slovenian\n" "X-Poedit-Country: SLOVENIA\n" "X-Poedit-SourceCharset: utf-8\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "V %1 rovu so zmečkane vse pošasti!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "In zadnji junak je izginil v pozabo ..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Osvobojeni so vsi rudniški rovi!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Vstopam v rov %1 ..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Usodna napaka" #: ../src/helpers.cpp:52 msgid "%1. Check your installation or report the problem to the distributor if you installed from a package." msgstr "%1. Preverite nastavitev ali pošljite poročilo o težavi." #: ../src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "Pred davnimi časi, davno preden je človek stopil na Zemljo, je bilo Gnomov veliko." #: ../src/intro.cpp:82 msgid "Through centuries of hard labour, only slightly eased by the levitational powers provided to them by their god, they bored out shafts and caves in the mountains." msgstr "Kljub nadnaravni moči lebdenja, ki jim jo je podaril njihov Bog, so šele po stoletjih trdega dela prevrtali jaške in rove v mogočnih gorovjih." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "V neprestanem iskanju žlahtnega kamenja in bogatih rud ..." #: ../src/intro.cpp:91 msgid "But one clan dug deeper than the others. Only its wealth was growing quicker than its greed." msgstr "Vendar pa je ena rudarska družina kopala globlje. Samo njihovo bogastvo je zameglilo njihov pohlep." #: ../src/intro.cpp:95 msgid "The years went by. The chief of the clan became the king of the gnomes. Thousands of men, women and children were sent to work in the deepest, most profitable mines." msgstr "V nekaj letih je poglavar te družine postal kralj vseh Gnomov. Tisočeri Gnomi, mladi in stari, zdravi in bolni, so bili prisiljeni v delo na najglobljih in najbogatejših delih rudnikov. " #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Nekega dne so rudarji naleteli na ogromno žilo premoga. No, vsaj tako so verjeli ..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Iz črnega premoga je vstalo grozno bitje!" #: ../src/intro.cpp:107 msgid "The first moments of surprise among the workers were replaced with horror as hundreds of other shapes broke out of the vein, crushing everything and everybody on their way." msgstr "Prvih nekaj trenutkov presenečenja je prekinila groza, ko je na stotine stvorov pridrvelo na plan in uničilo vse, kar jim je prišlo na pot." #: ../src/intro.cpp:113 msgid "For months, the clan fought the monsters. Only a handful of messengers sent out to warn the other clans survived." msgstr "Več mesecev so se Gnomi borili s pošastmi. Le redkim je uspelo priti na površje in opozoriti ostale." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Svetu Gnomov sedaj grozi velika nevarnost ..." #: ../src/intro.cpp:121 msgid "By the black monsters made of carbon harder than steel, mechanical in their stupidity; but deadly." msgstr "Nevarnost črnih pošasti s telesi odpornejšimi od jekla, nepredstavljive brezbrižnosti in sla po ubujanju." #: ../src/intro.cpp:125 msgid "By the armoured monsters so well-protected that only the bed-rock was hard enough to slay them." msgstr "Nevarnost divjih pošasti, s tako zaščitenimi telesi, da samo gola skala razbije njihov oklep." #: ../src/intro.cpp:129 msgid "By the seekers, sneaky and tricky, red from the gnome blood that their spikes had spilled." msgstr "Nevarnost pretkanih iskalcev z bodicami ostrejšimi kot britve, prepojenih s krvjo Gnomov." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Nevarnost modrih jajčec, s katerimi se množijo in množijo in množijo ..." #: ../src/intro.cpp:136 msgid "The only remaining hope of the gnomes was a humble levitation worker. He had found a way to mash the monsters against the mountain rocks." msgstr "Edino upanje, ki je ostalo Gnomom je mali rudar, ki je odkril način, kako z mečkanjem teles ob stenah jam, ustaviti pošasti." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Ta mali rudar in upanje si ti." #: ../src/intro.cpp:143 msgid "You must battle your way deep into the mountains, past each of the levels of the clan of the kings and clear the way for the rock summoners to block the vein." msgstr "Prebiti se moraš globoko v notranjost jam, mimo vseh nevarnosti, ki pretijo v temi in pomagati rudarjem, da spet zaprejo prehod, ki ga nikoli ne bi smeli odpreti." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "To je edina možnost, da Gnomi preživijo ..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Mečkalec Pošasti: Ni mogoče naložiti ikone \"%1\".\n" #: ../src/main-window.cpp:158 #: ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Karma: %1" #: ../src/main-window.cpp:164 #: ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Rezultat: %1" #: ../src/main-window.cpp:174 #: ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Rov: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Nova igra" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Uvod" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Lastnosti" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_O Programu" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Zaključi" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Vrni se v igro" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Ponovno začni _stopnjo" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "_Zaključi igro" #: ../src/main-window.cpp:407 msgid "Fast-paced monster mashing game for GNOME. Splat the monsters before they roll over you and take over the world of the gnomes!" msgstr "Hitra igra mečkanja pošasti za GNOME okolje. Zmečkaj pošasti preden te zmečkajo tebe in prevzamejo vse dežele Gnomov." #: ../src/main-window.cpp:412 #: ../src/main.cpp:55 #: ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Mečkalec Pošasti" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Avtorske pravice %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "Matej Urbančič " #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(karma.: %1)" #: ../src/persistent.cpp:160 msgid "An error occurred while reading the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "Prišlo je do napake med branjem datoteke \"%1\". Možno je, da so izgubljeni vsi zapisi stopenj, ki so že prehojene." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Napaka nalaganja" #: ../src/persistent.cpp:235 msgid "An error occurred while saving the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "Prišlo je do napake med shranjevanjem datoteke \"%1\". Možno je, da so izgubljeni vsi zapisi stopenj, ki so že prehojene." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Napaka shranjevanja" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Zahtevnost" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Cel zaslon" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Stopnja" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Gibanje" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Število igralcev" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Poteg blokov" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Videz" #: ../src/ui.glade.h:8 #: ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tipka za vlečenje blokov" #: ../src/ui.glade.h:9 #: ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tipka za gibanje navzdol" #: ../src/ui.glade.h:10 #: ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tipka za gibanje na levo" #: ../src/ui.glade.h:11 #: ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tipka za gibanje levo in navzdol" #: ../src/ui.glade.h:12 #: ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tipka za gibanje levo in navzgor" #: ../src/ui.glade.h:13 #: ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tipka za gibanje desno" #: ../src/ui.glade.h:14 #: ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tipka za gibanje desno in navzdol" #: ../src/ui.glade.h:15 #: ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tipka za gibanje desno in navzgor" #: ../src/ui.glade.h:16 #: ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tipka za gibanje navzgor" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Tipke prvega igralca" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Tipke drugega igralca" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Lastnosti" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Začni igro" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Začni na _stopnji:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Uporabi _celozaslonski način" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Enostavno" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Težko" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Običajno" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_En igralec" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Začni" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Dva igralca" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Zmečkaj pošasti in reši Gnome" #: ../monster-masher.schemas.in.h:10 msgid "The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c)." msgstr "Nit mora biti GDK ime vrednosti ključa (ime je zapisano v gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Uporabi cel zaslon" monster-masher-1.8.1/po/sq.po0000644000175000017500000002272110547745537013034 00000000000000# Përkthimi i mesazheve të monster-masher në shqip # This file is distributed under the same license as the monster-masher package. # Copyright (C) 2004 Free Software Foundation, Inc. # Laurent Dhima , 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-09-02 12:20+0200\n" "PO-Revision-Date: 2004-09-03 15:54+0200\n" "Last-Translator: Laurent Dhima \n" "Language-Team: Albanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Niveli %1 u pastrua nga monsters!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Dhe heroi i fundit u zhduk..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "Të gjithë nivelet u liruan!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Duke filluar nivelin %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Gabim fatal" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Kontrollo instalimin ose raporto problemin tek shpërndarësi " "nëse " "keni instaluar nga një paketë." #: src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "Në ditët e vjetra, para se njeriu të shfaqej në botë, kishte shumë xhuxha." #: src/intro.cpp:82 #, fuzzy msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "nga nga nga dhe në." #: src/intro.cpp:88 #, fuzzy msgid "Always seeking the precious stones and valuable ore..." msgstr "Gjithmonë dhe." #: src/intro.cpp:91 #, fuzzy msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "Vetëm." #: src/intro.cpp:95 #, fuzzy msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "vite nga nga derr nga xhuxha nga dhe punë në." #: src/intro.cpp:101 #, fuzzy msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "ditë a nga Or." #: src/intro.cpp:104 #, fuzzy msgid "From the black carbon, a strange creature rose!" msgstr "Nga e zezë a!" #: src/intro.cpp:107 #, fuzzy msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "i pari nga me nga tjetër nga dhe në." #: src/intro.cpp:113 #, fuzzy msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "muaj Vetëm a nga tjetër." #: src/intro.cpp:118 #, fuzzy msgid "The world of the gnomes was threatened..." msgstr "nga xhuxha." #: src/intro.cpp:121 #, fuzzy msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "e zezë nga në." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: src/intro.cpp:129 #, fuzzy msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "dhe e kuqe." #: src/intro.cpp:133 #, fuzzy msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "And nga blu nga." #: src/intro.cpp:136 #, fuzzy msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "nga xhuxha a a." #: src/intro.cpp:141 #, fuzzy msgid "That hope is you." msgstr "është." #: src/intro.cpp:143 #, fuzzy msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "Ti nga nga nga dhe pastro për bllok." #: src/intro.cpp:149 #, fuzzy msgid "Only then can the gnomes survive..." msgstr "Vetëm xhuxha." #: src/main-window.cpp:72 #, fuzzy msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "ngarkoje ikonë j" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format #, fuzzy msgid "Resurrections: %1" msgstr "1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format #, fuzzy msgid "Score: %1" msgstr "Pikë" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format #, fuzzy msgid "Level: %1" msgstr "Etiketa" #: src/main-window.cpp:234 #, fuzzy msgid "_New game" msgstr "Lojë e _re" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "" #: src/main-window.cpp:240 #, fuzzy msgid "_Preferences" msgstr "_Preferimet" #: src/main-window.cpp:243 #, fuzzy msgid "_About" msgstr "_Informacione" #: src/main-window.cpp:246 #, fuzzy msgid "_Quit" msgstr "_Dalja" #: src/main-window.cpp:258 #, fuzzy msgid "_Resume game" msgstr "Vazhdo" #: src/main-window.cpp:261 #, fuzzy msgid "Re_start level" msgstr "nisje niveli" #: src/main-window.cpp:264 #, fuzzy msgid "_End game" msgstr "_Fundi i lojës" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 #, fuzzy msgid "translator-credits" msgstr "Laurent Dhima " #: src/main-window.cpp:411 #, fuzzy msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "Shpejt për GNOME përpara dhe nga xhuxha!" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "" #: src/main-window.cpp:415 #, fuzzy msgid "Copyright (c) 2003 Ole Laursen" msgstr "Copyright" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "" #: src/persistent.cpp:160 #, fuzzy msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "gabim nga." #: src/persistent.cpp:167 #, fuzzy msgid "Load error" msgstr "Ngarko gabim" #: src/persistent.cpp:235 #, fuzzy msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "gabim nga." #: src/persistent.cpp:242 #, fuzzy msgid "Save error" msgstr "Ruaj gabim" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "" #: src/ui.glade.h:2 #, fuzzy msgid "Fullscreen" msgstr " Ekran të plotë" #: src/ui.glade.h:3 #, fuzzy msgid "Level" msgstr " Etiketa" #: src/ui.glade.h:4 #, fuzzy msgid "Moving" msgstr " Duke lëvizur " #: src/ui.glade.h:5 #, fuzzy msgid "Number of Players" msgstr " Numri nga" #: src/ui.glade.h:6 #, fuzzy msgid "Pull block" msgstr " bllok" #: src/ui.glade.h:7 #, fuzzy msgid "Appearance" msgstr "Paraqitja" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 #, fuzzy msgid "Key for activating pulling of blocks" msgstr "Kyçi për nga blloqet" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 #, fuzzy msgid "Key for moving down" msgstr "Kyçi për poshtë" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 #, fuzzy msgid "Key for moving to the left" msgstr "Kyçi për majtas" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 #, fuzzy msgid "Key for moving to the left and down" msgstr "Kyçi për majtas dhe poshtë" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 #, fuzzy msgid "Key for moving to the left and up" msgstr "Kyçi për majtas dhe sipër" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 #, fuzzy msgid "Key for moving to the right" msgstr "Kyçi për djathtas" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 #, fuzzy msgid "Key for moving to the right and down" msgstr "Kyçi për djathtas dhe poshtë" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 #, fuzzy msgid "Key for moving to the right and up" msgstr "Kyçi për djathtas dhe sipër" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 #, fuzzy msgid "Key for moving up" msgstr "Kyçi për sipër" #: src/ui.glade.h:20 #, fuzzy msgid "Player 1 keys" msgstr "Lojtari" #: src/ui.glade.h:21 #, fuzzy msgid "Player 2 keys" msgstr "Lojtari" #: src/ui.glade.h:22 #, fuzzy msgid "Preferences" msgstr "Preferimet" #: src/ui.glade.h:27 #, fuzzy msgid "Start Game" msgstr "Fillo Loja" #: src/ui.glade.h:28 #, fuzzy msgid "Start at _level:" msgstr "Fillo niveli:" #: src/ui.glade.h:29 #, fuzzy msgid "Use _fullscreen mode" msgstr "modaliteti" #: src/ui.glade.h:30 #, fuzzy msgid "_Easy" msgstr "I Lehtë" #: src/ui.glade.h:31 #, fuzzy msgid "_Hard" msgstr "Vështirë" #: src/ui.glade.h:32 #, fuzzy msgid "_Medium" msgstr "_Mesatar" #: src/ui.glade.h:33 #, fuzzy msgid "_One player" msgstr "Një" #: src/ui.glade.h:34 #, fuzzy msgid "_Start" msgstr "_Nisja" #: src/ui.glade.h:35 msgid "_Two players" msgstr "" #: monster-masher.desktop.in.h:1 #, fuzzy msgid "Mash monsters and save the gnomes" msgstr "dhe ruaj xhuxha" #: monster-masher.schemas.in.h:10 #, fuzzy msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "emri nga në." #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "" monster-masher-1.8.1/po/sr.po0000644000175000017500000003243510547745537013040 00000000000000# Serbian translation of monster-masher # Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003. # # This file is distributed under the same license as the monster-masher package. # # Maintainer: Данило Шеган # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-09-03 17:59+0200\n" "PO-Revision-Date: 2004-09-03 18:00+0200\n" "Last-Translator: Danilo Segan \n" "Language-Team: Serbian (sr) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Ниво %1 је очишћен од чудовишта!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "И последњи јунак је нестао..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "Сви нивои ослобођени!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Улази на ниво %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Кобна грешка" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Проверите вашу инсталацију и пријавите проблем дистрибутеру уколико сте " "инсталирали помоћу припремљеног пакета." #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Некада давно, пре него што је човек крочио на свет, гнома је било у изобиљу." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Кроз векове мукотрпног рада, једва мало олакшан њиховим способностима " "лебдења које им је подарио њихов бог, копали су руде и пећине у планинама." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Увек у потрази за драгоценим камењем и вредним рудама..." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Међутим, једно племе је копало дубље од осталих. Једино је његово богатство " "расло брже од његове похлепе." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Године су пролазиле. Поглавица племена је постао краљ гнома. Хиљаде и хиљаде " "људи, жена и деце је послато да раде у најдубљим, најисплативијим рудницима." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "А онда, једног дана је пронађена велика количина угља. Бар су тако испрва " "мислили..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Из црног угљеника, дигло се чудновато створење!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Ужас је заменио почетно изненађење међу радницима када су стотине других " "изашле из копова, газећи све пред собом." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Месецима се племе борило против чудовишта. Преживело је једва неколико " "гласника послатих да обавесте остала племена." #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Свет гнома је био угрожен..." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Угрожен од црних чудовишта направљених од угљеника јачег од челика, " "механичких у њиховој глупости, али убитачних." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Угрожен од оклопљених чудовишта тако добро заштићених да су једино стене " "довољно чврсте да их униште." #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Угрожен од трагача, прикривених и превртљивих, црвених од крви гнома коју су " "пролили њихови убоди." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "И угрожени од плавих легача јаја који су повећавали њихову бројност у " "хиљадама." #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Једина преостала нада гномима је био скромни лебдећи радник. Он је пронашао " "начин да сатре чудовишта о камените планине." #: src/intro.cpp:141 msgid "That hope is you." msgstr "Та нада си ти." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Морате се пробити дубоко у планине, проћи сваки од нивоа краљева племена и " "ослободити пут за скупљаче камена да затворе копове." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Јер једино тако гноми могу преживети..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Сређивање чудовишта: не могу да учитам икону „%1“.\n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Васкрсења: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Успех: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Ниво: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_Нова игра" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Увод" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_Поставке" #: src/main-window.cpp:243 msgid "_About" msgstr "_О програму" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Изађи" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Настави игру" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "Ниво о_д почетка" #: src/main-window.cpp:264 msgid "_End game" msgstr "_Заврши игру" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "" "Данило Шеган \n" "\n" "Prevod.org — превод на српски језик." #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Брза игра сређивања чудовишта за Гнома. Спљескајте чудовишта пре него што " "вас савладају и освоје свет гнома!" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Сређивање чудовишта" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "Сва права задржана © 2003 Оле Лаурсен" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(васкрс.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Догодила се грешка при учитавању датотеке „%1“. Ово можда значи да су " "изгубљени записи о томе које сте нивое прешли." #: src/persistent.cpp:167 msgid "Load error" msgstr "Грешка при учитавању" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Догодила се грешка при чувању датотеке „%1“. Ово можда значи да су изгубљени " "записи о томе које сте нивое прешли." #: src/persistent.cpp:242 msgid "Save error" msgstr "Грешка при чувању" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "Сложеност" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "Цео екран" #: src/ui.glade.h:3 msgid "Level" msgstr "Ниво" #: src/ui.glade.h:4 msgid "Moving" msgstr "Кретање" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "Број играча" #: src/ui.glade.h:6 msgid "Pull block" msgstr "Повуците блок" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Изглед" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Тастер за повлачење блокова" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Тастер за покрет доле" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Тастер за покрет лево" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Тастер за покрет лево и десно" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Тастер за покрет лево и горе" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Тастер за покрет десно" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Тастер за покрет десно и доле" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Тастер за покрет десно и горе" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Тастер за покрет горе" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Тастери за 1. играча" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Тастери за 2. играча" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Поставке" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Почни игру" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "Почни на _нивоу:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Преко _целог екрана" #: src/ui.glade.h:30 msgid "_Easy" msgstr "_лаком" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_тешком" #: src/ui.glade.h:32 msgid "_Medium" msgstr "_средњем" #: src/ui.glade.h:33 msgid "_One player" msgstr "_Један играч" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Почни" #: src/ui.glade.h:35 msgid "_Two players" msgstr "_Два играча" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Средите чудовишта и спасите гноме" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Ниска треба да представља Гдк име за вредност тастера (може се наћи у gdk/" "gdkkeynames.c)." #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Прикажи преко целог екрана" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/sr@Latn.po0000644000175000017500000002576110547745537013763 00000000000000# Serbian translation of monster-masher # Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003. # # This file is distributed under the same license as the monster-masher package. # # Maintainer: Danilo Šegan # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-09-03 17:59+0200\n" "PO-Revision-Date: 2004-09-03 18:00+0200\n" "Last-Translator: Danilo Segan \n" "Language-Team: Serbian (sr) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Nivo %1 je očišćen od čudovišta!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "I poslednji junak je nestao..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "Svi nivoi oslobođeni!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Ulazi na nivo %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Kobna greška" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Proverite vašu instalaciju i prijavite problem distributeru ukoliko ste " "instalirali pomoću pripremljenog paketa." #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" "Nekada davno, pre nego što je čovek kročio na svet, gnoma je bilo u izobilju." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Kroz vekove mukotrpnog rada, jedva malo olakšan njihovim sposobnostima " "lebdenja koje im je podario njihov bog, kopali su rude i pećine u planinama." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Uvek u potrazi za dragocenim kamenjem i vrednim rudama..." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Međutim, jedno pleme je kopalo dublje od ostalih. Jedino je njegovo bogatstvo " "raslo brže od njegove pohlepe." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Godine su prolazile. Poglavica plemena je postao kralj gnoma. Hiljade i hiljade " "ljudi, žena i dece je poslato da rade u najdubljim, najisplativijim rudnicima." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "A onda, jednog dana je pronađena velika količina uglja. Bar su tako isprva " "mislili..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Iz crnog ugljenika, diglo se čudnovato stvorenje!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Užas je zamenio početno iznenađenje među radnicima kada su stotine drugih " "izašle iz kopova, gazeći sve pred sobom." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Mesecima se pleme borilo protiv čudovišta. Preživelo je jedva nekoliko " "glasnika poslatih da obaveste ostala plemena." #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Svet gnoma je bio ugrožen..." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Ugrožen od crnih čudovišta napravljenih od ugljenika jačeg od čelika, " "mehaničkih u njihovoj gluposti, ali ubitačnih." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Ugrožen od oklopljenih čudovišta tako dobro zaštićenih da su jedino stene " "dovoljno čvrste da ih unište." #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Ugrožen od tragača, prikrivenih i prevrtljivih, crvenih od krvi gnoma koju su " "prolili njihovi ubodi." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" "I ugroženi od plavih legača jaja koji su povećavali njihovu brojnost u " "hiljadama." #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Jedina preostala nada gnomima je bio skromni lebdeći radnik. On je pronašao " "način da satre čudovišta o kamenite planine." #: src/intro.cpp:141 msgid "That hope is you." msgstr "Ta nada si ti." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Morate se probiti duboko u planine, proći svaki od nivoa kraljeva plemena i " "osloboditi put za skupljače kamena da zatvore kopove." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Jer jedino tako gnomi mogu preživeti..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Sređivanje čudovišta: ne mogu da učitam ikonu „%1“.\n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Vaskrsenja: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Uspeh: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Nivo: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_Nova igra" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Uvod" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_Postavke" #: src/main-window.cpp:243 msgid "_About" msgstr "_O programu" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_Izađi" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Nastavi igru" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "Nivo o_d početka" #: src/main-window.cpp:264 msgid "_End game" msgstr "_Završi igru" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "" "Danilo Šegan \n" "\n" "Prevod.org — prevod na srpski jezik." #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Brza igra sređivanja čudovišta za Gnoma. Spljeskajte čudovišta pre nego što " "vas savladaju i osvoje svet gnoma!" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Sređivanje čudovišta" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "Sva prava zadržana © 2003 Ole Laursen" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(vaskrs.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Dogodila se greška pri učitavanju datoteke „%1“. Ovo možda znači da su " "izgubljeni zapisi o tome koje ste nivoe prešli." #: src/persistent.cpp:167 msgid "Load error" msgstr "Greška pri učitavanju" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Dogodila se greška pri čuvanju datoteke „%1“. Ovo možda znači da su izgubljeni " "zapisi o tome koje ste nivoe prešli." #: src/persistent.cpp:242 msgid "Save error" msgstr "Greška pri čuvanju" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "Složenost" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "Ceo ekran" #: src/ui.glade.h:3 msgid "Level" msgstr "Nivo" #: src/ui.glade.h:4 msgid "Moving" msgstr "Kretanje" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "Broj igrača" #: src/ui.glade.h:6 msgid "Pull block" msgstr "Povucite blok" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Izgled" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Taster za povlačenje blokova" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Taster za pokret dole" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Taster za pokret levo" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Taster za pokret levo i desno" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Taster za pokret levo i gore" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Taster za pokret desno" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Taster za pokret desno i dole" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Taster za pokret desno i gore" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Taster za pokret gore" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Tasteri za 1. igrača" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Tasteri za 2. igrača" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Postavke" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Počni igru" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "Počni na _nivou:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Preko _celog ekrana" #: src/ui.glade.h:30 msgid "_Easy" msgstr "_lakom" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_teškom" #: src/ui.glade.h:32 msgid "_Medium" msgstr "_srednjem" #: src/ui.glade.h:33 msgid "_One player" msgstr "_Jedan igrač" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Počni" #: src/ui.glade.h:35 msgid "_Two players" msgstr "_Dva igrača" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Sredite čudovišta i spasite gnome" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Niska treba da predstavlja Gdk ime za vrednost tastera (može se naći u gdk/" "gdkkeynames.c)." #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Prikaži preko celog ekrana" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/sv.po0000644000175000017500000003104610547745537013041 00000000000000# Swedish messages for monster-masher. # Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # Christian Rose , 2003, 2004. # Daniel Nylander , 2006. # # $Id: sv.po,v 1.6 2006/03/01 09:24:37 dnylande Exp $ # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-02-09 21:19+0100\n" "PO-Revision-Date: 2006-02-11 13:16+0100\n" "Last-Translator: Daniel Nylander \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Nivå %1 tömd på monster!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Och den siste hjälten försvann..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "Alla nivåer befriade!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "Går in i nivå %1..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "Ödesdigert fel" #: ../src/helpers.cpp:52 msgid "%1. Check your installation or report the problem to the distributor if you installed from a package." msgstr "%1. Kontrollera din installation eller rapportera problemet till distributören om du installerade från ett paket." #: ../src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "Förr i tiden, innan människan fanns, var tomtarna vanliga." #: ../src/intro.cpp:82 msgid "Through centuries of hard labour, only slightly eased by the levitational powers provided to them by their god, they bored out shafts and caves in the mountains." msgstr "Genom århundraden av hårt arbete, endast delvis förenklat av levitationskrafterna som deras gud tillhandahöll dem, borrade de schakt och grottor i bergen." #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Ständigt sökande de dyrbara stenarna och den värdefulla malmen..." #: ../src/intro.cpp:91 msgid "But one clan dug deeper than the others. Only its wealth was growing quicker than its greed." msgstr "Men en stam grävde djupare än de andra. Endast deras rikedom växte snabbare än deras girighet." #: ../src/intro.cpp:95 msgid "The years went by. The chief of the clan became the king of the gnomes. Thousands of men, women and children were sent to work in the deepest, most profitable mines." msgstr "Åren gick. Stammens hövding blev kung över tomtarna. Tusentals män, kvinnor och barn skickades för att arbeta i de djupaste, mest lönsamma gruvorna." #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Så en dag hittades en stor förekomst av kol. Trodde man..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Ur det svarta kolet reste sig en konstig varelse!" #: ../src/intro.cpp:107 msgid "The first moments of surprise among the workers were replaced with horror as hundreds of other shapes broke out of the vein, crushing everything and everybody on their way." msgstr "Den första förvåningen bland arbetarna ersattes med skräck när hundratals andra figurer bröt sig loss ur ådran och krossade allt och alla i deras väg." #: ../src/intro.cpp:113 msgid "For months, the clan fought the monsters. Only a handful of messengers sent out to warn the other clans survived." msgstr "I månader kämpade stammen mot monstren. Endast ett fåtal bud som skickades ut för att varna de andra stammarna överlevde." #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Tomtarnas värld hotades..." #: ../src/intro.cpp:121 msgid "By the black monsters made of carbon harder than steel, mechanical in their stupidity; but deadly." msgstr "Av de svarta monstren gjorda av kol hårdare än stål, mekaniska i deras dumhet; men dödliga." #: ../src/intro.cpp:125 msgid "By the armoured monsters so well-protected that only the bed-rock was hard enough to slay them." msgstr "Av de bepansrade monstren, så välskyddade att endast berggrunden var tillräckligt hård för att slå ihjäl dem." #: ../src/intro.cpp:129 msgid "By the seekers, sneaky and tricky, red from the gnome blood that their spikes had spilled." msgstr "Av sökarna, lömska och listiga, röda av tomteblodet som deras spetsar hade spillt." #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Och av de blå äggläggarna som förökade dem i tusental." #: ../src/intro.cpp:136 msgid "The only remaining hope of the gnomes was a humble levitation worker. He had found a way to mash the monsters against the mountain rocks." msgstr "Det enda återstående hoppet för tomtarna var en enkel levitationsarbetare. Han hade hittat ett sätt att mosa monstren mot bergsklipporna." #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "Det hoppet är du." #: ../src/intro.cpp:143 msgid "You must battle your way deep into the mountains, past each of the levels of the clan of the kings and clear the way for the rock summoners to block the vein." msgstr "Du måste kämpa dig djupt in i bergen, förbi varenda nivå med stammen av kungarna och bereda vägen för klippsammankallarna för att blockera ådran." #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Endast då kan tomtarna överleva..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: kan inte läsa in ikonen \"%1\".\n" #: ../src/main-window.cpp:158 #: ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Återuppståndelser: %1" #: ../src/main-window.cpp:164 #: ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Poäng: %1" #: ../src/main-window.cpp:174 #: ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Nivå: %1" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "_Nytt spel" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Introduktion" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "_Inställningar" #: ../src/main-window.cpp:243 msgid "_About" msgstr "_Om" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "_Avsluta" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Återuppta spel" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "Starta _om nivå" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "A_vsluta spel" #: ../src/main-window.cpp:407 msgid "Fast-paced monster mashing game for GNOME. Splat the monsters before they roll over you and take over the world of the gnomes!" msgstr "Monstermosningsspel för GNOME. Krossa monstren innan de rullar över dig och tar över tomtarnas värld!" #: ../src/main-window.cpp:412 #: ../src/main.cpp:55 #: ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Copyright %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "Christian Rose\n" "Skicka synpunkter på översättningen till sv@li.org" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(återuppst.: %1)" #: ../src/persistent.cpp:160 msgid "An error occurred while reading the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "Ett fel inträffade vid läsning av filen \"%1\". Detta kan betyda att inspelningarna av vilka nivåer du passerat har gått förlorade." #: ../src/persistent.cpp:167 msgid "Load error" msgstr "Inläsningsfel" #: ../src/persistent.cpp:235 msgid "An error occurred while saving the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "Ett fel inträffade vid sparande av filen \"%1\". Detta kan betyda att inspelningarna av vilka nivåer du passerat har gått förlorade." #: ../src/persistent.cpp:242 msgid "Save error" msgstr "Sparandefel" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "Svårighet" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Helskärm" #: ../src/ui.glade.h:3 msgid "Level" msgstr "Nivå" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "Flytt" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "Antal spelare" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "Drag block" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "Utseende" #: ../src/ui.glade.h:8 #: ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Tangent för att aktivera dragande av block" #: ../src/ui.glade.h:9 #: ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Tangent att flytta nedåt" #: ../src/ui.glade.h:10 #: ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Tangent att flytta till vänster" #: ../src/ui.glade.h:11 #: ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Tangent för att flytta till vänster och nedåt" #: ../src/ui.glade.h:12 #: ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Tangent för att flytta till vänster och uppåt" #: ../src/ui.glade.h:13 #: ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Tangent för att flytta till höger" #: ../src/ui.glade.h:14 #: ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Tangent för att flytta till höger och nedåt" #: ../src/ui.glade.h:15 #: ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Tangent för att flytta till höger och uppåt" #: ../src/ui.glade.h:16 #: ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Tangent för att flytta uppåt" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Tangenter för spelare 1" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Tangenter för spelare 2" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "Inställningar" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "Börja spel" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Börja på _nivå:" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Använd _helskärmsläge" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "_Lätt" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "_Svår" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "_Mellan" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "_En spelare" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "_Börja" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "_Två spelare" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Mosa monster och rädda tomtarna" #: ../monster-masher.schemas.in.h:10 msgid "The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c)." msgstr "Strängen bör vara GDK-namnet för tangentvärdet som ska användas (kan hittas i gdk/gdkkeynames.c)." #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Använd helskärmsläge" #~ msgid " " #~ msgstr " " #~ msgid "Fullscreen" #~ msgstr "Helskärm" #~ msgid "Use fullscreen mode" #~ msgstr "Använd helskärmsläge" #~ msgid "Cannot load the icon \"%1\".\n" #~ msgstr "Kan inte läsa in ikonen \"%1\".\n" #~ msgid "Resurrections:" #~ msgstr "Återuppståndelser:" #~ msgid "Score:" #~ msgstr "Poäng:" #~ msgid "Level:" #~ msgstr "Nivå:" #~ msgid "New game" #~ msgstr "Nytt spel" #~ msgid "Introduction" #~ msgstr "Introduktion" #~ msgid "About" #~ msgstr "Om" #~ msgid "_About..." #~ msgstr "_Om..." #~ msgid "About..." #~ msgstr "Om..." #~ msgid "Quit" #~ msgstr "Avsluta" #~ msgid "Resume game" #~ msgstr "Återuppta spel" #~ msgid "Restart level" #~ msgstr "Starta om nivå" #~ msgid "End game" #~ msgstr "Avsluta spel" #~ msgid "Copyright (C) 2003 Ole Laursen" #~ msgstr "Copyright © 2003 Ole Laursen" #~ msgid "Copyright (C) 2004 Ole Laursen" #~ msgstr "Copyright © 2004 Ole Laursen" #~ msgid "Copyright (c) 2004 Ole Laursen" #~ msgstr "Copyright © 2004 Ole Laursen" #~ msgid "Difficulty" #~ msgstr "Svårighet" #~ msgid "Level" #~ msgstr "Nivå" #~ msgid "Moving" #~ msgstr "Flytt" #~ msgid "Number of Players" #~ msgstr "Antal spelare" #~ msgid "Pull block" #~ msgstr "Dra block" #~ msgid "Start at level:" #~ msgstr "Börja på nivå:" monster-masher-1.8.1/po/ta.po0000644000175000017500000004121610547745537013015 00000000000000# translation of monster-masher.HEAD.po to # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # R.Sivaranjani, Bannari Amman Institute, TamilNadu, India. msgid "" msgstr "" "Project-Id-Version: monster-masher.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-09-07 12:16+0200\n" "PO-Revision-Date: 2004-09-12 22:51+0530\n" "Last-Translator: root \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.2\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "monstersற்காக %1 என்ற மட்டத்தை அகற்றியாயிற்று!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "மற்றும் கடைசிக் கதாநாயகன் மறைந்தான்..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "அனைத்து மட்டங்களும் " #: src/game.cpp:383 msgid "Entering level %1..." msgstr "%1 என்ற மட்டத்தில் நுழைகிறது..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "கொல் பிழை" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "%1. நிறுவியதைச் சரிபார்க்கவும் அல்லது நீங்கள் ஒரு தொகுப்பிலிருந்து நிறுவி இருந்தால் பிரச்சனையை பகுத்தாளரிடம் அறிக்கை செய்க." #: src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "பழைய நாட்களில், உலகத்திற்குள் மனிதன் நுழைவதற்கு முன்பு, கனொம்கள் அதிகப்படியாக இருந்தது." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "நூற்றாண்டு காலமாக கொண்ட கடின உழைப்பின் காரணமாக," #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "எப்பொழுதும் அரிதான கற்களுக்காகவும் விளைமதிப்புள்ள தாதுவையும் தேடிக்கொண்டு..." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "ஆனால் ஒரு ஜாதி மற்றொன்றைவிட ஆழமாக தோண்டியது. அதனுடைய பேராசையைவிட செல்வம்மட்டுமே விரைவாக வளர்ந்து கொண்டே சென்றது." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "காலங்கள் சென்றன. ஜாதியின் தலைவனே கனோம்களின் மன்னன் ஆனான்." "ஆழமான, மிகுந்த இலாபகரமான சுரங்கத்திற்கு ஆயிரக்கணக்கான ஆண்கள், பெண்கள் மற்றும் குழந்தைகளை" "வேலை செய்வதற்காக அனுப்பிவைத்தனர்" #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "பின்பு ஒரு நாள் மிகுதியான நிலக்கரி படிந்திருப்பது கண்டறியப்பட்டது. அல்லது அதனால் அது அப்படி நினைக்கப்பட்டது..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "கருப்பு கார்பனில் இருந்து, விசித்திரமான பிராணி எழுந்தது!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "வேலையாட்களிடையே தோன்றிய முக்கியமான ஆச்சரியத்தை கொடூரத்தால் மாற்றப்பட்டது." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "பல மாதங்களாக, அரக்கர்களுடன் ஜாதி சண்டையிட்டது.உயிரோடிருந்த மற்ற ஜாதிகளை எச்சரிக்கை செய்வதற்காக வெகுசில தூதர்களை அனுப்பினர்" #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "கனோம்களின் உலகம் அச்சுறுத்தப்பட்டுள்ளது..." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "உருக்கும் இரும்பைவிட உறுதியான கரிகளால் செய்யப்பட்ட கரிப்பு அரக்கர்களால்,இயந்திரத்தனமான அவர்களுடைய முட்டாள்த்தனம்; ஆனால் உயிருக்கு ஆபத்து." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "அவர்களைக் கொல்வதற்கு ஏதுவான அஸ்திவாரம் கவசம் அணிந்த அரக்கர்களால் பாதுகாக்கப்பட்டது" #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "கனோம்களின் இரத்தத்தில் இருந்து அதனுடைய கம்பிகள் வீணாக்கப்பட்டது என்பதை தேடர்களின் அற்பமான மற்றும் தந்திரத்தினால் படிக்கப்பட்டது." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "மற்றும் நீல முட்டை அடுக்குகளால் அதனுடைய எண்ணிக்கையை ஆயிரத்தோடு பெருக்கப்பட்டது" #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "கனோம்களின் மீதமிருந்த ஒரே நம்பிக்கை எளிய வேலைக்காரன். அவன் அரக்கர்களை மலைகளின் பாறைகளில் அடித்து நொறுக்குவதற்கான வழியைக் கண்டுபிடித்தான்." #: src/intro.cpp:141 msgid "That hope is you." msgstr "நீதான் அந்த நம்பிக்கை." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, pass each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "நீ உன்னுடைய வழியில் தீவிரமாக மலைகளின் உள்ளே யுத்தம் செய்யவேண்டியிருக்கும், மன்னர்களின் ஜாதியை ஒவ்வொரு மட்டமாக கடந்து செல் மற்றும் பாதைகளில் இருக்கும் பாறைகளை அகற்றுக." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "அதன்பின் தான் கனோம்கள் நீடிக்கும்..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "மான்ஸ்டர் மேஷ்ஷர்: குறும்படத்தை ஏற்ற இயலவில்லை \"%1\".\n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "உயிர்பெற்றெழல்கள்: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "ஸ்கோர்: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "மட்டம்: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_புதிய விளையாட்டு" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_அறிமுகம்" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "_விருப்பங்கள்" #: src/main-window.cpp:243 msgid "_About" msgstr "_பற்றி" #: src/main-window.cpp:246 msgid "_Quit" msgstr "_வெளியேறு" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_விளையாட்டைத் துவங்கு" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "மட்டத்தின் மீள்தொடக்கம்" #: src/main-window.cpp:264 msgid "_End game" msgstr "_விளையாட்டை முடி" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "மொழிபெயர்ப்பு நிரல்-புகழ்கள்" #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "கனோமிற்கான வேகமாக நடைபோடும் மான்ஸ்டர் மேஷ்சிங் விளையாட்டு." #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "மான்ஸ்டர் மேஷர்" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "படியுரிமை (சி) 2003 ஆலி லார்சென்" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(resur.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "\"%1\" என்ற கோப்பை வாசிக்கும்பொழுது பிழை நேர்ந்தது. பதிவு செய்யும் பொழுது எந்த மட்டத்தை கடந்து சென்றோமோ அது தொலைந்ததாக பொருள்படும்." #: src/persistent.cpp:167 msgid "Load error" msgstr "பிழையை ஏற்று" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "\"%1\" என்ற கோப்பை சேமிக்கும்பொழுது பிழை நேர்ந்தது. பதிவு செய்யும் பொழுது எந்த மட்டத்தை கடந்து சென்றோமோ அது தொலைந்ததாக பொருள்படும்." #: src/persistent.cpp:242 msgid "Save error" msgstr "பிழையை சேமி" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "கடினம்" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "முழுத்திரை" #: src/ui.glade.h:3 msgid "Level" msgstr "மட்டம்" #: src/ui.glade.h:4 msgid "Moving" msgstr "நகரும் பொழுது" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "ஆட்டக்காரர்களின் எண்ணிக்கை" #: src/ui.glade.h:6 msgid "Pull block" msgstr "தொகுதியை இழு" #: src/ui.glade.h:7 msgid "Appearance" msgstr "தோற்றம்" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "தொகுதியின் இழுப்பைத் தூண்டுவதற்கான சாவி" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "கீழ்நோக்கி நகருவதற்கான சாவி" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "இடதுநோக்கி நகருவதற்கான சாவி" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "இடது மற்றும் கீழ்நோக்கி நகருவதற்கான சாவி" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "இடது மற்றும் மேல்நோக்கி நகருவதற்கான சாவி" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "வலம்நோக்கி நகருவதற்கான சாவி" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "வலம் மற்றும் கீழ்நோக்கி நகருவதற்கான சாவி" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "வலம் மற்றும் மேல்நோக்கி நகருவதற்கான சாவி" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "மேல்நோக்கி நகருவதற்கான சாவி" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "ஆட்டக்காரர் 1ற்கான சாவிகள்" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "ஆட்டக்காரர் 2ற்கான சாவிகள்" #: src/ui.glade.h:22 msgid "Preferences" msgstr "விருப்பங்கள்" #: src/ui.glade.h:27 msgid "Start Game" msgstr "விளையாட்டைத் துவங்கு" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "_மட்டத்தில் இருந்து துவங்கு:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "_முழுத்திரைப்பாங்கை உபயோகி" #: src/ui.glade.h:30 msgid "_Easy" msgstr "_எளிதானவை" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_கடினம்" #: src/ui.glade.h:32 msgid "_Medium" msgstr "_ஊடகம்" #: src/ui.glade.h:33 msgid "_One player" msgstr "_ஒரு ஆட்டக்காரர்" #: src/ui.glade.h:34 msgid "_Start" msgstr "_துவக்கு" #: src/ui.glade.h:35 msgid "_Two players" msgstr "_இரண்டு ஆட்டக்காரர்கள்" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "அரக்கர்களை நொருக்கி கனோம்களைக் காப்பாற்று" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "சரத்தை உபயோகிக்கும் பொழுது கண்டிப்பாக சாவி மதிப்பின் GDK பெயராக இருக்க வேண்டும்(gdk/gdkkeynames.cஇல் காணமுடியும்)" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "முழுத்திரையை உபயோகி" monster-masher-1.8.1/po/tr.po0000644000175000017500000001702610547745537013040 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # msgid "" msgstr "" "Project-Id-Version: mm\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-07-09 13:02+0200\n" "PO-Revision-Date: 2003-12-30 20:38+0100\n" "Last-Translator: Gorkem Cetin \n" "Language-Team: Turkish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "" #: src/game.cpp:151 msgid "All levels liberated!" msgstr "" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "" #: src/helpers.cpp:39 msgid "Fatal error" msgstr "" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "" #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: src/intro.cpp:141 msgid "That hope is you." msgstr "" #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "" #: src/main-window.cpp:234 msgid "_New game" msgstr "" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "" #: src/main-window.cpp:243 msgid "_About" msgstr "" #: src/main-window.cpp:246 msgid "_Quit" msgstr "" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "" #: src/main-window.cpp:264 msgid "_End game" msgstr "" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "" #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:167 msgid "Load error" msgstr "" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:242 msgid "Save error" msgstr "" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "" #: src/ui.glade.h:3 msgid "Level" msgstr "" #: src/ui.glade.h:4 msgid "Moving" msgstr "" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "" #: src/ui.glade.h:6 msgid "Pull block" msgstr "" #: src/ui.glade.h:7 msgid "Appearance" msgstr "" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "" #: src/ui.glade.h:22 msgid "Preferences" msgstr "" #: src/ui.glade.h:27 msgid "Start Game" msgstr "" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "" #: src/ui.glade.h:30 msgid "_Easy" msgstr "" #: src/ui.glade.h:31 msgid "_Hard" msgstr "" #: src/ui.glade.h:32 msgid "_Medium" msgstr "" #: src/ui.glade.h:33 msgid "_One player" msgstr "" #: src/ui.glade.h:34 msgid "_Start" msgstr "" #: src/ui.glade.h:35 msgid "_Two players" msgstr "" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "" monster-masher-1.8.1/po/uk.po0000644000175000017500000003206610547745537013033 00000000000000# Ukrainian translation to monster-masher. # Copyright (C) 2004 Free Software Foundation # This file is distributed under the same license as the monster-masher package. # Maxim Dziumanenko , 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-09-30 15:24+0300\n" "PO-Revision-Date: 2004-09-26 19:45+0300\n" "Last-Translator: Maxim Dziumanenko \n" "Language-Team: Ukrainian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Рівень %1 очищений від монстрів!" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Та останній герой зник..." #: src/game.cpp:151 msgid "All levels liberated!" msgstr "Усі рівні визволені!" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "Вхід на рівень %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "Критична помилка" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" "%1. Перевірте встановлення чи повідомте про помилку постачальника, якщо ви " "встановлювали програму з пакету." #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "У давні часи, перш ніж людина увійшла у світ, було багато гномів." #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" "Крізь століття тяжкої праці, лише трохи полегшеної левітаційною енергією, що " "дана їм їх богом, вони бурити вали та печери у горах." #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Завжди шукаючи дорогоцінні камені та коштовний метал.." #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" "Але один клан копав глибше за інших. Лише їх багатство зростало швидше за їх " "жадібність." #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" "Минали роки. Ватажок клану став королем гномів. Тисячі чоловіків, жінок та " "дітей були відправлені працювати найглибші, найбільш прибуткові копальні." #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" "Одного дня було знайдено велике родовище вугілля. Або про нього так думали..." #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "З чорного графіту, дивовижного створіння роза!" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" "Перші хвилини здивування між робітниками змінились на жах як сотні інших " "образів виривались з прожилки, знищуючи все та усіх на своєму шляху." #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" "Місяцями, бився з монстрами. Лише жменька посланців, була надіслана щоб " "попередити інші вцілілі клани." #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Світ гномів був під загрозою..." #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" "Чорні монстри зроблені з вуглецю були міцніші за сталь, машинальні у власній " "безглуздості; але смертельні." #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" "Озброєні монстри були так добре захищені, що лише гірське каміння було " "достатньо міцним щоб вбити їх." #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" "Шукачі, підлі та вправні, червоні від крові гномів, яку проливали їх шипи." #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Та за шарами голубих яєць, що примножували їх чисельність на тисячі." #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" "Єдиною надією гномів залишався простий левітаційний робітник. Він знайшов " "шлях відтіснити монстрів у гірські скали." #: src/intro.cpp:141 msgid "That hope is you." msgstr "Ви - їхня надія." #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" "Вам слід битися глибоко у горах, за кожним з рівнів клану королів та очищати " "шлях від скельних призовників для блокування жили." #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Лише тоді гноми зможуть вижити..." #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: не вдається завантажити значок \"%1\".\n" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "Воскресінь: %1" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "Очки: %1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "Рівень: %1" #: src/main-window.cpp:234 msgid "_New game" msgstr "_Нова гра" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "_Вступ" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "П_араметри" #: src/main-window.cpp:243 msgid "_About" msgstr "_Про програму" #: src/main-window.cpp:246 msgid "_Quit" msgstr "Ви_йти" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "_Продовжити гру" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "Пере_запустити гру" #: src/main-window.cpp:264 msgid "_End game" msgstr "_Скінчити гру" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "Максим Дзюманенко " #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" "Швидка гра на розчавлення монстрів для GNOME. Знищте монстрів, перш ніж вони " "пройдуться по вам та візьмуть верх над країною гномів!" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "Авторські права (c) 2003 Ole Laursen" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "(воскрес.: %1)" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Помилка при читанні файлу \"%1\". Це може означати, що записи пройдених вами " "рівнів втрачені." #: src/persistent.cpp:167 msgid "Load error" msgstr "Помилка при завантаженні" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" "Помилка при збереженні файлу \"%1\". Це може означати, що записи пройдених " "вами рівнів втрачені." #: src/persistent.cpp:242 msgid "Save error" msgstr "Помилка при збереженні" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "Складність" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "Повний екран" #: src/ui.glade.h:3 msgid "Level" msgstr "Рівень" #: src/ui.glade.h:4 msgid "Moving" msgstr "Переміщення" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "Кількість гравців" #: src/ui.glade.h:6 msgid "Pull block" msgstr "Перетягування блоку" #: src/ui.glade.h:7 msgid "Appearance" msgstr "Вигляд" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Клавіша активації перетягування блоків" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Клавіша переміщення вниз" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Клавіша переміщення ліворуч" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Клавіша переміщення ліворуч та вниз" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Клавіша переміщення ліворуч та вгору" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Клавіша переміщення праворуч" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Клавіша переміщення праворуч та вниз" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Клавіша переміщення праворуч та вгору" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Клавіша переміщення вгору" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Клавіші 1 гравця" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Клавіші 2 гравця" #: src/ui.glade.h:22 msgid "Preferences" msgstr "Вподобання" #: src/ui.glade.h:27 msgid "Start Game" msgstr "Початок гри" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "Починати з _рівня:" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "_Повноекранний режим" #: src/ui.glade.h:30 msgid "_Easy" msgstr "Прос_то" #: src/ui.glade.h:31 msgid "_Hard" msgstr "_Важко" #: src/ui.glade.h:32 msgid "_Medium" msgstr "С_ередня" #: src/ui.glade.h:33 msgid "_One player" msgstr "_Один гравець" #: src/ui.glade.h:34 msgid "_Start" msgstr "_Почати" #: src/ui.glade.h:35 msgid "_Two players" msgstr "_Два гравця" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Розчавлення монстрів та спасіння гномів" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" "Рядок повинен бути GDK назвою клавіші (назви можна знайти у gdk/gdkkeynames." "c)." #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Повний екран" monster-masher-1.8.1/po/vi.po0000644000175000017500000003070010547745537013023 00000000000000# Vietnamese Translation for Moster Masher. # Copyright © 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the monster-masher package. # Clytie Siddall , 2005. msgid "" "" msgstr "Project-Id-Version: monster-masher HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-01 04:06+0100\n" "PO-Revision-Date: 2006-01-01 20:50+1030\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0\n" "X-Generator: LocFactoryEditor 1.5.1b\n" #:../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "Mới xóa mọi quái vật ra lớp $1." #:../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "Còn anh hùng cuối cùng đã biến mật..." #:../src/game.cpp:151 msgid "All levels liberated!" msgstr "Tất cả lớp đã được giải phóng!" #:../src/game.cpp:383 msgid "Entering level %1..." msgstr "Đang vào lớp %1..." #:../src/helpers.cpp:39 msgid "Fatal error" msgstr "Lỗi nghiệm trọng" #:../src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "%1. Hãy kiểm tra cách cài đặt mình hay thông báo lỗi này cho nhà phân phát nếu bạn đã cài đăt từ gói phần mềm." #:../src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "Ngày xửa ngày xưa, trước khi con người vào thế giới, có rất nhiều thần lùn giữ của." #:../src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "Trong khi nhiều thế kỷ vất vả (năng lực ma thuật bay lên mà thần chúng đã " "đưa ra thì chỉ giúp đỡ rất ít) mọi thần lùn giữ của phải đào nhiều hầm và " "hang trong núi." #:../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "Luôn luôn tìm kiếm ngọc và kim loại qúy..." #:../src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "Còn một thị tộc đã đào sâu xuống đất hơn các thần lùn khác. Chỉ sự giàu có " "của họ có thể tăng lên nhanh hơn tính tham lam của họ." #:../src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "Nhiều năm đã ròng rồi. Thủ lĩnh thị tộc ấy trở thành vua của tất cả thần lùn " "giữ của. Mấy nghìn đàn ông, đàn bà và trẻ con bị sai để khai mỏ sâu nhất và " "mang lợi nhiều nhất." #:../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "Vậy một ngày nào đó có tìm thấy được một vỉa than lắng dầy. Hoặc đã nghĩ như thế..." #:../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "Luc ấy, từ cacbon màu đen, một sinh vật rất lạ nhảy lên bất ngờ!" #:../src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "Những phút ngạc nhiên đầu cho mọi người làm việc thì được thay thế do sự " "khiếp khi mấy trăm hình lạ khác phá mạch than mà ra, cũng đập tất cả vật và " "tất cả người." #:../src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "Thị tộc thì đấu tranh những quái vật được mấy tháng. Chỉ vài người đưa tin " "mà được gởi ra để báo thị tộc khác còn sống lại." #:../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "Thế giới của thần lùn giữ của bị doạ..." #:../src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "Bởi nhưng quái vật của cacbon cứng hơn thép, máy móc vì ngu dại nhưng cũng " "chí tử." #:../src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "Bởi những quái vật bọc sắt được bảo vệ quá nhiều đến mức mà chỉ đá gốc là đủ " "cứng để giết chúng được." #:../src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "Bởi những vật tìm kiếm, lừa dối và xảo quyệt, còn màu đỏ vì đã phạm tội gây " "đổ máu với gai chúng." #:../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "Và bởi những lớp trứng màu xanh mà nhân số chúng mấy nghìn lần." #:../src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "Nguồn hy vọng cuối cùng còn lại của thần lùn là một người thơ bay lên có địa " "vị thấp kém. Họ đã tìm biết một cách nghiền quái vật vào đá núi." #:../src/intro.cpp:141 msgid "That hope is you." msgstr "Nguồn hy vọng ấy là bạn." #:../src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "Bạn phải chiến đấu đường sâu vào núi, qua mỗi lớp của thị tộc vua, và xóa " "sạch đường để cho phép người gọi đến đá để làm trở ngại mạch than ấy." #:../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "Chỉ sau đó thì những thần lùn giữ của có thể sống lại..." #:../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher: không nạp được biểu tượng \"%1\".\n" #:../src/main-window.cpp:158 ../src/ui.glade.h:24 #,no-c-format msgid "Resurrections: %1" msgstr "Làm sống lại: %1" #:../src/main-window.cpp:164 ../src/ui.glade.h:26 #,no-c-format msgid "Score: %1" msgstr "Số điểm: %1" #:../src/main-window.cpp:174 ../src/ui.glade.h:18 #,no-c-format msgid "Level: %1" msgstr "Lớp: %1" #:../src/main-window.cpp:234 msgid "_New game" msgstr "Trò chơi _mới" #:../src/main-window.cpp:237 msgid "_Introduction" msgstr "_Giới thiệu" #:../src/main-window.cpp:240 msgid "_Preferences" msgstr "Sở _thích..." #:../src/main-window.cpp:243 msgid "_About" msgstr "_Về trình..." #:../src/main-window.cpp:246 msgid "_Quit" msgstr "_Thoát" #:../src/main-window.cpp:258 msgid "_Resume game" msgstr "_Tiếp tục chơi" #:../src/main-window.cpp:261 msgid "Re_start level" msgstr "Bắt đầu lớp _lại" #:../src/main-window.cpp:264 msgid "_End game" msgstr "_Xong chơi" #:../src/main-window.cpp:407 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "Trò chơi nghiền quái vật nhanh lắm cho hệ thống cửa sổ GNOME. Hãy đập quái " "vật trước khi chúng nghiền nát bạn và tiếp quản thế giới của thần lùn!" #:../src/main-window.cpp:412 ../src/main.cpp:55 ../src/ui.glade.h:19 #:../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #.%1 is the copyright symbol #:../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "Bản quyền %1 2003 Ole Laursen" #.note to translators: please fill in your names and email addresses #:../src/main-window.cpp:422 msgid "translator-credits" msgstr "Clytie Siddall " #.note to translators: resur. stands for resurrections; resurrections #.occur when the player is given life again after having died #.(the translation should preferably be short) #:../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(sốnglại.: %1)" #:../src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "Gặp lỗi khi đọc tập tin \"%1\". Có lẽ có nghĩa là dữ liệu đã ghi những lớp " "mà bạn đã qua bị mất rồi." #:../src/persistent.cpp:167 msgid "Load error" msgstr "Lỗi nạp" #:../src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "Gặp lỗi khi lưu tập tin \"%1\". Có lẽ có nghĩa là dữ liệu đã ghi những lớp " "mà bạn đã qua bị mất rồi." #:../src/persistent.cpp:242 msgid "Save error" msgstr "Lỗi lưu" #:../src/ui.glade.h:1 msgid "Difficulty" msgstr "Lớp khó" #:../src/ui.glade.h:2 msgid "Fullscreen" msgstr "Màn hình toàn" #:../src/ui.glade.h:3 msgid "Level" msgstr "Lớp chơi" #:../src/ui.glade.h:4 msgid "Moving" msgstr "Di động" #:../src/ui.glade.h:5 msgid "Number of Players" msgstr "Số người chơi" #:../src/ui.glade.h:6 msgid "Pull block" msgstr "Kéo khối" #:../src/ui.glade.h:7 msgid "Appearance" msgstr "Hình thức" #:../src/ui.glade.h:8 ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "Phím tắt để hiệu lực kéo khối" #:../src/ui.glade.h:9 ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "Phím tắt để di động xuống" #:../src/ui.glade.h:10 ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "Phím tắt để di động về bên trái" #:../src/ui.glade.h:11 ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "Phím tắt để di động về bên trái và xuống" #:../src/ui.glade.h:12 ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "Phím tắt để di động về bên trái và lên" #:../src/ui.glade.h:13 ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "Phím tắt để di động về bên phải" #:../src/ui.glade.h:14 ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "Phím tắt để di động về bên phải và xuống" #:../src/ui.glade.h:15 ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "Phím tắt để di động về bên phải và lên" #:../src/ui.glade.h:16 ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "Phím tắt để di động lên" #:../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "Phím cho người chơi 1" #:../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "Phím cho người chơi 2" #:../src/ui.glade.h:22 msgid "Preferences" msgstr "Sở thích" #:../src/ui.glade.h:27 msgid "Start Game" msgstr "Bắt đầu chơi" #:../src/ui.glade.h:28 msgid "Start at _level:" msgstr "Bắt đầu từ _lớp:" #:../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "Sử dụng chế độ _toàn màn hình" #:../src/ui.glade.h:30 msgid "_Easy" msgstr "_Dễ" #:../src/ui.glade.h:31 msgid "_Hard" msgstr "_Khó" #:../src/ui.glade.h:32 msgid "_Medium" msgstr "_Vừa" #:../src/ui.glade.h:33 msgid "_One player" msgstr "_Một người chơi" #:../src/ui.glade.h:34 msgid "_Start" msgstr "_Bắt đầu" #:../src/ui.glade.h:35 msgid "_Two players" msgstr "_Hai người chơi" #:../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "Hãy nghiền quái vật và cứu những thần lùn" #:../monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "Chuỗi ấy nên là tên GDK cua giá trị khóa để sử dụng (có thể tìm thấy trong " "gdk/gdkkeynames.c)." #:../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "Sử dụng toàn màn hình" monster-masher-1.8.1/po/zh_CN.po0000644000175000017500000002017110547745537013407 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Funda Wang , 2004. # msgid "" msgstr "" "Project-Id-Version: monster-masher HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-11-29 03:53+0100\n" "PO-Revision-Date: 2004-11-29 19:15+0800\n" "Last-Translator: Funda Wang \n" "Language-Team: zh_CN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "" #: src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "" #: src/game.cpp:151 msgid "All levels liberated!" msgstr "" #: src/game.cpp:383 msgid "Entering level %1..." msgstr "正在进入级别 %1..." #: src/helpers.cpp:39 msgid "Fatal error" msgstr "严重错误" #: src/helpers.cpp:52 msgid "" "%1. Check your installation or report the problem to the distributor if you " "installed from a package." msgstr "" #: src/intro.cpp:79 msgid "" "In the old days, before man entered the world, the gnomes were abundant." msgstr "" #: src/intro.cpp:82 msgid "" "Through centuries of hard labour, only slightly eased by the levitational " "powers provided to them by their god, they bored out shafts and caves in the " "mountains." msgstr "" #: src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "" #: src/intro.cpp:91 msgid "" "But one clan dug deeper than the others. Only its wealth was growing quicker " "than its greed." msgstr "" #: src/intro.cpp:95 msgid "" "The years went by. The chief of the clan became the king of the gnomes. " "Thousands of men, women and children were sent to work in the deepest, most " "profitable mines." msgstr "" #: src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "" #: src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "" #: src/intro.cpp:107 msgid "" "The first moments of surprise among the workers were replaced with horror as " "hundreds of other shapes broke out of the vein, crushing everything and " "everybody on their way." msgstr "" #: src/intro.cpp:113 msgid "" "For months, the clan fought the monsters. Only a handful of messengers sent " "out to warn the other clans survived." msgstr "" #: src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "" #: src/intro.cpp:121 msgid "" "By the black monsters made of carbon harder than steel, mechanical in their " "stupidity; but deadly." msgstr "" #: src/intro.cpp:125 msgid "" "By the armoured monsters so well-protected that only the bed-rock was hard " "enough to slay them." msgstr "" #: src/intro.cpp:129 msgid "" "By the seekers, sneaky and tricky, red from the gnome blood that their " "spikes had spilled." msgstr "" #: src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "" #: src/intro.cpp:136 msgid "" "The only remaining hope of the gnomes was a humble levitation worker. He had " "found a way to mash the monsters against the mountain rocks." msgstr "" #: src/intro.cpp:141 msgid "That hope is you." msgstr "" #: src/intro.cpp:143 msgid "" "You must battle your way deep into the mountains, past each of the levels of " "the clan of the kings and clear the way for the rock summoners to block the " "vein." msgstr "" #: src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "" #: src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "" #: src/main-window.cpp:158 src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "" #: src/main-window.cpp:164 src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "得分:%1" #: src/main-window.cpp:174 src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "级别:%1" #: src/main-window.cpp:234 msgid "_New game" msgstr "新游戏(_N)" #: src/main-window.cpp:237 msgid "_Introduction" msgstr "简介(_I)" #: src/main-window.cpp:240 msgid "_Preferences" msgstr "首选项(_P)" #: src/main-window.cpp:243 msgid "_About" msgstr "关于(_A)" #: src/main-window.cpp:246 msgid "_Quit" msgstr "退出(_Q)" #: src/main-window.cpp:258 msgid "_Resume game" msgstr "继续游戏(_R)" #: src/main-window.cpp:261 msgid "Re_start level" msgstr "重新开始级别(_S)" #: src/main-window.cpp:264 msgid "_End game" msgstr "结束游戏(_E)" #. add documenters here #. note to translators: please fill in your names and email addresses #: src/main-window.cpp:408 msgid "translator-credits" msgstr "开源软件国际化之 GNOME 简体中文组\n\thttp://i18n.linux.net.cn" #: src/main-window.cpp:411 msgid "" "Fast-paced monster mashing game for GNOME. Splat the monsters before they " "roll over you and take over the world of the gnomes!" msgstr "" #: src/main-window.cpp:414 src/main.cpp:47 src/ui.glade.h:19 #: monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "" #: src/main-window.cpp:415 msgid "Copyright (c) 2003 Ole Laursen" msgstr "版权 (c) 2003 Ole Laursen" #. note to translators: resur. stands for resurrections (the translation #. should preferably be short) #: src/new-game-window.cpp:169 msgid "(resur.: %1)" msgstr "" #: src/persistent.cpp:160 msgid "" "An error occurred while reading the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:167 msgid "Load error" msgstr "装入错误" #: src/persistent.cpp:235 msgid "" "An error occurred while saving the file \"%1\". This may mean that the " "recordings of what levels you have passed are lost." msgstr "" #: src/persistent.cpp:242 msgid "Save error" msgstr "保存错误" #: src/ui.glade.h:1 msgid "Difficulty" msgstr "难度" #: src/ui.glade.h:2 msgid "Fullscreen" msgstr "全屏" #: src/ui.glade.h:3 msgid "Level" msgstr "级别" #: src/ui.glade.h:4 msgid "Moving" msgstr "移动" #: src/ui.glade.h:5 msgid "Number of Players" msgstr "玩家数" #: src/ui.glade.h:6 msgid "Pull block" msgstr "" #: src/ui.glade.h:7 msgid "Appearance" msgstr "外观" #: src/ui.glade.h:8 monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "" #: src/ui.glade.h:9 monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "" #: src/ui.glade.h:10 monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "" #: src/ui.glade.h:11 monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "" #: src/ui.glade.h:12 monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "" #: src/ui.glade.h:13 monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "" #: src/ui.glade.h:14 monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "" #: src/ui.glade.h:15 monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "" #: src/ui.glade.h:16 monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "" #: src/ui.glade.h:20 msgid "Player 1 keys" msgstr "第一玩家按键" #: src/ui.glade.h:21 msgid "Player 2 keys" msgstr "第二玩家按键" #: src/ui.glade.h:22 msgid "Preferences" msgstr "首选项" #: src/ui.glade.h:27 msgid "Start Game" msgstr "开始游戏" #: src/ui.glade.h:28 msgid "Start at _level:" msgstr "开始级别(_L):" #: src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "使用全屏模式(_F)" #: src/ui.glade.h:30 msgid "_Easy" msgstr "易(_E)" #: src/ui.glade.h:31 msgid "_Hard" msgstr "难(_H)" #: src/ui.glade.h:32 msgid "_Medium" msgstr "中(_M)" #: src/ui.glade.h:33 msgid "_One player" msgstr "一个玩家(_O)" #: src/ui.glade.h:34 msgid "_Start" msgstr "开始(_S)" #: src/ui.glade.h:35 msgid "_Two players" msgstr "两个玩家(_T)" #: monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "" #: monster-masher.schemas.in.h:10 msgid "" "The string should be the GDK name of the key value to use (can be found in " "gdk/gdkkeynames.c)." msgstr "" #: monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "使用全屏" monster-masher-1.8.1/po/zh_HK.po0000644000175000017500000002636410547745537013423 00000000000000# traditional Chinese translation of monster-masher. # Copyright (C) 2003, 05 Free Software Foundation, Inc. # Abel Cheung , 2003, 2005. # msgid "" msgstr "" "Project-Id-Version: monster-masher 1.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-06 11:54+0100\n" "PO-Revision-Date: 2006-01-08 15:31+0800\n" "Last-Translator: Abel Cheung \n" "Language-Team: Chinese (traditional) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "成功清除第 %1 關的怪物!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "我們最後的英雄最終還是無法拯救世界..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "完成所有版圖!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "進入第 %1 關..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "嚴重錯誤" #: ../src/helpers.cpp:52 msgid "%1. Check your installation or report the problem to the distributor if you installed from a package." msgstr "%1。請檢查是否正確安裝軟件;如果是安裝套件,請向套件的發行商匯報錯誤。" #: ../src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "古時候,人類還未出現之前,這個世界是由精靈統治的。" #: ../src/intro.cpp:82 msgid "Through centuries of hard labour, only slightly eased by the levitational powers provided to them by their god, they bored out shafts and caves in the mountains." msgstr "數百年來,它們一直在山中挖洞,即使神賜給它們特殊能力,令物件可以飄浮,也減輕不了多少工作。" #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "這樣做是為了不斷搜尋珍貴的寶石和值錢的礦物..." #: ../src/intro.cpp:91 msgid "But one clan dug deeper than the others. Only its wealth was growing quicker than its greed." msgstr "但有一族精靈進入更深入的地方挖掘,然後這一族精靈擁有的財富就不斷增加。" #: ../src/intro.cpp:95 msgid "The years went by. The chief of the clan became the king of the gnomes. Thousands of men, women and children were sent to work in the deepest, most profitable mines." msgstr "經過長年累月,這一族的族長終於成為精靈之王。數以千計的精靈,不論老少,都被送到最深入,最有價值的礦洞。" #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "有一天,它們找到一個大煤礦。至少它們認為這是煤礦..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "但黑色的煤堆中,突然有一隻奇怪的生物跑出來!" #: ../src/intro.cpp:107 msgid "The first moments of surprise among the workers were replaced with horror as hundreds of other shapes broke out of the vein, crushing everything and everybody on their way." msgstr "礦工們最初感到驚訝,但不久就由驚訝變為恐慌,因為這時候有數以百計的其它怪物從礦坑中跑出來,所到之處,一切盡被摧毁。" #: ../src/intro.cpp:113 msgid "For months, the clan fought the monsters. Only a handful of messengers sent out to warn the other clans survived." msgstr "經過了幾個月,該族精靈仍然在抵抗怪物。雖然派遺了精靈通知其它族群,但派出去的精靈沒有多少個可以存活。" #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "精靈世界受到前所未有的威脅…" #: ../src/intro.cpp:121 msgid "By the black monsters made of carbon harder than steel, mechanical in their stupidity; but deadly." msgstr "在這些怪物之中,黑色的由碳組成,硬如精鋼;雖然動作笨拙,但接觸到就會致命。" #: ../src/intro.cpp:125 msgid "By the armoured monsters so well-protected that only the bed-rock was hard enough to slay them." msgstr "更有配有護甲的怪物,防禦力極高,只有岩床的岩石有足夠硬度可以碾碎它們。" #: ../src/intro.cpp:129 msgid "By the seekers, sneaky and tricky, red from the gnome blood that their spikes had spilled." msgstr "有專搜索精靈的怪物,它的速度甚難應付,身上的刺還滴着紅色的精靈血。" #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "還有藍色怪物,可以不斷複製數以千計的怪物。" #: ../src/intro.cpp:136 msgid "The only remaining hope of the gnomes was a humble levitation worker. He had found a way to mash the monsters against the mountain rocks." msgstr "大家的最後希望都寄託在一個身分低微的礦工身上。這個礦工找到可以用岩石將怪物壓扁的方法。" #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "而你就是這個希望所在。" #: ../src/intro.cpp:143 msgid "You must battle your way deep into the mountains, past each of the levels of the clan of the kings and clear the way for the rock summoners to block the vein." msgstr "你必須深入山洞,到每一族的領土作戰,並清除障礙,讓岩石召喚師順利封閉礦洞。" #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "只有這樣,精靈一族才可以繼續生存..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher:無法載入圖示“%1”。\n" #: ../src/main-window.cpp:158 #: ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "可復活:%1 次" #: ../src/main-window.cpp:164 #: ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "分數:%1" #: ../src/main-window.cpp:174 #: ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "第 %1 關" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "新遊戲(_N)" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "介紹(_I)" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "偏好設定(_P)" #: ../src/main-window.cpp:243 msgid "_About" msgstr "關於(_A)" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "結束(_Q)" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "繼續遊戲(_R)" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "重新開始這關(_S)" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "終止遊戲(_E)" #: ../src/main-window.cpp:407 msgid "Fast-paced monster mashing game for GNOME. Splat the monsters before they roll over you and take over the world of the gnomes!" msgstr "一款在 GNOME 環境運行的遊戲,目標是在它們消滅你和控制整個精靈世界之前,迅速將它們碾碎!" #: ../src/main-window.cpp:412 #: ../src/main.cpp:55 #: ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "版權所有 %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "如對翻譯有任何意見,請送一封電郵給\n" "以下地址,GNOME 翻譯隊伍會盡快回覆你:\n" "community@linuxhall.org\n" "\n" "Abel Cheung , 2003" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(復活:%1 次)" #: ../src/persistent.cpp:160 msgid "An error occurred while reading the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "讀取檔案“%1”時發生錯誤。這表示你的過關紀錄將無法保留。" #: ../src/persistent.cpp:167 msgid "Load error" msgstr "載入時發生錯誤" #: ../src/persistent.cpp:235 msgid "An error occurred while saving the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "寫入檔案“%1”時發生錯誤。這表示你的過關紀錄將無法保留。" #: ../src/persistent.cpp:242 msgid "Save error" msgstr "儲存時發生錯誤" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "難度" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "全螢幕" #: ../src/ui.glade.h:3 msgid "Level" msgstr "版圖" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "移動" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "玩者數目" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "拉石頭" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "外觀" #: ../src/ui.glade.h:8 #: ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "表示向後拉石頭的鍵" #: ../src/ui.glade.h:9 #: ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "表示向下方移動的鍵" #: ../src/ui.glade.h:10 #: ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "表示向左方移動的鍵" #: ../src/ui.glade.h:11 #: ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "表示向左下方移動的鍵" #: ../src/ui.glade.h:12 #: ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "表示向左上方移動的鍵" #: ../src/ui.glade.h:13 #: ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "表示向右方移動的鍵" #: ../src/ui.glade.h:14 #: ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "表示向右下方移動的鍵" #: ../src/ui.glade.h:15 #: ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "表示向右上方移動的鍵" #: ../src/ui.glade.h:16 #: ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "表示向上方移動的鍵" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "第 1 個玩者的按鍵" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "第 2 個玩者的按鍵" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "偏好設定" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "開始遊戲" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "在指定關數開始(_L):" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "使用全螢幕模式(_F)" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "容易(_E)" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "困難(_H)" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "中等(_M)" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "單人遊戲(_O)" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "開始(_S)" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "雙人遊戲(_T)" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "碾碎怪物,拯救精靈" #: ../monster-masher.schemas.in.h:10 msgid "The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c)." msgstr "這個字串是代表某個鍵的 GDK 名稱 (可以在 gdk/gdkkeynames.c 中找到)。" #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "使用全螢幕模式" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/po/zh_TW.po0000644000175000017500000002637210547745537013452 00000000000000# traditional Chinese translation of monster-masher. # Copyright (C) 2003, 05 Free Software Foundation, Inc. # Abel Cheung , 2003, 2005. # msgid "" msgstr "" "Project-Id-Version: monster-masher 1.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-06 11:54+0100\n" "PO-Revision-Date: 2006-01-08 15:31+0800\n" "Last-Translator: Abel Cheung \n" "Language-Team: Chinese (traditional) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/game.cpp:108 msgid "Level %1 cleared for monsters!" msgstr "成功清除第 %1 關的怪物!" #: ../src/game.cpp:140 msgid "And the last hero disappeared..." msgstr "我們最後的英雄最終還是無法拯救世界..." #: ../src/game.cpp:151 msgid "All levels liberated!" msgstr "完成所有版圖!" #: ../src/game.cpp:383 msgid "Entering level %1..." msgstr "進入第 %1 關..." #: ../src/helpers.cpp:39 msgid "Fatal error" msgstr "嚴重錯誤" #: ../src/helpers.cpp:52 msgid "%1. Check your installation or report the problem to the distributor if you installed from a package." msgstr "%1。請檢查是否正確安裝軟體;如果是安裝套件,請向套件的發行商匯報錯誤。" #: ../src/intro.cpp:79 msgid "In the old days, before man entered the world, the gnomes were abundant." msgstr "古時候,人類還未出現之前,這個世界是由精靈統治的。" #: ../src/intro.cpp:82 msgid "Through centuries of hard labour, only slightly eased by the levitational powers provided to them by their god, they bored out shafts and caves in the mountains." msgstr "數百年來,它們一直在山中挖洞,即使神賜給它們特殊能力,令物件可以飄浮,也減輕不了多少工作。" #: ../src/intro.cpp:88 msgid "Always seeking the precious stones and valuable ore..." msgstr "這樣做是為了不斷搜尋珍貴的寶石和值錢的礦物..." #: ../src/intro.cpp:91 msgid "But one clan dug deeper than the others. Only its wealth was growing quicker than its greed." msgstr "但有一族精靈進入更深入的地方挖掘,然後這一族精靈擁有的財富就不斷增加。" #: ../src/intro.cpp:95 msgid "The years went by. The chief of the clan became the king of the gnomes. Thousands of men, women and children were sent to work in the deepest, most profitable mines." msgstr "經過長年累月,這一族的族長終於成為精靈之王。數以千計的精靈,不論老少,都被送到最深入,最有價值的礦洞。" #: ../src/intro.cpp:101 msgid "Then one day a large deposit of coal was found. Or so it was thought..." msgstr "有一天,它們找到一個大煤礦。至少它們認為這是煤礦..." #: ../src/intro.cpp:104 msgid "From the black carbon, a strange creature rose!" msgstr "但黑色的煤堆中,突然有一隻奇怪的生物跑出來!" #: ../src/intro.cpp:107 msgid "The first moments of surprise among the workers were replaced with horror as hundreds of other shapes broke out of the vein, crushing everything and everybody on their way." msgstr "礦工們最初感到驚訝,但不久就由驚訝變為恐慌,因為這時候有數以百計的其它怪物從礦坑中跑出來,所到之處,一切盡被摧毁。" #: ../src/intro.cpp:113 msgid "For months, the clan fought the monsters. Only a handful of messengers sent out to warn the other clans survived." msgstr "經過了幾個月,該族精靈仍然在抵抗怪物。雖然派遺了精靈通知其它族群,但派出去的精靈沒有多少個可以存活。" #: ../src/intro.cpp:118 msgid "The world of the gnomes was threatened..." msgstr "精靈世界受到前所未有的威脅…" #: ../src/intro.cpp:121 msgid "By the black monsters made of carbon harder than steel, mechanical in their stupidity; but deadly." msgstr "在這些怪物之中,黑色的由碳組成,硬如精鋼;雖然動作笨拙,但接觸到就會致命。" #: ../src/intro.cpp:125 msgid "By the armoured monsters so well-protected that only the bed-rock was hard enough to slay them." msgstr "更有配有護甲的怪物,防禦力極高,只有岩床的岩石有足夠硬度可以碾碎它們。" #: ../src/intro.cpp:129 msgid "By the seekers, sneaky and tricky, red from the gnome blood that their spikes had spilled." msgstr "有專搜索精靈的怪物,它的速度甚難應付,身上的刺還滴著紅色的精靈血。" #: ../src/intro.cpp:133 msgid "And by the blue egg layers that multiplied their number by thousands." msgstr "還有藍色怪物,可以不斷複製數以千計的怪物。" #: ../src/intro.cpp:136 msgid "The only remaining hope of the gnomes was a humble levitation worker. He had found a way to mash the monsters against the mountain rocks." msgstr "大家的最後希望都寄託在一個身分低微的礦工身上。這個礦工找到可以用岩石將怪物壓扁的方法。" #: ../src/intro.cpp:141 msgid "That hope is you." msgstr "而您就是這個希望所在。" #: ../src/intro.cpp:143 msgid "You must battle your way deep into the mountains, past each of the levels of the clan of the kings and clear the way for the rock summoners to block the vein." msgstr "您必須深入山洞,到每一族的領土作戰,並清除障礙,讓岩石召喚師順利封閉礦洞。" #: ../src/intro.cpp:149 msgid "Only then can the gnomes survive..." msgstr "只有這樣,精靈一族才可以繼續生存..." #: ../src/main-window.cpp:72 msgid "Monster Masher: cannot load the icon \"%1\".\n" msgstr "Monster Masher:無法載入圖示“%1”。\n" #: ../src/main-window.cpp:158 #: ../src/ui.glade.h:24 #, no-c-format msgid "Resurrections: %1" msgstr "可復活:%1 次" #: ../src/main-window.cpp:164 #: ../src/ui.glade.h:26 #, no-c-format msgid "Score: %1" msgstr "分數:%1" #: ../src/main-window.cpp:174 #: ../src/ui.glade.h:18 #, no-c-format msgid "Level: %1" msgstr "第 %1 關" #: ../src/main-window.cpp:234 msgid "_New game" msgstr "新遊戲(_N)" #: ../src/main-window.cpp:237 msgid "_Introduction" msgstr "介紹(_I)" #: ../src/main-window.cpp:240 msgid "_Preferences" msgstr "偏好設定(_P)" #: ../src/main-window.cpp:243 msgid "_About" msgstr "關於(_A)" #: ../src/main-window.cpp:246 msgid "_Quit" msgstr "結束(_Q)" #: ../src/main-window.cpp:258 msgid "_Resume game" msgstr "繼續遊戲(_R)" #: ../src/main-window.cpp:261 msgid "Re_start level" msgstr "重新開始這關(_S)" #: ../src/main-window.cpp:264 msgid "_End game" msgstr "終止遊戲(_E)" #: ../src/main-window.cpp:407 msgid "Fast-paced monster mashing game for GNOME. Splat the monsters before they roll over you and take over the world of the gnomes!" msgstr "一款在 GNOME 環境運行的遊戲,目標是在它們消滅您和控制整個精靈世界之前,迅速將它們碾碎!" #: ../src/main-window.cpp:412 #: ../src/main.cpp:55 #: ../src/ui.glade.h:19 #: ../monster-masher.desktop.in.h:2 msgid "Monster Masher" msgstr "Monster Masher" #. %1 is the copyright symbol #: ../src/main-window.cpp:415 msgid "Copyright %1 2003 Ole Laursen" msgstr "版權所有 %1 2003 Ole Laursen" #. note to translators: please fill in your names and email addresses #: ../src/main-window.cpp:422 msgid "translator-credits" msgstr "" "如對翻譯有任何意見,請送一封電子郵件給\n" "以下地址,GNOME 翻譯團隊會盡快回覆您:\n" "community@linuxhall.org\n" "\n" "Abel Cheung , 2003" #. note to translators: resur. stands for resurrections; resurrections #. occur when the player is given life again after having died #. (the translation should preferably be short) #: ../src/new-game-window.cpp:170 msgid "(resur.: %1)" msgstr "(復活:%1 次)" #: ../src/persistent.cpp:160 msgid "An error occurred while reading the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "讀取檔案“%1”時發生錯誤。這表示您的過關紀錄將無法保留。" #: ../src/persistent.cpp:167 msgid "Load error" msgstr "載入時發生錯誤" #: ../src/persistent.cpp:235 msgid "An error occurred while saving the file \"%1\". This may mean that the recordings of what levels you have passed are lost." msgstr "寫入檔案“%1”時發生錯誤。這表示您的過關紀錄將無法保留。" #: ../src/persistent.cpp:242 msgid "Save error" msgstr "儲存時發生錯誤" #: ../src/ui.glade.h:1 msgid "Difficulty" msgstr "難度" #: ../src/ui.glade.h:2 msgid "Fullscreen" msgstr "全螢幕" #: ../src/ui.glade.h:3 msgid "Level" msgstr "版圖" #: ../src/ui.glade.h:4 msgid "Moving" msgstr "移動" #: ../src/ui.glade.h:5 msgid "Number of Players" msgstr "玩者數目" #: ../src/ui.glade.h:6 msgid "Pull block" msgstr "拉石頭" #: ../src/ui.glade.h:7 msgid "Appearance" msgstr "外觀" #: ../src/ui.glade.h:8 #: ../monster-masher.schemas.in.h:1 msgid "Key for activating pulling of blocks" msgstr "表示向後拉石頭的鍵" #: ../src/ui.glade.h:9 #: ../monster-masher.schemas.in.h:2 msgid "Key for moving down" msgstr "表示向下方移動的鍵" #: ../src/ui.glade.h:10 #: ../monster-masher.schemas.in.h:3 msgid "Key for moving to the left" msgstr "表示向左方移動的鍵" #: ../src/ui.glade.h:11 #: ../monster-masher.schemas.in.h:4 msgid "Key for moving to the left and down" msgstr "表示向左下方移動的鍵" #: ../src/ui.glade.h:12 #: ../monster-masher.schemas.in.h:5 msgid "Key for moving to the left and up" msgstr "表示向左上方移動的鍵" #: ../src/ui.glade.h:13 #: ../monster-masher.schemas.in.h:6 msgid "Key for moving to the right" msgstr "表示向右方移動的鍵" #: ../src/ui.glade.h:14 #: ../monster-masher.schemas.in.h:7 msgid "Key for moving to the right and down" msgstr "表示向右下方移動的鍵" #: ../src/ui.glade.h:15 #: ../monster-masher.schemas.in.h:8 msgid "Key for moving to the right and up" msgstr "表示向右上方移動的鍵" #: ../src/ui.glade.h:16 #: ../monster-masher.schemas.in.h:9 msgid "Key for moving up" msgstr "表示向上方移動的鍵" #: ../src/ui.glade.h:20 msgid "Player 1 keys" msgstr "第 1 個玩者的按鍵" #: ../src/ui.glade.h:21 msgid "Player 2 keys" msgstr "第 2 個玩者的按鍵" #: ../src/ui.glade.h:22 msgid "Preferences" msgstr "偏好設定" #: ../src/ui.glade.h:27 msgid "Start Game" msgstr "開始遊戲" #: ../src/ui.glade.h:28 msgid "Start at _level:" msgstr "在指定關數開始(_L):" #: ../src/ui.glade.h:29 msgid "Use _fullscreen mode" msgstr "使用全螢幕模式(_F)" #: ../src/ui.glade.h:30 msgid "_Easy" msgstr "容易(_E)" #: ../src/ui.glade.h:31 msgid "_Hard" msgstr "困難(_H)" #: ../src/ui.glade.h:32 msgid "_Medium" msgstr "中等(_M)" #: ../src/ui.glade.h:33 msgid "_One player" msgstr "單人遊戲(_O)" #: ../src/ui.glade.h:34 msgid "_Start" msgstr "開始(_S)" #: ../src/ui.glade.h:35 msgid "_Two players" msgstr "雙人遊戲(_T)" #: ../monster-masher.desktop.in.h:1 msgid "Mash monsters and save the gnomes" msgstr "碾碎怪物,拯救精靈" #: ../monster-masher.schemas.in.h:10 msgid "The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c)." msgstr "這個字串是代表某個鍵的 GDK 名稱 (可以在 gdk/gdkkeynames.c 中找到)。" #: ../monster-masher.schemas.in.h:11 msgid "Use fullscreen" msgstr "使用全螢幕模式" #~ msgid " " #~ msgstr " " monster-masher-1.8.1/README0000644000175000017500000000617410547745537012317 00000000000000Monster Masher -------------- Monster Masher is an action game for Gnome. The gnome world is falling apart from the attack of the evil mineral monsters, and you, a humble levitation worker, is the only remaining hope for the gnomes. The goal is to mash all monsters to clear the road for the rock summoners to block the monsters' entrance to the gnome world. The homepage (with screenshots and more information) is: http://www.cs.aau.dk/~olau/monster-masher/ The game is licensed under the GNU GPL. Requirements ------------ You need a modern Gnome desktop (i.e. at least Gnome 2.6) with the related libraries and the C++ wrappers for GTK+ and Gnome libraries, gtkmm, libgnomecanvasmm, gconfmm and libglademm. These can be fetched from http://www.gtkmm.org, or are alternatively probably available as packages from your distributor. How to play ----------- At each level, there are a number of rounded blocks which can be pushed around. There are also some wall squares (blocks in another color) which are fixed; they are the bedrock. When a monster is between two blocks, pushing one of the blocks so that it hits the other causes the monster to be mashed. The armoured monsters require the other block to be the bedrock. By pressing the pull key you can also pull a single block, provided there are no monsters around it. You are not allowed to both push blocks and pull one at the same time, though. At the first levels, there are only the ordinary black monsters (the scouting troops). At the deeper levels, you will encounter other types of monsters. If you fight your way deep enough, you will even meet the egg layers. The eggs themselves are not dangerous and can easily be squashed by pushing blocks over them. However, linger for too long and the eggs will crackle... Mashing monsters and passing levels earns you points. For each 50 points you earn, the god of the gnomes (it is the same guy who gives you your magical levitational powers) will grant you one more resurrection of your life. The red gems are full of holy anger and will kill all monsters near them when picked up, whereas the blue gems possess divine cold and freeze all monsters for a short period of time. The pink gems, the gems of love, make you invisible so you can see to your affairs untested. Some tips for how to reach the deepest level (level 30): - Be very careful when entering a new level; the monsters are scattered and it is difficult to escape. - Try to build "castles" by placing the blocks in rows with the monsters on one side and you on the other; then you can diminish the space for the monsters untested by gradually enlarging the castle. - Learn how to control the hero well; diagonal pushes are often good for safely enlarging castles. - Beware of the red seeker monsters; if there is a hole in your defence, they will find it. - Appreciate the usefulness of pulling, sometimes a true monster trap can be maintained by pushing and pulling the same block repeatedly. Contact ------- Report bugs and suggestions to the maintainer: $ cat MAINTAINERS If you enjoyed playing the game, he would very much like to hear about it! monster-masher-1.8.1/configure.ac0000644000175000017500000000235111105646561013702 00000000000000AC_INIT(src/main.cpp) AM_CONFIG_HEADER(config.h) dnl package name and version number PACKAGE=monster-masher VERSION=1.8.1 AM_INIT_AUTOMAKE($PACKAGE, $VERSION) dnl checks for programs AC_PROG_INTLTOOL AC_PROG_CXX dnl checks for libraries PKG_CHECK_MODULES(DEPS, libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0) AC_SUBST(DEPS_CFLAGS) AC_SUBST(DEPS_LIBS) dnl GConf AC_PATH_PROG(GCONFTOOL, gconftool-2, no) if test x"$GCONFTOOL" = xno; then AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf]) fi AM_GCONF_SOURCE_2 dnl i18n ALL_LINGUAS="ar az bg ca cs cy da de dz el en_CA en_GB es eu fi fr ga gu hr it ka lt lv nb ne nl oc pa pl pt pt_BR rw sl sq sr sr@Latn sv ta tr uk vi zh_CN zh_HK zh_TW" GETTEXT_PACKAGE=$PACKAGE AC_SUBST(GETTEXT_PACKAGE) AM_GLIB_GNU_GETTEXT AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", "definition of GETTEXT_PACKAGE") dnl extra stuff AM_MAINTAINER_MODE AC_C_BIGENDIAN dnl create makefiles AC_OUTPUT( Makefile src/Makefile pixmaps/Makefile sounds/Makefile po/Makefile.in dnl help/Makefile dnl help/C/Makefile ) monster-masher-1.8.1/aclocal.m40000644000175000017500000017031411105646634013262 00000000000000# generated automatically by aclocal 1.9.6 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005 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. dnl AM_GCONF_SOURCE_2 dnl Defines GCONF_SCHEMA_CONFIG_SOURCE which is where you should install schemas dnl (i.e. pass to gconftool-2 dnl Defines GCONF_SCHEMA_FILE_DIR which is a filesystem directory where dnl you should install foo.schemas files dnl AC_DEFUN([AM_GCONF_SOURCE_2], [ if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then GCONF_SCHEMA_CONFIG_SOURCE=`gconftool-2 --get-default-source` else GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE fi AC_ARG_WITH(gconf-source, [ --with-gconf-source=sourceaddress Config database for installing schema files.],GCONF_SCHEMA_CONFIG_SOURCE="$withval",) AC_SUBST(GCONF_SCHEMA_CONFIG_SOURCE) AC_MSG_RESULT([Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation]) if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' fi AC_ARG_WITH(gconf-schema-file-dir, [ --with-gconf-schema-file-dir=dir Directory for installing schema files.],GCONF_SCHEMA_FILE_DIR="$withval",) AC_SUBST(GCONF_SCHEMA_FILE_DIR) AC_MSG_RESULT([Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files]) AC_ARG_ENABLE(schemas-install, [ --disable-schemas-install Disable the schemas installation], [case ${enableval} in yes|no) ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-schemas-install) ;; esac]) AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL], [test "$enable_schemas_install" != no]) ]) # Copyright (C) 1995-2002 Free Software Foundation, Inc. # Copyright (C) 2001-2003,2004 Red Hat, Inc. # # This file is free software, distributed under the terms of the GNU # General Public License. As a special exception to the GNU General # Public License, this file may be distributed as part of a program # that contains a configuration script generated by Autoconf, under # the same distribution terms as the rest of that program. # # This file can be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU Public License # but which still want to provide support for the GNU gettext functionality. # # Macro to add for using GNU gettext. # Ulrich Drepper , 1995, 1996 # # Modified to never use included libintl. # Owen Taylor , 12/15/1998 # # Major rework to remove unused code # Owen Taylor , 12/11/2002 # # Added better handling of ALL_LINGUAS from GNU gettext version # written by Bruno Haible, Owen Taylor 5/30/3002 # # Modified to require ngettext # Matthias Clasen 08/06/2004 # # We need this here as well, since someone might use autoconf-2.5x # to configure GLib then an older version to configure a package # using AM_GLIB_GNU_GETTEXT AC_PREREQ(2.53) dnl dnl We go to great lengths to make sure that aclocal won't dnl try to pull in the installed version of these macros dnl when running aclocal in the glib directory. dnl m4_copy([AC_DEFUN],[glib_DEFUN]) m4_copy([AC_REQUIRE],[glib_REQUIRE]) dnl dnl At the end, if we're not within glib, we'll define the public dnl definitions in terms of our private definitions. dnl # GLIB_LC_MESSAGES #-------------------- glib_DEFUN([GLIB_LC_MESSAGES], [AC_CHECK_HEADERS([locale.h]) if test $ac_cv_header_locale_h = yes; then AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) if test $am_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your file defines LC_MESSAGES.]) fi fi]) # GLIB_PATH_PROG_WITH_TEST #---------------------------- dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) glib_DEFUN([GLIB_PATH_PROG_WITH_TEST], [# Extract the first word of "$2", so it can be a program name with args. set dummy $2; ac_word=[$]2 AC_MSG_CHECKING([for $ac_word]) AC_CACHE_VAL(ac_cv_path_$1, [case "[$]$1" in /*) ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in ifelse([$5], , $PATH, [$5]); do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" dnl If no 4th arg is given, leave the cache variable unset, dnl so AC_PATH_PROGS will keep looking. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ])dnl ;; esac])dnl $1="$ac_cv_path_$1" if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then AC_MSG_RESULT([$]$1) else AC_MSG_RESULT(no) fi AC_SUBST($1)dnl ]) # GLIB_WITH_NLS #----------------- glib_DEFUN([GLIB_WITH_NLS], dnl NLS is obligatory [USE_NLS=yes AC_SUBST(USE_NLS) gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= AC_CHECK_HEADER(libintl.h, [gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc, [AC_TRY_LINK([ #include ], [return !ngettext ("","", 1)], gt_cv_func_ngettext_libc=yes, gt_cv_func_ngettext_libc=no) ]) if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc, [AC_TRY_LINK([ #include ], [return !dgettext ("","")], gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no) ]) fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CHECK_FUNCS(bind_textdomain_codeset) fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then AC_CHECK_LIB(intl, bindtextdomain, [AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dgettext, gt_cv_func_dgettext_libintl=yes)])]) if test "$gt_cv_func_dgettext_libintl" != "yes" ; then AC_MSG_CHECKING([if -liconv is needed to use gettext]) AC_MSG_RESULT([]) AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dcgettext, [gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv], :,-liconv)], :,-liconv) fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset AC_CHECK_FUNCS(bind_textdomain_codeset) LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then AC_DEFINE(HAVE_GETTEXT,1, [Define if the GNU gettext() function is already present or preinstalled.]) GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" AC_CHECK_FUNCS(dcgettext) MSGFMT_OPTS= AC_MSG_CHECKING([if msgfmt accepts -c]) GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[ msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" ], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) AC_SUBST(MSGFMT_OPTS) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) AC_TRY_LINK(, [extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr], [CATOBJEXT=.gmo DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share and dnl and CATOBJEXT=.gmo in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [CATOBJEXT=.gmo DATADIRNAME=share], [CATOBJEXT=.mo DATADIRNAME=lib]) ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac]) LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi ]) if test "$gt_cv_have_gettext" = "yes" ; then AC_DEFINE(ENABLE_NLS, 1, [always defined to indicate that i18n is enabled]) fi dnl Test whether we really found GNU xgettext. if test "$XGETTEXT" != ":"; then dnl If it is not GNU xgettext we define it as : so that the dnl Makefiles still can work. if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else AC_MSG_RESULT( [found xgettext program is not GNU xgettext; ignore it]) XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po AC_OUTPUT_COMMANDS( [case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac]) dnl These rules are solely for the distribution goal. While doing this dnl we only have to keep exactly one list of the available catalogs dnl in configure.in. for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done dnl Make all variables we use known to autoconf. AC_SUBST(CATALOGS) AC_SUBST(CATOBJEXT) AC_SUBST(DATADIRNAME) AC_SUBST(GMOFILES) AC_SUBST(INSTOBJEXT) AC_SUBST(INTLLIBS) AC_SUBST(PO_IN_DATADIR_TRUE) AC_SUBST(PO_IN_DATADIR_FALSE) AC_SUBST(POFILES) AC_SUBST(POSUB) ]) # AM_GLIB_GNU_GETTEXT # ------------------- # Do checks necessary for use of gettext. If a suitable implementation # of gettext is found in either in libintl or in the C library, # it will set INTLLIBS to the libraries needed for use of gettext # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST() # on various variables needed by the Makefile.in.in installed by # glib-gettextize. dnl glib_DEFUN([GLIB_GNU_GETTEXT], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_HEADER_STDC])dnl GLIB_LC_MESSAGES GLIB_WITH_NLS if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else AC_MSG_CHECKING(for catalogs to be installed) NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS AC_MSG_RESULT($LINGUAS) fi dnl Construct list of names of catalog files to be constructed. if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly dnl find the mkinstalldirs script in another subdir but ($top_srcdir). dnl Try to locate is. MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi AC_SUBST(MKINSTALLDIRS) dnl Generate list of files to be processed by xgettext which will dnl be included in po/Makefile. test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES ]) # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE) # ------------------------------- # Define VARIABLE to the location where catalog files will # be installed by po/Makefile. glib_DEFUN([GLIB_DEFINE_LOCALEDIR], [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl glib_save_prefix="$prefix" glib_save_exec_prefix="$exec_prefix" glib_save_datarootdir="$datarootdir" test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=$prefix datarootdir=`eval echo "${datarootdir}"` if test "x$CATOBJEXT" = "x.mo" ; then localedir=`eval echo "${libdir}/locale"` else localedir=`eval echo "${datadir}/locale"` fi prefix="$glib_save_prefix" exec_prefix="$glib_save_exec_prefix" datarootdir="$glib_save_datarootdir" AC_DEFINE_UNQUOTED($1, "$localedir", [Define the location where the catalogs will be installed]) ]) dnl dnl Now the definitions that aclocal will find dnl ifdef(glib_configure_in,[],[ AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) ])dnl # GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL]) # # Create a temporary file with TEST-FILE as its contents and pass the # file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with # 0 and perform ACTION-IF-FAIL for any other exit status. AC_DEFUN([GLIB_RUN_PROG], [cat >conftest.foo <<_ACEOF $2 _ACEOF if AC_RUN_LOG([$1 conftest.foo]); then m4_ifval([$3], [$3], [:]) m4_ifvaln([$4], [else $4])dnl echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD fi]) dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) # serial 40 IT_PROG_INTLTOOL AC_DEFUN([IT_PROG_INTLTOOL], [AC_PREREQ([2.50])dnl case "$am__api_version" in 1.[01234]) AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) ;; *) ;; esac if test -n "$1"; then AC_MSG_CHECKING([for intltool >= $1]) INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` [INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` ] AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) fi AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) fi INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' AC_SUBST(INTLTOOL_DESKTOP_RULE) AC_SUBST(INTLTOOL_DIRECTORY_RULE) AC_SUBST(INTLTOOL_KEYS_RULE) AC_SUBST(INTLTOOL_PROP_RULE) AC_SUBST(INTLTOOL_OAF_RULE) AC_SUBST(INTLTOOL_PONG_RULE) AC_SUBST(INTLTOOL_SERVER_RULE) AC_SUBST(INTLTOOL_SHEET_RULE) AC_SUBST(INTLTOOL_SOUNDLIST_RULE) AC_SUBST(INTLTOOL_UI_RULE) AC_SUBST(INTLTOOL_XAM_RULE) AC_SUBST(INTLTOOL_KBD_RULE) AC_SUBST(INTLTOOL_XML_RULE) AC_SUBST(INTLTOOL_XML_NOMERGE_RULE) AC_SUBST(INTLTOOL_CAVES_RULE) AC_SUBST(INTLTOOL_SCHEMAS_RULE) AC_SUBST(INTLTOOL_THEME_RULE) AC_SUBST(INTLTOOL_SERVICE_RULE) AC_SUBST(INTLTOOL_POLICY_RULE) # Check the gettext tools to make sure they are GNU AC_PATH_PROG(XGETTEXT, xgettext) AC_PATH_PROG(MSGMERGE, msgmerge) AC_PATH_PROG(MSGFMT, msgfmt) if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi AC_PATH_PROG(INTLTOOL_PERL, [perl]) if test -z "$INTLTOOL_PERL"; then AC_MSG_ERROR([perl not found; required for intltool]) fi if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then AC_MSG_ERROR([perl 5.x required for intltool]) fi if test "x$2" != "xno-xml"; then AC_MSG_CHECKING([for XML::Parser]) if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then AC_MSG_RESULT([ok]) else AC_MSG_ERROR([XML::Parser perl module is required for intltool]) fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile AC_SUBST(ALL_LINGUAS) # Set DATADIRNAME correctly if it is not set yet # (copied from glib-gettext.m4) if test -z "$DATADIRNAME"; then AC_LINK_IFELSE( [AC_LANG_PROGRAM([[]], [[extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr]])], [DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share dnl in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [DATADIRNAME=share], [DATADIRNAME=lib]) ;; *) [DATADIRNAME=lib] ;; esac]) fi AC_SUBST(DATADIRNAME) IT_PO_SUBDIR([po]) ]) # IT_PO_SUBDIR(DIRNAME) # --------------------- # All po subdirs have to be declared with this macro; the subdir "po" is # declared by IT_PROG_INTLTOOL. # AC_DEFUN([IT_PO_SUBDIR], [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. dnl dnl The following CONFIG_COMMANDS should be exetuted at the very end dnl of config.status. AC_CONFIG_COMMANDS_PRE([ AC_CONFIG_COMMANDS([$1/stamp-it], [ rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" >"$1/stamp-it.tmp" [sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" ] if test ! -f "$1/Makefile"; then AC_MSG_ERROR([$1/Makefile is not ready.]) fi mv "$1/Makefile" "$1/Makefile.tmp" [sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r $1/POTFILES } ' "$1/Makefile.tmp" >"$1/Makefile"] rm -f "$1/Makefile.tmp" mv "$1/stamp-it.tmp" "$1/stamp-it" ]) ])dnl ]) # deprecated macros AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) # A hint is needed for aclocal from Automake <= 1.9.4: # AC_DEFUN([AC_PROG_INTLTOOL], ...) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- # # Copyright © 2004 Scott James Remnant . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # PKG_PROG_PKG_CONFIG([MIN-VERSION]) # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi if test -n "$PKG_CONFIG"; then _pkg_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG="" fi fi[]dnl ])# PKG_PROG_PKG_CONFIG # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # # Check to see whether a particular set of modules exists. Similar # to PKG_CHECK_MODULES(), but does not set variables or print errors. # # # Similar to PKG_CHECK_MODULES, make sure that the first instance of # this or PKG_CHECK_MODULES is called, or make sure to call # PKG_CHECK_EXISTS manually # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then m4_ifval([$2], [$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], [if test -n "$PKG_CONFIG"; then if test -n "$$1"; then pkg_cv_[]$1="$$1" else PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], [pkg_failed=yes]) fi else pkg_failed=untried fi[]dnl ])# _PKG_CONFIG # _PKG_SHORT_ERRORS_SUPPORTED # ----------------------------- AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi[]dnl ])# _PKG_SHORT_ERRORS_SUPPORTED # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # # # Note that if there is a possibility the first call to # PKG_CHECK_MODULES might not happen, you should be sure to include an # explicit call to PKG_PROG_PKG_CONFIG in your configure.ac # # # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no AC_MSG_CHECKING([for $1]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS and $1[]_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.]) if test $pkg_failed = yes; then _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"` else $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD ifelse([$4], , [AC_MSG_ERROR(dnl [Package requirements ($2) were not met: $$1_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. _PKG_TEXT ])], [AC_MSG_RESULT([no]) $4]) elif test $pkg_failed = untried; then ifelse([$4], , [AC_MSG_FAILURE(dnl [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT To get pkg-config, see .])], [$4]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) ifelse([$3], , :, [$3]) fi[]dnl ])# PKG_CHECK_MODULES # Copyright (C) 2002, 2003, 2005 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. AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION so it can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.9.6])]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001, 2003, 2005 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], [dnl Rely on autoconf to set up CDPATH properly. AC_PREREQ([2.50])dnl # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005 # 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. # serial 7 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ(2.52)dnl ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE]) AC_SUBST([$1_FALSE]) 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, 2000, 2001, 2002, 2003, 2004, 2005 # 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. # serial 8 # 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", "GCJ", or "OBJC". # 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 ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$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'. 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 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 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in 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 ;; none) break ;; esac # 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. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} 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, [ --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH]) ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 # 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. #serial 3 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # So let's grep whole file. if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ])# _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. FIXME. This creates each `.P' file that we will # 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" ac_aux_dir="$ac_aux_dir"]) ]) # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 # 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. # serial 8 # AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 # 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. # serial 12 # 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. # 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.58])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 # test to see if srcdir already configured if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) 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], [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])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) AM_PROG_INSTALL_SH AM_PROG_INSTALL_STRIP AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. 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)], [define([AC_PROG_CC], defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl ]) ]) # 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_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $1 | $1:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001, 2003, 2005 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 install_sh=${install_sh-"$am_aux_dir/install-sh"} AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 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. # serial 2 # 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, 1998, 2000, 2001, 2002, 2003, 2004, 2005 # 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. # serial 4 AC_DEFUN([AM_MAINTAINER_MODE], [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) dnl maintainer-mode is disabled by default AC_ARG_ENABLE(maintainer-mode, [ --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer], USE_MAINTAINER_MODE=$enableval, USE_MAINTAINER_MODE=no) AC_MSG_RESULT([$USE_MAINTAINER_MODE]) AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes]) MAINT=$MAINTAINER_MODE_TRUE AC_SUBST(MAINT)dnl ] ) AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005 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. # serial 3 # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo done .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # We grep out `Entering directory' and `Leaving directory' # messages which can occur if `w' ends up in MAKEFLAGS. # In particular we don't look at `^make:' because GNU make might # be invoked under some other name (usually "gmake"), in which # case it prints its new name instead of `make'. if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then am__include=include am__quote= _am_result=GNU fi # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then am__include=.include am__quote="\"" _am_result=BSD fi fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005 # 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. # serial 4 # 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 supports --run. # If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= AC_MSG_WARN([`missing' script is too old or missing]) fi ]) # Copyright (C) 2003, 2004, 2005 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_MKDIR_P # --------------- # Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise. # # Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories # created by `make install' are always world readable, even if the # installer happens to have an overly restrictive umask (e.g. 077). # This was a mistake. There are at least two reasons why we must not # use `-m 0755': # - it causes special bits like SGID to be ignored, # - it may be too restrictive (some setups expect 775 directories). # # Do not use -m 0755 and let people choose whatever they expect by # setting umask. # # We cannot accept any implementation of `mkdir' that recognizes `-p'. # Some implementations (such as Solaris 8's) are not thread-safe: if a # parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c' # concurrently, both version can detect that a/ is missing, but only # one can create it and the other will error out. Consequently we # restrict ourselves to GNU make (using the --version option ensures # this.) AC_DEFUN([AM_PROG_MKDIR_P], [if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then # We used to keeping the `.' as first argument, in order to # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) # where $(somedir) is conditionally defined. However this is wrong # for two reasons: # 1. if the package is installed by a user who cannot write `.' # make install will fail, # 2. the above comment should most certainly read # $(mkdir_p) $(DESTDIR)$(somedir) # so it does not work when $(somedir) is undefined and # $(DESTDIR) is not. # To support the latter case, we have to write # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), # so the `.' trick is pointless. mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. for d in ./-p ./--version; do test -d $d && rmdir $d done # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. if test -f "$ac_aux_dir/mkinstalldirs"; then mkdir_p='$(mkinstalldirs)' else mkdir_p='$(install_sh) -d' fi fi AC_SUBST([mkdir_p])]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005 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. # serial 3 # _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], [AC_FOREACH([_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])]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 # 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. # serial 4 # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 echo timestamp > conftest.file # 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 ( 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 rm -f conftest.file 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 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)]) # Copyright (C) 2001, 2003, 2005 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="\${SHELL} \$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005 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. # serial 2 # _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. AM_MISSING_PROG([AMTAR], [tar]) m4_if([$1], [v7], [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and # Solaris sh will not grok spaces in the rhs of `-'. 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 /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 monster-masher-1.8.1/Makefile.am0000644000175000017500000000162310547745537013465 00000000000000SUBDIRS = pixmaps sounds src po #help # desktop entry desktopdir = $(datadir)/applications desktop_in_files = $(PACKAGE).desktop.in desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) @INTLTOOL_DESKTOP_RULE@ # GConf schema schema_in_files = monster-masher.schemas.in schemadir = $(sysconfdir)/gconf/schemas schema_DATA = $(schema_in_files:.schemas.in=.schemas) @INTLTOOL_SCHEMAS_RULE@ # icon icondir = $(datadir)/pixmaps icon_DATA = $(PACKAGE).png pixmapdir = $(datadir)/$(PACKAGE)/pixmaps/ EXTRA_DIST = $(desktop_in_files) $(schema_in_files) \ $(desktop_DATA) $(icon_DATA) \ intltool-merge.in intltool-extract.in intltool-update.in \ MAINTAINERS install-data-local: if test -z "$(DESTDIR)" ; then \ for p in $(schema_DATA) ; do \ GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $(top_builddir)/$$p; \ done \ fi monster-masher-1.8.1/Makefile.in0000644000175000017500000005667711105646646013511 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 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@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = . am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ 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 = : subdir = . DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \ depcomp install-sh missing mkinstalldirs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-exec-recursive install-info-recursive \ install-recursive installcheck-recursive installdirs-recursive \ pdf-recursive ps-recursive uninstall-info-recursive \ uninstall-recursive 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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(desktopdir)" "$(DESTDIR)$(icondir)" \ "$(DESTDIR)$(schemadir)" desktopDATA_INSTALL = $(INSTALL_DATA) iconDATA_INSTALL = $(INSTALL_DATA) schemaDATA_INSTALL = $(INSTALL_DATA) DATA = $(desktop_DATA) $(icon_DATA) $(schema_DATA) ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ { test ! -d $(distdir) \ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -fr $(distdir); }; } DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DEPS_CFLAGS = @DEPS_CFLAGS@ DEPS_LIBS = @DEPS_LIBS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMAS_INSTALL_FALSE = @GCONF_SCHEMAS_INSTALL_FALSE@ GCONF_SCHEMAS_INSTALL_TRUE = @GCONF_SCHEMAS_INSTALL_TRUE@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ 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_alias = @build_alias@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ 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@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ SUBDIRS = pixmaps sounds src po #help # desktop entry desktopdir = $(datadir)/applications desktop_in_files = $(PACKAGE).desktop.in desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) # GConf schema schema_in_files = monster-masher.schemas.in schemadir = $(sysconfdir)/gconf/schemas schema_DATA = $(schema_in_files:.schemas.in=.schemas) # icon icondir = $(datadir)/pixmaps icon_DATA = $(PACKAGE).png pixmapdir = $(datadir)/$(PACKAGE)/pixmaps/ EXTRA_DIST = $(desktop_in_files) $(schema_in_files) \ $(desktop_DATA) $(icon_DATA) \ intltool-merge.in intltool-extract.in intltool-update.in \ MAINTAINERS all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: am--refresh: @: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \ cd $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) config.h: stamp-h1 @if test ! -f $@; then \ rm -f stamp-h1; \ $(MAKE) stamp-h1; \ else :; fi 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) cd $(top_srcdir) && $(AUTOHEADER) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 uninstall-info-am: install-desktopDATA: $(desktop_DATA) @$(NORMAL_INSTALL) test -z "$(desktopdir)" || $(mkdir_p) "$(DESTDIR)$(desktopdir)" @list='$(desktop_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(desktopDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(desktopdir)/$$f'"; \ $(desktopDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(desktopdir)/$$f"; \ done uninstall-desktopDATA: @$(NORMAL_UNINSTALL) @list='$(desktop_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(desktopdir)/$$f'"; \ rm -f "$(DESTDIR)$(desktopdir)/$$f"; \ done install-iconDATA: $(icon_DATA) @$(NORMAL_INSTALL) test -z "$(icondir)" || $(mkdir_p) "$(DESTDIR)$(icondir)" @list='$(icon_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(iconDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(icondir)/$$f'"; \ $(iconDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(icondir)/$$f"; \ done uninstall-iconDATA: @$(NORMAL_UNINSTALL) @list='$(icon_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(icondir)/$$f'"; \ rm -f "$(DESTDIR)$(icondir)/$$f"; \ done install-schemaDATA: $(schema_DATA) @$(NORMAL_INSTALL) test -z "$(schemadir)" || $(mkdir_p) "$(DESTDIR)$(schemadir)" @list='$(schema_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(schemaDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(schemadir)/$$f'"; \ $(schemaDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(schemadir)/$$f"; \ done uninstall-schemaDATA: @$(NORMAL_UNINSTALL) @list='$(schema_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(schemadir)/$$f'"; \ rm -f "$(DESTDIR)$(schemadir)/$$f"; \ done # 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. $(RECURSIVE_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; 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; \ (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" mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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 || \ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) $(am__remove_distdir) mkdir $(distdir) $(mkdir_p) $(distdir)/po @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 \ test -d "$(distdir)/$$subdir" \ || $(mkdir_p) "$(distdir)/$$subdir" \ || exit 1; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ distdir) \ || exit 1; \ fi; \ done -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -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 $(SHELL) $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r $(distdir) dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__remove_distdir) dist dist-all: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__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*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir); chmod a+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && cd $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(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 $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' distuninstallcheck: @cd $(distuninstallcheck_dir) \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { 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 check: check-recursive all-am: Makefile $(DATA) config.h installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(desktopdir)" "$(DESTDIR)$(icondir)" "$(DESTDIR)$(schemadir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) 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-generic mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-hdr distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive info: info-recursive info-am: install-data-am: install-data-local install-desktopDATA \ install-iconDATA install-schemaDATA install-exec-am: install-info: install-info-recursive install-man: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-desktopDATA uninstall-iconDATA \ uninstall-info-am uninstall-schemaDATA uninstall-info: uninstall-info-recursive .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ check-am clean clean-generic clean-recursive ctags \ ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \ dist-tarZ dist-zip distcheck distclean distclean-generic \ distclean-hdr distclean-recursive distclean-tags \ distcleancheck distdir distuninstallcheck dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-data-local install-desktopDATA \ install-exec install-exec-am install-iconDATA install-info \ install-info-am install-man install-schemaDATA install-strip \ installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic \ maintainer-clean-recursive mostlyclean mostlyclean-generic \ mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am uninstall-desktopDATA \ uninstall-iconDATA uninstall-info-am uninstall-schemaDATA @INTLTOOL_DESKTOP_RULE@ @INTLTOOL_SCHEMAS_RULE@ install-data-local: if test -z "$(DESTDIR)" ; then \ for p in $(schema_DATA) ; do \ GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $(top_builddir)/$$p; \ done \ 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: monster-masher-1.8.1/config.h.in0000644000175000017500000000410311105646676013443 00000000000000/* config.h.in. Generated from configure.ac by autoheader. */ /* always defined to indicate that i18n is enabled */ #undef ENABLE_NLS /* "definition of GETTEXT_PACKAGE" */ #undef GETTEXT_PACKAGE /* Define to 1 if you have the `bind_textdomain_codeset' function. */ #undef HAVE_BIND_TEXTDOMAIN_CODESET /* Define to 1 if you have the `dcgettext' function. */ #undef HAVE_DCGETTEXT /* Define if the GNU gettext() function is already present or preinstalled. */ #undef HAVE_GETTEXT /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define if your file defines LC_MESSAGES. */ #undef HAVE_LC_MESSAGES /* Define to 1 if you have the header file. */ #undef HAVE_LOCALE_H /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* 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 version of this package. */ #undef PACKAGE_VERSION /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Version number of package */ #undef VERSION /* Define to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel and VAX). */ #undef WORDS_BIGENDIAN monster-masher-1.8.1/configure0000755000175000017500000075347211105646651013344 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61. # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006 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=: # Zsh 3.x and 4.x performs 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 # PATH needs CR # 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 # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false 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.) as_nl=' ' IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. 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 echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 { (exit 1); exit 1; } fi # Work around bugs in pre-3.0 UWIN ksh. for as_var in ENV MAIL MAILPATH do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var fi done # Required to use basename. 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 # Name of the executable. as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # CDPATH. $as_unset CDPATH if test "x$CONFIG_SHELL" = x; then if (eval ":") 2>/dev/null; then as_have_required=yes else as_have_required=no fi if test $as_have_required = yes && (eval ": (as_func_return () { (exit \$1) } as_func_success () { as_func_return 0 } as_func_failure () { as_func_return 1 } as_func_ret_success () { return 0 } as_func_ret_failure () { return 1 } exitcode=0 if as_func_success; then : else exitcode=1 echo as_func_success failed. fi if as_func_failure; then exitcode=1 echo as_func_failure succeeded. fi if as_func_ret_success; then : else exitcode=1 echo as_func_ret_success failed. fi if as_func_ret_failure; then exitcode=1 echo as_func_ret_failure succeeded. fi if ( set x; as_func_ret_success y && test x = \"\$1\" ); then : else exitcode=1 echo positional parameters were not saved. fi test \$exitcode = 0) || { (exit 1); exit 1; } ( as_lineno_1=\$LINENO as_lineno_2=\$LINENO test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } ") 2> /dev/null; then : else as_candidate_shells= as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. case $as_dir in /*) for as_base in sh bash ksh sh5; do as_candidate_shells="$as_candidate_shells $as_dir/$as_base" done;; esac done IFS=$as_save_IFS for as_shell in $as_candidate_shells $SHELL; do # Try only shells that exist, to save several forks. if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { ("$as_shell") 2> /dev/null <<\_ASEOF if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs 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 : _ASEOF }; then CONFIG_SHELL=$as_shell as_have_required=yes if { "$as_shell" 2> /dev/null <<\_ASEOF if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs 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_func_return () { (exit $1) } as_func_success () { as_func_return 0 } as_func_failure () { as_func_return 1 } as_func_ret_success () { return 0 } as_func_ret_failure () { return 1 } exitcode=0 if as_func_success; then : else exitcode=1 echo as_func_success failed. fi if as_func_failure; then exitcode=1 echo as_func_failure succeeded. fi if as_func_ret_success; then : else exitcode=1 echo as_func_ret_success failed. fi if as_func_ret_failure; then exitcode=1 echo as_func_ret_failure succeeded. fi if ( set x; as_func_ret_success y && test x = "$1" ); then : else exitcode=1 echo positional parameters were not saved. fi test $exitcode = 0) || { (exit 1); exit 1; } ( as_lineno_1=$LINENO as_lineno_2=$LINENO test "x$as_lineno_1" != "x$as_lineno_2" && test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } _ASEOF }; then break fi fi done if test "x$CONFIG_SHELL" != x; then for as_var in BASH_ENV ENV do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var done export CONFIG_SHELL exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} fi if test $as_have_required = no; then echo This script requires a shell more modern than all the echo shells that I found on your system. Please install a echo modern shell, or manually run the script under such a echo shell if you do have one. { (exit 1); exit 1; } fi fi fi (eval "as_func_return () { (exit \$1) } as_func_success () { as_func_return 0 } as_func_failure () { as_func_return 1 } as_func_ret_success () { return 0 } as_func_ret_failure () { return 1 } exitcode=0 if as_func_success; then : else exitcode=1 echo as_func_success failed. fi if as_func_failure; then exitcode=1 echo as_func_failure succeeded. fi if as_func_ret_success; then : else exitcode=1 echo as_func_ret_success failed. fi if as_func_ret_failure; then exitcode=1 echo as_func_ret_failure succeeded. fi if ( set x; as_func_ret_success y && test x = \"\$1\" ); then : else exitcode=1 echo positional parameters were not saved. fi test \$exitcode = 0") || { echo No shell found that supports shell functions. echo Please tell autoconf@gnu.org about your system, echo including any error possibly output before this echo message } as_lineno_1=$LINENO as_lineno_2=$LINENO test "x$as_lineno_1" != "x$as_lineno_2" && test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line after each line using $LINENO; the second 'sed' # does the real work. The second script uses 'N' to pair each # line-number line with the line containing $LINENO, and appends # trailing '-' during substitution so that $LINENO is not a special # case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # scripts with optimization help from Paolo Bonzini. 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" || { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # 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 } if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in -n*) case `echo 'x\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. *) ECHO_C='\c';; esac;; *) ECHO_N='-n';; esac if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi 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 fi echo >conf$$.file 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 -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' 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=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi if test -x / >/dev/null 2>&1; then as_test_x='test -x' else if ls -dL / >/dev/null 2>&1; then as_ls_L_option=L else as_ls_L_option= fi as_test_x=' eval sh -c '\'' if test -d "$1"; then test -d "$1/."; else case $1 in -*)set "./$1";; esac; case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in ???[sx]*):;;*)false;;esac;fi '\'' sh ' fi as_executable_p=$as_test_x # 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 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, 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= SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME= PACKAGE_TARNAME= PACKAGE_VERSION= PACKAGE_STRING= PACKAGE_BUGREPORT= ac_unique_file="src/main.cpp" # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef STDC_HEADERS # include # include #else # ifdef HAVE_STDLIB_H # include # endif #endif #ifdef HAVE_STRING_H # if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir localstatedir includedir oldincludedir docdir infodir htmldir dvidir pdfdir psdir libdir localedir mandir DEFS ECHO_C ECHO_N ECHO_T LIBS build_alias host_alias target_alias INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar INTLTOOL_UPDATE INTLTOOL_MERGE INTLTOOL_EXTRACT INTLTOOL_DESKTOP_RULE INTLTOOL_DIRECTORY_RULE INTLTOOL_KEYS_RULE INTLTOOL_PROP_RULE INTLTOOL_OAF_RULE INTLTOOL_PONG_RULE INTLTOOL_SERVER_RULE INTLTOOL_SHEET_RULE INTLTOOL_SOUNDLIST_RULE INTLTOOL_UI_RULE INTLTOOL_XAM_RULE INTLTOOL_KBD_RULE INTLTOOL_XML_RULE INTLTOOL_XML_NOMERGE_RULE INTLTOOL_CAVES_RULE INTLTOOL_SCHEMAS_RULE INTLTOOL_THEME_RULE INTLTOOL_SERVICE_RULE INTLTOOL_POLICY_RULE XGETTEXT MSGMERGE MSGFMT INTLTOOL_PERL ALL_LINGUAS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE DATADIRNAME CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE PKG_CONFIG DEPS_CFLAGS DEPS_LIBS GCONFTOOL GCONF_SCHEMA_CONFIG_SOURCE GCONF_SCHEMA_FILE_DIR GCONF_SCHEMAS_INSTALL_TRUE GCONF_SCHEMAS_INSTALL_FALSE GETTEXT_PACKAGE CPP GREP EGREP USE_NLS MSGFMT_OPTS GMSGFMT CATALOGS CATOBJEXT GMOFILES INSTOBJEXT INTLLIBS PO_IN_DATADIR_TRUE PO_IN_DATADIR_FALSE POFILES POSUB MKINSTALLDIRS MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBOBJS LTLIBOBJS' ac_subst_files='' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CXX CXXFLAGS CCC PKG_CONFIG DEPS_CFLAGS DEPS_LIBS CPP' # Initialize some variables set by options. ac_init_help= ac_init_version=false # 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}' 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=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_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` eval enable_$ac_feature=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_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` eval enable_$ac_feature=\$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_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package | sed 's/[-.]/_/g'` eval with_$ac_package=\$ac_optarg ;; -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package | sed 's/[-.]/_/g'` eval with_$ac_package=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 ;; -*) { echo "$as_me: error: unrecognized option: $ac_option Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && 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'` { echo "$as_me: error: missing argument to $ac_option" >&2 { (exit 1); exit 1; }; } fi # Be sure to have absolute directory names. 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 case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; } 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 echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used." >&2 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 .` || { echo "$as_me: error: Working directory cannot be determined" >&2 { (exit 1); exit 1; }; } test "X$ac_ls_di" = "X$ac_pwd_ls_di" || { echo "$as_me: error: pwd does not report name of working directory" >&2 { (exit 1); exit 1; }; } # 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 -- "$0" || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$0" : 'X\(//\)[^/]' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X"$0" | 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 .." { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2 { (exit 1); exit 1; }; } 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 this package 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/PACKAGE] --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 _ACEOF fi if test -n "$ac_init_help"; then cat <<\_ACEOF Optional Features: --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors --disable-schemas-install Disable the schemas installation --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-gconf-source=sourceaddress Config database for installing schema files. --with-gconf-schema-file-dir=dir Directory for installing schema files. Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I if you have headers in a nonstandard directory CXX C++ compiler command CXXFLAGS C++ compiler flags PKG_CONFIG path to pkg-config utility DEPS_CFLAGS C compiler flags for DEPS, overriding pkg-config DEPS_LIBS linker flags for DEPS, overriding pkg-config 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. _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" || continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`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 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 configure generated by GNU Autoconf 2.61 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 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 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 $as_me, which was generated by GNU Autoconf 2.61. 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=. 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=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; 2) ac_configure_args1="$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 ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac done done $as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export 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 cat <<\_ASBOX ## ---------------- ## ## Cache variables. ## ## ---------------- ## _ASBOX 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_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( *) $as_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 cat <<\_ASBOX ## ----------------- ## ## Output variables. ## ## ----------------- ## _ASBOX echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX ## ------------------- ## ## File substitutions. ## ## ------------------- ## _ASBOX echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then cat <<\_ASBOX ## ----------- ## ## confdefs.h. ## ## ----------- ## _ASBOX echo cat confdefs.h echo fi test "$ac_signal" != 0 && echo "$as_me: caught signal $ac_signal" 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'; { (exit 1); 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 # 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 # Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. if test -n "$CONFIG_SITE"; then set x "$CONFIG_SITE" elif test "x$prefix" != xNONE; then set x "$prefix/share/config.site" "$prefix/etc/config.site" else set x "$ac_default_prefix/share/config.site" \ "$ac_default_prefix/etc/config.site" fi shift for ac_site_file do if test -r "$ac_site_file"; then { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" 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. if test -f "$cache_file"; then { echo "$as_me:$LINENO: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { echo "$as_me:$LINENO: creating cache $cache_file" >&5 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,) { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 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 { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 echo "$as_me: former value: $ac_old_val" >&2;} { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 echo "$as_me: current value: $ac_new_val" >&2;} ac_cache_corrupted=: fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *\'*) ac_arg=$ac_var=`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. *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 echo "$as_me: error: changes in the environment can compromise the build" >&2;} { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} { (exit 1); exit 1; }; } 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_config_headers="$ac_config_headers config.h" PACKAGE=monster-masher VERSION=1.8.1 am__api_version="1.9" ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; 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 { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5 echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;} { (exit 1); exit 1; }; } 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. # 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. { echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$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 ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi done done ;; esac done IFS=$as_save_IFS 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 { echo "$as_me:$LINENO: result: $INSTALL" >&5 echo "${ECHO_T}$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' { echo "$as_me:$LINENO: checking whether build environment is sane" >&5 echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6; } # Just in case sleep 1 echo timestamp > conftest.file # 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 ( 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 rm -f conftest.file 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". { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&5 echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&2;} { (exit 1); exit 1; }; } fi test "$2" = conftest.file ) then # Ok. : else { { echo "$as_me:$LINENO: error: newly created file is older than distributed files! Check your system clock" >&5 echo "$as_me: error: newly created file is older than distributed files! Check your system clock" >&2;} { (exit 1); exit 1; }; } fi { echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; } 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 $. echo might interpret backslashes. # By default was `s,x,x', remove it if useless. cat <<\_ACEOF >conftest.sed s/[\\$]/&&/g;s/;s,x,x,$// _ACEOF program_transform_name=`echo $program_transform_name | sed -f conftest.sed` rm -f conftest.sed # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then # We used to keeping the `.' as first argument, in order to # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) # where $(somedir) is conditionally defined. However this is wrong # for two reasons: # 1. if the package is installed by a user who cannot write `.' # make install will fail, # 2. the above comment should most certainly read # $(mkdir_p) $(DESTDIR)$(somedir) # so it does not work when $(somedir) is undefined and # $(DESTDIR) is not. # To support the latter case, we have to write # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), # so the `.' trick is pointless. mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. for d in ./-p ./--version; do test -d $d && rmdir $d done # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. if test -f "$ac_aux_dir/mkinstalldirs"; then mkdir_p='$(mkinstalldirs)' else mkdir_p='$(install_sh) -d' fi fi 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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_AWK+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $AWK" >&5 echo "${ECHO_T}$AWK" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi test -n "$AWK" && break done { echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; } set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&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 { echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; } SET_MAKE= else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}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 # test to see if srcdir already configured if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} { (exit 1); exit 1; }; } 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=$PACKAGE VERSION=$VERSION 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"} install_sh=${install_sh-"$am_aux_dir/install-sh"} # 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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $STRIP" >&5 echo "${ECHO_T}$STRIP" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 echo "${ECHO_T}$ac_ct_STRIP" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&5 echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" # We need awk for the "check" target. The system "awk" is bad on # some platforms. # Always define AMTAR for backward compatibility. AMTAR=${AMTAR-"${am_missing_run}tar"} am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo done .PHONY: am__doit END # If we don't find an include directive, just comment out the code. { echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # We grep out `Entering directory' and `Leaving directory' # messages which can occur if `w' ends up in MAKEFLAGS. # In particular we don't look at `^make:' because GNU make might # be invoked under some other name (usually "gmake"), in which # case it prints its new name instead of `make'. if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then am__include=include am__quote= _am_result=GNU fi # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then am__include=.include am__quote="\"" _am_result=BSD fi fi { echo "$as_me:$LINENO: result: $_am_result" >&5 echo "${ECHO_T}$_am_result" >&6; } rm -f confinc confmf # 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='\' 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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&5 echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$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" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$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 { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}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:) { echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&5 echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&5 echo "$as_me: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } # Provide some information about the compiler. echo "$as_me:$LINENO: checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (ac_try="$ac_compiler --version >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (ac_try="$ac_compiler -v >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (ac_try="$ac_compiler -V >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out 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. { echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; } ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # # List of possible output files, starting from the most likely. # The algorithm is not robust to junk in `.', hence go to wildcards (a.*) # only as a last resort. b.out is created by i960 compilers. ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out' # # The IRIX 6 linker writes into existing files which may not be # executable, retaining their permissions. Remove them first so a # subsequent execution test works. ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link_default") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; 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 | *.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 { echo "$as_me:$LINENO: result: $ac_file" >&5 echo "${ECHO_T}$ac_file" >&6; } if test -z "$ac_file"; then echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: C compiler cannot create executables See \`config.log' for more details." >&5 echo "$as_me: error: C compiler cannot create executables See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } fi ac_exeext=$ac_cv_exeext # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { echo "$as_me:$LINENO: checking whether the C compiler works" >&5 echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; } # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' { (case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { echo "$as_me:$LINENO: error: cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&5 echo "$as_me: error: cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi fi fi { echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; } rm -f a.out a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; } { echo "$as_me:$LINENO: result: $cross_compiling" >&5 echo "${ECHO_T}$cross_compiling" >&6; } { echo "$as_me:$LINENO: checking for suffix of executables" >&5 echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; } if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; 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 | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest$ac_cv_exeext { echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 echo "${ECHO_T}$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT { echo "$as_me:$LINENO: checking for suffix of object files" >&5 echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } if test "${ac_cv_objext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; 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 ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 echo "${ECHO_T}$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; } if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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 { echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; } GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; } if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 CFLAGS="" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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 { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$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 { echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; } if test "${ac_cv_prog_cc_c89+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include /* 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" 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cc_c89=$ac_arg else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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) { echo "$as_me:$LINENO: result: none needed" >&5 echo "${ECHO_T}none needed" >&6; } ;; xno) { echo "$as_me:$LINENO: result: unsupported" >&5 echo "${ECHO_T}unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;; 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 depcc="$CC" am_compiler_list= { echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; } if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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'. 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 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 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in 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 ;; none) break ;; esac # 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. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} 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 { echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 echo "${ECHO_T}$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 case "$am__api_version" in 1.01234) { { echo "$as_me:$LINENO: error: Automake 1.5 or newer is required to use intltool" >&5 echo "$as_me: error: Automake 1.5 or newer is required to use intltool" >&2;} { (exit 1); exit 1; }; } ;; *) ;; esac if test -n ""; then { echo "$as_me:$LINENO: checking for intltool >= " >&5 echo $ECHO_N "checking for intltool >= ... $ECHO_C" >&6; } INTLTOOL_REQUIRED_VERSION_AS_INT=`echo | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` { echo "$as_me:$LINENO: result: $INTLTOOL_APPLIED_VERSION found" >&5 echo "${ECHO_T}$INTLTOOL_APPLIED_VERSION found" >&6; } test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || { { echo "$as_me:$LINENO: error: Your intltool is too old. You need intltool or later." >&5 echo "$as_me: error: Your intltool is too old. You need intltool or later." >&2;} { (exit 1); exit 1; }; } fi # Extract the first word of "intltool-update", so it can be a program name with args. set dummy intltool-update; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_INTLTOOL_UPDATE+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_UPDATE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_UPDATE="$INTLTOOL_UPDATE" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_UPDATE="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_UPDATE=$ac_cv_path_INTLTOOL_UPDATE if test -n "$INTLTOOL_UPDATE"; then { echo "$as_me:$LINENO: result: $INTLTOOL_UPDATE" >&5 echo "${ECHO_T}$INTLTOOL_UPDATE" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi # Extract the first word of "intltool-merge", so it can be a program name with args. set dummy intltool-merge; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_INTLTOOL_MERGE+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_MERGE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_MERGE="$INTLTOOL_MERGE" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_MERGE="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_MERGE=$ac_cv_path_INTLTOOL_MERGE if test -n "$INTLTOOL_MERGE"; then { echo "$as_me:$LINENO: result: $INTLTOOL_MERGE" >&5 echo "${ECHO_T}$INTLTOOL_MERGE" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi # Extract the first word of "intltool-extract", so it can be a program name with args. set dummy intltool-extract; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_INTLTOOL_EXTRACT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_EXTRACT in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_EXTRACT="$INTLTOOL_EXTRACT" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_EXTRACT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_EXTRACT=$ac_cv_path_INTLTOOL_EXTRACT if test -n "$INTLTOOL_EXTRACT"; then { echo "$as_me:$LINENO: result: $INTLTOOL_EXTRACT" >&5 echo "${ECHO_T}$INTLTOOL_EXTRACT" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then { { echo "$as_me:$LINENO: error: The intltool scripts were not found. Please install intltool." >&5 echo "$as_me: error: The intltool scripts were not found. Please install intltool." >&2;} { (exit 1); exit 1; }; } fi INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< $@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< $@' INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' # Check the gettext tools to make sure they are GNU # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_XGETTEXT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $XGETTEXT in [\\/]* | ?:[\\/]*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_XGETTEXT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi XGETTEXT=$ac_cv_path_XGETTEXT if test -n "$XGETTEXT"; then { echo "$as_me:$LINENO: result: $XGETTEXT" >&5 echo "${ECHO_T}$XGETTEXT" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_MSGMERGE+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $MSGMERGE in [\\/]* | ?:[\\/]*) ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi MSGMERGE=$ac_cv_path_MSGMERGE if test -n "$MSGMERGE"; then { echo "$as_me:$LINENO: result: $MSGMERGE" >&5 echo "${ECHO_T}$MSGMERGE" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_MSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $MSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MSGFMT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi MSGFMT=$ac_cv_path_MSGFMT if test -n "$MSGFMT"; then { echo "$as_me:$LINENO: result: $MSGFMT" >&5 echo "${ECHO_T}$MSGFMT" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then { { echo "$as_me:$LINENO: error: GNU gettext tools not found; required for intltool" >&5 echo "$as_me: error: GNU gettext tools not found; required for intltool" >&2;} { (exit 1); exit 1; }; } fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then { { echo "$as_me:$LINENO: error: GNU gettext tools not found; required for intltool" >&5 echo "$as_me: error: GNU gettext tools not found; required for intltool" >&2;} { (exit 1); exit 1; }; } fi # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_INTLTOOL_PERL+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_PERL in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_PERL="$INTLTOOL_PERL" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_PERL="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_PERL=$ac_cv_path_INTLTOOL_PERL if test -n "$INTLTOOL_PERL"; then { echo "$as_me:$LINENO: result: $INTLTOOL_PERL" >&5 echo "${ECHO_T}$INTLTOOL_PERL" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi if test -z "$INTLTOOL_PERL"; then { { echo "$as_me:$LINENO: error: perl not found; required for intltool" >&5 echo "$as_me: error: perl not found; required for intltool" >&2;} { (exit 1); exit 1; }; } fi if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then { { echo "$as_me:$LINENO: error: perl 5.x required for intltool" >&5 echo "$as_me: error: perl 5.x required for intltool" >&2;} { (exit 1); exit 1; }; } fi if test "x" != "xno-xml"; then { echo "$as_me:$LINENO: checking for XML::Parser" >&5 echo $ECHO_N "checking for XML::Parser... $ECHO_C" >&6; } if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then { echo "$as_me:$LINENO: result: ok" >&5 echo "${ECHO_T}ok" >&6; } else { { echo "$as_me:$LINENO: error: XML::Parser perl module is required for intltool" >&5 echo "$as_me: error: XML::Parser perl module is required for intltool" >&2;} { (exit 1); exit 1; }; } fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile # Set DATADIRNAME correctly if it is not set yet # (copied from glib-gettext.m4) if test -z "$DATADIRNAME"; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then DATADIRNAME=share else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 case $host in *-*-solaris*) { echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5 echo $ECHO_N "checking for bind_textdomain_codeset... $ECHO_C" >&6; } if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define bind_textdomain_codeset to an innocuous variant, in case declares bind_textdomain_codeset. For example, HP-UX 11i declares gettimeofday. */ #define bind_textdomain_codeset innocuous_bind_textdomain_codeset /* System header to define __stub macros and hopefully few prototypes, which can conflict with char bind_textdomain_codeset (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef bind_textdomain_codeset /* 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 bind_textdomain_codeset (); /* 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_bind_textdomain_codeset || defined __stub___bind_textdomain_codeset choke me #endif int main () { return bind_textdomain_codeset (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then ac_cv_func_bind_textdomain_codeset=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_bind_textdomain_codeset=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5 echo "${ECHO_T}$ac_cv_func_bind_textdomain_codeset" >&6; } if test $ac_cv_func_bind_textdomain_codeset = yes; then DATADIRNAME=share else DATADIRNAME=lib fi ;; *) DATADIRNAME=lib ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu if test -z "$CXX"; then if test -n "$CCC"; then CXX=$CCC else if test -n "$ac_tool_prefix"; then for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC 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 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CXX"; then ac_cv_prog_CXX="$CXX" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then { echo "$as_me:$LINENO: result: $CXX" >&5 echo "${ECHO_T}$CXX" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CXX"; then ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then { echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 echo "${ECHO_T}$ac_ct_CXX" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi test -n "$ac_ct_CXX" && break done if test "x$ac_ct_CXX" = x; then CXX="g++" else case $cross_compiling:$ac_tool_warned in yes:) { echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&5 echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&2;} ac_tool_warned=yes ;; esac CXX=$ac_ct_CXX fi fi fi fi # Provide some information about the compiler. echo "$as_me:$LINENO: checking for C++ compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (ac_try="$ac_compiler --version >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (ac_try="$ac_compiler -v >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (ac_try="$ac_compiler -V >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6; } if test "${ac_cv_cxx_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi { echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6; } GXX=`test $ac_compiler_gnu = yes && echo yes` ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS { echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6; } if test "${ac_cv_prog_cxx_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_save_cxx_werror_flag=$ac_cxx_werror_flag ac_cxx_werror_flag=yes ac_cv_prog_cxx_g=no CXXFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cxx_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 CXXFLAGS="" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cxx_werror_flag=$ac_save_cxx_werror_flag CXXFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cxx_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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_cxx_werror_flag=$ac_save_cxx_werror_flag fi { echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6; } if test "$ac_test_CXXFLAGS" = set; then CXXFLAGS=$ac_save_CXXFLAGS elif test $ac_cv_prog_cxx_g = yes; then if test "$GXX" = yes; then CXXFLAGS="-g -O2" else CXXFLAGS="-g" fi else if test "$GXX" = yes; then CXXFLAGS="-O2" else CXXFLAGS= fi 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="$CXX" am_compiler_list= { echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; } if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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'. 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_CXX_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi 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 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in 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 ;; none) break ;; esac # 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. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} 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_CXX_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CXX_dependencies_compiler_type=none fi fi { echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5 echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6; } CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then am__fastdepCXX_TRUE= am__fastdepCXX_FALSE='#' else am__fastdepCXX_TRUE='#' am__fastdepCXX_FALSE= fi if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_PKG_CONFIG+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5 echo "${ECHO_T}$PKG_CONFIG" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5 echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&5 echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools whose name does not start with the host triplet. If you think this configuration is useful to you, please write to autoconf@gnu.org." >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 { echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5 echo $ECHO_N "checking pkg-config is at least version $_pkg_min_version... $ECHO_C" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } PKG_CONFIG="" fi fi pkg_failed=no { echo "$as_me:$LINENO: checking for DEPS" >&5 echo $ECHO_N "checking for DEPS... $ECHO_C" >&6; } if test -n "$PKG_CONFIG"; then if test -n "$DEPS_CFLAGS"; then pkg_cv_DEPS_CFLAGS="$DEPS_CFLAGS" else if test -n "$PKG_CONFIG" && \ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libgnome-2.0 >= 2.0.0 \\ gconfmm-2.6 >= 2.6.0 \\ gtkmm-2.4 >= 2.6.0 \\ libgnomecanvasmm-2.6 >= 2.6.0 \\ libglademm-2.4 >= 2.4.0\"") >&5 ($PKG_CONFIG --exists --print-errors "libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_DEPS_CFLAGS=`$PKG_CONFIG --cflags "libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0" 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then if test -n "$DEPS_LIBS"; then pkg_cv_DEPS_LIBS="$DEPS_LIBS" else if test -n "$PKG_CONFIG" && \ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libgnome-2.0 >= 2.0.0 \\ gconfmm-2.6 >= 2.6.0 \\ gtkmm-2.4 >= 2.6.0 \\ libgnomecanvasmm-2.6 >= 2.6.0 \\ libglademm-2.4 >= 2.4.0\"") >&5 ($PKG_CONFIG --exists --print-errors "libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_DEPS_LIBS=`$PKG_CONFIG --libs "libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0" 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test $pkg_failed = yes; then if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then DEPS_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0"` else DEPS_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0"` fi # Put the nasty error message in config.log where it belongs echo "$DEPS_PKG_ERRORS" >&5 { { echo "$as_me:$LINENO: error: Package requirements (libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0) were not met: $DEPS_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables DEPS_CFLAGS and DEPS_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 echo "$as_me: error: Package requirements (libgnome-2.0 >= 2.0.0 \ gconfmm-2.6 >= 2.6.0 \ gtkmm-2.4 >= 2.6.0 \ libgnomecanvasmm-2.6 >= 2.6.0 \ libglademm-2.4 >= 2.4.0) were not met: $DEPS_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables DEPS_CFLAGS and DEPS_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&2;} { (exit 1); exit 1; }; } elif test $pkg_failed = untried; then { { echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables DEPS_CFLAGS and DEPS_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details." >&5 echo "$as_me: error: The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables DEPS_CFLAGS and DEPS_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } else DEPS_CFLAGS=$pkg_cv_DEPS_CFLAGS DEPS_LIBS=$pkg_cv_DEPS_LIBS { echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; } : fi # Extract the first word of "gconftool-2", so it can be a program name with args. set dummy gconftool-2; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_GCONFTOOL+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $GCONFTOOL in [\\/]* | ?:[\\/]*) ac_cv_path_GCONFTOOL="$GCONFTOOL" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GCONFTOOL="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GCONFTOOL" && ac_cv_path_GCONFTOOL="no" ;; esac fi GCONFTOOL=$ac_cv_path_GCONFTOOL if test -n "$GCONFTOOL"; then { echo "$as_me:$LINENO: result: $GCONFTOOL" >&5 echo "${ECHO_T}$GCONFTOOL" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi if test x"$GCONFTOOL" = xno; then { { echo "$as_me:$LINENO: error: gconftool-2 executable not found in your path - should be installed with GConf" >&5 echo "$as_me: error: gconftool-2 executable not found in your path - should be installed with GConf" >&2;} { (exit 1); exit 1; }; } fi if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then GCONF_SCHEMA_CONFIG_SOURCE=`gconftool-2 --get-default-source` else GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE fi # Check whether --with-gconf-source was given. if test "${with_gconf_source+set}" = set; then withval=$with_gconf_source; GCONF_SCHEMA_CONFIG_SOURCE="$withval" fi { echo "$as_me:$LINENO: result: Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&5 echo "${ECHO_T}Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&6; } if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' fi # Check whether --with-gconf-schema-file-dir was given. if test "${with_gconf_schema_file_dir+set}" = set; then withval=$with_gconf_schema_file_dir; GCONF_SCHEMA_FILE_DIR="$withval" fi { echo "$as_me:$LINENO: result: Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&5 echo "${ECHO_T}Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&6; } # Check whether --enable-schemas-install was given. if test "${enable_schemas_install+set}" = set; then enableval=$enable_schemas_install; case ${enableval} in yes|no) ;; *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-schemas-install" >&5 echo "$as_me: error: bad value ${enableval} for --enable-schemas-install" >&2;} { (exit 1); exit 1; }; } ;; esac fi if test "$enable_schemas_install" != no; then GCONF_SCHEMAS_INSTALL_TRUE= GCONF_SCHEMAS_INSTALL_FALSE='#' else GCONF_SCHEMAS_INSTALL_TRUE='#' GCONF_SCHEMAS_INSTALL_FALSE= fi ALL_LINGUAS="ar az bg ca cs cy da de dz el en_CA en_GB es eu fi fr ga gu hr it ka lt lv nb ne nl oc pa pl pt pt_BR rw sl sq sr sr@Latn sv ta tr uk vi zh_CN zh_HK zh_TW" GETTEXT_PACKAGE=$PACKAGE 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 { echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if test "${ac_cv_prog_CPP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&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 to if __STDC__ is defined, since # 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f 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 { echo "$as_me:$LINENO: result: $CPP" >&5 echo "${ECHO_T}$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 to if __STDC__ is defined, since # 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&5 echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } 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 { echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; } if test "${ac_cv_path_GREP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # Extract the first word of "grep ggrep" to use in msg output if test -z "$GREP"; then set dummy grep ggrep; ac_prog_name=$2 if test "${ac_cv_path_GREP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else 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" { test -f "$ac_path_GREP" && $as_test_x "$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 echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" 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 ac_count=`expr $ac_count + 1` 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 fi GREP="$ac_cv_path_GREP" if test -z "$GREP"; then { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} { (exit 1); exit 1; }; } fi else ac_cv_path_GREP=$GREP fi fi { echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 echo "${ECHO_T}$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { echo "$as_me:$LINENO: checking for egrep" >&5 echo $ECHO_N "checking for egrep... $ECHO_C" >&6; } if test "${ac_cv_path_EGREP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else # Extract the first word of "egrep" to use in msg output if test -z "$EGREP"; then set dummy egrep; ac_prog_name=$2 if test "${ac_cv_path_EGREP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else 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" { test -f "$ac_path_EGREP" && $as_test_x "$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 echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" 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 ac_count=`expr $ac_count + 1` 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 fi EGREP="$ac_cv_path_EGREP" if test -z "$EGREP"; then { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} { (exit 1); exit 1; }; } fi else ac_cv_path_EGREP=$EGREP fi fi fi { echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 echo "${ECHO_T}$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { echo "$as_me:$LINENO: checking for ANSI C header files" >&5 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; } if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #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 rm -f conftest$ac_exeext if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi { echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 echo "${ECHO_T}$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF #define STDC_HEADERS 1 _ACEOF 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=`echo "ac_cv_header_$ac_header" | $as_tr_sh` { echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_Header=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_Header'}'` { echo "$as_me:$LINENO: result: $ac_res" >&5 echo "${ECHO_T}$ac_res" >&6; } if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in locale.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then { echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi ac_res=`eval echo '${'$as_ac_Header'}'` { echo "$as_me:$LINENO: result: $ac_res" >&5 echo "${ECHO_T}$ac_res" >&6; } else # Is the header compilable? { echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6; } # Is the header present? { echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext { echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ;; esac { echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi ac_res=`eval echo '${'$as_ac_Header'}'` { echo "$as_me:$LINENO: result: $ac_res" >&5 echo "${ECHO_T}$ac_res" >&6; } fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done if test $ac_cv_header_locale_h = yes; then { echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5 echo $ECHO_N "checking for LC_MESSAGES... $ECHO_C" >&6; } if test "${am_cv_val_LC_MESSAGES+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return LC_MESSAGES ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then am_cv_val_LC_MESSAGES=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 am_cv_val_LC_MESSAGES=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5 echo "${ECHO_T}$am_cv_val_LC_MESSAGES" >&6; } if test $am_cv_val_LC_MESSAGES = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_LC_MESSAGES 1 _ACEOF fi fi USE_NLS=yes gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= if test "${ac_cv_header_libintl_h+set}" = set; then { echo "$as_me:$LINENO: checking for libintl.h" >&5 echo $ECHO_N "checking for libintl.h... $ECHO_C" >&6; } if test "${ac_cv_header_libintl_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi { echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5 echo "${ECHO_T}$ac_cv_header_libintl_h" >&6; } else # Is the header compilable? { echo "$as_me:$LINENO: checking libintl.h usability" >&5 echo $ECHO_N "checking libintl.h usability... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6; } # Is the header present? { echo "$as_me:$LINENO: checking libintl.h presence" >&5 echo $ECHO_N "checking libintl.h presence... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext { echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: libintl.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: libintl.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: libintl.h: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: libintl.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: see the Autoconf documentation" >&5 echo "$as_me: WARNING: libintl.h: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: libintl.h: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: libintl.h: in the future, the compiler will take precedence" >&2;} ;; esac { echo "$as_me:$LINENO: checking for libintl.h" >&5 echo $ECHO_N "checking for libintl.h... $ECHO_C" >&6; } if test "${ac_cv_header_libintl_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_header_libintl_h=$ac_header_preproc fi { echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5 echo "${ECHO_T}$ac_cv_header_libintl_h" >&6; } fi if test $ac_cv_header_libintl_h = yes; then gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # { echo "$as_me:$LINENO: checking for ngettext in libc" >&5 echo $ECHO_N "checking for ngettext in libc... $ECHO_C" >&6; } if test "${gt_cv_func_ngettext_libc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return !ngettext ("","", 1) ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then gt_cv_func_ngettext_libc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 gt_cv_func_ngettext_libc=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $gt_cv_func_ngettext_libc" >&5 echo "${ECHO_T}$gt_cv_func_ngettext_libc" >&6; } if test "$gt_cv_func_ngettext_libc" = "yes" ; then { echo "$as_me:$LINENO: checking for dgettext in libc" >&5 echo $ECHO_N "checking for dgettext in libc... $ECHO_C" >&6; } if test "${gt_cv_func_dgettext_libc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return !dgettext ("","") ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then gt_cv_func_dgettext_libc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 gt_cv_func_dgettext_libc=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $gt_cv_func_dgettext_libc" >&5 echo "${ECHO_T}$gt_cv_func_dgettext_libc" >&6; } fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then for ac_func in bind_textdomain_codeset do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` { echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* 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 $ac_func (); /* 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_$ac_func || defined __stub___$ac_func choke me #endif int main () { return $ac_func (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` { echo "$as_me:$LINENO: result: $ac_res" >&5 echo "${ECHO_T}$ac_res" >&6; } if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then { echo "$as_me:$LINENO: checking for bindtextdomain in -lintl" >&5 echo $ECHO_N "checking for bindtextdomain in -lintl... $ECHO_C" >&6; } if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 bindtextdomain (); int main () { return bindtextdomain (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then ac_cv_lib_intl_bindtextdomain=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_bindtextdomain=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { echo "$as_me:$LINENO: result: $ac_cv_lib_intl_bindtextdomain" >&5 echo "${ECHO_T}$ac_cv_lib_intl_bindtextdomain" >&6; } if test $ac_cv_lib_intl_bindtextdomain = yes; then { echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5 echo $ECHO_N "checking for ngettext in -lintl... $ECHO_C" >&6; } if test "${ac_cv_lib_intl_ngettext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 ngettext (); int main () { return ngettext (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then ac_cv_lib_intl_ngettext=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5 echo "${ECHO_T}$ac_cv_lib_intl_ngettext" >&6; } if test $ac_cv_lib_intl_ngettext = yes; then { echo "$as_me:$LINENO: checking for dgettext in -lintl" >&5 echo $ECHO_N "checking for dgettext in -lintl... $ECHO_C" >&6; } if test "${ac_cv_lib_intl_dgettext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 dgettext (); int main () { return dgettext (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then ac_cv_lib_intl_dgettext=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_dgettext=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dgettext" >&5 echo "${ECHO_T}$ac_cv_lib_intl_dgettext" >&6; } if test $ac_cv_lib_intl_dgettext = yes; then gt_cv_func_dgettext_libintl=yes fi fi fi if test "$gt_cv_func_dgettext_libintl" != "yes" ; then { echo "$as_me:$LINENO: checking if -liconv is needed to use gettext" >&5 echo $ECHO_N "checking if -liconv is needed to use gettext... $ECHO_C" >&6; } { echo "$as_me:$LINENO: result: " >&5 echo "${ECHO_T}" >&6; } { echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5 echo $ECHO_N "checking for ngettext in -lintl... $ECHO_C" >&6; } if test "${ac_cv_lib_intl_ngettext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 ngettext (); int main () { return ngettext (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then ac_cv_lib_intl_ngettext=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5 echo "${ECHO_T}$ac_cv_lib_intl_ngettext" >&6; } if test $ac_cv_lib_intl_ngettext = yes; then { echo "$as_me:$LINENO: checking for dcgettext in -lintl" >&5 echo $ECHO_N "checking for dcgettext in -lintl... $ECHO_C" >&6; } if test "${ac_cv_lib_intl_dcgettext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 dcgettext (); int main () { return dcgettext (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then ac_cv_lib_intl_dcgettext=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_dcgettext=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dcgettext" >&5 echo "${ECHO_T}$ac_cv_lib_intl_dcgettext" >&6; } if test $ac_cv_lib_intl_dcgettext = yes; then gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv else : fi else : fi fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset for ac_func in bind_textdomain_codeset do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` { echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* 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 $ac_func (); /* 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_$ac_func || defined __stub___$ac_func choke me #endif int main () { return $ac_func (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` { echo "$as_me:$LINENO: result: $ac_res" >&5 echo "${ECHO_T}$ac_res" >&6; } if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then cat >>confdefs.h <<\_ACEOF #define HAVE_GETTEXT 1 _ACEOF # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_MSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case "$MSGFMT" in /*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then ac_cv_path_MSGFMT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no" ;; esac fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != "no"; then { echo "$as_me:$LINENO: result: $MSGFMT" >&5 echo "${ECHO_T}$MSGFMT" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" for ac_func in dcgettext do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` { echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* 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 $ac_func (); /* 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_$ac_func || defined __stub___$ac_func choke me #endif int main () { return $ac_func (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` { echo "$as_me:$LINENO: result: $ac_res" >&5 echo "${ECHO_T}$ac_res" >&6; } if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done MSGFMT_OPTS= { echo "$as_me:$LINENO: checking if msgfmt accepts -c" >&5 echo $ECHO_N "checking if msgfmt accepts -c... $ECHO_C" >&6; } cat >conftest.foo <<_ACEOF msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" _ACEOF if { (echo "$as_me:$LINENO: \$MSGFMT -c -o /dev/null conftest.foo") >&5 ($MSGFMT -c -o /dev/null conftest.foo) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then MSGFMT_OPTS=-c; { echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } echo "$as_me: failed input was:" >&5 sed 's/^/| /' conftest.foo >&5 fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_GMSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then { echo "$as_me:$LINENO: result: $GMSGFMT" >&5 echo "${ECHO_T}$GMSGFMT" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_XGETTEXT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case "$XGETTEXT" in /*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then ac_cv_path_XGETTEXT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; esac fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then { echo "$as_me:$LINENO: result: $XGETTEXT" >&5 echo "${ECHO_T}$XGETTEXT" >&6; } else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then CATOBJEXT=.gmo DATADIRNAME=share else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 case $host in *-*-solaris*) { echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5 echo $ECHO_N "checking for bind_textdomain_codeset... $ECHO_C" >&6; } if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define bind_textdomain_codeset to an innocuous variant, in case declares bind_textdomain_codeset. For example, HP-UX 11i declares gettimeofday. */ #define bind_textdomain_codeset innocuous_bind_textdomain_codeset /* System header to define __stub macros and hopefully few prototypes, which can conflict with char bind_textdomain_codeset (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef bind_textdomain_codeset /* 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 bind_textdomain_codeset (); /* 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_bind_textdomain_codeset || defined __stub___bind_textdomain_codeset choke me #endif int main () { return bind_textdomain_codeset (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && $as_test_x conftest$ac_exeext; then ac_cv_func_bind_textdomain_codeset=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_bind_textdomain_codeset=no fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5 echo "${ECHO_T}$ac_cv_func_bind_textdomain_codeset" >&6; } if test $ac_cv_func_bind_textdomain_codeset = yes; then CATOBJEXT=.gmo DATADIRNAME=share else CATOBJEXT=.mo DATADIRNAME=lib fi ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi fi if test "$gt_cv_have_gettext" = "yes" ; then cat >>confdefs.h <<\_ACEOF #define ENABLE_NLS 1 _ACEOF fi if test "$XGETTEXT" != ":"; then if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else { echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5 echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6; } XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po ac_config_commands="$ac_config_commands default-1" for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else { echo "$as_me:$LINENO: checking for catalogs to be installed" >&5 echo $ECHO_N "checking for catalogs to be installed... $ECHO_C" >&6; } NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS { echo "$as_me:$LINENO: result: $LINGUAS" >&5 echo "${ECHO_T}$LINGUAS" >&6; } fi if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES cat >>confdefs.h <<_ACEOF #define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" _ACEOF { echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5 echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&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 { echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5 echo "${ECHO_T}$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 { echo "$as_me:$LINENO: checking whether byte ordering is bigendian" >&5 echo $ECHO_N "checking whether byte ordering is bigendian... $ECHO_C" >&6; } if test "${ac_cv_c_bigendian+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # See if sys/param.h defines the BYTE_ORDER macro. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include int main () { #if ! (defined BYTE_ORDER && defined BIG_ENDIAN && defined LITTLE_ENDIAN \ && BYTE_ORDER && BIG_ENDIAN && LITTLE_ENDIAN) bogus endian macros #endif ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then # It does; now see whether it defined to BIG_ENDIAN or not. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include int main () { #if BYTE_ORDER != BIG_ENDIAN not big endian #endif ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_c_bigendian=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_c_bigendian=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # It does not; compile a test program. if test "$cross_compiling" = yes; then # try to guess the endianness by grepping values into an object file ac_cv_c_bigendian=unknown cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ short int ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; short int ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; void _ascii () { char *s = (char *) ascii_mm; s = (char *) ascii_ii; } short int ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; short int ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; void _ebcdic () { char *s = (char *) ebcdic_mm; s = (char *) ebcdic_ii; } int main () { _ascii (); _ebcdic (); ; return 0; } _ACEOF 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then if grep BIGenDianSyS conftest.$ac_objext >/dev/null ; then ac_cv_c_bigendian=yes fi if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then if test "$ac_cv_c_bigendian" = unknown; then ac_cv_c_bigendian=no else # finding both strings is unlikely to happen, but who knows? ac_cv_c_bigendian=unknown fi fi else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default int main () { /* Are we little or big endian? From Harbison&Steele. */ union { long int l; char c[sizeof (long int)]; } u; u.l = 1; return u.c[sizeof (long int) - 1] == 1; ; return 0; } _ACEOF rm -f conftest$ac_exeext if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_c_bigendian=no else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_c_bigendian=yes fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $ac_cv_c_bigendian" >&5 echo "${ECHO_T}$ac_cv_c_bigendian" >&6; } case $ac_cv_c_bigendian in yes) cat >>confdefs.h <<\_ACEOF #define WORDS_BIGENDIAN 1 _ACEOF ;; no) ;; *) { { echo "$as_me:$LINENO: error: unknown endianness presetting ac_cv_c_bigendian=no (or yes) will help" >&5 echo "$as_me: error: unknown endianness presetting ac_cv_c_bigendian=no (or yes) will help" >&2;} { (exit 1); exit 1; }; } ;; esac ac_config_files="$ac_config_files Makefile src/Makefile pixmaps/Makefile sounds/Makefile po/Makefile.in" 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_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( *) $as_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 test "x$cache_file" != "x/dev/null" && { echo "$as_me:$LINENO: updating cache $cache_file" >&5 echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 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= 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=`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. ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi ac_config_commands="$ac_config_commands po/stamp-it" if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${GCONF_SCHEMAS_INSTALL_TRUE}" && test -z "${GCONF_SCHEMAS_INSTALL_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi : ${CONFIG_STATUS=./config.status} ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 echo "$as_me: creating $CONFIG_STATUS" >&6;} cat >$CONFIG_STATUS <<_ACEOF #! $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} _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF ## --------------------- ## ## 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=: # Zsh 3.x and 4.x performs 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 # PATH needs CR # 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 # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false 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.) as_nl=' ' IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. 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 echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 { (exit 1); exit 1; } fi # Work around bugs in pre-3.0 UWIN ksh. for as_var in ENV MAIL MAILPATH do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var fi done # Required to use basename. 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 # Name of the executable. as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # CDPATH. $as_unset CDPATH as_lineno_1=$LINENO as_lineno_2=$LINENO test "x$as_lineno_1" != "x$as_lineno_2" && test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line after each line using $LINENO; the second 'sed' # does the real work. The second script uses 'N' to pair each # line-number line with the line containing $LINENO, and appends # trailing '-' during substitution so that $LINENO is not a special # case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # scripts with optimization help from Paolo Bonzini. 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" || { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # 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 } if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in -n*) case `echo 'x\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. *) ECHO_C='\c';; esac;; *) ECHO_N='-n';; esac if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi 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 fi echo >conf$$.file 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 -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' 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=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi if test -x / >/dev/null 2>&1; then as_test_x='test -x' else if ls -dL / >/dev/null 2>&1; then as_ls_L_option=L else as_ls_L_option= fi as_test_x=' eval sh -c '\'' if test -d "$1"; then test -d "$1/."; else case $1 in -*)set "./$1";; esac; case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in ???[sx]*):;;*)false;;esac;fi '\'' sh ' fi as_executable_p=$as_test_x # 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 # 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 $as_me, which was generated by GNU Autoconf 2.61. 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 cat >>$CONFIG_STATUS <<_ACEOF # 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_cs_usage="\ \`$as_me' instantiates files from templates according to the current configuration. Usage: $0 [OPTIONS] [FILE]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit -q, --quiet 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 ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ config.status configured by $0, generated by GNU Autoconf 2.61, with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" Copyright (C) 2006 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' _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # If no file are specified by the user, then we need to provide default # value. By we need to know if files were specified by the user. 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=$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 ) echo "$ac_cs_version"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift CONFIG_FILES="$CONFIG_FILES $ac_optarg" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header { echo "$as_me: error: ambiguous option: $1 Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; };; --help | --hel | -h ) 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. -*) { echo "$as_me: error: unrecognized option: $1 Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; *) ac_config_targets="$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 if \$ac_cs_recheck; then echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 CONFIG_SHELL=$SHELL export CONFIG_SHELL exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX echo "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # Handling of arguments. for ac_config_target in $ac_config_targets do case $ac_config_target in "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "pixmaps/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/Makefile" ;; "sounds/Makefile") CONFIG_FILES="$CONFIG_FILES sounds/Makefile" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;; *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; 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= trap 'exit_status=$? { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status ' 0 trap '{ (exit 1); exit 1; }' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || { echo "$me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } # # Set up the sed scripts for CONFIG_FILES section. # # No need to generate the scripts if there are no CONFIG_FILES. # This happens for instance when ./config.status config.h if test -n "$CONFIG_FILES"; then _ACEOF ac_delim='%!_!# ' for ac_last_try in false false false false false :; do cat >conf$$subs.sed <<_ACEOF SHELL!$SHELL$ac_delim PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim PACKAGE_NAME!$PACKAGE_NAME$ac_delim PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim PACKAGE_STRING!$PACKAGE_STRING$ac_delim PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim exec_prefix!$exec_prefix$ac_delim prefix!$prefix$ac_delim program_transform_name!$program_transform_name$ac_delim bindir!$bindir$ac_delim sbindir!$sbindir$ac_delim libexecdir!$libexecdir$ac_delim datarootdir!$datarootdir$ac_delim datadir!$datadir$ac_delim sysconfdir!$sysconfdir$ac_delim sharedstatedir!$sharedstatedir$ac_delim localstatedir!$localstatedir$ac_delim includedir!$includedir$ac_delim oldincludedir!$oldincludedir$ac_delim docdir!$docdir$ac_delim infodir!$infodir$ac_delim htmldir!$htmldir$ac_delim dvidir!$dvidir$ac_delim pdfdir!$pdfdir$ac_delim psdir!$psdir$ac_delim libdir!$libdir$ac_delim localedir!$localedir$ac_delim mandir!$mandir$ac_delim DEFS!$DEFS$ac_delim ECHO_C!$ECHO_C$ac_delim ECHO_N!$ECHO_N$ac_delim ECHO_T!$ECHO_T$ac_delim LIBS!$LIBS$ac_delim build_alias!$build_alias$ac_delim host_alias!$host_alias$ac_delim target_alias!$target_alias$ac_delim INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim INSTALL_DATA!$INSTALL_DATA$ac_delim CYGPATH_W!$CYGPATH_W$ac_delim PACKAGE!$PACKAGE$ac_delim VERSION!$VERSION$ac_delim ACLOCAL!$ACLOCAL$ac_delim AUTOCONF!$AUTOCONF$ac_delim AUTOMAKE!$AUTOMAKE$ac_delim AUTOHEADER!$AUTOHEADER$ac_delim MAKEINFO!$MAKEINFO$ac_delim install_sh!$install_sh$ac_delim STRIP!$STRIP$ac_delim INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim mkdir_p!$mkdir_p$ac_delim AWK!$AWK$ac_delim SET_MAKE!$SET_MAKE$ac_delim am__leading_dot!$am__leading_dot$ac_delim AMTAR!$AMTAR$ac_delim am__tar!$am__tar$ac_delim am__untar!$am__untar$ac_delim INTLTOOL_UPDATE!$INTLTOOL_UPDATE$ac_delim INTLTOOL_MERGE!$INTLTOOL_MERGE$ac_delim INTLTOOL_EXTRACT!$INTLTOOL_EXTRACT$ac_delim INTLTOOL_DESKTOP_RULE!$INTLTOOL_DESKTOP_RULE$ac_delim INTLTOOL_DIRECTORY_RULE!$INTLTOOL_DIRECTORY_RULE$ac_delim INTLTOOL_KEYS_RULE!$INTLTOOL_KEYS_RULE$ac_delim INTLTOOL_PROP_RULE!$INTLTOOL_PROP_RULE$ac_delim INTLTOOL_OAF_RULE!$INTLTOOL_OAF_RULE$ac_delim INTLTOOL_PONG_RULE!$INTLTOOL_PONG_RULE$ac_delim INTLTOOL_SERVER_RULE!$INTLTOOL_SERVER_RULE$ac_delim INTLTOOL_SHEET_RULE!$INTLTOOL_SHEET_RULE$ac_delim INTLTOOL_SOUNDLIST_RULE!$INTLTOOL_SOUNDLIST_RULE$ac_delim INTLTOOL_UI_RULE!$INTLTOOL_UI_RULE$ac_delim INTLTOOL_XAM_RULE!$INTLTOOL_XAM_RULE$ac_delim INTLTOOL_KBD_RULE!$INTLTOOL_KBD_RULE$ac_delim INTLTOOL_XML_RULE!$INTLTOOL_XML_RULE$ac_delim INTLTOOL_XML_NOMERGE_RULE!$INTLTOOL_XML_NOMERGE_RULE$ac_delim INTLTOOL_CAVES_RULE!$INTLTOOL_CAVES_RULE$ac_delim INTLTOOL_SCHEMAS_RULE!$INTLTOOL_SCHEMAS_RULE$ac_delim INTLTOOL_THEME_RULE!$INTLTOOL_THEME_RULE$ac_delim INTLTOOL_SERVICE_RULE!$INTLTOOL_SERVICE_RULE$ac_delim INTLTOOL_POLICY_RULE!$INTLTOOL_POLICY_RULE$ac_delim XGETTEXT!$XGETTEXT$ac_delim MSGMERGE!$MSGMERGE$ac_delim MSGFMT!$MSGFMT$ac_delim INTLTOOL_PERL!$INTLTOOL_PERL$ac_delim ALL_LINGUAS!$ALL_LINGUAS$ac_delim CC!$CC$ac_delim CFLAGS!$CFLAGS$ac_delim LDFLAGS!$LDFLAGS$ac_delim CPPFLAGS!$CPPFLAGS$ac_delim ac_ct_CC!$ac_ct_CC$ac_delim EXEEXT!$EXEEXT$ac_delim OBJEXT!$OBJEXT$ac_delim DEPDIR!$DEPDIR$ac_delim am__include!$am__include$ac_delim am__quote!$am__quote$ac_delim AMDEP_TRUE!$AMDEP_TRUE$ac_delim AMDEP_FALSE!$AMDEP_FALSE$ac_delim _ACEOF if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then break elif $ac_last_try; then { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} { (exit 1); exit 1; }; } else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` if test -n "$ac_eof"; then ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` ac_eof=`expr $ac_eof + 1` fi cat >>$CONFIG_STATUS <<_ACEOF cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof /@[a-zA-Z_][a-zA-Z_0-9]*@/!b _ACEOF sed ' s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g s/^/s,@/; s/!/@,|#_!!_#|/ :n t n s/'"$ac_delim"'$/,g/; t s/$/\\/; p N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n ' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF CEOF$ac_eof _ACEOF ac_delim='%!_!# ' for ac_last_try in false false false false false :; do cat >conf$$subs.sed <<_ACEOF AMDEPBACKSLASH!$AMDEPBACKSLASH$ac_delim CCDEPMODE!$CCDEPMODE$ac_delim am__fastdepCC_TRUE!$am__fastdepCC_TRUE$ac_delim am__fastdepCC_FALSE!$am__fastdepCC_FALSE$ac_delim DATADIRNAME!$DATADIRNAME$ac_delim CXX!$CXX$ac_delim CXXFLAGS!$CXXFLAGS$ac_delim ac_ct_CXX!$ac_ct_CXX$ac_delim CXXDEPMODE!$CXXDEPMODE$ac_delim am__fastdepCXX_TRUE!$am__fastdepCXX_TRUE$ac_delim am__fastdepCXX_FALSE!$am__fastdepCXX_FALSE$ac_delim PKG_CONFIG!$PKG_CONFIG$ac_delim DEPS_CFLAGS!$DEPS_CFLAGS$ac_delim DEPS_LIBS!$DEPS_LIBS$ac_delim GCONFTOOL!$GCONFTOOL$ac_delim GCONF_SCHEMA_CONFIG_SOURCE!$GCONF_SCHEMA_CONFIG_SOURCE$ac_delim GCONF_SCHEMA_FILE_DIR!$GCONF_SCHEMA_FILE_DIR$ac_delim GCONF_SCHEMAS_INSTALL_TRUE!$GCONF_SCHEMAS_INSTALL_TRUE$ac_delim GCONF_SCHEMAS_INSTALL_FALSE!$GCONF_SCHEMAS_INSTALL_FALSE$ac_delim GETTEXT_PACKAGE!$GETTEXT_PACKAGE$ac_delim CPP!$CPP$ac_delim GREP!$GREP$ac_delim EGREP!$EGREP$ac_delim USE_NLS!$USE_NLS$ac_delim MSGFMT_OPTS!$MSGFMT_OPTS$ac_delim GMSGFMT!$GMSGFMT$ac_delim CATALOGS!$CATALOGS$ac_delim CATOBJEXT!$CATOBJEXT$ac_delim GMOFILES!$GMOFILES$ac_delim INSTOBJEXT!$INSTOBJEXT$ac_delim INTLLIBS!$INTLLIBS$ac_delim PO_IN_DATADIR_TRUE!$PO_IN_DATADIR_TRUE$ac_delim PO_IN_DATADIR_FALSE!$PO_IN_DATADIR_FALSE$ac_delim POFILES!$POFILES$ac_delim POSUB!$POSUB$ac_delim MKINSTALLDIRS!$MKINSTALLDIRS$ac_delim MAINTAINER_MODE_TRUE!$MAINTAINER_MODE_TRUE$ac_delim MAINTAINER_MODE_FALSE!$MAINTAINER_MODE_FALSE$ac_delim MAINT!$MAINT$ac_delim LIBOBJS!$LIBOBJS$ac_delim LTLIBOBJS!$LTLIBOBJS$ac_delim _ACEOF if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 41; then break elif $ac_last_try; then { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} { (exit 1); exit 1; }; } else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` if test -n "$ac_eof"; then ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` ac_eof=`expr $ac_eof + 1` fi cat >>$CONFIG_STATUS <<_ACEOF cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof /@[a-zA-Z_][a-zA-Z_0-9]*@/!b end _ACEOF sed ' s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g s/^/s,@/; s/!/@,|#_!!_#|/ :n t n s/'"$ac_delim"'$/,g/; t s/$/\\/; p N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n ' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF :end s/|#_!!_#|//g CEOF$ac_eof _ACEOF # VPATH may cause trouble with some makes, so we remove $(srcdir), # ${srcdir} and @srcdir@ 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[ ]*=/{ s/:*\$(srcdir):*/:/ s/:*\${srcdir}:*/:/ s/:*@srcdir@:*/:/ s/^\([^=]*=[ ]*\):*/\1/ s/:*$// s/^[^=]*=[ ]*$// }' fi cat >>$CONFIG_STATUS <<\_ACEOF fi # test -n "$CONFIG_FILES" for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 echo "$as_me: error: Invalid tag $ac_tag." >&2;} { (exit 1); exit 1; }; };; :[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="$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 || { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 echo "$as_me: error: cannot find input file: $ac_f" >&2;} { (exit 1); exit 1; }; };; esac ac_file_inputs="$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 "`IFS=: echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} fi case $ac_tag in *:-:* | *:-) cat >"$tmp/stdin";; 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 || 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" case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`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 || 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" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`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 _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # 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= case `sed -n '/datarootdir/ { p q } /@datadir@/p /@docdir@/p /@infodir@/p /@localedir@/p /@mandir@/p ' $ac_file_inputs` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF 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 sed "$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s&@configure_input@&$configure_input&;t t s&@top_builddir@&$ac_top_builddir_sub&;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 $ac_datarootdir_hack " $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&5 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 "$tmp/stdin" case $ac_file in -) cat "$tmp/out"; rm -f "$tmp/out";; *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; esac ;; :H) # # CONFIG_HEADER # _ACEOF # Transform confdefs.h into a sed script `conftest.defines', that # substitutes the proper values into config.h.in to produce config.h. rm -f conftest.defines conftest.tail # First, append a space to every undef/define line, to ease matching. echo 's/$/ /' >conftest.defines # Then, protect against being on the right side of a sed subst, or in # an unquoted here document, in config.status. If some macros were # called several times there might be several #defines for the same # symbol, which is useless. But do not sort them, since the last # AC_DEFINE must be honored. ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* # These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where # NAME is the cpp macro being defined, VALUE is the value it is being given. # PARAMS is the parameter list in the macro definition--in most cases, it's # just an empty string. ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*' ac_dB='\\)[ (].*,\\1define\\2' ac_dC=' ' ac_dD=' ,' uniq confdefs.h | sed -n ' t rset :rset s/^[ ]*#[ ]*define[ ][ ]*// t ok d :ok s/[\\&,]/\\&/g s/^\('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p s/^\('"$ac_word_re"'\)[ ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p ' >>conftest.defines # Remove the space that was appended to ease matching. # Then 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. # (The regexp can be short, since the line contains either #define or #undef.) echo 's/ $// s,^[ #]*u.*,/* & */,' >>conftest.defines # Break up conftest.defines: ac_max_sed_lines=50 # First sed command is: sed -f defines.sed $ac_file_inputs >"$tmp/out1" # Second one is: sed -f defines.sed "$tmp/out1" >"$tmp/out2" # Third one will be: sed -f defines.sed "$tmp/out2" >"$tmp/out1" # et cetera. ac_in='$ac_file_inputs' ac_out='"$tmp/out1"' ac_nxt='"$tmp/out2"' while : do # Write a here document: cat >>$CONFIG_STATUS <<_ACEOF # First, check the format of the line: cat >"\$tmp/defines.sed" <<\\CEOF /^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def /^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def b :def _ACEOF sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS echo 'CEOF sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail grep . conftest.tail >/dev/null || break rm -f conftest.defines mv conftest.tail conftest.defines done rm -f conftest.defines conftest.tail echo "ac_result=$ac_in" >>$CONFIG_STATUS cat >>$CONFIG_STATUS <<\_ACEOF if test x"$ac_file" != x-; then echo "/* $configure_input */" >"$tmp/config.h" cat "$ac_result" >>"$tmp/config.h" if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 echo "$as_me: $ac_file is unchanged" >&6;} else rm -f $ac_file mv "$tmp/config.h" $ac_file fi else echo "/* $configure_input */" cat "$ac_result" fi rm -f "$tmp/out12" # Compute $ac_file's index in $config_headers. _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $ac_file | $ac_file:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $ac_file" >`$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 || echo X$ac_file | 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) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # So let's grep whole file. if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| . 2>/dev/null || echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| . 2>/dev/null || echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` { as_dir=$dirpart/$fdir case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`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 || 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" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ;; "default-1":C) case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac ;; "po/stamp-it":C) rm -f "po/stamp-it" "po/stamp-it.tmp" "po/POTFILES" "po/Makefile.tmp" >"po/stamp-it.tmp" sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/po/POTFILES.in" | sed '$!s/$/ \\/' >"po/POTFILES" if test ! -f "po/Makefile"; then { { echo "$as_me:$LINENO: error: po/Makefile is not ready." >&5 echo "$as_me: error: po/Makefile is not ready." >&2;} { (exit 1); exit 1; }; } fi mv "po/Makefile" "po/Makefile.tmp" sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r po/POTFILES } ' "po/Makefile.tmp" >"po/Makefile" rm -f "po/Makefile.tmp" mv "po/stamp-it.tmp" "po/stamp-it" ;; esac done # for ac_tag { (exit 0); exit 0; } _ACEOF chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save # 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 || { (exit 1); exit 1; } fi monster-masher-1.8.1/AUTHORS0000644000175000017500000000004210547745537012473 00000000000000Ole Laursen monster-masher-1.8.1/COPYING0000644000175000017500000004311010547745537012461 00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. monster-masher-1.8.1/ChangeLog0000644000175000017500000002763011105646604013173 000000000000002008-11-09 Ole Laursen * configure.ac: Removed "ja" from ALL_LINGUAS since there's no corresponding .po file. * NEWS: Version 1.8.1 released. * configure.ac: Bumped version number. 2007-10-13 Yannig Marchegay * configure.ac: + Occitan 2007-09-05 Ole Laursen * src/ucompose.hpp: Updated to new version. * MAINTAINERS: Updated to satisfy the new GNOME SVN requirements. 2007-08-28 Satoru SATOH * configure.ac: Added 'ja' to ALL_LINGUAS. 2007-07-27 Raivis Dejus * configure.ac: Added Latvian Translation. 2007-02-27 Pema Geyleg * configure.ac: Added 'dz' to the list. 2007-02-24 Matic Zgur * configure.ac: Added 'sl' to ALL_LINGUAS. 2006-04-18 Kjartan Maraas * configure.ac: Remove obsolete entry for no_NO * po/no.po: And the translation. 2006-03-01 Daniel Nylander * po/sv.po: Updated Swedish translation. 2006-01-24 Clytie Siddall * configure.in Added vi in ALL_LINGUAS line. 2006-01-14 Chao-Hsiung Liao * configure.ac: Added "zh_HK" to ALL_LINGUAS. 2006-01-07 Kjartan Maraas * configure.ac: Add nb to ALL_LINGUAS. 2005-10-09 Ole Laursen * NEWS: Released version 1.8. * configure.ac: Reflect the new requirements. Bump version no. * src/main-window.cpp, src/main-window.hpp, src/main.cpp, src/ui.glade: Ported to gtkmm 2.6 which renders libgnomeui, libgnomemm and libgnomeuimm superfluous. * src/new-game-window.cpp (on_level_changed): Made the translator note a little bit clearer. * README: Fixed requirements. 2005-07-23 Pawan Chitrakar * configure.ac: Added ne in ALL_LINGUAS 2005-04-01 Steve Murphy * configure.ac: Added "rw" to ALL_LINGUAS. 2005-03-29 Alexander Shopov * configure.ac: Added "bg" (Bulgarian) to ALL_LINGUAS 2005-02-15 Christophe Merlet * configure.ac: Added fr to ALL_LINGUAS 2004-11-05 Jordi Mallach * configure.ac (ALL_LINGUAS): Added "ca" (Catalan). 2004-10-05 Amanpreet Singh Alam * configure.ac: Add pa (Punjabi) to ALL_LINGUAS 2004-08-30 Maxim Dziumanenko * configure.ac: Added uk to ALL_LINGUAS 2004-09-13 Jayaradha * configure.ac: Added ta to ALL_LINGUAS. 2004-09-08 Ankit Patel * configure.ac: Added fi (Gujarati) to ALL_LINGUAS. 2004-08-12 Jarkko Ranta * configure.ac: Added fi to ALL_LINGUAS 2004-07-10 Ole Laursen * src/Makefile.am: Removed annoying spaces. 2004-07-09 Ole Laursen * src/ui.glade: Removed unnecessary string. * src/new-game-window.cpp: Added a note to translators. * src/intro.cpp: s/rised/rose/, and reformulated some of the other messages (feedback from Sini S. Ruohomaa). 2004-07-06 Ole Laursen * NEWS: Released version 1.7. 2004-07-02 Ole Laursen * README: Updated the version no. requirement, corrected some formulations. * configure.ac: Bumped version no. * autogen.sh: Create pixmaps/Makefile.povrules with old date so that it exists but will be regenerated. Fixes bootstrap problem. 2004-06-21 Ole Laursen * configure.ac, src/*.[ch]pp: Use gtkmm 2.4 and friends. * src/ucompose.hpp: Updated to version 1.0.4. 2004-06-16 Ole Laursen * src/Makefile.am: Use AM_CXXFLAGS instead of CXXFLAGS. * src/new-game-window.cpp (on_level_changed): Fixed a bug with assigning a reference to an address outside an array. 2004-05-28 Ole Laursen * NEWS: Version 1.6.1 released! * configure.ac: Bumped version no. * src/main-window.cpp: Fixed wrong "splash.png" references. 2004-05-27 Ole Laursen * NEWS: Version 1.6 released! * configure.ac: Bumped version no. * src/monsters.cpp: Fixed long-standing bug where two monsters could occupy the same tile after an egg had been layed. * src/ui.glade, src/main-window.cpp: Construct CanvasAA in main-window.cpp to work around libglade bug. * pixmaps/Makefile.am: Use JPEG to compress the splash image instead of PNG. Saves 90% of the space. 2004-05-24 Ole Laursen * Makefile.am: Add MAINTAINERS to EXTRA_DIST. 2004-05-02 Ole Laursen * src/main-window.hpp, src/main-window.cpp, src/game.cpp: Refactored a bit to use the splash background image. * pixmaps/splash.pov, pixmaps/splash.png, pixmaps/splash-foot.png, pixmaps/Makefile.am: Added splash background image. 2004-04-22 Ole Laursen * NEWS: New version is out! * configure.ac: Bumped the version no. 2004-04-17 Ole Laursen * NEWS: New version is out! * configure.ac: Bumped the version no. 2004-04-08 Adam Weinberger * configure.ac: Added en_CA to ALL_LINGUAS. 2004-03-24 Gareth Owen * configure.ac: Added en_GB to ALL_LINGUAS 2004-03-21 Alastair McKinstry * configure.ac: Added "ga" (Irish) to ALL_LINGUAS. 2004-03-20 Ole Laursen * src/preferences-window.cpp: Added work-around for strange bug. 2004-03-16 Iñaki Larrañaga * configure.ac: Added "eu" (Basque) to ALL_LINGUAS. 2004-03-15 Alessio Frusciante * configure.ac: Added "it" (Italian) to ALL_LINGUAS. 2004-03-11 Gustavo Maciel Dias Vieira * configure.ac: Added pt_BR to ALL_LINGUAS. 2004-02-07 Robert Sedak * configure.ac: Added "hr" (Croatian) to ALL_LINGUAS. 2004-01-16 Kjartan Maraas * configure.ac: Updated Norwegian translation. 2004-01-12 Žygimantas Beručka * configure.ac: Added Lithuanian (lt) to ALL_LINGUAS. 2004-01-10 Ole Laursen * src/pixbuf-drawing.hpp: Corrected an uninitialised xpos. 2004-01-07 Ole Laursen * NEWS: New version is out! 2004-01-03 Abel Cheung * configure.ac: Added "tr" to ALL_LINGUAS. 2004-01-03 Ole Laursen * pixmaps/Makefile.am: Fixed error with later versions of automake. * autogen.sh: Switched to gnome-common autogen.sh. * configure.ac: Bumped version no. * src/game.cpp, src/hero.cpp, src/hero.hpp, monsters.cpp, obstacles.cpp, obstacles.hpp: Replaced the points power-up with an invisibility power-up. * README: Updated to reflect the new power-up. * pixmaps/Makefile.povrules.m4, pixmaps/Makefile.am, pixmaps/invisible-hero.pov: Added invisible hero. 2004-01-02 Ole Laursen * src/main-window.cpp, src/main-window.hpp, src/preferences-window.cpp, src/preferences-window.hpp, src/ui.glade, monster-masher.schemas.in: Added support for fullscreen mode. 2004-01-01 Ole Laursen * Makefile.am (desktopdir): Set to $(datadir)/applications. 2003-12-16 Francisco Javier F. Serrador * configure.ac: Added Spanish (es) to ALL_LINGUAS. 2003-11-18 Christian Neumair * configure.ac: Added German (de) to ALL_LINGUAS. * src/ui.glade: Fixed string. 2003-11-04 Ole Laursen * NEWS: New version is out! * README: Updated colour of point bonus. * src/main-window.cpp: Fixed calculation of canvas size to include border walls. 2003-11-02 Ole Laursen * configure.ac: Bumped version no. * src/TODO: Updated. * pixmaps/Makefile.am, pixmaps/Makefile.povrules.m4, pixmaps/povray-helpers.m4: Use m4 to build Povray rules. * src/game.cpp, src/game.hpp, src/hero.cpp, src/hero.hpp, pixmaps/levitation.pov, pixmaps/hero.pov: Added much neater block movement animation (on blocks instead of player). * src/player.cpp: Adapted to new Arena interface. * src/thing.cpp, src/arena.cpp, src/arena.hpp, src/main-window.cpp, src/main-window.hpp, src/monsters.cpp, src/movement.cpp, src/new-game-window.cpp, src/obstacles.cpp, src/obstacles.hpp, src/splat-helpers.cpp: Support for multiple tile sizes. 2003-10-26 Metin Amiroff * configure.ac: Added az to ALL_LINGUAS. 2003-10-11 Ole Laursen * src/main.cpp: Added exception handling. 2003-10-08 Ole Laursen * configure.ac: Fixed dependency specification. 2003-09-28 Artur Flinta * configure.ac: Added "pl" to ALL_LINGUAS. 2003-09-25 Ole Laursen * NEWS: New version is out! 2003-09-23 Abel Cheung * configure.ac: Added "zh_TW" to ALL_LINGUAS. 2003-09-20 Miloslav Trmac * configure.ac: Added cs (Czech) to configure.in. 2003-09-20 Ole Laursen * configure.ac: Bumped version no. * src/TODO: Updated. * pixmaps/Makefile.am, pixmaps/freeze-box.pov, pixmaps/freeze-box.png: Added freeze box for freezing monsters. * pixmaps/power-up-reward.pov, pixmaps/power-up-explode.pov, pixmaps/power-up-freeze.pov, pixmaps/power-up.inc: Improved look. * pixmaps/power-up-reward.png, pixmaps/power-up-explode.png, pixmaps/power-up-freeze.png: Rerendered. * src/monsters.cpp (update): Changed freeze behaviour. Monsters finish walking, then freeze immediately for as long as Game says monsters are freezing. * README: Cleaned up a bit. * src/main-window.cpp, src/center-menu.cpp, center-menu.hpp: Pressing a mnemonic without pressing Alt now works. * src/Makefile.am: Pass icondir as GNOMEICONDIR to source. * src/main-window.hpp, src/main-window.cpp: Added icon loading and setting code. * monster-masher.png: Rendered icon from seeker-monster.pov. Perhaps not optimal yet, but better than the previous dummy globe. 2003-09-16 Ole Laursen * src/TODO: Added suggestions from Sven Luther. 2003-09-15 Christian Rose * configure.ac: Added "sv" to ALL_LINGUAS. 2003-09-14 Duarte Loreto * configure.ac: Added Portuguese (pt) to ALL_LINGUAS. 2003-09-14 Danilo Šegan * configure.ac: Added "cy" to ALL_LINGUAS. 2003-09-14 Danilo Šegan * configure.ac: Added "sr" and "sr@Latn" to ALL_LINGUAS. 2003-09-13 Ole Laursen * src/ui.glade: Sync'ed level string with string in source. 2003-09-01 Ole Laursen * src/main-window.cpp: Added _() around translatable text. Doh. 2003-08-27 Ole Laursen * sounds/clinck.wav: Added some silence in front of sound to sync better with actual action. * src/hero.cpp (cross_boundary): Added sound when a block is pushed against a block or a wall. * src/ui.glade: Adjusted the start canvas size to match that of the in-game size. * src/new-game-window.cpp (on_start_game_pressed): Adjusted game field size, enlarging vertical size by 2 to make the window more square. * configure.ac: Bumped version number. 2003-08-24 Ole Laursen * src/persistent.cpp: Removed references to non-existent high score list. * src/main-window.cpp (generate_background): Removed code for generating a non-random background. 2003-08-23 Ole Laursen * src/center-menu.cpp (CenterMenu): Made the menu entries normal size instead of big. * src/main-window.cpp (on_about_activated): Call about->set_transient_for so that the dialog is centered upon the window. * src/monster-masher.glade: Renamed to ui.glade. * src/main-window.hpp, src/monster-masher.glade: Converted main-window to Gtk::Window instead of Gnome::UI::App. Removes dependency on libbonobomm. * src/main-window.cpp, src/main-window.hpp: Removed ending game confirmation. monster-masher-1.8.1/INSTALL0000644000175000017500000002243211105646030012436 00000000000000Installation Instructions ************************* Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc. This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Basic Installation ================== These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves the results of its tests to speed up reconfiguring. (Caching is disabled by default to prevent problems with accidental use of stale cache files.) If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If you are using the cache, and at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.ac' (or `configure.in') is used to create `configure' by a program called `autoconf'. You only need `configure.ac' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. If you're using `csh' on an old version of System V, you might need to type `sh ./configure' instead to prevent `csh' from trying to execute `configure' itself. Running `configure' takes awhile. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with the package. 4. Type `make install' to install the programs and any data files and documentation. 5. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is also a `make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the `configure' script does not know about. Run `./configure --help' for details on some of the pertinent environment variables. You can give `configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix *Note Defining Variables::, for more details. Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you must use a version of `make' that supports the `VPATH' variable, such as GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. If you have to use a `make' that does not support the `VPATH' variable, you have to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. Installation Names ================== By default, `make install' installs the package's commands under `/usr/local/bin', include files under `/usr/local/include', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the option `--prefix=PREFIX'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you pass the option `--exec-prefix=PREFIX' to `configure', the package uses PREFIX as the prefix for installing programs and libraries. Documentation and other data files still use the regular prefix. In addition, if you use an unusual directory layout you can give options like `--bindir=DIR' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories you can set and what kinds of files go in them. If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. Optional Features ================= Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. Specifying the System Type ========================== There may be some features `configure' cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the _same_ architectures, `configure' can figure that out, but if it prints a message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: CPU-COMPANY-SYSTEM where SYSTEM can have one of these forms: OS KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should use the option `--target=TYPE' to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with `--host=TYPE'. Sharing Defaults ================ If you want to set default values for `configure' scripts to share, you can create a site shell script called `config.site' that gives default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. A warning: not all `configure' scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the environment passed to `configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set them in the `configure' command line, using `VAR=value'. For example: ./configure CC=/usr/local2/bin/gcc causes the specified `gcc' to be used as the C compiler (unless it is overridden in the site shell script). Here is a another example: /bin/bash ./configure CONFIG_SHELL=/bin/bash Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent configuration-related scripts to be executed by `/bin/bash'. `configure' Invocation ====================== `configure' recognizes the following options to control how it operates. `--help' `-h' Print a summary of the options to `configure', and exit. `--version' `-V' Print the version of Autoconf used to generate the `configure' script, and exit. `--cache-file=FILE' Enable the cache: use and save the results of the tests in FILE, traditionally `config.cache'. FILE defaults to `/dev/null' to disable caching. `--config-cache' `-C' Alias for `--cache-file=config.cache'. `--quiet' `--silent' `-q' Do not print messages saying which checks are being made. To suppress all normal output, redirect it to `/dev/null' (any error messages will still be shown). `--srcdir=DIR' Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. monster-masher-1.8.1/NEWS0000644000175000017500000000431111105645541012106 00000000000000Version 1.8.1 (November 9 2008) ------------------------------- One bug fix and lots of translation updates. Version 1.8 (October 10 2005) ----------------------------- Take advantage of new API in gtkmm 2.6 to avoid dependency on libgnomeuimm and libgnomemm. Lots of updated translation. A few bug fixes. Version 1.7 (July 6 2004) ------------------------- Ported to gtkmm 2.4. Fixed a crash that occurs on certain locales. Version 1.6.1 (May 28 2004) --------------------------- Fixed a stupid bug where "splash.png" was used instead of "splash.jpg". Version 1.6 (May 27 2004) ------------------------- Added a splash background image for the menus and the introduction. Fixed a long-standing bug where two monsters could occupy the same tile. Fixed an anti-aliasing bug with GTK+ 2.4. Revised Portuguese translation. Version 1.5.2 (April 22 2004) ----------------------------- Regenerated the intltool files. It seems they were broken. Version 1.5.1 (April 17 2004) ----------------------------- Some bugfixes. New and updated translations. Version 1.5 (January 7 2004) ---------------------------- Support for fullscreen mode has been added and is now the default. The point power-up has been replaced with a much more funny invisibility power-up. Some bugfixes. New and updated translations. Version 1.4 (November 4 2003) ----------------------------- Added much neater block movement animation (on blocks instead of the player). Added support for multiple tile sizes. Tiles of size 32x32 may now be choosed (instead of 24x24) automatically based on the screen size. Cleaned up some of the code. Version 1.3 (September 25 2003) ------------------------------- Improved the look of the power-ups. Improved handling of freeze bonus and added special effect to frozen monsters. Fixed the menus to don't require Alt + key. Rendered an icon and made the various windows use it. New and updated translations. Version 1.2 (August 27 2003) ---------------------------- Fixed a couple of minor bugs. Added a new sound for when a block hits a wall or another block. Version 1.1 (August 24 2003) ---------------------------- Minor code cleanup and some other fixes. Should build without implicitly needing Bonobo-stuff. monster-masher-1.8.1/depcomp0000755000175000017500000003710011105646027012766 00000000000000#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2005-07-09.11 # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva . case $1 in '') echo "$0: No command. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by `PROGRAMS ARGS'. object Object file output by `PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputing dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. tr ' ' ' ' < "$tmpdepfile" | ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like `#:fec' to the end of the # dependency line. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' ' ' ' >> $depfile echo >> $depfile # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> $depfile else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts `$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` tmpdepfile="$stripped.u" if test "$libtool" = yes; then "$@" -Wc,-M else "$@" -M fi stat=$? if test -f "$tmpdepfile"; then : else stripped=`echo "$stripped" | sed 's,^.*/,,'` tmpdepfile="$stripped.u" fi if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi if test -f "$tmpdepfile"; then outname="$stripped.o" # Each line is of the form `foo.o: dependent.h'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; icc) # Intel's C compiler understands `-MD -MF file'. However on # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h # which is wrong. We want: # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using \ : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form `foo.o: dependent.h', # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in `foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then # With Tru64 cc, shared objects can also be used to make a # static library. This mecanism is used in libtool 1.4 series to # handle both shared and static libraries in a single compilation. # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. # # With libtool 1.5 this exception was removed, and libtool now # generates 2 separate objects for the 2 libraries. These two # compilations output dependencies in in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 tmpdepfile2=$dir$base.o.d # libtool 1.5 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.o.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d tmpdepfile4=$dir$base.d "$@" -MD fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" # That's a tab and a space in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for `:' # in the target name. This is to cope with DOS-style filenames: # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. "$@" $dashmflag | sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" tr ' ' ' ' < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # X makedepend shift cleared=no for arg in "$@"; do case $cleared in no) set ""; shift cleared=yes ;; esac case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix="`echo $object | sed 's/^.*\././'`" touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' ' ' | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o, # because we must use -o when running libtool. "$@" || exit $? IFS=" " for arg do case "$arg" in "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: monster-masher-1.8.1/install-sh0000755000175000017500000002202111105646023013405 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2005-05-14.22 # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # 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 # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. It can only install one file at a time, a restriction # shared with many OS's install programs. # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit="${DOITPROG-}" # put in absolute paths if you don't have them in your path; or use env. vars. mvprog="${MVPROG-mv}" cpprog="${CPPROG-cp}" chmodprog="${CHMODPROG-chmod}" chownprog="${CHOWNPROG-chown}" chgrpprog="${CHGRPPROG-chgrp}" stripprog="${STRIPPROG-strip}" rmprog="${RMPROG-rm}" mkdirprog="${MKDIRPROG-mkdir}" chmodcmd="$chmodprog 0755" chowncmd= chgrpcmd= stripcmd= rmcmd="$rmprog -f" mvcmd="$mvprog" src= dst= dir_arg= dstarg= no_target_directory= usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: -c (ignored) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. --help display this help and exit. --version display version info and exit. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test -n "$1"; do case $1 in -c) shift continue;; -d) dir_arg=true shift continue;; -g) chgrpcmd="$chgrpprog $2" shift shift continue;; --help) echo "$usage"; exit $?;; -m) chmodcmd="$chmodprog $2" shift shift continue;; -o) chowncmd="$chownprog $2" shift shift continue;; -s) stripcmd=$stripprog shift continue;; -t) dstarg=$2 shift shift continue;; -T) no_target_directory=true shift continue;; --version) echo "$0 $scriptversion"; exit $?;; *) # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. test -n "$dir_arg$dstarg" && break # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dstarg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dstarg" shift # fnord fi shift # arg dstarg=$arg done break;; esac done if test -z "$1"; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi for src do # Protect names starting with `-'. case $src in -*) src=./$src ;; esac if test -n "$dir_arg"; then dst=$src src= if test -d "$dst"; then mkdircmd=: chmodcmd= else mkdircmd=$mkdirprog fi else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dstarg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dstarg # Protect names starting with `-'. case $dst in -*) dst=./$dst ;; esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then echo "$0: $dstarg: Is a directory" >&2 exit 1 fi dst=$dst/`basename "$src"` fi fi # This sed command emulates the dirname command. dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` # Make sure that the destination directory exists. # Skip lots of stat calls in the usual case. if test ! -d "$dstdir"; then defaultIFS=' ' IFS="${IFS-$defaultIFS}" oIFS=$IFS # Some sh's can't handle IFS=/ for some reason. IFS='%' set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` shift IFS=$oIFS pathcomp= while test $# -ne 0 ; do pathcomp=$pathcomp$1 shift if test ! -d "$pathcomp"; then $mkdirprog "$pathcomp" # mkdir can fail with a `File exist' error in case several # install-sh are creating the directory concurrently. This # is OK. test -d "$pathcomp" || exit fi pathcomp=$pathcomp/ done fi if test -n "$dir_arg"; then $doit $mkdircmd "$dst" \ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } else dstfile=`basename "$dst"` # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 trap '(exit $?); exit' 1 2 13 15 # Copy the file name to the temp name. $doit $cpprog "$src" "$dsttmp" && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && # Now rename the file to the real destination. { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ || { # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { if test -f "$dstdir/$dstfile"; then $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ || { echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 (exit 1); exit 1 } else : fi } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" } } fi || { (exit 1); exit 1; } done # The final little trick to "correctly" pass the exit status to the exit trap. { (exit 0); exit 0 } # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: monster-masher-1.8.1/missing0000755000175000017500000002540611105646023013012 00000000000000#! /bin/sh # Common stub for a few missing GNU programs while installing. scriptversion=2005-06-08.21 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi run=: # In the cases where this matters, `missing' is being run in the # srcdir already. if test -f configure.ac; then configure_ac=configure.ac else configure_ac=configure.in fi msg="missing on your system" case "$1" in --run) # Try to run requested program, and just exit if it succeeds. run= shift "$@" && exit 0 # Exit code 63 means version mismatch. This often happens # when the user try to use an ancient version of a tool on # a file that requires a minimum version. In this case we # we should proceed has if the program had been absent, or # if --run hadn't been passed. if test $? = 63; then run=: msg="probably too old" fi ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an error status if there is no known handling for PROGRAM. Options: -h, --help display this help and exit -v, --version output version information and exit --run try to run the given command, and emulate it if it fails Supported PROGRAM values: aclocal touch file \`aclocal.m4' autoconf touch file \`configure' autoheader touch file \`config.h.in' automake touch all \`Makefile.in' files bison create \`y.tab.[ch]', if possible, from existing .[ch] flex create \`lex.yy.c', if possible, from existing .c help2man touch the output file lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: Unknown \`$1' option" echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; esac # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect # the program). case "$1" in lex|yacc) # Not GNU programs, they don't have --version. ;; tar) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then exit 1 fi ;; *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then # Could not run --version or --help. This is probably someone # running `$TOOL --version' or `$TOOL --help' to check whether # $TOOL exists and not knowing $TOOL uses missing. exit 1 fi ;; esac # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. case "$1" in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." touch aclocal.m4 ;; autoconf) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." touch configure ;; autoheader) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` test -z "$files" && files="config.h" touch_files= for f in $files; do case "$f" in *:*) touch_files="$touch_files "`echo "$f" | sed -e 's/^[^:]*://' -e 's/:.*//'`;; *) touch_files="$touch_files $f.in";; esac done touch $touch_files ;; automake*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." find . -type f -name Makefile.am -print | sed 's/\.am$/.in/' | while read f; do touch "$f"; done ;; autom4te) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the proper tools for further handling them. You can get \`$1' as part of \`Autoconf' from any GNU archive site." file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'` test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo "#! /bin/sh" echo "# Created by GNU Automake missing as a replacement of" echo "# $ $@" echo "exit 0" chmod +x $file exit 1 fi ;; bison|yacc) echo 1>&2 "\ WARNING: \`$1' $msg. You should only need it if you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if [ $# -ne 1 ]; then eval LASTARG="\${$#}" case "$LASTARG" in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" y.tab.c fi SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" y.tab.h fi ;; esac fi if [ ! -f y.tab.h ]; then echo >y.tab.h fi if [ ! -f y.tab.c ]; then echo 'main() { return 0; }' >y.tab.c fi ;; lex|flex) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get \`Flex' from any GNU archive site." rm -f lex.yy.c if [ $# -ne 1 ]; then eval LASTARG="\${$#}" case "$LASTARG" in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" lex.yy.c fi ;; esac fi if [ ! -f lex.yy.c ]; then echo 'main() { return 0; }' >lex.yy.c fi ;; help2man) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the \`Help2man' package in order for those modifications to take effect. You can get \`Help2man' from any GNU archive site." file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` fi if [ -f "$file" ]; then touch $file else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" exit 1 fi ;; makeinfo) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file indirectly affecting the aspect of the manual. The spurious call might also be the consequence of using a buggy \`make' (AIX, DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then # ... or it is the one specified with @setfilename ... infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` # ... or it is derived from the source name (dir/f.texi becomes f.info) test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi # If the file does not exist, the user really needs makeinfo; # let's fail without touching anything. test -f $file || exit 1 touch $file ;; tar) shift # We have already tried tar in the generic part. # Look for gnutar/gtar before invocation to avoid ugly error # messages. if (gnutar --version > /dev/null 2>&1); then gnutar "$@" && exit 0 fi if (gtar --version > /dev/null 2>&1); then gtar "$@" && exit 0 fi firstarg="$1" if shift; then case "$firstarg" in *o*) firstarg=`echo "$firstarg" | sed s/o//` tar "$firstarg" "$@" && exit 0 ;; esac case "$firstarg" in *h*) firstarg=`echo "$firstarg" | sed s/h//` tar "$firstarg" "$@" && exit 0 ;; esac fi echo 1>&2 "\ WARNING: I can't seem to be able to run \`tar' with the given arguments. You may want to install GNU tar or Free paxutils, or check the command line arguments." exit 1 ;; *) echo 1>&2 "\ WARNING: \`$1' is needed, and is $msg. You might have modified some files without having the proper tools for further handling them. Check the \`README' file, it often tells you about the needed prerequisites for installing this package. You may also peek at any GNU archive site, in case some other package would contain this missing \`$1' program." exit 1 ;; esac exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: monster-masher-1.8.1/mkinstalldirs0000755000175000017500000000662211105646030014216 00000000000000#! /bin/sh # mkinstalldirs --- make directory hierarchy scriptversion=2005-06-29.22 # Original author: Noah Friedman # Created: 1993-05-16 # Public domain. # # This file is maintained in Automake, please report # bugs to or send patches to # . errstatus=0 dirmode= usage="\ Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... Create each directory DIR (with mode MODE, if specified), including all leading file name components. Report bugs to ." # process command line arguments while test $# -gt 0 ; do case $1 in -h | --help | --h*) # -h for help echo "$usage" exit $? ;; -m) # -m PERM arg shift test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } dirmode=$1 shift ;; --version) echo "$0 $scriptversion" exit $? ;; --) # stop option processing shift break ;; -*) # unknown option echo "$usage" 1>&2 exit 1 ;; *) # first non-opt arg break ;; esac done for file do if test -d "$file"; then shift else break fi done case $# in 0) exit 0 ;; esac # Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and # mkdir -p a/c at the same time, both will detect that a is missing, # one will create a, then the other will try to create a and die with # a "File exists" error. This is a problem when calling mkinstalldirs # from a parallel make. We use --version in the probe to restrict # ourselves to GNU mkdir, which is thread-safe. case $dirmode in '') if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -p -- $*" exec mkdir -p -- "$@" else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. test -d ./-p && rmdir ./-p test -d ./--version && rmdir ./--version fi ;; *) if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -m $dirmode -p -- $*" exec mkdir -m "$dirmode" -p -- "$@" else # Clean up after NextStep and OpenStep mkdir. for d in ./-m ./-p ./--version "./$dirmode"; do test -d $d && rmdir $d done fi ;; esac for file do case $file in /*) pathcomp=/ ;; *) pathcomp= ;; esac oIFS=$IFS IFS=/ set fnord $file shift IFS=$oIFS for d do test "x$d" = x && continue pathcomp=$pathcomp$d case $pathcomp in -*) pathcomp=./$pathcomp ;; esac if test ! -d "$pathcomp"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? if test ! -d "$pathcomp"; then errstatus=$lasterr else if test ! -z "$dirmode"; then echo "chmod $dirmode $pathcomp" lasterr= chmod "$dirmode" "$pathcomp" || lasterr=$? if test ! -z "$lasterr"; then errstatus=$lasterr fi fi fi fi pathcomp=$pathcomp/ done done exit $errstatus # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: monster-masher-1.8.1/monster-masher.desktop.in0000644000175000017500000000036210547745537016374 00000000000000[Desktop Entry] Encoding=UTF-8 _Name=Monster Masher _Comment=Mash monsters and save the gnomes Exec=monster-masher Icon=monster-masher.png Terminal=false Type=Application Categories=GNOME;Application;Game;ArcadeGame; StartupNotification=true monster-masher-1.8.1/monster-masher.schemas.in0000644000175000017500000002073010547745537016347 00000000000000 /schemas/apps/monster-masher/fullscreen /apps/monster-masher/fullscreen monster-masher bool true Use fullscreen /schemas/apps/monster-masher/player1/left_key /apps/monster-masher/player1/left_key monster-masher string KP_Left Key for moving to the left The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player1/left_up_key /apps/monster-masher/player1/left_up_key monster-masher string KP_Home Key for moving to the left and up The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player1/up_key /apps/monster-masher/player1/up_key monster-masher string KP_Up Key for moving up The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player1/right_up_key /apps/monster-masher/player1/right_up_key monster-masher string KP_Page_Up Key for moving to the right and up The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player1/right_key /apps/monster-masher/player1/right_key monster-masher string KP_Right Key for moving to the right The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player1/right_down_key /apps/monster-masher/player1/right_down_key monster-masher string KP_Page_Down Key for moving to the right and down The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player1/down_key /apps/monster-masher/player1/down_key monster-masher string KP_Down Key for moving down The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player1/left_down_key /apps/monster-masher/player1/left_down_key monster-masher string KP_End Key for moving to the left and down The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player1/pull_key /apps/monster-masher/player1/pull_key monster-masher string Control_R Key for activating pulling of blocks The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/left_key /apps/monster-masher/player2/left_key monster-masher string d Key for moving to the left The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/left_up_key /apps/monster-masher/player2/left_up_key monster-masher string e Key for moving to the left and up The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/up_key /apps/monster-masher/player2/up_key monster-masher string r Key for moving up The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/right_up_key /apps/monster-masher/player2/right_up_key monster-masher string t Key for moving to the right and up The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/right_key /apps/monster-masher/player2/right_key monster-masher string g Key for moving to the right The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/right_down_key /apps/monster-masher/player2/right_down_key monster-masher string b Key for moving to the right and down The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/down_key /apps/monster-masher/player2/down_key monster-masher string v Key for moving down The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/left_down_key /apps/monster-masher/player2/left_down_key monster-masher string c Key for moving to the left and down The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). /schemas/apps/monster-masher/player2/pull_key /apps/monster-masher/player2/pull_key monster-masher string Control_L Key for activating pulling of blocks The string should be the GDK name of the key value to use (can be found in gdk/gdkkeynames.c). monster-masher-1.8.1/monster-masher.desktop0000644000175000017500000000666411105646346015767 00000000000000[Desktop Entry] Encoding=UTF-8 Name=Monster Masher Name[bg]=Monster Masher Name[ca]=Monster Masher Name[cs]=Monster Masher Name[cy]=Mathrwr Bwystfilod Name[da]=Monstermoser Name[de]=Monster Masher Name[dz]=མཱོནསི་ཊར་མ་ཤར་ Name[el]=Monster Masher Name[en_CA]=Monster Masher Name[en_GB]=Monster Masher Name[es]=Monster Masher Name[eu]=Basapizti birrinketa Name[fi]=Monsunmuussaaja Name[fr]=Monster Masher Name[ga]=Monster Masher Name[gu]=મોન્સ્ટર મેશર Name[it]=Monster Masher Name[ka]=Monster Masher – მონსტრთა მმუსვრელი Name[lt]=Pabaisų Naikintojas Name[lv]=Monster Masher Name[nb]=Monster Masher Name[ne]=राक्षस मिश्रण Name[nl]=Monster Masher Name[pl]=Monster Masher Name[pt]=Monster Masher Name[pt_BR]=Esmagador de Monstros Name[sl]=Mečkalec Pošasti Name[sr]=Сређивање чудовишта Name[sr@Latn]=Sređivanje čudovišta Name[sv]=Monster Masher Name[ta]=மான்ஸ்டர் மேஷர் Name[uk]=Monster Masher Name[vi]=Monster Masher Name[zh_HK]=Monster Masher Name[zh_TW]=Monster Masher Comment=Mash monsters and save the gnomes Comment[bg]=Мачкайте чудовища и спасете гномчетата Comment[ca]=Aixafa els monstres i salva els gnoms Comment[cs]=Rozmačkávejte příšery a zachraňte trpaslíky Comment[cy]=Malu bwystfilod ac arbed y corrachod Comment[da]=Mos monstre og red gnomerne Comment[de]=Monster zerschmettern und so die Gnome retten Comment[dz]=མཱོནསི་ཊར་བསྣད་ནི་དང་ཇི་ནོམ་ཚུ་སྲུང་ Comment[el]=Διαλύστε τα τέρατα και σώστε τα ξωτικά Comment[en_CA]=Mash monsters and save the gnomes Comment[en_GB]=Mash monsters and save the gnomes Comment[es]=Aplasta a los monstruos y salva a los gnomos Comment[eu]=Birrindu basapiztiak eta salbatu ipotxak Comment[fi]=Liiskaa hirviöt ja pelasta maahiset Comment[fr]=Écrase les monstres et sauve les gnomes Comment[it]=Schiaccia i mostri e salva gli gnomi Comment[ka]=მუსრი გაავლეთ მონსტრებს და დაიხსენით კეთილი გნომები Comment[lt]=Naikinkite pabaisas ir gelbėkite nykštukus Comment[lv]=Mash monsters un glabj rūķus Comment[nb]=Knus monstrene og redd gnomene Comment[ne]=राक्षसलाई मारेर जिनोमहरूलाई बचाउनुहोस् Comment[nl]=Plet monsters en red de dwergen Comment[pa]=ਮੈਸ਼ ਮੋਨਸਟੀਰ ਅਤੇ ਗਨੋਮ ਸੰਭਾਲੋ Comment[pl]=Zniszcz potwory i uratuj gnomy Comment[pt]=Esmague monstros e salve os gnomos Comment[pt_BR]=Amasse os monstros e salve os gnomos Comment[sl]=Zmečkaj pošasti in reši Gnome Comment[sr]=Средите чудовишта и спасите гноме Comment[sr@Latn]=Sredite čudovišta i spasite gnome Comment[sv]=Mosa monster och rädda tomtarna Comment[ta]=அரக்கர்களை நொருக்கி கனோம்களைக் காப்பாற்று Comment[uk]=Розчавлення монстрів та спасіння гномів Comment[vi]=Hãy nghiền quái vật và cứu những thần lùn Comment[zh_HK]=碾碎怪物,拯救精靈 Comment[zh_TW]=碾碎怪物,拯救精靈 Exec=monster-masher Icon=monster-masher.png Terminal=false Type=Application Categories=GNOME;Application;Game;ArcadeGame; StartupNotification=true monster-masher-1.8.1/monster-masher.png0000644000175000017500000001061010547745537015077 00000000000000PNG  IHDR00WgAMA asBIT|d/IDATxۏ\Օg}uv}qip0 A# qA"!d"=p`f=o}k!^|ţ###չ_o79˲æiض4͋ o:tWeϿ}RUqi3w_fx?_|]×>066v駟=،Ͱ*/ Œ$ɴF$ ~w?^]}ϟny~F0&\}izzEth6LOOs)E)zEMmx֚A. c*R_y~LMM,//z>,{/!"m#o/ԅ.+++LOO)qSTZR q8w9w4J)8@E9/z;iJQ|$ZSq2$o @EyQa)'|r u1 r0Jgz I4EeZ-;0yxa`R~-mzI0hZ(&79KyO(mɂ'`!c.GFX2JbBpFUBvM;Mtd jEi!,yxn(gye۶_- z~kׅTUq Э*IR12MA\ƫTpJBǯ)j#mȻ]ִau 41v@JI8on@^oC5i+EŶi8J!B`J<'LkA18Ǭ!8&stQlԏi28Zӎc4%њ$m_/Wuj!w}e0$Rrx •m 1f> \th`eek5Zޅ xKK[;XhGʍ ( P0e ĶmcR2}Ȣ@)EeIJ0L;|LkP @t:T юc4DiEQl2OGtrO?t(&p>UFal>qDwtԶrRXZx˟z=fր,#HSEj͛c$ϯ[xI۶8|hŋ]]I_)ڞXM5gL{w˗ɴf0Rcl 5_"]YiʸXIHS+ .&me0h9!Ȅ@9Tcד{ޤyGl۞TEQ`!^cnem|JG]k椄q>]\0M4$3MRӤn3w[*2o>>s۶q]4۪zj4͉^wg?ϼjeA@j5`r#Imؿ9_{g,˚)3AP**ny睋Yo^u+X0uz +++$!sWÇ:vMfq[<pk{޽JIT} $@ generated_images = splash.jpg temporary_images = splash.png include $(srcdir)/Makefile.povrules splash.png: splash.pov $(POVRAY) $(POVFLAGS) +w960 +h704 +o$@ $< splash.jpg: splash.png convert $< $@ monster-masher-1.8.1/pixmaps/Makefile.in0000644000175000017500000033465611105646644015164 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 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@ # monster rules srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ 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 = : DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/Makefile.povrules subdir = pixmaps ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = 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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(pixmapdir)" pixmapDATA_INSTALL = $(INSTALL_DATA) DATA = $(pixmap_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DEPS_CFLAGS = @DEPS_CFLAGS@ DEPS_LIBS = @DEPS_LIBS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMAS_INSTALL_FALSE = @GCONF_SCHEMAS_INSTALL_FALSE@ GCONF_SCHEMAS_INSTALL_TRUE = @GCONF_SCHEMAS_INSTALL_TRUE@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ 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_alias = @build_alias@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ 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@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ pixmapdir = $(datadir)/$(PACKAGE)/pixmaps pixmap_DATA = $(generated_images) \ footprint-right-leftmost.png footprint-right-down-leftmost.png \ footprint-down-leftmost.png footprint-left-down-leftmost.png \ footprint-left-leftmost.png footprint-left-up-leftmost.png \ footprint-up-leftmost.png footprint-right-up-leftmost.png \ footprint-right-rightmost.png footprint-right-down-rightmost.png \ footprint-down-rightmost.png footprint-left-down-rightmost.png \ footprint-left-rightmost.png footprint-left-up-rightmost.png \ footprint-up-rightmost.png footprint-right-up-rightmost.png EXTRA_DIST = $(pixmap_DATA) $(povsources) splash-foot.png povsources = settings.inc monster-blob.inc gore-blob.inc hero.inc egg.inc \ block.pov levitation.pov wall.pov monster-wall.pov \ power-up-invisibility.pov power-up-freeze.pov power-up-explode.pov \ power-up.inc \ plain-monster.pov plain-gore.pov \ hard-monster.pov hard-gore.pov \ seeker-monster.pov seeker-gore.pov \ egg-layer-monster.pov egg-layer-gore.pov \ freeze-box.pov \ plain-egg.pov hard-egg.pov seeker-egg.pov egg-layer-egg.pov \ hero.pov invisible-hero.pov hero-gore.pov \ splash.pov CLEANFILES = $(temporary_images) POVRAY = povray POVFLAGS = "-p -d +ua +a +kc -gr -gs" generated_images = splash.jpg plain-monster-32.png \ plain-monster-24.png plain-gore-32.png plain-gore-24.png \ hard-monster-32.png hard-monster-24.png hard-gore-32.png \ hard-gore-24.png seeker-monster-32.png seeker-monster-24.png \ seeker-gore-32.png seeker-gore-24.png egg-layer-monster-32.png \ egg-layer-monster-24.png egg-layer-gore-32.png \ egg-layer-gore-24.png plain-egg-32.png plain-egg-24.png \ hard-egg-32.png hard-egg-24.png seeker-egg-32.png \ seeker-egg-24.png egg-layer-egg-32.png egg-layer-egg-24.png \ hero-right-32.png hero-right-24.png hero-right-down-32.png \ hero-right-down-24.png hero-down-32.png hero-down-24.png \ hero-left-down-32.png hero-left-down-24.png hero-left-32.png \ hero-left-24.png hero-left-up-32.png hero-left-up-24.png \ hero-up-32.png hero-up-24.png hero-right-up-32.png \ hero-right-up-24.png invisible-hero-right-32.png \ invisible-hero-right-24.png invisible-hero-right-down-32.png \ invisible-hero-right-down-24.png invisible-hero-down-32.png \ invisible-hero-down-24.png invisible-hero-left-down-32.png \ invisible-hero-left-down-24.png invisible-hero-left-32.png \ invisible-hero-left-24.png invisible-hero-left-up-32.png \ invisible-hero-left-up-24.png invisible-hero-up-32.png \ invisible-hero-up-24.png invisible-hero-right-up-32.png \ invisible-hero-right-up-24.png hero-gore-32.png \ hero-gore-24.png block-32.png block-24.png wall-32.png \ wall-24.png monster-wall-32.png monster-wall-24.png \ freeze-box-32.png freeze-box-24.png \ power-up-invisibility-32.png power-up-invisibility-24.png \ power-up-freeze-32.png power-up-freeze-24.png \ power-up-explode-32.png power-up-explode-24.png \ levitation-32.png levitation-24.png temporary_images = splash.png plain-monster-32-01.png \ plain-monster-32-02.png plain-monster-32-03.png \ plain-monster-32-04.png plain-monster-32-05.png \ plain-monster-32-06.png plain-monster-32-07.png \ plain-monster-32-08.png plain-monster-32-09.png \ plain-monster-32-10.png plain-monster-32-11.png \ plain-monster-32-12.png plain-monster-32-13.png \ plain-monster-32-14.png plain-monster-32-15.png \ plain-monster-32-16.png plain-monster-32-17.png \ plain-monster-32-18.png plain-monster-32-19.png \ plain-monster-32-20.png plain-monster-32-21.png \ plain-monster-32-22.png plain-monster-32-23.png \ plain-monster-32-24.png plain-monster-32-25.png \ plain-monster-32-26.png plain-monster-32-27.png \ plain-monster-32-28.png plain-monster-32-29.png \ plain-monster-32-30.png plain-monster-32-31.png \ plain-monster-32-32.png plain-monster-24-01.png \ plain-monster-24-02.png plain-monster-24-03.png \ plain-monster-24-04.png plain-monster-24-05.png \ plain-monster-24-06.png plain-monster-24-07.png \ plain-monster-24-08.png plain-monster-24-09.png \ plain-monster-24-10.png plain-monster-24-11.png \ plain-monster-24-12.png plain-monster-24-13.png \ plain-monster-24-14.png plain-monster-24-15.png \ plain-monster-24-16.png plain-monster-24-17.png \ plain-monster-24-18.png plain-monster-24-19.png \ plain-monster-24-20.png plain-monster-24-21.png \ plain-monster-24-22.png plain-monster-24-23.png \ plain-monster-24-24.png plain-monster-24-25.png \ plain-monster-24-26.png plain-monster-24-27.png \ plain-monster-24-28.png plain-monster-24-29.png \ plain-monster-24-30.png plain-monster-24-31.png \ plain-monster-24-32.png plain-gore-32-1.png \ plain-gore-32-2.png plain-gore-32-3.png plain-gore-32-4.png \ plain-gore-32-5.png plain-gore-32-6.png plain-gore-32-7.png \ plain-gore-32-8.png plain-gore-24-1.png plain-gore-24-2.png \ plain-gore-24-3.png plain-gore-24-4.png plain-gore-24-5.png \ plain-gore-24-6.png plain-gore-24-7.png plain-gore-24-8.png \ hard-monster-32-01.png hard-monster-32-02.png \ hard-monster-32-03.png hard-monster-32-04.png \ hard-monster-32-05.png hard-monster-32-06.png \ hard-monster-32-07.png hard-monster-32-08.png \ hard-monster-32-09.png hard-monster-32-10.png \ hard-monster-32-11.png hard-monster-32-12.png \ hard-monster-32-13.png hard-monster-32-14.png \ hard-monster-32-15.png hard-monster-32-16.png \ hard-monster-32-17.png hard-monster-32-18.png \ hard-monster-32-19.png hard-monster-32-20.png \ hard-monster-32-21.png hard-monster-32-22.png \ hard-monster-32-23.png hard-monster-32-24.png \ hard-monster-32-25.png hard-monster-32-26.png \ hard-monster-32-27.png hard-monster-32-28.png \ hard-monster-32-29.png hard-monster-32-30.png \ hard-monster-32-31.png hard-monster-32-32.png \ hard-monster-32-33.png hard-monster-32-34.png \ hard-monster-32-35.png hard-monster-32-36.png \ hard-monster-32-37.png hard-monster-32-38.png \ hard-monster-32-39.png hard-monster-32-40.png \ hard-monster-32-41.png hard-monster-32-42.png \ hard-monster-32-43.png hard-monster-32-44.png \ hard-monster-32-45.png hard-monster-32-46.png \ hard-monster-32-47.png hard-monster-32-48.png \ hard-monster-24-01.png hard-monster-24-02.png \ hard-monster-24-03.png hard-monster-24-04.png \ hard-monster-24-05.png hard-monster-24-06.png \ hard-monster-24-07.png hard-monster-24-08.png \ hard-monster-24-09.png hard-monster-24-10.png \ hard-monster-24-11.png hard-monster-24-12.png \ hard-monster-24-13.png hard-monster-24-14.png \ hard-monster-24-15.png hard-monster-24-16.png \ hard-monster-24-17.png hard-monster-24-18.png \ hard-monster-24-19.png hard-monster-24-20.png \ hard-monster-24-21.png hard-monster-24-22.png \ hard-monster-24-23.png hard-monster-24-24.png \ hard-monster-24-25.png hard-monster-24-26.png \ hard-monster-24-27.png hard-monster-24-28.png \ hard-monster-24-29.png hard-monster-24-30.png \ hard-monster-24-31.png hard-monster-24-32.png \ hard-monster-24-33.png hard-monster-24-34.png \ hard-monster-24-35.png hard-monster-24-36.png \ hard-monster-24-37.png hard-monster-24-38.png \ hard-monster-24-39.png hard-monster-24-40.png \ hard-monster-24-41.png hard-monster-24-42.png \ hard-monster-24-43.png hard-monster-24-44.png \ hard-monster-24-45.png hard-monster-24-46.png \ hard-monster-24-47.png hard-monster-24-48.png \ hard-gore-32-1.png hard-gore-32-2.png hard-gore-32-3.png \ hard-gore-32-4.png hard-gore-32-5.png hard-gore-32-6.png \ hard-gore-32-7.png hard-gore-32-8.png hard-gore-24-1.png \ hard-gore-24-2.png hard-gore-24-3.png hard-gore-24-4.png \ hard-gore-24-5.png hard-gore-24-6.png hard-gore-24-7.png \ hard-gore-24-8.png seeker-monster-32-01.png \ seeker-monster-32-02.png seeker-monster-32-03.png \ seeker-monster-32-04.png seeker-monster-32-05.png \ seeker-monster-32-06.png seeker-monster-32-07.png \ seeker-monster-32-08.png seeker-monster-32-09.png \ seeker-monster-32-10.png seeker-monster-32-11.png \ seeker-monster-32-12.png seeker-monster-32-13.png \ seeker-monster-32-14.png seeker-monster-32-15.png \ seeker-monster-32-16.png seeker-monster-32-17.png \ seeker-monster-32-18.png seeker-monster-32-19.png \ seeker-monster-32-20.png seeker-monster-32-21.png \ seeker-monster-32-22.png seeker-monster-32-23.png \ seeker-monster-32-24.png seeker-monster-32-25.png \ seeker-monster-32-26.png seeker-monster-32-27.png \ seeker-monster-32-28.png seeker-monster-32-29.png \ seeker-monster-32-30.png seeker-monster-32-31.png \ seeker-monster-32-32.png seeker-monster-24-01.png \ seeker-monster-24-02.png seeker-monster-24-03.png \ seeker-monster-24-04.png seeker-monster-24-05.png \ seeker-monster-24-06.png seeker-monster-24-07.png \ seeker-monster-24-08.png seeker-monster-24-09.png \ seeker-monster-24-10.png seeker-monster-24-11.png \ seeker-monster-24-12.png seeker-monster-24-13.png \ seeker-monster-24-14.png seeker-monster-24-15.png \ seeker-monster-24-16.png seeker-monster-24-17.png \ seeker-monster-24-18.png seeker-monster-24-19.png \ seeker-monster-24-20.png seeker-monster-24-21.png \ seeker-monster-24-22.png seeker-monster-24-23.png \ seeker-monster-24-24.png seeker-monster-24-25.png \ seeker-monster-24-26.png seeker-monster-24-27.png \ seeker-monster-24-28.png seeker-monster-24-29.png \ seeker-monster-24-30.png seeker-monster-24-31.png \ seeker-monster-24-32.png seeker-gore-32-1.png \ seeker-gore-32-2.png seeker-gore-32-3.png seeker-gore-32-4.png \ seeker-gore-32-5.png seeker-gore-32-6.png seeker-gore-32-7.png \ seeker-gore-32-8.png seeker-gore-24-1.png seeker-gore-24-2.png \ seeker-gore-24-3.png seeker-gore-24-4.png seeker-gore-24-5.png \ seeker-gore-24-6.png seeker-gore-24-7.png seeker-gore-24-8.png \ egg-layer-monster-32-01.png egg-layer-monster-32-02.png \ egg-layer-monster-32-03.png egg-layer-monster-32-04.png \ egg-layer-monster-32-05.png egg-layer-monster-32-06.png \ egg-layer-monster-32-07.png egg-layer-monster-32-08.png \ egg-layer-monster-32-09.png egg-layer-monster-32-10.png \ egg-layer-monster-32-11.png egg-layer-monster-32-12.png \ egg-layer-monster-32-13.png egg-layer-monster-32-14.png \ egg-layer-monster-32-15.png egg-layer-monster-32-16.png \ egg-layer-monster-32-17.png egg-layer-monster-32-18.png \ egg-layer-monster-32-19.png egg-layer-monster-32-20.png \ egg-layer-monster-32-21.png egg-layer-monster-32-22.png \ egg-layer-monster-32-23.png egg-layer-monster-32-24.png \ egg-layer-monster-32-25.png egg-layer-monster-32-26.png \ egg-layer-monster-32-27.png egg-layer-monster-32-28.png \ egg-layer-monster-32-29.png egg-layer-monster-32-30.png \ egg-layer-monster-32-31.png egg-layer-monster-32-32.png \ egg-layer-monster-32-33.png egg-layer-monster-32-34.png \ egg-layer-monster-32-35.png egg-layer-monster-32-36.png \ egg-layer-monster-32-37.png egg-layer-monster-32-38.png \ egg-layer-monster-32-39.png egg-layer-monster-32-40.png \ egg-layer-monster-32-41.png egg-layer-monster-32-42.png \ egg-layer-monster-32-43.png egg-layer-monster-32-44.png \ egg-layer-monster-32-45.png egg-layer-monster-32-46.png \ egg-layer-monster-32-47.png egg-layer-monster-32-48.png \ egg-layer-monster-24-01.png egg-layer-monster-24-02.png \ egg-layer-monster-24-03.png egg-layer-monster-24-04.png \ egg-layer-monster-24-05.png egg-layer-monster-24-06.png \ egg-layer-monster-24-07.png egg-layer-monster-24-08.png \ egg-layer-monster-24-09.png egg-layer-monster-24-10.png \ egg-layer-monster-24-11.png egg-layer-monster-24-12.png \ egg-layer-monster-24-13.png egg-layer-monster-24-14.png \ egg-layer-monster-24-15.png egg-layer-monster-24-16.png \ egg-layer-monster-24-17.png egg-layer-monster-24-18.png \ egg-layer-monster-24-19.png egg-layer-monster-24-20.png \ egg-layer-monster-24-21.png egg-layer-monster-24-22.png \ egg-layer-monster-24-23.png egg-layer-monster-24-24.png \ egg-layer-monster-24-25.png egg-layer-monster-24-26.png \ egg-layer-monster-24-27.png egg-layer-monster-24-28.png \ egg-layer-monster-24-29.png egg-layer-monster-24-30.png \ egg-layer-monster-24-31.png egg-layer-monster-24-32.png \ egg-layer-monster-24-33.png egg-layer-monster-24-34.png \ egg-layer-monster-24-35.png egg-layer-monster-24-36.png \ egg-layer-monster-24-37.png egg-layer-monster-24-38.png \ egg-layer-monster-24-39.png egg-layer-monster-24-40.png \ egg-layer-monster-24-41.png egg-layer-monster-24-42.png \ egg-layer-monster-24-43.png egg-layer-monster-24-44.png \ egg-layer-monster-24-45.png egg-layer-monster-24-46.png \ egg-layer-monster-24-47.png egg-layer-monster-24-48.png \ egg-layer-gore-32-1.png egg-layer-gore-32-2.png \ egg-layer-gore-32-3.png egg-layer-gore-32-4.png \ egg-layer-gore-32-5.png egg-layer-gore-32-6.png \ egg-layer-gore-32-7.png egg-layer-gore-32-8.png \ egg-layer-gore-24-1.png egg-layer-gore-24-2.png \ egg-layer-gore-24-3.png egg-layer-gore-24-4.png \ egg-layer-gore-24-5.png egg-layer-gore-24-6.png \ egg-layer-gore-24-7.png egg-layer-gore-24-8.png \ plain-egg-32-1.png plain-egg-32-2.png plain-egg-32-3.png \ plain-egg-32-4.png plain-egg-24-1.png plain-egg-24-2.png \ plain-egg-24-3.png plain-egg-24-4.png hard-egg-32-1.png \ hard-egg-32-2.png hard-egg-32-3.png hard-egg-32-4.png \ hard-egg-24-1.png hard-egg-24-2.png hard-egg-24-3.png \ hard-egg-24-4.png seeker-egg-32-1.png seeker-egg-32-2.png \ seeker-egg-32-3.png seeker-egg-32-4.png seeker-egg-24-1.png \ seeker-egg-24-2.png seeker-egg-24-3.png seeker-egg-24-4.png \ egg-layer-egg-32-1.png egg-layer-egg-32-2.png \ egg-layer-egg-32-3.png egg-layer-egg-32-4.png \ egg-layer-egg-24-1.png egg-layer-egg-24-2.png \ egg-layer-egg-24-3.png egg-layer-egg-24-4.png \ hero-gore-32-1.png hero-gore-32-2.png hero-gore-32-3.png \ hero-gore-32-4.png hero-gore-32-5.png hero-gore-32-6.png \ hero-gore-32-7.png hero-gore-32-8.png hero-gore-24-1.png \ hero-gore-24-2.png hero-gore-24-3.png hero-gore-24-4.png \ hero-gore-24-5.png hero-gore-24-6.png hero-gore-24-7.png \ hero-gore-24-8.png levitation-32-1.png levitation-32-2.png \ levitation-32-3.png levitation-32-4.png levitation-32-5.png \ levitation-32-6.png levitation-32-7.png levitation-32-8.png \ levitation-24-1.png levitation-24-2.png levitation-24-3.png \ levitation-24-4.png levitation-24-5.png levitation-24-6.png \ levitation-24-7.png levitation-24-8.png all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.povrules $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu pixmaps/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu pixmaps/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(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 uninstall-info-am: install-pixmapDATA: $(pixmap_DATA) @$(NORMAL_INSTALL) test -z "$(pixmapdir)" || $(mkdir_p) "$(DESTDIR)$(pixmapdir)" @list='$(pixmap_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(pixmapDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pixmapdir)/$$f'"; \ $(pixmapDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pixmapdir)/$$f"; \ done uninstall-pixmapDATA: @$(NORMAL_UNINSTALL) @list='$(pixmap_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(pixmapdir)/$$f'"; \ rm -f "$(DESTDIR)$(pixmapdir)/$$f"; \ done tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(DATA) installdirs: for dir in "$(DESTDIR)$(pixmapdir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) 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 mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-pixmapDATA install-exec-am: install-info: install-info-am install-man: 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 pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am uninstall-pixmapDATA .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-exec \ install-exec-am install-info install-info-am install-man \ install-pixmapDATA install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-info-am uninstall-pixmapDATA #MAINTAINERCLEANFILES = $(generated_images) .INTERMEDIATE: $(temporary_images) # make and automake does not support macros, so the actual rules for # rendering the graphics are instead generated with m4 from Makefile.povrules.m4 Makefile.povrules: Makefile.povrules.m4 povray-helpers.m4 m4 -P < $< > $@ plain-monster-32-01.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf1 +ef1 +w32 +h32 $< plain-monster-32-02.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf2 +ef2 +w32 +h32 $< plain-monster-32-03.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf3 +ef3 +w32 +h32 $< plain-monster-32-04.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf4 +ef4 +w32 +h32 $< plain-monster-32-05.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf5 +ef5 +w32 +h32 $< plain-monster-32-06.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf6 +ef6 +w32 +h32 $< plain-monster-32-07.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf7 +ef7 +w32 +h32 $< plain-monster-32-08.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf8 +ef8 +w32 +h32 $< plain-monster-32-09.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf9 +ef9 +w32 +h32 $< plain-monster-32-10.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf10 +ef10 +w32 +h32 $< plain-monster-32-11.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf11 +ef11 +w32 +h32 $< plain-monster-32-12.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf12 +ef12 +w32 +h32 $< plain-monster-32-13.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf13 +ef13 +w32 +h32 $< plain-monster-32-14.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf14 +ef14 +w32 +h32 $< plain-monster-32-15.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf15 +ef15 +w32 +h32 $< plain-monster-32-16.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf16 +ef16 +w32 +h32 $< plain-monster-32-17.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf17 +ef17 +w32 +h32 $< plain-monster-32-18.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf18 +ef18 +w32 +h32 $< plain-monster-32-19.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf19 +ef19 +w32 +h32 $< plain-monster-32-20.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf20 +ef20 +w32 +h32 $< plain-monster-32-21.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf21 +ef21 +w32 +h32 $< plain-monster-32-22.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf22 +ef22 +w32 +h32 $< plain-monster-32-23.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf23 +ef23 +w32 +h32 $< plain-monster-32-24.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf24 +ef24 +w32 +h32 $< plain-monster-32-25.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf25 +ef25 +w32 +h32 $< plain-monster-32-26.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf26 +ef26 +w32 +h32 $< plain-monster-32-27.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf27 +ef27 +w32 +h32 $< plain-monster-32-28.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf28 +ef28 +w32 +h32 $< plain-monster-32-29.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf29 +ef29 +w32 +h32 $< plain-monster-32-30.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf30 +ef30 +w32 +h32 $< plain-monster-32-31.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf31 +ef31 +w32 +h32 $< plain-monster-32-32.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf32 +ef32 +w32 +h32 $< plain-monster-32.png: plain-monster-32-01.png plain-monster-32-02.png plain-monster-32-03.png plain-monster-32-04.png plain-monster-32-05.png plain-monster-32-06.png plain-monster-32-07.png plain-monster-32-08.png plain-monster-32-09.png plain-monster-32-10.png plain-monster-32-11.png plain-monster-32-12.png plain-monster-32-13.png plain-monster-32-14.png plain-monster-32-15.png plain-monster-32-16.png plain-monster-32-17.png plain-monster-32-18.png plain-monster-32-19.png plain-monster-32-20.png plain-monster-32-21.png plain-monster-32-22.png plain-monster-32-23.png plain-monster-32-24.png plain-monster-32-25.png plain-monster-32-26.png plain-monster-32-27.png plain-monster-32-28.png plain-monster-32-29.png plain-monster-32-30.png plain-monster-32-31.png plain-monster-32-32.png convert +append $+ $@ plain-monster-24-01.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf1 +ef1 +w24 +h24 $< plain-monster-24-02.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf2 +ef2 +w24 +h24 $< plain-monster-24-03.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf3 +ef3 +w24 +h24 $< plain-monster-24-04.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf4 +ef4 +w24 +h24 $< plain-monster-24-05.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf5 +ef5 +w24 +h24 $< plain-monster-24-06.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf6 +ef6 +w24 +h24 $< plain-monster-24-07.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf7 +ef7 +w24 +h24 $< plain-monster-24-08.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf8 +ef8 +w24 +h24 $< plain-monster-24-09.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf9 +ef9 +w24 +h24 $< plain-monster-24-10.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf10 +ef10 +w24 +h24 $< plain-monster-24-11.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf11 +ef11 +w24 +h24 $< plain-monster-24-12.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf12 +ef12 +w24 +h24 $< plain-monster-24-13.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf13 +ef13 +w24 +h24 $< plain-monster-24-14.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf14 +ef14 +w24 +h24 $< plain-monster-24-15.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf15 +ef15 +w24 +h24 $< plain-monster-24-16.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf16 +ef16 +w24 +h24 $< plain-monster-24-17.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf17 +ef17 +w24 +h24 $< plain-monster-24-18.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf18 +ef18 +w24 +h24 $< plain-monster-24-19.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf19 +ef19 +w24 +h24 $< plain-monster-24-20.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf20 +ef20 +w24 +h24 $< plain-monster-24-21.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf21 +ef21 +w24 +h24 $< plain-monster-24-22.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf22 +ef22 +w24 +h24 $< plain-monster-24-23.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf23 +ef23 +w24 +h24 $< plain-monster-24-24.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf24 +ef24 +w24 +h24 $< plain-monster-24-25.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf25 +ef25 +w24 +h24 $< plain-monster-24-26.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf26 +ef26 +w24 +h24 $< plain-monster-24-27.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf27 +ef27 +w24 +h24 $< plain-monster-24-28.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf28 +ef28 +w24 +h24 $< plain-monster-24-29.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf29 +ef29 +w24 +h24 $< plain-monster-24-30.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf30 +ef30 +w24 +h24 $< plain-monster-24-31.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf31 +ef31 +w24 +h24 $< plain-monster-24-32.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf32 +ef32 +w24 +h24 $< plain-monster-24.png: plain-monster-24-01.png plain-monster-24-02.png plain-monster-24-03.png plain-monster-24-04.png plain-monster-24-05.png plain-monster-24-06.png plain-monster-24-07.png plain-monster-24-08.png plain-monster-24-09.png plain-monster-24-10.png plain-monster-24-11.png plain-monster-24-12.png plain-monster-24-13.png plain-monster-24-14.png plain-monster-24-15.png plain-monster-24-16.png plain-monster-24-17.png plain-monster-24-18.png plain-monster-24-19.png plain-monster-24-20.png plain-monster-24-21.png plain-monster-24-22.png plain-monster-24-23.png plain-monster-24-24.png plain-monster-24-25.png plain-monster-24-26.png plain-monster-24-27.png plain-monster-24-28.png plain-monster-24-29.png plain-monster-24-30.png plain-monster-24-31.png plain-monster-24-32.png convert +append $+ $@ plain-gore-32-1.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-1.png +w32 +h32 $< Declare=sval=1 plain-gore-32-2.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-2.png +w32 +h32 $< Declare=sval=2 plain-gore-32-3.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-3.png +w32 +h32 $< Declare=sval=3 plain-gore-32-4.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-4.png +w32 +h32 $< Declare=sval=4 plain-gore-32-5.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-5.png +w32 +h32 $< Declare=sval=5 plain-gore-32-6.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-6.png +w32 +h32 $< Declare=sval=6 plain-gore-32-7.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-7.png +w32 +h32 $< Declare=sval=7 plain-gore-32-8.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-8.png +w32 +h32 $< Declare=sval=8 plain-gore-32.png: plain-gore-32-1.png plain-gore-32-2.png plain-gore-32-3.png plain-gore-32-4.png plain-gore-32-5.png plain-gore-32-6.png plain-gore-32-7.png plain-gore-32-8.png convert +append $+ $@ plain-gore-24-1.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-1.png +w24 +h24 $< Declare=sval=1 plain-gore-24-2.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-2.png +w24 +h24 $< Declare=sval=2 plain-gore-24-3.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-3.png +w24 +h24 $< Declare=sval=3 plain-gore-24-4.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-4.png +w24 +h24 $< Declare=sval=4 plain-gore-24-5.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-5.png +w24 +h24 $< Declare=sval=5 plain-gore-24-6.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-6.png +w24 +h24 $< Declare=sval=6 plain-gore-24-7.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-7.png +w24 +h24 $< Declare=sval=7 plain-gore-24-8.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-8.png +w24 +h24 $< Declare=sval=8 plain-gore-24.png: plain-gore-24-1.png plain-gore-24-2.png plain-gore-24-3.png plain-gore-24-4.png plain-gore-24-5.png plain-gore-24-6.png plain-gore-24-7.png plain-gore-24-8.png convert +append $+ $@ hard-monster-32-01.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf1 +ef1 +w32 +h32 $< hard-monster-32-02.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf2 +ef2 +w32 +h32 $< hard-monster-32-03.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf3 +ef3 +w32 +h32 $< hard-monster-32-04.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf4 +ef4 +w32 +h32 $< hard-monster-32-05.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf5 +ef5 +w32 +h32 $< hard-monster-32-06.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf6 +ef6 +w32 +h32 $< hard-monster-32-07.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf7 +ef7 +w32 +h32 $< hard-monster-32-08.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf8 +ef8 +w32 +h32 $< hard-monster-32-09.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf9 +ef9 +w32 +h32 $< hard-monster-32-10.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf10 +ef10 +w32 +h32 $< hard-monster-32-11.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf11 +ef11 +w32 +h32 $< hard-monster-32-12.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf12 +ef12 +w32 +h32 $< hard-monster-32-13.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf13 +ef13 +w32 +h32 $< hard-monster-32-14.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf14 +ef14 +w32 +h32 $< hard-monster-32-15.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf15 +ef15 +w32 +h32 $< hard-monster-32-16.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf16 +ef16 +w32 +h32 $< hard-monster-32-17.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf17 +ef17 +w32 +h32 $< hard-monster-32-18.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf18 +ef18 +w32 +h32 $< hard-monster-32-19.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf19 +ef19 +w32 +h32 $< hard-monster-32-20.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf20 +ef20 +w32 +h32 $< hard-monster-32-21.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf21 +ef21 +w32 +h32 $< hard-monster-32-22.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf22 +ef22 +w32 +h32 $< hard-monster-32-23.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf23 +ef23 +w32 +h32 $< hard-monster-32-24.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf24 +ef24 +w32 +h32 $< hard-monster-32-25.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf25 +ef25 +w32 +h32 $< hard-monster-32-26.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf26 +ef26 +w32 +h32 $< hard-monster-32-27.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf27 +ef27 +w32 +h32 $< hard-monster-32-28.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf28 +ef28 +w32 +h32 $< hard-monster-32-29.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf29 +ef29 +w32 +h32 $< hard-monster-32-30.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf30 +ef30 +w32 +h32 $< hard-monster-32-31.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf31 +ef31 +w32 +h32 $< hard-monster-32-32.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf32 +ef32 +w32 +h32 $< hard-monster-32-33.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf33 +ef33 +w32 +h32 $< hard-monster-32-34.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf34 +ef34 +w32 +h32 $< hard-monster-32-35.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf35 +ef35 +w32 +h32 $< hard-monster-32-36.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf36 +ef36 +w32 +h32 $< hard-monster-32-37.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf37 +ef37 +w32 +h32 $< hard-monster-32-38.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf38 +ef38 +w32 +h32 $< hard-monster-32-39.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf39 +ef39 +w32 +h32 $< hard-monster-32-40.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf40 +ef40 +w32 +h32 $< hard-monster-32-41.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf41 +ef41 +w32 +h32 $< hard-monster-32-42.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf42 +ef42 +w32 +h32 $< hard-monster-32-43.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf43 +ef43 +w32 +h32 $< hard-monster-32-44.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf44 +ef44 +w32 +h32 $< hard-monster-32-45.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf45 +ef45 +w32 +h32 $< hard-monster-32-46.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf46 +ef46 +w32 +h32 $< hard-monster-32-47.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf47 +ef47 +w32 +h32 $< hard-monster-32-48.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf48 +ef48 +w32 +h32 $< hard-monster-32.png: hard-monster-32-01.png hard-monster-32-02.png hard-monster-32-03.png hard-monster-32-04.png hard-monster-32-05.png hard-monster-32-06.png hard-monster-32-07.png hard-monster-32-08.png hard-monster-32-09.png hard-monster-32-10.png hard-monster-32-11.png hard-monster-32-12.png hard-monster-32-13.png hard-monster-32-14.png hard-monster-32-15.png hard-monster-32-16.png hard-monster-32-17.png hard-monster-32-18.png hard-monster-32-19.png hard-monster-32-20.png hard-monster-32-21.png hard-monster-32-22.png hard-monster-32-23.png hard-monster-32-24.png hard-monster-32-25.png hard-monster-32-26.png hard-monster-32-27.png hard-monster-32-28.png hard-monster-32-29.png hard-monster-32-30.png hard-monster-32-31.png hard-monster-32-32.png hard-monster-32-33.png hard-monster-32-34.png hard-monster-32-35.png hard-monster-32-36.png hard-monster-32-37.png hard-monster-32-38.png hard-monster-32-39.png hard-monster-32-40.png hard-monster-32-41.png hard-monster-32-42.png hard-monster-32-43.png hard-monster-32-44.png hard-monster-32-45.png hard-monster-32-46.png hard-monster-32-47.png hard-monster-32-48.png convert +append $+ $@ hard-monster-24-01.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf1 +ef1 +w24 +h24 $< hard-monster-24-02.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf2 +ef2 +w24 +h24 $< hard-monster-24-03.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf3 +ef3 +w24 +h24 $< hard-monster-24-04.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf4 +ef4 +w24 +h24 $< hard-monster-24-05.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf5 +ef5 +w24 +h24 $< hard-monster-24-06.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf6 +ef6 +w24 +h24 $< hard-monster-24-07.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf7 +ef7 +w24 +h24 $< hard-monster-24-08.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf8 +ef8 +w24 +h24 $< hard-monster-24-09.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf9 +ef9 +w24 +h24 $< hard-monster-24-10.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf10 +ef10 +w24 +h24 $< hard-monster-24-11.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf11 +ef11 +w24 +h24 $< hard-monster-24-12.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf12 +ef12 +w24 +h24 $< hard-monster-24-13.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf13 +ef13 +w24 +h24 $< hard-monster-24-14.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf14 +ef14 +w24 +h24 $< hard-monster-24-15.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf15 +ef15 +w24 +h24 $< hard-monster-24-16.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf16 +ef16 +w24 +h24 $< hard-monster-24-17.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf17 +ef17 +w24 +h24 $< hard-monster-24-18.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf18 +ef18 +w24 +h24 $< hard-monster-24-19.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf19 +ef19 +w24 +h24 $< hard-monster-24-20.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf20 +ef20 +w24 +h24 $< hard-monster-24-21.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf21 +ef21 +w24 +h24 $< hard-monster-24-22.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf22 +ef22 +w24 +h24 $< hard-monster-24-23.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf23 +ef23 +w24 +h24 $< hard-monster-24-24.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf24 +ef24 +w24 +h24 $< hard-monster-24-25.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf25 +ef25 +w24 +h24 $< hard-monster-24-26.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf26 +ef26 +w24 +h24 $< hard-monster-24-27.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf27 +ef27 +w24 +h24 $< hard-monster-24-28.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf28 +ef28 +w24 +h24 $< hard-monster-24-29.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf29 +ef29 +w24 +h24 $< hard-monster-24-30.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf30 +ef30 +w24 +h24 $< hard-monster-24-31.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf31 +ef31 +w24 +h24 $< hard-monster-24-32.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf32 +ef32 +w24 +h24 $< hard-monster-24-33.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf33 +ef33 +w24 +h24 $< hard-monster-24-34.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf34 +ef34 +w24 +h24 $< hard-monster-24-35.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf35 +ef35 +w24 +h24 $< hard-monster-24-36.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf36 +ef36 +w24 +h24 $< hard-monster-24-37.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf37 +ef37 +w24 +h24 $< hard-monster-24-38.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf38 +ef38 +w24 +h24 $< hard-monster-24-39.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf39 +ef39 +w24 +h24 $< hard-monster-24-40.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf40 +ef40 +w24 +h24 $< hard-monster-24-41.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf41 +ef41 +w24 +h24 $< hard-monster-24-42.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf42 +ef42 +w24 +h24 $< hard-monster-24-43.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf43 +ef43 +w24 +h24 $< hard-monster-24-44.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf44 +ef44 +w24 +h24 $< hard-monster-24-45.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf45 +ef45 +w24 +h24 $< hard-monster-24-46.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf46 +ef46 +w24 +h24 $< hard-monster-24-47.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf47 +ef47 +w24 +h24 $< hard-monster-24-48.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf48 +ef48 +w24 +h24 $< hard-monster-24.png: hard-monster-24-01.png hard-monster-24-02.png hard-monster-24-03.png hard-monster-24-04.png hard-monster-24-05.png hard-monster-24-06.png hard-monster-24-07.png hard-monster-24-08.png hard-monster-24-09.png hard-monster-24-10.png hard-monster-24-11.png hard-monster-24-12.png hard-monster-24-13.png hard-monster-24-14.png hard-monster-24-15.png hard-monster-24-16.png hard-monster-24-17.png hard-monster-24-18.png hard-monster-24-19.png hard-monster-24-20.png hard-monster-24-21.png hard-monster-24-22.png hard-monster-24-23.png hard-monster-24-24.png hard-monster-24-25.png hard-monster-24-26.png hard-monster-24-27.png hard-monster-24-28.png hard-monster-24-29.png hard-monster-24-30.png hard-monster-24-31.png hard-monster-24-32.png hard-monster-24-33.png hard-monster-24-34.png hard-monster-24-35.png hard-monster-24-36.png hard-monster-24-37.png hard-monster-24-38.png hard-monster-24-39.png hard-monster-24-40.png hard-monster-24-41.png hard-monster-24-42.png hard-monster-24-43.png hard-monster-24-44.png hard-monster-24-45.png hard-monster-24-46.png hard-monster-24-47.png hard-monster-24-48.png convert +append $+ $@ hard-gore-32-1.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-1.png +w32 +h32 $< Declare=sval=1 hard-gore-32-2.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-2.png +w32 +h32 $< Declare=sval=2 hard-gore-32-3.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-3.png +w32 +h32 $< Declare=sval=3 hard-gore-32-4.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-4.png +w32 +h32 $< Declare=sval=4 hard-gore-32-5.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-5.png +w32 +h32 $< Declare=sval=5 hard-gore-32-6.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-6.png +w32 +h32 $< Declare=sval=6 hard-gore-32-7.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-7.png +w32 +h32 $< Declare=sval=7 hard-gore-32-8.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-8.png +w32 +h32 $< Declare=sval=8 hard-gore-32.png: hard-gore-32-1.png hard-gore-32-2.png hard-gore-32-3.png hard-gore-32-4.png hard-gore-32-5.png hard-gore-32-6.png hard-gore-32-7.png hard-gore-32-8.png convert +append $+ $@ hard-gore-24-1.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-1.png +w24 +h24 $< Declare=sval=1 hard-gore-24-2.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-2.png +w24 +h24 $< Declare=sval=2 hard-gore-24-3.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-3.png +w24 +h24 $< Declare=sval=3 hard-gore-24-4.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-4.png +w24 +h24 $< Declare=sval=4 hard-gore-24-5.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-5.png +w24 +h24 $< Declare=sval=5 hard-gore-24-6.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-6.png +w24 +h24 $< Declare=sval=6 hard-gore-24-7.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-7.png +w24 +h24 $< Declare=sval=7 hard-gore-24-8.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-8.png +w24 +h24 $< Declare=sval=8 hard-gore-24.png: hard-gore-24-1.png hard-gore-24-2.png hard-gore-24-3.png hard-gore-24-4.png hard-gore-24-5.png hard-gore-24-6.png hard-gore-24-7.png hard-gore-24-8.png convert +append $+ $@ seeker-monster-32-01.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf1 +ef1 +w32 +h32 $< seeker-monster-32-02.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf2 +ef2 +w32 +h32 $< seeker-monster-32-03.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf3 +ef3 +w32 +h32 $< seeker-monster-32-04.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf4 +ef4 +w32 +h32 $< seeker-monster-32-05.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf5 +ef5 +w32 +h32 $< seeker-monster-32-06.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf6 +ef6 +w32 +h32 $< seeker-monster-32-07.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf7 +ef7 +w32 +h32 $< seeker-monster-32-08.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf8 +ef8 +w32 +h32 $< seeker-monster-32-09.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf9 +ef9 +w32 +h32 $< seeker-monster-32-10.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf10 +ef10 +w32 +h32 $< seeker-monster-32-11.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf11 +ef11 +w32 +h32 $< seeker-monster-32-12.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf12 +ef12 +w32 +h32 $< seeker-monster-32-13.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf13 +ef13 +w32 +h32 $< seeker-monster-32-14.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf14 +ef14 +w32 +h32 $< seeker-monster-32-15.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf15 +ef15 +w32 +h32 $< seeker-monster-32-16.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf16 +ef16 +w32 +h32 $< seeker-monster-32-17.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf17 +ef17 +w32 +h32 $< seeker-monster-32-18.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf18 +ef18 +w32 +h32 $< seeker-monster-32-19.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf19 +ef19 +w32 +h32 $< seeker-monster-32-20.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf20 +ef20 +w32 +h32 $< seeker-monster-32-21.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf21 +ef21 +w32 +h32 $< seeker-monster-32-22.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf22 +ef22 +w32 +h32 $< seeker-monster-32-23.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf23 +ef23 +w32 +h32 $< seeker-monster-32-24.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf24 +ef24 +w32 +h32 $< seeker-monster-32-25.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf25 +ef25 +w32 +h32 $< seeker-monster-32-26.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf26 +ef26 +w32 +h32 $< seeker-monster-32-27.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf27 +ef27 +w32 +h32 $< seeker-monster-32-28.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf28 +ef28 +w32 +h32 $< seeker-monster-32-29.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf29 +ef29 +w32 +h32 $< seeker-monster-32-30.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf30 +ef30 +w32 +h32 $< seeker-monster-32-31.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf31 +ef31 +w32 +h32 $< seeker-monster-32-32.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf32 +ef32 +w32 +h32 $< seeker-monster-32.png: seeker-monster-32-01.png seeker-monster-32-02.png seeker-monster-32-03.png seeker-monster-32-04.png seeker-monster-32-05.png seeker-monster-32-06.png seeker-monster-32-07.png seeker-monster-32-08.png seeker-monster-32-09.png seeker-monster-32-10.png seeker-monster-32-11.png seeker-monster-32-12.png seeker-monster-32-13.png seeker-monster-32-14.png seeker-monster-32-15.png seeker-monster-32-16.png seeker-monster-32-17.png seeker-monster-32-18.png seeker-monster-32-19.png seeker-monster-32-20.png seeker-monster-32-21.png seeker-monster-32-22.png seeker-monster-32-23.png seeker-monster-32-24.png seeker-monster-32-25.png seeker-monster-32-26.png seeker-monster-32-27.png seeker-monster-32-28.png seeker-monster-32-29.png seeker-monster-32-30.png seeker-monster-32-31.png seeker-monster-32-32.png convert +append $+ $@ seeker-monster-24-01.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf1 +ef1 +w24 +h24 $< seeker-monster-24-02.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf2 +ef2 +w24 +h24 $< seeker-monster-24-03.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf3 +ef3 +w24 +h24 $< seeker-monster-24-04.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf4 +ef4 +w24 +h24 $< seeker-monster-24-05.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf5 +ef5 +w24 +h24 $< seeker-monster-24-06.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf6 +ef6 +w24 +h24 $< seeker-monster-24-07.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf7 +ef7 +w24 +h24 $< seeker-monster-24-08.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf8 +ef8 +w24 +h24 $< seeker-monster-24-09.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf9 +ef9 +w24 +h24 $< seeker-monster-24-10.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf10 +ef10 +w24 +h24 $< seeker-monster-24-11.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf11 +ef11 +w24 +h24 $< seeker-monster-24-12.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf12 +ef12 +w24 +h24 $< seeker-monster-24-13.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf13 +ef13 +w24 +h24 $< seeker-monster-24-14.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf14 +ef14 +w24 +h24 $< seeker-monster-24-15.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf15 +ef15 +w24 +h24 $< seeker-monster-24-16.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf16 +ef16 +w24 +h24 $< seeker-monster-24-17.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf17 +ef17 +w24 +h24 $< seeker-monster-24-18.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf18 +ef18 +w24 +h24 $< seeker-monster-24-19.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf19 +ef19 +w24 +h24 $< seeker-monster-24-20.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf20 +ef20 +w24 +h24 $< seeker-monster-24-21.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf21 +ef21 +w24 +h24 $< seeker-monster-24-22.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf22 +ef22 +w24 +h24 $< seeker-monster-24-23.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf23 +ef23 +w24 +h24 $< seeker-monster-24-24.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf24 +ef24 +w24 +h24 $< seeker-monster-24-25.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf25 +ef25 +w24 +h24 $< seeker-monster-24-26.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf26 +ef26 +w24 +h24 $< seeker-monster-24-27.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf27 +ef27 +w24 +h24 $< seeker-monster-24-28.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf28 +ef28 +w24 +h24 $< seeker-monster-24-29.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf29 +ef29 +w24 +h24 $< seeker-monster-24-30.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf30 +ef30 +w24 +h24 $< seeker-monster-24-31.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf31 +ef31 +w24 +h24 $< seeker-monster-24-32.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf32 +ef32 +w24 +h24 $< seeker-monster-24.png: seeker-monster-24-01.png seeker-monster-24-02.png seeker-monster-24-03.png seeker-monster-24-04.png seeker-monster-24-05.png seeker-monster-24-06.png seeker-monster-24-07.png seeker-monster-24-08.png seeker-monster-24-09.png seeker-monster-24-10.png seeker-monster-24-11.png seeker-monster-24-12.png seeker-monster-24-13.png seeker-monster-24-14.png seeker-monster-24-15.png seeker-monster-24-16.png seeker-monster-24-17.png seeker-monster-24-18.png seeker-monster-24-19.png seeker-monster-24-20.png seeker-monster-24-21.png seeker-monster-24-22.png seeker-monster-24-23.png seeker-monster-24-24.png seeker-monster-24-25.png seeker-monster-24-26.png seeker-monster-24-27.png seeker-monster-24-28.png seeker-monster-24-29.png seeker-monster-24-30.png seeker-monster-24-31.png seeker-monster-24-32.png convert +append $+ $@ seeker-gore-32-1.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-1.png +w32 +h32 $< Declare=sval=1 seeker-gore-32-2.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-2.png +w32 +h32 $< Declare=sval=2 seeker-gore-32-3.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-3.png +w32 +h32 $< Declare=sval=3 seeker-gore-32-4.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-4.png +w32 +h32 $< Declare=sval=4 seeker-gore-32-5.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-5.png +w32 +h32 $< Declare=sval=5 seeker-gore-32-6.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-6.png +w32 +h32 $< Declare=sval=6 seeker-gore-32-7.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-7.png +w32 +h32 $< Declare=sval=7 seeker-gore-32-8.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-8.png +w32 +h32 $< Declare=sval=8 seeker-gore-32.png: seeker-gore-32-1.png seeker-gore-32-2.png seeker-gore-32-3.png seeker-gore-32-4.png seeker-gore-32-5.png seeker-gore-32-6.png seeker-gore-32-7.png seeker-gore-32-8.png convert +append $+ $@ seeker-gore-24-1.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-1.png +w24 +h24 $< Declare=sval=1 seeker-gore-24-2.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-2.png +w24 +h24 $< Declare=sval=2 seeker-gore-24-3.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-3.png +w24 +h24 $< Declare=sval=3 seeker-gore-24-4.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-4.png +w24 +h24 $< Declare=sval=4 seeker-gore-24-5.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-5.png +w24 +h24 $< Declare=sval=5 seeker-gore-24-6.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-6.png +w24 +h24 $< Declare=sval=6 seeker-gore-24-7.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-7.png +w24 +h24 $< Declare=sval=7 seeker-gore-24-8.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-8.png +w24 +h24 $< Declare=sval=8 seeker-gore-24.png: seeker-gore-24-1.png seeker-gore-24-2.png seeker-gore-24-3.png seeker-gore-24-4.png seeker-gore-24-5.png seeker-gore-24-6.png seeker-gore-24-7.png seeker-gore-24-8.png convert +append $+ $@ egg-layer-monster-32-01.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf1 +ef1 +w32 +h32 $< egg-layer-monster-32-02.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf2 +ef2 +w32 +h32 $< egg-layer-monster-32-03.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf3 +ef3 +w32 +h32 $< egg-layer-monster-32-04.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf4 +ef4 +w32 +h32 $< egg-layer-monster-32-05.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf5 +ef5 +w32 +h32 $< egg-layer-monster-32-06.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf6 +ef6 +w32 +h32 $< egg-layer-monster-32-07.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf7 +ef7 +w32 +h32 $< egg-layer-monster-32-08.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf8 +ef8 +w32 +h32 $< egg-layer-monster-32-09.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf9 +ef9 +w32 +h32 $< egg-layer-monster-32-10.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf10 +ef10 +w32 +h32 $< egg-layer-monster-32-11.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf11 +ef11 +w32 +h32 $< egg-layer-monster-32-12.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf12 +ef12 +w32 +h32 $< egg-layer-monster-32-13.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf13 +ef13 +w32 +h32 $< egg-layer-monster-32-14.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf14 +ef14 +w32 +h32 $< egg-layer-monster-32-15.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf15 +ef15 +w32 +h32 $< egg-layer-monster-32-16.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf16 +ef16 +w32 +h32 $< egg-layer-monster-32-17.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf17 +ef17 +w32 +h32 $< egg-layer-monster-32-18.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf18 +ef18 +w32 +h32 $< egg-layer-monster-32-19.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf19 +ef19 +w32 +h32 $< egg-layer-monster-32-20.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf20 +ef20 +w32 +h32 $< egg-layer-monster-32-21.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf21 +ef21 +w32 +h32 $< egg-layer-monster-32-22.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf22 +ef22 +w32 +h32 $< egg-layer-monster-32-23.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf23 +ef23 +w32 +h32 $< egg-layer-monster-32-24.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf24 +ef24 +w32 +h32 $< egg-layer-monster-32-25.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf25 +ef25 +w32 +h32 $< egg-layer-monster-32-26.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf26 +ef26 +w32 +h32 $< egg-layer-monster-32-27.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf27 +ef27 +w32 +h32 $< egg-layer-monster-32-28.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf28 +ef28 +w32 +h32 $< egg-layer-monster-32-29.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf29 +ef29 +w32 +h32 $< egg-layer-monster-32-30.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf30 +ef30 +w32 +h32 $< egg-layer-monster-32-31.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf31 +ef31 +w32 +h32 $< egg-layer-monster-32-32.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf32 +ef32 +w32 +h32 $< egg-layer-monster-32-33.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf33 +ef33 +w32 +h32 $< egg-layer-monster-32-34.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf34 +ef34 +w32 +h32 $< egg-layer-monster-32-35.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf35 +ef35 +w32 +h32 $< egg-layer-monster-32-36.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf36 +ef36 +w32 +h32 $< egg-layer-monster-32-37.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf37 +ef37 +w32 +h32 $< egg-layer-monster-32-38.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf38 +ef38 +w32 +h32 $< egg-layer-monster-32-39.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf39 +ef39 +w32 +h32 $< egg-layer-monster-32-40.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf40 +ef40 +w32 +h32 $< egg-layer-monster-32-41.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf41 +ef41 +w32 +h32 $< egg-layer-monster-32-42.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf42 +ef42 +w32 +h32 $< egg-layer-monster-32-43.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf43 +ef43 +w32 +h32 $< egg-layer-monster-32-44.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf44 +ef44 +w32 +h32 $< egg-layer-monster-32-45.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf45 +ef45 +w32 +h32 $< egg-layer-monster-32-46.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf46 +ef46 +w32 +h32 $< egg-layer-monster-32-47.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf47 +ef47 +w32 +h32 $< egg-layer-monster-32-48.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf48 +ef48 +w32 +h32 $< egg-layer-monster-32.png: egg-layer-monster-32-01.png egg-layer-monster-32-02.png egg-layer-monster-32-03.png egg-layer-monster-32-04.png egg-layer-monster-32-05.png egg-layer-monster-32-06.png egg-layer-monster-32-07.png egg-layer-monster-32-08.png egg-layer-monster-32-09.png egg-layer-monster-32-10.png egg-layer-monster-32-11.png egg-layer-monster-32-12.png egg-layer-monster-32-13.png egg-layer-monster-32-14.png egg-layer-monster-32-15.png egg-layer-monster-32-16.png egg-layer-monster-32-17.png egg-layer-monster-32-18.png egg-layer-monster-32-19.png egg-layer-monster-32-20.png egg-layer-monster-32-21.png egg-layer-monster-32-22.png egg-layer-monster-32-23.png egg-layer-monster-32-24.png egg-layer-monster-32-25.png egg-layer-monster-32-26.png egg-layer-monster-32-27.png egg-layer-monster-32-28.png egg-layer-monster-32-29.png egg-layer-monster-32-30.png egg-layer-monster-32-31.png egg-layer-monster-32-32.png egg-layer-monster-32-33.png egg-layer-monster-32-34.png egg-layer-monster-32-35.png egg-layer-monster-32-36.png egg-layer-monster-32-37.png egg-layer-monster-32-38.png egg-layer-monster-32-39.png egg-layer-monster-32-40.png egg-layer-monster-32-41.png egg-layer-monster-32-42.png egg-layer-monster-32-43.png egg-layer-monster-32-44.png egg-layer-monster-32-45.png egg-layer-monster-32-46.png egg-layer-monster-32-47.png egg-layer-monster-32-48.png convert +append $+ $@ egg-layer-monster-24-01.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf1 +ef1 +w24 +h24 $< egg-layer-monster-24-02.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf2 +ef2 +w24 +h24 $< egg-layer-monster-24-03.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf3 +ef3 +w24 +h24 $< egg-layer-monster-24-04.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf4 +ef4 +w24 +h24 $< egg-layer-monster-24-05.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf5 +ef5 +w24 +h24 $< egg-layer-monster-24-06.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf6 +ef6 +w24 +h24 $< egg-layer-monster-24-07.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf7 +ef7 +w24 +h24 $< egg-layer-monster-24-08.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf8 +ef8 +w24 +h24 $< egg-layer-monster-24-09.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf9 +ef9 +w24 +h24 $< egg-layer-monster-24-10.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf10 +ef10 +w24 +h24 $< egg-layer-monster-24-11.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf11 +ef11 +w24 +h24 $< egg-layer-monster-24-12.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf12 +ef12 +w24 +h24 $< egg-layer-monster-24-13.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf13 +ef13 +w24 +h24 $< egg-layer-monster-24-14.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf14 +ef14 +w24 +h24 $< egg-layer-monster-24-15.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf15 +ef15 +w24 +h24 $< egg-layer-monster-24-16.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf16 +ef16 +w24 +h24 $< egg-layer-monster-24-17.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf17 +ef17 +w24 +h24 $< egg-layer-monster-24-18.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf18 +ef18 +w24 +h24 $< egg-layer-monster-24-19.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf19 +ef19 +w24 +h24 $< egg-layer-monster-24-20.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf20 +ef20 +w24 +h24 $< egg-layer-monster-24-21.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf21 +ef21 +w24 +h24 $< egg-layer-monster-24-22.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf22 +ef22 +w24 +h24 $< egg-layer-monster-24-23.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf23 +ef23 +w24 +h24 $< egg-layer-monster-24-24.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf24 +ef24 +w24 +h24 $< egg-layer-monster-24-25.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf25 +ef25 +w24 +h24 $< egg-layer-monster-24-26.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf26 +ef26 +w24 +h24 $< egg-layer-monster-24-27.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf27 +ef27 +w24 +h24 $< egg-layer-monster-24-28.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf28 +ef28 +w24 +h24 $< egg-layer-monster-24-29.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf29 +ef29 +w24 +h24 $< egg-layer-monster-24-30.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf30 +ef30 +w24 +h24 $< egg-layer-monster-24-31.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf31 +ef31 +w24 +h24 $< egg-layer-monster-24-32.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf32 +ef32 +w24 +h24 $< egg-layer-monster-24-33.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf33 +ef33 +w24 +h24 $< egg-layer-monster-24-34.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf34 +ef34 +w24 +h24 $< egg-layer-monster-24-35.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf35 +ef35 +w24 +h24 $< egg-layer-monster-24-36.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf36 +ef36 +w24 +h24 $< egg-layer-monster-24-37.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf37 +ef37 +w24 +h24 $< egg-layer-monster-24-38.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf38 +ef38 +w24 +h24 $< egg-layer-monster-24-39.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf39 +ef39 +w24 +h24 $< egg-layer-monster-24-40.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf40 +ef40 +w24 +h24 $< egg-layer-monster-24-41.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf41 +ef41 +w24 +h24 $< egg-layer-monster-24-42.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf42 +ef42 +w24 +h24 $< egg-layer-monster-24-43.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf43 +ef43 +w24 +h24 $< egg-layer-monster-24-44.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf44 +ef44 +w24 +h24 $< egg-layer-monster-24-45.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf45 +ef45 +w24 +h24 $< egg-layer-monster-24-46.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf46 +ef46 +w24 +h24 $< egg-layer-monster-24-47.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf47 +ef47 +w24 +h24 $< egg-layer-monster-24-48.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf48 +ef48 +w24 +h24 $< egg-layer-monster-24.png: egg-layer-monster-24-01.png egg-layer-monster-24-02.png egg-layer-monster-24-03.png egg-layer-monster-24-04.png egg-layer-monster-24-05.png egg-layer-monster-24-06.png egg-layer-monster-24-07.png egg-layer-monster-24-08.png egg-layer-monster-24-09.png egg-layer-monster-24-10.png egg-layer-monster-24-11.png egg-layer-monster-24-12.png egg-layer-monster-24-13.png egg-layer-monster-24-14.png egg-layer-monster-24-15.png egg-layer-monster-24-16.png egg-layer-monster-24-17.png egg-layer-monster-24-18.png egg-layer-monster-24-19.png egg-layer-monster-24-20.png egg-layer-monster-24-21.png egg-layer-monster-24-22.png egg-layer-monster-24-23.png egg-layer-monster-24-24.png egg-layer-monster-24-25.png egg-layer-monster-24-26.png egg-layer-monster-24-27.png egg-layer-monster-24-28.png egg-layer-monster-24-29.png egg-layer-monster-24-30.png egg-layer-monster-24-31.png egg-layer-monster-24-32.png egg-layer-monster-24-33.png egg-layer-monster-24-34.png egg-layer-monster-24-35.png egg-layer-monster-24-36.png egg-layer-monster-24-37.png egg-layer-monster-24-38.png egg-layer-monster-24-39.png egg-layer-monster-24-40.png egg-layer-monster-24-41.png egg-layer-monster-24-42.png egg-layer-monster-24-43.png egg-layer-monster-24-44.png egg-layer-monster-24-45.png egg-layer-monster-24-46.png egg-layer-monster-24-47.png egg-layer-monster-24-48.png convert +append $+ $@ egg-layer-gore-32-1.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-1.png +w32 +h32 $< Declare=sval=1 egg-layer-gore-32-2.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-2.png +w32 +h32 $< Declare=sval=2 egg-layer-gore-32-3.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-3.png +w32 +h32 $< Declare=sval=3 egg-layer-gore-32-4.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-4.png +w32 +h32 $< Declare=sval=4 egg-layer-gore-32-5.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-5.png +w32 +h32 $< Declare=sval=5 egg-layer-gore-32-6.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-6.png +w32 +h32 $< Declare=sval=6 egg-layer-gore-32-7.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-7.png +w32 +h32 $< Declare=sval=7 egg-layer-gore-32-8.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-8.png +w32 +h32 $< Declare=sval=8 egg-layer-gore-32.png: egg-layer-gore-32-1.png egg-layer-gore-32-2.png egg-layer-gore-32-3.png egg-layer-gore-32-4.png egg-layer-gore-32-5.png egg-layer-gore-32-6.png egg-layer-gore-32-7.png egg-layer-gore-32-8.png convert +append $+ $@ egg-layer-gore-24-1.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-1.png +w24 +h24 $< Declare=sval=1 egg-layer-gore-24-2.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-2.png +w24 +h24 $< Declare=sval=2 egg-layer-gore-24-3.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-3.png +w24 +h24 $< Declare=sval=3 egg-layer-gore-24-4.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-4.png +w24 +h24 $< Declare=sval=4 egg-layer-gore-24-5.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-5.png +w24 +h24 $< Declare=sval=5 egg-layer-gore-24-6.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-6.png +w24 +h24 $< Declare=sval=6 egg-layer-gore-24-7.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-7.png +w24 +h24 $< Declare=sval=7 egg-layer-gore-24-8.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-8.png +w24 +h24 $< Declare=sval=8 egg-layer-gore-24.png: egg-layer-gore-24-1.png egg-layer-gore-24-2.png egg-layer-gore-24-3.png egg-layer-gore-24-4.png egg-layer-gore-24-5.png egg-layer-gore-24-6.png egg-layer-gore-24-7.png egg-layer-gore-24-8.png convert +append $+ $@ # egg rules plain-egg-32-1.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-32-.png +kfi1 +kff4 +sf1 +ef1 +w32 +h32 $< Declare=sval=1 plain-egg-32-2.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-32-.png +kfi1 +kff4 +sf2 +ef2 +w32 +h32 $< Declare=sval=1 plain-egg-32-3.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-32-.png +kfi1 +kff4 +sf3 +ef3 +w32 +h32 $< Declare=sval=1 plain-egg-32-4.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-32-.png +kfi1 +kff4 +sf4 +ef4 +w32 +h32 $< Declare=sval=1 plain-egg-32.png: plain-egg-32-1.png plain-egg-32-2.png plain-egg-32-3.png plain-egg-32-4.png convert +append $+ $@ plain-egg-24-1.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-24-.png +kfi1 +kff4 +sf1 +ef1 +w24 +h24 $< Declare=sval=1 plain-egg-24-2.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-24-.png +kfi1 +kff4 +sf2 +ef2 +w24 +h24 $< Declare=sval=1 plain-egg-24-3.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-24-.png +kfi1 +kff4 +sf3 +ef3 +w24 +h24 $< Declare=sval=1 plain-egg-24-4.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-24-.png +kfi1 +kff4 +sf4 +ef4 +w24 +h24 $< Declare=sval=1 plain-egg-24.png: plain-egg-24-1.png plain-egg-24-2.png plain-egg-24-3.png plain-egg-24-4.png convert +append $+ $@ hard-egg-32-1.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-32-.png +kfi1 +kff4 +sf1 +ef1 +w32 +h32 $< Declare=sval=2 hard-egg-32-2.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-32-.png +kfi1 +kff4 +sf2 +ef2 +w32 +h32 $< Declare=sval=2 hard-egg-32-3.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-32-.png +kfi1 +kff4 +sf3 +ef3 +w32 +h32 $< Declare=sval=2 hard-egg-32-4.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-32-.png +kfi1 +kff4 +sf4 +ef4 +w32 +h32 $< Declare=sval=2 hard-egg-32.png: hard-egg-32-1.png hard-egg-32-2.png hard-egg-32-3.png hard-egg-32-4.png convert +append $+ $@ hard-egg-24-1.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-24-.png +kfi1 +kff4 +sf1 +ef1 +w24 +h24 $< Declare=sval=2 hard-egg-24-2.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-24-.png +kfi1 +kff4 +sf2 +ef2 +w24 +h24 $< Declare=sval=2 hard-egg-24-3.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-24-.png +kfi1 +kff4 +sf3 +ef3 +w24 +h24 $< Declare=sval=2 hard-egg-24-4.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-24-.png +kfi1 +kff4 +sf4 +ef4 +w24 +h24 $< Declare=sval=2 hard-egg-24.png: hard-egg-24-1.png hard-egg-24-2.png hard-egg-24-3.png hard-egg-24-4.png convert +append $+ $@ seeker-egg-32-1.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-32-.png +kfi1 +kff4 +sf1 +ef1 +w32 +h32 $< Declare=sval=3 seeker-egg-32-2.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-32-.png +kfi1 +kff4 +sf2 +ef2 +w32 +h32 $< Declare=sval=3 seeker-egg-32-3.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-32-.png +kfi1 +kff4 +sf3 +ef3 +w32 +h32 $< Declare=sval=3 seeker-egg-32-4.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-32-.png +kfi1 +kff4 +sf4 +ef4 +w32 +h32 $< Declare=sval=3 seeker-egg-32.png: seeker-egg-32-1.png seeker-egg-32-2.png seeker-egg-32-3.png seeker-egg-32-4.png convert +append $+ $@ seeker-egg-24-1.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-24-.png +kfi1 +kff4 +sf1 +ef1 +w24 +h24 $< Declare=sval=3 seeker-egg-24-2.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-24-.png +kfi1 +kff4 +sf2 +ef2 +w24 +h24 $< Declare=sval=3 seeker-egg-24-3.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-24-.png +kfi1 +kff4 +sf3 +ef3 +w24 +h24 $< Declare=sval=3 seeker-egg-24-4.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-24-.png +kfi1 +kff4 +sf4 +ef4 +w24 +h24 $< Declare=sval=3 seeker-egg-24.png: seeker-egg-24-1.png seeker-egg-24-2.png seeker-egg-24-3.png seeker-egg-24-4.png convert +append $+ $@ egg-layer-egg-32-1.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-32-.png +kfi1 +kff4 +sf1 +ef1 +w32 +h32 $< Declare=sval=4 egg-layer-egg-32-2.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-32-.png +kfi1 +kff4 +sf2 +ef2 +w32 +h32 $< Declare=sval=4 egg-layer-egg-32-3.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-32-.png +kfi1 +kff4 +sf3 +ef3 +w32 +h32 $< Declare=sval=4 egg-layer-egg-32-4.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-32-.png +kfi1 +kff4 +sf4 +ef4 +w32 +h32 $< Declare=sval=4 egg-layer-egg-32.png: egg-layer-egg-32-1.png egg-layer-egg-32-2.png egg-layer-egg-32-3.png egg-layer-egg-32-4.png convert +append $+ $@ egg-layer-egg-24-1.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-24-.png +kfi1 +kff4 +sf1 +ef1 +w24 +h24 $< Declare=sval=4 egg-layer-egg-24-2.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-24-.png +kfi1 +kff4 +sf2 +ef2 +w24 +h24 $< Declare=sval=4 egg-layer-egg-24-3.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-24-.png +kfi1 +kff4 +sf3 +ef3 +w24 +h24 $< Declare=sval=4 egg-layer-egg-24-4.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-24-.png +kfi1 +kff4 +sf4 +ef4 +w24 +h24 $< Declare=sval=4 egg-layer-egg-24.png: egg-layer-egg-24-1.png egg-layer-egg-24-2.png egg-layer-egg-24-3.png egg-layer-egg-24-4.png convert +append $+ $@ # hero hero-right-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=0 hero-right-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=0 hero-right-down-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=45 hero-right-down-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=45 hero-down-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=90 hero-down-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=90 hero-left-down-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=135 hero-left-down-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=135 hero-left-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=180 hero-left-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=180 hero-left-up-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=225 hero-left-up-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=225 hero-up-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=270 hero-up-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=270 hero-right-up-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=315 hero-right-up-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=315 invisible-hero-right-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=0 invisible-hero-right-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=0 invisible-hero-right-down-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=45 invisible-hero-right-down-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=45 invisible-hero-down-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=90 invisible-hero-down-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=90 invisible-hero-left-down-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=135 invisible-hero-left-down-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=135 invisible-hero-left-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=180 invisible-hero-left-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=180 invisible-hero-left-up-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=225 invisible-hero-left-up-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=225 invisible-hero-up-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=270 invisible-hero-up-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=270 invisible-hero-right-up-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=315 invisible-hero-right-up-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=315 hero-gore-32-1.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-1.png +w32 +h32 $< Declare=sval=1 hero-gore-32-2.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-2.png +w32 +h32 $< Declare=sval=2 hero-gore-32-3.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-3.png +w32 +h32 $< Declare=sval=3 hero-gore-32-4.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-4.png +w32 +h32 $< Declare=sval=4 hero-gore-32-5.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-5.png +w32 +h32 $< Declare=sval=5 hero-gore-32-6.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-6.png +w32 +h32 $< Declare=sval=6 hero-gore-32-7.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-7.png +w32 +h32 $< Declare=sval=7 hero-gore-32-8.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-8.png +w32 +h32 $< Declare=sval=8 hero-gore-32.png: hero-gore-32-1.png hero-gore-32-2.png hero-gore-32-3.png hero-gore-32-4.png hero-gore-32-5.png hero-gore-32-6.png hero-gore-32-7.png hero-gore-32-8.png convert +append $+ $@ hero-gore-24-1.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-1.png +w24 +h24 $< Declare=sval=1 hero-gore-24-2.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-2.png +w24 +h24 $< Declare=sval=2 hero-gore-24-3.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-3.png +w24 +h24 $< Declare=sval=3 hero-gore-24-4.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-4.png +w24 +h24 $< Declare=sval=4 hero-gore-24-5.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-5.png +w24 +h24 $< Declare=sval=5 hero-gore-24-6.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-6.png +w24 +h24 $< Declare=sval=6 hero-gore-24-7.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-7.png +w24 +h24 $< Declare=sval=7 hero-gore-24-8.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-8.png +w24 +h24 $< Declare=sval=8 hero-gore-24.png: hero-gore-24-1.png hero-gore-24-2.png hero-gore-24-3.png hero-gore-24-4.png hero-gore-24-5.png hero-gore-24-6.png hero-gore-24-7.png hero-gore-24-8.png convert +append $+ $@ # misc block-32.png: block.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< block-24.png: block.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< wall-32.png: wall.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< wall-24.png: wall.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< monster-wall-32.png: monster-wall.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< monster-wall-24.png: monster-wall.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< freeze-box-32.png: freeze-box.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< freeze-box-24.png: freeze-box.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< power-up-invisibility-32.png: power-up-invisibility.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< power-up-invisibility-24.png: power-up-invisibility.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< power-up-freeze-32.png: power-up-freeze.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< power-up-freeze-24.png: power-up-freeze.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< power-up-explode-32.png: power-up-explode.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< power-up-explode-24.png: power-up-explode.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< levitation-32-1.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-1.png +w32 +h32 $< Declare=sval=1 levitation-32-2.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-2.png +w32 +h32 $< Declare=sval=2 levitation-32-3.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-3.png +w32 +h32 $< Declare=sval=3 levitation-32-4.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-4.png +w32 +h32 $< Declare=sval=4 levitation-32-5.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-5.png +w32 +h32 $< Declare=sval=5 levitation-32-6.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-6.png +w32 +h32 $< Declare=sval=6 levitation-32-7.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-7.png +w32 +h32 $< Declare=sval=7 levitation-32-8.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-8.png +w32 +h32 $< Declare=sval=8 levitation-32.png: levitation-32-1.png levitation-32-2.png levitation-32-3.png levitation-32-4.png levitation-32-5.png levitation-32-6.png levitation-32-7.png levitation-32-8.png convert +append $+ $@ levitation-24-1.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-1.png +w24 +h24 $< Declare=sval=1 levitation-24-2.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-2.png +w24 +h24 $< Declare=sval=2 levitation-24-3.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-3.png +w24 +h24 $< Declare=sval=3 levitation-24-4.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-4.png +w24 +h24 $< Declare=sval=4 levitation-24-5.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-5.png +w24 +h24 $< Declare=sval=5 levitation-24-6.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-6.png +w24 +h24 $< Declare=sval=6 levitation-24-7.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-7.png +w24 +h24 $< Declare=sval=7 levitation-24-8.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-8.png +w24 +h24 $< Declare=sval=8 levitation-24.png: levitation-24-1.png levitation-24-2.png levitation-24-3.png levitation-24-4.png levitation-24-5.png levitation-24-6.png levitation-24-7.png levitation-24-8.png convert +append $+ $@ splash.png: splash.pov $(POVRAY) $(POVFLAGS) +w960 +h704 +o$@ $< splash.jpg: splash.png convert $< $@ # 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: monster-masher-1.8.1/pixmaps/Makefile.povrules0000644000175000017500000030620011105646347016415 00000000000000 # monster rules plain-monster-32-01.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf1 +ef1 +w32 +h32 $< plain-monster-32-02.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf2 +ef2 +w32 +h32 $< plain-monster-32-03.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf3 +ef3 +w32 +h32 $< plain-monster-32-04.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf4 +ef4 +w32 +h32 $< plain-monster-32-05.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf5 +ef5 +w32 +h32 $< plain-monster-32-06.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf6 +ef6 +w32 +h32 $< plain-monster-32-07.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf7 +ef7 +w32 +h32 $< plain-monster-32-08.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf8 +ef8 +w32 +h32 $< plain-monster-32-09.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf9 +ef9 +w32 +h32 $< plain-monster-32-10.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf10 +ef10 +w32 +h32 $< plain-monster-32-11.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf11 +ef11 +w32 +h32 $< plain-monster-32-12.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf12 +ef12 +w32 +h32 $< plain-monster-32-13.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf13 +ef13 +w32 +h32 $< plain-monster-32-14.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf14 +ef14 +w32 +h32 $< plain-monster-32-15.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf15 +ef15 +w32 +h32 $< plain-monster-32-16.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf16 +ef16 +w32 +h32 $< plain-monster-32-17.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf17 +ef17 +w32 +h32 $< plain-monster-32-18.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf18 +ef18 +w32 +h32 $< plain-monster-32-19.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf19 +ef19 +w32 +h32 $< plain-monster-32-20.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf20 +ef20 +w32 +h32 $< plain-monster-32-21.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf21 +ef21 +w32 +h32 $< plain-monster-32-22.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf22 +ef22 +w32 +h32 $< plain-monster-32-23.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf23 +ef23 +w32 +h32 $< plain-monster-32-24.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf24 +ef24 +w32 +h32 $< plain-monster-32-25.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf25 +ef25 +w32 +h32 $< plain-monster-32-26.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf26 +ef26 +w32 +h32 $< plain-monster-32-27.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf27 +ef27 +w32 +h32 $< plain-monster-32-28.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf28 +ef28 +w32 +h32 $< plain-monster-32-29.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf29 +ef29 +w32 +h32 $< plain-monster-32-30.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf30 +ef30 +w32 +h32 $< plain-monster-32-31.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf31 +ef31 +w32 +h32 $< plain-monster-32-32.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-32-.png +kfi1 +kff32 +sf32 +ef32 +w32 +h32 $< plain-monster-32.png: plain-monster-32-01.png plain-monster-32-02.png plain-monster-32-03.png plain-monster-32-04.png plain-monster-32-05.png plain-monster-32-06.png plain-monster-32-07.png plain-monster-32-08.png plain-monster-32-09.png plain-monster-32-10.png plain-monster-32-11.png plain-monster-32-12.png plain-monster-32-13.png plain-monster-32-14.png plain-monster-32-15.png plain-monster-32-16.png plain-monster-32-17.png plain-monster-32-18.png plain-monster-32-19.png plain-monster-32-20.png plain-monster-32-21.png plain-monster-32-22.png plain-monster-32-23.png plain-monster-32-24.png plain-monster-32-25.png plain-monster-32-26.png plain-monster-32-27.png plain-monster-32-28.png plain-monster-32-29.png plain-monster-32-30.png plain-monster-32-31.png plain-monster-32-32.png convert +append $+ $@ generated_images += plain-monster-32.png temporary_images += plain-monster-32-01.png plain-monster-32-02.png plain-monster-32-03.png plain-monster-32-04.png plain-monster-32-05.png plain-monster-32-06.png plain-monster-32-07.png plain-monster-32-08.png plain-monster-32-09.png plain-monster-32-10.png plain-monster-32-11.png plain-monster-32-12.png plain-monster-32-13.png plain-monster-32-14.png plain-monster-32-15.png plain-monster-32-16.png plain-monster-32-17.png plain-monster-32-18.png plain-monster-32-19.png plain-monster-32-20.png plain-monster-32-21.png plain-monster-32-22.png plain-monster-32-23.png plain-monster-32-24.png plain-monster-32-25.png plain-monster-32-26.png plain-monster-32-27.png plain-monster-32-28.png plain-monster-32-29.png plain-monster-32-30.png plain-monster-32-31.png plain-monster-32-32.png plain-monster-24-01.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf1 +ef1 +w24 +h24 $< plain-monster-24-02.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf2 +ef2 +w24 +h24 $< plain-monster-24-03.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf3 +ef3 +w24 +h24 $< plain-monster-24-04.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf4 +ef4 +w24 +h24 $< plain-monster-24-05.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf5 +ef5 +w24 +h24 $< plain-monster-24-06.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf6 +ef6 +w24 +h24 $< plain-monster-24-07.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf7 +ef7 +w24 +h24 $< plain-monster-24-08.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf8 +ef8 +w24 +h24 $< plain-monster-24-09.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf9 +ef9 +w24 +h24 $< plain-monster-24-10.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf10 +ef10 +w24 +h24 $< plain-monster-24-11.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf11 +ef11 +w24 +h24 $< plain-monster-24-12.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf12 +ef12 +w24 +h24 $< plain-monster-24-13.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf13 +ef13 +w24 +h24 $< plain-monster-24-14.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf14 +ef14 +w24 +h24 $< plain-monster-24-15.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf15 +ef15 +w24 +h24 $< plain-monster-24-16.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf16 +ef16 +w24 +h24 $< plain-monster-24-17.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf17 +ef17 +w24 +h24 $< plain-monster-24-18.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf18 +ef18 +w24 +h24 $< plain-monster-24-19.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf19 +ef19 +w24 +h24 $< plain-monster-24-20.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf20 +ef20 +w24 +h24 $< plain-monster-24-21.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf21 +ef21 +w24 +h24 $< plain-monster-24-22.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf22 +ef22 +w24 +h24 $< plain-monster-24-23.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf23 +ef23 +w24 +h24 $< plain-monster-24-24.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf24 +ef24 +w24 +h24 $< plain-monster-24-25.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf25 +ef25 +w24 +h24 $< plain-monster-24-26.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf26 +ef26 +w24 +h24 $< plain-monster-24-27.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf27 +ef27 +w24 +h24 $< plain-monster-24-28.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf28 +ef28 +w24 +h24 $< plain-monster-24-29.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf29 +ef29 +w24 +h24 $< plain-monster-24-30.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf30 +ef30 +w24 +h24 $< plain-monster-24-31.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf31 +ef31 +w24 +h24 $< plain-monster-24-32.png: plain-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-monster-24-.png +kfi1 +kff32 +sf32 +ef32 +w24 +h24 $< plain-monster-24.png: plain-monster-24-01.png plain-monster-24-02.png plain-monster-24-03.png plain-monster-24-04.png plain-monster-24-05.png plain-monster-24-06.png plain-monster-24-07.png plain-monster-24-08.png plain-monster-24-09.png plain-monster-24-10.png plain-monster-24-11.png plain-monster-24-12.png plain-monster-24-13.png plain-monster-24-14.png plain-monster-24-15.png plain-monster-24-16.png plain-monster-24-17.png plain-monster-24-18.png plain-monster-24-19.png plain-monster-24-20.png plain-monster-24-21.png plain-monster-24-22.png plain-monster-24-23.png plain-monster-24-24.png plain-monster-24-25.png plain-monster-24-26.png plain-monster-24-27.png plain-monster-24-28.png plain-monster-24-29.png plain-monster-24-30.png plain-monster-24-31.png plain-monster-24-32.png convert +append $+ $@ generated_images += plain-monster-24.png temporary_images += plain-monster-24-01.png plain-monster-24-02.png plain-monster-24-03.png plain-monster-24-04.png plain-monster-24-05.png plain-monster-24-06.png plain-monster-24-07.png plain-monster-24-08.png plain-monster-24-09.png plain-monster-24-10.png plain-monster-24-11.png plain-monster-24-12.png plain-monster-24-13.png plain-monster-24-14.png plain-monster-24-15.png plain-monster-24-16.png plain-monster-24-17.png plain-monster-24-18.png plain-monster-24-19.png plain-monster-24-20.png plain-monster-24-21.png plain-monster-24-22.png plain-monster-24-23.png plain-monster-24-24.png plain-monster-24-25.png plain-monster-24-26.png plain-monster-24-27.png plain-monster-24-28.png plain-monster-24-29.png plain-monster-24-30.png plain-monster-24-31.png plain-monster-24-32.png plain-gore-32-1.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-1.png +w32 +h32 $< Declare=sval=1 plain-gore-32-2.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-2.png +w32 +h32 $< Declare=sval=2 plain-gore-32-3.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-3.png +w32 +h32 $< Declare=sval=3 plain-gore-32-4.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-4.png +w32 +h32 $< Declare=sval=4 plain-gore-32-5.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-5.png +w32 +h32 $< Declare=sval=5 plain-gore-32-6.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-6.png +w32 +h32 $< Declare=sval=6 plain-gore-32-7.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-7.png +w32 +h32 $< Declare=sval=7 plain-gore-32-8.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-32-8.png +w32 +h32 $< Declare=sval=8 plain-gore-32.png: plain-gore-32-1.png plain-gore-32-2.png plain-gore-32-3.png plain-gore-32-4.png plain-gore-32-5.png plain-gore-32-6.png plain-gore-32-7.png plain-gore-32-8.png convert +append $+ $@ generated_images += plain-gore-32.png temporary_images += plain-gore-32-1.png plain-gore-32-2.png plain-gore-32-3.png plain-gore-32-4.png plain-gore-32-5.png plain-gore-32-6.png plain-gore-32-7.png plain-gore-32-8.png plain-gore-24-1.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-1.png +w24 +h24 $< Declare=sval=1 plain-gore-24-2.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-2.png +w24 +h24 $< Declare=sval=2 plain-gore-24-3.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-3.png +w24 +h24 $< Declare=sval=3 plain-gore-24-4.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-4.png +w24 +h24 $< Declare=sval=4 plain-gore-24-5.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-5.png +w24 +h24 $< Declare=sval=5 plain-gore-24-6.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-6.png +w24 +h24 $< Declare=sval=6 plain-gore-24-7.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-7.png +w24 +h24 $< Declare=sval=7 plain-gore-24-8.png: plain-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-gore-24-8.png +w24 +h24 $< Declare=sval=8 plain-gore-24.png: plain-gore-24-1.png plain-gore-24-2.png plain-gore-24-3.png plain-gore-24-4.png plain-gore-24-5.png plain-gore-24-6.png plain-gore-24-7.png plain-gore-24-8.png convert +append $+ $@ generated_images += plain-gore-24.png temporary_images += plain-gore-24-1.png plain-gore-24-2.png plain-gore-24-3.png plain-gore-24-4.png plain-gore-24-5.png plain-gore-24-6.png plain-gore-24-7.png plain-gore-24-8.png hard-monster-32-01.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf1 +ef1 +w32 +h32 $< hard-monster-32-02.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf2 +ef2 +w32 +h32 $< hard-monster-32-03.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf3 +ef3 +w32 +h32 $< hard-monster-32-04.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf4 +ef4 +w32 +h32 $< hard-monster-32-05.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf5 +ef5 +w32 +h32 $< hard-monster-32-06.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf6 +ef6 +w32 +h32 $< hard-monster-32-07.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf7 +ef7 +w32 +h32 $< hard-monster-32-08.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf8 +ef8 +w32 +h32 $< hard-monster-32-09.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf9 +ef9 +w32 +h32 $< hard-monster-32-10.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf10 +ef10 +w32 +h32 $< hard-monster-32-11.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf11 +ef11 +w32 +h32 $< hard-monster-32-12.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf12 +ef12 +w32 +h32 $< hard-monster-32-13.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf13 +ef13 +w32 +h32 $< hard-monster-32-14.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf14 +ef14 +w32 +h32 $< hard-monster-32-15.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf15 +ef15 +w32 +h32 $< hard-monster-32-16.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf16 +ef16 +w32 +h32 $< hard-monster-32-17.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf17 +ef17 +w32 +h32 $< hard-monster-32-18.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf18 +ef18 +w32 +h32 $< hard-monster-32-19.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf19 +ef19 +w32 +h32 $< hard-monster-32-20.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf20 +ef20 +w32 +h32 $< hard-monster-32-21.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf21 +ef21 +w32 +h32 $< hard-monster-32-22.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf22 +ef22 +w32 +h32 $< hard-monster-32-23.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf23 +ef23 +w32 +h32 $< hard-monster-32-24.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf24 +ef24 +w32 +h32 $< hard-monster-32-25.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf25 +ef25 +w32 +h32 $< hard-monster-32-26.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf26 +ef26 +w32 +h32 $< hard-monster-32-27.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf27 +ef27 +w32 +h32 $< hard-monster-32-28.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf28 +ef28 +w32 +h32 $< hard-monster-32-29.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf29 +ef29 +w32 +h32 $< hard-monster-32-30.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf30 +ef30 +w32 +h32 $< hard-monster-32-31.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf31 +ef31 +w32 +h32 $< hard-monster-32-32.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf32 +ef32 +w32 +h32 $< hard-monster-32-33.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf33 +ef33 +w32 +h32 $< hard-monster-32-34.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf34 +ef34 +w32 +h32 $< hard-monster-32-35.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf35 +ef35 +w32 +h32 $< hard-monster-32-36.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf36 +ef36 +w32 +h32 $< hard-monster-32-37.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf37 +ef37 +w32 +h32 $< hard-monster-32-38.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf38 +ef38 +w32 +h32 $< hard-monster-32-39.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf39 +ef39 +w32 +h32 $< hard-monster-32-40.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf40 +ef40 +w32 +h32 $< hard-monster-32-41.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf41 +ef41 +w32 +h32 $< hard-monster-32-42.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf42 +ef42 +w32 +h32 $< hard-monster-32-43.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf43 +ef43 +w32 +h32 $< hard-monster-32-44.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf44 +ef44 +w32 +h32 $< hard-monster-32-45.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf45 +ef45 +w32 +h32 $< hard-monster-32-46.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf46 +ef46 +w32 +h32 $< hard-monster-32-47.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf47 +ef47 +w32 +h32 $< hard-monster-32-48.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-32-.png +kfi1 +kff48 +sf48 +ef48 +w32 +h32 $< hard-monster-32.png: hard-monster-32-01.png hard-monster-32-02.png hard-monster-32-03.png hard-monster-32-04.png hard-monster-32-05.png hard-monster-32-06.png hard-monster-32-07.png hard-monster-32-08.png hard-monster-32-09.png hard-monster-32-10.png hard-monster-32-11.png hard-monster-32-12.png hard-monster-32-13.png hard-monster-32-14.png hard-monster-32-15.png hard-monster-32-16.png hard-monster-32-17.png hard-monster-32-18.png hard-monster-32-19.png hard-monster-32-20.png hard-monster-32-21.png hard-monster-32-22.png hard-monster-32-23.png hard-monster-32-24.png hard-monster-32-25.png hard-monster-32-26.png hard-monster-32-27.png hard-monster-32-28.png hard-monster-32-29.png hard-monster-32-30.png hard-monster-32-31.png hard-monster-32-32.png hard-monster-32-33.png hard-monster-32-34.png hard-monster-32-35.png hard-monster-32-36.png hard-monster-32-37.png hard-monster-32-38.png hard-monster-32-39.png hard-monster-32-40.png hard-monster-32-41.png hard-monster-32-42.png hard-monster-32-43.png hard-monster-32-44.png hard-monster-32-45.png hard-monster-32-46.png hard-monster-32-47.png hard-monster-32-48.png convert +append $+ $@ generated_images += hard-monster-32.png temporary_images += hard-monster-32-01.png hard-monster-32-02.png hard-monster-32-03.png hard-monster-32-04.png hard-monster-32-05.png hard-monster-32-06.png hard-monster-32-07.png hard-monster-32-08.png hard-monster-32-09.png hard-monster-32-10.png hard-monster-32-11.png hard-monster-32-12.png hard-monster-32-13.png hard-monster-32-14.png hard-monster-32-15.png hard-monster-32-16.png hard-monster-32-17.png hard-monster-32-18.png hard-monster-32-19.png hard-monster-32-20.png hard-monster-32-21.png hard-monster-32-22.png hard-monster-32-23.png hard-monster-32-24.png hard-monster-32-25.png hard-monster-32-26.png hard-monster-32-27.png hard-monster-32-28.png hard-monster-32-29.png hard-monster-32-30.png hard-monster-32-31.png hard-monster-32-32.png hard-monster-32-33.png hard-monster-32-34.png hard-monster-32-35.png hard-monster-32-36.png hard-monster-32-37.png hard-monster-32-38.png hard-monster-32-39.png hard-monster-32-40.png hard-monster-32-41.png hard-monster-32-42.png hard-monster-32-43.png hard-monster-32-44.png hard-monster-32-45.png hard-monster-32-46.png hard-monster-32-47.png hard-monster-32-48.png hard-monster-24-01.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf1 +ef1 +w24 +h24 $< hard-monster-24-02.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf2 +ef2 +w24 +h24 $< hard-monster-24-03.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf3 +ef3 +w24 +h24 $< hard-monster-24-04.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf4 +ef4 +w24 +h24 $< hard-monster-24-05.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf5 +ef5 +w24 +h24 $< hard-monster-24-06.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf6 +ef6 +w24 +h24 $< hard-monster-24-07.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf7 +ef7 +w24 +h24 $< hard-monster-24-08.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf8 +ef8 +w24 +h24 $< hard-monster-24-09.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf9 +ef9 +w24 +h24 $< hard-monster-24-10.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf10 +ef10 +w24 +h24 $< hard-monster-24-11.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf11 +ef11 +w24 +h24 $< hard-monster-24-12.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf12 +ef12 +w24 +h24 $< hard-monster-24-13.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf13 +ef13 +w24 +h24 $< hard-monster-24-14.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf14 +ef14 +w24 +h24 $< hard-monster-24-15.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf15 +ef15 +w24 +h24 $< hard-monster-24-16.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf16 +ef16 +w24 +h24 $< hard-monster-24-17.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf17 +ef17 +w24 +h24 $< hard-monster-24-18.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf18 +ef18 +w24 +h24 $< hard-monster-24-19.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf19 +ef19 +w24 +h24 $< hard-monster-24-20.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf20 +ef20 +w24 +h24 $< hard-monster-24-21.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf21 +ef21 +w24 +h24 $< hard-monster-24-22.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf22 +ef22 +w24 +h24 $< hard-monster-24-23.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf23 +ef23 +w24 +h24 $< hard-monster-24-24.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf24 +ef24 +w24 +h24 $< hard-monster-24-25.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf25 +ef25 +w24 +h24 $< hard-monster-24-26.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf26 +ef26 +w24 +h24 $< hard-monster-24-27.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf27 +ef27 +w24 +h24 $< hard-monster-24-28.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf28 +ef28 +w24 +h24 $< hard-monster-24-29.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf29 +ef29 +w24 +h24 $< hard-monster-24-30.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf30 +ef30 +w24 +h24 $< hard-monster-24-31.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf31 +ef31 +w24 +h24 $< hard-monster-24-32.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf32 +ef32 +w24 +h24 $< hard-monster-24-33.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf33 +ef33 +w24 +h24 $< hard-monster-24-34.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf34 +ef34 +w24 +h24 $< hard-monster-24-35.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf35 +ef35 +w24 +h24 $< hard-monster-24-36.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf36 +ef36 +w24 +h24 $< hard-monster-24-37.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf37 +ef37 +w24 +h24 $< hard-monster-24-38.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf38 +ef38 +w24 +h24 $< hard-monster-24-39.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf39 +ef39 +w24 +h24 $< hard-monster-24-40.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf40 +ef40 +w24 +h24 $< hard-monster-24-41.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf41 +ef41 +w24 +h24 $< hard-monster-24-42.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf42 +ef42 +w24 +h24 $< hard-monster-24-43.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf43 +ef43 +w24 +h24 $< hard-monster-24-44.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf44 +ef44 +w24 +h24 $< hard-monster-24-45.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf45 +ef45 +w24 +h24 $< hard-monster-24-46.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf46 +ef46 +w24 +h24 $< hard-monster-24-47.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf47 +ef47 +w24 +h24 $< hard-monster-24-48.png: hard-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-monster-24-.png +kfi1 +kff48 +sf48 +ef48 +w24 +h24 $< hard-monster-24.png: hard-monster-24-01.png hard-monster-24-02.png hard-monster-24-03.png hard-monster-24-04.png hard-monster-24-05.png hard-monster-24-06.png hard-monster-24-07.png hard-monster-24-08.png hard-monster-24-09.png hard-monster-24-10.png hard-monster-24-11.png hard-monster-24-12.png hard-monster-24-13.png hard-monster-24-14.png hard-monster-24-15.png hard-monster-24-16.png hard-monster-24-17.png hard-monster-24-18.png hard-monster-24-19.png hard-monster-24-20.png hard-monster-24-21.png hard-monster-24-22.png hard-monster-24-23.png hard-monster-24-24.png hard-monster-24-25.png hard-monster-24-26.png hard-monster-24-27.png hard-monster-24-28.png hard-monster-24-29.png hard-monster-24-30.png hard-monster-24-31.png hard-monster-24-32.png hard-monster-24-33.png hard-monster-24-34.png hard-monster-24-35.png hard-monster-24-36.png hard-monster-24-37.png hard-monster-24-38.png hard-monster-24-39.png hard-monster-24-40.png hard-monster-24-41.png hard-monster-24-42.png hard-monster-24-43.png hard-monster-24-44.png hard-monster-24-45.png hard-monster-24-46.png hard-monster-24-47.png hard-monster-24-48.png convert +append $+ $@ generated_images += hard-monster-24.png temporary_images += hard-monster-24-01.png hard-monster-24-02.png hard-monster-24-03.png hard-monster-24-04.png hard-monster-24-05.png hard-monster-24-06.png hard-monster-24-07.png hard-monster-24-08.png hard-monster-24-09.png hard-monster-24-10.png hard-monster-24-11.png hard-monster-24-12.png hard-monster-24-13.png hard-monster-24-14.png hard-monster-24-15.png hard-monster-24-16.png hard-monster-24-17.png hard-monster-24-18.png hard-monster-24-19.png hard-monster-24-20.png hard-monster-24-21.png hard-monster-24-22.png hard-monster-24-23.png hard-monster-24-24.png hard-monster-24-25.png hard-monster-24-26.png hard-monster-24-27.png hard-monster-24-28.png hard-monster-24-29.png hard-monster-24-30.png hard-monster-24-31.png hard-monster-24-32.png hard-monster-24-33.png hard-monster-24-34.png hard-monster-24-35.png hard-monster-24-36.png hard-monster-24-37.png hard-monster-24-38.png hard-monster-24-39.png hard-monster-24-40.png hard-monster-24-41.png hard-monster-24-42.png hard-monster-24-43.png hard-monster-24-44.png hard-monster-24-45.png hard-monster-24-46.png hard-monster-24-47.png hard-monster-24-48.png hard-gore-32-1.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-1.png +w32 +h32 $< Declare=sval=1 hard-gore-32-2.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-2.png +w32 +h32 $< Declare=sval=2 hard-gore-32-3.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-3.png +w32 +h32 $< Declare=sval=3 hard-gore-32-4.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-4.png +w32 +h32 $< Declare=sval=4 hard-gore-32-5.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-5.png +w32 +h32 $< Declare=sval=5 hard-gore-32-6.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-6.png +w32 +h32 $< Declare=sval=6 hard-gore-32-7.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-7.png +w32 +h32 $< Declare=sval=7 hard-gore-32-8.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-32-8.png +w32 +h32 $< Declare=sval=8 hard-gore-32.png: hard-gore-32-1.png hard-gore-32-2.png hard-gore-32-3.png hard-gore-32-4.png hard-gore-32-5.png hard-gore-32-6.png hard-gore-32-7.png hard-gore-32-8.png convert +append $+ $@ generated_images += hard-gore-32.png temporary_images += hard-gore-32-1.png hard-gore-32-2.png hard-gore-32-3.png hard-gore-32-4.png hard-gore-32-5.png hard-gore-32-6.png hard-gore-32-7.png hard-gore-32-8.png hard-gore-24-1.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-1.png +w24 +h24 $< Declare=sval=1 hard-gore-24-2.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-2.png +w24 +h24 $< Declare=sval=2 hard-gore-24-3.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-3.png +w24 +h24 $< Declare=sval=3 hard-gore-24-4.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-4.png +w24 +h24 $< Declare=sval=4 hard-gore-24-5.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-5.png +w24 +h24 $< Declare=sval=5 hard-gore-24-6.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-6.png +w24 +h24 $< Declare=sval=6 hard-gore-24-7.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-7.png +w24 +h24 $< Declare=sval=7 hard-gore-24-8.png: hard-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-gore-24-8.png +w24 +h24 $< Declare=sval=8 hard-gore-24.png: hard-gore-24-1.png hard-gore-24-2.png hard-gore-24-3.png hard-gore-24-4.png hard-gore-24-5.png hard-gore-24-6.png hard-gore-24-7.png hard-gore-24-8.png convert +append $+ $@ generated_images += hard-gore-24.png temporary_images += hard-gore-24-1.png hard-gore-24-2.png hard-gore-24-3.png hard-gore-24-4.png hard-gore-24-5.png hard-gore-24-6.png hard-gore-24-7.png hard-gore-24-8.png seeker-monster-32-01.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf1 +ef1 +w32 +h32 $< seeker-monster-32-02.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf2 +ef2 +w32 +h32 $< seeker-monster-32-03.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf3 +ef3 +w32 +h32 $< seeker-monster-32-04.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf4 +ef4 +w32 +h32 $< seeker-monster-32-05.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf5 +ef5 +w32 +h32 $< seeker-monster-32-06.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf6 +ef6 +w32 +h32 $< seeker-monster-32-07.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf7 +ef7 +w32 +h32 $< seeker-monster-32-08.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf8 +ef8 +w32 +h32 $< seeker-monster-32-09.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf9 +ef9 +w32 +h32 $< seeker-monster-32-10.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf10 +ef10 +w32 +h32 $< seeker-monster-32-11.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf11 +ef11 +w32 +h32 $< seeker-monster-32-12.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf12 +ef12 +w32 +h32 $< seeker-monster-32-13.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf13 +ef13 +w32 +h32 $< seeker-monster-32-14.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf14 +ef14 +w32 +h32 $< seeker-monster-32-15.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf15 +ef15 +w32 +h32 $< seeker-monster-32-16.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf16 +ef16 +w32 +h32 $< seeker-monster-32-17.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf17 +ef17 +w32 +h32 $< seeker-monster-32-18.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf18 +ef18 +w32 +h32 $< seeker-monster-32-19.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf19 +ef19 +w32 +h32 $< seeker-monster-32-20.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf20 +ef20 +w32 +h32 $< seeker-monster-32-21.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf21 +ef21 +w32 +h32 $< seeker-monster-32-22.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf22 +ef22 +w32 +h32 $< seeker-monster-32-23.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf23 +ef23 +w32 +h32 $< seeker-monster-32-24.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf24 +ef24 +w32 +h32 $< seeker-monster-32-25.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf25 +ef25 +w32 +h32 $< seeker-monster-32-26.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf26 +ef26 +w32 +h32 $< seeker-monster-32-27.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf27 +ef27 +w32 +h32 $< seeker-monster-32-28.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf28 +ef28 +w32 +h32 $< seeker-monster-32-29.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf29 +ef29 +w32 +h32 $< seeker-monster-32-30.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf30 +ef30 +w32 +h32 $< seeker-monster-32-31.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf31 +ef31 +w32 +h32 $< seeker-monster-32-32.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-32-.png +kfi1 +kff32 +sf32 +ef32 +w32 +h32 $< seeker-monster-32.png: seeker-monster-32-01.png seeker-monster-32-02.png seeker-monster-32-03.png seeker-monster-32-04.png seeker-monster-32-05.png seeker-monster-32-06.png seeker-monster-32-07.png seeker-monster-32-08.png seeker-monster-32-09.png seeker-monster-32-10.png seeker-monster-32-11.png seeker-monster-32-12.png seeker-monster-32-13.png seeker-monster-32-14.png seeker-monster-32-15.png seeker-monster-32-16.png seeker-monster-32-17.png seeker-monster-32-18.png seeker-monster-32-19.png seeker-monster-32-20.png seeker-monster-32-21.png seeker-monster-32-22.png seeker-monster-32-23.png seeker-monster-32-24.png seeker-monster-32-25.png seeker-monster-32-26.png seeker-monster-32-27.png seeker-monster-32-28.png seeker-monster-32-29.png seeker-monster-32-30.png seeker-monster-32-31.png seeker-monster-32-32.png convert +append $+ $@ generated_images += seeker-monster-32.png temporary_images += seeker-monster-32-01.png seeker-monster-32-02.png seeker-monster-32-03.png seeker-monster-32-04.png seeker-monster-32-05.png seeker-monster-32-06.png seeker-monster-32-07.png seeker-monster-32-08.png seeker-monster-32-09.png seeker-monster-32-10.png seeker-monster-32-11.png seeker-monster-32-12.png seeker-monster-32-13.png seeker-monster-32-14.png seeker-monster-32-15.png seeker-monster-32-16.png seeker-monster-32-17.png seeker-monster-32-18.png seeker-monster-32-19.png seeker-monster-32-20.png seeker-monster-32-21.png seeker-monster-32-22.png seeker-monster-32-23.png seeker-monster-32-24.png seeker-monster-32-25.png seeker-monster-32-26.png seeker-monster-32-27.png seeker-monster-32-28.png seeker-monster-32-29.png seeker-monster-32-30.png seeker-monster-32-31.png seeker-monster-32-32.png seeker-monster-24-01.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf1 +ef1 +w24 +h24 $< seeker-monster-24-02.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf2 +ef2 +w24 +h24 $< seeker-monster-24-03.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf3 +ef3 +w24 +h24 $< seeker-monster-24-04.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf4 +ef4 +w24 +h24 $< seeker-monster-24-05.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf5 +ef5 +w24 +h24 $< seeker-monster-24-06.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf6 +ef6 +w24 +h24 $< seeker-monster-24-07.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf7 +ef7 +w24 +h24 $< seeker-monster-24-08.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf8 +ef8 +w24 +h24 $< seeker-monster-24-09.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf9 +ef9 +w24 +h24 $< seeker-monster-24-10.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf10 +ef10 +w24 +h24 $< seeker-monster-24-11.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf11 +ef11 +w24 +h24 $< seeker-monster-24-12.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf12 +ef12 +w24 +h24 $< seeker-monster-24-13.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf13 +ef13 +w24 +h24 $< seeker-monster-24-14.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf14 +ef14 +w24 +h24 $< seeker-monster-24-15.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf15 +ef15 +w24 +h24 $< seeker-monster-24-16.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf16 +ef16 +w24 +h24 $< seeker-monster-24-17.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf17 +ef17 +w24 +h24 $< seeker-monster-24-18.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf18 +ef18 +w24 +h24 $< seeker-monster-24-19.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf19 +ef19 +w24 +h24 $< seeker-monster-24-20.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf20 +ef20 +w24 +h24 $< seeker-monster-24-21.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf21 +ef21 +w24 +h24 $< seeker-monster-24-22.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf22 +ef22 +w24 +h24 $< seeker-monster-24-23.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf23 +ef23 +w24 +h24 $< seeker-monster-24-24.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf24 +ef24 +w24 +h24 $< seeker-monster-24-25.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf25 +ef25 +w24 +h24 $< seeker-monster-24-26.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf26 +ef26 +w24 +h24 $< seeker-monster-24-27.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf27 +ef27 +w24 +h24 $< seeker-monster-24-28.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf28 +ef28 +w24 +h24 $< seeker-monster-24-29.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf29 +ef29 +w24 +h24 $< seeker-monster-24-30.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf30 +ef30 +w24 +h24 $< seeker-monster-24-31.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf31 +ef31 +w24 +h24 $< seeker-monster-24-32.png: seeker-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-monster-24-.png +kfi1 +kff32 +sf32 +ef32 +w24 +h24 $< seeker-monster-24.png: seeker-monster-24-01.png seeker-monster-24-02.png seeker-monster-24-03.png seeker-monster-24-04.png seeker-monster-24-05.png seeker-monster-24-06.png seeker-monster-24-07.png seeker-monster-24-08.png seeker-monster-24-09.png seeker-monster-24-10.png seeker-monster-24-11.png seeker-monster-24-12.png seeker-monster-24-13.png seeker-monster-24-14.png seeker-monster-24-15.png seeker-monster-24-16.png seeker-monster-24-17.png seeker-monster-24-18.png seeker-monster-24-19.png seeker-monster-24-20.png seeker-monster-24-21.png seeker-monster-24-22.png seeker-monster-24-23.png seeker-monster-24-24.png seeker-monster-24-25.png seeker-monster-24-26.png seeker-monster-24-27.png seeker-monster-24-28.png seeker-monster-24-29.png seeker-monster-24-30.png seeker-monster-24-31.png seeker-monster-24-32.png convert +append $+ $@ generated_images += seeker-monster-24.png temporary_images += seeker-monster-24-01.png seeker-monster-24-02.png seeker-monster-24-03.png seeker-monster-24-04.png seeker-monster-24-05.png seeker-monster-24-06.png seeker-monster-24-07.png seeker-monster-24-08.png seeker-monster-24-09.png seeker-monster-24-10.png seeker-monster-24-11.png seeker-monster-24-12.png seeker-monster-24-13.png seeker-monster-24-14.png seeker-monster-24-15.png seeker-monster-24-16.png seeker-monster-24-17.png seeker-monster-24-18.png seeker-monster-24-19.png seeker-monster-24-20.png seeker-monster-24-21.png seeker-monster-24-22.png seeker-monster-24-23.png seeker-monster-24-24.png seeker-monster-24-25.png seeker-monster-24-26.png seeker-monster-24-27.png seeker-monster-24-28.png seeker-monster-24-29.png seeker-monster-24-30.png seeker-monster-24-31.png seeker-monster-24-32.png seeker-gore-32-1.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-1.png +w32 +h32 $< Declare=sval=1 seeker-gore-32-2.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-2.png +w32 +h32 $< Declare=sval=2 seeker-gore-32-3.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-3.png +w32 +h32 $< Declare=sval=3 seeker-gore-32-4.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-4.png +w32 +h32 $< Declare=sval=4 seeker-gore-32-5.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-5.png +w32 +h32 $< Declare=sval=5 seeker-gore-32-6.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-6.png +w32 +h32 $< Declare=sval=6 seeker-gore-32-7.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-7.png +w32 +h32 $< Declare=sval=7 seeker-gore-32-8.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-32-8.png +w32 +h32 $< Declare=sval=8 seeker-gore-32.png: seeker-gore-32-1.png seeker-gore-32-2.png seeker-gore-32-3.png seeker-gore-32-4.png seeker-gore-32-5.png seeker-gore-32-6.png seeker-gore-32-7.png seeker-gore-32-8.png convert +append $+ $@ generated_images += seeker-gore-32.png temporary_images += seeker-gore-32-1.png seeker-gore-32-2.png seeker-gore-32-3.png seeker-gore-32-4.png seeker-gore-32-5.png seeker-gore-32-6.png seeker-gore-32-7.png seeker-gore-32-8.png seeker-gore-24-1.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-1.png +w24 +h24 $< Declare=sval=1 seeker-gore-24-2.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-2.png +w24 +h24 $< Declare=sval=2 seeker-gore-24-3.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-3.png +w24 +h24 $< Declare=sval=3 seeker-gore-24-4.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-4.png +w24 +h24 $< Declare=sval=4 seeker-gore-24-5.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-5.png +w24 +h24 $< Declare=sval=5 seeker-gore-24-6.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-6.png +w24 +h24 $< Declare=sval=6 seeker-gore-24-7.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-7.png +w24 +h24 $< Declare=sval=7 seeker-gore-24-8.png: seeker-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-gore-24-8.png +w24 +h24 $< Declare=sval=8 seeker-gore-24.png: seeker-gore-24-1.png seeker-gore-24-2.png seeker-gore-24-3.png seeker-gore-24-4.png seeker-gore-24-5.png seeker-gore-24-6.png seeker-gore-24-7.png seeker-gore-24-8.png convert +append $+ $@ generated_images += seeker-gore-24.png temporary_images += seeker-gore-24-1.png seeker-gore-24-2.png seeker-gore-24-3.png seeker-gore-24-4.png seeker-gore-24-5.png seeker-gore-24-6.png seeker-gore-24-7.png seeker-gore-24-8.png egg-layer-monster-32-01.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf1 +ef1 +w32 +h32 $< egg-layer-monster-32-02.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf2 +ef2 +w32 +h32 $< egg-layer-monster-32-03.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf3 +ef3 +w32 +h32 $< egg-layer-monster-32-04.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf4 +ef4 +w32 +h32 $< egg-layer-monster-32-05.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf5 +ef5 +w32 +h32 $< egg-layer-monster-32-06.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf6 +ef6 +w32 +h32 $< egg-layer-monster-32-07.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf7 +ef7 +w32 +h32 $< egg-layer-monster-32-08.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf8 +ef8 +w32 +h32 $< egg-layer-monster-32-09.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf9 +ef9 +w32 +h32 $< egg-layer-monster-32-10.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf10 +ef10 +w32 +h32 $< egg-layer-monster-32-11.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf11 +ef11 +w32 +h32 $< egg-layer-monster-32-12.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf12 +ef12 +w32 +h32 $< egg-layer-monster-32-13.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf13 +ef13 +w32 +h32 $< egg-layer-monster-32-14.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf14 +ef14 +w32 +h32 $< egg-layer-monster-32-15.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf15 +ef15 +w32 +h32 $< egg-layer-monster-32-16.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf16 +ef16 +w32 +h32 $< egg-layer-monster-32-17.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf17 +ef17 +w32 +h32 $< egg-layer-monster-32-18.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf18 +ef18 +w32 +h32 $< egg-layer-monster-32-19.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf19 +ef19 +w32 +h32 $< egg-layer-monster-32-20.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf20 +ef20 +w32 +h32 $< egg-layer-monster-32-21.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf21 +ef21 +w32 +h32 $< egg-layer-monster-32-22.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf22 +ef22 +w32 +h32 $< egg-layer-monster-32-23.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf23 +ef23 +w32 +h32 $< egg-layer-monster-32-24.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf24 +ef24 +w32 +h32 $< egg-layer-monster-32-25.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf25 +ef25 +w32 +h32 $< egg-layer-monster-32-26.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf26 +ef26 +w32 +h32 $< egg-layer-monster-32-27.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf27 +ef27 +w32 +h32 $< egg-layer-monster-32-28.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf28 +ef28 +w32 +h32 $< egg-layer-monster-32-29.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf29 +ef29 +w32 +h32 $< egg-layer-monster-32-30.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf30 +ef30 +w32 +h32 $< egg-layer-monster-32-31.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf31 +ef31 +w32 +h32 $< egg-layer-monster-32-32.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf32 +ef32 +w32 +h32 $< egg-layer-monster-32-33.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf33 +ef33 +w32 +h32 $< egg-layer-monster-32-34.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf34 +ef34 +w32 +h32 $< egg-layer-monster-32-35.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf35 +ef35 +w32 +h32 $< egg-layer-monster-32-36.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf36 +ef36 +w32 +h32 $< egg-layer-monster-32-37.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf37 +ef37 +w32 +h32 $< egg-layer-monster-32-38.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf38 +ef38 +w32 +h32 $< egg-layer-monster-32-39.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf39 +ef39 +w32 +h32 $< egg-layer-monster-32-40.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf40 +ef40 +w32 +h32 $< egg-layer-monster-32-41.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf41 +ef41 +w32 +h32 $< egg-layer-monster-32-42.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf42 +ef42 +w32 +h32 $< egg-layer-monster-32-43.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf43 +ef43 +w32 +h32 $< egg-layer-monster-32-44.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf44 +ef44 +w32 +h32 $< egg-layer-monster-32-45.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf45 +ef45 +w32 +h32 $< egg-layer-monster-32-46.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf46 +ef46 +w32 +h32 $< egg-layer-monster-32-47.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf47 +ef47 +w32 +h32 $< egg-layer-monster-32-48.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-32-.png +kfi1 +kff48 +sf48 +ef48 +w32 +h32 $< egg-layer-monster-32.png: egg-layer-monster-32-01.png egg-layer-monster-32-02.png egg-layer-monster-32-03.png egg-layer-monster-32-04.png egg-layer-monster-32-05.png egg-layer-monster-32-06.png egg-layer-monster-32-07.png egg-layer-monster-32-08.png egg-layer-monster-32-09.png egg-layer-monster-32-10.png egg-layer-monster-32-11.png egg-layer-monster-32-12.png egg-layer-monster-32-13.png egg-layer-monster-32-14.png egg-layer-monster-32-15.png egg-layer-monster-32-16.png egg-layer-monster-32-17.png egg-layer-monster-32-18.png egg-layer-monster-32-19.png egg-layer-monster-32-20.png egg-layer-monster-32-21.png egg-layer-monster-32-22.png egg-layer-monster-32-23.png egg-layer-monster-32-24.png egg-layer-monster-32-25.png egg-layer-monster-32-26.png egg-layer-monster-32-27.png egg-layer-monster-32-28.png egg-layer-monster-32-29.png egg-layer-monster-32-30.png egg-layer-monster-32-31.png egg-layer-monster-32-32.png egg-layer-monster-32-33.png egg-layer-monster-32-34.png egg-layer-monster-32-35.png egg-layer-monster-32-36.png egg-layer-monster-32-37.png egg-layer-monster-32-38.png egg-layer-monster-32-39.png egg-layer-monster-32-40.png egg-layer-monster-32-41.png egg-layer-monster-32-42.png egg-layer-monster-32-43.png egg-layer-monster-32-44.png egg-layer-monster-32-45.png egg-layer-monster-32-46.png egg-layer-monster-32-47.png egg-layer-monster-32-48.png convert +append $+ $@ generated_images += egg-layer-monster-32.png temporary_images += egg-layer-monster-32-01.png egg-layer-monster-32-02.png egg-layer-monster-32-03.png egg-layer-monster-32-04.png egg-layer-monster-32-05.png egg-layer-monster-32-06.png egg-layer-monster-32-07.png egg-layer-monster-32-08.png egg-layer-monster-32-09.png egg-layer-monster-32-10.png egg-layer-monster-32-11.png egg-layer-monster-32-12.png egg-layer-monster-32-13.png egg-layer-monster-32-14.png egg-layer-monster-32-15.png egg-layer-monster-32-16.png egg-layer-monster-32-17.png egg-layer-monster-32-18.png egg-layer-monster-32-19.png egg-layer-monster-32-20.png egg-layer-monster-32-21.png egg-layer-monster-32-22.png egg-layer-monster-32-23.png egg-layer-monster-32-24.png egg-layer-monster-32-25.png egg-layer-monster-32-26.png egg-layer-monster-32-27.png egg-layer-monster-32-28.png egg-layer-monster-32-29.png egg-layer-monster-32-30.png egg-layer-monster-32-31.png egg-layer-monster-32-32.png egg-layer-monster-32-33.png egg-layer-monster-32-34.png egg-layer-monster-32-35.png egg-layer-monster-32-36.png egg-layer-monster-32-37.png egg-layer-monster-32-38.png egg-layer-monster-32-39.png egg-layer-monster-32-40.png egg-layer-monster-32-41.png egg-layer-monster-32-42.png egg-layer-monster-32-43.png egg-layer-monster-32-44.png egg-layer-monster-32-45.png egg-layer-monster-32-46.png egg-layer-monster-32-47.png egg-layer-monster-32-48.png egg-layer-monster-24-01.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf1 +ef1 +w24 +h24 $< egg-layer-monster-24-02.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf2 +ef2 +w24 +h24 $< egg-layer-monster-24-03.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf3 +ef3 +w24 +h24 $< egg-layer-monster-24-04.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf4 +ef4 +w24 +h24 $< egg-layer-monster-24-05.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf5 +ef5 +w24 +h24 $< egg-layer-monster-24-06.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf6 +ef6 +w24 +h24 $< egg-layer-monster-24-07.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf7 +ef7 +w24 +h24 $< egg-layer-monster-24-08.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf8 +ef8 +w24 +h24 $< egg-layer-monster-24-09.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf9 +ef9 +w24 +h24 $< egg-layer-monster-24-10.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf10 +ef10 +w24 +h24 $< egg-layer-monster-24-11.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf11 +ef11 +w24 +h24 $< egg-layer-monster-24-12.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf12 +ef12 +w24 +h24 $< egg-layer-monster-24-13.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf13 +ef13 +w24 +h24 $< egg-layer-monster-24-14.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf14 +ef14 +w24 +h24 $< egg-layer-monster-24-15.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf15 +ef15 +w24 +h24 $< egg-layer-monster-24-16.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf16 +ef16 +w24 +h24 $< egg-layer-monster-24-17.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf17 +ef17 +w24 +h24 $< egg-layer-monster-24-18.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf18 +ef18 +w24 +h24 $< egg-layer-monster-24-19.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf19 +ef19 +w24 +h24 $< egg-layer-monster-24-20.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf20 +ef20 +w24 +h24 $< egg-layer-monster-24-21.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf21 +ef21 +w24 +h24 $< egg-layer-monster-24-22.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf22 +ef22 +w24 +h24 $< egg-layer-monster-24-23.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf23 +ef23 +w24 +h24 $< egg-layer-monster-24-24.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf24 +ef24 +w24 +h24 $< egg-layer-monster-24-25.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf25 +ef25 +w24 +h24 $< egg-layer-monster-24-26.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf26 +ef26 +w24 +h24 $< egg-layer-monster-24-27.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf27 +ef27 +w24 +h24 $< egg-layer-monster-24-28.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf28 +ef28 +w24 +h24 $< egg-layer-monster-24-29.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf29 +ef29 +w24 +h24 $< egg-layer-monster-24-30.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf30 +ef30 +w24 +h24 $< egg-layer-monster-24-31.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf31 +ef31 +w24 +h24 $< egg-layer-monster-24-32.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf32 +ef32 +w24 +h24 $< egg-layer-monster-24-33.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf33 +ef33 +w24 +h24 $< egg-layer-monster-24-34.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf34 +ef34 +w24 +h24 $< egg-layer-monster-24-35.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf35 +ef35 +w24 +h24 $< egg-layer-monster-24-36.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf36 +ef36 +w24 +h24 $< egg-layer-monster-24-37.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf37 +ef37 +w24 +h24 $< egg-layer-monster-24-38.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf38 +ef38 +w24 +h24 $< egg-layer-monster-24-39.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf39 +ef39 +w24 +h24 $< egg-layer-monster-24-40.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf40 +ef40 +w24 +h24 $< egg-layer-monster-24-41.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf41 +ef41 +w24 +h24 $< egg-layer-monster-24-42.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf42 +ef42 +w24 +h24 $< egg-layer-monster-24-43.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf43 +ef43 +w24 +h24 $< egg-layer-monster-24-44.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf44 +ef44 +w24 +h24 $< egg-layer-monster-24-45.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf45 +ef45 +w24 +h24 $< egg-layer-monster-24-46.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf46 +ef46 +w24 +h24 $< egg-layer-monster-24-47.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf47 +ef47 +w24 +h24 $< egg-layer-monster-24-48.png: egg-layer-monster.pov monster-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-monster-24-.png +kfi1 +kff48 +sf48 +ef48 +w24 +h24 $< egg-layer-monster-24.png: egg-layer-monster-24-01.png egg-layer-monster-24-02.png egg-layer-monster-24-03.png egg-layer-monster-24-04.png egg-layer-monster-24-05.png egg-layer-monster-24-06.png egg-layer-monster-24-07.png egg-layer-monster-24-08.png egg-layer-monster-24-09.png egg-layer-monster-24-10.png egg-layer-monster-24-11.png egg-layer-monster-24-12.png egg-layer-monster-24-13.png egg-layer-monster-24-14.png egg-layer-monster-24-15.png egg-layer-monster-24-16.png egg-layer-monster-24-17.png egg-layer-monster-24-18.png egg-layer-monster-24-19.png egg-layer-monster-24-20.png egg-layer-monster-24-21.png egg-layer-monster-24-22.png egg-layer-monster-24-23.png egg-layer-monster-24-24.png egg-layer-monster-24-25.png egg-layer-monster-24-26.png egg-layer-monster-24-27.png egg-layer-monster-24-28.png egg-layer-monster-24-29.png egg-layer-monster-24-30.png egg-layer-monster-24-31.png egg-layer-monster-24-32.png egg-layer-monster-24-33.png egg-layer-monster-24-34.png egg-layer-monster-24-35.png egg-layer-monster-24-36.png egg-layer-monster-24-37.png egg-layer-monster-24-38.png egg-layer-monster-24-39.png egg-layer-monster-24-40.png egg-layer-monster-24-41.png egg-layer-monster-24-42.png egg-layer-monster-24-43.png egg-layer-monster-24-44.png egg-layer-monster-24-45.png egg-layer-monster-24-46.png egg-layer-monster-24-47.png egg-layer-monster-24-48.png convert +append $+ $@ generated_images += egg-layer-monster-24.png temporary_images += egg-layer-monster-24-01.png egg-layer-monster-24-02.png egg-layer-monster-24-03.png egg-layer-monster-24-04.png egg-layer-monster-24-05.png egg-layer-monster-24-06.png egg-layer-monster-24-07.png egg-layer-monster-24-08.png egg-layer-monster-24-09.png egg-layer-monster-24-10.png egg-layer-monster-24-11.png egg-layer-monster-24-12.png egg-layer-monster-24-13.png egg-layer-monster-24-14.png egg-layer-monster-24-15.png egg-layer-monster-24-16.png egg-layer-monster-24-17.png egg-layer-monster-24-18.png egg-layer-monster-24-19.png egg-layer-monster-24-20.png egg-layer-monster-24-21.png egg-layer-monster-24-22.png egg-layer-monster-24-23.png egg-layer-monster-24-24.png egg-layer-monster-24-25.png egg-layer-monster-24-26.png egg-layer-monster-24-27.png egg-layer-monster-24-28.png egg-layer-monster-24-29.png egg-layer-monster-24-30.png egg-layer-monster-24-31.png egg-layer-monster-24-32.png egg-layer-monster-24-33.png egg-layer-monster-24-34.png egg-layer-monster-24-35.png egg-layer-monster-24-36.png egg-layer-monster-24-37.png egg-layer-monster-24-38.png egg-layer-monster-24-39.png egg-layer-monster-24-40.png egg-layer-monster-24-41.png egg-layer-monster-24-42.png egg-layer-monster-24-43.png egg-layer-monster-24-44.png egg-layer-monster-24-45.png egg-layer-monster-24-46.png egg-layer-monster-24-47.png egg-layer-monster-24-48.png egg-layer-gore-32-1.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-1.png +w32 +h32 $< Declare=sval=1 egg-layer-gore-32-2.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-2.png +w32 +h32 $< Declare=sval=2 egg-layer-gore-32-3.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-3.png +w32 +h32 $< Declare=sval=3 egg-layer-gore-32-4.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-4.png +w32 +h32 $< Declare=sval=4 egg-layer-gore-32-5.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-5.png +w32 +h32 $< Declare=sval=5 egg-layer-gore-32-6.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-6.png +w32 +h32 $< Declare=sval=6 egg-layer-gore-32-7.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-7.png +w32 +h32 $< Declare=sval=7 egg-layer-gore-32-8.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-32-8.png +w32 +h32 $< Declare=sval=8 egg-layer-gore-32.png: egg-layer-gore-32-1.png egg-layer-gore-32-2.png egg-layer-gore-32-3.png egg-layer-gore-32-4.png egg-layer-gore-32-5.png egg-layer-gore-32-6.png egg-layer-gore-32-7.png egg-layer-gore-32-8.png convert +append $+ $@ generated_images += egg-layer-gore-32.png temporary_images += egg-layer-gore-32-1.png egg-layer-gore-32-2.png egg-layer-gore-32-3.png egg-layer-gore-32-4.png egg-layer-gore-32-5.png egg-layer-gore-32-6.png egg-layer-gore-32-7.png egg-layer-gore-32-8.png egg-layer-gore-24-1.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-1.png +w24 +h24 $< Declare=sval=1 egg-layer-gore-24-2.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-2.png +w24 +h24 $< Declare=sval=2 egg-layer-gore-24-3.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-3.png +w24 +h24 $< Declare=sval=3 egg-layer-gore-24-4.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-4.png +w24 +h24 $< Declare=sval=4 egg-layer-gore-24-5.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-5.png +w24 +h24 $< Declare=sval=5 egg-layer-gore-24-6.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-6.png +w24 +h24 $< Declare=sval=6 egg-layer-gore-24-7.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-7.png +w24 +h24 $< Declare=sval=7 egg-layer-gore-24-8.png: egg-layer-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-gore-24-8.png +w24 +h24 $< Declare=sval=8 egg-layer-gore-24.png: egg-layer-gore-24-1.png egg-layer-gore-24-2.png egg-layer-gore-24-3.png egg-layer-gore-24-4.png egg-layer-gore-24-5.png egg-layer-gore-24-6.png egg-layer-gore-24-7.png egg-layer-gore-24-8.png convert +append $+ $@ generated_images += egg-layer-gore-24.png temporary_images += egg-layer-gore-24-1.png egg-layer-gore-24-2.png egg-layer-gore-24-3.png egg-layer-gore-24-4.png egg-layer-gore-24-5.png egg-layer-gore-24-6.png egg-layer-gore-24-7.png egg-layer-gore-24-8.png # egg rules plain-egg-32-1.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-32-.png +kfi1 +kff4 +sf1 +ef1 +w32 +h32 $< Declare=sval=1 plain-egg-32-2.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-32-.png +kfi1 +kff4 +sf2 +ef2 +w32 +h32 $< Declare=sval=1 plain-egg-32-3.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-32-.png +kfi1 +kff4 +sf3 +ef3 +w32 +h32 $< Declare=sval=1 plain-egg-32-4.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-32-.png +kfi1 +kff4 +sf4 +ef4 +w32 +h32 $< Declare=sval=1 plain-egg-32.png: plain-egg-32-1.png plain-egg-32-2.png plain-egg-32-3.png plain-egg-32-4.png convert +append $+ $@ generated_images += plain-egg-32.png temporary_images += plain-egg-32-1.png plain-egg-32-2.png plain-egg-32-3.png plain-egg-32-4.png plain-egg-24-1.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-24-.png +kfi1 +kff4 +sf1 +ef1 +w24 +h24 $< Declare=sval=1 plain-egg-24-2.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-24-.png +kfi1 +kff4 +sf2 +ef2 +w24 +h24 $< Declare=sval=1 plain-egg-24-3.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-24-.png +kfi1 +kff4 +sf3 +ef3 +w24 +h24 $< Declare=sval=1 plain-egg-24-4.png: plain-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oplain-egg-24-.png +kfi1 +kff4 +sf4 +ef4 +w24 +h24 $< Declare=sval=1 plain-egg-24.png: plain-egg-24-1.png plain-egg-24-2.png plain-egg-24-3.png plain-egg-24-4.png convert +append $+ $@ generated_images += plain-egg-24.png temporary_images += plain-egg-24-1.png plain-egg-24-2.png plain-egg-24-3.png plain-egg-24-4.png hard-egg-32-1.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-32-.png +kfi1 +kff4 +sf1 +ef1 +w32 +h32 $< Declare=sval=2 hard-egg-32-2.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-32-.png +kfi1 +kff4 +sf2 +ef2 +w32 +h32 $< Declare=sval=2 hard-egg-32-3.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-32-.png +kfi1 +kff4 +sf3 +ef3 +w32 +h32 $< Declare=sval=2 hard-egg-32-4.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-32-.png +kfi1 +kff4 +sf4 +ef4 +w32 +h32 $< Declare=sval=2 hard-egg-32.png: hard-egg-32-1.png hard-egg-32-2.png hard-egg-32-3.png hard-egg-32-4.png convert +append $+ $@ generated_images += hard-egg-32.png temporary_images += hard-egg-32-1.png hard-egg-32-2.png hard-egg-32-3.png hard-egg-32-4.png hard-egg-24-1.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-24-.png +kfi1 +kff4 +sf1 +ef1 +w24 +h24 $< Declare=sval=2 hard-egg-24-2.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-24-.png +kfi1 +kff4 +sf2 +ef2 +w24 +h24 $< Declare=sval=2 hard-egg-24-3.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-24-.png +kfi1 +kff4 +sf3 +ef3 +w24 +h24 $< Declare=sval=2 hard-egg-24-4.png: hard-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +ohard-egg-24-.png +kfi1 +kff4 +sf4 +ef4 +w24 +h24 $< Declare=sval=2 hard-egg-24.png: hard-egg-24-1.png hard-egg-24-2.png hard-egg-24-3.png hard-egg-24-4.png convert +append $+ $@ generated_images += hard-egg-24.png temporary_images += hard-egg-24-1.png hard-egg-24-2.png hard-egg-24-3.png hard-egg-24-4.png seeker-egg-32-1.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-32-.png +kfi1 +kff4 +sf1 +ef1 +w32 +h32 $< Declare=sval=3 seeker-egg-32-2.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-32-.png +kfi1 +kff4 +sf2 +ef2 +w32 +h32 $< Declare=sval=3 seeker-egg-32-3.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-32-.png +kfi1 +kff4 +sf3 +ef3 +w32 +h32 $< Declare=sval=3 seeker-egg-32-4.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-32-.png +kfi1 +kff4 +sf4 +ef4 +w32 +h32 $< Declare=sval=3 seeker-egg-32.png: seeker-egg-32-1.png seeker-egg-32-2.png seeker-egg-32-3.png seeker-egg-32-4.png convert +append $+ $@ generated_images += seeker-egg-32.png temporary_images += seeker-egg-32-1.png seeker-egg-32-2.png seeker-egg-32-3.png seeker-egg-32-4.png seeker-egg-24-1.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-24-.png +kfi1 +kff4 +sf1 +ef1 +w24 +h24 $< Declare=sval=3 seeker-egg-24-2.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-24-.png +kfi1 +kff4 +sf2 +ef2 +w24 +h24 $< Declare=sval=3 seeker-egg-24-3.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-24-.png +kfi1 +kff4 +sf3 +ef3 +w24 +h24 $< Declare=sval=3 seeker-egg-24-4.png: seeker-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oseeker-egg-24-.png +kfi1 +kff4 +sf4 +ef4 +w24 +h24 $< Declare=sval=3 seeker-egg-24.png: seeker-egg-24-1.png seeker-egg-24-2.png seeker-egg-24-3.png seeker-egg-24-4.png convert +append $+ $@ generated_images += seeker-egg-24.png temporary_images += seeker-egg-24-1.png seeker-egg-24-2.png seeker-egg-24-3.png seeker-egg-24-4.png egg-layer-egg-32-1.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-32-.png +kfi1 +kff4 +sf1 +ef1 +w32 +h32 $< Declare=sval=4 egg-layer-egg-32-2.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-32-.png +kfi1 +kff4 +sf2 +ef2 +w32 +h32 $< Declare=sval=4 egg-layer-egg-32-3.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-32-.png +kfi1 +kff4 +sf3 +ef3 +w32 +h32 $< Declare=sval=4 egg-layer-egg-32-4.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-32-.png +kfi1 +kff4 +sf4 +ef4 +w32 +h32 $< Declare=sval=4 egg-layer-egg-32.png: egg-layer-egg-32-1.png egg-layer-egg-32-2.png egg-layer-egg-32-3.png egg-layer-egg-32-4.png convert +append $+ $@ generated_images += egg-layer-egg-32.png temporary_images += egg-layer-egg-32-1.png egg-layer-egg-32-2.png egg-layer-egg-32-3.png egg-layer-egg-32-4.png egg-layer-egg-24-1.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-24-.png +kfi1 +kff4 +sf1 +ef1 +w24 +h24 $< Declare=sval=4 egg-layer-egg-24-2.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-24-.png +kfi1 +kff4 +sf2 +ef2 +w24 +h24 $< Declare=sval=4 egg-layer-egg-24-3.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-24-.png +kfi1 +kff4 +sf3 +ef3 +w24 +h24 $< Declare=sval=4 egg-layer-egg-24-4.png: egg-layer-egg.pov egg.inc settings.inc $(POVRAY) $(POVFLAGS) +oegg-layer-egg-24-.png +kfi1 +kff4 +sf4 +ef4 +w24 +h24 $< Declare=sval=4 egg-layer-egg-24.png: egg-layer-egg-24-1.png egg-layer-egg-24-2.png egg-layer-egg-24-3.png egg-layer-egg-24-4.png convert +append $+ $@ generated_images += egg-layer-egg-24.png temporary_images += egg-layer-egg-24-1.png egg-layer-egg-24-2.png egg-layer-egg-24-3.png egg-layer-egg-24-4.png # hero hero-right-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=0 generated_images += hero-right-32.png hero-right-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=0 generated_images += hero-right-24.png hero-right-down-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=45 generated_images += hero-right-down-32.png hero-right-down-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=45 generated_images += hero-right-down-24.png hero-down-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=90 generated_images += hero-down-32.png hero-down-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=90 generated_images += hero-down-24.png hero-left-down-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=135 generated_images += hero-left-down-32.png hero-left-down-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=135 generated_images += hero-left-down-24.png hero-left-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=180 generated_images += hero-left-32.png hero-left-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=180 generated_images += hero-left-24.png hero-left-up-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=225 generated_images += hero-left-up-32.png hero-left-up-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=225 generated_images += hero-left-up-24.png hero-up-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=270 generated_images += hero-up-32.png hero-up-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=270 generated_images += hero-up-24.png hero-right-up-32.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=315 generated_images += hero-right-up-32.png hero-right-up-24.png: hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=315 generated_images += hero-right-up-24.png invisible-hero-right-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=0 generated_images += invisible-hero-right-32.png invisible-hero-right-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=0 generated_images += invisible-hero-right-24.png invisible-hero-right-down-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=45 generated_images += invisible-hero-right-down-32.png invisible-hero-right-down-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=45 generated_images += invisible-hero-right-down-24.png invisible-hero-down-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=90 generated_images += invisible-hero-down-32.png invisible-hero-down-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=90 generated_images += invisible-hero-down-24.png invisible-hero-left-down-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=135 generated_images += invisible-hero-left-down-32.png invisible-hero-left-down-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=135 generated_images += invisible-hero-left-down-24.png invisible-hero-left-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=180 generated_images += invisible-hero-left-32.png invisible-hero-left-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=180 generated_images += invisible-hero-left-24.png invisible-hero-left-up-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=225 generated_images += invisible-hero-left-up-32.png invisible-hero-left-up-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=225 generated_images += invisible-hero-left-up-24.png invisible-hero-up-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=270 generated_images += invisible-hero-up-32.png invisible-hero-up-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=270 generated_images += invisible-hero-up-24.png invisible-hero-right-up-32.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< Declare=hero_angle=315 generated_images += invisible-hero-right-up-32.png invisible-hero-right-up-24.png: invisible-hero.pov hero.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< Declare=hero_angle=315 generated_images += invisible-hero-right-up-24.png hero-gore-32-1.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-1.png +w32 +h32 $< Declare=sval=1 hero-gore-32-2.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-2.png +w32 +h32 $< Declare=sval=2 hero-gore-32-3.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-3.png +w32 +h32 $< Declare=sval=3 hero-gore-32-4.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-4.png +w32 +h32 $< Declare=sval=4 hero-gore-32-5.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-5.png +w32 +h32 $< Declare=sval=5 hero-gore-32-6.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-6.png +w32 +h32 $< Declare=sval=6 hero-gore-32-7.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-7.png +w32 +h32 $< Declare=sval=7 hero-gore-32-8.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-32-8.png +w32 +h32 $< Declare=sval=8 hero-gore-32.png: hero-gore-32-1.png hero-gore-32-2.png hero-gore-32-3.png hero-gore-32-4.png hero-gore-32-5.png hero-gore-32-6.png hero-gore-32-7.png hero-gore-32-8.png convert +append $+ $@ generated_images += hero-gore-32.png temporary_images += hero-gore-32-1.png hero-gore-32-2.png hero-gore-32-3.png hero-gore-32-4.png hero-gore-32-5.png hero-gore-32-6.png hero-gore-32-7.png hero-gore-32-8.png hero-gore-24-1.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-1.png +w24 +h24 $< Declare=sval=1 hero-gore-24-2.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-2.png +w24 +h24 $< Declare=sval=2 hero-gore-24-3.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-3.png +w24 +h24 $< Declare=sval=3 hero-gore-24-4.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-4.png +w24 +h24 $< Declare=sval=4 hero-gore-24-5.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-5.png +w24 +h24 $< Declare=sval=5 hero-gore-24-6.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-6.png +w24 +h24 $< Declare=sval=6 hero-gore-24-7.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-7.png +w24 +h24 $< Declare=sval=7 hero-gore-24-8.png: hero-gore.pov gore-blob.inc settings.inc $(POVRAY) $(POVFLAGS) +ohero-gore-24-8.png +w24 +h24 $< Declare=sval=8 hero-gore-24.png: hero-gore-24-1.png hero-gore-24-2.png hero-gore-24-3.png hero-gore-24-4.png hero-gore-24-5.png hero-gore-24-6.png hero-gore-24-7.png hero-gore-24-8.png convert +append $+ $@ generated_images += hero-gore-24.png temporary_images += hero-gore-24-1.png hero-gore-24-2.png hero-gore-24-3.png hero-gore-24-4.png hero-gore-24-5.png hero-gore-24-6.png hero-gore-24-7.png hero-gore-24-8.png # misc block-32.png: block.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< generated_images += block-32.png block-24.png: block.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< generated_images += block-24.png wall-32.png: wall.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< generated_images += wall-32.png wall-24.png: wall.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< generated_images += wall-24.png monster-wall-32.png: monster-wall.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< generated_images += monster-wall-32.png monster-wall-24.png: monster-wall.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< generated_images += monster-wall-24.png freeze-box-32.png: freeze-box.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< generated_images += freeze-box-32.png freeze-box-24.png: freeze-box.pov settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< generated_images += freeze-box-24.png power-up-invisibility-32.png: power-up-invisibility.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< generated_images += power-up-invisibility-32.png power-up-invisibility-24.png: power-up-invisibility.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< generated_images += power-up-invisibility-24.png power-up-freeze-32.png: power-up-freeze.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< generated_images += power-up-freeze-32.png power-up-freeze-24.png: power-up-freeze.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< generated_images += power-up-freeze-24.png power-up-explode-32.png: power-up-explode.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w32 +h32 $< generated_images += power-up-explode-32.png power-up-explode-24.png: power-up-explode.pov power-up.inc settings.inc $(POVRAY) $(POVFLAGS) +o$@ +w24 +h24 $< generated_images += power-up-explode-24.png levitation-32-1.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-1.png +w32 +h32 $< Declare=sval=1 levitation-32-2.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-2.png +w32 +h32 $< Declare=sval=2 levitation-32-3.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-3.png +w32 +h32 $< Declare=sval=3 levitation-32-4.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-4.png +w32 +h32 $< Declare=sval=4 levitation-32-5.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-5.png +w32 +h32 $< Declare=sval=5 levitation-32-6.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-6.png +w32 +h32 $< Declare=sval=6 levitation-32-7.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-7.png +w32 +h32 $< Declare=sval=7 levitation-32-8.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-32-8.png +w32 +h32 $< Declare=sval=8 levitation-32.png: levitation-32-1.png levitation-32-2.png levitation-32-3.png levitation-32-4.png levitation-32-5.png levitation-32-6.png levitation-32-7.png levitation-32-8.png convert +append $+ $@ generated_images += levitation-32.png temporary_images += levitation-32-1.png levitation-32-2.png levitation-32-3.png levitation-32-4.png levitation-32-5.png levitation-32-6.png levitation-32-7.png levitation-32-8.png levitation-24-1.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-1.png +w24 +h24 $< Declare=sval=1 levitation-24-2.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-2.png +w24 +h24 $< Declare=sval=2 levitation-24-3.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-3.png +w24 +h24 $< Declare=sval=3 levitation-24-4.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-4.png +w24 +h24 $< Declare=sval=4 levitation-24-5.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-5.png +w24 +h24 $< Declare=sval=5 levitation-24-6.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-6.png +w24 +h24 $< Declare=sval=6 levitation-24-7.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-7.png +w24 +h24 $< Declare=sval=7 levitation-24-8.png: levitation.pov settings.inc $(POVRAY) $(POVFLAGS) +olevitation-24-8.png +w24 +h24 $< Declare=sval=8 levitation-24.png: levitation-24-1.png levitation-24-2.png levitation-24-3.png levitation-24-4.png levitation-24-5.png levitation-24-6.png levitation-24-7.png levitation-24-8.png convert +append $+ $@ generated_images += levitation-24.png temporary_images += levitation-24-1.png levitation-24-2.png levitation-24-3.png levitation-24-4.png levitation-24-5.png levitation-24-6.png levitation-24-7.png levitation-24-8.png monster-masher-1.8.1/pixmaps/splash.jpg0000644000175000017500000034057710547745535015122 00000000000000JFIFHHC    $.' ",#(7),01444'9=82<.342C  2!!22222222222222222222222222222222222222222222222222"B !1AQ"aq2#BRb3r$CS%D/!1AQ"2aq#B3R ?eJ(RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RJ RTRTRTRTRTRTRTRTRTRTRTRTRTRTS RjwRSp@0s혘MRe1Ԫ>5'Au*; RfRRRRRRRRRRRRRRRRTA*TA*TA*TA*TA*TA*TA*TA*TA*TA*UԠu(*]UWRTA*TA*P]UJJJURA*TA*TA&JJ U"`z]J@樷aYV-3[қR˺ &Zu~Tت~n?]&HW773#洺Pkāɩ?tiB$foZ&WZFnՉcIWJͥm#L -:[BwH<9qYv0Gtnwwgbѵ7ydǪx=l?" H2kKy4{E Dn#'Z{֙ F&qp` sV4vX0FECLH sQmS>! D]"2 33a/211YmC;@pM;:YB/V7Le#!OIQ5iԬH~6LzIHsFr96w4#9ȡB(_ZI6~,hkl3P>:F̥U0h2yZDu;D?sJO칢ۻu=A9#M k )3ҖQ";Ն #@C"Hv4DCzD񡵽 +y򮝋fg$=?zn.lTnO4mm졠#Mˉ$D?!MNVƀ@aYk~ qWfɹLH F Zݕ.ːhCH1ҞFbsRGqN=HIs8²t!SfHԢW85vYDn h)#S6%J= `M6.gtr \#"D jn.P`x#*PJ*PJ*PJ*PJ*PJ*PJ*PJ*PJ*PJ*PJ*PJ*P]UJRTA*TA*TA*TA*TA*T$MITDTLh5R'ɏ)u+!,L{n`V5;SbwtEdtvbOZmt "fjޜ]s8TBwHgm4$ $ S舀\EVeVA4usJDo|UwA"70R 3K;64٢+iLQFeɈvش-qx Zݴ@ T4J)"p}Ό A$ ja r'٢˦ <hͥncQ\ĥ/r{;ViԆ+7.`GP"r?júdݽ2#xUJ?B_67󥷐׶! OZ1)wAGa+#QpC09gnHBH_IYbH#Rwno2nKw+i^b)fض ۿa]B>**+Ƞ*WIEsF !Nc#cP!S@ۖR;y@L HA9ҶCh3αsqK&-#t'5m.1Ek>wDa ۗK11Li n j hl=t y)5SopPvAqPʀYk}aǠewGjٷj닃I<8S("OZ Ga4%+K-iBQ06ɫiy{Vu'HpO?XU+֞I 1&kwF&@XKedG#Wp =#Zێz/ @ {dT)Tm 1*&(˥bJg``@I֠s HppZO14$}*5[}XSݪ45[֫q $.悷VXqV#=ɪ#Gz;铴`bUnjCIHlJ!ՕiԪ8Ăjᄂ=Q8?J;غ[9z RETRJ RJ $ :-? aذ.J7kIk@8/X O1m4X7ʤQPKTc1DL@;M`Xu  H$Vӆt.;v\0h U5$ ex$掺EOX\IF:A?zL'ntgp$n*Xբ$sP$SΘ.ן2&GJ\ق@Hain-#vd N&:qHv#4ŘsYpGJp#47p^*J{{63OZM J_]-`ؖb:VoXpMTpo,cEz{%Fw.GKAĬMEl@VZ0fqZU 4c9=V8K$  ܲr0jm}ѓQGv`L[7U‰ (F>0HRIR'Zql8"" PZfrLʉ4 ȶĐXH↌OS>ؿ;)80O?GM[XmA3I9H<"bxFޡT 2 |+W EpH`pO4X #8' ϴ( ƚ6mZc!)sOwYdDK 5tlҝ&vqmpy?*Zƨy],$g^bNdg5n|Ė鎴+$;* `.B"3]Olkd=)z'en.@t n1f# ۝>>5%iO%<[-V1SmAַksqE[bW<^\eTU@1V"GR|iMv-[^Vh?4<\ 8D"'VbXBi*wn?:XannpAQkR-8!(!fٌx5!@Ni-7 iE;G}'kMlRJj eWoD<{Ta{pDOZ- ׷;yF6r;Un+\Us +X'x+'=Mt=R0#sbtUr(8n:V[$">_|/j5;Byq>:UYfD/nsU^wlY[jKgs5wKOsMmTC(H5M@aQF[,GU泥qIwta;IHI3;s~f[6Q#6Q.[*3*0 5M$'g5RII8=IIS&t b9Cn3x1S}& &AZ eXEȞNߕEV#U٢ew|B" Snn\p@"f鶛@*Qŀq IT ":]ԢS&&jy IMTA$b&kDRJVUWNHoRLRAB: Ib~*fDqA"ލ840p6ҁwТ0OwmXI5ͳa5ZՕ,"UAZlk5vfKTm X:elc<8n]!4ecۻ dA92D:Phv@1W451'=j}zWVi Kܵہ+DM1ի>֨q$~}k& s h)vDQ)E@yVw6 5ۏ>QN PR}\1Oֈb̊> 鋛W Y,@5{˩MQ]OzݴRw"3+YYH殉: htŴ+c$4Cu3_67k馗`q@`^3 pidON. biŶ-ek$zzAo70+,z֞k;u6+"L}"ʈgGG*㡚֯) %Kވ7}Fe1& YQeլܙ= 3ᳳc9ih3l-&SMl)ڙ 7?zH:nZܣU]$$~.DB`=`A & `+V<" ި%d@*@3,\X39֭UL,15\0$ވzWvNLjl;xspgS%'h*ش@S0M*X`jQv `hqX=W:4mWeft.2X0Er @5z;iv> Lh,$c5:`wqLarXj6HPOV./RVqT\`ƧRy |@fM.Z8RYg\nХ>D-cRVnw֬-;Ѣ!}b9XNV,V 6IbQ1Y-@g;նT,"`Nܓk&moqOxЍB8FȐIi@ϼV/B =tZz{Ptz@*Ic2VΊiܳfCw>R߄A^`fMl־W7n$2/0+9hvRs&XuQuGJ@2k?˝1~"]ՆUee@8qTd89&sPJA +B'VCT<VI4PLvZ׵QA*TTJ5U/W5 $F  $kqkb,F"\6}P2ܐA Bܒ؃5[ZxǵTtDBHȡ z(ڜݕBP0a{nv[pdug4 DWQFlSIfBHܐd$UhȚBUx EysX2ZChW sX$HY5d |QI%z5 {' B1ȪDk^GdmJʨٶA=DK*%AY^ր*{y͒{*rA?8";iˑn"QNM)<`Fa A95@a>np_`ִJnV$gӟ.3=(  3PՈ;Nd`w޶hV?QP.嶏N:S"P1ǵ*La1"ti$ hv(WyjĈb>54 H8#oXn2&ĎSKnbf6T6 kv\{UW;5)f")E+l@3]] )mh~?ad-7ܸ@Ǥ tJ ?/u$=,87g04mFR 9Szs[^-;GfFLukvkڷ Lx]"+36T#]]1$[l+/OcjؒnAH.mdfi&%g"f 㯵U'zP !qR ?NF 3Ւ7sZ.!R #ƼF]+'s5Y#NiMF%Whx42"zҴD@딚6+0慬tkqvot*Y,ܸmPc4ߢ|HB#~l]Tު:’"bM4٧NƧly&i J[jN'P۟B@O6}#޺ rTF9!@kB4p?jJ3G ʸ#ѐLiLD3XvKm#Тd1^JZt>M^312Y]8$o-u/32XQtw]D'߲Z<2m,zD4M=wOjQ,oߵF3QS|^VÀ=`bE WTqzçmuc0~J9!@zihTOR̆A4+(a$ ɮfR I74Jbi>ٺaՐMlGQ>5vm^= 84`!'ߜּ38B['ZFkwS6Ӄs /('M }V[JT[a)(\G_zp(hN(G PjA?cZuc'jSCN>M4D}.G+E{mun͝h.( qҞ };\MA^,@b쮡seV>w5ku6{FonGY6u[}mi GLWVP ]qnQg$OET0Fr9+qV&oqNV0I4K~)u1Ykq),0dnbTI8G+[2(뭴PAMi@N _Ӫ'ۥ0L&~bɐ {TӋE?~/kLuHNw5ֻcQ$c3_N8?Go,Dٙ6Ey@W80+j< 31 @VAI{+z$fz6H8"ܠw]i=3KTdF#F˰(. ٣\ngOMs# ӴX 5D` R<kAX9`Dt[Hv&`)'3e-Íh88]V1@V20j66#"(G'puFp "iY2$A8 H`sEwUyHLPjͷQGZ֮ W/1>@>d{Z[Qy0G@@":UąSrH#z`G*kL(@瞟 QGZgYh۵oi~fI~ )yC>\s5<9QxV TT C:QC @(1h @[1++pH ۻZ4Ҙ}TMaan +{j$6TmaIGz#\+I3af4D+=U"{f=%Yɂds[{zM.o!s#ڛ[$3ЭjY:9ҴlVq Fij.&ҰfJ+J4Tȓ5kz\14pɆGTnpɎdb=-&m͝D1YRXu,+v˶  amJOV*ׁH#9^5T1䟿μ^Ȭ۠)tqK\պ_goؘ|q_'1)'v将+,z#۽pˬI3XYGcMDme~^mضH,ަ88" 8(ϩvT8K:kSAG%bdA:v@ iw (Czm<~UiB'=e//]tԹ,!ATҭXg`: .<™%?sWw W*!]wyv*`l3|NXG u EJ3ݴm<Tq5hLc*1M6S/v[Ǎdu x( @c5Wo=s[aBɮ,,pj9onOZZ7o Jy[Mv ިiO2:U̵$*@7/]c WΘk@=Ghx<knZ*^$+1P~rj_1L4=E.$O#ڂTB:f *@wEzU3su8~4ŽvD2:[•?cHm84ܧqVn()V+#1ЍXn~!tf0??*NI>|E[dd}k^Z#5Fk4z u? wmjJYRmgs]%h@* .&&kZuPH'S1Pv>`U^u,+B&LH} izRFr1B] Iڨ[ݒgnZ` vt5WTR%]V۰GYArʼnyzwdn9CC0ڭMU<ŕ c$q]/d6TsagW IͻM$?J.o?).iXt`Vr&$Mzqc bb‚p|xO/*xȀ3D Vʶ - _rJb9"3ּ>/:DOsQ-iǨ8 _BÏVc?j 3gt_sAkoR ]Qqq.݅n:ʖv82m $}^34 ݠ+ߏT_Lb'ڍzKb0O4AQ1[ $Nj*Ȓ 3a2I3&@&1kLTiHzZ_Zy!IA{y"LУ` 6oh*h94DOhܴ.AR{|e L I ,0q%`O5,>`EwPx~pnL⡾m`ƹݛ4*0V`q 1囃&EˀD砪(Ž35PATP``f-3D=@0\bbm q*FXtkl [eFpEeՌ̑gL\2WF[2$3. yHr%HȈ[COxUxcx/n ch(Ri~ @1Z-]ZvVǤlkˇnG14YYdy6#xYi4H 94lB( sMim%ϪWQ'WKF-ܶGZcwմCPr:t怛H'fv{H8?4uR[6LZC[xZ!LyvBUr0@ȟ@T@8߽1gGmlt&$*o`*NdF(6iD*mt*XLN L;~JuЖ>bͣp)8=>4m/,Enda@Rr;~fv1Ęi=ia'T`f`3U@FvIϥe؃86XiVf2&GfC,$IB$r&S5Wtw3ɟjy.nܿҲیu>u6.@֬ifh7A4kJU\4(޺?k.!Kd$#eAt,gSGXS)l҈4#+H`ͻoMԱ\G҆]ij$Z2ڻJHlt-RHi+[fڮxBeenIq9?3/GJ` 0+jܶ@zLU! O\c4Cz*tvէ)oj h2rO3ץx2*hi^/鞧?:є 'rb~=jɶAOߵz]Ch:(;P7 ~yZ׋''rzHA{Kꝸz㹮,ʟa@Rc>,ֶD)nGq*E- 0Xq+dZe[s>[Iف!ڇtH6ĜI&! Ա ~ :Q{/;RwQcX`%y U`L+mQNJ'v9ڶ?tTu~VdJrʞ R }j6*8P!yfI < n*.8SZbήJ2Lc㚑=}yUvр#sځQ:Y$k1"^#k^YvGjNuj"{^nݣ$֘ 5D.9'n2I9;q\w[.C+W`$+HccR Dt0-b#ƫ!9t| "}Gh⑹]In꿞 Gߦ)Wij̬O5*zOZF-,L=x[b^gYwLtu.g 2擹v*'֘iN\ Ja];6j ީַ.K0h#4udѭj2z\?XI2s<97m$,}"{Sk`!1xG!j4TmH3}"V1t.'qQP;-gƔ*G#O*P`}BEۥC)F.JD51T[iـ\d]BN`E=`-L3KR$.MY_]KgK[E,cz:6t^ȁ渐c .S7.Y,.ߚ_v/p#ךal3a,]- ? -raFAXbޱ|>ݿV51NzWFQ{v[ cwSN@j<6ޚҲ0T6Jgjj12O*O~ҭjHB~+cIh^u2!dg{Rϒwp^֏@A O^>t=o-_-\}+{Ovͽ:Ee@!#֝mmцt3 1O+/y gJX(%lO8ַc̿f?\yۊx[xF8PHYGQo+r~跘c)}|v&Ek);M=\\K V"rB;9e7X97r dһA\:OQ`w5a}N(pH0sGϚX`p$Ifcͽ@,gv&r&x4 ^^;m"gV.($0j%$H4 Ę*) 0'oWliHAqZs"Kq sO'm̘Y8? %/щ6" UlcDuu,/e{+9D1]*ֳA*\.cs,TR-h$1ֲw9[w Mgߥغv(!yۓ Hbjeq]H.VB4s%pߴ oM\9Rzwn&sB(Ͷ0& It;v1e&O$YGf}ϷH%X19DB 4ANzՇX+ sV͵b,:mV>U C1Y]'jT'8 xQ{  &>5EC1zGZ2"@di‚ =EIЯ>{9lxU-ںɟS| o` K,H%׶o|Ѽ CJ5KnЪpblhy[ir{~;Wv[qQ-]WZ DPu.i/:8P#5᝺ERfFjmHHޒ`1G:lJ6)ޢU@sP, `5%2ezYґ@s(3=InAҶ[30`uwd(;{έCp\K/8X74#Y ÃKVʟP (1}a3 W#?Oà-ʼn0陓t$qZ"pޘ$ I9槱,j3oaqN?`r ~xO 7RzuӍX2dOf]1dM &Aa#?}KΟQoʿ|+i@<0˥f奓nYfb}`~xS)9^Ň LNG>߹.1YVO*hR@H0khYqtw08j ?A`@?cxDL+UDPRzAj:- lTR1np@s1ܺ}$ YU>BH"0I8="hWsp$=fč۞RNAߋj9iԢyk/y*@8oS3)u`oں4ndM1(} m0cM+JV,m i&B[.iِºxW@c?~;.X( BkAq$mslHHJ;mO"zGԕlsgP}%&? `0 =͛sNG 2@ GyFH&IZӖݨcv\7.$z#j˛ff>_#Dw)| f{vl~fUZgĎ[+D3Fb}^\#_% S}m* 1Xs Q@en*98!ֳ$ZxmF;Y7Kksue&AG|뉤}.6ĸp']fLܹ3-ԷwUeC,xz K Oh~3RΖ2s$ +˽WWjZH yFKmA< !A1mt/iVڍtl q/ht|([Qd+\dKx+)[HVg&uo-Z`ߏ**[tȢ2?o؂j Fb }OFRږь 2x߈xn[\*JA=ҁ[\7/]% ~Y1Cf-̲Itoxxb vAJGhx}b &"ҷ[ol۹iTcE&2x/[^$+D]8#5{o(>҂ 3^*Ͷ>f~l,iŞZf"VƞP)z2Êޘ6 9j\ %H1+SW46#j+.129ҷ4f^ĩ un:1YeHP:ē?꘰H0Gj\L3_nn DqYGMmHz2sӦ1J0ULk]<7Iۜe륃6NV9QcƐ0!N8pDC3V4.W32OuWKr ?惫&Jb=+wܪ<8y{ǙU4g--2> u͒dǶ*:P}*:|Ѝ+m\^QA`$IoHPrG>kLWMY01PZyiI=Az>}cD SPuOZ2= Gj@Xds DfXf୞Zkӳn}WB0y ܁;vMCuwkK?]~`>n][NĤ!ЭAo ˃+>|맥Ԩ!l 2O^iw szZӻAS#?zP-w_ ş\NЮ5p[v4sʽOE֍Ju-j"I?~u/{k-m@cLf-.timLMVvA懰\hP80q]\4T k%jӡM>֑h -SRbJf]"ǓsO`qDuIfi[|l zI5e{+?IhD{ 3adsⴀ5\cjoM3&1V6.gkuϵ4 =.FsZQnZ*h,OA q5e-'JŹ PMk.XWCCMs-]E6L9mېhJ3[Mev$i3=T=[8)cP֮,mKO{ʼ$DWKQoK{l峻ihۥgkys ;VːdqP,>)rs|R疎0u/2p s#w´Wo[\S襉Vli A}³}tz_miu/;XؒcڽW6Nim y|#ҮQj|Db8񮧅xk Uy3?~r+ɝo[.Q[WHAxo<7K5 \EE\N`LOS_ĚV-k[+&Gx;6/jw&#bHW <7}=fΧ_r[Өl>d#5#?V$jL_;[BvRglttM5 '?ꯅ&عft h2N>@וj4u+zRVn c#s Ecp1qω;_se9<]jy#wwMg˹Iy'Hk9k/[۾.P ʼ~5:][@0:f&e o9E7"+ KAk}@Skic=*Hbts˺֝}aMz]$(Zp&q]?kywSp$`]%gGKDDIi4p2F@?\U w W]:kO{?&?:^.Pڹ?(]ItFMHn I[DZ$I[=j|+Z@ AK+zNDLAN=_j&bD`+,O~*A9aw zH>2=$HDBrr䲅&'*[} `E>WJTa1+!TgiɮH=f9ΗrAN+z֚^nו^:K=ˆ[8tSX.Bv9wZ3rALm$.)3=ɟT@Yg`BG*6* pDRp)DUhݘrΝ@"tg-zﴙ? z]-]WEf;Qچ+ÝIm`r+\V^`[zzȻKOX5t\̌3S.qsY-2YrC;WGFK#mJW]+m^>?UҒ.(OZ:@Y<(bږ#Rf:2gF),͂OZaON6XJRhz-j7TY[ 5!#'5 UJ$ƵӐgvzҐm3rN8֨Zr-$]qyښW,3KVBl8DSz[*QnjQmͭӶi qTˈcI]71$z VqIRC,;O$N"qT/8yS0%PDW/M #$ irdiL#Ȟ:kqU,SOUHR$L m4"⪲u r@s+U@j!=DQ VsT=Vu1jan:یW3߽R-8-^֟b P¢?*-5^ xtj@u&Abmr>uJ ۍp76󙠖`Dj< ^۾,3@(c'V#p2jԶ" y6^V̤r(ּOSl2ñ>rY7K-HIh^K1Amu%wY'5~_؈5uSI\`?2~yzoOfa[:=eO^՛ڠ=eIb{H`Y`xl{fJBa@k&~2c&W <ylx'(oqگ'9# Ҫ9&ECmZyQ ՠ9"H.hyێIچTD䕚emܺ  R1<9VhYUuS,]}׈r>JO魛uRDV|=^Ƕx^@a89^[*ohγF0[HC,ǁ;|WLr6Y퀾`=n"'ڬ2J^f@}9P:9ho\_kV$&k =X]WpJdQn $dG\[`(? lyvȷvClIYT? p~q𮗇kEMb g(Ԥ<,* TKfVҘԖ]sC V7uT 11u|7L|e|gy` ;v][2Dc J⃡jωP7JZ& _On}iY!#z =Vb%шBh:\pw|Xf vb#1󫹢%`=*NK*5.ߊ<\䙮׉J|߄כ *Kf1edA1ڏq#}kkP֛r0w<{,j:,iۛLI gA"307&2)np?*"nmP, 0@envh)u uɂ E3mi(< Qϼ⛷p`TUr H4)dN>朸ޓ,);ۊwDqQP1EhytఫG4BޟIF)v< q< ڂ<[aTQ Aq8a\񥫢m0,E64XtWfŴ*#*څ̓,~up8Юi|;B}vY0Zl0=)-M8l c&L6uO!? b+K 5 sFgeH.Jt4GR# IXt 0pAX#Ȩ1pOy& :#X =Af%f[6BkvfGᖴvelnqg,Wv5[aȎ9/\F[}k$ec6׭qWg{9 +W.Ν.1r#hM#QOtQ J_m!782iλcQ>2hYr* Uw.Xuhq1R˳QztS tC*.]Yd Œȷn UZ;X!91Spa.dޣXv:~T[)l[kBؙ M$--~⡱a }dY}aL_kɈ5v"{dݴ{ӂە^"$~Jw62 jӜȰWޢiKa'[rNi]en&zz׏ϵ ܇gщ$E.k[M=U^SڸI A^@n_P] 6ǯSqK#\f+Y&LFx_ g, [A{@u5~$[bըku|kz񢴶l@F?MEmۉg5*F$0Nf؃iK&wdڵի|*kz2+\ Iv-0j]ޢR)tAM&dN1_GskIBP(Z xn魦Xn33 Nq\,8x xXï^O[FxN!Dz޷v[];6P|N@{:^Yjd+OoƱymnqO3O ^6( {T|?DAp5YabO»,nطm4kV9bs‡wPۂdlTe8Z>#ڱ GW uFf5w`{{sxivb_mN6se.߆ x(n7gG "+: >_X[7G~DŽYMg[Wx0G|pu>? _  >%9c0D `>梏T2"D." (-[`M gt-\me0 G4Ξ◆ Lo*mAD.m&m,81d/vn qi(ӵkU1Ύi-bA幷]u\9>X`" eS^sKI2dFM9kkm`Hi$+F]QoL5uD H1P, TǿZ'B)!Lo߸O<4*aqKWNU rTzv߆ $dzꥐkl'Cƞwx\#sVakz+vq;׶{.t.U8|^ٙQ's_bC#V+Rm7J 2'C{M`r]s4'@;;p`jbN#K@8;\~"҃oJ TNs[DF#ӤU0}ND?*)oU3ޟ?U V-Ufzs.xNּ< l0ObA#$ ʀگiO6QvN1)WSI =u-KO!r$i"v1I`wHt2\K]N=?:5mkۓZmAc!q "d,j.Qh'$n2GzʘVʠ倂:S}iP b1{3&[ {H=y=\Rhڽ_ICap(In7ޜv+q]?+54 \҂mط=}.ڛYcQ]~ 9`v5z2 ޼'*r`W7X\#^w-$s|lo["[WE۽}kڋe݋73\+.wZn'߼V?Wa”']%dDbzPHNڋ{R?:]_PafwfK 昳7q_+9Mɧ,a~l]{ ]Pב\@ӐhofGSMU0(K )!D1(H3 6q>EGn$~sYfcҏiS "VEхQSkR [wʈ-֐F UAT*ʕ'2sY3wq[{,&Ի5VbAS cشjz~})>1b_6@pa1֓T :5P7bjj.i]mp?J!yl ;\HEM^;/gS۫98zy<\ b8ͼʺ}^PcMX8 W#=#IoI+ܰ[i ;z@R ]UH+ڵ2ʖ;30hG $4ܶYH?}&'lN x!$ H ?JNL'gyf,81W#.޸X/{u=dq;ȺUe+3* ݵFR̨rA_3{G]y6[TFM+r5\s' Eyw]P:{h+,d? [;W.6oCž} mnge[J5| I\+u.;s­|Wp E9;lk_ sGh?)]OZ_y8 xvo\uܘm3К;IK+#޽נA DdqN%"n68l2@=~J!p&XFF?JY`,6bpDڅ{aͰrUKTcu䴙hE!3F%6Y\4wAs<hhTśWGsNcs}Q3$;OWKkŐO~64sj" |iD=Kln `9M=Hʞ_Cd߼֟j◿U~ެ+7zoNV\:|Uӯ#\bd𬽶TQj\I: #W\YQX\呝8,mkRgpޗMYj#0>txK #&ZPXwX~c5sO&lsn].z{P:4(')0#3u|9twҲ 6{V_N1Zi:-eFګ˛BAA?*4> .snOl[si=n-!M:o1׈+NŻ -]-s3+h/j%:`5 lADap~8Om-)Jb4ȏ6oUJu*Ɍ]N8f%KIď=vuE۫m/-mW 9 o VIb9Zwֵ}#۰4#tȓȉ㰦.xrڽl2}-d䓎z53f߸'ɳ 1%~*$\evH?Vf6uH_;]]K }N&Bb]-7%V.,`N~'O]5m_ar Dֽx>ODA3U]zbY(|Shͷ?..ӈ$2>u!YrƯNؔkzXfo-iueoڷt]AyZe5]ç_Rڟp(rFO1ڻ߄]-@k<@&W^ ՜7]<.L͐1@m4r)z{=+gïlD$5n9͕\֎$|(%/i݀&ԫ-BJzֱ8?0/ N{ԷxA2gTP-ZVY@6,2A$ko$V$5kjkoiTRBi}<'Y8 Zhꡆs"q[& ~QsQt톃PViCbqX$CIxVd 3R;'v@kNHԛHmm)1uaUlc{|iF c(k~'0't۶2WN[(`:|h# @O1c g(Y}@RՑ{JP`}&FSh`] ǯj"ݶ~2qL[]@>?Wwrʉfpqˊwe6ek3sr<}vTpU3^P1S}iD#0ez;ۈ]@== ޓksOǵ3k]J'f-6IG8N=M},3s}.3NkA^čnk|Q)OsizEY sC>!rZMvX^E_7ut  0h>)ⶵ /al\ZzS̕X\A/צ՟*&Z'E{ jWyW7!kvطa]M)Q VpWoWl GͭȊ!gcw-pQrE5RN -o4y'05-ɵZѸ7D+@a #2[w ӊrۤhli{F`@-#$F'1I dϔ`ndur?|  N>~U۶L5IB832I<}a,f`w``ff>@''#~RkbvX( sAN/Lζ@ o, cߧz*d1Q$ >?*y=T1I=(lm!@5-4ٽљFwt.@sT` ln2 C[VomN))vX?y71 L`A>1pܸ Bɯ.׼)?wzc/oM>)cGˣ7t n#>`?Һ,B 6:qoytME} Ha+d\eUJbdsvk{zk^!k6P)[r4ޠLgx& z; ަ`t۲ZLH-ڟG[OsVyR_ld ^X+z 7|R]N=GykCÃwǺdq"v-XiSkѸǼWuz+GPʡlYoWIF[`; CfWv_ .j3\*b'᚝NUkO4 b3=uW¬vqvN 5,ﶱj|zJXC*-&q>VMMo_ 6NOڻV|[ZtO2ӅW td v&zIZWR&8ߗEKvhG f #ko}moxf2z7-3${Wnejm14nnCǽ<%ˏׄ[ "zq_^o|"0i u $~5: Rj6@ iZ-#pyҟxr.0Da_㲢G<-2EM`1T)qma? mCYpiAbpvy(747Jw>e{j,Ie P(:PiqՒ Nz6"ّy U=2N5nk̨RJ*+:_GPu6@l N/ڹmHQ_$+SvnJu bmv7WKf\ 0Lc{{wxE˪ݼכ,[ʶ$ f<Ҩ Zr%x4qAQ*NAڹr%.wgf>U^OOkQӚjljЃ'\vI6L~ϖv}X1}lAFf t6ȞkvE `L`J PFcs }$ՀhPwH$~PBͪ\=ۋi ֹ<UWc ?gr&DLO6ws =5+k=c9n1ZMCHB2i<.d=:"OtZ AozWsm6T^¼.΃@ >>s˺=$^)h0 gUڰ^ǵ&FsY "& n/ຬ`Yq"x+)iFW)PIsޱf{tvrƲ [X)T6Q2q⾅.\ &wA[\h۱ٙZI=BߋYVnӶnz_Kl->U|F۵[q#Q5L*Lg?ځuV>Po"fq34[kHlXM*'4٢kdh >$6*9{VvJ9#xB}jݠNҹdM0--3Ea6:i ".Q )=h";bA"bw.fw8icigZ8Znݴ mLh%L/3nϪ:H=gE+t(JIc™56U¡I\t֣mݶZH=y۶YNcs^oAUZ]<ˊoĿt~$b辮qq00R};k]=!wnpz@1:6wrn'{Oj^M6˥] 939b&B}{S_+h|$e Z G!nSVe GI4YK/"hjAxi[]q(8U ^wԯ[/ ثibzOtv.T)lCNrGU,yGY{F#wֵf_$ziCcG\Y 0NuW~Szm~ X+Y9l~-K}ND@`0+S,dc,q-ͷlXɀXO~_ 4 N#J4f7vݒc'۱~ؽv7\G=j\gNwirMB' I{عioz]6Y粤ĻZmbA#ne*e8ڄ7VYz;Z6n={7L?>JoYb[|N֌ƗOԪn%UN>]bܵGFkqs};Z'q=1i.:f\ 7x[ M-@vۺ9ǵjًc~OP9 8fjʹp0z%u ǫ5-"h@f=Z DbNX~(ʭD0D wafDoӊ!;b>AN-IRDž0n+[|} 1bm 6T?% /N$JAc>ոeÒ7A$Si``eO`)6`E4e]HĬ}S6m_X+8O*T0+c柱ʳr2y'c,˷m6~TŝƸҴ7 ܱR 7L̚v>5sF#~≠Kn^?ܴ2=C >Ɗ]sIttws>ĶF)F֦cBlj#5.+W?eWm S\qJ]֗$&[v⫪0b$o>9~c5MP^p\xɦU.x6 hzwU;?)FٿDZ Gԅi}%,1`>WrB9At=%[q;̊iСHd(yVrL~.+">Uzw2vGQ|i\-x $ra{z^ؼHI<Q ̶`q 3$ӼL Z]Kk `DcFM-UTaC mXWB;\r:Mic$!{Lcr.&0?^PBK83RlWk H`t)aw61d{iJa#G[M ]0LuCN V*yR)J#dbS/ glPLOP2Mh+t\Ӏ`5aoѴHB52$15A07#gng 㚞Q* 5PH1a n:b %{ϴTi _kH,lv`89U6I 0H%DQK1A+? 7 &F:A®Xu.XKdn %A& MbڻR[D6-hݶGL$v~ZK`=+Y+0ꦽmYq(GmkUMjb8u9pk^ƀ>Sv$7 G~Nx~-rN5,KW;sl[Qi?nz{0 2*+rҤdur s"OO`X'O Q4ci$ gb2e6F ʴlAyF}77#he"A@+>=L+]I&B3Pgְw.ң,IulR&T*QP $=im$Q\ uI+L1{S@BͫAgK7pkfB+jط$1">5pڥr:BA{W[Il=+iMrW-xMeZl+A&O``4e0q4pwn')DjЙ g._,YH&O3Wmyv"qOW?Ee":ѼX\y/ߕO hq9^ж'iO=?%X@xj[7NW񞂏Ee ;O'jmY b@P*jnbi;F|[0v$>tփIBXVs>Gv=>6K^sYK:TYVGPniiQY W>,筶ɒUg"Q10 +9x'|^ksqox1XmU@]$<]oouۍe)pzQ8=au pa+įhꬻjZūݿN G[piߊ=kN{ZK:aqWڶ-#3Ǘn-ዤ/e ~ou[P~m1sI:!Z~x10?n[d`=V:\^Ƽ rͻ6;a(Dktm(95?Zl] ̛~bGMpmWW;cS o.M?Z[.IW[l{/rP'&ŐX%ˠoz _坵7]fPYD@N\7VMIxVZEPiv9# P.i}>^$K\i/շ*>}]vLiu>2ܤH 2NzoMGYk}@r?+Fth[L`3I ^ޒr\=c^͑~ˌw@;@5֝^^*F%*^ۜ.fwx66ZA n\|d9ZW29?ǎļbN̝``jkseo_녟szU -2y5uĚo~) sp} DHt3y!/JPJO#^=EYg snsNק<56ǛեOl˟b'Wۥ=2\rzOD+iKI$Dg߽uMYynG]./rݽB[{_ -aN. >3Mx|?QsOr>VZ/[x^O6´m*^zsVۗpbF5[tpJ%ySf\a!pg}l%]W[C9՟D3?/֦v1q|]_q$ϧtarI4;aH5Y@RB^[cFal.ʃ$@b'/#7LSfa bAYkEVAdT҆@z8$)mI,ǘJ">7(gRݮF!n A>ٵd<ө.6LĞƳn A=GٶTyA?)G֙[{)L =ָsL ڴeS6*DyGΙV-7=}KK;74fUXڤI_ }DUM̛T@ \G4?<65{\pmBk6 #ښnEígbܯ~&⽤#5OΪͽE[QLA3\+ ' Dn+v")9G丬M?8sLɮͫ%x&hzA?JO!zZ*`>5[l,I 2bkS͔<kdW80Zl ]&V{ft4{d)XkNVܽ ^'J*?: ۓ s3Z X̻X B=dL{Z+ި# .iA%HurǩPsʰ`Z%X':fM.[5f`$"LZ#QhS\ڒ6?bbYy\bae[va8֙RVnOcڅ>(M>^8%oV߁9tagLϸ)ec֍$ @W]WoEp;D}+X(3in£pH<]]ܳ΄`H5ұEmHƤۧi b`?ꞶHfLaLguHL?:eAcnץ,6i2-9] o^8ki(ڌF1۸nс<_ֱoS~+TnӊAd*"z9^U@U"WGEۦXx?{IY /V dwZs sX9wtYp3cu\*"D?Ed TOA?=~⵴ӀA2#o$(kn8vbX#$𞔵Ė (d~e@c{Yxt+X0$}Xu,nv g5 [y#ݜ k 4#F&4[$4 Q# FjZS64٦<C.@~B 2EY.2qhu{HO*nB*P21'j-!b r/UP1<\׍rMjcom D0߽n݇?Szʳ9 "HaO1xu,i]?*q|+T*iZ$!6ޙ r}P 9e7 (RCn*Gҵi6ůWB-XKFvOQ=kmi9q*GY׽o ~7V L2J@3oUma1踰{W>{ H80&icvm-aE߈ lMLVEʬ]fzr/"`Ntɥm${{Q5y= lPli I #wǃ-Fm:E.[۴΂qu/ڝU==$9 _2DWGGe-̶63ƹgNT) 1^-n(B=Ҳں? g5pztcѻ5Qf)3 b<᷄CuwmLUY(wy'h |>u?hs9D0v7ED/lK0'Q[d ߈I3 'l5 =:q'PPU6 pIq85A-:>*ŴF@ךp [$QH ug V`n4ZM+jN~T]bb؈"zLd&n( w"sO"HH 3.'QY}Ox߽_Cr[NG{tYggZUR6؞s5D t~-mA⫱ fvZ @qr8g5큞?ZF̰`"OU¦IL=&Mwu  pTc3ު !qߵ6i:7mf( rE/wKj\yw0#iAǸ.&$G~im?f|:d t8Z=6ǿҴ I9qCeF>@pa%^qTڀvv ,0}GhJN7,vY# s5,"…3+Ck,3ꘉ- vχw+MeKc,Aʽ\ӏ|̛)bP{V_X"k`lG_MdnQvd+7;f29u]v@@HWɴ6 3BFk/z__fknCyv"z&qāDgQ64BoO>GoZi7z[p 3+ZՍ lLamM.ScYq= G$]'ڭ*m]#ג^%F ;B d?4[tA~ά'`M q5m5)gĵcYp SB9⃪M" 9`T3Tcӎkct:m[ߍ p یl ]2 _*3]{:w޲ݽQq?'{G "D s'zh-zw%Ȟ9E ]4j9K =0*&y,(ɊdBwGoydJx΁wV5 I[KJ |M`Aw\}Efe )q֋os,1ڀ懒"[/OٚQ:QP2`֚Uۂ 'Em0AcیЋm G6~KYu{nŽ1FeiɄ=@P0[3#n, ys|>Vb\`W Q(P8>. ' q?R#pc DDt3 x֑T E|vy fnoJ^§jŵPD'>`mI^9?E4̆Qr3ֈ,[dn`GҠY >sZtb7#GZ A_O#83,@x"܍ٵy2>u2+ Ȝ>)m02^BH#HlRd\DGη>Qk(ּgx[=<@z^Jw^6A95~#ּOnuz~3N>K]XyGʘZG;R;Ic[i-P /z&u."+rq@0Y6'{}˖ fwp~h-5ok8R-}N1m(0H8Vyr<~3ĞI/dU%Jߐ9&O65Hbb2c&?jհL*ިG$wxyu}(ByJ:LEt.倪",W*XP"gtnWDX9]Oo|VAKm%@ $}*SI_T X Bxnŏ3Kbڹ;;v=;v!{ 硬?< tbٸd֜ė734#MyXqtv?F-sYpA\ 'V<{ѽB2O6X]O\ţsző p0vn7zk˭~oGli]SAe8=?DwFK[V.#w ~UwLM>J@x ?f{ Q#l3b7mc'TA`IcdED#%OH4B]lRgD(dnf dA'%~{wv @=+cILbzTjwHL Mʄ*zh.oRzOJTQPdQwT]_q~~l,ml HWr2ONvUQ䎕v³8'+&ߠ{L`́ QYP0$OZ,z#> ,JM$zsYJZ}uiÑ\uxY7i<DZKKktKҵ_Y_AqI)g->OMXOm`x׋KVkwһCPHT8ڵI2۷3AAWӋH'bO5mG<Uzvf HZηY{W|ܾ@bNyr &f[`Ǝϟl2g^b%Iyv$*ϴ Kr$17 gޛ`!H3177ra7rdn3!,GcM˨#k-JU/LBɬc/?9~ٍut7E zmm;i)=k֣_@Iy5ֽ{ ܶyWPAW.$Gʿ"Lsq^Om{ 0F ];du#|CCe.5 o%6S(Z-[cj岷dt9xi.j[Kj7%ŋ6CԟW'5tUʿWu5{ھtVzՅ<[cDm\[}@+⏥{Yِ=&٬ 'nH>{WIGH$9dy/bư*\ڸMv=:1m%nڼsp 35k\]O$SgXHE{s;HbItz-U-K?pGc3PGb+}.9u |cT|I2{|-o[ӝ^R.|:'` ͈q,Go$\>8K|^‖y'4c+'hG}Uĺ?ݙ:+2FѶ0>ͷnStch|˭]MٶpPCy =Z-j woi>@i]9^5l$d ڳ7Y&ڵ ŌޛUW3zHq|?/h.tۿ3 EުZÁb{rŝm_́nIG޼ij鮓[$ҽZ6 fzXνX{XڙMR Pi/2["qKj݋kX[+kojSp̸Sc˴KzLQ s9F"dEб djJ/ =i-!vzfIi'v!$_zf b8 #p- cє!p3 $F94Ǖn #+= RIRV#)mb 2LjQ SoСI'sקõgtZ՜> @<i X'"LGLMZM n/{|u-Y Zr9S ed@9|DgdU۾T$&֢A>[ AYnv l>-T* H%@n)b.#&pUGc.j1`SYG*߆8'5Z_7ZP*ZۮF*줱hxDYyOKhKp Ͽ[-nl$WKEXxQw+0 =KNJZ86Y8GPⷜF6!>ͷ yхq[u`A L4Bۏ \ePՒB u8&:B}%v~38|۵iW֥7J>f\[EnpD^X?t|%!K1 t:+>9];7Aq\MVP]V,7 UU܂ǐ$bgP $|+ڹsNwXx)|NrpOJƥL;rݦ ǹ-c;9x]M?Gk䵿<$dWC ò3$I4-(ߕQ;V,ۙ ޹ڻeR sMA}G*` mԌE$)~G; SRH?8`ȡ-z \i2yiF[ڻ7훖Ӻ'\S'nz5֕1$ף&99RҪfy8YXߔ5MZějḑaqַ5;!rVw{V̹=ip=,9bcwwI(y[b[L6{^P` ֜Sg1_bYyZ+[lE[! Aܺ?+Wιg9%νivKv`YA~H$u)u*Tϊϗ+O/F_[Ysd?ʓ G$Y"I Rm/{am'] v ޗiŅQ29SoYH"$И.1r=i۷0C H$ xQIx5ζ\wBڶl&w_mgko3I{^?jK 7׭<V :[r<(/n #"ٝ7t؂޺NH5GUvL?:,mSڤەmELmja'Y% +<%.IӨH;|*φ%ipy=%<ku~3bU7+*GH9k6N+uAB@oD~׆K H՟uxE.SQNq..'&Oc=vN;|zރI`[|eb7T%Od|+ڽz\P6T2&gDt[˰y>W;ͭn۪HO/.q5bkfv<Wm]b7f 1K G~ޓGiL rB2.El:K* sx'^H>ƫ X7XޟhJnY\?bI{0¼x|k}'/xŕ v#eN&zRq“^I@$_MO^ҵ$D*b9sImcke8 cC H3GԿY6,Ղ8'ZpBt{ws\ig#h8hB#f}*bH,IqW f@!@=6ۓ°,;/Ҭ\VNHѴPm` ۿB;W܍ h tJ0 LgVc uA._(oasjXTUL@LIcOY\B@T3+԰a<V̰Xvu 3v[$@=>El(_ʇwb>qI]~%(eRH qZA Pӓއqԕ,z'!z?~ըRf ȣ#˒ >^ԴwvfTKA*1[(sOO?:Vv2dt1RJXz he[ǽk25gu3%4)P MYmd F6-nnCW9$GvM@@ı$g*3B웑0H"+͎aOL2ìl1X Xϫ1e2x<׻98÷ ;eA1RI0Lҽc0iha0j=F&b"#? 3+7 W&sT$:bL]WI)dqT"ZJ .sּvpB`@"8sY;wf7.e{5cr6|Mv$M6mY r{` OEdi (ހɞsd܍ *w#qoz7đ?UbdqWl2G_jiɧ\e,kVm ~՝;\QɊ{JV6K'jƚ*G GYR֧M,a\g̼Y6Gln +H'&;jش|ȴ`4# Kݨ;QL_-ۻy y Ljۺ렴7H=;R 籋aU?xԂ xsN\\5u9V)!2?JmuF2>RDޜz[XU` D>K4p!WNHroֹ#6{5˱/a_D?dp@=dj-ܺʏ3; \?ׯ&~%R2x*2 w{׽B;F:]ҧCLkrDmW5zMw@ʐ#JgO{NV=}jO?ݼGGCi=^C)0BIU`CGKS*Pn; OQKӵ$y0 "o썌-{$rOMvөkvbÈ;;aI2(TCiGB ܟA- 9S,'=%ދk%*{~uO1S?zόm#855vB&gLk ~kU[[Δ{D6A;yH[ vtٶG? WNBG\KB@~]]=l+NܠA:=w7 6Em"Ͱwu4;[A$략66r1צko9Pޒshy^Q`$: (ծ((vfc^n\V6!}7J"do|-mI/$ 폏[,4⨿J9]܌93EU,Âz֥`>Kۆcv򦅈w123ꌣ˨H歓s[ y =sβLt?$AU,lm1N@wA &"?Zhm1HgbA}r|&m H˪n zO$|jP;p7 =t0e'sJڸ%AyZb=*I1i[?r2 sU :^b$trlcM*oIһq|V2O.lʱcLX5V[_CH\>&)!3ct񞂺ƯedkN-)wy'\rթjmi,x;%\k?>U]VW`vxqvٴ'7ᶗIKJ6]wßLfr92e`-%7OR0*qbsn%;GQ^:{uR t<|kqX6pGCkK1?:4sr[? o^eON/@ڊc<  ioP+k};\?ЗW3QnZ`F_=y[%U՛Wl;v(6-( !X$(&p+smZ"~>ˁP>I]tC:;dy.# 8ZU[HALX[^% '؃Zavhmp0 qY.vb'xqۭ_zwޭш)0$´jA>BF;t n bO28S2 O6 G[]_QN#ӻpwZ,[(x̒xҶAn֋쁒A> &s"2Eado3 *wPƬ\  avVPB8~Ub,@}cQpB.TH39#k,#U l#'cgEcbH>tG5Iӎ s׷>՗ H'"x31 GVnaqJ;I >Z*VjckN@#b$ qQ]VwVKniAݓn]*xIĵۉarr|jTWZEV{ݵ,` z"ߛpzLWk-:q^L߆xm=iկ?)s9D+On[CU$O}LpOMOVi?dMabF+,j9-UE,0F`Po #o!NvB1L|Vr)x:Ȼ#R}VOYUl)j[ W6݁ly5.;u\(F`@[I +<^)e'<-۩|<[dӮ-+cdsT,jUhnئ\q$ކX" ۚFnN:$Ү?4ꖜc3;v2AHqC"Ffg?c:j(Gnk|YxK6Pcoc1׵ 1 `8] 㩭<:V0?z(}X{֊,ޘē\CV +PuZVl!%Pdo,1ln70\?՛6=cljuwn:ڛfר?SJkWl'lXg@>[F&Gعqi]limJ<5VнGJnިl A# ל]B#y2E- H^p++ ` km]Rˉ ^ 泝c*n`I+=v9~[ŶP Ov-wwrhnC FՈ(1ha=l 5 d^Dj$*Rn"h[U+l\g<";G^56i`:}Ad@YD 4xYFedI$O5婖Q=?n(2?~6 0܆>j$'4q`J Ȭ3PN=I90x5dM"]x i\,7)#[xz:UW@#v4}Gw.j Aڐ꼲3J/]JoКq۷~5o[wv[Cai9bƸZgaֹn 2()l?n1w5ձRN9[nd&"}onMi5Mnʲ*34y)z\ŋ.؜|kb$sMK!!i嚮~s!BrQ <˾g+ۆs\{2dx5X2|~‰S"8 "@4߈mY%\AҹJ`H#jǙ[HDm.+rAu[jmoYB9 CL?/'8dq]vɵ`E{рRNFzU IgGVTw.v>5JO~b,XhjpVXF%AFሉri z4]RK>}ꙶ'#(dt҆0"A&>>٩!@#y~SҘp Q>}& 4HfI隯3qIP 6Dy?J ’n25%1U9_IHG4;A݌ݏ+nmC]>_lOOR@!@q*i;Iw1GΘm&V\ʔcR"A/C6pO] N7ϽgMz")"y^p ҮL?:nkVPbq|Zv2׈V! sO"±cL˷y#P;Ld+"UG];|I$ =t7nDEa(#?k޼m'ϊL7 46g}M?[5mbu%|Au xMrW[KM1y.6F]!& }"7 =jmOĪë HGG>f[cwGĜSl&g랿YUFs+ZUG)spds/%pp+_[`FbUNS]<3SgA#~ben0Auu:3x\*$v4GCL{ǵ'n^qjy=:Dc P.bGN}hP<%ZVp3&ݷ![-vyƶuZDY! ֬2ڀU鎩E )"O\[RJT@`#S>SYuu׷ O\)+.fEnCJ橋 @#C{oM5t/{nH KI~:RƖՒݵ 'Q@P _ź˱`!sK׈[K{`jKy'pZ]f`qB}"5Rxc:/oX%;[5B wpT}[[cx'oOc^w|1u %9틋6Ap+HPUNޣ˹m\kn 1e+/F~۹b`<鉧Ui&6A?}+t-]bC+{;F Wp=Z(!?zA.`2c4UMa%p":}ÂX@ڡy[5cm2<q19Q-csYmֹ0݀V.N 5=(@唌Dg|,A8T>]d1(.Ae@bJJi- ?2gDtK:ͥQ0 ^#F;dvI=gRdl *2qV/?ˀadn g![, Wv[hVݼo {gޅqʂJ ' ޒ86a`?_P"`Df'5dRS1$D0GҺcsuQvBeٸ 1iSum˅*" ׊ _+,wj6l&L~t|="'A*LqǵSQmB# 9SIfa3~-Ӗ64ziXv\%=7=YxNE?\p\1vV 1W.Qm޽D n[\9cȚen8ꏨ7U@IdxVйf[!Ͳ0ÐzvbʠX,[ .+a@` :>bN`ކo۵.xuAwd8}%ASIc!j]Hc_&2$cI N dH&zbv ag=Znf-^I3Œ"`ǽi=7f~R*Hˍ18z-~k@I ?~դ4EsҔggmğsY*,f TnֽtDӥbJ Vjub9aՄzTP\D|gv cڴ#j5A`yhݤ k 8_UMTA~uF?>Pn{R. ?nVH řc1GzmPo!t;4-Sr ad*[rhEG 48k7UR$2cڷfi?25pDdsZ gkww\g<3KzAb6n޴ãʓyDYB#qNlmV>1fFk\48h k:%XAtns,vf>KBK1M@;{US\PpNOe3a)f@b6KoKnҥ"m=V3 7 gҢ@ SC 8Igq: V2\t]wtO)ܟ~^k?|BQ&G ^xA[~p"~T>b~ wWoSamٽK 1+[ߪoqc~o }2%TEٗ+:..*r= ޒnUȹGƻf:^ʂ07q1>T{6ol ~?N{B>B6ʕg;?^GޖMeszB8t B$ZtuҪ!3PY-d~TRs [;{ U-4Kc,zupvfW!D{[d"x_'7^pc_@kN8y_h0A_c\Zpۄ.~;dc*ؒN&&9}ri`r]!FN).J @4-bCpg1SY;1#R luCY0zuj,^ ۴AHś={G[G%; 3j oh`H[p`ߥS0bNT;| FӸ V4_ `|Qam< n\vfL#C7e @ˀ*y&['5J$D1ځwVY@% X5ަ |'ۥTp~<^pG&~Z_xiF0LgDf1ҵ##=g;$~˄(UʟPa@S t6Dkre{`s KdlGB+>Cf܄.S0q1Ul1L3,0(A2V\wIDsɪv(ĮDU[zEo|u:-LW'Ƽ#Im(|:\b[Y?Aj^#f̡?zϏUd8sG?#=+0ROœZC|1^60@0GΧߺ 5Ϊ =gK|wn~FFkˑi,WtOY)RdzԂA0`Tݏҫ-%Flh>vۼSSHH _"3*w⅕FOQ`Lp{*̠@\ձbIEM7(4V6PīL? ޿bYM!fCl0%Gցm]L \@S ~uZH#3>ԶÒM0GcR͎`mF#LղeFV:RU#կQ$=duⱥ}<  0IXLL@涾@<1bRQx)ۈsڑ9*COrɋw3hZdI00 Hz GEo7IF:RRzҗ>2 i"2~4Q#& J%J(.ژ(mU@)oZR`LU'a7zS T39מzw5V;Gm5Ak{_Aػz۔m"FI0Jkm וƻ7Hв+H韑X~XR(/#ډ{Z(ƚ%?qdӪX1DێʼtՙܕQ&=ZX_n\KIR$?lw1[2Xw/ˡӋlk`J~D[z]+q5k;Uֈ>z} [1q+x博 Gֽ--vkAmMiH94S犐y=W-"RU\I"ԻG9Kĩ- S莊RO/U$A{5aeHkv??o>{S_ []fȆ q(ngBK ȸ$GP>gP{qilȊ[B%7m g$1y<ѓUQ c}bѱU)komGQYOLh]F}mUU yJķ\GCd!EYgqQyA*vjhBr39K z>TTj;/Tȍ@PyLSqMh+$TEݰP "@Fr)z4-yJ*·kMa ăq< m¡byڸaZn@b!T$**?NŠJއc2ِ#僓G[ TFD4"x戭HFolR)uf]pXAd©-=eUH`=^d 1qX-%2M`@&Y A###? i5I(m3 -`sD}yDn[rp$ִ-ŏ4z _ ԩwKJjEI յr ǿp1Aݒ?jICv=LA VIB0&g##daJTn>5 r=` &٪ZI`ONދ\pO#ۂ`V6Kd*˚MD2;~śmp~.،@^ի@JA/d 6]}aSz?@+mC?, md}!A)rtRG?bcZo!W.A=k_ f;X`Xlb"G";+]`L"NR1X,dG5b Lu$V QYf%$ЊE,Ur$DV.7<{Br"J$S~ڒURDO5D?oEdnXN &l3fd+9?VD 6tΊhʦ'D}Q_ncv|E DbƷVMV'[d?M!K$"r2 q2XG¼J-]=̲$u?jsK]&dTF"$$\[ko *x.Uo tng\wI*$L53/nFSp1[oڝC\M؏ڋ1`/`Av@+"A1'֢OKbϓb&0ΌȌQ0ӊ"vg޳`#E] 5LޕkJ qVᰀZ@~K U^Y"$q1[dgRH1 >`AVY!g3&Cs1w~\S9<֮n PTe@c:ʁMnު*A;W?pZ8[!MwO?/*Υ]/قF#JO_r7db+Z >f|G,۽+j"Mbg "gPsp Bɟx=sZ[ܑ(g;g0q|os>=q[g1iA!8NfB Tui;O\ghbfqҷWkNgZRu`w+\TTJkÀl&zV?bb[Ѿ?ᇘT;ORI,6GCTʲK{iU)!?^qPv_jٛ~۔;HqUZ*cߥaKlD-$="ڐ1 RG`}$w@ي3g%-]C;ͻp۴c='71!Y1꓎h7U7ASOBzj⯐f7bgYtlPA.sޱX-[eFm+'?g]9kDsn V7 B8ۍ dMOqfr\^y27*iKw/D6A0۲_:䦶ZCh{ttV>Y2DGǚrL&VZ G+ڽO$z?yyg[/>2ewڹWUb5TIi#氖*,NM{{TjT =>&3mV 䂖Km6$ZK%:Pl!f;֮2HFin5MĴ&:H[!X&eLp'0Hf }FAz|BNuW ްD S H0#҆{YYq=\€}|Akj fH[FB@V n,EHVT±PN3Ҷn!pP@b Nȹl ~ 7c9MYxc.ͯq`b:Dk1?ZyB I)n7&T3?*V[ve ۽iA Ǩq<|*gOh)% xܵ-԰$ (vI6TS7`~8 ]W22?^,ԂCDH_Bu sw4L29cU~"kFLc?JI`VikDvWܷt'DE5n򂥁=k$ɘۥ3i"zG(rk:]ErA85-X>͂;{ujpCy=S 0pV`|TU] T\0mq֕]Cn $Up*,F6A~4l:T&;ňH9 E,Jb3@\f &1p{TE6p ~!?9ʳ|jP]UG-7 zq*I-ߨ3MhAp7~N!x#z}Tm3w?Zgkn bmc#j?:D'?>Up ̃Y;/sӂ2{pzUn\-J˜ɚYF$*zWܕi %A/9!7$cp;"90d *-Ƴr<{I^Kcj#ad޼lZ$Hr WZıP ʣNG%n);%XY_ŸSr$`4lOQvemz,\$j?wvvX0eOP֣ mC@h-% NSGeI+㎵p %bL|=+b-&`d0m/ahTF#BZ;A#A@nTjb8oa["c?R'Z @ V$hr w6ٜ`mǵBa'8@"2 zwJzIXSc>BvS!4aÚ&ՀvD#,A  XrA ymU>U2w@?*8o[b?,'ڂ,.7<.ިwB}$P` U\zS|U- `&zŴ`8Ϸ m,0GlZkFukrm{:P-ᑿS?>zkgw憛**Zͬ[p BA+pw5*DV\{\@Þ#7KҰQ*@mmp#1Bf/wz'(kj[m0uZ s}Xʱ-[7 wm5ѹ_@*JjaIifx\mø;V|c~0[plI Iiz+ ]ԩRn3 &1E-X .*Z?Oֽ%:{Z$9I蟄-ekqp2<:G|RhvC*RV%d#ڢY.̌$c)EK(o8PT\sNb:#%,CW#3؎#E2?Y탘oH՘|QV=&f塜򮞊_M*x&G^mmO<i4wmNq~ݔ[HT**Z؁?Y޾^VU H3Pv𜫒HsGCpGV%D$@U˜ sP,P:кDdPl&"bLj'vA~S@K 'V0@AX;;Hmr@̟.S8U/.C\`a9?j`5X0vݻV vFqPTQOc4;}|It8"vVAUSS`cUW'iG CIG9fTB)%I#w7 @&I/1T' 4mBϼհ  Q ,a ePl 瞟rh4n_`vBČt|QvqA٥\37woy99 Wp0ڲ Ӛ- x$& `Vd^jHp2:ڳQ`zԆ2jdD}nh9j 1'U0<0IR@#=@m u vg5Ḧ~%POscQJҳ?\VCEm1&qǵb7C( $El(1Q&?FqC7NC Z[U;nª6KXvD0%[;H31Xnv ™3=j˫2zxQ@%GJV iaɀOJm7A!Ko}"sֲ(IUI `FA"8h g{k,'*3p3;P.]+G4if1S k}2f /l R5Za$6s N r#޴-:~? 2:j 0ӊ3#hBrHUd%# GtHZߑ&3J-' lWU9 G UްnHL|(~rHd}Dz,sV 2:`vaw&(ؒ5FL n\1Oak]1"K bzZۋ @=*+d-=xǿʈ.bDg PRc&'X gf.91sC)ZvD*n2P?،]q"HQϾ>4\&y ZfVDMef9c@7!qj1N"GTn d]dPT~.jf31E`!`βvA0D|Mim?ޙs\Wtv7SN~]cįZBp"IPb0U^W̴1%xւtZqūBzY8x 0)>%4D@+jݛ3jF@UPܹah`Lpl2o0 vg=,/8?dJ!"Gt37hPn~ ?i63p:m2rf3Y* ,E @Jiڪ}&L.YLO7"wk drО1K2[j@鍪 AܦXzzxw5}H*K~*uW#hzb={2I83VW<+w\)-lNx6 +lꖿ 2=oDCm"dgڲ¼%6HڪV $Vn6ݥX3†Rז Xb9Y6EˈOPnE 8VtV6кۺ u;RT D$Xz].A~utSlZm I=X7 Ž}G#j5-Yv }kk{T[`&LL*Vy>T0+߀d湱O;37Ic~C-Q"[kwZmmyi+qblA;1V5Vsj[`~<(߉ǔ] vCkڻ cjM$?yWk-HDA[cI{u[r2[N$zOAOtڵ 4@gkL0zҀ͕%p9 h;HĎ+-un zA=yHhZ\De Ԁb03aܴ37#)`qC|ؓ#=u3^bV$3X͵mϥcҁ7 TRH3?*ԉ%b54lec$R<N!hI c!>Րm;]5CzK=Cm1|:pdqi+XdHYD(r{Trc*Ddו$վ` GA#7 d~M2wmT1\zqHc3Tmd`AYxm dNRwA\Vn?yTZb##l*zTt"iwwH ?ʊjY*"D>W@x ]͒fLl]7M ˉrb2"`2~˶KgqM(`HIr`g՘lBHP 1}hm,%f*ICPSfU#mB ރfAu9\c!pW|hxr) sHXeے+Q)]T?jTTC89Xlv䏹XVf Z$"#\pTR;PKj~-V}W OO'05:QIJS'FRm6+ 29?Jң%a~*PʊYIקJE-sֈeTIX8P2#$F0H JD;ͩ" zve$ 3SMhv#+Mca@ yf{Q\gcBb;{k;w$(Y2y{fpPp\Q  >UaLG`eR1y`T*NqsYUV3򭈖<~u 03'BҬA?Z9F1q 2dlmRC=3JȂ]u%`z;Vذ  &H%O$*gg\:֔2cJ ᧠'4dPTG%R f0'j0F3"uЀ@̌7wZLX#d.AI} 25 ^;PF,w7ddBR`D =_ 'OS P@gc3(adƮIYHux3Fjn eEڳXV@o tem<3 pzw-ݲʶaqȨd%C'@;X@ ҫcKpTߵ"_ dou^âRy(:M;pMwP֍wi ZMpզLjO쌁<.P0NA}9mj d_003:S /l ːgh.aõ!~ۨI%>I?( 1'3ҥ5K`@qW\ylgUrMkfMKe|͸i 晽)>iEr*HTuDe)}G&~Th#'>Za 6jk iݝۛ@R{eI#8%} ti.B@'&;AwxZM;2 G»mI;=)? mIK|9S-oV$`ws~Jn4 -'3۶P IsQ#gzւkb9ްɅu qҳd;ɒ F{>Kҥt ?2tQ,}$M^`36D"~3ҷˌ{gci> ?p.ue|&_1_ĪN$E|tPg޺Cضf g>AE鮽$#Oӑ6Z,h:{O[Se`yh C@DbI–5 ,*_|l,F`q8P ́~uq]Ax18mJQգBqXg,TMY\ f쥻e9Y?6 TcjcQ1Jd>q@qcU*̴C.;dÊ]ܵJ1( N$~#<*I@; U$4Z)D 6HTH^|*X]I{ApؗB*L:|?:7A.7 m1{յK_dz-lcXD>Z,$3TWuxZ7)Q %(H,?ao:+mTԝdLaN3=(Cֶ 7¹뿈tJ.*c޼uqĶI OGƎ˘GU M4C H{Sge1۴)[l` c(Fw2??eMi[$bc>=j$D|(E&c# iNњ( B>KTq==6W 1_Zz zܭA`*6ɋ1M Ad{VwܦI}-N?}(WoA]F@?YbJK)"rdD}nYI^PH}x""UeXGioZ{MqE7],E|\ O޴p|?5^"m6Gc/ pju YM@# 563h $I=kb8sF#TD+8QY$UbCS2T@F V7 ™$H=EA%`^jJX9EYfXƨr79'?* K0 CDndUl@d3@;z &a6* >9T+!7S;zP"v*QUP=jvș@%]̮ҧԌa "$QK'hV-E ^d3ZI$dUUv!r# F~Ukb֥a>YS+?QH`bsAuEVm\6}k!fos3t&;[{Zƪz.8U3sW&IS$Bz`'xǷjUbFcT$gv(2@ASȚy N kp;Hrt'@a'ecDWV* T̪Ԟ̦¬lsAlC*pH~m]73Ď3J-2B"L 0x .[0pT+e&[1ȭo ۤqMm9(UN:O^jd0P:UB6`% ([O>n2RZD&~K6OD珍%.ya VŭH.CUoA$7Kx'#AlARۉTV J31P D,;`a6A {jQxn~JBFpDGN.v5b eNуHVuf2"I?Uvc-CKw cnxPrM{f3?+ݒ[]Y.GgWfϙ}-n<#U~-qZس+=TKp"~tU$Z G?Pj HmU,^*X̓Ίٝ?=YBYWjߑ2 d9D <94/AJlH? \D"Iaq[!}5Aby1[76g80+CI#T Pl] T3=".$r0{v!q#iAjl #XTDgZҺ}Q1=ꙅ!d'hv0,II(I;@*  >v$f~ch7L[v2gzց6BqVa^.#`I;StgkctVNg޶rrg.xlíb *Jef~T,L@UP!gEePtaV$.Xv} n0'|\5QI@3-åmR[ @Oʵ|iݵ<҂3-`B$7a?4.ݸz,(Xp?Yo-,L4)kn *zHh%E"`\|n cen=kph lp$l v \Ip: &~$i&Wl@P/mfX9ɓ$yG|BnLms" ²̞}MFktoML c9#Doy;[U$s|Gnx~6Hbpù*E4X )}V&g;P˲KHb. QI籦%r#}֕A,ߝ[ZHqp nl6\u`exQ=+.Wx]Ҵif<O q6;o;F뛇4tPd $!ę‚ ~U: Ӓf2Үec3>ev@$imbߴ+,+̓EwmܴB 1#|WY:}K f @ تTKVPxATfڥ܀$;zH!·$*"B\n x\%r< UPFiOOjX:>W`*SkhInX7qDU\A2x5wO#V3Ȫ=ނVoި#1X]2P[)Csl%y '~Q5Rl8,Ooʩ$nW5`N#In[ڀ.I+zH Yk*H N~?*pkj[~8,;uڨ@$'tcެʫ2)-Rt/32ǟTF,Ae "1&:{UAR2jXĐL\ < (. JHx=}iet6N:>}EL;7:}) A\)7+*j-}a[D~4逽d7 Xe2x?ꄏqh RT g^h*ٲZ sLHy LdɪKǨ= PqAdccjk_a8  XIJF{\¬)m@gX,tO^$2aHenAҀ>TR7LOQ؅\, n>4`#iH D ? O!mȂg@@+`'pb3Cა@pgR8Ji!_Ds@Eb?/jpHsJI3`8bLZvFmvCjyL4sA-qK.KIб hT @\ w\ ꁆ ט> 5 [bCizeqnY{ͪVn)}VTRԅfNRP-<֮g];X /evY}{Mۅv0sn&wm^dȎЭ Ad 6!0zҁ3UK 1GDtw$F?iP-^ryYRfG>?*>`Fz_4Zo[W4n0+56qIЏj@p2ğR$13('kALM. ̡H"nGvy8yXv lOҊ/K1hٕ8R~5h2mp G/N \ڮWS0@3U~$Cs^%+``2_q@ڤ}Eͪ  3P\3N'V t4` HOI7W\٧=ؘWAVbܟ?m9.|?cM wPM0n|M-&w\ y{]3clgHUE2g՗#vg:QWe|Iٱ˂I?x2gi;V|7q(EmWr퓆F3Σ~pCj@L̐$.}FNV\PU1Z3ڣ?@b#s[l{;LA(2JIɒd`I1c5w"rlbnmFS0iހ@@b,rńm" m&@ SH#zaZ-m$DPVNU/1v\A n.rSK7iʭmWgk˭Pl ,ޖ{74VkqTbXDF߂m"jv-;g+:R vtVabwOlP8 7AGb".JJ ~"D;OƤI=MA{q&gKӋ @!;sV3 <;VR};UI"chIm)*m$H`:f$ iS @BONEVg;~U ˸`@#iPfදl`"(nyPhy H*1h,9"@QF}εB;<cVBb$$Gϛq[I{QZ YP1 +h'LT" '8֔dgzPh`3R1آ704Nni@DsЬlHG@GUh Ue9?yG~X[j mN3@KbXǨ"gW2B {|UY( p>°RYOp9P@G&05UUvz㷓1At yLzUCc=C;?Z {K&IYBH^,]Zf B3-:#]pzs`Td7h8*B]H)qg9UB܆{orX01b~fG̶A]( uЫVq#ޱիnWcNI'Ihrݝ'Zء"Lh4ȶVn GKLzB';P-%M⻕ '5@AD͸* KQE 8IkE/ 1<ƅ< Ui7v;vX[wޤμ]tVҾm%b^f'&=|FmFGQfǎZHlYi0K1Zk$ePr'Q*NL#87dUL {ziT mAZUܥ!zץsmhv`q1PA DvQw3b2>}k"CnWTUF͗,03沖m0 >|$Y>u_&Ɔ90U & D~E|M_l9d}B'LyLٴf)ech<5 ?lp83m4"Lsop-/2HĀ>TLm2+$ g|PI뚨+HXGl4?4\Ա@!wRʪ*[ &-RM #,(9gDTVm"USt?$EBv, 77!Pv)@yBq@C4@L$wY d@f$48>rWq9'0"J %Cl۸ 9;grA;?J,x'FOib3^^Hf׭P b@ Q=G=V )*Csm$UsJ"X~ x  z̾RH9A:bpsT̫mUb>&aZl*ĉ:(K)Ǖ'+cxQĉ'Lt-|8Yl]! MEͻz2ĶH,w,>ȤQUߊN0|>u&zddUAW2}?G|ňs6 O`ῤ$4O[ְD&ɰ qn¢bwm3̊"[uR {ER)kc9y hR2s}ꘗ*ˍ>h5-[2 NL{PY}@ohT~&km1T)p%Ff<:WU<:ݜgvi MZK` ̵f(;ݽ-aOXd~fn# pe1okJE;AeS˜G' 0Qr&Pʒ"0TAoMږeh* V Vr6mgi4;vmFuC?R#9u^G`\62 E5<}/W"8ޓi  qv&Q A+ k?ds_opr?+l9'pY#` OϏ1-lhx:[rs˸GnGj%ѰRa"8ccکݺFM[~M#}Vn. T*N}*1$B|8XRw)?z{P[6(]d1;K%ӗ0 ~shoX Xgz(Wm4vܤ!$ZjӐ9P51ddAlFq *i~t k{GX0=҆R%&RÞb>CĐNhwS!${P[c' Nʑ8jeeYVs> ;H$u[ Y?B/hq^ KcSnv"guvyvcvP?/IJ1=P꺟E͇}@]nљ6ږUT*-PPNr =?Z lh4PY0G^(w7m.3[?b9*P?[%CmCC8:X qm\B?: h72,duPrɐDފݰ A$ cF:Mh\37 1;+f` wsZvt%},[p8W/\wb<[klAj 3 WCYq `\XFƨcAV;'d\ GLXTv؄=zgy lA 1hWZڌ X"-m}`. #\A$T8": M-13;NBc~tYMF |kٵsz["m*~΁3v8@GbPH Қ~YRH2ʀà&Yձ,p@F(tl5o˶Uf[m ΖkB,gO9?ښ<:fYU =3+>L!zͷrȪaK*0i*[+*]bxi MEi!Cʘ z}4_(xia[p9kȄ>?.+#-BF}p<߬M$u:8,!j$2Q^hj߯DP (+R5ǐ0Ɋ:ZUeOE,F+r3jq~Zfi6b Tq8X950J1GN$7R|4piҬ4I$d?*P I$zu(p`wp`1+9$('GjO };g`c?fǩ`bͲb ` rAHmp9ⷯj`OjA<F*#~?: YEوEI9U,K6ˉ'?.:Va BADϺ ?\UncadqMWƣ6HPbOӞ=ZkPfwqZœ^Gj7 ݨ3⍾H>}(dža' ҦaLq=>TՂ$?UEbc|kF ⸙⁽Wěj2=Cf͵`n`I}qkr *ѶQH7H$dۙv]J6mr^@ąߐMa4Hd>uvja6vVk dP>={[kOf',V)eAWB+46X,]-V-n}N8Rqt-YT NKn4 "b Fa`uz;im NLu+:{,`|wN/G?94ocq 2HX8#xn fEy^ ,A>\3#@psW1R屽}Db}-pXy:P00{ Ȉ#x${Q'pG$wE}OQkHv<ՃYg5YQq8S%EJ];#e.*ZagJ2in!Qc=CE, Aqm'ƣyX9$Nc@++b2$n>85P=ڢOquغ39Q@Bchc2ޙ8$n;o &⛭*#`#Aob 9 恀vh*3oV]w AW+ނ's]EyQ * [/tnv9 +,/^&OHDGvuXd!p;3-e'Qn\h vK+[qi GӽYY--8"vڽfݲd[2ݾUVlܸ<бK~oYed5p-| z kْ ԟjTwḿs9Vo=5tmAuLNXv];(pJcV։ mm(ۂ"p:^]H=0K >VǑaQ-#A#ݺm2{=8/I*rfH&`OIj)m\[ wzPDӽ׷q,}a@Ӌ^BՋ+2DI{s&T}v*C+{RKd%,`Վ s V[k" }t&aRmv+0@]o"#>} +7o"*޹DG=IPl^@!{6;Ь?oQl1Kl۾Sps~G}H'ځf,evڣ EZyڪ]sEüQ&p&iw-P=qy=*!ъ{JpK/~{] }m7bsPz2VB7٘( >gklݙm6ɒs‚Eڶp Tmn׊ݢ-QCؾc>#zPmZ>WF;?jͭJr#;Dj< gwwb _P.nF9bx2>p"*)*A>=;Ug,3,ux+Z􃴬F9zzsAskZJ0{uZtmW  .vk!6y| [,u@[w-WnzCT7.@{f8* t}hZfӢS|\>3'Ӷى'yb}:=ŶH$Ap߻]̓k/)>MZY83nõiH~w{VGblsX QۂHLa@F[NE.\P\!h쫴}ƚqʚrƨZݷ):%RJ wW&ˁe!=[Z{a}*j1"$|TYDP ȭcX>՛{$A,Y,F+Lb#ZPb֛FF(-FiEhMUm^,u&|+~]X ]x&U Qf i+ue`8.[W] GUf=@{&Hێ(_(X9gˍHsVC)YCjݔcu2~5ultmfGTіS [Ҁ},Ӧ+aT *ނQ'Y&,9'9\ =j]$܎DKoFb'hQm<XL`}g *Hr<}*ri N G4`0>ݿӱ7gfijFǙܣA0:#6DGjT4+h7uM']uv%DW6,DGٰmΞmd_W6?YqFeTju{VȼjTz=>4c 5P&PTl1^X^/L;lXz7-noa4Bap@m+ mL+j#[津@yZ+s [ w`15Vt*AGqKX]qP">M ʺ} z0 iV@2:tHsMEN4I<sLv  :Mϲ.8'iR:H>vP3Y$\s3U+pyW R2 㸬)d/i.%ḨY-f3zJ<0cM?ⲢޞEO-H1ӿJ5P M{$DuSkhP0,;5~{ޥd`~Uv4a0$N³{6~ub ͧiKw9*z($,r=#GOڂ.)Ģ TcEp;@˥$l{7 Jn T8f=T jm[qePHw+/ H&(%oeQ^vF֍KꩆQaR*-FIɚ#,(w`ڇm%$Ā}l ۵,d(^X{w$[a"P~J +[f;$n֮9m#]@(D'ްu^\\E2Qd"gPn0n֙``ɞrm;r E+$ă=͡$*kHv'ޚv@4vY]ǠL5հ8KN4\Rm 5pZ[dV0©MH)WRKjTu6bhXtQ 4 35͸ V=+{i85ґ"jݛh=^bu(5c4xQ{T`:ǚ~EZ TsH3g\Nz96M ޴9C_=)x֘K۫غIBMPP.'$E{'&wZ9&{VCk ,~MĽe7mAf)spZTKPn =ѕY²Tbܙ;]Dlk7>یH~T$UkLހnp94,,gC7hn>v\rvг cwΈS8#A:{Ͷ{qRPn¤Yu31ň Vge",tGj.[qߓTl#B2n8➰ጇ%r8]vWd pWe2ぅQm +nЖWҪn[V$3('hG~Tݻ63sDʨ,0sLi[iN<1A񬵅[ً 0g4liB.DEj^*Nضu'N_`* mU&w@EymmrDa#3󬭿3(g$nj5:Zo[II[s##]9z2U9P/nUPvbV+lܗP2|}5}:k,g(F.ļ0-Ļ$*mҠV1Zn"WQia" :~uMaVu6 A=hXtv4bk{'4=YAo@D1Nhb]KXm CGs5{L.[@K N폀m35dY3l baWR{7@3㉑OIJ*][`oJ_6\+mclЖU\,eG1DbI+1AQ mMӰ (kg*"lZ?Hg޳W >WKk =ASnj)Y,&CTVgqXR(W˽ΫD`, Sp`*͂FC|*GRX^HW߉Hk9jJZ]yڛ󬃽*<WmDAln*Oi;Lr0#7YWn>R hHMcj ngmor|LQwRn\kEBfg=*=3a*(k(Κ{@}ɂ1qʇ9 8\p70>m=·;Z18R'^I.q@,ZZg!|TۛPͫ`nʫ'BWkD 8knyd35!.2[ЫA?Zu"*zۂ c*7% 1_9 6A*nYF-Gx&*1tY] :U.סCX{ fF ʻ]w<*%ij*sI u=U k1\u޴un+@G38 m-bO BfN"jz1ӘK[09RGc\[Wm[Pʃq ݤfddX ג]yy?SNmʂ&{gAu6ǨĎ(hkFE.f9%A9d֯5f-i٤(3Έ^nr@T2@Țݲ乸ޣ`֔uDl)~CB9^V]{"ęa0{w@ؾ.o$ۨ@ກÕ%?oCʥ̸AOlPԻ-I;.,h"n􈎝|\͢Bc1ʅZX  U5Ĵ aj}AmdUA Եw{w128.m0h@;zեo{!Acrl^ʙ\mc&k60b#1Z{w|EE m|.C7V*ؓzN(vu=6\4m#ET-rJmE !ON*jw t~[_nV' 阶vr? cw 00 <[mSYG*O_ir5a],.]M=`q̊:7vybU-;G1*ZnfEb]]a]z{ .Y7Y.:x3-x ْy.l.rߨaȞo%CU5 !R'"[#G׌V4o0@۲bߏP( ~ÒI?!.=#Y]@Pyk dyT i Q&x.ܿ &c3+,ld??jqmFۥ{ { Z[JHdHѹmmhdcaeJ -x[ջvQla{ *~8DkvY_4 DC m"İ[V .rL(Wuv0Qc?*!J;y>hf{VT ߷:[ͲT{P,%bP4"1lbCFEŲn 7b`frӷ JZT.C8y^n堲Hdߟ9:B"Gj-qN?*nX}?XVq(.an9vȏ4PZͱ (9egVB@]emThhh"H5 B}( Sfi|UPٸ^K zrdVԟ4ܸ-0 gp̵HY4313\ۋn閳?4lX@킪E F0fh+zGGDKsk~j]]"<@[Er kq/\71 >S"Ӌmhힳފg 00y][:PY!gL廛핻u|AٌMUg޾dq@Ay.;U  Ȓ#3Ujj+&9?bԽ, 6'L? ޒś6-@+ M[+`[n)t=VZ͡@c4=5y6 $_3[wمvc/9']U{RYO푓D[~ˍe "#0rս1<2-\{ŔͲ 3@z۷t`H;AǷQL3y;²ٻk{]A p>3ϵbƙ|:V}O\6!zwݴ)mH6ш爪]C^mJn>`X%$FjPp[N >NwsXdمS< Pu_1"XǽOeLt֭ʂRD73hĔT~u6L}8j4Kuvp[#? ңh-+qo"BiQ L \$N giVWZ=%$hמ;z0"Y:Eb B L~{.ׂy4 8`v)/'78s]dڅ{HZg|?rEnȅwcN+i\-c `b{⺞BY[7Q9u]B.Gឞ d̆= Kkd8+@%NgD5kv݀W [b 'Jh A 8Tn؊WuAѼ`7\gʾc^Rr )'Tn^Ye*ʼn 8q5LEho'1GP\WrR--"\m<揧۹`H(,-޻jR,\<'΃6]ԛ(Ӳw8+e[jvὴoPw)1>r +th0\ O楕KDR.N&|Z{`""{WlY.?aYQW{AIݸǷ´uݟꡲ#r9m޷m1EQxuX[s qKU`" މ%uCb!gJ@KҭkdZV;݋U6`ʾü9}?-kdߎ{{Я/}Զ_R:j NJe7FE]a*%Ifjy=1Lpg4K[k IOYW/fߣBGTX$GלP*7M`GJO`5 ӻ ^jmڷuA% {VŻ -hG3ްG|wP8Ys%n|(3qCftI$tnﶤ[w2D-K~.vAp7o1ǿZ[*>2FOҫi[d0M'sNϪ_, S\)tqЖeI鏅 T[*->J_gq!Hi57/-׶4%َMvޢAl `O64(!:jƾ_oit )Zk:K!m 4Sl Y_3#08Ȭ.cp-`tudl!xP\kw(@PȔ3'@wRbTXc<.4G;tsb۶l+r G5v9Qw$sPJEE^ XQAfkG_^iq78U )ơYƒm;TF8J).\mX[sLkQvY" O 6Aӎ+-pNMߴP¹z %/iiB/4bik\֗'{5\hw/֗{A4ZcC&RփP(M9PV")٧R7NM+CXh)YQ@"@+@@Q(4zMc-mi2ݶ!Y%Wf_tG7z`ey?jԋL[P$փ;%zVQK(sTs"mdۻi B/s?Hb7jmZssZ[{ܲFM\^o  7/.kO5inKn{Jag,jMID ]rw؍ ]ԪQtګvGhuʖC|p tG[>Q2YT{P.]-3V8$KmZh$3.Y >VОiUPB* =εvodɲ6%F{dT6@a&5l?얰m*wm=DVm6<͸S4qŋ[W'vC+y;nXY.fƒ,30yn6Uc7/Ym˩ @6ۼx$11 pdtg(lIDHV#[!Q9h^AWCu4  o0%LGykm}0@ՖU[n +c+uZsNB% Vƕ[7.L1').jjLr$pz{RzWLّb 8U&|$+v7Zݪ,=.%Yr>ttb+ :Kup.s onCr=rۑN6o ~rk[x"e2۹b1aްK8Gz.5ּ-2YU+ya0q\k=u-$@evZk6VݶN&G^#sN `rD4-˥\YHyX_ˇX3 a ŷc1۷ʃj b39Ylb"|EΌgڈ z0&y1UwJغ i=}SyD+l[FF0smnꕔ'u,"\n)Cr"zAU2ON: L]py$*YLKɷ d|;MͰK,A9uظmm9`}-߾$D*R[ ~foQw[+mဠ|O4 O2ɶ ,R:K&+6 +Ze["^6Չ";U5*[{7,H(*KI jP*3 Cpz@8UljŰ"x={*`)c@G PvpKX*-n@9VPۺh+$ KkHRٷ A#=o6BظC6f{ ]dpv $vJ:AMJ%+v=?٢ݸqAbۿƒW5ZE'A!&wGcUBl'qTH8V'kN9"&Vn;1%ˤ>8v\E-&BYg͗KQvb+OXt{ Wsl1q'ܽi-HjŹA͒>Tא鵎`%úqo5#꺈C wtrqpeեݻbHN:'E~Vi#5nk),Lq@RµZ$߳}5*DxeK0PY{hvĜ Zqe9PbJ%-i_qC֖#-H8]EW.K)AGozšmj"\϶9jWŞJzO `C9}jҺ\q!j74\Uwk2z:k.ͥ14d:sTu #9RWz'7YC 'nآ-jK"YC.R-]{D^ pqJƜYue*,f(AL+7#7d3+oj=胰.ƶh^-^Vb*('1Cf:;%ƴ r=N YïI۹Dq{n\[ Ai'w_2Ҳ(77bFb.۲Rz$Au"6.z$zZl.miZm>oP0UDɐDZơN[>j`01v"˄n_$m@A;]Y>`FTvAZjRʷ?F;Z hHZL׭:%N>tk<7zrATt4_7n--ic"=\iڷxfְpOʸo- E D]D"A}{޲uULqOj/b&7Iݚ\PPh`5&ddQ* ȫZb4р~HPMZk3[ ։欮P`ʵT(5[1T _ӮL+խ˗6Թ#ۤW1;`#WmHX ?RzԭbݑkѶ-Zy"rq{e](Qzʥֵ!Dֳzջo;p1QXӭ/]}1 yڭmjeml=bkiuVah]ttluEABym.%2(=砥غpFVLuI ,׃fq3q5=*K3،ZKyHfC i*3ٶ4ɲE.鑟j͑f_Ԍn> }sM}෩U#|,ړmwwVeGQ=iV(Bw$qUŧX~Yz;Wܤ&ޖӧ-B>TC i FC"8׎X[b G¼\+A^ޮm_04ֵ'R>bm7ƀ ȻpY-@Շ6m,l_bx>O\PHsφXʶ2';jiÎ[ʈm3k&(q|{ňKVX/# ~㷵Efc[wvmR+!/ˊwA =lsSi-ͳk3SVi[]$ :C*Df/kujisn[2J#Fj/\-'`+#qBm,5_R\KLHQ _sVBh7-Ӌs;!Fk G `^ںRںnz,OqE5]=Tʝ'Fl g?Zc+ۈ·ol}cSrYwue`=0P}j-3 U'k?6e9${U%5ȷp@E J#(.^քrA(z|rn$+Ѵ'ɧV0׽RK]8{gʵtk7lIX PX@jtMXusn@(}3jeSrKh=RIetړi+mz j,Z(hN /:Pp~;W~z6@ L-3mvVڭ#Q*ONh. A-Hz:T"ڋk|ws''qGC TY?MM"F=ր:ͺrԺcsTuO!=*OAU\eEL/,A(:B[gNog#ղ΁m\ /0bnc(ZLW`[pFa 3ٺ9n25=¸wp##i_[`!lY X$MBn}9[H'3€XwYܑ( c5ڵq-WVUG#"ןo ݪoTۄ&ݧc9B[(r:aĜ f' P\"VQ@jSi7xbIykAf42jɬ URk5b5u@j)sV$N*PORsRjYw 2~4  abDҾft0}]= ɐvɭ#8dn+ֽ4rDRrwEQ2+ <'NA%}D &0>U:fo/ɴhWqWb߽wub!0L@jF̴;Lc[DZ\kZQq>Z0:WĚtr% 1Uup@3._FZK;fk)d(Cb߿l(Uu;AۇCGǽMpet;GJŽٴLIiV?^*mU*|$H:V35d=MuP-]KM/3Z ԫ*'*ȻmZSh#sgPfՄ[X8Dd@qsOΛ`tWTٴшUI|^eT+{<&72GĞg\ vޱRۑ1Ԟ73aZ >oi̲"7|o([fb\cjvZD>p ˚ mBŔUAQh֛ndvx䎴2Uˡ t:{.74Ӵ =6խ Ṫzk@XߴP 7&C-no.|m Q {b zEڻtUXkL陂 `@ 2IʃiMS)q)֭^.Ev8ނ 7^e,_;݇4CnKJ{- g ䷭[.*v,'m7PE է.!#J@zWB*:r~Rw=2ۻ(j45˖(JVkEF:ҳ~ޝlc$4yϷBRHR 'I'!\(@~L N)-Z{n >5PmZHOB[?0kX*ͭ#!#rb*ն-]!jEi-.=MnM[ sn^njY67PќJ^ (؞;XHAR֜j71booԻD,Ի_/Jꐩq׼еWmmnߘy oX5+cnйۈ8mkn߹`0  \/p\(.,!+AOn[mə+I}D 2dήyvYї%mny>Շrи9pýڸ6ɂcoLړd(ZmE=]7&I=ֈn:=>w|GAGBT*Y68( QrސTEZklq45zT/\ mMl#{Q)Gg7%*C@آۆFyWMnnӆFRr~}4ę>5G f*A,#'hW_]M}QFcTMn }C>t,e9#Dv[SJVkJRp+鞇kﶝE,[ P%E%jSqK,GTS6MԪ1LgS5k`g5W6Um\b˯v J۱em*[;QXzݻAm%1Ym?0K m~[=s| HlPUױbePi!$x5dQB{OŻ<]>EܼUT4zqڃI|Ҡˎ(WiJv ߊfUkŭU@=*jn!KΠq82 Y`۳m쐠d$K%ZIDATxivcǑ6y'#1 RHChP^Y x (rn/?TUn*NQPI"}y޼OB4qB" _xsifSіRRk/^xwƨT* ˲B/6j4MRrdID%!Ħ?jifC4 mFQJIRʖyz)(LDmZ?W*a 0Avww7zZֽ(ؔR-)΃~rܰm[y!ޚ/!D΃ZmE)%QoY杌}cqqYE|r1in[ ɘyÂ˾bjaYGCqAВR>3,..6M0DT4 A[aCZm ! PDD?V "ET*mkaM$۶4MBPף^ojjH$BmS$)nK붶>"W*H$b6ٶMPߧ~O\m~nZa6ARJ< !?ږRnz޾L.ˆa4\,Kϋ5vw@\Df28F0 v˗:w\.Ybf0eYD4M("m}huD6Ms/^<T*iBADE47$\{h_ٟP4 ~IZDDM!IJa "jQ-<6 cE%@DD[RՇCz}Ua"0n;,jeY+a4 !}<]^^Rk~(T ˲F1 r%Iv/%!s˲iidYYEdfff(Rݦtww +J4 q?P&B@noou] ޽!jaeYpbdYu] t0}r0Ms4͢RNt¼DDjqضMQ$! VKSVKeqwzy}*jӶU˲q(I)u]z.}~{gg^`zX3 CiFO؆j$X,T?m4sn>*ʪeY+e@ ʁ(aׅZZZڰmFu)}z}-Il@>oЌFe-cュ 6}߿_ZZ*s_"dJF;M"ZU.V߫QUE> w;H Za+!$U"ZO_XXh:jeY:8 !u]PI޽zD-h4JQuݏ_~}/_Wm~n۶sUӗ/_ޛjm7 E>PmWW.ms\ﷄD~ZnDDu]#)&ZM/..`[=`Pn^xq/6\.)$A@a4 %f<4#P6#V8CTj@}r}}M777y&m)񥥥54W:5_|*@eӗ/_ kx."?eYU䛔LӤT*E777tqqA^Q*!(*ml.+CWZ-Ɖx,>iAl*Ҹ [%_󼶔򃾁*l:55/ih<[^`DѨxj]kwwji>ǞR8455EBlۦ#:==?W˯-*LMMQ:sDR* ABqP9CXL'@-|-PѶcc ۀ;}O<$d!zjsX2 )l%"cl6KB\ץ o`)ٕ~QB{G`g>ݑyӽaeY)d@@ʩkB _(6mNq5 C|H$?I6s:8s{</ ?y]]]e5:8sgkHx<3TcY@Vf{'''׿Rlޘ"@/F8eYt{{K^ I)ScjZrk۶Spt>#J&zD" `"j /}kZɶ455EDo{"Є)$lt>|jD"۶]E飏>"G;~)eP(ԲX{_ɻ6p^û%Iڇ|za8oeQ<tN |~Hds{BLCHI)rN3T*Giڶ%Ib455πB> c JD"H$T(hvv,b1F{;?dңG~/XmHBx<5gff~[(xQ.W-Z# eYma50L?=i_"ζmr#rZ No2/Ǐgv ^Tre2J&[c=zL&X|'^izz\M[ f^Œi_$"d7w]q<(Eo^F"O` $I(  ED_=zhzvvv03,,,4":ӌD")<)4;;KLFDkRʯ6VmLMM}(iL&)j{h6ǀ)\OUvD ~vjjj u>IJYaǏ>|}>4Lt}}߸طV,sc>}:֝/0BƝ_)bǏ)hXQ,933SS6h_5M9/Ź/.JP5))I)* ݣI?YX,Fd|ߧ,(F.2i5=zHN_DUmS" "JE.Ɓ'W{L&)N#!Rp,8mjG$^𿰋P!!' JR裏v*"aynx 4<F@@l\3tONN>k`=01_#)%EQz=Txrr2V 277d2IL٬&;4ɐd4{w')e*N&azɲiJRH$hjj ~u5 {wwGH)t?NOOCG/cAvXo4u6jlNzBP<;-'8DAsXA2>}.fffhnnNw08QCf$rzX,X>Rʚ8. 177;U8`\,e2JR4==φ8cl6;V8??_,Zu4 dd}1 P.W#WpxI&ɉ~Ct:OqeHD0.//dY{jT6>99;8_g2R<'"OFP hnnnWb1}a*[" 8WF433CtZ@L$/7 L$H$ Q "8}iW|ay9 fcDD}D<ùG0twwG.e2m HI)"%ƣGHADBnb}_oFJJxXSm?3cD\>4)ܜrgVrܟzޘڈFũ)fqJ& 3Lgb>3t:PkP7h3Hh_*"q~t]G 簾 Wa BPP}f6 j?F"/CPSÄ7 #EDc?w L9aEԈ?sssi+yɕiH$(R"+ % 5)X$lR)v姙LNNNŴ2K/r8I5%uj;^ N`T<Acɓ'M˲~re8[ ڔD7E."l,X(~{=1zfff(`LiGm"d2I=9 REկ~E?i-Kzv~%i"Üd 4 .ћ7ofK dH `5 )z=mgFY.CKM|~"T*FOonnnoo0 اχ߆nv833CR8)z=-yJR?%{5C|0wAPRDsss477GBAg``0H^ zٶMt?~L| %IBr#er,v4}T,)jov~0۶AhJ)hzzfgg4HP ;?Q^?,/S-C`YTB?3@DED鴶Z|j?Je5\sAz ǵ\cRY5Msgu Oxfgg)NlJyЅgH$Ũ1h"4͕q߿V:LXvDD5x4A777ݮ&L\T*cB !(5y#"MٶM_~_Szj L,b1z1J%d2O GQX8L NjsssT*(i8T(hnn5 .W7x%#|o +(;|I=PכA:4j$YG)0#د*`/zF< AVxG̲eCoFu]2 )Z~[ƕC d=47` M"Z3n;==C]"ʖ_'amPmZa3%"}N7 }?1D<t||Aֿ\.4od p~~K$ h(`YV0bhdjjJKAriFZ9ʍq "Zs#˛Ituu5@,c UN<$[ךjIMҁ àkPnA C@o{333dP! ;x !V`٬/I| }433! -B<emcai1}yyBOD T*E  :48`a :&GX\]]1奮絲aضMd>czI)u~Y`e30 JRfYJgɓa0Ѩ&z f| 0î?o&:ˎfWBbZ4\H߿Znض]l Kii6aO<:Nu;58Pu!?;;8 ®@=.n"Wd^...VL%駟B |GNrB&J{M<$)@=z E"}SgqG7o2, }4=zH#Xzaa!w/?zfggu5D*[Q|H~HL&C/(RZy,cיK/j-G>ZD<D" AG6 v5b:mAmbYiJR0 z8Pg=_x9&7M9[ r`BP*(}8==~MaZciXFQ ΨjbX)HP6Hp1fY8~Y{>E7N[ \c30D`K`#OB^Ikg or{W##,J_~_i% TجgMᅡ6'bH$Sx& NA&芏ͫ1j q,MOOlxo޼#:<<駟] ss1o! ‰H_y`q{{uϧS!0 CBJDW!IJIo޼trrBnwpc~3_((JiC à'O4Ri8Õ)j4NS.ӷ_ P B_qk䄾;ZMP|>? B g?///₦tvH;aɞL&o𐎏舎ŅE Ec-s.=( dY&z uy kB`%AP#/˺N*%@rxqqm.F002 nhIdR;6^(:=x`fw{ڶ ` ~4:Q 6Y!Q8\Ӻ2w\ 8h2 [uݮV 5MB[yum%Aˑ YJ%TBZm`_AҍzffF~R( `4" w]ץYNGwh7 7a}wt~~G}+l=q mO>d$ `fɎd2It{{KDfgg]_x!3rjiii l֘(kԉ( FN ! ضmc:>> jǭp_}dRMq $@7llz}ܯeht#(ߨ 0 e:yFρ+#Fa*.߬ϵ `2 %g{W*eYEdAsYY0LDDZ.K~ѨsȢ.@ͿAD#Buog?z5gG|en?c}|~ʇ8Eb4%sֽP٧m+Q}@Fum8cX[wX4͑ ?L&)ϓaZ®[W!B6`9/ i?TqhvzssO<, ?/ 0aizzݮ@| oş'4׿4*7OVA,;$ LP~d(R>SMxf2MvضM~_,, "9Gg裏t6 d:#?ussCDmU\.^O QA 4J@&5M%lBՆG&$eAkU(Fo``TF \[SCJYBm.onnLTA^aaް+(DЉl#' y\zkF:m7퇜8Lj> {7 )VhD)XZH\]]nF Q 2D]~Io}}y8ND:?LJtjIf4 L{lhh?%H{q XJ4(S2g.Ob!կJ_Z[HJ1(b@֐7,2>/`a Y9DDk}Pچ겐Du9TwN!a?'FyAP-,BYBD4;;P8MD 0]"Х0Dߓ+p φQ|Io}H)u)EJ&oRz>_04WTJ█4D˭̓B m+yM''~ A։)4Q!ED;2`S,jKyEJItqqםΌ^]^tt_^  o?3ҷW͟.M&t}}MXLD" М |㔢Ѩ.y6!"]5@lSTiLm3|A` X91C}(?%=x)T@@}"f_*[fggu3R $OS0R'Ot MOO_4J ֔`Ri,[3b"k ~@PRaZ| ,"Bi@@a`noob> 8x:? !D5_Dq'|o|F~Z?A cS|dx_3ʐR &"i/D^́j GEL&C\NgW`X 2wG dzQ &(C4хAÌԼ"~{D"tyyIZu5A0V >]__E#}\8i@K)ǏS*yX4i 0/bN!]G%K*@x[XS]w]"Q5+ porY#' G >!|žB@ ?{ԿR6xh4:6$78WQ6n8q=c)/?AƑ%4}WaWE7|l Pf}ב}0~x,p haoZytrr2\>~"[I"ёu2D|֋_Y(훛"/gd2ڶ#\u~1o޼,APyb {k|cb@.yp&X/\.7,ZƹOGBw@1PFpgσo>@'?R'yY>Au88߫~8CT*ca`T<{/H$(S4եfHJ i] C-oK1`N|*d`H: n$l]#P|W ~deqHАKjG  R8B|0` 0?ivxck @ CB" d...tkr<+1!ѫW~l !Aj Zv& 'c}ix0*P G/@j)`d2a2<8s. HeQG7迂&> ~ i~~EX@b@}3ϐF4 wh=IC7/~zR ʊkќE#a4݆G]عj'HBS{R39HewYųp9D"vu!"|$ | nQ7BAs8JGDyަMN'%L$th i( ;!(Ź5@ٙnfYV2?W.amh$P|p v 7L!D,{S@46ƞF(xz;3P Q\p{mH=@gl4~%^ `KJ̯6o8ƙu !a^.5{qh-F@p+1&*m.kD F0`pϿpszQ SGT*H`%ف/x`, qPtDͯ?> 8| "P#2T"!D /70JDlLN\ y>~V\1xA^_5Ms;vX,$.= #R`5Ozקc-GB !\D~#<ca/r sA0R3Vo&:p$cw#"ns1P!]^^}?.!J A 5迁 ` ֞HBvEWWWdY m1?9򒉡Qu 8({}?T >hu!N107 vW( `y=şiM}|rwwf`~BUDD DD ԇ kͤ#A7&_/wBJ!L;jd {$^NOO5)ȂQ U!t=HM3e+|Q R.AM9b ex(Q v\BIX 6= ~o·@GD"Att֜)G_ | p%| luot9q~jm˿NnpTj9EPKxv˿9Q۞=.MMMݝn6zuuKO{rDDQ~Y;@ yXhRdogG{zz Wjp'dA#ٟׯ_j60A]0(P ' t$˗/~<>q7/qvߥx'stG1=0A _dZLa :hfL9J7CӚN } h wבCA%4hd>/՟#ۚN!A֛7 AQP;;;%͞}e(~*nt3NpF=ϣL&%S'x"j/2^ht3LȎ*BlbP;gN˵G (]ҝNGl%p\5jȆ9:??8AI 72Msdwř@fǨ vww7re4qb+R&6Y0 h[R<#L r?{NoJDj (Qฮn {npuԃ@/}t6<3]< 3෷dV:3?0J:(s,P!uuO19 xbEp eHWkHZ6xt3A PSv( ق]{Q ԺD@y]3vvV}d ;ɉN@!i$뺛iyS > p/JF%@Z^ O,G/$<R4?W@zvvFQ6;~PCQY}l%ؗ 7kF:AG: \= 5退S=&@p`oo/hN^p |q&dB̿C!>Hv7fদ0ymqtÔuG{^Ei?_$vwwjZKJ4@`pp`8?"/_nV*v$)"4>@755EK@W^>쳁 $$vCSVo˗#_ry&,>gVaǼ0Ȁq} >.\!ƺ+G. lVV{&C`rwS;3Ч@#>B]P@> 4+G  6$HhQ(4цsq(jYr9 T0Lk0"@]!G&WaP0ɁHp2ƒɤ$b˗aH_E  ,nKW{05R Xa(8rz<@htyvv +0!e 6-Zx?mxiyҒ*(.DŽ2v}hT9HZ\\\w]w]}@KlJ*g}FCl{(-KqB@J)7`slq0Lgggw?'aMl+-"0昞|: Vnt:o^+nX"E=hb#&n섚ﷄ+C8 {~֐" sT^z* u:7<}e  LD3r  N sI4M]ίzTgl(Q`quan\vB׿  UiY֖aM\zqq{؇tЈk je2W8)^f<:WRʭQ{pEDZd_4Չ5!)gD $0J"G̀ou0Vi ޕA Sr] }kwww$Mlb1] 4?O&~%VG%}< U= ]B6 O1C 8ZK"N$Л7J˟0'?`lNA tlY8鳏GsUyn~-9z:5B}W:g{{{aǚ"K 9ցfG^݃jR#~ݚZ-E+* C@m۶P5AA;ȯtuX~ @a`zVi0DTDC ^ #[z'z@21- eY;|:j @U<׀R49;n˗}q 83Mjq-{$"QރH`u\+p2Ji[ Sŋk}Yqeرn;@~5Ҡ7I=;;Ӎ€OW^mV*u۶W!(O7@2 J\ y%Ȅ,Ldwwwuqqif3w::==~4Ѵ=} oA%8Rl]I62h8?t`> [ySLv'zh !: Ǜrf'0?B|M!7𣏕H$O+@2 eY܏hrX dxKD'ay-VP^s(xJ^uݑ1ЫW6@P;$ G;;;kKKKM0ɤV|#A~X l¬˗/ڎQeS!U7L 7 ,c?\a> ! `xA?8w/IBB"bp9w⏟lVחMl@~0d\ٯ2q_6j~5Q\?r||Q[o !i䝸y ̉ ͧ~|>a<<!EFaQBD@l<-˲#I#`0ƫWeY04Ȅ`.8|μ"N{˗-`6!BV B"/ς xl@7wBpJ0Ɵm#zs5X Aa1 Y@~-! y^{r;u$5Z(=Tv+<[mts m|.-rON|0L>NOD$xs.C A7Bo{{{>e+@*hWWWZƃd M5[-۶7E_;" sqqe \]% ۶cyt@s[;;;c"!bdlAb{{{;4?(˟>v)Л7o}cA?ƾF / ElbmiE4 2 l 2P3LիWZ~6`n@]g]a?uW5ttt1ǣ\~Za^:T*R <wFY&7 e=-Tbff:(YW xJDT!"vޛmGqbZky->K5('Ƌ/}نn0>1FЇ_ys* (Gd# GUbx5MVXk8muW*uR }y؟'= =m(3 /~3RnSg]Z333{B&0+C w%k xq||f f=Aitox?<_3MF}#.wͯӣx"\.w)ԝ<7k=k !~;.ْRp#YgT-12L0B@f5ƕ;ۿgˣV. !jp 䎼-uWC}v. <5{Wly7/ B4˯D)u]-?DFR/þ?Q>o !a`zzZ4Bȸ5`_\ i4hpԢCu zT DDm4Dz,{}qր(˵M A&2tvvF''':s;{{^Q{ffmI PL0H?'&z{s,ҍ1M9_ǵjYU|o H?v:޿\v:V&Sf?aUpmۙLOi {pu6qvaYV _ _{'Q{p=0HGoQ}˽qd2a4ACv5g󼧝Ng,s||=rHt#2nkooǙfkwok gR8 \.n x< ·Z`P?B/xdb@5N6(ߚBy*ߜO+weٮiͩO~@m~>R[ࣣ\.WD"5aμ)rc;Ͱ^(AԤ)ޘ p]w9.zVPkpȹe*};|߯167'0??Ng58>>n "dWиG}l6%yp2Lʠ.u%\=::{& /j9z^>NNN.5k07Cgoqz? |>eFö"mAD# |ݱ^: bJxg=UgXaEo_\\[nt󤱜/vm`P@YA(!l >w翴mL&P(Ч~J?t:>C'[rvv <䭬y(h7Y45xvQD[pP(|D@Ͷga7?|oapUIZkgglPӹ<>>c.yH]ӉkPyCB|{D>t:V6S{׸ I訕ݝR<ۈYö_%P~KY Vcᰓv.AGY]Wep"\.ED_Q7#!y޺_www 7hri0l*DQnoohN! |vv0~eȾ{`/I)&#r>\'"d2[Bd8˛|'ahU/^̽Nֲ-sugSƶGGG\<ل7"|_}oPa|/nao\"˛;Fv?صZm3.sI׃ X=ϰavshN,b}{{{,(ZQӲ"< FBJМ 4i6;/(A >AR)YaY2H9m4mKIa>Z|]q[oQkߴ,k_ęGu-..6LW5ޡw R~sokPJiw(!P{YJio - нZfY 2||p<@ W^`;DVx7"Y^n^ϷR {ɶh1̌!p<؃Vomoo7>t~ VYmo}z70LRĽzaYVgy k٠Raqm1 UTKKKm?|:`%CRgq@ZmضD\cI?G|N>Gr>O;y X,@`QJٴ,$XVYwJR2 iY2ԜE"R[ <+ !>4޷amþѦaݽݛmosa;}^oڶ ‹^AXbxqE{TϛϷ;T*a+R&sJea_YĿ

oe~"M/Z\\\5 9nK2:#zkcl^A 9>DݵvvvC5^#D^ ~d-41̯ EDFԘ/ghj6n1??p(D FqQTksݭ5*ʚ8M˲8C^yU5˲V {Ke~"?"jfe;Nu7?:>?D6 cMy ۶xCCJ^Gk4qπOUՒQB X6M!, !<|s^ob+@iarѓ'OJBZ M۶X5ròAoq[Je0 (16 _V[B<7MMog;͟ tjaU |X\\lJ),j2<;o * !A5wKXsRʶB)@kޖRݟ?IDATxirY-|"n ࠀD)UY@[ [ t^@u.@.I)feU[e%}?~3R~xd~q;nv܎q;nv܎q;nv܎q;nv܎q;n!M B^Q$I,yY]ybi3$I9쵵51f2ƪ<\ϋ)˲yގyc {E1eY>vŋ5Gٶ ˲6^z.(UUU 9<{皛弢($UeY>9o_^^j^y^s9_*LYM%I:z瘟Rd*Re﹮{&<|||Q*,sѣG`=UẊyyuw_|Yo0lۮ󲶶fwpp?~VP(TUUVgluuPs]vxxQ.ß|hJi9{Æ 늢*|s*cJ8sw=P,,W8絃d}6JRsۺBgU[SB4mSQCQD"b1|)!I3]׍p8t: :nm4=>::ѦZ^^Ϋ+PPnc8dYqw^|y#0(SM I\ׅeY$ AeX76_zumj2Lι)IE4 t縸Fo_~}ʹe333d28;;iͶLJ7RgmZ}L&l6nknwVWWʲlB!00.<σ[nz|FQxG|7u23Ơ( o<m?߿q((;0 `|ŋ76kkkUI6UU Ya6\iY'rl2ƪ$$Ay뺐$iDr93Gz~oPEQi usiNl8O>ȕJ%SUmEQ98S|_YYɫz4eY0$Ik9߹z7dYHTUu<|uݭO9_>a$ TU%hT,kիW7b1{I>^eȲ`pXs]Mꪩ(ʶ($I|eYm8X,n(TUUH;yǩuppI$j6c@9`SRUeӟ]umyw,2<$uii)cl,j|@lmm͔e*rU\3uEQcb`hիW\)IҶ(`!caa8==wt:7r| ŐNdt v&IҍpTڎD"f6$IBfhZjhۈFp6tK#$IB<G(B^GӁ(H&p]V67ڬR)(3M a0@UU$Iiضctݝׯ__k⦪,C4l6 Y177'qǯ_A+UYa躎t:P(\.V~ Nlyu]R(L]׷UUHRr븸@#]<r^Ӵgò,@85MU=,`0$Il~|_[[4( Bp8mpF@\.n(ba$I ˲n10 ōcMӌP(D"! ˲01 <9<<3+umt]^_4J 4$qz=8۶$Iڸi],7eY^WUUmb| AGeY6dYc [dY\:<<zf8^wDp˲8q]ɋ/n| 4 ~(`4a4{)p)0@u]$ z=":mJRUQmY d87c]A5P ?8 :l\7X]]]UUB{α(, NNe9~z4x6/Iprrnpsttt-+$H$P(VfpuךRdBm ,O88h4y]ןnʲ|Ppyy ۶k$m݄d* H&uInpWVVlkfhD"p8z9dY l9::Rj5ض UUfs~4Ѩ 3r9ܻwhmclX,NeE4 a " !L |f|xgJ4qj8LRaHRܻw19y$ S۱X̘"xFFt:Hd,--Mt+4HpEY%=_7z~(2דĈx0 $eٜŪ(&{ ҁbii)OЗ8@$r95MΒOaɓmvvp Jf8e<8?,B!XD"!eYbAͿ(B0WVVnn$Id N4AmUUH$+FJAL<ޗxIP(C<G&,$IvR`0(mM p333H$<Fžϗ$i88R7ovaMu~@UMIY p]C4}~2sZjUe!}9770PUu{E{qBudYyQF&s>0T*eED"m0Yegggt:B䍯zmW_}EQH!@l6w5HzgggW$I&bA^@&k۶xĹ/Jm$Id23/2"]ȲlN9G(B:F<ٝ\.9Z+?HhrU$ N<4M(HR`mL 2hɇPzPF>GW_=E&c x\tt] (6[ضMٓ4Dc$9x2m< "aff :V%O('R,..ꫯJvD7Ɇ.--Uc %n&aBN9i6xD+Q5u]5S90I1??/4'h4TFӴu+HRH$>99ؠ~w*9_';Eo޼9<soC9^'=cLDud1~'@-tx)sAL?Oc?XT*|>d2)tɔާ V ~rUQ%z 9G.iI~VX,&e^G@!h|dY$V,L"VXVu%eH{g rH$pNG8xe ;'`OΩò,  ŷ@wcHI<σih4vW1(A'-y"kH$3HWdD&d8bڟ8ḆPdPЛ133~/&IDZVOe ^dPLCmbF#y, jHjDAɉ`(7TB{!!$"`4m} ^Jh4 r h4w}c;== @o6899{@F`Z#Û7o`6BhZqڏy9;;H$3B!ܹs+ӯd?6VWWp;wD e6t~)DhT*'Cd'$m egff8n>Dk/T lR4yTIA\tq|z낐F8??0il:1sssw4MCD^,,,Յ8vOOTʫZI&ǒ$ann_|(|M*\NX,&,,, "N# C{hUJCFJB%ƯILι(ܜ2 EJL.1gĒMbŢ)2t]2yDQ\^^R4MF#d2d2r2&9;w `0 ''' XIK1V :77h4 j ]`ؘ$i>=C4L1T4JO'E{@8uE^'''@0 Z[LұVS8?qd2r 駟[1~шt4c_,7cT*t:T*v 9"`|9'1ƾ1VCI,^NKJVUu}J"pyyZo۷|7?kl6tz8$IN&'Hm k0ƌ,|V("prrf q>`˜$ɲMts}m܂R&zy$Io߾08H(TL&#ؽV%dYL?V(Hik҄C4Mao(h ЉP(lxs玐Ej 8 dmI$AX46D(sq6!~c*`eY c4U>p]z=z=!FB`y$ QO'@rPD`4H'OA?ʄ/ j8PCb8t]#ɈTU5 EtDMcc4#C: dYaʒȲ<6 j "P(Yyk/(+H ÚID:MʺZ-t:b1LT2a]1}qF6cSc?d,X+Z_p0E6$IX\\D^D97)EieJv:F@:w"@/yjWJ)` 4],\E,<cꫯ>ZMK8 Mӄ4YvGʂ菍3X 0RF>oi9...dh۶qzz*2 &8O$ӑ$ bԶmTTC)۶@z f2:dL){A0 2#֙r\e L~0~1Qtw~~~-! G  Q 꺮A ,j6 ˲\1d`p@BN-X`sc35MlmĞO]?!4!Y&u'!GKR)z=T_b<. xP}~~.I/zc8tH^EQOpsLxI2z.Rz|8EC9?4 !ؒ $[_nP.| '1$̍(Ol6áHn ^hP1s/Xò,4ig|ȲlD"$E}) FHWiwr͉ȟRԊҶ+m?x#1t:X\\D,~{G1Q@zK2t!-zLCN-c to޼$h{E ;9#$"do3 i(}'$:J E}߽tEL$4NA;MWXPu v B$I"*S*?)!`H]A@CHg7rm^&D{F hhѝ'駟DnFd ` aF^{h!>h4kNTQ7rgϲJ`W:N)"qhw]m0eavvV1D"BAk@fgv"`8HRFh6"Q\ NT Pf 1)(0$,F%rb8 6N'IAU5 4 A%ǀ0{l%mڌw kYh4Jp||, 9 eY?m>QRw #+#>68{dè^,|%B7Oʐ]5W M޾}+֛&,˺~x're4hh`Y>B`  s'G]Rj4ie8.2A$Icmf2ƗW0b`i)ĉO@r89;;E}dцޤq]wp8l@0b'0Gwcn1i`R[QYЕ(~8'CH$ < M ˘w]NG]St]i~I4~A~$# hhtwqÿTO>޼y#mZ #gJ> 8e,Ǹ!r IrfffĚt] c|˲u:WjNRBDsʒz9՚8_QKW$2>c3x$Iٟp8,:wG|7˙{lxwL8ʶmZ-$U"II7}Qhv仨9I[WT 6<#t-BAAqv& PBr CJ: :,tid''ܜHzc`h1,jN(!y`#\IR$ PH#ғnN14Mх~ L國6P$6"#¶m n@wgg4% "ui Vt)9.8{.4FJP#LRp(D"N# 2|ַ@^  b]bƇ P(^w80v[K~:1H%ŅLLe?k0iovl 0GDr<~/q7 ~zcuutǠ;@.ƺ#Jpo~Jp(`Fp8,X2b@}7zgH  \'L4X3vu$GvvvV]I*gHa3;pXk HvٳmY[$ѲP:emܭd{5 j{uO:KAQgƐ(?Gh~#CeVŅu:ׯ_@NGvt^҃0H ])d:(^Z(2czx-1 5@UUQ=|i_ Hx 9"ɲt]G׻" ;l6cśOQ+MI DҐ$r,e@)MgqRm1 ڶ-Z;Q 0?RIE܆`W0\9_ vKp846ͦ&!/E&ߟxں1t:}c] ϓ;q]w \Q4UݓS pη"*(}p|Iv)D;33# H~yy)X:&eHc{qq96!TP󿿿7߀s.n,&Ilۨ#՗H3N"BXgdYl?b~8cHuXU%M*"@wvvn+>*$ߥ (xIi=dR?GGG|cxPDMu&8,.5 M58)h$yM@3Lb^ȮQw'=/x1m5u 2~qq^;ݮ`v:<<,ˆm5.o"R yä-ڒ$$@h4㥬ݡBNzs^#9Q&:"'dYHשּׂj$1TF:@ǚ'9߰,k1f\\\HQѲd(8عyÇksqb)j@g8؝av +Zv~~T*%.,k]7$]d6>gnb %\4lb~/Frҍ؞=`R))Pd2BιJ$v}"Y_,X _o8F.I <ϫM"-b= SA,2&ͿeY5M ]E]9T (þcgk$#;@L&#`܃$I(Rt)Ekrpv[0զײ]E{Zo{$IuyѨ6)@=:::.[Z-QkD FTh`|$=<Ϥ>" z/,˚hiFǒ$m7 P:#Kb8w;ed|HAl9F#^>jQ"* RIL|J1 te&f~r8NDB0U( Hjntgq#Q_N q8;ׯ_J=]+O6VK~9888.ˏ]}VJX}(m , p8h.b'pu݉gq]˲*^OށQ&جpX$i۶iIl-]@tA<ѹvի?<O|8b (# akK]&r`Xh`'!vh4{^>xĶRG` z.//kh}`iI4=^0n1 ecUUݥv%r(҉8Ζj@d|"c| d2)lׯE-\PNGG= <+Dp8?, =a ٳP(l]yT*%Ņ ŷ'aׯ_ﮭ<3!.Y@Zm{{$lۮ1 ^Ov>~v$cT**4ĊqaC& w]`0ؖe2E6ԅ04F;S杺6 LDD% 7EZd28==Ew.֓Ɍ|2tuF[Qg3 ɾ;(8j}; !II2,xo#6PK_}zL۶t`IC8ݐ8|?7jLfϲ? TFI9N,Fn ':/gcUZ@脜{Z4f;͖c%J!z=QO#m5ͩ r@ѶmƉjb-˪qηZd23%IJG!g?}Cc#J}( sssshIF ^< 20WF(3km^쬝L&|8N?IN 4y?bnڌ?DR JC!p _|9fpnn+e2|C:j7ijx0;;+)6P4COјzsss$)Abx~썓|7cUrPVn+p874Z.^媢( r0Ԇβ>=ֆl6Uh 3@uݍF1{1=K i)wxft+L,*Hr>`hLFded۶A2":Щ ]eѿLz~*:䜛%(;JM8nm{uݭfٞL_c7i)OX߶ilY;^Q#ݻ& 'i!1XLt(q/_jR=IS%A$u!{^>˗Nsܞ$IղQE=A鷇d7h4-1h?TIk`Yֿ^S~v|.Ubyrzz:qj\p8d)Fxz6ҷ'60ƾ#I&auSaĹ91ɿw8ڳ,ӀoQV$x|?-9r^UgPȠHn*4h4zԎ18JRWIJʼn{Tg=[BO<۷5M3/}MxTpj;Pd|Z/W [ټ75MۦV:My[ϟ?*ro~LMӶ(¸6OoxFѣGpXhi@:o/^L}x$ڢRAՖPަ^USm0p<ߟz b>L==$@ 1A>6X,fΊ ^o*s(vG>֙m :`=ڔ$iX`.YEh4ڳ,_YYF"ga@[@K$מBa#?%?K+uo|[Uu%?S.X[[PUyIL?je}?L=+y;9?WWW7}~|]:iP0Cf86Pm n9;9eK"Am ҚyަeY{י{px=HVգ8XLdlDڶҖ+\.$mSQ4M<b Öp8Mtw,Q/^\|wUUUt Ýim]"{-\ݸ >ܐeyev=}\R@;}p8||h* pF<Rgm+R IN&Af/nG$=cAHp8yōm9cY_q4mCQ ˢ|JUQuUUݍ5qv]}r<=(yy=&uu3i몪V)nMhKO56l۞Xs4neA ;k'P(dk$m7zJiZ.peǹ- UM69?$\X[[4MDК_0I{iuudmjf/mfƸӌbh2LML ډXu]?6Wq@`6J5y9LW❡.nO;r p0iUu?<9b 5o4u -u50l~aK_zEe3dY~?B3$I2ƎmMX[[39T﹮{LҮ|`^򪪮jʲlpk$뺵O]cr pݬ˸Q.MY75M3@fh4lgmmmm1V<ɚy\?J҆l&:B eYT;bMr\oʲ\bB`*)2݁Bp[LxdžO2IDATx}GtW Df&H)HTU²Oi 9[[۞^J܎f+l%Q4(%H6\,Dg⦅~< 6nݺU[733 (r㸢eY+?jO=Ν;swMU q4 PZ v{l^/VיA4 ֻ?olϏq`v `PMӼ~ɻ]p <#"T*nzMoݺ{wI]Uw@>쳕Fɬ?c gggu˲x??nt҇(fTUEE4G<{ =a+kkkK?5Ӌ,*x(K`JPo&B:qxxh4n{Ν;+v]DQ#8={~ͫ=1??xEX,JR0 C8ǭXO>qq= NɲAy>͛7AYx< 2;wYThJen_{najjJS @/2.\X!#Iz_|o~~~.ACph4 V, nw믿}8{, ,<A(88VuᏃ M $,8W_-^0/^\y~IX^@QRzض q Iʝ;w^:3^Q%x"߿bAL&tPT`6yUUIh4WWWw$D… DQ=Lbccl"! awwV nkK]]x|{Ur  7ހ(/t N ϟX__!Y Qaf:a||_t]׼^/.A p]e0 HdjjJӓ{,˺on><<|/Hf™3g2Wic4MC^G׃(j, bx<0jgXlΨ(qPUCCC( t:meqf&j3FǏ x/}:y8 Ne!nPZ t]GADV>q%| tP,x^iq8ŕ{P(ώhɓ( Dbud2MӖ^/4My~׋fl6l6v uŴBggg!IeQdY֢(5ɻ8t]m`!)MӁ8PUbijPhpkpξ\4 ^$AQ8zrv 4a̙3B6i8$!0]x<ڱc444ϧ1mgg/>'^WF@VC^G?Aۅ w… (.pQUdjn$!+S˲xe {)+I҂ `6x< 뺎)  'NWu۶o~g yzxh4ء{^e[&<}-qhR9{ǏW#H!ǎC6EZq 5M(˲XCBDswk Ӻ$IWDQ(qv{yRU+PH?<(+z5looVlX,A$Ahj r9 }FQ@[oZ*o]0 kkkq`DP,z=fQfjb^Av]dV nAeYq\fjjJx2B+(.`pųg<~?LDĽ{( ɤDQ8$IZxwygRw8{ $ T*ass,CEz=Ȳ 4h4Xq\EFEلx-Xnuwm||\Oxa^R!'R iBeX7x#,xk< `||b2P*taTH,[ wҥi >Ne1BcF2$2dYF"imZ j8rt]au=K.Ν;##"q }W˲x˲ UU`&C@ 该ֽ^wvvy_7(X,Fq>Lӄi,D2)IRuNl"# FCm>`r1p|>Oa{aχV:@p)4M4/]ecccrT*V Wg. H8}4A@TeYrh6 Ihd2 ˲l6n1i\y>#<A@es%CD*"ǁi u]PldBYx|<~x9/?~d 4Mlnn#8(o]|w.DQ, (cBE(\.Rw"X󢪪 dsE0ddgA4EՇbȌ, CiN׋p8Є7_Ӵ$IadHlI>0߇eYe)1!۶!ym\.\.PֶmmX5'&j$8C?C[uY 7|;yI؆R|fqxxx@@<Hӌ rpW_}?~Pj&$HI^8;v,S*8QT066n˲ $$P$A$z ~YXDR9BJŒ!xq @,cFLQYsss`Zovvv!_@A\i yjP,3/Gl$a\zB׶헡zvRAdd+rlFbϣ =D@`l6oض]$O|>UpRLƀ=J;:IUt:F(!3(~"vp8^u]R)m4 p=4ͥw,xG6eH@JBGJ7=>YjRR@뛛/NLNNb||iZbZ MEQ Щm?ʆ$IBhZ#p0D&'CC8^Eq\.֭[+/.$ nR)-^z; ~}D nN?Xp]\r sVcBL( E|+QqqX]駟4d2뺙q͜;w.N $6bFRcǎassFHTwyEʐWnɓ O>fA'rV{) 1m B2y!Ic[K㈢i7l #zH ^FQA@XD݆H$ z=-]]8}7߼^l6T&9:`0J zRAfgD"JR\.Ç̈ P(pu]TUdJ'EdH^?7+^/C+0r P'Od$seYqb|UIq:|~ppנ( <0 BGJ>:X,Z IL˲X,)R)RKֿ.\E$i8q+5AHHŋW^/3V br<3NH$PU5Z}&0 .?~ ۶_D"EEQSUAdP$$@9ZvRc\.R:J]nZT*hl>I|d9MPϊs[$*lqddr,c d#EBAaUfAӴT*x<]y^ ˚1ғ8JBy; +mO\.W p]w:̈}NFXd =J=$q!QB-*20<<W!O BKF!9׋v q:0U0 ~l^iTĜ)!"BbXiUU$x^TuQ.j24"NKH$V wxxb n,( $)Ԡ%>!/ìYZwYeymZ-Aȃ 4uxYg& bs/LOO/hpԩJ)$!<,\zHAupbA$ gϞE0,Dʎ.=!\D>!IL&!2ש2_֋rxxXLREQ|UYP} |P] 5 qP,K#ON'3QUUUͤir9J%欨VP(0GIPUc(WG|~7rd22 CkZ:Rt$"KDpxZ {ccc[.cŽT( 惂1ؤD! )=Bv`vv6iL1& @k[s>}4#V(CzG) #OaO2d~zR+/C~me1FY8IFxBoxxX O>ETZu7lS|>zfV666{޺ٳg177gϲ"W{uYFd ǙFf䡡!DQd_|Dk~>SN~BY%Ɨ5UUYH .*d߿շViJ QEzYT4`4e= d,TU,KfRvےL&dS]5Pk)_:#]h4L&YeY˃D\2;OL1A:ϗϩ0) 2P piN"4MC:f!i,ԋG2EQ066D"gΎD!b1˭ D"q)8<<]2jyAґqV N7eEhP҂jTz 8vX,P#!?OuqLNNٳg,r\STt:Ě(|>n6D"!\?``p6MyXvvvX%.LC1HW> cll Y`'''癀 sŃ7oDqDVq2MG2 B$a *> ,Uvww/S`0ϯik.~]eH:$IB84NgR+ ZHRD&+ohp.I`w.R]z^r9O$SNJlv5}o2f###:bkk m#Nnߏ7|9T @!mP(P=99OTJl&ߔ뺋e;wX[8n1 X I),ˬdZQ4MSs SFCfϢ3EZ\(ҭ4J~R333F@RagJ qp<}H&E>>.z|O>ef{{hH $>}J`0RxrU%sn,J>sK$IzLqB}B8vYGXdYT*H]e۶l65k) ~ei(8n\.+[CyH$$v?`xxݏ9::h425t:=_20|Q˸vP׈D"L(jv)rWl6/`pܿdnݺuEQLZE8F*B\`_x$q}(>\8.cfѲG$aE`=/X,q|3߾}{`p|7ϯx-gmmmҥK FJR ZbllבQwJEReY?{O I68vZ ,p l^wK{T*n7Ms˲-0V,j%ͶZ{{{麞vi#H$L&۶|Νxy)nnn~ VyEQ;uFGGQXc]F_>vITzmOY_}YS2l6X),`Al6kb1Jmٶ@TŘQcK^GmZ֊biYӁ@, jvZ \z}}ss_ B7xCl AQ(lv%JmN%EX_e۶}noYAl޸{J>]|EY.^/FGGa'ajnn \.Ua\.JRiߟ>u,Μ9>l<I5ϗVSqj-}+h\pcYuSuxxOƃP. %anVkݶp]paIӴ2}˲nH +t-3}4$ϩpWm;8Nuuui\__?2;S˲Xwʯff_D"`Ƴgh4X!<4MC^jC@^g$}H$t KYv7~i.~u]׃ YIaWEH/^ IT*χ\.=B~~cvvi@ZE:=zq_[o$]y>cf4n^gddY^a뮔四G?t:SIon]׽lc~~~) .$IB|u*/WW8KuAW>|~ftdz]4uuc|i]U+~azz,0MNBP@>/|gَ~ t:Bl62?oINiW-U.”axa_q9sFm/YL"*IENDB`monster-masher-1.8.1/pixmaps/plain-gore-24.png0000644000175000017500000002120010547745535016067 00000000000000PNG  IHDREgAMA abKGD pHYsHHFk>"IDATx|ItyyyFhIL$Hh([hWvI6Xea;9I"EL@=wUWu / Qh^>Я +1+2/I߿¸r.MAj?3WVVn8T3.]3 $I9Ap4 TǏ}Ņ A(f'|#/<'r㸛<|)i8Sz?ٟl z(˲z8ƥKŋ??V,zѣGK.4- a???|XYYYD"^ekm-//YW='x>z[uݍ?%NOOp8ɲlmssEUYs(²,(@ JzŭgϞY7pUQs yq`Ye?}޴_VVVr( C;wh~)* L`0XګKիWs üna4dY(0M[[[p?h˷#Ȫ88{,vwwa8?~zڵyEQo?sq>>>v`0˲P,^~]KnaaA&yr$!ɠZV{=iZNutNseY̙30MB <AȹeYֻ' .A<* zp8|ײd XEX[yֳgnlƍwxϻ M0 .\ׅEq?<5˗,B0vÇOrz<NB,c8^ӿuFc?*rŜ(k yaP.0 xEQ033jF^ۿ;sss'O<A}WƵkr ìiJ%0'02,ZO׿k7x#o\$X__?K.銢bY6Oe888@P?g$)/M~F( :Lp8qH&F_|Q}['zjq ?33Vjӳ,#4M CP(ZQz̑'?Ʌ۹\v~x!zorr'&&ޔe-MtdJFR~]t)?22 UUW|߇eY`Y,0  S,3K.`.q m q4Mض 1>>d2bJ];%q}ppB8<hdcXRl_FNMMi{{{_sG;::p800MinCEk~sΝ;VagEQDV4O>á>ys~̙emIrTJBTB(ap]mCUUt]TUt:Bz /_?R)-{+JEQj8<} 㰿BA [Qڵk9[eY(Beuض ۶,TU 4; `||nq]GՑD"|/!"ub8p˲@ ˲-iD(k|2={F3eYqh4 Aq_zU8W ###`7n`3 `0}b1HZ4!"w>ܹsieY;$Ϳ9 B(mDNF~?a8n'9w0U(`0@Ӂx" !bR>sZ-0j "6_yYs0 ut]^˲`YAy8`BC4G"}nnb1ÿsV0MT J^(bii H$0 a Rj%ƿWUUE݆$Iz/]SUuyeHatzNϟ I<l6OХKtQW8FGGVQ|0Ѕ qYu|W`hV g^^^~_[VZXXY麎#j54MB!hr qaYdY8::"öm{ 6]p!˲bhd2`Y0yBQYj۶H$?t:t:0̭T*AvpZF eYfI ahNt:WUѣ-u4!284Mm(C'\qS0 j$/sz8( A@66Y59A?x 1zb'F JH$Fa۶Û$QUIJ,Eـ"M.*{NMJn)SU,Rx,yA`0`j%q=iL̙I8zP$Q(l6IizhZHC۽29L&}/@4$  4 Av]ׅ$Ia痖?~{I@"eY̝`,u]4 jdn=]p!_`yymz"@R xvP(^`@&˲`$u]jnX/Q166EQ!:21::uTU30g}F4yHN&(4@q0 %sssNsLiT~$Y I'd8=C  0MS~̝ez=|W4%It]xG)1jI1H$)Xn{uI#2oEmNaVjTJxG18TI A,C 8::J-߫jƉuy, <LӤ@/Y8Gd es !;v]:1tJ]Qm8.:lۦك]&+WP.Q, d`咄g@+,0x8F 2 q4qjJn40 :W8qO5tcwnC84Iܜ)IRxy8˲zt^BDdP(۱XL+ tt:m p3iIH0 սLD`&88.Tjq<˂ `ii Z&iș3 C?˲Tc$ hZ[z=iLQ8X\\D,\׽w|2˲i\eYA.ɠj\.%N8ppp4)_#5MC}B!*GQz=Z!]$iZp(KV3ZN VfB!Z#yrr$IكS ۮ2z"GnSAĈH'Ę0eh4<|pcee%X,겪4dY4B,BF8F˅a=8{r,{3Ѓ&!J!Hy 5F4cz^l6D"VP(yttT SUuz4uAUUx$qiȳE3gH ˲FA!'$KlOqZE=y'v,r| L&WAȦR)={Aet]8n`eQAleu0rR™`0d2 ay^MlRsQt(RBUUHYq&Xqj\X,nxn,v:lӡpO$2Ǎ677v4Ŗ5MsjEQIBh$ C$ FJ3gfF^rDVԚ0 $}q \\ |˲L&FN64A4Xj5t]=rgΜE$ɺK˲(AբF'2<σ(4z=jpnW<=dccc<8dYZI&y ÀiFh6b$&6N:@ ؖey@RZFnP(_Jekv2 eIsvv8<K"hXF Û^O ,CI<CUUd24 >?~Jޮh4[ ɀ8J%hIhh4p*0 %dyFUID!E$It]88::iΟ?h4NS- oᜪ8::ilBQ={f@ E҉{T*p8~^*6KҽlPPUUH&h`ddɲ9XEzp8,0==V BjA\| LLL X^^ie6j5$ILNN a6)Fev{sT oRRt!8Bafq<ݲ,Jo$ (211X,VzFFj8-ncll oocP(lY/cH$˒$E8a0::Ji>޽p8l6u`g[eiǘToo, d Je= :Nv8Rn߿ Q*T*bF T$Q"|GߧX2 ׇj5cddmH$hH$0 ҫb1\.RIF,y~ ahmHRf4@],aY֩*)H&9Mr жc%j]۶W(qxxVE4i4o.W*ĄJ2DVC(є``0 ϟo4m\( k ndddT*e èqlÇ7󣣣iTJ76==z`0HX,LcGQ߿7{=uɓ9IF8NUwEQ˗מ>} Aj055jݷ~WӟIyH1QzW8611n ef?]ׯ<{ffDT!" `gggw+׵knRi$m0$ͻ-r뛛ߜyŋ`0Y(^++WrpYuZ-XD"t:=z:9ȲD"h6p7]yƟ00-EQ,f-۶7H{(TUՏ+Uw]wտ[eY6ѳ Td|{vZyaja$ǩ<'Pr<:}~j$UUQ.Q*L&)DPu]ݍWze4XYseU:ɶ ??xWvW;,eK!UU]GW_}+W/X&}i핕e LLLoo+)8N$isƅ nGT*IDATx}wx\F$K\AcZHBL I(PnBʽH $2 DTIP$qö$[])yx`|?:soZ[sW~k +"J_yӟ+J XO׾ AJ(Jeq+½~zuuuRO^z[T * J }{W_}x_f.DP*ZDJH$t:oGG=:;;]CN'rWEw\wKr\P( J^B/~^Nr9RW*zoÛn]6$ ow-x]UW]###R$J%yˮ|>/yahh{A?_s/~.:o_O+@H$|}}-LLo۷m( "DQ/~7|[E+wۻ7?җR(dя~ʭP(\\Ldޮ{|SrIRZf[;tMnQDh4h4mnn_=ɤP]] NH$ޯ~:я~:x֭?&?׾~_җR8xǫbLE{}/K/uIRAT rܫP(pw'?Ibi_fM-9?//.Q=(zt:]hlF&hzryCCCOe|͞xBbRJ-J^Zo= 7t'{d2KѴK$(JHRTDmuץW\R(J%( j\.|;pEwTjg^*R+bϿۿD".b^,݅B[,B- {|;|O_8HRL&sI$v=)-[^y#J=#H@/JI')BD"7|{nE=p sssH&Bx<ޗL&_??33#H{?zrG*5@2 JRW>Q=LƣV]=LB.CT"NCRA"xKR=E;dN^@t: N'zꩾ[e2P(d2H$T*T*h4o4{[oJD"ɤWxw%|;ES*B/{L)*x\.T TڟH$|>裏{_(b'IhZ$ILNNHR @\g}Jn6eX,bnn8x ~?B$ V+ar˗/rW Eb(dd2塇zWꫯdNRJrd *+Fjz/~wF* A.C"f!JA&T*!qL.( ^Lu lVVWW T oxTڟw>񏻥R_[*vd2JB&T&!ϣT*A&ARb7=S.+JQ(D`4I'?{rG.(GX(tE7lz/|t~lHD,C>Nٷo?x?8bj5r9DQD2.,,xxgWW׻|>ߝAb0,4VubWT*T*Y$ H$|>zWw߼ypt)vT p8X,Tצ,Jb׻jT*B.CSS/_Ex^b1BB^D"n/](VX!|#0^/, &&&D|xM>໺WUJD"---t{dB|]17ܥR; NxH$|Jω2{<}LRیF#j54 7:2=_;#iPg?{Wkh4OPl66`(d2#?Jnl}O*ꦼO&`0 LB!NCRXX,nn_l  T*DzfX erb*yD/ܭRJe{,}FuVE4 (J8|0AŻdVT*}W(t=ϓB}}}H$0xe2ٖ;]}Xg>o7 P(jB0lla0 bWw/wKKKW4 7DQ@.CVsh`X`0#ʀo]Ǥ믿/J+ oP"/Q]] yŧ@׻+oѭh:VT4,|֭[](vr9FDQ+@CP Lwfff{>QT݅BL& 5550L0 طo^yZ{p\{/_~n^ߕکƛ_r X,8NB!o8uo{WRn"Zl ^jP|*Ba~wuwtvRVaaZa4aZ Q*o dη?޲S.kŊ?gX ZFUUWPl&{]tz[$ $IN+={`aabl:+WT*E6{ܹU*ߵ,H$dY|>+D:RQUUl6KR-K.ܝd1>>h4B&1."\.ZZZ`2P,FDNaZKҖF+LzNgLO2 v& 2 jQ,`0o6;.}NF RRNB . T*zz{{O.b y.4F#,2 v;DQĮ] ż\nƍݥRGyGKv|>d2 E( χH$YgtB,۾m۶wzR]*JRoAc'ɨÅZFMM Ţ7|xןtdnT*HRc=@ TRi& zfcfffW_%Hz ؿ?~?R6lbATF@QlnxGnrE 8rJ5D`L?-/sdž 9T*ܹZ܄?|ӟt\LY78޿?/_fIlv;ǥT*{kjjt:Nr9"Z- ˩ZTAZwg.TT۪`J[QxPR?Jmkz}GYY|>V*Nl}T*Fd弉Db;9WKK6D)^Vg6=b-"DQy d2( b 777oy .ROzI͞b. ezq`0؍#Ev؁\.x<^OR`s>x dG}׿Fc{&^n@,n0l6ۢs@D"yy6VۡT*h`2NQUUp8 H.d0;;y}f3jwʈԧ>t:NJBXnH$H$p8099τ>=C:r9t:hDPx`;}s-tE\zd2qv~n1(JqTŭwq?vmrS,QViHRFJ%\.^g>U(3ZRϵUV!NCP@"@RA.' ASSS۫SE>1n`@$Amm-\.Rd^X լHh4jRԳo߾4]wuT*խjш72Щ@`HXD0D??D"Ts,KNl6J42 &''DNH0͐JXXX@6\.MTv뭷:ԭ3 Dχyh5??+sssشiӢd2A._Rl\]_WBUUբ^B!"bS( wj7H@j>yٳ͆z\-Oa \sM\.0LH&0{95T*F#.]Huu5ńvZlPTfCMM F#pn#MTPyX_,ֶn:,Y P0I\ vv'7tSFdWEAjL&&L&C, j/| .Q{j@FUUN:$>{0׿bvv: s뭷SW^M5RD,]g/"V+NVKҖwjm6ɤ@9} L&h4HH&=wu;{Ku`vF (+casabbN6;O(dQQUUZraǡT*dN=d32)#h4"T*$Rfl`x MMMX,H$L&sNwT8+ /jl6 d2fC UVT*!`aa6h? /tR Nv8P(FoP@ss3-[ƌ`0Hqϝwy‹__<6K"@L ۍʃPRA.EQd*j;Q"| _prm+WW=}}}@=JPTH&d2H&EF X,XVݻ{w0:::.Txo%FnĥR)u:lQ{%Ko߾%H  bΝ[xh4H$83L&)7>V(+K7}K_:=Pe֫ǁ /˅+Wr)@fffUH8$ uYD"HPTx饗 B1l9zF!"fggaZ|r~hff~`ZL&@.:M'ꕽe^U*d2tbrH$tx饗V(3?99/ H$d2[yb\s5.DҭR)-JlXXX$jEajcff k_;$K/A( t|iZXVu Ţrr9 bttX sss[~ߜuZQ,NťT*E:]f\ARAP0b~~li[~>>OD^t'JOO'1 ? h\nzPU(z lܹp8o H077GgWlyGN?O\bP( a * * P(`Z F߫c*RK.1RkkkT* Jq_\xh4 x,֯_L*c Jl7]DpG]VWR 022+V@ղIV#@RP(j@ZL&rj|3Bi0M&|r9|X,QWW;v@`0@.WH(Ng?QT].K0Ls"@|Gs ez,Y"d.cw{tvBss3Fcc7\|Şz֭[JR{SS{ DM͆@ V Z ^L)t B3==?@ [(`8h4HR&5h2D4Z^Alh4ڣRN8袋\555NSp\p 2U?9Bh4ʤ;뮻Νf[[[3<5550q޽G4fCmm-*zt  /p8Nχh4@ vwBR sԌtطoHT׶-%\t&ID" Bs- Z[[a LNNbppr-'| 7]A.Hygs2QU]]M{G=S*DQ2 8y455aժUB@@'r ffxz~[|>/>|YgU^ZƟ'-JCMM"nj4w†i* سg?ȑJ$H$[_O}pxv;,+v{ݺu0 p8\+Y!#nDmFGGM&S;ّHЀUVqH$=s}GRJ$|>x_ݻoӦMWOgW(Ar0Lp8ngE aϞ=hmmxO8N _=(Y,rClNZ;77'8s5LkZT* صkע?#PSSøLSSR)P]]h4 ݾNx]v_gffQ(FJ|^/\S1"{RU>tzgx[^8>J$^d2僔Zb -!`0@sT&ڽbŊJ}N:maݻqa.\.w D"|]Ffdj4auY;<Ӯݻw?S,rT͆9,VTrhjjl177J<޽{_x~udUN`۹)"t:Z--[ \AdYAX}|~?88=>>.D"<_IRNFhb+ \.GRҗO~۶msxFEc0ċ/P(;ݎ+V H$tA:F?A|y=Oo{Q߷oT6>j|?zlQNd6mlXlEccc p8* @OMM!LP(_g͚5]f3|> qt: sGѰbGVxK/߲e`0+JbP(p8( o?! EΊŢgɒ% :D"޹d`Z-':B jYP(` z;>@GG[T%@q>R @H}CTB477SLXbۭ.ȝdT*7g ɠ ˖-f^Y$uuuXt)41ɴoN?gZr. *J("srqQRABtB*J%%Kv1ײez׭[ejjë`X!([G?b}ȑH$gbЇ>4}#TWWSG&ZF" hX6/[{wEqX߹s'bN>dt:~􌌌Lʽ(Q˗/z}+~BMMMFvmzzm*fP?nsMOOZ,JP(PSS|>bȹ`oв U=6lر{/e2zj5NӜh8fEX 8tB7(~e2(Jko?OZjzY:PL1yjl6d2[* (4 }#6]|nDromm`ٸAFBAP cy޽mϞ|3.\>j,JZL ԎT TWW#JAfK¹{ի;EQ|owwmܸ+V[I,TX,2(JDp8P,VBC*K$IL&s޽m?lذgҥ† ^t؇D|l6KpXz{JRmmm%\KrNAg]o>ر< ^{5&QI6-p'xW6\s5.p೟ql-3ߏD"LSO=d>eKl6>餓vٳ-^讪]fqdd###BH&FZr%bjFD^b۞?[UT}|kɒ%\6M1 Q._|78](R RDXiiXQ,Yj#Y_ݢ(>d6OT_Q\ YXXsR"Z܌5J$I'4voy3Y!r=O*"FQfJ%- *(J=Gw/yw=܃ {":.$+='ʍH9 sv'|[rJB@5* ?gDzG`}Y1eh4מr);v׿k @DB5^gRjl'8_駟~_zn Ǖ׬wɄh4 P75 ؿ?՛:,ooo[~nL֫R}?GFF`6a9֦in9H@.z 6شiӳLf*B<ƍ HP__ IȢEx$袋.: PK/YqjJE Te0dbgy㯿17᫯E; 333,MRX333)9|Y`V^(yCr9T*DQH$cXs.ؽyjEKOIjG-J!P*T*ijjr \rjrd2ahh5jFYJA2%`j(˅ 6k׮\gqƳ͛bzzJ@GFF011V˞c H'T$z!L,Yc``ง>7A*UUU,#y=xz|U*LNNa(@ǹ瞻g93شiAQWe2޽BՊz444p Ci5h]~[ArKw: cccTO,---ػw/0C< _\tZfdsA+W2NJ LJL&Jy[^zK.wzf1h4rC"HEb1|>$ h4^e{:tꩧ> `oԄ<_R ` l6d2fy. tLTZj9Qd2!avv믿}a޽+,Ył"o~r)שj#SdI$`p:h4h4D"0# J5BXVo[O>YN#)tT x\y^ cB>~r2LZ6B!WbwHdlif,RSNAa||ܽlٲb' X @/`6j"f\dz1>>΅B*駟!Ϻu뎛7g+!<׾@RtBT D+tܿKt]xO&2>b< 򗿠+VJB<FMEKe,H%5n(bXa!T*"h4r1(J9ZÇ!97QbÇ_egggyY.ؿ?2 +%*pda pj b`H$455%IÁP(P( "OT0A7޽K.qT:HzJD`2ݞNَׯFR)B~;^{cO~.^ 5hM{^aaaNR Frp֭Cuu5&&&d  zַz\rbt d2h4W_E__ JQUU"V ͆* sυfH$`ٌR:ʻgjjjuuux0>>b* ļFQZָ|W\q+Lv_^`uPO3(ZRPhj=3-8pسg&&&099i:ttzemVXqPT C:F<lFOO_ƫab1$IylIJ׮]n{7nh|SOW_޽{ׇ>~V駟p~sK& lֽgϞe3Dz9 Õ :_0JvPcccT{{0jZwccq类Ύt:@ Հmmm)9N,,,Py00ubg}oU~+_KR# Cq}MdE*Xڋd2A[׮]ۿ^3`E s`Q=CP,C޽{y^B(Ν;pg0XDoDJL!+IPep /׿ol6+ܹ^rswN&FbY.9"ׅq&jEQPxV^}[Pb&ɨj9A͘h4ʻ\.*g9%qŊIoZ!Qy0== X̽sηҥK]|\.gdFO2 6mBCCgT3!VFQge`P@<ga2Ƀj^{=}jf\ b1.z@vt !uD:ƞ={ µӟt_ve.^L&1g{8fmry 4G294Jܧ~z+rE43rxaffl8餓8R )FLf"Wx@~LA~4 t]b/,,0svSV,J9=30<tɒ%p8\.:KRC$fH6$jp8XXX@< /N:ė K.'8^" @?e9w((~f$'Id2ݻXU|^X,oyk&I@k2ÃW &&&R 2(~Wt=Ǽ^p8PV3J(pϳK]] o|/&2+]Ѵ8t|h47,hmmEss3i6l؀IjqHRVxݻww4j2F:^X,ƲkNA.K/ bXlDQ}'/c~FtPmJ(^t) VXшj>|Y"[pUWCyx6ǴEq(ٳ[*,IRI6LӘҥKp8T*YFC .&>[G*b;E$IaϞ=̄ESSϪHӘC4g%HEQ믿;ɴÇ)QbM9yҬ6??6vTWWSNyǼ֭[]WEb&EI"4~?7J%_|^x!mXvp7vq"nVWy@k*#H`0`ff---8|00== RQeNΟ\S,)r9h46)H}H$ A<g%zs5o;8fKz}dB @XĺueNG@.cythmm X,Rqmcff㘚B}}=jjj\p0ØEŚ䳹s7JTvwwKZ0f;Q199ɄbE444'3*n߾pXy_0ۓov\q(ݥRv޽\lQՂ).S~JyW(bH9/~ꩧ?a8,p8X,ܤF"@$YWWW90V+6 yBC%pa~~;͆n~qA˭>'lzZshĚ5k@eEā؊)ɠ,J5MwTHsssO~0 hĹ瞋^xf2YR9󯪪*J5uh޽{q'cŊt00L0LصkN9߿r+zg>|_Ruj"^xnF|X|9.]L&TUUajjqF,,,0cSx·z\:nltXn~ԉ}Mp`0pst{ W]uU~c>/~G6/pO߁f3n:E7bAsll~\sMR3ӟJ 8dJN; K./J!`0Tr\g>E{ffFH9 . P>UUU c(K/71\.&J9yC$jkk1::6L&WbLHql>nw:*J 0;Ͳ85 ?餓~\.λkkks1L` 2H${Gg8fKF?5Ȋ87"GH t??$#; v7H8d7EVL2 >L(ǽLX, (W_܁6 zdϜd`Z*`0PE4mpKҎR$A0B7ȅ" p}OLL`jjs\.L444 d1~o(nTַrJLOOC`xrP*<+_ Oe >-g&?Sy+J\.l~?wvj+'/q^H5ZOX, atrK~uu^ ">EZF$z;$ aH1w㳟lnŰsNܹ oSNH$l+JKDichZ,^Ǵk4MYW~(ߛg a=QF51{駱e˖_B- z3O ,ZGxa9j=njkV{"@8ؗn:  ^طohn5'''l2H ;Juy㛙pAD"s!d믿yS2&Ɉy͚5;߿ #d+';>U&E&IBmm")K/E2W s&''y2-bXE-Z e9>88htww{tP'bVT)i1hIp L (׬Y3f)=. pm]P(,dC;`}>[0NRTO?Bя~<Z-8(%zQw鰤uQFK,Zt[nEcɒ% , 0ޒ!i}2 ,hd2sя~}vho>pBJsBgxX e2 ?1;\\T*IFD$=tRÇ3tr9,]R} jΝ{)J b5Ʉ: {^ǚ5krJTUUqR*{n@L믿~{YJJuɒ%hllDkk+֭[uAղX:ƍٚd't~_/baO|#_][n! rG{8=S LѪUqB!.$v7MW*!@ F\.˗1rann r, &1>NQczzG(hiiaNcR,EK,R鮪1::]t[ZADDXֻtRf$l6 (Q &4=aݺuvZ:7."5b30޼gggaQUUj믿`0`Z>3MRF9&oEɄD"ł)D"!ꫯbvvr}ݏyda}fv:(a/\bW]U^lfgg1;;V466b`nnnO=Q?000Z(Ze2t:7\hOl6~?R V!l' H._<~E^illlmm5b1B!.+\jLTWWہn<ɮb`ƍ̐mmm}-qޫja6JtRH$XjZJ3X@?nC\.b ˖-188z뭞}/nV^ `D dYf,[ o]zu|```RR䡘ۋ'jd2XlǑ sd2b1^4OCS4pE,JVZڵ {aK2Dss3:5L,H+4>9><<'ILMM1}^g9R]@c|O}ʭT*j561 [Ʉ38b*VWWqGhPy w{=:*kyR"zj@_(P__1>hL&+V^qRAp`+5hSUUqp8hjjB-XIW67447::(x㍞t:A9?wPܥ%СCcڵkk.a@@؛`0\KLfT9V\/o/,`CaEe0oe{ #ubbl6CСCL~X,%?jA).^Jd2嘝ūH$r~Filllƾ}Gqr!"e~7X~=AqX,bvvp86rBQgh4] ###bllk:i|Teǭ6gcvvxUR>Ӝ DSO=pXkV<HR< 3(4MkmmC-zW\qT*F8b1C,F٬V|n:<|`J (ƍ{Y>ϸV뭕 t:UVh4x9YBcY}tgB["Q JRذaʱ0??h7ՎWެ~Йd:'ؿ?7Ek֬|zrJ/Ԭ*7[v۷o뮻: B5>HNͶx<Rs jjj2f#R3& ݻw/z?=R+_\t|>\UP,,, ɠ S$F`˗ߣ{ӦM+GŀO?`:6R L&340D#嫤 #|:tv\g쫯j~~hYT^sHÔМB/f7m4wvIӹSi-X%8[٠rž={pil68bիWx7{nfBv??~?Dg5GYy.֕ND%w"sл%Rw[ڧJ&rOo1O.wJ{J.} z$j,^GMM "rdʇgggd.8*}Gw%=5)65d$j3::Xaµ3x饗=XP@$A$aZ(Tp|>>fCP0+|pp,Ǯbx,BpF W&trYzk-bT@;Tj5($ ٌjnQן޵NC$Y=M& /Q0Qռ, ulff[W$333 Ex<.VEn='A(HsPR7 )[p8D"1dYX,>^Rcb>|l6꣞gggg4mąOqb NYgك<| D Պ`0(nr?ic:X!#v;˔[H$_|xqsRϾY޽-Dॵo6 ;S62C󅨘wR @g'#+~fPSH$zFq:I$شi>S8u<}vv:s\zX~=;<;d28&YPz.Y&pX,ƞRcrr=~2"c"^TZ rFѸ(||>@Ru}_~efCqkZ#SS5b(7L&;9ORgЙ[4,1ÛJaA(JӐdHN1==ߍ0tv&ID"ib2urH~_9Ԑr}X-P蜯JGJM1ؾdyByRO?dKbxxH`DtlH  pTM$JϨBgA0ߏ?8tZ[[qaH$`rrlDD>j=:< )' {9UA>l>L?)G,_555l{GHf6Xlr9'ͯ;p 1ϞnR+Wd_,٠dۑdz=^/NXr1lٲJoYr88GyRPFhZ^O>$y|`E@mmm'?ɣOimmj(ۇB &FB&V"E,]+V7޽F6l@<b9(."P_"0-V(tjQWW ?U3BcʿgQ.EצF0o7c?lv5?R7Һd>ܸs Gou|C` hQGv:%e,5* IfGarZw FGGʅDXjE6G. 4jn"TZT*u,D*ߗB5k`2ja4YO uYظq#?{:Z-4ORVt:-МR38mmmLy$<ȮD~%0Y0NRVa׿m89~Rb"&''sNq%<%UTj2D.vڅ'x>(~i.f!p]&all91PhQqEL8ROM e>" kxD"&BdOdB͇ y%(8@ֽ{~?Q՞5k`pptFYd åHNu5 :|/7AoN$)'1all cQ6m\Cr9x f-B(Bkk+J_ڞ!6ԐySp4;\.x^F.I W]uՎx G]MMML2n1qIRoX0L|x199q,,, 3IV ? o -Jȯ].fa8䓱n:XV^o RÇsRE@9eֶh ']*?HAI (wi4pnnX$'pr0]qb]|.ӹMP`dd ءk'3HPX,6l@W^l6wP7@0xEs*J)@tRR[[K@V^x /~p-:* D(gG3ȮPTq<&1@J8餓  /nws<x3(T&d3+C?ioi8ڒ%K2bxxhxꩧt:}F1|>=BCf3#ɿt^,_>cccn6DJ`_haF8v;v;ĀtR.{Shnn^B|7>~[,47ͬXd |>e/(_5PJi '>9Sn#V -[U6 bPE^wdG+VZƫ J%466,L&so]]FGGy/kZy83Q[[ $E~ ^U)Υ@v-b^,;wv>쳞b^z b™pmm-_HMT4fhiiA4jkk㣣}]*nu3+ fqLj<g|NYƺyuS011M&D""ItsܾwꫯvkIiA ¢b8F}}=i :l2@|׮]}pUW B~"HbH,L<'Xqnf_s5D:} T*8^ā@X ~0 q[VM8 }Ӛ p +9BֈRE{rƴdɒIp 7J5i Ֆ$d8ȞԿ%(בH;w42qk<*Z0??ϳh ]?J1+ةhKNﯬ4Lx(bM7)J=* vZ*}O3(GrSYG*(5D@*bRl=3w? wxxvF#F#A$RXXXCp!bddCxn `r:U~9眃JH.t@. 0LeO)%⤓NB&(M7"gao133C^z0/tEbիqg/rc&Rߓ"1rßìZj HO=T_9uTUU6qRSYlrz~+Ƴ>; /?NZwYλK55azzvhT;I7nx D,RC\ 'MO?1UKL*Q"rXlQlPwb-G:k B'1j{^>|mmm^4xe: TPӳ#F>8e0sٲek("l6s畂;ʡPȃ0+6KjZvhZDQhdV$&@ _<2$FX2Aq% /i8V\q~}U*`00F` QQpb󒆣|>fаd2Iv6W_}XtrE8P՗dYI$l6 \T  ZvXW^)<䓜RI.3{|Giii%K077:!М:y/ ݣR055aiYR)N%J&a||x֦o~lݺb{xA`fL&a2T,\ÉAϡC`+zpp`03{϶TWWǺZFUUV^ p8LE*Z/~cc%N73^pjVAnxBg:̠1鐦KV]AfAPpj@ i%xF5r9ayX1YJ%k'*s{qZ,8E8fp`&fM4e9d6e-ݨDکZE ,FI^RDP#pdpݺup:bYXX/}M񙆮Ajz^UU+ bpȤR)XV466BbrrvSSS;r@fffxo;NqR Vhp`F$[[n3{(ߠ&@  |%>t X_?]t3)PQ;>>Ϊ FKR|ZWXM&S*yOǁJ+ yDxԴOOO/򸧦9/ l6sNImZ(|.{+ٛ2-gY@ /)8A RB, jW%KޅnGoo/Sh/CCC0L8t7$)k7pfσlxN'FGGؤ:X'(d> v;;<d,,,`zz!u'OՊynDL5$ySNJ%uuuWjkk177ǵ0Z-ϲ"BL&j5 s,*c12|d2(bdd Aj) Ӡ3'ЉdRv5?S<[ RFllXjt:FC"XdKܹx<3z/z444p-L&!¢\=XLwKg\hll31-wH$Ri-׺ot;hl2ll [XX@uu5&&&xpcmݺU &Rb1FV|>lܸBdήJzFLR˨먯\k%gY| _^ǯ~+o$sSL89\Yi.=;BF\}`ڷo&'' \.<@EM*333W^mvvPJ27b9)ugP=bRX))l@| >LRJɬ{ey4mCa* BARfۉmDwmFCM1TK, '7 bfC,c@ o"YD"jL9%1">*bȯ|d2'Dz ,ٮHdf9G(&1^/z=z=f3' V(iJhӭZ ;w\4NV3SS1XEj\Á@ Rٍ7 AJO>d H3'gS;& !yxǭ޺[%\9peYKG-ih4cΌX|9w))F<<ϔK/#B @0 II6X(zO^N/स!@\4X n@(6l@{؈T/}mJ|; {˖-ÇXƅB!VT3BKMࡦ$`#f%Aji6rw&A$at:ŽzEFNӬ^ @4-Y鴫=4H$%&uw@0dk:\Xf x8fDLy4{ރFfC6f3\.gض4ftZa:+.JD N g:t}][[ Bߏzb1[ܹ\ΘKpDNS&&&xfYnKL&&ʍz>JZ,) N\ɃO,Y@ZfH*?崏yF)Dwd{d0??sCymOeOk1Jqʙm*m@f3H-{8"ϧ8^~/75ipc4 Db,#Ù`41??XSSCE\.d2HNlngpkkkN1??LNN 5h~'U~APBu`%""Jv\.}`4O⦛nB[[`z=ԧ܏=X_9os" 8NVeV¡CH$088(8tv58uQ#aU*(Vuuu ` C=/xWx-]3>>s\n7ώGDby:ypS(FP|j7(}I'Lon@W"MJe)*o\jlgJ&\.ǃƸֆ%K`Æ طo&&&aۙ0p8xs0IRL@ 8}zl޼gy&"+gl6sC+qu~N$jX,.. CCCXn kkk1??VIUdW)vmP陸jkע85Y/_h4ʸ'Hc^~JL&! [k4~zjn"m]:kX ]9TUGj&>bKrOxk.T*%)\>N%R9;ֈTP(P]] ˪;FXc4aKsS'&&-z|t~544  bϞ=Lihhzri|ɢd#x(wI1OL f3n7&&&*:c^<{yzPz`-Ȏv`0ƞ={EFJJe ݠFI3){ҥܜ, hjjbAMM ^FGG199uhlO+-p)L"@^&9q?J^Kpuu5KV/Q%^ƃ>螝(QN)$9 *j*XBL&466rE@*L$ZZZȦwF=Nz(o 黑̴r3K$ `xxD\ ZCq3X,/ JಒI@- p%d,C[[1>>YX,$ ᳟~.ڠTs4 Nmn.Çraݺuܤ! Xd2aݺuKO;>QKfgg!"3 "jkkL&1??,#Ygdַ=`!;5bE$X Ctr &''9ԠP(ओN41͜i͜Xl"ЁFԉ]Yl,YRt?-% J9_2T*ۧY9@ #O u %=R7Pt:0 (Dž)Y\tE.b]]=WJ&UT 走~z,YR:v'?* WJd2$7G)^n FGGa67wppPx]{/l;%J^LM /#Z,d28NW2-bl66nLl޼$^~e駟W,ĔlX,BiccclGV\t~GV QCQ)Jqkahl210F*O>=5i~T*]H$nߏk\.\.  bXz5$~U@$|J/*t xIDAT{׾~޽Yoz=Ei V2@ ^~elٲ555c^TPlJp!(O!FhݷdbS$aQ[[ x衇cBt@T=b {hur0<< ÁI~Fؿ?N=T `B!M7#Dlܬ@8MD=QUU .wy'R碋.r^XXz=`^&blP(x l%;>׋:jصJdgQ__8MzqSɭ,g, [/jh4lXdfF e*FlCjJ[C^ w+ Z[[p׮]dhkk㚘oIIy1m*d,D"?.Jd>Fe"+yHDRFr,_7;Ri;e"B ˅`0}q^+ɸd?҇}ҥ>׿NI@/6H9'v; J%ϟ]9K7}7"*"EβL&e˖ᥗ^BUU7"<tE_Ay!BS9."J%{I'aڵ{yfhZ<3Xd Mb"QX@2F( R H{.$^uN#Ԁ&DA*RjP>F26z!nٌ\.V. 6␈"D`F"BPnUE+MMM_"P{`/@HGXOɪ*nNQ\Pð~W@hii0 cQcc#ߡPHNA5Iihh/۶mst8lAKb}# $-蔸qG#rnP(elE Pjiia@ 4TUĕ]r@(^. $eS(mK&bVVeY 8$ fF=w IEp㗒`׋3<ށA444p7JV Ps"pyћY n RK?Ŋ+$\G}}=Ć@*42 R 2b!5H󡥥5558|0v;"pUW~_KBkʡ妁 \Gd Xr%`XDx]IRfe2 PSSk71HK˗+ ###Gmm-{d*J!z(B!^wF<_tXQqKZϳJB*ºuT*i֮]qfLMMqWw?|U)G@tPPH$=Jjyt:ull K.eԗ%ZƮ]^';$ѧ"9,48!4|SV_V4Rf^rSSS(J!d@3Y;tyNèfVNca:jݺu|P6a+;z}J%n: b0dtAg"5N/y B;H4`6122!·2 ZZZuKf9X9ub͋\.率я~ Z-J1SNE#a_㘙&]&B`]*blllcPTSO h4BRC %h{IRn/[LX|9`p8hoodFb8\.oaKF#P9 pdB_˹YL h~ WWW#LaժU#F4<_ rjEwyRb/a6YFkll +b+!5ݻqyq4IR4V2AYC-JYI P*DnPTIJ S&_8>]j&''xF[Tk襜,ɋb)L":?WګЇ>䦦yJP’oa(\Ma yO 3L&}o!Tc;ڈD#R D3&*/Y{NVJs<,rO8fk[1i`X033e˖ATbjj p7|?!Ypz"&0jɌءt\8t.W@d]wbN8F#J%(蜘@MM z" \qFgEUUd'/.i)Т(rEg6>n:AnW6mթ{jD!Jr-(J<Åm"|CT:t>+V`f'1f)S#rYKdUԮVx;w~@בHPdjzF\l:+f)ϱh0MD#RRN00H&hnnzjJiG5=<3wq= ! y`f4L&?OcFvUD'"ĮGqzqL*7n'1ɷ󡵵CCC%f/s#;,(P3V ˅/]D<={NrJ^/ҢAԔEPFd)l2n߿_/yH$P[[qΝ9N(JTUU1 L?Y;!*!蝔% ť:f7drr555<[L"b:4#jJ[aٷoZ[[Tʍdod!N3(#جկ~EuwUU`XP(_{.6n܈]v1ֆoX~=^}UUi~('VEb uڊ!8p\W_}5$t:&&&fr-"6n3{Ȗ(;n* !Lb͚5رc֬Y&n_Y9 *333 &tR~dt:177GT6(+Ѧbnr򐼑lz8v;ժdw!022>Ut`F⑄bSDFz`hh dÇJªUP*آ)ě#^W_wwrbE /͛7A|Tp!(q#  x2)Ia;ID1YTKwQ&XyX. *8,[ҳ#ҙLSSShiigyvٲeP(d&a4L6M,q.|`PO8000,<7n7`XR1q=Lp b͛5I.---Zz<d< 6{pd ,5r@ȫO VԽdf&zӟ2\B 6l63h A}}=Sh42Gļ)HNC0,3H:M ĝ;w( 4Lәf^T8P왝h `%H.M|H˫wJB`l?UY`~d,u']X t+.VڼU _RݵZ-J7yD԰e".dh?+4i(&,/S4+OGT'tN,6(rXVd2aհZH$ܡ,j9Zc]6]@RPM޺:N^7B&&&؈P(Dj %J\xIE ) _Y" pOMUVaٲeH$<~Xf X,vP2])EЌL833 l`\d%AZhPRGBB 6 ߙ 0:Ͳ2٢X(אJ?QbI 8FK.ul2X%9??E~tm T^^?J.Fb1477# ajj d+V@(B0Wҕ+W2󅤧dOHDӴ׋Qd2lڴ s5LH\l)Wڕ,l' 079V/HpW8Z-, ̪%+*B)NONNr[jӵaKJRL6T8LlIWt*R, m&p8P__/r~"TvGH /Yp\Ό={YL^ri9c' ȇ\.#1KrJbŠ+_)`9O_UUUF#\.ע'UUUXd ׆5^*ќJ[HD6qFݻ(L`<c4h41@;80 H #=鹫ꩪk~Pk4h||.S^{bc188("uNrȑ#HNNz5֏9+Bww7uF~;Ԕ1% \01],1cIMM#di^lP&bO\NNN"77w233 +"""pȸM&e,E~p$JEiw^444CHCBB Jw 2B2@RbGլ*ccchll5ˤrH>''' ^/ӧ/S#$$B,XRg>>>~#Es9"S(,@5C{ﵺ\.`&XarlLkLê*1f/7&̙3Šr'?_ө}'$$3GDD %%(--EAA2t7(ԍ+57~܏mmm8󦙻4e Wi|tQG[[:;;y @xx8e]2vH/000@va`0oHQZZ*MK|d\摜4D__LFyx HLV PI򪕡`bCmll jNNQQٳ|;wb֭x7sᩧ‡~i1N("44MMMhnnǎ/Aov}gxRdi;5JiF<0O^ SټJJJdBAAfΜlf#++ aO-=NhuKf6 y0z$qQ;b<44>IeTf_t)rss1j匎94?!<}F2T9WV1 Rs97oLJczDGGc֬Y,HSHggȺ;w.*^/ `f1$]bp6B)kA6t'%%Ttt)E^ƙa a'%%att 26I6LXD$+''Ett0F;PFLbĸ=%JCĖSF\RR4̘1Z}*ZBB=,Ādo8pv{70gƗ/r\tE0LB$)arrRcz'TWW/2l6o>$Gww7QTT$:>n&,[L@2t:z[nx7?Dcc#rss%Jbarr2-e%''c…0|K}VSD$/k~lȶ6ɁxH/!!AU\aaa8xރ6S6\'Y, UZ}#qqqHNNFJJ 088(&SSSLs:-;ԏQiii())ٳQXX(F,擓b=BB %22219VSSCɄltkw/Z/FVV43e]k9990YC6߆ :rpBvvȰݍ$arRd2!.. .$L&bccT4m >e<f `$ՅXJ}Uhh(&&&/]>Bafr Xgr2NףcZOF6js/%d+6㡪*1c zZW4~a9I hHpU-Kb @^^z=ӥpf$z>^@AƎyI="77ŋpBL&1d3CZoE9*0w<_I˳ѿ/!!A36.oPzN1yrr2ӅLK/ n0gɤCgg'QRRL|OrD';$]Pƒ;l,pr }:#GH($7c L&as_sZk{DֿhI k4h'iJq2nP\&g % MDNCS֔._]#"".φSUUؘHsF&iν&zx饗$z!﫻[ $$$HN711bܹ1c!}d  NW cʸel޼G8q!c,]TLiZKp++>S\s5X,xgIſ3xPI'26L;6 111HIIAzz: qڃAsL{/z ݻ199b̙3GLXSl*Un7F#Z[[qR`00ETSFed B%jH ٸ8J!44Cp ++ FLL̴KEQĨ+dz~`z-IOO3!Z'SSS+x≪iM,ޙ\2I4&l&j!@@ӟoWPESSSHMMrIII 69Ae48?c zW"l"39e@Hccc\\~%TXB!`0x/R8EFF~gΑmJgQÔ@8DirP]] @3)1u2*69yVXX(qcGRRVRK @@8nD Yu/Gzz4.O(+fHKK,s+벜LC6y&: eryAtt4fΜ<޽[@ȒD?/_ө:o|C`X@1ȿgIDDvTUg344w}Wsi^uuRϺI^%^&VFdBcc,rjj ۶m&m= sǃn[سg=\ I#Kqq1z1gK;Q>,MBBBxtf)3gbN9McϸsN˹Yrz=))Ity>;'$0V Po*1-ʢ(%%E d$c$oڜd3 YpܑR/̩O2uY~L,L .끓_oEQgy\(?HPnvb )a2dT7߸q=&aaaj2%S7#Y)fN4j'`m3$99HKKQ~y8A 堺. : _^k#~?bcc/fw(Ą! AWQQQFGG}c "8!,mlaӄ3gĝ4v @ 2 Y&++ @Й$ѳ9F{Ō3h"!1^$$$+_WLNNF+62)}HIǃ:>K\Ѳm5k#{RR+~SN汱ʼ:'')))"3JB"399T***~O|e_ pA^1cZZZ)gAWW4qdddT=e(ǵj2$磬/{k' Z?ŵAGG /x #55ua;}f3\.TUj'˺А䔔t(..\׫~T```@0z֢Nj9rxN%aEQDB3++xF̞=[HJ̛)wٳ"(ߖV"qNk cccȐx;,&rss3233zEkl9!z0`\$EEE EnnKJJpio0EQך~xVs>#eeeѣGEhooY޾>$%%[{^/)76cjF555(,,*22\poBUUDGGK.&ƙg h< @@d6I3oIʔ Dj,F̞=[Z5\cbl Aqq RdHSrV-aTp icŊhll/N:w^__722ؼy36oތ b#ET)uĚipm\HHH@AAFGGޮA+UUNuGyh&u&0٩^x~wCO;6ZFlF@/5g ҄'Xrٮ'bԽuiA%Yh0&pB.99Y:|1+¼y@74d3Q;\.|$}ͥ`sx__ e`M Vਦ7xGQUU5rQIj*đ_8{͵n 21>>.:dP:i~DF^ÇQ^^. ,#ȶ ,X7o"QT-l5xp8t: ɄTIb755_צ{ꫯcs=oXkGCKJJ$ɠ!$ǩk.|ߔj͚5֕+WVq=88(k/MӃ1䠡AOۋ9s ??_F9,Ԟ,xZ ys111D @bb"ZZZinkOOjkkٌb<#(?$99)ژhjjr+Wg^aĈ :1w /@s={<#//FQU_<@CCEL)@Y2 a 66*OVKP@4=1GziuNfPzzgggSe˖l6ET O+EQ95FI#6{{{ è(`xxguNW-˗/ۧIPʄg16Fߐ *ZMMMXl<0dff6R{,-- 16钌 ɝr]k}5xϪVZNSt)ׇ{=̛|CBBĘc|GشiSUdQŒӥH`ys);̙3/v-qqqJLdlgg1i"6Ѳ.d4773M eXԗH5___$gpy?k__Hl슈~ }gulDN&&&YQI]2{SeKHHb]FF3g 1?$$"(2dIl| 5\cJGGz{{122"dOHH$4JGRcͯ233TE% d2;{= /,zN f-@UT*+LMMCb66A%n<ɠؽ{7m&~cN?Ά2ِ`.Grr1112ЀC ¹ߙg'FNj'CESO=e?x|u\qaDGGPCdw1<3 涪^728 t7"EWWHԒZ50kw&NX$ʚzIl6 q&** 6M#ZZz´x hkkFXPj{O"11Q333{;N,1А. ]]]HMMJKK155%X`m&kDYX~H Eo ;l\.ќNzz:ϟ/a;w̙3vQWW'!'myfڵkUo0͘1c:;;Eg3\Z#U- UA@bc||fY:$p`ddDP0(2*Ȣceu:Z[[E@̘1MMM2u10013974{vm2R3@zz:l6%gpqL khh@EE)Թ+b 5ֆLϜ9 .Duu5I3c ===h1۽{7Iw>s"##aaa_?puᡇ`@II -Z$ ,;ߏ;vsυhѣG3Pu6i|X`dhnP'矏4aP=;\y啪7rz$<- 44T1LVP[[+>ىg}RȈbbb$|rss/hDZZAkIrvȀBtt$ol+7c!GEE0=JX Enn.Ve2e $9k"ԇfm p } z-(($an{ d!//|eq* >Auu50c k*kUׯGOO۵l@Q{177aaaGzz: 46++Ka3~8-2`M r?lnnPD\V_~媗_~?&o22¦,.v]v# ֭[gu:ۆtLL F L}z(..|jbH3YГCv€1_XDF_0R*[dT@@VӋ0h"DGG#11p8袋$~1F6xE-c%o,RcxxX֭(,,LX*$#1eVCuZw[.iTiYpڂ7'Ni}XF5lZbb"-b޽[Jj!NhfMM V\)3۬V}xw~ߒ>hP#f[>C)KB/H& /"~@Q۫ZlF]vn6!#LNN^8'!222p嗋dCLL ,X0mL)?(ǓW_}>k,{}}-"99VU<q3EHHL42аNq"$?-** ]v|&&&p!I*Hdq3~$ I f3|> ۷o3]#::Zd>l eYwߵ﷤"@UUM6FSа91 BBBlG-FTTl6)zzzqQ6 H^7xj޼y@ P[AA:tHdYKȐ |%hC)TEQԩ)Uf3@ N$Jds߈ljiDFF[o|"K '.YKj=":, EHN&411!x&"D;E?%K 11;w*Q iĄ5pFtww#==]5eϷ`ܹÊ+Ѐ#G`裏0>>>~; x/^w}Wr:zӠ:::PTT^3<>FFFpgnC3DVVGGyhullyy?t a0DMu- 釙 ٌH>H~$}1gb^xYrZDj;x<5)) %:Q:_&$ɢdAYv*&&¤nѣҔ,&QQQ.8]n`&=Uh-\ >Cbb"Ґ3֎a܉C<(**jCbbFecIf= 1sL~"!??_t$oű q|!!!Eq@˖-ÁpgC>iǦ֤P1i?n\.v /֭[o} {Ezz:v;rrrӃ8=zT0L.daǚRY<jjjPRR|޽[O~l߾]FCCt:4',c…HNNx099ioV'd;2\pxPyjk+& lVUŒll655I8DŽ#%%E>GtttE]ԃ .m- `tt*55,&d q`fQt:ڊ@npoj%FQ)@úuDJ4qF{{;ΝipZZ4ٔN&x88(F5% 77R2氌ȑ#̼lJ1p@^^It:-44BX<<>p"N4].'x#<--M$Dd*(MxʆN``wttTL봍PdggMhdek8].xwhaaaVNWf$x#v\\QRR.h\ nW`yUllxZn%[&0&fΜ),ځaA0VYXd2A#--MrsYx>qLFvhkkZz)--䤜q4V6d8%w@4xH裏ښPTT$^4&Rp0tj=5X~?vEo~8z(#ؔCS.9N|zZ <@GGjjjсŋ Whh(:,ܹS~HңW &s`0@9nKK DFFJ_\\.y)))҄=z(h;9s&^/:;;@  `Ϟ=phjj5Ldee 9W2\8=66&?::2$$i:iKY/e^) )ojjJMNNFwwȔ0uOL>-l}ϸ֙3t[gΜ ߏV9rDO(CYK|>}?#'occcwFII t:{ \`8 a%ɭgNUW_mfu:„ȷS嚧4Ϯ˗W_&<߃kJА-##\rbI8Zޡ!dgg_=z!ɉI?eWIU;̙3QSS4|ᇈAYYnVkӰ'[566n4A޽{Hg# \ l6J*藦%7?zh>-cެhTH^^^-[͆| b֬Yxd\~嘚Ry@^/ommF%9@Oqpy?柚+'y# [^_}ժ2s rrrT%NHKKM㔔!HSSSS8J xfiLMb\3$5#;;<*w544Te/ vix1D-H J<$8E-AEQ?O̙c3Lbqmd|>ʘ,\@#ey1@S1c߾}رcKJJBvvs9GY  _^dd$=P뼠g}6ϟyaٲe(**>ܘ,h Go~&4ၓRDDDnI e7@!RN0I&bo>>>n[hZ-Wa||===`"7,VxezV&t & (,,D]]R#";Mx1o2 xGgV*r UW]_]9s=܍3NP$^soLo&%NLL ===0"CC% wKzXBKK|JФ>{za21m,099Y|l 6*5Z $J#P05 %>ȒVQIY UUESAMM ߏÇnF:> uO6=l6ԼDGGYtZ}O:HrHf @o&}Q߿_hdl7{lkll,FGG7G.]ٳgy-l^~Rl`˖-hmmr90,r8 JRR`4%H\ ۍ  }`ٲez+Rֿ뵒e$ qn###Dgg5$ iۍJbqttӾ=p fNAL@&%JtuuahjjBQQ:::+9SRR7{ﴸ62<(Ad +&)ɒZڜJNNlJqs)55U\| / |ll̨]ӟ$9u,YP1::uuur Ўpiqnڵ2M@y8)1N0t& Ҵ믿jߜ 5DC1L y睇 RSS1k,);HJNIheg- jw߽`0lh=| ?c# 4'TA6ħogg0;@ x1_h6I Zp @VutvvJ#Aw^8p@?4E.KeÚ[N a߾}ػw0il+ٔDiU-Qm痖Ig?t:-4B, bj@5XM˿*EQl5-fW0<<>iK\(9cňJ(2&@K{pp===c0S֕---EOO&''/lϟ/:՜BzҐaW/h4ʙuO?,̚5K؊a6ގ{bxgAUUtvvNDO?- P٘JBNll,%{Vx丸8!ah< kHH222Ih8̧ h|Lh \.)I>#'0.N$2Rj+V IkW!5b'U(hootbʕy8;ut:àb{g?sJjKg Ʉ: ;wϦPVV&MzZ H3Gjjht_i, `'(+QӼ*A&,"1xWF(qAףmmm2qAIDiF&""s]w;v:88(32v4^bbU8tL]qoN E0| ̛7O$8466`ni֭U@@5yJmmmÇcXrL[}GWWVgں>::jzZi%CCC׿b83Ӄ]vI1Ŧ0FoᆊA8YE40dT@𩺺7x#$ ];n7f^oUn;=T4&Xϼ>ÓO>ݻw DpR={i~_Knll mmm¸ȐcsM,uUUUy7x544L8묳, B(qa$$$Yrc|&+QaaaUlh'Qr1|ٓDgg9`VۭҤ477WX`XJ=t: dppP4t}>.\(ԃ>(_NNN4b9^p8*:::p9GFF( JKKջ[].WB6^=ߏ]v7X\ԔTWW"`2*1rx<Ν;ȴ|[kxLBCC?bbp:F^4LMME__ڵ Bfa.F\{NB('4b>,lgl^utt[FGGk{0{i~JχO?Tzz1577cƌhkkcF]];zh0?ヒN6rԎi{0,СCy%DvHJJ矏17\`9s9HKK0 PFFl>|EQ]><<>?3fKbN S$$$L;f?|@83 ٌR!eiN $SАm˖-֭[ge@+-Chh( r/Ө& hooǮ]~|ᇨCiou!!!!6ג\L:DOO{Κc8diJ?c̥\RVVL'F-3m 駟2vi'٘zP偤ı1DEEaddp8ٽ`^~Z}W\.MY:B-C2ZZZ{n\tEeBө:Ν/1S*kb==="o˜21@?*J.Oj_ pѣy;Q>#g{zzՅ^̜9B]]pQ{Ҩ7Q^m6555Ix$~'Yf"į~+ڵK6򊬁zv$QXe%ӈ$`sZ嘑g}{"##3f@tt_B۫UmɁԂK&{NNHt:}ivJ333e?ډ' Reb, q`xcɒ%Eׇi< ##FvG/^"& 6\}}=vލ4 ㉒,ȸu矟dN[n-!!!CGG>>"??p:Hx %JddѣG+X83dt955GAvv6F#'达>tww ^ۍd̘12CŔza޼y03(kOmF4ʿ9u<xƢo6FFFd1iFMR׻d7X0A__ UU]"6144$GiȃOo wws9COO`6},BJP7}hhhw^ ± w׋2)| K\4T:nJ!wJpLzzzĬ244TsDV$Gt IP = 4Wu:]ellpBFILl-3))I#f| > /&&fӢEdM\m2S̤1l T'?>|hoo?g}&L (?G brrRpbb"VX~=y)RKJE N1!++KΨ^w8t3Y\___+c.MKKCrr` Ǽy裏~_G?:! _Ʌ2(((@aa!:,,Zl2 ճZjBZ Yf' %<jNTᄔ`@__P[[+`7кS;V6SF1vhhHmmm UUU`0d: 8V T}KobQ+%MLj lRUU^gg'z{{*>cXVЎVlvBN}D`!'#&''p8000!twwCHؿ4011qBz$ |>\0Ĥ m2)w@Yi{AɰOPC N:A}1Qϗ&P&uqdVUU?>8⒚|V6}&&&rGbt!zРƍVWkNj! ׸8x' q#55~ S}ѓ&VڔS/Z3!nҡa4NNӡ  /,]t52vCN0BF#^{5ttt:c|&Yuuu{h"^X[|.7ev|M\ L)L}>_vÇk"##FGG ?>155% Ν;!KMχ(y6EQl= Ug^5azTN:hBCC[lA"ƀ)dddl(7|vqf Ա&ȡ]c4@$XtСiUǃ̝; ;8U/:_@NQþv]4n=v~LlNX;wT~YRRqoX2rTUUxOgcccaX8o]| 믵չtҲ2VBSYS$ӛӃ={l6CUU`Ŋ][o:|P;ZRRr!IfFQ4y&PgP'>>0LHLLTEY_ [oU{g磽mmm"F&Zbb"|"+!`@\\dʊFO?t__vpbddCKK?<##`†ۏ[_rE 0 F/5ccchoo@А[2A@ 5N?T~Œm7sLakhoo\Mi4|5͈ 8e{'FZZ ]? ȑ#+< }N)6z\&{O&o -Z$t6m:!uݱ\/?!F0$%%EȓyoA̰9(mƍ'俟|ZRRg0*8D ;::Zd9 ^/RSSQTT$qS~mXX;رYVVV02cv'z|C,묬,aؔ >89㒒* ȑ#bV&`2L <4+,qqqe(dEbzI2dI$Z lnp?11Q .:Ȉ0QN)==]yyy4VXX6LNNnhjGNN>^BԸnnnFhh(<(挓@*kơ!DFF38wuב;3@Ş={@0&449ꧤ mmm(x(TcccG655~?!կ~BQh/,yH9DgСC@cc#~mlݺUUU0 5k )))HLLy'ov_(Jv]d'$$Hlf2}ϜSDZﭿoN8?.,,'""B<#11qɒHKK4fN[ZZYfEGGze||\O6A9yp8D{n F+D)K/tϙQXF=xkdV'^،OzVWWiii+Ҍ$t7L]Rs:mϭeX<44;al65555";k,$%% ΘsR{8Q SlO};6**BˑٳgINSzڊKFtSݏ> .(se999طoz=>lH`HPD… pBDyrV߿wڲn8g|2Q<###fiii?rI@v2'| Euu똘,\9997o79AΝ;QUU.+ߝ *++[t:c-Z$7:3PRR{sB ::$~^{-@o~Wc4/ئ,!#})P+4ov>5CW8pyk+Ų%wxxgxʡN4;x!!!(..ƼQ͛7ZreTEBBfJ#H=F&Axd?T?33vttԒ䜘eMC (LW3eAD6SK.δڃL>o޼29555q6TӅ!"9RtwwSXr~ژ4czzԺqs*땉 ;p8HLLD}}:00ѣS}>ȹ` F\FPCCtU L8-kOuO?Թxmvc*$#Nû+ ;%IQa2 OKKS322?y?w\N%hCV ޽{e҂M+j*T~BCC|G9sssk/tݱL(&Q |'Fd9G55%Ltdccct922ַdX׿/33x,#V˦# Z'/ČKA[[^/.]x^r% .ZE50{zzXplܘ3"$$Do|l||S3Վ &Dhh0yiY;bڳgs](Jl__ϟ3f ''4)$x Oe@JJټ#++299Kv H!˦  ##Xt)BBBP]]-W~~>7|) 7`s:zzz䌥'%2iٽIII8 NNmmmoOyoyﷸj8Ç~pQ%>)(3keeIgy/|Lin\@ss0J>)[xT>; wXX)&EQp8xDr߾}HFKMMEvv`dV"11'A`0BUe_RRWX29iHMk&1uO>9kjjF6x%''KM{6F'`mpNS&4xcl~}g É6%arrRr.N5Pzg=뮻lFm ,־l=7>>.ƛ Yu~3dEff^mOqqL+"zCVV4ebbbIArȈO>9ֳ:k㉝D~~x)qҢ (--Enn.233->3d2߸q~5==}mmmE}}}lCC춱@F@xx8rrr$@FF:::luuu+V)]]3##cGbbQӕT YYYHLLD~~4L2:22~411qѢE g&4å, Q8UׯlϞ=3cffύFFF/. %!99YmÃ@cؼlFjj*UEQV?jkk^{ SSSEzd2X|9.",[ (++CFFQ[[+z1hullp8~S~'xYQQQ;88X155K#ONqĔMH5kV\UVq0YWCBB֟ |u}9G|{x<3,, G`0 >>4忓F3HUQUUU?zUW~Sp]]]^ 25FZZJX1Xz'Oo :8,j E&(GXv(**yn|CCCGhF<EA\\8 'G}tݻyDžQQQw,&s7']NLL 77W4bS#GEEE5[x#5JY)<A+ύ ,z(e,< nP9p H=T8+xS޿yȑ?/[L q?d3@S^^dZ%==]t <3>裟[,^٢hDDDxQޒ4 2xm===lK/\.N+cM[W瞠jJJ dځ9/Az{{?|䕟_f2, d> XKr6~הMLLT_K6lxfbbbdl3EJc(U),2R J5..n_;צžv eh:::TUEcc#f3f@zz: xb\vƿ[oզ(ʅϏ ߏB$$$Do>Cih-,,Ċ u8O|M%\Mdtww ӛ{RX… (ʪ|?{WJa'>t!`;wu% S@IxwƵJ)@ pJlݺՙ#::zMNN2n2A7!%O 慄zO|NټcxxXv?ZUdSA??PRRbXRN|WXX(̍O K6^ꮻNNΎ!4I=<4s턄ttt@Θ1_QbƳNN0e3+md455>^|\r3&qF{,r4QQQx$孷‚ ^uhhҲTC5k֬ k/^DDD ??a6455w܁ 111Kn`GMM͚s=W|}b*uuun݊T?7wvwwWrSْLeDD#9dcdzI)袋vKrrr,n41f\6l6,&''ckEYL=HK@ adffY o"99nڿ `#]KyӺ0o Jl477\ #_GttP#͛M@`k (ggȑ#m20wiWؿ?z{{) n;sΊ@ 0>31ԅNe]&̼WDDc…CFFV}^񧽶mf|UUUDSS0a2&& 2!xddlE N;\uUȵĸݎiR\.,_\L{o{zz\SO__8^XdpJ]]]Xl8A>ۺuN{M7TˍF:VFGG)1t555eeeؼ^o?Ueee83%c1_˅A477KG67Y|&޿9sl7r?7558s`)֭[8vݪN[b/xFNԐվ~1]g`#A Ʉ>TEQN;{7+~nߏ?{d N`TdzJky?lr\}>NH$3** 8zfyZS4X<)))Ư{2ki?z QQQ"9ii+Ң(֓FYY4'| DEE@`}wZLlzm=әR⧱χ~?~痿ox}j2aetxxmxxx/ץ^ZK{g%22RFGG㊍LӴϗ^#s6NMMY++=V[Ά Q$fAPY\??3f/XnǞ={Ʉ$LMM!>>^H CCC0 (((0_s5}Ge˖sj{<̟?qqq" C6>g8;L6ر;v@^^BBB( vލ>u°tRY2>%ŧui^7x#o}K$~رCr0f\~X>OV^}Z+<Vmt:xWERnr^y ?QDVo6I&/_.lFFFbbb6͈ W.sWV$&&n,'?<~)H" w |"..nwDDF4R5Y',}(I`O}'M{իWW$%%טjX dʌ} #"n/r-vEQaOu~ؤ K;԰Um/N{Io pSl4(I >lu]/_ۚ"\N())n&cGG>ף?υV-^sիW[.\d2?OcZahho&pyaÆ ~-8seUƭf2޽[P Eʓ]j*YAʼlٲӺ%\Rl6O4Iww-{3dR;u]'|{Yc@UP4z:tHFv5W?|W 5k|;^oHTGGG|dז-[Lv+b?:###0 hiinf̘Az*wNQQ 3GGG#55U;::$EpA[WWת_ ~^oE)hHIS+I@0 뮻,l 2Dfu[dwg~_n\r)::K/m***ʪHOO/={v7r܌Ibۿ[o]o67655FoA5JlP;4X(^w_/^SRRҺu=d9 @+ǝCBB%l5b\&_Nvg?(uҥطoFFFAP6ExEGGGDD )) b]]]Ђq_NZFl^N(8x!BBQ /s=ZZZ088%KZǃEEE(~/6olwag tttp [o };vVWw@ r$'' JIƢئ(ʪk ֭}566bhhDoʕiAW>C_8n޼"466ZVtt4ǥ˅<*Wo~oXLfy(z^~plQ__GRR-44oTUuc=?njjjЇ>eJvvȑ#j+\Gm۾p{׏KJJ2"+ Oe$iɴOjii1YKq90c/(j0OtU |jkִ`6M&FFF |᪫hG}S믛~Ɩ GM&v84A|^x/~avG,s`~'q/7_"?a:^o'GFFDhpmZh]v}qqn5""*,,B/(~Ns|MMMǮ]Dnd())ʕ+E|>3f|744 ӉR1w8ÇXk1_| 瞫/î]iRSSSlp8Ƃ m՟299i$rϟf@ 8|w饗zr0oooG||<˥)kkEAК+[(;: L]"::Zއߘ tV^m[N)!z-SRd)wwwCGUL[].W9 qH>Dvz/^"55u.oe5GGGN7#""SSS㏛۷1&&B|>sA [oUu]_Wt::NbR I!fQ*77r֮]wuc]AA:>vl6cbbyyy䤀^{-rssξ /дx111{zz\ݻ111lUW]Yf~CHH>7fn)1c$JKK?][t/|YfdZG-L*0iI/yc=D XFGGԗ,POO{C=}|cUX#DYRR" )]v+;;;+G7W^yŢ(Vyac\p&&&o>w؈ӳj֭_^VբG1fϞ-pDhh(CCCڗwm 6tr-ڇ4bEWW 77oz׾BQuH)]TV=_{,~Ԕ$ZP<*;; Kxx':W\qFNWAZ2yMO?.{Sggh AꋲOZv*>엺}KzzvW$%%D"M455FDDTO&>t:Ӥw-6۽i˖-_^"$$d7GrrrPXX(ZmmmXAAC5%%e>iW1::j32e+~tww^P`C=͛-@`7z<աX|H$%''cddÈDZZ _W_Ϸ)ֆ]vbΜ9"VK,YK_^|>777 C\\¨imii|WT{,(? @`l3Y孺馛h|˃\oCBBĐ7hP믷8l۶Kz}ff:kd2AIz^tw|{o}>_9NLSy~)M{p -ַt,Pgg'Ӄ( x8Meee8` $NHuY8묳!S Az+~/ =kSxx3Jù\.avԚxM,z^x޽{4 R?X, ERR_~8NtuuiJ_6YƢ,N_$R<zU*bT[zu:iK`z#ciii'<#__ejjj`('p LYT>Yƪ?}??^:EQ< )nr6<_IwƉ s\d߇Z|>rN:JP'&&WV{9keee(d6P~ H%%%_vZ/*"""6%$${^… 4,X˿Tg3g%::"//gl6#33HJJBbb4=W}>_ennl޼ykGGpg`hhFMM -[L&gP^o%\?\.h4"##}}}PVV-Uկiii1cN'BBB066ÁWW\ikdr044T$$$pHSn\M_E7&{9a<|.r 111z/zEQ) Q岥EӓGQ#(j;Ɠ,}}}3339H)'}DP[g eUW]ef ,nnUElNz----4 zr Nt.|gckkO~kdee̚&>oٳ4vuUX"##-ڵkCsV)aʕMiiiFA?I~.UQsΗZ+W455e 52 JD wUQwy6xs=@ P>::jq:aďG2 |+O{1K Ʃ)z0z7ܹ+݈۶mceYGnGQQΫ<]}ᇿRozNg|uD <<+p}Yz=èDA|||UiiiW\\ӭWH``||\u֑/˗_=}>_U0=_uw:s> /~&_c F&X :::Zu㎧{tM&ez낌#фd`}ӟbrrrS|||yRRۅJ et8+򕭁,)))Fv|bd`LLL XL&4-䎎Y  Js=W ѻPPP cccjKKKUII[n?S 0|>K:;;1<< Á3fPz7nߖ-[L@z@cG=z:g} ߽T'T(vڹs:66f_ߧz@Z*ZP^7z5$${s_W^y`0T2i%aԐ~V[@ez:v7=_sy&e{^1_PSE_3YYj쬈6ZsAz_~e||44͞=||XSZe/Ns]AAL~tuu!44/ҊdKtttEHHH9}AzȿU_5kh*JQQQjhh&N׿Jaq\kgR86NguU+rM7d|!!!=O9~%,HLHHśozt:3FDDixxmjjj3<_[ng1z<Yr=E OQp _wSꫯV;&EQ,:\QqNRE=묳w޸rJy'FUy^hJ_b…GEXXq7oϟR^o뵞wy_g8p<=="$$Hf"11@@72::jHKK3p pj0l>W^{[,SDDVPN-j=>z@ Pv+OWntBӭSBQ133ê2 /K:*EUr>Ue)հM۷'?IYE) Ng y^﷑aX*VW[BBB,z^tFN2w]w)<<`09]ө:N=%%eSH3ސ5Xf͚{/>""e<3111?|>~SIIW{^e .ķmL Yex411aQ<44488X><<\jM~6-]+}\r)..ncLL)99 Ebtnh/oo <`m_몫K_K^{5l~ƺ:[o;vt:]9:ى+kyJS`NS׬Y~{lb!.Y(-[|-@ pl<F1h+V0;nT__wyk}=òe@ ~I/rm۶Ta… m?яykk?{YDO׾,KEEv /=ǭj1_恿/*@ ݎ349N9r<,,k}=7tѣx7g8L:e|oR>sL~߾zjS|||yoo/f3mW^yk{kp8/;m^?+}{r:^WMLLb@[[3.YĨ-Z"(fܿ?̙[شiyO.l~ i՞r$jQQQ2׏c#'͛7~?~===&o|`VjAA<{,\jo}[XUW]e4 6EQdSbIENDB`monster-masher-1.8.1/pixmaps/hard-monster-24.png0000644000175000017500000014036010547745535016446 00000000000000PNG  IHDR҆ggAMA abKGD pHYsHHFk>IDATxye=yꪞ$ $b  xW$ (FQdJ;!S'鹻yxP|gַޤy} >\s;C"/sUWV+svv֥V|9T*u:"@,O\/h4r9T*WTT*o?뮻ΕNKLR+}?O~z\.h4>Bd6mLMM&Jy$O$9E"`Æ {D"QX,X,F:v% B_o_ƍ.A@zX,R)qagzzz`˖- \uuuݕ=t:D|>Gy߾K/%z/;Rfaկ~m4Q,ZbQD;7x>CnHDH~ycccAP,=333wffߵkX,vgY̌s޽Kzr^Y?rX,T*3\.X,~G_|nC9 kdd_/2 NLLRÁM6G^I$PTD.ϹR%2A y7|Kr `?>~uǟ͕W^Q*>LJ/vi4nX ^|>r8`0߾2Lݕ"%Bnn\biW\'?+uG"_"pt:W.677\|nJ^Dذa;t};D禛nrR wy|qbH$rbyd2z?~կzb1x^*JߦM_t nBTTD"UT>d|_dYNsj4ab?O_qxUWyA BwMM , Lȑ#T*STf~Oe~J' rD"AXđ#GP.Q[[ Jrfÿk׮b1w\FAPdB8|`zohhh.H$0 󘟟GX_o{ = 8E"d2d2"d2D_Po~M7fbZl6r T A|R_PliwynnJTTJ}޷~.LNNO$mt:\}H$tDJH&`@-Jv_ޭu_jhZZF\F.d2d2>B_? VY.{d2<A'zbooo狀}{nX#!R/⾻:ow&q O>w _XD8}{N7RD A@P@&非}g?~aH$[$!!#"\.sd?gff6rrq曈b(hii}_|NFGG|ޓ=l֙cDQH$e( XߡCz?qbS,b\.P(@*b p>'7|ͮB詩q:Nd2DQx^d2d2Tbϧ?|`HR`T*Ů]033DNJ[.{O~n&B]__۷c||L~'BC=/??O6rNH$Bd2(  {Sdž[oF=Bt:X ""bW.A6>.d7|*;nJnRS((˾Rԯ7Mק]^x[xvX,vSY.Q*|J_$l6ۿx<wMM\.{t:0xJj:Χj{o~_znLh4\'cѢEzj>S_6S,="Y,͆H$F9d2^Azxo-'{FST"#AVCRATޟg?OCCCVrp8\.\FF+{~+Wv P;J\.fAPd2AA$D_T*VFJLF? ӂAO%S >X; 7.ZC9m*T*X,H$W"\sG$mD   @RahhBbxN9\y啛bVT |* ---}T=\VdYgT jhmmD"A<d2_S=2]*bh4⢋.Ν;144;x`珌 ]s5x2< Jľ}0== RL&O~uwoH$=l֙fQ9r rhmmN>䓟 رco^D"8fffHR(8Q*033L&c}D_fH$~.D";8 `~~HgXy睟h_wu\A"tOLL  Aףlb`jWVvmh]|˵Y$9YL&D"E;h4;tPߋ/7M7ݴ!Jb\.H$X,FTJB>G6}bqQG~dž 6KRL&sD".H,NQ.d@\^w|_,7Rz =0$ r9d2rN:$T( O>^fT#HgATL&T*fڵkat:qW]u'z>/6DL&@ Qx^D"|3\.JhD&V7>o l`333bXf 4jkk177d2I@|=J vgzzD>8\xfp8 R ΠT*0u!J}lDod4 r9$ R)r"J%r9BzO.BZ~d2X,r#JH$HRFd27JT*H$0 Jtl6C.P(  {DgƍL&E"YVw&q DQ( @*BT`Ots9-zb'LB.#JAP qlFо뮻\x"1>'N}"G$T*azz\BBL&{O|BG-@0^yrdY$Iz@8>333s'9sr<R$ AA@}6m)J[ "R4 Bl62 2fff!!~]O,Cgg333d2 ǟK.dJ0rP* A`ܡC`42 oyRN )ݎt:L&xꪫ6+ r~Yh@tDd裏~suyfT*m6D@̐l6 LH$B Ao~$D"j:R)xSqdP} l?qӳd2mzB\> J7|K/t#%\YPjL&X,8pTTPhllnW_Y*vtvvB@b`jj hfh4HH&?) _f䩩q" ahh/w"P(011LOdzd2md2(JfD"87G*JT ?&;gppϧ?w7Md@MMME;|t:H$\.}>7DMH*yڵ p:0 >w7~c6( ΡFGG199 D FFq﷿Or\.صk2 b1PSS:X,J%H$>UJ2{vv֩jtRbtbƛnnpJ-jbL d2ALOOOs׺AؤV=Bp8Ƕm6 xg7vmh+_L-dB~bFA}}=L&}"'R':s,BZ@r9TI>ϷGD/r-J@\ $ ^}U( _MMwo|ATpMMM0L A077\.VdO<>{wK,r9$ ( $IJ%hZ;0DE.n|ߓO>ݤ]vt:ٻw/133ߏz bFR DT +WjE0D$z衏<|-`с^x333NBD"A2d²e ɸ$l+pt ܹdP(PT'f3^/rOsw~p S__߳sNN|z=a6QSS.C0DXCw˖-Hoh4 jkkT*L&%tSSS( j(!_wzh4.h-R)8R)߿|卷vG^ .p{[&&&;::*~LMMx/3h40LBX,(ˈD"_~nH$^xo !a4ax#CP 㳟,ZZZ6655}{{{D"$^{5NvT* IWx믻\C7pl6ݻw$R sBb1F#V|cu?\d2P(pPDfNP"Ɵ}kZ+H=Zo6A`RH$dB:}?rz<-Z[5xw a6a4*d2+7MTHRG1PI@ B?~/y,pQ祫 :nu8<<@ w}w{gVkbQTl?SSSXn݇Ɵ*??guKTn$If<wq3^/yEfjV~r9d2L&XVad2 L& 0`,J!`Z瞏|]"hnl娭E4uoZAlӃˈZ?O%KtbvdYb1jB!~۷oGss3t:R1iql837@.H dP.NaD`0| yꩧ>6>|PWWd21/ FA4%о78??]LfK\h4X,J0Lbd㘙YeD"{w~W]d'x"cvvQ9Wss󖶶O>j W^SN9Bl d2ƻ#%˷T*)AvDBz0( Ri>k賟kѢE"czzs?AsAl6z}Bac__&''1??Rc=vAٺu+K%p?7tS\سgV+VZR0L&lݺ|`AbT~d;\BoFӉByojbjfy{懷~P(ǡhP.h033wyfj555dx<l6&e2cX,Z zD0TnӟCD_|G}4,   H$fwu>pZv;d/S__A6l6 d0ͰlPňD"xzՅd2{-|ַH$ot:RĚ5k`2P*zs-h,XtCK+\2lJrhZl۶]s=QWWшH$Bj>P({u\Dp8(JCPlo>O$m뮻>.?RQv0>xՊt:M#G`jj ---$φ 6VVh`/F4]}tdT Fe˖%8 ????F>GTbɑB>N󂢿ORDZ]---_kkk{ȑ#_+m&񌍍}G"dYA$ FXVj$ LOOC"nCl6޷o߃3<_=ԁM& vh4ALOOC׃蕥RɽrwygÞUW]M &k4XV\FA[}6u\Cke67 peE4FXEb"@>gKTCK._vvHW_Y$ݲ}vs}7|o'''hmmEmm-0==nQGvzx^NTr;/?Mav\kVQg"Ln2o~{]wݵ_EEGnԅĮ] Q[[ A 8<́_|;ߏݻwX,2hZ bΝ;Q,\jUמ={>R{0DL&~?4Anwdɒ<}kRM?_*sNXVfJ%f&ݻH{RȊȑ#(!e.bY83* J?O~d2A>"LB,f!ARA cnntDw^W(g(811q466B"1X\WWpt.lb0KvR,DKjT*beuWnٌm۶T*q]T"p>dZq '7,f^,{|Jl6l6D"$ jl6zf[zޣP(gb555th4!j)KRW>J:cٲe~[[[k0XjP[[Zir9a.ZR)<3*nEwee˖q3j||/z)׿GT*b1( ~fLưjժwϪU~}FT»ヒw}?B @{{;DH$@8cy|/555u afflhT 2 +VI' ٿ?3e2S8w_|2J~? T**Ri'G$aV ]bQ:|>a QZ?4??7|sT8pHM \.bP(@V"ZbE޽{?O? p޽{122rz= JUT JSO=k֭zST믿T*ʹ={v}}=2fxx}quz%J+x=b3a4 `0fur9Ν;{?bظ D*H$,FRUu"Y֢aA~P(T*?QsoQT J'Iaɒ%X,lX,D?H$ŋCN;̋.^x1_[R(b]t7cP({}ꩧv]zR)LOOcvvBٌd2y477C.#H$utt~/?v QpLknnFTAGDf(Jե/@(g4eСG,cDf۷`orW"JavvFJ,br_xᅿ-gP^L&Ç9(P7[.#cjj;\ xZ[[ߟݜd/ Vt:!b1ttt@sDXW%еlٲ%\EןaZ155@ 9T[ZDxHFӵr;v,x>W]uT*m&6W8&+d2K|>b1099Tz˅Ʈ믿7n*Jo+ 'urÇc׮]طok.ܹl+Wt[֗>B{<_:IH$h4hii(/㭷K/QEKhnn>7 /,x>fnB@P@MM QL&1==AkKvލ;lu ]w ]ҙN1<JСC Ͻ޻ɆRχ]v!Np@-LD"Qŋ^|ޟ3&SNa raffT<JC BHf8!ЀIo juGmxw< /pJT|8XbH$ގ?^DPd\,/_Nrh4h4,VT˅<~?v;<844`]~[ f& {šCpD"tvvs)ՊR.ܹLFQ/Zbկ~uCMM-xꩧpAسgFGGq ԛĴdNP]Nwk.$v؁W^yqabhZ\xH&7T'g\vܹ kvC&(P(`0P(obK.K/& t555} D=Z& #:+V@KK p8|rB,[)J]]]],__W<:n31t:p8D|r8N߿dYҕaMCED’c=˅D"H${\P|XpCPRݻ l6V:g2Z۵bŊ{.w߽\.{0v^0---fje2 ff]g}{gCXeΝE"+DAڊ. ~:jjj%!`XإP( Q>CCCNχZlTw)J.X%|U@g}v"JR1d24KVCB`0@`0jBP/_>4!^M9::[r+V$<[I Jɺu 0==1<,p<wb1߮]\ .p-^X,֫T*x^ `˖-x7B0Tj뮻.?i/rdm2,3#qv$o\t){w r>P( A"P(LWb,W/| m۶-_J= n7%\Çt7q.H$PWW׵z;bdr3i ʊbL&J%"Lh4B&1`w%B2(~ h S>]mrM\so Bb^*3Hg*b Q6USO=*bBt:i(%1P >Eg* [AQ*LP,r0LhllDT‘#G\$ɂ{.^S*0JAѰ LlDutj-swH-./>ꂑNwɲHD=({g}+n0R)b݋'|կ;0֒^'#>h4K{y B[<^/FjBKK 0??{ XY.{cX,yP:G1 FA$P(>  W(z;COg/~Xnf3:;;DZb އ,<}X,T*g?x.H.R.Y~p8 ˙QT*a6P|W,xxm*hp t0j>rZ,?'tKmC"`#cDuuuۗL&i.x_җ\bCSfgg9KthjjbC`0={Hh4[Z~>W^y%魡j177 4鈫vP(Hرc?ݻ!H%V 'ъb>dR)/h4( |oO>$vލ-twⷉ*H|_|;wD>gqb׮]Zt~?`0 <1(|ؾ};T`0]v4/=MuttPt\.i8uLsy1stnl08c~|~b1y!A2,h4bɒ%ś;rNd2 ;{֯_s b֭[yPNgfCXD]]'_hJT9PT*T*ZqL&zjkkՊd2R?^z[.{p~Q,91󘙙RuECP|%R!f]&!9 "&''l2Y ?n7wI]T|+l6!@ ө"{ U*b~H(JR\|0 ܹq8PTy[ FV#ͲL4>9dr7bt:hZ6TT̨I'` .B=X! BL~%uuuS)_W鴇** 7O, Ӯ):]_)~k_Bfo( sbBrb ¤W5A?VZ-pV!166_o6|>J4bmmm8r|]]]wPp/kxꩧ/cxxDBLhnnF:ƛo Azz)~wbN2&B"obczz R xQ,RZ!`0@&`0 `ll oz=^uÇcrr$ @RTz_^!H0x+AFZUf|?g `||8DÇs{S>8:묳o b1LLLN&affr`>bT65ğ\.Y"8cxԹffz0 NDRlHd8 ӶmۘV:!q-BX,JbsE`bb<8Is=TLCt>V IOb~~xعs'6dѓdXVfhۚ|2 |M8p{~fff&FD{]\fP(`ZQ[[ Lyb(jeX,F.stJD%K%jFqOAT9=2V6 %JY!H ^%K੧~p Դ; 555ND0 /)JRd|O?4/N9B!BY(!@/F{{;).R)aDl6Rxtuu-bÇws1\ѽ(cccV8_ 8aٜ_?/?ԀC4Ş={{nxo:MbY,Bj6xh48B+w4 +X4BB5O>)N~ibnHD"طoGr&jj, P(xfffeǎ8'F I{]]JC/J=LHzjػw/OD,Lz G<R LG:H(V#$r<^") lFTaNZ-/`0ȋRCd2-H  +NCbɒ%غu+oJ2L&bL'bL&\vez{,cL&6 cHwj8rRTϭw뭷U6oݺ Q.ڊf`0`ҥ0ܽ)˼:'nQ0 #fZ_uuu,_l26饗|rJ%^vCk: 2{YD.Zfov~x^.QWW 鞺:^tF'x"N'}]߿-0MZ`0 %ST H0DT;_Zh4D>\.bjIhPǍ7pmiif=:p'l"$t:uQlY.7r6.[*nIDjkk8$0:bDc~W{PaBb~oT*ƙ()"p:5XlAoTQN>FGGByjLMMPVw}VT QlIo>~?>#D".{,fgg1>>߇2T'ϒ_~}G-Ncݺuعs'OAkkkQ,h%4,5?l6ctt0MV@M7*)'lhzFo\$ YYTl8 7 'ۄ<T0zlv |Ed o],{h_Ab<{2??yb jrI2 @l6 K,m۸jR&E"&&&8Dkk+?SHfgXOaKW0 f'IJ?JOСC,#/;teh?NnllªU3ٿ?0܍Vc*v߯X,PO9n^嬲.1ŋ"+B<6H+Q7QPA3F.S"pJT >gffI?B4aBnJ%=7p~?< ^yhQSSQ^4PbP( 83gJa/cS*H@IAQ(IZHV{`/_wyeiR Jt:4f5 /^Lܗ_~;L:iH7*hz^fhH$`ٰzjg7znDꫯ2s:E^g)}_Ґ555a޽BtΗ_~sE'f3MtagjjfƈR'Q[ݱX̷zj'u BގCdA{,E1dh_~2CqEPe_+IهyJT+Dg- F&T;B$ 0Rף;ry#B,cjj t:'jSN{,R'{M#bEhx '׬Y͆ÇcժU~_r7u~|>?P(RJIRBP%555h4 :ΟnaȜnoZ133Jrzfл.kew׿v]{ʵ<$_duuu|ܕ`0pVa q\;<@ppAGI%uw(Nr9 8Wzvta].98pwիQ,tR>4v;fff؈\w܉c9B:/T*&&&z,JqsQET*K[RSB" #Gq}ٮ_vޣkE,[ ~dH@ @ O$Ouq/ݡPI͢s9lGuJ%8 yp099T*ωByENuhŨDV&1/Hsil6[B`  d0)YF&bVە7Nj՛V.|GB!l߾}EriJ bίrwrf wf쥼N*`g)?/Je9r 0sER9-QHs/^\*3̂䞘ndI 23B*`|>Ly1Iȯ(Hͪ>(Jls Z[[sN' Nz?TdP*<b4!R,cttsssO~[oO<4 nw8vR!Hәpcd~Wƞ={oC&!7W_۷#H89띣|> Fq>7j5yVÇ133 *|}Q\r%s~+_<}6CS?x2KBC`eK2Il+@B'~W]./_ξ_Tf6ZX,lM'"NtꩂDͺX Vx<:R)yd2Mpt:xbXؽ{7Nr f0  \z饮O<ϩs9Ċ+011mll V+ b#<)JN[Gu/T |WXR][Q>\i>t_uUkG$3 |>N 3*pIk~: r?aH$sW*"J_X!'"P>sG,4uY^xrNG'+^1@=j& cpA[o՝dzA냌 HzF̯D$9tvv2N)0&''tR>l6%K0#) @J=LR'p b]͠z8Ѐuaǎ8tPH=fR?;@*>2 K,ʕ+!'-K$ա;x+pwJN&?xЄj% q~~%gch4R]ٰnL8pd~lC v܉6~"{\d ~a+YER)֬YJt:IN~ƣ: Xh2{2z-ˢhZ{odp v͡"ISJ(I, hjjbԑ! C"_T*\H$uuuCaH$Je˖AՂ+TQ$ׯLi&Er'9~P ,^'yWfv<ږ*b~)hhh+P(o+8/bwcc#? N , KcKL0JR[ZZ؈`0%K /IE>V^6 vU&Rprl2qܚDZ|RFkVƕb`Ϟ=ܡd20Lm}ҥ:;;i c7~W.AKK ׿⨣B,ct)$J]*#qtuu1cu1<< X[$a,Zh9Tgt:9%we<2=*^PJ92{ljԡAT8w_SAkJu:"teKTĄa'#Ѳ,v;QQ877 *8SCtDzD"\.NHN] ~ $;8ӘabPM&l de>T~K 16Y:гJ05>Ho۱b ߒ%K\2gOJ)!߹p8I 0>>N (UGW<^hdpOiR|}bZ4 )%wy_~9M$ٔy׳T@%S`0tva_rmmm j<=AӝAE?H$T"J%0f3>ϲ L$Z>|!a2L&p8p8H j)v9F TP[oc6p8t:|rG!2dxd8{rf݅B--- :}U _4?|w`D"'g8?c*2GډGd]YNxn:UIFF"j:vVCgDIޮR0<<@m>*5nwPPj JXJ)s`rrH*@6PSO;#x:n{jkk1;;+V`ddP&혘M kF$95;)RDXm@5@p.JD"zLLLU+J Y,ߤg4ez~t%e4a2`6155H ֙fsJ].uiUx(Q%T*FGG]$òZp8 y. n FFIJDHfuAf NsZ{Ghbqtν hkkC `_!sDæj槓X666>VȨS$f4:o(!v?7/"/^ X+V0%d###|}z,1'D"`}add͑% gȐO<|$$m}jY'SysEAbs?f!JD5]آĂM{R?5Ngbu&IFrK>jLNNp2åHB*EElnO4mtX,L2x" 3Оhmm弁X$3cJAW'_ޫe'OnbS޵h"x^~H$JtSHb0T*YK+V  1{~nhhSBb1fF"9<)Į 477,㤓NrU&f6@EjwF*BMM 3VfggHrK.].]t}hd4M!/GjpU r^1?)W\ars1,=1|r9$S*k955X,0͈F MMMh"1+(NK$f/^|&EcƉ=MKf`l6crre4űLt]FKtY("-]o ء}H vZv- vH^[jЇXYMl*{F]NMMN>dm3ËjtVp8I irhDss3~ix^8NFaKʫiz`Us|T̨qKJ 1+tX,׏~#WuO$T ###hnnܐ3$ { WǰB&ۅNnj,^s6:\.sCͪ&ٳ:ՐĐNj`0׋(#?ϘիT*J9Fe?="TOWss3׿h4:r(,Ps)NڇTUMaS(fcbbKRUVl;Ad^srt[,!bpJTFɳ3 "hf_!)xFt./J%6⊐\A@jSmL&ɤڵk98UO#4L;Їwo&#l6G⡡!hZl۶ X;MQ&.sIx\bjEBPʹhPma QDJ22Z4I̼^/7 |2O,hGQb޽ΞPWW \yw{^r1HKBf<#|HUdp8~hZi+8!H0<{Fxi_=0b?gP\!v2d2ɠCdgG9E>JR75(!jYhB`f)}Pl%XVK.V h4͕H$Xd {C%dIL.ꦛL&ܹ {WB{bDcuDwwygPDn*(G$+ThRGk%**,f H$LCLD+WW^AccァQBLGk@k׮$Ns,oiH4iE$͠M#2Z[[v>Ră(B,0(oCgvuMuuu^DވT hmmeF!1U*3eDܙHhu^|E"q19DfWO+ co{nnPnJ٪"  .+ <~,YDRp`zz;zG1rG7!hΠ\@UNc\P*kCMz855񾳳b^FU bT`PPSLڹs'#ĊT1[fJҀRL&,YЃ$3΀B`}1u E#y ǑH$ںH$JA螛p8X"P&''yJB0dOZTb $_4&'t?:P5??g8x V^ rUĔccc8ꨣ J\MN CaѢE}ϗԡP(@ ~Νľ}8@SRAGex#OI|PX`H沯:N:$:="O]_#HFcs ,Y]2TCHޕ@J^ `eݻV555LiRd RF"h4&&J3 #Yho_%R),]KB"(S'/ Kf3{MW*x/R# 5b*/JbTO&7S+v㤓N,}nn{,>WIKu6G%yi5 9m S>2. ^bt:DDF!iP0D]]h" 00H__dc^X łt:ib ,ZG}4y:@I\.U7g5IRȑ# o ֭[ш;whkkL?]DV~W\h42ގ: ;wī@^'8APWW1SV#cppQlSn78, o^&T ?<|>M2Tp8_|. mmm,#p/_D"0QiY0_d 188~԰/\D{@42xNL"O$b(_T7jv1XE9^g )ަiXVa3O|:_ 1f]\_,P8:Alj L&СCX,lZ߮l6;@L^d)^P]Xh9ꨣX`8fIR\A=2ͦXOb.SGMRիWsK@XMX ^{WDSnl ʬjCez+V ɠXNAryIvBgr{{;* sss<҃_kr~X:ca6gϞrV+, 8ܫj8VbuY=0j´axxmmm _җHƊQs~>22B̪D檔";ORZػw/b5H#RE!(w"ƒ>ww3xP(`2xCP(p8rD099RNR8N>FB$ڹs'oβvbtuu!l:[*b||%H 5SSSx7aXh"F\sss+h5+@_(rQHyRğ'|#PXdP 0rvxt\.㥗^b jSʭ2 ۇb4ߓO>_n2s$H$hoofN'jqg  b||~---"E INOO㗿%+<**0TWWy#'W+/SqzzK.e :w q:O^i  #2")H@d RAR>`=a9!bH t:iiI@,H_tn߾)pQOzbE/Ki*X2LDP߷o{93Bkk+8{Fj+u:::J-JѮy\61\={(Hд5 լ)P琞d:Xqm?MTصkMcP$Ձ?Ncll ¾}LI$}Z󡦦mmmĹ瞋T*%JJ(X5={,jjj[D"/_=n݊q.:,4ë ضmVZň D"hd) iaб휤?GQúuX/ˡhɀ>=[6h4.LB@X,ַ)cYA~O:& >zv~FLMMb0#aŊ<;SGۡV#-_E@Ql$:ԁtlXťKkii8p\GuT>y(rlzf MZTA<Nqa1:: Áaؿ?R;113Uv0 pSNAgg''?1Z^xaE%]!Z-111NiiiA[[fgg9QrV']$TȐ:V- z'0$%z<NI>CyuHNI@V:^ffLTYҘy!Eq_.wϞ=NQ2OlbTO܁XҕL&뮾Jg4=#̰܋} /HBZ%yL&=4xWKߨ%hbctvEo2jD"hZ`"ba;$I+z- -Z{I,Z~ GR+SkAVn3RoXXB3IH')H'dlvv/333Ccc#v;JR6sX,LI8= Xb ]s:,47732LJ$fORK43`NbzE3w]?LMMiZp$=ϣ0\LzĔp8|ثT*]wu}px4V/J2,#Qqz=ѿUO`OHD#y9$3:Na*[GFo\NE܌zH$hf FGGLjn*ʾy8pg_2V+whTld~qV*|?яy~RN~e2W\kעQ]bPull jѯ}?(477LA 1LlGb!h4bzzwfsOT_Rid&wtt,JPft/~yv@9d{{;.]ʅbÐSBJ2ccc>RBk̏)$^/Úfm+fyNANy| @IF$yPe?3`pbଳi?wN>d\z饸qWrf$::: H088P(5k@.?OL.Jy|>LOOfJŠ+Ed oN^x駽d4Kj:|TSC<B!\'@$$m b0Ks<]eZbxCulah}oX@>F>~@~_p%h l2¦}Ex<#GbSOyu:]oL4铘&f3V%ȔTGyK/̕[l/7xjК&൱rW@tIDATww&?$G?n݊W^yكX%RnzZ333mٲ˖-^8@dB(b}|zEj@2l/odOD>bXV8Nf}lO먶5p 7xboO΢h4B!iJ' Ę4|w몫dGyH_5IYrPP,h">s(^QN b/\$jU,gaSE"n~bp1Bϗר͕J%V\N; Jj5?tGI$+3L,V(Xx1ׅccc}ձ-JUXDCC3&$@LCCr]vX:۰ad2GJ$.j333Fgg'7/  O<Ğjjj@jЄrND444@pMF $Xqp# 4Ğ%(C@CCCضmv؁={OP~3 Emp,y4f3o2j%9 Ӕ H/xŽȣe&]|r?cymD"a@"d2}DT,S8ݍ%K@aD QK&TSAp3 "r& -B,C(qUd2Ҿ.HPD"ˆH4u\<| Q(˽؟f{Dƪ4 l#u:KE"wdljjjob@*bժUD X+,9-J} *ZZZf\41h4BV }d$L]ZD>jcccP((%AFu:]/t:GӡMk HN@<_~͆vޛT4 .-C>]#QTP,鉜t:Sw:ߴ'i=Qś]]]غu+144_Ǿ}CD`(9@i«["'C6F Z\|KR[ ~F:|R#t:'TI^uGb@O~iJ}˗/j(|rYK.EGGڰl2tIXjy͆a|>477#b``ͨ[.166`C|qA:s?\Ip lRF(XhjE(B0\'T֓t"@?rJ|wP.{AUbڵbrL'I+g__ HR3(L>$i"P(D"h"YPfcvh8#B|>&C|8555\`0?@80;;@ 8taQ__X{my+O/A`l߾}عs'ssslJFGGy*Zh4"SN2i O]R*=HMSX!Bwij1ˉ A[bdd>."oj]4곫KSrf"X<˗/ˬsV)7|gZ, R No&!533 >N]t֮]%K`ݺug>O?~:h088Gy'*L,: YvBkX_+OG"a,Y\.S(#H077s\niibY0G8"V,c߾}>%I嬴^GlRlAшm۶ᗿ%nv<dK%G&X, ɠrT!NSO.X,< RcئBvPL4~ E?ݣ\ l}}8A k4yo%g#s3bԑf5 #UuS/\wuEmF 566Ơ0KtؓH$zQ__z娈8?dzh (.]@ A̍} h4Oϔ-О#o6JX,(;ϥT*DeCIFagsvviτ^VF=d2ق Nc00<<^{zJ~(|UX,.n tGf4!d׮]l;22 =BE tw}lv On7,Yu'T=3bB#d_X ۷oʕ+q"N#aff333%}r Db#ikI&1}&촵qB?ZZZ|SOM2Ll,7;; R x}?|DzəNP2x&z(h>` `dlٲ^J$UwZ%V'Hw>T;8V8Sկ~m۶1v 'p,_~f+JhnnFCCL*~d#R_~Q*p1ǠX,^ve> CĄhvhllҥKfr) T fffX~k.444n |>KKIT'V]ł/@r9v\|h4p8Ӳ(f>x8R!^I>z/zm63ʫvԱ>^<*f~>=ccc8tK_ J\299 Lb1_,H|0Z(yzf `  4§_CUzibqɽ N)FL49 ;/ ,ZE˘C0伡ZMH*Ԫ޾fСC\y^fggL&QWW2 'H^x`333uYA044M)AgO$O'je26'9ʝ=*NKBڦ-mNo"MA@GR)83~8:8GT.:Р(U."80cK) N/Ii M=]')|gtVv^]z7zj# `B$ 5QYyS(nÆ ]]]VsC3}fR¬l^x`!/__'N`19fǛm֭[Kf3crր"xAΘ*Ttڴi=4˗/g߼ySڊ֘L1 HSJ&jR|GRRM<<l;;;<>>JiC&5q-\3.("" ӻuVoÕ+WP[[DFF2q妦&<>Lg!,,Lf6q׳%LO1qDr<ݻגUDt^WWrrr)Xvv6Xn+EQ7l0vt21$!D+< H\ ۶mc7nJK ^ 8pENى'N@T 6 08pׯ_ň#HsAݽ{GO\ܠ>r9qYDDD/ngF&G}o_-2LO,Z!JӧY_SS:%`4 zDa>d"B_Y.#""zD |hkkCdd$bcc_t(55&MBbb" 6OfCKK z1B#&&d!ufnQQQp:z0aQ4J_y> ,dee\.|طok:t_~%6oތ#GURv. SNK?kjj W^eI0(JDDDKiHutt)))#`P(}ET"*i0** Æ cXll,n|}ʕ+-===Eaaaܹs1m45 #GDbb";{GEtBصbܸq,ݻ"H:::K'$%%1 رcq?9 ˗/n3Z X:s=g 38N&\Lmq"fϞ1c0RDZZz{{)SXASA IFJW^E}}=ZZZwƺ‰x[Q:t:]СCEB4>q8z*s<$Nu_sY ,Ӛwvvbĉ4irrrCaΜ94i "&Op8qȑ#}^^P ̙3L l6 iQӖ {ǂ( 3(#pAtuubiCg-RT/0eV!+\p1W_}uW^Ktdee!;;?dxb eiiiIBK9Cd8q\ݿrJngOÁ7oƦJJ u$,5?z9JPA܊ARR8Nwi)T*Ennn7Ld^__ϴh~d߲eKX,z2220j(FEh%MXM̯R T*z!bƌX`xXʩ8G7'ɬׯs(v.^ӧ/ƴi ܴKA}>'|FJUDb?>[0vXҥKe_bdgg?}={XZZZuuu0hmmEVV>t:̜9g4Chjjˆ#pM<_tϜ90e̙3=rrrXsرcPՄv_͌ "f̘S2D}{z*8CAAV^Eaر}߿/ƞ͛7d(c52=H"bԩxGX4o<_~eK]]DI4aJL <_@9|y̙vL6rNRdoEU}~aD"@zz:,Ϛ^׮]ctƍ5m۶mѭݻ׼pBM\\&!!A@-*8NBL4%.{@gϞ>v\>DR)?QF(ֹu3f )0TTT{ִ4sllGlnnFMM RRRXH8B 6mZZZPSSc7UUZłoIIIdE!Ub r~HO>mغuk;w8uT;q Jr 0""G"lhll4|'i4ɧ.ti4佭MiӦ~ w}e2*LH**o'[Dq~0paزeˊ[篭5N4qlLƨ(_v#!^BhQwHRYwokjj4Ufx^ZFss3s]STHII1c~8wۤ_|yWfi5@&BݫC t:h[m6ۢ5k;?~xU }[T@$+*D 83=Xiu{-[T|>-9Y]t} iQ" UUq֬Y@ bf$r:w[I4TVqݷ}d2>wC:sqс˗/@FFsxO/\tJVk4?:5].C]piWegg#))!VZ#2Μ9>8ǥK<566yvq~ }~i$!P8b63 d2 \= ]@}$kvkWWc555]FN%aFFsۋ'O̙3h4"Qp08 ~KJJ d?ty̙QZ#(QYC&a,O@熹sj4Lt!Ft<&LX-%Y;GZ@hxNrACV-5sO(b1Ɵސx<gJVzz:+3T*5OuuqҤIQn[KfS]R811Æ C{{;222my'NfsAAn[zERItT*!E.QvίT*^אTt:5.KH$HIIa6jxR=pႾr9vqف@@P(LZ$ oBd:|>8M?NN>ݞ4JuM*Jӊ+|;vt͛7ϚKLLdz 8|0f3s&LHHD"a(`ahii)]bEջkOOO} 1@uu5@d2̟?>|8RRR aڴik֬ZvmK/hԩ}1H&zi41gΜPw-?Ϸ}}̙T*@MMMl-Br ĉCs,/o2P(0~x$&&ʕ+|_~h:C  ! ڵ(zw\QQQ {@ oN͛7əzڵҽ{3Ν;9+x;v,W_ŋJHLLDssso=wڥG Uv\EcǎECCjjj܌hחڵ|0j< L;߶^xQ{Xbut"TWWJ%A PrA_O>0j(݌3|:Jlk{{; Rk WZlA~QP$NM Yݓ3 6 fRDRruSFPC$8CEEE`gu<<<\ ia̓zg}VrZ 55V#6 8e~1117r>nEǏgwKRm>EBw͘1O!trjP; ݶm!euu5zzz KCKjrWۋF=zuuux<>}:zL433Wՠ{^58rCveffbܸqbHȢP݁ޮep455̙3IVOj˗%NfMMMHHH@tt!Rp8 57|SWWW5*hMƿl,..رcP/]T\P(İ0PG(Kvڠ= Tz)GaY<ɓ0ͨ_o7,XP~\zhjjbLy|Wtz{՝:u<..NliiaT$V?vׯz<=^Wx<?~<}ctnJ${oPşN8:u*c~Go[]dddyDDPQ0l TܻuVxǐ9;::JȀ@ss3Q]] B%}A~ٳgEÁ'"=edd0eTK/ICN~7n̙3?'N`aSTTT\"(aXPPPp&et:?6rLVB@~:k^ʘ죏>%TbQh_rIzzz*++>%%%:AĘ)K.DC%XTT4TwƯXT*;p8LnxJ5ʕ+u6\.!mJrS`i.\X}A/x<~_$JBoo/"""(..@ PSOY37fdd\tI$ Z B:fp"##:<))4X&!!!""" 77*8n`7o677)T|Fa8<N:;;;-F.y;*l={ǭ8NG9 +_|dMmmm-[QNc޽ AyG[[_#FFcڵk/_]V"PYAURt3{^.t`qԨQe/Vz^Ғ}>1))lҥ?y+Wj}>_Q{^81H0|>VN?k֬Q{<]KKuݢ "zVgp[53-ZKKK+w\fC &%Vy[J??:..nD"EL_\neعs.4ϟ [#׈!CٳM27nxzj.:!$e ~CABg'lT*-]dϾ}>oU{btbcczO/=O %D f\.B([nݿx<zjrȋ4ZV;2 ذa8-q`/7HR?Ú5kMMM|Vky^8NGMq8VwvZmVVVyuuuŋ ɂF_zG֦~׏1Bt: YTTfuFϧ衇 MW__|bVV"##q1F@ `_|gեv1**J$͛7Iр^wx -R.ݐdhjjn+>ֿX-sD oV'|rWTNH/B\Sllll6ieee{n6X<5>>WI/8Nt:)rgy^jժsÆ ~\.|`CİbŊ/i޽[}\'נF!-Zb?߿t%D!5yܟ<3{#$f͚ѣGk( z11J4q&-ǕZ ?J \nz뭷Cƍ@@Ctt4N'^{9Ag8S~ٳ2eŋƼuaڛ7oZϞ=kq?Ow7֯_Vuӣvݖ%Kܵ5ӟ^deڵ:<ϣ쮭 ??)sJ}>Hw}O?R(NӸk׮sՑKrqo~gYYA]χ~ -$ /ܕϴ^WrpYX5'kuVzL .k`!p'qSOM;s~ܹjAD\|<xGP2-[niiW_v-_.\.eϞ=we.ZHtAį%>>@Ƹe˖ie2сׯCӶm̝;W- uulٲ}]պ:\.7* [ͼyԱTǍe˖ݕxguԭRiܕz) CGG:YbccMja&tuĈwwzYf?8HZ̨ԵjǎkH$ٳg5zwvvU*8` ^8_IENDB`monster-masher-1.8.1/pixmaps/hard-gore-32.png0000644000175000017500000004421210547745535015711 00000000000000PNG  IHDR gAMA abKGD pHYsHHFk>HIDATxyp&t@&H<H]dݶc;q֞Csw6]q2S;ejIeqͮxoSIfK9|6mKnR!J"x @}0K_ڪ}T*Q >z}? yMl6l6iTU?OC(PU}[n! PhT*Ϝ9CӇɮ]x9b8EQj:vu#AP($ɟk|gKuR)(]דַv7JQ].\.v;,T6} ֏͛yu}CUթb믿cǎPMMӢ>{gdV{t$ (b~~ow^rv}8(7vV~Ϟ=|`0 ͆|>?xeۧJ;|*^].h4*TUkcV;v mmm8uFO?ʲ| HWWCD.h^/^:(P~⋂:`Z:֭[ '''۷'x"i# UU 処i4M{7? 7Q]GE!ٳVؼy ( 8X Jex!> e 냦iH6q:0"SGر(I˳,H$6?}馛x(j" f-3gbt]7?_':uj\]$I(\.XVH$Q099#u]uG65AQ>䇾AMӃ @uX,n4=_-[ 6j" l, (fCV;{|ݻwahLfY$AQu\.u0 ;$r T* (JA*7|VC=0x 7P(dRVr:Fр M`|&p$=ri$IX,4cY6Vס:l2Ɉ.ݺu+km۶fSrʃzHV{ѣH!}>  "VVVz˲'N ܹn}| Bni>Q<#hꦛn}>~$Ie0 Cѹ\v`W^EVequϞ=Na˿d2o -]_A১h4=J48CREQ|`ӦM@Q#Y^^1#m۶jr?яb1nbΝ;^%/^޽{:"*J_ZZIhkk/I>0z۲e04 I0 ֯_ǃWO̘&^g,˰Z7n/\z`}zp{PPbh@UU4MUUA4/^D*j3gz4Mj,g26n8w/?/ v rZ,^b(4 >`R驕'Qke֭$I  $ χT*}iVajVv}hhŘ۷[N'S׹X,;@gُ`0xgP@&(B4EQ~Vݰl똞0tR)8`0(s=Ǐ}7`DUՑ{'?vB'm6`Xͦi\(C__aZJiZ_@csM7T* ID"|Xv\T*uݵb1~޽Ϟ=u(|>,//#J(F$)N2~?Cχt:jj iDQt8NOLLXUUUa%I2F133 6 9rqá;w$I$I$I8Nrg={^_s]\f$I9sD"f/B!A[NB @.&}̙*|>EM-u֟Y. o}h4h45kFƲ=sx?{կ~5blzFq޽{yŲ(n_|,hGGx<l6"dVPEg2_QViq{gYvaii|.k(Ȳ,J x#Gv;i&a4 $ lX 6l3gP.#fr WWW^ar9EBeHZP(aFL&Fqyat\oѣ2rYޱ휪(B@VEQ(JiZMi," !͚P$IbÆ ŋ?z뭃{)Izzzfx^qiDQ\.tww'%I 4M$Ih6 D"B!vttt`͚5 D2 ժ6lT*l6{G@uvbbB0=˅bY, !byy ̙3 ˲LK$~>n߼bA:GOOVWWQ.i2 YӉczz0V˲$IINl6~R̙3ץ3g~1r`لKKKzp8 Mh4Յp8 ło à!N6 +++j I4MC pj :Ii&;00@gZNfYV`YbC^C$I fF~wk|~ĺn:p,+!rHR `$իV20ynnNu ØQ<, bݺup8`YD>A?<<;ꢛ&(v;w+W vGww9|qa0 MVazzhoo7=p8O~sfr9;:, v;dYU*vèJR@[n$I¶mېJPF?LnX,~3JiR zp႑߉rYt8 EQbHEQbI2 9%IrS|rDх.;v sssbVcp׈*ZHl6h4XM+y]mmm0\Zy|{0P(ud` ^f ֬Yc>4MR A۷Cu>|XV`ݺuUc~_E6o QQ.T D-OiynTUtww]e < 6`qqg6 "_}BUUx^S'b`0<('TUȵlo4h6F8K/l(JBd{{{ ~f8(fpmjnb͆h4*[,', pݬj r,)bfC0l&r\6J=5666ލ}4M%N'744ĪJj5T*6,6 $I"ˡP(XVj5P($&].l6+wmiشidd2.l6v "*^J . 6ע\?8<:xժ`L: h Z,ؾ}`0ȝ?^u]6 2Z@?Bgٰo>aMI `Xt:Q*Ǖe30pł@ ߏ\.f +EQEADZVEh6En1ah4 2Ӹ\.} JСVT*l2|Zbqq1~y}ᖥ|̙dYZ8I_~b&'A$IhpPNSV .˲lA4R@eΈjR^/yhfNeY4GYModn7~?J# '&&DA l6y~W4ӧԡT*ncllPMrhEQhaֆ'O wu{%vGo]ԩS^x`>ժvB @㺻N:$ie0 UUf31yMDUEDt]?%wuuEvY+˸;ՅD":u ,cݺu%IbeY|2XERAOOq9$ \\\4(b۶m톮v\\4G>j^J%e 2UQAMeN$`܀(l٤<<|,fO4zzzouرykp< A$4,KDUUj5va! P,q9a躎JO˿ VVV044Z֡'NX,&dYNP^#|xh4$Ip8tR2njǡZbjj 2\.N'rr@$xGX(\^i b˖-&`ax<8q64шPvu$f96777,<00|!EQhłfibI4M#NCJvvv8,) M6bbϝ;\.Fab@F. @$A"H$zT*1Al6J$˲n7:IadQfʃ[ɓ'ZI̒$i ۷GzQ2AyEӴ֭[OOOjV'wyzbWfl DX۱j,ˢ@ Iqmٳ1eepFCv똟(FՊp8,,\]]o` èX^^F\f)bj::: "xёzJaee$Ip¨TdH>[XXϞ=;zq9Ϟ= ahID-/// \NAPB\[-I:;;L&177RӉ+Wz}BQ]$I0ظq#XE 8$Ib3MbHxĵމ'(|afauuU0ڭRuH qξA$P(d2 w\X,u I*JpHqFY$Iת0 bA6E^7alEbPh9igpXZZBTz(V!;vNAD"(n6봢(4EQr>OV*tBQA,//=iHu^xw}7w AL]TDe9$ IobrdPvaXсW"H@@޴ikX"$ur9T*LMMewq$j,'&( kiN}(JD"򗿌'p:fߺukVE2 2^uyx<`pFh~_?䓻0j" B bW^nǎ;t:qQ%eYe4MQQ4Mn0??:!,DQIl I4M j $IB>Oj5QQh@$("+"j5z||ϟ㪪apȢ(l6rCCC7iFDj%r8"V+XE&- ގrJ*7d , bu#6YjӧOgp8uv łALMMF!HLL3#2P[eF׋#\ tbpa"*nW*3 o=dRM I8{E{{;4 "ij>;pwz(⥗^b[MIp8Ly>_Z 'Oq(J I2QۻMF?OLDWXf?7@wnP(9r}̺ťd2Plؼy3AQ&&&Jt:cF#nУ̠Gn8yElݻwM,w7[F K_~#r|((&&&+W$%IJJ"Ť jmHAi\*ILX,D"LEt4EXbAX4++A5AE;XZZBVЭd݈br^WURDFJPE$z-Rpl~ P`VʥRIzl(B*(It]ˊ͆vq~~^VJLn`03 ,,,0-QpI0$[]]˲&zp8ݙLf^9no&XE4|RzjbŢfF|_d$5Gwm'B.,,`rr`ۙl6[iZ^~}A4AUUULSpM7=rUU5[*[;6<< z "BTJoܸ1bЖ;;; {aab1J2$Sn£G9)Mi.O>i5wq:;;͊ĕ+Wt:T ZiMT `ZMt>NUX,ɲ,cpoֈD*j0p:&AHPEQ4a2Aww7*Jbt:A$ntuua~~lvfSHt:ݭAV1R r$EQl#tR3BHVv V&E9@?_W՗^#GTf >200QDpEՍ&\.: t?t: )/..Vp#Z*Jfy4 :8$rܔЅB.\DEQ\[[DQ$IFN4XN7MNQ** pqD"tvvF].#ZE-6bKKKrLgYQUU tuu]zU|Z]]< j5n6|fBUU}# ^0KF#!bѝEn6( t*m6kJbVZ )bs4MKoܳP(v;x,˜aͦ Z,%;nsQ4V%$* o?r7'xlk(J0x4dY6rXСC9Fp8CS+Jf |JE$I&8r{lZUơC_jR.kx<=Yjoo7ju]8x TU5AeGgo P,$IX,r>o0)RPȨFHRiڜ`0Qjssst.y晉z:!U*ʭiY\\LQ9beT0sss`Yz=>===f4=vtvv&6U=FX\\4;E=)2mD j޽{Nq,--Au \GC^m6*%.^-$!m6;v B#GdO9Ał+W`eedc@lٲf',(JAH$r937ib._p8|>YLs/YVb1RD`ttwYޭwwwyy:ˆRXnFNӃݻw#LbiiX,]JxRWVVP(4477Q7C^|9{ر;wA/6 T*Eh-~?+++F+$)nm48ydX,&(q#333c$I $I$e9i'IJRh6MuVX~?gӃ[@E[pyl6``f#]Iyx< @ UTUr$InF r9S`n[2z7mڄqewcӦM?s7@XDшtvvk֬WVVhYE <ϋ&\.)5)(ˣvAχH$ݎd2jB]\.b*_`u]gka`9bUx<]xb<Fn墛ͦ:Kl6E$eX ǃ/"JS-C.]2}˜_WbkkkMӲHZ,D %;v57o6SӧOcqqA^`uuլB L `߾}JeАٴr!͡eQkb^wމ={T*Z^כlۡ(\*D鴵VVl6dN)7@hx [nooVVVEP(wE(Jܗ%, 04;;/J(ʺvz}ΝGދ/,\Nje* EH,23,(,EQ={ֆU$ Si(2L2`ڵYv8>C&IRja$bjILR?0<aY6l6U[ZV#qKJ%+S7lgM+++f)rӯ*mrML"7ߌ7x馛/;wNOHcse2)fsPӴ]&A~?^؎;Z#z>Ȳ,() $͛7ĭLKrg}6ݍ`0n H@{o,@kǚ899yj=Ɔ#Iy>v85M/\ $IbyyZ-[.:ydv|*zTAֆrl>v̙)è]$g X]]MX,qQwyr}քCfYpZz]\v-fggG^HXt]GGG` (JޫO=T4 E<x]8,kL1;VkŢI!- F+VVVb->A˖-|d5k`qqPdII 4<ۋrl-7!>||enkkD:6Sf<ЙL\`aa,epLk{PZlz>wvZlypp[hǎKʲbaRi"˲l O:J1>>[֮];fv={ [l"6oތM6_Ea9Kl2LQ`\:zv}u}l >u۷onG4ũSn=PU5YVŹ9ynncccp\rgg?K7b8b||< } W*Vt7xoa(kur$].~eM033fp[*0 #g2\|y4ۿoR5M+)$iĉc^ßF%IZE}}}(o cH q(ףV4 6eYjx㍱zٛoyNp`ڵXXX0SVLnCVC\FDVŋf!r3\.')i&G"t: AVd27;$m6ޭrd&DQ^ybx(eˊsssneY:F `2 ={VV$I狴@.R}}}T*B! 9|6"ˆp8&y6/\`T qv;7[>'''{9rdt``ueZՅ7" ޥA\.j(22 w$ 'Nnܸ1vphoo|eY۷f7Z(B4{ > T*شi9>ʕ+Ų,VqL~.]b=OT*Z/iX7n=}O_b{~ȑ#'O{ب0 ~Hx㍃ Ì)2FڿfaǎtҘd[s9$czzSӧOaDPfffL:2I|HQɌ4h߉D W^9A?>nݺI. w{]w֭3SN!JRh6P(_XXA8n4MgSc~Q{iQ· VW^իWA,~[oa͚5^3gOxF6ol\Yi(26lA|ӏ .L4}`qq8Nnfۭ$5== }r;bem6[vߪ(d_~pȑG{{{'N$IrRNrak|@S0CsssC7n4fc˖-h4b?׿;111!g2 ! W_'UkرcSrCBӧO\.Ñ4C^ٳgN xݳgψP^ꋭ9o3<Vw9svvr98}P7Mlx/Үlf&ς$IxFh31T*AQn``N_o{ @[z-[<ȲH[[v[]]eV0Q(>299p`ƍ#,?쳃=\2QO?f9L$N8\V]]]f3ݛfV?ȹpرQ>|C򗿼 >`4L.B!\T*H$9>==e2dd2e.\Hڵ|>lO-- } kBK.]\.UUΝG?sXRVբ^?=JZ.,&?Itu'xbTu|g?\B} ,Ѡ(*yԩ;#:|RڵkӬaK& Hq|:Z9x}vR)\re_GHY.( 2oߎ9s~& sAeu:f$)fs?7ʾ}eYV+>oʺux]qcO:MP˸IENDB`monster-masher-1.8.1/pixmaps/hard-gore-24.png0000644000175000017500000003013010547745535015704 00000000000000PNG  IHDREgAMA abKGD pHYsHHFk>/IDATx{tu?`s@IH,ѢiI%rGUC'NV$ݦ|w,MZgsc:DUeKl=-E|A`ǯ{ pg~s]v 4W^yeӧn6]ס(JiI0F|/FL|0HD^Oٳu۶mcYlvܹsh޽N'*jW_}O}{#^p8|0MsG}^|qA@TB^__?\{^g?{nDQ,//'N/}}}T*u=o(<?uY ׯOQa{VNz_%]A4H???}vr-u?GVeu}q[/C"}kۛFQp|>/, :yɷzkx't]|q 4fQ,C> Wբ h0z?yf4GלNgҥK8tEgYr9@ƍOLL̙3Jwڵ?E͛O uu]J%R)رcٳeGG槼^o?MpRulܸ1jLӌ˿3g֭/^xtК!-˅nh͛7㥗^ݻ B%.\xz{{C,>p8( 4 5~GZ&XVT*ҥKZ IVuɁx;s]F쫯z.σ 0 Ao;gF+q V IpU\~@ݿZV.ˡR$I"J4MP(Y|%ٺuk?˲Ϻ\.P rDQPeYp뭷v Ȳ'˜ o{_GVC[[B;XUU177Y婕'N?^jjz<}>SMMMbl6 ~?gZկ~7n@&AVK߿Rn? >4Q*Xr(4EQ~߷obdYNEј4=fﵚ B0 B!s@$VQ$Akk+t:A:qܹy=#wq^=88x`͛ oƍCu=40 TUt]gHD"޽{AIIwZZfʕ+cpaiX"H$IEKKKd2V$IX^^>w}3. R A4i$ nADv;uVbCB!syKP.Q.ai\.---xL&oR),// B!NQVkjҊooSRjU-lu=vG(z6n8xzWkk+}1$I #cP葑bt+1b!Iݪ.Jfgg`0 8eC+++F"@ $ ! rlHө~艹m6\VCB x D=rY|KKK( L&bmii70>>H :::PV˗Rqzzz4MbA>IbV\(|vET*ݸq, byyA@u$ eL&aۑN\.>ejoiiZ"nCQx˥RIZhnnkajL&a "FGGŢ::r> Y$Ijp:\^W].i*zH$@ AJPT@$~(4n7xjzKK6 IVVV``TVKzT^%IR]. * EAVCWWS_~y;(,>L&鞞R)aeeuHR(HR)0;aDvȲ 0?ch0b,ˏ)4y0H$` D覦&\.sbw3O{```0ZyfЍ7^eۺukxEQTRw:j[[6oތ˗/CQT4͇E9Ԅ3g΀eY<0<2 vGIZ\\( 6 PbvqyH$xr7nrB>O\.dنӦiE Zbee$IbvvEAQEQOQ;w#v=vAr^/VVVN9AݎSNAeZrAQlܸtha˧}7n|>A4ܼyx<իW199mϞ=$IP($1554 YQ*,0y϶;v~g{L$If.+djœajj P`\=k׮]KH$m6\.p$Ij4MZu\. atzԩSd2'? UU111+WGёD"]Uh0ZRt~`L^7 {n$ \z6} p_Wo!MӡH$H `(iNfdk e199FQUEQ/|a?x޽_N$4z{{EQȲ;w;w(u0'"٬@t::z{{Gn7Μ93&I߈ À84}~hUUya$ZTjjee(BuX,nPOYᦦ&D"s.]x< `mFwu5˥Qm6A@8nǺuP(pͱb;-Û7o8C՝;w"#DQĎ;7nl:Bj5(\. ,q]ױ7bnnAiΚFl\GG#0 ~yyBxb|gpOFww@ĹnrىCu?,#ϯ,K$ɹ\.b1$IlT^|aK|$d{{JEp8Si4ekZ A͛j.S[ZZ葑Z4z``y~wX(#BWWKՅo/_NOO#,[. .i#Fhiib Zj6ml$IPU$I`P YQVfY Y1118Or8ce2D" ͆ZP(l6 àV+|>xW N'u-0 0 NT4 rn]M3r a`a٠i$I`0'|M6=zر#G4q֭[j5PEgff\MMM{v4M# q 󡯯6 juP(X,4M $I Fq{~,$It`j,CQuȑ#(q)eq]woGP3gP.*t]WMd777qe~~-[趶(˲ CmnnVW\>?Q0 x_xeAԉ 0 T*8w@$[(t:q6m[( z4ϫjx @֭իW_:TUVV,tN IV+JJQ͛7Outt\^^^VN'6o ʲ Q5Yi*5K&tPZiJ%*/IOd43 dXVEQzܧ>)g?Y*tZvEњ( PU޲e^EQV0M3K/{衇*4M iZb޽h`. ,"i_Eرc[* Otv8f%I677,066ƒ$I q---j8qut:il6$IRS4Ο??UU*0jsjw{{;oߎ[o,BE_W\Q^/s@sOOOCE~jj*0 777cnnQ\%IZT8׋fr9Mp8p8t:U[j\4˲j4"t]i hh _.P%B!T*,:: a,P,HEQEv,)4Mȑmmmhmm}pN$)QeEQzJTX\Tiz~)yɸ\v;2[TRFU*UUeAHm߾1;;\.$4q 躞VEZ>%----lڴI. ,˩&-[H$SNVaii R)p8E---2v ͆UA Bw|>iqq}h4psss4ŋx"4xooognw,N<+++j>WVVFN0 ~j&%bQQMmݦ4q| 3??'O7DQU!Xp|q}zzZP%NӴaQx$ygɰ,R,Ca~"Ig5\\YYo޼ir-, (t&@$hBPUUhЭ hnnFXT~?rZM( X,YV((.˲(X*Z v188r)l65La_җ@ Bd2 $(_$X,bff @EUZ(dN:>>~tv(Pܮ]׋!Ng$Ib[na;::B{,z-b,>bTj-"B_(7x#311~|sÆ r077UU0XIMdrVX^^Foo/hOM}֭[a, t]qHӘbm6[#HVJQ_׋\}}} jL&gYFQR+++BT*ԪWܼysP(4M H)\.nC=tfM\xӧO?_z(^p* u]$I2R)S.ZjriZ%LRdzvݻ?99NZVT*Ayiiiqiii@J48G `Ldv;p8Bl6i^O'TXbA @"@Z...TUai:t:s\j\̨Ɩ-[rG7P(L 6`vv4MCQs= ڵk`fEQ$uateS+++4m=ӳ$I5$InÈb$I4B^O 6MG:xG\FT-ʲl#㧦aUE?suui0D$A.ŋaQVaZV8n[.ٳgD"1511B.͆VVu9N~aaa4Fq@Qt:!"*E%GѩFOV!tmڴH)0( **g&_(0??`Fhll\'V 11H$(BRHw ۍe_^tO<v\Agg'|>۵9n.˩֭ʲ̖ep`P]mx---a6 E0 477ӕJK&@d```-/˸vUT2ZMw8ltggg_(ž={ގK.rE|>_DUUAQrung0J/-- B1Ab4Mb("ϧDQL0ɟp(zZqM*pl߾}tzkr|XjbMMMlZ4M  x^Wbii)ELNN$ 4)bDVaV,//C$ɬz9v@@( BaMrXǣZO/2.\@)x<;>("VVV ""MMM~f+++PUQAʕ+kiiyXOOXiEZ4oFphe說($Iߏif|KKLӤCPtFh(b-ހ;;;Q(H$~:;;;UV>ON$LV$IX5ı}]>x ^wn0 b@Q8twwS>joo b"2"B0,S/ w5 G^/nܸmmmt_*T$D__@4\r EJfϏ@"ĬVkHUUPxRT4M^$3Ǹ .H$r `GFFbTù$d2z>eYLOO#aeeem_} Ȼ"6mڔdYPL[[iӦȺu۷3ҥKks.I(۝ReY8.^*x<KR|$p\&I2 :EQ[oaFe#" mmmL(b]qԩ,2c \VhT_n?0<ϫ<,hQ `yyyСCOD"JMOOE6MEQ0n7 -//x|X, R)ۿ;rx4 Bۚpwv#ŋf sR 'NjE>x~~Cmݸq#p8.//n7-BWgg'7<< 4A$+b*Lgώ+Wr׮T*uNgfR.JX-ipĉëQh\Q>l\V)J_W~WUU!ʕwtFz{{Gᥥ%_BAذaΟ?VC@4 /vvvrSSS|:T*Ot]OS$I8M+wIEPI055uaj}'/xe7MS `>*@0{(7,=zN|D"1("_ʕ+t2,EALZ($Izȑggg:??>KGλxR*R|RɔJ%ƍ;nq8TX$P*\.Dbaff=xݰa^/$NH__gN'p82E骪2ZEQkAXZZ8a! )EQ򫚦TUW xi׮]=+Ǐ{!y^, [o5fI.]4u 'NЊtѻ{jnn) p:vzzzCCC,I8al<ݺuꁘD“H$BbaXnwɓ''`>rH׶mtN/}K~P(充'xc3g4҉8IX^^FZ=QرcۇNSp<][_W8??w޽#CÿT*:^x^>Lh4AQ,l694SovibtO}r֭4I*vLn7Ļ臆B@[n(**"Z[[fyI>Z]7|3Ǐ77Ƕ677!^pwwwVaaaaM7o>( >h >̇%4M9wܹ__$IO %jnLJ:o~??]w5̲e١'N__xᅏݻwr~,j6?i۶m!Q9)³,˟9swӪ:zu7Zn rwIENDB`monster-masher-1.8.1/pixmaps/seeker-monster-32.png0000644000175000017500000021006110547745535017001 00000000000000PNG  IHDR  gAMA abKGD pHYsHHFk>IDATxw\& ?':ruꜫ)TbQ%5Hٳ6`04vV>|w' Hyl幒ai+34S3uWp=,{~@B}}^G}4/}{yO>L| _X;2w}?7~v=Z־կn-Gym9{C_;a]޽{8<;{#?{lxo} vz뭙pwyO}Su/g?ڼ[7|>w=dzw2_җ>]}s/=䓙qg?3W}=>ow:ηr;޽n]w]uzwٓW/}/|a'O]O<;wj=C[nwտW{<<7M7[{_ .[xG_}_G~pjl|wgo~󼽩T*;::l8~Igb_}չ+=X$=Tjj䟌p\dp? ž7|[f/MOOgIܟL&_/l۶i3,Rɜ?{/7xcwԩ#uփx<7<<[~m[wߝ;{llٲo۶m/^l{O^l6ͽ~6/ӧsw_Ӆ+?4qĉLNNa&J=w\nL8>DtaqqwH+񝘘x70usE=N3::w~~ȷ+T*eyV\"P$IDP;466vtnn[ۍ7xwFt:L&9e$@… /\~zܽ޻/H!"-ܲ_壗/_cn0sV+Dzl bرcoO=Tȑ#Wl->ySSS{رcc޶~|V;0??'x"sر8=;i矽f|+Xm۳v;'ru=KKKϬ^weB$Iϻ;8:::Z8wo} }flbg?Oͨ\XXΝ;w9aO| :sxs'Ogλ/~x<޼xbsW/})o4~7|ĉx'x3ge7|rzz:wßlOþ?̕}L9˭#V̈Tםuui뮻Pֲ ]]%LS,r-i4gϞ={6믿P:Ύtu$)'by xF/&+=P(tp``YUUgm;-fPhbyјt26_Jeb 蓴[o5w…ߞa˲hŴhdoJ&}**i:h~nnA6=@Ql6;788?[-[^d2w}*/;D"^lْ(͕+Xl6N'O|K&l9 wuMq@ze;Kdc֭GY=t+=:6z{lZ[Ҷr,gnccc/9s^ӇrX,+<3 T*(*sgn5\ɓWBؽ{w~||yF:@|2}@$bY6+w}iP(R gWVVD"1Qו\.Wضm۾7x?>}[n}1dsrYZ-sg`FCAa C[V*PE++趬=!ߟ}y}A_җO<97::z#?!K%El"R5{]*T*{m2Yx%3LҥKWl/>yҶ]յ;(37RR}צR٫bn\s5̅ }=?Z7=={nmɲf bCEZ-,Rmeӆ$4h4}/]򓓓 ‘Çsp3'CVk gi eMAI^]X([Tjv]5z(?==}^c}}A8HÞEu$ ( hZ;CP?EڧӡPψ8zAӴ}ebKamm ]]]( a(,ݿ/xD;w 7<eYXr a+N},7Mtϟ4ZM˻y}u~a\>C @:Zbn2'"oX,u,J0 ,C$ضR~O<7pCfdd䥞X__/j5Xn8Dџ's<wiw:thG~{YIGQ;vDriB$anf[g>LB**=zpoo,˲D"4 k.8DQ*мxq?ogy}ݷ}G:F}qͥ%02 ήe~>9C8icSl\0`\E$IB4DQ8躾;8|'>0ibejc `pʮ 0嗯M~ye n~1GQ> >lׅ麰#o~󛋭V+|Q^ߑjvMq`. =6<}?JR1À@Q 9(¥G3zL[.UUw,V{2QǙ\sUH\FO`II(y8B!2.4hX}윝{wO$x \G `Y ) a- e`.tZ8  >?Y[[Kd6*V+PxOPXiiY=~_s ^z% x3Lf \~͂pbZd}}h5οNq,ϣ˲~_|c￯LM&:>VCTBB@ $ 'YK66nv]r߱c6?̟~gydt4D̎/ih2dD,cn aрhhS͡|&a&^{/Ǻ01cHr#jVvmh`$X 株j8~𱍁{t__zxlyp XypeefRक,DQ<zgff2D%۶,Beb1\t 낪Վ&FFF.!ILD}ȑ5[3z0q4M;ܸt0HkOӳaAX[;N$?wܱiAUDp9, QQTH$PV 4M+3H$'Bzeee|A_ض l6QV!24Mv9rc>O<ġVuxh~jJkkkFhZPUd6']vCС1躎yDQ$-ۆ@)(;E[i}_yެyPP(]VX,bppp t]G0av n}}so_W3x]wia IV^}#==P5A'xaL&=zĉ}_x$IJhӲHXy`X`YXSS=.]B:@sqQQ}5=cYV~mmmV4A\S,(4qěM|E`6dk4MCw4e ?9}lY76e>ͻlCӲP3Mhm?:u XWj]veݻwVV@$,nY(:4FA/H<!ΜA…we) l M4Ͷіe*h~$Öe+iZ >cup*]KQ( >\ $z{{R^qJd2 UU˻hNbCPz`am+( faU ÀyX,B`{x<~u]$v 0`&mj5<EH/_W.TJͶ8nLJ_Wɲpv#hoi'`XyF!@"Z'?ɇ{ It]?馛rH%A4mۆ_~EA * l{.nl(_,;0 3m6,--$ /^˲hj[]0`) -A@Bm f(¡Cu w>{&\. Gɻ ]膱q\4M|z) l/ n<]Gy "xYҷr!a$AjaY.@a2MLY- e*lE{vZ8./IR7LصhFfJT  @/0FDHY}UpqBQ t qqjG{e=۷FG V+|T M$IٶcYh&''L&4 B=ˉ"ʭL$cp\ eYضjיd2g0 w͙3 By䑣Dq?CuZ-\c D%I0 Je篾PuɤYu]9hX[[AEmoF26lUC48 m11tZy XdY6( m b8{,F3gPfY\pIg37㸧i( /_ }p>$ ϟGy}mzĉX^^Na@H:q zÀs]@&QM066u:} =L8.}_zh( ØGVNEEiL82EQhˈ.$3gP㙿jx<$wj("<>f 0Ef xz'"yOޱ#O -J7g6F{ꩧ,t*BeuNW fPfB) V Aw0PcV.]¶A4._E @eEƸ@8G(Bݞ%Ir6Nò,xrd˖-OJC 0;<Z(z(aPm( aPu7tZ,A$肮g?O~܋(,tAtZm̐$;^`\.Ch0W,"8y{|?pX $IVhDz#IHERh6عs' 44}t4s=|+G$IZ,GZ--t~$! ;],0 l6uhvbڶn6!%;.QĩP/;Qx$ߡ>2nbyw0C4 @ `Zp,¹z<TU028*ja>oZB7]0::_ ÀaD 48cg b A 25u8V+G4 @__Ξ=vX,j'IT4 0 ) U35܇S~uuPVCWWsabb,ˢja@4v ,5,--WU!ji$g-9|'TUE(BTB2D1]G,E78PX^oۈaIMO]M{:h4kF+a螇FP(Z<4|X ,EtL:jk. ۂ 7rg{pKe}JF@$I" !7lY0Xj0M4m4IBn6wئf?O>?f~,^|yo2bp$aTKhi0e@U۶Ai޽y9۶iھp8\8|I_җ$9KQTlWWWA4_yခ Pp.ׇL&CQ?y-B*ip]T*?ӟF:XM|ǡcK23g@D#MŊE%l"y<&QvuaRQ%IkWqFA, Bj|XP'I4MҥKŋ2MLpN$0$ <ڂqp*$IB^7 %0i\pC SMOOu=;<<<FsfSpZ-ZyLbDMUn,Ο?AVmDMXL=V*}dQ'L˺nz%ǚeut0\p(v.X:MIA*Եڲe'N|hԩSsFhe MV"e1,k6E$YYͪ[DD"V<@40 KO/wxL,{~zz.f4t@EY .Ai$ tAӶn8I-ۆ8p}\]i}sϛniNQuP it}+6*uQσH }uz$Sj.0M[OLLdC빘〥(ĂTlBeQ3 4- C wrhf8 Fdx dY" eYH*;)$H8allj*tL5M"R(#q|&Cݶ!BZUչX,6744D|Ry#jd}='GL4ϣ(Di>  8lydT| ?<{}@SN52L?|Z[XH8<.^  $F_״,4Ί"ϱ,v5]yt4:wChٞB$!V $AT\Z\y8Jj$/ "S Imۛ8nEQp5 @.jY,U*BxI pX zxǁD@// (3SPgs?V Pq p b'YJ`8IB` &<4 ۀi)AhN0ff<Ωj7+_J 84MȲ Yy2$$xH8rDxEQ4 ӄMa(As﬐sĉ~IҭV tzSPղ,54MLø$AngF/"JǯvlӧOo>-ܲ?-BTB0 I&DQ*( m۠ (UUYۋ4KTEASQF0 t.\y*={022$IzSU fi 4I"@Nk:H]D b⠞!7|s'oݺrHtrz 'Ij58'O߶'I_B4EaR4;vIBu43UNe&A I9eX@K}H0: $a5j ݽrAQhƺ뢥0a{Ϟ=Уccy ˦H@*iYfH*$vA4ZV;"m`]7mhZL&eWVuDבn!kXF\Ɗ#NC_^ưmn6A"xE0σ$L2B4ay^]4;rd EQfUUa1 ˗90d2"hM&A"t]]]8~8ji;CzXU3W?}tapp0;22ie)qYh@‰':==H5<Gt]a|&Z*L E n0[o(p`hhhD"rrr` "eA.בyXxuhÀNQX_Z4h$5A[Qi4EC(:IuʻRǏ4=L&QtA , .à@$pLU1o&>P1M,ZXմ9<4AF3[fxv˖-墎;V.,"b6\AQJ&B5 v ߚ%I$DC58j,.$IbzW丙n %$"$) uB%@=߇R>ʺiIHn$ AR)jroE`р0,d$uuAi,XnA$ RR,he2M\FWo/$IB2~m>?22?ϔJ8f3'M&I<0$H&Ö$h"m~ 5B4!J , uIg^xwGFF@on݊*y|$ƭxŞb1ȊVC"J I2(mX4[o5755.+Aei!@8mñ,{6y% # V ^"E1ml4ʹ/tŹTjR.C4HiE$+ (Esk_Z|Q8ZaYTۘD v(eY6ϓ t]a$iSpV!iEdq*T:w GG[p`Rb1Rn)}cccH*Jܟ *l40 7S* !,{{Qr0 mi 1Ecijڑt01?U=o?vZ<2Oòej۸5§Em]]U\?} h:Y#|Uz":8X^^Ƙ FeX$* /ҹs0- Mؾ|wϞ=lٲgdd$6CiZueqeXDXid24 ,cBpc*>AU0BVOY_{ L6ɻ(O'ItKnLN.\("#(0lK!$ <VU'TJNʼ(Dnmm-;66bjPUZ [nt]D]]](TUD8 ZݱUVbMQT pE~$R[\ _o\{DQLo~F9MMXs$I\t mZ#?}-Fbi F $:uaG(q`"zzzjj@; Ġ hhylbM`.V4 H:,0]I/6311јʼ5(LB3!HG8c^O- ϣ'H}i6܀qrY"$+,߇w4fmoE=|ҥ_wqGnrryRQ@hŔKp pF-ۆyX(5<mUMQ`.]4IfǮJ;>۷ey'ɼ*Apٲ`|G|NבJ&1Jm,J$ݍA,TyJ2 O;NG{}Pa("E$ QJ8SިTibjSS)B!, 5Q JsmEZG\ < }nਪX&I|Gױ`P\LO$M <a3[4 R}cYVZ} jFQAx$e σn#0H5M<σt `M\,?vuOAOrP"MwL>F#x?8O0lBj4WVP RչSDETuGuxV ot!R7@(l.dh aDPhpqPZe0 *?ЄvwpLw7Z a=ӺwF/]ûUMGMlcY>kk=w 7ܰ7H̖(J*8HyneY.Qe eYE >I:xòP6 :Z-tz@ܨ<INNN&''fsssGy$L&?0 hFR{6r H$@۸]Ua."~88MT5 %/Pi;xi:;11nzW^i<A8:2R #خ3D, UUHVKjۯX__6ۿ=ǹ#;v80<@)@,OQ tjI.E(oB{tl,٘ (08C4!c:e@ncwKlb[-m{)+Geߟ(9I$i: ea]Q3M؆e0,&]a;.tT4뺻rNyQM_V @0lv Z`@[J:؎Zn louD/]BWWP(D"ڛoBm4@չ_QpU"U'HX4Z-TJ%TB!4upzㄣ#ebp]7@q]ٳg6z}DQ̇)7\Ou$}BaDx+a:d*Ջ #&IyopΝ+H "IJ M34.AdAЃDi4\IIPtpCdA,--5fTu/KQJaP˲ a jRӐ8H Ah7WsQZ܉w'N( <[Tf$VCòpFql FP`CeY$ VC8oͲ@_ь8X uoe"TNUU=/'Z,FT?YXk 7AZmFW, TF TBT׶a B8[7q ϞEp 'xmu:p,N5jY 4qLE1Et} vH0`I('Nhk[{zzLOO+~½XFB_$i;@Kp.nueuq@uMӲE)zԩS'N DQ8,ps 100*ֵ055Ui:e@\YAhaz(:FMIk(ˆ0`Y q-+BP0J%PqItJp5 (be}!UW]:uj.$)r8 (NAbaY4 PrЩ @QMԅ hۆ2ih6D"àC!5Mf؈?yaZ-EPae+y;}=K!0 vҡCil۱R eattΞEtueҴ̙3o|˲aiB04O$0&I5MLQ80- 3((@ F娎HN6?<0==} )T,g]"#v]$^E1$Hp:5c1-,`zVT ?9B4eNxIyx ]] vvr }}5X n: $aj-G$-/<η6Z" T۞"I"yi b!2"s@}HooPpjܹsPqA@O  6D bb\ q`X$_/JFo֭[Ƕl8V➇xlyt$'IeLσ0gh5@}vD`7 'çh4Z}koooy|(yL,uqDiۤjJ3o>:(G!DqvllL={ p熇$'ldu;D\7d)p4Dʼn xBhw_H(,K8l1 !(,E'B& PzuH|i¸|SU4wd||V}Fz$ QAPWPDdڦ@ [ӧO7|OO~0IR<8B6 B84 dhC0P 77bD eYJe-eySS84ZMݏVMch8h"HS,Oy9L FJ r?, cZP!p MEAXGm8aͼ[ȫ*3jة 1xE\m{AiFR ` '\a=BᅫDq|"{CQx$K@APb;HY/eY%CX<|d䇇N,,u4 9Tq=iIBݲ&Ad 8Z l6SuHt4}eq iO}ST*$ ibttw6\@òEI2 0 ⺎bISup=&jew]LEAeUmp|*s6&}]]]dYޣ(JNHhhVCQ&bttEd7¿Am(: Mcۛ)jK@;܉%9Mr$IyoY( ϗȲh5m8*;'qf` ؠT:o˗CETUt?O< "*: i\0fyDCeqa<]G+(˺Ns}T*;›wΝ;ə 㮋S*V#u]|JӨk"c1ت 7e\(P tIH$ <ϟ|W!0L}xxSV yZ:Z Ch1 ^i4e!J<zayR ]kk, oTR{u&&& \CR,--)v%TBueBè(70P-F]q1:5/" " .$ ^a S)E#$I>377صkW~ppp$IiM+V rWQD"tuu8Iv^s݆Q.+hV  LBUU,--me$iP%I'ɓsYQ i[iA ZcZ+8<i"!,EmRՍ .I|,/NOObpchfSkf`۸@ت(ͷPW5 cQ`iݠ*mזR.e=cccF؎T*+1L>Y#0zQ(S1؀@wiXmczM rya ;JڢX0M|#HZm&HJccQ$p9m\l46sK#w!Fbht]MYe_+ 0L^-e2x@ y oMizq"T`ÌDԳc =TX4MQĩvb$")8Qx&<[Es5vMg P(BQlpcpkV }> d2(.,.>(Ut< (wNW7|H2< ˲ ˲u(V`K\EMh4 ۢD7l c FtnB[Q7xcW^97pCq\4 B(O\(WQ 2"C]_ﰏh{c&X } f֭[ K.(TUb~G!űR O,Ed@W4'Y7a@EP8Ѝgp81: 6GIq\fjjm۶]}}}lْ{Om}(p`=ϛrnYY>G$twR˚Uץ`,08JEI7MqFuYt(r{==55XP+JNuɯuhL0 Z D.zz3OȌQMa@.kYu]66h8o3=;>kCM"1 V]ɇ_l)秦rSLWĹl&R eZG(.lFI, Ϝ9g$q @]]e98;}(8fuu pi&y$Q}6EQ Gm}CfXi{{xe41 0N"'0"}yij8QD#z,3:9ybk_۾98Occsc:;Y6Lز UUmib6Eآu㘎%nlpMF u]رnq(yW)گ?oTK%2cc>qnH`[\SǗe yW>}-@977Ԃ7281vb}jO*QU&4siʛ j~rQ(iUpЈ߬n;wݻgWWWVd(r jYN4Mzt\bsp0JR$i.ŷ1(|\F^Y<\Eap8\(`( Mo3jG 1<-#P?, 0^dccR(*j,dr9_N^\)=$aO>ϨȄj9MCe:b2De|YοUD8<$ vobZL)1-]Gm)hsd,aDRtE.cHuVnEQ*Fg}v̙3ݻ7|7QUu ZC5cOc` [(MP#!ؒe\EQJӴr&&>WyEP َf2LUh6\w/ݍ(MѲYԉ ,ˢ,~;Y|rӜwt}l=AJ6ykY"GW;VmFQj͒$_Wo|ɶD}@/I(5A`~ GN=15y((MAP}̙(i3dm s]%SPp !LӔ@q.r-L^U Ffkk,ˌZhY̋P"%esF`¤IMs(z;?;Jۜ>{}J J%IXiEſ#)"‰ LӜ[o+lr&)gEU E!L " {EL!`iJGCle 47gS'OV9> G׹=㓙 r^Nn`a/*w۶m"|vPʶ-##<8kk4|jϖ ST @ܓ; Ii:=wއ/_|:9}r1S>Edƶ_(6VC2TnJK(~gt_Rw LS0DgGxv9gTsVm*IS {yJ,޼ (\u Vd~J o7Iν݇sܓO3666n'ME$/S">(|('1k>k*$a/v:4}`"9NC_H@{< )IdY4E]ZBuz]w\ v\.s_60`fqnei4o,3DQDmyiEw&6Dg]ܻwW>j0 mV 4Ge*$& x@ ,v, ʕ+N!{oΝ;g !I)y޶j4I.G4uj(dOއ4|IyHp ++ˆaaମ1ŵ5vk,c2} 4dy8$$U`_Q40LdЧm2##*\Rߵmdt:lNyHň,LN2],ҹv\w,ZX' Ȟj}Kԧfgggk׮ٳt8(qqFo&ucmk$xz;8U("u{EݱcǙMMN0x*n,>ׂ( dlFUV1`$ IKEM%M_G<4 =>OKtAs&FFpu"ץEV>բYU咮ix2 牗MClun)І _ַu0вY ,c*i8ĮhT*a2\3;ˡFzQS`Ɩ20[dp-I{$X MU6[G?z< 'E{ @4*r@7㠪2ɐ)>7R`CIDAT*nKSbUA48wT$=/oM gv^†e&q^Ď",Ea*dd5(Ih׉d8(\n9}OR _ƑZ-GVӘ4tnrNr,U4& ~`И i>˿LJ *˳0W$iJT$a"$v5nqxxQu_;zl͞G?փRZ{d(TO2^KcԲ{rb&F 6E1y?f)0+#<|>([*ȒǴ/6yttĵ#E!DS(&L$IPUQ}kO|S:vl$1@˯u:BP4 $I"KcI\> a`g& A<C|iddd!czs͈plrɭ-$E[a &X TESl1RAݲH%yL&s8U%$\K&񛎃j!qL,I:X"#la:!CL!sT^xa}li_=4M 5-lY*΁FAt" I@4#۠0@Ht>яg۶Q1BOL4}err= 3NQmi * Ɣ?cta20${O| q499IK2x v]W|FJA$>#ҩqiL/.x| ј7[-ɐ `Ue02dE6|$)I%q$I{~/Ib^_rVlfdĽi>k0e\&q2.<,vZ$xcU=/tkQDQ},Ut^(z=LasO?~8qt ʨy_(BP`4p^H(In<[$Niz駟_qѧY CJ jL?QjQD0ؑ0iJVcYx3d2(Az= fr&Ҕj+v|;?e۶v/re}}O1`bek]:uץ/<aHGmr/s= ?( du}yn{oom^Laxک`ܢGQ&&&0 e;}۠Rv)}7;ǹpɓ䂀$1(33'$Izڵk#W'B]4$묩*cE hl.&V3Lws]HEEo|`یfhu1iZIy@>u9 OS,a)PϜ9i]}{$QfIݽ5AN4Tj6zbI+ \ice!r0aci:JqC<.EI @%+}$1 Y'oQ)it0 $IOL!cօe]d@tr81eej ;ie]|nD v/I]:4 -}]z`%i0 k(J UU^rl6t.l3$y _ Z*"H0 H !' R _eyQ_~ggϞOUv:T$ " 3iےaP2MJ%+dlxq>L NVUq1!3ITVh sE?d!4 OC 04b'N裏;]lXWMQ1/p)eف7aʒ)#10LR$/_|~3Cnnmm ?21M:PvEh"XMv#,={xb'}ؐjh\,LIXR"76mz eD!']{4y:#y]1nYҞ~3ghZea8q ;)j%>邦iw ~"It ЧiΝz=V}A\hNLPj1D؇7n` ӧOݷo_^yIvx:х$l1iXah#QDzk}Lf7@??LO)_,T|IbTӰq搁`:qW( $@S0T Ft~~付` j-du] HQX}r δY>}ޝc) !jYjX _|R(EfKNm*={ok##ȶM#6MI]e4HR,:_gyf7{/P}#+Ld242TT^rۥIfg4 K47v].\ "˲ϟ?_ٱclj~aQ<1neL-WҔ$a/ =I7FM \q 4e:ˡX؞=N՚߿l6[4e%dnj--q)F]QÐt@q&T,Ξ>}F)sF%GFpK%r2/HĜeъ"("/2_h.o;)4.uQr9GsU~ӧO^q8:YUecz7+dࠦqk>*<6% }jUEV D-8{8FlmaEz&aGy|>͒ C,4f9gYr-/3]\gf!4GyEkEO,楥TlTUΌi0 XntrCQUJPRe7Y@&W(mmΝ;~hdd୷Z)Z"jTβ55`51::J6j!Z$B)&P?쳧gnG766Yf==I4ֵ=Q.)E˵N3MEq2lL+Eqz4ڵkWҥKǝl6QUFݮ-Ɯ+M)!!E gi+&KuID/I?y% 64IUp|fY}o}[O:U~}\n^o0s'[nA^Yt6ˬm3jYLr&-Oݘ?̀/Iu" Go(>'u{,+ !{`uiM4eZC' ro>t6!H4$QUʳ=7wɓ'+/I2W,Y՝;q=0͒WUl cbWvix&`tt➦f2t4 1>~w.<6ˑR(dGD; aڄ"I aX8EEbm 4e2io~7??iw: _ba i>-aL ;ZuXkzŋv9CD@u o쩜fl\lm[pɒD4QqyO-t.+˲>6bH;w^I@M6qrzKe L1QiԄQP9l@]I"N=7~7J'Ţ>!mmmSp p)l8ի|pjj{uDj^LD)) é)dYv}x駿P.ϬwMZCɂ,5YE!#˴Ð\s##|gp&bb}#"%;s/^TUIQ @ z*M$4;6ƨ1Sn$&Jt1]Ca='iz臗/_^4x (4(&Φ0:tE3 C.g2mY3cYx$Ea9nÂLp&+Ç?&;u*ccnh$7e9>MceiBN'|{>4999_(عs'R V^ob">aEaG EȮĂGQ5!_=_. OLLj5YVy[qm|Um$AMUYMcƶٓ38تJzA\"1MR Ͽ+7 a_(pP%;;zb$Uśt8Fn^ xuT*LӤx Mvı^Rggg**eQz PU0MFt^q$mwL2M>lV54$/onӴ.^z \HۥBj ߦo&^>Q>ˢ(Ai\QD"-ma}o|XJ\ɟ{kk].FٶM!#*dU׳YbM#"FGk}]^߮f)LZ,~so߃w=?Zk5i]ŋ 6 74*$ccrVȵ00DN0ܻ0Mq]w?|~Ϸ}Px$s~my";G˚!Zx++iaf8eQ3I@l"2˕80wEO~uE={Zܪ$QīK¿ ۦzŖa4 nIb>UJS~G]_'+ޝw,˟}^'<UŎ":d{=Tq7|3t "UegAYfRYISzz>j1nY>:ҋojgn>˔J ˗1m2QCA@PA&˴FF{]re{^~?j$g IU9X,RmdISv:ӺN6eSUϱuZi0 l4:HrX\__z뭏%I2g{v2Uץ)=}{hcNa:9a~5D: 9g>bbPp2˗ccequ)WƸ26FLD]Qa^2A<ֻ+.aHeF0dCf\1$Ҕ}]U' Cv2Q!|Z'?' iXBcl M!I{$κ` (>YpI60P19M;jm\y6jU=cXKĕ_NǡhD h>+iJ^Q}Yz1Crxz^WLy%0%i{Bi( #o.M6E D:9=1Ah*EKDEQ%=?8}ҥoX*θ[ik\uie2DB6T*qg5x0Ֆev:)InV$oln6N9n@~~ Ygi8@Z$I䒄8(|HQ4M&2fl ̕^ \(zu ]jJ(I7?z94zEԛM6fc1aЗebE|;fE@}64iwr1$e2S;sq<ϣ-IQD{r~&C# >mmdmdWW9$i׮1p g8a8}Yu.J$qL6iMX[[f2X"eydM %u0$XZB膁dtM)My7#GNd'''_6s*MmXd4$aJQh!FK,&]Qt}L1$!YYz5^',zR CQ42J(mZ D-u<^YW,S8$><2ffPܤH.}/~>Ϟ=8BQlE!Is9&Jȵ~)f2eid|jF.G5 )& lKݻCql۞۵kW̙3gff5M{pbFzE~L*}B=,FJ@q@`f-jCBIS6M%JCٳgϜ:uL'M9Jt- ߧiQe< }}Z$R5M~7HB6T* JKg 뤷B>l\sL0Pi&OfI$q}I׃(׫՛3Q84)@]i4uEu^.ŋ],2jED_ Gal Ht*zܻF0{ւ%I"(wbe4(yMS2i% GQ5MY(bWq5L0]t}( 1DP(JMO|Oڶ^VܠkKxej\q V% K4*mcY(bdkҔԲ0۶ۿٳ{'vY p?`27Ŕ} U44'OGLM4M}!oUQffȏ޽{O\t{{O/lmm 꾏*z04(bۥ'bX|.G,&+.yɓ$4%-ff0 {ٳgKKKWY^P$ɑ fS4#EdO>,c*/'716+ȚƦm3>>0wСg.~< 4udIBCnK2ܩt0 ias{cB!Lm]ImA_t]_׎g/d Pn2:N.ǬY=o KPUvrtTI-vrL  ?IhonRJiPSi4g2&t1M4T} EaʶqYBqoiJF5M|SF`%1ħϝ;WXXXxr߾}''i1d5lb>O4j YL6;r9J,E,,%ۦ`Dqll V*~?ujkw!he)j@6z.\e&Yv:v6# +L6}<& >{ԩ㳳gK,E!c8ynM2lv뼦W){KjqJM ;έܬ|WQ}3Y;7ҶI}aBe* MUQV\}Euߍ'M(b5I8)j0 V'*ʃO?ۛ&&ܳ1{=" ru]LE4e0L*+WXYYa||v= j~ߩhy3Ν{Lf.ys%QrO!IP ʿMż>6 F&.~-|>OAcCYE )/񩩩3,?Dtu8&ұmV54e+9Rr-2 d]<ץV hlm1" zş(lEn(hIB>xslZ<>fO.G=y4MNqˢ\nX _/M4M|GQj8Ny_pBW_];wzNlۃ~N#0 Z8'OP&C70#lȲ̤벩i]>BI~ycb|>'pA{"}.44}i<z=lfkk$ y_.GADY[QX-z,@Q>?22roo5ommwU2i0Hq:8;ctd,o7 `-IZ.Ǚls5c\׹]_.&\n;o?cǎ$2A07Ծ }Fh.%ӤlhJ\v]N:?>8}]pgQQ3x;v|L2|׶ p!aaa] "S"jym;!~$ .l#ǟ}H U\B6ˌogZ,R:͂a,h\L`&tɲiid민rt8aϏ|٪ױ8(ĆV].5TEߖ0RB;F«#RUPUU^͛__|BD:f^r]8FMp^946Ƙۚ,0dacq(&a4:K/rgVWW+yi|e!)] SPTh6IOWn)W(lOamh;xxrjjM$!^Y,h*:ƒS|la4u5M6}Vݡ);w񥥥fggḞ qDG4 fW_=>H$I4nӌcf3;^V_g#<8ca`mll<*lhzdXD1 8y\-cߧ\i b0yOh0#}LYAŸf~AeYr9ڽ^%~U._ъD33vR . GG)<$##aTM;`[m PQ*Zr"˲HOm3 lƕ+m{7 ~pO.DŽAΊ El]_pjLNN~$Z tfzzZhu]1Mdߧb% a YMVKQOncdd\[ C$ߧj3q'.\'?9?;;"@ߎ1m۶IU,!̲PM*MOxUîKd"9ڵI¦ﳢiXaX'}lz4C$ BrLfBL$q"[(kqs98&m{y2H1'& ?(J'v܏~3W^m߿ I ͝;$ dyjd$+l&ﺨIm$ݱ1Z6JCϳ)8\l6ЇN۷/$:N9P ,{7uEFk~[MI|=qL0؛1 ipR mrv+WnzVVV˹Cq& E%R^M)*eQXmY\;+#IɰfOL^lNԥK=jgcn 3OY4NS&㘃i:Vl.)Mr]A%$_,2tJ7 n?cBa.122dmJGKykziMcgtXdyN{c|.~D]Y0 /<3OOr+ccϝÒe^![ ϊ+El]G& 32㦘hg lU?1A@ $]'v][r9znH.@)|L]7@ۿ}\.;Z`93p#׈$F]Eag>OGТBfh0cۃ"4AQ8nsk\j 7o vܹ\#W!yI•)> JYf, 3ݒDD, %MQggz?яNs<u]/򄙦GG$n$qG MCwci2W|5`#Q I56FZK7݇ټ@ tScn,jeF}22]̎(TCaĆ1}2o6 VVث(tEQٕ2[( *f7_UY} Yޟ\6}F&&s9V?榧%N5 ᰻%՜0j7W]:BgwqH$Iuq]gί{S##DݦP(j^?G?77w\#Ca Ye&mUQh|-Xj47㘯*)KA]k8vN(z\}nsȥ0v4r@7zd&(%y.c(4 IByqqߜ*rfsd;vc*$EeFAd1BMeM'LS]_4Ms0u}l]ߦk W;: 1"/X 8(Mi 33LQXPo'4M{Ҷ4dusX (Knq-##W)$!;{buuJR7$cǎ//ceYIY*Smt]1wE]*1bT}-ӫը`94#g *S`w6llev*9> fdinCvNYj4Fi$+. j^|٤y,5.ԅ+#I$)AAS6l"|%IHx}I nb<Eİmt.E  m P$tq}{[~錌`YSɖt0Ea}ML(M]w$t)6]~G Edn?NϷz|fAUeY&dhr|6Ecsӡq6B$}UQXؠ)(EEAC>H'[xT¾rLN[',33:5U4YvYauqXQ' ?RH JRj-_*m/'׮с"vzEK%T kYܞ[Y} 4|VqdYf3 2;I?<ӟOO3zt{=r9uԭ-DB4RIBVi[_VUŕ0dEDOasi N81ŋ˽^īuX eMxH*~qRU:A@MR˛ے y ,nmZT(L!)iBEw,Wi( Lߧf0+rxv V,///~}y(Nd覉$8p\3 bh6AqLɲf^Dcgd77:<;Oo3PGwrM,Z0 QucВRf\4Q0ҝZI,I3>nXQQۦ%3 J8Aؿ'M<6p ֋"26zǔ}v9 4 2 [$4gQ_q8_3pZ=xgqqQtAzyۦT*qeOQפ)$Bjǃ#_[!aA=>!mĺN:o| O}SY[-<2ssl^@f% V6-F 04e4._*QFfy?ÛCUUd% Q.U*v],Iy4|zq]1|X667K* =Ib(  -[󥥟كiD$IOtHV2~:*iFWUBѠ2y=YfN'4}/~kv6 S ]%RGr"Dݕ(:Mץ00kKEʕBa t*vMr`v}}NiJl23ut|EOւaY(Qk(4e${7vBPT!vlȒ\t P ^~vriڕ 2iA;ZTm^KʾO,aZ " 87莎aPٳgs*KKK3gΜEUTqEcn>E^Y.EnE!? q a,w\t䂀\&:I/_|}pBe߾}JT/]"'4l$.Mu%Etŧr9FAK"ʒD>EQm.+U8iȀ hw>~AI!T}.ZnV|>m۳'O|Wܹsg]Fֶ_mYt"RU c;jGCX J޽7[hx%I»r&;s9O7]Ư\h6t42biJuTO60$=Ys9JlNINjE$]Gm!\{/$3ݷoߓNljܞ=MzaH4K|RbhTs`E;A' O 0*ymzNu:qLۥyTĻ_s];hz$'' Jrjk ӧ/sNgTbWSfqJN֟`q+6:++mփpۤosO~% ]]-6YV[i۬PJS>o)uCǸn"R3MSv7ب՞zo_t}ώnn:cOTBfA "IbD$LLLtd4#EaAV#iH/]:Okk ܤdE/VIlrV3*cA M*AP|atvIPXyʕ+A*:Z.x06iLLL`9wvmNJvetK}Z:׉ϝ|[oUN:uϝ;x\Vd/%WK%~}UIbHX"ښfEiS/_~++'Ao6FQ0 Cu~PUKJ( EWlY4!IXUUfJ2Uwϝ>}?+,|AUUgzzс^[#}T"tiۦ8vdf?=""7+##iʞz4M׏Ź&MSar|}yy.rL ;a !$q nj Ϟv]jhd +Ν'>1kY֗LF) Z&^Y(|ӲNiYh{ץ$,L:=孭/6?TU3, srjJatsrhe@10dWKAQjl5lmQV٭i°_Vvڙk׮=5{\ZD6}tץwudYXkYk4r6nm v,Gg_tK W&;~u!5[-BcM0h {cZ頉'K]Fu]TW;; ȑ㳞wHwkXUi: Y1 {BzբyKKl ۶.|/hLy=:gDq+40T<ӆ}ßbvtjz-I';6??{~뷖'&&X^^fJpdRU4BA!|} @"ik]a UYfffT*lmmxnQO%!X^&c QCݷ$4Mf'̲YFOFEr$O|k_{)ܟ;/~$ŸݦjH8m hŚQ,XMy *|Bj=]Avq]QȶLTi ii4M#7FG)0Fщ/K3r>NZ=?|qLMM,~$t98L;Y w[rC+3:OPn$~7~cֶ텱 k$BG%*rCa$P*RI$lѿСCzytt >vbuu}܃z0z s<8dGK@S$ 8~uW*(ryic(/;"!28;T.ӔpS/ Rnybb5.Q6ءCȡM6Eˎ8|Ӕ[J;eUy/}_}n;ҵmNgkk]LD ʺ111z6x˝΀Eq3_Ʌ<44n}KapY S-YH$4zR2/_&6 2i::?nz~W UUbFGwtQ ׯC+yYJAVH92 yɎ377GR፭rgmwyu*,qn^ vY+k4 ..]Dl\*U*Qh6pW:&e~:zL&w}?;W/]Z|*Ad_i{7 NB% m()JKҐe$xI8Ivkkh\$!I2̠/5Gq"r4gfDhphslCaʀ CCHMB-xٟ>^q^xꯎ3Yٳe[$EuylalO%ُ"z};}+M 7Iǭ*.\xԩS?+gƈ67I;fwb7}FG<{CQġ<]T(QL,!"Q_??~Zg[>Hҗv0h4Ua& i\iiAFK%&''4e~‹_?s”r\dϵk(ܵsFq… 'ǟ^/wܵkǡdYb!cN&4Y8l{/ '0RIlhEG3oIba g@ۨi@F8uS =yT?˟'Q۶j?yVVV{=0dU҇枩HSQo(09G7n/rX|$IbrrFq$arLq/<REPuϣ?|뭟KNVy]hJ, b|1o0qh4}|T ϟT** u=1"IZ-$ ΈLN*9/f~޵gϞ;hFҥr#wmsӧ12f^]cR!MFPQha.ʏ<57w\.=:Ja޽\rkt[oa&YXYal DEdYo`2 8w>bxD4]vkuHh}Vc||((ZSkk\mеn399gΜɓM[aukrڵz0',ZEPxqP(u뭴}εk4}ݦ풦)4eTllp-r:#iJRv;0WVccc/K ¬i厪.q0"Ki˶M8=Me^4~z@w*:~ƸBqpO:(,fj1 EūBCy.&;ΞEc: 4sc-IV4Mfs9ʹ1Ozd2d7 8#zFOU /u a][[[~g[|;Ma8.N \rZs^284 VCSUٿ?z)3׿e@ԧ>u,\V WVDcWQ^;Ҕ>qlMBE8pJrG<|}Ly(7~RMS>s\frףs`1]J8 Qz=A4TU=SOTqq[ov).}$\CclsqLX n>GyuIOƫIr__/7?O|b^&rA"9nc ߎ*$^,6n[\Y{E;}ĉ }[Zg>L&l6Kʕ+>)*0H0N$RàqeQth4ZEx?1Ӏyۘ?rȵkטlR.ƚMڗ/{@(b8Fܤc0OTUE}nuNzh˞ly3clzi$}2nʶRON5>/pfe~OXrG}U*-06\*㘆Ѱm&mH4`!}+o(OѝN *' Xie0ILabx5pX$cJ6|ߜ_;dmkKKmWs @_nEdċݻٌ"NDV{0#\n?__l0?~NH͢Zg>EUܞh,Ih"~jQ6MLdtt70~U.\^te!Cx0^[ yti"*QUVr94M+9rdĉ0J7K{Eu]^be:/x;v`eLAuN$#`E2}o|z>G|c|O*Tn ,^c?g@0""o\l=Q*PUğٟ3''>fzvhsZmE2e^M6DL۶aaHTZTm{~_pDU#?xG-ZjI,4Pב4!\C3ab4Gԩ'8yɹsOË xяp<̄vYWĜ 'AS\Y!pҔA@筷NO'}8W/~vnn 0d1Ĩ @R%ۥu WbߟdСlElYt}HJ1Q}߶^4 ϽOɏ|# we,:a& ȼi4dIڎҡl3eӟty4 zkƯ(4f6$! jT[i81nUyh?$ITW[P4 ˅t.^ϜA?L&L&aUSyGaloGZI)ՈOM!L 0]6Z"ttv"]*pw~ 0q/[di6G,cbb]v(d j4hv!"H>#Xti#@ڊ e˖y{zz$I(z=H?LQ(pi W_K/)p$d.] ˼d2<44t]H6; Aj T 60*hK$`0Ejv;A&p8VN+zؗ%EA`jj ł&XD2qhnnT) =^/FGG<, dYFMP|xgg/I)e\bŠՅ҂ @C(' H *[,Z޽{!"FGGp8Džp:he201eTh4d2VFGAczz/$Z[[6~*<ۗ_h5 GZ>2E8f,,BETU( kY,H+ /?S'W]rɐNEp%q`$%v:Hs" "x1;vv3btJU5]GjTB@\%z= Kfuhs݋h4z<7Ϊrn73m4hrrՊb/V*먨e% yh5TE 4t6M61 FG}4r5xd2>EЫBVa=t  82mjb46J# v#a4­j7p`>;wUP%Na4Q*pUWl6cѣh`$I44HEDQ`$Q(HDdu`Ǔs6׮];$I047~U(EЎAOtY@-'ZTTX^fT :>s:L4l5>.U@^U͒-9Qlf IF#t:]l&fk6dKE/&=6nz>a||&D#e۫tvv8|.$XE…H (e<0 ( s̊C~d) }v;bz e@Q)qqO*J@&ZQu8n( 2[{F̷(AoS*"PiLi4A4OYuS8x*V+%I0SʵڝNLMPQ^IQPq8PljBD#B4`ZnnިgZ_ xf*T^G$T.,JӠ{zPU jt{fŊCv= "V$(h۷:Y`hx@CcsMMٛai/7Oܷ/rJ$LQFQE5m3uvPꥠ(#(ika,yHlUnl<&P!jj ayk5<g~ntN|T {f QA:x'pT,l= ,.DС9g@\.fCX )Y}1 N,OȊ"6gLXbP@W,Ϧ+!o+o0 Ì8:f&˨q\#- @Uuz= 3N3BU-Geyt?#@~z&p8V*pl~4gHj4 t* <I"|f<zp8]{whll,p8PTPՐJсZdTYQPyh &p Vޛ|?DpDCD%[VV+* RTP "#k5#@'+###믿,bP( ioG<GKKˬ>xIe b Ԕv۵kלn"4[*/m\\6 W{;hF-"4Mcjj mmmLLܲ)8檫G}N,FT*tuuazzA 96ڱC$yq .l--[Z fh2Ϻx30&&&ĄU})m.GGqE(8d)Q%E ~c_vS<5iԎAk>ǃKocǠ/P+Q.aXp#Ar`:z}򯷷k6c3x#n7ji?9K ͆B2t: jh2Q(|H$-[̻k׮9끙ΐ\sNhV[[5,K%pe<`@<8huŋ nb}qͰΑy%YFN2W( \DNK, 9rdh4Q{(~HF#zQ$4_^GV W t IBZ-=te2δ WFWW|G"k֬9k0k_(hu:ww#-I?!NMAt"($\(H4Hb:IE>7/oX8Y[ob_g1Lp29 M.@V(o(hU09$a\悟wrEGFF©TjN"rolh/||z(rh^R SS] nwȜM,EQ B_kkkp/޽{QK$(.$͹l $EQ$ - `|і`ttP.drv$Ib$e|۷o[.r;66(FOm6ny-@Ө$Z,prpsl`EO>fgDTWՁ^zikW]皚vMM(<: ^F2Jp˧ojqi.ڦ&$ Q~^Fj.28*2pbAfrF˰i4e26Zܟ8az}T* FP_qW^yesxȆ%KZQr8q= 3cI"f4@\%H fd^}[Vl6{{zz={^CmmI蛚y4\TIIbxq|99p +M6ożp!:I(Z-ѓ$YFmj41$WěQf~w||rhdahyo^y%wFaP;Aj ÁR|a,@j"ْV J*W^^CeS)H2DW>'#<oA E v;8YFG6=<85CV}fu:EAWWó vܹ3z!N}U$ϣf0ୣGٌVLf(@?{l6;;Exٍ7⯾ S=I%Ih6NQzs3n7;wS#evcB/Lؼys+_ , k0(,O5: i&b_x<yjUD{{-:rќ '_R톎ДH6 ˍ1@dB M{[,_ss3pPJ%a4M#CFz=b4L _5y5) OLzӟ],]JmJQ7+f5d49 (pplfs~ϙB K1v'dYq( Z bkkCVfBi_Qvxǎs҅jYK^ǡCB$1f9@$EfC*In khqT!llmme} >8V %}iiD"\h!pZ,ph:{_y啳SO=5;5kyFGY,b Pih4( 0m6;v -jd><&''[ntM7 Lss3122e8JGj+Ԁ, Dq`rrEvgsI| sW+I$aQM]К^٪ ˂:SQT|66r(Pt:vP0\HST8?OQN0h\@[יR*Jm6,cAQZYat?Ap8?|NF͛Oiưh Ȳb0ͰZE9j5Cjz|~63o& s|||HzAizR)4+o>;{/|dF_qS޿Jei> Ֆ9`0P*V@<hh^jYD4fhW\L"JZ xUYfL{rP:4ٶmBhB7##5kDh&P瑕$.EaTw"XK>>'b'?L.46Jlp[hhGVA]{-tV+o ;xp^c ۍX>Z("WCo6#Mh4BBc_B: N9g /el Gλ\Ver9Ijmu|q$σaNgr^~e?<4h"y UՊ4h]q)[n=P*X8Ϋh|̒%J%X R F UW!W*!11Dhlx3CHdZ-PיjD.`mWaf Pq8nR)N'K.aytl6X,J%ԏ kx>@yIJ96=249&T,l2'c{N^(u:, Zv a|К[,MC*=x`OĶnzW,^eyWTB!ݫݙE.751Z-_fm۶p0(@.C>gfsb0"Ba(Q#O8D1_׸;lxᇃjժAI|z}lT"F1 õn۷oVq{o@!EP( Yޱcnjs ˲,˞|Xooojefjp BVeOWg}ZlVC\fy+-K(袋0>>EQB<9!r𩧞w 5kְMMML6 'PGGǠljygK&eru}R_ZÏ'\/b[oL&_V z+J ly_<|72>@GQ(&l]m$~\vm?d nBn4Br>Ӑ? < 1\.3^d 2Ԉ@, /h $l``bAAQ7_10L`YvV`0lt\3-A0:V|R$/gj5"IP~J%W$ʂwSb0% EAiB5l qd ޶xq*kHך;B(*0lNLDؿzw&\`ڵFP,hE].(!բՆt[fyH3\tx۶mp=OME\if-b$˨JXww7[TX^߿"+, N#?22lX|2~j*YQ(WۤqC}8ͧ̌t^{% P^3 Ur1SOϻdrX>G6 puZZZrܰ(>YYh4 r8=IW}8/LT*)bG@zjvhh>_UV]<ϳ.WК0, f}\j5Hd@ݻw}^Nl6T*|NFÁ hYNYYQb4\Z7!۷ׯ_?oTp3 (6PxY.CyȊeg+B=E_®h4 M{;,$*z]zAp$p8»w>/}~Ğ~m{OKlOŀ``ZmvE{?~%\y4`ki!,A3E1"ϳᜟߎ}_ ǻtl9QYw%u޽kC^7us:CCC <{A`DQ\Qʋ/Ccu;@",;_}Te!7>>IPW0vz{{SV$i#)I%{8iz@M Ȳj4`^h}{2xg7m4{cXiAy>l>tgBV ONNq|>@Qz/)KR)l4H /^zpzzr"T 'wDxǎO6 4jf^la*K.߸e{삍MdGߴi7ˁ(0Np,Gf3K4SjofD—H$0 KͺޱqO;~*jaXE]Q`[|4T*6h47o| J;wzj08dX`rrUƐ(L8 'xbv,d2h4|> 9H_۷/k. P$D_V̳>{srPK{x㍬E O?lC#d߅kө] z{{#(va|AN7h{/P./ݿvZ(C剉@St:o1ǣ3ƿ p>uEQ\.ܶsgfbJ$ɡ$[oܴ`cB:;Fz衇"jM{x7lؠ@etbbttVFƹZq?WվjZ(Acs.C[nëV:{0vl۶mv `|d&vW2AeY:lfr\ꫯڵkj,;> u]筀k{;v Ȳd2xwo~S{ߧš5kwqժU@ 𩞃ᄏꫯ^G ozׯ_n]wYV^}A`Ŋ}sݺuC/`08\_׽k֬هW^yt}]p\>;>u;"rկ~={ʕ+?Upnذ!}}}'\xn}7w:,_BFNǟU>U{<rK\2=?. /{WZi~=z{{ʕrn 6lރ?яW^wM7yW\?r[oT?wy5knݺO޻[=x%պOEIENDB`monster-masher-1.8.1/pixmaps/seeker-monster-24.png0000644000175000017500000012473610547745535017017 00000000000000PNG  IHDRMgAMA abKGD pHYsHHFk>IDATxiu&>oUwuwU{5v.]\LQ[C$%.b$L-$ K#ٟ 13D1!ޙ͌I~3cd[)4HfbmhtwZ{Vfyt)R${$|sssoݻ7;55|+N*6=_׎rl.+9s8L###ٳG>{ gvmG>ݻ7k^so߾gϞܮ]:uj;2::p}Xwwwʕ+>䓳'r\7ʕm<SΜ9+{ST'>'o+wst0999ҥe??+twwscccgΜ'}Ͽ3h|Ϟ:uCzzٳg?W߱cG>4/^o߾sTؿv׮]O:ׯ_W?]gNLNN3ͱ1e~~Μ93SO,vmuuu)/_h#ݞy'fϝ;‡9?~xΝΜ93cv0O<߹s'199ܮ]rlL~rȿ7f;OgO>{|%oGڵ+w߸_0::>}},Һuxם Gۿ394]fZ0(N:{m junQ,xlwvۉNg=}C۶m̥M3 3uիW׾Vi(<Ͽ"~qO(F";J˘ BIO)/ݖJ{ǵk~k8w\qrrݻvt (JT|?????`b"ۊ_ LCP m۶m… <}giz(²3 q˗o;tuu=I{{{9MDŋGq$gv,)y$ȲGr q]]]sׯ_31yqmmM}>}wݿwd2T*s]9A .]{\.w$# L4}?q7m6?????==]~.Ȳ|diidi:66?s鎎G?љ;_=v=`nnnG"c]]]i o4|'2ox Ϟ>}կ~,˅+W…$ Bi&I(+??鑕^zi~V`JfYMjXr⛮{1UU+FzGᵵWab\UEulXTf?wYF|tl(j( @9$`.-ϛg~3u/zɓ8jfsjo}~#bXXXp]r/>`~;6Nae Pfy9( AGHx> Y2A)2E۷o6L%ɹe zacXZ¶[ŗ^z35J׮1,onhO8]ֵP(i~m۳ZZHp[-]jDI</o5O>haaee E`t`CU~ۯ;}?|Ld$A,ZSFr<] asEASkkkF ӣ'>qyz=c,,,I4l6QTYҗtLbVQU0QLӄi$m8n_"8(pwLtuuʕ+, l" b/کS=S|3ٮW)ʘyt}}}& 4 d(0F"XSջL,^zw_ /}jfɧ ˲(dcǎڅ?ciLӜ^9 D$a/ױXH&josdYA8ISaE("q`) &.6,3n?Ϝܵk6JS@b$ 4 ;B, (_;AMV+rr8]]e5 AT: 1s*4۾.^@g]6M!PxFO8|g'ZW_Fh]<7>` xR2B$!s#L&qE4, :KT㸯_& Beq`mmN( @HFe< څ2~J4' up  a\y8ER(~`#\nM34iA$HӘucۨ2.[ۿ󅱱Bwkl,S.@6`aˋx8(Ph.<66Up>Ȧ)S]]S(JH.Tۆ@O$quhj??}`''PA,aаm$+8l?#Z0f%IzL*M(JWWO( (I"djw~''A,J珨:KXVvx۶7~ $e} 8_w ٻwVt.3g}$ Q0 Ɯ,ˮ}3O,@@2D"0 ( Oó>5 y_uzu]qj54f9l?_ Ȭ-."HxR epCC8x8Vq=g_z߸O}|<qtww… et.DQ$ #]xyMӊQ{',$efBՂӃ.? JIV ØoHɟIh<;l63ea… $ `aab"h@q3ghz4MsppDKKK8jeu$ -G_fk4Y'w^V}}}< "BasH-APvꖕՒeӐ߿H/...Boo/,˚ :~faNI:ʕ zt= n??T*S؆zq b\,ELˤDjYr8IN\;rF$B mv<Ȣn KKa LUE˂y $Abe$1ﻁկ 8iL}e%RZE 1 AȆBTlZ ^]87ᐦ!UAb$D=0wejbҲ2&Ծo6_K I2oYV!lYקXD!,v&&5X4 o~(j{/~t:~:̍ _g$Be,04A<u7X4 lbll7_<"v}p >À"A(wue\~H'x/x_DcJZh;Uy20IaTXEQ G<;~z(#Ur]wyQXkxajxS4$Imې$)O+JG򓟼<F8ב}i()8l[!jj<|eL\ƀ!Lu ^*8ݍF. ºzAV+tuu,B\.Y/Bx[e[ v&CY$s`|\. 3ň"J82:::@4SJ>u >kLRgl1AَEad(8?/~aW9qon⣑A> 1#j25m4 ]mYNQ"I!Vj0>ZB8%T*zF&hDEy__|$)hVhd2M .($Aq q\xmlC^29y*O?]0Mr9DБ)q^G:q6!tvl>,ЪZ'>1Gf?{]$FJP.:,d.lbLӰ'&.Z2L(|nll~_UvnnR)Tsm ! 0Z(Fyb\`.,ϛG>@q…_;Gg,؀ lQ -IȆB(eeĕD1裏Xͮϼ_mkZvpp. f۠iE᪢Oq5e$A7 3(F=}l&9iڡh;14˗1 TUŽ4x&M`}q|@3(Xz5x<2`V A@TٳgOjO=T[VIul\FP:;ѣի[UI*u~Fcwwy`Y<σEl&:( (²,WPY]˲T fsmO?<}0I,.B 4 ylE"F%uMW&'{z/k caaD0 .ondȦRحYF#~W$ d :xjAH$pڶgt8V4 aߓϔdt:}=W\LQ*P1j!Lӈ< ]U]dR}h7z y0`d2xn$Q,0}4l{+#JW8_O>d?G$cÊ"NEYE{u(f,@$etJh9|Q.(~lB4r;|>KQa43%(,(؆!Dy`Lu˸A0wҥ_m~_A$I`uxiIDA,\ qhV ,cpp0}FFF˗ O>a$XFX[hȒ$(ǁ`HGǡ_p^Z*gYI b{ӧsR4S)h8hmZ0 4YccVV<"۠kޓ{7/$aD>CE  Jar]iBR\qr<h{)J>Ajw7I(< $BR)u4 qe ?O7<==D3 D]vwc<CJpVyޖQm dkc=6;99|ZضjDzSS) ) &I0 ermgA_PA F7A&+kڗ*ʯG}011lNG;;3yDQXEXeHajAEX˲ӉD"_٫_Wo<F TAet]jܪB!ph6/_?::eA6` 4?.ya"%BZm]w߽w||<ܹ8P(do~nrrDh9M!²Sɜ2w.]zw_~``` 0&RrduU:T ]lo*f- ;vYYryTy衇'go~xddd_ey9Fsl;.^XF.dPV<c]ܓڶpܹ]@.n۶-S (؀`1 R]]\)pMp t]SrΌoۨW2q&8nA IAS.Ivgniꩧ'F&H@E *b uۋX,p#tKBFT AD^:.O/sw(< $IB$hq۽l$!}0qa!۶ǁ(0;h4` (A$y؞s v!I >788hM!%IP˸7/E Pš)wV Tj~ rV)I"߇l!Ie*a<(إV, à(MTfQ":66i:x^3MٲZY(* ? AI˚UUJ!8B6{R(j3_|~6H`&'_"o}(b,G$!yaX}g2hJp P0 À8/PPzto!&oi) #0Ȅ؞Lb7}==`&b}}+`UUnIR[+=.\(Ǐh>z$n۪B. @0 Ap]T9L@QUhV\|w8JRt$twl$򎃻;<aBypu`4 trwU}LyŶYiI©X  @-BZc$A8 5 @p]!$~+eX,j!ױCE0'IjN뺎9l8 VC,feoJp.O?t$cP(/elIB<˗1a-ؕLb  2 UMX] B/_`rr(7$ vFDpڶqͲ0Xil*JnZZ,߷QA8g*]] IX>q-C#9]=4ۆ նo_qϟ/2 $\yH&D0MS)De 5]RV oU$r~ضB2ylqf(JxA0HWoxjXo<!R` w1ge||yUU~y8E4( X T;ݡHQDs`"HK&api* _၁BT:(J8CUYvKuQ.p  @U(S<cccP~;?xmIܪn4>>1}jzuE 8Lq$kSwy Qp|_Zo߾#hTt+AaK0.x@1Pm\^_ZVVVL&ᯬ%}7wxllHOOaB7ES#ˈ2 HjX$IСjij`u-FiKI:#L =сQ,[,HI&q jAPbT+\Rɕ vUC[X@N ܄!d( , MO;_xd2yUU;hZRX9{M0qXŐU'k52Te7)d[oQu ~Iدa rҦ^M'<9`iF~XQ^:Wޜ|>;bC&z  2Aga#9mqv, a`Ղ1V*\pNsED"D^!Iit*v2a0 @TB^DzwVv"3tgP2R jA@& àJ%4XX 4a{aEױ}N۸[[gɲ,{, ˱, q+I( yXiC!fL뎃b[Ƴȉp0;(Ғ=r$( Ej76N0H  iXkih: %8DY}}$ǡK ,4 g+\WUXX/`ӣ{Ns=#qž 0Z1 maY1 "<.(ljA[\00q(JRxĀidlQx,_b(, c4I~@ղ((<]Ɛرˠ<e/Jc׮]hTH""s<\J$ib 5a2 * q$ R|P a^eYH$}qȴ@X'ljaUo6{/xvHzA4Q}(q`2 (vQ˲(рz  x,[@tzNߞaUDlo:6Y|߇8d@IF p 8h߇8Ñ܍@i` T- auFr ~ʰ,;o|#nO$pW8 VN<ݶG*eaE`0 N;shbbbŋCCCp8H$`]Ӱ.eVC'MCaY1 AӘuЍ* `,i܄ ַ^8y:22 * ul TOJ-5hWU蜘@XDw28W컴zs=GFFF i8$V ,B!(3 :% ?'IB!(TBBwo/'Oo6e]reo>#KŊ<}R 54FcYlV eQ7 ,//_ 0p|$A@hS 4n\ZXBAnn <>OD$HF$a|6@qɲMCp$qnUSУ8h @[܏>ha۶m/Њ25H&.aԺ~Yǔ`(pMc5MC*؁ C-v8I4::((bG"X #06dL?2lC\K(OzGGGG>t2vSB4$!ad M[-׮iH<>1<׾ǂbggg3R.O di^YFgnxLX,l4&➇(IVޒ~G(.juA,tr^z Z-,{8B$!hV eʸZXkа, ]&$T낦iO>7Nj494M(msm_4:Vۙj {aej^,ðO 8.#XhA@ 04ԛMp2  ʚ  #< |2=m9%3C&e߇ޞ[7@FV vU߇W*%gYз*u/?~_rV'##b1lbyP, -D4QmTP4\OiVvjݩDQ+%A*$ˈbK.A]NUe `y;wP<<4 Qwh8jP;=f:f^ ܬq$HdeA@/ :z$ ]G0pр=>²0>?Q-KѿmM{pSV[-R2ہ6 i7AD^%th%9;(h(( 2\EaMq"AEX,h,Ea) RA0>&qb1 6ڥB?%{gڵzLji4FE˶ Up@0!ؙJa"h uo8sMrҥYYAA Hi| Q0Ar]halv>ζc=(yder](AB @ MlS mhS ###9 UPAECr]AHs.Xu Ѝ׮.P$ VÆadћ0wG, #[P0<P,,k.RnY7a2BP0\dfDӦ{]T FSoJ ePJKVu-EJlσx8ai adD{}0&q8@w(t3C%sܖhsM-TA*?fAz'@<ڞe+[N;v_@Q mIB E ˲"X:dDM)i( Fn@$|G4|P%uuoߎM[BmA(#CfY\SU:*u h4 GQXZ,6=11q;cz/fB4mIW4 @vElpm2v M`o LX-p,:b( zu $v3uI+7JO?tP"&NHQeq (<|ܲPk6Z-mWр[}:: =##^O7fqG6Ʈ$}Ib[}+7}.|0_Q8s D},iDÀ`۸qg*))eYx4a6HlP;P@VoH=XζB8l:D_cXk6LQ8P V> lU}`̻{۷oV$|v8 %¶Z 2MX2A`AUAZجV8 ل(XV+3(={V I+Ipb1A/4>CXuZ&Zn4 &\MH|_=S̼󃃃/g #JuI%I 4meݤc,ò`w@t|w}}}$IχጓL"T*`0/,lX4AVmeYT8$ڶmXy~:!˰.8Z (ʑX8 66`{*YV&8r q`3fn|E!Ų( f2h.؀(<Oӈr<?n$!9D$,L,8 4yX!,x(k ̛UAeM7T$oʝ/Wy=M]LjJX}0 t;̴.Iں4Tσ07u=S*m<ThxhA@gq- $Al]TD1M^u7  Ϡ-},{1mnn5"H¦f۠+K}ݧ~gј_ Y$C2-'#h+9R"\]lp]0mVڪ;dJRyx@ YL۾ JR ng'AZ[5x(<\ #Iz_ &>iPVW D P2 $:σhWPeAʞ=׶ IB0MQ, qB#4pҬ6DFRABp}Zoo䟽e72" 4ϣqpZ$ޔ8ϣަj$[ -MO?-_eӸ1M5UE,+ k:@!riBa0[{t;>)0B"zqAe!Ip=N; .baFGyYYq9 TBJgAMV 硗$*7C;:$IFT*e쎎@7B!o&!ܾ4qHP뢾;j@@068}XE$g ض,cRU4OQMòUL&.4ضmho*AM)I0@ `˿e#dq0 @=ibY( N"WVpi`㠹EPi70o?pa#WAd횆0(ذ, £(ܱ;:\*b:v2DhzҞX eaEסv&\. "IH"^W5E0 .$ATY4ǹ7SNSy9de!,·4 iiSTݖ $^y,j5X NE G9N_K%9>Gw(h@ >BFw7Ι&ºuA$j2 s˭ Ñ<UB!0[YY \,H=Lr__ᗮ]w}s4MU$!8ŲF!3 Д$eA "I3A<2o4lou]\Bb F")p< ۆnv|eA8[\23I SH A ΜFx)YnXeݒ^uc, L6;0 ]]]2Y~q13*x+G1C0`{ĶuUŊAk,P*V[D Z8E!v^ } }lZ7 Zz;# bkne}f-]$*F1H ʲ<" ]Ar|e6hIbYD&'s$Ip8|`׮]::2mDR64 f{}~EC)[- @__Gq?gzzz(h:>qI` Ru"à-4*"^%IXJ{d5 Q~qJZ-MrPo|'Pdߟv̞={f Md 2S ,l M}P=pSkRZw`&@9z5_GQ SB Mh40ܦc` AMp-S?Y0 Ee}}U*̲0=WٶioWwh(ų)~> Ven7iJX$p~˂jw7:ltlW`Μ9Sf/x_ۆH xMAͲ`.σȘ&\l4tVωP2cPH^xRm,8d{ uE G"؞HlÀO O2gWWoV1Ͳ aP1DzvUE#I\RʁaYH"v&eL+m m1 T\XGO$۶8\l-c\qEQmfhWAqd@QP*KϟCG0 SB!DXH ŊaMa* }UQ>tMk=9ߏe[b HA( ˂`r 4 A<XD!Pl,_x'fI<n4 X,Pm#8 upe!+ ӄHpX,so}[3HE ef(44v2zxuMnpC!ײLMY4Mxef*իWW\QJ4eY28#s4~ A44 5QDM40*7 qp,ի~ _8}D3AvsR i';ЪQVA>.b`c1V(  RmD"ibL2O EJ%0@>}8qbY[69 $IBqP<)˲̅ >˗TUdܛLbȶ1yH%QqbuiS,v&FX .\~C v-41eäa8G$z(ܶ}4uĉW­Q2 Z0\d`mT8=0n@` pzK$/;,K ;No+yt2 GL45 k5QD$mQm@WeɮfMq LJ>сP `ݾ9& im0V6=ɲF3N}sB[[@$t:n꫙]iibCU 0EMwww2(pM ept8 PlsvE0]N8(Dg."eaZE-:b(AZPk aPp=(`/#ۜpaA?EaRPqv- )A@FlD4 Ë|noc؉FD}0$yT\{{HY:ڙl 0 \߇ھd$AP~vgFAz:Zf5(20h,BIP #h\|Y-'CA@n6F!4`A:I\w7R MQ]"ə[:|#J]q!ٮZqSĀq]D( wpX4ˆbQ3M-A(A(Hɤ<:: 5x, uA[I$D9}#NݶcƧoG*ۗgyɐF 0q$IEL(h"àiz"ϲ3L# ى뚆?`Y^(yвYWVpW<.Yƚtuۆ.I ;: %K.ae "Ie8{2*aE4ǡ$Q}NNzHw7 }/Pq@QTV,98U5- @ʶ ZH>,aj84 & r GO>xTEm3 "h) >nyzeho0:=!0a'P|,DQEO(qHҡYF5,W*o1LAK f<À?GpVVPE˂@GOfZ&\5I+$ ]IQHMGQ Uxws 5hBhxR]2z}mxQH\.#X[H9sfI6G AL p\qP RAqH cL_X=;ݻw/4-s{{a>A p)B&T< FPu],0QZj͜V;;;Mضc%8(8it]4Ib]Pv ;I"¾ӱZ ejYΟ{n\4:A6lv(>A>scc/JZ" I0l5{eE!-y4sAq'IFZ4 : /_T*y̅}ٝ b, כMY0(I AsT[Ͽju}ΐdY{շz8EZa) "`[*aj+Eq@AѾBw]x;__} b:7.`!66Ӵi~cYxm)i) }f σJ.Irooɓ'5M3cp2pˢ[kV4 rCoȄ?FiKgϞU'&&]NMA[X p C8 @[vUl߽Qj@mʈp,kd[qrB`WW4 bbEw9Eqn뻇Y87̽.]>xl6 reD!9qȆtF2S)y8p4 fYP֣JAONN>G$HӔI@Ia&[=6f0HQ}_T*ȅB\ܒy*:O49PpAP&I"ItBRZbx6~eQGP.esya8w\2!L˲00ߡ>G"vtrhf0U.oީh-,Ozߕ2D ى,HFu`{_`fxxx Ty6Ea pX iA@ 4N+\q%, QvGssD Myazb`](;]x>(GBhNlÈ& G^[h4onqPٵ bn,|IB*IpxR?1$e xe 2.2 xLH620M p=Ale/ $ZLՂAj5QĮhl(nÐAs6!42 Sp|WW׋MG>h{) aIBVeq `5my_?[W\QgFFF^lE MY*y\EH%]b5MhijS|ss`ddD}_!OU,I<>0mbP*Fa6B$i0ew=~kR1,l@a'IZFrO ^$,eYD3/4}Ǯ]2v4;6_ D$YZ54A,x%MCN1te!IJPS|ӣ[n;\ Q'VXi"`IU4v#t EdNH `2o L+= kfC]UQXNZZ sV Ӗ>LWfM|gdff<ݴiSzgnnNA@@Ი.koj(j UE L zk~6oޜ`&n٢ ZU!da2f&ݎC!:4uEAMQu;EݙL&3۷o#Gp0Pu6NXoce_h}[0PH^K4 FQTj[~K0 !M]cE>&du !jZru]RPkvd!ps:[d A ian7Z49~CCD"ϗefCJ%9MKDTզ 08T(`Viw[ȡ?ub&͆IJ(2hiZYs$λAMQ t21N^g״Zйec{fC X\kBZ GJ%VQP"ITa4Mclll~җmLJWPBv; I1]MӰ0I~B,x0~`miY\less::>c)qz8g4 %]GiBkmkz`E|>Țv:Y\899Y*nwBaA@XQ҂5Lib/ IW#  PI/ٰ!zqѾej5Ncco\Xm'OW@>~|᫮((B( ~ĉA}okkK D4]S>ib C)`Ӊ{PyTy8!D<>߮j0 . O>Bp6ML* 6'u E!k)B:hnY>|>a(phA4 < b Ei&uf٣@Av8>oOWW(Ak$I `UAAh/@rM"O".ita?AIJ3 Լ^P.n7Nh,]|ya>AUEC4K8k].t,{AG.7Ml(<ߏ%Y^ @~9AT'{;?>j=0jNJGw8+ORG`:^8,k4$^u^/&EJ "YaL)cPGo;=t5= `YDT`VRTI"0u}KTwwKP_'IXD2YK/1S*4E6 ,բ$U|DQw  ڽ޵Ѥi84 4 g \(Bѳ N^(@Z*_җKҨCԔA0Sҥm6|> n+Wi(P*z?m::<\$$SzСd(W1Ʋp:C!|M+t,E I]uLiEHQ0 dԩS<` ϯuf2[`Vx *ЊpۍIbqVU1r$ a/۾Ngܔ$[UFŪV, j#rQ;[Z`*J"Op|UUG,~0 E.qZE^G^{@/JS&iݐ$ ^7GϞ=[;}Ble0dYimP$x~Hf0qR=+zѣwT5Z3ME<$A4XEAkyW*xNU1fAUVdI[o^zZ4UڼibI"ib M0rU@C8S`LpnǤi"hdsd[oM8 ֒: *0-) UGvd2 `5 E F4qڢ!7|3ꫯ-!t$nqJr*yq\͋֩z<|G9rx<~$IÁ Ij^Bn 8 ;AWAM5GykR(4 LūÁe2v8F傟a8vT0Vtp"'7aokJJ5_$HqE@MnG(bZAʹ5MNP"ipAUU=(Ʋ f="I(KvG%eY,˸р1+m4Vj&j5de~4*&eLbo/nwƍIJ:ܒ!ҥKmh`$;|瑓$Ui•46avpسxȲg?~әw=88Č|ytt$cahQUyAvlz+&]]r?|~; P !IP, rBbLX\3)kՅx饗2}+V$5ːEUZM5 >6 3FSL1rd؂)bIDAT<0CNnڴ)/.̕(iRViL_84QEHX(V!p, TEub###x' n߾=RT\@$L29 % 7[꛹b'-JPJՅ|>mii9Ljy>U&àzY4=$b7/`Q4f;|s-l6(㏟?>r$us<e9![G{;Png]UQ5 L.] IR@1 V$kFo|'=[ 2hˢ퉹\hqED'EUEAA눩jfg?;gn{__8@n8 n;X@Aj2uA ǃb=u333鞞AWGi.:].Z8-b0@XtP{_p$p8033 cqy|Ԩ*4 F[:$Qt IiF)H[c7V-JC1Qf7Y&I8,EQ=3?t:{mM,Hܕ  Tyhmm8(SSNWzbVCEiTUǎ-,O}jf=;`>al jR ,E5S( Cx482i=oX8NTU8A2^/33*F&DY/EpBib3#Gi{׮] {/b@ܹK 8ӧOcie2XMq$%hpVC4ߠ^rI@9(<χ`vf0C p,FPBXğ|㘝E.4a0Lt޽ kOd6oC`[SV.FeE\8B J1t à4[ gP/ؑNCY.]!BXǃNa^i8qB(ꂀhb6\#ڳ~}&%9ߙb4Z !j'6nD,+b18A B(Bi4FE od`a3Ēd28|ߏgT.$ {|>OYÀfC[[E#b۶m Dk,6G(\ Ĉ͆J|>PEiRA41-CRdrE\ @؄6Xn`UKLiyx뛑$ @ {&~_SP( ,c7$7hhhZ4(jU2>-0~?\--W*ø[y, 8v;H4)X#?^Aj͢X̓$X(C>{ ܼzuWa*MC7 C248h3d+5 s$x`f+rN7|sr4].Ys98;5VU011y>Vހ(@KATgj4Rfçp(gl|5n$!T*QhoYE3`MжbSy&MӽkCizY;\Rh ˅K"4Mʡ--m== 7 a𒄍+VV^^ryK]{NA`I3-!o. ȬD/VO) opJ:L0 4,1 ٳCÑmkk{H$$%M?ypm* (Dn,Á,7Y,F[B!bC]Uw rՐa ` ˔7@WͶ3GyK_RLӴ~vk"?>id %IBe^/9A*wW*ݎRvH--{8?"V!ɹ9ZBr. v;)*-ȄH*؎ebuČN'edǃÑo~s3=h4|>(J>3k\r `s( a0+p&{z0},2Gvn]?yss]~9Np X,cJ̝>12Vuw#;7yo۶- ,>}:Jq4Ӊ:IXi8vT*Vatt+^8;:p`ddc,|_v'?ףp4j|PED6 8&I 4:U ֬AQan<]Ocꦉb(R%?r$SSh8(0r 7 i~ӟw>v,yݞ t4tDj׭ȑfDe8TO\P=qh/ ;4m T2 SaIY”,Ct9h0 9*6o߾$d6M"8,l!pt8Pb \#HQ-u| 7_e/v˗Oz~{.t* ޮױD)EA4VC%TDZax,wW^$*UEI`YZYKά@"je zƫjB72X9A@R,l,Yՠv{n*%8zWCtY(hMOùz5m6e4 (6ێGFFpSSSpM^ܱcWh4^.âWUEO31㚖Y"AXl&bjeY,za'IhnN$ 4a9ČR &v+8 L<:pU*"T \h7ͫW' mmr[[+Z a ڊ"c{+G"hH vf6oޜ,u,4-JXLibNU1qnqPOdrp˖-(4 ݲ$ ,rh>vKa+4*v;L+}Jdu]Or}\h< x`;zSPPnGQh8=by>{X[* 4ms{͟\FѴ,U.f +[}b8Lsԑ#<ǎ%n]2_&V22^4"˨XԥEQlrG;woPٲbej5i۱X+ f`EQ$(/!L&oFt$l D%Kp CCp@ŧ>c 5 WաM'--=@?#{oԦ Pe, UQZ A IZY7;?|N ÚTUaPe;iY1 ̆BC={۾r9](2$I^NASMVpqe2P-Ga@ؾ}g^x⤥2>>:+NHW*d+D4M{߯}{~k֬1,'Itttf!W*iXnӰ_z)=;SO%/2֥X.Q(F6 $!2jM:W̞<|嶶!ߟK /ŷ_JkE\!;3v~UahmE 0^.p`ʕه~k,], ]Q>},mm|8#Ix_ř3g&em٥K{<ӄˡ`vWUB8vHC\:.V=b"uvTU0 fŘgKR_?|>vv=aٰrJ , jZ J,AM<p: [lgP0M0AŲKp8,\.ׅ0qQa&<_o&[ZPyeA(h(ʎ]vw$)0 * <.| j a0,](& ƣǏ'_.޾n]P@@WK fgfSNIhC4)|Ȏg}v>n]ܿtKVqPUyu|Pȶg੧J}P dKFY.,ִ4P( d8ܫ,*Q!(6hm+;(MK^^7A Z* uvl 4H)&L&/xAqxt9t8bMCav#H,eP*j===ɝ;w~`$ǎ ܱv-Z` :~ueh@1$(^p}[[[c3SS) *&!4.V!y<1 iHַ}'L]H$j\g'c8 0kæ(j5 -[04 K[[Q0z 6O(HդFnvH_]rI`( ˲BVd"q?wޙRNJ(j  AïuCs*b4 ^hA&&&62E|~bzў) Z[.=z5EYh_4%Pա aÆݻ跽fڊ5 0C8vPUn=''9Lp z>֖X Fq0m6hn@rY/_$}G=Od4tt T\ EA0z7X|#GR)Ap0 `WT[n? 0vq!Dbg'XEQj0yBכۍp8|2SR7NLOOcfffY($ ==*a \4( zT5-imqؿ?pg\.tp |99tHq۝zѪy?$XVJ*j5l2DPס4N,V BSZUFz=tfEVH$ҟ堅BzޱْX.e٬,˘MR)WbЦ UUJ{;~8~ǟ{ ^*088xgd$u0i${]v;A mrv_Ԙ7֭[Y{pWǖjvݽǁqF#;I ~|Hrɤ/LhQQнj*`FGAJ||sZx y綾0NGIIIiFQ-[Jq|fM^'f;vij1H{GFSK]U1^5g@4=E?7ߜ冈D5?p@`>R8 E0Tf4:h3j'7?:1ZjUBP^>YQ.n::zA4S.h̃鱱kJN?; a/ CǎEM B7|3ke6m4HQT?IYX:[[{= )DhY3ioΝ;H_p7h֗^QQ(NQa2 T?Af``^H@<V8z4 ĉB!uwt\gki{<%+JjϞ=zB$I8.#Z5 D"AN=Ǹ{СO~rgTj!e,A$&z㍋:;zɩr9p\%IB&C{{;GGGS$I&rb ww---s${ À duM\Er@4M'm6[hB\ I:j(+QՠHRSD BvP(ɓ'3]uU2_,;OD\tqMtaz[M]FGSR[VH:a00B{;ܹNH Y$iA2///OkF )N砇$(EOvm^wTUbҲSyH,!0Rp|~L&37o6]DP˲(\Yw8no9?;=u=k~5\4n19F:+d^y啋xχիWgr\r}^{mL~?:66֗'ɴ_z`jsht(%l6[Pht ?m߯Z%i,Imoo4Mad29|pu099ڒ^l4}c/EQ'xbo~NGYxhl2N+33 3ܿq>/: |yL/??5kj٣GD$ ^I@ɧ>n\zzbm6 hLSXMj]SQV\~Glb4-iT͖l4(YEw/|/}K2sO\.g%I$ ftfv6͔Ih(9P{>k2GFV\[!OO[o%C4Fwtt>^>/)rgIا6lKvvdm6[rQ W%iZѣɞI4wSq3ǎ188T*ˡzZQ,Яhڿ};HȲO1X޽{LܳgOoo$I&dYN{qy",ːe9(J/ݻqŰH!垞a?N+==ql,vBy>6wm@P(iiNƹn B  >@ OM =zH$t:TԩS;?U#0 bkb߾}엿E/̷Nyi;v{c~Rrh4;zst5 RIO=k׮4 Mj۪U1>~D+㴪m۶׹.Kw}ZGGf/ma(FAZ y9XՒ^yCp:;ѯz:gOoߞ|+l0x!cǎ} ιTwߝڴiӇl/7|sbQzT7xc>gao֏nK]w]__b7p8qw?C[oH79x'M7ݔU뮻27o뮻m6p?{>>=e˖5\G׾뮻.H$۷oHe˖o#_g+`a{챏[ַ۶m[ n:|cw;v۷/Qk_Wbwym_g?G-[[nmܸ1?r󞹽ca[M7vlڴ#ݗ[lIr-p/-[կ&+Q'[nsO޺u7́;#_;s=z wyg:?sOHַo#uGIENDB`monster-masher-1.8.1/pixmaps/seeker-gore-32.png0000644000175000017500000004324610547745535016257 00000000000000PNG  IHDR gAMA abKGD pHYsHHFk>F6IDATxy\Y'k[ۭzSԒZڒKY&$6!o-@X 0&a;$(BK^dɲԶ$Knk齫k[uGnXsOW.{~6w2${ܷmF{Y_y=6&4=xA46?՜}E'R>_ְ,lDm4rxW.]zK] ~l9NDvS$4s yuefhlA㌌uur\+r%Y>UO>ΐMxW?<VSZ$Cagǿۅdzy(n>wƿ=?wg/4u=۸xcW=4 N<쿻}v lqfq*<.}q|zll0aHQiM&[ 6Jp{So5?p@ +CGߞHxGo/<B((2^/ǁly s\ەL"zbrR3mIlF4 I*_s-]?^6ߟ9ؿ߼9<<޹fsaZۆqN_t)G?BD&ɬvnYߏt觶lv&'e^/( qؖaT V*]zj~~['wB!,k_ä}ᑬ?;}\^x6ÆpLYQpee6t˂a|}nyt4Wwzi8MY @ ij-]GQnB?(MO~d%oޜ]y>ڽ[|!!±><߿n.؎|؎( ~?^->{Gϝۑ?8xP1̣<5ӳ,Ie2xzqɤۧ[,;Kv+WޖQwcL6A;wN~{*g1 q`6 bm8R0RQOx[WvF9Nؠ d#ϥ^ B٭Xi3 Ib}8,lDUX~}i03zFBw4}8F 1l^?n?Ze_)ՖvX]xnq38;cca|M &c88ˡK ؎۵*.oskW7H@ ʆq| '@7o{|m-/ڕrܘaYYWf]`6| 3Xh88†p@8q%Ij~7wy  H&C?h64 @, 0yH2.({yp$rh8gso+5_<;W4<>3fUP(jI"# t|gW>=6& zĎD㳳PԬi1 k&*Yv(t4IxKwk}}/-a[<(DPFGGđLEaZH,7j4_iq^aY]N+okHAdyFo -t)&lAn4Pen *ǃ۵li5U8O1׮}C)Dazx lOP< d2|MUzP@0@Hyxg_r`zOyiI<[hrbd`>{X/ CpO?σ!I7p\+S8Ȇ1Ç^t_N^VMC0N޽P 4Z1Xi:k;(@UUj_iR Ù Ͳp4zޮ~EEMȷWbS^%íZ iמ" ( (iېtFcj}8XeG~c/_^MӋֵR aR k7XlPeTT)TPxWwv#plザLk˻v qx0>vw7../Z  pP8h:(ātUEJ%vOc>LbS$2 G^>wO}7UɩӃ ^Oϣ(ߏͲ0 !/IqZa( 4I(L5ba G"h: ~[^v*E=pO] |>4dӄh:XĄ8L.'|FA<vy,InnFӶP8,FIrQ5M0.H4a6Ele0yVF@OnjC8Mه"xTZU7+MqG2t1\.5 t`LEx'd$R Tʻ5!qq\شdp=/| }ݻG"<44 TEQ[:nV*PL$ᔢ`_wWEqtxN// cc!{(f$Io68薅ikZǻhFsB!mmXlJ=@ixWE~Vs׹sk!Iw3GQA$Xa@u$&x)qG]@$8p8ߏ0>71,cI@M;vw[*_[|iͭH4JPXRyلjYhJJF{R)!f/U~M]C6 b4ixi _k'}>ƎD^?i $a+8h`^6mKղxp:n$ٳTӄn- e%IgPSUp4E,IBPLA]RCe" 'v&C!t҂@8XתUu,4XL Pm˲l<XA@q>T 3Gj5?Յ]#DhĠ `FqZ5@Cp+2xH4 R w6m: Ç$iZ4"LKp((h̃A1MTUeE>4=۲at"C㭔>e,<5?rE?p6AlA'7J  ]gͲ`6@j4 lV uUiq,׋ Ƅ(ǍlŸ5Y\lϔ(jm#^<Ͳ@$^/~ܨT!7?6pNJ Dtnz2>KteMq0`$aBÍrjlCu]߸rD$AJ'BǖX -]OӨ* ZB M#ؕL|>pRY3 < q{iz:x_<ӢdMh 03x.P9$YA\'FA2 C, mLǁ n:f:,Ɩh,e:AѴv^ie$ApC`&V7I5UEUQ`6X-m5U]Yn1\Sɳg`ȑ(=Nn.Z2oFM]G0jYmc@EUb{PI^7*sZELF-ÀnY83>޿=@+>>;̋"68rsf$AT1Q:n(+ $ ibK4:@*+%&`Eu8L.K y쇇~4$^дy$ !ɥVۆ1pn"AP:G-j'۱#Hh .bZhA4r $A@ViyIK2t.\7JL?=|x$, h\YYjYt(u@ Ӷ4̑h47QbO*JŰWVPha6VdA7B ^Ǵm5 )VFG:ib]ӲEY'n$!x<]n5^lPen*eL&po/xE5 &hĀ `o*k}>\(fb<$˗&; |UUmޭH3u);r@;My¦HWEP(ӽZξ ]Geg$*dӄp::ḗAi0mk V+?ܛw H^,;{TRfMP$@^Ɲz0hizRmc A$ g<Ӄ#"ry"4hr,E!CQX$hI<ϲHzXp##P; WUhaoͭ[eE9SgϾ}8c+˨( <4HݨTj5Ȧ$!IJx0šLM]bm4aEf MKI_(ްV6ErEA5MlFcYTe!:nvhh 5)Mcg2 }璢~Ѵm7 qcz4I &eeE%]p z/`Ղa`Ha44 xrǃih5|>_Zd(jt BtѬ( ʪV M]GCӠRtu= IP3K y4<0Μy <_C^]`Yh:UX[P&:B*?ϲcNQu B48=3#W?u:t7 'QDapC. tQ( ~ڳWI0$AtpV 9?-8++J֍"yO΢_@4ۆp0F6s99TkjY<.B,!xC4f;N.q٘ˆ=I""0(+ ;0 l0;w%IY5%w(;0ǽ߯_GYQp~i ǃ%IL74zi[6 ^Ȧa@jub!&.z 3_-OPJ`yU>sow(˨8(2c_49:ASֵOX q4]zZr CQՅ3r4deAXn4Q1{[p_s5 :>UyiEAwǬYb< 0_LN fZ0؛Jmn4r-]? b90^Pfd\OQ<.h[㳳 4&* ^XYDQ׼b`H#H$ZQ\SU**#i8@nQWUn2à_0UCq  {Y\$ WK%pvwcF!sx+_qb5!܈EA3fY() ǁ̯ȲYd\ ry\馨Y܃) { pM]/ ,8a‚Š,˖`^CWk^\^O΢(a`S44"eN&o[ZM$ꪊ2 ,CpӑGqza!wO(\'rV'Ϟ}[j33p_dE :MHxWpnnެV`W2YIm YҒ^UÜ",7]!:ř;6 ib@^WK%huvuA6 lF$I_^F*nIu Xz-hyǜm6.xo&v{JfS}qy% UW'7% stuas$4ʊm:d|__Ʉ<٥0%F iݪ6 4uuMCEQ`98K bc$T b I>Ae7?4Qږ;WyGR5lr. zeEOVeY\bq$zAlD(Ef^օfsE,P6E,^/J\,*KN7h:[c1Ľ^ߏܰ8!Z øSc@$$}>x fų@sKKZ5 J|juqFS2J)w$ 7\4Te! 7H}}~CQEa87mtxqy^h2 e1h@wqlhm$2D]GsB5h.hA c8ƎDiv[zZiP- qk5bM7ݻ M2V$ @*9tCg\,{{q0B{#pC==O`g"Ex~P: /o6a`*r$ XǛn8lFqVb/hyt||<ˊMv6x`{OӅ;ʊ6 L7eCC޴o4uMwnNE$`Gp.Ȳ3\t".y5|6[AݕLT%I~IuMCIj(Ja)C}8v'iiJQ6AAۅ@'x4pT`( =[e2ՅrMlߏH5UuL{tXjJ.+n__z4hۑHmQ4H$``=ew<9L7=2lif,w(^/zvٸqÆpXV*~zq DgACFrza*FmV;-˾?4<IJ{.]P6b;CBYQuHX^v{FC==jw `|y5UEPQUdN ZE0 rF MCՔtP(ʅ'&P(Ifχǭ1"-^.L&=XWEϲǓ 7*S; Q%PWLw%FCu %YjJR2] ,C<e2uMsFUUdz{ل8hF\nGD ,׮Ji4j$͛I ˾wK,6w0 R$upVR7IhW\3ĻSIW]O?w4fAŢ]Q0`:.۰,(0*چ@evQ@>j4k'雟a`ڶL.w>qІp{ZmmO$-QLS*ͺu>p8WV#xqe%:zz)I*ٞk6n7l 4O.,v%no~3$hh|q\F `҅BplpReZ6]$Uegګvy(u߀I]*M Fr*P]^/gڌ$,I| [$w}jq13? q@Yv޹+lNk^<ōD cMNϣp*4%I²,wpW;[B?aO33 ?j4 {<#[b1/BUj4P4ȆVzu oh2zz۶klBrCA֭KQ'ܹjH6:]y}}5ljm<@OeCbYcFT ;I0jr^a۝@ؙL=@VUCm޷#0_V| 0TN4Dm4`K,]mzg__G1ͩa@,$ yI}>rK{SEd}]] VVA咳HmFQeþT*uX!$JS:ܵt;\{ni ھݳ=]e؛J1m6.|>|phaHOuqNij:ҁ,6ub1,xqeŞEQԴ/==DЙl rO٫@6 h׻dOkzh:Tn@];k?}xGOObk,6"x<<0hX$ϊb!qבr[Օ6Kzg" y8N^mq}8"˰%YXw7>\*}vOK>9p`l}8 0L6/IMQ?zxo7챾>5 3-ng84mLd.E If9q:G2%ZJE\? V*PMe,I,NIswj`&Fd. ȵZsC.^ro*so*WgfPV,Kt';4SgOi'iʲ˿;x?_?j0`{`{CE $Ib8A]UZiĆpVQSՉm۶Cź"/IQgDqG~,M9}s(IYnMӌ9Q,YVhK/Ld9xAg(8ׇ`ݞ7^\}ɿuk+33WǘWmP0MZC**d1k^vnղtXVdY̷۟^mPIk^n2fEQ,ۧ?~4d74JEh@uea8A;>/!6 uQR:^*\lYyg/-/WJ}{! ÌT|Xf\;ϣ0ZǡЩɣ_0Y)KK(+ ,G٪Z@ wfqq$˧23˥RH:=ZSUnK4$aRs\h `Hr=,KSEMMno^ە`l:  FUUx'X'(B Ax>We8(Z`[<Xvŕxw%ӪemMۑH@ d0Li؎8˓|-`s?~̟}]nV\k8{O@OO$Kr@Gyp?|ƍ gmm4yIŒ(|1rzM] IX$~YyIj6u)J Mda-kao-$ SOTQQUܮz h]/bQo>-Nz nO$HVj@"OM:{q逬+疖}M&q\t=˽+Dnt q~6F"Ţ,k;Il,u( @Q1M]uMN_ƭ۵(سϾ! 7~aFU&~Z`rL7eL" b8~lY5U R1ɋ鸟xd_08Idn d--= $,,85?Ë:nO=;ɓ"L_t:4>lf몺(M r?79)>e H$WmFB2 6/{iQ|`:m2uqV(Pܚ7}Fr(ڎscorc/\jMzH `_W^aHz]ض^g6 `6;D0%IHAҮo9y ڪ؎3Lvk,@w_0LIXxZT S|+6>WeD]go vR,Iҩ=-gϟ?ǎWer$3 ؽ=_*i疖Z3nciۘn4 "i\]͛>:C!o֭s(_߬TfI`+T瞻NSLOoH-MHȵMS4l; 8++dz> yap&Ph_uFN0C<4u agh%EzQ逑o׋۬#~E{R] _]ZdkƻS)\a2[V/cILibEq  Y*Jn8_};Oo?cG0٤͐A SRq`F|`0Z8=>;鱌?ro˭ֹQUӧsNڞ=-XWW{z.^^pk= b$ I,ԗb|fν#`=gMܩױj6(f-J?Bu"|)('?-`o%~c1`>~$;wO~7|я p/-ag2V 疖4p4xz7Ӌ1~{l7VKnAz Ӷɝ;A/Tz[W2ŝ;8c)jd(B4 S:&\EUMWN81´ @XfS4'q}<Ó$lŠYabUUOTر$7etPԴsF%C:3"IiQvw?|xx:t Cu :w. m/McZN}<(Xџؼ9rZ&U c'Μ={O{%woQ8NdٹqS=gk'>@/ Ogf:YQ^+?51 < ]Q.AQTs3~8wc'#nYUmW%oG>|Pc/0`+K/}{/ѣK++ؓJ$8N҃=4}+Mb? "Ϩ5t8Oè~|"Uy};n;XՂiۢjY S#Gge2Ot;8xO|}|oWF=^Ԕ"|;ʟ:=N?-瞘UmUU䏟9}0!zX7&JMEM &{j_7 G3G7TjSMU_{za!vm>߉ߣ=]]c]>HR>4~^7T{ao=zOڲE|/_-y5erJIENDB`monster-masher-1.8.1/pixmaps/seeker-gore-24.png0000644000175000017500000002601510547745535016253 00000000000000PNG  IHDREgAMA abKGD pHYsHHFk>+IDATx|yt[uxXvAH ,ڲ%;$&ӦQdδ4mmvt6ݞ,M(i㸮-ْX%K($0%L9s}w{@m͆G/Ν|RT嗞}=,(  /􋡯u(d] uwk&&3G;=;nuvDW'cG.{|#9[;?{Ѣ,ቁxUQSL3^G~?ۛ6G"YD;p/_gG}aŲNN$\x_{F0N+9}{O|w,%ѓ~w4 cZV!I9.fjZ=my퀓aF4г}x$wD ˺Z.@(<oRCNI覉^ jʪ,CԴcN=<?O槷F"eRi𾧟iҎ|y5kֿPY\UEH_;::y/ ;w&4}(>rAAop, ˢ3ZjXL'O z}_|ypUY*?H>y=q;&'$A$6_kׅB=}; bX `A$aYqz O|…ow3Lov.6E"9ť%V pߪUHW\俹~}|m}pЬ(%0&Ptgg1R%CttMOC5w]}b'bd8JYZ\]a|]͠|}e. @|Jfl: AQ<$@] *Vy /V Oki²t04 eK]]Y,X asKԫN_]$[nqorA$Mϲxfj *~<9 ;Mcs$;M(HWRϗ\}~WK<>>dZV o·45 |fjܳ˅!p@3M$!I8EYmzzUjHB&1;y~Ϭ(,2*,ô,޶Sm-_ڱ#q89h:;sfHxò<yn7N'j5̉"x }~?ҵ;F?ݱ#NFE }--e[Ţ_մ33`) ABJlkhj/() u#p,~K6 Mco[{^ZX]fu:\f+0<71w1sz}Yu$IAXl<(DM`i49xvfF)2`es$i׾52o[~nxZ-8ֆ „ j.ȞV%';7o~,.--,l6|}nO rn|EEAIAԄ(N7h~SP,K{{4ݻ?wQʮ]ɰl0q$D#X*uMÜ(!Ityx{;~49R $A$8h'@>=[ `osPJ Znބ7qG0lnK4շ]=L$5pyIb](ܜAQ=Ŝ("]B7M4 qv9 xŶ&eMmA .,F>3S"nnF @Oy[M}["x@ׯ]3GEv0B!lFq9UΜv88\+ *,Aj啵ˊ(HL:J%ӕ DMÏQ44 i"pl{=ݼaA=i:(M;86;ljvv)6 4r=^9+IG~*m|ϔu}dTȺs4ml"8 6s9ӺuqqKli G˅33:6B(2Hb%EXGPUTTo}>d#IHX_v#rI D?y05]Wv;b.^fl-q8o.-!]f6:%T_d̊0X bZŜ(J6BiFQy\YZ@Pp4^/-.bG4||` uIAP\SÁ}8:y^Vi\u2LseVAbqX ꑾI~֭B0- a0HWP c\F^tiH"> NQ.--/d2W9~|%?;)òvcoK ҵҵ6[o6$|dzi\^)aYBMp#Ǥ zu80R*9libm0;[Zd{z&=>C[6%$WEŒ<'2o$]WR,C6 du$ ժE8'R{pXtTIXհåe3 5aPA:|66F"`Hjk+u]afjns\ѴaZʪ QQ$ 4aXEaYp,4ӄnX [[k4]״8M 6R((PhPV\fqQ0vc33W^;8j7@F>_K @DN,`( ^ EYƍ|@6 4 e,P˅^/Φ9QTl56+aQUU@AEIBnGǃW24 cK$ײY^9]|1|;8rʙtzƲGq87<\+rYòY~p%/{z6,#'IhuA4,q0, qWk+Jʪ 0$/."t?`o_Ox<.p,Hl@ vL+ &e'M2q(+ eEiQӄB@ 8ĜNTT2*k5M==X &eX`H Ibm0 @ǃLiY~o}w;+cEYƆPzu]_V~, a!Qsu]^/hOIQXLQZxly4&DMeY`) Z# `iI2E(Stb͊{[<}Ʈ{͑nv;v;l4 3-K<8UMCP @5]G^ @Q@->"N'\,rIBU柞|ϟНئb='IP p9X-T:Z\.|iG4J̉j(p4O >!E…575M8yUYv8>” ҈a /Ip1 lD:/.jLOgfM DUŶ&qL2 A5)FLQpTaPVZPU$ aZw\'_ z2zz>Z UEn9>$]oJ}8UR9Qi,IV;]iZSu$˲`s(IXx՞G݊a~=qQ6(2և+ŞX,u:M~<5RUE@"DUR*@ǃ9QD]Ӡ&޶]>ߺ ^/h? G>tۘ0Pu0$ "?H`\Ɯ(bRMFY]08|vaAy{$(DUl:򒄵 B~[ z=MW*"]0?ȝ_qԇ7sl4ݎnC,2W9 in]}5+JGzz Bi2n76BXTL@uZ{c16UU ̋T:Nqò͚iͲmX:-+1),むlY1Z*a\Lr2`gg_Wp/l6ElDipե%meAmTuX-_L h:{_ygygYU[O\@5MyBMvF)7Z5])&@]1΃koYv5E(p0 ZN'Bvu>1/.-A5 v8Z Ţ.~K$-W NYhv:hҲ,+cXQea^ C5McRq5E׋D T&U,ˊZϣ] |6<68bu]|Gr 8Fk/g.gTxs6[xC/v0, > NjXNR7BMO\V!j:xq(NyTN jڽ^yBeEh=^/:x<pբp=EQV|+'(xfzz➎+cŢE6UJ%dK-:$]pq'&&Nht}]3Z む4 *̆Ma@49eY#t&Ixӕ Ϯ[w},kWtIA+Ǟ 5<گ4Ibc(E($.,5Du9{cCaoYQ7 L dÀ(J$trLN  E9E1T1 }C{cp^euӂM,Aե%Peե% Ĩ^A5ͣIna(t|bG4ږ$d*Ӳ8h<ҵvDhGggmVyvft?P|6[Wse~41 ,#h!I͑6TUu78γ% \)QT]t1(NL Bq8(2l q5)Rfb}(ں9/ eEAnabnxPe1vXTZ8aY{~nnힰQT?̐$Q.-CqT`5aX$Ӊuuɲ븘`P|^/2 :縝=>_Kq%ChiHq2̇67 @ޖH8-rf H*R?{Z[.TQUz>JeHIPel0v?@j6$@̺iGggO=p*;:ZTv67`pT43S#HA Ϭ]K69TNͱR .("dcVa/h4|,s9lD󋋥J 8UM.DFQx9VûsSRe_K ='bdN`]0n=?7ܯℇe45˺NF$^״RyY>u޾]lnΏHBYUQ4LP5Ԩj5,j() N':y~ǿ^o/W::vbv^817z,EÞX @+U0b#}}r>!x~vfގݎ&õ. ]\Zs8I\t}ӭRiB&cea`{4=X@k<ۢQ0l(0q8@ȳlkplNQ9Q X,E%EUĥ7 A/w0GJX 1#rgY4 y[ yV;чD"aE.d2u$+w\Ί\s7yiC(Nfhyw9LӜEdZwt0̋ť^T _uw/#? bYx5q˲*[h*$9aTޘ"۾=)7 qx;@ľj.XFn ?òx{ݱko\gΤzilmj†pMOcRޖlF1Z,љ(Z6nZ@<r髯r2 $$⢼3AaYrz1$q#s'f*Dv$W|bz=N@߸qCr29$6øˡ먨*,kx)vټB!Z62'b}>]บ˽bY 8hw-CnYxfj CR:] ;TR,lkjrG(tI˽!jnjnvp @%4:+89-!'I߾Cu(7',+Tc^@5Uo[ wCCݕ|aVo%nP aR#[E4;hiIFa#ww{.,\%]OzZD0p1}Tv8 TUa$7²J{ǎH.okjBah&I0d*tlYQ\0Z4W,x%]/\#T8 8fYV3\YU8.J&sͲ(2|qNIG|w@h'ϟ83??F$ Cc16~060FQ뿾.qlRwXj.4Ml ].9QDYQ>r yhM P%|ot$'̠ BP}~?$]jַ<9|(bc8SQq;%LLfcO+&'a`NaYHNGIQ`(rs":^.|ZmB&#|֮tZ7 .o+(-;Kf3ip=? +k+: GrϞf-ۗΤӈ/w;fktomR: f"(in6iZnY+G \Pմk!㘤i>ڹ%I t-,9I ޳|{ ϦBMӎ}?iOj4=<10Okiy|AzW~{ܓY::VH}lի7²߽y?3oޜz~r͚^cV^folzɟg}5H9s_N&yIDATxy\y'e3 $~xfu"ZJUED˲lM[i2=żxoEXx- M$wګr8߹IP=[$p3osO}~3]_߽\{|4ǧDQjEw5<ܟ~ر)i\{O?}Ч;q ܳ}p~8;-I8K /oq=oa8h$I$m_`.M/R_ii)b'\@ dY?_>~ mEMKA!DQ(*ei '}'N<ږesZhLBUmȲ4 ԗg$ ~jC4$I4E\{gyl <8:@:%F+I)ATվ 8Bpr4M; NɲVHd\g|+xGE\AP p0"w &'?>(,M+B؞ 0'Iڙ;|x#fGV06$(sl9HQ~L+NSڒ TyY6/Ȳ~ߜ-E1aΝ_'N|#ΟQ4|qG/_h˲Q$7/_HQ<$IAлA=7_'Oa+M MY6Χi:wQK) >+^}% %_ ~Ϸ4{ɯW''? LQ4 Ϡ={>Ei ۢ(7%ִ\M@8$(r?vٶ$QTbuR/3}=?7iŎA@(AtH yڙ~},i)"DQ! pxuF{}_ } `Z$)SZHa8:g.]ܱhZq}gQ\"S{okk~p_:~ 84WЊc \]GzHg$n&IIRe,kQb8#g}o`jűwC>ـaԠ(\w_hp6G.^YSmAg ڴqzbAUmhZ h4~M$IO}{ v-MR7}jò6 }Fy0a8:=|x%cELm Mc_#} i@D$Ix!I@z>I¹W8xS4Ab7M!ga8($ A[(g~WAp/Ae-Z'If91X1 3|}.uӖ$tSq#IbA9X m58\NޯӒO :X0׏0j ]+>ݗ{?ŶX4G`n .q:\wQ%I8o?z_l t: SA-(J$#F, Oirc- MtJQ,M+@Qr0$.q$\&g.^V<+8f]/Ca8, MSSi|6IG{Oo':pZQrMM+:!E{i4M.4}=s_3>%zl!I[>$!'F:$iӊ눢0t7 lE4e,[}-L'z%IkJQT(ݟ}IR$IxoSHgG;wDQZVn*y>HBg/\:4EiYsf`ؾxηۿ>7@ᙶAjɲqU ߻zo}R,MQT|m&Ix6G.\h0+ L`.?HRjjwϫ=?Mcsq=A?Ҵ9"I#O<(ŖiMzyZuTgysIqݥ/cF崢q# G$A`p>IB}VJs?m߾OL>(v 9U-04 :vEՖ$$}*IB~B%O9&'nɲ5,SiY_5$i`p GZGNDH MvP Wo}s=Ȼ|E#R;Cı !؟clg?wJGv4E3=i MH:'yA/vA8-R3I"D&$IEFX0MW1^C*kgx{CxH)Ri7r&4Ӭg*\I0]s IO޻vtKsƦem Yi֑˵`ex/b4uW.L)*cN˲&z\ 5FO|߅sI}?y33i>&I*:d٠WDp%AlBHi$IYD"̅ ?9(Sei5hZIa88!&dYhZ˻E.^B:|77];=}zFU(SN`S"B>BCV <]`|7vQ|#[IK}Yfv7@>`mի]t$I?-IJs8 $06n{ؼy;'0^.#gɓ0+fu^Fz~ @!3pҥ|_ȑv$>,[C$p $I"jFPQTЙt/xfeQG.!{W]Z4Eɋ=~?IhGU0tA5:EhZA0~swC-QTf%I%VE $ !$Ihqo~s=7G|$c(u4è@U$I@MQ 2=ıG$q6goqzgۂ M+J }_ Zi!Mx*pQT6̹0 ޽w$IH!ـ$`1xXyysa8:$$ig/o'ZqO)J-ʴi6HNME[EHC3(7gKzėڢ( $i4MA4M~[@XiM+u4de[CFд24B'x=v7Za̦i2eUz"IcJi~1( |aEB?5v qAd ދ4M@Aμ_!H:5G!kT5]GF.sa8x38y: β.$PV,kg` .{ q콯舢tZiEȲ EV}`&| /\7)E! "0.e<ȅc8 Y$/~ne5% SD$!`M8"p0$у/&ӂ 49k 0D _K\4თ.>&'n%I<( H660H?/D{~p-A3jDzƐ$1\wupl?/I:ؿp?aF+0N G<}mHTpUQ,i:L֧s Ӷl@Dsq4Y +%WB Fs'?ñcҴҴXMY6Ϧi [mz(79EC9`"$ /<|_D>G-S 0Z[i.@c IhXC$A |w;8#ITP4@{i 0[;GޯCĉG[d_qgĉGg4Xp8Cflذͦ^}5+\@`٧|>Xb5G(ö7p`m5]pxx'=_m=+S.{Ϸ%0P$eöx^ןU: @{a&'?Jd4Ǧ#(BU8<$Bz ë.z $D؟|"ػgm{kǶ7@M;Q(l++`}%7 28$|Wd̡CY6fyeYPU2hǙ,{VDFϣ}Թ 'ͬ SղbCQĺ/E9;jCذ0|9] 3]ʌ$iӺ^njZ(c4G`.iZ5? v_D&]|;t-UU0#TR:Yq(RiǷòDt_+\wuVO>CYQT:Q4BEfCӊh4*AUׯneNw橧~})NRH%Ikj< tzPE>Upx_a?{;-Eɟ&q@r@di9w0/O :Q\)`q9dw~;_zkjwg-kȽloakh֞H@w\wyg{Ok?8/IT "XJ8vP(lQ̥i|橧='N|i FȞWۣ)< ~ }Hg~49Q NqaVZ/@SU-pIMTYYq¥K#G>9Qlٕ`]/z7뽊89ՖecZU д^EF !JoYE95$iX7M+@UpE(JFm[UF8K`*_1;4EcÓ=jo':%wDQ f$2 q"$ϧi={~$iSE]/Z=f(kv_x"BgϟM6#(J^F.!J[y}MhZ>ޜﯟcs~]?}>iV Z7a5A$@S|g V+ux\9gybNe6 UAUe? (f?[KGG뽆 !9QTu@ YUgbd G%8悠?s⟾p5L l!yr>M DQVGE# l{K|s&UUF/SRAJe_ay{oNirym(vD$IQ( B"z0:؂ uX\=vӎi6V;D04Qo"F0#FY<so;Ϟ>4e5r0:L1%+d AyFUn4Nw߷FeY{HM[+PyiBܒh X,KEAн!R3M\{~((b*eq LQPq R NQIvk֟x\QS] ;T$IȒ6|Y"BoZ?c|߼gƿwIQr{{GffXV&4! Zbi v6nѯyX4,kDMMRĆ رFnmocuRhC˫]~7rc-k!è0Q, )z'(y"Fv&f/ϟ{Wo~RlKI2236:F$E񓃅| ]N3 X($5IVt4 gL`Ryy{yY2@ӊP\v:E?-5 5Hd9jS|ǿ8)iKr.D݌`D4'pP#o_8thjkU"^ 0dbl 30LBcoRԇ6l^;cYӅf_#R_WP,D5IјfXE]}V;|aa=}ls)èq 5èCUsDalLs즽/T O;{Omr {e,j {$@|ڢPa~[|C[۷w(EQԴAey0E05gj366cf>~ 3ccsQo2u9+$,Rvr"\rlHL]~vaڶ7Y޷G6$ aۛQ,2AiauhZ Ib(r'4Վ :Сƍ.zI>iLbq+Jݨ^nX] Sm˓?ݿgڲ{^[F^A.J;Pmo\cAG./-{ vwdx\aTϷP(le5`UXV(k$.L 񩉉|mq>;l9!HPzryVW83勆Qwn]6Q,BO 5Lj斗Nm0jY/ssؼCh!u8ۦhZho}${/0j(\@GXp&°MP" Yj6 {?`Οe!AqQSiZ@DL oѻINAzl`~[܃NN~#i֠iei!s=PniNdsP%i6ǾSꡇsKKOwwt24BP)4MB 89ޔ{ `iܙw>5`F=E**EoDx6@ I; ryVV?y۷ó^";b EGKcVDvlQE~a8AX_v[͛JCqy,0$|ކbQi F)7)2Xj:m |?~T8Q-Y$ H `40hq@k=j~,jdiZN :T 0y&bX9X^_?Ғe}V2(rJuBar& ~I~|~#4L{pBFbA4 KK ><(K~0\KtƻJ 8˶,fN czyVD[Usд24è"kRqYaTiA`p,eJ A;ޯ--=߱ֆ ?WNkZ2|f$VXV Y hٚcd̓Qw؍.H_EqY6mFϷPB> Y L)@LESyWl{M BK0 ,IPng6dJĎt++sk?l륇ҔEX8 LE1e"R> 5 yWMcy0ʧ%&hXUBQ2XRA( @Oz߭/F(JD6JE(M(C1)bq.+ СOjZyE)͞C>.T8T!qK=WW/k#9}UQLȆJe'l]g,yeBQ dJe^~<mM+6h?hP@PC;bPN8wՖaTg-kb9,bdߨ t>LcQ<F)CzG|c?zTU_%B%A :W\hZ ~`cH Gl|=ohZaV׫6,b kRLKt&nA 8 3V^xs`(J8(96&jP.@> r24Me/,Jh;&WW/c}/%.MCry 0MƠEw2\0CG o,.>Б#Ȳ1Ϸ2a w4XL ]/ &ZY=<۝4MgMa3I^%ÃG3v6oذͦ(c0X,ʾɕ 8z;^:͉eY tx ,;U4sC`0sjNӴS{_71zֽeB$&<.@"mgiV;{!<-kèehh)diP(la`58E iOJxDXM +JΎ"'6* mYmY(wT*@UYh BtX2K$)x"=~WU5+F#XfHz+ k"W%K";F{aSIU|6g 0b+T`p >m՚0<!((Z10Ճ @OZ +w0jKeޫހ; ຋K=ֳ2ܵ=1ap;wi͚fÖ$=sj<_Ezq)VByPe:η%O ҅w1^EŎw$VItڥ5RD.jc2 ; GmŒfEQiru1^.'w\nra0XvQTj}'!ԗ[[ EèN hF1!\"cSh$I8e% uXZz"hӦ{\l4òuYE^C\wG@r`"GwRc5VTڍBa+ 9p6uW1]ht-k4oׄ9@6]0* b'SXj݋YMjP뽆n U$:5>~m ,1UG!yeݏ; nXpMȲ E XCǾ-οozE&d9|2۳I`2dYA9d*$4ccS_[X83N; 4\pv$If ,bׯ;=jZ;Z,1T$"zy8@(I Ry,NvϼG Ǚ$v݇|\rPUXr9Ib" UN Y@H Je;۷wZl6d?Jرㇰe>4 c 6 (;H)8GFG d7S+!Y"6V;ZmwZm@KC@Ӭ{Ri7VW/o6_z@|)&ٍYcyhǖ-FHj0Ϳ;96vۭ_eV<,ހj *S݇Ri'jC(BQl7]wEmr4i_"Q27~1̦Ϣ4'Hy|~q={7lo VW35 W0 n%4ea糳N$ɍ` ^giy}|V׫ӌUt|.0 @ep\;HrX3-UuM=ebY"$ Aн, 2Cڽ{|sٰ0McjnPfpِZz7Xkl5 H698lۛ(GD3%R[ht " Gbq嵵{:mYqiFXVI"#IL]CQDa>/4M޽Z4A)˪("I auߨ}nFLauXVqu4Ei։,.f V+-?q^6wc/#x(#@KjQ*5iU>I4+?VS8h4_ LX]<iMq؁ [ڂ tMX[p:09>&֣~j=s8hZ2էP7G@SpYQLX܆|E )I*H L-mHNJ{JH5O&X$ICa@aMڟ,xZU@ЩVFۿ7ki檲`,9Q,n6xPd瓄bQ"Gli $I@A0L^+vėZlc(S8 [iVaQ,0M !Mer"Dp],>|Kܤmo=wrᶦϱޮBa;r $<,!AD+E2 |(?sCo=rsmIc ,m 8};dJJEI3HRWX]}mϿ#G>YY6lsuD á%} 嚔LRY Åj. ϴAkA(nL: &ql;-SIu]ıQd5 "@;񍥥' *_MQ,k~rk- [\l8=6Ў`qwy48Dw׫Pӝ 5*0f)"8h8+-Y61EͲ{y|->6`{ӟf`=έe }"s;09$i `XCؘգbDH<wnw*+D!IHB͛%Iq0^IP*gnM+~P} 5zy<7M׿yKz05,dYWI*AJj&cm0"`Qؒ5iڮՎ|mi鉷-OENzYɕj2H $!ECrL{Iyt|(t*P,0cDst]D>!a5qL/%d..~G}& ذM!g [Q,LqHlX ۞@ZB>_GZYdO{U) gM%Ibaej.ˠdlTE Ub>/`M q}06n=oBPPaY PDLjc7~juT*lVQ,E0"`IC AwP~&hr-{TEEtB#ʹ[$Gln7 ˥)Hb\NkkMִRx;P}VH"QÿFEMCN5拓=|3-@8͢&lȲFN%f6MN ,e߇1Ɇ!*IڗT5oViHSfi兼$)t ĤFCYE$Cf[iGbjN.upE`,SݏgrHBaYaT~\QrxχW;I M6<Qfkt!q5\{i驿mEVQ* LLl2kpȔ.$" !  H'ƍ-wfS_o† ($ضEyBzPў LSojc 9T7FT{P.@ Fv  pc0!2OmoKmxqTjbvPhٴ`Y:\WTwlFQTAl5lXC\bY!oa LCy۷oA8A`38A@a!Ė˓wCȣ(JQ!{#!ݘYι01ƦMP큪V+D@9Eq췖wÝBaLݩd?(8F0+W3$IE _770%+`oYpu%S|HeZ"BRG.&>Wj2g3O/@]*|cz-Zv_^-U뀢|%6&;#zds/NMs @|*ݰ1(E! dMw8 p,"],3 hdYms'7a3{"9?sf߿fAzȲ([>u)0($IBgIsrF:DQ,w|SdQ# TՂaԉjJ0  4ry=aOF;rdVp89BReL@q%F=o]/wXC/C{X@Y>溬Rq[31Y]֭ÌaچQπ 4c'ES$bALay{X^w2<;۶p:o| y8z(2sg{,*:m֛!b}_`DZP充 w 7w]*ƦMm4дqrdwU 2L(6 Ce;I1DDz&*clJ(Z0*(11>!I2LjUe$V<'sF}:@1g;06vb$\VQ(H0Mqlz!HB('F<"Y#hjmM+<ˍSO9Z؃,TP(1z7oRI^y0x@٘C@Ɠ++wރiiaԚL=#$F(F$ cd`?Dʊ4"7(rkk$)ltSLD%t/wfx01]Gvڥ\_8@N;'k$ЉX_ Bӊ4,>˓_}8Fc몚o/17ج[s HDCy ERVm ?W58<)sYi6P(lP(lAb dlH=]ɩw:4Ҵ⬢X{Ǟ0AJ)R(u`m-e"^ٞjF 8Y?w_mF4".5DZrcT6TO0?50!b 08oIՑe,e$(ވ=fK,q KeA)}9=oa8T*q㏞uݥf>fuZ!1q"Vؾq'z|X<v$qwCvٶhۛ  ,n1Ρ5j4L(p o}fa,אϷ<EΩRi]͛qUm/9sfYc9_P.PJ  m&ƻ})ޫF5Dш! K΅Y=pn$l !bn̉J  $HJa|~3Hhߣ:`D1JBZ=t#G>w>I)\ DQsg<0j"s) mWl8zFxk|VIq!71Ls;2Q(2A 7Ye68 >DxpϫPUKMcP! tBl#i8`r9AƢ|8AxAmYِ fJ JTbq'G͈|mȼe=~>ɏ.Az<,9; #A~@YU1k`[,[S@Q4;(M2d$!%u(UD^l^5 q!I6 yއڊb U鿶x|_P,nGVaEe sQlЌ$)\n#Le>،mdقrA_Bh@ FMw\iIҚgSY(*-S䂌 @eHSk&熒aTLN>5]Rݻf]򤳲la R0}@7NEì8 P0slL˲*V`da^^o Y$!% !c 'Pڻugu,k|0TډC``L+Tb !XdjH"<ٽ;/?ucr}ؼy1#hZ;rqes.7YVa*\7%е|ߏa*TU dͻ>:p:V0n !sDH0:5}iju4(JE't(f_y?}at{|0SZ$%JnG@Q<& h-#I")$2=omvϞ 8v(rLeʓ`.ōݗ!2־]#%p%9Ȳܱu^~?VFӒ{FfpE Jݘ,kKKO I"1#Tj>gyW,MlX_H*00ò4P+nVGBޟ`ĉGO~ۏ=d ,"$I2ˁאO`0˲U5Ri'D9y ezNu@#k (m:`4ZA&DVaU`e/c8ˀ'C>_p!g9Tu39z}6}m-A9KET*}a3_htLHΪjV(Ls^߹'[ LkZAj0 ]2P.u&= W6\L X|W x[/DQ>fQ*հ$3M%"8~&}ڏzϲE"+m ZcVʖ5^LVP(l殻Q T5pLjp0un^{utЧgtbG6Kn!,R$j!'B(CQ8g}'Iiܥ>|AC#!L,?I|r,VWK!*DQ"Rw?LS溑kD5 "XZ9l 8S W>'iܭž} 3vXVˬt`0=iE5AJp4gܡC>;Ai8ȣ}F7S"j0,~_ H+gCS4)J/u4T@@r6윩v+Dom+0MŀiINA\fd!c-0dr²&9£jܲ8$!,gNN>K?NyS9FĹry~>gk`8\ ы\C zb ˵E FS}m@QӼV51Ji?]= gjeCq>d8\.ʜc|34);&"Cp"QU \:<>Y LRZJs&JbwYV/ZH\K)IZN_jze%|y7(|~#qm  ]\`DDw rmu]-┮Idd4kYa0M֫vߣ"O3JRi{˷~Ie+f6.fֳac|0%;<Š1 HN3?Gz+IYΦي YpĐ$ E *" YfBakfekj׮jcp453-ˈc j5B&,si8F Áx[?z&d߾OH:oK'+ ]fGYKX_a8IR]%- df ]4M$ILN6"$8Y47"X[[E+"\-:ngTej˖hqqdMl:hMS[P*5)8㸸rC~>GP$-[t QMpM3W dQQE11:a.>x-6>'l3ٹ'o(&7۴yT2)-#Qh(1L#jt_21O1$*gwϷ._[޿mu4PE>AUEx^n~ @P(PUI (^X)=/ <|x4A <'fC:g45j7_IN ˚aT35wmF aF a@vjVJTY!ljLɚq@Uw#esu`4Z`p l[Ew-QsZf~gĢXqSNx Q>vOM}-,cV7_>YYf?h@j3,ɥ( \4ܙYJ퍰mm05hZkPYS2-J 6+kMwܶw]/7 mmòCZYzш٬pxeFp%XVlUȲ~СOw,"K\qT(l`*?q ,/}6Y1EYlwgG;/onkdjJ)ɞ.eَX3>^φaxl0Iss?ii;. =1 Æ(Q/+B;0z28n!1Ee9P*meyFk7+uM2"IzT7D"a4?kOo|_U & (vҰ%RyA\(E :C33STX׮ꈢ2kY㤶èf$X 놈"6@ URnֈN )<laߘr5JEEf-KG$%IK4eO^Ѷ,Sa`ŷBa YTM( s].X$C!1͓fxoΟ숢$)BMa8Y(ߢ\7@+c‡BKT;$]L {^D,."I<I2bxc 2`[j޷/Z{jrWiމFB( En]E4[ss/BUX[ne;@1HmHt NM|,7&QC* ry''WE.VW/Վ]p>IBFY8viE1,vFn^%K΀!ITrޘQ\נ(c~̓O~nG,FX]H H$,b}:sWI!oR|;thw{@6Sj~MwYt"^{;&VJ5`6=Qsx )Iڔ(` r6^-l iZpXZzP,nA/^: |Z4U]Lr|,,B4 j5@QdzVEɑ029(ɣ@M+M)JiYh6ZbeuF EIbuG3M8)_# l{36m:BA !gS8D4ȀwNޱg.~,ݶ|[QrèRً-2 9҅p1SBQDHXFtoܒes4(vX܆ulQo~<W|ND"!EuɈ㤹s?i}{m_X9~yQ:CGP(@kJ^@ 0^A$XHL/I޽|n[&Z#Jo]"=ghר׋)],w<`QTfyt r,E"A aY)^Y/0΁'%H M+OؾjдMB&4|@0uf@)s2`0$ m>0ٺ$.j)qD~0yIY(9r;[@>M hlE"1X0 \Eа&*e}1K&АTijfXϚںZ MX_/ParmslTf17L@ ӛ7wgx#G> TQ(lC< juoҼq}"hVύ\yS;v/[a>hyeP(@D"-q@5 oG7DIRn#$iIRCv*IF>jUbq3l[$ e0]px~2a_i=쿼廫jÇ s[yVx0 9'`t95̀ms$]W3܊H;@>jZ c?K {s^u Tn|N!'akP: i6DvEp@ \Jhx^ 2ֳ Ϧ߭ ,M1zYY+   d,e]AQL"ɚRݑ}02Zح<4eLECCv/ȹ [C[!Z6<18*ػ#'OAk8X.@= 7a4t] 8Ss @WsAIwQ3-I: Xf(%a^U2N;cgT"cng!TnmhiʢeXC@oö]gGpq]`mZ1C1_4V6P+8xj~:lBX_g |(^o@Q}`uuca!%@0,gw$:ip6bEpe} (WkJuTjH "( fMC!zo߾dh]U4TX[E%A6I|:t$1)~|~  1BH994M:|p>7Uh 3%)[4tІeUϛm | (&GKȝ2SwlA^%+(Qv_ p%hS<FA6,^ ݻ.;htpe">tȨP̌_ff=Xuy-oӜgn$h~uXV ^@Mˈb!}M1Q"!%Evə}?޲}CV|1\F5Ha2\*ؐ!Y uR 1FǀPf6)$p}ޟojq ^bll7y>ʕ,0"-P3*#I;p懵(Rie`[hjX֝~/9@ݙf@;ohp#$ =j(Q"p.5,-(naJ͢Լ+_{KMEL:X g ו!l9:Ph+W@* O3 H`ۚ?5Æ8h|bqr9I .T0'AKK2ח0]"`"M㌤"m $iipT c!I## װBE l# o'i<" `{&HGDG5c`4j{Y*o  I/èMf\mDdNurd$<_ס98b >b_yv\ibq'l{3☩g"T5$ b~Z> SfI2 HA:4%IE.Xt]i2Uw&r C:$_@zVq MQTn{59,M~^sB K(^oblpxa0uHU$}8(5ņH9[; ȲICX.5Hjd{y1\o'Zw[(e p'cz*q$Iu osť$iQËM+`LkZ+'8BQE (=",XV22"IG",I¦ X_Ktv(ZME})amF*`&,y@2 BD[UeÜBk YI`fTb| #SuUlct߽zLA`bii+HCQ `ыlyJ{GJ@W`p[!/gQt["#$IN4FSHLF wؾ_ykٳgK&LLhp]`yy"@oIc0ʝd۫?7̄,:~rZtlpF!è ^Q4n]Rw-japNz0s/p;!Iڴ} M+\ ]/X2SƏjpu WykX^6Hq$q/SS_nj ?߅i6P*FBEag⢅')9Ms ZDM2DQ$eJUf>φٲ9LYV_A2qq76#0j}ı jf(NN~|K~1 NpDbZv~s8N_j$ ).Rwjgm={~$a;Mu 6\(('(fAqG >al.#ޤs?|{ٛ/R`̉, Jظq cc9 .ca!+j fg,BUmJCx5!\w5U$z*zM6wVM|ZJU T@{lRi'W1^}.!\ ̍E-8dڬNdnWnTc41?gI [j} ߏz9ޠ$~,N={>ډcoJQXR>"bo ?HsV;$ID0\NZdQc2E:Ţ8p[,IZ$ ,kHkĖa` qJ")g񳾿 X?m(S\ꀈX DahHSj.iNtU-vXϽ.\!φ3BIK% $J^g1<>5q/oq1'"9& ف|~+#Ps df+! Gwl%?E#XM-( p/l }=x 4D`5d,=S3AF}>&/yX(6BUUtױxt]U>)m4&C H򍱏] 8Ùv6G 6XYy-<1ͅ, Ã$eM(vր1 b*1#-eCAhPJ| MKHYTvKh )_!-Ymd#D # G~sr1&SyI!Ly;^H JßBR:EeB y]ߴ#,kCvOLj$c8eWW_g soٟn # ,ː kÆ2@ޫw2̈>~1>fd;9xȑf P;Gg Uau °4k{-AaEDn0cAT@Nۗ!I:LMN~uҿ PY6914h b{pdÅ`@u\-V({^p wDQ0"F݋Z r ee@HwE]&ϬL'}ǵ{϶4'DȲBa Y,2i9lL(,StӀ7 Cou@ (#phZ Yi뽊MF2G C*)hxy06qfю\bq'Dj9(@8! wtf9(qiTcPnud./fӏxj\9,kq%A|\i4),KG ^Ǚb4I`̑WC뽆(r\-=о}l5AmoD ̢g, PL~5"|29]z}*@ɏX|ٵ d=cUF!g{Ʉ^`lVIh€A-k1M9N0F Srym,P4(S*ܕtgɰgG[/on!F Canw0 )4(*#Zf7;A ([HX iш ,_~.Rdł} I.`Ml/{0z\bc+AIJVo~uZ,.G?zE۵ZZe1}ތ|^p~gu_2ɕewS6(IiM+aÆkPUlX܎jE./GB,JhCX[{F˥Hz",b '`Y2|EKb;s>*ER>,[$O:37j͢FkJA&A@׫$8"IBFC 122DY- v EyJ]w9QJ R2WE]^_8p%f\4-"LAX -nYJkD++кB& `R<9Sl:a`[1&O t-A, 051}q,P؆w, ]fccG0z84'0jv>?"fn!4ߝ>?EgcxNDn*J+^C Qraۛr GDݴ u<L 4a4-Ein,0!a@ZNq+ #L{;(eWLE],aR@G$NTE"E3L'M;m4S.P(lɄHW`%( y5 1|@w=#y8Ů]?yMp  5o C4'ɜ` FE@hkjrK|D>owx1f8 < C0NNV=ʎd6jvH35`ϴAh GaYcV^4bۗikKv0*l{3Хeg{7@$(D *8@2ëPJR,nC^dy{ϴmC|m46"Me*W>ݗiGl.-6f^$kWY)cV7Cwd^pEfJe?'`:Y:c-*+"j+P |~ *mk<\-⫆ɂf(w9Mv$@QZ 屸Ѩ( @;sl%zײ@rBQr8AN,jfJ%Dnl Pk!s"U K?  `4jfULn4vP`4ZȢGm]1  ~+e*64M3LiC M)0XYY'1"6[eg^LqϿYqQTPnD=- f:v 2BOຬ#RBdvI-i!zo9$)(va|CL3[5wq וJYr 7rBٻ?qs6--͟ HE \3ˑdMuU@_zHnq Q^QÏy汬EcFk\!)j#S6 EAU-VIs kZcM++/MgJ.73u+o͐0]w IiWHK{|-IF3kQE`Y@X[{ ݛwӴ {4,8TE O1c)4 `Y5l~6`u9jcuG(s(54 QGDU*Xh[!uD 4$ x\G5UITUF9Adbotoqػ= ew[7p(]ˢ"8³78TDxJ5WH\otKnR`mY0\*l(yUJ.+дMͅHO20n9 :4= 1fE(gF D1g ]?KYS,k"sN|MMnI$\UmA$a84$>F#9k`xH0aAC9(Aßy?5ʔW 10(XMWgVrP-6O\" ΀֟$Sl6uגW9JGM+Ӽ"+$eݢ:,0G OסTUEǐ$#;L,>D@ (P؎;bv k\"4lXD*/-}ٜ'b2/ [7纒NW_Y#GBgDd#; rNVfqSY6] cnEoNv.~Q&lP!#p}f I9[!Y6̴7P, < |g Cb{H xl/ME VVCgE6!Mez]8ٞp%RO@YAz_̔z7_ѵV.`p WD"k̃LU`gmd2qH Lg&3o$E#~Ae  P m'@gN?6'L dєȲA1'n?#n`YEh4eyו^vZ$@. i ϝY8{'5 NM Pa{Q Ue*RUAJ(6R17seF,{%; {}W<{>E> hfFp#ͺ;A7AׅX_05[<-F=( <` s9spco+ CIDATaښVem-òƳډH4-]߉h|≯@+.e+U̓E$hqBV(5JY2;д&l񷶶m\U2a"#QmW_߯}M|A,G1\zF.SŢqυI9Z!߇:ܭbPX͈"`i v2EUa K z 2|GE id} )bj "} TZ$l'u $8Jq#,Ȭiͼ2I,`>_MUCcFP"mT*p1 o@q;|z"InejXG.%zodNJ'b&%<;}`4h@? &W{ B a8Ob9"59q@1cmH3ZLxf^ ϰ;]\@"6 혘h\#ME@!`=[}F^!I&[5#ŷ쁇ϴ$Io>̅^C5R)$IW12,z"QRҋG6S=6p9r'݂ɲ1ja8޿ry7|A%\0qKY%G" ս,ŽaV c1y f$&Pju/2ts,l 7roXU5j}>3<5A4`ETڍbq 3σeyϼ` ʀz-0\ ]M90Ѷ7S3B%12%籌C^8(RT& 2\w5F,% ^Q$IĠ; )VҴp{k ]ʳ-jpGz߾Ot4d/ބbq#,KDb4Z$!gM9`E ^iWs64UXY^`kCmJ>$"t@/;]b5baiJ_'VWGv L4 fd`~:WDg0Ȳ~~ WiyBQ$sHL%+T1!p}P OQ7wx NX+q/B&a2pyz?x:5el05BUͽ~|^w1\⢂@x$,iqq@V86tE=|~#gApSjhވ*\ְa;{=°D," 0҄凫,,_ZRn}IG  ۑϏCJe#\w{_`|I?y7\.a=+",6z?vv2XIRH$@UR@AXad$z`s )?~ Qt# E bP?F/>ԶdJ@ IZV|:,S| șh0jV l*v2w's9wez0Lɷ=36 f_]G7nRY(h=~޲+t, cNN t?JBam t4tk@\U`|޽._uWsq6y.!MS: I_> "8mCU `q+YLG7oʇD{8J`CF.9c֐|8XE(f" &r(xk< Q4B&9ild '\jb0˃B<_jPz-DE'|g 9'dȕH/@Q RBG8pZ=N!I N&`Yݿ†u30;'$MI@U F߷ \w&i2b 5m(#rEvQ*1 ຍLX@ Adzjʰw 2o4KTZe``E" x`@JM28UE0:hlMN>f<_UO# @ yKOT}F֋DR&!l\GZ'Mem0]ϢTCp[8(#x@(I5O8r3Q5 Me=zq]@5+K"ԌQvy }T R$Ue'b_wB'77ENJ`;b[Xxؖl8I7Ve$ "j:u}<}U@Rﵸh$9y/y M9Zl!XwSlg!Ԟryj`&D8kk# Cj!I8 h76Y  ZT$)(|+m V{n xӟu밬.`m-GxnR,-9 lE.UyHBYfell\WqC(rT"h.^XB3ɐWj~vZYM,{mݾ yt:~HLDBQAئNUjU , Zm@ϻ {2Exuf!'V6 $ɐ?W&KM+! 8xsN8*FQ4̟+A|NSM+?5PTڨTvGΊBb+Qԓ _!ElФ,tޅB\W: ^)(x Y`m .j}$<Ezܚ%fju\' '<tye1?oGr1I d=bۘJ |NzB&!_QEqXi|<- d1K9:T߸_ ,<,Q0#g`*J&C2{@-|l"߶7K5aTQBQ6]ynMڎp;҉E(Kns8Gk$&'9jU9c}z[HH=PB)i`PQsLWi QyS@هuMfTjH<{0=}Ia8lI)co?4S,GGiHM$ILKmOHae":t,R KsYДah ~0"I|&ʨi2F{Ҩ<%&]IJ.$dq9,ZV |{p/:Ӓ-| Ɇ !λ[X1С6| X58,Pbf]w0('8w]Ȧ \vZml4o&:G[<]ghm Z SS4atNLpAWߖv#6$+GHP(TweQMGjzE_jA:%ewTRfGP} )cwWhȲ0yI@,u1?# 61g,=>lyӎ, ǧQ*[YeAX`5].lyΉr[K{aVVصkK $I JRn.tDZC4<k.<jT c d1!*ènatʱ|g!Ь`$++geOVF,(YeFP.ByaH أ9sLTCK! iKv*3qQs0@4EQAě 9:z}b0&m7zXM>TalVTvDQʠA[l?5?{U؂A:T dbM 75l tyɠg ={=*vmćaG!9#MQ*J6t< Yge}`cÎdHoxE%^Vb^/Ed<~Dx}\А/ 3 ;_Qd>{t)aVU^\tP;e6VF<:E=x;; 4'uOy$^Yh<,#LiBlf 4 CiBdB>g˳_9Un sx&sLS=MXQY~P(Ԥ-a^EM=ıʝ Bpؒ p_Ch4,,/U"_;MWIb},nTqtXi vх;>CKS.{ b'otZ< l'{&ڴQ'd˟tw)N𼎴sh4"2("y'^Wl[>l Ty\w| DPEgJL,*71d4LAE;,kd@0!'sQ)A4sa b6oj߈efXYgC1MPw`ۓ(lnhvA- 7@L>*LW% VfJF3=#* ` `!xy\:|] +ܠkPBQnX3j4Uף\9Ԍa%ϋ =ṣ=ƅxvƞff 3^ǭ[:|a9赬5hǙ@E׸C_E8'!dzĺHy(ܟL*/Dm²Fe^ބ>ib[#WObGʞ0¶Te(bySVJM I|IBQCM+fR"j$AòNMiAnh]Y9('6i6%j fƠ*TaRE7$B>YlG`AU3;8z$2¤1P _,#{8J` `|pfHIÌc`0u@<m'E-[m (18)溴ۢASq(!IʃQyܱDtz[aH~Yˡ"2՘l2 V XY12E)°`0BsS BqFCE97P:o+C"V|{]hHcH%рϐ^Ie5)ۢ;`Eϒ$A/btfPZp.@0$oRV9|G`s2-jczr/c.,Qd4\XY9@+[ "Y9G[zAJAʲ~K աQ8FG ::][.T`5c9`6PnX8 Z.ZY0Bau y\{(6/Kםxfثx =9(](F1: "VA"J;o_YPt~C&X17qPm A>34-C d^As8^Rم4 xUcU*H"2GYJ[|t%t\;%˲8rJXHuhuT¢s3fNϸ׮Q _LCU iճyRDD f{ᦢ&b&fi K[@Ub &LʽZ Xw|1>,yY-ny%J9DDncdd :~q}l-M5#1Փ [B< T'/Go_ h(T0+z.@[\׮R$m{pQdq<`{jYh6z+1ERdR@}d( 8[oil`\z-d94MKb%$M"Xdu)Ļz ԙ` b,̀$Bї͡.;8u-ugJdָ݆'(3|B߽<3$L HKlUq`Ϣ,k^ULޗ°D@,JZ+v@SK Q*&9O>RIaU56ʭA>ú)N%uo"CټT{aY T*p1AYBBY.%:YeZ@7,*[hhȰ;Rc|"M& Q^{#aPh(C vUPm?u>㋦Y%&֤;2f! $ &]0M`uu]2h0a ˪#6$t_-=/y2+f <,$y ȐӓlQC`&:q L{kB^8O$6: Ӥ( %ؾO<5]MW84v U_/њ6)tm>o` ٰ 681f(H0j̦4(j+Mi]l>z}Ea0aIBj5[ ԱIe > K5t gPao *l{ C\o0 D?IU+,YPUEgymXH(ld>P*R!EbAU%3@"PV4Kdo.F到HQ4VܜQ L_$p]rP-Fa$yNuDuߤ%b!m4\PRi"_( С|*t~{{f&1JkG3-2!B ,Jz_^ 3Cj{199FǑ`PU+.@ǙVU bʽZJDDL"F##4Qd2 xWJ#1{UݬTvcbb nz$!'x(MYèHu $+qnBX % ePkkݏJQYFϢrG"PHDJso?gd3Gj~&RN*?U5_Q@9}M*x*,-l/m>i ҴM󙹙>_Jp>ϓ hoQErpLAeQy@am2S!LBGki"ی h4 L)MU| 1ģ^nk""U9g/;BeY~EUdU ,rVOf$%³ >C`=ʵOka:, l{M75SݴU[T ZVENq" YFy׮14ښϣau'\% bhH&H@@WǥbӮT@!)H*Y\B:o[ŋr{,}Ec M9 kN{xA\z(ډ$}lHaȲ$w(6sҕ$Zㆬ/u- ek2/(A~y^Cb2i@9,#(2L4+ WX x0*PJS PՇ`et#6$^U-Q, X|=f3A0-Б&q>Jelۀi3ǩc8lc0 ˀ5:IvTl*zB9,K2&J&[RtYH @a#L@L7CKkc2"l2 riBoT?M9&ց`eeI2"lH7n{12B@mr$'_&ry]؋%t:CUu:)} ܔ&`YmEJ&<;85 ` _W k(uh FI4 p"£rn&TV\Q#7 %e@3MuiY cET*Ӱ41>>z8.AF`Y4("T*+_3ib0:m7ả, d߅Je 8Uq9`Ol hm{i'~h>ϓ9gt$)܆eIV3l`8D=T?G.l{&76.B؊{PA)˗䓯MO3Ae {baTyh5D^ S^VQQjw`5VLKE!*2_Roc4~*1 ݋Y=A449[ &2Ȫj5  nAUm5hQd B^?gBB3rYC0(w'd*ɇ>es3Em;wb˲`!ϣ#H(|Iؗ,RF +, `UypHM@4,- q roM=j6SPb8:!.4L@Gp°3Oɚ) XE0Ml?4:*iv cK9Iϒs\>-% RlRP@BədŠ`k.ڃ̈IO`kI/409-@h6Ku/<xq(UEV:DBbRc΃ ck+4 f7ܺuAfeCrbL=ð+ժRYy 5*yܺ[^G$[[ xxyGɒ곎3!h Y16*L$`:nhllK:3?k{taHlXʵ %9@l$LB)o* 7G'BE,Q.#Jfh<4"R8M!}-뭱~B ]:L qܓﻨgJdǃQRg 4TTT*T9n׌D8ʔ/UAО״ҜѤ:]=F{Q!IRvX^|EA@MKRs1IVMބ1+5`xU50yƵڒzU"%VUBXPD}M.J$@>=t&0°° ߟtI)%,hVػ>JcQ z om? YguCadwCyfUh`īh@9"M@4syB NQeeP'M`crԔzrhAxAX* @?oŒjmnL5Md'()aQi%"ɲh(#k4I#T"K${2u6H,M3h<ʽMI/ \g=g:8* ݚ&T`fBvy;&wLRepy'Tu5(<7uJu|}2 EeلQ1WFQdw!A bx^ .JI8rs&<<DZ1IYdPC_l;2i'_hX(`4 $Q@)0*2&Dx**`O2-jEz I.S(&$SV`{ME>ݶzm&egrFHn62'@P XVQe*666æv/ jGt}#vMP/UY2m3>0V"I<ЙDYe2$sH2L}l%җ "=XU0m›RߒWVxyV|;@b%sQԃlRǢݡ8*|LO&|uS\w @OࢪjyAb$l ׽*>l{EҨPIf3e;M==ek"ȖH>[KJs @[u-dK Z*d} !I+!l~><͖(}9+(LXV "tRf*ͬ=4MxK+aiw!<2P|,-$)T*#:O1fO\"a'8Gԅ[q Th6aKLe%X]=wga(6\5M**QQMUyސ,iR{W*ԏݸڵshσB#GΉ u?GPz=UZ*qh].xXwP.KKn\px"X-C"3LDE9bq&aY ,AB!Ef*MA&SnJ%zx;bQa.gHjbddt]GQTx_AQ lj"I VUiVP̠}Wރ+ĘYĤ5cV=%D`y`b0b8\붶՝~<"8s T٢Xb9VWWrEQ02-wJ+Jw1 sVEzQ sEcYlla{_C>M [L*VюEի.3Ăc^Ȳ+b, _pxq,CD.$ igr@@C+W/_>#˓h4`,AnkBL&4h8@c2Yo?*ז\'}cco΂;G8WH5f 3p] K$I&筰" ˶lPϝ;_\,l6$ǔ966*x0&y i12Wyv!Bɒ=˪qTA!G `/ibBeUh3<_c@-BFw_ŕ$EEQ}wPC,\ef 0P²jg( >d&b᭪ iN)>-"Ixl C1``lCr01\gMzQdWt9eѩp =)esd?F = *\H*$D0 V ]a~b=jE6-} r*Uzj}nӳR@q AІ!ָl%R[3VghBLDpxEA4T .Q(l{E]ȲHj2FF&P*i=8 M-m|6L^'6|YP"`5iUv{C ,3`Y5a0V1[ɯT1>^bp7\^1RP޾XzIRsI2:YB9f֕.qØa_WEc$qɬV*l 94MEHE(Lӄm 5z}/AQŅ_c&_nR)3N$aX Ɛ FFT/9@(8~I4@7hH_#ơm-Kɬ=4 ƃػwnmM+VD+΂ p]B (o)ʦ "FFzDQ,QLzBt۽/$7-d跑òM_(U0,mlj?` 5cg`laZ۟}v87HFp]0tec Or$ڃ2`0CX֬BEj'\ba,M֓umn|$JpqO=G17}tn؃JtǢl?p8KyMCÌo"o{̈dRppYYK&vڋi g,\wN'D\&3&QEQS~NޟF7km*CjMM`@{n_`ۍX2هi|!Nu (l[Vxr8 1LV>w=^"bp1q *~EQ>jqDa¶󋋿>M՘?$Z*aVaY a.5&)MN=HQ E>@bv{P>q,`wQ h4fT&{4W_iV%러7Y>I=YFc`c㊴]" *Q0 %5&bT;8[Lץ^o5 `u2]&`O(nǟz^-0!>Mb$)<|öm1cOhm 잰vipTD$W6:TI>亠vB@eʕ? 7Nh9[D$pKYRĄ WadliiL6!{X Ο>K|#a1KiN>+AbT*3VG8m3PW3=P~C:V9T(Q#dY$1w(͒/JEYMe&UսlBJEGX[+Af 90@1$ ƃG?G1&"4@[д IB HE& /i]18 XP0f4##@juDŽJA9H"wkm4",xfl{#V!2cQLMQ(.ǀ8R2RK`Y1è,EQֶ' *as !OpCA 질P^gϥK5p0.AdCD ZHS"U(1[4[e4z*=z}/R|ti8,hӆAa+45,zL2n|0Ma~(+tW<YKeff<a#2(#U"olmBN륝{"VX<y 4M Q_83hq_0SO5<)m!Ib5vUN ¥?M%ӬqLNN4a'gG/d$Z=E&Y,,(zDl:i^ )hy7 $FF7) ll|%'ϭge.E~dSkp]!hDP? 'BKð^ E T`Psg$FljTEVtg⸇~}C*>0b_BJPĻ{W^z5I 咇p WO¶mt:« fQ*9P)TR2HlΝmkpWLd8.rRVTRlڈijX[{"`/^͆`Qv+Cl=rHrXbp(A4 dY @}EnE][JOQk (i=l{66!ѐ" {,~° ϻPBcVe24^T]QpsbQaš8Niܖ avw8vg8ry^)R4y^BоWt@jCM (a"A>l[ugVؔQ!⎼c?ܝl> #IrÐ =ƨAjm٠ ՞aTů&-/uiXdex- FS 4$߃fa9Js~}e(dfӎhUE&Kux:l{ CCCeDC( RbZ/x,jd²p)T*{1NRqhqfv&H!&&>9v%$ɰuҟ ʲh0s4\2$?iQ.]C]E NL';`E(fmNXey2%ˏ-1Z0*T`ddkko3!8F3{igpᏖ~OE~$@{Tz|3?kN "@{aY}i#|Kyw/cgz E8`bbb. f? fʌ"@C)kb8\jrypc̙ډt4ˢSl5,/ LJ&QF j`oAv'ö 9RBӬPIpD>^HX_}xc#o IE˃3 ^V3NcYGpxKgCp"1ρn>p>2DP'P+mre1 7f@a(p)?*yVc0ƒxm+ii(:ly.=OPUHQ.aB@lIg؃ } u%|Y7dFhWߴe[sW^z7[$D ^3M#Jc(i;P=9ob}|Ele EQvzZLoZ7&0]qv2e߀ZUpVk.cm,°j9p'A(A}f¶W`iѠ:UG% 742**w#ݙCd=3 .EJab~T*h!z0 nXV] ]<{pq,D"⬃@+Yf 6q ɃjC8Cqi@ jiﶃ";kPp 4 ~E1R0LXLn*:+A* f׻$F۶y^0‡uo. > Cx*%+?[f'ЖV9"Z('bQ䳊#ˈFv4d=e6G 8# EQ*LDL`Nlf`VAmtO|y]wk -ĄT)&t.aC6T)(bp晟l=R^q>Ҕ",jq&P*H3:sP -)lj}"=$"W1P岊AZCFm}=n~>Ӵ?q; 1KA>+"!E5_L z(8,kT׉Z hQ4WAЖ. DrTx0܀eYI[L$8cYB\Й8`E.5S?aLru~~WU!% +P%w8gz70)Pb_٠6y+xt'剸G n"%>`{~Jt& 0zLBQ@&Qe\۱wnQ*|>([yN.""CI\úҟ_x^YGq rAe GyK]Ci-Zx8Ͳh >D< @ijJ@OV}"k}vH")o?O.V x"(>\\fbe8UU1}BSmi6x?x¶^o2XfKI HECaE6Ʌ7~ʕ?_x9׈sdZOaKzTǡGUqHĎe+Wo?>ڬx ݒ}$*8&Bqd;XYHR/]'dz,> 5f_ @AzFl Žc]1C5x붅⋿iYὪ^l4pH$[JzYt#|DpZ\~M3ԟ#e=m4|CR('ՈMƎ@W uݞM3UzCg}](`Ȇ( qUTLE2!4ͼd, miI06@8PMS )4%`’_?(`YA6P^`02+` ~Ajc2RQ,fd0PֆﯡT*~MξþTah"i35ˢ둔^qR1zq8u~{Ѳjk<ξi,/BsYEN5°]$P}vߓނy8[X˲5*|)s {iP`m024Azߑ po?x°;K~v66b*1jj * >A*0 ^ཞkYVbcSa=!_mi:&QGeT##Q*)Ȳ ŋx3xݿ^̲hnRihMvA۶M`D#>h8+J $G]X:N{4JeccGj*[._"z8YCelHUIW;EHSNZ NK!"0h4H@Q<GQ".9VWO#AQdlTgˮE<T(>_xW.ՌryY4ӨV12bqՇLS#A.@I%)&K @nه?$9j5xMz#(j0 T8,kyu]b!P})';.uϟѧ1Mj(#- Tf\BuCQ+,hSL KXԛeE}>PT"ĀK5fAT V; .³tk8lMSȸ!Q= LhaUǗ-t:Ĩ*@9|Ν;tN(>D@>xkh X:xJ툅חMg>@!pą p?/o$6%+HULtnv;D]絘d߿jumP?C,>:}[3\-BPK³Ewi.:+vi$ ~NH" %mS? ;;HDey) t7Q@fhmusnO22 W!MyEQzyZ{ED#be}qk:ɶ@A6,Z|?xJK `BE pn >&Бy"u-( yّ1 $=4|4bpYc&l3Sς]ɨg Bm{tNX gS=#U@<`5V=\CsmNJ-VTe1lqk8ߠR `VV0:clEy a8iVPP*uy 9vkZn__xu( +c3EL(0lV83U6n. o~_?w 4<6HM7f C9T轰mgYBGSN82ǒOyNJz2'*ߜ9]P2$Qӽ͞#I6s8e3asSOLv[=1-r4Wy` >y)EȣmmcUX["ܚR+i@fP.İNÖjBˋoջ47vjv,,@;B[ĶTZxϓމ3g~8ꋞws:1xpժ@Q0Ge:l4?*~F}sxn| Yt,K {PL#T*M$I8N؁s 8%LzbA~47,F:ۅ,7 I$D^Uz" VLJy6'nWg=6$Mu )rݧ DQx{E* Ã/\:s淏?Oy:x-nğBTCX=oY!M X^b(uҟip\QEQLSk0 r:<} 4 ,݁Lz_RU}ťmrI0$Je7o8C >n`p Y=ﯪ&\Oc0\V [\wUy@,2r^ϟRyFz=^Z`u%@.jj&',9x񏗞|M>'J$D[s1l@1ނ13e&BYV2AG6a'mhj5bÆ?ce ]f?DdNYO9{.<϶,9-C##Cry9J% ˈ*QiE ll\Bo;,w|G(X41|!K^]a5XV 4͑^>tse]/ #EMS̐ڇ0\rmSEQ{ n.,(fu(IuoX} 7d@|–^({w? VQdꂬJh4&lHS`8,y EuN%y?c%gM3[.kf# 7nGvx[*Q1.l%366.{yyw]GCF4}EZQdظ k13`ˋPZR 5ӿ1?}ȏqb8GцL {Aՠ6|ExʿyCww]xrx0vRE&7^eK-{" }ļ`Ux-^d''kըq?e007zufZR8dHi [;YȲ萮;c0λU@3|Ay5&eyT0A$XD1 ]/Ya0tAq<^Ấ0$Arj wOOZM]A%[t.ALg& À![îVdn;|>A9.Usw|y.E6k#@(ӹ "= />j)D'SJ8F̙q!Ck,›#[72EȹJc|Si5yp\z/UUdnqX DdZmՒ/ՠBϼ ]1hmCʟ/` qqVBYO4D}5~x񏗞x :'엩.}EjUG 5 5"+ZFsbSQ_.8/ 7OƱ;84@2ÛH{nZGZ KXPR"%Bz- è9X!|3932  4aX0M4;HtNPU{w?.G|eqPqʡKh*J%ALaY5q-L|hCgY2ڎ -e[(JJG(r%(ʈ6wGʢ[(3!d`Ծ s(MVb:4DGQqx]Q=ח.RR0-Ϊ˶nҠif+I/]Gw{?-=ԏT?tuId@OGE|l?Pr4=ڶCC}Yβh?1+Cx,D~9!Ms$ h2 3g~ke3/y8E=f-336(@ . 66{$~vqnY΅FX->8y-̬"i >.#2t_@})^YYq߽ZE YUϓ2CS~zoӹ׽aT{iML%)raF=a Vݫy/zpm{i3) \tnQbPu!z%5!IYxw`c|kbWTը)f<-)t^׽ ^A_JV;v{ kk5rY0Au@=.JO{遦sdsF&1/l3"p"_BDQϝ;ʽ?99;j¶'8%ot:4McUϻy>@``m $°}v{V _:#͇PI'8D@W0dXF}mqu}=jׅR9MB5nb0M[z'PnK ~n~#[_^~}{uQ(O~#(%a}ۗ2ہ8\$C> z}z7gÍ.Ͻli1 \gYlB5xcu*66.u^$By0, ϟ~+#*qvp(IrT*ljqCkD\Bs}($xCk77ZSS{Y׭i3ޞǡ/QnpMt:1å϶4͚ry ccP*9(Tj5 > [ظ$s(z܉A##/k9zMmlRa`VQF;y[$ I <^D~uh0X[v"66.b}:p |g[O].lN0yD-B[FPUK ݾsv" ۨFn Itk 8صM vHU f'f[b+tCf p v lG[z֭/gYtk~$">ia!:I!\w HS+x/|KU0ܨ%|MJĈ U߭bdewq;eLNXWU]<߅N$=R.'a{oVVYw:[kkoye! Ӝu,--`m Û[l82lWX /8ɦw~ˣ/š8Ԉ2@V}˷jCEP\Ȼ ;ȑ:<"NVQn).En -~'z bA)`냩^i13s>V뭡۽~C!$Y ]l)o2BsxޭWWVju_)#d9\Csb2:n_de[a$@ CܜcgϾ7;Mt劢#X÷g7k7nxMlGQE3 مx y,s0xh ׽, _?߯\Tmq8X^H!EwE%:Eyԩ-M3H=^pdԝB :kkWǽ*aykko͏|YԠn+t}134Gظ!+cjor{,+F9'*tw(EGPt}y pM1ČLJYY,I2XI} 3hv3Eݿ4(R)4-jYG`PCe^]*]ﯵ,z?^P?TW M31#oHnܯ͎"Af? {I2xw~[7uffEMhu2!ukd&p/^{&'?,x_[͞E-t:.VVcc<|ƈI}ukw-NFG}A؉QY!Z|*vN'FwK(R x XW(9,)_qR/*5Iͨ@5~ă'mDQo^WW߸<>+f4A討z‚D1Y1 p/sAӬ {M+"nLN~33ObjiLL?G#b|\c/Lɮd0] 4:qݓycc"8fZ|.6>Ǡ%£u ~…?e}~( 0z\fYof(:8$ ak3AxGoۏOO_.KE``0J﹨?7}ìAEU/mqPg((4*[?!Uէae1-:p>!]q^Y95X[{o^l(@$ W Tsv+Iܗo W&$B@׺3(X]}}H'ƞݟ$02a8\C°-qŀH L3 aؙ?[YWmZ(kKC4bH&20\ΞwksIލ` BL(Bثm/\zٰ')=IDAT=ҒIQV?4 EZpI.!0VHʐVS̄!Ă.|:oUU?B^:T@I rSU(122O\/Ӈ _五Jch65&3.C V 59[b(xo 8yl왗M:mFFFTDE\wE*bRɏ XEl.fYŋ@r ILM)3!YpB>\wI7Ri䰪'Nʥ{ cU/)Cz} {([ok%9= çN.nI..h-Z Y{/ٻq5:T]QC"@VQU24U#n*UUٳ_|_$l' 5yqsA ߏ0X[{W {oVVN= PDvu5XɮYCw6jˡ=9PDn(/~m7ƞePC’*QƱ'6kǴ׽.I ~v0>_w(ϣi~5FE*UUÕ<$> Yت{߼BQds)#;6ïiX@d&4jځg[g,LZ#{㜇 +;63e%(|Y8,fYR֟wf9"2PGCt8rjT(SERs^{-{˺^bTvK+oq. CͤYיV2?_/i:{_QF\U3"8Dl[a`e &Hwi~ov|j~jji!'(/v>° Xur_U 2_>D3P"̙ߺ/_\k--W'&^pxr8_ |nz|iwuۗ^jE~(Ӛ."!`UB%$߲!%,ZF[ft܉?Kk߯i~ 0ΙpEc>D}(BR-_y{fW]xiȲ zbD *@-4uaYVF/,|淾`r(/`gOu Þ']7M, ݖɫ}SS䈮rE|3ӓXpQ|SxɰǃW/^ëoW b.I`ti EE{Ah",&\:7s~m"SF<ؓЂk鿏( C:zEE辞=P=hӤB+*G bP~C$Kt~߶oF+; ᢿTР8~ "?=|WWܺotG`\`E!Ve*BB]qoٯ}>0>l0CQ'5٠]C7DFlWDg `>yytt+Y"MS$Iapa!Tt:zZtMXh7o?x(C侪 fP AP堚mERit7>eZ{J-){z)k0PTT쁍nP敐(7>++O5:d)wZA](w| wbz)= E)!"/A0\^vGF\4ڜFvU&(2؏r719ƞiVy?Jt _gط3_c&`s!tjuǟE\ǃ[z_`}g_)&=">RJMDa8 X_[C?;|[&ę,{@(k%7OT}yrs"G3dipP؆# k>g ^_n`e≉yLdMeȀ$ir`uXVyy$gР{oB#aê3gzdeTk׮kE>Gσei|I9K*Y։ uۃ] lgT{=rٗJÒ6sg[${.1륚[`&Kzފ=OYU x<ǽo]/Mypgxv(ʜ  beN0P)G`s+øUU7ꏼW}};y78@`p]:#uAxϜroumlo4q "ߑHGM乍 P\]&=Hاii]\#9@(I a>Y3=t.a0bxam֯w}}Gp6\\^Cn̓ŋf:KE)`Ij>5isG}ЁoȧLaY5[ (XЄYX #E+.?kko VV1:zrEԯGi֥ 6"ɲEQ;;k`}Fiϑm:!WLs!Y˲ؕ+uAhKQCEy KTf,2܊Rji/4ŋt~yo/?ik{ `,>gɦN'Q6+Hﯽto94[bLS-"&C +3co}=?ˋ~(MЅ6!i@<Oٻ{~> /IEQHesV8CF YS@08~_(v0"Tw! _ИB2Jow}g=z(ˢ# o,mV/m \tg,UU$ nKҞFc7 sD'.^3¿Qm.ϓYU#C&C~mfZHNKӬO' >_=[=W&6U5[/;'5͜y4dOX=8wO˩DjrpQJK*(b(v <멧~d\fJ/IAeZVW!w{yO_uREk"hew5($ ۋͣ7xc3=vҲFf %LVHS"40ʰmE)iǃf?zVgnfryJ歐' RLsF&XxW>9xu753 ^spQ.VD ~zINbg )#sPZ˵z'>~=//eĴ'*% x'}볟㊢aKKfmDT'(F(H`ܗ^׋/!f+Z6z\0$/}}ӬR8u~Pf"|Kt܉O}'CY?(,ȲhN.C(_!`+/]gh?O\gӊ9]w Y4bšG*|K<ϲعss=(GU՘UU^k&%I8/ibŧAx7|_lZoڋ~ߌ[8Ciy-U5XЊ>⋿rܲGH#iE/1N@,HP@R'{Oqzxx4k|W?38xfEaUT{Q=ryr6lBC`['4' ÙA uf9 `D'.]ӻ>vF퓊mBtIbS2wSpt}?wR9=@{y k1ik<ADOQq<8{o 9Gtݞ X$f8s淾K\OE[%fʒ C],|> 7}?|~vƲ'Ev 6X<ُkE1Dk#GQ`ҥ?~^%Uզ+ns0r&q<8\ߓ/41J<ٮ¶Ƕbdb$$я !MN*6McdPGE2kw{~_RUht7QL/16"oW?|T=YaTU޲T|\g"dt̙A'FѹF3J10?ϻßt~SjƶNU*ĴEmZ*3AAX۝3š*p]u(3g~O?sY;ic;ju)$!{_z 6qK'|O5;pGg,yҲYC(ff>rDd H\EI/FQ̧E}?qk}HЙ~sb-O,.ҧ}،e5^3ʜD1ln5D4gQ aj>)f+IOE׋/~yƶN=-kb GH!MIyijz_-^סC_9])EacgE$'<:c#n=ͬ7ADXB'>-su梨( {?/=4kQ٢geZi|u?ٟSu&YN tye]ԟו+⋿z_\pY5!!R L/\z{_SUmO ˪aYkrܟE'wܹo}yPOf.z8d620okUcL4Z2sHQi2dsJ{,"& ( gϾ#u:Q,F7\1Jhzo~'~a8G@1uݑvb/6%Nw䨮hZi_ia l"@$dy˪f9A+5 Ɗ(Vz׾=sQ>)ȗ@~̀ksnt~~M+3jIzO[4 9@9(ڡgÿgɣ=ZG2.QH2^]<V.qdYL#:ReؚcO/oiZaT(Dža2MlGo=6bdFP(z등^O8S ,\~%gbh2(yM+_۱~Y Bʼ(p+  ֤EYowxfl{5è̕JMjGe G1tYC|(4X<{3<ۻ83˜]_rh'^gN`G -B Pz!47R[$J~+ sljds9gN?9ėM)=sn{l-FVဃm%ǤZקzpއɌinT%B{n:Qto6Z`Wg C+i'A$Nevdaur fLsV;Q*jE9΢inQF{k6nhE&+r`vZKmk4g{?r7,YN*˗oو9mV4(i)ih6hFԟ']',q q$Ӎ)@7j1H3x||0:gjкr僎ߨcL=)3!b#wqB$!@M}'|{ccRﳺ᠕Zy 4]лRvsK|~-oe͞9Z3H.֗\8څ,z,o'S[r*§mȉ $ɒVR[ %İu6Vi5E[~CCs1=(ۦͳ)j_+/uQ<) OU`] VEyF"!!41SZ9E3]"`:փIH)'\ 9"\?`lPZ)]jFIa/6^sA0ӆWKư)D@O~ёwdGHn}0vȠW&܁&4O(c3.caۊ @.M^Jْy;oҌa[-'R(DȦj̳rsn5vAxaB$pt.j0,5,޽Yz*,KͲ7J,,|ػt!o"bSk!jܺ/Xw#? H<5g|%Hӥo;:#u)$lǰ aGvVBSvAⱐr#N4FG_hK hngib6:.^vaS0WIq D4]7"7] v>=Vgl|rɛJ" MB!g1c[HmuE)0 DCBFycsq|kY=1) D+Kr}u< %P!clЦBr)J.cο o}4̂7ca‰ `eJ$7|W7vLs,e[26 |!Fy?1 gJY!:՗7j+or$"i^w =EF1 r 9dH;˒`aC=|-_ ;SIENDB`monster-masher-1.8.1/pixmaps/egg-layer-monster-24.png0000644000175000017500000014250010547745535017402 00000000000000PNG  IHDR҆ggAMA abKGD pHYsHHFk>IDATxidy ;7"2ʚP@jݐve@%Ȳ$jHʒUd?Y6D?~nWk5v[O,Q( 1#瘇;{Lb-..Sc!>ǎ}EMM񕧟ʇY>&IՀxGW]y?q/6XVh E/cgT,˯…;''~q^x}ﳰ[+W^w~y^ Xk,0܂em}ljUW.{˃~8]YϜTYgÇiey,Wn:Ukh0 w駿hM$eX[ \ykh.p88fxǿP8quM@|%#\;8z3uW~vן?N^j|ug뒔 ^cYRZoKrgVh8Ngg~cN-Te9`E姟V˜<<$r婧~|ΞR= 0,+@<Ѕ㴯x/G ǏE"ðRNB ڂv.u5$.hTUt 1=۟X7 '/I! mx,?@pKq/,W8,+5%)<5Qeyp9ի_X8iA2MQuUy^@`r8M/~%߈",+aX0 мr=o4XVXbf!\Q4! i]V? CɋӪY. ; 15}_H{/E\FGP4m7/GQpg/q.b qg5}_.G0lerEXpΕ p.}WH~~X_*0tyC{%e>ҾLa t΃D# ]L3/ ;JKZ ^1ðO0Y{'N\lj -#& ']C.Fe:ϫE*Ie_/|,Igk'5TU-˿gk}YcY0\e+_翲$=W/~cGXh.//R8rXSJ:M_^Ǐt= KRY5is<^_㯽?~,Jק  rOG쇦MB Eb<^yǟ}k:ORbh =ADwmӌr_}aO^$I+d I ւemb4Z0`q! @|}7ӏ8qrU4 AEFUqIge²y#nrY;+ A4moe ayF~Ӿx9KKh,DQ'ey05u ޽?px> +塇~R8(0,$D1 p2:kp̳~kI'|B4LM=0;s)tò6/nx9wj,]}*(uh_h8aY{N}he1Ѓ hmT8?a|'O("3kf$D~ˊ"O}̙_{e P2$) 6o# }c>,\e0 n!,E??}zieEUTAGz<Ф0 I&+KP_qxjUAP(Ep FE0em^r?t:?IK'/U`qR@Ӷ}te|bnPJ]Q Cʲ|㤦W\˒W\c**TЫ[  `48+P3?SuW8 7H;73G yA7ð' Ȼ0G<| A0.  ! 8N_GYɟIR)]V#1 I&D1sy8\i>o̙_jr,`[ aC (J nt??%U-5|8 IY Cֲ.~zw -kQD RzcX/^ԩ5HC $@|y3( IAzaD(Jaqڗ8zG(%Q4Gy8(g$Y2=qV}a",Es9?{]#lj0GM^C7zΞ冢Q6ݫe9(J#,ٴ֧>,8nqXÐ=}t8;k8.b*ypp $yhrWP1ĉ]VʂE>l#0em`0}%W?8#رE1sAU+ ?Fz`Yi!, w1ޅf^{?}zy^E!m dR۽_|?ȑ1 sY.!ً( 1!:{K0 c^E+Db3 f>~ uQ4!F5v8IRv@a+a8Nʇ%C:Xf7XVFQ 'T9ND1^hQQ p.|]P8evju{KoZXzO)J B8&'DxX[.u槞}?pqܯ^L(OBӦ0=}0z=W鼊xw[0/, )J 9Fh U!{pE_~||O窕Yp~ c33{ A`]_7?KF&3( I&J!^`pMF q!yNOb畧d]B P2Tpû(O"? b{|/g%yB U-Ux ߷U G13:s1|wyN:+ \ކ!:A'PE[ _^^$Ϟˋ,+.n'AT,d9R&&8dz7`Yxz<,q ]F|S";h{|߯}Dhi_ƾ}Nu#ܾV5t:ຽ:Z.w+ E)\>JecuU w`[CA0֧^{@ǖDxB8d"# Kk/ٳ_Z q"nA;>ȇ pm A9{K( /,IBQJ0Yx0t!IYX8kW<}?q.q kW 8NvH"`4eEJ^x}>>0t/r(q '$e# wixA`7_z;58NZH@lv comoe8N8!E>PvcuE#=Qq B&|ߢvǟ@?8$e>p A Kp8@q\|ױc")| a I9 +# =( ?+|8_3 ׈"!z59Q16Ѓ/nk׾a : A`/(JqD5]/sÂ>Kq5DAr8JA`_vݟN-dpIק\w w@QvlQD,aӶ?џ'8^1DP ~M Y#ُ^ V3EW,"5vIG)Tԋo}wpj<>(,!89hrE!rئ>Ae?UWՉEY.4Aˊ88;&#(;?H;}z.˅K`P`OP $)Q" ]k `<^GX_Μ$e.^%` 梚6APi`oyz>>/,_\UKt}@xUx na4Z`p>H[ W/ YFv_,`s`z7]Gؗ]A bYӦTBs>`QăWnNVW_FwqC+o] l5Wld(J' 67öhfE> \tb?ITR5YdinzICǰʹ>M/4 ca@M(JAeyqH!4m,ˣӹѨ0={V8NLjR2 \70t߂ } ӆ? aa7뢘iP%MRK*EA`c8\A6Dw>gaY,G:ˊ_ Hp>Zo4Wpe8N>]nrmAUP"%QT" *l{ _ _,qh- BT T5|^(: ۥ>9еտ~k;5a ZEHRZD4rabPb>Z,7 0YAGz< ]Y8?}K`v7GE5Ga3X<Q4ɟopIGEѤ8@ <13[kyϽ#paEކ(jD| oue8aY- w9;CV7ge hR9`Q$!!IDhA`CU`YlOjѨ MF6g1;[Ԕ ӜA&s6E^#=V\ɟXy0سp! diSdQKdz^1=k{v) :0EIt]Ŗ4m qjq(+\{_oFo&W.w> XR(KQV}4?z彞?ݐ$M(; q#s\ C»~s~E7X3VVq?jLL$,,?ϲBR97\_}#G~>7w/!yGQ=jT a jXLv}grMQqZy6wP)qD:#3̴Z/}(_" *j޽,WE!=sYS*{>,O`<^v0 Lsr9\8~X{/0 MèB'Eg>bqyx^ό"޳>:wזA2 E)CQE `A u{kX<1/_RՉGU4Hcm e(J'aM0 gbtj&ϫc*'8<mlo^O=?88m0 APLx ?R$P11q^ر7},Y.0P ˧y>yI6&'o6?=e ~U4LsRhdY9p.rCP"dP"ɇ>S(w峟8yQg`LZx((E>Lf$ E~ݶ+ };џ èIMDzy~áC^RՉ'A5ox %@04m^ EA:f؋ҩkvYQJqVƯF8Nq,8N 3Zgǂv]1O|bC2PB]0=qZd9ɇQ.O4M&D_dYһ?Z>tG>_~5R* * -XVF;=q!쯸n !$h_pIҋh7/ϼ%vO9NzRdMM0C $P5Lj15;gbmbW6-n52!*v(Hy}\&=61QSV`_ܣ*4mZtr_8t$68N|lrᯯ?c'y@!,k,+ G c;엖rCaa8 GPEy^5YC GAi "Ihd_Xf7k`qx"{AU'@M>@E^*敵:\ GS~Cu  {HpUA0ҩw{'u8NOC&@V.;w߽ I[VT]4gIGDy,`JRQ.yС ^ ӜKmC PUt7căi6;|?kèQ ]1J*66ֱ"B&3lvRmo;=SXa쁮O 3f_F$iqaD\&QxX<~chtf9?lwYB|tkbc ݛiίSQex`> zr[߽w.FT hV"DkdYDKѥ>2|Xڂ(f(X[[Ͼc>ujZIuQ~Ȳ8]z{@aCh]qu}z$ $QX,IfUIDž҂P J}8ѨGvo羾;MN>$C&*KPF"5 <HRQ$¶韵Q#=xB|/\E1A4d2ljTHo-ree~H4A0ƞo=׿VEQ4P.G6[xL:EQ, $2i$3Fxsa7R(%B>LUض@C`8DRc<^cvyQs_p>t5ØF6{Ќ" y17WD T!"\W1:ӎ$E~mccRԅ( BPr<#TP(#!I,.FUDa5&'ƕ] 'aX`Y~T*'19YEc<\y({~r JG5mjQ4 E).T^„v{,hDb٭J;_O?`Y1AАUwҽ2ޅvqࣘ9 5|g{ǎ}n)?H4iN9^oA&!~. 8u4m2aP 2 t:WyppxM$<|j'œ8J8LajJ+ q` |;Ww|ܯ62K>JZp d2y&<+ԋ vo`0k[vх߬rZ4KSb .&`Y90,EY0(@slzEJ>Ms[RabDQJRGպ$0wSS|S N tmr=p\ .}ӡl蠑~517UuJU Ψ0MҘ Ch,˛ 4&'_{~8N(e3# F00,K62eVtR9MԹRP2;R&&n{^em[eGœ1x<>9ޅ,|  15eBf666FW G8fp3Wv@=;5 QaP,2v}t:715Kݠ`1]W/]i^\8LɳTBYXV &9s{HRW*Ǣ9t,e'ӘO,7H$D 2䇇eSt-a]A}{]gx~6XN}ޠRe@0iU@Q ]zRӦ cק28b`q"~Ffj#Sr׿jM,+qx ϫdP,@J[[ϡ߿!D [[_} be zQ A&dP8Ӝpޠ n?6''i~ȿ?[b6x^(f !&rPUgc}%t:CQ򩌫߿c>w?O Sa{$zݻ7)@3P2*EGKKxX024`YS.w'$Emh$rY4IC]5a44Te0E{6x V0Dϲ$u]֯&!r4~XVKtͽ>l@r #"д2Ч`8$%U-3-&O s1株 X AҋNK8lؕIRF* zb(Yxpkk/ЃF`} @OZZ:90#Pa'ݢ( `5d2Sxc$g8=Ctq\F30e8C/#F<joy0$.ؔƥG.A`a4ZU-t7(]$ƍqZ:A6Wû| iA}zUNe,j]`pKTFɢ׻8Q-k ,ks~u@q7d9p 5]@&`sI붩9XVCFdDV}YU'LA|lo_igzzC*Ls/$pov=è3EaM&ك0 *ylkݏ((pN2ph38x,t]oV C60Smxވӝ닢q!ُjAw_Q4(ba=1zg#M .og#S1[-O0,g8g1%I"+&w`^8Njmٳr)_-iܽK^vWF*: Is}̙_Z|5;DczR&WU["І o!ܗ_:%W` 8L|H>E CC8tV060d9Mp}7I' rCsQ* Mٓkz)M|tyƍ1Y., U^y]/[5c.h]ѧR=lf_קD$mqHY\&t}6pn뽑ڡo__5# C`Y2 4@N[69I9qϞ嚢,+`9K5ØYLi{rV1So]a; =8Z8|v$˅*tDIJU,q԰VNtaWFx^.SM^E&Sa;v^ wn_CPio AX#G~b%S}6Ǐ թKN[ c0dH P@zM<#J=P8O:؃st8\Ž{ ^`YR "qȏ{ɟ)Jq1;Øv!ILO E,+0LLLL`j{{[oB& -W3Fr>74e%xވ2!0f)©Sa 4VRF܋[[=t7S&"ނ ( ع~:K  2ON>r$LEFDv'K>|]?%%*f059Ba :n\j с2 `O!Գ{ȑdR1ϫ(c(v›oE 4RQ*>:װԧ#V}l,8GDda/a0 nAttZ@viSԻSLѱc[" JSG.wJ'<6[:r4 y:|ɃRRu;tC>] CSTažfȑYJ19y{LM=L'݁N}1=!P*(+^֮j آH*+8muIR1Gm4ry)hd9ØàeyĐez6h~Ȁx4t8qi4ZOPYʆӹNǑy#vRlbT9џvk* iZdb֛o,ׯP~@UKR%m]8Z f4Cru!|k7`){JQ vۈ ̲}KRBB=珢R9M^Qa-̦Idv!w*Q>t:mbqlcQrd2]RONὔژ¦]Aoӧa ,+,%Kr%^Wk%.w)̤0tG>V99F4E80ͽdj1ZE) b ~65 ,2Ճqƍ['_ 8bq b}=JQV'S>@Œ$5Kճgs.&A`0P.(YloF I"[SۧwQLfz7`A83(< LMD>"D0 t:oq\lj4eycj a* X(RcT]bzZCHoF$U6@bǀㄔ j:ha<^=z5a<p╙zmj¶[cPGдiv ǎ}Lvb`%8ºD1K:XMrRT[`ri t"@v e;}+g#p ``bbQZw:[Em0IM 0(fgi>N:M㱵`<ނ$M#ϠVl^_5azj>ӥ@pmn ,˂a41Y.P 1: /6U5Zju!Ez~b<&VyRd @(fy8uY.U2ɄBdYF:t<45PZ3wѣ?YcYq:XVØE᰾ yCdhw8pxBjNTI67[X]6ȴ CHLͺ\1 4`&I9zWdy`GGLBUY*Ulm=ԐN]5*= !èQ.|LX]iEqLrD>`Jd /;rcn EݓT52[#̣Q /isӹ;jIe2} &]ˎ;< у^^stTԟJO=Dpߏ8]o+Gye Iקh " -F!X vua+.S Rx),DQ $)CU:[1texE)8!IYrGP(0thXDh?F8Ԡ֡S4@)R(p\kiLND>0ޥ9)XB:ݾ7;_.IPE"R(UlxmJhlvհf&#i0hGxaEbB(h{h^EM|Qk0j(OPS&Q`0Bq@)JJ&[`b4FVz* a U}4SM DQDcպڄV5t#(w_p0fSvc{Ef 0IfuhB&] p࣪,+66JQ\VyR9Mwi A0s2)éS_l⿺|jDj%`1|x F6:17(R]&R(",SD+M HjjedO鋽CA1\M«d_~0<œ~Qb<ަ p1XVecb\<@v H,ð $ E 2,k6& QӮL2R[VoʱcOnwq< :# 8ѭT@4PXiyIdFy" F GtR9I:x``fGIRQ88 zS1QPtYKɓ?_gYJ-40 $FFMFkh t1Emh?]'DLs/ d2,iJƟށy}dD3g~ 止q&3( C&^!RG|=.݃!=aa;|j`,Qכi Y(t C$7@{Ɗ"ldn'2Ql10.? < y~p!TNڮDi66XlqCU'}p/6 ӬD6&&J;7I?od\61]MIi>xͧ.5x.C2|+fF`N d`cYWq^ꫵ.`}Ce"5֨94dHa*f'x܇vMF:5E&uTAr\t Q?M7W'buuj ahQv<ϧS~ܦ_"n'Vv4$"@y8NR{^&y"i gxgNjd~X?]/SabFmwa4Kik~N= Tu/,+c IʁTtiNO\O~6xRBr@^oN5$Suh6!ɤ02zۥyPXݿ曗/%2 ff: 70t( E-ڃƚ]R6b paYɥ2z|1=MP>[w2^ j voROUeP0L3д@ T B !%Xgae,R^Z}bܽ51\u Q8=!gYV@x^aY`ݾnF%oAQJK$ۥt={}uh3i}2Gi[$_קqZ6,kv{i :) } A4 efq!,,Zϒ,!KgBH,<#7_L4G rP#WEp]&!úZiNxa2(/sQE)X܃-}E cL(,Ba5ItkׯjI#ХPQCk8" ӬThmhqR]4Mx^ڦд)hTQ}&) HEo/ >pAPwJݶio%R(U ʭ(&F#m׻Ǵb4Z P H[OxqgbueQlnBz<^vE:9m@ǸhIu{iRVV]Q"}`0 ݦ9*$IxE qcukJ}`v07%tFffqkkW0 :5-4KE)ݾhҩin2* A`_!ܣr :QE>j-ZT0Y:v#M^emTWWM>yánujoE)RuKcŧ"d0/f e0n_IQ?,@E ddaektB%LL"F0 LfC,:\,߄tڤ4d9@pЧׯ8W!6ʚ1!8OhAJ 6:0DxR`.XB0f!IYZG(Hv۶A8εt0r4iŦ a6EZb4j"c຤K/I?2Q|v*OL+5o+q-$2v lowto F`YĴ8?yp048254AKh^B&0/YFwq-Ҋ( B1 }mA G YloxE)QihO2 AhP č~8$GϻEief*%!L. DB$(Zj0dz"14&ΎL4ؙ"60N&ΑnFia8H;đ~ aw9t9( ]lm7~by&I # Ң6h$5vϲxH43(%>ll׍g:&]T1mb{E8N  4R=w~i~O.r-3s^T*&e=hT; p_-,N"狿Eb&B(Jax j F{ <㭔@ ,L I1IPJ d?ID&"E IsoBRC&!ڝa86XV}_,3% (z K/<8&+a-T&qXu6+'$embss QPy%ݥ~1a4n%体l,>7FbpL _EҦBK+; IϘ0t18WeFJ?ne+U^$=C `3q K&0UryIBT&eaآӭ!]\';L0tHꥲ D8t&elRQʴNiyya~thO}6]-;e6A49N{ۀevII )NEC*׭s_NGA&pPzӺ ,+b{%x:ZA`qLg^<0y)@T :h-'Ez2LXA`qlێ41IʠV;Z̀}ӁemЀB;,O; C*lG1=]ADʦ.]xT_,]Sl#:rjNjt U1VxL@D2D$`y]?'Ԉ&GP ]%g[VjJapase 'oӤem%ϓ2\?ѨEimJ_<$oz67e .k9譬<"Li҄H!IFCLڝLRH/ { I" 86HJDA P X㺝&cNu8N Q岎\.׵ y> DԦ Ϸ?,dkb +,LSm<F 2uuw$@U+KhJչcbb/@g`/9dYF0Y_u0Qk{̈́?RG,Y`m o%Bd"\bX:0@b4/ejMZchT80  7-)C|ߦrNʾ!I^W_(8x!"X r4He%_F&3G}H&9PC峤x^;UaLOn$iPQR%g2$6d"l.t~4 ]g>dY@uOc)xĹCƅVSځ_C{qS)TαrO7 ^Em &'IM5YVh>w4,+\xl8^ 5"E>Y33:x~,c<^>5_|/Ț,hODXgf?x^D&cچgnR-ƚa 7 (j")MjWxܢB`q:9aL2`bGrN2'I= I"#mHSRN@^^o '6ش=IMlnZCQJZ b<^hK} [亽0ff4Mln I*"(= \7RJƈhCﲢd\G)2DQmwSIjd樄Ŧ22 })K-ZdgJv9Ȳlд/-*CRz{.fz:+ϛDRyA`!0;8"6x 3v{J@&C Podx+52]'5dر%"8Pi2)XQ (gEաx2,N$=0i/d09Yb ̮CS<SdG`pB+DҲ6?͔$[2tkFaTSQ2FA}'R4+)%IY*² E*d" L3LR0pxjPcYJ B LO@Rɠ%fJ_Fk0,L;r aC,-Xp92H4,Yx&o}% F\$p I8DJK4qE5q't_OGĕ poRr*"z7i!iR,:'40.nAy^)#=2-D51V 1vLӟeڀ,E>5uQ,iV}mL) Kɷăq`"t}\F&#FY0 L!ώ@eem6URfxH7<XA2r Am@r}Yy߽b(`{E>l{ R,Ӝݻ*(F07/ U-bkEn{,7/*²%4]azZCkvE@ 5_yWht& Ļ]B20aȐ$;sN(Mr0tRz>oGA&ۡEq| 1" c>%kBeZeiM!J% gyBY€ nRF8%KV_,} i9+HXA7DIDAT6[@YN! aB4Qau8i 'B<-Aӫ]ՠ 1쥛18ܼQEzG}¹sߎϨ,Wx^}ޗdC z=laQ2%&qSv驪 pNs|=q g`mdvdP(0@N4o/i&%}C}}9af" YZ:D1M0d!ˤ8;s|$e0 l:  Eᱸc$O"s\ x gu=1xpJer?I@B&Ԓ !˃/bdhH=eq)x(x(7aee6 89{J n T(X.QY_7 $ hei8kR A` ¹efqH!Ϧ[N0s"Qy FG-o1uyf)nH$RtԩPWiŵ`h([f85-x[XaWϝ ?ce"9va:mՑ (w-AH&hR0~|o.^;0jx*(e,?\H&`]ZeT?Pշjg˗ng#W͛G<NKg,xW@?POa:K<8.aZ Ui= Y0 i<:v!d;po^')Q@I[ tL87|Y Yqp]loㅽ{?K д%88ݶirT i5,@Qok`t!8N>u/@|>yڹs;Nqn tG!BlC_&}p]pY)?Foaٳ3k˗vjb\W-~*8jBmW t\ӂ}ݾÇ|>4m/B I1s)<u {՚AdMo+|Q,UuU2 IXJt--{Aټ]'5ׅݻ?Uu]u}9LHAWMЏ|1t7Qkk™Xx1òa(2r$:stqںBRH!roAk<gy?wqzGEt*Md8rDjuH ){-T~/PnUZa0-"'tz b,I{!2]l~mx_n ð biez 6mF2)Z P2ia N({( 3o{ sIR*BLf I$j6Yz,//yr,v6^|!nR&" Ao(H;r\,..bym6 ILZp b=T*gd:I zW0jJAiڂ U yY$`\ajcq1 E 3聕}aY" ! r? il!ʠdr uu$xsSelݘE ilْ ;iTvM$ĭ7:^Dž,Or Z,"#l B:XXx ݡMq,)k_,+L:NPb(JA찻-p++w^7V]q*ϧ&Ї-İVIJIiPFй\ Iʕ+OU1;1Q%( -:cE ꨕ0j|ď`._ۨwHK$JEn#aӦ>zUpzh.Ǫ0 nʉ/V X.ϣms@LsJ~z+41&ĭt͙,]gMsuq;x$ $a4yCd"O^3g|s6CZHbzEA.P($([DmautlBdȀ8nP^C[ ϧhW&ty &E0u6@R~\3.r#ش)|R&At`j@sk$gu}̲@55/VrG5 ]_`pp:nLIC^w`]H$|nK=;3s^$J,"c @kR zC6R-fzԟq}8jAHcx8\.:vIf?{TD: d}el@Pa"H ˤJYV2ohVa_V0Q}gR$ R20M\ׂ2|H B'/]Y,)Eчs0 A@b`ih#= _̡J$`l0]R O&Y.YhIРFqެ,On&< i$&,dqj?Z :K`##O! M!j.ArdՆ Z%iV1ZsftnaҳJmB_ÑL 4W(9sdM*v}٭H$ e`a0hCr300h ĉYaqԟGzhozj'qD"NG:KH&i@F$#U/zQRbexVyZ`Y122|> ܸAl ih:aJdci:D1B[PU@UY _qLO f:FK<]1rQ~$z=~ {H$\iS$UX'}޴jh;>pGsIa>ffDDtDYroko nppɡWDN0r,8Q2is0vRMW9y+3אL3lĭ@G.'4Tcio'^=lI nJ:qAo?A&A 5&;5$W!U& ]f*X ņUd%ZdЖZo /]h@>8>dD1'\oZFq Ml&=anlIբU+* ",@EH0  'h{[!?-/ȶmib/&TaLABCC9YXV#v!#L \?o,.C:L&)Hcq588fVr|O) r{s}hd5BpP,F*%#ʲ(@5y F"mQ|A:!t}nh4b-aHTyx^)4[Y8y+<jʁfFCtJֈ'¶5*VVNՋ?7#}}q2Q!ق~x.TMZy"p+q"'n9[5M9"ز8jf d]?,W{YaYn4W'@3MI2JU3!ITƀǿPm* e"jA0 *tz@vZasT"NrerPUI=bdmҭYyȲV6< aqkal(rH$8tt:h`Ӛe]yfŶ'I@'g_Ր1 bq GEg4vO{= ;hyz]i>dr`},-qXYY!Uy?Yw )z@Qل.AQݢ}|4z=Ǡi"` zO*%@-AA:dl.H nevuaS ߯1 T%t cc,<4 Y4[0.:$ V*̑ݻ?fX0$0 a(AB&t0Lr9e"$<\KE܊GhCd?~4MfBU4aMuE26׻9qbd2 ¸$ Ch L3b x>V/_ugv(eϳ8]tqz++}X^M[C[ 3g9.1M*5|> ,K^7,\thtz hwu{STXXglA.7lVB*Zu:*6UD~s=x ۷xG$)?>,J vPw5jul^m!I}HF-qΞgq^Q 0Vm2yFd`iC6GC8ݙ۫wpn鷭4u=,@:iwC XZ:Z$,0 Nj p~VmDI!Iy8q-0Vs3Q;IJbIqjд6xm"I7 + î._ v T l ph6zyhtmӈ(~[u5,lAZV à$47ovq)WbDb(نiUp?#wjZR^f fY VnvQF:Lbi tUT_|VXV( B M[j;~ AXr  ~nq]MI$\mP՛h֭$) Ib%fyq8.߷%(ЯJRn$:1k…Kr=.d0b.Q@9s DE6SE6v5&x6UJH݆TΟΚgpn34:MeRD3<0MgH>r8rܡ4+դIB%zhx7 I}:[6)ĸn+.oeL'ðmK"heE68N^;yaZ'lq;8:aȲ uT@=EL ޭٳZ7ٳ3}N|:[?Aا UD /ϙKfҥݵU'i?{A&OІ)`YVYpՠ`08N*n: 1[영Hc)\`Y5VT++'R鿝Cwq:Yόl?6ʒ0Ms]_}&_GvǏaVݼ!UCUW,ǰ^Oi6z-,/@uB`Ynҫ7GF&cDŽg`$kkzk@חj-ca2M"S&}}{vahhO(חhm7öh6WPQtiKyY9u&* ÔҀA& ##f8|?i :4BBQ0VvܹomkF9s1uv)x>{mh\@q=#*3R;0MQmWޟZ5o2fhUti lC-Ua.ӹ^֡kޟzTO3}Dy<-,,Gq::5h@h۽MSoUϞ֚ge20@zYpoB6K \7D2ɠX$Ijgh[e+h-8:s'l9uhhO)U@.'b`HdDfug4MTT]~?|r16 $I`"r9;K~R gӧnPw@Yh <AHa``;188Ba3J1!]¶,-F~3h3TX/K[ЎeG)EySUrlaD<źcv}͈E yڪn)gl>4w,I@pH7#v8J iՆ;忬S96,=O*Hj丈Db$TQ]W\DyM LnK yzJYY9AHe#^DWeXvl^q4:0s eQڣ89H Q3 g<lL2eZ`AdJg n_ ^9u cSJgm+T6@/axto0VjBח^Y^~uVOㄲY!fTMbJxgݢ ii Te|arXZ}_9v:7՗}f~hh!;75+ ej*ztѶ9s@M#:: padaO (X7Wi5zM]πAtv߂e5[]=ff:4tz 0ra``+Aȡݾ M! L|$ ނz̺5PxJSQ#dJ1)%V{F߅Eu5j]RsGOL%Tj( ò'%i2-M*8̙oz:00,P,G,`IJӢ ZyZipرO;c4Ձ's N B:'(iIe!ެk:Ol>O8N~6rb"ER#'Efq-ry*,sLsӧ|zR]Y9>S('IE.|hߣ.]zb͍QjuTN%[)+"q0< ]_FK-fyzg0f[i0xbYסqՌHE ;{vfCqua?26/!i%#&K c4F XVsfnkY\О*Iϊb.qvtHCAqr7zcQ^8Fp-&; Uv toAUoV.^53qU%֏:`#i6;Ix¶3w*ϳcce5 Vd1}00UjHP:Nq80B5dbфhuèQ`*fջ?|L,mpiorU} -\ڹAH{ b7Y~\Pv$t^zŔ27?<ʲD40Mf]]4M+EfBsU,^ބE# =1T@Ӗ7gvfg yj4M)[YB4PCu%J4o҆^ozVw@Y2 aYZ[Tjj0d>UDy!RuMh\VT(}{$ 0LTM$KH hp-V=u B8N.?-[ ʥ dCպn:w 0쳤exĖ-;0:[lX̀X4.4N%ס7~u.~맞gLgPol1{V /PۯR| bL꫇f6 reaQfuj'A+H&ͼ'^;?UۉMn[@u D&SLse_rb~eL0182 lb1j՚ kN׾ّg~L"qj> ڱӹFο(ş?пQE7PvE qoϢ_zN}VKK?ټqjG!0&3j0]_3]f/ $ vߤl+e0r$1:Snz̗٭̅8cb^#>smH43)j:000 ER1wS&K[|hPO;vΡS.ZZ93"ctE[v)d}Z[>u߯3ˊb:V3.D EٸN[0̙3G('ٴ2T41'zW#^qfl#<#,RiNg1.R_4a;NӶelF à,IYIG>?tAAq[ Nf ٨S aպ8?00X4RafHݮnwBд4a-0 Qw764aRQbgM&Rص[SCnZ2o}-.lvxz I"άsXZH`  =0+.|;Wl:I׉(qB5g~@r[@  <q"l>1zR=F3 WN7Ѯ~g\qLN[C{t_W_}к؜ۏ)=*"q "#C2IXVz7c8N:,rp@,8†tS`Y͙I.>vaOb=+(Fl*vf^~|#S LPIWIjϟ½}晗J3AYdrR{V\%ElS:{''\Q}$$I帿a@"x^}mLH ϔAzs;cǎp<>^u߶W _y4L+)p@s'\$͋tN@5 'N]נ]0rf_!֣ߴ:Gye%}w뭿:Hʃ{H%,2aݸMݾF\…s}ػseIf }!I>LJrTͧ[;X!uTʋqYM QjGl0Vc\]_l 9>#GD1=MnHCOJrVzНwcllB# $ڶ["! M[i<&&^<*2J)NFܗ!XVsZ#vx |Pub6ljysƎ8qwОzҢ B}ص%e5gav$ұˆ$Y.,5s?P}L'j@9Jf OK& !SAL.3 aIOāecaVzkb)aAy>QzA̧!4Mp¨yo>L(IERXj"`M$a\Wv߹wJ' C2 Xatdhªmw{vF~? cRo sG;N'VT\W\{~;k39$IdȲ"udcňajyf̙o9>~$飢ѳvi<ӶYլf0v}0AONFiAL4b݃wnNIRQQ^=0 O9H}U3;}drHY: Q d!g?{t?s-I}GI|rCQeyHR@X_c,QaG$SQn\j ;䟖?~l^Ii!Q}gԩWжljǢ*C^,n3N}o̝c|'r*O;?^le:8Nݩ{$U (orI\@ XUӬc0uyebjn|`1>B'L$#ԡ>r79z%Ꮂ8$$Cp] IquCgW'ݩTjӑ\Ir("V0cumnT=:x l_I֡pf= ,̙ܔ %q?6ID 1$SZ=뉉8Nf!DbkN t +@?PJ&Gg[N9lvZ[H8A6D(g쟛{`۶K,+J$N!)e%xNu!UqҾ;* r&CšH$e0:C B 9xاك>L`D6[XM-I]˿|;NIRh*5VӬ+|{?c΃%9H MOBةeW=>3_:4ljEt}见ؓa*wkg]HE}ZJ4HoUΜ滚?z' y&d9I-0p]r7uS'8yvUM5{gv}|r"Q(AP*fqztNʕ_$"1ph+WLEחQL) II1߷ f9NB#c qwϞLa8MbAPq߷ ԃ{?WaD}R+Վ f_y!}}V&U;1 KUh=o<̗JR' =; V]W;r(vسS;6_bX29Db- X9"'uʉ_zo~n9,I2q - Us(~ ض'MrJ0Bta% ޭuvܿ_iOLG7,² "Lgp.PQ@b Y/#*_e>9'~$c<,u f0lj߷+*>n4|#e6tblvkzZZoQI/@YpjߚheR Ö#">!`D9U|9 GKpcAAH&Pdo p+Nߟ;?^J$ T.nSz"U0lJ3{cOwgП9s/})ᦃ"VlA];v|qde߷ pYtwLL|qwL$)Օs݋b9 2pSWX8NWԾ_/}OvpGП$yz`bY͙x$ESPX]fnZrmiP/$ٿ/1 ; 0ӂB"1D]%ZMnV֭}Db $HL 6O7ui Lwj6)MFI$)x\W?tğkןLIR1Y..;fl[9u~g'&>:~ӂ*F0$Pra=PpLe0IZ A!5i6Ze~~oQO#~ ժ`Փ'}t\'t}jY0gϟ_L%WQ JFi{kןJ3 mW_C%AHԤ$bȂXUo¶;;draDBrp]g<v}$IiQNGmZ( w0_{~ߛl@a"TGu̽]3oAAH@Q=sğ Qeʂ)Qβ0s)Y8"I"A癕I[Bg…WoAQ-'{i)YӤ=[ 8{q>MV-Yr?gGX/O[ƯƯ}c|@vҥzb\J&,+qUo4o)ӂ*@ WxxߋI oWMy]8ނ[ʕ+?w۶=_z/ÿ'7EsIENDB`monster-masher-1.8.1/pixmaps/egg-layer-gore-32.png0000644000175000017500000004233110547745535016647 00000000000000PNG  IHDR gAMA abKGD pHYsHHFk>DiIDATxiyUk6 fm @.Y%Ď7][PĉL8\KT|e_يEFH@p@ A;0KuwuwK~T͘Mt{w3yy" ֭.G x_Y{ Hyɝn?%9NIɦzA?=/A}C9ں DoX(JKw#q.v-_ѴI2X° 7ۏmCN[%K$< $k@z}[G|gro۷~IgzSRˮkĈ?xӸ 7FRZ$eN'w7K`x4JGs{PH2"ePybNܑgG 3(!~Կ`˖?(~0XVD{ ]/?ܷ:[ع$=t#q 8fsxKaivV?سo(*4ֶ33G\zxy(ϩ|?77$Eqs\\f yɝ㌝;Chm݆pSק$@ӡaAv\׍7V2_O0IJ1)yM?U@޹pG?M SOqnIF{^n6u7/,$i@>x;8zia '`YMX6ro.}`He+l[,_*uO|^mk7[o}nzܾ yI2`B$<O>سok=v']~8R1?Z[!ϟZPq4<9HKJa~ģ>{u7Ν` yx> ׵-C2r q?X֭_%%ug%ӬBU `% t1[x,EŖ!Y](&ڶ( yX|{P8s}4d!-H׃ač$X>ePqR{܉ss4x7cj%)S+R 09yڰ:l[C1 QlEqF{ſo È9A)FNݫiH.,۰w;s+ 9<7y.QeA$KP<H,jZQi7I2BptpHQMQ<ρe8.sQPxMG"hfUv+W>=%yz`Y LM;\B4ڃbm4NG4 =XZ66s#G۶$:(ϠX|b:闠kfL.1{ Ätc4k<7Va<hBo}Ho$a/˗Ý{8.OjԳӐDbCAK ,, !؄z,և`Y xx&& p)s&!Ѵ͛}SbõhAX<., u Ϡ:$!ZVA;I0!U]8K$rRϟD6d D"(8N]ٜ8@Q~Ǘt߂eg8.={70~s F2yC@J[ޜ;niZ2 1@Q!| p,>B{<60A0Fhi@({˖OכL`a4eA@+l[@ePFFH 4A[aqBr?Irf$<ǚPOum| mmiZ-Ei*69 #C<'5` 30:nD]uk4?y/$)x_{"A`,fm (EҲ~dwF>W`i./N~1fs4-B`٨t|}xfHp\e5`*dLSA1jSpB9sΙfSbG,փL>禦/; я} gpkss7A`9D^OBu?gyB4lvCxM+ј.L9$c`Ycyݽޕj1HjabLSi@Q `7#nXV҆ Z"Ic2b8_Dset`Ϟ=.X.ޜfsT0d0L<$(ٜi֯;;vYB5?1*`tz`ahWfg_EHnDK˖VSlزmk M+ y.x> ^AP Ih8.H ssǡ}$ M+3g~ÿ zH;i:HV==tsZauXV$& Ql ^czu{zvAKP x&m Rzm L֛Ekex ׵q1XVQuדZmT,7eF>?1ofSo[WJ-Py>j:l^ h}дǟCoオPzzvQJ,ϟB|ƚ NQX'D$0/n\,M 9@[qkṍ<Z`BJ(kCm f;霪kDb%D  '{w|o#ea;N$S 84)-Ppd?>"ڲx>-$'^J 1#Ntw d$ju<ϧta"0 Dpe׵i}z׾o B>׵r;@".Bfc4i]FeXi|MbB/\A }v)J.(c`Zm xIej43A5)F<{uBr,!I+AQ!( _M4׵ .u1sf jkyBIl,[@2VS54?'iXVbt`0c$%`ݺ5c#R$]'LqElGQ(% C^U׵A ,BLsP-y%QLڶtFlD:3<,LreHFa4 "lvD8ܱHhZ@2  [s~7hVmX~`>P,C*$/]2 I`A@ZVklx C2;lA<>`߶5x6sUũ668.bRAe[I2`,={7~e2CR B"F<@a"@41PV8h:Zm^~4 Iv}'˿cB Ц J*|0 QlIҠ(2z}.qt(C($!Fr4-@}L8. }O=⋿4)s -!I+qp-( I A0j pp hZm,AF݀APMQC4@,yAB 8vTE9W@@2UקehZ 81瞻}`ǎٲpVM le0dvaJ28.1fYub;T,|NXfw9Qlɕ;<o_mkɖ0t X6M+|u%॓0^t]B)jsHnxXJ0Hn$W8V1`VzS/|~M+ȍ/ctw ɩOs\Q$p;i5R*lPp]6h:-T(] H$+lCJp]aQb<ϓ CaѐaYMPDb%Tup;$i5ƞiyvQDq~= x ]/ @ezk޿quq́S?LhsHlYA&AQ"qtx`YMb+L t$وlv3 yDb+X6D`s\ YE9dAQiK%IA'`)b}v12M ÕC$Is ~y> g) qۅ"Oe4öuXVZI2g-΅ dqqض.9;fJ0*X6 " xeJr \cB$^5%iϧY6Z)8E06{^BLsaA(M)jh6uAUH Љb`Èג54er3yJ~@Px<I(ˆ`  M+!k@,_ Ei E-hkimȓ71CėΆ0@ d X<= ZV-ąYp\4< ׵i%ض IPyiݺw{-GAn($4͛>LBʘ?RCH$V`ٲ{v:]%Ih4ڍLfal Gy>]H;9B9ؑIZr"l[O7{mmm$ᚦR8Fϧ8d h $bPHIRA I4l)(lk4T`!3p]'ȵs Hb+*p]?' 8r LfHc4,z}p:je:tu fg_e2X6dr-8ƵJ lOl[oFN7S@\¢tKQ qLd2aM4st]F>U]P]9L6 h6P(ŏr\,Cru.X/L؆m[P@g'y(Hd33E b@x> QlmhZ|)jʩP(5 n)&dGҲ--ב$- #fqqD]0*j Ft^EqP 86:</$< Shk%eZ0jp];H]Kvx&dr !˗`:h:AhO]qCVў瀦y,,h^%Xam %a*!׵`~.s4zze<ҹGN =Aqlp6QqyjeX6P(baӠ(,e586\B6™I!I4- M+AM p]x?TG|o H ˖b>w?ZmDOG[~QlIA0`LfaYf3K9=ϗx>PH׽ &<Igl+ #B[ii6ό=jux)-l~렣/2L,TMf,G"q1iւy& %L}ʊD MP(ᝀu끢/``q#,Cz pQR~ Eq`Jd2Wa@Q Y\pƞnjcKd,ϧa $iJ i!xՐMSl8iQ+M19yJ%Bug<<t-fs󟽵uMT*W`#/L;v44!m0 9:|{ٍ("\%#nE,ǖLA AUv39 ~(A`P8Fcz a0LX?O nM קI Hjh6a*\ׂlv @4&FD`xfUuaragGm[=8 Eс4dxFQ 4<QW忀(дr8B 0:$i?'_E< %P\SM4f7òu:(+$l[e5PO8p,kmݎHn]\WiqxN$I,'XJP+R1? PH'zI,5Xv@H@h?6;hrHHs=P,O$roϟM IkX|èEXV7cv%{!'I4MDz3"N5M+Κf=RܥKY޺kÎc榧_m=8LB | J#YXV,.-Y}hPorBV_A5 ƤOh4gg_mkH&o@:^$j$feAB+P@iEq'AY&5j-ZFL$Vuk(nh[PHB:0)P l :43Z`8.Fc&'fsVbU6H 0èI[$r8:,KE6$N+H*|s]KKVrUZlw&&~qvٲ֦5h BA"ݼ2nU#i֖`oh²(q4+0Xlk}^}ZK79K94E IlC@rˡJD$I (D"4R ʫקuTV'޳ FGn5MAeCU]]sua4ƪקuIp\$>?lALt&ϹT*ЍZ 42ZK{IM#nD6 8(*z+E"]R:vEKҲmb;wE"A} a#|i%D=Pͽ֛ Fb2wtJ>?]'b0aw,YXY4*l5l[E"2b #.glz M+q@a/¶Dҿ dRL:;9yP,Fbhi6D=$AP(z}rьiE4f0* 4{{O|Wם.B@ HCK_Xb}AEB1B9]tY6B$CdzSՅ=r72eٷV#PɒL8E 7wAQ,$iH7\ôG"Xq|R6i~|.ʅ;Rr\j t}G0f;qm7B@6"(z.-&I²|u{[s1%?3s^?ͳ!IyAV-0z{$!TtIZFcEh/,7FRΉ|dYK򘏈b4(EKl[[R&l[E, A4 |$ΞyMQP9^;;w={ֶ=.IxJ&pXk7O21E,_i*;HJ0+ssCӊK(I2F %;D1LQfgf^AH)L)BEYEw տD2pgE(׵]r 9,֭ E4sö0M%(0˯~z%rf7bIS\v.=0a(D2avnyWpǿzyOҚVZpm÷cIZؐP0Ft..X6Xaz P JHZ듹TjKgĊ uQlhh4fM+t ׵;8 IZl,E%Z Aj朮%VaT 4rpFVy hZ2EOabVDH&WCV$)TPu%t@ Ke"\y\גJkgpMzD4Pq)03@(ZRx>;L;ubm7堵u˖b}R:8zG-4<QI2H֢Pxx<f7×}^rGh($pa,Ax?2 QY##?GFX's#`UF-`@TXwKf"R+[[Sxue2iCWם؏fuyOH&ׂb[dm I>h/2`WX|NKU4M7|vVmk#/rǽt}4U*W>!eUXhh^\z$UV\"".B ,,$]@Q&vVm챥;Lf=NCU0BRVٜ[CF<gnFK˖D8ܮj޲kq j R=z H,5TFhīWnD*u#022Ho 7?@ H,j2AhU5fs6Y“CC^A_߽D:auR7 IZyj1Wμ WLJ yb X6Je8X4FW͗JlO֟~}A \Sq񊢌U@|q)92(qTT*WAQ V| DJWG^~W֬p;H$>.FzsT.;pa"7KmP, *N!È(.]ׄaTsAMдx CKd6m&ׅ( ?q1?6<IJaX-;n(Dm1rl4 R ^0(ԕzMn$-9zY5Dw$Elm% #J*TunjBIP,[v0L' 0T`TucTŷ_|`.ŤQf࡟ dRH=NRm;֮4ÄAbtB)>-q--[ IÞBQ&[2lQC1 j{G-9,XxkCePTLZ-paMz1mضp lK(kD(NdWh.\a1: PID"s8^F>B-0atv硫^P(9t36\< eh6˞# ^ў~{6]7rmm7#وY߲ԥPcfl[{bض1(S}[Pl --c1D3gM3S?> }}(8ITkL%&bֶ<ϧlXZZ ?5P(aC/=C1˧7'uui6Hβt^U D|i4firOeqLD]d6 ?!e7sԋOvuy$e14| ADu'D1u?M,08M Sz{/'4kA]~Wd:"TmsԚt8[ʼn ^<41ޗ(&l>| o?y C $ Y$j#<63ݽoY(j#ɩ RD"=fsaD=d,'TyH: b IZfs!$ V꺜w]Aj1p}B-̼r~jHgna˦/9=%J&::nX6*%݆/t֜ahkێl|ёJV,LVF2tl~u֭ zpZ[ٜ j S6B! Ev5o0&&Ƀr&aMc(< ؼmU*eT~#宮oqP(i闃wm,èaf58 ˗]̥@KM4z\Vs%4/blYU _sд"fD8?"ItvKl!Tx^ PߞLހJy ?q{[b($A(ކ.4H$# jMd~ڒHhZCQ*QlAw Sh4P$ kAw iR8&L&(T]*+dY/ U#ϵl%lmH7*NMվG=Ree1{i& HK b?Oa"`1D}7V, <-[:;{lٜGK˖EiZ[o?E8tzb|J l2LH<j bV?Z,E|pM hk۾uӥ9,zzB"ѾSgh_y{O>?=`%SGgPH2/i4ˆҲmmr9AH}rE1?ǏՑ4-Kׇm,4ͣј P(E~]"n(܂w_8| ]}$j:vsؗr=sAR+0dXV&HƖa"jB?qq oZ_w h:POö5tt@(cY}=A apcGE//ouѷRb,2}f{!uPdj\P(4pX/nAz 'qLX43M+>4y0Uxw jaA-HV'غ޸0aw]]ǀ,_aTAQ>aN B >4(WҠe55m}wp?@6$ỊјaF#wbٲAӡ6Lɀ7LQ\RIZmkudv4MpD6U G|Ma\O򒀦aTv+Ybpt.y::d6=}ga4TPǗp] =ϟB$Ҟ<2Xл'w ޼r4ڻc[P}vјZt͖M(niֶO|~,R&B8.3M6>KhiKXiCè/Vuv dfߚ~b躘h68$IDh,fR[|zWlv%k=ǒ y0xz`Yl@O TuaTi K/< 9Rx|9Dr]M[ND"c##OXVdFI29K#lΏˢd#폹f7gA,z{E|Oo& Gƣ;vy^`ʒϛ$0Lf)Q5Y\մ",.j_{OJ|^ Cmk =\s$uP._ắ/6Ǘ^B$҉+WɓvK_RW|okU_SVF2rLLPPm{z"rÆQŢX,T* ـ[L($0j(Fw{e=I9~_q_@UL J!s^ˆU Dm6y~Ahյgߎ6roDpOZy?7۩[?Y\ ʥ!]!a,5@uqwkV߷>BĈ9QlA d umkrX6&S'$kvuuu4R h̺|ED:Tbvh$ҍlv3BruT>so%i HEQCAUS 4hi m{ @hZ(F^2w]\"mx_-]7hh۶?JwSԦV4e< tٲu|Jӊ>?ρSՑP( IZцQCA|dϞ}snU|2ʲaٜG4glu1ʵ,Si*Cx||mp0lۀZ#V9p]kDU p4ŖTVju2P7Ķ e($^ %kHcoր$eFiYb73C2_2MFS,x>fj勎c{w$kZZ68lΩ2]/)b{q uXA &"ٶu _sq>h}HL۶Z|+W>@\=wn}qmR4K%G2h4f0?M&q5U:^T={$'8&e砻NHξ=i޳o^y(~ض_KC1;Od"nj#VG9ٶW^ /^^"чgj_(N#?ޟ},G> ɌDlۺL/w|g Y϶ad IE8n?tQQh4SYV<<975"x>j?m?՚nFR= ~YaTe[A[#[Vs>ϟLZOKƌLW_k_~six33o,C;|w>ؼOO%8r>ٹk ^y F.ނ d0FU6MGS ̻v}'g G^{?/|Lpjリ׵d~[o/I|9ِkm]u˂yٜEg,z??oL&ox8ٍ\<\GO=w~Vt {(v+Eè Yy2X%BQlog%򡃍C~~j9vN.Z FpؖKQ&9y&/dcT *a| 2~}xI"G{A۶aĉ>U@.IENDB`monster-masher-1.8.1/pixmaps/egg-layer-gore-24.png0000644000175000017500000002560510547745535016655 00000000000000PNG  IHDREgAMA abKGD pHYsHHFk>+IDATxw\}'y9u|{zL#Ip$H0$ k^gBϵ{g[+ ryWڒJg  $g83:ׯ_~L$J:^~Po|?&3 D8.W^d/50R?6_{$]fY?<9o-s?lv5ހuܑ_w}|5#I{8.(ӏΙZmzߑ#_u.;:qA3(C/\,}ĉK+_HR Ɂ@bUw.|YP8SFV=J9$W<Я\~{w"%6ٷvɲB 'O<ܮO|w>z7lR *\] ;m.!˪v>~ݹ68NKKRAZ.9ŏ+E7O9.꺷@Z|rjY$Re_{Oc~Px'ig쥥7ݽPo"I0}>R[6zWZ|X<\Ϗ>u뾴 DX6&~{Ʊk pxePKUQE57w\>[ǎ=sy߾~_F8.O'F凋'3AʝWiɲE@ Гia\Uu=#fq!̍l[^%)D*u̞x) aY,>2:﾿qmk;@Q\ׄ0 ̓"'R;eAٷ;TDwtsw46% 4k #G|ae7348~BQAqaдP(xT(zVQF{>786Y@:x>ZZTm OLڲ'z{ap\A8b03"evk{[sU&HR13IjMKH6,/\x֗Ou;sAd>T:A"[I[|4!AhC<7.}o⥗5gu=p\h/IR8"x.aTwX31;5_Mvz6"Lw͙7F<Eh4r(Bl4M;Ct8ض Ȗ"MhY|42z?(v!˪òF<8:X6+ѱjcy^ΰlӟs=]ϦFmx8զ&l[apUG /Vo{7՗OzQsNj1YRq;+4Hht=έc˖o9~K?7=QlÁ9{n:^\lxJeai }F# AQh9i #bnȥd64 {8,oݭiQN²TXVY|(GPg4Tps/x7?3s2Èi"PZmkE6Bifqsd2_f]Txf"IHd}:% XvviM A"AfpoG]/BQf|,u1 D+NU*ΨB!I XV]2.A>_L}$a4Fw(3 2b/^Yi~X^~ AHRe9D0(?Lxԩ?2 [|}OW6 nۘm mmXZzP8~| 11q #+G>b!m)c,|xFw] rFVE"3 $I2д],N,MòCKӰatvQu]4VyfkW;:20?M&oS쨮%plè"}2zIQ+ju9d'pB)/0y@[wmI\7j.n VXU@ l[o  uYVdVEj8v`rǥk;{6nCO5*չ$=W,E6 8APz},֮Kyt$.]/g'[ ӬRfaC{h,C-$dLUݽMH&7/ë>Qvv]ڴ.q4ߦiya>Ӭ1]l1*YtӴ,zzOMO?7 k~>͠(tr."8:nA>p]4CW! dKI5`<AGǍ;sȺ eHdRװ?@(qA˶Uz I($Iòj<pCL\H4 pD~P+3sx(]/`v؃Q=p>|TZ]'hdSSς+9,5 A$g.e,-@"q+HA:uӆPh ٹqy/gg_)/a|U(IRvuk4-c#0\A`hZ@ Їdd.RPZZzZ|)4Ǻ:F3P/ Hv #B׋T&P*E4pogE 4$Y]R$ɢuٳ<e!@tc èPEDžh?ff@2F# ֠%PQ!ۈH?15겪ο0ZUPR`Y?$ÝKRggʨp/Mˁ HD*u! (GGv` h h,=T2y.L_߿n,ii:l)IJBQf-T0!èDX6PR[wjv\>qAonyaC.J.W/a$ !+0}y-HR; R[*V/ O?|em~[&YMa$(\HA:{?+Im}LM=~nk[y+ 4X E(ƗYof BiB~iY4kt3Ƀ 07HZ2jq˕D1Dbv O..bqL-4jM˽p]^ӛu lV0wFy\R`UfMQX(ӆQ:z޿r6,tum mDž@Q|ڇ@,_\\|kW SD֖uKRdktaJkVVjc[Y6+Ƭ MCW<M(ʌR*ͨѱۡKPX'a5jnm) cf0ZFc|+MkPVCc (&?X@nݚC8$IqLvetudTu5 \׆a@Ր+m`XVD,iBip\ ; =,+ 8b x)R` GzYiVq7R-7$h>LaX]&姯^oz5sWRD"k[JɢRGtae Vo+ Bl"it~/[{ ,!I#exd0ƇAQ< @fOzM|==|YQ&\JkZq1?u ` ~! (Tp@ IJ hBPϼ͞Dt[/^S'LwumC(Կ!(=\56L1哠(؍p'O+.²SH͡V}DxCUA"0rm4J\B0؋Ph~'``m7jFł b2S=,ho߼RF AiZ´ (q47iRtNyX__Yw B..e֐Lކd2/NM*A\F[ Q X0ʨgss/rk~K~hdsV)h4QNZe5@dyzzvj( uFYh4_;;w`O,vcT:&WmkoBݠN?B//Ah$IyT*8OAp]R. (.y7EH܊xw뒓 ` Paִb (x&2_VL'&'$ 沓?u.4Q$ro<+#ߊDB+U78&rRA GUu12˪ U]È(mL><,K@`i-Y [+VlKb;[*]|Q~"]ڶJQf B( m ϳ "aT`ˆZmJ-,:Jmyy0~h_z{MNM=; 6ۈ(w[U]M4h4@ IIBiHRզryYk=p]94#Gb{E1)sV_߮뚍Mhog$S9UͩʄیM|(TuARE1-Z[oo]귅ht(@ ?O]*G(F8˽z}ܼE67:ܻuEb7.,,]?k]A7s0Zm FPM펃7⋿y&3 ゚Z.r-v ^6Y^qWLeYC U]̹:׵@LϡBӊ0*8.X{{y4-4-u Y[l?BUNT: a,/@UV'xz03|m.0c@j)4#BA, #!Ђx\w sN?ξavkVi;n]9::B: #IjS ^F$I0HRPLU*GlBGld H z G Ѕju k| @|l.=Ln) +,[ ۇsU~W繗e< oIjCl$,KA[Vtt܁ 'n@iR2^踫,dʕW*ӊ|]Q/Ig.CtDbpPT!VkUH&!ڼu%q#_n+;]ʨ2L:~d3'N=A U(϶'G[,:<σaT[tS~tZ|_kE?/֑L Y^Q׫tloca|NWBR3hok|v>8/_Ҷ ų\R[wAQ IV/_5k~VTDjL.}}rA85ʼ̴c.,|K{vR\д\ir`ر"?]wב6VAPaUB@7[E1ʼnlJt0R1cM8"֬确iլ$m2 Q8BTidxt}}nWØ;~D0M$2);wjOϝ DG`p(=ĦM8'&~\m4r H$ {V[PLSAr@Tn9σ A-hZUxI\˪C ٹCZ[}}!=9p[طa×#O*=<"ZHiqV\RZm q 0 A\pfIQf D6;2yGDž ϥJeIд$%<:( !l\m<wo{ ,::D>oy""C=OnBt(JW+!0HrRVnFi~x{!<Y:~pdY%F4By n*$)Y~wf(E %Dfg_>χ3,ŋO$=|gÿYܲGdӬAUAeh:1ZBV̠P8Tj+ϟ2t8^/~pz}R8R0%CR, ϵr,=kHTaF%8:R-^?  Ʒ[V|@mm#™+"|eկC/¼R0@6{پv`yFeh|$s\^Zm rg?|8%74|:>C͹߱cFr лBU.5k&l땣4-U]w^U߽{}5?k.qMg"ATӳS"IiFc.,--׵!Jx꩛uߤ}\(zǚд\fŊ7r>\l #"{BfO"^T޹Wa69k{i|ǎ$=]._0dyU0DZ0ɥ7az؍iE&L( 8jۍQ/~DbҋSm\.=?טO7;w`FȲvAA+զVt>hޜզ|}?6;lhO8jR]]^V9[ hkۄZmE:e?<7Ct22ٷG8.Tr]GV'Z8$I #Q3?s@땘pcKgD/{`wo$ LOEG2y|FD~Po #eV] [],Nzv_Ro~DK;CP ׵QNZ塇^]{Y֏lm8RG8.|`x3Ň~qS._jA듿S+< 2I2I2-tX:y_k۶ zvR^ wd=ֶ1fi ԅF?`}QL<mLaYC/|OB\fO¶#GK?oD R Ξݟ_jO`}'vw$ξT.M{+g;vH;9i ׵&|4ϤeV>vk.>jգO0 Y^~X/yn}?7cۆl5F炢è+_iwMIq毥O_G$!>v Hz;o_Ght ɹܻ>?WG^OӴ ѧ7knjдıc{2˽~zIENDB`monster-masher-1.8.1/pixmaps/plain-egg-32.png0000644000175000017500000001137610547745535015711 00000000000000PNG  IHDR "p%gAMA abKGD pHYsHHFk>IDATxےuw+U*xD Hv"eK\U ' ~s3ؒGlJ Ҕ%°H@w>1ϙ;}d3o+*se __8Fu( ϲ{4ɮkW,7&aҳOE? { ~lmZ_~`]|˵M$L(JK}%g*̿o7U4&5~ţr("+{ʊR/>w(-.=1O5a@eIw+ރWG _[?dJo>,p cX&خγshlnue CW*QJRfٹݥsn<'g֟8rըZ1MKV8g#uO\awتIR*u*& b05s{/xJ< ǶH⌹<6aqHE~rGak/tϞ^xw Ӥ䅦Ԣb-<%b H;RkvĬ9"oVqK"0uyΣ0k^ќ̉y๳+T<5I㚘|.,//4jkgO-zlJlT]j8x(ic[jöM\ڍ]Ku*`~gL˜u*sU926|Ϲ6s:*NJuZ! c %)Sݕwoх\v]CJthARnvͥVH&iBwMP.6^ 7A}03|p&WZ([ҬDD)Y- BR7k.Y:p8'?g; 3y*(m|ֽ0Ms] G)4)%2;&+4$w4L$iBGo)׬BRIBw8LKLrVpE%y+Ze#KRT$f7Ku$Daghf$(X@ieYn0Wo0DxIQh9%S,?^(N1M,[50J%%'0bJFkmI& *e,3g;#趠pYհe%Po4828ƒJ#_}ٮ)UG&Ӓw ,]*r( 9lJݳ1ܾ,M+G@}|9f 8@sv7?ͧۻtIsEw9 y6B6aMCX[B$w>_YXJn(0Eq'߼a[xg,TjK\J3QmGhQ돸r Ϟhj3/?4J[؎Mó0Z32Q9VA3 BTT 4$y.u845Qخ$ JDyI5]ḘAQr䍠ÞߺC!$iFLҔIƌ%ӴD_ll`EGW}?ƶ~RrpJ˒iS9Og[L0EAX6R ey#2d^8фqϮOwM ΑBrNbn3~id|^?xݳ,W)DC&!CqҲib'1+8bl@dWG.|?/u4̘&)qLc՘z3~ ,OtL&w;PYDb*ʼn:;edNK\,ca$&Ud11q#8r"ոy)%gN-W*lw?s]LSa1ͦO֥?-'CָfI4{ 2 h&cD[Q8u: ~tU(ĕ.IVDF'n&yA贪WceKumBa߶h5kw|u8¢p,^Z7Pew^>bʏ??oߠ,]Q)"Y ƖrƗ8֑pJgi:AS0  [خbbO` dBtP|&\ lYCvw< R+@qO0ı/VzwPbo ir)fIb*mc6Qb9Z5IpLɳa^q?M3|c2 xr[/>Ź'ٯcPwxW? ۰aZ WU_a[DQ`0E*0LHK?'aalSý!Q{C:iwv/G968`40Ww92 ΋=\Cr8/>񧂔Ff!JDٟ9J2WwRmFZ<eTyHUIӜ(R9Fy?yj}(v{(m sa/L|>}bi #*V6'!RYAG; }uk%([_ )A`&ZXB?~/=T:.$ja8%c8g1i3C)4%$J._~|\b몒a*?<)01dO#&ҏ:c~QHڌ?ӪY1g"g8ҸoYi_ }3 5qdf0 Z\/ ߗrr#EI8BԤ$Lvt^G2wVw;(PwIx12.LB|U!^g?Gtv+qzg5K0-1g"}^̓Q?w,+x=To=|ǵ53P2Lz51 ߱|g;e Sа\L Eis8Ѩ:o']~u̷ IDATxk]}^>W1_Hbl9P(&' }5o@L<3ب_kqrw]YƯhQ Sw)6~'ߊE{֟?Y>߭5v:)( 0 Ӽo{|>*)(2#w~vF4({t8ȯ4F u+m/^4/YiJJˆ8<7 W//m 'w7vǜmpdsKN/5 ř[1V \*izEcnj&g]I$ ~#}QnaC*UY׀q៘k8"GnBK 贛ˡV;9I'; A]mՑRA ugs}NhSA]}/ٝFPTj>#6jY 2uұ߬zh#}0_~cTyE.]"+UÌS j#TD}gV{bIgkoBKKͶPI&*J*_WTZq\h*ԫ* '۔Ap [SgXq\1, B`X=8)FOhӨ$Qe_ЏŮX+.6 3ӴCu,]e]5U,:&9 q-tR`kkZ6Y]2Йkj6DG1E(W]`vE TYKcͪyU8YjiQ>"Nx|N^C3,U]ؖvEE9qaZ:aKV^ᅥiťLSTD=kzdQ-C js=S-2 ڵ ic>? 2tMLҽЭf%vl,N特^B9P"Rrd4\NBihT,"RPr7݁ˋsfiVI[™.͒9<[!BUq=rDqN Ld9Z3>29T)"`Z!x}4{suJ;m.}w]7O$2Ҭs *ξ9(.Cdp85`?B3lR,<<ТV@^l~nT,I<:'%h%EQZ&{0 ,K8agaSJ9M|-cJx8 GMJI02ij5vllM0 |w뷎̯>!ZZWdc2FY$M wK*?w?z[;fm]bE}!8fAS7:g?^e[}2Mp]?0_w]X0# U0 F|,R?{׭|~^PJr"r( خM2#-CY8X?8%͍lVȮP "f?d2 dlo_ռ"s"A&Y^"8H)ru{g[{_=݋YϽ(JGj'sLC_WxC}ϬqZ˦B/iWWo=^е\k˺1Tc5|s/*֕( $K[+tz/0}7]}k̷f?oTVfsIENDB`monster-masher-1.8.1/pixmaps/hard-egg-32.png0000644000175000017500000001201310547745535015511 00000000000000PNG  IHDR "p%gAMA abKGD pHYsHHFk>IDATxY]yWt4J `-$ض6Q&4Zxi qZ`i9-YO=o5?CgGh(i5vIGt\~znϵg}k'Xv:~`[&ɬ t He%h4cw^3_{tbcm&e2S}VY;|QYI1Ra['X++mu2iʚ.(cj={Ͼgo>.$% 4AZ3zK0_~LN]\?ף.8SB6?kZ8˓|Qϴ^Z[#tP-~ |:eb+݅-IF]W()xyk:tzʲƛ]K;4͙uMӶb!kr & M Ͽ77fԪ m80|j!XkRU5}x{.!l a54~^ _˿a/mElRN~/Sfʚ4Q4^V@`zmO=\7 4n҉"tGU%QR)"VP硤¶}O=iWXYG|*-&#QQpeЍc%,vv|p`GQ4BjD,{19RH.sR?Gug´]ZRC:eliW~t:5,9o\m,,.ΣFxKS䥆xW]_gݬ꒲1:t/Gh0-겥lRX~`4YYk!be>\~q_ ~iQ4 Rk1teHQ|ѵCK>rhŞO7t9/}/"M.gRT%.H35U}1]|#9fauKoa__'q~{$3 nOgms_dyu LԍYQk&6dIENH1zWhihVY|;\\MTԍ:MM`YԥD.v54+<\!7M";MFZ6u/M^bvFqƕJId+ "ߴyC%v/1crF 7!y םb;Fb2<&q^)i30qZ0$deo}OŤYz* ,GT gĨaV!EK #N+;$-giB$bcgekdY4'~Oj8!I @z8NgY"k1$՟q~=S?m.,\tdw/achfHll 1L FeQ=oݐ{I>oVzV(BdLB%uD]aj.q Zäm)g8}[;{ ][F&ߊL9Jo3W[$}k,E]*JFU=hIےNrfo iZ~,`HWL;8OնUjfVgF%y՜w 䵳oM;r6uCZT% Ij5UB3od67fY5뭬`\V5$'4uo(؏xg{6DŽ&CMv(sO: W4}7onzo*7mCi7>s Vm3]b IDATx\}?s̙zbRQBxi-5c4H6;o? FUjDۨriҪ/Vm0v66fv̹Բ,U9>?ON̗ᵿ?qyJ/hRo'~}>GkWڋkϿ'*~mϔJI8jQxoʭ3Y.aS-+)B/3a MUQ v%K䫏 pQHF,TjwuG8# qc6ֻl=~]?O}W{hN3$잝X^\Fw}˷ sBʌ[ay*i_~Gq|ff4^p~j"od40]_y޹a1U5ʦN9rf^oHfTO>x|~c蟱3z%JRh"H71&TZANj90!@`6-\8%Hr*:}oD8 LqL#~ȕ3SfTD$9$k=~ľTo;F]Zv/_;*0u{vxd=?izAX Gc(#"5(GQ䱇:-rⱩ @)89>F莂e)R0NmZ^9f::h˷^kK˔:v0DWmyKj*J56Jk4.}Wn| `H%W_$(ze)غe+`t^64IM ԥUBaK$J-lkVJnR~o,{3$fgtVWX^Pw|!mШ8OK6jw"OFKl$)^Q,߰L~Eczq|b-$=M\Rrz+J 4ge!cY>$I^Z!N"$% }\"21>1_rV"U2(?bqK"oͻs l_(G3QHӜ)'%YmڲEݢ*4CE ]mS,8DIeOw:m0"%c}ʎf*U!'ڧ,ClM0).nO I:;EfXu]GwEc^yF˶nsÿmY[߲j(FW$hFG))S 4 L(8j{TSǶMADz}pĕ3*vVPD(JTMjƶ b?RjE)Jl*Fd7b`-CeLi(q ٷBr$&Hr`d{[ $-CS 葤 ˣUx " " MAQMZ+G/H =' #J)D*ԘT ȲIPp\z^[p!+tGhBz1B('KEoIr7qe iA?d3QBIL]?{z 9R(J2$q <͈eFZT/6Ȍ|;y$N^w80T$"SVuQA-}˯LTp8:V/!kT L(ȉ;V"4Dͦ"•e^{%I3A/H5",9Al;lY@ x"RkqauN Pmt)9$BEJ0iqikV LTK=}{Da4M2Ivos2//ڐaSY\rۙQEoi7T,35{:F rrS0wN^$2G*R]9t}S5)"j.t-ߏW7>Z;+r]QPeN0@K@SN|C|DVv[L]g01ty x(=ۿ9_.Th lam{_>|VئTJgSZgߺr Oz`X,IDATxُgz־OoiRlj$JV'6 h+Fbfx @_?E;IO "x 8=-JDXtԩ}[#Mj.>>=[ԃzP8??=κҺTVo4:+]W~bm보>mEO;KI_|ZY8pcE]_M*u$X;?ˡ\jFE^,J0H2iN^+yY}x} %6=GOQi,+)IY]շ/~U)$8rCǽBi8s,8 |'~N!T4€E?$-\C`z*Wk 6oKga`z6i>4z}? _xB8srN"j9TUzf}lKZth9|蓥nr7?BKo+qAs/}  GӑHôDLN.xs֍/>ܩn;[ǭ1/.3r.,E c'V~0keaI*dbi#,+(t΍{sYRu]a1 ;en&p=iF^LrC'n]}e@Ֆ^XX괱d!q(h#N-iюlˢh",ş=r?\L'!Q)vD!-1w.}߉ߕkа9=3AcUϷ0,+Ҳ|_>r_|)ī뺖G6+h.Kط}0| ZeK/ƅ F,bOAUe$Y #Y+jJw5.Y)shF,6bZB})ZV<߫>^z=l&0d&f,4&{3g/w٬ MYcww|X6Y:9u0Lku3k4|Jg/[RP9L`&YNV FIF(KbAx_8w=Ϯ4cc"%t,UsP%V$Gq0@гh=o=nLw<͹;i<܉ ̜9?IMr>Ǽs[Bty:4'rMN>sǣD^nE4o7۲/%Ƕ/BSy(`V )i]Oh]XBpo+@\Ҫ:buh>#\)ZJ׸Ҥӏ{E}I =szv<~-;Gﱹ;9 @ g_VfD'R&V`1M2<*0mwp#g;~HSZP ۋEЊ,,4,70`0Kօ*4}ﳰ0iZHi2Q50eo5yűOo[f-i.F-?פ7Y9 ۶ DǷ_s->A+Bf) XĘLӂڔB)QB O7ןXl:&)Ed-)@X>LqtYPX?:ER@²(&S>]ReqU֞Zp!|>d$<%FuFO}ϔ U`.t,ķ$2jbљslI]T4$RZ}, mtVIUW8BcdFu5e\γϩLУ ˆc&>yUI &|C fiqa+me2)Pu݅fmadvuVRB;wi&5XŬ)Li4 IvҤ6$J)-Xomi\hP|.q쀔[ [CIEo0 ơ_Uq]hB2M2%@JtB+(sMwC_4xu )ךQ$)y;!*mvYZL*\!- >RRG|{ٕkuurH`gLjI1J@ &6L}GLؚ00](f%=;sfhRpO EIy;^{J*L ڞU.qgxG8daC?ɐf$YqqW#ai꣋,t=dooD5Ӓdل~-ű?ڸ9f[k0nO-l]`.qh1B}yLoֵ\}6./=8`H&E>ٹd 6¬(;v�7ߢ%ir0fZ֭c F[ϭ,06(gF`7kM? QQ1)Cfo!L>9}`rRht1FC^PEK,Vsqn[w/:Q_4.8LseR*OmhFuMobJou{K\a30^C 7W7w&̟dٖ=(/^+Aϊaև~f5Uvx\B ]Yۨj~KQ3]% oz؟Lup[W6J"? 2cbZ97{w'ߣ9~ԉf존d+RH ^~.tc%Z ؖR0fbff@,/ob֋/}_jOݭ~I p:CWI؝%dŋgoܗCDam,[MuIYiZ;nD$J7MD˿ڵg>VkӲ%dFQddyE/͝~n^oF"kg yM8ή\_es+·.yVռ,^^Tq56/%ykE:ܲ=ʿ}50.e@WW?+^xrx+iuj%^}cWA=ԃzPA?PC0IENDB`monster-masher-1.8.1/pixmaps/seeker-egg-24.png0000644000175000017500000000565610547745535016071 00000000000000PNG  IHDR`gAMA abKGD pHYsHHFk> >IDATxۏgZչ=GOό8NN,ٙ(@B^DBO`]@p=lΉ^{==|2,8x~.JzުO\0ڙخ?T/dR2{|z!\kca4U6Z2])_ #vF?{uAO0[WJf1)27F1 *0~MipuU?X dM2UY;'guEka 27 c Ѯ^<ƕoGuwo:<}%ABld{rCIǏO|$I<#=#96huIENDB`monster-masher-1.8.1/pixmaps/egg-layer-egg-32.png0000644000175000017500000001172510547745535016460 00000000000000PNG  IHDR "p%gAMA abKGD pHYsHHFk>eIDATxk}} ^Dn܅D2)TX+UKX/R~ZǕ%Gd]]$GEټ ;ffݧh%H,@=H>9szXן}eͶB~Ui Gim/%rpp48 .eAKQ{el/j3탋*7>sc: $=QDL)|(Ͽi_ܹ>aDa!im_yؖMY%ߋ/0oa}0Ő ߪ1MqWD}a3n4כ&p6;nr$WPpe=_}OTs=psevY#uIteyʵL|mA@˳p6?i4ɍte{@~4ף*e{3Ʌ6R+>X7xpu-2h5簵Y @#JbRrU=lٗϜxh Zm\Ǚ-j-itc +'N}up/?N|Oy`BohX^Ǵ|QJ9ؽvA_'B?Y6I贺fԢ٘ ReNR}@U o͂rh{M4ﴙwg4 p1 V 1f~ss4Oy1Y§e::-tu8JV+V;GFkPK0;mQEff5h54=Umפj%5L`Qiz&naXe{ |X5gk͠ LanM92nT,.Q5ZT  W^ |kx ^*rSS"NRT9Bf&i#_W_:c/a;stZ t[sGƃnĒ u,K#_ V'ϼz9s]ӤdN5%R zYQ_? w:n GkҶuNvA(2caGUR c꿰sT㞟iئg4ѭWR\C:Uh'!V/jA^{Y{.Q\5g1 akkӘY)nu)y/1`溦TJ#,\0]"~b3YiP͆NmӤ?ߺc޵ ˢttlsSUESع唬a괱TI E%M_yܺ:G ;*8M]' 'Cjڽ.0m4qlX+Ϝ[o4m`6hc 8ϙ)}lKdwh4X&O ,#J4;*pܾ Ob.T&0}jJ~KUcX6&ԝo]ka5:ob5UَLA< A4L+FUZVX`qMnR>.lm8 8A: jE^4} ,K|LumTm{d*ٴ @7NPX$y^\{4,z&io:T};Y-gNd(@WR~ XVۄ_+ M`;iIIw:Lo2RR91 X;嬶i4 󼽹O)JIrT.FVãCTEAUc cMu*BB9 Z wDPט>(Ug,vU4:"3f.08}r͐401k.ji{ގMҌ񔥥9tVN",$?7Jmff-2 R$ia=?Ij:091cQT Tlm33net<Ӛrd D]c&Ia;q(́ )q]NˡJFI̙8M] ZIyRz6IQ oin$fx2Jb<v@M4%xѓ"Mk%JJ Ms2U=7~xie@9Q3JbLF Ykxn(*1!,)5TUݳ? A#Fsc[ f )”+9_` ô]`cNcײ߱<Cg(ߴ mp:V@]4JEDo7(O~{MhBx.lm;~m]RG1Q*? <87 S \eZ u}7&%;ug?ۻGIx=byvdsm+>;@ g3ykn'i/g QT9g!=B")A+t0,,ps?w*KnJ4Rj ~it{MRBocj,d !8|￳U 1#?m8A5m4IzEZӹ fNYLUy,2;ΐ#ҼL&ϑA@^L!a6PF[̎}&`ݸ , ㈼h;6nП 9)< jb[ySSv☢* PGӘ( ILcy-nD dLd8RP اJU9n 4D%ٺyqxx$!Irh0䍟Bl<pDQR1Le:7ȳ#dLG4SHů|h#J3N̵9 ˘_so`Ɋ=n0M&$ɘ|ȕ6y^K6.w]w.?i}TTBBGdF^PԊ8O}*(1ؾ:9|ể+RRPM{ | fo+1uRl#2q\]C1Q.~bۯ[x:W3;ֿ?N4wI\WB8ACaLBآyB\ԯ^>ͭ+Tȑhd*Lb4aUh5e!# C9xɩgy%h%i;n8|xc{ շ?yGIEReӈ"81FgQw?|{H7JK80e)* v 628 njKD[tW>\8f BhLS2&MK G%UWg@.o7T/%+aX:I!ya^w.[vsR$QSRYHQVMx[˃\wПZA8 \͛{.0ӍZ ;+rZY˲p͋Y7^{T_^{y͔yԉҒvdx8~Cճ_[]SzRq#\|㿿@ߪ|?ŚXDie@hjͿOXa=zXA S1!IENDB`monster-masher-1.8.1/pixmaps/egg-layer-egg-24.png0000644000175000017500000000577210547745535016466 00000000000000PNG  IHDR`gAMA abKGD pHYsHHFk> IDATx[yo==3{JB8$]l#T\7I^x6!q( !Iڝ3;3=}>sAPJrO?O>Ւs?'mUӏlɟ'̧MpSpsݍ0$yg>ҟ)o]w-my=ij$ I_5[w{1&?ޙ'7ή;{i{ϣ(a=C 翿vQɜ_DRL\wHf[/h8.XFC7廾jk~5sv iZ#Veݐ/>iV϶,'PJ4*>'c*$!ʱtg7[3udS[|o3 DK7|Ui:ks6gz"km9p8a5ضeu mB!𗱜$9ƨd1,,Ϗu hl1^2Zh 5t+k@ sq.h䶑 e U,9{/I 2/t[m|gM o- (|߱g :׃V>elgSR41Qg$tM$^svݷ5](Ԁi02'7QU,(ԛٿUM3{zbrr4rm8t[!誈:j$t].%dY9چmF_f?,Dn 'CРu)$PUU5iPP,0mM֐ CAR򒪙}8aZu-*8Jq醯.H*e^!}w*p E9yY,$yMȲCktueHI F,Y7ZD|U醾!$F&dE-1󞏡 i,A32^ &<2X7|UH?fJ i{8fpB>I&IKEt^5㨠IJ\k7|th-$+j"{dnGTO#A.u3r*lgAZMҌy LBՔdZK.4Y`4 !LC8W6;H 4S YE,KU^~goKrFipUQ,:$sm(\L0:Ob̮(uFe3N;n95i6š)t6 O>Q#+ lAP䭝i@Iʒ|gv_^-"u$mW^oqǖI㈫as8FR0gͻI˲?ӢE"cj9M]aͪ&>,UM!dY/`meT7ML:> t2It< ;8D Fq{,vc U)BԢy;bm}dm#Is eR5BȈ##_ @H2蚎;X$)q4A6,JPb-IH;qV*BFTD0N ƦG3O8&@zfo8:C4DB:3O.0m'oOBLEGfp8yɖ`邖83 h\j-PeqdglRMDŽӈFVK$yn#bLuѐd&RTc˟~|_~Յթ*'ȕLfc&8X|续e r e~8쏎U/ۭV^W\r%SɈL&?{o}_=7L\U'`xue04Qn㳏|>}_yh1ZA5d>uS/2־mh5HVY׏?Mzi^]ޚm@᣿z鉛ϭ?n{IaYyk|O U)fQl6;Rk-@OZgד2a9Xfڝ&[x%r5WVP')[B;dH!i8 ,a+zPKXzJn1LL|o4*GIe1iwv&)|dz'şx_WliZ!uD/~DXmۣJs9Am1RH"'`>t qg15 QH!5aggnn&Ȇ>;u-l ע"V1QeIY^>X|t.EWLq4eUHss! ۣm|O<']-T[ysyoLqgtFipX2JƯɅO6Nc WvZ4&r M}0*GTY2j\pm6;GY,d&6hm S/,H$@95x] d(Hu@PV%d4i2#jv|3jv$Y@=RG658Te9Iʄ vQ:6ϯJ՝:tUjJͮqP` `^ޣ•w?^?ֆu1)[-GۄvOOl[*K, N;7|+}g/#9gβ,pLtFa|x Ʒo;MG*Y.w78¹HN<:Y^sCwe7ߥ4%:ۣmNKXVbE漹xbt.7Zo ՐT Ea zE`A(QM=mxθ3|a*424 aq/ߝtOG++2t.SғL=+]\!K,' hWeT7r"2fڝ8*Е4%c=f?~v#utz3!@`YԀPQuwҝˁnvw]2~aIs7:7;gۑ&7CQRIENDB`monster-masher-1.8.1/pixmaps/hero-right-24.png0000644000175000017500000000170110547745535016106 00000000000000PNG  IHDRw=gAMA asBIT|dhIDATxݕKkTg=9'\fYA(]HPҝ$"FA BqQt! Z$#Lr.tWf&j. \y0m.KoovU7eW$ݴgx| ?dc=ƒՇoVf<\EHEcԢLiqқJ12 C^iSdQWwyyJư5L=5ڣ=O%; .TKXT T޹ |{gQ*I5>B<ƌ?CbFQ6Rj'4 a0daREʑr̮>ѱ Kp+/4eb-l:GF&yt}o1tJW6m. _7_J*):Q>C{Ԯzf/{촂R" cf =/ٓw_Fѩb?}ȯyW p&ʚVܹQhM(*H|ŧlOTW=n\JPPny#Oo( ]F(lqBS5DAa1zs^zz{}u7SfG>0HkizH`ccpop~<:Nl}W BsʑWJ xrɷ[QKX4 9")Xڣ6M\'CڣLR&+]l\\޳g5YLki"9jBDqD/Ҙ$e{utU5j;9kL'"/-Y9?5Y>S'MaRԽ:R%-,a.9=PDՆ5 aA0nso^ a:X+n^X޵ _0 K*D'%SHEr$ynM0EJ4Eܗ/hی((K ]z!)LFA8 %S'_oB@ݠKV.R>i-ML-D*SغMkճsNlx.=7{;ώ9ҕf1ֻp7tU8]4e붃`@ ZF̽_|(1 ZZʼnԜab U C2Z 52hxZD4H=;1(;n)Lz Q(PMն3 *D?qu{?y6tF6GX¢o'oH$N1wj {!5cb Cq@7**?y? "}AS4 a5x8uLanU+RޓĎo`k5"ڽJk2&ǰ5s[Zsv%,V4>Cwԭ7w租/e%[094v ♫g2{{8yfkvu`+ /~G%l^Y~(POWȭz?dGߘcσg!wIENDB`monster-masher-1.8.1/pixmaps/hero-right-down-24.png0000644000175000017500000000165510547745535017063 00000000000000PNG  IHDRw=gAMA asBIT|dTIDATx픽O[W{ H5s&F]2eBB)S "+clʐ!SRuF(X`}萶B VKy{o[Un{ri12w~s&g i(`료rgAZ-cdvNsʕd|&b$re]kx,+}ZU%S3yra! ?9v$+3cWhAAʃ`@\3{9G2'%kq(d(hKK[Y#KHQQ˰ХNBOpa6ÿ[8y/G il+0wxGA Lb` PR1gҜ$O;tʒS9.B8C%Y]5^b]W7.M+i=]CEIcEgtosnԓ]XY:=:!4=ǔ984"BZ?E^ŗ+ώ0iN{ !iJA`otBW(jeqr$tB=AI)M4BA^k7~1.Aߠw)%&bL&89N i{mZn߾r.tj2F-Eg \,jT^e,lj5%eJLT;ayw93Nxu\xGHH`ʜu~pw}d{OBO mvQy \nnۥXic\y}seg7Hv!IENDB`monster-masher-1.8.1/pixmaps/hero-down-32.png0000644000175000017500000000254610547745535015747 00000000000000PNG  IHDR szzgAMA asBIT|d IDATx=h\WsϺYi$ͲBEJbBST"cpj@ H6XP)4FsܿHUn;|s9.?8o^fq7x|z>'zrW[ݛWnrΫwJiJ }vsA0{Bn؏9imU?^"_Urm۸e&:)zɿ!FO[MO ADMVAy@ FՈ '@>{nڇJ ~uL[ZvM(CvŐix#p+ 당oj{Z:Q__ JXZ`(Mȉ1l  a9rpG8Go||ߙ ybͭ}_j5U)-ۨ8quLDŽNHsJ[- >D22U0[} y$#gN+wnDt.QF1,M-=[Ea Z^ȉhmZ^ @"tL0Cݭ34t_yi3r؋DY~b!9K:'tQVDNDݭeJuc@m5'3>=Vwn`'\_<$Q l@kʐp9pPFbʝ"T! N8`X1Pb;0:*l[iJrxR<.5CjnD%kV3Vc\r9Lk|:5Zʕڕ{Vv+~ͩʐ)w "cՔ 9mk-KD !MI8RH^s}9y|Iݭib7e&aƌ՘`!Z@ D%L؏9֒m5tFD\]>}{~gfzo!dRJI'jBUGtJLER=b6<?`'YS?Q5"TW:5t|8# S _N@pTq\sPԻ)%ckhm=Z^TlO+[1,*G.Rb|Ҕj*jf\ş 6 Ų1'N>Ի yN!U)/}-6׶=͵_}kݖ?u};|1n&ߖ~Xlws\8?m~ ]Bun'0"IENDB`monster-masher-1.8.1/pixmaps/hero-down-24.png0000644000175000017500000000165010547745535015743 00000000000000PNG  IHDRw=gAMA asBIT|dOIDATx=lSW9qT!A2t e`TUbLwfXBv@X"HQ \,Cp R uoGs/|տH~IEWwG>vĻ-6\vnK:JJ1kfW4-hB5s 12tT=1{s:ts1{yH!ф)i=.t|O?/!ZA C3Tq8#Tj@xnK?s>s[:4''OsӖ N( N]Ҥ705^Ò 6t8>?`oNl[ϚYvKlPSEzs=?ȑPҦ7y}{%!AA/S4&ݰ#VY@Ts9tMg$#3Έ3#gN{U鿡vi-sL:=K ki=5?W/vY_͵ژ5V TPQe|Xt IENDB`monster-masher-1.8.1/pixmaps/hero-left-down-32.png0000644000175000017500000000271010547745535016670 00000000000000PNG  IHDR szzgAMA asBIT|doIDATxo\~̝OX APB+XjKس+٢&;,`KVj&TѴ" !&L2;_ۅk*6vlx㜟yY>'Uʈ5R{k7|8]ˎtΏ;fd;ئjWVytWϭJU^MֺIOyT [?㕧ׁgޟdIM w0!r ̀UҀkdnpK,b͏}A~=<3raU.Bݤ$Kf pe<@PU.UZ;́G൓M_޼|dLmgҝdl#xÑS)(<$>8Jծ~?Lv] T*%r4HI!&3㔭2It͠Y? `;,;iHFt.? x& a1E]$RV,8a$-[ wWNx']r˿E-mj^vf*7E>G I%(>Yt}ZahG.*ZM҄SST M4d[ڌ; r8$##%=LfL@^׏ʵWF VvF @`I1g -5&3Y̽6Q14CRҽ)on^oZQJ(uQ{Sqs=δ7-mƎ;A|ū?٬)÷R^ݍKRL%-T8bW)$~8%thMr*+]2/hVߘݥ7oO{UlB3Nn2tJ(I;;t0 WAކ_9)uG:iLҥw8np[[s ?Յ}]82^ˋk22f<\ =4Q'>%]8%Ɂ]}/<]7|VO|& ?=LfH҄$Kk4#9kk3a] Fw8EN8;rWi%,T*#}cBH!:q.d [-P{Q*YL`:_f/ юڗ_J/Mr*i Ҿ^?6|bHgvA^&]>Y] 9y'f<3WJZhAn̄A2 ޥ,>GEZp PIENDB`monster-masher-1.8.1/pixmaps/hero-left-down-24.png0000644000175000017500000000167410547745535016701 00000000000000PNG  IHDRw=gAMA asBIT|dcIDATxK\W=ss^pF"Y%H -]bɲ!HOd Y[iv AcF;s?O!F -{_#vtci$Hi/ЯȫVn-#K#ՠZ5Gh?U`qbqRX4!ͨ*x9%oo'!LCqPOD$!Sh , :iv._L"]4Y#H3;$xգÍeGsno3"LCIAdz 4ICd$$aF8S <~T5G1Ld2b*& bѧSr@Pԋg@2& ([ň9B5$Z?ba6j GsC0 i 'ig]lo{;u.ZQ$ VܢCɀ>gx=7(h搓sؚMA+Pʗ(hktݴar'gz ~lo X]֩5jAw6],b87ӧ NGֿ__B\$ !]Zq(D$DYeJL,OeY86. H5pQ$pEL+n1P `։Y\jvw]4YciКa/B(9Z9ޡvEeS5q40 iFq=jVܢ)EARD%GjuN,܉,N%\R,V+ԃ:eIZm۝zs}liERx}7o_Us'_n4_Rnxnjdͺp-@IENDB`monster-masher-1.8.1/pixmaps/hero-left-32.png0000644000175000017500000000262610547745535015731 00000000000000PNG  IHDR szzgAMA asBIT|d=IDATx;l~û  B ̕RJ@CCaZ5 Ej DEҽx8ipֻNv](aAhW9ҙ}/2+xejiz?Uz6E{Uz\ }v5. HU}k{}mvea:d\ ʣݾWl> >+bE"e/c"&O{O )PPx$1Akv xaY~P VWw(eV<9#r3_rV! &wq4b\(;ggCjFijGp/>qS7 ُ!NKH~ҧs0|;HC5 t`?'lHݬ| \8&zM6H8q5K'}2QȂ]nOoc}0s _t<*F)"I)B a[ُqO 3{Xji[5rkɃr`F9ʯHFxM3h6m{X **5{1e<ݣfHa6d"&ΊB'׺Q垹5FDL8ʎR)j`&B )UQٝR1*{.w4C5Q!9R ;)eN.s|эazx޿6+\j<3.dnȋvIENDB`monster-masher-1.8.1/pixmaps/hero-left-24.png0000644000175000017500000000170510547745535015727 00000000000000PNG  IHDRw=gAMA asBIT|dlIDATxݔkTWsޙ;I&cfbM ]n%Q_ٸrYPGPhPD!3qIf&w9E2Dw;y_7~TsIoڟpwl44b['D±Աɧs_x㋟t*kkhhIʑ4d8כQs}_":ac -Ҙ [-f+T ǝ%`_ީPEP$$# WpC~]6iE-\e[(RmWWl'g 1:]7l&14(0tV"s4y0y|ɳg,n.vvט>:h|+ؚN ӈXR= '7E5hIDGg(9aivA{p[_*0)EAƒ*i<їf ~ۭ`;cw|lA$ (IV3j13'=rv˰Xp3s&D* 04_CXizXŜOǏ0/}^lG8X 6 Vv:t)+ܩbC>6l~_M `'ڡP.tLPLK͖l)5Y]×>1"W iE-PpN`6 J"c۪'=V_'=#`";Q~=Μ5Oz$B~=q{1=,)[uH p=EwJ 5 _]^>=}8w{c\IENDB`monster-masher-1.8.1/pixmaps/hero-left-up-32.png0000644000175000017500000000266610547745535016357 00000000000000PNG  IHDR szzgAMA asBIT|d]IDATxo?3xwP/RmrUUR$pHds@p@\'18$.`m,G(Nzwgwv~Chz8Bj2yGy;2o}üg7/-., m}{3_)3{gN':Xs;Wә+en7PZQq*yC;p*rF_$* '˗/uc̹XƗ+v,#& ,·|b;n}P+Xt)Of֟T 5eL3a6mڍaʁ:xz/c7eڛFjIթ:\r/OJ/4i%SZk4HFex[#U)a.~`j"6m V~6mY5ER2d^:~v`tQXŞǰ3Ҋx@2fE0O{zwxVOG2P2ff8gy*e› CRb& *v07Ɠ:|"a(>RKVd*h)%&*1\]~ϾOxaW'_-Wg'>钨a{%A,HF(ͷ& Ykl6CrB)4^ޣZ#6loaw; !v]!UpƟn,*[$ͤIͭQwS&16c1L>͈;B*a O/Qsk~p@sFҷvx a"1I(J D@r"a{ /~#/X[zw'٩uF XJ[d*c8A;kPE@nԒ(}GO-8rnN֡ue ?)ZEy0 َ-RKy]1bSKئaԜSYzo}zx˰؊,c1NN!ޥlZ{A+mq{pv&BAUbIVLyS" RK-?ˤ7Zwkkd*#1QL؆}1Vt+=ց}V arD&4&SQ찓?Ů颴Bh&MrN\vw[Pq*+am00$1rwSff$Ob)KvD%Um؇s O/"`0A,cսDzF:qbQ( ^Y&_w\&u'_,pIENDB`monster-masher-1.8.1/pixmaps/hero-left-up-24.png0000644000175000017500000000167010547745535016352 00000000000000PNG  IHDRw=gAMA asBIT|d_IDATx핽oFEZ2aǖ J 4@ڠѦK3[N٢|zȚ)v%EPA. bل-XL$%wH:{/OD Z{ܷi?Q5AdP2JszqƠ̩F7")ܡ8͉ nozxQ ]Ԇ<\r.hcݻ͉ 4\2UKPVqy24:mNI|'5hQa7Eg 3y5h:562" `=inKM.P   !TEEFЉ>C >`u&f23X א\r Bm>c)SӺ9}akvy>LэMvcQ2JЉ^6apy(1& Q6!@^#fЋ{;hbu~$cQBV>lx,#!q,|_?nN!؉w𠺲t(ha:ts4\v\ >^缟[u֟~YVTc'Qmhn?Eu@ A tFց{m?Љzq?O*SO' 6,S7 Vfhҭ*|Wu0 08yK$C&3n33;A`fxvJC r vҭ쯐pIdΗ?*ҭ۳YZl}WɌ*hX :Nt.c1*{h=shh>ry;; L9pL֥E.O_5\֢5 $XwuYG*l}Q#9L]..4Y _^^x6x- uM 4mM0#R4QpP0~0͠P<fn)Uɠ0d2C(q?*[PTB&3*td"&r 21eNQV%*1uIeY4&4s>8DN0ØT fa1dاT%RI<ã|MU[.LJiyжH%15  _\M\04#]N٧p d- ys}WTոPIUQ>Ɍ:GwJ2,|=n]l >ʱqsfҩa9c8mجId^w>^{ނ_sZu|?>\{,+v_]L/̫S7{o'c;zmQ-e2mL6~W?[5?fÃYdIENDB`monster-masher-1.8.1/pixmaps/hero-up-24.png0000644000175000017500000000167210547745535015424 00000000000000PNG  IHDRw=gAMA asBIT|daIDATxkTWs?f|H&CD\ J(RD\Ar#~mܸp)!PjҠ8wD L;.BBBlc,9}y_q{ψ=7Fmֿ2xՃak2dxr׋wܙSiGZ&!hGmzqUrl؂c8CX W0IߞŽ Nxj`ܬU$:՘D hM:qY kdɛY36ۢm*KZ3%DN^ 3U>qSۀ팑$dh <[{6{wk&x7ӕle߫+4~ G>]7WIVe/޿(7sU\guaIENDB`monster-masher-1.8.1/pixmaps/hero-right-up-32.png0000644000175000017500000000263210547745535016533 00000000000000PNG  IHDR szzgAMA asBIT|dAIDATxk\GUu5ڲ&C^a!aM m$L YX .,l5d&xcglHI`$,P__YxԄ ٲm:uQ_[ҞҋKKJ՛͛Kw/=|‡KNи(_NJ![^i9+8Q]hhu%Tq>~;[\yy|ay>Gnˏoqy2:^]\Y[yjc3U)4IЋ{dC3<{,`/,Lӭ (q(7ruzSLW?yS=#Ƿgr5HyJ`0OŨ0mL#,VWO q$hihJ( >@ Ŏ PZT4Ouԣŧ8OYYh^a`Ɯ zqQ 8a>Wnr8aӏi9ý{A!U p5KBsv{KM#lPHpCX}{oҕҕ]+g8 wM&!nFBH%ɘ|'3ǯebu#l T4`(hE-6&APULx8y;_6/Ák:#cIWuJ2`P꘺ITeW;vy|foS)櫙%#h)%R0@% (JXb/0ԂܾjA,c[X6k5:CS!J"rV*G#tOUe_1E%MLLE% THi&ZP[ɿ$ mِqPD-S3KY3[6tꢡ^'gh6ӻ2I_/?z+I+\v9 =zX(q0يZńxͻkwMw'ڢVU'eIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-right-32.png0000644000175000017500000000332510547745535020073 00000000000000PNG  IHDR szzgAMA asBIT|d|IDATxkLTgǟq3 taXdQZ#6t j)dmb,nlӤI? ~i7~&ƨdۥVE,Qg pQ_|~VŸ#zzf%JBYM "Du;=G*`'ctȺY.zYHYyJLuG3ё_E #Ʋ-\kz{ ,3Gc̘ÑDo~wm⿎nkwAא3z͕}N`p氋wQ8?nujuJZd#ݵq &H޳dl @@#BQeNE Uʪ[1 :$2K9/r> (_Sע׶`xaB &.@*$"A%ӽ6qI_Hk63SQ(\ZY--e@G '@D !cRLÞH:|k?KdY(򣓡tH Q0ʭ e@"2RZMLR|mnDΗˊo/!42FMz@|xý7nWލ^ 6t-$|$ehvO&fZ϶81MG1>ǃONלL^W^ k`9l˭,"`#I1IT**÷n# yV+3\B7Bh>"Txܟ>u2&7X!(M:TH06h냪I?dK>֕빯]C!;G%?fᫍ\";h3пo=c_cS'l'"ZmmF#97n]"US1 Qك?9?lX{{Yܕ=%6?c.DZ/Ƌ cIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-right-24.png0000644000175000017500000000213310547745535020070 00000000000000PNG  IHDRw=gAMA asBIT|dIDATxՕ[HYǿ3LɌjLZ/mYWAJKt> EZuZ( t-}p E -, /)5k//FjbKfr3,Fo~|w>wݸXTLߛ GxA$Y܍fS]O5󵷎Q/CO׳%$/pPfؾ}52I`G_xsg GդdC-NJvO8 KsqT@#f\~l'@eJ'AWuW/?Ww^wVuS 6ss~}{$ !+e3}}?RV%D> VV}Kn$uaZQD.GH&lնJYYپV5r|dP^6^PA4Qa㠥FU}\ت2p}"{WZ}xe!XL-+9nNĕ00`.C,Cy\Ԣ} VwݩS$OtBYʵ !di $hX0=Vzlƒ-_Ҧ Y^qy*Z'5! N~@sii,h SAshtrfiwW*,"IRC2V!1a1' ˯ ߚehqp<u3uydޗư{ z =mB$I ap{xԀwƎ-p3!c g,ą8 TI (nNݬU+kU|~aKo7 eNK0DGJjT5ppq0I yY'd+Uf̷77=:nUZIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-right-down-32.png0000644000175000017500000000336610547745535021045 00000000000000PNG  IHDR szzgAMA asBIT|dIDATx]lW3cb;glx8ɢ8  ۍڔJT%RZ B.-UFjTiݢJIIR.8Im6mBxf<{]Ms~e*)%Å Kzf< ,oG\ր#|i/oFo.b|>53 R!+*WLŴ?7g/([Hdw)6"5'7<]rqwMLWж-xsiDj:>m f$%Ǖ`$\~ZY}mԶZU{܃Ӟ;НC%Zx3?+&). * < \ͦfuL@vwqhϋ͸n b\ ժj'[KZ>X<6i;{l7Izf :LvFݱ蘲LV: 7ʭ!#nn:e!@og~5WqW^w= j9JVB<˳jea =%E$BuBGsQP0\1Wq֘}5}8 O£c?8P*) j &qGZO|NT{w[ɭ[_$5ݖYa[¼^h|1J4F2 ? 5,fu|3KԓVS-Sa粳L͙U=%PםW?э 3Bb}r8<+k_zŚyR8*Mؠi(bD›73H +) 7s<+ĄnKyi47ofڶtlQ (smv1y ҃Ju'ܕq\Xcͧ'tbP <gZ@>72^]̧p20ef9 yqe:X}o|<}SKXP xmrc3ˮoܿ'/Gzx7olg,>P-8{Jb=G/?oM Ϙ%s0.ŗG:\XZN^(onVܬ UE}qJUW&Yfv})ѺY試9MEL3_A J?TQf\Ζdz>־\Dύ"(dVy >.#(!2 @X:w*uںaI# A7A܍ %}$`r{2c8u~yfx&2eYYCA ㉭%q#6, ;Lh0 S><-AYaWtݎoQ""d#]0d2䒹*Rs\sqH)H (WCP9ccI!XMF#ApxD?K;p܋Vʺ, @@"HDB4`"(h(h/.}`G/ )8OKRW5؀q84lG@ˀ9BY0Dio-޲76GM|yduUuwm}cJf kut4M8Nm;/"iL>X0!y2/zޙΣ YZ`,p, NDgrϚNNnO.'u]áag:'?_$BMN =<|hI0]]݅rv+JARHb mO0+3WJ*uM"ݙtz{^%amj{J- ˶fd ӻkUF𫄟>[1[KYQ?_$[ldXN"rsy}STLKmi!In:Nj֋8~l8Z#ɵkXKc7/9Z[ɭ? U웷f©sZ/Č[/˱zIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-down-32.png0000644000175000017500000000317610547745535017731 00000000000000PNG  IHDR szzgAMA asBIT|d%IDATxU[Lgf3_!4@Ea '!$e+ZUT m.VHQTTxI&Ke$ 6;<Jis߇ s p`MЯ[7Vo|δ_rUy֕$Xss{_-^EES/UD%~BYKK]o$NˎAuYuJw_4Hdp ޝ~|o_J INΠ SSL!-kUZ\q(VqV=IS v7֖Rf ],.O/١Ц͆ i[s&NxNNܑ.!E$N}h5'uONe`pi\fShɪs7pskk>wM`V@]?SB8[-OŸ#A1+u [/0ߨyq{"wT`{0v켥RSϗxXv}7bX#luytra kxl62ZIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-down-24.png0000644000175000017500000000205010547745535017720 00000000000000PNG  IHDRw=gAMA asBIT|dIDATxT]hSg~;99?id)i5-kJ2ʆa 腠^(7)y æuTIz&9INrrrNv5ij}|<uT `Oْ 3?ONȪLĹv_ _T JQYLr-&xz|Vm+r.tr-fxES$Μ?x0G8X@OǑxiܲ1sĹͿ%~e15VڪH.w;SLԔ8,-Ydz+tKX0@cz= \+TP 0/7j%A̽-?dWS/w/Ҙ&Ww] pf!$L,@lw۝;++#95c1}Pְ16Xϳ.cӑ}}mɏOvh{n<dA %U "pd؎B =oMuiEI1?E|?E ScUKŶ'ToK!Lw λӅtq82l7, /\jd@ky$*tޏUlնP[@ 枛PL*Ӎ?OlN*EmCԦQ"LJI@@6paQ&H|:ʯl "1sȏ |2c!,eў-eٓOf1Gx@.iA{/ɪ犟 Psjө4|n=.P]Tס:{ 0$F h@a )L>0=PishoU2 ._ <@U*+uQ@JI wvGrDTkj,Eq3y poZYҤ-N-oUgVߜbl~>~q$6&kj#nϩygZ˩򑞅lj=+ST [Kh=ǻ;J:Eh+hl2qqb݅ Ƃeǎ S*˓Ih9okXIDM&'Hd ̒4#E5Y5~Tl,NŤBޚirP?0J޼wgz 0:$>=D4tkހn4ۚ#CGύ{h"S(`5u VU(7gvgT$C{Yv^x A.Amhet4"cј+<6ES\ 2 x##?&-=:CZ?yl+7UPkQ?OznVf!%`<1nKIfƠ *Q=(*BBJ@bΨ?ܳ?suŸWc7=bVQyf  /C!۞= `Mj*$$pjT)/_4ܫNy'RȿhTZ*l?om51 FC1>pcsn3c h+@$"(#UѴ7,7;CuPlO}=u\ZTO )A@TEEYhYˆBT0r bS8*W#Y45[Ӿ$U  aZ5DU"(~rꤝS8ƽjLW'6:ˮݻv^ES)9 3‹ovS7)'\C_'72y~>~z;DU,1F&[%}61ɹc}(Yl,f{O|uL$&4QYn6M*B<7onɬYnKl -ZͶfs#9kss%A./6c3n[$!,~|.Pp6pvW5U ((s~:3+˫꓾o󒸴E+花x%qGqքN%夰 Ik^awvMz߾]xX33ʔRԵhty~Ic; /KzL)ćſ=>.=ji3M s6ㅖ}.u7&]/ 9iIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-left-down-24.png0000644000175000017500000000215010547745535020651 00000000000000PNG  IHDRw=gAMA asBIT|dIDATx]H[gǟwRwLǜ551vqRf7 8ZhqwB)^m vκ2DvZGt(ҩ1cLgsb.Fű.zy>')eyj<駴/ }]/,D#|1+}~jʞzX0*Fѕ&H01&HG8sztsU{QPBCX.xh >K'2Dfj5dU̼Q!.d9VZ$/g_̚ LЏvv>,xyP Y*RYi~^+GU+m9JR)TW.'k5-du-,8rb,T~}Ϣm-l].V3,1pDvYZ?9ؒM|o*E|G#\ )uttU? !(!. !JH15gmsjsj9Y`cl_7TJr*RܜTb!* BpBmI aX4y]_5N5Y5//qq߆). %<9~+9yZo{cubb Q> ΰ ڜj].kswFs={w&|oHJHwwZM-M`ܰ0Lq1׶vt39{/ln݃4K;W:MYMuuCb{q"\DN 'уgLUV$?GGoS1qBE"} 0Gwia+=Qzԓ-K4˨[X(^-?|zwkmn7Ƨ`Ȩ0:x ?]hb\\sD[P{ . H+ߚNJhŕw77㶹>GӨw7ҐِגRbƻ1>-kufuIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-left-32.png0000644000175000017500000000335010547745535017706 00000000000000PNG  IHDR szzgAMA asBIT|dIDATx[lex3x&I\m&lw&AEPG D$R !]Bb[@Hx@EPUHJkZI;IƱSiOϻw^w>_e\898rC(+`m̶U᪼ۼ{ݟcgwzju-U=Gpѭ:Pu2 p!c݆,f'L}fҜap"崘fyύo R!SOa^7Ob& s<\O\& ̤9[Q* *"^Z¨x9^^ JZ],0>se (HझQހNO63ͫwrwN8i-T~Ǒb3Ӝ}r0'rn;gTA(BcWo׿s6t>Yyq jZE"OZRu @ I;C-<1%@TD rZ;X;~985{EaԔ?o t ,Zؖ*TT> h3sZL J(x9 (ʵ{,VQ*V\CL)c Ryz?s{ 4 ^c,BJL8 % ("(d+ٍCG=|wokjݎu+•H! "| )-йSɩ?/wMX㍖7"eZEH"(|;S0s9I;7_z+xr@Y.l[~a%j5% ez Qyoa[j3/SC#7LTVʊ|2ggP n*Z4&H /8|@z镵+g-|TbJW+@!I8:R&Z,v}+t##˹e̮'f9[&0%`ۆW[$ETIWg;:SMtO z.t @0pY:c Z.wv\B"LL|$*gld<-|:5=|lAF_ۛT}G޼[̎{.YwI}J~{gIՃ#E&*b¿FTX!l`IENDB`monster-masher-1.8.1/pixmaps/invisible-hero-left-24.png0000644000175000017500000000210010547745535017677 00000000000000PNG  IHDRw=gAMA asBIT|dIDATxݕ]LSgǟsz=@#A\25H/@C^EbxCM㖅p1en2-L1"5 -Gh.v3`m{Iz`ln.z/ŃǪ3yRJ~:kA8rZJM}'fuf)Tb h.9 @(% UK7n@~ (I:trIFOUU,& BN8趸MV|XF[<|^2ͱr!?N wr+%<:`'zc/*.QMxRC!g\sgKh;ԦC GG00E(@ nkg<~<1djZej3LmNYq?n&fi!:ugt֛ҵZHgRb zg:)$&t"}oBNQ~ՃWGB# yW5D Vk+p,ro'S=oW}h `I1 rN?LKiph2JNڵ.딘^"E-Rba=nf G!-y /(`=n;Q__|[V=500PʄFh:N==E_e_F҂QmuBxq+4dMLbu(8eqYgGt1f@kxd\CtRIc/.EQ;ǞS?oI[kgo-߲ >w;]d[ߥ><xi~V686=ph?,˯%ڒp-i+b{+{LnLr|rCJAogF;9l8;] "6/q?O\]'\IENDB`monster-masher-1.8.1/pixmaps/invisible-hero-left-up-32.png0000644000175000017500000000332510547745535020332 00000000000000PNG  IHDR szzgAMA asBIT|d|IDATxmLSgǯszzRjmK[Z1:,c3%LY,=ƽd1q_,nn'&iL']^|YITWkiyy>l{Ǡ1&[x'I{CExnOSYSkuoOdp}Z cXؾxf`.LL"cX^)^QP!j_: rGeH&\_o6 .ˮ0ó}NkAY.JZ>>T֔e}>R1f4"COuƠ pGm=Gr%DQj>k&굉.Sm#8''*ީ}QQ*I{wV 3iGOؔQ8CR}k0>yNY״}a[JlXh7fIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-left-up-24.png0000644000175000017500000000207710547745535020336 00000000000000PNG  IHDRw=gAMA asBIT|dIDATxKLW;/3Ɔ6 F$ʢ6 jJUEJDrU$QS*Da!eMMD-Rժ5` c3xlO Ys.ǘBߢ,m!4bteۅ—[M ?NJKpo*ag=&ϳsQwx+QJ߂g5ULUv;ͻ8עUgMJ{+6v%Xq$q3q)M9C׿Xw><.j5P%->+c9-Ǽ~38s  715&_:jF 80@?3Ed٢/~rq=(YnH .ŗ:.9/{\=ӗ;<}k96psҹzz(Nn*x&noH "GrtEP;%g 7-יfGJQYgx&NI a`O(YB` `mH:MN3솲Wpf]3ߜw⸑!Ppu]rvNz\LF;& U5\{`*!MZ#j"M"Q0q=P//KGCM4M-חC[*V+w$6n D$$$FBgYg@JKU?+D(%SS"pO- hZgYuU0Hi)b "ད�3r[{# &VixLdd'\QCߴGƇCN97 QzB*SIDҪZ'kO~-HPڻ]bX_,q:ʥ@JK gs0M HӲ33gUX;/뫨1uu!dDԌs2T@Ы_ !:wdڰ^>Ĭi9!@67&Bpm>^ vr8,f6%8t\KhɬJ^eLV84rQAKhp`(2rr\hX#8A#@Df0\s/لGҐi)mѸ1taHp/і&A!$FAV`3$̍&G57MSY%+i{` 60LMZr21c!]xk<9HORq5,dH`(R|<_·WYW dr7bߋyg;gX=kcnljj4lcq$FB43e4ry(B|x>bt ,)%NC9[ FFFjs܀m}Cr7k "|ii8WMc ѬQ!M'1kMNG8@ڪ:B" *F?04_M|ua&拿tZQ%&Ơ}ݪ( mŇ--Cv (%@a|3gJM} OKi /)g ITDfOsKSXN~Lq`sٞEBp:|;ݽ~cǰUmW+N&isSzl0jnj0Y9#t>Hݿ! `oCX^aߒmӍIENDB`monster-masher-1.8.1/pixmaps/invisible-hero-up-24.png0000644000175000017500000000205010547745535017375 00000000000000PNG  IHDRw=gAMA asBIT|dIDATx_LSW?ZBrȟ6̍&郉 1΋`e$Č}E@7L rQGln{ K-{s|#tq{. )04R00΅+Ă<}H~~Y8t&vjkwʽNO+;[N4`qHUJ\y~ʗTOHHE Yݺݴ.cWj88|R&h4Pw x$K.,\d)r/N7~IٞY~n\/'NB&pYݜ[?OCjyˉx׼w6:iᑑ 8< Π]~ϊ,#R\cVWBPgFM㞖-zM|O׼koWW )@QBp+~-&Ōl/VunGoDoN$&^9q,),/\i)H#A.-\jurΕ*@w >Mii,<bђiHJM[vӴH+nŕ]H}XJA(/ V*JI"T,eMmخ{vlnjg|gfЮV ٤+>Gy~|a`jϔ:EStN9f1wy_m{UXg\V ̀ AR7ְn/T yqNMaF?9@`O0ET9A4Dވ>?ӷF-iuT]T~GGӣz,{VggMlt[FmBz 7y &Ti45DEij-]zWD2GpO}e} ^#>;; pʑ_UVWcT^@z1 R"b^w0'`W~zMOJj|O^$EZm&_/.1z:~8 #}'8k% Ck#m}Q3:lRe!puv{_r43j Bv3a4NH~Tp:Ϙ s,;ݿ j HD٩w < VE TP!QLQ0eߞ(&> ΅PA = ']$J"1)f6FP4z'(r $EYA:`pvYa9ĩ&SӝcWXv LM)" (3aA iS. 3 #]$hH L&ML ;ѷBoV?珜tF*&@R$Ur@${F C A0 7OgC?-S99\r^y } tHESJ|9vsPdb\zWKU{ׇmz-lj a֚փ{q|1}ɪVssd$GpP5:m33LD+j>MSbVoOn,)P}@ղA <o{xq%TMZ#nʃՃ3lےA`{ȻX1 aEĈ|Y!&~!XX:H䃶7vO307L& ҉k'|lUJ^-0!XsVB7ߌI1)ŪJֻhá?z饨5N.Ւ@b$4͖ɲZoszb{Y kܚ~oWޙ'u?ְYOOH[,{vs)7k!,anYcX#( ){{{ݽ,hgg}5TP2b#Y?fFE֚փ%eUMKKX/蝬3d0V: l{ٲ9'W9ݩAiGi31 a;`GD&I6VӬ226$omcҰ4au(N ^ژx`8k.=|//^-:=ϽЬBXF<~8qdhmtT.Άf͹+gESԞ &Ie |h`H*Q'8%YXpL\w<\2]ZҨ,gӘwzAr[Рk0YysR$x|ۖH%Gp `߰G]*$OٓDrO7rTNf Ip"\$SBTBĵkc7\7hθr-=Z~ (R^_SʈSIDȒgAxGqHcpm*2+kˣ Ekai"@ PbJXJ2Ku#043zu]@<ڱ[b>}<<`Tu@ psn0Ӭ nΝCi͹9zHyg2D2 &:>cEV%k=&BxC󈝱k_}-r]f_GN1S?)ݚw‚-`O MD}}\hNY*uwͤc29*ucAix}Ξ[W,>՞5{8A-S#(03UZWS]ܔ| y;=nĊIENDB`monster-masher-1.8.1/pixmaps/hero-gore-32.png0000644000175000017500000003610010547745535015725 00000000000000PNG  IHDR gAMA abKGD pHYsHHFk>;IDATxyegy}ޗ鞞 %0PJ( e"#agdB d$ fDp-$8P*fܞ{zzF$*J>|y=^zJ,mz}:UYʗ>pvsY>[蹽 _Y߫=Ι; ˌ\R9 `ŖUٵa?\,P/bRPhY=18aaBlb8V.8ގN=6, e 0DPL 3ŕ//; R\ "#R,*v4hDU'pN}~=v1u P -aP_՟핬O_i-zӬ66Lu^~ÿ>h,ޟ_j}_PY^CgR^Wݧۏ%\^ȃ/;Ή_|>eL Brw5[%/ʃ ⟒{uF.l#aXHp-˷O,~UpY7f\zY CYp(y] /o񾓿0.};f:9. ICh:M!1DZDo"/QkX.V?s37k?I43sY> bsصvFR &X(h8RԿ] uON%JmsvN]C@rKXE^ =tvnMbMC1iwEYJ 61"Pmo)'B}y=3h;mEŪǗEpc| ghF풨 @ݩ/|'q;5`vS.=+uiTNŮ 4HC+ L<џ}ߙҤ2y<Ť2ss8ai).<6 "Vv`cEͮ/.n/+č5?R,v(V[xǦBw( 5;'_5_zMχg`^ faZU\/^;cXhACU:(utby 8< /. BpX7o7P>sgJNЛRJq$} @tX!bc\GŮ`M_ʩ5"R\ [^][~CWhX=v]:ȌLtH lN9TbƔ2Uc# @Sƀ8-s"Ԯ\\b$ET MаkbDOM(P}/KQM~I. Qf jW_K1wߩg=9?  gi 6Q0}Y>Ms^jWT'~YþmҘX$ =,-%/g5s/W B$32Bv`  `i2+p4Fx34GsӉcy!Ai"#N'Wn>}ų::sqyM4OYr6S/z7\z{VEeYmkgʩND;mncTF:IyC3Q Iy36y\^a6ytSbB@VmLLd 6?S| Jzo FM)eJ)wsodTQq "#l h9-(7t;Y'p&؄( DZ$>&I0}s/2J͹;rHGrZh]Qi}fQYV`!%koξ0[o t.>tᡗ\ ICG5ACK940:nnCv۠0} `Xʩ N~g%Ee׫>M)Sy=:Gnz).Ci 83`>}4v&`gV_]{GEZFEEzPY[A)UBŪnQ yKAqpʣ7q4KDF<\If"GSk(p4qyWL@5=-"-jdPC1JL!Hq)؁ /0* B]9H]򜺧Cfd( 8R,֍u$$(P;(p}̭X/aƐ4y"#p00@MF@62|^5#jp\,EתbPĤ2R^ȗxǠ87RhkAiBb$T BV`aH@  v`k׺dinvrZPYku~zTG}c&1o4`6\"|1p\dDL'!1luƆ0LAdD@M`/Ctb"#hT rBv`"< ns| 61y8-?1FծbځX:Ѓ$#p`Pi "V`,EO GYs ) ӀP9*bUbDdnKa }>ԝ:n ,Bժ =0S}~:/˷R\lÐ [at(DFDM#PgQn;:\,ŀՀ.6Ƅ2]]"oU.uqJ - J068#oZ@iB4>eN!B6TN%Hi4NEߦw75f)/k)'pNΨ3رv.FX֗247`Y,vA?yJRA`>en"#b_bZo ͥs`)^R,tO&hX@@fdeU3ǎ<6[wG\ZSXN =$n; AS41Fi"gP1H1- l*6 t M|h6ͥK-`],EKbU0Laچ`:QkcЍ P$i.R{(`JS4rBk2 'p"@ €Ӏ*m bnc*1E3bk^ o4#?RfN P@ˍWK#%tr*l=/57i.Mm[*ZU ICC).صvJ͍ͧTMaĨ]6BoWX!VM @S4^P @AdDb4 y ~%+-e,z^ӉiRfĩv\^d9A7tQX0,Rxl扗@7ȟ*Vd='sKD4FOc؀q<5c #](w˳oͽ*ǨKR"/bU0 =4 VAOԑ\_D '", PwQzq;ǞIq[\ `B@Hi\>|0f#b"jW1Lzt&HxժMԝ:hƏ?:u2u*)4E4?:)R,nY>EKCdH[ =Gjn?( EmRx‹99/oIiMTxq}&D@AfeЈ*YȬ a^##ͧpӃ Mф yȬ]%LJP{}":(0BmRA! ˷@S؇_D oXt Oݮ Ð>eBM./(pkV (¤2 ߩ|ɩdFՇevA E8صvQ 41C4Hauc,nV_!lp4`6a|:ń2׼7GKl랃&jh9-\_Cn.<_P6y۱-"#bTA;+X5VMصv3($1 {:yXU Dai4ECf#/l6(Pu7tWgEZ@ `i#grjs c`HKXd,Ѕ(=i>#/*&"ĺ:o\΍iO]bHBiFZn oi&B0|#>82+_~M^{Wޒ{nbPʪქYwȌ PHsQG퀡b2+:I9;m/ )I!g&eF#*sC ƴHpQS+9Sr0< e,aBM0|oOIy 5Y'!ޅ.8{nE| He{bS ׿'ߡf]0B$(bpT&VdDT BV`A`숢( $V^_=&-($7*8D^cY_&Yb$0}^!ͧ1"4{:nm}]?E#O^Q)e I. b"C8NhmL*0, Y+(di.MӑR(wfY|6FO0<v`Cfeؾ b#hD#뱃h-+HIl ybs{0}?n,?tG}Q%\F MԐ2`i).MP 8eB>nxվ'*| ">*FQa KH Sa܎Ȍ ; F4֮4h%Us} xG! C$ B+ CA( u5T*h(8=G^#D7tIʱн|k! #y=$Z~u?Ą3 bp]Kl!^i崢(DQ:ťnvinBa|c QW~q9>n1vtm*bdFƮ /p!ЃFhT .뗑` yǪׇ9 ci>M:}qeCG|t` PH;$ aڎmҙ=`Dm \p4 dYӎRqEM ,q;T&!0^ꮵ /1|6I'P":(&#Vd/B & k^xHh}5=Nobӄʩ$](LZ(9h-aE ԋy> ¶5c {pX֗Qkh:MP5} . {KkB#1O+1F^cL#qw.ZDfp 2# l[h R,1y 'mn#ͥaxhq;89 b0 \bD.#Hsi,h;_":O$칽g){׊iKU!1!T*R\ A 7t<AȌL~'O]$vTfzuc\9(:ilӷ峵(rx4qU_]h9-R `SH{N`Tʩ0|E y phbP2@`B5xRv]T*AZNN?xbUNl7 rmmP \A(S]mYk"ťPk'@a?r4tkuXqeY>š0 D n }y+׏H6K0< B`Mo\aaն,OP&PkDHCQzn 'v`/t.v-,9"'g˷jD`iܣ!Q{^/h$/E ؠ86hЄ hmt0D| UXOGːr`XzXc PQ\Rw*ߩ[wf omH#`h&۸4n}& T ƕqS_:B)"(iKu/ؾ$Ā8˷mm}P$^6FlhBѓ{i ("8GsPX%=l  y%gaQ |46OrI~d 2B2!rB4Eߘ7OFѵssL o%!yH9 !q#ه_zSͧ8 7ެ}#KG`HPY).,EݩGAF!Hx7pi&2|5T5%UDŽ2e}9PwVFB"mɦ Pp4ЉԢNoGUonAQā(Q?W5xL3&$9xcXFŮ (]gR6>#qneoɽe5/䏕%PBeSs  gP b!0B$fs{b)"-bAi@fd>䱈"iK((,bHʩPGb.Nh_dFH97anNb1Q* l)g 4A# C1>}'uc@`BN%Ⲛd4{yO4_m-Bx cZn &A@u? b;Ѕ8@ATQ X5Vx >{n[LDͮ$3(6v&Ɉq{h9-4IQcj26'p_ݏ¡$ٷN:`QV$ʣX"LY/!@۷!04&h&fϋX >$F¶ 084[c-H#0}t|Y~3OsiX2|Ûs1<͟KCb#jsODP+n-l,ʝ2Vg tY b0$Ž5](@ivuKb$ԝzTGv1&zvP$8}{Hq)D <8wݛwݓmMs"1Wp]:4F!cXĿ=R8[>z}>uSD iFXQ(fTň4SgXtԎz]"B[ <-' BHq)leV&-nב峠q!$N(2|Nn<')Wi 64QuN$nq0<8 tb^uM[vqqditICqdy~p|&1 yuN; mAfe"0)ŊGq`A8Sj,=il4c rvv`G*Biʩ68aQ{=alDY2g'oR9cTn] 'pk"D]kz"M@-Gs@"Uwk_ڂcTNŎEW"ť1>TNKvÌpAq,߱v"qOjY>Kf l:M$$Vƴg#`D( rZt_G8U}460 tО=i ;]\ZUCh|8*Bv /%5&fhDs]:t.V+HE=t$55()5Q#*+`&|MX7 5gh:M\]$4fݮ#c]@(5˷.DF$,EŎvhamZ۷I_ǚBmcAmpNJbQB{ 3f(i.}*"E=` 2+~c@@.ZEF\'pNz]n).E.É* (@S4q" π(cǯYzJ>N#t nE,ߊh2#HkNw]޳qZnCtL'|Y_.3UZ3  \JAEǂ9 AQ(@E:avo-\],K08\`hGq 9Q{B˷H1ӉiW@,8<q*jE/;3oӀ=B; $3=q|[`(EM 1^_"(1L~t4*pC#\ 'Xݸffא{}_),Ţvq;8;5l?q43ދ1sWؾ +>fFkC;϶߶v`v@uB8qv65`F7&&> /Uc*V+ZQm4dVƀ8@p'p峐hZn/~# 1{cIfaiőT*DA߰<4&TT U>VժԝDG?C݉򖹵}q;>ۂ yʣ0|DFĆ&DŽЃ[z]TJѳ:l"#F*>]K8=w_OX|ADJpCL#ڱv"jfc*pQN86+VyתvfViFpH+j8ޓ$in(tbg[Ͼ@FAq}i}ZnU UL>ǙRm-jQ(.*Xko>xGL'V`D\fsi2XeURz z".%IbwK_aY7p,@$UixbpY BeUd V+PX%GEBS;sA_U "qа4L 6bd BK%v]h}ekHrQy>BVnWhM1ؾMX.1%t./!r'N, S?5s<,1RbU'O=7G~I.Yvۤ"Z1hnؤ L4l(w˨ZՅ8<( ji>]n[hV(]^7#śف(`9-aiKHCy!_I3pYl8$ny8}1Z?<_ؿxyL*Ӊil[kvd,}|ë*ƕH_h;ˏ3(el)O'8na$-q䏛Ŝ}/^"__z5g!EyнODex^ȓ uP$% BD0*V `܂ʪ/ ߘQ']K 0@M@#JLfYf9!Gh>nE-Z. ̛AOcTE dƈĪ +5Y%DHF퍭>\>1F-gg&8|`,h(C"C1d*CeoMЏ?Z}uv~s7ߵc(i.MJCQ( Acٸ*ؗG w^CCH%JdZ,& 2"N2$$Xh ԝ:BU8s/p7n1'&#<0|`)!jͮo*qG^i /䣗Eq Y{ ?t[ߺjSʦ뺯߆@Q, "n5nŌ_X7]ztaLM<)bbUj]{z|?K Ӌo˿7t~t0}sO>;НpXi;iO|]ڗط7 H@ 2o bقC~?+s״_{V1ZN?!1F$l{EFDծbWH6tbIx[m%M&\mMZN [oySMgЯz7in*-uZdS>o<|jt:n~ @D#DH"d,\k)i rc{ѹU)HE,.xW6~Z։[)b]xnFIzw& +b~-k/>_S7ҍO—xY ,Ɍ|uos{_i^+E .׌5ۮ&rŸ^kC;YDr 0EF ISEYd/{v'}b^]?u,#zh/<M'\ce( y>Rܗ_ٵS/65Z&')0 `Xƹ9YZNU}ucSfS)tNq]Ǯ[ػxWVK=).5{P=bq;PX%rnH Bk: $FBͮa܄XWO8ң׼['nQgTV-aVUK#BQpD =P di>7G_D/ ).!q!Bbqd _lEynt0a@m[ 4Eʿ.`G_~f0Lb܎F%:TVy+k[/>p̝%gN@eU\_a>Qᩜ 'pJ/}ɗ5>_04-7{p N"#^sε|wUDt0<*bX_o%z̝ ߘc(UznKSPJf a)V``/{u <,gb^a7HOQ؆]/aP( 1R) <|v'^굿 zo?X-}B4fb <46WM+4_2} ~Y7nfG\>7=WKqҎUv/> vu'oPă Vt6y_JLi). PнCR7/Q-zX/̹ϼ8Q:pH='p"SHq)l}n.}U,?$sl2PY1wN=|W=t|&~yͅթB?_vNcjv m׭S_[+}PJL(n4mz^ilBf/| r4w}s f椸yv ~m\/W?ws4}۾Rq)Y{6^G<ʪڄ2Az/ 8xU4&BaDY9H_ٛ_e^^[zw߾j^#^iPL(m>g='ߖ[mè4]ک?w#_ul4<n " o;m؁ 7p..x՞fG[?^/U j^1Qn߽,M'(77g;gq;|??0L%$EFO?YxCuoMcdQ,s Nܲu@ ~caiMYp:&={?8:x>uS4>Rs4Ec]ʗ^k}ʪsl2#Ǒ雧?w?8#x%7<2Wk=+>ϵgQRu6[IENDB`monster-masher-1.8.1/pixmaps/hero-gore-24.png0000644000175000017500000002310010547745535015722 00000000000000PNG  IHDREgAMA abKGD pHYsHHFk>%IDATx|i^gy;)ӧA螎A*~Oŧ}G\BMrITJ4 sBO9)_& 8i}T*CV}mHRFۨZUxr)kv}qc|Ū;3_˛wͪ/5^J?oO+2{33:W}_k/Zz՚];Çxsys?7Sb/JV .ӂXWfl.sG}ذS< =bB*l56w;g4}S[Z>?0e6TQEŪ6Y˳}CN;h:ͅ?[szg2|Fm;mؾ 'p@AQw?OǛק'>a? ZN .˷J#soe/|dN8aܚxxPT jv UZbS? ;|KYl]{ ,e#U˳PwsM9w0~p!@ O~lFm,,iKs'Ν/qO}bz<6>#=(%KXh-vJ?pyƧՆ8mlBtyo|=Q%F:ZHg`<6Em a0,cU[Eid`XJƹ8 !32%dF陨TĮ sl}M }f<6Am4Ѱp2#4`h8 /Y㏾ vdzO!;ZN q .q4 ܽ{9qz0qx#!0vUsW{` p1+dW ȈXױc,|(]T0<jix뷷tb?Hp 8=Ĺ8$F`۷!Po+h:+o FwM'36+"gilb@<ÿ~ޢjS=bϨ*)$d==y/_>Sũ[\16V0= g.85w 7en*|k^{3#}H'a%+dSoa^ <$n NrI()?5|y卾EFT5WCK h!i%>~X'pT*4#?h=O/6^[#ʃOJ Y2\8aXFݮcY_y:#'Gi,eG!G_GB#v"#PB!Pm*Ͻy1u<6~b">q˘2V3i5`7pB2<pweu;aL[=<]frCŪ 6 bLSY>' T0,aS .Mcs eiw/z}}8>$!PX lF; *{KCWstTG9ؾ6&b?(46r[ H0<m]lŪf 0U'!rZ 9{}zpρ{f9ԝd؃D,Ǻ۷`L[xoJ߯喝ovSb'>9;,H Y2|^O lWKYTF4T@+hA*G؋Bne?4€40QocD%!2#9˳YD 3cch٭0*l߆HO}Bhժ*TPxہHE4&bl RH]CG ӥ0<{c{!4/ U|>|lg"%>VU `~o(CjW7`Ŝö=ksBNe ](1w`ybl L4 vEUǔbOm~TJTO)cXҖmnLSO]r<{=HrIt{.6 T ({3'vа{b 'X9!7)R!T*a8}0vBP*p7\XlӰm( %r[P|dGȬ\ y}XW!328ʁ%lhЬ0ǸLDKa'pP(].)?2(Qcc0< MV%nBa$$tWǰ2 ۷TA*(Y%6M]2 ܜ!a @KCPԝzmt*صvQk89>;}}\nb@ 9âwTŮ  0]=LRZN aXJa<>^TY>uc%i> 02##0,jWݬtPXE)sS]wN&VcQu@@F ]dD$$8Atx#<4F fp0qPqQ BYt(۷ *4Oj"Aԝ:LτH !{զӼv37rBn \d,v16Ŗ` 3!0!QLrI;4Fݮ \T hݮȰ757nD*Fmlh:M,vKk4O#w|%Љ hyPhÇHU=d~XFQ 욻7"mmƑS##D* !1 HEi%:nWҖ5ӗiVf U#jWva-Ne Ca䄰@s}(>e Xl "#BdDT*\q. (Y%No#'ps :nu}BWGTQ=jn`Ī% C 9\ zT8%2$((|g"/#U~~c,6 c#[N?-Ob^E OZU24W*g<8*Q< ;S2+vY#kB|*z(ytOǶ]Œsoz܉ˌ:n-t|IKUF *> Hp| L߄QF&0;',~n< ^a F@M@b$$DFDGNR0Aݮ<*{ ,a1S(&hF T4wAA!Re 3'E"~U:YB* d,Ɣ1X|>݀Qn` ;X֖!RpdY0oXʆЙshȶX083#"GA"t_8󅓔|7u ,|qT]A\*`ā$FQuHm㷩?i8 arP5܋O7w`z&bl :t0<>]s/p`6*Vz,CHh:M=uPB6,-0AibU"$%04 ~|-c *,Bi!5} ]Zrm?zI}Vpй'p/=bζϢdpugdPp#Zn q(#T*vubU0D*C#/32FBo\lOyEmKsg|iC7*lKV)A.Wr[0<UEm5]G /T r} | aB#/(,Bծ"@?a6Vy%ަ(rcKjW!1|HiX'pB6#p#~>ͧaTYo"3w vnQ-4@l["5,Ã{") - #jU2n=OGQk2cc}+ ľq.H)(| aKx \幕!y-g"űG%14/t.//7@ {_ݿw޽Sf?+[e0 @dq?끇%m R?JV Jk.im 3tPEBq)p"R#%tXV:"˔X,jW|_b  2`]aM)l[5dl@fdrP\F#.F@^ȃ J(\"P4ȈG8Ĺ8|١柯>s/Gpgk&TMa0;4&lbllt}-Jb$|My8)al%[DFD{=blaX{wY"50( "%:;Bծ-THh]7gpR)W.)nXa&LrIPBtCCRE; <v16UP#"o ^n\UH3SBE egD&4W*=>*V+ DF|rX.J@AK"g`xL2wa`7@3qupj?DU}U@7p |$TP0} dVƎ? jAb$  ]sq.*#ess{@ Hխ^x?^㙣yalu&KY4&,€4i^EftX, <)cGW/YӞ+Y09!?kdF4:KXEJ(F;Pn׻"$>OMi螎-c+5$2|~wGGŪ+tXW02x_R襸4!$2ӌ"~/6jWCiAfCJp (ѥI.yk]p}{=h Zn $2nf oE Z WWH)mb4Fi]8>P̫U@i.$bӆjxz$FO46CɷP2Ku0x}Y> 7ptW 9Xai-_Ml[s]\S> eu}=*^D*"v($ h9-ECaX<:t>gf:ngBBDnaT{[4WâNy!a\"R| 6k*KY5'@@q;1wJtd ,ߊ ȠXv`)^tb0kgM|k‹E!yCDF,F>V ⦱ pЕἬ$LUxG Uizmߞ?9®@i}LN;gHQ<ccPя_o;_>Ӝ] 2bFemT7{RB>ܫWO횻LL‡; E"@@x)YHj@U:.sJhAwHmsEI. /0("B5 @aTt@r?Ȫ:>FQHhmL&``@mh<;h Fl.X4F=8:n6ζς! v̝ʩmA̷ela@iԱilbHi:J54WCi`:I/vQ.x 4v"#A<X)8ׇ%, πX֖yZE2U 1$0*V%!.b^)q3fϷcD*#gt$\Hoq4'rZQD,/q8@AKaY["})ŧ P/2r[7V*rB. QMݩ-%misO._r(yHR|* e`xuvۨ95Oꟾ;;>yM_8k?+ɕ];Y֍'EF|3ߔjI}1K_zJT[kڿO? >l4 LX~Q4Wߵvg?V8މs'N}{sݿ+$ 0QLj2kFŠ\幹n. ʃJAJ}O]~Po,%m>/r7!y(,Gbݰ9As5l[=q;[Җ7/=%ϗ`xYa3HөX̕V{VQæ ?#\? N9!/P~W.{𡇧)Yh:ͲwBw4 pkV/}>;ly2]Oy4ZN+/%m/L/3 aq;GnjUQw3WW} á˧]a7f߹~d#̰<JV r`8R̈<v H8:;OY/?9"!eT.6F)ʃ0}6F8rK>vcۓ~L&&#ѫd !U,1R*~XaW=Vm7fn,~5}mN|Ev kܕE0>8儜/C4,vil>qቫ>?vWGݥkszծ;n}5n9,U}] P3S{=][>}wMt.7ilΞ8wOl|&g %Tʛ{𡇧\i.SٵrM>p_ZN|}n-ѽGg{}aQU^jt|b*vTs?~˻veuȌv}Kb/~'>3/v{VM\{g N=7H Qۮ*>)_]Wmop$G^/:&('sBe>W~nuM'T]Bv%;q6g^&ㅺ]x'.<_ӜG e:wY%׏l1'frBd//_ryOT!'q6>?=߽2UB~ʏkZ1Nsm2jIENDB`monster-masher-1.8.1/pixmaps/block-32.png0000644000175000017500000000526110547745535015134 00000000000000PNG  IHDR szzgAMA asBIT|d XIDATxuɪIVws}JMez77`}TB"(HVYyn6ZB(bb?|ݬ_}!p."&ˋ[!MU۶n]wS;_>> )Rݞϧw/?͛JsTuMJ1EF3CߣAyɉ Bh~`۾>]uIuSFJeSc=y,kRdwq8L$U1ccQ%i?'E׏fQ? ~&3 )!&j3sÞkƎ.Ɍ`a ,J.8<X-j`w_3)7?#S=SC* ݎcz:ǹYo.Ɓ˫+!r ߽CkŲ)q3Ϟc%x,W$ h 0'1 ş-Q,ɍ"zfgbRXmYYl9!FxusZdZ3dZaђ)I!ȹgǢ.e^^l$YК=eEI ikR5SGI֫qܿ.) e#U]ݾnV8hێ`'$B8g.r<+~OѲ^ovtxivÓ==YHL֢MvLJeB#)5J |,j~ղ!3 Id̳ 3-EbGw'Lʉ1"* K@)!0> @)0*Qifs?HIŊ<)Xb!`'y8qnO24 À9 CJ ;<[h ENh%D )Y.*Ӂt`4wUֆifj E\N{ekg]mK<1&cєܼ$4)T||dYP7Kza<˿O˷?\YHG\3NEBimϩ=cC!AHEa !r>wDa{<=''o|TMSxۿjsa&wknGv*kN<7yZ;ߦJ|>̑>er"S:IENDB`monster-masher-1.8.1/pixmaps/block-24.png0000644000175000017500000000310510547745535015130 00000000000000PNG  IHDRw=gAMA asBIT|dIDATxM9eWm=R)1C@2H"FH 9Ld9#w{zwlj J*?z<8{)EѦJ)0^N_u8Vk!Lu7{Ϳ_)%OVg)=>fRHŜfKQX WRV3ĔJpȩ?b:A3[1+*f$exp5gG˄ģ@i"Z2-)+b h"PZEaV ,=) 98MR+)AB1Ɛb&gX_!{Pq?xB&YV; gG#`TlN(%r\J}&Y,ϸ2 #H)?Zadrt]G"p bVҏb`8  Eb$Y(, +vU0GaKfkUt]퉡7goﶄd8GL@wjidMSqml}́iǧ#YV\<E]?9! mK {gHRҶj=w$dO\;-Br@(RA@JEUUV esBOڸON];(%1Fiq0NFT0` `daZfi&W@Hq|_n1nBx<;$ >Ϧn߽ /+%J)t2X@u=J[ do_5yAp#>IENDB`monster-masher-1.8.1/pixmaps/wall-32.png0000644000175000017500000000606010547745535014777 00000000000000PNG  IHDR szzgAMA asBIT|d IDATxra Ev%+$L~W_OGw:NLԲdM@vO4}N؆+Y[*;"vrv5B@ ש=`,ruAw4HrX)|כzJ%n7MFOENBќR!$IbKE ]H~ &%Nz#:Om\-2^"*"s, 0ZI̥U]_!D-9R%V+e*m я<K(X`6: 9v#̦E]fn/l\k`"՜[j3|jkFζ|1<޲Y($v)$fo/xJ_7n5[,!1_dDo3[z ٮNLƛWAJZ2~xoVMzSJLB"›\9˪j`UMKnUb"Zq&TgL$=ϑ.?6+|^9#) qٝb:uL$ZNlL&ha%4Į_E g1vͦ\D % %ƉVn9N>ӟ-2o.LJ_A9y I8~ ; o6*:?=Co5tWȇ|,|ȃ>HO<' `n`fd_?bt-65 FN:Z)lWHd# (rOIQ eO{fQ[Nu%eX(aŒIVAHHuzY@ZΙN|/?K$ސӏ3w"TB c$Z/a*Q`C BU<ΔG+i/HS?<, x1=k)[c.])c`H0ro:'!Ɲ4hjx 2|@ݲl%i ) ]Y3M4ۄFDzd2HB,$ޮ{"o(9bit'1|NS:pj裷LYAI% eӬ2^)|>r~a&ۇ:O8,*Q刢F~kkU1Ko΍ uܥ]/OxtE}hf1Z ':nqC*?uosL2HtH"woj5_k}]AcO?яB;gQSTI1OS)ga Y__eb 0ec-J]1͋N& ^GS%Ҵus^u^Y;\Ͽ? 98=`ss""jC8xw/bd VCc2x#7 霎I>j]eg_yr:mѐ '2yHKxU1)RԙL#n޽$r fUdZ.Y)oԹ:riVu.W *%D*$]kҹ`:I}+W t:.vI勃$CT%bpδc |ؒyݯа*ܿF^+!2NONh6+GŚEoT^{fԥ֨`:o?u@yCD.NOgFO|Z+2dF) 9Wcޞ_`: f`gg [yoѱ:[u9p//^[g'=R7"eqjq>8GsԷ*/Dy Ov8OhٔogTRnHU+OdK65ZF;g>ZRUD)Ɛ4W N08.LGZkuSZJcf28 )+&$ ok5^\(rIe4XObXEnHy1=$nKHYwLC.b\I@K  `6t9z>Cɣw6<$ӯeȋ`81%QR>w7NӶxC{c _v4?uf=O}O3LSXc\bJG RNwN ϛ,8IENDB`monster-masher-1.8.1/pixmaps/wall-24.png0000644000175000017500000000344410547745535015003 00000000000000PNG  IHDRw=gAMA asBIT|dIDATx%nۆ")$tΎ:N']67À݀UOA]±b^5qDSy18f2W_js Y㓣L#H^7!U@GN݃6vj>#F۠4X8 驘o4Id@\w1QKnyen,577.2Fo_5 XWdHlrL$2<4nCpIɠzs/ O%Askms+Of,]h"9)ѱi7+] d_fMYѤ II|ڜZ'-,w}^nB!#b|!!dv?S8>xrv:$7OQ2J:m> tFhЪ'"|Njq^ ?N8#2'=j7J jMQDRy+gJ#ajn7O>o^Ui7Bj}T)ϣFaDzbY~!"?t" s~B1sTor=RNt*>9hxs\MD$ O?^Lp˫ $Y6%_||,:v!iI,X&`NŢzThO%MH\Ϲ[ PKa/x!8f: XoEA&mhm)E :JdK*?dȹ} %jٯ(b@ܮ|%tzC5vݺd@>Sxlfe"\|p!_PUJM6VAHfq=E(fˢ(j łAx׋kO䆨y}z*q=Y\z)'8@Jo?l;[hrwYE <*U7 ,9O&n03HSsu$|ޝJQoE[!VD™ 'ӄ$'>钚*[;C$~d4Ըs="/Ax|+_vdiQ輹[y=rM(,GPtE>nYy{ѣf qE^  Wz]IENDB`monster-masher-1.8.1/pixmaps/monster-wall-32.png0000644000175000017500000000431710547745535016467 00000000000000PNG  IHDR szzgAMA asBIT|dvIDATx=M$m?U=ci6fɥ1u : FZS)J2R#vUVf"*<|AY]WDɵS@ǭN Msd(2fVn>*"n~Ao~7M6fFDPT!!"3#=Т*N&x2Q;*JD"* w U?N(,B*BHQ$2݃i&" H A*f?πz^V;w}c-Yyp) }2=A=)B R hq]L>[x^1aZ _ΤJAҨENj%3Iɛ&i1-#;42ӻc"lcG2[rS] ¶ujt<4aY}`0z`ܒCh+@5E(,L5'z%iW;* d<; ,KeR_-%HgY+2TF“l wZYj6:Z+k)EٲxlIdޔ&p}h 7aj!* Q}:@| eAC!b͔y1>A'AһSPLR^4X 2MN]U+"t?:PDNvp| YW NZ&d&4x}0B,gvx$Z;TZ 6Ղ=vWEǽ!#ԐT(:O~:Q1s1:(xM6S@*I^MT"D7@#sYO βȄ4M%-xT-|{ ؼ#(! HcIBv˙~`LZs >>PRE\gē =ݙV@U։C )'").t L ZYMP$; h*9c8i|CТ()G>}g !1{Pmp6FsΧ) _pʩ*)N),6CXrlLY2B{v.fFI+ӉꂕB2F,q")~xoQŹrB b Nry`mk ܎};HZND$-"psB'"$aS]A/\"_#Q.H*뺰̕Z˺Gr Sep*gR*~}p!21Q2wv0UG e.t/1Tx]+N#<:,t B &u(*D$/󌼂B;?P3A])ԢDF$( *} "!k|Qz措c^XjqUEF4"/+~c%Fe!28FNzQ"q=69יޟgG5iy砱<`-/21z|>= e)H萉na^&fqu:ydF& EA{ɠ'V@d ZuF2\g.l$)ºΨ "=Wč<`)ƈ"!L BR'l\8D&d$ޘkҨV9Kضt4T Rkyv)F,p9'FIg;u.ԷiFbm:D ܎u}2Q0c&*uТFI^f+c 4)LVHIF$GgO>~V+'bU+kY/$ǿ|oG?~XApᕶ5>!쨭Ŝh~ 톨c u=@.xܝAr|z)ZPX+wzY$A L=㳉~@gKF"Og/IENDB`monster-masher-1.8.1/pixmaps/freeze-box-32.png0000644000175000017500000000314410547745535016106 00000000000000PNG  IHDR szzgAMA asBIT|d IDATxo\?H]m`BjmJJQ%R?ڏ8<%eR\TH)vZ }KIȻN/N7=}^Ctgf~9sfFxvfnq*^/`~|JY`mvwwPpZ G1y@t{o-T5$Օ21o[8  <޾~P.)KS&oYUS o+k-_./ T `,?U@ظ5dL\PIXm1`^.H$ZPUxlzQ:;FGOd vaæ|fW /8hPضr tT*ϯQ(dG#I}bYt!EUq*Su|9廔˥<0PjEh ɵG4k=J8 V: Comzic2$}ˆh`f\ zAmw]Օ0_>K۶y8dj^ju=¥^241 #m_Mjn ʃꦾ ˲,裏ҙzVpqb \QۃlPEO?:iZ; [: xK?!MVQ,ZЭJ7[0vT0"ӰhUa??/q. 흅h4V0TF_}eY`V7]| axe%*eZDRi70{ж5 bASy?緇hV+?Y5 /' ߤ h ^rW~nGLSr ܸ>H_䀵mp~Kr~Z [tNUO e,x\.rO>BGǑ^i5/'@lqϿV+IO9`ׯdMgϞTJEvwBUFzĊ5UjL@ݝrL:}}}RiU۰] xPGU8zE`{{sduuJ}ne@f97dDIO66*==$}[']2'/螯zS)+mmsH#\סXܥPʊW^y e l33RccϥӁ ٓ'TUwɓó#7r)& IENDB`monster-masher-1.8.1/pixmaps/freeze-box-24.png0000644000175000017500000000217410547745535016111 00000000000000PNG  IHDRw=gAMA asBIT|d#IDATxogk;v8`J)&J!qԪjJD#_g8POCTEU$jBl> aw1Jyggy^.\1T__7O^pC净Lf`ԩ/ވ0ݻƽ@ *p3?0t6JskA|(rJ|vCjRBlv .^9bvNիށ_Vɼqbn@lvO pþR0QERHeރmUEH\L$v)3~n"ƍdDUp8Rp4m6alB۶ogj0TɀM*58{wiK>\Dy>DT5766`k*}b>p|"!BMmEia-,( SRf VU"ioxgI۶r) #,?`ۻ!i/u l#.m[iZT*wڂ՟! `ǎ]g?ɔѽ,w-::HU,PGgyZ]JàQ'k2/-m<a3*zM~bgLExaqA6Zۦ3½m޿(/'>u7}kr6V{xy:077v#iI[j~do $ro,V`4 EdVoU"k+tu۷gjIOn`ZU.K7lP>!{f߾^KdSS׿F,PkԗƮ7*J$Uټy|*58DOm\qlݶ^S^ə9'ۺ5QB(h郶ӔJhbgcI ]BX@bĈ&uѲ;4F"$( ZڀTZ-2L>9C h?~}{΁{C܉쐫,GP Y&/ k )HxUebR ##n=bhgɯL@v#]ŰXY`0L"pzoeCLa<< HF[Ҭck) L| Ի6=/t1}HG/{]vӑhsV%m`kFp4[+'Jq49Lْ})me3>~YX8N Dr@L1Vm! &S^;r)O *۵V Cz ]@%x!d(Ck(9F5ٺ ,)7I@!xLӖ䕡+O U}n ݼNUa 8A}]S"))%Fw\Wאoh*:>}nzb"?A"l0#LNC35{Pi/MJJ$4i4:T莾, H) ^q{xK|/.6p.v  H#+Rţ@D?§C6$pb@$]3Ko*`H1+iY9`XU <*U ~ժ39` qH* ܼKkS+*68ӌSEl&(bFGNIǰX445 i r6]02u9|^ ]p{܉\)GS7mh g\h*B+Ԋ;phwNfSޗ}lzNw_p'B8^ݣQk@$ƒA.,:hajfE"HڍyCɴ|B$.aX*@(0kp .p ܼ:YCrbTRUjRzR-RPPWۦ !Iόa]-l۽,_~<ģg2BJ ?m(8.Lc4Rm/D'L_K}EяQE1MXͽyKG@Vmt *O?Ζ([}CUmotvv+Z7ߔǶ'm?P.>Mzgi16Wh2*@4B!aȾt{@Qܪsg6|ߖݕuj4uI&;ٵ2ʊF!QYZDs^]BIH= `f]W;:S=Hi E"112"<,'ɤp*twC" GW$jrDW KK. R2J"7n{86xmL,ƪUNT**$6tt/e,ܻii_^ӄ'0H0ޭJ NP)|_# x9ƔsD.aݻi@8 A)!iXXj5poyPU( Ek\0.c @8CѴ @>$(૯;pvpyū44&c`tT.,'qhk .e,>텮 |[Z_ `?5ۿ<1`nw(l×_X,8e6K>0;Z[1 n Jnk lC!ss/~7G }j` ||$ e2OyRJ I߁?^swaIzC3o?IENDB`monster-masher-1.8.1/pixmaps/power-up-freeze-24.png0000644000175000017500000000205610547745535017076 00000000000000PNG  IHDRw=gAMA asBIT|dIDATxOTWse|2 ŒA iXi&I jv]J1ʪ wIĴ$E7&hk4T wfs̹ b*iWou>_[Hi_5Dž R%^jܹo=JU?Feo`Ђ|$^{KompڣTn0>|?e~yǚrO̻fyeuqr=KaI `j=LAO׍^]|dDyw]ZaVWm@ZFGJ }5vMM.'[ko;R)ܴ4s=)RHq4tt$r+sÇ_թrٹy%H4*:J%hlٖ"B%XW-KR.wtuգ&At.k뤄'Ojknpٳ"mxe }jD uPzFPFbUf ?U<,lxh.ljV[纺" ]GxͲޗ\R)9U,~0 fvh852"&_18sFwF&cRj; ge=hk#IKz <ѪihbeVkzݒJ:^'! /H RAQϗ^x̺&|3WSS;udqyX c׮h++zUQ{W]&%Q@QL6DZTHO"-Ȑrd O?}Nb \ $ ݍmƲχ#Gz{+hmyB8JĹqOqK%mmh33c5FrB-!Nxy,Ew4 \Le0Mx # CAJ4߇pgq\Hw 0&4,,@<+X^v~U\B!PkW2A @.*8CӣiA0l6/;pvJ%6@<8btt;… ǁRb1^DDU)+` ybdd@(׭["9?H-gvB_|n|e[[,,x UYA6kl`pF+x`m(;7< +Wx|>(e/N%Dzohk 2D֭Yps>OGsz:qIENDB`monster-masher-1.8.1/pixmaps/power-up-explode-24.png0000644000175000017500000000205610547745535017256 00000000000000PNG  IHDRw=gAMA asBIT|dIDATxOTWse|2 ŒA iXi&Im ta\ +.&mӒFКSga w9t14iU[Pp !@ȡTPYZ*zΗ@ )Fbm,V#˙̍!Jܻ5])a U`o9LU{}7MKNg! RB `&tF8l ]XtOؙ- M麟 Z l]kBR d[(t8yuMjxx@]:gpZeR#eZky%` A4Ivw[gs2ڵSNrWx^WDѨ 54TP.57rEbJ %nu}}=o>h,gll_]/zz0c1da۶T*4ǡMcƆR4ݺ[HٯL fg4a~`iXYfA)( |lVWa~3IM>=@$Rr硫 v*(AFOB&SJ}R“'Z[!Ίg37i[ׁƽ{DEuPȢVR(5#/]hmº.^ƲZe7iãGB]@JH Lg~+#lӎ ԙ3q::&lSӫA g-;tv鉫BÇ3Z<*FGOg'bb"?xI9}E.W*P,-(TK|R?o<00pbf&MWLv`Y_{!>>jk| SSF*W/nȩFʕW*(nIENDB`monster-masher-1.8.1/pixmaps/levitation-32.png0000644000175000017500000002350310547745535016217 00000000000000PNG  IHDR gAMA abKGD pHYsHHFk>&IDATx]w@T?{,*EDlX`Qco)є/Ic55F[lx?TXbg3g̹g93 Bǿ r "| u}ǍPuw)@ba/ڷ !b Up8 l&ӑH;u)^tHPL +HL?kl|灞4ϹO)ϼSē1c>cZ6[͞pGBKy F ON`&NM:GJS\bYvXN͟F,S]uDF` Ieb2WSӆuSe#(`ibKӧ`0Vy|_3wBt:Ai<|X5fc鸥( 08E(#O&pF`W7M.wqxErtG&K7[B]]ߝ-[MEN,~-(Ew]Pyxo822]`wzeGv|Tv:ڗ}W=^z Ēɖ=ϟL7VY_ `Bnȋ?cvnoDb˃+Xؽ}(`XPQ>,T*(<XT>-p jVv{Cn6;`dLXN9˩r i,{|^Md֮` Eg2&h[vw4E*H ir$%mK&=={_Q9s'd"ќLlٲp8h3{]KD",5]p<ҰZjb`0p\`80_f'}V `@zKJ3q8څ,Ir'h904*ZpsjǛC`BbAb >A|eRt1?5Dyx< 9 t^ /." h0h (KyN-~gzo_kV܂jwP*%d+hxna6L,u_Zh(rƞv6;be+⻪h4L&,$ 3G f?.b/LNnb9nd#9HItzZXr֗fs}M]H .LNxOϞM\YYc#  > y] FQ`@^OL|A)1Sr+#A326Nr &쫽p r?ѐ bx6׆q8:)ȗVΥK{h<4E8{[IdfơW(HAOtl& GCہKflzz*\~?=iN*2T>#*5,̞I&KaQpN%)/_t|3~VH$hDQ}KVDsgϖ'V:`p8@O_`0 fVb$RVNζu~c4z$>CwGt L +lfqD G=RX,Νү&s,%6v}&^:v7#cK!5w1/>U߯%bwf2ǰI$ Bpʌbv[_.C7n쬩YUmA*S@ U0Y*FVrۯPX߻@;0C+W>i\~@b'f% [Zíڮ\~ɱ8 / }$չsFJO"YDJ{Mo̟ ̰L^9@s/fLs4s#v8#O,xXO"EUt޳ZF{2De;7žJyő%*ꁕ 6h_wX*]*8RԉJs h/>o8,(  7#@0#Y^},!Gy` B" QQfL<| ؾC$‚S]$!]dmAa Lsbco\~75UǎM\62ܤ$2pvxVPq6+-0ħ^@ ;:>F&Gn\B0hFL#511t{hvUUEbDr2tt|a0箬:)dfTM&a' rjvV2l>9dQ{:dzf?z1%%=Zv / y,q /`}׮Qˡᰟg0TqnR`Zۭ>liHgKKKHXii)t={A&[ӓ\nQf4*_C,G$DžO+B"Wp"~^fX,Q#> 5׎x8M}r]ff~5OxbU*ֳL9ٞ @ťT>W(LIyI$ T͏-RX fuuzwZS^0-P_BnAv~M*]Y8]PAW_%_XbBtsFRƑTtBݘk^gtb9]>MU](]P y2r[8 cwJ_;e/=MH> ,o2`{uҥ&h~b+be ?~Ǜ\`0@݉Yݑ`Uk\+Nhv|$ϟ .QBQqj==ozᡐ5`0xPXo6W2;\(,+%v*cbb4?}T%H$j=sz6#dfEX,N*~]X. W>wA\ VuכǴOK=791&LfWj ?9:&:=bI1703}z]~`{s4yH$ɕb8j@<,VC$(0pxnnDrwq8jFK`X9|#-b9snRvΫd0Ё|]Vj*5ZfN 0| .EC))USf1)٪Fρiwb.(Di&3-++ϓ)&Ш+/R0%mD^?}DM`i8}ßh)nu 5ħ&WH$w-W~?LUEEUm}d:r:\bp8Po1 Z|CV!9yCZ΄dۈ^v䈼d:~ Tg? >L|TH t[#N^U*]X~_ɓcH'4 NO 3|KNL$,[CK[磢op rDeQQhmm $HbڴN1[tj^kmVzƇF-.ϟZb1)"L&I8yr(J$w͉٠@[@0.]zx[N4.Hqڴ%K%&FU`&DJ.)Y^: H1?$%;R *1WƎ_}lj 'Qo7pGJ 7?@luee|8G$3f<7iRx4Z&FM ~bc@0sIގD7cɇQS# C[dyR嬬od=`nwų@uF `ݍ*U2Y1lv^DY?x"77ps5<^3$l>:l*U@)9 /.`VUW/Pj7]r GL)0Dl H$iLǥlʕok#zz~|MH[,'۟(cUoav[4Dk *Ur=cXQPms[(*.!7oFBw(2ي|T$*Gl>h XѕD􏎎vP m7">4OdK ((E[[CNsA5r GE=fӤҥ gR2YJ^ۭRh@''-f4wu}Q޻y1s@PPh r@x -xk0'^ƃu8!ndRS|+OF/@wO==UEEM$'t#??x {o!Bƙ%:~sVTJ(H 6fqW `!y`IKT$*bƍx&'gj2Y:ΘR}SHQ&L8PW!JJp8[ҍV}fH[>oVBTЂҋ/g$VQR䑠g|Ҥ?;T"YD> =SyY5:=pv4Z<>/o۵#,hϿPXX}/9fȔwD#<:!ر^}$r'QLi~#6v-c27+۬;0psr~3ҔD!65=J?PLL]t,.)a\$Œ=/N>;*~pifgoIwIDATxڽ[y\SW$a v @QZjj[tmW[m;ik[u.TP@%,%}{sw޽w , ͗P(a"Mm4Zt{l9,tqYB<JSϨ`(<^AX=sQo29؋LBjfˮXN8M qu]M+FܣM$R$\upw,jnYn&bq"F_10P9J74ڙ\N86o2;5ˇ G 9tzL}Gǩi߀BݐH^zrֳw,F՚~8-٩Rn5 ݟl6kX[ `R(ogprzxlͶXC]]^1M4uqϏJ8; WgXmtѤK5[>~vl)\E14 BM XA4MhlS ruOvr'2zeJu`MIi Y fD(X,5""/اP" 99pBOK$R( "!p8:2g F;J| 6@W!ODF}5"&k.n2Y\m7>)}Μ߾%<JE_ HJ]} @"g WJ~ߤ̘L l ^߄ ݝٮ== :bae1@Ϟݙ `Ȉ4ZLXE*0@G"LrB$$D"Jr8Y\ ?[G]5禦oZŵZf|2ch&<4ql $/ho?JupdzJVu~*C{oHlS9 .7bͭyǏT𻺮 @Aɓl N&uR<DzZX`ߧ^<"R rHS)G<`,߮z}㕲&z$h (RATaϑv i:h6piVWo׎HqŢyPS׭Z06]n4Z cˋ4Z @`8gpG;p<=&3խ;|v1 ߫j㞞Ko﵊k׶Ͷ=|ba`0QqZANW?Jz^vBːŢB P XQ2&4t^/gGYYV5DD `Аe{ps[O`Z@(̙k6} 6q<&35X~MM_l +,{Fv2Yҫu{|B6;]an x*uu:]]mbQ L$\]?h/C,|N'<"E H*U陚73d*!AY.WIX⨾ŢYa2ux3dgü'F":="K^Q5) /xs B?OɇdXTWU !΅>]!!nnK_5ڰX:~pM>s姺}7AW=c# Ejc%ƞJ.7+4\q(DM%!"pd&z"v_ʉ`$`"mh].oc#8,PhфuYY[')!ssruP(`}rC+I$cu1$gD))M̌ |AD8-$$[/mrTD:׮P@!a,ZWm 2٣mAAߺ9?wn''/n]`hD~"䏷޸bb~B!=:]o++eDJ݉Z}djLj ј5$bDw==^Z~}O*}e/`11WۇMo2Wa0d6[1KW˾wҴ[ޣMhTZy52,{wsА驭fEE^`6{Ƹr ~M[ۑuFS+W] O&'&w|{C6[LQ*-rRS[۫G/x<"Jjj"-7W3,W?!ϗsIc%1 gdƎS(B?l f<=iI*-edvᕐPá30l”SFDȀM%'KH3(:Ҫk_L$Čݭ޽n}'p8n9,~V *+^6Ld\nPR!ZOH߽{kWDkkv6\P ݕAhhK[<ە/*ˊo),D(;;}GF^sZuz#_Nqu]"!EcҰ3+$# CfbL (񉼣DTb4n2Hdrh1ey5TZZu箮ǗO4&v.ƞx(h3sΜrvvv(6ߌ sl{\ܭ<^{ah\*K*=ǓJ9*d#sV(apn~Drꀀ/ b*=Ԗ]K) f*Ѡb1Ҵ+:;b;;۝p' ܎ǻ{FE% Kϱ\n[`wn.NRiK8woc<0kvoWCX!!?DDGdGǔHburToJyz@Vp>)bS\cbJ?D5nQ̟o 0Z`$M$˛_?(hq⸸ۂr/0M|dP`lhZ?\cz{^yl?K jD^g}Yvl ?ggg^XA_V_y*y E2-'+sqy~C X,lWMLV;)PVD׸!SIENDB`monster-masher-1.8.1/pixmaps/footprint-right-leftmost.png0000644000175000017500000000074610547745535020615 00000000000000PNG  IHDR Vu\bKGD pHYs  d_tIMELsIDATxc` 0㓔WQ{lܜD$e %6[qɃ~(&ݺ/ju jF -n|FVAi~Ovn*㿿 207{ ޿LyU;ہ꼌WٻO_0~w>. Z֦s400000{U/Uz|CwhnLΉK<Hf````addoFkn?+$(0ڍ|S2USQ{spo''z7ʪw*999j9D)F#rIENDB`monster-masher-1.8.1/pixmaps/footprint-right-down-leftmost.png0000644000175000017500000000102710547745535021553 00000000000000PNG  IHDR Vu\bKGD pHYs  d_tIMEpbIDATxc` 0޾g )#qi`u[;s/?=c{+7Oxa&vV߾|bbϟ}o'jͺzۂH/a>7or0oO_c L 1#7o^s3qsr~geeN&Ei2&a>Lof*f`fb{^T\bڗ^ZR3n__Լ[av#OY֩;LTqs2 J*~FoIENDB`monster-masher-1.8.1/pixmaps/footprint-left-up-leftmost.png0000644000175000017500000000076310547745535021053 00000000000000PNG  IHDR Vu\bKGD pHYs  d_tIME 0zXIDATxc`@<<<<O|4r IENDB`monster-masher-1.8.1/pixmaps/footprint-up-leftmost.png0000644000175000017500000000100210547745535020106 00000000000000PNG  IHDR Vu\bKGD pHYs  d_tIME;OfIDATxcf 899XYY󃁁 ]R KKW>~dV֗RRҷϏAT\bY,GdhhX(G#;'KXx83B%e5M6YN[P8ӧOnF&*k}hS'/^~z&|B/%$40000 !*̶ࡔ200ed```x=KBYGOΉ M;ӻwąHY ԥk'X6//cbW|ЎIc$y7H;wɎEiv`4bʤ&IENDB`monster-masher-1.8.1/pixmaps/footprint-right-rightmost.png0000644000175000017500000000067710547745535021003 00000000000000PNG  IHDR Vu\bKGDC pHYs  #u_IDATxc`?R7ʪw*999&HhoΣqʅn,̞hfϝ{['["w?Ʀeܼ~|޿ TwL c``\8sw30000<~}۴41000000cgc*"/9q ^T._<׏ ICvqvzlh` u_<5Ռ,ZzꕍZQqXPIaeݑ'-l>ija*2 J:Nù\IENDB`monster-masher-1.8.1/pixmaps/footprint-right-down-rightmost.png0000644000175000017500000000073210547745535021740 00000000000000PNG  IHDR Vu\sBIT|dIDATxcd8t|ɱsR/ˌ̀X`6X//cblj, eM7=y;'64˗/6a>L޽'+#}Eñr[7o߾{ QʊZS'e``_tų07?(ffdXwÇ,̯aV[0]_b'?~104H]dG2ĸե12,$]DDhÙg~UCsܴ nN?|ϩ*i/ rJq瞿(} GmXEIENDB`monster-masher-1.8.1/pixmaps/footprint-down-rightmost.png0000644000175000017500000000075710547745535020634 00000000000000PNG  IHDR Vu\bKGDC pHYs  #uIDATxc`/s˱ sn?Dⴟ~3;۾7##b+f%__O$a L 3f~*2J _qCً']P7wȐ1=!THP`6V?-aGuM>- ^ 'm\c}?޾yO_A^E]_v7wy7Rm,wll޼lbfQ%ҙ޿xo߾yc/Qq"zgK<_YU[$20000 1 ,tH NNN!NNN#?9DWIENDB`monster-masher-1.8.1/pixmaps/footprint-left-down-rightmost.png0000644000175000017500000000073010547745535021553 00000000000000PNG  IHDR Vu\sBIT|dIDATxc`&ɯd:v"׫Y`b;30ga哒d-!Ȼ]9+#jF$F VV>>{L*yJnZR?f`sNlh_^;w?n̩ܜߟ ~3y˗/613=/?;w{f&f7۷Y|ܙ+J!lGY?\ݿ?>;vLʌaQ1Q 狗,ݢk襦kx/'Oaj5CQFZ+񭿽Qhkg&(,ITB_gEVÂf`d?3 kj w](IENDB`monster-masher-1.8.1/pixmaps/footprint-left-rightmost.png0000644000175000017500000000072210547745535020607 00000000000000PNG  IHDR Vu\bKGDC pHYs  #urIDATxc`(()˫SÄLv w5#:usj6nNXuKUPZ+CK[jF-ٸ7w#6f!!&ccII"Vu#3 #3  _ zL [|…ng>9 yg}> o🅝?+FFd :7w1jv6Vџ~9?iYV 7x֍{U(BHoloU4EIENDB`monster-masher-1.8.1/pixmaps/footprint-right-up-rightmost.png0000644000175000017500000000071410547745535021415 00000000000000PNG  IHDR Vu\sBIT|dIDATxѻ/Cayߖjz14 шE/I6H`XDF $nu04BJSqnI |#BVs";;acfDC7\PfjJ6'=ϑV :vSrNWp{\Gk5Wkۙ$eOUƊ%S [T4tɲhw8 B.X~ "^g@,8nX\^3^NA -ּw2K7@ &$Iu:] L4#$ ͕P3׵+ 7z'`hjZiD}64R"ZӺ0GRW u>}^/^Ϥ(IENDB`monster-masher-1.8.1/pixmaps/settings.inc0000644000175000017500000000076110547745535015445 00000000000000camera { orthographic up y right x angle 48 location <0, 0, -150> look_at 0 } light_source { <100.0, 300.0, -200.0> colour rgb 1 } light_source { <200.0, -150.0, -200.0> colour rgb 1 } light_source { <-200.0, 80.0, -200.0> colour rgb 1 } light_source { <-100.0, -200.0, -200.0> colour rgb 1 } global_settings { assumed_gamma 2.2 max_trace_level 15 } #macro from_spherical(rho, phi, theta) #end monster-masher-1.8.1/pixmaps/monster-blob.inc0000644000175000017500000000050110547745535016200 00000000000000#declare monster_blob = blob { #declare bs = seed(0); threshold 0.2 sphere { 0, 32, 1 } #declare i = 0; #while (i < 80) sphere { from_spherical((20 + 20 * rand(bs)), pi * rand(bs), 2 * pi * rand(bs)), 30 + 10 * rand(bs), 1 } #declare i = i + 1; #end scale 0.9 } monster-masher-1.8.1/pixmaps/gore-blob.inc0000644000175000017500000000055610547745535015457 00000000000000#declare gore_blob = blob { #declare gbs = seed(sval); threshold 0.2 #declare i = 0; #while (i < 40) #declare r = 10 + 43 * rand(gbs); #declare theta = 2 * pi * rand(gbs); sphere { 15 + 15 * rand(gbs), 1 scale <1, 1, 0.6> } #declare i = i + 1; #end } monster-masher-1.8.1/pixmaps/hero.inc0000644000175000017500000000150310547745535014535 00000000000000#declare rounded_sphere = blob { sphere { 0 1 1 } cylinder { 0 <-1, 0, 0> 1 1} } #declare hero = union { // the hood difference { object { rounded_sphere } plane { -x (-0.2) } scale <70, 60, 60> translate -z * 45 translate x * 18 } // main part of the cowl intersection { cylinder { <0, 0, 70> <0, 0, -40> 60 scale <0.5, 1, 1> } union { cylinder { <-100, 0, 0> <100, 0, 0> 60 scale <0.5, 1, 0.5> } plane { -z 0 } translate <0, 0, -40 + 60 * 0.5> } } // the sleeves union { #declare sleeve = difference { object { rounded_sphere } plane { -x 0 } scale <50, 30, 30> translate <40, 0, 20> } object { sleeve translate y * 40 } object { sleeve translate y * -40 } } } monster-masher-1.8.1/pixmaps/egg.inc0000644000175000017500000000243210547745535014344 00000000000000#include "colors.inc" #include "stones.inc" #include "settings.inc" #declare rs = seed(sval); #declare crack = texture { pigment { crackle turbulence 0.2 color_map { [0.0 color rgbt <0.0, 0.0, 0.0, 0.0>] [0.025 color rgbt <0.0, 0.0, 0.0, 1.0>] } scale 3 } } #declare egg_shape = union { difference { sphere { 0, 1 } plane { y, 0 } scale <1.1, 1.7, 1.1> } difference { sphere { 0, 1 } plane { -y, 0 } scale <1.1, 1.3, 1.1> } scale 35 rotate -10 } #declare egg_texture = texture { T_Stone29 } // 7 29 38 40 43 44 #if (clock >= 1/4) #declare egg_texture = texture { T_Stone29 } // 7 29 38 40 43 44 texture { crack translate scale 35} #end #if (clock >= 2/4) #declare egg_texture = texture { T_Stone29 } // 7 29 38 40 43 44 texture { crack translate scale 35 } texture { crack translate scale 35 } #end #if (clock >= 3/4) #declare egg_texture = texture { T_Stone29 } // 7 29 38 40 43 44 texture { crack translate scale 35 } texture { crack translate scale 35 } texture { crack translate scale 35 } #end monster-masher-1.8.1/pixmaps/block.pov0000644000175000017500000000023210547745535014723 00000000000000#include "settings.inc" #include "colors.inc" #include "stones.inc" superellipsoid { <0.4, 0.4> texture { T_Stone44 } scale 65 } monster-masher-1.8.1/pixmaps/levitation.pov0000644000175000017500000000120710547745535016012 00000000000000#include "settings.inc" #include "colors.inc" #include "stones.inc" #declare rs = seed(sval); superellipsoid { <0.4, 0.4> /*texture { T_Stone44 }*/ texture { pigment { crackle turbulence 0.2 color_map { [0.0 color rgbt <0.3, 0.3, 1.0, 0.2>] [0.025 color rgbt <0.0, 0.0, 0.0, 1.0>] } scale 3 translate } } scale 65 } /* sphere { 0 1 hollow pigment { color rgbt 1 } interior { media { emission color rgb <1, 0.5, 0.5> * 0.03 density { spherical turbulence 0.4 } } } scale 65 } */ monster-masher-1.8.1/pixmaps/wall.pov0000644000175000017500000000032510547745535014573 00000000000000#include "settings.inc" #include "colors.inc" #include "stones.inc" superellipsoid { <0.1, 0.25> texture { average texture_map { [4 T_Stone28] [1 T_Stone44] } } scale 65 } monster-masher-1.8.1/pixmaps/monster-wall.pov0000644000175000017500000000051610547745535016262 00000000000000#include "settings.inc" #include "colors.inc" #include "stones.inc" #include "metals.inc" #declare monster_texture = texture { pigment { color rgb 0.3 } finish { F_MetalA } } superellipsoid { <0.1, 0.25> texture { average texture_map { [1 T_Stone28] [10 monster_texture] } } scale 65 } monster-masher-1.8.1/pixmaps/power-up-invisibility.pov0000644000175000017500000000041510547745535020126 00000000000000#include "settings.inc" #include "power-up.inc" object { power_up material { texture { pigment { rgbt <1, 0.3, 1, 0.6> } finish { specular 1 diffuse 0.7 roughness 0.001 reflection 0.1 } } interior { ior 2.47 } } } monster-masher-1.8.1/pixmaps/power-up-freeze.pov0000644000175000017500000000042110547745535016665 00000000000000#include "settings.inc" #include "power-up.inc" object { power_up material { texture { pigment { rgbt <0.3, 0.3, 1.0, 0.6> } finish { specular 1 diffuse 0.7 roughness 0.001 reflection 0.1 } } interior { ior 2.47 } } } monster-masher-1.8.1/pixmaps/power-up-explode.pov0000644000175000017500000000041710547745535017052 00000000000000#include "settings.inc" #include "power-up.inc" object { power_up material { texture { pigment { rgbt <1, 0.3, 0.3, 0.6> } finish { specular 1 diffuse 0.7 roughness 0.001 reflection 0.1 } } interior { ior 2.47 } } } monster-masher-1.8.1/pixmaps/power-up.inc0000644000175000017500000000046510547745535015364 00000000000000#declare power_up = difference { box { -1 1 scale <2, 2, 1> } #declare a = 0; #while (a < 360) plane { z (-1.1) rotate <70, 0, a> } plane { z (-0.8) rotate <-35, 0, a> } plane { z (-1.0) rotate <140, 0, a> } #declare a = a + 360 / 8; #end scale 48 rotate <-90, 45/2, 0> } monster-masher-1.8.1/pixmaps/plain-monster.pov0000644000175000017500000000035310547745535016425 00000000000000#include "metals.inc" #include "settings.inc" #include "monster-blob.inc" object { monster_blob texture { pigment { color rgb 0.3 } finish { F_MetalA } } scale 0.85 rotate (z + y) * 360 * clock } monster-masher-1.8.1/pixmaps/plain-gore.pov0000644000175000017500000000030310547745535015665 00000000000000#include "metals.inc" #include "settings.inc" #include "gore-blob.inc" object { gore_blob texture { pigment { color rgbt <0.3, 0.3, 0.3, 0.5> } finish { F_MetalC } } } monster-masher-1.8.1/pixmaps/hard-monster.pov0000644000175000017500000000126610547745535016244 00000000000000#include "metals.inc" #include "settings.inc" #include "monster-blob.inc" union { object { monster_blob texture { pigment { color rgb 0.3 } finish { F_MetalA } } } // armour union { #declare belt = difference { cylinder { -x, x, 63 scale <12, 1, 1> } #declare i = 0; #while (i < 360) box { -1, 1 scale <8, 1, 1> rotate x * 45 translate y * 63 rotate x * i } #declare i = i + 5; #end } object { belt } object { belt rotate y * 90} object { belt rotate z * 90} texture { T_Chrome_4B } } rotate (z + y) * 360 * clock } monster-masher-1.8.1/pixmaps/hard-gore.pov0000644000175000017500000000235410547745535015510 00000000000000#include "metals.inc" #include "settings.inc" #include "gore-blob.inc" // from shapes2.inc #declare Dodecahedron = intersection {plane {-z, 1 rotate <-26.56505117708, 0, 0>} plane {-z, 1 rotate <-26.56505117708, -72, 0>} plane {-z, 1 rotate <-26.56505117708, -144, 0>} plane {-z, 1 rotate <-26.56505117708, -216, 0>} plane {-z, 1 rotate <-26.56505117708, -288, 0>} plane {-z, 1 rotate <26.56505117708, -36, 0>} plane {-z, 1 rotate <26.56505117708, -108, 0>} plane {-z, 1 rotate <26.56505117708, -180, 0>} plane {-z, 1 rotate <26.56505117708, -252, 0>} plane {-z, 1 rotate <26.56505117708, -324, 0>} plane { y, 1} plane {-y, 1} bounded_by {sphere {0, 1.2585}} } #declare rs = seed(sval + 1); union { object { gore_blob texture { pigment { color rgbt <0.3, 0.3, 0.3, 0.5> } finish { F_MetalC } } } // shrapnels #declare i = 0; #while (i < 20) object { Dodecahedron texture { T_Chrome_5B } #declare r = 10 + 55 * rand(rs); #declare theta = 2 * pi * rand(rs); scale translate } #declare i = i + 1; #end } monster-masher-1.8.1/pixmaps/seeker-monster.pov0000644000175000017500000000120710547745535016577 00000000000000#include "metals.inc" #include "settings.inc" #include "monster-blob.inc" union { object { monster_blob texture { pigment { color rgb <0.70, 0.30, 0.30> } finish { F_MetalA } } } // spikes union { #declare sps = 0; #declare i = 0; #while (i < 70) #declare rho = 45; #declare phi = pi * rand(sps); #declare theta = 2 * pi * rand(sps); cone { from_spherical(rho, phi, theta), 10 + 5 * rand(sps) from_spherical(rho + 20 + 5 * rand(sps), phi, theta), 0 } #declare i = i + 1; #end texture { T_Chrome_3B } } rotate (z + y) * 360 * clock } monster-masher-1.8.1/pixmaps/seeker-gore.pov0000644000175000017500000000030610547745535016043 00000000000000#include "metals.inc" #include "settings.inc" #include "gore-blob.inc" object { gore_blob texture { pigment { color rgbt <0.70, 0.30, 0.30, 0.7> } finish { F_MetalC } } } monster-masher-1.8.1/pixmaps/egg-layer-monster.pov0000644000175000017500000000053510547745535017200 00000000000000#include "metals.inc" #include "settings.inc" #include "monster-blob.inc" object { monster_blob texture { pigment { bozo color_map { [ 0.4 color rgb <0.30, 0.30, 0.70> ] [ 0.7 color rgb <0.30, 0.30, 0.70> * 1.4 ] } scale 15 } finish { F_MetalA } } scale 1.1 rotate (z + y) * 360 * clock } monster-masher-1.8.1/pixmaps/egg-layer-gore.pov0000644000175000017500000000050110547745535016436 00000000000000#include "metals.inc" #include "settings.inc" #include "gore-blob.inc" object { gore_blob texture { pigment { bozo color_map { [ 0.4 color rgbt <0.30, 0.30, 0.70, 0.6> ] [ 0.7 color rgbt <0.30 * 1.4, 0.30 * 1.4, 0.70 * 1.4, 0.6> ] } scale 15 } finish { F_MetalC } } } monster-masher-1.8.1/pixmaps/freeze-box.pov0000644000175000017500000000040010547745535015674 00000000000000#include "settings.inc" box { -43, 43 material { texture { pigment { rgbt <0.8, 0.8, 1, 0.8> } finish { specular 1 diffuse 0.8 roughness 0.001 reflection 0.1 } } interior { ior 2.47 } } rotate 30 } monster-masher-1.8.1/pixmaps/plain-egg.pov0000644000175000017500000000031110547745535015472 00000000000000#include "egg.inc" #include "metals.inc" object { egg_shape texture { average texture_map { [1 egg_texture] [1 pigment { color rgb 0.3 } finish { F_MetalA } ] } } } monster-masher-1.8.1/pixmaps/hard-egg.pov0000644000175000017500000000024610547745535015314 00000000000000#include "egg.inc" #include "metals.inc" object { egg_shape texture { average texture_map { [1 egg_texture] [1 T_Chrome_4B] } } } monster-masher-1.8.1/pixmaps/seeker-egg.pov0000644000175000017500000000033010547745535015646 00000000000000#include "egg.inc" #include "metals.inc" object { egg_shape texture { average texture_map { [1 egg_texture] [1 pigment { color rgb <0.70, 0.30, 0.30> } finish { F_MetalA } ] } } } monster-masher-1.8.1/pixmaps/egg-layer-egg.pov0000644000175000017500000000033010547745535016244 00000000000000#include "egg.inc" #include "metals.inc" object { egg_shape texture { average texture_map { [1 egg_texture] [1 pigment { color rgb <0.30, 0.30, 0.70> } finish { F_MetalA } ] } } } monster-masher-1.8.1/pixmaps/hero.pov0000644000175000017500000000037310547745535014574 00000000000000#include "settings.inc" #include "hero.inc" object { hero texture { normal { bumps 1.5 } pigment { color rgb <0.6, 0.2, 0.6> * 1.2 } scale 1.5 } rotate <0, 0, -hero_angle> scale 0.9 //rotate <90, 90, 0> } monster-masher-1.8.1/pixmaps/invisible-hero.pov0000644000175000017500000000061110547745535016551 00000000000000#include "settings.inc" #include "hero.inc" object { hero material { texture { pigment { color rgbt <0.6, 0.2, 0.6, 0.8> * 1.2 } /* finish { specular 1 diffuse 0.7 roughness 0.001 reflection 0.1 }*/ normal { bumps 1.5 } scale 1.5 } interior { ior 1.1 } } rotate <0, 0, -hero_angle> scale 0.9 //rotate <90, 90, 0> } monster-masher-1.8.1/pixmaps/hero-gore.pov0000644000175000017500000000025410547745535015524 00000000000000#include "settings.inc" #include "gore-blob.inc" object { gore_blob texture { normal { bumps 1.5 } pigment { color rgbt <0.6, 0.2, 0.6, 0.5>} } } monster-masher-1.8.1/pixmaps/splash.pov0000644000175000017500000001363010547745535015131 00000000000000#include "colors.inc" #include "stones.inc" // the various substients #macro from_spherical(rho, phi, theta) #end #include "hero.inc" object { hero texture { normal { bumps 1.5 } pigment { color rgb <0.6, 0.2, 0.6> * 1.2 } scale 1.5 } rotate <90, -90, 0> scale 0.9 scale 1/150 translate <1, -0.05, 0.2> } #declare Wall = superellipsoid { <0.1, 0.25> scale <1, 1.5, 1> texture { average texture_map { [4 T_Stone28] [1 T_Stone44] } } scale 0.5 } #declare Block = superellipsoid { <0.4, 0.4> texture { T_Stone44 } scale 0.5 } #declare rs = seed(0); #declare LevitationBlock = superellipsoid { <0.4, 0.4> texture { T_Stone44 } #declare i = 0; #while (i < 8) texture { pigment { crackle turbulence 0.2 color_map { [0.0 color rgbt <0.3, 0.3, 1.0, 0.2>] [0.025 color rgbt <0.0, 0.0, 0.0, 1.0>] } scale 3 translate rotate * 360 } } #declare i = i + 1; #end scale 0.5 } #include "metals.inc" #include "monster-blob.inc" #declare Seeker = union { object { monster_blob texture { pigment { color rgb <0.70, 0.30, 0.30> } finish { F_MetalA } } } // spikes union { #declare sps = 0; #declare i = 0; #while (i < 70) #declare rho = 45; #declare phi = pi * rand(sps); #declare theta = 2 * pi * rand(sps); cone { from_spherical(rho, phi, theta), 10 + 5 * rand(sps) from_spherical(rho + 20 + 5 * rand(sps), phi, theta), 0 } #declare i = i + 1; #end texture { T_Chrome_3B } } rotate (z + y) * 360 * clock scale 1/140 translate <0, -0.1, 0> } #declare EggLayer = object { monster_blob texture { pigment { bozo color_map { [ 0.4 color rgb <0.30, 0.30, 0.70> ] [ 0.7 color rgb <0.30, 0.30, 0.70> * 1.4 ] } scale 15 } finish { F_MetalA } } scale 1.1 rotate (z + y) * 360 * clock scale 1/100 translate <0, -0.1, 0> } #declare HardMonster = union { object { monster_blob texture { pigment { color rgb 0.3 } finish { F_MetalA } } } // armour union { #declare belt = difference { cylinder { -x, x, 63 scale <12, 1, 1> } #declare i = 0; #while (i < 360) box { -1, 1 scale <8, 1, 1> rotate x * 45 translate y * 63 rotate x * i } #declare i = i + 5; #end } object { belt } object { belt rotate y * 90} object { belt rotate z * 90} texture { T_Chrome_4B } } rotate (z + y) * 123 scale 1/130 translate <0, -0.1, 0> } #declare PlainMonster = object { monster_blob texture { pigment { color rgb 0.3 } finish { F_MetalA } } scale 0.85 scale 1/130 rotate (z + y) * 360 * clock } // the scene itself as a string #declare scene_str = concat( "WWWWWWWWWWWWWWWWWWWWWW", "W BB p W W ", "W B WWWWWWW W ", "W B p p W W ", "W B Bp W W ", "WBB p h B es W ", "W BBBBp B W ", "W B Bh W ", "W B BBBBBBW ", "W B e p W ", "W WB ", "WBBBB BBBBBBBBh ", "W hp spp BhB ", "WWWWWWWWBB Bp BB ", "W B B BWWWW ", "W WWWWWWWWBBBepB= BB ", "W p p p pB= ", "W WWWWWWWWBBBB= p ", "W p s s ", "W WWWWWWBBB ", "W Bp ", "W B "); #declare scene_width = 22; #declare scene_height = 22; #macro equals(s1, s2) !strcmp(s1, s2) #end #declare i = 0; #while (i < scene_width * scene_height) #local trans = <6, 0, -5> + <-scene_width, 0, scene_height> + ; #local s = substr(scene_str, i + 1, 1); #if (equals(s, "W")) object { Wall translate trans } #end #if (equals(s, "B")) object { Block translate trans } #end #if (equals(s, "p")) object { PlainMonster translate trans } #end #if (equals(s, "h")) object { HardMonster translate trans } #end #if (equals(s, "s")) object { Seeker translate trans } #end #if (equals(s, "e")) object { EggLayer translate trans } #end #declare i = i + 1; #end object { LevitationBlock translate <1, 0, 1.3> } object { HardMonster translate <1.2, 0, 2.2> } //plane { (x + -z) 0 } #declare RightmostFootprint = texture { pigment { image_map { png "splash-foot.png" once} } normal { bump_map { png "splash-foot.png" once}} rotate x * 90 rotate z * 180 translate x scale 0.35 } #declare LeftmostFootprint = texture { pigment { image_map { png "splash-foot.png" once} } normal { bump_map { png "splash-foot.png" once}} rotate x * 90 scale 0.35 } plane { y (-0.5) texture { normal { bumps 1.5 } pigment { color rgb <0.55, 0.5, 0.5>} scale <0.01, 0.005, 0.01> } texture { LeftmostFootprint rotate y * -5 translate <0.7, 0, -0.4> } texture { RightmostFootprint rotate y * -40 translate <1.2, 0, -0.7> } texture { LeftmostFootprint rotate y * -45 translate <1.25, 0, -1.2> } texture { RightmostFootprint rotate y * -30 translate <1.7, 0, -1.3> } //texture { LeftmostFootprint rotate y * -60 translate <1.9, 0, -1.8> } } camera { up y // right x // angle 48 angle 70 location <3, 3, -3> look_at <0, 0.5, 0> } light_source { <0.0, 2.0, -2.0> colour rgb 1 fade_distance 3 fade_power 1.3} light_source { <2.0, 1.0, 2.0> colour rgb 1 fade_distance 3 fade_power 1.3 } light_source { <-1.5, 0.53, -1.1> colour rgb 0.7 fade_distance 3 fade_power 1.3 } light_source { <-2.0, 1.0, 1.0> colour rgb 0.3 fade_distance 3 fade_power 1.3 } light_source { <-1.0, 0.5, 3.0> colour rgb 0.3 fade_distance 3 fade_power 1.3 } global_settings { assumed_gamma 2.2 max_trace_level 15 } monster-masher-1.8.1/pixmaps/splash-foot.png0000644000175000017500000003761310547745535016065 00000000000000PNG  IHDRbKGD pHYs  ~tIME.71 IDATx}ypՕ[M%,Yx-aam6c0&LL**TA!&!ECbLl-7ْlmOoVw'aYޢt,D)mxˆM>߉ t<@O %s/ Lo[M^hCu8@ᒌLtE:!$8s6,8.4>?{эS(Bx8_ߪa֭fB`,$4bI)3pXy(B:8x{رŋ덍`.Lb} 𗬬/_غukӒ%K(nMDG&&f lLΑLh<_}{7 H>z/@cPhĞ={rJ˛$[7YnO~2p ?E裏>Bt],˒I&iq$a#w}cԩ9|Xșa.iź?iͰdIh4 J졇 QJ )! !tXCC-[$OI(#h\! ^Rk>tбcfpNN$Ov^hoۮk`.Rk~_|'韚VX!HbB 8+Hxn ZTpޚ*-' 88pdqi9`PՏ54]EfD)!t-(SJ۷UZZz~ԩĦ 鈌]u޽Xk=)+FǎS,Y!h%` y /])%!] 7xctEEEbԩ=جsPݻ&($cNc N !2>H+xh"٭z?ݻw R{9Hd޸~wmm-49.E"s=w᷿ HkIǰ4p9.^%AL`YT{YbF`sYy_}ѣJmm` x<?>!de2e%Bޣ3//5jԨg=:X۱4Y~G" HM IccccǢxdpi8qڰaC,zDz"*x+** : ɴp2mrh͔Ϡ*aP($nϣ6qUE3 L .;MyY %H1yn:v2]vidJ?€l6=i]vu]c' <1D"*8|7ާz*0L:.+\هKzQީSƅ㚮䲂9-KZ$& Lr(={d;Ja S 4o@4 i8)1O>~gW0ѝ󈕫$E@ڸqr6Sj<&)פWuO>IсeYFUUU:u2\,f YW4%R 1N^!b:yaJe\.MROvqBHISN5%46Z)S|sI(uy\Yd튮7x#c)GU)ґ\C/|0~z ]GQIuu`%AtX3 8x ;;qh4/cN0&[$Or+**F.[\ԧ S~' UV?BBb-~OM{omm}K4aÆ(Wd!(j¤Ľ"C$5''E!W"uرwy' I1)L1 D0"(ƘRJ JGQBHcmmF+**dR.Ç]עuBʣG/iؘ 8h 8la]GbRdA_kEQ -N|!>#Y"RLA4AQP,'''rW.0&@7wrM ۰aCÓ` <د_ZsΜD"ԊঋT!`;QTTUUUqsι#;B`u1rͬ"tҬ6H]fcfTÌ/`g \\;Yqv2cg r[[[%p^mL4I-))YX5BdplpD Peee,+i&$| AP1mf%R 9i֘n` @}n;f͚o3///*ƬmqKOՅ Ð)1P'A)Mtuu'NX!˲>vXzB1b5ufǵjUUU&㘅B!% Q]E$bk8B8#Hg ׸8f4BH_reի)S'H#3p {gAUXH5с\Z=///yLWyR'T|2:m45rKA.\Y̜:H 1$#L!vl0X̿)D hEsZJ^dI+\\gx!dr tX$1OY\š]eڄ ӧO!xE2i3gDcrSJ)hXħjB7JixqV-//֭ [(qCpʤQp[a绽^o҄e}҄aT4ɡ2>i$|`X 7 %G-ZUTTMqRjͣ" QoT" A>**--E7oι[\ujV#dE~)3gΤ$L$m !L6F)H$HUUP]ҥKeee`rќC , .h{^^=[Y5!!1+3|NEb͎d999pwdz뭭#G 1seX<{KYq:Ɂ(>=Z08RyccnEiGx]]]tHܛbɠ!!K֭O<5(**$II6{QVuE" + 8R֭[7nl7n\E729}عv58ߺǒp#s ƸqɓApEII 'o,2 H\ƍ'N!SJBׯWNt 'ǐ$xEM +W˜L)7Ɂ;v6nY^^S sEzszkX]ݽb97d>H2Ovv6g9+XK#hR;~4ՅΝ`tJNх,Znj)]pbٳg~.䮸!(z|#tJy,~QQy=wyg{eee;4oz`כ9M0'eu\ $H$o~I( 7okڴip +7}eee_|A ׌cJ-vJO?4_]]]b&9s:ֱ`g.|z$p ͵lC|L~[nQFqSef#MhϞ]y ݍ'$.ة֪er^x~#>Er[5\C>uժU-n;=AfuժU?~ݵ!|JJiVL"a,}<>gy&&+V(K,_ŨÐ-%`XZZ͖U݋ղ(yĭiooǪbX* =k׆y_kk+_)VaSZ,usZzut̙_z>z7RJ 9QJKFϧ.Xu)..{ d훊+nM_|yPe5M-h ~rTI@ e 8jh8mmm_{ۉ)"&{ PJ ۭ/YD}Ga;lC8NN(D"s=&g"*,ϙ?O^zu|ɲ`RtuFjjj\7|,766BL!Dnj#O<9v5D=R{rmb{iS$,bLGyD:~7DStB)5$Iɓ'7mK,TVVv*p)5Q soHR@%rܹs… +H̓/2p #HTkuw2٤ۜB[$aZ$!gΜ V4kŘiӦ_tĈJmmmth̙qE~W:%)IBHl/? ℸ :pwϞ=mݦ[ /@oߞ[oᦦ&Tet뭷EA?/]Uy.nLhdQUU}饗ZZ[[]---RggD$77WR&v'Y?~Nq`023q1K촹*ih|khhEpݫg}x=_|7a֭ǏC+=B >,Os9Hqaa\XXŔb0Ǖ pn ļ0PcTPPB]RY:Ka:::PQQKk .Kݲewݺu'N'OIEEEda72NM{LXl@=U䐓#/+<(QF)^ B8qBe˖9h֬YVLT:ФR͓im؜phr~9181%9gIQ_Mn^gtDSSꫯ|h8"]k=KdR>"T''а[VL^P*+OӘ~q/J,^؛MZ[[C!M`ܝx\I#uhlltEqrcdNsUt xffXHͻ,>FNg,XA-//7|3L)btQKĥX'}S tM1WFLD" Hkk+mnnVǠt]O~Y)ERII\PPE$I ̢NFj (yfׇ~hB(Tr3XB.gIKK,tԲudl,"0fRPMȹsCiO}=u$]D"GӴ0Ysq\1Y;$IjQFiUUUpWrcҤI҄ p^^b@汍1 ǽ$yޖSZqGi9+WٳGJߴ<8 >J)ꪫ\*ݜ f=[0XB?X{$h4:+,f9Y|S孳gϦ ,Ν 'N$4UcG^^ߵkw˖-fs&Gx2+rъ#oosK`5G+VBW f`O~nݺwygxܹHh댛\oErΖ?{aO?TuK3 fZ҉'kFR C\E ԩSg}6sNE=j*t BƵ~|nܸu˖-v+;uOw,# дisx|a_Ϙ1#ڸB[MS? ڵ˛H$f1pC0d}Qqss_:;;O=a Xy9M7N7<0۷~Z8a$I ,eee5\sѰ]u!i ۷/c) 4y_cK2&1[ga IDAT|9 E`%zQQڔfO"Pu]'䏹뮻׷`0?x8ohh<9gϞ 2 ] Bϟ?AQ`MM }=ectӍ3tٲeƼyp؇1\.-))7l؀m,)) AjmdNC_ccc-,f^ gWv^vg̘)((ʙ-;`?p$)TUUh4)tܸq(\,ST|On}~__*5OiYxJ~/ڬK0ęVtH("O0A  #N_7Nqb`N)ژ@GGjժ>M {m[[[[3gNB~go3kLJ""Α#G˗/7N>]EsqD"&5uKo+Z(oq<7R<#p<& ivw%x_{ZeгexAa( @9'[l@-7dqs|xA$_+Yܷr^3aФ<O5Pamv915OL@aÛŖ)))I\jHeW ')P88}yyyIxDyr[r?UoEx<^݁ad)6&MpP̫z?c~g!%㤰Ν;;ٓjqzi/n_reX4Y}:2]u.eD"QD0x2HUUՅk\sM K;9uTt޽ 3W6rK]jU+evdyꩧDH@z[n=??wwdĐ2[VYika!p|>_hǎ->jԨ.,.vuuu;>`?6mj///էiCE0'ܹ3H$UfSPPyᇥocĉ"pM[&Ko25QZ+7tmΟ?? I7jĉ;vnRwѠqوfEb 18'Mٴ;1N1,X{ョ+W2N({b11ƽzc]cw HGaӦMxѢEg0̺ǥ?4OU/(T8vJ) Rm˖-޵kFg̘gfзY0c,e]SS! e #ũ@)MD*3AdPc…hƍ+V3}fob$ À'Ob)L󩿢Ρp5eDp\iڀବ,|zu]Y\\iIنfTzǼ'˅ A8޴ ӌE !|y;/x_rJmVXWW<~ 锾A}۵vWAт*RB|.r.="9cLx f$8Y4_r}}}ުU_͍XDmrwy'!f8+Gx,[&3M|>FD_FW_}u`9K. ظ@cgɼ!iRNyyp43И<28X8s%A\SqiZ &(v[~]]5k .ܺ0k4 ՙ3g\.''0̖&c!!rХYYYxŊ9 뮻0c2ہ7#Dߦ3fK/((b) J)$ n)mDI0Y)yޅ5p!1})jƍW\M2,\Ld:MdtvXߗ_~I#ҭ$Btè+O`$5/y#֯_OfϞ}}dt8ån@l 2@0LǎCm6M |r&'R0 t5-̛7Ϸm۶իWZ)&gA)wi1:B^{قy9쉥K***r>cjYqԈ,cnÍSqDHQ3 ) 2$ "K,ڶm[|0\/I?;ЈC˔R:JTUDGAQ( \]3wݟ:RƼyJnu4s0F{߃*|`eV oߞbŊ.+ ^P[y8DW4 _~o+ E PJ=cE3gΉm۶5Μ9p@im8vlq<oذ+/9]`nB)5`FR3@'k$Ir?^x 7|suHJ|sxMӤ'OjO<_'B1dMq\]nݺw<Gy;Pp-a6KbDh2abXP6SBBpjXѓO>9o2pZP3%SF]Jtǎ{b7D (JܹsΝ;5jeڳ_3Qv[J0J)a0 e< E3OM7ݔbŊXvvvz.ˤ#X0/`|߿_+))yo܀*g`VB qgHd𼪪o~484{ _bcs:֬Y5kX 5m`Q#"xY:qN&auB3Ƶ|rW\J#ѿeN]}۷o͛7oE([ &B UU}M_}"™e J%LUp?0B|6 跛7,%@mmmc ޭ̴l+i ?쳫`^Rj|8)^ )|O믿>`v^c bfv2]!BHBPUU%'y9uHlZuwС3vtxkN(mpnS6 MӜ(y"K!)H-TǏ6f0{SKȿ˿gΜ)K]np/9pLbJHpf h4 i)h#ɂLBH3FKgL 3&QYYY$FPOo'rGyHbVcDw[`^ފB4e  >gg+aH> Buݢ ܄)rfȑ"qYyd'vؚ5k^0DXhBIB9R* VӧOݦdJ+H6aM+ rjݮ9"443*^>iGϑ;w.` } 'cI)@`9sF_Tf\`PnjjB,PJڤbqԩSW^ye׷yq^W}ꩧ:&LuxPWYdq`$B2BHJq◿eɓ'yTXvWKKgIR t-tYzMRMMMr.WЌ|+Z())yPJ!91itN<s"ٳ?λpXol*3\}Y&<6 iO:4cƌ(C+tҠ+][nL9Ϝ ;59qL)%!!< PXՅ ;C<##9.H/ߏvtt2#&{541h(+UiQpӯ $@Bb DE#X`B؀ԊCA8[#b؈xqXraSSoۋx ˗/s͉PѣG ;_yL)bN)7."F)zeeetѣ&]W]O~ҟ*RcI+naՂr9%0'!P2ܹs٧Og̘{<A6{f 9RWjoyAa1(X9ntY֭o3;;;=x,S=]v9͛߷o_Vkk C0ESJ8 I $*jiigϞ {Y]]]rii)dee!ApsAo9?.|?|' )L(ng@nn2*\poK$(NU{u8rfL9%b,'֙6ˎ~:%R̖3=bE-2ZMR*am=ޕEe˖%o}}}#wj>`<wy,(xǎ/ ibZW^]La^,#!D\%7o!ɕL%R>qFڵke2{L$<M,S̢)ъ/6C}YKٳ KF۠gy'p3Ό!=$2CW4ׁ?ҟgSH$ؘm1`Kũ>c:Z&~ddžk&>u6H͊|۠PnMkXz ڿ{޽o{ a4tJ>JH-`I.+^]]]{sJf u 1tM&_"ɔ2a#qL_`,>,=zT>t9xɓ`0hqϩZ,h&2tG!z3&]: ./ & 3mw2dzk pd '4:o(x2Q:PiL2wlċyvp: 6 !LNsCֿf7}֐a؞\G|oa }x6IENDB`monster-masher-1.8.1/sounds/0002777000175000017500000000000011105646702013011 500000000000000monster-masher-1.8.1/sounds/Makefile.am0000644000175000017500000000014610547745536014776 00000000000000sounddir = $(datadir)/$(PACKAGE)/sounds sound_DATA = clinck.wav splat.wav EXTRA_DIST = $(sound_DATA) monster-masher-1.8.1/sounds/Makefile.in0000644000175000017500000002547411105646644015011 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 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@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ 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 = : subdir = sounds DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = 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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(sounddir)" soundDATA_INSTALL = $(INSTALL_DATA) DATA = $(sound_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DEPS_CFLAGS = @DEPS_CFLAGS@ DEPS_LIBS = @DEPS_LIBS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMAS_INSTALL_FALSE = @GCONF_SCHEMAS_INSTALL_FALSE@ GCONF_SCHEMAS_INSTALL_TRUE = @GCONF_SCHEMAS_INSTALL_TRUE@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ 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_alias = @build_alias@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ 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@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ sounddir = $(datadir)/$(PACKAGE)/sounds sound_DATA = clinck.wav splat.wav EXTRA_DIST = $(sound_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu sounds/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu sounds/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(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 uninstall-info-am: install-soundDATA: $(sound_DATA) @$(NORMAL_INSTALL) test -z "$(sounddir)" || $(mkdir_p) "$(DESTDIR)$(sounddir)" @list='$(sound_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(soundDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sounddir)/$$f'"; \ $(soundDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sounddir)/$$f"; \ done uninstall-soundDATA: @$(NORMAL_UNINSTALL) @list='$(sound_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(sounddir)/$$f'"; \ rm -f "$(DESTDIR)$(sounddir)/$$f"; \ done tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(DATA) installdirs: for dir in "$(DESTDIR)$(sounddir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) 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 mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-soundDATA install-exec-am: install-info: install-info-am install-man: 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 pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am uninstall-soundDATA .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-exec \ install-exec-am install-info install-info-am install-man \ install-soundDATA install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-info-am uninstall-soundDATA # 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: monster-masher-1.8.1/sounds/clinck.wav0000644000175000017500000005426610547745536014740 00000000000000RIFFXWAVEfmt DXdataX   +-#"!"-(#)=E7<IE<258+>4)-*;HI: 33! ,@&+>?,-C@@A5ut"5MQ41^vy[]GHU(C[qJ% sjl tr ^~sF15 ]Bm: eo [y +Gwh))ya8I y6f>n_6C>qvF6G^r"sddue'qf\hb~ !9Of"  m  B20W+Uvyd3WXj;2  , 8 X^dpfq 'oJ+rbWq,0<2=y_   zFNyR?1K0hs|u ~ ? ?em(_H{c>EP{kjh8i |D=v&9:2jS?36g_/b$3]!rpW o-\3.n sVn[T'8zW=!388Osf-8\z8[Sq>k<%Rqa?A9'2:1 KeK$ #3)(=08/&< .* C )?rPKOwDVa+f+ziDb  s 5I'c4SX j~M&a` ,Q+V*3u7nYNY%zjF= r0 A#acD;%,sX>5?)G9k([je*0r7Q Gdsw0 i  8) zcr U!LqqJB's16g%Lgf&:r<j~z(S3@[ +0/h?GAf4q,o1A";~A"8N =_4!V[ V ] d ~2-; d fEa5m;7*zPgyY/KDO#`l4XK)i@rGr]-N$a-KxA?x a:?; B<= E | Ekil>>51sVL5AU'(C]1YY?*$U7$280vw3|{: }K\91>Sd zbnkER`{b|G.415/=["*zIk`cx*v=Xx>ntH_Y-IAO$Y2: K VQq2e\ lavXiy|Fr<m}:7*4c]cR!6`MH>p-|y &)r6 EnsLIv: ea_m5]D/c\tKt0I<MP.Y`wSj03DSU  ]<-^=pIM Ww=~5q]P [)Agj9 z <pU(Ci~PU^u>%S]%F8 j"Qv\@YZ: 4;[9xM&8P w ^$b}ewC*o\~-<a02o;V#t7D+#t`m\e[Z:=5Y]'4@W%A  E ~`G4]a c)P#$PdkMX=kS;k^b 7 Q8,y,>1Rrg-faL ~Jove4 3z]6&F_goQa</h@aYv: K sT${}s > K)ztO|;7:e2=4Llni hH@&Zeni2a"cH@/t )|T =gR@3's4!F; *i|KH`I{?d~ G,,&P|*/O 0`7Pz$$G=pPgH(\DJ#(/!Tu g=V`~kRN. hxgcKhAel8E\ib)Z,?5Fo:3B<@84*m985"CC$J2?H05mP*j },Pbt8XT= _,0\Sc]u) uk] Vu/zW/"_$F Ep-c@pC[|JSa qRVl0E^S%YrtY`! ZICMmsXH2t}\VwmJl8S3kS{q\5JGQ+)%,Y4C:-t3ir9M.aXHNWh|@me&kgW=W_iW!U.A\;D`fjiL_i13.e#O2 $` 3 *6T* s>4v~)z~yAqZ^= WYNfKj$ Gy_vOU'%KU$9o?{S<TQpqVW f7,x:,g9+s GZ#4!&xT$4=-LccC-5?tmi!')*\63`~R68^$:#v7 f,s&6,1:EV*3C+X7Ox1\6+ 5%+A b :9 )I'  " 0(y *2%-#3-2!2 +2:hfvoc  w\Mm1|_w6?Q%=o:nmfS!Ssq'%3N}NsF 0<.ph O4 %'!=]z)?Z?u\x4rE#1y%T/|H_Ij$13*w&( {N` pq?8+%) ~l @  Bnr ~D4tz@olRbTmjsJ){M6>>'k cXAU(pJ# o#$i?15!.#| gAZ]ST/CdZ j^^q S3{d<#H _`: Z/'=<-  51 5 &2  1  6*4&ei>"9LC('${o,STW2WV .:z M.Zmo6\"{4_J;=H=DP3% O&';-vwEJ&dY74Z>;\!oY0 5#\J~$gB(i2  7G='D.$R 9 ;3)+ C0,C0 <9:/!2T0$)?T .<"+.V. <X/AGId,HmIX;z/-)A"-!i&b;q"[\$TO0v8zU 6%qL.G9jMN "&TY;4HXTMJF")'NO7_mC/<N;m`"? I 9#j>r.9CG&!R  -KC #CJ+Z  E;  %>! =+(<$</' 3+ ._M18XDKP'+AN>a0LL"b-]AW*p5Nf&1(~9{n6E^1 d)"CI" $P2/9;v<\SCP %UygTb IIT8cG;:PS %7 O A7 9f&~D5% 7*31":2F"]7; ] w;+*o1_H?c&}QG$\J"NJOF];Im!}& (C]:EC*KV&'A-bJo6dG]h&xdB"faKq E6!r'Y 0%10 G4#)@4%'/5" s F"mb5G,$ !ZLU;X"FJ7:f22v Du+2 %2a2 i2<hN-*$b&,. H/b<F aW -C30kM u4B uU6<MG)"K %F-cJi_I Gz$3 +u~~~}{z|yxwyvtqtsqpqonmomijmigdiecbgb^^bb\]][YWXXUTTTSRSPOMOOKIJKHGJGCADC?>A@9;<<88:7444421/0-+.+)'(&%#$#!    x={|~}{z}zuvwxxpzrm|`[iQXsft;@u`dU3'\4z[Gw@CXzf97e09 >4E. f3EI;G?AB?A=?B<<>B=;>>;: #include "animation.hpp" #include "graphic.hpp" #include "image-cache.hpp" Animation::Animation(Graphic &graph, const Images &im, int d, int start) : graphic(graph), images(im), delay(d), count(0), current_image(0) { assert(delay >= 0); if (delay == 0) current_image = start % images.size(); else { count = start % delay; current_image = (start / delay) % images.size(); } graphic.set_pixbuf(images.get(current_image)); } void Animation::update() { if (count < delay) ++count; else { count = 0; ++current_image; if (current_image == images.size()) current_image = 0; graphic.set_pixbuf(images.get(current_image)); } } bool Animation::last_frame() { bool last_delay_slot; if (delay == 0) last_delay_slot = true; else last_delay_slot = count == delay - 1; return last_delay_slot && current_image + 1 == images.size(); } int Animation::size() { return images.size(); } monster-masher-1.8.1/src/animation.hpp0000644000175000017500000000226310547745536014710 00000000000000/* An animation which uses Images to change a Graphic. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef ANIMATION_HPP #define ANIMATION_HPP class Images; class Graphic; class Animation { public: Animation(Graphic &graphic, const Images &images, int delay, int start = 0); // calling update will animate repeatedly void update(); bool last_frame(); int size(); private: Graphic &graphic; const Images &images; int delay; int count, current_image; }; #endif monster-masher-1.8.1/src/arena.cpp0000644000175000017500000000372510547745536014016 00000000000000/* Implementation of class Arena. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include "arena.hpp" #include "thing.hpp" Arena *Arena::current_instance = 0; Arena::Arena(Vector s, int ts) : size(s.x + 2, s.y + 2), tile_size(ts), tiles(size.x * size.y) { assert(current_instance == 0); current_instance = this; } Arena::~Arena() { current_instance = 0; } Arena &Arena::instance() { assert(current_instance != 0); return *current_instance; } Thing *Arena::occupier(Vector pos) { assert(pos.x >= 0 && pos.y >= 0 && pos.x < size.x && pos.y < size.y); return tiles[pos.y * size.x + pos.x]; } void Arena::occupy(Vector pos, Thing *thing) { assert(pos.x >= 0 && pos.y >= 0 && pos.x < size.x && pos.y < size.y); tiles[pos.y * size.x + pos.x] = thing; } Vector Arena::random_tile() { Vector t; do { t.x = std::rand() % (size.x - 2) + 1; t.y = std::rand() % (size.y - 2) + 1; } while (occupier(t) != 0); return t; } std::string Arena::tile_name(const std::string &image) { std::string::size_type i = image.find('.'); std::ostringstream os; os << image.substr(0, i) << '-' << tile_size << image.substr(i, std::string::npos); return os.str(); } monster-masher-1.8.1/src/arena.hpp0000644000175000017500000000301510547745536014013 00000000000000/* The Arena class for representing the game field. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef ARENA_HPP #define ARENA_HPP #include #include #include "helpers.hpp" #include "vector.hpp" class Thing; class Wall; class Arena: noncopyable { public: Arena(Vector size, int tile_size); ~Arena(); // Arena is a half-way singleton static Arena &instance(); Thing *occupier(Vector pos); void occupy(Vector pos, Thing *thing); Vector random_tile(); // return a random, unoccupied tile Vector const size; int const tile_size; // produces a tile file name from the base image name (inserting tile size // into path) std::string tile_name(const std::string &image); private: std::vector tiles; static Arena *current_instance; }; #endif monster-masher-1.8.1/src/canvas-message.cpp0000644000175000017500000000602610547745536015622 00000000000000/* Implementation of CanvasMessage class. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include "canvas-message.hpp" #include "canvas.hpp" CanvasMessage::CanvasMessage() { background.reset(new Gnome::Canvas::Rect(Canvas::instance().text_layer)); background->property_fill_color_rgba() = 0x20202090; text.reset(new Gnome::Canvas::Text(Canvas::instance().text_layer)); text->property_fill_color_rgba() = 0xFFFFFFB0; } void CanvasMessage::set_message(const Glib::ustring &msg, bool centered) { double x1, y1, x2, y2; // FIXME: should probably use Canvas::get_size instead text->get_canvas()->get_scroll_region(x1, y1, x2, y2); text->property_text() = msg; double x, y; if (centered) { y = (y1 + y2) / 2; text->property_size_points() = 16; text->property_anchor() = Gtk::ANCHOR_CENTER; text->property_justification() = Gtk::JUSTIFY_CENTER; pango_layout_set_width(text->gobj()->layout, -1); } else { y = (y1 + y2 * 7) / 8; text->property_size_points() = 14; text->property_anchor() = Gtk::ANCHOR_SOUTH; text->property_justification() = Gtk::JUSTIFY_LEFT; pango_layout_set_width(text->gobj()->layout, int((x2 - x1) * 3/4) * Pango::SCALE); #if 0 g_object_set(G_OBJECT(text->gobj()), "text_width", double((x2 - x1) * 3/4) * 1024, 0); //text->property_text_width() = double((x2 - x1) * 3/4); #endif } x = (x1 + x2) / 2; text->property_x() = x; text->property_y() = y; if (centered) { double xoff = text->property_text_width() / 2, yoff = text->property_text_height() / 2; double const margin = 18; background->property_x1() = x - xoff - margin; background->property_y1() = y - yoff - margin; background->property_x2() = x + xoff + margin; background->property_y2() = y + yoff + margin; } else { double xoff = text->property_text_width() / 2, yoff = text->property_text_height(); double const margin = 16; background->property_x1() = x - xoff - margin; background->property_y1() = y - yoff - margin; background->property_x2() = x + xoff + margin; background->property_y2() = y + margin; } } void CanvasMessage::show() { text->show(); background->show(); } void CanvasMessage::hide() { text->hide(); background->hide(); } monster-masher-1.8.1/src/canvas-message.hpp0000644000175000017500000000235610547745535015630 00000000000000/* CanvasMessage for displaying a sign in the canvas. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef CANVAS_MESSAGE_HPP #define CANVAS_MESSAGE_HPP #include #include #include #include class CanvasMessage { public: CanvasMessage(); void set_message(const Glib::ustring &msg, bool centered = true); void show(); void hide(); private: std::auto_ptr background; std::auto_ptr text; }; #endif monster-masher-1.8.1/src/canvas.cpp0000644000175000017500000000326010547745536014175 00000000000000/* Implementation of class Arena. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include "canvas.hpp" Canvas *Canvas::current_instance = 0; Canvas::Canvas(Gnome::Canvas::Canvas &c) : background_layer(*manage(new Gnome::Canvas::Group(*c.root()))), block_layer(*manage(new Gnome::Canvas::Group(*c.root()))), creature_layer(*manage(new Gnome::Canvas::Group(*c.root()))), text_layer(*manage(new Gnome::Canvas::Group(*c.root()))), canvas(c) { assert(current_instance == 0); current_instance = this; } Canvas::~Canvas() { current_instance = 0; } Canvas &Canvas::instance() { assert(current_instance != 0); return *current_instance; } void Canvas::set_size(Vector s, Vector o) { size = s; offset = o; canvas.set_scroll_region(o.x, o.y, s.x + o.x, s.y + o.y); canvas.set_size_request(s.x, s.y); } Vector Canvas::get_size() { return size; } Vector Canvas::get_offset() { return offset; } monster-masher-1.8.1/src/canvas.hpp0000644000175000017500000000312110547745536014176 00000000000000/* The Canvas class which represents the canvas in the main window. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef CANVAS_HPP #define CANVAS_HPP #include #include #include "helpers.hpp" #include "vector.hpp" class MainWindow; class Canvas: noncopyable { public: // Canvas is a half-way singleton static Canvas &instance(); ~Canvas(); Gnome::Canvas::Group &background_layer; Gnome::Canvas::Group &block_layer; Gnome::Canvas::Group &creature_layer; Gnome::Canvas::Group &text_layer; void set_size(Vector size, Vector offset); Vector get_size(); Vector get_offset(); private: friend class MainWindow; Canvas(Gnome::Canvas::Canvas &canvas); // feed with reference to canvas static Canvas *current_instance; Gnome::Canvas::Canvas &canvas; Vector size, offset; }; #endif monster-masher-1.8.1/src/center-menu.cpp0000644000175000017500000000616710547745535015154 00000000000000/* Implementation of class CenterMenu. * * Copyright (c) 2003, 2004 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include #include #include #include #include "center-menu.hpp" #include "canvas.hpp" #include "ucompose.hpp" CenterMenu::CenterMenu(action_sequence actions, Gtk::Window &window) { Vector size = Canvas::instance().get_size(), offset = Canvas::instance().get_offset(); // center the menu Gtk::Alignment &alignment = *manage(new Gtk::Alignment(0.5, 0.5, 0, 0)); Gtk::VBox &vbox = *manage(new Gtk::VBox(true, 6)); alignment.add(vbox); // generate buttons for (action_sequence::iterator i = actions.begin(), end = actions.end(); i != end; ++i) { Glib::ustring str = String::ucompose("%1", i->label); Gtk::Label &label = *manage(new Gtk::Label(str, 0.0, 0.5, true)); label.set_use_markup(); Gtk::Box &spacer = *manage(new Gtk::HBox); spacer.pack_start(label, Gtk::PACK_EXPAND_WIDGET, 12); Gtk::Button &button = *manage(new Gtk::Button); button.add(spacer); button.signal_clicked().connect(i->callback); button.add_accelerator("activate", window.get_accel_group(), label.get_mnemonic_keyval(), Gdk::ModifierType(), Gtk::ACCEL_VISIBLE); vbox.pack_start(button, Gtk::PACK_SHRINK); } // setup canvas widget widget.reset(new Gnome::Canvas::Widget(Canvas::instance().text_layer, offset.x, offset.y, alignment)); widget->property_width() = size.x; widget->property_height() = size.y; // FIXME: focusing the first widget works fine, but then it is not possible // to move the focus - so disable this for now //vbox.children().front().get_widget()->grab_focus(); // and action alignment.show_all(); widget->show(); // setup background int width, height; vbox.get_size_request(width, height); background.reset(new Gnome::Canvas::Rect(Canvas::instance().text_layer)); background->property_fill_color_rgba() = 0x20202070; Vector midpoint = offset + size / 2; int const margin = 36; background->property_x1() = midpoint.x - (width / 2 + margin); background->property_y1() = midpoint.y - (height / 2 + margin); background->property_x2() = midpoint.x + (width / 2 + margin); background->property_y2() = midpoint.y + (height / 2 + margin); background->show(); } monster-masher-1.8.1/src/center-menu.hpp0000644000175000017500000000267510547745536015162 00000000000000/* A menu that places itself in the middle of the canvas. * * Copyright (c) 2003, 2004 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef CENTER_MENU_HPP #define CENTER_MENU_HPP #include #include #include #include #include #include #include #include "vector.hpp" #include "helpers.hpp" class CenterMenu: noncopyable { public: struct Action { Glib::ustring label; sigc::slot callback; }; typedef std::vector action_sequence; CenterMenu(action_sequence actions, Gtk::Window &window); private: std::auto_ptr widget; std::auto_ptr background; }; #endif monster-masher-1.8.1/src/fading-decoration.cpp0000644000175000017500000000340010547745535016272 00000000000000/* Implementation of class FadingDecoration. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include "fading-decoration.hpp" #include "arena.hpp" #include "graphic.hpp" #include "pixbuf-drawing.hpp" FadingDecoration::FadingDecoration(Graphic *graph, int s, int d) : graphic(graph), original(graphic->get_pixbuf()), steps(s), delay(d) { step_count = delay_count = 0; graphic->set_pixbuf(original->copy()); } FadingDecoration::~FadingDecoration() { } Graphic &FadingDecoration::get_graphic() { return *graphic.get(); } void FadingDecoration::update() { assert(step_count < steps); if (delay_count < delay) ++delay_count; else { delay_count = 0; ++step_count; Glib::RefPtr p = graphic->get_pixbuf(); for (PixelIterator d = begin(p), s = begin(original), e = end(p); d != e; ++d, ++s) d->alpha() = int(s->alpha()) * (steps - step_count) / steps; graphic->set_pixbuf(p); } } bool FadingDecoration::last_frame() { return delay_count == delay - 1 && step_count == steps - 1; } monster-masher-1.8.1/src/fading-decoration.hpp0000644000175000017500000000262310547745535016305 00000000000000/* The FadingDecoration class for transient decorations. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef FADING_DECORATION_HPP #define FADING_DECORATION_HPP #include #include #include "vector.hpp" #include "helpers.hpp" class Graphic; class FadingDecoration: noncopyable { public: // take over ownership of graphic FadingDecoration(Graphic *graphic, int steps, int delay); virtual ~FadingDecoration(); Graphic &get_graphic(); // calling update will fade out gradually void update(); bool last_frame(); private: std::auto_ptr graphic; Glib::RefPtr original; int const steps, delay; int step_count, delay_count; }; #endif monster-masher-1.8.1/src/footsteps.cpp0000644000175000017500000000715210547745536014754 00000000000000/* Implementation of Footsteps class. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include "footsteps.hpp" #include "fading-decoration.hpp" #include "graphic.hpp" #include "game.hpp" #include "canvas.hpp" #include "image-cache.hpp" #include "pixbuf-drawing.hpp" Footsteps::Footsteps() : counter(0), footprint_time(2), towards_left(false), direction(1, 0) { } void Footsteps::update(Vector hero_center) { // The footprints are placed a few pixels away from the center on a // line that is orthogonal with the direction of the hero. The // rotational linear transformation matrix // // R(a) = [ cos(a) -sin(a)] // [ sin(a) cos(a)] // // is used to compute an orthogonal vector. Note that the angle is // reversed because of the reversed y-axis. if (towards_left) { --counter; if (counter <= -footprint_time) { // R(-pi/2) * (x, y) = [ 0 1 ][ -1 0 ] * (x, y) = (y, -x) Vector pos = 3.0 * make_vector(direction.y, -direction.x) + hero_center; place_footprint(pos); towards_left = false; } } else { ++counter; if (counter >= footprint_time) { // R(pi/2) * (x, y) = [ 0 -1 ][ 1 0 ] * (x, y) = (-y, x) Vector pos = 3.0 * make_vector(-direction.y, direction.x) + hero_center; place_footprint(pos); towards_left = true; } } } void Footsteps::orient(Vector dir) { direction = dir; } void Footsteps::turn_around() { towards_left = !towards_left; } void Footsteps::place_footprint(Vector pos) { // generate pixbuf Glib::RefPtr pixbuf = ImageCache::instance().get(image_name()).get()->copy(); scale_alpha(pixbuf, 256 * (std::rand() % 20 + 40) / 100); // randomise position a little pos += make_vector(std::rand() % 5 - 2.0, std::rand() % 5 - 2.0); // setup decoration Graphic *graph = new Graphic(Canvas::instance().background_layer); graph->set_pixbuf(pixbuf); pos -= graph->get_size() / 2; graph->place_at(pos); FadingDecoration *deco = new FadingDecoration(graph, 20, Game::iterations_per_sec / 3); Game::instance().add_decoration(deco); } std::string Footsteps::image_name() { std::string name; if (direction.x == 1 && direction.y == 0) name = "footprint-right"; else if (direction.x == 1 && direction.y == 1) name = "footprint-right-down"; else if (direction.x == 0 && direction.y == 1) name = "footprint-down"; else if (direction.x == -1 && direction.y == 1) name = "footprint-left-down"; else if (direction.x == -1 && direction.y == 0) name = "footprint-left"; else if (direction.x == -1 && direction.y == -1) name = "footprint-left-up"; else if (direction.x == 0 && direction.y == -1) name = "footprint-up"; else name = "footprint-right-up"; if (towards_left) name += "-leftmost.png"; else name += "-rightmost.png"; return name; } monster-masher-1.8.1/src/footsteps.hpp0000644000175000017500000000232410547745536014755 00000000000000/* The Footsteps class for keeping track of a hero's footsteps. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef FOOTSTEPS_HPP #define FOOTSTEPS_HPP #include #include "vector.hpp" class Footsteps { public: Footsteps(); void update(Vector hero_center); void orient(Vector dir); void turn_around(); private: int counter; int const footprint_time; bool towards_left; Vector direction; void place_footprint(Vector pos); std::string image_name(); }; #endif monster-masher-1.8.1/src/game.cpp0000644000175000017500000003444210547745535013640 00000000000000/* Implementation of class Game. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include #include "game.hpp" #include "main-window.hpp" #include "image-cache.hpp" #include "player.hpp" #include "hero.hpp" #include "monsters.hpp" #include "obstacles.hpp" #include "fading-decoration.hpp" #include "persistent.hpp" #include "i18n.hpp" #include "ucompose.hpp" Game *Game::current_instance = 0; Game::Game(int start_level, Vector size, int tile_size) : arena(size, tile_size), paused(false), level(start_level) { current_instance = this; Persistent &per = Persistent::instance(); // setup players for (int i = 1; i <= per.no_of_players; ++i) { Player *p = new Player(i); players.push_back(p); } if (level > 1) { Persistent::LevelInfo &li = per.state[per.no_of_players-1][per.difficulty_level].levels[level - 2]; Player::resurrections = li.resurrections; for (int i = 0; i < per.no_of_players; ++i) players[i]->set_score(li.scores[i]); } else if (level == 1) Player::resurrections = 3 * per.no_of_players; init_level(); // and action! Glib::signal_timeout() .connect(sigc::mem_fun(*this, &Game::main_loop), 1000 / iterations_per_sec); } Game::~Game() { clear_arena(); for (player_sequence::iterator i = players.begin(), end = players.end(); i != end; ++i) delete *i; } Game &Game::instance() { assert(current_instance != 0); return *current_instance; } bool Game::main_loop() { if (paused) return true; switch (state) { case before_level: if (--state_countdown < 0) { MainWindow::instance().remove_message(); state = playing; } break; case playing: process_round(); if (monsters.empty() && eggs.empty()) { MainWindow::instance() .display_message(String::ucompose(_("Level %1 cleared for monsters!"), level)); // update state Persistent::LevelInfo li; li.resurrections = Player::resurrections; li.scores.reserve(players.size()); for (player_sequence::size_type i = 0; i < players.size(); ++i) li.scores.push_back(players[i]->get_score()); Persistent &p = Persistent::instance(); Persistent::StateInfo &pi = p.state[p.no_of_players-1][p.difficulty_level]; if (int(pi.levels.size()) < level) pi.levels.push_back(li); else pi.levels[level - 1] = li; if (level + 1 <= max_levels) pi.last = level + 1; else pi.last = max_levels; Persistent::instance().save_state(); state_countdown = iterations_per_sec; state = passed_level; } else if (!players_alive()) { MainWindow::instance() .display_message(_("And the last hero disappeared...")); state_countdown = iterations_per_sec * 2; state = lost_game; } break; case passed_level: if (--state_countdown < 0) { if (++level == max_levels + 1) { MainWindow::instance() .display_message(_("All levels liberated!")); state_countdown = iterations_per_sec * 10; state = won_game; } else init_level(); } else process_round(); break; case won_game: if (--state_countdown < 0) MainWindow::instance().end_game(); else process_round(); break; case lost_game: if (--state_countdown < 0) MainWindow::instance().end_game(); else process_round(); break; default: break; } return true; // always continue } void Game::key_pressed(unsigned int keyval) { if (!paused) for (std::vector::iterator i = players.begin(), end = players.end(); i != end; ++i) (*i)->key_pressed(keyval); } void Game::key_released(unsigned int keyval) { if (!paused) for (std::vector::iterator i = players.begin(), end = players.end(); i != end; ++i) (*i)->key_released(keyval); } int Game::get_level() { return level; } Vector Game::get_size() { return arena.size - make_vector(2, 2); } void Game::add_decoration(FadingDecoration *deco, Block *block) { decos.push_back(std::make_pair(deco, block)); } void Game::add_monster(Monster *m) { monsters.push_back(m); } void Game::remove_monster(Monster *monster) { monster_sequence::iterator i = find(monsters.begin(), monsters.end(), monster); assert(i != monsters.end()); monsters.erase(i); delete monster; } void Game::generate_monster(Vector pos) { Monster *monster; int sum = plain_monsters + hard_monsters + seeker_monsters + egg_layer_monsters; int no = std::rand() % sum; if (no < plain_monsters) monster = new PlainMonster; else if (no < plain_monsters + hard_monsters) monster = new HardMonster; else if (no < plain_monsters + hard_monsters + seeker_monsters) monster = new SeekerMonster; else monster = new EggLayerMonster; monster->occupy_tile(pos); monsters.push_back(monster); } void Game::generate_egg(Vector pos) { Egg *egg; int sum = plain_monsters + hard_monsters + seeker_monsters + egg_layer_monsters; int no = std::rand() % sum; if (no < plain_monsters) egg = new PlainEgg(pos); else if (no < plain_monsters + hard_monsters) egg = new HardEgg(pos); else if (no < plain_monsters + hard_monsters + seeker_monsters) egg = new SeekerEgg(pos); else egg = new EggLayerEgg(pos); eggs.push_back(egg); } void Game::remove_egg(Egg *egg) { egg_sequence::iterator i = find(eggs.begin(), eggs.end(), egg); assert(i != eggs.end()); eggs.erase(i); delete egg; } void Game::power_up_eaten() { power_up.reset(); set_power_up_time(); } void Game::pause() { paused = true; } void Game::unpause() { paused = false; } void Game::freeze_monsters() { freeze_counter += calc_monster_freeze_time() - 1; } bool Game::monsters_freezing() { return freeze_counter > 0; } int Game::calc_monster_freeze_time() { return (std::rand() % 5 + 12) * iterations_per_sec; } void Game::init_level() { clear_arena(); // reward players if (level > 1) for (player_sequence::iterator i = players.begin(), end = players.end(); i != end; ++i) if ((*i)->get_hero()) (*i)->scored(12); Vector size = arena.size; int tiles = size.x * size.y; create_outer_walls(); if (level == 30) { int const mwidth = 6, mheight = 2; for (int y = size.y/2 - mheight/2; y < size.y/2 + mheight/2; ++y) for (int x = size.x/2 - mwidth/2; x < size.x/2 + mwidth/2; ++x) { MonsterWall *w = new MonsterWall; w->occupy_tile(make_vector(x, y)); monster_walls.push_back(w); } } create_obstacles(int(0.025 * tiles), int(0.35 * tiles)); // lvl pln hrd sek egg-layer batch_create_monsters(1, 12, 0, 0, 0); batch_create_monsters(2, 16, 0, 0, 0); batch_create_monsters(3, 20, 0, 0, 0); batch_create_monsters(4, 24, 0, 0, 0); batch_create_monsters(5, 28, 1, 0, 0); batch_create_monsters(6, 15, 2, 0, 0); batch_create_monsters(7, 15, 4, 0, 0); batch_create_monsters(8, 15, 6, 0, 0); batch_create_monsters(9, 15, 8, 0, 0); batch_create_monsters(10, 20, 0, 1, 0); batch_create_monsters(11, 20, 0, 3, 0); batch_create_monsters(12, 20, 1, 5, 0); batch_create_monsters(13, 20, 2, 6, 0); batch_create_monsters(14, 20, 2, 8, 0); batch_create_monsters(15, 20, 0, 2, 1); batch_create_monsters(16, 20, 0, 4, 2); batch_create_monsters(17, 20, 0, 4, 3); batch_create_monsters(18, 20, 0, 4, 4); batch_create_monsters(19, 20, 0, 4, 5); batch_create_monsters(20, 20, 1, 4, 4); batch_create_monsters(21, 25, 1, 4, 4); batch_create_monsters(22, 30, 1, 4, 4); batch_create_monsters(23, 35, 1, 4, 4); batch_create_monsters(24, 25, 3, 4, 4); batch_create_monsters(25, 20, 5, 4, 4); batch_create_monsters(26, 20, 8, 4, 5); batch_create_monsters(27, 20, 8, 6, 6); batch_create_monsters(28, 20, 8, 8, 7); batch_create_monsters(29, 20, 8, 10, 8); batch_create_monsters(30, 10, 4, 6, 6); for (player_sequence::iterator i = players.begin(), end = players.end(); i != end; ++i) if (!(*i)->is_dead()) (*i)->spawn_hero(); set_power_up_time(); freeze_counter = 0; MainWindow::instance().set_level_info(level); MainWindow::instance() .display_message(String::ucompose(_("Entering level %1..."), level)); state_countdown = iterations_per_sec; state = before_level; } void Game::create_outer_walls() { Vector size = arena.size; Wall *w = 0; // build the walls around the arena for (int x = 1; x < size.x - 1; ++x) { w = new Wall; w->occupy_tile(make_vector(x, 0)); walls.push_back(w); w = new Wall; w->occupy_tile(make_vector(x, size.y - 1)); walls.push_back(w); } for (int y = 0; y < size.y; ++y) { w = new Wall; w->occupy_tile(make_vector(0, y)); walls.push_back(w); w = new Wall; w->occupy_tile(make_vector(size.x - 1, y)); walls.push_back(w); } } void Game::create_obstacles(int no_walls, int no_blocks) { walls.reserve(walls.size() + no_walls); blocks.reserve(blocks.size() + no_blocks); // place random walls for (int i = 0; i < no_walls; ++i) { Wall *w = new Wall; w->occupy_tile(arena.random_tile()); walls.push_back(w); } // and random blocks for (int i = 0; i < no_blocks; ++i) { Block *b = new Block; b->occupy_tile(arena.random_tile()); blocks.push_back(b); } } template void Game::create_monsters(int no) { for (int i = 0; i < no; ++i) { Monster *m = new MonsterType; m->occupy_tile(arena.random_tile()); add_monster(m); } } void Game::batch_create_monsters(int l, int plain, int hard, int seeker, int egg_layer) { if (level == l) { plain_monsters = plain; hard_monsters = hard; seeker_monsters = seeker; egg_layer_monsters = egg_layer; if (Persistent::instance().difficulty_level == difficulty_easy) { // reduce easy-kill monsters by 20%, although round up to avoid 1 // becoming 0 plain_monsters = int(std::ceil(plain_monsters * 0.8)); hard_monsters = int(std::ceil(hard_monsters * 0.8)); } else if (Persistent::instance().difficulty_level == difficulty_hard) { // increase easy-kill monsters by 20% plain_monsters = int(plain_monsters * 1.2); hard_monsters = int(hard_monsters * 1.2); } create_monsters(plain_monsters); create_monsters(hard_monsters); create_monsters(seeker_monsters); create_monsters(egg_layer_monsters); } } void Game::process_round() { // service monsters for (monster_sequence::iterator i = monsters.begin(), end = monsters.end(); i != end; ++i) (*i)->update(); // service eggs - be careful, we might have to remove one for (egg_sequence::iterator i = eggs.begin(), end = eggs.end(); i != end; ) { Egg *egg = *(i++); if (egg->hatch_ready()) { egg->hatch(); remove_egg(egg); } else egg->update(); } // service heros MainWindow::instance().set_resurrections(Player::resurrections); int no = 1; for (player_sequence::iterator i = players.begin(), end = players.end(); i != end; ++i) { Player *p = *i; p->update(); MainWindow::instance().set_player_info(no++, p->get_score()); } // service monster walls for (monster_wall_sequence::iterator i = monster_walls.begin(), end = monster_walls.end(); i != end; ++i) (*i)->update(); // service power up if (power_up_counter > 0) --power_up_counter; else { if (power_up.get()) { power_up.reset(); set_power_up_time(); } else { // prevent diamond harvesting when few monsters if (monsters.size() > 15) { int i = std::rand() % 3; if (i == 0) power_up.reset(new InvisibilityPowerUp); else if (i == 1) power_up.reset(new FreezePowerUp); else if (i == 2) power_up.reset(new ExplodePowerUp); } set_power_up_time(); } } // service decorations for (deco_sequence::iterator i = decos.begin(), end = decos.end(); i != end;) { FadingDecoration *d = i->first; d->update(); if (d->last_frame()) { if (Block *block = i->second) block->remove_cargo(&d->get_graphic()); delete d; decos.erase(i++); } else ++i; } if (freeze_counter > 0) --freeze_counter; } bool Game::players_alive() { for (player_sequence::iterator i = players.begin(), end = players.end(); i != end; ++i) if (!(*i)->is_dead()) return true; return false; } void Game::clear_arena() { for (deco_sequence::iterator i = decos.begin(), end = decos.end(); i != end; ++i) { FadingDecoration *d = i->first; if (Block *block = i->second) block->remove_cargo(&d->get_graphic()); delete d; } decos.clear(); for (player_sequence::iterator i = players.begin(), end = players.end(); i != end; ++i) (*i)->clear_hero(); for (monster_sequence::iterator i = monsters.begin(), end = monsters.end(); i != end; ++i) delete *i; monsters.clear(); for (egg_sequence::iterator i = eggs.begin(), end = eggs.end(); i != end; ++i) delete *i; eggs.clear(); for (wall_sequence::iterator i = walls.begin(), end = walls.end(); i != end; ++i) delete *i; walls.clear(); for (monster_wall_sequence::iterator i = monster_walls.begin(), end = monster_walls.end(); i != end; ++i) delete *i; monster_walls.clear(); power_up.reset(); for (block_sequence::iterator i = blocks.begin(), end = blocks.end(); i != end; ++i) delete *i; blocks.clear(); } void Game::set_power_up_time() { if (power_up.get()) power_up_counter = (10 + std::rand() % 20) * iterations_per_sec; else power_up_counter = (10 + std::rand() % 10) * iterations_per_sec; } monster-masher-1.8.1/src/game.hpp0000644000175000017500000000712010547745535013636 00000000000000/* The Game class contains the objects that participate in the current game. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef GAME_HPP #define GAME_HPP #include #include #include #include #include #include #include "helpers.hpp" #include "vector.hpp" #include "arena.hpp" class Monster; class Egg; class Player; class Graphic; class Wall; class MonsterWall; class Block; class PowerUp; class FadingDecoration; class Game: public sigc::trackable, noncopyable { public: Game(int start_level, Vector size, int tile_size); ~Game(); // Game is a half-way singleton static Game &instance(); bool main_loop(); void pause(); void unpause(); static int const iterations_per_sec = 50; void key_pressed(unsigned int keyval); void key_released(unsigned int keyval); int get_level(); Vector get_size(); // assume ownership of decoration, possibly attached to block void add_decoration(FadingDecoration *deco, Block *block = 0); void add_monster(Monster *monster); // take over ownership of monster void remove_monster(Monster *monster); void generate_monster(Vector pos); // generate and add a monster void generate_egg(Vector pos); // generate and add an egg void remove_egg(Egg *egg); void power_up_eaten(); void freeze_monsters(); bool monsters_freezing(); // whether monsters are being freezed int calc_monster_freeze_time(); typedef std::vector player_sequence; player_sequence players; // the following sequences must be lists since we sometimes delete in the // middle of them while iterating through them typedef std::list monster_sequence; monster_sequence monsters; typedef std::list egg_sequence; egg_sequence eggs; static const int max_levels = 30; private: Arena arena; enum { before_level, playing, passed_level, won_game, lost_game } state; int state_countdown; bool paused; int level; int plain_monsters, hard_monsters, seeker_monsters, egg_layer_monsters; void init_level(); void create_outer_walls(); void create_obstacles(int no_blocks, int no_walls); template void create_monsters(int no); void batch_create_monsters(int l, int plain, int hard, int seeker, int eggl); void process_round(); bool players_alive(); void clear_arena(); void set_power_up_time(); typedef std::vector wall_sequence; wall_sequence walls; typedef std::vector monster_wall_sequence; monster_wall_sequence monster_walls; typedef std::vector block_sequence; block_sequence blocks; typedef std::pair deco_pair; typedef std::list deco_sequence; deco_sequence decos; std::auto_ptr power_up; int power_up_counter; int freeze_counter; static Game *current_instance; }; #endif monster-masher-1.8.1/src/graphic.cpp0000644000175000017500000000311210547745536014333 00000000000000/* Implementation of class Graphic. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include "graphic.hpp" #include "helpers.hpp" Graphic::Graphic(Gnome::Canvas::Group &group) : canvas_pixbuf(new Gnome::Canvas::Pixbuf(group)) {} Graphic::~Graphic() {} void Graphic::set_pixbuf(const Glib::RefPtr &p) { canvas_pixbuf->property_pixbuf() = p; } Glib::RefPtr Graphic::get_pixbuf() { return canvas_pixbuf->property_pixbuf(); } void Graphic::place_at(Vector pos) { move(pos - get_pos()); } void Graphic::move(Vector delta) { canvas_pixbuf->move(delta.x, delta.y); } Vector Graphic::get_pos() { double x = 0, y = 0; canvas_pixbuf->i2w(x, y); return make_vector(x, y); } Vector Graphic::get_size() { Glib::RefPtr p = canvas_pixbuf->property_pixbuf(); return make_vector(p->get_width(), p->get_height()); } monster-masher-1.8.1/src/graphic.hpp0000644000175000017500000000257010547745536014347 00000000000000/* The Graphic class which maintains (x, y) position together with an image on * canvas. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef GRAPHIC_HPP #define GRAPHIC_HPP #include #include #include "vector.hpp" #include "helpers.hpp" class Graphic: noncopyable { public: Graphic(Gnome::Canvas::Group &group); virtual ~Graphic(); void set_pixbuf(const Glib::RefPtr &p); Glib::RefPtr get_pixbuf(); void place_at(Vector pos); void move(Vector delta); Vector get_pos(); Vector get_size(); private: std::auto_ptr canvas_pixbuf; }; #endif monster-masher-1.8.1/src/gui-helpers.hpp0000644000175000017500000000237710547745536015163 00000000000000/* GUI helper functions. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef GUI_HELPERS_HPP #define GUI_HELPERS_HPP #include #include #include #include "helpers.hpp" // helper for loading a Glade XML file inline Glib::RefPtr get_glade_xml(Glib::ustring root) { try { return Gnome::Glade::Xml::create(MONSTER_MASHER_GLADE_DIR "ui.glade", root); } catch (Gnome::Glade::XmlError &error) { fatal_error(error.what()); return Glib::RefPtr(); } } #endif monster-masher-1.8.1/src/helpers.cpp0000644000175000017500000000316410547745535014366 00000000000000/* Helper functions. * * Copyright (c) 2002, 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include #include #include #include #include "ucompose.hpp" #include "helpers.hpp" #include "i18n.hpp" void fatal_error(const Glib::ustring &msg) { Gtk::MessageDialog d(msg, Gtk::MESSAGE_ERROR); d.set_modal(); d.set_title(_("Fatal error")); d.run(); exit(1); } Glib::RefPtr load_pixbuf(const std::string &name) { try { return Gdk::Pixbuf::create_from_file(MONSTER_MASHER_PIXMAP_DIR + name); } catch(Glib::Error &e) { fatal_error(String::ucompose(_("%1. " "Check your installation or report " "the problem to the distributor " "if you installed from a package."), e.what())); return Glib::RefPtr(); // prevent compiler warnings } } monster-masher-1.8.1/src/helpers.hpp0000644000175000017500000000240410547745535014367 00000000000000/* Helper functions. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef HELPERS_HPP #define HELPERS_HPP #include #include #include // from www.boost.org - derivation from this class makes the derived class // noncopyable class noncopyable { protected: noncopyable() {} ~noncopyable() {} private: noncopyable(const noncopyable&); const noncopyable& operator=(const noncopyable&); }; void fatal_error(const Glib::ustring &msg); Glib::RefPtr load_pixbuf(const std::string &name); #endif monster-masher-1.8.1/src/hero.cpp0000644000175000017500000002211710547745536013661 00000000000000/* Implementation of Hero class. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include "hero.hpp" #include "arena.hpp" #include "canvas.hpp" #include "game.hpp" #include "graphic.hpp" #include "monsters.hpp" #include "obstacles.hpp" #include "image-cache.hpp" #include "player.hpp" #include "splat-helpers.hpp" #include "sound.hpp" int const hero_move_rounds = 6; Hero::Hero(Player &p) : Thing(new Graphic(Canvas::instance().creature_layer)), movement(*this, hero_move_rounds), player(p), queued_move_dir(0, 0), invisible(0) { get_graphic().set_pixbuf(ImageCache::instance() .get(Arena::instance().tile_name("hero-right.png")) .get()); } Hero::~Hero() { unlevitate_blocks(); } void Hero::update() { if (invisible > 0) { --invisible; if (invisible == 0) orient_hero(); // update appearance } if (monster_encountered()) { // place a gore spot on the floor const Images &gore = ImageCache::instance() .get(Arena::instance().tile_name("hero-gore.png"), 8); splat_on_floor(get_graphic().get_pos(), gore.get(std::rand() % gore.size())); // FIXME: play sound player.kill_hero(); return; } if (movement.is_moving()) { bool halfway = movement.is_halfway(); if (!movement.has_left_tile()) { if (valid_dir(move_dir)) { levitate_blocks(move_dir); if (halfway) cross_boundary(move_dir); } else { unlevitate_blocks(); footsteps.turn_around(); movement.turn_around(); } } movement.update(); footsteps.update(get_graphic().get_pos() + Vector(get_graphic().get_size() / 2)); // first pull when we've moved if (halfway && pull && pullable_block(tile_pos - 2 * move_dir)) pull_block(tile_pos - 2 * move_dir, move_dir); } else { // make sure we are not levitating blocks unlevitate_blocks(); // check if a move has been ordered if (tile_pos + queued_move_dir != tile_pos) { move_dir = queued_move_dir; queued_move_dir = make_vector(0, 0); pull = queued_pull; orient_hero(); if (valid_dir(move_dir)) initiate_move(); } } } void Hero::order_move(Vector dir, bool d) { queued_move_dir = dir; queued_pull = d; } void Hero::make_invisible() { invisible = Game::iterations_per_sec * 20; orient_hero(); // update appearance } bool Hero::is_invisible() { return invisible > 0; } bool Hero::valid_dir(Vector dir) { Vector tile = tile_pos + dir; Thing *thing = Arena::instance().occupier(tile); if (!thing) return true; else if (dynamic_cast(thing)) return true; else if (dynamic_cast(thing) && !pull) { // consider whether we can push this block for (;;) { tile += dir; thing = Arena::instance().occupier(tile); if (!thing) return true; else if (dynamic_cast(thing)) return false; else if (dynamic_cast(thing)) return false; else if (dynamic_cast(thing)) return false; else if (dynamic_cast(thing)) return false; else if (Monster *m = dynamic_cast(thing)) { // check whether next tile is good for splatting tile += dir; thing = Arena::instance().occupier(tile); if (dynamic_cast(thing) || dynamic_cast(thing) && !m->hard) return true; else return false; } else if (dynamic_cast(thing)) return true; // we can always splat eggs directly } } else return false; } void Hero::cross_boundary(Vector dir) { Vector tile = tile_pos + dir; Thing *next = Arena::instance().occupier(tile); Block *block = dynamic_cast(next); // no blocks if (!block) { // but perhaps a power up if (PowerUp *power_up = dynamic_cast(next)) power_up->eat(player); return; } // else move each encountered block do { tile += dir; next = Arena::instance().occupier(tile); block->move_block_to(tile); block = dynamic_cast(next); } while (block); if (Monster *monster = dynamic_cast(next)) { // we splatted a monster monster->splat(dir); player.scored(monster->kill_score); Game::instance().remove_monster(monster); } else if (Egg *egg = dynamic_cast(next)) { // we splatted an egg egg->splat(dir); player.scored(Egg::kill_score); Game::instance().remove_egg(egg); } next = Arena::instance().occupier(tile + dir); if (dynamic_cast(next) || dynamic_cast(next)) Sound::instance().play("clinck.wav"); } bool Hero::pullable_block(Vector tile) { Arena &arena = Arena::instance(); // it needs to be a block if (!dynamic_cast(arena.occupier(tile))) return false; // we don't allow monsters around the block, then it would be too easy to // splat them by repeatedly pulling and pushing if (dynamic_cast(arena.occupier(tile + make_vector(-1,-1))) || dynamic_cast(arena.occupier(tile + make_vector( 0,-1))) || dynamic_cast(arena.occupier(tile + make_vector( 1,-1))) || dynamic_cast(arena.occupier(tile + make_vector(-1, 0))) || dynamic_cast(arena.occupier(tile + make_vector( 1, 0))) || dynamic_cast(arena.occupier(tile + make_vector(-1, 1))) || dynamic_cast(arena.occupier(tile + make_vector( 0, 1))) || dynamic_cast(arena.occupier(tile + make_vector( 1, 1)))) return false; else return true; } void Hero::pull_block(Vector tile, Vector dir) { Block *block = dynamic_cast(Arena::instance().occupier(tile)); assert(block != 0); Arena::instance().occupy(tile, 0); block->move_block_to(tile + dir); } Monster *Hero::monster_encountered() { for (Game::monster_sequence::iterator i = Game::instance().monsters.begin(), end = Game::instance().monsters.end(); i != end; ++i) // the collision detection is rather crude, simply distance if (dist((*i)->get_graphic().get_pos(), get_graphic().get_pos()) < Arena::instance().tile_size / 2) return *i; return 0; } void Hero::orient_hero() { // first check that the pull isn't completely bogus if (pull && !dynamic_cast(Arena::instance().occupier(tile_pos - move_dir))) pull = false; // determine direction - reverse it when attempting pull Vector dir; if (pull) dir = -move_dir; else dir = move_dir; footsteps.orient(dir); // update pixbuf std::string im; if (dir.x == 1 && dir.y == 0) im = "hero-right.png"; else if (dir.x == 1 && dir.y == 1) im = "hero-right-down.png"; else if (dir.x == 0 && dir.y == 1) im = "hero-down.png"; else if (dir.x == -1 && dir.y == 1) im = "hero-left-down.png"; else if (dir.x == -1 && dir.y == 0) im = "hero-left.png"; else if (dir.x == -1 && dir.y == -1) im = "hero-left-up.png"; else if (dir.x == 0 && dir.y == -1) im = "hero-up.png"; else im = "hero-right-up.png"; if (is_invisible()) im = "invisible-" + im; get_graphic().set_pixbuf(ImageCache::instance() .get(Arena::instance().tile_name(im)).get()); } void Hero::initiate_move() { movement.head(move_dir); // abort pull if really not possible if (pull && !pullable_block(tile_pos - move_dir)) pull = false; } void Hero::levitate_blocks(Vector dir) { if (pull) { Vector tile = tile_pos - dir; Block *block = dynamic_cast(Arena::instance().occupier(tile)); if (block) { block->levitate(0); unlevitate_blocks(); levitated_blocks.push_back(block); } } else { Vector tile = tile_pos + dir; Thing *next = Arena::instance().occupier(tile); Block *block = dynamic_cast(next); // no blocks if (!block) return; std::vector blocks; int distance = 0; // build a new set of encountered block do { tile += dir; next = Arena::instance().occupier(tile); blocks.push_back(block); block->levitate(distance++); block = dynamic_cast(next); } while (block); // unlevitate old ones unlevitate_blocks(); levitated_blocks = blocks; } } void Hero::unlevitate_blocks() { for (std::vector::iterator i = levitated_blocks.begin(), end = levitated_blocks.end(); i != end; ++i) (*i)->unlevitate(); levitated_blocks.clear(); } monster-masher-1.8.1/src/hero.hpp0000644000175000017500000000406410547745536013667 00000000000000/* The Hero class for representing a good guy in the arena. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef HERO_HPP #define HERO_HPP #include #include #include "footsteps.hpp" #include "movement.hpp" #include "vector.hpp" #include "thing.hpp" class Player; class Monster; class Animation; class Block; class Hero: public Thing { public: Hero(Player &p); ~Hero(); void update(); void order_move(Vector dir, bool pull); void make_invisible(); bool is_invisible(); private: Movement movement; Footsteps footsteps; Player &player; std::vector levitated_blocks; Vector move_dir; bool pull; // queued order Vector queued_move_dir; bool queued_pull; int invisible; // check whether it is possible to go in dir, perhaps pushing blocks bool valid_dir(Vector dir); // possibly move a row of blocks or eat power up in direction void cross_boundary(Vector dir); // whether there is a block we can pull on the tile bool pullable_block(Vector tile); void pull_block(Vector tile, Vector dir); // check whether we encountered a monster, return it if we did Monster *monster_encountered(); void orient_hero(); void initiate_move(); void levitate_blocks(Vector dir); // requires dir to be a valid_dir void unlevitate_blocks(); }; #endif monster-masher-1.8.1/src/i18n.hpp0000644000175000017500000000216210547745536013506 00000000000000/* Internationalisation functions. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef MONSTER_MASHER_I18N_HPP #define MONSTER_MASHER_I18N_HPP #ifndef GETTEXT_PACKAGE #error "config.h must be included prior to i18n.hpp" #endif #include #include #ifdef _ #undef _ #endif #ifdef N_ #undef N_ #endif //#define _(x) dgettext (GETTEXT_PACKAGE, x) #define _(x) gettext (x) #define N_(x) x #endif monster-masher-1.8.1/src/image-cache.cpp0000644000175000017500000000403310547745536015044 00000000000000/* Implementation of the ImageCache class. * * Copyright (c) 2002, 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include "helpers.hpp" #include "image-cache.hpp" ImageCache &ImageCache::instance() { static ImageCache c; return c; } ImageCache::ImageCache() { } ImageCache::~ImageCache() { for (cache_map::iterator i = cache.begin(), end = cache.end(); i != end; ++i) delete i->second; } const Images &ImageCache::get(const std::string &filename, int no) { Images *data = cache[filename]; if (data == 0) { data = new Images(filename, no); cache[filename] = data; } return *data; } Images::Images(const std::string &file, int no) { Glib::RefPtr row = load_pixbuf(file); images.reserve(no); if (no == 1) images.push_back(row); else { int h = row->get_height(); int w = row->get_width() / no; // disassemble row for (int x = 0; x < no; ++x) { Glib::RefPtr buf = Gdk::Pixbuf::create(row->get_colorspace(), row->get_has_alpha(), row->get_bits_per_sample(), w, h); row->copy_area(x * w, 0, w, h, buf, 0, 0); images.push_back(buf); } } } Glib::RefPtr Images::get(int no) const { assert(no >= 0 && no < size()); return images[no]; } int Images::size() const { return images.size(); } monster-masher-1.8.1/src/image-cache.hpp0000644000175000017500000000327610547745536015061 00000000000000/* The ImageCache class which can be queried for images, loading them with lazy * initialization. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef IMAGE_CACHE_HPP #define IMAGE_CACHE_HPP #include #include #include #include #include "helpers.hpp" class Images; class ImageCache: noncopyable { public: // ImageCache is a singleton static ImageCache &instance(); ~ImageCache(); // get a number of concatenated images const Images &get(const std::string &filename, int no = 1); private: ImageCache(); typedef std::map cache_map; cache_map cache; }; // an image sequence class Images: noncopyable { public: // load no. images from file in which they are arranged side-by-side Images(const std::string &file, int no); Glib::RefPtr get(int no = 0) const; int size() const; private: typedef std::vector > image_sequence; image_sequence images; }; #endif monster-masher-1.8.1/src/intro.cpp0000644000175000017500000001163510547745536014062 00000000000000/* Implementation of Intro class. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include "intro.hpp" #include "main-window.hpp" #include "i18n.hpp" Intro::Intro() : state(0) { Glib::signal_timeout() .connect(sigc::mem_fun(*this, &Intro::main_loop), 1000 / iterations_per_sec); update(); // setup first screen } Intro::~Intro() { MainWindow::instance().remove_message(); } void Intro::key_pressed(unsigned int keyval) { switch (keyval) { case GDK_space: case GDK_Return: case GDK_KP_Enter: { bool changed; do { changed = update(); } while (!changed); } break; case GDK_Escape: MainWindow::instance().intro_finished(); break; } } bool Intro::main_loop() { update(); return true; } bool Intro::update() { MainWindow &mw = MainWindow::instance(); bool changed = true; int sum = 0; if (state == sum) mw.display_message(_("In the old days, before man entered the " "world, the gnomes were abundant."), false); else if (state == (sum += 5)) mw.display_message(_("Through centuries of hard labour, only " "slightly eased by the levitational " "powers provided to them by their god, " "they bored out shafts and caves in the " "mountains."), false); else if (state == (sum += 10)) mw.display_message(_("Always seeking the precious stones and " "valuable ore..."), false); else if (state == (sum += 5)) mw.display_message(_("But one clan dug deeper than the " "others. Only its wealth was growing " "quicker than its greed."), false); else if (state == (sum += 7)) mw.display_message(_("The years went by. The chief of the " "clan became the king of the gnomes. " "Thousands of men, women and children " "were sent to work in the deepest, most " "profitable mines."), false); else if (state == (sum += 10)) mw.display_message(_("Then one day a large deposit of coal " "was found. Or so it was thought..."), false); else if (state == (sum += 6)) mw.display_message(_("From the black carbon, a strange " "creature rose!"), false); else if (state == (sum += 5)) mw.display_message(_("The first moments of surprise among " "the workers were replaced with horror " "as hundreds of other shapes broke out " "of the vein, crushing everything and " "everybody on their way."), false); else if (state == (sum += 10)) mw.display_message(_("For months, the clan fought the " "monsters. Only a handful of messengers " "sent out to warn the other clans " "survived."), false); else if (state == (sum += 7)) mw.display_message(_("The world of the gnomes was " "threatened..."), false); else if (state == (sum += 5)) mw.display_message(_("By the black monsters made of carbon " "harder than steel, mechanical in their " "stupidity; but deadly."), false); else if (state == (sum += 8)) mw.display_message(_("By the armoured monsters so " "well-protected that only the bed-rock " "was hard enough to slay them."), false); else if (state == (sum += 8)) mw.display_message(_("By the seekers, sneaky and tricky, red " "from the gnome blood that their spikes " "had spilled."), false); else if (state == (sum += 8)) mw.display_message(_("And by the blue egg layers that " "multiplied their number by thousands."), false); else if (state == (sum += 7)) mw.display_message(_("The only remaining hope of the gnomes " "was a humble levitation worker. He had " "found a way to mash the monsters " "against the mountain rocks."), false); else if (state == (sum += 10)) mw.display_message(_("That hope is you."), false); else if (state == (sum += 5)) mw.display_message(_("You must battle your way deep into the " "mountains, past each of the levels of " "the clan of the kings and clear the way " "for the rock summoners to block the " "vein."), false); else if (state == (sum += 10)) mw.display_message(_("Only then can the gnomes survive..."), false); else if (state == (sum += 12)) ; // do nothing, just wait else if (state >= (sum += 1)) mw.intro_finished(); else changed = false; ++state; return changed; } monster-masher-1.8.1/src/intro.hpp0000644000175000017500000000217310547745536014064 00000000000000/* The intro class for showing the introduction. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef INTRO_HPP #define INTRO_HPP #include "helpers.hpp" #include class Intro: public sigc::trackable, noncopyable { public: Intro(); ~Intro(); void key_pressed(unsigned int keyval); private: int state; bool main_loop(); bool update(); static int const iterations_per_sec = 1; }; #endif monster-masher-1.8.1/src/main-window.cpp0000644000175000017500000003057410547745536015163 00000000000000/* Implementation of MainWindow. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include #include #include #include #include "main-window.hpp" #include "preferences-window.hpp" #include "new-game-window.hpp" #include "intro.hpp" #include "game.hpp" #include "canvas.hpp" #include "canvas-message.hpp" #include "center-menu.hpp" #include "graphic.hpp" #include "pixbuf-drawing.hpp" #include "image-cache.hpp" #include "i18n.hpp" #include "gui-helpers.hpp" #include "ucompose.hpp" // forward declaration Glib::RefPtr generate_background_sand(Vector size); int const tiles_x = 30, tiles_y = 22; const char splash_filename[] = "splash.jpg"; MainWindow &MainWindow::instance() { static MainWindow w; return w; } MainWindow::MainWindow() : gconf_dir("/apps/monster-masher") { // load icon std::string icon_name = GNOMEICONDIR "/monster-masher.png"; try { icon = Gdk::Pixbuf::create_from_file(icon_name); } catch(...) { std::cerr << String::ucompose(_("Monster Masher: cannot load the icon \"%1\".\n"), icon_name); // it's a minor problem if we can't find the icon icon = Glib::RefPtr(); } // setup gconf gconf_client = Gnome::Conf::Client::get_default_client(); gconf_client->add_dir(gconf_dir); // start constructing window ui = get_glade_xml("main_window"); ui->get_widget("main_window", window); window->set_icon(icon); ui->get_widget("resurrections_label", resurrections_label); ui->get_widget("player1_status_label", player1_status_label); ui->get_widget("player2_status_label", player2_status_label); ui->get_widget("level_label", level_label); resurrections_label->set_text(""); player1_status_label->set_text(""); player2_status_label->set_text(""); level_label->set_text(""); // setup window fullscreen = gconf_client->get_bool(gconf_dir + "/fullscreen"); if (fullscreen) window->fullscreen(); calculate_tile_size(); // setup canvas Gtk::Frame *canvas_frame; ui->get_widget("canvas_frame", canvas_frame); Gnome::Canvas::Canvas *canvas_ptr = manage(new Gnome::Canvas::CanvasAA); canvas_frame->add(*canvas_ptr); canvas.reset(new Canvas(*canvas_ptr)); set_canvas_size(tile_size * make_vector(tiles_x, tiles_y), make_vector(0, 0)); set_background(ImageCache::instance().get(splash_filename).get()); generate_main_menu(); // connect GConf gconf_client->notify_add(gconf_dir + "/fullscreen", sigc::mem_fun(*this, &MainWindow::fullscreen_listener)); // connect various window->signal_key_press_event() .connect_notify(sigc::mem_fun(*this, &MainWindow::on_key_press_event)); window->signal_key_release_event() .connect_notify(sigc::mem_fun(*this, &MainWindow::on_key_release_event)); canvas_ptr->add_events(Gdk::BUTTON_PRESS_MASK); canvas_ptr->signal_button_press_event() .connect_notify(sigc::mem_fun(*this, &MainWindow::on_button_press_event)); // connect window closement window->signal_delete_event() .connect(sigc::mem_fun(*this, &MainWindow::on_closed)); window->set_resizable(true); // FIXME: work around for GTK+ fullscreen bug window->show_all(); } MainWindow::~MainWindow() { // make sure menu doesn't try to hide message when we are dead intro.reset(); center_menu.reset(); } Gtk::Window &MainWindow::get_window() { return *window; } void MainWindow::set_canvas_size(Vector size, Vector offset) { canvas->set_size(size, offset); // the window will actually be larger than this because of menus etc. window->resize(size.x, size.y); } void MainWindow::set_resurrections(int resurrections) { resurrections_label->set_text(String::ucompose(_("Resurrections: %1"), resurrections)); } void MainWindow::set_player_info(int player_no, int score) { Glib::ustring s = String::ucompose(_("Score: %1"), score); if (player_no == 1) player1_status_label->set_text(s); else player2_status_label->set_text(s); } void MainWindow::set_level_info(int level) { level_label->set_text(String::ucompose(_("Level: %1"), level)); } void MainWindow::display_message(const Glib::ustring &message, bool centered) { if (!canvas_message.get()) canvas_message.reset(new CanvasMessage); canvas_message->set_message(message, centered); canvas_message->show(); } void MainWindow::remove_message() { if (canvas_message.get()) canvas_message->hide(); } void MainWindow::start_new_game(int start_level) { // make sure no old info is hanging around resurrections_label->set_text(""); player1_status_label->set_text(""); player2_status_label->set_text(""); level_label->set_text(""); Vector size = tile_size * make_vector(tiles_x, tiles_y); center_menu.reset(); game.reset(); // make sure old is gone before creating new // offset the region so that we get to see only half of each of the outer // wall boundary tiles Vector offset(tile_size / 2, tile_size / 2); MainWindow::instance().set_canvas_size(size, offset); set_background(generate_background_sand(size)); game.reset(new Game(start_level, make_vector(tiles_x - 1, tiles_y - 1), tile_size)); } void MainWindow::end_game() { remove_message(); game.reset(); set_background(ImageCache::instance().get(splash_filename).get()); generate_main_menu(); } void MainWindow::intro_finished() { intro.reset(); generate_main_menu(); } void MainWindow::generate_main_menu() { CenterMenu::action_sequence actions; CenterMenu::Action a; a.label = _("_New game"); a.callback = sigc::mem_fun(*this, &MainWindow::on_new_game_activated); actions.push_back(a); a.label = _("_Introduction"); a.callback = sigc::mem_fun(*this, &MainWindow::on_introduction_activated); actions.push_back(a); a.label = _("_Preferences"); a.callback = sigc::mem_fun(*this, &MainWindow::on_preferences_activated); actions.push_back(a); a.label = _("_About"); a.callback = sigc::mem_fun(*this, &MainWindow::on_about_activated); actions.push_back(a); a.label = _("_Quit"); a.callback = sigc::mem_fun(*this, &MainWindow::on_quit_activated); actions.push_back(a); center_menu.reset(new CenterMenu(actions, get_window())); } void MainWindow::generate_game_menu() { CenterMenu::action_sequence actions; CenterMenu::Action a; a.label = _("_Resume game"); a.callback = sigc::mem_fun(*this, &MainWindow::on_resume_game_activated); actions.push_back(a); a.label = _("Re_start level"); a.callback = sigc::mem_fun(*this, &MainWindow::on_restart_level_activated); actions.push_back(a); a.label = _("_End game"); a.callback = sigc::mem_fun(*this, &MainWindow::on_end_game_activated); actions.push_back(a); center_menu.reset(new CenterMenu(actions, get_window())); } void MainWindow::set_background(Glib::RefPtr pixbuf) { Vector extra_offset(0, 0); if (pixbuf->get_width() > tile_size * tiles_x) extra_offset.x -= (pixbuf->get_width() - tile_size * tiles_x) / 2; if (pixbuf->get_height() > tile_size * tiles_y) extra_offset.y -= (pixbuf->get_height() - tile_size * tiles_y) / 2; background.reset(new Graphic(canvas->background_layer)); background->set_pixbuf(pixbuf); background->place_at(canvas->get_offset() + extra_offset); } void MainWindow::calculate_tile_size() { // setup tile size tile_size = 24; int margin = 0; if (!fullscreen) margin = 64; // this should compensate for panel + window border // include border walls if (Gdk::screen_width() >= 32 * (tiles_x + 1) + margin && Gdk::screen_height() >= 32 * (tiles_y + 1) + margin) tile_size = 32; } // callbacks void MainWindow::fullscreen_listener(unsigned int, Gnome::Conf::Entry entry) { if (entry.get_value().get_type() != Gnome::Conf::VALUE_BOOL) return; bool b = entry.get_value().get_bool(); if (b != fullscreen) { if (b) window->fullscreen(); else window->unfullscreen(); calculate_tile_size(); fullscreen = b; set_canvas_size(tile_size * make_vector(tiles_x, tiles_y), make_vector(0, 0)); set_background(ImageCache::instance().get(splash_filename).get()); } #if (0) Gtk::Table *outer_table; ui->get_widget("outer_table", outer_table); Gdk::Color clr; unsigned int color = 0x00000000; clr.set_rgb(((color >> 24) & 0xff) * 256, ((color >> 16) & 0xff) * 256, ((color >> 8) & 0xff) * 256); window->modify_bg(Gtk::STATE_NORMAL, clr); window->modify_bg(Gtk::STATE_ACTIVE, clr); window->modify_bg(Gtk::STATE_PRELIGHT, clr); window->modify_bg(Gtk::STATE_SELECTED, clr); window->modify_bg(Gtk::STATE_INSENSITIVE, clr); #endif } void MainWindow::on_new_game_activated() { if (new_game_window.get() == 0) { new_game_window.reset(new NewGameWindow); new_game_window->show(); } else { new_game_window->show(); new_game_window->raise(); } } void MainWindow::on_resume_game_activated() { game->unpause(); center_menu.reset(); } void MainWindow::on_restart_level_activated() { center_menu.reset(); start_new_game(game->get_level()/*, game->get_size()*/); } void MainWindow::on_end_game_activated() { end_game(); } void MainWindow::on_introduction_activated() { center_menu.reset(); intro.reset(new Intro); } void MainWindow::on_preferences_activated() { if (preferences_window.get() == 0) { preferences_window.reset(new PreferencesWindow); preferences_window->show(); } else { preferences_window->show(); preferences_window->raise(); } } void MainWindow::on_quit_activated() { window->hide(); } void MainWindow::on_about_activated() { std::vector authors; authors.push_back("Ole Laursen "); std::vector documenters; // add documenters here Glib::ustring description = _("Fast-paced monster mashing game for GNOME. Splat the monsters " "before they roll over you and take over the world of the gnomes!"); if (about.get() == 0) { about.reset(new Gtk::AboutDialog()); about->set_name(_("Monster Masher")); about->set_version(VERSION); // %1 is the copyright symbol about->set_copyright(String::ucompose(_("Copyright %1 2003 Ole Laursen"), "\xc2\xa9")); about->set_authors(authors); if (!documenters.empty()) about->set_documenters(documenters); about->set_comments(description); // note to translators: please fill in your names and email addresses about->set_translator_credits(_("translator-credits")); about->set_logo(icon); about->set_icon(icon); about->show(); } else { about->show(); about->raise(); } } void MainWindow::on_key_press_event(GdkEventKey *event) { if (intro.get()) intro->key_pressed(event->keyval); else if (game.get()) { if (event->keyval == GDK_Escape) if (center_menu.get()) on_resume_game_activated(); else { game->pause(); generate_game_menu(); } game->key_pressed(event->keyval); } } void MainWindow::on_key_release_event(GdkEventKey *event) { if (game.get()) game->key_released(event->keyval); } void MainWindow::on_button_press_event(GdkEventButton* event) { if (game.get()) if (center_menu.get()) on_resume_game_activated(); else { game->pause(); generate_game_menu(); } } bool MainWindow::on_closed(GdkEventAny *) { return false; } Glib::RefPtr generate_background_sand(Vector size) { Glib::RefPtr p = Gdk::Pixbuf::create(Gdk::COLORSPACE_RGB, false, 8, size.x, size.y); for (PixelIterator i = begin(p), e = end(p); i != e; ++i) { i->red() = 200 + std::rand() % 30 - 15; i->blue() = 200 + std::rand() % 30 - 15; i->green() = 200 + std::rand() % 30 - 15; } return p; } monster-masher-1.8.1/src/main-window.hpp0000644000175000017500000000641410547745535015163 00000000000000/* Main window class. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef MAIN_WINDOW_HPP #define MAIN_WINDOW_HPP #include #include #include #include #include #include #include #include #include "helpers.hpp" #include "vector.hpp" class Canvas; class PreferencesWindow; class NewGameWindow; class CanvasMessage; class Graphic; class Intro; class Game; class CenterMenu; class MainWindow: public sigc::trackable, noncopyable { public: // MainWindow is a singleton static MainWindow &instance(); ~MainWindow(); void set_canvas_size(Vector size, Vector offset); void set_resurrections(int resurrections); void set_player_info(int player_no, int score); void set_level_info(int level); void display_message(const Glib::ustring &message, bool centered = true); void remove_message(); void start_new_game(int start_level); void end_game(); void intro_finished(); Gtk::Window &get_window(); Glib::RefPtr gconf_client; const Glib::ustring gconf_dir; private: MainWindow(); Glib::RefPtr ui; Gtk::Window *window; Gtk::Label *resurrections_label; Gtk::Label *player1_status_label; Gtk::Label *player2_status_label; Gtk::Label *level_label; Glib::RefPtr icon; // helpers void generate_main_menu(); void generate_game_menu(); void set_background(Glib::RefPtr pixbuf); void calculate_tile_size(); // GConf callbacks void fullscreen_listener(unsigned int, Gnome::Conf::Entry entry); // callbacks for main menu void on_new_game_activated(); void on_introduction_activated(); void on_preferences_activated(); void on_about_activated(); void on_quit_activated(); // callbacks for game menu void on_resume_game_activated(); void on_restart_level_activated(); void on_end_game_activated(); // general callbacks void on_key_press_event(GdkEventKey* event); void on_key_release_event(GdkEventKey* event); void on_button_press_event(GdkEventButton* event); bool on_closed(GdkEventAny *); std::auto_ptr canvas; std::auto_ptr background; std::auto_ptr about; std::auto_ptr preferences_window; std::auto_ptr new_game_window; std::auto_ptr center_menu; std::auto_ptr canvas_message; std::auto_ptr intro; std::auto_ptr game; int tile_size; bool fullscreen; }; #endif monster-masher-1.8.1/src/main.cpp0000644000175000017500000000317410547745536013652 00000000000000/* Implementation of main(). * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include #include #include #include #include #include #include #include "main-window.hpp" #include "i18n.hpp" int main(int argc, char *argv[]) { Gtk::Main main(argc, argv); Gnome::Conf::init(); Gnome::Canvas::init(); gnome_program_init(PACKAGE, VERSION, LIBGNOME_MODULE, argc, argv, NULL); try { // i18n bindtextdomain(GETTEXT_PACKAGE, GNOMELOCALEDIR); bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8"); textdomain(GETTEXT_PACKAGE); g_set_application_name(_("Monster Masher")); std::srand(std::time(0)); main.run(MainWindow::instance().get_window()); } catch(const Glib::Error &ex) { fatal_error(ex.what()); } } monster-masher-1.8.1/src/monsters.cpp0000644000175000017500000004325010547745535014576 00000000000000/* Implementation of monster classes. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include // for atan2 and cos/sin #include // for rand #include // for priority_queue #include #include "monsters.hpp" #include "arena.hpp" #include "canvas.hpp" #include "graphic.hpp" #include "hero.hpp" #include "player.hpp" #include "game.hpp" #include "obstacles.hpp" #include "persistent.hpp" #include "splat-helpers.hpp" #include "sound.hpp" // // base Monster class // int transform_movement_steps(int s) { if (Persistent::instance().difficulty_level == difficulty_easy) return int(s * 1.20); else if (Persistent::instance().difficulty_level == difficulty_hard) return int(s * 0.80); else return s; } Monster::Monster(const Images &m, const Images &g, int movement_steps, int ks, bool h) : Thing(new Graphic(Canvas::instance().creature_layer)), kill_score(ks), hard(h), movement(*this, transform_movement_steps(movement_steps)), thinking_time(std::rand() % (2 * Game::iterations_per_sec)), move_animation(get_graphic(), m, 1, rand() % (1 * m.size())), gore(g), prev_target(0) { } Monster::~Monster() { } void Monster::update() { if (movement.is_moving()) { if (!movement.has_left_tile() && !valid_tile(movement.get_target_tile())) { movement.turn_around(); movement.update(); move_animation.update(); } else { bool halfway = movement.is_halfway(); Vector prev_tile = tile_pos; movement.update(); move_animation.update(); if (halfway) do_halfway(prev_tile); } } else if (freeze_box.get() != 0) { if (!Game::instance().monsters_freezing()) // 10 % chance of thawing if (std::rand() < RAND_MAX / 10) freeze_box.reset(); } else if (Game::instance().monsters_freezing()) { Graphic *g = new Graphic(Canvas::instance().creature_layer); g->set_pixbuf(ImageCache::instance() .get(Arena::instance().tile_name("freeze-box.png")).get()); g->place_at(get_graphic().get_pos()); freeze_box.reset(g); } else if (thinking_time > 0) // stay ruminating over the joys of life here --thinking_time; else do_update(); } void Monster::splat(Vector dir) { Sound::instance().play("splat.wav"); splat_on_obstacles(get_graphic().get_pos(), gore.get(std::rand() % gore.size()), tile_pos, dir); } void Monster::explode() { // FIXME: play sound splat_on_floor(get_graphic().get_pos(), gore.get(std::rand() % gore.size())); } void Monster::head(Vector dir) { movement.head(dir); } void Monster::set_thinking_time(int time) { thinking_time = time; if (Persistent::instance().difficulty_level == difficulty_easy) thinking_time = int(thinking_time * 1.50); else if (Persistent::instance().difficulty_level == difficulty_hard) thinking_time = int(thinking_time * 0.50); } bool Monster::valid_tile(Vector tile) { Thing *thing = Arena::instance().occupier(tile); return thing == 0 || dynamic_cast(thing); } Vector Monster::find_target() { int d = 100000; Player *target = 0; // find the closest hero for (Game::player_sequence::iterator i = Game::instance().players.begin(), end = Game::instance().players.end(); i != end; ++i) { Player *p = *i; if (!p->get_hero() || p->get_hero()->is_invisible()) continue; int hd = dist(tile_pos, p->get_hero()->tile_pos); if (hd < d) { d = hd; target = p; } } // consider staying with the old target if (prev_target && prev_target != target && prev_target->get_hero()) { int prev_d = dist(tile_pos, prev_target->get_hero()->tile_pos); bool very_close = d < 2; bool far_away = d > 8; if (!(very_close || (far_away && prev_d < d * 3/2))) target = prev_target; } prev_target = target; if (target) return target->get_hero()->tile_pos; else { // just wander around Vector random = tile_pos + get_random_direction(); if (valid_tile(random)) return random; else return tile_pos; } } Vector Monster::get_random_direction() { switch (std::rand() % 8) { case 0: return make_vector(-1, 0); case 1: return make_vector(-1,-1); case 2: return make_vector( 0,-1); case 3: return make_vector( 1,-1); case 4: return make_vector( 1, 0); case 5: return make_vector( 1, 1); case 6: return make_vector( 0, 1); default: return make_vector(-1, 1); } } Vector Monster::find_direction_dumbly(Vector target_tile) { if (target_tile == tile_pos) return make_vector(0, 0); if (std::rand() < RAND_MAX / 8) // try randomly for (int i = 0; i < 16; ++i) { Vector v = get_random_direction(); if (valid_tile(tile_pos + v)) return v; } float angle = std::atan2(float(target_tile.y - tile_pos.y), target_tile.x - tile_pos.x); // convert angle to direction if (angle < 3.14159 * -7/8 || angle > 3.14159 * 7/8) { if (valid_tile(tile_pos + make_vector(-1, 0))) return make_vector(-1, 0); else if (valid_tile(tile_pos + make_vector(-1, -1))) return make_vector(-1, -1); else if (valid_tile(tile_pos + make_vector(-1, 1))) return make_vector(-1, 1); } else if (angle < 3.14159 * -5/8) { if (valid_tile(tile_pos + make_vector(-1, -1))) return make_vector(-1, -1); else if (valid_tile(tile_pos + make_vector(-1, 0))) return make_vector(-1, 0); else if (valid_tile(tile_pos + make_vector(0, -1))) return make_vector(0, -1); } else if (angle < 3.14159 * -3/8) { if (valid_tile(tile_pos + make_vector(0, -1))) return make_vector(0, -1); else if (valid_tile(tile_pos + make_vector(-1, -1))) return make_vector(-1, -1); else if (valid_tile(tile_pos + make_vector(1, -1))) return make_vector(1, -1); } else if (angle < 3.14159 * -1/8) { if (valid_tile(tile_pos + make_vector(1, -1))) return make_vector(1, -1); else if (valid_tile(tile_pos + make_vector(0, -1))) return make_vector(0, -1); else if (valid_tile(tile_pos + make_vector(1, 0))) return make_vector(1, 0); } else if (angle < 3.14159 * 1/8) { if (valid_tile(tile_pos + make_vector(1, 0))) return make_vector(1, 0); else if (valid_tile(tile_pos + make_vector(1, -1))) return make_vector(1, -1); else if (valid_tile(tile_pos + make_vector(1, 1))) return make_vector(1, 1); } else if (angle < 3.14159 * 3/8) { if (valid_tile(tile_pos + make_vector(1, 1))) return make_vector(1, 1); else if (valid_tile(tile_pos + make_vector(1, 0))) return make_vector(1, 0); else if (valid_tile(tile_pos + make_vector(0, 1))) return make_vector(0, 1); } else if (angle < 3.14159 * 5/8) { if (valid_tile(tile_pos + make_vector(0, 1))) return make_vector(0, 1); else if (valid_tile(tile_pos + make_vector(1, 1))) return make_vector(1, 1); else if (valid_tile(tile_pos + make_vector(-1, 1))) return make_vector(-1, 1); } else if (angle < 3.14159 * 7/8) { if (valid_tile(tile_pos + make_vector(-1, 1))) return make_vector(-1, 1); else if (valid_tile(tile_pos + make_vector(0, 1))) return make_vector(0, 1); else if (valid_tile(tile_pos + make_vector(-1, 0))) return make_vector(-1, 0); } // else try randomly for (int i = 0; i < 16; ++i) { Vector v = get_random_direction(); if (valid_tile(tile_pos + v)) return v; } // give up return make_vector(0, 0); } // helpers for path-finding algorithm struct PathNode { enum { unknown, active, inactive, blocked } status; int home_dist, target_dist; Vector p_offset; // offset to go in to get to parent }; typedef std::vector PathField; struct cost_lt { bool operator()(PathNode const *lhs, PathNode const *rhs) { return lhs->home_dist + lhs->target_dist >= rhs->home_dist + rhs->target_dist; } }; typedef std::priority_queue, cost_lt> PathQueue; inline Vector node_to_pos(const PathField &field, PathNode *n) { int delta = n - &field[0], width = Arena::instance().size.x; return make_vector(delta % width, delta / width); } inline void visit_pathnode(PathNode &n, PathNode &oldn, Vector p_offset, PathField &field, PathQueue &active, Vector target_tile) { // the offset distance is always 1 int newdist = oldn.home_dist + 1; switch (n.status) { case PathNode::active: case PathNode::inactive: if (newdist >= n.home_dist) return; // not worth going with new break; case PathNode::unknown: { Vector pos = node_to_pos(field, &n); Thing *t = Arena::instance().occupier(pos); if (t && !dynamic_cast(t)) { n.status = PathNode::blocked; return; // tile occupied, discard } else // compute heuristic n.target_dist = std::max(std::abs(pos.x - target_tile.x), std::abs(pos.y - target_tile.y)); } break; case PathNode::blocked: return; } n.status = PathNode::active; n.home_dist = newdist; n.p_offset = p_offset; active.push(&n); } Vector Monster::find_direction_smartly(Vector target_tile) { Vector size = Arena::instance().size; PathNode n; n.status = PathNode::unknown; PathField field(size.x * size.y, n); PathQueue active; // some helper values PathNode *target_address = &field[target_tile.y * size.x + target_tile.x]; // fill in first element PathNode &home = field[tile_pos.y * size.x + tile_pos.x]; home.status = PathNode::active; home.home_dist = 0; home.target_dist = 2 * std::max(std::abs(tile_pos.x - target_tile.x), std::abs(tile_pos.y - target_tile.y)); active.push(&home); PathNode *closest = &home; // use A* algorithm to find the shortest (or closest to target) path do { PathNode &n = *active.top(); if (&n == target_address) break; active.pop(); if (n.status != PathNode::active) // has been invalidated continue; n.status = PathNode::inactive; visit_pathnode(*(&n + 1 + size.x), n, make_vector(-1, -1), field, active, target_tile); visit_pathnode(*(&n + 1), n, make_vector(-1, 0), field, active, target_tile); visit_pathnode(*(&n + 1 - size.x), n, make_vector(-1, 1), field, active, target_tile); visit_pathnode(*(&n + size.x), n, make_vector( 0, -1), field, active, target_tile); visit_pathnode(*(&n - size.x), n, make_vector( 0, 1), field, active, target_tile); visit_pathnode(*(&n - 1 + size.x), n, make_vector( 1, -1), field, active, target_tile); visit_pathnode(*(&n - 1), n, make_vector( 1, 0), field, active, target_tile); visit_pathnode(*(&n - 1 - size.x), n, make_vector( 1, 1), field, active, target_tile); if (n.target_dist < closest->target_dist) closest = &n; } while (!active.empty()); Vector p, off(0, 0); if (active.empty()) p = node_to_pos(field, closest); else p = target_tile; while (p != tile_pos) { off = field[p.y * size.x + p.x].p_offset; p += off; } return -off; } // // PlainMonster class // int const plain_monster_kill_score = 1; PlainMonster::PlainMonster() : Monster(ImageCache::instance() .get(Arena::instance().tile_name("plain-monster.png"), 32), ImageCache::instance() .get(Arena::instance().tile_name("plain-gore.png"), 8), 16, plain_monster_kill_score, false) { } void PlainMonster::do_update() { // go get some food! Vector target_tile = find_target(); Vector dir = find_direction_dumbly(target_tile); if (!(dir.x == 0 && dir.y == 0)) { head(dir); set_thinking_time(std::rand() % (Game::iterations_per_sec * 8/5)); } else // wait so we don't waste CPU resources set_thinking_time(std::rand() % (Game::iterations_per_sec * 1/5)); } // // HardMonster class // int const hard_monster_kill_score = 3; HardMonster::HardMonster() : Monster(ImageCache::instance() .get(Arena::instance().tile_name("hard-monster.png"), 48), ImageCache::instance() .get(Arena::instance().tile_name("hard-gore.png"), 8), 26, hard_monster_kill_score, true) { } void HardMonster::do_update() { // go get some food! Vector target_tile = find_target(); Vector dir = find_direction_dumbly(target_tile); if (!(dir.x == 0 && dir.y == 0)) { head(dir); set_thinking_time(std::rand() % (Game::iterations_per_sec * 2/3)); } else // wait so we don't waste CPU resources set_thinking_time(std::rand() % (Game::iterations_per_sec * 1/5)); } // // SeekerMonster class // int const seeker_monster_kill_score = 2; SeekerMonster::SeekerMonster() : Monster(ImageCache::instance() .get(Arena::instance().tile_name("seeker-monster.png"), 32), ImageCache::instance() .get(Arena::instance().tile_name("seeker-gore.png"), 8), 14, seeker_monster_kill_score, false), move_mode(std::rand() % 4) { } void SeekerMonster::do_update() { // go get some food! Vector target_tile = find_target(); Vector dir = find_direction_smartly(target_tile); if (!(dir.x == 0 && dir.y == 0)) { head(dir); if (--move_mode < 0) { set_thinking_time(std::rand() % (Game::iterations_per_sec * 3)); move_mode = std::rand() % 4; } } else // wait so we don't waste CPU resources set_thinking_time(std::rand() % (Game::iterations_per_sec * 1/5)); } // // EggLayerMonster class // int const egg_layer_monster_kill_score = 4; EggLayerMonster::EggLayerMonster() : Monster(ImageCache::instance() .get(Arena::instance().tile_name("egg-layer-monster.png"), 48), ImageCache::instance() .get(Arena::instance().tile_name("egg-layer-gore.png"), 8), 24, egg_layer_monster_kill_score, false), hunting(true) { } void EggLayerMonster::do_update() { // go get some food! Vector target_tile = find_target(); Vector dir(0, 0); if (std::max(std::abs(target_tile.x - tile_pos.x), std::abs(target_tile.y - tile_pos.y)) > 5) { // if far away, just walk around laying eggs hunting = false; for (int i = 0; i < 16; ++i) { Vector v = get_random_direction(); if (valid_tile(tile_pos + v)) { dir = v; break; } } } else { // if close, better go for the target hunting = true; dir = find_direction_dumbly(target_tile); } if (!(dir.x == 0 && dir.y == 0)) { head(dir); set_thinking_time(std::rand() % (Game::iterations_per_sec * 2)); } else // wait so we don't waste CPU resources set_thinking_time(std::rand() % (Game::iterations_per_sec * 1/5)); } void EggLayerMonster::do_halfway(Vector prev_tile) { if (hunting) // don't lay egg when hunting return; Vector size = Arena::instance().size; if (int(Game::instance().monsters.size()) < size.x * size.y / 6 && Game::instance().eggs.size() < 15) if (std::rand() < RAND_MAX / 10) // lay an egg Game::instance().generate_egg(prev_tile); } // // Egg base class // Egg::Egg(Vector pos, const Images &images, int anim_rate, const Images &g) : Thing(new Graphic(Canvas::instance().creature_layer)), anim(get_graphic(), images, anim_rate), gore(g) { occupy_tile(pos); } void Egg::update() { anim.update(); } bool Egg::hatch_ready() { return anim.last_frame(); } void Egg::hatch() { // FIXME: play sound splat_on_floor(get_graphic().get_pos(), gore.get(std::rand() % gore.size())); Monster *m = do_hatch(); m->occupy_tile(tile_pos); Game::instance().add_monster(m); } void Egg::splat(Vector dir) { Sound::instance().play("splat.wav"); splat_on_obstacles(get_graphic().get_pos(), gore.get(std::rand() % gore.size()), tile_pos, dir); } void Egg::explode() { // FIXME: play sound splat_on_floor(get_graphic().get_pos(), gore.get(std::rand() % gore.size())); } // // concrete Egg classes // PlainEgg::PlainEgg(Vector pos) : Egg(pos, ImageCache::instance() .get(Arena::instance().tile_name("plain-egg.png"), 4), Game::iterations_per_sec * 4, ImageCache::instance() .get(Arena::instance().tile_name("plain-gore.png"), 8)) { } Monster *PlainEgg::do_hatch() { return new PlainMonster; } HardEgg::HardEgg(Vector pos) : Egg(pos, ImageCache::instance() .get(Arena::instance().tile_name("hard-egg.png"), 4), Game::iterations_per_sec * 4 * 3/2, ImageCache::instance() .get(Arena::instance().tile_name("hard-gore.png"), 8)) { } Monster *HardEgg::do_hatch() { return new HardMonster; } SeekerEgg::SeekerEgg(Vector pos) : Egg(pos, ImageCache::instance() .get(Arena::instance().tile_name("seeker-egg.png"), 4), Game::iterations_per_sec * 4 * 4/2, ImageCache::instance() .get(Arena::instance().tile_name("seeker-gore.png"), 8)) { } Monster *SeekerEgg::do_hatch() { return new SeekerMonster; } EggLayerEgg::EggLayerEgg(Vector pos) : Egg(pos, ImageCache::instance() .get(Arena::instance().tile_name("egg-layer-egg.png"), 4), Game::iterations_per_sec * 4 * 5/2, ImageCache::instance() .get(Arena::instance().tile_name("egg-layer-gore.png"), 8)) { } Monster *EggLayerEgg::do_hatch() { return new EggLayerMonster; } monster-masher-1.8.1/src/monsters.hpp0000644000175000017500000000671710547745535014612 00000000000000/* The monster classes. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef MONSTERS_HPP #define MONSTERS_HPP #include #include "movement.hpp" #include "vector.hpp" #include "thing.hpp" #include "image-cache.hpp" #include "animation.hpp" class Player; // base class for all monsters class Monster: public Thing { public: Monster(const Images &move, const Images &gore, int movement_steps, int kill_score, bool hard); ~Monster(); void update(); void splat(Vector dir); void explode(); int const kill_score; bool const hard; protected: // interface for implementation of concrete monsters void head(Vector dir); void set_thinking_time(int time); bool valid_tile(Vector tile); Vector get_random_direction(); Vector find_target(); Vector find_direction_dumbly(Vector target_tile); Vector find_direction_smartly(Vector target_tile); private: Movement movement; int thinking_time; Animation move_animation; const Images &gore; Player *prev_target; std::auto_ptr freeze_box; virtual void do_update() = 0; // called whenever we aren't moving or thinking virtual void do_halfway(Vector prev_tile) {} }; // ordinary monster, no frills class PlainMonster: public Monster { public: PlainMonster(); private: virtual void do_update(); }; // hard monster, must be mashed agains walls class HardMonster: public Monster { public: HardMonster(); private: virtual void do_update(); }; // more intelligent monster, knows the shortest path (also around corners) class SeekerMonster: public Monster { public: SeekerMonster(); private: int move_mode; virtual void do_update(); }; // lays egg, tries to keep away from the battle class EggLayerMonster: public Monster { public: EggLayerMonster(); private: virtual void do_update(); void do_halfway(Vector prev_tile); bool hunting; // whether we're hunting a hero }; // egg base class class Egg: public Thing { public: Egg(Vector pos, const Images &images, int anim_rate, const Images &gore); void update(); bool hatch_ready(); void hatch(); void splat(Vector dir); void explode(); static int const kill_score = 1; private: Animation anim; const Images &gore; virtual Monster *do_hatch() = 0; }; // concrete eggs class PlainEgg: public Egg { public: PlainEgg(Vector pos); private: virtual Monster *do_hatch(); }; class HardEgg: public Egg { public: HardEgg(Vector pos); private: virtual Monster *do_hatch(); }; class SeekerEgg: public Egg { public: SeekerEgg(Vector pos); private: virtual Monster *do_hatch(); }; class EggLayerEgg: public Egg { public: EggLayerEgg(Vector pos); private: virtual Monster *do_hatch(); }; #endif monster-masher-1.8.1/src/movement.cpp0000644000175000017500000000421410547745536014554 00000000000000/* Implementation of Movement class. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include "movement.hpp" #include "arena.hpp" #include "graphic.hpp" #include "thing.hpp" Movement::Movement(Thing &t, int updates_per_move) : steps(not_moving), max_steps(updates_per_move), thing(t) { } void Movement::update() { assert(is_moving()); if (is_halfway()) { if (Arena::instance().occupier(thing.tile_pos) == &thing) Arena::instance().occupy(thing.tile_pos, 0); thing.tile_pos = target_tile; Arena::instance().occupy(thing.tile_pos, &thing); } thing.get_graphic().move(velocity); ++steps; if (steps >= max_steps) { // make sure we sit tight thing.occupy_tile(thing.tile_pos); steps = not_moving; } } void Movement::head(Vector dir) { assert(!is_moving()); target_tile = thing.tile_pos + dir; velocity.x = double(dir.x) * Arena::instance().tile_size / max_steps; velocity.y = double(dir.y) * Arena::instance().tile_size / max_steps; steps = 0; } void Movement::turn_around() { assert(is_moving() && !has_left_tile()); target_tile = thing.tile_pos; velocity = -velocity; steps = max_steps - steps; } bool Movement::is_moving() { return steps != not_moving; } bool Movement::has_left_tile() { return steps > max_steps / 2; } bool Movement::is_halfway() { return steps == max_steps / 2; } Vector Movement::get_target_tile() { return target_tile; } monster-masher-1.8.1/src/movement.hpp0000644000175000017500000000271110547745536014561 00000000000000/* The Movement class for keeping track of a movement. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef MOVEMENT_HPP #define MOVEMENT_HPP #include "vector.hpp" class Thing; class Movement { public: Movement(Thing &thing, int updates_per_move); void update(); void head(Vector dir); // start a move void turn_around(); // cancel a move, going back bool is_moving(); // whether we need update bool has_left_tile(); // whether we've moved to target tile bool is_halfway(); // whether we are going to move upon next update Vector get_target_tile(); private: Vector target_tile; Vector velocity; int steps; int const max_steps; Thing &thing; static int const not_moving = -1; }; #endif monster-masher-1.8.1/src/new-game-window.cpp0000644000175000017500000001243610547745535015733 00000000000000/* Implementation of the NewGameWindow class. * * Copyright (c) 2003, 2004 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include "new-game-window.hpp" #include "main-window.hpp" #include "gui-helpers.hpp" #include "vector.hpp" #include "persistent.hpp" #include "game.hpp" #include "ucompose.hpp" #include "i18n.hpp" NewGameWindow::NewGameWindow() { ui = get_glade_xml("new_game_window"); ui->get_widget("new_game_window", window); window->set_transient_for(MainWindow::instance().get_window()); window->set_type_hint(Gdk::WINDOW_TYPE_HINT_DIALOG); ui->get_widget("one_player_radiobutton", one_player_radiobutton); one_player_radiobutton->signal_toggled() .connect(sigc::mem_fun(*this, &NewGameWindow::update_level_frame)); ui->get_widget("two_players_radiobutton", two_players_radiobutton); two_players_radiobutton->signal_toggled() .connect(sigc::mem_fun(*this, &NewGameWindow::update_level_frame)); ui->get_widget("easy_radiobutton", easy_radiobutton); easy_radiobutton->signal_toggled() .connect(sigc::mem_fun(*this, &NewGameWindow::update_level_frame)); ui->get_widget("medium_radiobutton", medium_radiobutton); medium_radiobutton->signal_toggled() .connect(sigc::mem_fun(*this, &NewGameWindow::update_level_frame)); ui->get_widget("hard_radiobutton", hard_radiobutton); hard_radiobutton->signal_toggled() .connect(sigc::mem_fun(*this, &NewGameWindow::update_level_frame)); ui->get_widget("level_frame", level_frame); ui->get_widget("level_spinbutton", level_spinbutton); level_spinbutton->signal_changed() .connect(sigc::mem_fun(*this, &NewGameWindow::on_level_changed)); ui->get_widget("level_info_label", level_info_label); Gtk::Button *button; ui->get_widget("cancel_button", button); button->signal_clicked() .connect(sigc::mem_fun(*this, &NewGameWindow::on_cancel_pressed)); ui->get_widget("start_game_button", button); button->signal_clicked() .connect(sigc::mem_fun(*this, &NewGameWindow::on_start_game_pressed)); window->signal_delete_event() .connect(sigc::mem_fun(*this, &NewGameWindow::on_closed)); // fill in saved values switch (Persistent::instance().no_of_players) { case 2: two_players_radiobutton->set_active(); break; case 1: default: one_player_radiobutton->set_active(); break; } switch (Persistent::instance().difficulty_level) { case difficulty_medium: medium_radiobutton->set_active(); break; case difficulty_hard: hard_radiobutton->set_active(); break; case difficulty_easy: default: easy_radiobutton->set_active(); break; } } void NewGameWindow::show() { window->show(); update_level_frame(); } void NewGameWindow::raise() { window->deiconify(); window->raise(); } void NewGameWindow::on_cancel_pressed() { window->hide(); } void NewGameWindow::on_start_game_pressed() { window->hide(); int level = level_spinbutton->get_value_as_int(); int player_no = get_player_no(); difficulty diff = get_difficulty_level(); Persistent::instance().no_of_players = player_no; Persistent::instance().difficulty_level = diff; Persistent::instance().state[player_no - 1][diff].last = level; Persistent::instance().save_state(); MainWindow::instance().start_new_game(level); } void NewGameWindow::update_level_frame() { Persistent::StateInfo &p = Persistent::instance() .state[get_player_no() - 1][get_difficulty_level()]; int top = p.levels.size(); if (top < Game::max_levels) ++top; level_spinbutton->set_range(1, top); level_spinbutton->set_value(p.last); level_frame->set_sensitive(p.levels.size() + 1 != 1); } void NewGameWindow::on_level_changed() { int l = level_spinbutton->get_value_as_int(); Glib::ustring s; if (l > 1) { Persistent::LevelInfo &info = Persistent::instance() .state[get_player_no() - 1][get_difficulty_level()].levels[l - 2]; // note to translators: resur. stands for resurrections; resurrections // occur when the player is given life again after having died // (the translation should preferably be short) s = String::ucompose(_("(resur.: %1)"), info.resurrections); } level_info_label->set_text(s); } bool NewGameWindow::on_closed(GdkEventAny *) { window->hide(); return true; } int NewGameWindow::get_player_no() { int n = 1; if (two_players_radiobutton->get_active()) n = 2; return n; } difficulty NewGameWindow::get_difficulty_level() { difficulty d = difficulty_easy; if (medium_radiobutton->get_active()) d = difficulty_medium; else if (hard_radiobutton->get_active()) d = difficulty_hard; return d; } monster-masher-1.8.1/src/new-game-window.hpp0000644000175000017500000000325610547745535015740 00000000000000/* Class NewGameWindow for starting a new game. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef NEW_GAME_WINDOW_HPP #define NEW_GAME_WINDOW_HPP #include #include #include #include #include #include #include "persistent.hpp" class NewGameWindow: public sigc::trackable { public: NewGameWindow(); void raise(); void show(); private: Glib::RefPtr ui; Gtk::Window *window; Gtk::RadioButton *one_player_radiobutton, *two_players_radiobutton; Gtk::RadioButton *easy_radiobutton, *medium_radiobutton, *hard_radiobutton; Gtk::Frame *level_frame; Gtk::SpinButton *level_spinbutton; Gtk::Label *level_info_label; void on_cancel_pressed(); void on_start_game_pressed(); void update_level_frame(); void on_level_changed(); bool on_closed(GdkEventAny *); int get_player_no(); difficulty get_difficulty_level(); }; #endif monster-masher-1.8.1/src/obstacles.cpp0000644000175000017500000001413510547745536014704 00000000000000/* Implementation of obstacle classes. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include "obstacles.hpp" #include "image-cache.hpp" #include "canvas.hpp" #include "graphic.hpp" #include "arena.hpp" #include "game.hpp" #include "player.hpp" #include "hero.hpp" #include "monsters.hpp" #include "fading-decoration.hpp" Block::Block() : Thing(new Graphic(Canvas::instance().block_layer)), levitated(0) { get_graphic().set_pixbuf(ImageCache::instance() .get(Arena::instance().tile_name("block.png")) .get()); } void Block::move_block_to(Vector pos) { Vector delta(pos.x * Arena::instance().tile_size, pos.y * Arena::instance().tile_size); delta -= get_graphic().get_pos(); occupy_tile(pos); for (std::list::iterator i = cargo.begin(), e = cargo.end(); i != e; ++i) (*i)->move(delta); } void Block::add_cargo(Graphic *graphic) { cargo.push_back(graphic); } void Block::remove_cargo(Graphic *graphic) { cargo.remove(graphic); } void Block::levitate(int distance) { if (levitated == 0 && cargo.size() < 3) { Graphic *graph = new Graphic(Canvas::instance().block_layer); const Images &im = ImageCache::instance() .get(Arena::instance().tile_name("levitation.png"), 8); graph->set_pixbuf(im.get(std::rand() % im.size())); graph->place_at(get_graphic().get_pos()); add_cargo(graph); FadingDecoration *fader = new FadingDecoration(graph, 10 + distance * 5, Game::iterations_per_sec / 25); Game::instance().add_decoration(fader, this); } ++levitated; } void Block::unlevitate() { --levitated; assert(levitated >= 0); #if 0 if (levitated == 0) { Game::instance().remove_decoration(fader); delete fader; } #endif } Wall::Wall() : Thing(new Graphic(Canvas::instance().block_layer)) { get_graphic().set_pixbuf(ImageCache::instance() .get(Arena::instance().tile_name("wall.png")).get()); } MonsterWall::MonsterWall() : Thing(new Graphic(Canvas::instance().block_layer)), counter(calc_pause_time()) { get_graphic().set_pixbuf(ImageCache::instance() .get(Arena::instance().tile_name("monster-wall.png")) .get()); } void MonsterWall::update() { if (counter <= 0) { counter = calc_pause_time(); Arena &arena = Arena::instance(); // try to spawn a monster Vector tile; if (!arena.occupier(tile = tile_pos + make_vector(-1,-1))) Game::instance().generate_monster(tile); else if (!arena.occupier(tile = tile_pos + make_vector( 0,-1))) Game::instance().generate_monster(tile); else if (!arena.occupier(tile = tile_pos + make_vector( 1,-1))) Game::instance().generate_monster(tile); else if (!arena.occupier(tile = tile_pos + make_vector( 1, 0))) Game::instance().generate_monster(tile); else if (!arena.occupier(tile = tile_pos + make_vector(-1, 1))) Game::instance().generate_monster(tile); else if (!arena.occupier(tile = tile_pos + make_vector( 0, 1))) Game::instance().generate_monster(tile); else if (!arena.occupier(tile = tile_pos + make_vector( 1, 1))) Game::instance().generate_monster(tile); else counter = 0; } else --counter; } int MonsterWall::calc_pause_time() { return std::rand() % (100 * Game::iterations_per_sec); } // // power ups // PowerUp::PowerUp(Graphic *graphic) : Thing(graphic) { occupy_tile(Arena::instance().random_tile()); } void PowerUp::eat(Player &player) { do_eat(player); Game::instance().power_up_eaten(); } InvisibilityPowerUp::InvisibilityPowerUp() : PowerUp(new Graphic(Canvas::instance().block_layer)) { get_graphic().set_pixbuf(ImageCache::instance() .get(Arena::instance() .tile_name("power-up-invisibility.png")) .get()); } void InvisibilityPowerUp::do_eat(Player &player) { // FIXME: play sound for (Game::player_sequence::iterator i = Game::instance().players.begin(), end = Game::instance().players.end(); i != end; ++i) if (!(*i)->is_dead()) if (Hero *hero = (*i)->get_hero()) hero->make_invisible(); } FreezePowerUp::FreezePowerUp() : PowerUp(new Graphic(Canvas::instance().block_layer)) { get_graphic().set_pixbuf(ImageCache::instance() .get(Arena::instance().tile_name("power-up-freeze.png")) .get()); } void FreezePowerUp::do_eat(Player &player) { // FIXME: play sound Game::instance().freeze_monsters(); } ExplodePowerUp::ExplodePowerUp() : PowerUp(new Graphic(Canvas::instance().block_layer)) { get_graphic().set_pixbuf(ImageCache::instance() .get(Arena::instance().tile_name("power-up-explode.png")) .get()); } void ExplodePowerUp::do_eat(Player &player) { int const size = 4 * Arena::instance().tile_size; // FIXME: play sound for (Game::monster_sequence::iterator i = Game::instance().monsters.begin(), end = Game::instance().monsters.end(); i != end;) { Monster &m = **i++; if (dist(get_graphic().get_pos(), m.get_graphic().get_pos()) <= size) { m.explode(); player.scored(m.kill_score); Game::instance().remove_monster(&m); } } for (Game::egg_sequence::iterator i = Game::instance().eggs.begin(), end = Game::instance().eggs.end(); i != end;) { Egg &e = **i++; if (dist(get_graphic().get_pos(), e.get_graphic().get_pos()) <= size) { e.explode(); player.scored(Egg::kill_score); Game::instance().remove_egg(&e); } } } monster-masher-1.8.1/src/obstacles.hpp0000644000175000017500000000436210547745536014712 00000000000000/* The obstacle classes - blocks, walls, power ups. * * Copyright (c) 2003, 2004 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef OBSTACLES_HPP #define OBSTACLES_HPP #include #include "thing.hpp" class Player; // blocks can be pushed around class Block: public Thing { public: Block(); void move_block_to(Vector pos); void add_cargo(Graphic *graphic); void remove_cargo(Graphic *graphic); void levitate(int distance); // in blocks from acting hero void unlevitate(); private: int levitated; // number of levitations std::list cargo; }; // walls cannot be pushed, but are good for splatting hard monsters class Wall: public Thing { public: Wall(); }; // monster walls cannot be pushed and spawn monsters class MonsterWall: public Thing { public: MonsterWall(); void update(); private: int counter; int calc_pause_time(); }; // powerups can be picked up class PowerUp: public Thing { protected: PowerUp(Graphic *graphic); public: void eat(Player &player); private: virtual void do_eat(Player &player) = 0; }; // make all players invisible for a period of time class InvisibilityPowerUp: public PowerUp { public: InvisibilityPowerUp(); private: virtual void do_eat(Player &player); }; // freeze all monsters for a while class FreezePowerUp: public PowerUp { public: FreezePowerUp(); private: virtual void do_eat(Player &player); }; // kill monsters and eggs within range class ExplodePowerUp: public PowerUp { public: ExplodePowerUp(); private: virtual void do_eat(Player &player); }; #endif monster-masher-1.8.1/src/persistent.cpp0000644000175000017500000001346610547745536015133 00000000000000/* Implementation of persistent state. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include #include #include #include "persistent.hpp" #include "ucompose.hpp" #include "i18n.hpp" // helper class for security through obscurity class Codec { public: Codec() : code("0NLYL4MERZCH33T") { element = code.begin(); } int encode(int c) { int ret = c * *element; cycle_element(); return ret; } int decode(int c) { int ret = c / *element; cycle_element(); return ret; } private: void cycle_element() { ++element; if (element == code.end()) element = code.begin(); } std::string code; std::string::iterator element; }; Persistent &Persistent::instance() { static Persistent p; return p; } Persistent::Persistent() { // default values for (int i = 0; i < 2; ++i) { state[i][difficulty_easy].last = 1; state[i][difficulty_medium].last = 1; state[i][difficulty_hard].last = 1; #if 0 for (int j = 0; j < 29; ++j) { LevelInfo li; li.resurrections = 3; li.scores.push_back(0); if (i == 1) li.scores.push_back(0); state[i][difficulty_easy].levels.push_back(li); state[i][difficulty_medium].levels.push_back(li); state[i][difficulty_hard].levels.push_back(li); } #endif } no_of_players = 1; difficulty_level = difficulty_easy; load_state(); } Persistent::~Persistent() { save_state(); } void read_int(std::istream &is, Codec &codec, int &dest, int vstart, int vend) { int tmp; if (!(is >> tmp)) throw 0; else { tmp = codec.decode(tmp); if (tmp >= vstart && tmp <= vend) dest = tmp; } } void Persistent::load_state() { // try to read as much as possible, else values are defaulted std::string filename = Glib::build_filename(Glib::get_home_dir(), ".monster-masher"); if (!Glib::file_test(filename, Glib::FILE_TEST_IS_REGULAR)) return; std::ifstream is(filename.c_str()); try { if (!is) throw 0; int version; if (!(is >> version)) throw 0; // version 1 is the only version right now if (version != 1) throw 0; Codec codec; read_int(is, codec, no_of_players, 1, 2); int tmp; read_int(is, codec, tmp, difficulty_easy, difficulty_hard); difficulty_level = static_cast(tmp); for (int i = 0; i < 2; ++i) { load_player_info(is, codec, state[i][difficulty_easy], i + 1, 30); load_player_info(is, codec, state[i][difficulty_medium], i + 1, 30); load_player_info(is, codec, state[i][difficulty_hard], i + 1, 30); } } catch(...) { Gtk::MessageDialog d(String::ucompose(_("An error occurred while reading the " "file \"%1\". This may mean " "that the recordings of what levels you have " "passed are lost."), filename), Gtk::MESSAGE_ERROR); d.set_title(_("Load error")); d.run(); } } void Persistent::load_player_info(std::istream &is, Codec &codec, StateInfo &info, int no_players, int max_level) { assert(info.levels.empty()); int no_levels = 0; read_int(is, codec, no_levels, 1, max_level); info.levels.reserve(no_levels); for (int i = 0; i < no_levels; ++i) { LevelInfo li; read_int(is, codec, li.resurrections, 0, 10000); // read scores for (int j = 0; j < no_players; ++j) { int score = 0; li.scores.reserve(no_players); read_int(is, codec, score, 0, 1000000); li.scores.push_back(score); } info.levels.push_back(li); } read_int(is, codec, info.last, 1, no_levels + 1); } void write_int(std::ostream &os, Codec &codec, int src) { if (!(os << codec.encode(src) << ' ')) throw 0; } void Persistent::save_state() { std::string filename = Glib::build_filename(Glib::get_home_dir(), ".monster-masher"); std::ofstream os(filename.c_str()); try { if (!os) throw 0; if (!(os << 1 << ' ')) // version 1 throw 0; Codec codec; write_int(os, codec, no_of_players); write_int(os, codec, difficulty_level); for (int i = 0; i < 2; ++i) { save_player_info(os, codec, state[i][difficulty_easy]); save_player_info(os, codec, state[i][difficulty_medium]); save_player_info(os, codec, state[i][difficulty_hard]); } } catch(...) { Gtk::MessageDialog d(String::ucompose(_("An error occurred while saving the " "file \"%1\". This may mean " "that the recordings of what levels you have " "passed are lost."), filename), Gtk::MESSAGE_ERROR); d.set_title(_("Save error")); d.run(); } } void Persistent::save_player_info(std::ostream &os, Codec &codec, StateInfo &info) { write_int(os, codec, info.levels.size()); for (std::vector::iterator i = info.levels.begin(), end = info.levels.end(); i != end; ++i) { write_int(os, codec, i->resurrections); for (std::vector::iterator j = i->scores.begin(), jend = i->scores.end(); jend != j; ++j) write_int(os, codec, *j); } write_int(os, codec, info.last); } monster-masher-1.8.1/src/persistent.hpp0000644000175000017500000000334110547745536015127 00000000000000/* Maintenance of persistent stuff (like levels). * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef PERSISTENT_HPP #define PERSISTENT_HPP #include #include class Codec; enum difficulty { difficulty_easy, difficulty_medium, difficulty_hard }; class Persistent { public: // singleton static Persistent &instance(); ~Persistent(); void save_state(); struct LevelInfo { int resurrections; std::vector scores; }; struct StateInfo { // levels["level" - 1] has data for passed level no. "level" std::vector levels; int last; // last played level (not last completed) }; // public state StateInfo state[2][3]; // two players, three difficulties int no_of_players; difficulty difficulty_level; private: Persistent(); void load_state(); void load_player_info(std::istream &is, Codec &codec, StateInfo &info, int no_players, int max_level); void save_player_info(std::ostream &os, Codec &codec, StateInfo &info); }; #endif monster-masher-1.8.1/src/pixbuf-drawing.cpp0000644000175000017500000000763010547745536015655 00000000000000/* Pixbuf-drawing helpers. * * Copyright (c) 2002, 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include "pixbuf-drawing.hpp" void scale_alpha(const Glib::RefPtr &pixbuf, int scale) { for (PixelIterator i = begin(pixbuf), e = end(pixbuf); i != e; ++i) i->alpha() = i->alpha() * scale / 256; } // shift the color by the given hue shift amount // which is in { 0, 1, ..., 6 * 256 - 1 } inline void shift_hue(unsigned char &r, unsigned char &g, unsigned char &b, int shift) { // // To make any sense of the calculations, consider the algorithm for // transformations between the RGB and the HSV color space - since the // saturation and value are fixed, we only need to consider the hue. The hue // falls in one of the 6 cases: // // 0: red to yellow, 1: yellow to green, 2: green to cyan, 3: cyan to blue // 4: blue to violet, 5: violet to red // // In each case, one color is at the maximum value, one is at the minimum // value and the last one is either increasing or decreasing betweeen them, // e.g. in case 0, red is at top, blue at bottom and green is increasing // linearly from the left end of the hue interval towards the right end, // changing the color from red to yellow. // // determine current case and hue inside the case unsigned char min, max, delta; int n, hue; if (r >= g) // high middle low if (r >= b) if (g >= b) { // r g b max = r; min = b; delta = max - min; if (delta == 0) // achromatic (black-grey-white) return; hue = 255 * (g - b) / delta; n = 0; } else { // r b g max = r; min = g; delta = max - min; if (delta == 0) return; hue = 255 * (b - g) / delta; n = 5; } else { // b r g max = b; min = g; delta = max - min; if (delta == 0) return; hue = 255 * (r - g) / delta; n = 4; } else if (g >= b) if (r >= b) { // g r b max = g; min = b; delta = max - min; if (delta == 0) return; hue = 255 * (r - b) / delta; n = 1; } else { // g b r max = g; min = r; delta = max - min; if (delta == 0) return; hue = 255 * (b - r) / delta; n = 2; } else { // b g r max = b; min = r; delta = max - min; if (delta == 0) return; hue = 255 * (g - r) / delta; n = 3; } // shift hue and case hue += shift; n += hue / 256; hue %= 256; if (n > 5) n -= 6; // determine new RGB values unsigned char inc = (255 * min + delta * hue) / 255, dec = (255 * max - delta * hue) / 255; switch (n) { case 0: r = max; g = inc; b = min; break; case 1: r = dec; g = max; b = min; break; case 2: r = min; g = max; b = inc; break; case 3: r = min; g = dec; b = max; break; case 4: r = inc; g = min; b = max; break; default: // case 5: r = max; g = min; b = dec; break; } } // shift the color by the given hue shift amount // which is in { 0, 1, ..., 6 * 256 - 1 } void shift_hue(const Glib::RefPtr &pixbuf, int shift) { for (PixelIterator i = begin(pixbuf), e = end(pixbuf); i != e; ++i) shift_hue(i->red(), i->green(), i->blue(), shift); } monster-masher-1.8.1/src/pixbuf-drawing.hpp0000644000175000017500000001100710547745536015653 00000000000000/* Pixbuf-drawing helpers. * * Copyright (c) 2002, 03, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef PIXBUF_DRAWING_HPP #define PIXBUF_DRAWING_HPP #include #include #include // scale pixbuf alpha values by scale / 256 (where scale <= 256) void scale_alpha(const Glib::RefPtr &pixbuf, int scale); // shift hue of the pixels by the given shift amount // which is in { 0, 1, ..., 6 * 256 - 1 } void shift_hue(const Glib::RefPtr &pixbuf, int shift); class Pixel { public: Pixel() {} explicit Pixel(unsigned char *pixel) : data(pixel) {} // to facilitate -> on PixelIterators Pixel *operator->() { return this; } unsigned char &red() { return *data; } unsigned char const &red() const { return *data; } unsigned char &green() { return *(data + 1); } unsigned char const &green() const { return *(data + 1); } unsigned char &blue() { return *(data + 2); } unsigned char const &blue() const { return *(data + 2); } unsigned char &alpha() { return *(data + 3); } unsigned char const &alpha() const { return *(data + 3); } private: unsigned char * data; }; class PixelPosition { public: PixelPosition() {} PixelPosition(unsigned char *pixel, int rs, int chnls) : data(pixel), rowstride(rs), channels(chnls) {} Pixel pixel() { return Pixel(data); } PixelPosition &left(int n = 1) { data -= n * channels; return *this; } PixelPosition &right(int n = 1) { data += n * channels; return *this; } PixelPosition &up(int n = 1) { data -= n * rowstride; return *this; } PixelPosition &down(int n = 1) { data += n * rowstride; return *this; } private: unsigned char *data; int rowstride, channels; }; inline PixelPosition get_position(const Glib::RefPtr &pixbuf, int x, int y) { unsigned char *data = pixbuf->get_pixels(); int rowstride = pixbuf->get_rowstride(); int channels = pixbuf->get_n_channels(); data += rowstride * y + channels * x; return PixelPosition(data, rowstride, channels); } class PixelIterator { public: typedef std::random_access_iterator_tag iterator_category; typedef Pixel value_type; typedef Pixel pointer; typedef Pixel reference; typedef std::ptrdiff_t difference_type; PixelIterator() {} PixelIterator(const Glib::RefPtr &p, unsigned int x, unsigned int y) : xpos(x), width(p->get_width()), channels(p->get_n_channels()), padding(p->get_rowstride() - width * channels) { data = p->get_pixels() + p->get_rowstride() * y + channels * x; } bool operator==(const PixelIterator& other) const { return data == other.data; } bool operator!=(const PixelIterator& other) const { return !(*this == other); } reference operator*() const { return Pixel(data); } pointer operator->() const { return operator*(); } PixelIterator &operator++() { if (xpos == width) { data += padding; xpos = 0; } data += channels; ++xpos; return *this; } PixelIterator operator++(int) { PixelIterator tmp = *this; ++*this; return tmp; } PixelIterator &operator--() { if (xpos == 0) { data -= padding; xpos = width; } data -= channels; --xpos; return *this; } PixelIterator operator--(int) { PixelIterator tmp = *this; --*this; return tmp; } private: unsigned char *data; int xpos; int width, channels, padding; }; inline PixelIterator begin(const Glib::RefPtr &pixbuf) { return PixelIterator(pixbuf, 0, 0); } inline PixelIterator end(const Glib::RefPtr &pixbuf) { return PixelIterator(pixbuf, 0, pixbuf->get_height()); } #endif monster-masher-1.8.1/src/player.cpp0000644000175000017500000001176010547745536014222 00000000000000/* Implementation of class Player. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include #include #include "player.hpp" #include "hero.hpp" #include "main-window.hpp" #include "vector.hpp" #include "arena.hpp" #include "game.hpp" #include "monsters.hpp" #include "ucompose.hpp" int Player::resurrections; Player::Player(int no) : player_no(no), score(0), pull_pressed(false), dead(false) { } Player::~Player() { } // helper for spawn_hero void relax(Vector p, Vector size, int dist, std::vector &field, std::deque > &active_points) { if (p.x >= 0 && p.x < size.x && p.y >= 0 && p.y < size.y && field[p.y * size.x + p.x] > dist) { field[p.y * size.x + p.x] = dist; active_points.push_back(p); } } void Player::spawn_hero() { hero.reset(new Hero(*this)); // find the tile that is longest away from the closest monster/hero by flood // filling from the monsters/heroes Arena &arena = Arena::instance(); Vector size = arena.size; std::vector field(size.x * size.y, INT_MAX); std::deque > active_points; for (int y = 0; y < size.y; ++y) for (int x = 0; x < size.x; ++x) { Thing *t = arena.occupier(make_vector(x, y)); if (t != 0) if (dynamic_cast(t) || dynamic_cast(t)) { active_points.push_back(make_vector(x, y)); field[y * size.x + x] = 0; } else field[y * size.x + x] = -1; } assert(!active_points.empty()); Vector cur; while (!active_points.empty()) { cur = active_points.front(); int dist = field[cur.y * size.x + cur.x] + 1; relax(cur + make_vector(-1, -1), size, dist, field, active_points); relax(cur + make_vector(-1, 0), size, dist, field, active_points); relax(cur + make_vector(-1, 1), size, dist, field, active_points); relax(cur + make_vector( 0, -1), size, dist, field, active_points); relax(cur + make_vector( 0, 1), size, dist, field, active_points); relax(cur + make_vector( 1, -1), size, dist, field, active_points); relax(cur + make_vector( 1, 0), size, dist, field, active_points); relax(cur + make_vector( 1, 1), size, dist, field, active_points); active_points.pop_front(); } // last one must be farthest away from closest monster hero->occupy_tile(cur); } void Player::clear_hero() { hero.reset(); } void Player::scored(int s) { // extra life when crossing 50, 100, 150, ... boundaries if (score / 50 != (score + s) / 50) ++resurrections; // FIXME: play tadaa sound score += s; } void Player::kill_hero() { if (resurrections > 0) { --resurrections; spawn_hero(); } else { hero.reset(); dead = true; } } bool Player::is_dead() { return dead; } void Player::update() { if (hero.get()) hero->update(); } Hero *Player::get_hero() { return hero.get(); } int Player::get_score() { return score; } void Player::set_score(int s) { score = s; } void Player::key_pressed(unsigned int keyval) { if (keyval == lookup_key("pull")) pull_pressed = true; if (!hero.get()) return; if (keyval == lookup_key("left")) hero->order_move(make_vector(-1, 0), pull_pressed); if (keyval == lookup_key("left_up")) hero->order_move(make_vector(-1, -1), pull_pressed); if (keyval == lookup_key("up")) hero->order_move(make_vector(0, -1), pull_pressed); if (keyval == lookup_key("right_up")) hero->order_move(make_vector(1, -1), pull_pressed); if (keyval == lookup_key("right")) hero->order_move(make_vector(1, 0), pull_pressed); if (keyval == lookup_key("right_down")) hero->order_move(make_vector(1, 1), pull_pressed); if (keyval == lookup_key("down")) hero->order_move(make_vector(0, 1), pull_pressed); if (keyval == lookup_key("left_down")) hero->order_move(make_vector(-1, 1), pull_pressed); } void Player::key_released(unsigned int keyval) { if (keyval == lookup_key("pull")) pull_pressed = false; } unsigned int Player::lookup_key(const Glib::ustring &key) { Glib::RefPtr &client = MainWindow::instance().gconf_client; Glib::ustring path = String::ucompose("%1/player%2/%3_key", MainWindow::instance().gconf_dir, player_no, key); return gdk_keyval_from_name(client->get_string(path).c_str()); } monster-masher-1.8.1/src/player.hpp0000644000175000017500000000272410547745535014226 00000000000000/* The Player class for keeping track of player info. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef PLAYER_HPP #define PLAYER_HPP #include #include #include "helpers.hpp" class Hero; class Player: noncopyable { public: Player(int player_no); ~Player(); void spawn_hero(); void clear_hero(); void scored(int score); void kill_hero(); bool is_dead(); void update(); Hero *get_hero(); int get_score(); void set_score(int score); void key_pressed(unsigned int keyval); void key_released(unsigned int keyval); static int resurrections; private: int player_no; int score; bool pull_pressed, dead; std::auto_ptr hero; unsigned int lookup_key(const Glib::ustring &key); }; #endif monster-masher-1.8.1/src/preferences-window.cpp0000644000175000017500000001312610547745536016532 00000000000000/* Implementation of PreferencesWindow. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include #include #include "preferences-window.hpp" #include "main-window.hpp" #include "i18n.hpp" #include "gui-helpers.hpp" PreferencesWindow::PreferencesWindow() { ui = get_glade_xml("preferences_window"); ui->get_widget("preferences_window", window); window->set_transient_for(MainWindow::instance().get_window()); window->set_type_hint(Gdk::WINDOW_TYPE_HINT_DIALOG); // setup fullscreen check button ui->get_widget("fullscreen_checkbutton", fullscreen_checkbutton); Glib::RefPtr &client = MainWindow::instance().gconf_client; Glib::ustring dir = MainWindow::instance().gconf_dir; fullscreen_listener(0, client->get_entry(dir + "/fullscreen")); fullscreen_checkbutton->signal_toggled() .connect(sigc::mem_fun(*this, &PreferencesWindow::on_fullscreen_toggled)); client->notify_add(dir + "/fullscreen", sigc::mem_fun(*this, &PreferencesWindow::fullscreen_listener)); // setup player keys setup_button("player1_left", "/player1/left_key"); setup_button("player1_left_up", "/player1/left_up_key"); setup_button("player1_up", "/player1/up_key"); setup_button("player1_right_up", "/player1/right_up_key"); setup_button("player1_right", "/player1/right_key"); setup_button("player1_right_down", "/player1/right_down_key"); setup_button("player1_down", "/player1/down_key"); setup_button("player1_left_down", "/player1/left_down_key"); setup_button("player1_pull_block", "/player1/pull_key"); setup_button("player2_left", "/player2/left_key"); setup_button("player2_left_up", "/player2/left_up_key"); setup_button("player2_up", "/player2/up_key"); setup_button("player2_right_up", "/player2/right_up_key"); setup_button("player2_right", "/player2/right_key"); setup_button("player2_right_down", "/player2/right_down_key"); setup_button("player2_down", "/player2/down_key"); setup_button("player2_left_down", "/player2/left_down_key"); setup_button("player2_pull_block", "/player2/pull_key"); Gtk::Button *button; ui->get_widget("close_button", button); button->signal_clicked() .connect(sigc::mem_fun(*this, &PreferencesWindow::on_close_clicked)); window->signal_delete_event() .connect(sigc::mem_fun(*this, &PreferencesWindow::on_closed)); } PreferencesWindow::~PreferencesWindow() { } void PreferencesWindow::show() { window->show(); } void PreferencesWindow::raise() { window->deiconify(); window->raise(); } void PreferencesWindow::setup_button(const Glib::ustring &widget, const Glib::ustring &key) { Glib::RefPtr &client = MainWindow::instance().gconf_client; Glib::ustring dir = MainWindow::instance().gconf_dir; Gtk::Button *button; ui->get_widget(widget, button); button->set_use_underline(false); button->set_label(client->get_string(dir + key)); button->signal_clicked() .connect(sigc::bind(sigc::mem_fun(*this, &PreferencesWindow::on_button_pressed), button, key)); client->notify_add(dir + key, sigc::bind(sigc::mem_fun(*this, &PreferencesWindow ::button_listener), button)); } bool PreferencesWindow::on_key_press_event(GdkEventKey* event, Gtk::Button *button, Glib::ustring key) { Glib::RefPtr &client = MainWindow::instance().gconf_client; Glib::ustring dir = MainWindow::instance().gconf_dir; grab_connection.disconnect(); button->remove_modal_grab(); Glib::ustring name = gdk_keyval_name(event->keyval); button->set_label(name); client->set(dir + key, name); return true; } void PreferencesWindow::on_button_pressed(Gtk::Button *button, Glib::ustring key) { button->set_label(" "); button->add_modal_grab(); grab_connection = button->signal_key_press_event() .connect(sigc::bind(sigc::mem_fun(*this, &PreferencesWindow ::on_key_press_event), button, key)); } void PreferencesWindow::button_listener(unsigned int, Gnome::Conf::Entry conf_entry, Gtk::Button *button) { button->set_label(conf_entry.get_value().get_string()); } void PreferencesWindow::on_fullscreen_toggled() { bool b = fullscreen_checkbutton->get_active(); Glib::RefPtr &client = MainWindow::instance().gconf_client; Glib::ustring dir = MainWindow::instance().gconf_dir; client->set(dir + "/fullscreen", b); } void PreferencesWindow::fullscreen_listener(unsigned int, Gnome::Conf::Entry entry) { if (entry.get_value().get_type() != Gnome::Conf::VALUE_BOOL) return; bool b = entry.get_value().get_bool(); if (fullscreen_checkbutton->get_active() != b) fullscreen_checkbutton->set_active(b); } void PreferencesWindow::on_close_clicked() { window->hide(); } bool PreferencesWindow::on_closed(GdkEventAny *) { window->hide(); return true; } monster-masher-1.8.1/src/preferences-window.hpp0000644000175000017500000000355510547745536016544 00000000000000/* Preferences window class. * * Copyright (c) 2003, 04 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef PREFERENCES_WINDOW_HPP #define PREFERENCES_WINDOW_HPP #include #include #include #include #include #include #include #include "helpers.hpp" class PreferencesWindow: public sigc::trackable, noncopyable { public: PreferencesWindow(); ~PreferencesWindow(); void raise(); void show(); private: Glib::RefPtr ui; Gtk::Window *window; Gtk::CheckButton *fullscreen_checkbutton; sigc::connection grab_connection; bool on_key_press_event(GdkEventKey* event, Gtk::Button *button, Glib::ustring key); void setup_button(const Glib::ustring &widget, const Glib::ustring &key); void on_button_pressed(Gtk::Button *button, Glib::ustring key); void button_listener(unsigned int, Gnome::Conf::Entry conf_entry, Gtk::Button *button); void on_fullscreen_toggled(); void fullscreen_listener(unsigned int, Gnome::Conf::Entry entry); void on_close_clicked(); bool on_closed(GdkEventAny *); }; #endif monster-masher-1.8.1/src/sound.cpp0000644000175000017500000000245410547745536014056 00000000000000/* Implementation of class Sound. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include #include #include "sound.hpp" Sound &Sound::instance() { static Sound s; return s; } Sound::Sound() { } Sound::~Sound() { } void Sound::play(const std::string &name) { int id; cache_map::iterator i = cache.find(name); if (i != cache.end()) id = i->second; else { id = gnome_sound_sample_load(name.c_str(), (MONSTER_MASHER_SOUND_DIR + name).c_str()); cache.insert(make_pair(name, id)); } esd_sample_play(gnome_sound_connection_get(), id); } monster-masher-1.8.1/src/sound.hpp0000644000175000017500000000216010547745536014055 00000000000000/* Sound player class. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef SOUND_HPP #define SOUND_HPP #include #include "helpers.hpp" class Sound: noncopyable { public: // Sound is a singleton static Sound &instance(); ~Sound(); // play the sound file void play(const std::string &name); private: Sound(); typedef std::map cache_map; cache_map cache; }; #endif monster-masher-1.8.1/src/splat-helpers.cpp0000644000175000017500000001153610547745536015512 00000000000000/* Implementation of splatting helpers. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include // for rand #include "splat-helpers.hpp" #include "arena.hpp" #include "canvas.hpp" #include "game.hpp" #include "graphic.hpp" #include "obstacles.hpp" #include "fading-decoration.hpp" #include "pixbuf-drawing.hpp" Vector find_splat_center(Vector cpos, Vector tile_pos, Vector size, Vector dir) { // "move" position to border of tile int ts = Arena::instance().tile_size; Vector pos; if (dir.x == 0) pos.x = int(cpos.x + size.x / 2); else pos.x = tile_pos.x * ts + (1 + dir.x) * ts / 2; if (dir.y == 0) pos.y = int(cpos.y + size.y / 2); else pos.y = tile_pos.y * ts + (1 + dir.y) * ts / 2; return pos; } void create_gore(Vector pos, Vector tile, Glib::RefPtr source) { Thing *thing = Arena::instance().occupier(tile); int ts = Arena::instance().tile_size; if (dynamic_cast(thing) || dynamic_cast(thing)) { // determine clipping parameters Vector t1 = tile * ts, t2 = t1 + make_vector(ts, ts); // sp1 is upper left corner on source, sp2 is lower right corner Vector sp1 = clip(t1, pos, t2) - pos, sp2 = clip(t1, pos + make_vector(source->get_width(), source->get_height()), t2) - pos, tp1 = clip(t1, pos, t2) - t1; // upper left on tile Vector size = sp2 - sp1; // create pixbuf Glib::RefPtr pixbuf = Gdk::Pixbuf::create(source->get_colorspace(), source->get_has_alpha(), source->get_bits_per_sample(), size.x, size.y); // copy using obstacle as mask PixelIterator dest_i = begin(pixbuf); Glib::RefPtr obstacle = thing->get_graphic().get_pixbuf(); for (int y = 0; y < size.y; ++y) { PixelPosition src_p = get_position(source, sp1.x, sp1.y + y); PixelPosition mask_p = get_position(obstacle, tp1.x, tp1.y + y); for (int x = 0; x < size.x; ++x, src_p.right(), mask_p.right()) { dest_i->red() = src_p.pixel().red(); dest_i->green() = src_p.pixel().green(); dest_i->blue() = src_p.pixel().blue(); dest_i->alpha() = int(src_p.pixel().alpha()) * mask_p.pixel().alpha() / 255; ++dest_i; } } // create decoration Graphic *graph = new Graphic(Canvas::instance().block_layer); graph->set_pixbuf(pixbuf); graph->place_at(pos + sp1); FadingDecoration *deco = new FadingDecoration(graph, 20, 5 * Game::iterations_per_sec); if (Block *block = dynamic_cast(thing)) { block->add_cargo(graph); Game::instance().add_decoration(deco, block); } else Game::instance().add_decoration(deco); } } void splat_on_obstacles(Vector cpos, Glib::RefPtr pixbuf, Vector tile_pos, Vector dir) { int pw = pixbuf->get_width(), ph = pixbuf->get_height(); int ts = Arena::instance().tile_size; Vector pos = find_splat_center(cpos, tile_pos, make_vector(pw, ph), dir) + make_vector(std::rand() % 5 - 2, std::rand() % 5 - 2); pos -= make_vector(pw, ph) / 2; Vector ul_tile(pos.x / ts, pos.y / ts), ur_tile((pos.x + pw - 1) / ts, pos.y / ts), ll_tile(pos.x / ts, (pos.y + ph - 1) / ts), lr_tile((pos.x + pw - 1) / ts, (pos.y + ph - 1) / ts); if (ul_tile == ur_tile && ul_tile == ll_tile) create_gore(pos, ul_tile, pixbuf); else if (ul_tile == ur_tile) { create_gore(pos, ul_tile, pixbuf); create_gore(pos, ll_tile, pixbuf); } else if (ul_tile == ll_tile) { create_gore(pos, ul_tile, pixbuf); create_gore(pos, ur_tile, pixbuf); } else { create_gore(pos, ul_tile, pixbuf); create_gore(pos, ur_tile, pixbuf); create_gore(pos, ll_tile, pixbuf); create_gore(pos, lr_tile, pixbuf); } } void splat_on_floor(Vector pos, Glib::RefPtr pixbuf) { Graphic *graph = new Graphic(Canvas::instance().background_layer); graph->set_pixbuf(pixbuf); graph->place_at(pos); FadingDecoration *deco = new FadingDecoration(graph, 100, Game::iterations_per_sec / 10); Game::instance().add_decoration(deco); } monster-masher-1.8.1/src/splat-helpers.hpp0000644000175000017500000000225210547745536015512 00000000000000/* Helpers for splatting, i.e. putting gore on obstacles. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef SPLAT_HELPERS_HPP #define SPLAT_HELPERS_HPP #include #include #include "vector.hpp" extern void splat_on_obstacles(Vector cpos, Glib::RefPtr pixbuf, Vector tile_pos, Vector dir); extern void splat_on_floor(Vector pos, Glib::RefPtr pixbuf); #endif monster-masher-1.8.1/src/thing.cpp0000644000175000017500000000240510547745535014032 00000000000000/* Implementation of class Thing. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #include "thing.hpp" #include "arena.hpp" #include "graphic.hpp" Thing::Thing(Graphic *graph) : graphic(graph) { } Thing::~Thing() { // default clean-up if (Arena::instance().occupier(tile_pos) == this) Arena::instance().occupy(tile_pos, 0); } void Thing::occupy_tile(Vector pos) { tile_pos = pos; graphic->place_at(tile_pos * Arena::instance().tile_size); Arena::instance().occupy(tile_pos, this); } Graphic &Thing::get_graphic() { return *graphic.get(); } monster-masher-1.8.1/src/thing.hpp0000644000175000017500000000237510547745535014045 00000000000000/* The Thing class for something that occupies an arena tile and has a graphic. * * Copyright (c) 2003 Ole Laursen. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ #ifndef THING_HPP #define THING_HPP #include #include "vector.hpp" #include "helpers.hpp" class Graphic; class Thing: noncopyable { public: // take over ownership of graphic Thing(Graphic *graphic); virtual ~Thing(); // moves graphic to tile and registers with arena void occupy_tile(Vector pos); Graphic &get_graphic(); Vector tile_pos; private: std::auto_ptr graphic; }; #endif monster-masher-1.8.1/src/ucompose.hpp0000644000175000017500000003140610635236476014560 00000000000000/* Defines String::ucompose(fmt, arg...) for easy, i18n-friendly * composition of strings with Gtkmm >= 1.3.* (see www.gtkmm.org). * Uses Glib::ustring instead of std::string which doesn't work with * Gtkmm due to character encoding troubles with stringstreams. * * Version 1.0.5. * * Copyright (c) 2002, 03, 04, 07 Ole Laursen . * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License * as published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. */ // // Basic usage is like // // String::ucompose("This is a %1x%2 matrix.", rows, cols); // // See http://people.iola.dk/olau/compose/ or the included // README.compose for more details. // #ifndef STRING_UCOMPOSE_HPP #define STRING_UCOMPOSE_HPP #include #include #include #include #include #include // for multimap namespace UStringPrivate { // the actual composition class - using String::ucompose is cleaner, so we // hide it here class Composition { public: // initialize and prepare format string on the form "text %1 text %2 etc." explicit Composition(std::string fmt); // supply an replacement argument starting from %1 template Composition &arg(const T &obj); // compose and return string Glib::ustring str() const; private: std::wostringstream os; int arg_no; // we store the output as a list - when the output string is requested, the // list is concatenated to a string; this way we can keep iterators into // the list instead of into a string where they're possibly invalidated // when inserting a specification string typedef std::list output_list; output_list output; // the initial parse of the format string fills in the specification map // with positions for each of the various %?s typedef std::multimap specification_map; specification_map specs; template std::string stringify(T obj); }; // helper for converting spec string numbers inline int char_to_int(char c) { switch (c) { case '0': return 0; case '1': return 1; case '2': return 2; case '3': return 3; case '4': return 4; case '5': return 5; case '6': return 6; case '7': return 7; case '8': return 8; case '9': return 9; default: return -1000; } } inline bool is_number(int n) { switch (n) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': return true; default: return false; } } template inline std::string Composition::stringify(T obj) { os << obj; std::wstring str = os.str(); return Glib::convert(std::string(reinterpret_cast(str.data()), str.size() * sizeof(wchar_t)), "UTF-8", "WCHAR_T"); } // specialisations for the common string types template <> inline std::string Composition::stringify(std::string obj) { return obj; } template <> inline std::string Composition::stringify(Glib::ustring obj) { return obj; } template <> inline std::string Composition::stringify(const char *obj) { return obj; } template <> inline std::string Composition::stringify(char *obj) { return obj; } // implementation of class Composition template inline Composition &Composition::arg(const T &obj) { Glib::ustring rep = stringify(obj); if (!rep.empty()) { // manipulators don't produce output for (specification_map::const_iterator i = specs.lower_bound(arg_no), end = specs.upper_bound(arg_no); i != end; ++i) { output_list::iterator pos = i->second; ++pos; output.insert(pos, rep); } os.str(std::wstring()); //os.clear(); ++arg_no; } return *this; } inline Composition::Composition(std::string fmt) : arg_no(1) { #if __GNUC__ >= 3 os.imbue(std::locale("")); // use the user's locale for the stream #endif std::string::size_type b = 0, i = 0; // fill in output with the strings between the %1 %2 %3 etc. and // fill in specs with the positions while (i < fmt.length()) { if (fmt[i] == '%' && i + 1 < fmt.length()) { if (fmt[i + 1] == '%') { // catch %% fmt.replace(i, 2, "%"); ++i; } else if (is_number(fmt[i + 1])) { // aha! a spec! // save string output.push_back(fmt.substr(b, i - b)); int n = 1; // number of digits int spec_no = 0; do { spec_no += char_to_int(fmt[i + n]); spec_no *= 10; ++n; } while (i + n < fmt.length() && is_number(fmt[i + n])); spec_no /= 10; output_list::iterator pos = output.end(); --pos; // safe since we have just inserted a string specs.insert(specification_map::value_type(spec_no, pos)); // jump over spec string i += n; b = i; } else ++i; } else ++i; } if (i - b > 0) // add the rest of the string output.push_back(fmt.substr(b, i - b)); } inline Glib::ustring Composition::str() const { // assemble string std::string str; for (output_list::const_iterator i = output.begin(), end = output.end(); i != end; ++i) str += *i; return str; } } namespace String { // a series of functions which accept a format string on the form "text %1 // more %2 less %3" and a number of templated parameters and spits out the // composited string template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1) { UStringPrivate::Composition c(fmt); c.arg(o1); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11, const T12 &o12) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11).arg(o12); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11, const T12 &o12, const T13 &o13) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11).arg(o12).arg(o13); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11, const T12 &o12, const T13 &o13, const T14 &o14) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11).arg(o12).arg(o13).arg(o14); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11, const T12 &o12, const T13 &o13, const T14 &o14, const T15 &o15) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11).arg(o12).arg(o13).arg(o14).arg(o15); return c.str(); } } #endif // STRING_UCOMPOSE_HPP monster-masher-1.8.1/src/vector.hpp0000644000175000017500000001027610547745535014235 00000000000000/* A 2d vector structure used to represent positions and velocity. * Implements a lot of nice overloaded operators to ease calculations. * * Copyright (C) 2003, 04 Ole Laursen . * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA * */ #ifndef VECTOR_HPP #define VECTOR_HPP #include template struct Vector { T x, y; Vector() { } Vector(T px, T py): x(px), y(py) { } // conversion from another compatible vector type template Vector(const Vector &v) : x(v.x), y(v.y) { } template Vector operator +=(Vector other) { x += other.x; y += other.y; return *this; } template Vector operator -=(Vector other) { x -= other.x; y -= other.y; return *this; } template Vector operator *=(OT number) { x *= number; y *= number; return *this; } template Vector operator /=(OT number) { x /= number; y /= number; return *this; } Vector operator -() { return Vector(-x, -y); } }; template inline Vector operator +(Vector lhs, Vector rhs) { return Vector(lhs.x + rhs.x, lhs.y + rhs.y); } template inline Vector operator -(Vector lhs, Vector rhs) { return Vector(lhs.x - rhs.x, lhs.y - rhs.y); } template inline Vector operator *(Vector v, OT number) { return Vector(v.x * number, v.y * number); } template inline Vector operator *(OT number, Vector v) { return Vector(v.x * number, v.y * number); } template inline Vector operator %(Vector v, OT number) { return Vector(v.x % number, v.y % number); } template inline Vector operator /(Vector v, OT number) { return Vector(v.x / number, v.y / number); } template inline bool operator !=(Vector lhs, Vector rhs) { return !(lhs == rhs); } template inline bool operator ==(Vector lhs, Vector rhs) { return lhs.x == rhs.x && lhs.y == rhs.y; } template <> inline bool operator ==(Vector lhs, Vector rhs) { return std::abs(lhs.x - rhs.x) < 0.001 && std::abs(lhs.y - rhs.y) < 0.001; } template <> inline bool operator ==(Vector lhs, Vector rhs) { return std::abs(lhs.x - rhs.x) < 0.001 && std::abs(lhs.y - rhs.y) < 0.001; } // utilities template Vector make_vector(T x, T y) { return Vector(x, y); } template inline T dist(Vector v1, Vector v2) { return std::sqrt((v2.x - v1.x) * (v2.x - v1.x) + (v2.y - v1.y) * (v2.y - v1.y)); } template <> inline int dist(Vector v1, Vector v2) { return static_cast(std::sqrt(float((v2.x - v1.x) * (v2.x - v1.x) + (v2.y - v1.y) * (v2.y - v1.y)))); } template inline T length(Vector v) { return static_cast(std::sqrt(v.x * v.x + v.y * v.y)); } template inline Vector clip(Vector lower, Vector val, Vector upper) { Vector tmp; if (val.x > upper.x) tmp.x = upper.x; else if (val.x < lower.x) tmp.x = lower.x; else tmp.x = val.x; if (val.y > upper.y) tmp.y = upper.y; else if (val.y < lower.y) tmp.y = lower.y; else tmp.y = val.y; return tmp; } template inline Vector vector_cast(Vector v) { return Vector(static_cast(v.x), static_cast(v.y)); } #endif monster-masher-1.8.1/src/ui.glade0000644000175000017500000014707710547745536013650 00000000000000 Monster Masher GTK_WINDOW_TOPLEVEL GTK_WIN_POS_NONE False False False True False False GDK_WINDOW_TYPE_HINT_NORMAL GDK_GRAVITY_NORTH_WEST True 1 1 False 0 0 True False 0 True 0 0.5 GTK_SHADOW_ETCHED_IN 0 False False True False 0 True True 24 True Resurrections: %1 False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 0 True True True Score: %1 False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 0 True True True Score: %1 False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 0 True True True Level: %1 False False GTK_JUSTIFY_LEFT False False 0.8 0.5 0 0 0 True True 6 True True 0 False False 0 1 0 1 expand|shrink expand|shrink 12 Preferences GTK_WINDOW_TOPLEVEL GTK_WIN_POS_NONE False True False True False False GDK_WINDOW_TYPE_HINT_NORMAL GDK_GRAVITY_NORTH_WEST True False 12 True True True True GTK_POS_TOP False False 12 True False 12 True 0 0.5 GTK_SHADOW_NONE True False 0 12 True True Use _fullscreen mode True GTK_RELIEF_NORMAL True False False True 0 False False True <b>Fullscreen</b> False True GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 label_item 0 False False False True True Appearance False False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 tab 12 True False 12 True 0 0.5 GTK_SHADOW_NONE 12 True 3 3 True 6 6 32 True False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 1 2 1 2 fill True Key for moving down True True GTK_RELIEF_NORMAL True 1 2 2 3 fill True Key for moving to the right True True GTK_RELIEF_NORMAL True 2 3 1 2 fill fill True Key for moving to the right and up True True GTK_RELIEF_NORMAL True 2 3 0 1 fill fill True Key for moving up True True GTK_RELIEF_NORMAL True 1 2 0 1 fill fill True Key for moving to the left and up True True GTK_RELIEF_NORMAL True 0 1 0 1 fill fill True Key for moving to the left True True GTK_RELIEF_NORMAL True 0 1 1 2 fill fill True Key for moving to the left and down True True GTK_RELIEF_NORMAL True 0 1 2 3 fill fill True Key for moving to the right and down True True GTK_RELIEF_NORMAL True 2 3 2 3 fill fill True <b>Moving</b> False True GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 label_item 0 False False True False 6 True 0 0.5 GTK_SHADOW_NONE 12 True False 0 True Key for activating pulling of blocks True True GTK_RELIEF_NORMAL True 0 False False True <b>Pull block</b> False True GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 label_item 0 False False 0 True True False True True Player 1 keys False False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 tab 12 True False 12 True 0 0.5 GTK_SHADOW_NONE 12 True 3 3 True 6 6 32 True False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 1 2 1 2 fill True Key for moving to the right and down True True GTK_RELIEF_NORMAL True 1 2 2 3 fill True Key for moving to the right True True GTK_RELIEF_NORMAL True 2 3 1 2 fill fill True Key for moving to the right and up True True GTK_RELIEF_NORMAL True 2 3 0 1 fill fill True Key for moving up True True GTK_RELIEF_NORMAL True 1 2 0 1 fill fill True Key for moving to the left and up True True GTK_RELIEF_NORMAL True 0 1 0 1 fill fill True Key for moving to the left True True GTK_RELIEF_NORMAL True 0 1 1 2 fill fill True Key for moving to the left and down True True GTK_RELIEF_NORMAL True 0 1 2 3 fill fill True Key for moving down True True GTK_RELIEF_NORMAL True 2 3 2 3 fill fill True <b>Moving</b> False True GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 label_item 0 False False True False 6 True 0 0.5 GTK_SHADOW_NONE 12 True False 0 True Key for activating pulling of blocks True True GTK_RELIEF_NORMAL True 0 False False True <b>Pull block</b> False True GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 label_item 0 False False 0 True True False True True Player 2 keys False False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 tab 0 False False True GTK_BUTTONBOX_END 6 True True True gtk-close True GTK_RELIEF_NORMAL True 0 False False 12 Start Game GTK_WINDOW_TOPLEVEL GTK_WIN_POS_NONE False True False True False False GDK_WINDOW_TYPE_HINT_NORMAL GDK_GRAVITY_NORTH_WEST True False 12 True 0 0.5 GTK_SHADOW_NONE 12 True False 12 True True _One player True GTK_RELIEF_NORMAL True False False True 0 False False True True _Two players True GTK_RELIEF_NORMAL True False False True one_player_radiobutton 0 False False True <b>Number of Players</b> False True GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 label_item 0 False False True 0 0.5 GTK_SHADOW_NONE 12 True False 12 True True _Easy True GTK_RELIEF_NORMAL True False False True 0 False False True True _Medium True GTK_RELIEF_NORMAL True False False True easy_radiobutton 0 False False True True _Hard True GTK_RELIEF_NORMAL True False False True easy_radiobutton 0 False False True <b>Difficulty</b> False True GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 label_item 0 False False True 0 0.5 GTK_SHADOW_NONE 12 True False 6 True Start at _level: True False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 level_spinbutton 0 False False True True 1 0 False GTK_UPDATE_IF_VALID False False 1 1 1 1 5 5 0 False False True False False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 6 False False True <b>Level</b> False True GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 label_item 0 False False True GTK_BUTTONBOX_END 6 True True True gtk-cancel True GTK_RELIEF_NORMAL True True True True True GTK_RELIEF_NORMAL True True 0.5 0.5 0 0 0 0 0 0 True False 2 True gtk-ok 4 0.5 0.5 0 0 0 False False True _Start True False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 0 False False 0 False False monster-masher-1.8.1/src/README.compose0000644000175000017500000003063310547745535014545 00000000000000Documentation for the compose library ------------------------------------- The file compose.hpp contains the source for a small C++ library for composition of strings from arbitrary objects convertible to strings (such as integers, floats etc.). This is the documentation for that library. The utility of the library is thought to be greatest for programmers needing translation of their programs, but in fact it can be used for its mere convenience. The file ucompose.hpp has a front-end that uses Glib::ustrings which come from the C++ GUI library Gtkmm (see www.gtkmm.org). Use ucompose.hpp and String::ucompose if you are using Gtkmm - else your ustrings will end up corrupted someday. The initiating problem - a prelude ---------------------------------- The basic problem this library solves is that of creating strings such as "Fact is that 10 gobbles are worth 100$ of troubles." where the two numbers, 10 and 100, are to be determined at runtime and may vary. C++ doesn't have a good solution for this problem - unless you use something like itoa() (which isn't really portable and doesn't work for arbitrary objects, say GobbliGobs, that define their own conversion routines by overloading "ostream & operator<<(ostream &, Object)"), the best option you have is to aggregate an ostringstream: std::ostringstream os; os << gobble_no; std::string gobble_no_as_string = os.str(); But even Bjarne Stroustrup thinks this is embarrassing for ordinary integer-to-string conversion. The Boost family of libraries (see www.boost.org) defines a lexical_cast() which one may use to conveniently compose a complex string (in fact it uses a stringstream internally): #include std::string s = "Fact is that " + boost::lexical_cast(gobble_no) + " gobbles are worth " + boost::lexical_cast(gobble_price) + "$ of troubles."; However, this is prone to subtle errors when written (one may easily forget a '+' or a space on one side of a converted object, both annoyingly requiring recompilation and attention), hard to read, and a real internationalisation killer. Imagine translating the strings "Fact is that " " gobbles are worth " "$ of troubles." not quite sure whether the strings actually form an entity and with only fragmented clues of what is inserted between them. What is worse, most languages do not order the different parts of sentences the same way English does. And by chopping up the string, we have more or less enforced a particular order (or at least made the changing of it most difficult for the translator). Also, one now has to mark up three strings in the program to get one string translated - another source of errors. Furthermore, the lexical cast of Boost doesn't allow us to control even simple formatting requests, such as increased (or, often more importantly, decreased) precision of floating point numbers. Interlude: The Solution that isn't really a Solution ---------------------------------------------------- So, one might think, isn't this string composition problem already solved? Does our inheritage from C not already provide us with the solution, the end to all these troubles? Upon thinking this, one probably has the dreaded printf, "print formatted", family in mind. Except from the type insecurity resulting from usage of such functions, a problem already partly solved by modern compiler warnings, suffice to say that they mix badly with ordinary C++ style of programming. For good reason, they don't return proper std::string's and usually even require one to worry about memory management. Needless worries. Finale: An end to the problem ----------------------------- So what we need really need is something like std::string s = compose("Fact is that %1 gobbles are worth %2$ of troubles.", gobble_no, gobble_price); This is what this library gives. Semantics in details (...and there was much rejoice) ---------------------------------------------------- Actually, what the library really gives is 15 overloaded template functions like template inline std::string compose(const std::string &fmt, const T1 &o1, const T2 &o2); declared in the namespace String - each allowing one extra parameter to join the composition - and some implementation details in the namespace StringPrivate (notably a class that defines a generic, unlimited parameter substitution mechanism). The first parameter is the format string containing percent specifications (%1, %2 etc.) and the following generically typed parameters are the objects to be inserted in the string. The 15 functions allow up to 15 parameters to be inserted. For instance: String::compose("%1 times %2 equals %3", 1.5, 2, 3); // "1.5 times 2 equals 3" A percent specification consists of a percent sign followed by an integer. The format string is parsed at first so any possible new percent specifications that may be constructed halfway through the composition by the inserted strings, aren't interpreted as such: String::compose("1st: %1 2nd: %2", "%2", 1234); // "1st: %2 2nd: 1234" Of course, this format allows one to easily swap the specification strings: String::compose("No. %2 is better than no. %1", 1, 2); // "No. 2 is better than no. 1" One may silently leave out a specification string: String::compose("%1, %3", "Hey", "hi", "ho"); // "Hey, ho" Or even an object (all percent specifications are always erased): String::compose("%1 %2: '%3'", "Twin", "geeks"); // "Twin geeks: ''" And specifications may be repeated: String::compose("I am feeling so %1, %1, %1!", "happy"); // "I am feeling so happy, happy, happy!" This gives potential translators of the strings considerable freedom. Conversion of objects, the art of ---------------------------------- Internally the template functions use an object that stores a stringstream for converting arguments. Thus adding an extra parameter to the compose function is very much like appending an extra "<< arg" to a stream output statement. This implies seamless support for manipulators and that user-supplied conversions are supported for free. To add output support for one of your own classes, simply add the appropriate operator<< overload, just as you would for std::cout: ostream &operator<<(ostream &, const MyType &my_obj) { // ... } The manipulator support imply that constructions like the following are possible: #include // ... double r = 1.0 / 6; String::compose("1/6 app. equals %1, %2, and %3", r, std::setprecision(10), r, std::setprecision(3), r); // "1/6 app. equals 0.166667, 0.1666666667, and 0.167" Note that within the same call of compose the stringstream is not cleared, so the same rules governs whether the settings are remembered as for ordinary ostreams (look up the rules in your favourite C++ standard iostream documentation): String::compose("1/6 app. equals %1, %2, and %3", r, std::setprecision(10), r, r); // "1/6 app. equals 0.166667, 0.1666666667, and 0.1666666667" Each call of compose constructs a new stringstream so settings are not preserved across these. Internally, the manipulator detection works by examining the output from the stringstream - if it is empty, then the parameter is not considered real output, and the specification number is not incremented. This behaviour is needed to give the above semantics, but it also implies that if your insert the empty string, "", the compose object will not consider it output; as a consequence the following example does not work as expected: String::compose("I'm a%1 alien at the age of %2.", happiness > 10 ? " happy" : "", 99800); // "I'm a happy alien at the age of 99800." // "I'm a99800 alien at the age of ." But read below for why you really should not do this anyway, and for the simple remedy. Escaping the parse ------------------ All double percent signs are replaced with a single sign; if the double signs appears in front of an integer, the resulting single percent sign followed by the integer isn't considered a specification. Thus, to get a percent specification: String::compose("This is a %1: %%1", "specification"); // "This is a specification: %1" Single percent signs are left untouched in case they aren't followed by a number: String::compose("%1% done", 0.98 * 100); // "98% done" To get two percent signs in a row: String::compose("%1 %2 signs: %%%%", 2, '%'); // "2 % signs: %%" A final advice against cleverness --------------------------------- Do not let the techniques this library offers tempt you into trying overly clever string compositions, or the translators of your program will curse you in eternity! For instance: String::compose("A%1 man", man.is_angry() ? "n angry" : " content"); // "An angry man" // "A happy man" The inherent problem with this approach is that it hardcodes the way the sentence is constructed; obviously this is only guaranteed to work for English. It also makes the code harder to read. Instead, fork the code on a slightly higher level and repeat the whole string: std::string description; if (man.is_angry()) description = String::compose("An angry man"); else description = String::compose("A content man"); Now the code is also much easier to read. This (slightly contrived, but realistic, I have seen it in real code) example is of course quite easy to spot, but in generel one needs to be very careful as soon as one substitute strings into ordinary text. One more example: String::compose("This is a %1", thing->got_wheels() ? "car" : "house"); Innocent looking, but absolutely wrong. Most languages will need to change the part "a " of the string too (e.g. in Danish it is "en bil" (a car) but "et hus" (a house)). Completely decoupled words should of course not cause any problems: String::compose("The XML error was caused by the element '%1'", element.name); In fact, factoring out the common part of such strings (e.g. putting it in a xml_error function) may be much of a convenience for the translators. Often, you would want to use constructions such as the above ones when some part of the string sometime needs to be in plural form: String::compose("There is a total of %1 %2.", n, n == 1 ? "hen" : "hens"); But do not do this - for some languages, a two-way branch isn't enough. Instead the translation system should have some means of solving this (for gettext, look up the function 'ngettext'). Practically speaking, the art of improvement -------------------------------------------- The latest, super-duper-improved (hah!) version of the library should always be available together with a small test example from http://www.cs.aau.dk/~olau/compose/ Note that the license of the library is GNU Lesser General Public License. For the uninitiated, this basically means that you may use the library freely in any way you want, but if you change any of the code of it and distribute it in binary form, you _must_ also release the source for the modified library under the LGPL. Thus you must share your improvements with the rest of the world, just like I shared my code with you. No big deal. If you have any comments, suggestions for improvements, critics, (good) jokes, portability fixes, interesting uses, or perhaps just a word of wisdom, let me know. Ole Laursen , 2003. A short historical anecdote - postlude -------------------------------------- One might think that the name of the namespace "String::" is pretty lame; and, indeed, I agree. However, the library was initially born because the Gtkmm family of libraries doesn't help with composition of strings and e.g. integers in a way so that the placement of the integers is decoupled from the conversion to strings; a procedure that is frequently badly needed in a GUI-intensitive program. So when I got the idea of using a stringstream together with a template member function, I promptly implemented the Composition class (defined in the StringPrivate namespace). But, alas, the functionality isn't conceived to be important enough for Gtkmm users to be put into Glibmm (a support library for Gtkmm that contains various helpers), so instead I'm placing it here. Unfortunately, this left me without a proper namespace (formerly "Glib::") to wrap the functionality in - thus the current "String::". My apologies. Maybe the situation will change one day. Suggestions are welcome.