Image Image Image Image Image Image Image Image Image Image
Scroll to top

Top

One Comment

Finding and Eliminating Dangerous vSphere Snapshots with Snapwatcher (for Free)

Finding and Eliminating Dangerous vSphere Snapshots with Snapwatcher (for Free)
David Davis, vExpert, VCP/VCAP, CCIE
  • On June 4, 2015

The word “dangerous” is often used for hazardous chemicals or live ammunition so can vSphere snapshots really be dangerous or is that an exaggeration? The answer is that, for the health of your vSphere infrastructure, snapshots can absolutely be dangerous. Snapshots that are left unchecked and growing out of control can bring your entire vSphere infrastructure and all your critical applications to a halt. I’d say that’s dangerous! Dangerous for your company’s profits and future. Dangerous for your career growth.

Sure you can try to monitor snapshots from VMware vCenter and usually, if you do that regularly, you’ll be okay. However, there are a few reasons why doing that alone is a bad idea-

  • Drilling down to get a list of all snapshots in the entire vSphere infrastructure takes quite a few clicks. Snapshot manager for each VM may not show every snapshot if there are broken snapshots. Going into Storage Reporting will list the snapshot files in each datastore and their size but it must be done for every data store, one at a time.
  • Someone having the discipline to manually check the status of snapshots, buried down the vSphere web client, each week is… unlikely… (yes, there are some scripts that you can use but, if you are like me, you don’t need any more scripts running than you already have)

So what you REALLY need is a smart robot that is working each day to FIND, ANALYZE, and help you FIX any potential snapshot issues BEFORE they bring down your vSphere infrastructure, right?

Normally, I would say that what you WANT, you aren’t going to get HOWEVER, I recently ran across a free tool that actually does all this for you…

lego-walleAutomated and Intelligent Snapshot Robot – SnapWatcher by opvizor

VMware vExpert Dennis Zimmer is well known in the VMware community for his virtualization monitoring and troubleshooting tool – opvizor. Recently, he announced that they have created an all new tool that they have made completely free – Snapwatcher.

When it comes to vSphere Snapshot monitoring and clean up, Snapwatcher is more resourceful and useful than any of the robots in this post (either Wall-E or “The Robot” from Lost in Space). Here are the functions that Snapwatcher can perform:

  • Monitor VMware snapshots across VMware vCenter systems and report your efforts saving space.
  • Track snapshots, find invalid snapshots – leverage the powerful grid to handle hundreds of snapshots smooth and simple.
  • Free precious disk space wasted by fixing broken, old and invalid snapshots with a click.

Here’s what Dennis Zimmer said about why he created Snapwatcher:

“81% of all VMware vSphere environments are affected by invalid snapshot or invalid snapshots that are notoriously hard to detect. Because each Snapshot’s Delta-file can grow to be the same size as their original files, you can easily develop space shortages in your data stores with enough broken snapshots. This is a common problem for anyone as invalid snapshots are hidden and customers keep their snapshots a lot longer than planned and perform large changes on their virtual machines while using snapshots ” says Dennis Zimmer, CEO and founder of opvizor.

After reading about Snapwatcher from Opvizor and from multiple other bloggers I figured I would give it a try in my lab. It was tiny to download, super-easy to install, and began working as soon as I told it how to access my vCenter server. I was able to view all my snapshots across all hosts and datastores, analyze those snapshots, report on their age, size, status (and more), delete snapshots as needed, fix broken and inconsistent snapshots, and take my snapshot history.

Here’s what Snapwatcher looks like once it has found some snapshots and running it’s snapshot analysis:
 

Opvizor Snapwatcher
 

Instead of telling you all about it, it’s easier if you would just watch the demo video below, or even better, give Snapwatcher a try for yourself, for free, in your own vSphere environment and see what it finds. If it helps you clean up some of your snapshots I’d love to hear about it – post your experience in our comments below.

Comments

Submit a Comment

Do you want massive traffic?
Dignissim enim porta aliquam nisi pellentesque. Pulvinar rhoncus magnis turpis sit odio pid pulvinar mattis integer aliquam!
  • Goblinus globalus fantumo tubus dia montes
  • Scelerisque cursus dignissim lopatico vutario
  • Montes vutario lacus quis preambul den lacus
  • Leftomato denitro oculus softam lorum quis
  • Spiratio dodenus christmas gulleria tix digit
  • Dualo fitemus lacus quis preambul pat turtulis
* we never share your e-mail with third parties.
COMPANY NAME
221, Mount Olimpus, Rheasilvia, Mars,
Solar System, Milky Way Galaxy
+1 (999) 123-45-67
Thank You. We will contact you as soon as possible.
Do you want more traffic?
Dignissim enim porta aliquam nisi pellentesque. Pulvinar rhoncus magnis turpis sit odio pid pulvinar mattis integer aliquam!
  • Goblinus globalus fantumo tubus dia montes
  • Scelerisque cursus dignissim lopatico vutario
  • Montes vutario lacus quis preambul den lacus
  • Leftomato denitro oculus softam lorum quis
  • Spiratio dodenus christmas gulleria tix digit
  • Dualo fitemus lacus quis preambul pat turtulis
  • Scelerisque cursus dignissim lopatico vutario
  • Montes vutario lacus quis preambul den lacus
SUBSCRIBE TO OUR NEWSLETTER AND START INCREASING YOUR PROFITS NOW!
* we never share your e-mail with third parties.
SUBSCRIBE TO NEWSLETTER
Turpis dis amet adipiscing hac montes odio ac velit? Porta, non rhoncus vut, vel, et adipiscing magna pulvinar adipiscing est adipiscing urna. Dignissim rhoncus scelerisque pulvinar?
SUBSCRIBE TO OUR NEWSLETTER
PGlmcmFtZSB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzcmM9Imh0dHA6Ly93d3cueW91dHViZS5jb20vZW1iZWQvajhsU2NITzJtTTAiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+
All rights reserved © Company Name, 2014
CONTACT US
COMPANY NAME
221, Mount Olimpus, Rheasilvia, Mars
Solar System, Milky Way Galaxy
+1 (999) 999-99-99
Thank You. We will contact you as soon as possible.
Macbook Pro
* Intel Core i7 (3.8GHz, 6MB cache)
* Retina Display (2880 x 1880 px)
* NVIDIA GeForce GT 750M (Iris)
* 802.11ac Wi-Fi and Bluetooth 4.0
* Thunderbolt 2 (up to 20Gb/s)
* Faster All-Flash Storage (X1)
* Long Lasting Battery (9 hours)
Ivan Churakov, developer
Tel.:
Fax:
E-mail:
Website:
+1 (800) 800-1234, +1 (800) 123-4567
+1 (800) 800-1234 (ext. 1234)
ivan.churakov@domain.tld
http://halfdata.com/
My CodeCanyon Portfolio
Banner Manager Pro - CodeCanyon Item for Sale
Coming Soon and Maintenance Mode - CodeCanyon Item for Sale
Code Shop - CodeCanyon Item for Sale
Keyword Tooltips - CodeCanyon Item for Sale
Subscribe & Download - CodeCanyon Item for Sale
"A placerat mauris placerat et penatibus porta aliquet sed dapibus, pulvinar urna cum aliquet arcu lectus sed tortor aliquet sed dapibus."
John Doe, Astronomer
Bubble Company Inc. © 2011-2014
SUBSCRIBE TO NEWSLETTER
PGlmcmFtZSB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzcmM9Ii8vd3d3LnlvdXR1YmUuY29tL2VtYmVkL3NCV1BDdmR2OEJrP2F1dG9wbGF5PTEiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+
ENJOY AURORA BOREALIS
SUBSCRIBE TO NEWSLETTER
INTERGALACTIC COMPANY
"Ridiculus enim cras placerat facilisis amet lorem ipsum scelerisque sagittis lorem tis!"
Jojn Doe, CEO
Tel.: +1 (800) 123-45-67, +1 (800) 123-45-68
Fax: +1 (800) 123-45-69 (any time, 24/7/365)
E-mail: info@intergalactic.company
Website: http://www.intergalactic.company
Address:
221, Mount Olimpus,
Rheasilvia region, Mars,
Solar System, Milky Way Galaxy
Do you want more traffic?
Dignissim enim porta aliquam nisi pellentesque. Pulvinar rhoncus magnis turpis sit odio pid pulvinar mattis integer aliquam!
  • Goblinus globalus fantumo tubus dia
  • Scelerisque cursus dignissim lopatico
  • Montes vutario lacus quis preambul
  • Leftomato denitro oculus softam lorum
  • Spiratio dodenus christmas gulleria tix
  • Dualo fitemus lacus quis preambul bela
PGlmcmFtZSB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzcmM9Imh0dHA6Ly93d3cueW91dHViZS5jb20vZW1iZWQvajhsU2NITzJtTTAiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+
* we never share your details with third parties.
Do you want massive traffic?
Scelerisque augue ac hac, aliquet, nascetur turpis. Augue diam phasellus odio lorem integer, aliquam aliquam sociis nisi adipiscing hacac.
  • Goblinus globalus fantumo tubus dia
  • Scelerisque cursus dignissim lopatico
  • Montes vutario lacus quis preambul
  • Leftomato denitro oculus softam lorum
  • Spiratio dodenus christmas gulleria tix
  • Dualo fitemus lacus quis preambul bela
PGlmcmFtZSB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzcmM9Imh0dHA6Ly93d3cueW91dHViZS5jb20vZW1iZWQvajhsU2NITzJtTTAiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+
* we never share your details with third parties.
CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZl9icm93c2VyX3Vua25vd24gZ2Zvcm1fd3JhcHBlcicgaWQ9J2dmb3JtX3dyYXBwZXJfMjMnIHN0eWxlPSdkaXNwbGF5Om5vbmUnPjxhIGlkPSdnZl8yMycgbmFtZT0nZ2ZfMjMnIGNsYXNzPSdnZm9ybV9hbmNob3InID48L2E+PGZvcm0gbWV0aG9kPSdwb3N0JyBlbmN0eXBlPSdtdWx0aXBhcnQvZm9ybS1kYXRhJyB0YXJnZXQ9J2dmb3JtX2FqYXhfZnJhbWVfMjMnIGlkPSdnZm9ybV8yMycgIGFjdGlvbj0nL2ZpbmRpbmctZWxpbWluYXRpbmctZGFuZ2Vyb3VzLXZzcGhlcmUtc25hcHNob3RzLXNuYXB3YXRjaGVyLWZyZWUvI2dmXzIzJz4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fYm9keSc+PHVsIGlkPSdnZm9ybV9maWVsZHNfMjMnIGNsYXNzPSdnZm9ybV9maWVsZHMgdG9wX2xhYmVsIGZvcm1fc3VibGFiZWxfYmVsb3cgZGVzY3JpcHRpb25fYmVsb3cnPjxsaSBpZD0nZmllbGRfMjNfMScgY2xhc3M9J2dmaWVsZCBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM18xJyA+Rmlyc3QgTmFtZTxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfMScgaWQ9J2lucHV0XzIzXzEnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nMScgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM18yJyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzInID5MYXN0IE5hbWU8c3BhbiBjbGFzcz0nZ2ZpZWxkX3JlcXVpcmVkJz4qPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+PGlucHV0IG5hbWU9J2lucHV0XzInIGlkPSdpbnB1dF8yM18yJyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyBjbGFzcz0nbWVkaXVtJyAgdGFiaW5kZXg9JzInICAgLz48L2Rpdj48L2xpPjxsaSBpZD0nZmllbGRfMjNfMycgY2xhc3M9J2dmaWVsZCBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM18zJyA+RW1haWw8c3BhbiBjbGFzcz0nZ2ZpZWxkX3JlcXVpcmVkJz4qPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgbmFtZT0naW5wdXRfMycgaWQ9J2lucHV0XzIzXzMnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nIHRhYmluZGV4PSczJyAgIC8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM181JyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzUnID5Db3VudHJ5PHNwYW4gY2xhc3M9J2dmaWVsZF9yZXF1aXJlZCc+Kjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxzZWxlY3QgbmFtZT0naW5wdXRfNScgaWQ9J2lucHV0XzIzXzUnIG9uY2hhbmdlPSdnZl9hcHBseV9ydWxlcygyMyxbNF0pOycgY2xhc3M9J21lZGl1bSBnZmllbGRfc2VsZWN0JyB0YWJpbmRleD0nNCcgPjxvcHRpb24gdmFsdWU9J1VuaXRlZCBTdGF0ZXMnIHNlbGVjdGVkPSdzZWxlY3RlZCc+VW5pdGVkIFN0YXRlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NhbmFkYScgPkNhbmFkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VuaXRlZCBLaW5nZG9tJyA+VW5pdGVkIEtpbmdkb208L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBdXN0cmFsaWEnID5BdXN0cmFsaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBZmdoYW5pc3RhbicgPkFmZ2hhbmlzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQWxiYW5pYScgPkFsYmFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbGdlcmlhJyA+QWxnZXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FtZXJpY2FuIFNhbW9hJyA+QW1lcmljYW4gU2Ftb2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbmRvcnJhJyA+QW5kb3JyYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FuZ29sYScgPkFuZ29sYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FudGlndWEgYW5kIEJhcmJ1ZGEnID5BbnRpZ3VhIGFuZCBCYXJidWRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJnZW50aW5hJyA+QXJnZW50aW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJtZW5pYScgPkFybWVuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBdXN0cmlhJyA+QXVzdHJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0F6ZXJiYWlqYW4nID5BemVyYmFpamFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmFoYW1hcycgPkJhaGFtYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCYWhyYWluJyA+QmFocmFpbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JhbmdsYWRlc2gnID5CYW5nbGFkZXNoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmFyYmFkb3MnID5CYXJiYWRvczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JlbGFydXMnID5CZWxhcnVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmVsZ2l1bScgPkJlbGdpdW08L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZWxpemUnID5CZWxpemU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZW5pbicgPkJlbmluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmVybXVkYScgPkJlcm11ZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCaHV0YW4nID5CaHV0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCb2xpdmlhJyA+Qm9saXZpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Jvc25pYSBhbmQgSGVyemVnb3ZpbmEnID5Cb3NuaWEgYW5kIEhlcnplZ292aW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQm90c3dhbmEnID5Cb3Rzd2FuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JyYXppbCcgPkJyYXppbDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JydW5laScgPkJydW5laTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0J1bGdhcmlhJyA+QnVsZ2FyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCdXJraW5hIEZhc28nID5CdXJraW5hIEZhc288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCdXJ1bmRpJyA+QnVydW5kaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NhbWJvZGlhJyA+Q2FtYm9kaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYW1lcm9vbicgPkNhbWVyb29uPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FwZSBWZXJkZScgPkNhcGUgVmVyZGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYXltYW4gSXNsYW5kcycgPkNheW1hbiBJc2xhbmRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2VudHJhbCBBZnJpY2FuIFJlcHVibGljJyA+Q2VudHJhbCBBZnJpY2FuIFJlcHVibGljPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2hhZCcgPkNoYWQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDaGlsZScgPkNoaWxlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2hpbmEnID5DaGluYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbG9tYmlhJyA+Q29sb21iaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb21vcm9zJyA+Q29tb3Jvczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbmdvLCBEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZScgPkNvbmdvLCBEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbmdvLCBSZXB1YmxpYyBvZiB0aGUnID5Db25nbywgUmVwdWJsaWMgb2YgdGhlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29zdGEgUmljYScgPkNvc3RhIFJpY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDJm9jaXJjO3RlIGQmIzAzOTtJdm9pcmUnID5DJm9jaXJjO3RlIGQmIzAzOTtJdm9pcmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDcm9hdGlhJyA+Q3JvYXRpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0N1YmEnID5DdWJhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3lwcnVzJyA+Q3lwcnVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3plY2ggUmVwdWJsaWMnID5DemVjaCBSZXB1YmxpYzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Rlbm1hcmsnID5EZW5tYXJrPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRGppYm91dGknID5Eamlib3V0aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0RvbWluaWNhJyA+RG9taW5pY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdEb21pbmljYW4gUmVwdWJsaWMnID5Eb21pbmljYW4gUmVwdWJsaWM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFYXN0IFRpbW9yJyA+RWFzdCBUaW1vcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VjdWFkb3InID5FY3VhZG9yPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRWd5cHQnID5FZ3lwdDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VsIFNhbHZhZG9yJyA+RWwgU2FsdmFkb3I8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFcXVhdG9yaWFsIEd1aW5lYScgPkVxdWF0b3JpYWwgR3VpbmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRXJpdHJlYScgPkVyaXRyZWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFc3RvbmlhJyA+RXN0b25pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0V0aGlvcGlhJyA+RXRoaW9waWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdGaWppJyA+RmlqaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ZpbmxhbmQnID5GaW5sYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRnJhbmNlJyA+RnJhbmNlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2Fib24nID5HYWJvbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dhbWJpYScgPkdhbWJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dlb3JnaWEnID5HZW9yZ2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2VybWFueScgPkdlcm1hbnk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHaGFuYScgPkdoYW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3JlZWNlJyA+R3JlZWNlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3JlZW5sYW5kJyA+R3JlZW5sYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3JlbmFkYScgPkdyZW5hZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHdWFtJyA+R3VhbTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0d1YXRlbWFsYScgPkd1YXRlbWFsYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0d1aW5lYScgPkd1aW5lYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0d1aW5lYS1CaXNzYXUnID5HdWluZWEtQmlzc2F1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3V5YW5hJyA+R3V5YW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSGFpdGknID5IYWl0aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0hvbmR1cmFzJyA+SG9uZHVyYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdIb25nIEtvbmcnID5Ib25nIEtvbmc8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdIdW5nYXJ5JyA+SHVuZ2FyeTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ljZWxhbmQnID5JY2VsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSW5kaWEnID5JbmRpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0luZG9uZXNpYScgPkluZG9uZXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lyYW4nID5JcmFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXJhcScgPklyYXE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJcmVsYW5kJyA+SXJlbGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lzcmFlbCcgPklzcmFlbDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0l0YWx5JyA+SXRhbHk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdKYW1haWNhJyA+SmFtYWljYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0phcGFuJyA+SmFwYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdKb3JkYW4nID5Kb3JkYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLYXpha2hzdGFuJyA+S2F6YWtoc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0tlbnlhJyA+S2VueWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLaXJpYmF0aScgPktpcmliYXRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTm9ydGggS29yZWEnID5Ob3J0aCBLb3JlYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvdXRoIEtvcmVhJyA+U291dGggS29yZWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLdXdhaXQnID5LdXdhaXQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLeXJneXpzdGFuJyA+S3lyZ3l6c3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xhb3MnID5MYW9zPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGF0dmlhJyA+TGF0dmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGViYW5vbicgPkxlYmFub248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMZXNvdGhvJyA+TGVzb3Robzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xpYmVyaWEnID5MaWJlcmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGlieWEnID5MaWJ5YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xpZWNodGVuc3RlaW4nID5MaWVjaHRlbnN0ZWluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGl0aHVhbmlhJyA+TGl0aHVhbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTHV4ZW1ib3VyZycgPkx1eGVtYm91cmc8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWNlZG9uaWEnID5NYWNlZG9uaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWRhZ2FzY2FyJyA+TWFkYWdhc2Nhcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbGF3aScgPk1hbGF3aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbGF5c2lhJyA+TWFsYXlzaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWxkaXZlcycgPk1hbGRpdmVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFsaScgPk1hbGk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWx0YScgPk1hbHRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFyc2hhbGwgSXNsYW5kcycgPk1hcnNoYWxsIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYXVyaXRhbmlhJyA+TWF1cml0YW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hdXJpdGl1cycgPk1hdXJpdGl1czwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01leGljbycgPk1leGljbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01pY3JvbmVzaWEnID5NaWNyb25lc2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW9sZG92YScgPk1vbGRvdmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb25hY28nID5Nb25hY288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb25nb2xpYScgPk1vbmdvbGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW9udGVuZWdybycgPk1vbnRlbmVncm88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb3JvY2NvJyA+TW9yb2Njbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vemFtYmlxdWUnID5Nb3phbWJpcXVlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTXlhbm1hcicgPk15YW5tYXI8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOYW1pYmlhJyA+TmFtaWJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05hdXJ1JyA+TmF1cnU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXBhbCcgPk5lcGFsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV0aGVybGFuZHMnID5OZXRoZXJsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05ldyBaZWFsYW5kJyA+TmV3IFplYWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaWNhcmFndWEnID5OaWNhcmFndWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaWdlcicgPk5pZ2VyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmlnZXJpYScgPk5pZ2VyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J3YXknID5Ob3J3YXk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J0aGVybiBNYXJpYW5hIElzbGFuZHMnID5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdPbWFuJyA+T21hbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Bha2lzdGFuJyA+UGFraXN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYWxhdScgPlBhbGF1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFsZXN0aW5lJyA+UGFsZXN0aW5lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFuYW1hJyA+UGFuYW1hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFwdWEgTmV3IEd1aW5lYScgPlBhcHVhIE5ldyBHdWluZWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYXJhZ3VheScgPlBhcmFndWF5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGVydScgPlBlcnU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQaGlsaXBwaW5lcycgPlBoaWxpcHBpbmVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUG9sYW5kJyA+UG9sYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUG9ydHVnYWwnID5Qb3J0dWdhbDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1B1ZXJ0byBSaWNvJyA+UHVlcnRvIFJpY288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdRYXRhcicgPlFhdGFyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUm9tYW5pYScgPlJvbWFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSdXNzaWEnID5SdXNzaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSd2FuZGEnID5Sd2FuZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBLaXR0cyBhbmQgTmV2aXMnID5TYWludCBLaXR0cyBhbmQgTmV2aXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBMdWNpYScgPlNhaW50IEx1Y2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXMnID5TYWludCBWaW5jZW50IGFuZCB0aGUgR3JlbmFkaW5lczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhbW9hJyA+U2Ftb2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYW4gTWFyaW5vJyA+U2FuIE1hcmlubzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhbyBUb21lIGFuZCBQcmluY2lwZScgPlNhbyBUb21lIGFuZCBQcmluY2lwZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhdWRpIEFyYWJpYScgPlNhdWRpIEFyYWJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NlbmVnYWwnID5TZW5lZ2FsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2VyYmlhIGFuZCBNb250ZW5lZ3JvJyA+U2VyYmlhIGFuZCBNb250ZW5lZ3JvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2V5Y2hlbGxlcycgPlNleWNoZWxsZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTaWVycmEgTGVvbmUnID5TaWVycmEgTGVvbmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTaW5nYXBvcmUnID5TaW5nYXBvcmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTbG92YWtpYScgPlNsb3Zha2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2xvdmVuaWEnID5TbG92ZW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvbG9tb24gSXNsYW5kcycgPlNvbG9tb24gSXNsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvbWFsaWEnID5Tb21hbGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU291dGggQWZyaWNhJyA+U291dGggQWZyaWNhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3BhaW4nID5TcGFpbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NyaSBMYW5rYScgPlNyaSBMYW5rYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N1ZGFuJyA+U3VkYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTdWRhbiwgU291dGgnID5TdWRhbiwgU291dGg8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTdXJpbmFtZScgPlN1cmluYW1lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3dhemlsYW5kJyA+U3dhemlsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3dlZGVuJyA+U3dlZGVuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3dpdHplcmxhbmQnID5Td2l0emVybGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N5cmlhJyA+U3lyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUYWl3YW4nID5UYWl3YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUYWppa2lzdGFuJyA+VGFqaWtpc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RhbnphbmlhJyA+VGFuemFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUaGFpbGFuZCcgPlRoYWlsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVG9nbycgPlRvZ288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUb25nYScgPlRvbmdhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHJpbmlkYWQgYW5kIFRvYmFnbycgPlRyaW5pZGFkIGFuZCBUb2JhZ288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUdW5pc2lhJyA+VHVuaXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1cmtleScgPlR1cmtleTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1cmttZW5pc3RhbicgPlR1cmttZW5pc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1dmFsdScgPlR1dmFsdTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VnYW5kYScgPlVnYW5kYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VrcmFpbmUnID5Va3JhaW5lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVW5pdGVkIEFyYWIgRW1pcmF0ZXMnID5Vbml0ZWQgQXJhYiBFbWlyYXRlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VydWd1YXknID5VcnVndWF5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVXpiZWtpc3RhbicgPlV6YmVraXN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWYW51YXR1JyA+VmFudWF0dTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZhdGljYW4gQ2l0eScgPlZhdGljYW4gQ2l0eTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZlbmV6dWVsYScgPlZlbmV6dWVsYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZpZXRuYW0nID5WaWV0bmFtPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmlyZ2luIElzbGFuZHMsIEJyaXRpc2gnID5WaXJnaW4gSXNsYW5kcywgQnJpdGlzaDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZpcmdpbiBJc2xhbmRzLCBVLlMuJyA+VmlyZ2luIElzbGFuZHMsIFUuUy48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdZZW1lbicgPlllbWVuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nWmFtYmlhJyA+WmFtYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nWmltYmFid2UnID5aaW1iYWJ3ZTwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM180JyBjbGFzcz0nZ2ZpZWxkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93JyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMjNfNCcgPlN0YXRlPC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48c2VsZWN0IG5hbWU9J2lucHV0XzQnIGlkPSdpbnB1dF8yM180JyAgY2xhc3M9J21lZGl1bSBnZmllbGRfc2VsZWN0JyB0YWJpbmRleD0nNScgPjxvcHRpb24gdmFsdWU9J0FsYWJhbWEnID5BbGFiYW1hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQWxhc2thJyA+QWxhc2thPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJpem9uYScgPkFyaXpvbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcmthbnNhcycgPkFya2Fuc2FzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FsaWZvcm5pYScgPkNhbGlmb3JuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb2xvcmFkbycgPkNvbG9yYWRvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29ubmVjdGljdXQnID5Db25uZWN0aWN1dDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0RlbGF3YXJlJyA+RGVsYXdhcmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdEaXN0cmljdCBvZiBDb2x1bWJpYScgPkRpc3RyaWN0IG9mIENvbHVtYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRmxvcmlkYScgPkZsb3JpZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHZW9yZ2lhJyA+R2VvcmdpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0hhd2FpaScgPkhhd2FpaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lkYWhvJyA+SWRhaG88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJbGxpbm9pcycgPklsbGlub2lzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSW5kaWFuYScgPkluZGlhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJb3dhJyA+SW93YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0thbnNhcycgPkthbnNhczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0tlbnR1Y2t5JyA+S2VudHVja3k8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMb3Vpc2lhbmEnID5Mb3Vpc2lhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWluZScgPk1haW5lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFyeWxhbmQnID5NYXJ5bGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hc3NhY2h1c2V0dHMnID5NYXNzYWNodXNldHRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWljaGlnYW4nID5NaWNoaWdhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01pbm5lc290YScgPk1pbm5lc290YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01pc3Npc3NpcHBpJyA+TWlzc2lzc2lwcGk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNaXNzb3VyaScgPk1pc3NvdXJpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW9udGFuYScgPk1vbnRhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZWJyYXNrYScgPk5lYnJhc2thPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV2YWRhJyA+TmV2YWRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV3IEhhbXBzaGlyZScgPk5ldyBIYW1wc2hpcmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXcgSmVyc2V5JyA+TmV3IEplcnNleTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05ldyBNZXhpY28nID5OZXcgTWV4aWNvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV3IFlvcmsnID5OZXcgWW9yazwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcnRoIENhcm9saW5hJyA+Tm9ydGggQ2Fyb2xpbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J0aCBEYWtvdGEnID5Ob3J0aCBEYWtvdGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdPaGlvJyA+T2hpbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J09rbGFob21hJyA+T2tsYWhvbWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdPcmVnb24nID5PcmVnb248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQZW5uc3lsdmFuaWEnID5QZW5uc3lsdmFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSaG9kZSBJc2xhbmQnID5SaG9kZSBJc2xhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb3V0aCBDYXJvbGluYScgPlNvdXRoIENhcm9saW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU291dGggRGFrb3RhJyA+U291dGggRGFrb3RhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVGVubmVzc2VlJyA+VGVubmVzc2VlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVGV4YXMnID5UZXhhczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1V0YWgnID5VdGFoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmVybW9udCcgPlZlcm1vbnQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWaXJnaW5pYScgPlZpcmdpbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nV2FzaGluZ3RvbicgPldhc2hpbmd0b248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdXZXN0IFZpcmdpbmlhJyA+V2VzdCBWaXJnaW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1dpc2NvbnNpbicgPldpc2NvbnNpbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1d5b21pbmcnID5XeW9taW5nPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJtZWQgRm9yY2VzIEFtZXJpY2FzJyA+QXJtZWQgRm9yY2VzIEFtZXJpY2FzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJtZWQgRm9yY2VzIEV1cm9wZScgPkFybWVkIEZvcmNlcyBFdXJvcGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcm1lZCBGb3JjZXMgUGFjaWZpYycgPkFybWVkIEZvcmNlcyBQYWNpZmljPC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzYnIGNsYXNzPSdnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM182JyA+UGhvbmU8L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxpbnB1dCBuYW1lPSdpbnB1dF82JyBpZD0naW5wdXRfMjNfNicgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgdGFiaW5kZXg9JzYnICAgLz48L2Rpdj48L2xpPjxsaSBpZD0nZmllbGRfMjNfNycgY2xhc3M9J2dmaWVsZCBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM183JyA+Q29tcGFueTxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfNycgaWQ9J2lucHV0XzIzXzcnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nNycgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM184JyBjbGFzcz0nZ2ZpZWxkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93JyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMjNfOCcgPkpvYiBUaXRsZTwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+PGlucHV0IG5hbWU9J2lucHV0XzgnIGlkPSdpbnB1dF8yM184JyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyBjbGFzcz0nbWVkaXVtJyAgdGFiaW5kZXg9JzgnICAgLz48L2Rpdj48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9mb290ZXIgdG9wX2xhYmVsJz4gPGlucHV0IHR5cGU9J3N1Ym1pdCcgaWQ9J2dmb3JtX3N1Ym1pdF9idXR0b25fMjMnIGNsYXNzPSdnZm9ybV9idXR0b24gYnV0dG9uJyB2YWx1ZT0nUmVnaXN0ZXIgTm93IScgdGFiaW5kZXg9JzknIG9uY2xpY2s9J2lmKHdpbmRvd1siZ2Zfc3VibWl0dGluZ18yMyJdKXtyZXR1cm4gZmFsc2U7fSAgd2luZG93WyJnZl9zdWJtaXR0aW5nXzIzIl09dHJ1ZTsgICcgLz4gPGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nZ2Zvcm1fYWpheCcgdmFsdWU9J2Zvcm1faWQ9MjMmYW1wO3RpdGxlPSZhbXA7ZGVzY3JpcHRpb249JmFtcDt0YWJpbmRleD0xJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdpc19zdWJtaXRfMjMnIHZhbHVlPScxJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV9zdWJtaXQnIHZhbHVlPScyMycgLz4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2dmb3JtX3VuaXF1ZV9pZCcgdmFsdWU9JycgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nc3RhdGVfMjMnIHZhbHVlPSdXeUpiWFNJc0ltTmhPRFUzWW1Zd01EWXdORGN3TVRsak1tRXlNakEyTkdaaFpEQXdOekExSWwwPScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzIzJyBpZD0nZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzIzJyB2YWx1ZT0nMCcgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fc291cmNlX3BhZ2VfbnVtYmVyXzIzJyBpZD0nZ2Zvcm1fc291cmNlX3BhZ2VfbnVtYmVyXzIzJyB2YWx1ZT0nMScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nZ2Zvcm1fZmllbGRfdmFsdWVzJyB2YWx1ZT0nJyAvPgogICAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxpZnJhbWUgc3R5bGU9J2Rpc3BsYXk6bm9uZTt3aWR0aDowcHg7aGVpZ2h0OjBweDsnIHNyYz0nYWJvdXQ6YmxhbmsnIG5hbWU9J2dmb3JtX2FqYXhfZnJhbWVfMjMnIGlkPSdnZm9ybV9hamF4X2ZyYW1lXzIzJz48L2lmcmFtZT4KICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz5qUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCQpe2dmb3JtSW5pdFNwaW5uZXIoIDIzLCAnaHR0cDovL3d3dy52aXJ0dWFsaXphdGlvbnNvZnR3YXJlLmNvbS93cC1jb250ZW50L3BsdWdpbnMvZ3Jhdml0eWZvcm1zL2ltYWdlcy9zcGlubmVyLmdpZicgKTtqUXVlcnkoJyNnZm9ybV9hamF4X2ZyYW1lXzIzJykubG9hZCggZnVuY3Rpb24oKXt2YXIgY29udGVudHMgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcqJykuaHRtbCgpO3ZhciBpc19wb3N0YmFjayA9IGNvbnRlbnRzLmluZGV4T2YoJ0dGX0FKQVhfUE9TVEJBQ0snKSA+PSAwO2lmKCFpc19wb3N0YmFjayl7cmV0dXJuO312YXIgZm9ybV9jb250ZW50ID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnI2dmb3JtX3dyYXBwZXJfMjMnKTt2YXIgaXNfY29uZmlybWF0aW9uID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnI2dmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyXzIzJykubGVuZ3RoID4gMDt2YXIgaXNfcmVkaXJlY3QgPSBjb250ZW50cy5pbmRleE9mKCdnZm9ybVJlZGlyZWN0KCl7JykgPj0gMDt2YXIgaXNfZm9ybSA9IGZvcm1fY29udGVudC5sZW5ndGggPiAwICYmICEgaXNfcmVkaXJlY3QgJiYgISBpc19jb25maXJtYXRpb247aWYoaXNfZm9ybSl7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8yMycpLmh0bWwoZm9ybV9jb250ZW50Lmh0bWwoKSk7c2V0VGltZW91dCggZnVuY3Rpb24oKSB7IC8qIGRlbGF5IHRoZSBzY3JvbGwgYnkgNTAgbWlsbGlzZWNvbmRzIHRvIGZpeCBhIGJ1ZyBpbiBjaHJvbWUgKi8galF1ZXJ5KGRvY3VtZW50KS5zY3JvbGxUb3AoalF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8yMycpLm9mZnNldCgpLnRvcCk7IH0sIDUwICk7aWYod2luZG93WydnZm9ybUluaXREYXRlcGlja2VyJ10pIHtnZm9ybUluaXREYXRlcGlja2VyKCk7fWlmKHdpbmRvd1snZ2Zvcm1Jbml0UHJpY2VGaWVsZHMnXSkge2dmb3JtSW5pdFByaWNlRmllbGRzKCk7fXZhciBjdXJyZW50X3BhZ2UgPSBqUXVlcnkoJyNnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfMjMnKS52YWwoKTtnZm9ybUluaXRTcGlubmVyKCAyMywgJ2h0dHA6Ly93d3cudmlydHVhbGl6YXRpb25zb2Z0d2FyZS5jb20vd3AtY29udGVudC9wbHVnaW5zL2dyYXZpdHlmb3Jtcy9pbWFnZXMvc3Bpbm5lci5naWYnICk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wYWdlX2xvYWRlZCcsIFsyMywgY3VycmVudF9wYWdlXSk7d2luZG93WydnZl9zdWJtaXR0aW5nXzIzJ10gPSBmYWxzZTt9ZWxzZSBpZighaXNfcmVkaXJlY3Qpe3ZhciBjb25maXJtYXRpb25fY29udGVudCA9IGpRdWVyeSh0aGlzKS5jb250ZW50cygpLmZpbmQoJyNnZm9ybXNfY29uZmlybWF0aW9uX21lc3NhZ2VfMjMnKS5odG1sKCk7aWYoIWNvbmZpcm1hdGlvbl9jb250ZW50KXtjb25maXJtYXRpb25fY29udGVudCA9IGNvbnRlbnRzO31zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8yMycpLnJlcGxhY2VXaXRoKCc8JyArICdkaXYgaWQ9XCdnZm9ybXNfY29uZmlybWF0aW9uX21lc3NhZ2VfMjNcJyBjbGFzcz1cJ2dmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlXzIzIGdmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZVwnJyArICc+JyArIGNvbmZpcm1hdGlvbl9jb250ZW50ICsgJzwnICsgJy9kaXYnICsgJz4nKTtqUXVlcnkoZG9jdW1lbnQpLnNjcm9sbFRvcChqUXVlcnkoJyNnZm9ybXNfY29uZmlybWF0aW9uX21lc3NhZ2VfMjMnKS5vZmZzZXQoKS50b3ApO2pRdWVyeShkb2N1bWVudCkudHJpZ2dlcignZ2Zvcm1fY29uZmlybWF0aW9uX2xvYWRlZCcsIFsyM10pO3dpbmRvd1snZ2Zfc3VibWl0dGluZ18yMyddID0gZmFsc2U7fSwgNTApO31lbHNle2pRdWVyeSgnI2dmb3JtXzIzJykuYXBwZW5kKGNvbnRlbnRzKTtpZih3aW5kb3dbJ2dmb3JtUmVkaXJlY3QnXSkge2dmb3JtUmVkaXJlY3QoKTt9fWpRdWVyeShkb2N1bWVudCkudHJpZ2dlcignZ2Zvcm1fcG9zdF9yZW5kZXInLCBbMjMsIGN1cnJlbnRfcGFnZV0pO30gKTt9ICk7PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPiBpZih0eXBlb2YgZ2ZfZ2xvYmFsID09ICd1bmRlZmluZWQnKSB2YXIgZ2ZfZ2xvYmFsID0geyJnZl9jdXJyZW5jeV9jb25maWciOnsibmFtZSI6IlUuUy4gRG9sbGFyIiwic3ltYm9sX2xlZnQiOiIkIiwic3ltYm9sX3JpZ2h0IjoiIiwic3ltYm9sX3BhZGRpbmciOiIiLCJ0aG91c2FuZF9zZXBhcmF0b3IiOiIsIiwiZGVjaW1hbF9zZXBhcmF0b3IiOiIuIiwiZGVjaW1hbHMiOjJ9LCJiYXNlX3VybCI6Imh0dHA6XC9cL3d3dy52aXJ0dWFsaXphdGlvbnNvZnR3YXJlLmNvbVwvd3AtY29udGVudFwvcGx1Z2luc1wvZ3Jhdml0eWZvcm1zIiwibnVtYmVyX2Zvcm1hdHMiOltdLCJzcGlubmVyVXJsIjoiaHR0cDpcL1wvd3d3LnZpcnR1YWxpemF0aW9uc29mdHdhcmUuY29tXC93cC1jb250ZW50XC9wbHVnaW5zXC9ncmF2aXR5Zm9ybXNcL2ltYWdlc1wvc3Bpbm5lci5naWYifTtqUXVlcnkoZG9jdW1lbnQpLmJpbmQoJ2dmb3JtX3Bvc3RfcmVuZGVyJywgZnVuY3Rpb24oZXZlbnQsIGZvcm1JZCwgY3VycmVudFBhZ2Upe2lmKGZvcm1JZCA9PSAyMykge2lmKHdpbmRvd1snalF1ZXJ5J10pe2lmKCF3aW5kb3dbJ2dmX2Zvcm1fY29uZGl0aW9uYWxfbG9naWMnXSl3aW5kb3dbJ2dmX2Zvcm1fY29uZGl0aW9uYWxfbG9naWMnXSA9IG5ldyBBcnJheSgpO3dpbmRvd1snZ2ZfZm9ybV9jb25kaXRpb25hbF9sb2dpYyddWzIzXSA9IHsnbG9naWMnIDogezQ6IHsiZmllbGQiOnsiYWN0aW9uVHlwZSI6ImhpZGUiLCJsb2dpY1R5cGUiOiJhbGwiLCJydWxlcyI6W3siZmllbGRJZCI6IjUiLCJvcGVyYXRvciI6Imlzbm90IiwidmFsdWUiOiJVbml0ZWQgU3RhdGVzIn1dfSwibmV4dEJ1dHRvbiI6bnVsbCwic2VjdGlvbiI6bnVsbH0gfSwgJ2RlcGVuZGVudHMnIDogezQ6IFs0XSB9LCAnYW5pbWF0aW9uJyA6IDAgLCAnZGVmYXVsdHMnIDogeyI1IjoiVW5pdGVkIFN0YXRlcyJ9IH07IGlmKCF3aW5kb3dbJ2dmX251bWJlcl9mb3JtYXQnXSl3aW5kb3dbJ2dmX251bWJlcl9mb3JtYXQnXSA9ICdkZWNpbWFsX2RvdCc7alF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpe2dmX2FwcGx5X3J1bGVzKDIzLCBbNF0sIHRydWUpO2pRdWVyeSgnI2dmb3JtX3dyYXBwZXJfMjMnKS5zaG93KCk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wb3N0X2NvbmRpdGlvbmFsX2xvZ2ljJywgWzIzLCBudWxsLCB0cnVlXSk7fSApO30gZ2Zvcm1Jbml0Q2hvc2VuRmllbGRzKCcjaW5wdXRfMjNfNSwjaW5wdXRfMjNfNCcsJ05vIHJlc3VsdHMgbWF0Y2hlZCcpO30gfSApO2pRdWVyeShkb2N1bWVudCkuYmluZCgnZ2Zvcm1fcG9zdF9jb25kaXRpb25hbF9sb2dpYycsIGZ1bmN0aW9uKGV2ZW50LCBmb3JtSWQsIGZpZWxkcywgaXNJbml0KXtnZm9ybUluaXRDaG9zZW5GaWVsZHMoJyNpbnB1dF8yM181LCNpbnB1dF8yM180JywnTm8gcmVzdWx0cyBtYXRjaGVkJyk7fSApOzwvc2NyaXB0PjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4galF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpe2pRdWVyeShkb2N1bWVudCkudHJpZ2dlcignZ2Zvcm1fcG9zdF9yZW5kZXInLCBbMjMsIDFdKSB9ICk7IDwvc2NyaXB0Pg==
Can't Make the time?
Can't Make the Webinar Time?

Request the Recording!
If you haven’t had these virtual machine problems yet – you will! These VM problems and their solutions have been selected based on the real-world feedback from thousands of VMware Admins and you’ll have two vExperts on the webinar to offer insight and remedies.
arrow-right-green
CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZl9icm93c2VyX3Vua25vd24gZ2Zvcm1fd3JhcHBlcicgaWQ9J2dmb3JtX3dyYXBwZXJfMjMnIHN0eWxlPSdkaXNwbGF5Om5vbmUnPjxhIGlkPSdnZl8yMycgbmFtZT0nZ2ZfMjMnIGNsYXNzPSdnZm9ybV9hbmNob3InID48L2E+PGZvcm0gbWV0aG9kPSdwb3N0JyBlbmN0eXBlPSdtdWx0aXBhcnQvZm9ybS1kYXRhJyB0YXJnZXQ9J2dmb3JtX2FqYXhfZnJhbWVfMjMnIGlkPSdnZm9ybV8yMycgIGFjdGlvbj0nL2ZpbmRpbmctZWxpbWluYXRpbmctZGFuZ2Vyb3VzLXZzcGhlcmUtc25hcHNob3RzLXNuYXB3YXRjaGVyLWZyZWUvI2dmXzIzJz4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fYm9keSc+PHVsIGlkPSdnZm9ybV9maWVsZHNfMjMnIGNsYXNzPSdnZm9ybV9maWVsZHMgdG9wX2xhYmVsIGZvcm1fc3VibGFiZWxfYmVsb3cgZGVzY3JpcHRpb25fYmVsb3cnPjxsaSBpZD0nZmllbGRfMjNfMScgY2xhc3M9J2dmaWVsZCBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM18xJyA+Rmlyc3QgTmFtZTxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfMScgaWQ9J2lucHV0XzIzXzEnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nMScgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM18yJyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzInID5MYXN0IE5hbWU8c3BhbiBjbGFzcz0nZ2ZpZWxkX3JlcXVpcmVkJz4qPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+PGlucHV0IG5hbWU9J2lucHV0XzInIGlkPSdpbnB1dF8yM18yJyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyBjbGFzcz0nbWVkaXVtJyAgdGFiaW5kZXg9JzInICAgLz48L2Rpdj48L2xpPjxsaSBpZD0nZmllbGRfMjNfMycgY2xhc3M9J2dmaWVsZCBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM18zJyA+RW1haWw8c3BhbiBjbGFzcz0nZ2ZpZWxkX3JlcXVpcmVkJz4qPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgbmFtZT0naW5wdXRfMycgaWQ9J2lucHV0XzIzXzMnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nIHRhYmluZGV4PSczJyAgIC8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM181JyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzUnID5Db3VudHJ5PHNwYW4gY2xhc3M9J2dmaWVsZF9yZXF1aXJlZCc+Kjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxzZWxlY3QgbmFtZT0naW5wdXRfNScgaWQ9J2lucHV0XzIzXzUnIG9uY2hhbmdlPSdnZl9hcHBseV9ydWxlcygyMyxbNF0pOycgY2xhc3M9J21lZGl1bSBnZmllbGRfc2VsZWN0JyB0YWJpbmRleD0nNCcgPjxvcHRpb24gdmFsdWU9J1VuaXRlZCBTdGF0ZXMnIHNlbGVjdGVkPSdzZWxlY3RlZCc+VW5pdGVkIFN0YXRlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NhbmFkYScgPkNhbmFkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VuaXRlZCBLaW5nZG9tJyA+VW5pdGVkIEtpbmdkb208L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBdXN0cmFsaWEnID5BdXN0cmFsaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBZmdoYW5pc3RhbicgPkFmZ2hhbmlzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQWxiYW5pYScgPkFsYmFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbGdlcmlhJyA+QWxnZXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FtZXJpY2FuIFNhbW9hJyA+QW1lcmljYW4gU2Ftb2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbmRvcnJhJyA+QW5kb3JyYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FuZ29sYScgPkFuZ29sYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FudGlndWEgYW5kIEJhcmJ1ZGEnID5BbnRpZ3VhIGFuZCBCYXJidWRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJnZW50aW5hJyA+QXJnZW50aW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJtZW5pYScgPkFybWVuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBdXN0cmlhJyA+QXVzdHJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0F6ZXJiYWlqYW4nID5BemVyYmFpamFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmFoYW1hcycgPkJhaGFtYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCYWhyYWluJyA+QmFocmFpbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JhbmdsYWRlc2gnID5CYW5nbGFkZXNoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmFyYmFkb3MnID5CYXJiYWRvczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JlbGFydXMnID5CZWxhcnVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmVsZ2l1bScgPkJlbGdpdW08L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZWxpemUnID5CZWxpemU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZW5pbicgPkJlbmluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmVybXVkYScgPkJlcm11ZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCaHV0YW4nID5CaHV0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCb2xpdmlhJyA+Qm9saXZpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Jvc25pYSBhbmQgSGVyemVnb3ZpbmEnID5Cb3NuaWEgYW5kIEhlcnplZ292aW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQm90c3dhbmEnID5Cb3Rzd2FuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JyYXppbCcgPkJyYXppbDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JydW5laScgPkJydW5laTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0J1bGdhcmlhJyA+QnVsZ2FyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCdXJraW5hIEZhc28nID5CdXJraW5hIEZhc288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCdXJ1bmRpJyA+QnVydW5kaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NhbWJvZGlhJyA+Q2FtYm9kaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYW1lcm9vbicgPkNhbWVyb29uPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FwZSBWZXJkZScgPkNhcGUgVmVyZGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYXltYW4gSXNsYW5kcycgPkNheW1hbiBJc2xhbmRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2VudHJhbCBBZnJpY2FuIFJlcHVibGljJyA+Q2VudHJhbCBBZnJpY2FuIFJlcHVibGljPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2hhZCcgPkNoYWQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDaGlsZScgPkNoaWxlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2hpbmEnID5DaGluYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbG9tYmlhJyA+Q29sb21iaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb21vcm9zJyA+Q29tb3Jvczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbmdvLCBEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZScgPkNvbmdvLCBEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbmdvLCBSZXB1YmxpYyBvZiB0aGUnID5Db25nbywgUmVwdWJsaWMgb2YgdGhlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29zdGEgUmljYScgPkNvc3RhIFJpY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDJm9jaXJjO3RlIGQmIzAzOTtJdm9pcmUnID5DJm9jaXJjO3RlIGQmIzAzOTtJdm9pcmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDcm9hdGlhJyA+Q3JvYXRpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0N1YmEnID5DdWJhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3lwcnVzJyA+Q3lwcnVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3plY2ggUmVwdWJsaWMnID5DemVjaCBSZXB1YmxpYzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Rlbm1hcmsnID5EZW5tYXJrPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRGppYm91dGknID5Eamlib3V0aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0RvbWluaWNhJyA+RG9taW5pY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdEb21pbmljYW4gUmVwdWJsaWMnID5Eb21pbmljYW4gUmVwdWJsaWM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFYXN0IFRpbW9yJyA+RWFzdCBUaW1vcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VjdWFkb3InID5FY3VhZG9yPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRWd5cHQnID5FZ3lwdDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VsIFNhbHZhZG9yJyA+RWwgU2FsdmFkb3I8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFcXVhdG9yaWFsIEd1aW5lYScgPkVxdWF0b3JpYWwgR3VpbmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRXJpdHJlYScgPkVyaXRyZWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFc3RvbmlhJyA+RXN0b25pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0V0aGlvcGlhJyA+RXRoaW9waWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdGaWppJyA+RmlqaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ZpbmxhbmQnID5GaW5sYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRnJhbmNlJyA+RnJhbmNlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2Fib24nID5HYWJvbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dhbWJpYScgPkdhbWJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dlb3JnaWEnID5HZW9yZ2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2VybWFueScgPkdlcm1hbnk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHaGFuYScgPkdoYW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3JlZWNlJyA+R3JlZWNlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3JlZW5sYW5kJyA+R3JlZW5sYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3JlbmFkYScgPkdyZW5hZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHdWFtJyA+R3VhbTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0d1YXRlbWFsYScgPkd1YXRlbWFsYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0d1aW5lYScgPkd1aW5lYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0d1aW5lYS1CaXNzYXUnID5HdWluZWEtQmlzc2F1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3V5YW5hJyA+R3V5YW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSGFpdGknID5IYWl0aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0hvbmR1cmFzJyA+SG9uZHVyYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdIb25nIEtvbmcnID5Ib25nIEtvbmc8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdIdW5nYXJ5JyA+SHVuZ2FyeTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ljZWxhbmQnID5JY2VsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSW5kaWEnID5JbmRpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0luZG9uZXNpYScgPkluZG9uZXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lyYW4nID5JcmFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXJhcScgPklyYXE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJcmVsYW5kJyA+SXJlbGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lzcmFlbCcgPklzcmFlbDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0l0YWx5JyA+SXRhbHk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdKYW1haWNhJyA+SmFtYWljYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0phcGFuJyA+SmFwYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdKb3JkYW4nID5Kb3JkYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLYXpha2hzdGFuJyA+S2F6YWtoc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0tlbnlhJyA+S2VueWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLaXJpYmF0aScgPktpcmliYXRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTm9ydGggS29yZWEnID5Ob3J0aCBLb3JlYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvdXRoIEtvcmVhJyA+U291dGggS29yZWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLdXdhaXQnID5LdXdhaXQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLeXJneXpzdGFuJyA+S3lyZ3l6c3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xhb3MnID5MYW9zPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGF0dmlhJyA+TGF0dmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGViYW5vbicgPkxlYmFub248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMZXNvdGhvJyA+TGVzb3Robzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xpYmVyaWEnID5MaWJlcmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGlieWEnID5MaWJ5YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xpZWNodGVuc3RlaW4nID5MaWVjaHRlbnN0ZWluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGl0aHVhbmlhJyA+TGl0aHVhbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTHV4ZW1ib3VyZycgPkx1eGVtYm91cmc8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWNlZG9uaWEnID5NYWNlZG9uaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWRhZ2FzY2FyJyA+TWFkYWdhc2Nhcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbGF3aScgPk1hbGF3aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbGF5c2lhJyA+TWFsYXlzaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWxkaXZlcycgPk1hbGRpdmVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFsaScgPk1hbGk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWx0YScgPk1hbHRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFyc2hhbGwgSXNsYW5kcycgPk1hcnNoYWxsIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYXVyaXRhbmlhJyA+TWF1cml0YW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hdXJpdGl1cycgPk1hdXJpdGl1czwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01leGljbycgPk1leGljbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01pY3JvbmVzaWEnID5NaWNyb25lc2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW9sZG92YScgPk1vbGRvdmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb25hY28nID5Nb25hY288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb25nb2xpYScgPk1vbmdvbGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW9udGVuZWdybycgPk1vbnRlbmVncm88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb3JvY2NvJyA+TW9yb2Njbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vemFtYmlxdWUnID5Nb3phbWJpcXVlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTXlhbm1hcicgPk15YW5tYXI8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOYW1pYmlhJyA+TmFtaWJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05hdXJ1JyA+TmF1cnU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXBhbCcgPk5lcGFsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV0aGVybGFuZHMnID5OZXRoZXJsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05ldyBaZWFsYW5kJyA+TmV3IFplYWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaWNhcmFndWEnID5OaWNhcmFndWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaWdlcicgPk5pZ2VyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmlnZXJpYScgPk5pZ2VyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J3YXknID5Ob3J3YXk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J0aGVybiBNYXJpYW5hIElzbGFuZHMnID5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdPbWFuJyA+T21hbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Bha2lzdGFuJyA+UGFraXN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYWxhdScgPlBhbGF1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFsZXN0aW5lJyA+UGFsZXN0aW5lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFuYW1hJyA+UGFuYW1hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFwdWEgTmV3IEd1aW5lYScgPlBhcHVhIE5ldyBHdWluZWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYXJhZ3VheScgPlBhcmFndWF5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGVydScgPlBlcnU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQaGlsaXBwaW5lcycgPlBoaWxpcHBpbmVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUG9sYW5kJyA+UG9sYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUG9ydHVnYWwnID5Qb3J0dWdhbDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1B1ZXJ0byBSaWNvJyA+UHVlcnRvIFJpY288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdRYXRhcicgPlFhdGFyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUm9tYW5pYScgPlJvbWFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSdXNzaWEnID5SdXNzaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSd2FuZGEnID5Sd2FuZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBLaXR0cyBhbmQgTmV2aXMnID5TYWludCBLaXR0cyBhbmQgTmV2aXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBMdWNpYScgPlNhaW50IEx1Y2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXMnID5TYWludCBWaW5jZW50IGFuZCB0aGUgR3JlbmFkaW5lczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhbW9hJyA+U2Ftb2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYW4gTWFyaW5vJyA+U2FuIE1hcmlubzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhbyBUb21lIGFuZCBQcmluY2lwZScgPlNhbyBUb21lIGFuZCBQcmluY2lwZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhdWRpIEFyYWJpYScgPlNhdWRpIEFyYWJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NlbmVnYWwnID5TZW5lZ2FsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2VyYmlhIGFuZCBNb250ZW5lZ3JvJyA+U2VyYmlhIGFuZCBNb250ZW5lZ3JvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2V5Y2hlbGxlcycgPlNleWNoZWxsZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTaWVycmEgTGVvbmUnID5TaWVycmEgTGVvbmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTaW5nYXBvcmUnID5TaW5nYXBvcmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTbG92YWtpYScgPlNsb3Zha2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2xvdmVuaWEnID5TbG92ZW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvbG9tb24gSXNsYW5kcycgPlNvbG9tb24gSXNsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvbWFsaWEnID5Tb21hbGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU291dGggQWZyaWNhJyA+U291dGggQWZyaWNhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3BhaW4nID5TcGFpbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NyaSBMYW5rYScgPlNyaSBMYW5rYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N1ZGFuJyA+U3VkYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTdWRhbiwgU291dGgnID5TdWRhbiwgU291dGg8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTdXJpbmFtZScgPlN1cmluYW1lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3dhemlsYW5kJyA+U3dhemlsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3dlZGVuJyA+U3dlZGVuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3dpdHplcmxhbmQnID5Td2l0emVybGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N5cmlhJyA+U3lyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUYWl3YW4nID5UYWl3YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUYWppa2lzdGFuJyA+VGFqaWtpc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RhbnphbmlhJyA+VGFuemFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUaGFpbGFuZCcgPlRoYWlsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVG9nbycgPlRvZ288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUb25nYScgPlRvbmdhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHJpbmlkYWQgYW5kIFRvYmFnbycgPlRyaW5pZGFkIGFuZCBUb2JhZ288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUdW5pc2lhJyA+VHVuaXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1cmtleScgPlR1cmtleTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1cmttZW5pc3RhbicgPlR1cmttZW5pc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1dmFsdScgPlR1dmFsdTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VnYW5kYScgPlVnYW5kYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VrcmFpbmUnID5Va3JhaW5lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVW5pdGVkIEFyYWIgRW1pcmF0ZXMnID5Vbml0ZWQgQXJhYiBFbWlyYXRlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VydWd1YXknID5VcnVndWF5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVXpiZWtpc3RhbicgPlV6YmVraXN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWYW51YXR1JyA+VmFudWF0dTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZhdGljYW4gQ2l0eScgPlZhdGljYW4gQ2l0eTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZlbmV6dWVsYScgPlZlbmV6dWVsYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZpZXRuYW0nID5WaWV0bmFtPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmlyZ2luIElzbGFuZHMsIEJyaXRpc2gnID5WaXJnaW4gSXNsYW5kcywgQnJpdGlzaDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZpcmdpbiBJc2xhbmRzLCBVLlMuJyA+VmlyZ2luIElzbGFuZHMsIFUuUy48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdZZW1lbicgPlllbWVuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nWmFtYmlhJyA+WmFtYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nWmltYmFid2UnID5aaW1iYWJ3ZTwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM180JyBjbGFzcz0nZ2ZpZWxkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93JyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMjNfNCcgPlN0YXRlPC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48c2VsZWN0IG5hbWU9J2lucHV0XzQnIGlkPSdpbnB1dF8yM180JyAgY2xhc3M9J21lZGl1bSBnZmllbGRfc2VsZWN0JyB0YWJpbmRleD0nNScgPjxvcHRpb24gdmFsdWU9J0FsYWJhbWEnID5BbGFiYW1hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQWxhc2thJyA+QWxhc2thPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJpem9uYScgPkFyaXpvbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcmthbnNhcycgPkFya2Fuc2FzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FsaWZvcm5pYScgPkNhbGlmb3JuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb2xvcmFkbycgPkNvbG9yYWRvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29ubmVjdGljdXQnID5Db25uZWN0aWN1dDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0RlbGF3YXJlJyA+RGVsYXdhcmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdEaXN0cmljdCBvZiBDb2x1bWJpYScgPkRpc3RyaWN0IG9mIENvbHVtYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRmxvcmlkYScgPkZsb3JpZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHZW9yZ2lhJyA+R2VvcmdpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0hhd2FpaScgPkhhd2FpaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lkYWhvJyA+SWRhaG88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJbGxpbm9pcycgPklsbGlub2lzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSW5kaWFuYScgPkluZGlhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJb3dhJyA+SW93YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0thbnNhcycgPkthbnNhczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0tlbnR1Y2t5JyA+S2VudHVja3k8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMb3Vpc2lhbmEnID5Mb3Vpc2lhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWluZScgPk1haW5lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFyeWxhbmQnID5NYXJ5bGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hc3NhY2h1c2V0dHMnID5NYXNzYWNodXNldHRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWljaGlnYW4nID5NaWNoaWdhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01pbm5lc290YScgPk1pbm5lc290YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01pc3Npc3NpcHBpJyA+TWlzc2lzc2lwcGk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNaXNzb3VyaScgPk1pc3NvdXJpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW9udGFuYScgPk1vbnRhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZWJyYXNrYScgPk5lYnJhc2thPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV2YWRhJyA+TmV2YWRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV3IEhhbXBzaGlyZScgPk5ldyBIYW1wc2hpcmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXcgSmVyc2V5JyA+TmV3IEplcnNleTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05ldyBNZXhpY28nID5OZXcgTWV4aWNvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV3IFlvcmsnID5OZXcgWW9yazwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcnRoIENhcm9saW5hJyA+Tm9ydGggQ2Fyb2xpbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J0aCBEYWtvdGEnID5Ob3J0aCBEYWtvdGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdPaGlvJyA+T2hpbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J09rbGFob21hJyA+T2tsYWhvbWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdPcmVnb24nID5PcmVnb248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQZW5uc3lsdmFuaWEnID5QZW5uc3lsdmFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSaG9kZSBJc2xhbmQnID5SaG9kZSBJc2xhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb3V0aCBDYXJvbGluYScgPlNvdXRoIENhcm9saW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU291dGggRGFrb3RhJyA+U291dGggRGFrb3RhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVGVubmVzc2VlJyA+VGVubmVzc2VlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVGV4YXMnID5UZXhhczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1V0YWgnID5VdGFoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmVybW9udCcgPlZlcm1vbnQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWaXJnaW5pYScgPlZpcmdpbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nV2FzaGluZ3RvbicgPldhc2hpbmd0b248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdXZXN0IFZpcmdpbmlhJyA+V2VzdCBWaXJnaW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1dpc2NvbnNpbicgPldpc2NvbnNpbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1d5b21pbmcnID5XeW9taW5nPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJtZWQgRm9yY2VzIEFtZXJpY2FzJyA+QXJtZWQgRm9yY2VzIEFtZXJpY2FzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJtZWQgRm9yY2VzIEV1cm9wZScgPkFybWVkIEZvcmNlcyBFdXJvcGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcm1lZCBGb3JjZXMgUGFjaWZpYycgPkFybWVkIEZvcmNlcyBQYWNpZmljPC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzYnIGNsYXNzPSdnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM182JyA+UGhvbmU8L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxpbnB1dCBuYW1lPSdpbnB1dF82JyBpZD0naW5wdXRfMjNfNicgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgdGFiaW5kZXg9JzYnICAgLz48L2Rpdj48L2xpPjxsaSBpZD0nZmllbGRfMjNfNycgY2xhc3M9J2dmaWVsZCBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM183JyA+Q29tcGFueTxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfNycgaWQ9J2lucHV0XzIzXzcnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nNycgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM184JyBjbGFzcz0nZ2ZpZWxkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93JyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMjNfOCcgPkpvYiBUaXRsZTwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+PGlucHV0IG5hbWU9J2lucHV0XzgnIGlkPSdpbnB1dF8yM184JyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyBjbGFzcz0nbWVkaXVtJyAgdGFiaW5kZXg9JzgnICAgLz48L2Rpdj48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9mb290ZXIgdG9wX2xhYmVsJz4gPGlucHV0IHR5cGU9J3N1Ym1pdCcgaWQ9J2dmb3JtX3N1Ym1pdF9idXR0b25fMjMnIGNsYXNzPSdnZm9ybV9idXR0b24gYnV0dG9uJyB2YWx1ZT0nUmVnaXN0ZXIgTm93IScgdGFiaW5kZXg9JzknIG9uY2xpY2s9J2lmKHdpbmRvd1siZ2Zfc3VibWl0dGluZ18yMyJdKXtyZXR1cm4gZmFsc2U7fSAgd2luZG93WyJnZl9zdWJtaXR0aW5nXzIzIl09dHJ1ZTsgICcgLz4gPGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nZ2Zvcm1fYWpheCcgdmFsdWU9J2Zvcm1faWQ9MjMmYW1wO3RpdGxlPSZhbXA7ZGVzY3JpcHRpb249JmFtcDt0YWJpbmRleD0xJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdpc19zdWJtaXRfMjMnIHZhbHVlPScxJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV9zdWJtaXQnIHZhbHVlPScyMycgLz4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2dmb3JtX3VuaXF1ZV9pZCcgdmFsdWU9JycgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nc3RhdGVfMjMnIHZhbHVlPSdXeUpiWFNJc0ltTmhPRFUzWW1Zd01EWXdORGN3TVRsak1tRXlNakEyTkdaaFpEQXdOekExSWwwPScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzIzJyBpZD0nZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzIzJyB2YWx1ZT0nMCcgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fc291cmNlX3BhZ2VfbnVtYmVyXzIzJyBpZD0nZ2Zvcm1fc291cmNlX3BhZ2VfbnVtYmVyXzIzJyB2YWx1ZT0nMScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nZ2Zvcm1fZmllbGRfdmFsdWVzJyB2YWx1ZT0nJyAvPgogICAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxpZnJhbWUgc3R5bGU9J2Rpc3BsYXk6bm9uZTt3aWR0aDowcHg7aGVpZ2h0OjBweDsnIHNyYz0nYWJvdXQ6YmxhbmsnIG5hbWU9J2dmb3JtX2FqYXhfZnJhbWVfMjMnIGlkPSdnZm9ybV9hamF4X2ZyYW1lXzIzJz48L2lmcmFtZT4KICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz5qUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCQpe2dmb3JtSW5pdFNwaW5uZXIoIDIzLCAnaHR0cDovL3d3dy52aXJ0dWFsaXphdGlvbnNvZnR3YXJlLmNvbS93cC1jb250ZW50L3BsdWdpbnMvZ3Jhdml0eWZvcm1zL2ltYWdlcy9zcGlubmVyLmdpZicgKTtqUXVlcnkoJyNnZm9ybV9hamF4X2ZyYW1lXzIzJykubG9hZCggZnVuY3Rpb24oKXt2YXIgY29udGVudHMgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcqJykuaHRtbCgpO3ZhciBpc19wb3N0YmFjayA9IGNvbnRlbnRzLmluZGV4T2YoJ0dGX0FKQVhfUE9TVEJBQ0snKSA+PSAwO2lmKCFpc19wb3N0YmFjayl7cmV0dXJuO312YXIgZm9ybV9jb250ZW50ID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnI2dmb3JtX3dyYXBwZXJfMjMnKTt2YXIgaXNfY29uZmlybWF0aW9uID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnI2dmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyXzIzJykubGVuZ3RoID4gMDt2YXIgaXNfcmVkaXJlY3QgPSBjb250ZW50cy5pbmRleE9mKCdnZm9ybVJlZGlyZWN0KCl7JykgPj0gMDt2YXIgaXNfZm9ybSA9IGZvcm1fY29udGVudC5sZW5ndGggPiAwICYmICEgaXNfcmVkaXJlY3QgJiYgISBpc19jb25maXJtYXRpb247aWYoaXNfZm9ybSl7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8yMycpLmh0bWwoZm9ybV9jb250ZW50Lmh0bWwoKSk7c2V0VGltZW91dCggZnVuY3Rpb24oKSB7IC8qIGRlbGF5IHRoZSBzY3JvbGwgYnkgNTAgbWlsbGlzZWNvbmRzIHRvIGZpeCBhIGJ1ZyBpbiBjaHJvbWUgKi8galF1ZXJ5KGRvY3VtZW50KS5zY3JvbGxUb3AoalF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8yMycpLm9mZnNldCgpLnRvcCk7IH0sIDUwICk7aWYod2luZG93WydnZm9ybUluaXREYXRlcGlja2VyJ10pIHtnZm9ybUluaXREYXRlcGlja2VyKCk7fWlmKHdpbmRvd1snZ2Zvcm1Jbml0UHJpY2VGaWVsZHMnXSkge2dmb3JtSW5pdFByaWNlRmllbGRzKCk7fXZhciBjdXJyZW50X3BhZ2UgPSBqUXVlcnkoJyNnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfMjMnKS52YWwoKTtnZm9ybUluaXRTcGlubmVyKCAyMywgJ2h0dHA6Ly93d3cudmlydHVhbGl6YXRpb25zb2Z0d2FyZS5jb20vd3AtY29udGVudC9wbHVnaW5zL2dyYXZpdHlmb3Jtcy9pbWFnZXMvc3Bpbm5lci5naWYnICk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wYWdlX2xvYWRlZCcsIFsyMywgY3VycmVudF9wYWdlXSk7d2luZG93WydnZl9zdWJtaXR0aW5nXzIzJ10gPSBmYWxzZTt9ZWxzZSBpZighaXNfcmVkaXJlY3Qpe3ZhciBjb25maXJtYXRpb25fY29udGVudCA9IGpRdWVyeSh0aGlzKS5jb250ZW50cygpLmZpbmQoJyNnZm9ybXNfY29uZmlybWF0aW9uX21lc3NhZ2VfMjMnKS5odG1sKCk7aWYoIWNvbmZpcm1hdGlvbl9jb250ZW50KXtjb25maXJtYXRpb25fY29udGVudCA9IGNvbnRlbnRzO31zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8yMycpLnJlcGxhY2VXaXRoKCc8JyArICdkaXYgaWQ9XCdnZm9ybXNfY29uZmlybWF0aW9uX21lc3NhZ2VfMjNcJyBjbGFzcz1cJ2dmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlXzIzIGdmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZVwnJyArICc+JyArIGNvbmZpcm1hdGlvbl9jb250ZW50ICsgJzwnICsgJy9kaXYnICsgJz4nKTtqUXVlcnkoZG9jdW1lbnQpLnNjcm9sbFRvcChqUXVlcnkoJyNnZm9ybXNfY29uZmlybWF0aW9uX21lc3NhZ2VfMjMnKS5vZmZzZXQoKS50b3ApO2pRdWVyeShkb2N1bWVudCkudHJpZ2dlcignZ2Zvcm1fY29uZmlybWF0aW9uX2xvYWRlZCcsIFsyM10pO3dpbmRvd1snZ2Zfc3VibWl0dGluZ18yMyddID0gZmFsc2U7fSwgNTApO31lbHNle2pRdWVyeSgnI2dmb3JtXzIzJykuYXBwZW5kKGNvbnRlbnRzKTtpZih3aW5kb3dbJ2dmb3JtUmVkaXJlY3QnXSkge2dmb3JtUmVkaXJlY3QoKTt9fWpRdWVyeShkb2N1bWVudCkudHJpZ2dlcignZ2Zvcm1fcG9zdF9yZW5kZXInLCBbMjMsIGN1cnJlbnRfcGFnZV0pO30gKTt9ICk7PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPiBpZih0eXBlb2YgZ2ZfZ2xvYmFsID09ICd1bmRlZmluZWQnKSB2YXIgZ2ZfZ2xvYmFsID0geyJnZl9jdXJyZW5jeV9jb25maWciOnsibmFtZSI6IlUuUy4gRG9sbGFyIiwic3ltYm9sX2xlZnQiOiIkIiwic3ltYm9sX3JpZ2h0IjoiIiwic3ltYm9sX3BhZGRpbmciOiIiLCJ0aG91c2FuZF9zZXBhcmF0b3IiOiIsIiwiZGVjaW1hbF9zZXBhcmF0b3IiOiIuIiwiZGVjaW1hbHMiOjJ9LCJiYXNlX3VybCI6Imh0dHA6XC9cL3d3dy52aXJ0dWFsaXphdGlvbnNvZnR3YXJlLmNvbVwvd3AtY29udGVudFwvcGx1Z2luc1wvZ3Jhdml0eWZvcm1zIiwibnVtYmVyX2Zvcm1hdHMiOltdLCJzcGlubmVyVXJsIjoiaHR0cDpcL1wvd3d3LnZpcnR1YWxpemF0aW9uc29mdHdhcmUuY29tXC93cC1jb250ZW50XC9wbHVnaW5zXC9ncmF2aXR5Zm9ybXNcL2ltYWdlc1wvc3Bpbm5lci5naWYifTtqUXVlcnkoZG9jdW1lbnQpLmJpbmQoJ2dmb3JtX3Bvc3RfcmVuZGVyJywgZnVuY3Rpb24oZXZlbnQsIGZvcm1JZCwgY3VycmVudFBhZ2Upe2lmKGZvcm1JZCA9PSAyMykge2lmKHdpbmRvd1snalF1ZXJ5J10pe2lmKCF3aW5kb3dbJ2dmX2Zvcm1fY29uZGl0aW9uYWxfbG9naWMnXSl3aW5kb3dbJ2dmX2Zvcm1fY29uZGl0aW9uYWxfbG9naWMnXSA9IG5ldyBBcnJheSgpO3dpbmRvd1snZ2ZfZm9ybV9jb25kaXRpb25hbF9sb2dpYyddWzIzXSA9IHsnbG9naWMnIDogezQ6IHsiZmllbGQiOnsiYWN0aW9uVHlwZSI6ImhpZGUiLCJsb2dpY1R5cGUiOiJhbGwiLCJydWxlcyI6W3siZmllbGRJZCI6IjUiLCJvcGVyYXRvciI6Imlzbm90IiwidmFsdWUiOiJVbml0ZWQgU3RhdGVzIn1dfSwibmV4dEJ1dHRvbiI6bnVsbCwic2VjdGlvbiI6bnVsbH0gfSwgJ2RlcGVuZGVudHMnIDogezQ6IFs0XSB9LCAnYW5pbWF0aW9uJyA6IDAgLCAnZGVmYXVsdHMnIDogeyI1IjoiVW5pdGVkIFN0YXRlcyJ9IH07IGlmKCF3aW5kb3dbJ2dmX251bWJlcl9mb3JtYXQnXSl3aW5kb3dbJ2dmX251bWJlcl9mb3JtYXQnXSA9ICdkZWNpbWFsX2RvdCc7alF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpe2dmX2FwcGx5X3J1bGVzKDIzLCBbNF0sIHRydWUpO2pRdWVyeSgnI2dmb3JtX3dyYXBwZXJfMjMnKS5zaG93KCk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wb3N0X2NvbmRpdGlvbmFsX2xvZ2ljJywgWzIzLCBudWxsLCB0cnVlXSk7fSApO30gZ2Zvcm1Jbml0Q2hvc2VuRmllbGRzKCcjaW5wdXRfMjNfNSwjaW5wdXRfMjNfNCcsJ05vIHJlc3VsdHMgbWF0Y2hlZCcpO30gfSApO2pRdWVyeShkb2N1bWVudCkuYmluZCgnZ2Zvcm1fcG9zdF9jb25kaXRpb25hbF9sb2dpYycsIGZ1bmN0aW9uKGV2ZW50LCBmb3JtSWQsIGZpZWxkcywgaXNJbml0KXtnZm9ybUluaXRDaG9zZW5GaWVsZHMoJyNpbnB1dF8yM181LCNpbnB1dF8yM180JywnTm8gcmVzdWx0cyBtYXRjaGVkJyk7fSApOzwvc2NyaXB0PjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4galF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpe2pRdWVyeShkb2N1bWVudCkudHJpZ2dlcignZ2Zvcm1fcG9zdF9yZW5kZXInLCBbMjMsIDFdKSB9ICk7IDwvc2NyaXB0Pg==