From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id gDXxIco8dmACCgAAgWs5BA (envelope-from ) for ; Wed, 14 Apr 2021 02:52:26 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id 4FHkG8o8dmBAIgAA1q6Kng (envelope-from ) for ; Wed, 14 Apr 2021 00:52:26 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id A13CE1CEBC for ; Wed, 14 Apr 2021 02:52:25 +0200 (CEST) Received: from localhost ([::1]:55592 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lWTlX-00070G-Ns for larch@yhetil.org; Tue, 13 Apr 2021 20:52:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59582) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lWTlD-0006zx-1n for bug-guix@gnu.org; Tue, 13 Apr 2021 20:52:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:49685) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lWTlC-00039N-Qs for bug-guix@gnu.org; Tue, 13 Apr 2021 20:52:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lWTlC-0002pO-Ni for bug-guix@gnu.org; Tue, 13 Apr 2021 20:52:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#47764: guix pull bug Resent-From: Zelphir Kaltstahl Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Wed, 14 Apr 2021 00:52:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 47764 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 47764@debbugs.gnu.org X-Debbugs-Original-To: bug-guix@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.161836150910848 (code B ref -1); Wed, 14 Apr 2021 00:52:02 +0000 Received: (at submit) by debbugs.gnu.org; 14 Apr 2021 00:51:49 +0000 Received: from localhost ([127.0.0.1]:32998 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lWTku-0002on-1F for submit@debbugs.gnu.org; Tue, 13 Apr 2021 20:51:49 -0400 Received: from lists.gnu.org ([209.51.188.17]:37212) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lWSiw-0001DR-FC for submit@debbugs.gnu.org; Tue, 13 Apr 2021 19:45:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50614) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lWSiw-0000bS-27 for bug-guix@gnu.org; Tue, 13 Apr 2021 19:45:38 -0400 Received: from mout01.posteo.de ([185.67.36.65]:51404) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lWSip-0000XC-DH for bug-guix@gnu.org; Tue, 13 Apr 2021 19:45:37 -0400 Received: from submission (posteo.de [89.146.220.130]) by mout01.posteo.de (Postfix) with ESMTPS id 655E31A022B for ; Wed, 14 Apr 2021 01:45:22 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1618357522; bh=neApI6NFDVxR45UElvFvEzoOFtXmsfrhFn9QIGDXs/c=; h=To:From:Subject:Date:From; b=pgjSaxSuMGraOeEA9yyUMoVMJ9gEP0v8LtWbFbEMiD3AKm7mcJLfGrBAk82Tnsa0A hHE42UZQJycXij86jeg7uKNlaBlSpuYjaOjMkzLNWnWCAJarYAB78/g8AtejPYT3Y3 ID2izu6crmPbw3Zs5xU4NCsZFUZWPUowFNAu8wAGo3kj126PwJuP4GKBH6Nq7T4Lg+ KY7LVqWNy9HYSQwGvvuSiLP43hiFofIAzlQMLqMNWC7TS7XA6uhSTinxeCeWgJEAfB jM+8VfUjwCMiwLmRZtoNCQkLyH79gK8rgRVAL+DV2O+aVa99/Z62kHyJUcYJWG0jdO lYLt6rL6U9KPQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4FKj010z2jz9rxH for ; Wed, 14 Apr 2021 01:45:20 +0200 (CEST) From: Zelphir Kaltstahl Message-ID: Date: Wed, 14 Apr 2021 01:45:20 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="------------19D271F7C88F5E149166A96D" Content-Language: en-US Received-SPF: pass client-ip=185.67.36.65; envelope-from=zelphirkaltstahl@posteo.de; helo=mout01.posteo.de X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Tue, 13 Apr 2021 20:51:43 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1618361546; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:list-id:list-help:list-unsubscribe:list-subscribe: list-post:dkim-signature; bh=LtiIeINCmGZgaibqTziGNh5lHsoofpHRZhWXOzZAUGQ=; b=IPCgTtJWeVs9p3D/WgfiMQ+m9iMT6xb1aUo96X6m93JEprdio0S1IWkSvuKXe9GW1jsDSW fmCPtpCmuurioQ+q3hcSpR04dSMIOLXKG4v72mEpkpxUkSyvZKtOjm6c0UwA+ZPNNQmV4v t/RAuFv7l6JLosftDHXEAAJpDuiFG2ysgY62yphd8/6WoMNlSWtDijd587NjqDIBnkp9XV zQjwIyHOHmVLEIhqGpm447nv3bpjqszaNrIs3bF+9IN0T48uzY8Xp5JOvSxbk8Shvhvsv/ uwIhcVWOqcsl7mTyCiOE3LZvEydrmrGieyuelOky6kdYqkeuoPbMWKS+6jItrw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1618361546; a=rsa-sha256; cv=none; b=NR0we9ry/DLXhNed36tFgQJ9hLXJx32nMl6u4iMdZ3xmDVctHl3eHSpz6zoT2PRHEbPgE8 0TWkJ3ZoecahyLjcc76iABQgXYzJpGTXJKm2eYqEh9tRv8Sz/HBr0Y31JPq29/mdXU4AYj n67kXZC/x/3wVThiGi/6Gqkt1aWtUdumdi8DzFlLh1phfleKPYumjZEZ/2t0bnBeBwXPBt I1yfuYVHC2Y9UdW5vACeBQkdObNIDVBhaMACuVKR1W4eZ1FjBsQ3rVkgZSqJZMBgxmqiXq QUbOKGKU94U50XOewFTbp1fwuginfpaq8xpQPlWOeebz+JW3T+vq3D5wnNzCGA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=posteo.de header.s=2017 header.b=pgjSaxSu; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.de (policy=none); spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Spam-Score: 0.26 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=posteo.de header.s=2017 header.b=pgjSaxSu; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.de (policy=none); spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Queue-Id: A13CE1CEBC X-Spam-Score: 0.26 X-Migadu-Scanner: scn0.migadu.com X-TUID: 1RD9bVGLtmKX This is a multi-part message in MIME format. --------------19D271F7C88F5E149166A96D Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Hi! I am experiencing a bug when running `guix pull` again. Not sure, whether it is the same as the previous one, or a different one. This is a different machine than the previous bug report I sent in. Guix told me to please report it, so here it goes: ~~~~ $ guix pull Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... Authenticating channel 'guix', commits 9edb3f6 to 4dff6ec (84 new commits)... Building from this channel: guix https://git.savannah.gnu.org/git/guix.git 4dff6ec substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% downloading from https://ci.guix.gnu.org/nar/lzip/lfjklynfh3kwsx0iwfwcm71y4qf36ww3-compute-guix-derivation ... compute-guix-derivation 1KiB 108KiB/s 00:00 [##################] 100.0% substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% downloading from https://ci.guix.gnu.org/nar/lzip/1qd88064j2iicfnkxf5ylffmvisnsdlw-curl-7.76.0 ... curl-7.76.0 385KiB 514.2MiB/s 00:00 [##################] 100.0/ substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% downloading from https://ci.guix.gnu.org/nar/lzip/531rwkb8m6yccq4l1mkrqxclrqwy0jj3-git-minimal-2.31.1 ... git-minimal-2.31.1 4.1MiB 5.8MiB/s 00:01 [##################] 100.0/ substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% downloading from https://ci.guix.gnu.org/nar/lzip/kqmxkrw1kzq486ywgbjw74r6rz1cjnxl-guile-avahi-0.4.0-1.6d43caf ... guile-avahi-0.4.0-1.6d43caf 54KiB 101.3MiB/s 00:00 [##################] 100.0% downloading from https://ci.guix.gnu.org/nar/lzip/h3mqirjnv5q7qyfkpswyvxhcarsz6is7-guile-git-0.5.0 ... guile-git-0.5.0 1.13GiB/s 00:00 | 551KiB transferred Backtrace: In guix/ui.scm: 2164:12 19 (run-guix-command _ . _) In guix/scripts/substitute.scm: 652:2 18 (guix-substitute . _) In unknown file: 17 (with-continuation-barrier #) In ice-9/boot-9.scm: 1736:10 16 (with-exception-handler _ _ #:unwind? _ # _) In unknown file: 15 (apply-smob/0 #) In ice-9/boot-9.scm: 1736:10 14 (with-exception-handler _ _ #:unwind? _ # _) 1736:10 13 (with-exception-handler _ _ #:unwind? _ # _) 1731:15 12 (with-exception-handler # ?) In guix/scripts/substitute.scm: 701:17 11 (_) 410:7 10 (process-substitution _ "/gnu/store/62hfr56ipl706k17g0?" ?) In ice-9/boot-9.scm: 1736:10 9 (with-exception-handler _ _ #:unwind? _ # _) In guix/scripts/substitute.scm: 419:9 8 (_) In ice-9/boot-9.scm: 1731:15 7 (with-exception-handler # ?) 1669:16 6 (raise-exception _ #:continuable? _) 1667:16 5 (raise-exception _ #:continuable? _) 1669:16 4 (raise-exception _ #:continuable? _) Backtrace: 15 (primitive-load "/gnu/store/lfjklynfh3kwsx0iwfwcm71y4qf36ww3-compute-guix-derivation") In ice-9/eval.scm: 155:9 14 (_ _) 159:9 13 (_ #(#(#(#(#(#(#(#(#(#(#(#(#(#(#(#(# ?) ?) ?) ?) ?) ?) ?) ?) ?) ?) ?) ?) ?) ?) ?) ?)) In ice-9/boot-9.scm: 152:2 12 (with-fluid* _ _ _) 152:2 11 (with-fluid* _ _ _) In ./guix/store.scm: 2066:24 10 (run-with-store # _ #:guile-for-build _ #:system _ #:target _) 1900:8 9 (_ _) In ./guix/gexp.scm: 256:18 8 (_ _) 1137:2 7 (_ _) 1003:2 6 (_ _) 849:4 5 (_ _) In ./guix/store.scm: 1948:12 4 (_ #) 1362:5 3 (map/accumulate-builds # _ _) 1373:15 2 (_ # _ _) 719:11 1 (process-stderr # _) In ./guix/serialization.scm: 80:6 0 (read-int #) ./guix/serialization.scm:80:6: In procedure read-int: ERROR: 1. &nar-error: file: #f port: # guix pull: error: You found a bug: the program '/gnu/store/lfjklynfh3kwsx0iwfwcm71y4qf36ww3-compute-guix-derivation' failed to compute the derivation for Guix (version: "4dff6ecde85eec473ab231cf75f51e98e8aca1e9"; system: "x86_64-linux"; host version: "7327295462fccae4ee3e9bf74962c82d3445fec8"; pull-version: 1). Please report it by email to . ~~~~ This time I already know I can try `guix pull --no-substitutes`. This ran without error: ~~~~ $ guix pull --no-substitutes Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... Building from this channel: guix https://git.savannah.gnu.org/git/guix.git 4dff6ec building /gnu/store/292slsvr461pf4mmxp5pbn7izyrz6j7a-mkdir.drv... downloading from https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/i686-linux/mkdir?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e ... building /gnu/store/nlfh939ppk5hjqlrg3qa2bggypwv5yga-guile-json-3.5.0.tar.gz.drv... downloading from http://download.savannah.gnu.org/releases/guile-json/guile-json-3.5.0.tar.gz ... building /gnu/store/cz47v443jm6nbjsl0256wnj525d9bdxp-guile-lib-0.2.7.tar.gz.drv... downloading from http://download.savannah.gnu.org/releases/guile-lib/guile-lib-0.2.7.tar.gz ... building /gnu/store/nb3vkf3xdpzmq332c1g9plw1fbyv5kqc-guile-json-3.5.0.drv... building /gnu/store/9wsr9qwm40qcm7cxj4zwnn4jqsl28nfw-guile-lib-0.2.7.drv... - 'check' phasebuild-log 23528 4096 html->shtml "B" #:strict? 'unset) ==> (*TOP* "B") ;; Passed. (html->shtml "&42;" #:strict? 'unset) ==> (*TOP* "&42;") ;; Passed. (html->shtml "aaa©bbb&ccc<ddd&>eee*fffϨgggZhhh" #:strict? 'unset) ==> (*TOP* "aaa" (*ENTITY* "additional" "copy") "bbb&ccceee*fff" (*ENTITY* "additional-char" "1000") "gggZhhh") ;; Passed. (html->shtml "2" #:strict? 'unset) ==> (*TOP* (img (@ (src "http://pics.ebay.com/aw/pics/listings/ebayLogo_38x16.gif") (border "0") (width "38") (height "16") (hspace "5") (vspace "0"))) "2") ;; Passed. (html->shtml "eee" #:strict? 'unset) ==> (*TOP* (aaa (@ (bbb "ccc") (ddd)) "eee")) ;; Passed. (html->shtml "eee" #:strict? 'unset) ==> (*TOP* (aaa (@ (bbb "ccc") (ddd)) "eee")) ;; Passed. (html->shtml "My TitleThis is a bold-italic test of broken HTML.
Yes it is." #:strict? 'unset) ==> (*TOP* (html (head (title "My Title")) (body (@ (bgcolor "white") (foo "42")) "This is a " (b (i "bold-italic")) " test of " "broken HTML." (br) "Yes it is."))) ;; Passed. (html->shtml "" #:strict? 'unset) ==> (*TOP* (*DECL* DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd")) ;; Passed. (html->shtml "" #:strict? 'unset) ==> (*TOP* (html (@ (xmlns "http://www.w3.org/1999/xhtml") (lang "en") (lang "en")))) ;; Passed. (html->shtml "FrobnosticationMoved to here." #:strict? 'unset) ==> (*TOP* (html (@ (xmlns:html "http://www.w3.org/TR/REC-html40")) (head (title "Frobnostication")) (body (p "Moved to " (a (@ (href "http://frob.com")) "here."))))) ;; Passed. (html->shtml "Layman, A33BCheck Status1997-05-24T07:55:00+1" #:strict? 'unset) ==> (*TOP* (reservation (@ (xmlns:HTML "http://www.w3.org/TR/REC-html40")) (name (@ (class "largeSansSerif")) "Layman, A") (seat (@ (class "Y") (class "largeMonotype")) "33B") (a (@ (href "/cgi-bin/ResStatus")) "Check Status") (departure "1997-05-24T07:55:00+1"))) ;; Passed. (html->shtml "whateverlink

    BLah italic bold ened still < bold

    But not done yet..." #:strict? 'unset) ==> (*TOP* (html (head (title) (title "whatever")) (body (a (@ (href "url")) "link") (p (@ (align "center")) (ul (@ (compact) (style "aa")))) (p "BLah" (*COMMENT* " comment ") " " (i " italic " (b " bold " (tt " ened "))) " still < bold ")) (p " But not done yet..."))) ;; Passed. (html->shtml "" #:strict? 'unset) ==> (*TOP* (*PI* xml "version=\"1.0\" encoding=\"UTF-8\"")) ;; Passed. (html->shtml "" #:strict? 'unset) ==> (*TOP* (*PI* php "php_info(); ")) ;; Passed. (html->shtml " (*TOP* (*PI* php "php_info(); ?")) ;; Passed. (html->shtml " (*TOP* (*PI* php "php_info(); ")) ;; Passed. (html->shtml " blort ?>" #:strict? 'unset) ==> (*TOP* (*PI* foo "bar ? baz > blort ")) ;; Passed. (html->shtml "x" #:strict? 'unset) ==> (*TOP* (*PI* foo "b") "x") ;; Passed. (html->shtml "x" #:strict?@ build-log 23528 4090 'unset) ==> (*TOP* (*PI* foo "") "x") ;; Passed. (html->shtml "x" #:strict? 'unset) ==> (*TOP* (*PI* foo "") "x") ;; Passed. (html->shtml "x" #:strict? 'unset) ==> (*TOP* (*PI* foo "") "x") ;; Passed. (html->shtml "x" #:strict? 'unset) ==> (*TOP* (*PI* f "") "x") ;; Passed. (html->shtml "x" #:strict? 'unset) ==> (*TOP* (*PI* #f "") "x") ;; Passed. (html->shtml "x" #:strict? 'unset) ==> (*TOP* (*PI* #f ">x")) ;; Passed. (html->shtml "blort" #:strict? 'unset) ==> (*TOP* (foo (@ (bar "baz")) "blort")) ;; Passed. (html->shtml "blort" #:strict? 'unset) ==> (*TOP* (foo (@ (bar "baz")) "blort")) ;; Passed. (html->shtml "blort" #:strict? 'unset) ==> (*TOP* (foo (@ (bar "baz'>blort")))) ;; Passed. (html->shtml " (*TOP* (foo (@ (bar "baz\">blort")))) ;; Passed. (html->shtml "

    A

    B

    " #:strict? 'unset) ==> (*TOP* (p "A") (script "line0 <\n" "line1\n" "") (p "B")) ;; Passed. (html->shtml "a<b>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a<b>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a<b>c</foo:xmp>d" #:strict? 'unset) ==> (*TOP* (xmp "a<b>c") "d") ;; Passed. (html->shtml "<foo:xmp>a<b>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "acd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "acd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</b>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</b >cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</ b>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</ b >cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</b:x>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</b::x>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</b:::x>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</b:>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</b::>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "a</xmp:b>cd" #:strict? 'unset) ==> (*TOP* (xmp "ac") "d") ;; Passed. (html->shtml "

    real1

    \n\nalpha\n<P>fake</P>\nbravo\nreal2

    " #:strict? 'unset) ==> (*TOP* (p "real1") "\n" (xmp "\n" "alpha\n" "

    fake

    \n" "bravo\n") (p "real2")) ;; Passed. (html->shtml "

    real1

    \n\nalpha\n<P>fake</P>\nbravo\n</XMP\n<P>real2</P>" #:strict? 'unset) ==> (*TOP* (p "real1") "\n" (xmp "\n" "alpha\n" "<P>fake</P>\n" "bravo\n") (p "real2")) ;; Passed. (html->shtml "<xmp>ax" #:strict? 'unset) ==> (*TOP* (xmp "a") "x") ;; Passed. (html->shtml "a\nx" #:strict? 'unset) ==> (*TOP* (xmp "a\n") "x") ;; Passed. (html->shtml "x" #:strict? 'unset) ==> (*TOP* (xmp) "x") ;; Passed. (html->shtml "a</xmp" #:strict? 'unset) ==> (*TOP* (xmp "a")) ;; Passed. (html->shtml "<xmp>a</xm" #:strict? 'unset) ==> (*TOP* (xmp "a</xm")) ;; Passed. (html->shtml "<xmp>a</x" #:strict? 'unset) ==> (*TOP* (xmp "a</x")) ;; Passed. (html->shtml "<xmp>a</" #:strict? 'unset) ==> (*TOP* (xmp "a</")) ;; Passed. (html->shtml "<xmp>a<" #:strict? 'unset) ==> (*TOP* (xmp "a<")) ;; Passed. (html->shtml "<xmp>a" #:strict? 'unset) ==> (*TOP* (xmp "a")) ;; Passed. (html->shtml "<xmp>" #:strict? 'unset) ==> (*TOP* (xmp)) ;; Passed. (html->shtml "<xmp" #:strict? 'unset) ==> (*TOP* (xmp)) ;; Passed. (html->shtml "<xmp x=42 " #:strict? 'unset) ==> (*TOP* (xmp (@ (x "42")))) ;; Passed. (html->shtml "<xmp x= " #:strict? 'unset) ==> (*TOP* (xmp (@ (x)))) ;; Passed. (html->shtml "<xmp x " #:@ build-log 23528 2197 Running test suite: main-suite ---------------------------------------- Running test suite: <test-xml-pragmatic>-suite ------------------------ Running test case: test-all 1 run, 0 failed strict? 'unset) ==> (*TOP* (xmp (@ (x)))) ;; Passed. (html->shtml "<xmp x" #:strict? 'unset) ==> (*TOP* (xmp (@ (x)))) ;; Passed. (html->shtml "<script>xxx" #:strict? 'unset) ==> (*TOP* (script "xxx")) ;; Passed. (html->shtml "<script/>xxx" #:strict? 'unset) ==> (*TOP* (script) "xxx") ;; Passed. (shtml->html '(p)) ==> "<p></p>" ;; Passed. (shtml->html '(p "CONTENT")) ==> "<p>CONTENT</p>" ;; Passed. (shtml->html '(br)) ==> "<br />" ;; Passed. (shtml->html '(br "CONTENT")) ==> "<br />" ;; Passed. (shtml->html '(hr (@ (clear "all")))) ==> "<hr clear=\"all\" />" ;; Passed. (shtml->html '(hr (@ (noshade)))) ==> "<hr noshade />" ;; Passed. (shtml->html '(hr (@ (noshade #t)))) ==> "<hr noshade />" ;; Passed. (shtml->html '(hr (@ (noshade "noshade")))) ==> "<hr noshade=\"noshade\" />" ;; Passed. (shtml->html '(hr (@ (aaa "bbbccc")))) ==> "<hr aaa=\"bbbccc\" />" ;; Passed. (shtml->html '(hr (@ (aaa "bbb'ccc")))) ==> "<hr aaa=\"bbb'ccc\" />" ;; Passed. (shtml->html '(hr (@ (aaa "bbb\"ccc")))) ==> "<hr aaa='bbb\"ccc' />" ;; Passed. (shtml->html '(hr (@ (aaa "bbb\"ccc'ddd")))) ==> "<hr aaa=\"bbb&quot;ccc'ddd\" />" ;; Passed. (shtml->html '(*PI* xml "version=\"1.0\" encoding=\"UTF-8\"")) ==> "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" ;; Passed. (shtml->html '(*DECL* DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd")) ==> "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">" ;; Passed. (html->shtml "<body><blockquote><p>foo</p>\n</blockquote></body>" #:strict? 'unset) ==> (*TOP* (body (blockquote (p "foo") "\n"))) ;; Passed. (html->shtml "<body><blockquote><p>foo</p>\n</blockquote></body>" #:strict? #f) ==> (*TOP* (body (blockquote) (p "foo") "\n")) ;; Passed. (html->shtml "<body><blockquote><p>foo\n</blockquote></body>" #:strict? 'unset) ==> (*TOP* (body (blockquote (p "foo\n")))) ;; Passed. *** All Tests PASSED *** Passed: 128 Failed: 0 building /gnu/store/2ik5jbfa39zcv2g01bw68j20p1myw55p-module-import-compiled.drv... building /gnu/store/nwllis8b0mpdp1a8zr038bjlj34c9z8p-module-import-compiled.drv... building /gnu/store/x6n0qj4y0vpgavdggvbf92fz3gnnv6s5-openssl-1.1.1k.tar.gz.drv... downloading from https://www.openssl.org/source/openssl-1.1.1k.tar.gz ... building /gnu/store/hyihrq6brzrkvvpikm3zmslhhlvyx5xy-tar.drv... downloading from https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/i686-linux/tar?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e ... building /gnu/store/s5b162lasqpw9g4p6567drrgf84izvr4-openssl-1.1.1k.tar.xz.drv... building /gnu/store/046lwac3v42aw2ggvm7kgps143n4r768-xz.drv... downloading from https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/i686-linux/xz?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e ... building /gnu/store/fcndbk0pxnj2hbjax45hd7n6nr9sjm4m-openssl-1.1.1k.drv... building /gnu/store/ygfcgz0001m8f3lw8jdx70n0n8m6rqcq-zip30.tar.gz.drv... downloading from http://downloads.sourceforge.net/project/infozip/Zip%203.x%20%28latest%29/3.0/zip30.tar.gz ... applying 1 graft for /gnu/store/54zz5bh8zqjdjh5bp01z80484xizhaam-cyrus-sasl-2.1.27.drv ... building /gnu/store/lam6h0qnr7bj7mr5hlix4glnf5f2wymk-zip-3.0.drv... applying 2 grafts for /gnu/store/jcfn1b8gk2h6qzn0ibyy67hz00w0x5ma-openldap-2.4.57.drv ... applying 3 grafts for /gnu/store/cdnrvbr03nhg8ly1msi65lz4m8k5l3cl-curl-7.76.0.drv ... applying 2 grafts for /gnu/store/fpq3zjj3kxg4z8wk5508jif2kzc708qg-git-minimal-2.31.1.drv ... building /gnu/store/akspxzq9iw5pn5ra4jlb1sp874p5wp0v-guix-1.2.0-20.2d73086-checkout.drv... building /gnu/store/hzbh1nqi0hamj23aa5wv6r30p01mfjns-zziplib-0.13.72-checkout.drv... building /gnu/store/5qbmii159jyxgfpv7a66wkaipnmszkyr-guix-daemon-1.2.0-20.2d73086.drv... building /gnu/store/5kamvb2d69vbhq5qm3y7nlxxlmi64pmb-zziplib-0.13.72.drv... 22% [########################################################## ]ild-log 70451 479 /tmp/guix-build-zziplib-0.13.72.drv-0/source/zzip/fetch.h:232:41: warning: initialization makes integer from pointer without a cast [-Wint-conversion] #define zzip_file_header_to_data(__p) ((zzip_byte_t*) \ ^ /tmp/guix-build-zziplib-0.13.72.drv-0/source/zzip/mmapped.c:664:20: note: in expansion of macro ?zzip_file_header_to_data? off_t offset = zzip_file_header_to_data(header); ^~~~~~~~~~~~~~~~~~~~~~~~ 22% [########################################################## ]log 70451 209 /tmp/guix-build-zziplib-0.13.72.drv-0/source/zzip/mmapped.c:685:24: warning: assignment makes pointer from integer without a cast [-Wint-conversion] file->zlib.next_in = offset; ^ - 'install-license-files' phase The following derivations will be built: /gnu/store/5qkq8w45wlp2ir05w5g9hfrmj4p6aiiy-profile.drv /gnu/store/gl94mrqwqdmz98l5fwk756xzrwhm9ha6-guix-4dff6ecde.drv /gnu/store/al24h5p65c67jhszlj9596khybm7yrfd-guix-daemon.drv /gnu/store/apzhnh46x94f5qghq7cdl4843dpzwiyq-guix-command.drv /gnu/store/jwpzpnzlcn60inhqwpyy68cn8yhmgljy-guix-module-union.drv /gnu/store/mvjz0n0pyrss7432qdz00kaakg4nhhd0-sqlite-3.32.3.drv /gnu/store/k29xdkgfwn6qj3l7ni25981zk1mci4z0-sqlite-autoconf-3320300.tar.gz.drv /gnu/store/cdqjf6fjvxrm57iqizsax9njsm65qhxm-guix-4dff6ecde-modules.drv /gnu/store/0q748mp1n1rq1l2p5048q09j850wscn9-guix-config-modules.drv /gnu/store/49jfcqbypab3h69gj739mqpvs1liccc4-guix-config.drv /gnu/store/6k7lrx0xyhlnsh4l8b85mj1q5xi121j1-guix-config-source.drv /gnu/store/9gyy562818blkjvrm101hsjv38f4wmw9-config.scm.drv /gnu/store/22f1liism9ckrqwpvi7p3g8q8g1pamka-guix-packages-modules.drv /gnu/store/a2kjq1rpb3grip2g57g9p3zjj5p7vmai-guix-packages.drv /gnu/store/0j52xc8007963lfdywz78hy0dn0qlkyc-guix-core.drv /gnu/store/ry7aj6hpg5hdxh0zp1ww91ld6cd5kx0h-guix-core-source.drv /gnu/store/7gvgzb42h006qd2fn5l61x6a8b6lvcdq-guix-extra.drv /gnu/store/y9ihzp2xxbx02xv24khvm0ikkbsvjfdc-zstd-1.4.4.drv /gnu/store/dqvqnds0lx3q4cpf65lb092hkkb33s4d-zstd-1.4.4.tar.xz.drv /gnu/store/2f4yllydqcmf0756fdmm0r6crvdy7fld-zstd-1.4.4.tar.gz.drv /gnu/store/spm7snav22r8nxp9l3pbwh130lj6yknx-guix-packages-base.drv /gnu/store/2fhkd8vpshg467vwvqfnjqzd1d57kc3q-guix-cli-modules.drv /gnu/store/108db6ank5imcl7qqs5hdasbbldg4qkx-guix-cli.drv /gnu/store/y5imwqcdgb7z116kaz9zp52iscsw1l4j-guix-system.drv /gnu/store/64nx1zj3h8p194hsbzs6srl7jjhx6lc6-guix-extra-modules.drv /gnu/store/9a1swdas4g77ixh79k2qqgpb96jfzsd5-guix-system-modules.drv /gnu/store/s7v45s8mnnpxrn4paki2c757r9gy5qrh-guix-core-modules.drv /gnu/store/vyx8rvz83n69nwg4r704d033p9l6xd0z-guix-packages-base-modules.drv /gnu/store/yz854xfxvmpqvl80rjw1g6dj7fakazz4-guix-system-tests-modules.drv /gnu/store/xair6fq4iff2nnjaj4jr0x76261mp33b-guix-system-tests.drv /gnu/store/w3hvli53vvvf6sngsfrv7svdcx01cw6v-guix-locale-guix.drv /gnu/store/gnszzwlniv2s2qppsnpv94b1qm8laz50-guix-manual.drv /gnu/store/8xn7n6fab707235dd1pxmrdixz16b33z-guix-translated-texinfo.drv /gnu/store/55y3pbhg0dw7q32r9q7qlj1yw1f2jrl6-module-import-compiled.drv /gnu/store/9yfr0ra7q8vi6xdqlzz6gydcqxw64wrh-inferior-script.scm.drv /gnu/store/zsy9cag46kv6s9440mpwk7zw8aw0a8zy-profile.drv building /gnu/store/w3hvli53vvvf6sngsfrv7svdcx01cw6v-guix-locale-guix.drv... building /gnu/store/9gyy562818blkjvrm101hsjv38f4wmw9-config.scm.drv... building /gnu/store/ry7aj6hpg5hdxh0zp1ww91ld6cd5kx0h-guix-core-source.drv... building /gnu/store/6k7lrx0xyhlnsh4l8b85mj1q5xi121j1-guix-config-source.drv... building /gnu/store/0j52xc8007963lfdywz78hy0dn0qlkyc-guix-core.drv... building /gnu/store/49jfcqbypab3h69gj739mqpvs1liccc4-guix-config.drv... building /gnu/store/s7v45s8mnnpxrn4paki2c757r9gy5qrh-guix-core-modules.drv... building /gnu/store/0q748mp1n1rq1l2p5048q09j850wscn9-guix-config-modules.drv... applying 1 graft for /gnu/store/7h3sms41jj1xgnikkibpgj38p24v0gjz-libgit2-1.1.0.drv ... applying 5 grafts for /gnu/store/hrkv97pkq3r8pvhjfx8ygjwz2k1w6v26-libxaw-1.0.13.drv ... applying 1 graft for /gnu/store/vp1g9dnkh37b5ac6vb14wblqf4d7bzzw-guile-git-0.5.0.drv ... building /gnu/store/55y3pbhg0dw7q32r9q7qlj1yw1f2jrl6-module-import-compiled.drv... building /gnu/store/k29xdkgfwn6qj3l7ni25981zk1mci4z0-sqlite-autoconf-3320300.tar.gz.drv... downloading from https://sqlite.org/2020/sqlite-autoconf-3320300.tar.gz ... building /gnu/store/8xn7n6fab707235dd1pxmrdixz16b33z-guix-translated-texinfo.drv... building /gnu/store/mvjz0n0pyrss7432qdz00kaakg4nhhd0-sqlite-3.32.3.drv... applying 2 grafts for /gnu/store/3nhgvjn4r2rsvj9w86a1nxqs4czclhhr-tk-8.6.10.drv ... applying 1 graft for /gnu/store/a4x4xi67kl9ji16yd7227d0bam0jqsgg-guile-sqlite3-0.1.2.drv ... applying 1 graft for /gnu/store/ipq0lh3saikq6lz611za2x1z0g892kbl-guix-daemon-1.2.0-20.2d73086.drv ... applying 4 grafts for /gnu/store/pjxqlad11sgm0x0b18pzd15qcpj2383n-python-3.8.2.drv ... building /gnu/store/2f4yllydqcmf0756fdmm0r6crvdy7fld-zstd-1.4.4.tar.gz.drv... downloading from https://github.com/facebook/zstd/releases/download/v1.4.4/zstd-1.4.4.tar.gz ... applying 2 grafts for /gnu/store/pfqrbyvjkz3v6x0gv1mpy9i5mxrg2pns-glib-2.62.6.drv ... building /gnu/store/dqvqnds0lx3q4cpf65lb092hkkb33s4d-zstd-1.4.4.tar.xz.drv... applying 2 grafts for /gnu/store/6h9g4dk1cksn2ngm12yga4fdw5nsd8kx-avahi-0.8.drv ... applying 4 grafts for /gnu/store/a2gnf57rikfx4a5q7s7f62p7av8vfc9r-cairo-1.16.0.drv ... applying 1 graft for /gnu/store/qp3r8npjap3rinmggw7mnircvmcmpiq8-gts-0.7.6.drv ... applying 2 grafts for /gnu/store/vd7vw8qbwavkybil28mra0m2ph35wams-guile-avahi-0.4.0-1.6d43caf.drv ... applying 1 graft for /gnu/store/gsaqh14znm5lyhk7vvdpchlpyf56lrgr-harfbuzz-2.6.4.drv ... building /gnu/store/y9ihzp2xxbx02xv24khvm0ikkbsvjfdc-zstd-1.4.4.drv... applying 6 grafts for /gnu/store/wqi8p11higi9rb3nwkkkp1f1jlyzjj5j-pango-1.44.7.drv ... applying 1 graft for /gnu/store/qp12gvzsbmdc4gqv8xnd1n7ljmmianfj-guile-zstd-0.1.1.drv ... applying 12 grafts for /gnu/store/fw1i9k09x8d2xm0zdiipn2ma76dpy53v-graphviz-2.42.3.drv ... building /gnu/store/7gvgzb42h006qd2fn5l61x6a8b6lvcdq-guix-extra.drv... building /gnu/store/gnszzwlniv2s2qppsnpv94b1qm8laz50-guix-manual.drv... building /gnu/store/64nx1zj3h8p194hsbzs6srl7jjhx6lc6-guix-extra-modules.drv... building /gnu/store/spm7snav22r8nxp9l3pbwh130lj6yknx-guix-packages-base.drv... building /gnu/store/vyx8rvz83n69nwg4r704d033p9l6xd0z-guix-packages-base-modules.drv... building /gnu/store/a2kjq1rpb3grip2g57g9p3zjj5p7vmai-guix-packages.drv... building /gnu/store/22f1liism9ckrqwpvi7p3g8q8g1pamka-guix-packages-modules.drv... building /gnu/store/y5imwqcdgb7z116kaz9zp52iscsw1l4j-guix-system.drv... building /gnu/store/108db6ank5imcl7qqs5hdasbbldg4qkx-guix-cli.drv... building /gnu/store/9a1swdas4g77ixh79k2qqgpb96jfzsd5-guix-system-modules.drv... building /gnu/store/2fhkd8vpshg467vwvqfnjqzd1d57kc3q-guix-cli-modules.drv... building /gnu/store/xair6fq4iff2nnjaj4jr0x76261mp33b-guix-system-tests.drv... building /gnu/store/yz854xfxvmpqvl80rjw1g6dj7fakazz4-guix-system-tests-modules.drv... building /gnu/store/cdqjf6fjvxrm57iqizsax9njsm65qhxm-guix-4dff6ecde-modules.drv... building /gnu/store/jwpzpnzlcn60inhqwpyy68cn8yhmgljy-guix-module-union.drv... building /gnu/store/apzhnh46x94f5qghq7cdl4843dpzwiyq-guix-command.drv... building /gnu/store/al24h5p65c67jhszlj9596khybm7yrfd-guix-daemon.drv... building /gnu/store/gl94mrqwqdmz98l5fwk756xzrwhm9ha6-guix-4dff6ecde.drv... building CA certificate bundle... building fonts directory... building directory of Info manuals... building database for manual pages... building profile with 1 package... building /gnu/store/9yfr0ra7q8vi6xdqlzz6gydcqxw64wrh-inferior-script.scm.drv... building package cache... building profile with 1 package... New in this revision: 270 new packages: abook, airspyhf, boost-mpi, build, camlidl, cbonsai, cfm, cl-abstract-classes, cl-bodge-math, cl-bodge-queue, cl-bodge-utilities, cl-clip, … 612 packages upgraded: abseil-cpp@20200923.3, acpica@20210331, american-fuzzy-lop@2.57b, ardour@6.6, asio@1.18.1, asymptote@2.70, autocutsel@0.10.1, autofs@5.1.7, avidemux@2.7.8, aws-c-common@0.5.3, babl@0.1.86, balsa@2.6.2, … News for channel 'guix' Risk of local privilege escalation during user account creation New supported platform: powerpc64le-linux Update on previous `guix-daemon' local privilege escalation Risk of local privilege escalation via `guix-daemon' `qemu-binfmt-service-type' is usable for any container hint: Run `guix pull --news' to read all the news. ~~~~ The following packages are installed: ~~~~ $ guix package -I guile-readline 3.0.2 out /gnu/store/va6l1ivclww22fi38w5h99pb4ndn99hg-guile-readline-3.0.2 guile-colorized 0.1 out /gnu/store/5h0jfssgyx49cq82wrmw57an7ngb7kkz-guile-colorized-0.1 guile-hall 0.3.1 out /gnu/store/3kj73kxjknq8qdh8dlblhb9b7wmjwzy2-guile-hall-0.3.1 glibc-utf8-locales 2.31 out /gnu/store/395pvii4bcjqxvdv7h0drq10lxi01sv1-glibc-utf8-locales-2.31 sicp 20170703-1.225c172 out /gnu/store/x2safq6fvcbhp2rljny89qiq74y1xd13-sicp-20170703-1.225c172 guile-lib 0.2.6.1 out /gnu/store/c4jcaj2bfqlm62hpr50m3jmsrjnwv9f1-guile-lib-0.2.6.1 emacs 27.1 out /gnu/store/0q1c4iika9k9002davyywppm363md9iq-emacs-27.1 lyx 2.3.6.1 out /gnu/store/phbrlp30fv30m8j5ppa5qybjkqra85yi-lyx-2.3.6.1 guile 3.0.5 out /gnu/store/m5iprcg6pb5ch86r9agmqwd8v6kp7999-guile-3.0.5 blis 0.2.2 out /gnu/store/yvn2d1nlsgp83i9zmfpz48a12ynbxq50-blis-0.2.2 openblas 0.3.9 out /gnu/store/bs9pl1f805ins80xaf4s3n35a0x2lyq3-openblas-0.3.9 lapack 3.9.0 out /gnu/store/jpx83q2s7dhpzjnj93w8zywxb3g7x35i-lapack-3.9.0 my-hello 2.10 out /gnu/store/h21bncim3hshjpfbs1dn4kvg1ri6zb7z-my-hello-2.10 guile-fslib 0.2.0 out /gnu/store/2k3x0j6mvypjagam39dx89fd5yan7a3y-guile-fslib-0.2.0 ~~~~ The error happened on a foreign distro in both cases. Should I provide anything else? Best wishes, Zelphir -- repositories: https://notabug.org/ZelphirKaltstahl --------------19D271F7C88F5E149166A96D Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 PGh0bWw+CiAgPGhlYWQ+CgogICAgPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBj b250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPgogIDwvaGVhZD4KICA8Ym9keT4K ICAgIDxwPkhpITwvcD4KICAgIDxwPkkgYW0gZXhwZXJpZW5jaW5nIGEgYnVnIHdoZW4gcnVu bmluZyBgZ3VpeCBwdWxsYCBhZ2Fpbi4gTm90IHN1cmUsCiAgICAgIHdoZXRoZXIgaXQgaXMg dGhlIHNhbWUgYXMgdGhlIHByZXZpb3VzIG9uZSwgb3IgYSBkaWZmZXJlbnQgb25lLgogICAg ICBUaGlzIGlzIGEgZGlmZmVyZW50IG1hY2hpbmUgdGhhbiB0aGUgcHJldmlvdXMgYnVnIHJl cG9ydCBJIHNlbnQKICAgICAgaW4uIEd1aXggdG9sZCBtZSB0byBwbGVhc2UgcmVwb3J0IGl0 LCBzbyBoZXJlIGl0IGdvZXM6PC9wPgogICAgPHByZT5+fn5+CiQgZ3VpeCBwdWxsClVwZGF0 aW5nIGNoYW5uZWwgJ2d1aXgnIGZyb20gR2l0IHJlcG9zaXRvcnkgYXQgJzxhIGNsYXNzPSJt b3otdHh0LWxpbmstZnJlZXRleHQiIGhyZWY9Imh0dHBzOi8vZ2l0LnNhdmFubmFoLmdudS5v cmcvZ2l0L2d1aXguZ2l0Ij5odHRwczovL2dpdC5zYXZhbm5haC5nbnUub3JnL2dpdC9ndWl4 LmdpdDwvYT4nLi4uCkF1dGhlbnRpY2F0aW5nIGNoYW5uZWwgJ2d1aXgnLCBjb21taXRzIDll ZGIzZjYgdG8gNGRmZjZlYyAoODQgbmV3IGNvbW1pdHMpLi4uCkJ1aWxkaW5nIGZyb20gdGhp cyBjaGFubmVsOgogIGd1aXggICAgICA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWZyZWV0ZXh0 IiBocmVmPSJodHRwczovL2dpdC5zYXZhbm5haC5nbnUub3JnL2dpdC9ndWl4LmdpdCI+aHR0 cHM6Ly9naXQuc2F2YW5uYWguZ251Lm9yZy9naXQvZ3VpeC5naXQ8L2E+CTRkZmY2ZWMKc3Vi c3RpdHV0ZTogdXBkYXRpbmcgc3Vic3RpdHV0ZXMgZnJvbSAnPGEgY2xhc3M9Im1vei10eHQt bGluay1mcmVldGV4dCIgaHJlZj0iaHR0cHM6Ly9jaS5ndWl4LmdudS5vcmciPmh0dHBzOi8v Y2kuZ3VpeC5nbnUub3JnPC9hPicuLi4gMTAwLjAlCmRvd25sb2FkaW5nIGZyb20gPGEgY2xh c3M9Im1vei10eHQtbGluay1mcmVldGV4dCIgaHJlZj0iaHR0cHM6Ly9jaS5ndWl4LmdudS5v cmcvbmFyL2x6aXAvbGZqa2x5bmZoM2t3c3gwaXdmd2NtNzF5NHFmMzZ3dzMtY29tcHV0ZS1n dWl4LWRlcml2YXRpb24iPmh0dHBzOi8vY2kuZ3VpeC5nbnUub3JnL25hci9semlwL2xmamts eW5maDNrd3N4MGl3ZndjbTcxeTRxZjM2d3czLWNvbXB1dGUtZ3VpeC1kZXJpdmF0aW9uPC9h PiAuLi4KIGNvbXB1dGUtZ3VpeC1kZXJpdmF0aW9uICAxS2lCICAgICAgICAxMDhLaUIvcyAw MDowMCBbIyMjIyMjIyMjIyMjIyMjIyMjXSAxMDAuMCUKCnN1YnN0aXR1dGU6IHVwZGF0aW5n IHN1YnN0aXR1dGVzIGZyb20gJzxhIGNsYXNzPSJtb3otdHh0LWxpbmstZnJlZXRleHQiIGhy ZWY9Imh0dHBzOi8vY2kuZ3VpeC5nbnUub3JnIj5odHRwczovL2NpLmd1aXguZ251Lm9yZzwv YT4nLi4uIDEwMC4wJQpkb3dubG9hZGluZyBmcm9tIDxhIGNsYXNzPSJtb3otdHh0LWxpbmst ZnJlZXRleHQiIGhyZWY9Imh0dHBzOi8vY2kuZ3VpeC5nbnUub3JnL25hci9semlwLzFxZDg4 MDY0ajJpaWNmbmt4ZjV5bGZmbXZpc25zZGx3LWN1cmwtNy43Ni4wIj5odHRwczovL2NpLmd1 aXguZ251Lm9yZy9uYXIvbHppcC8xcWQ4ODA2NGoyaWljZm5reGY1eWxmZm12aXNuc2Rsdy1j dXJsLTcuNzYuMDwvYT4gLi4uCiBjdXJsLTcuNzYuMCAgMzg1S2lCICAgICAgICAgICAgICAg IDUxNC4yTWlCL3MgMDA6MDAgWyMjIyMjIyMjIyMjIyMjIyMjI10gMTAwLjAvCgpzdWJzdGl0 dXRlOiB1cGRhdGluZyBzdWJzdGl0dXRlcyBmcm9tICc8YSBjbGFzcz0ibW96LXR4dC1saW5r LWZyZWV0ZXh0IiBocmVmPSJodHRwczovL2NpLmd1aXguZ251Lm9yZyI+aHR0cHM6Ly9jaS5n dWl4LmdudS5vcmc8L2E+Jy4uLiAxMDAuMCUKZG93bmxvYWRpbmcgZnJvbSA8YSBjbGFzcz0i bW96LXR4dC1saW5rLWZyZWV0ZXh0IiBocmVmPSJodHRwczovL2NpLmd1aXguZ251Lm9yZy9u YXIvbHppcC81MzFyd2tiOG02eWNjcTRsMW1rcnF4Y2xycXd5MGpqMy1naXQtbWluaW1hbC0y LjMxLjEiPmh0dHBzOi8vY2kuZ3VpeC5nbnUub3JnL25hci9semlwLzUzMXJ3a2I4bTZ5Y2Nx NGwxbWtycXhjbHJxd3kwamozLWdpdC1taW5pbWFsLTIuMzEuMTwvYT4gLi4uCiBnaXQtbWlu aW1hbC0yLjMxLjEgIDQuMU1pQiAgICAgICAgICAgNS44TWlCL3MgMDA6MDEgWyMjIyMjIyMj IyMjIyMjIyMjI10gMTAwLjAvCgpzdWJzdGl0dXRlOiB1cGRhdGluZyBzdWJzdGl0dXRlcyBm cm9tICc8YSBjbGFzcz0ibW96LXR4dC1saW5rLWZyZWV0ZXh0IiBocmVmPSJodHRwczovL2Np Lmd1aXguZ251Lm9yZyI+aHR0cHM6Ly9jaS5ndWl4LmdudS5vcmc8L2E+Jy4uLiAxMDAuMCUK c3Vic3RpdHV0ZTogdXBkYXRpbmcgc3Vic3RpdHV0ZXMgZnJvbSAnPGEgY2xhc3M9Im1vei10 eHQtbGluay1mcmVldGV4dCIgaHJlZj0iaHR0cHM6Ly9jaS5ndWl4LmdudS5vcmciPmh0dHBz Oi8vY2kuZ3VpeC5nbnUub3JnPC9hPicuLi4gMTAwLjAlCnN1YnN0aXR1dGU6IHVwZGF0aW5n IHN1YnN0aXR1dGVzIGZyb20gJzxhIGNsYXNzPSJtb3otdHh0LWxpbmstZnJlZXRleHQiIGhy ZWY9Imh0dHBzOi8vY2kuZ3VpeC5nbnUub3JnIj5odHRwczovL2NpLmd1aXguZ251Lm9yZzwv YT4nLi4uIDEwMC4wJQpzdWJzdGl0dXRlOiB1cGRhdGluZyBzdWJzdGl0dXRlcyBmcm9tICc8 YSBjbGFzcz0ibW96LXR4dC1saW5rLWZyZWV0ZXh0IiBocmVmPSJodHRwczovL2NpLmd1aXgu Z251Lm9yZyI+aHR0cHM6Ly9jaS5ndWl4LmdudS5vcmc8L2E+Jy4uLiAxMDAuMCUKZG93bmxv YWRpbmcgZnJvbSA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWZyZWV0ZXh0IiBocmVmPSJodHRw czovL2NpLmd1aXguZ251Lm9yZy9uYXIvbHppcC9rcW14a3J3MWt6cTQ4Nnl3Z2Jqdzc0cjZy ejFjam54bC1ndWlsZS1hdmFoaS0wLjQuMC0xLjZkNDNjYWYiPmh0dHBzOi8vY2kuZ3VpeC5n bnUub3JnL25hci9semlwL2txbXhrcncxa3pxNDg2eXdnYmp3NzRyNnJ6MWNqbnhsLWd1aWxl LWF2YWhpLTAuNC4wLTEuNmQ0M2NhZjwvYT4gLi4uCiBndWlsZS1hdmFoaS0wLjQuMC0xLjZk NDNjYWYgIDU0S2lCIDEwMS4zTWlCL3MgMDA6MDAgWyMjIyMjIyMjIyMjIyMjIyMjI10gMTAw LjAlCgpkb3dubG9hZGluZyBmcm9tIDxhIGNsYXNzPSJtb3otdHh0LWxpbmstZnJlZXRleHQi IGhyZWY9Imh0dHBzOi8vY2kuZ3VpeC5nbnUub3JnL25hci9semlwL2gzbXFpcmpudjVxN3F5 Zmtwc3d5dnhoY2Fyc3o2aXM3LWd1aWxlLWdpdC0wLjUuMCI+aHR0cHM6Ly9jaS5ndWl4Lmdu dS5vcmcvbmFyL2x6aXAvaDNtcWlyam52NXE3cXlma3Bzd3l2eGhjYXJzejZpczctZ3VpbGUt Z2l0LTAuNS4wPC9hPiAuLi4KIGd1aWxlLWdpdC0wLjUuMCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAxLjEzR2lCL3MgMDA6MDAgfCA1NTFLaUIgdHJhbnNmZXJyZWQKCkJhY2t0cmFj ZToKSW4gZ3VpeC91aS5zY206CiAgMjE2NDoxMiAxOSAocnVuLWd1aXgtY29tbWFuZCBfIC4g XykKSW4gZ3VpeC9zY3JpcHRzL3N1YnN0aXR1dGUuc2NtOgogICAgNjUyOjIgMTggKGd1aXgt c3Vic3RpdHV0ZSAuIF8pCkluIHVua25vd24gZmlsZToKICAgICAgICAgIDE3ICh3aXRoLWNv bnRpbnVhdGlvbi1iYXJyaWVyICMmbHQ7cHJvY2VkdXJlIHRodW5rICgpJmd0OykKSW4gaWNl LTkvYm9vdC05LnNjbToKICAxNzM2OjEwIDE2ICh3aXRoLWV4Y2VwdGlvbi1oYW5kbGVyIF8g XyAjOnVud2luZD8gXyAjIF8pCkluIHVua25vd24gZmlsZToKICAgICAgICAgIDE1IChhcHBs eS1zbW9iLzAgIyZsdDt0aHVuayA3ZmRhNmEzZGQyYTAmZ3Q7KQpJbiBpY2UtOS9ib290LTku c2NtOgogIDE3MzY6MTAgMTQgKHdpdGgtZXhjZXB0aW9uLWhhbmRsZXIgXyBfICM6dW53aW5k PyBfICMgXykKICAxNzM2OjEwIDEzICh3aXRoLWV4Y2VwdGlvbi1oYW5kbGVyIF8gXyAjOnVu d2luZD8gXyAjIF8pCiAgMTczMToxNSAxMiAod2l0aC1leGNlcHRpb24taGFuZGxlciAjJmx0 O3Byb2NlZHVyZSA3ZmRhNjk4ZTY4ZDAgYXQgaWM/Jmd0OyA/KQpJbiBndWl4L3NjcmlwdHMv c3Vic3RpdHV0ZS5zY206CiAgIDcwMToxNyAxMSAoXykKICAgIDQxMDo3IDEwIChwcm9jZXNz LXN1YnN0aXR1dGlvbiBfICIvZ251L3N0b3JlLzYyaGZyNTZpcGw3MDZrMTdnMD8iID8pCklu IGljZS05L2Jvb3QtOS5zY206CiAgMTczNjoxMCAgOSAod2l0aC1leGNlcHRpb24taGFuZGxl ciBfIF8gIzp1bndpbmQ/IF8gIyBfKQpJbiBndWl4L3NjcmlwdHMvc3Vic3RpdHV0ZS5zY206 CiAgICA0MTk6OSAgOCAoXykKSW4gaWNlLTkvYm9vdC05LnNjbToKICAxNzMxOjE1ICA3ICh3 aXRoLWV4Y2VwdGlvbi1oYW5kbGVyICMmbHQ7cHJvY2VkdXJlIDdmZGE2OGNmZmNjMCBhdCBp Yz8mZ3Q7ID8pCiAgMTY2OToxNiAgNiAocmFpc2UtZXhjZXB0aW9uIF8gIzpjb250aW51YWJs ZT8gXykKICAxNjY3OjE2ICA1IChyYWlzZS1leGNlcHRpb24gXyAjOmNvbnRpbnVhYmxlPyBf KQogIDE2Njk6MTYgIDQgKHJhaXNlLWV4Y2VwdGlvbiBfICM6Y29udGludWFibGU/IF8pCkJh Y2t0cmFjZToKICAgICAgICAgIDE1IChwcmltaXRpdmUtbG9hZCAiL2dudS9zdG9yZS9sZmpr bHluZmgza3dzeDBpd2Z3Y203MXk0cWYzNnd3My1jb21wdXRlLWd1aXgtZGVyaXZhdGlvbiIp CkluIGljZS05L2V2YWwuc2NtOgogICAgMTU1OjkgMTQgKF8gXykKICAgIDE1OTo5IDEzIChf ICMoIygjKCMoIygjKCMoIygjKCMoIygjKCMoIygjKCMoIyZsdDtkaXJlY3RvcnkgKGd1aWxl LXU/Jmd0OyA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/KSA/ KSkKSW4gaWNlLTkvYm9vdC05LnNjbToKICAgIDE1MjoyIDEyICh3aXRoLWZsdWlkKiBfIF8g XykKICAgIDE1MjoyIDExICh3aXRoLWZsdWlkKiBfIF8gXykKSW4gLi9ndWl4L3N0b3JlLnNj bToKICAyMDY2OjI0IDEwIChydW4td2l0aC1zdG9yZSAjJmx0O3N0b3JlLWNvbm5lY3Rpb24g MjU2Ljk5IDdmMWIxOTM3MTNjMCZndDsgXyAjOmd1aWxlLWZvci1idWlsZCBfICM6c3lzdGVt IF8gIzp0YXJnZXQgXykKICAgMTkwMDo4ICA5IChfIF8pCkluIC4vZ3VpeC9nZXhwLnNjbToK ICAgMjU2OjE4ICA4IChfIF8pCiAgIDExMzc6MiAgNyAoXyBfKQogICAxMDAzOjIgIDYgKF8g XykKICAgIDg0OTo0ICA1IChfIF8pCkluIC4vZ3VpeC9zdG9yZS5zY206CiAgMTk0ODoxMiAg NCAoXyAjJmx0O3N0b3JlLWNvbm5lY3Rpb24gMjU2Ljk5IDdmMWIxOTM3MTNjMCZndDspCiAg IDEzNjI6NSAgMyAobWFwL2FjY3VtdWxhdGUtYnVpbGRzICMmbHQ7c3RvcmUtY29ubmVjdGlv biAyNTYuOTkgN2YxYjE5MzcxM2MwJmd0OyBfIF8pCiAgMTM3MzoxNSAgMiAoXyAjJmx0O3N0 b3JlLWNvbm5lY3Rpb24gMjU2Ljk5IDdmMWIxOTM3MTNjMCZndDsgXyBfKQogICA3MTk6MTEg IDEgKHByb2Nlc3Mtc3RkZXJyICMmbHQ7c3RvcmUtY29ubmVjdGlvbiAyNTYuOTkgN2YxYjE5 MzcxM2MwJmd0OyBfKQpJbiAuL2d1aXgvc2VyaWFsaXphdGlvbi5zY206CiAgICAgODA6NiAg MCAocmVhZC1pbnQgIyZsdDtpbnB1dC1vdXRwdXQ6IGZpbGUgMTAmZ3Q7KQoKLi9ndWl4L3Nl cmlhbGl6YXRpb24uc2NtOjgwOjY6IEluIHByb2NlZHVyZSByZWFkLWludDoKRVJST1I6CiAg MS4gJmFtcDtuYXItZXJyb3I6CiAgICAgIGZpbGU6ICNmCiAgICAgIHBvcnQ6ICMmbHQ7aW5w dXQtb3V0cHV0OiBmaWxlIDEwJmd0OwpndWl4IHB1bGw6IGVycm9yOiBZb3UgZm91bmQgYSBi dWc6IHRoZSBwcm9ncmFtICcvZ251L3N0b3JlL2xmamtseW5maDNrd3N4MGl3ZndjbTcxeTRx ZjM2d3czLWNvbXB1dGUtZ3VpeC1kZXJpdmF0aW9uJwpmYWlsZWQgdG8gY29tcHV0ZSB0aGUg ZGVyaXZhdGlvbiBmb3IgR3VpeCAodmVyc2lvbjogIjRkZmY2ZWNkZTg1ZWVjNDczYWIyMzFj Zjc1ZjUxZTk4ZThhY2ExZTkiOyBzeXN0ZW06ICJ4ODZfNjQtbGludXgiOwpob3N0IHZlcnNp b246ICI3MzI3Mjk1NDYyZmNjYWU0ZWUzZTliZjc0OTYyYzgyZDM0NDVmZWM4IjsgcHVsbC12 ZXJzaW9uOiAxKS4KUGxlYXNlIHJlcG9ydCBpdCBieSBlbWFpbCB0byA8YSBjbGFzcz0ibW96 LXR4dC1saW5rLXJmYzIzOTZFIiBocmVmPSJtYWlsdG86YnVnLWd1aXhAZ251Lm9yZyI+Jmx0 O2J1Zy1ndWl4QGdudS5vcmcmZ3Q7PC9hPi4Kfn5+fgo8L3ByZT4KICAgIDxwPlRoaXMgdGlt ZSBJIGFscmVhZHkga25vdyBJIGNhbiB0cnkgYGd1aXggcHVsbCAtLW5vLXN1YnN0aXR1dGVz YC4KICAgICAgVGhpcyByYW4gd2l0aG91dCBlcnJvcjo8L3A+CiAgICA8cHJlPn5+fn4KJCBn dWl4IHB1bGwgLS1uby1zdWJzdGl0dXRlcwpVcGRhdGluZyBjaGFubmVsICdndWl4JyBmcm9t IEdpdCByZXBvc2l0b3J5IGF0ICc8YSBjbGFzcz0ibW96LXR4dC1saW5rLWZyZWV0ZXh0IiBo cmVmPSJodHRwczovL2dpdC5zYXZhbm5haC5nbnUub3JnL2dpdC9ndWl4LmdpdCI+aHR0cHM6 Ly9naXQuc2F2YW5uYWguZ251Lm9yZy9naXQvZ3VpeC5naXQ8L2E+Jy4uLgpCdWlsZGluZyBm cm9tIHRoaXMgY2hhbm5lbDoKICBndWl4ICAgICAgPGEgY2xhc3M9Im1vei10eHQtbGluay1m cmVldGV4dCIgaHJlZj0iaHR0cHM6Ly9naXQuc2F2YW5uYWguZ251Lm9yZy9naXQvZ3VpeC5n aXQiPmh0dHBzOi8vZ2l0LnNhdmFubmFoLmdudS5vcmcvZ2l0L2d1aXguZ2l0PC9hPgk0ZGZm NmVjCmJ1aWxkaW5nIC9nbnUvc3RvcmUvMjkyc2xzdnI0NjFwZjRtbXhwNXBibjdpenlyejZq N2EtbWtkaXIuZHJ2Li4uCmRvd25sb2FkaW5nIGZyb20gPGEgY2xhc3M9Im1vei10eHQtbGlu ay1mcmVldGV4dCIgaHJlZj0iaHR0cHM6Ly9naXQuc2F2YW5uYWguZ251Lm9yZy9jZ2l0L2d1 aXguZ2l0L3BsYWluL2dudS9wYWNrYWdlcy9ib290c3RyYXAvaTY4Ni1saW51eC9ta2Rpcj9p ZD00NGYwN2QxZGM2ODA2ZTk3YzRlOWVlM2U2YmU4ODNjYzU5ZGM2NjZlIj5odHRwczovL2dp dC5zYXZhbm5haC5nbnUub3JnL2NnaXQvZ3VpeC5naXQvcGxhaW4vZ251L3BhY2thZ2VzL2Jv b3RzdHJhcC9pNjg2LWxpbnV4L21rZGlyP2lkPTQ0ZjA3ZDFkYzY4MDZlOTdjNGU5ZWUzZTZi ZTg4M2NjNTlkYzY2NmU8L2E+IC4uLgpidWlsZGluZyAvZ251L3N0b3JlL25sZmg5MzlwcGs1 aGpxbHJnM3FhMmJnZ3lwd3Y1eWdhLWd1aWxlLWpzb24tMy41LjAudGFyLmd6LmRydi4uLgpk b3dubG9hZGluZyBmcm9tIDxhIGNsYXNzPSJtb3otdHh0LWxpbmstZnJlZXRleHQiIGhyZWY9 Imh0dHA6Ly9kb3dubG9hZC5zYXZhbm5haC5nbnUub3JnL3JlbGVhc2VzL2d1aWxlLWpzb24v Z3VpbGUtanNvbi0zLjUuMC50YXIuZ3oiPmh0dHA6Ly9kb3dubG9hZC5zYXZhbm5haC5nbnUu b3JnL3JlbGVhc2VzL2d1aWxlLWpzb24vZ3VpbGUtanNvbi0zLjUuMC50YXIuZ3o8L2E+IC4u LgpidWlsZGluZyAvZ251L3N0b3JlL2N6NDd2NDQzam02bmJqc2wwMjU2d25qNTI1ZDliZHhw LWd1aWxlLWxpYi0wLjIuNy50YXIuZ3ouZHJ2Li4uCmRvd25sb2FkaW5nIGZyb20gPGEgY2xh c3M9Im1vei10eHQtbGluay1mcmVldGV4dCIgaHJlZj0iaHR0cDovL2Rvd25sb2FkLnNhdmFu bmFoLmdudS5vcmcvcmVsZWFzZXMvZ3VpbGUtbGliL2d1aWxlLWxpYi0wLjIuNy50YXIuZ3oi Pmh0dHA6Ly9kb3dubG9hZC5zYXZhbm5haC5nbnUub3JnL3JlbGVhc2VzL2d1aWxlLWxpYi9n dWlsZS1saWItMC4yLjcudGFyLmd6PC9hPiAuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS9uYjN2 a2YzeGRwem1xMzMyYzFnOXBsdzFmYnl2NWtxYy1ndWlsZS1qc29uLTMuNS4wLmRydi4uLgpi dWlsZGluZyAvZ251L3N0b3JlLzl3c3I5cXdtNDBxY203Y3hqNHp3bm40anFzbDI4bmZ3LWd1 aWxlLWxpYi0wLjIuNy5kcnYuLi4KLSAnY2hlY2snIHBoYXNlYnVpbGQtbG9nIDIzNTI4IDQw OTYKaHRtbC0mZ3Q7c2h0bWwgIiZhbXA7I1g0MiIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7 ICgqVE9QKiAiQiIpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmFtcDs0MjsiICM6 c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogIiZhbXA7NDI7IikKOzsgUGFzc2VkLgoK KGh0bWwtJmd0O3NodG1sICJhYWEmYW1wO2NvcHk7YmJiJmFtcDthbXA7Y2NjJmFtcDtsdDtk ZGQmYW1wOyZhbXA7Z3Q7ZWVlJmFtcDsjNDI7ZmZmJmFtcDsjMTAwMDtnZ2cmYW1wOyN4NWE7 aGhoIiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICJhYWEiICgqRU5USVRZKiAi YWRkaXRpb25hbCIgImNvcHkiKSAiYmJiJmFtcDtjY2MmbHQ7ZGRkJmFtcDsmZ3Q7ZWVlKmZm ZiIgKCpFTlRJVFkqICJhZGRpdGlvbmFsLWNoYXIiICIxMDAwIikgImdnZ1poaGgiKQo7OyBQ YXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDtJTUcgc3JjPVw8YSBjbGFzcz0ibW96LXR4 dC1saW5rLXJmYzIzOTZFIiBocmVmPSJodHRwOi8vcGljcy5lYmF5LmNvbS9hdy9waWNzL2xp c3RpbmdzL2ViYXlMb2dvXzM4eDE2LmdpZlwiPiJodHRwOi8vcGljcy5lYmF5LmNvbS9hdy9w aWNzL2xpc3RpbmdzL2ViYXlMb2dvXzM4eDE2LmdpZlwiPC9hPiBib3JkZXI9MCB3aWR0aD1c IjM4XCIgaGVpZ2h0PVwiMTZcIiBIU1BBQ0U9NSBWU1BBQ0U9MFwiJmd0OzImbHQ7L0ZPTlQm Z3Q7IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqIChpbWcgKEAgKHNyYyA8YSBj bGFzcz0ibW96LXR4dC1saW5rLXJmYzIzOTZFIiBocmVmPSJodHRwOi8vcGljcy5lYmF5LmNv bS9hdy9waWNzL2xpc3RpbmdzL2ViYXlMb2dvXzM4eDE2LmdpZiI+Imh0dHA6Ly9waWNzLmVi YXkuY29tL2F3L3BpY3MvbGlzdGluZ3MvZWJheUxvZ29fMzh4MTYuZ2lmIjwvYT4pIChib3Jk ZXIgIjAiKSAod2lkdGggIjM4IikgKGhlaWdodCAiMTYiKSAoaHNwYWNlICI1IikgKHZzcGFj ZSAiMCIpKSkgIjIiKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDthYWEgYmJi PWNjY1wiZGRkJmd0O2VlZSIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoYWFh IChAIChiYmIgImNjYyIpIChkZGQpKSAiZWVlIikpCjs7IFBhc3NlZC4KCihodG1sLSZndDtz aHRtbCAiJmx0O2FhYSBiYmI9Y2NjIFwiZGRkJmd0O2VlZSIgIzpzdHJpY3Q/ICd1bnNldCkK PT0mZ3Q7ICgqVE9QKiAoYWFhIChAIChiYmIgImNjYyIpIChkZGQpKSAiZWVlIikpCjs7IFBh c3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O0hUTUwmZ3Q7Jmx0O0hlYWQmZ3Q7Jmx0O1Rp dGxlJmd0O015IFRpdGxlJmx0Oy9UaXRsZSZndDsmbHQ7L0hlYWQmZ3Q7Jmx0O0JvZHkgQkdD b2xvcj1cIndoaXRlXCIgRm9vPTQyJmd0O1RoaXMgaXMgYSAmbHQ7QiZndDsmbHQ7SSZndDti b2xkLWl0YWxpYyZsdDsvQiZndDsmbHQ7L0kmZ3Q7IHRlc3Qgb2YgJmx0Oy9FcmsmZ3Q7YnJv a2VuIEhUTUwuJmx0O2JyJmd0O1llcyBpdCBpcy4mbHQ7L0JvZHkmZ3Q7Jmx0Oy9IVE1MJmd0 OyIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoaHRtbCAoaGVhZCAodGl0bGUg Ik15IFRpdGxlIikpIChib2R5IChAIChiZ2NvbG9yICJ3aGl0ZSIpIChmb28gIjQyIikpICJU aGlzIGlzIGEgIiAoYiAoaSAiYm9sZC1pdGFsaWMiKSkgIiB0ZXN0IG9mICIgImJyb2tlbiBI VE1MLiIgKGJyKSAiWWVzIGl0IGlzLiIpKSkKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1s ICImbHQ7IURPQ1RZUEUgaHRtbCBQVUJMSUMgXCItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3Ry aWN0Ly9FTlwiIFw8YSBjbGFzcz0ibW96LXR4dC1saW5rLXJmYzIzOTZFIiBocmVmPSJodHRw Oi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkXCI+Imh0dHA6 Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXN0cmljdC5kdGRcIjwvYT4mZ3Q7 IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICgqREVDTCogRE9DVFlQRSBodG1s IFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFN0cmljdC8vRU4iIDxhIGNsYXNzPSJt b3otdHh0LWxpbmstcmZjMjM5NkUiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1s MS9EVEQveGh0bWwxLXN0cmljdC5kdGQiPiJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEv RFREL3hodG1sMS1zdHJpY3QuZHRkIjwvYT4pKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0 bWwgIiZsdDtodG1sIHhtbG5zPVw8YSBjbGFzcz0ibW96LXR4dC1saW5rLXJmYzIzOTZFIiBo cmVmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sXCI+Imh0dHA6Ly93d3cudzMub3Jn LzE5OTkveGh0bWxcIjwvYT4geG1sOmxhbmc9XCJlblwiIGxhbmc9XCJlblwiJmd0OyIgIzpz dHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoaHRtbCAoQCAoeG1sbnMgPGEgY2xhc3M9 Im1vei10eHQtbGluay1yZmMyMzk2RSIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94 aHRtbCI+Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPC9hPikgKGxhbmcgImVuIikg KGxhbmcgImVuIikpKSkKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7aHRtbDpo dG1sIHhtbG5zOmh0bWw9XDxhIGNsYXNzPSJtb3otdHh0LWxpbmstcmZjMjM5NkUiIGhyZWY9 Imh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy1odG1sNDBcIj4iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MFwiPC9hPiZndDsmbHQ7aHRtbDpoZWFkJmd0OyZsdDtodG1sOnRpdGxl Jmd0O0Zyb2Jub3N0aWNhdGlvbiZsdDsvaHRtbDp0aXRsZSZndDsmbHQ7L2h0bWw6aGVhZCZn dDsmbHQ7aHRtbDpib2R5Jmd0OyZsdDtodG1sOnAmZ3Q7TW92ZWQgdG8gJmx0O2h0bWw6YSBo cmVmPVw8YSBjbGFzcz0ibW96LXR4dC1saW5rLXJmYzIzOTZFIiBocmVmPSJodHRwOi8vZnJv Yi5jb21cIj4iaHR0cDovL2Zyb2IuY29tXCI8L2E+Jmd0O2hlcmUuJmx0Oy9odG1sOmEmZ3Q7 Jmx0Oy9odG1sOnAmZ3Q7Jmx0Oy9odG1sOmJvZHkmZ3Q7Jmx0Oy9odG1sOmh0bWwmZ3Q7IiAj OnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqIChodG1sIChAICh4bWxuczpodG1sIDxh IGNsYXNzPSJtb3otdHh0LWxpbmstcmZjMjM5NkUiIGhyZWY9Imh0dHA6Ly93d3cudzMub3Jn L1RSL1JFQy1odG1sNDAiPiJodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIjwvYT4p KSAoaGVhZCAodGl0bGUgIkZyb2Jub3N0aWNhdGlvbiIpKSAoYm9keSAocCAiTW92ZWQgdG8g IiAoYSAoQCAoaHJlZiA8YSBjbGFzcz0ibW96LXR4dC1saW5rLXJmYzIzOTZFIiBocmVmPSJo dHRwOi8vZnJvYi5jb20iPiJodHRwOi8vZnJvYi5jb20iPC9hPikpICJoZXJlLiIpKSkpKQo7 OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDtSRVNFUlZBVElPTiB4bWxuczpIVE1M PVw8YSBjbGFzcz0ibW96LXR4dC1saW5rLXJmYzIzOTZFIiBocmVmPSJodHRwOi8vd3d3Lncz Lm9yZy9UUi9SRUMtaHRtbDQwXCI+Imh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy1odG1sNDBc IjwvYT4mZ3Q7Jmx0O05BTUUgSFRNTDpDTEFTUz1cImxhcmdlU2Fuc1NlcmlmXCImZ3Q7TGF5 bWFuLCBBJmx0Oy9OQU1FJmd0OyZsdDtTRUFUIENMQVNTPVwiWVwiIEhUTUw6Q0xBU1M9XCJs YXJnZU1vbm90eXBlXCImZ3Q7MzNCJmx0Oy9TRUFUJmd0OyZsdDtIVE1MOkEgSFJFRj1cIi9j Z2ktYmluL1Jlc1N0YXR1c1wiJmd0O0NoZWNrIFN0YXR1cyZsdDsvSFRNTDpBJmd0OyZsdDtE RVBBUlRVUkUmZ3Q7MTk5Ny0wNS0yNFQwNzo1NTowMCsxJmx0Oy9ERVBBUlRVUkUmZ3Q7Jmx0 Oy9SRVNFUlZBVElPTiZndDsiICM6c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHJl c2VydmF0aW9uIChAICh4bWxuczpIVE1MIDxhIGNsYXNzPSJtb3otdHh0LWxpbmstcmZjMjM5 NkUiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy1odG1sNDAiPiJodHRwOi8vd3d3 LnczLm9yZy9UUi9SRUMtaHRtbDQwIjwvYT4pKSAobmFtZSAoQCAoY2xhc3MgImxhcmdlU2Fu c1NlcmlmIikpICJMYXltYW4sIEEiKSAoc2VhdCAoQCAoY2xhc3MgIlkiKSAoY2xhc3MgImxh cmdlTW9ub3R5cGUiKSkgIjMzQiIpIChhIChAIChocmVmICIvY2dpLWJpbi9SZXNTdGF0dXMi KSkgIkNoZWNrIFN0YXR1cyIpIChkZXBhcnR1cmUgIjE5OTctMDUtMjRUMDc6NTU6MDArMSIp KSkKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7aHRtbCZndDsmbHQ7aGVhZCZn dDsmbHQ7dGl0bGUmZ3Q7Jmx0Oy90aXRsZSZndDsmbHQ7dGl0bGUmZ3Q7d2hhdGV2ZXImbHQ7 L3RpdGxlJmd0OyZsdDsvaGVhZCZndDsmbHQ7Ym9keSZndDsmbHQ7YSBocmVmPVwidXJsXCIm Z3Q7bGluayZsdDsvYSZndDsmbHQ7cCBhbGlnbj1jZW50ZXImZ3Q7Jmx0O3VsIGNvbXBhY3Qg c3R5bGU9XCJhYVwiJmd0OyZsdDtwJmd0O0JMYWgmbHQ7IS0tIGNvbW1lbnQgJmx0O2NvbW1l bnQmZ3Q7IC0tJmd0OyAmbHQ7aSZndDsgaXRhbGljICZsdDtiJmd0OyBib2xkICZsdDt0dCZn dDsgZW5lZCAmbHQ7L2kmZ3Q7IHN0aWxsICZhbXA7bHQ7IGJvbGQgJmx0Oy9iJmd0OyZsdDsv Ym9keSZndDsmbHQ7UCZndDsgQnV0IG5vdCBkb25lIHlldC4uLiIgIzpzdHJpY3Q/ICd1bnNl dCkKPT0mZ3Q7ICgqVE9QKiAoaHRtbCAoaGVhZCAodGl0bGUpICh0aXRsZSAid2hhdGV2ZXIi KSkgKGJvZHkgKGEgKEAgKGhyZWYgInVybCIpKSAibGluayIpIChwIChAIChhbGlnbiAiY2Vu dGVyIikpICh1bCAoQCAoY29tcGFjdCkgKHN0eWxlICJhYSIpKSkpIChwICJCTGFoIiAoKkNP TU1FTlQqICIgY29tbWVudCAmbHQ7Y29tbWVudCZndDsgIikgIiAiIChpICIgaXRhbGljICIg KGIgIiBib2xkICIgKHR0ICIgZW5lZCAiKSkpICIgc3RpbGwgJmx0OyBib2xkICIpKSAocCAi IEJ1dCBub3QgZG9uZSB5ZXQuLi4iKSkpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAi Jmx0Oz94bWwgdmVyc2lvbj1cIjEuMFwiIGVuY29kaW5nPVwiVVRGLThcIj8mZ3Q7IiAjOnN0 cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICgqUEkqIHhtbCAidmVyc2lvbj1cIjEuMFwi IGVuY29kaW5nPVwiVVRGLThcIiIpKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZs dDs/cGhwIHBocF9pbmZvKCk7ID8mZ3Q7IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpU T1AqICgqUEkqIHBocCAicGhwX2luZm8oKTsgIikpCjs7IFBhc3NlZC4KCihodG1sLSZndDtz aHRtbCAiJmx0Oz9waHAgcGhwX2luZm8oKTsgPyIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7 ICgqVE9QKiAoKlBJKiBwaHAgInBocF9pbmZvKCk7ID8iKSkKOzsgUGFzc2VkLgoKKGh0bWwt Jmd0O3NodG1sICImbHQ7P3BocCBwaHBfaW5mbygpOyAiICM6c3RyaWN0PyAndW5zZXQpCj09 Jmd0OyAoKlRPUCogKCpQSSogcGhwICJwaHBfaW5mbygpOyAiKSkKOzsgUGFzc2VkLgoKKGh0 bWwtJmd0O3NodG1sICImbHQ7P2ZvbyBiYXIgPyBiYXogJmd0OyBibG9ydCA/Jmd0OyIgIzpz dHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoKlBJKiBmb28gImJhciA/IGJheiAmZ3Q7 IGJsb3J0ICIpKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDs/Zm9vIGI/Jmd0 O3giICM6c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKCpQSSogZm9vICJiIikgIngi KQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDs/Zm9vID8mZ3Q7eCIgIzpzdHJp Y3Q/QCBidWlsZC1sb2cgMjM1MjggNDA5MAogJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICgqUEkq IGZvbyAiIikgIngiKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDs/Zm9vID8m Z3Q7eCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoKlBJKiBmb28gIiIpICJ4 IikKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7P2Zvbz8mZ3Q7eCIgIzpzdHJp Y3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoKlBJKiBmb28gIiIpICJ4IikKOzsgUGFzc2Vk LgoKKGh0bWwtJmd0O3NodG1sICImbHQ7P2Y/Jmd0O3giICM6c3RyaWN0PyAndW5zZXQpCj09 Jmd0OyAoKlRPUCogKCpQSSogZiAiIikgIngiKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0 bWwgIiZsdDs/PyZndDt4IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICgqUEkq ICNmICIiKSAieCIpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0Oz8mZ3Q7eCIg IzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoKlBJKiAjZiAiJmd0O3giKSkKOzsg UGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7Zm9vIGJhcj1cImJhelwiJmd0O2Jsb3J0 IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqIChmb28gKEAgKGJhciAiYmF6Iikp ICJibG9ydCIpKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDtmb28gYmFyPSdi YXonJmd0O2Jsb3J0IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqIChmb28gKEAg KGJhciAiYmF6IikpICJibG9ydCIpKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZs dDtmb28gYmFyPVwiYmF6JyZndDtibG9ydCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgq VE9QKiAoZm9vIChAIChiYXIgImJheicmZ3Q7YmxvcnQiKSkpKQo7OyBQYXNzZWQuCgooaHRt bC0mZ3Q7c2h0bWwgIiZsdDtmb28gYmFyPSdiYXpcIiZndDtibG9ydCIgIzpzdHJpY3Q/ICd1 bnNldCkKPT0mZ3Q7ICgqVE9QKiAoZm9vIChAIChiYXIgImJhelwiJmd0O2Jsb3J0IikpKSkK OzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7cCZndDtBJmx0Oy9wJmd0OyZsdDtz Y3JpcHQmZ3Q7bGluZTAgJmx0O1xubGluZTFcbiZsdDtsaW5lMiZndDsmbHQ7L3NjcmlwdCZn dDsmbHQ7cCZndDtCJmx0Oy9wJmd0OyIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9Q KiAocCAiQSIpIChzY3JpcHQgImxpbmUwICZsdDtcbiIgImxpbmUxXG4iICImbHQ7bGluZTIm Z3Q7IikgKHAgIkIiKSkKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7eG1wJmd0 O2EmbHQ7YiZndDtjJmx0Oy9YTVAmZ3Q7ZCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgq VE9QKiAoeG1wICJhJmx0O2ImZ3Q7YyIpICJkIikKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3No dG1sICImbHQ7WE1QJmd0O2EmbHQ7YiZndDtjJmx0Oy94bXAmZ3Q7ZCIgIzpzdHJpY3Q/ICd1 bnNldCkKPT0mZ3Q7ICgqVE9QKiAoeG1wICJhJmx0O2ImZ3Q7YyIpICJkIikKOzsgUGFzc2Vk LgoKKGh0bWwtJmd0O3NodG1sICImbHQ7eG1wJmd0O2EmbHQ7YiZndDtjJmx0Oy9mb286eG1w Jmd0O2QiICM6c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHhtcCAiYSZsdDtiJmd0 O2MiKSAiZCIpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O2Zvbzp4bXAmZ3Q7 YSZsdDtiJmd0O2MmbHQ7L3htcCZndDtkIiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpU T1AqICh4bXAgImEmbHQ7YiZndDtjIikgImQiKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0 bWwgIiZsdDtmb286eG1wJmd0O2EmbHQ7YiZndDtjJmx0Oy9mb286eG1wJmd0O2QiICM6c3Ry aWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHhtcCAiYSZsdDtiJmd0O2MiKSAiZCIpCjs7 IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O2Zvbzp4bXAmZ3Q7YSZsdDtiJmd0O2Mm bHQ7L2Jhcjp4bXAmZ3Q7ZCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoeG1w ICJhJmx0O2ImZ3Q7YyIpICJkIikKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7 eG1wJmd0O2EmbHQ7L2ImZ3Q7YyZsdDsveG1wJmd0O2QiICM6c3RyaWN0PyAndW5zZXQpCj09 Jmd0OyAoKlRPUCogKHhtcCAiYSZsdDsvYiZndDtjIikgImQiKQo7OyBQYXNzZWQuCgooaHRt bC0mZ3Q7c2h0bWwgIiZsdDt4bXAmZ3Q7YSZsdDsvYiAmZ3Q7YyZsdDsveG1wJmd0O2QiICM6 c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHhtcCAiYSZsdDsvYiAmZ3Q7YyIpICJk IikKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7eG1wJmd0O2EmbHQ7LyBiJmd0 O2MmbHQ7L3htcCZndDtkIiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICh4bXAg ImEmbHQ7LyBiJmd0O2MiKSAiZCIpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0 O3htcCZndDthJmx0Oy8gYiAmZ3Q7YyZsdDsveG1wJmd0O2QiICM6c3RyaWN0PyAndW5zZXQp Cj09Jmd0OyAoKlRPUCogKHhtcCAiYSZsdDsvIGIgJmd0O2MiKSAiZCIpCjs7IFBhc3NlZC4K CihodG1sLSZndDtzaHRtbCAiJmx0O3htcCZndDthJmx0Oy9iOngmZ3Q7YyZsdDsveG1wJmd0 O2QiICM6c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHhtcCAiYSZsdDsvYjp4Jmd0 O2MiKSAiZCIpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3htcCZndDthJmx0 Oy9iOjp4Jmd0O2MmbHQ7L3htcCZndDtkIiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpU T1AqICh4bXAgImEmbHQ7L2I6OngmZ3Q7YyIpICJkIikKOzsgUGFzc2VkLgoKKGh0bWwtJmd0 O3NodG1sICImbHQ7eG1wJmd0O2EmbHQ7L2I6Ojp4Jmd0O2MmbHQ7L3htcCZndDtkIiAjOnN0 cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICh4bXAgImEmbHQ7L2I6Ojp4Jmd0O2MiKSAi ZCIpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3htcCZndDthJmx0Oy9iOiZn dDtjJmx0Oy94bXAmZ3Q7ZCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoeG1w ICJhJmx0Oy9iOiZndDtjIikgImQiKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZs dDt4bXAmZ3Q7YSZsdDsvYjo6Jmd0O2MmbHQ7L3htcCZndDtkIiAjOnN0cmljdD8gJ3Vuc2V0 KQo9PSZndDsgKCpUT1AqICh4bXAgImEmbHQ7L2I6OiZndDtjIikgImQiKQo7OyBQYXNzZWQu CgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDt4bXAmZ3Q7YSZsdDsveG1wOmImZ3Q7YyZsdDsveG1w Jmd0O2QiICM6c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHhtcCAiYSZsdDsveG1w OmImZ3Q7YyIpICJkIikKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7UCZndDty ZWFsMSZsdDsvUCZndDtcbiZsdDtYTVAmZ3Q7XG5hbHBoYVxuJmx0O1AmZ3Q7ZmFrZSZsdDsv UCZndDtcbmJyYXZvXG4mbHQ7L1hNUCBcbiZsdDtQJmd0O3JlYWwyJmx0Oy9QJmd0OyIgIzpz dHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAocCAicmVhbDEiKSAiXG4iICh4bXAgIlxu IiAiYWxwaGFcbiIgIiZsdDtQJmd0O2Zha2UmbHQ7L1AmZ3Q7XG4iICJicmF2b1xuIikgKHAg InJlYWwyIikpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O1AmZ3Q7cmVhbDEm bHQ7L1AmZ3Q7XG4mbHQ7WE1QJmd0O1xuYWxwaGFcbiZsdDtQJmd0O2Zha2UmbHQ7L1AmZ3Q7 XG5icmF2b1xuJmx0Oy9YTVBcbiZsdDtQJmd0O3JlYWwyJmx0Oy9QJmd0OyIgIzpzdHJpY3Q/ ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAocCAicmVhbDEiKSAiXG4iICh4bXAgIlxuIiAiYWxw aGFcbiIgIiZsdDtQJmd0O2Zha2UmbHQ7L1AmZ3Q7XG4iICJicmF2b1xuIikgKHAgInJlYWwy IikpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3htcCZndDthJmx0Oy94bXAm Z3Q7eCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoeG1wICJhIikgIngiKQo7 OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDt4bXAmZ3Q7YVxuJmx0Oy94bXAmZ3Q7 eCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoeG1wICJhXG4iKSAieCIpCjs7 IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3htcCZndDsmbHQ7L3htcCZndDt4IiAj OnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICh4bXApICJ4IikKOzsgUGFzc2VkLgoK KGh0bWwtJmd0O3NodG1sICImbHQ7eG1wJmd0O2EmbHQ7L3htcCIgIzpzdHJpY3Q/ICd1bnNl dCkKPT0mZ3Q7ICgqVE9QKiAoeG1wICJhIikpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRt bCAiJmx0O3htcCZndDthJmx0Oy94bSIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9Q KiAoeG1wICJhJmx0Oy94bSIpKQo7OyBQYXNzZWQuCgooaHRtbC0mZ3Q7c2h0bWwgIiZsdDt4 bXAmZ3Q7YSZsdDsveCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoeG1wICJh Jmx0Oy94IikpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3htcCZndDthJmx0 Oy8iICM6c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHhtcCAiYSZsdDsvIikpCjs7 IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3htcCZndDthJmx0OyIgIzpzdHJpY3Q/ ICd1bnNldCkKPT0mZ3Q7ICgqVE9QKiAoeG1wICJhJmx0OyIpKQo7OyBQYXNzZWQuCgooaHRt bC0mZ3Q7c2h0bWwgIiZsdDt4bXAmZ3Q7YSIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgq VE9QKiAoeG1wICJhIikpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3htcCZn dDsiICM6c3RyaWN0PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHhtcCkpCjs7IFBhc3NlZC4K CihodG1sLSZndDtzaHRtbCAiJmx0O3htcCIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgq VE9QKiAoeG1wKSkKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7eG1wIHg9NDIg IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICh4bXAgKEAgKHggIjQyIikpKSkK OzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7eG1wIHg9ICIgIzpzdHJpY3Q/ICd1 bnNldCkKPT0mZ3Q7ICgqVE9QKiAoeG1wIChAICh4KSkpKQo7OyBQYXNzZWQuCgooaHRtbC0m Z3Q7c2h0bWwgIiZsdDt4bXAgeCAiICM6QCBidWlsZC1sb2cgMjM1MjggMjE5NwoKUnVubmlu ZyB0ZXN0IHN1aXRlOiBtYWluLXN1aXRlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KClJ1bm5pbmcgdGVzdCBzdWl0ZTogJmx0O3Rlc3QteG1sLXByYWdtYXRp YyZndDstc3VpdGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClJ1bm5pbmcgdGVzdCBjYXNl OiB0ZXN0LWFsbAoKMSBydW4sIDAgZmFpbGVkCnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpU T1AqICh4bXAgKEAgKHgpKSkpCjs7IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3ht cCB4IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqICh4bXAgKEAgKHgpKSkpCjs7 IFBhc3NlZC4KCihodG1sLSZndDtzaHRtbCAiJmx0O3NjcmlwdCZndDt4eHgiICM6c3RyaWN0 PyAndW5zZXQpCj09Jmd0OyAoKlRPUCogKHNjcmlwdCAieHh4IikpCjs7IFBhc3NlZC4KCiho dG1sLSZndDtzaHRtbCAiJmx0O3NjcmlwdC8mZ3Q7eHh4IiAjOnN0cmljdD8gJ3Vuc2V0KQo9 PSZndDsgKCpUT1AqIChzY3JpcHQpICJ4eHgiKQo7OyBQYXNzZWQuCgooc2h0bWwtJmd0O2h0 bWwgJyhwKSkKPT0mZ3Q7ICImbHQ7cCZndDsmbHQ7L3AmZ3Q7Igo7OyBQYXNzZWQuCgooc2h0 bWwtJmd0O2h0bWwgJyhwICJDT05URU5UIikpCj09Jmd0OyAiJmx0O3AmZ3Q7Q09OVEVOVCZs dDsvcCZndDsiCjs7IFBhc3NlZC4KCihzaHRtbC0mZ3Q7aHRtbCAnKGJyKSkKPT0mZ3Q7ICIm bHQ7YnIgLyZndDsiCjs7IFBhc3NlZC4KCihzaHRtbC0mZ3Q7aHRtbCAnKGJyICJDT05URU5U IikpCj09Jmd0OyAiJmx0O2JyIC8mZ3Q7Igo7OyBQYXNzZWQuCgooc2h0bWwtJmd0O2h0bWwg JyhociAoQCAoY2xlYXIgImFsbCIpKSkpCj09Jmd0OyAiJmx0O2hyIGNsZWFyPVwiYWxsXCIg LyZndDsiCjs7IFBhc3NlZC4KCihzaHRtbC0mZ3Q7aHRtbCAnKGhyIChAIChub3NoYWRlKSkp KQo9PSZndDsgIiZsdDtociBub3NoYWRlIC8mZ3Q7Igo7OyBQYXNzZWQuCgooc2h0bWwtJmd0 O2h0bWwgJyhociAoQCAobm9zaGFkZSAjdCkpKSkKPT0mZ3Q7ICImbHQ7aHIgbm9zaGFkZSAv Jmd0OyIKOzsgUGFzc2VkLgoKKHNodG1sLSZndDtodG1sICcoaHIgKEAgKG5vc2hhZGUgIm5v c2hhZGUiKSkpKQo9PSZndDsgIiZsdDtociBub3NoYWRlPVwibm9zaGFkZVwiIC8mZ3Q7Igo7 OyBQYXNzZWQuCgooc2h0bWwtJmd0O2h0bWwgJyhociAoQCAoYWFhICJiYmJjY2MiKSkpKQo9 PSZndDsgIiZsdDtociBhYWE9XCJiYmJjY2NcIiAvJmd0OyIKOzsgUGFzc2VkLgoKKHNodG1s LSZndDtodG1sICcoaHIgKEAgKGFhYSAiYmJiJ2NjYyIpKSkpCj09Jmd0OyAiJmx0O2hyIGFh YT1cImJiYidjY2NcIiAvJmd0OyIKOzsgUGFzc2VkLgoKKHNodG1sLSZndDtodG1sICcoaHIg KEAgKGFhYSAiYmJiXCJjY2MiKSkpKQo9PSZndDsgIiZsdDtociBhYWE9J2JiYlwiY2NjJyAv Jmd0OyIKOzsgUGFzc2VkLgoKKHNodG1sLSZndDtodG1sICcoaHIgKEAgKGFhYSAiYmJiXCJj Y2MnZGRkIikpKSkKPT0mZ3Q7ICImbHQ7aHIgYWFhPVwiYmJiJmFtcDtxdW90O2NjYydkZGRc IiAvJmd0OyIKOzsgUGFzc2VkLgoKKHNodG1sLSZndDtodG1sICcoKlBJKiB4bWwgInZlcnNp b249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCIiKSkKPT0mZ3Q7ICImbHQ7P3htbCB2ZXJz aW9uPVwiMS4wXCIgZW5jb2Rpbmc9XCJVVEYtOFwiPyZndDsiCjs7IFBhc3NlZC4KCihzaHRt bC0mZ3Q7aHRtbCAnKCpERUNMKiBET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBY SFRNTCAxLjAgU3RyaWN0Ly9FTiIgPGEgY2xhc3M9Im1vei10eHQtbGluay1yZmMyMzk2RSIg aHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0 ZCI+Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXN0cmljdC5kdGQi PC9hPikpCj09Jmd0OyAiJmx0OyFET0NUWVBFIGh0bWwgUFVCTElDIFwiLS8vVzNDLy9EVEQg WEhUTUwgMS4wIFN0cmljdC8vRU5cIiBcPGEgY2xhc3M9Im1vei10eHQtbGluay1yZmMyMzk2 RSIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0 LmR0ZFwiPiJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3Qu ZHRkXCI8L2E+Jmd0OyIKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7Ym9keSZn dDsmbHQ7YmxvY2txdW90ZSZndDsmbHQ7cCZndDtmb28mbHQ7L3AmZ3Q7XG4mbHQ7L2Jsb2Nr cXVvdGUmZ3Q7Jmx0Oy9ib2R5Jmd0OyIgIzpzdHJpY3Q/ICd1bnNldCkKPT0mZ3Q7ICgqVE9Q KiAoYm9keSAoYmxvY2txdW90ZSAocCAiZm9vIikgIlxuIikpKQo7OyBQYXNzZWQuCgooaHRt bC0mZ3Q7c2h0bWwgIiZsdDtib2R5Jmd0OyZsdDtibG9ja3F1b3RlJmd0OyZsdDtwJmd0O2Zv byZsdDsvcCZndDtcbiZsdDsvYmxvY2txdW90ZSZndDsmbHQ7L2JvZHkmZ3Q7IiAjOnN0cmlj dD8gI2YpCj09Jmd0OyAoKlRPUCogKGJvZHkgKGJsb2NrcXVvdGUpIChwICJmb28iKSAiXG4i KSkKOzsgUGFzc2VkLgoKKGh0bWwtJmd0O3NodG1sICImbHQ7Ym9keSZndDsmbHQ7YmxvY2tx dW90ZSZndDsmbHQ7cCZndDtmb29cbiZsdDsvYmxvY2txdW90ZSZndDsmbHQ7L2JvZHkmZ3Q7 IiAjOnN0cmljdD8gJ3Vuc2V0KQo9PSZndDsgKCpUT1AqIChib2R5IChibG9ja3F1b3RlIChw ICJmb29cbiIpKSkpCjs7IFBhc3NlZC4KCioqKiBBbGwgVGVzdHMgUEFTU0VEICoqKiAgIFBh c3NlZDogMTI4ICAgRmFpbGVkOiAwICAgCmJ1aWxkaW5nIC9nbnUvc3RvcmUvMmlrNWpiZmEz OXpjdjJnMDFidzY4ajIwcDFteXc1NXAtbW9kdWxlLWltcG9ydC1jb21waWxlZC5kcnYuLi4K YnVpbGRpbmcgL2dudS9zdG9yZS9ud2xsaXM4YjBtcGRwMWE4enIwMzhiamxqMzRjOXo4cC1t b2R1bGUtaW1wb3J0LWNvbXBpbGVkLmRydi4uLgpidWlsZGluZyAvZ251L3N0b3JlL3g2bjBx ajR5MHZwZ2F2ZGdndmJmOTJmejNnbm52NnM1LW9wZW5zc2wtMS4xLjFrLnRhci5nei5kcnYu Li4KZG93bmxvYWRpbmcgZnJvbSA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWZyZWV0ZXh0IiBo cmVmPSJodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3VyY2Uvb3BlbnNzbC0xLjEuMWsudGFy Lmd6Ij5odHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3VyY2Uvb3BlbnNzbC0xLjEuMWsudGFy Lmd6PC9hPiAuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS9oeWlocnE2YnJ6cmt2dnBpa20zem1z bGhobHZ5eDV4eS10YXIuZHJ2Li4uCmRvd25sb2FkaW5nIGZyb20gPGEgY2xhc3M9Im1vei10 eHQtbGluay1mcmVldGV4dCIgaHJlZj0iaHR0cHM6Ly9naXQuc2F2YW5uYWguZ251Lm9yZy9j Z2l0L2d1aXguZ2l0L3BsYWluL2dudS9wYWNrYWdlcy9ib290c3RyYXAvaTY4Ni1saW51eC90 YXI/aWQ9NDRmMDdkMWRjNjgwNmU5N2M0ZTllZTNlNmJlODgzY2M1OWRjNjY2ZSI+aHR0cHM6 Ly9naXQuc2F2YW5uYWguZ251Lm9yZy9jZ2l0L2d1aXguZ2l0L3BsYWluL2dudS9wYWNrYWdl cy9ib290c3RyYXAvaTY4Ni1saW51eC90YXI/aWQ9NDRmMDdkMWRjNjgwNmU5N2M0ZTllZTNl NmJlODgzY2M1OWRjNjY2ZTwvYT4gLi4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvczViMTYybGFz cXB3OWc0cDY1NjdkcnJnZjg0aXp2cjQtb3BlbnNzbC0xLjEuMWsudGFyLnh6LmRydi4uLgpi dWlsZGluZyAvZ251L3N0b3JlLzA0Nmx3YWMzdjQyYXcyZ2d2bTdrZ3BzMTQzbjRyNzY4LXh6 LmRydi4uLgpkb3dubG9hZGluZyBmcm9tIDxhIGNsYXNzPSJtb3otdHh0LWxpbmstZnJlZXRl eHQiIGhyZWY9Imh0dHBzOi8vZ2l0LnNhdmFubmFoLmdudS5vcmcvY2dpdC9ndWl4LmdpdC9w bGFpbi9nbnUvcGFja2FnZXMvYm9vdHN0cmFwL2k2ODYtbGludXgveHo/aWQ9NDRmMDdkMWRj NjgwNmU5N2M0ZTllZTNlNmJlODgzY2M1OWRjNjY2ZSI+aHR0cHM6Ly9naXQuc2F2YW5uYWgu Z251Lm9yZy9jZ2l0L2d1aXguZ2l0L3BsYWluL2dudS9wYWNrYWdlcy9ib290c3RyYXAvaTY4 Ni1saW51eC94ej9pZD00NGYwN2QxZGM2ODA2ZTk3YzRlOWVlM2U2YmU4ODNjYzU5ZGM2NjZl PC9hPiAuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS9mY25kYmswcHhuajJoYmpheDQ1aGQ3bjZu cjlzam00bS1vcGVuc3NsLTEuMS4xay5kcnYuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS95Z2Zj Z3owMDAxbThmM2x3OGpkeDcwbjBuOG02cnFjcS16aXAzMC50YXIuZ3ouZHJ2Li4uCmRvd25s b2FkaW5nIGZyb20gPGEgY2xhc3M9Im1vei10eHQtbGluay1mcmVldGV4dCIgaHJlZj0iaHR0 cDovL2Rvd25sb2Fkcy5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdC9pbmZvemlwL1ppcCUyMDMu eCUyMCUyOGxhdGVzdCUyOS8zLjAvemlwMzAudGFyLmd6Ij5odHRwOi8vZG93bmxvYWRzLnNv dXJjZWZvcmdlLm5ldC9wcm9qZWN0L2luZm96aXAvWmlwJTIwMy54JTIwJTI4bGF0ZXN0JTI5 LzMuMC96aXAzMC50YXIuZ3o8L2E+IC4uLgphcHBseWluZyAxIGdyYWZ0IGZvciAvZ251L3N0 b3JlLzU0eno1Ymg4enFqZGpoNWJwMDF6ODA0ODR4aXpoYWFtLWN5cnVzLXNhc2wtMi4xLjI3 LmRydiAuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS9sYW02aDBxbnI3Ymo3bXI1aGxpeDRnbG5m NWYyd3ltay16aXAtMy4wLmRydi4uLgphcHBseWluZyAyIGdyYWZ0cyBmb3IgL2dudS9zdG9y ZS9qY2ZuMWI4Z2syaDZxem4waWJ5eTY3aHowMHcweDVtYS1vcGVubGRhcC0yLjQuNTcuZHJ2 IC4uLgphcHBseWluZyAzIGdyYWZ0cyBmb3IgL2dudS9zdG9yZS9jZG5ydmJyMDNuaGc4bHkx bXNpNjVsejRtOGs1bDNjbC1jdXJsLTcuNzYuMC5kcnYgLi4uCmFwcGx5aW5nIDIgZ3JhZnRz IGZvciAvZ251L3N0b3JlL2ZwcTN6amoza3hnNHo4d2s1NTA4amlmMmt6YzcwOHFnLWdpdC1t aW5pbWFsLTIuMzEuMS5kcnYgLi4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvYWtzcHh6cTlpdzVw bjVyYTRqbGIxc3A4NzRwNXdwMHYtZ3VpeC0xLjIuMC0yMC4yZDczMDg2LWNoZWNrb3V0LmRy di4uLgpidWlsZGluZyAvZ251L3N0b3JlL2h6YmgxbnFpMGhhbWoyM2FhNXd2NnIzMHAwMW1m am5zLXp6aXBsaWItMC4xMy43Mi1jaGVja291dC5kcnYuLi4KYnVpbGRpbmcgL2dudS9zdG9y ZS81cWJtaWkxNTlqeXhnZnB2N2E2NndrYWlwbm1zemt5ci1ndWl4LWRhZW1vbi0xLjIuMC0y MC4yZDczMDg2LmRydi4uLgpidWlsZGluZyAvZ251L3N0b3JlLzVrYW12YjJkNjl2YmhxNXFt M3k3bmx4eGxtaTY0cG1iLXp6aXBsaWItMC4xMy43Mi5kcnYuLi4KIDIyJSBbIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1pbGQtbG9nIDcwNDUx IDQ3OQovdG1wL2d1aXgtYnVpbGQtenppcGxpYi0wLjEzLjcyLmRydi0wL3NvdXJjZS96emlw L2ZldGNoLmg6MjMyOjQxOiB3YXJuaW5nOiBpbml0aWFsaXphdGlvbiBtYWtlcyBpbnRlZ2Vy IGZyb20gcG9pbnRlciB3aXRob3V0IGEgY2FzdCBbLVdpbnQtY29udmVyc2lvbl0KICNkZWZp bmUgenppcF9maWxlX2hlYWRlcl90b19kYXRhKF9fcCkgICAoKHp6aXBfYnl0ZV90KikgXAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9ndWl4LWJ1 aWxkLXp6aXBsaWItMC4xMy43Mi5kcnYtMC9zb3VyY2UvenppcC9tbWFwcGVkLmM6NjY0OjIw OiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8gP3p6aXBfZmlsZV9oZWFkZXJfdG9fZGF0 YT8KICAgICBvZmZfdCBvZmZzZXQgPSB6emlwX2ZpbGVfaGVhZGVyX3RvX2RhdGEoaGVhZGVy KTsKICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIDIyJSBb IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1sb2cg NzA0NTEgMjA5Ci90bXAvZ3VpeC1idWlsZC16emlwbGliLTAuMTMuNzIuZHJ2LTAvc291cmNl L3p6aXAvbW1hcHBlZC5jOjY4NToyNDogd2FybmluZzogYXNzaWdubWVudCBtYWtlcyBwb2lu dGVyIGZyb20gaW50ZWdlciB3aXRob3V0IGEgY2FzdCBbLVdpbnQtY29udmVyc2lvbl0KICAg ICBmaWxlLSZndDt6bGliLm5leHRfaW4gPSBvZmZzZXQ7CiAgICAgICAgICAgICAgICAgICAg ICAgIF4KLSAnaW5zdGFsbC1saWNlbnNlLWZpbGVzJyBwaGFzZQpUaGUgZm9sbG93aW5nIGRl cml2YXRpb25zIHdpbGwgYmUgYnVpbHQ6CiAgIC9nbnUvc3RvcmUvNXFrcTh3NDV3bHAyaXIw NXc1ZzloZnJtajRwNmFpaXktcHJvZmlsZS5kcnYKICAgL2dudS9zdG9yZS9nbDk0bXJxd3Fk bXo5OGw1ZndrNzU2eHpyd2htOWhhNi1ndWl4LTRkZmY2ZWNkZS5kcnYKICAgL2dudS9zdG9y ZS9hbDI0aDVwNjVjNjdqaHN6bGo5NTk2a2h5Ym03eXJmZC1ndWl4LWRhZW1vbi5kcnYKICAg L2dudS9zdG9yZS9hcHpobmg0Nng5NGY1cWdocTdjZGw0ODQzZHB6d2l5cS1ndWl4LWNvbW1h bmQuZHJ2CiAgIC9nbnUvc3RvcmUvandwenBuemxjbjYwaW5ocXdweXk2OGNuOHlobWdsankt Z3VpeC1tb2R1bGUtdW5pb24uZHJ2CiAgIC9nbnUvc3RvcmUvbXZqejBuMHB5cnNzNzQzMnFk ejAwa2Fha2c0bmhoZDAtc3FsaXRlLTMuMzIuMy5kcnYKICAgL2dudS9zdG9yZS9rMjl4ZGtn ZnduNnFqM2w3bmkyNTk4MXprMW1jaTR6MC1zcWxpdGUtYXV0b2NvbmYtMzMyMDMwMC50YXIu Z3ouZHJ2CiAgIC9nbnUvc3RvcmUvY2RxamY2Zmp2eHJtNTdpcWl6c2F4OW5qc202NXFoeG0t Z3VpeC00ZGZmNmVjZGUtbW9kdWxlcy5kcnYKICAgL2dudS9zdG9yZS8wcTc0OG1wMW4xcnEx bDJwNTA0OHEwOWo4NTB3c2NuOS1ndWl4LWNvbmZpZy1tb2R1bGVzLmRydgogICAvZ251L3N0 b3JlLzQ5amZjcWJ5cGFiM2g2OWdqNzM5bXFwdnMxbGljY2M0LWd1aXgtY29uZmlnLmRydgog ICAvZ251L3N0b3JlLzZrN2xyeDB4eWhsbnNoNGw4Yjg1bWoxcTV4aTEyMWoxLWd1aXgtY29u ZmlnLXNvdXJjZS5kcnYKICAgL2dudS9zdG9yZS85Z3l5NTYyODE4YmxranZybTEwMWhzanYz OGY0d213OS1jb25maWcuc2NtLmRydgogICAvZ251L3N0b3JlLzIyZjFsaWlzbTlja3Jxd3B2 aTdwM2c4cThnMXBhbWthLWd1aXgtcGFja2FnZXMtbW9kdWxlcy5kcnYKICAgL2dudS9zdG9y ZS9hMmtqcTFycGIzZ3JpcDJnNTdnOXAzempqNXA3dm1haS1ndWl4LXBhY2thZ2VzLmRydgog ICAvZ251L3N0b3JlLzBqNTJ4YzgwMDc5NjNsZmR5d3o3OGh5MGRuMHFsa3ljLWd1aXgtY29y ZS5kcnYKICAgL2dudS9zdG9yZS9yeTdhajZocGc1aGR4aDB6cDF3dzkxbGQ2Y2Q1a3gwaC1n dWl4LWNvcmUtc291cmNlLmRydgogICAvZ251L3N0b3JlLzdndmd6YjQyaDAwNnFkMmZuNWw2 MXg2YThiNmx2Y2RxLWd1aXgtZXh0cmEuZHJ2CiAgIC9nbnUvc3RvcmUveTlpaHpwMnh4Yngw Mnh2MjRraHZtMGlra2JzdmpmZGMtenN0ZC0xLjQuNC5kcnYKICAgL2dudS9zdG9yZS9kcXZx bmRzMGx4M3E0Y3BmNjVsYjA5Mmhra2IzM3M0ZC16c3RkLTEuNC40LnRhci54ei5kcnYKICAg L2dudS9zdG9yZS8yZjR5bGx5ZHFjbWYwNzU2ZmRtbTByNmNydmR5N2ZsZC16c3RkLTEuNC40 LnRhci5nei5kcnYKICAgL2dudS9zdG9yZS9zcG03c25hdjIycjhueHA5bDNwYndoMTMwbGo2 eWtueC1ndWl4LXBhY2thZ2VzLWJhc2UuZHJ2CiAgIC9nbnUvc3RvcmUvMmZoa2Q4dnBzaGc0 Njd2d3ZxZm5qcXpkMWQ1N2tjM3EtZ3VpeC1jbGktbW9kdWxlcy5kcnYKICAgL2dudS9zdG9y ZS8xMDhkYjZhbms1aW1jbDdxcXM1aGRhc2JibGRnNHFreC1ndWl4LWNsaS5kcnYKICAgL2du dS9zdG9yZS95NWltd3FjZGdiN3oxMTZrYXo5enA1MmlzY3N3MWw0ai1ndWl4LXN5c3RlbS5k cnYKICAgL2dudS9zdG9yZS82NG54MXpqM2g4cDE5NGhzYnpzNnNybDdqamh4NmxjNi1ndWl4 LWV4dHJhLW1vZHVsZXMuZHJ2CiAgIC9nbnUvc3RvcmUvOWExc3dkYXM0Zzc3aXhoNzlrMnFx Z3BiOTZqZnpzZDUtZ3VpeC1zeXN0ZW0tbW9kdWxlcy5kcnYKICAgL2dudS9zdG9yZS9zN3Y0 NXM4bW5ucHhybjRwYWtpMmM3NTdyOWd5NXFyaC1ndWl4LWNvcmUtbW9kdWxlcy5kcnYKICAg L2dudS9zdG9yZS92eXg4cnZ6ODNuNjlud2c0cjcwNGQwMzNwOWw2eGQwei1ndWl4LXBhY2th Z2VzLWJhc2UtbW9kdWxlcy5kcnYKICAgL2dudS9zdG9yZS95ejg1NHhmeHZtcHF2bDgwcmp3 MWc2ZGo3ZmFrYXp6NC1ndWl4LXN5c3RlbS10ZXN0cy1tb2R1bGVzLmRydgogICAvZ251L3N0 b3JlL3hhaXI2ZnE0aWZmMm5uamFqNGpyMHg3NjI2MW1wMzNiLWd1aXgtc3lzdGVtLXRlc3Rz LmRydgogICAvZ251L3N0b3JlL3czaHZsaTUzdnZ2ZjZzbmdzZnJ2N3N2ZGN4MDFjdzZ2LWd1 aXgtbG9jYWxlLWd1aXguZHJ2CiAgIC9nbnUvc3RvcmUvZ25zenp3bG5pdjJzMnFwcHNucHY5 NGIxcW04bGF6NTAtZ3VpeC1tYW51YWwuZHJ2CiAgIC9nbnUvc3RvcmUvOHhuN242ZmFiNzA3 MjM1ZGQxcHhtcmRpeHoxNmIzM3otZ3VpeC10cmFuc2xhdGVkLXRleGluZm8uZHJ2CiAgIC9n bnUvc3RvcmUvNTV5M3BiaGcwZHc3cTMycjlxN3FsajF5dzFmMmpybDYtbW9kdWxlLWltcG9y dC1jb21waWxlZC5kcnYKICAgL2dudS9zdG9yZS85eWZyMHJhN3E4dmk2eGRxbHp6Nmd5ZGNx eHc2NHdyaC1pbmZlcmlvci1zY3JpcHQuc2NtLmRydgogICAvZ251L3N0b3JlL3pzeTljYWc0 Nmt2NnM5NDQwbXB3azd6dzhhdzBhOHp5LXByb2ZpbGUuZHJ2CgpidWlsZGluZyAvZ251L3N0 b3JlL3czaHZsaTUzdnZ2ZjZzbmdzZnJ2N3N2ZGN4MDFjdzZ2LWd1aXgtbG9jYWxlLWd1aXgu ZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvOWd5eTU2MjgxOGJsa2p2cm0xMDFoc2p2Mzhm NHdtdzktY29uZmlnLnNjbS5kcnYuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS9yeTdhajZocGc1 aGR4aDB6cDF3dzkxbGQ2Y2Q1a3gwaC1ndWl4LWNvcmUtc291cmNlLmRydi4uLgpidWlsZGlu ZyAvZ251L3N0b3JlLzZrN2xyeDB4eWhsbnNoNGw4Yjg1bWoxcTV4aTEyMWoxLWd1aXgtY29u ZmlnLXNvdXJjZS5kcnYuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS8wajUyeGM4MDA3OTYzbGZk eXd6NzhoeTBkbjBxbGt5Yy1ndWl4LWNvcmUuZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUv NDlqZmNxYnlwYWIzaDY5Z2o3MzltcXB2czFsaWNjYzQtZ3VpeC1jb25maWcuZHJ2Li4uCmJ1 aWxkaW5nIC9nbnUvc3RvcmUvczd2NDVzOG1ubnB4cm40cGFraTJjNzU3cjlneTVxcmgtZ3Vp eC1jb3JlLW1vZHVsZXMuZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvMHE3NDhtcDFuMXJx MWwycDUwNDhxMDlqODUwd3NjbjktZ3VpeC1jb25maWctbW9kdWxlcy5kcnYuLi4KYXBwbHlp bmcgMSBncmFmdCBmb3IgL2dudS9zdG9yZS83aDNzbXM0MWpqMXhnbmlra2licGdqMzhwMjR2 MGdqei1saWJnaXQyLTEuMS4wLmRydiAuLi4KYXBwbHlpbmcgNSBncmFmdHMgZm9yIC9nbnUv c3RvcmUvaHJrdjk3cGtxM3I4cHZoamZ4OHlnand6MmsxdzZ2MjYtbGlieGF3LTEuMC4xMy5k cnYgLi4uCmFwcGx5aW5nIDEgZ3JhZnQgZm9yIC9nbnUvc3RvcmUvdnAxZzlkbmtoMzdiNWFj NnZiMTR3YmxxZjRkN2J6enctZ3VpbGUtZ2l0LTAuNS4wLmRydiAuLi4KYnVpbGRpbmcgL2du dS9zdG9yZS81NXkzcGJoZzBkdzdxMzJyOXE3cWxqMXl3MWYyanJsNi1tb2R1bGUtaW1wb3J0 LWNvbXBpbGVkLmRydi4uLgpidWlsZGluZyAvZ251L3N0b3JlL2syOXhka2dmd242cWozbDdu aTI1OTgxemsxbWNpNHowLXNxbGl0ZS1hdXRvY29uZi0zMzIwMzAwLnRhci5nei5kcnYuLi4K ZG93bmxvYWRpbmcgZnJvbSA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWZyZWV0ZXh0IiBocmVm PSJodHRwczovL3NxbGl0ZS5vcmcvMjAyMC9zcWxpdGUtYXV0b2NvbmYtMzMyMDMwMC50YXIu Z3oiPmh0dHBzOi8vc3FsaXRlLm9yZy8yMDIwL3NxbGl0ZS1hdXRvY29uZi0zMzIwMzAwLnRh ci5nejwvYT4gLi4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvOHhuN242ZmFiNzA3MjM1ZGQxcHht cmRpeHoxNmIzM3otZ3VpeC10cmFuc2xhdGVkLXRleGluZm8uZHJ2Li4uCmJ1aWxkaW5nIC9n bnUvc3RvcmUvbXZqejBuMHB5cnNzNzQzMnFkejAwa2Fha2c0bmhoZDAtc3FsaXRlLTMuMzIu My5kcnYuLi4KYXBwbHlpbmcgMiBncmFmdHMgZm9yIC9nbnUvc3RvcmUvM25oZ3ZqbjRyMnJz dmo5dzg2YTFueHFzNGN6Y2xoaHItdGstOC42LjEwLmRydiAuLi4KYXBwbHlpbmcgMSBncmFm dCBmb3IgL2dudS9zdG9yZS9hNHg0eGk2N2tsOWppMTZ5ZDcyMjdkMGJhbTBqcXNnZy1ndWls ZS1zcWxpdGUzLTAuMS4yLmRydiAuLi4KYXBwbHlpbmcgMSBncmFmdCBmb3IgL2dudS9zdG9y ZS9pcHEwbGgzc2Fpa3E2bHo2MTF6YTJ4MXowZzg5MmtibC1ndWl4LWRhZW1vbi0xLjIuMC0y MC4yZDczMDg2LmRydiAuLi4KYXBwbHlpbmcgNCBncmFmdHMgZm9yIC9nbnUvc3RvcmUvcGp4 cWxhZDExc2dtMHgwYjE4cHpkMTVxY3BqMjM4M24tcHl0aG9uLTMuOC4yLmRydiAuLi4KYnVp bGRpbmcgL2dudS9zdG9yZS8yZjR5bGx5ZHFjbWYwNzU2ZmRtbTByNmNydmR5N2ZsZC16c3Rk LTEuNC40LnRhci5nei5kcnYuLi4KZG93bmxvYWRpbmcgZnJvbSA8YSBjbGFzcz0ibW96LXR4 dC1saW5rLWZyZWV0ZXh0IiBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svenN0 ZC9yZWxlYXNlcy9kb3dubG9hZC92MS40LjQvenN0ZC0xLjQuNC50YXIuZ3oiPmh0dHBzOi8v Z2l0aHViLmNvbS9mYWNlYm9vay96c3RkL3JlbGVhc2VzL2Rvd25sb2FkL3YxLjQuNC96c3Rk LTEuNC40LnRhci5nejwvYT4gLi4uCmFwcGx5aW5nIDIgZ3JhZnRzIGZvciAvZ251L3N0b3Jl L3BmcXJieXZqa3ozdjZ4MGd2MW1weTlpNW14cmcycG5zLWdsaWItMi42Mi42LmRydiAuLi4K YnVpbGRpbmcgL2dudS9zdG9yZS9kcXZxbmRzMGx4M3E0Y3BmNjVsYjA5Mmhra2IzM3M0ZC16 c3RkLTEuNC40LnRhci54ei5kcnYuLi4KYXBwbHlpbmcgMiBncmFmdHMgZm9yIC9nbnUvc3Rv cmUvNmg5ZzRkazFja3NuMm5nbTEyeWdhNGZkdzVuc2Q4a3gtYXZhaGktMC44LmRydiAuLi4K YXBwbHlpbmcgNCBncmFmdHMgZm9yIC9nbnUvc3RvcmUvYTJnbmY1N3Jpa2Z4NGE1cTdzN2Y2 MnA3YXY4dmZjOXItY2Fpcm8tMS4xNi4wLmRydiAuLi4KYXBwbHlpbmcgMSBncmFmdCBmb3Ig L2dudS9zdG9yZS9xcDNyOG5wamFwM3Jpbm1nZ3c3bW5pcmN2bWNtcGlxOC1ndHMtMC43LjYu ZHJ2IC4uLgphcHBseWluZyAyIGdyYWZ0cyBmb3IgL2dudS9zdG9yZS92ZDd2dzhxYndhdmt5 YmlsMjhtcmEwbTJwaDM1d2Ftcy1ndWlsZS1hdmFoaS0wLjQuMC0xLjZkNDNjYWYuZHJ2IC4u LgphcHBseWluZyAxIGdyYWZ0IGZvciAvZ251L3N0b3JlL2dzYXFoMTR6bm01bHloazd2dmRw Y2hscHlmNTZscmdyLWhhcmZidXp6LTIuNi40LmRydiAuLi4KYnVpbGRpbmcgL2dudS9zdG9y ZS95OWloenAyeHhieDAyeHYyNGtodm0waWtrYnN2amZkYy16c3RkLTEuNC40LmRydi4uLgph cHBseWluZyA2IGdyYWZ0cyBmb3IgL2dudS9zdG9yZS93cWk4cDExaGlnaTlyYjNud2tra3Ax ZjFqbHl6amo1ai1wYW5nby0xLjQ0LjcuZHJ2IC4uLgphcHBseWluZyAxIGdyYWZ0IGZvciAv Z251L3N0b3JlL3FwMTJndnpzYm1kYzRncXY4eG5kMW43bGptbWlhbmZqLWd1aWxlLXpzdGQt MC4xLjEuZHJ2IC4uLgphcHBseWluZyAxMiBncmFmdHMgZm9yIC9nbnUvc3RvcmUvZncxaTlr MDl4OGQyeG0wemRpaXBuMm1hNzZkcHk1M3YtZ3JhcGh2aXotMi40Mi4zLmRydiAuLi4KYnVp bGRpbmcgL2dudS9zdG9yZS83Z3ZnemI0MmgwMDZxZDJmbjVsNjF4NmE4YjZsdmNkcS1ndWl4 LWV4dHJhLmRydi4uLgpidWlsZGluZyAvZ251L3N0b3JlL2duc3p6d2xuaXYyczJxcHBzbnB2 OTRiMXFtOGxhejUwLWd1aXgtbWFudWFsLmRydi4uLgpidWlsZGluZyAvZ251L3N0b3JlLzY0 bngxemozaDhwMTk0aHNienM2c3JsN2pqaHg2bGM2LWd1aXgtZXh0cmEtbW9kdWxlcy5kcnYu Li4KYnVpbGRpbmcgL2dudS9zdG9yZS9zcG03c25hdjIycjhueHA5bDNwYndoMTMwbGo2eWtu eC1ndWl4LXBhY2thZ2VzLWJhc2UuZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvdnl4OHJ2 ejgzbjY5bndnNHI3MDRkMDMzcDlsNnhkMHotZ3VpeC1wYWNrYWdlcy1iYXNlLW1vZHVsZXMu ZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvYTJranExcnBiM2dyaXAyZzU3ZzlwM3pqajVw N3ZtYWktZ3VpeC1wYWNrYWdlcy5kcnYuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS8yMmYxbGlp c205Y2tycXdwdmk3cDNnOHE4ZzFwYW1rYS1ndWl4LXBhY2thZ2VzLW1vZHVsZXMuZHJ2Li4u CmJ1aWxkaW5nIC9nbnUvc3RvcmUveTVpbXdxY2RnYjd6MTE2a2F6OXpwNTJpc2NzdzFsNGot Z3VpeC1zeXN0ZW0uZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvMTA4ZGI2YW5rNWltY2w3 cXFzNWhkYXNiYmxkZzRxa3gtZ3VpeC1jbGkuZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUv OWExc3dkYXM0Zzc3aXhoNzlrMnFxZ3BiOTZqZnpzZDUtZ3VpeC1zeXN0ZW0tbW9kdWxlcy5k cnYuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS8yZmhrZDh2cHNoZzQ2N3Z3dnFmbmpxemQxZDU3 a2MzcS1ndWl4LWNsaS1tb2R1bGVzLmRydi4uLgpidWlsZGluZyAvZ251L3N0b3JlL3hhaXI2 ZnE0aWZmMm5uamFqNGpyMHg3NjI2MW1wMzNiLWd1aXgtc3lzdGVtLXRlc3RzLmRydi4uLgpi dWlsZGluZyAvZ251L3N0b3JlL3l6ODU0eGZ4dm1wcXZsODByancxZzZkajdmYWtheno0LWd1 aXgtc3lzdGVtLXRlc3RzLW1vZHVsZXMuZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvY2Rx amY2Zmp2eHJtNTdpcWl6c2F4OW5qc202NXFoeG0tZ3VpeC00ZGZmNmVjZGUtbW9kdWxlcy5k cnYuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS9qd3B6cG56bGNuNjBpbmhxd3B5eTY4Y244eWht Z2xqeS1ndWl4LW1vZHVsZS11bmlvbi5kcnYuLi4KYnVpbGRpbmcgL2dudS9zdG9yZS9hcHpo bmg0Nng5NGY1cWdocTdjZGw0ODQzZHB6d2l5cS1ndWl4LWNvbW1hbmQuZHJ2Li4uCmJ1aWxk aW5nIC9nbnUvc3RvcmUvYWwyNGg1cDY1YzY3amhzemxqOTU5NmtoeWJtN3lyZmQtZ3VpeC1k YWVtb24uZHJ2Li4uCmJ1aWxkaW5nIC9nbnUvc3RvcmUvZ2w5NG1ycXdxZG16OThsNWZ3azc1 Nnh6cndobTloYTYtZ3VpeC00ZGZmNmVjZGUuZHJ2Li4uCmJ1aWxkaW5nIENBIGNlcnRpZmlj YXRlIGJ1bmRsZS4uLgpidWlsZGluZyBmb250cyBkaXJlY3RvcnkuLi4KYnVpbGRpbmcgZGly ZWN0b3J5IG9mIEluZm8gbWFudWFscy4uLgpidWlsZGluZyBkYXRhYmFzZSBmb3IgbWFudWFs IHBhZ2VzLi4uCmJ1aWxkaW5nIHByb2ZpbGUgd2l0aCAxIHBhY2thZ2UuLi4KYnVpbGRpbmcg L2dudS9zdG9yZS85eWZyMHJhN3E4dmk2eGRxbHp6Nmd5ZGNxeHc2NHdyaC1pbmZlcmlvci1z Y3JpcHQuc2NtLmRydi4uLgpidWlsZGluZyBwYWNrYWdlIGNhY2hlLi4uCmJ1aWxkaW5nIHBy b2ZpbGUgd2l0aCAxIHBhY2thZ2UuLi4KTmV3IGluIHRoaXMgcmV2aXNpb246CiAgMjcwIG5l dyBwYWNrYWdlczogYWJvb2ssIGFpcnNweWhmLCBib29zdC1tcGksIGJ1aWxkLCBjYW1saWRs LCBjYm9uc2FpLCBjZm0sIGNsLWFic3RyYWN0LWNsYXNzZXMsIGNsLWJvZGdlLW1hdGgsIGNs LWJvZGdlLXF1ZXVlLCBjbC1ib2RnZS11dGlsaXRpZXMsIGNsLWNsaXAsIOKApgogIDYxMiBw YWNrYWdlcyB1cGdyYWRlZDogPGEgY2xhc3M9Im1vei10eHQtbGluay1hYmJyZXZpYXRlZCIg aHJlZj0ibWFpbHRvOmFic2VpbC1jcHBAMjAyMDA5MjMuMyI+YWJzZWlsLWNwcEAyMDIwMDky My4zPC9hPiwgYWNwaWNhQDIwMjEwMzMxLCA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWFiYnJl dmlhdGVkIiBocmVmPSJtYWlsdG86YW1lcmljYW4tZnV6enktbG9wQDIuNTdiIj5hbWVyaWNh bi1mdXp6eS1sb3BAMi41N2I8L2E+LCA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWFiYnJldmlh dGVkIiBocmVmPSJtYWlsdG86YXJkb3VyQDYuNiI+YXJkb3VyQDYuNjwvYT4sIDxhIGNsYXNz PSJtb3otdHh0LWxpbmstYWJicmV2aWF0ZWQiIGhyZWY9Im1haWx0bzphc2lvQDEuMTguMSI+ YXNpb0AxLjE4LjE8L2E+LCA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWFiYnJldmlhdGVkIiBo cmVmPSJtYWlsdG86YXN5bXB0b3RlQDIuNzAiPmFzeW1wdG90ZUAyLjcwPC9hPiwgPGEgY2xh c3M9Im1vei10eHQtbGluay1hYmJyZXZpYXRlZCIgaHJlZj0ibWFpbHRvOmF1dG9jdXRzZWxA MC4xMC4xIj5hdXRvY3V0c2VsQDAuMTAuMTwvYT4sIDxhIGNsYXNzPSJtb3otdHh0LWxpbmst YWJicmV2aWF0ZWQiIGhyZWY9Im1haWx0bzphdXRvZnNANS4xLjciPmF1dG9mc0A1LjEuNzwv YT4sIDxhIGNsYXNzPSJtb3otdHh0LWxpbmstYWJicmV2aWF0ZWQiIGhyZWY9Im1haWx0bzph dmlkZW11eEAyLjcuOCI+YXZpZGVtdXhAMi43Ljg8L2E+LCA8YSBjbGFzcz0ibW96LXR4dC1s aW5rLWFiYnJldmlhdGVkIiBocmVmPSJtYWlsdG86YXdzLWMtY29tbW9uQDAuNS4zIj5hd3Mt Yy1jb21tb25AMC41LjM8L2E+LCA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWFiYnJldmlhdGVk IiBocmVmPSJtYWlsdG86YmFibEAwLjEuODYiPmJhYmxAMC4xLjg2PC9hPiwgPGEgY2xhc3M9 Im1vei10eHQtbGluay1hYmJyZXZpYXRlZCIgaHJlZj0ibWFpbHRvOmJhbHNhQDIuNi4yIj5i YWxzYUAyLjYuMjwvYT4sIOKApgoKTmV3cyBmb3IgY2hhbm5lbCAnZ3VpeCcKICBSaXNrIG9m IGxvY2FsIHByaXZpbGVnZSBlc2NhbGF0aW9uIGR1cmluZyB1c2VyIGFjY291bnQgY3JlYXRp b24KICBOZXcgc3VwcG9ydGVkIHBsYXRmb3JtOiBwb3dlcnBjNjRsZS1saW51eAogIFVwZGF0 ZSBvbiBwcmV2aW91cyBgZ3VpeC1kYWVtb24nIGxvY2FsIHByaXZpbGVnZSBlc2NhbGF0aW9u CiAgUmlzayBvZiBsb2NhbCBwcml2aWxlZ2UgZXNjYWxhdGlvbiB2aWEgYGd1aXgtZGFlbW9u JwogIGBxZW11LWJpbmZtdC1zZXJ2aWNlLXR5cGUnIGlzIHVzYWJsZSBmb3IgYW55IGNvbnRh aW5lcgoKCmhpbnQ6IFJ1biBgZ3VpeCBwdWxsIC0tbmV3cycgdG8gcmVhZCBhbGwgdGhlIG5l d3MuCn5+fn4KPC9wcmU+CiAgICA8cD5UaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbnN0 YWxsZWQ6PC9wPgogICAgPHByZT5+fn5+CiQgZ3VpeCBwYWNrYWdlIC1JCmd1aWxlLXJlYWRs aW5lCTMuMC4yCW91dAkvZ251L3N0b3JlL3ZhNmwxaXZjbHd3MjJmaTM4dzVoOTlwYjRuZG45 OWhnLWd1aWxlLXJlYWRsaW5lLTMuMC4yCmd1aWxlLWNvbG9yaXplZAkwLjEJb3V0CS9nbnUv c3RvcmUvNWgwamZzc2d5eDQ5Y3E4MndybXc1N2FuN25nYjdra3otZ3VpbGUtY29sb3JpemVk LTAuMQpndWlsZS1oYWxsCTAuMy4xCW91dAkvZ251L3N0b3JlLzNrajcza3hqa25xOHFkaDhk bGJsaGI5Yjd3bWp3enkyLWd1aWxlLWhhbGwtMC4zLjEKZ2xpYmMtdXRmOC1sb2NhbGVzCTIu MzEJb3V0CS9nbnUvc3RvcmUvMzk1cHZpaTRiY2pxeHZkdjdoMGRycTEwbHhpMDFzdjEtZ2xp YmMtdXRmOC1sb2NhbGVzLTIuMzEKc2ljcAkyMDE3MDcwMy0xLjIyNWMxNzIJb3V0CS9nbnUv c3RvcmUveDJzYWZxNmZ2Y2JocDJybGpueTg5cWlxNzR5MXhkMTMtc2ljcC0yMDE3MDcwMy0x LjIyNWMxNzIKZ3VpbGUtbGliCTAuMi42LjEJb3V0CS9nbnUvc3RvcmUvYzRqY2FqMmJmcWxt NjJocHI1MG0zam1zcmpud3Y5ZjEtZ3VpbGUtbGliLTAuMi42LjEKZW1hY3MJMjcuMQlvdXQJ L2dudS9zdG9yZS8wcTFjNGlpa2E5azkwMDJkYXZ5eXdwcG0zNjNtZDlpcS1lbWFjcy0yNy4x Cmx5eAkyLjMuNi4xCW91dAkvZ251L3N0b3JlL3BoYnJscDMwZnYzMG04ajVwcGE1cXliamtx cmE4NXlpLWx5eC0yLjMuNi4xCmd1aWxlCTMuMC41CW91dAkvZ251L3N0b3JlL201aXByY2c2 cGI1Y2g4NnI5YWdtcXdkOHY2a3A3OTk5LWd1aWxlLTMuMC41CmJsaXMJMC4yLjIJb3V0CS9n bnUvc3RvcmUveXZuMmQxbmxzZ3A4M2k5em1mcHo0OGExMnluYnhxNTAtYmxpcy0wLjIuMgpv cGVuYmxhcwkwLjMuOQlvdXQJL2dudS9zdG9yZS9iczlwbDFmODA1aW5zODB4YWY0czNuMzVh MHgybHlxMy1vcGVuYmxhcy0wLjMuOQpsYXBhY2sJMy45LjAJb3V0CS9nbnUvc3RvcmUvanB4 ODNxMnM3ZGhwempuajkzdzh6eXd4YjNnN3gzNWktbGFwYWNrLTMuOS4wCm15LWhlbGxvCTIu MTAJb3V0CS9nbnUvc3RvcmUvaDIxYm5jaW0zaHNoanBmYnMxZG40a3ZnMXJpNnpiN3otbXkt aGVsbG8tMi4xMApndWlsZS1mc2xpYgkwLjIuMAlvdXQJL2dudS9zdG9yZS8yazN4MGo2bXZ5 cGphZ2FtMzlkeDg5ZmQ1eWFuN2EzeS1ndWlsZS1mc2xpYi0wLjIuMAp+fn5+CjwvcHJlPgog ICAgPHA+VGhlIGVycm9yIGhhcHBlbmVkIG9uIGEgZm9yZWlnbiBkaXN0cm8gaW4gYm90aCBj YXNlcy48YnI+CiAgICA8L3A+CiAgICA8cD5TaG91bGQgSSBwcm92aWRlIGFueXRoaW5nIGVs c2U/PC9wPgogICAgPHA+QmVzdCB3aXNoZXMsPGJyPgogICAgICBaZWxwaGlyPGJyPgogICAg PC9wPgogICAgPHByZSBjbGFzcz0ibW96LXNpZ25hdHVyZSIgY29scz0iODAiPi0tIApyZXBv c2l0b3JpZXM6IDxhIGNsYXNzPSJtb3otdHh0LWxpbmstZnJlZXRleHQiIGhyZWY9Imh0dHBz Oi8vbm90YWJ1Zy5vcmcvWmVscGhpckthbHRzdGFobCI+aHR0cHM6Ly9ub3RhYnVnLm9yZy9a ZWxwaGlyS2FsdHN0YWhsPC9hPjwvcHJlPgogIDwvYm9keT4KPC9odG1sPgo= --------------19D271F7C88F5E149166A96D--