HDR Expose Review

HDR Expose Review

Posted on 17. Jul, 2010 by Terry Reinert in Photography, Reviews, Software

In March of 2009 I wrote a review on a new HDR application released by Unified Color called HDR PhotoStudio. HDR PhotoStudio offered many new features that were not present in other HDR processing applications. Last week the scientists and engineers at Unified Color upped the ante again by releasing their next generation HDR processing application that takes the features of HDR PhotoStudio to a whole new level. While this is a new application, there is a lot of overlap with HDR PhotoStudio in terms of features. However, I’ve found that many of the features are better and faster in HDR Expose. Is there a big enough difference to justify launching a new product name instead of an incremental update release? I believe so and after using the application yourself I think you’ll agree with me. Let’s dig in…

User Interface

HDR Expose offers a completely new user interface for processing HDR images. The right hand side of the main application window contains the Brightness Histogram and Operations panels. The brightness histogram shows a histogram of the image brightness along with an indication of the visible range of the image and the values for common image components like RGB values. The operations panel contains icons for all of the tools that you can use to process your application as well as an editable working history of all the operations you have performed. I will go into greater detail on the editable working history later in this review as I find it to be one of the best features this application has to offer.

Merging to HDR

HDR Expose has a standard dialog for merging images into an HDR image. It gives you the options to select the files you want to merge and settings for aligning the images, setting the white balance, and reducing ghosting artifacts. One of the problems I have found with just about all HDR processing applications is that their merging algorithms aren’t as good as the algorithms contained in Adobe Photoshop. I’ve also found that none of the anti-ghosting algorithms work very well although Adobe Photoshop CS5 is pretty good. While HDR Expose’s merge and anti-ghosting algorithms are pretty good compared with other popular HDR applications on the market, I think more work could be done in these areas.

Processing Operations

HDR Expose offers the same processing operations as HDR PhotoStudio but in a more evolved form. I found that all of the operations are faster than before especially the Halo Reduction features. Some of the UI dialogs for the various operations have been improved upon and are easier to use and easier to get the settings that you want. The series of screen shots below are of various operation dialogs as I applied them to an HDR image.

The first image shows the Free Rotate operation which allows you align the image to a line that you draw on the image. This makes rotating an image to make an uneven horizon perfectly horizontal very easy!

The second image shows the Brightness and Contrast operation. This dialog gives you the option to use the eye droppers for automatic adjustment of these two settings and the sliders that you can use for manual control over them. Additionally, deselecting the Keep Local Contrast box as seen in this screen shot allows you to adjust the local contrast independently of the contrast power.

The third image shows the Shadow and Highlight operation. Similar to the operation dialog above, this one gives you the eye dropper and the sliders so that you can determine how much control you want over these settings. This dialog lets you adjust the mid-tone point, highlight power, shadow power, local contrast, and halo reduction settings. When I first used the Halo Reduction feature in HDR PhotoStudio I was absolutely amazed at how powerful it was. I must say they made it better in HDR Expose with increased settings and increased accuracy. I’ve noticed that I can set this a lot higher without decreasing the quality of the image around the edges where the algorithm is reducing the halos. Its fast, its powerful, and it is mandatory for any HDR processing application!

The fourth image shows the Saturation dialog box. This dialog breaks out the various color channels for individual saturation adjustments as well as a  combined saturation slider and a hue slider. Having this level of control over the saturation of the image is extremely helpful especially since I have noticed that a great deal of my images could out of the merge a bit too desaturated. So I spend a few minutes in the saturation operation tweaking the image to get back to the colors that I remember seeing in the field.

In addition to these operations, there are also operations for image rotation, image resize, image cropping, noise elimination, veiling glare, white balance, color tuning, and sharpness. Each operation does exactly as it says. The color tuning operation is an advanced operation that gives you complete control of how colors appear in the image. Additionally, there is a dynamic range mapping wizard that will perform an automated range mapping on the image to give you a starting point if you so desire.

Editable Working History

As you process the image using the different operations the panel below the operation icons stores each one in chronological order. This is the history of all the operations that you’ve performed. At any time you can go back to any one of these and change the settings without losing any of the operations you’ve done since that point. In the screen shots below you can see the history (left) and the editing of an operation within the history (right). Notice how the operations below the operation I changed are grayed out (right screen shot). This indicates that those operations have not been applied to the image yet after making your change. Once you click on the bottom operation in the list, all those operations are applied showing you the processed image up to that point with your changes applied.

