From peter@netkey.at  Wed Jan 18 14:51:49 2012
Return-Path: <peter@netkey.at>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id D8C5E1065672
	for <freebsd-gnats-submit@freebsd.org>; Wed, 18 Jan 2012 14:51:49 +0000 (UTC)
	(envelope-from peter@netkey.at)
Received: from xena.netkey.at (xena.netkey.at [83.64.50.179])
	by mx1.freebsd.org (Postfix) with ESMTP id F33E08FC1E
	for <freebsd-gnats-submit@freebsd.org>; Wed, 18 Jan 2012 14:51:48 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
	by xena.netkey.at (Postfix) with ESMTP id 7F0F68C2803
	for <freebsd-gnats-submit@freebsd.org>; Wed, 18 Jan 2012 15:34:56 +0100 (CET)
Received: from xena.netkey.at ([127.0.0.1])
 by localhost (xena.netkey.at [127.0.0.1]) (amavisd-maia, port 10024)
 with ESMTP id 25015-06 for <freebsd-gnats-submit@freebsd.org>;
 Wed, 18 Jan 2012 15:34:47 +0100 (CET)
Received: from amilo-peter.netkey.at (peter [192.168.0.57])
	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by xena.netkey.at (Postfix) with ESMTPS id E172A8C2806
	for <FreeBSD-gnats-submit@freebsd.org>; Wed, 18 Jan 2012 15:34:47 +0100 (CET)
Received: from amilo-peter.netkey.at (localhost [127.0.0.1])
	by amilo-peter.netkey.at (8.14.5/8.14.5) with ESMTP id q0IEYIoB071264
	for <FreeBSD-gnats-submit@freebsd.org>; Wed, 18 Jan 2012 15:34:18 +0100 (CET)
	(envelope-from peter@netkey.at)
Received: (from peter@localhost)
	by amilo-peter.netkey.at (8.14.5/8.14.5/Submit) id q0IEYHpc071263;
	Wed, 18 Jan 2012 15:34:18 +0100 (CET)
	(envelope-from peter@netkey.at)
Message-Id: <201201181434.q0IEYHpc071263@amilo-peter.netkey.at>
Date: Wed, 18 Jan 2012 15:34:18 +0100 (CET)
From: Peter Klett <glocke@bsdstammtisch.at>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: [NEW PORT] net-p2p/RetroShare: A private and secure decentralised communication platform
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         164283
>Category:       ports
>Synopsis:       [NEW PORT] net-p2p/RetroShare: A private and secure decentralised communication platform
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    pawel
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jan 18 15:00:21 UTC 2012
>Closed-Date:    Fri Jan 27 14:46:18 UTC 2012
>Last-Modified:  Fri Jan 27 15:20:08 UTC 2012
>Originator:     Peter Klett
>Release:        FreeBSD 8.2-STABLE i386
>Organization:
>Environment:
System: FreeBSD amilo 8.2-STABLE FreeBSD 8.2-STABLE #0: Wed Aug 31 13:54:19 CEST 2011
>Description:
RetroShare is a Open Source cross-platform, private and secure decentralised
communication platform. It lets you to securely chat and share files with your
friends and family, using a web-of-trust to authenticate peers and OpenSSL to
encrypt all communication. RetroShare provides filesharing, chat, messages, 
forums and channels.

WWW: http://retroshare.sourceforge.net/

Generated with FreeBSD Port Tools 0.99
>How-To-Repeat:
>Fix:

