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

Top

No Comments

Getting Chippy: Intel vs. AMD in 2019

Keith Ward
  • On January 3, 2019

The year 2019 may well be the year during which the downfall of the x86 processor begins. Predicting the end of x86 is a bit like predicting the year of the Linux desktop, but this time around, something feels different. That’s because 2019 represents more than just a little bit of back-and-forth between Intel and AMD, and this should worry Intel greatly.

As we enter 2019, there isn’t any one thing threatening Intel’s server chip dominance. Instead, there are a whole bunch of small things conspiring to kill Intel via a thousand cuts. Unfortunately for AMD, Intel’s misfortunes are unlikely to translate into an AMD victory.

Many of the problems facing Intel are problems for AMD as well. Top of mind are sidechannel attacks, like Meltdown and Spectre. These attacks have brought both hyperthreading and out-of-order processing under the microscope as potential security risks, and the discovery of sidechannel attacks is only getting easier.

This is a huge problem. Out-of-order processing and hyperthreading were, alongside higher core counts, the answer to the 4GHz clock speed barrier. Before the turn of the millennium, getting a faster CPU simply meant ramping up the clock speed. This worked until we hit about 3GHz, after which it became difficult to cool CPUs. While getting above 3Ghz is doable with the right cooling, it’s expensive. As a general rule, mass market CPUs just don’t ship above 4Ghz, which has been the real-world clock speed barrier for almost 20 years.

At the same time that chip manufacturers are having to cope with the sidechannel problem, we are reaching the end of what current silicon lithography can provide. As we approach the end of Moore’s law with silicon chips, Intel, AMD and others are looking for new approaches, but none of these look like they’re going to allow us to keep cramming more transistors onto a given wafer, meaning that 2019 or 2020 may represent a hard wall in terms of compute capacity per processor for the foreseeable future.

As a result, the core count wars are heating up. Intel has detailed an upcoming 48-core Xeon, while AMD revealed information about a 64-core Epyc. Both are server processors.

The problems making life difficult for AMD and Intel aren’t restricted to x86 CPUs. These issues affect all semiconductor manufacturers, and we’re seeing hard walls appearing in everything from GPUs to custom ASIC production. All this is occurring at a time that we’re having to come face-to-face with the reality of cryptomining’s intense energy use, which is resulting in regulatory efforts to curb it. This is depressing both the CPU market and custom chip manufacturing.

That Physics Thing

The smaller your manufacturing process, the more transistors you can cram into a square inch, and the better your processor. Now, 7nm is the new black, with several semiconductor manufacturers bringing 7nm processes up to mass production levels for everything from contract semiconductor production to bulk NAND flash output.

This is very, very bad for Intel. Intel has had nothing but problems with its 10nm chips, at the same time it’s claiming its 10nm chips will be coming in 2019, despite the much-publicised 10nm-related production shortages. These production problems have resulted in six months of Intel CPU shortages as of October 2018. Intel plans to prioritize production of server-class CPUs instead of consumer chips, focusing on the demands of high-margin buyers, but CPU shortages are expected to continue into 2019.

While chip shortages are a very real problem for Intel, the reason that Intel’s 10nm problems are so worrisome has to do with history. Making a very long story short, the No. 1 reason Intel obtained and retained its dominant position in the semiconductor market was that it had a process advantage over its rivals.

AMD-vs-Intel-in-2019-Throwdown-article-images_physical-gate-length

Figure 1. More chips on less acreage.

While Intel’s rivals were working on their 90nm technology, Intel had 65nm technology ready to go. As others invested in 22nm technology, Intel was already bringing 14nm technology to market. Constantly being a process generation ahead meant that AMD (and others) simply couldn’t produce chips with the same performance per watt, and that Intel would get more chips onto every wafer than its rivals could (see Figure 1).

This is no longer the case.

Process Isn’t the Only Advantage

To underscore the advantage that process brings, earlier this year, AMD announced that they were going to produce 7nm chips, and their stock soared. AMD was quickly hailed as resurgent. The AMD 7nm chips are scheduled to use TSMC’s 7nm process, and promise better performance per watt than Intel’s 10nm chips.

As Intel’s plans to ramp 10nm production advance, however, AMD’s shares have taken a beating. This is despite investing in 7nm chips in an attempt to take advantage of Intel’s 10nm production problems. The reasons for this are complex, but can mostly be boiled down to confidence in supply.

Intel might be in the middle of a supply shortage, but Intel still produces a lot – a lot – more chips than AMD does, or ever has. AMD doesn’t have experience packaging, selling or distributing chips at anywhere near Intel’s scale, and the window of opportunity AMD has to step out of Intel’s shadow is measured in months.

To take advantage of this opportunity, AMD has to secure some serious contracts, predominantly from the major cloud service providers. Intel’s sales team has substantially more experience with these buyers, having spent the past decade establishing an expensive – but ultimately lucrative – rapport.

TSMC is also not AMD’s normal chip supplier. AMD typically leans on GlobalFoundries, which once upon a time was the in-house part of AMD that owned semiconductor fabs. Buyers are nervous that AMD may overcommit on its new 7nm chips and be unable to deliver, something that has happened with AMD in the past, and is a particular worry given Intel’s ongoing supply problems.
Many large buyers are reluctant to take a risk on AMD, preferring to minimize their exposure by buying AMD chips in modest quantities, and paying Intel a little bit more for preferential treatment on bulk orders.

This leaves Intel starving its channel partners. Enterprises and especially consumers are hurting for Intel chips, seemingly leaving AMD an opening. But it’s a trap.

Unlike the large cloud buyers, bulk chip buys are increasingly rare in the on-premises server and consumer spaces. These markets are focused on just-in-time delivery, leaving vendors and intermediary warehouse/distribution buyers holding the risk.

If Intel solves its production problems, it will come roaring back into this space, displacing AMD in a heartbeat, leaving AMD with shiny new 7nm production capacity, and chips that can go toe-to-toe with Intel’s best, but no long-term contracts to sell them into.

In short, AMD is just too small-time to really be playing the game of global CPU capacity supply. AMD has a history of spectacularly blowing it whenever it gets a rare opportunity to shine, and it doesn’t have a sales team capable of spinning its way past that history. AMD’s access to capital is limited, and its board risk-averse enough that they’re unlikely to take the chance of building the kind of inventory necessary to ease the concerns of the large purchasers.

In short, AMD has managed to overcome the one advantage Intel has had over it for most of the existence of the two companies, and it still probably won’t matter. AMD just wasn’t prepared to capitalize on Intel’s screw up, and they don’t look like they’re willing to go all in to press the advantage.

ARMed for Capitalist Combat

If AMD isn’t likely to be a real threat to Intel, that isn’t true of everyone else. Qualcomm is pushing out a 7nm notebook-class ARM CPU, while Amazon is ramping up production of its own in-house ARM server CPU. 7nm fabs are starting to pop up everywhere, including NAND production for flash drives.

This is a problem for both AMD and Intel, as anyone can get a licence to make their own ARM chips, and there are constantly rumours that vendors – usually Apple – are going to make a serious move away from x86 and embrace ARM. Android has already surpassed Windows as the most popular operating system for accessing the World Wide Web.

ARM devices, in the form of smartphones and tablets, are clearly becoming the dominant human interfaces to the Internet. While x86 endpoints certainly aren’t going away any time soon, they may well have peaked. If ARM server CPUs catch on in any serious way, both Intel and especially AMD are in deep trouble.

Microsoft has an ARM version of Windows 10. Unlike the Windows RT version of Windows 8, Microsoft looks to only being half-crippling the Windows 10 ARM version this time, so there exists some small possibility it could actually catch on somewhere.

Meanwhile, companies with actual resources are dumping money into Wine, including Valve (in the form of Proton). Wine allows x86 Windows applications to work on Linux, and that’s all kinds of problematic.

Unlike Windows, Linux tends to be OK with supporting older hardware. Linux is also significantly less resource intensive than Windows. Linux with the ability to run Windows applications – especially games – means that more people are likely to hang on to their older systems, further depressing demand. While we’re far from the Year of the Linux Desktop, bear in mind that Windows’s share of the endpoint market is  around 37%, and dropping.

More applications are being written for Unix-like operating systems (Linux, BSD, MacOS, iOS, Android, ChromeOS, and so forth) than are being written for Windows. If Wine gets good enough, then switching away from Windows becomes realistically possible. Once that happens, the final switch to ARM won’t be far behind.

AMD-vs-Intel-in-2019-Throwdown-article-images_cost-projections

Figure 2. Cost, as always, will drive the market.

The Wider Semiconductor World

The Register’s Chris Mellor is predicting a NAND supply glut in 2019, but I have my doubts. Flash chips, like CPUs, are produced in semiconductor fabs. Flash, RAM, GPUs and CPUs make up the bulk of modern semiconductor fab capacity.

As a general rule, one can never have too many fabs. The exact mix of what you should be producing will vary, but fabs are, for the most part, a license to print money.

What’s going to happen in 2019 is a correction to the semiconductor market. For most of the past decade, the large public cloud providers have dominated semiconductor demand, eating up capacity with large contracts. They pay a fixed price, while the rest of us struggle for the scraps, something that has driven chip costs – regardless of the type of chip – through the roof for years.

Everyone has been building fabs just as fast as they can, and in 2019 we may finally see supply more or less meet demand. It won’t last. Demand is constantly growing, but there’s only one or two more process shrinks left. There are already those who doubt 5nm will be commercially viable, though TSMC says they’ll be able to begin production in late 2019.