Recipes

I’ve never been one to use presets or recipes because I don’t think I have ever processed two images, even very similar ones, with the same settings. But with the editable working history in HDR Expose, I decided to give it a shot. I processed the first barn image (left screen shots above) and saved the recipe for it. Then I created a new HDR image of the same barn from a different angle and applied the recipe I created from the first one to it (right screen show above). With those settings it was looking pretty good but not exactly how I wanted it. So I went back into the history, made a few slight changes, and was done. Quick, easy, and I got the end result I wanted in much less time (below screen shot).

File Handling

HDR Expose handles a wide range of image types; JPEG, TIFF, RAW, HDR, BEF, and EXR to name a few. If you are not familiar with HDR PhotoStudio, BEF is the file format that Unified Color invented to hold the true color of the scene without any loss of details. Think of it like a RAW file but with more data with little size increase. Based on images taken with my Canon 5D, a RAW file is roughly 12.9MB and saving an HDR image out of Adobe Photoshop in Radiance (.hdr) or TIFF format is roughly 38MB. Using the BEF format from HDR Expose gives an 18MB file. More data and better compression means photographers can store their images without having to buy more hard drives!

OpenCL

HDR Expose implements an emerging technology called OpenCL or Open Computing Language. This is a framework for writing programs that execute across heterogeneous platforms consisting of CPU’s, GPU’s, and other processors. In other words, it allows applications to distribute their processing to your computers CPU and GPU to speed up their operations. OpenCL was initially developed by Apple and refined into a proposal in collaboration with AMD, IBM, Intel, and Nvidia. Throughout 2009 and 2010 graphics card or processor manufacturers have been adding OpenCL to their hardware and software. While this is really nothing for an HDR Expose user to know about, it is good to see that the application is staying at the forefront of distributed processing technology.

Conclusion

What more can I really say about HDR Expose? Its awesome! Unified Color has come a long way with their technology in the last year and they are definitely have a power house HDR processing application for those that want the highest level of quality in their photographs. The color quality in HDR Expose rivals every other HDR processing application on the market to include Adobe Photoshop CS5! The application truly is simple to use and produces great results. It will definitely remain in my HDR work flow for a long time to come.

Without a doubt Unified Color has changed the HDR game with the release of HDR Expose.

Free Trial & Discount

Don’t take my word for it, try it out for yourself. Unified Color is offering a 30-day free trial and a limited time $50 discount if you purchase a license before July 31st. In addition, use the coupon code TKRPHOTO to get an additional discount off the full price of the software. Click here to go to Unified Colors Website

Note that licensed users of HDR PhotoStudio get a free upgrade to HDR Expose!!

Thoughts?

I am interested in hearing what you all think about HDR Expose, how it compares with other HDR processing applications, and anything else you feel is important about it. Drop a comment and let your voice be heard!

Related posts:

  1. HDR Expose Is Out!!
  2. HDR PhotoStudio Review Follow Up
  3. Photoshop CS5 HDR Pro
  4. HDR PhotoStudio Review
  5. HDR PhotoStudio 2.12 Released

Tags: , , , , , , , ,

6 Tweets

18 Responses to “HDR Expose Review”

  1. Karl-Franz

    17. Jul, 2010

    Nice review, Terry. However, did you know that your coupon code is valid for a whopping discount of 1 penny!

    I clicked on your link and in the shopping cart, the total was $99—which is their limited time promotion price. Once I entered your code, the price remained the same, but the top of the shopping cart stated:

    “A coupon discount of $0.01 will be deducted from your order total at checkout.”

    You may want to have a chat with them about this.

    Reply to this comment
    • Terry Reinert

      17. Jul, 2010

      The discount code doesn’t take anything additional off right now because they are running the $50 off special until July 31st. After that the discount code will give a 20% discount off the full price of $149. However, even though the code doesn’t give an additional discount during the July promotion, it does count towards my affiliate account with them. So I am still hoping that people use the code even though it is only a 0.01 discount for its use until the end of this month. Good catch though… that is pretty funny!!

      Reply to this comment   More from author
  2. Carsten

    19. Jul, 2010

    Thanks for the great review. I was exited when HDR expose got released and using it since a few days.
    So far I am very impressed with its user interface and esp. its predictable results. I have tried Photomatrix and Hydra in the past and found it difficult to understand the parameters. They have way too many knobs that do similar things.
    HDR Expose on the other hand seems straight forward and the new histogram is super. It took me a while to understand the “History” but now I love it.
    HDR Expose has found a place in my workflow, esp. because of the more precise color representation when converting from RAW to TIFF.

    I wish it had these improvements:
    - Allow a fine control of moving the sliders. Like in Aperture. Show the absolute value as editable number with +/- buttons.

    - Highlight/Shadow alerts. Show areas of same brightness in picture. Possible when clicking in histogram.

    - Allow the histogram to be edited. Like moving the visible range, etc.

    A question. Have you tried using HDR Expose for converting a color image to B+W? Do you have any hints how to go about it?

    Reply to this comment
    • David

      19. Jul, 2010

      Carsten-

      To convert to B+W in HDR Expose, after you are done processing your image, click the small arrow next to the B/W button on the bottom left corner of the main window, and choose “Grayscale”. You can toggle the effect on and off with that B/W button.

      - David

      Reply to this comment
    • Terry Reinert

      20. Jul, 2010

      Hi Carsten,

      As David posted, use the icon in the bottom left of the screen to do the conversion. There are also other presets under there as well that you can play with. I played around with them during my review and, in hindsight, should have written something about them. But seeing as how I would use Photoshop or Lightroom to do those kind of modifications to the image after the HDR process I don’t think I will use them. Of course, with Unified Color’s better handling of color, it might be better to do the B&W conversion in HDR Expose. I might have to do some comparisons in the near future!

      Terry

      Reply to this comment   More from author
  3. UnifiedColor

    19. Jul, 2010

    Terry Reinert’s thorough and in-depth review of HDR Expose http://www.tkrphoto.com/2010/07/hdr-expose-review/…; http://fb.me/BYGPXPVw

    This comment was originally posted on Twitter

    Reply to this comment   More from author
  4. scottwyden

    19. Jul, 2010

    HDR Expose Review | Terry Reinert Photography http://imgry.net/9nonOg

    This comment was originally posted on Twitter

    Reply to this comment   More from author
  5. kbtimages

    19. Jul, 2010

    RT @scottwyden: HDR Expose Review | Terry Reinert Photography http://imgry.net/9nonOg

    This comment was originally posted on Twitter

    Reply to this comment   More from author
  6. UnifiedColor

    19. Jul, 2010

    RT @kbtimages RT @scottwyden: HDR Expose Review | Terry Reinert Photography http://imgry.net/9nonOg

    This comment was originally posted on Twitter

    Reply to this comment   More from author
  7. yusufgunawan

    19. Jul, 2010

    RT @scottwyden: HDR Expose Review | Terry Reinert Photography http://imgry.net/9nonOg

    This comment was originally posted on Twitter

    Reply to this comment   More from author
  8. axelbluhme

    19. Jul, 2010

    RT @UnifiedColor: Terry Reinert’s thorough and in-depth review of HDR Expose http://www.tkrphoto.com/2010/07/hdr-expose-review/…; http://fb.me/BYGPXPVw

    This comment was originally posted on Twitter

    Reply to this comment   More from author
  9. Frederic Medery

    29. Jul, 2010

    Just to let you know that you upload the saturation pic twice instead of one for Brightness and Contrast and another one for the saturation
    Check out Frederic Medery´s last blog post…. Jokulsarlon!!

    Reply to this comment   More from author
  10. Alan Smallbone

    30. Jul, 2010

    Nice review. I have been a happy HDR Photostudio user and I am really happy with HDT Expose. Really powerful and really nice features. It is my favorite HDR program.

    Reply to this comment
  11. Hali

    04. Aug, 2010

    Terry, thanks for the review, I’ve now tried it, love it and bought it. In so many ways it blows photomatix out of the water. Thanks for the great review.

    Reply to this comment
  12. Eric Schurr

    23. Aug, 2010

    i have very much enjoyed the reviews of HDR PhotoStudio and now HDR Expose. i will buy some HDR software in the near future — how does HDR Expose compare to Photomatix, which is the HDR software most commonly talked about?

    Reply to this comment
    • Terry Reinert

      23. Aug, 2010

      Hi Eric,

      Comparing them is like comparing Apples and Oranges. I like to use both. For the images that I want the absolute most realistic result I use HDR Expose. For the images that I want to have the “gritty HDR” look, I use Photomatix. They are both great at what they do so it all boils down to what style of HDR that you want to do.

      Terry

      Reply to this comment   More from author

Leave a Reply