--- RetroShare-0.5.2a.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	retroshare
#	retroshare/files
#	retroshare/files/patch-libretroshare-src-dbase-findex.h
#	retroshare/files/patch-libretroshare-src-ft-ftfileprovider.h
#	retroshare/files/patch-libretroshare-src-ft-ftfilecreator.h
#	retroshare/files/patch-libretroshare-src-libretroshare.pro
#	retroshare/files/patch-libretroshare-src-rsserver-rsinit.cc
#	retroshare/files/rsinit.h
#	retroshare/files/patch-libbitdht-src-util-bdrandom.cc
#	retroshare/files/patch-libretroshare-src-util-rsdir.h
#	retroshare/files/patch-libretroshare-src-util-rsdiscspace.cc
#	retroshare/files/patch-retroshare-gui-src-RetroShare.pro
#	retroshare/files/patch-libretroshare-src-util-rsrandom.cc
#	retroshare/files/patch-libretroshare-src-upnp-upnphandler.h
#	retroshare/files/patch-libretroshare-src-upnp-upnphandler.cc
#	retroshare/files/patch-libretroshare-src-rsserver-rsloginhandler.cc
#	retroshare/distinfo
#	retroshare/Makefile
#	retroshare/pkg-descr
#	retroshare/pkg-plist
#
echo c - retroshare
mkdir -p retroshare > /dev/null 2>&1
echo c - retroshare/files
mkdir -p retroshare/files > /dev/null 2>&1
echo x - retroshare/files/patch-libretroshare-src-dbase-findex.h
sed 's/^X//' >retroshare/files/patch-libretroshare-src-dbase-findex.h << '54944a539c31b0ef3d780816947f1805'
X--- libretroshare/src/dbase/findex.h.orig	2011-04-15 22:21:52.000000000 +0200
X+++ libretroshare/src/dbase/findex.h	2012-01-15 03:55:27.000000000 +0100
X@@ -33,6 +33,14 @@
X #include <stdint.h>
X #include "retroshare/rstypes.h"
X 
X+#include <dirent.h>
X+#include <fnmatch.h>
X+#include <unistd.h>
X+#define O_LARGEFILE      0100000
X+#define stat64 stat
X+#define _stat stat
X+#define _getcwd getcwd
X+
X class ostream;
X 
X /******************************************************************************************
54944a539c31b0ef3d780816947f1805
echo x - retroshare/files/patch-libretroshare-src-ft-ftfileprovider.h
sed 's/^X//' >retroshare/files/patch-libretroshare-src-ft-ftfileprovider.h << '3c47ec91402d09346ef2a94c3e3dd320'
X--- libretroshare/src/ft/ftfileprovider.h~	2011-02-20 01:59:47.000000000 +0100
X+++ libretroshare/src/ft/ftfileprovider.h	2012-01-15 04:01:35.000000000 +0100
X@@ -34,6 +34,7 @@
X #include <stdint.h>
X #include "util/rsthreads.h"
X #include "retroshare/rsfiles.h"
X+#define fseeko64 fseeko
X 
X class ftFileProvider
X {
3c47ec91402d09346ef2a94c3e3dd320
echo x - retroshare/files/patch-libretroshare-src-ft-ftfilecreator.h
sed 's/^X//' >retroshare/files/patch-libretroshare-src-ft-ftfilecreator.h << 'a7abb7e19699f26fd4d1bfea73515e67'
X--- libretroshare/src/ft/ftfilecreator.h~	2011-04-25 16:20:57.000000000 +0200
X+++ libretroshare/src/ft/ftfilecreator.h	2012-01-15 20:30:41.000000000 +0100
X@@ -35,6 +35,7 @@
X #include "ftfileprovider.h"
X #include "ftchunkmap.h"
X #include <map>
X+#define fseeko64 fseeko
X 
X class ZeroInitCounter
X {
a7abb7e19699f26fd4d1bfea73515e67
echo x - retroshare/files/patch-libretroshare-src-libretroshare.pro
sed 's/^X//' >retroshare/files/patch-libretroshare-src-libretroshare.pro << '0bb42658593644c877d2e976bdd42da6'
X--- libretroshare/src/libretroshare.pro~	2011-08-03 19:43:26.000000000 +0200
X+++ libretroshare/src/libretroshare.pro	2012-01-15 04:20:41.000000000 +0100
X@@ -104,6 +104,7 @@
X 	INCLUDEPATH += . $${BITDHT_DIR}
X 	# The next line if for compliance with debian packages. Keep it!
X 	INCLUDEPATH += ../libbitdht
X+	INCLUDEPATH += $${PREFIX}/include/gpgme
X 	DEFINES *= RS_USE_BITDHT
X }
X 
0bb42658593644c877d2e976bdd42da6
echo x - retroshare/files/patch-libretroshare-src-rsserver-rsinit.cc
sed 's/^X//' >retroshare/files/patch-libretroshare-src-rsserver-rsinit.cc << 'ca8aad04fbf85e58f360825e35ccfa12'
X--- libretroshare/src/rsserver/rsinit.cc.org	2012-01-15 04:34:27.000000000 +0100
X+++ libretroshare/src/rsserver/rsinit.cc	2012-01-15 04:35:45.000000000 +0100
X@@ -59,78 +59,14 @@
X 
X #include "tcponudp/udpstunner.h"
X 
X-class accountId
X-{
X-	public:
X-		std::string pgpId;
X-		std::string pgpName;
X-		std::string pgpEmail;
X-
X-		std::string sslId;
X-                std::string location;
X-};
X-
X-
X-class RsInitConfig 
X-{
X-	public:
X-                /* Directories (SetupBaseDir) */
X-                static std::string basedir;
X-                static std::string homePath;
X-#ifdef WINDOWS_SYS
X-                static bool portable;
X-                static bool isWindowsXP;
X-#endif
X-
X-		static std::list<accountId> accountIds;
X-		static std::string preferedId;
X-
X-		/* for certificate creation */
X-                //static std::string gpgPasswd;
X-
X-#ifndef WINDOWS_SYS
X-		static int lockHandle;
X-#else
X-		static HANDLE lockHandle;
X-#endif
X-
X-		/* These fields are needed for login */
X-                static std::string loginId;
X-                static std::string configDir;
X-                static std::string load_cert;
X-                static std::string load_key;
X-
X-		static std::string passwd;
X-
X-                static bool autoLogin;                  /* autoLogin allowed */
X-                static bool startMinimised; 		/* Icon or Full Window */
X-
X-                /* Key Parameters that must be set before
X-                 * RetroShare will start up:
X-                 */
X-
X-                /* Listening Port */
X-                static bool forceExtPort;
X-                static bool forceLocalAddr;
X-                static unsigned short port;
X-                static char inet[256];
X-
X-                /* Logging */
X-                static bool haveLogFile;
X-                static bool outStderr;
X-                static bool haveDebugLevel;
X-                static int  debugLevel;
X-                static std::string logfname;
X-
X-                static bool firsttime_run;
X-                static bool load_trustedpeer;
X-                static std::string load_trustedpeer_file;
X-
X-                static bool udpListenerOnly;
X-
X-                static std::string RetroShareLink;
X-};
X+#include "rsinit.h"
X 
X+#include <fnmatch.h>
X+#include <unistd.h>
X+#define O_LARGEFILE      0100000
X+#define stat64 stat
X+#define _stat stat
X+#define _getcwd getcwd
X 
X const int p3facestartupzone = 47238;
X 
ca8aad04fbf85e58f360825e35ccfa12
echo x - retroshare/files/rsinit.h
sed 's/^X//' >retroshare/files/rsinit.h << 'e9d5262f5f320981e8d18e11433c4e72'
X
X#ifndef RETROSHARE_RSINIT_H
X#define RETROSHARE_RSINIT_H
X
Xclass accountId
X{
X	public:
X		std::string pgpId;
X		std::string pgpName;
X		std::string pgpEmail;
X
X		std::string sslId;
X                std::string location;
X};
X
X
Xclass RsInitConfig 
X{
X	public:
X                /* Directories (SetupBaseDir) */
X                static std::string basedir;
X                static std::string homePath;
X#ifdef WINDOWS_SYS
X                static bool portable;
X                static bool isWindowsXP;
X#endif
X
X		static std::list<accountId> accountIds;
X		static std::string preferedId;
X
X		/* for certificate creation */
X                //static std::string gpgPasswd;
X
X#ifndef WINDOWS_SYS
X		static int lockHandle;
X#else
X		static HANDLE lockHandle;
X#endif
X
X		/* These fields are needed for login */
X                static std::string loginId;
X                static std::string configDir;
X                static std::string load_cert;
X                static std::string load_key;
X
X		static std::string passwd;
X
X                static bool autoLogin;                  /* autoLogin allowed */
X                static bool startMinimised; 		/* Icon or Full Window */
X
X                /* Key Parameters that must be set before
X                 * RetroShare will start up:
X                 */
X
X                /* Listening Port */
X                static bool forceExtPort;
X                static bool forceLocalAddr;
X                static unsigned short port;
X                static char inet[256];
X
X                /* Logging */
X                static bool haveLogFile;
X                static bool outStderr;
X                static bool haveDebugLevel;
X                static int  debugLevel;
X                static std::string logfname;
X
X                static bool firsttime_run;
X                static bool load_trustedpeer;
X                static std::string load_trustedpeer_file;
X
X                static bool udpListenerOnly;
X
X                static std::string RetroShareLink;
X};
X
X#endif
X
e9d5262f5f320981e8d18e11433c4e72
echo x - retroshare/files/patch-libbitdht-src-util-bdrandom.cc
sed 's/^X//' >retroshare/files/patch-libbitdht-src-util-bdrandom.cc << 'fd72a8d5ef66c80178b63cddc8896f7f'
X+++ libbitdht/src/util/bdrandom.cc	2012-01-15 03:45:36.000000000 +0100
X--- libbitdht/src/util/bdrandom.cc.orig	2012-01-15 03:45:07.000000000 +0100
X@@ -13,7 +13,7 @@
X   #ifdef __APPLE__
X 	static bool auto_seed = bdRandom::seed( (time(NULL) + pthread_mach_thread_np(pthread_self())*0x1293fe + (getpid()^0x113ef76b))^0x18e34a12 ) ;
X   #else
X+//    static bool auto_seed = bdRandom::seed( (time(NULL) + pthread_self()*0x1293fe + (getpid()^0x113ef76b))^0x18e34a12 ) ;
X-    static bool auto_seed = bdRandom::seed( (time(NULL) + pthread_self()*0x1293fe + (getpid()^0x113ef76b))^0x18e34a12 ) ;
X   #endif
X #endif
X bool bdRandom::seed(uint32_t s) 
fd72a8d5ef66c80178b63cddc8896f7f
echo x - retroshare/files/patch-libretroshare-src-util-rsdir.h
sed 's/^X//' >retroshare/files/patch-libretroshare-src-util-rsdir.h << '62db9eebef51bde0c579844ce6b21404'
X--- libretroshare/src/util/rsdir.h.orig	2011-05-15 14:42:55.000000000 +0200
X+++ libretroshare/src/util/rsdir.h	2012-01-15 20:10:19.000000000 +0100
X@@ -31,6 +31,17 @@
X #include <string>
X #include <list>
X #include <stdint.h>
X+#include <fnmatch.h>
X+
X+#include <dirent.h>
X+#include <unistd.h>
X+#define O_LARGEFILE      0100000
X+#define stat64 stat
X+#define _stat stat
X+#define _getcwd getcwd
X+#define fseeko64 fseeko
X+#define fopen64 fopen
X+#define ftello64 ftello
X 
X class CRC32Map ;
X class RsThread;
62db9eebef51bde0c579844ce6b21404
echo x - retroshare/files/patch-libretroshare-src-util-rsdiscspace.cc
sed 's/^X//' >retroshare/files/patch-libretroshare-src-util-rsdiscspace.cc << 'b02380ae59bfde81e426188283292c01'
X--- libretroshare/src/util/rsdiscspace.cc.orig	2011-07-05 00:59:39.000000000 +0200
X+++ libretroshare/src/util/rsdiscspace.cc	2012-01-15 04:55:17.000000000 +0100
X@@ -31,6 +31,7 @@
X #include <util/rsthreads.h>
X #ifndef WIN32
X #include <sys/statvfs.h>
X+#define statvfs64 statvfs
X #endif
X 
X #define DELAY_BETWEEN_CHECKS 2 
b02380ae59bfde81e426188283292c01
echo x - retroshare/files/patch-retroshare-gui-src-RetroShare.pro
sed 's/^X//' >retroshare/files/patch-retroshare-gui-src-RetroShare.pro << 'bffee03db0698d0c6613e41999e989d3'
X--- retroshare-gui/src/RetroShare.pro.orig	2011-08-03 19:45:03.000000000 +0200
X+++ retroshare-gui/src/RetroShare.pro	2012-01-15 12:55:12.000000000 +0100
X@@ -153,9 +153,12 @@
X 
X # ###########################################
X 
X+INCLUDEPATH += $${PREFIX}/include/gpgme
X+LIBS += ../../libretroshare/src/libretroshare.a -lssl -lgpgme -lupnp
X+
X bitdht {
X-	LIBS += ../../libbitdht/src/lib/libbitdht.a
X-	PRE_TARGETDEPS *= ../../libbitdht/src/lib/libbitdht.a
X+	LIBS += ../../libbitdht/src/libbitdht.a
X+	PRE_TARGETDEPS *= ../../libbitdht/src/libbitdht.a
X }
X 
X win32 {
bffee03db0698d0c6613e41999e989d3
echo x - retroshare/files/patch-libretroshare-src-util-rsrandom.cc
sed 's/^X//' >retroshare/files/patch-libretroshare-src-util-rsrandom.cc << 'c067e582ac3ddb0beaacea4d5060ab32'
X--- libretroshare/src/util/rsrandom.cc~	2011-07-05 00:59:39.000000000 +0200
X+++ libretroshare/src/util/rsrandom.cc	2012-01-15 04:56:47.000000000 +0100
X@@ -13,7 +13,7 @@
X   #ifdef __APPLE__
X 	static bool auto_seed = RSRandom::seed( (time(NULL) + pthread_mach_thread_np(pthread_self())*0x1293fe + (getpid()^0x113ef76b))^0x18e34a12 ) ;
X   #else
X-    static bool auto_seed = RSRandom::seed( (time(NULL) + pthread_self()*0x1293fe + (getpid()^0x113ef76b))^0x18e34a12 ) ;
X+//    static bool auto_seed = RSRandom::seed( (time(NULL) + pthread_self()*0x1293fe + (getpid()^0x113ef76b))^0x18e34a12 ) ;
X   #endif
X #endif
X bool RSRandom::seed(uint32_t s) 
c067e582ac3ddb0beaacea4d5060ab32
echo x - retroshare/files/patch-libretroshare-src-upnp-upnphandler.h
sed 's/^X//' >retroshare/files/patch-libretroshare-src-upnp-upnphandler.h << '9bdb3adf14dddbc0f8e183b8c0d82623'
X--- libretroshare/src/upnp/upnphandler.h~	2010-07-04 12:42:17.000000000 +0200
X+++ libretroshare/src/upnp/upnphandler.h	2012-01-15 05:26:45.000000000 +0100
X@@ -13,7 +13,11 @@
X #include "util/rsthreads.h"
X 
X #include <upnp/upnp.h>
X+#ifdef do_not_use_this
X+#include "upnp/UPnPBase.cpp"
X+#else
X #include "upnp/UPnPBase.h"
X+#endif
X 
X #define RS_UPNP_S_UNINITIALISED  0
X #define RS_UPNP_S_UNAVAILABLE    1
9bdb3adf14dddbc0f8e183b8c0d82623
echo x - retroshare/files/patch-libretroshare-src-upnp-upnphandler.cc
sed 's/^X//' >retroshare/files/patch-libretroshare-src-upnp-upnphandler.cc << 'd2d20f3705da3b5baa692be3eef9a121'
X--- libretroshare/src/upnp/upnphandler.cc~	2011-07-08 11:54:27.000000000 +0200
X+++ libretroshare/src/upnp/upnphandler.cc	2012-01-15 05:27:12.000000000 +0100
X@@ -12,6 +12,7 @@
X #endif
X /* This stuff is actually C */
X 
X+#define do_not_use_this
X #include "upnp/upnphandler.h"
X 
X #include "util/rsnet.h"
d2d20f3705da3b5baa692be3eef9a121
echo x - retroshare/files/patch-libretroshare-src-rsserver-rsloginhandler.cc
sed 's/^X//' >retroshare/files/patch-libretroshare-src-rsserver-rsloginhandler.cc << '87e62f6953e54e5c58d1175ccce98645'
X--- libretroshare/src/rsserver/rsloginhandler.cc.orig	2012-01-15 04:44:59.000000000 +0100
X+++ libretroshare/src/rsserver/rsloginhandler.cc	2012-01-15 04:43:08.000000000 +0100
X@@ -4,6 +4,7 @@
X #include <pqi/authgpg.h>
X #include "rsloginhandler.h"
X #include "util/rsdir.h"
X+#include "rsinit.h"
X 
X #ifdef UBUNTU
X #include <gnome-keyring-1/gnome-keyring.h>
X@@ -196,7 +197,7 @@
X 	/******************** OSX KeyChain stuff *****************************/
X #else /* UNIX, but not UBUNTU or APPLE */
X 
X-	FILE* helpFile = RsDirUtil::rs_fopen(getAutologinFileName.c_str(), "r");
X+	FILE* helpFile = RsDirUtil::rs_fopen(getAutologinFileName(ssl_id).c_str(), "r");
X 
X 	if(helpFile == NULL){
X 		std::cerr << "\nFailed to open help file\n" << std::endl;
X@@ -408,7 +409,7 @@
X #else
X 
X 	/* WARNING: Autologin is inherently unsafe */
X-	FILE* helpFile = RsDirUtil::rs_fopen(getAutologinFileName.c_str(), "w");
X+	FILE* helpFile = RsDirUtil::rs_fopen(getAutologinFileName(ssl_id).c_str(), "w");
X 
X 	if(helpFile == NULL){
X 		std::cerr << "\nRsStoreAutoLogin(): Failed to open help file\n" << std::endl;
87e62f6953e54e5c58d1175ccce98645
echo x - retroshare/distinfo
sed 's/^X//' >retroshare/distinfo << '8ad67f51dd4203d13f21d02b4af324f9'
XSHA256 (RetroShare-v0.5.2a.tar.gz) = 33838c0234e779e6b310bbd19bf6c5c0394e84cc5b418114b68f0cac8c1eec18
XSIZE (RetroShare-v0.5.2a.tar.gz) = 10334273
8ad67f51dd4203d13f21d02b4af324f9
echo x - retroshare/Makefile
sed 's/^X//' >retroshare/Makefile << 'b707037c1d114b13ad58065907a013ec'
X# New ports collection makefile for:   retroshare
X# Date created:        15 January 2012
X# Whom:                glocke
X#
X# $FreeBSD$
X#
X
XPORTNAME=		RetroShare
XPORTVERSION=		0.5.2a
XDISTVERSIONPREFIX=	v
XCATEGORIES?=		net-p2p
XMASTER_SITES=		${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR=	${PORTNAME:L}/${PORTNAME}/${PORTVERSION}
X
XMAINTAINER=		glocke@bsdstammtisch.at
XCOMMENT=		A private and secure decentralised communication platform
X
XLICENSE=		GPLv2
XLICENSE_FILE=		${WRKDIR}/trunk/retroshare-gui/src/license/license.txt
X
XLIB_DEPENDS=		gpgme.19:${PORTSDIR}/security/gpgme \
X			upnp.7:${PORTSDIR}/devel/upnp \
X			gnome-keyring.0:${PORTSDIR}/security/libgnome-keyring
XRUN_DEPENDS+=		pinentry-qt4:${PORTSDIR}/security/pinentry-qt4
X
XWRKSRC=			${WRKDIR}/trunk
XUSE_QT_VER=		4
XQT_COMPONENTS=		corelib gui network xml script designer_build uic_build qmake_build moc_build rcc_build
X
XCFLAGS+=		-I${LOCALBASE}/include/gpgme
X
XHAS_CONFIGURE=		yes
Xdo-configure:
X	@cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \
X		${QMAKE} PREFIX=${PREFIX} ${PORTNAME}.pro
X
Xpost-patch:
X	${CP} ${FILESDIR}/rsinit.h ${WRKSRC}/libretroshare/src/rsserver
X
Xpost-install:
X	${INSTALL_PROGRAM} ${WRKSRC}/retroshare-gui/src/${PORTNAME} ${PREFIX}/bin
X	${MKDIR} ${DATADIR}
X	${INSTALL_MAN} ${WRKSRC}/libbitdht/src/example/bdboot.txt ${DATADIR}
X	@${ECHO_MSG} "**************************************************"
X	@${ECHO_MSG} "*               POST INSTALL                     *"
X	@${ECHO_MSG} "**************************************************"
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "After you have created an account, you should copy"
X	@${ECHO_MSG} "${DATADIR}/bdboot.txt into your"
X	@${ECHO_MSG} "~/.retroshare/YOURCERT/ directory to seed DHT with"
X	@${ECHO_MSG} "initial nodes. UPnP does not work right now, you"
X	@${ECHO_MSG} "have to use port forwarding to connect to others."
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "**************************************************"
X
X.include <bsd.port.mk>
b707037c1d114b13ad58065907a013ec
echo x - retroshare/pkg-descr
sed 's/^X//' >retroshare/pkg-descr << '88f470a4d01a26d6aa038dcc101ce865'
XRetroShare is a Open Source cross-platform, private and secure decentralised
Xcommunication platform. It lets you to securely chat and share files with your
Xfriends and family, using a web-of-trust to authenticate peers and OpenSSL to
Xencrypt all communication. RetroShare provides filesharing, chat, messages, 
Xforums and channels.
X
XWWW: http://retroshare.sourceforge.net/
88f470a4d01a26d6aa038dcc101ce865
echo x - retroshare/pkg-plist
sed 's/^X//' >retroshare/pkg-plist << '6badaaa38bbb52b58a63aa1e9ee57578'
Xbin/RetroShare
X%%DATADIR%%/bdboot.txt
X@dirrm %%DATADIR%%
6badaaa38bbb52b58a63aa1e9ee57578
exit
--- RetroShare-0.5.2a.shar ends here ---

>Release-Note:
>Audit-Trail:

From: glocke@bsdstammtisch.at
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/164283: [NEW PORT] net-p2p/RetroShare: A private and secure decentralised communication platform
Date: Thu, 19 Jan 2012 17:08:16 +0100 (CET)

 Hi, 
 
 please also see the build logs from redports.org for this port:
 http://redports.org/buildarchive/20120118012828-22613/
 
 Greetings
 
State-Changed-From-To: open->feedback 
State-Changed-By: pawel 
State-Changed-When: Fri Jan 20 19:11:21 UTC 2012 
State-Changed-Why:  
Patching fails, please see log: 

http://people.freebsd.org/~pawel/buildlogs/7/RetroShare-0.5.2a.log 

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

From: Peter Klett <glocke@bsdstammtisch.at>
To: <bug-followup@FreeBSD.org>, Pawel <pawel@FreeBSD.org>, Freebsd-ports
 Bugs <freebsd-ports-bugs@FreeBSD.org>
Cc:  
Subject: Re: ports/164283: [NEW PORT] net-p2p/RetroShare: A private and
 secure decentralised communication platform
Date: Mon, 23 Jan 2012 23:37:24 +0100

 --=_80a00e14e759b35c30de40fe62026177
 Content-Transfer-Encoding: 7bit
 Content-Type: text/plain; charset=UTF-8;
  format=flowed
 
 Hi Pawel,
 
 please use attached files.
 Dependencies are now up with upnp.8 and DOS line endings fixed.
 --=_80a00e14e759b35c30de40fe62026177
 Content-Transfer-Encoding: base64
 Content-Type: application/x-tar;
  name=retroshare.tar
 Content-Disposition: attachment;
  filename=retroshare.tar
 
 cmV0cm9zaGFyZS8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDc1NSAAMDAxNzUx
 IAAwMDAwMDAgADAwMDAwMDAwMDAwIDExNzA3MzM3MDE2IDAxMzUxMgAgNQAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAd2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAgADAwMDAw
 MCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABy
 ZXRyb3NoYXJlL01ha2VmaWxlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEg
 ADAwMDAwMCAAMDAwMDAwMDM3MDEgMTE3MDczMzcwMTYgMDE1MTUzACAwAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAB3aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAw
 IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMg
 TmV3IHBvcnRzIGNvbGxlY3Rpb24gbWFrZWZpbGUgZm9yOiAgIHJldHJvc2hhcmUKIyBEYXRlIGNy
 ZWF0ZWQ6ICAgICAgICAxNSBKYW51YXJ5IDIwMTIKIyBXaG9tOiAgICAgICAgICAgICAgICBnbG9j
 a2UKIwojICRGcmVlQlNEJAojCgpQT1JUTkFNRT0JCVJldHJvU2hhcmUKUE9SVFZFUlNJT049CQkw
 LjUuMmEKRElTVFZFUlNJT05QUkVGSVg9CXYKQ0FURUdPUklFUz89CQluZXQtcDJwCk1BU1RFUl9T
 SVRFUz0JCSR7TUFTVEVSX1NJVEVfU09VUkNFRk9SR0V9Ck1BU1RFUl9TSVRFX1NVQkRJUj0JJHtQ
 T1JUTkFNRTpMfS8ke1BPUlROQU1FfS8ke1BPUlRWRVJTSU9OfQoKTUFJTlRBSU5FUj0JCWdsb2Nr
 ZUBic2RzdGFtbXRpc2NoLmF0CkNPTU1FTlQ9CQlBIHByaXZhdGUgYW5kIHNlY3VyZSBkZWNlbnRy
 YWxpc2VkIGNvbW11bmljYXRpb24gcGxhdGZvcm0KCkxJQ0VOU0U9CQlHUEx2MgpMSUNFTlNFX0ZJ
 TEU9CQkke1dSS0RJUn0vdHJ1bmsvcmV0cm9zaGFyZS1ndWkvc3JjL2xpY2Vuc2UvbGljZW5zZS50
 eHQKCkxJQl9ERVBFTkRTPQkJZ3BnbWUuMTk6JHtQT1JUU0RJUn0vc2VjdXJpdHkvZ3BnbWUgXAoJ
 CQl1cG5wLjg6JHtQT1JUU0RJUn0vZGV2ZWwvdXBucCBcCgkJCWdub21lLWtleXJpbmcuMDoke1BP
 UlRTRElSfS9zZWN1cml0eS9saWJnbm9tZS1rZXlyaW5nClJVTl9ERVBFTkRTKz0JCXBpbmVudHJ5
 LXF0NDoke1BPUlRTRElSfS9zZWN1cml0eS9waW5lbnRyeS1xdDQKCldSS1NSQz0JCQkke1dSS0RJ
 Un0vdHJ1bmsKVVNFX1FUX1ZFUj0JCTQKUVRfQ09NUE9ORU5UUz0JCWNvcmVsaWIgZ3VpIG5ldHdv
 cmsgeG1sIHNjcmlwdCBkZXNpZ25lcl9idWlsZCB1aWNfYnVpbGQgcW1ha2VfYnVpbGQgbW9jX2J1
 aWxkIHJjY19idWlsZAoKQ0ZMQUdTKz0JCS1JJHtMT0NBTEJBU0V9L2luY2x1ZGUvZ3BnbWUKClVT
 RV9ET1MyVU5JWD0JCXJldHJvc2hhcmUtZ3VpL3NyYy9SZXRyb1NoYXJlLnBybwoKSEFTX0NPTkZJ
 R1VSRT0JCXllcwpkby1jb25maWd1cmU6CglAY2QgJHtXUktTUkN9ICYmICR7U0VURU5WfSAke0NP
 TkZJR1VSRV9FTlZ9IFwKCQkke1FNQUtFfSBQUkVGSVg9JHtQUkVGSVh9ICR7UE9SVE5BTUV9LnBy
 bwoKcG9zdC1wYXRjaDoKCSR7Q1B9ICR7RklMRVNESVJ9L3JzaW5pdC5oICR7V1JLU1JDfS9saWJy
 ZXRyb3NoYXJlL3NyYy9yc3NlcnZlcgoKcG9zdC1pbnN0YWxsOgoJJHtJTlNUQUxMX1BST0dSQU19
 ICR7V1JLU1JDfS9yZXRyb3NoYXJlLWd1aS9zcmMvJHtQT1JUTkFNRX0gJHtQUkVGSVh9L2JpbgoJ
 JHtNS0RJUn0gJHtEQVRBRElSfQoJJHtJTlNUQUxMX01BTn0gJHtXUktTUkN9L2xpYmJpdGRodC9z
 cmMvZXhhbXBsZS9iZGJvb3QudHh0ICR7REFUQURJUn0KCUAke0VDSE9fTVNHfSAiKioqKioqKioq
 KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioiCglAJHtFQ0hPX01TR30g
 IiogICAgICAgICAgICAgICBQT1NUIElOU1RBTEwgICAgICAgICAgICAgICAgICAgICAqIgoJQCR7
 RUNIT19NU0d9ICIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
 KioqKiIKCUAke0VDSE9fTVNHfSAiIgoJQCR7RUNIT19NU0d9ICJBZnRlciB5b3UgaGF2ZSBjcmVh
 dGVkIGFuIGFjY291bnQsIHlvdSBzaG91bGQgY29weSIKCUAke0VDSE9fTVNHfSAiJHtEQVRBRElS
 fS9iZGJvb3QudHh0IGludG8geW91ciIKCUAke0VDSE9fTVNHfSAifi8ucmV0cm9zaGFyZS9ZT1VS
 Q0VSVC8gZGlyZWN0b3J5IHRvIHNlZWQgREhUIHdpdGgiCglAJHtFQ0hPX01TR30gImluaXRpYWwg
 bm9kZXMuIFVQblAgZG9lcyBub3Qgd29yayByaWdodCBub3csIHlvdSIKCUAke0VDSE9fTVNHfSAi
 aGF2ZSB0byB1c2UgcG9ydCBmb3J3YXJkaW5nIHRvIGNvbm5lY3QgdG8gb3RoZXJzLiIKCUAke0VD
 SE9fTVNHfSAiIgoJQCR7RUNIT19NU0d9ICIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
 KioqKioqKioqKioqKioqKioqKiIKCi5pbmNsdWRlIDxic2QucG9ydC5taz4KAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcmV0cm9z
 aGFyZS9wa2ctcGxpc3QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDY0NCAAMDAxNzUxIAAwMDAw
 MDAgADAwMDAwMDAwMDcxIDExNzA3MDIyMzUzIDAxNTM0MAAgMAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAd2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAgADAwMDAwMCAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABiaW4vUmV0
 cm9TaGFyZQolJURBVEFESVIlJS9iZGJvb3QudHh0CkBkaXJybSAlJURBVEFESVIlJQoAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hh
 cmUvcGtnLWRlc2NyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAw
 IAAwMDAwMDAwMDU2NSAxMTcwNzAyMjM1MyAwMTUzMTUAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIAMDByZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUmV0cm9TaGFy
 ZSBpcyBhIE9wZW4gU291cmNlIGNyb3NzLXBsYXRmb3JtLCBwcml2YXRlIGFuZCBzZWN1cmUgZGVj
 ZW50cmFsaXNlZApjb21tdW5pY2F0aW9uIHBsYXRmb3JtLiBJdCBsZXRzIHlvdSB0byBzZWN1cmVs
 eSBjaGF0IGFuZCBzaGFyZSBmaWxlcyB3aXRoIHlvdXIKZnJpZW5kcyBhbmQgZmFtaWx5LCB1c2lu
 ZyBhIHdlYi1vZi10cnVzdCB0byBhdXRoZW50aWNhdGUgcGVlcnMgYW5kIE9wZW5TU0wgdG8KZW5j
 cnlwdCBhbGwgY29tbXVuaWNhdGlvbi4gUmV0cm9TaGFyZSBwcm92aWRlcyBmaWxlc2hhcmluZywg
 Y2hhdCwgbWVzc2FnZXMsIApmb3J1bXMgYW5kIGNoYW5uZWxzLgoKV1dXOiBodHRwOi8vcmV0cm9z
 aGFyZS5zb3VyY2Vmb3JnZS5uZXQvCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByZXRyb3NoYXJl
 L2Rpc3RpbmZvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAA
 MDAwMDAwMDAyMjIgMTE3MDcwMjIzNTMgMDE1MjQzACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAB3aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFNIQTI1NiAoUmV0
 cm9TaGFyZS12MC41LjJhLnRhci5neikgPSAzMzgzOGMwMjM0ZTc3OWU2YjMxMGJiZDE5YmY2YzVj
 MDM5NGU4NGNjNWI0MTgxMTRiNjhmMGNhYzhjMWVlYzE4ClNJWkUgKFJldHJvU2hhcmUtdjAuNS4y
 YS50YXIuZ3opID0gMTAzMzQyNzMKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcmV0cm9zaGFyZS9m
 aWxlcy8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDc1NSAAMDAxNzUxIAAwMDAwMDAgADAw
 MDAwMDAwMDAwIDExNzA3MDczNTEyIDAxNDYxMgAgNQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 d2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAgADAwMDAwMCAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByZXRyb3NoYXJlL2Zp
 bGVzL3BhdGNoLXJldHJvc2hhcmUtZ3VpLXNyYy1SZXRyb1NoYXJlLnBybwAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAAMDAw
 MDAwMDEwNTYgMTE3MDcwNjcxMDMgMDI0MjMzACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3
 aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLSByZXRyb3NoYXJl
 LWd1aS9zcmMvUmV0cm9TaGFyZS5wcm8ub3JpZwkyMDExLTA4LTAzIDE5OjQ1OjAzLjAwMDAwMDAw
 MCArMDIwMAorKysgcmV0cm9zaGFyZS1ndWkvc3JjL1JldHJvU2hhcmUucHJvCTIwMTItMDEtMTUg
 MTI6NTU6MTIuMDAwMDAwMDAwICswMTAwCkBAIC0xNTMsOSArMTUzLDEyIEBACiAKICMgIyMjIyMj
 IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogCitJTkNMVURFUEFUSCArPSAk
 JHtQUkVGSVh9L2luY2x1ZGUvZ3BnbWUKK0xJQlMgKz0gLi4vLi4vbGlicmV0cm9zaGFyZS9zcmMv
 bGlicmV0cm9zaGFyZS5hIC1sc3NsIC1sZ3BnbWUgLWx1cG5wCisKIGJpdGRodCB7Ci0JTElCUyAr
 PSAuLi8uLi9saWJiaXRkaHQvc3JjL2xpYi9saWJiaXRkaHQuYQotCVBSRV9UQVJHRVRERVBTICo9
 IC4uLy4uL2xpYmJpdGRodC9zcmMvbGliL2xpYmJpdGRodC5hCisJTElCUyArPSAuLi8uLi9saWJi
 aXRkaHQvc3JjL2xpYmJpdGRodC5hCisJUFJFX1RBUkdFVERFUFMgKj0gLi4vLi4vbGliYml0ZGh0
 L3NyYy9saWJiaXRkaHQuYQogfQogCiB3aW4zMiB7CgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByZXRyb3NoYXJlL2ZpbGVz
 L3BhdGNoLWxpYnJldHJvc2hhcmUtc3JjLXJzc2VydmVyLXJzbG9naW5oYW5kbGVyLmNjAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAAMDAwMDAw
 MDIwNjcgMTE3MDcwMjIzNTMgMDI2NTM0ACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3aGVl
 bAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLSBsaWJyZXRyb3NoYXJl
 L3NyYy9yc3NlcnZlci9yc2xvZ2luaGFuZGxlci5jYy5vcmlnCTIwMTItMDEtMTUgMDQ6NDQ6NTku
 MDAwMDAwMDAwICswMTAwCisrKyBsaWJyZXRyb3NoYXJlL3NyYy9yc3NlcnZlci9yc2xvZ2luaGFu
 ZGxlci5jYwkyMDEyLTAxLTE1IDA0OjQzOjA4LjAwMDAwMDAwMCArMDEwMApAQCAtNCw2ICs0LDcg
 QEAKICNpbmNsdWRlIDxwcWkvYXV0aGdwZy5oPgogI2luY2x1ZGUgInJzbG9naW5oYW5kbGVyLmgi
 CiAjaW5jbHVkZSAidXRpbC9yc2Rpci5oIgorI2luY2x1ZGUgInJzaW5pdC5oIgogCiAjaWZkZWYg
 VUJVTlRVCiAjaW5jbHVkZSA8Z25vbWUta2V5cmluZy0xL2dub21lLWtleXJpbmcuaD4KQEAgLTE5
 Niw3ICsxOTcsNyBAQAogCS8qKioqKioqKioqKioqKioqKioqKiBPU1ggS2V5Q2hhaW4gc3R1ZmYg
 KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjZWxzZSAvKiBVTklYLCBidXQgbm90IFVC
 VU5UVSBvciBBUFBMRSAqLwogCi0JRklMRSogaGVscEZpbGUgPSBSc0RpclV0aWw6OnJzX2ZvcGVu
 KGdldEF1dG9sb2dpbkZpbGVOYW1lLmNfc3RyKCksICJyIik7CisJRklMRSogaGVscEZpbGUgPSBS
 c0RpclV0aWw6OnJzX2ZvcGVuKGdldEF1dG9sb2dpbkZpbGVOYW1lKHNzbF9pZCkuY19zdHIoKSwg
 InIiKTsKIAogCWlmKGhlbHBGaWxlID09IE5VTEwpewogCQlzdGQ6OmNlcnIgPDwgIlxuRmFpbGVk
 IHRvIG9wZW4gaGVscCBmaWxlXG4iIDw8IHN0ZDo6ZW5kbDsKQEAgLTQwOCw3ICs0MDksNyBAQAog
 I2Vsc2UKIAogCS8qIFdBUk5JTkc6IEF1dG9sb2dpbiBpcyBpbmhlcmVudGx5IHVuc2FmZSAqLwot
 CUZJTEUqIGhlbHBGaWxlID0gUnNEaXJVdGlsOjpyc19mb3BlbihnZXRBdXRvbG9naW5GaWxlTmFt
 ZS5jX3N0cigpLCAidyIpOworCUZJTEUqIGhlbHBGaWxlID0gUnNEaXJVdGlsOjpyc19mb3Blbihn
 ZXRBdXRvbG9naW5GaWxlTmFtZShzc2xfaWQpLmNfc3RyKCksICJ3Iik7CiAKIAlpZihoZWxwRmls
 ZSA9PSBOVUxMKXsKIAkJc3RkOjpjZXJyIDw8ICJcblJzU3RvcmVBdXRvTG9naW4oKTogRmFpbGVk
 IHRvIG9wZW4gaGVscCBmaWxlXG4iIDw8IHN0ZDo6ZW5kbDsKAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0
 Y2gtbGlicmV0cm9zaGFyZS1zcmMtdXBucC11cG5waGFuZGxlci5oAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMDYy
 MCAxMTcwNzAyMjM1MyAwMjUwMDMAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAdXN0YXIAMDByZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3Jj
 L3VwbnAvdXBucGhhbmRsZXIuaH4JMjAxMC0wNy0wNCAxMjo0MjoxNy4wMDAwMDAwMDAgKzAyMDAK
 KysrIGxpYnJldHJvc2hhcmUvc3JjL3VwbnAvdXBucGhhbmRsZXIuaAkyMDEyLTAxLTE1IDA1OjI2
 OjQ1LjAwMDAwMDAwMCArMDEwMApAQCAtMTMsNyArMTMsMTEgQEAKICNpbmNsdWRlICJ1dGlsL3Jz
 dGhyZWFkcy5oIgogCiAjaW5jbHVkZSA8dXBucC91cG5wLmg+CisjaWZkZWYgZG9fbm90X3VzZV90
 aGlzCisjaW5jbHVkZSAidXBucC9VUG5QQmFzZS5jcHAiCisjZWxzZQogI2luY2x1ZGUgInVwbnAv
 VVBuUEJhc2UuaCIKKyNlbmRpZgogCiAjZGVmaW5lIFJTX1VQTlBfU19VTklOSVRJQUxJU0VEICAw
 CiAjZGVmaW5lIFJTX1VQTlBfU19VTkFWQUlMQUJMRSAgICAxCgAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByZXRyb3NoYXJlL2ZpbGVzL3BhdGNo
 LWxpYnJldHJvc2hhcmUtc3JjLWZ0LWZ0ZmlsZWNyZWF0b3IuaAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAAMDAwMDAwMDA0NTAg
 MTE3MDcwMjIzNTMgMDI0NzQ0ACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3aGVlbAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLSBsaWJyZXRyb3NoYXJlL3NyYy9m
 dC9mdGZpbGVjcmVhdG9yLmh+CTIwMTEtMDQtMjUgMTY6MjA6NTcuMDAwMDAwMDAwICswMjAwCisr
 KyBsaWJyZXRyb3NoYXJlL3NyYy9mdC9mdGZpbGVjcmVhdG9yLmgJMjAxMi0wMS0xNSAyMDozMDo0
 MS4wMDAwMDAwMDAgKzAxMDAKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJmdGZpbGVwcm92
 aWRlci5oIgogI2luY2x1ZGUgImZ0Y2h1bmttYXAuaCIKICNpbmNsdWRlIDxtYXA+CisjZGVmaW5l
 IGZzZWVrbzY0IGZzZWVrbwogCiBjbGFzcyBaZXJvSW5pdENvdW50ZXIKIHsKAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcmV0cm9zaGFyZS9maWxlcy9yc2luaXQu
 aAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAADAwMDY0NCAAMDAxNzUxIAAwMDAwMDAgADAwMDAwMDAzNjY1IDEx
 NzA3MDIyMzUzIDAxNjMwMgAgMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAd2hlZWwAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAgADAwMDAwMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKI2lmbmRlZiBSRVRST1NIQVJFX1JTSU5J
 VF9ICiNkZWZpbmUgUkVUUk9TSEFSRV9SU0lOSVRfSAoKY2xhc3MgYWNjb3VudElkCnsKCXB1Ymxp
 YzoKCQlzdGQ6OnN0cmluZyBwZ3BJZDsKCQlzdGQ6OnN0cmluZyBwZ3BOYW1lOwoJCXN0ZDo6c3Ry
 aW5nIHBncEVtYWlsOwoKCQlzdGQ6OnN0cmluZyBzc2xJZDsKICAgICAgICAgICAgICAgIHN0ZDo6
 c3RyaW5nIGxvY2F0aW9uOwp9OwoKCmNsYXNzIFJzSW5pdENvbmZpZyAKewoJcHVibGljOgogICAg
 ICAgICAgICAgICAgLyogRGlyZWN0b3JpZXMgKFNldHVwQmFzZURpcikgKi8KICAgICAgICAgICAg
 ICAgIHN0YXRpYyBzdGQ6OnN0cmluZyBiYXNlZGlyOwogICAgICAgICAgICAgICAgc3RhdGljIHN0
 ZDo6c3RyaW5nIGhvbWVQYXRoOwojaWZkZWYgV0lORE9XU19TWVMKICAgICAgICAgICAgICAgIHN0
 YXRpYyBib29sIHBvcnRhYmxlOwogICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgaXNXaW5kb3dz
 WFA7CiNlbmRpZgoKCQlzdGF0aWMgc3RkOjpsaXN0PGFjY291bnRJZD4gYWNjb3VudElkczsKCQlz
 dGF0aWMgc3RkOjpzdHJpbmcgcHJlZmVyZWRJZDsKCgkJLyogZm9yIGNlcnRpZmljYXRlIGNyZWF0
 aW9uICovCiAgICAgICAgICAgICAgICAvL3N0YXRpYyBzdGQ6OnN0cmluZyBncGdQYXNzd2Q7Cgoj
 aWZuZGVmIFdJTkRPV1NfU1lTCgkJc3RhdGljIGludCBsb2NrSGFuZGxlOwojZWxzZQoJCXN0YXRp
 YyBIQU5ETEUgbG9ja0hhbmRsZTsKI2VuZGlmCgoJCS8qIFRoZXNlIGZpZWxkcyBhcmUgbmVlZGVk
 IGZvciBsb2dpbiAqLwogICAgICAgICAgICAgICAgc3RhdGljIHN0ZDo6c3RyaW5nIGxvZ2luSWQ7
 CiAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgY29uZmlnRGlyOwogICAgICAgICAg
 ICAgICAgc3RhdGljIHN0ZDo6c3RyaW5nIGxvYWRfY2VydDsKICAgICAgICAgICAgICAgIHN0YXRp
 YyBzdGQ6OnN0cmluZyBsb2FkX2tleTsKCgkJc3RhdGljIHN0ZDo6c3RyaW5nIHBhc3N3ZDsKCiAg
 ICAgICAgICAgICAgICBzdGF0aWMgYm9vbCBhdXRvTG9naW47ICAgICAgICAgICAgICAgICAgLyog
 YXV0b0xvZ2luIGFsbG93ZWQgKi8KICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIHN0YXJ0TWlu
 aW1pc2VkOyAJCS8qIEljb24gb3IgRnVsbCBXaW5kb3cgKi8KCiAgICAgICAgICAgICAgICAvKiBL
 ZXkgUGFyYW1ldGVycyB0aGF0IG11c3QgYmUgc2V0IGJlZm9yZQogICAgICAgICAgICAgICAgICog
 UmV0cm9TaGFyZSB3aWxsIHN0YXJ0IHVwOgogICAgICAgICAgICAgICAgICovCgogICAgICAgICAg
 ICAgICAgLyogTGlzdGVuaW5nIFBvcnQgKi8KICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGZv
 cmNlRXh0UG9ydDsKICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGZvcmNlTG9jYWxBZGRyOwog
 ICAgICAgICAgICAgICAgc3RhdGljIHVuc2lnbmVkIHNob3J0IHBvcnQ7CiAgICAgICAgICAgICAg
 ICBzdGF0aWMgY2hhciBpbmV0WzI1Nl07CgogICAgICAgICAgICAgICAgLyogTG9nZ2luZyAqLwog
 ICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgaGF2ZUxvZ0ZpbGU7CiAgICAgICAgICAgICAgICBz
 dGF0aWMgYm9vbCBvdXRTdGRlcnI7CiAgICAgICAgICAgICAgICBzdGF0aWMgYm9vbCBoYXZlRGVi
 dWdMZXZlbDsKICAgICAgICAgICAgICAgIHN0YXRpYyBpbnQgIGRlYnVnTGV2ZWw7CiAgICAgICAg
 ICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgbG9nZm5hbWU7CgogICAgICAgICAgICAgICAgc3Rh
 dGljIGJvb2wgZmlyc3R0aW1lX3J1bjsKICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGxvYWRf
 dHJ1c3RlZHBlZXI7CiAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgbG9hZF90cnVz
 dGVkcGVlcl9maWxlOwoKICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIHVkcExpc3RlbmVyT25s
 eTsKCiAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgUmV0cm9TaGFyZUxpbms7Cn07
 CgojZW5kaWYKCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGlicmV0
 cm9zaGFyZS1zcmMtcnNzZXJ2ZXItcnNpbml0LmNjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwNDU0MCAxMTcwNzAy
 MjM1MyAwMjUwMjcAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 dXN0YXIAMDByZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3JjL3Jzc2VydmVy
 L3JzaW5pdC5jYy5vcmcJMjAxMi0wMS0xNSAwNDozNDoyNy4wMDAwMDAwMDAgKzAxMDAKKysrIGxp
 YnJldHJvc2hhcmUvc3JjL3Jzc2VydmVyL3JzaW5pdC5jYwkyMDEyLTAxLTE1IDA0OjM1OjQ1LjAw
 MDAwMDAwMCArMDEwMApAQCAtNTksNzggKzU5LDE0IEBACiAKICNpbmNsdWRlICJ0Y3BvbnVkcC91
 ZHBzdHVubmVyLmgiCiAKLWNsYXNzIGFjY291bnRJZAotewotCXB1YmxpYzoKLQkJc3RkOjpzdHJp
 bmcgcGdwSWQ7Ci0JCXN0ZDo6c3RyaW5nIHBncE5hbWU7Ci0JCXN0ZDo6c3RyaW5nIHBncEVtYWls
 OwotCi0JCXN0ZDo6c3RyaW5nIHNzbElkOwotICAgICAgICAgICAgICAgIHN0ZDo6c3RyaW5nIGxv
 Y2F0aW9uOwotfTsKLQotCi1jbGFzcyBSc0luaXRDb25maWcgCi17Ci0JcHVibGljOgotICAgICAg
 ICAgICAgICAgIC8qIERpcmVjdG9yaWVzIChTZXR1cEJhc2VEaXIpICovCi0gICAgICAgICAgICAg
 ICAgc3RhdGljIHN0ZDo6c3RyaW5nIGJhc2VkaXI7Ci0gICAgICAgICAgICAgICAgc3RhdGljIHN0
 ZDo6c3RyaW5nIGhvbWVQYXRoOwotI2lmZGVmIFdJTkRPV1NfU1lTCi0gICAgICAgICAgICAgICAg
 c3RhdGljIGJvb2wgcG9ydGFibGU7Ci0gICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgaXNXaW5k
 b3dzWFA7Ci0jZW5kaWYKLQotCQlzdGF0aWMgc3RkOjpsaXN0PGFjY291bnRJZD4gYWNjb3VudElk
 czsKLQkJc3RhdGljIHN0ZDo6c3RyaW5nIHByZWZlcmVkSWQ7Ci0KLQkJLyogZm9yIGNlcnRpZmlj
 YXRlIGNyZWF0aW9uICovCi0gICAgICAgICAgICAgICAgLy9zdGF0aWMgc3RkOjpzdHJpbmcgZ3Bn
 UGFzc3dkOwotCi0jaWZuZGVmIFdJTkRPV1NfU1lTCi0JCXN0YXRpYyBpbnQgbG9ja0hhbmRsZTsK
 LSNlbHNlCi0JCXN0YXRpYyBIQU5ETEUgbG9ja0hhbmRsZTsKLSNlbmRpZgotCi0JCS8qIFRoZXNl
 IGZpZWxkcyBhcmUgbmVlZGVkIGZvciBsb2dpbiAqLwotICAgICAgICAgICAgICAgIHN0YXRpYyBz
 dGQ6OnN0cmluZyBsb2dpbklkOwotICAgICAgICAgICAgICAgIHN0YXRpYyBzdGQ6OnN0cmluZyBj
 b25maWdEaXI7Ci0gICAgICAgICAgICAgICAgc3RhdGljIHN0ZDo6c3RyaW5nIGxvYWRfY2VydDsK
 LSAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgbG9hZF9rZXk7Ci0KLQkJc3RhdGlj
 IHN0ZDo6c3RyaW5nIHBhc3N3ZDsKLQotICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGF1dG9M
 b2dpbjsgICAgICAgICAgICAgICAgICAvKiBhdXRvTG9naW4gYWxsb3dlZCAqLwotICAgICAgICAg
 ICAgICAgIHN0YXRpYyBib29sIHN0YXJ0TWluaW1pc2VkOyAJCS8qIEljb24gb3IgRnVsbCBXaW5k
 b3cgKi8KLQotICAgICAgICAgICAgICAgIC8qIEtleSBQYXJhbWV0ZXJzIHRoYXQgbXVzdCBiZSBz
 ZXQgYmVmb3JlCi0gICAgICAgICAgICAgICAgICogUmV0cm9TaGFyZSB3aWxsIHN0YXJ0IHVwOgot
 ICAgICAgICAgICAgICAgICAqLwotCi0gICAgICAgICAgICAgICAgLyogTGlzdGVuaW5nIFBvcnQg
 Ki8KLSAgICAgICAgICAgICAgICBzdGF0aWMgYm9vbCBmb3JjZUV4dFBvcnQ7Ci0gICAgICAgICAg
 ICAgICAgc3RhdGljIGJvb2wgZm9yY2VMb2NhbEFkZHI7Ci0gICAgICAgICAgICAgICAgc3RhdGlj
 IHVuc2lnbmVkIHNob3J0IHBvcnQ7Ci0gICAgICAgICAgICAgICAgc3RhdGljIGNoYXIgaW5ldFsy
 NTZdOwotCi0gICAgICAgICAgICAgICAgLyogTG9nZ2luZyAqLwotICAgICAgICAgICAgICAgIHN0
 YXRpYyBib29sIGhhdmVMb2dGaWxlOwotICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIG91dFN0
 ZGVycjsKLSAgICAgICAgICAgICAgICBzdGF0aWMgYm9vbCBoYXZlRGVidWdMZXZlbDsKLSAgICAg
 ICAgICAgICAgICBzdGF0aWMgaW50ICBkZWJ1Z0xldmVsOwotICAgICAgICAgICAgICAgIHN0YXRp
 YyBzdGQ6OnN0cmluZyBsb2dmbmFtZTsKLQotICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGZp
 cnN0dGltZV9ydW47Ci0gICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgbG9hZF90cnVzdGVkcGVl
 cjsKLSAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgbG9hZF90cnVzdGVkcGVlcl9m
 aWxlOwotCi0gICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgdWRwTGlzdGVuZXJPbmx5OwotCi0g
 ICAgICAgICAgICAgICAgc3RhdGljIHN0ZDo6c3RyaW5nIFJldHJvU2hhcmVMaW5rOwotfTsKKyNp
 bmNsdWRlICJyc2luaXQuaCIKIAorI2luY2x1ZGUgPGZubWF0Y2guaD4KKyNpbmNsdWRlIDx1bmlz
 dGQuaD4KKyNkZWZpbmUgT19MQVJHRUZJTEUgICAgICAwMTAwMDAwCisjZGVmaW5lIHN0YXQ2NCBz
 dGF0CisjZGVmaW5lIF9zdGF0IHN0YXQKKyNkZWZpbmUgX2dldGN3ZCBnZXRjd2QKIAogY29uc3Qg
 aW50IHAzZmFjZXN0YXJ0dXB6b25lID0gNDcyMzg7CiAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGliYml0ZGh0LXNy
 Yy11dGlsLWJkcmFuZG9tLmNjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMTE3NiAxMTcwNzAyMjM1MyAw
 MjM1MTEAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIA
 MDByZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAKysrIGxpYmJpdGRodC9zcmMvdXRpbC9iZHJhbmRvbS5jYwky
 MDEyLTAxLTE1IDAzOjQ1OjM2LjAwMDAwMDAwMCArMDEwMAotLS0gbGliYml0ZGh0L3NyYy91dGls
 L2JkcmFuZG9tLmNjLm9yaWcJMjAxMi0wMS0xNSAwMzo0NTowNy4wMDAwMDAwMDAgKzAxMDAKQEAg
 LTEzLDcgKzEzLDcgQEAKICAgI2lmZGVmIF9fQVBQTEVfXwogCXN0YXRpYyBib29sIGF1dG9fc2Vl
 ZCA9IGJkUmFuZG9tOjpzZWVkKCAodGltZShOVUxMKSArIHB0aHJlYWRfbWFjaF90aHJlYWRfbnAo
 cHRocmVhZF9zZWxmKCkpKjB4MTI5M2ZlICsgKGdldHBpZCgpXjB4MTEzZWY3NmIpKV4weDE4ZTM0
 YTEyICkgOwogICAjZWxzZQorLy8gICAgc3RhdGljIGJvb2wgYXV0b19zZWVkID0gYmRSYW5kb206
 OnNlZWQoICh0aW1lKE5VTEwpICsgcHRocmVhZF9zZWxmKCkqMHgxMjkzZmUgKyAoZ2V0cGlkKCle
 MHgxMTNlZjc2YikpXjB4MThlMzRhMTIgKSA7Ci0gICAgc3RhdGljIGJvb2wgYXV0b19zZWVkID0g
 YmRSYW5kb206OnNlZWQoICh0aW1lKE5VTEwpICsgcHRocmVhZF9zZWxmKCkqMHgxMjkzZmUgKyAo
 Z2V0cGlkKCleMHgxMTNlZjc2YikpXjB4MThlMzRhMTIgKSA7CiAgICNlbmRpZgogI2VuZGlmCiBi
 b29sIGJkUmFuZG9tOjpzZWVkKHVpbnQzMl90IHMpIAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGlicmV0cm9zaGFyZS1z
 cmMtdXRpbC1yc3JhbmRvbS5jYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMTIwMiAxMTcwNzAyMjM1MyAwMjQ0
 MzYAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIAMDBy
 ZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3JjL3V0aWwvcnNyYW5kb20uY2N+
 CTIwMTEtMDctMDUgMDA6NTk6MzkuMDAwMDAwMDAwICswMjAwCisrKyBsaWJyZXRyb3NoYXJlL3Ny
 Yy91dGlsL3JzcmFuZG9tLmNjCTIwMTItMDEtMTUgMDQ6NTY6NDcuMDAwMDAwMDAwICswMTAwCkBA
 IC0xMyw3ICsxMyw3IEBACiAgICNpZmRlZiBfX0FQUExFX18KIAlzdGF0aWMgYm9vbCBhdXRvX3Nl
 ZWQgPSBSU1JhbmRvbTo6c2VlZCggKHRpbWUoTlVMTCkgKyBwdGhyZWFkX21hY2hfdGhyZWFkX25w
 KHB0aHJlYWRfc2VsZigpKSoweDEyOTNmZSArIChnZXRwaWQoKV4weDExM2VmNzZiKSleMHgxOGUz
 NGExMiApIDsKICAgI2Vsc2UKLSAgICBzdGF0aWMgYm9vbCBhdXRvX3NlZWQgPSBSU1JhbmRvbTo6
 c2VlZCggKHRpbWUoTlVMTCkgKyBwdGhyZWFkX3NlbGYoKSoweDEyOTNmZSArIChnZXRwaWQoKV4w
 eDExM2VmNzZiKSleMHgxOGUzNGExMiApIDsKKy8vICAgIHN0YXRpYyBib29sIGF1dG9fc2VlZCA9
 IFJTUmFuZG9tOjpzZWVkKCAodGltZShOVUxMKSArIHB0aHJlYWRfc2VsZigpKjB4MTI5M2ZlICsg
 KGdldHBpZCgpXjB4MTEzZWY3NmIpKV4weDE4ZTM0YTEyICkgOwogICAjZW5kaWYKICNlbmRpZgog
 Ym9vbCBSU1JhbmRvbTo6c2VlZCh1aW50MzJfdCBzKSAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGlicmV0cm9zaGFyZS1zcmMt
 dXRpbC1yc2Rpci5oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMDc2MiAxMTcwNzAyMjM1MyAwMjM2MTAA
 IDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIAMDByZXRl
 cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3JjL3V0aWwvcnNkaXIuaC5vcmlnCTIw
 MTEtMDUtMTUgMTQ6NDI6NTUuMDAwMDAwMDAwICswMjAwCisrKyBsaWJyZXRyb3NoYXJlL3NyYy91
 dGlsL3JzZGlyLmgJMjAxMi0wMS0xNSAyMDoxMDoxOS4wMDAwMDAwMDAgKzAxMDAKQEAgLTMxLDYg
 KzMxLDE3IEBACiAjaW5jbHVkZSA8c3RyaW5nPgogI2luY2x1ZGUgPGxpc3Q+CiAjaW5jbHVkZSA8
 c3RkaW50Lmg+CisjaW5jbHVkZSA8Zm5tYXRjaC5oPgorCisjaW5jbHVkZSA8ZGlyZW50Lmg+Cisj
 aW5jbHVkZSA8dW5pc3RkLmg+CisjZGVmaW5lIE9fTEFSR0VGSUxFICAgICAgMDEwMDAwMAorI2Rl
 ZmluZSBzdGF0NjQgc3RhdAorI2RlZmluZSBfc3RhdCBzdGF0CisjZGVmaW5lIF9nZXRjd2QgZ2V0
 Y3dkCisjZGVmaW5lIGZzZWVrbzY0IGZzZWVrbworI2RlZmluZSBmb3BlbjY0IGZvcGVuCisjZGVm
 aW5lIGZ0ZWxsbzY0IGZ0ZWxsbwogCiBjbGFzcyBDUkMzMk1hcCA7CiBjbGFzcyBSc1RocmVhZDsK
 AAAAAAAAAAAAAAAAAAByZXRyb3NoYXJlL2ZpbGVzL3BhdGNoLWxpYnJldHJvc2hhcmUtc3JjLXVw
 bnAtdXBucGhhbmRsZXIuY2MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 MDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAAMDAwMDAwMDA0NTQgMTE3MDcwMjIzNTMgMDI1MTQ2ACAw
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 ADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAC0tLSBsaWJyZXRyb3NoYXJlL3NyYy91cG5wL3VwbnBoYW5kbGVyLmNjfgky
 MDExLTA3LTA4IDExOjU0OjI3LjAwMDAwMDAwMCArMDIwMAorKysgbGlicmV0cm9zaGFyZS9zcmMv
 dXBucC91cG5waGFuZGxlci5jYwkyMDEyLTAxLTE1IDA1OjI3OjEyLjAwMDAwMDAwMCArMDEwMApA
 QCAtMTIsNiArMTIsNyBAQAogI2VuZGlmCiAvKiBUaGlzIHN0dWZmIGlzIGFjdHVhbGx5IEMgKi8K
 IAorI2RlZmluZSBkb19ub3RfdXNlX3RoaXMKICNpbmNsdWRlICJ1cG5wL3VwbnBoYW5kbGVyLmgi
 CiAKICNpbmNsdWRlICJ1dGlsL3JzbmV0LmgiCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAcmV0cm9zaGFyZS9maWxlcy9wYXRjaC1saWJyZXRyb3NoYXJlLXNyYy1saWJy
 ZXRyb3NoYXJlLnBybwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAw
 MDY0NCAAMDAxNzUxIAAwMDAwMDAgADAwMDAwMDAwNTcyIDExNzA3MDIyMzUzIDAyNDcyNwAgMAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAd2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw
 MDAwMDAgADAwMDAwMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAtLS0gbGlicmV0cm9zaGFyZS9zcmMvbGlicmV0cm9zaGFyZS5wcm9+CTIwMTEt
 MDgtMDMgMTk6NDM6MjYuMDAwMDAwMDAwICswMjAwCisrKyBsaWJyZXRyb3NoYXJlL3NyYy9saWJy
 ZXRyb3NoYXJlLnBybwkyMDEyLTAxLTE1IDA0OjIwOjQxLjAwMDAwMDAwMCArMDEwMApAQCAtMTA0
 LDYgKzEwNCw3IEBACiAJSU5DTFVERVBBVEggKz0gLiAkJHtCSVRESFRfRElSfQogCSMgVGhlIG5l
 eHQgbGluZSBpZiBmb3IgY29tcGxpYW5jZSB3aXRoIGRlYmlhbiBwYWNrYWdlcy4gS2VlcCBpdCEK
 IAlJTkNMVURFUEFUSCArPSAuLi9saWJiaXRkaHQKKwlJTkNMVURFUEFUSCArPSAkJHtQUkVGSVh9
 L2luY2x1ZGUvZ3BnbWUKIAlERUZJTkVTICo9IFJTX1VTRV9CSVRESFQKIH0KIAoAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGlicmV0cm9zaGFyZS1zcmMtdXRpbC1y
 c2Rpc2NzcGFjZS5jYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDA2
 NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMDQ3NyAxMTcwNzAyMjM1MyAwMjUxMzEAIDAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIAMDByZXRlcAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAw
 MDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3JjL3V0aWwvcnNkaXNjc3BhY2UuY2Mub3JpZwky
 MDExLTA3LTA1IDAwOjU5OjM5LjAwMDAwMDAwMCArMDIwMAorKysgbGlicmV0cm9zaGFyZS9zcmMv
 dXRpbC9yc2Rpc2NzcGFjZS5jYwkyMDEyLTAxLTE1IDA0OjU1OjE3LjAwMDAwMDAwMCArMDEwMApA
 QCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgPHV0aWwvcnN0aHJlYWRzLmg+CiAjaWZuZGVmIFdJ
 TjMyCiAjaW5jbHVkZSA8c3lzL3N0YXR2ZnMuaD4KKyNkZWZpbmUgc3RhdHZmczY0IHN0YXR2ZnMK
 ICNlbmRpZgogCiAjZGVmaW5lIERFTEFZX0JFVFdFRU5fQ0hFQ0tTIDIgCgAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAByZXRyb3NoYXJlL2ZpbGVzL3BhdGNoLWxpYnJldHJvc2hhcmUtc3JjLWZ0LWZ0Zmls
 ZXByb3ZpZGVyLmgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0
 IAAwMDE3NTEgADAwMDAwMCAAMDAwMDAwMDA0NjYgMTE3MDcwMjIzNTMgMDI1MTQ2ACAwAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAB3aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAw
 MCAAMDAwMDAwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAC0tLSBsaWJyZXRyb3NoYXJlL3NyYy9mdC9mdGZpbGVwcm92aWRlci5ofgkyMDExLTAy
 LTIwIDAxOjU5OjQ3LjAwMDAwMDAwMCArMDEwMAorKysgbGlicmV0cm9zaGFyZS9zcmMvZnQvZnRm
 aWxlcHJvdmlkZXIuaAkyMDEyLTAxLTE1IDA0OjAxOjM1LjAwMDAwMDAwMCArMDEwMApAQCAtMzQs
 NiArMzQsNyBAQAogI2luY2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgInV0aWwvcnN0aHJlYWRz
 LmgiCiAjaW5jbHVkZSAicmV0cm9zaGFyZS9yc2ZpbGVzLmgiCisjZGVmaW5lIGZzZWVrbzY0IGZz
 ZWVrbwogCiBjbGFzcyBmdEZpbGVQcm92aWRlcgogewoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAcmV0cm9zaGFyZS9maWxlcy9wYXRjaC1saWJyZXRyb3NoYXJlLXNyYy1kYmFzZS1maW5k
 ZXguaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDY0NCAA
 MDAxNzUxIAAwMDAwMDAgADAwMDAwMDAwNzY2IDExNzA3MDIyMzUzIDAyNDA0NwAgMAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAd2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAg
 ADAwMDAwMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAtLS0gbGlicmV0cm9zaGFyZS9zcmMvZGJhc2UvZmluZGV4Lmgub3JpZwkyMDExLTA0LTE1
 IDIyOjIxOjUyLjAwMDAwMDAwMCArMDIwMAorKysgbGlicmV0cm9zaGFyZS9zcmMvZGJhc2UvZmlu
 ZGV4LmgJMjAxMi0wMS0xNSAwMzo1NToyNy4wMDAwMDAwMDAgKzAxMDAKQEAgLTMzLDYgKzMzLDE0
 IEBACiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSAicmV0cm9zaGFyZS9yc3R5cGVzLmgi
 CiAKKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxmbm1hdGNoLmg+CisjaW5jbHVkZSA8
 dW5pc3RkLmg+CisjZGVmaW5lIE9fTEFSR0VGSUxFICAgICAgMDEwMDAwMAorI2RlZmluZSBzdGF0
 NjQgc3RhdAorI2RlZmluZSBfc3RhdCBzdGF0CisjZGVmaW5lIF9nZXRjd2QgZ2V0Y3dkCisKIGNs
 YXNzIG9zdHJlYW07CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
 KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAA=
 --=_80a00e14e759b35c30de40fe62026177--
 

From: Peter Klett <glocke@bsdstammtisch.at>
To: <bug-followup@freebsd.org>, Pawel <pawel@freebsd.org>, Freebsd-ports
 Bugs <freebsd-ports-bugs@freebsd.org>
Cc:  
Subject: Re: ports/164283: [NEW PORT] net-p2p/RetroShare: A private and
 secure decentralised communication platform
Date: Tue, 24 Jan 2012 09:13:58 +0100

 --=_de5c6e3b81957186da35ea3266ae8e8f
 Content-Transfer-Encoding: 7bit
 Content-Type: text/plain; charset=UTF-8;
  format=flowed
 
 Please also see buildlogs on reports.org for this commit:
 https://redports.org/buildarchive/20120123165008-24078/
 --=_de5c6e3b81957186da35ea3266ae8e8f
 Content-Transfer-Encoding: base64
 Content-Type: application/x-tar;
  name=retroshare.tar
 Content-Disposition: attachment;
  filename=retroshare.tar
 
 cmV0cm9zaGFyZS8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDc1NSAAMDAxNzUx
 IAAwMDAwMDAgADAwMDAwMDAwMDAwIDExNzA3MzM3MDE2IDAxMzUxMgAgNQAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAd2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAgADAwMDAw
 MCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABy
 ZXRyb3NoYXJlL01ha2VmaWxlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEg
 ADAwMDAwMCAAMDAwMDAwMDM3MDEgMTE3MDczMzcwMTYgMDE1MTUzACAwAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAB3aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAw
 IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMg
 TmV3IHBvcnRzIGNvbGxlY3Rpb24gbWFrZWZpbGUgZm9yOiAgIHJldHJvc2hhcmUKIyBEYXRlIGNy
 ZWF0ZWQ6ICAgICAgICAxNSBKYW51YXJ5IDIwMTIKIyBXaG9tOiAgICAgICAgICAgICAgICBnbG9j
 a2UKIwojICRGcmVlQlNEJAojCgpQT1JUTkFNRT0JCVJldHJvU2hhcmUKUE9SVFZFUlNJT049CQkw
 LjUuMmEKRElTVFZFUlNJT05QUkVGSVg9CXYKQ0FURUdPUklFUz89CQluZXQtcDJwCk1BU1RFUl9T
 SVRFUz0JCSR7TUFTVEVSX1NJVEVfU09VUkNFRk9SR0V9Ck1BU1RFUl9TSVRFX1NVQkRJUj0JJHtQ
 T1JUTkFNRTpMfS8ke1BPUlROQU1FfS8ke1BPUlRWRVJTSU9OfQoKTUFJTlRBSU5FUj0JCWdsb2Nr
 ZUBic2RzdGFtbXRpc2NoLmF0CkNPTU1FTlQ9CQlBIHByaXZhdGUgYW5kIHNlY3VyZSBkZWNlbnRy
 YWxpc2VkIGNvbW11bmljYXRpb24gcGxhdGZvcm0KCkxJQ0VOU0U9CQlHUEx2MgpMSUNFTlNFX0ZJ
 TEU9CQkke1dSS0RJUn0vdHJ1bmsvcmV0cm9zaGFyZS1ndWkvc3JjL2xpY2Vuc2UvbGljZW5zZS50
 eHQKCkxJQl9ERVBFTkRTPQkJZ3BnbWUuMTk6JHtQT1JUU0RJUn0vc2VjdXJpdHkvZ3BnbWUgXAoJ
 CQl1cG5wLjg6JHtQT1JUU0RJUn0vZGV2ZWwvdXBucCBcCgkJCWdub21lLWtleXJpbmcuMDoke1BP
 UlRTRElSfS9zZWN1cml0eS9saWJnbm9tZS1rZXlyaW5nClJVTl9ERVBFTkRTKz0JCXBpbmVudHJ5
 LXF0NDoke1BPUlRTRElSfS9zZWN1cml0eS9waW5lbnRyeS1xdDQKCldSS1NSQz0JCQkke1dSS0RJ
 Un0vdHJ1bmsKVVNFX1FUX1ZFUj0JCTQKUVRfQ09NUE9ORU5UUz0JCWNvcmVsaWIgZ3VpIG5ldHdv
 cmsgeG1sIHNjcmlwdCBkZXNpZ25lcl9idWlsZCB1aWNfYnVpbGQgcW1ha2VfYnVpbGQgbW9jX2J1
 aWxkIHJjY19idWlsZAoKQ0ZMQUdTKz0JCS1JJHtMT0NBTEJBU0V9L2luY2x1ZGUvZ3BnbWUKClVT
 RV9ET1MyVU5JWD0JCXJldHJvc2hhcmUtZ3VpL3NyYy9SZXRyb1NoYXJlLnBybwoKSEFTX0NPTkZJ
 R1VSRT0JCXllcwpkby1jb25maWd1cmU6CglAY2QgJHtXUktTUkN9ICYmICR7U0VURU5WfSAke0NP
 TkZJR1VSRV9FTlZ9IFwKCQkke1FNQUtFfSBQUkVGSVg9JHtQUkVGSVh9ICR7UE9SVE5BTUV9LnBy
 bwoKcG9zdC1wYXRjaDoKCSR7Q1B9ICR7RklMRVNESVJ9L3JzaW5pdC5oICR7V1JLU1JDfS9saWJy
 ZXRyb3NoYXJlL3NyYy9yc3NlcnZlcgoKcG9zdC1pbnN0YWxsOgoJJHtJTlNUQUxMX1BST0dSQU19
 ICR7V1JLU1JDfS9yZXRyb3NoYXJlLWd1aS9zcmMvJHtQT1JUTkFNRX0gJHtQUkVGSVh9L2JpbgoJ
 JHtNS0RJUn0gJHtEQVRBRElSfQoJJHtJTlNUQUxMX01BTn0gJHtXUktTUkN9L2xpYmJpdGRodC9z
 cmMvZXhhbXBsZS9iZGJvb3QudHh0ICR7REFUQURJUn0KCUAke0VDSE9fTVNHfSAiKioqKioqKioq
 KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioiCglAJHtFQ0hPX01TR30g
 IiogICAgICAgICAgICAgICBQT1NUIElOU1RBTEwgICAgICAgICAgICAgICAgICAgICAqIgoJQCR7
 RUNIT19NU0d9ICIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
 KioqKiIKCUAke0VDSE9fTVNHfSAiIgoJQCR7RUNIT19NU0d9ICJBZnRlciB5b3UgaGF2ZSBjcmVh
 dGVkIGFuIGFjY291bnQsIHlvdSBzaG91bGQgY29weSIKCUAke0VDSE9fTVNHfSAiJHtEQVRBRElS
 fS9iZGJvb3QudHh0IGludG8geW91ciIKCUAke0VDSE9fTVNHfSAifi8ucmV0cm9zaGFyZS9ZT1VS
 Q0VSVC8gZGlyZWN0b3J5IHRvIHNlZWQgREhUIHdpdGgiCglAJHtFQ0hPX01TR30gImluaXRpYWwg
 bm9kZXMuIFVQblAgZG9lcyBub3Qgd29yayByaWdodCBub3csIHlvdSIKCUAke0VDSE9fTVNHfSAi
 aGF2ZSB0byB1c2UgcG9ydCBmb3J3YXJkaW5nIHRvIGNvbm5lY3QgdG8gb3RoZXJzLiIKCUAke0VD
 SE9fTVNHfSAiIgoJQCR7RUNIT19NU0d9ICIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
 KioqKioqKioqKioqKioqKioqKiIKCi5pbmNsdWRlIDxic2QucG9ydC5taz4KAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcmV0cm9z
 aGFyZS9wa2ctcGxpc3QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDY0NCAAMDAxNzUxIAAwMDAw
 MDAgADAwMDAwMDAwMDcxIDExNzA3MDIyMzUzIDAxNTM0MAAgMAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAd2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAgADAwMDAwMCAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABiaW4vUmV0
 cm9TaGFyZQolJURBVEFESVIlJS9iZGJvb3QudHh0CkBkaXJybSAlJURBVEFESVIlJQoAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hh
 cmUvcGtnLWRlc2NyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAw
 IAAwMDAwMDAwMDU2NSAxMTcwNzAyMjM1MyAwMTUzMTUAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIAMDByZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUmV0cm9TaGFy
 ZSBpcyBhIE9wZW4gU291cmNlIGNyb3NzLXBsYXRmb3JtLCBwcml2YXRlIGFuZCBzZWN1cmUgZGVj
 ZW50cmFsaXNlZApjb21tdW5pY2F0aW9uIHBsYXRmb3JtLiBJdCBsZXRzIHlvdSB0byBzZWN1cmVs
 eSBjaGF0IGFuZCBzaGFyZSBmaWxlcyB3aXRoIHlvdXIKZnJpZW5kcyBhbmQgZmFtaWx5LCB1c2lu
 ZyBhIHdlYi1vZi10cnVzdCB0byBhdXRoZW50aWNhdGUgcGVlcnMgYW5kIE9wZW5TU0wgdG8KZW5j
 cnlwdCBhbGwgY29tbXVuaWNhdGlvbi4gUmV0cm9TaGFyZSBwcm92aWRlcyBmaWxlc2hhcmluZywg
 Y2hhdCwgbWVzc2FnZXMsIApmb3J1bXMgYW5kIGNoYW5uZWxzLgoKV1dXOiBodHRwOi8vcmV0cm9z
 aGFyZS5zb3VyY2Vmb3JnZS5uZXQvCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByZXRyb3NoYXJl
 L2Rpc3RpbmZvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAA
 MDAwMDAwMDAyMjIgMTE3MDcwMjIzNTMgMDE1MjQzACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAB3aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFNIQTI1NiAoUmV0
 cm9TaGFyZS12MC41LjJhLnRhci5neikgPSAzMzgzOGMwMjM0ZTc3OWU2YjMxMGJiZDE5YmY2YzVj
 MDM5NGU4NGNjNWI0MTgxMTRiNjhmMGNhYzhjMWVlYzE4ClNJWkUgKFJldHJvU2hhcmUtdjAuNS4y
 YS50YXIuZ3opID0gMTAzMzQyNzMKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcmV0cm9zaGFyZS9m
 aWxlcy8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDc1NSAAMDAxNzUxIAAwMDAwMDAgADAw
 MDAwMDAwMDAwIDExNzA3MDczNTEyIDAxNDYxMgAgNQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 d2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAgADAwMDAwMCAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByZXRyb3NoYXJlL2Zp
 bGVzL3BhdGNoLXJldHJvc2hhcmUtZ3VpLXNyYy1SZXRyb1NoYXJlLnBybwAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAAMDAw
 MDAwMDEwNTYgMTE3MDcwNjcxMDMgMDI0MjMzACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3
 aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLSByZXRyb3NoYXJl
 LWd1aS9zcmMvUmV0cm9TaGFyZS5wcm8ub3JpZwkyMDExLTA4LTAzIDE5OjQ1OjAzLjAwMDAwMDAw
 MCArMDIwMAorKysgcmV0cm9zaGFyZS1ndWkvc3JjL1JldHJvU2hhcmUucHJvCTIwMTItMDEtMTUg
 MTI6NTU6MTIuMDAwMDAwMDAwICswMTAwCkBAIC0xNTMsOSArMTUzLDEyIEBACiAKICMgIyMjIyMj
 IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogCitJTkNMVURFUEFUSCArPSAk
 JHtQUkVGSVh9L2luY2x1ZGUvZ3BnbWUKK0xJQlMgKz0gLi4vLi4vbGlicmV0cm9zaGFyZS9zcmMv
 bGlicmV0cm9zaGFyZS5hIC1sc3NsIC1sZ3BnbWUgLWx1cG5wCisKIGJpdGRodCB7Ci0JTElCUyAr
 PSAuLi8uLi9saWJiaXRkaHQvc3JjL2xpYi9saWJiaXRkaHQuYQotCVBSRV9UQVJHRVRERVBTICo9
 IC4uLy4uL2xpYmJpdGRodC9zcmMvbGliL2xpYmJpdGRodC5hCisJTElCUyArPSAuLi8uLi9saWJi
 aXRkaHQvc3JjL2xpYmJpdGRodC5hCisJUFJFX1RBUkdFVERFUFMgKj0gLi4vLi4vbGliYml0ZGh0
 L3NyYy9saWJiaXRkaHQuYQogfQogCiB3aW4zMiB7CgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByZXRyb3NoYXJlL2ZpbGVz
 L3BhdGNoLWxpYnJldHJvc2hhcmUtc3JjLXJzc2VydmVyLXJzbG9naW5oYW5kbGVyLmNjAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAAMDAwMDAw
 MDIwNjcgMTE3MDcwMjIzNTMgMDI2NTM0ACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3aGVl
 bAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLSBsaWJyZXRyb3NoYXJl
 L3NyYy9yc3NlcnZlci9yc2xvZ2luaGFuZGxlci5jYy5vcmlnCTIwMTItMDEtMTUgMDQ6NDQ6NTku
 MDAwMDAwMDAwICswMTAwCisrKyBsaWJyZXRyb3NoYXJlL3NyYy9yc3NlcnZlci9yc2xvZ2luaGFu
 ZGxlci5jYwkyMDEyLTAxLTE1IDA0OjQzOjA4LjAwMDAwMDAwMCArMDEwMApAQCAtNCw2ICs0LDcg
 QEAKICNpbmNsdWRlIDxwcWkvYXV0aGdwZy5oPgogI2luY2x1ZGUgInJzbG9naW5oYW5kbGVyLmgi
 CiAjaW5jbHVkZSAidXRpbC9yc2Rpci5oIgorI2luY2x1ZGUgInJzaW5pdC5oIgogCiAjaWZkZWYg
 VUJVTlRVCiAjaW5jbHVkZSA8Z25vbWUta2V5cmluZy0xL2dub21lLWtleXJpbmcuaD4KQEAgLTE5
 Niw3ICsxOTcsNyBAQAogCS8qKioqKioqKioqKioqKioqKioqKiBPU1ggS2V5Q2hhaW4gc3R1ZmYg
 KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjZWxzZSAvKiBVTklYLCBidXQgbm90IFVC
 VU5UVSBvciBBUFBMRSAqLwogCi0JRklMRSogaGVscEZpbGUgPSBSc0RpclV0aWw6OnJzX2ZvcGVu
 KGdldEF1dG9sb2dpbkZpbGVOYW1lLmNfc3RyKCksICJyIik7CisJRklMRSogaGVscEZpbGUgPSBS
 c0RpclV0aWw6OnJzX2ZvcGVuKGdldEF1dG9sb2dpbkZpbGVOYW1lKHNzbF9pZCkuY19zdHIoKSwg
 InIiKTsKIAogCWlmKGhlbHBGaWxlID09IE5VTEwpewogCQlzdGQ6OmNlcnIgPDwgIlxuRmFpbGVk
 IHRvIG9wZW4gaGVscCBmaWxlXG4iIDw8IHN0ZDo6ZW5kbDsKQEAgLTQwOCw3ICs0MDksNyBAQAog
 I2Vsc2UKIAogCS8qIFdBUk5JTkc6IEF1dG9sb2dpbiBpcyBpbmhlcmVudGx5IHVuc2FmZSAqLwot
 CUZJTEUqIGhlbHBGaWxlID0gUnNEaXJVdGlsOjpyc19mb3BlbihnZXRBdXRvbG9naW5GaWxlTmFt
 ZS5jX3N0cigpLCAidyIpOworCUZJTEUqIGhlbHBGaWxlID0gUnNEaXJVdGlsOjpyc19mb3Blbihn
 ZXRBdXRvbG9naW5GaWxlTmFtZShzc2xfaWQpLmNfc3RyKCksICJ3Iik7CiAKIAlpZihoZWxwRmls
 ZSA9PSBOVUxMKXsKIAkJc3RkOjpjZXJyIDw8ICJcblJzU3RvcmVBdXRvTG9naW4oKTogRmFpbGVk
 IHRvIG9wZW4gaGVscCBmaWxlXG4iIDw8IHN0ZDo6ZW5kbDsKAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0
 Y2gtbGlicmV0cm9zaGFyZS1zcmMtdXBucC11cG5waGFuZGxlci5oAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMDYy
 MCAxMTcwNzAyMjM1MyAwMjUwMDMAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAdXN0YXIAMDByZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3Jj
 L3VwbnAvdXBucGhhbmRsZXIuaH4JMjAxMC0wNy0wNCAxMjo0MjoxNy4wMDAwMDAwMDAgKzAyMDAK
 KysrIGxpYnJldHJvc2hhcmUvc3JjL3VwbnAvdXBucGhhbmRsZXIuaAkyMDEyLTAxLTE1IDA1OjI2
 OjQ1LjAwMDAwMDAwMCArMDEwMApAQCAtMTMsNyArMTMsMTEgQEAKICNpbmNsdWRlICJ1dGlsL3Jz
 dGhyZWFkcy5oIgogCiAjaW5jbHVkZSA8dXBucC91cG5wLmg+CisjaWZkZWYgZG9fbm90X3VzZV90
 aGlzCisjaW5jbHVkZSAidXBucC9VUG5QQmFzZS5jcHAiCisjZWxzZQogI2luY2x1ZGUgInVwbnAv
 VVBuUEJhc2UuaCIKKyNlbmRpZgogCiAjZGVmaW5lIFJTX1VQTlBfU19VTklOSVRJQUxJU0VEICAw
 CiAjZGVmaW5lIFJTX1VQTlBfU19VTkFWQUlMQUJMRSAgICAxCgAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByZXRyb3NoYXJlL2ZpbGVzL3BhdGNo
 LWxpYnJldHJvc2hhcmUtc3JjLWZ0LWZ0ZmlsZWNyZWF0b3IuaAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAAMDAwMDAwMDA0NTAg
 MTE3MDcwMjIzNTMgMDI0NzQ0ACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3aGVlbAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLSBsaWJyZXRyb3NoYXJlL3NyYy9m
 dC9mdGZpbGVjcmVhdG9yLmh+CTIwMTEtMDQtMjUgMTY6MjA6NTcuMDAwMDAwMDAwICswMjAwCisr
 KyBsaWJyZXRyb3NoYXJlL3NyYy9mdC9mdGZpbGVjcmVhdG9yLmgJMjAxMi0wMS0xNSAyMDozMDo0
 MS4wMDAwMDAwMDAgKzAxMDAKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJmdGZpbGVwcm92
 aWRlci5oIgogI2luY2x1ZGUgImZ0Y2h1bmttYXAuaCIKICNpbmNsdWRlIDxtYXA+CisjZGVmaW5l
 IGZzZWVrbzY0IGZzZWVrbwogCiBjbGFzcyBaZXJvSW5pdENvdW50ZXIKIHsKAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcmV0cm9zaGFyZS9maWxlcy9yc2luaXQu
 aAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAADAwMDY0NCAAMDAxNzUxIAAwMDAwMDAgADAwMDAwMDAzNjY1IDEx
 NzA3MDIyMzUzIDAxNjMwMgAgMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAd2hlZWwAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAgADAwMDAwMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKI2lmbmRlZiBSRVRST1NIQVJFX1JTSU5J
 VF9ICiNkZWZpbmUgUkVUUk9TSEFSRV9SU0lOSVRfSAoKY2xhc3MgYWNjb3VudElkCnsKCXB1Ymxp
 YzoKCQlzdGQ6OnN0cmluZyBwZ3BJZDsKCQlzdGQ6OnN0cmluZyBwZ3BOYW1lOwoJCXN0ZDo6c3Ry
 aW5nIHBncEVtYWlsOwoKCQlzdGQ6OnN0cmluZyBzc2xJZDsKICAgICAgICAgICAgICAgIHN0ZDo6
 c3RyaW5nIGxvY2F0aW9uOwp9OwoKCmNsYXNzIFJzSW5pdENvbmZpZyAKewoJcHVibGljOgogICAg
 ICAgICAgICAgICAgLyogRGlyZWN0b3JpZXMgKFNldHVwQmFzZURpcikgKi8KICAgICAgICAgICAg
 ICAgIHN0YXRpYyBzdGQ6OnN0cmluZyBiYXNlZGlyOwogICAgICAgICAgICAgICAgc3RhdGljIHN0
 ZDo6c3RyaW5nIGhvbWVQYXRoOwojaWZkZWYgV0lORE9XU19TWVMKICAgICAgICAgICAgICAgIHN0
 YXRpYyBib29sIHBvcnRhYmxlOwogICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgaXNXaW5kb3dz
 WFA7CiNlbmRpZgoKCQlzdGF0aWMgc3RkOjpsaXN0PGFjY291bnRJZD4gYWNjb3VudElkczsKCQlz
 dGF0aWMgc3RkOjpzdHJpbmcgcHJlZmVyZWRJZDsKCgkJLyogZm9yIGNlcnRpZmljYXRlIGNyZWF0
 aW9uICovCiAgICAgICAgICAgICAgICAvL3N0YXRpYyBzdGQ6OnN0cmluZyBncGdQYXNzd2Q7Cgoj
 aWZuZGVmIFdJTkRPV1NfU1lTCgkJc3RhdGljIGludCBsb2NrSGFuZGxlOwojZWxzZQoJCXN0YXRp
 YyBIQU5ETEUgbG9ja0hhbmRsZTsKI2VuZGlmCgoJCS8qIFRoZXNlIGZpZWxkcyBhcmUgbmVlZGVk
 IGZvciBsb2dpbiAqLwogICAgICAgICAgICAgICAgc3RhdGljIHN0ZDo6c3RyaW5nIGxvZ2luSWQ7
 CiAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgY29uZmlnRGlyOwogICAgICAgICAg
 ICAgICAgc3RhdGljIHN0ZDo6c3RyaW5nIGxvYWRfY2VydDsKICAgICAgICAgICAgICAgIHN0YXRp
 YyBzdGQ6OnN0cmluZyBsb2FkX2tleTsKCgkJc3RhdGljIHN0ZDo6c3RyaW5nIHBhc3N3ZDsKCiAg
 ICAgICAgICAgICAgICBzdGF0aWMgYm9vbCBhdXRvTG9naW47ICAgICAgICAgICAgICAgICAgLyog
 YXV0b0xvZ2luIGFsbG93ZWQgKi8KICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIHN0YXJ0TWlu
 aW1pc2VkOyAJCS8qIEljb24gb3IgRnVsbCBXaW5kb3cgKi8KCiAgICAgICAgICAgICAgICAvKiBL
 ZXkgUGFyYW1ldGVycyB0aGF0IG11c3QgYmUgc2V0IGJlZm9yZQogICAgICAgICAgICAgICAgICog
 UmV0cm9TaGFyZSB3aWxsIHN0YXJ0IHVwOgogICAgICAgICAgICAgICAgICovCgogICAgICAgICAg
 ICAgICAgLyogTGlzdGVuaW5nIFBvcnQgKi8KICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGZv
 cmNlRXh0UG9ydDsKICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGZvcmNlTG9jYWxBZGRyOwog
 ICAgICAgICAgICAgICAgc3RhdGljIHVuc2lnbmVkIHNob3J0IHBvcnQ7CiAgICAgICAgICAgICAg
 ICBzdGF0aWMgY2hhciBpbmV0WzI1Nl07CgogICAgICAgICAgICAgICAgLyogTG9nZ2luZyAqLwog
 ICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgaGF2ZUxvZ0ZpbGU7CiAgICAgICAgICAgICAgICBz
 dGF0aWMgYm9vbCBvdXRTdGRlcnI7CiAgICAgICAgICAgICAgICBzdGF0aWMgYm9vbCBoYXZlRGVi
 dWdMZXZlbDsKICAgICAgICAgICAgICAgIHN0YXRpYyBpbnQgIGRlYnVnTGV2ZWw7CiAgICAgICAg
 ICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgbG9nZm5hbWU7CgogICAgICAgICAgICAgICAgc3Rh
 dGljIGJvb2wgZmlyc3R0aW1lX3J1bjsKICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGxvYWRf
 dHJ1c3RlZHBlZXI7CiAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgbG9hZF90cnVz
 dGVkcGVlcl9maWxlOwoKICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIHVkcExpc3RlbmVyT25s
 eTsKCiAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgUmV0cm9TaGFyZUxpbms7Cn07
 CgojZW5kaWYKCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGlicmV0
 cm9zaGFyZS1zcmMtcnNzZXJ2ZXItcnNpbml0LmNjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwNDU0MCAxMTcwNzAy
 MjM1MyAwMjUwMjcAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 dXN0YXIAMDByZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3JjL3Jzc2VydmVy
 L3JzaW5pdC5jYy5vcmcJMjAxMi0wMS0xNSAwNDozNDoyNy4wMDAwMDAwMDAgKzAxMDAKKysrIGxp
 YnJldHJvc2hhcmUvc3JjL3Jzc2VydmVyL3JzaW5pdC5jYwkyMDEyLTAxLTE1IDA0OjM1OjQ1LjAw
 MDAwMDAwMCArMDEwMApAQCAtNTksNzggKzU5LDE0IEBACiAKICNpbmNsdWRlICJ0Y3BvbnVkcC91
 ZHBzdHVubmVyLmgiCiAKLWNsYXNzIGFjY291bnRJZAotewotCXB1YmxpYzoKLQkJc3RkOjpzdHJp
 bmcgcGdwSWQ7Ci0JCXN0ZDo6c3RyaW5nIHBncE5hbWU7Ci0JCXN0ZDo6c3RyaW5nIHBncEVtYWls
 OwotCi0JCXN0ZDo6c3RyaW5nIHNzbElkOwotICAgICAgICAgICAgICAgIHN0ZDo6c3RyaW5nIGxv
 Y2F0aW9uOwotfTsKLQotCi1jbGFzcyBSc0luaXRDb25maWcgCi17Ci0JcHVibGljOgotICAgICAg
 ICAgICAgICAgIC8qIERpcmVjdG9yaWVzIChTZXR1cEJhc2VEaXIpICovCi0gICAgICAgICAgICAg
 ICAgc3RhdGljIHN0ZDo6c3RyaW5nIGJhc2VkaXI7Ci0gICAgICAgICAgICAgICAgc3RhdGljIHN0
 ZDo6c3RyaW5nIGhvbWVQYXRoOwotI2lmZGVmIFdJTkRPV1NfU1lTCi0gICAgICAgICAgICAgICAg
 c3RhdGljIGJvb2wgcG9ydGFibGU7Ci0gICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgaXNXaW5k
 b3dzWFA7Ci0jZW5kaWYKLQotCQlzdGF0aWMgc3RkOjpsaXN0PGFjY291bnRJZD4gYWNjb3VudElk
 czsKLQkJc3RhdGljIHN0ZDo6c3RyaW5nIHByZWZlcmVkSWQ7Ci0KLQkJLyogZm9yIGNlcnRpZmlj
 YXRlIGNyZWF0aW9uICovCi0gICAgICAgICAgICAgICAgLy9zdGF0aWMgc3RkOjpzdHJpbmcgZ3Bn
 UGFzc3dkOwotCi0jaWZuZGVmIFdJTkRPV1NfU1lTCi0JCXN0YXRpYyBpbnQgbG9ja0hhbmRsZTsK
 LSNlbHNlCi0JCXN0YXRpYyBIQU5ETEUgbG9ja0hhbmRsZTsKLSNlbmRpZgotCi0JCS8qIFRoZXNl
 IGZpZWxkcyBhcmUgbmVlZGVkIGZvciBsb2dpbiAqLwotICAgICAgICAgICAgICAgIHN0YXRpYyBz
 dGQ6OnN0cmluZyBsb2dpbklkOwotICAgICAgICAgICAgICAgIHN0YXRpYyBzdGQ6OnN0cmluZyBj
 b25maWdEaXI7Ci0gICAgICAgICAgICAgICAgc3RhdGljIHN0ZDo6c3RyaW5nIGxvYWRfY2VydDsK
 LSAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgbG9hZF9rZXk7Ci0KLQkJc3RhdGlj
 IHN0ZDo6c3RyaW5nIHBhc3N3ZDsKLQotICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGF1dG9M
 b2dpbjsgICAgICAgICAgICAgICAgICAvKiBhdXRvTG9naW4gYWxsb3dlZCAqLwotICAgICAgICAg
 ICAgICAgIHN0YXRpYyBib29sIHN0YXJ0TWluaW1pc2VkOyAJCS8qIEljb24gb3IgRnVsbCBXaW5k
 b3cgKi8KLQotICAgICAgICAgICAgICAgIC8qIEtleSBQYXJhbWV0ZXJzIHRoYXQgbXVzdCBiZSBz
 ZXQgYmVmb3JlCi0gICAgICAgICAgICAgICAgICogUmV0cm9TaGFyZSB3aWxsIHN0YXJ0IHVwOgot
 ICAgICAgICAgICAgICAgICAqLwotCi0gICAgICAgICAgICAgICAgLyogTGlzdGVuaW5nIFBvcnQg
 Ki8KLSAgICAgICAgICAgICAgICBzdGF0aWMgYm9vbCBmb3JjZUV4dFBvcnQ7Ci0gICAgICAgICAg
 ICAgICAgc3RhdGljIGJvb2wgZm9yY2VMb2NhbEFkZHI7Ci0gICAgICAgICAgICAgICAgc3RhdGlj
 IHVuc2lnbmVkIHNob3J0IHBvcnQ7Ci0gICAgICAgICAgICAgICAgc3RhdGljIGNoYXIgaW5ldFsy
 NTZdOwotCi0gICAgICAgICAgICAgICAgLyogTG9nZ2luZyAqLwotICAgICAgICAgICAgICAgIHN0
 YXRpYyBib29sIGhhdmVMb2dGaWxlOwotICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIG91dFN0
 ZGVycjsKLSAgICAgICAgICAgICAgICBzdGF0aWMgYm9vbCBoYXZlRGVidWdMZXZlbDsKLSAgICAg
 ICAgICAgICAgICBzdGF0aWMgaW50ICBkZWJ1Z0xldmVsOwotICAgICAgICAgICAgICAgIHN0YXRp
 YyBzdGQ6OnN0cmluZyBsb2dmbmFtZTsKLQotICAgICAgICAgICAgICAgIHN0YXRpYyBib29sIGZp
 cnN0dGltZV9ydW47Ci0gICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgbG9hZF90cnVzdGVkcGVl
 cjsKLSAgICAgICAgICAgICAgICBzdGF0aWMgc3RkOjpzdHJpbmcgbG9hZF90cnVzdGVkcGVlcl9m
 aWxlOwotCi0gICAgICAgICAgICAgICAgc3RhdGljIGJvb2wgdWRwTGlzdGVuZXJPbmx5OwotCi0g
 ICAgICAgICAgICAgICAgc3RhdGljIHN0ZDo6c3RyaW5nIFJldHJvU2hhcmVMaW5rOwotfTsKKyNp
 bmNsdWRlICJyc2luaXQuaCIKIAorI2luY2x1ZGUgPGZubWF0Y2guaD4KKyNpbmNsdWRlIDx1bmlz
 dGQuaD4KKyNkZWZpbmUgT19MQVJHRUZJTEUgICAgICAwMTAwMDAwCisjZGVmaW5lIHN0YXQ2NCBz
 dGF0CisjZGVmaW5lIF9zdGF0IHN0YXQKKyNkZWZpbmUgX2dldGN3ZCBnZXRjd2QKIAogY29uc3Qg
 aW50IHAzZmFjZXN0YXJ0dXB6b25lID0gNDcyMzg7CiAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGliYml0ZGh0LXNy
 Yy11dGlsLWJkcmFuZG9tLmNjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMTE3NiAxMTcwNzAyMjM1MyAw
 MjM1MTEAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIA
 MDByZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAKysrIGxpYmJpdGRodC9zcmMvdXRpbC9iZHJhbmRvbS5jYwky
 MDEyLTAxLTE1IDAzOjQ1OjM2LjAwMDAwMDAwMCArMDEwMAotLS0gbGliYml0ZGh0L3NyYy91dGls
 L2JkcmFuZG9tLmNjLm9yaWcJMjAxMi0wMS0xNSAwMzo0NTowNy4wMDAwMDAwMDAgKzAxMDAKQEAg
 LTEzLDcgKzEzLDcgQEAKICAgI2lmZGVmIF9fQVBQTEVfXwogCXN0YXRpYyBib29sIGF1dG9fc2Vl
 ZCA9IGJkUmFuZG9tOjpzZWVkKCAodGltZShOVUxMKSArIHB0aHJlYWRfbWFjaF90aHJlYWRfbnAo
 cHRocmVhZF9zZWxmKCkpKjB4MTI5M2ZlICsgKGdldHBpZCgpXjB4MTEzZWY3NmIpKV4weDE4ZTM0
 YTEyICkgOwogICAjZWxzZQorLy8gICAgc3RhdGljIGJvb2wgYXV0b19zZWVkID0gYmRSYW5kb206
 OnNlZWQoICh0aW1lKE5VTEwpICsgcHRocmVhZF9zZWxmKCkqMHgxMjkzZmUgKyAoZ2V0cGlkKCle
 MHgxMTNlZjc2YikpXjB4MThlMzRhMTIgKSA7Ci0gICAgc3RhdGljIGJvb2wgYXV0b19zZWVkID0g
 YmRSYW5kb206OnNlZWQoICh0aW1lKE5VTEwpICsgcHRocmVhZF9zZWxmKCkqMHgxMjkzZmUgKyAo
 Z2V0cGlkKCleMHgxMTNlZjc2YikpXjB4MThlMzRhMTIgKSA7CiAgICNlbmRpZgogI2VuZGlmCiBi
 b29sIGJkUmFuZG9tOjpzZWVkKHVpbnQzMl90IHMpIAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGlicmV0cm9zaGFyZS1z
 cmMtdXRpbC1yc3JhbmRvbS5jYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMTIwMiAxMTcwNzAyMjM1MyAwMjQ0
 MzYAIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIAMDBy
 ZXRlcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3JjL3V0aWwvcnNyYW5kb20uY2N+
 CTIwMTEtMDctMDUgMDA6NTk6MzkuMDAwMDAwMDAwICswMjAwCisrKyBsaWJyZXRyb3NoYXJlL3Ny
 Yy91dGlsL3JzcmFuZG9tLmNjCTIwMTItMDEtMTUgMDQ6NTY6NDcuMDAwMDAwMDAwICswMTAwCkBA
 IC0xMyw3ICsxMyw3IEBACiAgICNpZmRlZiBfX0FQUExFX18KIAlzdGF0aWMgYm9vbCBhdXRvX3Nl
 ZWQgPSBSU1JhbmRvbTo6c2VlZCggKHRpbWUoTlVMTCkgKyBwdGhyZWFkX21hY2hfdGhyZWFkX25w
 KHB0aHJlYWRfc2VsZigpKSoweDEyOTNmZSArIChnZXRwaWQoKV4weDExM2VmNzZiKSleMHgxOGUz
 NGExMiApIDsKICAgI2Vsc2UKLSAgICBzdGF0aWMgYm9vbCBhdXRvX3NlZWQgPSBSU1JhbmRvbTo6
 c2VlZCggKHRpbWUoTlVMTCkgKyBwdGhyZWFkX3NlbGYoKSoweDEyOTNmZSArIChnZXRwaWQoKV4w
 eDExM2VmNzZiKSleMHgxOGUzNGExMiApIDsKKy8vICAgIHN0YXRpYyBib29sIGF1dG9fc2VlZCA9
 IFJTUmFuZG9tOjpzZWVkKCAodGltZShOVUxMKSArIHB0aHJlYWRfc2VsZigpKjB4MTI5M2ZlICsg
 KGdldHBpZCgpXjB4MTEzZWY3NmIpKV4weDE4ZTM0YTEyICkgOwogICAjZW5kaWYKICNlbmRpZgog
 Ym9vbCBSU1JhbmRvbTo6c2VlZCh1aW50MzJfdCBzKSAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGlicmV0cm9zaGFyZS1zcmMt
 dXRpbC1yc2Rpci5oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAwMDA2NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMDc2MiAxMTcwNzAyMjM1MyAwMjM2MTAA
 IDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIAMDByZXRl
 cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAMDAwMDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3JjL3V0aWwvcnNkaXIuaC5vcmlnCTIw
 MTEtMDUtMTUgMTQ6NDI6NTUuMDAwMDAwMDAwICswMjAwCisrKyBsaWJyZXRyb3NoYXJlL3NyYy91
 dGlsL3JzZGlyLmgJMjAxMi0wMS0xNSAyMDoxMDoxOS4wMDAwMDAwMDAgKzAxMDAKQEAgLTMxLDYg
 KzMxLDE3IEBACiAjaW5jbHVkZSA8c3RyaW5nPgogI2luY2x1ZGUgPGxpc3Q+CiAjaW5jbHVkZSA8
 c3RkaW50Lmg+CisjaW5jbHVkZSA8Zm5tYXRjaC5oPgorCisjaW5jbHVkZSA8ZGlyZW50Lmg+Cisj
 aW5jbHVkZSA8dW5pc3RkLmg+CisjZGVmaW5lIE9fTEFSR0VGSUxFICAgICAgMDEwMDAwMAorI2Rl
 ZmluZSBzdGF0NjQgc3RhdAorI2RlZmluZSBfc3RhdCBzdGF0CisjZGVmaW5lIF9nZXRjd2QgZ2V0
 Y3dkCisjZGVmaW5lIGZzZWVrbzY0IGZzZWVrbworI2RlZmluZSBmb3BlbjY0IGZvcGVuCisjZGVm
 aW5lIGZ0ZWxsbzY0IGZ0ZWxsbwogCiBjbGFzcyBDUkMzMk1hcCA7CiBjbGFzcyBSc1RocmVhZDsK
 AAAAAAAAAAAAAAAAAAByZXRyb3NoYXJlL2ZpbGVzL3BhdGNoLWxpYnJldHJvc2hhcmUtc3JjLXVw
 bnAtdXBucGhhbmRsZXIuY2MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 MDAwNjQ0IAAwMDE3NTEgADAwMDAwMCAAMDAwMDAwMDA0NTQgMTE3MDcwMjIzNTMgMDI1MTQ2ACAw
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 ADAwMDAwMCAAMDAwMDAwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAC0tLSBsaWJyZXRyb3NoYXJlL3NyYy91cG5wL3VwbnBoYW5kbGVyLmNjfgky
 MDExLTA3LTA4IDExOjU0OjI3LjAwMDAwMDAwMCArMDIwMAorKysgbGlicmV0cm9zaGFyZS9zcmMv
 dXBucC91cG5waGFuZGxlci5jYwkyMDEyLTAxLTE1IDA1OjI3OjEyLjAwMDAwMDAwMCArMDEwMApA
 QCAtMTIsNiArMTIsNyBAQAogI2VuZGlmCiAvKiBUaGlzIHN0dWZmIGlzIGFjdHVhbGx5IEMgKi8K
 IAorI2RlZmluZSBkb19ub3RfdXNlX3RoaXMKICNpbmNsdWRlICJ1cG5wL3VwbnBoYW5kbGVyLmgi
 CiAKICNpbmNsdWRlICJ1dGlsL3JzbmV0LmgiCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAcmV0cm9zaGFyZS9maWxlcy9wYXRjaC1saWJyZXRyb3NoYXJlLXNyYy1saWJy
 ZXRyb3NoYXJlLnBybwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAw
 MDY0NCAAMDAxNzUxIAAwMDAwMDAgADAwMDAwMDAwNTcyIDExNzA3MDIyMzUzIDAyNDcyNwAgMAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAd2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw
 MDAwMDAgADAwMDAwMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAtLS0gbGlicmV0cm9zaGFyZS9zcmMvbGlicmV0cm9zaGFyZS5wcm9+CTIwMTEt
 MDgtMDMgMTk6NDM6MjYuMDAwMDAwMDAwICswMjAwCisrKyBsaWJyZXRyb3NoYXJlL3NyYy9saWJy
 ZXRyb3NoYXJlLnBybwkyMDEyLTAxLTE1IDA0OjIwOjQxLjAwMDAwMDAwMCArMDEwMApAQCAtMTA0
 LDYgKzEwNCw3IEBACiAJSU5DTFVERVBBVEggKz0gLiAkJHtCSVRESFRfRElSfQogCSMgVGhlIG5l
 eHQgbGluZSBpZiBmb3IgY29tcGxpYW5jZSB3aXRoIGRlYmlhbiBwYWNrYWdlcy4gS2VlcCBpdCEK
 IAlJTkNMVURFUEFUSCArPSAuLi9saWJiaXRkaHQKKwlJTkNMVURFUEFUSCArPSAkJHtQUkVGSVh9
 L2luY2x1ZGUvZ3BnbWUKIAlERUZJTkVTICo9IFJTX1VTRV9CSVRESFQKIH0KIAoAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAHJldHJvc2hhcmUvZmlsZXMvcGF0Y2gtbGlicmV0cm9zaGFyZS1zcmMtdXRpbC1y
 c2Rpc2NzcGFjZS5jYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDA2
 NDQgADAwMTc1MSAAMDAwMDAwIAAwMDAwMDAwMDQ3NyAxMTcwNzAyMjM1MyAwMjUxMzEAIDAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIAMDByZXRlcAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdoZWVsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAw
 MDAwIAAwMDAwMDAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAALS0tIGxpYnJldHJvc2hhcmUvc3JjL3V0aWwvcnNkaXNjc3BhY2UuY2Mub3JpZwky
 MDExLTA3LTA1IDAwOjU5OjM5LjAwMDAwMDAwMCArMDIwMAorKysgbGlicmV0cm9zaGFyZS9zcmMv
 dXRpbC9yc2Rpc2NzcGFjZS5jYwkyMDEyLTAxLTE1IDA0OjU1OjE3LjAwMDAwMDAwMCArMDEwMApA
 QCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgPHV0aWwvcnN0aHJlYWRzLmg+CiAjaWZuZGVmIFdJ
 TjMyCiAjaW5jbHVkZSA8c3lzL3N0YXR2ZnMuaD4KKyNkZWZpbmUgc3RhdHZmczY0IHN0YXR2ZnMK
 ICNlbmRpZgogCiAjZGVmaW5lIERFTEFZX0JFVFdFRU5fQ0hFQ0tTIDIgCgAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAByZXRyb3NoYXJlL2ZpbGVzL3BhdGNoLWxpYnJldHJvc2hhcmUtc3JjLWZ0LWZ0Zmls
 ZXByb3ZpZGVyLmgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwNjQ0
 IAAwMDE3NTEgADAwMDAwMCAAMDAwMDAwMDA0NjYgMTE3MDcwMjIzNTMgMDI1MTQ2ACAwAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHVzdGFyADAwcmV0ZXAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAB3aGVlbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDAw
 MCAAMDAwMDAwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAC0tLSBsaWJyZXRyb3NoYXJlL3NyYy9mdC9mdGZpbGVwcm92aWRlci5ofgkyMDExLTAy
 LTIwIDAxOjU5OjQ3LjAwMDAwMDAwMCArMDEwMAorKysgbGlicmV0cm9zaGFyZS9zcmMvZnQvZnRm
 aWxlcHJvdmlkZXIuaAkyMDEyLTAxLTE1IDA0OjAxOjM1LjAwMDAwMDAwMCArMDEwMApAQCAtMzQs
 NiArMzQsNyBAQAogI2luY2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgInV0aWwvcnN0aHJlYWRz
 LmgiCiAjaW5jbHVkZSAicmV0cm9zaGFyZS9yc2ZpbGVzLmgiCisjZGVmaW5lIGZzZWVrbzY0IGZz
 ZWVrbwogCiBjbGFzcyBmdEZpbGVQcm92aWRlcgogewoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAcmV0cm9zaGFyZS9maWxlcy9wYXRjaC1saWJyZXRyb3NoYXJlLXNyYy1kYmFzZS1maW5k
 ZXguaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDY0NCAA
 MDAxNzUxIAAwMDAwMDAgADAwMDAwMDAwNzY2IDExNzA3MDIyMzUzIDAyNDA0NwAgMAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHJldGVwAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAd2hlZWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAg
 ADAwMDAwMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAtLS0gbGlicmV0cm9zaGFyZS9zcmMvZGJhc2UvZmluZGV4Lmgub3JpZwkyMDExLTA0LTE1
 IDIyOjIxOjUyLjAwMDAwMDAwMCArMDIwMAorKysgbGlicmV0cm9zaGFyZS9zcmMvZGJhc2UvZmlu
 ZGV4LmgJMjAxMi0wMS0xNSAwMzo1NToyNy4wMDAwMDAwMDAgKzAxMDAKQEAgLTMzLDYgKzMzLDE0
 IEBACiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSAicmV0cm9zaGFyZS9yc3R5cGVzLmgi
 CiAKKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxmbm1hdGNoLmg+CisjaW5jbHVkZSA8
 dW5pc3RkLmg+CisjZGVmaW5lIE9fTEFSR0VGSUxFICAgICAgMDEwMDAwMAorI2RlZmluZSBzdGF0
 NjQgc3RhdAorI2RlZmluZSBfc3RhdCBzdGF0CisjZGVmaW5lIF9nZXRjd2QgZ2V0Y3dkCisKIGNs
 YXNzIG9zdHJlYW07CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
 KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAA=
 --=_de5c6e3b81957186da35ea3266ae8e8f--
 
Responsible-Changed-From-To: freebsd-ports-bugs->pawel 
Responsible-Changed-By: pawel 
Responsible-Changed-When: Wed Jan 25 18:19:59 UTC 2012 
Responsible-Changed-Why:  
I'll take it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=164283 
State-Changed-From-To: feedback->closed 
State-Changed-By: pawel 
State-Changed-When: Fri Jan 27 14:46:17 UTC 2012 
State-Changed-Why:  
New port added, with minor changes. Thanks! 

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

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/164283: commit references a PR
Date: Fri, 27 Jan 2012 15:11:34 +0000 (UTC)

 pawel       2012-01-27 14:41:16 UTC
 
   FreeBSD ports repository
 
   Modified files:
     net-p2p              Makefile 
   Added files:
     net-p2p/retroshare   Makefile distinfo pkg-descr pkg-plist 
     net-p2p/retroshare/files patch-libbitdht-src-util-bdrandom.cc 
                              patch-libretroshare-src-dbase-findex.h 
                              patch-libretroshare-src-ft-ftfilecreator.h 
                              patch-libretroshare-src-ft-ftfileprovider.h 
                              patch-libretroshare-src-libretroshare.pro 
                              patch-libretroshare-src-rsserver-rsinit.cc 
                              patch-libretroshare-src-rsserver-rsloginhandler.cc 
                              patch-libretroshare-src-upnp-upnphandler.cc 
                              patch-libretroshare-src-upnp-upnphandler.h 
                              patch-libretroshare-src-util-rsdir.h 
                              patch-libretroshare-src-util-rsdiscspace.cc 
                              patch-libretroshare-src-util-rsrandom.cc 
                              patch-retroshare-gui-src-RetroShare.pro 
                              rsinit.h 
   Log:
   RetroShare is a Open Source cross-platform, private and secure decentralised
   communication platform. It lets you to securely chat and share files with your
   friends and family, using a web-of-trust to authenticate peers and OpenSSL to
   encrypt all communication. RetroShare provides filesharing, chat, messages,
   forums and channels.
   
   WWW: http://retroshare.sourceforge.net/
   
   PR:             ports/164283
   Submitted by:   Peter Klett <glocke@bsdstammtisch.at>
   
   Revision  Changes    Path
   1.128     +1 -0      ports/net-p2p/Makefile
   1.1       +63 -0     ports/net-p2p/retroshare/Makefile (new)
   1.1       +2 -0      ports/net-p2p/retroshare/distinfo (new)
   1.1       +11 -0     ports/net-p2p/retroshare/files/patch-libbitdht-src-util-bdrandom.cc (new)
   1.1       +17 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-dbase-findex.h (new)
   1.1       +10 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-ft-ftfilecreator.h (new)
   1.1       +10 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-ft-ftfileprovider.h (new)
   1.1       +10 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-libretroshare.pro (new)
   1.1       +88 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-rsserver-rsinit.cc (new)
   1.1       +28 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-rsserver-rsloginhandler.cc (new)
   1.1       +10 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-upnp-upnphandler.cc (new)
   1.1       +14 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-upnp-upnphandler.h (new)
   1.1       +20 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-util-rsdir.h (new)
   1.1       +10 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-util-rsdiscspace.cc (new)
   1.1       +11 -0     ports/net-p2p/retroshare/files/patch-libretroshare-src-util-rsrandom.cc (new)
   1.1       +17 -0     ports/net-p2p/retroshare/files/patch-retroshare-gui-src-RetroShare.pro (new)
   1.1       +78 -0     ports/net-p2p/retroshare/files/rsinit.h (new)
   1.1       +7 -0      ports/net-p2p/retroshare/pkg-descr (new)
   1.1       +3 -0      ports/net-p2p/retroshare/pkg-plist (new)
 _______________________________________________
 cvs-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/cvs-all
 To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/164283: commit references a PR
Date: Fri, 27 Jan 2012 15:11:55 +0000 (UTC)

 pawel       2012-01-27 14:45:43 UTC
 
   FreeBSD doc repository (ports committer)
 
   Modified files:
     en_US.ISO8859-1/articles/contributors contrib.additional.sgml 
   Log:
   For net-p2p/retroshare
   
   PR:             ports/164283
   
   Revision  Changes    Path
   1.1058    +5 -0      doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml
 _______________________________________________
 cvs-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/cvs-all
 To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
 
>Unformatted:
