You are on page 1of 11

Phishing by data URI

Henning Klevjer henning@klevjers.com August 28, 2012


This is a work in progress

Abstract

Historically, phishing web pages have been hosted by web servers that are either compromised or owned by the attacker. This paper introduces a new approach to creating working phishing web pages without the direct need of a host. The contents of the phishing web page is simply contained its own URI (link). We present the appropriate steps to do this, and show a working example of such a phishing page.

Introduction

Using the data URI scheme it is possible to present media content in a web browser without hosting the actual data on the internet. Data URIs follow this scheme: data:[<mediatype>][;base64],<data> Here, <mediatype> are one of the MIME media types described in RFC 2046[1]. The MIME media types were originally intended for use with emailing, but are also used to describe all content on the Internet as well. This means that you can represent any content type (e.g. image/jpeg, text/html, etc.) from the specication that is supported by the web browser. Base64 encoding is optional. Using it ensures that any representation of data can be correctly transferred over the internet, by using a manageable alphabet to represent the data rather than raw bytes. Base64 splits the data into pieces of six bits (yielding 26 = 64) dierent characters to choose from. To exemplify, 1

data:text/plain;,hello shows the text hello without the use of Base64 encoding, and data:text/plain;base64,aGVsbG8= shows the same hello, and the data eld now encoded. Data URI technology has been available as RFC 2397[2] since 1998 described as a way to easily embed text, pictures and other data in HTML pages, and for such it may be more ecient and hassle-free than hosting a possibly large number of small les. However, with the ability to host arbitrary data within a URI, the possibility of doing the same with malicious web content springs to mind. Phishing web pages are minimally modied copies of original web pages, usually hosted at a compromised or malicious web server. Creating a phishing site from PayPal, Inc., for example, usually implies hosting at least a copy of PayPals login site, credit card information site, or other web page dealing with sensitive data. All content on the web page can be linked from PayPals own content servers. However, using the data URI scheme to contain the entire web pages contents is also possible. Pictures, JavaScript, style sheets etc. can either be translated into their own data URI embedded in the le, or be linked from their respective sources. In the last case, all content, such as a JavaScript in the head tag, must be referenced in an absolute manner to work, i.e.:
<script type=text/javascript src=./javascript.js />

is changed to
<script type=text/javascript src=http://example.org/javascript.js />

or
<script type=text/javascript src=data:text/javascript;,contents of javascript.js />

Creating a phishing site


1. Download the login web page to be copied. 2. Change all le paths relative to the domain to absolute ones, or convert them to data URIs. 3. Make the desired modications to the sites code. One can, for example, transfer user credentials or private data to another location.

An easy recipe of creating a phishing site is shown below:

4. (Optional) Encode the text contents of the web page with Base64 encoding to obfuscate the data to the victim. Base64 encoding will extend the overall data size by about 33 %. 5. Append the encoded material or the text contents of the web page into a data URI: Everything from <!DOCTYPE> (or <HTML>) to </HTML> must be moved into the <data> eld above. After this, you will end up with something along these lines. Note that we have used text/html as the MIME type as this is the appropriate way to present HTML pages.
data : text / html ; base64 , D Q o 8 I U R P Q 1 R Z U E U g a H R t b C B Q VUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2 l0aW9uYWwvL0VOIg0KImh0dHA6Ly93d3cudzMub3JnL1RS L 2h 0 b W w 0 L 2 x v b 3 N l L m R 0 Z C I + D Q o 8 a H R t b D 4 N C i A g I C A 8 a G (...) bnR3ZWIyLndvYS9Db250ZW50cy9XZWJTZXJ2ZXJSZXNvdX JjZXMvc3dfYmFzZS5jc3MnIHJlbD0ic3R5bGVzaGVldCIg dHlwZT0idGV4dC9jc3MiPg0KICAgICAgICA8c3R5bGUgdH lwZT0idGV4dC9jc3MiPg0KCQkJdGQ

The length of the nal URI is a consequence of the data hidden within. If the original web page is very large, embedding linked material within may not be viable. An example is provided below (Appendix A), which because of its size has been appended at the end.

Spreading the phishing web page

Remembering that the web page is contained within the URI, only1 the URI must be passed on to a potential victim. Historically, phishing URIs are transferred by email, but in recent years, social media phishing has exploded. The use of URL shortening services has provided an additional layer of uncertainty in abstracting the original URL from the user2 . (At least) One URL shortening services, TinyURL.com3 , also provides the possibility of shortening data URIs into short URLs. Whether or not TinyURL does this unwittingly is not known.
1 2

The URI could easily reach hundreds of kilobytes However, as the user reaches the target URL, it will be shown in the address bar. 3 http://TinyURL.com

Applicability and limitations

Being a rather old RFC specication, data URIs are supported by all major contemporary web browsers. A possible problem of this approach is rather the web browsers memory management. The address eld is simply not created for containing the enormous amount of bytes contained in the data URI. In Google Chrome in particular, a control for unsafe redirection is implemented, disabling the user direct access to a data URI if that URI is the target of a redirection, such as from a URL shortening service. The user is presented with an alert that This webpage is not available, together with the entire URI. Appended below is the error code Error 311 (net::ERR UNSAFE REDIRECT): Unknown error. indicating that the request was denied due to an unsafe state. However, the target URI is still present in the address eld, and a push of the enter button successfully renders the web page. Note that Google Chrome does not produce an error when the user clicks directly on the data URI, without the redirection.

Legal issues

In addition to the obvious issues with phishing, a discussion is appropriate as to whether a web host that keeps malicious data URIs is liable for hosting the malicious content they represent. In the above scenario, it can be argued that the URL shortening service is the host, as it provides and keeps the actual content.

Future Work

We may see more of so called spear phishing, attempts focused on individuals, as phishing pages now can be created more easily. A personalised phishing web page can be created automatically, based on gathered information, and transmitted to one victim only. There is reason to believe that the data URI scheme can provide other unknown attack vectors, so research on this topic and further scrutiny of the scheme is a prudent choice.

Conclusion

In this paper we have introduced a new way of presenting phishing web pages using a rather old, seldom used way to present web content. Using 4

this procedure, there is no clear source of the phishing page and its content, which makes it dicult to trace, monitor the movement or establish the origin of the web page. Also, we conclude that phishing no longer requires web hosting of the page4 , so phishing web pages may be more elusive passed around the Internet. They have no established anchor point in the Internet. There is no way to shut down or remove a data URI web page, besides removing all instances of its link.

The example presented in this document contains no harmful code. The example, and anything learned from this document should NEVER be used to perform any malicious activity. We do not with this example try to point out any vulnerability or weakness specic to Wikipedia, which was selected because of its international reputation and simple login page.

References
[1] N. Freed and N. Borenstein. Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types. RFC 2046 (Draft Standard). Updated by RFCs 2646, 3798, 5147. Internet Engineering Task Force, Nov. 1996. url: http://www.ietf.org/RFC/RFC2046.txt. [2] L. Masinter. The data URL scheme. RFC 2397 (Proposed Standard). Internet Engineering Task Force, Aug. 1998. url: http://www.ietf. org/RFC/RFC2397.txt.

Appendix A: An example phishing web page


Below we present a phishing edition of the login and registration page of the English Wikipedia, http://en.wikipedia.org/. It is a minimal example, in which some relative links have been corrected. Additionally, the functionality of the Log in button has been altered, showing the password entered in the password eld to the user. The login screen of the English Wikipedia can be found here: http://en.wikipedia.org/w/index.php?title=Special:UserLogin
While transmission of sensitive data can be handled within the phishing page, receiving and storing the data is not taken into consideration here.
4

The rendered web page

Base64 encoded data URI This data URI consists of 24682 characters and can with ease be shrunk to 26 characters with a supported URL shortening service, such as the one mentioned.

data:text/html;base64,PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlv bmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPg0KPG h0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIiBjbGFzcz0iY2xpZW50LW5vanMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8x OTk5L3hodG1sIj4NCjxoZWFkPg0KPHRpdGxlPkxvZyBpbiAvIGNyZWF0ZSBhY2NvdW50IC0gV2lraXBlZGlhLCB0aGUgZn JlZSBlbmN5Y2xvcGVkaWE8L3RpdGxlPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0 L2h0bWw7IGNoYXJzZXQ9VVRGLTgiIC8+DQo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVN0eWxlLVR5cGUiIGNvbnRlbn Q9InRleHQvY3NzIiAvPg0KPG1ldGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJNZWRpYVdpa2kgMS4yMHdtZjkiIC8+ DQo8bWV0YSBuYW1lPSJyb2JvdHMiIGNvbnRlbnQ9Im5vaW5kZXgsbm9mb2xsb3ciIC8+DQo8bGluayByZWw9ImFwcGxlLX RvdWNoLWljb24iIGhyZWY9Ii8vZW4ud2lraXBlZGlhLm9yZy9hcHBsZS10b3VjaC1pY29uLnBuZyIgLz4NCjxsaW5rIHJl bD0ic2hvcnRjdXQgaWNvbiIgaHJlZj0iL2Zhdmljb24uaWNvIiAvPg0KPGxpbmsgcmVsPSJzZWFyY2giIHR5cGU9ImFwcG xpY2F0aW9uL29wZW5zZWFyY2hkZXNjcmlwdGlvbit4bWwiIGhyZWY9Imh0dHA6Ly9odHRwOi8vZW4ud2lraXBlZGlhLm9y Zy93L29wZW5zZWFyY2hfZGVzYy5waHAiIHRpdGxlPSJXaWtpcGVkaWEgKGVuKSIgLz4NCjxsaW5rIHJlbD0iRWRpdFVSSS IgdHlwZT0iYXBwbGljYXRpb24vcnNkK3htbCIgaHJlZj0iLy9lbi53aWtpcGVkaWEub3JnL3cvYXBpLnBocD9hY3Rpb249 cnNkIiAvPg0KPGxpbmsgcmVsPSJjb3B5cmlnaHQiIGhyZWY9Ii8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS 1zYS8zLjAvIiAvPg0KPGxpbmsgcmVsPSJhbHRlcm5hdGUiIHR5cGU9ImFwcGxpY2F0aW9uL2F0b20reG1sIiB0aXRsZT0i V2lraXBlZGlhIEF0b20gZmVlZCIgaHJlZj0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvdy9pbmRleC5waHA/dGl0bGU9U3 BlY2lhbDpSZWNlbnRDaGFuZ2VzJmFtcDtmZWVkPWF0b20iIC8+DQo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0 dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvZW4ud2lraXBlZGlhLm9yZy9sb2FkLnBocD9kZWJ1Zz1mYWxzZSZhbXA7bGFuZz 1lbiZhbXA7bW9kdWxlcz1leHQuZ2FkZ2V0LlJlZmVyZW5jZVRvb2x0aXBzJTJDdGVhaG91c2UlN0NleHQud2lraWhpZXJv JTdDbWVkaWF3aWtpLmxlZ2FjeS5jb21tb25QcmludCUyQ3NoYXJlZCU3Q3NraW5zLnZlY3RvciZhbXA7b25seT1zdHlsZX MmYW1wO3NraW49dmVjdG9yJmFtcDsqIiB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9ImFsbCIgLz4NCjxtZXRhIG5hbWU9IlJl c291cmNlTG9hZGVyRHluYW1pY1N0eWxlcyIgY29udGVudD0iIiAvPg0KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPS JodHRwOi8vYml0cy53aWtpbWVkaWEub3JnL2VuLndpa2lwZWRpYS5vcmcvbG9hZC5waHA/ZGVidWc9ZmFsc2UmYW1wO2xh bmc9ZW4mYW1wO21vZHVsZXM9c2l0ZSZhbXA7b25seT1zdHlsZXMmYW1wO3NraW49dmVjdG9yJmFtcDsqIiB0eXBlPSJ0ZX h0L2NzcyIgbWVkaWE9ImFsbCIgLz4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9ImFsbCI+YTpsYW5nKGFyKSxh OmxhbmcoY2tiKSxhOmxhbmcoZmEpLGE6bGFuZyhray1hcmFiKSxhOmxhbmcobXpuKSxhOmxhbmcocHMpLGE6bGFuZyh1ci l7dGV4dC1kZWNvcmF0aW9uOm5vbmV9DQoNCi8qIGNhY2hlIGtleTogZW53aWtpOnJlc291cmNlbG9hZGVyOmZpbHRlcjpt aW5pZnktY3NzOjc6NGVkZjQ2N2Q1OGZlZTQ0YzgzZGZlNzI0Y2EwN2MxNzkgKi88L3N0eWxlPg0KDQo8c2NyaXB0IHNyYz 0iaHR0cDovL2JpdHMud2lraW1lZGlhLm9yZy9lbi53aWtpcGVkaWEub3JnL2xvYWQucGhwP2RlYnVnPWZhbHNlJmFtcDts YW5nPWVuJmFtcDttb2R1bGVzPXN0YXJ0dXAmYW1wO29ubHk9c2NyaXB0cyZhbXA7c2tpbj12ZWN0b3ImYW1wOyoiIHR5cG U9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+aWYod2luZG93 Lm13KXsNCm13LmNvbmZpZy5zZXQoeyJ3Z0Nhbm9uaWNhbE5hbWVzcGFjZSI6IlNwZWNpYWwiLCJ3Z0Nhbm9uaWNhbFNwZW NpYWxQYWdlTmFtZSI6IlVzZXJsb2dpbiIsIndnTmFtZXNwYWNlTnVtYmVyIjotMSwid2dQYWdlTmFtZSI6IlNwZWNpYWw6 VXNlckxvZ2luIiwid2dUaXRsZSI6IlVzZXJMb2dpbiIsIndnQ3VyUmV2aXNpb25JZCI6MCwid2dBcnRpY2xlSWQiOjAsIn dnSXNBcnRpY2xlIjpmYWxzZSwid2dBY3Rpb24iOiJ2aWV3Iiwid2dVc2VyTmFtZSI6bnVsbCwid2dVc2VyR3JvdXBzIjpb IioiXSwid2dDYXRlZ29yaWVzIjpbXSwid2dCcmVha0ZyYW1lcyI6dHJ1ZSwid2dQYWdlQ29udGVudExhbmd1YWdlIjoiZW 4iLCJ3Z1NlcGFyYXRvclRyYW5zZm9ybVRhYmxlIjpbIiIsIiJdLCJ3Z0RpZ2l0VHJhbnNmb3JtVGFibGUiOlsiIiwiIl0s IndnRGVmYXVsdERhdGVGb3JtYXQiOiJkbXkiLCJ3Z01vbnRoTmFtZXMiOlsiIiwiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTW FyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLCJKdWx5IiwiQXVndXN0IiwiU2VwdGVtYmVyIiwiT2N0b2JlciIsIk5vdmVt YmVyIiwiRGVjZW1iZXIiXSwid2dNb250aE5hbWVzU2hvcnQiOlsiIiwiSmFuIiwiRmViIiwiTWFyIiwiQXByIiwiTWF5Ii wiSnVuIiwiSnVsIiwiQXVnIiwiU2VwIiwiT2N0IiwiTm92IiwiRGVjIl0sIndnUmVsZXZhbnRQYWdlTmFtZSI6IlNwZWNp YWw6VXNlckxvZ2luIiwid2dTZWFyY2hOYW1lc3BhY2VzIjpbMF0sIndnVmVjdG9yRW5hYmxlZE1vZHVsZXMiOnsiY29sbG Fwc2libGVuYXYiOnRydWUsImNvbGxhcHNpYmxldGFicyI6dHJ1ZSwiZWRpdHdhcm5pbmciOnRydWUsImV4cGFuZGFibGVz ZWFyY2giOmZhbHNlLCJmb290ZXJjbGVhbnVwIjpmYWxzZSwic2VjdGlvbmVkaXRsaW5rcyI6ZmFsc2UsInNpbXBsZXNlYX JjaCI6dHJ1ZSwiZXhwZXJpbWVudHMiOnRydWV9LCJ3Z1dpa2lFZGl0b3JFbmFibGVkTW9kdWxlcyI6eyJ0b29sYmFyIjp0 cnVlLCJkaWFsb2dzIjp0cnVlLCJoaWRlc2lnIjp0cnVlLCJ0ZW1wbGF0ZUVkaXRvciI6ZmFsc2UsInRlbXBsYXRlcyI6Zm Fsc2UsInByZXZpZXciOmZhbHNlLCJwcmV2aWV3RGlhbG9nIjpmYWxzZSwicHVibGlzaCI6ZmFsc2UsInRvYyI6ZmFsc2V9 LCJ3Z1RyYWNraW5nVG9rZW4iOiJmMDhiMTgxOTYxMGNhZGZhMjY4Y2UwMmI3YjRhNGZlNyIsIndnQXJ0aWNsZUZlZWRiYW NrdjVQZXJtaXNzaW9ucyI6eyJvdmVyc2lnaHRlciI6ZmFsc2UsIm1vZGVyYXRvciI6ZmFsc2UsImVkaXRvciI6ZmFsc2V9 LCJ3aWtpbG92ZS1yZWNpcGllbnQiOiIiLCJ3aWtpbG92ZS1hbm9uIjowLCJtYkVtYWlsRW5hYmxlZCI6dHJ1ZSwibWJVc2 VyRW1haWwiOmZhbHNlLCJtYklzRW1haWxDb25maXJtYXRpb25QZW5kaW5nIjpmYWxzZSwid2dGbGFnZ2VkUmV2c1BhcmFt cyI6eyJ0YWdzIjp7InN0YXR1cyI6eyJsZXZlbHMiOjEsInF1YWxpdHkiOjIsInByaXN0aW5lIjozfX19LCJ3Z1N0YWJsZV JldmlzaW9uSWQiOm51bGwsIndnQ2F0ZWdvcnlUcmVlUGFnZUNhdGVnb3J5T3B0aW9ucyI6IntcIm1vZGVcIjowLFwiaGlk ZXByZWZpeFwiOjIwLFwic2hvd2NvdW50XCI6dHJ1ZSxcIm5hbWVzcGFjZXNcIjpmYWxzZX0iLCJHZW8iOnsiY2l0eSI6Ii IsImNvdW50cnkiOiIifSwid2dOb3RpY2VQcm9qZWN0Ijoid2lraXBlZGlhIn0pOw0KfTwvc2NyaXB0PjxzY3JpcHQgdHlw ZT0idGV4dC9qYXZhc2NyaXB0Ij5pZih3aW5kb3cubXcpew0KbXcubG9hZGVyLmltcGxlbWVudCgidXNlci5vcHRpb25zIi xmdW5jdGlvbigpe213LnVzZXIub3B0aW9ucy5zZXQoeyJjY21lb25lbWFpbHMiOjAsImNvbHMiOjgwLCJkYXRlIjoiZGVm YXVsdCIsImRpZmZvbmx5IjowLCJkaXNhYmxlbWFpbCI6MCwiZGlzYWJsZXN1Z2dlc3QiOjAsImVkaXRmb250IjoiZGVmYX VsdCIsImVkaXRvbmRibGNsaWNrIjowLCJlZGl0c2VjdGlvbiI6MSwiZWRpdHNlY3Rpb25vbnJpZ2h0Y2xpY2siOjAsImVu b3RpZm1pbm9yZWRpdHMiOjAsImVub3RpZnJldmVhbGFkZHIiOjAsImVub3RpZnVzZXJ0YWxrcGFnZXMiOjEsImVub3RpZn dhdGNobGlzdHBhZ2VzIjowLCJleHRlbmR3YXRjaGxpc3QiOjAsImV4dGVybmFsZGlmZiI6MCwiZXh0ZXJuYWxlZGl0b3Ii OjAsImZhbmN5c2lnIjowLCJmb3JjZWVkaXRzdW1tYXJ5IjowLCJnZW5kZXIiOiJ1bmtub3duIiwiaGlkZW1pbm9yIjowLC JoaWRlcGF0cm9sbGVkIjowLCJpbWFnZXNpemUiOjIsImp1c3RpZnkiOjAsIm1hdGgiOjAsIm1pbm9yZGVmYXVsdCI6MCwi bmV3cGFnZXNoaWRlcGF0cm9sbGVkIjowLCJub2NhY2hlIjowLCJub2NvbnZlcnRsaW5rIjowLCJub3JvbGxiYWNrZGlmZi I6MCwibnVtYmVyaGVhZGluZ3MiOjAsInByZXZpZXdvbmZpcnN0IjowLCJwcmV2aWV3b250b3AiOjEsInF1aWNrYmFyIjo1 LCJyY2RheXMiOjcsInJjbGltaXQiOjUwLCJyZW1lbWJlcnBhc3N3b3JkIjowLCJyb3dzIjoyNSwic2VhcmNobGltaXQiOj IwLCJzaG93aGlkZGVuY2F0cyI6ZmFsc2UsInNob3dqdW1wbGlua3MiOjEsInNob3dudW1iZXJzd2F0Y2hpbmciOjEsInNo

b3d0b2MiOjEsInNob3d0b29sYmFyIjoxLCJza2luIjoidmVjdG9yIiwic3R1YnRocmVzaG9sZCI6MCwidGh1bWJzaXplIj o0LCJ1bmRlcmxpbmUiOjIsInVzZWxpdmVwcmV2aWV3IjowLCJ1c2VuZXdyYyI6MCwid2F0Y2hjcmVhdGlvbnMiOjEsIndh dGNoZGVmYXVsdCI6MCwid2F0Y2hkZWxldGlvbiI6MCwid2F0Y2hsaXN0ZGF5cyI6Mw0KLCJ3YXRjaGxpc3RoaWRlYW5vbn MiOjAsIndhdGNobGlzdGhpZGVib3RzIjowLCJ3YXRjaGxpc3RoaWRlbGl1IjowLCJ3YXRjaGxpc3RoaWRlbWlub3IiOjAs IndhdGNobGlzdGhpZGVvd24iOjAsIndhdGNobGlzdGhpZGVwYXRyb2xsZWQiOjAsIndhdGNobW92ZXMiOjAsIndsbGltaX QiOjI1MCwiZmxhZ2dlZHJldnNzaW1wbGV1aSI6MSwiZmxhZ2dlZHJldnNzdGFibGUiOjAsImZsYWdnZWRyZXZzZWRpdGRp ZmZzIjp0cnVlLCJmbGFnZ2VkcmV2c3ZpZXdkaWZmcyI6ZmFsc2UsInZlY3Rvci1zaW1wbGVzZWFyY2giOjEsInVzZWVkaX R3YXJuaW5nIjoxLCJ2ZWN0b3ItY29sbGFwc2libGVuYXYiOjEsInVzZWJldGF0b29sYmFyIjoxLCJ1c2ViZXRhdG9vbGJh ci1jZ2QiOjEsIndpa2lsb3ZlLWVuYWJsZWQiOjEsInZhcmlhbnQiOiJlbiIsImxhbmd1YWdlIjoiZW4iLCJzZWFyY2hOcz AiOnRydWUsInNlYXJjaE5zMSI6ZmFsc2UsInNlYXJjaE5zMiI6ZmFsc2UsInNlYXJjaE5zMyI6ZmFsc2UsInNlYXJjaE5z NCI6ZmFsc2UsInNlYXJjaE5zNSI6ZmFsc2UsInNlYXJjaE5zNiI6ZmFsc2UsInNlYXJjaE5zNyI6ZmFsc2UsInNlYXJjaE 5zOCI6ZmFsc2UsInNlYXJjaE5zOSI6ZmFsc2UsInNlYXJjaE5zMTAiOmZhbHNlLCJzZWFyY2hOczExIjpmYWxzZSwic2Vh cmNoTnMxMiI6ZmFsc2UsInNlYXJjaE5zMTMiOmZhbHNlLCJzZWFyY2hOczE0IjpmYWxzZSwic2VhcmNoTnMxNSI6ZmFsc2 UsInNlYXJjaE5zMTAwIjpmYWxzZSwic2VhcmNoTnMxMDEiOmZhbHNlLCJzZWFyY2hOczEwOCI6ZmFsc2UsInNlYXJjaE5z MTA5IjpmYWxzZSwiZ2FkZ2V0LXRlYWhvdXNlIjoxLCJnYWRnZXQtUmVmZXJlbmNlVG9vbHRpcHMiOjEsImdhZGdldC1EUk 4td2l6YXJkIjoxLCJnYWRnZXQtbXlTYW5kYm94IjoxfSk7O30se30se30pO213LmxvYWRlci5pbXBsZW1lbnQoInVzZXIu dG9rZW5zIixmdW5jdGlvbigpe213LnVzZXIudG9rZW5zLnNldCh7ImVkaXRUb2tlbiI6IitcXCIsDQoid2F0Y2hUb2tlbi I6ZmFsc2V9KTs7fSx7fSx7fSk7DQoNCi8qIGNhY2hlIGtleTogZW53aWtpOnJlc291cmNlbG9hZGVyOmZpbHRlcjptaW5p ZnktanM6Nzo4MWY3YzA1MDJlMzQ3ODIyZjE0YmU4MWY5NmZmMDNhYiAqLw0KfTwvc2NyaXB0Pg0KPHNjcmlwdCB0eXBlPS J0ZXh0L2phdmFzY3JpcHQiPmlmKHdpbmRvdy5tdyl7DQptdy5sb2FkZXIubG9hZChbIm1lZGlhd2lraS5wYWdlLnN0YXJ0 dXAiLCJtZWRpYXdpa2kubGVnYWN5Lndpa2liaXRzIiwibWVkaWF3aWtpLmxlZ2FjeS5hamF4IiwiZXh0Lndpa2ltZWRpYV Nob3BMaW5rLmNvcmUiXSk7DQp9PC9zY3JpcHQ+DQo8IS0tW2lmIGx0IElFIDddPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+ Ym9keXtiZWhhdmlvcjp1cmwoIi93L3NraW5zLTEuMjB3bWY5L3ZlY3Rvci9jc3Nob3Zlci5taW4uaHRjIil9PC9zdHlsZT 48IVtlbmRpZl0tLT48L2hlYWQ+DQo8Ym9keSBjbGFzcz0ibWVkaWF3aWtpIGx0ciBzaXRlZGlyLWx0ciBucy0tMSBucy1z cGVjaWFsIG13LXNwZWNpYWwtVXNlcmxvZ2luIHBhZ2UtU3BlY2lhbF9Vc2VyTG9naW4gc2tpbi12ZWN0b3IgYWN0aW9uLX ZpZXcgdmVjdG9yLWFuaW1hdGVMYXlvdXQiPg0KCQk8ZGl2IGlkPSJtdy1wYWdlLWJhc2UiIGNsYXNzPSJub3ByaW50Ij48 L2Rpdj4NCgkJPGRpdiBpZD0ibXctaGVhZC1iYXNlIiBjbGFzcz0ibm9wcmludCI+PC9kaXY+DQoJCTwhLS0gY29udGVudC AtLT4NCgkJPGRpdiBpZD0iY29udGVudCIgY2xhc3M9Im13LWJvZHkiPg0KCQkJPGEgaWQ9InRvcCI+PC9hPg0KCQkJPGRp diBpZD0ibXctanMtbWVzc2FnZSIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPjwvZGl2Pg0KCQkJCQkJPCEtLSBzaXRlbm90aW NlIC0tPg0KCQkJPGRpdiBpZD0ic2l0ZU5vdGljZSI+PCEtLSBjZW50cmFsTm90aWNlIGxvYWRzIGhlcmUgLS0+PC9kaXY+ DQoJCQk8IS0tIC9zaXRlbm90aWNlIC0tPg0KCQkJCQkJPCEtLSBmaXJzdEhlYWRpbmcgLS0+DQoJCQk8aDEgaWQ9ImZpcn N0SGVhZGluZyIgY2xhc3M9ImZpcnN0SGVhZGluZyI+PHNwYW4gZGlyPSJhdXRvIj5Mb2cgaW4gLyBjcmVhdGUgYWNjb3Vu dDwvc3Bhbj48L2gxPg0KCQkJPCEtLSAvZmlyc3RIZWFkaW5nIC0tPg0KCQkJPCEtLSBib2R5Q29udGVudCAtLT4NCgkJCT xkaXYgaWQ9ImJvZHlDb250ZW50Ij4NCgkJCQkJCQkJPCEtLSBzdWJ0aXRsZSAtLT4NCgkJCQk8ZGl2IGlkPSJjb250ZW50 U3ViIj48L2Rpdj4NCgkJCQk8IS0tIC9zdWJ0aXRsZSAtLT4NCgkJCQkJCQkJCQkJCQkJCQk8IS0tIGp1bXB0byAtLT4NCg kJCQk8ZGl2IGlkPSJqdW1wLXRvLW5hdiIgY2xhc3M9Im13LWp1bXAiPg0KCQkJCQlKdW1wIHRvOgkJCQkJPGEgaHJlZj0i I213LWhlYWQiPm5hdmlnYXRpb248L2E+LCAJCQkJCTxhIGhyZWY9IiNwLXNlYXJjaCI+c2VhcmNoPC9hPg0KCQkJCTwvZG l2Pg0KCQkJCTwhLS0gL2p1bXB0byAtLT4NCgkJCQkJCQkJPCEtLSBib2R5Y29udGVudCAtLT4NCgkJCQk8ZGl2IGlkPSJt dy1jb250ZW50LXRleHQiPjxkaXYgc3R5bGU9ImRpc3BsYXk6bm9uZTsiIGNsYXNzPSJwZWYtbm90aWZpY2F0aW9uLWNvbn RhaW5lciI+DQoJPGRpdiBjbGFzcz0icGVmLW5vdGlmaWNhdGlvbiI+DQoJCTxkaXYgY2xhc3M9InBlZi1ub3RpZmljYXRp b24tY2hlY2ttYXJrIj4mbmJzcDs8L2Rpdj4NCgkJPHNwYW4+PC9zcGFuPg0KCTwvZGl2Pg0KPC9kaXY+DQo8ZGl2IGlkPS Jsb2dpbnN0YXJ0Ij48L2Rpdj4NCjxkaXYgaWQ9InVzZXJsb2dpbkZvcm0iPg0KPGZvcm0gbmFtZT0idXNlcmxvZ2luIiBt ZXRob2Q9InBvc3QiIGFjdGlvbj0iaHR0cDovL2h0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPV NwZWNpYWw6VXNlckxvZ2luJmFtcDthY3Rpb249c3VibWl0bG9naW4mYW1wO3R5cGU9bG9naW4mYW1wO3JldHVybnRvPVdp a2lwZWRpYSI+DQoJPGgyPkxvZyBpbjwvaDI+DQoJPHAgaWQ9InVzZXJsb2dpbmxpbmsiPkRvbid0IGhhdmUgYW4gYWNjb3 VudD8gPGEgaHJlZj0iaHR0cDovL2h0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPVNwZWNpYWw6 VXNlckxvZ2luJmFtcDt0eXBlPXNpZ251cCZhbXA7cmV0dXJudG89V2lraXBlZGlhIj5DcmVhdGUgb25lPC9hPi48L3A+DQ oJCTxkaXYgaWQ9InVzZXJsb2dpbnByb21wdCI+PC9kaXY+DQoJCTx0YWJsZT4NCgkJPHRyPg0KCQkJPHRkIGNsYXNzPSJt dy1sYWJlbCI+PGxhYmVsIGZvcj0nd3BOYW1lMSc+VXNlcm5hbWU6PC9sYWJlbD48L3RkPg0KCQkJPHRkIGNsYXNzPSJtdy 1pbnB1dCI+DQoJCQkJPGlucHV0IGNsYXNzPSJsb2dpblRleHQiIGlkPSJ3cE5hbWUxIiB0YWJpbmRleD0iMSIgc2l6ZT0i MjAiIHR5cGU9InRleHQiIG5hbWU9IndwTmFtZSIgLz4NCgkJCTwvdGQ+DQoJCTwvdHI+DQoJCTx0cj4NCgkJCTx0ZCBjbG Fzcz0ibXctbGFiZWwiPjxsYWJlbCBmb3I9J3dwUGFzc3dvcmQxJz5QYXNzd29yZDo8L2xhYmVsPjwvdGQ+DQoJCQk8dGQg Y2xhc3M9Im13LWlucHV0Ij4NCgkJCQk8aW5wdXQgY2xhc3M9ImxvZ2luUGFzc3dvcmQiIGlkPSJ3cFBhc3N3b3JkMSIgdG FiaW5kZXg9IjIiIHNpemU9IjIwIiB0eXBlPSJwYXNzd29yZCIgbmFtZT0id3BQYXNzd29yZCIgLz4NCgkJCTwvdGQ+DQoJ CTwvdHI+DQoJCQk8dHI+DQoJCQk8dGQ+PC90ZD4NCgkJCTx0ZCBjbGFzcz0ibXctaW5wdXQiPg0KCQkJCTxpbnB1dCBuYW 1lPSJ3cFJlbWVtYmVyIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IjEiIGlkPSJ3cFJlbWVtYmVyIiB0YWJpbmRleD0iOCIg Lz4mIzE2MDs8bGFiZWwgZm9yPSJ3cFJlbWVtYmVyIj5SZW1lbWJlciBtZSAodXAgdG8gMTgwIGRheXMpPC9sYWJlbD4JCQ k8L3RkPg0KCQk8L3RyPg0KCQk8dHI+DQoJCQk8dGQ+PC90ZD4NCgkJCTx0ZCBjbGFzcz0ibXctc3VibWl0Ij4NCgkJCQk8 aW5wdXQgaWQ9IndwTG9naW5BdHRlbXB0IiB0YWJpbmRleD0iOSIgdHlwZT0iYnV0dG9uIiB2YWx1ZT0iTG9nIGluIiBuYW 1lPSJ3cExvZ2luQXR0ZW1wdCIgb25DbGljaz0iYWxlcnQoJ1lvdXIgcGFzc3dvcmQgaXMgJyArIGRvY3VtZW50LnVzZXJs b2dpbi53cFBhc3N3b3JkLnZhbHVlKTsiIC8+JiMxNjA7PGEgaHJlZj0iL3dpa2kvU3BlY2lhbDpQYXNzd29yZFJlc2V0Ii B0aXRsZT0iU3BlY2lhbDpQYXNzd29yZFJlc2V0Ij5Gb3Jnb3R0ZW4geW91ciBsb2dpbiBkZXRhaWxzPzwvYT4NCgkJCTwv dGQ+DQoJCTwvdHI+DQoJPC90YWJsZT4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IndwTG9naW5Ub2tlbiIgdmFsdW U9IjZiODIyODZiZWQwMjc0YzcyMzlmYTgxNWNlM2VhM2Q2IiAvPjwvZm9ybT4NCjwvZGl2Pg0KPGRpdiBpZD0ibG9naW5l bmQiPjxkaXYgc3R5bGU9ImNsZWFyOiBib3RoOyI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJwbGFpbmxpbmtzIj48aDM+IDxzcG FuIGNsYXNzPSJtdy1oZWFkbGluZSIgaWQ9IlNlY3VyZV95b3VyX2FjY291bnQ6Ij5TZWN1cmUgeW91ciBhY2NvdW50Ojwv c3Bhbj48L2gzPg0KPHVsPjxsaT4gQ29uc2lkZXIgbG9nZ2luZyBpbiBvbiB0aGUgPGEgY2xhc3M9ImV4dGVybmFsIHRleH

QiIGhyZWY9Imh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1NwZWNpYWw6VXNlckxvZ2luIj5zZWN1cmUgc2VydmVy PC9hPi4NCjwvbGk+PGxpPiBJZiB5b3VyIHBhc3N3b3JkIG9ubHkgY29udGFpbnMgbGV0dGVycyBvciBvbmx5IG51bWJlcn MsIHBsZWFzZSByZWFkIG91ciBhcnRpY2xlIG9uIDxhIGhyZWY9Ii93aWtpL1Bhc3N3b3JkX3N0cmVuZ3RoIiB0aXRsZT0i UGFzc3dvcmQgc3RyZW5ndGgiPnBhc3N3b3JkIHN0cmVuZ3RoPC9hPiBhbmQgY29uc2lkZXIgY2hhbmdpbmcgaXQgKGluID xhIGhyZWY9Ii93aWtpL1NwZWNpYWw6UHJlZmVyZW5jZXMiIHRpdGxlPSJTcGVjaWFsOlByZWZlcmVuY2VzIj5TcGVjaWFs OlByZWZlcmVuY2VzPC9hPiBhZnRlciB5b3UgbG9nIGluKS4NCjwvbGk+PGxpPiBUbyBhdm9pZCBiZWNvbWluZyBhIHZpY3 RpbSBvZiA8YSBocmVmPSIvd2lraS9QaGlzaGluZyIgdGl0bGU9IlBoaXNoaW5nIj5waGlzaGluZzwvYT4sIGFsd2F5cyB2 ZXJpZnkgdGhhdCB5b3UgYXJlIHZpZXdpbmcgPGEgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vZW4ud2lraXBlZG lhLm9yZy93aWtpL1NwZWNpYWw6VXNlckxvZ2luIj5XaWtpcGVkaWEncyBsb2dpbiBwYWdlPC9hPiB3aGVuIGxvZ2dpbmcg aW4uIFdpa2lwZWRpYSB3aWxsIG5ldmVyIGFzayBmb3IgYW55IGluZm9ybWF0aW9uIG90aGVyIHRoYW4geW91ciB1c2Vybm FtZSwgcGFzc3dvcmQgYW5kIGUtbWFpbCBhZGRyZXNzLg0KPC9saT48bGk+IERvIG5vdCBnaXZlIG91dCB5b3VyIHBhc3N3 b3JkIHRvIGFueW9uZS4NCjwvbGk+PGxpPiBJZiB5b3VyIGFjY291bnQgaXMgY29tcHJvbWlzZWQsIGl0IG1heSBiZSBwZX JtYW5lbnRseSBibG9ja2VkIHVubGVzcyB5b3UgY2FuIHByb3ZlIHlvdSBhcmUgaXRzIHJpZ2h0ZnVsIG93bmVyLg0KPC9s aT48bGk+IEFzIGEgc2FmZWd1YXJkIHlvdSBtYXkgImNvbW1pdCIgdG8geW91ciBpZGVudGl0eSBieSBhZGRpbmcgYSA8YS BocmVmPSIvd2lraS9DcnlwdG9ncmFwaGljX2hhc2hfZnVuY3Rpb24iIHRpdGxlPSJDcnlwdG9ncmFwaGljIGhhc2ggZnVu Y3Rpb24iPmNyeXB0b2dyYXBoaWMgaGFzaDwvYT4gdG8geW91ciA8YSBocmVmPSIvd2lraS9XaWtpcGVkaWE6VXNlcl9wYW dlIiB0aXRsZT0iV2lraXBlZGlhOlVzZXIgcGFnZSIgY2xhc3M9Im13LXJlZGlyZWN0Ij51c2VyIHBhZ2U8L2E+IGFzIGV4 cGxhaW5lZCA8YSBocmVmPSIvd2lraS9UZW1wbGF0ZTpVc2VyX2NvbW1pdHRlZF9pZGVudGl0eSIgdGl0bGU9IlRlbXBsYX RlOlVzZXIgY29tbWl0dGVkIGlkZW50aXR5Ij5oZXJlPC9hPi4gVGhpcyBtYWtlcyBpdCBhbG1vc3QgaW1wb3NzaWJsZSBm b3IgYW4gaW1wb3N0b3IgdG8gY29udGludWUgaW1wZXJzb25hdGluZyB5b3Ugb25jZSB5b3UgcmVnYWluIGNvbnRyb2wgb2 YgeW91ciBhY2NvdW50Lg0KPC9saT48L3VsPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2PgkJCQk8IS0tIC9ib2R5Y29udGVu dCAtLT4NCgkJCQkJCQkJPCEtLSBwcmludGZvb3RlciAtLT4NCgkJCQk8ZGl2IGNsYXNzPSJwcmludGZvb3RlciI+DQoJCQ kJUmV0cmlldmVkIGZyb20gIjxhIGhyZWY9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvU3BlY2lhbDpVc2VyTG9n aW4iPmh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvU3BlY2lhbDpVc2VyTG9naW48L2E+IgkJCQk8L2Rpdj4NCgkJCQ k8IS0tIC9wcmludGZvb3RlciAtLT4NCgkJCQkJCQkJCQkJCTwhLS0gY2F0bGlua3MgLS0+DQoJCQkJPGRpdiBpZD0nY2F0 bGlua3MnIGNsYXNzPSdjYXRsaW5rcyBjYXRsaW5rcy1hbGxoaWRkZW4nPjwvZGl2PgkJCQk8IS0tIC9jYXRsaW5rcyAtLT 4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9InZpc3VhbENsZWFyIj48L2Rpdj4NCgkJCQk8IS0tIGRlYnVnaHRtbCAtLT4N CgkJCQkJCQkJPCEtLSAvZGVidWdodG1sIC0tPg0KCQkJPC9kaXY+DQoJCQk8IS0tIC9ib2R5Q29udGVudCAtLT4NCgkJPC 9kaXY+DQoJCTwhLS0gL2NvbnRlbnQgLS0+DQoJCTwhLS0gaGVhZGVyIC0tPg0KCQk8ZGl2IGlkPSJtdy1oZWFkIiBjbGFz cz0ibm9wcmludCI+DQoNCjwhLS0gMCAtLT4NCjxkaXYgaWQ9InAtcGVyc29uYWwiIGNsYXNzPSIiPg0KCTxoNT5QZXJzb2 5hbCB0b29sczwvaDU+DQoJPHVsPg0KCQk8bGkgaWQ9InB0LWNyZWF0ZWFjY291bnQiPjxhIGhyZWY9Imh0dHA6Ly9odHRw Oi8vZW4ud2lraXBlZGlhLm9yZy93L2luZGV4LnBocD90aXRsZT1TcGVjaWFsOlVzZXJMb2dpbiZhbXA7cmV0dXJudG89V2 lraXBlZGlhJmFtcDt0eXBlPXNpZ251cCI+Q3JlYXRlIGFjY291bnQ8L2E+PC9saT4NCgkJPGxpIGlkPSJwdC1sb2dpbiIg Y2xhc3M9ImFjdGl2ZSI+PGEgaHJlZj0iaHR0cDovL2h0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3RpdG xlPVNwZWNpYWw6VXNlckxvZ2luJmFtcDtyZXR1cm50bz1XaWtpcGVkaWEiIHRpdGxlPSJZb3UgYXJlIGVuY291cmFnZWQg dG8gbG9nIGluOyBob3dldmVyLCBpdCBpcyBub3QgbWFuZGF0b3J5LiBbb10iIGFjY2Vzc2tleT0ibyI+TG9nIGluPC9hPj wvbGk+DQoJPC91bD4NCjwvZGl2Pg0KDQo8IS0tIC8wIC0tPg0KCQkJPGRpdiBpZD0ibGVmdC1uYXZpZ2F0aW9uIj4NCg0K PCEtLSAwIC0tPg0KPGRpdiBpZD0icC1uYW1lc3BhY2VzIiBjbGFzcz0idmVjdG9yVGFicyI+DQoJPGg1Pk5hbWVzcGFjZX M8L2g1Pg0KCTx1bD4NCgkJCQkJPGxpICBpZD0iY2EtbnN0YWItc3BlY2lhbCIgY2xhc3M9InNlbGVjdGVkIj48c3Bhbj48 YSBocmVmPSJodHRwOi8vaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvdy9pbmRleC5waHA/dGl0bGU9U3BlY2lhbDpVc2VyTG 9naW4mYW1wO3JldHVybnRvPVdpa2lwZWRpYSIgIHRpdGxlPSJUaGlzIGlzIGEgc3BlY2lhbCBwYWdlIHdoaWNoIHlvdSBj YW5ub3QgZWRpdCI+U3BlY2lhbCBwYWdlPC9hPjwvc3Bhbj48L2xpPg0KCQkJPC91bD4NCjwvZGl2Pg0KDQo8IS0tIC8wIC 0tPg0KDQo8IS0tIDEgLS0+DQo8ZGl2IGlkPSJwLXZhcmlhbnRzIiBjbGFzcz0idmVjdG9yTWVudSBlbXB0eVBvcnRsZXQi Pg0KCTxoND4NCgkJPC9oND4NCgk8aDU+PHNwYW4+VmFyaWFudHM8L3NwYW4+PGEgaHJlZj0iIyI+PC9hPjwvaDU+DQoJPG RpdiBjbGFzcz0ibWVudSI+DQoJCTx1bD4NCgkJCQkJPC91bD4NCgk8L2Rpdj4NCjwvZGl2Pg0KDQo8IS0tIC8xIC0tPg0K CQkJPC9kaXY+DQoJCQk8ZGl2IGlkPSJyaWdodC1uYXZpZ2F0aW9uIj4NCg0KPCEtLSAwIC0tPg0KPGRpdiBpZD0icC12aW V3cyIgY2xhc3M9InZlY3RvclRhYnMgZW1wdHlQb3J0bGV0Ij4NCgk8aDU+Vmlld3M8L2g1Pg0KCTx1bD4NCgkJCTwvdWw+ DQo8L2Rpdj4NCg0KPCEtLSAvMCAtLT4NCg0KPCEtLSAxIC0tPg0KPGRpdiBpZD0icC1jYWN0aW9ucyIgY2xhc3M9InZlY3 Rvck1lbnUgZW1wdHlQb3J0bGV0Ij4NCgk8aDU+PHNwYW4+QWN0aW9uczwvc3Bhbj48YSBocmVmPSIjIj48L2E+PC9oNT4N Cgk8ZGl2IGNsYXNzPSJtZW51Ij4NCgkJPHVsPg0KCQkJCQk8L3VsPg0KCTwvZGl2Pg0KPC9kaXY+DQoNCjwhLS0gLzEgLS 0+DQoNCjwhLS0gMiAtLT4NCjxkaXYgaWQ9InAtc2VhcmNoIj4NCgk8aDU+PGxhYmVsIGZvcj0ic2VhcmNoSW5wdXQiPlNl YXJjaDwvbGFiZWw+PC9oNT4NCgk8Zm9ybSBhY3Rpb249Imh0dHA6Ly9odHRwOi8vZW4ud2lraXBlZGlhLm9yZy93L2luZG V4LnBocCIgaWQ9InNlYXJjaGZvcm0iPg0KCQkJCTxkaXYgaWQ9InNpbXBsZVNlYXJjaCI+DQoJCQkJCQk8aW5wdXQgdHlw ZT0idGV4dCIgbmFtZT0ic2VhcmNoIiB2YWx1ZT0iIiB0aXRsZT0iU2VhcmNoIFdpa2lwZWRpYSBbZl0iIGFjY2Vzc2tleT 0iZiIgaWQ9InNlYXJjaElucHV0IiAvPgkJCQkJCTxidXR0b24gdHlwZT0ic3VibWl0IiBuYW1lPSJidXR0b24iIHRpdGxl PSJTZWFyY2ggV2lraXBlZGlhIGZvciB0aGlzIHRleHQiIGlkPSJzZWFyY2hCdXR0b24iIHdpZHRoPSIxMiIgaGVpZ2h0PS IxMyI+PGltZyBzcmM9Imh0dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvc3RhdGljLTEuMjB3bWY5L3NraW5zL3ZlY3Rvci9p bWFnZXMvc2VhcmNoLWx0ci5wbmc/MzAzLTQiIGFsdD0iU2VhcmNoIiAvPjwvYnV0dG9uPgkJCQkJCQkJPGlucHV0IHR5cG U9J2hpZGRlbicgbmFtZT0idGl0bGUiIHZhbHVlPSJTcGVjaWFsOlNlYXJjaCIvPg0KCQk8L2Rpdj4NCgk8L2Zvcm0+DQo8 L2Rpdj4NCg0KPCEtLSAvMiAtLT4NCgkJCTwvZGl2Pg0KCQk8L2Rpdj4NCgkJPCEtLSAvaGVhZGVyIC0tPg0KCQk8IS0tIH BhbmVsIC0tPg0KCQkJPGRpdiBpZD0ibXctcGFuZWwiIGNsYXNzPSJub3ByaW50Ij4NCgkJCQk8IS0tIGxvZ28gLS0+DQoJ CQkJCTxkaXYgaWQ9InAtbG9nbyI+PGEgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwOi8vdXBsb2FkLndpa2 ltZWRpYS5vcmcvd2lraXBlZGlhL2VuL2IvYmMvV2lraS5wbmcpOyIgaHJlZj0iL3dpa2kvTWFpbl9QYWdlIiAgdGl0bGU9 IlZpc2l0IHRoZSBtYWluIHBhZ2UiPjwvYT48L2Rpdj4NCgkJCQk8IS0tIC9sb2dvIC0tPg0KDQo8IS0tIG5hdmlnYXRpb2 4gLS0+DQo8ZGl2IGNsYXNzPSJwb3J0YWwiIGlkPSdwLW5hdmlnYXRpb24nPg0KCTxoNT5OYXZpZ2F0aW9uPC9oNT4NCgk8 ZGl2IGNsYXNzPSJib2R5Ij4NCgkJPHVsPg0KCQkJPGxpIGlkPSJuLW1haW5wYWdlLWRlc2NyaXB0aW9uIj48YSBocmVmPS Ivd2lraS9NYWluX1BhZ2UiIHRpdGxlPSJWaXNpdCB0aGUgbWFpbiBwYWdlIFt6XSIgYWNjZXNza2V5PSJ6Ij5NYWluIHBh