If 5nm production capacity does reach commercial success, it’s likely to be the last silicon lithography process we see. As a result, the 7nm fabs will see extended lifetimes, and we’ll all be using 7nm and 5nm chips for a lot longer than we’d like (see Figure 2).

Getting beyond 7nm (or maybe 5nm), will take new fundamental technologies, and a better understanding of quantum physics. (Quantum physics is already a problem at 7nm.) This is going to lead us right back to where we started: rising demand, inadequate supply.

Prior to 2019, semiconductor manufacturers met supply as much by shrinking the process – and thus getting more chips per wafer – as by adding fabrication facilities. Shrinking the process was a fraction as costly as building an entirely new fab. That can’t be done anymore.

After 2019, meeting demand for any kind of semiconductor – RAM, CPU, GPU, flash, or otherwise – will mean building new fabs. Fabs cost between $1 billion – $14 billion, so you have to have at least that much capital to play this game (see Figure 3).

As fab capacity becomes constrained, fabless semiconductor houses – like AMD – will feel the crunch. They will have to give up margin to get chips made as demand for fab time drives up costs. That hit to margin means less R&D, which ultimately means AMD becomes less competitive when compared to Intel.

AMD-vs-Intel-in-2019-Throwdown-article-images_record-fab-spending

Figure 3. Building fabs isn’t for the cash-strapped.

AMD may yet surprise us. They may gamble it all, successfully take advantage of this narrow window of opportunity, and emerge as a true global player. If they don’t, however, they’re probably done. Intel will continue, due to nothing more than its own largesse, but its days of easy victories due to process advantage are over.

Regardless of how it plays out, 2019 will prove to be a lasting change in the semiconductor market as we encounter the hard wall of the end of Moore’s law. We may well look back on 2019 as the “good old days,” when chips were cheap.
Good luck, AMD.

Next Story

