From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Luca Saiu Newsgroups: gmane.lisp.guile.bugs Subject: Re: High run time variance Date: Tue, 30 Mar 2010 14:35:09 +0200 Message-ID: <4BB1EFFD.4080206@gnu.org> References: <4BB0D0A7.7080505@gnu.org> <87vdce186i.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------030602090305040101060008" X-Trace: dough.gmane.org 1269952889 8714 80.91.229.12 (30 Mar 2010 12:41:29 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 30 Mar 2010 12:41:29 +0000 (UTC) Cc: bug-guile@gnu.org To: =?UTF-8?B?THVkb3ZpYyBDb3VydMOocw==?= Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Tue Mar 30 14:41:23 2010 Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Nwakh-00011U-7a for guile-bugs@m.gmane.org; Tue, 30 Mar 2010 14:41:22 +0200 Original-Received: from localhost ([127.0.0.1]:39782 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Nwakf-00050y-I3 for guile-bugs@m.gmane.org; Tue, 30 Mar 2010 08:41:01 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NwajP-0004J3-TB for bug-guile@gnu.org; Tue, 30 Mar 2010 08:39:43 -0400 Original-Received: from [140.186.70.92] (port=33996 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NwajH-0004FD-Ra for bug-guile@gnu.org; Tue, 30 Mar 2010 08:39:43 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NwajC-0000qq-Uy for bug-guile@gnu.org; Tue, 30 Mar 2010 08:39:35 -0400 Original-Received: from mail.lipn.univ-paris13.fr ([194.254.163.24]:46861) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NwajC-0000qZ-5g; Tue, 30 Mar 2010 08:39:30 -0400 Original-Received: from [10.10.0.234] (optimum.lipn.univ-paris13.fr [10.10.0.234]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: saiu@lipn.univ-paris13.fr) by mail.lipn.univ-paris13.fr (sendmail 8.9.3/8.9.2) with ESMTP id 6DA7222E02; Tue, 30 Mar 2010 14:39:29 +0200 (CEST) User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20091109) In-Reply-To: <87vdce186i.fsf@gnu.org> X-Enigmail-Version: 0.95.0 OpenPGP: id=26C5D286; url=http://www-lipn.univ-paris13.fr/~saiu/lucasaiu.asc X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: bug-guile@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:4546 Archived-At: This is a multi-part message in MIME format. --------------030602090305040101060008 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello Ludovic. Ludovic Court=C3=A8s wrote: > Hi Luca, >=20 > Luca Saiu writes: >=20 >> (define (fibo n) >> (if (< n 2) >> n >> (+ (fibo (- n 1)) >> (fibo (- n 2))))) >=20 > This function is not tail-recursive, so it consumes stack space, which > increases the amount of memory the GC has to scan. My guess is that > this has to do with the time spent in GC. Well, no. That's easy to prove with Boehm's GC, by setting GC_PRINT_STATS=3D1. The log is quite big, so I'm attaching it separately as fibo-with-GC_PRINT_STATS. Anyway the result is that there is no collection while computing fibo (I'm speaking about 1.9 using the VM), which is to be expected: Bohem's GC can only trigger a collection at allocation time. q-fibo.scm is the file which I had called q.scm in my first report, with n =3D 35. We can also completely disable the GC by setting GC_DONT_GC, and the effect is still there: [luca@optimum ~/tmp]$ export GC_DONT_GC=3D1; unset GC_PRINT_STATS; rm -rf ~/.cache/guile/; for i in `seq 10`; do time guile --autocompile q-fibo.scm; echo; done ;;; note: autocompilation is enabled, set GUILE_AUTO_COMPILE=3D0 ;;; or pass the --no-autocompile argument to disable. ;;; compiling q-fibo.scm ;;; compiled /home/luca/.cache/guile/ccache/2.0-0.P-LE-8/home/luca/tmp/q-fibo.scm.go (begin (fibo n)) returned 9227465 in 2.79 seconds. (begin (fibo n)) returned 9227465 in 2.79 seconds. (begin (fibo n)) returned 9227465 in 2.78 seconds. real 0m8.429s user 0m8.420s sys 0m0.020s (begin (fibo n)) returned 9227465 in 2.59 seconds. (begin (fibo n)) returned 9227465 in 2.59 seconds. (begin (fibo n)) returned 9227465 in 2.6 seconds. real 0m7.792s user 0m7.800s sys 0m0.010s (begin (fibo n)) returned 9227465 in 2.95 seconds. (begin (fibo n)) returned 9227465 in 2.93 seconds. (begin (fibo n)) returned 9227465 in 2.94 seconds. real 0m8.829s user 0m8.820s sys 0m0.010s (begin (fibo n)) returned 9227465 in 2.64 seconds. (begin (fibo n)) returned 9227465 in 2.64 seconds. (begin (fibo n)) returned 9227465 in 2.65 seconds. real 0m7.949s user 0m7.940s sys 0m0.000s (begin (fibo n)) returned 9227465 in 2.73 seconds. (begin (fibo n)) returned 9227465 in 2.74 seconds. (begin (fibo n)) returned 9227465 in 2.73 seconds. real 0m8.216s user 0m8.190s sys 0m0.000s (begin (fibo n)) returned 9227465 in 2.6 seconds. (begin (fibo n)) returned 9227465 in 2.61 seconds. (begin (fibo n)) returned 9227465 in 2.61 seconds. real 0m7.835s user 0m7.820s sys 0m0.020s (begin (fibo n)) returned 9227465 in 2.97 seconds. (begin (fibo n)) returned 9227465 in 2.97 seconds. (begin (fibo n)) returned 9227465 in 2.98 seconds. real 0m8.933s user 0m8.910s sys 0m0.000s (begin (fibo n)) returned 9227465 in 2.61 seconds. (begin (fibo n)) returned 9227465 in 2.6 seconds. (begin (fibo n)) returned 9227465 in 2.61 seconds. real 0m7.826s user 0m7.810s sys 0m0.010s (begin (fibo n)) returned 9227465 in 2.92 seconds. (begin (fibo n)) returned 9227465 in 2.93 seconds. (begin (fibo n)) returned 9227465 in 2.92 seconds. real 0m8.789s user 0m8.780s sys 0m0.000s (begin (fibo n)) returned 9227465 in 2.55 seconds. (begin (fibo n)) returned 9227465 in 2.55 seconds. (begin (fibo n)) returned 9227465 in 2.55 seconds. real 0m7.671s user 0m7.670s sys 0m0.000s > Could you try with a tail-recursive version? Well, of course I've used a different function :-). Here's the source q-f.scm: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D (define-macro (benchmark . body) ;; Yes, I know that this is ugly and non-hygienic. That's ;; not the problem. `(let* ((t0 (array-ref (times) 0)) (result (begin ,@body)) (t1 (array-ref (times) 0))) (format #t "~a returned ~a in ~a seconds.\n" '(begin ,@body) result (/ (- t1 t0) 100.0)) result)) (define-macro (thrice . body) `(begin ,@body ,@body ,@body)) (define (f n) (if (zero? n) 0 (f (- n 1)))) (define n 100000000) (thrice (benchmark (f n))) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D So, the result: [luca@optimum ~/tmp]$ unset GC_DONT_GC; unset GC_PRINT_STATS; rm -rf ~/.cache/guile/; for i in `seq 10`; do time guile --autocompile q-f.scm; echo; done ;;; note: autocompilation is enabled, set GUILE_AUTO_COMPILE=3D0 ;;; or pass the --no-autocompile argument to disable. ;;; compiling q-f.scm ;;; compiled /home/luca/.cache/guile/ccache/2.0-0.P-LE-8/home/luca/tmp/q-f.scm.go (begin (f n)) returned 0 in 5.19 seconds. (begin (f n)) returned 0 in 5.19 seconds. (begin (f n)) returned 0 in 5.18 seconds. real 0m15.641s user 0m15.640s sys 0m0.010s (begin (f n)) returned 0 in 5.21 seconds. (begin (f n)) returned 0 in 5.2 seconds. (begin (f n)) returned 0 in 5.2 seconds. real 0m15.631s user 0m15.620s sys 0m0.000s (begin (f n)) returned 0 in 5.18 seconds. (begin (f n)) returned 0 in 5.18 seconds. (begin (f n)) returned 0 in 5.18 seconds. real 0m15.554s user 0m15.540s sys 0m0.020s (begin (f n)) returned 0 in 5.2 seconds. (begin (f n)) returned 0 in 5.21 seconds. (begin (f n)) returned 0 in 5.2 seconds. real 0m15.621s user 0m15.630s sys 0m0.000s (begin (f n)) returned 0 in 5.05 seconds. (begin (f n)) returned 0 in 5.05 seconds. (begin (f n)) returned 0 in 5.05 seconds. real 0m15.173s user 0m15.180s sys 0m0.010s (begin (f n)) returned 0 in 5.18 seconds. (begin (f n)) returned 0 in 5.17 seconds. (begin (f n)) returned 0 in 5.18 seconds. real 0m15.550s user 0m15.550s sys 0m0.010s (begin (f n)) returned 0 in 5.24 seconds. (begin (f n)) returned 0 in 5.24 seconds. (begin (f n)) returned 0 in 5.24 seconds. real 0m15.744s user 0m15.750s sys 0m0.000s (begin (f n)) returned 0 in 5.25 seconds. (begin (f n)) returned 0 in 5.25 seconds. (begin (f n)) returned 0 in 5.24 seconds. real 0m15.773s user 0m15.770s sys 0m0.010s (begin (f n)) returned 0 in 5.2 seconds. (begin (f n)) returned 0 in 5.2 seconds. (begin (f n)) returned 0 in 5.2 seconds. real 0m15.626s user 0m15.630s sys 0m0.010s (begin (f n)) returned 0 in 5.26 seconds. (begin (f n)) returned 0 in 5.26 seconds. (begin (f n)) returned 0 in 5.26 seconds. real 0m15.793s user 0m15.800s sys 0m0.010s And with a bigger n, n =3D 1000000000: [luca@optimum ~/tmp]$ unset GC_DONT_GC; unset GC_PRINT_STATS; rm -rf ~/.cache/guile/; for i in `seq 10`; do time guile --autocompile q-f-big-n.scm; echo; done ;;; note: autocompilation is enabled, set GUILE_AUTO_COMPILE=3D0 ;;; or pass the --no-autocompile argument to disable. ;;; compiling q-f-big-n.scm ;;; compiled /home/luca/.cache/guile/ccache/2.0-0.P-LE-8/home/luca/tmp/q-f-big-n.scm.g= o (begin (f n)) returned 0 in 51.79 seconds. (begin (f n)) returned 0 in 51.77 seconds. (begin (f n)) returned 0 in 51.77 seconds. real 2m35.411s user 2m35.380s sys 0m0.050s (begin (f n)) returned 0 in 52.34 seconds. (begin (f n)) returned 0 in 52.34 seconds. (begin (f n)) returned 0 in 52.35 seconds. real 2m37.051s user 2m37.020s sys 0m0.030s (begin (f n)) returned 0 in 51.97 seconds. (begin (f n)) returned 0 in 51.97 seconds. (begin (f n)) returned 0 in 51.98 seconds. real 2m35.949s user 2m35.930s sys 0m0.010s (begin (f n)) returned 0 in 52.55 seconds. (begin (f n)) returned 0 in 52.54 seconds. (begin (f n)) returned 0 in 52.54 seconds. real 2m37.651s user 2m37.610s sys 0m0.040s (begin (f n)) returned 0 in 52.02 seconds. (begin (f n)) returned 0 in 52.03 seconds. (begin (f n)) returned 0 in 52.01 seconds. real 2m36.084s user 2m36.060s sys 0m0.040s (begin (f n)) returned 0 in 51.78 seconds. (begin (f n)) returned 0 in 51.79 seconds. (begin (f n)) returned 0 in 51.79 seconds. real 2m35.382s user 2m35.310s sys 0m0.060s (begin (f n)) returned 0 in 51.39 seconds. (begin (f n)) returned 0 in 51.39 seconds. (begin (f n)) returned 0 in 51.39 seconds. real 2m34.191s user 2m34.150s sys 0m0.040s (begin (f n)) returned 0 in 52.25 seconds. (begin (f n)) returned 0 in 52.25 seconds. (begin (f n)) returned 0 in 52.25 seconds. real 2m36.763s user 2m36.730s sys 0m0.040s (begin (f n)) returned 0 in 52.0 seconds. (begin (f n)) returned 0 in 51.99 seconds. (begin (f n)) returned 0 in 52.01 seconds. real 2m36.014s user 2m35.960s sys 0m0.050s (begin (f n)) returned 0 in 49.9 seconds. (begin (f n)) returned 0 in 49.9 seconds. (begin (f n)) returned 0 in 49.89 seconds. real 2m29.714s user 2m29.660s sys 0m0.030s The effect is much weaker in either case, when using tail-recursive functions. This is interesting. Can the problem be related to the alignment of the Guile stack? It's not related to the collector, but it may well be about stack access. Has Guile been tested recently on architectures such as Sparc, requiring aligned access? If it works reliably on Sparc, could the issue still be about alignment, but with respect to cache lines? Notice that this last program should be very cache-friendly. > Thanks, Thank you, - -- Luca Saiu http://www-lipn.univ-paris13.fr/~saiu GNU epsilon: http://www.gnu.org/software/epsilon Marionnet: http://www.marionnet.org -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAkux7/wACgkQvzOavibF0obEAgCePe61GGtoB24RNFkdM0bankXp o+4AniFih5wvlnXSP5erZXX3csWCs5u/ =3D6CMC -----END PGP SIGNATURE----- --------------030602090305040101060008 Content-Type: text/plain; name="fibo-with-GC_PRINT_STATS" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="fibo-with-GC_PRINT_STATS" W2x1Y2FAb3B0aW11bSB+L3RtcF0kIHVuc2V0IEdDX0RPTlRfR0M7IGV4cG9ydCBHQ19QUklO VF9TVEFUUz0xOyBybSAtcmYgfi8uY2FjaGUvZ3VpbGUvOyBmb3IgaSBpbiBgc2VxIDEwYDsg ZG8gdGltZSBndWlsZSAtLWF1dG9jb21waWxlIHEtZmliby5zY207IGVjaG87IGRvbmUKSW5j cmVhc2luZyBoZWFwIHNpemUgYnkgNjU1MzYgYWZ0ZXIgMCBhbGxvY2F0ZWQgYnl0ZXMKTnVt YmVyIG9mIHByb2Nlc3NvcnMgPSA4LCBudW1iZXIgb2YgbWFya2VyIHRocmVhZHMgPSA4ClN0 YXJ0ZWQgNyBtYXJrIGhlbHBlciB0aHJlYWRzCkluaXRpYXRpbmcgZnVsbCB3b3JsZC1zdG9w IGNvbGxlY3Rpb24hCgotLT4gTWFya2luZyBmb3IgY29sbGVjdGlvbiAxIGFmdGVyIDAgYWxs b2NhdGVkIGJ5dGVzCkNvbGxlY3Rpb24gMCByZWNsYWltZWQgMCBieXRlcyAtLS0+IGhlYXBz aXplID0gNjU1MzYgYnl0ZXMKV29ybGQtc3RvcHBlZCBtYXJraW5nIHRvb2sgMCBtc2VjcyAo MCBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDAgcG9pbnRlci1jb250YWluaW5nICsgMCBw b2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjAgZmluYWxpemF0aW9uIHRhYmxlIGVudHJp ZXM7IDAgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2JqZWN0cyBhcmUgZWxpZ2libGUg Zm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDAgbGlua3MgY2xlYXJlZApGaW5hbGl6ZSAr IGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29tcGxldGUgY29sbGVjdGlvbiB0 b29rIDAgbXNlY3MKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNjU1MzYgYWZ0ZXIgMCBhbGxv Y2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAzMiBncmFudWxlcyAo NTEyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDg0IGdyYW51bGVzICgx MzQ0IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDAgZ3JhbnVsZXMgKDAg Ynl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMyBncmFudWxlcyAoNDggYnl0 ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMiBncmFudWxlcyAoMzIgYnl0ZXMp CkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMSBncmFudWxlcyAoMTYgYnl0ZXMpCkFk ZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTcgZ3JhbnVsZXMgKDI3MiBieXRlcykKQWRk aW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA1IGdyYW51bGVzICg4MCBieXRlcykKQWRkaW5n IGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA0IGdyYW51bGVzICg2NCBieXRlcykKR3JldyBmbyB0 YWJsZSB0byAxIGVudHJpZXMKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNjU1MzYgYWZ0ZXIg OTk1MzYgYWxsb2NhdGVkIGJ5dGVzCkluaXRpYXRpbmcgZnVsbCB3b3JsZC1zdG9wIGNvbGxl Y3Rpb24hCgotLT4gTWFya2luZyBmb3IgY29sbGVjdGlvbiAyIGFmdGVyIDEwMzY0OCBhbGxv Y2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAxIHJlY2xhaW1lZCAwIGJ5dGVzIC0tLT4gaGVhcHNp emUgPSAxOTY2MDggYnl0ZXMKV29ybGQtc3RvcHBlZCBtYXJraW5nIHRvb2sgMCBtc2VjcyAo MCBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDg0MzY4IHBvaW50ZXItY29udGFpbmluZyAr IDE0MzIwIHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0ZXMKMSBmaW5hbGl6YXRpb24gdGFi bGUgZW50cmllczsgMCBkaXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBl bGlnaWJsZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZp bmFsaXplICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xs ZWN0aW9uIHRvb2sgMCBtc2VjcwpHcmV3IGRsIHRhYmxlIHRvIDEgZW50cmllcwpBZGRpbmcg YmxvY2sgbWFwIGZvciBzaXplIG9mIDcgZ3JhbnVsZXMgKDExMiBieXRlcykKQWRkaW5nIGJs b2NrIG1hcCBmb3Igc2l6ZSBvZiAxMyBncmFudWxlcyAoMjA4IGJ5dGVzKQpBZGRpbmcgYmxv Y2sgbWFwIGZvciBzaXplIG9mIDIwIGdyYW51bGVzICgzMjAgYnl0ZXMpCkdyZXcgZGwgdGFi bGUgdG8gMiBlbnRyaWVzCkdyZXcgZGwgdGFibGUgdG8gNCBlbnRyaWVzCkdyZXcgZGwgdGFi bGUgdG8gOCBlbnRyaWVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTIgZ3JhbnVs ZXMgKDE5MiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA4IGdyYW51bGVz ICgxMjggYnl0ZXMpCkdyZXcgZGwgdGFibGUgdG8gMTYgZW50cmllcwpJbmNyZWFzaW5nIGhl YXAgc2l6ZSBieSA2OTYzMiBhZnRlciAzMDU5MiBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJs b2NrIG1hcCBmb3Igc2l6ZSBvZiA0MiBncmFudWxlcyAoNjcyIGJ5dGVzKQpJbmNyZWFzaW5n IGhlYXAgc2l6ZSBieSA5MDExMiBhZnRlciAxMDE3NjAgYWxsb2NhdGVkIGJ5dGVzCkluY3Jl YXNpbmcgaGVhcCBzaXplIGJ5IDEyMjg4MCBhZnRlciAxODMyNDggYWxsb2NhdGVkIGJ5dGVz CkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgOSBncmFudWxlcyAoMTQ0IGJ5dGVzKQpJ bmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2ODQwMzIgYWZ0ZXIgMjA0NDMyIGFsbG9jYXRlZCBi eXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE1IGdyYW51bGVzICgyNDAgYnl0 ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTYgZ3JhbnVsZXMgKDI1NiBieXRl cykKR3JldyBkbCB0YWJsZSB0byAzMiBlbnRyaWVzCkdyZXcgZm8gdGFibGUgdG8gMiBlbnRy aWVzCkdyZXcgZm8gdGFibGUgdG8gNCBlbnRyaWVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNp emUgb2YgMTggZ3JhbnVsZXMgKDI4OCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6 ZSBvZiA2IGdyYW51bGVzICg5NiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBv ZiAxMSBncmFudWxlcyAoMTc2IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9m IDEwIGdyYW51bGVzICgxNjAgYnl0ZXMpCkluaXRpYXRpbmcgZnVsbCB3b3JsZC1zdG9wIGNv bGxlY3Rpb24hCgotLT4gTWFya2luZyBmb3IgY29sbGVjdGlvbiAzIGFmdGVyIDk2ODY4OCBh bGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAyIHJlY2xhaW1lZCA0ODk2IGJ5dGVzIC0tLT4g aGVhcHNpemUgPSAxMTYzMjY0IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFya2luZyB0b29rIDEw IG1zZWNzICgzIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgODkzMTg0IHBvaW50ZXItY29u dGFpbmluZyArIDYzMzI4IHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0ZXMKNCBmaW5hbGl6 YXRpb24gdGFibGUgZW50cmllczsgMjUgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2Jq ZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDEgbGlua3Mg Y2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29t cGxldGUgY29sbGVjdGlvbiB0b29rIDEwIG1zZWNzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5 IDM4OTEyMCBhZnRlciA1MzE2OCBhbGxvY2F0ZWQgYnl0ZXMKSW5jcmVhc2luZyBoZWFwIHNp emUgYnkgNTIwMTkyIGFmdGVyIDUxMDU0NCBhbGxvY2F0ZWQgYnl0ZXMKSW5pdGlhdGluZyBm dWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9u IDQgYWZ0ZXIgMTAzMzk2OCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAzIHJlY2xhaW1l ZCA3NzkzNiBieXRlcyAtLS0+IGhlYXBzaXplID0gMjA3MjU3NiBieXRlcwpXb3JsZC1zdG9w cGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICgyIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMg MTI1ODg2NCBwb2ludGVyLWNvbnRhaW5pbmcgKyAxNTI5MjggcG9pbnRlci1mcmVlIHJlYWNo YWJsZSBieXRlcwo0IGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAyNiBkaXNhcHBlYXJp bmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRlIGZp bmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dlZXAg dG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sgMCBtc2VjcwpJbmNy ZWFzaW5nIGhlYXAgc2l6ZSBieSA3MTY4MDAgYWZ0ZXIgMTE5MjMyIGFsbG9jYXRlZCBieXRl cwpHcmV3IGRsIHRhYmxlIHRvIDY0IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6 ZSBvZiAxMjggZ3JhbnVsZXMgKDIwNDggYnl0ZXMpCjs7OyBub3RlOiBhdXRvY29tcGlsYXRp b24gaXMgZW5hYmxlZCwgc2V0IEdVSUxFX0FVVE9fQ09NUElMRT0wCjs7OyAgICAgICBvciBw YXNzIHRoZSAtLW5vLWF1dG9jb21waWxlIGFyZ3VtZW50IHRvIGRpc2FibGUuCjs7OyBjb21w aWxpbmcgcS1maWJvLnNjbQpJbml0aWF0aW5nIGZ1bGwgd29ybGQtc3RvcCBjb2xsZWN0aW9u IQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gNSBhZnRlciAxMjE5MzkyIGFsbG9jYXRl ZCBieXRlcwpDb2xsZWN0aW9uIDQgcmVjbGFpbWVkIDU2NzE2OCBieXRlcyAtLS0+IGhlYXBz aXplID0gMjc4OTM3NiBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1zZWNz ICgyIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgMTg2Mjk2MCBwb2ludGVyLWNvbnRhaW5p bmcgKyAyMTc5MDQgcG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRlcwo1IGZpbmFsaXphdGlv biB0YWJsZSBlbnRyaWVzOyA1NSBkaXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3Rz IGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVh cmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0 ZSBjb2xsZWN0aW9uIHRvb2sgMCBtc2VjcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA5MzM4 ODggYWZ0ZXIgMjg0MzUyIGFsbG9jYXRlZCBieXRlcwpJbml0aWF0aW5nIGZ1bGwgd29ybGQt c3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gNiBhZnRlciAx NDkwNjQwIGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDUgcmVjbGFpbWVkIDU2MDIyNCBi eXRlcyAtLS0+IGhlYXBzaXplID0gMzcyMzI2NCBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtp bmcgdG9vayAwIG1zZWNzICgxIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgMjUwNzEyMCBw b2ludGVyLWNvbnRhaW5pbmcgKyAzMTkxMjAgcG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRl cwo1IGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyA2NSBkaXNhcHBlYXJpbmcgbGlua3Mg YWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlv bjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsg MCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sgMCBtc2VjcwpJbmNyZWFzaW5nIGhl YXAgc2l6ZSBieSAxMjQ5MjgwIGFmdGVyIDM4MjQgYWxsb2NhdGVkIGJ5dGVzCkdyZXcgZGwg dGFibGUgdG8gMTI4IGVudHJpZXMKR3JldyBmbyB0YWJsZSB0byA4IGVudHJpZXMKQWRkaW5n IGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAyMyBncmFudWxlcyAoMzY4IGJ5dGVzKQpBZGRpbmcg YmxvY2sgbWFwIGZvciBzaXplIG9mIDUwIGdyYW51bGVzICg4MDAgYnl0ZXMpCkluaXRpYXRp bmcgZnVsbCB3b3JsZC1zdG9wIGNvbGxlY3Rpb24hCgotLT4gTWFya2luZyBmb3IgY29sbGVj dGlvbiA3IGFmdGVyIDE5NjM4ODggYWxsb2NhdGVkIGJ5dGVzCkNvbGxlY3Rpb24gNiByZWNs YWltZWQgNzczNzkyIGJ5dGVzIC0tLT4gaGVhcHNpemUgPSA0OTcyNTQ0IGJ5dGVzCldvcmxk LXN0b3BwZWQgbWFya2luZyB0b29rIDEwIG1zZWNzICgyIGluIGF2ZXJhZ2UpCkhlYXAgY29u dGFpbnMgMzM2ODQxNiBwb2ludGVyLWNvbnRhaW5pbmcgKyA0MTIzODQgcG9pbnRlci1mcmVl IHJlYWNoYWJsZSBieXRlcwo3IGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAxMjkgZGlz YXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2JqZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVk aWF0ZSBmaW5hbGl6YXRpb247IDAgbGlua3MgY2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRl IHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29tcGxldGUgY29sbGVjdGlvbiB0b29rIDEwIG1z ZWNzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTkgZ3JhbnVsZXMgKDMwNCBieXRl cykKR3JldyBkbCB0YWJsZSB0byAyNTYgZW50cmllcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBi eSAxNjU4ODgwIGFmdGVyIDM3MjY0MCBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1h cCBmb3Igc2l6ZSBvZiAxNCBncmFudWxlcyAoMjI0IGJ5dGVzKQpJbml0aWF0aW5nIGZ1bGwg d29ybGQtc3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gOCBh ZnRlciAyNjEzOTUyIGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDcgcmVjbGFpbWVkIDk5 NzA4OCBieXRlcyAtLS0+IGhlYXBzaXplID0gNjYzMTQyNCBieXRlcwpXb3JsZC1zdG9wcGVk IG1hcmtpbmcgdG9vayAxMCBtc2VjcyAoMyBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDQz NzI0MDAgcG9pbnRlci1jb250YWluaW5nICsgNTYwMTc2IHBvaW50ZXItZnJlZSByZWFjaGFi bGUgYnl0ZXMKNyBmaW5hbGl6YXRpb24gdGFibGUgZW50cmllczsgMTQ1IGRpc2FwcGVhcmlu ZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBpbW1lZGlhdGUgZmlu YWxpemF0aW9uOyA0MyBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dlZXAg dG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sgMTAgbXNlY3MKSW5j cmVhc2luZyBoZWFwIHNpemUgYnkgMjIxMTg0MCBhZnRlciAyMzgwNjQgYWxsb2NhdGVkIGJ5 dGVzCjs7OyBjb21waWxlZCAvaG9tZS9sdWNhLy5jYWNoZS9ndWlsZS9jY2FjaGUvMi4wLTAu UC1MRS04L2hvbWUvbHVjYS90bXAvcS1maWJvLnNjbS5nbwooYmVnaW4gKGZpYm8gbikpIHJl dHVybmVkIDkyMjc0NjUgaW4gMi41NiBzZWNvbmRzLgooYmVnaW4gKGZpYm8gbikpIHJldHVy bmVkIDkyMjc0NjUgaW4gMi41NiBzZWNvbmRzLgooYmVnaW4gKGZpYm8gbikpIHJldHVybmVk IDkyMjc0NjUgaW4gMi41NiBzZWNvbmRzLgoKcmVhbAkwbTcuNzY4cwp1c2VyCTBtNy43NjBz CnN5cwkwbTAuMDAwcwoKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNjU1MzYgYWZ0ZXIgMCBh bGxvY2F0ZWQgYnl0ZXMKTnVtYmVyIG9mIHByb2Nlc3NvcnMgPSA4LCBudW1iZXIgb2YgbWFy a2VyIHRocmVhZHMgPSA4ClN0YXJ0ZWQgNyBtYXJrIGhlbHBlciB0aHJlYWRzCkluaXRpYXRp bmcgZnVsbCB3b3JsZC1zdG9wIGNvbGxlY3Rpb24hCgotLT4gTWFya2luZyBmb3IgY29sbGVj dGlvbiAxIGFmdGVyIDAgYWxsb2NhdGVkIGJ5dGVzCkNvbGxlY3Rpb24gMCByZWNsYWltZWQg MCBieXRlcyAtLS0+IGhlYXBzaXplID0gNjU1MzYgYnl0ZXMKV29ybGQtc3RvcHBlZCBtYXJr aW5nIHRvb2sgMCBtc2VjcyAoMCBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDAgcG9pbnRl ci1jb250YWluaW5nICsgMCBwb2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjAgZmluYWxp emF0aW9uIHRhYmxlIGVudHJpZXM7IDAgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2Jq ZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDAgbGlua3Mg Y2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29t cGxldGUgY29sbGVjdGlvbiB0b29rIDAgbXNlY3MKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkg NjU1MzYgYWZ0ZXIgMCBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6 ZSBvZiAzMiBncmFudWxlcyAoNTEyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXpl IG9mIDg0IGdyYW51bGVzICgxMzQ0IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXpl IG9mIDAgZ3JhbnVsZXMgKDAgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2Yg MyBncmFudWxlcyAoNDggYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMiBn cmFudWxlcyAoMzIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMSBncmFu dWxlcyAoMTYgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTcgZ3JhbnVs ZXMgKDI3MiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA1IGdyYW51bGVz ICg4MCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA0IGdyYW51bGVzICg2 NCBieXRlcykKR3JldyBmbyB0YWJsZSB0byAxIGVudHJpZXMKSW5jcmVhc2luZyBoZWFwIHNp emUgYnkgNjU1MzYgYWZ0ZXIgOTk1MzYgYWxsb2NhdGVkIGJ5dGVzCkluaXRpYXRpbmcgZnVs bCB3b3JsZC1zdG9wIGNvbGxlY3Rpb24hCgotLT4gTWFya2luZyBmb3IgY29sbGVjdGlvbiAy IGFmdGVyIDEwMzY0OCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAxIHJlY2xhaW1lZCAw IGJ5dGVzIC0tLT4gaGVhcHNpemUgPSAxOTY2MDggYnl0ZXMKV29ybGQtc3RvcHBlZCBtYXJr aW5nIHRvb2sgMCBtc2VjcyAoMCBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDgzNjY0IHBv aW50ZXItY29udGFpbmluZyArIDE0MzIwIHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0ZXMK MSBmaW5hbGl6YXRpb24gdGFibGUgZW50cmllczsgMCBkaXNhcHBlYXJpbmcgbGlua3MgYWxp dmUKMCBvYmplY3RzIGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlvbjsg MCBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsgMCBt c2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sgMCBtc2VjcwpHcmV3IGRsIHRhYmxlIHRv IDEgZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDcgZ3JhbnVsZXMgKDEx MiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxMyBncmFudWxlcyAoMjA4 IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDIwIGdyYW51bGVzICgzMjAg Ynl0ZXMpCkdyZXcgZGwgdGFibGUgdG8gMiBlbnRyaWVzCkdyZXcgZGwgdGFibGUgdG8gNCBl bnRyaWVzCkdyZXcgZGwgdGFibGUgdG8gOCBlbnRyaWVzCkFkZGluZyBibG9jayBtYXAgZm9y IHNpemUgb2YgMTIgZ3JhbnVsZXMgKDE5MiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Ig c2l6ZSBvZiA4IGdyYW51bGVzICgxMjggYnl0ZXMpCkdyZXcgZGwgdGFibGUgdG8gMTYgZW50 cmllcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2OTYzMiBhZnRlciAzMDU5MiBhbGxvY2F0 ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA0MiBncmFudWxlcyAoNjcy IGJ5dGVzKQpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA5MDExMiBhZnRlciAxMDE3NjAgYWxs b2NhdGVkIGJ5dGVzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDEyMjg4MCBhZnRlciAxODcz NDQgYWxsb2NhdGVkIGJ5dGVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgOSBncmFu dWxlcyAoMTQ0IGJ5dGVzKQpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2ODQwMzIgYWZ0ZXIg MjA0NDMyIGFsbG9jYXRlZCBieXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE1 IGdyYW51bGVzICgyNDAgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTYg Z3JhbnVsZXMgKDI1NiBieXRlcykKR3JldyBkbCB0YWJsZSB0byAzMiBlbnRyaWVzCkdyZXcg Zm8gdGFibGUgdG8gMiBlbnRyaWVzCkdyZXcgZm8gdGFibGUgdG8gNCBlbnRyaWVzCkFkZGlu ZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTggZ3JhbnVsZXMgKDI4OCBieXRlcykKQWRkaW5n IGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA2IGdyYW51bGVzICg5NiBieXRlcykKQWRkaW5nIGJs b2NrIG1hcCBmb3Igc2l6ZSBvZiAxMSBncmFudWxlcyAoMTc2IGJ5dGVzKQpBZGRpbmcgYmxv Y2sgbWFwIGZvciBzaXplIG9mIDEwIGdyYW51bGVzICgxNjAgYnl0ZXMpCkluaXRpYXRpbmcg ZnVsbCB3b3JsZC1zdG9wIGNvbGxlY3Rpb24hCgotLT4gTWFya2luZyBmb3IgY29sbGVjdGlv biAzIGFmdGVyIDk3Njg4MCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAyIHJlY2xhaW1l ZCA0ODk2IGJ5dGVzIC0tLT4gaGVhcHNpemUgPSAxMTYzMjY0IGJ5dGVzCldvcmxkLXN0b3Bw ZWQgbWFya2luZyB0b29rIDEwIG1zZWNzICgzIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMg ODk1NzEyIHBvaW50ZXItY29udGFpbmluZyArIDYwODgwIHBvaW50ZXItZnJlZSByZWFjaGFi bGUgYnl0ZXMKNCBmaW5hbGl6YXRpb24gdGFibGUgZW50cmllczsgMjUgZGlzYXBwZWFyaW5n IGxpbmtzIGFsaXZlCjAgb2JqZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5h bGl6YXRpb247IDEgbGlua3MgY2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRv b2sgMCArIDAgbXNlY3MKQ29tcGxldGUgY29sbGVjdGlvbiB0b29rIDEwIG1zZWNzCkluY3Jl YXNpbmcgaGVhcCBzaXplIGJ5IDM4OTEyMCBhZnRlciA2NzcxMiBhbGxvY2F0ZWQgYnl0ZXMK SW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNTIwMTkyIGFmdGVyIDUxNTM2MCBhbGxvY2F0ZWQg Ynl0ZXMKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJr aW5nIGZvciBjb2xsZWN0aW9uIDQgYWZ0ZXIgMTAzODY3MiBhbGxvY2F0ZWQgYnl0ZXMKQ29s bGVjdGlvbiAzIHJlY2xhaW1lZCA3ODU2MCBieXRlcyAtLS0+IGhlYXBzaXplID0gMjA3MjU3 NiBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICgyIGluIGF2ZXJh Z2UpCkhlYXAgY29udGFpbnMgMTI1OTI2NCBwb2ludGVyLWNvbnRhaW5pbmcgKyAxNTE1NTIg cG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRlcwo0IGZpbmFsaXphdGlvbiB0YWJsZSBlbnRy aWVzOyAyNiBkaXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJs ZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXpl ICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9u IHRvb2sgMCBtc2VjcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA3MTY4MDAgYWZ0ZXIgMTAx NzkyIGFsbG9jYXRlZCBieXRlcwpHcmV3IGRsIHRhYmxlIHRvIDY0IGVudHJpZXMKQWRkaW5n IGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxMjggZ3JhbnVsZXMgKDIwNDggYnl0ZXMpCihiZWdp biAoZmlibyBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjgzIHNlY29uZHMuCihiZWdpbiAo ZmlibyBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjgzIHNlY29uZHMuCihiZWdpbiAoZmli byBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjgzIHNlY29uZHMuCgpyZWFsCTBtOC41MTVz CnVzZXIJMG04LjUxMHMKc3lzCTBtMC4wMDBzCgpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2 NTUzNiBhZnRlciAwIGFsbG9jYXRlZCBieXRlcwpOdW1iZXIgb2YgcHJvY2Vzc29ycyA9IDgs IG51bWJlciBvZiBtYXJrZXIgdGhyZWFkcyA9IDgKU3RhcnRlZCA3IG1hcmsgaGVscGVyIHRo cmVhZHMKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJr aW5nIGZvciBjb2xsZWN0aW9uIDEgYWZ0ZXIgMCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlv biAwIHJlY2xhaW1lZCAwIGJ5dGVzIC0tLT4gaGVhcHNpemUgPSA2NTUzNiBieXRlcwpXb3Js ZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAxMCBtc2VjcyAoMTAgaW4gYXZlcmFnZSkKSGVhcCBj b250YWlucyAwIHBvaW50ZXItY29udGFpbmluZyArIDAgcG9pbnRlci1mcmVlIHJlYWNoYWJs ZSBieXRlcwowIGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAwIGRpc2FwcGVhcmluZyBs aW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBpbW1lZGlhdGUgZmluYWxp emF0aW9uOyAwIGxpbmtzIGNsZWFyZWQKRmluYWxpemUgKyBpbml0aWF0ZSBzd2VlcCB0b29r IDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9vayAxMCBtc2VjcwpJbmNyZWFz aW5nIGhlYXAgc2l6ZSBieSA2NTUzNiBhZnRlciAwIGFsbG9jYXRlZCBieXRlcwpBZGRpbmcg YmxvY2sgbWFwIGZvciBzaXplIG9mIDMyIGdyYW51bGVzICg1MTIgYnl0ZXMpCkFkZGluZyBi bG9jayBtYXAgZm9yIHNpemUgb2YgODQgZ3JhbnVsZXMgKDEzNDQgYnl0ZXMpCkFkZGluZyBi bG9jayBtYXAgZm9yIHNpemUgb2YgMCBncmFudWxlcyAoMCBieXRlcykKQWRkaW5nIGJsb2Nr IG1hcCBmb3Igc2l6ZSBvZiAzIGdyYW51bGVzICg0OCBieXRlcykKQWRkaW5nIGJsb2NrIG1h cCBmb3Igc2l6ZSBvZiAyIGdyYW51bGVzICgzMiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBm b3Igc2l6ZSBvZiAxIGdyYW51bGVzICgxNiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Ig c2l6ZSBvZiAxNyBncmFudWxlcyAoMjcyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBz aXplIG9mIDUgZ3JhbnVsZXMgKDgwIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXpl IG9mIDQgZ3JhbnVsZXMgKDY0IGJ5dGVzKQpHcmV3IGZvIHRhYmxlIHRvIDEgZW50cmllcwpJ bmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2NTUzNiBhZnRlciA5OTUzNiBhbGxvY2F0ZWQgYnl0 ZXMKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5n IGZvciBjb2xsZWN0aW9uIDIgYWZ0ZXIgMTAzNjQ4IGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0 aW9uIDEgcmVjbGFpbWVkIDAgYnl0ZXMgLS0tPiBoZWFwc2l6ZSA9IDE5NjYwOCBieXRlcwpX b3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICg1IGluIGF2ZXJhZ2UpCkhlYXAg Y29udGFpbnMgODQzNTIgcG9pbnRlci1jb250YWluaW5nICsgMTQzMjAgcG9pbnRlci1mcmVl IHJlYWNoYWJsZSBieXRlcwoxIGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAwIGRpc2Fw cGVhcmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBpbW1lZGlh dGUgZmluYWxpemF0aW9uOyAwIGxpbmtzIGNsZWFyZWQKRmluYWxpemUgKyBpbml0aWF0ZSBz d2VlcCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9vayAwIG1zZWNz CkdyZXcgZGwgdGFibGUgdG8gMSBlbnRyaWVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUg b2YgNyBncmFudWxlcyAoMTEyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9m IDEzIGdyYW51bGVzICgyMDggYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2Yg MjAgZ3JhbnVsZXMgKDMyMCBieXRlcykKR3JldyBkbCB0YWJsZSB0byAyIGVudHJpZXMKR3Jl dyBkbCB0YWJsZSB0byA0IGVudHJpZXMKR3JldyBkbCB0YWJsZSB0byA4IGVudHJpZXMKQWRk aW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxMiBncmFudWxlcyAoMTkyIGJ5dGVzKQpBZGRp bmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDggZ3JhbnVsZXMgKDEyOCBieXRlcykKR3JldyBk bCB0YWJsZSB0byAxNiBlbnRyaWVzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY5NjMyIGFm dGVyIDMwNTkyIGFsbG9jYXRlZCBieXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9m IDQyIGdyYW51bGVzICg2NzIgYnl0ZXMpCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDkwMTEy IGFmdGVyIDEwMTc2MCBhbGxvY2F0ZWQgYnl0ZXMKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkg MTIyODgwIGFmdGVyIDE4NzM0NCBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBm b3Igc2l6ZSBvZiA5IGdyYW51bGVzICgxNDQgYnl0ZXMpCkluY3JlYXNpbmcgaGVhcCBzaXpl IGJ5IDY4NDAzMiBhZnRlciAyMDQ0MzIgYWxsb2NhdGVkIGJ5dGVzCkFkZGluZyBibG9jayBt YXAgZm9yIHNpemUgb2YgMTUgZ3JhbnVsZXMgKDI0MCBieXRlcykKQWRkaW5nIGJsb2NrIG1h cCBmb3Igc2l6ZSBvZiAxNiBncmFudWxlcyAoMjU2IGJ5dGVzKQpHcmV3IGRsIHRhYmxlIHRv IDMyIGVudHJpZXMKR3JldyBmbyB0YWJsZSB0byAyIGVudHJpZXMKR3JldyBmbyB0YWJsZSB0 byA0IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxOCBncmFudWxlcyAo Mjg4IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDYgZ3JhbnVsZXMgKDk2 IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDExIGdyYW51bGVzICgxNzYg Ynl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTAgZ3JhbnVsZXMgKDE2MCBi eXRlcykKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJr aW5nIGZvciBjb2xsZWN0aW9uIDMgYWZ0ZXIgOTc2ODgwIGFsbG9jYXRlZCBieXRlcwpDb2xs ZWN0aW9uIDIgcmVjbGFpbWVkIDQ4OTYgYnl0ZXMgLS0tPiBoZWFwc2l6ZSA9IDExNjMyNjQg Ynl0ZXMKV29ybGQtc3RvcHBlZCBtYXJraW5nIHRvb2sgMCBtc2VjcyAoMyBpbiBhdmVyYWdl KQpIZWFwIGNvbnRhaW5zIDg5NDI3MiBwb2ludGVyLWNvbnRhaW5pbmcgKyA2MDQ2NCBwb2lu dGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjQgZmluYWxpemF0aW9uIHRhYmxlIGVudHJpZXM7 IDI1IGRpc2FwcGVhcmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxlIGZv ciBpbW1lZGlhdGUgZmluYWxpemF0aW9uOyAxIGxpbmtzIGNsZWFyZWQKRmluYWxpemUgKyBp bml0aWF0ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9v ayAwIG1zZWNzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDM4OTEyMCBhZnRlciA3MjI0MCBh bGxvY2F0ZWQgYnl0ZXMKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNTIwMTkyIGFmdGVyIDUx NTc5MiBhbGxvY2F0ZWQgYnl0ZXMKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVj dGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDQgYWZ0ZXIgMTAzOTEwNCBhbGxv Y2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAzIHJlY2xhaW1lZCA3ODk5MiBieXRlcyAtLS0+IGhl YXBzaXplID0gMjA3MjU3NiBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1z ZWNzICgyIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgMTI1OTE4NCBwb2ludGVyLWNvbnRh aW5pbmcgKyAxNTA5OTIgcG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRlcwo0IGZpbmFsaXph dGlvbiB0YWJsZSBlbnRyaWVzOyAyNiBkaXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmpl Y3RzIGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBj bGVhcmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21w bGV0ZSBjb2xsZWN0aW9uIHRvb2sgMCBtc2VjcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA3 MTY4MDAgYWZ0ZXIgMTA0OTI4IGFsbG9jYXRlZCBieXRlcwpHcmV3IGRsIHRhYmxlIHRvIDY0 IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxMjggZ3JhbnVsZXMgKDIw NDggYnl0ZXMpCihiZWdpbiAoZmlibyBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjkzIHNl Y29uZHMuCihiZWdpbiAoZmlibyBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjk0IHNlY29u ZHMuCihiZWdpbiAoZmlibyBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjkzIHNlY29uZHMu CgpyZWFsCTBtOC44MjJzCnVzZXIJMG04LjgyMHMKc3lzCTBtMC4wMzBzCgpJbmNyZWFzaW5n IGhlYXAgc2l6ZSBieSA2NTUzNiBhZnRlciAwIGFsbG9jYXRlZCBieXRlcwpOdW1iZXIgb2Yg cHJvY2Vzc29ycyA9IDgsIG51bWJlciBvZiBtYXJrZXIgdGhyZWFkcyA9IDgKU3RhcnRlZCA3 IG1hcmsgaGVscGVyIHRocmVhZHMKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVj dGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDEgYWZ0ZXIgMCBhbGxvY2F0ZWQg Ynl0ZXMKQ29sbGVjdGlvbiAwIHJlY2xhaW1lZCAwIGJ5dGVzIC0tLT4gaGVhcHNpemUgPSA2 NTUzNiBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICgwIGluIGF2 ZXJhZ2UpCkhlYXAgY29udGFpbnMgMCBwb2ludGVyLWNvbnRhaW5pbmcgKyAwIHBvaW50ZXIt ZnJlZSByZWFjaGFibGUgYnl0ZXMKMCBmaW5hbGl6YXRpb24gdGFibGUgZW50cmllczsgMCBk aXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJsZSBmb3IgaW1t ZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5pdGlh dGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sgMCBt c2VjcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2NTUzNiBhZnRlciAwIGFsbG9jYXRlZCBi eXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDMyIGdyYW51bGVzICg1MTIgYnl0 ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgODQgZ3JhbnVsZXMgKDEzNDQgYnl0 ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMCBncmFudWxlcyAoMCBieXRlcykK QWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAzIGdyYW51bGVzICg0OCBieXRlcykKQWRk aW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAyIGdyYW51bGVzICgzMiBieXRlcykKQWRkaW5n IGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxIGdyYW51bGVzICgxNiBieXRlcykKQWRkaW5nIGJs b2NrIG1hcCBmb3Igc2l6ZSBvZiAxNyBncmFudWxlcyAoMjcyIGJ5dGVzKQpBZGRpbmcgYmxv Y2sgbWFwIGZvciBzaXplIG9mIDUgZ3JhbnVsZXMgKDgwIGJ5dGVzKQpBZGRpbmcgYmxvY2sg bWFwIGZvciBzaXplIG9mIDQgZ3JhbnVsZXMgKDY0IGJ5dGVzKQpHcmV3IGZvIHRhYmxlIHRv IDEgZW50cmllcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2NTUzNiBhZnRlciA5NTQ0MCBh bGxvY2F0ZWQgYnl0ZXMKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEK Ci0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDIgYWZ0ZXIgMTAzNjQ4IGFsbG9jYXRlZCBi eXRlcwpDb2xsZWN0aW9uIDEgcmVjbGFpbWVkIDAgYnl0ZXMgLS0tPiBoZWFwc2l6ZSA9IDE5 NjYwOCBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICgwIGluIGF2 ZXJhZ2UpCkhlYXAgY29udGFpbnMgODQzNTIgcG9pbnRlci1jb250YWluaW5nICsgMTg0MTYg cG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRlcwoxIGZpbmFsaXphdGlvbiB0YWJsZSBlbnRy aWVzOyAwIGRpc2FwcGVhcmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxl IGZvciBpbW1lZGlhdGUgZmluYWxpemF0aW9uOyAwIGxpbmtzIGNsZWFyZWQKRmluYWxpemUg KyBpbml0aWF0ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rpb24g dG9vayAwIG1zZWNzCkdyZXcgZGwgdGFibGUgdG8gMSBlbnRyaWVzCkFkZGluZyBibG9jayBt YXAgZm9yIHNpemUgb2YgNyBncmFudWxlcyAoMTEyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFw IGZvciBzaXplIG9mIDEzIGdyYW51bGVzICgyMDggYnl0ZXMpCkFkZGluZyBibG9jayBtYXAg Zm9yIHNpemUgb2YgMjAgZ3JhbnVsZXMgKDMyMCBieXRlcykKR3JldyBkbCB0YWJsZSB0byAy IGVudHJpZXMKR3JldyBkbCB0YWJsZSB0byA0IGVudHJpZXMKR3JldyBkbCB0YWJsZSB0byA4 IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxMiBncmFudWxlcyAoMTky IGJ5dGVzKQpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2OTYzMiBhZnRlciAzMDAwMCBhbGxv Y2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA4IGdyYW51bGVzICgx MjggYnl0ZXMpCkdyZXcgZGwgdGFibGUgdG8gMTYgZW50cmllcwpBZGRpbmcgYmxvY2sgbWFw IGZvciBzaXplIG9mIDQyIGdyYW51bGVzICg2NzIgYnl0ZXMpCkluY3JlYXNpbmcgaGVhcCBz aXplIGJ5IDkwMTEyIGFmdGVyIDEwMTc2MCBhbGxvY2F0ZWQgYnl0ZXMKSW5jcmVhc2luZyBo ZWFwIHNpemUgYnkgMTIyODgwIGFmdGVyIDE4NzM0NCBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5n IGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA5IGdyYW51bGVzICgxNDQgYnl0ZXMpCkluY3JlYXNp bmcgaGVhcCBzaXplIGJ5IDY4NDAzMiBhZnRlciAyMDQ0MzIgYWxsb2NhdGVkIGJ5dGVzCkFk ZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTUgZ3JhbnVsZXMgKDI0MCBieXRlcykKQWRk aW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxNiBncmFudWxlcyAoMjU2IGJ5dGVzKQpHcmV3 IGRsIHRhYmxlIHRvIDMyIGVudHJpZXMKR3JldyBmbyB0YWJsZSB0byAyIGVudHJpZXMKR3Jl dyBmbyB0YWJsZSB0byA0IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAx OCBncmFudWxlcyAoMjg4IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDYg Z3JhbnVsZXMgKDk2IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDExIGdy YW51bGVzICgxNzYgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTAgZ3Jh bnVsZXMgKDE2MCBieXRlcykKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlv biEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDMgYWZ0ZXIgOTc2ODgwIGFsbG9jYXRl ZCBieXRlcwpDb2xsZWN0aW9uIDIgcmVjbGFpbWVkIDQ4OTYgYnl0ZXMgLS0tPiBoZWFwc2l6 ZSA9IDExNjMyNjQgYnl0ZXMKV29ybGQtc3RvcHBlZCBtYXJraW5nIHRvb2sgMCBtc2VjcyAo MCBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDg5NTg0MCBwb2ludGVyLWNvbnRhaW5pbmcg KyA2NTAyNCBwb2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjQgZmluYWxpemF0aW9uIHRh YmxlIGVudHJpZXM7IDI1IGRpc2FwcGVhcmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJl IGVsaWdpYmxlIGZvciBpbW1lZGlhdGUgZmluYWxpemF0aW9uOyAxIGxpbmtzIGNsZWFyZWQK RmluYWxpemUgKyBpbml0aWF0ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNv bGxlY3Rpb24gdG9vayAwIG1zZWNzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDM4OTEyMCBh ZnRlciA3MjI0MCBhbGxvY2F0ZWQgYnl0ZXMKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNTIw MTkyIGFmdGVyIDUxNTc5MiBhbGxvY2F0ZWQgYnl0ZXMKSW5pdGlhdGluZyBmdWxsIHdvcmxk LXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDQgYWZ0ZXIg MTAzOTEwNCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAzIHJlY2xhaW1lZCA3NDg5NiBi eXRlcyAtLS0+IGhlYXBzaXplID0gMjA3MjU3NiBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtp bmcgdG9vayAxMCBtc2VjcyAoMiBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDEyNjE5NTIg cG9pbnRlci1jb250YWluaW5nICsgMTU1NjY0IHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0 ZXMKNCBmaW5hbGl6YXRpb24gdGFibGUgZW50cmllczsgMjYgZGlzYXBwZWFyaW5nIGxpbmtz IGFsaXZlCjAgb2JqZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRp b247IDAgbGlua3MgY2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCAr IDAgbXNlY3MKQ29tcGxldGUgY29sbGVjdGlvbiB0b29rIDEwIG1zZWNzCkluY3JlYXNpbmcg aGVhcCBzaXplIGJ5IDcxNjgwMCBhZnRlciAxMDY2NTYgYWxsb2NhdGVkIGJ5dGVzCkdyZXcg ZGwgdGFibGUgdG8gNjQgZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDEy OCBncmFudWxlcyAoMjA0OCBieXRlcykKKGJlZ2luIChmaWJvIG4pKSByZXR1cm5lZCA5MjI3 NDY1IGluIDIuODEgc2Vjb25kcy4KKGJlZ2luIChmaWJvIG4pKSByZXR1cm5lZCA5MjI3NDY1 IGluIDIuOCBzZWNvbmRzLgooYmVnaW4gKGZpYm8gbikpIHJldHVybmVkIDkyMjc0NjUgaW4g Mi44IHNlY29uZHMuCgpyZWFsCTBtOC40MjZzCnVzZXIJMG04LjQyMHMKc3lzCTBtMC4wMDBz CgpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2NTUzNiBhZnRlciAwIGFsbG9jYXRlZCBieXRl cwpOdW1iZXIgb2YgcHJvY2Vzc29ycyA9IDgsIG51bWJlciBvZiBtYXJrZXIgdGhyZWFkcyA9 IDgKU3RhcnRlZCA3IG1hcmsgaGVscGVyIHRocmVhZHMKSW5pdGlhdGluZyBmdWxsIHdvcmxk LXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDEgYWZ0ZXIg MCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAwIHJlY2xhaW1lZCAwIGJ5dGVzIC0tLT4g aGVhcHNpemUgPSA2NTUzNiBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1z ZWNzICgwIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgMCBwb2ludGVyLWNvbnRhaW5pbmcg KyAwIHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0ZXMKMCBmaW5hbGl6YXRpb24gdGFibGUg ZW50cmllczsgMCBkaXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBlbGln aWJsZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFs aXplICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0 aW9uIHRvb2sgMCBtc2VjcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2NTUzNiBhZnRlciAw IGFsbG9jYXRlZCBieXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDMyIGdyYW51 bGVzICg1MTIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgODQgZ3JhbnVs ZXMgKDEzNDQgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMCBncmFudWxl cyAoMCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAzIGdyYW51bGVzICg0 OCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAyIGdyYW51bGVzICgzMiBi eXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxIGdyYW51bGVzICgxNiBieXRl cykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxNyBncmFudWxlcyAoMjcyIGJ5dGVz KQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDUgZ3JhbnVsZXMgKDgwIGJ5dGVzKQpB ZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDQgZ3JhbnVsZXMgKDY0IGJ5dGVzKQpHcmV3 IGZvIHRhYmxlIHRvIDEgZW50cmllcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2NTUzNiBh ZnRlciA5OTUzNiBhbGxvY2F0ZWQgYnl0ZXMKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3Ag Y29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDIgYWZ0ZXIgMTAzNjQ4 IGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDEgcmVjbGFpbWVkIDAgYnl0ZXMgLS0tPiBo ZWFwc2l6ZSA9IDE5NjYwOCBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1z ZWNzICgwIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgODQzNjggcG9pbnRlci1jb250YWlu aW5nICsgMTQzMjAgcG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRlcwoxIGZpbmFsaXphdGlv biB0YWJsZSBlbnRyaWVzOyAwIGRpc2FwcGVhcmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMg YXJlIGVsaWdpYmxlIGZvciBpbW1lZGlhdGUgZmluYWxpemF0aW9uOyAwIGxpbmtzIGNsZWFy ZWQKRmluYWxpemUgKyBpbml0aWF0ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRl IGNvbGxlY3Rpb24gdG9vayAwIG1zZWNzCkdyZXcgZGwgdGFibGUgdG8gMSBlbnRyaWVzCkFk ZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNyBncmFudWxlcyAoMTEyIGJ5dGVzKQpBZGRp bmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDEzIGdyYW51bGVzICgyMDggYnl0ZXMpCkFkZGlu ZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMjAgZ3JhbnVsZXMgKDMyMCBieXRlcykKR3JldyBk bCB0YWJsZSB0byAyIGVudHJpZXMKR3JldyBkbCB0YWJsZSB0byA0IGVudHJpZXMKR3JldyBk bCB0YWJsZSB0byA4IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxMiBn cmFudWxlcyAoMTkyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDggZ3Jh bnVsZXMgKDEyOCBieXRlcykKR3JldyBkbCB0YWJsZSB0byAxNiBlbnRyaWVzCkluY3JlYXNp bmcgaGVhcCBzaXplIGJ5IDY5NjMyIGFmdGVyIDMwNTI4IGFsbG9jYXRlZCBieXRlcwpBZGRp bmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDQyIGdyYW51bGVzICg2NzIgYnl0ZXMpCkluY3Jl YXNpbmcgaGVhcCBzaXplIGJ5IDkwMTEyIGFmdGVyIDEwNTg0MCBhbGxvY2F0ZWQgYnl0ZXMK SW5jcmVhc2luZyBoZWFwIHNpemUgYnkgMTIyODgwIGFmdGVyIDE5MTM3NiBhbGxvY2F0ZWQg Ynl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA5IGdyYW51bGVzICgxNDQgYnl0 ZXMpCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY4NDAzMiBhZnRlciAyMDQzNjggYWxsb2Nh dGVkIGJ5dGVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTUgZ3JhbnVsZXMgKDI0 MCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxNiBncmFudWxlcyAoMjU2 IGJ5dGVzKQpHcmV3IGRsIHRhYmxlIHRvIDMyIGVudHJpZXMKR3JldyBmbyB0YWJsZSB0byAy IGVudHJpZXMKR3JldyBmbyB0YWJsZSB0byA0IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBm b3Igc2l6ZSBvZiAxOCBncmFudWxlcyAoMjg4IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZv ciBzaXplIG9mIDYgZ3JhbnVsZXMgKDk2IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBz aXplIG9mIDExIGdyYW51bGVzICgxNzYgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNp emUgb2YgMTAgZ3JhbnVsZXMgKDE2MCBieXRlcykKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0 b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDMgYWZ0ZXIgOTgw OTEyIGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDIgcmVjbGFpbWVkIDQ4OTYgYnl0ZXMg LS0tPiBoZWFwc2l6ZSA9IDExNjMyNjQgYnl0ZXMKV29ybGQtc3RvcHBlZCBtYXJraW5nIHRv b2sgMCBtc2VjcyAoMCBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDg5Mzc2MCBwb2ludGVy LWNvbnRhaW5pbmcgKyA2NDY0MCBwb2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjQgZmlu YWxpemF0aW9uIHRhYmxlIGVudHJpZXM7IDI1IGRpc2FwcGVhcmluZyBsaW5rcyBhbGl2ZQow IG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBpbW1lZGlhdGUgZmluYWxpemF0aW9uOyAxIGxp bmtzIGNsZWFyZWQKRmluYWxpemUgKyBpbml0aWF0ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNz CkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9vayAwIG1zZWNzCkluY3JlYXNpbmcgaGVhcCBzaXpl IGJ5IDM4OTEyMCBhZnRlciA2NDYwOCBhbGxvY2F0ZWQgYnl0ZXMKSW5jcmVhc2luZyBoZWFw IHNpemUgYnkgNTIwMTkyIGFmdGVyIDUxMTg3MiBhbGxvY2F0ZWQgYnl0ZXMKSW5pdGlhdGlu ZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0 aW9uIDQgYWZ0ZXIgMTAzNTE4NCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAzIHJlY2xh aW1lZCA3NTAwOCBieXRlcyAtLS0+IGhlYXBzaXplID0gMjA3MjU3NiBieXRlcwpXb3JsZC1z dG9wcGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICgwIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFp bnMgMTI1OTAyNCBwb2ludGVyLWNvbnRhaW5pbmcgKyAxNTEwNTYgcG9pbnRlci1mcmVlIHJl YWNoYWJsZSBieXRlcwo0IGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAyNiBkaXNhcHBl YXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRl IGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dl ZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sgMCBtc2VjcwpJ bmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA3MTY4MDAgYWZ0ZXIgMTAyNDk2IGFsbG9jYXRlZCBi eXRlcwpHcmV3IGRsIHRhYmxlIHRvIDY0IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Ig c2l6ZSBvZiAxMjggZ3JhbnVsZXMgKDIwNDggYnl0ZXMpCihiZWdpbiAoZmlibyBuKSkgcmV0 dXJuZWQgOTIyNzQ2NSBpbiAyLjc5IHNlY29uZHMuCihiZWdpbiAoZmlibyBuKSkgcmV0dXJu ZWQgOTIyNzQ2NSBpbiAyLjggc2Vjb25kcy4KKGJlZ2luIChmaWJvIG4pKSByZXR1cm5lZCA5 MjI3NDY1IGluIDIuNzkgc2Vjb25kcy4KCnJlYWwJMG04LjQwMHMKdXNlcgkwbTguMzgwcwpz eXMJMG0wLjAxMHMKCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY1NTM2IGFmdGVyIDAgYWxs b2NhdGVkIGJ5dGVzCk51bWJlciBvZiBwcm9jZXNzb3JzID0gOCwgbnVtYmVyIG9mIG1hcmtl ciB0aHJlYWRzID0gOApTdGFydGVkIDcgbWFyayBoZWxwZXIgdGhyZWFkcwpJbml0aWF0aW5n IGZ1bGwgd29ybGQtc3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rp b24gMSBhZnRlciAwIGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDAgcmVjbGFpbWVkIDAg Ynl0ZXMgLS0tPiBoZWFwc2l6ZSA9IDY1NTM2IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFya2lu ZyB0b29rIDEwIG1zZWNzICgxMCBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDAgcG9pbnRl ci1jb250YWluaW5nICsgMCBwb2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjAgZmluYWxp emF0aW9uIHRhYmxlIGVudHJpZXM7IDAgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2Jq ZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDAgbGlua3Mg Y2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29t cGxldGUgY29sbGVjdGlvbiB0b29rIDEwIG1zZWNzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5 IDY1NTM2IGFmdGVyIDAgYWxsb2NhdGVkIGJ5dGVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNp emUgb2YgMzIgZ3JhbnVsZXMgKDUxMiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6 ZSBvZiA4NCBncmFudWxlcyAoMTM0NCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6 ZSBvZiAwIGdyYW51bGVzICgwIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9m IDMgZ3JhbnVsZXMgKDQ4IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDIg Z3JhbnVsZXMgKDMyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDEgZ3Jh bnVsZXMgKDE2IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE3IGdyYW51 bGVzICgyNzIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNSBncmFudWxl cyAoODAgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNCBncmFudWxlcyAo NjQgYnl0ZXMpCkdyZXcgZm8gdGFibGUgdG8gMSBlbnRyaWVzCkluY3JlYXNpbmcgaGVhcCBz aXplIGJ5IDY1NTM2IGFmdGVyIDk5NTM2IGFsbG9jYXRlZCBieXRlcwpJbml0aWF0aW5nIGZ1 bGwgd29ybGQtc3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24g MiBhZnRlciAxMDM2NDggYWxsb2NhdGVkIGJ5dGVzCkNvbGxlY3Rpb24gMSByZWNsYWltZWQg MCBieXRlcyAtLS0+IGhlYXBzaXplID0gMTk2NjA4IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFy a2luZyB0b29rIDAgbXNlY3MgKDUgaW4gYXZlcmFnZSkKSGVhcCBjb250YWlucyA4NDM2OCBw b2ludGVyLWNvbnRhaW5pbmcgKyAxNDMyMCBwb2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVz CjEgZmluYWxpemF0aW9uIHRhYmxlIGVudHJpZXM7IDAgZGlzYXBwZWFyaW5nIGxpbmtzIGFs aXZlCjAgb2JqZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247 IDAgbGlua3MgY2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAg bXNlY3MKQ29tcGxldGUgY29sbGVjdGlvbiB0b29rIDAgbXNlY3MKR3JldyBkbCB0YWJsZSB0 byAxIGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA3IGdyYW51bGVzICgx MTIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTMgZ3JhbnVsZXMgKDIw OCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAyMCBncmFudWxlcyAoMzIw IGJ5dGVzKQpHcmV3IGRsIHRhYmxlIHRvIDIgZW50cmllcwpHcmV3IGRsIHRhYmxlIHRvIDQg ZW50cmllcwpHcmV3IGRsIHRhYmxlIHRvIDggZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZv ciBzaXplIG9mIDEyIGdyYW51bGVzICgxOTIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9y IHNpemUgb2YgOCBncmFudWxlcyAoMTI4IGJ5dGVzKQpHcmV3IGRsIHRhYmxlIHRvIDE2IGVu dHJpZXMKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNjk2MzIgYWZ0ZXIgMzA1OTIgYWxsb2Nh dGVkIGJ5dGVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNDIgZ3JhbnVsZXMgKDY3 MiBieXRlcykKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgOTAxMTIgYWZ0ZXIgMTAxNzYwIGFs bG9jYXRlZCBieXRlcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSAxMjI4ODAgYWZ0ZXIgMTg3 MzQ0IGFsbG9jYXRlZCBieXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDkgZ3Jh bnVsZXMgKDE0NCBieXRlcykKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNjg0MDMyIGFmdGVy IDIwNDQzMiBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAx NSBncmFudWxlcyAoMjQwIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE2 IGdyYW51bGVzICgyNTYgYnl0ZXMpCkdyZXcgZGwgdGFibGUgdG8gMzIgZW50cmllcwpHcmV3 IGZvIHRhYmxlIHRvIDIgZW50cmllcwpHcmV3IGZvIHRhYmxlIHRvIDQgZW50cmllcwpBZGRp bmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE4IGdyYW51bGVzICgyODggYnl0ZXMpCkFkZGlu ZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNiBncmFudWxlcyAoOTYgYnl0ZXMpCkFkZGluZyBi bG9jayBtYXAgZm9yIHNpemUgb2YgMTEgZ3JhbnVsZXMgKDE3NiBieXRlcykKQWRkaW5nIGJs b2NrIG1hcCBmb3Igc2l6ZSBvZiAxMCBncmFudWxlcyAoMTYwIGJ5dGVzKQpJbml0aWF0aW5n IGZ1bGwgd29ybGQtc3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rp b24gMyBhZnRlciA5NzY4ODAgYWxsb2NhdGVkIGJ5dGVzCkNvbGxlY3Rpb24gMiByZWNsYWlt ZWQgNDg5NiBieXRlcyAtLS0+IGhlYXBzaXplID0gMTE2MzI2NCBieXRlcwpXb3JsZC1zdG9w cGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICgzIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMg ODk0MjA4IHBvaW50ZXItY29udGFpbmluZyArIDYwNzIwIHBvaW50ZXItZnJlZSByZWFjaGFi bGUgYnl0ZXMKNCBmaW5hbGl6YXRpb24gdGFibGUgZW50cmllczsgMjUgZGlzYXBwZWFyaW5n IGxpbmtzIGFsaXZlCjAgb2JqZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5h bGl6YXRpb247IDEgbGlua3MgY2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRv b2sgMCArIDAgbXNlY3MKQ29tcGxldGUgY29sbGVjdGlvbiB0b29rIDAgbXNlY3MKSW5jcmVh c2luZyBoZWFwIHNpemUgYnkgMzg5MTIwIGFmdGVyIDY3NzEyIGFsbG9jYXRlZCBieXRlcwpJ bmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA1MjAxOTIgYWZ0ZXIgNTE1MzYwIGFsbG9jYXRlZCBi eXRlcwpJbml0aWF0aW5nIGZ1bGwgd29ybGQtc3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtp bmcgZm9yIGNvbGxlY3Rpb24gNCBhZnRlciAxMDM0NTc2IGFsbG9jYXRlZCBieXRlcwpDb2xs ZWN0aW9uIDMgcmVjbGFpbWVkIDc4NTYwIGJ5dGVzIC0tLT4gaGVhcHNpemUgPSAyMDcyNTc2 IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFya2luZyB0b29rIDEwIG1zZWNzICg1IGluIGF2ZXJh Z2UpCkhlYXAgY29udGFpbnMgMTI2MjUyOCBwb2ludGVyLWNvbnRhaW5pbmcgKyAxNDk1Njgg cG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRlcwo0IGZpbmFsaXphdGlvbiB0YWJsZSBlbnRy aWVzOyAyNiBkaXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJs ZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXpl ICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9u IHRvb2sgMTAgbXNlY3MKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNzE2ODAwIGFmdGVyIDEw ODY4OCBhbGxvY2F0ZWQgYnl0ZXMKR3JldyBkbCB0YWJsZSB0byA2NCBlbnRyaWVzCkFkZGlu ZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTI4IGdyYW51bGVzICgyMDQ4IGJ5dGVzKQooYmVn aW4gKGZpYm8gbikpIHJldHVybmVkIDkyMjc0NjUgaW4gMi45NSBzZWNvbmRzLgooYmVnaW4g KGZpYm8gbikpIHJldHVybmVkIDkyMjc0NjUgaW4gMi45NSBzZWNvbmRzLgooYmVnaW4gKGZp Ym8gbikpIHJldHVybmVkIDkyMjc0NjUgaW4gMi45NSBzZWNvbmRzLgoKcmVhbAkwbTguODcy cwp1c2VyCTBtOC44NzBzCnN5cwkwbTAuMDEwcwoKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkg NjU1MzYgYWZ0ZXIgMCBhbGxvY2F0ZWQgYnl0ZXMKTnVtYmVyIG9mIHByb2Nlc3NvcnMgPSA4 LCBudW1iZXIgb2YgbWFya2VyIHRocmVhZHMgPSA4ClN0YXJ0ZWQgNyBtYXJrIGhlbHBlciB0 aHJlYWRzCkluaXRpYXRpbmcgZnVsbCB3b3JsZC1zdG9wIGNvbGxlY3Rpb24hCgotLT4gTWFy a2luZyBmb3IgY29sbGVjdGlvbiAxIGFmdGVyIDAgYWxsb2NhdGVkIGJ5dGVzCkNvbGxlY3Rp b24gMCByZWNsYWltZWQgMCBieXRlcyAtLS0+IGhlYXBzaXplID0gNjU1MzYgYnl0ZXMKV29y bGQtc3RvcHBlZCBtYXJraW5nIHRvb2sgMCBtc2VjcyAoMCBpbiBhdmVyYWdlKQpIZWFwIGNv bnRhaW5zIDAgcG9pbnRlci1jb250YWluaW5nICsgMCBwb2ludGVyLWZyZWUgcmVhY2hhYmxl IGJ5dGVzCjAgZmluYWxpemF0aW9uIHRhYmxlIGVudHJpZXM7IDAgZGlzYXBwZWFyaW5nIGxp bmtzIGFsaXZlCjAgb2JqZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6 YXRpb247IDAgbGlua3MgY2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sg MCArIDAgbXNlY3MKQ29tcGxldGUgY29sbGVjdGlvbiB0b29rIDAgbXNlY3MKSW5jcmVhc2lu ZyBoZWFwIHNpemUgYnkgNjU1MzYgYWZ0ZXIgMCBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJs b2NrIG1hcCBmb3Igc2l6ZSBvZiAzMiBncmFudWxlcyAoNTEyIGJ5dGVzKQpBZGRpbmcgYmxv Y2sgbWFwIGZvciBzaXplIG9mIDg0IGdyYW51bGVzICgxMzQ0IGJ5dGVzKQpBZGRpbmcgYmxv Y2sgbWFwIGZvciBzaXplIG9mIDAgZ3JhbnVsZXMgKDAgYnl0ZXMpCkFkZGluZyBibG9jayBt YXAgZm9yIHNpemUgb2YgMyBncmFudWxlcyAoNDggYnl0ZXMpCkFkZGluZyBibG9jayBtYXAg Zm9yIHNpemUgb2YgMiBncmFudWxlcyAoMzIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9y IHNpemUgb2YgMSBncmFudWxlcyAoMTYgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNp emUgb2YgMTcgZ3JhbnVsZXMgKDI3MiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6 ZSBvZiA1IGdyYW51bGVzICg4MCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBv ZiA0IGdyYW51bGVzICg2NCBieXRlcykKR3JldyBmbyB0YWJsZSB0byAxIGVudHJpZXMKSW5j cmVhc2luZyBoZWFwIHNpemUgYnkgNjU1MzYgYWZ0ZXIgOTk1MzYgYWxsb2NhdGVkIGJ5dGVz CkluaXRpYXRpbmcgZnVsbCB3b3JsZC1zdG9wIGNvbGxlY3Rpb24hCgotLT4gTWFya2luZyBm b3IgY29sbGVjdGlvbiAyIGFmdGVyIDEwMzY0OCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlv biAxIHJlY2xhaW1lZCAwIGJ5dGVzIC0tLT4gaGVhcHNpemUgPSAxOTY2MDggYnl0ZXMKV29y bGQtc3RvcHBlZCBtYXJraW5nIHRvb2sgMCBtc2VjcyAoMCBpbiBhdmVyYWdlKQpIZWFwIGNv bnRhaW5zIDg0MjI0IHBvaW50ZXItY29udGFpbmluZyArIDE0MzIwIHBvaW50ZXItZnJlZSBy ZWFjaGFibGUgYnl0ZXMKMSBmaW5hbGl6YXRpb24gdGFibGUgZW50cmllczsgMCBkaXNhcHBl YXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRl IGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dl ZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sgMCBtc2VjcwpH cmV3IGRsIHRhYmxlIHRvIDEgZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9m IDcgZ3JhbnVsZXMgKDExMiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAx MyBncmFudWxlcyAoMjA4IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDIw IGdyYW51bGVzICgzMjAgYnl0ZXMpCkdyZXcgZGwgdGFibGUgdG8gMiBlbnRyaWVzCkdyZXcg ZGwgdGFibGUgdG8gNCBlbnRyaWVzCkdyZXcgZGwgdGFibGUgdG8gOCBlbnRyaWVzCkFkZGlu ZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTIgZ3JhbnVsZXMgKDE5MiBieXRlcykKQWRkaW5n IGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA4IGdyYW51bGVzICgxMjggYnl0ZXMpCkdyZXcgZGwg dGFibGUgdG8gMTYgZW50cmllcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2OTYzMiBhZnRl ciAzMDU5MiBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA0 MiBncmFudWxlcyAoNjcyIGJ5dGVzKQpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA5MDExMiBh ZnRlciA5NzY2NCBhbGxvY2F0ZWQgYnl0ZXMKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgMTIy ODgwIGFmdGVyIDE4MzI0OCBhbGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Ig c2l6ZSBvZiA5IGdyYW51bGVzICgxNDQgYnl0ZXMpCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5 IDY4NDAzMiBhZnRlciAyMDQ0MzIgYWxsb2NhdGVkIGJ5dGVzCkFkZGluZyBibG9jayBtYXAg Zm9yIHNpemUgb2YgMTUgZ3JhbnVsZXMgKDI0MCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBm b3Igc2l6ZSBvZiAxNiBncmFudWxlcyAoMjU2IGJ5dGVzKQpHcmV3IGRsIHRhYmxlIHRvIDMy IGVudHJpZXMKR3JldyBmbyB0YWJsZSB0byAyIGVudHJpZXMKR3JldyBmbyB0YWJsZSB0byA0 IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxOCBncmFudWxlcyAoMjg4 IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDYgZ3JhbnVsZXMgKDk2IGJ5 dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDExIGdyYW51bGVzICgxNzYgYnl0 ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTAgZ3JhbnVsZXMgKDE2MCBieXRl cykKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5n IGZvciBjb2xsZWN0aW9uIDMgYWZ0ZXIgOTcyNzg0IGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0 aW9uIDIgcmVjbGFpbWVkIDQ4OTYgYnl0ZXMgLS0tPiBoZWFwc2l6ZSA9IDExNjMyNjQgYnl0 ZXMKV29ybGQtc3RvcHBlZCBtYXJraW5nIHRvb2sgMCBtc2VjcyAoMCBpbiBhdmVyYWdlKQpI ZWFwIGNvbnRhaW5zIDg5MTUzNiBwb2ludGVyLWNvbnRhaW5pbmcgKyA2MjUxMiBwb2ludGVy LWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjQgZmluYWxpemF0aW9uIHRhYmxlIGVudHJpZXM7IDI1 IGRpc2FwcGVhcmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBp bW1lZGlhdGUgZmluYWxpemF0aW9uOyAxIGxpbmtzIGNsZWFyZWQKRmluYWxpemUgKyBpbml0 aWF0ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9vayAw IG1zZWNzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDM4OTEyMCBhZnRlciA3MjY1NiBhbGxv Y2F0ZWQgYnl0ZXMKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNTIwMTkyIGFmdGVyIDUxMTc2 MCBhbGxvY2F0ZWQgYnl0ZXMKSW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlv biEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDQgYWZ0ZXIgMTAzNTE4NCBhbGxvY2F0 ZWQgYnl0ZXMKQ29sbGVjdGlvbiAzIHJlY2xhaW1lZCA3OTE1MiBieXRlcyAtLS0+IGhlYXBz aXplID0gMjA3MjU3NiBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAxMCBtc2Vj cyAoMiBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDEyNTY1NDQgcG9pbnRlci1jb250YWlu aW5nICsgMTUyMzIwIHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0ZXMKNCBmaW5hbGl6YXRp b24gdGFibGUgZW50cmllczsgMjYgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2JqZWN0 cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDAgbGlua3MgY2xl YXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29tcGxl dGUgY29sbGVjdGlvbiB0b29rIDEwIG1zZWNzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDcx NjgwMCBhZnRlciAxMDg0NDggYWxsb2NhdGVkIGJ5dGVzCkdyZXcgZGwgdGFibGUgdG8gNjQg ZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDEyOCBncmFudWxlcyAoMjA0 OCBieXRlcykKKGJlZ2luIChmaWJvIG4pKSByZXR1cm5lZCA5MjI3NDY1IGluIDMuMjcgc2Vj b25kcy4KKGJlZ2luIChmaWJvIG4pKSByZXR1cm5lZCA5MjI3NDY1IGluIDMuMjYgc2Vjb25k cy4KKGJlZ2luIChmaWJvIG4pKSByZXR1cm5lZCA5MjI3NDY1IGluIDMuMjcgc2Vjb25kcy4K CnJlYWwJMG05LjgxMXMKdXNlcgkwbTkuODAwcwpzeXMJMG0wLjAxMHMKCkluY3JlYXNpbmcg aGVhcCBzaXplIGJ5IDY1NTM2IGFmdGVyIDAgYWxsb2NhdGVkIGJ5dGVzCk51bWJlciBvZiBw cm9jZXNzb3JzID0gOCwgbnVtYmVyIG9mIG1hcmtlciB0aHJlYWRzID0gOApTdGFydGVkIDcg bWFyayBoZWxwZXIgdGhyZWFkcwpJbml0aWF0aW5nIGZ1bGwgd29ybGQtc3RvcCBjb2xsZWN0 aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gMSBhZnRlciAwIGFsbG9jYXRlZCBi eXRlcwpDb2xsZWN0aW9uIDAgcmVjbGFpbWVkIDAgYnl0ZXMgLS0tPiBoZWFwc2l6ZSA9IDY1 NTM2IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFya2luZyB0b29rIDAgbXNlY3MgKDAgaW4gYXZl cmFnZSkKSGVhcCBjb250YWlucyAwIHBvaW50ZXItY29udGFpbmluZyArIDAgcG9pbnRlci1m cmVlIHJlYWNoYWJsZSBieXRlcwowIGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAwIGRp c2FwcGVhcmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBpbW1l ZGlhdGUgZmluYWxpemF0aW9uOyAwIGxpbmtzIGNsZWFyZWQKRmluYWxpemUgKyBpbml0aWF0 ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9vayAwIG1z ZWNzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY1NTM2IGFmdGVyIDAgYWxsb2NhdGVkIGJ5 dGVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMzIgZ3JhbnVsZXMgKDUxMiBieXRl cykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA4NCBncmFudWxlcyAoMTM0NCBieXRl cykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAwIGdyYW51bGVzICgwIGJ5dGVzKQpB ZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDMgZ3JhbnVsZXMgKDQ4IGJ5dGVzKQpBZGRp bmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDIgZ3JhbnVsZXMgKDMyIGJ5dGVzKQpBZGRpbmcg YmxvY2sgbWFwIGZvciBzaXplIG9mIDEgZ3JhbnVsZXMgKDE2IGJ5dGVzKQpBZGRpbmcgYmxv Y2sgbWFwIGZvciBzaXplIG9mIDE3IGdyYW51bGVzICgyNzIgYnl0ZXMpCkFkZGluZyBibG9j ayBtYXAgZm9yIHNpemUgb2YgNSBncmFudWxlcyAoODAgYnl0ZXMpCkFkZGluZyBibG9jayBt YXAgZm9yIHNpemUgb2YgNCBncmFudWxlcyAoNjQgYnl0ZXMpCkdyZXcgZm8gdGFibGUgdG8g MSBlbnRyaWVzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY1NTM2IGFmdGVyIDk5NTM2IGFs bG9jYXRlZCBieXRlcwpJbml0aWF0aW5nIGZ1bGwgd29ybGQtc3RvcCBjb2xsZWN0aW9uIQoK LS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gMiBhZnRlciAxMDM2NDggYWxsb2NhdGVkIGJ5 dGVzCkNvbGxlY3Rpb24gMSByZWNsYWltZWQgMCBieXRlcyAtLS0+IGhlYXBzaXplID0gMTk2 NjA4IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFya2luZyB0b29rIDAgbXNlY3MgKDAgaW4gYXZl cmFnZSkKSGVhcCBjb250YWlucyA4NDM2OCBwb2ludGVyLWNvbnRhaW5pbmcgKyAxNDMyMCBw b2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjEgZmluYWxpemF0aW9uIHRhYmxlIGVudHJp ZXM7IDAgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2JqZWN0cyBhcmUgZWxpZ2libGUg Zm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDAgbGlua3MgY2xlYXJlZApGaW5hbGl6ZSAr IGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29tcGxldGUgY29sbGVjdGlvbiB0 b29rIDAgbXNlY3MKR3JldyBkbCB0YWJsZSB0byAxIGVudHJpZXMKQWRkaW5nIGJsb2NrIG1h cCBmb3Igc2l6ZSBvZiA3IGdyYW51bGVzICgxMTIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAg Zm9yIHNpemUgb2YgMTMgZ3JhbnVsZXMgKDIwOCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBm b3Igc2l6ZSBvZiAyMCBncmFudWxlcyAoMzIwIGJ5dGVzKQpHcmV3IGRsIHRhYmxlIHRvIDIg ZW50cmllcwpHcmV3IGRsIHRhYmxlIHRvIDQgZW50cmllcwpHcmV3IGRsIHRhYmxlIHRvIDgg ZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDEyIGdyYW51bGVzICgxOTIg Ynl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgOCBncmFudWxlcyAoMTI4IGJ5 dGVzKQpHcmV3IGRsIHRhYmxlIHRvIDE2IGVudHJpZXMKSW5jcmVhc2luZyBoZWFwIHNpemUg YnkgNjk2MzIgYWZ0ZXIgMzA1OTIgYWxsb2NhdGVkIGJ5dGVzCkFkZGluZyBibG9jayBtYXAg Zm9yIHNpemUgb2YgNDIgZ3JhbnVsZXMgKDY3MiBieXRlcykKSW5jcmVhc2luZyBoZWFwIHNp emUgYnkgOTAxMTIgYWZ0ZXIgMTAxNzYwIGFsbG9jYXRlZCBieXRlcwpJbmNyZWFzaW5nIGhl YXAgc2l6ZSBieSAxMjI4ODAgYWZ0ZXIgMTg3MzQ0IGFsbG9jYXRlZCBieXRlcwpBZGRpbmcg YmxvY2sgbWFwIGZvciBzaXplIG9mIDkgZ3JhbnVsZXMgKDE0NCBieXRlcykKSW5jcmVhc2lu ZyBoZWFwIHNpemUgYnkgNjg0MDMyIGFmdGVyIDIwNDQzMiBhbGxvY2F0ZWQgYnl0ZXMKQWRk aW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxNSBncmFudWxlcyAoMjQwIGJ5dGVzKQpBZGRp bmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE2IGdyYW51bGVzICgyNTYgYnl0ZXMpCkdyZXcg ZGwgdGFibGUgdG8gMzIgZW50cmllcwpHcmV3IGZvIHRhYmxlIHRvIDIgZW50cmllcwpHcmV3 IGZvIHRhYmxlIHRvIDQgZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE4 IGdyYW51bGVzICgyODggYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNiBn cmFudWxlcyAoOTYgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTEgZ3Jh bnVsZXMgKDE3NiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxMCBncmFu dWxlcyAoMTYwIGJ5dGVzKQpJbml0aWF0aW5nIGZ1bGwgd29ybGQtc3RvcCBjb2xsZWN0aW9u IQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gMyBhZnRlciA5NzY4ODAgYWxsb2NhdGVk IGJ5dGVzCkNvbGxlY3Rpb24gMiByZWNsYWltZWQgNDg5NiBieXRlcyAtLS0+IGhlYXBzaXpl ID0gMTE2MzI2NCBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICgw IGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgODk0NDQ4IHBvaW50ZXItY29udGFpbmluZyAr IDYwNDk2IHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0ZXMKNCBmaW5hbGl6YXRpb24gdGFi bGUgZW50cmllczsgMjUgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2JqZWN0cyBhcmUg ZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDEgbGlua3MgY2xlYXJlZApG aW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29tcGxldGUgY29s bGVjdGlvbiB0b29rIDAgbXNlY3MKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgMzg5MTIwIGFm dGVyIDcyMjQwIGFsbG9jYXRlZCBieXRlcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA1MjAx OTIgYWZ0ZXIgNTE1NzkyIGFsbG9jYXRlZCBieXRlcwpJbml0aWF0aW5nIGZ1bGwgd29ybGQt c3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gNCBhZnRlciAx MDM5MTA0IGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDMgcmVjbGFpbWVkIDc4OTkyIGJ5 dGVzIC0tLT4gaGVhcHNpemUgPSAyMDcyNTc2IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFya2lu ZyB0b29rIDEwIG1zZWNzICgyIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgMTI2MDI3MiBw b2ludGVyLWNvbnRhaW5pbmcgKyAxNTE2MzIgcG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRl cwo0IGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAyNiBkaXNhcHBlYXJpbmcgbGlua3Mg YWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlv bjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsg MCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sgMTAgbXNlY3MKSW5jcmVhc2luZyBo ZWFwIHNpemUgYnkgNzE2ODAwIGFmdGVyIDEwNzM5MiBhbGxvY2F0ZWQgYnl0ZXMKR3JldyBk bCB0YWJsZSB0byA2NCBlbnRyaWVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTI4 IGdyYW51bGVzICgyMDQ4IGJ5dGVzKQooYmVnaW4gKGZpYm8gbikpIHJldHVybmVkIDkyMjc0 NjUgaW4gMy4wIHNlY29uZHMuCihiZWdpbiAoZmlibyBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBp biAzLjAxIHNlY29uZHMuCihiZWdpbiAoZmlibyBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAz LjAgc2Vjb25kcy4KCnJlYWwJMG05LjAyNnMKdXNlcgkwbTkuMDIwcwpzeXMJMG0wLjAxMHMK CkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY1NTM2IGFmdGVyIDAgYWxsb2NhdGVkIGJ5dGVz Ck51bWJlciBvZiBwcm9jZXNzb3JzID0gOCwgbnVtYmVyIG9mIG1hcmtlciB0aHJlYWRzID0g OApTdGFydGVkIDcgbWFyayBoZWxwZXIgdGhyZWFkcwpJbml0aWF0aW5nIGZ1bGwgd29ybGQt c3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gMSBhZnRlciAw IGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDAgcmVjbGFpbWVkIDAgYnl0ZXMgLS0tPiBo ZWFwc2l6ZSA9IDY1NTM2IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFya2luZyB0b29rIDAgbXNl Y3MgKDAgaW4gYXZlcmFnZSkKSGVhcCBjb250YWlucyAwIHBvaW50ZXItY29udGFpbmluZyAr IDAgcG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRlcwowIGZpbmFsaXphdGlvbiB0YWJsZSBl bnRyaWVzOyAwIGRpc2FwcGVhcmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdp YmxlIGZvciBpbW1lZGlhdGUgZmluYWxpemF0aW9uOyAwIGxpbmtzIGNsZWFyZWQKRmluYWxp emUgKyBpbml0aWF0ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rp b24gdG9vayAwIG1zZWNzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY1NTM2IGFmdGVyIDAg YWxsb2NhdGVkIGJ5dGVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMzIgZ3JhbnVs ZXMgKDUxMiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA4NCBncmFudWxl cyAoMTM0NCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAwIGdyYW51bGVz ICgwIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDMgZ3JhbnVsZXMgKDQ4 IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDIgZ3JhbnVsZXMgKDMyIGJ5 dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDEgZ3JhbnVsZXMgKDE2IGJ5dGVz KQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE3IGdyYW51bGVzICgyNzIgYnl0ZXMp CkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNSBncmFudWxlcyAoODAgYnl0ZXMpCkFk ZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNCBncmFudWxlcyAoNjQgYnl0ZXMpCkdyZXcg Zm8gdGFibGUgdG8gMSBlbnRyaWVzCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY1NTM2IGFm dGVyIDk5NTM2IGFsbG9jYXRlZCBieXRlcwpJbml0aWF0aW5nIGZ1bGwgd29ybGQtc3RvcCBj b2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gMiBhZnRlciAxMDM2NDgg YWxsb2NhdGVkIGJ5dGVzCkNvbGxlY3Rpb24gMSByZWNsYWltZWQgMCBieXRlcyAtLS0+IGhl YXBzaXplID0gMTk2NjA4IGJ5dGVzCldvcmxkLXN0b3BwZWQgbWFya2luZyB0b29rIDAgbXNl Y3MgKDAgaW4gYXZlcmFnZSkKSGVhcCBjb250YWlucyA4NDI0MCBwb2ludGVyLWNvbnRhaW5p bmcgKyAxNDMyMCBwb2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5dGVzCjEgZmluYWxpemF0aW9u IHRhYmxlIGVudHJpZXM7IDAgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAgb2JqZWN0cyBh cmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDAgbGlua3MgY2xlYXJl ZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MKQ29tcGxldGUg Y29sbGVjdGlvbiB0b29rIDAgbXNlY3MKR3JldyBkbCB0YWJsZSB0byAxIGVudHJpZXMKQWRk aW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA3IGdyYW51bGVzICgxMTIgYnl0ZXMpCkFkZGlu ZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTMgZ3JhbnVsZXMgKDIwOCBieXRlcykKQWRkaW5n IGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAyMCBncmFudWxlcyAoMzIwIGJ5dGVzKQpHcmV3IGRs IHRhYmxlIHRvIDIgZW50cmllcwpHcmV3IGRsIHRhYmxlIHRvIDQgZW50cmllcwpHcmV3IGRs IHRhYmxlIHRvIDggZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDEyIGdy YW51bGVzICgxOTIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgOCBncmFu dWxlcyAoMTI4IGJ5dGVzKQpHcmV3IGRsIHRhYmxlIHRvIDE2IGVudHJpZXMKSW5jcmVhc2lu ZyBoZWFwIHNpemUgYnkgNjk2MzIgYWZ0ZXIgMzA1OTIgYWxsb2NhdGVkIGJ5dGVzCkFkZGlu ZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNDIgZ3JhbnVsZXMgKDY3MiBieXRlcykKSW5jcmVh c2luZyBoZWFwIHNpemUgYnkgOTAxMTIgYWZ0ZXIgMTAxNzYwIGFsbG9jYXRlZCBieXRlcwpJ bmNyZWFzaW5nIGhlYXAgc2l6ZSBieSAxMjI4ODAgYWZ0ZXIgMTg3MzQ0IGFsbG9jYXRlZCBi eXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDkgZ3JhbnVsZXMgKDE0NCBieXRl cykKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgNjg0MDMyIGFmdGVyIDIwNDQzMiBhbGxvY2F0 ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxNSBncmFudWxlcyAoMjQw IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDE2IGdyYW51bGVzICgyNTYg Ynl0ZXMpCkdyZXcgZGwgdGFibGUgdG8gMzIgZW50cmllcwpHcmV3IGZvIHRhYmxlIHRvIDIg ZW50cmllcwpHcmV3IGZvIHRhYmxlIHRvIDQgZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZv ciBzaXplIG9mIDE4IGdyYW51bGVzICgyODggYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9y IHNpemUgb2YgNiBncmFudWxlcyAoOTYgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNp emUgb2YgMTEgZ3JhbnVsZXMgKDE3NiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6 ZSBvZiAxMCBncmFudWxlcyAoMTYwIGJ5dGVzKQpJbml0aWF0aW5nIGZ1bGwgd29ybGQtc3Rv cCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rpb24gMyBhZnRlciA5NzY4 ODAgYWxsb2NhdGVkIGJ5dGVzCkNvbGxlY3Rpb24gMiByZWNsYWltZWQgNDg5NiBieXRlcyAt LS0+IGhlYXBzaXplID0gMTE2MzI2NCBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9v ayAwIG1zZWNzICgwIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgODkyODY0IHBvaW50ZXIt Y29udGFpbmluZyArIDYwNDAwIHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0ZXMKNCBmaW5h bGl6YXRpb24gdGFibGUgZW50cmllczsgMjUgZGlzYXBwZWFyaW5nIGxpbmtzIGFsaXZlCjAg b2JqZWN0cyBhcmUgZWxpZ2libGUgZm9yIGltbWVkaWF0ZSBmaW5hbGl6YXRpb247IDEgbGlu a3MgY2xlYXJlZApGaW5hbGl6ZSArIGluaXRpYXRlIHN3ZWVwIHRvb2sgMCArIDAgbXNlY3MK Q29tcGxldGUgY29sbGVjdGlvbiB0b29rIDAgbXNlY3MKSW5jcmVhc2luZyBoZWFwIHNpemUg YnkgMzg5MTIwIGFmdGVyIDcyMjQwIGFsbG9jYXRlZCBieXRlcwpJbmNyZWFzaW5nIGhlYXAg c2l6ZSBieSA1MjAxOTIgYWZ0ZXIgNTExNjAwIGFsbG9jYXRlZCBieXRlcwpJbml0aWF0aW5n IGZ1bGwgd29ybGQtc3RvcCBjb2xsZWN0aW9uIQoKLS0+IE1hcmtpbmcgZm9yIGNvbGxlY3Rp b24gNCBhZnRlciAxMDM1MDA4IGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDMgcmVjbGFp bWVkIDc4OTkyIGJ5dGVzIC0tLT4gaGVhcHNpemUgPSAyMDcyNTc2IGJ5dGVzCldvcmxkLXN0 b3BwZWQgbWFya2luZyB0b29rIDAgbXNlY3MgKDAgaW4gYXZlcmFnZSkKSGVhcCBjb250YWlu cyAxMjYyMzM2IHBvaW50ZXItY29udGFpbmluZyArIDE0OTA0MCBwb2ludGVyLWZyZWUgcmVh Y2hhYmxlIGJ5dGVzCjQgZmluYWxpemF0aW9uIHRhYmxlIGVudHJpZXM7IDI2IGRpc2FwcGVh cmluZyBsaW5rcyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBpbW1lZGlhdGUg ZmluYWxpemF0aW9uOyAwIGxpbmtzIGNsZWFyZWQKRmluYWxpemUgKyBpbml0aWF0ZSBzd2Vl cCB0b29rIDAgKyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9vayAwIG1zZWNzCklu Y3JlYXNpbmcgaGVhcCBzaXplIGJ5IDcxNjgwMCBhZnRlciAxMTI0ODAgYWxsb2NhdGVkIGJ5 dGVzCkdyZXcgZGwgdGFibGUgdG8gNjQgZW50cmllcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBz aXplIG9mIDEyOCBncmFudWxlcyAoMjA0OCBieXRlcykKKGJlZ2luIChmaWJvIG4pKSByZXR1 cm5lZCA5MjI3NDY1IGluIDIuNiBzZWNvbmRzLgooYmVnaW4gKGZpYm8gbikpIHJldHVybmVk IDkyMjc0NjUgaW4gMi42MSBzZWNvbmRzLgooYmVnaW4gKGZpYm8gbikpIHJldHVybmVkIDky Mjc0NjUgaW4gMi42IHNlY29uZHMuCgpyZWFsCTBtNy44MjlzCnVzZXIJMG03LjgzMHMKc3lz CTBtMC4wMDBzCgpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2NTUzNiBhZnRlciAwIGFsbG9j YXRlZCBieXRlcwpOdW1iZXIgb2YgcHJvY2Vzc29ycyA9IDgsIG51bWJlciBvZiBtYXJrZXIg dGhyZWFkcyA9IDgKU3RhcnRlZCA3IG1hcmsgaGVscGVyIHRocmVhZHMKSW5pdGlhdGluZyBm dWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9u IDEgYWZ0ZXIgMCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlvbiAwIHJlY2xhaW1lZCAwIGJ5 dGVzIC0tLT4gaGVhcHNpemUgPSA2NTUzNiBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcg dG9vayAwIG1zZWNzICgwIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgMCBwb2ludGVyLWNv bnRhaW5pbmcgKyAwIHBvaW50ZXItZnJlZSByZWFjaGFibGUgYnl0ZXMKMCBmaW5hbGl6YXRp b24gdGFibGUgZW50cmllczsgMCBkaXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3Rz IGFyZSBlbGlnaWJsZSBmb3IgaW1tZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVh cmVkCkZpbmFsaXplICsgaW5pdGlhdGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0 ZSBjb2xsZWN0aW9uIHRvb2sgMCBtc2VjcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA2NTUz NiBhZnRlciAwIGFsbG9jYXRlZCBieXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9m IDMyIGdyYW51bGVzICg1MTIgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2Yg ODQgZ3JhbnVsZXMgKDEzNDQgYnl0ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2Yg MCBncmFudWxlcyAoMCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAzIGdy YW51bGVzICg0OCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAyIGdyYW51 bGVzICgzMiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxIGdyYW51bGVz ICgxNiBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxNyBncmFudWxlcyAo MjcyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDUgZ3JhbnVsZXMgKDgw IGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDQgZ3JhbnVsZXMgKDY0IGJ5 dGVzKQpHcmV3IGZvIHRhYmxlIHRvIDEgZW50cmllcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBi eSA2NTUzNiBhZnRlciA5OTUzNiBhbGxvY2F0ZWQgYnl0ZXMKSW5pdGlhdGluZyBmdWxsIHdv cmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDIgYWZ0 ZXIgMTAzNjQ4IGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDEgcmVjbGFpbWVkIDAgYnl0 ZXMgLS0tPiBoZWFwc2l6ZSA9IDE5NjYwOCBieXRlcwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcg dG9vayAwIG1zZWNzICgwIGluIGF2ZXJhZ2UpCkhlYXAgY29udGFpbnMgODQyODggcG9pbnRl ci1jb250YWluaW5nICsgMTQzMjAgcG9pbnRlci1mcmVlIHJlYWNoYWJsZSBieXRlcwoxIGZp bmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAwIGRpc2FwcGVhcmluZyBsaW5rcyBhbGl2ZQow IG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBpbW1lZGlhdGUgZmluYWxpemF0aW9uOyAwIGxp bmtzIGNsZWFyZWQKRmluYWxpemUgKyBpbml0aWF0ZSBzd2VlcCB0b29rIDAgKyAwIG1zZWNz CkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9vayAwIG1zZWNzCkdyZXcgZGwgdGFibGUgdG8gMSBl bnRyaWVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgNyBncmFudWxlcyAoMTEyIGJ5 dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDEzIGdyYW51bGVzICgyMDggYnl0 ZXMpCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMjAgZ3JhbnVsZXMgKDMyMCBieXRl cykKR3JldyBkbCB0YWJsZSB0byAyIGVudHJpZXMKR3JldyBkbCB0YWJsZSB0byA0IGVudHJp ZXMKR3JldyBkbCB0YWJsZSB0byA4IGVudHJpZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6 ZSBvZiAxMiBncmFudWxlcyAoMTkyIGJ5dGVzKQpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXpl IG9mIDggZ3JhbnVsZXMgKDEyOCBieXRlcykKR3JldyBkbCB0YWJsZSB0byAxNiBlbnRyaWVz CkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY5NjMyIGFmdGVyIDMwNTkyIGFsbG9jYXRlZCBi eXRlcwpBZGRpbmcgYmxvY2sgbWFwIGZvciBzaXplIG9mIDQyIGdyYW51bGVzICg2NzIgYnl0 ZXMpCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDkwMTEyIGFmdGVyIDEwMTc2MCBhbGxvY2F0 ZWQgYnl0ZXMKSW5jcmVhc2luZyBoZWFwIHNpemUgYnkgMTIyODgwIGFmdGVyIDE4NzM0NCBh bGxvY2F0ZWQgYnl0ZXMKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiA5IGdyYW51bGVz ICgxNDQgYnl0ZXMpCkluY3JlYXNpbmcgaGVhcCBzaXplIGJ5IDY4NDAzMiBhZnRlciAyMDQ0 MzIgYWxsb2NhdGVkIGJ5dGVzCkFkZGluZyBibG9jayBtYXAgZm9yIHNpemUgb2YgMTUgZ3Jh bnVsZXMgKDI0MCBieXRlcykKQWRkaW5nIGJsb2NrIG1hcCBmb3Igc2l6ZSBvZiAxNiBncmFu dWxlcyAoMjU2IGJ5dGVzKQpHcmV3IGRsIHRhYmxlIHRvIDMyIGVudHJpZXMKR3JldyBmbyB0 YWJsZSB0byAyIGVudHJpZXMKR3JldyBmbyB0YWJsZSB0byA0IGVudHJpZXMKQWRkaW5nIGJs b2NrIG1hcCBmb3Igc2l6ZSBvZiAxOCBncmFudWxlcyAoMjg4IGJ5dGVzKQpBZGRpbmcgYmxv Y2sgbWFwIGZvciBzaXplIG9mIDYgZ3JhbnVsZXMgKDk2IGJ5dGVzKQpBZGRpbmcgYmxvY2sg bWFwIGZvciBzaXplIG9mIDExIGdyYW51bGVzICgxNzYgYnl0ZXMpCkFkZGluZyBibG9jayBt YXAgZm9yIHNpemUgb2YgMTAgZ3JhbnVsZXMgKDE2MCBieXRlcykKSW5pdGlhdGluZyBmdWxs IHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZvciBjb2xsZWN0aW9uIDMg YWZ0ZXIgOTc2ODgwIGFsbG9jYXRlZCBieXRlcwpDb2xsZWN0aW9uIDIgcmVjbGFpbWVkIDQ4 OTYgYnl0ZXMgLS0tPiBoZWFwc2l6ZSA9IDExNjMyNjQgYnl0ZXMKV29ybGQtc3RvcHBlZCBt YXJraW5nIHRvb2sgMCBtc2VjcyAoMCBpbiBhdmVyYWdlKQpIZWFwIGNvbnRhaW5zIDg5Njc1 MiBwb2ludGVyLWNvbnRhaW5pbmcgKyA2MDgxNiBwb2ludGVyLWZyZWUgcmVhY2hhYmxlIGJ5 dGVzCjQgZmluYWxpemF0aW9uIHRhYmxlIGVudHJpZXM7IDI1IGRpc2FwcGVhcmluZyBsaW5r cyBhbGl2ZQowIG9iamVjdHMgYXJlIGVsaWdpYmxlIGZvciBpbW1lZGlhdGUgZmluYWxpemF0 aW9uOyAxIGxpbmtzIGNsZWFyZWQKRmluYWxpemUgKyBpbml0aWF0ZSBzd2VlcCB0b29rIDAg KyAwIG1zZWNzCkNvbXBsZXRlIGNvbGxlY3Rpb24gdG9vayAwIG1zZWNzCkluY3JlYXNpbmcg aGVhcCBzaXplIGJ5IDM4OTEyMCBhZnRlciA3MTUzNiBhbGxvY2F0ZWQgYnl0ZXMKSW5jcmVh c2luZyBoZWFwIHNpemUgYnkgNTIwMTkyIGFmdGVyIDUxNTc5MiBhbGxvY2F0ZWQgYnl0ZXMK SW5pdGlhdGluZyBmdWxsIHdvcmxkLXN0b3AgY29sbGVjdGlvbiEKCi0tPiBNYXJraW5nIGZv ciBjb2xsZWN0aW9uIDQgYWZ0ZXIgMTAzOTEwNCBhbGxvY2F0ZWQgYnl0ZXMKQ29sbGVjdGlv biAzIHJlY2xhaW1lZCA3ODk5MiBieXRlcyAtLS0+IGhlYXBzaXplID0gMjA3MjU3NiBieXRl cwpXb3JsZC1zdG9wcGVkIG1hcmtpbmcgdG9vayAwIG1zZWNzICgwIGluIGF2ZXJhZ2UpCkhl YXAgY29udGFpbnMgMTI1OTAyNCBwb2ludGVyLWNvbnRhaW5pbmcgKyAxNTE2MTYgcG9pbnRl ci1mcmVlIHJlYWNoYWJsZSBieXRlcwo0IGZpbmFsaXphdGlvbiB0YWJsZSBlbnRyaWVzOyAy NiBkaXNhcHBlYXJpbmcgbGlua3MgYWxpdmUKMCBvYmplY3RzIGFyZSBlbGlnaWJsZSBmb3Ig aW1tZWRpYXRlIGZpbmFsaXphdGlvbjsgMCBsaW5rcyBjbGVhcmVkCkZpbmFsaXplICsgaW5p dGlhdGUgc3dlZXAgdG9vayAwICsgMCBtc2VjcwpDb21wbGV0ZSBjb2xsZWN0aW9uIHRvb2sg MCBtc2VjcwpJbmNyZWFzaW5nIGhlYXAgc2l6ZSBieSA3MTY4MDAgYWZ0ZXIgMTAzNDQwIGFs bG9jYXRlZCBieXRlcwpHcmV3IGRsIHRhYmxlIHRvIDY0IGVudHJpZXMKQWRkaW5nIGJsb2Nr IG1hcCBmb3Igc2l6ZSBvZiAxMjggZ3JhbnVsZXMgKDIwNDggYnl0ZXMpCihiZWdpbiAoZmli byBuKSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjc4IHNlY29uZHMuCihiZWdpbiAoZmlibyBu KSkgcmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjc4IHNlY29uZHMuCihiZWdpbiAoZmlibyBuKSkg cmV0dXJuZWQgOTIyNzQ2NSBpbiAyLjc4IHNlY29uZHMuCgpyZWFsCTBtOS4yMTNzCnVzZXIJ MG04LjM1MHMKc3lzCTBtMC4wMDBzCg== --------------030602090305040101060008 Content-Type: application/octet-stream; name="fibo-with-GC_PRINT_STATS.sig" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="fibo-with-GC_PRINT_STATS.sig" iEYEABECAAYFAkux7/0ACgkQvzOavibF0obfmQCfb78rBfzHNKeO7SB+ZnKYYBKqI0gAnRJ2 9IO2296eNvceMxaCQstRRqks --------------030602090305040101060008--