Z2U8L2E+PC9saT4NCgkJCTxsaSBpZD0ibi1jb250ZW50cyI+PGEgaHJlZj0iL3dpa2kvUG9ydGFsOkNvbnRlbnRzIiB0aX RsZT0iR3VpZGVzIHRvIGJyb3dzaW5nIFdpa2lwZWRpYSI+Q29udGVudHM8L2E+PC9saT4NCgkJCTxsaSBpZD0ibi1mZWF0 dXJlZGNvbnRlbnQiPjxhIGhyZWY9Ii93aWtpL1BvcnRhbDpGZWF0dXJlZF9jb250ZW50IiB0aXRsZT0iRmVhdHVyZWQgY2 9udGVudCDigJMgdGhlIGJlc3Qgb2YgV2lraXBlZGlhIj5GZWF0dXJlZCBjb250ZW50PC9hPjwvbGk+DQoJCQk8bGkgaWQ9 Im4tY3VycmVudGV2ZW50cyI+PGEgaHJlZj0iL3dpa2kvUG9ydGFsOkN1cnJlbnRfZXZlbnRzIiB0aXRsZT0iRmluZCBiYW NrZ3JvdW5kIGluZm9ybWF0aW9uIG9uIGN1cnJlbnQgZXZlbnRzIj5DdXJyZW50IGV2ZW50czwvYT48L2xpPg0KCQkJPGxp IGlkPSJuLXJhbmRvbXBhZ2UiPjxhIGhyZWY9Ii93aWtpL1NwZWNpYWw6UmFuZG9tIiB0aXRsZT0iTG9hZCBhIHJhbmRvbS BhcnRpY2xlIFt4XSIgYWNjZXNza2V5PSJ4Ij5SYW5kb20gYXJ0aWNsZTwvYT48L2xpPg0KCQkJPGxpIGlkPSJuLXNpdGVz dXBwb3J0Ij48YSBocmVmPSIvL2RvbmF0ZS53aWtpbWVkaWEub3JnL3dpa2kvU3BlY2lhbDpGdW5kcmFpc2VyUmVkaXJlY3 Rvcj91dG1fc291cmNlPWRvbmF0ZSZhbXA7dXRtX21lZGl1bT1zaWRlYmFyJmFtcDt1dG1fY2FtcGFpZ249MjAxMjA3MTdT QjAwMSZhbXA7dXNlbGFuZz1lbiIgdGl0bGU9IlN1cHBvcnQgdXMiPkRvbmF0ZSB0byBXaWtpcGVkaWE8L2E+PC9saT4NCg kJPC91bD4NCgk8L2Rpdj4NCjwvZGl2Pg0KDQo8IS0tIC9uYXZpZ2F0aW9uIC0tPg0KDQo8IS0tIFNFQVJDSCAtLT4NCg0K PCEtLSAvU0VBUkNIIC0tPg0KDQo8IS0tIGludGVyYWN0aW9uIC0tPg0KPGRpdiBjbGFzcz0icG9ydGFsIiBpZD0ncC1pbn RlcmFjdGlvbic+DQoJPGg1PkludGVyYWN0aW9uPC9oNT4NCgk8ZGl2IGNsYXNzPSJib2R5Ij4NCgkJPHVsPg0KCQkJPGxp IGlkPSJuLWhlbHAiPjxhIGhyZWY9Ii93aWtpL0hlbHA6Q29udGVudHMiIHRpdGxlPSJHdWlkYW5jZSBvbiBob3cgdG8gdX NlIGFuZCBlZGl0IFdpa2lwZWRpYSI+SGVscDwvYT48L2xpPg0KCQkJPGxpIGlkPSJuLWFib3V0c2l0ZSI+PGEgaHJlZj0i L3dpa2kvV2lraXBlZGlhOkFib3V0IiB0aXRsZT0iRmluZCBvdXQgYWJvdXQgV2lraXBlZGlhIj5BYm91dCBXaWtpcGVkaW E8L2E+PC9saT4NCgkJCTxsaSBpZD0ibi1wb3J0YWwiPjxhIGhyZWY9Ii93aWtpL1dpa2lwZWRpYTpDb21tdW5pdHlfcG9y dGFsIiB0aXRsZT0iQWJvdXQgdGhlIHByb2plY3QsIHdoYXQgeW91IGNhbiBkbywgd2hlcmUgdG8gZmluZCB0aGluZ3MiPk NvbW11bml0eSBwb3J0YWw8L2E+PC9saT4NCgkJCTxsaSBpZD0ibi1yZWNlbnRjaGFuZ2VzIj48YSBocmVmPSIvd2lraS9T cGVjaWFsOlJlY2VudENoYW5nZXMiIHRpdGxlPSJBIGxpc3Qgb2YgcmVjZW50IGNoYW5nZXMgaW4gdGhlIHdpa2kgW3JdIi BhY2Nlc3NrZXk9InIiPlJlY2VudCBjaGFuZ2VzPC9hPjwvbGk+DQoJCQk8bGkgaWQ9Im4tY29udGFjdCI+PGEgaHJlZj0i L3dpa2kvV2lraXBlZGlhOkNvbnRhY3RfdXMiIHRpdGxlPSJIb3cgdG8gY29udGFjdCBXaWtpcGVkaWEiPkNvbnRhY3QgV2 lraXBlZGlhPC9hPjwvbGk+DQoJCTwvdWw+DQoJPC9kaXY+DQo8L2Rpdj4NCg0KPCEtLSAvaW50ZXJhY3Rpb24gLS0+DQoN CjwhLS0gVE9PTEJPWCAtLT4NCjxkaXYgY2xhc3M9InBvcnRhbCIgaWQ9J3AtdGInPg0KCTxoNT5Ub29sYm94PC9oNT4NCg k8ZGl2IGNsYXNzPSJib2R5Ij4NCgkJPHVsPg0KCQkJPGxpIGlkPSJ0LXVwbG9hZCI+PGEgaHJlZj0iL3dpa2kvV2lraXBl ZGlhOlVwbG9hZCIgdGl0bGU9IlVwbG9hZCBmaWxlcyBbdV0iIGFjY2Vzc2tleT0idSI+VXBsb2FkIGZpbGU8L2E+PC9saT 4NCgkJCTxsaSBpZD0idC1zcGVjaWFscGFnZXMiPjxhIGhyZWY9Ii93aWtpL1NwZWNpYWw6U3BlY2lhbFBhZ2VzIiB0aXRs ZT0iQSBsaXN0IG9mIGFsbCBzcGVjaWFsIHBhZ2VzIFtxXSIgYWNjZXNza2V5PSJxIj5TcGVjaWFsIHBhZ2VzPC9hPjwvbG k+DQoJCTwvdWw+DQoJPC9kaXY+DQo8L2Rpdj4NCg0KPCEtLSAvVE9PTEJPWCAtLT4NCg0KPCEtLSBMQU5HVUFHRVMgLS0+ DQoNCjwhLS0gL0xBTkdVQUdFUyAtLT4NCgkJCTwvZGl2Pg0KCQk8IS0tIC9wYW5lbCAtLT4NCgkJPCEtLSBmb290ZXIgLS 0+DQoJCTxkaXYgaWQ9ImZvb3RlciI+DQoJCQkJCQkJPHVsIGlkPSJmb290ZXItcGxhY2VzIj4NCgkJCQkJCQkJCQkJPGxp IGlkPSJmb290ZXItcGxhY2VzLXByaXZhY3kiPjxhIGhyZWY9Ii8vd2lraW1lZGlhZm91bmRhdGlvbi5vcmcvd2lraS9Qcm l2YWN5X3BvbGljeSIgdGl0bGU9Indpa2ltZWRpYTpQcml2YWN5IHBvbGljeSI+UHJpdmFjeSBwb2xpY3k8L2E+PC9saT4N CgkJCQkJCQkJCQkJPGxpIGlkPSJmb290ZXItcGxhY2VzLWFib3V0Ij48YSBocmVmPSIvd2lraS9XaWtpcGVkaWE6QWJvdX QiIHRpdGxlPSJXaWtpcGVkaWE6QWJvdXQiPkFib3V0IFdpa2lwZWRpYTwvYT48L2xpPg0KCQkJCQkJCQkJCQk8bGkgaWQ9 ImZvb3Rlci1wbGFjZXMtZGlzY2xhaW1lciI+PGEgaHJlZj0iL3dpa2kvV2lraXBlZGlhOkdlbmVyYWxfZGlzY2xhaW1lci IgdGl0bGU9Ildpa2lwZWRpYTpHZW5lcmFsIGRpc2NsYWltZXIiPkRpc2NsYWltZXJzPC9hPjwvbGk+DQoJCQkJCQkJCQk8 L3VsPg0KCQkJCQkJCQkJCTx1bCBpZD0iZm9vdGVyLWljb25zIiBjbGFzcz0ibm9wcmludCI+DQoJCQkJCTxsaSBpZD0iZm 9vdGVyLWNvcHlyaWdodGljbyI+DQoJCQkJCQk8YSBocmVmPSIvL3dpa2ltZWRpYWZvdW5kYXRpb24ub3JnLyI+PGltZyBz cmM9Imh0dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvaW1hZ2VzL3dpa2ltZWRpYS1idXR0b24ucG5nIiB3aWR0aD0iODgiIG hlaWdodD0iMzEiIGFsdD0iV2lraW1lZGlhIEZvdW5kYXRpb24iLz48L2E+DQoJCQkJCTwvbGk+DQoJCQkJCTxsaSBpZD0i Zm9vdGVyLXBvd2VyZWRieWljbyI+DQoJCQkJCQk8YSBocmVmPSIvL3d3dy5tZWRpYXdpa2kub3JnLyI+PGltZyBzcmM9Im h0dHA6Ly9iaXRzLndpa2ltZWRpYS5vcmcvc3RhdGljLTEuMjB3bWY5L3NraW5zL2NvbW1vbi9pbWFnZXMvcG93ZXJlZGJ5 X21lZGlhd2lraV84OHgzMS5wbmciIGFsdD0iUG93ZXJlZCBieSBNZWRpYVdpa2kiIHdpZHRoPSI4OCIgaGVpZ2h0PSIzMS IgLz48L2E+DQoJCQkJCTwvbGk+DQoJCQkJPC91bD4NCgkJCQkJCTxkaXYgc3R5bGU9ImNsZWFyOmJvdGgiPjwvZGl2Pg0K CQk8L2Rpdj4NCgkJPCEtLSAvZm9vdGVyIC0tPg0KCQk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+aWYod2luZG 93Lm13KXsNCm13LmxvYWRlci5zdGF0ZSh7InNpdGUiOiJsb2FkaW5nIiwidXNlciI6InJlYWR5IiwidXNlci5ncm91cHMi OiJyZWFkeSJ9KTsNCn08L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSJodHRwOi8vYml0cy53aWtpbWVkaWEub3JnL2VuLndpa2 lwZWRpYS5vcmcvbG9hZC5waHA/ZGVidWc9ZmFsc2UmYW1wO2xhbmc9ZW4mYW1wO21vZHVsZXM9c2tpbnMudmVjdG9yJmFt cDtvbmx5PXNjcmlwdHMmYW1wO3NraW49dmVjdG9yJmFtcDsqIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg 0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmlmKHdpbmRvdy5tdyl7DQptdy5sb2FkZXIubG9hZChbIm1lZGlh d2lraS51c2VyIiwibWVkaWF3aWtpLnBhZ2UucmVhZHkiLCJtZWRpYXdpa2kubGVnYWN5Lm13c3VnZ2VzdCIsImV4dC52ZW N0b3IuY29sbGFwc2libGVOYXYiLCJleHQudmVjdG9yLmNvbGxhcHNpYmxlVGFicyIsImV4dC52ZWN0b3IuZWRpdFdhcm5p bmciLCJleHQudmVjdG9yLnNpbXBsZVNlYXJjaCIsImV4dC5Vc2VyQnVja2V0cyIsImV4dC5hcnRpY2xlRmVlZGJhY2suc3 RhcnR1cCIsImV4dC5tYXJrQXNIZWxwZnVsIiwiZXh0LkV4cGVyaW1lbnRzLmxpYiIsImV4dC5FeHBlcmltZW50cy5leHBl cmltZW50cyJdLCBudWxsLCB0cnVlKTsNCn08L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCn dpbmRvdy5fcmVnID0gIiI7DQo8L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSJodHRwOi8vaHR0cDovL2VuLndpa2lwZWRpYS5v cmcvdy9pbmRleC5waHA/dGl0bGU9U3BlY2lhbDpCYW5uZXJDb250cm9sbGVyJmFtcDtjYWNoZT0vY24uanMmYW1wOzMwMy 00IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KPHNjcmlwdCBzcmM9Imh0dHA6Ly9iaXRzLndpa2ltZWRp YS5vcmcvZ2VvaXBsb29rdXAiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+PCEtLSBTZXJ2ZWQgYnkgbXcxMS BpbiAwLjExNyBzZWNzLiAtLT4NCgk8L2JvZHk+DQo8L2h0bWw+DQo=

You might also like