This is the most recent story.

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+PGZvcm0gbWV0aG9kPSdwb3N0JyBlbmN0eXBlPSdtdWx0aXBhcnQvZm9ybS1kYXRhJyB0YXJnZXQ9J2dmb3JtX2FqYXhfZnJhbWVfMjMnIGlkPSdnZm9ybV8yMycgIGFjdGlvbj0nL2ZsYXNoLWZvcndhcmQtZnV0dXJlLW1lbW9yeS8jZ2ZfMjMnPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9ib2R5Jz48dWwgaWQ9J2dmb3JtX2ZpZWxkc18yMycgY2xhc3M9J2dmb3JtX2ZpZWxkcyB0b3BfbGFiZWwgZm9ybV9zdWJsYWJlbF9iZWxvdyBkZXNjcmlwdGlvbl9iZWxvdyc+PGxpIGlkPSdmaWVsZF8yM18xJyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzEnID5GaXJzdCBOYW1lPHNwYW4gY2xhc3M9J2dmaWVsZF9yZXF1aXJlZCc+Kjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxpbnB1dCBuYW1lPSdpbnB1dF8xJyBpZD0naW5wdXRfMjNfMScgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgIHRhYmluZGV4PScxJyAgIC8+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzInIGNsYXNzPSdnZmllbGQgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93JyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMjNfMicgPkxhc3QgTmFtZTxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfMicgaWQ9J2lucHV0XzIzXzInIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nMicgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM18zJyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzMnID5FbWFpbDxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBuYW1lPSdpbnB1dF8zJyBpZD0naW5wdXRfMjNfMycgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgdGFiaW5kZXg9JzMnICAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzUnIGNsYXNzPSdnZmllbGQgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93JyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMjNfNScgPkNvdW50cnk8c3BhbiBjbGFzcz0nZ2ZpZWxkX3JlcXVpcmVkJz4qPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+PHNlbGVjdCBuYW1lPSdpbnB1dF81JyBpZD0naW5wdXRfMjNfNScgb25jaGFuZ2U9J2dmX2FwcGx5X3J1bGVzKDIzLFs0XSk7JyBjbGFzcz0nbWVkaXVtIGdmaWVsZF9zZWxlY3QnIHRhYmluZGV4PSc0JyA+PG9wdGlvbiB2YWx1ZT0nVW5pdGVkIFN0YXRlcycgc2VsZWN0ZWQ9J3NlbGVjdGVkJz5Vbml0ZWQgU3RhdGVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FuYWRhJyA+Q2FuYWRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVW5pdGVkIEtpbmdkb20nID5Vbml0ZWQgS2luZ2RvbTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0F1c3RyYWxpYScgPkF1c3RyYWxpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FmZ2hhbmlzdGFuJyA+QWZnaGFuaXN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbGJhbmlhJyA+QWxiYW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FsZ2VyaWEnID5BbGdlcmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQW1lcmljYW4gU2Ftb2EnID5BbWVyaWNhbiBTYW1vYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FuZG9ycmEnID5BbmRvcnJhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQW5nb2xhJyA+QW5nb2xhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQW50aWd1YSBhbmQgQmFyYnVkYScgPkFudGlndWEgYW5kIEJhcmJ1ZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcmdlbnRpbmEnID5BcmdlbnRpbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcm1lbmlhJyA+QXJtZW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0F1c3RyaWEnID5BdXN0cmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXplcmJhaWphbicgPkF6ZXJiYWlqYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCYWhhbWFzJyA+QmFoYW1hczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JhaHJhaW4nID5CYWhyYWluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmFuZ2xhZGVzaCcgPkJhbmdsYWRlc2g8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCYXJiYWRvcycgPkJhcmJhZG9zPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmVsYXJ1cycgPkJlbGFydXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZWxnaXVtJyA+QmVsZ2l1bTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JlbGl6ZScgPkJlbGl6ZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JlbmluJyA+QmVuaW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZXJtdWRhJyA+QmVybXVkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JodXRhbicgPkJodXRhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JvbGl2aWEnID5Cb2xpdmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQm9zbmlhIGFuZCBIZXJ6ZWdvdmluYScgPkJvc25pYSBhbmQgSGVyemVnb3ZpbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCb3Rzd2FuYScgPkJvdHN3YW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnJhemlsJyA+QnJhemlsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnJ1bmVpJyA+QnJ1bmVpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnVsZ2FyaWEnID5CdWxnYXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0J1cmtpbmEgRmFzbycgPkJ1cmtpbmEgRmFzbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0J1cnVuZGknID5CdXJ1bmRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FtYm9kaWEnID5DYW1ib2RpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NhbWVyb29uJyA+Q2FtZXJvb248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYXBlIFZlcmRlJyA+Q2FwZSBWZXJkZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NheW1hbiBJc2xhbmRzJyA+Q2F5bWFuIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDZW50cmFsIEFmcmljYW4gUmVwdWJsaWMnID5DZW50cmFsIEFmcmljYW4gUmVwdWJsaWM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDaGFkJyA+Q2hhZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NoaWxlJyA+Q2hpbGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDaGluYScgPkNoaW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29sb21iaWEnID5Db2xvbWJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbW9yb3MnID5Db21vcm9zPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29uZ28sIERlbW9jcmF0aWMgUmVwdWJsaWMgb2YgdGhlJyA+Q29uZ28sIERlbW9jcmF0aWMgUmVwdWJsaWMgb2YgdGhlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29uZ28sIFJlcHVibGljIG9mIHRoZScgPkNvbmdvLCBSZXB1YmxpYyBvZiB0aGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb3N0YSBSaWNhJyA+Q29zdGEgUmljYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Mmb2NpcmM7dGUgZCYjMDM5O0l2b2lyZScgPkMmb2NpcmM7dGUgZCYjMDM5O0l2b2lyZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Nyb2F0aWEnID5Dcm9hdGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3ViYScgPkN1YmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDeXBydXMnID5DeXBydXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDemVjaCBSZXB1YmxpYycgPkN6ZWNoIFJlcHVibGljPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRGVubWFyaycgPkRlbm1hcms8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdEamlib3V0aScgPkRqaWJvdXRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRG9taW5pY2EnID5Eb21pbmljYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0RvbWluaWNhbiBSZXB1YmxpYycgPkRvbWluaWNhbiBSZXB1YmxpYzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Vhc3QgVGltb3InID5FYXN0IFRpbW9yPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRWN1YWRvcicgPkVjdWFkb3I8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFZ3lwdCcgPkVneXB0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRWwgU2FsdmFkb3InID5FbCBTYWx2YWRvcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VxdWF0b3JpYWwgR3VpbmVhJyA+RXF1YXRvcmlhbCBHdWluZWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFcml0cmVhJyA+RXJpdHJlYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VzdG9uaWEnID5Fc3RvbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRXRoaW9waWEnID5FdGhpb3BpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ZpamknID5GaWppPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRmlubGFuZCcgPkZpbmxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdGcmFuY2UnID5GcmFuY2U8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHYWJvbicgPkdhYm9uPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2FtYmlhJyA+R2FtYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2VvcmdpYScgPkdlb3JnaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHZXJtYW55JyA+R2VybWFueTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0doYW5hJyA+R2hhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHcmVlY2UnID5HcmVlY2U8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHcmVlbmxhbmQnID5HcmVlbmxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHcmVuYWRhJyA+R3JlbmFkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0d1YW0nID5HdWFtPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VhdGVtYWxhJyA+R3VhdGVtYWxhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VpbmVhJyA+R3VpbmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VpbmVhLUJpc3NhdScgPkd1aW5lYS1CaXNzYXU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHdXlhbmEnID5HdXlhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdIYWl0aScgPkhhaXRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSG9uZHVyYXMnID5Ib25kdXJhczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0hvbmcgS29uZycgPkhvbmcgS29uZzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0h1bmdhcnknID5IdW5nYXJ5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSWNlbGFuZCcgPkljZWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJbmRpYScgPkluZGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSW5kb25lc2lhJyA+SW5kb25lc2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXJhbicgPklyYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJcmFxJyA+SXJhcTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lyZWxhbmQnID5JcmVsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXNyYWVsJyA+SXNyYWVsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXRhbHknID5JdGFseTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0phbWFpY2EnID5KYW1haWNhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSmFwYW4nID5KYXBhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0pvcmRhbicgPkpvcmRhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0themFraHN0YW4nID5LYXpha2hzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS2VueWEnID5LZW55YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0tpcmliYXRpJyA+S2lyaWJhdGk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J0aCBLb3JlYScgPk5vcnRoIEtvcmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU291dGggS29yZWEnID5Tb3V0aCBLb3JlYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0t1d2FpdCcgPkt1d2FpdDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0t5cmd5enN0YW4nID5LeXJneXpzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGFvcycgPkxhb3M8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMYXR2aWEnID5MYXR2aWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMZWJhbm9uJyA+TGViYW5vbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xlc290aG8nID5MZXNvdGhvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGliZXJpYScgPkxpYmVyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMaWJ5YScgPkxpYnlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGllY2h0ZW5zdGVpbicgPkxpZWNodGVuc3RlaW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMaXRodWFuaWEnID5MaXRodWFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMdXhlbWJvdXJnJyA+THV4ZW1ib3VyZzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hY2Vkb25pYScgPk1hY2Vkb25pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hZGFnYXNjYXInID5NYWRhZ2FzY2FyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFsYXdpJyA+TWFsYXdpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFsYXlzaWEnID5NYWxheXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbGRpdmVzJyA+TWFsZGl2ZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWxpJyA+TWFsaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbHRhJyA+TWFsdGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYXJzaGFsbCBJc2xhbmRzJyA+TWFyc2hhbGwgSXNsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hdXJpdGFuaWEnID5NYXVyaXRhbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWF1cml0aXVzJyA+TWF1cml0aXVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWV4aWNvJyA+TWV4aWNvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWljcm9uZXNpYScgPk1pY3JvbmVzaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb2xkb3ZhJyA+TW9sZG92YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vbmFjbycgPk1vbmFjbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vbmdvbGlhJyA+TW9uZ29saWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb250ZW5lZ3JvJyA+TW9udGVuZWdybzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vcm9jY28nID5Nb3JvY2NvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW96YW1iaXF1ZScgPk1vemFtYmlxdWU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNeWFubWFyJyA+TXlhbm1hcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05hbWliaWEnID5OYW1pYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmF1cnUnID5OYXVydTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05lcGFsJyA+TmVwYWw8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXRoZXJsYW5kcycgPk5ldGhlcmxhbmRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV3IFplYWxhbmQnID5OZXcgWmVhbGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05pY2FyYWd1YScgPk5pY2FyYWd1YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05pZ2VyJyA+TmlnZXI8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaWdlcmlhJyA+TmlnZXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcndheScgPk5vcndheTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcnRoZXJuIE1hcmlhbmEgSXNsYW5kcycgPk5vcnRoZXJuIE1hcmlhbmEgSXNsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J09tYW4nID5PbWFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFraXN0YW4nID5QYWtpc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BhbGF1JyA+UGFsYXU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYWxlc3RpbmUnID5QYWxlc3RpbmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYW5hbWEnID5QYW5hbWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYXB1YSBOZXcgR3VpbmVhJyA+UGFwdWEgTmV3IEd1aW5lYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BhcmFndWF5JyA+UGFyYWd1YXk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQZXJ1JyA+UGVydTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BoaWxpcHBpbmVzJyA+UGhpbGlwcGluZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQb2xhbmQnID5Qb2xhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQb3J0dWdhbCcgPlBvcnR1Z2FsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUHVlcnRvIFJpY28nID5QdWVydG8gUmljbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1FhdGFyJyA+UWF0YXI8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSb21hbmlhJyA+Um9tYW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1J1c3NpYScgPlJ1c3NpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1J3YW5kYScgPlJ3YW5kYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhaW50IEtpdHRzIGFuZCBOZXZpcycgPlNhaW50IEtpdHRzIGFuZCBOZXZpczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhaW50IEx1Y2lhJyA+U2FpbnQgTHVjaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBWaW5jZW50IGFuZCB0aGUgR3JlbmFkaW5lcycgPlNhaW50IFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2Ftb2EnID5TYW1vYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhbiBNYXJpbm8nID5TYW4gTWFyaW5vPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2FvIFRvbWUgYW5kIFByaW5jaXBlJyA+U2FvIFRvbWUgYW5kIFByaW5jaXBlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2F1ZGkgQXJhYmlhJyA+U2F1ZGkgQXJhYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2VuZWdhbCcgPlNlbmVnYWw8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTZXJiaWEgYW5kIE1vbnRlbmVncm8nID5TZXJiaWEgYW5kIE1vbnRlbmVncm88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTZXljaGVsbGVzJyA+U2V5Y2hlbGxlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NpZXJyYSBMZW9uZScgPlNpZXJyYSBMZW9uZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NpbmdhcG9yZScgPlNpbmdhcG9yZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Nsb3Zha2lhJyA+U2xvdmFraWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTbG92ZW5pYScgPlNsb3ZlbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU29sb21vbiBJc2xhbmRzJyA+U29sb21vbiBJc2xhbmRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU29tYWxpYScgPlNvbWFsaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb3V0aCBBZnJpY2EnID5Tb3V0aCBBZnJpY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTcGFpbicgPlNwYWluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3JpIExhbmthJyA+U3JpIExhbmthPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3VkYW4nID5TdWRhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N1ZGFuLCBTb3V0aCcgPlN1ZGFuLCBTb3V0aDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N1cmluYW1lJyA+U3VyaW5hbWU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2F6aWxhbmQnID5Td2F6aWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2VkZW4nID5Td2VkZW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2l0emVybGFuZCcgPlN3aXR6ZXJsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3lyaWEnID5TeXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RhaXdhbicgPlRhaXdhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RhamlraXN0YW4nID5UYWppa2lzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVGFuemFuaWEnID5UYW56YW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RoYWlsYW5kJyA+VGhhaWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUb2dvJyA+VG9nbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RvbmdhJyA+VG9uZ2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUcmluaWRhZCBhbmQgVG9iYWdvJyA+VHJpbmlkYWQgYW5kIFRvYmFnbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1bmlzaWEnID5UdW5pc2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHVya2V5JyA+VHVya2V5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHVya21lbmlzdGFuJyA+VHVya21lbmlzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHV2YWx1JyA+VHV2YWx1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVWdhbmRhJyA+VWdhbmRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVWtyYWluZScgPlVrcmFpbmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdVbml0ZWQgQXJhYiBFbWlyYXRlcycgPlVuaXRlZCBBcmFiIEVtaXJhdGVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVXJ1Z3VheScgPlVydWd1YXk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdVemJla2lzdGFuJyA+VXpiZWtpc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZhbnVhdHUnID5WYW51YXR1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmF0aWNhbiBDaXR5JyA+VmF0aWNhbiBDaXR5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmVuZXp1ZWxhJyA+VmVuZXp1ZWxhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmlldG5hbScgPlZpZXRuYW08L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWaXJnaW4gSXNsYW5kcywgQnJpdGlzaCcgPlZpcmdpbiBJc2xhbmRzLCBCcml0aXNoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmlyZ2luIElzbGFuZHMsIFUuUy4nID5WaXJnaW4gSXNsYW5kcywgVS5TLjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1llbWVuJyA+WWVtZW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdaYW1iaWEnID5aYW1iaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdaaW1iYWJ3ZScgPlppbWJhYndlPC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzQnIGNsYXNzPSdnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM180JyA+U3RhdGU8L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxzZWxlY3QgbmFtZT0naW5wdXRfNCcgaWQ9J2lucHV0XzIzXzQnICBjbGFzcz0nbWVkaXVtIGdmaWVsZF9zZWxlY3QnIHRhYmluZGV4PSc1JyA+PG9wdGlvbiB2YWx1ZT0nQWxhYmFtYScgPkFsYWJhbWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbGFza2EnID5BbGFza2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcml6b25hJyA+QXJpem9uYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Fya2Fuc2FzJyA+QXJrYW5zYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYWxpZm9ybmlhJyA+Q2FsaWZvcm5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbG9yYWRvJyA+Q29sb3JhZG88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb25uZWN0aWN1dCcgPkNvbm5lY3RpY3V0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRGVsYXdhcmUnID5EZWxhd2FyZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Rpc3RyaWN0IG9mIENvbHVtYmlhJyA+RGlzdHJpY3Qgb2YgQ29sdW1iaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdGbG9yaWRhJyA+RmxvcmlkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dlb3JnaWEnID5HZW9yZ2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSGF3YWlpJyA+SGF3YWlpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSWRhaG8nID5JZGFobzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lsbGlub2lzJyA+SWxsaW5vaXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJbmRpYW5hJyA+SW5kaWFuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lvd2EnID5Jb3dhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS2Fuc2FzJyA+S2Fuc2FzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS2VudHVja3knID5LZW50dWNreTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xvdWlzaWFuYScgPkxvdWlzaWFuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01haW5lJyA+TWFpbmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYXJ5bGFuZCcgPk1hcnlsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFzc2FjaHVzZXR0cycgPk1hc3NhY2h1c2V0dHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNaWNoaWdhbicgPk1pY2hpZ2FuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWlubmVzb3RhJyA+TWlubmVzb3RhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWlzc2lzc2lwcGknID5NaXNzaXNzaXBwaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01pc3NvdXJpJyA+TWlzc291cmk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb250YW5hJyA+TW9udGFuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05lYnJhc2thJyA+TmVicmFza2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXZhZGEnID5OZXZhZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXcgSGFtcHNoaXJlJyA+TmV3IEhhbXBzaGlyZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05ldyBKZXJzZXknID5OZXcgSmVyc2V5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV3IE1leGljbycgPk5ldyBNZXhpY288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXcgWW9yaycgPk5ldyBZb3JrPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTm9ydGggQ2Fyb2xpbmEnID5Ob3J0aCBDYXJvbGluYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcnRoIERha290YScgPk5vcnRoIERha290YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J09oaW8nID5PaGlvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nT2tsYWhvbWEnID5Pa2xhaG9tYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J09yZWdvbicgPk9yZWdvbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Blbm5zeWx2YW5pYScgPlBlbm5zeWx2YW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Job2RlIElzbGFuZCcgPlJob2RlIElzbGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvdXRoIENhcm9saW5hJyA+U291dGggQ2Fyb2xpbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb3V0aCBEYWtvdGEnID5Tb3V0aCBEYWtvdGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUZW5uZXNzZWUnID5UZW5uZXNzZWU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUZXhhcycgPlRleGFzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVXRhaCcgPlV0YWg8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWZXJtb250JyA+VmVybW9udDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZpcmdpbmlhJyA+VmlyZ2luaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdXYXNoaW5ndG9uJyA+V2FzaGluZ3Rvbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1dlc3QgVmlyZ2luaWEnID5XZXN0IFZpcmdpbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nV2lzY29uc2luJyA+V2lzY29uc2luPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nV3lvbWluZycgPld5b21pbmc8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcm1lZCBGb3JjZXMgQW1lcmljYXMnID5Bcm1lZCBGb3JjZXMgQW1lcmljYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcm1lZCBGb3JjZXMgRXVyb3BlJyA+QXJtZWQgRm9yY2VzIEV1cm9wZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FybWVkIEZvcmNlcyBQYWNpZmljJyA+QXJtZWQgRm9yY2VzIFBhY2lmaWM8L29wdGlvbj48L3NlbGVjdD48L2Rpdj48L2xpPjxsaSBpZD0nZmllbGRfMjNfNicgY2xhc3M9J2dmaWVsZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzYnID5QaG9uZTwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+PGlucHV0IG5hbWU9J2lucHV0XzYnIGlkPSdpbnB1dF8yM182JyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyBjbGFzcz0nbWVkaXVtJyB0YWJpbmRleD0nNicgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM183JyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzcnID5Db21wYW55PHNwYW4gY2xhc3M9J2dmaWVsZF9yZXF1aXJlZCc+Kjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxpbnB1dCBuYW1lPSdpbnB1dF83JyBpZD0naW5wdXRfMjNfNycgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgIHRhYmluZGV4PSc3JyAgIC8+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzgnIGNsYXNzPSdnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM184JyA+Sm9iIFRpdGxlPC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfOCcgaWQ9J2lucHV0XzIzXzgnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nOCcgICAvPjwvZGl2PjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2dmb3JtX2Zvb3RlciB0b3BfbGFiZWwnPiA8aW5wdXQgdHlwZT0nc3VibWl0JyBpZD0nZ2Zvcm1fc3VibWl0X2J1dHRvbl8yMycgY2xhc3M9J2dmb3JtX2J1dHRvbiBidXR0b24nIHZhbHVlPSdSZWdpc3RlciBOb3chJyB0YWJpbmRleD0nOScgb25jbGljaz0naWYod2luZG93WyJnZl9zdWJtaXR0aW5nXzIzIl0pe3JldHVybiBmYWxzZTt9ICB3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMjMiXT10cnVlOyAgJyAvPiA8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdnZm9ybV9hamF4JyB2YWx1ZT0nZm9ybV9pZD0yMyZhbXA7dGl0bGU9JmFtcDtkZXNjcmlwdGlvbj0mYW1wO3RhYmluZGV4PTEnIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2lzX3N1Ym1pdF8yMycgdmFsdWU9JzEnIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2dmb3JtX3N1Ym1pdCcgdmFsdWU9JzIzJyAvPgogICAgICAgICAgICAKICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fdW5pcXVlX2lkJyB2YWx1ZT0nJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdzdGF0ZV8yMycgdmFsdWU9J1d5SmJYU0lzSW1OaE9EVTNZbVl3TURZd05EY3dNVGxqTW1FeU1qQTJOR1poWkRBd056QTFJbDA9JyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMjMnIGlkPSdnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMjMnIHZhbHVlPScwJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfMjMnIGlkPSdnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfMjMnIHZhbHVlPScxJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdnZm9ybV9maWVsZF92YWx1ZXMnIHZhbHVlPScnIC8+CiAgICAgICAgICAgIAogICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGlmcmFtZSBzdHlsZT0nZGlzcGxheTpub25lO3dpZHRoOjBweDtoZWlnaHQ6MHB4Oycgc3JjPSdhYm91dDpibGFuaycgbmFtZT0nZ2Zvcm1fYWpheF9mcmFtZV8yMycgaWQ9J2dmb3JtX2FqYXhfZnJhbWVfMjMnPjwvaWZyYW1lPgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPmpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCl7Z2Zvcm1Jbml0U3Bpbm5lciggMjMsICdodHRwOi8vd3d3LnZpcnR1YWxpemF0aW9uc29mdHdhcmUuY29tL3dwLWNvbnRlbnQvcGx1Z2lucy9ncmF2aXR5Zm9ybXMvaW1hZ2VzL3NwaW5uZXIuZ2lmJyApO2pRdWVyeSgnI2dmb3JtX2FqYXhfZnJhbWVfMjMnKS5sb2FkKCBmdW5jdGlvbigpe3ZhciBjb250ZW50cyA9IGpRdWVyeSh0aGlzKS5jb250ZW50cygpLmZpbmQoJyonKS5odG1sKCk7dmFyIGlzX3Bvc3RiYWNrID0gY29udGVudHMuaW5kZXhPZignR0ZfQUpBWF9QT1NUQkFDSycpID49IDA7aWYoIWlzX3Bvc3RiYWNrKXtyZXR1cm47fXZhciBmb3JtX2NvbnRlbnQgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcjZ2Zvcm1fd3JhcHBlcl8yMycpO3ZhciBpc19jb25maXJtYXRpb24gPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcjZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXJfMjMnKS5sZW5ndGggPiAwO3ZhciBpc19yZWRpcmVjdCA9IGNvbnRlbnRzLmluZGV4T2YoJ2dmb3JtUmVkaXJlY3QoKXsnKSA+PSAwO3ZhciBpc19mb3JtID0gZm9ybV9jb250ZW50Lmxlbmd0aCA+IDAgJiYgISBpc19yZWRpcmVjdCAmJiAhIGlzX2NvbmZpcm1hdGlvbjtpZihpc19mb3JtKXtqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzIzJykuaHRtbChmb3JtX2NvbnRlbnQuaHRtbCgpKTtzZXRUaW1lb3V0KCBmdW5jdGlvbigpIHsgLyogZGVsYXkgdGhlIHNjcm9sbCBieSA1MCBtaWxsaXNlY29uZHMgdG8gZml4IGEgYnVnIGluIGNocm9tZSAqLyBqUXVlcnkoZG9jdW1lbnQpLnNjcm9sbFRvcChqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzIzJykub2Zmc2V0KCkudG9wKTsgfSwgNTAgKTtpZih3aW5kb3dbJ2dmb3JtSW5pdERhdGVwaWNrZXInXSkge2dmb3JtSW5pdERhdGVwaWNrZXIoKTt9aWYod2luZG93WydnZm9ybUluaXRQcmljZUZpZWxkcyddKSB7Z2Zvcm1Jbml0UHJpY2VGaWVsZHMoKTt9dmFyIGN1cnJlbnRfcGFnZSA9IGpRdWVyeSgnI2dmb3JtX3NvdXJjZV9wYWdlX251bWJlcl8yMycpLnZhbCgpO2dmb3JtSW5pdFNwaW5uZXIoIDIzLCAnaHR0cDovL3d3dy52aXJ0dWFsaXphdGlvbnNvZnR3YXJlLmNvbS93cC1jb250ZW50L3BsdWdpbnMvZ3Jhdml0eWZvcm1zL2ltYWdlcy9zcGlubmVyLmdpZicgKTtqUXVlcnkoZG9jdW1lbnQpLnRyaWdnZXIoJ2dmb3JtX3BhZ2VfbG9hZGVkJywgWzIzLCBjdXJyZW50X3BhZ2VdKTt3aW5kb3dbJ2dmX3N1Ym1pdHRpbmdfMjMnXSA9IGZhbHNlO31lbHNlIGlmKCFpc19yZWRpcmVjdCl7dmFyIGNvbmZpcm1hdGlvbl9jb250ZW50ID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnI2dmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZV8yMycpLmh0bWwoKTtpZighY29uZmlybWF0aW9uX2NvbnRlbnQpe2NvbmZpcm1hdGlvbl9jb250ZW50ID0gY29udGVudHM7fXNldFRpbWVvdXQoZnVuY3Rpb24oKXtqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzIzJykucmVwbGFjZVdpdGgoJzwnICsgJ2RpdiBpZD1cJ2dmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZV8yM1wnIGNsYXNzPVwnZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2VfMjMgZ2Zvcm1zX2NvbmZpcm1hdGlvbl9tZXNzYWdlXCcnICsgJz4nICsgY29uZmlybWF0aW9uX2NvbnRlbnQgKyAnPCcgKyAnL2RpdicgKyAnPicpO2pRdWVyeShkb2N1bWVudCkuc2Nyb2xsVG9wKGpRdWVyeSgnI2dmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZV8yMycpLm9mZnNldCgpLnRvcCk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9jb25maXJtYXRpb25fbG9hZGVkJywgWzIzXSk7d2luZG93WydnZl9zdWJtaXR0aW5nXzIzJ10gPSBmYWxzZTt9LCA1MCk7fWVsc2V7alF1ZXJ5KCcjZ2Zvcm1fMjMnKS5hcHBlbmQoY29udGVudHMpO2lmKHdpbmRvd1snZ2Zvcm1SZWRpcmVjdCddKSB7Z2Zvcm1SZWRpcmVjdCgpO319alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wb3N0X3JlbmRlcicsIFsyMywgY3VycmVudF9wYWdlXSk7fSApO30gKTs8L3NjcmlwdD48c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+IGlmKHR5cGVvZiBnZl9nbG9iYWwgPT0gJ3VuZGVmaW5lZCcpIHZhciBnZl9nbG9iYWwgPSB7ImdmX2N1cnJlbmN5X2NvbmZpZyI6eyJuYW1lIjoiVS5TLiBEb2xsYXIiLCJzeW1ib2xfbGVmdCI6IiQiLCJzeW1ib2xfcmlnaHQiOiIiLCJzeW1ib2xfcGFkZGluZyI6IiIsInRob3VzYW5kX3NlcGFyYXRvciI6IiwiLCJkZWNpbWFsX3NlcGFyYXRvciI6Ii4iLCJkZWNpbWFscyI6Mn0sImJhc2VfdXJsIjoiaHR0cDpcL1wvd3d3LnZpcnR1YWxpemF0aW9uc29mdHdhcmUuY29tXC93cC1jb250ZW50XC9wbHVnaW5zXC9ncmF2aXR5Zm9ybXMiLCJudW1iZXJfZm9ybWF0cyI6W10sInNwaW5uZXJVcmwiOiJodHRwOlwvXC93d3cudmlydHVhbGl6YXRpb25zb2Z0d2FyZS5jb21cL3dwLWNvbnRlbnRcL3BsdWdpbnNcL2dyYXZpdHlmb3Jtc1wvaW1hZ2VzXC9zcGlubmVyLmdpZiJ9O2pRdWVyeShkb2N1bWVudCkuYmluZCgnZ2Zvcm1fcG9zdF9yZW5kZXInLCBmdW5jdGlvbihldmVudCwgZm9ybUlkLCBjdXJyZW50UGFnZSl7aWYoZm9ybUlkID09IDIzKSB7aWYod2luZG93WydqUXVlcnknXSl7aWYoIXdpbmRvd1snZ2ZfZm9ybV9jb25kaXRpb25hbF9sb2dpYyddKXdpbmRvd1snZ2ZfZm9ybV9jb25kaXRpb25hbF9sb2dpYyddID0gbmV3IEFycmF5KCk7d2luZG93WydnZl9mb3JtX2NvbmRpdGlvbmFsX2xvZ2ljJ11bMjNdID0geydsb2dpYycgOiB7NDogeyJmaWVsZCI6eyJhY3Rpb25UeXBlIjoiaGlkZSIsImxvZ2ljVHlwZSI6ImFsbCIsInJ1bGVzIjpbeyJmaWVsZElkIjoiNSIsIm9wZXJhdG9yIjoiaXNub3QiLCJ2YWx1ZSI6IlVuaXRlZCBTdGF0ZXMifV19LCJuZXh0QnV0dG9uIjpudWxsLCJzZWN0aW9uIjpudWxsfSB9LCAnZGVwZW5kZW50cycgOiB7NDogWzRdIH0sICdhbmltYXRpb24nIDogMCAsICdkZWZhdWx0cycgOiB7IjUiOiJVbml0ZWQgU3RhdGVzIn0gfTsgaWYoIXdpbmRvd1snZ2ZfbnVtYmVyX2Zvcm1hdCddKXdpbmRvd1snZ2ZfbnVtYmVyX2Zvcm1hdCddID0gJ2RlY2ltYWxfZG90JztqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7Z2ZfYXBwbHlfcnVsZXMoMjMsIFs0XSwgdHJ1ZSk7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8yMycpLnNob3coKTtqUXVlcnkoZG9jdW1lbnQpLnRyaWdnZXIoJ2dmb3JtX3Bvc3RfY29uZGl0aW9uYWxfbG9naWMnLCBbMjMsIG51bGwsIHRydWVdKTt9ICk7fSBnZm9ybUluaXRDaG9zZW5GaWVsZHMoJyNpbnB1dF8yM181LCNpbnB1dF8yM180JywnTm8gcmVzdWx0cyBtYXRjaGVkJyk7fSB9ICk7alF1ZXJ5KGRvY3VtZW50KS5iaW5kKCdnZm9ybV9wb3N0X2NvbmRpdGlvbmFsX2xvZ2ljJywgZnVuY3Rpb24oZXZlbnQsIGZvcm1JZCwgZmllbGRzLCBpc0luaXQpe2dmb3JtSW5pdENob3NlbkZpZWxkcygnI2lucHV0XzIzXzUsI2lucHV0XzIzXzQnLCdObyByZXN1bHRzIG1hdGNoZWQnKTt9ICk7PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPiBqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wb3N0X3JlbmRlcicsIFsyMywgMV0pIH0gKTsgPC9zY3JpcHQ+
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+PGZvcm0gbWV0aG9kPSdwb3N0JyBlbmN0eXBlPSdtdWx0aXBhcnQvZm9ybS1kYXRhJyB0YXJnZXQ9J2dmb3JtX2FqYXhfZnJhbWVfMjMnIGlkPSdnZm9ybV8yMycgIGFjdGlvbj0nL2ZsYXNoLWZvcndhcmQtZnV0dXJlLW1lbW9yeS8jZ2ZfMjMnPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9ib2R5Jz48dWwgaWQ9J2dmb3JtX2ZpZWxkc18yMycgY2xhc3M9J2dmb3JtX2ZpZWxkcyB0b3BfbGFiZWwgZm9ybV9zdWJsYWJlbF9iZWxvdyBkZXNjcmlwdGlvbl9iZWxvdyc+PGxpIGlkPSdmaWVsZF8yM18xJyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzEnID5GaXJzdCBOYW1lPHNwYW4gY2xhc3M9J2dmaWVsZF9yZXF1aXJlZCc+Kjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxpbnB1dCBuYW1lPSdpbnB1dF8xJyBpZD0naW5wdXRfMjNfMScgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgIHRhYmluZGV4PScxJyAgIC8+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzInIGNsYXNzPSdnZmllbGQgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93JyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMjNfMicgPkxhc3QgTmFtZTxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfMicgaWQ9J2lucHV0XzIzXzInIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nMicgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM18zJyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzMnID5FbWFpbDxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBuYW1lPSdpbnB1dF8zJyBpZD0naW5wdXRfMjNfMycgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgdGFiaW5kZXg9JzMnICAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzUnIGNsYXNzPSdnZmllbGQgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93JyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMjNfNScgPkNvdW50cnk8c3BhbiBjbGFzcz0nZ2ZpZWxkX3JlcXVpcmVkJz4qPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+PHNlbGVjdCBuYW1lPSdpbnB1dF81JyBpZD0naW5wdXRfMjNfNScgb25jaGFuZ2U9J2dmX2FwcGx5X3J1bGVzKDIzLFs0XSk7JyBjbGFzcz0nbWVkaXVtIGdmaWVsZF9zZWxlY3QnIHRhYmluZGV4PSc0JyA+PG9wdGlvbiB2YWx1ZT0nVW5pdGVkIFN0YXRlcycgc2VsZWN0ZWQ9J3NlbGVjdGVkJz5Vbml0ZWQgU3RhdGVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FuYWRhJyA+Q2FuYWRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVW5pdGVkIEtpbmdkb20nID5Vbml0ZWQgS2luZ2RvbTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0F1c3RyYWxpYScgPkF1c3RyYWxpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FmZ2hhbmlzdGFuJyA+QWZnaGFuaXN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbGJhbmlhJyA+QWxiYW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FsZ2VyaWEnID5BbGdlcmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQW1lcmljYW4gU2Ftb2EnID5BbWVyaWNhbiBTYW1vYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FuZG9ycmEnID5BbmRvcnJhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQW5nb2xhJyA+QW5nb2xhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQW50aWd1YSBhbmQgQmFyYnVkYScgPkFudGlndWEgYW5kIEJhcmJ1ZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcmdlbnRpbmEnID5BcmdlbnRpbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcm1lbmlhJyA+QXJtZW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0F1c3RyaWEnID5BdXN0cmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXplcmJhaWphbicgPkF6ZXJiYWlqYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCYWhhbWFzJyA+QmFoYW1hczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JhaHJhaW4nID5CYWhyYWluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmFuZ2xhZGVzaCcgPkJhbmdsYWRlc2g8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCYXJiYWRvcycgPkJhcmJhZG9zPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmVsYXJ1cycgPkJlbGFydXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZWxnaXVtJyA+QmVsZ2l1bTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JlbGl6ZScgPkJlbGl6ZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JlbmluJyA+QmVuaW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZXJtdWRhJyA+QmVybXVkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JodXRhbicgPkJodXRhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JvbGl2aWEnID5Cb2xpdmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQm9zbmlhIGFuZCBIZXJ6ZWdvdmluYScgPkJvc25pYSBhbmQgSGVyemVnb3ZpbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCb3Rzd2FuYScgPkJvdHN3YW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnJhemlsJyA+QnJhemlsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnJ1bmVpJyA+QnJ1bmVpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnVsZ2FyaWEnID5CdWxnYXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0J1cmtpbmEgRmFzbycgPkJ1cmtpbmEgRmFzbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0J1cnVuZGknID5CdXJ1bmRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FtYm9kaWEnID5DYW1ib2RpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NhbWVyb29uJyA+Q2FtZXJvb248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYXBlIFZlcmRlJyA+Q2FwZSBWZXJkZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NheW1hbiBJc2xhbmRzJyA+Q2F5bWFuIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDZW50cmFsIEFmcmljYW4gUmVwdWJsaWMnID5DZW50cmFsIEFmcmljYW4gUmVwdWJsaWM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDaGFkJyA+Q2hhZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NoaWxlJyA+Q2hpbGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDaGluYScgPkNoaW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29sb21iaWEnID5Db2xvbWJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbW9yb3MnID5Db21vcm9zPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29uZ28sIERlbW9jcmF0aWMgUmVwdWJsaWMgb2YgdGhlJyA+Q29uZ28sIERlbW9jcmF0aWMgUmVwdWJsaWMgb2YgdGhlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29uZ28sIFJlcHVibGljIG9mIHRoZScgPkNvbmdvLCBSZXB1YmxpYyBvZiB0aGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb3N0YSBSaWNhJyA+Q29zdGEgUmljYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Mmb2NpcmM7dGUgZCYjMDM5O0l2b2lyZScgPkMmb2NpcmM7dGUgZCYjMDM5O0l2b2lyZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Nyb2F0aWEnID5Dcm9hdGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3ViYScgPkN1YmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDeXBydXMnID5DeXBydXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDemVjaCBSZXB1YmxpYycgPkN6ZWNoIFJlcHVibGljPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRGVubWFyaycgPkRlbm1hcms8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdEamlib3V0aScgPkRqaWJvdXRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRG9taW5pY2EnID5Eb21pbmljYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0RvbWluaWNhbiBSZXB1YmxpYycgPkRvbWluaWNhbiBSZXB1YmxpYzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Vhc3QgVGltb3InID5FYXN0IFRpbW9yPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRWN1YWRvcicgPkVjdWFkb3I8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFZ3lwdCcgPkVneXB0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRWwgU2FsdmFkb3InID5FbCBTYWx2YWRvcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VxdWF0b3JpYWwgR3VpbmVhJyA+RXF1YXRvcmlhbCBHdWluZWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFcml0cmVhJyA+RXJpdHJlYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VzdG9uaWEnID5Fc3RvbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRXRoaW9waWEnID5FdGhpb3BpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ZpamknID5GaWppPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRmlubGFuZCcgPkZpbmxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdGcmFuY2UnID5GcmFuY2U8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHYWJvbicgPkdhYm9uPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2FtYmlhJyA+R2FtYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2VvcmdpYScgPkdlb3JnaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHZXJtYW55JyA+R2VybWFueTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0doYW5hJyA+R2hhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHcmVlY2UnID5HcmVlY2U8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHcmVlbmxhbmQnID5HcmVlbmxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHcmVuYWRhJyA+R3JlbmFkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0d1YW0nID5HdWFtPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VhdGVtYWxhJyA+R3VhdGVtYWxhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VpbmVhJyA+R3VpbmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VpbmVhLUJpc3NhdScgPkd1aW5lYS1CaXNzYXU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHdXlhbmEnID5HdXlhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdIYWl0aScgPkhhaXRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSG9uZHVyYXMnID5Ib25kdXJhczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0hvbmcgS29uZycgPkhvbmcgS29uZzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0h1bmdhcnknID5IdW5nYXJ5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSWNlbGFuZCcgPkljZWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJbmRpYScgPkluZGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSW5kb25lc2lhJyA+SW5kb25lc2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXJhbicgPklyYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJcmFxJyA+SXJhcTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lyZWxhbmQnID5JcmVsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXNyYWVsJyA+SXNyYWVsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXRhbHknID5JdGFseTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0phbWFpY2EnID5KYW1haWNhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSmFwYW4nID5KYXBhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0pvcmRhbicgPkpvcmRhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0themFraHN0YW4nID5LYXpha2hzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS2VueWEnID5LZW55YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0tpcmliYXRpJyA+S2lyaWJhdGk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J0aCBLb3JlYScgPk5vcnRoIEtvcmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU291dGggS29yZWEnID5Tb3V0aCBLb3JlYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0t1d2FpdCcgPkt1d2FpdDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0t5cmd5enN0YW4nID5LeXJneXpzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGFvcycgPkxhb3M8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMYXR2aWEnID5MYXR2aWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMZWJhbm9uJyA+TGViYW5vbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xlc290aG8nID5MZXNvdGhvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGliZXJpYScgPkxpYmVyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMaWJ5YScgPkxpYnlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGllY2h0ZW5zdGVpbicgPkxpZWNodGVuc3RlaW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMaXRodWFuaWEnID5MaXRodWFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMdXhlbWJvdXJnJyA+THV4ZW1ib3VyZzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hY2Vkb25pYScgPk1hY2Vkb25pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hZGFnYXNjYXInID5NYWRhZ2FzY2FyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFsYXdpJyA+TWFsYXdpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFsYXlzaWEnID5NYWxheXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbGRpdmVzJyA+TWFsZGl2ZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWxpJyA+TWFsaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbHRhJyA+TWFsdGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYXJzaGFsbCBJc2xhbmRzJyA+TWFyc2hhbGwgSXNsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hdXJpdGFuaWEnID5NYXVyaXRhbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWF1cml0aXVzJyA+TWF1cml0aXVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWV4aWNvJyA+TWV4aWNvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWljcm9uZXNpYScgPk1pY3JvbmVzaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb2xkb3ZhJyA+TW9sZG92YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vbmFjbycgPk1vbmFjbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vbmdvbGlhJyA+TW9uZ29saWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb250ZW5lZ3JvJyA+TW9udGVuZWdybzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vcm9jY28nID5Nb3JvY2NvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW96YW1iaXF1ZScgPk1vemFtYmlxdWU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNeWFubWFyJyA+TXlhbm1hcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05hbWliaWEnID5OYW1pYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmF1cnUnID5OYXVydTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05lcGFsJyA+TmVwYWw8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXRoZXJsYW5kcycgPk5ldGhlcmxhbmRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV3IFplYWxhbmQnID5OZXcgWmVhbGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05pY2FyYWd1YScgPk5pY2FyYWd1YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05pZ2VyJyA+TmlnZXI8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaWdlcmlhJyA+TmlnZXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcndheScgPk5vcndheTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcnRoZXJuIE1hcmlhbmEgSXNsYW5kcycgPk5vcnRoZXJuIE1hcmlhbmEgSXNsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J09tYW4nID5PbWFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFraXN0YW4nID5QYWtpc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BhbGF1JyA+UGFsYXU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYWxlc3RpbmUnID5QYWxlc3RpbmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYW5hbWEnID5QYW5hbWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYXB1YSBOZXcgR3VpbmVhJyA+UGFwdWEgTmV3IEd1aW5lYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BhcmFndWF5JyA+UGFyYWd1YXk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQZXJ1JyA+UGVydTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BoaWxpcHBpbmVzJyA+UGhpbGlwcGluZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQb2xhbmQnID5Qb2xhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQb3J0dWdhbCcgPlBvcnR1Z2FsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUHVlcnRvIFJpY28nID5QdWVydG8gUmljbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1FhdGFyJyA+UWF0YXI8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSb21hbmlhJyA+Um9tYW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1J1c3NpYScgPlJ1c3NpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1J3YW5kYScgPlJ3YW5kYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhaW50IEtpdHRzIGFuZCBOZXZpcycgPlNhaW50IEtpdHRzIGFuZCBOZXZpczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhaW50IEx1Y2lhJyA+U2FpbnQgTHVjaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBWaW5jZW50IGFuZCB0aGUgR3JlbmFkaW5lcycgPlNhaW50IFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2Ftb2EnID5TYW1vYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhbiBNYXJpbm8nID5TYW4gTWFyaW5vPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2FvIFRvbWUgYW5kIFByaW5jaXBlJyA+U2FvIFRvbWUgYW5kIFByaW5jaXBlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2F1ZGkgQXJhYmlhJyA+U2F1ZGkgQXJhYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2VuZWdhbCcgPlNlbmVnYWw8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTZXJiaWEgYW5kIE1vbnRlbmVncm8nID5TZXJiaWEgYW5kIE1vbnRlbmVncm88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTZXljaGVsbGVzJyA+U2V5Y2hlbGxlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NpZXJyYSBMZW9uZScgPlNpZXJyYSBMZW9uZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NpbmdhcG9yZScgPlNpbmdhcG9yZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Nsb3Zha2lhJyA+U2xvdmFraWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTbG92ZW5pYScgPlNsb3ZlbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU29sb21vbiBJc2xhbmRzJyA+U29sb21vbiBJc2xhbmRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU29tYWxpYScgPlNvbWFsaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb3V0aCBBZnJpY2EnID5Tb3V0aCBBZnJpY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTcGFpbicgPlNwYWluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3JpIExhbmthJyA+U3JpIExhbmthPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3VkYW4nID5TdWRhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N1ZGFuLCBTb3V0aCcgPlN1ZGFuLCBTb3V0aDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N1cmluYW1lJyA+U3VyaW5hbWU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2F6aWxhbmQnID5Td2F6aWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2VkZW4nID5Td2VkZW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2l0emVybGFuZCcgPlN3aXR6ZXJsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3lyaWEnID5TeXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RhaXdhbicgPlRhaXdhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RhamlraXN0YW4nID5UYWppa2lzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVGFuemFuaWEnID5UYW56YW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RoYWlsYW5kJyA+VGhhaWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUb2dvJyA+VG9nbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RvbmdhJyA+VG9uZ2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUcmluaWRhZCBhbmQgVG9iYWdvJyA+VHJpbmlkYWQgYW5kIFRvYmFnbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1bmlzaWEnID5UdW5pc2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHVya2V5JyA+VHVya2V5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHVya21lbmlzdGFuJyA+VHVya21lbmlzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHV2YWx1JyA+VHV2YWx1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVWdhbmRhJyA+VWdhbmRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVWtyYWluZScgPlVrcmFpbmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdVbml0ZWQgQXJhYiBFbWlyYXRlcycgPlVuaXRlZCBBcmFiIEVtaXJhdGVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVXJ1Z3VheScgPlVydWd1YXk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdVemJla2lzdGFuJyA+VXpiZWtpc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZhbnVhdHUnID5WYW51YXR1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmF0aWNhbiBDaXR5JyA+VmF0aWNhbiBDaXR5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmVuZXp1ZWxhJyA+VmVuZXp1ZWxhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmlldG5hbScgPlZpZXRuYW08L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWaXJnaW4gSXNsYW5kcywgQnJpdGlzaCcgPlZpcmdpbiBJc2xhbmRzLCBCcml0aXNoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVmlyZ2luIElzbGFuZHMsIFUuUy4nID5WaXJnaW4gSXNsYW5kcywgVS5TLjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1llbWVuJyA+WWVtZW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdaYW1iaWEnID5aYW1iaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdaaW1iYWJ3ZScgPlppbWJhYndlPC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzQnIGNsYXNzPSdnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM180JyA+U3RhdGU8L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxzZWxlY3QgbmFtZT0naW5wdXRfNCcgaWQ9J2lucHV0XzIzXzQnICBjbGFzcz0nbWVkaXVtIGdmaWVsZF9zZWxlY3QnIHRhYmluZGV4PSc1JyA+PG9wdGlvbiB2YWx1ZT0nQWxhYmFtYScgPkFsYWJhbWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbGFza2EnID5BbGFza2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcml6b25hJyA+QXJpem9uYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Fya2Fuc2FzJyA+QXJrYW5zYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYWxpZm9ybmlhJyA+Q2FsaWZvcm5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbG9yYWRvJyA+Q29sb3JhZG88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb25uZWN0aWN1dCcgPkNvbm5lY3RpY3V0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRGVsYXdhcmUnID5EZWxhd2FyZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Rpc3RyaWN0IG9mIENvbHVtYmlhJyA+RGlzdHJpY3Qgb2YgQ29sdW1iaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdGbG9yaWRhJyA+RmxvcmlkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dlb3JnaWEnID5HZW9yZ2lhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSGF3YWlpJyA+SGF3YWlpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSWRhaG8nID5JZGFobzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lsbGlub2lzJyA+SWxsaW5vaXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJbmRpYW5hJyA+SW5kaWFuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lvd2EnID5Jb3dhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS2Fuc2FzJyA+S2Fuc2FzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS2VudHVja3knID5LZW50dWNreTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xvdWlzaWFuYScgPkxvdWlzaWFuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01haW5lJyA+TWFpbmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYXJ5bGFuZCcgPk1hcnlsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFzc2FjaHVzZXR0cycgPk1hc3NhY2h1c2V0dHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNaWNoaWdhbicgPk1pY2hpZ2FuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWlubmVzb3RhJyA+TWlubmVzb3RhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWlzc2lzc2lwcGknID5NaXNzaXNzaXBwaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01pc3NvdXJpJyA+TWlzc291cmk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb250YW5hJyA+TW9udGFuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05lYnJhc2thJyA+TmVicmFza2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXZhZGEnID5OZXZhZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXcgSGFtcHNoaXJlJyA+TmV3IEhhbXBzaGlyZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05ldyBKZXJzZXknID5OZXcgSmVyc2V5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmV3IE1leGljbycgPk5ldyBNZXhpY288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXcgWW9yaycgPk5ldyBZb3JrPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTm9ydGggQ2Fyb2xpbmEnID5Ob3J0aCBDYXJvbGluYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcnRoIERha290YScgPk5vcnRoIERha290YTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J09oaW8nID5PaGlvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nT2tsYWhvbWEnID5Pa2xhaG9tYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J09yZWdvbicgPk9yZWdvbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Blbm5zeWx2YW5pYScgPlBlbm5zeWx2YW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Job2RlIElzbGFuZCcgPlJob2RlIElzbGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvdXRoIENhcm9saW5hJyA+U291dGggQ2Fyb2xpbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb3V0aCBEYWtvdGEnID5Tb3V0aCBEYWtvdGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUZW5uZXNzZWUnID5UZW5uZXNzZWU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUZXhhcycgPlRleGFzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVXRhaCcgPlV0YWg8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWZXJtb250JyA+VmVybW9udDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZpcmdpbmlhJyA+VmlyZ2luaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdXYXNoaW5ndG9uJyA+V2FzaGluZ3Rvbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1dlc3QgVmlyZ2luaWEnID5XZXN0IFZpcmdpbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nV2lzY29uc2luJyA+V2lzY29uc2luPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nV3lvbWluZycgPld5b21pbmc8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcm1lZCBGb3JjZXMgQW1lcmljYXMnID5Bcm1lZCBGb3JjZXMgQW1lcmljYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBcm1lZCBGb3JjZXMgRXVyb3BlJyA+QXJtZWQgRm9yY2VzIEV1cm9wZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FybWVkIEZvcmNlcyBQYWNpZmljJyA+QXJtZWQgRm9yY2VzIFBhY2lmaWM8L29wdGlvbj48L3NlbGVjdD48L2Rpdj48L2xpPjxsaSBpZD0nZmllbGRfMjNfNicgY2xhc3M9J2dmaWVsZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzYnID5QaG9uZTwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lcic+PGlucHV0IG5hbWU9J2lucHV0XzYnIGlkPSdpbnB1dF8yM182JyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyBjbGFzcz0nbWVkaXVtJyB0YWJpbmRleD0nNicgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8yM183JyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdycgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzIzXzcnID5Db21wYW55PHNwYW4gY2xhc3M9J2dmaWVsZF9yZXF1aXJlZCc+Kjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxpbnB1dCBuYW1lPSdpbnB1dF83JyBpZD0naW5wdXRfMjNfNycgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgIHRhYmluZGV4PSc3JyAgIC8+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzIzXzgnIGNsYXNzPSdnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8yM184JyA+Sm9iIFRpdGxlPC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfOCcgaWQ9J2lucHV0XzIzXzgnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nOCcgICAvPjwvZGl2PjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2dmb3JtX2Zvb3RlciB0b3BfbGFiZWwnPiA8aW5wdXQgdHlwZT0nc3VibWl0JyBpZD0nZ2Zvcm1fc3VibWl0X2J1dHRvbl8yMycgY2xhc3M9J2dmb3JtX2J1dHRvbiBidXR0b24nIHZhbHVlPSdSZWdpc3RlciBOb3chJyB0YWJpbmRleD0nOScgb25jbGljaz0naWYod2luZG93WyJnZl9zdWJtaXR0aW5nXzIzIl0pe3JldHVybiBmYWxzZTt9ICB3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMjMiXT10cnVlOyAgJyAvPiA8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdnZm9ybV9hamF4JyB2YWx1ZT0nZm9ybV9pZD0yMyZhbXA7dGl0bGU9JmFtcDtkZXNjcmlwdGlvbj0mYW1wO3RhYmluZGV4PTEnIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2lzX3N1Ym1pdF8yMycgdmFsdWU9JzEnIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2dmb3JtX3N1Ym1pdCcgdmFsdWU9JzIzJyAvPgogICAgICAgICAgICAKICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fdW5pcXVlX2lkJyB2YWx1ZT0nJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdzdGF0ZV8yMycgdmFsdWU9J1d5SmJYU0lzSW1OaE9EVTNZbVl3TURZd05EY3dNVGxqTW1FeU1qQTJOR1poWkRBd056QTFJbDA9JyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMjMnIGlkPSdnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMjMnIHZhbHVlPScwJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfMjMnIGlkPSdnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfMjMnIHZhbHVlPScxJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdnZm9ybV9maWVsZF92YWx1ZXMnIHZhbHVlPScnIC8+CiAgICAgICAgICAgIAogICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGlmcmFtZSBzdHlsZT0nZGlzcGxheTpub25lO3dpZHRoOjBweDtoZWlnaHQ6MHB4Oycgc3JjPSdhYm91dDpibGFuaycgbmFtZT0nZ2Zvcm1fYWpheF9mcmFtZV8yMycgaWQ9J2dmb3JtX2FqYXhfZnJhbWVfMjMnPjwvaWZyYW1lPgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPmpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCl7Z2Zvcm1Jbml0U3Bpbm5lciggMjMsICdodHRwOi8vd3d3LnZpcnR1YWxpemF0aW9uc29mdHdhcmUuY29tL3dwLWNvbnRlbnQvcGx1Z2lucy9ncmF2aXR5Zm9ybXMvaW1hZ2VzL3NwaW5uZXIuZ2lmJyApO2pRdWVyeSgnI2dmb3JtX2FqYXhfZnJhbWVfMjMnKS5sb2FkKCBmdW5jdGlvbigpe3ZhciBjb250ZW50cyA9IGpRdWVyeSh0aGlzKS5jb250ZW50cygpLmZpbmQoJyonKS5odG1sKCk7dmFyIGlzX3Bvc3RiYWNrID0gY29udGVudHMuaW5kZXhPZignR0ZfQUpBWF9QT1NUQkFDSycpID49IDA7aWYoIWlzX3Bvc3RiYWNrKXtyZXR1cm47fXZhciBmb3JtX2NvbnRlbnQgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcjZ2Zvcm1fd3JhcHBlcl8yMycpO3ZhciBpc19jb25maXJtYXRpb24gPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcjZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXJfMjMnKS5sZW5ndGggPiAwO3ZhciBpc19yZWRpcmVjdCA9IGNvbnRlbnRzLmluZGV4T2YoJ2dmb3JtUmVkaXJlY3QoKXsnKSA+PSAwO3ZhciBpc19mb3JtID0gZm9ybV9jb250ZW50Lmxlbmd0aCA+IDAgJiYgISBpc19yZWRpcmVjdCAmJiAhIGlzX2NvbmZpcm1hdGlvbjtpZihpc19mb3JtKXtqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzIzJykuaHRtbChmb3JtX2NvbnRlbnQuaHRtbCgpKTtzZXRUaW1lb3V0KCBmdW5jdGlvbigpIHsgLyogZGVsYXkgdGhlIHNjcm9sbCBieSA1MCBtaWxsaXNlY29uZHMgdG8gZml4IGEgYnVnIGluIGNocm9tZSAqLyBqUXVlcnkoZG9jdW1lbnQpLnNjcm9sbFRvcChqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzIzJykub2Zmc2V0KCkudG9wKTsgfSwgNTAgKTtpZih3aW5kb3dbJ2dmb3JtSW5pdERhdGVwaWNrZXInXSkge2dmb3JtSW5pdERhdGVwaWNrZXIoKTt9aWYod2luZG93WydnZm9ybUluaXRQcmljZUZpZWxkcyddKSB7Z2Zvcm1Jbml0UHJpY2VGaWVsZHMoKTt9dmFyIGN1cnJlbnRfcGFnZSA9IGpRdWVyeSgnI2dmb3JtX3NvdXJjZV9wYWdlX251bWJlcl8yMycpLnZhbCgpO2dmb3JtSW5pdFNwaW5uZXIoIDIzLCAnaHR0cDovL3d3dy52aXJ0dWFsaXphdGlvbnNvZnR3YXJlLmNvbS93cC1jb250ZW50L3BsdWdpbnMvZ3Jhdml0eWZvcm1zL2ltYWdlcy9zcGlubmVyLmdpZicgKTtqUXVlcnkoZG9jdW1lbnQpLnRyaWdnZXIoJ2dmb3JtX3BhZ2VfbG9hZGVkJywgWzIzLCBjdXJyZW50X3BhZ2VdKTt3aW5kb3dbJ2dmX3N1Ym1pdHRpbmdfMjMnXSA9IGZhbHNlO31lbHNlIGlmKCFpc19yZWRpcmVjdCl7dmFyIGNvbmZpcm1hdGlvbl9jb250ZW50ID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnI2dmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZV8yMycpLmh0bWwoKTtpZighY29uZmlybWF0aW9uX2NvbnRlbnQpe2NvbmZpcm1hdGlvbl9jb250ZW50ID0gY29udGVudHM7fXNldFRpbWVvdXQoZnVuY3Rpb24oKXtqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzIzJykucmVwbGFjZVdpdGgoJzwnICsgJ2RpdiBpZD1cJ2dmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZV8yM1wnIGNsYXNzPVwnZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2VfMjMgZ2Zvcm1zX2NvbmZpcm1hdGlvbl9tZXNzYWdlXCcnICsgJz4nICsgY29uZmlybWF0aW9uX2NvbnRlbnQgKyAnPCcgKyAnL2RpdicgKyAnPicpO2pRdWVyeShkb2N1bWVudCkuc2Nyb2xsVG9wKGpRdWVyeSgnI2dmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZV8yMycpLm9mZnNldCgpLnRvcCk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9jb25maXJtYXRpb25fbG9hZGVkJywgWzIzXSk7d2luZG93WydnZl9zdWJtaXR0aW5nXzIzJ10gPSBmYWxzZTt9LCA1MCk7fWVsc2V7alF1ZXJ5KCcjZ2Zvcm1fMjMnKS5hcHBlbmQoY29udGVudHMpO2lmKHdpbmRvd1snZ2Zvcm1SZWRpcmVjdCddKSB7Z2Zvcm1SZWRpcmVjdCgpO319alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wb3N0X3JlbmRlcicsIFsyMywgY3VycmVudF9wYWdlXSk7fSApO30gKTs8L3NjcmlwdD48c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+IGlmKHR5cGVvZiBnZl9nbG9iYWwgPT0gJ3VuZGVmaW5lZCcpIHZhciBnZl9nbG9iYWwgPSB7ImdmX2N1cnJlbmN5X2NvbmZpZyI6eyJuYW1lIjoiVS5TLiBEb2xsYXIiLCJzeW1ib2xfbGVmdCI6IiQiLCJzeW1ib2xfcmlnaHQiOiIiLCJzeW1ib2xfcGFkZGluZyI6IiIsInRob3VzYW5kX3NlcGFyYXRvciI6IiwiLCJkZWNpbWFsX3NlcGFyYXRvciI6Ii4iLCJkZWNpbWFscyI6Mn0sImJhc2VfdXJsIjoiaHR0cDpcL1wvd3d3LnZpcnR1YWxpemF0aW9uc29mdHdhcmUuY29tXC93cC1jb250ZW50XC9wbHVnaW5zXC9ncmF2aXR5Zm9ybXMiLCJudW1iZXJfZm9ybWF0cyI6W10sInNwaW5uZXJVcmwiOiJodHRwOlwvXC93d3cudmlydHVhbGl6YXRpb25zb2Z0d2FyZS5jb21cL3dwLWNvbnRlbnRcL3BsdWdpbnNcL2dyYXZpdHlmb3Jtc1wvaW1hZ2VzXC9zcGlubmVyLmdpZiJ9O2pRdWVyeShkb2N1bWVudCkuYmluZCgnZ2Zvcm1fcG9zdF9yZW5kZXInLCBmdW5jdGlvbihldmVudCwgZm9ybUlkLCBjdXJyZW50UGFnZSl7aWYoZm9ybUlkID09IDIzKSB7aWYod2luZG93WydqUXVlcnknXSl7aWYoIXdpbmRvd1snZ2ZfZm9ybV9jb25kaXRpb25hbF9sb2dpYyddKXdpbmRvd1snZ2ZfZm9ybV9jb25kaXRpb25hbF9sb2dpYyddID0gbmV3IEFycmF5KCk7d2luZG93WydnZl9mb3JtX2NvbmRpdGlvbmFsX2xvZ2ljJ11bMjNdID0geydsb2dpYycgOiB7NDogeyJmaWVsZCI6eyJhY3Rpb25UeXBlIjoiaGlkZSIsImxvZ2ljVHlwZSI6ImFsbCIsInJ1bGVzIjpbeyJmaWVsZElkIjoiNSIsIm9wZXJhdG9yIjoiaXNub3QiLCJ2YWx1ZSI6IlVuaXRlZCBTdGF0ZXMifV19LCJuZXh0QnV0dG9uIjpudWxsLCJzZWN0aW9uIjpudWxsfSB9LCAnZGVwZW5kZW50cycgOiB7NDogWzRdIH0sICdhbmltYXRpb24nIDogMCAsICdkZWZhdWx0cycgOiB7IjUiOiJVbml0ZWQgU3RhdGVzIn0gfTsgaWYoIXdpbmRvd1snZ2ZfbnVtYmVyX2Zvcm1hdCddKXdpbmRvd1snZ2ZfbnVtYmVyX2Zvcm1hdCddID0gJ2RlY2ltYWxfZG90JztqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7Z2ZfYXBwbHlfcnVsZXMoMjMsIFs0XSwgdHJ1ZSk7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8yMycpLnNob3coKTtqUXVlcnkoZG9jdW1lbnQpLnRyaWdnZXIoJ2dmb3JtX3Bvc3RfY29uZGl0aW9uYWxfbG9naWMnLCBbMjMsIG51bGwsIHRydWVdKTt9ICk7fSBnZm9ybUluaXRDaG9zZW5GaWVsZHMoJyNpbnB1dF8yM181LCNpbnB1dF8yM180JywnTm8gcmVzdWx0cyBtYXRjaGVkJyk7fSB9ICk7alF1ZXJ5KGRvY3VtZW50KS5iaW5kKCdnZm9ybV9wb3N0X2NvbmRpdGlvbmFsX2xvZ2ljJywgZnVuY3Rpb24oZXZlbnQsIGZvcm1JZCwgZmllbGRzLCBpc0luaXQpe2dmb3JtSW5pdENob3NlbkZpZWxkcygnI2lucHV0XzIzXzUsI2lucHV0XzIzXzQnLCdObyByZXN1bHRzIG1hdGNoZWQnKTt9ICk7PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPiBqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wb3N0X3JlbmRlcicsIFsyMywgMV0pIH0gKTsgPC9zY3JpcHQ+