From owner-freebsd-gecko@FreeBSD.ORG Mon Sep 9 11:07:03 2013 Return-Path: Delivered-To: gecko@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id DD285F4D for ; Mon, 9 Sep 2013 11:07:03 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CAD472A27 for ; Mon, 9 Sep 2013 11:07:03 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r89B73wJ040658 for ; Mon, 9 Sep 2013 11:07:03 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r89B73Fg039952 for gecko@FreeBSD.org; Mon, 9 Sep 2013 11:07:03 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 9 Sep 2013 11:07:03 GMT Message-Id: <201309091107.r89B73Fg039952@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: gecko@FreeBSD.org Subject: Current problem reports assigned to gecko@FreeBSD.org X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Sep 2013 11:07:03 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o ports/181393 gecko www/xpi-quick-locale-switcher 1.7.8.5 does not works w o ports/181005 gecko mail/thunderbird - Enigmail failes to start pinentry o ports/180938 gecko www/firefox: ia64: ../../../js/src/gc/Heap.h:827:1: er o ports/180855 gecko www/firefox: Firefox 22 crashes on HTML 5 videos o ports/180766 gecko Flash not work in www/firefox o ports/180679 gecko www/seamonkey 2.19 doesn't install with default clang o ports/180563 gecko www/seamonkey compilation error with Clang (*pp = '\0' o ports/180380 gecko www/firefox: Firefox 22.0 dies instantly when I try to o ports/179420 gecko www/seamonkey freezes completely by accessing citrix x o ports/178524 gecko BATCH=yes not work for www/firefox-i18n o ports/177404 gecko www/firefox: youtube videos in firefox not working o ports/170310 gecko mail/thunderbird: coredump/crash when used with OpenLD o ports/169366 gecko www/xpi-* ports need re-install after each Firefox upd o ports/168091 gecko Mk/bsd.gecko.mk error: USE_FIREFOX doesn't work correc f ports/165263 gecko mail/thunderbird: core dumping most time when users ar o ports/164239 gecko [PATCH] mail/thunderbird: crash with nss_ldap o ports/160387 gecko security/ca_root_nss: Allow user to trust extra local f ports/155949 gecko www/firefox: firefox 4, WITH_PGO, better Text against o ports/144044 gecko [PATCH] www/firefox: Makefile.webplugins target order 19 problems total. From owner-freebsd-gecko@FreeBSD.ORG Mon Sep 9 15:55:09 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 9127BF2B for ; Mon, 9 Sep 2013 15:55:09 +0000 (UTC) (envelope-from cowbert@gmail.com) Received: from mail-la0-x22b.google.com (mail-la0-x22b.google.com [IPv6:2a00:1450:4010:c03::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 211CC2054 for ; Mon, 9 Sep 2013 15:55:08 +0000 (UTC) Received: by mail-la0-f43.google.com with SMTP id ep20so5199217lab.30 for ; Mon, 09 Sep 2013 08:55:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=ajLx735xv4geIAxxCS20lZEzNxey7j8t4HrvFeg676s=; b=kBnKKIaNuq7T9R05XJNMaD+wqK1NwZ+16OxTOrO5JGwN2woFxZfF5hbW8XoJxQ4R9E 55GuN+IA0n1iRzXckz57m2c5Q5ngThCdRRhXMTuTNz9SjxUTCuhuU26hRy/CEbTF83zG S8VWJEJ2uUzgS83EUGOrMhcsqxuFka+Ww0Kjo0YqL/jy9uTZqpcd7BHDRZ4almc6RZuC TkVXuklIKKZYs3sFgMopYXrY38SqFBS4NGU9fnjc1Ua7Rjr83AW4JgV7LhZsv+R6Uq0m Ar3TgdAKsed0HjHHOfqzIJoGhVFLbYa1RCVqwclc90iqEo4QSItGyNuBnXoO191xkhO+ zaOQ== MIME-Version: 1.0 X-Received: by 10.152.45.106 with SMTP id l10mr17300241lam.12.1378742107168; Mon, 09 Sep 2013 08:55:07 -0700 (PDT) Received: by 10.112.17.2 with HTTP; Mon, 9 Sep 2013 08:55:07 -0700 (PDT) Date: Mon, 9 Sep 2013 11:55:07 -0400 Message-ID: Subject: Firefox23 PGO build fails on automation.py error code -10 From: Peter Lai To: freebsd-gecko@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Sep 2013 15:55:09 -0000 I patched Firefox 23 from a portsnap taken 2013-09-08 with the patches from http://lists.freebsd.org/pipermail/freebsd-gecko/2013-August/003598.html It will not PGO. I su -m, confirm shell can access X (run glxgears), PGO build fails after automation.py tries to run with error code -10. # make showconfig ===> The following configuration options are available for firefox-23.0.1,1: DBUS=on: D-Bus IPC system support DEBUG=off: Install debug symbols GCONF=off: GConf configuration backend support GIO=on: GIO for file I/O GNOMEUI=off: libgnomeui support module GNOMEVFS2=off: GnomeVFS2 (virtual file system) support GSTREAMER=off: Multimedia support via GStreamer LIBPROXY=off: Proxy support via libproxy LOGGING=off: Additional log messages OPTIMIZED_CFLAGS=on: Use extra compiler optimizations PGO=on: Use Profile-Guided Optimization WEBRTC=off: Web Real-Time Communication I commented out the ALSA and Pulseaudio lines from bsd.gecko.mk since I don't want either and don't care about sound support: #.if ${PORT_OPTIONS:MALSA} #LIB_DEPENDS+= asound.2:${PORTSDIR}/audio/alsa-lib #RUN_DEPENDS+= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:${PORTSDIR}/audio/alsa-plugins #MOZ_OPTIONS+= --enable-alsa #. if exists(${FILESDIR}/extra-bug780531) #EXTRA_PATCHES+= ${FILESDIR}/extra-bug780531 #. endif #.endif #.if ${PORT_OPTIONS:MPULSEAUDIO} #LIB_DEPENDS+= pulse.0:${PORTSDIR}/audio/pulseaudio #MOZ_OPTIONS+= --enable-pulseaudio #.endif uname -a FreeBSD xxx 9.1-STABLE FreeBSD 9.1-STABLE #0 r250413: Thu May 9 19:24:03 EDT 2013 xxx@xxx:/usr/obj/usr/src/sys/UAB amd64 % gcc46 -v Using built-in specs. COLLECT_GCC=gcc46 COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc46/gcc/x86_64-portbld-freebsd9.1/4.6.3/lto-wrapper Target: x86_64-portbld-freebsd9.1 Configured with: ./../gcc-4.6.3/configure --disable-bootstrap --disable-nls --libdir=/usr/local/lib/gcc46 --libexecdir=/usr/local/libexec/gcc46 --program-suffix=46 --with-as=/usr/local/bin/as --with-gmp=/usr/local --with-gxx-include-dir=/usr/local/lib/gcc46/include/c++/ --with-ld=/usr/local/bin/ld --with-libiconv-prefix=/usr/local --with-pkgversion='FreeBSD Ports Collection' --with-system-zlib --with-ecj-jar=/usr/local/share/java/ecj-4.5.jar --enable-languages=c,c++,objc,fortran,java --prefix=/usr/local --mandir=/usr/local/man --infodir=/usr/local/info/gcc46 --build=x86_64-portbld-freebsd9.1 Thread model: posix gcc version 4.6.3 (FreeBSD Ports Collection) gcc-4.6.3 and binutils-2.23.2 were built and installed right before trying to build firefox. sqlite3-3.8.0.2, py27-sqlite3-2.7.5_3, nss-3.15.1, nspr-4.10 all built immediately before gcc46 sqllite3 built with following options: ===> The following configuration options are available for sqlite3-3.8.0.2: DIRECT_READ=off: File is read directly from disk EXTENSION=on: Allow loadable extensions FTS3=on: Enable FTS3/4 (Full Text Search) module ICU=on: Enable built with ICU MEMMAN=on: Allows it to release unused memory METADATA=on: Enable column metadata RAMTABLE=off: Store temporary tables in RAM = RTREE=on: Enable R*Tree module ("float") SECURE_DELETE=on: Overwrite deleted information with zeros SOUNDEX=on: Enables the soundex() SQL function STAT3=on: Help SQLite to chose a better query plan THREADSAFE=on: Build thread-safe library UNLOCK_NOTIFY=on: Enable notification on unlocking UPD_DEL_LIMIT=on: ORDER BY and LIMIT on UPDATE and DELETE URI=on: Enable use the URI filename URI_AUTHORITY=off: Allow convert URL into a UNC /etc/make.conf: CPUTYPE?=nocona WRKDIRPREFIX=/usr/obj WITHOUT_NOUVEAU=yes WITH_OPTIMIZED_CFLAGS=yes WITH_OPTIMIZED_FLAGS=yes MAKE_JOBS_NUMBER=18 NO_PROFILE=true .include "/usr/local/etc/ports_sites.conf" QT4_OPTIONS=QGTKSTYLE WITH_SETUID_LUIT=yes PYTHON_DEFAULT_VERSION=python2.7 # added by use.perl 2013-05-12 22:39:11 PERL_VERSION=5.16.2 WITH_NEW_XORG=yes % python Python 2.7.5 (default, May 17 2013, 18:02:58) [GCC 4.2.1 20070831 patched [FreeBSD]] on freebsd9 From owner-freebsd-gecko@FreeBSD.ORG Tue Sep 10 21:15:35 2013 Return-Path: Delivered-To: gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 9734DBDB for ; Tue, 10 Sep 2013 21:15:35 +0000 (UTC) (envelope-from michal.kostuch@gmail.com) Received: from mail-wg0-x22f.google.com (mail-wg0-x22f.google.com [IPv6:2a00:1450:400c:c00::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B4E992C96 for ; Tue, 10 Sep 2013 21:15:34 +0000 (UTC) Received: by mail-wg0-f47.google.com with SMTP id f12so7012243wgh.2 for ; Tue, 10 Sep 2013 14:15:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject :content-type; bh=87WZ0FR8jwrsKD438RApxii7rLW3BRBNeHgJ0TCqhdM=; b=zfbitCi0DCeThQiQYPVG7SkDQDjclv7x9Do2hqbXFiZnPK1iFicYawoD/Aso7aEy0o HlMGhLb+q2amORP1VrJrmrqwb3P3VsRlnaL0VGedHkkP0vfk00Zb0IQ59ajtjaTs57zu U328qTZ0Td5K2tAuZPxVzXcwdP/MumaInSmRWrARhbu9d62KjghPQkGksNWu1EtmiO+M G77UJDgdVJAzkuoMx8iTaFxL/QI02Fku+YlyO6n2t+wY6eVEaGzhSAEwQrCN40avz0Jy 1vt07tnuo3OCScFcKfNKSizOq6oMi2YQIq3mmlT+vHIkg1IrZ7Yl6tT01BLK6nhN5DzQ zNPQ== X-Received: by 10.180.206.129 with SMTP id lo1mr14397755wic.15.1378847733138; Tue, 10 Sep 2013 14:15:33 -0700 (PDT) Received: from [192.168.1.100] (109241043205.wroclaw.vectranet.pl. [109.241.43.205]) by mx.google.com with ESMTPSA id i8sm6210122wib.1.1969.12.31.16.00.00 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 10 Sep 2013 14:15:32 -0700 (PDT) Message-ID: <522F8BF2.80003@gmail.com> Date: Tue, 10 Sep 2013 23:15:30 +0200 From: MK User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130801 Thunderbird/17.0.8 MIME-Version: 1.0 To: gecko@FreeBSD.org Subject: firefox port install bug/error Content-Type: multipart/mixed; boundary="------------090408090406040300090604" X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Sep 2013 21:15:35 -0000 This is a multi-part message in MIME format. --------------090408090406040300090604 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, see attachments. ...greetz Kosta --------------090408090406040300090604 Content-Type: text/plain; charset=windows-1250; name="config.log" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.log" VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMg d2hpbGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJl IG1ha2VzIGEgbWlzdGFrZS4KCmNvbmZpZ3VyZToxMTEzOiBjaGVja2luZyBob3N0IHN5c3Rl bSB0eXBlCmNvbmZpZ3VyZToxMTM0OiBjaGVja2luZyB0YXJnZXQgc3lzdGVtIHR5cGUKY29u ZmlndXJlOjExNTI6IGNoZWNraW5nIGJ1aWxkIHN5c3RlbSB0eXBlCmNvbmZpZ3VyZToxMjI2 OiBjaGVja2luZyBmb3IgbWF3awpjb25maWd1cmU6MTQwMDogY2hlY2tpbmcgUHl0aG9uIGVu dmlyb25tZW50IGlzIE1vemlsbGEgdmlydHVhbGVudgpjb25maWd1cmU6MTU5NjogY2hlY2tp bmcgZm9yIC91c3IvbG9jYWwvYmluL3BlcmwKY29uZmlndXJlOjI5NTg6IGNoZWNraW5nIGZv ciBnY2MKY29uZmlndXJlOjMwNzE6IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIg KC91c3IvYmluL2NsYW5nIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgIC1M L3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTikgd29y a3MKY29uZmlndXJlOjMwODc6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlw ZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUg IC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiBj b25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZTozMDg0OjE6IHdhcm5pbmc6IHR5cGUgc3BlY2lm aWVyIG1pc3NpbmcsIGRlZmF1bHRzIHRvICdpbnQnIFstV2ltcGxpY2l0LWludF0KbWFpbigp e3JldHVybigwKTt9Cl5+fn4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KY29uZmlndXJlOjMxMTM6 IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgKC91c3IvYmluL2NsYW5nIC1PMiAt cGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16 LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTikgaXMgYSBjcm9zcy1jb21waWxlcgpjb25m aWd1cmU6MzExODogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgR05VIEMKY29uZmln dXJlOjMxMjc6IC91c3IvYmluL2NsYW5nIC1FIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjMxNDY6 IGNoZWNraW5nIHdoZXRoZXIgL3Vzci9iaW4vY2xhbmcgYWNjZXB0cyAtZwpjb25maWd1cmU6 MzE4NzogY2hlY2tpbmcgZm9yIGMrKwpjb25maWd1cmU6MzIxOTogY2hlY2tpbmcgd2hldGhl ciB0aGUgQysrIGNvbXBpbGVyICgvdXNyL2Jpbi9jbGFuZysrIC1PMiAtcGlwZSAtTzMgLWZu by1zdHJpY3QtYWxpYXNpbmcgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2ws LXJwYXRoLFwkJE9SSUdJTikgd29ya3MKY29uZmlndXJlOjMyMzU6IC91c3IvYmluL2NsYW5n KysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtaXN5 c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2lu IC1XbCwtcnBhdGgsXCQkT1JJR0lOIGNvbmZ0ZXN0LkMgIDE+JjUKY29uZmlndXJlOjMyNjE6 IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMrKyBjb21waWxlciAoL3Vzci9iaW4vY2xhbmcrKyAt TzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nICAtTC91c3IvbG9jYWwvbGliIC1X bCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4pIGlzIGEgY3Jvc3MtY29tcGlsZXIK Y29uZmlndXJlOjMyNjY6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIEdOVSBDKysK Y29uZmlndXJlOjMyNzU6IC91c3IvYmluL2NsYW5nKysgLUUgY29uZnRlc3QuQwpjb25maWd1 cmU6MzI5NDogY2hlY2tpbmcgd2hldGhlciAvdXNyL2Jpbi9jbGFuZysrIGFjY2VwdHMgLWcK Y29uZmlndXJlOjMzMjg6IGNoZWNraW5nIGZvciByYW5saWIKY29uZmlndXJlOjMzNjA6IGNo ZWNraW5nIGZvciBhcwpjb25maWd1cmU6MzQxNDogY2hlY2tpbmcgZm9yIGFyCmNvbmZpZ3Vy ZTozNDQ5OiBjaGVja2luZyBmb3IgbGQKY29uZmlndXJlOjM0ODQ6IGNoZWNraW5nIGZvciBz dHJpcApjb25maWd1cmU6MzUxOTogY2hlY2tpbmcgZm9yIHdpbmRyZXMKY29uZmlndXJlOjQ0 MzQ6IGNoZWNraW5nIGhvdyB0byBydW4gdGhlIEMgcHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTo0 NTE0OiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDKysgcHJlcHJvY2Vzc29yCmNvbmZpZ3Vy ZTo0NTMyOiAvdXNyL2Jpbi9jbGFuZysrIC1FIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRl IGNvbmZ0ZXN0LkMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6NDYxNjog Y2hlY2tpbmcgZm9yIGEgQlNEIGNvbXBhdGlibGUgaW5zdGFsbApjb25maWd1cmU6NDY2OTog Y2hlY2tpbmcgd2hldGhlciBsbiAtcyB3b3Jrcwpjb25maWd1cmU6NDY5MjogY2hlY2tpbmcg Zm9yIG1pbmltdW0gcmVxdWlyZWQgcGVybCB2ZXJzaW9uID49IDUuMDA2CmNvbmZpZ3VyZTo0 NzAzOiBjaGVja2luZyBmb3IgZnVsbCBwZXJsIGluc3RhbGxhdGlvbgpjb25maWd1cmU6NDc0 MDogY2hlY2tpbmcgZm9yIGRveHlnZW4KY29uZmlndXJlOjQ3ODk6IGNoZWNraW5nIGZvciBh dXRvY29uZgpjb25maWd1cmU6NDg0MDogY2hlY2tpbmcgZm9yIHVuemlwCmNvbmZpZ3VyZTo0 ODk2OiBjaGVja2luZyBmb3IgemlwCmNvbmZpZ3VyZTo0OTUwOiBjaGVja2luZyBmb3IgeGFy Z3MKY29uZmlndXJlOjUwMDI6IGNoZWNraW5nIGZvciBycG1idWlsZApjb25maWd1cmU6NTE2 NzogY2hlY2tpbmcgY29tcGlsZXIgdmVyc2lvbgpjb25maWd1cmU6NTI0MTogY2hlY2tpbmcg Zm9yIGdtYWtlCmNvbmZpZ3VyZTo1MzA4OiBjaGVja2luZyBmb3IgWApjb25maWd1cmU6NTYy NTogY2hlY2tpbmcgZm9yIGRuZXRfbnRvYSBpbiAtbGRuZXQKY29uZmlndXJlOjU2NDQ6IC91 c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxp YXNpbmcgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVds LC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiBjb25mdGVzdC5jIC1sZG5ldCAgIDE+ JjUKL3Vzci9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sZG5ldApjbGFuZzogZXJyb3I6IGxpbmtl ciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGludm9j YXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSA1NjMzICJjb25m aWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRl cm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBi ZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBi dWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBw bHkuICAqLwpjaGFyIGRuZXRfbnRvYSgpOwoKaW50IG1haW4oKSB7CmRuZXRfbnRvYSgpCjsg cmV0dXJuIDA7IH0KY29uZmlndXJlOjU2NjY6IGNoZWNraW5nIGZvciBkbmV0X250b2EgaW4g LWxkbmV0X3N0dWIKY29uZmlndXJlOjU2ODU6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0 IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWlzeXN0ZW0vdXNyL2xvY2Fs L2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwk JE9SSUdJTiBjb25mdGVzdC5jIC1sZG5ldF9zdHViICAgMT4mNQovdXNyL2Jpbi9sZDogY2Fu bm90IGZpbmQgLWxkbmV0X3N0dWIKY2xhbmc6IGVycm9yOiBsaW5rZXIgY29tbWFuZCBmYWls ZWQgd2l0aCBleGl0IGNvZGUgMSAodXNlIC12IHRvIHNlZSBpbnZvY2F0aW9uKQpjb25maWd1 cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgNTY3NCAiY29uZmlndXJlIgojaW5jbHVk ZSAiY29uZmRlZnMuaCIKLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBl IHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KLyogV2UgdXNlIGNoYXIgYmVjYXVzZSBpbnQgbWln aHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgogICAgYnVpbHRpbiBhbmQgdGhl biBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KY2hhciBk bmV0X250b2EoKTsKCmludCBtYWluKCkgewpkbmV0X250b2EoKQo7IHJldHVybiAwOyB9CmNv bmZpZ3VyZTo1NzE0OiBjaGVja2luZyBmb3IgZ2V0aG9zdGJ5bmFtZQpjb25maWd1cmU6NTgx MjogY2hlY2tpbmcgZm9yIGNvbm5lY3QKY29uZmlndXJlOjU4NDA6IC91c3IvYmluL2NsYW5n IC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWlzeXN0 ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAt V2wsLXJwYXRoLFwkJE9SSUdJTiBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZTo1OTA0OiBj aGVja2luZyBmb3IgcmVtb3ZlCmNvbmZpZ3VyZTo1OTMyOiAvdXNyL2Jpbi9jbGFuZyAtbyBj b25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1pc3lzdGVtL3Vz ci9sb2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1y cGF0aCxcJCRPUklHSU4gY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6NTk5NjogY2hlY2tp bmcgZm9yIHNobWF0CmNvbmZpZ3VyZTo2MDI0OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVz dCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1pc3lzdGVtL3Vzci9sb2Nh bC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxc JCRPUklHSU4gY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6NjA5NzogY2hlY2tpbmcgZm9y IEljZUNvbm5lY3Rpb25OdW1iZXIgaW4gLWxJQ0UKY29uZmlndXJlOjYxMTY6IC91c3IvYmlu L2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcg LWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9y aWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtTC91c3IvbG9jYWwvbGliIGNvbmZ0ZXN0LmMg LWxJQ0UgICAxPiY1CmNvbmZpZ3VyZTo2NTI0OiAvdXNyL2Jpbi9jbGFuZyAtYyAgLWlzeXN0 ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTo2NTIwOjE1 OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnX190aHVtYjJfXycKcmV0 dXJuIHNpemVvZihfX3RodW1iMl9fKTsKICAgICAgICAgICAgICBeCjEgZXJyb3IgZ2VuZXJh dGVkLgpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgNjUxNyAiY29uZmln dXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKCmludCBtYWluKCkgewpyZXR1cm4gc2l6ZW9m KF9fdGh1bWIyX18pOwo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo2NzMzOiBjaGVja2luZyB0 aGF0IHN0YXRpYyBhc3NlcnRpb24gbWFjcm9zIHVzZWQgaW4gYXV0b2NvbmYgdGVzdHMgd29y awpjb25maWd1cmU6Njc1NDogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5v LXN0cmljdC1hbGlhc2luZyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5j IDE+JjUKY29uZmlndXJlOjY3NzE6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMg LWZuby1zdHJpY3QtYWxpYXNpbmcgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRl c3QuYyAxPiY1CmNvbmZpZ3VyZTo2NzcxOjE6IGVycm9yOiAnc3RhdGljX2Fzc2VydF9saW5l XzY3NzEnIGRlY2xhcmVkIGFzIGFuIGFycmF5IHdpdGggYSBuZWdhdGl2ZSBzaXplCkNPTkZJ R1VSRV9TVEFUSUNfQVNTRVJUKDApCl5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmNvbmZp Z3VyZTo2NzY2OjQ0OiBub3RlOiBleHBhbmRlZCBmcm9tOgojZGVmaW5lIENPTkZJR1VSRV9T VEFUSUNfQVNTRVJUKGNvbmRpdGlvbikgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTChj b25kaXRpb24sIF9fTElORV9fKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXgpjb25maWd1cmU6Njc2Nzo1NTogbm90ZTogZXhwYW5kZWQgZnJvbToKI2Rl ZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMKGNvbmRpdGlvbiwgbGluZSkgQ09O RklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIoY29uZGl0aW9uLCBsaW5lKQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3Vy ZTo2NzY4Ojk0OiBub3RlOiBleHBhbmRlZCBmcm9tOgojZGVmaW5lIENPTkZJR1VSRV9TVEFU SUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkgdHlwZWRlZiBpbnQgc3RhdGljX2Fz c2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9uKSA/IDEgOiAtMV0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KMSBlcnJvciBn ZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSA2NzY0ICJj b25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoKI2RlZmluZSBDT05GSUdVUkVfU1RB VElDX0FTU0VSVChjb25kaXRpb24pIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwoY29u ZGl0aW9uLCBfX0xJTkVfXykKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBM KGNvbmRpdGlvbiwgbGluZSkgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIoY29uZGl0 aW9uLCBsaW5lKQojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRp dGlvbiwgbGluZSkgdHlwZWRlZiBpbnQgc3RhdGljX2Fzc2VydF9saW5lXyMjbGluZVsoY29u ZGl0aW9uKSA/IDEgOiAtMV0KCmludCBtYWluKCkgewpDT05GSUdVUkVfU1RBVElDX0FTU0VS VCgwKQo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo2Nzk0OiAvdXNyL2Jpbi9jbGFuZysrIC1j IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWlzeXN0ZW0vdXNyL2xvY2Fs L2luY2x1ZGUgY29uZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZTo2ODExOiAvdXNyL2Jpbi9jbGFu ZysrIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWlzeXN0ZW0vdXNy L2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZTo2ODExOjE6IGVycm9y OiAnc3RhdGljX2Fzc2VydF9saW5lXzY4MTEnIGRlY2xhcmVkIGFzIGFuIGFycmF5IHdpdGgg YSBuZWdhdGl2ZSBzaXplCkNPTkZJR1VSRV9TVEFUSUNfQVNTRVJUKDApCl5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+CmNvbmZpZ3VyZTo2ODA2OjQ0OiBub3RlOiBleHBhbmRlZCBmcm9t OgojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUKGNvbmRpdGlvbikgQ09ORklHVVJF X1NUQVRJQ19BU1NFUlRfSU1QTChjb25kaXRpb24sIF9fTElORV9fKQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6NjgwNzo1NTogbm90 ZTogZXhwYW5kZWQgZnJvbToKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBM KGNvbmRpdGlvbiwgbGluZSkgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIoY29uZGl0 aW9uLCBsaW5lKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCmNvbmZpZ3VyZTo2ODA4Ojk0OiBub3RlOiBleHBhbmRlZCBmcm9tOgoj ZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkg dHlwZWRlZiBpbnQgc3RhdGljX2Fzc2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9uKSA/IDEg OiAtMV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+ fn5+fn5+fn5+fn4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy YW0gd2FzOgojbGluZSA2ODA0ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoK I2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVChjb25kaXRpb24pIENPTkZJR1VSRV9T VEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBfX0xJTkVfXykKI2RlZmluZSBDT05GSUdV UkVfU1RBVElDX0FTU0VSVF9JTVBMKGNvbmRpdGlvbiwgbGluZSkgQ09ORklHVVJFX1NUQVRJ Q19BU1NFUlRfSU1QTDIoY29uZGl0aW9uLCBsaW5lKQojZGVmaW5lIENPTkZJR1VSRV9TVEFU SUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkgdHlwZWRlZiBpbnQgc3RhdGljX2Fz c2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9uKSA/IDEgOiAtMV0KCmludCBtYWluKCkgewpD T05GSUdVUkVfU1RBVElDX0FTU0VSVCgwKQo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo2OTc4 OiBjaGVja2luZyBmb3IgLS1ub2V4ZWNzdGFjayBvcHRpb24gdG8gYXMKY29uZmlndXJlOjY5 ODk6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNp bmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtV2Es LS1ub2V4ZWNzdGFjayAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2lu Y2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTo3MDAyOiBjaGVja2luZyBmb3IgLXog bm9leGVjc3RhY2sgb3B0aW9uIHRvIGxkCmNvbmZpZ3VyZTo3MDEzOiAvdXNyL2Jpbi9jbGFu ZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9 Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLVF1bnVzZWQtYXJn dW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliIC1X bCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNv bmZ0ZXN0LmMgIDE+JjUKY29uZmlndXJlOjcwMjU6IGNoZWNraW5nIGZvciAtLWJ1aWxkLWlk IG9wdGlvbiB0byBsZApjb25maWd1cmU6NzAzNjogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRl c3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251 ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5 c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2lu IC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayAtV2wsLS1idWlsZC1p ZCBjb25mdGVzdC5jICAxPiY1Ci91c3IvYmluL2xkOiB1bnJlY29nbml6ZWQgb3B0aW9uICct LWJ1aWxkLWlkJwovdXNyL2Jpbi9sZDogdXNlIHRoZSAtLWhlbHAgb3B0aW9uIGZvciB1c2Fn ZSBpbmZvcm1hdGlvbgpjbGFuZzogZXJyb3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRo IGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFp bGVkIHByb2dyYW0gd2FzOgojbGluZSA3MDI5ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25m ZGVmcy5oIgoKaW50IG1haW4oKSB7Cgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo3MDUyOiBj aGVja2luZyBpZiB0b29sY2hhaW4gc3VwcG9ydHMgLW1tbXggLW1zc3NlMyBvcHRpb24KY29u ZmlndXJlOjcwNjQ6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlh c2luZyAtbW1teCAtbXNzc2UzIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9j YWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjcwODA6IGNoZWNraW5nIGlm IHRvb2xjaGFpbiBzdXBwb3J0cyAtbW1teCAtbXNzZTQuMSBvcHRpb24KY29uZmlndXJlOjcw OTI6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNp bmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtbW1t eCAtbXNzZTQuMSAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1 ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTo3MTE4OiBjaGVja2luZyB3aGV0aGVyIHRo ZSBDIGNvbXBpbGVyIHN1cHBvcnRzIC1XZXJyb3I9cmV0dXJuLXR5cGUKY29uZmlndXJlOjcx NDE6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNp bmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtV2Vy cm9yIC1XZXJyb3I9cmV0dXJuLXR5cGUgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vz ci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6NzE2OTogY2hlY2tp bmcgd2hldGhlciB0aGUgQyBjb21waWxlciBzdXBwb3J0cyAtV3R5cGUtbGltaXRzCmNvbmZp Z3VyZTo3MTkyOiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNp bmcgLVdlcnJvciAtV3R5cGUtbGltaXRzIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91 c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjcyMjA6IGNoZWNr aW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgc3VwcG9ydHMgLVdlbXB0eS1ib2R5CmNvbmZp Z3VyZTo3MjQzOiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNp bmcgLVdlcnJvciAtV2VtcHR5LWJvZHkgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vz ci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6NzI3MTogY2hlY2tp bmcgd2hldGhlciB0aGUgQyBjb21waWxlciBzdXBwb3J0cyAtV3NpZ24tY29tcGFyZQpjb25m aWd1cmU6NzI5NDogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmlj dC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1XZXJyb3IgLVdzaWduLWNvbXBhcmUgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVt L3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6NzM4MjogY2hl Y2tpbmcgd2hldGhlciB0aGUgQysrIGNvbXBpbGVyIHN1cHBvcnRzIC1XZXJyb3I9cmV0dXJu LXR5cGUKY29uZmlndXJlOjc0MDU6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBlIC1P MyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxp YXNpbmcgLVdlcnJvciAtV2Vycm9yPXJldHVybi10eXBlIC1RdW51c2VkLWFyZ3VtZW50cyAt aXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjc0 MzM6IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMrKyBjb21waWxlciBzdXBwb3J0cyAtV3R5cGUt bGltaXRzCmNvbmZpZ3VyZTo3NDU2OiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAt TzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFs aWFzaW5nIC1XZXJyb3IgLVd0eXBlLWxpbWl0cyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0 ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZTo3NDg0OiBj aGVja2luZyB3aGV0aGVyIHRoZSBDKysgY29tcGlsZXIgc3VwcG9ydHMgLVdlbXB0eS1ib2R5 CmNvbmZpZ3VyZTo3NTA3OiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtTzMgLWZu by1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1XZXJyb3IgLVdlbXB0eS1ib2R5IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3Iv bG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjc1MzU6IGNoZWNraW5n IHdoZXRoZXIgdGhlIEMrKyBjb21waWxlciBzdXBwb3J0cyAtV3NpZ24tY29tcGFyZQpjb25m aWd1cmU6NzU1ODogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3Ry aWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtV2Vy cm9yIC1Xc2lnbi1jb21wYXJlIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9j YWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjc1OTA6IGNoZWNraW5nIHdo ZXRoZXIgdGhlIEMrKyBjb21waWxlciBzdXBwb3J0cyAtV25vLWludmFsaWQtb2Zmc2V0b2YK Y29uZmlndXJlOjc2MTM6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBlIC1PMyAtZm5v LXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcg LVdlcnJvciAtV2ludmFsaWQtb2Zmc2V0b2YgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVt L3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1cmU6NzY2NTogY2hl Y2tpbmcgd2hldGhlciB0aGUgQysrIGNvbXBpbGVyIHN1cHBvcnRzIC1Xbm8tZXh0ZW5kZWQt b2Zmc2V0b2YKY29uZmlndXJlOjc2ODg6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBl IC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3Qt YWxpYXNpbmcgLVdlcnJvciAtV2V4dGVuZGVkLW9mZnNldG9mIC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKZXJyb3I6IHVu a25vd24gd2FybmluZyBvcHRpb24gJy1XZXh0ZW5kZWQtb2Zmc2V0b2YnIFstV2Vycm9yLC1X dW5rbm93bi13YXJuaW5nLW9wdGlvbl0KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CiNsaW5lIDc2ODEgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCgppbnQgbWFp bigpIHsKcmV0dXJuKDApOwo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo3NzI2OiBjaGVja2lu ZyB3aGV0aGVyIGxkIGhhcyBhcmNoaXZlIGV4dHJhY3Rpb24gZmxhZ3MKY29uZmlndXJlOjc3 NTA6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlh c2luZyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgLVds LC0td2hvbGUtYXJjaGl2ZSBjb25mdGVzdC5jIC1XbCwtLW5vLXdob2xlLWFyY2hpdmUgMT4m NQpjb25maWd1cmU6Nzc4NTogY2hlY2tpbmcgZm9yIDY0LWJpdCBPUwpjb25maWd1cmU6Nzc5 NDogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2lu ZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1RdW51 c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+ JjUKY29uZmlndXJlOjc3OTQ6MTogZXJyb3I6ICdzdGF0aWNfYXNzZXJ0X2xpbmVfNzc5NCcg ZGVjbGFyZWQgYXMgYW4gYXJyYXkgd2l0aCBhIG5lZ2F0aXZlIHNpemUKQ09ORklHVVJFX1NU QVRJQ19BU1NFUlQoc2l6ZW9mKHZvaWQqKSA9PSA4KQpefn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmNvbmZpZ3VyZTo3Nzg5OjQ0OiBub3RlOiBleHBhbmRl ZCBmcm9tOgojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUKGNvbmRpdGlvbikgQ09O RklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTChjb25kaXRpb24sIF9fTElORV9fKQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6Nzc5MDo1 NTogbm90ZTogZXhwYW5kZWQgZnJvbToKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VS VF9JTVBMKGNvbmRpdGlvbiwgbGluZSkgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIo Y29uZGl0aW9uLCBsaW5lKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZTo3NzkxOjk0OiBub3RlOiBleHBhbmRlZCBm cm9tOgojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwg bGluZSkgdHlwZWRlZiBpbnQgc3RhdGljX2Fzc2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9u KSA/IDEgOiAtMV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+ fn5+fn5+fn5+fn5+fn5+fn4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVk IHByb2dyYW0gd2FzOgojbGluZSA3Nzg3ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVm cy5oIgoKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVChjb25kaXRpb24pIENPTkZJ R1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBfX0xJTkVfXykKI2RlZmluZSBD T05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMKGNvbmRpdGlvbiwgbGluZSkgQ09ORklHVVJF X1NUQVRJQ19BU1NFUlRfSU1QTDIoY29uZGl0aW9uLCBsaW5lKQojZGVmaW5lIENPTkZJR1VS RV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkgdHlwZWRlZiBpbnQgc3Rh dGljX2Fzc2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9uKSA/IDEgOiAtMV0KCmludCBtYWlu KCkgewpDT05GSUdVUkVfU1RBVElDX0FTU0VSVChzaXplb2Yodm9pZCopID09IDgpCjsgcmV0 dXJuIDA7IH0KY29uZmlndXJlOjgyMjk6IGNoZWNraW5nIGZvciBjdXN0b20gPHN0ZGludC5o PiBpbXBsZW1lbnRhdGlvbgpjb25maWd1cmU6OTU2NjogY2hlY2tpbmcgd2hldGhlciB0aGUg bGlua2VyIHN1cHBvcnRzIElkZW50aWNhbCBDb2RlIEZvbGRpbmcKY29uZmlndXJlOjk1NzU6 IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0ICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixv cmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIC1XbCwtLWlj Zj1zYWZlIC1mZnVuY3Rpb24tc2VjdGlvbnMgY29uZnRlc3QuYyAgMT4mMgovdXNyL2Jpbi9s ZDogdW5yZWNvZ25pemVkIG9wdGlvbiAnLS1pY2Y9c2FmZScKL3Vzci9iaW4vbGQ6IHVzZSB0 aGUgLS1oZWxwIG9wdGlvbiBmb3IgdXNhZ2UgaW5mb3JtYXRpb24KY2xhbmc6IGVycm9yOiBs aW5rZXIgY29tbWFuZCBmYWlsZWQgd2l0aCBleGl0IGNvZGUgMSAodXNlIC12IHRvIHNlZSBp bnZvY2F0aW9uKQpjb25maWd1cmU6OTY0NjogY2hlY2tpbmcgZm9yIEFOU0kgQyBoZWFkZXIg ZmlsZXMKY29uZmlndXJlOjk3NTM6IGNoZWNraW5nIGZvciB3b3JraW5nIGNvbnN0CmNvbmZp Z3VyZTo5ODA3OiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNp bmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1l bnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1 cmU6OTgzMTogY2hlY2tpbmcgZm9yIG1vZGVfdApjb25maWd1cmU6OTg2NzogY2hlY2tpbmcg Zm9yIG9mZl90CmNvbmZpZ3VyZTo5OTAzOiBjaGVja2luZyBmb3IgcGlkX3QKY29uZmlndXJl Ojk5Mzk6IGNoZWNraW5nIGZvciBzaXplX3QKY29uZmlndXJlOjk5ODI6IGNoZWNraW5nIGZv ciBfX3N0ZGNhbGwKY29uZmlndXJlOjk5OTY6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1w aXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rp b25zIC1mbm8tZXhjZXB0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xv Y2FsL2luY2x1ZGUgY29uZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZToxMDAyODogY2hlY2tpbmcg Zm9yIHNzaXplX3QKY29uZmlndXJlOjEwMDY2OiBjaGVja2luZyBmb3Igc3RfYmxrc2l6ZSBp biBzdHJ1Y3Qgc3RhdApjb25maWd1cmU6MTAwNzk6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAt cGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGlu ZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0 aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29u ZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMDA3NToxODogd2FybmluZzogZXhwcmVzc2lvbiBy ZXN1bHQgdW51c2VkIFstV3VudXNlZC12YWx1ZV0Kc3RydWN0IHN0YXQgczsgcy5zdF9ibGtz aXplOwogICAgICAgICAgICAgICB+IF5+fn5+fn5+fn4KMSB3YXJuaW5nIGdlbmVyYXRlZC4K Y29uZmlndXJlOjEwMTAzOiBjaGVja2luZyBmb3Igc2lnaW5mb190CmNvbmZpZ3VyZToxMDEx NjogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2lu ZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVu Y3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5 c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjEwMTQy OiBjaGVja2luZyBmb3IgaW50NjQKY29uZmlndXJlOjEwMTU1OiAvdXNyL2Jpbi9jbGFuZyAt YyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4 OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRh dGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNs dWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTAxNTE6MTogZXJyb3I6IHVzZSBvZiB1 bmRlY2xhcmVkIGlkZW50aWZpZXIgJ2ludDY0JwppbnQ2NCBmb28gPSAwOwpeCjEgZXJyb3Ig Z2VuZXJhdGVkLgpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTAxNDcg ImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCiNpbmNsdWRlIDxzdGRpby5oPgog ICAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CmludCBtYWluKCkgewpp bnQ2NCBmb28gPSAwOwo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMDE4MDogY2hlY2tpbmcg Zm9yIHVpbnQKY29uZmlndXJlOjEwMTkzOiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUg LU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZu by1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMg LVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0 LmMgMT4mNQpjb25maWd1cmU6MTAyMTg6IGNoZWNraW5nIGZvciB1aW50X3QKY29uZmlndXJl OjEwMjMxOiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFs aWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcg LWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRz IC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6 MTAyMjc6MTogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lICd1aW50X3QnOyBkaWQgeW91IG1l YW4gJ3VpbnQ4X3QnPwp1aW50X3QgZm9vID0gMDsKXn5+fn5+CnVpbnQ4X3QKL3Vzci9pbmNs dWRlL3N5cy9fc3RkaW50Lmg6NTQ6MjA6IG5vdGU6ICd1aW50OF90JyBkZWNsYXJlZCBoZXJl CnR5cGVkZWYgX191aW50OF90ICAgICAgICAgICAgICAgdWludDhfdDsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTAyMjMgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNv bmZkZWZzLmgiCiNpbmNsdWRlIDxzdGRpby5oPgogICAgICAgICAgICAgICAgICAjaW5jbHVk ZSA8c3lzL3R5cGVzLmg+CmludCBtYWluKCkgewp1aW50X3QgZm9vID0gMDsKOyByZXR1cm4g MDsgfQpjb25maWd1cmU6MTAyNjU6IGNoZWNraW5nIGZvciB1bmFtZS5kb21haW5uYW1lCmNv bmZpZ3VyZToxMDI3ODogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAt Zm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNl cHRpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBj b25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjEwMjc0OjYyOiBlcnJvcjogbm8gbWVtYmVyIG5h bWVkICdkb21haW5uYW1lJyBpbiAndXRzbmFtZScKICAgICAgICAgICAgKHZvaWQpdW5hbWUo cmVzKTsgIGlmIChyZXMgIT0gMCkgeyBkb21haW4gPSByZXMtPmRvbWFpbm5hbWU7IH0gCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fn5+ICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKI2xpbmUgMTAyNzAgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCiNpbmNs dWRlIDxzeXMvdXRzbmFtZS5oPgppbnQgbWFpbigpIHsKIHN0cnVjdCB1dHNuYW1lICpyZXM7 IGNoYXIgKmRvbWFpbjsKICAgICAgICAgICAgKHZvaWQpdW5hbWUocmVzKTsgIGlmIChyZXMg IT0gMCkgeyBkb21haW4gPSByZXMtPmRvbWFpbm5hbWU7IH0gCjsgcmV0dXJuIDA7IH0KY29u ZmlndXJlOjEwMzA1OiBjaGVja2luZyBmb3IgdW5hbWUuX19kb21haW5uYW1lCmNvbmZpZ3Vy ZToxMDMxODogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0 dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25z IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVz dC5DIDE+JjUKY29uZmlndXJlOjEwMzE0OjYyOiBlcnJvcjogbm8gbWVtYmVyIG5hbWVkICdf X2RvbWFpbm5hbWUnIGluICd1dHNuYW1lJwogICAgICAgICAgICAodm9pZCl1bmFtZShyZXMp OyAgaWYgKHJlcyAhPSAwKSB7IGRvbWFpbiA9IHJlcy0+X19kb21haW5uYW1lOyB9IAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+ fiAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CiNsaW5lIDEwMzEwICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgojaW5jbHVk ZSA8c3lzL3V0c25hbWUuaD4KaW50IG1haW4oKSB7CiBzdHJ1Y3QgdXRzbmFtZSAqcmVzOyBj aGFyICpkb21haW47CiAgICAgICAgICAgICh2b2lkKXVuYW1lKHJlcyk7ICBpZiAocmVzICE9 IDApIHsgZG9tYWluID0gcmVzLT5fX2RvbWFpbm5hbWU7IH0gCjsgcmV0dXJuIDA7IH0KY29u ZmlndXJlOjEwMzU3OiBjaGVja2luZyBmb3IgZ2NjIGMrKzB4IGhlYWRlcnMgYnVnIHdpdGhv dXQgcnR0aQpjb25maWd1cmU6MTAzNjk6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBl IC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3Qt YWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25z IC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lz dGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1cmU6MTA0MjE6 IGNoZWNraW5nIGZvciB1c2FibGUgY2hhcjE2X3QgKDIgYnl0ZXMsIHVuc2lnbmVkKQpjb25m aWd1cmU6MTA0Mzc6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0 cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZu by1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0 aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2Nh bC9pbmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1cmU6MTA0NjU6IGNoZWNraW5nIGZv ciB1c2FibGUgd2NoYXJfdCAoMiBieXRlcywgdW5zaWduZWQpCmNvbmZpZ3VyZToxMDQ3OTog L3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5j dGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251 KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29u ZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZToxMDQ3ODoxOiBlcnJvcjogJ3N0YXRpY19hc3NlcnRf bGluZV8xMDQ3OCcgZGVjbGFyZWQgYXMgYW4gYXJyYXkgd2l0aCBhIG5lZ2F0aXZlIHNpemUK Q09ORklHVVJFX1NUQVRJQ19BU1NFUlQoc2l6ZW9mKHdjaGFyX3QpID09IDIpOwpefn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KY29uZmlndXJlOjEwNDcz OjQ0OiBub3RlOiBleHBhbmRlZCBmcm9tOgojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNT RVJUKGNvbmRpdGlvbikgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTChjb25kaXRpb24s IF9fTElORV9fKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Xgpjb25maWd1cmU6MTA0NzQ6NTU6IG5vdGU6IGV4cGFuZGVkIGZyb206CiNkZWZpbmUgQ09O RklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTChjb25kaXRpb24sIGxpbmUpIENPTkZJR1VSRV9T VEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MTA0NzU6 OTQ6IG5vdGU6IGV4cGFuZGVkIGZyb206CiNkZWZpbmUgQ09ORklHVVJFX1NUQVRJQ19BU1NF UlRfSU1QTDIoY29uZGl0aW9uLCBsaW5lKSB0eXBlZGVmIGludCBzdGF0aWNfYXNzZXJ0X2xp bmVfIyNsaW5lWyhjb25kaXRpb24pID8gMSA6IC0xXQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fgpjb25maWd1cmU6MTA0Nzk6 MjI6IGVycm9yOiAnc3RhdGljX2Fzc2VydF9saW5lXzEwNDc5JyBkZWNsYXJlZCBhcyBhbiBh cnJheSB3aXRoIGEgbmVnYXRpdmUgc2l6ZQogICAgICAgICAgICAgICAgICAgICBDT05GSUdV UkVfU1RBVElDX0FTU0VSVCgod2NoYXJfdCktMSA+ICh3Y2hhcl90KSAwKQogICAgICAgICAg ICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgpjb25maWd1cmU6MTA0NzM6NDQ6IG5vdGU6IGV4cGFuZGVkIGZyb206CiNkZWZp bmUgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlQoY29uZGl0aW9uKSBDT05GSUdVUkVfU1RBVElD X0FTU0VSVF9JTVBMKGNvbmRpdGlvbiwgX19MSU5FX18pCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZToxMDQ3NDo1NTogbm90ZTogZXhw YW5kZWQgZnJvbToKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMKGNvbmRp dGlvbiwgbGluZSkgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIoY29uZGl0aW9uLCBs aW5lKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCmNvbmZpZ3VyZToxMDQ3NTo5NDogbm90ZTogZXhwYW5kZWQgZnJvbToKI2RlZmlu ZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMMihjb25kaXRpb24sIGxpbmUpIHR5cGVk ZWYgaW50IHN0YXRpY19hc3NlcnRfbGluZV8jI2xpbmVbKGNvbmRpdGlvbikgPyAxIDogLTFd CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+ fn5+fn5+CjIgZXJyb3JzIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CiNsaW5lIDEwNDcwICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgojaW5j bHVkZSA8c3RkZGVmLmg+CiAgICAgICAgICAgICAgICAgICAgIAojZGVmaW5lIENPTkZJR1VS RV9TVEFUSUNfQVNTRVJUKGNvbmRpdGlvbikgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1Q TChjb25kaXRpb24sIF9fTElORV9fKQojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJU X0lNUEwoY29uZGl0aW9uLCBsaW5lKSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMMihj b25kaXRpb24sIGxpbmUpCiNkZWZpbmUgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIo Y29uZGl0aW9uLCBsaW5lKSB0eXBlZGVmIGludCBzdGF0aWNfYXNzZXJ0X2xpbmVfIyNsaW5l Wyhjb25kaXRpb24pID8gMSA6IC0xXQoKaW50IG1haW4oKSB7CkNPTkZJR1VSRV9TVEFUSUNf QVNTRVJUKHNpemVvZih3Y2hhcl90KSA9PSAyKTsKICAgICAgICAgICAgICAgICAgICAgQ09O RklHVVJFX1NUQVRJQ19BU1NFUlQoKHdjaGFyX3QpLTEgPiAod2NoYXJfdCkgMCkKOyByZXR1 cm4gMDsgfQpjb25maWd1cmU6MTA1Njc6IGNoZWNraW5nIGZvciB2aXNpYmlsaXR5KGhpZGRl bikgYXR0cmlidXRlCmNvbmZpZ3VyZToxMDU5NTogY2hlY2tpbmcgZm9yIHZpc2liaWxpdHko ZGVmYXVsdCkgYXR0cmlidXRlCmNvbmZpZ3VyZToxMDYyMzogY2hlY2tpbmcgZm9yIHZpc2li aWxpdHkgcHJhZ21hIHN1cHBvcnQKY29uZmlndXJlOjEwNjQ4OiBjaGVja2luZyBGb3IgZ2Nj IHZpc2liaWxpdHkgYnVnIHdpdGggY2xhc3MtbGV2ZWwgYXR0cmlidXRlcyAoR0NDIGJ1ZyAy NjkwNSkKY29uZmlndXJlOjEwNjc2OiBjaGVja2luZyBGb3IgeDg2XzY0IGdjYyB2aXNpYmls aXR5IGJ1ZyB3aXRoIGJ1aWx0aW5zIChHQ0MgYnVnIDIwMjk3KQpjb25maWd1cmU6MTA3MzE6 IGNoZWNraW5nIGZvciBnY2MgUFI0OTkxMQpjb25maWd1cmU6MTA3OTI6IC91c3IvYmluL2Ns YW5nKysgLW8gY29uZnRlc3QgLU8yIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3Iv bG9jYWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBh dGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5DICAxPiY1CmNvbmZp Z3VyZToxMDgyNTogY2hlY2tpbmcgZm9yIGdjYyBwcjM5NjA4CmNvbmZpZ3VyZToxMDg1NTog L3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5j dGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251 KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29u ZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZToxMDg1MToxOiB3YXJuaW5nOiBleHByZXNzaW9uIHJl c3VsdCB1bnVzZWQgWy1XdW51c2VkLXZhbHVlXQp0cnVlCl5+fn4KMSB3YXJuaW5nIGdlbmVy YXRlZC4KY29uZmlndXJlOjEwODgyOiBjaGVja2luZyBmb3IgbGx2bSBwcjg5MjcKY29uZmln dXJlOjEwOTIyOiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLVF1bnVzZWQtYXJn dW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliIC1X bCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNv bmZ0ZXN0LmMgIDE+JjUKY29uZmlndXJlOjEwOTU5OiBjaGVja2luZyBmb3IgX19mb3JjZV9h bGlnbl9hcmdfcG9pbnRlcl9fIGF0dHJpYnV0ZQpjb25maWd1cmU6MTA5NzE6IC91c3IvYmlu L2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5 OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rp b25zIC1mZGF0YS1zZWN0aW9ucyAtV2Vycm9yIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3Rl bS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjEwOTk4OiBj aGVja2luZyBmb3IgZGlyZW50LmggdGhhdCBkZWZpbmVzIERJUgpjb25maWd1cmU6MTEwMTE6 IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcg LXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0 aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0 ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTAzOTog Y2hlY2tpbmcgZm9yIG9wZW5kaXIgaW4gLWxkaXIKY29uZmlndXJlOjExMDU4OiAvdXNyL2Jp bi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5j dGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lz dGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4g LVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgLWxk aXIgICAxPiY1Ci91c3IvYmluL2xkOiBjYW5ub3QgZmluZCAtbGRpcgpjbGFuZzogZXJyb3I6 IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2Vl IGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMTA0 NyAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogT3ZlcnJpZGUgYW55IGdj YzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KLyogV2UgdXNl IGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2Nj MgogICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0 aWxsIGFwcGx5LiAgKi8KY2hhciBvcGVuZGlyKCk7CgppbnQgbWFpbigpIHsKb3BlbmRpcigp CjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjExMTMzOiBjaGVja2luZyBmb3Igc3lzL2J5dGVv cmRlci5oCmNvbmZpZ3VyZToxMTE0NjogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1P MyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1R dW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xv Y2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTE0MDoxMDogZmF0YWwg ZXJyb3I6ICdzeXMvYnl0ZW9yZGVyLmgnIGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxzeXMv Ynl0ZW9yZGVyLmg+CiAgICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTog ZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMTEzOCAiY29uZmlndXJlIgojaW5jbHVkZSAi Y29uZmRlZnMuaCIKCiNpbmNsdWRlIDxzeXMvYnl0ZW9yZGVyLmg+CmludCBtYWluKCkgewoK OyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTExMzM6IGNoZWNraW5nIGZvciBjb21wYXQuaApj b25maWd1cmU6MTExNDY6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1z dHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1h bGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1h cmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNs dWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTExNDA6MTA6IGZhdGFsIGVycm9yOiAn Y29tcGF0LmgnIGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxjb21wYXQuaD4KICAgICAgICAg XgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNs aW5lIDExMTM4ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoKI2luY2x1ZGUg PGNvbXBhdC5oPgppbnQgbWFpbigpIHsKCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjExMTMz OiBjaGVja2luZyBmb3IgZ2V0b3B0LmgKY29uZmlndXJlOjExMTMzOiBjaGVja2luZyBmb3Ig c3lzL2JpdHlwZXMuaApjb25maWd1cmU6MTExNDY6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAt cGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGlu ZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0 aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1J L3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTExNDA6MTA6 IGZhdGFsIGVycm9yOiAnc3lzL2JpdHlwZXMuaCcgZmlsZSBub3QgZm91bmQKI2luY2x1ZGUg PHN5cy9iaXR5cGVzLmg+CiAgICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3Vy ZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMTEzOCAiY29uZmlndXJlIgojaW5jbHVk ZSAiY29uZmRlZnMuaCIKCiNpbmNsdWRlIDxzeXMvYml0eXBlcy5oPgppbnQgbWFpbigpIHsK CjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjExMTMzOiBjaGVja2luZyBmb3IgbWVtb3J5LmgK Y29uZmlndXJlOjExMTMzOiBjaGVja2luZyBmb3IgdW5pc3RkLmgKY29uZmlndXJlOjExMTMz OiBjaGVja2luZyBmb3IgZ251L2xpYmMtdmVyc2lvbi5oCmNvbmZpZ3VyZToxMTE0NjogL3Vz ci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3Rk PWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24t c2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91 c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1 CmNvbmZpZ3VyZToxMTE0MDoxMDogZmF0YWwgZXJyb3I6ICdnbnUvbGliYy12ZXJzaW9uLmgn IGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxnbnUvbGliYy12ZXJzaW9uLmg+CiAgICAgICAg IF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgoj bGluZSAxMTEzOCAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKCiNpbmNsdWRl IDxnbnUvbGliYy12ZXJzaW9uLmg+CmludCBtYWluKCkgewoKOyByZXR1cm4gMDsgfQpjb25m aWd1cmU6MTExMzM6IGNoZWNraW5nIGZvciBubF90eXBlcy5oCmNvbmZpZ3VyZToxMTE0Njog L3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAt c3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rp b24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3Rl bS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAx PiY1CmNvbmZpZ3VyZToxMTEzMzogY2hlY2tpbmcgZm9yIG1hbGxvYy5oCmNvbmZpZ3VyZTox MTEzMzogY2hlY2tpbmcgZm9yIFgxMS9YS0JsaWIuaApjb25maWd1cmU6MTExNDY6IC91c3Iv YmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1n bnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNl Y3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNy L2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpj b25maWd1cmU6MTExMzM6IGNoZWNraW5nIGZvciBpby5oCmNvbmZpZ3VyZToxMTE0NjogL3Vz ci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3Rk PWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24t c2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91 c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1 CmNvbmZpZ3VyZToxMTE0MDoxMDogZmF0YWwgZXJyb3I6ICdpby5oJyBmaWxlIG5vdCBmb3Vu ZAojaW5jbHVkZSA8aW8uaD4KICAgICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmln dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExMTM4ICJjb25maWd1cmUiCiNpbmNs dWRlICJjb25mZGVmcy5oIgoKI2luY2x1ZGUgPGlvLmg+CmludCBtYWluKCkgewoKOyByZXR1 cm4gMDsgfQpjb25maWd1cmU6MTExMzM6IGNoZWNraW5nIGZvciBjcHVpZC5oCmNvbmZpZ3Vy ZToxMTE0NjogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1h bGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29u ZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTE0MDoxMDogZmF0YWwgZXJyb3I6ICdjcHVpZC5o JyBmaWxlIG5vdCBmb3VuZAojaW5jbHVkZSA8Y3B1aWQuaD4KICAgICAgICAgXgoxIGVycm9y IGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExMTM4 ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoKI2luY2x1ZGUgPGNwdWlkLmg+ CmludCBtYWluKCkgewoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTExODE6IGNoZWNraW5n IGZvciBzeXMvc3RhdHZmcy5oCmNvbmZpZ3VyZToxMTE4MTogY2hlY2tpbmcgZm9yIHN5cy9z dGF0ZnMuaApjb25maWd1cmU6MTExOTQ6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAt TzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5v LXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAt UXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9s b2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTExODg6MTA6IGZhdGFs IGVycm9yOiAnc3lzL3N0YXRmcy5oJyBmaWxlIG5vdCBmb3VuZAojaW5jbHVkZSA8c3lzL3N0 YXRmcy5oPgogICAgICAgICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6IGZhaWxl ZCBwcm9ncmFtIHdhczoKI2xpbmUgMTExODYgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZk ZWZzLmgiCgojaW5jbHVkZSA8c3lzL3N0YXRmcy5oPgppbnQgbWFpbigpIHsKCjsgcmV0dXJu IDA7IH0KY29uZmlndXJlOjExMTgxOiBjaGVja2luZyBmb3Igc3lzL3Zmcy5oCmNvbmZpZ3Vy ZToxMTE5NDogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1h bGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29u ZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTE4ODoxMDogZmF0YWwgZXJyb3I6ICdzeXMvdmZz LmgnIGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxzeXMvdmZzLmg+CiAgICAgICAgIF4KMSBl cnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAx MTE4NiAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKCiNpbmNsdWRlIDxzeXMv dmZzLmg+CmludCBtYWluKCkgewoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTExODE6IGNo ZWNraW5nIGZvciBzeXMvbW91bnQuaApjb25maWd1cmU6MTEyMjg6IGNoZWNraW5nIGZvciBz eXMvcXVvdGEuaApjb25maWd1cmU6MTEyNDE6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlw ZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAt Zm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9u cyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vz ci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTEyMzU6MTA6IGZh dGFsIGVycm9yOiAnc3lzL3F1b3RhLmgnIGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxzeXMv cXVvdGEuaD4KICAgICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWls ZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExMjMzICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25m ZGVmcy5oIgoKI2luY2x1ZGUgPHN5cy9xdW90YS5oPgppbnQgbWFpbigpIHsKCjsgcmV0dXJu IDA7IH0KY29uZmlndXJlOjExMjI4OiBjaGVja2luZyBmb3Igc3lzL3N5c21hY3Jvcy5oCmNv bmZpZ3VyZToxMTI0MTogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0 cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFs aWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFy Z3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1 ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTIzNToxMDogZmF0YWwgZXJyb3I6ICdz eXMvc3lzbWFjcm9zLmgnIGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxzeXMvc3lzbWFjcm9z Lmg+CiAgICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHBy b2dyYW0gd2FzOgojbGluZSAxMTIzMyAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMu aCIKCiNpbmNsdWRlIDxzeXMvc3lzbWFjcm9zLmg+CmludCBtYWluKCkgewoKOyByZXR1cm4g MDsgfQpjb25maWd1cmU6MTEyNzQ6IGNoZWNraW5nIGZvciBsaW51eC9xdW90YS5oCmNvbmZp Z3VyZToxMTI4NzogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmlj dC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3Vt ZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUg Y29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTI4MToxMDogZmF0YWwgZXJyb3I6ICdsaW51 eC9xdW90YS5oJyBmaWxlIG5vdCBmb3VuZAojaW5jbHVkZSA8bGludXgvcXVvdGEuaD4KICAg ICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CiNsaW5lIDExMjc5ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgojaW5j bHVkZSA8c3lzL3NvY2tldC5oPgojaW5jbHVkZSA8bGludXgvcXVvdGEuaD4KaW50IG1haW4o KSB7Cgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMTMyMTogY2hlY2tpbmcgZm9yIGxpbnV4 L2lmX2FkZHIuaApjb25maWd1cmU6MTEzMzQ6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlw ZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAt Zm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9u cyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vz ci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTEzMjg6MTA6IGZh dGFsIGVycm9yOiAnbGludXgvaWZfYWRkci5oJyBmaWxlIG5vdCBmb3VuZAojaW5jbHVkZSA8 bGludXgvaWZfYWRkci5oPgogICAgICAgICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1 cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTEzMjYgImNvbmZpZ3VyZSIKI2luY2x1 ZGUgImNvbmZkZWZzLmgiCiNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CiNpbmNsdWRlIDxsaW51 eC9pZl9hZGRyLmg+CmludCBtYWluKCkgewoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTEz MjE6IGNoZWNraW5nIGZvciBsaW51eC9ydG5ldGxpbmsuaApjb25maWd1cmU6MTEzMzQ6IC91 c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0 ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9u LXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0v dXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4m NQpjb25maWd1cmU6MTEzMjg6MTA6IGZhdGFsIGVycm9yOiAnbGludXgvcnRuZXRsaW5rLmgn IGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxsaW51eC9ydG5ldGxpbmsuaD4KICAgICAgICAg XgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNs aW5lIDExMzI2ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgojaW5jbHVkZSA8 c3lzL3NvY2tldC5oPgojaW5jbHVkZSA8bGludXgvcnRuZXRsaW5rLmg+CmludCBtYWluKCkg ewoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTEzNjg6IGNoZWNraW5nIGZvciBzeXMvdHlw ZXMuaApjb25maWd1cmU6MTEzNjg6IGNoZWNraW5nIGZvciBuZXRpbmV0L2luLmgKY29uZmln dXJlOjExMzY4OiBjaGVja2luZyBmb3IgYnl0ZXN3YXAuaApjb25maWd1cmU6MTE0MTI6IGNo ZWNraW5nIGZvciBzb2NrYWRkcl9pbi5zaW5fbGVuCmNvbmZpZ3VyZToxMTQyOTogL3Vzci9i aW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdu dTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2Vj dGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3Iv bG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNv bmZpZ3VyZToxMTQ2MDogY2hlY2tpbmcgZm9yIHNvY2thZGRyX2luNi5zaW42X2xlbgpjb25m aWd1cmU6MTE0Nzc6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlh c2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1 bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRl IGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTE1MDE6IGNoZWNraW5nIGZvciBzb2NrYWRk ci5zYV9sZW4KY29uZmlndXJlOjExNTE4OiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUg LU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZu by1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMg LVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3Iv bG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjExNTUxOiBjaGVja2lu ZyBmb3IgbmV3CmNvbmZpZ3VyZToxMTU2NDogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBp cGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmlj dC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlv bnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlz eXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0 LkMgMT4mNQpjb25maWd1cmU6MTE2NjM6IGNoZWNraW5nIGZvciBzeXMvY2RlZnMuaApjb25m aWd1cmU6MTE3Mjg6IGNoZWNraW5nIGZvciBsaW51eC9wZXJmX2V2ZW50LmgKY29uZmlndXJl OjExNzQxOiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFs aWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcg LWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgIC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29u ZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTczNToxMDogZmF0YWwgZXJyb3I6ICdsaW51eC9w ZXJmX2V2ZW50LmgnIGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxsaW51eC9wZXJmX2V2ZW50 Lmg+CiAgICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHBy b2dyYW0gd2FzOgojbGluZSAxMTczMyAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMu aCIKCiNpbmNsdWRlIDxsaW51eC9wZXJmX2V2ZW50Lmg+CmludCBtYWluKCkgewoKOyByZXR1 cm4gMDsgfQpjb25maWd1cmU6MTE4MDQ6IGNoZWNraW5nIGZvciBnZXRob3N0YnluYW1lX3Ig aW4gLWxjX3IKY29uZmlndXJlOjExODIzOiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAt TzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1p bmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEt c2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRl ICAtSS91c3IvbG9jYWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2lu IC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jIC1s Y19yICAgMT4mNQovdXNyL2Jpbi9sZDogY2Fubm90IGZpbmQgLWxjX3IKY2xhbmc6IGVycm9y OiBsaW5rZXIgY29tbWFuZCBmYWlsZWQgd2l0aCBleGl0IGNvZGUgMSAodXNlIC12IHRvIHNl ZSBpbnZvY2F0aW9uKQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTE4 MTIgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCi8qIE92ZXJyaWRlIGFueSBn Y2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdlIHVz ZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdj YzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBz dGlsbCBhcHBseS4gICovCmNoYXIgZ2V0aG9zdGJ5bmFtZV9yKCk7CgppbnQgbWFpbigpIHsK Z2V0aG9zdGJ5bmFtZV9yKCkKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTE4NjQ6IGNoZWNr aW5nIGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgZGxvcGVuCmNvbmZpZ3VyZToxMTg4MjogL3Vz ci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlh c2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1m ZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAt aXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXos bm9leGVjc3RhY2sgY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6MTE5MjI6IGNoZWNraW5n IGZvciBkbGZjbi5oCmNvbmZpZ3VyZToxMTk3MjogY2hlY2tpbmcgZm9yIGRsYWRkcgpjb25m aWd1cmU6MTIwMDA6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMg LWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0 cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtRF9H TlVfU09VUkNFIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVk ZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdp biAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAg MT4mNQpjb25maWd1cmU6MTE5NzI6IGNoZWNraW5nIGZvciBtZW1tZW0KY29uZmlndXJlOjEy MDAwOiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3Ry aWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxp YXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLURfR05VX1NPVVJD RSAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vz ci9sb2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1y cGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgIDE+JjUKY29u ZmlndXJlOjEyMTQ0OiBjaGVja2luZyBmb3Igc29ja2V0IGluIC1sc29ja2V0CmNvbmZpZ3Vy ZToxMjE2MzogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5v LXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2Vk LWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2lu Y2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9S SUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAtbHNvY2tldCAgIDE+JjUKL3Vz ci9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sc29ja2V0CmNsYW5nOiBlcnJvcjogbGlua2VyIGNv bW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEgKHVzZSAtdiB0byBzZWUgaW52b2NhdGlv bikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDEyMTUyICJjb25maWd1 cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5h bCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNh dXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWls dGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHku ICAqLwpjaGFyIHNvY2tldCgpOwoKaW50IG1haW4oKSB7CnNvY2tldCgpCjsgcmV0dXJuIDA7 IH0KY29uZmlndXJlOjEyMjE4OiBjaGVja2luZyBmb3IgWERyYXdMaW5lcyBpbiAtbFgxMQpj b25maWd1cmU6MTIyMzc6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAt TzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5v LXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAt UXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9s b2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliICAtTC91c3IvbG9jYWwvbGliIC1XbCwt eixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0 ZXN0LmMgLWxYMTEgLWxYMTEgICAxPiY1CmNvbmZpZ3VyZToxMjI1OTogY2hlY2tpbmcgZm9y IFhleHRBZGREaXNwbGF5IGluIC1sWGV4dApjb25maWd1cmU6MTIyNzg6IC91c3IvYmluL2Ns YW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0 ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9u LXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0v dXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwv bGliICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklH SU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgLWxYZXh0IC1sWDExICAgMT4mNQpj b25maWd1cmU6MTIzMDE6IGNoZWNraW5nIGZvciBYdEZyZWUgaW4gLWxYdApjb25maWd1cmU6 MTIzMjA6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1z dHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1h bGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1h cmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNs dWRlICAtTC91c3IvbG9jYWwvbGliICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4g LVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgLWxY dCAgIDE+JjUKY29uZmlndXJlOjEyNDc0OiBjaGVja2luZyBmb3IgWFNobUNyZWF0ZUltYWdl IGluIC1sWGV4dApjb25maWd1cmU6MTI0OTM6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0 IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5 LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0 YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1 ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliICAtTC91c3IvbG9j YWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhl Y3N0YWNrIGNvbmZ0ZXN0LmMgLWxYZXh0IC1sWDExICAtbFhleHQgIDE+JjUKY29uZmlndXJl OjEyNTE2OiBjaGVja2luZyBmb3IgWDExL2V4dGVuc2lvbnMvc2NybnNhdmVyLmgKY29uZmln dXJlOjEyNTI5OiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNp bmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1l bnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSBj b25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjEyNTQ0OiBjaGVja2luZyBmb3IgWFNjcmVlblNh dmVyUXVlcnlJbmZvIGluIC1sWHNzCmNvbmZpZ3VyZToxMjU2MzogL3Vzci9iaW4vY2xhbmcg LW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdu dTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2Vj dGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3Iv bG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIg IC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAt V2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAtbFhzcyAtbFhleHQgLWxYMTEgICAxPiY1 CmNvbmZpZ3VyZToxMjYxMzogY2hlY2tpbmcgZm9yIHB0aHJlYWRfY3JlYXRlIGluIC1scHRo cmVhZHMKL3Vzci9iaW4vY2xhbmcgLW8gZHVtbXkgZHVtbXkuYyAtTzIgLXBpcGUgLU8zIC1m bm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVz ZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwv aW5jbHVkZSAtbHB0aHJlYWRzICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVds LC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIApkdW1teS5jOjQ6Mzg6IHdh cm5pbmc6IGNvbnRyb2wgcmVhY2hlcyBlbmQgb2Ygbm9uLXZvaWQgZnVuY3Rpb24gWy1XcmV0 dXJuLXR5cGVdCiAgICB2b2lkICpmb28odm9pZCAqdikgeyBpbnQgYSA9IDE7ICB9IAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgoxIHdhcm5pbmcgZ2VuZXJhdGVk LgovdXNyL2Jpbi9sZDogY2Fubm90IGZpbmQgLWxwdGhyZWFkcwpjbGFuZzogZXJyb3I6IGxp bmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGlu dm9jYXRpb24pCmNvbmZpZ3VyZToxMjYzNjogY2hlY2tpbmcgZm9yIHB0aHJlYWRfY3JlYXRl IGluIC1scHRocmVhZAovdXNyL2Jpbi9jbGFuZyAtbyBkdW1teSBkdW1teS5jIC1PMiAtcGlw ZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAt Zm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9u cyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vz ci9sb2NhbC9pbmNsdWRlIC1scHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3Jp Z2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayAKZHVtbXkuYzo0 OjM4OiB3YXJuaW5nOiBjb250cm9sIHJlYWNoZXMgZW5kIG9mIG5vbi12b2lkIGZ1bmN0aW9u IFstV3JldHVybi10eXBlXQogICAgdm9pZCAqZm9vKHZvaWQgKnYpIHsgaW50IGEgPSAxOyAg fSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KMSB3YXJuaW5nIGdl bmVyYXRlZC4KY29uZmlndXJlOjEyNzQxOiBjaGVja2luZyB3aGV0aGVyIC91c3IvYmluL2Ns YW5nIGFjY2VwdHMgLXB0aHJlYWQKY29uZmlndXJlOjEyODY5OiBjaGVja2luZyB3aGV0aGVy IC91c3IvYmluL2NsYW5nIG5lZWRzIC10cmFkaXRpb25hbApjb25maWd1cmU6MTI4NzY6MTA6 IGZhdGFsIGVycm9yOiAnc2d0dHkuaCcgZmlsZSBub3QgZm91bmQKI2luY2x1ZGUgPHNndHR5 Lmg+CiAgICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZToxMjg5NDoxMDog ZmF0YWwgZXJyb3I6ICd0ZXJtaW8uaCcgZmlsZSBub3QgZm91bmQKI2luY2x1ZGUgPHRlcm1p by5oPgogICAgICAgICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6MTI5MTU6IGNo ZWNraW5nIGZvciA4LWJpdCBjbGVhbiBtZW1jbXAKY29uZmlndXJlOjEyOTMzOiAvdXNyL2Jp bi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5j dGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lz dGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAg LUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1X bCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxMjkyNToxOiB3 YXJuaW5nOiB0eXBlIHNwZWNpZmllciBtaXNzaW5nLCBkZWZhdWx0cyB0byAnaW50JyBbLVdp bXBsaWNpdC1pbnRdCm1haW4oKQpefn5+CmNvbmZpZ3VyZToxMjkyODozOiB3YXJuaW5nOiBp bXBsaWNpdGx5IGRlY2xhcmluZyBDIGxpYnJhcnkgZnVuY3Rpb24gJ2V4aXQnIHdpdGggdHlw ZSAndm9pZCAoaW50KSBfX2F0dHJpYnV0ZV9fKChub3JldHVybikpJwogIGV4aXQobWVtY21w KCZjMCwgJmMyLCAxKSA8IDAgJiYgbWVtY21wKCZjMSwgJmMyLCAxKSA8IDAgPyAwIDogMSk7 CiAgXgpjb25maWd1cmU6MTI5Mjg6Mzogbm90ZTogcGxlYXNlIGluY2x1ZGUgdGhlIGhlYWRl ciA8c3RkbGliLmg+IG9yIGV4cGxpY2l0bHkgcHJvdmlkZSBhIGRlY2xhcmF0aW9uIGZvciAn ZXhpdCcKY29uZmlndXJlOjEyOTI4Ojg6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9u IG9mIGZ1bmN0aW9uICdtZW1jbXAnIGlzIGludmFsaWQgaW4gQzk5IFstV2ltcGxpY2l0LWZ1 bmN0aW9uLWRlY2xhcmF0aW9uXQogIGV4aXQobWVtY21wKCZjMCwgJmMyLCAxKSA8IDAgJiYg bWVtY21wKCZjMSwgJmMyLCAxKSA8IDAgPyAwIDogMSk7CiAgICAgICBeCjMgd2FybmluZ3Mg Z2VuZXJhdGVkLgpjb25maWd1cmU6MTI5NTM6IGNoZWNraW5nIGZvciByYW5kb20KY29uZmln dXJlOjEyOTUzOiBjaGVja2luZyBmb3Igc3RyZXJyb3IKY29uZmlndXJlOjEyOTUzOiBjaGVj a2luZyBmb3IgbGNob3duCmNvbmZpZ3VyZToxMjk4MTogL3Vzci9iaW4vY2xhbmcgLW8gY29u ZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1m Z251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMg LWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwv aW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9s aWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3Rh Y2sgY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6MTI5NTM6IGNoZWNraW5nIGZvciBmY2ht b2QKY29uZmlndXJlOjEyOTUzOiBjaGVja2luZyBmb3Igc25wcmludGYKY29uZmlndXJlOjEy OTUzOiBjaGVja2luZyBmb3IgbWVtbW92ZQpjb25maWd1cmU6MTI5NTM6IGNoZWNraW5nIGZv ciByaW50CmNvbmZpZ3VyZToxMjk4MTogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8y IC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5s aW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNl Y3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAg LUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16 LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRl c3QuYyAgMT4mNQovdG1wL2NvbmZ0ZXN0LTdpa1c1aC5vOiBJbiBmdW5jdGlvbiBgbWFpbic6 CmNvbmZ0ZXN0LmM6KC50ZXh0Lm1haW4rMHg3KTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBg cmludCcKY2xhbmc6IGVycm9yOiBsaW5rZXIgY29tbWFuZCBmYWlsZWQgd2l0aCBleGl0IGNv ZGUgMSAodXNlIC12IHRvIHNlZSBpbnZvY2F0aW9uKQpjb25maWd1cmU6IGZhaWxlZCBwcm9n cmFtIHdhczoKI2xpbmUgMTI5NTggImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgi Ci8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxs eSBmZXcgcHJvdG90eXBlcywKICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgcmlu dCgpOyBiZWxvdy4gICovCiNpbmNsdWRlIDxhc3NlcnQuaD4KLyogT3ZlcnJpZGUgYW55IGdj YzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KLyogV2UgdXNl IGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2Nj MgogICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0 aWxsIGFwcGx5LiAgKi8KY2hhciByaW50KCk7CgppbnQgbWFpbigpIHsKCi8qIFRoZSBHTlUg QyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVu dHMKICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJl IGFjdHVhbGx5IG5hbWVkCiAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhl IG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KI2lmIGRlZmluZWQgKF9fc3R1Yl9yaW50 KSB8fCBkZWZpbmVkIChfX3N0dWJfX19yaW50KQpjaG9rZSBtZQojZWxzZQpyaW50KCk7CiNl bmRpZgoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTI5NTM6IGNoZWNraW5nIGZvciBzdGF0 NjQKY29uZmlndXJlOjEyOTgxOiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBp cGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUg LWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlv bnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91 c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3Jp Z2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5j ICAxPiY1Ci90bXAvY29uZnRlc3QtaXBXaUNBLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29u ZnRlc3QuYzooLnRleHQubWFpbisweDcpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBzdGF0 NjQnCmNsYW5nOiBlcnJvcjogbGlua2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2Rl IDEgKHVzZSAtdiB0byBzZWUgaW52b2NhdGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh bSB3YXM6CiNsaW5lIDEyOTU4ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgov KiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkg ZmV3IHByb3RvdHlwZXMsCiAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHN0YXQ2 NCgpOyBiZWxvdy4gICovCiNpbmNsdWRlIDxhc3NlcnQuaD4KLyogT3ZlcnJpZGUgYW55IGdj YzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KLyogV2UgdXNl IGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2Nj MgogICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0 aWxsIGFwcGx5LiAgKi8KY2hhciBzdGF0NjQoKTsKCmludCBtYWluKCkgewoKLyogVGhlIEdO VSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVt ZW50cwogICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBh cmUgYWN0dWFsbHkgbmFtZWQKICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0 aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwojaWYgZGVmaW5lZCAoX19zdHViX3N0 YXQ2NCkgfHwgZGVmaW5lZCAoX19zdHViX19fc3RhdDY0KQpjaG9rZSBtZQojZWxzZQpzdGF0 NjQoKTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMjk1MzogY2hlY2tpbmcg Zm9yIGxzdGF0NjQKY29uZmlndXJlOjEyOTgxOiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVz dCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4 OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRh dGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNs dWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAt V2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBj b25mdGVzdC5jICAxPiY1Ci90bXAvY29uZnRlc3QtSXpnNmxOLm86IEluIGZ1bmN0aW9uIGBt YWluJzoKY29uZnRlc3QuYzooLnRleHQubWFpbisweDcpOiB1bmRlZmluZWQgcmVmZXJlbmNl IHRvIGBsc3RhdDY0JwpjbGFuZzogZXJyb3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRo IGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFp bGVkIHByb2dyYW0gd2FzOgojbGluZSAxMjk1OCAiY29uZmlndXJlIgojaW5jbHVkZSAiY29u ZmRlZnMuaCIKLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQg aG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAogICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGgg Y2hhciBsc3RhdDY0KCk7IGJlbG93LiAgKi8KI2luY2x1ZGUgPGFzc2VydC5oPgovKiBPdmVy cmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAq LwovKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5 cGUgb2YgYSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5 cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpjaGFyIGxzdGF0NjQoKTsKCmludCBtYWluKCkg ewoKLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hp Y2ggaXQgaW1wbGVtZW50cwogICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21l IGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKICAgIHNvbWV0aGluZyBzdGFydGluZyB3 aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwojaWYgZGVmaW5l ZCAoX19zdHViX2xzdGF0NjQpIHx8IGRlZmluZWQgKF9fc3R1Yl9fX2xzdGF0NjQpCmNob2tl IG1lCiNlbHNlCmxzdGF0NjQoKTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTox Mjk1MzogY2hlY2tpbmcgZm9yIHRydW5jYXRlNjQKY29uZmlndXJlOjEyOTgxOiAvdXNyL2Jp bi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5j dGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lz dGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAg LUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1X bCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1Ci90bXAvY29uZnRlc3QtTU4xS012 Lm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuYzooLnRleHQubWFpbisweDcpOiB1 bmRlZmluZWQgcmVmZXJlbmNlIHRvIGB0cnVuY2F0ZTY0JwpjbGFuZzogZXJyb3I6IGxpbmtl ciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGludm9j YXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMjk1OCAiY29u ZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogU3lzdGVtIGhlYWRlciB0byBkZWZp bmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAogICAgd2hp Y2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciB0cnVuY2F0ZTY0KCk7IGJlbG93LiAgKi8KI2lu Y2x1ZGUgPGFzc2VydC5oPgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5 cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBt aWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWlsdGluIGFuZCB0 aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpjaGFy IHRydW5jYXRlNjQoKTsKCmludCBtYWluKCkgewoKLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVm aW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwogICAgdG8gYWx3 YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFt ZWQKICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUg aXMgYW4gYWxpYXMuICAqLwojaWYgZGVmaW5lZCAoX19zdHViX3RydW5jYXRlNjQpIHx8IGRl ZmluZWQgKF9fc3R1Yl9fX3RydW5jYXRlNjQpCmNob2tlIG1lCiNlbHNlCnRydW5jYXRlNjQo KTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMjk1MzogY2hlY2tpbmcgZm9y IHNldGJ1Zgpjb25maWd1cmU6MTI5ODE6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1P MiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlu bGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1z ZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUg IC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwt eixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0 ZXN0LmMgIDE+JjUKY29uZmlndXJlOjEyOTUzOiBjaGVja2luZyBmb3IgaXNhdHR5CmNvbmZp Z3VyZToxMjk4MTogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAt Zm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3Ry aWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51 c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2Fs L2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2ws LXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAgMT4mNQpj b25maWd1cmU6MTMwMTE6IGNoZWNraW5nIGZvciBzdGF0dmZzNjQKY29uZmlndXJlOjEzMDM5 OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNp bmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1l bnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAt cHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQk T1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1Ci90bXAvY29uZnRl c3QtMDkwakNzLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuYzooLnRleHQubWFp bisweDcpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBzdGF0dmZzNjQnCmNsYW5nOiBlcnJv cjogbGlua2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEgKHVzZSAtdiB0byBz ZWUgaW52b2NhdGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDEz MDE2ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBTeXN0ZW0gaGVhZGVy IHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMs CiAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHN0YXR2ZnM2NCgpOyBiZWxvdy4g ICovCiNpbmNsdWRlIDxhc3NlcnQuaD4KLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwg cHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KLyogV2UgdXNlIGNoYXIgYmVjYXVz ZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgogICAgYnVpbHRp biBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAg Ki8KY2hhciBzdGF0dmZzNjQoKTsKCmludCBtYWluKCkgewoKLyogVGhlIEdOVSBDIGxpYnJh cnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwogICAg dG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFs bHkgbmFtZWQKICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFs IG5hbWUgaXMgYW4gYWxpYXMuICAqLwojaWYgZGVmaW5lZCAoX19zdHViX3N0YXR2ZnM2NCkg fHwgZGVmaW5lZCAoX19zdHViX19fc3RhdHZmczY0KQpjaG9rZSBtZQojZWxzZQpzdGF0dmZz NjQoKTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMzAxMTogY2hlY2tpbmcg Zm9yIHN0YXR2ZnMKY29uZmlndXJlOjEzMDExOiBjaGVja2luZyBmb3Igc3RhdGZzNjQKY29u ZmlndXJlOjEzMDM5OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8z IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1z dHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1 bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9j YWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1X bCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1 Ci90bXAvY29uZnRlc3QtbUxXcFpLLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3Qu YzooLnRleHQubWFpbisweDcpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBzdGF0ZnM2NCcK Y2xhbmc6IGVycm9yOiBsaW5rZXIgY29tbWFuZCBmYWlsZWQgd2l0aCBleGl0IGNvZGUgMSAo dXNlIC12IHRvIHNlZSBpbnZvY2F0aW9uKQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKI2xpbmUgMTMwMTYgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCi8qIFN5 c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcg cHJvdG90eXBlcywKICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgc3RhdGZzNjQo KTsgYmVsb3cuICAqLwojaW5jbHVkZSA8YXNzZXJ0Lmg+Ci8qIE92ZXJyaWRlIGFueSBnY2My IGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdlIHVzZSBj aGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIK ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGls bCBhcHBseS4gICovCmNoYXIgc3RhdGZzNjQoKTsKCmludCBtYWluKCkgewoKLyogVGhlIEdO VSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVt ZW50cwogICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBh cmUgYWN0dWFsbHkgbmFtZWQKICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0 aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwojaWYgZGVmaW5lZCAoX19zdHViX3N0 YXRmczY0KSB8fCBkZWZpbmVkIChfX3N0dWJfX19zdGF0ZnM2NCkKY2hva2UgbWUKI2Vsc2UK c3RhdGZzNjQoKTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMzAxMTogY2hl Y2tpbmcgZm9yIHN0YXRmcwpjb25maWd1cmU6MTMwNjk6IGNoZWNraW5nIGZvciBmbG9ja2Zp bGUKY29uZmlndXJlOjEzMDk3OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBp cGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUg LWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlv bnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91 c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3Jp Z2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5j ICAxPiY1CmNvbmZpZ3VyZToxMzA2OTogY2hlY2tpbmcgZm9yIGdldHBhZ2VzaXplCmNvbmZp Z3VyZToxMzEyNzogY2hlY2tpbmcgZm9yIGxvY2FsdGltZV9yCmNvbmZpZ3VyZToxMzE1NTog L3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1h bGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0 aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9S SUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6MTMx Mjc6IGNoZWNraW5nIGZvciBzdHJ0b2tfcgpjb25maWd1cmU6MTMxNTU6IC91c3IvYmluL2Ns YW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0 ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9u LXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0v dXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91 c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16 LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgIDE+JjUKY29uZmlndXJlOjEzMTg0OiBjaGVja2lu ZyBmb3IgY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMpCmNvbmZpZ3VyZToxMzIwMDog L3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1h bGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0 aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9S SUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAgIDE+JjUKY29uZmlndXJlOjEz MjQxOiBjaGVja2luZyBmb3Igd2NydG9tYgpjb25maWd1cmU6MTMyNTM6IC91c3IvYmluL2Ns YW5nKysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAt Zm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rp b24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsr MHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91 c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3Jp Z2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5D ICAxPiY1CmNvbmZpZ3VyZToxMzI3NjogY2hlY2tpbmcgZm9yIG1icnRvd2MKY29uZmlndXJl OjEzMjg4OiAvdXNyL2Jpbi9jbGFuZysrIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZu by1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4 Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3Iv bG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9s b2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9l eGVjc3RhY2sgY29uZnRlc3QuQyAgMT4mNQpjb25maWd1cmU6MTMzMjA6IGNoZWNraW5nIGZv ciByZXNfbmluaXQoKQpjb25maWd1cmU6MTMzNDI6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0 ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdu dTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1m ZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2lu Y2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGli IC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNr IGNvbmZ0ZXN0LmMgIDE+JjUKY29uZmlndXJlOjEzMzc3OiBjaGVja2luZyBmb3IgZ251X2dl dF9saWJjX3ZlcnNpb24oKQpjb25maWd1cmU6MTMzOTM6IC91c3IvYmluL2NsYW5nKysgLW8g Y29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2Vw dGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlv bnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVz ZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwv aW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwt cnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5DICAxPiY1CmNv bmZpZ3VyZToxMzM4OToyOTogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIg J2dudV9nZXRfbGliY192ZXJzaW9uJwpjb25zdCBjaGFyICpnbGliY192ZXJzaW9uID0gZ251 X2dldF9saWJjX3ZlcnNpb24oKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KMSBl cnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAx MzM4MiAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKCiAgICAgICAgI2lmZGVm IEhBVkVfR05VX0xJQkNfVkVSU0lPTl9ICiAgICAgICAgI2luY2x1ZGUgPGdudS9saWJjLXZl cnNpb24uaD4KICAgICAgICAjZW5kaWYKICAgICAgICAKaW50IG1haW4oKSB7CmNvbnN0IGNo YXIgKmdsaWJjX3ZlcnNpb24gPSBnbnVfZ2V0X2xpYmNfdmVyc2lvbigpOwo7IHJldHVybiAw OyB9CmNvbmZpZ3VyZToxMzQyNTogY2hlY2tpbmcgZm9yIGljb252IGluIC1sYwpjb25maWd1 cmU6MTM0NDc6IC91c3IvYmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAt Zm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNp bmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8t ZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vz ci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNy L2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixu b2V4ZWNzdGFjayBjb25mdGVzdC5DIC1sYyAgIDE+JjUKL3RtcC9jb25mdGVzdC00VThFbmgu bzogSW4gZnVuY3Rpb24gYG1haW4nOgpjb25mdGVzdC5DOigudGV4dC5tYWluKzB4Nyk6IHVu ZGVmaW5lZCByZWZlcmVuY2UgdG8gYGljb252JwpjbGFuZysrOiBlcnJvcjogbGlua2VyIGNv bW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEgKHVzZSAtdiB0byBzZWUgaW52b2NhdGlv bikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDEzNDMzICJjb25maWd1 cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5h bCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwojaWZkZWYgX19jcGx1c3BsdXMK ZXh0ZXJuICJDIgojZW5kaWYKLyogV2UgdXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0 Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgogICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMg YXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KY2hhciBpY29udigp OwoKaW50IG1haW4oKSB7Cmljb252KCkKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTM0NjY6 IGNoZWNraW5nIGZvciBpY29udiBpbiAtbGljb252CmNvbmZpZ3VyZToxMzQ4ODogL3Vzci9i aW4vY2xhbmcrKyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZm dW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9 Z251KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUg IC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwt eixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0 ZXN0LkMgLWxpY29udiAgIDE+JjUKY29uZmlndXJlOjEzNTU2OiBjaGVja2luZyBmb3IgaWNv bnYoKQpjb25maWd1cmU6MTM1NzU6IC91c3IvYmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8y IC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1z dHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNl Y3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRz IC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRo cmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJ R0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5DICAgLWxpY29udiAxPiY1CmNvbmZp Z3VyZToxMzYwMjogY2hlY2tpbmcgZm9yIGljb252KCkgd2l0aCBjb25zdCBpbnB1dApjb25m aWd1cmU6MTM2MjI6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0 cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZu by1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0 aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2Nh bC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmln dXJlOjEzNjU0OiBjaGVja2luZyBmb3IgbmxfbGFuZ2luZm8gYW5kIENPREVTRVQKY29uZmln dXJlOjEzNjY2OiAvdXNyL2Jpbi9jbGFuZysrIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMg LWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5v LWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91 c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXos bm9leGVjc3RhY2sgY29uZnRlc3QuQyAgMT4mNQpjb25maWd1cmU6MTM3MDE6IGNoZWNraW5n IGZvciBhbiBpbXBsZW1lbnRhdGlvbiBvZiB2YV9jb3B5KCkKY29uZmlndXJlOjEzNzI1OiAv dXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFs aWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcg LWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRz IC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRo cmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJ R0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxMzcx OToxNzogd2FybmluZzogaW1wbGljaXRseSBkZWNsYXJpbmcgQyBsaWJyYXJ5IGZ1bmN0aW9u ICdleGl0JyB3aXRoIHR5cGUgJ3ZvaWQgKGludCkgX19hdHRyaWJ1dGVfXygobm9yZXR1cm4p KScKICAgICAgICAgICAgICAgIGV4aXQgKDEpOwogICAgICAgICAgICAgICAgXgpjb25maWd1 cmU6MTM3MTk6MTc6IG5vdGU6IHBsZWFzZSBpbmNsdWRlIHRoZSBoZWFkZXIgPHN0ZGxpYi5o PiBvciBleHBsaWNpdGx5IHByb3ZpZGUgYSBkZWNsYXJhdGlvbiBmb3IgJ2V4aXQnCjEgd2Fy bmluZyBnZW5lcmF0ZWQuCmNvbmZpZ3VyZToxMzc0MjogY2hlY2tpbmcgZm9yIGFuIGltcGxl bWVudGF0aW9uIG9mIF9fdmFfY29weSgpCmNvbmZpZ3VyZToxMzc2NjogL3Vzci9iaW4vY2xh bmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3Rk PWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24t c2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91 c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXos bm9leGVjc3RhY2sgY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6MTM3NTg6MTM6IHdhcm5p bmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdfX3ZhX2NvcHknIGlzIGlu dmFsaWQgaW4gQzk5IFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAg ICAgICBfX3ZhX2NvcHkgKGFyZ3MyLCBhcmdzMSk7CiAgICAgICAgICAgIF4KY29uZmlndXJl OjEzNzYwOjE3OiB3YXJuaW5nOiBpbXBsaWNpdGx5IGRlY2xhcmluZyBDIGxpYnJhcnkgZnVu Y3Rpb24gJ2V4aXQnIHdpdGggdHlwZSAndm9pZCAoaW50KSBfX2F0dHJpYnV0ZV9fKChub3Jl dHVybikpJwogICAgICAgICAgICAgICAgZXhpdCAoMSk7CiAgICAgICAgICAgICAgICBeCmNv bmZpZ3VyZToxMzc2MDoxNzogbm90ZTogcGxlYXNlIGluY2x1ZGUgdGhlIGhlYWRlciA8c3Rk bGliLmg+IG9yIGV4cGxpY2l0bHkgcHJvdmlkZSBhIGRlY2xhcmF0aW9uIGZvciAnZXhpdCcK MiB3YXJuaW5ncyBnZW5lcmF0ZWQuCi90bXAvY29uZnRlc3QtYm5wRURkLm86IEluIGZ1bmN0 aW9uIGBmJzoKY29uZnRlc3QuYzooLnRleHQuZisweDE3KTogdW5kZWZpbmVkIHJlZmVyZW5j ZSB0byBgX192YV9jb3B5JwpjbGFuZzogZXJyb3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3 aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGludm9jYXRpb24pCmNvbmZpZ3VyZTog ZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMzc1MiAiY29uZmlndXJlIgojaW5jbHVkZSAi Y29uZmRlZnMuaCIKCiAgICAgICAgI2luY2x1ZGUgPHN0ZGFyZy5oPgogICAgICAgIHZvaWQg ZiAoaW50IGksIC4uLikgewogICAgICAgICAgICB2YV9saXN0IGFyZ3MxLCBhcmdzMjsKICAg ICAgICAgICAgdmFfc3RhcnQgKGFyZ3MxLCBpKTsKICAgICAgICAgICAgX192YV9jb3B5IChh cmdzMiwgYXJnczEpOwogICAgICAgICAgICBpZiAodmFfYXJnIChhcmdzMiwgaW50KSAhPSA0 MiB8fCB2YV9hcmcgKGFyZ3MxLCBpbnQpICE9IDQyKQogICAgICAgICAgICAgICAgZXhpdCAo MSk7CiAgICAgICAgICAgIHZhX2VuZCAoYXJnczEpOyB2YV9lbmQgKGFyZ3MyKTsKICAgICAg ICB9CiAgICAgICAgaW50IG1haW4oKSB7IGYgKDAsIDQyKTsgcmV0dXJuIDA7IH0KY29uZmln dXJlOjEzNzgzOiBjaGVja2luZyB3aGV0aGVyIHZhX2xpc3RzIGNhbiBiZSBjb3BpZWQgYnkg dmFsdWUKY29uZmlndXJlOjEzODA3OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIg LXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxp bmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2Vj dGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAt SS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXos b3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVz dC5jICAxPiY1CmNvbmZpZ3VyZToxMzgwMToxNzogd2FybmluZzogaW1wbGljaXRseSBkZWNs YXJpbmcgQyBsaWJyYXJ5IGZ1bmN0aW9uICdleGl0JyB3aXRoIHR5cGUgJ3ZvaWQgKGludCkg X19hdHRyaWJ1dGVfXygobm9yZXR1cm4pKScKICAgICAgICAgICAgICAgIGV4aXQgKDEpOwog ICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MTM4MDE6MTc6IG5vdGU6IHBsZWFzZSBpbmNs dWRlIHRoZSBoZWFkZXIgPHN0ZGxpYi5oPiBvciBleHBsaWNpdGx5IHByb3ZpZGUgYSBkZWNs YXJhdGlvbiBmb3IgJ2V4aXQnCjEgd2FybmluZyBnZW5lcmF0ZWQuCmNvbmZpZ3VyZToxMzky MDogY2hlY2tpbmcgd2hldGhlciB0aGUgQysrICJ1c2luZyIga2V5d29yZCByZXNvbHZlcyBh bWJpZ3VpdHkKY29uZmlndXJlOjEzOTQxOiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlw ZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9u cyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5 c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3Qu QyAxPiY1CmNvbmZpZ3VyZToxMzk2NTogY2hlY2tpbmcgZm9yIEMrKyBkeW5hbWljX2Nhc3Qg dG8gdm9pZCoKY29uZmlndXJlOjEzOTkyOiAvdXNyL2Jpbi9jbGFuZysrIC1vIGNvbmZ0ZXN0 IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1m bm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0 YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3Vt ZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUg LXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwk JE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuQyAgMT4mNQpjb25maWd1cmU6 MTQwMTk6IGNoZWNraW5nIHdoZXRoZXIgQysrIHJlcXVpcmVzIGltcGxlbWVudGF0aW9uIG9m IHVudXNlZCB2aXJ0dWFsIG1ldGhvZHMKY29uZmlndXJlOjE0MDMxOiAvdXNyL2Jpbi9jbGFu ZysrIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZu by1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9u LXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4 IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNy L2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdp biAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuQyAg MT4mNQpjb25maWd1cmU6MTQwNTc6IGNoZWNraW5nIGZvciB0cm91YmxlIGNvbXBhcmluZyB0 byB6ZXJvIG5lYXIgc3RkOjpvcGVyYXRvciE9KCkKY29uZmlndXJlOjE0MDczOiAvdXNyL2Jp bi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1l eGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNl Y3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1R dW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xv Y2FsL2luY2x1ZGUgY29uZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZToxNDEwMzogY2hlY2tpbmcg Zm9yIF9fdGhyZWFkIGtleXdvcmQgZm9yIFRMUyB2YXJpYWJsZXMKY29uZmlndXJlOjE0MjAx OiBjaGVja2luZyBmb3IgbWFsbG9jLmgKY29uZmlndXJlOjE0MjAxOiBjaGVja2luZyBmb3Ig bWFsbG9jX25wLmgKY29uZmlndXJlOjE0MjE0OiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAt cGlwZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3Ry aWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0 aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAt aXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRl c3QuQyAxPiY1CmNvbmZpZ3VyZToxNDI1MDogY2hlY2tpbmcgZm9yIHN0cm5kdXAKY29uZmln dXJlOjE0MjUwOiBjaGVja2luZyBmb3IgcG9zaXhfbWVtYWxpZ24KY29uZmlndXJlOjE0Mjgx OiAvdXNyL2Jpbi9jbGFuZysrIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtTzMgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8t cnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlv bnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwv aW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9s aWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3Rh Y2sgY29uZnRlc3QuQyAgMT4mNQpjb25maWd1cmU6MTQyNTA6IGNoZWNraW5nIGZvciBtZW1h bGlnbgpjb25maWd1cmU6MTQyODE6IC91c3IvYmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8y IC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1z dHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNl Y3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRz IC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRo cmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJ R0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5DICAxPiY1Ci90bXAvY29uZnRlc3Qt ZGRxWm9FLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuQzooLnRleHQubWFpbisw eDcpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBtZW1hbGlnbicKY2xhbmcrKzogZXJyb3I6 IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2Vl IGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxNDI1 NSAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogU3lzdGVtIGhlYWRlciB0 byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAog ICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBtZW1hbGlnbigpOyBiZWxvdy4gICov CiNpbmNsdWRlIDxhc3NlcnQuaD4KLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJv dG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KI2lmZGVmIF9fY3BsdXNwbHVzCmV4dGVy biAiQyIKI2VuZGlmCi8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRo ZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3Vt ZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCmNoYXIgbWVtYWxpZ24oKTsK CmludCBtYWluKCkgewoKLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBm dW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwogICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBF Tk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKICAgIHNvbWV0aGlu ZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAq LwojaWYgZGVmaW5lZCAoX19zdHViX21lbWFsaWduKSB8fCBkZWZpbmVkIChfX3N0dWJfX19t ZW1hbGlnbikKY2hva2UgbWUKI2Vsc2UKbWVtYWxpZ24oKTsKI2VuZGlmCgo7IHJldHVybiAw OyB9CmNvbmZpZ3VyZToxNDI1MDogY2hlY2tpbmcgZm9yIHZhbGxvYwpjb25maWd1cmU6MTQy ODE6IC91c3IvYmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0 cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZu by1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0 aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2Nh bC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2Fs L2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNz dGFjayBjb25mdGVzdC5DICAxPiY1CmNvbmZpZ3VyZToxNDMxMjogY2hlY2tpbmcgZm9yIG1h bGxvY191c2FibGVfc2l6ZQpjb25maWd1cmU6MTQzNDM6IC91c3IvYmluL2NsYW5nKysgLW8g Y29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2Vw dGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlv bnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVz ZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwv aW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwt cnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5DICAxPiY1CmNv bmZpZ3VyZToxNDM3MzogY2hlY2tpbmcgZm9yIF9fYXR0cmlidXRlX18oKGFsd2F5c19pbmxp bmUpKQpjb25maWd1cmU6MTQzODU6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBlIC1P MyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxp YXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1m bm8tZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVt L3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+ JjUKY29uZmlndXJlOjE0NDAwOiBjaGVja2luZyBmb3IgX19hdHRyaWJ1dGVfXygobWFsbG9j KSkKY29uZmlndXJlOjE0NDEyOiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtTzMg LWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5v LWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91 c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuQyAxPiY1 CmNvbmZpZ3VyZToxNDQyNzogY2hlY2tpbmcgZm9yIF9fYXR0cmlidXRlX18oKHdhcm5fdW51 c2VkX3Jlc3VsdCkpCmNvbmZpZ3VyZToxNDQzOTogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIg LXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0 cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2Vj dGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1hcmd1bWVudHMg LWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0 ZXN0LkMgMT4mNQpjb25maWd1cmU6MTQ0NjM6IGNoZWNraW5nIGZvciBMQ19NRVNTQUdFUwpj b25maWd1cmU6MTQ0NzU6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1z dHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1h bGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1h cmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNs dWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTQ1MDE6IGNoZWNraW5nIGZvciBsb2Nh bGVjb252CmNvbmZpZ3VyZToxNDUyOTogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8y IC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5s aW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNl Y3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAg LUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16 LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRl c3QuYyAgMT4mNQpjb25maWd1cmU6MTQ3MTg6IGNoZWNraW5nIGZvciBuc3ByLWNvbmZpZwpj b25maWd1cmU6MTQ3NTM6IGNoZWNraW5nIGZvciBOU1BSIC0gdmVyc2lvbiA+PSA0LjkuNgpj b25maWd1cmU6MTQ4MjE6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtTzMgLWZuby1z dHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1h bGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtSS91c3IvbG9j YWwvaW5jbHVkZS9uc3ByIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwv aW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3Vy ZToxNDg0MTogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1h bGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1JL3Vzci9sb2NhbC9pbmNs dWRlL25zcHIgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRl ICAtSS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjE0OTY2 OiBjaGVja2luZyBmb3IgbGliZXZlbnQKY29uZmlndXJlOjE0OTczOiBjaGVja2luZyBNT1pf TElCRVZFTlRfQ0ZMQUdTCmNvbmZpZ3VyZToxNDk3ODogY2hlY2tpbmcgTU9aX0xJQkVWRU5U X0xJQlMKY29uZmlndXJlOjE1MTUzOiBjaGVja2luZyBmb3IgbnNzLWNvbmZpZwpjb25maWd1 cmU6MTUxODg6IGNoZWNraW5nIGZvciBOU1MgLSB2ZXJzaW9uID49IDMuMTUKY29uZmlndXJl OjE1MjU1OiBjaGVja2luZyBmb3IgWUFTTSBhc3NlbWJsZXIKY29uZmlndXJlOjE1MjYxOiBj aGVja2luZyBmb3IgeWFzbQpjb25maWd1cmU6MTUzMTk6IGNoZWNraW5nIGZvciBqcGVnX2Rl c3Ryb3lfY29tcHJlc3MgaW4gLWxqcGVnCmNvbmZpZ3VyZToxNTMzODogL3Vzci9iaW4vY2xh bmcgLW8gY29uZnRlc3QgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLU8yIC1waXBlIC1PMyAtZm5v LXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2Vk LWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2lu Y2x1ZGUgLUwvdXNyL2xvY2FsL2xpYiAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2ws LXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25m dGVzdC5jIC1sanBlZyAgIDE+JjUKY29uZmlndXJlOjE1Mzc0OiAvdXNyL2Jpbi9jbGFuZyAt YyAtSS91c3IvbG9jYWwvaW5jbHVkZSAtTzIgLXBpcGUgLU8zIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZm dW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1p c3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVz dC5jIDE+JjUKY29uZmlndXJlOjE1NDIxOiBjaGVja2luZyBmb3IgZ3pyZWFkIGluIC1segpj b25maWd1cmU6MTU0NDA6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAt TzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5v LXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAt UXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9s b2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4g LVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgLWx6 ICAgMT4mNQpjb25maWd1cmU6MTU0NzU6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAt TzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5v LXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAt UXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9s b2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTU1MjY6IGNoZWNraW5n IGZvciBCWjJfYnpyZWFkIGluIC1sYnoyCmNvbmZpZ3VyZToxNTU0NTogL3Vzci9iaW4vY2xh bmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1PMyAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3Rk PWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24t c2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91 c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXos bm9leGVjc3RhY2sgY29uZnRlc3QuYyAtbGJ6MiAgIDE+JjUKY29uZmlndXJlOjE1NTk0OiBj aGVja2luZyBmb3IgcG5nX2dldF92YWxpZCBpbiAtbHBuZwpjb25maWd1cmU6MTU2MTM6IC91 c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1PMiAtcGlw ZSAtTzMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAt Zm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9u cyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vz ci9sb2NhbC9pbmNsdWRlIC1ML3Vzci9sb2NhbC9saWIgLXB0aHJlYWQgIC1ML3Vzci9sb2Nh bC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVj c3RhY2sgY29uZnRlc3QuYyAtbHBuZyAgIDE+JjUKY29uZmlndXJlOjE1NjM1OiBjaGVja2lu ZyBmb3IgcG5nX2dldF9hY1RMIGluIC1scG5nCmNvbmZpZ3VyZToxNTY1NDogL3Vzci9iaW4v Y2xhbmcgLW8gY29uZnRlc3QgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLU8yIC1waXBlIC1PMyAt Zm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3Ry aWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51 c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2Fs L2luY2x1ZGUgLUwvdXNyL2xvY2FsL2xpYiAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAt V2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBj b25mdGVzdC5jIC1scG5nICAgMT4mNQpjb25maWd1cmU6MTU3MDI6IC91c3IvYmluL2NsYW5n IC1jIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1PMiAtcGlwZSAtTzMgLWZuby1zdHJpY3QtYWxp YXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAt ZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMg LWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0 ZXN0LmMgMT4mNQpjb25maWd1cmU6MTU3ODg6IGNoZWNraW5nIGZvciBodW5zcGVsbApjb25m aWd1cmU6MTU3OTU6IGNoZWNraW5nIE1PWl9IVU5TUEVMTF9DRkxBR1MKY29uZmlndXJlOjE1 ODAwOiBjaGVja2luZyBNT1pfSFVOU1BFTExfTElCUwpjb25maWd1cmU6MTU5OTI6IGNoZWNr aW5nIGZvciBsaWJmZmkgPj0gMy4wLjkKY29uZmlndXJlOjE1OTk5OiBjaGVja2luZyBNT1pf RkZJX0NGTEFHUwpjb25maWd1cmU6MTYwMDQ6IGNoZWNraW5nIE1PWl9GRklfTElCUwpjb25m aWd1cmU6MTYxMDI6IGNoZWNraW5nIGZvciBpY3UtaTE4biA+PSA1MC4xCg== --------------090408090406040300090604 Content-Type: text/plain; charset=windows-1250; name="pkg_info.log" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="pkg_info.log" T1JCaXQyLTIuMTQuMTkKT3BlbkVYUi0xLjcuMApha29kZS0yLjAuMl8yLDEKYWtvZGUtcGx1 Z2lucy1tcGMtMi4wLjIsMQpha29kZS1wbHVnaW5zLW1wZWctMi4wLjIsMQpha29kZS1wbHVn aW5zLW9zcy0yLjAuMiwxCmFrb2RlLXBsdWdpbnMtcmVzYW1wbGVyLTIuMC4yLDEKYWtvZGUt cGx1Z2lucy14aXBoLTIuMC4yXzQsMQphbHNhLWxpYi0xLjAuMjYKYXBwcmVzLTEuMC4zCmFy dHMtMS41LjEwXzcsMQphcnRzd3JhcHBlci0xLjUuMwphc3BlbGwtMC42MC42LjEKYXRrLTIu MC4xCmF0a21tLTIuMjIuNQphdXRvY29uZi0yLjEzLjAwMDIyN182CmF1dG9jb25mLTIuNjkK YXV0b2NvbmYtd3JhcHBlci0yMDEwMTExOQphdXRvbWFrZS0xLjEyLjQKYXV0b21ha2Utd3Jh cHBlci0yMDEwMTExOQphdmFoaS1hcHAtMC42LjI5XzMKYmFzaC00LjEuMTEKYmRmdG9wY2Yt MS4wLjMKYmlncmVxc3Byb3RvLTEuMS4xCmJpbnV0aWxzLTIuMjIKYmlzb24tMi41LjEsMQpi aXRtYXAtMS4wLjUKYml0c3RyZWFtLXZlcmEtMS4xMF81CmNhX3Jvb3RfbnNzLTMuMTQKY2Fp cm8tMS4xMC4yXzQsMgpjYWlyb21tLTEuMTAuMF8xCmNhbnRhcmVsbC1mb250cy0wLjAuNgpj ZHBhcmFub2lhLTMuOS44XzkKY2RyZGFvLTEuMi4zXzEKY2RydG9vbHMtMy4wMF8xCmNlbHQt MC4xMS4zXzEKY20tc3VwZXItMC4zLjRfNApjbWFrZS0yLjguOQpjbWFrZS1tb2R1bGVzLTIu OC45CmNvbXBvc2l0ZXByb3RvLTAuNC4yCmNvbnNvbGVraXQtMC40LjMKY3Vwcy1jbGllbnQt MS41LjJfMgpjdXBzLWltYWdlLTEuNS4yXzEKY3VybC03LjIxLjNfMgpjeXJ1cy1zYXNsLTIu MS4yNV8xCmRhbWFnZXByb3RvLTEuMi4xCmRiNDEtNC4xLjI1XzQKZGJ1cy0xLjQuMTRfNApk YnVzLWdsaWItMC45NApkYnVzLXF0My0wLjcwXzYKZGNvbmYtMC41LjFfNApkZXNrdG9wLWZp bGUtdXRpbHMtMC4xOApkaWFsb2c0cG9ydHMtMC4xLjVfMQpkamJmZnQtMC43Nl8yCmRtaWRl Y29kZS0yLjExCmRteHByb3RvLTIuMy4xCmRvY2Jvb2stc2stNC4xLjJfNApkb2Nib29rLXht bC00LjJfMQpkb2Nib29rLXhtbC00LjMKZG9jYm9vay14bWwtNC40XzEKZG9jYm9vay14c2wt MS43Ni4xCmRveHlnZW4tMS44LjIKZHJpLTcuNi4xXzIsMgpkcmkycHJvdG8tMi42CmR2ZCty dy10b29scy03LjEKZHZpcHNrLXRldGV4LTUuOTVhXzYKZWdnZGJ1cy0wLjZfMQplbmNoYW50 LTEuNi4wCmVuY29kaW5ncy0xLjAuNCwxCmVzb3VuZC0wLjIuNDEKZXZvbHV0aW9uLWRhdGEt c2VydmVyLTIuMzIuMV8yCmV4cGF0LTIuMC4xXzIKZmZ0dzMtMy4zXzEKZml4ZXNwcm90by01 LjAKZmxhYy0xLjIuMV8zCmZsb2NrLTIuMTkKZm9udC1hZG9iZS0xMDBkcGktMS4wLjMKZm9u dC1hZG9iZS03NWRwaS0xLjAuMwpmb250LWFkb2JlLXV0b3BpYS03NWRwaS0xLjAuNApmb250 LWFkb2JlLXV0b3BpYS10eXBlMS0xLjAuNApmb250LWFsaWFzLTEuMC4zCmZvbnQtYW1zZm9u dHMtMy4wMl8xCmZvbnQtYmgtNzVkcGktMS4wLjMKZm9udC1iaC1sdWNpZGF0eXBld3JpdGVy LTc1ZHBpLTEuMC4zCmZvbnQtYmgtdHRmLTEuMC4zCmZvbnQtYmgtdHlwZTEtMS4wLjMKZm9u dC1iaXRzdHJlYW0tNzVkcGktMS4wLjMKZm9udC1iaXRzdHJlYW0tdHlwZTEtMS4wLjMKZm9u dC1jcm9ueXgtY3lyaWxsaWMtMS4wLjMKZm9udC1pYm0tdHlwZTEtMS4wLjMKZm9udC1taXNj LWN5cmlsbGljLTEuMC4zCmZvbnQtbWlzYy1ldGhpb3BpYy0xLjAuMwpmb250LW1pc2MtbWVs dGhvLTEuMC4zCmZvbnQtbWlzYy1taXNjLTEuMS4yCmZvbnQtc2NyZWVuLWN5cmlsbGljLTEu MC40CmZvbnQtdXRpbC0xLjIuMApmb250LXdpbml0emtpLWN5cmlsbGljLTEuMC4zCmZvbnQt eGZyZWU4Ni10eXBlMS0xLjAuNApmb250Y2FjaGVwcm90by0wLjEuMwpmb250Y29uZmlnLTIu OS4wLDEKZm9udHNwcm90by0yLjEuMQpmcmVlZ2x1dC0yLjguMApmcmVldHlwZTItMi40Ljlf MQpmcmliaWRpLTAuMTkuMl8xCmdhbWluLTAuMS4xMF80Cmdhd2stNC4wLjAKZ2NjLTQuNi40 LjIwMTIxMTAyCmdjY21ha2VkZXAtMS4wLjIKZ2NvbmYyLTIuMzIuMF8zCmdkLTIuMC4zNV84 LDEKZ2RibS0xLjkuMQpnZGstcGl4YnVmLTIuMjMuNV8zCmdldG9wdC0xLjEuNF8yCmdldHRl eHQtMC4xOC4xLjEKZ2hvc3RzY3JpcHQ5LTkuMDZfMQpnaW8tZmFtLWJhY2tlbmQtMi4yOC44 XzEKZ2xpYi0yLjI4LjhfNApnbGliLW5ldHdvcmtpbmctMi4yOC43XzQKZ2xpYm1tLTIuMjgu MiwxCmdscHJvdG8tMS40LjE1CmdtYWtlLTMuODJfMQpnbWltZS0yNC0yLjQuMjQKZ21wLTUu MC41Cmdub21lLWRvYy11dGlscy0wLjIwLjMKZ25vbWUtaWNvbi10aGVtZS0yLjMxLjBfMgpn bm9tZV9zdWJyLTEuMApnbm9tZWhpZXItMi4zXzEyCmdudXBnLTIuMC4xOV8yCmdudXRscy0y LjEyLjE4XzEKZ29iamVjdC1pbnRyb3NwZWN0aW9uLTAuMTAuOF8yCmdvY3ItMC40OV8xCmdw ZXJmLTMuMC4zCmdwZ21lLTEuMy4yCmdyYXBodml6LTIuMjguMF8xCmdzZXR0aW5ncy1kZXNr dG9wLXNjaGVtYXMtMy4wLjEKZ3Nmb250cy04LjExXzUKZ3N0cmVhbWVyLTAuMTAuMzYKZ3N0 cmVhbWVyLWZmbXBlZy0wLjEwLjEzCmdzdHJlYW1lci1wbHVnaW5zLTAuMTAuMzZfMiwzCmdz dHJlYW1lci1wbHVnaW5zLWE1MmRlYy0wLjEwLjE5LDMKZ3N0cmVhbWVyLXBsdWdpbnMtYmFk LTAuMTAuMjMsMwpnc3RyZWFtZXItcGx1Z2lucy1kdHMtMC4xMC4yMywzCmdzdHJlYW1lci1w bHVnaW5zLWR2ZC0wLjEwLjE5LDMKZ3N0cmVhbWVyLXBsdWdpbnMtZ29vZC0wLjEwLjMxLDMK Z3N0cmVhbWVyLXBsdWdpbnMtbWFkLTAuMTAuMTksMwpnc3RyZWFtZXItcGx1Z2lucy1tcDMt MC4xMC4wXzEKZ3N0cmVhbWVyLXBsdWdpbnMtb2dnLTAuMTAuMzYsMwpnc3RyZWFtZXItcGx1 Z2lucy1wYW5nby0wLjEwLjM2XzEsMwpnc3RyZWFtZXItcGx1Z2lucy10aGVvcmEtMC4xMC4z NiwzCmdzdHJlYW1lci1wbHVnaW5zLXVnbHktMC4xMC4xOSwzCmdzdHJlYW1lci1wbHVnaW5z LXZvcmJpcy0wLjEwLjM2LDMKZ3N0cmVhbWVyLXBsdWdpbnMteHZpZC0wLjEwLjIzLDMKZ3Rh ci0xLjI2Cmd0ay0yLjI0LjZfMgpndGstdXBkYXRlLWljb24tY2FjaGUtMi4yNC42XzEKZ3Rr bW0tMi4yNC4yXzEKZ3VjaGFybWFwLTIuMzIuMV8xCmhhbC0wLjUuMTRfMjAKaGVscDJtYW4t MS40MC4xMgpoaWNvbG9yLWljb24tdGhlbWUtMC4xMgpodW5zcGVsbC0xLjMuMl8xCmljZWF1 dGgtMS4wLjUKaWNvbi1uYW1pbmctdXRpbHMtMC44LjkwCmljdS00LjguMS4xXzEKaWxtYmFz ZS0xLjAuMgppbWFrZS0xLjAuNCwxCmlucHV0cHJvdG8tMi4wLjIKaW50bHRvb2wtMC40MS4x Cmlzby1jb2Rlcy0zLjI5Cmlzbzg4NzktMTk4Nl8yCmphY2tpdC0wLjEyMS4zXzIKamFzcGVy LTEuOTAwLjFfMTAKamJpZzJkZWMtMC4xMV8xCmpiaWdraXQtMS42CmpwZWctOF8zCmticHJv dG8tMS4wLjUKa2RlLWxpdGUtMy41LjEwXzgKa2RlLXhkZy1lbnYtMS4wXzMsMQprZGVhY2Nl c3NpYmlsaXR5LTMuNS4xMF81CmtkZWFkbWluLTMuNS4xMF80CmtkZWFydHdvcmstMy41LjEw XzYKa2RlYmFzZS0zLjUuMTBfMTEKa2RlYmFzZS1rb21wbWdyLTMuNS4xMF80CmtkZWdyYXBo aWNzLTMuNS4xMF8xMQprZGVncmFwaGljcy1rYW1lcmEtMy41LjEwXzQKa2RlZ3JhcGhpY3Mt a29va2EtMy41LjEwXzQKa2RlaGllci0xLjBfMTEKa2RlbGlicy0zLjUuMTBfMTAKa2RlbXVs dGltZWRpYS0zLjUuMTBfNwprZGVuZXR3b3JrLTMuNS4xMF80CmtkZXBpbS0zLjUuMTBfMTEK a2RldXRpbHMtMy41LjEwXzEwCmxjbXMtMS4xOV8xLDEKbGNtczItMi40CmxpYkZTLTEuMC4z CmxpYkdMLTcuNi4xXzIKbGliR0xVLTcuNi4xXzEKbGliSUNFLTEuMC43LDEKbGliSURMLTAu OC4xNF8xCmxpYlNNLTEuMi4wLDEKbGliWDExLTEuNC40LDEKbGliWFNjcm5TYXZlci0xLjIu MQpsaWJYVHJhcC0xLjAuMApsaWJYYXUtMS4wLjYKbGliWGF3LTEuMC45LDIKbGliWGNvbXBv c2l0ZS0wLjQuMywxCmxpYlhjdXJzb3ItMS4xLjEyCmxpYlhkYW1hZ2UtMS4xLjMKbGliWGRt Y3AtMS4xLjAKbGliWGV2aWUtMS4wLjMKbGliWGV4dC0xLjMuMF8xLDEKbGliWGZpeGVzLTUu MApsaWJYZm9udC0xLjQuNCwxCmxpYlhmb250Y2FjaGUtMS4wLjUKbGliWGZ0LTIuMS4xNAps aWJYaS0xLjQuNSwxCmxpYlhpbmVyYW1hLTEuMS4xLDEKbGliWG11LTEuMS4wLDEKbGliWHAt MS4wLjEsMQpsaWJYcG0tMy41LjkKbGliWHJhbmRyLTEuMy4yCmxpYlhyZW5kZXItMC45LjYK bGliWHJlcy0xLjAuNQpsaWJYdC0xLjEuMSwxCmxpYlh0c3QtMS4yLjAKbGliWHYtMS4wLjYs MQpsaWJYdk1DLTEuMC42CmxpYlh4Zjg2ZGdhLTEuMS4yCmxpYlh4Zjg2bWlzYy0xLjAuMwps aWJYeGY4NnZtLTEuMS4xCmxpYmE1Mi0wLjcuNF8yCmxpYmFvLTEuMS4wXzEKbGliYXJ0X2xn cGwtMi4zLjIxLDEKbGliYXNzdWFuLTIuMC4zCmxpYmF1ZGlvZmlsZS0wLjIuNwpsaWJjZGRi LTEuMy4yXzEKbGliY2Rpby0wLjgyXzIKbGliY2hlY2stMC45LjgKbGliZGFlbW9uLTAuMTQK bGliZGNhLTAuMC41CmxpYmRteC0xLjEuMQpsaWJkcm0tMi40LjE3XzEKbGliZHZkY3NzLTEu Mi4xMF8xCmxpYmR2ZHJlYWQtNC4yLjBfMgpsaWJldmVudC0xLjQuMTRiXzIKbGliZXZlbnQy LTIuMC4yMApsaWJleGVjaW5mby0xLjFfMwpsaWJleGlmLTAuNi4yMApsaWJmZmktMy4wLjkK bGliZm9udGVuYy0xLjEuMApsaWJnY3J5cHQtMS41LjBfMQpsaWJnZGF0YS0wLjYuNl8xCmxp YmdlZS0wLjYuMi4xCmxpYmdub21lLWtleXJpbmctMi4zMi4wXzIKbGliZ3BnLWVycm9yLTEu MTAKbGliZ3Bob3RvMi0yLjQuMTQKbGliZ3NmLTEuMTQuMjFfMQpsaWJnd2VhdGhlci0yLjMw LjNfMQpsaWJpY2FsLTAuNDQKbGliaWNvbnYtMS4xNApsaWJpZDN0YWctMC4xNS4xYgpsaWJp ZG4tMS4yNQpsaWJrYXRlLTAuNC4xXzIKbGlia3NiYS0xLjMuMApsaWJsdGRsLTIuNC4yCmxp Ym1hZC0wLjE1LjFiXzIKbGlibW5nLTEuMC4xMF8yCmxpYm5vdGlmeS0wLjcuM18yCmxpYm9n Zy0xLjMuMCw0CmxpYm9sZFgtMS4wLjEKbGlicGFwZXItMS4xLjI0XzEKbGlicGNpLTMuMS44 XzEKbGlicGNpYWNjZXNzLTAuMTIuMQpsaWJwcm94eS0wLjQuNgpsaWJwdGhyZWFkLXN0dWJz LTAuM18zCmxpYnNhbXBsZXJhdGUtMC4xLjhfMwpsaWJzaWdjKystMi4yLjEwCmxpYnNpZ3Nl Z3YtMi4xMApsaWJzbGFuZzItMi4yLjRfMwpsaWJzbmRmaWxlLTEuMC4yNV8yCmxpYnNvdXAt Mi4zNC4zCmxpYnNvdXAtZ25vbWUtMi4zNC4zXzIKbGlidGFzbjEtMi4xMwpsaWJ0aGFpLTAu MS41XzQKbGlidGhlb3JhLTEuMS4xXzIKbGlidG9vbC0yLjQuMgpsaWJ2NGwtMC44LjhfMQps aWJ2b2x1bWVfaWQtMC44MS4xCmxpYnZvcmJpcy0xLjMuM18xLDMKbGlidnB4LTEuMS4wCmxp Ynd3dy01LjQuMF80CmxpYnhjYi0xLjcKbGlieGtiZmlsZS0xLjAuNwpsaWJ4a2J1aS0xLjAu Ml8xCmxpYnhtbCsrLTIuMzQuMgpsaWJ4bWwyLTIuNy44XzUKbGlieHNsdC0xLjEuMjZfMwps dWl0LTEuMS4wXzEKbTQtMS40LjE2XzEsMQptRE5TUmVzcG9uZGVyLTMzMy4xMAptYWtlZGVw ZW5kLTEuMC4zLDEKbWMtNC44LjEuNgpta2ZvbnRkaXItMS4wLjYKbWtmb250c2NhbGUtMS4w LjkKbXBjLTAuOQptcGZyLTMuMS4wXzIKbmFzLTEuOS4zCm5hc20tMi4xMC4wMywxCm5ldC1z bm1wLTUuNy4yCm5ldHBibS0xMC4zNS44NgpuZXR0bGUtMi41Cm5pbmphLTEuMy40LDEKbnNw ci00LjEwCm5zcy0zLjE1LjEKb3Blbi1tb3RpZi0yLjMuNApvcGVubGRhcC1jbGllbnQtMi40 LjMzCm9wZW5zbHAtMS4yLjFfMwpvcmMtMC40LjE2CnAxMS1raXQtMC4xNApwNS1BdXRoZW4t TlRMTS0xLjA5CnA1LUNQQU4tTWV0YS0yLjExMjYyMQpwNS1DUEFOLU1ldGEtWUFNTC0wLjAw NApwNS1Db21wcmVzcy1SYXctQnppcDItMi4wNDUKcDUtQ29tcHJlc3MtUmF3LVpsaWItMi4w NDUKcDUtQ3J5cHQtU1NMZWF5LTAuNThfMQpwNS1EaWdlc3QtSE1BQy0xLjAzCnA1LUVuY29k ZS1Mb2NhbGUtMS4wMgpwNS1GaWxlLUxpc3RpbmctNi4wMwpwNS1IVE1MLVBhcnNlci0zLjY5 CnA1LUhUTUwtVGFnc2V0LTMuMjAKcDUtSFRNTC1UcmVlLTQuMgpwNS1IVFRQLUNvb2tpZXMt Ni4wMApwNS1IVFRQLURhZW1vbi02LjAwCnA1LUhUVFAtRGF0ZS02LjAwCnA1LUhUVFAtTWVz c2FnZS02LjAyCnA1LUhUVFAtTmVnb3RpYXRlLTYuMDAKcDUtSU8tQ29tcHJlc3MtMi4wNDUK cDUtSU8tU29ja2V0LVNTTC0xLjUyCnA1LUpTT04tUFAtMi4yNzIwMF8xCnA1LUxXUC1NZWRp YVR5cGVzLTYuMDEKcDUtTFdQLVByb3RvY29sLWh0dHBzLTYuMDIKcDUtTG9jYWxlLWdldHRl eHQtMS4wNV8zCnA1LU1vZHVsZS1CdWlsZC0wLjM4MDBfMQpwNS1Nb2R1bGUtTWV0YWRhdGEt MS4wMDAwMDcKcDUtTW96aWxsYS1DQS0yMDExMTAyNQpwNS1OZXQtSFRUUC02LjAyCnA1LU5l dC1TU0xlYXktMS40MgpwNS1QYXJzZS1DUEFOLU1ldGEtMS40NC4wMV8xCnA1LVBlcmwtT1NU eXBlLTEuMDAyCnA1LVRleHQtSWNvbnYtMS43CnA1LVRpZS1JeEhhc2gtMS4yMgpwNS1VUkkt MS41OQpwNS1WZXJzaW9uLVJlcXVpcmVtZW50cy0wLjEwMTAyMF8xCnA1LVdXVy1Sb2JvdFJ1 bGVzLTYuMDEKcDUtWE1MLUZpbHRlci1CdWZmZXJUZXh0LTEuMDEKcDUtWE1MLU5hbWVzcGFj ZVN1cHBvcnQtMS4xMQpwNS1YTUwtUGFyc2VyLTIuNDEKcDUtWE1MLVNBWC0wLjk5CnA1LVhN TC1TQVgtQmFzZS0xLjA4CnA1LVhNTC1TQVgtRXhwYXQtMC40MF8xCnA1LVhNTC1TaW1wbGUt Mi4yMApwNS1saWJ3d3ctNi4wMl8xCnA1LWxpYnhtbC0wLjA4CnA1LXR5cGUxaW5zdC0wLjYu MV81CnA1LXZlcnNpb24tMC45NQpwYW1fa2RlLTEuMApwYW5nby0xLjI4LjRfMQpwYW5nb21t LTIuMjguMl8xCnBhcGVyc2l6ZS1kZWZhdWx0LWE0LTAuMC4yMDEyMDMwMgpwY2lpZHMtMjAx MTExMDkKcGNyZS04LjMxXzEKcGVybC01LjEyLjRfNApwaWxvdC1saW5rLTAuMTIuNSwxCnBp eG1hbi0wLjI0LjIKcGtnLTEuMS40XzIKcGtnX2N1dGxlYXZlcy0yMDA5MDgxMApwa2djb25m LTAuOC45CnBuZy0xLjUuMTIKcG9saWN5a2l0LTAuOV82CnBvbGtpdC0wLjk5CnBvcHBsZXIt ZGF0YS0wLjQuNQpwb3B0LTEuMTYKcG9ydGF1ZGlvLTE4LjFfMgpwb3J0bWFzdGVyLTMuMTRf Nwpwb3J0dXBncmFkZS0yLjQuMTAuMiwyCnByaW50cHJvdG8tMS4wLjUKcHRoLTIuMC43CnB1 bHNlYXVkaW8tMC45LjIzXzIKcHkyNy1saWJ4bWwyLTIuNy44XzIKcHkyNy1zcWxpdGUzLTIu Ny4zXzIKcHl0aG9uMjctMi43LjNfMwpxbWFrZS0zLjMuOF8xCnF0LTMuMy44XzE0CnF0NC1j b3JlbGliLTQuOC4yCnF0NC1ndWktNC44LjJfMQpxdDQtbW9jLTQuOC4yCnF0NC1xbWFrZS00 LjguMl8zCnF0NC1yY2MtNC44LjIKcXQ0LXVpYy00LjguMgpxdDQteG1sLTQuOC4yCnJhbmRy cHJvdG8tMS4zLjIKcmFyaWFuLTAuOC4xCnJlY29yZHByb3RvLTEuMTQuMQpyZW5kZXJwcm90 by0wLjExLjEKcmVzb3VyY2Vwcm90by0xLjIuMApydWJ5MTgtYmRiLTAuNi42CnNhbWJhMzQt bGlic21iY2xpZW50LTMuNC4xNApzYW5lLWJhY2tlbmRzLTEuMC4yMl8yCnNjcmVlbi00LjAu M18xMwpzY3Juc2F2ZXJwcm90by0xLjIuMQpzZXNzcmVnLTEuMC43CnNldHhrYm1hcC0xLjIu MApzaGFyZWQtbWltZS1pbmZvLTEuMF8xCnNoYy0zLjguOQpzbXByb3h5LTEuMC41CnNwZWV4 LTEuMi5yMV80LDEKc3FsaXRlMy0zLjguMC4yCnN0YXJ0dXAtbm90aWZpY2F0aW9uLTAuMTBf MgpzdWRvLTEuOC43XzEKc3ZnYWxpYi0xLjQuM182CnQxbGliLTUuMS4yXzEsMQp0YWdsaWIt MS44CnRhbGxvYy0yLjAuNwp0Y2wtOC41LjExCnRjbC1tb2R1bGVzLTguNS4xMQp0ZVRlWC0z LjBfNgp0ZVRlWC1iYXNlLTMuMF8yMwp0ZVRlWC10ZXhtZi0zLjBfOAp0ZXgtdGV4bWZsb2Nh bC0xLjkKdGV4aTJodG1sLTUuMF8xLDEKdGlmZi00LjAuMl8xCnRrLTguNS4xMgp0ay13cmFw cGVyLTEuMV8xCnRtYWtlLTEuMTMKdHJhcHByb3RvLTMuNC4zCnR3bS0xLjAuNwp1bnppcC02 LjBfMQp1cG93ZXItMC45LjcKdjRsX2NvbXBhdC0xLjAuMjAxMjA1MDFfMQp2YWxhLTAuMTIu MQp2aWRlb3Byb3RvLTIuMy4xCnZvcmJpcy10b29scy0xLjQuMF80LDMKdnRlLTAuMjYuMl8z CngxMXBlcmYtMS41LjQKeGF1dGgtMS4wLjYKeGJhY2tsaWdodC0xLjEuMgp4Yml0bWFwcy0x LjEuMQp4Y2FsYy0xLjAuNC4xXzEKeGNiLXByb3RvLTEuNgp4Y2ItdXRpbC0wLjMuOCwxCnhj Yi11dGlsLXJlbmRlcnV0aWwtMC4zLjgKeGNsb2NrLTEuMC42CnhjbXNkYi0xLjAuMwp4Y3Vy c29yLXRoZW1lcy0xLjAuM18xCnhjdXJzb3JnZW4tMS4wLjRfMQp4ZGctdXRpbHMtMS4wLjJf Nwp4ZHB5aW5mby0xLjMuMAp4ZHJpaW5mby0xLjAuNAp4ZHZpay10ZXRleC0yMi44NC4xNl80 Cnhldi0xLjEuMAp4ZXh0cHJvdG8tNy4yLjAKeGY4Ni1pbnB1dC1rZXlib2FyZC0xLjYuMQp4 Zjg2LWlucHV0LW1vdXNlLTEuNy4xXzEKeGY4Ni12aWRlby1hdGktNi4xNC4zXzEKeGY4Ni12 aWRlby1kdW1teS0wLjMuNQp4Zjg2LXZpZGVvLW9wZW5jaHJvbWUtMC4yLjkwNF8zCnhmODYt dmlkZW8tcjEyOC02LjguMV8zCnhmODYtdmlkZW8tcmFkZW9uaGQtMS4zLjBfNQp4Zjg2LXZp ZGVvLXZlc2EtMi4zLjBfMgp4Zjg2LXZpZGVvLXZtd2FyZS0xMi4wLjJfMQp4Zjg2YmlnZm9u dHByb3RvLTEuMi4wCnhmODZkZ2EtMS4wLjMKeGY4NmRnYXByb3RvLTIuMQp4Zjg2ZHJpcHJv dG8tMi4xLjEKeGY4Nm1pc2Nwcm90by0wLjkuMwp4Zjg2dmlkbW9kZXByb3RvLTIuMy4xCnhn YW1tYS0xLjAuNAp4Z2MtMS4wLjMKeGhvc3QtMS4wLjQKeGluZXJhbWFwcm90by0xLjIuMQp4 aW5pdC0xLjMuMiwxCnhpbnB1dC0xLjUuNAp4a2Jjb21wLTEuMi4zCnhrYmV2ZC0xLjEuMgp4 a2J1dGlscy0xLjAuMwp4a2V5Ym9hcmQtY29uZmlnLTIuMQp4a2lsbC0xLjAuMwp4bHNhdG9t cy0xLjEuMAp4bHNjbGllbnRzLTEuMS4yCnhtZXNzYWdlLTEuMC4zCnhtbGNhdG1nci0yLjIK eG1vZG1hcC0xLjAuNQp4b3JnLTcuNS4yCnhvcmctYXBwcy03LjUuMgp4b3JnLWNmLWZpbGVz LTEuMC40CnhvcmctZG9jcy0xLjYsMQp4b3JnLWRyaXZlcnMtNy41LjIKeG9yZy1mb250cy03 LjUuMQp4b3JnLWZvbnRzLTc1ZHBpLTcuNS4xCnhvcmctZm9udHMtY3lyaWxsaWMtNy41LjEK eG9yZy1mb250cy10cnVldHlwZS03LjUuMQp4b3JnLWZvbnRzLXR5cGUxLTcuNS4xCnhvcmct bGlicmFyaWVzLTcuNS4xCnhvcmctbWFjcm9zLTEuMTUuMAp4b3JnLXNlcnZlci0xLjcuN182 LDEKeHByLTEuMC4zCnhwcm9wLTEuMi4xCnhwcm90by03LjAuMjIKeHJhbmRyLTEuMy41Cnhy ZGItMS4wLjkKeHJlZnJlc2gtMS4wLjQKeHNldC0xLjIuMl8xCnhzZXRtb2RlLTEuMC4wCnhz ZXRyb290LTEuMS4wCnh0ZXJtLTI4Ngp4dHJhbnMtMS4yLjYKeHZpZC0xLjMuMiwxCnh2aW5m by0xLjEuMQp4d2QtMS4wLjQKeHdpbmluZm8tMS4xLjIKeHd1ZC0xLjAuMwp5YXNtLTEuMS4w CnppcC0zLjAK --------------090408090406040300090604-- From owner-freebsd-gecko@FreeBSD.ORG Wed Sep 11 19:14:39 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id A856EA9E for ; Wed, 11 Sep 2013 19:14:39 +0000 (UTC) (envelope-from hg@queue.to) Received: from pickle.queue.to (pickle.queue.to [71.180.69.18]) by mx1.freebsd.org (Postfix) with ESMTP id 556FB215D for ; Wed, 11 Sep 2013 19:14:39 +0000 (UTC) Received: (qmail 30707 invoked from network); 11 Sep 2013 15:07:57 -0400 Received: from cally.queue.to (172.16.0.6) by pickle.queue.to with ESMTP; 11 Sep 2013 15:07:57 -0400 Message-ID: <5230BF83.60206@queue.to> Date: Wed, 11 Sep 2013 15:07:47 -0400 From: Howard Goldstein User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130903 Thunderbird/17.0.8 MIME-Version: 1.0 To: freebsd-gecko@freebsd.org Subject: Re: Firefox23 PGO build fails on automation.py error code -10 References: In-Reply-To: X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="----enig2SDHNGBWXNORTIPUFUQJB" Cc: cowbert@gmail.com X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Sep 2013 19:14:39 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2SDHNGBWXNORTIPUFUQJB Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 09/09/2013 11:55, Peter Lai wrote: > I patched Firefox 23 from a portsnap taken 2013-09-08 with the patches > from http://lists.freebsd.org/pipermail/freebsd-gecko/2013-August/00359= 8.html > It will not PGO. I su -m, confirm shell can access X (run glxgears), > PGO build fails after automation.py tries to run with error code -10. Make sure your .mozconfig contains --enable-tests. You may need to tweak bsd.gecko.mk to suppress --disable-tests ------enig2SDHNGBWXNORTIPUFUQJB Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.14 (FreeBSD) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iD8DBQFSML+NdYVFuiUUgywRArOxAKDKZfoPGaTwE+KW1sxE/Aid0URG5QCdGMuZ EwZ5jkSJO0h+3611GuoPoD8= =voyO -----END PGP SIGNATURE----- ------enig2SDHNGBWXNORTIPUFUQJB-- From owner-freebsd-gecko@FreeBSD.ORG Thu Sep 12 07:19:59 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 24F91FAA for ; Thu, 12 Sep 2013 07:19:59 +0000 (UTC) (envelope-from cowbert@gmail.com) Received: from mail-lb0-x231.google.com (mail-lb0-x231.google.com [IPv6:2a00:1450:4010:c04::231]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A6DD325DC for ; Thu, 12 Sep 2013 07:19:58 +0000 (UTC) Received: by mail-lb0-f177.google.com with SMTP id w7so506890lbi.22 for ; Thu, 12 Sep 2013 00:19:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=V0VhI1tw1nHzbubzHD/wfFkuMkk7KlZfTGFSWP7Svbc=; b=MMCTBMLBb6SWVN/CTkaBRnMYItaCa61z14YnHxJR2YFdU725tfzaOXg0GCMMrCjZ9a pGJPPOrheYJ0aKNed0pMF4jpkcQVuOt0sdoTllVG/UTMvGPHo4S482uI6UIBN7+5sziv 2kWgE3cr8QyZ3WFMQumcf8vX0k434k4hh6SfDoYeHyjVT47xRNBbbCtyVcDTEd9ie+hx 5fv5b6Ph120rH80+N20eZzrf6MWylHQSjaBPjKXTVukUfRDGpI6SUcOS7587zc6LjdGG juMg5AJm7a5ZhwsazuA1cj77sej2G51C5X5EgJPJIhQeiwuh02GyJHOzRHUKevUKXXW2 Iw/Q== MIME-Version: 1.0 X-Received: by 10.152.2.4 with SMTP id 4mr4980014laq.0.1378970396606; Thu, 12 Sep 2013 00:19:56 -0700 (PDT) Received: by 10.112.17.2 with HTTP; Thu, 12 Sep 2013 00:19:56 -0700 (PDT) In-Reply-To: <5230BF83.60206@queue.to> References: <5230BF83.60206@queue.to> Date: Thu, 12 Sep 2013 03:19:56 -0400 Message-ID: Subject: Re: Firefox23 PGO build fails on automation.py error code -10 From: Peter Lai To: Howard Goldstein Content-Type: text/plain; charset=UTF-8 Cc: freebsd-gecko@freebsd.org X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Sep 2013 07:19:59 -0000 Yes tests are enabled, and also explicity in bsd.gecko.mk: #MOZ_OPTIONS+= --disable-tests \ MOZ_OPTIONS+= --enable-tests \ --enable-chrome-format=${MOZ_CHROME} \ --enable-default-toolkit=${MOZ_TOOLKIT} \ --with-pthreads MOZ_PGO_INSTRUMENTED=1 JARLOG_FILE=jarlog/en-US.log EXTRA_TEST_ARGS=10 gmake -C . pgo-profile-run gmake[1]: Entering directory `/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1' /usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1/_virtualenv/bin/python ./_profile/pgo/profileserver.py 10 args: ['/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1/dist/firefox/firefox-bin', '-no-remote', '-profile', '/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1/_profile/pgo/pgoprofile/', 'http://127.0.0.1:8888/index.html'] INFO | automation.py | Application pid: 18799 TEST-UNEXPECTED-FAIL | automation.py | Exited with code -10 during test run INFO | automation.py | Application ran for: 0:00:00.332977 INFO | zombiecheck | Reading PID log: /tmp/tmpTcTsY0pidlog gmake[1]: *** [pgo-profile-run] Error 246 gmake[1]: Leaving directory `/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1' gmake: *** [profiledbuild] Error 2 ===> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer. *** [do-build] Error code 1 Stop in /usr/ports/www/firefox. *** [build] Error code 1 Stop in /usr/ports/www/firefox. On Wed, Sep 11, 2013 at 3:07 PM, Howard Goldstein wrote: > On 09/09/2013 11:55, Peter Lai wrote: >> I patched Firefox 23 from a portsnap taken 2013-09-08 with the patches >> from http://lists.freebsd.org/pipermail/freebsd-gecko/2013-August/003598.html >> It will not PGO. I su -m, confirm shell can access X (run glxgears), >> PGO build fails after automation.py tries to run with error code -10. > > Make sure your .mozconfig contains --enable-tests. You may need to tweak > bsd.gecko.mk to suppress --disable-tests > > > From owner-freebsd-gecko@FreeBSD.ORG Thu Sep 12 09:15:08 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id AAA56464 for ; Thu, 12 Sep 2013 09:15:08 +0000 (UTC) (envelope-from svn-freebsd-gecko@chruetertee.ch) Received: from trillian.chruetertee.ch (trillian.chruetertee.ch [217.150.244.247]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 339AF208A for ; Thu, 12 Sep 2013 09:15:07 +0000 (UTC) Received: from trillian.chruetertee.ch (trillian [217.150.244.247]) by trillian.chruetertee.ch (8.14.4/8.14.3) with ESMTP id r8C9ExQd005826 for ; Thu, 12 Sep 2013 09:14:59 GMT (envelope-from svn-freebsd-gecko@chruetertee.ch) Received: (from www@localhost) by trillian.chruetertee.ch (8.14.4/8.14.3/Submit) id r8C9Es4A004832 for freebsd-gecko@freebsd.org; Thu, 12 Sep 2013 09:14:54 GMT (envelope-from svn-freebsd-gecko@chruetertee.ch) Date: Thu, 12 Sep 2013 09:14:54 GMT Message-Id: <201309120914.r8C9Es4A004832@trillian.chruetertee.ch> X-Authentication-Warning: trillian.chruetertee.ch: www set sender to svn-freebsd-gecko@chruetertee.ch using -f From: svn-freebsd-gecko@chruetertee.ch To: freebsd-gecko@freebsd.org Subject: [SVN-Commit] r1348 - in trunk: mail/thunderbird/files www/firefox-nightly/files www/firefox/files www/seamonkey/files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: freebsd-gecko@freebsd.org List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Sep 2013 09:15:08 -0000 Author: jbeich Date: Thu Sep 12 09:14:53 2013 New Revision: 1348 Log: unbreak AP logging with DEBUG Suggested by: jhb Modified: trunk/mail/thunderbird/files/patch-bug893397 trunk/www/firefox-nightly/files/patch-bug893397 trunk/www/firefox/files/patch-bug893397 trunk/www/seamonkey/files/patch-bug893397 Modified: trunk/mail/thunderbird/files/patch-bug893397 ============================================================================== --- trunk/mail/thunderbird/files/patch-bug893397 Sat Aug 31 21:10:42 2013 (r1347) +++ trunk/mail/thunderbird/files/patch-bug893397 Thu Sep 12 09:14:53 2013 (r1348) @@ -31,7 +31,7 @@ index 0000000..80d4cb6 --- /dev/null +++ mozilla/netwerk/wifi/nsWifiScannerFreeBSD.cpp -@@ -0,0 +1,173 @@ +@@ -0,0 +1,172 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ @@ -156,14 +156,13 @@ + accessPoints.AppendObject(ap); + res = true; + -+#if 0 + // log the data + LOG(( "FreeBSD access point: " -+ << "SSID: " << ssid << ", " -+ << "MAC: " << isr->isr_bssid << ", " -+ << "Strength: " << isr->isr_rssi ", " -+ << "Channel: " << isr->isr_freq << "MHz" )); -+#endif ++ "SSID: %s, MAC: %02x-%02x-%02x-%02x-%02x-%02x, " ++ "Strength: %d, Channel: %dMHz\n", ++ ssid, isr->isr_bssid[0], isr->isr_bssid[1], isr->isr_bssid[2], ++ isr->isr_bssid[3], isr->isr_bssid[4], isr->isr_bssid[5], ++ isr->isr_rssi, isr->isr_freq)); + + // increment pointers + len -= isr->isr_len; Modified: trunk/www/firefox-nightly/files/patch-bug893397 ============================================================================== --- trunk/www/firefox-nightly/files/patch-bug893397 Sat Aug 31 21:10:42 2013 (r1347) +++ trunk/www/firefox-nightly/files/patch-bug893397 Thu Sep 12 09:14:53 2013 (r1348) @@ -31,7 +31,7 @@ index 0000000..80d4cb6 --- /dev/null +++ netwerk/wifi/nsWifiScannerFreeBSD.cpp -@@ -0,0 +1,173 @@ +@@ -0,0 +1,172 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ @@ -156,14 +156,13 @@ + accessPoints.AppendObject(ap); + res = true; + -+#if 0 + // log the data + LOG(( "FreeBSD access point: " -+ << "SSID: " << ssid << ", " -+ << "MAC: " << isr->isr_bssid << ", " -+ << "Strength: " << isr->isr_rssi ", " -+ << "Channel: " << isr->isr_freq << "MHz" )); -+#endif ++ "SSID: %s, MAC: %02x-%02x-%02x-%02x-%02x-%02x, " ++ "Strength: %d, Channel: %dMHz\n", ++ ssid, isr->isr_bssid[0], isr->isr_bssid[1], isr->isr_bssid[2], ++ isr->isr_bssid[3], isr->isr_bssid[4], isr->isr_bssid[5], ++ isr->isr_rssi, isr->isr_freq)); + + // increment pointers + len -= isr->isr_len; Modified: trunk/www/firefox/files/patch-bug893397 ============================================================================== --- trunk/www/firefox/files/patch-bug893397 Sat Aug 31 21:10:42 2013 (r1347) +++ trunk/www/firefox/files/patch-bug893397 Thu Sep 12 09:14:53 2013 (r1348) @@ -31,7 +31,7 @@ index 0000000..80d4cb6 --- /dev/null +++ netwerk/wifi/nsWifiScannerFreeBSD.cpp -@@ -0,0 +1,173 @@ +@@ -0,0 +1,172 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ @@ -156,14 +156,13 @@ + accessPoints.AppendObject(ap); + res = true; + -+#if 0 + // log the data + LOG(( "FreeBSD access point: " -+ << "SSID: " << ssid << ", " -+ << "MAC: " << isr->isr_bssid << ", " -+ << "Strength: " << isr->isr_rssi ", " -+ << "Channel: " << isr->isr_freq << "MHz" )); -+#endif ++ "SSID: %s, MAC: %02x-%02x-%02x-%02x-%02x-%02x, " ++ "Strength: %d, Channel: %dMHz\n", ++ ssid, isr->isr_bssid[0], isr->isr_bssid[1], isr->isr_bssid[2], ++ isr->isr_bssid[3], isr->isr_bssid[4], isr->isr_bssid[5], ++ isr->isr_rssi, isr->isr_freq)); + + // increment pointers + len -= isr->isr_len; Modified: trunk/www/seamonkey/files/patch-bug893397 ============================================================================== --- trunk/www/seamonkey/files/patch-bug893397 Sat Aug 31 21:10:42 2013 (r1347) +++ trunk/www/seamonkey/files/patch-bug893397 Thu Sep 12 09:14:53 2013 (r1348) @@ -31,7 +31,7 @@ index 0000000..80d4cb6 --- /dev/null +++ mozilla/netwerk/wifi/nsWifiScannerFreeBSD.cpp -@@ -0,0 +1,173 @@ +@@ -0,0 +1,172 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ @@ -156,14 +156,13 @@ + accessPoints.AppendObject(ap); + res = true; + -+#if 0 + // log the data + LOG(( "FreeBSD access point: " -+ << "SSID: " << ssid << ", " -+ << "MAC: " << isr->isr_bssid << ", " -+ << "Strength: " << isr->isr_rssi ", " -+ << "Channel: " << isr->isr_freq << "MHz" )); -+#endif ++ "SSID: %s, MAC: %02x-%02x-%02x-%02x-%02x-%02x, " ++ "Strength: %d, Channel: %dMHz\n", ++ ssid, isr->isr_bssid[0], isr->isr_bssid[1], isr->isr_bssid[2], ++ isr->isr_bssid[3], isr->isr_bssid[4], isr->isr_bssid[5], ++ isr->isr_rssi, isr->isr_freq)); + + // increment pointers + len -= isr->isr_len; From owner-freebsd-gecko@FreeBSD.ORG Thu Sep 12 09:15:10 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id C0DDC465 for ; Thu, 12 Sep 2013 09:15:10 +0000 (UTC) (envelope-from svn-freebsd-gecko@chruetertee.ch) Received: from trillian.chruetertee.ch (trillian.chruetertee.ch [217.150.244.247]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 63BEA208B for ; Thu, 12 Sep 2013 09:15:10 +0000 (UTC) Received: from trillian.chruetertee.ch (trillian [217.150.244.247]) by trillian.chruetertee.ch (8.14.4/8.14.3) with ESMTP id r8C9F8cq011969 for ; Thu, 12 Sep 2013 09:15:08 GMT (envelope-from svn-freebsd-gecko@chruetertee.ch) Received: (from www@localhost) by trillian.chruetertee.ch (8.14.4/8.14.3/Submit) id r8C9F3vx009851 for freebsd-gecko@freebsd.org; Thu, 12 Sep 2013 09:15:03 GMT (envelope-from svn-freebsd-gecko@chruetertee.ch) Date: Thu, 12 Sep 2013 09:15:03 GMT Message-Id: <201309120915.r8C9F3vx009851@trillian.chruetertee.ch> X-Authentication-Warning: trillian.chruetertee.ch: www set sender to svn-freebsd-gecko@chruetertee.ch using -f From: svn-freebsd-gecko@chruetertee.ch To: freebsd-gecko@freebsd.org Subject: [SVN-Commit] r1349 - in trunk: Mk mail/thunderbird www/firefox www/firefox-nightly www/firefox-nightly/files www/seamonkey MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: freebsd-gecko@freebsd.org List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Sep 2013 09:15:10 -0000 Author: jbeich Date: Thu Sep 12 09:15:03 2013 New Revision: 1349 Log: update Deleted: trunk/www/firefox-nightly/files/patch-bug853301 trunk/www/firefox-nightly/files/patch-bug886181 Modified: trunk/Mk/bsd.gecko.mk trunk/mail/thunderbird/Makefile trunk/mail/thunderbird/distinfo trunk/www/firefox-nightly/Makefile.hgrev trunk/www/firefox-nightly/distinfo trunk/www/firefox-nightly/files/patch-config-baseconfig.mk trunk/www/firefox/Makefile trunk/www/firefox/distinfo trunk/www/seamonkey/Makefile trunk/www/seamonkey/distinfo Modified: trunk/Mk/bsd.gecko.mk ============================================================================== --- trunk/Mk/bsd.gecko.mk Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/Mk/bsd.gecko.mk Thu Sep 12 09:15:03 2013 (r1349) @@ -598,7 +598,7 @@ .endif icu_LIB_DEPENDS= icui18n:${PORTSDIR}/devel/icu -icu_MOZ_OPTIONS= --enable-intl-api --with-system-icu +icu_MOZ_OPTIONS= --with-system-icu --with-intl-api --enable-intl-api # XXX: depends on pkgng package flavor support #jpeg_LIB_DEPENDS= jpeg:${PORTSDIR}/graphics/libjpeg-turbo Modified: trunk/mail/thunderbird/Makefile ============================================================================== --- trunk/mail/thunderbird/Makefile Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/mail/thunderbird/Makefile Thu Sep 12 09:15:03 2013 (r1349) @@ -2,9 +2,10 @@ # $FreeBSD: head/mail/thunderbird/Makefile 324744 2013-08-14 22:35:50Z ak $ PORTNAME= thunderbird -DISTVERSION= 24.0b2 +DISTVERSION= 24.0 CATEGORIES= mail ipv6 -MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source +MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ + https://ftp.mozilla.org/pub/mozilla.org/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source/ DISTFILES= ${PORTNAME}-${DISTVERSION}.source${EXTRACT_SUFX} EXTRACT_ONLY= ${PORTNAME}-${DISTVERSION}.source${EXTRACT_SUFX} @@ -21,7 +22,7 @@ LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l EM_VERSION= 1.5.2 -L_VERSION= 2.6b1 +L_VERSION= 2.6b3 USE_AUTOTOOLS= autoconf213:env USE_PYTHON_BUILD=-2.7 @@ -67,7 +68,7 @@ .include -WRKSRC= ${WRKDIR}/comm-beta +WRKSRC= ${WRKDIR}/comm-esr24 MOZSRC:= ${WRKSRC}/mozilla XPI_LIBDIR= ${PREFIX}/lib/xpi Modified: trunk/mail/thunderbird/distinfo ============================================================================== --- trunk/mail/thunderbird/distinfo Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/mail/thunderbird/distinfo Thu Sep 12 09:15:03 2013 (r1349) @@ -1,4 +1,4 @@ -SHA256 (thunderbird-24.0b2.source.tar.bz2) = bfbd85af55c43ff9fe9842142cd68067a93ac2de0c6e92ead6e5d0506a97d579 -SIZE (thunderbird-24.0b2.source.tar.bz2) = 139997053 +SHA256 (thunderbird-24.0.source.tar.bz2) = 60a1abde987a61c8096e431f13df2ba2cf188a22fdbf1712aaec795b302a5ff5 +SIZE (thunderbird-24.0.source.tar.bz2) = 140334722 SHA256 (enigmail-1.5.2.tar.gz) = f20d6d1be1ab12dc2f1208d8f01227fd7e5c4dcf5d6f4bd0833a932b58973a26 SIZE (enigmail-1.5.2.tar.gz) = 1211395 Modified: trunk/www/firefox-nightly/Makefile.hgrev ============================================================================== --- trunk/www/firefox-nightly/Makefile.hgrev Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/www/firefox-nightly/Makefile.hgrev Thu Sep 12 09:15:03 2013 (r1349) @@ -1 +1 @@ -HGREV= 145161:b24700fc8592 +HGREV= 146765:bf930e7d61d3 Modified: trunk/www/firefox-nightly/distinfo ============================================================================== --- trunk/www/firefox-nightly/distinfo Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/www/firefox-nightly/distinfo Thu Sep 12 09:15:03 2013 (r1349) @@ -1,2 +1,2 @@ -SHA256 (firefox-nightly/b24700fc8592.tar.bz2) = 4663964d7939862a1476b1a876ca54f0d3330e6f747a9a277eeab2485d15c635 -SIZE (firefox-nightly/b24700fc8592.tar.bz2) = 125131288 +SHA256 (firefox-nightly/bf930e7d61d3.tar.bz2) = 7e59991820be102994c254fbb0d1d7eb1af74060a5a0e7f0b2fbd652b32a987a +SIZE (firefox-nightly/bf930e7d61d3.tar.bz2) = 125316265 Deleted: trunk/www/firefox-nightly/files/patch-bug853301 ============================================================================== --- trunk/www/firefox-nightly/files/patch-bug853301 Thu Sep 12 09:15:03 2013 (r1348) +++ /dev/null 00:00:00 1970 (deleted) @@ -1,11 +0,0 @@ ---- configure.in~ -+++ configure.in -@@ -9439,7 +9439,7 @@ if test "$NIGHTLY_BUILD" = "1" -a "$MOZ_ - # In desktop nightlies the Internationalization API is disabled, but all - # code for it is still built. Bug 853301 will remove this so that it's - # built and the API is enabled. -- ac_configure_args="$ac_configure_args --with-intl-api=build" -+ ac_configure_args="$ac_configure_args --with-intl-api" - else - # Internationalization isn't built or exposed by default in non-desktop and - # non-nightly builds. Bugs to enable: Deleted: trunk/www/firefox-nightly/files/patch-bug886181 ============================================================================== --- trunk/www/firefox-nightly/files/patch-bug886181 Thu Sep 12 09:15:03 2013 (r1348) +++ /dev/null 00:00:00 1970 (deleted) @@ -1,11 +0,0 @@ ---- modules/libpref/src/init/all.js~ -+++ modules/libpref/src/init/all.js -@@ -193,7 +193,7 @@ pref("media.webm.enabled", true); - pref("media.dash.enabled", false); - #endif - #ifdef MOZ_GSTREAMER --pref("media.gstreamer.enabled", false); -+pref("media.gstreamer.enabled", true); - #endif - #ifdef MOZ_WEBRTC - pref("media.navigator.enabled", true); Modified: trunk/www/firefox-nightly/files/patch-config-baseconfig.mk ============================================================================== --- trunk/www/firefox-nightly/files/patch-config-baseconfig.mk Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/www/firefox-nightly/files/patch-config-baseconfig.mk Thu Sep 12 09:15:03 2013 (r1349) @@ -1,8 +1,6 @@ --- config/baseconfig.mk~ +++ config/baseconfig.mk -@@ -1,9 +1,9 @@ - INCLUDED_AUTOCONF_MK = 1 - +@@ -1,7 +1,7 @@ -includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) -idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) -installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) Modified: trunk/www/firefox/Makefile ============================================================================== --- trunk/www/firefox/Makefile Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/www/firefox/Makefile Thu Sep 12 09:15:03 2013 (r1349) @@ -2,7 +2,7 @@ # $FreeBSD: head/www/firefox/Makefile 310227 2013-01-11 10:22:40Z ehaupt $ PORTNAME= firefox -DISTVERSION= 24.0b7 +DISTVERSION= 24.0 PORTEPOCH= 1 CATEGORIES= www ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ @@ -56,7 +56,7 @@ .include -WRKSRC:= ${WRKDIR}/mozilla-beta +WRKSRC:= ${WRKDIR}/mozilla-release post-extract: @${SED} -e 's|@FIREFOX_ICON@|${FIREFOX_ICON}|' -e 's|@MOZILLA@|${MOZILLA}|' \ Modified: trunk/www/firefox/distinfo ============================================================================== --- trunk/www/firefox/distinfo Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/www/firefox/distinfo Thu Sep 12 09:15:03 2013 (r1349) @@ -1,2 +1,2 @@ -SHA256 (firefox-24.0b7.source.tar.bz2) = f7b505d83cbc2fadbad203d3429d43bff8cd8b8af529d2e05e78c9a6a4e2eb8a -SIZE (firefox-24.0b7.source.tar.bz2) = 119767637 +SHA256 (firefox-24.0.source.tar.bz2) = 86a6efa501e1b106b597a8506757f3a2db9d3a5cfcc61ea29a9ad0c834bea83b +SIZE (firefox-24.0.source.tar.bz2) = 119931784 Modified: trunk/www/seamonkey/Makefile ============================================================================== --- trunk/www/seamonkey/Makefile Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/www/seamonkey/Makefile Thu Sep 12 09:15:03 2013 (r1349) @@ -2,7 +2,7 @@ # $FreeBSD: head/www/seamonkey/Makefile 324744 2013-08-14 22:35:50Z ak $ PORTNAME= seamonkey -DISTVERSION= 2.21b1 +DISTVERSION= 2.21b2 CATEGORIES?= www ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ https://ftp.mozilla.org/pub/mozilla.org/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source/ @@ -21,7 +21,7 @@ LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l EM_VERSION= 1.5.2 -L_VERSION= 2.6b1 +L_VERSION= 2.6b3 USE_AUTOTOOLS= autoconf213:env USE_PYTHON_BUILD=-2.7 Modified: trunk/www/seamonkey/distinfo ============================================================================== --- trunk/www/seamonkey/distinfo Thu Sep 12 09:14:53 2013 (r1348) +++ trunk/www/seamonkey/distinfo Thu Sep 12 09:15:03 2013 (r1349) @@ -1,4 +1,4 @@ -SHA256 (seamonkey-2.21b1.source.tar.bz2) = a464c1abf3e830413fde8083ab560629c11e7468a6b04d28d15089a66a1aff25 -SIZE (seamonkey-2.21b1.source.tar.bz2) = 140357100 +SHA256 (seamonkey-2.21b2.source.tar.bz2) = bf96e47f8e74a5ada7653cfb9ae2c5ae7f8557b2197c28359c27350c2d1e5348 +SIZE (seamonkey-2.21b2.source.tar.bz2) = 140415270 SHA256 (enigmail-1.5.2.tar.gz) = f20d6d1be1ab12dc2f1208d8f01227fd7e5c4dcf5d6f4bd0833a932b58973a26 SIZE (enigmail-1.5.2.tar.gz) = 1211395 From owner-freebsd-gecko@FreeBSD.ORG Thu Sep 12 16:59:41 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 6D2CA979 for ; Thu, 12 Sep 2013 16:59:41 +0000 (UTC) (envelope-from cowbert@gmail.com) Received: from mail-la0-x22a.google.com (mail-la0-x22a.google.com [IPv6:2a00:1450:4010:c03::22a]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EEB472093 for ; Thu, 12 Sep 2013 16:59:40 +0000 (UTC) Received: by mail-la0-f42.google.com with SMTP id ep20so65172lab.29 for ; Thu, 12 Sep 2013 09:59:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:cc :content-type; bh=1iZ5A72c20TAGuFfcMPet+ra5+WiK8XT8KKZr26s18U=; b=l8fT7CYRPBzJSt4Qyfgf91Cetx2LkXgXhkuLooKE1kHYOtSXFx6devI38CSe3L654D FrZBq0WwjWNAHnmc96fPaVgzyrHLur/iZz6pTTyk6RS1wrUtrkMaeBD3eG/aHsJK8D1c g08YSgx7Jrx32/ppOeLQkXxh8eNkJ7StPSsLTXQLnYcsIT1oz7dyLPdGY7lPxMbMiI7+ Ib6k77Iew8+zMzpOrLPEUIDSRH+kvPpKuc8qUW46l1lC3VFb8qg2sO/jJzVD/ZJQ2i01 NmKJcxxWWzvUzCQaV2YwroFkLj/XPaoLzoJFgmkhbxiWdCb++MMj6Tn8BkFcTeKIMM2R lKqQ== MIME-Version: 1.0 X-Received: by 10.112.52.225 with SMTP id w1mr2434654lbo.31.1379005178926; Thu, 12 Sep 2013 09:59:38 -0700 (PDT) Received: by 10.112.17.2 with HTTP; Thu, 12 Sep 2013 09:59:38 -0700 (PDT) In-Reply-To: References: <5230BF83.60206@queue.to> Date: Thu, 12 Sep 2013 12:59:38 -0400 Message-ID: Subject: Re: Firefox23 PGO build fails on automation.py error code -10 From: Peter Lai Cc: freebsd-gecko@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Sep 2013 16:59:41 -0000 OK seems to get past that failure when I strip out the jemalloc defs. Looks like gcc46 doesn't like them either. On Thu, Sep 12, 2013 at 3:19 AM, Peter Lai wrote: > Yes tests are enabled, and also explicity in bsd.gecko.mk: > #MOZ_OPTIONS+= --disable-tests \ > MOZ_OPTIONS+= --enable-tests \ > --enable-chrome-format=${MOZ_CHROME} \ > --enable-default-toolkit=${MOZ_TOOLKIT} \ > --with-pthreads > > MOZ_PGO_INSTRUMENTED=1 JARLOG_FILE=jarlog/en-US.log EXTRA_TEST_ARGS=10 > gmake -C . pgo-profile-run > gmake[1]: Entering directory > `/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1' > /usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1/_virtualenv/bin/python > ./_profile/pgo/profileserver.py 10 > args: ['/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1/dist/firefox/firefox-bin', > '-no-remote', '-profile', > '/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1/_profile/pgo/pgoprofile/', > 'http://127.0.0.1:8888/index.html'] > INFO | automation.py | Application pid: 18799 > TEST-UNEXPECTED-FAIL | automation.py | Exited with code -10 during test run > INFO | automation.py | Application ran for: 0:00:00.332977 > INFO | zombiecheck | Reading PID log: /tmp/tmpTcTsY0pidlog > gmake[1]: *** [pgo-profile-run] Error 246 > gmake[1]: Leaving directory > `/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.1' > gmake: *** [profiledbuild] Error 2 > ===> Compilation failed unexpectedly. > Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to > the maintainer. > *** [do-build] Error code 1 > > Stop in /usr/ports/www/firefox. > *** [build] Error code 1 > > Stop in /usr/ports/www/firefox. > > On Wed, Sep 11, 2013 at 3:07 PM, Howard Goldstein wrote: >> On 09/09/2013 11:55, Peter Lai wrote: >>> I patched Firefox 23 from a portsnap taken 2013-09-08 with the patches >>> from http://lists.freebsd.org/pipermail/freebsd-gecko/2013-August/003598.html >>> It will not PGO. I su -m, confirm shell can access X (run glxgears), >>> PGO build fails after automation.py tries to run with error code -10. >> >> Make sure your .mozconfig contains --enable-tests. You may need to tweak >> bsd.gecko.mk to suppress --disable-tests >> >> >> From owner-freebsd-gecko@FreeBSD.ORG Thu Sep 12 18:49:29 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 6D6DFFC2 for ; Thu, 12 Sep 2013 18:49:29 +0000 (UTC) (envelope-from hg@queue.to) Received: from pickle.queue.to (pickle.queue.to [71.180.69.18]) by mx1.freebsd.org (Postfix) with ESMTP id F30472AA1 for ; Thu, 12 Sep 2013 18:49:28 +0000 (UTC) Received: (qmail 78094 invoked from network); 12 Sep 2013 14:49:27 -0400 Received: from cally.queue.to (172.16.0.6) by pickle.queue.to with ESMTP; 12 Sep 2013 14:49:27 -0400 Message-ID: <52320CB1.3000009@queue.to> Date: Thu, 12 Sep 2013 14:49:21 -0400 From: Howard Goldstein User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130903 Thunderbird/17.0.8 MIME-Version: 1.0 To: Peter Lai Subject: Re: Firefox23 PGO build fails on automation.py error code -10 References: <5230BF83.60206@queue.to> In-Reply-To: X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="----enig2KRWIPOIFFJGDSFNRUDMP" Cc: freebsd-gecko@freebsd.org X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Sep 2013 18:49:29 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2KRWIPOIFFJGDSFNRUDMP Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 09/12/2013 03:19, Peter Lai wrote: > Yes tests are enabled, and also explicity in bsd.gecko.mk: OK > #MOZ_OPTIONS+=3D --disable-tests \ > MOZ_OPTIONS+=3D --enable-tests \ > --enable-chrome-format=3D${MOZ_CHROME} \ > --enable-default-toolkit=3D${MOZ_TOOLKIT} \ > --with-pthreads >=20 > MOZ_PGO_INSTRUMENTED=3D1 JARLOG_FILE=3Djarlog/en-US.log EXTRA_TEST_ARGS= =3D10 > gmake -C . pgo-profile-run > gmake[1]: Entering directory > `/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown= -freebsd9.1' > /usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-= freebsd9.1/_virtualenv/bin/python > ./_profile/pgo/profileserver.py 10 > args: [ ] > INFO | automation.py | Application pid: 18799 > TEST-UNEXPECTED-FAIL | automation.py | Exited with code -10 during test= run > INFO | automation.py | Application ran for: 0:00:00.332977 > INFO | zombiecheck | Reading PID log: /tmp/tmpTcTsY0pidlog > gmake[1]: *** [pgo-profile-run] Error 246 > gmake[1]: Leaving directory > `/usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown= -freebsd9.1' > gmake: *** [profiledbuild] Error 2 > =3D=3D=3D> Compilation failed unexpectedly. > Try to set MAKE_JOBS_UNSAFE=3Dyes and rebuild before reporting the fail= ure to > the maintainer. > *** [do-build] Error code 1 >=20 > Stop in /usr/ports/www/firefox. > *** [build] Error code 1 >=20 > Stop in /usr/ports/www/firefox. At this point are you able start firefox-bin by hand the firefox invocation automation.py's failing on? Maybe try from the shell the cd /usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-fr= eebsd9.1/dist/firefox/ =2E/firefox-bin -no-remote -profile \ /usr/obj/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-fr= eebsd9.1/_profile/pgo/pgoprofile/ ------enig2KRWIPOIFFJGDSFNRUDMP Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.14 (FreeBSD) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iD8DBQFSMgy3dYVFuiUUgywRAuoMAJ43XPb2yVQ7kJnBFynySwBhHU2/LQCeOim7 1J+vlz3TGMc1ebgK6RK2+pc= =nwZY -----END PGP SIGNATURE----- ------enig2KRWIPOIFFJGDSFNRUDMP-- From owner-freebsd-gecko@FreeBSD.ORG Fri Sep 13 14:18:47 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 37BA7877 for ; Fri, 13 Sep 2013 14:18:47 +0000 (UTC) (envelope-from hg@queue.to) Received: from pickle.queue.to (pickle.queue.to [71.180.69.18]) by mx1.freebsd.org (Postfix) with ESMTP id D51EB258E for ; Fri, 13 Sep 2013 14:18:46 +0000 (UTC) Received: (qmail 28105 invoked from network); 13 Sep 2013 10:18:40 -0400 Received: from cally.queue.to (172.16.0.6) by pickle.queue.to with ESMTP; 13 Sep 2013 10:18:40 -0400 Message-ID: <52331EBF.6090402@queue.to> Date: Fri, 13 Sep 2013 10:18:39 -0400 From: Howard Goldstein User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130903 Thunderbird/17.0.8 MIME-Version: 1.0 To: Peter Lai , freebsd-gecko@freebsd.org Subject: Re: Firefox23 PGO build fails on automation.py error code -10 References: <5230BF83.60206@queue.to> In-Reply-To: X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="----enig2KIPOQULJQTTCHINWFRXR" X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Sep 2013 14:18:47 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2KIPOQULJQTTCHINWFRXR Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 09/12/2013 12:59, Peter Lai wrote: > OK seems to get past that failure when I strip out the jemalloc defs. > Looks like gcc46 doesn't like them either. Yes jemalloc likes 10-CURRENT and if you run it there you may as I did on a very low end celeron find firefox feels a whole lot more responsive and snappier on -CURRENT with jemalloc. ------enig2KIPOQULJQTTCHINWFRXR Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.14 (FreeBSD) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iD8DBQFSMx7AdYVFuiUUgywRArpnAKCBbP8YSda9WhxJlepQLy0lAkkjuQCdFwGz yvzFTD+Q69VzLJYOH8IS/9s= =7BC/ -----END PGP SIGNATURE----- ------enig2KIPOQULJQTTCHINWFRXR-- From owner-freebsd-gecko@FreeBSD.ORG Fri Sep 13 21:52:45 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 5C4764A7 for ; Fri, 13 Sep 2013 21:52:45 +0000 (UTC) (envelope-from svn-freebsd-gecko@chruetertee.ch) Received: from trillian.chruetertee.ch (trillian.chruetertee.ch [217.150.244.247]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id F09F8290C for ; Fri, 13 Sep 2013 21:52:44 +0000 (UTC) Received: from trillian.chruetertee.ch (trillian [217.150.244.247]) by trillian.chruetertee.ch (8.14.4/8.14.3) with ESMTP id r8DLqZTm062928 for ; Fri, 13 Sep 2013 21:52:35 GMT (envelope-from svn-freebsd-gecko@chruetertee.ch) Received: (from www@localhost) by trillian.chruetertee.ch (8.14.4/8.14.3/Submit) id r8DLqU6s062179 for freebsd-gecko@freebsd.org; Fri, 13 Sep 2013 21:52:30 GMT (envelope-from svn-freebsd-gecko@chruetertee.ch) Date: Fri, 13 Sep 2013 21:52:30 GMT Message-Id: <201309132152.r8DLqU6s062179@trillian.chruetertee.ch> X-Authentication-Warning: trillian.chruetertee.ch: www set sender to svn-freebsd-gecko@chruetertee.ch using -f From: svn-freebsd-gecko@chruetertee.ch To: freebsd-gecko@freebsd.org Subject: [SVN-Commit] r1350 - in trunk: mail/thunderbird/files www/firefox-nightly/files www/firefox/files www/seamonkey/files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: freebsd-gecko@freebsd.org List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Sep 2013 21:52:45 -0000 Author: jbeich Date: Fri Sep 13 21:52:30 2013 New Revision: 1350 Log: try not to break dragonfly Added: trunk/mail/thunderbird/files/patch-bug916216 trunk/www/firefox-nightly/files/patch-bug916216 trunk/www/firefox/files/patch-bug916216 trunk/www/seamonkey/files/patch-bug916216 Added: trunk/mail/thunderbird/files/patch-bug916216 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/mail/thunderbird/files/patch-bug916216 Fri Sep 13 21:52:30 2013 (r1350) @@ -0,0 +1,39 @@ +--- mozilla/media/webrtc/trunk/build/build_config.h~ ++++ mozilla/media/webrtc/trunk/build/build_config.h +@@ -37,9 +37,15 @@ + #elif defined(_WIN32) + #define OS_WIN 1 + #define TOOLKIT_VIEWS 1 +-#elif defined(__FreeBSD__) ++#elif defined(__DragonFly__) ++#define OS_DRAGONFLY 1 ++#define TOOLKIT_GTK ++#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + #define OS_FREEBSD 1 + #define TOOLKIT_GTK ++#elif defined(__NetBSD__) ++#define OS_NETBSD 1 ++#define TOOLKIT_GTK + #elif defined(__OpenBSD__) + #define OS_OPENBSD 1 + #define TOOLKIT_GTK +@@ -56,15 +62,15 @@ + + // For access to standard BSD features, use OS_BSD instead of a + // more specific macro. +-#if defined(OS_FREEBSD) || defined(OS_OPENBSD) ++#if defined(OS_DRAGONFLY) || defined(OS_FREEBSD) \ ++ || defined(OS_NETBSD) || defined(OS_OPENBSD) + #define OS_BSD 1 + #endif + + // For access to standard POSIXish features, use OS_POSIX instead of a + // more specific macro. +-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_FREEBSD) || \ +- defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(OS_ANDROID) || \ +- defined(OS_NACL) ++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || \ ++ defined(OS_SOLARIS) || defined(OS_ANDROID) || defined(OS_NACL) + #define OS_POSIX 1 + #endif + Added: trunk/www/firefox-nightly/files/patch-bug916216 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/www/firefox-nightly/files/patch-bug916216 Fri Sep 13 21:52:30 2013 (r1350) @@ -0,0 +1,39 @@ +--- media/webrtc/trunk/build/build_config.h~ ++++ media/webrtc/trunk/build/build_config.h +@@ -37,9 +37,15 @@ + #elif defined(_WIN32) + #define OS_WIN 1 + #define TOOLKIT_VIEWS 1 +-#elif defined(__FreeBSD__) ++#elif defined(__DragonFly__) ++#define OS_DRAGONFLY 1 ++#define TOOLKIT_GTK ++#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + #define OS_FREEBSD 1 + #define TOOLKIT_GTK ++#elif defined(__NetBSD__) ++#define OS_NETBSD 1 ++#define TOOLKIT_GTK + #elif defined(__OpenBSD__) + #define OS_OPENBSD 1 + #define TOOLKIT_GTK +@@ -56,15 +62,15 @@ + + // For access to standard BSD features, use OS_BSD instead of a + // more specific macro. +-#if defined(OS_FREEBSD) || defined(OS_OPENBSD) ++#if defined(OS_DRAGONFLY) || defined(OS_FREEBSD) \ ++ || defined(OS_NETBSD) || defined(OS_OPENBSD) + #define OS_BSD 1 + #endif + + // For access to standard POSIXish features, use OS_POSIX instead of a + // more specific macro. +-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_FREEBSD) || \ +- defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(OS_ANDROID) || \ +- defined(OS_NACL) ++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || \ ++ defined(OS_SOLARIS) || defined(OS_ANDROID) || defined(OS_NACL) + #define OS_POSIX 1 + #endif + Added: trunk/www/firefox/files/patch-bug916216 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/www/firefox/files/patch-bug916216 Fri Sep 13 21:52:30 2013 (r1350) @@ -0,0 +1,39 @@ +--- media/webrtc/trunk/build/build_config.h~ ++++ media/webrtc/trunk/build/build_config.h +@@ -37,9 +37,15 @@ + #elif defined(_WIN32) + #define OS_WIN 1 + #define TOOLKIT_VIEWS 1 +-#elif defined(__FreeBSD__) ++#elif defined(__DragonFly__) ++#define OS_DRAGONFLY 1 ++#define TOOLKIT_GTK ++#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + #define OS_FREEBSD 1 + #define TOOLKIT_GTK ++#elif defined(__NetBSD__) ++#define OS_NETBSD 1 ++#define TOOLKIT_GTK + #elif defined(__OpenBSD__) + #define OS_OPENBSD 1 + #define TOOLKIT_GTK +@@ -56,15 +62,15 @@ + + // For access to standard BSD features, use OS_BSD instead of a + // more specific macro. +-#if defined(OS_FREEBSD) || defined(OS_OPENBSD) ++#if defined(OS_DRAGONFLY) || defined(OS_FREEBSD) \ ++ || defined(OS_NETBSD) || defined(OS_OPENBSD) + #define OS_BSD 1 + #endif + + // For access to standard POSIXish features, use OS_POSIX instead of a + // more specific macro. +-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_FREEBSD) || \ +- defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(OS_ANDROID) || \ +- defined(OS_NACL) ++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || \ ++ defined(OS_SOLARIS) || defined(OS_ANDROID) || defined(OS_NACL) + #define OS_POSIX 1 + #endif + Added: trunk/www/seamonkey/files/patch-bug916216 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/www/seamonkey/files/patch-bug916216 Fri Sep 13 21:52:30 2013 (r1350) @@ -0,0 +1,39 @@ +--- mozilla/media/webrtc/trunk/build/build_config.h~ ++++ mozilla/media/webrtc/trunk/build/build_config.h +@@ -37,9 +37,15 @@ + #elif defined(_WIN32) + #define OS_WIN 1 + #define TOOLKIT_VIEWS 1 +-#elif defined(__FreeBSD__) ++#elif defined(__DragonFly__) ++#define OS_DRAGONFLY 1 ++#define TOOLKIT_GTK ++#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + #define OS_FREEBSD 1 + #define TOOLKIT_GTK ++#elif defined(__NetBSD__) ++#define OS_NETBSD 1 ++#define TOOLKIT_GTK + #elif defined(__OpenBSD__) + #define OS_OPENBSD 1 + #define TOOLKIT_GTK +@@ -56,15 +62,15 @@ + + // For access to standard BSD features, use OS_BSD instead of a + // more specific macro. +-#if defined(OS_FREEBSD) || defined(OS_OPENBSD) ++#if defined(OS_DRAGONFLY) || defined(OS_FREEBSD) \ ++ || defined(OS_NETBSD) || defined(OS_OPENBSD) + #define OS_BSD 1 + #endif + + // For access to standard POSIXish features, use OS_POSIX instead of a + // more specific macro. +-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_FREEBSD) || \ +- defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(OS_ANDROID) || \ +- defined(OS_NACL) ++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || \ ++ defined(OS_SOLARIS) || defined(OS_ANDROID) || defined(OS_NACL) + #define OS_POSIX 1 + #endif +