Additional comments powered by BackType

PHVsPjxsaT48c3Ryb25nPndvb19hYm91dF9idXR0b248L3N0cm9uZz4gLSBSZWFkIE1vcmUuLi48L2xpPjxsaT48c3Ryb25nPndvb19hYm91dF9oZWFkZXI8L3N0cm9uZz4gLSBBYm91dCBUZXJyeSBSZWluZXJ0PC9saT48bGk+PHN0cm9uZz53b29fYWJvdXRfcGhvdG88L3N0cm9uZz4gLSBodHRwOi8vZmFybTUuc3RhdGljLmZsaWNrci5jb20vNDA0Ni80MjUyMjAyODY1XzdkZGEyNzNhMTJfcy5qcGc8L2xpPjxsaT48c3Ryb25nPndvb19hYm91dF90ZXh0PC9zdHJvbmc+IC0gVGVycnkgUmVpbmVydCBpcyBhIHBob3RvZ3JhcGhlciBiYXNlZCBvdXQgb2YgTWVsYm91cm5lLCBGbG9yaWRhLiBIZSBzaG9vdHMgYSB3aWRlIHZhcmlldHkgb2YgcGhvdG9ncmFwaGljIHN0eWxlcyBhbmQgaXMgYXZhaWxhYmxlIG9uIGEgbGltaXRlZCBiYXNpcyBmb3IgbW9kZWwgcG9ydGZvbGlvIGRldmVsb3BtZW50LCBjb21tZXJjaWFsIHByb2plY3RzLCBhbmQgZW5nYWdlbWVudCAmIHdlZGRpbmcgZXZlbnRzLjwvbGk+PGxpPjxzdHJvbmc+d29vX2Fkc19yb3RhdGU8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fYWRfMjUwX2Fkc2Vuc2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19hZF8yNTBfaW1hZ2U8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0yNTB4MjUwLmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzI1MF91cmw8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF8zMDBfYWRzZW5zZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzMwMF9pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cucGhvdG9zaG9wdXNlci5jb20vbWVtYmVycy9kb3dubG9hZHMvbmFwcC1yZWZlcnJhbC1iYW5uZXJzL25hcHAtMTYweDYwMC0wNDA4LmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzMwMF91cmw8L3N0cm9uZz4gLSBodHRwOi8vd3d3LnBob3Rvc2hvcHVzZXIuY29tLz9haWQ9cm14dHp0PC9saT48bGk+PHN0cm9uZz53b29fYWRfY29udGVudDwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fYWRfY29udGVudF9hZHNlbnNlPC9zdHJvbmc+IC0gPGEgaHJlZj1cImh0dHA6Ly93d3cucGhvdG9zaG9wdXNlci5jb20vP2FpZD1ybXh0enRcIiB0aXRsZT1cIk15IGxpbmsgdG8gdGhlIE5hdGlvbmFsIEFzc29jaWF0aW9uIG9mIFBob3Rvc2hvcCBQcm9mZXNzaW9uYWxzXCI+PGltZyBzcmM9XCJodHRwOi8vd3d3LnBob3Rvc2hvcHVzZXIuY29tL21lbWJlcnMvZG93bmxvYWRzL25hcHAtcmVmZXJyYWwtYmFubmVycy83Mjh4OTAtcm9ja2V0bWFuLmpwZ1wiIGFsdD1cIldoZXJlIGV2ZXJ5b25lIGxlYXJucyBQaG90b3Nob3AgLSBOYXRpb25hbCBBc3NvY2lhdGlvbiBvZiBQaG90b3Nob3AgUHJvZmVzc2lvbmFsc1wiIC8+PC9hPjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2NvbnRlbnRfZGlzYWJsZTwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19hZF9jb250ZW50X2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy5waG90b3Nob3B1c2VyLmNvbS9tZW1iZXJzL2Rvd25sb2Fkcy9uYXBwLXJlZmVycmFsLWJhbm5lcnMvNzI4eDkwLXJvY2tldG1hbi5qcGc8L2xpPjxsaT48c3Ryb25nPndvb19hZF9jb250ZW50X3VybDwvc3Ryb25nPiAtIGh0dHA6Ly93d3cucGhvdG9zaG9wdXNlci5jb20vP2FpZD1ybXh0enQ8L2xpPjxsaT48c3Ryb25nPndvb19hZF9oZWFkZXI8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2hlYWRlcl9jb2RlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fYWRfaGVhZGVyX2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy80Njh4NjBhLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2hlYWRlcl91cmw8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV8xPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS0xLmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzI8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTIuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfMzwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtMy5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV80PC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS00LmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzU8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTQuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfNjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtNC5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF90b3A8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3RvcF9hZHNlbnNlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fYWRfdG9wX2Rpc2FibGU8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fYWRfdG9wX2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy5waG90b3Nob3B1c2VyLmNvbS9tZW1iZXJzL2Rvd25sb2Fkcy9uYXBwLXJlZmVycmFsLWJhbm5lcnMvNzI4eDkwLXJvY2tldG1hbi5qcGc8L2xpPjxsaT48c3Ryb25nPndvb19hZF90b3BfdXJsPC9zdHJvbmc+IC0gaHR0cDovL3d3dy5waG90b3Nob3B1c2VyLmNvbS8/YWlkPXJteHR6dDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8xPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzI8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfMzwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF80PC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzU8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfNjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FsdF9zdHlsZXNoZWV0PC9zdHJvbmc+IC0gZ3JleS5jc3M8L2xpPjxsaT48c3Ryb25nPndvb19hdXRvX2ltZzwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19ibG9nX2NhdDwvc3Ryb25nPiAtIDM3NzwvbGk+PGxpPjxzdHJvbmc+d29vX2Jsb2dfbmF2aWdhdGlvbjwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19ibG9nX3Blcm1hbGluazwvc3Ryb25nPiAtIC9jYXRlZ29yeS9ibG9nLzwvbGk+PGxpPjxzdHJvbmc+d29vX2Jsb2dfc3VibmF2aWdhdGlvbjwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19idXR0b25fbGluazwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL2Fib3V0PC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8xPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMTIzPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMTIzX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8xMjY8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8xMjZfaW1hZ2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzE5PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMTk2PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMTk2X2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8xOV9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMV9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMjE2PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMjE2X2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8yNTg8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8yNThfaW1hZ2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzI2Mjwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzI2Ml9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzM0MDwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzM0MF9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzcwPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzcwX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8zNzc8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8zNzdfaW1hZ2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzM4MTwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzM4MV9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzgzPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzgzX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8zX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF80PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDE0PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzQxNF9pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNi1TdGFjaWEtMTkuanBnPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF80MTU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDE1X2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy84LUJvc3Rvbi0zNTAtMzUyLUZpbmFsLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDE2PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzQxNl9pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNy1EYW5pZWwtUG9ydHJhaXRzLVdlYi04LmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDE3PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzQxN19pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvOS1NR18xNjIyX0xvUmVzLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDQxPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDQxX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF80X2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF84PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfOF9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9leDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NvbW1lbnRfcG9zdHM8L3N0cm9uZz4gLSBTZWxlY3QgYSBudW1iZXI6PC9saT48bGk+PHN0cm9uZz53b29fY29udGVudDwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jb250ZW50X2FyY2hpdmVzPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jb250ZW50X2ZlYXQ8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2N1c3RvbV9jc3M8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jdXN0b21fZmF2aWNvbjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNC1VU0ZsYWcuaWNvPC9saT48bGk+PHN0cm9uZz53b29fZmVhdHVyZWRfcG9zdHM8L3N0cm9uZz4gLSBTZWxlY3QgYSBudW1iZXI6PC9saT48bGk+PHN0cm9uZz53b29fZmVlZGJ1cm5lcl9pZDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2ZlZWRidXJuZXJfdXJsPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fZ29vZ2xlX2FuYWx5dGljczwvc3Ryb25nPiAtIDxzY3JpcHQgdHlwZT1cInRleHQvamF2YXNjcmlwdFwiPg0KdmFyIGdhSnNIb3N0ID0gKChcImh0dHBzOlwiID09IGRvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sKSA/IFwiaHR0cHM6Ly9zc2wuXCIgOiBcImh0dHA6Ly93d3cuXCIpOw0KZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoXCIlM0NzY3JpcHQgc3JjPVwnXCIgKyBnYUpzSG9zdCArIFwiZ29vZ2xlLWFuYWx5dGljcy5jb20vZ2EuanNcJyB0eXBlPVwndGV4dC9qYXZhc2NyaXB0XCclM0UlM0Mvc2NyaXB0JTNFXCIpKTsNCjwvc2NyaXB0Pg0KPHNjcmlwdCB0eXBlPVwidGV4dC9qYXZhc2NyaXB0XCI+DQp0cnkgew0KdmFyIHBhZ2VUcmFja2VyID0gX2dhdC5fZ2V0VHJhY2tlcihcIlVBLTkyNjkyMDMtMVwiKTsNCnBhZ2VUcmFja2VyLl90cmFja1BhZ2V2aWV3KCk7DQp9IGNhdGNoKGVycikge308L3NjcmlwdD48L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2FyYzwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2xpbms8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9saW5rX2Rlc2M8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2xpbmtfdGV4dDwvc3Ryb25nPiAtIEhvbWU8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX3RodW1iX2hlaWdodDwvc3Ryb25nPiAtIDkyPC9saT48bGk+PHN0cm9uZz53b29faG9tZV90aHVtYl93aWR0aDwvc3Ryb25nPiAtIDI0NzwvbGk+PGxpPjxzdHJvbmc+d29vX2ltYWdlX2hlaWdodDwvc3Ryb25nPiAtIDIxMDwvbGk+PGxpPjxzdHJvbmc+d29vX2ltYWdlX3NpbmdsZTwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29faW1hZ2Vfd2lkdGg8L3N0cm9uZz4gLSA1NDA8L2xpPjxsaT48c3Ryb25nPndvb19sb2dvPC9zdHJvbmc+IC0gaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8xMS1TaXRlLUxvZ28tMi5wbmc8L2xpPjxsaT48c3Ryb25nPndvb19tYW51YWw8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vc3VwcG9ydC90aGVtZS1kb2N1bWVudGF0aW9uL2J1c3ktYmVlLzwvbGk+PGxpPjxzdHJvbmc+d29vX25hdl9leGNsdWRlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fcG9wdWxhcl9wb3N0czwvc3Ryb25nPiAtIFNlbGVjdCBhIG51bWJlcjo8L2xpPjxsaT48c3Ryb25nPndvb19yZXNpemU8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fc2Nyb2xsZXJfcG9zdHM8L3N0cm9uZz4gLSAxMDwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3J0bmFtZTwvc3Ryb25nPiAtIHdvbzwvbGk+PGxpPjxzdHJvbmc+d29vX3NpbmdsZV9oZWlnaHQ8L3N0cm9uZz4gLSAxMjA8L2xpPjxsaT48c3Ryb25nPndvb19zaW5nbGVfd2lkdGg8L3N0cm9uZz4gLSAxODA8L2xpPjxsaT48c3Ryb25nPndvb190YWJzPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX3RoZW1lbmFtZTwvc3Ryb25nPiAtIEJ1c3kgQmVlPC9saT48bGk+PHN0cm9uZz53b29fdGh1bWJfaGVpZ2h0PC9zdHJvbmc+IC0gODg8L2xpPjxsaT48c3Ryb25nPndvb190aHVtYl93aWR0aDwvc3Ryb25nPiAtIDg4PC9saT48bGk+PHN0cm9uZz53b29fdHdpdHRlcjwvc3Ryb25nPiAtIHRrcnBob3RvPC9saT48bGk+PHN0cm9uZz53b29fdXBsb2Fkczwvc3Ryb25nPiAtIGE6OTp7aTowO3M6NjU6Imh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMTEtU2l0ZS1Mb2dvLTIucG5nIjtpOjE7czo2MzoiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8xMC1TaXRlLUxvZ28ucG5nIjtpOjI7czo2NjoiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy85LU1HXzE2MjJfTG9SZXMuanBnIjtpOjM7czo3MzoiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy84LUJvc3Rvbi0zNTAtMzUyLUZpbmFsLmpwZyI7aTo0O3M6NzU6Imh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNy1EYW5pZWwtUG9ydHJhaXRzLVdlYi04LmpwZyI7aTo1O3M6NjI6Imh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNi1TdGFjaWEtMTkuanBnIjtpOjY7czo2NjoiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy81LU1HXzE3MTRfTG9SZXMuanBnIjtpOjc7czo1OToiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy80LVVTRmxhZy5pY28iO2k6ODtzOjY1OiJodHRwOi8vd3d3LnRrcnBob3RvLmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzMtTG9nb19XaGl0ZV8yLnBuZyI7fTwvbGk+PGxpPjxzdHJvbmc+d29vX3ZpZGVvX2NhdGVnb3J5PC9zdHJvbmc+IC0gU2VsZWN0IGEgY2F0ZWdvcnk6PC9saT48L3VsPg==