Received: from localhost ([::1]:50239 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1UcvmY-0007bU-AV; Thu, 16 May 2013 03:51:34 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:40458 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1UcvmG-0007bK-Qm for wikichanges@lojban.org; Thu, 16 May 2013 03:51:25 -0700 Received: by digitalkingdom.org (sSMTP sendmail emulation); Thu, 16 May 2013 03:51:16 -0700 From: "Apache" Date: Thu, 16 May 2013 03:51:16 -0700 To: wikichanges@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 2.0 (++) X-Spam_score: 2.0 X-Spam_score_int: 20 X-Spam_bar: ++ X-Spam-Report: Spam detection software, running on the system "stodi.digitalkingdom.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The page leçons wave en français was changed by daeldir at 12:50 CEST Comment: Traduit la leçon un. You can view the page by following this link: http://lojban.org/tiki/le%C3%A7ons%20wave%20en%20fran%C3%A7ais [...] Content analysis details: (2.0 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 1.6 RCVD_IN_BRBL_LASTEXT RBL: RCVD_IN_BRBL_LASTEXT [173.13.139.235 listed in bb.barracudacentral.org] 0.4 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS Subject: [Wikichanges] =?utf-8?q?Wiki_page_le=C3=A7ons_wave_en_fran=C3=A7a?= =?utf-8?q?is_changed_by_daeldir?= X-BeenThere: wikichanges@lojban.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: webmaster@lojban.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: wikichanges-bounces@lojban.org VGhlIHBhZ2UgbGXDp29ucyB3YXZlIGVuIGZyYW7Dp2FpcyB3YXMgY2hhbmdlZCBieSBkYWVsZGly IGF0IDEyOjUwIENFU1QKQ29tbWVudDogVHJhZHVpdCBsYSBsZcOnb24gdW4uCgpZb3UgY2FuIHZp ZXcgdGhlIHBhZ2UgYnkgZm9sbG93aW5nIHRoaXMgbGluazoKIApodHRwOi8vbG9qYmFuLm9yZy90 aWtpL2xlJUMzJUE3b25zJTIwd2F2ZSUyMGVuJTIwZnJhbiVDMyVBN2FpcwoKWW91IGNhbiB2aWV3 IGEgZGlmZiBiYWNrIHRvIHRoZSBwcmV2aW91cyB2ZXJzaW9uIGJ5IGZvbGxvd2luZyB0aGlzIGxp bms6IApodHRwOi8vbG9qYmFuLm9yZy90aWtpL3Rpa2ktcGFnZWhpc3RvcnkucGhwP3BhZ2U9bGUl QzMlQTdvbnMlMjB3YXZlJTIwZW4lMjBmcmFuJUMzJUE3YWlzJmNvbXBhcmU9MSZvbGR2ZXI9MzUm bmV3dmVyPTM2CgoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioKVGhlIGNoYW5nZXMgaW4gdGhpcyB2ZXJzaW9uIGZvbGxvdyBiZWxvdywg Zm9sbG93ZWQgYWZ0ZXIgYnkgdGhlIGN1cnJlbnQgZnVsbCBwYWdlIHRleHQuCioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgoKKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKQEAg LUxpbmVzOiAyMzQtMzExIGNoYW5nZWQgdG8gK0xpbmVzOiAyMzQtMzIwIEBACistKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCipNZWkgTGkg KENoaW5vaXMgPSBiZWF1KSDigJMgbWVsYmkg4oCTICcnLm1lbGIuJycKKkF5aGFuIChUdXJjID0g U2VpZ25ldXIgTHVuZSkg4oCTIGx1bnJhIG5vYmxpICg9IGx1cm5vYmxpKSDigJMgJycubHVybm9i bGlzLicnCi0gISFMb2piYW4gTGVzc29ucyAgbGVzc29uIG9uZSAoYnJpZGksIGp1ZnJhLCBzdW10 aSBhbmQgc2VsYnJpKTxiciAvPkEgJydicmlkaScnIGlzIHRoZSBtb3N0IGNlbnRyYWwgdW5pdCBv ZiBMb2piYW4gdXR0ZXJhbmNlcy4gVGhlIGNvbmNlcHQgaXMgdmVyeSBjbG9zZSB0byB3aGF0IHdl IGNhbGwgYSBwcm9wb3NpdGlvbiBpbiBFbmdsaXNoLiBBIGJyaWRpIGlzIGEgY2xhaW0gdGhhdCBz b21lIG9iamVjdHMgc3RhbmQgaW4gYSByZWxhdGlvbiB0byBlYWNoIG90aGVyLCBvciB0aGF0IGFu IG9iamVjdCBoYXMgc29tZSBwcm9wZXJ0eS4gVGhpcyBzdGFuZHMgaW4gY29udHJhc3QgdG8gJydq dWZyYScnLCB3aGljaCBhcmUgbWVyZWx5IExvamJhbiB1dHRlcmFuY2VzLCB3aGljaCBjYW4gYmUg YnJpZGkgb3IgYW55dGhpbmcgZWxzZSBiZWluZyBzYWlkLiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVu IGEgYnJpZGkgYW5kIGEganVmcmEgaXMgdGhhdCBhIGp1ZnJhIGRvZXMgbm90IG5lY2Vzc2FyaWx5 IHN0YXRlIGFueXRoaW5nLCB3aGlsZSBhIGJyaWRpIGRvZXMuIFRodXMsIGEgYnJpZGkgbWlnaHQg YmUgdHJ1ZSBvciBmYWxzZSwgd2hpbGUgbm90IGFsbCBqdWZyYSBjYW4gYmUgc2FpZCB0byBiZSBz dWNoLjxiciAvPlRvIGhhdmUgc29tZSBleGFtcGxlcyAoaW4gRW5nbGlzaCwgdG8gYmVnaW4gd2l0 aCksIE1vemFydCB3YXMgdGhlIGdyZWF0ZXN0IG11c2ljaWFuIG9mIGFsbCB0aW1lIGlzIGEgYnJp ZGksIGJlY2F1c2UgaXQgbWFrZXMgYSBjbGFpbSB3aXRoIGEgdHJ1dGggdmFsdWUsIGFuZCBpdCBp bnZvbHZlcyBhbiBvYmplY3QsIE1vemFydCwgYW5kIGEgcHJvcGVydHksIGJlaW5nIHRoZSBncmVh dGVzdCBtdXNpY2lhbiBvZiBhbGwgdGltZS4gT24gdGhlIGNvbnRyYXJ5LCBPdyEgTXkgdG9lISBp cyBub3QgYSBicmlkaSwgc2luY2UgaXQgZG9lcyBub3QgaW52b2x2ZSBhIHJlbGF0aW9uLCBhbmQg dGh1cyBkb2VzIG5vdCBzdGF0ZSBhbnl0aGluZy4gQm90aCwgdGhvdWdoLCBhcmUganVmcmEuPGJy IC8+VHJ5IHRvIGlkZW50aWZ5IHRoZSBicmlkaSBhbW9uZyB0aGVzZSBFbmdsaXNoIGp1ZnJhOgor ICEhTGVvbnMgZGUgbG9qYmFuICBsZW9uIHVuOiBicmlkaSwganVmcmEsIHN1bXRpIGV0IHNlbGJy aQoKLSAjIEkgaGF0ZSBpdCB3aGVuIHlvdSBkbyB0aGF0LjxiciAvPiMgUnVucy48YnIgLz4jIFdv YWgsIHRoYXQgbG9va3MgZGVsaWNpb3VzITxiciAvPiMgR2Vleiwgbm90IGFnYWluLjxiciAvPiMg Tm8sIEkgb3duIHRocmVlIGNhcnM8YnIgLz4jIE5pbmV0ZWVuIG1pbnV0ZXMgcGFzdCBlaWdodC48 YnIgLz4jIFRoaXMgU2F0dXJkYXksIHllcy4KKyBVbiAnJ2JyaWRpJycgZXN0IGxlIHR5cGUgZCdl eHByZXNzaW9uIGxlIHBsdXMgY291cmFtbWVudCByZW5jb250ciBlbiBsb2piYW4uIExlIGNvbmNl cHQgZXN0IHRycyBwcm9jaGUgZGVzIHByb3Bvc2l0aW9ucywgZGFucyBsYSBncmFtbWFpcmUgZnJh bmFpc2UuIFVuIGJyaWRpIGVzdCB1bmUgZGNsYXJhdGlvbiBxdSd1biBvYmpldCBlc3QgZW4gcmVs YXRpb24gYXZlYyB1biBhdXRyZSwgb3UgcXVlIGNldCBvYmpldCBwb3NzZGUgY2VydGFpbmVzIHBy b3ByaXRzLiBJbCBlc3QgYSBjb250cmFzdGVyIGF2ZWMgbGVzICcnanVmcmEnJywgcXVpIHJlcHJz ZW50ZW50IG4naW1wb3J0ZSBxdWVsbGUgZXhwcmVzc2lvbiBsb2piYW5lLCBxdWUgY2Ugc29pdCBk ZXMgYnJpZGkgb3UgZCdhdXRyZXMgdHlwZXMgZGUgcGhyYXNlcy4gTGEgZGlmZnJlbmNlIGVudHJl IHVuIGJyaWRpIGV0IHVuIGp1ZnJhIGVzdCBxdSd1biBqdWZyYSBuZSBzcGNpZmllIHBhcyBmb3Jj bWVudCBxdWVscXVlIGNob3NlLCBtYWlzIHVuIGJyaWRpIGxlIGZhaXQuIEFpbnNpLCB1biBicmlk aSBwZXV0IHRyZSB2cmFpIG91IGZhdXgsIG1haXMgdW4ganVmcmEgcGV1dCBuZSBwYXMgdHJlIHF1 YWxpZmkgZGUgbGEgc29ydGUuCgotIEFuc3dlcjogfn5ncmV5LGdyZXk6MSwgMyBhbmQgNSBhcmUg YnJpZGkuIDIgY29udGFpbnMgbm8gb2JqZWN0cyBhbmQgdGhlIHJlc3QgY29udGFpbiBubyByZWxh dGlvbiBvciBjbGFpbSBvZiBhIHByb3BlcnR5Ln5+CisgUG91ciBhdm9pciBxdWVscXVlcyBleGVt cGxlcywgZW4gZnJhbmFpcyBwb3VyIGNvbW1lbmNlciwgTW96YXJ0IHRhaXQgbGUgbWVpbGxldXJz IG11c2ljaWVuIGRlIHRvdXQgbGVzIHRlbXBzIGVzdCB1biBicmlkaSwgcGFyY2UgcXUnaWwgZGNs YXJlIHF1ZWxxdWUgY2hvc2UgY29tbWUgdnJhaSwgZXQgcXUnaWwgaW1wbGlxdWUgdW4gb2JqZXQs IE1vemFydCwgZXQgdW5lIHByb3ByaXQsIHRyZSBsZSBwbHVzIGdyYW5kIG11c2ljaWVuIGRlIHRv dXQgbGVzIHRlbXBzLiBBdSBjb250cmFpcmUsIEFlISBNb24gb3J0ZWlsISBuJ2VzdCBwYXMgdW4g YnJpZGksIHB1aXNxdSdpbCBuJ2ltcGxpcXVlIHBhcyBkZSByZWxhdGlvbiwgZXQgbmUgZGNsYXJl IGRvbmMgcmllbi4gQ2VzIGRldXggcGhyYXNlcyBzb250IHRvdXRlZm9pcyBkZXMganVmcmEuCgot IFB1dCBpbiBMb2piYW4gdGVybXMsIGEgYnJpZGkgY29uc2lzdHMgb2Ygb25lICcnc2VsYnJpJycs IGFuZCBvbmUgb3IgbW9yZSAnJ3N1bXRpJycuIFRoZSBzZWxicmkgaXMgdGhlIHJlbGF0aW9uIG9y IGNsYWltIGFib3V0IHRoZSBvYmplY3QsIGFuZCB0aGUgc3VtdGkgYXJlIHRoZSBvYmplY3RzIHdo aWNoIGFyZSBpbiBhIHJlbGF0aW9uLiBOb3RlIHRoYXQgb2JqZWN0IGlzIG5vdCBhIHBlcmZlY3Qg dHJhbnNsYXRpb24gb2Ygc3VtdGksIHNpbmNlIHN1bXRpIGNhbiByZWZlciB0byBub3QganVzdCBw aHlzaWNhbCBvYmplY3RzLCBidXQgY2FuIGFsc28gcHVyZWx5IGFic3RyYWN0IHRoaW5ncyBsaWtl IFRoZSBpZGVhIG9mIHdhcmZhcmUuIEEgYmV0dGVyIHRyYW5zbGF0aW9uIHdvdWxkIGJlIHNvbWV0 aGluZyBsaWtlIHN1YmplY3QsIGRpcmVjdCBvciBpbmRpcmVjdCBvYmplY3QgZm9yIHN1bXRpLCBh bmQgdmVyYiBmb3Igc2VsYnJpLCB0aG91Z2gsIGFzIHdlIHdpbGwgc2VlLCB0aGlzIGlzIG5vdCBv cHRpbWFsIGVpdGhlci48YnIgLz5XZSBjYW4gbm93IHdyaXRlIHRoZSBmaXJzdCBpbXBvcnRhbnQg bGVzc29uIGRvd246PGJyIC8+YnJpZGkgPSBzZWxicmkgKyBvbmUgb3IgbW9yZSBzdW10aTxiciAv PlB1dCBhbm90aGVyIHdheSwgYSBicmlkaSBzdGF0ZXMgdGhhdCBzb21lIHN1bXRpIGRvL2FyZSBz b21ldGhpbmcgZXhwbGFpbmVkIGJ5IGEgc2VsYnJpLgorIEVzc2F5ZXogZCdpZGVudGlmaWVyIGxl cyBicmlkaSBwYXJtaSBjZXMganVmcmEgZnJhbmFpcyA6CgotIElkZW50aWZ5IHRoZSBzdW10aSBh bmQgc2VsYnJpIGVxdWl2YWxlbnRzIGluIHRoZXNlIEVuZ2xpc2gganVmcmE6PGJyIC8+SSB3aWxs IHBpY2sgdXAgbXkgZGF1Z2h0ZXJzIHdpdGggbXkgY2FyCisgIyBKZSBkdGVzdGUgcXVhbmQgdHUg ZmFpcyBhLjxiciAvPiMgQ291cmUhPGJyIC8+IyBNbW1oISBhIHNlbWJsZSBkbGljaWV1eC48YnIg Lz4jIE9oIG5vbiwgcGFzIGVuY29yZTxiciAvPiMgTWFpbnRlbmFudCwgamUgcG9zc2RlIHRyb2lz IHZvaXR1cmVzLjxiciAvPiMgSHVpdCBoZXVyZSBldCBkaXgtbmV1ZiBtaW51dGVzLjxiciAvPiMg Q2Ugc2FtZWRpLCBvdWkuCgotIEFuc3dlcjogfn5ncmV5LGdyZXk6c2VsYnJpOiBwaWNrIHVwICh3 aXRoKS4gc3VtdGk6IEksIG15IGRhdWdodGVycywgbXkgY2Fyfn4KKyBScG9uc2U6IH5+Z3JleSxn cmV5OjEsIDMgZXQgNSBzb250IGRlcyBicmlkaS4gMiBuZSBjb250aWVudCBwYXMgZCdvYmpldCwg ZXQgbGVzIGF1dHJlcyBuZSBjb250aWVubmVudCBwYXMgZGUgcmVsYXRpb24gbmkgZGUgZGNsYXJl bnQgZGUgcHJvcHJpdHMufn4KCi0gSGUgYm91Z2h0IDUgbmV3IHNoaXJ0cyBmcm9tIE1hcmsgZm9y IGp1c3QgdHdvIGh1bmRyZWQgZXVybyEKKyBEY29tcG9zIGVuIHRlcm1lcyBsb2piYW4sIHVuIGJy aWRpIGVzdCBjb25zdGl0dSBkJ3VuICcnc2VsYnJpJycsIGV0IGQndW4gb3UgcGx1c2lldXJzICcn c3VtdGknJy4gTGUgc2VsYnJpIGVzdCBsYSByZWxhdGlvbiBvdSBkY2xhcmF0aW9uICBwcm9wb3Mg ZGVzIG9iamV0cywgZXQgbGVzIHN1bXRpIHNvbnQgbGVzIG9iamV0cyBpbXBsaXF1cyBkYW5zIGxh IHJlbGF0aW9uLiBOb3RleiBxdWUgb2JqZXQgbidlc3QgcGFzIHVuZSB0cmFkdWN0aW9uIHBhcmZh aXRlIGRlIHN1bXRpLCBwYXJjZSBxdSd1biBzdW10aSBwZXV0IHNlIHJmcmVyIGF1dGFudCAgdW4g b2JqZXQgcGh5c2lxdWUgcXUnIGRlcyBjaG9zZXMgcHVyZW1lbnQgYWJzdHJhaXRlcyBjb21tZSBs J2lkZSBkZSBsYSBndWVycmUuIFVuZSBtZWlsbGV1cmUgdHJhZHVjdGlvbiBzZXJhaXQgcXVlbHF1 ZSBjaG9zZSBjb21tZSBzdWpldCwgb2JqZXQgZGlyZWN0IG91IGluZGlyZWN0IHBvdXIgbGVzIHN1 bXRpLCBldCB2ZXJiZSBwb3VyIGxlcyBzZWxicmksIGJpZW4gcXVlLCBjb21tZSBub3VzIGxlIHZl cnJvbnMgcGx1cyB0YXJkLCBjZSBuJ2VzdCBwYXMgbm9uIHBsdXMgb3B0aW1hbC4KCi0gQW5zd2Vy OiB+fmdyZXksZ3JleTpzZWxicmk6IGJvdWdodCAoZnJvbSkgKGZvcikgc3VtdGk6IEhlLCA1IG5l dyBzaGlydHMsIE1hcmsgYW5kIHR3byBodW5kcmVkIGV1cm9zfn4KKyBOb3VzIHBvdXZvbnMgbWFp bnRlbmFudCBjcmlyZSBub3RyZSBwcmVtaXJlIGxlb24gaW1wb3J0YW50ZTo8YnIgLz5icmlkaSA9 IHNlbGJyaSArIHVuIG91IHBsdXNpZXVycyBzdW10aQoKLSBTaW5jZSB0aGVzZSBjb25jZXB0cyBh cmUgc28gZnVuZGFtZW50YWwgdG8gTG9qYmFuLCBsZXQncyBoYXZlIGEgdGhpcmQgZXhhbXBsZTog U28gZmFyLCB0aGUgRVBBIGhhcyBkb25lIG5vdGhpbmcgYWJvdXQgdGhlIGFtb3VudCBvZiBzdWxw aHVyIGRpb3hpZGUuCisgRGl0IGQndW5lIGF1dHJlIG1hbmlyZSwgdW4gYnJpZGkgZGZpbml0IHF1 J3VuIG91IHBsdXNpZXVycyBzdW10aSBzb250L2ZvbnQgcXVlbHF1ZSBjaG9zZSBleHBsaXF1IHBh ciB1biBzZWxicmkuCgotIEFuc3dlcjogfn5ncmV5LGdyZXk6c2VsYnJpOiBoYXMgZG9uZSAoYWJv dXQpIHN1bXRpOiBUaGUgRVBBLCBub3RoaW5nIGFuZCB0aGUgYW1vdW50IG9mIHN1bHBodXIgZGlv eGlkZX5+CisgSWRlbnRpZmlleiBsJ3F1aXZhbGVudCBkZXMgc3VtdGkgZXQgZHUgc2VsYnJpIGRh bnMgY2VzIGp1ZnJhIGZyYW5haXM6CgotIE5vdyB0cnkgYmVnaW4gbWFraW5nIExvamJhbiBicmlk aS4gRm9yIHRoaXMgeW91IHdpbGwgbmVlZCB0byB1c2Ugc29tZSB3b3Jkcywgd2hpY2ggY2FuIGFj dCBhcyBzZWxicmk6PGJyIC8+JydfX2R1bmRhX18nJyB4MSBnaXZlcyB4MiB0byB4MyAod2l0aG91 dCBwYXltZW50KTxiciAvPicnX19wZWx4dV9fJycgeDEgaXMgeWVsbG93PGJyIC8+JydfX3pkYW5p X18nJyB4MSBpcyBhIGhvbWUgb2YgeDIKKyBKZSB2YWlzIHJjdXByZXIgbWVzIGZpbGxlcyBhdmVj IG1hIHZvaXR1cmUuCgotIE5vdGljZSB0aGF0IHRoZXNlIHdvcmRzIG1lYW5pbmcgZ2l2ZSwgeWVs bG93IGFuZCBob21lIHdvdWxkIGJlIGNvbnNpZGVyZWQgYSB2ZXJiLCBhbiBhZGplY3RpdmUgYW5k IGEgbm91biBpbiBFbmdsaXNoLiBJbiBMb2piYW4sIHRoZXJlIGFyZSBubyBzdWNoIGNhdGVnb3Jp ZXMgYW5kIG5vIHN1Y2ggZGlzdGluY3Rpb24uICcnZHVuZGEnJyBjYW4gYmUgdHJhbnNsYXRlZCBn aXZlcyAodmVyYiksIGlzIGEgZ2l2ZXIgKG5vdW4pLCBpcyBnaXZpbmcgKGFkamVjdGl2ZSkgYXMg d2VsbCBhcyB0byBhbiBhZHZlcmIgZm9ybS4gVGhleSBhbGwgYWN0IGFzIHNlbGJyaSwgYW5kIGFy ZSB1c2VkIGluIHRoZSBzYW1lIHdheS4KKyBScG9uc2U6IH5+Z3JleSxncmV5OnNlbGJyaTogdmFp cyByY3VwcmVyIChhdmVjKS4gc3VtdGk6IEplLCBtZXMgZmlsbGVzLCBtYSB2b2l0dXJlfn4KCi0g QXMgd2VsbCBhcyBhIGZldyB3b3Jkcywgd2hpY2ggY2FuIGFjdCBhcyBzdW10aTo8YnIgLz4nJ19f bWlfXycnIEkgb3Igd2UgIHRoZSBvbmUgb3IgdGhvc2Ugd2hvIGFyZSBzcGVha2luZy48YnIgLz4n J19fdGlfXycnIHRoaXMgIGEgY2xvc2UgdGhpbmcgb3IgZXZlbnQgbmVhcmJ5IHdoaWNoIGNhbiBi ZSBwb2ludGVkIHRvIGJ5IHRoZSBzcGVha2VyLjxiciAvPicnX19kb19fJycgeW91ICB0aGUgb25l IG9yIHRob3NlIHdobyBhcmUgYmVpbmcgc3Bva2VuIHRvLgorIElsIGEgYWNoZXQgY2lucSBub3V2 ZWF1eCBzaGlydHMgIE1hcmsgcG91ciAgcGVpbmUgZGV1eC1jZW50IGV1cm9zIQoKLSBTZWUgdGhl IHN0cmFuZ2UgdHJhbnNsYXRpb25zIG9mIHRoZSBzZWxicmkgYWJvdmUgLSBlc3BlY2lhbGx5IHRo ZSB4MSwgeDIgYW5kIHgzPyBUaG9zZSBhcmUgY2FsbGVkIHN1bXRpIHBsYWNlcy4gVGhleSBhcmUg cGxhY2VzIHdoZXJlIHN1bXRpIGNhbiBnbyB0byBmaWxsIGEgYnJpZGkuIEZpbGxpbmcgYSBzdW10 aSBpbiBhIHBsYWNlIHN0YXRlcyB0aGF0IHRoZSBzdW10aSBmaXRzIGluIHRoYXQgcGxhY2UuIFRo ZSBzZWNvbmQgcGxhY2Ugb2YgJydkdW5kYScnLCBmb3IgZXhhbXBsZSwgeDIsIGlzIHRoZSB0aGlu ZyBiZWluZyBnaXZlbi4gVGhlIHRoaXJkIGlzIHRoZSBvYmplY3Qgd2hpY2ggcmVjZWl2ZXMgdGhl IHRoaW5nLiBOb3RpY2UgYWxzbyB0aGF0IHRoZSB0cmFuc2xhdGlvbiBvZiAnJ2R1bmRhJycgaGFz IHRoZSB3b3JkIHRvIGluIGl0LiBUaGlzIGlzIGJlY2F1c2UsIHdoaWxlIHRoaXMgd29yZCBpcyBu ZWVkZWQgaW4gRW5nbGlzaCB0byBzaWduaWZ5IHRoZSByZWNlaXZlciwgdGhlIHJlY2VpdmVyIGlz IGluIHRoZSB0aGlyZCBzdW10aSBwbGFjZSBvZiAnJ2R1bmRhJycuIFNvIHdoZW4geW91IGZpbGwg dGhlIHRoaXJkIHN1bXRpIHBsYWNlIG9mICcnZHVuZGEnJywgdGhlIHN1bXRpIHlvdSBmaWxsIGlu IGlzIGFsd2F5cyB0aGUgcmVjZWl2ZXIsIGFuZCB5b3UgZG9uJ3QgbmVlZCBhbiBlcXVpdmFsZW50 IHRvIHRoZSB3b3JkIHRvIQorIFJwb25zZTogfn5ncmV5LGdyZXk6c2VsYnJpOiBhIGFjaGV0ICgp IChwb3VyKSBzdW10aTogSWwsIGNpbnEgbm91dmVhdSBzaGlydHMsIE1hcmsgZXQgZGV1eC1jZW50 IGV1cm9zfn4KCi0gVG8gc2F5IGEgYnJpZGksIHlvdSBzaW1wbHkgc2F5IHRoZSB4MSBzdW10aSBm aXJzdCwgdGhlbiB0aGUgc2VsYnJpLCB0aGVuIGFueSBvdGhlciBzdW10aS48YnIgLz5Vc3VhbCBi cmlkaToge3gxIHN1bXRpfSBfX3tzZWxicml9X18ge3gyIHN1bXRpfSB7eDMgc3VtdGl9IHt4NCBz dW10aX0ge3g1IHN1bXRpfSB7YW5kIHNvIG9ufTxiciAvPlRoZSBvcmRlciBjYW4gYmUgcGxheWVk IGFyb3VuZCB3aXRoLCBidXQgZm9yIG5vdywgd2Ugc3RpY2sgd2l0aCB0aGUgdXN1YWwgZm9ybS4g VG8gc2F5IEkgZ2l2ZSB0aGlzIHRvIHlvdSB5b3UganVzdCBzYXkgJydtaSBkdW5kYSB0aSBkbycn LCB3aXRoIHRoZSB0aHJlZSBzdW10aSBhdCB0aGUgcmlnaHQgcGxhY2VzLgorIFB1aXNxdWUgY2Vz IGNvbmNlcHRzIHNvbnQgc2kgZm9uZGFtZW50YWxzIGVuIGxvamJhbiwgcmVnYXJkb25zIHVuIHRy b2lzaW1lIGV4ZW1wbGU6PGJyIC8+SnVzcXUnIG1haW50ZW5hbnQsIGwnRVBBIG4nYSByaWVuIGZh aXQgIHByb3BvcyBkZSBsYSBxdWFudGl0IGRlIGRpb3hpZGUgZGUgc291ZnJlLgoKLSBTbywgaG93 IHdvdWxkIHlvdSBzYXkgVGhpcyBpcyBhIGhvbWUgb2YgbWU/CisgUnBvbnNlOiB+fmdyZXksZ3Jl eTpzZWxicmk6IGEgZmFpdCAoIHByb3BvcyBkZSkgc3VtdGk6IGwnRVBBLCByaWVuIGV0IGxhIHF1 YW50aXQgZGUgZGlveGlkZSBkZSBzb3VmcmV+fgoKLSBBbnN3ZXI6IH5+Z3JleSxncmV5OicndGkg emRhbmkgbWknJ35+CisgTWFpbnRlbmFudCwgZXNzYXlleiBkZSBjcmVyIGRlcyBicmlkaSBlbiBs b2piYW4uIFBvdXIgY2VsYSwgdm91cyBhdXJleiBiZXNvaW4gZGUgbW90cywgcXVpIHBldXZlbnQg ZmFpcmUgb2ZmaWNlIGRlIHNlbGJyaTo8YnIgLz4nJ19fZHVuZGFfXycnIHgxIGRvbm5lIHgyICB4 MyAoc2FucyBwYWllbWVudCk8YnIgLz4nJ19fcGVseHVfXycnIHgxIGVzdCBqYXVuZTxiciAvPicn X196ZGFuaV9fJycgeDEgZXN0IHVuZSBtYWlzb24gZGUgeDIKCi0gVHJ5IGEgZmV3IG1vcmUgaW4g b3JkZXIgdG8gZ2V0IHRoZSBpZGVhIG9mIGEgcGxhY2Ugc3RydWN0dXJlIHNpbmsgaW4uCisgTm90 ZXogcXVlIGNlcyBtb3RzLCBkb25uZXIsIGphdW5lIGV0IG1haXNvbiwgc2VyYWllbnQgY29uc2lk cnMgY29tbWUgdW4gdmVyYmUsIHVuIGFkamVjdGlmIGV0IHVuIG5vbSwgcmVzcGVjdGl2ZW1lbnQu IEVuIGxvamJhbiwgaWwgbid5IGEgcGFzIGNlcyBjYXRnb3JpZXMsIGV0IGRvbmMgcGFzIGRlIGRp c3RpbmN0aW9uLiAnJ2R1bmRhJycgcGV1dCB0cmUgdHJhZHVpdCBwYXIgZG9ubmVyICh1biB2ZXJi ZSksIHVuIGRvbm5ldXIgKG5vbSksIGRvbm5hbnQgKGFkamVjdGlmKSwgb3UgbW1lIGNvbW1lIHVu IGFkdmVyYmUuIElscyBzZSBjb21wb3J0ZW50IHRvdXMgY29tbWUgZGVzIHNlbGJyaSwgZXQgc29u dCB1dGlsaXNzIGRlIGxhIG1tZSBtYW5pcmUuCgotIFlvdSBnaXZlIHRoaXMgdG8gbWU/CisgVm91 cyBhdXJleiBhdXNzaSBiZXNvaW4gZGUgcXVlbHF1ZSBtb3RzLCBxdWkgZmVyb250IG9mZmljZSBk ZSBzdW10aTo8YnIgLz4nJ19fbWlfXycnIG1vaSwgamUgb3Ugbm91cyAgQ2VsdWkgb3UgY2V1eCBx dWkgcGFybGUvcGFybGVudC48YnIgLz4nJ19fdGlfXycnIGNlY2kgIFVuZSBjaG9zZSBvdSB1biB2 bmVtZW50IHByb2NoZSwgcXVpIHBldXQgdHJlIHBvaW50IHBhciBsZSBsb2N1dGV1ci48YnIgLz4n J19fZG9fXycnIHR1IG91IHZvdXMgIENlbHVpIG8gY2V1eCAgcXVpIGwnb24gcydhZHJlc3NlLgoK LSBBbnN3ZXI6IH5+Z3JleSxncmV5OicnZG8gZHVuZGEgdGkgbWknJ35+CisgVm91cyB2b3lleiBs YSB0cmFkdWN0aW9uIGJpemFycmUgZGVzIHNlbGJyaSBjaS1kZXNzdXMgIG5vdGFtbWVudCBsZSB4 MSwgeDIgZXQgeDM/IElscyBzb250IGFwcGVscyBkZXMgZW1wbGFjZW1lbnQgZGUgc3VtdGkuIENl IHNvbnQgZGVzIGVtcGxhY2VtZW50IG8gbCdvbiBwZXV0IG1ldHRyZSB1biBzdW10aSBwb3VyIGNv bXBsdGVyIHVuIGJyaWRpLiBDb21wbHRlciB1biBlbXBsYWNlbWVudCBkZSBzdW10aSBzaWduaWZp ZSBxdWUgbGUgc3VtdGkgcydhY2NvcmRlICBjZXQgZW1wbGFjZW1lbnQuIExlIHNlY29uZCBlbXBs YWNlbWVudCBkZSAnJ2R1bmRhJycsIHBhciBleGVtcGxlLCB4MiwgZXN0IGxhIGNob3NlIHF1aSBl c3QgZG9ubmUuIExlIHRyb2lzaW1lIGVtcGxhY2VtZW50IGVzdCBsJ29iamV0IHJlY2V2YW50IGxl IGRvbi4gTm90ZXogY29tbWUgbGEgdHJhZHVjdGlvbiBkZSAnJ2R1bmRhJycgY29udGllbnQgbGUg bW90IC4gQ2VjaSBlc3QgZCBhdSBmYWl0IHF1J2VuIGZyYW5haXMsICBlc3QgdXRpbGlzIHBvdXIg c2lnbmlmaWVyIGxlIHJlY2V2ZXVyLCBxdWkgZXN0IGF1IHRyb2lzaW1lIGVtcGxhY2VtZW50IGRl ICcnZHVuZGEnJy4gQWluc2ksIHF1YW5kIHZvdXMgY29tcGx0ZXogbGUgdHJvaXNpbWUgZW1wbGFj ZW1lbnQgZGUgJydkdW5kYScnLCBsZSBzdW10aSBxdWUgdm91cyB5IHBsYWNleiBlc3QgdG91am91 cnMgbGUgcmVjZXZldXIsIGV0IHZvdXMgbidhdmV6IHBhcyBiZXNvaW4gZCd1biBxdWl2YWxlbnQg YXUgbW90IC4KCi0gQW5kIHRyYW5zbGF0ZSAnJ3RpIHBlbHh1JycKKyBQb3VyIGV4cHJpbWVyIHVu IGJyaWRpLCB2b3VzIHV0aWxpc2V6IHNpbXBsZW1lbnQgbGUgc3VtdGkgeDEgZW4gcHJlbWllciwg cHVpcyBsZSBzZWxicmksIHB1aXMgbGVzIGF1dHJlcyBzdW10aS4KCi0gQW5zd2VyOiB+fmdyZXks Z3JleTpUaGlzIGlzIHllbGxvdy5+fgorIFVuIGJyaWRpIGhhYml0dWVsOiB7c3VtdGkgeDF9IF9f e3NlbGJyaX1fXyB7c3VtdGkgeDJ9IHtzdW10aSB4M30ge3N1bXRpIHg0fSB7c3VtdGkgeDV9IHtl dCBhaW5zaSBkZSBzdWl0ZX0KCi0gUXVpdGUgZWFzeSBvbmNlIHlvdSBnZXQgdGhlIGhhbmcgb2Yg aXQsIHJpZ2h0PworIEwnb3JkcmUgcGV1dCB2YXJpZXIsIG1haXMgcG91ciBsZSBtb21lbnQsIG5v dXMgbm91cyBjb250ZW50ZXJvbnMgZGUgbGEgZm9ybWUgaGFiaXR1ZWxsZS4gUG91ciBkaXJlIEpl IGRvbm5lIGNlY2kgIHRvaSwgdm91cyBkdGVzIGp1c3RlOiAnJ21pIGR1bmRhIHRpIGRvJycsIGF2 ZWMgY2hhcXVlIHN1bXRpIGF1IGJvbiBlbXBsYWNlbWVudC4KCi0gTXVsdGlwbGUgYnJpZGkgYWZ0 ZXIgZWFjaCBvdGhlciBhcmUgc2VwYXJhdGVkIGJ5ICcnLmknJyBUaGlzIGlzIHRoZSBMb2piYW4g ZXF1aXZhbGVudCBvZiBmdWxsIHN0b3AsIGJ1dCBpdCB1c3VhbGx5IGdvZXMgYmVmb3JlIGJyaWRp IGluc3RlYWQgb2YgYWZ0ZXIgdGhlbS4gSXQncyBvZnRlbiBsZWZ0IG91dCBiZWZvcmUgdGhlIGZp cnN0IGJyaWRpLCB0aG91Z2gsIGFzIGluIGFsbCB0aGVzZSBleGFtcGxlczo8YnIgLz4nJ19fLmlf XycnIFNlbnRlbmNlIHNlcGFyYXRvci4gU2VwYXJhdGVzIGFueSB0d28ganVmcmEgKGFuZCB0aGVy ZWZvcmUgYWxzbyBicmlkaSkuCisgRG9uYywgY29tbWVudCBkaXJpZXogdm91cyBDZWNpIGVzdCB1 bmUgbWFpc29uIGRlIG1vaT8KCi0gJyd0aSB6ZGFuaSBtaSAgLmkgdGkgcGVseHUnJyBUaGlzIGlz IGEgaG9tZSB0byBtZS4gVGhpcyBpcyB5ZWxsb3cuCisgUnBvbnNlOiB+fmdyZXksZ3JleTonJ3Rp IHpkYW5pIG1pJyd+fgoKLSBCZWZvcmUgeW91IG1vdmUgb24gdG8gdGhlIG5leHQgbGVzc29uLCBJ IHJlY29tbWVuZCB0aGF0IHlvdSB0YWtlIGEgYnJlYWsgZm9yIGF0IGxlYXN0IHNldmVuIG1pbnV0 ZXMgdG8gbGV0IHRoZSBpbmZvcm1hdGlvbiBzaW5rIGluLgorIEVzc2F5ZXogZGUgcnBvbmRyZSAg Y2VzIHF1ZWxxdWVzIGF1dHJlcyBxdWVzdGlvbnMgcG91ciB2b3VzIGZhbWlsaWFyaXNlciBhdmVj IGwnaWRlIGRlIGNldHRlIHN0cnVjdHVyZSBwYXIgZW1wbGFjZW1lbnRzOgoKKyBDb21tZW50IHRy YWR1aXJlIMKrwqBUdSBkb25uZXMgY2VjaSDDoCBtb2kuwqDCu8KgPworIAorIFLDqXBvbnNlwqA6 IH5+Z3JleSxncmV5OicnZG8gZHVuZGEgdGkgbWknJ35+CisgCisgRXQgcXVlIHZldXQgZGlyZSDC q8KgJyd0aSBwZWx4dScnwqDCu8KgPworIAorIFLDqXBvbnNlwqA6IH5+Z3JleSxncmV5OkNlY2kg ZXN0IGphdW5lLn5+CisgCisgUGx1dMO0dCBmYWNpbGUgdW5lIGZvaXMgcXVlIGwnb24gYSBjb21w cmlzLCBub27CoD8KKyAKKyBQbHVzaWV1cnMgYnJpZGkgbGVzIHVucyDDoCBsYSBzdWl0ZSBkZXMg YXV0cmVzIHNvbnQgc8OpcGFyw6lzIHBhciDCq8KgJycuaScnwqDCuy4gwqvCoC5pwqDCuyBlc3Qg bCfDqXF1aXZhbGVudCBsb2piYW4gZCd1biBwb2ludCwgbWFpcyBzZSBwbGFjZSBlbiBnw6luw6ly YWwgYXZhbnQgbGUgYnJpZGksIHBsdXTDtHQgcXUnYXByw6hzLiBJbCBlc3Qgc291dmVudCBvbWlz IGF2YW50IGxlIHByZW1pZXIgYnJpZGksIGNlcGVuZGFudCwgY29tbWUgZGFucyBjZXQgZXhlbXBs ZcKgOgorIAorICcnX18uaV9fJycgU8OpcGFyYXRldXIgZGUgcGhyYXNlcy4gU8OpcGFyZSBkZXMg anVmcmEgKGV0IHBhciBjb25zw6lxdWVudCBkZXMgYnJpZGkgYXVzc2kpLgorIAorICcndGkgemRh bmkgbWkgIC5pIHRpIHBlbHh1JycgwqvCoENlY2kgZXN0IHVuZSBtYWlzb24gZGUgbW9pLiBDZWNp IGVzdCBqYXVuZS7CoMK7CisgCisgQXZhbnQgZGUgY29udGludWVyIGF2ZWMgbGEgbGXDp29uIHN1 aXZhbnRlLCBqZSB2b3VzIHJlY29tbWFuZGUgZGUgZmFpcmUgdW5lIHBhdXNlIGQnYXUgbW9pbnMg c2VwdCBtaW51dGVzIHBvdXIgZGlnw6lyZXIgY2VzIGluZm9ybWF0aW9ucy4KCiEhTG9qYmFuIExl c3NvbnMg4oCTIGxlc3NvbiB0d28gKEZBIGFuZCB6bydlKQoKCgoKKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKVGhlIG5ldyBwYWdlIGNv bnRlbnQgZm9sbG93cyBiZWxvdy4KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioKCntCT1godGl0bGU9IlRyYXZhaWwgZW4gY291cnMiKX0K CkNldHRlIHBhZ2UgZXN0IHVuZSB0cmFkdWN0aW9uIGVuIGNvdXJzIGRlICgod2F2ZWxlc3NvbnNj b250aW51ZWQpKSBlbiBmcmFuw6dhaXMuIExhIG1hamV1cmUgcGFydGllIGRlIGxhIHBhZ2UgZXN0 IGVuY29yZSBlbiBhbmdsYWlzLiBBdSBmdXIgZXQgw6AgbWVzdXJlIGRlIGxhIHRyYWR1Y3Rpb24s IGNldHRlIG5vdGUgc2VyYSBtaXNlIMOgIGpvdXIgcG91ciBpbmRpcXVlciBsJ8OpdGF0IGQnYXZh bmNlbWVudCBkZXMgbGXDp29ucy4gCgoKCsOJdGF0IGFjdHVlbMKgOiBMZcOnb24gesOpcm8gdHJh ZHVpdGUuIE7DqWNlc3NpdGUgdW5lIHZhbGlkYXRpb24gcGFyIGRlcyBsb2piYW5pc3RlcyBjb25m aXJtw6lzLgoKe0JPWH0gCgoKCiFMZXMgbGXDp29ucyBXYXZlIGNvbnRpbnXDqWVzwqA6CgohISFS w6lkaWfDqWVzIHBhciBsYSBrbGFrdSwgYXZlYyBsJ2FpZGUgZGUgbG9qYmFuaXN0ZXMgdmFyacOp cy4gQmFzw6llIHN1ciBsZSB0cmF2YWlsIGRlIGxhIC5rcmliYWNyLiBQcmludGVtcHMgMjAxMy4K ClRyYWR1aXRlcyBkZSBsJ2FuZ2xhaXMgdmVycyBsZSBmcmFuw6dhaXMgcGFyIERhZWxkaXIuCgoK CiEhTGXDp29ucyBkZSBsb2piYW4g4oCTIGxlw6dvbiB6w6lybzogYXZhbnQgcHJvcG9zCgpDZXMg bGXDp29ucyBzb250IHVuZSB0ZW50YXRpdmUgZGUgZMOpdmVsb3BwZXIgbGVzIMKrwqBMZcOnb25z IGRlIEdvb2dsZSBXYXZlwqDCuywgdW4gZXhjZWxsZW50IGRpZGFjdGljaWVsIGNvbnNhY3LDqSBh dSBsb2piYW4sIMOpY3JpdCBwYXIga3JpYmFjciwgeGFsYm8sIGV0IGQnYXV0cmVzLCBxdWksIGjD qWxhcywgbmUgY291dnJhaXQgcXVlIGxlcyBxdWF0cmVzIHByZW1pZXJzIGNoYXBpdHJlcyBkdSBw csOpc2VudCBkaWRhY3RpY2llbC4gSWwgdHJhaXRlIGRlcyByw6hnbGVzIGxlcyBwbHVzIHLDqWNl bnRlcyBkdSBsb2piYW4sIHF1aSBuZSBzb250IHBhcyBjb3V2ZXJ0ZXMgcGFyIGRlIHBsdXMgYW5j aWVucyBjb3VycyB0ZWxzIHF1ZSDCq8KgV2hhdCBpcyBMb2piYW4/wqDCuywgZXQgwqvCoExvamJh biBmb3IgQmVnaW5uZXJzwqDCuy4KCgoKU2kgbGUgbG9qYmFuIGVzdCB0b3RhbGVtZW50IG5vdXZl YXUgcG91ciB2b3VzLCBqZSB2b3VzIHJlY29tbWFuZGUgZCfDqWNvdXRlciB0b3V0IGxlcyBlbnJl Z2lzdHJlbWVudCBkZSBsb2piYW4gcGFybMOpIHF1ZSB2b3VzIHBvdXJyZXogdHJvdXZlciwgdGFu dCBhdmFudCBxdWUgcGVuZGFudCBsYSBsZWN0dXJlIGRlIGNlIGRpZGFjdGljaWVsLCBhZmluIGRl IHZvdXMgZmFtaWxpYXJpc2VyIGF2ZWMgbGVzIHNvbnMgZXQgbGVzIG1vdHMgZHUgbGFuZ2FnZS4g RGUgcGx1cywgZXNzYXlleiBkZSBwcm9ub25jZXIgY2UgcXVlIHZvdXMgbGlzZXogYXZlYyBsJ2Fj Y2VudCBsb2piYW4gc2kgdm91cyBsZSBwb3V2ZXouIENlY2kgdm91cyBhaWRlcmEgw6AgcHJvbm9u Y2VyIGxlIGxvamJhbi4gCgoKCkVuIHN1aXZhbnQgY2UgZGlkYWN0aWNpZWwsIGlsIGVzdCBjb25z ZWlsbMOpIGRlIHByZW5kcmUgZGVzIHBhdXNlcyBlbnRyZSBsZXMgbGXDp29ucyBhZmluIGRlIGRp Z8OpcmVyIGNlIHF1ZSB2b3VzIGF2ZXogYXBwcmlzLiBKJ2FpIGVzc2F5w6kgZGUgY29uc3RydWly ZSBjZXMgbGXDp29ucyBkdSBzaW1wbGUgYXUgY29tcGxleGUsIGV0IGQnZXhjbHVyZSB0b3V0IG1v dCBvdSBjb25jZXB0IHF1aSBuJ2EgcGFzIMOpdMOpIGV4cGxpcXXDqSBkYW5zIGxlcyBsZcOnb24g cHLDqWPDqWRlbnRlLiBVbmUgZm9pcyBleHBsaXF1w6lzLCBpbHMgc29udCB1dGlsaXPDqXMgbGli cmVtZW50IHRvdXQgYXUgbG9uZyBkdSByZXN0ZSBkdSBkaWRhY3RpY2llbC4gSidleGhvcnRlIGxl IGxlY3RldXIgw6AgbmUgcGFzIGZhaXJlIGwnaW1wYXNzZSBzdXIgdW4gY29udGVudSBpbmNvbXBy aXPCoDogc2kgdm91cyBhdmV6IHVuZSBxdWVzdGlvbiBvdSBuJ8OqdGVzIHBhcyBjZXJ0YWlucyBk J3VuZSBjaG9zZSwgbidheWV6IHBhcyBkZSBjb21wbGV4ZSDDoCBkZW1hbmRlciDDoCBsYSBjb21t dW5hdXTDqSBsb2piYW4sIHF1aSBwZXV0IMOqdHJlIHRyb3V2w6llIHN1ciAjbG9qYmFuIHN1ciBs ZSByw6lzZWF1IElSQyBGcmVlbm9kZSAoZW4gYW5nbGFpcyksIG91IHN1ciBsYSBbaHR0cDovL21h aWwubG9qYmFuLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xvamJhbi1mcnxtYWlsaW5nLWxpc3QgZnJh bmNvcGhvbmVdLiBFbGxlIHNlcmEgaGV1cmV1c2UgZCdhaWRlci4KCgoKRGFucyBjZSBkaWRhY3Rp Y2llbCwgbGUgdGV4dGUgZW4gbG9qYmFuIGVzdCDDqWNyaXQgZW4gJydpdGFsaXF1ZXMnJy4gTGVz IG1vdHMgZW1wcnVudMOpcyBkdSBsb2piYW4gYXUgZnJhbsOnYWlzIG5lIHNvbnQgdG91dGVmb2lz IHBhcyBzb3VtaXMgw6AgY2V0dGUgZW1waGFzZS4gTGVzIHLDqXBvbnNlcyBkZXMgZXhlcmNpY2Vz IHNvbnQgYWZmaWNow6llcyBjb21tZSB1bmUgYmFycmUgZ3Jpc2UuIFPDqWxlY3Rpb25uZXogY2V0 dGUgYmFycmUgcG91ciB2b2lyIGxlIHRleHRlLgoKCgpFbmZpbiwgaidhaSBhdXRhbnQgcXVlIHBv c3NpYmxlIGVzc2F5w6kgZCd1dGlsaXNlciBsZXMgbW90cyBkdSBsb2piYW4gcG91ciBkw6lzaWdu ZXIgbGVzIGNvbnN0cnVjdGlvbnMgZ3JhbW1hdGljYWxlc8Kg4oCTwqAnJ3N1bWthJ2knJyBhdSBs aWV1IGRlIHByby1zdW10aSwgJydzdW10Y2l0YScnIGF1IGxpZXUgZGUgbW9kYWwsIGV0ICcnanVm cmEnJyBhdSBsaWV1IGQnw6lub25jw6nCoOKAkyBwYXJjZSBxdWUgaidhaSBsJ2ltcHJlc3Npb24g cXVlIGxlcyBtb3RzIGZyYW7Dp2FpcyBzb250IHNvdXZlbnQgc29pdCBhcmJpdHJhaXJlcyDigJPC oGp1c3RlIGRlcyBtb3RzIGVuIHBsdXMgw6AgYXBwcmVuZHJlwqDigJMsIHNvaXQgdHJvbXBldXJz IOKAk8KgZG9uYyBwaXJlIHF1J2ludXRpbGVzLiBEYW5zIGxlcyBkZXV4IGNhcywgcHVpc3F1ZSBj ZXMgbW90cyBzb250IGRlIHRvdXRlIGZhw6dvbiBzcMOpY2lmaXF1ZXMgw6AgbCdhcHByZW50aXNz YWdlIGR1IGxvamJhbiwgaWwgbidvbnQgcGFzIGRlIHJhaXNvbiBkJ2V4aXN0ZXIgY29tbWUgZGVz IG1vdHMgZnJhbsOnYWlzIGRpc3RpbmN0LgoKCgohISFQcsOpZmFjZS4gU29ucwoKTGEgcHJlbWnD qHJlIGNob3NlIMOgIGZhaXJlIHF1YW5kIHZvdXMgYXBwcmVuZXogdW5lIGxhbmd1ZSDDqXRyYW5n w6hyZSBlc3QgZGUgdm91cyBmYW1pbGlhcmlzZXIgYXZlYyBsZXMgc29ucyBkdSBsYW5nYWdlIGV0 IGxldXIgw6ljcml0dXJlLiBJbCBlbiB2YSBkZSBtw6ptZSBwb3VyIGxlIGxvamJhbi4gSGV1cmV1 c2VtZW50LCBsZXMgc29ucyBkdSBsb2piYW4gKF9fcGhvbsOobWVzX18pIHNvbnQgcGx1dMO0dCBz aW1wbGVzLgoKCgohISEhVm95ZWxsZXMKCklsIHkgYSBzaXggdm95ZWxsZXMgZW4gbG9qYmFuLgoK Cgp8fCcnYScnIHxjb21tZSBkYW5zIMKrwqBwX19hX19wX19hX1/CoMK7CgonJ2UnJyB8Y29tbWUg ZGFucyDCqyBiX19lX19yZ19fw6hfX3JlIMK7CgonJ2knJyB8Y29tbWUgZGFucyDCq8KgbWFjaF9f aV9fbmXCoMK7CgonJ28nJyB8Y29tbWUgZGFucyDCqyBfX29fX23DqWdhIMK7LCDCq8KgX19hdV9f dF9fb19fbW9iaWxlwqDCuwoKJyd1JycgfGNvbW1lIGRhbnMgwqvCoF9fb3VfX8KgwrssIMKrwqBs X19vdV9fcMKgwrsKCicneScnIHxjb21tZSBkYW5zIMKrIG1hdF9fZV9fbG90IMK7fHwKCgoKTGEg c2l4acOobWUgdm95ZWxsZSwgJyd5JycsIGVzdCBhcHBlbMOpZSB1biBfX3NjaHdhX18gZW4gbGlu Z3Vpc3RpcXVlLiBDJ2VzdCB1biDCq8KgZcKgwrsgdHLDqHMgbMOpZ2VyLCBub24gYWNjZW50dcOp LCBqdXN0ZSBtaWxpZXUgZW50cmUgbGUgwqvCoGXCoMK7IG1hcnNlaWxsYWlzICjCq8KgbWF0X19l dV9fbG90wqDCuykgZXQgbGUgwqvCoGXCoMK7IG11ZXQgcGFyaXNpZW4gKMKrIG1hdCdsb3Qgwrsp LgoKCgpEZXV4IHZveWVsbGVzIGVuc2VtYmxlIHNvbnQgcHJvbm9uY8OpZXMgY29tbWUgdW4gc29u IChfX2RpcGh0b25ndWVfXykuIFBhciBleGVtcGxlwqA6CgoKCnx8JydhaScnIHxjb21tZSBkYW5z IMKrwqBjYW5fX2FpX19sbGXCoMK7CgonJ2F1JycgfGNvbW1lIGRhbnMgwqvCoGNfX2FvdV9fdGNo b3VjwqDCuwoKJydlaScnIHxjb21tZSBkYW5zIMKrwqBhYl9fZWlfX2xsZcKgwrsKCicnb2knJyB8 Y29tbWUgZGFucyDCq8KgZ19fb3lfX8KgwrsKCicnaWEnJyB8Y29tbWUgZGFucyDCq8KgcF9faWFf X25vwqDCuwoKJydpZScnIHxjb21tZSBkYW5zIMKrwqBoX19pZV9fcsKgwrsKCicnaXUnJyB8Y29t bWUgZGFucyDCq8KgY2FfX2lsbG91X1/CoMK7CgonJ3VhJycgfGNvbW1lIGRhbnMgwqvCoHFfX3Vv aV9fwqDCuwoKJyd1ZScnIHxjb21tZSBkYW5zIMKrwqBicl9fb3VlX190dGXCoMK7CgonJ3VvJycg fGNvbW1lIGRhbnMgwqvCoGRyX19vdW9fX3TCoMK7CgonJ3VpJycgfGNvbW1lIGRhbnMgwqvCoF9f b3VpX1/CoMK7IHx8CgoKCkxlcyB2b3llbGxlcyBkb3VibMOpZXMgc29udCByYXJlcy4gTGVzIHNl dWxzIGV4ZW1wbGVzIHNvbnQgJydpaScnLCBwcm9ub25jw6kgY29tbWUgZGFucyDCq8KgZmFfX2ls bGlfX8KgwrssIGV0ICcndXUnJywgcHJvbm9uY8OpIGNvbW1lIGRhbnMgwqvCoF9fT3VfX2hfX291 X1/CoCHCoMK7IChxdWFuZCBvbiBhcHBlbGxlIHF1ZWxxdSd1biwgbWFpcyBwYXMgY29tbWUgZGFu cyDCq8KgSG91aG91wqDCu8KgOiBkYW5zIGxlIHByZW1pZXIgZXhlbXBsZSwgbGUgJydoJycgZXN0 IG11ZXQsIGRhbnMgbGUgZGV1eGnDqG1lLCBsZSAnJ2gnJyBlc3QgYXNwaXLDqSDigJMgY2UgcXVp IHNlIHRyYW5zY3JpcmFpdCBlbiBsb2piYW4gJyd1J3UnJykKCgoKISEhIUNvbnNvbm5lcwoKTGEg cGx1cGFydCBkZXMgY29uc29ubmVzIHNvbnQgbGVzIG3Dqm1lcyBxdSdlbiBmcmFuw6dhaXMsIMOg IHF1ZWxxdWUgZXhjZXB0aW9ucyBwcsOqdMKgOgoKCgp8fCcnZycnIHxzZSBwcm9ub25jZSB0b3Vq b3VycyBjb21tZSBkYW5zIMKrwqBfX2dfX8OidGVhdcKgwrssIGphbWFpcyBjb21tZSBkYW5zIMKr wqBfX2dfX2Vub3V4wqDCuyAob24gdXRpbGlzZSBhbG9ycyBsZSDCq8KgJydqJyfCoMK7KQoKJydz JycgfHNlIHByb25vbmNlIHRvdWpvdXJzIGNvbW1lIGRhbnMgwqvCoF9fc19fZXJwZW50wqDCuywg amFtYWlzIGNvbW1lIGRhbnMgwqvCoHJvX19zX19lwqDCuyAob24gdXRpbGlzZSBhbG9ycyBsZSDC qyAnJ3onJyDCuykKCicnYycnIHxzZSBwcm9ub25jZSAnJ2NoJycsIGNvbW1lIGRhbnMgwqvCoF9f Y2hfX2F0ZWF1wqDCuwoKJyd4JycgfHNlIHByb25vbmNlIGNvbW1lIGRhbnMgbCdhbGxlbWFuZCDC q8KgQmFfX2NoX1/CoMK7LCBsJ2VzcGFnbm9sIMKrwqBfX0pfX29zZcKgwrsgb3UgbCdhcmFiZSDC q8KgX19LaF9fYWxlZMKgwrsKCicncicnIHxzZSBwcm9ub25jZSBjb21tZSBkYW5zIMKrwqBhcnJp dmVkZXJjacKgwrsuIMKrwqAnJ3InJ8KgwrsgYWNjZXB0ZSBiZWF1Y291cCBkZSBwcm9ub25jaWF0 aW9ucyAow6AgbGEgZnJhbsOnYWlzZSwgw6AgbCdhbmdsYWlzZeKApikgbWFpcyBsYSBwcm9ub25j aWF0aW9uIGl0YWxpZW5uZSAoJydyJycgcm91bMOpKSBlc3QgcHLDqWbDqXLDqWV8fAoKCgpMZSBs b2piYW4gbid1dGlsaXNlIHBhcyBsZXMgY2FyYWN0w6hyZXMgwqvCoEjCoMK7LCDCq8KgUcKgwrsg b3UgwqvCoFfCoMK7LCBldCBpbCBuJ3kgYSBwYXMgZGUgY2FyYWN0w6hyZXMgYWNjZW50dcOpcyBl biBsb2piYW4uCgoKCiEhISFDYXJhY3TDqHJlcyBzcMOpY2lhdXgKCgoKTGUgbG9qYmFuIG5lIHJl cXVpw6hyZSBhdWN1bmUgcG9uY3R1YXRpb24sIG1haXMgY2VydGFpbiBjYXJhY3TDqHJlcywgaGFi aXR1ZWxsZW1lbnQgdXRpbGlzw6lzIGNvbW1lIHBvbmN0dWF0aW9uIGRhbnMgZCdhdXRyZSBsYW5n dWVzLCBhZmZlY3RlbnQgbGEgbWFuacOocmUgZG9udCBsZSBsb2piYW4gZXN0IHByb25vbmPDqS4K CgoKTGUgc2V1bCBkZSBjZXMgY2FyYWN0w6hyZXMgcXVpIHNvaXQgb2JsaWdhdG9pcmUgZW4gbG9q YmFuIGVzdCBsJ2Fwb3N0cm9waGUuIEVuIGZhaXQsIGwnYXBvc3Ryb3BoZSBlc3QgY29uc2lkw6ly w6llIGNvbW1lIHVuZSBsZXR0cmUgZHUgbG9qYmFuLiBVbmUgYXBvc3Ryb3BoZSBzw6lwYXJlIGRl dXggdm95ZWxsZXMsIGVtcMOqY2hhbnQgY2VsbGVzLWNpIGQnw6p0cmUgcHJvbm9uY8OpZXMgZW5z ZW1ibGUgY29tbWUgdW5lIF9fZGlwaHRvbmd1ZV9fLiBFbGxlIGVzdCBlbGxlIG3Dqm1lIHByb25v bmPDqWUgY29tbWUgdW4gwqvCoGjCoMK7LiBQYXIgZXhlbXBsZSwgwqvCoCcndWknJ8KgwrsgZXN0 IG5vcm1hbGVtZW50IHByb25vbmPDqSBjb21tZSDCq8KgX19vdWlfX8KgwrssIG1haXMgwqvCoCcn dSdpJyfCoMK7IGVzdCBwcm9ub25jw6kgY29tbWUgwqvCoF9fb3UtaGlfX8KgwrsuCgoKClVuIHBv aW50IGVzdCB1bmUgY291cnRlIHBhdXNlIMOpdml0YW50IMOgIGRldXggbW90cyBkZSBzZSBjb25m b25kcmUgbCd1biBkYW5zIGwnYXV0cmUuIExlcyByw6hnbGVzIGR1IGxvamJhbiByZW5kZW50IGZh Y2lsZSBsYSBmdXNpb24gZGUgZGV1eCBtb3RzIHF1YW5kIGxlIHNlY29uZCBjb21tZW5jZSBwYXIg dW5lIHZveWVsbGUsIGV0IGRvbmMsIHBhciBjb252ZW50aW9uLCBjaGFxdWUgbW90IGNvbW1lbsOn YW50IHBhciB1bmUgdm95ZWxsZSBlc3QgcHLDqWPDqWTDqSBwYXIgdW4gcG9pbnQuCgoKCkxlcyB2 aXJndWxlcyBzb250IHJhcmUgZW4gbG9qYmFuLCBtYWlzIHBldXZlbnQgw6p0cmUgdXRpbGlzw6ll cyBwb3VyIGVtcMOqY2hlciBkZXV4IHZveWVsbGVzIGRlIHNlIGZvbmRyZSBsJ3VuZSBkYW5zIGwn YXV0cmUgcXVhbmQgdm91cyBuZSB2b3VsZXogcGFzIHV0aWxpc2VyIGQnYXBvc3Ryb3BoZSwgY2Ug cXVpIGFqb3V0ZXJhaXMgdW4gwqvCoGjCoMK7IGVudHJlIGVsbGVzLiBBdWN1biBtb3QgbG9qYmFu IG4nYSBkZSB2aXJndWxlLCBtYWlzIGVsbGUgZXN0IHBhcmZvaXMgdXRpbGlzw6llIGRhbnMgbCfD qWNyaXR1cmUgZGVzIG5vbXMgZCdhdXRyZXMgbGFuZ3Vlcy4gUGFyIGV4ZW1wbGUsIMKrwqAnJ3Bp LEVSLicnwqDCuyAoUGllcnJlKSwgYXUgbGlldSBkZSDCq8KgJydwaWVyLicnwqDCuyAoUC15ZXJy KSwgwqvCoCcncGkuRVIuJyfCoMK7IChQaTsgRWhyKSwgb3UgwqvCoCcncGknRVInJ8KgwrsgKFBp aGVycikuCgoKCkxlcyBsZXR0cmVzIGNhcGl0YWxlcyBuZSBzb250IG5vcm1hbGVtZW50IHBhcyB1 dGlsaXPDqWVzIGVuIGxvamJhbi4gTm91cyBsZXMgdXRpbGlzb25zIGRhbnMgZGVzIG1vdHMgbm9u IGxvamJhbiAoY29tbWUgwqvCoFBpZXJyZcKgwrspLCBxdWFuZCBsJ2FjY2VudCB0b25pcXVlIGQn dW4gbW90IGVzdCBkaWZmw6lyZW50IGRlIGNlbHVpIGRlIGxhIG5vcm1lIGxvamJhbi4gTGEgbm9y bWUgY29uc2lzdGUgw6AgbWV0dHJlIHVuIGFjY2VudCB0b25pcXVlIHN1ciBsJ2F2YW50IGRlcm5p w6hyZSBzeWxsYWJlLiBQYXIgZXhlbXBsZSwgJydrdWptaWtjZScnIChpbmZpcm1pw6hyZSksIGVz dCDCq8Kga3VqX19NSUtfX2NlwqDCuywgZXQgbm9uIHBhcyDCq8KgX19LVUpfX21pa2NlwqDCuy4g TGUgbm9tIMKrwqBKdWxpZXR0ZcKgwrsgcyfDqWNyaXJhaXQgwqvCoCcnanVMSUVULicnwqDCuyBz aSBwcm9ub25jw6kgY29tbWUgZW4gZnJhbsOnYWlzLCBtYWlzIMKrwqAnJ0RKVWxpLGV0LicnwqDC uyBzaSBwcm9ub25jw6kgY29tbWUgZW4gYW5nbGFpcy4KCiEhISFBbHBoYWJldAoKCgpEYW5zIGxh IHBsdXBhcnQgZGVzIG1hbnVlbHMsIGxvcnMgZGUgbCdhcHByZW50aXNzYWdlIGQndW5lIGxhbmd1 ZSwgdm91cyBhcHByZW5leiBsJ2FscGhhYmV0IGR1IGxhbmdhZ2UsIGV0IHNhIHByb25vbmNpYXRp b24uIExlcyBsZXR0cmVzICgnJ2xlcmZ1JycpIMOpdGFudCBwbHVzIGltcG9ydGFudGVzIGVuIGxv amJhbiBxdSfDoCBsJ2FjY291dHVtw6llLCBhdXRhbnQgYXBwcmVuZHJlIGxldXIgbm9tcyByYXBp ZGVtZW50LgoKCgpMZXMgY29uc29ubmVzIHNvbnQgc2ltcGxlc8KgOiBsZSBub20gZCd1bmUgY29u c29ubmUgZXN0IGNldHRlIGxldHRyZSwgc3VpdmllIGRlIMKrwqB5wqDCuy4gQWluc2ksIGxlcyBj b25zb25uZXMgZHUgbG9qYmFuLCDCq8KgYsKgwrssIMKrwqBjwqDCuywgwqvCoGTCoMK7LCDCq8Kg ZsKgwrssIMKrwqBnwqDCu+KApiBzb250IGFwcGVsw6llcyDCq8KgJydieS4nJ8KgwrsgKGJldSks IMKrwqAnJ2N5LicnwqDCuyAoY2hldSksIMKrwqAnJ2R5LicnwqDCuyAoZGV1KSwgwqvCoCcnZnku JyfCoMK7IChmZXUpLCDCq8KgJydneS4nJ8KgwrsgKGd1ZXUp4oCmIGVuIGxvamJhbiAoZW4gdXRp bGlzYW50IHVuIHBvaW50LCBjb21tZSBkw6ljcml0IGRhbnMgbGEgcGFydGllIHByw6ljw6lkZW50 ZSkuCgoKCkxlcyB2b3llbGxlcyBfX3NlcmFpZW50X18gYXBwZWzDqWVzIMKrwqAnJy5heScnwqDC uywgwqvCoCcnLmV5JyfCoMK7LCDCq8KgJycuaXknJ8KgwrvigKYsIHNpIGMnw6l0YWl0IG1vaW5z IGRpZmZpY2lsZSDDoCBwcm9ub25jZXIuIEF1IGxpZXUgZGUgw6dhLCBlbGxlcyBzb250IG5vbW3D qWUgZW4gc3VpdmFudCBsZSBzb24gZGUgbGEgdm95ZWxsZSBwYXIgbGUgbW90ICcnYnUnJywgcXVp IHNpZ25pZmllIHNpbXBsZW1lbnQgwqvCoGxldHRyZcKgwrsuIEFpbnNpLCBsZXMgdm95ZWxsZXMg ZHUgbG9qYmFuIHNvbnTCoDogIMKrwqAnJy5hYnUnJ8KgwrsgKGFib3UpLCDCq8KgJycuZWJ1JyfC oMK7IChhaWJ1KSwgwqvCoCcnLmlidScnwqDCuyAoaWJvdSksIMKrICcnLm9idScnIMK7IChhdWJv dSksIMKrwqAnJy51YnUnJ8KgwrsgKG91Ym91KSwgwqvCoCcnLnlidScnwqDCuyAoZXVib3UpLgoK CgpMJ2Fwb3N0cm9waGUgZXN0IGNvbnNpZMOpcsOpZSBjb21tZSB1bmUgdnJhaSBsZXR0cmUgZW4g bG9qYmFuLCBldCBlc3Qgbm9tbcOpZSDCq8KgJycueSd5LicnwqDCuyAowqvCoGV1aGV1wqDCu+KA piBVbiBwZXUgY29tbWUgdW5lIHBldGl0ZSB0b3V4KS4KCgoKTGUgbG9qYmFuIGEgdW4gbW95ZW4g ZGUgc2UgcsOpZsOpcmVyIMOgIGxhIHBsdXBhcnQgZGVzIGxldHRyZXMgYXV4cXVlbGxlcyB2b3Vz IHBvdXZleiBwZW5zZXIuIFNpIHZvdXMgZMOpc2lyZXogZMOocyBtYWludGVuYW50IMOpcGVsZXIg dm90cmUgbm9tIGVuIGxvamJhbiwgZXQgcXVlIGNlbHVpIGNpIHBvc3PDqGRlIHVuIMKrwqBIwqDC uywgwqvCoFHCoMK7IG91IMKrwqBXwqDCuywgdm91cyBwb3V2ZXogdXRpbGlzZXIgwqsgJycueSd5 LmJ1JycgwrssIMKrICcna3kuYnUnJyDCuyBldCDCqyAnJ3Z5LmJ1JycgwrsuIEFpbnNpLCDCq8Kg U2Nod2FyemVuZWdnZXLCoMK7IGVzdCDDqXBlbMOpIGVuIGxvamJhbsKgOgoKJydzeS4gY3kuIC55 J3lidSB2eWJ1LiAuYWJ1IHJ5LiB6eS4gLmVidSBueS4gLmVidSBneS4gZ3kuIC5lYnUgcnkuJycK CgoKRXQgw6lwZWxlciBfX8OnYV9fIGVzdCB1bmUgdMOiY2hlIGRpZ25lIGR1IFRlcm1pbmF0b3LC oCEKCgoKTWFpbnRlbmFudCwgw6lwZWxleiB2b3RyZSBub20gZW4gbG9qYmFuIChsZSBjYXMgw6lj aMOpYW50LCBkZSBsYSBtYW5pw6hyZSBsYSBwbHVzIHByb2NoZSBxdWUgdm91cyBwb3V2ZXogYXZl YyBsZXMgMjYgbGV0dHJlcyBxdWUgbm91cyB2ZW5vbnMgZCdhcHByZW5kcmUsIGV0IGwnYXBvc3Ry b3BoZSkuCgohISEhIFByb25vbmNpYXRpb24gwqvCoGNvcnJlY3RlwqDCuwoKCgonJ0NldHRlIHBh Z2UgZXN0IMOgIGxhIGZvaXMgdW5lIHRyYWR1Y3Rpb24gZGUgbGEgdmVyc2lvbiBhbmdsYWlzZSwg ZXQgdW5lIGFkYXB0YXRpb24gYXV4IHByb2Jsw6htZXMgcmVuY29udHLDqXMgcGFyIGxlcyBmcmFu Y29waG9uZXMgcGx1dG90IHF1ZSBwYXIgbGVzIGFuZ2xvcGhvbmVzLiBQYXIgbWFucXVlIGQnZXhw w6lyaWVuY2UgZGFucyBsJ2Vuc2VpZ25lbWVudCBkdSBsb2piYW4gw6AgZGVzIGZyYW5jb3Bob25l cywgY2V0dGUgcGFydGllIHBldXQgZG9uYyBtYW5xdWVyIGRlIGNvbnNlaWxzIG91IHJlc3RlciBp bmFkYXB0w6llLCB2b2lyZSBjb25mdXNlLiBOJ2jDqXNpdGV6IHBhcyDDoCBkZW1hbmRlciBzdXIg bGEgW2h0dHA6Ly9tYWlsLmxvamJhbi5vcmcvbWFpbG1hbi9saXN0aW5mby9sb2piYW4tZnJ8bWFp bGluZy1saXN0XSBmcmFuY29waG9uZSBzaSB2b3VzIGF2ZXogdW4gcHJvYmzDqG1lIOKAkyBjZWNp IHBvdXJyYWl0IG5vdXMgYWlkZXIgw6AgYW3DqWxpb3JlciBjZXR0ZSBwYWdlwqAhJycKCgoKVm91 cyBuJ2F2ZXogcGFzIMOgIGF2b2lyIHVuZSBwcm9ub25jaWF0aW9uIHByw6ljaXNlIGR1IGxvamJh biwgY2FyIGNoYXF1ZSBwaG9uw6htZSBlc3QgZGlzdHJpYnXDqSBkZSBtYW5pw6hyZSDDoCBjZSBx dSdpbCBzb2l0IGRpZmZpY2lsZSBkZSBjb25mb25kcmUgZGV1eCBzb25zLiBDZWNpIHNpZ25pZmll IHF1ZSwgcG91ciB1bmUgbGV0dHJlLCBwbHV0w7R0IHF1J3VuZSBwcm9ub25jaWF0aW9uIMKrwqBj b3JyZWN0ZcKgwrssIGlsIHkgYSB1bmUgZ2FtbWUgZGUgc29ucyBhY2NlcHTDqXMg4oCTIGxlIHBy aW5jaXBlIGfDqW7DqXJhbCDDqXRhbnQgcXUndW4gc29uIGVzdCBib24gdGFudCBxdSdpbCBuZSBy ZXNzZW1ibGUgcGFzIHRyb3Agw6AgdW5lIGF1dHJlIGxldHRyZS4gUGFyIGV4ZW1wbGUsIGxlIMKr wqBywqDCuyBsb2piYW4gcGV1dCDDqnRyZSBwcm9ub25jw6kgY29tbWUgZW4gYW5nbGFpcywgaXRh bGllbiwgZnJhbsOnYWlz4oCmIAoKCgpDZXBlbmRhbnQsIGJpZW4gcXVlIGxlIFtodHRwczovL2Zy Lndpa2lwZWRpYS5vcmcvd2lraS9Db25zb25uZV9mcmljYXRpdmVfdXZ1bGFpcmVfdm9pcyVDMyVB OWV8wqvCoHLCoMK7IGZyYW7Dp2Fpc10gc29pdCBjb25zaWTDqXLDqSBjb21tZSB1biDCq8KgJydy JyfCoMK7LCBjZWx1aS1jaSBlc3QgYXVzc2kgcHJvY2hlIGR1IFtodHRwczovL2ZyLndpa2lwZWRp YS5vcmcvd2lraS9Db25zb25uZV9mcmljYXRpdmVfdXZ1bGFpcmVfc291cmRlfMKrwqAnJ3gnJ8Kg wrtdIGxvamJhbi4gUG91ciBjb21wcmVuZHJlIGxhIGRpZmbDqXJlbmNlIGVudHJlIGNlcyBkZXV4 IHNvbnMsIG9ic2VydmV6IGxhIGRpZmbDqXJlbmNlIGVudHJlIGxlIHNvbiDCq8KgJydkJyfCoMK7 IGV0IGxlIHNvbiDCq8KgJyd0JyfCoMK7wqA6IGwndW4gZXN0IHZvY2FsaXPDqSwgbCdhdXRyZSBu b24uIExhIG3Dqm1lIGRpc3RpbmN0aW9uIHMnb3DDqHJlIGVudHJlIGxlIMKrwqAnJ3InJ8Kgwrsg ZnJhbsOnYWlzIGV0IGxlIMKrwqAnJ3gnJ8KgwrsuIEplIHZvdXMgY29uc2VpbGxlIGRvbmMgZCdv cHRlciBwb3VyIHVuIMKrwqBywqDCuyBtb2lucyBhbWJpZ3UuIENvbmNlcm5hbnQgbGUgwqvCoHLC oMK7IHJvdWzDqSwgZGV1eCBwcm9ub25jaWF0aW9ucyBzb250IHBvc3NpYmxlwqA6IGxlIFtodHRw czovL2ZyLndpa2lwZWRpYS5vcmcvd2lraS9Db25zb25uZV9yb3VsJUMzJUE5ZV9hbHYlQzMlQTlv bGFpcmVfdm9pcyVDMyVBOWV8wqvCoHLCoMK7XSBlc3BhZ25vbCwgc2l0dcOpIMOgIGwnYXZhbnQg ZHUgcGFsYWlzLCBldCB1biBbaHR0cHM6Ly9mci53aWtpcGVkaWEub3JnL3dpa2kvQ29uc29ubmVf cm91bCVDMyVBOWVfdXZ1bGFpcmVfdm9pcyVDMyVBOWV8wqvCoHLCoMK7XSBwbHVzIHByb2NoZSBk ZSBsYSBnb3JnZSwgY29tbWUgY2VsdWkgZCdFZGl0IFBpYWYuIENob2lzaXNzZXogbGEgcHJvbm9u Y2lhdGlvbiBxdWkgdm91cyBwb3NlIGxlIG1vaW5zIGRlIHByb2Jsw6htZSwgdGFudCBxdSdlbGxl IG5lIHNlIGNvbmZvbmQgcGFzIGF2ZWMgdW5lIGF1dHJlIGxldHRyZSBkdSBsb2piYW4uCgoKCkZh aXRlcyBhdXNzaSBhdHRlbnRpb24gw6AgYmllbiBhcHB1eWVyIGxlcyB2b3llbGxlcyDigJMgbWlz IMOgIHBhcnQgbGUgwqvCoCcneScnwqDCuyBxdWkgJydkb2l0Jycgw6p0cmUgY291cnQuIExhIHJh aXNvbiBlbiBlc3QgcXVlIGxlcyB2b3llbGxlcyDCq8Kgbm9uLWxvamJhbsKgwrsgcGV1dmVudCDD qnRyZSB1dGlsaXPDqWVzIHBvdXIgc8OpcGFyZXIgbGVzIGNvbnNvbm5lcyBwYXIgbGVzIHBlcnNv bm5lcyBxdWkgbidhcnJpdmVudCBwYXMgw6AgbGVzIHByb25vbmNlci4gUGFyIGV4ZW1wbGUsIHNp IHZvdXMgYXZleiB1biBwcm9ibMOobWUgYXZlYyBsZSDCq8KgJyd6ZCcnwqDCuyBkZSDCq8KgJyd6 ZGFuaScnwqDCuyAobWFpc29uKSwgdm91cyBwb3V2ZXogZGlyZSDCq8KgesmqZGFuacKgwrssIGF2 ZWMgdW4gwqvCoMmqwqDCuyB0csOocyBjb3VydCwgbWFpcyBsZSDCq8KgacKgwrsgZmluYWwgbG9u Zy4gCgohISEhTm9tcyBsb2piYW4gKGNtZXZsYSkKCgoKRGFucyBsZXMgZmlsbXMgb8O5IGxlcyBw cm90YWdvbmlzdGVzIG4nb250IHBhcyBkZSBsYW5ndWUgY29tbXVuZSwgaWxzIGNvbW1lbmNlbnQg c291dmVudCBwYXIgZGlyZSBkZXMgY2hvc2VzIHRlbGxlcyBxdWUgwqvCoE1vaSBUYXJ6YW7CoMK7 LCBjZSBxdWkgZXN0IHVuZSBtYW5pw6hyZSBjb21tZSB1bmUgYXV0cmUgZGUgZMOpYnV0ZXIgZW4g bG9qYmFuLiBFdCBkb25jwqA6CgoKCl9fJydtaSdlIC5yYWZhZWwuJydfXwoKwqvCoEplLXN1aXMt bm9tbcOpIFJhZmFlbMKgwrsKCsKrwqBKZSBzdWlzIFJhZmFlbMKgwrsKCgoKJydtaSdlJycgZXN0 IGFwcGFyZW50w6kgw6AgJydtaScnLCBxdWkgc2lnbmlmaWUgwqvCoG1vacKgwrssIMKrwqBqZcKg wrvigKYgQydlc3QgdW4gYm9uIGV4ZW1wbGUgZGUgbCdhcG9zdHJvcGUgc8OpcGFyYW50IGRldXgg dm95ZWxsZXMsIHByb25vbmPDqSDCq8KgbWkgaGFpwqDCuy4gCgoKCkNlIFJhZmFlbCBlc3QgY2hh bmNldXjCoDogc29uIG5vbSBzZSB0cmFuc2NyaXQgZGlyZWN0ZW1lbnQgZW4gbG9qYmFuLCBzYW5z IGNoYW5nZW1lbnQuIElsIHkgYSB0b3V0ZWZvaXMgZGVzIHLDqGdsZXMgcG91ciBsZXMgbm9tcyBs b2piYW4sIGNlIHF1aSBzaWduaWZpZSBxdWUgY2VydGFpbnMgbm9tcyBkb2l2ZW50IMOqdHJlcyDC q8KgbG9qYmFuaXPDqXPCoMK7LiBDZWxhIHBldXQgc2VtYmxlciDDqXRyYW5nZS4gQXByw6hzIHRv dXQsIHVuIG5vbSBlc3QgdW4gbm9t4oCmIEVuIGZhaXQsIHRvdXQgbGVzIGxhbmdhZ2VzIGZvbnQg Y2UgZ2VucmUgZCdhZGFwYXRpb24gw6AgdW4gY2VydGFpbiBuaXZlYXUuIFBhciBleGVtcGxlLCBs ZXMgYW5nbGFpcyB0ZW5kZW50IMOgIHByb25vbmNlciDCq8KgSm9zZcKgwrsgY29tbWUgwqvCoEhv emF5wqDCuywgZXQgwqvCoE1hcmdhcmV0wqDCuyBkZXZpZW50IMKrwqBNYWdlbGl0YcKgwrsgZW4g Y2hpbm9pcy4KCgoKUHJlbm9ucyBsZSBub20gwqsgQ3lyaWwgwrsuIFNpIEN5cmlsIGVzc2F5ZSBk J2ltaXRlciBSYWZhZWwsIGxlcyBsb2piYW5pc3RlcyB2b250IGwnYXBwZWxlciDCqyBjaGV1cmls IMK7LCBjZSBxdWkgbidlc3QgcGFzIHRyw6hzIGpvbGkuIEljaSwgbGUgwqsgQyDCuyBlc3QgZW4g ZmFpdCB1biDCqyAnJ3MnJyDCuywgZXQgbGUgwqsgeSDCuyB1biDCqyAnJ2knJyDCuy4gQ3lyaWwg ZGV2aWVudCwgZW4gbG9qYmFuLCDCqyAnJy5zaXJpbC4nJyDCuy4KCgoKQ2VydGFpbnMgc29ucyBu J2V4aXN0ZW50IHBhcyBkYW5zIGNlcnRhaW5zIGxhbmdhZ2VzLiBBaW5zaSwgbGEgcHJlbWnDqHJl IGNob3NlIMOgIGZhaXJlIGVzdCBkZSByw6nDqWNyaXJlIHZvdHJlIG5vbSBkZSBtYW5pw6hyZSDD oCBjZSBxdSdpbCBuZSBjb250aWVubmUgcXVlIGRlcyBzb25zIGxvamJhbiwgZXQgc29pdCDDqWNy aXQgY29tbWUgdW4gbW90IGxvamJhbi4KCgoKRW4gZnJhbsOnYWlzLCBSb2JpbiBzZSBwcm9ub25j ZSDCqyByYXViYWluIMK7LiBFdCDCqyBhaW4gwrsgbidleGlzdGUgcGFzIGVuIGxvamJhbi4gR8Op bsOpcmFsZW1lbnQsIG9uIHV0aWxpc2VyYSBsZSDCqyAnJ24nJyDCuyBwb3VyIG9idGVuaXIgbGEg bmFzYWxpc2F0aW9uLiBBaW5zaSwgUm9iaW4gcyfDqWNyaXJhIMKrICcnLnJvYmluLicnIMK7LCBK ZWFuIMKrwqAnJy5qYW4uJyfCoMK7LCBldCBEdXBvbmQgwqvCoCcnLmR1cG9uLicnwqDCuy4gTm90 ZXogYXVzc2kgcXVlIGRhbnMgY2UgZGVybmllciBjYXMsIGxlIMKrwqB1wqDCuyBzZXJhIHByb25v bmPDqSDCq8Kgb3XCoMK7wqA6IMKrwqBkb3Vwb25uZcKgwrsuIENvbW1lIGxlIHByb25vbmNlcmFp dCB1biBpdGFsaWVuICEKCgoKTGEgbGFuZ3VlIGQnb3JpZ2luZSBkdSBub20gZXN0IGF1c3NpIGlt cG9ydGFudGXCoDogdW4gTWljaGFlbCBmcmFuw6dhaXMgdHJhbnNjcmlyYSBzb24gbm9tIMKrwqAn Jy5taWthZWwuJyfCoMK7LCBtYWlzIHVuIE1pY2hhZWwgYW5nbGFpcyB0cmFuc2NyaXJhIHNvbiBu b20gwqvCoCcnLm1haWt5bC4nJ8KgwrssIG91IMKrwqAnJy5tYWlrLGwnJ8KgwrsuIE91IGVuY29y ZSwgcG91ciBSb2JpbiwgZW4gYW5nbGFpcywgbGVzIHZveWVsbGVzIGFuZ2xhaXNlcyBldCBhbcOp cmljYWluZXMgc29udCBhc3NleiBkaWZmw6lyZW50ZXMuIExlIFJvYmluIGFuZ2xhaXMgcGV1dCDD qnRyZSByYWlzb25uYWJsZW1lbnQgYXBwcm94aW3DqSBwYXIgwqvCoCcnLnJvYmluLicnwqDCuywg bWFpcyBsYSB2ZXJzaW9uIGFtw6lyaWNhaW5lIGVzdCBwbHVzIHByb2NoZSBkZSDCq8KgJycucmFi eW4uJyfCoMK7IG91IMKrwqAnJy5yYWIsbi4nJ8KgwrsuIEV0IMOgIGwnaW50w6lyaWV1ciBkJ3Vu IG3Dqm1lIHBheXMsIGRlIG5vbWJyZXVzZXMgdmFyaWF0aW9ucyBzb250IHBvc3NpYmxlcy4gQXVz c2kgZGV2cmlleiB2b3VzIHByZW5kcmUgbGVzIHRyYW5zbGl0ZXJhdGlvbnMgZG9ubsOpZXMgaWNp IGF2ZWMgZGVzIHBpbmNldHRlcy4KCgoKTm90ZXogYXVzc2kgcXVlIHBvdXIgbGVzIG5vbXMgZGUg dmlsbGVzLCBwYXIgZXhlbXBsZSwgb24gcHLDqWbDqXJlcmEgbGEgdmVyc2lvbiBsb2NhbGUgZHUg bm9tIMOgIGxhIHZlcnNpb24gZnJhbsOnYWlzZS4gQWluc2ksIExvbmRyZSBuZSBzZXJhIHBhcyB0 cmFuc2NyaXQgwqvCoCcnLmxvbmRyLicnwqDCuywgbWFpcyDCq8KgJycubG9uZG9uLicnwqDCuywg ZXQgQmVsZ3JhZGUgc2VyYSDCq8KgJycuYmVvZ3JhZC4nJ8KgwrsgcGx1dMO0dCBxdWUgwqvCoCcn LmJlbGdyYWQuJyfCoMK7LgoKCgpWb3VzIGF2ZXogcGV1dC3DqnRyZSBub3TDqSBsZXMgZGV1eCBw b2ludHMgcXVpIGFwcGFyYWlzc2VudCBkYW5zIGNoYXF1ZSBub20gbG9qYmFu4oCmIENldXgtY2kg c29udCBuw6ljZXNzYWlyZXMgY2FyIHNhbnMgcGF1c2UsIGlsIHBldXQgw6p0cmUgZGlmZmljaWxl IGRlIHNhdm9pciBxdWFuZCBsZSBtb3QgcHLDqWPDqWRlbnQgZmluaXQsIGV0IHF1YW5kIGxlIG1v dCBzdWl2YW50IGTDqWJ1dGUuCgoKClZvdXMgZGV2cmlleiBhdXNzaSBwbGFjZXIgdW4gcG9pbnQg ZW50cmUgbGUgbm9tIGV0IGxlIHByw6lub20gZCd1bmUgcGVyc29ubmUgKGJpZW4gcXVlIGNlIG5l IHNvaXQgcGFzIG9ibGlnYXRvaXJlKS4gQWluc2ksIMKrwqBKb3NlcGggQmVuYXJkwqDCuyBkZXZp ZW50IMKrwqAnJy5qb3plZi5iZW5hci4nJ8KgwrsuCgoKClVuZSByw6hnbGUgaW1wb3J0YW50ZSBk YW5zIGxhIGxvamJhbmlzYXRpb24gZGVzIG5vbXMgZXN0IHF1ZSBsYSBkZXJuacOocmUgbGV0dHJl IGQndW4gJydjbWV2bGEnJyAobm9tIGxvamJhbikgZG9pdCB0b3Vqb3VycyDDqnRyZSB1bmUgY29u c29ubmUuIEVuY29yZSwgY2VjaSBhIHBvdXIgYnV0IGQnw6l2aXRlciBsYSBjb25mdXNpb24gcXVh bnQgw6Agc2F2b2lyIG/DuSBlc3QgbGEgZmluIGQndW4gbW90LCBldCBzaSB1biBtb3QgZXN0IG91 IG4nZXN0IHBhcyB1biBub20gKHRvdXQgbGVzIGF1dHJlcyBtb3QgbG9qYmFuIGZpbmlzc2FudCBw YXIgdW5lIHZveWVsbGUpLiBEYW5zIGxlIGNhcyBvw7kgdW4gbW90IGZpbml0IHBhciB1bmUgdm95 ZWxsZSwgwqvCoCcncycnwqDCuyBlc3Qgc291dmVudCBham91dMOpIMOgIGxhIGZpbi4gQWluc2ks IMKrwqBNYXJpZcKgwrsgZGV2aWVudCBlbiBsb2piYW4gwqvCoCcnLm1hcmlzLicnwqDCuywgwqvC oEpvZcKgwrsgZGV2aWVudCDCq8KgJycuZGpvcy4nJ8KgwrssIGV0IGFpbnNpIGRlIHN1aXRlLiBV bmUgYWx0ZXJuYXRpdmUgY29uc2lzdGUgw6Agc3VwcHJpbWVyIGxhIGRlcm5pw6hyZSB2b3llbGxl LCDCq8KgTWFyaWXCoMK7IGRldmVuYW50IMKrwqAnJy5tYXIuJyfCoMK7LgoKCgpVbmUgZGVybmnD qHJlIGNob3NlwqA6IGNvbW1lIG5vdXMgbCdhdm9ucyB2dSwgbCdhY2NlbnQgdG9uaXF1ZSBkZXMg bW90cyBsb2piYW4gZXN0IHNpdHXDqSBzdXIgbCdhdmFudCBkZXJuacOocmUgc3lsbGFiZS4gU2kg bCdhY2NlbnQgdG9uaXF1ZSBkJ3VuIG5vbSBzZSB0cm91dmUgYWlsbGV1cnMsIGRlcyBsZXR0cmVz IG1hanVzY3VsZXMgc29udCB1dGlsaXPDqWVzLiBDZWNpIHNpZ25pZmllIHF1ZSBsZSBub20gwqvC oFJvYmVydMKgwrsgc2VyYSDDqWNyaXQgZGlmZsOpcmVtbWVudCBzdWl2YW50IHF1J2lsIHNvaXQg YW5nbGFpcyBvdSBmcmFuw6dhaXPCoDogwqsgJycucm9CRVIuJycgwrsgZW4gZnJhbsOnYWlzLCDC q8KgJycucm9ieXQuJyfCoMK7IGVuIGFuZ2xhaXMgZXQgwqsgJycucmFiLHJ0LicnIMK7IGVuIGFt w6lyaWNhaW4uCgoKCkFmaW4gZGUgdm91cyBkb25uZXIgdW5lIGlkw6llIGRlIGNvbW1lbnQgdG91 dCBjZWNpIGZvbmN0aW9ubmUsIHZvaWNpIHVuZSBsaXN0ZSBkZSBub21zIGRlIHF1ZWxxdWUgcGVy c29ubmFnZXMgY8OpbMOoYnJlcyBkYW5zIGxldXIgcHJvcHJlIGxhbmd1ZSBldCBlbiBsb2piYW4u CgoKCnx8X19GcmFuw6dhaXNfXwoKTmFwb2xlb24gQm9uYXBhcnRlIHwnJy5uYXBvbGUsT04uYm9u YVBBUlQuJycKCkp1bGlldHRlIEJpbm9jaGUgfCcnLmp1TElFVC5iaW5PQy4nJyB8fAoKfHxfX0Fu Z2xhaXNfXwoKTWFyZ2FyZXQgVGhhdGNoZXIgfCcnLm1hZ3J5dC50YXRjeXIuJycKCk1pY2sgSmFn Z2VyIHwnJy5taWsuZGphZ3lzLicnIHx8Cgp8fF9fQ2hpbm9pc19fCgpMYW8gVHNldSB8JycubGF1 ZHouJycKCk1hbyBaZWRvbmcgfCcnLm1hdWR6eURZTi4nJyAoTGUgwqvCoG5nwqDCuyBmaW5hbCBl c3QgY29udmVudGlvbmVsbGVtZW50IHRyYW5mb3Jtw6kgZW4gwqvCoCcnbicnwqDCuyBlbiBsb2pi YW4uKSB8fAoKfHxfX1R1cmNfXwoKTXVzdGFmYSBLZW1hbCB8JycuTVVTdGFmYXMua2VNQUwuJycK CkVya2luIEtvcmF5IHwnJy5lcmtpbi5rb3JhaXMuJycgfHwKCnx8X19BbGxlbWFuZF9fCgpGcmll ZHJpY2ggTmlldHpzY2hlIHwnJy5mcmlkcml4Lm5pdGN5cy4nJwoKQ2xhcmEgU2NodW1hbm4gfCcn LmtsYXJhcy5jdW1hbi4nJyB8fAoKfHxfX0VzcGFnbm9sX18KCklzYWJlbCBBbGxlbmRlIHwnJy5p emFCRUwuYWllbmRlcy4nJwoKQ2hlIEd1ZXZhcmEgfCcnLnRjZWdldmFyYXMuJycgfHwKCgoKX19F eGVyY2ljZcKgOl9fCgpPw7kgc29udCBjZXMgbGlldXjCoD8KCiMubnUsSU9SSy4KCiMucm9tYXMu CgojLnhhdmFuYXMuCgojLmthcmRpZi4KCiMuYmVpZGppbi4KCiMuQU5rYXJhcy4KCiMuQUxiZWtl cmtpcy4KCiMudmFua3V2ZXIuCgojLmtlaXB0YXVuLgoKIy50YWliZWlzLgoKIy5ib24uCgojLmRp bGl5cy4KCiMubmlzLgoKIy5hdGluYXMuCgojLmxpZHouCgojLnhlbHNpbmtpcy4KCgoKUsOpcG9u c2VzOgoKfn5ncmF5LGdyYXk6fn4KCiN+fmdyYXksZ3JheTpOZXcgWW9yazogw4l0YXRzLVVuaXMg ZCdBbcOpcmlxdWV+fgoKI35+Z3JheSxncmF5OlJvbWU6IEl0YWxpZX5+Cgojfn5ncmF5LGdyYXk6 SGF2YW5hOiBDdWJhfn4KCiN+fmdyYXksZ3JheTpDYXJkaWZmOiBQYXlzIGRlIEdhbGxlcyAoTGUg Z2FsbG9pcyBwb3VyIMKrwqBDYXJkaWZmwqDCuyBlc3QgwqvCoENhZXJkeWRkwqDCuywgc2UgcXVp IHNlIGxvamJhbmlzZXJhaXQgY29tbWUgwqvCoCcnLmthaXJkeWQuJyfCoMK7Lil+fgoKI35+Z3Jh eSxncmF5OkJlaWppbmc6IENoaW5lfn4KCiN+fmdyYXksZ3JheTpBbmthcmE6IFR1cmtpZX5+Cgoj fn5ncmF5LGdyYXk6QWxiZXF1ZXJxdWU6IE5vdXZlYXUtTWV4aXF1ZSwgw4l0YXRzLVVuaXMgZCdB bcOpcmlxdWV+fgoKI35+Z3JheSxncmF5OlZhbmNvdXZlcjogQ2FuYWRhfn4KCiN+fmdyYXksZ3Jh eTpDYXBlIFRvd246IEFmcmlxdWUgZHUgc3Vkfn4KCiN+fmdyYXksZ3JheTpUYWlwZWk6IFRhaXdh biAoTm90ZcKgOiBvbiB1dGlsaXNlIMKrwqAnJ2InJ8KgwrssIGV0IG5vbiDCq8KgJydwJyfCoMK7 LiBCaWVuIHF1J2VuIGZhaXQsIGxlIGIgZW4gUGlueWluIHNvaXQgcHJvbm9uY8OpIHDigKYgTWFp cyBub3VzIG5lIHNvbW1lcyBwYXMgZGFucyB1biBjb3VycyBkZSBtYW5kYXJpbsKgISl+fgoKI35+ Z3JheSxncmF5OkJvbm46IEFsbGVtYWduZX5+Cgojfn5ncmF5LGdyYXk6RGVsaGk6IEluZGUgKEwn aGluZGkgcG91ciDCq8KgRGVsaGnCoMK7IGVzdCDCq8KgRGlsbMOuwqDCuywgY2UgcXVpIGRvbm5l IMKrwqAnJy5kaWxpeXMuJyfCoMK7IG91IMKrwqAnJy5kaWxpJ2lzLicnwqDCuy4pfn4KCiN+fmdy YXksZ3JheTpOaWNlOiBGcmFuY2V+fgoKI35+Z3JheSxncmF5OkF0aGVuczogR3LDqGNlICjCq8Kg QXRoaW5hwqDCuyBlbiBncmVjcXVlKX5+Cgojfn5ncmF5LGdyYXk6TGVlZHM6IEFuZ2xldGVycmV+ fgoKI35+Z3JheSxncmF5OkhlbHNpbmtpOiBGaW5sYW5kZX5+CgoKCl9fRXhlcmNpc2XCoDpfXwoK TG9qYmFuaXNleiBsZXMgbm9tcyBzdWl2YW50wqA6CgojSm9obgoKI01lbGlzc2EKCiNBbWFuZGEK CiNNYXR0aGV3CgojTWF0aGlldQoKI01pY2hhZWwKCiNEYXZpZCBCb3dpZQoKI0phbmUgQXVzdGVu CgojV2lsbGlhbSBTaGFrZXNwZWFyZQoKI1NpZ291cm5leSBXZWF2ZXIKCiNSaWNoYXJkIE5peG9u CgojSXN0YW5idWwKCiNNYWRyaWQKCiNUb2t5bwoKI1NhbiBTYWx2YWRvcgoKCgpSw6lwb25zZXPC oDoKCn5+Z3JheSxncmF5OklsIHkgYSBzb3V2ZW50IGQnYXV0cmVzIMOpcGVsbGF0aW9ucyBwb3Vy IGxlcyBub21zLCBzb2l0IHBhcmNlIHF1ZSBsZXMgZ2VucyBwcm9ub25jZW50IGwnb3JpZ2luYWwg ZGlmZsOpcmVtbWVudCwgc29pdCBwYXJjZSBxdWUgbGUgc29uIGV4YWN0IG4nZXhpc3RlIHBhcyBl biBsb2piYW4sIGV0IHF1ZSBsJ29uIGRvaXQgY2hvaXNpciBlbnRyZSBkZXV4IGxldHRyZXMuIENl IG4nZXN0IHBhcyBpbXBvcnRhbnQsIGR1IG1vbWVudCBxdWUgdG91dCBsZSBtb25kZSBzYWl0IGRl IHF1aSBvdSBxdW9pIHZvdXMgcGFybGV6Ln5+Cgojfn5ncmF5LGdyYXk6LmRqb24uIChvdSAuZGph bi4gYXZlYyBjZXJ0YWlucyBhY2NlbnRzLCBldCBwYXJmb2lzIC5qb24uIGVuIGZyYW7Dp2Fpcyl+ fgoKI35+Z3JheSxncmF5Oi5tZWxpc2FzLiAoLm1lbGlzeXMuIGVuIGFuZ2xhaXMpfn4KCiN+fmdy YXksZ3JheTouYW1hbmRhcy4gKEVuIGFuZ2xhaXMsIHN1aXZhbnQgbGVzIGFjY2VudHMsIGxlIMKr wqAnJ2EnJ8KgwrsgZmluYWwgcGV1dCDDqnRyZSB1biDCq8KgJyd5JyfCoMK7LCBkZSBtw6ptZSBw b3VyIGxlIMKrwqAnJ2EnJ8KgwrsgaW5pdGlhbCwgZXQgbGUgwqvCoCcnYScnwqDCuyBkdSBtaWxp ZXUgcGV1dCDDqnRyZSB1biDCq8KgJydlJyfCoMK7Lil+fgoKI35+Z3JheSxncmF5Oi5tYXRpdXMu fn4KCiN+fmdyYXksZ3JheToubWFUSVlTLn5+Cgojfn5ncmF5LGdyYXk6Lm1pa2FlbC4gKC5tYWlr eWwuIG91IC5tYWlrLGwuIGVuIGFuZ2xhaXMuKX5+Cgojfn5ncmF5LGdyYXk6LmRlaXZ5ZC5iYXUs aXMuIG91IC5ibyxpcy4gKHBhcyAuYnUsaXMuIOKAlCBjZSBzZXJhaXQgYWxvcnMgbGUgJydjb3V0 ZWF1JycgQm93aWUpfn4KCiN+fmdyYXksZ3JheTouZGplaW4ub3N0aW4ufn4KCiN+fmdyYXksZ3Jh eToudWlsaWFtLmNla3NwaXIufn4KCiN+fmdyYXksZ3JheTouc2lnb3JuaXMudWl2eXIuIG91IC5z eWdvcm5pcy51aXZ5ci5+fgoKI35+Z3JheSxncmF5Oi5yaXRjeXJkLm5pa3N5bi5+fgoKI35+Z3Jh eSxncmF5Oi5pc3RhbmJ1bC5+fgoKI35+Z3JheSxncmF5Oi5tYURSSUQufn4KCiN+fmdyYXksZ3Jh eToudG9raW9zLn5+Cgojfn5ncmF5LGdyYXk6LnNhbi5zYWx2YURPUi4gKGF2ZWMgbCdhY2NlbnQg dG9uaXF1ZSBlc3BhZ25vbCl+fgoKISEhIU1vdHMgbG9qYmFuIGNvbW1lIG5vbXMKCgoKw4AgcHLD qXNlbnQsIHZvdXMgZGV2cmlleiDDqnRyZSBjYXBhYmxlIGRlIGxvamJhbmlzZXIgdm90cmUgcHJv cHJlIG5vbS4gVG91dGVmb2lzLCBzaSB2b3VzIGxlIHByw6lmw6lyZXosIHZvdXMgcG91dmV6IHRy YWR1aXJlIHZvdHJlIG5vbSBlbiBsb2piYW4gKHNpIHZvdXMgc2F2ZXogY2UgcXUnaWwgc2lnbmlm aWUsIGJpZW4gc8O7ciksIG91IGFkb3B0ZXIgdW5lIHRvdXRlIG5vdXZlbGxlIGlkZW50aXTDqSBs b2piYW5lLiBMZXMgaW5kaWVucyBkJ2Ftw6lyaXF1ZSBvbnQgdGVuZGFuY2Ugw6AgdHJhZHVpcmUg bGV1ciBub20gZW4gYW5nbGFpcywgcGFydGllbGxlbWVudCBwYXJjZSBxdWUgbGV1ciBub20gc2ln bmlmaWUgcXVlbHF1ZSBjaG9zZSwgZXQgcGFydGllbGxlbWVudCBwYXJjZSBxdSdpbCBuZSBzJ2F0 dGVuZGVudCBwYXMgw6AgY2UgcXVlIGxlIMKrwqB3YXNpY2h1wqDCuyBzb2l0IGNhcGFibGUgZGUg cHJvbm9uY2VyIGRlcyBtb3RzIGVuIExha290YSwgQ2hlcm9rZWUgb3UgYXV0cmXCoCEKCgoKTGVz IG1vdHMgbG9qYmFuIChtaXMgw6AgcGFydCBsZXMgY21ldmxhKSBzZSB0ZXJtaW5lbnQgcGFyIHVu ZSB2b3llbGxlLiBWb3VzIHBvdXZleiB1dGlsaXNlciBkZXMgbW90cyBsb2piYW4gY29tbWUgbm9t LCBtYWlzIHNpIHZvdXMgcHLDqWbDqXJleiBxdWUgdm90cmUgbm9tIHNvaXQgdW4gY21ldmxhIGV0 IHF1J2lsIHNlIHRlcm1pbmUgcGFyIHVuZSB2b3llbGxlLCB2b3VzIHBvdXZleiBzb2l0IGFqb3V0 ZXIgdW5lIGNvbnNvbm5lIMOgIGxhIGZpbiBkZSBjZWx1aS1jaSwgc29pdCB0cm9ucXVlciBsYSBk ZXJuacOocmUgdm95ZWxsZS4KCgoKVm9pY2kgcXVlbHF1ZXMgZXhlbXBsZXMgKG5vbSBvcmlnaW5h bCwgc2lnbmlmaWNhdGlvbiwgbm9tIGV0IG5vbSBjb21tZSBjbWV2bGEpwqA6CgoqRmlzaCAoQW5n bGFpcyA9IHBvaXNzb24pIOKAkyBmaW5wZSDigJMgJycuZmlucC4nJwoKKkJqw7ZybiAoU2NhbmRp bmF2ZSA9IG91cnMpIOKAkyBjcmliZSDigJMgJycuY3JpYi4nJwoKKlZlcmRpIChJdGFsaWVuID0g dmVydCkg4oCTIGNyaW5vIOKAkyAnJy5jcmluLicnCgoqTWVpIExpIChDaGlub2lzID0gYmVhdSkg 4oCTIG1lbGJpIOKAkyAnJy5tZWxiLicnCgoqQXloYW4gKFR1cmMgPSBTZWlnbmV1ciBMdW5lKSDi gJMgbHVucmEgbm9ibGkgKD0gbHVybm9ibGkpIOKAkyAnJy5sdXJub2JsaXMuJycKCiEhTGXDp29u cyBkZSBsb2piYW4g4oCTIGxlw6dvbiB1bsKgOiBicmlkaSwganVmcmEsIHN1bXRpIGV0IHNlbGJy aQoKCgpVbiAnJ2JyaWRpJycgZXN0IGxlIHR5cGUgZCdleHByZXNzaW9uIGxlIHBsdXMgY291cmFt bWVudCByZW5jb250csOpIGVuIGxvamJhbi4gTGUgY29uY2VwdCBlc3QgdHLDqHMgcHJvY2hlIGRl cyBwcm9wb3NpdGlvbnMsIGRhbnMgbGEgZ3JhbW1haXJlIGZyYW7Dp2Fpc2UuIFVuIGJyaWRpIGVz dCB1bmUgZMOpY2xhcmF0aW9uIHF1J3VuIG9iamV0IGVzdCBlbiByZWxhdGlvbiBhdmVjIHVuIGF1 dHJlLCBvdSBxdWUgY2V0IG9iamV0IHBvc3PDqGRlIGNlcnRhaW5lcyBwcm9wcmnDqXTDqXMuIEls IGVzdCBhIGNvbnRyYXN0ZXIgYXZlYyBsZXMgJydqdWZyYScnLCBxdWkgcmVwcsOpc2VudGVudCBu J2ltcG9ydGUgcXVlbGxlIGV4cHJlc3Npb24gbG9qYmFuZSwgcXVlIGNlIHNvaXQgZGVzIGJyaWRp IG91IGQnYXV0cmVzIHR5cGVzIGRlIHBocmFzZXMuIExhIGRpZmbDqXJlbmNlIGVudHJlIHVuIGJy aWRpIGV0IHVuIGp1ZnJhIGVzdCBxdSd1biBqdWZyYSBuZSBzcMOpY2lmaWUgcGFzIGZvcmPDqW1l bnQgcXVlbHF1ZSBjaG9zZSwgbWFpcyB1biBicmlkaSBsZSBmYWl0LiBBaW5zaSwgdW4gYnJpZGkg cGV1dCDDqnRyZSB2cmFpIG91IGZhdXgsIG1haXMgdW4ganVmcmEgcGV1dCBuZSBwYXMgw6p0cmUg cXVhbGlmacOpIGRlIGxhIHNvcnRlLgoKCgpQb3VyIGF2b2lyIHF1ZWxxdWVzIGV4ZW1wbGVzLCBl biBmcmFuw6dhaXMgcG91ciBjb21tZW5jZXIsIMKrwqBNb3phcnQgw6l0YWl0IGxlIG1laWxsZXVy cyBtdXNpY2llbiBkZSB0b3V0IGxlcyB0ZW1wc8KgwrsgZXN0IHVuIGJyaWRpLCBwYXJjZSBxdSdp bCBkw6ljbGFyZSBxdWVscXVlIGNob3NlIGNvbW1lIHZyYWksIGV0IHF1J2lsIGltcGxpcXVlIHVu IG9iamV0LCBNb3phcnQsIGV0IHVuZSBwcm9wcmnDqXTDqSwgw6p0cmUgbGUgcGx1cyBncmFuZCBt dXNpY2llbiBkZSB0b3V0IGxlcyB0ZW1wcy4gQXUgY29udHJhaXJlLCDCq8KgQcOvZcKgISBNb24g b3J0ZWlswqAhwqDCuyBuJ2VzdCBwYXMgdW4gYnJpZGksIHB1aXNxdSdpbCBuJ2ltcGxpcXVlIHBh cyBkZSByZWxhdGlvbiwgZXQgbmUgZMOpY2xhcmUgZG9uYyByaWVuLiBDZXMgZGV1eCBwaHJhc2Vz IHNvbnQgdG91dGVmb2lzIGRlcyBqdWZyYS4KCgoKRXNzYXlleiBkJ2lkZW50aWZpZXIgbGVzIGJy aWRpIHBhcm1pIGNlcyBqdWZyYSBmcmFuw6dhaXMgOgoKCgojIMKrwqBKZSBkw6l0ZXN0ZSBxdWFu ZCB0dSBmYWlzIMOnYS7CoMK7CgojIMKrwqBDb3VyZcKgIcKgwrsKCiMgwqvCoE1tbWjCoCEgw4dh IHNlbWJsZSBkw6lsaWNpZXV4LsKgwrsKCiMgwqvCoE9oIG5vbiwgcGFzIGVuY29yZeKApsKgwrsK CiMgwqvCoE1haW50ZW5hbnQsIGplIHBvc3PDqGRlIHRyb2lzIHZvaXR1cmVzLsKgwrsKCiMgwqvC oEh1aXQgaGV1cmUgZXQgZGl4LW5ldWYgbWludXRlcy7CoMK7CgojIMKrwqBDZSBzYW1lZGksIG91 aS7CoMK7CgoKClLDqXBvbnNlwqA6IH5+Z3JleSxncmV5OjEsIDMgZXQgNSBzb250IGRlcyBicmlk aS4gMiBuZSBjb250aWVudCBwYXMgZCdvYmpldCwgZXQgbGVzIGF1dHJlcyBuZSBjb250aWVubmVu dCBwYXMgZGUgcmVsYXRpb24gbmkgZGUgZMOpY2xhcmVudCBkZSBwcm9wcmnDqXTDqXMufn4KCgoK RMOpY29tcG9zw6kgZW4gdGVybWVzIGxvamJhbiwgdW4gYnJpZGkgZXN0IGNvbnN0aXR1w6kgZCd1 biAnJ3NlbGJyaScnLCBldCBkJ3VuIG91IHBsdXNpZXVycyAnJ3N1bXRpJycuIExlIHNlbGJyaSBl c3QgbGEgcmVsYXRpb24gb3UgZMOpY2xhcmF0aW9uIMOgIHByb3BvcyBkZXMgb2JqZXRzLCBldCBs ZXMgc3VtdGkgc29udCBsZXMgb2JqZXRzIGltcGxpcXXDqXMgZGFucyBsYSByZWxhdGlvbi4gTm90 ZXogcXVlIMKrwqBvYmpldMKgwrsgbidlc3QgcGFzIHVuZSB0cmFkdWN0aW9uIHBhcmZhaXRlIGRl IMKrwqBzdW10acKgwrssIHBhcmNlIHF1J3VuIHN1bXRpIHBldXQgc2UgcsOpZsOpcmVyIGF1dGFu dCDDoCB1biBvYmpldCBwaHlzaXF1ZSBxdSfDoCBkZXMgY2hvc2VzIHB1cmVtZW50IGFic3RyYWl0 ZXMgY29tbWUgwqvCoGwnaWTDqWUgZGUgbGEgZ3VlcnJlwqDCuy4gVW5lIG1laWxsZXVyZSB0cmFk dWN0aW9uIHNlcmFpdCBxdWVscXVlIGNob3NlIGNvbW1lIMKrwqBzdWpldCwgb2JqZXQgZGlyZWN0 IG91IGluZGlyZWN0wqDCuyBwb3VyIGxlcyBzdW10aSwgZXQgwqvCoHZlcmJlwqDCuyBwb3VyIGxl cyBzZWxicmksIGJpZW4gcXVlLCBjb21tZSBub3VzIGxlIHZlcnJvbnMgcGx1cyB0YXJkLCBjZSBu J2VzdCBwYXMgbm9uIHBsdXMgb3B0aW1hbC4KCgoKTm91cyBwb3V2b25zIG1haW50ZW5hbnQgw6lj cmlyZSBub3RyZSBwcmVtacOocmUgbGXDp29uIGltcG9ydGFudGXCoDoKCmJyaWRpID0gc2VsYnJp ICsgdW4gb3UgcGx1c2lldXJzIHN1bXRpCgoKCkRpdCBkJ3VuZSBhdXRyZSBtYW5pw6hyZSwgdW4g YnJpZGkgZMOpZmluaXQgcXUndW4gb3UgcGx1c2lldXJzIHN1bXRpIHNvbnQvZm9udCBxdWVscXVl IGNob3NlIGV4cGxpcXXDqSBwYXIgdW4gc2VsYnJpLgoKCgpJZGVudGlmaWV6IGwnw6lxdWl2YWxl bnQgZGVzIHN1bXRpIGV0IGR1IHNlbGJyaSBkYW5zIGNlcyBqdWZyYSBmcmFuw6dhaXPCoDoKCgoK wqvCoEplIHZhaXMgcsOpY3Vww6lyZXIgbWVzIGZpbGxlcyBhdmVjIG1hIHZvaXR1cmUuwqDCuwoK CgpSw6lwb25zZcKgOiB+fmdyZXksZ3JleTpzZWxicmk6IMKrwqB2YWlzIHLDqWN1cMOpcmVyIChh dmVjKcKgwrsuIHN1bXRpOiDCq8KgSmXCoMK7LCDCq8KgbWVzIGZpbGxlc8KgwrssIMKrwqBtYSB2 b2l0dXJlwqDCu35+CgoKCsKrwqBJbCBhIGFjaGV0w6kgY2lucSBub3V2ZWF1eCBzaGlydHMgw6Ag TWFyayBwb3VyIMOgIHBlaW5lIGRldXgtY2VudCBldXJvc8KgIcKgwrsKCgoKUsOpcG9uc2XCoDog fn5ncmV5LGdyZXk6c2VsYnJpOiDCq8KgYSBhY2hldMOpICjDoCkgKHBvdXIpwqDCuyBzdW10aTog wqvCoElswqDCuywgwqvCoGNpbnEgbm91dmVhdSBzaGlydHPCoMK7LCDCq8KgTWFya8KgwrsgZXQg wqvCoGRldXgtY2VudCBldXJvc8Kgwrt+fgoKCgpQdWlzcXVlIGNlcyBjb25jZXB0cyBzb250IHNp IGZvbmRhbWVudGFscyBlbiBsb2piYW4sIHJlZ2FyZG9ucyB1biB0cm9pc2nDqG1lIGV4ZW1wbGXC oDoKCsKrwqBKdXNxdSfDoCBtYWludGVuYW50LCBsJ0VQQSBuJ2EgcmllbiBmYWl0IMOgIHByb3Bv cyBkZSBsYSBxdWFudGl0w6kgZGUgZGlveGlkZSBkZSBzb3VmcmUuwqDCuwoKCgpSw6lwb25zZcKg OiB+fmdyZXksZ3JleTpzZWxicmk6IMKrwqBhIGZhaXQgKMOgIHByb3BvcyBkZSnCoMK7IHN1bXRp OiDCq8KgbCdFUEHCoMK7LCDCq8KgcmllbsKgwrsgZXQgwqvCoGxhIHF1YW50aXTDqSBkZSBkaW94 aWRlIGRlIHNvdWZyZcKgwrt+fgoKCgpNYWludGVuYW50LCBlc3NheWV6IGRlIGNyw6llciBkZXMg YnJpZGkgZW4gbG9qYmFuLiBQb3VyIGNlbGEsIHZvdXMgYXVyZXogYmVzb2luIGRlIG1vdHMsIHF1 aSBwZXV2ZW50IGZhaXJlIG9mZmljZSBkZSBzZWxicmnCoDoKCicnX19kdW5kYV9fJycgeDEgZG9u bmUgeDIgw6AgeDMgKHNhbnMgcGFpZW1lbnQpCgonJ19fcGVseHVfXycnIHgxIGVzdCBqYXVuZQoK JydfX3pkYW5pX18nJyB4MSBlc3QgdW5lIG1haXNvbiBkZSB4MgoKCgpOb3RleiBxdWUgY2VzIG1v dHMsIMKrwqBkb25uZXLCoMK7LCDCq8KgamF1bmXCoMK7IGV0IMKrwqBtYWlzb27CoMK7LCBzZXJh aWVudCBjb25zaWTDqXLDqXMgY29tbWUgdW4gdmVyYmUsIHVuIGFkamVjdGlmIGV0IHVuIG5vbSwg cmVzcGVjdGl2ZW1lbnQuIEVuIGxvamJhbiwgaWwgbid5IGEgcGFzIGNlcyBjYXTDqWdvcmllcywg ZXQgZG9uYyBwYXMgZGUgZGlzdGluY3Rpb24uICcnZHVuZGEnJyBwZXV0IMOqdHJlIHRyYWR1aXQg cGFyIMKrwqBkb25uZXLCoMK7ICh1biB2ZXJiZSksIMKrwqB1biBkb25uZXVywqDCuyAobm9tKSwg wqvCoGRvbm5hbnTCoMK7IChhZGplY3RpZiksIG91IG3Dqm1lIGNvbW1lIHVuIGFkdmVyYmUuIEls cyBzZSBjb21wb3J0ZW50IHRvdXMgY29tbWUgZGVzIHNlbGJyaSwgZXQgc29udCB1dGlsaXPDqXMg ZGUgbGEgbcOqbWUgbWFuacOocmUuCgoKClZvdXMgYXVyZXogYXVzc2kgYmVzb2luIGRlIHF1ZWxx dWUgbW90cywgcXVpIGZlcm9udCBvZmZpY2UgZGUgc3VtdGnCoDoKCicnX19taV9fJycgwqvCoG1v acKgwrssIMKrwqBqZcKgwrsgb3UgwqvCoG5vdXPCoMK7IOKAkyBDZWx1aSBvdSBjZXV4IHF1aSBw YXJsZS9wYXJsZW50LgoKJydfX3RpX18nJyDCq8KgY2VjacKgwrsg4oCTIFVuZSBjaG9zZSBvdSB1 biDDqXbDqG5lbWVudCBwcm9jaGUsIHF1aSBwZXV0IMOqdHJlIHBvaW50w6kgcGFyIGxlIGxvY3V0 ZXVyLgoKJydfX2RvX18nJyDCq8KgdHXCoMK7IG91IMKrwqB2b3VzwqDCuyDigJMgQ2VsdWkgb8O5 IGNldXggw6AgcXVpIGwnb24gcydhZHJlc3NlLgoKCgpWb3VzIHZveWV6IGxhIHRyYWR1Y3Rpb24g Yml6YXJyZSBkZXMgc2VsYnJpIGNpLWRlc3N1cyDigJQgbm90YW1tZW50IGxlIHgxLCB4MiBldCB4 M8KgPyBJbHMgc29udCBhcHBlbMOpcyBkZXMgZW1wbGFjZW1lbnQgZGUgc3VtdGkuIENlIHNvbnQg ZGVzIGVtcGxhY2VtZW50IG/DuSBsJ29uIHBldXQgbWV0dHJlIHVuIHN1bXRpIHBvdXIgY29tcGzD qXRlciB1biBicmlkaS4gQ29tcGzDqXRlciB1biBlbXBsYWNlbWVudCBkZSBzdW10aSBzaWduaWZp ZSBxdWUgbGUgc3VtdGkgcydhY2NvcmRlIMOgIGNldCBlbXBsYWNlbWVudC4gTGUgc2Vjb25kIGVt cGxhY2VtZW50IGRlICcnZHVuZGEnJywgcGFyIGV4ZW1wbGUsIHgyLCBlc3QgbGEgY2hvc2UgcXVp IGVzdCBkb25uw6llLiBMZSB0cm9pc2nDqG1lIGVtcGxhY2VtZW50IGVzdCBsJ29iamV0IHJlY2V2 YW50IGxlIGRvbi4gTm90ZXogY29tbWUgbGEgdHJhZHVjdGlvbiBkZSAnJ2R1bmRhJycgY29udGll bnQgbGUgbW90IMKrwqDDoMKgwrsuIENlY2kgZXN0IGTDuyBhdSBmYWl0IHF1J2VuIGZyYW7Dp2Fp cywgwqvCoMOgwqDCuyBlc3QgdXRpbGlzw6kgcG91ciBzaWduaWZpZXIgbGUgcmVjZXZldXIsIHF1 aSBlc3QgYXUgdHJvaXNpw6htZSBlbXBsYWNlbWVudCBkZSAnJ2R1bmRhJycuIEFpbnNpLCBxdWFu ZCB2b3VzIGNvbXBsw6l0ZXogbGUgdHJvaXNpw6htZSBlbXBsYWNlbWVudCBkZSAnJ2R1bmRhJycs IGxlIHN1bXRpIHF1ZSB2b3VzIHkgcGxhY2V6IGVzdCB0b3Vqb3VycyBsZSByZWNldmV1ciwgZXQg dm91cyBuJ2F2ZXogcGFzIGJlc29pbiBkJ3VuIMOpcXVpdmFsZW50IGF1IG1vdCDCq8Kgw6DCoMK7 LgoKCgpQb3VyIGV4cHJpbWVyIHVuIGJyaWRpLCB2b3VzIHV0aWxpc2V6IHNpbXBsZW1lbnQgbGUg c3VtdGkgeDEgZW4gcHJlbWllciwgcHVpcyBsZSBzZWxicmksIHB1aXMgbGVzIGF1dHJlcyBzdW10 aS4KCgoKVW4gYnJpZGkgaGFiaXR1ZWzCoDoge3N1bXRpIHgxfSBfX3tzZWxicml9X18ge3N1bXRp IHgyfSB7c3VtdGkgeDN9IHtzdW10aSB4NH0ge3N1bXRpIHg1fSB7ZXQgYWluc2kgZGUgc3VpdGV9 CgoKCkwnb3JkcmUgcGV1dCB2YXJpZXIsIG1haXMgcG91ciBsZSBtb21lbnQsIG5vdXMgbm91cyBj b250ZW50ZXJvbnMgZGUgbGEgZm9ybWUgaGFiaXR1ZWxsZS4gUG91ciBkaXJlIMKrwqBKZSBkb25u ZSBjZWNpIMOgIHRvacKgwrssIHZvdXMgZMOudGVzIGp1c3RlwqA6IMKrwqAnJ21pIGR1bmRhIHRp IGRvJyfCoMK7LCBhdmVjIGNoYXF1ZSBzdW10aSBhdSBib24gZW1wbGFjZW1lbnQuCgoKCkRvbmMs IGNvbW1lbnQgZGlyaWV6IHZvdXMgwqvCoENlY2kgZXN0IHVuZSBtYWlzb24gZGUgbW9pwqDigJ3C oD8KCgoKUsOpcG9uc2XCoDogfn5ncmV5LGdyZXk6Jyd0aSB6ZGFuaSBtaScnfn4KCgoKRXNzYXll eiBkZSByw6lwb25kcmUgw6AgY2VzIHF1ZWxxdWVzIGF1dHJlcyBxdWVzdGlvbnMgcG91ciB2b3Vz IGZhbWlsaWFyaXNlciBhdmVjIGwnaWTDqWUgZGUgY2V0dGUgc3RydWN0dXJlIHBhciBlbXBsYWNl bWVudHPCoDoKCgoKQ29tbWVudCB0cmFkdWlyZSDCq8KgVHUgZG9ubmVzIGNlY2kgw6AgbW9pLsKg wrvCoD8KCgoKUsOpcG9uc2XCoDogfn5ncmV5LGdyZXk6JydkbyBkdW5kYSB0aSBtaScnfn4KCgoK RXQgcXVlIHZldXQgZGlyZSDCq8KgJyd0aSBwZWx4dScnwqDCu8KgPwoKCgpSw6lwb25zZcKgOiB+ fmdyZXksZ3JleTpDZWNpIGVzdCBqYXVuZS5+fgoKCgpQbHV0w7R0IGZhY2lsZSB1bmUgZm9pcyBx dWUgbCdvbiBhIGNvbXByaXMsIG5vbsKgPwoKCgpQbHVzaWV1cnMgYnJpZGkgbGVzIHVucyDDoCBs YSBzdWl0ZSBkZXMgYXV0cmVzIHNvbnQgc8OpcGFyw6lzIHBhciDCq8KgJycuaScnwqDCuy4gwqvC oC5pwqDCuyBlc3QgbCfDqXF1aXZhbGVudCBsb2piYW4gZCd1biBwb2ludCwgbWFpcyBzZSBwbGFj ZSBlbiBnw6luw6lyYWwgYXZhbnQgbGUgYnJpZGksIHBsdXTDtHQgcXUnYXByw6hzLiBJbCBlc3Qg c291dmVudCBvbWlzIGF2YW50IGxlIHByZW1pZXIgYnJpZGksIGNlcGVuZGFudCwgY29tbWUgZGFu cyBjZXQgZXhlbXBsZcKgOgoKCgonJ19fLmlfXycnIFPDqXBhcmF0ZXVyIGRlIHBocmFzZXMuIFPD qXBhcmUgZGVzIGp1ZnJhIChldCBwYXIgY29uc8OpcXVlbnQgZGVzIGJyaWRpIGF1c3NpKS4KCgoK Jyd0aSB6ZGFuaSBtaSAgLmkgdGkgcGVseHUnJyDCq8KgQ2VjaSBlc3QgdW5lIG1haXNvbiBkZSBt b2kuIENlY2kgZXN0IGphdW5lLsKgwrsKCgoKQXZhbnQgZGUgY29udGludWVyIGF2ZWMgbGEgbGXD p29uIHN1aXZhbnRlLCBqZSB2b3VzIHJlY29tbWFuZGUgZGUgZmFpcmUgdW5lIHBhdXNlIGQnYXUg bW9pbnMgc2VwdCBtaW51dGVzIHBvdXIgZGlnw6lyZXIgY2VzIGluZm9ybWF0aW9ucy4KCgoKISFM b2piYW4gTGVzc29ucyDigJMgbGVzc29uIHR3byAoRkEgYW5kIHpvJ2UpCgpNb3N0IHNlbGJyaSBo YXZlIGZyb20gb25lIHRvIGZpdmUgc3VtdGkgcGxhY2VzLCBidXQgc29tZSBoYXZlIG1vcmUuIEhl cmUgaXMgYSBzZWxicmkgd2l0aCBmb3VyIHN1bXRpIHBsYWNlczoKCicnX192ZWNudV9fJycgeDEg c2VsbHMgeDIgdG8geDMgZm9yIHByaWNlIHg0CgoKCklmIEkgd2FudCB0byBzYXkg4oCcSSBzZWxs IHRoaXPigJ0sIGl0IHdvdWxkIGJlIHRvbyBtdWNoIHRvIGhhdmUgdG8gZmlsbCB0aGUgc3VtdGkg cGxhY2VzIHgzIGFuZCB4NCwgd2hpY2ggc3BlY2lmeSB3aG8gSSBzZWxsIHRoZSB0aGluZyB0bywg YW5kIGZvciB3aGF0IHByaWNlLiBMdWNraWx5LCBJIGRvbid0IG5lZWQgdG8uIHN1bXRpIHBsYWNl cyBjYW4gYmUgZmlsbGVkIHdpdGggJyd6bydlJycuICcnem8nZScnIGluZGljYXRlcyB0byB1cyB0 aGF0IHRoZSB2YWx1ZSBvZiB0aGUgc3VtdGkgcGxhY2UgaXMgdW5zcGVjaWZpZWQgYmVjYXVzZSBp dCdzIHVuaW1wb3J0YW50IG9yIGNhbiBiZSBkZXRlcm1pbmVkIGZyb20gY29udGV4dC4KCicnX196 bydlX18nJyDigJxzb21ldGhpbmfigJ0gRmlsbHMgYSBzdW10aSBwbGFjZSB3aXRoIHNvbWV0aGlu ZywgYnV0IGRvZXMgbm90IHN0YXRlIHdoYXQuCgoKClNvIHRvIHNheSDigJxJIHNlbGwgdG8geW91 4oCdLCBJIGNvdWxkIHNheSAnJ21pIHZlY251IHpvJ2UgZG8gem8nZScnIOKAkyBJIHNlbGwgc29t ZXRoaW5nIHRvIHlvdSBmb3Igc29tZSBwcmljZS4KCkhvdyB3b3VsZCB5b3Ugc2F5OiDigJxUaGF0 J3MgYSBob21lIChmb3Igc29tZWJvZHkp4oCdPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OiAnJ3Rp IHpkYW5pIHpvJ2UnJ35+CgoKCkhvdyBhYm91dCDigJwoc29tZW9uZSkgZ2l2ZXMgdGhpcyB0byAo c29tZW9uZSnigJ0/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6Jyd6bydlIGR1bmRhIHRpIHpvJ2Un J35+CgoKClN0aWxsLCBmaWxsaW5nIG91dCB0aHJlZSB6bydlIGp1c3QgdG8gc2F5IHRoYXQgYSB0 aGluZyBpcyBiZWluZyBzb2xkIHRha2VzIHRpbWUuIFRoZXJlZm9yZSB5b3UgZG9uJ3QgbmVlZCB0 byB3cml0ZSBhbGwgdGhlICcnem8nZScnIGluIGEgYnJpZGkuIFRoZSBydWxlIHNpbXBseSBpcyB0 aGF0IGlmIHlvdSBsZWF2ZSBvdXQgYW55IHN1bXRpLCB0aGV5IHdpbGwgYmUgY29uc2lkZXJlZCBh cyBpZiB0aGV5IGNvbnRhaW5lZCAnJ3pvJ2UnJy4gSWYgdGhlIGJyaWRpIGJlZ2lucyB3aXRoIGEg c2VsYnJpLCB0aGUgeDEgaXMgcHJlc3VtZWQgdG8gYmUgb21pdHRlZCBhbmQgaXQgYmVjb21lcyAn J3pvJ2UnJy4KClRyeSBpdCBvdXQuIFdoYXQncyBMb2piYW4gZm9yIOKAnEkgc2VsbOKAnT8KCgoK QW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIHZlY251Jyd+fgoKCgpBbmQgd2hhdCBkb2VzICcnemRh bmkgbWknJyBtZWFuPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFNvbWV0aGluZyBpcyBhIGhv bWUgb2YgbWXigJ0gb3IganVzdCDigJxJIGhhdmUgYSBob21lLuKAnX5+CgoKCkFzIG1lbnRpb25l ZCBlYXJsaWVyLCB0aGUgZm9ybSBkb2Vzbid0IGhhdmUgdG8gYmUge3gxIHN1bXRpfSB7c2VsYnJp fSB7eDIgc3VtdGl9IHt4MyBzdW10aX0gKGVjdC4pIEluIGZhY3QsIHlvdSBjYW4gcGxhY2UgdGhl IHNlbGJyaSBhbnl3aGVyZSB5b3Ugd2FudCwganVzdCBub3QgYXQgdGhlIGJlZ2lubmluZyBvZiB0 aGUgYnJpZGkuIElmIHlvdSBkbyB0aGF0LCB0aGUgeDEgaXMgY29uc2lkZXJlZCBsZWZ0IG91dCBh bmQgZmlsbGVkIHdpdGggJyd6bydlJycgaW5zdGVhZC4gU28gdGhlIGZvbGxvd2luZyB0aHJlZSBq dWZyYSBhcmUgYWxsIHRoZSBleGFjdGx5IHNhbWUgYnJpZGk6CgonJ21pIGR1bmRhIHRpIGRvJycK CicnbWkgdGkgZHVuZGEgZG8nJwoKJydtaSB0aSBkbyBkdW5kYScnCgoKClNvbWV0aW1lcyB0aGlz IGlzIHVzZWQgZm9yIHBvZXRpYyBlZmZlY3QuIOKAnFlvdSBzZWxsIHlvdXJzZWxm4oCdIGNvdWxk IGJlICcnZG8gZG8gdmVjbnUnJywgd2hpY2ggc291bmRzIGJldHRlciB0aGFuICcnZG8gdmVjbnUg ZG8nJy4gT3IgaXQgY2FuIGJlIHVzZWQgZm9yIGNsYXJpdHkgaWYgdGhlIHNlbGJyaSBpcyB2ZXJ5 IGxvbmcgYW5kIHRoZXJlZm9yZSBiZXR0ZXIgYmUgbGVmdCBhdCB0aGUgZW5kIG9mIHRoZSBicmlk aS4KCgoKVGhlcmUgYXJlIGFsc28gc2V2ZXJhbCB3YXlzIHRvIHBsYXkgYXJvdW5kIHdpdGggdGhl IG9yZGVyIG9mIHRoZSBzdW10aSBpbnNpZGUgdGhlIGJyaWRpLiBUaGUgZWFzaWVzdCBvbmUgaXMg YnkgdXNpbmcgdGhlIHdvcmRzICcnZmEnJywgJydmZScnLCAnJ2ZpJycsICcnZm8nJyBhbmQgJydm dScnLiBOb3RpY2UgdGhhdCB0aGUgdm93ZWxzIGFyZSB0aGUgZml2ZSB2b3dlbHMgaW4gdGhlIExv amJhbiBhbHBoYWJldCBpbiBvcmRlci4gVXNpbmcgb25lIG9mIHRoZXNlIHdvcmRzIG1hcmtzIHRo YXQgdGhlIG5leHQgc3VtdGkgd2lsbCBmaWxsIHRoZSB4MSwgeDIsIHgzLCB4NCBhbmQgeDUgcmVz cGVjdGl2ZWx5LiBUaGUgbmV4dCBzdW10aSBhZnRlciB0aGF0IHdpbGwgYmUgcHJlc3VtZWQgdG8g ZmlsbCBhIHNsb3Qgb25lIGdyZWF0ZXIgdGhhbiB0aGUgcHJldmlvdXMuIFRvIHVzZSBhbiBleGFt cGxlOgoKJydkdW5kYSBmYSBkbyBmZSB0aSBkbycnIOKAkyDigJxHaXZpbmcgYnkgeW91IG9mIHRo aXMgdGhpbmcgdG8geW914oCdLiAnJ2ZhJycgbWFya3MgdGhlIHgxLCB0aGUgZ2l2ZXIsIHdoaWNo IGlzIHlvdS4gJydmZScnIG1hcmtzIHRoZSB0aGluZyBiZWluZyBnaXZlbiwgdGhlIHgyLiBTdW10 aSBjb3VudGluZyB0aGVuIGNvbnRpbnVlcyBmcm9tICcnZmUnJywgbWVhbmluZyB0aGF0IHRoZSBs YXN0IHN1bXRpIGZpbGxzIHgzLCB0aGUgb2JqZWN0IHJlY2VpdmluZy4KCgoKQXR0ZW1wdCB0byB0 cmFuc2xhdGUgdGhlIGZvbGxvd2luZyB0aHJlZSBzZW50ZW5jZXM6CgoKCicnbWkgdmVjbnUgZm8g dGkgZmUgZG8nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnUkgc2VsbCwgZm9yIHRoZSBwcmlj ZSBvZiB0aGlzLCB5b3XigJ0uIG9yIOKAnEkgc2VsbCB5b3UgZm9yIHRoZSBwcmljZSBvZiB0aGlz 4oCdIChwcm9iYWJseSBwb2ludGluZyB0byBhIGJ1bmNoIG9mIG1vbmV5KX5+CgoKCicnemRhbmkg ZmUgdGknJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRoaXMgaGFzIGEgaG9tZeKAnS4gSGVy ZSwgdGhlIGZlIGlzIHJlZHVuZGFudC5+fgoKCgonJ3ZlY251IHpvJ2UgbWkgdGkgZmEgZG8nJwoK CgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFlvdSBzZWxsIHNvbWV0aGluZyB0byBtZSBmb3IgdGhp cyBwcmljZeKAnX5+CgoKCgoKISFMb2piYW4gTGVzc29ucyDigJMgbGVzc29uIHRocmVlICh0YW5y dSBhbmQgbG8pCgpJbiB0aGlzIGxlc3NvbiwgeW91IHdpbGwgYmVjb21lIGZhbWlsaWFyIHdpdGgg dGhlIGNvbmNlcHQgb2YgYSAnJ3RhbnJ1JycuIEEgdGFucnUgaXMgZm9ybWVkIHdoZW4gYSBzZWxi cmkgaXMgcHV0IGluIGZyb250IG9mIGFub3RoZXIgc2VsYnJpLCBtb2RpZnlpbmcgaXRzIG1lYW5p bmcuIEEgdGFucnUgaXMgaXRzZWxmIGEgc2VsYnJpLCBhbmQgY2FuIGNvbWJpbmUgd2l0aCBvdGhl ciBzZWxicmkgb3IgdGFucnUgdG8gZm9ybSBtb3JlIGNvbXBsZXggdGFucnUuIFRodXMgJyd6ZGFu aSB2ZWNudScnIGlzIGEgdGFucnUsIGFzIHdlbGwgYXMgICcncGVseHUgemRhbmkgdmVjbnUnJywg d2hpY2ggaXMgbWFkZSBmcm9tIHRoZSB0YW5ydSAnJ3BlbHh1IHpkYW5pJycgYW5kIHRoZSBzaW5n bGUgYnJpdmxhIHdvcmQgJyd2ZWNudScnLiBUbyB1bmRlcnN0YW5kIHRoZSBjb25jZXB0IG9mIHRh bnJ1LCBjb25zaWRlciB0aGUgRW5nbGlzaCBub3VuIGNvbWJpbmF0aW9uIOKAnGxlbW9uIHRyZWXi gJ0uIElmIHlvdSBkaWRuJ3Qga25vdyB3aGF0IGEgbGVtb24gdHJlZSB3YXMsIGJ1dCBoYWQgaGVh cmQgYWJvdXQgYm90aCBsZW1vbnMgYW5kIHRyZWVzLCB5b3Ugd291bGQgbm90IGJlIGFibGUgdG8g ZGVkdWNlIHdoYXQgYSBsZW1vbiB0cmVlIHdhcy4gUGVyaGFwcyBhIGxlbW9uLWNvbG9yZWQgdHJl ZSwgb3IgYSB0cmVlIHNoYXBlZCBsaWtlIGEgbGVtb24sIG9yIGEgdHJlZSB3aG9zZSBiYXJrIHRh c3RlcyBsaWtlIGxlbW9uLiBUaGUgb25seSB0aGluZ3MgeW91IGNvdWxkIGtub3cgZm9yIHN1cmUg d291bGQgYmUgdGhhdCBpdCB3b3VsZCBiZSBhIHRyZWUsIGFuZCBpdCB3b3VsZCBiZSBsZW1vbi1s aWtlIGluIHNvbWUgd2F5LgoKQSB0YW5ydSBpcyBjbG9zZWx5IGFuYWxvZ291cyB0byB0aGlzLiBJ dCBjYW5ub3QgYmUgc2FpZCBleGFjdGx5IHdoYXQgYSAnJ3pkYW5pIHZlY251JycgaXMsIGJ1dCBp dCBjYW4gYmUgc2FpZCB0aGF0IGl0IGlzIGRlZmluaXRlbHkgYSB2ZWNudSwgYW5kIHRoYXQgaXQn cyB6ZGFuaS1saWtlIGluIHNvbWUgd2F5LiBBbmQgaXQgY291bGQgYmUgemRhbmktbGlrZSBpbiBh bnkgd2F5LiBJbiB0aGVvcnksIG5vIG1hdHRlciBob3cgc2lsbHkgb3IgYWJzdXJkIHRoZSBjb25u ZWN0aW9uIHRvIHpkYW5pIHdhcywgaXQgY291bGQgc3RpbGwgdHJ1bHkgYmUgYSAnJ3pkYW5pIHZl Y251JycuIEhvd2V2ZXIsIGl0IG11c3QgYWN0dWFsbHkgYmUgYSB2ZWNudSBpbiB0aGUgb3JkaW5h cnkgc2Vuc2UgaW4gb3JkZXIgZm9yIHRoZSB0YW5ydSB0byBhcHBseS4gWW91IGNvdWxkIGdsb3Nz ICcnemRhbmkgdmVjbnUnJyBhcyDigJxob21lIHNlbGxlcuKAnSwgb3IgZXZlbiBiZXR0ZXIgYnV0 IHdvcnNlIHNvdW5kaW5nIOKAnGEgaG9tZS10eXBlLW9mIHNlbGxlcuKAnS4gVGhlIHBsYWNlIHN0 cnVjdHVyZSBvZiBhIHRhbnJ1IGlzIGFsd2F5cyB0aGF0IG9mIHRoZSByaWdodG1vc3Qgc2VsYnJp LiBJdCdzIGFsc28gc2FpZCB0aGF0IHRoZSBsZWZ0IHNlbGJyaSBtb2RpZmllcyB0aGUgcmlnaHQg c2VsYnJpLgoK4oCcUmVhbGx5P+KAnSwgeW91IGFzaywgc2NlcHRpY2FsbHksIOKAnEl0IGRvZXNu J3QgbWF0dGVyIGhvdyBzaWxseSB0aGUgY29ubmVjdGlvbiB0byB0aGUgbGVmdCB3b3JkIGluIGEg dGFucnUgaXMsIGl0J3Mgc3RpbGwgdHJ1ZT8gU28gSSBjb3VsZCBjYWxsIGFsbCBzZWxsZXJzIGZv ciAnJ3pkYW5pIHZlY251JycgYW5kIHRoZW4gbWFrZSB1cCBzb21lIHNpbGx5IGV4Y3VzZSB3aHkg SSB0aGluayBpdCdzIHpkYW5pLWxpa2U/4oCdCgpXZWxsIHllcywgYnV0IHRoZW4geW91J2QgYmUg YSBkaWNrLiBPciBhdCBsZWFzdCB5b3UnZCBiZSBpbnRlbnRpb25hbGx5IG1pc2xlYWRpbmcuIElu IGdlbmVyYWwsIHlvdSBzaG91bGQgdXNlIGEgdGFucnUgd2hlbiBpdCdzIG9idmlvdXMgaG93IHRo ZSBsZWZ0IHdvcmQgcmVsYXRlcyB0byB0aGUgcmlnaHQuCgoKCkF0dGVtcHQgdG8gdHJhbnNsYXRl IHRoZSBmb2xsb3dpbmc6ICcndGkgcGVseHUgemRhbmkgZG8nJwoKCgpBbnN3ZXI6IH5+Z3JleSxn cmV5OuKAnFRoYXQgaXMgYSB5ZWxsb3cgaG9tZSBmb3IgeW914oCdIEFnYWluLCB3ZSBkb24ndCBr bm93IGluIHdoaWNoIHdheSBpdCdzIHllbGxvdy4gUHJvYmFibHkgaXQncyBwYWludGVkIHllbGxv dywgYnV0IHdlIGRvbid0IGtub3cgZm9yIHN1cmUufn4KCgoKJydtaSB2ZWNudSBkdW5kYScnCgoK CkFuc3dlcjogfn5ncmV5LGdyZXk64oCcSSBzZWxsLWxpa2UgZ2l2ZeKAnS4gV2hhdCBjYW4gdGhh dCBtZWFuPyBObyBpZGVhLiBJdCBjZXJ0YWlubHkgZG9lc24ndCBtZWFuIHRoYXQgeW91IHNvbGQg c29tZXRoaW5nLCBzaW5jZSwgYnkgZGVmaW5pdGlvbiBvZiAnJ2R1bmRhJycsIHRoZXJlIGNhbiBi ZSBubyBwYXltZW50IGludm9sdmVkLiBJdCBoYXMgdG8gYmUgYSBnaXZlYXdheSwgYnV0IGJlIHNl bGwtbGlrZSBpbiBzb21lIGFzcGVjdC5+fgoKCgpBbmQgbm93IGZvciBzb21ldGhpbmcgY29tcGxl dGVseSBkaWZmZXJlbnQuIFdoYXQgaWYgSSB3YW50ZWQgdG8gc2F5IEkgc29sZCB0byBhIEdlcm1h bj8KCicnX19kb3Rjb19fJycgeDEgaXMgR2VybWFuL3JlZmxlY3RzIEdlcm1hbiBjdWx0dXJlIGlu IGFzcGVjdCB4MgoKCgpJIGNhbid0IHNheSAnJ21pIHZlY251IHpvJ2UgZG90Y28nJyBiZWNhdXNl IHRoYXQgd291bGQgbGVhdmUgdHdvIHNlbGJyaSBpbiBhIGJyaWRpLCB3aGljaCBpcyBub3QgcGVy bWl0dGVkLiBJIGNvdWxkIHNheSAnJ21pIGRvdGNvIHZlY251JycgYnV0IHRoYXQgd291bGQgYmUg dW5uZWNlc3NhcnkgdmFndWUgLSBJIGNvdWxkIHNlbGwgaW4gYSBHZXJtYW4gd2F5LiBMaWtld2lz ZSwgaWYgSSB3YW50IHRvIHNheSDigJxJIGFtIGZyaWVuZHMgd2l0aCBhbiBBbWVyaWNhbuKAnSwg d2hhdCBzaG91bGQgSSBzYXk/CgonJ19fcGVuZG9fXycnIDF4IGlzIGEgZnJpZW5kIG9mIHgyCgon J19fbWVya29fXycnIHgxIGlzIEFtZXJpY2FuL3JlZmxlY3QgVVMgY3VsdHVyZSBpbiBhc3BlY3Qg eDIKCgoKQWdhaW4sIHRoZSBvYnZpb3VzIHdvdWxkIGJlIHRvIHNheSAnJ21pIHBlbmRvIG1lcmtv JycsIGJ1dCB0aGF0IHdvdWxkIGZvcm0gYSB0YW5ydSwgbWVhbmluZyDigJxJIGFtIGZyaWVuZC1s aWtlIEFtZXJpY2Fu4oCdLCB3aGljaCBpcyB3cm9uZy4gV2hhdCB3ZSByZWFsbHkgd2FudCB0byBp cyB0byB0YWtlIHRoZSBzZWxicmkgJydtZXJrbycnIGFuZCB0cmFuc2Zvcm0gaXQgaW50byBhIHN1 bXRpIHNvIGl0IGNhbiBiZSB1c2VkIGluIHRoZSBzZWxicmkgJydwZW5kbycnLiBUaGlzIGlzIGRv bmUgYnkgdGhlIHR3byB3b3JkcyAnJ2xvJycgYW5kICcna3UnJy4KCl9fJydsbycnX18g4oCTIGdl bmVyaWMgYmVnaW4gY29udmVydCBzZWxicmkgdG8gc3VtdGkgd29yZC4gRXh0cmFjdHMgeDEgb2Yg c2VsYnJpIHRvIHVzZSBhcyBzdW10aS4KCl9fJydrdScnX18g4oCTIGVuZCBjb252ZXJ0IHNlbGJy aSB0byBzdW10aSBwcm9jZXNzLgoKCgpZb3Ugc2ltcGx5IHBsYWNlIGEgc2VsYnJpIGJldHdlZW4g dGhlc2UgdHdvIHdvcmRzLCBhbmQgaXQgdGFrZXMgYW55dGhpbmcgdGhhdCBjYW4gZmlsbCB0aGUg eDEgb2YgdGhhdCBzZWxicmkgYW5kIHR1cm5zIGl0IGludG8gYSBzdW10aS4KClNvIGZvciBpbnN0 YW5jZSwgdGhlIHRoaW5ncyB0aGF0IGNhbiBmaWxsIHpkYW5p4oCYcyB4MSBhcmUgb25seSB0aGlu Z3Mgd2hpY2ggYXJlIGhvbWVzIG9mIHNvbWVib2R5LiBTbyAnJ2xvIHpkYW5pIGt1JycgbWVhbnMg 4oCcYSBob21lIG9yIHNvbWUgaG9tZXMgZm9yIHNvbWVib2R5LuKAnSBTaW1pbGFybHksIGlmIEkg c2F5IHRoYXQgc29tZXRoaW5nIGlzIHBlbHh1LCBpdCBtZWFucyBpdCdzIHllbGxvdy4gU28gJyds byBwZWx4dSBrdScnIHJlZmVycyB0byBzb21ldGhpbmcgeWVsbG93LgoKCgpOb3cgeW91IGhhdmUg dGhlIG5lY2Vzc2FyeSBncmFtbWFyIHRvIGJlIGFibGUgdG8gc2F5IOKAnEkgYW0gZnJpZW5kcyB3 aXRoIGFuIEFtZXJpY2FuLuKAnSBIb3c/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBwZW5k byBsbyBtZXJrbyBrdScnfn4KCgoKVGhlcmUgaXMgYSBnb29kIHJlYXNvbiB3aHkgdGhlICcna3Un JyBpcyBuZWNlc3NhcnkuIFRyeSB0byB0cmFuc2xhdGUg4oCcQSBHZXJtYW4gc2VsbHMgdGhpcyB0 byBtZeKAnQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbG8gZG90Y28ga3UgdmVjbnUgdGkgbWkn JyBJZiB5b3UgbGVhdmUgb3V0IHRoZSBrdSwgeW91IGRvIG5vdCBnZXQgYSBicmlkaSwgYnV0IHNp bXBseSB0aHJlZSBzdW10aS4gU2luY2UgbG/igKZrdSBjYW5ub3QgY29udmVydCBicmlkaSwgdGhl IHRpIGlzIGZvcmNlZCBvdXRzaWRlIHRoZSBzdW10aSwgdGhlIGxvLWNvbnN0cnVjdCBpcyBmb3Jj ZWQgdG8gY2xvc2UgYW5kIGl0IHNpbXBseSBiZWNvbWVzIHRoZSB0aHJlZSBzdW10aSBvZiAnJ2xv IGRvdGNvIHZlY251IHtrdX0nJywgJyd0aScnIGFuZCAnJ21pJycufn4KCgoKWW91IGFsd2F5cyBo YXZlIHRvIGJlIGNhcmVmdWwgd2l0aCBqdWZyYSBsaWtlICcnbG8gemRhbmkga3UgcGVseHUnJy4g SWYgdGhlICcna3UnJyBpcyBsZWZ0IG91dCB0aGUgY29udmVyc2lvbiBwcm9jZXNzIGRvZXMgbm90 IGVuZCwgYW5kIGl0IHNpbXBseSBiZWNvbWVzIG9uZSBzdW10aSwgbWFkZSBmcm9tIHRoZSB0YW5y dSAnJ3pkYW5pIHBlbHh1JycgYW5kIHRoZW4gY29udmVydGVkIHdpdGggJydsbycnLgoKCgoKCiEh TG9qYmFuIExlc3NvbnMg4oCTIGxlc3NvbiBmb3VyIChhdHRpdHVkaW5hbHMpCgpBbm90aGVyIGNv bmNlcHQgd2hpY2ggY2FuIGJlIHVuZmFtaWxpYXIgdG8gRW5nbGlzaCBzcGVha2VycyBpcyB0aGF0 IG9mIGF0dGl0dWRpbmFscy4gQXR0aXR1ZGluYWxzIGFyZSB3b3JkcyB0aGF0IGV4cHJlc3MgZW1v dGlvbnMgZGlyZWN0bHkuIFRoZSBpZGVhIG9mIGF0dGl0dWRpbmFscyBvcmlnaW5hdGVkIGluIHRo ZSBmZW1pbmlzdCBjb25zdHJ1Y3RlZCBsYW5ndWFnZSBMYWRhbiwgc3VwcG9zZWRseSB0byBlbmFi bGUgdHJ1ZSBmZW1hbGUgZW1vdGlvbnMuIFRoZSBpZGVhIHdhcyB0aGF0IGZlbWFsZSBlbW90aW9u YWwgZXhwcmVzc2lvbiB3YXMgaGluZGVyZWQgYnkgbWFsZSBkb21pbmF0ZWQgbGFuZ3VhZ2UsIGFu ZCBpZiBvbmx5IHRoZXkgd2VyZSBhYmxlIHRvIGJlIGV4cHJlc3NlZCBtb3JlIGZyZWVseSwgdGhp cyB3b3VsZCBlbXBvd2VyIHdvbWVuIHRocm91Z2ggbGliZXJhdGlvbiBvZiB0aGUgbGFuZ3VhZ2Uu CgpJbiBMb2piYW4sIHRoZXJlIGlzIG5vIHN1Y2ggYWdlbmRhLCBhbmQgYXR0aXR1ZGluYWxzIG1v c3QgcHJvYmFibHkgaGF2ZSBiZWVuIGRlc2lnbmVkIGludG8gdGhlIGxhbmd1YWdlIGJlY2F1c2Ug dGhleSB0dXJuZWQgb3V0IHRvIGJlIGluY3JlZGlibHkgYXdlc29tZSBhbmQgdXNlZnVsLiBUaGV5 IGFsbCBoYXZlIGEgc28tY2FsbGVkIGZyZWUgZ3JhbW1hciwgd2hpY2ggbWVhbnMgdGhhdCB0aGV5 IGNhbiBhcHBlYXIgYWxtb3N0IGFueXdoZXJlIHdpdGhpbiBicmlkaSB3aXRob3V0IGRpc3J1cHRp bmcgdGhlIGJyaWRpJ3MgZ3JhbW1hciBvciBhbnkgZ3JhbW1hdGljYWwgY29uc3RydWN0cy4KCklu IExvamJhbiBncmFtbWFyLCBhbiBhdHRpdHVkaW5hbCBhcHBsaWVzIHRvIHRoZSBwcmV2aW91cyB3 b3JkLiBJZiB0aGF0IHByZXZpb3VzIHdvcmQgaXMgYSB3b3JkIHdoaWNoIGJlZ2lucyBhIGNvbnN0 cnVjdCAobGlrZSAnJy5pJycgb3IgJydsbycnKSwgaXQgYXBwbGllcyB0byB0aGUgZW50aXJlIGNv bnN0cnVjdC4gTGlrZXdpc2UsIGlmIHRoZSBhdHRpdHVkaW5hbCBmb2xsb3dzIGEgd29yZCB3aGlj aCBlbmRzIGEgY29uc3RydWN0IGxpa2UgJydrdScnLCBpdCBhcHBsaWVzIHRvIHRoZSBlbmRlZCBj b25zdHJ1Y3QuCgoKCkxldCdzIGhhdmUgdHdvIGF0dGl0dWRpbmFscyB0byBtYWtlIHNvbWUgZXhh bXBsZXM6CgpfXycnLnVpJydfXzogYXR0aXR1ZGluYWw6IHNpbXBsZSBwdXJlIGVtb3Rpb246IGhh cHBpbmVzcyAtIHVuaGFwcGluZXNzCgpfXycnemEnYScnX186IGF0dGl0dWRpbmFsOiBldmlkZW50 aWFsOiBJIGRpcmVjdGx5IG9ic2VydmUKCgoKTm90ZSB0aGF0IGluIHRoZSBkZWZpbml0aW9uIG9m ICcnLnVpJycsIHRoZXJlIGFyZSBsaXN0ZWQgdHdvIGVtb3Rpb25zLCBoYXBwaW5lc3MgYW5kIHVu aGFwcGluZXNzLiBUaGlzIG1lYW5zIHRoYXQgJycudWknJyBpcyBkZWZpbmVkIGFzIGhhcHBpbmVz cywgd2hpbGUgaXRzIOKAnG5lZ2F0aW9u4oCdLCBtZWFucyB1bmhhcHBpbmVzcy4g4oCcTmVnYXRp b27igJ0gbWlnaHQgYmUgdGhlIHdyb25nIHdvcmQgaGVyZS4gVGVjaG5pY2FsbHksIHRoZSBvdGhl ciBkZWZpbml0aW9uIG9mICcnLnVpJycgaXMgYW5vdGhlciBjb25zdHJ1Y3QsICcnLnVpIG5haScn LiBNb3N0IG9mIHRoZSB0aW1lLCB0aGUgc2Vjb25kIGRlZmluaXRpb24gb2YgYXR0aXR1ZGluYWxz IC0gdGhlIG9uZXMgc3VmZml4ZWQgd2l0aCAnJ25haScnIC0gcmVhbGx5IGlzIHRoZSBuZWdhdGlv biBvZiB0aGUgYmFyZSBhdHRpdHVkaW5hbC4gT3RoZXIgdGltZXMsIG5vdCBzbyBtdWNoLgoKX18n J25haScnX18gbWlzYy4gbmVnYXRpb24gLSBhdHRhY2hlZCB0byBhdHRpdHVkaW5hbHMsIGl0IGNo YW5nZXMgdGhlIG1lYW5pbmcgaW50byB0aGUgYXR0aXR1ZGluYWwncyAibmVnYXRpb24iCgoKCkFu ZCBzb21lIG1vcmUgc2VsYnJpLCBqdXN0IGZvciB0aGUgaGVjayBvZiBpdDoKCl9fJydjaXRrYScn X18g4oCTIHgxIGVhdHMgeDIKCl9fJydwbGlzZScnX18g4oCTIHgxIGlzIGFuIGFwcGxlIG9mIHN0 cmFpbi90eXBlIHgyCgoKClRoZSBzZW50ZW5jZSAnJ2RvIGNpdGthIGxvIHBsaXNlIGt1IC51aScn LCBtZWFucyDigJxZb3UgZWF0IGFuIGFwcGxlLCB5YXkh4oCdIChlc3BlY2lhbGx5IGV4cHJlc3Np bmcgdGhhdCBpdCBpcyB0aGUgX19hcHBsZV9fIHRoYXQgdGhlIHNwZWFrZXIgaXMgaGFwcHkgYWJv dXQsIG5vdCB0aGUgZWF0aW5nLCBvciB0aGUgZmFjdCB0aGF0IGl0IHdhcyB5b3UuKSBJbiB0aGUg c2VudGVuY2UgJydkbyB6YSdhIGNpdGthIGxvIHBsaXNlIGt1JycsIHRoZSBzcGVha2VyIGRpcmVj dGx5IG9ic2VydmVzIHRoYXQgaXQgaXMgaW5kZWVkIHRoZSBfX+KAnHlvdeKAnV9fLCB3aG8gZWF0 cyBhbiBhcHBsZSBhcyBvcHBvc2VkIHRvIHNvbWVvbmUgZWxzZS4KCgoKSWYgYW4gYXR0aXR1ZGlu YWwgaXMgcGxhY2VkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGJyaWRpLCBpdCBpcyB1bmRlcnN0 b29kIHRvIGFwcGx5IHRvIGFuIGV4cGxpY2l0IG9yIGltcGxpY2l0ICcnLmknJywgdGh1cyBhcHBs eWluZyB0byB0aGUgZW50aXJlIGJyaWRpOgoKJycudWkgemEnYSBkbyBkdW5kYSBsbyBwbGlzZSBr dSBtaScnIOKAkyDigJxZYXksIEkgb2JzZXJ2ZSB0aGF0IHlvdSBnaXZlIGFuL3NvbWUgYXBwbGUg dG8gbWUh4oCdCgoKCicnbWkgdmVjbnUgLnVpIG5haSBsbyB6ZGFuaSBrdScnIOKAnEkgc2VsbCAo d2hpY2ggc3Vja3MhKSBhIGhvbWXigJ0uCgoKClRyeSBpdCBvdXQgd2l0aCBhIGZldyBleGFtcGxl cy4gRmlyc3QsIHRob3VnaCwgaGVyZSBhcmUgc29tZSBtb3JlIGF0dGl0dWRpbmFsczoKCl9fJycu dSd1JydfXyBhdHRpdHVkaW5hbDogc2ltcGxlIHB1cmUgZW1vdGlvbjogZ3VpbHQgLSByZW1vcnNl bGVzc25lc3MgLSBpbm5vY2VuY2UuCgpfXycnLm9pJydfXyBhdHRpdHVkaW5hbDogY29tcGxleCBw dXJlIGVtb3Rpb246IGNvbXBsYWludCAtIHBsZWFzdXJlLgoKX18nJy5pdScnX18gYXR0aXR1ZGlu YWw6IG1pc2NlbGxhbmVvdXMgcHVyZSBlbW90aW9uOiBsb3ZlIC0gaGF0ZS4KCgoKTG9vayBhdCB0 aGF0LCB0d28gd29yZHMgd2l0aCB0aHJlZSBlbW90aW9ucyBpbiB0aGUgZGVmaW5pdGlvbiEgVGhl IG1pZGRsZSBvbmUgaXMgYWNjZXNzZWQgYnkgc3VmZml4aW5uZyB3aXRoICcnY3UnaScnLiBJdCdz IGNvbnNpZGVyZWQgdGhlIG1pZHBvaW50IG9mIHRoZSBlbW90aW9uLgoKX18nJ2N1J2knJ19fIGF0 dGl0dWRpbmFsIG1pZHBvaW50IHNjYWxhcjogYXR0YWNoIHRvIGF0dGl0dWRpbmFsIHRvIGNoYW5n ZSB0aGUgbWVhbmluZyB0byB0aGUgIm1pZHBvaW50IiBvZiB0aGUgZW1vdGlvbi4KCgoKVHJ5IHNh eWluZyDigJxJIGdpdmUgc29tZXRoaW5nIHRvIGEgR2VybWFuLCB3aG8gSSBsb3Zl4oCdCgoKCkFu c3dlcjogfn5ncmV5LGdyZXk6JydtaSBkdW5kYSBmaSBsbyBkb3RjbyBrdSAuaXUnJyBvciAnJ3pv J2UnJyBpbnN0ZWFkIG9mICcnZmknJ35+CgoKCk5vdyDigJxBYWgsIEkgZWF0IGEgeWVsbG93IGFw cGxl4oCdCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnLm9pIG5haSBtaSBjaXRrYSBsbyBwZWx4dSBw bGlzZSBrdScnfn4KCgoKTGV0J3MgaGF2ZSBhbm90aGVyIGF0dGl0dWRpbmFsIG9mIGEgZGlmZmVy ZW50IGtpbmQgdG8gaWxsdXN0cmF0ZSBzb21ldGhpbmcgcGVjdWxpYXI6CgonJy5laScnIEF0dGl0 dWRpbmFsOiBjb21wbGV4IHByb3Bvc2l0aW9uYWwgZW1vdGlvbjogb2JsaWdhdGlvbiAtIGZyZWVk b20uCgoKClNvLCBxdWl0ZSBlYXN5OiDigJxJIGhhdmUgdG8gZ2l2ZSB0aGUgYXBwbGUgYXdheeKA nSBpcyAnJ21pIGR1bmRhIC5laSBsbyBwbGlzZSBrdScnLCByaWdodD8gSXQgaXMsIGFjdHVhbGx5 ISBXaGVuIHlvdSB0aGluayBhYm91dCBpdCwgdGhhdCdzIHdlaXJkLiBXaHkgaXMgaXQgdGhhdCBh bGwgdGhlIG90aGVyIGF0dGl0dWRpbmFscyB3ZSBoYXZlIHNlZW4gc28gZmFyIGV4cHJlc3NlcyB0 aGUgc3BlYWtlcidzIGZlZWxpbmcgYWJvdXQgdGhlIGJyaWRpLCBidXQgdGhpcyBvbmUgYWN0dWFs bHkgY2hhbmdlcyB3aGF0IHRoZSBicmlkaSBtZWFucz8gU3VyZWx5LCBieSBzYXlpbmcg4oCcSSBo YXZlIHRvIGdpdmUgdGhlIGFwcGxlIGF3YXnigJ0sIHdlIHNheSBub3RoaW5nIGFib3V0IHdoZXRo ZXIgdGhlIGFwcGxlIGFjdHVhbGx5IGlzIGJlaW5nIGdpdmVuIGF3YXkuIElmIEkgaGFkIHVzZWQg JycudWknJywgaG93ZXZlciwgSSB3b3VsZCBhY3R1YWxseSBoYXZlIHN0YXRlZCB0aGF0IEkgZ2F2 ZSB0aGUgYXBwbGUgYXdheSwgYW5kIHRoYXQgSSB3YXMgaGFwcHkgYWJvdXQgaXQuIFdoYXQncyB0 aGF0IGFsbCBhYm91dD8KCgoKVGhpcyBpc3N1ZSwgZXhhY3RseSBob3cgYXR0aXR1ZGluYWxzIGNo YW5nZSB0aGUgY29uZGl0aW9ucyBvbiB3aGljaCBhIGJyaWRpIGlzIHRydWUsIGlzIGEgc3ViamVj dCBvZiBhIG1pbm9yIGRlYmF0ZS4gVGhlIG9mZmljaWFsLCDigJx0ZXh0Ym9va+KAnSBydWxlLCB3 aGljaCBwcm9iYWJseSB3b24ndCBiZSBjaGFuZ2VkLCBpcyB0aGF0IHRoZXJlIGlzIGEgZGlzdGlu Y3Rpb24gYmV0d2VlbiDigJxwdXJlIGVtb3Rpb25z4oCdIGFuZCDigJxwcm9wb3NpdGlvbmFsIGVt b3Rpb25z4oCdLiBPbmx5IHByb3Bvc3Rpb25hbCBlbW90aW9ucyBjYW4gY2hhbmdlIHRoZSB0cnV0 aCBjb25kaXRpb25zLCB3aGlsZSBwdXJlIGVtb3Rpb25zIGNhbm5vdC4gSW4gb3JkZXIgdG8gZXhw cmVzcyBhIHByb3Bvc2l0aW9uYWwgZW1vdGlvbmFsIGF0dGl0dWRpbmFsIHdpdGhvdXQgY2hhbmdp bmcgdGhlIHRydXRoIHZhbHVlIG9mIHRoZSBicmlkaSwgeW91IGNhbiBqdXN0IHNlcGFyYXRlIGl0 IGZyb20gdGhlIGJyaWRpIHdpdGggJycuaScnLiBUaGVyZSBpcyBhbHNvIGEgd29yZCBmb3IgZXhw bGljaXRseSBjb25zZXJ2aW5nIG9yIGNoYW5naW5nIHRoZSB0cnV0aCBjb25kaXRpb25zIG9mIGEg YnJpZGk6CgoKCl9fJydkYSdpJydfXyBhdHRpdHVkaW5hbDogZGlzY3Vyc2l2ZTogc3VwcG9zaW5n IC0gaW4gZmFjdAoKU2F5aW5nICcnZGEnaScnIGluIGEgYnJpZGkgY2hhbmdlcyB0aGUgdHJ1dGgg Y29uZGl0aW9ucyB0byBoeXBvdGhldGljYWwsIHdoaWNoIGlzIHRoZSBkZWZhdWx0IHVzaW5nIHBy b3Bvc2l0aW9uYWwgYXR0aXR1ZGluYWxzLiBTYXlpbmcgJydkYSdpIG5haScnIGNoYW5nZXMgdGhl IHRydXRoIGNvbmRpdGlvbiB0byB0aGUgbm9ybWFsLCB3aGljaCBpcyBkZWZhdWx0IHVzaW5nIHB1 cmUgYXR0aXR1ZGluYWxzLgoKCgpTbywgd2hhdCdzIHR3byB3YXlzIG9mIHNheWluZyDigJxJIGdp dmUgdGhlIGFwcGxlIGF3YXnigJ0/IChhbmQgZmVlbCBvYmxpZ2F0aW9uIGFib3V0IGl0KQoKCgpB bnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgZHVuZGEgbG8gcGxpc2UgLmkgLmVpJycgIGFuZCAnJ21p IGR1bmRhIGRhJ2kgbmFpIC5laSBsbyBwbGlzZScnfn4KCgoKVGhlIGZlZWxpbmcgb2YgYW4gYXR0 aXR1ZGluYWwgY2FuIGJlIHN1YnNjcmliZWQgdG8gc29tZW9uZSBlbHNlIHVzaW5nICcnZGFpJycu IFVzdWFsbHkgaW4gb3JkaW5hcnkgc3BlZWNoLCB0aGUgYXR0aXR1ZGluYWwgaXMgc3Vic2NyaWJl ZCB0byB0aGUgbGlzdGVuZXIsIGJ1dCBpdCBkb2Vzbid0IGhhdmUgdG8gYmUgc28uIEFsc28sIGJl Y2F1c2UgdGhlIHdvcmQgaXMgZ2xvc3NlZCDigJxlbXBhdGh54oCdIChmZWVsaW5nIG90aGVycyBl bW90aW9ucyksIHNvbWUgTG9qYmFuaXN0cyBtaXN0YWtlbmx5IHRoaW5rIHRoYXQgdGhlIHNwZWFr ZXIgbXVzdCBzaGFyZSB0aGUgZW1vdGlvbiBiZWluZyBzdWJzY3JpYmVkIHRvIG90aGVycy4KCl9f JydkYWknJ19fIGF0dGl0dWRpbmFsIG1vZGlmeWVyOiBFbXBhdGh5IChzdWJzY3JpYmVzIGF0dGl0 dWRpbmFsIHRvIHNvbWVvbmUgZWxzZSwgdW5zcGVjaWZpZWQpCgpFeGFtcGxlOiAnJ3UnaSAub2kg ZGFpIGNpdGthIHRpJycgLSDigJxIYSBoYSwgdGhpcyB3YXMgZWF0ZW4hIFRoYXQgbXVzdCBoYXZl IGh1cnQh4oCdCgoKCldoYXQgb2Z0ZW4gdXNlZCBwaHJhc2UgY291bGQgJycub2kgdSdpIGRhaScn IG1lYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcT3VjaCwgdmVyeSBmdW5ueS7igJ1+fgoK CgpBbmQgYW5vdGhlciBvbmUgdG8gdGVzdCB5b3VyIGtub3dsZWRnZTogVHJ5IHRvIHRyYW5zbGF0 ZSDigJxIZSB3YXMgc29ycnkgaGUgc29sZCBhIGhvbWXigJ0gKHJlbWVtYmVyaW5nLCB0aGF0IHRl bnNlIGlzIGltcGxpZWQgYW5kIG5lZWQgbm90IGJlIHNwZWNpZmllZC4gQWxzbywg4oCcaGXigJ0g Y291bGQgYmUgb2J2aW91cyBmcm9tIGNvbnRleHQpCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6Jyd1 J3UgZGFpIHZlY251IGxvIHpkYW5pIGt1Jyd+fgoKCgpMYXN0bHksIHRoZSBpbnRlbnNpdHkgb2Yg YW4gYXR0aXR1ZGluYWwgY2FuIGJlIHNwZWNpZmllZCB1c2luZyBjZXJ0YWluIHdvcmRzLiBUaGVz ZSBjYW4gYmUgdXNlZCBhZnRlciBhbiBhdHRpdHVkaW5hbCwgb3IgYW4gYXR0aXR1ZGluYWwgd2l0 aCAnJ25haScnIG9yICcnY3UnaScnIHN1ZmZpeGVkLiBJdCdzIGxlc3MgY2xlYXIgd2hhdCBoYXBw ZW5zIHdoZW4geW91IGF0dGFjaCBpdCB0byBvdGhlciB3b3JkcywgbGlrZSBhIHNlbGJyaSwgbXVz dCBpdCdzIG1vc3RseSB1bmRlcnN0b29kIGFzIGludGVuc2lmeWluZyBvciB3ZWFrZW5pbmcgdGhl IHNlbGJyaSBpbiBzb21lIHVuc3BlY2lmaWVkIHdheToKCnx8IE1vZGlmeWluZyB3b3JkICB8IElu dGVuc2l0eSAgCgogY2FpfCAgIEV4dHJlbWUKCiBzYWl8ICAgU3Ryb25nCgogKG5vbmUpfCAgIFVu c3BlY2lmaWVkIChtZWRpdW0pCgogcnUnZSAgfCAgIFdlYWt8fAoKCgpXaGF0IGVtb3Rpb24gaXMg ZXhwcmVzc2VkIHVzaW5nICcnLnUnaSBuYWkgc2FpJycgPwoKX18nJy51J2knJ19fOiBhdHRpdHVk aW5hbDogc2ltcGxlIHB1cmUgZW1vdGlvbjogYW11c2VtZW50IC0gd2VhcmluZXNzCgoKCkFuc3dl cjogfn5ncmV5LGdyZXk6U3Ryb25nIHdlYXJpbmVzc35+CgoKCkFuZCBob3cgd291bGQgeW91IGV4 cHJlc3MgdGhhdCB5b3UgYXJlIG1pbGRseSByZW1vcnNlbGVzcz8KCgoKQW5zd2VyOiB+fmdyZXks Z3JleTonJy51J3UgY3UnaSBydSdlJyd+fgoKCgohIUxvamJhbiBsZXNzb25zIOKAkyBsZXNzb24g Zml2ZSAoU0UpCgpCZWZvcmUgd2UgdmVudHVyZSBpbnRvIHRoZSB0ZXJyaXRvcnkgb2YgbW9yZSBj b21wbGV4IGNvbnN0cnVjdHMsIHlvdSBzaG91bGQgbGVhcm4gYW5vdGhlciBtZWNoYW5pc20gZm9y IHJlb3JkZXJpbmcgdGhlIHN1bXRpIG9mIGEgc2VsYnJpLiBUaGlzLCBhcyB3ZSB3aWxsIHNob3cs IGlzIHZlcnkgdXNlZnVsIGZvciBtYWtpbmcgZGVzY3JpcHRpb24tbGlrZSBzdW10aSAodGhlIGtp bmQgb2Ygc3VtdGkgd2l0aCAnJ2xvJycpLgoKQ29uc2lkZXIgdGhlIHNlbnRlbmNlIOKAnEkgZWF0 IGEgZ2lmdOKAnSwgd2hpY2ggbWlnaHQgYmUgYXBwcm9wcmlhdGUgaWYgdGhhdCBnaWZ0IGlzIGFu IGFwcGxlLiBUbyB0cmFuc2xhdGUgdGhpcywgaXQgd291bGQgc2VlbSBuYXR1cmFsIHRvIGxvb2sg dXAgYSBzZWxicmkgbWVhbmluZyDigJxnaWZ04oCdIGJlZm9yZSBjb250aW51aW5nLiBIb3dldmVy LCBpZiBvbmUgbG9va3MgY2FyZWZ1bGx5IGF0IHRoZSBkZWZpbml0aW9uIG9mICcnZHVuZGEnJywg eDEgZ2l2ZXMgeDIgdG8geDMsIG9uZSByZWFsaXplcyB0aGF0IHRoZSB4MiBvZiAnJ2R1bmRhJycg aXMgc29tZXRoaW5nIGdpdmVuIOKAkyBhIGdpZnQuCgpTbywgdG8gZXhwcmVzcyB0aGF0IHNlbnRl bmNlLCB3ZSBjYW4ndCBzYXkgJydtaSBjaXRrYSBsbyBkdW5kYSBrdScnLCBiZWNhdXNlICcnbG8g ZHVuZGEga3UnJyB3b3VsZCBiZSB0aGUgeDEgb2YgJydkdW5kYScnLCB3aGljaCBpcyBhIGRvbm9y IG9mIGEgZ2lmdC4gQ2FubmliYWxpc20gYXNpZGUsIHdlIGRvbid0IHdhbnQgdG8gc2F5IHRoYXQu IFdoYXQgd2Ugd2FudCBpcyBhIHdheSB0byBleHRyYWN0IHRoZSB4MiBvZiBhIHNlbGJyaS4KClRo aXMgaXMgb25lIGV4YW1wbGUgd2hlcmUgaXQgaXMgdXNlZnVsIHRvIHVzZSB0aGUgd29yZCAnJ3Nl JycuIFdoYXQgJydzZScnIGRvZXMgaXMgdG8gbW9kaWZ5IGEgc2VsYnJpIHN1Y2ggdGhhdCB0aGUg eDEgYW5kIHgyIG9mIHRoYXQgc2VsYnJpIHRyYWRlIHBsYWNlcy4gVGhlIGNvbnN0cnVjdCBvZiAn J3NlJycgKyBzZWxicmkgaXMgb24gaXRzIG93biBjb25zaWRlcmVkIG9uZSBzZWxicmkuIExldCdz IHRyeSB3aXRoIGFuIG9yZGluYXJ5IHNlbnRlbmNlOgoKX18nJ2ZhbnZhJydfXyA9IOKAnHgxIHRy YW5zbGF0ZXMgeDIgdG8gbGFuZ3VhZ2UgeDMgZnJvbSBsYW5ndWFnZSB4NCB3aXRoIHJlc3VsdCBv ZiB0cmFuc2xhdGlvbiB4NeKAnQoKJyd0aSBzZSBmYW52YSBtaScnID0gJydtaSBmYW52YSB0aScn CgpUaGlzIGlzIHRyYW5zbGF0ZWQgYnkgbWUgKD0gSSB0cmFuc2xhdGUgdGhpcykuIE9mdGVuLCBi dXQgbm90IGFsd2F5cywgYnJpZGkgd2l0aCAnJ3NlJyctY29uc3RydWN0cyBhcmUgdHJhbnNsYXRl ZCB0byBzZW50ZW5jZXMgd2l0aCB0aGUgcGFzc2l2ZSB2b2ljZSwgc2luY2UgdGhlIHgxIGlzIG9m dGVuIHRoZSBvYmplY3QgdGFraW5nIGFjdGlvbi4KCicnc2UnJyBoYXMgaXRzIG93biBmYW1pbHkg b2Ygd29yZHMuIEFsbCBvZiB0aGVtIHN3YXAgYSBkaWZmZXJlbnQgcGxhY2Ugd2l0aCB0aGUgeDEu Cgp8fHNlCXxzd2FwIHgxIGFuZCB4MgoKdGUJfHN3YXAgeDEgYW5kIHgzCgp2ZQl8c3dhcCB4MSBh bmQgeDQKCnhlCXxzd2FwIHgxIGFuZCB4NXx8CgpOb3RlIHRoYXQgcywgdCwgdiwgYW5kIHggYXJl IGNvbnNlY3V0aXZlIGNvbnNvbmFudHMgaW4gdGhlIGxvamJhbiBhbHBoYWJldC4KCgoKU286IFVz aW5nIHRoaXMga25vd2xlZGdlLCB3aGF0IHdvdWxkICcndGkgeGUgZmFudmEgdGknJyBtZWFuPwoK CgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRoaXMgaXMgYSB0cmFuc2xhdGlvbiBvZiB0aGlz4oCd IChvciAnJ2ZhbnZhIHRpIGZ1IHRpJycpfn4KCgoKJydzZScnIGFuZCBpdHMgZmFtaWx5IGNhbiBv ZiBjb3Vyc2UgYmUgY29tYmluZWQgd2l0aCAnJ2ZhJycgYW5kIGl0cyBmYW1pbHkuIFRoZSByZXN1 bHQgY2FuIGJlIHZlcnkgY29uZnVzaW5nIGluZGVlZCwgaWYgeW91IHdpc2ggdG8gbWFrZSBpdCBz bzoKCl9fJydrbGFtYScnX18gPSDigJx4MSB0cmF2ZWxzL2dvZXMgdG8geDIgZnJvbSB4MyB2aWEg eDQgdXNpbmcgeDUgYXMgdHJhbnNwb3J0YXRpb24gZGV2aWNl4oCdCgonJ2Z1IGxvIHpkYW5pIGt1 IHRlIGtsYW1hIGZlIGRvIHRpIGZhIG1pJycgPSAnJ21pIHRlIGtsYW1hIGRvIHRpIGxvIHpkYW5p IGt1JycgYW5kIHNpbmNlICcndGUnJyBleGNoYW5nZXMgeDEgYW5kIHgzOiA9ICcndGkga2xhbWEg ZG8gbWkgbG8gemRhbmkga3UnJwoK4oCcVGhpcyB0cmF2ZWxzIHRvIHlvdSBmcm9tIG1lIHZpYSBh IGhvbWUu4oCdIE9mIGNvdXJzZSwgbm8gb25lIHdvdWxkIG1ha2Ugc3VjaCBhIHNlbnRlbmNlIGV4 Y2VwdCB0byBjb25mdXNlIHBlb3BsZSwgb3IgY3J1ZWxseSB0byB0ZXN0IHRoZWlyIHVuZGVyc3Rh bmRpbmcgb2YgTG9qYmFuIGdyYW1tYXIuCgpBbmQgdGh1cywgd2UgaGF2ZSBjb21lIHRvIHRoZSBw b2ludCB3aGVyZSB3ZSBjYW4gc2F5IOKAnEkgZWF0IGEgZ2lmdC7igJ0uIFNpbXBseSBleGNoYW5n ZSB0aGUgc3VtdGkgcGxhY2VzIG9mICcnZHVuZGEnJyB0byBnZXQgdGhlIGdpZnQgdG8gYmUgeDEs IHRoZW4gZXh0cmFjdCB0aGlzIG5ldyB4MSB3aXRoICcnbG8nJy4uLicna3UnJy4gU28sIGhvdyB3 b3VsZCB5b3Ugc2F5IGl0PwoKT25lIChwb3NzaWJsZSkgYW5zd2VyOiB+fmdyZXksZ3JleTonJ21p IGNpdGthIGxvIHNlIGR1bmRhIGt1Jyd+fgoKVGhpcyBzaG93cyBvbmUgb2YgdGhlIG1hbnkgdXNl cyBmb3IgJydzZScnIGFuZCBpdHMgZmFtaWx5LgoKCgoKCiEhTG9qYmFuIGxlc3NvbnMg4oCTIGxl c3NvbiBzaXggKGFic3RyYWN0aW9ucykKClNvIGZhciB3ZSBoYXZlIG9ubHkgZXhwcmVzc2VkIHNp bmdsZSBzZW50ZW5jZXMgb25lIGF0IGEgdGltZS4gVG8gZXhwcmVzcyBtb3JlIGNvbXBsZXggdGhp bmdzLCBob3dldmVyLCB5b3Ugb2Z0ZW4gbmVlZCBzdWJvcmRpbmF0ZSBzZW50ZW5jZXMuIEx1Y2tp bHksIHRoZXNlIGFyZSBtdWNoIGVhc2llciBpbiBMb2piYW4gdGhhbiB3aGF0IG9uZSB3b3VsZCBl eHBlY3QuCgpXZSBjYW4gYmVnaW4gd2l0aCBhbiBleGFtcGxlIHRvIGRlbW9uc3RyYXRlIHRoaXM6 IOKAnEkgYW0gaGFwcHkgdGhhdCB5b3UgYXJlIG15IGZyaWVuZC7igJ0gSGVyZSwgdGhlIG1haW4g YnJpZGkgaXMg4oCcSSBhbSBoYXBweSB0aGF0IFgu4oCdLCBhbmQgdGhlIHN1Yi1icmlkaSBpcyDi gJxZb3UgYXJlIG15IGZyaWVuZC7igJ0gTG9va2luZyBhdCB0aGUgZGVmaW5pdGlvbiBmb3Ig4oCc aGFwcHnigJ0sIHdoaWNoIGlzICcnZ2xla2knJzoKCl9fJydnbGVraScnX18g4oCceDEgaXMgaGFw cHkgYWJvdXQgeDIgKGV2ZW50L3N0YXRlKeKAnQoKT25lIHNlZXMgdGhhdCB0aGUgeDIgbmVlZHMg dG8gYmUgYW4gZXZlbnQgb3IgYSBzdGF0ZS4gVGhpcyBpcyBuYXR1cmFsLCBiZWNhdXNlIG9uZSBj YW5ub3QgYmUgaGFwcHkgYWJvdXQgYW4gb2JqZWN0IGluIGl0c2VsZiwgb25seSBhYm91dCBzb21l IHN0YXRlIHRoZSBvYmplY3QgaXMgaW4uIEJ1dCBhbGFzISBPbmx5IGJyaWRpIGNhbiBleHByZXNz IGEgc3RhdGUgb3IgYW4gZXZlbnQsIGFuZCBvbmx5IHN1bXRpIGNhbiBmaWxsIHRoZSB4MiBvZiAn J2dsZWtpJychCgpBcyB5b3UgbWlnaHQgaGF2ZSBndWVzc2VkLCB0aGVyZSBpcyBhIHNvbHV0aW9u LiBUaGUgd29yZHMgJydzdSd1JycuLi4nJ2tlaScnIGlzIGEgZ2VuZXJpYyDigJxjb252ZXJ0IGJy aWRpIHRvIHNlbGJyaeKAnSBmdW5jdGlvbiwgYW5kIHdvcmtzIGp1c3QgbGlrZSAnJ2xvJyfigKYn J2t1JycuCgpfXycnc3UndScnX18geDEgaXMgYW4gYWJzdHJhY3Rpb24gb2Yge2JyaWRpfSBvZiB0 eXBlIHgyCgpfXycna2VpJydfXyBlbmQgYWJzdHJhY3Rpb24KCgoKRXhhbXBsZToKCl9fJydtZWxi aScnX18geDEgaXMgYmVhdXRpZnVsIHRvIHgyLgoKX18nJ2RhbnN1JydfXyB4MSBkYW5jZXMgdG8g YWNjb21wYW5pbWVudC9tdXNpYy9yaHl0aG0geDIuCgonJ21lbGJpIHN1J3UgZGFuc3Uga2VpJycg LSDigJxCZWF1dGlmaWwgZGFuY2luZ+KAnS/igJxCZWF1dGlmaWwgZGFuY2XigJ0KCgoKSXQncyB1 c3VhbGx5IGhhcmQgdG8gZmluZCBnb29kIHVzZXMgb2YgYSBicmlkaSBhcyBhIHNlbGJyaS4gSG93 ZXZlciwgc2luY2UgJydzdSd1IEJSSURJIGtlaScnIGlzIGEgc2VsYnJpLCBvbmUgY2FuIGNvbnZl cnQgaXQgdG8gYSBzdW10aSB1c2luZyAnJ2xvJycuLi4nJ2t1JycuCgpOb3cgd2UgaGF2ZSB0aGUg ZXF1aXBtZW50IHRvIGV4cHJlc3Mg4oCcSSBhbSBoYXBweSB0aGF0IHlvdSBhcmUgbXkgZnJpZW5k 4oCdLiBUcnkgaXQgb3V0IQoKX18nJ3BlbmRvJydfXyDigJx4MSBpcyBhIGZyaWVuZCBvZiB4MuKA nQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgZ2xla2kgbG8gc3UndSBkbyBwZW5kbyBtaSBr ZWkga3UnJ35+CgoKCkhvd2V2ZXIsICcnc3UndScn4oCmJydrZWknJyBkb2VzIG5vdCBzZWUgbXVj aCB1c2UuIFBlb3BsZSBwcmVmZXIgdG8gdXNlIHRoZSBtb3JlIHNwZWNpZmljIHdvcmRzICcnbnUn J+KApicna2VpJycgYW5kICcnZHUndScn4oCmJydrZWknJy4gVGhleSB3b3JrIHRoZSBzYW1lIHdh eSwgYnV0IG1lYW4gc29tZXRoaW5nIGRpZmZlcmVudC4gJydudeKApmtlaScnIHRyZWF0cyB0aGUg YnJpZGkgaW4gYmV0d2VlbiBhcyBhbiBldmVudCBvciBzdGF0ZSwgYW5kICcnZHUndeKApmtlaScn IHRyZWF0cyBpdCBhcyBhbiBhYnN0cmFjdCBicmlkaSwgZm9yIGV4cHJlc3NpbmcgdGhpbmdzIGxp a2UgaWRlYXMsIHRob3VnaHRzIG9yIHRydXRocy4gQWxsIHRoZXNlIHdvcmRzIChleGNlcHQgJydr ZWknJykgYXJlIGNhbGxlZCBhYnN0cmFjdG9ycy4gVGhlcmUgYXJlIG1hbnkgb2YgdGhlbSwgYW5k IG9ubHkgZmV3IGFyZSB1c2VkIG11Y2guICcnc3UndeKApmtlaScnIGlzIGEgZ2VuZXJhbCBhYnN0 cmFjdG9yLCBhbmQgd2lsbCB3b3JrIGluIGFsbCBjYXNlcy4KCgoKVXNlICcnbnUnJyB0byBzYXkg 4oCcSSdtIGhhcHB5IGFib3V0IHRhbGtpbmcgdG8geW91LuKAnQoKX18nJ3RhdmxhJydfXyB4MSB0 YWxrcyB0byB4MiBhYm91dCBzdWJqZWN0IHgzIGluIGxhbmd1YWdlIHg0LgoKCgpBbnN3ZXI6IH5+ Z3JleSxncmV5OicnbWkgZ2xla2kgbG8gbnUgdGF2bGEgZG8ga2VpIGt1JycgKG5vdGljZSBib3Ro IHRoZSBFbmdsaXNoIGFuZCB0aGUgTG9qYmFuIGlzIHZhZ3VlIGFzIHRvIHdobyBpcyBkb2luZyB0 aGUgdGFsa2luZykufn4KCgoKT3RoZXIgaW1wb3J0YW50IGFic3RyYWN0b3JzIGluY2x1ZGU6ICcn a2EuLi5rZWknJyAocHJvcGVydHkvYXNwZWN0IGFic3RyYWN0aW9uKSwgJydzaSdvLi4ua2VpJycg KGNvbmNlcHQvaWRlYSBhYnN0cmFjdGlvbiksICcnbmkuLi5rZWknJyAocXVhbnRpdHkgYWJzdHJh Y3Rpb24pIGFtb25nIG90aGVycy4gVGhlIG1lYW5pbmdzIG9mIHRoZXNlIGlzIGEgY29tcGxpY2F0 ZWQgbWF0dGVyLCBhbmQgd2lsbCBiZSBkaXNjdXNzZWQgbXVjaCBsYXRlciwgaW4gbGVzc29uIHR3 ZW50eS1uaW5lLiBGb3Igbm93LCB5b3UnbGwgaGF2ZSB0byBkbyB3aXRob3V0IHRoZW0uCgoKCkl0 IGlzIGltcG9ydGFudCB0byBub3RpY2UgdGhhdCBzb21lIGFic3RyYWN0b3JzIGhhdmUgc2V2ZXJh bCBzdW10aSBwbGFjZXMuIEFzIGFuIGV4YW1wbGUsICcnZHUndScnIGNhbiBiZSBtZW50aW9uZWQu ICcnZHUndScnIGlzIGRlZmluZWQ6CgonJ2R1J3UnJyA9IOKAnGFic3RyYWN0b3IuIHgxIGlzIHRo ZSBwcmVkaWNhdGUvYnJpZGkgb2Yge2JyaWRpfSBleHByZXNzZWQgaW4gc2VudGVuY2UgeDLigJ0u CgpUaGUgb3RoZXIgc3VtdGkgcGxhY2VzIGJlc2lkZXMgeDEgaXMgcmFyZWx5IHVzZWQsIGJ1dCAn J2xvIHNlIGR1J3Uge2JyaWRpfSBrZWkga3UnJyBpcyBzb21ldGltZXMgdXNlZCBhcyBhIHN1bXRp IGZvciBpbmRpcmVjdCBxdW90YXRpb246IOKAnEkgc2FpZCB0aGF0IEkgd2FzIGdpdmVuIGEgZG9n 4oCdIGNhbiBiZSB3cml0dGVuICcnbWkgY3Vza3UgbG8gc2UgZHUndSBtaSB0ZSBkdW5kYSBsbyBn ZXJrdSBrdSBrZWkga3UnJywgaWYgeW91IHdpbGwgcGFyZG9uIHRoZSB3ZWlyZCBleGFtcGxlLgoK X18nJ2N1c2t1JydfXyB4MSBleHByZXNzZXMgeDIgdG8geDMgdGhyb3VnaCBtZWRpdW0geDQKCl9f JydnZXJrdScnX18geDEgaXMgYSBkb2cgb2YgcmFjZSB4MgoKISFMb2piYW4gbGVzc29ucyDigJMg bGVzc29uIHNldmVuIChOT0kpCgpXaGlsZSB3ZSdyZSBhdCBpdCwgdGhlcmUncyBhbm90aGVyIHR5 cGUgb2Ygc3Vib3JkaW5hdGUgYnJpZGkuIFRoZXNlIGFyZSBjYWxsZWQgcmVsYXRpdmUgY2xhdXNl cy4gVGhleSBhcmUgc2VudGVuY2VzIHdoaWNoIGFkZCBzb21lIGRlc2NyaXB0aW9uIHRvIGEgc3Vt dGkuIEluZGVlZCwgdGhlIOKAnHdoaWNo4oCdIGluIHRoZSBwcmV2aW91cyBzZW50ZW5jZSBtYXJr ZWQgdGhlIGJlZ2lubmluZyBvZiBhIHJlbGF0aXZlIGNsYXVzZSBpbiBFbmdsaXNoIGRlc2NyaWJp bmcgcmVsYXRpdmUgY2xhdXNlcy4gSW4gTG9qYmFuLCB0aGV5IGNvbWUgaW4gdHdvIGZsYXZvcnMs IGFuZCBpdCBtaWdodCBiZSB3b3J0aCBkaXN0aW5ndWlzaGluZyB0aGUgdHdvIGtpbmRzIGJlZm9y ZSBsZWFybmluZyBob3cgdG8gZXhwcmVzcyB0aGVtLgoKVGhlIHR3byBraW5kcyBhcmUgY2FsbGVk IHJlc3RyaWN0aXZlIGFuZCBub24tcmVzdHJpY3RpdmUgKG9yIGluY2lkZW50aWFsKSByZWxhdGl2 ZSBjbGF1c2VzLiBBbiBleGFtcGxlIHdvdWxkIGJlIGdvb2QgaGVyZToKCuKAnE15IGJyb3RoZXIs IHdobyBpcyB0d28gbWV0ZXJzIHRhbGwsIGlzIGEgcG9saXRpY2lhbi7igJ0gVGhpcyBjYW4gYmUg dW5kZXJzdG9vZCBpbiB0d28gd2F5cy4gSSBjb3VsZCBoYXZlIHNldmVyYWwgYnJvdGhlcnMsIGlu IHdoaWNoIGNhc2Ugc2F5aW5nIGhlIGlzIHR3byBtZXRlcnMgdGFsbCB3aWxsIGxldCB5b3Uga25v dyB3aGljaCBicm90aGVyIEkgYW0gdGFsa2luZyBhYm91dC4gT3IgSSBtaWdodCBoYXZlIG9ubHkg b25lIGJyb3RoZXIsIGluIHdoaWNoIGNhc2UgSSBhbSBzaW1wbHkgZ2l2aW5nIHlvdSBhZGRpdGlv bmFsIGluZm9ybWF0aW9uLgoKCgpJbiBFbmdsaXNoIGFzIHdlbGwgYXMgTG9qYmFuIHdlIGRpc3Rp bmd1aXNoIGJldHdlZW4gdGhlc2UgdHdvIGtpbmRzIOKAkyB0aGUgZmlyc3QgaW50ZXJwcmV0YXRp b24gaXMgcmVzdHJpY3RpdmUgKHNpbmNlIGl0IGhlbHBzIHJlc3RyaWN0IHRoZSBwb3NzaWJsZSBi cm90aGVycyBJIG1pZ2h0IGJlIHRhbGtpbmcgYWJvdXQpLCB0aGUgc2Vjb25kIG5vbi1yZXN0cmlj dGl2ZS4gV2hlbiBzcGVha2luZyBFbmdsaXNoLCBjb250ZXh0IGFuZCB0b25lIG9mIHZvaWNlIChv ciBpbiB3cml0dGVuIEVuZ2xpc2gsIHB1bmN0dWF0aW9uKSBoZWxwcyB1cyBkaXN0aW5ndWlzaCBi ZXR3ZWVuIHRoZXNlIHR3bywgYnV0IG5vdCBzbyBpbiBMb2piYW4uIExvamJhbiB1c2VzIHRoZSBj b25zdHJ1Y3RzICcncG9p4oCma3UnbycnIGFuZCAnJ25vaeKApmt1J28nJyBmb3IgcmVzdHJpY3Rp dmUgYW5kIG5vbi1yZXN0cmljdGl2ZSByZWxhdGl2ZSBjbGF1c2VzLCByZXNwZWN0aXZlbHkuCgpM ZXQncyBoYXZlIGEgTG9qYmFuaWMgZXhhbXBsZSwgd2hpY2ggY2FuIGFsc28gZXhwbGFpbiBvdXIg c3RyYW5nZSBnaWZ0LWVhdGluZyBiZWhhdmlvdXIgaW4gdGhlIGV4YW1wbGUgaW4gbGVzc29uIGZp dmU6CgpfXycnbm9pJydfXyBiZWdpbiBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNlIChj YW4gb25seSBhdHRhY2ggdG8gc3VtdGkpCgpfXycncG9pJydfXyBiZWdpbiByZXN0cmljdGl2ZSBy ZWxhdGl2ZSBjbGF1c2UgKGNhbiBvbmx5IGF0dGFjaCB0byBzdW10aSkKCl9fJydrdSdvJydfXyBl bmQgcmVsYXRpdmUgY2xhdXNlCgoKCicnbWkgY2l0a2EgbG8gc2UgZHVuZGEga3UgcG9pIHBsaXNl IGt1J28nJyA9IOKAnEkgZWF0IGEgZ2lmdCBzdWNoIHRoYXQgKHNvbWV0aGluZyBpcykgYW4gYXBw bGXigJ0uIAoKSGVyZSB0aGUgJydwb2nigKZrdSdvJycgaXMgcGxhY2VkIGp1c3QgYWZ0ZXIgJyds byBzZSBkdW5kYSBrdScnLCBzbyBpdCBhcHBsaWVzIHRvIHRoZSBnaWZ0LiBUbyBiZSBzdHJpY3Qs IHRoZSByZWxhdGl2ZSBjbGF1c2UgZG9lcyBub3Qgc3BlY2lmeSB3aGF0IGl0IGlzLCB3aGljaCBp cyBhbiBhcHBsZSwgYnV0IHNpbmNlIHRoZSByZWxhdGl2ZSBjbGF1c2UgYXBwbGllcyB0byB0aGUg Z2lmdCwgd2UgY2FuIHNhZmVseSBhc3N1bWUgdGhhdCBpdCBtZWFucyB0aGF0IHRoZSBnaWZ0IGlz IGFuIGFwcGxlLiBBZnRlciBhbGwsIGluIHRoZSBjb250ZXh0IG9mIGxlc3NvbiBmaXZlLCB0aGlz IHNlZW1zIHJlYXNvbmFibGUuIElmIHdlIHdhbnQgdG8gYmUgYWJzb2x1dGVseSBzdXJlIHRoYXQg aXQgaW5kZWVkIHdhcyB0aGUgZ2lmdCB0aGF0IHdhcyBhbiBhcHBsZSwgd2UgdXNlIHRoZSB3b3Jk ICcna2UnYScnLCB3aGljaCBpcyBhICcnc3Vta2EnaScnIChhIExvamJhbiBwcm9ub3VuLCBtb3Jl IG9uIHRoZW0gbGF0ZXIpIHJlcHJlc2VudGluZyB0aGUgc3VtdGkgd2hpY2ggdGhlIHJlbGF0aXZl IGNsYXVzZSBpcyBhdHRhY2hlZCB0by4KCl9fJydrZSdhJydfXyBzdW1rYSdpOyByZWZlcnMgdG8g dGhlIHN1bXRpLCB0byB3aGljaCB0aGUgcmVsYXRpdmUgY2xhdXNlIGl0IGF0dGFjaGVkLgoKCgon Jy51aSBtaSBjaXRrYSBsbyBzZSBkdW5kYSBrdSBwb2kga2UnYSBwbGlzZSBrdSdvJycgPSDigJxZ YXksIEkgZWF0IGEgZ2lmdCB3aGljaCBpcyBhbiBhcHBsZeKAnS4KClRvIHVuZGVybGluZSB0aGUg ZGlmZmVyZW5jZSBiZXR3ZWVuIHJlc3RyaWN0aXZlIGFuZCBub24tcmVzdHJpY3RpdmUgcmVsYXRp dmUgY2xhdXNlcywgaGVyZSdzIGFub3RoZXIgZXhhbXBsZToKCgoKX18nJ2xvamJvJydfXyDigJx4 MSByZWZsZWN0cyBMb2piYW5pYyBjdWx0dXJlL2NvbW11bml0eSBpcyBhc3BlY3QgeDI7IHgxIGlz IExvamJhbmljLuKAnQoKCgonJ21pIG5vaSBsb2pibyBrdSdvIGZhbnZhIGZvIGxvIGxvamJvIGt1 JycgPSDigJxJLCB3aG8gYW0gYSBMb2piYW5pYywgdHJhbnNsYXRlIGZyb20gc29tZSBMb2piYW5p YyBsYW5ndWFnZS7igJ0gSGVyZSwgdGhlcmUgaXMgbm90IG11bHRpcGxlIHRoaW5ncyB3aGljaCAn J21pJycgY291bGQgcmVmZXIgdG8sIGFuZCB0aGUgZmFjdCB0aGF0IEkgYW0gbG9qYmFuaWMgaXMg bWVyZWx5IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gbm90IG5lZWRlZCB0byBpZGVudGlmeSBtZS4g VGhlcmVmb3JlICcnbm9p4oCma3UnbycnIGlzIGFwcHJvcHJpYXRlLgoKU2VlIGlmIHlvdSBjYW4g dHJhbnNsYXRlIHRoaXM6IOKAnEkgZmxpcnQgd2l0aCBhIG1hbiB3aG8gaXMgYmVhdXRpZnVsL2hh bmRzb21l4oCdLgoKX18nJ25hbm11JydfXyDigJx4MSBpcyBhIG1hbuKAnQoKX18nJ21lbGJpJydf XyDigJx4MSBpcyBiZWF1dGlmdWwgdG8geDIgaW4gYXNwZWN0IChrYSkgeDMgYnkgc3RhbmRhcmQg eDTigJ0KCl9fJydjaW5qaWtjYScnX18g4oCceDEgZmxpcnRzL2NvdXJ0cyB4MiwgZXhoaWJpdGlu ZyBzZXh1YWxpdHkgeDMgYnkgc3RhbmRhcmQgeDTigJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTon J21pIGNpbmppa2NhIGxvIG5hbm11IGt1IHBvaSB7a2UnYX0gbWVsYmkga3Unbycnfn4KCgoKT24g YSBtb3JlIHRlY2huaWNhbCBzaWRlIG5vdGUsIGl0IG1pZ2h0IGJlIHVzZWZ1bCB0byBrbm93IHRo YXQgJydsbyB7c2VsYnJpfSBrdScnIGlzIG9mdGVuIHNlZW4gZGVmaW5lZCBhcyAnJ3pvJ2Ugbm9p IGtlJ2Ege3NlbGJyaX0ga3UnbycnLgoKCgoKCiEhTG9qYmFuIExlc3NvbnMg4oCTIExlc3NvbiBl aWdodCAodGVybWluYXRvciBlbGlzaW9uKQoKJycuYXUgZGEnaSBtaSBkamljYSBsbyBudSBsZSBt ZXJrbyBwb2kgdHVuYmEgbWkgX192YXUga3UnbyBrdV9fIGppbXBlIGxvIGR1J3UgbWkgbmEgbmVs Y2kgbG8gbnUgdm8nYSBkYXJ4aSBtaSBfX3ZhdSBrZWkga3UgdmF1IGtlaSBrdSB2YXUga2VpIGt1 IHZhdV9fJycKCiAtICDigJxJIHdpc2ggdGhlIEFtZXJpY2FuLCB3aG8gaXMgbXkgc2libGluZywg d291bGQgdW5kZXJzdGFuZCB0aGF0IEkgZG9uJ3QgbGlrZSB0aGF0IGhlIGhpdHMgbWUu4oCdCgpS ZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIGFib3ZlIHNlbnRlbmNlIGlzIGJlaW5nIHVuZGVyc3Rv b2QsIChpdCBzaG91bGRuJ3QsIGFzIGl0IGNvbnRhaW5zIHdvcmRzIHdlIGhhdmUgbm90IGNvdmVy ZWQgaW4gdGhlc2UgbGVzc29ucyB5ZXQpIG9uZSB0aGluZyBzdGFuZHMgb3V0OiBBcyBtb3JlIGNv bXBsZXggTG9qYmFuIHN0cnVjdHVyZXMgYXJlIGxlYXJuZWQsIG1vcmUgYW5kIG1vcmUgb2YgdGhl IHNlbnRlbmNlcyBnZXQgZmlsbGVkIHdpdGggJydrdScnLCAnJ2tlaScnLCAnJ2t1J28nJyBhbmQg b3RoZXIgb2YgdGhvc2Ugd29yZHMgd2hpY2ggYnkgdGhlbXNlbHZlcyBjYXJyeSBubyBtZWFuaW5n LgoKCgpUaGUgZnVuY3Rpb24gb2YgYWxsIHRoZXNlIHdvcmRzIGlzIHRvIHNpZ25hbCB0aGUgZW5k IG9mIGEgY2VydGFpbiBncmFtbWF0aWNhbCBjb25zdHJ1Y3QsIGxpa2UgZm9yIGluc3RhbmNlIOKA nGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdIGluIHRoZSBjYXNlIG9mICcna3UnJy4gVGhlIEVu Z2xpc2ggd29yZCBmb3IgdGhpcyBraW5kIG9mIHdvcmQgaXMg4oCcdGVybWluYXRvcuKAnSwgdGhl IExvamJhbiB3b3JkIGlzICcnZmEnb3JtYSdvJycuIFRoZXkgYXJlIHdyaXR0ZW4gaW4gYm9sZCBp biB0aGUgZXhhbXBsZSBhYm92ZS4KCk5vdGU6IFRoZSAnJ3ZhdScnIGluIHRoZSBhYm92ZSBleGFt cGxlIGFyZSB0aGUgZmEnb3JtYSdvIGZvciDigJxlbmQgYnJpZGnigJ0uIFRoZXJlIGlzIGEgZ29v ZCByZWFzb24geW91IGhhdmUgbm90IHlldCBzZWVuIGl0LCBzdGF5IHR1bmVkLgoKX18nJ3ZhdScn X18gZmEnb3JtYSdvOiBUZXJtaW5hdGVzIGJyaWRpLgoKCgpJbiBtb3N0IHNwb2tlbiBhbmQgd3Jp dHRlbiBMb2piYW4sIG1vc3QgZmEnb3JtYSdvIGFyZSBza2lwcGVkIChlbGlkZWQpLiBUaGlzIGdy ZWF0bHkgc2F2ZXMgc3lsbGFibGVzIGluIHNwZWVjaCBhbmQgc3BhY2UgaW4gd3JpdGluZywgaG93 ZXZlciwgb25lIG11c3QgYWx3YXlzIGJlIGNhcmVmdWwgd2hlbiBlbGlkaW5nIGZhJ29ybWEnby4g SW4gdGhlIHNpbXBsZSBleGFtcGxlICcnbG8gbWVya28ga3Uga2xhbWEnJywgcmVtb3ZpbmcgdGhl IGZhJ29ybWEnbyAnJ2t1Jycgd291bGQgeWllbGQgJydsbyBtZXJrbyBrbGFtYScnLCB3aGljaCBp cyBhIHNpbmdsZSBzdW10aSBtYWRlIGZyb20gdGhlIHRhbnJ1ICcnbWVya28ga2xhbWEnJy4gVGh1 cywgaXQgbWVhbnMg4oCcYW4gQW1lcmljYW4gdHJhdmVsZXLigJ0gaW5zdGVhZCBvZiDigJxhbiBB bWVyaWNhbiB0cmF2ZWxz4oCdLiBmYSdvcm1hJ28gZWxpc2lvbiBjYW4gbGVhZCB0byB2ZXJ5IHdy b25nIHJlc3VsdHMgaWYgZG9uZSBpbmNvcnJlY3RseSwgd2hpY2ggaXMgd2h5IHlvdSBoYXZlbid0 IGxlYXJuZWQgYWJvdXQgaXQgdW50aWwgbm93LgoKCgpUaGUgcnVsZSBmb3Igd2hlbiBmYSdvcm1h J28gY2FuIGJlIGVsaWRlZCBpcyB2ZXJ5IHNpbXBsZSwgYXQgbGVhc3QgaW4gdGhlb3J5OiDigJxZ b3UgY2FuIGVsaWRlIGEgZmEnb3JtYSdvLCBfX2lmIGFuZCBvbmx5IGlmX18gZG9pbmcgc28gZG9l cyBub3QgY2hhbmdlIHRoZSBncmFtbWF0aWNhbCBjb25zdHJ1Y3RzIGluIHRoZSBzZW50ZW5jZS7i gJ0KCk1vc3QgZmEnb3JtYSdvIGNhbiBiZSBzYWZlbHkgZWxpZGVkIGF0IHRoZSBlbmQgb2YgdGhl IGJyaWRpLiBFeGNlcHRpb25zIGFyZSB0aGUgb2J2aW91cyBvbmVzIGxpa2Ug4oCcZW5kIHF1b3Rl 4oCdLWZhJ29ybWEnbyBhbmQg4oCcZW5kIGJyaWRpIGdyb3VwaW5n4oCdLWZhJ29ybWEnby4gVGhp cyBpcyB3aHkgJyd2YXUnJyBpcyBhbG1vc3QgbmV2ZXIgdXNlZCDigJMgc2ltcGx5IGJlZ2lubmlu ZyBhIG5ldyBicmlkaSB3aXRoICcnLmknJyB3aWxsIGFsbW9zdCBhbHdheXMgdGVybWluYXRlIHRo ZSBwcmVjZWRpbmcgYnJpZGkgYW55d2F5LiBJdCBoYXMgb25lIGZyZXF1ZW50IHVzZSwgaG93ZXZl ci4gU2luY2UgYXR0aXR1ZGluYWxzIGFsd2F5cyBhcHBseSB0byB0aGUgcHJlY2VkaW5nIHdvcmQs IGFwcGx5aW5nIGl0IHRvIGEgZmEnb3JtYSdvIGFwcGxpZXMgaXQgdG8gdGhlIGVudGlyZSBjb25z dHJ1Y3Qgd2hpY2ggaXMgdGVybWluYXRlZC4gVXNpbmcgJyd2YXUnJywgb25lIGNhbiB0aGVuIHVz ZSBhdHRpdHVkaW5hbHMgYWZ0ZXJ0aG91Z2h0IGFuZCBhcHBseSB0aGVtIHRvIHRoZSBlbnRpcmUg YnJpZGk6CgonJ3phJ2EgZG8gZHVuZGEgbG8gemRhbmkge2t1fSBsbyBwcmVudSB7a3V9Li4uIHZh dSBpJ2UnJyAtIOKAnEkgc2VlIHRoYXQgeW91IGdpdmUgYSBob21lIHRvIGEgcGVyc29uLi4uIEkg YXBwcm92ZSHigJ0KCl9fJydwcmVudScnX18geDEgaXMgYSBwZXJzb247IHgxIGhhcyBhIHBlcnNv bmFsaXR5LgoKCgpLbm93aW5nIHRoZSBiYXNpYyBydWxlcyBmb3IgZmEnb3JtYSdvIGVsaXNpb24s IHdlIGNhbiB0aHVzIHJldHVybiB0byB0aGUgb3JpZ2luYWwgc2VudGVuY2UgYW5kIGJlZ2luIHJl bW92aW5nIGZhJ29ybWEnbzoKCgoKJycuYXUgZGEnaSBtaSBkamljYSBsbyBudSBsZSBtZXJrbyBw b2kgdHVuYmEgbWkgX192YXUga3UnbyBrdV9fIGppbXBlIGxvIGR1J3UgbWkgbmEgbmVsY2kgbG8g bnUgdm8nYSBkYXJ4aSBtaSBfX3ZhdSBrZWkga3UgdmF1IGtlaSBrdSB2YXUga2VpIGt1IHZhdV9f JycKCgoKV2UgY2FuIHNlZSB0aGF0IHRoZSBmaXJzdCAnJ3ZhdScnIGlzIGdyYW1tYXRpY2FsbHkg dW5uZWNlc3NhcnksIGJlY2F1c2UgdGhlIG5leHQgbm9uLWZhJ29ybWEnby13b3JkIGlzICcnamlt cGUnJywgd2hpY2ggaXMgYSBzZWxicmkuIFNpbmNlIHRoZXJlIGNhbiBvbmx5IGJlIG9uZSBzZWxi cmkgcGVyIGJyaWRpLCAnJ3ZhdScnIGlzIG5vdCBuZWVkZWQuIFNpbmNlICcnamltcGUnJyBhcyBh IHNlbGJyaSBjYW5ub3QgYmUgaW4gdGhlIHJlbGF0aXZlIGNsYXVzZSBlaXRoZXIgKG9ubHkgb25l IGJyaWRpIGluIGEgY2xhdXNlLCBvbmx5IG9uZSBzZWxicmkgaW4gZWFjaCBicmlkaSksIHdlIGNh biBlbGlkZSAnJ2t1J28nJy4gTGlrZXdpc2UsICcnamltcGUnJyBjYW5ub3QgYmUgYSBzZWNvbmQg c2VsYnJpIGluc2lkZSB0aGUgY29uc3RydWN0ICcnbGUgbWVya28gcG9pey4uLn0nJywgc28gdGhl ICcna3UnJyBpcyBub3QgbmVlZGVkIGVpdGhlci4gRnVydGhlcm1vcmUsIGFsbCB0aGUgZmEnb3Jt YSdvIGF0IHRoZSB2ZXJ5IGVuZCBvZiB0aGUgc2VudGVuY2UgY2FuIGJlIGVsaWRlZCB0b28sIHNp bmNlIGJlZ2lubmluZyBhIG5ldyBicmlkaSB3aWxsIHRlcm1pbmF0ZSBhbGwgb2YgdGhlc2UgY29u c3RydWN0cyBhbnl3YXkuCgpXZSB0aGVuIGVuZCB1cCB3aXRoOgoKJycuYXUgZGEnaSBtaSBkamlj YSBsbyBudSBsZSBtZXJrbyBwb2kgdHVuYmEgbWkgamltcGUgbG8gZHUndSBtaSBuYSBuZWxjaSBs byBudSB2bydhIGRhcnhpIG1pJycg4oCTIHdpdGggbm8gZmEnb3JtYSdvIGF0IGFsbCEKCgoKV2hl biBlbGlkaW5nIGZhJ29ybWEnbywgaXQgaXMgYSBnb29kIGlkZWEgdG8gYmUgYWNxdWFpbnRlZCB3 aXRoICcnY3UnJy4gJydjdScnIGlzIG9uZSBvZiB0aG9zZSB3b3JkcyB3aGljaCBjYW4gbWFrZSB5 b3VyIChMb2piYW5pYykgbGlmZSBhIGxvdCBlYXNpZXIuIFdoYXQgaXQgZG9lcyBpcyB0byBzZXBh cmF0ZSBhbnkgcHJldmlvdXMgc3VtdGkgZnJvbSB0aGUgc2VsYnJpLiBPbmUgY291bGQgc2F5IHRo YXQgaXQgZGVmaW5lcyB0aGUgbmV4dCB3b3JkIHRvIGJlIGEgc2VsYnJpLCBhbmQgdGVybWluYXRl cyBleGFjdGx5IGFzIG11Y2ggYXMgaXQgbmVlZHMgdG8gaW4gb3JkZXIgdG8gZG8gdGhhdC4KCl9f JydjdScnX18gZWxpZGFibGUgbWFya2VyOiBzZXBhcmF0ZXMgc2VsYnJpIGZyb20gcHJlY2VkaW5n IHN1bXRpLCBhbGxvd3MgcHJlY2VkaW5nIGZhJ29ybWEnbyBlbGlzaW9uLgoKCgpfXycncHJhbWkn J19fID0g4oCceDEgbG92ZXMgeDLigJ0KCgoKJydsbyBzdSd1IGRvIGN1c2t1IGxvIHNlIGR1J3Ug ZG8gcHJhbWkgbWkgX192YXUga2VpIGt1IHZhdSBrZWkga3VfXyBzZSBkamljYSBtaScnID0KCicn bG8gc3UndSBkbyBjdXNrdSBsbyBzZSBkdSd1IGRvIHByYW1pIG1pIF9fY3VfXyBzZSBkamljYSBt aScnCgrigJxUaGF0IHlvdSBzYXkgdGhhdCB5b3UgbG92ZSBtZSBpcyBkZXNpcmVkIGJ5IGJl4oCd IG9yIOKAnEkgd2lzaCB5b3Ugc2FpZCB5b3UgbG92ZWQgbWXigJ0KCm5vdGU6ICcnY3UnJyBpcyBu b3QgYSBmYSdvcm1hJ28sIGJlY2F1c2UgaXQgaXMgbm90IHRpZWQgdG8gb25lIHNwZWNpZmljIGNv bnN0cnVjdC4gQnV0IGl0IGNhbiBiZSB1c2VkIHRvIGVsaWRlIG90aGVyIGZhJ29ybWEnby4KCgoK T25lIG9mIHRoZSBncmVhdGVzdCBzdHJlbmd0aHMgb2YgJydjdScnIGlzIHRoYXQgaXQgcXVpY2ts eSBiZWNvbWVzIGVhc3kgdG8gaW50dWl0aXZlbHkgdW5kZXJzdGFuZC4gQnkgaXRzZWxmIGl0IG1l YW5zIG5vdGhpbmcsIGJ1dCBpdCByZXZlYWxzIHRoZSBzdHJ1Y3R1cmUgb2YgTG9qYmFuIGV4cHJl c3Npb25zIGJ5IGlkZW50aWZ5aW5nIHRoZSBjb3JlIHNlbGJyaS4gSW4gdGhlIG9yaWdpbmFsIGV4 YW1wbGUgd2l0aCB0aGUgdmlvbGVudCBBbWVyaWNhbiBicm90aGVyLCB1c2luZyAnJ2N1JycgYmVm b3JlICcnamltcGUnJyBkb2VzIG5vdCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHNlbnRlbmNl IGluIGFueSB3YXksIGJ1dCBtaWdodCBtYWtlIGl0IGVhc2llciB0byByZWFkLgoKCgpJbiB0aGUg Zm9sbG93aW5nIGNvdXBsZSBvZiBsZXNzb25zLCAnJ2N1Jycgd2lsbCBiZSB1c2VkIHdoZW4gbmVj ZXNzYXJ5LCBhbmQgYWxsIGZhJ29ybWEnbyBlbGlkZWQgaWYgcG9zc2libGUuIFRoZSBlbGlkZWQg ZmEnb3JtYSdvIHdpbGwgYmUgZW5jYXNlZCBpbiBjdXJseSBicmFja2V0cywgYXMgc2hvd24gYmVs b3cuIFRyeSB0byB0cmFuc2xhdGUgaXQhCgpfXycndmFqbmknJ19fIOKAnHgxIGlzIGltcG9ydGFu dCB0byB4MiBmb3IgcmVhc29uIHgz4oCdCgpfXycnamltcGUnJ19fIOKAnHgxIHVuZGVyc3RhbmRz IHRoYXQgeDIgKGR1J3UtYWJzdHJhY3Rpb24pIGlzIHRydWUgYWJvdXQgeDPigJ0KCl9fJydhJ28n J19fIC0gQXR0aXR1ZGluYWw6IFNpbXBsZSBwcm9wb3NpdGlvbmFsIGVtb3Rpb246IEhvcGUgLSBk ZXNwYWlyCgoKCicnYSdvIGRvIG5vaSBrZSdhIGxvamJvIC5pJ2Uge2t1J299IHtrdX0gY3Ugamlt cGUgbG8gZHUndSBsbyBmYSdvcm1hJ28ge2t1fSBjdSB2YWpuaSB7dmF1fSB7a2VpfSB7a3V9IHt2 YXV9JycKCldoYXQgZG8gSSBzdGF0ZT8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxJIGhvcGUg dGhhdCB5b3UsIGEgcHJvdWQgTG9qYmFuaXN0LCB1bmRlcnN0YW5kcyB0aGF0IGZhJ29ybWEnbyBh cmUgaW1wb3J0YW504oCdfn4KCgoKRnVuIHNpZGUgbm90ZTogTW9zdCBwZW9wbGUgd2VsbC12ZXJz ZWQgaW4gZmEnb3JtYSdvLWVsaXNpb24gZG8gaXQgc28gaW5zdGluY3RpdmVseSB0aGF0IHRoZXkg b2Z0ZW4gbXVzdCBiZSByZW1pbmRlZCBob3cgaW1wb3J0YW50IHVuZGVyc3RhbmRpbmcgZmEnb3Jt YSdvIGFyZSB0byB0aGUgdW5kZXJzdGFuZGluZyBvZiBMb2piYW4uIFRoZXJlZm9yZSwgZWFjaCBU dWVzZGF5IGhhdmUgYmVlbiBkZXNpZ25hdGVkIOKAnFRlcm1pbmF0b3IgRGF54oCdIG9yICcnZmEn b3JtYSdvIGRqZWRpJycgb24gdGhlIExvamJhbiBJUkMgY2hhdHJvb20uIER1cmluZyBUZXJtaW5h dG9yIERheSwgbWFueSBwZW9wbGUgdHJ5IChhbmQgb2Z0ZW4gZmFpbCkgdG8gcmVtZW1iZXIgd3Jp dGluZyBvdXQgYWxsIGZhJ29ybWEnbyB3aXRoIHNvbWUgdmVyeSB2ZXJib3NlIGNvbnZlcnNhdGlv bnMgYXMgYSByZXN1bHQuCgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBuaW5lIChzdW10 Y2l0YSkKClNvIGZhciB3ZSBoYXZlIGJlZW4gZG9pbmcgcHJldHR5IHdlbGwgd2l0aCB0aGUgc2Vs YnJpIHdlIGhhdmUgaGFkIGF0IGhhbmQuIEhvd2V2ZXIsIHRoZXJlIGlzIGEgZmluaXRlIGFtb3Vu dCBvZiBkZWZpbmVkIHNlbGJyaSBvdXQgdGhlcmUsIGFuZCBpbiBtYW55IGNhc2VzIHRoZSBzdW10 aSBwbGFjZXMgYXJlIG5vdCB1c2VmdWwgZm9yIHdoYXQgd2UgaGFkIGluIG1pbmQuIFdoYXQgaWYs IHNheSwgaSB3YW50IHRvIHNheSB0aGF0IEkgYW0gdHJhbnNsYXRpbmcgdXNpbmcgYSBjb21wdXRl cj8gVGhlcmUgaXMgbm8gcGxhY2UgaW4gdGhlIHN0cnVjdHVyZSBvZiAnJ2ZhbnZhJycgdG8gc3Bl Y2lmeSB3aGF0IHRvb2wgSSB0cmFuc2xhdGUgd2l0aCwgc2luY2UsIG1vc3Qgb2YgdGhlIHRpbWUs IHRoYXQgaXMgbm90IG5lY2Vzc2FyeS4gTm90IHRvIHdvcnJ5LCB0aGlzIGxlc3NvbiBpcyBvbiBo b3cgdG8gYWRkIGFkZGl0aW9uYWwgc3VtdGkgcGxhY2VzIHRvIHRoZSBzZWxicmkuCgoKClRoZSBt b3N0IGJhc2ljIHdheSB0byBhZGQgc3VtdGkgcGxhY2VzIGFyZSB3aXRoICcnZmknbyBTRUxCUkkg ZmUndScnICh5ZXMsIGFub3RoZXIgZXhhbXBsZSBvZiBhIGZhJ29ybWEnbywgJydmZSd1JycuIEl0 J3MgYWxtb3N0IG5ldmVyIG5lY2Vzc2FyeSwgc28gdGhpcyBtaWdodCBiZSB0aGUgbGFzdCB0aW1l IHlvdSBldmVyIHNlZSBpdC4pCgpJbiBiZXR3ZWVuIHRoZXNlIHR3byB3b3JkcyBnb2VzIGEgc2Vs YnJpLCBhbmQgbGlrZSAnJ2xvIFNFTEJSSSBrdScnLCAnJ2ZpJ28gU0VMQlJJIGZlJ3UnJyBleHRy YWN0cyB0aGUgeDEgb2YgdGhlIHNlbGJyaSBwdXQgaW50byBpdC4gSG93ZXZlciwgd2l0aCAnJ2Zp J28gU0VMQlJJIGZlJ3UnJywgdGhlIHNlbGJyaSBwbGFjZSBpcyBjb252ZXJ0ZWQsIG5vdCB0byBh IHN1bXRpLCBidXQgdG8gYSAnJ3N1bXRjaXRhJycsIG1lYW5pbmcg4oCcc3VtdGktbGFiZWzigJ0s IHdpdGggdGhlIHBsYWNlIHN0cnVjdHVyZSBvZiB0aGUgeDEgb2YgdGhlIHNlbGJyaSBpdCBjb252 ZXJ0ZWQuIFRoaXMgJydzdW10Y2l0YScnIHRoZW4gYWJzb3JicyB0aGUgbmV4dCBzdW10aS4gT25l IGNvdWxkIHNheSB0aGF0IHVzaW5nIGEgJydzdW10Y2l0YScnLCB5b3UgaW1wb3J0IGEgc3VtdGkg cGxhY2UgZnJvbSBhbm90aGVyIHNlbGJyaSwgYW5kIGFkZCBpdCB0byB0aGUgYnJpZGkgYmVpbmcg c2FpZC4KCk5vdGU6IFNvbWV0aW1lcywgZXNwZWNpYWxseSBpbiBvbGRlciB0ZXh0cywgdGhlIHRl cm0g4oCcdGFn4oCdIG9yIOKAnG1vZGFs4oCdIGlzIHVzZWQgZm9yICcnc3VtdGNpdGEnJy4gSWdu b3JlIHRob3NlIHB1bnkgRW5nbGlzaCBleHByZXNzaW9ucy4gV2UgdGVhY2ggcHJvcGVyIExvamJh biBoZXJlLgoKCgpXaGlsZSBpdCBpcyBoYXJkIHRvIGdyYXNwIHRoZSBwcm9jZXNzIGZyb20gcmVh ZGluZyBhYm91dCBpdCwgYW4gZXhhbXBsZSBjYW4gcGVyaGFwcyBzaG93IGl0cyBhY3R1YWwgc2lt cGxpY2l0eToKCl9fJydza2FtaScnX18g4oCceDEgaXMgYSBjb21wdXRlciBmb3IgcHVycG9zZSB4 MuKAnQoKX18nJ3BpbG5vJydfXyDigJx4MSB1c2VzIHgyIGFzIGEgdG9vbCBmb3IgZG9pbmcgeDPi gJ0KCgoKJydtaSBmYW52YSB0aSBmaSdvIHNlIHBpbG5vIHtmZSd1fSBsbyBza2FtaSB7a3V9e3Zh dX0nJyAtIOKAnEkgdHJhbnNsYXRlIHRoaXMgd2l0aCBhIGNvbXB1dGVy4oCdIFRoZSB4MiBvZiAn J3BpbG5vJycsIHdoaWNoIGlzIHRoZSB4MSBvZiAnJ3NlIHBpbG5vJycgaXMgYSBwbGFjZSBzdHJ1 Y3R1cmUgZm9yIGEgdG9vbCBiZWluZyB1c2VkIGJ5IHNvbWVvbmUuIFRoaXMgcGxhY2Ugc3RydWN0 dXJlIGlzIGNhcHR1cmVkIGJ5ICcnZmknbyBTRUxCUkkgZmUndScnLCBhZGRlZCB0byB0aGUgbWFp biBzZWxicmksIGFuZCB0aGVuIGZpbGxlZCBieSAnJ2xvIHNrYW1pJycuIFRoZSBpZGVhIG9mICcn c3VtdGNpdGEnJyBpcyBzb21ldGltZXMgZXhwcmVzc2VkIGluIEVuZ2xpc2ggdXNpbmcgdGhlIGZv bGxvd2luZyB0cmFuc2xhdGlvbjoKCuKAnEkgdHJhbnNsYXRlIHRoaXMgd2l0aC10b29sOiBBIGNv bXB1dGVy4oCdCgoKCkEgJydzdW10Y2l0YScnIGNhbiBvbmx5IGFic29yYiBvbmUgc3VtdGksIHdo aWNoIGlzIGFsd2F5cyB0aGUgZm9sbG93aW5nIG9uZS4gQWx0ZXJuYXRpdmVseSwgdGhlICcnc3Vt dGNpdGEnJyBjb25zdHJ1Y3QgY2FuIGJlIHRlcm1pbmF0ZWQgd2l0aCAnJ2t1JycsIGluIHdoaWNo IGNhc2UgYSAnJ3pvJ2UnJyBpcyBpbXBsaWVkIHRvIGZpbGwgdGhlICcnc3VtdGNpdGEnJy4gT3Is IG9uZSBjb3VsZCBpbWFnaW5lIGFuIGVsaWRlZCBzdW10aSBiZWluZyB0ZXJtaW5hdGVkIHdpdGgg dGhlICcna3UnJy4KCl9fJyd6dWt0ZScnX18g4oCceDEgaXMgYSB2b2xpdGlvbmFsIGVudGl0eSBj YXJyeWluZyBvdXQgYWN0aW9uIHgyIGZvciBwdXJwb3NlIHgz4oCdCgoKCicnZmknbyB6dWt0ZSB7 ZmUndX0ga3UgbG8gc2thbWkge2t1fSBjdSBwaWxubyBsbyBsb2pibyB7a3V9e3ZhdX0nJyAtIOKA nFdpdGggdm9saXRpb24sIGEgY29tcHV0ZXIgdXNlZCBzb21ldGhpbmcgTG9qYmFuaWPigJ0gKHBl cmhhcHMgaW1wbHlpbmcgdGhhdCBhIExvamJhbmljIGNvbXB1dGVyIHdlbnQgc2VudGllbnQ/IFRv dWdoIGl0IGRvZXMgbm90IHNwZWNpZnkgd2hvIGhhZCB2b2xpdGlvbi4gSXQgY291bGQganVzdCBi ZSB0aGUgcHJvZ3JhbW1lciB3aG8gcHJvZ3JhbW1lZCB0aGUgY29tcHV0ZXIgLSBob3cgYm9yaW5n LikKCgoKV2hhdCBkb2VzICcnbWkgamltcGUgZmkgbGEgbG9qYmFuIHtrdX0gZmknbyBzZSB0YXZs YSB7ZmUndX0gbWknJyBzdGF0ZT8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxJIHVuZGVyc3Rh bmQgc29tZXRoaW5nIGFib3V0IExvamJhbiwgc3Bva2VuIHRvIG1l4oCdfn4KCgoKUHV0dGluZyB0 aGUgJydzdW10Y2l0YScnIHJpZ2h0IGluIGZyb250IG9mIHRoZSBzZWxicmkgYWxzbyBtYWtlcyBp dCBzZWxmLXRlcm1pbmF0ZSwgc2luY2Ugc3VtdGNpdGEgb25seSBjYW4gYWJzb3JiIHN1bXRpLCBh bmQgbm90IHNlbGJyaS4gVGhpcyBmYWN0IHdpbGwgYmUgb2YgaW1wb3J0YW5jZSBpbiBuZXh0IGxl c3NvbiwgYXMgeW91IHdpbGwgc2VlLgoKCgpTYWRseSwgJydmaSdvJycgaXMgbm90IHVzZWQgdmVy eSBvZnRlbiBkZXNwaXRlIGl0cyBmbGV4aWJpbGl0eS4gV2hhdCBJUyB1c2VkIHZlcnkgb2Z0ZW4s IHRob3VnaCwgYXJlIEJBSS4gQkFJIGlzIGEgY2xhc3Mgb2YgTG9qYmFuIHdvcmRzLCB3aGljaCBp biB0aGVtc2VsdmVzIGFjdCBhcyAnJ3N1bXRjaXRhJycuIEFuIGV4YW1wbGUgb2YgdGhpcyBpcyAn J3p1J2UnJywgdGhlIEJBSSBmb3IgJyd6dWt0ZScnLiBHcmFtYXRpY2FsbHksICcnenUnZScnIGlz IHRoZSBzYW1lIGFzICcnZmknbyB6dWt0ZSBmZSd1JycuIFRodXMsIHRoZSBhYm92ZSBleGFtcGxl IGNvdWxkIGJlIHJlZHVjZWQgdG86CgonJ3p1J2Uga3UgbG8gc2thbWkge2t1fSBjdSBwaWxubyBs byBsb2pibyB7a3V9IHt2YXV9JycuIFRoZXJlIGV4aXN0IHNvbWV0aGluZyBsaWtlIDYwIEJBSSwg YW5kIGEgbG90IG9mIHRoZXNlIGFyZSB2ZXJ5IHVzZWZ1bCBpbmRlZWQuIEZ1cnRlcm1vcmUsIEJB SSBjYW4gYWxzbyBiZSBjb252ZXJ0ZWQgd2l0aCAnJ3NlJycgYW5kIGZyaWVuZHMsIG1lYW5pbmcg dGhhdCAnJ3NlIHp1J2UnJyBpcyBlcXVhbCB0byAnJ2ZpJ28gc2UgenVrdGUgZmUndScnLCB3aGlj aCByZXN1bHRzIGluIGEgZ3JlYXQgZGVhbCBtb3JlIEJBSS4KCgoKISFMb2piYW4gTGVzc29ucyAt IExlc3NvbiB0ZW4gKFBVLCBGQWhBLCBaSSwgVkEsIFpFaEEsIFZFaEEpCgpIb3cgdW5mYW1pbGlh ciB0byB0aGUgRW5nbGlzaC1zcGVha2VyIGEgbGFuZ3VhZ2UgTG9qYmFuIGlzIHdoZW4gb25lIGNh biByZWFkIHRocm91Z2ggbmluZSBsZXNzb25zIG9mIExvamJhbiBncmFtbWFyIHdpdGhvdXQgbWVl dGluZyBhIHRlbnNlIG9uY2UuIFRoaXMgaXMgYmVjYXVzZSwgdW5saWtlIG1hbnkgbmF0dXJhbCBs YW5ndWFnZXMgKG1vc3QgSW5kby1FdXJvcGVhbiBvbmVzLCBmb3IgaW5zdGFuY2UpLCBhbGwgdGVu c2VzIGluIExvamJhbiBhcmUgb3B0aW9uYWwuIFNheWluZyAnJ21pIGNpdGthIGxvIGNpcmxhIHtr dX0nJyBjYW4gbWVhbiDigJxJIGVhdCBjaGVlc2XigJ0gb3Ig4oCcSSBhdGUgdGhlIGNoZWVzZeKA nSBvciDigJxJIGFsd2F5cyBlYXQgY2hlZXNl4oCdIG9yIOKAnEluIGEgbW9tZW50LCBpIHdpbGwg aGF2ZSBqdXN0IGZpbmlzaGVkIGVhdGluZyBjaGVlc2XigJ0uIENvbnRleHQgcmVzb2x2ZXMgd2hh dCBpcyBjb3JyZWN0LCBhbmQgaW4gbW9zdCBjb252ZXJzYXRpb24sIHRlbnNlcyBhcmUgbm90IG5l ZWRlZCBhdCBhbGwuIEhvd2V2ZXIsIHdoZW4gaXQncyBuZWVkZWQgaXQncyBuZWVkZWQsIGFuZCBp dCBtdXN0IGJlIHRhdWdodC4gRnVydGhlcm1vcmUsIExvamJhbiB0ZW5zZXMgYXJlIHVudXN1YWwg YmVjYXVzZSB0aGV5IHRyZWF0IHRpbWUgYW5kIHNwYWNlIGZ1bmRhbWVudGFsbHkgdGhlIHNhbWUg LSBzYXlpbmcgdGhhdCBJIHdvcmtlZCBhIGxvbmcgdGltZSBhZ28gaXMgbm90IGdyYW1tYXRpY2Fs bHkgZGlmZmVyZW50IHRoYW4gc2F5aW5nIEkgd29yayBmYXIgYXdheSB0byB0aGUgbm9ydGguCgpM aWtlIG1hbnkgb3RoZXIgbGFuZ3VhZ2VzLCB0aGUgTG9qYmFuIHRlbnNlIHN5c3RlbSBpcyBwZXJo YXBzIHRoZSBtb3N0IGRpZmZpY3VsdCBwYXJ0IG9mIHRoZSBsYW5ndWFnZS4gVW5saWtlIG1hbnkg b3RoZXIgbGFuZ3VhZ2VzIHRob3VnaCwgaXQncyBwZXJmZWN0bHkgcmVndWxhciBhbmQgbWFrZXMg c2Vuc2UuIFNvIGZlYXIgbm90LCBmb3IgaXQgd2lsbCBub3QgaW52b2x2ZSBzd2VhdGluZyB0byBs ZWFybiBob3cgdG8gbW9kaWZ5IHRoZSBzZWxicmkgb3IgYW55dGhpbmcgc2lsbHkgbGlrZSB0aGF0 LgoKCgpObywgaW4gdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0sIGFsbCB0ZW5zZXMgYXJlIHN1bXRj aXRhLCB3aGljaCB3ZSBoYXZlIGNvbnZlbmllbnRseSBqdXN0IG1hZGUgb3Vyc2VsdmVzIGZhbWls aWFyIHdpdGguIE9rYXkgb2theSwgdGVjaG5pY2FsbHksIHRlbnNlcyBhcmUgc2xpZ2h0bHkgZGlm ZmVyZW50IGZyb20gb3RoZXIgc3VtdGNpdGEsIGJ1dCB0aGlzIGRpZmZlcmVuY2UgaXMgYWxtb3N0 IGluc2lnbmlmaWNhbnQsIGFuZCB3aWxsIGJlIHdvbid0IGJlIGV4cGxhaW5lZCB1bnRpbCBsYXRl ci4gSW4gbW9zdCBhc3BlY3RzIHRoZXkgYXJlIGxpa2UgYWxsIG90aGVyIHN1bXRjaXRhOyB0aGV5 IGFyZSB0ZXJtaW5hdGVkIGJ5ICcna3UnJywgbWFraW5nIGl0IGV4cGxpY2l0IHRoYXQgUFUgaXMg dGVybWluYXRlZCBieSAnJ2t1JycuCgpUaGVyZSBhcmUgbWFueSBkaWZmZXJlbnQga2luZHMgb2Yg dGVuc2Utc3VtdGNpdGEsIHNvIGxldCdzIHN0YXJ0IGF0IHRoZSBvbmVzIG1vc3QgZmFtaWxpYXIg dG8gRW5nbGlzaC1zcGVha2Vycy4KCl9fJydwdScnX18gLSBzdW10Y2l0YTogYmVmb3JlIHtzdW10 aX0KCl9fJydjYScnX18gLSBzdW10Y2l0YTogYXQgdGhlIHNhbWUgdGltZSBhcyB7c3VtdGl9Cgpf XycnYmEnJ19fIC0gc3VtdGNpdGE6IGFmdGVyIHtzdW10aX0KCgoKVGhlc2UgYXJlIGxpa2UgdGhl IEVuZ2xpc2ggY29uY2VwdHMg4oCcYmVmb3Jl4oCdLCDigJxub3figJ0gYW5kIOKAnGFmdGVy4oCd LiBJbiBhY3R1YWxpdHkgdGhvdWdoLCBvbmUgY291bGQgYXJndWUgdGhhdCB0d28gcG9pbnQtbGlr ZSBldmVudHMgY2FuIG5ldmVyIG9jY3VyIGV4YWN0bHkgc2ltdWx0YW5lb3VzbHksIHJlbmRlcmlu ZyAnJ2NhJycgdXNlbGVzcy4gQnV0ICcnY2EnJyBleHRlbmRzIHNsaWdodGx5IGludG8gdGhlIHBh c3QgYW5kIHRoZSBmdXR1cmUsIG1lYW5pbmcganVzdCDigJxhYm91dCBub3figJ0uIFRoaXMgaXMg YmVjYXVzZSBodW1hbiBiZWluZ3MgZG9uJ3QgcGVyY2VpdmUgdGltZSBpbiBhIHBlcmZlY3RseSBs b2dpY2FsIHdheSwgYW5kIHRoZSBMb2piYW4gdGVuc2Ugc3lzdGVtIHJlZmxlY3RzIHRoYXQuCgoK ClNpZGUgbm90ZTogSXQgd2FzIGFjdHVhbGx5IHN1Z2dlc3RlZCBtYWtpbmcgdGhlIExvamJhbiB0 ZW5zZSBzeXN0ZW0gcmVsYXRpdmlzdGljLiBUaGF0IGlkZWEsIGhvd2V2ZXIsIHdhcyBkcm9wcGVk LCBiZWNhdXNlIGl0IGlzIGNvdW50ZXItaW50dWl0aXZlLCBhbmQgd291bGQgbWVhbiB0aGF0IHRv IGxlYXJuIExvamJhbiwgb25lIHdvdWxkIGhhdmUgdG8gbGVhcm4gdGhlIHRoZW9yeSBvZiByZWxh dGl2aXR5IGZpcnN0LiAgCgoKClNvLCBob3cgd291bGQgeW91IHNheSDigJxJIGV4cHJlc3MgdGhp cyBhZnRlciBJIGNhbWUgaGVyZT/igJ0gKHBvaW50aW5nIHRvIGEgcGFwZXIpCgoKCkFuc3dlcjog fn5ncmV5LGdyZXk6JydtaSBjdXNrdSB0aSBiYSBsbyBudSBtaSBrbGFtYSB0aSB7dmF1fSB7a2Vp IHtrdX0ge3ZhdX0nJ35+CgoKClVzdWFsbHkgd2hlbiBzcGVha2luZywgd2UgZG8gbm90IG5lZWQg dG8gc3BlY2lmeSB3aGljaCBldmVudCB0aGlzIGFjdGlvbiBpcyBpbiB0aGUgcGFzdCByZWxhdGl2 ZSB0by4gSW46IOKAnEkgZ2F2ZSBhIGNvbXB1dGVyIGF3YXnigJ0sIHdlIGNhbiBhc3N1bWUgdGhh dCB0aGUgYWN0aW9uIGhhcHBlbmVkIHJlbGF0aXZlIHRvIOKAnG5vd+KAnSwgYW5kIHRodXMgd2Ug Y2FuIGVsaWRlIHRoZSBzdW10aSBvZiB0aGUgc3VtdGNpdGEsIGJlY2F1c2UgaXQncyBvYnZpb3Vz OgoKJydwdSBrdSBtaSBkdW5kYSBsbyBza2FtaSB7a3V9IHt2YXV9Jycgb3IKCicnbWkgZHVuZGEg bG8gc2thbWkge2t1fSBwdSB7a3V9IHt2YXV9Jycgb3IsIG1vcmUgY29tbW9ubHkKCicnbWkgcHUg e2t1fSBkdW5kYSBsbyBza2FtaSB7a3V9IHt2YXV9JycuIFRoZSBzdW10aSB3aGljaCBmaWxscyB0 aGUgc3VtdGNpdGEgaXMgYW4gaW1wbGllZCAnJ3pvJ2UnJywgd2hpY2ggaXMgYWxtb3N0IGFsd2F5 cyB1bmRlcnN0b29kIGFzIHJlbGF0aXZlIHRvIHRoZSBzcGVha2VyJ3MgdGltZSBhbmQgcGxhY2Ug KHRoaXMgaXMgZXNwZWNpYWxseSBpbXBvcnRhbnQgd2hlbiBzcGVha2luZyBhYm91dCBsZWZ0IGFu ZCByaWdodCkuIElmIHNwZWFraW5nIGFib3V0IHNvbWUgZXZlbnRzIHRoYXQgaGFwcGVuZWQgc29t ZSBvdGhlciB0aW1lIHRoYW4gdGhlIHByZXNlbnQsIGl0IGlzIHNvbWV0aW1lcyBhc3N1bWVkIHRo YXQgYWxsIHRlbnNlcyBhcmUgcmVsYXRpdmUgdG8gdGhhdCBldmVudCB3aGljaCBpcyBiZWluZyBz cG9rZW4gYWJvdXQuIEluIG9yZGVyIHRvIGNsYXJpZnkgdGhhdCBhbGwgdGVuc2VzIGFyZSByZWxh dGl2ZSB0byB0aGUgc3BlYWtlcidzIGN1cnJlbnQgcG9zaXRpb24sIHRoZSB3b3JkICcnbmF1Jycg Y2FuIGJlIHVzZWQgYXQgYW55IHRpbWUuIEFub3RoZXIgd29yZCwgJydraScnIG1hcmtzIGEgdGVu c2Ugd2hpY2ggaXMgdGhlbiBjb25zaWRlcmVkIHRoZSBuZXcgc3RhbmRhcmQuIFRoYXQgd2lsbCBi ZSB0YXVnaHQgd2F5IGxhdGVyLgoKX18nJ25hdScnX18gdXBkYXRlcyB0ZW1wb3JhbCBhbmQgc3Bh Y2lhbCBmcmFtZSBvZiByZWZlcmVuY2UgdG8gdGhlIHNwZWFrZXIncyBjdXJyZW50IGhlcmUgYW5k IG5vdy4KCgoKX18nJ2d1Z2RlJydfXyA9IOKAnHgxIGlzIHRoZSBjb3VudHJ5IG9mIHBlb3BsZSB4 MiB3aXRoIGxhbmQvdGVycml0b3J5IHgz4oCdCgoKCkFsc28gbm90ZSB0aGF0ICcnbWkgcHUge2t1 fSBrbGFtYSBsbyBtZXJrbyBndWdkZSB7a3V9IHt2YXV9JycsIOKAnEkgd2VudCB0byBBbWVyaWNh 4oCdLCBkb2VzIG5vdCBpbXBseSB0aGF0IEknbSBub3Qgc3RpbGwgdHJhdmVsaW5nIHRvIFVTQSwg b25seSB0aGF0IGl0IHdhcyBhbHNvIHRydWUgc29tZSB0aW1lIGluIHRoZSBwYXN0LCBmb3IgaW5z dGFuY2UgZml2ZSBtaW51dGVzIGFnby4KCgoKQXMgbWVudGlvbmVkLCBzcGFjaWFsIGFuZCB0ZW1w b3JhbCB0aW1lIHRlbnNlcyBhcmUgdmVyeSBtdWNoIGFsaWtlLiBDb250cmFzdCB0aGUgcHJldmlv dXMgdGhyZWUgdGltZSB0ZW5zZXMgd2l0aCB0aGVzZSBmb3VyIHNwYWNpYWwgdGVuc2VzOgoKX18n J3p1J2EnJ19fIHN1bXRjaXRhOiBsZWZ0IG9mIHtzdW10aX0KCl9fJydjYSd1JydfXyBzdW10Y2l0 YTogaW4gZnJvbnQgb2Yge3N1bXRpfQoKX18nJ3JpJ3UnJ19fIHN1bXRjaXRhOiByaWdodCBvZiB7 c3VtdGl9CgpfXycnYnUndScnX18gc3VtdGNpdGE6IGF0IHRoZSBzYW1lIHBsYWNlIGFzIHtzdW10 aX0gKHNwYWNpYWwgZXF1aXZhbGVudCBvZiAnJ2NhJycpCgoKCl9fJydvJ28nJ19fOiBhdHRpdHVk aW5hbDogY29tcGxleCBwdXJlIGVtb3Rpb246IHBhdGllbmNlIC0gdG9sZXJhbmNlIC0gYW5nZXIK CgoKV2hhdCB3b3VsZCAnJy5vJ29uYWkgcmkndSB7a3V9IG51IGxvIHByZW51IHtrdX0gY3UgZGFy eGkgbG8gZ2Vya3UgcHUge2t1fSB7a3V9IHt2YXV9IHtrZWl9IHt2YXV9JycgbWVhbj8gKG5vdGlj ZSB0aGUgZmlyc3QgZWxpZGVkIGt1ISkKCl9fJydkYXJ4aScnX18geDEgYmVhdHMvaGl0cyB4MiB3 aXRoIGluc3RydW1lbnQgeDMgYXQgbG9jdXMgeDQKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJx7 YW5nZXIhfSBUbyB0aGUgcmlnaHQgKG9mIHNvbWV0aGluZywgcHJvYmFibHkgbWUpIGFuZCBpbiB0 aGUgcGFzdCAob2Ygc29tZSBldmVudCksIHNvbWV0aGluZyBpcyBhbiBldmVudCBvZiBhIHBlcnNv biBiZWF0aW5nIGEgZG9nLuKAnSBvciDigJxBIG1hbiBoaXQgYSBkb2cgdG8gbXkgcmlnaHQh4oCd fn4KCgoKSWYgdGhlcmUgYXJlIHNldmVyYWwgdGVuc2Ugc3VtdGNpdGEgaW4gb25lIGJyaWRpLCB0 aGUgcnVsZSBpcyB0aGF0IHlvdSByZWFkIHRoZW0gZnJvbSBsZWZ0IHRvIHJpZ2h0LCB0aGlua2lu ZyBpdCBhcyBhIHNvIGNhbGxlZCDigJxpbWFnaW5hcnkgam91cm5leeKAnSwgV2hlcmUgeW91IGJl Z2luIGF0IGFuIGltcGxpZWQgcG9pbnQgaW4gdGltZSBhbmQgc3BhY2UgKGRlZmF1bHQ6IHRoZSBz cGVha2VyJ3Mgbm93IGFuZCBoZXJlKSwgYW5kIHRoZW4gZm9sbG93IHRoZSBzdW10Y2l0YSBvbmUg YXQgYSB0aW1lIGZyb20gbGVmdCB0byByaWdodC4KCkV4YW1wbGUKCicnbWkgcHUge2t1fSBiYSB7 a3V9IGppbXBlIGZpIGxvIGxvamJvIGZhJ29ybWEnbyB7a3V9IHt2YXV9JycgPSDigJxBdCBzb21l IHRpbWUgaW4gdGhlIHBhc3QsIEkgd2lsbCBiZSBhYm91dCB0byBrbm93IGFib3V0IGZhJ29ybWEn b3Mu4oCdCgonJ21pIGJhIHtrdX0gcHUge2t1fSBqaW1wZSBmaSBsbyBsb2pibyBmYSdvcm1hJ28g e2t1fSB7dmF1fScnIOKAnEF0IHNvbWUgcG9pbnQgaW4gdGhlIGZ1dHVyZSwgSSB3aWxsIGhhdmUg dW5kZXJzdG9vZCBhYm91dCBmYSdvcm1hJ29zLuKAnQoKU2luY2Ugd2UgZG8gbm90IHNwZWNpZnkg dGhlIGFtb3VudCBvZiB0aW1lIHdlIG1vdmUgYmFjayBvciBmb3J0aCwgdGhlIHVuZGVyc3RhbmRp bmcgY291bGQgaW4gYm90aCBjYXNlcyBoYXBwZW4gaW4gdGhlIGZ1dHVyZSBvciB0aGUgcGFzdCBv ZiB0aGUgcG9pbnQgb2YgcmVmZXJlbmNlLgoKCgpBbHNvLCBpZiBzcGFjaWFsIGFuZCB0ZW1wb3Jh bCB0ZW5zZXMgYXJlIG1peGVkLCB0aGUgcnVsZSBpcyB0byBhbHdheXMgcHV0IHRlbXBvcmFsIGJl Zm9yZSBzcGFjaWFsLiBJZiB0aGlzIHJ1bGUgaXMgdmlvbGF0ZWQsIGl0IGNhbiBzb21ldGltZXMg cmVzdWx0IGluIHN5bnRhY3RpY2FsIGFtYmlndWl0eSwgd2hpY2ggTG9qYmFuIGRvZXMgbm90IHRv bGVyYXRlLgoKCgpTdXBwb3NlIHdlIHdhbnQgdG8gc3BlY2lmeSB0aGF0IHRoZSBhIG1hbiBoaXQg YSBkb2cganVzdCBhIG1pbnV0ZSBhZ28uIFRoZSB3b3JkcyAnJ3ppJycsICcnemEnJyBhbmQgJyd6 dScnIHNwZWNpZmllcyBhIHNob3J0LCB1bnNwZWNpZmllZCAocHJlc3VtYWJseSBtZWRpdW0pIGFu ZCBsb25nIGRpc3RhbmNlIGluIHRpbWUuIE5vdGljZSB0aGUgdm93ZWwgb3JkZXIgJydpJycsICcn YScnIGFuZCAnJ3UnJy4gVGhpcyBvcmRlciBhcHBlYXJzIGFnYWluIGFuZCBhZ2FpbiBpbiBMb2pi YW4sIGFuZCBtaWdodCBiZSB3b3J0aCB0byBtZW1vcml6ZS4g4oCcU2hvcnTigJ0gYW5kIOKAnGxv bmfigJ0gaW4gYXJlIGFsd2F5cyBjb250ZXh0IGRlcGVuZGVudCwgcmVsYXRpdmUgYW5kIHN1Ympl Y3RpdmUuIFR3byBodW5kcmVkIHllYXJzIGlzIGEgc2hvcnQgdGltZSBmb3IgYSBzcGVjaWVzIHRv IGV2b2x2ZSwgYnV0IGEgbG9uZyB0aW1lIHRvIHdhaXQgZm9yIHRoZSBidXMuCgpfXycnemknJ19f IHN1bXRjaXRhOiBPY3VycmluZyB0aGUgc21hbGwgZGlzdGFuY2Ugb2Yge3N1bXRpfSBpbiB0aW1l IGZyb20gcG9pbnQgb2YgcmVmZXJlbmNlIAoKX18nJ3phJydfXyBzdW10Y2l0YTogT2N1cnJpbmcg dGhlIHVuc3BlY2lmaWVkKG1lZGl1bSkgZGlzdGFuY2Ugb2Yge3N1bXRpfSBpbiB0aW1lIGZyb20g cG9pbnQgb2YgcmVmZXJlbmNlIAoKX18nJ3p1JydfXyBzdW10Y2l0YTogT2N1cnJpbmcgdGhlIGZh ciBkaXN0YW5jZSBvZiB7c3VtdGl9IGluIHRpbWUgZnJvbSB0aGUgcG9pbnQgb2YgcmVmZXJlbmNl IAoKCgpTaW1pbGFybHksIHNwYWNpYWwgZGlzdGFuY2UgaXMgbWFya2VkIGJ5ICcndmknJywgJyd2 YScnIGFuZCAnJ3Z1JycgZm9yIHNob3J0LCB1bnNwZWNpZmllZCAobWVkaXVtKSBhbmQgbG9uZyBk aXN0YW5jZSBpbiBzcGFjZS4KCl9fJyd2aScnX18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSBzbWFs bCBkaXN0YW5jZSBvZiB7c3VtdGl9IGluIHNwYWNlIGZyb20gcG9pbnQgb2YgcmVmZXJlbmNlIAoK X18nJ3ZhJydfXyBzdW10Y2l0YTogT2N1cnJpbmcgdGhlIHVuc3BlY2lmaWVkKG1lZGl1bSkgZGlz dGFuY2Ugb2Yge3N1bXRpfSBpbiBzcGFjZSBmcm9tIHBvaW50IG9mIHJlZmVyZW5jZSAKCl9fJyd2 dScnX18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSBmYXIgZGlzdGFuY2Ugb2Yge3N1bXRpfSBpbiBz cGFjZSBmcm9tIHRoZSBwb2ludCBvZiByZWZlcmVuY2UgCgpfXycnZ3Vua2EnJ19fIOKAnHgxIHdv cmtzIGF0IHgyIHdpdGggb2JqZWN0aXZlIHgz4oCdCgoKClRyYW5zbGF0ZTogJydiYSB7a3V9IHph IGt1IG1pIHZ1IHtrdX0gZ3Vua2Ege3ZhdX0nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFNv bWUgdGltZSBpbiB0aGUgZnV0dXJlLCBJIHdpbGwgd29yayBhIHBsYWNlIGxvbmcgYXdheeKAnX5+ CgpOb3RlOiBQZW9wbGUgcmFyZWx5IHVzZSAnJ3ppJycsICcnemEnJyBvciAnJ3p1Jycgd2l0aG91 dCBhICcncHUnJyBvciAnJ2JhJycgaW4gZnJvbnQgb2YgaXQuIFRoaXMgaXMgYmVjYXVzZSBtb3N0 IHBlb3BsZSBhbHdheXMgbmVlZCB0byBzcGVjaWZ5IHBhc3Qgb3IgZnV0dXJlIGluIHRoZWlyIG5h dGl2ZSBsYW5ndWFnZS4gV2hlbiB5b3UgdGhpbmsgYWJvdXQgaXQgTG9qYmFuaWNhbGx5LCBtb3N0 IG9mIHRoZSB0aW1lIHRoZSB0aW1lLWRpcmVjdGlvbiBpcyBvYnZpb3VzLCBhbmQgdGhlICcncHUn JyBvciAnJ2JhJycgc3VwZXJmbHVvdXMhCgoKClRoZSBvcmRlciBpbiB3aGljaCBkaXJlY3Rpb24t c3VtdGNpdGEgYW5kIGRpc3RhbmNlLXN1bXRjaXRhIGFyZSBzYWlkIG1ha2VzIGEgZGlmZmVyZW5j ZS4gUmVtZW1iZXIgdGhhdCB0aGUgbWVhbmluZ3Mgb2Ygc2V2ZXJhbCB0ZW5zZSB3b3JkcyBwbGFj ZWQgdG9nZXRoZXIgYXJlIHBpY3R1cmVkIGJ5IGFuIGltYWdpbmFyeSBqb3VybmV5IHJlYWRpbmcg ZnJvbSBsZWZ0IHRvIHJpZ2h0LiBUaHVzICcncHUgenUnJyBpcyDigJxhIGxvbmcgdGltZSBhZ2/i gJ0gd2hpbGUgJyd6dSBwdScnIGlzIOKAnGluIHRoZSBwYXN0IG9mIHNvbWUgcG9pbnQgaW4gdGlt ZSB3aGljaCBpcyBhIGxvbmcgdGltZSB0b3dhcmQgdGhlIGZ1dHVyZSBvciB0aGUgcGFzdCBvZiBu b3figJ0uIEluIHRoZSBmaXJzdCBleGFtcGxlLCAnJ3B1Jycgc2hvd3MgdGhhdCB3ZSBiZWdpbiBp biB0aGUgcGFzdCwgJyd6dScnIHRoZW4gdGhhdCBpdCBpcyBhIGxvbmcgdGltZSBiYWNrd2FyZHMu IEluIHRoZSBzZWNvbmQgZXhhbXBsZSwgJyd6dScnIHNob3dzIHRoYXQgd2UgYmVnaW4gYXQgc29t ZSBwb2ludCBmYXIgYXdheSBpbiB0aW1lIGZyb20gbm93LCAnJ3B1JycgdGhlbiwgdGhhdCB3ZSBt b3ZlIGJhY2t3YXJkcyBmcm9tIHRoYXQgcG9pbnQuIFRodXMgJydwdSB6dScnIGlzIGFsd2F5cyBp biB0aGUgcGFzdC4gJyd6dSBwdScnIGNvdWxkIGJlIGluIHRoZSBmdXR1cmUuIFRoZSBmYWN0IHRo YXQgdGhlc2UgdGltZSB0ZW5zZXMgY29tYmluZSBpbiB0aGlzIHdheSBpcyBvbmUgb2YgdGhlIGRp ZmZlcmVuY2VzIGJldHdlZW4gdGVuc2Ugc3VtdGNpdGEgYW5kIG90aGVyIHN1bXRjaXRhLiBUaGUg bWVhbmluZ3Mgb2Ygb3RoZXIgc3VtdGNpdGEgYXJlIG5vdCBhbHRlcmVkIGJ5IHRoZSBwcmVzZW5j ZSBvZiBhZGRpdGlvbmFsIHN1bXRjaXRhIGluIGEgYnJpZGkuCgoKCkFzIGJyaWVmbHkgaW1wbGll ZCBlYXJsaWVyLCBhbGwgdGhlc2UgY29uc3RydWN0cyBiYXNpY2FsbHkgdHJlYXQgYnJpZGkgYXMg aWYgdGhleSB3ZXJlIHBvaW50LWxpa2UgaW4gdGltZSBhbmQgc3BhY2UuIEluIGFjdHVhbGl0eSwg bW9zdCBldmVudHMgcGxheSBvdXQgb3ZlciBhIHNwYW4gb2YgdGltZSBhbmQgc3BhY2UuIEluIHRo ZSBmb2xsb3dpbmcgZmV3IHBhcmFncmFwaHMsIHdlIHdpbGwgbGVhcm4gaG93IHRvIHNwZWNpZnkg aW50ZXJ2YWxzIG9mIHRpbWUgYW5kIHNwYWNlLgoKCgpfXycnemUnaScnX18gc3VtdGNpdGE6IHNw YW5uaW5nIG92ZXIgdGhlIHNob3J0IHRpbWUgb2Yge3N1bXRpfQoKX18nJ3plJ2EnJ19fIHN1bXRj aXRhOiBzcGFubmluZyBvdmVyIHRoZSB1bnNwZWNpZmllZCAobWVkaXVtKSB0aW1lIG9mIHtzdW10 aX0KCl9fJyd6ZSd1JydfXyBzdW10Y2l0YTogc3Bhbm5pbmcgb3ZlciB0aGUgbG9uZyB0aW1lIG9m IHtzdW10aX0KCgoKX18nJ3ZlJ2knJ19fIHN1bXRjaXRhOiBzcGFubmluZyBvdmVyIHRoZSBzaG9y dCBzcGFjZSBvZiB7c3VtdGl9CgpfXycndmUnYScnX18gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIg dGhlIHVuc3BlY2lmaWVkIChtZWRpdW0pIHNwYWNlIG9mIHtzdW10aX0KCl9fJyd2ZSd1JydfXyBz dW10Y2l0YTogc3Bhbm5pbmcgb3ZlciB0aGUgbG9uZyBzcGFjZSBvZiB7c3VtdGl9CgoKClNpeCB3 b3JkcyBhdCBhIHRpbWUsIEkga25vdywgYnV0IHJlbWVtYmVyaW5nIHRoZSB2b3dlbCBzZXF1ZW5j ZSBhbmQgdGhlIHNpbWlsYXJpdHkgb2YgdGhlIGluaXRpYWwgbGV0dGVyIHogZm9yIHRlbXBvcmFs IHRlbnNlcyBhbmQgdiBmb3Igc3BhY2lhbCB0ZW5zZXMgbWlnaHQgaGVscCB0aGUgbWVtb3Jpemlu Zy4KCl9fJycub2knJ19fIC0gYXR0aXR1ZGluYWw6IHBhaW4gLSBwbGVhc3VyZQoKCgpUcmFuc2xh dGU6ICcnLm9pIGRhaSBkbyB2ZSd1IHtrdX0ga2xhbWEgbG8gZG90Y28gZ3VnZGUge2t1fSB6ZSd1 IHtrdX0ge3ZhdX0nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnE91Y2gsIHlvdSBzcGVuZCBh IGxvbmcgdGltZSB0cmF2ZWxpbmcgYSBsb25nIHNwYWNlIHRvIEdlcm1hbnnigJ0gfn4KCgoKVGhv dWdoIG1vc3QgcGVvcGxlIGFyZSBub3QgZmFtaWxpYXIgd2l0aCBzcGFjaWFsIHRlbnNlcywgdGhl c2UgbmV3IHdvcmRzIGNhbiBvcGVuIHVwIGZvciBzb21lIHByZXR0eSBzd2VldCB1c2VzLiBPbmUg Y291bGQsIGZvciBpbnN0YW5jZSwgdHJhbnNsYXRlIOKAnFRoYXQncyBhIGJpZyBkb2figJ0gYXMg Jyd0aSB2ZSd1IHtrdX0gZ2Vya3Uge3ZhdX0nJy4gU2F5aW5nOiDigJxUaGlzIHRoaW5nIGRvZ3Mg Zm9yIGEgbG9uZyBzcGFjZeKAnSBtYWtlcyB5b3Ugc291bmQgcmV0YXJkZWQgaW4gRW5nbGlzaCwg YnV0IHdlbGwtc3Bva2VuIGluIExvamJhbiEKCgoKJyd6ZSd1JycgYW5kIGl0cyBicm90aGVycyBh bHNvIGNvbWJpbmUgd2l0aCBvdGhlciB0ZW5zZXMgdG8gZm9ybSBjb21wb3VuZCB0ZW5zZXMuIFRo ZSBydWxlIGZvciAnJ3plJ3UnJyBhbmQgdGhlIG90aGVycyBhcmUgdGhhdCBhbnkgdGVuc2VzIHBy ZWNlZGluZyBpdCBtYXJrcyBhbiBlbmRwb2ludCBvZiB0aGUgcHJvY2VzcyAocmVsYXRpdmUgdG8g dGhlIHBvaW50IG9mIHJlZmVyZW5jZSkgYW5kIGFueSB0ZW5zZXMgY29taW5nIGFmdGVyIGl0IG1h cmtzIHRoZSBvdGhlciBlbmRwb2ludCByZWxhdGl2ZSB0byB0aGUgZmlyc3QuIFRoaXMgc2hvdWxk IGJlIGRlbW9uc3RyYXRlZCB3aXRoIGEgY291cGxlIG9mIGV4YW1wbGVzOgoKJycubydvY3UnaSBk byBjaXRrYSBwdSB7a3V9IHplJ3Uge2t1fSBiYSB7a3V9IHp1IHtrdX0ge3ZhdX0nJyAtIOKAnHt0 b2xlcmFuY2V9IHlvdSBlYXQgYmVnaW5uaW5nIGluIHRoZSBwYXN0IGFuZCBmb3IgYSBsb25nIHRp bWUgZW5kaW5nIGF0IHNvbWUgcG9pbnQgZmFyIGludG8gdGhlIGZ1dHVyZSBvZiB3aGVuIHlvdSBz dGFydGVk4oCdIG9yIOKAnEhtcGYsIHlvdSBhdGUgZm9yIGEgbG9uZyB0aW1l4oCdLiBPbmUgY2Fu IGFsc28gY29udHJhc3QgJydkbyBjYSB7a3V9IHplJ2kge2t1fSBwdSB7a3V9IGtsYW1hIHt2YXV9 Jycgd2l0aCAnJ2RvIHB1IHtrdX0gemUnaSB7a3V9IGNhIHtrdX0ga2xhbWEge3ZhdX0nJy4gVGhl IGZpcnN0IGV2ZW50IG9mIHRyYXZlbGluZyBoYXMgb25lIGVuZHBvaW50IGluIHRoZSBwcmVzZW50 IGFuZCBleHRlbmRzIGEgbGl0dGxlIHRvd2FyZHMgdGhlIHBhc3QsIHdoaWxlIHRoZSBzZWNvbmQg ZXZlbnQgaGFzIG9uZSBlbmRwb2ludCBpbiB0aGUgcGFzdCBhbmQgZXh0ZW5kcyBvbmx5IHRvIHRo ZSBwcmVzZW50ICh0aGF0IGlzLCBzbGlnaHR5IGludG8gdGhlIHBhc3Qgb3IgZnV0dXJlKSBvZiB0 aGF0IGVuZHBvaW50LgoKX18nJ2ptaXZlJydfXyDigJx4MSBpcyBhbGl2ZSBieSBzdGFuZGFyZCB4 MuKAnQoKCgpXaGF0IGRvZXMgJycudWkgbWkgcHUge2t1fSB6aSB7a3V9IHplJ3Uge2t1fSBqbWl2 ZSB7dmF1fScnIGV4cHJlc3M/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCce2hhcHBpbmVzcyF9 IEkgbGl2ZSBmcm9tIGEgbGl0dGxlIGludG8gdGhlIHBhc3QgYW5kIGEgbG9uZyB3YXkgdG93YXJk cyB0aGUgZnV0dXJlIG9yIHBhc3QgKG9idmlvdXNseSB0aGUgZnV0dXJlLCBpbiB0aGlzIGNhc2Up IG9mIHRoYXQgZXZlbnTigJ0gb3Ig4oCcSSBhbSB5b3VuZywgYW5kIGhhdmUgbW9zdCBvZiBteSBs aWZlIGFoZWFkIG9mIG1lIDop4oCdfn4KCgoKSnVzdCB0byB1bmRlcmxpbmUgdGhlIHNpbWlsYXJp dHkgd2l0aCBzcGFjaWFsIHRlbnNlcywgbGV0J3MgaGF2ZSBhbm90aGVyIGV4YW1wbGUsIHRoaXMg dGltZSB3aXRoIHNwYWNpYWwgdGVuc2VzOgoKX18nJy51J2UnJ19fIGF0dGl0dWRpbmFsOiB3b25k ZXIgLSBjb21tb25wbGFjZQoKCgonJy51J2UgemEnYSB7a3V9IGJ1J3Uge2t1fSB2ZSd1IHtrdX0g Y2EndSB7a3V9IHpkYW5pIHt2YXV9JycgLSBXaGF0IGRvZXMgaXQgbWVhbj8KCgoKQW5zd2VyOiB+ fmdyZXksZ3JleTog4oCce3dvbmRlcn0ge0kgb2JzZXJ2ZSF9IEV4dGVuZGluZyBhIGxvbmcgc3Bh Y2UgZnJvbSBoZXJlIHRvIG15IGZyb250IGlzIGEgaG9tZS7igJ0gb3Ig4oCcV293LCB0aGlzIGhv bWUgZXh0ZW5kaW5nIGFoZWFkIGlzIGh1Z2Uh4oCdfn4KCgoKQmVmb3JlIHdlIGNvbnRpbnVlIHdp dGggdGhpcyBzeW50YXgtaGVhdnkgdGVuc2Ugc3lzdGVtLCBpIHJlY29tbWVuZCBzcGVuZGluZyBh dCBsZWFzdCB0ZW4gbWludXRlcyBkb2luZyBzb21ldGhpbmcgd2hpY2ggZG9lc24ndCBvY2N1cHkg eW91ciBicmFpbiBpbiBvcmRlciB0byBsZXQgdGhlIGluZm9ybWF0aW9uIHNpbmsgaW4uIFNpbmcg YSBzb25nIG9yIGVhdCBhIGNvb2tpZSB2ZXJ5IHNsb3dseSAtIHdoYXRldmVyLCBhcyBsb25nIGFz IHlvdSBsZXQgeW91ciBtaW5kIHJlc3QuCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNzb24gZWxl dmVuIChaQWhPKQoKVGhvdWdoIHdlIHdvbid0IGdvIHRocm91Z2ggYWxsIExvamJhbiB0ZW5zZSBj b25zdHJ1Y3RzIGZvciBub3csIHRoZXJlIGlzIG9uZSBvdGhlciBraW5kIG9mIHRlbnNlIHRoYXQg SSB0aGluayBzaG91bGQgYmUgdGF1Z2h0IG5vdy4gVGhlc2UgYXJlIGNhbGxlZCDigJxldmVudCBj b250b3Vyc+KAnSwgYW5kIHJlcHJlc2VudCBhIHZlcnkgZGlmZmVyZW50IHdheSBvZiB2aWV3aW5n IHRlbnNlcyB0aGF0IHdlIGhhdmUgc2VlbiBzbyBmYXIuIFNvIGxldCdzIGdldCB0byBpdDoKCgoK VXNpbmcgdGhlIHRlbnNlcyB3ZSBoYXZlIGxlYXJuZWQgc28gZmFyLCB3ZSBjYW4gaW1hZ2luZSBh biBpbmRlZmluaXRlIHRpbWUgbGluZSwgYW5kIHdlIHRoZW4gcGxhY2UgZXZlbnRzIG9uIHRoYXQg bGluZSByZWxhdGl2ZSB0byB0aGUg4oCcbm934oCdLiBXaXRoIGV2ZW50IGNvbnRvdXJzLCBob3dl dmVyLCB3ZSB2aWV3IGVhY2ggZXZlbnQgYXMgYSBwcm9jZXNzLCB3aGljaCBoYXMgY2VydGFpbiBz dGFnZXM6IEEgdGltZSBiZWZvcmUgaXQgdW5mb2xkcywgYSB0aW1lIHdoZW4gaXQgYmVnaW5zLCBh IHRpbWUgd2hlbiBpdCBpcyBpbiBwcm9jZXNzLCBhIHRpbWUgd2hlbiBpdCBlbmRzLCBhbmQgYSB0 aW1lIGFmdGVyIGl0IGhhcyBlbmRlZC4gRXZlbnQgY29udG91cnMgdGhlbiB0ZWxscyB1cyB3aGlj aCBwYXJ0IG9mIHRoZSBldmVudCdzIHByb2Nlc3Mgd2FzIGhhcHBlbmluZyBkdXJpbmcgdGhlIHRp bWUgc3BlY2lmaWVkIGJ5IHRoZSBvdGhlciB0ZW5zZXMuIFdlIG5lZWQgYSBjb3VwbGUgb2YgdGVu c2VzIGZpcnN0OgoKCgpfXycncHUnbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJp ZGkgaGFzIG5vdCB5ZXQgaGFwcGVuZWQgZHVyaW5nIHtzdW10aX0KCl9fJydjYSdvJydfXyAtIHN1 bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBpbiBwcm9jZXNzIGR1cmluZyB7c3VtdGl9 CgpfXycnYmEnbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogVGhlIHByb2Nlc3Mgb2Yg YnJpZGkgaGFzIGVuZGVkIGR1cmluZyB7c3VtdGl9CgoKClRoaXMgbmVlZHMgdG8gYmUgZGVtb25z dHJhdGVkIGJ5IHNvbWUgZXhhbXBsZXMuIFdoYXQncyAnJy51aSBtaSBwdSdvIHtrdX0gc2UgemRh bmkge3ZhdX0nJyBtZWFuPwoKCgpBbnN3ZXI6IOKAnFlheSwgSSdsbCBiZWdpbiB0byBoYXZlIGEg aG9tZeKAnS4KCgoKQnV0IGhleSwgeW91IGFzaywgd2h5IG5vdCBqdXN0IHNheSAnJy51aSBtaSBi YSB7a3V9IHNlIHpkYW5pIHt2YXV9JycgYW5kIGV2ZW4gc2F2ZSBhIHN5bGxhYmxlPyBCZWNhdXNl LCByZW1lbWJlciwgc2F5aW5nIHRoYXQgeW91IHdpbGwgaGF2ZSBhIGhvbWUgaW4gdGhlIGZ1dHVy ZSBzYXlzIG5vdGhpbmcgYWJvdXQgd2hldGhlciB5b3UgaGF2ZSBhIGhvbWUgbm93LiBVc2luZyAn J3B1J28nJywgdGhvdWdoLCB5b3Ugc2F5IHRoYXQgeW91IGFyZSBub3cgaW4gdGhlIHBhc3Qgb2Yg dGhlIHByb2Nlc3Mgb2YgeW91IGhhdmluZyBhIGhvbWUsIHdoaWNoIG1lYW5zIHRoYXQgeW91IGRv bid0IGhhdmUgb25lIG5vdy4KCk5vdGUsIGJ5IHRoZSB3YXksIHRoYXQgJydtaSBiYSB7a3V9IHNl IHpkYW5pIHt2YXV9JycgaXMgc2ltaWxhciB0byAnJ21pIHB1J28ge2t1fSBzZSB6ZGFuaSB7dmF1 fScnLCBhbmQgbGlrZXdpc2Ugd2l0aCAnJ2JhJ28nJyBhbmQgJydwdScnLiBXaHkgZG8gdGhleSBz ZWVtIHJldmVyc2VkPyBCZWNhdXNlIGV2ZW50IGNvbnRvdXJzIHZpZXcgdGhlIHByZXNlbnQgYXMg c2VlbiBmcm9tIHRoZSB2aWV3cG9pbnQgb2YgdGhlIHByb2Nlc3MsIHdoZXJlYXMgdGhlIG90aGVy IHRlbnNlcyB2aWV3IGV2ZW50cyBzZWVuIGZyb20gdGhlIHByZXNlbnQuCgoKCk9mdGVuLCBldmVu dCBjb250b3VycyBhcmUgbW9yZSBwcmVjaXNlIHRoYXQgb3RoZXIga2luZCBvZiB0ZW5zZXMuIEV2 ZW4gbW9yZSBjbGFyaXR5IGlzIGFjaGlldmVkIGJ5IGNvbWJpbmluZyBzZXZlcmFsIHRlbnNlczog JycuYSdvIG1pIGJhe2t1fSB6aSB7a3V9IGJhJ28ge2t1fSBndW5rYSB7dmF1fScnIC0g4oCcSSBo b3BlIEkndmUgc29vbiBmaW5pc2hlZCB3b3JraW5nLuKAnQoKCgpJbiBMb2piYW4sIHdlIGFsc28g b3BlcmF0ZSB3aXRoIGFuIGV2ZW50J3Mg4oCcbmF0dXJhbCBiZWdpbm5pbmfigJ0gYW5kIGl0cyDi gJxuYXR1cmFsIGVuZOKAnS4gVGhlIHRlcm0g4oCcbmF0dXJhbOKAnSBpcyBoaWdobHkgc3ViamVj dGl2ZSBpbiB0aGlzIHNlbnNlLCBhbmQgdGhlIG5hdHVyYWwgZW5kIHJlZmVycyB0byB0aGUgcG9p bnQgaW4gdGhlIHByb2Nlc3Mgd2hlcmUgaXQgc2hvdWxkIGVuZC4gWW91IGNhbiBzYXkgYWJvdXQg YSBsYXRlIHRyYWluLCBmb3IgaW5zdGFuY2UsIHRoYXQgaXRzIHByb2Nlc3Mgb2YgcmVhY2hpbmcg eW91IGlzIG5vdyBleHRlbmRpbmcgYmV5b25kIGl0cyBuYXR1cmFsIGVuZC4gQW4gdW5kZXJjb29r ZWQsIGJ1dCBzZXJ2ZWQgbWVhbCwgc2ltaWxhcmx5LCBpcyBiZWluZyBlYXRlbiBiZWZvcmUgdGhh dCBwcm9jZXNzJyBuYXR1cmFsIGJlZ2lubmluZy4gVGhlIGV2ZW50IGNvbnRvdXJzIHVzZWQgaW4g dGhlc2UgZXhhbXBsZXMgYXJlIGFzIGZvbGxvd3M6CgoKCl9fJyd6YSdvJydfXyAtIHN1bXRjaXRh OiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBpbiBwcm9jZXNzIGJleW9uZCBpdHMgbmF0dXJhbCBl bmQgZHVyaW5nIHtzdW10aX0KCl9fJyd4YSdvJydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3Vy OiBCcmlkaSBpcyBpbW1hdHVyZWx5IGluIHByb2Nlc3MgZHVyaW5nIHtzdW10aX0KCgoKX18nJ2Np ZGphJydfXzog4oCceDEgaXMgZm9vZCwgd2hpY2ggaXMgZWRpYmxlIGZvciB4MuKAnQoKCgpUcmFu c2xhdGU6ICcnLm9pIGRvIGNpdGthIHphJ28gbG8gbnUgZG8gYmEnbyB7a3V9IHUnZSBjaXRrYSB6 bydlIG5vaSBjaWRqYSBkbyB7dmF1fSB7a3Unb30ge3ZhdX0ge2tlaX0ge2t1fScnCgoKCkFuc3dl cjogfn5ncmV5LGdyZXk64oCcT3ksIHlvdSBrZWVwIGVhdGluZyB3aGVuIHlvdSBoYXZlIGZpbmlz aGVkLCBpbmNyZWRpYmx5LCBlYXRpbmcgc29tZXRoaW5nIGVkaWJsZSHigJ1+fgoKCgp7aW1nIGZp bGVJZD0iMiIgdGh1bWI9InkiIHJlbD0iYm94W2ddIn0KCkltYWdlIGFib3ZlOiBaQWhPIHRlbnNl cyAoZXZlbnQgY29udG91cnMpLiBBbGwgdGVuc2VzIGFib3ZlIHRoZSBsaW5lIG9mIHRoZSBldmVu dCBzaWduaWZ5IHN0YWdlcyBjb3ZlcmluZyBhbiBhbW91bnQgb2YgdGltZS4gQWxsIHRlbnNlcyBi ZWxvdyB0aGUgZXZlbnQgbGluZSBzaWduaWZ5IHN0YWdlcyB3aGljaCBhcmUgcG9pbnQtbGlrZS4K CgoKQWxsIG9mIHRoZXNlIHRlbnNlcyBoYXZlIGJlZW4gZGVzY3JpYmluZyBzdGFnZXMgb2YgYSBw cm9jZXNzIHdoaWNoIHRha2VzIHNvbWUgdGltZSAoYXMgc2hvd24gb24gdGhlIGdyYXBoIGFib3Zl OyB0aG9zZSB0ZW5zZXMgYWJvdmUgdGhlIGV2ZW50IGxpa2UpLiBCdXQgbWFueSBvZiB0aGUgZXZl bnQgY29udG91cnMgZGVzY3JpYmVzIHBvaW50IGxpa2Ugc3RhZ2VzIGluIHRoZSBwcm9jZXNzLCBs aWtlIGl0cyBiZWdpbm5pbmcuIEFzIGlzIHRydWUgb2YgJydjYScnIGFuZCAnJ2J1J3UnJywgdGhl eSBhY3R1YWxseSBleHRlbmQgc2xpZ2h0bHkgaW50byB0aGUgcGFzdCBhbmQgZnV0dXJlIG9mIHRo YXQgcG9pbnQsIGFuZCBuZWVkIG5vdCB0byBiZSBwcmVjaXNlLgoKCgpUaGUgdHdvIG1vc3QgaW1w b3J0YW50IHBvaW50LWxpa2UgZXZlbnQgY29udG91cnMgYXJlOgoKX18nJ2NvJ2EnJ19fIC0gc3Vt dGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIGF0IGl0cyBiZWdpbm5pbmcgZHVyaW5nIHtz dW10aX0KCl9fJydjbyd1JydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBh dCBpdHMgZW5kaW5nIGR1cmluZyB7c3VtdGl9CgoKCkZ1cnRoZXJtb3JlLCB0aGVyZSBpcyBhIHBv aW50IHdoZXJlIHRoZSBwcm9jZXNzIGlzIG5hdHVyYWxseSBjb21wbGV0ZSwgYnV0IG5vdCBuZWNl c3NhcmlseSBoYXMgZW5kZWQgeWV0OgoKX18nJ21vJ3UnJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNv bnRvdXI6IEJyaWRpIGlzIGF0IGl0cyBuYXR1cmFsIGVuZGluZyBkdXJpbmcge3N1bXRpfQoKTW9z dCBvZiB0aGUgdGltZSwgdGhvdWdoLCBwcm9jZXNzZXMgYWN0dWFsbHkgZW5kIGF0IHRoZWlyIG5h dHVyYWwgZW5kaW5nOyB0aGlzIGlzIHdoYXQgbWFrZXMgaXQgbmF0dXJhbC4gVHJhaW5zIGFyZSBu b3QgdXN1YWxseSBsYXRlLCBhbmQgcGVvcGxlIHVzdWFsbHkgcmV0cmFpbiB0aGVtc2VsdmVzIHRv IGVhdCBvbmx5IGVkaWJsZSBmb29kLgoKCgpTaW5jZSBhIHByb2Nlc3MgY2FuIGJlIGludGVycnVw dGVkIGFuZCByZXN1bWVkLCB0aGVzZSBwb2ludHMgaGF2ZSBlYXJuZWQgdGhlaXIgb3duIGV2ZW50 IGNvbnRvdXIgYWxzbzoKCl9fJydkZSdhJydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBC cmlkaSBpcyBwYXVzaW5nIGR1cmluZyB7c3VtdGl9CgpfXycnZGknYScnX18gLSBzdW10Y2l0YTog ZXZlbnQgY29udG91cjogQnJpZGkgaXMgcmVzdW1pbmcgZHVyaW5nIHtzdW10aX0KCgoKSW4gZmFj dCwgc2luY2UgJydqdW5kaScnIG1lYW5zIOKAnHgxIHBheXMgYXR0ZW50aW9uIHRvIHgy4oCdLCAn J2RlJ2EganVuZGknJyBhbmQgJydkaSdhIGp1bmRpJycgYXJlIGNvbW1vbiBMb2piYW4gd2F5cyBv ZiBzYXlpbmcg4oCcQlJC4oCdIGFuZCDigJxiYWNr4oCdLiBPbmUgY291bGQgb2YgY291cnNlIGFs c28gc2F5IHRoZSBldmVudCBjb250b3VycyBieSB0aGVtc2VsdmVzIGFuZCBob3BlIHRoZSBwb2lu dCBnZXRzIGFjcm9zcy4KCgoKRmluYWxseSwgb25lIGNhbiB0cmVhdCBhbiBlbnRpcmUgZXZlbnQs IGZyb20gdGhlIGJlZ2lubmluZyB0byB0aGUgZW5kIGFzIG9uZSBzaW5nbGUgcG9pbnQgdXNpbmcg JydjbydpJyc6CgpfXycncGVubWknJ19fIOKAnHgxIG1lZXRzIHgyIGF0IGxvY2F0aW9uIHgz4oCd CgonJ21pIHB1IHtrdX0gemkge2t1fSBjbydpIHtrdX0gcGVubWkgbG8gZG90Y28gcHJlbnUge2t1 fSB7dmF1fScnIC0g4oCcQSBsaXR0bGUgd2hpbGUgYWdvLCBJIHdhcyBhdCB0aGUgcG9pbnQgaW4g dGltZSB3aGVyZSBpIG1ldCBhIEdlcm1hbiBwZXJzb27igJ0KCgoKCgohIUxvamJhbiBMZXNzb25z IC0gTGVzc29uIHR3ZWx2ZSAob3JkZXJzIGFuZCBxdWVzdGlvbnMpCgpQaGV3LCB0aG9zZSB0d28g bG9uZyBsZXNzb25zIHdpdGggc3ludGF4IGhlYXZ5IExvamJhbiBnaXZlcyB0aGUgYnJhaW4gc29t ZXRoaW5nIHRvIHBvbmRlciBhYm91dC4gRXNwZWNpYWxseSBiZWNhdXNlIGl0J3Mgc28gZGlmZmVy ZW50IGZyb20gRW5nbGlzaC4gU28gbGV0J3MgdHVybiB0byBzb21ldGhpbmcgYSBsaXR0bGUgbGln aHRlcjogT3JkZXJzIGFuZCBxdWVzdGlvbnMuCgoKCldoYXQgdGhlLi4uIF9fc2l0IHVwIGFuZCBm b2N1cyFfXwoKCgpTaW5jZSB0aGUgd2F5IHRvIGV4cHJlc3Mgb3JkZXJzIGluIEVuZ2xpc2ggaXMg dG8gbGVhdmUgb3V0IHRoZSBzdWJqZWN0IG9mIHRoZSBjbGF1c2UsIHdoeSBkaWQgeW91IGFzc3Vt ZSB0aGF0IGl0IHdhcyB5b3UgSSB3YXMgc3BlYWtpbmcgdG8sIGFuZCBub3Qgb3JkZXJpbmcgbXlz ZWxmLCBvciBleHByZXNzaW5nIHRoZSBvYmxpZ2F0aW9uIHNvbWVvbmUgZWxzZSBoYXM/IEJlY2F1 c2UgdGhlIEVuZ2xpc2ggbGFuZ3VhZ2UgdW5kZXJzdGFuZHMgdGhhdCBvcmRlcnMsIGJ5IHRoZWly IHZlcnkgbmF0dXJlLCBhcmUgYWx3YXlzIGRpcmVjdGVkIHRvd2FyZHMgdGhlIGxpc3RlbmVyIC0g dGhlIOKAnHlvdeKAnSwgYW5kIHNvIHRoZSBzdWJqZWN0IGlzIG5vdCBuZWNlc3NhcnkuCgpJbiBM b2piYW4sIGVsaWRpbmcgdGhlIHN1YmplY3QgeWllbGRzICcnem8nZScnLCBzbyB0aGF0IHBvc3Np YmlsaXR5IGlzIHNhZGx5IG5vdCBvcGVuIHRvIHVzLiBJbnN0ZWFkLCB3ZSB1c2UgdGhlIHdvcmQg JydrbycnLCB3aGljaCBpcyB0aGUgaW1wZXJhdGl2ZSBmb3JtIG9mICcnZG8nJy4gR3JhbW1hdGlj YWxseSBhbmQgYnJpZGktd2lzZSwgaXQncyBlcXVpdmFsZW50IHRvICcnZG8nJywgYnV0IGl0IGFk ZHMgYSBsYXllciBvZiBzZW1hbnRpY3MsIHNpbmNlIGl0IHR1cm5zIGV2ZXJ5IHN0YXRlbWVudCB3 aXRoICcna28nJyBpbiBpdCBpbnRvIGFuIG9yZGVyLiDigJxEbyBzdWNoIHRoYXQgdGhpcyBzZW50 ZW5jZSBpcyB0cnVlIGZvciB5b3U9JydrbycnIeKAnSBGb3IgdGhlIHNhbWUgcmVhc29uIHdlIGRv bid0IG5lZWQgdGhlIHN1YmplY3QgaW4gRW5nbGlzaCBzZW50ZW5jZXMsIHdlIGRvbid0IG5lZWQg b3JkZXItd29yZHMgZGVyaXZlZCBmcm9tIGFueSBvdGhlciBzdW10aSB0aGFuICcnZG8nJy4KCgoK SG93IGNvdWxkIHlvdSBvcmRlciBvbmUgdG8gZ28gZmFyIGF3YXkgZm9yIGEgbG9uZyB0aW1lICh1 c2luZyAnJ2tsYW1hJycgYXMgdGhlIG9ubHkgc2VsYnJpPykKCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTprbyB2ZSd1IHplJ3Uga2xhbWF+fgoKKCcnLmkgemEnYSBkYWkgYSdvIG1pIGNhIGNvJ3UgY2lz a2EgbG8gZmEnb3JtYSdvIC5pIGtvIGppbXBlIHZhdSAudWknJykgLSBsb29rIHVwIGNpc2thIGFu ZCB3b3JrIGl0IG91dC4KCgoKUXVlc3Rpb25zIGluIExvamJhbiBhcmUgdmVyeSBlYXN5IHRvIGxl YXJuLCBhbmQgdGhleSBjb21lIGluIHR3byBraW5kczogRmlsbCBpbiB0aGUgYmxhbmssIGFuZCB0 cnVlL2ZhbHNlIHF1ZXN0aW9ucy4gTGV0J3MgYmVnaW4gd2l0aCB0aGUgdHJ1ZS1mYWxzZSBxdWVz dGlvbiBraW5kIC0gdGhhdCdzIHByZXR0eSBvdmVyY29tZWFibGUsIHNpbmNlIGl0IG9ubHkgaW52 b2x2ZXMgb25lIHdvcmQsICcneHUnJy4KCicneHUnJyB3b3JrcyBsaWtlIGFuIGF0dGl0dWRpbmFs IGluIHRoZSBzZW5zZSB0aGF0IGl0IGNhbiBnbyBhbnl3aGVyZSwgYW5kIGl0IGFwcGxpZXMgdG8g dGhlIHByZWNlZGluZyB3b3JkIChvciBjb25zdHJ1Y3QpLiBJdCB0aGVuIHRyYW5zZm9ybXMgdGhl IHNlbnRlbmNlIGludG8gYSBxdWVzdGlvbiwgYXNraW5nIHdoZXRoZXIgaXQgaXMgdHJ1ZSBvciBu b3QuIEluIG9yZGVyIHRvIGFmZmlybSwgeW91IHNpbXBseSByZXBlYXQgdGhlIGJyaWRpOgoKJyd4 dSB2ZSd1IHpkYW5pIGRvJycgJycuaSB2ZSd1IHpkYW5pIG1pJycsIG9yIHlvdSBqdXN0IHJlcGVh dCB0aGUgdGhlIHNlbGJyaSwgd2hpY2ggaXMgdGhlIGJyaWRpIHdpdGggYWxsIHRoZSBzdW10aSBh bmQgdGVuc2VzIGVsaWRlZDogJyd6ZGFuaScnLgoKVGhlcmUgaXMgYW4gZXZlbiBlYXNpZXIgd2F5 IHRvIGFmZmlybSB1c2luZyBicmlrYSdpLCBidXQgdGhvc2UgYXJlIGEgdGFsZSBmb3IgYW5vdGhl ciB0aW1lLiBUbyBhbnN3ZXIg4oCcbm/igJ0gb3Ig4oCcZmFsc2XigJ0sIHlvdSBzaW1wbHkgYW5z d2VyIHdpdGggdGhlIGJyaWRpIG5lZ2F0ZWQuIFRoYXQgdG9vLCB3aWxsIGJlIGxlZnQgZm9yIGxh dGVyLCBidXQgd2Ugd2lsbCByZXR1cm4gdG8gcXVlc3Rpb24gYW5zd2VyaW5nIGJ5IHRoZW4uCgoK ClRoZSBvdGhlciBraW5kIGlzIGZpbGwgaW4gdGhlIGJsYW5rLiBIZXJlLCB5b3UgYXNrIGZvciB0 aGUgcXVlc3Rpb24gd29yZCB0byBiZSByZXBsYWNlZCBmb3IgYSBjb25zdHJ1Y3QsIHdoaWNoIG1h a2VzIHRoZSBicmlkaSBjb3JyZWN0LiBUaGVyZSBhcmUgc2V2ZXJhbCBvZiB0aGVzZSB3b3Jkcywg ZGVwZW5kaW5nIG9uIHdoYXQgeW91IGFyZSBhc2tpbmcgYWJvdXQ6CgpfXycnbWEnJ19fIC0gc3Vt dGkgcXVlc3Rpb24KCl9fJydtbycnX18gLSBzZWxicmkgcXVlc3Rpb24KCl9fJyd4bycnX18gLSBu dW1iZXIgcXVlc3Rpb24KCl9fJydjdSdlJydfXyAtIHRlbnNlIHF1ZXN0aW9uCgoKCkFzIHdlbGwg YXMgbWFueSBvdGhlcnMuIFRvIGFzayBhYm91dCBhIHN1bXRpLCB5b3UgdGhlbiBqdXN0IHBsYWNl IHRoZSBxdWVzdGlvbiB3b3JkIHdoZXJlIHlvdSB3YW50IHlvdXIgYW5zd2VyOiAnJ2RvIGR1bmRh IG1hIG1pJycgLSBhc2tzIGZvciB0aGUgeDIgdG8gYmUgZmlsbGVkIHdpdGggYSBjb3JyZWN0IHN1 bXRpLiDigJxZb3UgZ2l2ZSB3aGF0IHRvIG1lP+KAnS4gVGhlIGNvbWJpbmF0aW9uIG9mICcnc3Vt dGNpdGEnJyArICcnbWEnJyBpcyB2ZXJ5IHVzZWZ1bCBpbmRlZWQ6CgpfXycnbXUnaScnX18gLSBz dW10Y2l0YTogbW90aXZhdGVkIGJ5IHRoZSBhYnN0cmFjdGlvbiBvZiB7c3VtdGl9CgoKCicnLm9p IGRvIGRhcnhpIG1pIG11J2kgbWEnJyAtIOKAnE95LCB3aHkgZG8geW91IGhpdCBtZT8h4oCdCgoK CkxldCdzIHRyeSBhbm90aGVyIG9uZS4gVGhpcyB0aW1lLCB5b3UgdHJhbnNsYXRlOgoKJycudWkg ZGFpIGRvIGNhIHplJ3UgcHUgbW8nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFlvdSdyZSBo YXBweSwgd2hhdCBoYXZlIHlvdSBiZWVuIGRvaW5nIGFsbCB0aGlzIGxvbmcgdGltZSB1bnRpbCBu b3c/4oCdIFRlY2huaWNhbGx5LCBpdCBjb3VsZCBhbHNvIG1lYW4g4oCcd2hhdCBoYXZlIHlvdSBi ZWVuP+KAnSwgYnV0IGFuc3dlcmluZyB3aXRoICcnLnVhIG5haSBsaSdhIHJlbW5hJycgKFVoLCBo dW1hbiwgb2J2aW91c2x5KSBpcyBqdXN0IGJlaW5nIGluY3JlZGlibHkgYW5ub3lpbmcgb24gcHVy cG9zZS5+fgoKCgpTaW5jZSB0b25lIG9mIHZvaWNlIG9yIHNlbnRlbmNlIHN0cnVjdHVyZSBkb2Vz IG5vdCByZXZlYWwgd2hldGhlciBhIHNlbnRlbmNlIGlzIGEgcXVlc3Rpb24gb3Igbm90LCBvbmUg YmV0dGVyIG5vdCBtaXNzIHRoZSBxdWVzdGlvbiB3b3JkLiBUaGVyZWZvcmUsIHNpbmNlIHBlb3Bs ZSB0ZW5kIHRvIGZvY3VzIG1vcmUgb24gd29yZHMgaW4gdGhlIGJlZ2lubmluZyBvciBhdCB0aGUg ZW5kIG9mIHNlbnRlbmNlcywgaXQncyB1c3VhbGx5IHdvcnRoIHRoZSB3aGlsZSB0byByZS1vcmRl ciB0aGUgc2VudGVuY2Ugc28gdGhhdCB0aGUgcXVlc3Rpb24gd29yZHMgYXJlIGF0IHRob3NlIHBs YWNlcy4gSWYgdGhhdCBpcyBub3QgZmVhc2FibGUsICcncGF1JycgaXMgYW4gYXR0aXR1ZGluYWwg bWFya2luZyB0aGF0IHRoZSBzZW50ZW5jZSBpcyBhIHF1ZXN0aW9uLiBDb250cmFyeSwgJydwYXUg bmFpJycgZXhwbGljaXRseSBtYXJrcyBhbnkgcXVlc3Rpb24gYXMgYmVpbmcgcmhldG9yaWNhbC4K CgoKV2hpbGUgd2UgYXJlIG9uIHRoZSB0b3BpYyBvZiBxdWVzdGlvbnMsIGl0J3MgYWxzbyBhcHBy b3ByaWF0ZSB0byBtZW50aW9uIHRoZSB3b3JkICcna2F1JycsIHdoaWNoIGlzIGEgbWFya2VyIGZv ciDigJxpbmRpcmVjdCBxdWVzdGlvbuKAnS4gV2hhdCdzIGFuIGluZGlyZWN0IHF1ZXN0aW9uLCB0 aGVuPyBXZWxsLCB0YWtlIGEgbG9vayBhdCB0aGUgc2VudGVuY2U6ICcnbWkgZGp1bm8gbG8gZHUn dSBtYSBrYXUgemRhbmkgZG8nJyAtIOKAnEkga25vdyB3aGF0IGlzIHlvdXIgaG9tZS7igJ0KCl9f JydkanVubycnX18g4oCceDEga25vd3MgZmFjdChzKSB4MiBhcmUgdHJ1ZSBhYm91dCB4MyBieSBl cGlzdGVtb2xvZ3kgeDTigJ0KCk9uZSBjYW4gdGhpbmsgaXQgYXMgdGhlIGFuc3dlciB0byB0aGUg cXVlc3Rpb24gJydtYSB6ZGFuaSBkbycnLiBNb3JlIHJhcmVseSwgb25lIGNhbiBtYXJrIGEgbm9u LXF1ZXN0aW9uIHdvcmQgd2l0aCAnJ2thdScnLCBpbiB3aGljaCBjYXNlIG9uZSBzdGlsbCBjYW4g aW1hZ2luZSBpdCBhcyB0aGUgYW5zd2VyIHRvIGEgcXVlc3Rpb246ICcnbWkgamltcGUgbG8gZHUn dSBkdW5kYSB0aSBrYXUgZG8nJyAtIOKAnEkga25vdyB3aGF0IHlvdSBoYXZlIGJlZW4gZ2l2ZW4s IGl0IGlzIHRoaXMu4oCdCgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0aGlydGVlbiAo bW9ycGhvbG9neSBhbmQgd29yZCBjbGFzc2VzKQoKQmFjayB0byBtb3JlIGhlYXZ5IChhbmQgaW50 ZXJlc3RpbmcpIHN0dWZmLgoKSWYgeW91IGhhdmVuJ3QgYWxyZWFkeSwgSSBzdHJvbmdseSBzdWdn ZXN0IHlvdSBmaW5kIHRoZSBMb2piYW5pYyByZWNvcmRpbmcgY2FsbGVkICJTdG9yeSBUaW1lIHdp dGggVW5jbGUgUm9iaW4iLCBvciBsaXN0ZW4gdG8gc29tZW9uZSBzcGVhayBMb2piYW4gb24gTXVt YmxlLCBhbmQgdGhlbiBwcmFjdGljZSB5b3VyIHByb251bmNpYXRpb24uIEhhdmluZyBhbiBpbnRl cm5hbCBjb252ZXJzYXRpb24gaW4geW91ciBoZWFkIGluIExvamJhbiBpcyBvbmx5IGdvb2QgaWYg aXQgaXNuJ3Qgd2l0aCBhbGwgdGhlIHdyb25nIHNvdW5kcywgYW5kIGxlYXJuaW5nIHByb251bmNp YXRpb24gZnJvbSB3cml0dGVuIHRleHQgaXMgaGFyZC4gVGhlcmVmb3JlLCB0aGlzIGxlc3NvbiB3 aWxsIG5vdCBiZSBvbiB0aGUgTG9qYmFuIHNvdW5kcywgaG93ZXZlciBpbXBvcnRhbnQgdGhleSBt aWdodCBiZSwgYnV0IGEgc2hvcnQgaW50cm9kdWN0aW9uIHRvIHRoZSBMb2piYW4gbW9ycGhvbG9n eS4KCgoKV2hhdCBpcyBtb3JwaG9sb2d5PyBUaGUgd29yZCBpcyBkZXJpdmVkIGZyb20gR3JlZWsg bWVhbmluZyDigJx0aGUgc3R1ZHkgb2Ygc2hhcGVz4oCdLCBhbmQgaW4gdGhpcyBjb250ZXh0LCB3 ZSB0YWxrIGFib3V0IGhvdyB3ZSBtYWtlIHdvcmRzIGZyb20gbGV0dGVycyBhbmQgc291bmRzLCBh cyBjb250cmFzdGVkIHdpdGggc3ludGF4IC0gaG93IHdlIG1ha2Ugc2VudGVuY2VzIHdpdGggd29y ZHMuIExvamJhbiBvcGVyYXRlcyB3aXRoIGRpZmZlcmVudCBtb3JwaG9sb2dpY2FsIHdvcmQgY2xh c3Nlcywgd2hpY2ggYXJlIGFsbCBkZWZpbmVkIGJ5IHRoZWlyIG1vcnBob2xvZ3kuIFRvIG1ha2Ug aXQgYWxsIG5pY2UgYW5kIHN5c3RlbWF0aWMgdGhvdWdoLCB3b3JkcyB3aXRoIGNlcnRhaW4gZnVu Y3Rpb25zIHRlbmQgdG8gYmUgZ3JvdXBlZCBieSBtb3JwaG9sb2dpY2FsIGNsYXNzZXMsIGJ1dCBl eGNlcHRpb25zIG1heSBvY2N1ci4KCnx8ICAgQ2xhc3N8TWVhbmluZ3xEZWZpbmVkIEJ5fFR5cGlj YWwgRnVuY3Rpb24KCiAgIFdvcmRzOnwgICB8ICAgfCAgIAoKICAgQnJpdmxhfCAgIGJyaWRpLXdv cmR8ICAgQW1vbmcgZmlyc3QgNSBsZXR0ZXJzIChleGNsdWRpbmcg4oCcIOKAmCDigJwpIGlzIGEg Y29uc29uYW50IGNsdXN0ZXIuIEVuZHMgaW4gdm93ZWwuICAgfCAgIEFjdHMgYXMgYSBzZWxicmkg YnkgZGVmYXVsdC4gQWx3YXlzIGhhcyBhIHBsYWNlIHN0cnVjdHVyZS4KCiAgIC0tR2lzbXV8ICAg Um9vdC13b3JkfCA1IGxldHRlcnMgb2YgdGhlIGZvcm0gQ1ZDQ1Ygb3IgQ0NWQ1YgICB8ICAgT25l IHRvIGZpdmUgc3VtdGkgcGxhY2VzLiBDb3ZlcnMgYmFzaWMgY29uY2VwdHMuCgogICAtLUx1anZv fCAgQ29tcG91bmQgd29yZC4gRGVyaXZlZCBmcm9tIGZyb20g4oCcbHVqdmxh4oCdLCBtZWFuaW5n IOKAnGNvbXBsZXggd29yZOKAnSB8ICAgTWluLiA2IGxldHRlcnMuIE1hZGUgYnkgc3RyaW5naW5n IHJhZnNpIHRvZ2V0aGVyIHdpdGggYmluZGluZyBsZXR0ZXJzIGlmIG5lY2Vzc2FyeS58ICAgQ292 ZXJzIG1vcmUgY29tcGxleCBjb25jZXB0cyB0aGFuIGdpc211LgoKICAgLS1GdSdpdmxhfCAgQ29w eS13b3JkIHwgQXMgYnJpdmxhLCBidXQgZG8gbm90IG1lZXQgZGVmaW5pbmcgY3JpdGVyaWEgb2Yg Z2lzbXUgb3IgbHVqdm8sIGV4OiAnJ2FuZ2VsaScnICB8ICAgQ292ZXJzIHVuaXF1ZSBjb25jZXB0 cyBsaWtlIG5hbWVzIG9mIHBsYWNlcyBvciBvcmdhbmlzbXMuCgogICBDbWV2bGF8ICBOYW1lLXdv cmQgfCAgIEJlZ2lubmluZyBhbmQgZW5kaW5nIHdpdGggcGF1c2UgKGZ1bGwgc3RvcCkuIExhc3Qg c291bmQvbGV0dGVyIGlzIGEgY29uc29uYW50LnwgICBBbHdheXMgYWN0cyBhcyBhIG5hbWUgb3Ig YXMgdGhlIGNvbnRlbnQgb2YgYSBxdW90ZS4KCiAgIENtYXZvfCAgIEdyYW1tYXItd29yZC4gRnJv bSDigJxjbWF2bGHigJ0sIG1lYW5pbmcg4oCcc21hbGwgd29yZOKAnXwgT25lIGNvbnNvbmFudCBv ciB6ZXJvLCBhbHdheXMgYXQgdGhlIGJlZ2lubmluZy4gRW5kcyBpbiBhIHZvd2VsLiAgfCAgIEdy YW1tYXRpY2FsIGZ1bmN0aW9ucy4gVmFyaWVzCgogICBXb3JkLWZyYWdtZW50czp8ICAgfCAgIHwK CiAgIFJhZnNpfCAgIEFmZml4fCAgQ0NWLCBDVkMsIENWJ1YsIC1DVkNDViwgLUNDVkNWLCBDVkND eS0gb3IgQ0NWQ3ktICB8IE5vdCBhY3R1YWwgd29yZHMsIGJ1dCBjYW4gYmUgc3RyaW5nZWQgdG9n ZXRoZXIgdG8gZm9ybSBsdWp2byB8fAoKCgoKCl9fJydjbWV2bGEnJ19fIGFyZSB2ZXJ5IGVhc3kg dG8gaWRlbnRpZnkgYmVjYXVzZSB0aGV5IGJlZ2luIGFuZCBlbmQgd2l0aCBhIHBhdXNlLCBzaWdu YWxlZCBieSBhIGZ1bGwgc3RvcCBpbiB3cml0aW5nLCBhbmQgdGhlIGxhc3QgbGV0dGVyIGlzIGEg Y29uc29uYW50LiBjbWV2bGEgY2FuJ3QgaGF2ZSBhbnkgb3RoZXIgZnVuY3Rpb24gYmVzaWRlcyBh Y3RpbmcgYXMgYSBuYW1lLiBPbiB0aGUgb3RoZXIgaGFuZCwgbmFtZXMgd2hpY2ggYXJlIG5vdCBz ZWxicmkgY2Fubm90IGFwcGVhciBpbiBMb2piYW4gd2l0aG91dCB0aGVtIGJlaW5nIGNtZXZsYSwg b3IgZW5jYXNlZCBieSBjZXJ0YWluIHF1b3RlIHdvcmRzLiBPbmUgY2FuIG1hcmsgc3RyZXNzIGlu IHRoZSBuYW1lcyBieSBjYXBpdGFsaXppbmcgdGhlIGxldHRlcnMgd2hpY2ggYXJlIHN0cmVzc2Vk LiBFeGFtcGxlcyBvZiBjbWV2bGEgYXJlOiAnJy5pb2hBTi4nJyAoSm9oYW4sIGggaXMgY2FwaXRh bCBhcG9zdHJvcGhlKSwgJycubWF0LicnIChNYXR0KSBhbmQgJycubHV0Y2lNSU4uJycgKEx1aS1D aGkgTWluKS4gTmFtZXMgd2hpY2ggZG8gbm90IGVuZCBpbiBjb25zb25hbnRzIGhhdmUgdG8gaGF2 ZSBvbmUgYWRkZWQ6ICcnLml2eW4uJycgKEV2ZSksIG9yIChwcm9iYWJseSBiZXR0ZXIgaW4gdGhp cyBjYXNlKSByZW1vdmVkOiAnJy5pdi4nJwoKCgpfXycnYnJpdmxhJydfXyBhcmUgY2FsbGVkIOKA nGJyaWRpLXdvcmRz4oCdIGJlY2F1c2UgdGhleSBieSBkZWZhdWx0IGFyZSBzZWxicmksIGFuZCB0 aGVyZWZvcmUgYWxtb3N0IGFsbCBMb2piYW4gd29yZHMgd2l0aCBhIHBsYWNlIHN0cnVjdHVyZSBh cmUgYnJpdmxhLiBUaGlzIGhhcyBhbHNvIGdpdmVuIHRoZW0gdGhlIEVuZ2xpc2ggbmlja25hbWUg 4oCcY29udGVudC13b3Jkc+KAnS4gSXQncyBuZWFybHkgaW1wb3NzaWJsZSB0byBzYXkgYW55dGhp bmcgdXNlZnVsIHdpdGhvdXQgYnJpdmxhLCBhbmQgYWxtb3N0IGFsbCB3b3JkcyBmb3IgY29uY2Vw dHMgb3V0c2lkZSBsb2piYW4gZ3JhbW1hciAoYW5kIGV2ZW4gbW9zdCBvZiB0aGUgd29yZHMgZm9y IHRoaW5ncyBpbiB0aGUgbGFuZ3VhZ2UpIGFyZSBjYXB0dXJlZCBieSBicml2bGEuIEFzIHNob3du IGluIHRoZSB0YWJsZSwgYnJpdmxhIGhhcyB0aHJlZSBzdWJjYXRlZ29yaWVzOgoKX18nJ2dpc211 JydfXyBhcmUgdGhlIHJvb3Qgd29yZHMgb2YgdGhlIGxhbmd1YWdlLiBPbmx5IGFib3V0IDE0NTAg ZXhpc3RzLCBhbmQgdmVyeSBmZXcgbmV3IG9uZXMgYXJlIGFkZGVkLiBUaGV5IGNvdmVyIHRoZSBt b3N0IGJhc2ljIGNvbmNlcHRzIGxpa2Ug4oCcY2lyY2xl4oCdLCDigJxmcmllbmTigJ0sIOKAnHRy ZWXigJ0gYW5kIOKAnGRyZWFt4oCdLiBFeGFtcGxlcyBpbmNsdWRlICcnemRhbmknJywgJydwZWx4 dScnIGFuZCAnJ2R1bmRhJycKCl9fJydsdWp2bycnX18gYXJlIG1hZGUgYnkgY29tYmluaW5nIHJh ZnNpIChzZWUgdW5kZXIgcmFmc2kpLCByZXNwcmVzZW50aW5nIGdpc211LiBCeSBjb21iaW5pbmcg cmFmc2ksIG9uZSBuYXJyb3dzIGRvd24gdGhlIG1lYW5pbmcgb2YgdGhlIHdvcmQuIGx1anZvIGFy ZSBtYWRlIGJ5IGFuIGVsYWJvcmF0ZSBhbGdvcml0aG0sIHNvIG1ha2luZyB2YWxpZCBsdWp2byBv biB0aGUgZmx5IGlzIG5lYXIgaW1wb3NzaWJsZSwgd2l0aCBmZXcgZXhjZXB0aW9ucyBsaWtlICcn c2VscGEnaScnLCBmcm9tICcnc2UgcHJhbWknJywgd2hpY2ggY2FuIG9ubHkgaGF2ZSBvbmUgZGVm aW5pdGlvbi4gSW5zdGVhZCwgbHVqdm8gYXJlIG1hZGUgb25jZSwgaXRzIHBsYWNlIHN0cnVjdHVy ZSBkZWZpbmVkLCBhbmQgdGhlbiB0aGF0IGRlZmluaXRpb24gaXMgbWFkZSBvZmZpY2lhbCBieSB0 aGUgZGljdGlvbmFyeS4gRXhhbXBsZXMgaW5jbHVkZSBicml2bGEgKGJyaWRpLXdvcmQpLCAnJ2Np bmppa2NhJycgKHNleHVhbC1zb2NpYWxpemluZyA9IGZsaXJ0aW5nKSBhbmQgJydjYWtjaW5raScn IChzaGVsbC1pbnNlY3QgPSBiZWV0bGUpLgoKX18nJ2Z1J2l2bGEnJ19fIGFyZSBtYWRlIGJ5IG1h a2luZyB1cCB3b3JkcyB3aGljaCBmaXQgdGhlIGRlZmluaXRpb24gZm9yIGJyaXZsYSwgYnV0IG5v dCBmb3IgbHVqdm8gb3IgZ2lzbXUuIFRoZXkgdGVuZCB0byBjb3ZlciBjb25jZXB0cyB3aGljaCBp dCdzIGhhcmQgdG8gY292ZXIgYnkgbHVqdm8sIGZvciBpbnN0YW5jZSBuYW1lcyBvZiBzcGVjaWVz LCBuYXRpb25zIG9yIHZlcnkgY3VsdHVyYWwgc3BlY2lmaWMgY29uY2VwdHMuIEV4YW1wbGVzIGlu Y2x1ZGUgJydndWdkcmdvZ3VyaW8nJyAoS29yZWEpICcnY2lkanJwaXRzYScnIChwaXp6YSkgb3Ig JydhbmdlbGknJyAoYW5nZWwpLgoKCgpfXycnY21hdm8nJ19fIGFyZSBzbWFsbCB3b3JkcyB3aXRo IG9uZSBvciB6ZXJvIGNvbnNvbmFudHMuIFRoZXkgdGVuZCB0byBub3Qgc2lnbmlmeSBhbnl0aGlu ZyBpbiB0aGUgZXh0ZXJpb3Igd29ybGQsIGJ1dCB0byBoYXZlIG9ubHkgZ3JhbW1hdGljYWwgZnVu Y3Rpb24uIEV4Y2VwdGlvbnMgb2NjdXIsIGFuZCBpdCdzIGRlYmF0YWJsZSBob3cgbXVjaCBhdHRp dHVkaW5hbHMgZXhpc3RzIGZvciB0aGVpciBncmFtbWF0aWNhbCBmdW5jdGlvbi4gQW5vdGhlciB3 ZWlyZCBleGFtcGxlIGFyZSB0aGUgd29yZHMgb2YgdGhlIGNsYXNzIEdPaEEsIHdoaWNoIGFjdCBh cyBicml2bGEuIEl0IGlzIHZhbGlkIHRvIHR5cGUgc2V2ZXJhbCBjbWF2byBpbiBhIHJvdyBhcyBv bmUgd29yZCwgYnV0IGluIHRoZXNlIGxlc3NvbnMsIHRoYXQgd29uJ3QgYmUgZG9uZS4gQnkgZ3Jv dXBpbmcgY2VydGFpbiBjbWF2byBpbiBmdW5jdGlvbmFsIHVuaXRzLCB0aG91Z2gsIGl0IGlzIHNv bWV0aW1lcyBlYXNpZXIgdG8gcmVhZC4gVGh1cywgJycudWlwdXp1dnVrdW1pIGNpdGthJycgaXMg dmFsaWQsIGFuZCBpcyBwYXJzZWQgYW5kIHVuZGVyc3Rvb2QgYXMgJycudWkgcHUgenUgdnUga3Ug bWkgY2l0a2EnJy4gTGlrZSBvdGhlciBMb2piYW4gd29yZHMsIG9uZSBzaG91bGQgKGJ1dCBuZWVk IG5vdCBhbHdheXMpIHBsYWNlIGEgZnVsbCBzdG9wIGJlZm9yZSBhbnkgd29yZHMgYmVnaW5uaW5n IHdpdGggYSB2b3dlbC4KCmNtYXZvIG9mIHRoZSBmb3JtIHhWViwgQ1YnVlYgb3IgVidWViBhcmUg ZXhwZXJpbWVudGFsLCBhbmQgYXJlIHdvcmRzIHdoaWNoIGFyZSBub3QgaW4gdGhlIGZvcm1hbCBn cmFtbWFyLCBidXQgd2hpY2ggaGF2ZSBiZWVuIGFkZGVkIGJ5IExvamJhbiB1c2VycyB0byByZXNw b25kIHRvIGEgY2VydGFpbiBuZWVkLgoKCgpfXycncmFmc2knJ19fIGFyZSBub3QgTG9qYmFuIHdv cmRzLCBhbmQgY2FuIG5ldmVyIGFwcGVhciBhbG9uZS4gSG93ZXZlciwgc2V2ZXJhbCAobW9yZSB0 aGFuIG9uZSkgcmFmc2kgY29tYmluZSB0byBmb3JtIGx1anZvLiBUaGVzZSBtdXN0IHN0aWxsIGxp dmUgdXAgdG8gdGhlIGJyaXZsYS1kZWZpbml0aW9uLCBmb3IgaW5zdGFuY2UgJydsb2piYW4nJyBp cyBpbnZhbGlkIGJlY2F1c2UgaXQgZW5kcyBpbiBhIGNvbnNvbmFudCAod2hpY2ggbWFrZXMgaXQg YSBjbWV2bGEpLCBhbmQgJydjaSdla2VpJycgaXMgaW52YWxpZCBiZWNhdXNlIGl0IGRvZXMgbm90 IGNvbnRhaW4gYSBjb25zb25hbnQgY2x1c3RlciwgYW5kIGlzIHRodXMgcmVhZCBhcyB0d28gY21h dm8gd3JpdHRlbiBhcyBvbmUgd29yZC4gT2Z0ZW4sIGEgMy00IGxldHRlciBzdHJpbmcgaXMgYm90 aCBhIGNtYXZvIGFuZCBhIHJhZnNpLCBsaWtlICcnenUnZScnLCB3aGljaCBpcyBib3RoIHRoZSBC QUkgYW5kIHRoZSByYWZzaSBmb3IgJyd6dWt0ZScnLiBOb3RlIHRoYXQgdGhlcmUgaXMgbm93aGVy ZSB0aGF0IGJvdGggYSBjbWF2byBhbmQgYSByYWZzaSB3b3VsZCBiZSBncmFtbWF0aWNhbCwgc28g dGhlc2UgYXJlIG5vdCBjb25zaWRlcmVkIGhvbW9waG9uZXMuIEFsbCBnaXNtdSBjYW4gZG91Ymxl IGFzIHJhZnNpLCBpZiB0aGV5IGFyZSBwcmVmaXhlZCB3aXRoIGFub3RoZXIgcmFmc2kuIFRoZSBm aXJzdCBmb3VyIGxldHRlciBvZiBhIGdpc211IHN1ZmZpeGVkIHdpdGggYW4gInkiIGNhbiBhbHNv IGFjdCBhcyBhIHJhZnNpLCBpZiB0aGV5IGFyZSBzdWZmaXhlZCB3aXRoIGFub3RoZXIgcmFmc2ku IFRoZSB2b3dlbCAieSIgY2FuIG9ubHkgYXBwZWFyIGluIGx1anZvIG9yIGNtZXZsYS4gVmFsaWQg cmFmc2kgbGV0dGVyIGNvbWJpbmF0aW9ucyBhcmU6IENWViwgQ1YnViwgQ0NWLCBDVkNDeS0gQ0NW Q3ktLCAtQ1ZDQ1YgYW5kIC1DQ1ZDVi4KCgoKVXNpbmcgd2hhdCB5b3Uga25vdyBub3csIHlvdSBz aG91bGQgYmUgYWJsZSB0byBhbnN3ZXIgdGhlIHRlc3QgaSB0aHVzIHByZXNlbnQ6CgpDYXRlZ29y aXplIGVhY2ggb2YgdGhlIGZvbGxvd2luZyB3b3JkcyBhcyBjbWV2bGEgKEMpLCBnaXNtdSAoZyks IGx1anZvIChsKSwgJydmdSdpdmxhJycgKGYpIG9yIGNtYXZvIChjKToKCkEgKSBqYWkgICAgICAg IEcgKSBtdW1ibAoKQiApIC5pcmNpICAgICAgICBIICkgLmknaQoKQyApIGJvc3R1ICAgICAgICBJ ICkgY3UKCkQgKSB4ZWxtYW4gICAgICAgIEogKSBwbGFqdmEKCkUgKSBwbydlICAgICAgICBLICkg ZGFuc2VrZQoKRiApIGRqaXNrdSAgICAgICAgTCApIC5lcnRzYQoKCgpBbnN3ZXI6IH5+Z3JleSxn cmV5OmEtYywgYi1mLCBjLWcsIGQtQywgZS1jLCBmLWwsIGctQywgaC1jLCBpLWMsIGotbCwgay1m LCBsLWYuIEkgbGVmdCBvdXQgdGhlIGZ1bGwgc3RvcHMgYmVmb3JlIGFuZCBhZnRlciBuYW1lcyBz byBpdCB3b3VsZG4ndCBiZSB0b28gZWFzeS4KCk5vdGU6IHNvbWUgb2YgdGhlc2Ugd29yZHMsIGxp a2UgJydib3N0dScnIGRvIG5vdCBleGlzdCBpbiB0aGUgZGljdGlvbmFyeSwgYnV0IHRoaXMgaXMg aXJyZWxldmFudC4gVGhlIG1vcnBob2xvZ3kgc3RpbGwgbWFrZXMgaXQgYSBnaXNtdSwgc28gaXQn cyBqdXN0IGFuIHVuZGVmaW5lZCBnaXNtdS4gU2ltaWxhcmx5IHdpdGggJycuZXJ0c2EnJ35+CgoK CgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBmb3VydGVlbiAodGhlIExvamJhbiBzdW10aSAx OiBMRSBhbmQgTEEpCgpJZiB5b3UgaGF2ZSByZWFkIGFuZCB1bmRlcnN0b29kIHRoZSBjb250ZW50 IG9mIGFsbCB0aGUgbGVzc29ucyB1bnRpbCBub3csIHlvdSBoYXZlIGFtYXNzZWQgYSBsYXJnZSBl bm91Z2gga25vd2xlZGdlIG9mIExvamJhbiBzbyB0aGF0IGl0IGRvZXNuJ3QgbWF0dGVyIGluIHdo aWNoIG9yZGVyIHlvdSBsZWFybiB0aGUgcmVzdC4gQXMgYSByZXN1bHQsIHRoZSBvcmRlciBvZiB0 aGUgbmV4dCBsZXNzb25zIHdpbGwgYmUgYSBtaXh0dXJlIG9mIHNvcnRlZCBieSBpbmNyZWFzaW5n IGRpZmZpY3VsdHkgYW5kIHNvcnRlZCBieSBpbXBvcnRhbmNlIGluIG9yZGluYXJ5IExvamJhbiBj b252ZXJzYXRpb24uCgoKCk9uZSBvZiB0aGUgYmlnZ2VzdCBjb25zdHJhaW5zIG9uIHlvdXIgc3Bl YWsgbm93IGlzIHlvdXIgbGltaXRlZCBrbm93bGVkZ2Ugb24gaG93IHRvIG1ha2Ugc3VtdGkuIFNv IGZhciwgeW91IG9ubHkga25vdyAnJ3RpJycgYW5kICcnbG8gU0VMQlJJJycsIHdoaWNoIGRvZXNu J3QgdGFrZSB5b3UgZmFyIGNvbnNpZGVyaW5nIGhvdyBpbXBvcnRhbnQgc3VtdGkgYXJlIGluIExv amJhbi4gVGhpcyBsZXNzb24gYXMgd2VsbCBhcyB0aGUgZm9sbG93aW5nIHR3byB3aWxsIGJlIGFi b3V0IHRoZSBMb2piYW4gc3VtdGkuIEZvciBub3csIHdlIGZvY3VzIG9uIHRoZSBkZXNjcmlwdGl2 ZS1saWtlIHN1bXRpLCB0aGUgb25lcyBtYWRlIHdpdGggYXJ0aWNsZXMgbGlrZSAnJ2xvJycKCkFy dGljbGVzIGFyZSBpbiBsb2piYW4gY2FsbGVkICcnZ2FkcmknJywgYW5kIGFsbCB0aGUgb25lcyBk aXNjdXNzZWQgaW4gdGhpcyBsZXNzb24gYXJlIHRlcm1pbmF0ZWQgYnkgJydrdScnLCBleGNlcHQg dGhlIGNvbWJpbmF0aW9ucyAnJ2xhIENNRVZMQScnLCAnJ2xhaSBDTUVWTEEnJyBhbmQgJydsYSdp IENNRVZMQScnLiBXZSB3aWxsIGJlZ2luIGJ5IGRlc2NyaWJpbmcgdGhyZWUgc2ltcGxlIGtpbmRz IG9mIGRlc2NyaXB0aXZlIHN1bXRpLCBhbmQgdGhlbiBpbW1lZGlhdGVseSBmaW5kIHRoYXQgdGhl eSBhcmUgbm90IHNvIHNpbXBsZSBhZnRlciBhbGw6CgpfXycnbG8nJ19fIC0gZ2Fkcmk6IEdlbmVy aWMgdmVyaWRpY2FsIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBSZXN1bHQgaXMgdmFn dWUgd2l0aCByZWdhcmQgdG8gaW5kaXZpZHVhbGl0eS9tYXNzLW5lc3MuCgpfXycnbGUnJ19fIC0g Z2Fkcmk6IEdlbmVyaWMgZGVzY3JpcHRpdmUg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0u IFJlc3VsdCBpcyB2YWd1ZSB3aXRoIHJlZ2FyZCB0byBpbmRpdmlkdWFsaXR5L21hc3MtbmVzcy4K Cl9fJydsYScnX18gLSBnYWRyaTogTmFtaW5nIGFydGljbGU6IENvbnZlbnRpb25hbCwg4oCcY29u dmVydCBzZWxicmkgb3IgY21ldmxhIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMgaW5kaXZp ZHVhbChzKS4KCgoKWW91IGFyZSBhbHJlYWR5IGZhbWlsaWFyIHdpdGggJydsbycnIGFuZCB3aGF0 IGl0IGRvZXMuIEJ1dCB3aGF0IGRvZXMgaXQgbWVhbiwg4oCcdmVyaWRpY2Fs4oCdIGFuZCDigJx2 YWd1ZSB3aXRoIHJlZ2FyZCB0byBpbmRpdmlkdWFsaXR5L21hc3MtbmVzc+KAnT8gVGhlIGxhdHRl ciBhYm91dCBpbmRpdmlkdWFscyBhbmQgbWFzc2VzLCBJJ2xsIGNvbWUgYmFjayB0byBsYXRlci4g Rm9yIG5vdywg4oCcdmVyaWRpY2Fs4oCdIGluIHRoaXMgY29udGV4dCBtZWFucyB0aGF0IGluIG9y ZGVyIGZvciBhIHRoaW5nIHRvIHF1YWxpZnkgYmVnaW4gbGFiZWxsZWQgYXMgJydsbyBrbGFtYScn LCBpdCBoYXMgdG8gYWN0dWFsbHkgJydrbGFtYScnLiBUaHVzLCB2ZXJpZGljYWwgZ2FkcmkgbWFr ZXMgYSBjbGFpbSB3aGljaCBtYXkgYmUgdHJ1ZSBvciBmYWxzZSAtIHRoYXQgdGhlIG9iamVjdChz KSBpbiBxdWVzdGlvbiBhcmUgYWN0dWFsbHkgdGhlIHgxIG9mIHRoZSBzZWxicmkgYWZ0ZXIgJyds bycnLiAKCgoKVGhpcyBtYXkgYmUgY29udHJhc3RlZCB3aXRoICcnbGUnJywgd2hpY2ggaXMgZGVz Y3JpcHRpdmUsIGFuZCB0aHVzIG5vdCB2ZXJpZGljYWwuIFNheWluZyAnJ2xlIGdlcmt1Jycgc2F5 cyB0aGF0IHlvdSBoYXZlIG9uZSBvciBtb3JlIHNwZWNpZmljIG9iamVjdHMgaW4gbWluZCwgYW5k IHlvdSB1c2UgdGhlIHNlbGJyaSAnJ2dlcmt1JycgdG8gZGVzY3JpYmUgaXQsIHNvIHRoYXQgdGhl IGxpc3RlbmVyIG1heSBpZGVudGlmeSB0aG9zZSBzcGVjaWZpYyBvYmplY3RzLiBUaGlzIG1lYW5z IHRoYXQgJydsZScnIGhhdmVzIHR3byBpbXBvcnRhbnQgZGlmZmVyZW5jZXMgZnJvbSAnJ2xvJyc6 IEZpcnN0bHksIGl0IGNhbm5vdCByZWZlciB0byBvYmplY3RzIGluIGdlbmVyYWwsIGJ1dCBhbHdh eXMgcmVmZXJzIHRvIHNwZWNpZmljIG9iamVjdHMuIFNlY29uZGx5LCB3aGlsZSAnJ2xvIGdlcmt1 JycgZGVmaW5pdGVseSBpcyBvbmUgb3IgbW9yZSBkb2dzLCAnJ2xlIGdlcmt1JycsIGJlY2F1c2Ug aXQncyBub3QgdmVyaWRpY2FsLCBjYW4gYmUgYW55dGhpbmcsIGFzIGxvbmcgYXMgdGhlIHNwZWFr ZXIgdGhpbmtzIHRoZSBkZXNjcmlwdGlvbiB3aWxsIGhlbHAgaWRlbnRpZnlpbmcgdGhlIGNvcnJl Y3Qgb2JqZWN0cy4gUGVyaGFwcyB0aGUgc3BlYWtlciBpcyByZWZlcnJpbmcgdG8gYSBoeWVuYSwg YnV0IGFyZSBub3QgZmFtaWxpYXIgd2l0aCB0aGVtIGFuZCB0aGluayDigJxkb2figJ0gaXMgYSBn b29kIGVub3VnaCBhcHByb3hpbWF0aW9uIHRvIGJlIHVuZGVyc3Rvb2QuIFRoaXMgbm9uLXZlcmlk aWNhbGl0eSBpcyBwZXJoYXBzIG92ZXItZW1waGFzaXNlZCBpbiBtb3N0IG1hbnkgdGV4dHM7IFRo ZSBiZXN0IHdheSB0byBkZXNjcmliZSBhIGRvZyBpcyB1c3VhbGx5IHRvIGRlc2NyaWJlIGl0IGFz IGJlaW5nIGEgZG9nLCBhbmQgdW5sZXNzIHRoZXJlIGlzIGEgZ29vZCByZWFzb24gbm90IHRvLCAn J2xlIGdlcmt1JycgaXMgdXN1YWxseSBwcmVzdW1lZCB0byByZWZlciB0byBzb21ldGhpbmcgd2hp Y2ggaXMgYWxzbyAnJ2xvIGdlcmt1JycuCgpJbiB0cmFuc2xhdGlvbiwgJydsbyBnZXJrdScnIGlz IHVzdWFsbHkg4oCcYSBkb2figJ0gb3Ig4oCcc29tZSBkb2dz4oCdLCB3aGlsZSAnJ2xlIGdlcmt1 JycgaXMg4oCcdGhlIGRvZ+KAnSBvciDigJx0aGUgZG9nc+KAnS4gRXZlbiBiZXR0ZXIgZm9yICcn bGUgZ2Vya3UnJyB3b3VsZCBiZSDigJx0aGUg4oCcZG9nKHMp4oCdIOKAnQoKCgpMYXN0IG9mIHRo ZSB0aHJlZSBiYXNpYyAnJ2dhZHJpJycsIHRoZXJlIGlzICcnbGEnJywgdGhlIG5hbWluZyAnJ2dh ZHJpJycsIHdoaWNoIEkgaGF2ZSB1bmNvbnZlbnRpb25hbGx5IGNhbGxlZCDigJxjb252ZW50aW9u YWzigJ0uIFdoYXQgSSBtZWFuIGJ5IHRoaXMgaXMgdGhhdCBpdCdzIG5laXRoZXIgZGVzY3JpcHRp dmUgbm9yIHZlcmlkaWNhbCwgc2luY2UgaXQgcmVmZXJzIHRvIGEgcHJvcGVyIG5hbWUuIElmIEkg aW4gRW5nbGlzaCByZWZlciB0byBhIHBlcnNvbiBjYWxsZWQgSW5ub2NlbnQgYnkgaGVyIG5hbWUs IEkgbmVpdGhlciBkZXNjcmliZSBoZXIgYXMgYmVpbmcgaW5ub2NlbnQsIG5vciBkbyBJIHN0YXRl IHRoYXQgc2hlIGlzLiBJIG9ubHkgc3RhdGUgdGhhdCBieSBjb252ZW50aW9uLCB0aGF0IG9iamVj dCBpcyByZWZlcnJlZCB0byBieSB0aGF0IHNlbGJyaSBvciBjbWV2bGEuIE5vdGUgdGhhdCAnJ2xh JycgYW5kIHRoZSBnYWRyaSBkZXJpdmVkIGZyb20gaXQgY2FuIGNvbnZlcnQgY21ldmxhIHRvIHN1 bXRpIHVubGlrZSBhbnkgb3RoZXIgJydnYWRyaScnLiBBbHNvOiBCZSBjYXV0aW91czogT3RoZXIg dGV4dHMgZG8gbm90IG1lbnRpb24gdGhhdCBuYW1lcyBjYW4gYmUgZm9ybWVkIGZyb20gb3JkaW5h cnkgc2VsYnJpIHVzaW5nIHRoZSBnYWRyaSAnJ2xhJycuIEJ1dCB0aG9zZSBoZXJldGljcyBtdXN0 IGJ1cm47IHNlbGJyaSBuYW1lcyBhcmUgYXMgZ29vZCBhcyB0aGV5IGdldCwgYW5kIG1hbnkgYSBw cm91ZCBMb2piYW5pc3QgaGF2ZSB0aGVtLgoKJydsYScnLCBhcyB3ZWxsIGFzICcnbGFpJycgYW5k ICcnbGEnaScnIGFyZSBhIGJpdCBlY2NlbnRyaWMsIHNpbmNlIHRoZXkgX19hbHdheXNfXyBtYXJr cyB0aGUgYmVnaW5uaW5nIG9mIGEgbmFtZS4gVW5saWtlIHRoZSBvdGhlciBnYWRyaSwgYW55dGhp bmcgdGhhdCBjYW4gYmUgZ3JhbW1hdGljYWxseSBwbGFjZWQgYWZ0ZXIgJydsYScnIGFuZCBpdHMg c2lzdGVycyBhcmUgY29uc2lkZXJlZCBwYXJ0IG9mIHRoZSBuYW1lLiBGb3IgZXhhbXBsZSwgJyds ZSBtaSBnZXJrdScnIGlzICJteSBkb2ciLCBidXQgJydsYSBtaSBnZXJrdScnIGlzIHNvbWVvbmUg Y2FsbGVkICJNeSBEb2ciLgoKCgpUaGVzZSB0aHJlZSBiYXNpYyAnJ2dhZHJpJycgY2FuIGJlIGV4 cGFuZGVkIHdpdGggdGhyZWUgbW9yZSwgd2hpY2ggY29ycmVzcG9uZHMgdG8gdGhlIHByZXZpb3Vz OgoKCgpfXycnbG9pJydfXyAtIGdhZHJpOiB2ZXJpZGljYWwg4oCcY29udmVydCBzZWxicmkgdG8g c3VtdGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBtYXNzKGVzKS4KCl9fJydsZWknJ19fIC0gZ2Fkcmk6 IERlc2NyaXB0aXZlIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQg YXMgYSBtYXNzKGVzKS4KCl9fJydsYWknJ19fIC0gZ2Fkcmk6IE5hbWluZyBhcnRpY2xlOiBDb252 ZW50aW9uYWwsIOKAnGNvbnZlcnQgc2VsYnJpIG9yIGNtZXZsYSB0byBzdW10aeKAnS4gVHJlYXQg cmVzdWx0IGFzIG1hc3MoZXMpLgoKCgpUaGVzZSBhcmUgdGhlIHNhbWUgaW4gYWxsIGFzcGVjdHMg ZXhjZXB0IGZvciBvbmU6IFRoZXkgdHJlYXQgdGhlIHN1bXRpIGV4cGxpY2l0bHkgYXMgbWFzc2Vz LiBJZiB0aGVyZSBpcyBvbmx5IG9uZSBvYmplY3QgaW4gcXVlc3Rpb24sIGFuIGluZGl2aWR1YWwg YW5kIGEgbWFzcyBjb25zaXN0aW5nIG9mIG9uZSBvYmplY3QgYXJlIGVxdWl2YWxlbnQuIFRoZSBk aWZmZXJlbmNlIGJldHdlZW4gdGhlc2UgdHdvIGNvbmNlcHRzIGxpZSBpbiB3aGljaCBzZWxicmkg Y2FuIGJlIGFzY3JpYmVkIHRvIGEgZ3JvdXAgb2YgaW5kaXZpZHVhbHMgdmVyc3VzIGEgbWFzcy4g QSBncm91cCBvZiBpbmRpdmlkdWFscyBjYW4gYmUgc2FpZCB0byBmaXQgYSBjZXJ0YWluIHNlbGJy aSBpZiwgYW5kIG9ubHkgaWYsIGFsbCBtZW1iZXJzIG9mIHRoZSBncm91cCBlYWNoIGZpdCB0aGUg c2VsYnJpLiBJdCBpcyBjb3JyZWN0IHRvIGRlc2NyaWJlIGEgcGFjayBvZiAnJ2xvIGdlcmt1Jycs IGNvbnNpZGVyZWQgaW5kaXZpZHVhbGx5LCBhcyBiZWluZyBibGFjaywgaWYgZm9yIGVhY2ggb2Yg dGhlIGRvZ3MgaXQncyB0cnVlIHRoYXQgdGhleSBhcmUgYmxhY2suIEEgbWFzcywgb24gdGhlIG90 aGVyIGhhbmQsIGZpdHMgb25seSB0aG9zZSBzZWxicmkgd2hpY2ggaXRzIGNvbXBvbmVudHMgZml0 IGFzIGEgd2hvbGUsIGFzIGEgdGVhbSwgc28gdG8gc3BlYWsuIEhvd2V2ZXIsIGFsbCB0aGUgbWVt YmVycyBvZiBhIG1hc3MgJydsb2kgZ2Vya3UnJyBtdXN0IGJlIGRvZ3MgaW4gb3JkZXIgZm9yICcn bG9pJycgdG8gYmUgYXBwbGljYWJsZS4gVGhlIG5vdGlvbiBvZiAibWFzc2VzIiBhcmUgc29waGlz dGljYXRlZCwgYW5kIHJlcXVpcmVzIHNvbWUgZXhhbXBsZXMgdG8gZGVtb25zdHJhdGUgd2hpY2gg cHJvcGVydGllcyBpdCBjYW4gaGF2ZToKCl9fJydzcnVyaScnX186IOKAnHgxIGZsYW5rcy9lbmNp cmNsZXMvZW5jbG9zZXMgeDIgaW4gbGluZS9wbGFuZS9kaXJlY3Rpb25zIHgz4oCdCgonJ2xlaSBw cmVudSBjdSBzcnVyaSBsbyB6ZGFuaScnIC0g4oCcVGhlIHBlb3BsZSBzdXJyb3VuZGVkIHRoZSBo b21lLuKAnSBpcyBwbGF1c2libGUsIGV2ZW4gdGhvdWdoLCB5byBtb21hIGpva2VzIG5vdCBjb25z aWRlcmVkLCBpdCdzIGNvbXBsZXRlbHkgaW1wbGF1c2libGUgdGhhdCBpdCBjb3VsZCBiZSB0cnVl IGZvciBhbnkgb25lIG9mIHRoZSBtZW1iZXJzIGFsb25lLiBBbiBFbmdsaXNoIGFuYWxvZ3kgY291 bGQgYmU6IOKAnEh1bWFucyBkZWZlYXRlZCBzbWFsbHBveCBpbiB0aGUgMjB0aCBjZW50dXJ54oCd LiBTdXJlbHkgbm8gaHVtYW4gZGlkIHNvLCBidXQgdGhlIG1hc3Mgb2YgaHVtYW5zIGRpZCwgYW5k IHRoYXQgbWFrZXMgdGhlIHNlbnRlbmNlIHRydWUgaW4gRW5nbGlzaCwgYXMgd2VsbCBhcyBpbiBM b2piYW4gaWYg4oCcaHVtYW5z4oCdIGFyZSBhIG1hc3MuIEp1c3QgbGlrZSB0aGUgTG9qYmFuIG1h c3MsIHRoZSBFbmdsaXNoIG1hc3Mg4oCcaHVtYW5z4oCdIGNhbiBvbmx5IHJlZmVyIHRvIGluZGl2 aWR1YWxzIGVhY2ggb2Ygd2hpY2ggYXJlIGh1bWFuLiBBbm90aGVyIGV4YW1wbGU6CgpfXycnbWl2 eXNsZScnX186ICJ4MSBpcyBhIGJpb2xvZ2ljYWwgY2VsbCBvZiBvcmdhbmlzbSB4MiIKCl9fJydy ZW1uYScnX186ICJ4MSBpcyBhIGh1bWFuIgoKJydsb2kgbWl2eXNsZSBjdSByZW1uYScnIC0gIlNv bWUgbWFzc2VzIG9mIGNlbGxzIGFyZSBodW1hbiIuIEFnYWluLCBub25lIG9mIHRoZSBjZWxscyBh cmUgaHVtYW4uIEluZGVlZCwgdGhlIGNlbGxzIGhhdmUgdmVyeSBmZXcgaHVtYW4gdHJhaXRzLCBi dXQgdGhlIGNlbGxzIGNvbnNpZGVyZWQgYXMgYSB3aG9sZSBtYWtlcyB1cCBhIGh1bWFuLgoKCgpB IG1hc3MgbWFkZSB3aXRoICcnbGVpJycsIHN1Y2ggYXMgJydsZWkgZ2Vya3UnJywgcmVmZXJzIHRv IGEgbWFzcyBmb3JtZWQgYnkgYSBncm91cCBvZiBzcGVjaWZpYyBpbmRpdmlkdWFscywgZWFjaCBv ZiB3aGljaCB0aGUgc3BlYWtlciByZWZlcnMgdG8gYXMgJydsZSBnZXJrdScnLgoKTWFzcyBuYW1l cyBhcyBkZXNjcmliZXMgYnkgJydsYWknJyBhcmUgb25seSBhcHByb3ByaWF0ZSBpZiB0aGUgZ3Jv dXAgYXMgYSB3aG9sZSBpcyBuYW1lZCBzdWNoLCBhbmQgbm90IGp1c3QgaWYgYW55IG9mIHRoZSBt ZW1iZXJzIGFyZS4gSXQgY2FuLCBob3dldmVyIGJlIHVzZWQgaWYgdGhlIGJyaWRpIGlzIHRydWUg Zm9yIG9ubHkgYSBmcmFjdGlvbiBvZiB0aGF0IGdyb3VwLgoKCgpJdCBpcyBpbXBvcnRhbnQgdG8g cmVtZW1iZXIgdGhhdCAnJ2xvJycgYW5kICcnbGUnJyBjYW4gYmUgdXNlZCB0byBkZXNjcmliZSBi b3RoIGluZGl2aWR1YWxzIGFuZCBtYXNzZXMuIExldCdzIHNheSBhIHBhY2sgb2YgZG9ncywgY29u c2lkZXJlZCBhcyBhIG1hc3MgbmVlZHMgZGVzY3JpcHRpb24uIEkgbWlnaHQgZGVzY3JpYmUgaXQg YXMgZWl0aGVyICcnbG9pIGdlcmt1Jycgb3IgJydsbyBnZXJrdScnLiBJZiBJIHVzZSAnJ2xvJycs IHRoaXMgYWxsb3dzIG1lIHRvIGNvcnJlY3RseSBzdGF0ZSBzb21ldGhpbmcgd2hpY2ggbG9va3Mg bGlrZSBhIGNvbnRyYWRpY3Rpb24sIGJ1dCByZWFsbHkgaXNuJ3Q6ICcnbG8gZ2Vya3UgbmEgZ2Vy a3UnJyAtICJTb21lIGRvZ3MgYXJlIG5vdCBkb2dzIi4gU2luY2UgaXQncyBiZWluZyBjb25zaWRl cmVkIGEgbWFzcyBvZiBkb2dzLCB0aGUgbWFueSBkb2dzIGNvbnNpZGVyZXMgYXMgYSB3aG9sZSBp cyBub3QgYSBkb2csIGJ1dCByYXRoZXIgYSBwYWNrIG9mIGRvZ3MuCgpZb3UgbWlnaHQgaGF2ZSBu b3RpY2VkIHRoYXQgdGhlcmUgaXMgbm8gd29yZCB3aGljaCB1bmFtYmlndW91c2x5IGNvbnZlcnRz IHNlbGJyaSB0byBpbmRpdmlkdWFsKHMpLiBJbiBvcmRlciB0byBiZSBleHBsaWNpdCBhYm91dCBp bmRpdmlkdWFsbmVzcywgb25lIG5lZWRzICcnbG8nJywgJydsZScnIG9yICcnbGEnJyB3aXRoIGFu IG91dGVyIHF1YW50aWZpZXIuIFRoZSBzdWJqZWN0IG9mIHF1YW50aWZpZXJzIHdpbGwgYmUgY29u c2lkZXJlZCBsYXRlciwgaW4gbGVzc29uIHR3ZW50eS10d28uIFdoYXQgaXMgdGhlIHJlYXNvbiB0 aGF0ICcnbG8nJyBhbmQgJydsZScnIHZhZ3VlLCBhbmQgbm90IGV4cGxpY2l0bHkgaW5kaXZpZHVh bD8gSXQgaXMgYmVjYXVzZSB0aGVpciB2YWd1ZW5lc3MgZW5hYmxlcyB0aGVtIHRvIGJlIHVzZWQg aW4gYW55IGNvbnRleHQsIHdpdGhvdXQgdGhlIHNwZWFrZXIgaGF2aW5nIHRvIHRoaW5rIGFib3V0 IHdoZXRoZXIgaXMgYmVoYXZlcyBhcyBhIG1hc3Mgb3IgYSBncm91cCBvZiBpbmRpdmlkdWFscy4K CgoKVGhpcmQgaW4gdGhpcyBzZXJpZXMsIHRoZXJlIGFyZSB0aHJlZSBzZXQtZm9ybWluZyAnJ2dh ZHJpJyc6CgoKCl9fJydsbydpJydfXyAtIGdhZHJpOiB2ZXJpZGljYWwg4oCcY29udmVydCBzZWxi cmkgdG8gc3VtdGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBhIHNldC4KCl9fJydsZSdpJydfXyAtIGdh ZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gVHJlYXQgcmVz dWx0IGFzIGEgc2V0LgoKX18nJ2xhJ2knJ19fIC0gZ2Fkcmk6IE5hbWluZyBhcnRpY2xlOiBDb252 ZW50aW9uYWwsIOKAnGNvbnZlcnQgc2VsYnJpIG9yIGNtZXZsYSB0byBzdW10aeKAnS4gVHJlYXQg cmVzdWx0IGFzIGEgc2V0LgoKCgpVbmxpa2UgZ3JvdXBzIG9mIGluZGl2aWR1YWxzIG9yLCBzb21l dGltZXMsIG1hc3Nlcywgc2V0cyBkb2VzIG5vdCB0YWtlIGFueSBvZiB0aGUgcHJvcGVydGllcyBm cm9tIHRoZSBvYmplY3RzIGZyb20gd2hpY2ggdGhlIHNldCBpcyBmb3JtZWQuIEEgc2V0IGlzIGEg cHVyZWx5IG1hdGhlbWF0aWNhbCBvciBsb2dpY2FsIGNvbnN0cnVjdCwgYW5kIGhhcyBwcm9wZXJ0 aWVzIGxpa2UgY2FyZGluYWxpdHksIG1lbWJlcnNoaXAgYW5kIHNldCBpbmNsdXNpb24uIEFnYWlu LCBub3RlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gYSBzZXQgb2YgdGhpbmdzLCBhbmQgdGhlIHRo aW5ncyBvZiB3aGljaCB0aGUgc2V0IGlzIGZvcm1lZDoKCl9fJyd0aXJ4dScnX18g4oCceDEgaXMg YSB0aWdlci9sZW9wYXJkL2phZ3VhciBvZiBzcGVjaWVzL2JyZWVkIHgyIHdpdGggY29hdCBtYXJr aW5ncyB4M+KAnQoKJydsbydpIHRpcnh1IGN1IGNtYWx1Jycgc2F5cyBub3RoaW5nIGFib3V0IHdo ZXRoZXIgYmlnIGNhdHMgYXJlIHNtYWxsICh3aGljaCBpcywgYnkgdGhlIHdheSwgb2J2aW91c2x5 IGZhbHNlKSwgYnV0IGluc3RlYWQgc2F5IHRoYXQgdGhlIHNldCBvZiBiaWcgY2F0cyBpcyBzbWFs bDsgdGhhdCBpcyAtIHRoZXJlIGFyZSBmZXcgb2YgdGhlbS4KCgoKTGFzdGx5LCB0aGVyZSBhcmUg dGhlIChvbmx5IHR3bykgZ2VuZXJhbGl6aW5nICcnZ2FkcmknJzoKCl9fJydsbydlJydfXyAtIGdh ZHJpOiB2ZXJpZGljYWwg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFN1bXRpIHJlZmVy cyB0byB0aGUgYXJjaGV0eXBlIG9mICcnbG8ge3NlbGJyaX0nJy4KCl9fJydsZSdlJydfXyAtIGdh ZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gU3VtdGkgcmVm ZXJzIHRvIHRoZSBkZXNjcmliZWQvcGVyY2VpdmVkIGFyY2hldHlwZSBvZiAnJ2xlIHtzZWxicml9 JycuCgpPZiB3aGljaCB0aGVyZSBpcyBubyAnJ2xhJyctZXF1aXZhbGVudC4KCgoKU28sIHdoYXQg aXMgYWN0dWFsbHkgbWVhbnQgYnkgdGhlIGFyY2hldHlwZT8gRm9yICcnbG8nZSB0aXJ4dScnLCBp dCBpcyBhbiBpZGVhbCwgaW1hZ2luZWQgYmlnIGNhdCwgd2hpY2ggaGFzIGFsbCB0aGUgcHJvcGVy dGllcyB3aGljaCBiZXN0IGV4ZW1wbGlmaWVzIGJpZyBjYXRzLiBJdCB3b3VsZCBiZSB3cm9uZyB0 byBzYXkgdGhhdCB0aGlzIGluY2x1ZGVzIGhhdmluZyBhIHN0cmlwZWQgZnVyLCBzaW5jZSBhIGJp ZyBzeXN0ZW1hdGljIHN1Ymdyb3VwIG9mIHRoZSBtZW1iZXJzIG9mIHRoZSBzZXQgb2YgYmlnIGNh dHMgZG8gbm90IGhhdmUgc3RyaXBlZCBmdXIsIHRoZSBsZW9wYXJkcyBhbmQgdGhlIGphZ3VhcnMu IExpa2V3aXNlLCB0aGUgdHlwaWNhbCBodW1hbiBkb2VzIG5vdCBsaXZlIGluIEFzaWEgZXZlbiB0 aG91Z2ggYSBsb3Qgb2YgaHVtYW5zIGRvLiBIb3dldmVyLCBpZiBzdWZmaWNpZW50bHkgbWFueSBo dW1hbnMgaGF2ZSBhIHRyYWl0LCBmb3IgaW5zdGFuY2UgYmVpbmcgYWJsZSB0byBzcGVhaywgd2Ug Y2FuIHNheToKCl9fJydrYWtuZScnX186IOKAnHgxIGlzIGNhcGFibGUgb2YgZG9pbmcvYmVpbmcg eDIgdW5kZXIgY2lyY3Vtc3RhbmNlIHgz4oCdCgonJ2xvJ2UgcmVtbmEgY3Uga2FrbmUgbG8gbnUg dGF2bGEnJyAtIOKAnFRoZSB0eXBpY2FsIGh1bWFuIGJlaW5nIGNhbiBzcGVha+KAnS4KCgoKJyds ZSdlJycgdGhlbiwgaXMgdGhlIGlkZWFsIG9iamVjdCBhcyBwZXJjZWl2ZWQgb3IgZGVzY3JpYmVk IGJ5IHRoZSBzcGVha2VyLiBUaGlzIG5lZWQgbm90IGJlIGZhY3R1YWxseSBjb3JyZWN0LCBhbmQg aXMgb2Z0ZW4gdHJhbnNsYXRlZCBhcyB0aGUg4oCcc3RlcmVvdHlwZeKAnSwgZXZlbiB0aG91Z2gg dGhlIEVuZ2xpc2ggcGhyYXNlIGhhdmUgc29tZSB1bnBsZWFzYW50IG5lZ2F0aXZlIGNvbm5vdGF0 aW9ucywgd2hpY2ggdGhlIExvamJhbiBkb2VzIG5vdC4gSW4gZmFjdCwgZXZlcnlvbmUgaGFzIGEg c3RlcmVvdHlwaWNhbCBhcmNoZXR5cGljaGFsIGltYWdlIG9mIGFueSBjYXRlZ29yeS4gSW4gb3Ro ZXIgd29yZHMsICcnbG8nZSByZW1uYScnIGlzIHRoZSBhcmNoZXR5cGUgd2hpY2ggYmVzdCBleGVt cGxpZmllcyBhbGwgJydsbyByZW1uYScnLCB3aGlsZSB0aGUgYXJjaGV0eXBlICcnbGUnZSByZW1u YScnIGJlc3QgZXhlbXBsaWZpZXMgYWxsICcnbGUgcmVtbmEnJy4KCgoKVGhlIGVsZXZlbiBnYWRy aSBjYW4gYmUgc2VlbiBpbiB0aGUgZGlhZ3JhbSBiZWxvdy4KCnx8IHxHZW5lcmljfE1hc3Nlc3xT ZXRzfEdlbmVyYWxpemluZwoKdmVyaWRpY2FsfGxvfGxvaXxsbydpfGxvJ2UKCkRlc2NyaXB0aXZl fGxlfGxlaXxsZSdpfGxlJ2UKCk5hbWV8bGF8bGFpfGxhJ2l8ZG9lcyBub3QgZXhpc3R8fAoKCgpO b3RlOiBFYXJsaWVyLCB0aGVyZSB3YXMgYSB3b3JkICcneG8nZScnIGZvciB0aGUgZ2VuZXJpYyBn YWRyaS4gSG93ZXZlciwgdGhlIHJ1bGVzIGFuZCBkZWZpbml0aW9ucyBmb3IgZ2Fkcmkgd2VyZSBj aGFuZ2VkIGluIGxhdGUgMjAwNCwgYW5kIHRoZSBjdXJyZW50IHNldCBvZiBydWxlcyBvbiB0aGlz IHRvcGljLCBuaWNrZWQg4oCceG9ybG/igJ0gaGFzIHJlcGxhY2VkIHRoZSBvbGQgd2F5LiBOb3cs ICcnbG8nJyBpcyBnZW5lcmljLCBhbmQgJyd4bydlJycgaXMgdXNlZCBhcyBhIGVsbGlwdGljYWwg ZGlnaXQgKGxlc3NvbiBuaW5ldGVlbikuCgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBm aWZ0ZWVuICh0aGUgTG9qYmFuIHN1bXRpIDI6IEtPaEEzLCBLT2hBNSBhbmQgS09oQTYpCgpTZWUg d2hhdCBoYXBwZW5zIGlmIEkgdHJ5IHRvIHRyYW5zbGF0ZSB0aGUgc2VudGVuY2U6IOKAnFN0ZXJl b3R5cGljYWwgcGVvcGxlIHdobyBjYW4gc3BlYWsgTG9qYmFuIHNwZWFrIHRvIGVhY2ggb3RoZXIg YWJvdXQgdGhlIGxhbmd1YWdlcyB0aGV5IGNhbiBzcGVha+KAnToKCl9fJydiYW5ndScnX18g4oCc eDEgaXMgYSBsYW5ndWFnZSB1c2VkIGJ5IHgyIHRvIGV4cHJlc3MgeDMgKGFic3RyYWN0aW9uKeKA nQoKJydsZSdlIHByZW51IHBvaSBrZSdhIGtha25lIGxvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4u IGN1IHRhdmxhIGxlJ2UgcHJlbnUgcG9pIGtlJ2Ega2FrbmUgbG8gbnUgdGF2bGEgZm8gbGEgLmxv amJhbi4gbG8gYmFuZ3UgcG9pIGxvIHByZW51IHBvaSBrZSdhIHRhdmxhIGZvIGxhIC5sb2piYW4u IGN1IHNlIGJhbmd1IGtlJ2EnJwoKCgpXaGF0IHdlIHNlZSBpcyB0aGF0IHRoZSBMb2piYW4gdmVy c2lvbiBpcyBtdWNoIGxvbmdlciB0aGFuIHRoZSBFbmdsaXNoLiBUaGlzIGlzIHByaW1hcmlseSBi ZWNhdXNlIHRoZSBmaXJzdCwgcmlkaWN1bG91c2x5IGxvbmcgc3VtdGkgaXMgYmVpbmcgcmVwZWF0 ZWQgdHdvIG1vcmUgdGltZXMgaW4gdGhlIExvamJhbiB0ZXh0LCB3aGlsZSB0aGUgRW5nbGlzaCBj YW4gcmVmZXIgdG8gaXQgYnkg4oCcZWFjaCBvdGhlcuKAnSBhbmQg4oCcdGhleeKAnSAtIG11Y2gg bW9yZSBlZmZpY2llbnRseS4gV291bGRuJ3QgaXQgYmUgY2xldmVyIGlmIExvamJhbiBzb21laG93 IGhhZCBtZWNoYW5pc21zIGZvciBkb2luZyB0aGUgc2FtZT8KCgoKSXQgdHVybnMgb3V0IGl0IGRv ZXMsIHdoYXQgYSBzdXJwcmlzZSEgTG9qYmFuIGhhcyBhIHJhbmdlIG9mIHdvcmRzIGNhbGxlZCAn J3N1bWthJ2knJyBtZWFuaW5nIOKAnHN1bXRpLXJlcHJlc2VudGF0aXZlc+KAnS4gSW4gRW5nbGlz aCwgd2UgcmVmZXIgdG8gdGhlbSBhcyBwcm8tc3VtdGksIGJlY2F1c2UgdGhleSBhcmUgZXNzZW50 aWFsbHkgdGhlIHNhbWUgYXMgdGhlIEVuZ2xpc2ggcHJvbm91bnMsIGJ1dCB3aXRoIHN1bXRpIGlu c3RlYWQgb2Ygbm91bnMuIEluIGZhY3QsIHlvdSBhbHJlYWR5IGtub3cgJyd0aScnLCAnJ2RvJycg YW5kICcnbWknJywgYnV0IHRoZXJlIGFyZSBtYW55IG1vcmUsIHNvIGxldCdzIGdldCBsZWFybmlu Zy4gRmlyc3QsIHdlIHdhbnQgdG8gcHV0IGl0IGludG8gc3lzdGVtLiBXZSBjYW4gYmVnaW4gd2l0 aCB0aGUgb25lcyBtb3N0IGZhbWlsaWFyIHRvIEVuZ2xpc2gsIGFuZCB3aGF0IHlvdSd2ZSBhbHJl YWR5IGxlYXJuZWQ6CgoKCl9fJyd0aScnX18gLSBzdW1rYSdpOiDigJxpbW1lZGlhdGUg4oCYaXQn OiByZXByZXNlbnRzIGEgc3VtdGkgcGh5c2ljYWxseSBuZWFyIHRoZSBzcGVha2Vy4oCdCgpfXycn dGEnJ19fIC0gc3Vta2EnaTog4oCcbmVhcmJ5IOKAmGl0JzogcmVwcmVzZW50cyBhIHN1bXRpIHNv bWUgcGh5c2ljYWwgZGlzdGFuY2UgZnJvbSB0aGUgc3BlYWtlciBPUiBjbG9zZSB0byB0aGUgbGlz dGVuZXLigJ0KCl9fJyd0dScnX18gLSBzdW1rYSdpOiDigJxkaXN0YW50IOKAmGl0JzogcmVwcmVz ZW50cyBhIHN1bXRpIHBoeXNpY2FsbHkgZmFyIGZyb20gdGhlIHNwZWFrZXIgYW5kIHRoZSBsaXN0 ZW5lci7igJ0KCgoKWW91IGNhbiBhZ2FpbiByZWNvZ25pemUgdGhlIOKAnGksIGEsIHXigJ0tc2Vx dWVuY2Ugd2hpY2ggcG9wcyB1cCBvdmVyIGFuZCBvdmVyLiBTb21lIHRoaW5ncyBtaWdodCB0YWtl IHNvbWUgY2xlYXJpbmcgdXAsIHRob3VnaC4gRmlyc3RseSwgdGhlc2Ugc3VtdGkgY2FuIHJlcHJl c2VudCBhbnl0aGluZyB3aGljaCBjYW4gYmUgc2FpZCB0byBvY2N1cHkgYSBwaHlzaWNhbCBzcGFj ZS4gT2JqZWN0cywgY2VydGFpbmx5LiBJZGVhcywgY2VydGFpbmx5IG5vdC4gRXZlbnRzIGFyZSBh Y2NlcHRlZCwgYnV0IG9ubHkgdG8gdGhlIGV4dGVudCB0aGV5IGFyZSByZXN0cmljdGVkIHRvIGEg c3BlY2lmaWMgcGxhY2UgLSB0aGUgSmFzbWluIFJldm9sdXRpb24gY2Fubm90IGJlIHBvaW50ZWQg YXQsIGJ1dCBzb21lIGJhci1maWdodCBvciBhIGtpc3MgbWlnaHQuIFNlY29uZGx5LCBub3RlIHRo YXQgdGhlIGRpc3RhbmNlIGlzIHJlbGF0aXZlIHRvIGRpZmZlcmVudCB0aGluZ3MgZm9yIHRoZSBk aWZmZXJlbnQgd29yZHM6ICcndHUnJyBvbmx5IGFwcGxpZXMgaWYgaXQncyBkaXN0YW50IGZyb20g Ym90aCB0aGUgc3BlYWtlciBhbmQgdGhlIGxpc3RlbmVyLiBJbiBjYXNlcyB3aGVyZSB0aGUgc3Bl YWtlciBhbmQgbGlzdGVuZXIgaXMgZmFyIGFwYXJ0IGFuZCB0aGUgbGlzdGVuZXIgY2Fubm90IHNl ZSB0aGUgc3BlYWtlciB0YWxraW5nLCAnJ3RhJycgcmVmZXJzIHRvIHNvbWV0aGluZyBjbG9zZSB0 byB0aGUgbGlzdGVuZXIuIFRoaXJkbHksIGl0J3MgYWxsIHJlbGF0aXZlIGFuZCBjb250ZXh0IGRl cGVuZGVudC4gVGhlc2UgdGhyZWUgd29yZHMgYXJlIGFsbCBwcm9ibGVtYXRpYyBpbiB3cml0dGVu IHRleHQsIGZvciBpbnN0YW5jZSwgYmVjYXVzZSB0aGUgcG9zaXRpb24gb2YgdGhlIHNwZWFrZXIg YW5kIGxpc3RlbmVyIGlzIHVua25vd24gdG8gZWFjaCBvdGhlciwgYW5kIGNoYW5nZXMgYXMgdGlt ZSBnb2VzIGJ5LiBGdXJ0aGVybW9yZSwgdGhlIGF1dGhvciBvZiBhIGJvb2sgY2Fubm90IHBvaW50 IHRvIGFuIG9iamVjdCBhbmQgZXhwcmVzcyB0aGUgcG9pbnRpbmcgaW4gdGhlIGJvb2suCgoKClRo ZW4gdGhlcmUgaXMgYSBzZXJpZXMgY2FsbGVkIEtPaEEzLCB0byB3aGljaCAnJ21pJycgYW5kICcn ZG8nJyAoYW5kICcna28nJywgYnV0IEkgd29uJ3Qgd3JpdGUgdGhhdCBoZXJlKSBiZWxvbmdzOgoK X18nJ21pJydfXyAtIHN1bWthJ2k6IFRoZSBzcGVha2VyKHMpLgoKX18nJ21pJ28nJ19fIC0gc3Vt a2EnaTogVGhlIG1hc3Mgb2YgdGhlIHNwZWFrZXIocykgYW5kIHRoZSBsaXN0ZW5lcihzKSAuCgpf XycnbWknYScnX18gLSBzdW1rYSdpOiBUaGUgbWFzcyBvZiB0aGUgc3BlYWtlcihzKSBhbmQgb3Ro ZXJzLgoKX18nJ21hJ2EnJ19fIC0gc3Vta2EnaTogVGhlIG1hc3Mgb2YgdGhlIHNwZWFrZXIocyks IHRoZSBsaXN0ZW5lcihzKSBhbmQgb3RoZXJzLgoKX18nJ2RvJydfXyAtIHN1bWthJ2k6IFRoZSBs aXN0ZW5lcihzKS4KCl9fJydkbydvJydfXyAtIHN1bWthJ2k6IFRoZSBtYXNzIG9mIHRoZSBsaXN0 ZW5lcihzKSBhbmQgb3RoZXJzLgoKCgpUaGVzZSBzaXggc3Vta2EnaSBhcmUgbW9yZSBlYXNpbHkg Z3Jhc3BlZCBpbiB0aGUgYmVsb3cgVmVubiBkaWFncmFtOgoKCgp7aW1nIGZpbGVJZD0iMyIgdGh1 bWI9InkiIHJlbD0iYm94W2ddIn0KClZlbm4gZGlhZ3JhbSBvZiBLT2hBMyAoJydrbycnIGV4Y2x1 ZGVkKS4gJydsZSBkcmF0YScnIGlzIG5vdCBhIEtPaEEzLCBidXQgbWVhbnMg4oCcdGhlIG90aGVy KHMp4oCdCgoKCkl0IGlzIHBvc3NpYmxlIGZvciBzZXZlcmFsIHBlb3BsZSB0byBiZSDigJx0aGUg c3BlYWtlcnPigJ0sIGlmIG9uZSBzdGF0ZW1lbnQgaXMgbWFkZSBvbiB0aGUgYmVoYWxmIG9mIGFs bCBvZiB0aGVtLiBUaGVyZWZvcmUsIHdoaWxlIOKAnHdl4oCdIGNhbiBiZSB0cmFuc2xhdGVkIGFz IGVpdGhlciAnJ21pJycsICcnbWknbycnLCAnJ21pJ2EnJyBvciAnJ21hJ2EnJywgd2hhdCBvbmUg cXVpdGUgb2Z0ZW4gbWVhbnMgaXMgcmVhbGx5IGp1c3QgJydtaScnLiBBbGwgb2YgdGhlc2Ugc2l4 LCBpZiB0aGV5IHJlZmVyIHRvIG1vcmUgdGhhbiBvbmUgaW5kaXZpZHVhbCwgcmVwcmVzZW50IG1h c3Nlcy4gV2l0aGluIGJyaWRpLWxvZ2ljLCB0aGUgYnJpZGkgJydtaSBnbGVraScnIHNhaWQgYnkg c3BlYWtlciBBIGlzIGV4YWN0bHkgZXF1aXZhbGVudCB0byAnJ2RvIGdsZWtpJycgc2FpZCBieSBz cGVha2VyIEIgdG8gc3BlYWtlciBBLCBhbmQgYXJlIGNvbnNpZGVyZWQgdGhlIHNhbWUgYnJpZGku IFdlIHdpbGwgY29tZSBiYWNrIHRvIHRoaXMgbGF0ZXIsIGluIHRoZSAnJ2JyaWthJ2knJyAocHJv LWJyaWRpKSBsZXNzb24uCgoKCkFsbCBvZiB0aGVzZSAnJ3N1bWthJ2knJyBhcmUgdmVyeSBjb250 ZW50LXNwZWNpZmljLCBhbmQgY2Fubm90IGJlIHVzZWQsIGZvciBpbnN0YW5jZSwgdG8gaGVscCB1 cyB3aXRoIHRoZSBzZW50ZW5jZSB3aGljaCB0aGlzIGxlc3NvbiBiZWdhbiB3aXRoLiBUaGUgZm9s bG93aW5nIHNlcmllcyBjYW4gaW4gcHJpbmNpcGxlIGJlIHVzZWQgdG8gcmVmZXIgdG8gYW55IHN1 bXRpOgoKX18nJ3JpJydfXyAtIHN1bWthJ2k6IOKAnExhc3Qgc3VtdGkgbWVudGlvbmVk4oCdCgpf XycncmEnJ19fIC0gc3Vta2EnaTog4oCcQSByZWNlbnQsIGJ1dCBub3QgdGhlIGxhc3Qgc3VtdGkg bWVudGlvbmVk4oCdCgpfXycncnUnJ19fIC0gc3Vta2EnaTog4oCcQSBzdW10aSBtZW50aW9uZWQg bG9uZyBhZ2/igJ0KCgoKVGhlc2Ugc3VtdGkgd2lsbCByZWZlciB0byBhbnkgdGVybWluYXRlZCBz dW10aSBleGNlcHQgbW9zdCBvdGhlciAnJ3N1bWthJ2knJy4gVGhlIHJlYXNvbiB0aGF0IG1vc3Qg b3RoZXIgJydzdW1rYSdpJycgY2Fubm90IGJlIHJlZmVycmVkIHRvIGJ5IHRoZXNlIHN1bXRpLCBp cyB0aGF0IHRoZXkgYXJlIHNvIGVhc3kgdG8ganVzdCByZXBlYXQgYnkgdGhlbXNlbHZlcy4gVGhl IGV4Y2VwdGlvbiB0byB0aGUgcnVsZSBhcmUgJyd0aScnLCAnJ3RhJycgYW5kICcndHUnJywgYmVj YXVzZSB5b3UgY291bGQgaGF2ZSBjaGFuZ2VkIHdoYXQgeW91IHBvaW50IGF0LCBhbmQgdGh1cyBj YW5ub3QganVzdCByZXBlYXQgdGhlIHdvcmQuIFRoZXkgd2lsbCBvbmx5IHJlZmVyIHRvIHRlcm1p bmF0ZWQgc3VtdGksIGFuZCB0aHVzIGNhbm5vdCwgZm9yIGluc3RhbmNlLCBiZSB1c2VkIHRvIHJl ZmVyIHRvIGFuIGFic3RyYWN0aW9uIGlmIHRoZSB3b3JkIGluIGlzIHRoYXQgYWJzdHJhY3Rpb246 ICcnbGUgcGVuZG8gbm9pIGtlJ2EgcGVuZG8gbWkgY3UgZGppY2EgbG8gbnUgcmkgc2UgemRhbmkn JyAtIGhlcmUgJydyaScnIGNhbm5vdCByZWZlciB0byB0aGUgYWJzdHJhdGlvbiwgc2luY2UgaXQg aXMgbm90IHRlcm1pbmF0ZWQsIG5vciB0byAnJ21pJycgb3IgJydrZSdhJycsIHNpbmNlIHRoZXkg YXJlIHN1bWthJ2ksIHNvIGl0IHJlZmVycyB0byAnJ2xlIHBlbmRvJycuCgonJ3JhJycgYW5kICcn cnUnJyBhcmUgY29udGV4dC1kZXBlbmRlbnQgaW4gd2hhdCB0aGV5IHJlZmVyIHRvLCBidXQgdGhl eSBmb2xsb3cgdGhlIHJ1bGVzIG1lbnRpb25lZCBhYm92ZSwgYW5kICcncnUnJyBhbHdheXMgcmVm ZXIgdG8gYSBtb3JlIGRpc3RhbnQgc3VtdGkgdGhhbiAnJ3JhJycsIHdoaWNoIGlzIGFsd2F5cyBt b3JlIGRpc3RhbnQgdGhhbiAnJ3JpJycuCgoKCicncmknJyBhbmQgaXQncyBicm90aGVycyBhcmUg cHJldHR5IHdlbGwgc3VpdGVkIGZvciBkZWFsaW5nIHdpdGggdGhlIG9yaWdpbmFsIHNlbnRlbmNl LiBUcnkgc2F5aW5nIGl0IHVzaW5nIHR3byBpbnN0YW5jZXMgb2YgJydzdW1rYSdpJychCgoKCkFu c3dlcjogfn5ncmV5LGdyZXk6JydsZSdlIHByZW51IHBvaSBrZSdhIGtha25lIGxvIG51IHRhdmxh IGZvIGxhIC5sb2piYW4uIGN1IHRhdmxhIHJ1IGxvIGJhbmd1IHBvaSBydSBjdSBzZSBiYW5ndSBr ZSdhJycuICcncmknJyBpcyBub3QgY29ycmVjdCwgYmVjYXVzZSBpdCByZWZlcnMgdG8gJydsYSAu bG9qYmFuLicnLiAnJ3JhJycgY291bGQgYmUgdXNlZCwgYnV0IGNvdWxkIGJlIG1pc3Rha2VubHkg YmUgdGhvdWdodCB0byByZWZlciB0byAnJ2xvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4uJycsIGJ1 dCAnJ3J1JycgaXMgYXNzdW1lZCB0byByZWZlciB0byB0aGUgbW9zdCBkaXN0YW50IHN1bXRpIC0g dGhlIG1vc3Qgb3V0ZXIgb25lLn5+CgoKCkxhc3RseSwgdGhlcmUgYSBzdW10Y2l0YSB3aGljaCBy ZXByZXNlbnQgdXR0ZXJhbmNlczogU28gY2FsbGVkIHV0dGVyYW5jZSB2YXJpYWJsZXMuIFRoZXkg bmVlZCBub3QgYmUgcmVzdHJpY3RlZCB0byBvbmUgc2VudGVuY2UgKGp1ZnJhKSwgYnV0IGNhbiBi ZSBzZXZlcmFsIHNlbnRlbmNlcywgaWYgdGhlIGNvbnRleHQgYWxsb3dzIGl0OgoKX18nJ2RhJ3Un J19fIFV0dGVyYW5jZSB2YXJpYWJsZTogUmVtb3RlIHBhc3Qgc2VudGVuY2UKCl9fJydkZSd1Jydf XyBVdHRlcmFuY2UgdmFyaWFibGU6IFJlY2VudCBzZW50ZW5jZQoKX18nJ2RpJ3UnJ19fIFV0dGVy YW5jZSB2YXJpYWJsZTogUHJldmlvdXMgc2VudGVuY2UKCl9fJydkZWknJ19fIFV0dGVyYW5jZSB2 YXJpYWJsZTogVGhpcyBzZW50ZW5jZQoKX18nJ2RpJ2UnJ19fIFV0dGVyYW5jZSB2YXJpYWJsZTog TmV4dCBzZW50ZW5jZQoKX18nJ2RlJ2UnJ19fIFV0dGVyYW5jZSB2YXJpYWJsZTogTmVhciBmdXR1 cmUgc2VudGVuY2UKCl9fJydkYSdlJydfXyBVdHRlcmFuY2UgdmFyaWFibGU6IFJlbW90ZSBmdXR1 cmUgc2VudGVuY2UKCl9fJydkbydpJydfXyBVdHRlcmFuY2UgdmFyaWFibGU6IEVsbGlwdGljYWwg dXR0ZXJhbmNlIHZhcmlhYmxlOiDigJxTb21lIHNlbnRlbmNl4oCdCgpUaGVzZSByZXByZXNlbnRz IHNlbnRlbmNlcyBhcyBzdW10aSwgYW5kIHJlZmVyIG9ubHkgdG8gdGhlIHNwb2tlbiB3b3JkcyBv ciB0aGUgbGV0dGVycywgbm90IHRvIHRoZSBtZWFuaW5nIGJlaGluZCB0aGVtLgoKCgpUaGVyZSBh cmUgbW9yZSBMb2piYW4gJydzdW1rYSdpJycsIGJ1dCBmb3Igbm93IHlvdSBwcm9iYWJseSBuZWVk IGEgYnJlYWsgZnJvbSB0aGVtLiBUaGUgbmV4dCBsZXNzb24gd2lsbCBiZSBvbiBkZXJpdmVkIHN1 bXRpLCBzdW10aSBtYWRlIGZyb20gb3RoZXIgc3VtdGkuCgoKCgoKISFMb2piYW4gTGVzc29ucyAt IExlc3NvbiBzaXh0ZWVuICh0aGUgTG9qYmFuIHN1bXRpIDM6IGRlcml2ZWQgc3VtdGkpCgpZb3Ug Y2FuIHByb2JhYmx5IHNlZSB0aGF0IHRoZSBzdW10aSAnJ2xlIGJhbmd1IHBvaSBtaSBzZSBiYW5n dSBrZSdhJycgaXMgYSBsZXNzIHRoYW4gZWxlZ2FudCBleHByZXNzaW9uIGZvciDigJxteSBsYW5n dWFnZeKAnS4gVGhpcyBpcyBiZWNhdXNlIGl0J3MgcmVhbGx5IGEgd29yayBhcm91bmQuIEEgbGFu Z3VhZ2Ugd2hpY2ggSSBzcGVhayBjYW4gYmUgc2FpZCB0byBmaWxsIGludG8gdGhlIHgxIG9mIHRo ZSBicmlkaSAnJ2Jhbmd1IG1pJycuIFdlIGNhbid0IGNvbnZlcnQgdGhhdCB0byBhIHN1bXRpIHVz aW5nIGEgZ2Fkcmk6ICcnbGUgYmFuZ3Uge2t1fSBtaScnIGlzIHR3byBzdW10aSwgYmVjYXVzZSAn J2Jhbmd1IG1pJycgaXMgYSBicmlkaSwgbm90IGEgc2VsYnJpLiBOZWl0aGVyIGNhbiB3ZSBjb252 ZXJ0IGl0IHVzaW5nICcnbGUgc3UndScnLCBiZWNhdXNlIHRoZSBzdSd1IGdpdmVzIHRoZSBicmlk aSBhIG5ldyB4MSwgdGhlIGFic3RyYWN0aW9uLCBhbmQgdGhlICcnbGUnJyB0aGVuIGV4dHJhY3Rz IHRoYXQuIFRoYXQgbWFrZXMgYW4gYWJzdHJhY3Rpb24gc3VtdGkgbWVhbmluZyBzb21ldGhpbmcg bGlrZSDigJx0aGF0IHNvbWV0aGluZyBpcyBteSBsYW5ndWFnZeKAnS4KCkVudGVyICcnYmUnJy4g JydiZScnIGlzIGEgd29yZCB3aGljaCBiaW5kcyBjb25zdHJ1Y3RzIChzdW10aSwgc3VtdGNpdGEg YW5kIG90aGVycykgdG8gYSBzZWxicmkuIFVzaW5nIGl0IGluIG9yZGluYXJ5IHNlbGJyaSBoYXMg bm8gZWZmZWN0OiBpbiAnJ21pIG5lbGNpIGJlIGRvJycsIHRoZSAnJ2JlJycgZG9lcyBub3RoaW5n LiBIb3dldmVyLCB3aGVuIGEgc3VtdGkgaXMgYm91bmQgdG8gYSBzZWxicmkgdGhpcyB3YXksIHlv dSBjYW4gdXNlIGEgZ2Fkcmkgb24gdGhlIHNlbGJyaSB3aXRob3V0IHRoZSBzdW10aSBzcGxpdHRp bmcgb2ZmOiAnJ2xlIGJhbmd1IGJlIG1pJycgaXMgYSBjb3JyZWN0IHNvbHV0aW9uIHRvIHRoZSBw cm9ibGVtIGFib3ZlLiBMaWtld2lzZSwgeW91IGNhbiBhdHRhY2ggYSBzdW10Y2l0YTogJydsZSBu dSBkYXJ4aSBrZWkgYmUgZ2F1IGRvJyc6IOKAnFRoZSBldmVudCBvZiBoaXR0aW5nLCB3aGljaCBp cyBjYXVzZWQgYnkgeW914oCdLiBOb3RlIHRoYXQgdGhlIHByZXNlbmNlIG9yIGFic2VuY2Ugb2Yg JydrZWknJyBtYWtlcyBpdCBwYXJzZSBkaWZmZXJlbnRseTogV2l0aCB0aGUgZmEnb3JtYSdvIHBy ZXNlbnQsICcnYmUnJyBhdHRhY2hlcyB0byAnJ251JycsIHdpdGhvdXQgdGhlIGZhJ29ybWEnbywg aXQgYXR0YWNoZXMgdG8gJydkYXJ4aScnLiBTbyBpdCBkZWNpZGVzIHdoYXQgaXMgYmVpbmcgZW1w aGFzaXNlZDogSXMgdGhlIGhpdHRpbmcsIG9yIHRoZSBldmVudCBvZiBoaXR0aW5nIGNhdXNlZCBi eSB5b3U/IEluIHRoaXMgc3BlY2lmaWMgY2FzZSwgdGhvdWdoLCB0aGF0J3MganVzdCBhYm91dCB0 aGUgc2FtZSB0aGluZy4KCgoKV2hhdCBpZiBJIHdhbnQgdG8gYXR0YWNoIHNldmVyYWwgc3VtdGkg dG8gYSBzZWxicmkgaW5zaWRlIGEgZ2Fkcmk/IOKAnFRoZSBnaXZlciBvZiB0aGUgYXBwbGUgdG8g eW914oCdIGlzICcnbGUgZHVuZGEgYmUgbG8gcGxpc2UgYmUgZG8nJywgcmlnaHQ/IE5vcGUuIFRo ZSBzZWNvbmQgJydiZScnIGF0dGFjaGVzIHRvIHRoZSBhcHBsZSwgbWVhbmluZyAnJ2xlIHBsaXNl IGJlIGRvJycgLSDigJxUaGUgYXBwbGUgb2YgdGhlIHN0cmFpbiBvZiB5b3XigJ0sIHdoaWNoIG1h a2VzIG5vIHNlbnNlLiBJbiBvcmRlciB0byBzdHJpbmcgc2V2ZXJhbCBzdW10aSB0byBhIHNlbGJy aSwgdGhlIGFsbCB0aGUgb25lcyBmb2xsb3dpbmcgdGhlIGZpcnN0IG11c3QgYmUgYm91bmQgd2l0 aCAnJ2JlaScnLiBUaGUg4oCcYmluZGluZ+KAnSBjYW4gYmUgdGVybWluYXRlZCB3aXRoICcnYmUn bycnIC0gb25lIGluc3RhbmNlIG9mICcnYmUnbycnIGZvciBlYWNoIHNlbGJyaSB3aGljaCBoYXMg c3VtdGkgYm91bmQgYnkgJydiZScnLgoKVG8gbGlzdCB0aGVtOgoKX18nJ2JlJydfXyBiaW5kcyBz dW10aSBvciBzdW10Y2l0YSB0byBzZWxicmkKCl9fJydiZWknJ19fIGJpbmRzIGEgc2Vjb25kLCB0 aGlyZCwgZm91cnRoIChlY3QpIHN1bXRpIG9yIHN1bXRjaXRhIHRvIGEgc2VsYnJpCgpfXycnYmUn bycnX18gZW5kcyBiaW5kaW5nIHRvIHNlbGJyaQoKCgpUaGVyZSBpcyBhbHNvIHdheXMgdG8gbG9v c2VseSBhc3NvY2lhdGUgYSBzdW10aSB3aXRoIGFub3RoZXIuICcncGUnJyBhbmQgJyduZScnIGZv ciByZXN0cmljdGl2ZSBhbmQgbm9uLXJlc3RyaWN0aXZlIGFzc29jaWF0aW9uLiBBY3R1YWxseSwg JydsZSBiYW5ndSBwZSBtaScnIGlzIGEgYmV0dGVyIHRyYW5zbGF0aW9uIG9mIOKAnG15IGxhbmd1 YWdl4oCdLCBzaW5jZSB0aGlzIHBocmFzZSwgbGlrZSB0aGUgRW5nbGlzaCwgaXMgdmFndWUgYXMg dG8gaG93IHRoZSB0d28gYXJlIGFzc29jaWF0ZWQgd2l0aCBlYWNoIG90aGVyLgoKJydwZScnIGFu ZCAnJ25lJycgYXJlIHVzZWQgYXMgbG9vc2UgYXNzb2NpYXRpb24gb25seSwgbGlrZSBzYXlpbmcg 4oCcbXkgY2hhaXLigJ0gYWJvdXQgYSBjaGFpciB3aGljaCB5b3Ugc2l0IG9uLiBJdCdzIG5vdCBy ZWFsbHkgeW91cnMsIGJ1dCBoYXMgc29tZXRoaW5nIGRvIHRvIHdpdGggeW91LiBBIG1vcmUgaW50 aW1hdGUgY29ubmVjdGlvbiBjYW4gYmUgZXN0YWJsaXNoZWQgd2l0aCAnJ3BvJycsIHdoaWNoIG1h a2VzIHRoZSBhc3NvY2lhdGlvbiB1bmlxdWUgYW5kIGJpbmRpbmcgdG8gYSBwZXJzb24sIGFzIGlu IOKAnG15IGNhcuKAnSBmb3IgYSBjYXIgdGhhdCB5b3UgYWN0dWFsbHkgb3duLiBUaGUgbGFzdCBr aW5kIG9mIGFzc29jaWF0b3IgaXMgJydwbydlJycsIHdoaWNoIG1ha2VzIGEgc28tY2FsbGVkICJp bmFsaWVuYWJsZSIgYm9uZCBiZXR3ZWVuIHN1bXRpLCBtZWFuaW5nIHRoYXQgdGhlIGJvbmQgaXMg aW5uYXRlIGJldHdlZW4gdGhlIHR3byBzdW10aS4gU29tZSBleGFtcGxlcyBjb3VsZCBiZSAibXkg bW90aGVyIiwgIm15IGFybSIgb3IgIm15IGhvbWUgY291bnRyeSI7IG5vbmUgb2YgdGhlc2UgInBv c3Nlc2lvbnMiIGNhbiBiZSBsb3N0IChldmVuIGlmIHlvdSBzYXcgb2ZmIHlvdXIgYXJtLCBpdCdz IHN0aWxsIF9feW91cl9fIGFybSksIGFuZCBhcmUgdGhlcmVmb3JlIGluYWxpZW5hYmxlLiBBbG1v c3QgYWxsIG9mIHRoZSB0aW1lcyBhICcncG8nZScnIGlzIGFwcHJvcHJpYXRlLCB0aG91Z2gsIHRo ZSB4MiBvZiB0aGUgc2VsYnJpIGNvbnRhaW5zIHRoZSBvbmUgdG8gd2hpY2ggdGhlIHgxIGlzIGNv bm5lY3RlZCwgc28gJydiZScnIGlzIGJldHRlci4KCl9fJyduZScnX18gbm9uLXJlc3RyaWN0aXZl IHJlbGF0aXZlIHBocmFzZS4gIndoaWNoIGlzIGFzc29jaWF0ZWQgd2l0aC4uLiIKCl9fJydwZScn X18gcmVzdHJpY3RpdmUgcmVsYXRpdmUgcGhyYXNlLiAid2hpY2ggaXMgYXNzb2NpYXRlZCB3aXRo Li4uIgoKX18nJ3BvJydfXyBwb3NzZXNpdmUgcmVsYXRpdmUgcGhyYXNlLiAid2hpY2ggaXMgc3Bl Y2lmaWMgdG8uLi4iCgpfXycncG8nZScnX18gaW5hbGllbmFibGUgcmVsYXRpdmUgcGhyYXNlLiAi d2hpY2ggYmVsb25ncyB0by4uLiIKCgoKQSB2ZXJ5IHVzZWZ1bCBjb25zdHJ1Y3QgdG8ga25vdyBp cyAnJ3tnYWRyaX0ge3N1bXRpfSB7c2VsYnJpfScnLiB0aGlzIGlzIGVxdWl2YWxlbnQgdG8gJyd7 Z2Fkcml9IHtzZWxicml9IHBlICB7c3VtdGl9JycuIEZvciBpbnN0YW5jZSAnJ2xlIG1pIGdlcmt1 JycgaXMgZXF1aXZhbGVudCB0byAnJ2xlIGdlcmt1IHBlIG1pJycuIE9uZSBjb3VsZCBoYXZlIGRl c2NyaXB0aW9uIHN1bXRpIGluc2lkZSBkZXNjcmlwdGlvbiBzdW10aSwgc2F5aW5nICcnbGUgbGUg c2UgY2luamlrY2EgYmUgbWkga3UgZ2Vya3UnJywgPSAnJ2xlIGdlcmt1IHBlIGxlIHNlIGNpbmpp a2NhIGJlIG1pJycgPeKAnHRoZSBkb2cgb2YgdGhlIG1hbiBJJ20gZmxpcnRpbmcgd2l0aOKAnSwg YnV0IHRoYXQncyBub3QgdmVyeSBlYXN5IHRvIHJlYWQgKG9yIHRvIHVuZGVyc3RhbmQgd2hlbiBz cG9rZW4pLCBhbmQgaXMgb2Z0ZW4gYmVpbmcgYXZvaWRlZC4KCgoKT25lIG5lZWQgYWxzbyB0byBs ZWFybiAnJ3R1J2EnJywgc2luY2UgaXQgd2lsbCBtYWtlIGEgbG90IG9mIHNlbnRlbmNlcyBtdWNo IGVhc2llci4gSXQgdGFrZXMgYSBzdW10aSBhbmQgY29udmVydHMgaXQgdG8gYW5vdGhlciBzdW10 aSAtIGFuIGVsbGlwdGljYWwgYWJzdHJhY3Rpb24gd2hpY2ggaGFzIHNvbWV0aGluZyB0byBkbyB3 aXRoIHRoZSBmaXJzdCBzdW10aS4gRm9yIGV4YW1wbGUsIEkgY291bGQgc2F5ICcnbWkgZGppY2Eg bG8gbnUgbWkgY2l0a2EgbG8gcGxpc2UnJywgb3IgSSBjb3VsZCBsZXQgaXQgYmUgdXAgdG8gY29u dGV4dCB3aGF0IGFic3RyYWN0aW9uIGFib3V0IHRoZSBhcHBsZSBJIGRlc2lyZSBhbmQganVzdCBz YXkgJydtaSBkamljYSB0dSdhIGxvIHBsaXNlJycuIE9uZSBhbHdheXMgaGFzIHRvIGd1ZXNzIHdo YXQgYWJzdHJhY3Rpb24gdGhlIHNwZWFrZXIgbWVhbnMgYnkgJyd0dSdhIFNVTVRJJycsIHNvIGl0 IHNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiBjb250ZXh0IG1ha2VzIGl0IGVhc3kgdG8gZ3Vlc3Mu IEFub3RoZXIgZXhhbXBsZToKCl9fJydnYXNudScnX18g4oCceDEgZG9lcy9icmluZ3MgYWJvdXQg eDIgKHZvbGl0aW9uIG5vdCBpbXBsaWVkKeKAnQoKJyd6YSdhIGRvIGdhc251IHR1J2EgbG8gc2th bWknJyAtIOKAnEkgc2VlIHRoYXQgeW91IG1ha2UgdGhlIGNvbXB1dGVyIGRvIHNvbWV0aGluZ+KA nS4gT2ZmaWNpYWxseSwgJyd0dSdhIFNVTVRJJycgaXMgZXF1aXZhbGVudCB0byAnJ2xlIHN1J3Ug U1VNVEkgY28nZScnLiBWYWd1ZSwgYnV0IHVzZWZ1bC4gVGhlcmUgYXJlIHNpdHVhdGlvbnMgd2hl cmUgeW91IGNhbm5vdCB1c2UgJyd0dSdhJycsIGV2ZW4gdGhvdWdoIGl0IHdvdWxkIHNlZW0gc3Vp dGFibGUuIFRoZXNlIHNpdHVhdGlvbnMgYXJlIHdoZW4gSSBkb24ndCB3YW50IHRoZSByZXN1bHRp bmcgc3VtdGkgdG8gYmUgYW4gYWJzdHJhY3Rpb24sIGJ1dCBhIGNvbmNyZXRlIHN1bXRpLiBJbiB0 aGlzIGNhc2UsIG9uZSBjYW4gdXNlICcnem8nZSBwZScnLgoKX18nJ3R1J2EnJ19fIGNvbnZlcnQg c3VtdGkgdG8gdmFndWUgYWJzdHJhY3Rpb24gaW52b2x2aW5nIHRoZSBzdW10aS4gRXF1aXZhbGVu dCB0byAnJ2xlIHN1J3UgU1VNVEkgY28nZSBrZWkga3UnJwoKCgpGaW5hbGx5LCBvbmUga2luZCBv ZiBzdW10aSBjYW4gYmUgdHVybmVkIGludG8gYW5vdGhlciBieSB0aGUgd29yZHMgb2YgdGhlIGNs YXNzIExBaEUuCgpfXycnbHUnYScnX18gLSBDb252ZXJ0IGluZGl2aWR1YWwocykvbWFzcy9zZXF1 ZW5jZS9zZXQgdG8gaW5kaXZpZHVhbHMuCgpfXycnbHUnaScnX18gLSBDb252ZXJ0IGluZGl2aWR1 YWwocykvbWFzcy9zZXF1ZW5jZS9zZXQgdG8gYSBzZXQuCgpfXycnbHUnbycnX18gLSBDb252ZXJ0 IGluZGl2aWR1YWwocykvbWFzcy9zZXF1ZW5jZS9zZXQgdG8gbWFzcy4KCl9fJyd2dSdpJydfXyAt IENvbnZlcnQgaW5kaXZpZHVhbChzKS9tYXNzL3NlcXVlbmNlL3NldCB0byBzZXF1ZW5jZTsgdGhl IG9yZGVyIGlzIG5vdCBzdGF0ZWQuCgpUaGUgdXNlIG9mIHRoZXNlIHdvcmRzIGlzIHN0cmFpZ2h0 LWZvcndhcmRseTogUGxhY2luZyB0aGVtIGJlZm9yZSBhIHN1bXRpIG9mIGEgY2VydGFpbiB0eXBl IG1ha2VzIGEgbmV3IHN1bXRpIG9mIGEgbmV3IHR5cGUuIE5vdGljZSwgdGhvdWdoLCB0aGF0IGFz IGEgZm91cnRoIGtpbmQgb2Ygc3VtdGksIGEgc2VxdWVuY2UgaGFzIGJlZW4gaW50cm9kdWNlZC4g VGhpcyBpcyBub3QgdXNlZCB2ZXJ5IG9mdGVuIChpdCBkb2Vzbid0IGhhdmUgaXRzIG93biBnYWRy aSwgZm9yIGluc3RhbmNlKSwgYnV0IGp1c3QgaW5jbHVkZWQgaGVyZSBmb3IgY29tcGxldGlvbi4K ClRoZSBsYXN0IHR3byBtZW1iZXJzIG9mIExBaEUgZG8gbm90IGNvbnZlcnQgYmV0d2VlbiB0eXBl cyBvZiBzdW10aSwgYnV0IGFsbG93cyB5b3UgdG8gc3BlYWsgb2YgYSBhIHN1bXRpIGJ5IG9ubHkg bWVudGlvbmluZyBzb21ldGhpbmcgd2hpY2ggcmVmZXJlbmNlcyB0byBpdDoKCklmIG9uZSBzdW10 aSBBIHJlZmVycyB0byBhIHN1bXRpIEIsIGZvciBpbnN0YW5jZSBiZWNhdXNlIHN1bXRpIEEgaXMg YSB0aXRsZSBvZiBhIGJvb2ssIG9yIGEgbmFtZSwgb3IgYSBzZW50ZW5jZSAod2hpY2ggYWx3YXlz IHJlZmVyIHRvIHNvbWV0aGluZywgYXQgbGVhc3QgYSBicmlkaSksIOKAmCdsYSdlIFNVTVRJIEEn JyByZWZlcnMgdG8gc3VtdGkgQi4gRm9yIGluc3RhbmNlLCDigJgnbWkgbmVsY2kgbGEnZSBkaSd1 JycgZm9yIOKAnEkgbGlrZSB3aGF0IHlvdSBqdXN0IHNhaWTigJ0gKG5vdCAnJ21pIG5lbGNpIGRp J3UnJyB3aGljaCBqdXN0IG1lYW5zICJJIGxpa2UgeW91ciBwcmV2aW91cyBzZW50ZW5jZSIpIG9y IOKAmCdsYSdlIGxlIGNtYWx1IG5vbHRydScnIGZvciB0aGUgYm9vayDigJxUaGUgTGl0dGxlIFBy aW5jZeKAnSwgYW5kIG5vdCBzb21lIGxpdHRsZSBwcmluY2UgaGltc2VsZi4gVGhlIGNtYXZvIOKA mCdsdSdlJycgZG9lcyB0aGUgZXhhY3QgcmV2ZXJzZSDigJMg4oCYJ2x1J2UgU1VNVEknJyByZWZl cnMgdG8gYW4gb2JqZWN0IHdoaWNoIHJlZmVycyB0byB0aGUgc3VtdGkuIAoKX18nJ2xhJ2UnJ19f IC0g4oCcdGhlIHRoaW5nIHJlZmVycmVkIHRvIGJ54oCdIC0gZXh0cmFjdHMgYSBzdW10aSBBIGZy b20gYSBzdW10aSBCIHdoaWNoIHJlZmVycyB0byBBLiAKCl9fJydsdSdlJydfXyAtIOKAnHRoZSB0 aGluZyByZWZlcnJpbmcgdG/igJ0gLSBleHRyYWN0cyBhIHN1bXRpIEIgZnJvbSBhIHN1bXRpIEEs IHdoZW4gQiByZWZlcnMgdG8gQS4KCgoKCgohISFFbmQgb2YgcGFydCBvbmUKCkR1ZSB0byB0aGUg aW1wcmFjdGljYWxseSBsYXJnZSBzaXplIG9mIHRoZXNlIGxlc3NvbnMsIHRoZSBzZWNvbmQgYW5k IHRoaXJkIGluc3RhbGxtZW50IGNhbiBiZSBmb3VuZCBvbiBwYWdlcyBkZWRpY2F0ZWQgdG8gKCh3 YXZlbGVzc29uc2NvbnRpbnVlZHAyfHRoZSBmb3JtZXIpKSBhbmQgKCh3YXZlbGVzc29uc2NvbnRp bnVlZHAzfHRoZSBsYXR0ZXIpKS4gTm8gd29ycmllcywgdGhvdWdoLCBjbGlja2luZyBvbiAidGhl IGZvcm1lciIgb3IgInRoZSBsYXR0ZXIiIHdpbGwgdGFrZSB5b3UgdGhlcmUgcGFpbmxlc3NseS4K CgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCldpa2lj aGFuZ2VzIG1haWxpbmcgbGlzdApXaWtpY2hhbmdlc0Bsb2piYW4ub3JnCmh0dHA6Ly9tYWlsLmxv amJhbi5vcmcvbWFpbG1hbi9saXN0aW5mby93aWtpY2hhbmdlcwo=