summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2016-02-17 06:56:29 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2016-02-17 06:56:29 +0000
commit04c81d4782d5fee95707d553856d2db3eabd57e5 (patch)
treeea4b85ac65683123bb1ab83defb79109c4b073ca
parentf4ceeca3452497c6d419c36dea3f8dc8cee219f2 (diff)
poppler 0.41.0
git-svn-id: svn://tug.org/texlive/trunk@39752 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/libs/README2
-rw-r--r--Build/source/libs/poppler/ChangeLog5
-rwxr-xr-xBuild/source/libs/poppler/configure22
-rw-r--r--Build/source/libs/poppler/poppler-PATCHES/ChangeLog7
-rw-r--r--Build/source/libs/poppler/poppler-PATCHES/TL-Changes2
-rw-r--r--Build/source/libs/poppler/poppler-PATCHES/patch-02-LLONG_MAX6
-rw-r--r--Build/source/libs/poppler/poppler-PATCHES/patch-03-Object-functions6
-rw-r--r--Build/source/libs/poppler/poppler-src/CMakeLists.txt2
-rw-r--r--Build/source/libs/poppler/poppler-src/ChangeLog42
-rw-r--r--Build/source/libs/poppler/poppler-src/NEWS9
-rw-r--r--Build/source/libs/poppler/poppler-src/config.h.in3
-rw-r--r--Build/source/libs/poppler/poppler-src/configure.ac2
-rw-r--r--Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc41
-rw-r--r--Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc9
-rw-r--r--Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc11
-rw-r--r--Build/source/libs/poppler/version.ac2
16 files changed, 141 insertions, 30 deletions
diff --git a/Build/source/libs/README b/Build/source/libs/README
index e1ecd0fdcb9..b5490d61afc 100644
--- a/Build/source/libs/README
+++ b/Build/source/libs/README
@@ -49,7 +49,7 @@ mpfr 3.1.3 - checked 20jun15
pixman 0.34.0 - checked 04feb16
http://cairographics.org/releases/
-poppler 0.40.0 - checked 14jan16
+poppler 0.41.0 - checked 17feb16
http://poppler.freedesktop.org/ - used by luatex and xetex
potrace 1.13 - checked 28dec15
diff --git a/Build/source/libs/poppler/ChangeLog b/Build/source/libs/poppler/ChangeLog
index 94b722c34d2..0435fa06421 100644
--- a/Build/source/libs/poppler/ChangeLog
+++ b/Build/source/libs/poppler/ChangeLog
@@ -1,3 +1,8 @@
+2016-02-17 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+
+ Import poppler-0.41.0.
+ * version.ac: Adjust.
+
2016-02-15 Karl Berry <karl@tug.org>
* poppler-PATCHES: rename from poppler-src-PATCHES.
diff --git a/Build/source/libs/poppler/configure b/Build/source/libs/poppler/configure
index cf42e8e6840..4be4545b980 100755
--- a/Build/source/libs/poppler/configure
+++ b/Build/source/libs/poppler/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for poppler (TeX Live) 0.40.0.
+# Generated by GNU Autoconf 2.69 for poppler (TeX Live) 0.41.0.
#
# Report bugs to <tex-k@tug.org>.
#
@@ -580,8 +580,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='poppler (TeX Live)'
PACKAGE_TARNAME='poppler--tex-live-'
-PACKAGE_VERSION='0.40.0'
-PACKAGE_STRING='poppler (TeX Live) 0.40.0'
+PACKAGE_VERSION='0.41.0'
+PACKAGE_STRING='poppler (TeX Live) 0.41.0'
PACKAGE_BUGREPORT='tex-k@tug.org'
PACKAGE_URL=''
@@ -1306,7 +1306,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures poppler (TeX Live) 0.40.0 to adapt to many kinds of systems.
+\`configure' configures poppler (TeX Live) 0.41.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1373,7 +1373,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of poppler (TeX Live) 0.40.0:";;
+ short | recursive ) echo "Configuration of poppler (TeX Live) 0.41.0:";;
esac
cat <<\_ACEOF
@@ -1486,7 +1486,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-poppler (TeX Live) configure 0.40.0
+poppler (TeX Live) configure 0.41.0
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2076,7 +2076,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by poppler (TeX Live) $as_me 0.40.0, which was
+It was created by poppler (TeX Live) $as_me 0.41.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3999,7 +3999,7 @@ fi
# Define the identity of the package.
PACKAGE='poppler--tex-live-'
- VERSION='0.40.0'
+ VERSION='0.41.0'
# Some tools Automake needs.
@@ -6578,7 +6578,7 @@ ac_config_headers="$ac_config_headers poppler-config.h:poppler-src/poppler/poppl
cat >>confdefs.h <<_ACEOF
-#define POPPLER_VERSION "0.40.0"
+#define POPPLER_VERSION "0.41.0"
_ACEOF
@@ -7272,7 +7272,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by poppler (TeX Live) $as_me 0.40.0, which was
+This file was extended by poppler (TeX Live) $as_me 0.41.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -7338,7 +7338,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-poppler (TeX Live) config.status 0.40.0
+poppler (TeX Live) config.status 0.41.0
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/Build/source/libs/poppler/poppler-PATCHES/ChangeLog b/Build/source/libs/poppler/poppler-PATCHES/ChangeLog
index 0682274abde..984bcde54c3 100644
--- a/Build/source/libs/poppler/poppler-PATCHES/ChangeLog
+++ b/Build/source/libs/poppler/poppler-PATCHES/ChangeLog
@@ -1,3 +1,10 @@
+2016-02-17 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+
+ Imported poppler-0.41.0 source tree from:
+ http://poppler.freedesktop.org/
+
+ * patch-02-LLONG_MAX, patch-03-Object-functions: Adapted.
+
2016-01-14 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
Imported poppler-0.40.0 source tree from:
diff --git a/Build/source/libs/poppler/poppler-PATCHES/TL-Changes b/Build/source/libs/poppler/poppler-PATCHES/TL-Changes
index 990ae4297cb..0b03254b31c 100644
--- a/Build/source/libs/poppler/poppler-PATCHES/TL-Changes
+++ b/Build/source/libs/poppler/poppler-PATCHES/TL-Changes
@@ -1,4 +1,4 @@
-Changes applied to the poppler-0.40.0 tree as obtained from:
+Changes applied to the poppler-0.41.0 tree as obtained from:
http://poppler.freedesktop.org/
Removed:
diff --git a/Build/source/libs/poppler/poppler-PATCHES/patch-02-LLONG_MAX b/Build/source/libs/poppler/poppler-PATCHES/patch-02-LLONG_MAX
index c2ea5b60be6..64a7c87f9b8 100644
--- a/Build/source/libs/poppler/poppler-PATCHES/patch-02-LLONG_MAX
+++ b/Build/source/libs/poppler/poppler-PATCHES/patch-02-LLONG_MAX
@@ -1,6 +1,6 @@
-diff -ur poppler-0.40.0.orig/goo/GooString.h poppler-0.40.0/goo/GooString.h
---- poppler-0.40.0.orig/goo/GooString.h Mon Jul 13 00:05:10 2015
-+++ poppler-0.40.0/goo/GooString.h Thu Jan 14 13:17:20 2016
+diff -ur poppler-0.41.0.orig/goo/GooString.h poppler-0.41.0/goo/GooString.h
+--- poppler-0.41.0.orig/goo/GooString.h Mon Jul 13 00:05:10 2015
++++ poppler-0.41.0/goo/GooString.h Wed Feb 17 15:36:48 2016
@@ -35,6 +35,21 @@
#endif
diff --git a/Build/source/libs/poppler/poppler-PATCHES/patch-03-Object-functions b/Build/source/libs/poppler/poppler-PATCHES/patch-03-Object-functions
index d90fb2ac7be..91dd77667ed 100644
--- a/Build/source/libs/poppler/poppler-PATCHES/patch-03-Object-functions
+++ b/Build/source/libs/poppler/poppler-PATCHES/patch-03-Object-functions
@@ -1,6 +1,6 @@
-diff -ur poppler-0.40.0.orig/poppler/Object.h poppler-0.40.0/poppler/Object.h
---- poppler-0.40.0.orig/poppler/Object.h Mon Nov 16 06:05:22 2015
-+++ poppler-0.40.0/poppler/Object.h Thu Jan 14 13:20:32 2016
+diff -ur poppler-0.41.0.orig/poppler/Object.h poppler-0.41.0/poppler/Object.h
+--- poppler-0.41.0.orig/poppler/Object.h Mon Nov 16 06:05:22 2015
++++ poppler-0.41.0/poppler/Object.h Wed Feb 17 15:39:51 2016
@@ -140,7 +140,7 @@
Object *initStream(Stream *streamA);
Object *initRef(int numA, int genA)
diff --git a/Build/source/libs/poppler/poppler-src/CMakeLists.txt b/Build/source/libs/poppler/poppler-src/CMakeLists.txt
index e58a41d5bdb..d30fa4b1c73 100644
--- a/Build/source/libs/poppler/poppler-src/CMakeLists.txt
+++ b/Build/source/libs/poppler/poppler-src/CMakeLists.txt
@@ -22,7 +22,7 @@ if (ECM_FOUND)
endif()
set(POPPLER_MAJOR_VERSION "0")
-set(POPPLER_MINOR_VERSION "40")
+set(POPPLER_MINOR_VERSION "41")
set(POPPLER_MICRO_VERSION "0")
set(POPPLER_VERSION "${POPPLER_MAJOR_VERSION}.${POPPLER_MINOR_VERSION}.${POPPLER_MICRO_VERSION}")
diff --git a/Build/source/libs/poppler/poppler-src/ChangeLog b/Build/source/libs/poppler/poppler-src/ChangeLog
index 0b23e0f8f1d..b1785bebd13 100644
--- a/Build/source/libs/poppler/poppler-src/ChangeLog
+++ b/Build/source/libs/poppler/poppler-src/ChangeLog
@@ -1,3 +1,45 @@
+commit 5689c990a187108ddc0a88b9825ba3bea644368f
+Author: Thomas Freitag <Thomas.Freitag@alfa.de>
+Date: Tue Feb 16 01:44:31 2016 +0100
+
+ Adjust limit check and check in addition bitmap pointer
+
+ Bug #94053
+
+ poppler/SplashOutputDev.cc | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+commit 57bc52b93e6431f0dc7762e2001dedd614383001
+Author: Jakub Wilk <jwilk@debian.org>
+Date: Sun Feb 14 11:22:31 2016 +0100
+
+ pdfinfo manpage: corrupted description of -js and -rawdates
+
+ utils/pdfinfo.1 | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit ab3c9ccb630004be049cb59f303612aa2a35f408
+Author: Adrian Johnson <ajohnson@redneon.com>
+Date: Fri Feb 12 20:15:46 2016 +1030
+
+ cairo: add missing font types (fontCIDType0COT and fontTrueTypeOT)
+
+ bug 93559
+
+ poppler/CairoFontEngine.cc | 41 ++++++++++++++++++++++++++++++++++++++---
+ 1 file changed, 38 insertions(+), 3 deletions(-)
+
+commit f1c4d8ac1fe4293566285117170e8234c1be3943
+Author: Albert Astals Cid <aacid@kde.org>
+Date: Thu Feb 4 01:08:59 2016 +0100
+
+ pdfseparate: Refine resource detection
+
+ Related to bug #87637
+
+ poppler/PDFDoc.cc | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
commit 449d45fab8e61393d858549460e61599e4dbd7eb
Author: Albert Astals Cid <aacid@kde.org>
Date: Wed Jan 13 23:19:12 2016 +0100
diff --git a/Build/source/libs/poppler/poppler-src/NEWS b/Build/source/libs/poppler/poppler-src/NEWS
index cbe433d7303..22f7e54df2b 100644
--- a/Build/source/libs/poppler/poppler-src/NEWS
+++ b/Build/source/libs/poppler/poppler-src/NEWS
@@ -1,3 +1,12 @@
+Release 0.41.0
+ core:
+ * CairoOutputDev: add missing font types (fontCIDType0COT and fontTrueTypeOT). Bug #93559
+ * SplashOutputDev: Adjust limit check and check in addition bitmap pointer. Bug #94053
+
+ utils:
+ * pdfseparate: Refine resource detection
+ * pdfinfo: fix man page
+
Release 0.40.0
core:
* CairoOutputDev: Use shape mask with soft mask. Bug #91931
diff --git a/Build/source/libs/poppler/poppler-src/config.h.in b/Build/source/libs/poppler/poppler-src/config.h.in
index 786143b27d4..14c5129fe2d 100644
--- a/Build/source/libs/poppler/poppler-src/config.h.in
+++ b/Build/source/libs/poppler/poppler-src/config.h.in
@@ -153,8 +153,7 @@
/* Define as const if the declaration of iconv() needs const. */
#undef ICONV_CONST
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
- */
+/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Enable multithreading support. */
diff --git a/Build/source/libs/poppler/poppler-src/configure.ac b/Build/source/libs/poppler/poppler-src/configure.ac
index 1e34506f760..45575bed9b9 100644
--- a/Build/source/libs/poppler/poppler-src/configure.ac
+++ b/Build/source/libs/poppler/poppler-src/configure.ac
@@ -1,5 +1,5 @@
m4_define([poppler_version_major],[0])
-m4_define([poppler_version_minor],[40])
+m4_define([poppler_version_minor],[41])
m4_define([poppler_version_micro],[0])
m4_define([poppler_version],[poppler_version_major.poppler_version_minor.poppler_version_micro])
diff --git a/Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc b/Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc
index 1d611b59d3c..3cff917a425 100644
--- a/Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc
+++ b/Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc
@@ -21,7 +21,7 @@
// Copyright (C) 2006, 2007, 2010, 2011 Carlos Garcia Campos <carlosgc@gnome.org>
// Copyright (C) 2007 Koji Otani <sho@bbr.jp>
// Copyright (C) 2008, 2009 Chris Wilson <chris@chris-wilson.co.uk>
-// Copyright (C) 2008, 2012, 2014 Adrian Johnson <ajohnson@redneon.com>
+// Copyright (C) 2008, 2012, 2014, 2016 Adrian Johnson <ajohnson@redneon.com>
// Copyright (C) 2009 Darren Kenny <darren.kenny@sun.com>
// Copyright (C) 2010 Suzuki Toshiya <mpsuzuki@hiroshima-u.ac.jp>
// Copyright (C) 2010 Jan Kümmel <jan+freedesktop@snorc.org>
@@ -499,6 +499,7 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref,
codeToGIDLen = n;
/* Fall through */
case fontTrueType:
+ case fontTrueTypeOT:
if (font_data != NULL) {
ff = FoFiTrueType::make(font_data, font_data_len);
} else {
@@ -509,7 +510,7 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref,
goto err2;
}
/* This might be set already for the CIDType2 case */
- if (fontType == fontTrueType) {
+ if (fontType == fontTrueType || fontType == fontTrueTypeOT) {
codeToGID = ((Gfx8BitFont *)gfxFont)->getCodeToGIDMap(ff);
codeToGIDLen = 256;
}
@@ -544,7 +545,41 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref,
goto err2;
}
break;
-
+
+ case fontCIDType0COT:
+ codeToGID = NULL;
+ n = 0;
+ if (((GfxCIDFont *)gfxFont)->getCIDToGID()) {
+ n = ((GfxCIDFont *)gfxFont)->getCIDToGIDLen();
+ if (n) {
+ codeToGID = (int *)gmallocn(n, sizeof(int));
+ memcpy(codeToGID, ((GfxCIDFont *)gfxFont)->getCIDToGID(),
+ n * sizeof(int));
+ }
+ }
+ codeToGIDLen = n;
+
+ if (!codeToGID) {
+ if (!useCIDs) {
+ if (font_data != NULL) {
+ ff = FoFiTrueType::make(font_data, font_data_len);
+ } else {
+ ff = FoFiTrueType::load(fileNameC);
+ }
+ if (ff) {
+ if (ff->isOpenTypeCFF()) {
+ codeToGID = ff->getCIDToGIDMap((int *)&codeToGIDLen);
+ }
+ delete ff;
+ }
+ }
+ }
+ if (! _ft_new_face (lib, fileNameC, font_data, font_data_len, &face, &font_face)) {
+ error(errSyntaxError, -1, "could not create cid (OT) face\n");
+ goto err2;
+ }
+ break;
+
default:
fprintf (stderr, "font type %d not handled\n", (int)fontType);
goto err2;
diff --git a/Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc b/Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc
index 46c4544e75b..8287060ae6c 100644
--- a/Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc
+++ b/Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc
@@ -26,7 +26,7 @@
// Copyright (C) 2010 Ilya Gorenbein <igorenbein@finjan.com>
// Copyright (C) 2010 Srinivas Adicherla <srinivas.adicherla@geodesic.com>
// Copyright (C) 2010 Philip Lorenz <lorenzph+freedesktop@gmail.com>
-// Copyright (C) 2011-2015 Thomas Freitag <Thomas.Freitag@alfa.de>
+// Copyright (C) 2011-2016 Thomas Freitag <Thomas.Freitag@alfa.de>
// Copyright (C) 2012, 2013 Fabio D'Urso <fabiodurso@hotmail.it>
// Copyright (C) 2013, 2014 Adrian Johnson <ajohnson@redneon.com>
// Copyright (C) 2013 Adam Reichold <adamreichold@myopera.com>
@@ -701,6 +701,13 @@ int PDFDoc::savePageAs(GooString *name, int pageNo)
markPageObjects(catDict, yRef, countRef, 0, refPage->num, rootNum + 2);
Dict *pageDict = page.getDict();
+ if (resourcesObj.isNull() && !pageDict->hasKey("Resources")) {
+ Dict *resourceDict = getCatalog()->getPage(pageNo)->getResourceDict();
+ if (resourceDict != NULL) {
+ resourcesObj.initDict(resourceDict);
+ markPageObjects(resourcesObj.getDict(), yRef, countRef, 0, refPage->num, rootNum + 2);
+ }
+ }
markPageObjects(pageDict, yRef, countRef, 0, refPage->num, rootNum + 2);
pageDict->lookupNF("Annots", &annotsObj);
if (!annotsObj.isNull()) {
diff --git a/Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc b/Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc
index d2827d14645..ac0f9ac19ff 100644
--- a/Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc
+++ b/Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc
@@ -20,7 +20,7 @@
// Copyright (C) 2006 Scott Turner <scotty1024@mac.com>
// Copyright (C) 2007 Koji Otani <sho@bbr.jp>
// Copyright (C) 2009 Petr Gajdos <pgajdos@novell.com>
-// Copyright (C) 2009-2015 Thomas Freitag <Thomas.Freitag@alfa.de>
+// Copyright (C) 2009-2016 Thomas Freitag <Thomas.Freitag@alfa.de>
// Copyright (C) 2009 Carlos Garcia Campos <carlosgc@gnome.org>
// Copyright (C) 2009, 2014, 2015 William Bader <williambader@hotmail.com>
// Copyright (C) 2010 Patrick Spendrin <ps_ml@gmx.de>
@@ -4481,7 +4481,7 @@ GBool SplashOutputDev::tilingPatternFill(GfxState *state, Gfx *gfxA, Catalog *ca
repeatX = x1 - x0;
repeatY = y1 - y0;
} else {
- if ((unsigned long) result_width * result_height > 0x800000L) {
+ if ((unsigned long) surface_width * surface_height > 0x800000L) {
state->setCTM(savedCTM[0], savedCTM[1], savedCTM[2], savedCTM[3], savedCTM[4], savedCTM[5]);
return gFalse;
}
@@ -4525,6 +4525,13 @@ GBool SplashOutputDev::tilingPatternFill(GfxState *state, Gfx *gfxA, Catalog *ca
bitmap = new SplashBitmap(surface_width, surface_height, 1,
(paintType == 1) ? colorMode : splashModeMono8, gTrue);
+ if (bitmap->getDataPtr() == NULL) {
+ SplashBitmap *tBitmap = bitmap;
+ bitmap = formerBitmap;
+ delete tBitmap;
+ state->setCTM(savedCTM[0], savedCTM[1], savedCTM[2], savedCTM[3], savedCTM[4], savedCTM[5]);
+ return gFalse;
+ }
splash = new Splash(bitmap, gTrue);
if (paintType == 2) {
SplashColor clearColor;
diff --git a/Build/source/libs/poppler/version.ac b/Build/source/libs/poppler/version.ac
index 14b56aa5271..9325e1f995a 100644
--- a/Build/source/libs/poppler/version.ac
+++ b/Build/source/libs/poppler/version.ac
@@ -8,4 +8,4 @@ dnl
dnl --------------------------------------------------------
dnl
dnl m4-include this file to define the current poppler version
-m4_define([poppler_version], [0.40.0])
+m4_define([poppler_version], [0.41.0])