From nobody@FreeBSD.org  Sun Nov  4 18:23:56 2012
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
	by hub.freebsd.org (Postfix) with ESMTP id CE197C35
	for <freebsd-gnats-submit@FreeBSD.org>; Sun,  4 Nov 2012 18:23:56 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22])
	by mx1.freebsd.org (Postfix) with ESMTP id B577F8FC0C
	for <freebsd-gnats-submit@FreeBSD.org>; Sun,  4 Nov 2012 18:23:56 +0000 (UTC)
Received: from red.freebsd.org (localhost [127.0.0.1])
	by red.freebsd.org (8.14.5/8.14.5) with ESMTP id qA4INugO069261
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 4 Nov 2012 18:23:56 GMT
	(envelope-from nobody@red.freebsd.org)
Received: (from nobody@localhost)
	by red.freebsd.org (8.14.5/8.14.5/Submit) id qA4INuAH069260;
	Sun, 4 Nov 2012 18:23:56 GMT
	(envelope-from nobody)
Message-Id: <201211041823.qA4INuAH069260@red.freebsd.org>
Date: Sun, 4 Nov 2012 18:23:56 GMT
From: Michael Gruenewald <michael.grunewald@laposte.net>
To: freebsd-gnats-submit@FreeBSD.org
Subject: lang/ocaml Update to 4.00.1
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         173364
>Category:       ports
>Synopsis:       lang/ocaml Update to 4.00.1
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    bf
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Nov 04 18:30:00 UTC 2012
>Closed-Date:    Wed Mar 26 17:58:23 UTC 2014
>Last-Modified:  Wed Mar 26 17:58:23 UTC 2014
>Originator:     Michael Gruenewald
>Release:        9
>Organization:
>Environment:
FreeBSD localhost 9.0-RELEASE FreeBSD 9.0-RELEASE #3: Sat Feb 18 17:33:06 CET 2012     root@localhost:/usr/obj/usr/src/sys/KERNEL  amd64
>Description:
- Update to ocaml-4.00.1.
- Install documentation and obsoletes ocaml-doc-3.12 (closes PR/165416).
- Comply with NOPORTDOCS.
- Supersedes the PR on the some topic I sent a few days ago
  (number still unknown, I am sorry for the noise!)

All ports depending on lang/ocaml may need to be recompiled. The last /usr/ports/UPDATING entry used could be used again (up to the date of course)!

20110406:
  AFFECTS: users of lang/ocaml and related libraries/applications
  AUTHOR: stas@FreeBSD.org

  Ocaml compiler and libraries suite has been updated to 3.12.
  There appears to be an ABI incompatibility with .cmi files
  generated by previous compiler versions.  Though these should
  only affect the linking process, if some application you're
  using start to misbehave after the lang/ocaml updated you're
  advised to rebuild this applications using the new ocaml version.

>How-To-Repeat:

>Fix:


Patch attached with submission follows:

diff --git a/ocaml/Makefile b/ocaml/Makefile
index d2ed500..eae904b 100644
--- a/ocaml/Makefile
+++ b/ocaml/Makefile
@@ -2,16 +2,25 @@
 # Date created:		24 December 1996
 # Whom:			Kiriyama Kazuhiko <kiri@kiri.toba-cmt.ac.jp>
 #
-# $FreeBSD: ports/lang/ocaml/Makefile,v 1.71 2011/04/04 02:29:25 stas Exp $
+# $FreeBSD: ports/lang/ocaml/Makefile,v 1.77 2012/02/23 01:10:28 bf Exp $
 #
 
 PORTNAME=	ocaml
-PORTVERSION=	3.12.1
+PORTVERSION=    4.00.1
 CATEGORIES=	lang
-MASTER_SITES=	http://caml.inria.fr/distrib/${DISTNAME:R}/ \
-		ftp://ftp.inria.fr/INRIA/caml-light/${DISTNAME:R}/ \
+MASTER_SITES=	http://caml.inria.fr/pub/distrib/${DISTNAME:R}/ \
 		ftp://ftp.kurims.kyoto-u.ac.jp/pub/lang/caml-light/${DISTNAME:R}/ \
 		${MASTER_SITE_GENTOO}
+DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
+EXTRACT_ONLY=   ${DISTNAME}${EXTRACT_SUFX}
+.if !defined(NOPORTDOCS)
+DOCSDISTNAME=   ${DISTNAME:C/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/\1.\2/}
+DISTFILES+= 	${DOCSDISTNAME}-refman-html.tar.gz \
+		${DOCSDISTNAME}-refman.ps.gz \
+		${DOCSDISTNAME}-refman.pdf
+.endif
+
+
 MASTER_SITE_SUBDIR=	distfiles
 PKGNAMESUFFIX=	${SFX}
 
@@ -21,16 +30,18 @@ COMMENT?=	The Objective Caml compiler and programming environment
 USE_BZIP2=	yes
 REINPLACE_ARGS=	-i ""
 HAS_CONFIGURE=	yes
-USE_LDCONFIG=	yes
 ALL_TARGET=	world.opt
 STRIP=
 MAKE_JOBS_UNSAFE=	yes
 
-CONFIGURE_ARGS=	-prefix ${PREFIX}
+CONFIGURE_ARGS=	-verbose -prefix "${PREFIX}" \
+                -cc "${CC} ${CFLAGS}" \
+                -as "${AS} ${ASFLAGS}" \
+		-aspp "${CC} -c" \
+                -partialld "${LD} -r"
 OPTIONS=	X11	"Build with X11 support" on \
 		TK	"Build LablTk library (requires X11 support)" on \
 		THREADS	"Build with Posix threads support" on \
-		CMP_LIB	"Install compiler's libraries" off \
 		OPT_DEF	"Use system-optimized binaries by default" off
 
 MODOPT=		camlp4o camlp4r ocamlc ocamldep ocamldoc ocamllex ocamlopt
@@ -38,6 +49,10 @@ PATTERN=	[[:space:]]*(do|then)?[[:space:]]*)(\$$\(CP\)|cp)([[:space:]]
 
 .include <bsd.port.pre.mk>
 
+.if !defined(NOPORTDOCS)
+PORTDOCS = htmlman/* ${DOCSDISTNAME}-refman.ps.gz ${DOCSDISTNAME}-refman.pdf
+.endif
+
 .if ${ARCH} == powerpc
 ARCH=	power
 .endif
@@ -48,16 +63,14 @@ PLIST_SUB+=	PROF="@comment "
 PLIST_SUB+=	PROF=""
 .endif
 
-MAN1!=	${CAT} ${FILESDIR}/man1
-MANN!=	${CAT} ${FILESDIR}/mann
-MLINKS!=${CAT} ${FILESDIR}/manlinks
+.include "${FILESDIR}/manfiles"
 
 .if !defined(WITHOUT_THREADS)
-DEPENDS_ARGS+=	WITH_THREADS=yes
-CONFIGURE_ARGS+=-with-pthread
+PLIST_SUB+=	THREADS=""
 THR_CPP=	${PTHREAD_CFLAGS}
 THR_LD=		${PTHREAD_LIBS}
 .else
+PLIST_SUB+=	THREADS="@comment "
 THR_CPP=	#empty
 THR_LD=		#empty
 CONFIGURE_ARGS+=-no-pthread
@@ -77,17 +90,24 @@ CONFIGURE_ARGS+=-no-x11
 
 .if defined(WITHOUT_TK)
 PLIST_SUB+=	TK="@comment "
+.if !defined(WITHOUT_X11)
 SFX=		-notk
 CONFLICTS+=	ocaml-[0-9]* ocaml-nox11-[0-9]*
+.endif
 CONFIGURE_ARGS+=-no-tk
 .else
 USE_TK=		84+
+INVALID_TK_VER =	86
+.if defined(WITH_THREADS)
+USE_TK_THREADS =	yes
+.endif
 .include "${PORTSDIR}/Mk/bsd.tcl.mk"
 PLIST_SUB+=	TK=""
 CONFLICTS+=	ocaml-nox11-[0-9]* ocaml-notk-[0-9]*
 CONFIGURE_ARGS+=	-tkdefs \
 			"-I${TCL_INCLUDEDIR} -I${TK_INCLUDEDIR} ${THR_CPP}" \
-			-tklibs "-L${LOCALBASE}/lib ${THR_LD}"
+			-tklibs "-L${LOCALBASE}/lib -ltk${TK_VER:S|.||}${_TCL_THREADS_SUFFIX} \
+			-ltcl${TCL_VER:S|.||}${_TCL_THREADS_SUFFIX} ${THR_LD}"
 .endif
 
 .if ${ARCH} == sparc64
@@ -98,6 +118,32 @@ post-extract:
 .if ${ARCH} == power
 	${MV} ${WRKSRC}/asmrun/power-elf.S ${WRKSRC}/asmrun/power-bsd.S
 .endif
+.if !defined(NOPORTDOCS)
+	@if ! (cd ${WRKDIR} && \
+	  ${TAR} xf ${_DISTDIR}${DOCSDISTNAME}-refman-html.tar.gz \
+	) \
+	then \
+	  exit 1; \
+	fi;
+.endif
+
+post-patch:
+	@${REINPLACE_CMD} \
+		-e '\|MKLIB=|s|ar rc|${AR} rc|' \
+		-e '\|RANLIB|s|ranlib|${RANLIB}|' \
+		-e '\|bytecclinkopts=|s|""|"${LDFLAGS}"|' \
+		-e "\|nativecclinkopts=|s|''|\"${LDFLAGS:C/-Wl,//}\"|" \
+		-e '\|mksharedlib=|s|$$bytecc|& $$bytecclinkopts|' \
+		-e 's|-lbfd -ldl|-lbfd $$dllib|' \
+		${WRKSRC}/configure
+# don't hardcode gcc for depend target
+	@${REINPLACE_CMD} -e 's|gcc|$$(CC)|' \
+		${WRKSRC}/*/Makefile \
+		${WRKSRC}/*/*/Makefile
+.if defined(WITH_TK)
+	@${REINPLACE_CMD} -e 's|/usr/bin/wish|${WISH}|' \
+		${WRKSRC}/otherlibs/labltk/examples_labltk/hello.tcl
+.endif
 
 post-configure:
 # CFLAGS safeness
@@ -105,7 +151,6 @@ post-configure:
 		-e 's|(BYTECCCOMPOPTS[ \t]*=.*)|\1 ${CFLAGS} ${THR_CPP}|' \
 		-e 's|(NATIVECCCOMPOPTS[ \t]*=.*)|\1 ${CFLAGS} ${THR_CPP}|' \
 		-e '/^PTHREAD_LINK/s,-pthread,${THR_LD},g' \
-		-e 's|gcc|${CC}|g'	\
 		${WRKSRC}/config/Makefile
 
 # INSTALL* safeness (which preserves the correct permissions despite
@@ -118,6 +163,12 @@ post-configure:
 		-e 's,^(${PATTERN}+.*LIBDIR),\1\$${BSD_INSTALL_DATA} \4,' \
 		-e 's,(${PATTERN}+.*(MANDIR|MANODIR|MANEXT)),\1\$${BSD_INSTALL_MAN} \4,'
 
+check test: install
+	@cd ${WRKSRC}/testsuite; ${RM} -f _log; for d in tests/* ; do \
+	${SETENV} ${MAKE_ENV} ${MAKE} ${_MAKE_JOBS} ${MAKE_ARGS} one DIR=$${d} \
+	2>&1 | tee -a _log || ${TRUE} ; done ; \
+	${SETENV} ${MAKE_ENV} ${MAKE} ${_MAKE_JOBS} ${MAKE_ARGS} report
+
 post-install:
 	@${TOUCH} ${PREFIX}/lib/ocaml/ocamldoc/custom/.keep
 .if !defined(WITHOUT_TK)
@@ -129,14 +180,26 @@ post-install:
 		"! -name .cvsignore")
 .endif
 
-.for PROG in camlp4o.opt camlp4r.opt ocamlc.opt ocamldep.opt ocamldoc.opt \
-		ocamllex.opt ocamlopt.opt ocamlrun ocamlyacc
+.if !defined(NOPORTSDOC)
+	${MKDIR} ${DOCSDIR}
+	(cd ${WRKDIR} && ${COPYTREE_SHARE} htmlman ${DOCSDIR})
+	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.ps.gz ${DOCSDIR}
+	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.pdf ${DOCSDIR}
+.endif
+
+.for PROG in camlp4o.opt camlp4of.opt camlp4oof.opt camlp4orf.opt \
+	camlp4r.opt camlp4rf.opt ocamlc.opt ocamldep.opt ocamldoc.opt \
+	ocamllex.opt ocamlopt.opt ocamlrun ocamlyacc
 	@${STRIP_CMD} ${PREFIX}/bin/${PROG}
 .endfor
 
 # Fix permissions for ld.conf
 	@${CHMOD} 644 ${PREFIX}/lib/ocaml/ld.conf
 
+# Do we want to install documentation
+.if !defined(NOPORTDOCS)
+
+.endif
 # Do we want .opt version of tools to be the default ?
 .if defined(WITH_OPT_DEF)
 . for module in ${MODOPT}
@@ -150,19 +213,4 @@ post-install:
 . endfor
 .endif
 
-# Add compiler's libs if required
-.if defined(WITH_CMP_LIB)
-	@${MKDIR}  ${PREFIX}/lib/ocaml/compiler-lib
-	@${INSTALL_DATA} ${WRKSRC}/utils/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
-	@${INSTALL_DATA} ${WRKSRC}/utils/*.o ${PREFIX}/lib/ocaml/compiler-lib
-	@${INSTALL_DATA} ${WRKSRC}/parsing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
-	@${INSTALL_DATA} ${WRKSRC}/parsing/*.o ${PREFIX}/lib/ocaml/compiler-lib
-	@${INSTALL_DATA} ${WRKSRC}/typing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
-	@${INSTALL_DATA} ${WRKSRC}/typing/*.o ${PREFIX}/lib/ocaml/compiler-lib
-	@${FIND} ${PREFIX}/lib/ocaml/compiler-lib -type f | \
-		${SED} "s,^${PREFIX}/,," >> ${TMPPLIST}
-	@${ECHO_CMD} "@dirrm lib/ocaml/compiler-lib" >> ${TMPPLIST}
-.endif
-	@${ECHO_CMD} "@dirrm lib/ocaml" >> ${TMPPLIST}
-
 .include <bsd.port.post.mk>
diff --git a/ocaml/distinfo b/ocaml/distinfo
index 49d8d14..1a8fe0e 100644
--- a/ocaml/distinfo
+++ b/ocaml/distinfo
@@ -1,2 +1,8 @@
-SHA256 (ocaml-3.12.1.tar.bz2) = edcf563da75e0b91f09765649caa98ab1535e0c7498f0737b5591b7de084958d
-SIZE (ocaml-3.12.1.tar.bz2) = 2949124
+SHA256 (ocaml-4.00.1.tar.bz2) = 33c3f4acff51685f5bfd7c260f066645e767d4e865877bf1613c176a77799951
+SIZE (ocaml-4.00.1.tar.bz2) = 2762205
+SHA256 (ocaml-4.00-refman-html.tar.gz) = 8ca43859d8a71f0941a2453b7b808d7e58ad54804a9cf285875fa30e6576b31a
+SIZE (ocaml-4.00-refman-html.tar.gz) = 549757
+SHA256 (ocaml-4.00-refman.ps.gz) = 6146264fef7ae73f7ebb8dc49a3b1adae9d5bd4f9a14a2670c9d43f7e6a253c3
+SIZE (ocaml-4.00-refman.ps.gz) = 1075658
+SHA256 (ocaml-4.00-refman.pdf) = 76ba2cf60a605b2427f995563f6dc6c7dbb39be6b066f6d96b23926e8cc9babc
+SIZE (ocaml-4.00-refman.pdf) = 1453678
diff --git a/ocaml/files/edit_pkg-plist.sed b/ocaml/files/edit_pkg-plist.sed
new file mode 100644
index 0000000..6262030
--- /dev/null
+++ b/ocaml/files/edit_pkg-plist.sed
@@ -0,0 +1,6 @@
+/.p.cmx$/s@^@%%PROF%%@
+/examples_labeltk/{
+  s@share/examples@%%EXAMPLESDIR%%@
+  s@^@%%TK%%@
+}
+/graphics/s@^@%%X11%%@
diff --git a/ocaml/files/man1 b/ocaml/files/man1
deleted file mode 100644
index c7dbf91..0000000
--- a/ocaml/files/man1
+++ /dev/null
@@ -1,13 +0,0 @@
-ocaml.1
-ocamlbuild.1
-ocamlc.1
-ocamlcp.1
-ocamldebug.1
-ocamldep.1
-ocamldoc.1
-ocamllex.1
-ocamlmktop.1
-ocamlopt.1
-ocamlprof.1
-ocamlrun.1
-ocamlyacc.1
diff --git a/ocaml/files/manfiles b/ocaml/files/manfiles
new file mode 100644
index 0000000..b2c26bb
--- /dev/null
+++ b/ocaml/files/manfiles
@@ -0,0 +1,101 @@
+MAN1=	ocaml.1 \
+	ocamlbuild.1 \
+	ocamlc.1 \
+	ocamlcp.1 \
+	ocamldebug.1 \
+	ocamldep.1 \
+	ocamldoc.1 \
+	ocamllex.1 \
+	ocamlmktop.1 \
+	ocamlopt.1 \
+	ocamloptp.1 \
+	ocamlprof.1 \
+	ocamlrun.1 \
+	ocamlyacc.1
+
+MANN=	Arg.3o \
+	Array.3o \
+	ArrayLabels.3o \
+	Bigarray.3o \
+	Bigarray.Array1.3o \
+	Bigarray.Array2.3o \
+	Bigarray.Array3.3o \
+	Bigarray.Genarray.3o \
+	Buffer.3o \
+	Callback.3o \
+	CamlinternalLazy.3o \
+	CamlinternalMod.3o \
+	CamlinternalOO.3o \
+	Complex.3o \
+	Digest.3o \
+	Filename.3o \
+	Format.3o \
+	Gc.3o \
+	Genlex.3o \
+	Hashtbl.3o \
+	Hashtbl.HashedType.3o \
+	Hashtbl.Make.3o \
+	Hashtbl.MakeSeeded.3o \
+	Hashtbl.S.3o \
+	Hashtbl.SeededHashedType.3o \
+	Hashtbl.SeededS.3o \
+	Int32.3o \
+	Int64.3o \
+	Lexing.3o \
+	List.3o \
+	ListLabels.3o \
+	Map.3o \
+	Map.Make.3o \
+	Map.OrderedType.3o \
+	Map.S.3o \
+	Marshal.3o \
+	MoreLabels.3o \
+	MoreLabels.Hashtbl.3o \
+	MoreLabels.Hashtbl.HashedType.3o \
+	MoreLabels.Hashtbl.Make.3o \
+	MoreLabels.Hashtbl.MakeSeeded.3o \
+	MoreLabels.Hashtbl.S.3o \
+	MoreLabels.Hashtbl.SeededHashedType.3o \
+	MoreLabels.Hashtbl.SeededS.3o \
+	MoreLabels.Map.3o \
+	MoreLabels.Map.Make.3o \
+	MoreLabels.Map.OrderedType.3o \
+	MoreLabels.Map.S.3o \
+	MoreLabels.Set.3o \
+	MoreLabels.Set.Make.3o \
+	MoreLabels.Set.OrderedType.3o \
+	MoreLabels.Set.S.3o \
+	Nativeint.3o \
+	Num.3o \
+	Obj.3o \
+	Oo.3o \
+	Parsing.3o \
+	Pervasives.3o \
+	Pervasives.LargeFile.3o \
+	Printexc.3o \
+	Printf.3o \
+	Queue.3o \
+	Random.3o \
+	Random.State.3o \
+	Scanf.3o \
+	Scanf.Scanning.3o \
+	Set.Make.3o \
+	Set.OrderedType.3o \
+	Set.S.3o \
+	Sort.3o \
+	Stack.3o \
+	StdLabels.3o \
+	StdLabels.Array.3o \
+	StdLabels.List.3o \
+	StdLabels.String.3o \
+	Str.3o \
+	Stream.3o \
+	StringLabels.3o \
+	Sys.3o \
+	Unix.3o \
+	Unix.LargeFile.3o \
+	Weak.3o \
+	Weak.Make.3o \
+	Weak.S.3o
+
+MLINKS=	ocamlc.1 ocamlc.opt.1 ocamlopt.1 ocamlopt.opt.1
diff --git a/ocaml/files/manlinks b/ocaml/files/manlinks
deleted file mode 100644
index f2a7008..0000000
--- a/ocaml/files/manlinks
+++ /dev/null
@@ -1,4 +0,0 @@
-ocamlc.1
-ocamlc.opt.1
-ocamlopt.1
-ocamlopt.opt.1
diff --git a/ocaml/files/mann b/ocaml/files/mann
deleted file mode 100644
index 8540f41..0000000
--- a/ocaml/files/mann
+++ /dev/null
@@ -1,82 +0,0 @@
-Arg.n
-Array.n
-ArrayLabels.n
-Bigarray.Array1.n
-Bigarray.Array2.n
-Bigarray.Array3.n
-Bigarray.Genarray.n
-Bigarray.n
-Buffer.n
-Callback.n
-CamlinternalOO.n
-Char.n
-Complex.n
-Digest.n
-Filename.n
-Format.n
-Gc.n
-Genlex.n
-Hashtbl.HashedType.n
-Hashtbl.Make.n
-Hashtbl.S.n
-Hashtbl.n
-Int32.n
-Int64.n
-Lazy.n
-Lexing.n
-List.n
-ListLabels.n
-Map.Make.n
-Map.OrderedType.n
-Map.S.n
-Map.n
-Marshal.n
-MoreLabels.Hashtbl.HashedType.n
-MoreLabels.Hashtbl.Make.n
-MoreLabels.Hashtbl.S.n
-MoreLabels.Hashtbl.n
-MoreLabels.Map.Make.n
-MoreLabels.Map.OrderedType.n
-MoreLabels.Map.S.n
-MoreLabels.Map.n
-MoreLabels.Set.Make.n
-MoreLabels.Set.OrderedType.n
-MoreLabels.Set.S.n
-MoreLabels.Set.n
-MoreLabels.n
-Nativeint.n
-Num.n
-Obj.n
-Oo.n
-Parsing.n
-Pervasives.LargeFile.n
-Pervasives.n
-Printexc.n
-Printf.n
-Queue.n
-Random.n
-Random.State.n
-Scanf.Scanning.n
-Scanf.n
-Set.Make.n
-Set.OrderedType.n
-Set.S.n
-Set.n
-Sort.n
-Stack.n
-StdLabels.Array.n
-StdLabels.List.n
-StdLabels.String.n
-StdLabels.n
-Str.n
-Stream.n
-String.n
-StringLabels.n
-Sys.n
-Unix.LargeFile.n
-Unix.n
-Weak.Make.n
-Weak.S.n
-Weak.n
-CamlinternalMod.n
-CamlinternalLazy.n
diff --git a/ocaml/files/patch-config-auto-aux-async_io.c b/ocaml/files/patch-config-auto-aux-async_io.c
new file mode 100644
index 0000000..3a0fcdd
--- /dev/null
+++ b/ocaml/files/patch-config-auto-aux-async_io.c
@@ -0,0 +1,10 @@
+--- config/auto-aux/async_io.c	2012-11-01 17:36:02.000000000 +0100
++++ config/auto-aux/async_io.c.orig	2012-11-01 17:35:46.000000000 +0100
+@@ -13,7 +13,8 @@
+ 
+ /* $Id: async_io.c 11156 2011-07-27 14:17:02Z doligez $ */
+ 
++#include <stdlib.h>
+ #include <stdio.h>
+ #include <fcntl.h>
+ #include <signal.h>
diff --git a/ocaml/files/patch-configure b/ocaml/files/patch-configure
index 3c96fff..e13acae 100644
--- a/ocaml/files/patch-configure
+++ b/ocaml/files/patch-configure
@@ -1,189 +1,36 @@
---- configure.orig	2010-07-28 06:18:22.000000000 -0700
-+++ configure	2011-04-03 13:46:37.000000000 -0700
-@@ -85,6 +85,8 @@
+--- configure.orig	2012-11-01 17:14:55.000000000 +0100
++++ configure	2012-11-01 17:23:44.000000000 +0100
+@@ -88,6 +88,8 @@
          withcurses=no;;
-     -no-shared-libs)
+     -no-shared-libs|--no-shared-libs)
          withsharedlibs=no;;
 +    -no-x11|--no-x11)
 +        x11_wanted=no;;
      -x11include*|--x11include*)
          x11_include_dir=$2; shift;;
      -x11lib*|--x11lib*)
-@@ -629,6 +631,7 @@
-     i686-*-kfreebsd*)             natdynlink=true;;
-     x86_64-*-kfreebsd*)           natdynlink=true;;
-     i386-*-gnu0.3)                natdynlink=true;;
-+    *-*-freebsd*)                 natdynlink=true;;
-   esac
- fi
- 
-@@ -680,6 +683,7 @@
-   hppa*-*-gnu*)                 arch=hppa; system=gnu;;
+@@ -537,7 +539,7 @@
+       mksharedlib="$flexlink"
+       mkmaindll="$flexlink -maindll"
+       shared_libraries_supported=true;;
+-    *-*-linux-gnu|*-*-linux|*-*-freebsd[3-9]*|*-*-openbsd*|*-*-netbsd*|*-*-gnu*)
++    *-*-linux-gnu|*-*-linux|*-*-freebsd*|*-*-openbsd*|*-*-netbsd*|*-*-gnu*)
+       sharedcccompopts="-fPIC"
+       mksharedlib="$bytecc -shared"
+       bytecclinkopts="$bytecclinkopts -Wl,-E"
+@@ -687,6 +689,7 @@
+                                 fi;;
+   i[3456]86-*-gnu*)             arch=i386; system=gnu;;
    powerpc*-*-linux*)            arch=power; model=ppc; system=elf;;
++  powerpc-*-freebsd*)           arch=power; model=ppc; system=elf;;
    powerpc-*-netbsd*)            arch=power; model=ppc; system=elf;;
-+  powerpc-*-freebsd*)           arch=power; model=ppc; system=bsd;;
    powerpc-*-rhapsody*)          arch=power; model=ppc; system=rhapsody;;
    powerpc-*-darwin*)            arch=power; system=rhapsody
-                                 if $arch64; then model=ppc64; else model=ppc; fi;;
-@@ -789,6 +793,7 @@
-   i386,*,bsd_elf) profiling='prof';;
-   amd64,*,macosx) profiling='prof';;
-   i386,*,macosx) profiling='prof';;
+@@ -786,6 +789,7 @@
+   amd64,*,linux) profiling='prof';;
+   amd64,*,gnu) profiling='prof';;
+   arm,*,linux*) profiling='prof';;
 +  *,*,freebsd) profiling='prof';;
-   sparc,*,solaris)
-     profiling='prof'
-     case "$nativecc" in gcc*) ;; *) cc_profile='-xpg';; esac;;
-@@ -1249,133 +1254,24 @@
- x11_include="not found"
- x11_link="not found"
- 
--for dir in \
--    $x11_include_dir          \
--                              \
--    /usr/X11R7/include        \
--    /usr/include/X11R7        \
--    /usr/local/X11R7/include  \
--    /usr/local/include/X11R7  \
--    /opt/X11R7/include        \
--                              \
--    /usr/X11R6/include        \
--    /usr/include/X11R6        \
--    /usr/local/X11R6/include  \
--    /usr/local/include/X11R6  \
--    /opt/X11R6/include        \
--                              \
--    /usr/X11/include          \
--    /usr/include/X11          \
--    /usr/local/X11/include    \
--    /usr/local/include/X11    \
--    /opt/X11/include          \
--                              \
--    /usr/X11R5/include        \
--    /usr/include/X11R5        \
--    /usr/local/X11R5/include  \
--    /usr/local/include/X11R5  \
--    /usr/local/x11r5/include  \
--    /opt/X11R5/include        \
--                              \
--    /usr/X11R4/include        \
--    /usr/include/X11R4        \
--    /usr/local/X11R4/include  \
--    /usr/local/include/X11R4  \
--                              \
--    /usr/X386/include         \
--    /usr/x386/include         \
--    /usr/XFree86/include/X11  \
--                              \
--    /usr/include              \
--    /usr/local/include        \
--    /usr/unsupported/include  \
--    /usr/athena/include       \
--    /usr/lpp/Xamples/include  \
--                              \
--    /usr/openwin/include      \
--    /usr/openwin/share/include \
--    ; \
--do
--  if test -f $dir/X11/X.h; then
--    x11_include=$dir
--    break
--  fi
--done
--
--if test "$x11_include" = "not found"; then
--  x11_try_lib_dir=''
--else
--  x11_try_lib_dir=`echo $x11_include | sed -e 's|include|lib|'`
-+if [ -n "$x11_include_dir" ]; then
-+  x11_include="$x11_include_dir"
- fi
- 
--for dir in \
--    $x11_lib_dir          \
--    $x11_try_lib_dir      \
--                          \
--    /usr/X11R6/lib64      \
--    /usr/X11R6/lib        \
--    /usr/lib/X11R6        \
--    /usr/local/X11R6/lib  \
--    /usr/local/lib/X11R6  \
--    /opt/X11R6/lib        \
--                          \
--    /usr/X11/lib          \
--    /usr/lib/X11          \
--    /usr/local/X11/lib    \
--    /usr/local/lib/X11    \
--    /opt/X11/lib          \
--                          \
--    /usr/X11R5/lib        \
--    /usr/lib/X11R5        \
--    /usr/local/X11R5/lib  \
--    /usr/local/lib/X11R5  \
--    /usr/local/x11r5/lib  \
--    /opt/X11R5/lib        \
--                          \
--    /usr/X11R4/lib        \
--    /usr/lib/X11R4        \
--    /usr/local/X11R4/lib  \
--    /usr/local/lib/X11R4  \
--                          \
--    /usr/X386/lib         \
--    /usr/x386/lib         \
--    /usr/XFree86/lib/X11  \
--                          \
--    /usr/lib64            \
--    /usr/lib              \
--    /usr/local/lib        \
--    /usr/unsupported/lib  \
--    /usr/athena/lib       \
--    /usr/lpp/Xamples/lib  \
--    /lib/usr/lib/X11      \
--                          \
--    /usr/openwin/lib      \
--    /usr/openwin/share/lib \
--    ; \
--do
--  if test -f $dir/libX11.a || \
--     test -f $dir/libX11.so || \
--     test -f $dir/libX11.dll.a || \
--     test -f $dir/libX11.dylib || \
--     test -f $dir/libX11.sa; then
--    if test $dir = /usr/lib; then
--      x11_link="-lX11"
--    else
--      x11_libs="-L$dir"
--      case "$host" in
--        *-*-*bsd*) x11_link="-R$dir -L$dir -lX11";;
--        *) x11_link="-L$dir -lX11";;
--      esac
--    fi
--    break
--  fi
--done
--
-+if [ -n "$x11_lib_dir" ]; then
-+  x11_link="-L$x11_lib_dir -lX11"
-+  x11_libs="-L$x11_lib_dir"
-+fi
+   *) profiling='noprof';;
+ esac
  
- if test "$x11_include" = "not found" || test "$x11_link" = "not found"
- then
-   echo "X11 not found, the \"graph\" library will not be supported."
-   x11_include=""
-+elif test "$x11_wanted" = "no"
-+then
-+  echo "X11 support was disabled, the \"graph\" library will not be supported."
-+  x11_include=""
-+  x11_link=""
- else
-   echo "Location of X11 include files: $x11_include/X11"
-   echo "Options for linking with X11: $x11_link"
-@@ -1502,7 +1398,7 @@
-   then tk_libs="$tk_libs $dllib"
-   elif sh ./hasgot $tk_libs -ltcl$tclmaj.$tclmin $tkauxlibs Tcl_DoOneEvent
-   then
--    tk_libs="$tk_libs -ltk$tkmaj.$tkmin -ltcl$tclmaj.$tclmin $dllib"
-+    tk_libs="$tk_libs -ltk$tkmaj$tkmin -ltcl$tclmaj.$tclmin $dllib"
-   elif sh ./hasgot $tk_libs -ltcl$tclmaj$tclmin $tkauxlibs Tcl_DoOneEvent
-   then
-     tk_libs="$tk_libs -ltk$tkmaj$tkmin -ltcl$tclmaj$tclmin $dllib"
diff --git a/ocaml/files/patch-ocamldoc_Makefile b/ocaml/files/patch-ocamldoc_Makefile
index bede473..17ad2f3 100644
--- a/ocaml/files/patch-ocamldoc_Makefile
+++ b/ocaml/files/patch-ocamldoc_Makefile
@@ -9,16 +9,3 @@
  
  INSTALL_MLIS=odoc_info.mli
  INSTALL_CMIS=$(INSTALL_MLIS:.mli=.cmi)
-@@ -265,7 +265,11 @@
- 	$(CP) ocamldoc.hva *.cmi $(OCAMLDOC_LIBCMA) $(INSTALL_LIBDIR)
- 	$(CP) $(INSTALL_MLIS) $(INSTALL_CMIS) $(INSTALL_LIBDIR)
- 	if test -d $(INSTALL_MANODIR); then : ; else $(MKDIR) $(INSTALL_MANODIR); fi
--	if test -d stdlib_man; then $(CP) stdlib_man/* $(INSTALL_MANODIR); else : ; fi
-+	if test -d stdlib_man; then \
-+		for f in stdlib_man/*; do \
-+			$(BSD_INSTALL_MAN) $$f $(INSTALL_MANODIR)/`basename $$f .3o`.n; \
-+		done; \
-+	fi
- 
- installopt:
- 	if test -f $(OCAMLDOC_OPT) ; then $(MAKE) installopt_really ; fi
diff --git a/ocaml/files/patch-testsuite-backtrace-Makefile b/ocaml/files/patch-testsuite-backtrace-Makefile
new file mode 100644
index 0000000..7b887dc
--- /dev/null
+++ b/ocaml/files/patch-testsuite-backtrace-Makefile
@@ -0,0 +1,11 @@
+--- testsuite/tests/backtrace/Makefile.orig	2012-11-01 20:28:23.000000000 +0100
++++ testsuite/tests/backtrace/Makefile	2012-11-01 20:28:30.000000000 +0100
+@@ -6,7 +6,7 @@
+ 	  $(OCAMLC) -g -o $(EXECNAME) $$file; \
+ 	  for arg in a b c d ''; do \
+ 	    printf " ... testing '$$file' (with argument '$$arg'):"; \
+-	    OCAMLRUNPARAM=b=1 $(EXECNAME) $$arg > `basename $$file ml`$$arg.result 2>&1; \
++	    sh -c "OCAMLRUNPARAM=b=1 $(EXECNAME) $$arg; true" > `basename $$file ml`$$arg.result 2>&1; \
+ 	    $(DIFF) `basename $$file ml`$$arg.reference `basename $$file ml`$$arg.result > /dev/null && echo " => passed" || (echo " => failed" && exit 1); \
+ 	  done; \
+ 	done
diff --git a/ocaml/pkg-plist b/ocaml/pkg-plist
index 32fe5f8..0212f5e 100644
--- a/ocaml/pkg-plist
+++ b/ocaml/pkg-plist
@@ -1,4 +1,3 @@
-bin/ocamlobjinfo
 bin/camlp4
 bin/camlp4boot
 bin/camlp4o
@@ -14,10 +13,10 @@ bin/camlp4r
 bin/camlp4r.opt
 bin/camlp4rf
 bin/camlp4rf.opt
-%%TK%%bin/labltk
+bin/labltk
 bin/mkcamlp4
 bin/ocaml
-%%TK%%bin/ocamlbrowser
+bin/ocamlbrowser
 bin/ocamlbuild
 bin/ocamlbuild.byte
 bin/ocamlbuild.native
@@ -33,12 +32,15 @@ bin/ocamllex
 bin/ocamllex.opt
 bin/ocamlmklib
 bin/ocamlmktop
+bin/ocamlobjinfo
 bin/ocamlopt
 bin/ocamlopt.opt
+bin/ocamloptp
 bin/ocamlprof
 bin/ocamlrun
 bin/ocamlyacc
 lib/ocaml/Makefile.config
+lib/ocaml/VERSION
 lib/ocaml/arg.cmi
 lib/ocaml/arg.cmx
 lib/ocaml/arg.ml
@@ -85,6 +87,7 @@ lib/ocaml/caml/compatibility.h
 lib/ocaml/caml/config.h
 lib/ocaml/caml/custom.h
 lib/ocaml/caml/fail.h
+lib/ocaml/caml/hash.h
 lib/ocaml/caml/intext.h
 lib/ocaml/caml/memory.h
 lib/ocaml/caml/misc.h
@@ -236,7 +239,7 @@ lib/ocaml/camlp4/Camlp4Top/Rprint.cmx
 lib/ocaml/camlp4/Camlp4Top/Rprint.o
 lib/ocaml/camlp4/Camlp4Top/Top.cmi
 lib/ocaml/camlp4/Camlp4Top/Top.cmo
-lib/ocaml/camlp4/Camlp4Top/Top.cmx
+%%PROF%%lib/ocaml/camlp4/Camlp4Top/Top.cmx
 lib/ocaml/camlp4/Camlp4Top/Top.o
 lib/ocaml/camlp4/Camlp4_config.cmi
 lib/ocaml/camlp4/Camlp4_import.cmi
@@ -261,29 +264,158 @@ lib/ocaml/char.cmx
 lib/ocaml/char.ml
 lib/ocaml/char.mli
 %%PROF%%lib/ocaml/char.p.cmx
+lib/ocaml/compiler-libs/annot.cmi
+lib/ocaml/compiler-libs/arch.cmi
+lib/ocaml/compiler-libs/asmgen.cmi
+lib/ocaml/compiler-libs/asmlibrarian.cmi
+lib/ocaml/compiler-libs/asmlink.cmi
+lib/ocaml/compiler-libs/asmpackager.cmi
+lib/ocaml/compiler-libs/asttypes.cmi
+lib/ocaml/compiler-libs/btype.cmi
+lib/ocaml/compiler-libs/bytegen.cmi
+lib/ocaml/compiler-libs/bytelibrarian.cmi
+lib/ocaml/compiler-libs/bytelink.cmi
+lib/ocaml/compiler-libs/bytepackager.cmi
+lib/ocaml/compiler-libs/bytesections.cmi
+lib/ocaml/compiler-libs/ccomp.cmi
+lib/ocaml/compiler-libs/clambda.cmi
+lib/ocaml/compiler-libs/clflags.cmi
+lib/ocaml/compiler-libs/closure.cmi
+lib/ocaml/compiler-libs/cmi_format.cmi
+lib/ocaml/compiler-libs/cmm.cmi
+lib/ocaml/compiler-libs/cmmgen.cmi
+lib/ocaml/compiler-libs/cmo_format.cmi
+lib/ocaml/compiler-libs/cmt_format.cmi
+lib/ocaml/compiler-libs/cmx_format.cmi
+lib/ocaml/compiler-libs/coloring.cmi
+lib/ocaml/compiler-libs/comballoc.cmi
+lib/ocaml/compiler-libs/compile.cmi
+lib/ocaml/compiler-libs/compilenv.cmi
+lib/ocaml/compiler-libs/config.cmi
+lib/ocaml/compiler-libs/consistbl.cmi
+lib/ocaml/compiler-libs/ctype.cmi
+lib/ocaml/compiler-libs/datarepr.cmi
+lib/ocaml/compiler-libs/debuginfo.cmi
+lib/ocaml/compiler-libs/dll.cmi
+lib/ocaml/compiler-libs/emit.cmi
+lib/ocaml/compiler-libs/emitaux.cmi
+lib/ocaml/compiler-libs/emitcode.cmi
+lib/ocaml/compiler-libs/env.cmi
+lib/ocaml/compiler-libs/errors.cmi
+lib/ocaml/compiler-libs/expunge.cmi
+lib/ocaml/compiler-libs/genprintval.cmi
+lib/ocaml/compiler-libs/ident.cmi
+lib/ocaml/compiler-libs/includeclass.cmi
+lib/ocaml/compiler-libs/includecore.cmi
+lib/ocaml/compiler-libs/includemod.cmi
+lib/ocaml/compiler-libs/instruct.cmi
+lib/ocaml/compiler-libs/interf.cmi
+lib/ocaml/compiler-libs/lambda.cmi
+lib/ocaml/compiler-libs/lexer.cmi
+lib/ocaml/compiler-libs/linearize.cmi
+lib/ocaml/compiler-libs/liveness.cmi
+lib/ocaml/compiler-libs/location.cmi
+lib/ocaml/compiler-libs/longident.cmi
+lib/ocaml/compiler-libs/mach.cmi
+lib/ocaml/compiler-libs/main.cmi
+lib/ocaml/compiler-libs/main.cmo
+lib/ocaml/compiler-libs/main.cmx
+lib/ocaml/compiler-libs/main.o
+lib/ocaml/compiler-libs/main_args.cmi
+lib/ocaml/compiler-libs/matching.cmi
+lib/ocaml/compiler-libs/meta.cmi
+lib/ocaml/compiler-libs/misc.cmi
+lib/ocaml/compiler-libs/mtype.cmi
+lib/ocaml/compiler-libs/ocamlbytecomp.a
+lib/ocaml/compiler-libs/ocamlbytecomp.cma
+lib/ocaml/compiler-libs/ocamlbytecomp.cmxa
+lib/ocaml/compiler-libs/ocamlcommon.a
+lib/ocaml/compiler-libs/ocamlcommon.cma
+lib/ocaml/compiler-libs/ocamlcommon.cmxa
+lib/ocaml/compiler-libs/ocamloptcomp.a
+lib/ocaml/compiler-libs/ocamloptcomp.cma
+lib/ocaml/compiler-libs/ocamloptcomp.cmxa
+lib/ocaml/compiler-libs/ocamltoplevel.cma
+lib/ocaml/compiler-libs/opcodes.cmi
+lib/ocaml/compiler-libs/oprint.cmi
+lib/ocaml/compiler-libs/optcompile.cmi
+lib/ocaml/compiler-libs/opterrors.cmi
+lib/ocaml/compiler-libs/optmain.cmi
+lib/ocaml/compiler-libs/optmain.cmo
+lib/ocaml/compiler-libs/optmain.cmx
+lib/ocaml/compiler-libs/optmain.o
+lib/ocaml/compiler-libs/outcometree.cmi
+lib/ocaml/compiler-libs/parmatch.cmi
+lib/ocaml/compiler-libs/parse.cmi
+lib/ocaml/compiler-libs/parser.cmi
+lib/ocaml/compiler-libs/parsetree.cmi
+lib/ocaml/compiler-libs/path.cmi
+lib/ocaml/compiler-libs/pparse.cmi
+lib/ocaml/compiler-libs/predef.cmi
+lib/ocaml/compiler-libs/primitive.cmi
+lib/ocaml/compiler-libs/printast.cmi
+lib/ocaml/compiler-libs/printclambda.cmi
+lib/ocaml/compiler-libs/printcmm.cmi
+lib/ocaml/compiler-libs/printinstr.cmi
+lib/ocaml/compiler-libs/printlambda.cmi
+lib/ocaml/compiler-libs/printlinear.cmi
+lib/ocaml/compiler-libs/printmach.cmi
+lib/ocaml/compiler-libs/printtyp.cmi
+lib/ocaml/compiler-libs/printtyped.cmi
+lib/ocaml/compiler-libs/proc.cmi
+lib/ocaml/compiler-libs/reg.cmi
+lib/ocaml/compiler-libs/reload.cmi
+lib/ocaml/compiler-libs/reloadgen.cmi
+lib/ocaml/compiler-libs/runtimedef.cmi
+lib/ocaml/compiler-libs/schedgen.cmi
+lib/ocaml/compiler-libs/scheduling.cmi
+lib/ocaml/compiler-libs/selectgen.cmi
+lib/ocaml/compiler-libs/selection.cmi
+lib/ocaml/compiler-libs/simplif.cmi
+lib/ocaml/compiler-libs/spill.cmi
+lib/ocaml/compiler-libs/split.cmi
+lib/ocaml/compiler-libs/stypes.cmi
+lib/ocaml/compiler-libs/subst.cmi
+lib/ocaml/compiler-libs/switch.cmi
+lib/ocaml/compiler-libs/symtable.cmi
+lib/ocaml/compiler-libs/syntaxerr.cmi
+lib/ocaml/compiler-libs/tbl.cmi
+lib/ocaml/compiler-libs/terminfo.cmi
+lib/ocaml/compiler-libs/topdirs.cmi
+lib/ocaml/compiler-libs/toploop.cmi
+lib/ocaml/compiler-libs/topmain.cmi
+lib/ocaml/compiler-libs/topstart.cmi
+lib/ocaml/compiler-libs/topstart.cmo
+lib/ocaml/compiler-libs/trace.cmi
+lib/ocaml/compiler-libs/translclass.cmi
+lib/ocaml/compiler-libs/translcore.cmi
+lib/ocaml/compiler-libs/translmod.cmi
+lib/ocaml/compiler-libs/translobj.cmi
+lib/ocaml/compiler-libs/typeclass.cmi
+lib/ocaml/compiler-libs/typecore.cmi
+lib/ocaml/compiler-libs/typedecl.cmi
+lib/ocaml/compiler-libs/typedtree.cmi
+lib/ocaml/compiler-libs/typemod.cmi
+lib/ocaml/compiler-libs/typeopt.cmi
+lib/ocaml/compiler-libs/types.cmi
+lib/ocaml/compiler-libs/typetexp.cmi
+lib/ocaml/compiler-libs/warnings.cmi
 lib/ocaml/complex.cmi
 lib/ocaml/complex.cmx
 lib/ocaml/complex.ml
 lib/ocaml/complex.mli
 %%PROF%%lib/ocaml/complex.p.cmx
 lib/ocaml/condition.mli
-lib/ocaml/dbm.a
-lib/ocaml/dbm.cma
-lib/ocaml/dbm.cmi
-lib/ocaml/dbm.cmx
-lib/ocaml/dbm.cmxa
-lib/ocaml/dbm.cmxs
-lib/ocaml/dbm.mli
 lib/ocaml/digest.cmi
 lib/ocaml/digest.cmx
 lib/ocaml/digest.ml
 lib/ocaml/digest.mli
 %%PROF%%lib/ocaml/digest.p.cmx
 lib/ocaml/dynlink.a
-lib/ocaml/dynlink.cmx
-lib/ocaml/dynlink.cmxa
 lib/ocaml/dynlink.cma
 lib/ocaml/dynlink.cmi
+lib/ocaml/dynlink.cmx
+lib/ocaml/dynlink.cmxa
 lib/ocaml/dynlink.mli
 lib/ocaml/event.mli
 lib/ocaml/expunge
@@ -334,325 +466,325 @@ lib/ocaml/int64.ml
 lib/ocaml/int64.mli
 %%PROF%%lib/ocaml/int64.p.cmx
 lib/ocaml/int_misc.cmx
-%%TK%%lib/ocaml/labltk/balloon.cmi
-%%TK%%lib/ocaml/labltk/balloon.cmx
-%%TK%%lib/ocaml/labltk/balloon.mli
-%%TK%%lib/ocaml/labltk/bell.cmi
-%%TK%%lib/ocaml/labltk/bell.cmx
-%%TK%%lib/ocaml/labltk/bell.mli
-%%TK%%lib/ocaml/labltk/button.cmi
-%%TK%%lib/ocaml/labltk/button.cmx
-%%TK%%lib/ocaml/labltk/button.mli
-%%TK%%lib/ocaml/labltk/cBell.cmi
-%%TK%%lib/ocaml/labltk/cBell.cmx
-%%TK%%lib/ocaml/labltk/cBell.mli
-%%TK%%lib/ocaml/labltk/cButton.cmi
-%%TK%%lib/ocaml/labltk/cButton.cmx
-%%TK%%lib/ocaml/labltk/cButton.mli
-%%TK%%lib/ocaml/labltk/cCanvas.cmi
-%%TK%%lib/ocaml/labltk/cCanvas.cmx
-%%TK%%lib/ocaml/labltk/cCanvas.mli
-%%TK%%lib/ocaml/labltk/cCheckbutton.cmi
-%%TK%%lib/ocaml/labltk/cCheckbutton.cmx
-%%TK%%lib/ocaml/labltk/cCheckbutton.mli
-%%TK%%lib/ocaml/labltk/cClipboard.cmi
-%%TK%%lib/ocaml/labltk/cClipboard.cmx
-%%TK%%lib/ocaml/labltk/cClipboard.mli
-%%TK%%lib/ocaml/labltk/cDialog.cmi
-%%TK%%lib/ocaml/labltk/cDialog.cmx
-%%TK%%lib/ocaml/labltk/cDialog.mli
-%%TK%%lib/ocaml/labltk/cEncoding.cmi
-%%TK%%lib/ocaml/labltk/cEncoding.cmx
-%%TK%%lib/ocaml/labltk/cEncoding.mli
-%%TK%%lib/ocaml/labltk/cEntry.cmi
-%%TK%%lib/ocaml/labltk/cEntry.cmx
-%%TK%%lib/ocaml/labltk/cEntry.mli
-%%TK%%lib/ocaml/labltk/cFocus.cmi
-%%TK%%lib/ocaml/labltk/cFocus.cmx
-%%TK%%lib/ocaml/labltk/cFocus.mli
-%%TK%%lib/ocaml/labltk/cFont.cmi
-%%TK%%lib/ocaml/labltk/cFont.cmx
-%%TK%%lib/ocaml/labltk/cFont.mli
-%%TK%%lib/ocaml/labltk/cFrame.cmi
-%%TK%%lib/ocaml/labltk/cFrame.cmx
-%%TK%%lib/ocaml/labltk/cFrame.mli
-%%TK%%lib/ocaml/labltk/cGrab.cmi
-%%TK%%lib/ocaml/labltk/cGrab.cmx
-%%TK%%lib/ocaml/labltk/cGrab.mli
-%%TK%%lib/ocaml/labltk/cGrid.cmi
-%%TK%%lib/ocaml/labltk/cGrid.cmx
-%%TK%%lib/ocaml/labltk/cGrid.mli
-%%TK%%lib/ocaml/labltk/cImage.cmi
-%%TK%%lib/ocaml/labltk/cImage.cmx
-%%TK%%lib/ocaml/labltk/cImage.mli
-%%TK%%lib/ocaml/labltk/cImagebitmap.cmi
-%%TK%%lib/ocaml/labltk/cImagebitmap.cmx
-%%TK%%lib/ocaml/labltk/cImagebitmap.mli
-%%TK%%lib/ocaml/labltk/cImagephoto.cmi
-%%TK%%lib/ocaml/labltk/cImagephoto.cmx
-%%TK%%lib/ocaml/labltk/cImagephoto.mli
-%%TK%%lib/ocaml/labltk/cLabel.cmi
-%%TK%%lib/ocaml/labltk/cLabel.cmx
-%%TK%%lib/ocaml/labltk/cLabel.mli
-%%TK%%lib/ocaml/labltk/cListbox.cmi
-%%TK%%lib/ocaml/labltk/cListbox.cmx
-%%TK%%lib/ocaml/labltk/cListbox.mli
-%%TK%%lib/ocaml/labltk/cMenu.cmi
-%%TK%%lib/ocaml/labltk/cMenu.cmx
-%%TK%%lib/ocaml/labltk/cMenu.mli
-%%TK%%lib/ocaml/labltk/cMenubutton.cmi
-%%TK%%lib/ocaml/labltk/cMenubutton.cmx
-%%TK%%lib/ocaml/labltk/cMenubutton.mli
-%%TK%%lib/ocaml/labltk/cMessage.cmi
-%%TK%%lib/ocaml/labltk/cMessage.cmx
-%%TK%%lib/ocaml/labltk/cMessage.mli
-%%TK%%lib/ocaml/labltk/cOption.cmi
-%%TK%%lib/ocaml/labltk/cOption.cmx
-%%TK%%lib/ocaml/labltk/cOption.mli
-%%TK%%lib/ocaml/labltk/cOptionmenu.cmi
-%%TK%%lib/ocaml/labltk/cOptionmenu.cmx
-%%TK%%lib/ocaml/labltk/cOptionmenu.mli
-%%TK%%lib/ocaml/labltk/cPack.cmi
-%%TK%%lib/ocaml/labltk/cPack.cmx
-%%TK%%lib/ocaml/labltk/cPack.mli
-%%TK%%lib/ocaml/labltk/cPalette.cmi
-%%TK%%lib/ocaml/labltk/cPalette.cmx
-%%TK%%lib/ocaml/labltk/cPalette.mli
-%%TK%%lib/ocaml/labltk/cPixmap.cmi
-%%TK%%lib/ocaml/labltk/cPixmap.cmx
-%%TK%%lib/ocaml/labltk/cPixmap.mli
-%%TK%%lib/ocaml/labltk/cPlace.cmi
-%%TK%%lib/ocaml/labltk/cPlace.cmx
-%%TK%%lib/ocaml/labltk/cPlace.mli
-%%TK%%lib/ocaml/labltk/cRadiobutton.cmi
-%%TK%%lib/ocaml/labltk/cRadiobutton.cmx
-%%TK%%lib/ocaml/labltk/cRadiobutton.mli
-%%TK%%lib/ocaml/labltk/cResource.cmi
-%%TK%%lib/ocaml/labltk/cResource.cmx
-%%TK%%lib/ocaml/labltk/cResource.mli
-%%TK%%lib/ocaml/labltk/cScale.cmi
-%%TK%%lib/ocaml/labltk/cScale.cmx
-%%TK%%lib/ocaml/labltk/cScale.mli
-%%TK%%lib/ocaml/labltk/cScrollbar.cmi
-%%TK%%lib/ocaml/labltk/cScrollbar.cmx
-%%TK%%lib/ocaml/labltk/cScrollbar.mli
-%%TK%%lib/ocaml/labltk/cSelection.cmi
-%%TK%%lib/ocaml/labltk/cSelection.cmx
-%%TK%%lib/ocaml/labltk/cSelection.mli
-%%TK%%lib/ocaml/labltk/cText.cmi
-%%TK%%lib/ocaml/labltk/cText.cmx
-%%TK%%lib/ocaml/labltk/cText.mli
-%%TK%%lib/ocaml/labltk/cTk.cmi
-%%TK%%lib/ocaml/labltk/cTk.cmx
-%%TK%%lib/ocaml/labltk/cTkvars.cmi
-%%TK%%lib/ocaml/labltk/cTkvars.cmx
-%%TK%%lib/ocaml/labltk/cTkvars.mli
-%%TK%%lib/ocaml/labltk/cTkwait.cmi
-%%TK%%lib/ocaml/labltk/cTkwait.cmx
-%%TK%%lib/ocaml/labltk/cTkwait.mli
-%%TK%%lib/ocaml/labltk/cToplevel.cmi
-%%TK%%lib/ocaml/labltk/cToplevel.cmx
-%%TK%%lib/ocaml/labltk/cToplevel.mli
-%%TK%%lib/ocaml/labltk/cWinfo.cmi
-%%TK%%lib/ocaml/labltk/cWinfo.cmx
-%%TK%%lib/ocaml/labltk/cWinfo.mli
-%%TK%%lib/ocaml/labltk/cWm.cmi
-%%TK%%lib/ocaml/labltk/cWm.cmx
-%%TK%%lib/ocaml/labltk/cWm.mli
-%%TK%%lib/ocaml/labltk/camltk.cmi
-%%TK%%lib/ocaml/labltk/camltk.cmx
-%%TK%%lib/ocaml/labltk/canvas.cmi
-%%TK%%lib/ocaml/labltk/canvas.cmx
-%%TK%%lib/ocaml/labltk/canvas.mli
-%%TK%%lib/ocaml/labltk/checkbutton.cmi
-%%TK%%lib/ocaml/labltk/checkbutton.cmx
-%%TK%%lib/ocaml/labltk/checkbutton.mli
-%%TK%%lib/ocaml/labltk/clipboard.cmi
-%%TK%%lib/ocaml/labltk/clipboard.cmx
-%%TK%%lib/ocaml/labltk/clipboard.mli
-%%TK%%lib/ocaml/labltk/dialog.cmi
-%%TK%%lib/ocaml/labltk/dialog.cmx
-%%TK%%lib/ocaml/labltk/dialog.mli
-%%TK%%lib/ocaml/labltk/encoding.cmi
-%%TK%%lib/ocaml/labltk/encoding.cmx
-%%TK%%lib/ocaml/labltk/encoding.mli
-%%TK%%lib/ocaml/labltk/entry.cmi
-%%TK%%lib/ocaml/labltk/entry.cmx
-%%TK%%lib/ocaml/labltk/entry.mli
-%%TK%%lib/ocaml/labltk/fileevent.cmi
-%%TK%%lib/ocaml/labltk/fileevent.cmx
-%%TK%%lib/ocaml/labltk/fileevent.mli
-%%TK%%lib/ocaml/labltk/fileselect.cmi
-%%TK%%lib/ocaml/labltk/fileselect.cmx
-%%TK%%lib/ocaml/labltk/fileselect.mli
-%%TK%%lib/ocaml/labltk/focus.cmi
-%%TK%%lib/ocaml/labltk/focus.cmx
-%%TK%%lib/ocaml/labltk/focus.mli
-%%TK%%lib/ocaml/labltk/font.cmi
-%%TK%%lib/ocaml/labltk/font.cmx
-%%TK%%lib/ocaml/labltk/font.mli
-%%TK%%lib/ocaml/labltk/frame.cmi
-%%TK%%lib/ocaml/labltk/frame.cmx
-%%TK%%lib/ocaml/labltk/frame.mli
-%%TK%%lib/ocaml/labltk/frx_after.cmi
-%%TK%%lib/ocaml/labltk/frx_after.mli
-%%TK%%lib/ocaml/labltk/frx_color.cmi
-%%TK%%lib/ocaml/labltk/frx_color.mli
-%%TK%%lib/ocaml/labltk/frx_ctext.cmi
-%%TK%%lib/ocaml/labltk/frx_ctext.mli
-%%TK%%lib/ocaml/labltk/frx_dialog.cmi
-%%TK%%lib/ocaml/labltk/frx_dialog.mli
-%%TK%%lib/ocaml/labltk/frx_entry.cmi
-%%TK%%lib/ocaml/labltk/frx_entry.mli
-%%TK%%lib/ocaml/labltk/frx_fillbox.cmi
-%%TK%%lib/ocaml/labltk/frx_fillbox.mli
-%%TK%%lib/ocaml/labltk/frx_fit.cmi
-%%TK%%lib/ocaml/labltk/frx_fit.mli
-%%TK%%lib/ocaml/labltk/frx_focus.cmi
-%%TK%%lib/ocaml/labltk/frx_focus.mli
-%%TK%%lib/ocaml/labltk/frx_font.cmi
-%%TK%%lib/ocaml/labltk/frx_font.mli
-%%TK%%lib/ocaml/labltk/frx_lbutton.mli
-%%TK%%lib/ocaml/labltk/frx_listbox.cmi
-%%TK%%lib/ocaml/labltk/frx_listbox.mli
-%%TK%%lib/ocaml/labltk/frx_mem.cmi
-%%TK%%lib/ocaml/labltk/frx_mem.mli
-%%TK%%lib/ocaml/labltk/frx_misc.cmi
-%%TK%%lib/ocaml/labltk/frx_misc.mli
-%%TK%%lib/ocaml/labltk/frx_req.cmi
-%%TK%%lib/ocaml/labltk/frx_req.mli
-%%TK%%lib/ocaml/labltk/frx_rpc.cmi
-%%TK%%lib/ocaml/labltk/frx_rpc.mli
-%%TK%%lib/ocaml/labltk/frx_selection.cmi
-%%TK%%lib/ocaml/labltk/frx_selection.mli
-%%TK%%lib/ocaml/labltk/frx_synth.cmi
-%%TK%%lib/ocaml/labltk/frx_synth.mli
-%%TK%%lib/ocaml/labltk/frx_text.cmi
-%%TK%%lib/ocaml/labltk/frx_text.mli
-%%TK%%lib/ocaml/labltk/frx_toplevel.mli
-%%TK%%lib/ocaml/labltk/frx_widget.cmi
-%%TK%%lib/ocaml/labltk/frx_widget.mli
-%%TK%%lib/ocaml/labltk/frxlib.a
-%%TK%%lib/ocaml/labltk/frxlib.cma
-%%TK%%lib/ocaml/labltk/frxlib.cmxa
-%%TK%%lib/ocaml/labltk/grab.cmi
-%%TK%%lib/ocaml/labltk/grab.cmx
-%%TK%%lib/ocaml/labltk/grab.mli
-%%TK%%lib/ocaml/labltk/grid.cmi
-%%TK%%lib/ocaml/labltk/grid.cmx
-%%TK%%lib/ocaml/labltk/grid.mli
-%%TK%%lib/ocaml/labltk/image.cmi
-%%TK%%lib/ocaml/labltk/image.cmx
-%%TK%%lib/ocaml/labltk/image.mli
-%%TK%%lib/ocaml/labltk/imagebitmap.cmi
-%%TK%%lib/ocaml/labltk/imagebitmap.cmx
-%%TK%%lib/ocaml/labltk/imagebitmap.mli
-%%TK%%lib/ocaml/labltk/imagephoto.cmi
-%%TK%%lib/ocaml/labltk/imagephoto.cmx
-%%TK%%lib/ocaml/labltk/imagephoto.mli
-%%TK%%lib/ocaml/labltk/jpf_font.cmi
-%%TK%%lib/ocaml/labltk/jpf_font.cmx
-%%TK%%lib/ocaml/labltk/jpf_font.mli
-%%TK%%lib/ocaml/labltk/jpflib.a
-%%TK%%lib/ocaml/labltk/jpflib.cma
-%%TK%%lib/ocaml/labltk/jpflib.cmxa
-%%TK%%lib/ocaml/labltk/label.cmi
-%%TK%%lib/ocaml/labltk/label.cmx
-%%TK%%lib/ocaml/labltk/label.mli
-%%TK%%lib/ocaml/labltk/labltk.a
-%%TK%%lib/ocaml/labltk/labltk.cma
-%%TK%%lib/ocaml/labltk/labltk.cmi
-%%TK%%lib/ocaml/labltk/labltk.cmx
-%%TK%%lib/ocaml/labltk/labltk.cmxa
-%%TK%%lib/ocaml/labltk/labltktop
-%%TK%%lib/ocaml/labltk/liblabltk.a
-%%TK%%lib/ocaml/labltk/listbox.cmi
-%%TK%%lib/ocaml/labltk/listbox.cmx
-%%TK%%lib/ocaml/labltk/listbox.mli
-%%TK%%lib/ocaml/labltk/menu.cmi
-%%TK%%lib/ocaml/labltk/menu.cmx
-%%TK%%lib/ocaml/labltk/menu.mli
-%%TK%%lib/ocaml/labltk/menubutton.cmi
-%%TK%%lib/ocaml/labltk/menubutton.cmx
-%%TK%%lib/ocaml/labltk/menubutton.mli
-%%TK%%lib/ocaml/labltk/message.cmi
-%%TK%%lib/ocaml/labltk/message.cmx
-%%TK%%lib/ocaml/labltk/message.mli
-%%TK%%lib/ocaml/labltk/option.cmi
-%%TK%%lib/ocaml/labltk/option.cmx
-%%TK%%lib/ocaml/labltk/option.mli
-%%TK%%lib/ocaml/labltk/optionmenu.cmi
-%%TK%%lib/ocaml/labltk/optionmenu.cmx
-%%TK%%lib/ocaml/labltk/optionmenu.mli
-%%TK%%lib/ocaml/labltk/pack.cmi
-%%TK%%lib/ocaml/labltk/pack.cmx
-%%TK%%lib/ocaml/labltk/pack.mli
-%%TK%%lib/ocaml/labltk/palette.cmi
-%%TK%%lib/ocaml/labltk/palette.cmx
-%%TK%%lib/ocaml/labltk/palette.mli
-%%TK%%lib/ocaml/labltk/pixmap.cmi
-%%TK%%lib/ocaml/labltk/pixmap.cmx
-%%TK%%lib/ocaml/labltk/pixmap.mli
-%%TK%%lib/ocaml/labltk/place.cmi
-%%TK%%lib/ocaml/labltk/place.cmx
-%%TK%%lib/ocaml/labltk/place.mli
-%%TK%%lib/ocaml/labltk/pp
-%%TK%%lib/ocaml/labltk/protocol.cmi
-%%TK%%lib/ocaml/labltk/protocol.cmx
-%%TK%%lib/ocaml/labltk/protocol.mli
-%%TK%%lib/ocaml/labltk/radiobutton.cmi
-%%TK%%lib/ocaml/labltk/radiobutton.cmx
-%%TK%%lib/ocaml/labltk/radiobutton.mli
-%%TK%%lib/ocaml/labltk/rawwidget.cmi
-%%TK%%lib/ocaml/labltk/rawwidget.cmx
-%%TK%%lib/ocaml/labltk/rawwidget.mli
-%%TK%%lib/ocaml/labltk/scale.cmi
-%%TK%%lib/ocaml/labltk/scale.cmx
-%%TK%%lib/ocaml/labltk/scale.mli
-%%TK%%lib/ocaml/labltk/scrollbar.cmi
-%%TK%%lib/ocaml/labltk/scrollbar.cmx
-%%TK%%lib/ocaml/labltk/scrollbar.mli
-%%TK%%lib/ocaml/labltk/selection.cmi
-%%TK%%lib/ocaml/labltk/selection.cmx
-%%TK%%lib/ocaml/labltk/selection.mli
-%%TK%%lib/ocaml/labltk/shell.cmi
-%%TK%%lib/ocaml/labltk/shell.cmx
-%%TK%%lib/ocaml/labltk/shell.mli
-%%TK%%lib/ocaml/labltk/text.cmi
-%%TK%%lib/ocaml/labltk/text.cmx
-%%TK%%lib/ocaml/labltk/text.mli
-%%TK%%lib/ocaml/labltk/textvariable.cmi
-%%TK%%lib/ocaml/labltk/textvariable.cmx
-%%TK%%lib/ocaml/labltk/textvariable.mli
-%%TK%%lib/ocaml/labltk/timer.cmi
-%%TK%%lib/ocaml/labltk/timer.cmx
-%%TK%%lib/ocaml/labltk/timer.mli
-%%TK%%lib/ocaml/labltk/tk.cmi
-%%TK%%lib/ocaml/labltk/tk.cmx
-%%TK%%lib/ocaml/labltk/tkcompiler
-%%TK%%lib/ocaml/labltk/tkthread.cmi
-%%TK%%lib/ocaml/labltk/tkthread.cmo
-%%TK%%lib/ocaml/labltk/tkthread.cmx
-%%TK%%lib/ocaml/labltk/tkthread.mli
-%%TK%%lib/ocaml/labltk/tkthread.o
-%%TK%%lib/ocaml/labltk/tkvars.cmi
-%%TK%%lib/ocaml/labltk/tkvars.cmx
-%%TK%%lib/ocaml/labltk/tkvars.mli
-%%TK%%lib/ocaml/labltk/tkwait.cmi
-%%TK%%lib/ocaml/labltk/tkwait.cmx
-%%TK%%lib/ocaml/labltk/tkwait.mli
-%%TK%%lib/ocaml/labltk/toplevel.cmi
-%%TK%%lib/ocaml/labltk/toplevel.cmx
-%%TK%%lib/ocaml/labltk/toplevel.mli
-%%TK%%lib/ocaml/labltk/widget.cmi
-%%TK%%lib/ocaml/labltk/widget.cmx
-%%TK%%lib/ocaml/labltk/widget.mli
-%%TK%%lib/ocaml/labltk/winfo.cmi
-%%TK%%lib/ocaml/labltk/winfo.cmx
-%%TK%%lib/ocaml/labltk/winfo.mli
-%%TK%%lib/ocaml/labltk/wm.cmi
-%%TK%%lib/ocaml/labltk/wm.cmx
-%%TK%%lib/ocaml/labltk/wm.mli
+lib/ocaml/labltk/balloon.cmi
+lib/ocaml/labltk/balloon.cmx
+lib/ocaml/labltk/balloon.mli
+lib/ocaml/labltk/bell.cmi
+lib/ocaml/labltk/bell.cmx
+lib/ocaml/labltk/bell.mli
+lib/ocaml/labltk/button.cmi
+lib/ocaml/labltk/button.cmx
+lib/ocaml/labltk/button.mli
+lib/ocaml/labltk/cBell.cmi
+lib/ocaml/labltk/cBell.cmx
+lib/ocaml/labltk/cBell.mli
+lib/ocaml/labltk/cButton.cmi
+lib/ocaml/labltk/cButton.cmx
+lib/ocaml/labltk/cButton.mli
+lib/ocaml/labltk/cCanvas.cmi
+lib/ocaml/labltk/cCanvas.cmx
+lib/ocaml/labltk/cCanvas.mli
+lib/ocaml/labltk/cCheckbutton.cmi
+lib/ocaml/labltk/cCheckbutton.cmx
+lib/ocaml/labltk/cCheckbutton.mli
+lib/ocaml/labltk/cClipboard.cmi
+lib/ocaml/labltk/cClipboard.cmx
+lib/ocaml/labltk/cClipboard.mli
+lib/ocaml/labltk/cDialog.cmi
+lib/ocaml/labltk/cDialog.cmx
+lib/ocaml/labltk/cDialog.mli
+lib/ocaml/labltk/cEncoding.cmi
+lib/ocaml/labltk/cEncoding.cmx
+lib/ocaml/labltk/cEncoding.mli
+lib/ocaml/labltk/cEntry.cmi
+lib/ocaml/labltk/cEntry.cmx
+lib/ocaml/labltk/cEntry.mli
+lib/ocaml/labltk/cFocus.cmi
+lib/ocaml/labltk/cFocus.cmx
+lib/ocaml/labltk/cFocus.mli
+lib/ocaml/labltk/cFont.cmi
+lib/ocaml/labltk/cFont.cmx
+lib/ocaml/labltk/cFont.mli
+lib/ocaml/labltk/cFrame.cmi
+lib/ocaml/labltk/cFrame.cmx
+lib/ocaml/labltk/cFrame.mli
+lib/ocaml/labltk/cGrab.cmi
+lib/ocaml/labltk/cGrab.cmx
+lib/ocaml/labltk/cGrab.mli
+lib/ocaml/labltk/cGrid.cmi
+lib/ocaml/labltk/cGrid.cmx
+lib/ocaml/labltk/cGrid.mli
+lib/ocaml/labltk/cImage.cmi
+lib/ocaml/labltk/cImage.cmx
+lib/ocaml/labltk/cImage.mli
+lib/ocaml/labltk/cImagebitmap.cmi
+%%PROF%%lib/ocaml/labltk/cImagebitmap.cmx
+lib/ocaml/labltk/cImagebitmap.mli
+lib/ocaml/labltk/cImagephoto.cmi
+lib/ocaml/labltk/cImagephoto.cmx
+lib/ocaml/labltk/cImagephoto.mli
+lib/ocaml/labltk/cLabel.cmi
+lib/ocaml/labltk/cLabel.cmx
+lib/ocaml/labltk/cLabel.mli
+lib/ocaml/labltk/cListbox.cmi
+lib/ocaml/labltk/cListbox.cmx
+lib/ocaml/labltk/cListbox.mli
+lib/ocaml/labltk/cMenu.cmi
+lib/ocaml/labltk/cMenu.cmx
+lib/ocaml/labltk/cMenu.mli
+lib/ocaml/labltk/cMenubutton.cmi
+lib/ocaml/labltk/cMenubutton.cmx
+lib/ocaml/labltk/cMenubutton.mli
+lib/ocaml/labltk/cMessage.cmi
+lib/ocaml/labltk/cMessage.cmx
+lib/ocaml/labltk/cMessage.mli
+lib/ocaml/labltk/cOption.cmi
+lib/ocaml/labltk/cOption.cmx
+lib/ocaml/labltk/cOption.mli
+lib/ocaml/labltk/cOptionmenu.cmi
+lib/ocaml/labltk/cOptionmenu.cmx
+lib/ocaml/labltk/cOptionmenu.mli
+lib/ocaml/labltk/cPack.cmi
+lib/ocaml/labltk/cPack.cmx
+lib/ocaml/labltk/cPack.mli
+lib/ocaml/labltk/cPalette.cmi
+lib/ocaml/labltk/cPalette.cmx
+lib/ocaml/labltk/cPalette.mli
+lib/ocaml/labltk/cPixmap.cmi
+%%PROF%%lib/ocaml/labltk/cPixmap.cmx
+lib/ocaml/labltk/cPixmap.mli
+lib/ocaml/labltk/cPlace.cmi
+lib/ocaml/labltk/cPlace.cmx
+lib/ocaml/labltk/cPlace.mli
+lib/ocaml/labltk/cRadiobutton.cmi
+lib/ocaml/labltk/cRadiobutton.cmx
+lib/ocaml/labltk/cRadiobutton.mli
+lib/ocaml/labltk/cResource.cmi
+lib/ocaml/labltk/cResource.cmx
+lib/ocaml/labltk/cResource.mli
+lib/ocaml/labltk/cScale.cmi
+lib/ocaml/labltk/cScale.cmx
+lib/ocaml/labltk/cScale.mli
+lib/ocaml/labltk/cScrollbar.cmi
+lib/ocaml/labltk/cScrollbar.cmx
+lib/ocaml/labltk/cScrollbar.mli
+lib/ocaml/labltk/cSelection.cmi
+lib/ocaml/labltk/cSelection.cmx
+lib/ocaml/labltk/cSelection.mli
+lib/ocaml/labltk/cText.cmi
+lib/ocaml/labltk/cText.cmx
+lib/ocaml/labltk/cText.mli
+lib/ocaml/labltk/cTk.cmi
+lib/ocaml/labltk/cTk.cmx
+lib/ocaml/labltk/cTkvars.cmi
+lib/ocaml/labltk/cTkvars.cmx
+lib/ocaml/labltk/cTkvars.mli
+lib/ocaml/labltk/cTkwait.cmi
+lib/ocaml/labltk/cTkwait.cmx
+lib/ocaml/labltk/cTkwait.mli
+lib/ocaml/labltk/cToplevel.cmi
+lib/ocaml/labltk/cToplevel.cmx
+lib/ocaml/labltk/cToplevel.mli
+lib/ocaml/labltk/cWinfo.cmi
+lib/ocaml/labltk/cWinfo.cmx
+lib/ocaml/labltk/cWinfo.mli
+lib/ocaml/labltk/cWm.cmi
+lib/ocaml/labltk/cWm.cmx
+lib/ocaml/labltk/cWm.mli
+lib/ocaml/labltk/camltk.cmi
+lib/ocaml/labltk/camltk.cmx
+lib/ocaml/labltk/canvas.cmi
+lib/ocaml/labltk/canvas.cmx
+lib/ocaml/labltk/canvas.mli
+lib/ocaml/labltk/checkbutton.cmi
+lib/ocaml/labltk/checkbutton.cmx
+lib/ocaml/labltk/checkbutton.mli
+lib/ocaml/labltk/clipboard.cmi
+lib/ocaml/labltk/clipboard.cmx
+lib/ocaml/labltk/clipboard.mli
+lib/ocaml/labltk/dialog.cmi
+lib/ocaml/labltk/dialog.cmx
+lib/ocaml/labltk/dialog.mli
+lib/ocaml/labltk/encoding.cmi
+lib/ocaml/labltk/encoding.cmx
+lib/ocaml/labltk/encoding.mli
+lib/ocaml/labltk/entry.cmi
+lib/ocaml/labltk/entry.cmx
+lib/ocaml/labltk/entry.mli
+lib/ocaml/labltk/fileevent.cmi
+lib/ocaml/labltk/fileevent.cmx
+lib/ocaml/labltk/fileevent.mli
+lib/ocaml/labltk/fileselect.cmi
+lib/ocaml/labltk/fileselect.cmx
+lib/ocaml/labltk/fileselect.mli
+lib/ocaml/labltk/focus.cmi
+lib/ocaml/labltk/focus.cmx
+lib/ocaml/labltk/focus.mli
+lib/ocaml/labltk/font.cmi
+lib/ocaml/labltk/font.cmx
+lib/ocaml/labltk/font.mli
+lib/ocaml/labltk/frame.cmi
+lib/ocaml/labltk/frame.cmx
+lib/ocaml/labltk/frame.mli
+lib/ocaml/labltk/frx_after.cmi
+lib/ocaml/labltk/frx_after.mli
+lib/ocaml/labltk/frx_color.cmi
+lib/ocaml/labltk/frx_color.mli
+lib/ocaml/labltk/frx_ctext.cmi
+lib/ocaml/labltk/frx_ctext.mli
+lib/ocaml/labltk/frx_dialog.cmi
+lib/ocaml/labltk/frx_dialog.mli
+lib/ocaml/labltk/frx_entry.cmi
+lib/ocaml/labltk/frx_entry.mli
+lib/ocaml/labltk/frx_fillbox.cmi
+lib/ocaml/labltk/frx_fillbox.mli
+lib/ocaml/labltk/frx_fit.cmi
+lib/ocaml/labltk/frx_fit.mli
+lib/ocaml/labltk/frx_focus.cmi
+lib/ocaml/labltk/frx_focus.mli
+lib/ocaml/labltk/frx_font.cmi
+lib/ocaml/labltk/frx_font.mli
+lib/ocaml/labltk/frx_lbutton.mli
+lib/ocaml/labltk/frx_listbox.cmi
+lib/ocaml/labltk/frx_listbox.mli
+lib/ocaml/labltk/frx_mem.cmi
+lib/ocaml/labltk/frx_mem.mli
+lib/ocaml/labltk/frx_misc.cmi
+lib/ocaml/labltk/frx_misc.mli
+lib/ocaml/labltk/frx_req.cmi
+lib/ocaml/labltk/frx_req.mli
+lib/ocaml/labltk/frx_rpc.cmi
+lib/ocaml/labltk/frx_rpc.mli
+lib/ocaml/labltk/frx_selection.cmi
+lib/ocaml/labltk/frx_selection.mli
+lib/ocaml/labltk/frx_synth.cmi
+lib/ocaml/labltk/frx_synth.mli
+lib/ocaml/labltk/frx_text.cmi
+lib/ocaml/labltk/frx_text.mli
+lib/ocaml/labltk/frx_toplevel.mli
+lib/ocaml/labltk/frx_widget.cmi
+lib/ocaml/labltk/frx_widget.mli
+lib/ocaml/labltk/frxlib.a
+lib/ocaml/labltk/frxlib.cma
+lib/ocaml/labltk/frxlib.cmxa
+lib/ocaml/labltk/grab.cmi
+lib/ocaml/labltk/grab.cmx
+lib/ocaml/labltk/grab.mli
+lib/ocaml/labltk/grid.cmi
+lib/ocaml/labltk/grid.cmx
+lib/ocaml/labltk/grid.mli
+lib/ocaml/labltk/image.cmi
+lib/ocaml/labltk/image.cmx
+lib/ocaml/labltk/image.mli
+lib/ocaml/labltk/imagebitmap.cmi
+%%PROF%%lib/ocaml/labltk/imagebitmap.cmx
+lib/ocaml/labltk/imagebitmap.mli
+lib/ocaml/labltk/imagephoto.cmi
+lib/ocaml/labltk/imagephoto.cmx
+lib/ocaml/labltk/imagephoto.mli
+lib/ocaml/labltk/jpf_font.cmi
+lib/ocaml/labltk/jpf_font.cmx
+lib/ocaml/labltk/jpf_font.mli
+lib/ocaml/labltk/jpflib.a
+lib/ocaml/labltk/jpflib.cma
+lib/ocaml/labltk/jpflib.cmxa
+lib/ocaml/labltk/label.cmi
+lib/ocaml/labltk/label.cmx
+lib/ocaml/labltk/label.mli
+lib/ocaml/labltk/labltk.a
+lib/ocaml/labltk/labltk.cma
+lib/ocaml/labltk/labltk.cmi
+lib/ocaml/labltk/labltk.cmx
+lib/ocaml/labltk/labltk.cmxa
+lib/ocaml/labltk/labltktop
+lib/ocaml/labltk/liblabltk.a
+lib/ocaml/labltk/listbox.cmi
+lib/ocaml/labltk/listbox.cmx
+lib/ocaml/labltk/listbox.mli
+lib/ocaml/labltk/menu.cmi
+lib/ocaml/labltk/menu.cmx
+lib/ocaml/labltk/menu.mli
+lib/ocaml/labltk/menubutton.cmi
+lib/ocaml/labltk/menubutton.cmx
+lib/ocaml/labltk/menubutton.mli
+lib/ocaml/labltk/message.cmi
+lib/ocaml/labltk/message.cmx
+lib/ocaml/labltk/message.mli
+lib/ocaml/labltk/option.cmi
+lib/ocaml/labltk/option.cmx
+lib/ocaml/labltk/option.mli
+lib/ocaml/labltk/optionmenu.cmi
+lib/ocaml/labltk/optionmenu.cmx
+lib/ocaml/labltk/optionmenu.mli
+lib/ocaml/labltk/pack.cmi
+lib/ocaml/labltk/pack.cmx
+lib/ocaml/labltk/pack.mli
+lib/ocaml/labltk/palette.cmi
+lib/ocaml/labltk/palette.cmx
+lib/ocaml/labltk/palette.mli
+lib/ocaml/labltk/pixmap.cmi
+%%PROF%%lib/ocaml/labltk/pixmap.cmx
+lib/ocaml/labltk/pixmap.mli
+lib/ocaml/labltk/place.cmi
+lib/ocaml/labltk/place.cmx
+lib/ocaml/labltk/place.mli
+lib/ocaml/labltk/pp
+lib/ocaml/labltk/protocol.cmi
+lib/ocaml/labltk/protocol.cmx
+lib/ocaml/labltk/protocol.mli
+lib/ocaml/labltk/radiobutton.cmi
+lib/ocaml/labltk/radiobutton.cmx
+lib/ocaml/labltk/radiobutton.mli
+lib/ocaml/labltk/rawwidget.cmi
+lib/ocaml/labltk/rawwidget.cmx
+lib/ocaml/labltk/rawwidget.mli
+lib/ocaml/labltk/scale.cmi
+lib/ocaml/labltk/scale.cmx
+lib/ocaml/labltk/scale.mli
+lib/ocaml/labltk/scrollbar.cmi
+lib/ocaml/labltk/scrollbar.cmx
+lib/ocaml/labltk/scrollbar.mli
+lib/ocaml/labltk/selection.cmi
+lib/ocaml/labltk/selection.cmx
+lib/ocaml/labltk/selection.mli
+lib/ocaml/labltk/shell.cmi
+lib/ocaml/labltk/shell.cmx
+lib/ocaml/labltk/shell.mli
+lib/ocaml/labltk/text.cmi
+lib/ocaml/labltk/text.cmx
+lib/ocaml/labltk/text.mli
+lib/ocaml/labltk/textvariable.cmi
+lib/ocaml/labltk/textvariable.cmx
+lib/ocaml/labltk/textvariable.mli
+lib/ocaml/labltk/timer.cmi
+lib/ocaml/labltk/timer.cmx
+lib/ocaml/labltk/timer.mli
+lib/ocaml/labltk/tk.cmi
+lib/ocaml/labltk/tk.cmx
+lib/ocaml/labltk/tkcompiler
+lib/ocaml/labltk/tkthread.cmi
+lib/ocaml/labltk/tkthread.cmo
+lib/ocaml/labltk/tkthread.cmx
+lib/ocaml/labltk/tkthread.mli
+lib/ocaml/labltk/tkthread.o
+lib/ocaml/labltk/tkvars.cmi
+lib/ocaml/labltk/tkvars.cmx
+lib/ocaml/labltk/tkvars.mli
+lib/ocaml/labltk/tkwait.cmi
+lib/ocaml/labltk/tkwait.cmx
+lib/ocaml/labltk/tkwait.mli
+lib/ocaml/labltk/toplevel.cmi
+lib/ocaml/labltk/toplevel.cmx
+lib/ocaml/labltk/toplevel.mli
+lib/ocaml/labltk/widget.cmi
+lib/ocaml/labltk/widget.cmx
+lib/ocaml/labltk/widget.mli
+lib/ocaml/labltk/winfo.cmi
+lib/ocaml/labltk/winfo.cmx
+lib/ocaml/labltk/winfo.mli
+lib/ocaml/labltk/wm.cmi
+lib/ocaml/labltk/wm.cmx
+lib/ocaml/labltk/wm.mli
 lib/ocaml/lazy.cmi
 lib/ocaml/lazy.cmx
 lib/ocaml/lazy.ml
@@ -671,7 +803,6 @@ lib/ocaml/libcamlrun.a
 lib/ocaml/libcamlrun_shared.so
 lib/ocaml/libcamlstr.a
 %%X11%%lib/ocaml/libgraphics.a
-lib/ocaml/libmldbm.a
 lib/ocaml/libnums.a
 lib/ocaml/libthreads.a
 lib/ocaml/libthreadsnat.a
@@ -687,7 +818,7 @@ lib/ocaml/listLabels.ml
 lib/ocaml/listLabels.mli
 %%PROF%%lib/ocaml/listLabels.p.cmx
 lib/ocaml/map.cmi
-lib/ocaml/map.cmx
+%%PROF%%lib/ocaml/map.cmx
 lib/ocaml/map.ml
 lib/ocaml/map.mli
 %%PROF%%lib/ocaml/map.p.cmx
@@ -721,8 +852,8 @@ lib/ocaml/obj.cmi
 lib/ocaml/obj.cmx
 lib/ocaml/obj.ml
 lib/ocaml/obj.mli
-lib/ocaml/objinfo_helper
 %%PROF%%lib/ocaml/obj.p.cmx
+lib/ocaml/objinfo_helper
 lib/ocaml/ocamlbuild/ocamlbuild.cmo
 lib/ocaml/ocamlbuild/ocamlbuild.cmx
 lib/ocaml/ocamlbuild/ocamlbuild.o
@@ -756,6 +887,7 @@ lib/ocaml/ocamldoc/odoc_dep.cmi
 lib/ocaml/ocamldoc/odoc_dot.cmi
 lib/ocaml/ocamldoc/odoc_env.cmi
 lib/ocaml/ocamldoc/odoc_exception.cmi
+lib/ocaml/ocamldoc/odoc_gen.cmi
 lib/ocaml/ocamldoc/odoc_global.cmi
 lib/ocaml/ocamldoc/odoc_html.cmi
 lib/ocaml/ocamldoc/odoc_info.a
@@ -796,8 +928,6 @@ lib/ocaml/oo.cmx
 lib/ocaml/oo.ml
 lib/ocaml/oo.mli
 %%PROF%%lib/ocaml/oo.p.cmx
-lib/ocaml/outcometree.cmi
-lib/ocaml/outcometree.mli
 lib/ocaml/parsing.cmi
 lib/ocaml/parsing.cmx
 lib/ocaml/parsing.ml
@@ -820,6 +950,8 @@ lib/ocaml/printf.mli
 %%PROF%%lib/ocaml/printf.p.cmx
 lib/ocaml/profiling.cmi
 lib/ocaml/profiling.cmo
+lib/ocaml/profiling.cmx
+lib/ocaml/profiling.o
 lib/ocaml/queue.cmi
 lib/ocaml/queue.cmx
 lib/ocaml/queue.ml
@@ -863,7 +995,7 @@ lib/ocaml/std_exit.cmo
 lib/ocaml/std_exit.cmx
 lib/ocaml/std_exit.ml
 lib/ocaml/std_exit.o
-lib/ocaml/std_exit.p.cmx
+%%PROF%%lib/ocaml/std_exit.p.cmx
 lib/ocaml/std_exit.p.o
 lib/ocaml/stdlib.a
 lib/ocaml/stdlib.cma
@@ -893,10 +1025,9 @@ lib/ocaml/stringLabels.ml
 lib/ocaml/stringLabels.mli
 %%PROF%%lib/ocaml/stringLabels.p.cmx
 lib/ocaml/stublibs/dllbigarray.so
-%%X11%%lib/ocaml/stublibs/dllgraphics.so
-%%TK%%lib/ocaml/stublibs/dlllabltk.so
 lib/ocaml/stublibs/dllcamlstr.so
-lib/ocaml/stublibs/dllmldbm.so
+%%X11%%lib/ocaml/stublibs/dllgraphics.so
+lib/ocaml/stublibs/dlllabltk.so
 lib/ocaml/stublibs/dllnums.so
 lib/ocaml/stublibs/dllthreads.so
 lib/ocaml/stublibs/dllunix.so
@@ -922,10 +1053,6 @@ lib/ocaml/threads/threads.a
 lib/ocaml/threads/threads.cma
 lib/ocaml/threads/threads.cmxa
 lib/ocaml/topdirs.cmi
-lib/ocaml/toplevellib.cma
-lib/ocaml/toploop.cmi
-lib/ocaml/topmain.cmi
-lib/ocaml/topstart.cmo
 lib/ocaml/unix.a
 lib/ocaml/unix.cma
 lib/ocaml/unix.cmi
@@ -955,51 +1082,54 @@ lib/ocaml/weak.cmx
 lib/ocaml/weak.ml
 lib/ocaml/weak.mli
 %%PROF%%lib/ocaml/weak.p.cmx
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/Makefile
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/Makefile.nt
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/addition.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/eyes.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/fileinput.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/fileopen.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/helloworld.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/images/CamlBook.gif
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/images/Lambda2.back.gif
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/images/dojoji.back.gif
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/jptest.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/mytext.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/socketinput.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/taddition.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/tetris.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/text.ml
-%%TK%%%%EXAMPLESDIR%%/examples_camltk/winskel.ml
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/Lambda2.back.gif
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/Makefile
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/Makefile.nt
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/README
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/calc.ml
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/clock.ml
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/demo.ml
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/eyes.ml
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/hello.ml
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/hello.tcl
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/lang.ml
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/taquin.ml
-%%TK%%%%EXAMPLESDIR%%/examples_labltk/tetris.ml
-%%TK%%@dirrm %%EXAMPLESDIR%%/examples_labltk
-%%TK%%@dirrm %%EXAMPLESDIR%%/examples_camltk/images
-%%TK%%@dirrm %%EXAMPLESDIR%%/examples_camltk
-%%TK%%@dirrm %%EXAMPLESDIR%%
+share/examples/ocaml/examples_camltk/.ignore
+share/examples/ocaml/examples_camltk/Makefile
+share/examples/ocaml/examples_camltk/Makefile.nt
+share/examples/ocaml/examples_camltk/addition.ml
+share/examples/ocaml/examples_camltk/eyes.ml
+share/examples/ocaml/examples_camltk/fileinput.ml
+share/examples/ocaml/examples_camltk/fileopen.ml
+share/examples/ocaml/examples_camltk/helloworld.ml
+share/examples/ocaml/examples_camltk/images/CamlBook.gif
+share/examples/ocaml/examples_camltk/images/Lambda2.back.gif
+share/examples/ocaml/examples_camltk/images/dojoji.back.gif
+share/examples/ocaml/examples_camltk/jptest.ml
+share/examples/ocaml/examples_camltk/mytext.ml
+share/examples/ocaml/examples_camltk/socketinput.ml
+share/examples/ocaml/examples_camltk/taddition.ml
+share/examples/ocaml/examples_camltk/tetris.ml
+share/examples/ocaml/examples_camltk/text.ml
+share/examples/ocaml/examples_camltk/winskel.ml
+share/examples/ocaml/examples_labltk/.ignore
+share/examples/ocaml/examples_labltk/Lambda2.back.gif
+share/examples/ocaml/examples_labltk/Makefile
+share/examples/ocaml/examples_labltk/Makefile.nt
+share/examples/ocaml/examples_labltk/README
+share/examples/ocaml/examples_labltk/calc.ml
+share/examples/ocaml/examples_labltk/clock.ml
+share/examples/ocaml/examples_labltk/demo.ml
+share/examples/ocaml/examples_labltk/eyes.ml
+share/examples/ocaml/examples_labltk/hello.ml
+share/examples/ocaml/examples_labltk/hello.tcl
+share/examples/ocaml/examples_labltk/lang.ml
+share/examples/ocaml/examples_labltk/taquin.ml
+share/examples/ocaml/examples_labltk/tetris.ml
+@dirrm share/examples/ocaml/examples_labltk
+@dirrm share/examples/ocaml/examples_camltk/images
+@dirrm share/examples/ocaml/examples_camltk
+@dirrm share/examples/ocaml
 @dirrm lib/ocaml/vmthreads
 @dirrm lib/ocaml/threads
 @dirrm lib/ocaml/stublibs
 @dirrm lib/ocaml/ocamldoc/custom
 @dirrm lib/ocaml/ocamldoc
 @dirrm lib/ocaml/ocamlbuild
-%%TK%%@dirrmtry lib/ocaml/labltk
+@dirrm lib/ocaml/labltk
+@dirrm lib/ocaml/compiler-libs
 @dirrm lib/ocaml/camlp4/Camlp4Top
 @dirrm lib/ocaml/camlp4/Camlp4Printers
 @dirrm lib/ocaml/camlp4/Camlp4Parsers
 @dirrm lib/ocaml/camlp4/Camlp4Filters
 @dirrm lib/ocaml/camlp4
 @dirrm lib/ocaml/caml
-@comment lib/ocaml will be added by Makefile
+@dirrm lib/ocaml


>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-ports-bugs->bf 
Responsible-Changed-By: bf 
Responsible-Changed-When: Fri Jan 4 22:45:46 UTC 2013 
Responsible-Changed-Why:  
I'll take it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=173364 

From: John Marino <freebsdml@marino.st>
To: bug-followup@FreeBSD.org, michael.grunewald@laposte.net
Cc:  
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Sat, 26 Jan 2013 17:06:57 +0100

 Unless I'm missing something, this patch does not apply cleanly (not 
 even close).
 
 some issues:
 does not exist: ocaml/files/man1
 does not exist: ocaml/files/mann
 does not exist: ocaml/files/manlinks
 already exists: ocaml/files/manfiles
 doesn't apply: pkg-plist
 
 I don't think I'm doing anything wrong.
 The PR/173364 was submitted Nov 4, 2012
 The last commit to this lang/ocaml (excluding files/patch-configure) was 
 11 months ago.
 
 It doesn't appear this patch is a victim of bitrot, so what happened here?
 
 (I'm not a FreeBSD ports committer, I was curious if this PR worked).
 
 John

From: "b.f." <bf1783@googlemail.com>
To: John Marino <freebsdml@marino.st>, bug-followup@FreeBSD.org
Cc: bf@freebsd.org
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Sun, 27 Jan 2013 00:47:20 +0000

 On 1/26/13, John Marino <freebsdml@marino.st> wrote:
 > The following reply was made to PR ports/173364; it has been noted by
 > GNATS.
 >
 > From: John Marino <freebsdml@marino.st>
 > To: bug-followup@FreeBSD.org, michael.grunewald@laposte.net
 > Cc:
 > Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
 > Date: Sat, 26 Jan 2013 17:06:57 +0100
 >
 >  Unless I'm missing something, this patch does not apply cleanly (not
 >  even close).
 >
 >  some issues:
 >  does not exist: ocaml/files/man1
 >  does not exist: ocaml/files/mann
 >  does not exist: ocaml/files/manlinks
 >  already exists: ocaml/files/manfiles
 >  doesn't apply: pkg-plist
 >
 >  I don't think I'm doing anything wrong.
 >  The PR/173364 was submitted Nov 4, 2012
 >  The last commit to this lang/ocaml (excluding files/patch-configure) was
 >  11 months ago.
 >
 >  It doesn't appear this patch is a victim of bitrot, so what happened here?
 
 They appear to be artifacts of the method used to generate the patch.
 However, it should not be hard to make the necessary adjustments.  I
 have not applied the patch yet as there are some pending updates that
 will go in first, to the tcl/tk ports and to ocaml-lablgtk2.
 
 >
 >  (I'm not a FreeBSD ports committer,
 
 It doesn't matter.
 
 > I was curious if this PR worked).
 
 I have yet to test it, but the maintainer has a good record.
 
 b.

From: John Marino <freebsdml@marino.st>
To: bf1783@gmail.com
Cc: "b.f." <bf1783@googlemail.com>, bug-followup@FreeBSD.org, 
 bf@freebsd.org
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Sun, 27 Jan 2013 12:27:51 +0100

 On 1/27/2013 01:47, b.f. wrote:
 > On 1/26/13, John Marino<freebsdml@marino.st>  wrote:
 >>   It doesn't appear this patch is a victim of bitrot, so what happened here?
 > They appear to be artifacts of the method used to generate the patch.
 > However, it should not be hard to make the necessary adjustments.  I
 > have not applied the patch yet as there are some pending updates that
 > will go in first, to the tcl/tk ports and to ocaml-lablgtk2.
 >> I was curious if this PR worked).
 > I have yet to test it, but the maintainer has a good record.
 
 Okay, I'll leave it for you to test, but I remain skeptical it's a 
 simple patch generation issue.  Many of the patches applied, so it's not 
 a "reverse patch" issue.  It really appears that the patch was generated 
 against a different version of the ocaml port.
 
 Thanks, I'll keep watching this PR.
 
 John

From: =?windows-1252?Q?Michael_Gr=FCnewald?=
 <michael.grunewald@laposte.net>
To: John Marino <freebsdml@marino.st>
Cc: bug-followup@FreeBSD.org
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Tue, 29 Jan 2013 21:36:36 +0100

 Hi John,
 
 thank you very much for your comments, I will try to fix things ASAP,
 probably Sat or Sun.
 
 John Marino wrote:
 > Unless I'm missing something, this patch does not apply cleanly (not
 > even close).
 > 
 > some issues:
 > does not exist: ocaml/files/man1
 > does not exist: ocaml/files/mann
 > does not exist: ocaml/files/manlinks
 > already exists: ocaml/files/manfiles
 > doesn't apply: pkg-plist
 > 
 > I don't think I'm doing anything wrong.
 > The PR/173364 was submitted Nov 4, 2012
 > The last commit to this lang/ocaml (excluding files/patch-configure) was
 > 11 months ago.
 > 
 > It doesn't appear this patch is a victim of bitrot, so what happened here?
 
 Well I am unsure could you sent me the command you used to apply the
 patch?  It looks pretty bad anyway!
 
 > (I'm not a FreeBSD ports committer, I was curious if this PR worked).
 
 If you need to use OCaml 4 before the update made it through, I could
 send you a tarball with a working port  like what you got from
 freshports.org  just let me know.
 
 Best regards,
 Michael
 

From: John Marino <freebsdml@marino.st>
To: =?windows-1252?Q?Michael_Gr=FCnewald?=
 <michael.grunewald@laposte.net>
Cc: bug-followup@FreeBSD.org
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Tue, 29 Jan 2013 22:14:19 +0100

 On 1/29/2013 21:36, Michael Grnewald wrote:
 > Well I am unsure could you sent me the command you used to apply the
 > patch?  It looks pretty bad anyway!
 
 it was something along the lines of "patch -p 2 --check < patch.txt" 
 from within the lang/ocaml directory.  Like I said, much of the files 
 patches ok so the command itself was fine.  The patch was just expecting 
 a different starting state than the ports have.
 
 >
 > If you need to use OCaml 4 before the update made it through, I could
 > send you a tarball with a working port  like what you got from
 > freshports.org  just let me know.
 >
 
 I can wait, thanks!
 John

From: =?ISO-8859-15?Q?Michael_Gr=FCnewald?=
 <michael.grunewald@laposte.net>
To: bug-followup@FreeBSD.org, michael.grunewald@laposte.net
Cc:  
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Thu, 14 Feb 2013 23:23:24 +0100

 This is a multi-part message in MIME format.
 --------------050900070604090908010804
 Content-Type: text/plain; charset=ISO-8859-15
 Content-Transfer-Encoding: 7bit
 
 Since John Marino had trouble with my previous patch, I am providing a
 new one.  It was generated against commit 312241 in our ports tree.
 
 --------------050900070604090908010804
 Content-Type: text/plain; charset=UTF-8;
  name="patch-ocaml.txt"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="patch-ocaml.txt"
 
 diff --git a/ocaml/Makefile b/ocaml/Makefile
 index 072102e..aa83b53 100644
 --- a/ocaml/Makefile
 +++ b/ocaml/Makefile
 @@ -2,17 +2,24 @@
  # Date created:		24 December 1996
  # Whom:			Kiriyama Kazuhiko <kiri@kiri.toba-cmt.ac.jp>
  #
 -# $FreeBSD: Makefile 311776 2013-02-06 15:42:16Z gahr $
 +# $FreeBSD: ports/lang/ocaml/Makefile,v 1.77 2012/02/23 01:10:28 bf Exp $
  #
  
  PORTNAME=	ocaml
 -PORTVERSION=	3.12.1
 -PORTREVISION=	1
 +PORTVERSION=    4.00.1
  CATEGORIES=	lang
 -MASTER_SITES=	http://caml.inria.fr/distrib/${DISTNAME:R}/ \
 -		ftp://ftp.inria.fr/INRIA/caml-light/${DISTNAME:R}/ \
 -		ftp://ftp.kurims.kyoto-u.ac.jp/pub/lang/caml-light/${DISTNAME:R}/ \
 +MASTER_SITES=	http://caml.inria.fr/pub/distrib/${DISTNAME:R}/ \
  		${MASTER_SITE_GENTOO}
 +DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
 +EXTRACT_ONLY=   ${DISTNAME}${EXTRACT_SUFX}
 +.if !defined(NOPORTDOCS)
 +DOCSDISTNAME=   ${DISTNAME:C/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/\1.\2/}
 +DISTFILES+= 	${DOCSDISTNAME}-refman-html.tar.gz \
 +		${DOCSDISTNAME}-refman.ps.gz \
 +		${DOCSDISTNAME}-refman.pdf
 +.endif
 +
 +
  MASTER_SITE_SUBDIR=	distfiles
  PKGNAMESUFFIX=	${SFX}
  
 @@ -26,12 +33,14 @@ ALL_TARGET=	world.opt
  STRIP=
  MAKE_JOBS_UNSAFE=	yes
  
 -CONFIGURE_ARGS=	-verbose -prefix "${PREFIX}" -cc "${CC}" -as "${AS}" \
 -		-aspp "${CC} -c" -partialld "${LD} -r"
 +CONFIGURE_ARGS=	-verbose -prefix "${PREFIX}" \
 +                -cc "${CC} ${CFLAGS}" \
 +                -as "${AS} ${ASFLAGS}" \
 +		-aspp "${CC} -c" \
 +                -partialld "${LD} -r"
  OPTIONS=	X11	"Build with X11 support" on \
  		TK	"Build LablTk library (requires X11 support)" on \
  		THREADS	"Build with Posix threads support" on \
 -		CMP_LIB	"Install compiler's libraries" off \
  		OPT_DEF	"Use system-optimized binaries by default" off
  
  MODOPT=		camlp4o camlp4r ocamlc ocamldep ocamldoc ocamllex ocamlopt
 @@ -39,6 +48,10 @@ PATTERN=	[[:space:]]*(do|then)?[[:space:]]*)(\$$\(CP\)|cp)([[:space:]]
  
  .include <bsd.port.pre.mk>
  
 +.if !defined(NOPORTDOCS)
 +PORTDOCS = htmlman/* ${DOCSDISTNAME}-refman.ps.gz ${DOCSDISTNAME}-refman.pdf
 +.endif
 +
  .if ${ARCH} == powerpc
  ARCH=	power
  .endif
 @@ -84,13 +97,16 @@ CONFIGURE_ARGS+=-no-tk
  .else
  USE_TK=		84+
  INVALID_TK_VER =	86
 +.if defined(WITH_THREADS)
 +USE_TK_THREADS =	yes
 +.endif
  .include "${PORTSDIR}/Mk/bsd.tcl.mk"
  PLIST_SUB+=	TK=""
  CONFLICTS+=	ocaml-nox11-[0-9]* ocaml-notk-[0-9]*
  CONFIGURE_ARGS+=	-tkdefs \
  			"-I${TCL_INCLUDEDIR} -I${TK_INCLUDEDIR} ${THR_CPP}" \
 -			-tklibs "-L${LOCALBASE}/lib -ltk${TK_VER:S|.||} \
 -			-ltcl${TCL_VER:S|.||} ${THR_LD}"
 +			-tklibs "-L${LOCALBASE}/lib -ltk${TK_VER:S|.||}${_TCL_THREADS_SUFFIX} \
 +			-ltcl${TCL_VER:S|.||}${_TCL_THREADS_SUFFIX} ${THR_LD}"
  .endif
  
  .if ${ARCH} == sparc64
 @@ -101,6 +117,14 @@ post-extract:
  .if ${ARCH} == power
  	${MV} ${WRKSRC}/asmrun/power-elf.S ${WRKSRC}/asmrun/power-bsd.S
  .endif
 +.if !defined(NOPORTDOCS)
 +	@if ! (cd ${WRKDIR} && \
 +	  ${TAR} xf ${_DISTDIR}${DOCSDISTNAME}-refman-html.tar.gz \
 +	) \
 +	then \
 +	  exit 1; \
 +	fi;
 +.endif
  
  post-patch:
  	@${REINPLACE_CMD} \
 @@ -155,14 +179,26 @@ post-install:
  		"! -name .cvsignore")
  .endif
  
 -.for PROG in camlp4o.opt camlp4r.opt ocamlc.opt ocamldep.opt ocamldoc.opt \
 -		ocamllex.opt ocamlopt.opt ocamlrun ocamlyacc
 +.if !defined(NOPORTSDOC)
 +	${MKDIR} ${DOCSDIR}
 +	(cd ${WRKDIR} && ${COPYTREE_SHARE} htmlman ${DOCSDIR})
 +	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.ps.gz ${DOCSDIR}
 +	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.pdf ${DOCSDIR}
 +.endif
 +
 +.for PROG in camlp4o.opt camlp4of.opt camlp4oof.opt camlp4orf.opt \
 +	camlp4r.opt camlp4rf.opt ocamlc.opt ocamldep.opt ocamldoc.opt \
 +	ocamllex.opt ocamlopt.opt ocamlrun ocamlyacc
  	@${STRIP_CMD} ${PREFIX}/bin/${PROG}
  .endfor
  
  # Fix permissions for ld.conf
  	@${CHMOD} 644 ${PREFIX}/lib/ocaml/ld.conf
  
 +# Do we want to install documentation
 +.if !defined(NOPORTDOCS)
 +
 +.endif
  # Do we want .opt version of tools to be the default ?
  .if defined(WITH_OPT_DEF)
  . for module in ${MODOPT}
 @@ -176,19 +212,4 @@ post-install:
  . endfor
  .endif
  
 -# Add compiler's libs if required
 -.if defined(WITH_CMP_LIB)
 -	@${MKDIR}  ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/utils/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/utils/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/parsing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/parsing/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/typing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/typing/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${FIND} ${PREFIX}/lib/ocaml/compiler-lib -type f | \
 -		${SED} "s,^${PREFIX}/,," >> ${TMPPLIST}
 -	@${ECHO_CMD} "@dirrm lib/ocaml/compiler-lib" >> ${TMPPLIST}
 -.endif
 -	@${ECHO_CMD} "@unexec rmdir "%D/lib/ocaml" 2>/dev/null || true" >> ${TMPPLIST}
 -
  .include <bsd.port.post.mk>
 diff --git a/ocaml/distinfo b/ocaml/distinfo
 index 49d8d14..1a8fe0e 100644
 --- a/ocaml/distinfo
 +++ b/ocaml/distinfo
 @@ -1,2 +1,8 @@
 -SHA256 (ocaml-3.12.1.tar.bz2) = edcf563da75e0b91f09765649caa98ab1535e0c7498f0737b5591b7de084958d
 -SIZE (ocaml-3.12.1.tar.bz2) = 2949124
 +SHA256 (ocaml-4.00.1.tar.bz2) = 33c3f4acff51685f5bfd7c260f066645e767d4e865877bf1613c176a77799951
 +SIZE (ocaml-4.00.1.tar.bz2) = 2762205
 +SHA256 (ocaml-4.00-refman-html.tar.gz) = 8ca43859d8a71f0941a2453b7b808d7e58ad54804a9cf285875fa30e6576b31a
 +SIZE (ocaml-4.00-refman-html.tar.gz) = 549757
 +SHA256 (ocaml-4.00-refman.ps.gz) = 6146264fef7ae73f7ebb8dc49a3b1adae9d5bd4f9a14a2670c9d43f7e6a253c3
 +SIZE (ocaml-4.00-refman.ps.gz) = 1075658
 +SHA256 (ocaml-4.00-refman.pdf) = 76ba2cf60a605b2427f995563f6dc6c7dbb39be6b066f6d96b23926e8cc9babc
 +SIZE (ocaml-4.00-refman.pdf) = 1453678
 diff --git a/ocaml/files/edit_pkg-plist.sed b/ocaml/files/edit_pkg-plist.sed
 new file mode 100644
 index 0000000..6262030
 --- /dev/null
 +++ b/ocaml/files/edit_pkg-plist.sed
 @@ -0,0 +1,6 @@
 +/.p.cmx$/s@^@%%PROF%%@
 +/examples_labeltk/{
 +  s@share/examples@%%EXAMPLESDIR%%@
 +  s@^@%%TK%%@
 +}
 +/graphics/s@^@%%X11%%@
 diff --git a/ocaml/files/manfiles b/ocaml/files/manfiles
 index c19f86f..b2c26bb 100644
 --- a/ocaml/files/manfiles
 +++ b/ocaml/files/manfiles
 @@ -8,91 +8,94 @@ MAN1=	ocaml.1 \
  	ocamllex.1 \
  	ocamlmktop.1 \
  	ocamlopt.1 \
 +	ocamloptp.1 \
  	ocamlprof.1 \
  	ocamlrun.1 \
  	ocamlyacc.1
  
 -MANN=	Arg.n \
 -	Array.n \
 -	ArrayLabels.n \
 -	Bigarray.Array1.n \
 -	Bigarray.Array2.n \
 -	Bigarray.Array3.n \
 -	Bigarray.Genarray.n \
 -	Bigarray.n \
 -	Buffer.n \
 -	Callback.n \
 -	CamlinternalOO.n \
 -	CamlinternalLazy.n \
 -	CamlinternalMod.n \
 -	Char.n \
 -	Complex.n \
 -	Digest.n \
 -	Filename.n \
 -	Format.n \
 -	Gc.n \
 -	Genlex.n \
 -	Hashtbl.HashedType.n \
 -	Hashtbl.Make.n \
 -	Hashtbl.S.n \
 -	Hashtbl.n \
 -	Int32.n \
 -	Int64.n \
 -	Lazy.n \
 -	Lexing.n \
 -	List.n \
 -	ListLabels.n \
 -	Map.Make.n \
 -	Map.OrderedType.n \
 -	Map.S.n \
 -	Map.n \
 -	Marshal.n \
 -	MoreLabels.Hashtbl.HashedType.n \
 -	MoreLabels.Hashtbl.Make.n \
 -	MoreLabels.Hashtbl.S.n \
 -	MoreLabels.Hashtbl.n \
 -	MoreLabels.Map.Make.n \
 -	MoreLabels.Map.OrderedType.n \
 -	MoreLabels.Map.S.n \
 -	MoreLabels.Map.n \
 -	MoreLabels.Set.Make.n \
 -	MoreLabels.Set.OrderedType.n \
 -	MoreLabels.Set.S.n \
 -	MoreLabels.Set.n \
 -	MoreLabels.n \
 -	Nativeint.n \
 -	Num.n \
 -	Obj.n \
 -	Oo.n \
 -	Parsing.n \
 -	Pervasives.LargeFile.n \
 -	Pervasives.n \
 -	Printexc.n \
 -	Printf.n \
 -	Queue.n \
 -	Random.n \
 -	Random.State.n \
 -	Scanf.Scanning.n \
 -	Scanf.n \
 -	Set.Make.n \
 -	Set.OrderedType.n \
 -	Set.S.n \
 -	Set.n \
 -	Sort.n \
 -	Stack.n \
 -	StdLabels.Array.n \
 -	StdLabels.List.n \
 -	StdLabels.String.n \
 -	StdLabels.n \
 -	Str.n \
 -	Stream.n \
 -	String.n \
 -	StringLabels.n \
 -	Sys.n \
 -	Unix.LargeFile.n \
 -	Unix.n \
 -	Weak.Make.n \
 -	Weak.S.n \
 -	Weak.n
 +MANN=	Arg.3o \
 +	Array.3o \
 +	ArrayLabels.3o \
 +	Bigarray.3o \
 +	Bigarray.Array1.3o \
 +	Bigarray.Array2.3o \
 +	Bigarray.Array3.3o \
 +	Bigarray.Genarray.3o \
 +	Buffer.3o \
 +	Callback.3o \
 +	CamlinternalLazy.3o \
 +	CamlinternalMod.3o \
 +	CamlinternalOO.3o \
 +	Complex.3o \
 +	Digest.3o \
 +	Filename.3o \
 +	Format.3o \
 +	Gc.3o \
 +	Genlex.3o \
 +	Hashtbl.3o \
 +	Hashtbl.HashedType.3o \
 +	Hashtbl.Make.3o \
 +	Hashtbl.MakeSeeded.3o \
 +	Hashtbl.S.3o \
 +	Hashtbl.SeededHashedType.3o \
 +	Hashtbl.SeededS.3o \
 +	Int32.3o \
 +	Int64.3o \
 +	Lexing.3o \
 +	List.3o \
 +	ListLabels.3o \
 +	Map.3o \
 +	Map.Make.3o \
 +	Map.OrderedType.3o \
 +	Map.S.3o \
 +	Marshal.3o \
 +	MoreLabels.3o \
 +	MoreLabels.Hashtbl.3o \
 +	MoreLabels.Hashtbl.HashedType.3o \
 +	MoreLabels.Hashtbl.Make.3o \
 +	MoreLabels.Hashtbl.MakeSeeded.3o \
 +	MoreLabels.Hashtbl.S.3o \
 +	MoreLabels.Hashtbl.SeededHashedType.3o \
 +	MoreLabels.Hashtbl.SeededS.3o \
 +	MoreLabels.Map.3o \
 +	MoreLabels.Map.Make.3o \
 +	MoreLabels.Map.OrderedType.3o \
 +	MoreLabels.Map.S.3o \
 +	MoreLabels.Set.3o \
 +	MoreLabels.Set.Make.3o \
 +	MoreLabels.Set.OrderedType.3o \
 +	MoreLabels.Set.S.3o \
 +	Nativeint.3o \
 +	Num.3o \
 +	Obj.3o \
 +	Oo.3o \
 +	Parsing.3o \
 +	Pervasives.3o \
 +	Pervasives.LargeFile.3o \
 +	Printexc.3o \
 +	Printf.3o \
 +	Queue.3o \
 +	Random.3o \
 +	Random.State.3o \
 +	Scanf.3o \
 +	Scanf.Scanning.3o \
 +	Set.Make.3o \
 +	Set.OrderedType.3o \
 +	Set.S.3o \
 +	Sort.3o \
 +	Stack.3o \
 +	StdLabels.3o \
 +	StdLabels.Array.3o \
 +	StdLabels.List.3o \
 +	StdLabels.String.3o \
 +	Str.3o \
 +	Stream.3o \
 +	StringLabels.3o \
 +	Sys.3o \
 +	Unix.3o \
 +	Unix.LargeFile.3o \
 +	Weak.3o \
 +	Weak.Make.3o \
 +	Weak.S.3o
  
  MLINKS=	ocamlc.1 ocamlc.opt.1 ocamlopt.1 ocamlopt.opt.1
 diff --git a/ocaml/files/patch-Makefile b/ocaml/files/patch-Makefile
 deleted file mode 100644
 index 1da3b2f..0000000
 --- a/ocaml/files/patch-Makefile
 +++ /dev/null
 @@ -1,11 +0,0 @@
 ---- Makefile.orig	2010-06-16 03:32:26.000000000 +0200
 -+++ Makefile	2011-12-14 10:02:05.745076468 +0100
 -@@ -288,7 +288,7 @@
 - 	cp lex/ocamllex $(BINDIR)/ocamllex$(EXE)
 - 	cp yacc/ocamlyacc$(EXE) $(BINDIR)/ocamlyacc$(EXE)
 - 	cp toplevel/toplevellib.cma $(LIBDIR)/toplevellib.cma
 --	cp expunge $(LIBDIR)/expunge$(EXE)
 -+	${BSD_INSTALL_SCRIPT} expunge $(LIBDIR)/expunge$(EXE)
 - 	cp typing/outcometree.cmi typing/outcometree.mli $(LIBDIR)
 - 	cp toplevel/topstart.cmo $(LIBDIR)
 - 	cp toplevel/toploop.cmi toplevel/topdirs.cmi toplevel/topmain.cmi \
 diff --git a/ocaml/files/patch-config-auto-aux-async_io.c b/ocaml/files/patch-config-auto-aux-async_io.c
 new file mode 100644
 index 0000000..3a0fcdd
 --- /dev/null
 +++ b/ocaml/files/patch-config-auto-aux-async_io.c
 @@ -0,0 +1,10 @@
 +--- config/auto-aux/async_io.c	2012-11-01 17:36:02.000000000 +0100
 ++++ config/auto-aux/async_io.c.orig	2012-11-01 17:35:46.000000000 +0100
 +@@ -13,7 +13,8 @@
 + 
 + /* $Id: async_io.c 11156 2011-07-27 14:17:02Z doligez $ */
 + 
 ++#include <stdlib.h>
 + #include <stdio.h>
 + #include <fcntl.h>
 + #include <signal.h>
 diff --git a/ocaml/files/patch-configure b/ocaml/files/patch-configure
 index 43689ad..e13acae 100644
 --- a/ocaml/files/patch-configure
 +++ b/ocaml/files/patch-configure
 @@ -1,17 +1,15 @@
 -$FreeBSD: files/patch-configure 300896 2012-07-14 13:54:48Z beat $
 -
 ---- configure.orig	2011-07-04 22:15:01.000000000 +0100
 -+++ configure	2012-01-15 20:29:30.319674803 +0000
 -@@ -85,6 +85,8 @@
 +--- configure.orig	2012-11-01 17:14:55.000000000 +0100
 ++++ configure	2012-11-01 17:23:44.000000000 +0100
 +@@ -88,6 +88,8 @@
           withcurses=no;;
 -     -no-shared-libs)
 +     -no-shared-libs|--no-shared-libs)
           withsharedlibs=no;;
  +    -no-x11|--no-x11)
  +        x11_wanted=no;;
       -x11include*|--x11include*)
           x11_include_dir=$2; shift;;
       -x11lib*|--x11lib*)
 -@@ -521,7 +523,7 @@
 +@@ -537,7 +539,7 @@
         mksharedlib="$flexlink"
         mkmaindll="$flexlink -maindll"
         shared_libraries_supported=true;;
 @@ -20,181 +18,19 @@ $FreeBSD: files/patch-configure 300896 2012-07-14 13:54:48Z beat $
         sharedcccompopts="-fPIC"
         mksharedlib="$bytecc -shared"
         bytecclinkopts="$bytecclinkopts -Wl,-E"
 -@@ -636,6 +638,7 @@
 -     i[345]86-*-netbsd*)           natdynlink=true;;
 -     x86_64-*-netbsd*)             natdynlink=true;;
 -     i386-*-gnu0.3)                natdynlink=true;;
 -+    *-*-freebsd*)                 natdynlink=true;;
 -   esac
 - fi
 - 
 -@@ -687,6 +690,7 @@
 -   hppa*-*-gnu*)                 arch=hppa; system=gnu;;
 +@@ -687,6 +689,7 @@
 +                                 fi;;
 +   i[3456]86-*-gnu*)             arch=i386; system=gnu;;
     powerpc*-*-linux*)            arch=power; model=ppc; system=elf;;
 ++  powerpc-*-freebsd*)           arch=power; model=ppc; system=elf;;
     powerpc-*-netbsd*)            arch=power; model=ppc; system=elf;;
 -+  powerpc-*-freebsd*)           arch=power; model=ppc; system=bsd;;
     powerpc-*-rhapsody*)          arch=power; model=ppc; system=rhapsody;;
     powerpc-*-darwin*)            arch=power; system=rhapsody
 -                                 if $arch64; then model=ppc64; else model=ppc; fi;;
 -@@ -796,6 +800,7 @@
 -   i386,*,bsd_elf) profiling='prof';;
 -   amd64,*,macosx) profiling='prof';;
 -   i386,*,macosx) profiling='prof';;
 +@@ -786,6 +789,7 @@
 +   amd64,*,linux) profiling='prof';;
 +   amd64,*,gnu) profiling='prof';;
 +   arm,*,linux*) profiling='prof';;
  +  *,*,freebsd) profiling='prof';;
 -   sparc,*,solaris)
 -     profiling='prof'
 -     case "$nativecc" in gcc*) ;; *) cc_profile='-xpg';; esac;;
 -@@ -1256,133 +1261,24 @@
 - x11_include="not found"
 - x11_link="not found"
 - 
 --for dir in \
 --    $x11_include_dir          \
 --                              \
 --    /usr/X11R7/include        \
 --    /usr/include/X11R7        \
 --    /usr/local/X11R7/include  \
 --    /usr/local/include/X11R7  \
 --    /opt/X11R7/include        \
 --                              \
 --    /usr/X11R6/include        \
 --    /usr/include/X11R6        \
 --    /usr/local/X11R6/include  \
 --    /usr/local/include/X11R6  \
 --    /opt/X11R6/include        \
 --                              \
 --    /usr/X11/include          \
 --    /usr/include/X11          \
 --    /usr/local/X11/include    \
 --    /usr/local/include/X11    \
 --    /opt/X11/include          \
 --                              \
 --    /usr/X11R5/include        \
 --    /usr/include/X11R5        \
 --    /usr/local/X11R5/include  \
 --    /usr/local/include/X11R5  \
 --    /usr/local/x11r5/include  \
 --    /opt/X11R5/include        \
 --                              \
 --    /usr/X11R4/include        \
 --    /usr/include/X11R4        \
 --    /usr/local/X11R4/include  \
 --    /usr/local/include/X11R4  \
 --                              \
 --    /usr/X386/include         \
 --    /usr/x386/include         \
 --    /usr/XFree86/include/X11  \
 --                              \
 --    /usr/include              \
 --    /usr/local/include        \
 --    /usr/unsupported/include  \
 --    /usr/athena/include       \
 --    /usr/lpp/Xamples/include  \
 --                              \
 --    /usr/openwin/include      \
 --    /usr/openwin/share/include \
 --    ; \
 --do
 --  if test -f $dir/X11/X.h; then
 --    x11_include=$dir
 --    break
 --  fi
 --done
 --
 --if test "$x11_include" = "not found"; then
 --  x11_try_lib_dir=''
 --else
 --  x11_try_lib_dir=`echo $x11_include | sed -e 's|include|lib|'`
 -+if [ -n "$x11_include_dir" ]; then
 -+  x11_include="$x11_include_dir"
 - fi
 - 
 --for dir in \
 --    $x11_lib_dir          \
 --    $x11_try_lib_dir      \
 --                          \
 --    /usr/X11R6/lib64      \
 --    /usr/X11R6/lib        \
 --    /usr/lib/X11R6        \
 --    /usr/local/X11R6/lib  \
 --    /usr/local/lib/X11R6  \
 --    /opt/X11R6/lib        \
 --                          \
 --    /usr/X11/lib          \
 --    /usr/lib/X11          \
 --    /usr/local/X11/lib    \
 --    /usr/local/lib/X11    \
 --    /opt/X11/lib          \
 --                          \
 --    /usr/X11R5/lib        \
 --    /usr/lib/X11R5        \
 --    /usr/local/X11R5/lib  \
 --    /usr/local/lib/X11R5  \
 --    /usr/local/x11r5/lib  \
 --    /opt/X11R5/lib        \
 --                          \
 --    /usr/X11R4/lib        \
 --    /usr/lib/X11R4        \
 --    /usr/local/X11R4/lib  \
 --    /usr/local/lib/X11R4  \
 --                          \
 --    /usr/X386/lib         \
 --    /usr/x386/lib         \
 --    /usr/XFree86/lib/X11  \
 --                          \
 --    /usr/lib64            \
 --    /usr/lib              \
 --    /usr/local/lib        \
 --    /usr/unsupported/lib  \
 --    /usr/athena/lib       \
 --    /usr/lpp/Xamples/lib  \
 --    /lib/usr/lib/X11      \
 --                          \
 --    /usr/openwin/lib      \
 --    /usr/openwin/share/lib \
 --    ; \
 --do
 --  if test -f $dir/libX11.a || \
 --     test -f $dir/libX11.so || \
 --     test -f $dir/libX11.dll.a || \
 --     test -f $dir/libX11.dylib || \
 --     test -f $dir/libX11.sa; then
 --    if test $dir = /usr/lib; then
 --      x11_link="-lX11"
 --    else
 --      x11_libs="-L$dir"
 --      case "$host" in
 --        *-*-*bsd*) x11_link="-R$dir -L$dir -lX11";;
 --        *) x11_link="-L$dir -lX11";;
 --      esac
 --    fi
 --    break
 --  fi
 --done
 --
 -+if [ -n "$x11_lib_dir" ]; then
 -+  x11_link="-L$x11_lib_dir -lX11"
 -+  x11_libs="-L$x11_lib_dir"
 -+fi
 +   *) profiling='noprof';;
 + esac
   
 - if test "$x11_include" = "not found" || test "$x11_link" = "not found"
 - then
 -   echo "X11 not found, the \"graph\" library will not be supported."
 -   x11_include=""
 -+elif test "$x11_wanted" = "no"
 -+then
 -+  echo "X11 support was disabled, the \"graph\" library will not be supported."
 -+  x11_include=""
 -+  x11_link=""
 - else
 -   echo "Location of X11 include files: $x11_include/X11"
 -   echo "Options for linking with X11: $x11_link"
 -@@ -1509,7 +1405,7 @@
 -   then tk_libs="$tk_libs $dllib"
 -   elif sh ./hasgot $tk_libs -ltcl$tclmaj.$tclmin $tkauxlibs Tcl_DoOneEvent
 -   then
 --    tk_libs="$tk_libs -ltk$tkmaj.$tkmin -ltcl$tclmaj.$tclmin $dllib"
 -+    tk_libs="$tk_libs -ltk$tkmaj$tkmin -ltcl$tclmaj.$tclmin $dllib"
 -   elif sh ./hasgot $tk_libs -ltcl$tclmaj$tclmin $tkauxlibs Tcl_DoOneEvent
 -   then
 -     tk_libs="$tk_libs -ltk$tkmaj$tkmin -ltcl$tclmaj$tclmin $dllib"
 diff --git a/ocaml/files/patch-ocamldoc_Makefile b/ocaml/files/patch-ocamldoc_Makefile
 index bede473..17ad2f3 100644
 --- a/ocaml/files/patch-ocamldoc_Makefile
 +++ b/ocaml/files/patch-ocamldoc_Makefile
 @@ -9,16 +9,3 @@
   
   INSTALL_MLIS=odoc_info.mli
   INSTALL_CMIS=$(INSTALL_MLIS:.mli=.cmi)
 -@@ -265,7 +265,11 @@
 - 	$(CP) ocamldoc.hva *.cmi $(OCAMLDOC_LIBCMA) $(INSTALL_LIBDIR)
 - 	$(CP) $(INSTALL_MLIS) $(INSTALL_CMIS) $(INSTALL_LIBDIR)
 - 	if test -d $(INSTALL_MANODIR); then : ; else $(MKDIR) $(INSTALL_MANODIR); fi
 --	if test -d stdlib_man; then $(CP) stdlib_man/* $(INSTALL_MANODIR); else : ; fi
 -+	if test -d stdlib_man; then \
 -+		for f in stdlib_man/*; do \
 -+			$(BSD_INSTALL_MAN) $$f $(INSTALL_MANODIR)/`basename $$f .3o`.n; \
 -+		done; \
 -+	fi
 - 
 - installopt:
 - 	if test -f $(OCAMLDOC_OPT) ; then $(MAKE) installopt_really ; fi
 diff --git a/ocaml/files/patch-testsuite-backtrace-Makefile b/ocaml/files/patch-testsuite-backtrace-Makefile
 new file mode 100644
 index 0000000..7b887dc
 --- /dev/null
 +++ b/ocaml/files/patch-testsuite-backtrace-Makefile
 @@ -0,0 +1,11 @@
 +--- testsuite/tests/backtrace/Makefile.orig	2012-11-01 20:28:23.000000000 +0100
 ++++ testsuite/tests/backtrace/Makefile	2012-11-01 20:28:30.000000000 +0100
 +@@ -6,7 +6,7 @@
 + 	  $(OCAMLC) -g -o $(EXECNAME) $$file; \
 + 	  for arg in a b c d ''; do \
 + 	    printf " ... testing '$$file' (with argument '$$arg'):"; \
 +-	    OCAMLRUNPARAM=b=1 $(EXECNAME) $$arg > `basename $$file ml`$$arg.result 2>&1; \
 ++	    sh -c "OCAMLRUNPARAM=b=1 $(EXECNAME) $$arg; true" > `basename $$file ml`$$arg.result 2>&1; \
 + 	    $(DIFF) `basename $$file ml`$$arg.reference `basename $$file ml`$$arg.result > /dev/null && echo " => passed" || (echo " => failed" && exit 1); \
 + 	  done; \
 + 	done
 diff --git a/ocaml/pkg-plist b/ocaml/pkg-plist
 index 18567ab..4d479b8 100644
 --- a/ocaml/pkg-plist
 +++ b/ocaml/pkg-plist
 @@ -1,4 +1,3 @@
 -bin/ocamlobjinfo
  bin/camlp4
  bin/camlp4boot
  bin/camlp4o
 @@ -33,12 +32,15 @@ bin/ocamllex
  bin/ocamllex.opt
  bin/ocamlmklib
  bin/ocamlmktop
 +bin/ocamlobjinfo
  bin/ocamlopt
  bin/ocamlopt.opt
 +bin/ocamloptp
  bin/ocamlprof
  bin/ocamlrun
  bin/ocamlyacc
  lib/ocaml/Makefile.config
 +lib/ocaml/VERSION
  lib/ocaml/arg.cmi
  lib/ocaml/arg.cmx
  lib/ocaml/arg.ml
 @@ -85,6 +87,7 @@ lib/ocaml/caml/compatibility.h
  lib/ocaml/caml/config.h
  lib/ocaml/caml/custom.h
  lib/ocaml/caml/fail.h
 +lib/ocaml/caml/hash.h
  lib/ocaml/caml/intext.h
  lib/ocaml/caml/memory.h
  lib/ocaml/caml/misc.h
 @@ -261,29 +264,158 @@ lib/ocaml/char.cmx
  lib/ocaml/char.ml
  lib/ocaml/char.mli
  %%PROF%%lib/ocaml/char.p.cmx
 +lib/ocaml/compiler-libs/annot.cmi
 +lib/ocaml/compiler-libs/arch.cmi
 +lib/ocaml/compiler-libs/asmgen.cmi
 +lib/ocaml/compiler-libs/asmlibrarian.cmi
 +lib/ocaml/compiler-libs/asmlink.cmi
 +lib/ocaml/compiler-libs/asmpackager.cmi
 +lib/ocaml/compiler-libs/asttypes.cmi
 +lib/ocaml/compiler-libs/btype.cmi
 +lib/ocaml/compiler-libs/bytegen.cmi
 +lib/ocaml/compiler-libs/bytelibrarian.cmi
 +lib/ocaml/compiler-libs/bytelink.cmi
 +lib/ocaml/compiler-libs/bytepackager.cmi
 +lib/ocaml/compiler-libs/bytesections.cmi
 +lib/ocaml/compiler-libs/ccomp.cmi
 +lib/ocaml/compiler-libs/clambda.cmi
 +lib/ocaml/compiler-libs/clflags.cmi
 +lib/ocaml/compiler-libs/closure.cmi
 +lib/ocaml/compiler-libs/cmi_format.cmi
 +lib/ocaml/compiler-libs/cmm.cmi
 +lib/ocaml/compiler-libs/cmmgen.cmi
 +lib/ocaml/compiler-libs/cmo_format.cmi
 +lib/ocaml/compiler-libs/cmt_format.cmi
 +lib/ocaml/compiler-libs/cmx_format.cmi
 +lib/ocaml/compiler-libs/coloring.cmi
 +lib/ocaml/compiler-libs/comballoc.cmi
 +lib/ocaml/compiler-libs/compile.cmi
 +lib/ocaml/compiler-libs/compilenv.cmi
 +lib/ocaml/compiler-libs/config.cmi
 +lib/ocaml/compiler-libs/consistbl.cmi
 +lib/ocaml/compiler-libs/ctype.cmi
 +lib/ocaml/compiler-libs/datarepr.cmi
 +lib/ocaml/compiler-libs/debuginfo.cmi
 +lib/ocaml/compiler-libs/dll.cmi
 +lib/ocaml/compiler-libs/emit.cmi
 +lib/ocaml/compiler-libs/emitaux.cmi
 +lib/ocaml/compiler-libs/emitcode.cmi
 +lib/ocaml/compiler-libs/env.cmi
 +lib/ocaml/compiler-libs/errors.cmi
 +lib/ocaml/compiler-libs/expunge.cmi
 +lib/ocaml/compiler-libs/genprintval.cmi
 +lib/ocaml/compiler-libs/ident.cmi
 +lib/ocaml/compiler-libs/includeclass.cmi
 +lib/ocaml/compiler-libs/includecore.cmi
 +lib/ocaml/compiler-libs/includemod.cmi
 +lib/ocaml/compiler-libs/instruct.cmi
 +lib/ocaml/compiler-libs/interf.cmi
 +lib/ocaml/compiler-libs/lambda.cmi
 +lib/ocaml/compiler-libs/lexer.cmi
 +lib/ocaml/compiler-libs/linearize.cmi
 +lib/ocaml/compiler-libs/liveness.cmi
 +lib/ocaml/compiler-libs/location.cmi
 +lib/ocaml/compiler-libs/longident.cmi
 +lib/ocaml/compiler-libs/mach.cmi
 +lib/ocaml/compiler-libs/main.cmi
 +lib/ocaml/compiler-libs/main.cmo
 +lib/ocaml/compiler-libs/main.cmx
 +lib/ocaml/compiler-libs/main.o
 +lib/ocaml/compiler-libs/main_args.cmi
 +lib/ocaml/compiler-libs/matching.cmi
 +lib/ocaml/compiler-libs/meta.cmi
 +lib/ocaml/compiler-libs/misc.cmi
 +lib/ocaml/compiler-libs/mtype.cmi
 +lib/ocaml/compiler-libs/ocamlbytecomp.a
 +lib/ocaml/compiler-libs/ocamlbytecomp.cma
 +lib/ocaml/compiler-libs/ocamlbytecomp.cmxa
 +lib/ocaml/compiler-libs/ocamlcommon.a
 +lib/ocaml/compiler-libs/ocamlcommon.cma
 +lib/ocaml/compiler-libs/ocamlcommon.cmxa
 +lib/ocaml/compiler-libs/ocamloptcomp.a
 +lib/ocaml/compiler-libs/ocamloptcomp.cma
 +lib/ocaml/compiler-libs/ocamloptcomp.cmxa
 +lib/ocaml/compiler-libs/ocamltoplevel.cma
 +lib/ocaml/compiler-libs/opcodes.cmi
 +lib/ocaml/compiler-libs/oprint.cmi
 +lib/ocaml/compiler-libs/optcompile.cmi
 +lib/ocaml/compiler-libs/opterrors.cmi
 +lib/ocaml/compiler-libs/optmain.cmi
 +lib/ocaml/compiler-libs/optmain.cmo
 +lib/ocaml/compiler-libs/optmain.cmx
 +lib/ocaml/compiler-libs/optmain.o
 +lib/ocaml/compiler-libs/outcometree.cmi
 +lib/ocaml/compiler-libs/parmatch.cmi
 +lib/ocaml/compiler-libs/parse.cmi
 +lib/ocaml/compiler-libs/parser.cmi
 +lib/ocaml/compiler-libs/parsetree.cmi
 +lib/ocaml/compiler-libs/path.cmi
 +lib/ocaml/compiler-libs/pparse.cmi
 +lib/ocaml/compiler-libs/predef.cmi
 +lib/ocaml/compiler-libs/primitive.cmi
 +lib/ocaml/compiler-libs/printast.cmi
 +lib/ocaml/compiler-libs/printclambda.cmi
 +lib/ocaml/compiler-libs/printcmm.cmi
 +lib/ocaml/compiler-libs/printinstr.cmi
 +lib/ocaml/compiler-libs/printlambda.cmi
 +lib/ocaml/compiler-libs/printlinear.cmi
 +lib/ocaml/compiler-libs/printmach.cmi
 +lib/ocaml/compiler-libs/printtyp.cmi
 +lib/ocaml/compiler-libs/printtyped.cmi
 +lib/ocaml/compiler-libs/proc.cmi
 +lib/ocaml/compiler-libs/reg.cmi
 +lib/ocaml/compiler-libs/reload.cmi
 +lib/ocaml/compiler-libs/reloadgen.cmi
 +lib/ocaml/compiler-libs/runtimedef.cmi
 +lib/ocaml/compiler-libs/schedgen.cmi
 +lib/ocaml/compiler-libs/scheduling.cmi
 +lib/ocaml/compiler-libs/selectgen.cmi
 +lib/ocaml/compiler-libs/selection.cmi
 +lib/ocaml/compiler-libs/simplif.cmi
 +lib/ocaml/compiler-libs/spill.cmi
 +lib/ocaml/compiler-libs/split.cmi
 +lib/ocaml/compiler-libs/stypes.cmi
 +lib/ocaml/compiler-libs/subst.cmi
 +lib/ocaml/compiler-libs/switch.cmi
 +lib/ocaml/compiler-libs/symtable.cmi
 +lib/ocaml/compiler-libs/syntaxerr.cmi
 +lib/ocaml/compiler-libs/tbl.cmi
 +lib/ocaml/compiler-libs/terminfo.cmi
 +lib/ocaml/compiler-libs/topdirs.cmi
 +lib/ocaml/compiler-libs/toploop.cmi
 +lib/ocaml/compiler-libs/topmain.cmi
 +lib/ocaml/compiler-libs/topstart.cmi
 +lib/ocaml/compiler-libs/topstart.cmo
 +lib/ocaml/compiler-libs/trace.cmi
 +lib/ocaml/compiler-libs/translclass.cmi
 +lib/ocaml/compiler-libs/translcore.cmi
 +lib/ocaml/compiler-libs/translmod.cmi
 +lib/ocaml/compiler-libs/translobj.cmi
 +lib/ocaml/compiler-libs/typeclass.cmi
 +lib/ocaml/compiler-libs/typecore.cmi
 +lib/ocaml/compiler-libs/typedecl.cmi
 +lib/ocaml/compiler-libs/typedtree.cmi
 +lib/ocaml/compiler-libs/typemod.cmi
 +lib/ocaml/compiler-libs/typeopt.cmi
 +lib/ocaml/compiler-libs/types.cmi
 +lib/ocaml/compiler-libs/typetexp.cmi
 +lib/ocaml/compiler-libs/warnings.cmi
  lib/ocaml/complex.cmi
  lib/ocaml/complex.cmx
  lib/ocaml/complex.ml
  lib/ocaml/complex.mli
  %%PROF%%lib/ocaml/complex.p.cmx
  %%THREADS%%lib/ocaml/condition.mli
 -lib/ocaml/dbm.a
 -lib/ocaml/dbm.cma
 -lib/ocaml/dbm.cmi
 -lib/ocaml/dbm.cmx
 -lib/ocaml/dbm.cmxa
 -lib/ocaml/dbm.cmxs
 -lib/ocaml/dbm.mli
  lib/ocaml/digest.cmi
  lib/ocaml/digest.cmx
  lib/ocaml/digest.ml
  lib/ocaml/digest.mli
  %%PROF%%lib/ocaml/digest.p.cmx
  lib/ocaml/dynlink.a
 -lib/ocaml/dynlink.cmx
 -lib/ocaml/dynlink.cmxa
  lib/ocaml/dynlink.cma
  lib/ocaml/dynlink.cmi
 +lib/ocaml/dynlink.cmx
 +lib/ocaml/dynlink.cmxa
  lib/ocaml/dynlink.mli
  %%THREADS%%lib/ocaml/event.mli
  lib/ocaml/expunge
 @@ -671,7 +803,6 @@ lib/ocaml/libcamlrun.a
  lib/ocaml/libcamlrun_shared.so
  lib/ocaml/libcamlstr.a
  %%X11%%lib/ocaml/libgraphics.a
 -lib/ocaml/libmldbm.a
  lib/ocaml/libnums.a
  %%THREADS%%lib/ocaml/libthreads.a
  %%THREADS%%lib/ocaml/libthreadsnat.a
 @@ -721,8 +852,8 @@ lib/ocaml/obj.cmi
  lib/ocaml/obj.cmx
  lib/ocaml/obj.ml
  lib/ocaml/obj.mli
 -lib/ocaml/objinfo_helper
  %%PROF%%lib/ocaml/obj.p.cmx
 +lib/ocaml/objinfo_helper
  lib/ocaml/ocamlbuild/ocamlbuild.cmo
  lib/ocaml/ocamlbuild/ocamlbuild.cmx
  lib/ocaml/ocamlbuild/ocamlbuild.o
 @@ -756,6 +887,7 @@ lib/ocaml/ocamldoc/odoc_dep.cmi
  lib/ocaml/ocamldoc/odoc_dot.cmi
  lib/ocaml/ocamldoc/odoc_env.cmi
  lib/ocaml/ocamldoc/odoc_exception.cmi
 +lib/ocaml/ocamldoc/odoc_gen.cmi
  lib/ocaml/ocamldoc/odoc_global.cmi
  lib/ocaml/ocamldoc/odoc_html.cmi
  lib/ocaml/ocamldoc/odoc_info.a
 @@ -796,8 +928,6 @@ lib/ocaml/oo.cmx
  lib/ocaml/oo.ml
  lib/ocaml/oo.mli
  %%PROF%%lib/ocaml/oo.p.cmx
 -lib/ocaml/outcometree.cmi
 -lib/ocaml/outcometree.mli
  lib/ocaml/parsing.cmi
  lib/ocaml/parsing.cmx
  lib/ocaml/parsing.ml
 @@ -820,6 +950,8 @@ lib/ocaml/printf.mli
  %%PROF%%lib/ocaml/printf.p.cmx
  lib/ocaml/profiling.cmi
  lib/ocaml/profiling.cmo
 +lib/ocaml/profiling.cmx
 +lib/ocaml/profiling.o
  lib/ocaml/queue.cmi
  lib/ocaml/queue.cmx
  lib/ocaml/queue.ml
 @@ -863,7 +995,7 @@ lib/ocaml/std_exit.cmo
  lib/ocaml/std_exit.cmx
  lib/ocaml/std_exit.ml
  lib/ocaml/std_exit.o
 -lib/ocaml/std_exit.p.cmx
 +%%PROF%%lib/ocaml/std_exit.p.cmx
  lib/ocaml/std_exit.p.o
  lib/ocaml/stdlib.a
  lib/ocaml/stdlib.cma
 @@ -893,10 +1025,9 @@ lib/ocaml/stringLabels.ml
  lib/ocaml/stringLabels.mli
  %%PROF%%lib/ocaml/stringLabels.p.cmx
  lib/ocaml/stublibs/dllbigarray.so
 +lib/ocaml/stublibs/dllcamlstr.so
  %%X11%%lib/ocaml/stublibs/dllgraphics.so
  %%TK%%lib/ocaml/stublibs/dlllabltk.so
 -lib/ocaml/stublibs/dllcamlstr.so
 -lib/ocaml/stublibs/dllmldbm.so
  lib/ocaml/stublibs/dllnums.so
  %%THREADS%%lib/ocaml/stublibs/dllthreads.so
  lib/ocaml/stublibs/dllunix.so
 @@ -922,10 +1053,6 @@ lib/ocaml/sys.mli
  %%THREADS%%lib/ocaml/threads/threads.cma
  %%THREADS%%lib/ocaml/threads/threads.cmxa
  lib/ocaml/topdirs.cmi
 -lib/ocaml/toplevellib.cma
 -lib/ocaml/toploop.cmi
 -lib/ocaml/topmain.cmi
 -lib/ocaml/topstart.cmo
  lib/ocaml/unix.a
  lib/ocaml/unix.cma
  lib/ocaml/unix.cmi
 @@ -955,6 +1082,7 @@ lib/ocaml/weak.cmx
  lib/ocaml/weak.ml
  lib/ocaml/weak.mli
  %%PROF%%lib/ocaml/weak.p.cmx
 +%%TK%%%%EXAMPLESDIR%%/examples_camltk/.ignore
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/Makefile
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/Makefile.nt
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/addition.ml
 @@ -972,6 +1100,7 @@ lib/ocaml/weak.mli
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/tetris.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/text.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/winskel.ml
 +%%TK%%%%EXAMPLESDIR%%/examples_labltk/.ignore
  %%TK%%%%EXAMPLESDIR%%/examples_labltk/Lambda2.back.gif
  %%TK%%%%EXAMPLESDIR%%/examples_labltk/Makefile
  %%TK%%%%EXAMPLESDIR%%/examples_labltk/Makefile.nt
 @@ -996,10 +1125,11 @@ lib/ocaml/weak.mli
  @dirrm lib/ocaml/ocamldoc
  @dirrm lib/ocaml/ocamlbuild
  %%TK%%@dirrmtry lib/ocaml/labltk
 +@dirrm lib/ocaml/compiler-libs
  @dirrm lib/ocaml/camlp4/Camlp4Top
  @dirrm lib/ocaml/camlp4/Camlp4Printers
  @dirrm lib/ocaml/camlp4/Camlp4Parsers
  @dirrm lib/ocaml/camlp4/Camlp4Filters
  @dirrm lib/ocaml/camlp4
  @dirrm lib/ocaml/caml
 -@comment lib/ocaml will be added by Makefile
 +@dirrm lib/ocaml
 
 --------------050900070604090908010804--

From: Stanislav Sedov <stas@FreeBSD.org>
To: Michael Gruenewald <michael.grunewald@laposte.net>
Cc: FreeBSD PR followup <bug-followup@FreeBSD.org>
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Mon, 15 Apr 2013 13:32:41 -0700

 Hi!
 
 There're appears to be some style bugs in the last patch
 you submitted.  In particular, you used spaces to indent
 instead of tabs in numerous places, which can be spotted
 in the diff itself.  Can you, please, run the changes through
 the portlint and fix those issues?
 
 Thanks!
 
 -- 
 Stanislav Sedov
 ST4096-RIPE
 
 ()  ascii ribbon campaign - against html e-mail 
 /\  www.asciiribbon.org   - against proprietary attachments

From: =?windows-1252?Q?Michael_Gr=FCnewald?=
 <michael.grunewald@laposte.net>
To: Stanislav Sedov <stas@FreeBSD.org>
Cc: FreeBSD PR followup <bug-followup@FreeBSD.org>
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Tue, 16 Apr 2013 23:24:12 +0200

 This is a multi-part message in MIME format.
 --------------090901090407080507030707
 Content-Type: text/plain; charset=windows-1252
 Content-Transfer-Encoding: 8bit
 
 Hi Stanislas,
 
 thank you for message,
 
 Stanislav Sedov wrote:
 > There're appears to be some style bugs in the last patch
 > you submitted.  In particular, you used spaces to indent
 > instead of tabs in numerous places, which can be spotted
 > in the diff itself.  Can you, please, run the changes through
 > the portlint and fix those issues?
 
 indeed the patch I submitted was susceptible of improvement :)
 
 There is still a warning emitted, caused by the voodoo used to guess
 documentation file names.
 
 Regards,
 Michael
 
 
 --------------090901090407080507030707
 Content-Type: text/plain; charset=UTF-8;
  name="patch-ocaml.txt"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="patch-ocaml.txt"
 
 diff --git a/ocaml/Makefile b/ocaml/Makefile
 index 072102e..083c17f 100644
 --- a/ocaml/Makefile
 +++ b/ocaml/Makefile
 @@ -2,22 +2,28 @@
  # Date created:		24 December 1996
  # Whom:			Kiriyama Kazuhiko <kiri@kiri.toba-cmt.ac.jp>
  #
 -# $FreeBSD: Makefile 311776 2013-02-06 15:42:16Z gahr $
 +# $FreeBSD: ports/lang/ocaml/Makefile,v 1.77 2012/02/23 01:10:28 bf Exp $
  #
  
  PORTNAME=	ocaml
 -PORTVERSION=	3.12.1
 -PORTREVISION=	1
 +PORTVERSION=    4.00.1
  CATEGORIES=	lang
 -MASTER_SITES=	http://caml.inria.fr/distrib/${DISTNAME:R}/ \
 -		ftp://ftp.inria.fr/INRIA/caml-light/${DISTNAME:R}/ \
 -		ftp://ftp.kurims.kyoto-u.ac.jp/pub/lang/caml-light/${DISTNAME:R}/ \
 +MASTER_SITES=	http://caml.inria.fr/pub/distrib/${DISTNAME:R}/ \
  		${MASTER_SITE_GENTOO}
 -MASTER_SITE_SUBDIR=	distfiles
 +MASTER_SITE_SUBDIR= distfiles
  PKGNAMESUFFIX=	${SFX}
 +DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
 +EXTRACT_ONLY=   ${DISTNAME}${EXTRACT_SUFX}
  
 -MAINTAINER?=	michael.grunewald@laposte.net
 -COMMENT?=	The Objective Caml compiler and programming environment
 +MAINTAINER=	michipili@gmail.com
 +COMMENT=	The Objective Caml compiler and programming environment
 +
 +.if !defined(NOPORTDOCS)
 +DOCSDISTNAME=   ${DISTNAME:C/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/\1.\2/}
 +DISTFILES+= 	${DOCSDISTNAME}-refman-html.tar.gz \
 +		${DOCSDISTNAME}-refman.ps.gz \
 +		${DOCSDISTNAME}-refman.pdf
 +.endif
  
  USE_BZIP2=	yes
  REINPLACE_ARGS=	-i ""
 @@ -26,12 +32,14 @@ ALL_TARGET=	world.opt
  STRIP=
  MAKE_JOBS_UNSAFE=	yes
  
 -CONFIGURE_ARGS=	-verbose -prefix "${PREFIX}" -cc "${CC}" -as "${AS}" \
 -		-aspp "${CC} -c" -partialld "${LD} -r"
 +CONFIGURE_ARGS=	-verbose -prefix "${PREFIX}" \
 +		-cc "${CC} ${CFLAGS}" \
 +		-as "${AS} ${ASFLAGS}" \
 +		-aspp "${CC} -c" \
 +		-partialld "${LD} -r"
  OPTIONS=	X11	"Build with X11 support" on \
  		TK	"Build LablTk library (requires X11 support)" on \
  		THREADS	"Build with Posix threads support" on \
 -		CMP_LIB	"Install compiler's libraries" off \
  		OPT_DEF	"Use system-optimized binaries by default" off
  
  MODOPT=		camlp4o camlp4r ocamlc ocamldep ocamldoc ocamllex ocamlopt
 @@ -39,6 +47,10 @@ PATTERN=	[[:space:]]*(do|then)?[[:space:]]*)(\$$\(CP\)|cp)([[:space:]]
  
  .include <bsd.port.pre.mk>
  
 +.if !defined(NOPORTDOCS)
 +PORTDOCS = htmlman/* ${DOCSDISTNAME}-refman.ps.gz ${DOCSDISTNAME}-refman.pdf
 +.endif
 +
  .if ${ARCH} == powerpc
  ARCH=	power
  .endif
 @@ -84,13 +96,16 @@ CONFIGURE_ARGS+=-no-tk
  .else
  USE_TK=		84+
  INVALID_TK_VER =	86
 +.if defined(WITH_THREADS)
 +USE_TK_THREADS =	yes
 +.endif
  .include "${PORTSDIR}/Mk/bsd.tcl.mk"
  PLIST_SUB+=	TK=""
  CONFLICTS+=	ocaml-nox11-[0-9]* ocaml-notk-[0-9]*
  CONFIGURE_ARGS+=	-tkdefs \
  			"-I${TCL_INCLUDEDIR} -I${TK_INCLUDEDIR} ${THR_CPP}" \
 -			-tklibs "-L${LOCALBASE}/lib -ltk${TK_VER:S|.||} \
 -			-ltcl${TCL_VER:S|.||} ${THR_LD}"
 +			-tklibs "-L${LOCALBASE}/lib -ltk${TK_VER:S|.||}${_TCL_THREADS_SUFFIX} \
 +			-ltcl${TCL_VER:S|.||}${_TCL_THREADS_SUFFIX} ${THR_LD}"
  .endif
  
  .if ${ARCH} == sparc64
 @@ -101,6 +116,14 @@ post-extract:
  .if ${ARCH} == power
  	${MV} ${WRKSRC}/asmrun/power-elf.S ${WRKSRC}/asmrun/power-bsd.S
  .endif
 +.if !defined(NOPORTDOCS)
 +	@if ! (cd ${WRKDIR} && \
 +	  ${TAR} xf ${_DISTDIR}${DOCSDISTNAME}-refman-html.tar.gz \
 +	) \
 +	then \
 +	  exit 1; \
 +	fi;
 +.endif
  
  post-patch:
  	@${REINPLACE_CMD} \
 @@ -155,14 +178,26 @@ post-install:
  		"! -name .cvsignore")
  .endif
  
 -.for PROG in camlp4o.opt camlp4r.opt ocamlc.opt ocamldep.opt ocamldoc.opt \
 -		ocamllex.opt ocamlopt.opt ocamlrun ocamlyacc
 +.if !defined(NOPORTDOCS)
 +	${MKDIR} ${DOCSDIR}
 +	(cd ${WRKDIR} && ${COPYTREE_SHARE} htmlman ${DOCSDIR})
 +	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.ps.gz ${DOCSDIR}
 +	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.pdf ${DOCSDIR}
 +.endif
 +
 +.for PROG in camlp4o.opt camlp4of.opt camlp4oof.opt camlp4orf.opt \
 +	camlp4r.opt camlp4rf.opt ocamlc.opt ocamldep.opt ocamldoc.opt \
 +	ocamllex.opt ocamlopt.opt ocamlrun ocamlyacc
  	@${STRIP_CMD} ${PREFIX}/bin/${PROG}
  .endfor
  
  # Fix permissions for ld.conf
  	@${CHMOD} 644 ${PREFIX}/lib/ocaml/ld.conf
  
 +# Do we want to install documentation
 +.if !defined(NOPORTDOCS)
 +
 +.endif
  # Do we want .opt version of tools to be the default ?
  .if defined(WITH_OPT_DEF)
  . for module in ${MODOPT}
 @@ -176,19 +211,4 @@ post-install:
  . endfor
  .endif
  
 -# Add compiler's libs if required
 -.if defined(WITH_CMP_LIB)
 -	@${MKDIR}  ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/utils/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/utils/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/parsing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/parsing/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/typing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/typing/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${FIND} ${PREFIX}/lib/ocaml/compiler-lib -type f | \
 -		${SED} "s,^${PREFIX}/,," >> ${TMPPLIST}
 -	@${ECHO_CMD} "@dirrm lib/ocaml/compiler-lib" >> ${TMPPLIST}
 -.endif
 -	@${ECHO_CMD} "@unexec rmdir "%D/lib/ocaml" 2>/dev/null || true" >> ${TMPPLIST}
 -
  .include <bsd.port.post.mk>
 diff --git a/ocaml/distinfo b/ocaml/distinfo
 index 49d8d14..1a8fe0e 100644
 --- a/ocaml/distinfo
 +++ b/ocaml/distinfo
 @@ -1,2 +1,8 @@
 -SHA256 (ocaml-3.12.1.tar.bz2) = edcf563da75e0b91f09765649caa98ab1535e0c7498f0737b5591b7de084958d
 -SIZE (ocaml-3.12.1.tar.bz2) = 2949124
 +SHA256 (ocaml-4.00.1.tar.bz2) = 33c3f4acff51685f5bfd7c260f066645e767d4e865877bf1613c176a77799951
 +SIZE (ocaml-4.00.1.tar.bz2) = 2762205
 +SHA256 (ocaml-4.00-refman-html.tar.gz) = 8ca43859d8a71f0941a2453b7b808d7e58ad54804a9cf285875fa30e6576b31a
 +SIZE (ocaml-4.00-refman-html.tar.gz) = 549757
 +SHA256 (ocaml-4.00-refman.ps.gz) = 6146264fef7ae73f7ebb8dc49a3b1adae9d5bd4f9a14a2670c9d43f7e6a253c3
 +SIZE (ocaml-4.00-refman.ps.gz) = 1075658
 +SHA256 (ocaml-4.00-refman.pdf) = 76ba2cf60a605b2427f995563f6dc6c7dbb39be6b066f6d96b23926e8cc9babc
 +SIZE (ocaml-4.00-refman.pdf) = 1453678
 diff --git a/ocaml/files/edit_pkg-plist.sed b/ocaml/files/edit_pkg-plist.sed
 new file mode 100644
 index 0000000..6262030
 --- /dev/null
 +++ b/ocaml/files/edit_pkg-plist.sed
 @@ -0,0 +1,6 @@
 +/.p.cmx$/s@^@%%PROF%%@
 +/examples_labeltk/{
 +  s@share/examples@%%EXAMPLESDIR%%@
 +  s@^@%%TK%%@
 +}
 +/graphics/s@^@%%X11%%@
 diff --git a/ocaml/files/manfiles b/ocaml/files/manfiles
 index c19f86f..b2c26bb 100644
 --- a/ocaml/files/manfiles
 +++ b/ocaml/files/manfiles
 @@ -8,91 +8,94 @@ MAN1=	ocaml.1 \
  	ocamllex.1 \
  	ocamlmktop.1 \
  	ocamlopt.1 \
 +	ocamloptp.1 \
  	ocamlprof.1 \
  	ocamlrun.1 \
  	ocamlyacc.1
  
 -MANN=	Arg.n \
 -	Array.n \
 -	ArrayLabels.n \
 -	Bigarray.Array1.n \
 -	Bigarray.Array2.n \
 -	Bigarray.Array3.n \
 -	Bigarray.Genarray.n \
 -	Bigarray.n \
 -	Buffer.n \
 -	Callback.n \
 -	CamlinternalOO.n \
 -	CamlinternalLazy.n \
 -	CamlinternalMod.n \
 -	Char.n \
 -	Complex.n \
 -	Digest.n \
 -	Filename.n \
 -	Format.n \
 -	Gc.n \
 -	Genlex.n \
 -	Hashtbl.HashedType.n \
 -	Hashtbl.Make.n \
 -	Hashtbl.S.n \
 -	Hashtbl.n \
 -	Int32.n \
 -	Int64.n \
 -	Lazy.n \
 -	Lexing.n \
 -	List.n \
 -	ListLabels.n \
 -	Map.Make.n \
 -	Map.OrderedType.n \
 -	Map.S.n \
 -	Map.n \
 -	Marshal.n \
 -	MoreLabels.Hashtbl.HashedType.n \
 -	MoreLabels.Hashtbl.Make.n \
 -	MoreLabels.Hashtbl.S.n \
 -	MoreLabels.Hashtbl.n \
 -	MoreLabels.Map.Make.n \
 -	MoreLabels.Map.OrderedType.n \
 -	MoreLabels.Map.S.n \
 -	MoreLabels.Map.n \
 -	MoreLabels.Set.Make.n \
 -	MoreLabels.Set.OrderedType.n \
 -	MoreLabels.Set.S.n \
 -	MoreLabels.Set.n \
 -	MoreLabels.n \
 -	Nativeint.n \
 -	Num.n \
 -	Obj.n \
 -	Oo.n \
 -	Parsing.n \
 -	Pervasives.LargeFile.n \
 -	Pervasives.n \
 -	Printexc.n \
 -	Printf.n \
 -	Queue.n \
 -	Random.n \
 -	Random.State.n \
 -	Scanf.Scanning.n \
 -	Scanf.n \
 -	Set.Make.n \
 -	Set.OrderedType.n \
 -	Set.S.n \
 -	Set.n \
 -	Sort.n \
 -	Stack.n \
 -	StdLabels.Array.n \
 -	StdLabels.List.n \
 -	StdLabels.String.n \
 -	StdLabels.n \
 -	Str.n \
 -	Stream.n \
 -	String.n \
 -	StringLabels.n \
 -	Sys.n \
 -	Unix.LargeFile.n \
 -	Unix.n \
 -	Weak.Make.n \
 -	Weak.S.n \
 -	Weak.n
 +MANN=	Arg.3o \
 +	Array.3o \
 +	ArrayLabels.3o \
 +	Bigarray.3o \
 +	Bigarray.Array1.3o \
 +	Bigarray.Array2.3o \
 +	Bigarray.Array3.3o \
 +	Bigarray.Genarray.3o \
 +	Buffer.3o \
 +	Callback.3o \
 +	CamlinternalLazy.3o \
 +	CamlinternalMod.3o \
 +	CamlinternalOO.3o \
 +	Complex.3o \
 +	Digest.3o \
 +	Filename.3o \
 +	Format.3o \
 +	Gc.3o \
 +	Genlex.3o \
 +	Hashtbl.3o \
 +	Hashtbl.HashedType.3o \
 +	Hashtbl.Make.3o \
 +	Hashtbl.MakeSeeded.3o \
 +	Hashtbl.S.3o \
 +	Hashtbl.SeededHashedType.3o \
 +	Hashtbl.SeededS.3o \
 +	Int32.3o \
 +	Int64.3o \
 +	Lexing.3o \
 +	List.3o \
 +	ListLabels.3o \
 +	Map.3o \
 +	Map.Make.3o \
 +	Map.OrderedType.3o \
 +	Map.S.3o \
 +	Marshal.3o \
 +	MoreLabels.3o \
 +	MoreLabels.Hashtbl.3o \
 +	MoreLabels.Hashtbl.HashedType.3o \
 +	MoreLabels.Hashtbl.Make.3o \
 +	MoreLabels.Hashtbl.MakeSeeded.3o \
 +	MoreLabels.Hashtbl.S.3o \
 +	MoreLabels.Hashtbl.SeededHashedType.3o \
 +	MoreLabels.Hashtbl.SeededS.3o \
 +	MoreLabels.Map.3o \
 +	MoreLabels.Map.Make.3o \
 +	MoreLabels.Map.OrderedType.3o \
 +	MoreLabels.Map.S.3o \
 +	MoreLabels.Set.3o \
 +	MoreLabels.Set.Make.3o \
 +	MoreLabels.Set.OrderedType.3o \
 +	MoreLabels.Set.S.3o \
 +	Nativeint.3o \
 +	Num.3o \
 +	Obj.3o \
 +	Oo.3o \
 +	Parsing.3o \
 +	Pervasives.3o \
 +	Pervasives.LargeFile.3o \
 +	Printexc.3o \
 +	Printf.3o \
 +	Queue.3o \
 +	Random.3o \
 +	Random.State.3o \
 +	Scanf.3o \
 +	Scanf.Scanning.3o \
 +	Set.Make.3o \
 +	Set.OrderedType.3o \
 +	Set.S.3o \
 +	Sort.3o \
 +	Stack.3o \
 +	StdLabels.3o \
 +	StdLabels.Array.3o \
 +	StdLabels.List.3o \
 +	StdLabels.String.3o \
 +	Str.3o \
 +	Stream.3o \
 +	StringLabels.3o \
 +	Sys.3o \
 +	Unix.3o \
 +	Unix.LargeFile.3o \
 +	Weak.3o \
 +	Weak.Make.3o \
 +	Weak.S.3o
  
  MLINKS=	ocamlc.1 ocamlc.opt.1 ocamlopt.1 ocamlopt.opt.1
 diff --git a/ocaml/files/patch-Makefile b/ocaml/files/patch-Makefile
 deleted file mode 100644
 index 1da3b2f..0000000
 --- a/ocaml/files/patch-Makefile
 +++ /dev/null
 @@ -1,11 +0,0 @@
 ---- Makefile.orig	2010-06-16 03:32:26.000000000 +0200
 -+++ Makefile	2011-12-14 10:02:05.745076468 +0100
 -@@ -288,7 +288,7 @@
 - 	cp lex/ocamllex $(BINDIR)/ocamllex$(EXE)
 - 	cp yacc/ocamlyacc$(EXE) $(BINDIR)/ocamlyacc$(EXE)
 - 	cp toplevel/toplevellib.cma $(LIBDIR)/toplevellib.cma
 --	cp expunge $(LIBDIR)/expunge$(EXE)
 -+	${BSD_INSTALL_SCRIPT} expunge $(LIBDIR)/expunge$(EXE)
 - 	cp typing/outcometree.cmi typing/outcometree.mli $(LIBDIR)
 - 	cp toplevel/topstart.cmo $(LIBDIR)
 - 	cp toplevel/toploop.cmi toplevel/topdirs.cmi toplevel/topmain.cmi \
 diff --git a/ocaml/files/patch-config-auto-aux-async_io.c b/ocaml/files/patch-config-auto-aux-async_io.c
 new file mode 100644
 index 0000000..3a0fcdd
 --- /dev/null
 +++ b/ocaml/files/patch-config-auto-aux-async_io.c
 @@ -0,0 +1,10 @@
 +--- config/auto-aux/async_io.c	2012-11-01 17:36:02.000000000 +0100
 ++++ config/auto-aux/async_io.c.orig	2012-11-01 17:35:46.000000000 +0100
 +@@ -13,7 +13,8 @@
 + 
 + /* $Id: async_io.c 11156 2011-07-27 14:17:02Z doligez $ */
 + 
 ++#include <stdlib.h>
 + #include <stdio.h>
 + #include <fcntl.h>
 + #include <signal.h>
 diff --git a/ocaml/files/patch-configure b/ocaml/files/patch-configure
 index 43689ad..e13acae 100644
 --- a/ocaml/files/patch-configure
 +++ b/ocaml/files/patch-configure
 @@ -1,17 +1,15 @@
 -$FreeBSD: files/patch-configure 300896 2012-07-14 13:54:48Z beat $
 -
 ---- configure.orig	2011-07-04 22:15:01.000000000 +0100
 -+++ configure	2012-01-15 20:29:30.319674803 +0000
 -@@ -85,6 +85,8 @@
 +--- configure.orig	2012-11-01 17:14:55.000000000 +0100
 ++++ configure	2012-11-01 17:23:44.000000000 +0100
 +@@ -88,6 +88,8 @@
           withcurses=no;;
 -     -no-shared-libs)
 +     -no-shared-libs|--no-shared-libs)
           withsharedlibs=no;;
  +    -no-x11|--no-x11)
  +        x11_wanted=no;;
       -x11include*|--x11include*)
           x11_include_dir=$2; shift;;
       -x11lib*|--x11lib*)
 -@@ -521,7 +523,7 @@
 +@@ -537,7 +539,7 @@
         mksharedlib="$flexlink"
         mkmaindll="$flexlink -maindll"
         shared_libraries_supported=true;;
 @@ -20,181 +18,19 @@ $FreeBSD: files/patch-configure 300896 2012-07-14 13:54:48Z beat $
         sharedcccompopts="-fPIC"
         mksharedlib="$bytecc -shared"
         bytecclinkopts="$bytecclinkopts -Wl,-E"
 -@@ -636,6 +638,7 @@
 -     i[345]86-*-netbsd*)           natdynlink=true;;
 -     x86_64-*-netbsd*)             natdynlink=true;;
 -     i386-*-gnu0.3)                natdynlink=true;;
 -+    *-*-freebsd*)                 natdynlink=true;;
 -   esac
 - fi
 - 
 -@@ -687,6 +690,7 @@
 -   hppa*-*-gnu*)                 arch=hppa; system=gnu;;
 +@@ -687,6 +689,7 @@
 +                                 fi;;
 +   i[3456]86-*-gnu*)             arch=i386; system=gnu;;
     powerpc*-*-linux*)            arch=power; model=ppc; system=elf;;
 ++  powerpc-*-freebsd*)           arch=power; model=ppc; system=elf;;
     powerpc-*-netbsd*)            arch=power; model=ppc; system=elf;;
 -+  powerpc-*-freebsd*)           arch=power; model=ppc; system=bsd;;
     powerpc-*-rhapsody*)          arch=power; model=ppc; system=rhapsody;;
     powerpc-*-darwin*)            arch=power; system=rhapsody
 -                                 if $arch64; then model=ppc64; else model=ppc; fi;;
 -@@ -796,6 +800,7 @@
 -   i386,*,bsd_elf) profiling='prof';;
 -   amd64,*,macosx) profiling='prof';;
 -   i386,*,macosx) profiling='prof';;
 +@@ -786,6 +789,7 @@
 +   amd64,*,linux) profiling='prof';;
 +   amd64,*,gnu) profiling='prof';;
 +   arm,*,linux*) profiling='prof';;
  +  *,*,freebsd) profiling='prof';;
 -   sparc,*,solaris)
 -     profiling='prof'
 -     case "$nativecc" in gcc*) ;; *) cc_profile='-xpg';; esac;;
 -@@ -1256,133 +1261,24 @@
 - x11_include="not found"
 - x11_link="not found"
 - 
 --for dir in \
 --    $x11_include_dir          \
 --                              \
 --    /usr/X11R7/include        \
 --    /usr/include/X11R7        \
 --    /usr/local/X11R7/include  \
 --    /usr/local/include/X11R7  \
 --    /opt/X11R7/include        \
 --                              \
 --    /usr/X11R6/include        \
 --    /usr/include/X11R6        \
 --    /usr/local/X11R6/include  \
 --    /usr/local/include/X11R6  \
 --    /opt/X11R6/include        \
 --                              \
 --    /usr/X11/include          \
 --    /usr/include/X11          \
 --    /usr/local/X11/include    \
 --    /usr/local/include/X11    \
 --    /opt/X11/include          \
 --                              \
 --    /usr/X11R5/include        \
 --    /usr/include/X11R5        \
 --    /usr/local/X11R5/include  \
 --    /usr/local/include/X11R5  \
 --    /usr/local/x11r5/include  \
 --    /opt/X11R5/include        \
 --                              \
 --    /usr/X11R4/include        \
 --    /usr/include/X11R4        \
 --    /usr/local/X11R4/include  \
 --    /usr/local/include/X11R4  \
 --                              \
 --    /usr/X386/include         \
 --    /usr/x386/include         \
 --    /usr/XFree86/include/X11  \
 --                              \
 --    /usr/include              \
 --    /usr/local/include        \
 --    /usr/unsupported/include  \
 --    /usr/athena/include       \
 --    /usr/lpp/Xamples/include  \
 --                              \
 --    /usr/openwin/include      \
 --    /usr/openwin/share/include \
 --    ; \
 --do
 --  if test -f $dir/X11/X.h; then
 --    x11_include=$dir
 --    break
 --  fi
 --done
 --
 --if test "$x11_include" = "not found"; then
 --  x11_try_lib_dir=''
 --else
 --  x11_try_lib_dir=`echo $x11_include | sed -e 's|include|lib|'`
 -+if [ -n "$x11_include_dir" ]; then
 -+  x11_include="$x11_include_dir"
 - fi
 - 
 --for dir in \
 --    $x11_lib_dir          \
 --    $x11_try_lib_dir      \
 --                          \
 --    /usr/X11R6/lib64      \
 --    /usr/X11R6/lib        \
 --    /usr/lib/X11R6        \
 --    /usr/local/X11R6/lib  \
 --    /usr/local/lib/X11R6  \
 --    /opt/X11R6/lib        \
 --                          \
 --    /usr/X11/lib          \
 --    /usr/lib/X11          \
 --    /usr/local/X11/lib    \
 --    /usr/local/lib/X11    \
 --    /opt/X11/lib          \
 --                          \
 --    /usr/X11R5/lib        \
 --    /usr/lib/X11R5        \
 --    /usr/local/X11R5/lib  \
 --    /usr/local/lib/X11R5  \
 --    /usr/local/x11r5/lib  \
 --    /opt/X11R5/lib        \
 --                          \
 --    /usr/X11R4/lib        \
 --    /usr/lib/X11R4        \
 --    /usr/local/X11R4/lib  \
 --    /usr/local/lib/X11R4  \
 --                          \
 --    /usr/X386/lib         \
 --    /usr/x386/lib         \
 --    /usr/XFree86/lib/X11  \
 --                          \
 --    /usr/lib64            \
 --    /usr/lib              \
 --    /usr/local/lib        \
 --    /usr/unsupported/lib  \
 --    /usr/athena/lib       \
 --    /usr/lpp/Xamples/lib  \
 --    /lib/usr/lib/X11      \
 --                          \
 --    /usr/openwin/lib      \
 --    /usr/openwin/share/lib \
 --    ; \
 --do
 --  if test -f $dir/libX11.a || \
 --     test -f $dir/libX11.so || \
 --     test -f $dir/libX11.dll.a || \
 --     test -f $dir/libX11.dylib || \
 --     test -f $dir/libX11.sa; then
 --    if test $dir = /usr/lib; then
 --      x11_link="-lX11"
 --    else
 --      x11_libs="-L$dir"
 --      case "$host" in
 --        *-*-*bsd*) x11_link="-R$dir -L$dir -lX11";;
 --        *) x11_link="-L$dir -lX11";;
 --      esac
 --    fi
 --    break
 --  fi
 --done
 --
 -+if [ -n "$x11_lib_dir" ]; then
 -+  x11_link="-L$x11_lib_dir -lX11"
 -+  x11_libs="-L$x11_lib_dir"
 -+fi
 +   *) profiling='noprof';;
 + esac
   
 - if test "$x11_include" = "not found" || test "$x11_link" = "not found"
 - then
 -   echo "X11 not found, the \"graph\" library will not be supported."
 -   x11_include=""
 -+elif test "$x11_wanted" = "no"
 -+then
 -+  echo "X11 support was disabled, the \"graph\" library will not be supported."
 -+  x11_include=""
 -+  x11_link=""
 - else
 -   echo "Location of X11 include files: $x11_include/X11"
 -   echo "Options for linking with X11: $x11_link"
 -@@ -1509,7 +1405,7 @@
 -   then tk_libs="$tk_libs $dllib"
 -   elif sh ./hasgot $tk_libs -ltcl$tclmaj.$tclmin $tkauxlibs Tcl_DoOneEvent
 -   then
 --    tk_libs="$tk_libs -ltk$tkmaj.$tkmin -ltcl$tclmaj.$tclmin $dllib"
 -+    tk_libs="$tk_libs -ltk$tkmaj$tkmin -ltcl$tclmaj.$tclmin $dllib"
 -   elif sh ./hasgot $tk_libs -ltcl$tclmaj$tclmin $tkauxlibs Tcl_DoOneEvent
 -   then
 -     tk_libs="$tk_libs -ltk$tkmaj$tkmin -ltcl$tclmaj$tclmin $dllib"
 diff --git a/ocaml/files/patch-ocamldoc_Makefile b/ocaml/files/patch-ocamldoc_Makefile
 index bede473..17ad2f3 100644
 --- a/ocaml/files/patch-ocamldoc_Makefile
 +++ b/ocaml/files/patch-ocamldoc_Makefile
 @@ -9,16 +9,3 @@
   
   INSTALL_MLIS=odoc_info.mli
   INSTALL_CMIS=$(INSTALL_MLIS:.mli=.cmi)
 -@@ -265,7 +265,11 @@
 - 	$(CP) ocamldoc.hva *.cmi $(OCAMLDOC_LIBCMA) $(INSTALL_LIBDIR)
 - 	$(CP) $(INSTALL_MLIS) $(INSTALL_CMIS) $(INSTALL_LIBDIR)
 - 	if test -d $(INSTALL_MANODIR); then : ; else $(MKDIR) $(INSTALL_MANODIR); fi
 --	if test -d stdlib_man; then $(CP) stdlib_man/* $(INSTALL_MANODIR); else : ; fi
 -+	if test -d stdlib_man; then \
 -+		for f in stdlib_man/*; do \
 -+			$(BSD_INSTALL_MAN) $$f $(INSTALL_MANODIR)/`basename $$f .3o`.n; \
 -+		done; \
 -+	fi
 - 
 - installopt:
 - 	if test -f $(OCAMLDOC_OPT) ; then $(MAKE) installopt_really ; fi
 diff --git a/ocaml/files/patch-testsuite-backtrace-Makefile b/ocaml/files/patch-testsuite-backtrace-Makefile
 new file mode 100644
 index 0000000..7b887dc
 --- /dev/null
 +++ b/ocaml/files/patch-testsuite-backtrace-Makefile
 @@ -0,0 +1,11 @@
 +--- testsuite/tests/backtrace/Makefile.orig	2012-11-01 20:28:23.000000000 +0100
 ++++ testsuite/tests/backtrace/Makefile	2012-11-01 20:28:30.000000000 +0100
 +@@ -6,7 +6,7 @@
 + 	  $(OCAMLC) -g -o $(EXECNAME) $$file; \
 + 	  for arg in a b c d ''; do \
 + 	    printf " ... testing '$$file' (with argument '$$arg'):"; \
 +-	    OCAMLRUNPARAM=b=1 $(EXECNAME) $$arg > `basename $$file ml`$$arg.result 2>&1; \
 ++	    sh -c "OCAMLRUNPARAM=b=1 $(EXECNAME) $$arg; true" > `basename $$file ml`$$arg.result 2>&1; \
 + 	    $(DIFF) `basename $$file ml`$$arg.reference `basename $$file ml`$$arg.result > /dev/null && echo " => passed" || (echo " => failed" && exit 1); \
 + 	  done; \
 + 	done
 diff --git a/ocaml/pkg-plist b/ocaml/pkg-plist
 index 18567ab..4d479b8 100644
 --- a/ocaml/pkg-plist
 +++ b/ocaml/pkg-plist
 @@ -1,4 +1,3 @@
 -bin/ocamlobjinfo
  bin/camlp4
  bin/camlp4boot
  bin/camlp4o
 @@ -33,12 +32,15 @@ bin/ocamllex
  bin/ocamllex.opt
  bin/ocamlmklib
  bin/ocamlmktop
 +bin/ocamlobjinfo
  bin/ocamlopt
  bin/ocamlopt.opt
 +bin/ocamloptp
  bin/ocamlprof
  bin/ocamlrun
  bin/ocamlyacc
  lib/ocaml/Makefile.config
 +lib/ocaml/VERSION
  lib/ocaml/arg.cmi
  lib/ocaml/arg.cmx
  lib/ocaml/arg.ml
 @@ -85,6 +87,7 @@ lib/ocaml/caml/compatibility.h
  lib/ocaml/caml/config.h
  lib/ocaml/caml/custom.h
  lib/ocaml/caml/fail.h
 +lib/ocaml/caml/hash.h
  lib/ocaml/caml/intext.h
  lib/ocaml/caml/memory.h
  lib/ocaml/caml/misc.h
 @@ -261,29 +264,158 @@ lib/ocaml/char.cmx
  lib/ocaml/char.ml
  lib/ocaml/char.mli
  %%PROF%%lib/ocaml/char.p.cmx
 +lib/ocaml/compiler-libs/annot.cmi
 +lib/ocaml/compiler-libs/arch.cmi
 +lib/ocaml/compiler-libs/asmgen.cmi
 +lib/ocaml/compiler-libs/asmlibrarian.cmi
 +lib/ocaml/compiler-libs/asmlink.cmi
 +lib/ocaml/compiler-libs/asmpackager.cmi
 +lib/ocaml/compiler-libs/asttypes.cmi
 +lib/ocaml/compiler-libs/btype.cmi
 +lib/ocaml/compiler-libs/bytegen.cmi
 +lib/ocaml/compiler-libs/bytelibrarian.cmi
 +lib/ocaml/compiler-libs/bytelink.cmi
 +lib/ocaml/compiler-libs/bytepackager.cmi
 +lib/ocaml/compiler-libs/bytesections.cmi
 +lib/ocaml/compiler-libs/ccomp.cmi
 +lib/ocaml/compiler-libs/clambda.cmi
 +lib/ocaml/compiler-libs/clflags.cmi
 +lib/ocaml/compiler-libs/closure.cmi
 +lib/ocaml/compiler-libs/cmi_format.cmi
 +lib/ocaml/compiler-libs/cmm.cmi
 +lib/ocaml/compiler-libs/cmmgen.cmi
 +lib/ocaml/compiler-libs/cmo_format.cmi
 +lib/ocaml/compiler-libs/cmt_format.cmi
 +lib/ocaml/compiler-libs/cmx_format.cmi
 +lib/ocaml/compiler-libs/coloring.cmi
 +lib/ocaml/compiler-libs/comballoc.cmi
 +lib/ocaml/compiler-libs/compile.cmi
 +lib/ocaml/compiler-libs/compilenv.cmi
 +lib/ocaml/compiler-libs/config.cmi
 +lib/ocaml/compiler-libs/consistbl.cmi
 +lib/ocaml/compiler-libs/ctype.cmi
 +lib/ocaml/compiler-libs/datarepr.cmi
 +lib/ocaml/compiler-libs/debuginfo.cmi
 +lib/ocaml/compiler-libs/dll.cmi
 +lib/ocaml/compiler-libs/emit.cmi
 +lib/ocaml/compiler-libs/emitaux.cmi
 +lib/ocaml/compiler-libs/emitcode.cmi
 +lib/ocaml/compiler-libs/env.cmi
 +lib/ocaml/compiler-libs/errors.cmi
 +lib/ocaml/compiler-libs/expunge.cmi
 +lib/ocaml/compiler-libs/genprintval.cmi
 +lib/ocaml/compiler-libs/ident.cmi
 +lib/ocaml/compiler-libs/includeclass.cmi
 +lib/ocaml/compiler-libs/includecore.cmi
 +lib/ocaml/compiler-libs/includemod.cmi
 +lib/ocaml/compiler-libs/instruct.cmi
 +lib/ocaml/compiler-libs/interf.cmi
 +lib/ocaml/compiler-libs/lambda.cmi
 +lib/ocaml/compiler-libs/lexer.cmi
 +lib/ocaml/compiler-libs/linearize.cmi
 +lib/ocaml/compiler-libs/liveness.cmi
 +lib/ocaml/compiler-libs/location.cmi
 +lib/ocaml/compiler-libs/longident.cmi
 +lib/ocaml/compiler-libs/mach.cmi
 +lib/ocaml/compiler-libs/main.cmi
 +lib/ocaml/compiler-libs/main.cmo
 +lib/ocaml/compiler-libs/main.cmx
 +lib/ocaml/compiler-libs/main.o
 +lib/ocaml/compiler-libs/main_args.cmi
 +lib/ocaml/compiler-libs/matching.cmi
 +lib/ocaml/compiler-libs/meta.cmi
 +lib/ocaml/compiler-libs/misc.cmi
 +lib/ocaml/compiler-libs/mtype.cmi
 +lib/ocaml/compiler-libs/ocamlbytecomp.a
 +lib/ocaml/compiler-libs/ocamlbytecomp.cma
 +lib/ocaml/compiler-libs/ocamlbytecomp.cmxa
 +lib/ocaml/compiler-libs/ocamlcommon.a
 +lib/ocaml/compiler-libs/ocamlcommon.cma
 +lib/ocaml/compiler-libs/ocamlcommon.cmxa
 +lib/ocaml/compiler-libs/ocamloptcomp.a
 +lib/ocaml/compiler-libs/ocamloptcomp.cma
 +lib/ocaml/compiler-libs/ocamloptcomp.cmxa
 +lib/ocaml/compiler-libs/ocamltoplevel.cma
 +lib/ocaml/compiler-libs/opcodes.cmi
 +lib/ocaml/compiler-libs/oprint.cmi
 +lib/ocaml/compiler-libs/optcompile.cmi
 +lib/ocaml/compiler-libs/opterrors.cmi
 +lib/ocaml/compiler-libs/optmain.cmi
 +lib/ocaml/compiler-libs/optmain.cmo
 +lib/ocaml/compiler-libs/optmain.cmx
 +lib/ocaml/compiler-libs/optmain.o
 +lib/ocaml/compiler-libs/outcometree.cmi
 +lib/ocaml/compiler-libs/parmatch.cmi
 +lib/ocaml/compiler-libs/parse.cmi
 +lib/ocaml/compiler-libs/parser.cmi
 +lib/ocaml/compiler-libs/parsetree.cmi
 +lib/ocaml/compiler-libs/path.cmi
 +lib/ocaml/compiler-libs/pparse.cmi
 +lib/ocaml/compiler-libs/predef.cmi
 +lib/ocaml/compiler-libs/primitive.cmi
 +lib/ocaml/compiler-libs/printast.cmi
 +lib/ocaml/compiler-libs/printclambda.cmi
 +lib/ocaml/compiler-libs/printcmm.cmi
 +lib/ocaml/compiler-libs/printinstr.cmi
 +lib/ocaml/compiler-libs/printlambda.cmi
 +lib/ocaml/compiler-libs/printlinear.cmi
 +lib/ocaml/compiler-libs/printmach.cmi
 +lib/ocaml/compiler-libs/printtyp.cmi
 +lib/ocaml/compiler-libs/printtyped.cmi
 +lib/ocaml/compiler-libs/proc.cmi
 +lib/ocaml/compiler-libs/reg.cmi
 +lib/ocaml/compiler-libs/reload.cmi
 +lib/ocaml/compiler-libs/reloadgen.cmi
 +lib/ocaml/compiler-libs/runtimedef.cmi
 +lib/ocaml/compiler-libs/schedgen.cmi
 +lib/ocaml/compiler-libs/scheduling.cmi
 +lib/ocaml/compiler-libs/selectgen.cmi
 +lib/ocaml/compiler-libs/selection.cmi
 +lib/ocaml/compiler-libs/simplif.cmi
 +lib/ocaml/compiler-libs/spill.cmi
 +lib/ocaml/compiler-libs/split.cmi
 +lib/ocaml/compiler-libs/stypes.cmi
 +lib/ocaml/compiler-libs/subst.cmi
 +lib/ocaml/compiler-libs/switch.cmi
 +lib/ocaml/compiler-libs/symtable.cmi
 +lib/ocaml/compiler-libs/syntaxerr.cmi
 +lib/ocaml/compiler-libs/tbl.cmi
 +lib/ocaml/compiler-libs/terminfo.cmi
 +lib/ocaml/compiler-libs/topdirs.cmi
 +lib/ocaml/compiler-libs/toploop.cmi
 +lib/ocaml/compiler-libs/topmain.cmi
 +lib/ocaml/compiler-libs/topstart.cmi
 +lib/ocaml/compiler-libs/topstart.cmo
 +lib/ocaml/compiler-libs/trace.cmi
 +lib/ocaml/compiler-libs/translclass.cmi
 +lib/ocaml/compiler-libs/translcore.cmi
 +lib/ocaml/compiler-libs/translmod.cmi
 +lib/ocaml/compiler-libs/translobj.cmi
 +lib/ocaml/compiler-libs/typeclass.cmi
 +lib/ocaml/compiler-libs/typecore.cmi
 +lib/ocaml/compiler-libs/typedecl.cmi
 +lib/ocaml/compiler-libs/typedtree.cmi
 +lib/ocaml/compiler-libs/typemod.cmi
 +lib/ocaml/compiler-libs/typeopt.cmi
 +lib/ocaml/compiler-libs/types.cmi
 +lib/ocaml/compiler-libs/typetexp.cmi
 +lib/ocaml/compiler-libs/warnings.cmi
  lib/ocaml/complex.cmi
  lib/ocaml/complex.cmx
  lib/ocaml/complex.ml
  lib/ocaml/complex.mli
  %%PROF%%lib/ocaml/complex.p.cmx
  %%THREADS%%lib/ocaml/condition.mli
 -lib/ocaml/dbm.a
 -lib/ocaml/dbm.cma
 -lib/ocaml/dbm.cmi
 -lib/ocaml/dbm.cmx
 -lib/ocaml/dbm.cmxa
 -lib/ocaml/dbm.cmxs
 -lib/ocaml/dbm.mli
  lib/ocaml/digest.cmi
  lib/ocaml/digest.cmx
  lib/ocaml/digest.ml
  lib/ocaml/digest.mli
  %%PROF%%lib/ocaml/digest.p.cmx
  lib/ocaml/dynlink.a
 -lib/ocaml/dynlink.cmx
 -lib/ocaml/dynlink.cmxa
  lib/ocaml/dynlink.cma
  lib/ocaml/dynlink.cmi
 +lib/ocaml/dynlink.cmx
 +lib/ocaml/dynlink.cmxa
  lib/ocaml/dynlink.mli
  %%THREADS%%lib/ocaml/event.mli
  lib/ocaml/expunge
 @@ -671,7 +803,6 @@ lib/ocaml/libcamlrun.a
  lib/ocaml/libcamlrun_shared.so
  lib/ocaml/libcamlstr.a
  %%X11%%lib/ocaml/libgraphics.a
 -lib/ocaml/libmldbm.a
  lib/ocaml/libnums.a
  %%THREADS%%lib/ocaml/libthreads.a
  %%THREADS%%lib/ocaml/libthreadsnat.a
 @@ -721,8 +852,8 @@ lib/ocaml/obj.cmi
  lib/ocaml/obj.cmx
  lib/ocaml/obj.ml
  lib/ocaml/obj.mli
 -lib/ocaml/objinfo_helper
  %%PROF%%lib/ocaml/obj.p.cmx
 +lib/ocaml/objinfo_helper
  lib/ocaml/ocamlbuild/ocamlbuild.cmo
  lib/ocaml/ocamlbuild/ocamlbuild.cmx
  lib/ocaml/ocamlbuild/ocamlbuild.o
 @@ -756,6 +887,7 @@ lib/ocaml/ocamldoc/odoc_dep.cmi
  lib/ocaml/ocamldoc/odoc_dot.cmi
  lib/ocaml/ocamldoc/odoc_env.cmi
  lib/ocaml/ocamldoc/odoc_exception.cmi
 +lib/ocaml/ocamldoc/odoc_gen.cmi
  lib/ocaml/ocamldoc/odoc_global.cmi
  lib/ocaml/ocamldoc/odoc_html.cmi
  lib/ocaml/ocamldoc/odoc_info.a
 @@ -796,8 +928,6 @@ lib/ocaml/oo.cmx
  lib/ocaml/oo.ml
  lib/ocaml/oo.mli
  %%PROF%%lib/ocaml/oo.p.cmx
 -lib/ocaml/outcometree.cmi
 -lib/ocaml/outcometree.mli
  lib/ocaml/parsing.cmi
  lib/ocaml/parsing.cmx
  lib/ocaml/parsing.ml
 @@ -820,6 +950,8 @@ lib/ocaml/printf.mli
  %%PROF%%lib/ocaml/printf.p.cmx
  lib/ocaml/profiling.cmi
  lib/ocaml/profiling.cmo
 +lib/ocaml/profiling.cmx
 +lib/ocaml/profiling.o
  lib/ocaml/queue.cmi
  lib/ocaml/queue.cmx
  lib/ocaml/queue.ml
 @@ -863,7 +995,7 @@ lib/ocaml/std_exit.cmo
  lib/ocaml/std_exit.cmx
  lib/ocaml/std_exit.ml
  lib/ocaml/std_exit.o
 -lib/ocaml/std_exit.p.cmx
 +%%PROF%%lib/ocaml/std_exit.p.cmx
  lib/ocaml/std_exit.p.o
  lib/ocaml/stdlib.a
  lib/ocaml/stdlib.cma
 @@ -893,10 +1025,9 @@ lib/ocaml/stringLabels.ml
  lib/ocaml/stringLabels.mli
  %%PROF%%lib/ocaml/stringLabels.p.cmx
  lib/ocaml/stublibs/dllbigarray.so
 +lib/ocaml/stublibs/dllcamlstr.so
  %%X11%%lib/ocaml/stublibs/dllgraphics.so
  %%TK%%lib/ocaml/stublibs/dlllabltk.so
 -lib/ocaml/stublibs/dllcamlstr.so
 -lib/ocaml/stublibs/dllmldbm.so
  lib/ocaml/stublibs/dllnums.so
  %%THREADS%%lib/ocaml/stublibs/dllthreads.so
  lib/ocaml/stublibs/dllunix.so
 @@ -922,10 +1053,6 @@ lib/ocaml/sys.mli
  %%THREADS%%lib/ocaml/threads/threads.cma
  %%THREADS%%lib/ocaml/threads/threads.cmxa
  lib/ocaml/topdirs.cmi
 -lib/ocaml/toplevellib.cma
 -lib/ocaml/toploop.cmi
 -lib/ocaml/topmain.cmi
 -lib/ocaml/topstart.cmo
  lib/ocaml/unix.a
  lib/ocaml/unix.cma
  lib/ocaml/unix.cmi
 @@ -955,6 +1082,7 @@ lib/ocaml/weak.cmx
  lib/ocaml/weak.ml
  lib/ocaml/weak.mli
  %%PROF%%lib/ocaml/weak.p.cmx
 +%%TK%%%%EXAMPLESDIR%%/examples_camltk/.ignore
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/Makefile
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/Makefile.nt
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/addition.ml
 @@ -972,6 +1100,7 @@ lib/ocaml/weak.mli
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/tetris.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/text.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/winskel.ml
 +%%TK%%%%EXAMPLESDIR%%/examples_labltk/.ignore
  %%TK%%%%EXAMPLESDIR%%/examples_labltk/Lambda2.back.gif
  %%TK%%%%EXAMPLESDIR%%/examples_labltk/Makefile
  %%TK%%%%EXAMPLESDIR%%/examples_labltk/Makefile.nt
 @@ -996,10 +1125,11 @@ lib/ocaml/weak.mli
  @dirrm lib/ocaml/ocamldoc
  @dirrm lib/ocaml/ocamlbuild
  %%TK%%@dirrmtry lib/ocaml/labltk
 +@dirrm lib/ocaml/compiler-libs
  @dirrm lib/ocaml/camlp4/Camlp4Top
  @dirrm lib/ocaml/camlp4/Camlp4Printers
  @dirrm lib/ocaml/camlp4/Camlp4Parsers
  @dirrm lib/ocaml/camlp4/Camlp4Filters
  @dirrm lib/ocaml/camlp4
  @dirrm lib/ocaml/caml
 -@comment lib/ocaml will be added by Makefile
 +@dirrm lib/ocaml
 
 --------------090901090407080507030707--

From: Stanislav Sedov <stas@FreeBSD.org>
To: Michael =?UTF-8?Q?Gr=C3=BCnewald?= <michael.grunewald@laposte.net>
Cc: FreeBSD PR followup <bug-followup@FreeBSD.org>
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Thu, 25 Apr 2013 14:46:16 -0700

 On Tue, 16 Apr 2013 23:24:12 +0200
 Michael Gr__newald <michael.grunewald@laposte.net> mentioned:
 
 > Hi Stanislas,
 > 
 > thank you for message,
 > 
 > Stanislav Sedov wrote:
 > > There're appears to be some style bugs in the last patch
 > > you submitted.  In particular, you used spaces to indent
 > > instead of tabs in numerous places, which can be spotted
 > > in the diff itself.  Can you, please, run the changes through
 > > the portlint and fix those issues?
 > 
 > indeed the patch I submitted was susceptible of improvement___ :)
 > 
 > There is still a warning emitted, caused by the voodoo used to guess
 > documentation file names.
 > 
 > Regards,
 > Michael
 > 
 > 
 > 
 > !DSPAM:516dc18d13142032312706!
 
 Hi!
 
 Sorry for delay, and thanks for the work.
 It looks like you might have send a wrong patch, though.
 This one still contains a lot of spaces instead of tabs
 in some places, e.g. in the PORTVERSION line.
 
 This is a result of a quick run of portlint here:
 
 WARN: /storage0/home/stas/ocaml/pkg-plist: [803]: installing shared libraries, please define USE_LDCONFIG as appropriate
 FATAL: Makefile: [9]: use a tab (not space) after a variable name
 FATAL: Makefile: [13]: use a tab (not space) after a variable name
 FATAL: Makefile: [16]: use a tab (not space) after a variable name
 FATAL: Makefile: [22]: use a tab (not space) after a variable name
 WARN: Makefile: [23]: use a tab (not space) after a variable name
 FATAL: Makefile: [51]: use a tab (not space) after a variable name
 WARN: Makefile: [139]: use ${VARIABLE}, instead of $(VARIABLE).
 WARN: Makefile: [163]: possible direct use of command "install" found. use ${INSTALL_foobaa} instead.
 WARN: Makefile: for new port, make $FreeBSD$ tag in comment section empty, to make SVN happy.
 WARN: Makefile: use of DISTFILES with single file discouraged. distribution filename should be set by DISTNAME and EXTRACT_SUFX.
 WARN: Makefile: DISTFILES/DISTNAME affects WRKSRC. take caution when changing them.
 5 fatal errors and 7 warnings found.
 
 Besides spaces/tabs the DISTFILES line is likely redundant, the value it is set to is
 the default value.
 
 Regarding the patch itself:
 
 > +# Do we want to install documentation
 > +.if !defined(NOPORTDOCS)
 > +
 > +.endif
 
 What is this for?
 
 > -# Add compiler's libs if required
 > -.if defined(WITH_CMP_LIB)
 > -       @${MKDIR}  ${PREFIX}/lib/ocaml/compiler-lib
 > -       @${INSTALL_DATA} ${WRKSRC}/utils/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 > -       @${INSTALL_DATA} ${WRKSRC}/utils/*.o ${PREFIX}/lib/ocaml/compiler-lib
 > -       @${INSTALL_DATA} ${WRKSRC}/parsing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 > -       @${INSTALL_DATA} ${WRKSRC}/parsing/*.o ${PREFIX}/lib/ocaml/compiler-lib
 > -       @${INSTALL_DATA} ${WRKSRC}/typing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 > -       @${INSTALL_DATA} ${WRKSRC}/typing/*.o ${PREFIX}/lib/ocaml/compiler-lib
 > -       @${FIND} ${PREFIX}/lib/ocaml/compiler-lib -type f | \
 > -               ${SED} "s,^${PREFIX}/,," >> ${TMPPLIST}
 > -       @${ECHO_CMD} "@dirrm lib/ocaml/compiler-lib" >> ${TMPPLIST}
 > -.endif
 
 Why we are not installing compiler libraries anymore?
 
 > +.if !defined(NOPORTDOCS)
 > +       ${MKDIR} ${DOCSDIR}
 > +       (cd ${WRKDIR} && ${COPYTREE_SHARE} htmlman ${DOCSDIR})
 > +       ${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.ps.gz ${DOCSDIR}
 
 It makes sense to gunzip the PS file first.  Or maybe not install it at all
 as you're installing the PDF file as well with the same contents.
 
 > +       ${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.pdf ${DOCSDIR}
 > +.endif
 
 > -MAINTAINER?=   michael.grunewald@laposte.net
 > -COMMENT?=      The Objective Caml compiler and programming environment
 > +MAINTAINER=    michipili@gmail.com
 > +COMMENT=       The Objective Caml compiler and programming environment
 
 This variables may be overridden in slave ports.  That's why they conditional.
 Why did you change them?
 
 > --- /dev/null
 > +++ b/ocaml/files/edit_pkg-plist.sed
 > @@ -0,0 +1,6 @@
 > +/.p.cmx$/s@^@%%PROF%%@
 > +/examples_labeltk/{
 > +  s@share/examples@%%EXAMPLESDIR%%@
 > +  s@^@%%TK%%@
 > +}
 > +/graphics/s@^@%%X11%%@
 
 What is the purpose of this file?
 
 Otherise, the patch is looking really good.
 Can you, please, take a look at these issues?
 
 Thanks for the work!
 
 
 -- 
 Stanislav Sedov
 ST4096-RIPE
 
 ()  ascii ribbon campaign - against html e-mail 
 /\  www.asciiribbon.org   - against proprietary attachments

From: Stanislav Sedov <stas@FreeBSD.org>
To: Michael =?UTF-8?B?R3LDvG5ld2FsZA==?= <michael.grunewald@laposte.net>
Cc: FreeBSD PR followup <bug-followup@FreeBSD.org>
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Thu, 25 Apr 2013 14:55:47 -0700

 On Tue, 16 Apr 2013 23:24:12 +0200
 Michael Gr=C3=BCnewald <michael.grunewald@laposte.net> mentioned:
 
 > Hi Stanislas,
 >=20
 > thank you for message,
 >=20
 > Stanislav Sedov wrote:
 > > There're appears to be some style bugs in the last patch
 > > you submitted.  In particular, you used spaces to indent
 > > instead of tabs in numerous places, which can be spotted
 > > in the diff itself.  Can you, please, run the changes through
 > > the portlint and fix those issues?
 >=20
 > indeed the patch I submitted was susceptible of improvement=E2=80=A6 :)
 >=20
 > There is still a warning emitted, caused by the voodoo used to guess
 > documentation file names.
 >=20
 
 As a quick followup it also appears that the pkg-plist is not complete.
 It does not delete the doc/ocaml/htmlman directory on deinstall.
 
 --=20
 Stanislav Sedov
 ST4096-RIPE
 
 ()  ascii ribbon campaign - against html e-mail=20
 /\  www.asciiribbon.org   - against proprietary attachments

From: Dan Cross <crossd@gmail.com>
To: bug-followup@freebsd.org, michael.grunewald@laposte.net
Cc:  
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Mon, 27 May 2013 14:47:57 -0400

 --001a11c377a27f003004ddb7976f
 Content-Type: text/plain; charset=UTF-8
 
 Hi, a gentle ping on this....  I'd love to see ocaml 4.00.1 in the FreeBSD
 ports collection.
 
 --001a11c377a27f003004ddb7976f
 Content-Type: text/html; charset=UTF-8
 Content-Transfer-Encoding: quoted-printable
 
 <div dir=3D"ltr">Hi, a gentle ping on this.... =C2=A0I&#39;d love to see oc=
 aml 4.00.1 in the FreeBSD ports collection.</div>
 
 --001a11c377a27f003004ddb7976f--

From: =?UTF-8?B?TWljaGFlbCBHcsO8bmV3YWxk?=
 <michael.grunewald@laposte.net>
To: Dan Cross <crossd@gmail.com>
Cc: bug-followup@freebsd.org
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Wed, 29 May 2013 19:00:14 +0200

 Dan Cross wrote:
 > Hi, a gentle ping on this....  I'd love to see ocaml 4.00.1 in the
 > FreeBSD ports collection.
 
 Hi Dan, thank you for your interest… I hope, I can find time to handle
 this by the end of the week!

From: =?UTF-8?B?TWljaGFlbCBHcsO8bmV3YWxk?=
 <michael.grunewald@laposte.net>
To: Stanislav Sedov <stas@FreeBSD.org>
Cc: FreeBSD PR followup <bug-followup@FreeBSD.org>, 
 Dan Cross <crossd@gmail.com>
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Thu, 20 Jun 2013 08:27:04 +0200

 This is a multi-part message in MIME format.
 --------------040901080104010601070907
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
 
 Hi!
 
 Sorry about the long time-out… I hope my new patch is somehow clean…
 
 > As a quick followup it also appears that the pkg-plist is not
 complete.> It does not delete the doc/ocaml/htmlman directory on deinstall.
 
 I still have a little issue: the ports uses the PORTDOCS variable which
 seems to require the DOCDIR to be @dirrm'ed at deinstallation.  But many
 other ports put documentation in DOCDIR so, it should be @dirrmtry'ed
 instead:
 
 ===>   Deinstalling ocaml-4.00.1
 pkg_delete: unable to completely remove directory
 '/usr/local/share/doc/ocaml'
 pkg_delete: couldn't entirely delete package `ocaml-4.00.1'
 (perhaps the packing list is incorrectly specified?)
 
 
 Do you have any clue on dealing with this?  Maybe we can move the
 documentation in a subdir of share/doc/ocaml, like
 share/doc/ocaml/ocaml-4.00-refman-html.  Or do you have any better idea?
 
 Cheers!
 Michael
 
 ~~~~~~~~
 Entry for UPDATING:
 
 AFFECTS: users of lang/ocaml and related libraries/applications
 AUTHOR: stas@FreeBSD.org
 
 Ocaml compiler and libraries suite has been updated to 4.00.1.
 There appears to be an ABI incompatibility with .cmi files
 generated by previous compiler versions. Though these should
 only affect the linking process, if some application you're
 using start to misbehave after the lang/ocaml updated you're
 advised to rebuild this applications using the new ocaml version.
 ~~~~~~~~
 
 --------------040901080104010601070907
 Content-Type: text/plain; charset=UTF-8;
  name="patch-ocaml.txt"
 Content-Transfer-Encoding: base64
 Content-Disposition: attachment;
  filename="patch-ocaml.txt"
 
 ZGlmZiAtLWdpdCBhL29jYW1sL01ha2VmaWxlIGIvb2NhbWwvTWFrZWZpbGUKaW5kZXggMDcy
 MTAyZS4uM2YxODkzMiAxMDA2NDQKLS0tIGEvb2NhbWwvTWFrZWZpbGUKKysrIGIvb2NhbWwv
 TWFrZWZpbGUKQEAgLTIsMzYgKzIsNDQgQEAKICMgRGF0ZSBjcmVhdGVkOgkJMjQgRGVjZW1i
 ZXIgMTk5NgogIyBXaG9tOgkJCUtpcml5YW1hIEthenVoaWtvIDxraXJpQGtpcmkudG9iYS1j
 bXQuYWMuanA+CiAjCi0jICRGcmVlQlNEOiBNYWtlZmlsZSAzMTE3NzYgMjAxMy0wMi0wNiAx
 NTo0MjoxNlogZ2FociAkCisjICRGcmVlQlNEOiBwb3J0cy9sYW5nL29jYW1sL01ha2VmaWxl
 LHYgMS43NyAyMDEyLzAyLzIzIDAxOjEwOjI4IGJmIEV4cCAkCiAjCiAKIFBPUlROQU1FPQlv
 Y2FtbAotUE9SVFZFUlNJT049CTMuMTIuMQotUE9SVFJFVklTSU9OPQkxCitQT1JUVkVSU0lP
 Tj0JNC4wMC4xCiBDQVRFR09SSUVTPQlsYW5nCi1NQVNURVJfU0lURVM9CWh0dHA6Ly9jYW1s
 LmlucmlhLmZyL2Rpc3RyaWIvJHtESVNUTkFNRTpSfS8gXAotCQlmdHA6Ly9mdHAuaW5yaWEu
 ZnIvSU5SSUEvY2FtbC1saWdodC8ke0RJU1ROQU1FOlJ9LyBcCi0JCWZ0cDovL2Z0cC5rdXJp
 bXMua3lvdG8tdS5hYy5qcC9wdWIvbGFuZy9jYW1sLWxpZ2h0LyR7RElTVE5BTUU6Un0vIFwK
 K01BU1RFUl9TSVRFUz0JaHR0cDovL2NhbWwuaW5yaWEuZnIvcHViL2Rpc3RyaWIvJHtESVNU
 TkFNRTpSfS8gXAogCQkke01BU1RFUl9TSVRFX0dFTlRPT30KLU1BU1RFUl9TSVRFX1NVQkRJ
 Uj0JZGlzdGZpbGVzCitNQVNURVJfU0lURV9TVUJESVI9ZGlzdGZpbGVzCiBQS0dOQU1FU1VG
 RklYPQkke1NGWH0KK0RJU1RGSUxFUz0JJHtESVNUTkFNRX0ke0VYVFJBQ1RfU1VGWH0KK0VY
 VFJBQ1RfT05MWT0JJHtESVNUTkFNRX0ke0VYVFJBQ1RfU1VGWH0KIAotTUFJTlRBSU5FUj89
 CW1pY2hhZWwuZ3J1bmV3YWxkQGxhcG9zdGUubmV0Ci1DT01NRU5UPz0JVGhlIE9iamVjdGl2
 ZSBDYW1sIGNvbXBpbGVyIGFuZCBwcm9ncmFtbWluZyBlbnZpcm9ubWVudAorTUFJTlRBSU5F
 Uj0JbWljaGlwaWxpQGdtYWlsLmNvbQorQ09NTUVOVD0JVGhlIE9iamVjdGl2ZSBDYW1sIGNv
 bXBpbGVyIGFuZCBwcm9ncmFtbWluZyBlbnZpcm9ubWVudAorCisuaWYgIWRlZmluZWQoTk9Q
 T1JURE9DUykKK0RPQ1NESVNUTkFNRT0JJHtESVNUTkFNRTpDLyhbWzpkaWdpdDpdXSspXC4o
 W1s6ZGlnaXQ6XV0rKVwuKFtbOmRpZ2l0Ol1dKykvXDEuXDIvfQorRElTVEZJTEVTKz0JJHtE
 T0NTRElTVE5BTUV9LXJlZm1hbi1odG1sLnRhci5neiBcCisJCSR7RE9DU0RJU1ROQU1FfS1y
 ZWZtYW4ucHMuZ3ogXAorCQkke0RPQ1NESVNUTkFNRX0tcmVmbWFuLnBkZgorLmVuZGlmCiAK
 IFVTRV9CWklQMj0JeWVzCiBSRUlOUExBQ0VfQVJHUz0JLWkgIiIKIEhBU19DT05GSUdVUkU9
 CXllcwogQUxMX1RBUkdFVD0Jd29ybGQub3B0CiBTVFJJUD0KLU1BS0VfSk9CU19VTlNBRkU9
 CXllcworTUFLRV9KT0JTX1VOU0FGRT15ZXMKIAotQ09ORklHVVJFX0FSR1M9CS12ZXJib3Nl
 IC1wcmVmaXggIiR7UFJFRklYfSIgLWNjICIke0NDfSIgLWFzICIke0FTfSIgXAotCQktYXNw
 cCAiJHtDQ30gLWMiIC1wYXJ0aWFsbGQgIiR7TER9IC1yIgorQ09ORklHVVJFX0FSR1M9CS12
 ZXJib3NlIC1wcmVmaXggIiR7UFJFRklYfSIgXAorCQktY2MgIiR7Q0N9ICR7Q0ZMQUdTfSIg
 XAorCQktYXMgIiR7QVN9ICR7QVNGTEFHU30iIFwKKwkJLWFzcHAgIiR7Q0N9IC1jIiBcCisJ
 CS1wYXJ0aWFsbGQgIiR7TER9IC1yIgogT1BUSU9OUz0JWDExCSJCdWlsZCB3aXRoIFgxMSBz
 dXBwb3J0IiBvbiBcCiAJCVRLCSJCdWlsZCBMYWJsVGsgbGlicmFyeSAocmVxdWlyZXMgWDEx
 IHN1cHBvcnQpIiBvbiBcCiAJCVRIUkVBRFMJIkJ1aWxkIHdpdGggUG9zaXggdGhyZWFkcyBz
 dXBwb3J0IiBvbiBcCi0JCUNNUF9MSUIJIkluc3RhbGwgY29tcGlsZXIncyBsaWJyYXJpZXMi
 IG9mZiBcCiAJCU9QVF9ERUYJIlVzZSBzeXN0ZW0tb3B0aW1pemVkIGJpbmFyaWVzIGJ5IGRl
 ZmF1bHQiIG9mZgogCiBNT0RPUFQ9CQljYW1scDRvIGNhbWxwNHIgb2NhbWxjIG9jYW1sZGVw
 IG9jYW1sZG9jIG9jYW1sbGV4IG9jYW1sb3B0CkBAIC01MSw2ICs1OSwxMyBAQCBQTElTVF9T
 VUIrPQlQUk9GPSIiCiAKIC5pbmNsdWRlICIke0ZJTEVTRElSfS9tYW5maWxlcyIKIAorLmlm
 ICFkZWZpbmVkKE5PUE9SVERPQ1MpCitQTElTVF9TVUIrPQlET0M9IiIKK1BPUlRET0NTID0J
 aHRtbG1hbiAke0RPQ1NESVNUTkFNRX0tcmVmbWFuLnBzLmd6ICR7RE9DU0RJU1ROQU1FfS1y
 ZWZtYW4ucGRmCisuZWxzZQorUExJU1RfU1VCKz0JRE9DPSJAY29tbWVudCAiCisuZW5kaWYK
 KwogLmlmICFkZWZpbmVkKFdJVEhPVVRfVEhSRUFEUykKIFBMSVNUX1NVQis9CVRIUkVBRFM9
 IiIKIFRIUl9DUFA9CSR7UFRIUkVBRF9DRkxBR1N9CkBAIC03NiwyMSArOTEsMjQgQEAgQ09O
 RklHVVJFX0FSR1MrPS1uby14MTEKIAogLmlmIGRlZmluZWQoV0lUSE9VVF9USykKIFBMSVNU
 X1NVQis9CVRLPSJAY29tbWVudCAiCi0uaWYgIWRlZmluZWQoV0lUSE9VVF9YMTEpCisuIGlm
 ICFkZWZpbmVkKFdJVEhPVVRfWDExKQogU0ZYPQkJLW5vdGsKIENPTkZMSUNUUys9CW9jYW1s
 LVswLTldKiBvY2FtbC1ub3gxMS1bMC05XSoKLS5lbmRpZgorLiBlbmRpZgogQ09ORklHVVJF
 X0FSR1MrPS1uby10awotLmVsc2UKKy4gZWxzZQogVVNFX1RLPQkJODQrCiBJTlZBTElEX1RL
 X1ZFUiA9CTg2CisuIGlmIGRlZmluZWQoV0lUSF9USFJFQURTKQorVVNFX1RLX1RIUkVBRFMg
 PQl5ZXMKKy4gZW5kaWYKIC5pbmNsdWRlICIke1BPUlRTRElSfS9Nay9ic2QudGNsLm1rIgog
 UExJU1RfU1VCKz0JVEs9IiIKIENPTkZMSUNUUys9CW9jYW1sLW5veDExLVswLTldKiBvY2Ft
 bC1ub3RrLVswLTldKgogQ09ORklHVVJFX0FSR1MrPQktdGtkZWZzIFwKIAkJCSItSSR7VENM
 X0lOQ0xVREVESVJ9IC1JJHtUS19JTkNMVURFRElSfSAke1RIUl9DUFB9IiBcCi0JCQktdGts
 aWJzICItTCR7TE9DQUxCQVNFfS9saWIgLWx0ayR7VEtfVkVSOlN8Lnx8fSBcCi0JCQktbHRj
 bCR7VENMX1ZFUjpTfC58fH0gJHtUSFJfTER9IgorCQkJLXRrbGlicyAiLUwke0xPQ0FMQkFT
 RX0vbGliIC1sdGske1RLX1ZFUjpTfC58fH0ke19UQ0xfVEhSRUFEU19TVUZGSVh9IFwKKwkJ
 CS1sdGNsJHtUQ0xfVkVSOlN8Lnx8fSR7X1RDTF9USFJFQURTX1NVRkZJWH0gJHtUSFJfTER9
 IgogLmVuZGlmCiAKIC5pZiAke0FSQ0h9ID09IHNwYXJjNjQKQEAgLTEwMSw2ICsxMTksMTQg
 QEAgcG9zdC1leHRyYWN0OgogLmlmICR7QVJDSH0gPT0gcG93ZXIKIAkke01WfSAke1dSS1NS
 Q30vYXNtcnVuL3Bvd2VyLWVsZi5TICR7V1JLU1JDfS9hc21ydW4vcG93ZXItYnNkLlMKIC5l
 bmRpZgorLmlmICFkZWZpbmVkKE5PUE9SVERPQ1MpCisJQGlmICEgKGNkICR7V1JLRElSfSAm
 JiBcCisJICAke1RBUn0geGYgJHtfRElTVERJUn0ke0RPQ1NESVNUTkFNRX0tcmVmbWFuLWh0
 bWwudGFyLmd6IFwKKwkpIFwKKwl0aGVuIFwKKwkgIGV4aXQgMTsgXAorCWZpOworLmVuZGlm
 CiAKIHBvc3QtcGF0Y2g6CiAJQCR7UkVJTlBMQUNFX0NNRH0gXApAQCAtMTU1LDggKzE4MSwx
 NiBAQCBwb3N0LWluc3RhbGw6CiAJCSIhIC1uYW1lIC5jdnNpZ25vcmUiKQogLmVuZGlmCiAK
 LS5mb3IgUFJPRyBpbiBjYW1scDRvLm9wdCBjYW1scDRyLm9wdCBvY2FtbGMub3B0IG9jYW1s
 ZGVwLm9wdCBvY2FtbGRvYy5vcHQgXAotCQlvY2FtbGxleC5vcHQgb2NhbWxvcHQub3B0IG9j
 YW1scnVuIG9jYW1seWFjYworLmlmICFkZWZpbmVkKE5PUE9SVERPQ1MpCisJJHtNS0RJUn0g
 JHtET0NTRElSfQorCShjZCAke1dSS0RJUn0gJiYgJHtDT1BZVFJFRV9TSEFSRX0gaHRtbG1h
 biAke0RPQ1NESVJ9KQorCSR7SU5TVEFMTF9EQVRBfSAke19ESVNURElSfSR7RE9DU0RJU1RO
 QU1FfS1yZWZtYW4ucHMuZ3ogJHtET0NTRElSfQorCSR7SU5TVEFMTF9EQVRBfSAke19ESVNU
 RElSfSR7RE9DU0RJU1ROQU1FfS1yZWZtYW4ucGRmICR7RE9DU0RJUn0KKy5lbmRpZgorCisu
 Zm9yIFBST0cgaW4gY2FtbHA0by5vcHQgY2FtbHA0b2Yub3B0IGNhbWxwNG9vZi5vcHQgY2Ft
 bHA0b3JmLm9wdCBcCisJY2FtbHA0ci5vcHQgY2FtbHA0cmYub3B0IG9jYW1sYy5vcHQgb2Nh
 bWxkZXAub3B0IG9jYW1sZG9jLm9wdCBcCisJb2NhbWxsZXgub3B0IG9jYW1sb3B0Lm9wdCBv
 Y2FtbHJ1biBvY2FtbHlhY2MKIAlAJHtTVFJJUF9DTUR9ICR7UFJFRklYfS9iaW4vJHtQUk9H
 fQogLmVuZGZvcgogCkBAIC0xNzYsMTkgKzIxMCw0IEBAIHBvc3QtaW5zdGFsbDoKIC4gZW5k
 Zm9yCiAuZW5kaWYKIAotIyBBZGQgY29tcGlsZXIncyBsaWJzIGlmIHJlcXVpcmVkCi0uaWYg
 ZGVmaW5lZChXSVRIX0NNUF9MSUIpCi0JQCR7TUtESVJ9ICAke1BSRUZJWH0vbGliL29jYW1s
 L2NvbXBpbGVyLWxpYgotCUAke0lOU1RBTExfREFUQX0gJHtXUktTUkN9L3V0aWxzLyouY20q
 ICR7UFJFRklYfS9saWIvb2NhbWwvY29tcGlsZXItbGliCi0JQCR7SU5TVEFMTF9EQVRBfSAk
 e1dSS1NSQ30vdXRpbHMvKi5vICR7UFJFRklYfS9saWIvb2NhbWwvY29tcGlsZXItbGliCi0J
 QCR7SU5TVEFMTF9EQVRBfSAke1dSS1NSQ30vcGFyc2luZy8qLmNtKiAke1BSRUZJWH0vbGli
 L29jYW1sL2NvbXBpbGVyLWxpYgotCUAke0lOU1RBTExfREFUQX0gJHtXUktTUkN9L3BhcnNp
 bmcvKi5vICR7UFJFRklYfS9saWIvb2NhbWwvY29tcGlsZXItbGliCi0JQCR7SU5TVEFMTF9E
 QVRBfSAke1dSS1NSQ30vdHlwaW5nLyouY20qICR7UFJFRklYfS9saWIvb2NhbWwvY29tcGls
 ZXItbGliCi0JQCR7SU5TVEFMTF9EQVRBfSAke1dSS1NSQ30vdHlwaW5nLyoubyAke1BSRUZJ
 WH0vbGliL29jYW1sL2NvbXBpbGVyLWxpYgotCUAke0ZJTkR9ICR7UFJFRklYfS9saWIvb2Nh
 bWwvY29tcGlsZXItbGliIC10eXBlIGYgfCBcCi0JCSR7U0VEfSAicyxeJHtQUkVGSVh9Lyws
 IiA+PiAke1RNUFBMSVNUfQotCUAke0VDSE9fQ01EfSAiQGRpcnJtIGxpYi9vY2FtbC9jb21w
 aWxlci1saWIiID4+ICR7VE1QUExJU1R9Ci0uZW5kaWYKLQlAJHtFQ0hPX0NNRH0gIkB1bmV4
 ZWMgcm1kaXIgIiVEL2xpYi9vY2FtbCIgMj4vZGV2L251bGwgfHwgdHJ1ZSIgPj4gJHtUTVBQ
 TElTVH0KLQogLmluY2x1ZGUgPGJzZC5wb3J0LnBvc3QubWs+CmRpZmYgLS1naXQgYS9vY2Ft
 bC9kaXN0aW5mbyBiL29jYW1sL2Rpc3RpbmZvCmluZGV4IDQ5ZDhkMTQuLjFhOGZlMGUgMTAw
 NjQ0Ci0tLSBhL29jYW1sL2Rpc3RpbmZvCisrKyBiL29jYW1sL2Rpc3RpbmZvCkBAIC0xLDIg
 KzEsOCBAQAotU0hBMjU2IChvY2FtbC0zLjEyLjEudGFyLmJ6MikgPSBlZGNmNTYzZGE3NWUw
 YjkxZjA5NzY1NjQ5Y2FhOThhYjE1MzVlMGM3NDk4ZjA3MzdiNTU5MWI3ZGUwODQ5NThkCi1T
 SVpFIChvY2FtbC0zLjEyLjEudGFyLmJ6MikgPSAyOTQ5MTI0CitTSEEyNTYgKG9jYW1sLTQu
 MDAuMS50YXIuYnoyKSA9IDMzYzNmNGFjZmY1MTY4NWY1YmZkN2MyNjBmMDY2NjQ1ZTc2N2Q0
 ZTg2NTg3N2JmMTYxM2MxNzZhNzc3OTk5NTEKK1NJWkUgKG9jYW1sLTQuMDAuMS50YXIuYnoy
 KSA9IDI3NjIyMDUKK1NIQTI1NiAob2NhbWwtNC4wMC1yZWZtYW4taHRtbC50YXIuZ3opID0g
 OGNhNDM4NTlkOGE3MWYwOTQxYTI0NTNiN2I4MDhkN2U1OGFkNTQ4MDRhOWNmMjg1ODc1ZmEz
 MGU2NTc2YjMxYQorU0laRSAob2NhbWwtNC4wMC1yZWZtYW4taHRtbC50YXIuZ3opID0gNTQ5
 NzU3CitTSEEyNTYgKG9jYW1sLTQuMDAtcmVmbWFuLnBzLmd6KSA9IDYxNDYyNjRmZWY3YWU3
 M2Y3ZWJiOGRjNDlhM2IxYWRhZTlkNWJkNGY5YTE0YTI2NzBjOWQ0M2Y3ZTZhMjUzYzMKK1NJ
 WkUgKG9jYW1sLTQuMDAtcmVmbWFuLnBzLmd6KSA9IDEwNzU2NTgKK1NIQTI1NiAob2NhbWwt
 NC4wMC1yZWZtYW4ucGRmKSA9IDc2YmEyY2Y2MGE2MDViMjQyN2Y5OTU1NjNmNmRjNmM3ZGJi
 MzliZTZiMDY2ZjZkOTZiMjM5MjZlOGNjOWJhYmMKK1NJWkUgKG9jYW1sLTQuMDAtcmVmbWFu
 LnBkZikgPSAxNDUzNjc4CmRpZmYgLS1naXQgYS9vY2FtbC9maWxlcy9lZGl0X3BrZy1wbGlz
 dC5zZWQgYi9vY2FtbC9maWxlcy9lZGl0X3BrZy1wbGlzdC5zZWQKbmV3IGZpbGUgbW9kZSAx
 MDA2NDQKaW5kZXggMDAwMDAwMC4uNjI2MjAzMAotLS0gL2Rldi9udWxsCisrKyBiL29jYW1s
 L2ZpbGVzL2VkaXRfcGtnLXBsaXN0LnNlZApAQCAtMCwwICsxLDYgQEAKKy8ucC5jbXgkL3NA
 XkAlJVBST0YlJUAKKy9leGFtcGxlc19sYWJlbHRrL3sKKyAgc0BzaGFyZS9leGFtcGxlc0Al
 JUVYQU1QTEVTRElSJSVACisgIHNAXkAlJVRLJSVACit9CisvZ3JhcGhpY3Mvc0BeQCUlWDEx
 JSVACmRpZmYgLS1naXQgYS9vY2FtbC9maWxlcy9tYW5maWxlcyBiL29jYW1sL2ZpbGVzL21h
 bmZpbGVzCmluZGV4IGMxOWY4NmYuLmIyYzI2YmIgMTAwNjQ0Ci0tLSBhL29jYW1sL2ZpbGVz
 L21hbmZpbGVzCisrKyBiL29jYW1sL2ZpbGVzL21hbmZpbGVzCkBAIC04LDkxICs4LDk0IEBA
 IE1BTjE9CW9jYW1sLjEgXAogCW9jYW1sbGV4LjEgXAogCW9jYW1sbWt0b3AuMSBcCiAJb2Nh
 bWxvcHQuMSBcCisJb2NhbWxvcHRwLjEgXAogCW9jYW1scHJvZi4xIFwKIAlvY2FtbHJ1bi4x
 IFwKIAlvY2FtbHlhY2MuMQogCi1NQU5OPQlBcmcubiBcCi0JQXJyYXkubiBcCi0JQXJyYXlM
 YWJlbHMubiBcCi0JQmlnYXJyYXkuQXJyYXkxLm4gXAotCUJpZ2FycmF5LkFycmF5Mi5uIFwK
 LQlCaWdhcnJheS5BcnJheTMubiBcCi0JQmlnYXJyYXkuR2VuYXJyYXkubiBcCi0JQmlnYXJy
 YXkubiBcCi0JQnVmZmVyLm4gXAotCUNhbGxiYWNrLm4gXAotCUNhbWxpbnRlcm5hbE9PLm4g
 XAotCUNhbWxpbnRlcm5hbExhenkubiBcCi0JQ2FtbGludGVybmFsTW9kLm4gXAotCUNoYXIu
 biBcCi0JQ29tcGxleC5uIFwKLQlEaWdlc3QubiBcCi0JRmlsZW5hbWUubiBcCi0JRm9ybWF0
 Lm4gXAotCUdjLm4gXAotCUdlbmxleC5uIFwKLQlIYXNodGJsLkhhc2hlZFR5cGUubiBcCi0J
 SGFzaHRibC5NYWtlLm4gXAotCUhhc2h0YmwuUy5uIFwKLQlIYXNodGJsLm4gXAotCUludDMy
 Lm4gXAotCUludDY0Lm4gXAotCUxhenkubiBcCi0JTGV4aW5nLm4gXAotCUxpc3QubiBcCi0J
 TGlzdExhYmVscy5uIFwKLQlNYXAuTWFrZS5uIFwKLQlNYXAuT3JkZXJlZFR5cGUubiBcCi0J
 TWFwLlMubiBcCi0JTWFwLm4gXAotCU1hcnNoYWwubiBcCi0JTW9yZUxhYmVscy5IYXNodGJs
 Lkhhc2hlZFR5cGUubiBcCi0JTW9yZUxhYmVscy5IYXNodGJsLk1ha2UubiBcCi0JTW9yZUxh
 YmVscy5IYXNodGJsLlMubiBcCi0JTW9yZUxhYmVscy5IYXNodGJsLm4gXAotCU1vcmVMYWJl
 bHMuTWFwLk1ha2UubiBcCi0JTW9yZUxhYmVscy5NYXAuT3JkZXJlZFR5cGUubiBcCi0JTW9y
 ZUxhYmVscy5NYXAuUy5uIFwKLQlNb3JlTGFiZWxzLk1hcC5uIFwKLQlNb3JlTGFiZWxzLlNl
 dC5NYWtlLm4gXAotCU1vcmVMYWJlbHMuU2V0Lk9yZGVyZWRUeXBlLm4gXAotCU1vcmVMYWJl
 bHMuU2V0LlMubiBcCi0JTW9yZUxhYmVscy5TZXQubiBcCi0JTW9yZUxhYmVscy5uIFwKLQlO
 YXRpdmVpbnQubiBcCi0JTnVtLm4gXAotCU9iai5uIFwKLQlPby5uIFwKLQlQYXJzaW5nLm4g
 XAotCVBlcnZhc2l2ZXMuTGFyZ2VGaWxlLm4gXAotCVBlcnZhc2l2ZXMubiBcCi0JUHJpbnRl
 eGMubiBcCi0JUHJpbnRmLm4gXAotCVF1ZXVlLm4gXAotCVJhbmRvbS5uIFwKLQlSYW5kb20u
 U3RhdGUubiBcCi0JU2NhbmYuU2Nhbm5pbmcubiBcCi0JU2NhbmYubiBcCi0JU2V0Lk1ha2Uu
 biBcCi0JU2V0Lk9yZGVyZWRUeXBlLm4gXAotCVNldC5TLm4gXAotCVNldC5uIFwKLQlTb3J0
 Lm4gXAotCVN0YWNrLm4gXAotCVN0ZExhYmVscy5BcnJheS5uIFwKLQlTdGRMYWJlbHMuTGlz
 dC5uIFwKLQlTdGRMYWJlbHMuU3RyaW5nLm4gXAotCVN0ZExhYmVscy5uIFwKLQlTdHIubiBc
 Ci0JU3RyZWFtLm4gXAotCVN0cmluZy5uIFwKLQlTdHJpbmdMYWJlbHMubiBcCi0JU3lzLm4g
 XAotCVVuaXguTGFyZ2VGaWxlLm4gXAotCVVuaXgubiBcCi0JV2Vhay5NYWtlLm4gXAotCVdl
 YWsuUy5uIFwKLQlXZWFrLm4KK01BTk49CUFyZy4zbyBcCisJQXJyYXkuM28gXAorCUFycmF5
 TGFiZWxzLjNvIFwKKwlCaWdhcnJheS4zbyBcCisJQmlnYXJyYXkuQXJyYXkxLjNvIFwKKwlC
 aWdhcnJheS5BcnJheTIuM28gXAorCUJpZ2FycmF5LkFycmF5My4zbyBcCisJQmlnYXJyYXku
 R2VuYXJyYXkuM28gXAorCUJ1ZmZlci4zbyBcCisJQ2FsbGJhY2suM28gXAorCUNhbWxpbnRl
 cm5hbExhenkuM28gXAorCUNhbWxpbnRlcm5hbE1vZC4zbyBcCisJQ2FtbGludGVybmFsT08u
 M28gXAorCUNvbXBsZXguM28gXAorCURpZ2VzdC4zbyBcCisJRmlsZW5hbWUuM28gXAorCUZv
 cm1hdC4zbyBcCisJR2MuM28gXAorCUdlbmxleC4zbyBcCisJSGFzaHRibC4zbyBcCisJSGFz
 aHRibC5IYXNoZWRUeXBlLjNvIFwKKwlIYXNodGJsLk1ha2UuM28gXAorCUhhc2h0YmwuTWFr
 ZVNlZWRlZC4zbyBcCisJSGFzaHRibC5TLjNvIFwKKwlIYXNodGJsLlNlZWRlZEhhc2hlZFR5
 cGUuM28gXAorCUhhc2h0YmwuU2VlZGVkUy4zbyBcCisJSW50MzIuM28gXAorCUludDY0LjNv
 IFwKKwlMZXhpbmcuM28gXAorCUxpc3QuM28gXAorCUxpc3RMYWJlbHMuM28gXAorCU1hcC4z
 byBcCisJTWFwLk1ha2UuM28gXAorCU1hcC5PcmRlcmVkVHlwZS4zbyBcCisJTWFwLlMuM28g
 XAorCU1hcnNoYWwuM28gXAorCU1vcmVMYWJlbHMuM28gXAorCU1vcmVMYWJlbHMuSGFzaHRi
 bC4zbyBcCisJTW9yZUxhYmVscy5IYXNodGJsLkhhc2hlZFR5cGUuM28gXAorCU1vcmVMYWJl
 bHMuSGFzaHRibC5NYWtlLjNvIFwKKwlNb3JlTGFiZWxzLkhhc2h0YmwuTWFrZVNlZWRlZC4z
 byBcCisJTW9yZUxhYmVscy5IYXNodGJsLlMuM28gXAorCU1vcmVMYWJlbHMuSGFzaHRibC5T
 ZWVkZWRIYXNoZWRUeXBlLjNvIFwKKwlNb3JlTGFiZWxzLkhhc2h0YmwuU2VlZGVkUy4zbyBc
 CisJTW9yZUxhYmVscy5NYXAuM28gXAorCU1vcmVMYWJlbHMuTWFwLk1ha2UuM28gXAorCU1v
 cmVMYWJlbHMuTWFwLk9yZGVyZWRUeXBlLjNvIFwKKwlNb3JlTGFiZWxzLk1hcC5TLjNvIFwK
 KwlNb3JlTGFiZWxzLlNldC4zbyBcCisJTW9yZUxhYmVscy5TZXQuTWFrZS4zbyBcCisJTW9y
 ZUxhYmVscy5TZXQuT3JkZXJlZFR5cGUuM28gXAorCU1vcmVMYWJlbHMuU2V0LlMuM28gXAor
 CU5hdGl2ZWludC4zbyBcCisJTnVtLjNvIFwKKwlPYmouM28gXAorCU9vLjNvIFwKKwlQYXJz
 aW5nLjNvIFwKKwlQZXJ2YXNpdmVzLjNvIFwKKwlQZXJ2YXNpdmVzLkxhcmdlRmlsZS4zbyBc
 CisJUHJpbnRleGMuM28gXAorCVByaW50Zi4zbyBcCisJUXVldWUuM28gXAorCVJhbmRvbS4z
 byBcCisJUmFuZG9tLlN0YXRlLjNvIFwKKwlTY2FuZi4zbyBcCisJU2NhbmYuU2Nhbm5pbmcu
 M28gXAorCVNldC5NYWtlLjNvIFwKKwlTZXQuT3JkZXJlZFR5cGUuM28gXAorCVNldC5TLjNv
 IFwKKwlTb3J0LjNvIFwKKwlTdGFjay4zbyBcCisJU3RkTGFiZWxzLjNvIFwKKwlTdGRMYWJl
 bHMuQXJyYXkuM28gXAorCVN0ZExhYmVscy5MaXN0LjNvIFwKKwlTdGRMYWJlbHMuU3RyaW5n
 LjNvIFwKKwlTdHIuM28gXAorCVN0cmVhbS4zbyBcCisJU3RyaW5nTGFiZWxzLjNvIFwKKwlT
 eXMuM28gXAorCVVuaXguM28gXAorCVVuaXguTGFyZ2VGaWxlLjNvIFwKKwlXZWFrLjNvIFwK
 KwlXZWFrLk1ha2UuM28gXAorCVdlYWsuUy4zbwogCiBNTElOS1M9CW9jYW1sYy4xIG9jYW1s
 Yy5vcHQuMSBvY2FtbG9wdC4xIG9jYW1sb3B0Lm9wdC4xCmRpZmYgLS1naXQgYS9vY2FtbC9m
 aWxlcy9wYXRjaC1NYWtlZmlsZSBiL29jYW1sL2ZpbGVzL3BhdGNoLU1ha2VmaWxlCmRlbGV0
 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZGEzYjJmLi4wMDAwMDAwCi0tLSBhL29jYW1s
 L2ZpbGVzL3BhdGNoLU1ha2VmaWxlCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAot
 LS0tIE1ha2VmaWxlLm9yaWcJMjAxMC0wNi0xNiAwMzozMjoyNi4wMDAwMDAwMDAgKzAyMDAK
 LSsrKyBNYWtlZmlsZQkyMDExLTEyLTE0IDEwOjAyOjA1Ljc0NTA3NjQ2OCArMDEwMAotQEAg
 LTI4OCw3ICsyODgsNyBAQAotIAljcCBsZXgvb2NhbWxsZXggJChCSU5ESVIpL29jYW1sbGV4
 JChFWEUpCi0gCWNwIHlhY2Mvb2NhbWx5YWNjJChFWEUpICQoQklORElSKS9vY2FtbHlhY2Mk
 KEVYRSkKLSAJY3AgdG9wbGV2ZWwvdG9wbGV2ZWxsaWIuY21hICQoTElCRElSKS90b3BsZXZl
 bGxpYi5jbWEKLS0JY3AgZXhwdW5nZSAkKExJQkRJUikvZXhwdW5nZSQoRVhFKQotKwkke0JT
 RF9JTlNUQUxMX1NDUklQVH0gZXhwdW5nZSAkKExJQkRJUikvZXhwdW5nZSQoRVhFKQotIAlj
 cCB0eXBpbmcvb3V0Y29tZXRyZWUuY21pIHR5cGluZy9vdXRjb21ldHJlZS5tbGkgJChMSUJE
 SVIpCi0gCWNwIHRvcGxldmVsL3RvcHN0YXJ0LmNtbyAkKExJQkRJUikKLSAJY3AgdG9wbGV2
 ZWwvdG9wbG9vcC5jbWkgdG9wbGV2ZWwvdG9wZGlycy5jbWkgdG9wbGV2ZWwvdG9wbWFpbi5j
 bWkgXApkaWZmIC0tZ2l0IGEvb2NhbWwvZmlsZXMvcGF0Y2gtY29uZmlnLWF1dG8tYXV4LWFz
 eW5jX2lvLmMgYi9vY2FtbC9maWxlcy9wYXRjaC1jb25maWctYXV0by1hdXgtYXN5bmNfaW8u
 YwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYTBmY2RkCi0tLSAvZGV2
 L251bGwKKysrIGIvb2NhbWwvZmlsZXMvcGF0Y2gtY29uZmlnLWF1dG8tYXV4LWFzeW5jX2lv
 LmMKQEAgLTAsMCArMSwxMCBAQAorLS0tIGNvbmZpZy9hdXRvLWF1eC9hc3luY19pby5jCTIw
 MTItMTEtMDEgMTc6MzY6MDIuMDAwMDAwMDAwICswMTAwCisrKysgY29uZmlnL2F1dG8tYXV4
 L2FzeW5jX2lvLmMub3JpZwkyMDEyLTExLTAxIDE3OjM1OjQ2LjAwMDAwMDAwMCArMDEwMAor
 QEAgLTEzLDcgKzEzLDggQEAKKyAKKyAvKiAkSWQ6IGFzeW5jX2lvLmMgMTExNTYgMjAxMS0w
 Ny0yNyAxNDoxNzowMlogZG9saWdleiAkICovCisgCisrI2luY2x1ZGUgPHN0ZGxpYi5oPgor
 ICNpbmNsdWRlIDxzdGRpby5oPgorICNpbmNsdWRlIDxmY250bC5oPgorICNpbmNsdWRlIDxz
 aWduYWwuaD4KZGlmZiAtLWdpdCBhL29jYW1sL2ZpbGVzL3BhdGNoLWNvbmZpZ3VyZSBiL29j
 YW1sL2ZpbGVzL3BhdGNoLWNvbmZpZ3VyZQppbmRleCA0MzY4OWFkLi5lMTNhY2FlIDEwMDY0
 NAotLS0gYS9vY2FtbC9maWxlcy9wYXRjaC1jb25maWd1cmUKKysrIGIvb2NhbWwvZmlsZXMv
 cGF0Y2gtY29uZmlndXJlCkBAIC0xLDE3ICsxLDE1IEBACi0kRnJlZUJTRDogZmlsZXMvcGF0
 Y2gtY29uZmlndXJlIDMwMDg5NiAyMDEyLTA3LTE0IDEzOjU0OjQ4WiBiZWF0ICQKLQotLS0t
 IGNvbmZpZ3VyZS5vcmlnCTIwMTEtMDctMDQgMjI6MTU6MDEuMDAwMDAwMDAwICswMTAwCi0r
 KysgY29uZmlndXJlCTIwMTItMDEtMTUgMjA6Mjk6MzAuMzE5Njc0ODAzICswMDAwCi1AQCAt
 ODUsNiArODUsOCBAQAorLS0tIGNvbmZpZ3VyZS5vcmlnCTIwMTItMTEtMDEgMTc6MTQ6NTUu
 MDAwMDAwMDAwICswMTAwCisrKysgY29uZmlndXJlCTIwMTItMTEtMDEgMTc6MjM6NDQuMDAw
 MDAwMDAwICswMTAwCitAQCAtODgsNiArODgsOCBAQAogICAgICAgICAgd2l0aGN1cnNlcz1u
 bzs7Ci0gICAgIC1uby1zaGFyZWQtbGlicykKKyAgICAgLW5vLXNoYXJlZC1saWJzfC0tbm8t
 c2hhcmVkLWxpYnMpCiAgICAgICAgICB3aXRoc2hhcmVkbGlicz1ubzs7CiArICAgIC1uby14
 MTF8LS1uby14MTEpCiArICAgICAgICB4MTFfd2FudGVkPW5vOzsKICAgICAgLXgxMWluY2x1
 ZGUqfC0teDExaW5jbHVkZSopCiAgICAgICAgICB4MTFfaW5jbHVkZV9kaXI9JDI7IHNoaWZ0
 OzsKICAgICAgLXgxMWxpYip8LS14MTFsaWIqKQotQEAgLTUyMSw3ICs1MjMsNyBAQAorQEAg
 LTUzNyw3ICs1MzksNyBAQAogICAgICAgIG1rc2hhcmVkbGliPSIkZmxleGxpbmsiCiAgICAg
 ICAgbWttYWluZGxsPSIkZmxleGxpbmsgLW1haW5kbGwiCiAgICAgICAgc2hhcmVkX2xpYnJh
 cmllc19zdXBwb3J0ZWQ9dHJ1ZTs7CkBAIC0yMCwxODEgKzE4LDE5IEBAICRGcmVlQlNEOiBm
 aWxlcy9wYXRjaC1jb25maWd1cmUgMzAwODk2IDIwMTItMDctMTQgMTM6NTQ6NDhaIGJlYXQg
 JAogICAgICAgIHNoYXJlZGNjY29tcG9wdHM9Ii1mUElDIgogICAgICAgIG1rc2hhcmVkbGli
 PSIkYnl0ZWNjIC1zaGFyZWQiCiAgICAgICAgYnl0ZWNjbGlua29wdHM9IiRieXRlY2NsaW5r
 b3B0cyAtV2wsLUUiCi1AQCAtNjM2LDYgKzYzOCw3IEBACi0gICAgIGlbMzQ1XTg2LSotbmV0
 YnNkKikgICAgICAgICAgIG5hdGR5bmxpbms9dHJ1ZTs7Ci0gICAgIHg4Nl82NC0qLW5ldGJz
 ZCopICAgICAgICAgICAgIG5hdGR5bmxpbms9dHJ1ZTs7Ci0gICAgIGkzODYtKi1nbnUwLjMp
 ICAgICAgICAgICAgICAgIG5hdGR5bmxpbms9dHJ1ZTs7Ci0rICAgICotKi1mcmVlYnNkKikg
 ICAgICAgICAgICAgICAgIG5hdGR5bmxpbms9dHJ1ZTs7Ci0gICBlc2FjCi0gZmkKLSAKLUBA
 IC02ODcsNiArNjkwLDcgQEAKLSAgIGhwcGEqLSotZ251KikgICAgICAgICAgICAgICAgIGFy
 Y2g9aHBwYTsgc3lzdGVtPWdudTs7CitAQCAtNjg3LDYgKzY4OSw3IEBACisgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICBmaTs7CisgICBpWzM0NTZdODYtKi1nbnUqKSAgICAg
 ICAgICAgICBhcmNoPWkzODY7IHN5c3RlbT1nbnU7OwogICAgcG93ZXJwYyotKi1saW51eCop
 ICAgICAgICAgICAgYXJjaD1wb3dlcjsgbW9kZWw9cHBjOyBzeXN0ZW09ZWxmOzsKKysgIHBv
 d2VycGMtKi1mcmVlYnNkKikgICAgICAgICAgIGFyY2g9cG93ZXI7IG1vZGVsPXBwYzsgc3lz
 dGVtPWVsZjs7CiAgICBwb3dlcnBjLSotbmV0YnNkKikgICAgICAgICAgICBhcmNoPXBvd2Vy
 OyBtb2RlbD1wcGM7IHN5c3RlbT1lbGY7OwotKyAgcG93ZXJwYy0qLWZyZWVic2QqKSAgICAg
 ICAgICAgYXJjaD1wb3dlcjsgbW9kZWw9cHBjOyBzeXN0ZW09YnNkOzsKICAgIHBvd2VycGMt
 Ki1yaGFwc29keSopICAgICAgICAgIGFyY2g9cG93ZXI7IG1vZGVsPXBwYzsgc3lzdGVtPXJo
 YXBzb2R5OzsKICAgIHBvd2VycGMtKi1kYXJ3aW4qKSAgICAgICAgICAgIGFyY2g9cG93ZXI7
 IHN5c3RlbT1yaGFwc29keQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYg
 JGFyY2g2NDsgdGhlbiBtb2RlbD1wcGM2NDsgZWxzZSBtb2RlbD1wcGM7IGZpOzsKLUBAIC03
 OTYsNiArODAwLDcgQEAKLSAgIGkzODYsKixic2RfZWxmKSBwcm9maWxpbmc9J3Byb2YnOzsK
 LSAgIGFtZDY0LCosbWFjb3N4KSBwcm9maWxpbmc9J3Byb2YnOzsKLSAgIGkzODYsKixtYWNv
 c3gpIHByb2ZpbGluZz0ncHJvZic7OworQEAgLTc4Niw2ICs3ODksNyBAQAorICAgYW1kNjQs
 KixsaW51eCkgcHJvZmlsaW5nPSdwcm9mJzs7CisgICBhbWQ2NCwqLGdudSkgcHJvZmlsaW5n
 PSdwcm9mJzs7CisgICBhcm0sKixsaW51eCopIHByb2ZpbGluZz0ncHJvZic7OwogKyAgKiwq
 LGZyZWVic2QpIHByb2ZpbGluZz0ncHJvZic7OwotICAgc3BhcmMsKixzb2xhcmlzKQotICAg
 ICBwcm9maWxpbmc9J3Byb2YnCi0gICAgIGNhc2UgIiRuYXRpdmVjYyIgaW4gZ2NjKikgOzsg
 KikgY2NfcHJvZmlsZT0nLXhwZyc7OyBlc2FjOzsKLUBAIC0xMjU2LDEzMyArMTI2MSwyNCBA
 QAotIHgxMV9pbmNsdWRlPSJub3QgZm91bmQiCi0geDExX2xpbms9Im5vdCBmb3VuZCIKLSAK
 LS1mb3IgZGlyIGluIFwKLS0gICAgJHgxMV9pbmNsdWRlX2RpciAgICAgICAgICBcCi0tICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAgICAvdXNyL1gxMVI3L2luY2x1ZGUg
 ICAgICAgIFwKLS0gICAgL3Vzci9pbmNsdWRlL1gxMVI3ICAgICAgICBcCi0tICAgIC91c3Iv
 bG9jYWwvWDExUjcvaW5jbHVkZSAgXAotLSAgICAvdXNyL2xvY2FsL2luY2x1ZGUvWDExUjcg
 IFwKLS0gICAgL29wdC9YMTFSNy9pbmNsdWRlICAgICAgICBcCi0tICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgXAotLSAgICAvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIFwKLS0g
 ICAgL3Vzci9pbmNsdWRlL1gxMVI2ICAgICAgICBcCi0tICAgIC91c3IvbG9jYWwvWDExUjYv
 aW5jbHVkZSAgXAotLSAgICAvdXNyL2xvY2FsL2luY2x1ZGUvWDExUjYgIFwKLS0gICAgL29w
 dC9YMTFSNi9pbmNsdWRlICAgICAgICBcCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgXAotLSAgICAvdXNyL1gxMS9pbmNsdWRlICAgICAgICAgIFwKLS0gICAgL3Vzci9pbmNs
 dWRlL1gxMSAgICAgICAgICBcCi0tICAgIC91c3IvbG9jYWwvWDExL2luY2x1ZGUgICAgXAot
 LSAgICAvdXNyL2xvY2FsL2luY2x1ZGUvWDExICAgIFwKLS0gICAgL29wdC9YMTEvaW5jbHVk
 ZSAgICAgICAgICBcCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAgICAv
 dXNyL1gxMVI1L2luY2x1ZGUgICAgICAgIFwKLS0gICAgL3Vzci9pbmNsdWRlL1gxMVI1ICAg
 ICAgICBcCi0tICAgIC91c3IvbG9jYWwvWDExUjUvaW5jbHVkZSAgXAotLSAgICAvdXNyL2xv
 Y2FsL2luY2x1ZGUvWDExUjUgIFwKLS0gICAgL3Vzci9sb2NhbC94MTFyNS9pbmNsdWRlICBc
 Ci0tICAgIC9vcHQvWDExUjUvaW5jbHVkZSAgICAgICAgXAotLSAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIFwKLS0gICAgL3Vzci9YMTFSNC9pbmNsdWRlICAgICAgICBcCi0tICAg
 IC91c3IvaW5jbHVkZS9YMTFSNCAgICAgICAgXAotLSAgICAvdXNyL2xvY2FsL1gxMVI0L2lu
 Y2x1ZGUgIFwKLS0gICAgL3Vzci9sb2NhbC9pbmNsdWRlL1gxMVI0ICBcCi0tICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgXAotLSAgICAvdXNyL1gzODYvaW5jbHVkZSAgICAgICAg
 IFwKLS0gICAgL3Vzci94Mzg2L2luY2x1ZGUgICAgICAgICBcCi0tICAgIC91c3IvWEZyZWU4
 Ni9pbmNsdWRlL1gxMSAgXAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLS0g
 ICAgL3Vzci9pbmNsdWRlICAgICAgICAgICAgICBcCi0tICAgIC91c3IvbG9jYWwvaW5jbHVk
 ZSAgICAgICAgXAotLSAgICAvdXNyL3Vuc3VwcG9ydGVkL2luY2x1ZGUgIFwKLS0gICAgL3Vz
 ci9hdGhlbmEvaW5jbHVkZSAgICAgICBcCi0tICAgIC91c3IvbHBwL1hhbXBsZXMvaW5jbHVk
 ZSAgXAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLS0gICAgL3Vzci9vcGVu
 d2luL2luY2x1ZGUgICAgICBcCi0tICAgIC91c3Ivb3Blbndpbi9zaGFyZS9pbmNsdWRlIFwK
 LS0gICAgOyBcCi0tZG8KLS0gIGlmIHRlc3QgLWYgJGRpci9YMTEvWC5oOyB0aGVuCi0tICAg
 IHgxMV9pbmNsdWRlPSRkaXIKLS0gICAgYnJlYWsKLS0gIGZpCi0tZG9uZQotLQotLWlmIHRl
 c3QgIiR4MTFfaW5jbHVkZSIgPSAibm90IGZvdW5kIjsgdGhlbgotLSAgeDExX3RyeV9saWJf
 ZGlyPScnCi0tZWxzZQotLSAgeDExX3RyeV9saWJfZGlyPWBlY2hvICR4MTFfaW5jbHVkZSB8
 IHNlZCAtZSAnc3xpbmNsdWRlfGxpYnwnYAotK2lmIFsgLW4gIiR4MTFfaW5jbHVkZV9kaXIi
 IF07IHRoZW4KLSsgIHgxMV9pbmNsdWRlPSIkeDExX2luY2x1ZGVfZGlyIgotIGZpCi0gCi0t
 Zm9yIGRpciBpbiBcCi0tICAgICR4MTFfbGliX2RpciAgICAgICAgICBcCi0tICAgICR4MTFf
 dHJ5X2xpYl9kaXIgICAgICBcCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAg
 IC91c3IvWDExUjYvbGliNjQgICAgICBcCi0tICAgIC91c3IvWDExUjYvbGliICAgICAgICBc
 Ci0tICAgIC91c3IvbGliL1gxMVI2ICAgICAgICBcCi0tICAgIC91c3IvbG9jYWwvWDExUjYv
 bGliICBcCi0tICAgIC91c3IvbG9jYWwvbGliL1gxMVI2ICBcCi0tICAgIC9vcHQvWDExUjYv
 bGliICAgICAgICBcCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAgIC91c3Iv
 WDExL2xpYiAgICAgICAgICBcCi0tICAgIC91c3IvbGliL1gxMSAgICAgICAgICBcCi0tICAg
 IC91c3IvbG9jYWwvWDExL2xpYiAgICBcCi0tICAgIC91c3IvbG9jYWwvbGliL1gxMSAgICBc
 Ci0tICAgIC9vcHQvWDExL2xpYiAgICAgICAgICBcCi0tICAgICAgICAgICAgICAgICAgICAg
 ICAgICBcCi0tICAgIC91c3IvWDExUjUvbGliICAgICAgICBcCi0tICAgIC91c3IvbGliL1gx
 MVI1ICAgICAgICBcCi0tICAgIC91c3IvbG9jYWwvWDExUjUvbGliICBcCi0tICAgIC91c3Iv
 bG9jYWwvbGliL1gxMVI1ICBcCi0tICAgIC91c3IvbG9jYWwveDExcjUvbGliICBcCi0tICAg
 IC9vcHQvWDExUjUvbGliICAgICAgICBcCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBc
 Ci0tICAgIC91c3IvWDExUjQvbGliICAgICAgICBcCi0tICAgIC91c3IvbGliL1gxMVI0ICAg
 ICAgICBcCi0tICAgIC91c3IvbG9jYWwvWDExUjQvbGliICBcCi0tICAgIC91c3IvbG9jYWwv
 bGliL1gxMVI0ICBcCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAgIC91c3Iv
 WDM4Ni9saWIgICAgICAgICBcCi0tICAgIC91c3IveDM4Ni9saWIgICAgICAgICBcCi0tICAg
 IC91c3IvWEZyZWU4Ni9saWIvWDExICBcCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBc
 Ci0tICAgIC91c3IvbGliNjQgICAgICAgICAgICBcCi0tICAgIC91c3IvbGliICAgICAgICAg
 ICAgICBcCi0tICAgIC91c3IvbG9jYWwvbGliICAgICAgICBcCi0tICAgIC91c3IvdW5zdXBw
 b3J0ZWQvbGliICBcCi0tICAgIC91c3IvYXRoZW5hL2xpYiAgICAgICBcCi0tICAgIC91c3Iv
 bHBwL1hhbXBsZXMvbGliICBcCi0tICAgIC9saWIvdXNyL2xpYi9YMTEgICAgICBcCi0tICAg
 ICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAgIC91c3Ivb3Blbndpbi9saWIgICAgICBc
 Ci0tICAgIC91c3Ivb3Blbndpbi9zaGFyZS9saWIgXAotLSAgICA7IFwKLS1kbwotLSAgaWYg
 dGVzdCAtZiAkZGlyL2xpYlgxMS5hIHx8IFwKLS0gICAgIHRlc3QgLWYgJGRpci9saWJYMTEu
 c28gfHwgXAotLSAgICAgdGVzdCAtZiAkZGlyL2xpYlgxMS5kbGwuYSB8fCBcCi0tICAgICB0
 ZXN0IC1mICRkaXIvbGliWDExLmR5bGliIHx8IFwKLS0gICAgIHRlc3QgLWYgJGRpci9saWJY
 MTEuc2E7IHRoZW4KLS0gICAgaWYgdGVzdCAkZGlyID0gL3Vzci9saWI7IHRoZW4KLS0gICAg
 ICB4MTFfbGluaz0iLWxYMTEiCi0tICAgIGVsc2UKLS0gICAgICB4MTFfbGlicz0iLUwkZGly
 IgotLSAgICAgIGNhc2UgIiRob3N0IiBpbgotLSAgICAgICAgKi0qLSpic2QqKSB4MTFfbGlu
 az0iLVIkZGlyIC1MJGRpciAtbFgxMSI7OwotLSAgICAgICAgKikgeDExX2xpbms9Ii1MJGRp
 ciAtbFgxMSI7OwotLSAgICAgIGVzYWMKLS0gICAgZmkKLS0gICAgYnJlYWsKLS0gIGZpCi0t
 ZG9uZQotLQotK2lmIFsgLW4gIiR4MTFfbGliX2RpciIgXTsgdGhlbgotKyAgeDExX2xpbms9
 Ii1MJHgxMV9saWJfZGlyIC1sWDExIgotKyAgeDExX2xpYnM9Ii1MJHgxMV9saWJfZGlyIgot
 K2ZpCisgICAqKSBwcm9maWxpbmc9J25vcHJvZic7OworIGVzYWMKICAKLSBpZiB0ZXN0ICIk
 eDExX2luY2x1ZGUiID0gIm5vdCBmb3VuZCIgfHwgdGVzdCAiJHgxMV9saW5rIiA9ICJub3Qg
 Zm91bmQiCi0gdGhlbgotICAgZWNobyAiWDExIG5vdCBmb3VuZCwgdGhlIFwiZ3JhcGhcIiBs
 aWJyYXJ5IHdpbGwgbm90IGJlIHN1cHBvcnRlZC4iCi0gICB4MTFfaW5jbHVkZT0iIgotK2Vs
 aWYgdGVzdCAiJHgxMV93YW50ZWQiID0gIm5vIgotK3RoZW4KLSsgIGVjaG8gIlgxMSBzdXBw
 b3J0IHdhcyBkaXNhYmxlZCwgdGhlIFwiZ3JhcGhcIiBsaWJyYXJ5IHdpbGwgbm90IGJlIHN1
 cHBvcnRlZC4iCi0rICB4MTFfaW5jbHVkZT0iIgotKyAgeDExX2xpbms9IiIKLSBlbHNlCi0g
 ICBlY2hvICJMb2NhdGlvbiBvZiBYMTEgaW5jbHVkZSBmaWxlczogJHgxMV9pbmNsdWRlL1gx
 MSIKLSAgIGVjaG8gIk9wdGlvbnMgZm9yIGxpbmtpbmcgd2l0aCBYMTE6ICR4MTFfbGluayIK
 LUBAIC0xNTA5LDcgKzE0MDUsNyBAQAotICAgdGhlbiB0a19saWJzPSIkdGtfbGlicyAkZGxs
 aWIiCi0gICBlbGlmIHNoIC4vaGFzZ290ICR0a19saWJzIC1sdGNsJHRjbG1hai4kdGNsbWlu
 ICR0a2F1eGxpYnMgVGNsX0RvT25lRXZlbnQKLSAgIHRoZW4KLS0gICAgdGtfbGlicz0iJHRr
 X2xpYnMgLWx0ayR0a21hai4kdGttaW4gLWx0Y2wkdGNsbWFqLiR0Y2xtaW4gJGRsbGliIgot
 KyAgICB0a19saWJzPSIkdGtfbGlicyAtbHRrJHRrbWFqJHRrbWluIC1sdGNsJHRjbG1hai4k
 dGNsbWluICRkbGxpYiIKLSAgIGVsaWYgc2ggLi9oYXNnb3QgJHRrX2xpYnMgLWx0Y2wkdGNs
 bWFqJHRjbG1pbiAkdGthdXhsaWJzIFRjbF9Eb09uZUV2ZW50Ci0gICB0aGVuCi0gICAgIHRr
 X2xpYnM9IiR0a19saWJzIC1sdGskdGttYWokdGttaW4gLWx0Y2wkdGNsbWFqJHRjbG1pbiAk
 ZGxsaWIiCmRpZmYgLS1naXQgYS9vY2FtbC9maWxlcy9wYXRjaC1vY2FtbGRvY19NYWtlZmls
 ZSBiL29jYW1sL2ZpbGVzL3BhdGNoLW9jYW1sZG9jX01ha2VmaWxlCmluZGV4IGJlZGU0NzMu
 LjE3YWQyZjMgMTAwNjQ0Ci0tLSBhL29jYW1sL2ZpbGVzL3BhdGNoLW9jYW1sZG9jX01ha2Vm
 aWxlCisrKyBiL29jYW1sL2ZpbGVzL3BhdGNoLW9jYW1sZG9jX01ha2VmaWxlCkBAIC05LDE2
 ICs5LDMgQEAKICAKICBJTlNUQUxMX01MSVM9b2RvY19pbmZvLm1saQogIElOU1RBTExfQ01J
 Uz0kKElOU1RBTExfTUxJUzoubWxpPS5jbWkpCi1AQCAtMjY1LDcgKzI2NSwxMSBAQAotIAkk
 KENQKSBvY2FtbGRvYy5odmEgKi5jbWkgJChPQ0FNTERPQ19MSUJDTUEpICQoSU5TVEFMTF9M
 SUJESVIpCi0gCSQoQ1ApICQoSU5TVEFMTF9NTElTKSAkKElOU1RBTExfQ01JUykgJChJTlNU
 QUxMX0xJQkRJUikKLSAJaWYgdGVzdCAtZCAkKElOU1RBTExfTUFOT0RJUik7IHRoZW4gOiA7
 IGVsc2UgJChNS0RJUikgJChJTlNUQUxMX01BTk9ESVIpOyBmaQotLQlpZiB0ZXN0IC1kIHN0
 ZGxpYl9tYW47IHRoZW4gJChDUCkgc3RkbGliX21hbi8qICQoSU5TVEFMTF9NQU5PRElSKTsg
 ZWxzZSA6IDsgZmkKLSsJaWYgdGVzdCAtZCBzdGRsaWJfbWFuOyB0aGVuIFwKLSsJCWZvciBm
 IGluIHN0ZGxpYl9tYW4vKjsgZG8gXAotKwkJCSQoQlNEX0lOU1RBTExfTUFOKSAkJGYgJChJ
 TlNUQUxMX01BTk9ESVIpL2BiYXNlbmFtZSAkJGYgLjNvYC5uOyBcCi0rCQlkb25lOyBcCi0r
 CWZpCi0gCi0gaW5zdGFsbG9wdDoKLSAJaWYgdGVzdCAtZiAkKE9DQU1MRE9DX09QVCkgOyB0
 aGVuICQoTUFLRSkgaW5zdGFsbG9wdF9yZWFsbHkgOyBmaQpkaWZmIC0tZ2l0IGEvb2NhbWwv
 ZmlsZXMvcGF0Y2gtdGVzdHN1aXRlLWJhY2t0cmFjZS1NYWtlZmlsZSBiL29jYW1sL2ZpbGVz
 L3BhdGNoLXRlc3RzdWl0ZS1iYWNrdHJhY2UtTWFrZWZpbGUKbmV3IGZpbGUgbW9kZSAxMDA2
 NDQKaW5kZXggMDAwMDAwMC4uN2I4ODdkYwotLS0gL2Rldi9udWxsCisrKyBiL29jYW1sL2Zp
 bGVzL3BhdGNoLXRlc3RzdWl0ZS1iYWNrdHJhY2UtTWFrZWZpbGUKQEAgLTAsMCArMSwxMSBA
 QAorLS0tIHRlc3RzdWl0ZS90ZXN0cy9iYWNrdHJhY2UvTWFrZWZpbGUub3JpZwkyMDEyLTEx
 LTAxIDIwOjI4OjIzLjAwMDAwMDAwMCArMDEwMAorKysrIHRlc3RzdWl0ZS90ZXN0cy9iYWNr
 dHJhY2UvTWFrZWZpbGUJMjAxMi0xMS0wMSAyMDoyODozMC4wMDAwMDAwMDAgKzAxMDAKK0BA
 IC02LDcgKzYsNyBAQAorIAkgICQoT0NBTUxDKSAtZyAtbyAkKEVYRUNOQU1FKSAkJGZpbGU7
 IFwKKyAJICBmb3IgYXJnIGluIGEgYiBjIGQgJyc7IGRvIFwKKyAJICAgIHByaW50ZiAiIC4u
 LiB0ZXN0aW5nICckJGZpbGUnICh3aXRoIGFyZ3VtZW50ICckJGFyZycpOiI7IFwKKy0JICAg
 IE9DQU1MUlVOUEFSQU09Yj0xICQoRVhFQ05BTUUpICQkYXJnID4gYGJhc2VuYW1lICQkZmls
 ZSBtbGAkJGFyZy5yZXN1bHQgMj4mMTsgXAorKwkgICAgc2ggLWMgIk9DQU1MUlVOUEFSQU09
 Yj0xICQoRVhFQ05BTUUpICQkYXJnOyB0cnVlIiA+IGBiYXNlbmFtZSAkJGZpbGUgbWxgJCRh
 cmcucmVzdWx0IDI+JjE7IFwKKyAJICAgICQoRElGRikgYGJhc2VuYW1lICQkZmlsZSBtbGAk
 JGFyZy5yZWZlcmVuY2UgYGJhc2VuYW1lICQkZmlsZSBtbGAkJGFyZy5yZXN1bHQgPiAvZGV2
 L251bGwgJiYgZWNobyAiID0+IHBhc3NlZCIgfHwgKGVjaG8gIiA9PiBmYWlsZWQiICYmIGV4
 aXQgMSk7IFwKKyAJICBkb25lOyBcCisgCWRvbmUKZGlmZiAtLWdpdCBhL29jYW1sL3BrZy1w
 bGlzdCBiL29jYW1sL3BrZy1wbGlzdAppbmRleCAxODU2N2FiLi41YTM0Njg3IDEwMDY0NAot
 LS0gYS9vY2FtbC9wa2ctcGxpc3QKKysrIGIvb2NhbWwvcGtnLXBsaXN0CkBAIC0xLDQgKzEs
 MyBAQAotYmluL29jYW1sb2JqaW5mbwogYmluL2NhbWxwNAogYmluL2NhbWxwNGJvb3QKIGJp
 bi9jYW1scDRvCkBAIC0zMywxMiArMzIsMTUgQEAgYmluL29jYW1sbGV4CiBiaW4vb2NhbWxs
 ZXgub3B0CiBiaW4vb2NhbWxta2xpYgogYmluL29jYW1sbWt0b3AKK2Jpbi9vY2FtbG9iamlu
 Zm8KIGJpbi9vY2FtbG9wdAogYmluL29jYW1sb3B0Lm9wdAorYmluL29jYW1sb3B0cAogYmlu
 L29jYW1scHJvZgogYmluL29jYW1scnVuCiBiaW4vb2NhbWx5YWNjCiBsaWIvb2NhbWwvTWFr
 ZWZpbGUuY29uZmlnCitsaWIvb2NhbWwvVkVSU0lPTgogbGliL29jYW1sL2FyZy5jbWkKIGxp
 Yi9vY2FtbC9hcmcuY214CiBsaWIvb2NhbWwvYXJnLm1sCkBAIC04NSw2ICs4Nyw3IEBAIGxp
 Yi9vY2FtbC9jYW1sL2NvbXBhdGliaWxpdHkuaAogbGliL29jYW1sL2NhbWwvY29uZmlnLmgK
 IGxpYi9vY2FtbC9jYW1sL2N1c3RvbS5oCiBsaWIvb2NhbWwvY2FtbC9mYWlsLmgKK2xpYi9v
 Y2FtbC9jYW1sL2hhc2guaAogbGliL29jYW1sL2NhbWwvaW50ZXh0LmgKIGxpYi9vY2FtbC9j
 YW1sL21lbW9yeS5oCiBsaWIvb2NhbWwvY2FtbC9taXNjLmgKQEAgLTI2MSwyOSArMjY0LDE1
 OCBAQCBsaWIvb2NhbWwvY2hhci5jbXgKIGxpYi9vY2FtbC9jaGFyLm1sCiBsaWIvb2NhbWwv
 Y2hhci5tbGkKICUlUFJPRiUlbGliL29jYW1sL2NoYXIucC5jbXgKK2xpYi9vY2FtbC9jb21w
 aWxlci1saWJzL2Fubm90LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvYXJjaC5jbWkK
 K2xpYi9vY2FtbC9jb21waWxlci1saWJzL2FzbWdlbi5jbWkKK2xpYi9vY2FtbC9jb21waWxl
 ci1saWJzL2FzbWxpYnJhcmlhbi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2FzbWxp
 bmsuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9hc21wYWNrYWdlci5jbWkKK2xpYi9v
 Y2FtbC9jb21waWxlci1saWJzL2FzdHR5cGVzLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxp
 YnMvYnR5cGUuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9ieXRlZ2VuLmNtaQorbGli
 L29jYW1sL2NvbXBpbGVyLWxpYnMvYnl0ZWxpYnJhcmlhbi5jbWkKK2xpYi9vY2FtbC9jb21w
 aWxlci1saWJzL2J5dGVsaW5rLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvYnl0ZXBh
 Y2thZ2VyLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvYnl0ZXNlY3Rpb25zLmNtaQor
 bGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY2NvbXAuY21pCitsaWIvb2NhbWwvY29tcGlsZXIt
 bGlicy9jbGFtYmRhLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY2xmbGFncy5jbWkK
 K2xpYi9vY2FtbC9jb21waWxlci1saWJzL2Nsb3N1cmUuY21pCitsaWIvb2NhbWwvY29tcGls
 ZXItbGlicy9jbWlfZm9ybWF0LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY21tLmNt
 aQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY21tZ2VuLmNtaQorbGliL29jYW1sL2NvbXBp
 bGVyLWxpYnMvY21vX2Zvcm1hdC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2NtdF9m
 b3JtYXQuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9jbXhfZm9ybWF0LmNtaQorbGli
 L29jYW1sL2NvbXBpbGVyLWxpYnMvY29sb3JpbmcuY21pCitsaWIvb2NhbWwvY29tcGlsZXIt
 bGlicy9jb21iYWxsb2MuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9jb21waWxlLmNt
 aQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY29tcGlsZW52LmNtaQorbGliL29jYW1sL2Nv
 bXBpbGVyLWxpYnMvY29uZmlnLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY29uc2lz
 dGJsLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY3R5cGUuY21pCitsaWIvb2NhbWwv
 Y29tcGlsZXItbGlicy9kYXRhcmVwci5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2Rl
 YnVnaW5mby5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2RsbC5jbWkKK2xpYi9vY2Ft
 bC9jb21waWxlci1saWJzL2VtaXQuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9lbWl0
 YXV4LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvZW1pdGNvZGUuY21pCitsaWIvb2Nh
 bWwvY29tcGlsZXItbGlicy9lbnYuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9lcnJv
 cnMuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9leHB1bmdlLmNtaQorbGliL29jYW1s
 L2NvbXBpbGVyLWxpYnMvZ2VucHJpbnR2YWwuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGli
 cy9pZGVudC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2luY2x1ZGVjbGFzcy5jbWkK
 K2xpYi9vY2FtbC9jb21waWxlci1saWJzL2luY2x1ZGVjb3JlLmNtaQorbGliL29jYW1sL2Nv
 bXBpbGVyLWxpYnMvaW5jbHVkZW1vZC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2lu
 c3RydWN0LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvaW50ZXJmLmNtaQorbGliL29j
 YW1sL2NvbXBpbGVyLWxpYnMvbGFtYmRhLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMv
 bGV4ZXIuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9saW5lYXJpemUuY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy9saXZlbmVzcy5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1s
 aWJzL2xvY2F0aW9uLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvbG9uZ2lkZW50LmNt
 aQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvbWFjaC5jbWkKK2xpYi9vY2FtbC9jb21waWxl
 ci1saWJzL21haW4uY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9tYWluLmNtbworbGli
 L29jYW1sL2NvbXBpbGVyLWxpYnMvbWFpbi5jbXgKK2xpYi9vY2FtbC9jb21waWxlci1saWJz
 L21haW4ubworbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvbWFpbl9hcmdzLmNtaQorbGliL29j
 YW1sL2NvbXBpbGVyLWxpYnMvbWF0Y2hpbmcuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGli
 cy9tZXRhLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvbWlzYy5jbWkKK2xpYi9vY2Ft
 bC9jb21waWxlci1saWJzL210eXBlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb2Nh
 bWxieXRlY29tcC5hCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9vY2FtbGJ5dGVjb21wLmNt
 YQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb2NhbWxieXRlY29tcC5jbXhhCitsaWIvb2Nh
 bWwvY29tcGlsZXItbGlicy9vY2FtbGNvbW1vbi5hCitsaWIvb2NhbWwvY29tcGlsZXItbGli
 cy9vY2FtbGNvbW1vbi5jbWEKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL29jYW1sY29tbW9u
 LmNteGEKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL29jYW1sb3B0Y29tcC5hCitsaWIvb2Nh
 bWwvY29tcGlsZXItbGlicy9vY2FtbG9wdGNvbXAuY21hCitsaWIvb2NhbWwvY29tcGlsZXIt
 bGlicy9vY2FtbG9wdGNvbXAuY214YQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb2NhbWx0
 b3BsZXZlbC5jbWEKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL29wY29kZXMuY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy9vcHJpbnQuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGli
 cy9vcHRjb21waWxlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb3B0ZXJyb3JzLmNt
 aQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb3B0bWFpbi5jbWkKK2xpYi9vY2FtbC9jb21w
 aWxlci1saWJzL29wdG1haW4uY21vCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9vcHRtYWlu
 LmNteAorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb3B0bWFpbi5vCitsaWIvb2NhbWwvY29t
 cGlsZXItbGlicy9vdXRjb21ldHJlZS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3Bh
 cm1hdGNoLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvcGFyc2UuY21pCitsaWIvb2Nh
 bWwvY29tcGlsZXItbGlicy9wYXJzZXIuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9w
 YXJzZXRyZWUuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9wYXRoLmNtaQorbGliL29j
 YW1sL2NvbXBpbGVyLWxpYnMvcHBhcnNlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMv
 cHJlZGVmLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvcHJpbWl0aXZlLmNtaQorbGli
 L29jYW1sL2NvbXBpbGVyLWxpYnMvcHJpbnRhc3QuY21pCitsaWIvb2NhbWwvY29tcGlsZXIt
 bGlicy9wcmludGNsYW1iZGEuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9wcmludGNt
 bS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3ByaW50aW5zdHIuY21pCitsaWIvb2Nh
 bWwvY29tcGlsZXItbGlicy9wcmludGxhbWJkYS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1s
 aWJzL3ByaW50bGluZWFyLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvcHJpbnRtYWNo
 LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvcHJpbnR0eXAuY21pCitsaWIvb2NhbWwv
 Y29tcGlsZXItbGlicy9wcmludHR5cGVkLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMv
 cHJvYy5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3JlZy5jbWkKK2xpYi9vY2FtbC9j
 b21waWxlci1saWJzL3JlbG9hZC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3JlbG9h
 ZGdlbi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3J1bnRpbWVkZWYuY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy9zY2hlZGdlbi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1s
 aWJzL3NjaGVkdWxpbmcuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9zZWxlY3RnZW4u
 Y21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9zZWxlY3Rpb24uY21pCitsaWIvb2NhbWwv
 Y29tcGlsZXItbGlicy9zaW1wbGlmLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvc3Bp
 bGwuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9zcGxpdC5jbWkKK2xpYi9vY2FtbC9j
 b21waWxlci1saWJzL3N0eXBlcy5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3N1YnN0
 LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvc3dpdGNoLmNtaQorbGliL29jYW1sL2Nv
 bXBpbGVyLWxpYnMvc3ltdGFibGUuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9zeW50
 YXhlcnIuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90YmwuY21pCitsaWIvb2NhbWwv
 Y29tcGlsZXItbGlicy90ZXJtaW5mby5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3Rv
 cGRpcnMuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90b3Bsb29wLmNtaQorbGliL29j
 YW1sL2NvbXBpbGVyLWxpYnMvdG9wbWFpbi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJz
 L3RvcHN0YXJ0LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvdG9wc3RhcnQuY21vCits
 aWIvb2NhbWwvY29tcGlsZXItbGlicy90cmFjZS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1s
 aWJzL3RyYW5zbGNsYXNzLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvdHJhbnNsY29y
 ZS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3RyYW5zbG1vZC5jbWkKK2xpYi9vY2Ft
 bC9jb21waWxlci1saWJzL3RyYW5zbG9iai5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJz
 L3R5cGVjbGFzcy5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3R5cGVjb3JlLmNtaQor
 bGliL29jYW1sL2NvbXBpbGVyLWxpYnMvdHlwZWRlY2wuY21pCitsaWIvb2NhbWwvY29tcGls
 ZXItbGlicy90eXBlZHRyZWUuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90eXBlbW9k
 LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvdHlwZW9wdC5jbWkKK2xpYi9vY2FtbC9j
 b21waWxlci1saWJzL3R5cGVzLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvdHlwZXRl
 eHAuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy93YXJuaW5ncy5jbWkKIGxpYi9vY2Ft
 bC9jb21wbGV4LmNtaQogbGliL29jYW1sL2NvbXBsZXguY214CiBsaWIvb2NhbWwvY29tcGxl
 eC5tbAogbGliL29jYW1sL2NvbXBsZXgubWxpCiAlJVBST0YlJWxpYi9vY2FtbC9jb21wbGV4
 LnAuY214CiAlJVRIUkVBRFMlJWxpYi9vY2FtbC9jb25kaXRpb24ubWxpCi1saWIvb2NhbWwv
 ZGJtLmEKLWxpYi9vY2FtbC9kYm0uY21hCi1saWIvb2NhbWwvZGJtLmNtaQotbGliL29jYW1s
 L2RibS5jbXgKLWxpYi9vY2FtbC9kYm0uY214YQotbGliL29jYW1sL2RibS5jbXhzCi1saWIv
 b2NhbWwvZGJtLm1saQogbGliL29jYW1sL2RpZ2VzdC5jbWkKIGxpYi9vY2FtbC9kaWdlc3Qu
 Y214CiBsaWIvb2NhbWwvZGlnZXN0Lm1sCiBsaWIvb2NhbWwvZGlnZXN0Lm1saQogJSVQUk9G
 JSVsaWIvb2NhbWwvZGlnZXN0LnAuY214CiBsaWIvb2NhbWwvZHlubGluay5hCi1saWIvb2Nh
 bWwvZHlubGluay5jbXgKLWxpYi9vY2FtbC9keW5saW5rLmNteGEKIGxpYi9vY2FtbC9keW5s
 aW5rLmNtYQogbGliL29jYW1sL2R5bmxpbmsuY21pCitsaWIvb2NhbWwvZHlubGluay5jbXgK
 K2xpYi9vY2FtbC9keW5saW5rLmNteGEKIGxpYi9vY2FtbC9keW5saW5rLm1saQogJSVUSFJF
 QURTJSVsaWIvb2NhbWwvZXZlbnQubWxpCiBsaWIvb2NhbWwvZXhwdW5nZQpAQCAtNjcxLDcg
 KzgwMyw2IEBAIGxpYi9vY2FtbC9saWJjYW1scnVuLmEKIGxpYi9vY2FtbC9saWJjYW1scnVu
 X3NoYXJlZC5zbwogbGliL29jYW1sL2xpYmNhbWxzdHIuYQogJSVYMTElJWxpYi9vY2FtbC9s
 aWJncmFwaGljcy5hCi1saWIvb2NhbWwvbGlibWxkYm0uYQogbGliL29jYW1sL2xpYm51bXMu
 YQogJSVUSFJFQURTJSVsaWIvb2NhbWwvbGlidGhyZWFkcy5hCiAlJVRIUkVBRFMlJWxpYi9v
 Y2FtbC9saWJ0aHJlYWRzbmF0LmEKQEAgLTcyMSw4ICs4NTIsOCBAQCBsaWIvb2NhbWwvb2Jq
 LmNtaQogbGliL29jYW1sL29iai5jbXgKIGxpYi9vY2FtbC9vYmoubWwKIGxpYi9vY2FtbC9v
 YmoubWxpCi1saWIvb2NhbWwvb2JqaW5mb19oZWxwZXIKICUlUFJPRiUlbGliL29jYW1sL29i
 ai5wLmNteAorbGliL29jYW1sL29iamluZm9faGVscGVyCiBsaWIvb2NhbWwvb2NhbWxidWls
 ZC9vY2FtbGJ1aWxkLmNtbwogbGliL29jYW1sL29jYW1sYnVpbGQvb2NhbWxidWlsZC5jbXgK
 IGxpYi9vY2FtbC9vY2FtbGJ1aWxkL29jYW1sYnVpbGQubwpAQCAtNzU2LDYgKzg4Nyw3IEBA
 IGxpYi9vY2FtbC9vY2FtbGRvYy9vZG9jX2RlcC5jbWkKIGxpYi9vY2FtbC9vY2FtbGRvYy9v
 ZG9jX2RvdC5jbWkKIGxpYi9vY2FtbC9vY2FtbGRvYy9vZG9jX2Vudi5jbWkKIGxpYi9vY2Ft
 bC9vY2FtbGRvYy9vZG9jX2V4Y2VwdGlvbi5jbWkKK2xpYi9vY2FtbC9vY2FtbGRvYy9vZG9j
 X2dlbi5jbWkKIGxpYi9vY2FtbC9vY2FtbGRvYy9vZG9jX2dsb2JhbC5jbWkKIGxpYi9vY2Ft
 bC9vY2FtbGRvYy9vZG9jX2h0bWwuY21pCiBsaWIvb2NhbWwvb2NhbWxkb2Mvb2RvY19pbmZv
 LmEKQEAgLTc5Niw4ICs5MjgsNiBAQCBsaWIvb2NhbWwvb28uY214CiBsaWIvb2NhbWwvb28u
 bWwKIGxpYi9vY2FtbC9vby5tbGkKICUlUFJPRiUlbGliL29jYW1sL29vLnAuY214Ci1saWIv
 b2NhbWwvb3V0Y29tZXRyZWUuY21pCi1saWIvb2NhbWwvb3V0Y29tZXRyZWUubWxpCiBsaWIv
 b2NhbWwvcGFyc2luZy5jbWkKIGxpYi9vY2FtbC9wYXJzaW5nLmNteAogbGliL29jYW1sL3Bh
 cnNpbmcubWwKQEAgLTgyMCw2ICs5NTAsOCBAQCBsaWIvb2NhbWwvcHJpbnRmLm1saQogJSVQ
 Uk9GJSVsaWIvb2NhbWwvcHJpbnRmLnAuY214CiBsaWIvb2NhbWwvcHJvZmlsaW5nLmNtaQog
 bGliL29jYW1sL3Byb2ZpbGluZy5jbW8KK2xpYi9vY2FtbC9wcm9maWxpbmcuY214CitsaWIv
 b2NhbWwvcHJvZmlsaW5nLm8KIGxpYi9vY2FtbC9xdWV1ZS5jbWkKIGxpYi9vY2FtbC9xdWV1
 ZS5jbXgKIGxpYi9vY2FtbC9xdWV1ZS5tbApAQCAtODYzLDcgKzk5NSw3IEBAIGxpYi9vY2Ft
 bC9zdGRfZXhpdC5jbW8KIGxpYi9vY2FtbC9zdGRfZXhpdC5jbXgKIGxpYi9vY2FtbC9zdGRf
 ZXhpdC5tbAogbGliL29jYW1sL3N0ZF9leGl0Lm8KLWxpYi9vY2FtbC9zdGRfZXhpdC5wLmNt
 eAorJSVQUk9GJSVsaWIvb2NhbWwvc3RkX2V4aXQucC5jbXgKIGxpYi9vY2FtbC9zdGRfZXhp
 dC5wLm8KIGxpYi9vY2FtbC9zdGRsaWIuYQogbGliL29jYW1sL3N0ZGxpYi5jbWEKQEAgLTg5
 MywxMCArMTAyNSw5IEBAIGxpYi9vY2FtbC9zdHJpbmdMYWJlbHMubWwKIGxpYi9vY2FtbC9z
 dHJpbmdMYWJlbHMubWxpCiAlJVBST0YlJWxpYi9vY2FtbC9zdHJpbmdMYWJlbHMucC5jbXgK
 IGxpYi9vY2FtbC9zdHVibGlicy9kbGxiaWdhcnJheS5zbworbGliL29jYW1sL3N0dWJsaWJz
 L2RsbGNhbWxzdHIuc28KICUlWDExJSVsaWIvb2NhbWwvc3R1YmxpYnMvZGxsZ3JhcGhpY3Mu
 c28KICUlVEslJWxpYi9vY2FtbC9zdHVibGlicy9kbGxsYWJsdGsuc28KLWxpYi9vY2FtbC9z
 dHVibGlicy9kbGxjYW1sc3RyLnNvCi1saWIvb2NhbWwvc3R1YmxpYnMvZGxsbWxkYm0uc28K
 IGxpYi9vY2FtbC9zdHVibGlicy9kbGxudW1zLnNvCiAlJVRIUkVBRFMlJWxpYi9vY2FtbC9z
 dHVibGlicy9kbGx0aHJlYWRzLnNvCiBsaWIvb2NhbWwvc3R1YmxpYnMvZGxsdW5peC5zbwpA
 QCAtOTIyLDEwICsxMDUzLDYgQEAgbGliL29jYW1sL3N5cy5tbGkKICUlVEhSRUFEUyUlbGli
 L29jYW1sL3RocmVhZHMvdGhyZWFkcy5jbWEKICUlVEhSRUFEUyUlbGliL29jYW1sL3RocmVh
 ZHMvdGhyZWFkcy5jbXhhCiBsaWIvb2NhbWwvdG9wZGlycy5jbWkKLWxpYi9vY2FtbC90b3Bs
 ZXZlbGxpYi5jbWEKLWxpYi9vY2FtbC90b3Bsb29wLmNtaQotbGliL29jYW1sL3RvcG1haW4u
 Y21pCi1saWIvb2NhbWwvdG9wc3RhcnQuY21vCiBsaWIvb2NhbWwvdW5peC5hCiBsaWIvb2Nh
 bWwvdW5peC5jbWEKIGxpYi9vY2FtbC91bml4LmNtaQpAQCAtOTU1LDYgKzEwODIsNyBAQCBs
 aWIvb2NhbWwvd2Vhay5jbXgKIGxpYi9vY2FtbC93ZWFrLm1sCiBsaWIvb2NhbWwvd2Vhay5t
 bGkKICUlUFJPRiUlbGliL29jYW1sL3dlYWsucC5jbXgKKyUlVEslJSUlRVhBTVBMRVNESVIl
 JS9leGFtcGxlc19jYW1sdGsvLmlnbm9yZQogJSVUSyUlJSVFWEFNUExFU0RJUiUlL2V4YW1w
 bGVzX2NhbWx0ay9NYWtlZmlsZQogJSVUSyUlJSVFWEFNUExFU0RJUiUlL2V4YW1wbGVzX2Nh
 bWx0ay9NYWtlZmlsZS5udAogJSVUSyUlJSVFWEFNUExFU0RJUiUlL2V4YW1wbGVzX2NhbWx0
 ay9hZGRpdGlvbi5tbApAQCAtOTcyLDYgKzExMDAsNyBAQCBsaWIvb2NhbWwvd2Vhay5tbGkK
 ICUlVEslJSUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19jYW1sdGsvdGV0cmlzLm1sCiAlJVRL
 JSUlJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfY2FtbHRrL3RleHQubWwKICUlVEslJSUlRVhB
 TVBMRVNESVIlJS9leGFtcGxlc19jYW1sdGsvd2luc2tlbC5tbAorJSVUSyUlJSVFWEFNUExF
 U0RJUiUlL2V4YW1wbGVzX2xhYmx0ay8uaWdub3JlCiAlJVRLJSUlJUVYQU1QTEVTRElSJSUv
 ZXhhbXBsZXNfbGFibHRrL0xhbWJkYTIuYmFjay5naWYKICUlVEslJSUlRVhBTVBMRVNESVIl
 JS9leGFtcGxlc19sYWJsdGsvTWFrZWZpbGUKICUlVEslJSUlRVhBTVBMRVNESVIlJS9leGFt
 cGxlc19sYWJsdGsvTWFrZWZpbGUubnQKQEAgLTk5MiwxNCArMTEyMSwxNSBAQCBsaWIvb2Nh
 bWwvd2Vhay5tbGkKIEBkaXJybSBsaWIvb2NhbWwvdm10aHJlYWRzCiAlJVRIUkVBRFMlJUBk
 aXJybSBsaWIvb2NhbWwvdGhyZWFkcwogQGRpcnJtdHJ5IGxpYi9vY2FtbC9zdHVibGlicwot
 QGRpcnJtIGxpYi9vY2FtbC9vY2FtbGRvYy9jdXN0b20KLUBkaXJybSBsaWIvb2NhbWwvb2Nh
 bWxkb2MKK0BkaXJybXRyeSBsaWIvb2NhbWwvb2NhbWxkb2MvY3VzdG9tCitAZGlycm10cnkg
 bGliL29jYW1sL29jYW1sZG9jCiBAZGlycm0gbGliL29jYW1sL29jYW1sYnVpbGQKICUlVEsl
 JUBkaXJybXRyeSBsaWIvb2NhbWwvbGFibHRrCitAZGlycm0gbGliL29jYW1sL2NvbXBpbGVy
 LWxpYnMKIEBkaXJybSBsaWIvb2NhbWwvY2FtbHA0L0NhbWxwNFRvcAogQGRpcnJtIGxpYi9v
 Y2FtbC9jYW1scDQvQ2FtbHA0UHJpbnRlcnMKIEBkaXJybSBsaWIvb2NhbWwvY2FtbHA0L0Nh
 bWxwNFBhcnNlcnMKIEBkaXJybSBsaWIvb2NhbWwvY2FtbHA0L0NhbWxwNEZpbHRlcnMKIEBk
 aXJybSBsaWIvb2NhbWwvY2FtbHA0CiBAZGlycm0gbGliL29jYW1sL2NhbWwKLUBjb21tZW50
 IGxpYi9vY2FtbCB3aWxsIGJlIGFkZGVkIGJ5IE1ha2VmaWxlCitAZGlycm10cnkgbGliL29j
 YW1sCg==
 --------------040901080104010601070907--

From: Brendan Fabeny <bf1783@gmail.com>
To: bug-followup@FreeBSD.org, 
	Michael Gruenewald <michael.grunewald@laposte.net>
Cc:  
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Sun, 18 Aug 2013 08:49:37 +0000

 Michael:
 
 I will begin test builds soon with your patch.  Do you have any
 further comments or changes to add before I do?  I'm going to switch
 the NOPORTDOCS conditionals to checking the default option DOCS,
 because NOPORTDOCS Is deprecated.  The problem with the shared
 documents directory is a minor issue, and one that exists with a
 number of other ports that share directories.  Perhaps the dirrms in
 default add-plist-* targets should be changed to dirrmtrys, but at the
 moment, we don't need to worry about this unless some of these other
 ports that use the ocaml DOCSDIR do not depend on ocaml.
 
 b.

From: =?ISO-8859-1?Q?Michael_Gr=FCnewald?=
 <michael.grunewald@laposte.net>
To: bf1783@gmail.com
Cc: bug-followup@FreeBSD.org
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Sat, 24 Aug 2013 11:33:46 +0200

 Brendan Fabeny wrote:
 > Michael:
 > 
 > I will begin test builds soon with your patch.  Do you have any
 > further comments or changes to add before I do?  I'm going to switch
 > the NOPORTDOCS conditionals to checking the default option DOCS,
 > because NOPORTDOCS Is deprecated.  The problem with the shared
 > documents directory is a minor issue, and one that exists with a
 > number of other ports that share directories.  Perhaps the dirrms in
 > default add-plist-* targets should be changed to dirrmtrys, but at the
 > moment, we don't need to worry about this unless some of these other
 > ports that use the ocaml DOCSDIR do not depend on ocaml.
 
 Hi, thank you for your message!
 
 Besides the dirrmtry issue there is another minor one: elisp macros for
 the ocaml debugger are not installed.  (Some users will prefer Tuareg.)
 
 I hope I can find time tomorrow to give a look at it!  Have already a
 time horizon for your test builds?
 
 Best regards,
 Michael
 

From: =?ISO-8859-1?Q?Michael_Gr=FCnewald?= <michipili@gmail.com>
To: bug-followup@FreeBSD.org, michael.grunewald@laposte.net
Cc:  
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Sat, 12 Oct 2013 16:52:17 +0200

 This is a multi-part message in MIME format.
 --------------050600000600010609020409
 Content-Type: text/plain; charset=ISO-8859-1
 Content-Transfer-Encoding: 7bit
 
 Meanwhile is ocaml-4.01.0 already out!  Here is my patch for this new
 release.
 
 As a side note, I decided to put the ports I maintain on bitbucket, see
 
    git@bitbucket.org:michipili/ports-bsd.git
 
 The repository has a vendor branch tracking the contents of the ports
 tree, and an ocaml branch holding my candidate for the next ocaml port. 
 I produced the diff with
 
   git diff vendor ocaml
 
 There is a small issue with this latest OCaml release: support for bdb
 was dropped and the library now lives as a separate package. As far as I
 know, it is not ported to FreeBSD but it might be available through opam.
 -- 
 Regards,
 Michael
 
 
 --------------050600000600010609020409
 Content-Type: text/plain; charset=us-ascii;
  name="patch-ocaml.text"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="patch-ocaml.text"
 
 diff --git a/ocaml/Makefile b/ocaml/Makefile
 index 769ce21..4b6303c 100644
 --- a/ocaml/Makefile
 +++ b/ocaml/Makefile
 @@ -1,40 +1,52 @@
 -# Created by: Kiriyama Kazuhiko <kiri@kiri.toba-cmt.ac.jp>
 -# $FreeBSD: head/lang/ocaml/Makefile 327741 2013-09-20 19:53:09Z bapt $
 +# New ports collection makefile for:	ocaml
 +# Date created:		24 December 1996
 +# Whom:			Kiriyama Kazuhiko <kiri@kiri.toba-cmt.ac.jp>
 +#
 +# $FreeBSD: ports/lang/ocaml/Makefile,v 1.77 2012/02/23 01:10:28 bf Exp $
 +#
  
  PORTNAME=	ocaml
 -PORTVERSION=	3.12.1
 -PORTREVISION=	1
 +PORTVERSION=	4.01.0
  CATEGORIES=	lang
 -MASTER_SITES=	http://caml.inria.fr/distrib/${DISTNAME:R}/ \
 -		ftp://ftp.inria.fr/INRIA/caml-light/${DISTNAME:R}/ \
 -		ftp://ftp.kurims.kyoto-u.ac.jp/pub/lang/caml-light/${DISTNAME:R}/ \
 +MASTER_SITES=	http://caml.inria.fr/pub/distrib/${DISTNAME:R}/ \
  		${MASTER_SITE_GENTOO}
 -MASTER_SITE_SUBDIR=	distfiles
 +MASTER_SITE_SUBDIR=distfiles
  PKGNAMESUFFIX=	${SFX}
 +DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
 +EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
  
 -MAINTAINER?=	michael.grunewald@laposte.net
 -COMMENT?=	The Objective Caml compiler and programming environment
 +MAINTAINER=	michipili@gmail.com
 +COMMENT=	The Objective Caml compiler and programming environment
 +
 +NO_STAGE=	yes
 +
 +.if !defined(NOPORTDOCS)
 +DOCSDISTNAME=	${DISTNAME:C/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/\1.\2/}
 +DISTFILES+=	${DOCSDISTNAME}-refman-html.tar.gz \
 +		${DOCSDISTNAME}-refman.ps.gz \
 +		${DOCSDISTNAME}-refman.pdf
 +.endif
  
  USE_BZIP2=	yes
  REINPLACE_ARGS=	-i ""
  HAS_CONFIGURE=	yes
  ALL_TARGET=	world.opt
  STRIP=
 -SSP_UNSAFE=	yes
 -MAKE_JOBS_UNSAFE=	yes
 -
 -CONFIGURE_ARGS=	-verbose -prefix "${PREFIX}" -cc "${CC}" -as "${AS}" \
 -		-aspp "${CC} -c" -partialld "${LD} -r"
 -OPTIONS_DEFINE=	X11 TK THREADS CMP_LIB OPT_DEF
 -OPTIONS_DEFAULT=	X11 TK THREADS
 -TK_DESC=	LablTk library (requires X11 support)
 -CMP_LIB_DESC=	Install compiler's libraries
 -OPT_DEF_DESC=	Use system-optimized binaries by default
 +MAKE_JOBS_UNSAFE=yes
 +
 +CONFIGURE_ARGS=	-verbose -prefix "${PREFIX}" \
 +		-cc "${CC} ${CFLAGS}" \
 +		-as "${AS} ${ASFLAGS}" \
 +		-aspp "${CC} -c" \
 +		-partialld "${LD} -r"
 +OPTIONS=	X11	"Build with X11 support" on \
 +		TK	"Build LablTk library (requires X11 support)" on \
 +		THREADS	"Build with Posix threads support" on \
 +		OPT_DEF	"Use system-optimized binaries by default" off
  
  MODOPT=		camlp4o camlp4r ocamlc ocamldep ocamldoc ocamllex ocamlopt
  PATTERN=	[[:space:]]*(do|then)?[[:space:]]*)(\$$\(CP\)|cp)([[:space:]]
  
 -NO_STAGE=	yes
  .include <bsd.port.pre.mk>
  
  .if ${ARCH} == powerpc
 @@ -49,7 +61,14 @@ PLIST_SUB+=	PROF=""
  
  .include "${FILESDIR}/manfiles"
  
 -.if ${PORT_OPTIONS:MTHREADS}
 +.if !defined(NOPORTDOCS)
 +PLIST_SUB+=	DOC=""
 +PORTDOCS =	htmlman ${DOCSDISTNAME}-refman.ps.gz ${DOCSDISTNAME}-refman.pdf
 +.else
 +PLIST_SUB+=	DOC="@comment "
 +.endif
 +
 +.if !defined(WITHOUT_THREADS)
  PLIST_SUB+=	THREADS=""
  THR_CPP=	${PTHREAD_CFLAGS}
  THR_LD=		${PTHREAD_LIBS}
 @@ -60,7 +79,7 @@ THR_LD=		#empty
  CONFIGURE_ARGS+=-no-pthread
  .endif
  
 -.if ${PORT_OPTIONS:MX11}
 +.if !defined(WITHOUT_X11)
  PLIST_SUB+=	X11=""
  USE_XORG=	x11
  CONFIGURE_ARGS+=-x11include ${LOCALBASE}/include -x11lib ${LOCALBASE}/lib
 @@ -72,23 +91,25 @@ CONFLICTS+=	ocaml-[0-9]* ocaml-notk-[0-9]*
  CONFIGURE_ARGS+=-no-x11
  .endif
  
 -.if ! ${PORT_OPTIONS:MTK}
 +.if defined(WITHOUT_TK)
  PLIST_SUB+=	TK="@comment "
 -.if ${PORT_OPTIONS:MX11}
 +. if !defined(WITHOUT_X11)
  SFX=		-notk
  CONFLICTS+=	ocaml-[0-9]* ocaml-nox11-[0-9]*
 -.endif
 +. endif
  CONFIGURE_ARGS+=-no-tk
 -.else
 +. else
  USE_TK=		84+
 -INVALID_TK_VER =	86
 +. if defined(WITH_THREADS)
 +USE_TK_THREADS =	yes
 +. endif
  .include "${PORTSDIR}/Mk/bsd.tcl.mk"
  PLIST_SUB+=	TK=""
  CONFLICTS+=	ocaml-nox11-[0-9]* ocaml-notk-[0-9]*
  CONFIGURE_ARGS+=	-tkdefs \
  			"-I${TCL_INCLUDEDIR} -I${TK_INCLUDEDIR} ${THR_CPP}" \
 -			-tklibs "-L${LOCALBASE}/lib -ltk${TK_VER:S|.||} \
 -			-ltcl${TCL_VER:S|.||} ${THR_LD}"
 +			-tklibs "-L${LOCALBASE}/lib -ltk${TK_VER:S|.||}${_TCL_THREADS_SUFFIX} \
 +			-ltcl${TCL_VER:S|.||}${_TCL_THREADS_SUFFIX} ${THR_LD}"
  .endif
  
  .if ${ARCH} == sparc64
 @@ -99,6 +120,14 @@ post-extract:
  .if ${ARCH} == power
  	${MV} ${WRKSRC}/asmrun/power-elf.S ${WRKSRC}/asmrun/power-bsd.S
  .endif
 +.if !defined(NOPORTDOCS)
 +	@if ! (cd ${WRKDIR} && \
 +	  ${TAR} xf ${_DISTDIR}${DOCSDISTNAME}-refman-html.tar.gz \
 +	) \
 +	then \
 +	  exit 1; \
 +	fi;
 +.endif
  
  post-patch:
  	@${REINPLACE_CMD} \
 @@ -113,7 +142,7 @@ post-patch:
  	@${REINPLACE_CMD} -e 's|gcc|$$(CC)|' \
  		${WRKSRC}/*/Makefile \
  		${WRKSRC}/*/*/Makefile
 -.if ${PORT_OPTIONS:MTK}
 +.if defined(WITH_TK)
  	@${REINPLACE_CMD} -e 's|/usr/bin/wish|${WISH}|' \
  		${WRKSRC}/otherlibs/labltk/examples_labltk/hello.tcl
  .endif
 @@ -144,7 +173,7 @@ check test: install
  
  post-install:
  	@${TOUCH} ${PREFIX}/lib/ocaml/ocamldoc/custom/.keep
 -.if ${PORT_OPTIONS:MTK}
 +.if !defined(WITHOUT_TK)
  	@${MKDIR} ${EXAMPLESDIR}
  	@(cd ${WRKSRC}/otherlibs/labltk && \
  		${COPYTREE_SHARE} examples_labltk ${EXAMPLESDIR} \
 @@ -153,8 +182,16 @@ post-install:
  		"! -name .cvsignore")
  .endif
  
 -.for PROG in camlp4o.opt camlp4r.opt ocamlc.opt ocamldep.opt ocamldoc.opt \
 -		ocamllex.opt ocamlopt.opt ocamlrun ocamlyacc
 +.if !defined(NOPORTDOCS)
 +	${MKDIR} ${DOCSDIR}
 +	(cd ${WRKDIR} && ${COPYTREE_SHARE} htmlman ${DOCSDIR})
 +	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.ps.gz ${DOCSDIR}
 +	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.pdf ${DOCSDIR}
 +.endif
 +
 +.for PROG in camlp4o.opt camlp4of.opt camlp4oof.opt camlp4orf.opt \
 +	camlp4r.opt camlp4rf.opt ocamlc.opt ocamldep.opt ocamldoc.opt \
 +	ocamllex.opt ocamlopt.opt ocamlrun ocamlyacc
  	@${STRIP_CMD} ${PREFIX}/bin/${PROG}
  .endfor
  
 @@ -162,7 +199,7 @@ post-install:
  	@${CHMOD} 644 ${PREFIX}/lib/ocaml/ld.conf
  
  # Do we want .opt version of tools to be the default ?
 -.if ${PORT_OPTIONS:MOPT_DEF}
 +.if defined(WITH_OPT_DEF)
  . for module in ${MODOPT}
  #	First, we save bytecode version
  	@${MV} ${PREFIX}/bin/${module} ${PREFIX}/bin/${module}.byte
 @@ -174,19 +211,4 @@ post-install:
  . endfor
  .endif
  
 -# Add compiler's libs if required
 -.if ${PORT_OPTIONS:MCMP_LIB}
 -	@${MKDIR}  ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/utils/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/utils/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/parsing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/parsing/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/typing/*.cm* ${PREFIX}/lib/ocaml/compiler-lib
 -	@${INSTALL_DATA} ${WRKSRC}/typing/*.o ${PREFIX}/lib/ocaml/compiler-lib
 -	@${FIND} ${PREFIX}/lib/ocaml/compiler-lib -type f | \
 -		${SED} "s,^${PREFIX}/,," >> ${TMPPLIST}
 -	@${ECHO_CMD} "@dirrm lib/ocaml/compiler-lib" >> ${TMPPLIST}
 -.endif
 -	@${ECHO_CMD} "@unexec rmdir "%D/lib/ocaml" 2>/dev/null || true" >> ${TMPPLIST}
 -
  .include <bsd.port.post.mk>
 diff --git a/ocaml/distinfo b/ocaml/distinfo
 index 49d8d14..961cad9 100644
 --- a/ocaml/distinfo
 +++ b/ocaml/distinfo
 @@ -1,2 +1,8 @@
 -SHA256 (ocaml-3.12.1.tar.bz2) = edcf563da75e0b91f09765649caa98ab1535e0c7498f0737b5591b7de084958d
 -SIZE (ocaml-3.12.1.tar.bz2) = 2949124
 +SHA256 (ocaml-4.01.0.tar.bz2) = b1ca708994180236917ae79e17606da5bd334ca6acd6873a550027e1c0ec874a
 +SIZE (ocaml-4.01.0.tar.bz2) = 3691090
 +SHA256 (ocaml-4.01-refman-html.tar.gz) = 01019c8f8a29a8a7f422e090704b666ade2a007d57ea9412285f88f716656001
 +SIZE (ocaml-4.01-refman-html.tar.gz) = 571422
 +SHA256 (ocaml-4.01-refman.ps.gz) = 4de67ef967b8b39a6f030df258087239d6f7dee869a3973d7a782b7986b809c6
 +SIZE (ocaml-4.01-refman.ps.gz) = 1089703
 +SHA256 (ocaml-4.01-refman.pdf) = 389e434f534153530ba234299d0f3a0e4271d18b091b9216e4a37335ebd33424
 +SIZE (ocaml-4.01-refman.pdf) = 1478900
 diff --git a/ocaml/files/edit_pkg-plist.sed b/ocaml/files/edit_pkg-plist.sed
 new file mode 100644
 index 0000000..6262030
 --- /dev/null
 +++ b/ocaml/files/edit_pkg-plist.sed
 @@ -0,0 +1,6 @@
 +/.p.cmx$/s@^@%%PROF%%@
 +/examples_labeltk/{
 +  s@share/examples@%%EXAMPLESDIR%%@
 +  s@^@%%TK%%@
 +}
 +/graphics/s@^@%%X11%%@
 diff --git a/ocaml/files/manfiles b/ocaml/files/manfiles
 index c19f86f..b2c26bb 100644
 --- a/ocaml/files/manfiles
 +++ b/ocaml/files/manfiles
 @@ -8,91 +8,94 @@ MAN1=	ocaml.1 \
  	ocamllex.1 \
  	ocamlmktop.1 \
  	ocamlopt.1 \
 +	ocamloptp.1 \
  	ocamlprof.1 \
  	ocamlrun.1 \
  	ocamlyacc.1
  
 -MANN=	Arg.n \
 -	Array.n \
 -	ArrayLabels.n \
 -	Bigarray.Array1.n \
 -	Bigarray.Array2.n \
 -	Bigarray.Array3.n \
 -	Bigarray.Genarray.n \
 -	Bigarray.n \
 -	Buffer.n \
 -	Callback.n \
 -	CamlinternalOO.n \
 -	CamlinternalLazy.n \
 -	CamlinternalMod.n \
 -	Char.n \
 -	Complex.n \
 -	Digest.n \
 -	Filename.n \
 -	Format.n \
 -	Gc.n \
 -	Genlex.n \
 -	Hashtbl.HashedType.n \
 -	Hashtbl.Make.n \
 -	Hashtbl.S.n \
 -	Hashtbl.n \
 -	Int32.n \
 -	Int64.n \
 -	Lazy.n \
 -	Lexing.n \
 -	List.n \
 -	ListLabels.n \
 -	Map.Make.n \
 -	Map.OrderedType.n \
 -	Map.S.n \
 -	Map.n \
 -	Marshal.n \
 -	MoreLabels.Hashtbl.HashedType.n \
 -	MoreLabels.Hashtbl.Make.n \
 -	MoreLabels.Hashtbl.S.n \
 -	MoreLabels.Hashtbl.n \
 -	MoreLabels.Map.Make.n \
 -	MoreLabels.Map.OrderedType.n \
 -	MoreLabels.Map.S.n \
 -	MoreLabels.Map.n \
 -	MoreLabels.Set.Make.n \
 -	MoreLabels.Set.OrderedType.n \
 -	MoreLabels.Set.S.n \
 -	MoreLabels.Set.n \
 -	MoreLabels.n \
 -	Nativeint.n \
 -	Num.n \
 -	Obj.n \
 -	Oo.n \
 -	Parsing.n \
 -	Pervasives.LargeFile.n \
 -	Pervasives.n \
 -	Printexc.n \
 -	Printf.n \
 -	Queue.n \
 -	Random.n \
 -	Random.State.n \
 -	Scanf.Scanning.n \
 -	Scanf.n \
 -	Set.Make.n \
 -	Set.OrderedType.n \
 -	Set.S.n \
 -	Set.n \
 -	Sort.n \
 -	Stack.n \
 -	StdLabels.Array.n \
 -	StdLabels.List.n \
 -	StdLabels.String.n \
 -	StdLabels.n \
 -	Str.n \
 -	Stream.n \
 -	String.n \
 -	StringLabels.n \
 -	Sys.n \
 -	Unix.LargeFile.n \
 -	Unix.n \
 -	Weak.Make.n \
 -	Weak.S.n \
 -	Weak.n
 +MANN=	Arg.3o \
 +	Array.3o \
 +	ArrayLabels.3o \
 +	Bigarray.3o \
 +	Bigarray.Array1.3o \
 +	Bigarray.Array2.3o \
 +	Bigarray.Array3.3o \
 +	Bigarray.Genarray.3o \
 +	Buffer.3o \
 +	Callback.3o \
 +	CamlinternalLazy.3o \
 +	CamlinternalMod.3o \
 +	CamlinternalOO.3o \
 +	Complex.3o \
 +	Digest.3o \
 +	Filename.3o \
 +	Format.3o \
 +	Gc.3o \
 +	Genlex.3o \
 +	Hashtbl.3o \
 +	Hashtbl.HashedType.3o \
 +	Hashtbl.Make.3o \
 +	Hashtbl.MakeSeeded.3o \
 +	Hashtbl.S.3o \
 +	Hashtbl.SeededHashedType.3o \
 +	Hashtbl.SeededS.3o \
 +	Int32.3o \
 +	Int64.3o \
 +	Lexing.3o \
 +	List.3o \
 +	ListLabels.3o \
 +	Map.3o \
 +	Map.Make.3o \
 +	Map.OrderedType.3o \
 +	Map.S.3o \
 +	Marshal.3o \
 +	MoreLabels.3o \
 +	MoreLabels.Hashtbl.3o \
 +	MoreLabels.Hashtbl.HashedType.3o \
 +	MoreLabels.Hashtbl.Make.3o \
 +	MoreLabels.Hashtbl.MakeSeeded.3o \
 +	MoreLabels.Hashtbl.S.3o \
 +	MoreLabels.Hashtbl.SeededHashedType.3o \
 +	MoreLabels.Hashtbl.SeededS.3o \
 +	MoreLabels.Map.3o \
 +	MoreLabels.Map.Make.3o \
 +	MoreLabels.Map.OrderedType.3o \
 +	MoreLabels.Map.S.3o \
 +	MoreLabels.Set.3o \
 +	MoreLabels.Set.Make.3o \
 +	MoreLabels.Set.OrderedType.3o \
 +	MoreLabels.Set.S.3o \
 +	Nativeint.3o \
 +	Num.3o \
 +	Obj.3o \
 +	Oo.3o \
 +	Parsing.3o \
 +	Pervasives.3o \
 +	Pervasives.LargeFile.3o \
 +	Printexc.3o \
 +	Printf.3o \
 +	Queue.3o \
 +	Random.3o \
 +	Random.State.3o \
 +	Scanf.3o \
 +	Scanf.Scanning.3o \
 +	Set.Make.3o \
 +	Set.OrderedType.3o \
 +	Set.S.3o \
 +	Sort.3o \
 +	Stack.3o \
 +	StdLabels.3o \
 +	StdLabels.Array.3o \
 +	StdLabels.List.3o \
 +	StdLabels.String.3o \
 +	Str.3o \
 +	Stream.3o \
 +	StringLabels.3o \
 +	Sys.3o \
 +	Unix.3o \
 +	Unix.LargeFile.3o \
 +	Weak.3o \
 +	Weak.Make.3o \
 +	Weak.S.3o
  
  MLINKS=	ocamlc.1 ocamlc.opt.1 ocamlopt.1 ocamlopt.opt.1
 diff --git a/ocaml/files/patch-Makefile b/ocaml/files/patch-Makefile
 deleted file mode 100644
 index 1da3b2f..0000000
 --- a/ocaml/files/patch-Makefile
 +++ /dev/null
 @@ -1,11 +0,0 @@
 ---- Makefile.orig	2010-06-16 03:32:26.000000000 +0200
 -+++ Makefile	2011-12-14 10:02:05.745076468 +0100
 -@@ -288,7 +288,7 @@
 - 	cp lex/ocamllex $(BINDIR)/ocamllex$(EXE)
 - 	cp yacc/ocamlyacc$(EXE) $(BINDIR)/ocamlyacc$(EXE)
 - 	cp toplevel/toplevellib.cma $(LIBDIR)/toplevellib.cma
 --	cp expunge $(LIBDIR)/expunge$(EXE)
 -+	${BSD_INSTALL_SCRIPT} expunge $(LIBDIR)/expunge$(EXE)
 - 	cp typing/outcometree.cmi typing/outcometree.mli $(LIBDIR)
 - 	cp toplevel/topstart.cmo $(LIBDIR)
 - 	cp toplevel/toploop.cmi toplevel/topdirs.cmi toplevel/topmain.cmi \
 diff --git a/ocaml/files/patch-config-auto-aux-async_io.c b/ocaml/files/patch-config-auto-aux-async_io.c
 new file mode 100644
 index 0000000..3a0fcdd
 --- /dev/null
 +++ b/ocaml/files/patch-config-auto-aux-async_io.c
 @@ -0,0 +1,10 @@
 +--- config/auto-aux/async_io.c	2012-11-01 17:36:02.000000000 +0100
 ++++ config/auto-aux/async_io.c.orig	2012-11-01 17:35:46.000000000 +0100
 +@@ -13,7 +13,8 @@
 + 
 + /* $Id: async_io.c 11156 2011-07-27 14:17:02Z doligez $ */
 + 
 ++#include <stdlib.h>
 + #include <stdio.h>
 + #include <fcntl.h>
 + #include <signal.h>
 diff --git a/ocaml/files/patch-configure b/ocaml/files/patch-configure
 index b6369ad..c690731 100644
 --- a/ocaml/files/patch-configure
 +++ b/ocaml/files/patch-configure
 @@ -1,200 +1,18 @@
 -$FreeBSD: head/lang/ocaml/files/patch-configure 300896 2012-07-14 13:54:48Z beat $
 -
 ---- configure.orig	2011-07-04 22:15:01.000000000 +0100
 -+++ configure	2012-01-15 20:29:30.319674803 +0000
 -@@ -85,6 +85,8 @@
 -         withcurses=no;;
 -     -no-shared-libs)
 -         withsharedlibs=no;;
 -+    -no-x11|--no-x11)
 -+        x11_wanted=no;;
 -     -x11include*|--x11include*)
 -         x11_include_dir=$2; shift;;
 -     -x11lib*|--x11lib*)
 -@@ -521,7 +523,7 @@
 -       mksharedlib="$flexlink"
 -       mkmaindll="$flexlink -maindll"
 -       shared_libraries_supported=true;;
 --    *-*-linux-gnu|*-*-linux|*-*-freebsd[3-9]*|*-*-openbsd*|*-*-netbsd*|*-*-gnu*)
 -+    *-*-linux-gnu|*-*-linux|*-*-freebsd*|*-*-openbsd*|*-*-netbsd*|*-*-gnu*)
 -       sharedcccompopts="-fPIC"
 -       mksharedlib="$bytecc -shared"
 -       bytecclinkopts="$bytecclinkopts -Wl,-E"
 -@@ -636,6 +638,7 @@
 -     i[345]86-*-netbsd*)           natdynlink=true;;
 -     x86_64-*-netbsd*)             natdynlink=true;;
 -     i386-*-gnu0.3)                natdynlink=true;;
 -+    *-*-freebsd*)                 natdynlink=true;;
 -   esac
 - fi
 - 
 -@@ -687,6 +690,7 @@
 -   hppa*-*-gnu*)                 arch=hppa; system=gnu;;
 +--- configure.orig	2012-11-01 17:14:55.000000000 +0100
 ++++ configure	2012-11-01 17:23:44.000000000 +0100
 +@@ -687,6 +689,7 @@
 +                                 fi;;
 +   i[3456]86-*-gnu*)             arch=i386; system=gnu;;
     powerpc*-*-linux*)            arch=power; model=ppc; system=elf;;
 ++  powerpc-*-freebsd*)           arch=power; model=ppc; system=elf;;
     powerpc-*-netbsd*)            arch=power; model=ppc; system=elf;;
 -+  powerpc-*-freebsd*)           arch=power; model=ppc; system=bsd;;
     powerpc-*-rhapsody*)          arch=power; model=ppc; system=rhapsody;;
     powerpc-*-darwin*)            arch=power; system=rhapsody
 -                                 if $arch64; then model=ppc64; else model=ppc; fi;;
 -@@ -796,6 +800,7 @@
 -   i386,*,bsd_elf) profiling='prof';;
 -   amd64,*,macosx) profiling='prof';;
 -   i386,*,macosx) profiling='prof';;
 +@@ -786,6 +789,7 @@
 +   amd64,*,linux) profiling='prof';;
 +   amd64,*,gnu) profiling='prof';;
 +   arm,*,linux*) profiling='prof';;
  +  *,*,freebsd) profiling='prof';;
 -   sparc,*,solaris)
 -     profiling='prof'
 -     case "$nativecc" in gcc*) ;; *) cc_profile='-xpg';; esac;;
 -@@ -1256,133 +1261,24 @@
 - x11_include="not found"
 - x11_link="not found"
 - 
 --for dir in \
 --    $x11_include_dir          \
 --                              \
 --    /usr/X11R7/include        \
 --    /usr/include/X11R7        \
 --    /usr/local/X11R7/include  \
 --    /usr/local/include/X11R7  \
 --    /opt/X11R7/include        \
 --                              \
 --    /usr/X11R6/include        \
 --    /usr/include/X11R6        \
 --    /usr/local/X11R6/include  \
 --    /usr/local/include/X11R6  \
 --    /opt/X11R6/include        \
 --                              \
 --    /usr/X11/include          \
 --    /usr/include/X11          \
 --    /usr/local/X11/include    \
 --    /usr/local/include/X11    \
 --    /opt/X11/include          \
 --                              \
 --    /usr/X11R5/include        \
 --    /usr/include/X11R5        \
 --    /usr/local/X11R5/include  \
 --    /usr/local/include/X11R5  \
 --    /usr/local/x11r5/include  \
 --    /opt/X11R5/include        \
 --                              \
 --    /usr/X11R4/include        \
 --    /usr/include/X11R4        \
 --    /usr/local/X11R4/include  \
 --    /usr/local/include/X11R4  \
 --                              \
 --    /usr/X386/include         \
 --    /usr/x386/include         \
 --    /usr/XFree86/include/X11  \
 --                              \
 --    /usr/include              \
 --    /usr/local/include        \
 --    /usr/unsupported/include  \
 --    /usr/athena/include       \
 --    /usr/lpp/Xamples/include  \
 --                              \
 --    /usr/openwin/include      \
 --    /usr/openwin/share/include \
 --    ; \
 --do
 --  if test -f $dir/X11/X.h; then
 --    x11_include=$dir
 --    break
 --  fi
 --done
 --
 --if test "$x11_include" = "not found"; then
 --  x11_try_lib_dir=''
 --else
 --  x11_try_lib_dir=`echo $x11_include | sed -e 's|include|lib|'`
 -+if [ -n "$x11_include_dir" ]; then
 -+  x11_include="$x11_include_dir"
 - fi
 - 
 --for dir in \
 --    $x11_lib_dir          \
 --    $x11_try_lib_dir      \
 --                          \
 --    /usr/X11R6/lib64      \
 --    /usr/X11R6/lib        \
 --    /usr/lib/X11R6        \
 --    /usr/local/X11R6/lib  \
 --    /usr/local/lib/X11R6  \
 --    /opt/X11R6/lib        \
 --                          \
 --    /usr/X11/lib          \
 --    /usr/lib/X11          \
 --    /usr/local/X11/lib    \
 --    /usr/local/lib/X11    \
 --    /opt/X11/lib          \
 --                          \
 --    /usr/X11R5/lib        \
 --    /usr/lib/X11R5        \
 --    /usr/local/X11R5/lib  \
 --    /usr/local/lib/X11R5  \
 --    /usr/local/x11r5/lib  \
 --    /opt/X11R5/lib        \
 --                          \
 --    /usr/X11R4/lib        \
 --    /usr/lib/X11R4        \
 --    /usr/local/X11R4/lib  \
 --    /usr/local/lib/X11R4  \
 --                          \
 --    /usr/X386/lib         \
 --    /usr/x386/lib         \
 --    /usr/XFree86/lib/X11  \
 --                          \
 --    /usr/lib64            \
 --    /usr/lib              \
 --    /usr/local/lib        \
 --    /usr/unsupported/lib  \
 --    /usr/athena/lib       \
 --    /usr/lpp/Xamples/lib  \
 --    /lib/usr/lib/X11      \
 --                          \
 --    /usr/openwin/lib      \
 --    /usr/openwin/share/lib \
 --    ; \
 --do
 --  if test -f $dir/libX11.a || \
 --     test -f $dir/libX11.so || \
 --     test -f $dir/libX11.dll.a || \
 --     test -f $dir/libX11.dylib || \
 --     test -f $dir/libX11.sa; then
 --    if test $dir = /usr/lib; then
 --      x11_link="-lX11"
 --    else
 --      x11_libs="-L$dir"
 --      case "$host" in
 --        *-*-*bsd*) x11_link="-R$dir -L$dir -lX11";;
 --        *) x11_link="-L$dir -lX11";;
 --      esac
 --    fi
 --    break
 --  fi
 --done
 --
 -+if [ -n "$x11_lib_dir" ]; then
 -+  x11_link="-L$x11_lib_dir -lX11"
 -+  x11_libs="-L$x11_lib_dir"
 -+fi
 +   *) profiling='noprof';;
 + esac
   
 - if test "$x11_include" = "not found" || test "$x11_link" = "not found"
 - then
 -   echo "X11 not found, the \"graph\" library will not be supported."
 -   x11_include=""
 -+elif test "$x11_wanted" = "no"
 -+then
 -+  echo "X11 support was disabled, the \"graph\" library will not be supported."
 -+  x11_include=""
 -+  x11_link=""
 - else
 -   echo "Location of X11 include files: $x11_include/X11"
 -   echo "Options for linking with X11: $x11_link"
 -@@ -1509,7 +1405,7 @@
 -   then tk_libs="$tk_libs $dllib"
 -   elif sh ./hasgot $tk_libs -ltcl$tclmaj.$tclmin $tkauxlibs Tcl_DoOneEvent
 -   then
 --    tk_libs="$tk_libs -ltk$tkmaj.$tkmin -ltcl$tclmaj.$tclmin $dllib"
 -+    tk_libs="$tk_libs -ltk$tkmaj$tkmin -ltcl$tclmaj.$tclmin $dllib"
 -   elif sh ./hasgot $tk_libs -ltcl$tclmaj$tclmin $tkauxlibs Tcl_DoOneEvent
 -   then
 -     tk_libs="$tk_libs -ltk$tkmaj$tkmin -ltcl$tclmaj$tclmin $dllib"
 diff --git a/ocaml/files/patch-ocamldoc_Makefile b/ocaml/files/patch-ocamldoc_Makefile
 index bede473..17ad2f3 100644
 --- a/ocaml/files/patch-ocamldoc_Makefile
 +++ b/ocaml/files/patch-ocamldoc_Makefile
 @@ -9,16 +9,3 @@
   
   INSTALL_MLIS=odoc_info.mli
   INSTALL_CMIS=$(INSTALL_MLIS:.mli=.cmi)
 -@@ -265,7 +265,11 @@
 - 	$(CP) ocamldoc.hva *.cmi $(OCAMLDOC_LIBCMA) $(INSTALL_LIBDIR)
 - 	$(CP) $(INSTALL_MLIS) $(INSTALL_CMIS) $(INSTALL_LIBDIR)
 - 	if test -d $(INSTALL_MANODIR); then : ; else $(MKDIR) $(INSTALL_MANODIR); fi
 --	if test -d stdlib_man; then $(CP) stdlib_man/* $(INSTALL_MANODIR); else : ; fi
 -+	if test -d stdlib_man; then \
 -+		for f in stdlib_man/*; do \
 -+			$(BSD_INSTALL_MAN) $$f $(INSTALL_MANODIR)/`basename $$f .3o`.n; \
 -+		done; \
 -+	fi
 - 
 - installopt:
 - 	if test -f $(OCAMLDOC_OPT) ; then $(MAKE) installopt_really ; fi
 diff --git a/ocaml/files/patch-testsuite-backtrace-Makefile b/ocaml/files/patch-testsuite-backtrace-Makefile
 new file mode 100644
 index 0000000..7b887dc
 --- /dev/null
 +++ b/ocaml/files/patch-testsuite-backtrace-Makefile
 @@ -0,0 +1,11 @@
 +--- testsuite/tests/backtrace/Makefile.orig	2012-11-01 20:28:23.000000000 +0100
 ++++ testsuite/tests/backtrace/Makefile	2012-11-01 20:28:30.000000000 +0100
 +@@ -6,7 +6,7 @@
 + 	  $(OCAMLC) -g -o $(EXECNAME) $$file; \
 + 	  for arg in a b c d ''; do \
 + 	    printf " ... testing '$$file' (with argument '$$arg'):"; \
 +-	    OCAMLRUNPARAM=b=1 $(EXECNAME) $$arg > `basename $$file ml`$$arg.result 2>&1; \
 ++	    sh -c "OCAMLRUNPARAM=b=1 $(EXECNAME) $$arg; true" > `basename $$file ml`$$arg.result 2>&1; \
 + 	    $(DIFF) `basename $$file ml`$$arg.reference `basename $$file ml`$$arg.result > /dev/null && echo " => passed" || (echo " => failed" && exit 1); \
 + 	  done; \
 + 	done
 diff --git a/ocaml/pkg-plist b/ocaml/pkg-plist
 index 1fd6915..4b5df68 100644
 --- a/ocaml/pkg-plist
 +++ b/ocaml/pkg-plist
 @@ -1,4 +1,3 @@
 -bin/ocamlobjinfo
  bin/camlp4
  bin/camlp4boot
  bin/camlp4o
 @@ -33,12 +32,15 @@ bin/ocamllex
  bin/ocamllex.opt
  bin/ocamlmklib
  bin/ocamlmktop
 +bin/ocamlobjinfo
  bin/ocamlopt
  bin/ocamlopt.opt
 +bin/ocamloptp
  bin/ocamlprof
  bin/ocamlrun
  bin/ocamlyacc
  lib/ocaml/Makefile.config
 +lib/ocaml/VERSION
  lib/ocaml/arg.cmi
  lib/ocaml/arg.cmx
  lib/ocaml/arg.ml
 @@ -85,6 +87,7 @@ lib/ocaml/caml/compatibility.h
  lib/ocaml/caml/config.h
  lib/ocaml/caml/custom.h
  lib/ocaml/caml/fail.h
 +lib/ocaml/caml/hash.h
  lib/ocaml/caml/intext.h
  lib/ocaml/caml/memory.h
  lib/ocaml/caml/misc.h
 @@ -261,29 +264,165 @@ lib/ocaml/char.cmx
  lib/ocaml/char.ml
  lib/ocaml/char.mli
  %%PROF%%lib/ocaml/char.p.cmx
 +lib/ocaml/compiler-libs/annot.cmi
 +lib/ocaml/compiler-libs/arch.cmi
 +lib/ocaml/compiler-libs/asmgen.cmi
 +lib/ocaml/compiler-libs/asmlibrarian.cmi
 +lib/ocaml/compiler-libs/asmlink.cmi
 +lib/ocaml/compiler-libs/asmpackager.cmi
 +lib/ocaml/compiler-libs/ast_mapper.cmi
 +lib/ocaml/compiler-libs/asttypes.cmi
 +lib/ocaml/compiler-libs/btype.cmi
 +lib/ocaml/compiler-libs/bytegen.cmi
 +lib/ocaml/compiler-libs/bytelibrarian.cmi
 +lib/ocaml/compiler-libs/bytelink.cmi
 +lib/ocaml/compiler-libs/bytepackager.cmi
 +lib/ocaml/compiler-libs/bytesections.cmi
 +lib/ocaml/compiler-libs/ccomp.cmi
 +lib/ocaml/compiler-libs/clambda.cmi
 +lib/ocaml/compiler-libs/clflags.cmi
 +lib/ocaml/compiler-libs/closure.cmi
 +lib/ocaml/compiler-libs/cmi_format.cmi
 +lib/ocaml/compiler-libs/cmm.cmi
 +lib/ocaml/compiler-libs/cmmgen.cmi
 +lib/ocaml/compiler-libs/cmo_format.cmi
 +lib/ocaml/compiler-libs/cmt_format.cmi
 +lib/ocaml/compiler-libs/cmx_format.cmi
 +lib/ocaml/compiler-libs/coloring.cmi
 +lib/ocaml/compiler-libs/comballoc.cmi
 +lib/ocaml/compiler-libs/compenv.cmi
 +lib/ocaml/compiler-libs/compile.cmi
 +lib/ocaml/compiler-libs/compilenv.cmi
 +lib/ocaml/compiler-libs/compmisc.cmi
 +lib/ocaml/compiler-libs/config.cmi
 +lib/ocaml/compiler-libs/consistbl.cmi
 +lib/ocaml/compiler-libs/ctype.cmi
 +lib/ocaml/compiler-libs/datarepr.cmi
 +lib/ocaml/compiler-libs/debuginfo.cmi
 +lib/ocaml/compiler-libs/dll.cmi
 +lib/ocaml/compiler-libs/emit.cmi
 +lib/ocaml/compiler-libs/emitaux.cmi
 +lib/ocaml/compiler-libs/emitcode.cmi
 +lib/ocaml/compiler-libs/env.cmi
 +lib/ocaml/compiler-libs/envaux.cmi
 +lib/ocaml/compiler-libs/errors.cmi
 +lib/ocaml/compiler-libs/expunge.cmi
 +lib/ocaml/compiler-libs/genprintval.cmi
 +lib/ocaml/compiler-libs/ident.cmi
 +lib/ocaml/compiler-libs/includeclass.cmi
 +lib/ocaml/compiler-libs/includecore.cmi
 +lib/ocaml/compiler-libs/includemod.cmi
 +lib/ocaml/compiler-libs/instruct.cmi
 +lib/ocaml/compiler-libs/interf.cmi
 +lib/ocaml/compiler-libs/lambda.cmi
 +lib/ocaml/compiler-libs/lexer.cmi
 +lib/ocaml/compiler-libs/linearize.cmi
 +lib/ocaml/compiler-libs/liveness.cmi
 +lib/ocaml/compiler-libs/location.cmi
 +lib/ocaml/compiler-libs/longident.cmi
 +lib/ocaml/compiler-libs/mach.cmi
 +lib/ocaml/compiler-libs/main.cmi
 +lib/ocaml/compiler-libs/main.cmo
 +lib/ocaml/compiler-libs/main.cmx
 +lib/ocaml/compiler-libs/main.o
 +lib/ocaml/compiler-libs/main_args.cmi
 +lib/ocaml/compiler-libs/matching.cmi
 +lib/ocaml/compiler-libs/meta.cmi
 +lib/ocaml/compiler-libs/misc.cmi
 +lib/ocaml/compiler-libs/mtype.cmi
 +lib/ocaml/compiler-libs/ocamlbytecomp.a
 +lib/ocaml/compiler-libs/ocamlbytecomp.cma
 +lib/ocaml/compiler-libs/ocamlbytecomp.cmxa
 +lib/ocaml/compiler-libs/ocamlcommon.a
 +lib/ocaml/compiler-libs/ocamlcommon.cma
 +lib/ocaml/compiler-libs/ocamlcommon.cmxa
 +lib/ocaml/compiler-libs/ocamloptcomp.a
 +lib/ocaml/compiler-libs/ocamloptcomp.cma
 +lib/ocaml/compiler-libs/ocamloptcomp.cmxa
 +lib/ocaml/compiler-libs/ocamltoplevel.cma
 +lib/ocaml/compiler-libs/opcodes.cmi
 +lib/ocaml/compiler-libs/oprint.cmi
 +lib/ocaml/compiler-libs/optcompile.cmi
 +lib/ocaml/compiler-libs/opterrors.cmi
 +lib/ocaml/compiler-libs/optmain.cmi
 +lib/ocaml/compiler-libs/optmain.cmo
 +lib/ocaml/compiler-libs/optmain.cmx
 +lib/ocaml/compiler-libs/optmain.o
 +lib/ocaml/compiler-libs/outcometree.cmi
 +lib/ocaml/compiler-libs/parmatch.cmi
 +lib/ocaml/compiler-libs/parse.cmi
 +lib/ocaml/compiler-libs/parser.cmi
 +lib/ocaml/compiler-libs/parsetree.cmi
 +lib/ocaml/compiler-libs/path.cmi
 +lib/ocaml/compiler-libs/pparse.cmi
 +lib/ocaml/compiler-libs/pprintast.cmi
 +lib/ocaml/compiler-libs/predef.cmi
 +lib/ocaml/compiler-libs/primitive.cmi
 +lib/ocaml/compiler-libs/printast.cmi
 +lib/ocaml/compiler-libs/printclambda.cmi
 +lib/ocaml/compiler-libs/printcmm.cmi
 +lib/ocaml/compiler-libs/printinstr.cmi
 +lib/ocaml/compiler-libs/printlambda.cmi
 +lib/ocaml/compiler-libs/printlinear.cmi
 +lib/ocaml/compiler-libs/printmach.cmi
 +lib/ocaml/compiler-libs/printtyp.cmi
 +lib/ocaml/compiler-libs/printtyped.cmi
 +lib/ocaml/compiler-libs/proc.cmi
 +lib/ocaml/compiler-libs/reg.cmi
 +lib/ocaml/compiler-libs/reload.cmi
 +lib/ocaml/compiler-libs/reloadgen.cmi
 +lib/ocaml/compiler-libs/runtimedef.cmi
 +lib/ocaml/compiler-libs/schedgen.cmi
 +lib/ocaml/compiler-libs/scheduling.cmi
 +lib/ocaml/compiler-libs/selectgen.cmi
 +lib/ocaml/compiler-libs/selection.cmi
 +lib/ocaml/compiler-libs/simplif.cmi
 +lib/ocaml/compiler-libs/spill.cmi
 +lib/ocaml/compiler-libs/split.cmi
 +lib/ocaml/compiler-libs/stypes.cmi
 +lib/ocaml/compiler-libs/subst.cmi
 +lib/ocaml/compiler-libs/switch.cmi
 +lib/ocaml/compiler-libs/symtable.cmi
 +lib/ocaml/compiler-libs/syntaxerr.cmi
 +lib/ocaml/compiler-libs/tbl.cmi
 +lib/ocaml/compiler-libs/terminfo.cmi
 +lib/ocaml/compiler-libs/topdirs.cmi
 +lib/ocaml/compiler-libs/toploop.cmi
 +lib/ocaml/compiler-libs/topmain.cmi
 +lib/ocaml/compiler-libs/topstart.cmi
 +lib/ocaml/compiler-libs/topstart.cmo
 +lib/ocaml/compiler-libs/trace.cmi
 +lib/ocaml/compiler-libs/translclass.cmi
 +lib/ocaml/compiler-libs/translcore.cmi
 +lib/ocaml/compiler-libs/translmod.cmi
 +lib/ocaml/compiler-libs/translobj.cmi
 +lib/ocaml/compiler-libs/typeclass.cmi
 +lib/ocaml/compiler-libs/typecore.cmi
 +lib/ocaml/compiler-libs/typedecl.cmi
 +lib/ocaml/compiler-libs/typedtree.cmi
 +lib/ocaml/compiler-libs/typedtreeIter.cmi
 +lib/ocaml/compiler-libs/typedtreeMap.cmi
 +lib/ocaml/compiler-libs/typemod.cmi
 +lib/ocaml/compiler-libs/typeopt.cmi
 +lib/ocaml/compiler-libs/types.cmi
 +lib/ocaml/compiler-libs/typetexp.cmi
 +lib/ocaml/compiler-libs/warnings.cmi
  lib/ocaml/complex.cmi
  lib/ocaml/complex.cmx
  lib/ocaml/complex.ml
  lib/ocaml/complex.mli
  %%PROF%%lib/ocaml/complex.p.cmx
  %%THREADS%%lib/ocaml/condition.mli
 -lib/ocaml/dbm.a
 -lib/ocaml/dbm.cma
 -lib/ocaml/dbm.cmi
 -lib/ocaml/dbm.cmx
 -lib/ocaml/dbm.cmxa
 -lib/ocaml/dbm.cmxs
 -lib/ocaml/dbm.mli
  lib/ocaml/digest.cmi
  lib/ocaml/digest.cmx
  lib/ocaml/digest.ml
  lib/ocaml/digest.mli
  %%PROF%%lib/ocaml/digest.p.cmx
  lib/ocaml/dynlink.a
 -lib/ocaml/dynlink.cmx
 -lib/ocaml/dynlink.cmxa
  lib/ocaml/dynlink.cma
  lib/ocaml/dynlink.cmi
 +lib/ocaml/dynlink.cmx
 +lib/ocaml/dynlink.cmxa
  lib/ocaml/dynlink.mli
  %%THREADS%%lib/ocaml/event.mli
  lib/ocaml/expunge
 @@ -630,11 +769,11 @@ lib/ocaml/int_misc.cmx
  %%TK%%lib/ocaml/labltk/tk.cmi
  %%TK%%lib/ocaml/labltk/tk.cmx
  %%TK%%lib/ocaml/labltk/tkcompiler
 -%%TK%%lib/ocaml/labltk/tkthread.cmi
 -%%TK%%lib/ocaml/labltk/tkthread.cmo
 +%%THREADS%%%%TK%%lib/ocaml/labltk/tkthread.cmi
 +%%THREADS%%%%TK%%lib/ocaml/labltk/tkthread.cmo
  %%THREADS%%%%TK%%lib/ocaml/labltk/tkthread.cmx
 -%%TK%%lib/ocaml/labltk/tkthread.mli
 -%%THREADS%%%%TK%%lib/ocaml/labltk/tkthread.o
 +%%THREADS%%%%TK%%lib/ocaml/labltk/tkthread.mli
 +%%TK%%lib/ocaml/labltk/tkthread.o
  %%TK%%lib/ocaml/labltk/tkvars.cmi
  %%TK%%lib/ocaml/labltk/tkvars.cmx
  %%TK%%lib/ocaml/labltk/tkvars.mli
 @@ -671,7 +810,6 @@ lib/ocaml/libcamlrun.a
  lib/ocaml/libcamlrun_shared.so
  lib/ocaml/libcamlstr.a
  %%X11%%lib/ocaml/libgraphics.a
 -lib/ocaml/libmldbm.a
  lib/ocaml/libnums.a
  %%THREADS%%lib/ocaml/libthreads.a
  %%THREADS%%lib/ocaml/libthreadsnat.a
 @@ -721,8 +859,8 @@ lib/ocaml/obj.cmi
  lib/ocaml/obj.cmx
  lib/ocaml/obj.ml
  lib/ocaml/obj.mli
 -lib/ocaml/objinfo_helper
  %%PROF%%lib/ocaml/obj.p.cmx
 +lib/ocaml/objinfo_helper
  lib/ocaml/ocamlbuild/ocamlbuild.cmo
  lib/ocaml/ocamlbuild/ocamlbuild.cmx
  lib/ocaml/ocamlbuild/ocamlbuild.o
 @@ -732,6 +870,8 @@ lib/ocaml/ocamlbuild/ocamlbuild_executor.cmx
  lib/ocaml/ocamlbuild/ocamlbuild_executor.o
  lib/ocaml/ocamlbuild/ocamlbuild_pack.cmi
  lib/ocaml/ocamlbuild/ocamlbuild_plugin.cmi
 +lib/ocaml/ocamlbuild/ocamlbuild_plugin.cmo
 +lib/ocaml/ocamlbuild/ocamlbuild_plugin.cmx
  lib/ocaml/ocamlbuild/ocamlbuild_unix_plugin.cmi
  lib/ocaml/ocamlbuild/ocamlbuild_unix_plugin.cmo
  lib/ocaml/ocamlbuild/ocamlbuild_unix_plugin.cmx
 @@ -756,6 +896,7 @@ lib/ocaml/ocamldoc/odoc_dep.cmi
  lib/ocaml/ocamldoc/odoc_dot.cmi
  lib/ocaml/ocamldoc/odoc_env.cmi
  lib/ocaml/ocamldoc/odoc_exception.cmi
 +lib/ocaml/ocamldoc/odoc_gen.cmi
  lib/ocaml/ocamldoc/odoc_global.cmi
  lib/ocaml/ocamldoc/odoc_html.cmi
  lib/ocaml/ocamldoc/odoc_info.a
 @@ -796,8 +937,6 @@ lib/ocaml/oo.cmx
  lib/ocaml/oo.ml
  lib/ocaml/oo.mli
  %%PROF%%lib/ocaml/oo.p.cmx
 -lib/ocaml/outcometree.cmi
 -lib/ocaml/outcometree.mli
  lib/ocaml/parsing.cmi
  lib/ocaml/parsing.cmx
  lib/ocaml/parsing.ml
 @@ -820,6 +959,8 @@ lib/ocaml/printf.mli
  %%PROF%%lib/ocaml/printf.p.cmx
  lib/ocaml/profiling.cmi
  lib/ocaml/profiling.cmo
 +lib/ocaml/profiling.cmx
 +lib/ocaml/profiling.o
  lib/ocaml/queue.cmi
  lib/ocaml/queue.cmx
  lib/ocaml/queue.ml
 @@ -863,7 +1004,7 @@ lib/ocaml/std_exit.cmo
  lib/ocaml/std_exit.cmx
  lib/ocaml/std_exit.ml
  lib/ocaml/std_exit.o
 -lib/ocaml/std_exit.p.cmx
 +%%PROF%%lib/ocaml/std_exit.p.cmx
  lib/ocaml/std_exit.p.o
  lib/ocaml/stdlib.a
  lib/ocaml/stdlib.cma
 @@ -893,10 +1034,9 @@ lib/ocaml/stringLabels.ml
  lib/ocaml/stringLabels.mli
  %%PROF%%lib/ocaml/stringLabels.p.cmx
  lib/ocaml/stublibs/dllbigarray.so
 +lib/ocaml/stublibs/dllcamlstr.so
  %%X11%%lib/ocaml/stublibs/dllgraphics.so
  %%TK%%lib/ocaml/stublibs/dlllabltk.so
 -lib/ocaml/stublibs/dllcamlstr.so
 -lib/ocaml/stublibs/dllmldbm.so
  lib/ocaml/stublibs/dllnums.so
  %%THREADS%%lib/ocaml/stublibs/dllthreads.so
  lib/ocaml/stublibs/dllunix.so
 @@ -922,10 +1062,6 @@ lib/ocaml/sys.mli
  %%THREADS%%lib/ocaml/threads/threads.cma
  %%THREADS%%lib/ocaml/threads/threads.cmxa
  lib/ocaml/topdirs.cmi
 -lib/ocaml/toplevellib.cma
 -lib/ocaml/toploop.cmi
 -lib/ocaml/topmain.cmi
 -lib/ocaml/topstart.cmo
  lib/ocaml/unix.a
  lib/ocaml/unix.cma
  lib/ocaml/unix.cmi
 @@ -955,6 +1091,7 @@ lib/ocaml/weak.cmx
  lib/ocaml/weak.ml
  lib/ocaml/weak.mli
  %%PROF%%lib/ocaml/weak.p.cmx
 +%%TK%%%%EXAMPLESDIR%%/examples_camltk/.ignore
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/Makefile
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/Makefile.nt
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/addition.ml
 @@ -969,37 +1106,40 @@ lib/ocaml/weak.mli
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/mytext.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/socketinput.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/taddition.ml
 +%%TK%%%%EXAMPLESDIR%%/examples_camltk/taquin.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/tetris.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/text.ml
  %%TK%%%%EXAMPLESDIR%%/examples_camltk/winskel.ml
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/Lambda2.back.gif
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/Makefile
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/Makefile.nt
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/README
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/calc.ml
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/clock.ml
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/demo.ml
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/eyes.ml
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/hello.ml
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/hello.tcl
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/lang.ml
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/taquin.ml
 -%%TK%%%%EXAMPLESDIR%%/examples_labltk/tetris.ml
 -%%TK%%@dirrm %%EXAMPLESDIR%%/examples_labltk
 -%%TK%%@dirrm %%EXAMPLESDIR%%/examples_camltk/images
 -%%TK%%@dirrm %%EXAMPLESDIR%%/examples_camltk
 -%%TK%%@dirrmtry %%EXAMPLESDIR%%
 +%%EXAMPLESDIR%%/examples_labltk/.ignore
 +%%EXAMPLESDIR%%/examples_labltk/Lambda2.back.gif
 +%%EXAMPLESDIR%%/examples_labltk/Makefile
 +%%EXAMPLESDIR%%/examples_labltk/Makefile.nt
 +%%EXAMPLESDIR%%/examples_labltk/README
 +%%EXAMPLESDIR%%/examples_labltk/calc.ml
 +%%EXAMPLESDIR%%/examples_labltk/clock.ml
 +%%EXAMPLESDIR%%/examples_labltk/demo.ml
 +%%EXAMPLESDIR%%/examples_labltk/eyes.ml
 +%%EXAMPLESDIR%%/examples_labltk/hello.ml
 +%%EXAMPLESDIR%%/examples_labltk/hello.tcl
 +%%EXAMPLESDIR%%/examples_labltk/lang.ml
 +%%EXAMPLESDIR%%/examples_labltk/taquin.ml
 +%%EXAMPLESDIR%%/examples_labltk/tetris.ml
 +@dirrm %%EXAMPLESDIR%%/examples_labltk
 +@dirrm %%EXAMPLESDIR%%/examples_camltk/images
 +@dirrm %%EXAMPLESDIR%%/examples_camltk
 +@dirrm %%EXAMPLESDIR%%
  @dirrm lib/ocaml/vmthreads
 -%%THREADS%%@dirrm lib/ocaml/threads
 -@dirrmtry lib/ocaml/stublibs
 +@dirrm lib/ocaml/threads
 +@dirrm lib/ocaml/stublibs
  @dirrm lib/ocaml/ocamldoc/custom
  @dirrm lib/ocaml/ocamldoc
  @dirrm lib/ocaml/ocamlbuild
 -%%TK%%@dirrmtry lib/ocaml/labltk
 +@dirrm lib/ocaml/labltk
 +@dirrm lib/ocaml/compiler-libs
  @dirrm lib/ocaml/camlp4/Camlp4Top
  @dirrm lib/ocaml/camlp4/Camlp4Printers
  @dirrm lib/ocaml/camlp4/Camlp4Parsers
  @dirrm lib/ocaml/camlp4/Camlp4Filters
  @dirrm lib/ocaml/camlp4
  @dirrm lib/ocaml/caml
 -@comment lib/ocaml will be added by Makefile
 +@dirrm lib/ocaml
 
 --------------050600000600010609020409--

From: Brendan Fabeny <bf1783@gmail.com>
To: bug-followup@FreeBSD.org, 
	Michael Gruenewald <michael.grunewald@laposte.net>
Cc: michipili@gmail.com
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Thu, 21 Nov 2013 10:24:51 +0000

 --047d7b5d5710df884504ebad4e52
 Content-Type: text/plain; charset=ISO-8859-1
 
 Michael:
 
 I've finished the pre-change builds ( Unfortunately, the ports tree is
 a bit messy at the moment, with all the  changes that have been taking
 place, leaving quite a few ports with broken plists, etc. And a number
 of the ocaml* ports are not really safe for parallel builds ...)  But
 after some patches, only lang/opa (failure after www/node update) and
 www/ocsigen ( build problems) are broken on {8.3,9.1}-{i386,amd64},
 out of the ~90 ports that depend upon ocaml by default.  Now I'm doing
 the post-change builds (I should have preliminary results by the end
 of today), using the attached patch for lang/ocaml.  It's a slightly
 modified version of your last patch in the audit trail for this PR,
 incorporating the new options changes, and a few other minor
 clean-ups.  If I've overlooked some important later changes in your
 private repository, please let me know as soon as possible.  One thing
 we may have to change before or shortly after the update is the use of
 the package suffixes nox11 and notk -- portmgr has asked us to stop
 adding suffixes based on options, since pkgng stores the options with
 the package, and we will soon be moving to pkgng, even on older
 supported versions of FreeBSD. We should also probably remove the
 confusing redefinition of ARCH on powerpc*, at least in the port
 Makefile, perhaps by using an alias like on sparc64, when we can test
 such a change.  (Incidentally, I'll ask another user to test this on
 sparc64.)
 
 Regards,
 b.
 
 --047d7b5d5710df884504ebad4e52
 Content-Type: text/plain; charset=US-ASCII; name="ocaml4010_diff.txt"
 Content-Disposition: attachment; filename="ocaml4010_diff.txt"
 Content-Transfer-Encoding: base64
 X-Attachment-Id: file0
 
 SW5kZXg6IE1ha2VmaWxlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIE1ha2VmaWxlCShyZXZpc2lvbiAzMzQ0NzEp
 CisrKyBNYWtlZmlsZQkod29ya2luZyBjb3B5KQpAQCAtMiwxOSArMiwyNCBAQAogIyAkRnJlZUJT
 RCQKIAogUE9SVE5BTUU9CW9jYW1sCi1QT1JUVkVSU0lPTj0JMy4xMi4xCi1QT1JUUkVWSVNJT049
 CTEKK1BPUlRWRVJTSU9OPQk0LjAxLjAKIENBVEVHT1JJRVM9CWxhbmcKLU1BU1RFUl9TSVRFUz0J
 aHR0cDovL2NhbWwuaW5yaWEuZnIvZGlzdHJpYi8ke0RJU1ROQU1FOlJ9LyBcCi0JCWZ0cDovL2Z0
 cC5pbnJpYS5mci9JTlJJQS9jYW1sLWxpZ2h0LyR7RElTVE5BTUU6Un0vIFwKLQkJZnRwOi8vZnRw
 Lmt1cmltcy5reW90by11LmFjLmpwL3B1Yi9sYW5nL2NhbWwtbGlnaHQvJHtESVNUTkFNRTpSfS8g
 XAorTUFTVEVSX1NJVEVTPQlodHRwOi8vY2FtbC5pbnJpYS5mci9wdWIvZGlzdHJpYi8ke0RJU1RO
 QU1FOlJ9LyBcCiAJCSR7TUFTVEVSX1NJVEVfR0VOVE9PfQogTUFTVEVSX1NJVEVfU1VCRElSPQlk
 aXN0ZmlsZXMKIFBLR05BTUVTVUZGSVg9CSR7U0ZYfQorRElTVEZJTEVTPQkke0RJU1ROQU1FfSR7
 RVhUUkFDVF9TVUZYfQorRVhUUkFDVF9PTkxZPQkke0RJU1ROQU1FfSR7RVhUUkFDVF9TVUZYfQog
 Ci1NQUlOVEFJTkVSPz0JbWljaGFlbC5ncnVuZXdhbGRAbGFwb3N0ZS5uZXQKLUNPTU1FTlQ/PQlU
 aGUgT2JqZWN0aXZlIENhbWwgY29tcGlsZXIgYW5kIHByb2dyYW1taW5nIGVudmlyb25tZW50CitN
 QUlOVEFJTkVSPQltaWNoaXBpbGlAZ21haWwuY29tCitDT01NRU5UPQlUaGUgT2JqZWN0aXZlIENh
 bWwgY29tcGlsZXIgYW5kIHByb2dyYW1taW5nIGVudmlyb25tZW50CiAKK0xJQ0VOU0U9CQlRUEwx
 MCBMR1BMMjAKK0xJQ0VOU0VfQ09NQj0JCW11bHRpCitMSUNFTlNFX05BTUVfUVBMMTA9CVEgUHVi
 bGljIExpY2Vuc2UsIFZlcnNpb24gMS4wCitMSUNFTlNFX0ZJTEVfUVBMMTA9CSR7V1JLU1JDfS9M
 SUNFTlNFCitMSUNFTlNFX1BFUk1TX1FQTDEwPQlhdXRvLWFjY2VwdAorCiBVU0VfQlpJUDI9CXll
 cwogUkVJTlBMQUNFX0FSR1M9CS1pICIiCiBIQVNfQ09ORklHVVJFPQl5ZXMKQEAgLTIzLDMyICsy
 OCw0NSBAQAogU1NQX1VOU0FGRT0JeWVzCiBNQUtFX0pPQlNfVU5TQUZFPQl5ZXMKIAotQ09ORklH
 VVJFX0FSR1M9CS12ZXJib3NlIC1wcmVmaXggIiR7UFJFRklYfSIgLWNjICIke0NDfSIgLWFzICIk
 e0FTfSIgXAotCQktYXNwcCAiJHtDQ30gLWMiIC1wYXJ0aWFsbGQgIiR7TER9IC1yIgotT1BUSU9O
 U19ERUZJTkU9CVgxMSBUSyBUSFJFQURTIENNUF9MSUIgT1BUX0RFRgotT1BUSU9OU19ERUZBVUxU
 PQlYMTEgVEsgVEhSRUFEUworQ09ORklHVVJFX0FSR1M9CS12ZXJib3NlIC1wcmVmaXggIiR7UFJF
 RklYfSIgXAorCQktY2MgIiR7Q0N9ICR7Q0ZMQUdTfSIgXAorCQktYXMgIiR7QVN9ICR7QVNGTEFH
 U30iIFwKKwkJLWFzcHAgIiR7Q0N9IC1jIiBcCisJCS1wYXJ0aWFsbGQgIiR7TER9IC1yIgorT1BU
 SU9OU19ERUZJTkU9CU9QVF9ERUYgVEhSRUFEUyBUSyBYMTEKK09QVElPTlNfREVGQVVMVD0JVEhS
 RUFEUyBUSyBYMTEKK09QVF9ERUZfREVTQz0JVXNlIHN5c3RlbS1vcHRpbWl6ZWQgYmluYXJpZXMg
 YnkgZGVmYXVsdAogVEtfREVTQz0JTGFibFRrIGxpYnJhcnkgKHJlcXVpcmVzIFgxMSBzdXBwb3J0
 KQotQ01QX0xJQl9ERVNDPQlJbnN0YWxsIGNvbXBpbGVyJ3MgbGlicmFyaWVzCi1PUFRfREVGX0RF
 U0M9CVVzZSBzeXN0ZW0tb3B0aW1pemVkIGJpbmFyaWVzIGJ5IGRlZmF1bHQKIAogTU9ET1BUPQkJ
 Y2FtbHA0byBjYW1scDRyIG9jYW1sYyBvY2FtbGRlcCBvY2FtbGRvYyBvY2FtbGxleCBvY2FtbG9w
 dAogUEFUVEVSTj0JW1s6c3BhY2U6XV0qKGRvfHRoZW4pP1tbOnNwYWNlOl1dKikoXCQkXChDUFwp
 fGNwKShbWzpzcGFjZTpdXQogCiBOT19TVEFHRT0JeWVzCi0uaW5jbHVkZSA8YnNkLnBvcnQucHJl
 Lm1rPgorLmluY2x1ZGUgPGJzZC5wb3J0Lm9wdGlvbnMubWs+CiAKIC5pZiAke0FSQ0h9ID09IHBv
 d2VycGMKIEFSQ0g9CXBvd2VyCi0uZW5kaWYKLQotLmlmICR7QVJDSH0gPT0gcG93ZXIKIFBMSVNU
 X1NVQis9CVBST0Y9IkBjb21tZW50ICIKIC5lbHNlCiBQTElTVF9TVUIrPQlQUk9GPSIiCiAuZW5k
 aWYKIAotLmluY2x1ZGUgIiR7RklMRVNESVJ9L21hbmZpbGVzIgorLmlmICR7QVJDSH0gPT0gc3Bh
 cmM2NAorQlJPS0VOPQlvY2FtbGMub3B0IHNlZy1mYXVsdHMgb24gJHtBUkNIfSwgcGxlYXNlIHRy
 eSB0byBmaXgKKy5lbmRpZgogCisuaWYgJHtQT1JUX09QVElPTlM6TURPQ1N9CitET0NTRElTVE5B
 TUU9CSR7RElTVE5BTUU6Qy8oW1s6ZGlnaXQ6XV0rKVwuKFtbOmRpZ2l0Ol1dKylcLihbWzpkaWdp
 dDpdXSspL1wxLlwyL30KK0RJU1RGSUxFUys9CSR7RE9DU0RJU1ROQU1FfS1yZWZtYW4taHRtbC50
 YXIuZ3ogXAorCQkke0RPQ1NESVNUTkFNRX0tcmVmbWFuLnBzLmd6IFwKKwkJJHtET0NTRElTVE5B
 TUV9LXJlZm1hbi5wZGYKK0VYVFJBQ1RfT05MWSs9CSR7RE9DU0RJU1ROQU1FfS1yZWZtYW4taHRt
 bC50YXIuZ3oKK1BMSVNUX1NVQis9CURPQz0iIgorUE9SVERPQ1MgPQlodG1sbWFuICR7RE9DU0RJ
 U1ROQU1FfS1yZWZtYW4ucHMuZ3ogJHtET0NTRElTVE5BTUV9LXJlZm1hbi5wZGYKKy5lbHNlCitQ
 TElTVF9TVUIrPQlET0M9IkBjb21tZW50ICIKKy5lbmRpZgorCiAuaWYgJHtQT1JUX09QVElPTlM6
 TVRIUkVBRFN9CiBQTElTVF9TVUIrPQlUSFJFQURTPSIiCiBUSFJfQ1BQPQkke1BUSFJFQURfQ0ZM
 QUdTfQpAQCAtNjYsMjMgKzg0LDE2IEBACiBDT05GSUdVUkVfQVJHUys9LXgxMWluY2x1ZGUgJHtM
 T0NBTEJBU0V9L2luY2x1ZGUgLXgxMWxpYiAke0xPQ0FMQkFTRX0vbGliCiAuZWxzZQogUExJU1Rf
 U1VCKz0JWDExPSJAY29tbWVudCAiCi1XSVRIT1VUX1RLPQl5ZXMKIFNGWD0JCS1ub3gxMQogQ09O
 RkxJQ1RTKz0Jb2NhbWwtWzAtOV0qIG9jYW1sLW5vdGstWzAtOV0qCiBDT05GSUdVUkVfQVJHUys9
 LW5vLXgxMQogLmVuZGlmCiAKLS5pZiAhICR7UE9SVF9PUFRJT05TOk1US30KLVBMSVNUX1NVQis9
 CVRLPSJAY29tbWVudCAiCi0uaWYgJHtQT1JUX09QVElPTlM6TVgxMX0KLVNGWD0JCS1ub3RrCi1D
 T05GTElDVFMrPQlvY2FtbC1bMC05XSogb2NhbWwtbm94MTEtWzAtOV0qCi0uZW5kaWYKLUNPTkZJ
 R1VSRV9BUkdTKz0tbm8tdGsKLS5lbHNlCi1VU0VfVEs9CQk4NCsKLUlOVkFMSURfVEtfVkVSID0J
 ODYKLS5pbmNsdWRlICIke1BPUlRTRElSfS9Nay9ic2QudGNsLm1rIgorLmlmICR7UE9SVF9PUFRJ
 T05TOk1US30KKy4gaWYgISAke1BPUlRfT1BUSU9OUzpNWDExfQorSUdOT1JFPQlUSyBzdXBwb3J0
 IHJlcXVpcmVzIFgxMSBzdXBwb3J0CisuIGVuZGlmCitVU0VTKz0JCXRrOjg0KwogUExJU1RfU1VC
 Kz0JVEs9IiIKIENPTkZMSUNUUys9CW9jYW1sLW5veDExLVswLTldKiBvY2FtbC1ub3RrLVswLTld
 KgogQ09ORklHVVJFX0FSR1MrPQktdGtkZWZzIFwKQEAgLTg5LDExICsxMDAsMTcgQEAKIAkJCSIt
 SSR7VENMX0lOQ0xVREVESVJ9IC1JJHtUS19JTkNMVURFRElSfSAke1RIUl9DUFB9IiBcCiAJCQkt
 dGtsaWJzICItTCR7TE9DQUxCQVNFfS9saWIgLWx0ayR7VEtfVkVSOlN8Lnx8fSBcCiAJCQktbHRj
 bCR7VENMX1ZFUjpTfC58fH0gJHtUSFJfTER9IgorLmVsc2UKK1BMSVNUX1NVQis9CVRLPSJAY29t
 bWVudCAiCisuIGlmICR7UE9SVF9PUFRJT05TOk1YMTF9CitTRlg9CQktbm90aworQ09ORkxJQ1RT
 Kz0Jb2NhbWwtWzAtOV0qIG9jYW1sLW5veDExLVswLTldKgorLiBlbmRpZgorQ09ORklHVVJFX0FS
 R1MrPS1uby10awogLmVuZGlmCiAKLS5pZiAke0FSQ0h9ID09IHNwYXJjNjQKLUJST0tFTj0Jb2Nh
 bWxjLm9wdCBzZWctZmF1bHRzIG9uICR7QVJDSH0sIHBsZWFzZSB0cnkgdG8gZml4Ci0uZW5kaWYK
 Ky5pbmNsdWRlIDxic2QucG9ydC5wcmUubWs+CisuaW5jbHVkZSAiJHtGSUxFU0RJUn0vbWFuZmls
 ZXMiCiAKIHBvc3QtZXh0cmFjdDoKIC5pZiAke0FSQ0h9ID09IHBvd2VyCkBAIC0xNTMsOCArMTcw
 LDE2IEBACiAJCSIhIC1uYW1lIC5jdnNpZ25vcmUiKQogLmVuZGlmCiAKLS5mb3IgUFJPRyBpbiBj
 YW1scDRvLm9wdCBjYW1scDRyLm9wdCBvY2FtbGMub3B0IG9jYW1sZGVwLm9wdCBvY2FtbGRvYy5v
 cHQgXAotCQlvY2FtbGxleC5vcHQgb2NhbWxvcHQub3B0IG9jYW1scnVuIG9jYW1seWFjYworLmlm
 ICR7UE9SVF9PUFRJT05TOk1ET0NTfQorCSR7TUtESVJ9ICR7RE9DU0RJUn0KKwkoY2QgJHtXUktE
 SVJ9ICYmICR7Q09QWVRSRUVfU0hBUkV9IGh0bWxtYW4gJHtET0NTRElSfSkKKwkke0lOU1RBTExf
 REFUQX0gJHtfRElTVERJUn0ke0RPQ1NESVNUTkFNRX0tcmVmbWFuLnBzLmd6ICR7RE9DU0RJUn0K
 Kwkke0lOU1RBTExfREFUQX0gJHtfRElTVERJUn0ke0RPQ1NESVNUTkFNRX0tcmVmbWFuLnBkZiAk
 e0RPQ1NESVJ9CisuZW5kaWYKKworLmZvciBQUk9HIGluIGNhbWxwNG8ub3B0IGNhbWxwNG9mLm9w
 dCBjYW1scDRvb2Yub3B0IGNhbWxwNG9yZi5vcHQgXAorCWNhbWxwNHIub3B0IGNhbWxwNHJmLm9w
 dCBvY2FtbGMub3B0IG9jYW1sZGVwLm9wdCBvY2FtbGRvYy5vcHQgXAorCW9jYW1sbGV4Lm9wdCBv
 Y2FtbG9wdC5vcHQgb2NhbWxydW4gb2NhbWx5YWNjCiAJQCR7U1RSSVBfQ01EfSAke1BSRUZJWH0v
 YmluLyR7UFJPR30KIC5lbmRmb3IKIApAQCAtMTc0LDE5ICsxOTksNCBAQAogLiBlbmRmb3IKIC5l
 bmRpZgogCi0jIEFkZCBjb21waWxlcidzIGxpYnMgaWYgcmVxdWlyZWQKLS5pZiAke1BPUlRfT1BU
 SU9OUzpNQ01QX0xJQn0KLQlAJHtNS0RJUn0gICR7UFJFRklYfS9saWIvb2NhbWwvY29tcGlsZXIt
 bGliCi0JQCR7SU5TVEFMTF9EQVRBfSAke1dSS1NSQ30vdXRpbHMvKi5jbSogJHtQUkVGSVh9L2xp
 Yi9vY2FtbC9jb21waWxlci1saWIKLQlAJHtJTlNUQUxMX0RBVEF9ICR7V1JLU1JDfS91dGlscy8q
 Lm8gJHtQUkVGSVh9L2xpYi9vY2FtbC9jb21waWxlci1saWIKLQlAJHtJTlNUQUxMX0RBVEF9ICR7
 V1JLU1JDfS9wYXJzaW5nLyouY20qICR7UFJFRklYfS9saWIvb2NhbWwvY29tcGlsZXItbGliCi0J
 QCR7SU5TVEFMTF9EQVRBfSAke1dSS1NSQ30vcGFyc2luZy8qLm8gJHtQUkVGSVh9L2xpYi9vY2Ft
 bC9jb21waWxlci1saWIKLQlAJHtJTlNUQUxMX0RBVEF9ICR7V1JLU1JDfS90eXBpbmcvKi5jbSog
 JHtQUkVGSVh9L2xpYi9vY2FtbC9jb21waWxlci1saWIKLQlAJHtJTlNUQUxMX0RBVEF9ICR7V1JL
 U1JDfS90eXBpbmcvKi5vICR7UFJFRklYfS9saWIvb2NhbWwvY29tcGlsZXItbGliCi0JQCR7RklO
 RH0gJHtQUkVGSVh9L2xpYi9vY2FtbC9jb21waWxlci1saWIgLXR5cGUgZiB8IFwKLQkJJHtTRUR9
 ICJzLF4ke1BSRUZJWH0vLCwiID4+ICR7VE1QUExJU1R9Ci0JQCR7RUNIT19DTUR9ICJAZGlycm0g
 bGliL29jYW1sL2NvbXBpbGVyLWxpYiIgPj4gJHtUTVBQTElTVH0KLS5lbmRpZgotCUAke0VDSE9f
 Q01EfSAiQHVuZXhlYyBybWRpciAiJUQvbGliL29jYW1sIiAyPi9kZXYvbnVsbCB8fCB0cnVlIiA+
 PiAke1RNUFBMSVNUfQotCiAuaW5jbHVkZSA8YnNkLnBvcnQucG9zdC5taz4KSW5kZXg6IGRpc3Rp
 bmZvCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT0KLS0tIGRpc3RpbmZvCShyZXZpc2lvbiAzMzQ0NzEpCisrKyBkaXN0aW5m
 bwkod29ya2luZyBjb3B5KQpAQCAtMSwyICsxLDggQEAKLVNIQTI1NiAob2NhbWwtMy4xMi4xLnRh
 ci5iejIpID0gZWRjZjU2M2RhNzVlMGI5MWYwOTc2NTY0OWNhYTk4YWIxNTM1ZTBjNzQ5OGYwNzM3
 YjU1OTFiN2RlMDg0OTU4ZAotU0laRSAob2NhbWwtMy4xMi4xLnRhci5iejIpID0gMjk0OTEyNAor
 U0hBMjU2IChvY2FtbC00LjAxLjAudGFyLmJ6MikgPSBiMWNhNzA4OTk0MTgwMjM2OTE3YWU3OWUx
 NzYwNmRhNWJkMzM0Y2E2YWNkNjg3M2E1NTAwMjdlMWMwZWM4NzRhCitTSVpFIChvY2FtbC00LjAx
 LjAudGFyLmJ6MikgPSAzNjkxMDkwCitTSEEyNTYgKG9jYW1sLTQuMDEtcmVmbWFuLWh0bWwudGFy
 Lmd6KSA9IDAxMDE5YzhmOGEyOWE4YTdmNDIyZTA5MDcwNGI2NjZhZGUyYTAwN2Q1N2VhOTQxMjI4
 NWY4OGY3MTY2NTYwMDEKK1NJWkUgKG9jYW1sLTQuMDEtcmVmbWFuLWh0bWwudGFyLmd6KSA9IDU3
 MTQyMgorU0hBMjU2IChvY2FtbC00LjAxLXJlZm1hbi5wcy5neikgPSA0ZGU2N2VmOTY3YjhiMzlh
 NmYwMzBkZjI1ODA4NzIzOWQ2ZjdkZWU4NjlhMzk3M2Q3YTc4MmI3OTg2YjgwOWM2CitTSVpFIChv
 Y2FtbC00LjAxLXJlZm1hbi5wcy5neikgPSAxMDg5NzAzCitTSEEyNTYgKG9jYW1sLTQuMDEtcmVm
 bWFuLnBkZikgPSAzODllNDM0ZjUzNDE1MzUzMGJhMjM0Mjk5ZDBmM2EwZTQyNzFkMThiMDkxYjky
 MTZlNGEzNzMzNWViZDMzNDI0CitTSVpFIChvY2FtbC00LjAxLXJlZm1hbi5wZGYpID0gMTQ3ODkw
 MApJbmRleDogZmlsZXMvbWFuZmlsZXMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZmlsZXMvbWFuZmlsZXMJKHJl
 dmlzaW9uIDMzNDQ3MSkKKysrIGZpbGVzL21hbmZpbGVzCSh3b3JraW5nIGNvcHkpCkBAIC04LDkx
 ICs4LDk0IEBACiAJb2NhbWxsZXguMSBcCiAJb2NhbWxta3RvcC4xIFwKIAlvY2FtbG9wdC4xIFwK
 KwlvY2FtbG9wdHAuMSBcCiAJb2NhbWxwcm9mLjEgXAogCW9jYW1scnVuLjEgXAogCW9jYW1seWFj
 Yy4xCiAKLU1BTk49CUFyZy5uIFwKLQlBcnJheS5uIFwKLQlBcnJheUxhYmVscy5uIFwKLQlCaWdh
 cnJheS5BcnJheTEubiBcCi0JQmlnYXJyYXkuQXJyYXkyLm4gXAotCUJpZ2FycmF5LkFycmF5My5u
 IFwKLQlCaWdhcnJheS5HZW5hcnJheS5uIFwKLQlCaWdhcnJheS5uIFwKLQlCdWZmZXIubiBcCi0J
 Q2FsbGJhY2subiBcCi0JQ2FtbGludGVybmFsT08ubiBcCi0JQ2FtbGludGVybmFsTGF6eS5uIFwK
 LQlDYW1saW50ZXJuYWxNb2QubiBcCi0JQ2hhci5uIFwKLQlDb21wbGV4Lm4gXAotCURpZ2VzdC5u
 IFwKLQlGaWxlbmFtZS5uIFwKLQlGb3JtYXQubiBcCi0JR2MubiBcCi0JR2VubGV4Lm4gXAotCUhh
 c2h0YmwuSGFzaGVkVHlwZS5uIFwKLQlIYXNodGJsLk1ha2UubiBcCi0JSGFzaHRibC5TLm4gXAot
 CUhhc2h0YmwubiBcCi0JSW50MzIubiBcCi0JSW50NjQubiBcCi0JTGF6eS5uIFwKLQlMZXhpbmcu
 biBcCi0JTGlzdC5uIFwKLQlMaXN0TGFiZWxzLm4gXAotCU1hcC5NYWtlLm4gXAotCU1hcC5PcmRl
 cmVkVHlwZS5uIFwKLQlNYXAuUy5uIFwKLQlNYXAubiBcCi0JTWFyc2hhbC5uIFwKLQlNb3JlTGFi
 ZWxzLkhhc2h0YmwuSGFzaGVkVHlwZS5uIFwKLQlNb3JlTGFiZWxzLkhhc2h0YmwuTWFrZS5uIFwK
 LQlNb3JlTGFiZWxzLkhhc2h0YmwuUy5uIFwKLQlNb3JlTGFiZWxzLkhhc2h0YmwubiBcCi0JTW9y
 ZUxhYmVscy5NYXAuTWFrZS5uIFwKLQlNb3JlTGFiZWxzLk1hcC5PcmRlcmVkVHlwZS5uIFwKLQlN
 b3JlTGFiZWxzLk1hcC5TLm4gXAotCU1vcmVMYWJlbHMuTWFwLm4gXAotCU1vcmVMYWJlbHMuU2V0
 Lk1ha2UubiBcCi0JTW9yZUxhYmVscy5TZXQuT3JkZXJlZFR5cGUubiBcCi0JTW9yZUxhYmVscy5T
 ZXQuUy5uIFwKLQlNb3JlTGFiZWxzLlNldC5uIFwKLQlNb3JlTGFiZWxzLm4gXAotCU5hdGl2ZWlu
 dC5uIFwKLQlOdW0ubiBcCi0JT2JqLm4gXAotCU9vLm4gXAotCVBhcnNpbmcubiBcCi0JUGVydmFz
 aXZlcy5MYXJnZUZpbGUubiBcCi0JUGVydmFzaXZlcy5uIFwKLQlQcmludGV4Yy5uIFwKLQlQcmlu
 dGYubiBcCi0JUXVldWUubiBcCi0JUmFuZG9tLm4gXAotCVJhbmRvbS5TdGF0ZS5uIFwKLQlTY2Fu
 Zi5TY2FubmluZy5uIFwKLQlTY2FuZi5uIFwKLQlTZXQuTWFrZS5uIFwKLQlTZXQuT3JkZXJlZFR5
 cGUubiBcCi0JU2V0LlMubiBcCi0JU2V0Lm4gXAotCVNvcnQubiBcCi0JU3RhY2subiBcCi0JU3Rk
 TGFiZWxzLkFycmF5Lm4gXAotCVN0ZExhYmVscy5MaXN0Lm4gXAotCVN0ZExhYmVscy5TdHJpbmcu
 biBcCi0JU3RkTGFiZWxzLm4gXAotCVN0ci5uIFwKLQlTdHJlYW0ubiBcCi0JU3RyaW5nLm4gXAot
 CVN0cmluZ0xhYmVscy5uIFwKLQlTeXMubiBcCi0JVW5peC5MYXJnZUZpbGUubiBcCi0JVW5peC5u
 IFwKLQlXZWFrLk1ha2UubiBcCi0JV2Vhay5TLm4gXAotCVdlYWsubgorTUFOTj0JQXJnLjNvIFwK
 KwlBcnJheS4zbyBcCisJQXJyYXlMYWJlbHMuM28gXAorCUJpZ2FycmF5LjNvIFwKKwlCaWdhcnJh
 eS5BcnJheTEuM28gXAorCUJpZ2FycmF5LkFycmF5Mi4zbyBcCisJQmlnYXJyYXkuQXJyYXkzLjNv
 IFwKKwlCaWdhcnJheS5HZW5hcnJheS4zbyBcCisJQnVmZmVyLjNvIFwKKwlDYWxsYmFjay4zbyBc
 CisJQ2FtbGludGVybmFsTGF6eS4zbyBcCisJQ2FtbGludGVybmFsTW9kLjNvIFwKKwlDYW1saW50
 ZXJuYWxPTy4zbyBcCisJQ29tcGxleC4zbyBcCisJRGlnZXN0LjNvIFwKKwlGaWxlbmFtZS4zbyBc
 CisJRm9ybWF0LjNvIFwKKwlHYy4zbyBcCisJR2VubGV4LjNvIFwKKwlIYXNodGJsLjNvIFwKKwlI
 YXNodGJsLkhhc2hlZFR5cGUuM28gXAorCUhhc2h0YmwuTWFrZS4zbyBcCisJSGFzaHRibC5NYWtl
 U2VlZGVkLjNvIFwKKwlIYXNodGJsLlMuM28gXAorCUhhc2h0YmwuU2VlZGVkSGFzaGVkVHlwZS4z
 byBcCisJSGFzaHRibC5TZWVkZWRTLjNvIFwKKwlJbnQzMi4zbyBcCisJSW50NjQuM28gXAorCUxl
 eGluZy4zbyBcCisJTGlzdC4zbyBcCisJTGlzdExhYmVscy4zbyBcCisJTWFwLjNvIFwKKwlNYXAu
 TWFrZS4zbyBcCisJTWFwLk9yZGVyZWRUeXBlLjNvIFwKKwlNYXAuUy4zbyBcCisJTWFyc2hhbC4z
 byBcCisJTW9yZUxhYmVscy4zbyBcCisJTW9yZUxhYmVscy5IYXNodGJsLjNvIFwKKwlNb3JlTGFi
 ZWxzLkhhc2h0YmwuSGFzaGVkVHlwZS4zbyBcCisJTW9yZUxhYmVscy5IYXNodGJsLk1ha2UuM28g
 XAorCU1vcmVMYWJlbHMuSGFzaHRibC5NYWtlU2VlZGVkLjNvIFwKKwlNb3JlTGFiZWxzLkhhc2h0
 YmwuUy4zbyBcCisJTW9yZUxhYmVscy5IYXNodGJsLlNlZWRlZEhhc2hlZFR5cGUuM28gXAorCU1v
 cmVMYWJlbHMuSGFzaHRibC5TZWVkZWRTLjNvIFwKKwlNb3JlTGFiZWxzLk1hcC4zbyBcCisJTW9y
 ZUxhYmVscy5NYXAuTWFrZS4zbyBcCisJTW9yZUxhYmVscy5NYXAuT3JkZXJlZFR5cGUuM28gXAor
 CU1vcmVMYWJlbHMuTWFwLlMuM28gXAorCU1vcmVMYWJlbHMuU2V0LjNvIFwKKwlNb3JlTGFiZWxz
 LlNldC5NYWtlLjNvIFwKKwlNb3JlTGFiZWxzLlNldC5PcmRlcmVkVHlwZS4zbyBcCisJTW9yZUxh
 YmVscy5TZXQuUy4zbyBcCisJTmF0aXZlaW50LjNvIFwKKwlOdW0uM28gXAorCU9iai4zbyBcCisJ
 T28uM28gXAorCVBhcnNpbmcuM28gXAorCVBlcnZhc2l2ZXMuM28gXAorCVBlcnZhc2l2ZXMuTGFy
 Z2VGaWxlLjNvIFwKKwlQcmludGV4Yy4zbyBcCisJUHJpbnRmLjNvIFwKKwlRdWV1ZS4zbyBcCisJ
 UmFuZG9tLjNvIFwKKwlSYW5kb20uU3RhdGUuM28gXAorCVNjYW5mLjNvIFwKKwlTY2FuZi5TY2Fu
 bmluZy4zbyBcCisJU2V0Lk1ha2UuM28gXAorCVNldC5PcmRlcmVkVHlwZS4zbyBcCisJU2V0LlMu
 M28gXAorCVNvcnQuM28gXAorCVN0YWNrLjNvIFwKKwlTdGRMYWJlbHMuM28gXAorCVN0ZExhYmVs
 cy5BcnJheS4zbyBcCisJU3RkTGFiZWxzLkxpc3QuM28gXAorCVN0ZExhYmVscy5TdHJpbmcuM28g
 XAorCVN0ci4zbyBcCisJU3RyZWFtLjNvIFwKKwlTdHJpbmdMYWJlbHMuM28gXAorCVN5cy4zbyBc
 CisJVW5peC4zbyBcCisJVW5peC5MYXJnZUZpbGUuM28gXAorCVdlYWsuM28gXAorCVdlYWsuTWFr
 ZS4zbyBcCisJV2Vhay5TLjNvCiAKIE1MSU5LUz0Jb2NhbWxjLjEgb2NhbWxjLm9wdC4xIG9jYW1s
 b3B0LjEgb2NhbWxvcHQub3B0LjEKSW5kZXg6IGZpbGVzL3BhdGNoLU1ha2VmaWxlCj09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT0KLS0tIGZpbGVzL3BhdGNoLU1ha2VmaWxlCShyZXZpc2lvbiAzMzQ0NzEpCisrKyBmaWxlcy9w
 YXRjaC1NYWtlZmlsZQkod29ya2luZyBjb3B5KQpAQCAtMSwxMSArMCwwIEBACi0tLS0gTWFrZWZp
 bGUub3JpZwkyMDEwLTA2LTE2IDAzOjMyOjI2LjAwMDAwMDAwMCArMDIwMAotKysrIE1ha2VmaWxl
 CTIwMTEtMTItMTQgMTA6MDI6MDUuNzQ1MDc2NDY4ICswMTAwCi1AQCAtMjg4LDcgKzI4OCw3IEBA
 Ci0gCWNwIGxleC9vY2FtbGxleCAkKEJJTkRJUikvb2NhbWxsZXgkKEVYRSkKLSAJY3AgeWFjYy9v
 Y2FtbHlhY2MkKEVYRSkgJChCSU5ESVIpL29jYW1seWFjYyQoRVhFKQotIAljcCB0b3BsZXZlbC90
 b3BsZXZlbGxpYi5jbWEgJChMSUJESVIpL3RvcGxldmVsbGliLmNtYQotLQljcCBleHB1bmdlICQo
 TElCRElSKS9leHB1bmdlJChFWEUpCi0rCSR7QlNEX0lOU1RBTExfU0NSSVBUfSBleHB1bmdlICQo
 TElCRElSKS9leHB1bmdlJChFWEUpCi0gCWNwIHR5cGluZy9vdXRjb21ldHJlZS5jbWkgdHlwaW5n
 L291dGNvbWV0cmVlLm1saSAkKExJQkRJUikKLSAJY3AgdG9wbGV2ZWwvdG9wc3RhcnQuY21vICQo
 TElCRElSKQotIAljcCB0b3BsZXZlbC90b3Bsb29wLmNtaSB0b3BsZXZlbC90b3BkaXJzLmNtaSB0
 b3BsZXZlbC90b3BtYWluLmNtaSBcCkluZGV4OiBmaWxlcy9wYXRjaC1jYW1scDQtbWFuX01ha2Vm
 aWxlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT0KLS0tIGZpbGVzL3BhdGNoLWNhbWxwNC1tYW5fTWFrZWZpbGUJKHJldmlz
 aW9uIDMzNDQ3MSkKKysrIGZpbGVzL3BhdGNoLWNhbWxwNC1tYW5fTWFrZWZpbGUJKHdvcmtpbmcg
 Y29weSkKQEAgLTEsNiArMSw2IEBACi0tLS0gY2FtbHA0L21hbi9NYWtlZmlsZS5vcmlnCTIwMTAt
 MTEtMDQgMjE6MDQ6NTEuMDAwMDAwMDAwICswODAwCi0rKysgY2FtbHA0L21hbi9NYWtlZmlsZQky
 MDEwLTExLTA0IDIxOjA1OjE0LjAwMDAwMDAwMCArMDgwMAotQEAgLTMsNyArMyw2IEBACistLS0g
 Y2FtbHA0L21hbi9NYWtlZmlsZS5vcmlnCTIwMTItMDctMTcgMTE6MzE6MTIuMDAwMDAwMDAwIC0w
 NDAwCisrKysgY2FtbHA0L21hbi9NYWtlZmlsZQkyMDEzLTExLTIxIDAzOjE2OjI2LjAwMDAwMDAw
 MCAtMDUwMAorQEAgLTE0LDcgKzE0LDYgQEAKICBpbmNsdWRlIC4uL2NvbmZpZy9NYWtlZmlsZS5j
 bmYKICAKICBUQVJHRVQ9Y2FtbHA0LjEKQEAgLTgsNyArOCw3IEBACiAgCiAgaW5jbHVkZSAuLi9j
 b25maWcvTWFrZWZpbGUuYmFzZQogIAotQEAgLTExLDEwICsxMCw2IEBACitAQCAtMjIsMTAgKzIx
 LDYgQEAKICAJaWYgdGVzdCAtbiAnJChNQU5ESVIpJzsgdGhlbiBcCiAgCSAgJChNS0RJUikgJChN
 QU5ESVIpL21hbjEgOyBcCiAgCSAgY3AgJChUQVJHRVQpICQoTUFORElSKS9tYW4xLy4gOyBcCklu
 ZGV4OiBmaWxlcy9wYXRjaC1jb25maWctYXV0by1hdXgtYXN5bmNfaW8uYwo9PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
 LSBmaWxlcy9wYXRjaC1jb25maWctYXV0by1hdXgtYXN5bmNfaW8uYwkocmV2aXNpb24gMCkKKysr
 IGZpbGVzL3BhdGNoLWNvbmZpZy1hdXRvLWF1eC1hc3luY19pby5jCSh3b3JraW5nIGNvcHkpCkBA
 IC0wLDAgKzEsMTAgQEAKKy0tLSBjb25maWcvYXV0by1hdXgvYXN5bmNfaW8uYwkyMDEyLTExLTAx
 IDE3OjM2OjAyLjAwMDAwMDAwMCArMDEwMAorKysrIGNvbmZpZy9hdXRvLWF1eC9hc3luY19pby5j
 Lm9yaWcJMjAxMi0xMS0wMSAxNzozNTo0Ni4wMDAwMDAwMDAgKzAxMDAKK0BAIC0xMyw3ICsxMyw4
 IEBACisgCisgLyogJElkOiBhc3luY19pby5jIDExMTU2IDIwMTEtMDctMjcgMTQ6MTc6MDJaIGRv
 bGlnZXogJCAqLworIAorKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyAjaW5jbHVkZSA8c3RkaW8uaD4K
 KyAjaW5jbHVkZSA8ZmNudGwuaD4KKyAjaW5jbHVkZSA8c2lnbmFsLmg+CgpQcm9wZXJ0eSBjaGFu
 Z2VzIG9uOiBmaWxlcy9wYXRjaC1jb25maWctYXV0by1hdXgtYXN5bmNfaW8uYwpfX19fX19fX19f
 X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
 CkFkZGVkOiBzdm46bWltZS10eXBlCiMjIC0wLDAgKzEgIyMKK3RleHQvcGxhaW4KXCBObyBuZXds
 aW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpBZGRlZDogZmJzZDpub2tleXdvcmRzCiMjIC0wLDAgKzEg
 IyMKK3llcwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkFkZGVkOiBzdm46ZW9sLXN0
 eWxlCiMjIC0wLDAgKzEgIyMKK25hdGl2ZQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5
 CkluZGV4OiBmaWxlcy9wYXRjaC1jb25maWd1cmUKPT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZmlsZXMvcGF0Y2gt
 Y29uZmlndXJlCShyZXZpc2lvbiAzMzQ0NzEpCisrKyBmaWxlcy9wYXRjaC1jb25maWd1cmUJKHdv
 cmtpbmcgY29weSkKQEAgLTEsMjAwICsxLDE4IEBACi0kRnJlZUJTRCQKLQotLS0tIGNvbmZpZ3Vy
 ZS5vcmlnCTIwMTEtMDctMDQgMjI6MTU6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgY29uZmlndXJl
 CTIwMTItMDEtMTUgMjA6Mjk6MzAuMzE5Njc0ODAzICswMDAwCi1AQCAtODUsNiArODUsOCBAQAot
 ICAgICAgICAgd2l0aGN1cnNlcz1ubzs7Ci0gICAgIC1uby1zaGFyZWQtbGlicykKLSAgICAgICAg
 IHdpdGhzaGFyZWRsaWJzPW5vOzsKLSsgICAgLW5vLXgxMXwtLW5vLXgxMSkKLSsgICAgICAgIHgx
 MV93YW50ZWQ9bm87OwotICAgICAteDExaW5jbHVkZSp8LS14MTFpbmNsdWRlKikKLSAgICAgICAg
 IHgxMV9pbmNsdWRlX2Rpcj0kMjsgc2hpZnQ7OwotICAgICAteDExbGliKnwtLXgxMWxpYiopCi1A
 QCAtNTIxLDcgKzUyMyw3IEBACi0gICAgICAgbWtzaGFyZWRsaWI9IiRmbGV4bGluayIKLSAgICAg
 ICBta21haW5kbGw9IiRmbGV4bGluayAtbWFpbmRsbCIKLSAgICAgICBzaGFyZWRfbGlicmFyaWVz
 X3N1cHBvcnRlZD10cnVlOzsKLS0gICAgKi0qLWxpbnV4LWdudXwqLSotbGludXh8Ki0qLWZyZWVi
 c2RbMy05XSp8Ki0qLW9wZW5ic2QqfCotKi1uZXRic2QqfCotKi1nbnUqKQotKyAgICAqLSotbGlu
 dXgtZ251fCotKi1saW51eHwqLSotZnJlZWJzZCp8Ki0qLW9wZW5ic2QqfCotKi1uZXRic2QqfCot
 Ki1nbnUqKQotICAgICAgIHNoYXJlZGNjY29tcG9wdHM9Ii1mUElDIgotICAgICAgIG1rc2hhcmVk
 bGliPSIkYnl0ZWNjIC1zaGFyZWQiCi0gICAgICAgYnl0ZWNjbGlua29wdHM9IiRieXRlY2NsaW5r
 b3B0cyAtV2wsLUUiCi1AQCAtNjM2LDYgKzYzOCw3IEBACi0gICAgIGlbMzQ1XTg2LSotbmV0YnNk
 KikgICAgICAgICAgIG5hdGR5bmxpbms9dHJ1ZTs7Ci0gICAgIHg4Nl82NC0qLW5ldGJzZCopICAg
 ICAgICAgICAgIG5hdGR5bmxpbms9dHJ1ZTs7Ci0gICAgIGkzODYtKi1nbnUwLjMpICAgICAgICAg
 ICAgICAgIG5hdGR5bmxpbms9dHJ1ZTs7Ci0rICAgICotKi1mcmVlYnNkKikgICAgICAgICAgICAg
 ICAgIG5hdGR5bmxpbms9dHJ1ZTs7Ci0gICBlc2FjCi0gZmkKLSAKLUBAIC02ODcsNiArNjkwLDcg
 QEAKLSAgIGhwcGEqLSotZ251KikgICAgICAgICAgICAgICAgIGFyY2g9aHBwYTsgc3lzdGVtPWdu
 dTs7CistLS0gY29uZmlndXJlLm9yaWcJMjAxMi0xMS0wMSAxNzoxNDo1NS4wMDAwMDAwMDAgKzAx
 MDAKKysrKyBjb25maWd1cmUJMjAxMi0xMS0wMSAxNzoyMzo0NC4wMDAwMDAwMDAgKzAxMDAKK0BA
 IC02ODcsNiArNjg5LDcgQEAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpOzsK
 KyAgIGlbMzQ1Nl04Ni0qLWdudSopICAgICAgICAgICAgIGFyY2g9aTM4Njsgc3lzdGVtPWdudTs7
 CiAgICBwb3dlcnBjKi0qLWxpbnV4KikgICAgICAgICAgICBhcmNoPXBvd2VyOyBtb2RlbD1wcGM7
 IHN5c3RlbT1lbGY7OworKyAgcG93ZXJwYy0qLWZyZWVic2QqKSAgICAgICAgICAgYXJjaD1wb3dl
 cjsgbW9kZWw9cHBjOyBzeXN0ZW09ZWxmOzsKICAgIHBvd2VycGMtKi1uZXRic2QqKSAgICAgICAg
 ICAgIGFyY2g9cG93ZXI7IG1vZGVsPXBwYzsgc3lzdGVtPWVsZjs7Ci0rICBwb3dlcnBjLSotZnJl
 ZWJzZCopICAgICAgICAgICBhcmNoPXBvd2VyOyBtb2RlbD1wcGM7IHN5c3RlbT1ic2Q7OwogICAg
 cG93ZXJwYy0qLXJoYXBzb2R5KikgICAgICAgICAgYXJjaD1wb3dlcjsgbW9kZWw9cHBjOyBzeXN0
 ZW09cmhhcHNvZHk7OwogICAgcG93ZXJwYy0qLWRhcndpbiopICAgICAgICAgICAgYXJjaD1wb3dl
 cjsgc3lzdGVtPXJoYXBzb2R5Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAk
 YXJjaDY0OyB0aGVuIG1vZGVsPXBwYzY0OyBlbHNlIG1vZGVsPXBwYzsgZmk7OwotQEAgLTc5Niw2
 ICs4MDAsNyBAQAotICAgaTM4NiwqLGJzZF9lbGYpIHByb2ZpbGluZz0ncHJvZic7OwotICAgYW1k
 NjQsKixtYWNvc3gpIHByb2ZpbGluZz0ncHJvZic7OwotICAgaTM4NiwqLG1hY29zeCkgcHJvZmls
 aW5nPSdwcm9mJzs7CitAQCAtNzg2LDYgKzc4OSw3IEBACisgICBhbWQ2NCwqLGxpbnV4KSBwcm9m
 aWxpbmc9J3Byb2YnOzsKKyAgIGFtZDY0LCosZ251KSBwcm9maWxpbmc9J3Byb2YnOzsKKyAgIGFy
 bSwqLGxpbnV4KikgcHJvZmlsaW5nPSdwcm9mJzs7CiArICAqLCosZnJlZWJzZCkgcHJvZmlsaW5n
 PSdwcm9mJzs7Ci0gICBzcGFyYywqLHNvbGFyaXMpCi0gICAgIHByb2ZpbGluZz0ncHJvZicKLSAg
 ICAgY2FzZSAiJG5hdGl2ZWNjIiBpbiBnY2MqKSA7OyAqKSBjY19wcm9maWxlPScteHBnJzs7IGVz
 YWM7OwotQEAgLTEyNTYsMTMzICsxMjYxLDI0IEBACi0geDExX2luY2x1ZGU9Im5vdCBmb3VuZCIK
 LSB4MTFfbGluaz0ibm90IGZvdW5kIgorICAgKikgcHJvZmlsaW5nPSdub3Byb2YnOzsKKyBlc2Fj
 CiAgCi0tZm9yIGRpciBpbiBcCi0tICAgICR4MTFfaW5jbHVkZV9kaXIgICAgICAgICAgXAotLSAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLS0gICAgL3Vzci9YMTFSNy9pbmNsdWRlICAg
 ICAgICBcCi0tICAgIC91c3IvaW5jbHVkZS9YMTFSNyAgICAgICAgXAotLSAgICAvdXNyL2xvY2Fs
 L1gxMVI3L2luY2x1ZGUgIFwKLS0gICAgL3Vzci9sb2NhbC9pbmNsdWRlL1gxMVI3ICBcCi0tICAg
 IC9vcHQvWDExUjcvaW5jbHVkZSAgICAgICAgXAotLSAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIFwKLS0gICAgL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICBcCi0tICAgIC91c3IvaW5jbHVk
 ZS9YMTFSNiAgICAgICAgXAotLSAgICAvdXNyL2xvY2FsL1gxMVI2L2luY2x1ZGUgIFwKLS0gICAg
 L3Vzci9sb2NhbC9pbmNsdWRlL1gxMVI2ICBcCi0tICAgIC9vcHQvWDExUjYvaW5jbHVkZSAgICAg
 ICAgXAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLS0gICAgL3Vzci9YMTEvaW5j
 bHVkZSAgICAgICAgICBcCi0tICAgIC91c3IvaW5jbHVkZS9YMTEgICAgICAgICAgXAotLSAgICAv
 dXNyL2xvY2FsL1gxMS9pbmNsdWRlICAgIFwKLS0gICAgL3Vzci9sb2NhbC9pbmNsdWRlL1gxMSAg
 ICBcCi0tICAgIC9vcHQvWDExL2luY2x1ZGUgICAgICAgICAgXAotLSAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIFwKLS0gICAgL3Vzci9YMTFSNS9pbmNsdWRlICAgICAgICBcCi0tICAgIC91
 c3IvaW5jbHVkZS9YMTFSNSAgICAgICAgXAotLSAgICAvdXNyL2xvY2FsL1gxMVI1L2luY2x1ZGUg
 IFwKLS0gICAgL3Vzci9sb2NhbC9pbmNsdWRlL1gxMVI1ICBcCi0tICAgIC91c3IvbG9jYWwveDEx
 cjUvaW5jbHVkZSAgXAotLSAgICAvb3B0L1gxMVI1L2luY2x1ZGUgICAgICAgIFwKLS0gICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAgIC91c3IvWDExUjQvaW5jbHVkZSAgICAgICAg
 XAotLSAgICAvdXNyL2luY2x1ZGUvWDExUjQgICAgICAgIFwKLS0gICAgL3Vzci9sb2NhbC9YMTFS
 NC9pbmNsdWRlICBcCi0tICAgIC91c3IvbG9jYWwvaW5jbHVkZS9YMTFSNCAgXAotLSAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIFwKLS0gICAgL3Vzci9YMzg2L2luY2x1ZGUgICAgICAgICBc
 Ci0tICAgIC91c3IveDM4Ni9pbmNsdWRlICAgICAgICAgXAotLSAgICAvdXNyL1hGcmVlODYvaW5j
 bHVkZS9YMTEgIFwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAgIC91c3Iv
 aW5jbHVkZSAgICAgICAgICAgICAgXAotLSAgICAvdXNyL2xvY2FsL2luY2x1ZGUgICAgICAgIFwK
 LS0gICAgL3Vzci91bnN1cHBvcnRlZC9pbmNsdWRlICBcCi0tICAgIC91c3IvYXRoZW5hL2luY2x1
 ZGUgICAgICAgXAotLSAgICAvdXNyL2xwcC9YYW1wbGVzL2luY2x1ZGUgIFwKLS0gICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBcCi0tICAgIC91c3Ivb3Blbndpbi9pbmNsdWRlICAgICAgXAot
 LSAgICAvdXNyL29wZW53aW4vc2hhcmUvaW5jbHVkZSBcCi0tICAgIDsgXAotLWRvCi0tICBpZiB0
 ZXN0IC1mICRkaXIvWDExL1guaDsgdGhlbgotLSAgICB4MTFfaW5jbHVkZT0kZGlyCi0tICAgIGJy
 ZWFrCi0tICBmaQotLWRvbmUKLS0KLS1pZiB0ZXN0ICIkeDExX2luY2x1ZGUiID0gIm5vdCBmb3Vu
 ZCI7IHRoZW4KLS0gIHgxMV90cnlfbGliX2Rpcj0nJwotLWVsc2UKLS0gIHgxMV90cnlfbGliX2Rp
 cj1gZWNobyAkeDExX2luY2x1ZGUgfCBzZWQgLWUgJ3N8aW5jbHVkZXxsaWJ8J2AKLStpZiBbIC1u
 ICIkeDExX2luY2x1ZGVfZGlyIiBdOyB0aGVuCi0rICB4MTFfaW5jbHVkZT0iJHgxMV9pbmNsdWRl
 X2RpciIKLSBmaQotIAotLWZvciBkaXIgaW4gXAotLSAgICAkeDExX2xpYl9kaXIgICAgICAgICAg
 XAotLSAgICAkeDExX3RyeV9saWJfZGlyICAgICAgXAotLSAgICAgICAgICAgICAgICAgICAgICAg
 ICAgXAotLSAgICAvdXNyL1gxMVI2L2xpYjY0ICAgICAgXAotLSAgICAvdXNyL1gxMVI2L2xpYiAg
 ICAgICAgXAotLSAgICAvdXNyL2xpYi9YMTFSNiAgICAgICAgXAotLSAgICAvdXNyL2xvY2FsL1gx
 MVI2L2xpYiAgXAotLSAgICAvdXNyL2xvY2FsL2xpYi9YMTFSNiAgXAotLSAgICAvb3B0L1gxMVI2
 L2xpYiAgICAgICAgXAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAgICAvdXNyL1gx
 MS9saWIgICAgICAgICAgXAotLSAgICAvdXNyL2xpYi9YMTEgICAgICAgICAgXAotLSAgICAvdXNy
 L2xvY2FsL1gxMS9saWIgICAgXAotLSAgICAvdXNyL2xvY2FsL2xpYi9YMTEgICAgXAotLSAgICAv
 b3B0L1gxMS9saWIgICAgICAgICAgXAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAg
 ICAvdXNyL1gxMVI1L2xpYiAgICAgICAgXAotLSAgICAvdXNyL2xpYi9YMTFSNSAgICAgICAgXAot
 LSAgICAvdXNyL2xvY2FsL1gxMVI1L2xpYiAgXAotLSAgICAvdXNyL2xvY2FsL2xpYi9YMTFSNSAg
 XAotLSAgICAvdXNyL2xvY2FsL3gxMXI1L2xpYiAgXAotLSAgICAvb3B0L1gxMVI1L2xpYiAgICAg
 ICAgXAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAgICAvdXNyL1gxMVI0L2xpYiAg
 ICAgICAgXAotLSAgICAvdXNyL2xpYi9YMTFSNCAgICAgICAgXAotLSAgICAvdXNyL2xvY2FsL1gx
 MVI0L2xpYiAgXAotLSAgICAvdXNyL2xvY2FsL2xpYi9YMTFSNCAgXAotLSAgICAgICAgICAgICAg
 ICAgICAgICAgICAgXAotLSAgICAvdXNyL1gzODYvbGliICAgICAgICAgXAotLSAgICAvdXNyL3gz
 ODYvbGliICAgICAgICAgXAotLSAgICAvdXNyL1hGcmVlODYvbGliL1gxMSAgXAotLSAgICAgICAg
 ICAgICAgICAgICAgICAgICAgXAotLSAgICAvdXNyL2xpYjY0ICAgICAgICAgICAgXAotLSAgICAv
 dXNyL2xpYiAgICAgICAgICAgICAgXAotLSAgICAvdXNyL2xvY2FsL2xpYiAgICAgICAgXAotLSAg
 ICAvdXNyL3Vuc3VwcG9ydGVkL2xpYiAgXAotLSAgICAvdXNyL2F0aGVuYS9saWIgICAgICAgXAot
 LSAgICAvdXNyL2xwcC9YYW1wbGVzL2xpYiAgXAotLSAgICAvbGliL3Vzci9saWIvWDExICAgICAg
 XAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAgICAvdXNyL29wZW53aW4vbGliICAg
 ICAgXAotLSAgICAvdXNyL29wZW53aW4vc2hhcmUvbGliIFwKLS0gICAgOyBcCi0tZG8KLS0gIGlm
 IHRlc3QgLWYgJGRpci9saWJYMTEuYSB8fCBcCi0tICAgICB0ZXN0IC1mICRkaXIvbGliWDExLnNv
 IHx8IFwKLS0gICAgIHRlc3QgLWYgJGRpci9saWJYMTEuZGxsLmEgfHwgXAotLSAgICAgdGVzdCAt
 ZiAkZGlyL2xpYlgxMS5keWxpYiB8fCBcCi0tICAgICB0ZXN0IC1mICRkaXIvbGliWDExLnNhOyB0
 aGVuCi0tICAgIGlmIHRlc3QgJGRpciA9IC91c3IvbGliOyB0aGVuCi0tICAgICAgeDExX2xpbms9
 Ii1sWDExIgotLSAgICBlbHNlCi0tICAgICAgeDExX2xpYnM9Ii1MJGRpciIKLS0gICAgICBjYXNl
 ICIkaG9zdCIgaW4KLS0gICAgICAgICotKi0qYnNkKikgeDExX2xpbms9Ii1SJGRpciAtTCRkaXIg
 LWxYMTEiOzsKLS0gICAgICAgICopIHgxMV9saW5rPSItTCRkaXIgLWxYMTEiOzsKLS0gICAgICBl
 c2FjCi0tICAgIGZpCi0tICAgIGJyZWFrCi0tICBmaQotLWRvbmUKLS0KLStpZiBbIC1uICIkeDEx
 X2xpYl9kaXIiIF07IHRoZW4KLSsgIHgxMV9saW5rPSItTCR4MTFfbGliX2RpciAtbFgxMSIKLSsg
 IHgxMV9saWJzPSItTCR4MTFfbGliX2RpciIKLStmaQotIAotIGlmIHRlc3QgIiR4MTFfaW5jbHVk
 ZSIgPSAibm90IGZvdW5kIiB8fCB0ZXN0ICIkeDExX2xpbmsiID0gIm5vdCBmb3VuZCIKLSB0aGVu
 Ci0gICBlY2hvICJYMTEgbm90IGZvdW5kLCB0aGUgXCJncmFwaFwiIGxpYnJhcnkgd2lsbCBub3Qg
 YmUgc3VwcG9ydGVkLiIKLSAgIHgxMV9pbmNsdWRlPSIiCi0rZWxpZiB0ZXN0ICIkeDExX3dhbnRl
 ZCIgPSAibm8iCi0rdGhlbgotKyAgZWNobyAiWDExIHN1cHBvcnQgd2FzIGRpc2FibGVkLCB0aGUg
 XCJncmFwaFwiIGxpYnJhcnkgd2lsbCBub3QgYmUgc3VwcG9ydGVkLiIKLSsgIHgxMV9pbmNsdWRl
 PSIiCi0rICB4MTFfbGluaz0iIgotIGVsc2UKLSAgIGVjaG8gIkxvY2F0aW9uIG9mIFgxMSBpbmNs
 dWRlIGZpbGVzOiAkeDExX2luY2x1ZGUvWDExIgotICAgZWNobyAiT3B0aW9ucyBmb3IgbGlua2lu
 ZyB3aXRoIFgxMTogJHgxMV9saW5rIgotQEAgLTE1MDksNyArMTQwNSw3IEBACi0gICB0aGVuIHRr
 X2xpYnM9IiR0a19saWJzICRkbGxpYiIKLSAgIGVsaWYgc2ggLi9oYXNnb3QgJHRrX2xpYnMgLWx0
 Y2wkdGNsbWFqLiR0Y2xtaW4gJHRrYXV4bGlicyBUY2xfRG9PbmVFdmVudAotICAgdGhlbgotLSAg
 ICB0a19saWJzPSIkdGtfbGlicyAtbHRrJHRrbWFqLiR0a21pbiAtbHRjbCR0Y2xtYWouJHRjbG1p
 biAkZGxsaWIiCi0rICAgIHRrX2xpYnM9IiR0a19saWJzIC1sdGskdGttYWokdGttaW4gLWx0Y2wk
 dGNsbWFqLiR0Y2xtaW4gJGRsbGliIgotICAgZWxpZiBzaCAuL2hhc2dvdCAkdGtfbGlicyAtbHRj
 bCR0Y2xtYWokdGNsbWluICR0a2F1eGxpYnMgVGNsX0RvT25lRXZlbnQKLSAgIHRoZW4KLSAgICAg
 dGtfbGlicz0iJHRrX2xpYnMgLWx0ayR0a21haiR0a21pbiAtbHRjbCR0Y2xtYWokdGNsbWluICRk
 bGxpYiIKSW5kZXg6IGZpbGVzL3BhdGNoLW9jYW1sZG9jX01ha2VmaWxlCj09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
 IGZpbGVzL3BhdGNoLW9jYW1sZG9jX01ha2VmaWxlCShyZXZpc2lvbiAzMzQ0NzEpCisrKyBmaWxl
 cy9wYXRjaC1vY2FtbGRvY19NYWtlZmlsZQkod29ya2luZyBjb3B5KQpAQCAtOSwxNiArOSwzIEBA
 CiAgCiAgSU5TVEFMTF9NTElTPW9kb2NfaW5mby5tbGkKICBJTlNUQUxMX0NNSVM9JChJTlNUQUxM
 X01MSVM6Lm1saT0uY21pKQotQEAgLTI2NSw3ICsyNjUsMTEgQEAKLSAJJChDUCkgb2NhbWxkb2Mu
 aHZhICouY21pICQoT0NBTUxET0NfTElCQ01BKSAkKElOU1RBTExfTElCRElSKQotIAkkKENQKSAk
 KElOU1RBTExfTUxJUykgJChJTlNUQUxMX0NNSVMpICQoSU5TVEFMTF9MSUJESVIpCi0gCWlmIHRl
 c3QgLWQgJChJTlNUQUxMX01BTk9ESVIpOyB0aGVuIDogOyBlbHNlICQoTUtESVIpICQoSU5TVEFM
 TF9NQU5PRElSKTsgZmkKLS0JaWYgdGVzdCAtZCBzdGRsaWJfbWFuOyB0aGVuICQoQ1ApIHN0ZGxp
 Yl9tYW4vKiAkKElOU1RBTExfTUFOT0RJUik7IGVsc2UgOiA7IGZpCi0rCWlmIHRlc3QgLWQgc3Rk
 bGliX21hbjsgdGhlbiBcCi0rCQlmb3IgZiBpbiBzdGRsaWJfbWFuLyo7IGRvIFwKLSsJCQkkKEJT
 RF9JTlNUQUxMX01BTikgJCRmICQoSU5TVEFMTF9NQU5PRElSKS9gYmFzZW5hbWUgJCRmIC4zb2Au
 bjsgXAotKwkJZG9uZTsgXAotKwlmaQotIAotIGluc3RhbGxvcHQ6Ci0gCWlmIHRlc3QgLWYgJChP
 Q0FNTERPQ19PUFQpIDsgdGhlbiAkKE1BS0UpIGluc3RhbGxvcHRfcmVhbGx5IDsgZmkKSW5kZXg6
 IHBrZy1wbGlzdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09Ci0tLSBwa2ctcGxpc3QJKHJldmlzaW9uIDMzNDQ3MSkKKysr
 IHBrZy1wbGlzdAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDMgQEAKLWJpbi9vY2FtbG9iamlu
 Zm8KIGJpbi9jYW1scDQKIGJpbi9jYW1scDRib290CiBiaW4vY2FtbHA0bwpAQCAtMzMsMTIgKzMy
 LDE1IEBACiBiaW4vb2NhbWxsZXgub3B0CiBiaW4vb2NhbWxta2xpYgogYmluL29jYW1sbWt0b3AK
 K2Jpbi9vY2FtbG9iamluZm8KIGJpbi9vY2FtbG9wdAogYmluL29jYW1sb3B0Lm9wdAorYmluL29j
 YW1sb3B0cAogYmluL29jYW1scHJvZgogYmluL29jYW1scnVuCiBiaW4vb2NhbWx5YWNjCiBsaWIv
 b2NhbWwvTWFrZWZpbGUuY29uZmlnCitsaWIvb2NhbWwvVkVSU0lPTgogbGliL29jYW1sL2FyZy5j
 bWkKIGxpYi9vY2FtbC9hcmcuY214CiBsaWIvb2NhbWwvYXJnLm1sCkBAIC04NSw2ICs4Nyw3IEBA
 CiBsaWIvb2NhbWwvY2FtbC9jb25maWcuaAogbGliL29jYW1sL2NhbWwvY3VzdG9tLmgKIGxpYi9v
 Y2FtbC9jYW1sL2ZhaWwuaAorbGliL29jYW1sL2NhbWwvaGFzaC5oCiBsaWIvb2NhbWwvY2FtbC9p
 bnRleHQuaAogbGliL29jYW1sL2NhbWwvbWVtb3J5LmgKIGxpYi9vY2FtbC9jYW1sL21pc2MuaApA
 QCAtMjYxLDYgKzI2NCwxNDkgQEAKIGxpYi9vY2FtbC9jaGFyLm1sCiBsaWIvb2NhbWwvY2hhci5t
 bGkKICUlUFJPRiUlbGliL29jYW1sL2NoYXIucC5jbXgKK2xpYi9vY2FtbC9jb21waWxlci1saWJz
 L2Fubm90LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvYXJjaC5jbWkKK2xpYi9vY2FtbC9j
 b21waWxlci1saWJzL2FzbWdlbi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2FzbWxpYnJh
 cmlhbi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2FzbWxpbmsuY21pCitsaWIvb2NhbWwv
 Y29tcGlsZXItbGlicy9hc21wYWNrYWdlci5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2Fz
 dF9tYXBwZXIuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9hc3R0eXBlcy5jbWkKK2xpYi9v
 Y2FtbC9jb21waWxlci1saWJzL2J0eXBlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvYnl0
 ZWdlbi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2J5dGVsaWJyYXJpYW4uY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy9ieXRlbGluay5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJz
 L2J5dGVwYWNrYWdlci5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2J5dGVzZWN0aW9ucy5j
 bWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2Njb21wLmNtaQorbGliL29jYW1sL2NvbXBpbGVy
 LWxpYnMvY2xhbWJkYS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2NsZmxhZ3MuY21pCits
 aWIvb2NhbWwvY29tcGlsZXItbGlicy9jbG9zdXJlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxp
 YnMvY21pX2Zvcm1hdC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2NtbS5jbWkKK2xpYi9v
 Y2FtbC9jb21waWxlci1saWJzL2NtbWdlbi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2Nt
 b19mb3JtYXQuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9jbXRfZm9ybWF0LmNtaQorbGli
 L29jYW1sL2NvbXBpbGVyLWxpYnMvY214X2Zvcm1hdC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1s
 aWJzL2NvbG9yaW5nLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY29tYmFsbG9jLmNtaQor
 bGliL29jYW1sL2NvbXBpbGVyLWxpYnMvY29tcGVudi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1s
 aWJzL2NvbXBpbGUuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9jb21waWxlbnYuY21pCits
 aWIvb2NhbWwvY29tcGlsZXItbGlicy9jb21wbWlzYy5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1s
 aWJzL2NvbmZpZy5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2NvbnNpc3RibC5jbWkKK2xp
 Yi9vY2FtbC9jb21waWxlci1saWJzL2N0eXBlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMv
 ZGF0YXJlcHIuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9kZWJ1Z2luZm8uY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy9kbGwuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9lbWl0
 LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvZW1pdGF1eC5jbWkKK2xpYi9vY2FtbC9jb21w
 aWxlci1saWJzL2VtaXRjb2RlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvZW52LmNtaQor
 bGliL29jYW1sL2NvbXBpbGVyLWxpYnMvZW52YXV4LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxp
 YnMvZXJyb3JzLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvZXhwdW5nZS5jbWkKK2xpYi9v
 Y2FtbC9jb21waWxlci1saWJzL2dlbnByaW50dmFsLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxp
 YnMvaWRlbnQuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9pbmNsdWRlY2xhc3MuY21pCits
 aWIvb2NhbWwvY29tcGlsZXItbGlicy9pbmNsdWRlY29yZS5jbWkKK2xpYi9vY2FtbC9jb21waWxl
 ci1saWJzL2luY2x1ZGVtb2QuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9pbnN0cnVjdC5j
 bWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2ludGVyZi5jbWkKK2xpYi9vY2FtbC9jb21waWxl
 ci1saWJzL2xhbWJkYS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL2xleGVyLmNtaQorbGli
 L29jYW1sL2NvbXBpbGVyLWxpYnMvbGluZWFyaXplLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxp
 YnMvbGl2ZW5lc3MuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9sb2NhdGlvbi5jbWkKK2xp
 Yi9vY2FtbC9jb21waWxlci1saWJzL2xvbmdpZGVudC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1s
 aWJzL21hY2guY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9tYWluLmNtaQorbGliL29jYW1s
 L2NvbXBpbGVyLWxpYnMvbWFpbi5jbW8KK2xpYi9vY2FtbC9jb21waWxlci1saWJzL21haW4uY214
 CitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9tYWluLm8KK2xpYi9vY2FtbC9jb21waWxlci1saWJz
 L21haW5fYXJncy5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL21hdGNoaW5nLmNtaQorbGli
 L29jYW1sL2NvbXBpbGVyLWxpYnMvbWV0YS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL21p
 c2MuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9tdHlwZS5jbWkKK2xpYi9vY2FtbC9jb21w
 aWxlci1saWJzL29jYW1sYnl0ZWNvbXAuYQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb2NhbWxi
 eXRlY29tcC5jbWEKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL29jYW1sYnl0ZWNvbXAuY214YQor
 bGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb2NhbWxjb21tb24uYQorbGliL29jYW1sL2NvbXBpbGVy
 LWxpYnMvb2NhbWxjb21tb24uY21hCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9vY2FtbGNvbW1v
 bi5jbXhhCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9vY2FtbG9wdGNvbXAuYQorbGliL29jYW1s
 L2NvbXBpbGVyLWxpYnMvb2NhbWxvcHRjb21wLmNtYQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMv
 b2NhbWxvcHRjb21wLmNteGEKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL29jYW1sdG9wbGV2ZWwu
 Y21hCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9vcGNvZGVzLmNtaQorbGliL29jYW1sL2NvbXBp
 bGVyLWxpYnMvb3ByaW50LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb3B0Y29tcGlsZS5j
 bWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL29wdGVycm9ycy5jbWkKK2xpYi9vY2FtbC9jb21w
 aWxlci1saWJzL29wdG1haW4uY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9vcHRtYWluLmNt
 bworbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb3B0bWFpbi5jbXgKK2xpYi9vY2FtbC9jb21waWxl
 ci1saWJzL29wdG1haW4ubworbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvb3V0Y29tZXRyZWUuY21p
 CitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9wYXJtYXRjaC5jbWkKK2xpYi9vY2FtbC9jb21waWxl
 ci1saWJzL3BhcnNlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvcGFyc2VyLmNtaQorbGli
 L29jYW1sL2NvbXBpbGVyLWxpYnMvcGFyc2V0cmVlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxp
 YnMvcGF0aC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3BwYXJzZS5jbWkKK2xpYi9vY2Ft
 bC9jb21waWxlci1saWJzL3BwcmludGFzdC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3By
 ZWRlZi5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3ByaW1pdGl2ZS5jbWkKK2xpYi9vY2Ft
 bC9jb21waWxlci1saWJzL3ByaW50YXN0LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvcHJp
 bnRjbGFtYmRhLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvcHJpbnRjbW0uY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy9wcmludGluc3RyLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxp
 YnMvcHJpbnRsYW1iZGEuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9wcmludGxpbmVhci5j
 bWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3ByaW50bWFjaC5jbWkKK2xpYi9vY2FtbC9jb21w
 aWxlci1saWJzL3ByaW50dHlwLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvcHJpbnR0eXBl
 ZC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3Byb2MuY21pCitsaWIvb2NhbWwvY29tcGls
 ZXItbGlicy9yZWcuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9yZWxvYWQuY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy9yZWxvYWRnZW4uY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGli
 cy9ydW50aW1lZGVmLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvc2NoZWRnZW4uY21pCits
 aWIvb2NhbWwvY29tcGlsZXItbGlicy9zY2hlZHVsaW5nLmNtaQorbGliL29jYW1sL2NvbXBpbGVy
 LWxpYnMvc2VsZWN0Z2VuLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvc2VsZWN0aW9uLmNt
 aQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvc2ltcGxpZi5jbWkKK2xpYi9vY2FtbC9jb21waWxl
 ci1saWJzL3NwaWxsLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvc3BsaXQuY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy9zdHlwZXMuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy9z
 dWJzdC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3N3aXRjaC5jbWkKK2xpYi9vY2FtbC9j
 b21waWxlci1saWJzL3N5bXRhYmxlLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvc3ludGF4
 ZXJyLmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvdGJsLmNtaQorbGliL29jYW1sL2NvbXBp
 bGVyLWxpYnMvdGVybWluZm8uY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90b3BkaXJzLmNt
 aQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvdG9wbG9vcC5jbWkKK2xpYi9vY2FtbC9jb21waWxl
 ci1saWJzL3RvcG1haW4uY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90b3BzdGFydC5jbWkK
 K2xpYi9vY2FtbC9jb21waWxlci1saWJzL3RvcHN0YXJ0LmNtbworbGliL29jYW1sL2NvbXBpbGVy
 LWxpYnMvdHJhY2UuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90cmFuc2xjbGFzcy5jbWkK
 K2xpYi9vY2FtbC9jb21waWxlci1saWJzL3RyYW5zbGNvcmUuY21pCitsaWIvb2NhbWwvY29tcGls
 ZXItbGlicy90cmFuc2xtb2QuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90cmFuc2xvYmou
 Y21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90eXBlY2xhc3MuY21pCitsaWIvb2NhbWwvY29t
 cGlsZXItbGlicy90eXBlY29yZS5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3R5cGVkZWNs
 LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMvdHlwZWR0cmVlLmNtaQorbGliL29jYW1sL2Nv
 bXBpbGVyLWxpYnMvdHlwZWR0cmVlSXRlci5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3R5
 cGVkdHJlZU1hcC5jbWkKK2xpYi9vY2FtbC9jb21waWxlci1saWJzL3R5cGVtb2QuY21pCitsaWIv
 b2NhbWwvY29tcGlsZXItbGlicy90eXBlb3B0LmNtaQorbGliL29jYW1sL2NvbXBpbGVyLWxpYnMv
 dHlwZXMuY21pCitsaWIvb2NhbWwvY29tcGlsZXItbGlicy90eXBldGV4cC5jbWkKK2xpYi9vY2Ft
 bC9jb21waWxlci1saWJzL3dhcm5pbmdzLmNtaQogbGliL29jYW1sL2NvbXBsZXguY21pCiBsaWIv
 b2NhbWwvY29tcGxleC5jbXgKIGxpYi9vY2FtbC9jb21wbGV4Lm1sCkBAIC0yNjcsMTMgKzQxMyw2
 IEBACiBsaWIvb2NhbWwvY29tcGxleC5tbGkKICUlUFJPRiUlbGliL29jYW1sL2NvbXBsZXgucC5j
 bXgKICUlVEhSRUFEUyUlbGliL29jYW1sL2NvbmRpdGlvbi5tbGkKLWxpYi9vY2FtbC9kYm0uYQot
 bGliL29jYW1sL2RibS5jbWEKLWxpYi9vY2FtbC9kYm0uY21pCi1saWIvb2NhbWwvZGJtLmNteAot
 bGliL29jYW1sL2RibS5jbXhhCi1saWIvb2NhbWwvZGJtLmNteHMKLWxpYi9vY2FtbC9kYm0ubWxp
 CiBsaWIvb2NhbWwvZGlnZXN0LmNtaQogbGliL29jYW1sL2RpZ2VzdC5jbXgKIGxpYi9vY2FtbC9k
 aWdlc3QubWwKQEAgLTI4MCwxMCArNDE5LDEwIEBACiBsaWIvb2NhbWwvZGlnZXN0Lm1saQogJSVQ
 Uk9GJSVsaWIvb2NhbWwvZGlnZXN0LnAuY214CiBsaWIvb2NhbWwvZHlubGluay5hCitsaWIvb2Nh
 bWwvZHlubGluay5jbWEKK2xpYi9vY2FtbC9keW5saW5rLmNtaQogbGliL29jYW1sL2R5bmxpbmsu
 Y214CiBsaWIvb2NhbWwvZHlubGluay5jbXhhCi1saWIvb2NhbWwvZHlubGluay5jbWEKLWxpYi9v
 Y2FtbC9keW5saW5rLmNtaQogbGliL29jYW1sL2R5bmxpbmsubWxpCiAlJVRIUkVBRFMlJWxpYi9v
 Y2FtbC9ldmVudC5tbGkKIGxpYi9vY2FtbC9leHB1bmdlCkBAIC02MzAsMTEgKzc2OSwxMSBAQAog
 JSVUSyUlbGliL29jYW1sL2xhYmx0ay90ay5jbWkKICUlVEslJWxpYi9vY2FtbC9sYWJsdGsvdGsu
 Y214CiAlJVRLJSVsaWIvb2NhbWwvbGFibHRrL3RrY29tcGlsZXIKLSUlVEslJWxpYi9vY2FtbC9s
 YWJsdGsvdGt0aHJlYWQuY21pCi0lJVRLJSVsaWIvb2NhbWwvbGFibHRrL3RrdGhyZWFkLmNtbwor
 JSVUSFJFQURTJSUlJVRLJSVsaWIvb2NhbWwvbGFibHRrL3RrdGhyZWFkLmNtaQorJSVUSFJFQURT
 JSUlJVRLJSVsaWIvb2NhbWwvbGFibHRrL3RrdGhyZWFkLmNtbwogJSVUSFJFQURTJSUlJVRLJSVs
 aWIvb2NhbWwvbGFibHRrL3RrdGhyZWFkLmNteAotJSVUSyUlbGliL29jYW1sL2xhYmx0ay90a3Ro
 cmVhZC5tbGkKLSUlVEhSRUFEUyUlJSVUSyUlbGliL29jYW1sL2xhYmx0ay90a3RocmVhZC5vCisl
 JVRIUkVBRFMlJSUlVEslJWxpYi9vY2FtbC9sYWJsdGsvdGt0aHJlYWQubWxpCislJVRLJSVsaWIv
 b2NhbWwvbGFibHRrL3RrdGhyZWFkLm8KICUlVEslJWxpYi9vY2FtbC9sYWJsdGsvdGt2YXJzLmNt
 aQogJSVUSyUlbGliL29jYW1sL2xhYmx0ay90a3ZhcnMuY214CiAlJVRLJSVsaWIvb2NhbWwvbGFi
 bHRrL3RrdmFycy5tbGkKQEAgLTY3MSw3ICs4MTAsNiBAQAogbGliL29jYW1sL2xpYmNhbWxydW5f
 c2hhcmVkLnNvCiBsaWIvb2NhbWwvbGliY2FtbHN0ci5hCiAlJVgxMSUlbGliL29jYW1sL2xpYmdy
 YXBoaWNzLmEKLWxpYi9vY2FtbC9saWJtbGRibS5hCiBsaWIvb2NhbWwvbGlibnVtcy5hCiAlJVRI
 UkVBRFMlJWxpYi9vY2FtbC9saWJ0aHJlYWRzLmEKICUlVEhSRUFEUyUlbGliL29jYW1sL2xpYnRo
 cmVhZHNuYXQuYQpAQCAtNzIxLDggKzg1OSw4IEBACiBsaWIvb2NhbWwvb2JqLmNteAogbGliL29j
 YW1sL29iai5tbAogbGliL29jYW1sL29iai5tbGkKKyUlUFJPRiUlbGliL29jYW1sL29iai5wLmNt
 eAogbGliL29jYW1sL29iamluZm9faGVscGVyCi0lJVBST0YlJWxpYi9vY2FtbC9vYmoucC5jbXgK
 IGxpYi9vY2FtbC9vY2FtbGJ1aWxkL29jYW1sYnVpbGQuY21vCiBsaWIvb2NhbWwvb2NhbWxidWls
 ZC9vY2FtbGJ1aWxkLmNteAogbGliL29jYW1sL29jYW1sYnVpbGQvb2NhbWxidWlsZC5vCkBAIC03
 MzIsNiArODcwLDggQEAKIGxpYi9vY2FtbC9vY2FtbGJ1aWxkL29jYW1sYnVpbGRfZXhlY3V0b3Iu
 bwogbGliL29jYW1sL29jYW1sYnVpbGQvb2NhbWxidWlsZF9wYWNrLmNtaQogbGliL29jYW1sL29j
 YW1sYnVpbGQvb2NhbWxidWlsZF9wbHVnaW4uY21pCitsaWIvb2NhbWwvb2NhbWxidWlsZC9vY2Ft
 bGJ1aWxkX3BsdWdpbi5jbW8KK2xpYi9vY2FtbC9vY2FtbGJ1aWxkL29jYW1sYnVpbGRfcGx1Z2lu
 LmNteAogbGliL29jYW1sL29jYW1sYnVpbGQvb2NhbWxidWlsZF91bml4X3BsdWdpbi5jbWkKIGxp
 Yi9vY2FtbC9vY2FtbGJ1aWxkL29jYW1sYnVpbGRfdW5peF9wbHVnaW4uY21vCiBsaWIvb2NhbWwv
 b2NhbWxidWlsZC9vY2FtbGJ1aWxkX3VuaXhfcGx1Z2luLmNteApAQCAtNzU2LDYgKzg5Niw3IEBA
 CiBsaWIvb2NhbWwvb2NhbWxkb2Mvb2RvY19kb3QuY21pCiBsaWIvb2NhbWwvb2NhbWxkb2Mvb2Rv
 Y19lbnYuY21pCiBsaWIvb2NhbWwvb2NhbWxkb2Mvb2RvY19leGNlcHRpb24uY21pCitsaWIvb2Nh
 bWwvb2NhbWxkb2Mvb2RvY19nZW4uY21pCiBsaWIvb2NhbWwvb2NhbWxkb2Mvb2RvY19nbG9iYWwu
 Y21pCiBsaWIvb2NhbWwvb2NhbWxkb2Mvb2RvY19odG1sLmNtaQogbGliL29jYW1sL29jYW1sZG9j
 L29kb2NfaW5mby5hCkBAIC03OTYsOCArOTM3LDYgQEAKIGxpYi9vY2FtbC9vby5tbAogbGliL29j
 YW1sL29vLm1saQogJSVQUk9GJSVsaWIvb2NhbWwvb28ucC5jbXgKLWxpYi9vY2FtbC9vdXRjb21l
 dHJlZS5jbWkKLWxpYi9vY2FtbC9vdXRjb21ldHJlZS5tbGkKIGxpYi9vY2FtbC9wYXJzaW5nLmNt
 aQogbGliL29jYW1sL3BhcnNpbmcuY214CiBsaWIvb2NhbWwvcGFyc2luZy5tbApAQCAtODIwLDYg
 Kzk1OSw4IEBACiAlJVBST0YlJWxpYi9vY2FtbC9wcmludGYucC5jbXgKIGxpYi9vY2FtbC9wcm9m
 aWxpbmcuY21pCiBsaWIvb2NhbWwvcHJvZmlsaW5nLmNtbworbGliL29jYW1sL3Byb2ZpbGluZy5j
 bXgKK2xpYi9vY2FtbC9wcm9maWxpbmcubwogbGliL29jYW1sL3F1ZXVlLmNtaQogbGliL29jYW1s
 L3F1ZXVlLmNteAogbGliL29jYW1sL3F1ZXVlLm1sCkBAIC04NjMsNyArMTAwNCw3IEBACiBsaWIv
 b2NhbWwvc3RkX2V4aXQuY214CiBsaWIvb2NhbWwvc3RkX2V4aXQubWwKIGxpYi9vY2FtbC9zdGRf
 ZXhpdC5vCi1saWIvb2NhbWwvc3RkX2V4aXQucC5jbXgKKyUlUFJPRiUlbGliL29jYW1sL3N0ZF9l
 eGl0LnAuY214CiBsaWIvb2NhbWwvc3RkX2V4aXQucC5vCiBsaWIvb2NhbWwvc3RkbGliLmEKIGxp
 Yi9vY2FtbC9zdGRsaWIuY21hCkBAIC04OTMsMTAgKzEwMzQsOSBAQAogbGliL29jYW1sL3N0cmlu
 Z0xhYmVscy5tbGkKICUlUFJPRiUlbGliL29jYW1sL3N0cmluZ0xhYmVscy5wLmNteAogbGliL29j
 YW1sL3N0dWJsaWJzL2RsbGJpZ2FycmF5LnNvCitsaWIvb2NhbWwvc3R1YmxpYnMvZGxsY2FtbHN0
 ci5zbwogJSVYMTElJWxpYi9vY2FtbC9zdHVibGlicy9kbGxncmFwaGljcy5zbwogJSVUSyUlbGli
 L29jYW1sL3N0dWJsaWJzL2RsbGxhYmx0ay5zbwotbGliL29jYW1sL3N0dWJsaWJzL2RsbGNhbWxz
 dHIuc28KLWxpYi9vY2FtbC9zdHVibGlicy9kbGxtbGRibS5zbwogbGliL29jYW1sL3N0dWJsaWJz
 L2RsbG51bXMuc28KICUlVEhSRUFEUyUlbGliL29jYW1sL3N0dWJsaWJzL2RsbHRocmVhZHMuc28K
 IGxpYi9vY2FtbC9zdHVibGlicy9kbGx1bml4LnNvCkBAIC05MjIsMTAgKzEwNjIsNiBAQAogJSVU
 SFJFQURTJSVsaWIvb2NhbWwvdGhyZWFkcy90aHJlYWRzLmNtYQogJSVUSFJFQURTJSVsaWIvb2Nh
 bWwvdGhyZWFkcy90aHJlYWRzLmNteGEKIGxpYi9vY2FtbC90b3BkaXJzLmNtaQotbGliL29jYW1s
 L3RvcGxldmVsbGliLmNtYQotbGliL29jYW1sL3RvcGxvb3AuY21pCi1saWIvb2NhbWwvdG9wbWFp
 bi5jbWkKLWxpYi9vY2FtbC90b3BzdGFydC5jbW8KIGxpYi9vY2FtbC91bml4LmEKIGxpYi9vY2Ft
 bC91bml4LmNtYQogbGliL29jYW1sL3VuaXguY21pCkBAIC05NTUsNiArMTA5MSw3IEBACiBsaWIv
 b2NhbWwvd2Vhay5tbAogbGliL29jYW1sL3dlYWsubWxpCiAlJVBST0YlJWxpYi9vY2FtbC93ZWFr
 LnAuY214CislJVRLJSUlJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfY2FtbHRrLy5pZ25vcmUKICUl
 VEslJSUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19jYW1sdGsvTWFrZWZpbGUKICUlVEslJSUlRVhB
 TVBMRVNESVIlJS9leGFtcGxlc19jYW1sdGsvTWFrZWZpbGUubnQKICUlVEslJSUlRVhBTVBMRVNE
 SVIlJS9leGFtcGxlc19jYW1sdGsvYWRkaXRpb24ubWwKQEAgLTk2OSwzMyArMTEwNiwzNiBAQAog
 JSVUSyUlJSVFWEFNUExFU0RJUiUlL2V4YW1wbGVzX2NhbWx0ay9teXRleHQubWwKICUlVEslJSUl
 RVhBTVBMRVNESVIlJS9leGFtcGxlc19jYW1sdGsvc29ja2V0aW5wdXQubWwKICUlVEslJSUlRVhB
 TVBMRVNESVIlJS9leGFtcGxlc19jYW1sdGsvdGFkZGl0aW9uLm1sCislJVRLJSUlJUVYQU1QTEVT
 RElSJSUvZXhhbXBsZXNfY2FtbHRrL3RhcXVpbi5tbAogJSVUSyUlJSVFWEFNUExFU0RJUiUlL2V4
 YW1wbGVzX2NhbWx0ay90ZXRyaXMubWwKICUlVEslJSUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19j
 YW1sdGsvdGV4dC5tbAogJSVUSyUlJSVFWEFNUExFU0RJUiUlL2V4YW1wbGVzX2NhbWx0ay93aW5z
 a2VsLm1sCi0lJVRLJSUlJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfbGFibHRrL0xhbWJkYTIuYmFj
 ay5naWYKLSUlVEslJSUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsvTWFrZWZpbGUKLSUl
 VEslJSUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsvTWFrZWZpbGUubnQKLSUlVEslJSUl
 RVhBTVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsvUkVBRE1FCi0lJVRLJSUlJUVYQU1QTEVTRElS
 JSUvZXhhbXBsZXNfbGFibHRrL2NhbGMubWwKLSUlVEslJSUlRVhBTVBMRVNESVIlJS9leGFtcGxl
 c19sYWJsdGsvY2xvY2subWwKLSUlVEslJSUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsv
 ZGVtby5tbAotJSVUSyUlJSVFWEFNUExFU0RJUiUlL2V4YW1wbGVzX2xhYmx0ay9leWVzLm1sCi0l
 JVRLJSUlJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfbGFibHRrL2hlbGxvLm1sCi0lJVRLJSUlJUVY
 QU1QTEVTRElSJSUvZXhhbXBsZXNfbGFibHRrL2hlbGxvLnRjbAotJSVUSyUlJSVFWEFNUExFU0RJ
 UiUlL2V4YW1wbGVzX2xhYmx0ay9sYW5nLm1sCi0lJVRLJSUlJUVYQU1QTEVTRElSJSUvZXhhbXBs
 ZXNfbGFibHRrL3RhcXVpbi5tbAotJSVUSyUlJSVFWEFNUExFU0RJUiUlL2V4YW1wbGVzX2xhYmx0
 ay90ZXRyaXMubWwKLSUlVEslJUBkaXJybSAlJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfbGFibHRr
 Ci0lJVRLJSVAZGlycm0gJSVFWEFNUExFU0RJUiUlL2V4YW1wbGVzX2NhbWx0ay9pbWFnZXMKLSUl
 VEslJUBkaXJybSAlJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfY2FtbHRrCi0lJVRLJSVAZGlycm10
 cnkgJSVFWEFNUExFU0RJUiUlCislJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfbGFibHRrLy5pZ25v
 cmUKKyUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsvTGFtYmRhMi5iYWNrLmdpZgorJSVF
 WEFNUExFU0RJUiUlL2V4YW1wbGVzX2xhYmx0ay9NYWtlZmlsZQorJSVFWEFNUExFU0RJUiUlL2V4
 YW1wbGVzX2xhYmx0ay9NYWtlZmlsZS5udAorJSVFWEFNUExFU0RJUiUlL2V4YW1wbGVzX2xhYmx0
 ay9SRUFETUUKKyUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsvY2FsYy5tbAorJSVFWEFN
 UExFU0RJUiUlL2V4YW1wbGVzX2xhYmx0ay9jbG9jay5tbAorJSVFWEFNUExFU0RJUiUlL2V4YW1w
 bGVzX2xhYmx0ay9kZW1vLm1sCislJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfbGFibHRrL2V5ZXMu
 bWwKKyUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsvaGVsbG8ubWwKKyUlRVhBTVBMRVNE
 SVIlJS9leGFtcGxlc19sYWJsdGsvaGVsbG8udGNsCislJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNf
 bGFibHRrL2xhbmcubWwKKyUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsvdGFxdWluLm1s
 CislJUVYQU1QTEVTRElSJSUvZXhhbXBsZXNfbGFibHRrL3RldHJpcy5tbAorQGRpcnJtICUlRVhB
 TVBMRVNESVIlJS9leGFtcGxlc19sYWJsdGsKK0BkaXJybSAlJUVYQU1QTEVTRElSJSUvZXhhbXBs
 ZXNfY2FtbHRrL2ltYWdlcworQGRpcnJtICUlRVhBTVBMRVNESVIlJS9leGFtcGxlc19jYW1sdGsK
 K0BkaXJybSAlJUVYQU1QTEVTRElSJSUKIEBkaXJybSBsaWIvb2NhbWwvdm10aHJlYWRzCi0lJVRI
 UkVBRFMlJUBkaXJybSBsaWIvb2NhbWwvdGhyZWFkcwotQGRpcnJtdHJ5IGxpYi9vY2FtbC9zdHVi
 bGlicworQGRpcnJtIGxpYi9vY2FtbC90aHJlYWRzCitAZGlycm0gbGliL29jYW1sL3N0dWJsaWJz
 CiBAZGlycm0gbGliL29jYW1sL29jYW1sZG9jL2N1c3RvbQogQGRpcnJtIGxpYi9vY2FtbC9vY2Ft
 bGRvYwogQGRpcnJtIGxpYi9vY2FtbC9vY2FtbGJ1aWxkCi0lJVRLJSVAZGlycm10cnkgbGliL29j
 YW1sL2xhYmx0aworQGRpcnJtIGxpYi9vY2FtbC9sYWJsdGsKK0BkaXJybSBsaWIvb2NhbWwvY29t
 cGlsZXItbGlicwogQGRpcnJtIGxpYi9vY2FtbC9jYW1scDQvQ2FtbHA0VG9wCiBAZGlycm0gbGli
 L29jYW1sL2NhbWxwNC9DYW1scDRQcmludGVycwogQGRpcnJtIGxpYi9vY2FtbC9jYW1scDQvQ2Ft
 bHA0UGFyc2VycwpAQCAtMTAwMiw0ICsxMTQyLDQgQEAKIEBkaXJybSBsaWIvb2NhbWwvY2FtbHA0
 L0NhbWxwNEZpbHRlcnMKIEBkaXJybSBsaWIvb2NhbWwvY2FtbHA0CiBAZGlycm0gbGliL29jYW1s
 L2NhbWwKLUBjb21tZW50IGxpYi9vY2FtbCB3aWxsIGJlIGFkZGVkIGJ5IE1ha2VmaWxlCitAZGly
 cm0gbGliL29jYW1sCg==
 --047d7b5d5710df884504ebad4e52--

From: Brendan Fabeny <bf1783@gmail.com>
To: bug-followup@freebsd.org, 
	Michael Gruenewald <michael.grunewald@laposte.net>
Cc: michipili@gmail.com
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Thu, 21 Nov 2013 17:02:27 +0000

 An updated version of the ocaml update, including further fixes for
 lang/ocaml itself, and patches to related ports to fix build failures,
 is at:
 
 http://people.freebsd.org/~bf/ocaml4.diff.xz
 
 Some preliminary results of the run on 9.1-amd64:
 
 http://people.freebsd.org/~bf/ocaml4_errorlogs.tar.xz
 
 Ports broken before the update:
 lang/opa -- UPDATE
 www/ocsigen -- UPDATE
 
 Ports broken after the update, followed by the method I intend to use
 to fix the problem:
 leaf ports, lower priority:
 astro/planets -- PATCH
 audio/liquidsoap -- UPDATE
 databases/ocaml-pgocaml -- UPDATE
 databases/ocaml-sqlite3 -- UPDATE
 devel/frama-c  -- UPDATE
 devel/ocaml-pomap -- UPDATE
 devel/omake -- PATCH
 lang/opa -- UPDATE
 security/sks -- PATCH
 textproc/htmlc -- UPDATE
 textproc/ocaml-text -- UPDATE
 
 trunk ports (and masked ports that depend upon them), higher priority:
 devel/ocaml-camlp5(math/coq,sysutils/ledit,www/geneweb) -- UPDATE
 math/facile(science/kalzium) -- PATCH
 www/ocaml-net(lang/cduce,textproc/ocaml-pxp,textproc/ocaml-tyxml,www/ocsigen)
 -- UPDATE
 
 I'll try to fix some of these ports, beginning with ocaml-camlp5 and
 ocaml-net.  When we've dealt with the build failures that can be
 addressed relatively easily, and in a short amount of time, I'll mark
 the remaining failures as BROKEN and alert maintainers, and proceed
 with the update.
 
 b.

From: Michael <michipili@gmail.com>
To: bf1783@gmail.com
Cc: bug-followup@freebsd.org
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Thu, 21 Nov 2013 23:20:50 +0100

 Hi Brendan,
 
 thank you for your feedback and your work!  I will look at these things
 more closely this weekend and will let you know how things went out for me.
 
 Regards,
 Michael
 

From: Martin Tournoij <martin@arp242.net>
To: bug-followup@FreeBSD.org, michael.grunewald@laposte.net
Cc:  
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Wed, 26 Feb 2014 04:59:05 -0800

 May I inquire to the status of this PR? And offer my help if any is
 required to get this commited?

From: Michael <michipili@gmail.com>
To: bug-followup@FreeBSD.org, michael.grunewald@laposte.net
Cc:  
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Wed, 26 Feb 2014 18:34:49 +0100

 Hi Brendan,
 
 what is the state of ocaml-camlp5 or ocaml-net? How could we (Martin and
 myself) help to test these or to fix other packages  those listed in
 your follow-up?
 
 
 Best regards,
 Michael
 

From: Brendan Fabeny <bf1783@gmail.com>
To: Michael <michipili@gmail.com>
Cc: bug-followup@freebsd.org, martin@arp242.net
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Thu, 27 Feb 2014 21:06:38 -0500

 On 2/26/14, Michael <michipili@gmail.com> wrote:
 > The following reply was made to PR ports/173364; it has been noted by
 > GNATS.
 >
 > From: Michael <michipili@gmail.com>
 > To: bug-followup@FreeBSD.org, michael.grunewald@laposte.net
 > Cc:
 > Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
 > Date: Wed, 26 Feb 2014 18:34:49 +0100
 >
 >  Hi Brendan,
 >
 >  what is the state of ocaml-camlp5 or ocaml-net? How could we (Martin and
 >  myself) help to test these or to fix other packages -- those listed in
 >  your follow-up?
 
 I'll try to update the blockers and commit the update this weekend.
 If I encounter significant problems I'll contact the two of you and we
 can make a concerted effort to fix them.
 
 Regards,
            b.

From: Antoine Brodin <antoine@FreeBSD.org>
To: bug-followup@FreeBSD.org, michael.grunewald@laposte.net, bf@freebsd.org
Cc:  
Subject: Re: ports/173364: lang/ocaml Update to 4.00.1
Date: Wed, 26 Mar 2014 10:05:04 +0100

 Hi,
 
 Any plan to commit this update soon?
 The ocaml ports are going to be marked deprecated on April 1st because
 they are not staged.
 I have preliminary stage patches to stage some of them but I don't
 want to work on staging ocaml 3 if it's replaced by ocaml4 after.
 
 Cheers,
 
 Antoine (with hat: portmgr)
State-Changed-From-To: open->closed 
State-Changed-By: marino 
State-Changed-When: Wed Mar 26 17:58:22 UTC 2014 
State-Changed-Why:  
Ocaml 4.00.1 committed, switching to 4.0.1 PR (173453) 

http://www.freebsd.org/cgi/query-pr.cgi?pr=173364 
>Unformatted:
