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

Top

No Comments

vSphere Metrics Watch: Understanding Key Memory Metrics

vSphere Metrics Watch: Understanding Key Memory Metrics
Scott D. Lowe, vExpert, MVP Virtual Machine, MCSE
  • On April 23, 2013

Memory is where programs run and is often one of the first resources to be exhausted in a virtual environment.  In fact, in just about every environment that I see, I see RAM as the most used resource and always urge clients to cram as much RAM as humanly possible into their virtual hosts.  Because it’s such a vital resource, monitoring RAM is an essential activity for any virtualization administrator.

There are a couple of different places at which memory needs to be monitored.  The host itself is critical because it’s responsible for making sure that there is enough RAM to serve all of its running virtual machines.  However, it’s also important to watch RAM inside virtual machines to make sure that you’ve assigned enough resources to support those workloads.

There are also additional locations at which memory can be watched.  In addition to monitoring memory metrics at the host level and at the virtual machine level, some metrics can be views at the resource pool level and at the cluster level.

Here, I’ll describe two memory metrics that you should watch.

Memory Swapping on Host or Virtual Machines

In many virtual environments, RAM is the first resource to be exhausted.  Memory swapping – the activity that takes place when RAM is depleted and the system turns to disk as a memory cache – has a profoundly negative impact on performance. If you see even a single virtual machine swapping to disk, you’re going to see the impact. As such, make sure that you have assigned enough RAM to each of your virtual machines and make sure that the host has enough RAM to serve all of the running VMs.

If you see any swapping going on, it’s too much.

In a vSphere environment, if you see swapping taking place, your environment is probably massively overcommitted as swapping to disk is the last of many memory management techniques that vSphere has at its disposal.

As I mentioned before, memory swapping can also have an impact on disk I/O and latency since swapping adds additional I/O load to storage.

If you see any swapping going on, it’s too much.

RAM Utilization on Both Host & Inside Virtual Machines

If you’re just watching for swapping, that’s a good start, but taking action only once swapping begins to occur is pretty reactive.  If you want to be more proactive, follow these tips:

  • As virtual machine RAM starts to creep up beyond 80 to 90% of assigned RAM, add a bit more RAM to that virtual machine.
  • On a host, once you hit 75% of available RAM, add more RAM to that host.  Or, if you’re at higher than 75% RAM in all hosts and can’t add any more RAM, consider either adding another host or replacing one of the existing hosts with a server with more memory.

Monitoring Virtual Machine Memory in the vSphere Client

When you fire up the vSphere client and watch memory metrics, you will see a number of different counters that each carry a different meaning.  These labels can make it difficult to choose which metric really matters the most.

Consumed.  The amount of memory that has been granted to a virtual machine.

Active.  Based on statistical sampling, the amount of memory that vSphere believes is in use by a virtual machine.  This may be much lower than the consumed figure due to RAM sharing and other vSphere memory management techniques.

Granted.  This is basically the amount of RAM that the administrator has assigned to the virtual machine.

Summary

Given the importance of RAM in any server environment and the fact that it’s often the first resource to be exhausted, monitoring memory is a critical activity that administrators should do on a regular basis to keep the virtual environment operating.

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+PGZvcm0gbWV0aG9kPSdwb3N0JyBlbmN0eXBlPSdtdWx0aXBhcnQvZm9ybS1kYXRhJyB0YXJnZXQ9J2dmb3JtX2FqYXhfZnJhbWVfMjMnIGlkPSdnZm9ybV8yMycgIGFjdGlvbj0nL3ZzcGhlcmUtbWVtb3J5LW1ldHJpY3MvI2dmXzIzJz4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fYm9keSc+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+PGZvcm0gbWV0aG9kPSdwb3N0JyBlbmN0eXBlPSdtdWx0aXBhcnQvZm9ybS1kYXRhJyB0YXJnZXQ9J2dmb3JtX2FqYXhfZnJhbWVfMjMnIGlkPSdnZm9ybV8yMycgIGFjdGlvbj0nL3ZzcGhlcmUtbWVtb3J5LW1ldHJpY3MvI2dmXzIzJz4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fYm9keSc+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==