diff options
author | Keri Harris <keri@gentoo.org> | 2007-10-13 19:53:40 +0000 |
---|---|---|
committer | Keri Harris <keri@gentoo.org> | 2007-10-13 19:53:40 +0000 |
commit | ab09e94d5adb92681b21612ee422b61fb7d2dd75 (patch) | |
tree | 564e4ff76956e1dc8b5ea29a1f6e58e53a092375 /dev-lang | |
parent | Version bump. (diff) | |
download | gentoo-2-ab09e94d5adb92681b21612ee422b61fb7d2dd75.tar.gz gentoo-2-ab09e94d5adb92681b21612ee422b61fb7d2dd75.tar.bz2 gentoo-2-ab09e94d5adb92681b21612ee422b61fb7d2dd75.zip |
Version bump.
(Portage version: 2.1.3.12)
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/qu-prolog/ChangeLog | 9 | ||||
-rw-r--r-- | dev-lang/qu-prolog/files/digest-qu-prolog-8.2 | 6 | ||||
-rw-r--r-- | dev-lang/qu-prolog/files/qu-prolog-8.2-configure.patch | 19 | ||||
-rw-r--r-- | dev-lang/qu-prolog/files/qu-prolog-8.2-debug.patch | 44 | ||||
-rw-r--r-- | dev-lang/qu-prolog/files/qu-prolog-8.2-gcc4.patch | 35 | ||||
-rw-r--r-- | dev-lang/qu-prolog/files/qu-prolog-8.2-portage.patch | 234 | ||||
-rw-r--r-- | dev-lang/qu-prolog/qu-prolog-8.2.ebuild | 91 |
7 files changed, 437 insertions, 1 deletions
diff --git a/dev-lang/qu-prolog/ChangeLog b/dev-lang/qu-prolog/ChangeLog index 865ca422639c..8fef71e4b45d 100644 --- a/dev-lang/qu-prolog/ChangeLog +++ b/dev-lang/qu-prolog/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-lang/qu-prolog # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/qu-prolog/ChangeLog,v 1.32 2007/08/25 22:07:35 keri Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/qu-prolog/ChangeLog,v 1.33 2007/10/13 19:53:40 keri Exp $ + +*qu-prolog-8.2 (13 Oct 2007) + + 13 Oct 2007; keri <keri@gentoo.org> +files/qu-prolog-8.2-configure.patch, + +files/qu-prolog-8.2-debug.patch, +files/qu-prolog-8.2-gcc4.patch, + +files/qu-prolog-8.2-portage.patch, +qu-prolog-8.2.ebuild: + Version bump. *qu-prolog-8.1 (25 Aug 2007) diff --git a/dev-lang/qu-prolog/files/digest-qu-prolog-8.2 b/dev-lang/qu-prolog/files/digest-qu-prolog-8.2 new file mode 100644 index 000000000000..e6b6a9eebad9 --- /dev/null +++ b/dev-lang/qu-prolog/files/digest-qu-prolog-8.2 @@ -0,0 +1,6 @@ +MD5 0835fe541b84ce2580f9d9dc257c1a97 qp8.2.tar.gz 1220921 +RMD160 24d5beb743d855840f24456068758c91238c4c14 qp8.2.tar.gz 1220921 +SHA256 3f2b171862625cb7a9700a649b6d689d0f7488698cccc490a2ab0d0dc485492f qp8.2.tar.gz 1220921 +MD5 7dda8d08ad43199a0ba698e53e97fb5f qu-prolog-8.2-xqp-qt4.tar.gz 8500 +RMD160 17a968750ccd1c5d4f67d9e67647abd22186274a qu-prolog-8.2-xqp-qt4.tar.gz 8500 +SHA256 3960651d3fe480a5d0a0437af015fd92a0eabee8e5fd6c1868d2592ddbcefcb6 qu-prolog-8.2-xqp-qt4.tar.gz 8500 diff --git a/dev-lang/qu-prolog/files/qu-prolog-8.2-configure.patch b/dev-lang/qu-prolog/files/qu-prolog-8.2-configure.patch new file mode 100644 index 000000000000..7233ec28f239 --- /dev/null +++ b/dev-lang/qu-prolog/files/qu-prolog-8.2-configure.patch @@ -0,0 +1,19 @@ +--- qp8.2.orig/configure 2007-10-08 16:13:48.000000000 +1300 ++++ qp8.2/configure 2007-10-14 08:10:20.000000000 +1300 +@@ -3786,6 +3786,8 @@ + + fi + ++if false; then ++ + # 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 +@@ -3836,6 +3838,7 @@ + { (exit 1); exit 1; }; } + fi + ++fi + + GCCINCLUDES= + diff --git a/dev-lang/qu-prolog/files/qu-prolog-8.2-debug.patch b/dev-lang/qu-prolog/files/qu-prolog-8.2-debug.patch new file mode 100644 index 000000000000..9dfb8032d2cd --- /dev/null +++ b/dev-lang/qu-prolog/files/qu-prolog-8.2-debug.patch @@ -0,0 +1,44 @@ +diff -ur qp8.2.orig/src/io.cc qp8.2/src/io.cc +--- qp8.2.orig/src/io.cc 2007-10-08 16:13:27.000000000 +1300 ++++ qp8.2/src/io.cc 2007-10-14 08:11:19.000000000 +1300 +@@ -914,8 +914,7 @@ + } + + #ifdef DEBUG_IO +- cerr.form("%s result = %ld FD_ISSET(%ld, ...) = %ld\n", +- __FUNCTION__, result, fd, FD_ISSET(fd, &fds)); ++ cerr << __FUNCTION__ << " result = " << result << "FD_ISSET(" << fd << ", ...) = " << FD_ISSET(fd, &fds) << endl; + #endif + #ifdef WIN32 + if (result == 0 || result == 128) +diff -ur qp8.2.orig/src/thread_escapes.cc qp8.2/src/thread_escapes.cc +--- qp8.2.orig/src/thread_escapes.cc 2007-10-08 16:13:28.000000000 +1300 ++++ qp8.2/src/thread_escapes.cc 2007-10-14 08:11:19.000000000 +1300 +@@ -212,8 +212,7 @@ + thread_table->IncLive(); + + #ifdef DEBUG_MT +- printf("%s Thread %ld, %ld now live\n", +- __FUNCTION__, thread->TInfo().ID(), thread_table->Live()); ++ cout << __FUNCTION__ << " Thread " << thread->TInfo().ID() << ", " << thread_table->Live() << " now live" << endl; + // heap.DisplayTerm(cerr, *atoms, argG); + #endif + +@@ -541,7 +540,7 @@ + Condition(ThreadCondition::EXITED); + + #ifdef DEBUG_MT +- cerr.form("%s %ld\n", __FUNCTION__, TInfo().ID()); ++ cerr << __FUNCTION__ << " " << TInfo().ID() << endl; + #endif + + if (TInfo().SymbolSet()) +@@ -948,7 +947,7 @@ + thread->Condition(ThreadCondition::EXITED); + + #ifdef DEBUG_MT +- cerr.form("%s %ld\n", __FUNCTION__, thread->TInfo().ID()); ++ cerr << __FUNCTION__ << " " << thread->TInfo().ID(); + #endif + + if (thread->TInfo().SymbolSet()) diff --git a/dev-lang/qu-prolog/files/qu-prolog-8.2-gcc4.patch b/dev-lang/qu-prolog/files/qu-prolog-8.2-gcc4.patch new file mode 100644 index 000000000000..b22dbade25a2 --- /dev/null +++ b/dev-lang/qu-prolog/files/qu-prolog-8.2-gcc4.patch @@ -0,0 +1,35 @@ +diff -ur qp8.2.orig/src/xqp/interact.h qp8.2/src/xqp/interact.h +--- qp8.2.orig/src/xqp/interact.h 2007-03-02 13:25:06.000000000 +1300 ++++ qp8.2/src/xqp/interact.h 2007-10-14 08:12:05.000000000 +1300 +@@ -27,7 +27,7 @@ + #include <QMouseEvent> + #include <QKeyEvent> + #include <Q3PtrList> +-#include <fstream.h> ++#include <fstream> + #include <q3accel.h> + #include <qregexp.h> + #include <qsocketnotifier.h> +diff -ur qp8.2.orig/src/xqp/main.cc qp8.2/src/xqp/main.cc +--- qp8.2.orig/src/xqp/main.cc 2006-04-06 16:01:45.000000000 +1200 ++++ qp8.2/src/xqp/main.cc 2007-10-14 08:12:05.000000000 +1300 +@@ -19,9 +19,9 @@ + + #include <stdlib.h> + #include <stdio.h> +-#include <iostream.h> ++#include <iostream> + #include <unistd.h> +-#include <fstream.h> ++#include <fstream> + #include <sys/types.h> + #include <sys/stat.h> + #include <fcntl.h> +@@ -30,6 +30,7 @@ + + #include "xqp.h" + ++using namespace std; + + // Create 2 sockets for unidirectional communication to and from qp + int socket_main_to_qp[2], socket_qp_to_main[2]; diff --git a/dev-lang/qu-prolog/files/qu-prolog-8.2-portage.patch b/dev-lang/qu-prolog/files/qu-prolog-8.2-portage.patch new file mode 100644 index 000000000000..fb7010ea9c3c --- /dev/null +++ b/dev-lang/qu-prolog/files/qu-prolog-8.2-portage.patch @@ -0,0 +1,234 @@ +diff -ur qp8.2.orig/Makefile.in qp8.2/Makefile.in +--- qp8.2.orig/Makefile.in 2007-10-08 16:13:47.000000000 +1300 ++++ qp8.2/Makefile.in 2007-10-14 08:12:34.000000000 +1300 +@@ -14,6 +14,7 @@ + # objects. + # + ++export QPHOME = @prefix@/lib/qu-prolog + export QPBIN = @QPHOME@/bin + + +@@ -34,7 +35,6 @@ + objects: + @$(MAKE) -C @QPHOME@/bin $(PARALLEL) all + @$(MAKE) -C @QPHOME@/src $(PARALLEL) all +- @$(MAKE) -C @QPHOME@/src $(PARALLEL) install + @$(MAKE) -C @QPHOME@/prolog $(PARALLEL) all + + +diff -ur qp8.2.orig/bin/qc.in qp8.2/bin/qc.in +--- qp8.2.orig/bin/qc.in 2007-08-01 12:23:42.000000000 +1200 ++++ qp8.2/bin/qc.in 2007-10-14 08:12:34.000000000 +1300 +@@ -47,24 +47,25 @@ + # + # location of Qu-Prolog project + # +-PATH=@QPHOME@/bin:$PATH ++QPHOME=@libdir@/qu-prolog ++PATH=$QPHOME/bin:$PATH + + # + # names of Qu-Prolog binaries + # +-preprocess=@QPHOME@/bin/qppp +-expand=@QPHOME@/bin/qg +-compile=@QPHOME@/bin/qc1 ++preprocess=qppp ++expand=qg ++compile=qc1 + compversion=qup +-assemble=@QPHOME@/bin/qa +-link=@QPHOME@/bin/ql +-execute=@QPHOME@/bin/qem ++assemble=qa ++link=ql ++execute=qem + + # + # Use the line below when dynamic search for libraries is implemented. + # + # libqofiles="" +-libqofiles="@QPHOME@/prolog/compiler/*.qo @QPHOME@/prolog/library/*.qo" ++libqofiles="@QPHOME@/compiler/*.qo @QPHOME@/library/*.qo" + + qlfiles="" + qlefiles="" +@@ -327,18 +328,7 @@ + absexecfile=$execfile + ;; + *) +- currdir=`pwd` +- case $currdir in +- /u*) +- abspath=`echo $currdir | sed "s,/u./$HOSTNAME/,/homes/,"` +- ;; +- /tmp_mnt/*) +- abspath=`echo $currdir | sed 's,/tmp_mnt/homes/[^/]*/,/homes/,'` +- ;; +- *) +- abspath=$currdir +- ;; +- esac ++ abspath=`pwd` + absexecfile=$abspath/$execfile + ;; + esac +@@ -354,5 +344,8 @@ + + # make executable file + +-echo "exec $execute $Eoptions $lflag -Q '$savefile' \$* $*" >$execfile ++echo "QPPATH=@prefix@/bin:$QPHOME/bin" >$execfile ++echo "QPLIBPATH=$QPHOME/compiler:$QPHOME/library:"'$QPLIBPATH' >>$execfile ++echo "export QPPATH QPLIBPATH" >>$execfile ++echo "exec $execute $Eoptions $lflag -Q '$savefile' \$* $*" >>$execfile + chmod a+x $execfile +diff -ur qp8.2.orig/prolog/compiler/Makefile.in qp8.2/prolog/compiler/Makefile.in +--- qp8.2.orig/prolog/compiler/Makefile.in 2007-10-08 16:13:48.000000000 +1300 ++++ qp8.2/prolog/compiler/Makefile.in 2007-10-14 08:12:34.000000000 +1300 +@@ -29,5 +29,5 @@ + + + %.qo: %.qs +- $(COMPILE.qc) -c -o $@ $< ++ @QPHOME@/src/qa -i $< -o $@ + +diff -ur qp8.2.orig/prolog/library/Makefile.in qp8.2/prolog/library/Makefile.in +--- qp8.2.orig/prolog/library/Makefile.in 2007-10-08 16:13:48.000000000 +1300 ++++ qp8.2/prolog/library/Makefile.in 2007-10-14 08:12:34.000000000 +1300 +@@ -99,4 +99,4 @@ + + + %.qo: %.qs +- $(COMPILE.qc) -c -o $@ $< ++ @QPHOME@/src/qa -i $< -o $@ +diff -ur qp8.2.orig/prolog/qc1/Makefile.in qp8.2/prolog/qc1/Makefile.in +--- qp8.2.orig/prolog/qc1/Makefile.in 2007-10-08 16:13:48.000000000 +1300 ++++ qp8.2/prolog/qc1/Makefile.in 2007-10-14 08:12:34.000000000 +1300 +@@ -3,6 +3,7 @@ + # + PROGRAM = @QPHOME@/bin/qc1.qup + ++SAVEFILE = qc1.qx + SOURCES = qc1.ql + + BASES = $(basename $(SOURCES)) +@@ -13,8 +14,12 @@ + all: $(PROGRAM) + + $(PROGRAM): $(OBJECTS) +- $(COMPILE.qc) -L -o $(PROGRAM) $(OBJECTS) ++ @QPHOME@/src/ql -o $(SAVEFILE) @QPHOME@/prolog/compiler/*.qo @QPHOME@/prolog/library/*.qo $(OBJECTS) ++ @echo "QPPATH=@prefix@/bin:$(QPHOME)/bin" >$(PROGRAM) ++ @echo "QPLIBPATH=$(QPHOME)/compiler:$(QPHOME)/library" >>$(PROGRAM) ++ @echo "export QPPATH QPLIBPATH" >>$(PROGRAM) ++ @echo -e "exec qem -L -Q $(QPHOME)/bin/$(SAVEFILE) \044\052" >>$(PROGRAM) + + %.qo: %.qs +- $(COMPILE.qc) -c -o $@ $< ++ @QPHOME@/src/qa -i $< -o $@ + +diff -ur qp8.2.orig/prolog/qecat/Makefile.in qp8.2/prolog/qecat/Makefile.in +--- qp8.2.orig/prolog/qecat/Makefile.in 2007-10-08 16:13:48.000000000 +1300 ++++ qp8.2/prolog/qecat/Makefile.in 2007-10-14 08:12:34.000000000 +1300 +@@ -4,6 +4,7 @@ + + PROGRAM = $(QPBIN)/qecat + ++SAVEFILE = qecat.qx + SOURCES = qecat.ql + + BASES = $(basename $(SOURCES)) +@@ -14,9 +15,13 @@ + all: $(PROGRAM) + + $(PROGRAM): $(OBJECTS) +- $(COMPILE.qc) -L -o $(PROGRAM) $(OBJECTS) ++ @QPHOME@/src/ql -o $(SAVEFILE) @QPHOME@/prolog/compiler/*.qo @QPHOME@/prolog/library/*.qo $(OBJECTS) ++ @echo "QPPATH=@prefix@/bin:$(QPHOME)/bin" >$(PROGRAM) ++ @echo "QPLIBPATH=$(QPHOME)/compiler:$(QPHOME)/library" >>$(PROGRAM) ++ @echo "export QPPATH QPLIBPATH" >>$(PROGRAM) ++ @echo -e "exec qem -L -Q $(QPHOME)/bin/$(SAVEFILE) \044\052" >>$(PROGRAM) + + + %.qo: %.qs +- $(COMPILE.qc) -c -o $@ $< ++ @QPHOME@/src/qa -i $< -o $@ + +diff -ur qp8.2.orig/prolog/qg/Makefile.in qp8.2/prolog/qg/Makefile.in +--- qp8.2.orig/prolog/qg/Makefile.in 2007-10-08 16:13:48.000000000 +1300 ++++ qp8.2/prolog/qg/Makefile.in 2007-10-14 08:12:34.000000000 +1300 +@@ -4,6 +4,7 @@ + + PROGRAM = @QPHOME@/bin/qg + ++SAVEFILE = qg.qx + SOURCES = qg.ql + + BASES = $(basename $(SOURCES)) +@@ -14,9 +15,13 @@ + all: $(PROGRAM) + + $(PROGRAM): $(OBJECTS) +- $(COMPILE.qc) -L -o $(PROGRAM) $(OBJECTS) ++ @QPHOME@/src/ql -o $(SAVEFILE) @QPHOME@/prolog/compiler/*.qo @QPHOME@/prolog/library/*.qo $(OBJECTS) ++ @echo "QPPATH=@prefix@/bin:$(QPHOME)/bin" >$(PROGRAM) ++ @echo "QPLIBPATH=$(QPHOME)/compiler:$(QPHOME)/library" >>$(PROGRAM) ++ @echo "export QPPATH QPLIBPATH" >>$(PROGRAM) ++ @echo -e "exec qem -L -Q $(QPHOME)/bin/$(SAVEFILE) \044\052" >>$(PROGRAM) + + + %.qo: %.qs +- $(COMPILE.qc) -c -o $@ $< ++ @QPHOME@/src/qa -i $< -o $@ + +diff -ur qp8.2.orig/prolog/qp/Makefile.in qp8.2/prolog/qp/Makefile.in +--- qp8.2.orig/prolog/qp/Makefile.in 2007-10-08 16:13:48.000000000 +1300 ++++ qp8.2/prolog/qp/Makefile.in 2007-10-14 08:12:34.000000000 +1300 +@@ -3,6 +3,7 @@ + # + PROGRAM = @QPHOME@/bin/qp + ++SAVEFILE = qp.qx + SOURCES = qp.ql + + BASES = $(basename $(SOURCES)) +@@ -13,9 +14,13 @@ + all: $(PROGRAM) + + $(PROGRAM): $(OBJECTS) +- $(COMPILE.qc) -o $(PROGRAM) $(OBJECTS) ++ @QPHOME@/src/ql -o $(SAVEFILE) @QPHOME@/prolog/compiler/*.qo @QPHOME@/prolog/library/*.qo $(OBJECTS) ++ @echo "QPPATH=@prefix@/bin:$(QPHOME)/bin" >$(PROGRAM) ++ @echo "QPLIBPATH=$(QPHOME)/compiler:$(QPHOME)/library" >>$(PROGRAM) ++ @echo "export QPPATH QPLIBPATH" >>$(PROGRAM) ++ @echo -e "exec qem -Q $(QPHOME)/bin/$(SAVEFILE) \044\052" >>$(PROGRAM) + + + %.qo: %.qs +- $(COMPILE.qc) -c -o $@ $< ++ @QPHOME@/src/qa -i $< -o $@ + +diff -ur qp8.2.orig/src/Makefile.in qp8.2/src/Makefile.in +--- qp8.2.orig/src/Makefile.in 2007-10-08 16:13:48.000000000 +1300 ++++ qp8.2/src/Makefile.in 2007-10-14 08:12:34.000000000 +1300 +@@ -39,7 +39,7 @@ + + #export DEBUGGING= + +-export CXXFLAGS = @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 $(OPTIMISATION) @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized ++#export CXXFLAGS = @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 $(OPTIMISATION) @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized + export QACXXFLAGS = -Wall -D_GNU_SOURCE=1 @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized + + .PHONY: all +@@ -78,6 +78,9 @@ + + # Targets + ++.cc.o: ++ $(CXX) $(CXXFLAGS) @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized -c $< ++ + .PHONY: commands + commands: $(GENERATED) $(LIBRARIES) $(BIG_LIBRARY) + @$(MAKE) $(ALL_COMMANDS) diff --git a/dev-lang/qu-prolog/qu-prolog-8.2.ebuild b/dev-lang/qu-prolog/qu-prolog-8.2.ebuild new file mode 100644 index 000000000000..95552b5a11b4 --- /dev/null +++ b/dev-lang/qu-prolog/qu-prolog-8.2.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/qu-prolog/qu-prolog-8.2.ebuild,v 1.1 2007/10/13 19:53:40 keri Exp $ + +inherit eutils + +MY_P=qp${PV} + +DESCRIPTION="Qu-Prolog is an extended Prolog supporting quantifiers, object-variables and substitutions" +HOMEPAGE="http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html" +SRC_URI="http://www.itee.uq.edu.au/~pjr/HomePages/QPFiles/${MY_P}.tar.gz + qt4? ( mirror://gentoo/${P}-xqp-qt4.tar.gz )" + +LICENSE="as-is" +SLOT="0" +KEYWORDS="~ppc ~sparc ~x86" +IUSE="debug doc examples qt3 qt4 threads" + +DEPEND="qt3? ( =x11-libs/qt-3* ) + qt4? ( >=x11-libs/qt-4.1.0 )" + +S="${WORKDIR}"/${MY_P} + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-portage.patch + epatch "${FILESDIR}"/${P}-configure.patch + epatch "${FILESDIR}"/${P}-gcc4.patch + epatch "${FILESDIR}"/${P}-debug.patch +} + +src_compile() { + econf \ + $(use_enable debug) \ + $(use_enable threads multiple-threads) \ + || die "econf failed" + emake || die "emake failed" + + if use qt4; then + cd "${S}"/src/xqp/qt4 + qmake || die "qmake xqp failed" + emake || die "emake xqp failed" + elif use qt3; then + cd "${S}"/src/xqp + "${QTDIR}"/bin/qmake || die "qmake xqp failed" + emake || die "emake xqp failed" + fi +} + +src_install() { + exeinto /usr/bin + doexe src/qa src/qdeal src/qem src/ql + doexe bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp bin/qppp + + if use qt4; then + doexe src/xqp/qt4/xqp + elif use qt3; then + doexe src/xqp/xqp + fi + + insinto /usr/$(get_libdir)/${PN}/bin + doins prolog/qc1/qc1.qx \ + prolog/qecat/qecat.qx \ + prolog/qg/qg.qx \ + prolog/qp/qp.qx + + insinto /usr/$(get_libdir)/${PN}/library + doins prolog/library/*.qo + + insinto /usr/$(get_libdir)/${PN}/compiler + doins prolog/compiler/*.qo + + doman doc/man/man1/*.1 + + dodoc README + + if use doc ; then + docinto reference-manual + dodoc doc/manual/*.html + docinto user-guide + dodoc doc/user/main.ps + fi + + if use examples ; then + insinto /usr/share/doc/${PF}/examples + doins examples/*.ql + docinto examples + dodoc examples/README + fi +} |