--- http_interactions: - request: method: get uri: https://dataverse.harvard.edu/dataset.xhtml?persistentId=doi:10.7910/DVN/GAOC03 body: encoding: US-ASCII string: '' headers: User-Agent: - Maremma 4.0.5 - https://github.com/datacite/maremma Accept: - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5 response: status: code: 200 message: OK headers: Cache-Control: - no-cache="set-cookie" Content-Type: - text/html;charset=UTF-8 Date: - Mon, 21 May 2018 15:01:22 GMT Server: - Apache/2.4.6 (Red Hat Enterprise Linux) OpenSSL/1.0.2k-fips Set-Cookie: - JSESSIONID=3381b8a71ce0c66d28aff13f1ee2; Path=/; Secure; HttpOnly, AWSELB=EB1179591E49E298C6825A3028F74991071DEE12D3CF6A1B0A2CD5F2F144400DE0E06A10F0DBD3EC37C4E69D8B958E3FBF8CF81403222DF6AABE0F6509EF79AB1D548B7265;PATH=/;MAX-AGE=28800 Connection: - keep-alive body: encoding: ASCII-8BIT string: !binary |- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnID8+CjwhRE9DVFlQRSBodG1sPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgbGFuZz0iZW4iPjxoZWFkPgogICAgICAgICAgICA8dGl0bGU+VGhlIE5hdGlvbmFsIExhYm9yIEZvcmNlIDogU0FLRVJOQVMsIDIwMDggLSBOdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlPC90aXRsZT4KCSAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIgLz4KCSAgICA8bWV0YSBuYW1lPSJEQy5pZGVudGlmaWVyIiBjb250ZW50PSJkb2k6MTAuNzkxMC9EVk4vR0FPQzAzIiAvPgoJICAgIDxtZXRhIG5hbWU9IkRDLnR5cGUiIGNvbnRlbnQ9IkRhdGFzZXQiIC8+CgkgICAgPG1ldGEgbmFtZT0iREMudGl0bGUiIGNvbnRlbnQ9IlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4IiAvPgogICAgICAgICAgICA8bWV0YSBuYW1lPSJEQy5kYXRlIiBjb250ZW50PSIyMDE4LTAzLTE2IiAvPgoJICAgIDxtZXRhIG5hbWU9IkRDLnB1Ymxpc2hlciIgY29udGVudD0iSGFydmFyZCBEYXRhdmVyc2UiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9IkRDLmRlc2NyaXB0aW9uIiBjb250ZW50PSJOYXRpb25hbCBsYWJvciBmb3JjZSBzdXJ2ZXkgaW4gSW5kb25lc2lhLiBTdXJ2ZWkgYW5na2F0YW4ga2VyamEgbmFzaW9uYWwuIDIwMDgiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9IkRDLmNyZWF0b3IiIGNvbnRlbnQ9IkJhZGFuIFB1c2F0IFN0YXRpc3RpayIgLz4KICAgICAgICAgICAgPG1ldGEgbmFtZT0iREMuc3ViamVjdCIgY29udGVudD0iU29jaWFsIFNjaWVuY2VzIiAvPgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj57IkBjb250ZXh0IjoiaHR0cDovL3NjaGVtYS5vcmciLCJAdHlwZSI6IkRhdGFzZXQiLCJpZGVudGlmaWVyIjoiaHR0cDovL2R4LmRvaS5vcmcvMTAuNzkxMC9EVk4vR0FPQzAzIiwibmFtZSI6IlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4IiwiYXV0aG9yIjpbeyJuYW1lIjoiQmFkYW4gUHVzYXQgU3RhdGlzdGlrIn1dLCJkYXRlUHVibGlzaGVkIjoiMjAxOC0wMy0xNiIsImRhdGVNb2RpZmllZCI6IjIwMTgtMDMtMTYiLCJ2ZXJzaW9uIjoiMSIsImRlc2NyaXB0aW9uIjoiTmF0aW9uYWwgbGFib3IgZm9yY2Ugc3VydmV5IGluIEluZG9uZXNpYS4gU3VydmVpIGFuZ2thdGFuIGtlcmphIG5hc2lvbmFsLiAyMDA4Iiwia2V5d29yZHMiOlsiU29jaWFsIFNjaWVuY2VzIiwiTGFib3IgU3VwcGx5LCBJbmRvbmVzaWEsIFN0YXRpc3RpY3MiXSwic2NoZW1hVmVyc2lvbiI6Imh0dHBzOi8vc2NoZW1hLm9yZy92ZXJzaW9uLzMuMyIsImxpY2Vuc2UiOnsiQHR5cGUiOiJEYXRhc2V0IiwidGV4dCI6IkxpY2Vuc2VkIGVsZWN0cm9uaWMgcmVzb3VyY2VzIGFyZSByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBVbmRlciBIYXJ2YXJkJ3MgbGljZW5zZXMgZm9yIGVsZWN0cm9uaWMgcmVzb3VyY2VzLCB1c2VycyBnZW5lcmFsbHkgbWF5IG5vdDogcGVybWl0IGFueW9uZSBvdGhlciB0aGFuIGF1dGhvcml6ZWQgdXNlcnMgdG8gdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHM7IG1vZGlmeSBvciBjcmVhdGUgYSBkZXJpdmF0aXZlIHdvcmsgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyB3aXRob3V0IHRoZSBwZXJtaXNzaW9uIG9mIHRoZSBsaWNlbnNvcjsgcmVtb3ZlLCBvYnNjdXJlIG9yIG1vZGlmeSBhbnkgY29weXJpZ2h0IG9yIG90aGVyIG5vdGljZXMgaW5jbHVkZWQgaW4gdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMgZm9yIGNvbW1lcmNpYWwgcHVycG9zZXMsIGluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gdGhlIHNhbGUgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscy4gVXNlcnMgYXJlIGluZGl2aWR1YWxseSByZXNwb25zaWJsZSBmb3IgY29tcGxpYW5jZSB3aXRoIHRoZXNlIHRlcm1zLiJ9LCJpbmNsdWRlZEluRGF0YUNhdGFsb2ciOnsiQHR5cGUiOiJEYXRhQ2F0YWxvZyIsIm5hbWUiOiJIYXJ2YXJkIERhdGF2ZXJzZSIsInVybCI6Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1In0sInByb3ZpZGVyIjp7IkB0eXBlIjoiT3JnYW5pemF0aW9uIiwibmFtZSI6IkRhdGF2ZXJzZSJ9fQoKICAgICAgICAgICAgICAgIDwvc2NyaXB0PgogICAgICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LUxhbmd1YWdlIiBjb250ZW50PSJlbiIgLz4KICAgICAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIiAvPgogICAgICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJUaGUgRGF0YXZlcnNlIFByb2plY3QgaXMgYW4gb3BlbiBzb3VyY2Ugc29mdHdhcmUgYXBwbGljYXRpb24gdG8gc2hhcmUsIGNpdGUgYW5kIGFyY2hpdmUgZGF0YS4gRGF0YXZlcnNlIHByb3ZpZGVzIGEgcm9idXN0IGluZnJhc3RydWN0dXJlIGZvciBkYXRhIHN0ZXdhcmRzIHRvIGhvc3QgYW5kIGFyY2hpdmUgZGF0YSwgd2hpbGUgb2ZmZXJpbmcgcmVzZWFyY2hlcnMgYW4gZWFzeSB3YXkgdG8gc2hhcmUgYW5kIGdldCBjcmVkaXQgZm9yIHRoZWlyIGRhdGEuIiAvPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS90aGVtZS5jc3MueGh0bWw/bG49cHJpbWVmYWNlcy1ib290c3RyYXAiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pxdWVyeS9qcXVlcnkuanMueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanF1ZXJ5L2pxdWVyeS1wbHVnaW5zLmpzLnhodG1sO2pzZXNzaW9uaWQ9MzM4MWI4YTcxY2UwYzY2ZDI4YWZmMTNmMWVlMj9sbj1wcmltZWZhY2VzJmFtcDt2PTUuMyI+PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL3ByaW1lZmFjZXMuanMueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvcHJpbWVmYWNlcy5jc3MueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIiAvPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS93YXRlcm1hcmsvd2F0ZXJtYXJrLmNzcy54aHRtbDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL3dhdGVybWFyay93YXRlcm1hcmsuanMueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvZmlsZXVwbG9hZC9maWxldXBsb2FkLmNzcy54aHRtbDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2ZpbGV1cGxvYWQvZmlsZXVwbG9hZC5qcy54aHRtbDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5pZih3aW5kb3cuUHJpbWVGYWNlcyl7fTwvc2NyaXB0PgogICAgICAgIDxsaW5rIHR5cGU9ImltYWdlL3BuZyIgcmVsPSJpY29uIiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvaW1hZ2VzL2Zhdmljb25kYXRhdmVyc2UucG5nLnhodG1sIiAvPgogICAgICAgIDxsaW5rIHR5cGU9ImltYWdlL3BuZyIgcmVsPSJpbWFnZV9zcmMiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9pbWFnZXMvZGF0YXZlcnNlcHJvamVjdC5wbmcueGh0bWwiIC8+CiAgICAgICAgPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL2JzL2Nzcy9ib290c3RyYXAubWluLmNzcy54aHRtbD92ZXJzaW9uPTQuOC42IiAvPgogICAgICAgIDxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9icy9jc3MvYm9vdHN0cmFwLXRoZW1lLm1pbi5jc3MueGh0bWw/dmVyc2lvbj00LjguNiIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL2llLWNvbXBhdC5jc3MueGh0bWw/dmVyc2lvbj00LjguNiIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL293bC5jYXJvdXNlbC5jc3MueGh0bWw/dmVyc2lvbj00LjguNiIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL2ZvbnRjdXN0b20uY3NzLnhodG1sP3ZlcnNpb249NC44LjYiIC8+CiAgICAgICAgPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL2Nzcy9zb2NpY29uLmNzcy54aHRtbD92ZXJzaW9uPTQuOC42IiAvPgogICAgICAgIDxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9jc3Mvc3RydWN0dXJlLmNzcy54aHRtbD92ZXJzaW9uPTQuOC42IiAvPgogICAgICAgICAgICA8c2NyaXB0PgogICAgICAgICAgICAgICAgLy8gQnJlYWsgb3V0IG9mIGlmcmFtZQogICAgICAgICAgICAgICAgaWYgKHdpbmRvdyAhPT0gdG9wKSB0b3AubG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb247CiAgICAgICAgICAgIDwvc2NyaXB0PgogICAgICAgICAgICA8c3R5bGU+CiAgICAgICAgICAgICAgICAvKiBDdXN0b20gQ1NTICovCiAgICAgICAgICAgICAgICAjbmF2YmFyRml4ZWQgZGl2Lm5hdmJhci1oZWFkZXIgaW1nLm5hdmJhci1icmFuZC5jdXN0b20tbG9nbyB7aGVpZ2h0OjUwcHggIWltcG9ydGFudDt9CiNkYXRhdmVyc2VEZXNjIHNwYW4gPiBzcGFuID4gc3BhbiA+IGgzIHtmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7fQoKICAgICAgICAgICAgPC9zdHlsZT48L2hlYWQ+PGJvZHk+Cgk8YSBocmVmPSIjY29udGVudCIgY2xhc3M9InNyLW9ubHkiPlNraXAgdG8gbWFpbiBjb250ZW50PC9hPgogICAgCiAgICA8ZGl2IGlkPSJkYXRhdmVyc2UtaGVhZGVyLWJsb2NrIj48bmF2IHJvbGU9Im5hdmlnYXRpb24iIGlkPSJuYXZiYXJGaXhlZCIgY2xhc3M9Im5hdmJhciBuYXZiYXItZGVmYXVsdCBuYXZiYXItZml4ZWQtdG9wIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhci1oZWFkZXIiPgogICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibmF2YmFyLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3RvcE5hdkJhciIgYXJpYS1wcmVzc2VkPSJmYWxzZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5Ub2dnbGUgbmF2aWdhdGlvbjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4gICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii8iPjxpbWcgc3JjPSIvbG9nb3MvbmF2YmFyL2xvZ28ucG5nO2pzZXNzaW9uaWQ9MzM4MWI4YTcxY2UwYzY2ZDI4YWZmMTNmMWVlMiIgY2xhc3M9Im5hdmJhci1icmFuZCBjdXN0b20tbG9nbyIgLz4KICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSIgaWQ9InRvcE5hdkJhciI+CiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2YmFyLW5hdiBuYXZiYXItcmlnaHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgaWQ9Im5hdmJhci1zZWFyY2gtdG9nZ2xlIiB0aXRsZT0iU2VhcmNoIGFsbCBkYXRhdmVyc2VzLi4uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zZWFyY2giPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gY2xhc3M9Im5hdmJhci1mb3JtIG5hdmJhci1sZWZ0IiByb2xlPSJzZWFyY2giIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0ic3Itb25seSIgZm9yPSJuYXZiYXJzZWFyY2giPlNlYXJjaDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPSJuYXZiYXJzZWFyY2giIHR5cGU9InRleHQiIGNsYXNzPSJzZWFyY2gtaW5wdXQgdWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCIgc2l6ZT0iMjgiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJTZWFyY2ggYWxsIGRhdGF2ZXJzZXMuLi4iIC8+ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0id2luZG93LmxvY2F0aW9uID0gJy9kYXRhdmVyc2UvaGFydmFyZD9xPScgKyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbmF2YmFyc2VhcmNoJykudmFsdWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXNlYXJjaCI+PC9zcGFuPiBGaW5kCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2Uub3JnIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWJvdXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4gICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CgogICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cDovL2d1aWRlcy5kYXRhdmVyc2Uub3JnL2VuLzQuOC42L3VzZXIiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVc2VyIEd1aWRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+Cjxmb3JtIGlkPSJqX2lkdDYyIiBuYW1lPSJqX2lkdDYyIiBtZXRob2Q9InBvc3QiIGFjdGlvbj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIiBjbGFzcz0ibmF2YmFyLWZvcm0gbmF2YmFyLWxlZnQgbmF2YmFyLWZvcm0tbGluayI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImpfaWR0NjIiIHZhbHVlPSJqX2lkdDYyIiAvPgo8YSBpZD0ial9pZHQ2MjpqX2lkdDYzIiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2pfaWR0NjI6al9pZHQ2MyZxdW90Oyx1OiZxdW90O2NvbnRhY3REaWFsb2cmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdjb250YWN0Rm9ybScpLnNob3coKTt9fSk7cmV0dXJuIGZhbHNlOyI+U3VwcG9ydDwvYT48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJqYXZheC5mYWNlcy5WaWV3U3RhdGUiIGlkPSJqX2lkMTpqYXZheC5mYWNlcy5WaWV3U3RhdGU6MCIgdmFsdWU9Ii03Nzg1MTI4ODQ5MzAyNjQ2ODM1Oi0yMDUwODIyNDg2MzY5NTA3NzYiIGF1dG9jb21wbGV0ZT0ib2ZmIiAvPgo8L2Zvcm0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2RhdGF2ZXJzZXVzZXIueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP2VkaXRNb2RlPUNSRUFURSZhbXA7cmVkaXJlY3RQYWdlPSUyRmRhdGFzZXQueGh0bWwlM0ZwZXJzaXN0ZW50SWQlM0Rkb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2lnbiBVcAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2xvZ2lucGFnZS54aHRtbDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/cmVkaXJlY3RQYWdlPSUyRmRhdGFzZXQueGh0bWwlM0ZwZXJzaXN0ZW50SWQlM0Rkb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTG9nIEluCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvbmF2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQ6I0Y1RjVGNTsiIGlkPSJkYXRhdmVyc2VIZWFkZXIiIGNsYXNzPSJjb250YWluZXIgYmctbXV0ZWQiPjxkaXYgc3R5bGU9InRleHQtYWxpZ246TEVGVDtiYWNrZ3JvdW5kOiNmZmZmZmY7IiBjbGFzcz0iZGF0YXZlcnNlSGVhZGVyTG9nbyI+CiAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL2xvZ29zLzE3OS9uZHMuZ2lmIiBhbHQ9Ik51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UiIC8+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRhdGF2ZXJzZUhlYWRlckJsb2NrIj48ZGl2IGNsYXNzPSJkYXRhdmVyc2VIZWFkZXJDZWxsIGRhdGF2ZXJzZUhlYWRlck5hbWUiPgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UvbmRzIiBjbGFzcz0iZGF0YXZlcnNlSGVhZGVyRGF0YXZlcnNlTmFtZSIgc3R5bGU9ImNvbG9yOiM5YTM4Mzg7Ij5OdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlPC9hPjxzcGFuIHN0eWxlPSJjb2xvcjojODg4ODg4OyI+IChIYXJ2YXJkIFVuaXZlcnNpdHkpPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImRhdGF2ZXJzZUhlYWRlckNlbGwgZGF0YXZlcnNlSGVhZGVyTGluayI+PGEgaHJlZj0iaHR0cDovL2hjbC5oYXJ2YXJkLmVkdS9saWJyYXJpZXMvbGFtb250L2NvbGxlY3Rpb25zL251bWVyaWNkYXRhL3NlcnZpY2VzLmNmbSIgc3R5bGU9ImNvbG9yOiM5YTM4Mzg7IiB0YXJnZXQ9Il9ibGFuayI+SG9tZSBQYWdlPC9hPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L2Rpdj48ZGl2IGlkPSJicmVhZGNydW1iTmF2QmxvY2siIGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnJlYWRjcnVtYkJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGlkPSJicmVhZGNydW1iTG5rMCIgaHJlZj0iL2RhdGF2ZXJzZS9oYXJ2YXJkIj5IYXJ2YXJkIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgPC9kaXY+PHNwYW4gY2xhc3M9ImJyZWFkY3J1bWJDYXJyb3QiPiAmZ3Q7IDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJyZWFkY3J1bWJCbG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iYnJlYWRjcnVtYkxuazEiIGhyZWY9Ii9kYXRhdmVyc2UvSGFydmFyZFN1YnNjcmlwdGlvbkRhdGEiPkhhcnZhcmQgU3Vic2NyaXB0aW9uIERhdGEgRGF0YXZlcnNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8L2Rpdj48c3BhbiBjbGFzcz0iYnJlYWRjcnVtYkNhcnJvdCI+ICZndDsgPC9zcGFuPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnJlYWRjcnVtYkJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGlkPSJicmVhZGNydW1iTG5rMiIgaHJlZj0iL2RhdGF2ZXJzZS9uZHMiPk51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgIDwvZGl2PjxzcGFuIGNsYXNzPSJicmVhZGNydW1iQ2Fycm90Ij4gJmd0OyA8L3NwYW4+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJicmVhZGNydW1iQmxvY2siPjxzcGFuIGNsYXNzPSJicmVhZGNydW1iQWN0aXZlIj5UaGUgTmF0aW9uYWwgTGFib3IgRm9yY2UgOiBTQUtFUk5BUywgMjAwODwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgaWQ9Im1lc3NhZ2VQYW5lbCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciBtZXNzYWdlUGFuZWwiPgogICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgaWQ9ImNvbnRlbnQiPgo8Zm9ybSBpZD0iZGF0YXNldEZvcm0iIG5hbWU9ImRhdGFzZXRGb3JtIiBtZXRob2Q9InBvc3QiIGFjdGlvbj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIiBlbmN0eXBlPSJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkYXRhc2V0Rm9ybSIgdmFsdWU9ImRhdGFzZXRGb3JtIiAvPgo8ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0b3BEYXRhc2V0QmxvY2tGcmFnbWVudCI+PGRpdiBpZD0idG9wRGF0YXNldEJsb2NrIj48ZGl2IGlkPSJhY3Rpb25CdXR0b25CbG9jayIgY2xhc3M9ImJ1dHRvbi1ibG9jayBjbGVhcmZpeCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidG4tZ3JvdXAgcHVsbC1yaWdodCIgcm9sZT0iZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRuLWdyb3VwIHB1bGwtcmlnaHQiIGlkPSJkYXRhc2V0QnV0dG9uQmFyIiByb2xlPSJncm91cCI+PGEgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjQ3IiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IHRleHQtYnV0dG9uIGJvb3RzdHJhcC1idXR0b24tdG9vbHRpcCIgYXJpYS1sYWJlbD0iRW1haWwgRGF0YXNldCBDb250YWN0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MjQ3JnF1b3Q7LHU6JnF1b3Q7Y29udGFjdERpYWxvZyZxdW90OyxvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7UEYoJ2NvbnRhY3RGb3JtJykuc2hvdygpO30sZmk6JnF1b3Q7ZGF0YXNldEZvcm06dG9wRGF0YXNldEJsb2NrRnJhZ21lbnQmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0aXRsZT0iRW1haWwgRGF0YXNldCBDb250YWN0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZW52ZWxvcGUiPjwvc3Bhbj4gQ29udGFjdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48YSBpZD0iZGF0YXNldEZvcm06al9pZHQyNDkiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgdGV4dC1idXR0b24gYm9vdHN0cmFwLWJ1dHRvbi10b29sdGlwIiBhcmlhLWxhYmVsPSJTaGFyZSBEYXRhc2V0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MjQ5JnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignc2hhcmVEaWFsb2cnKS5zaG93KCk7c2hhcnJyZSgpOzt9LGZpOiZxdW90O2RhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdGl0bGU9IlNoYXJlIERhdGFzZXQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zaGFyZSI+PC9zcGFuPiBTaGFyZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNoYXJlRGlhbG9nIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNoYXJlRGlhbG9nX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TaGFyZSBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IFNoYXJlIHRoaXMgZGF0YXNldCBvbiB5b3VyIGZhdm9yaXRlIHNvY2lhbCBtZWRpYSBuZXR3b3Jrcy48L3A+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InNoYXJycmUtd2lkZ2V0IiBkYXRhLXVybD0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvZGF0YXNldC54aHRtbD9wZXJzaXN0ZW50SWQ9ZG9pOjEwLjc5MTAvRFZOL0dBT0MwMyIgZGF0YS10ZXh0PSJWaWV3IHRoaXMgZGF0YXNldC4iPjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iUEYoJ3NoYXJlRGlhbG9nJykuaGlkZSgpIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB2YWx1ZT0iQ2xvc2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2hhcmVEaWFsb2dfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2hhcmVEaWFsb2ciLHtpZDoiZGF0YXNldEZvcm06c2hhcmVEaWFsb2ciLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJtZXRyaWNzLWJsb2NrIiBjbGFzcz0iY29sLXhzLTMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9Im1ldHJpY3MtbGFiZWwiIGNsYXNzPSJjb2wteHMtNCBzbWFsbCB0ZXh0LWNlbnRlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXN0YXRzIj48L3NwYW4+IE1ldHJpY3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJtZXRyaWNzLWNvbnRlbnQiIGNsYXNzPSJjb2wteHMtOCBzbWFsbCB0ZXh0LWNlbnRlciI+PHNwYW4gY2xhc3M9Im1ldHJpY3MtZG93bmxvYWRzIj4wIERvd25sb2Fkczwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRhdGFzZXRWZXJzaW9uQmxvY2siIGNsYXNzPSJjb250YWluZXItZmx1aWQiPjxkaXYgaWQ9InRpdGxlLWJsb2NrIiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMSB2Y2VudGVyIHRpdGxlLXByZXZpZXctaWNvbi1ibG9jayI+PHNwYW4gY2xhc3M9Imljb24tZGF0YXNldCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMSB2Y2VudGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9InRpdGxlIj5UaGUgTmF0aW9uYWwgTGFib3IgRm9yY2UgOiBTQUtFUk5BUywgMjAwODwvc3Bhbj48c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtZGVmYXVsdCI+VmVyc2lvbiAxLjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAKICAgIDxkaXYgaWQ9ImNpdGF0aW9uLWJsb2NrIiBjbGFzcz0icm93Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgIGFsZXJ0IGFsZXJ0LWluZm8gYmctY2l0YXRpb24iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3cgIj4KICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImNpdGF0aW9uIiBjbGFzcz0iY29sLXhzLTcgY29sLW1kLTgiPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJjaXRhdGlvbi1zZWxlY3QiIG9uY2xpY2s9ImlmIChldmVudC50YXJnZXQpIHsgc2VsZWN0VGV4dChldmVudC50YXJnZXQpOyB9IGVsc2V7IHNlbGVjdFRleHQodGhpcyk7IH0iPkJhZGFuIFB1c2F0IFN0YXRpc3RpaywgMjAxOCwgIlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4IiwgPGEgaHJlZj0iaHR0cHM6Ly9kb2kub3JnLzEwLjc5MTAvRFZOL0dBT0MwMyIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vZG9pLm9yZy8xMC43OTEwL0RWTi9HQU9DMDM8L2E+LCBIYXJ2YXJkIERhdGF2ZXJzZSwgVjEKICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj48ZGl2IGlkPSJjaXRhdGlvbi1kb3dubG9hZCIgY2xhc3M9ImNvbC1zbS01IGNvbC1tZC00IHRleHQtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJkb3dubG9hZENpdGF0aW9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxpc3QiPjwvc3Bhbj4gQ2l0ZSBEYXRhc2V0IDxzcGFuIGNsYXNzPSJjYXJldCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51IHB1bGwtcmlnaHQgdGV4dC1sZWZ0IiByb2xlPSJtZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzZi5qcy54aHRtbD9sbj1qYXZheC5mYWNlcyI+PC9zY3JpcHQ+DQo8YSBpZD0iZGF0YXNldEZvcm06ZW5kTm90ZUxpbmsiIGhyZWY9IiMiIG9uY2xpY2s9Im1vamFycmEuanNmY2xqcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGF0YXNldEZvcm0nKSx7J2RhdGFzZXRGb3JtOmVuZE5vdGVMaW5rJzonZGF0YXNldEZvcm06ZW5kTm90ZUxpbmsnfSwnJyk7cmV0dXJuIGZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5kTm90ZSBYTUwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGlkPSJkYXRhc2V0Rm9ybTpyaXNMaW5rIiBocmVmPSIjIiBvbmNsaWNrPSJtb2phcnJhLmpzZmNsanMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RhdGFzZXRGb3JtJykseydkYXRhc2V0Rm9ybTpyaXNMaW5rJzonZGF0YXNldEZvcm06cmlzTGluayd9LCcnKTtyZXR1cm4gZmFsc2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSSVMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGlkPSJkYXRhc2V0Rm9ybTpiaWJMaW5rIiBocmVmPSIjIiBvbmNsaWNrPSJtb2phcnJhLmpzZmNsanMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RhdGFzZXRGb3JtJykseydkYXRhc2V0Rm9ybTpiaWJMaW5rJzonZGF0YXNldEZvcm06YmliTGluayd9LCdfYmxhbmsnKTtyZXR1cm4gZmFsc2UiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmliVGVYCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJjaXRhdGlvbi1zdGFuZGFyZHMiIGNsYXNzPSJzbWFsbCB0ZXh0LW11dGVkIHRleHQtcmlnaHQiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWluZm8tc2lnbiI+PC9zcGFuPiBMZWFybiBhYm91dCA8YSBocmVmPSJodHRwOi8vYmVzdC1wcmFjdGljZXMuZGF0YXZlcnNlLm9yZy9kYXRhLWNpdGF0aW9uLyIgdGl0bGU9IkdldCBSZWNvZ25pdGlvbjogRGF0YSBDaXRhdGlvbiAgLSBEYXRhdmVyc2UgQmVzdCBQcmFjdGljZXMiIHRhcmdldD0iX2JsYW5rIj5EYXRhIENpdGF0aW9uIFN0YW5kYXJkczwvYT4uPC9kaXY+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+PGRpdiBpZD0iZGF0YXNldC1zdW1tYXJ5LW1ldGFkYXRhIiBjbGFzcz0icm93IHBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkgbWV0YWRhdGEtcGFuZWwtYm9keSI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfZHNEZXNjcmlwdGlvbiIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJBIHN1bW1hcnkgZGVzY3JpYmluZyB0aGUgcHVycG9zZSwgbmF0dXJlLCBhbmQgc2NvcGUgb2YgdGhlIERhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pk5hdGlvbmFsIGxhYm9yIGZvcmNlIHN1cnZleSBpbiBJbmRvbmVzaWEuIFN1cnZlaSBhbmdrYXRhbiBrZXJqYSBuYXNpb25hbC4gMjAwOAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfc3ViamVjdCIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJEb21haW4tc3BlY2lmaWMgU3ViamVjdCBDYXRlZ29yaWVzIHRoYXQgYXJlIHRvcGljYWxseSByZWxldmFudCB0byB0aGUgRGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1YmplY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PGRpdiBjbGFzcz0iY29sLXNtLTkiPlNvY2lhbCBTY2llbmNlczwvZGl2PjwvZGl2PjxkaXYgaWQ9ImtleXdvcmRzIiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iS2V5IHRlcm1zIHRoYXQgZGVzY3JpYmUgaW1wb3J0YW50IGFzcGVjdHMgb2YgdGhlIERhdGFzZXQuIj5LZXl3b3JkPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPkxhYm9yIFN1cHBseSwgSW5kb25lc2lhLCBTdGF0aXN0aWNzPC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBpZD0iY29udGVudFRhYnMiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnBhZ2VSZWZyZXNoRnJhZ21lbnQiPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06ZGF0YXNldExvY2tlZEZvckluZ2VzdFZhcmlhYmxlIiB0eXBlPSJoaWRkZW4iIG5hbWU9ImRhdGFzZXRGb3JtOmRhdGFzZXRMb2NrZWRGb3JJbmdlc3RWYXJpYWJsZSIgdmFsdWU9ImZhbHNlIiAvPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06ZGF0YXNldFN0YXRlQ2hhbmdlZFZhcmlhYmxlIiB0eXBlPSJoaWRkZW4iIG5hbWU9ImRhdGFzZXRGb3JtOmRhdGFzZXRTdGF0ZUNoYW5nZWRWYXJpYWJsZSIgdmFsdWU9ImZhbHNlIiAvPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5yZWZyZXNoSW5nZXN0TG9ja0NvbW1hbmQgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpqX2lkdDQ1MiIsZjoiZGF0YXNldEZvcm0iLHA6ImRhdGFzZXRGb3JtOmpfaWR0NDUyIix1OiJkYXRhc2V0Rm9ybTpwYWdlUmVmcmVzaEZyYWdtZW50IixwYTphcmd1bWVudHNbMF0sZmk6ImRhdGFzZXRGb3JtOnBhZ2VSZWZyZXNoRnJhZ21lbnQifSk7fTwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5yZWZyZXNoQWxsQ29tbWFuZCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOmpfaWR0NDUzIixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06al9pZHQ0NTMiLHU6ImRhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50IGRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSBtZXNzYWdlUGFuZWwiLHBhOmFyZ3VtZW50c1swXSxmaToiZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCJ9KTt9PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiIgbmFtZT0iZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiIgY2xhc3M9IiIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uJnF1b3Q7LHA6JnF1b3Q7ZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50IGRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSBtZXNzYWdlUGFuZWwmcXVvdDssZmk6JnF1b3Q7ZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCZxdW90O30pO3JldHVybiBmYWxzZTsiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPnVpLWJ1dHRvbjwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsInJlZnJlc2hCdXR0b24iLHtpZDoiZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiJ9KTs8L3NjcmlwdD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5yZWFkeShmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hJZlN0aWxsTG9ja2VkKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHJlZnJlc2hJZlN0aWxsTG9ja2VkKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgnaW5wdXRbaWQkPSJkYXRhc2V0TG9ja2VkRm9ySW5nZXN0VmFyaWFibGUiXScpLnZhbCgpID09PSAndHJ1ZScpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlmIGRhdGFzZXQgaXMgbG9ja2VkLCBpbnN0cnVjdCB0aGUgcGFnZSB0bwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gd2FpdCBhbmQgY2hlY2sgYWdhaW46CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YWl0QW5kQ2hlY2tMb2NrQWdhaW4oKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlmIG5vdCBsb2NrZWQsIGhhcyBpdCBqdXN0IGJlZW4gdW5sb2NrZWQ/CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgnaW5wdXRbaWQkPSJkYXRhc2V0U3RhdGVDaGFuZ2VkVmFyaWFibGUiXScpLnZhbCgpID09PSAndHJ1ZScpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBGb3Igd2hhdGV2ZXIgdW5rbm93biBQcmltZUZhY2VzIHJlYXNvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSBwYWdlIG5lZWRzIHRvIGJlIHJlZnJlc2hlZCB0d2ljZSwgZm9yIGFsbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSBwdWxsIGRvd24gbWVudXMgdG8gdXBkYXRlIHByb3Blcmx5OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hBbGxDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gWW91IGNhbid0IGp1c3QgcnVuIDIgcmVmcmVzaEFsbENvbW1hbmQoKXMgaW4gYSByb3cKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlaXRoZXI7IGJlY2F1c2UgdGhlIGNvbW1hbmQgaGFzIGFuICJ1cGRhdGU9QGFsbCIgb24gaXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc28gSSBndWVzcyBpZiB5b3UgdHJ5IHRvIGV4ZWN1dGUgdGhlIDJuZCBvbmUgcmlnaHQgYWZ0ZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGUgZmlyc3Qgb25lLCB0aGlzIGZyYWdtZW50IGlzIHN0aWxsIGdvaW5nIHRvIGJlIGxvYWRpbmcgLQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNvIHRoZXJlIHdvdWxkIG5vdCB5ZXQgYmUgYSBjb21tYW5kIHRvIHJ1biEgKGl0IG5lZWRzIHRvCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYmUgcmVuZGVyZWQsIGJlZm9yZSB5b3UgY2FuIGV4ZWN1dGUgaXQsIHRoYXQgaXMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgYnV0dG9uIGRvZXNuJ3QgZG8gYW55dGhpbmcsIGJ1dCBpdCBoYXMgYW4gdXBkYXRlPSJAYWxsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBhdHRyaWJ1dGU6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9InJlZnJlc2hCdXR0b24iXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vcmVmcmVzaEFsbENvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxNTAwKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gd2FpdEFuZENoZWNrTG9ja0FnYWluKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJlZnJlc2ggdGhlIGxvY2sgaW4gdGhlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBiYWNraW5nIGJlYW47IGkuZS4sIGNoZWNrLCBpZiB0aGUgaW5nZXN0IGhhcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYWxyZWFkeSBjb21wbGV0ZWQgaW4gdGhlIGJhY2tncm91bmQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyQoJ2J1dHRvbltpZCQ9InJlZnJlc2hCdXR0b24iXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3JlZnJlc2hMb2NrQ29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaEluZ2VzdExvY2tDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDAwKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NjcmlwdD48L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3IiBjbGFzcz0idWktdGFicyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1oaWRkZW4tY29udGFpbmVyIHVpLXRhYnMtdG9wIiBkYXRhLXdpZGdldD0iY29udGVudCI+PHVsIGNsYXNzPSJ1aS10YWJzLW5hdiB1aS1oZWxwZXItcmVzZXQgdWktaGVscGVyLWNsZWFyZml4IHVpLXdpZGdldC1oZWFkZXIgdWktY29ybmVyLWFsbCIgcm9sZT0idGFibGlzdCI+PGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IHVpLXRhYnMtc2VsZWN0ZWQgdWktc3RhdGUtYWN0aXZlIHVpLWNvcm5lci10b3AiIHJvbGU9InRhYiIgYXJpYS1leHBhbmRlZD0idHJ1ZSIgYXJpYS1zZWxlY3RlZD0idHJ1ZSI+PGEgaHJlZj0iI2RhdGFzZXRGb3JtOnRhYlZpZXc6ZGF0YUZpbGVzVGFiIiB0YWJpbmRleD0iLTEiPkZpbGVzPC9hPjwvbGk+PGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci10b3AiIHJvbGU9InRhYiIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj48YSBocmVmPSIjZGF0YXNldEZvcm06dGFiVmlldzptZXRhZGF0YU1hcFRhYiIgdGFiaW5kZXg9Ii0xIj5NZXRhZGF0YTwvYT48L2xpPjxsaSBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItdG9wIiByb2xlPSJ0YWIiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PGEgaHJlZj0iI2RhdGFzZXRGb3JtOnRhYlZpZXc6dGVybXNUYWIiIHRhYmluZGV4PSItMSI+VGVybXM8L2E+PC9saT48bGkgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLXRvcCIgcm9sZT0idGFiIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPjxhIGhyZWY9IiNkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFiIiB0YWJpbmRleD0iLTEiPlZlcnNpb25zPC9hPjwvbGk+PC91bD48ZGl2IGNsYXNzPSJ1aS10YWJzLXBhbmVscyI+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpkYXRhRmlsZXNUYWIiIGNsYXNzPSJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20iIHJvbGU9InRhYnBhbmVsIiBhcmlhLWhpZGRlbj0iZmFsc2UiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIgY2xhc3M9InVpLWRhdGF0YWJsZSB1aS13aWRnZXQgdWktZGF0YXRhYmxlLXNjcm9sbGFibGUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6MXB4OyI+PGRpdiBjbGFzcz0idWktZGF0YXRhYmxlLWhlYWRlciB1aS13aWRnZXQtaGVhZGVyIHVpLWNvcm5lci10b3AiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpmaWxlc0hlYWRlckJsb2NrIiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy02Ij4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2VhcmNoRmlsZXMiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzZWFyY2hGaWxlcyIgdHlwZT0idGV4dCIgb25rZXlwcmVzcz0iaWYgKGV2ZW50LmtleUNvZGUgPT0gMTMpIHsgc3VibWl0c2VhcmNoKCk7IHJldHVybiBmYWxzZTsgfSIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIiAvPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzZWFyY2hGaWxlc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIklucHV0VGV4dCIsImlucHV0U2VhcmNoVGVybSIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2VhcmNoRmlsZXMifSk7PC9zY3JpcHQ+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NjQ3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIldhdGVybWFyayIsIndpZGdldF9kYXRhc2V0Rm9ybV90YWJWaWV3X2ZpbGVzVGFibGVfal9pZHQ2NDciLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NjQ3Iix2YWx1ZToiU2VhcmNoIHRoaXMgZGF0YXNldC4uLiIsdGFyZ2V0OiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2VhcmNoRmlsZXMifSwid2F0ZXJtYXJrIik7fSk7PC9zY3JpcHQ+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2hvd0FjY2Vzc1BvcHVwIiB0eXBlPSJoaWRkZW4iIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzaG93QWNjZXNzUG9wdXAiIHZhbHVlPSJmYWxzZSIgLz48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+c3VibWl0c2VhcmNoID0gZnVuY3Rpb24oKSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NjQ4IixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NjQ4IEB3aWRnZXRWYXIoaW5wdXRTZWFyY2hUZXJtKSIsdToiZGF0YXNldEZvcm0iLHBzOnRydWUscGE6YXJndW1lbnRzWzBdfSk7fTwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImlucHV0LWdyb3VwLWJ0biI+PGEgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDY1MCIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NjUwJnF1b3Q7LHA6JnF1b3Q7ZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NjUwIEB3aWRnZXRWYXIoaW5wdXRTZWFyY2hUZXJtKSZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtJnF1b3Q7LHBzOnRydWV9KTtyZXR1cm4gZmFsc2U7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zZWFyY2giPjwvc3Bhbj4gRmluZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IiBzdHlsZT0ibWFyZ2luLWJvdHRvbTo2cHg7Ij4KICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImZpbGVzSGVhZGVyQ291bnQiIGNsYXNzPSJjb2wteHMtMiB0ZXh0LWxlZnQiPjxzcGFuIGNsYXNzPSJoaWdobGlnaHRCb2xkIj41IEZpbGVzPC9zcGFuPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJmaWxlc0J1dHRvbnMiIGNsYXNzPSJjb2wteHMtMTAiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTp1cGxvYWRDb21wdXRlQmxvY2siIGNsYXNzPSJidXR0b24tYmxvY2sgdGFiLWhlYWRlciBwdWxsLXJpZ2h0IHRleHQtcmlnaHQiPjwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InVpLXdpZGdldC1oZWFkZXIgdWktZGF0YXRhYmxlLXNjcm9sbGFibGUtaGVhZGVyIj48ZGl2IGNsYXNzPSJ1aS1kYXRhdGFibGUtc2Nyb2xsYWJsZS1oZWFkZXItYm94Ij48dGFibGUgcm9sZT0iZ3JpZCI+PHRoZWFkIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfaGVhZCI+PHRyIHJvbGU9InJvdyI+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ2OTMiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IHVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiIHJvbGU9ImNvbHVtbmhlYWRlciIgc3R5bGU9IndpZHRoOjIwcHggIWltcG9ydGFudDsiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPjwvc3Bhbj48ZGl2IGNsYXNzPSJ1aS1jaGtib3ggdWktY2hrYm94LWFsbCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RoPjx0aCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0Njk0IiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtZmlsZS10aHVtYiIgcm9sZT0iY29sdW1uaGVhZGVyIiBzdHlsZT0id2lkdGg6NjRweCAhaW1wb3J0YW50OyI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+PC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ3MDYiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1maWxlLW1ldGFkYXRhIiByb2xlPSJjb2x1bW5oZWFkZXIiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPjwvc3Bhbj48L3RoPjx0aCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NzM1IiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiIHJvbGU9ImNvbHVtbmhlYWRlciI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+PC9zcGFuPjwvdGg+PC90cj48L3RoZWFkPjwvdGFibGU+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0idWktZGF0YXRhYmxlLXNjcm9sbGFibGUtYm9keSIgdGFiaW5kZXg9Ii0xIj48dGFibGUgcm9sZT0iZ3JpZCI+PHRib2R5IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfZGF0YSIgY2xhc3M9InVpLWRhdGF0YWJsZS1kYXRhIHVpLXdpZGdldC1jb250ZW50Ij48dHIgZGF0YS1yaT0iMCIgZGF0YS1yaz0iczM6Ly9kdm4tY2xvdWQ6MTYyMGI5ZDJjZGMtMmRhMjU5ODI2ZmU4IiBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLWV2ZW4gdWktZGF0YXRhYmxlLXNlbGVjdGFibGUiIHJvbGU9InJvdyIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjIwcHggIWltcG9ydGFudDsiIGNsYXNzPSJ1aS1zZWxlY3Rpb24tY29sdW1uIHRleHQtY2VudGVyIj48ZGl2IGNsYXNzPSJ1aS1jaGtib3ggdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX2NoZWNrYm94IiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLWNoa2JveC1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDo2NHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0iY29sLWZpbGUtdGh1bWIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aHVtYm5haWwtYmxvY2sgdGV4dC1jZW50ZXIiPjxzcGFuIGNsYXNzPSJpY29uLWRvY3VtZW50IGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPjxkaXYgY2xhc3M9ImZpbGUtaWNvbi1yZXN0cmljdGVkLWJsb2NrIj4gICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1sb2NrIHRleHQtZGFuZ2VyIj48L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtbWV0YWRhdGEiPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlTmFtZUxpbmsiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGVOYW1lTGluayIgaHJlZj0iL2ZpbGUueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP2ZpbGVJZD0zMTMxODU0JmFtcDt2ZXJzaW9uPVJFTEVBU0VEJmFtcDt2ZXJzaW9uPS4wIj5LdWVzaW9uZXIgU2FrZXJuYXMgMjAwOC5wZGY8L2E+CgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1tdXRlZCBzbWFsbCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGVUeXBlT3V0cHV0UmVndWxhciI+QWRvYmUgUERGPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlU2l6ZSI+IC0gMzczLjYgS0I8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gTWFyIDE2LCAyMDE4PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlRG93bmxvYWRDb3VudCI+IC0gMCBEb3dubG9hZHM8L3NwYW4+PGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlLWNoZWNrc3VtIj5NRDU6IGM3Njg5ZjA0N2VjZDg1YTIwN2MxYWI3YTEzZWUzMmQ1PC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLWFjdGlvbiB0ZXh0LXJpZ2h0ICI+PGRpdiBjbGFzcz0iYnRuLWdyb3VwIj48L2Rpdj48L3RkPjwvdHI+PHRyIGRhdGEtcmk9IjEiIGRhdGEtcms9InMzOi8vZHZuLWNsb3VkOjE2MjBiOWNiYjNkLTY2MWZkNWUyMGNlMiIgY2xhc3M9InVpLXdpZGdldC1jb250ZW50IHVpLWRhdGF0YWJsZS1vZGQgdWktZGF0YXRhYmxlLXNlbGVjdGFibGUiIHJvbGU9InJvdyIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjIwcHggIWltcG9ydGFudDsiIGNsYXNzPSJ1aS1zZWxlY3Rpb24tY29sdW1uIHRleHQtY2VudGVyIj48ZGl2IGNsYXNzPSJ1aS1jaGtib3ggdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX2NoZWNrYm94IiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLWNoa2JveC1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDo2NHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0iY29sLWZpbGUtdGh1bWIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aHVtYm5haWwtYmxvY2sgdGV4dC1jZW50ZXIiPjxzcGFuIGNsYXNzPSJpY29uLWRvY3VtZW50IGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPjxkaXYgY2xhc3M9ImZpbGUtaWNvbi1yZXN0cmljdGVkLWJsb2NrIj4gICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1sb2NrIHRleHQtZGFuZ2VyIj48L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtbWV0YWRhdGEiPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlTmFtZUxpbmsiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGVOYW1lTGluayIgaHJlZj0iL2ZpbGUueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP2ZpbGVJZD0zMTMxODU1JmFtcDt2ZXJzaW9uPVJFTEVBU0VEJmFtcDt2ZXJzaW9uPS4wIj5MYXlvdXQgU2FrZXJuYXMgMjAwOCBBZ3VzdHVzLmRvYzwvYT4KCiAgICAgICAgICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LW11dGVkIHNtYWxsIj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjE6ZmlsZVR5cGVPdXRwdXRSZWd1bGFyIj5NUyBXb3JkPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlU2l6ZSI+IC0gMTQ4LjUgS0I8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gTWFyIDE2LCAyMDE4PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlRG93bmxvYWRDb3VudCI+IC0gMCBEb3dubG9hZHM8L3NwYW4+PGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlLWNoZWNrc3VtIj5NRDU6IGQ5MDA1ODA1OTY5MjczZTk0YTY0YzEzMjhhNTg2NWYyPC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLWFjdGlvbiB0ZXh0LXJpZ2h0ICI+PGRpdiBjbGFzcz0iYnRuLWdyb3VwIj48L2Rpdj48L3RkPjwvdHI+PHRyIGRhdGEtcmk9IjIiIGRhdGEtcms9InMzOi8vZHZuLWNsb3VkOjE2MjBiOWNiZDBhLWJhYzU4NWFjMDRjNiIgY2xhc3M9InVpLXdpZGdldC1jb250ZW50IHVpLWRhdGF0YWJsZS1ldmVuIHVpLWRhdGF0YWJsZS1zZWxlY3RhYmxlIiByb2xlPSJyb3ciIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDoyMHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0idWktc2VsZWN0aW9uLWNvbHVtbiB0ZXh0LWNlbnRlciI+PGRpdiBjbGFzcz0idWktY2hrYm94IHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9jaGVja2JveCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1jaGtib3gtYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtaWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6NjRweCAhaW1wb3J0YW50OyIgY2xhc3M9ImNvbC1maWxlLXRodW1iIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGh1bWJuYWlsLWJsb2NrIHRleHQtY2VudGVyIj48c3BhbiBjbGFzcz0iaWNvbi1kb2N1bWVudCBmaWxlLXRodW1ibmFpbC1pY29uIHRleHQtbXV0ZWQiPjwvc3Bhbj48ZGl2IGNsYXNzPSJmaWxlLWljb24tcmVzdHJpY3RlZC1ibG9jayI+ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tbG9jayB0ZXh0LWRhbmdlciI+PC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLW1ldGFkYXRhIj48YSBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjI6ZmlsZU5hbWVMaW5rIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlTmFtZUxpbmsiIGhyZWY9Ii9maWxlLnhodG1sO2pzZXNzaW9uaWQ9MzM4MWI4YTcxY2UwYzY2ZDI4YWZmMTNmMWVlMj9maWxlSWQ9MzEzMTg1NiZhbXA7dmVyc2lvbj1SRUxFQVNFRCZhbXA7dmVyc2lvbj0uMCI+UV9TQUswODA4LnBkZjwvYT4KCiAgICAgICAgICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LW11dGVkIHNtYWxsIj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjI6ZmlsZVR5cGVPdXRwdXRSZWd1bGFyIj5BZG9iZSBQREY8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToyOmZpbGVTaXplIj4gLSAxNDMuMCBLQjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjI6ZmlsZUNyZWF0ZVB1Ymxpc2hEYXRlIj4gLSBNYXIgMTYsIDIwMTg8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToyOmZpbGVEb3dubG9hZENvdW50Ij4gLSAwIERvd25sb2Fkczwvc3Bhbj48ZGl2IGNsYXNzPSJjaGVja3N1bS1ibG9jayI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToyOmZpbGUtY2hlY2tzdW0iPk1ENTogMmNkOThmNzQ1MjQ3NzMyMzhkYmRiZmYwZTMyNjAwNzg8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtYWN0aW9uIHRleHQtcmlnaHQgIj48ZGl2IGNsYXNzPSJidG4tZ3JvdXAiPjwvZGl2PjwvdGQ+PC90cj48dHIgZGF0YS1yaT0iMyIgZGF0YS1yaz0iczM6Ly9kdm4tY2xvdWQ6MTYyMGI5ZDE5ZTMtOTQ2ZmRiZWJlYWQxIiBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLW9kZCB1aS1kYXRhdGFibGUtc2VsZWN0YWJsZSIgcm9sZT0icm93IiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyIgY2xhc3M9InVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjY0cHggIWltcG9ydGFudDsiIGNsYXNzPSJjb2wtZmlsZS10aHVtYiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+PHNwYW4gY2xhc3M9Imljb24tb3RoZXIgZmlsZS10aHVtYm5haWwtaWNvbiB0ZXh0LW11dGVkIj48L3NwYW4+PGRpdiBjbGFzcz0iZmlsZS1pY29uLXJlc3RyaWN0ZWQtYmxvY2siPiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxvY2sgdGV4dC1kYW5nZXIiPjwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1tZXRhZGF0YSI+PGEgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGVOYW1lTGluayIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjM6ZmlsZU5hbWVMaW5rIiBocmVmPSIvZmlsZS54aHRtbDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/ZmlsZUlkPTMxMzE4NTcmYW1wO3ZlcnNpb249UkVMRUFTRUQmYW1wO3ZlcnNpb249LjAiPnNhazA4YWd0X3RyYW5zZmVydWxhbmcuZGJmPC9hPgoKICAgICAgICAgICAgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtbXV0ZWQgc21hbGwiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MzpmaWxlVHlwZU91dHB1dFJlZ3VsYXIiPlVua25vd248L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGVTaXplIj4gLSAzMjMuNSBNQjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjM6ZmlsZUNyZWF0ZVB1Ymxpc2hEYXRlIj4gLSBNYXIgMTYsIDIwMTg8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGVEb3dubG9hZENvdW50Ij4gLSAwIERvd25sb2Fkczwvc3Bhbj48ZGl2IGNsYXNzPSJjaGVja3N1bS1ibG9jayI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGUtY2hlY2tzdW0iPk1ENTogYmE2YTVmNjNlMTBkZWU0NmEwMDI1ZjEyZjc1YTRhMGY8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtYWN0aW9uIHRleHQtcmlnaHQgIj48ZGl2IGNsYXNzPSJidG4tZ3JvdXAiPjwvZGl2PjwvdGQ+PC90cj48dHIgZGF0YS1yaT0iNCIgZGF0YS1yaz0iczM6Ly9kdm4tY2xvdWQ6MTYyMGI5ZDVjMGQtZTkxODkyYjQ5ODBhIiBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLWV2ZW4gdWktZGF0YXRhYmxlLXNlbGVjdGFibGUiIHJvbGU9InJvdyIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjIwcHggIWltcG9ydGFudDsiIGNsYXNzPSJ1aS1zZWxlY3Rpb24tY29sdW1uIHRleHQtY2VudGVyIj48ZGl2IGNsYXNzPSJ1aS1jaGtib3ggdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX2NoZWNrYm94IiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLWNoa2JveC1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDo2NHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0iY29sLWZpbGUtdGh1bWIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aHVtYm5haWwtYmxvY2sgdGV4dC1jZW50ZXIiPjxzcGFuIGNsYXNzPSJpY29uLW90aGVyIGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPjxkaXYgY2xhc3M9ImZpbGUtaWNvbi1yZXN0cmljdGVkLWJsb2NrIj4gICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1sb2NrIHRleHQtZGFuZ2VyIj48L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtbWV0YWRhdGEiPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6NDpmaWxlTmFtZUxpbmsiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTo0OmZpbGVOYW1lTGluayIgaHJlZj0iL2ZpbGUueGh0bWw7anNlc3Npb25pZD0zMzgxYjhhNzFjZTBjNjZkMjhhZmYxM2YxZWUyP2ZpbGVJZD0zMTMxODU4JmFtcDt2ZXJzaW9uPVJFTEVBU0VEJmFtcDt2ZXJzaW9uPS4wIj5zYWswOGZlYi5kYmY8L2E+CgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1tdXRlZCBzbWFsbCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTo0OmZpbGVUeXBlT3V0cHV0UmVndWxhciI+VW5rbm93bjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjQ6ZmlsZVNpemUiPiAtIDMzLjIgTUI8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTo0OmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gTWFyIDE2LCAyMDE4PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6NDpmaWxlRG93bmxvYWRDb3VudCI+IC0gMCBEb3dubG9hZHM8L3NwYW4+PGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6NDpmaWxlLWNoZWNrc3VtIj5NRDU6IDM4ZWU1YjNjMTAwMWY0ZTYxZWY1MmI4M2I1NjdlODMxPC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLWFjdGlvbiB0ZXh0LXJpZ2h0ICI+PGRpdiBjbGFzcz0iYnRuLWdyb3VwIj48L2Rpdj48L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjxkaXYgY2xhc3M9InVpLXdpZGdldC1oZWFkZXIgdWktZGF0YXRhYmxlLXNjcm9sbGFibGUtZm9vdGVyIj48ZGl2IGNsYXNzPSJ1aS1kYXRhdGFibGUtc2Nyb2xsYWJsZS1mb290ZXItYm94Ij48dGFibGUgcm9sZT0iZ3JpZCI+PC90YWJsZT48L2Rpdj48L2Rpdj48aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX3NlbGVjdGlvbiIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX3NlbGVjdGlvbiIgYXV0b2NvbXBsZXRlPSJvZmYiIHZhbHVlPSIiIC8+PGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9zY3JvbGxTdGF0ZSIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX3Njcm9sbFN0YXRlIiBhdXRvY29tcGxldGU9Im9mZiIgdmFsdWU9IjAsMCIgLz48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGF0YVRhYmxlIiwiZmlsZXNUYWJsZSIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLHNlbGVjdGlvbk1vZGU6ImNoZWNrYm94IixzY3JvbGxhYmxlOnRydWUsbGl2ZVNjcm9sbDp0cnVlLHNjcm9sbFN0ZXA6MjUsc2Nyb2xsTGltaXQ6NSxzY3JvbGxXaWR0aDoiMTAwJSIsc2Nyb2xsSGVpZ2h0OiI5MCUiLGxpdmVTY3JvbGxCdWZmZXI6MCxiZWhhdmlvcnM6e3Jvd1Vuc2VsZWN0OmZ1bmN0aW9uKGV4dCxldmVudCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsZToicm93VW5zZWxlY3QiLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsdToiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIn0sZXh0KTt9LHJvd1Vuc2VsZWN0Q2hlY2tib3g6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixlOiJyb3dVbnNlbGVjdENoZWNrYm94IixwOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLHU6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSJ9LGV4dCk7fSxyb3dEYmxzZWxlY3Q6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixlOiJyb3dEYmxzZWxlY3QiLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsdToiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIn0sZXh0KTt9LHJvd1NlbGVjdDpmdW5jdGlvbihleHQsZXZlbnQpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLGU6InJvd1NlbGVjdCIscDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIix1OiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUifSxleHQpO30sdG9nZ2xlU2VsZWN0OmZ1bmN0aW9uKGV4dCxldmVudCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsZToidG9nZ2xlU2VsZWN0IixwOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUifSxleHQpO30scm93U2VsZWN0Q2hlY2tib3g6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixlOiJyb3dTZWxlY3RDaGVja2JveCIscDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIix1OiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUifSxleHQpO319fSk7fSk7PC9zY3JpcHQ+PC9kaXY+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzptZXRhZGF0YU1hcFRhYiIgY2xhc3M9InVpLXRhYnMtcGFuZWwgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWJvdHRvbSB1aS1oZWxwZXItaGlkZGVuIiByb2xlPSJ0YWJwYW5lbCIgYXJpYS1oaWRkZW49InRydWUiPjxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayB0YWItaGVhZGVyIG1hcmdpbi1ib3R0b20gdGV4dC1yaWdodCI+PGRpdiBjbGFzcz0iYnRuLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBkcm9wZG93bi10b2dnbGUiIHR5cGU9ImJ1dHRvbiIgc3R5bGVDbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4cG9ydCI+PC9zcGFuPiBFeHBvcnQgTWV0YWRhdGEgPHNwYW4gY2xhc3M9ImNhcmV0Ij48L3NwYW4+PC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiIHJvbGU9Im1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2RhdGFzZXRzL2V4cG9ydDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/ZXhwb3J0ZXI9ZGN0ZXJtcyZhbXA7cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAvRFZOL0dBT0MwMyIgdGFyZ2V0PSJfYmxhbmsiPkR1YmxpbiBDb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2RhdGFzZXRzL2V4cG9ydDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/ZXhwb3J0ZXI9ZGRpJmFtcDtwZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMC9EVk4vR0FPQzAzIiB0YXJnZXQ9Il9ibGFuayI+RERJPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2RhdGFzZXRzL2V4cG9ydDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/ZXhwb3J0ZXI9ZGF0YXZlcnNlX2pzb24mYW1wO3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwL0RWTi9HQU9DMDMiIHRhcmdldD0iX2JsYW5rIj5KU09OPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2RhdGFzZXRzL2V4cG9ydDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/ZXhwb3J0ZXI9c2NoZW1hLm9yZyZhbXA7cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAvRFZOL0dBT0MwMyIgdGFyZ2V0PSJfYmxhbmsiPlNjaGVtYS5vcmcgSlNPTi1MRDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0icGFuZWwtZ3JvdXAiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICAgICAgIDxkaXYgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3BhbmVsQ29sbGFwc2UwIiBjbGFzcz0icGFuZWwtaGVhZGluZyB0ZXh0LWluZm8iPgogICAgICAgICAgICAgICAgICAgIENpdGF0aW9uIE1ldGFkYXRhIMKgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tY2hldnJvbi11cCI+PC9zcGFuPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwYW5lbENvbGxhcHNlMCIgY2xhc3M9ImNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IG1ldGFkYXRhLXBhbmVsLWJvZHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfcHVibGljYXRpb25EYXRlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSB1bmlxdWUgcGVyc2lzdGVudCBpZGVudGlmaWVyIGZvciBhIERhdGFzZXQsIHdoaWNoIGNhbiBiZSBhIEhhbmRsZSBvciBET0kgaW4gRGF0YXZlcnNlLiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEYXRhc2V0IFBlcnNpc3RlbnQgSUQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2k6MTAuNzkxMC9EVk4vR0FPQzAzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9wdWJsaWNhdGlvbkRhdGUiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIHB1YmxpY2F0aW9uIGRhdGUgb2YgYSBkYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQdWJsaWNhdGlvbiBEYXRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjAxOC0wMy0xNgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfdGl0bGUiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iRnVsbCB0aXRsZSBieSB3aGljaCB0aGUgRGF0YXNldCBpcyBrbm93bi4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGl0bGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PGRpdiBjbGFzcz0iY29sLXNtLTkiPlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2F1dGhvciIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJUaGUgcGVyc29uKHMpLCBjb3Jwb3JhdGUgYm9keShpZXMpLCBvciBhZ2VuY3koaWVzKSByZXNwb25zaWJsZSBmb3IgY3JlYXRpbmcgdGhlIHdvcmsuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEF1dGhvcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+QmFkYW4gUHVzYXQgU3RhdGlzdGlrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfZGF0YXNldENvbnRhY3QiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIGNvbnRhY3QocykgZm9yIHRoaXMgRGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29udGFjdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IFVzZSBlbWFpbCBidXR0b24gYWJvdmUgdG8gY29udGFjdC4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5CYWxkaXNzZXJvdHRvLCBKb2huIChIYXJ2YXJkIFVuaXZlcnNpdHkpIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2RzRGVzY3JpcHRpb24iIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iQSBzdW1tYXJ5IGRlc2NyaWJpbmcgdGhlIHB1cnBvc2UsIG5hdHVyZSwgYW5kIHNjb3BlIG9mIHRoZSBEYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+TmF0aW9uYWwgbGFib3IgZm9yY2Ugc3VydmV5IGluIEluZG9uZXNpYS4gU3VydmVpIGFuZ2thdGFuIGtlcmphIG5hc2lvbmFsLiAyMDA4CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfc3ViamVjdCIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJEb21haW4tc3BlY2lmaWMgU3ViamVjdCBDYXRlZ29yaWVzIHRoYXQgYXJlIHRvcGljYWxseSByZWxldmFudCB0byB0aGUgRGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3ViamVjdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+U29jaWFsIFNjaWVuY2VzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2tleXdvcmQiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iS2V5IHRlcm1zIHRoYXQgZGVzY3JpYmUgaW1wb3J0YW50IGFzcGVjdHMgb2YgdGhlIERhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtleXdvcmQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PGRpdiBjbGFzcz0iY29sLXNtLTkiPkxhYm9yIFN1cHBseSwgSW5kb25lc2lhLCBTdGF0aXN0aWNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfZGVwb3NpdG9yIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSBwZXJzb24gKEZhbWlseSBOYW1lLCBHaXZlbiBOYW1lKSBvciB0aGUgbmFtZSBvZiB0aGUgb3JnYW5pemF0aW9uIHRoYXQgZGVwb3NpdGVkIHRoaXMgRGF0YXNldCB0byB0aGUgcmVwb3NpdG9yeS4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVwb3NpdG9yCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij5CYWxkaXNzZXJvdHRvLCBKb2huPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2RhdGVPZkRlcG9zaXQiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iRGF0ZSB0aGF0IHRoZSBEYXRhc2V0IHdhcyBkZXBvc2l0ZWQgaW50byB0aGUgcmVwb3NpdG9yeS4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVwb3NpdCBEYXRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij4yMDE4LTAzLTA5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnRlcm1zVGFiIiBjbGFzcz0idWktdGFicy1wYW5lbCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYm90dG9tIHVpLWhlbHBlci1oaWRkZW4iIHJvbGU9InRhYnBhbmVsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+CiAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ncm91cCI+CiAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICA8ZGl2IGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNwYW5lbENvbGxhcHNlVE9VIiBjbGFzcz0icGFuZWwtaGVhZGluZyB0ZXh0LWluZm8iPgogICAgICAgICAgICAgICBUZXJtcyBvZiBVc2UgwqA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1jaGV2cm9uLXVwIj48L3NwYW4+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPGRpdiBpZD0icGFuZWxDb2xsYXBzZVRPVSIgY2xhc3M9ImNvbGxhcHNlIGluIj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnRvdUZyYWdtZW50Ij4KICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkiPgogICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9UZXJtcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIHdhaXZlciBpbmZvcm1zIGRhdGEgZG93bmxvYWRlcnMgaG93IHRoZXkgY2FuIHVzZSB0aGlzIGRhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXYWl2ZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj5PdXIgPGEgaHJlZj0iaHR0cDovL2Jlc3QtcHJhY3RpY2VzLmRhdGF2ZXJzZS5vcmcvaGFydmFyZC1wb2xpY2llcy9jb21tdW5pdHktbm9ybXMuaHRtbCIgdGl0bGU9IkRhdGF2ZXJzZSBDb21tdW5pdHkgTm9ybXMgLSBEYXRhdmVyc2UgQmVzdCBQcmFjdGljZXMiIHRhcmdldD0iX2JsYW5rIj5Db21tdW5pdHkgTm9ybXM8L2E+IGFzIHdlbGwgYXMgZ29vZCBzY2llbnRpZmljIHByYWN0aWNlcyBleHBlY3QgdGhhdCBwcm9wZXIgY3JlZGl0IGlzIGdpdmVuIHZpYSBjaXRhdGlvbi4gUGxlYXNlIHVzZSB0aGUgZGF0YSBjaXRhdGlvbiBhYm92ZSwgZ2VuZXJhdGVkIGJ5IHRoZSBEYXRhdmVyc2UuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk5vIHdhaXZlciBoYXMgYmVlbiBzZWxlY3RlZCBmb3IgdGhpcyBkYXRhc2V0LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Rlcm1zVXNlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJPdXRsaW5lcyBob3cgdGhpcyBkYXRhIGNhbiBiZSB1c2VkIG9uY2UgZG93bmxvYWRlZC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRlcm1zIG9mIFVzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+TGljZW5zZWQgZWxlY3Ryb25pYyByZXNvdXJjZXMgYXJlIHJlc3RyaWN0ZWQgdG8gbWVtYmVycyBvZiB0aGUgSGFydmFyZCBjb21tdW5pdHkgZm9yIHB1cnBvc2VzIG9mIHJlc2VhcmNoLCB0ZWFjaGluZywgYW5kIHByaXZhdGUgc3R1ZHkuIFVuZGVyIEhhcnZhcmQncyBsaWNlbnNlcyBmb3IgZWxlY3Ryb25pYyByZXNvdXJjZXMsIHVzZXJzIGdlbmVyYWxseSBtYXkgbm90OiBwZXJtaXQgYW55b25lIG90aGVyIHRoYW4gYXV0aG9yaXplZCB1c2VycyB0byB1c2UgdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgbW9kaWZ5IG9yIGNyZWF0ZSBhIGRlcml2YXRpdmUgd29yayBvZiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzIHdpdGhvdXQgdGhlIHBlcm1pc3Npb24gb2YgdGhlIGxpY2Vuc29yOyByZW1vdmUsIG9ic2N1cmUgb3IgbW9kaWZ5IGFueSBjb3B5cmlnaHQgb3Igb3RoZXIgbm90aWNlcyBpbmNsdWRlZCBpbiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzOyB1c2UgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyBmb3IgY29tbWVyY2lhbCBwdXJwb3NlcywgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byB0aGUgc2FsZSBvZiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzLiBVc2VycyBhcmUgaW5kaXZpZHVhbGx5IHJlc3BvbnNpYmxlIGZvciBjb21wbGlhbmNlIHdpdGggdGhlc2UgdGVybXMuCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICA8L2Rpdj48ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICA8ZGl2IGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNwYW5lbENvbGxhcHNlVE9BIiBjbGFzcz0icGFuZWwtaGVhZGluZyB0ZXh0LWluZm8iPlJlc3RyaWN0ZWQgRmlsZXMgKyBUZXJtcyBvZiBBY2Nlc3MKICAgICAgICAgICAgICAgwqA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1jaGV2cm9uLXVwIj48L3NwYW4+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPGRpdiBpZD0icGFuZWxDb2xsYXBzZVRPQSIgY2xhc3M9ImNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Jlc3RyaWN0ZWRGaWxlcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIG51bWJlciBvZiByZXN0cmljdGVkIGZpbGVzIGluIHRoaXMgZGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc3RyaWN0ZWQgRmlsZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlcmUgYXJlIDUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9UZXJtc0FjY2VzcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iSW5mb3JtYXRpb24gb24gaG93IGFuZCBpZiB1c2VycyBjYW4gZ2FpbiBhY2Nlc3MgdG8gdGhlIHJlc3RyaWN0ZWQgZmlsZXMgaW4gdGhpcyBkYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgQWNjZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoaXMgZGF0YXNldCBpcyByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBIYXJ2YXJkIGFmZmlsaWF0ZXMgbWF5IGFjY2VzcyB0aGUgZGF0YSBieSBsb2dnaW5nIGludG8gdGhpcyBzeXN0ZW0gdmlhIHRoZSBpbnN0aXR1dGlvbmFsIGxvZ2luIGFuZCBzZWxlY3RpbmcgSGFydmFyZCBVbml2ZXJzaXR5LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1JlcXVlc3RBY2Nlc3MiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IklmIGNoZWNrZWQsIHVzZXJzIGNhbiByZXF1ZXN0IGFjY2VzcyB0byB0aGUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXF1ZXN0IEFjY2VzcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5Vc2VycyBtYXkgbm90IHJlcXVlc3QgYWNjZXNzIHRvIGZpbGVzLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICA8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICA8ZGl2IGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNwYW5lbENvbGxhcHNlR3Vlc3Rib29rIiBjbGFzcz0icGFuZWwtaGVhZGluZyB0ZXh0LWluZm8iPgogICAgICAgICAgICAgICBHdWVzdGJvb2sgwqA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1jaGV2cm9uLXVwIj48L3NwYW4+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPGRpdiBpZD0icGFuZWxDb2xsYXBzZUd1ZXN0Ym9vayIgY2xhc3M9ImNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSI+CiAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9HdWVzdGJvb2siIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVXNlciBpbmZvcm1hdGlvbiAoaS5lLiwgbmFtZSwgZW1haWwsIGluc3RpdHV0aW9uLCBhbmQgcG9zaXRpb24pIHdpbGwgYmUgY29sbGVjdGVkIHdoZW4gZmlsZXMgYXJlIGRvd25sb2FkZWQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEd1ZXN0Ym9vawogICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+Tm8gZ3Vlc3Rib29rIGlzIGFzc2lnbmVkIHRvIHRoaXMgZGF0YXNldCwgeW91IHdpbGwgbm90IGJlIHByb21wdGVkIHRvIHByb3ZpZGUgYW55IGluZm9ybWF0aW9uIG9uIGZpbGUgZG93bmxvYWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgIDwvZGl2PjwvZGl2PiAKICAgIDwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9vayIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBsYXJnZVBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9va190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHJldmlldyBHdWVzdGJvb2s8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgIDxkaXYgY2xhc3M9ImZvcm0taG9yaXpvbnRhbCI+CiAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgICAgIFVwb24gZG93bmxvYWRpbmcgZmlsZXMgdGhlIGd1ZXN0Ym9vayBhc2tzIGZvciB0aGUgZm9sbG93aW5nIGluZm9ybWF0aW9uLgogICAgICAgICAgICA8L3A+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICBHdWVzdGJvb2sgTmFtZQogICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS04Ij4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iZm9ybS1jb250cm9sLXN0YXRpYyI+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlVzZXIgZGF0YSBjb2xsZWN0ZWQgYnkgdGhlIGd1ZXN0Ym9vay4iPgogICAgICAgICAgICAgICAgICAgICAgIENvbGxlY3RlZCBEYXRhCiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS04Ij4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iZm9ybS1jb250cm9sLXN0YXRpYyI+QWNjb3VudCBJbmZvcm1hdGlvbgogICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJQRigndmlld0d1ZXN0Ym9vaycpLmhpZGUoKSIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgdmFsdWU9IkNsb3NlIj4KICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9va19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJ2aWV3R3Vlc3Rib29rIix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9vayIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWIiIGNsYXNzPSJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20gdWktaGVscGVyLWhpZGRlbiIgcm9sZT0idGFicGFuZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KCiAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgIC8qIFZlcnNpb24gdGFiOiBSZXRyaWV2ZSBkYXRhIGFmdGVyIHBhZ2UgbG9hZCAqLwogICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgcHJlbG9hZF9tZXNzYWdlID0gIihMb2FkaW5nIHZlcnNpb25zLi4uKSI7CiAgICAgICAgICAgICQoJyNkYXRhc2V0Rm9ybVxcOnRhYlZpZXdcXDp2ZXJzaW9uc1RhYmxlX2RhdGEgdHIudWktZGF0YXRhYmxlLWVtcHR5LW1lc3NhZ2UgdGQnKS50ZXh0KHByZWxvYWRfbWVzc2FnZSk7CiAgICAgICAgICAgIHBvc3RMb2FkVmVyc2lvblRhYkxpc3QoKTsKICAgICAgIH0pOwogICA8L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cG9zdExvYWRWZXJzaW9uVGFiTGlzdCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOnRhYlZpZXc6al9pZHQxMTk2IixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06dGFiVmlldzpqX2lkdDExOTYiLHU6ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZSIscGE6YXJndW1lbnRzWzBdfSk7fTwvc2NyaXB0PgogICAgPGRpdiBjbGFzcz0idGV4dC1yaWdodCBtYXJnaW4tYm90dG9tIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmNvbXBhcmVWZXJzaW9ucyIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpjb21wYXJlVmVyc2lvbnMiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6Y29tcGFyZVZlcnNpb25zJnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm0mcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdkZXRhaWxzQmxvY2tzJykuc2hvdygpO3Bvc3RfZGlmZmVyZW5jZXMoKTs7fX0pO3JldHVybiBmYWxzZTsiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkRpcmVjdDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmNvbXBhcmVWZXJzaW9uc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fdGFiVmlld19jb21wYXJlVmVyc2lvbnMiLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzpjb21wYXJlVmVyc2lvbnMifSk7PC9zY3JpcHQ+CiAgICA8L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGUiIGNsYXNzPSJ1aS1kYXRhdGFibGUgdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1kYXRhdGFibGUtdGFibGV3cmFwcGVyIj48dGFibGUgcm9sZT0iZ3JpZCI+PHRoZWFkIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGVfaGVhZCI+PHRyIHJvbGU9InJvdyI+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGU6al9pZHQxMjAyIiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtc20tMSB0ZXh0LWNlbnRlciIgcm9sZT0iY29sdW1uaGVhZGVyIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj5EYXRhc2V0PC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGU6al9pZHQxMjE0IiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCIgcm9sZT0iY29sdW1uaGVhZGVyIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj5TdW1tYXJ5PC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGU6al9pZHQxMjU2IiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtc20tMyIgcm9sZT0iY29sdW1uaGVhZGVyIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj5Db250cmlidXRvcnM8L3NwYW4+PC90aD48dGggaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZTpqX2lkdDEyNTkiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1zbS0yIiByb2xlPSJjb2x1bW5oZWFkZXIiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPlB1Ymxpc2hlZDwvc3Bhbj48L3RoPjwvdHI+PC90aGVhZD48dGJvZHkgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZV9kYXRhIiBjbGFzcz0idWktZGF0YXRhYmxlLWRhdGEgdWktd2lkZ2V0LWNvbnRlbnQiPjx0ciBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLWVtcHR5LW1lc3NhZ2UiPjx0ZCBjb2xzcGFuPSI0Ij5ObyByZWNvcmRzIGZvdW5kLjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRhdGFUYWJsZSIsInZlcnNpb25zVGFibGUiLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlIn0pO30pOzwvc2NyaXB0PjwvZGl2PjwvZGl2PjxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3X2FjdGl2ZUluZGV4IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3X2FjdGl2ZUluZGV4IiB2YWx1ZT0iMCIgYXV0b2NvbXBsZXRlPSJvZmYiIC8+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlld19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIlRhYlZpZXciLCJjb250ZW50Iix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXciLGVmZmVjdER1cmF0aW9uOiJub3JtYWwiLHNjcm9sbGFibGU6ZmFsc2UsYmVoYXZpb3JzOnt0YWJDaGFuZ2U6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldyIsZToidGFiQ2hhbmdlIixwOiJkYXRhc2V0Rm9ybTp0YWJWaWV3Iix1OiJkYXRhc2V0Rm9ybTp0YWJWaWV3IixvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7YmluZF9ic3VpX2NvbXBvbmVudHMoKTs7fX0sZXh0KTt9fX0pOzwvc2NyaXB0PjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI2NCIgY2xhc3M9InVpLWJsb2NrdWktY29udGVudCB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1oZWxwZXItaGlkZGVuIHVpLXNoYWRvdyI+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMjY0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkJsb2NrVUkiLCJibG9ja0RhdGFzZXRGb3JtIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTI2NCIsYmxvY2s6ImRhdGFzZXRGb3JtIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI2NSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI2NV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UmVzdHJpY3RlZCBGaWxlcyBTZWxlY3RlZDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBUaGUgcmVzdHJpY3RlZCBmaWxlKHMpIHNlbGVjdGVkIG1heSBub3QgYmUgZG93bmxvYWRlZCBiZWNhdXNlIHlvdSBoYXZlIG5vdCBiZWVuIGdyYW50ZWQgYWNjZXNzLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEyNzAiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTI3MCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkb3dubG9hZEludmFsaWQnKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI3MF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxMjcwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTI3MCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMjY1X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRvd25sb2FkSW52YWxpZCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEyNjUiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEyNzIiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEyNzJfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlJlc3RyaWN0ZWQgRmlsZXMgU2VsZWN0ZWQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gVGhlIHJlc3RyaWN0ZWQgZmlsZShzKSBzZWxlY3RlZCBtYXkgbm90IGJlIGRvd25sb2FkZWQgYmVjYXVzZSB5b3UgaGF2ZSBub3QgYmVlbiBncmFudGVkIGFjY2Vzcy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0YWJsZT4KICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1pbmZvLXNpZ24iPjwvc3Bhbj4gQ2xpY2sgQ29udGludWUgdG8gZG93bmxvYWQgdGhlIGZpbGVzIHlvdSBoYXZlIGFjY2VzcyB0byBkb3dubG9hZC48L3A+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMjgwIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEyODAiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZG93bmxvYWRNaXhlZCcpLmhpZGUoKTtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTI4MCZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMjgwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEyODAiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMjgwIn0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI4MSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMjgxIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2Rvd25sb2FkTWl4ZWQnKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI4MV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxMjgxIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTI4MSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMjcyX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRvd25sb2FkTWl4ZWQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMjcyIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxMjgzIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMjgzX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EZWxldGUgRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgZGF0YXNldD8gWW91IGNhbm5vdCB1bmRlbGV0ZSB0aGlzIGRhdGFzZXQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI4NSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMjg1IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2RlbGV0ZUNvbmZpcm1hdGlvbicpLmhpZGUoKTtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTI4NSZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI4NV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxMjg1Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTI4NSJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEyODYiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTI4NiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkZWxldGVDb25maXJtYXRpb24nKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI4Nl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxMjg2Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTI4NiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMjgzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlbGV0ZUNvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEyODMiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEyODgiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEyODhfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRlbGV0ZSBEcmFmdCBWZXJzaW9uPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBkcmFmdCB2ZXJzaW9uPyBZb3UgY2Fubm90IHVuZGVsZXRlIHRoaXMgZHJhZnQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTI5MCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMjkwIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2RlbGV0ZVZlcnNpb25Db25maXJtYXRpb24nKS5oaWRlKCk7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDEyOTAmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5Db250aW51ZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEyOTBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTI5MCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEyOTAifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMjkxIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEyOTEiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZGVsZXRlVmVyc2lvbkNvbmZpcm1hdGlvbicpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMjkxX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEyOTEiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMjkxIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEyODhfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGVsZXRlVmVyc2lvbkNvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEyODgiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpwcml2YXRlVXJsSWQiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpwcml2YXRlVXJsSWRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlVucHVibGlzaGVkIERhdGFzZXQgUHJpdmF0ZSBVUkw8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnByaXZhdGVVcmxQYW5lbENhbm5vdENyZWF0ZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUHJpdmF0ZSBVUkwgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIHVucHVibGlzaGVkIHZlcnNpb25zIG9mIGRhdGFzZXRzLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzEwIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMTAiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ3ByaXZhdGVVcmxDb25maXJtYXRpb24nKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTMxMF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxMzEwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTMxMCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnByaXZhdGVVcmxJZF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJwcml2YXRlVXJsQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOnByaXZhdGVVcmxJZCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTMxMiIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTMxMl90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+VW5wdWJsaXNoZWQgRGF0YXNldCBQcml2YXRlIFVSTDwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGlzYWJsZSB0aGUgUHJpdmF0ZSBVUkw/IElmIHlvdSBoYXZlIHNoYXJlZCB0aGUgUHJpdmF0ZSBVUkwgd2l0aCBvdGhlcnMgdGhleSB3aWxsIG5vIGxvbmdlciBiZSBhYmxlIHRvIHVzZSBpdCB0byBhY2Nlc3MgeW91ciB1bnB1Ymxpc2hlZCBkYXRhc2V0LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMTQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTMxNCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZGlzYWJsZVByaXZhdGVVcmxDb25maXJtYXRpb24nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxMzE0JnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm06cHJpdmF0ZVVybFBhbmVsIG1lc3NhZ2VQYW5lbCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPlllcywgRGlzYWJsZSBQcml2YXRlIFVSTDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMTRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTMxNCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzMTQifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzE1IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMTUiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2Rpc2FibGVQcml2YXRlVXJsQ29uZmlybWF0aW9uJykuaGlkZSgpO1BGKCdwcml2YXRlVXJsQ29uZmlybWF0aW9uJykuc2hvdygpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMTVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTMxNSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzMTUifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTMxMl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkaXNhYmxlUHJpdmF0ZVVybENvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzMTIiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMTciIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMTdfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRlbGV0ZSBGaWxlczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBUaGUgZmlsZShzKSB3aWxsIGJlIGRlbGV0ZWQgYWZ0ZXIgeW91IGNsaWNrIG9uIHRoZSBEZWxldGUgYnV0dG9uLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBGaWxlcyB3aWxsIG5vdCBiZSByZW1vdmVkIGZyb20gcHJldmlvdXNseSBwdWJsaXNoZWQgdmVyc2lvbnMgb2YgdGhlIGRhdGFzZXQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTMyMiIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMzIyIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2RlbGV0ZVNlbGVjdGVkRmlsZUNvbmZpcm1hdGlvbicpLmhpZGUoKTtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTMyMiZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkRlbGV0ZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMjJfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTMyMiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzMjIifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzIzIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMjMiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZGVsZXRlU2VsZWN0ZWRGaWxlQ29uZmlybWF0aW9uJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzIzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEzMjMiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzIzIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMTdfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGVsZXRlU2VsZWN0ZWRGaWxlQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTMxNyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTMyNSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTMyNV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGF0YXNldCBDb21wdXRlIE5vdCBTdXBwb3J0ZWQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gWW91IGNhbm5vdCBjb21wdXRlIG9uIHRoaXMgZGF0YXNldCBiZWNhdXNlIHRoaXMgZnVuY3Rpb25hbGl0eSBpcyBub3QgZW5hYmxlZCB5ZXQuIFBsZWFzZSBjbGljayBvbiBhIGZpbGUgdG8gYWNjZXNzIGNvbXB1dGluZyBmZWF0dXJlcy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzI3IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMjciIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZGF0YXNldENvbXB1dGVBY2Nlc3NEZW5pZWRQb3B1cCcpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzI3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEzMjciLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzI3In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzMjVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGF0YXNldENvbXB1dGVBY2Nlc3NEZW5pZWRQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzMjUiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkJsb2NrIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQmxvY2tfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRlYWNjZXNzaW9uIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gT25jZSB5b3UgZGVhY2Nlc3Npb24gdGhpcyBkYXRhc2V0IGl0IHdpbGwgbm8gbG9uZ2VyIGJlIHZpZXdhYmxlIGJ5IHRoZSBwdWJsaWMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9InJlYXNvbk9wdGlvbnMiPldoYXQgaXMgdGhlIHJlYXNvbiBmb3IgZGVhY2Nlc3Npb24/IDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWFzdGVyaXNrIHRleHQtZGFuZ2VyIiB0aXRsZT0iUmVxdWlyZWQgZmllbGQiPjwvc3Bhbj48L2xhYmVsPjxzZWxlY3QgaWQ9ImRhdGFzZXRGb3JtOnJlYXNvbk9wdGlvbnMiIG5hbWU9ImRhdGFzZXRGb3JtOnJlYXNvbk9wdGlvbnMiIGNsYXNzPSJmb3JtLWNvbnRyb2wiIHNpemU9IjEiPgk8b3B0aW9uIHZhbHVlPSIwIiBzZWxlY3RlZD0ic2VsZWN0ZWQiPlNlbGVjdC4uLjwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iMSI+VGhlcmUgaXMgaWRlbnRpZmlhYmxlIGRhdGEgaW4gb25lIG9yIG1vcmUgZmlsZXM8L29wdGlvbj4KCTxvcHRpb24gdmFsdWU9IjIiPlRoZSByZXNlYXJjaCBhcnRpY2xlIGhhcyBiZWVuIHJldHJhY3RlZDwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iMyI+VGhlIGRhdGFzZXQgaGFzIGJlZW4gdHJhbnNmZXJyZWQgdG8gYW5vdGhlciByZXBvc2l0b3J5PC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSI0Ij5JUkIgcmVxdWVzdDwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iNSI+TGVnYWwgaXNzdWUgb3IgRGF0YSBVc2FnZSBBZ3JlZW1lbnQ8L29wdGlvbj4KCTxvcHRpb24gdmFsdWU9IjYiPk5vdCBhIHZhbGlkIGRhdGFzZXQ8L29wdGlvbj4KCTxvcHRpb24gdmFsdWU9IjciPk90aGVyIChQbGVhc2UgdHlwZSByZWFzb24gaW4gc3BhY2UgcHJvdmlkZWQgYmVsb3cpPC9vcHRpb24+Cjwvc2VsZWN0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJyZWFzb25Gb3JEZWFjY2Vzc2lvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGxlYXNlIGVudGVyIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHJlYXNvbiBmb3IgZGVhY2Nlc3Npb24uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPjx0ZXh0YXJlYSBpZD0iZGF0YXNldEZvcm06cmVhc29uRm9yRGVhY2Nlc3Npb24iIG5hbWU9ImRhdGFzZXRGb3JtOnJlYXNvbkZvckRlYWNjZXNzaW9uIiBjb2xzPSI0MCIgcm93cz0iMiIgbWF4bGVuZ3RoPSIyMTQ3NDgzNjQ3IiBvbmtleXVwPSJ1cGRhdGVIaWRkZW5SZWFzb24odGhpcyk7IiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHRhcmVhIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIj48L3RleHRhcmVhPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnJlYXNvbkZvckRlYWNjZXNzaW9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIklucHV0VGV4dGFyZWEiLCJyZWFzb25Gb3JEZWFjY2Vzc2lvbiIse2lkOiJkYXRhc2V0Rm9ybTpyZWFzb25Gb3JEZWFjY2Vzc2lvbiIsYXV0b1Jlc2l6ZTpmYWxzZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM0NSIgYXJpYS1saXZlPSJwb2xpdGUiIGNsYXNzPSJ1aS1tZXNzYWdlIj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0iZm9yd2FyZFVSTEZvckRlYWNjZXNzaW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiBhcHBsaWNhYmxlLCBwbGVhc2UgbGVhdmUgYSBVUkwgd2hlcmUgdGhpcyBkYXRhc2V0IGNhbiBiZSBhY2Nlc3NlZCBhZnRlciBkZWFjY2Vzc2lvbmluZy4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpmb3J3YXJkVVJMRm9yRGVhY2Nlc3Npb24iIG5hbWU9ImRhdGFzZXRGb3JtOmZvcndhcmRVUkxGb3JEZWFjY2Vzc2lvbiIgdHlwZT0idGV4dCIgdmFsdWU9IiIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIiAvPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmZvcndhcmRVUkxGb3JEZWFjY2Vzc2lvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIklucHV0VGV4dCIsImZvcndhcmRVUkxGb3JEZWFjY2Vzc2lvbiIse2lkOiJkYXRhc2V0Rm9ybTpmb3J3YXJkVVJMRm9yRGVhY2Nlc3Npb24ifSk7PC9zY3JpcHQ+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06d2F0ZXJtYXJrX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIldhdGVybWFyayIsIndpZGdldF9kYXRhc2V0Rm9ybV93YXRlcm1hcmsiLHtpZDoiZGF0YXNldEZvcm06d2F0ZXJtYXJrIix2YWx1ZToiT3B0aW9uYWwgZGF0YXNldCBzaXRlLCBodHRwOlwvXC8uLi4iLHRhcmdldDoiZGF0YXNldEZvcm06Zm9yd2FyZFVSTEZvckRlYWNjZXNzaW9uIn0sIndhdGVybWFyayIpO30pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YSBpZD0iZGF0YXNldEZvcm06al9pZHQxMzUwIiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQmxvY2snKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxMzUwJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0iYnV0dG9uIj5DYW5jZWw8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQmxvY2tfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGVhY2Nlc3Npb25CbG9jayIse2lkOiJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkJsb2NrIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25Db25maXJtYXRpb24iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25Db25maXJtYXRpb25fdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRlYWNjZXNzaW9uIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlYWNjZXNzaW9uPyBUaGUgc2VsZWN0ZWQgdmVyc2lvbihzKSB3aWxsIG5vIGxvbmdlciBiZSB2aWV3YWJsZSBieSB0aGUgcHVibGljLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNTMiIHZhbHVlPSJZZXMiIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdkZWFjY2Vzc2lvbkNvbmZpcm1hdGlvbicpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2RlYWNjZXNzaW9uQmxvY2snKS5oaWRlKCkiIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgdmFsdWU9Ik5vIiBvbmNsaWNrPSJQRignZGVhY2Nlc3Npb25Db25maXJtYXRpb24nKS5oaWRlKCkiPk5vPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQ29uZmlybWF0aW9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlYWNjZXNzaW9uQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQ29uZmlybWF0aW9uIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb24iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb25fdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRlYWNjZXNzaW9uIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlYWNjZXNzaW9uIHRoaXMgZGF0YXNldD8gSXQgd2lsbCBubyBsb25nZXIgYmUgdmlld2FibGUgYnkgdGhlIHB1YmxpYy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMzU2IiB2YWx1ZT0iWWVzIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb24nKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdkZWFjY2Vzc2lvbkJsb2NrJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgdmFsdWU9Ik5vIiBvbmNsaWNrPSJQRignZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb24nKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyI+Tm88L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb24iLHtpZDoiZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb24iLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3REZWFjY2Vzc2lvblZlcnNpb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiQ29uZmlybURpYWxvZyIsInNlbGVjdERlYWNjZXNzaW9uVmVyc2lvbiIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3REZWFjY2Vzc2lvblZlcnNpb24ifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RGVhY2Nlc3Npb25WZXJzaW9uIiBjbGFzcz0idWktY29uZmlybS1kaWFsb2cgdWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UGxlYXNlIFNlbGVjdCBWZXJzaW9uKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWFsZXJ0IHVpLWNvbmZpcm0tZGlhbG9nLXNldmVyaXR5Ij48L3NwYW4+PHNwYW4gY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nLW1lc3NhZ2UiPlBsZWFzZSBzZWxlY3QgdmVyc2lvbihzKSBmb3IgZGVhY2Nlc3Npb25pbmcuPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1idXR0b25wYW5lIHVpLWRpYWxvZy1mb290ZXIgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4Ij48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3REZWFjY2Vzc2lvblJlYXNvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJDb25maXJtRGlhbG9nIiwic2VsZWN0RGVhY2Nlc3Npb25SZWFzb24iLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RGVhY2Nlc3Npb25SZWFzb24ifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RGVhY2Nlc3Npb25SZWFzb24iIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZyB1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5QbGVhc2UgU2VsZWN0IFJlYXNvbjwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1hbGVydCB1aS1jb25maXJtLWRpYWxvZy1zZXZlcml0eSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZy1tZXNzYWdlIj5QbGVhc2Ugc2VsZWN0IHJlYXNvbiBmb3IgZGVhY2Nlc3Npb25pbmcuPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1idXR0b25wYW5lIHVpLWRpYWxvZy1mb290ZXIgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4Ij48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTplbnRlckZvcndhcmRVcmxfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiQ29uZmlybURpYWxvZyIsImVudGVyRm9yd2FyZFVybCIse2lkOiJkYXRhc2V0Rm9ybTplbnRlckZvcndhcmRVcmwifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZW50ZXJGb3J3YXJkVXJsIiBjbGFzcz0idWktY29uZmlybS1kaWFsb2cgdWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+SW52YWxpZCBVUkw8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tYWxlcnQgdWktY29uZmlybS1kaWFsb2ctc2V2ZXJpdHkiPjwvc3Bhbj48c3BhbiBjbGFzcz0idWktY29uZmlybS1kaWFsb2ctbWVzc2FnZSI+UGxlYXNlIGVudGVyIHZhbGlkIGZvcndhcmRpbmcgVVJMLjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctYnV0dG9ucGFuZSB1aS1kaWFsb2ctZm9vdGVyIHVpLXdpZGdldC1jb250ZW50IHVpLWhlbHBlci1jbGVhcmZpeCI+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZW50ZXJPdGhlclJlYXNvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJDb25maXJtRGlhbG9nIiwiZW50ZXJPdGhlclJlYXNvbiIse2lkOiJkYXRhc2V0Rm9ybTplbnRlck90aGVyUmVhc29uIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmVudGVyT3RoZXJSZWFzb24iIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZyB1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5FbnRlciBhZGRpdGlvbmFsIGluZm9ybWF0aW9uPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWFsZXJ0IHVpLWNvbmZpcm0tZGlhbG9nLXNldmVyaXR5Ij48L3NwYW4+PHNwYW4gY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nLW1lc3NhZ2UiPlBsZWFzZSBlbnRlciB0ZXh0IGZvciByZWFzb24gZm9yIGRlYWNjZXNzaW9uaW5nLjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctYnV0dG9ucGFuZSB1aS1kaWFsb2ctZm9vdGVyIHVpLXdpZGdldC1jb250ZW50IHVpLWhlbHBlci1jbGVhcmZpeCI+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06cmVhc29uVG9vTWFueUNoYXJhY3RlcnNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiQ29uZmlybURpYWxvZyIsInJlYXNvblRvb01hbnlDaGFyYWN0ZXJzIix7aWQ6ImRhdGFzZXRGb3JtOnJlYXNvblRvb01hbnlDaGFyYWN0ZXJzIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnJlYXNvblRvb01hbnlDaGFyYWN0ZXJzIiBjbGFzcz0idWktY29uZmlybS1kaWFsb2cgdWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+TGltaXQgMTAwMCBjaGFyYWN0ZXJzPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWFsZXJ0IHVpLWNvbmZpcm0tZGlhbG9nLXNldmVyaXR5Ij48L3NwYW4+PHNwYW4gY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nLW1lc3NhZ2UiPlRleHQgZm9yIHJlYXNvbiBmb3IgZGVhY2Nlc3Npb25pbmcgbWF5IGJlIG5vIGxvbmdlciB0aGFuIDEwMDAgY2hhcmFjdGVycy48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWJ1dHRvbnBhbmUgdWktZGlhbG9nLWZvb3RlciB1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXgiPjwvZGl2PjwvZGl2PjxpbnB1dCBpZD0iZGF0YXNldEZvcm06aGlkZGVuUmVhc29uSW5wdXQiIG5hbWU9ImRhdGFzZXRGb3JtOmhpZGRlblJlYXNvbklucHV0IiB0eXBlPSJ0ZXh0IiBzdHlsZT0iZGlzcGxheTpub25lIiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCIgLz48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpoaWRkZW5SZWFzb25JbnB1dF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIklucHV0VGV4dCIsImhpZGRlblJlYXNvbklucHV0Iix7aWQ6ImRhdGFzZXRGb3JtOmhpZGRlblJlYXNvbklucHV0In0pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmNvbXBhcmVUd28iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06Y29tcGFyZVR3b190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+VmVyc2lvbiBEaWZmZXJlbmNlcyBEZXRhaWxzPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiB0ZXh0LWRhbmdlciI+PC9zcGFuPiA8c3BhbiBjbGFzcz0idGV4dC1kYW5nZXIiPlBsZWFzZSBzZWxlY3QgdHdvIHZlcnNpb25zIHRvIHZpZXcgdGhlIGRpZmZlcmVuY2VzLjwvc3Bhbj48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzU5IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNTkiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignY29tcGFyZVR3bycpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNTlfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTM1OSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzNTkifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmNvbXBhcmVUd29fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiY29tcGFyZVR3byIse2lkOiJkYXRhc2V0Rm9ybTpjb21wYXJlVHdvIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZGV0YWlsc0Jsb2NrcyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBsYXJnZVBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRldGFpbHNCbG9ja3NfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlZlcnNpb24gRGlmZmVyZW5jZXMgRGV0YWlsczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InZlcnNpb24tdGl0bGUiIGNsYXNzPSJtYXJnaW4tYm90dG9tLWhhbGYiPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ2ZXJzaW9uLWRldGFpbHMtYmxvY2siIGNsYXNzPSIgY2xlYXJmaXggbWFyZ2luLWJvdHRvbS1oYWxmIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InB1bGwtbGVmdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgwqAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHVsbC1sZWZ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJzaW9uOiA8YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYXN0IFVwZGF0ZWQ6IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwdWxsLWxlZnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb246IDxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExhc3QgVXBkYXRlZDogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayBtYXJnaW4tYm90dG9tIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MzYiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQzNiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkZXRhaWxzQmxvY2tzJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkRvbmU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDM2X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0MzYiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDM2In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkZXRhaWxzQmxvY2tzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRldGFpbHNCbG9ja3MiLHtpZDoiZGF0YXNldEZvcm06ZGV0YWlsc0Jsb2NrcyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRG93bmxvYWQiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRvd25sb2FkX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TZWxlY3QgRmlsZShzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IGEgZmlsZSBvciBmaWxlcyB0byBiZSBkb3dubG9hZGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MzkiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQzOSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvckRvd25sb2FkJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTQzOSZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQzOV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNDM5Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQzOSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEb3dubG9hZF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvckRvd25sb2FkIix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRG93bmxvYWQiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3MiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3NfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgYSBmaWxlIG9yIGZpbGVzIGZvciBhY2Nlc3MgcmVxdWVzdC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDQyIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE0NDIiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JSZXF1ZXN0QWNjZXNzJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE0NDImcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0NDJfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTQ0MiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE0NDIifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVxdWVzdEFjY2Vzc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3MiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXF1ZXN0QWNjZXNzIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEZWxldGUiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRlbGV0ZV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIHNlbGVjdCBhIGZpbGUgb3IgZmlsZXMgdG8gYmUgZGVsZXRlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDQ1IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE0NDUiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JEZWxldGUnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNDQ1JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDQ1X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0NDUiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDQ1In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRlbGV0ZV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvckRlbGV0ZSIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRlbGV0ZSIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVzdHJpY3QiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlc3RyaWN0X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TZWxlY3QgRmlsZShzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IHVucmVzdHJpY3RlZCBmaWxlKHMpIHRvIGJlIHJlc3RyaWN0ZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQ0OCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDQ4IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yUmVzdHJpY3QnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNDQ4JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDQ4X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0NDgiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDQ4In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlc3RyaWN0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbGVjdEZpbGVzRm9yUmVzdHJpY3QiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXN0cmljdCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yVW5SZXN0cmljdCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yVW5SZXN0cmljdF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIHNlbGVjdCByZXN0cmljdGVkIGZpbGUocykgdG8gYmUgdW5yZXN0cmljdGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0NTEiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQ1MSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvclVuUmVzdHJpY3QnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNDUxJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDUxX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0NTEiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDUxIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclVuUmVzdHJpY3RfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0Iix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yVW5SZXN0cmljdCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGFfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgYSBmaWxlIG9yIGZpbGVzIHRvIGJlIGVkaXRlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDU0IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE0NTQiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGEnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNDU0JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDU0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0NTQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDU0In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRNZXRhZGF0YV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvckVkaXRNZXRhZGF0YSIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRNZXRhZGF0YSIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdFRhZ3MiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRUYWdzX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TZWxlY3QgRmlsZShzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IGEgZmlsZSBvciBmaWxlcyB0byBiZSBlZGl0ZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQ1NyIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDU3IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yRWRpdFRhZ3MnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNDU3JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDU3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0NTciLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDU3In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRUYWdzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbGVjdEZpbGVzRm9yRWRpdFRhZ3MiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0VGFncyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5yZWZyZXNoVGFnc0NvbW1hbmQgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpqX2lkdDE0NTkiLGY6ImRhdGFzZXRGb3JtIix1OiJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwIixvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7UEYoJ2ZpbGVUYWdzUG9wdXAnKS5zaG93KCk7O30scGE6YXJndW1lbnRzWzBdfSk7fTwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5FZGl0IFRhZ3M8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IFNlbGVjdCBleGlzdGluZyBmaWxlIHRhZ3Mgb3IgY3JlYXRlIG5ldyB0YWdzIHRvIGRlc2NyaWJlIHlvdXIgZmlsZXMuIEVhY2ggZmlsZSBjYW4gaGF2ZSBtb3JlIHRoYW4gb25lIHRhZy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b24iIG5hbWU9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b24mcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUgZGF0YXNldEZvcm0mcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdmaWxlVGFnc1BvcHVwJykuaGlkZSgpO319KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5TYXZlIENoYW5nZXM8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2ZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uIix7aWQ6ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uIn0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24iIG5hbWU9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24iIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2ZpbGVUYWdzUG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cENhbmNlbEJ1dHRvbiZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwQ2FuY2VsQnV0dG9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9maWxlVGFnc1BvcHVwQ2FuY2VsQnV0dG9uIix7aWQ6ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24ifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZmlsZVRhZ3NQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06cnN5bmNVcGxvYWRJbmZvUG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpyc3luY1VwbG9hZEluZm9Qb3B1cF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+VXBsb2FkIEZpbGVzPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24gdGV4dC1kYW5nZXIiPjwvc3Bhbj48c3BhbiBjbGFzcz0idGV4dC1kYW5nZXIiPiBZb3UgY2FuIG5vdCB1cGxvYWQgYWRkaXRpb25hbCBmaWxlcyB0byB0aGlzIGRhdGFzZXQuPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUxMSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNTExIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3JzeW5jVXBsb2FkX3BvcHVwJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTUxMSZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtIG1lc3NhZ2VQYW5lbCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUxMV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTExIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTUxMSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06cnN5bmNVcGxvYWRJbmZvUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicnN5bmNVcGxvYWRfcG9wdXAiLHtpZDoiZGF0YXNldEZvcm06cnN5bmNVcGxvYWRJbmZvUG9wdXAiLG1vZGFsOnRydWUsYmVoYXZpb3JzOntjbG9zZTpmdW5jdGlvbihleHQsZXZlbnQpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpyc3luY1VwbG9hZEluZm9Qb3B1cCIsZToiY2xvc2UiLHA6ImRhdGFzZXRGb3JtOnJzeW5jVXBsb2FkSW5mb1BvcHVwIix1OiJkYXRhc2V0Rm9ybSBtZXNzYWdlUGFuZWwifSxleHQpO319fSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNTEzIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUxM190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UmVxdWVzdCBBY2Nlc3M8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24gdGV4dC1kYW5nZXIiPjwvc3Bhbj7CoAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQtZGFuZ2VyIj5Zb3UgbmVlZCB0byA8YSBocmVmPSIvZGF0YXZlcnNldXNlci54aHRtbD9yZWRpcmVjdFBhZ2U9JTJGZGF0YXNldC54aHRtbCUzRnBlcnNpc3RlbnRJZCUzRGRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMmYW1wO2VkaXRNb2RlPUNSRUFURSIgdGFyZ2V0PSJfc2VsZiIgdGl0bGU9IlNpZ24gVXAgZm9yIGEgRGF0YXZlcnNlIEFjY291bnQiPlNpZ24gVXA8L2E+IG9yIDxhIGhyZWY9Ii9sb2dpbnBhZ2UueGh0bWw/cmVkaXJlY3RQYWdlPSUyRmRhdGFzZXQueGh0bWwlM0ZwZXJzaXN0ZW50SWQlM0Rkb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIiB0YXJnZXQ9Il9zZWxmIiB0aXRsZT0iTG9nIGludG8geW91ciBEYXRhdmVyc2UgQWNjb3VudCI+TG9nIEluPC9hPiB0byByZXF1ZXN0IGFjY2VzcyB0byB0aGlzIGZpbGUuPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNTE5IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MTkiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignYWNjZXNzU2lnblVwTG9nSW5fcG9wdXAnKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTUxOSZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUxOV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTE5Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTUxOSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNTEzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImFjY2Vzc1NpZ25VcExvZ0luX3BvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTUxMyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmNvbmZpZ3VyZVRvb2xQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmNvbmZpZ3VyZVRvb2xQb3B1cF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KCiAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPjxzcGFuIGNsYXNzPSJ0ZXh0LWxlZnQiPiA8L3NwYW4+CiAgICAgICAgPC9wPgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGEgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUyNCIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdjb25maWd1cmVUb29sUG9wdXAnKS5oaWRlKCk7d2luZG93Lm9wZW4oJycsICdfYmxhbmsnKTtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTUyNCZxdW90Oyx1OiZxdW90O21lc3NhZ2VQYW5lbCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9ImJ1dHRvbiI+Q29udGludWU8L2E+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignY29uZmlndXJlVG9vbFBvcHVwJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdmFsdWU9IkNhbmNlbCI+Q2FuY2VsPC9idXR0b24+CiAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06Y29uZmlndXJlVG9vbFBvcHVwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImNvbmZpZ3VyZVRvb2xQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpjb25maWd1cmVUb29sUG9wdXAiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZFBvcHVwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIGxhcmdlUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWRQb3B1cF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGF0YXNldCBUZXJtczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1pbmZvLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIGNvbmZpcm0gYW5kL29yIGNvbXBsZXRlIHRoZSBpbmZvcm1hdGlvbiBuZWVkZWQgYmVsb3cgaW4gb3JkZXIgdG8gY29udGludWUuCiAgICAgICAgPC9wPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmd1ZXN0Ym9va01lc3NhZ2VzIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIG1lc3NhZ2VQYW5lbCI+CiAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9ImZvcm0taG9yaXpvbnRhbCI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiIGZvcj0iZ3Vlc3Rib29rX3RvdSI+CiAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgVXNlCiAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTYiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IHJlYWQtdGVybXMiPkxpY2Vuc2VkIGVsZWN0cm9uaWMgcmVzb3VyY2VzIGFyZSByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBVbmRlciBIYXJ2YXJkJ3MgbGljZW5zZXMgZm9yIGVsZWN0cm9uaWMgcmVzb3VyY2VzLCB1c2VycyBnZW5lcmFsbHkgbWF5IG5vdDogcGVybWl0IGFueW9uZSBvdGhlciB0aGFuIGF1dGhvcml6ZWQgdXNlcnMgdG8gdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHM7IG1vZGlmeSBvciBjcmVhdGUgYSBkZXJpdmF0aXZlIHdvcmsgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyB3aXRob3V0IHRoZSBwZXJtaXNzaW9uIG9mIHRoZSBsaWNlbnNvcjsgcmVtb3ZlLCBvYnNjdXJlIG9yIG1vZGlmeSBhbnkgY29weXJpZ2h0IG9yIG90aGVyIG5vdGljZXMgaW5jbHVkZWQgaW4gdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMgZm9yIGNvbW1lcmNpYWwgcHVycG9zZXMsIGluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gdGhlIHNhbGUgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscy4gVXNlcnMgYXJlIGluZGl2aWR1YWxseSByZXNwb25zaWJsZSBmb3IgY29tcGxpYW5jZSB3aXRoIHRoZXNlIHRlcm1zLgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIiBmb3I9Imd1ZXN0Ym9va190b2EiPgogICAgICAgICAgICAgICAgICAgIFRlcm1zIG9mIEFjY2VzcwogICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSByZWFkLXRlcm1zIj5UaGlzIGRhdGFzZXQgaXMgcmVzdHJpY3RlZCB0byBtZW1iZXJzIG9mIHRoZSBIYXJ2YXJkIGNvbW11bml0eSBmb3IgcHVycG9zZXMgb2YgcmVzZWFyY2gsIHRlYWNoaW5nLCBhbmQgcHJpdmF0ZSBzdHVkeS4gSGFydmFyZCBhZmZpbGlhdGVzIG1heSBhY2Nlc3MgdGhlIGRhdGEgYnkgbG9nZ2luZyBpbnRvIHRoaXMgc3lzdGVtIHZpYSB0aGUgaW5zdGl0dXRpb25hbCBsb2dpbiBhbmQgc2VsZWN0aW5nIEhhcnZhcmQgVW5pdmVyc2l0eS4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxhIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2MDIiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTYwMiZxdW90OyxwOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTYwMiZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtOmd1ZXN0Ym9va1VJRnJhZ21lbnQmcXVvdDsscGE6W3tuYW1lOiZxdW90O0RPX0dCX1ZBTElEQVRJT04mcXVvdDssdmFsdWU6JnF1b3Q7dHJ1ZSZxdW90O31dfSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0iYnV0dG9uIj5BY2NlcHQ8L2E+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZG93bmxvYWRQb3B1cCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHZhbHVlPSJDYW5jZWwiPkNhbmNlbDwvYnV0dG9uPgogICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZG93bmxvYWRQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpkb3dubG9hZFBvcHVwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc1BvcHVwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIGxhcmdlUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc1BvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5SZXF1ZXN0IEFjY2Vzczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1pbmZvLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIGNvbmZpcm0gYW5kL29yIGNvbXBsZXRlIHRoZSBpbmZvcm1hdGlvbiBuZWVkZWQgYmVsb3cgaW4gb3JkZXIgdG8gcmVxdWVzdCBhY2Nlc3MgdG8gZmlsZXMgaW4gdGhpcyBkYXRhc2V0LgogICAgICAgIDwvcD4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWhvcml6b250YWwiPjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIiBmb3I9Imd1ZXN0Ym9va190b3UiPgogICAgICAgICAgICAgICAgICAgIFRlcm1zIG9mIFVzZQogICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSByZWFkLXRlcm1zIj5MaWNlbnNlZCBlbGVjdHJvbmljIHJlc291cmNlcyBhcmUgcmVzdHJpY3RlZCB0byBtZW1iZXJzIG9mIHRoZSBIYXJ2YXJkIGNvbW11bml0eSBmb3IgcHVycG9zZXMgb2YgcmVzZWFyY2gsIHRlYWNoaW5nLCBhbmQgcHJpdmF0ZSBzdHVkeS4gVW5kZXIgSGFydmFyZCdzIGxpY2Vuc2VzIGZvciBlbGVjdHJvbmljIHJlc291cmNlcywgdXNlcnMgZ2VuZXJhbGx5IG1heSBub3Q6IHBlcm1pdCBhbnlvbmUgb3RoZXIgdGhhbiBhdXRob3JpemVkIHVzZXJzIHRvIHVzZSB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzOyBtb2RpZnkgb3IgY3JlYXRlIGEgZGVyaXZhdGl2ZSB3b3JrIG9mIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMgd2l0aG91dCB0aGUgcGVybWlzc2lvbiBvZiB0aGUgbGljZW5zb3I7IHJlbW92ZSwgb2JzY3VyZSBvciBtb2RpZnkgYW55IGNvcHlyaWdodCBvciBvdGhlciBub3RpY2VzIGluY2x1ZGVkIGluIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHM7IHVzZSB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzIGZvciBjb21tZXJjaWFsIHB1cnBvc2VzLCBpbmNsdWRpbmcgYnV0IG5vdCBsaW1pdGVkIHRvIHRoZSBzYWxlIG9mIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMuIFVzZXJzIGFyZSBpbmRpdmlkdWFsbHkgcmVzcG9uc2libGUgZm9yIGNvbXBsaWFuY2Ugd2l0aCB0aGVzZSB0ZXJtcy4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCIgZm9yPSJndWVzdGJvb2tfdG9hIj4KICAgICAgICAgICAgICAgICAgICBUZXJtcyBvZiBBY2Nlc3MKICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNiI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwgcGFuZWwtZGVmYXVsdCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkgcmVhZC10ZXJtcyI+VGhpcyBkYXRhc2V0IGlzIHJlc3RyaWN0ZWQgdG8gbWVtYmVycyBvZiB0aGUgSGFydmFyZCBjb21tdW5pdHkgZm9yIHB1cnBvc2VzIG9mIHJlc2VhcmNoLCB0ZWFjaGluZywgYW5kIHByaXZhdGUgc3R1ZHkuIEhhcnZhcmQgYWZmaWxpYXRlcyBtYXkgYWNjZXNzIHRoZSBkYXRhIGJ5IGxvZ2dpbmcgaW50byB0aGlzIHN5c3RlbSB2aWEgdGhlIGluc3RpdHV0aW9uYWwgbG9naW4gYW5kIHNlbGVjdGluZyBIYXJ2YXJkIFVuaXZlcnNpdHkuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YSBpZD0iZGF0YXNldEZvcm06al9pZHQxNjIzIiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE2MjMmcXVvdDssdTomcXVvdDtAKFtpZCQ9cmVxdWVzdEFjY2Vzc1BvcHVwQnV0dG9uXSkmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdyZXF1ZXN0QWNjZXNzUG9wdXAnKS5oaWRlKCk7O319KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgQWNjZXB0CiAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdyZXF1ZXN0QWNjZXNzUG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB2YWx1ZT0iQ2FuY2VsIj5DYW5jZWw8L2J1dHRvbj4KICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicmVxdWVzdEFjY2Vzc1BvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NQb3B1cCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkRGF0YVN1YnNldFBvcHVwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWREYXRhU3Vic2V0UG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRvd25sb2FkIERhdGEgU3Vic2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZERhdGFTdWJzZXRQb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkb3dubG9hZERhdGFTdWJzZXRQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpkb3dubG9hZERhdGFTdWJzZXRQb3B1cCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmxpbmtEYXRhc2V0Rm9ybSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpsaW5rRGF0YXNldEZvcm1fdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkxpbmsgRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2xpbmtEYXRhc2V0Rm9ybScpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENhbmNlbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmxpbmtEYXRhc2V0Rm9ybV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJsaW5rRGF0YXNldEZvcm0iLHtpZDoiZGF0YXNldEZvcm06bGlua0RhdGFzZXRGb3JtIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06YWNjZXNzUG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06YWNjZXNzUG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkZpbGUgUmVzdHJpY3Rpb25zPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0taG9yaXpvbnRhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Rlcm1zQWNjZXNzIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJJbmZvcm1hdGlvbiBvbiBob3cgYW5kIGlmIHVzZXJzIGNhbiBnYWluIGFjY2VzcyB0byB0aGUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXJtcyBvZiBBY2Nlc3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPjx0ZXh0YXJlYSBpZD0iZGF0YXNldEZvcm06al9pZHQxNjU1IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE2NTUiIGNvbHM9IjIwIiByb3dzPSI1IiBtYXhsZW5ndGg9IjIxNDc0ODM2NDciIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dGFyZWEgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiPlRoaXMgZGF0YXNldCBpcyByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBIYXJ2YXJkIGFmZmlsaWF0ZXMgbWF5IGFjY2VzcyB0aGUgZGF0YSBieSBsb2dnaW5nIGludG8gdGhpcyBzeXN0ZW0gdmlhIHRoZSBpbnN0aXR1dGlvbmFsIGxvZ2luIGFuZCBzZWxlY3RpbmcgSGFydmFyZCBVbml2ZXJzaXR5Lg0KDQo8L3RleHRhcmVhPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY1NV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJJbnB1dFRleHRhcmVhIiwiaW5wdXR0b2EiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNjU1IixhdXRvUmVzaXplOmZhbHNlfSk7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9SZXF1ZXN0QWNjZXNzIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJJZiBjaGVja2VkLCB1c2VycyBjYW4gcmVxdWVzdCBhY2Nlc3MgdG8gdGhlIHJlc3RyaWN0ZWQgZmlsZXMgaW4gdGhpcyBkYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVxdWVzdCBBY2Nlc3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3MiIGNsYXNzPSJ1aS1jaGtib3ggdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc19pbnB1dCIgbmFtZT0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc19pbnB1dCIgdHlwZT0iY2hlY2tib3giIGF1dG9jb21wbGV0ZT0ib2ZmIiBhcmlhLWNoZWNrZWQ9ImZhbHNlIiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLWNoa2JveC1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1sYWJlbCI+RW5hYmxlIGFjY2VzcyByZXF1ZXN0PC9zcGFuPjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJTZWxlY3RCb29sZWFuQ2hlY2tib3giLCJpbnB1dGZhciIse2lkOiJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2NTkiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTY1OSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdhY2Nlc3NQb3B1cCcpLmhpZGUoKTtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTY1OSZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtIG1lc3NhZ2VQYW5lbCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY1OV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNjU5Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTY1OSJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2NjIiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTY2MiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdhY2Nlc3NQb3B1cCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNjYyX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE2NjIiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNjYyIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06YWNjZXNzUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiYWNjZXNzUG9wdXAiLHtpZDoiZGF0YXNldEZvcm06YWNjZXNzUG9wdXAiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTppbnJldmlldyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTppbnJldmlld190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U3VibWl0IGZvciBSZXZpZXc8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBZb3Ugd2lsbCBub3QgYmUgYWJsZSB0byBtYWtlIGNoYW5nZXMgdG8gdGhpcyBkYXRhc2V0IHdoaWxlIGl0IGlzIGluIHJldmlldy4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY2NSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNjY1IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2lucmV2aWV3JykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE2NjUmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5TdWJtaXQ8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNjY1X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE2NjUiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNjY1In0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY2NiIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNjY2IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2lucmV2aWV3JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2NjZfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTY2NiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE2NjYifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmlucmV2aWV3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImlucmV2aWV3Iix7aWQ6ImRhdGFzZXRGb3JtOmlucmV2aWV3Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNjY4IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY2OF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHVibGlzaCBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHB1Ymxpc2ggdGhpcyBkYXRhc2V0PyBPbmNlIHlvdSBkbyBzbyBpdCBtdXN0IHJlbWFpbiBwdWJsaXNoZWQuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD48ZGl2IGlkPSJ0ZXJtcy1hZ3JlZW1lbnQtYmxvY2siIGNsYXNzPSJ3ZWxsIj5CeSBkZWZhdWx0IGRhdGFzZXRzIGFyZSBwdWJsaXNoZWQgd2l0aCB0aGUgQ0MwLeKAnFB1YmxpYyBEb21haW4gRGVkaWNhdGlvbuKAnSB3YWl2ZXIuIExlYXJuIG1vcmUgYWJvdXQgdGhlIENDMCB3YWl2ZXIgPGEgdGFyZ2V0PV9ibGFuayBocmVmPSdodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9jaG9vc2UvemVyby8nPmhlcmU8L2E+LiA8YnI+PGJyPiBUbyBwdWJsaXNoIHdpdGggY3VzdG9tIFRlcm1zIG9mIFVzZSwgY2xpY2sgdGhlIENhbmNlbCBidXR0b24gYW5kIGdvIHRvIHRoZSBUZXJtcyB0YWIgZm9yIHRoaXMgZGF0YXNldC48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2NzMiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTY3MyIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdwdWJsaXNoQ29uZmlybScpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNjczJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNjczX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE2NzMiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNjczIn0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY3NCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNjc0IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3B1Ymxpc2hDb25maXJtJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2NzRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTY3NCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE2NzQifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY2OF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJwdWJsaXNoQ29uZmlybSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE2NjgiLG1vZGFsOnRydWUsd2lkdGg6IjcwJSJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2NzYiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNjc2X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5QdWJsaXNoIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPlRoaXMgZGF0YXNldCBjYW5ub3QgYmUgcHVibGlzaGVkIHVudGlsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvZGF0YXZlcnNlL25kcyIgdGl0bGU9Ik51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UiPk51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPiBpcyBwdWJsaXNoZWQuIFdvdWxkIHlvdSBsaWtlIHRvIHB1Ymxpc2ggYm90aCByaWdodCBub3c/CiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD48ZGl2IGlkPSJ0ZXJtcy1hZ3JlZW1lbnQtYmxvY2siIGNsYXNzPSJ3ZWxsIj5CeSBkZWZhdWx0IGRhdGFzZXRzIGFyZSBwdWJsaXNoZWQgd2l0aCB0aGUgQ0MwLeKAnFB1YmxpYyBEb21haW4gRGVkaWNhdGlvbuKAnSB3YWl2ZXIuIExlYXJuIG1vcmUgYWJvdXQgdGhlIENDMCB3YWl2ZXIgCjxhIGhyZWY9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2Nob29zZS96ZXJvLyIgcmVsPSJub2ZvbGxvdyIgdGFyZ2V0PSJfYmxhbmsiPmhlcmU8L2E+LiAKPGJyPgo8YnI+IFRvIHB1Ymxpc2ggd2l0aCBjdXN0b20gVGVybXMgb2YgVXNlLCBjbGljayB0aGUgQ2FuY2VsIGJ1dHRvbiBhbmQgZ28gdG8gdGhlIFRlcm1zIHRhYiBmb3IgdGhpcyBkYXRhc2V0LjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1pbmZvLXNpZ24iPjwvc3Bhbj4gT25jZSB5b3UgcHVibGlzaCB0aGlzIGRhdGFzZXQgaXQgbXVzdCByZW1haW4gcHVibGlzaGVkLgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNjg3IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE2ODciIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRigncHVibGlzaFBhcmVudCcpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNjg3JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+WWVzLCBQdWJsaXNoIEJvdGg8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNjg3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE2ODciLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNjg3In0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY4OCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNjg4IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3B1Ymxpc2hQYXJlbnQnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY4OF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNjg4Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTY4OCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNjc2X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInB1Ymxpc2hQYXJlbnQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNjc2Iixtb2RhbDp0cnVlLHdpZHRoOiI3MCUifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNjkwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY5MF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHVibGlzaCBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlcHVibGlzaCB0aGlzIGRhdGFzZXQ/CiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD48ZGl2IGlkPSJ0ZXJtcy1hZ3JlZW1lbnQtYmxvY2siIGNsYXNzPSJ3ZWxsIj5CeSBkZWZhdWx0IGRhdGFzZXRzIGFyZSBwdWJsaXNoZWQgd2l0aCB0aGUgQ0MwLeKAnFB1YmxpYyBEb21haW4gRGVkaWNhdGlvbuKAnSB3YWl2ZXIuIExlYXJuIG1vcmUgYWJvdXQgdGhlIENDMCB3YWl2ZXIgCjxhIGhyZWY9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2Nob29zZS96ZXJvLyIgcmVsPSJub2ZvbGxvdyIgdGFyZ2V0PSJfYmxhbmsiPmhlcmU8L2E+LiAKPGJyPgo8YnI+IFRvIHB1Ymxpc2ggd2l0aCBjdXN0b20gVGVybXMgb2YgVXNlLCBjbGljayB0aGUgQ2FuY2VsIGJ1dHRvbiBhbmQgZ28gdG8gdGhlIFRlcm1zIHRhYiBmb3IgdGhpcyBkYXRhc2V0LjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWluZm8tc2lnbiI+PC9zcGFuPiBTZWxlY3QgaWYgdGhpcyBpcyBhIG1pbm9yIG9yIG1ham9yIHZlcnNpb24gdXBkYXRlLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPjx0YWJsZSBpZD0iZGF0YXNldEZvcm06b3B0aW9ucyIgY2xhc3M9InVpLXNlbGVjdG9uZXJhZGlvIHVpLXdpZGdldCI+PHRyPjx0ZD48ZGl2IGNsYXNzPSJ1aS1yYWRpb2J1dHRvbiB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpvcHRpb25zOjAiIG5hbWU9ImRhdGFzZXRGb3JtOm9wdGlvbnMiIHR5cGU9InJhZGlvIiB2YWx1ZT0iMSIgY2hlY2tlZD0iY2hlY2tlZCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1yYWRpb2J1dHRvbi1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCB1aS1zdGF0ZS1hY3RpdmUiPjxzcGFuIGNsYXNzPSJ1aS1yYWRpb2J1dHRvbi1pY29uIHVpLWljb24gdWktaWNvbi1idWxsZXQgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGQ+PHRkPjxsYWJlbCBmb3I9ImRhdGFzZXRGb3JtOm9wdGlvbnM6MCI+TWlub3IgUmVsZWFzZSAoMS4xKTwvbGFiZWw+PC90ZD48dGQ+PGRpdiBjbGFzcz0idWktcmFkaW9idXR0b24gdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06b3B0aW9uczoxIiBuYW1lPSJkYXRhc2V0Rm9ybTpvcHRpb25zIiB0eXBlPSJyYWRpbyIgdmFsdWU9IjIiIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktcmFkaW9idXR0b24tYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1yYWRpb2J1dHRvbi1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PC9kaXY+PC90ZD48dGQ+PGxhYmVsIGZvcj0iZGF0YXNldEZvcm06b3B0aW9uczoxIj5NYWpvciBSZWxlYXNlICgyLjApPC9sYWJlbD48L3RkPjwvdHI+PC90YWJsZT48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpvcHRpb25zX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIlNlbGVjdE9uZVJhZGlvIiwid2lkZ2V0X2RhdGFzZXRGb3JtX29wdGlvbnMiLHtpZDoiZGF0YXNldEZvcm06b3B0aW9ucyJ9KTt9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MDIiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTcwMiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdyZWxlYXNlRHJhZnQnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNzAyJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzAyX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3MDIiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzAyIn0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTcwNCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzA0IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3JlbGVhc2VEcmFmdCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzA0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3MDQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzA0In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2OTBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicmVsZWFzZURyYWZ0Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTY5MCIsbW9kYWw6dHJ1ZSx3aWR0aDoiNzAlIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTcwNiIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MDZfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlB1Ymxpc2ggRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+VGhpcyBkYXRhc2V0IGNhbm5vdCBiZSBwdWJsaXNoZWQgdW50aWwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UueGh0bWw/YWxpYXM9bmRzIiB0aXRsZT0iTnVtZXJpYyBEYXRhIFNlcnZpY2VzIERhdGF2ZXJzZSI+TnVtZXJpYyBEYXRhIFNlcnZpY2VzIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+ICBpcyBwdWJsaXNoZWQgYnkgaXRzIGFkbWluaXN0cmF0b3IuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MTQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTcxNCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdtYXlOb3RSZWxlYXNlJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MTRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTcxNCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3MTQifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTcwNl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJtYXlOb3RSZWxlYXNlIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTcwNiIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTcxNiIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MTZfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlB1Ymxpc2ggRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+VGhpcyBkYXRhc2V0IGNhbm5vdCBiZSBwdWJsaXNoZWQgdW50aWwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UvbmRzIiB0aXRsZT0iTnVtZXJpYyBEYXRhIFNlcnZpY2VzIERhdGF2ZXJzZSI+TnVtZXJpYyBEYXRhIFNlcnZpY2VzIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+IGFuZCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2RhdGF2ZXJzZS9IYXJ2YXJkU3Vic2NyaXB0aW9uRGF0YSIgdGl0bGU9IkhhcnZhcmQgU3Vic2NyaXB0aW9uIERhdGEgRGF0YXZlcnNlIj5IYXJ2YXJkIFN1YnNjcmlwdGlvbiBEYXRhIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+ICBhcmUgcHVibGlzaGVkLgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzI4IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MjgiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignbWF5bm90UHVibGlzaFBhcmVudCcpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzI4X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3MjgiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzI4In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MTZfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwibWF5bm90UHVibGlzaFBhcmVudCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3MTYiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MzAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzMwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5SZXR1cm4gdG8gQXV0aG9yPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gUmV0dXJuIHRoaXMgZGF0YXNldCB0byBjb250cmlidXRvciBmb3IgbW9kaWZpY2F0aW9uLgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MzIiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTczMiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZW5kQmFja1RvQ29udHJpYnV0b3InKS5oaWRlKCk7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3MzImcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5Db250aW51ZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MzJfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTczMiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3MzIifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzMzIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MzMiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VuZEJhY2tUb0NvbnRyaWJ1dG9yJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MzNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTczMyIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3MzMifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTczMF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZW5kQmFja1RvQ29udHJpYnV0b3IiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzMwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnJldHVyblRvQXV0aG9yQ29tbWFuZCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOmpfaWR0MTczNSIsZjoiZGF0YXNldEZvcm0iLHBhOmFyZ3VtZW50c1swXX0pO308L3NjcmlwdD48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTplbnRlclJldHVyblJlYXNvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJDb25maXJtRGlhbG9nIiwiZW50ZXJSZXR1cm5SZWFzb24iLHtpZDoiZGF0YXNldEZvcm06ZW50ZXJSZXR1cm5SZWFzb24ifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZW50ZXJSZXR1cm5SZWFzb24iIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZyB1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5SZXF1aXJlZCBlbnRyeTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1hbGVydCB1aS1jb25maXJtLWRpYWxvZy1zZXZlcml0eSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZy1tZXNzYWdlIj5SZWFzb24gZm9yIHJldHVybiB0byBhdXRob3IgaXMgcmVxdWlyZWQ8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWJ1dHRvbnBhbmUgdWktZGlhbG9nLWZvb3RlciB1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXgiPjwvZGl2PjwvZGl2PjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImphdmF4LmZhY2VzLlZpZXdTdGF0ZSIgaWQ9ImpfaWQxOmphdmF4LmZhY2VzLlZpZXdTdGF0ZTowIiB2YWx1ZT0iLTc3ODUxMjg4NDkzMDI2NDY4MzU6LTIwNTA4MjI0ODYzNjk1MDc3NiIgYXV0b2NvbXBsZXRlPSJvZmYiIC8+CjwvZm9ybT4KICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9yZXNvdXJjZXMvanMvZHJvcGlucy5qcyIgaWQ9ImRyb3Bib3hqcyIgZGF0YS1hcHAta2V5PSIxaXRyb3U2ZGR4eDBic2QiPjwvc2NyaXB0PgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcG9wb3ZlckhUTUwoJ0FsbG93ZWQgSFRNTCBUYWdzJyk7CiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdFJldHVyblJlYXNvbigpewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgcmV0dXJuUmVhc29uVGV4dCA9IFBGKCdyZXR1cm5SZWFzb24nKS5qcS52YWwoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJldHVyblJlYXNvblRleHQubGVuZ3RoPT09MCl7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZW50ZXJSZXR1cm5SZWFzb24nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignc2VuZEJhY2tUb0NvbnRyaWJ1dG9yJykuaGlkZSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuVG9BdXRob3JDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gb3BlbkRpYWxvZygpIHsKICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2RldGFpbHMnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIG9wZW5Db21wYXJlVHdvKCkgewogICAgICAgICAgICAgICAgICAgICAgICBQRignY29tcGFyZVR3bycpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdENoZWNrQm94ZXMoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb3VudCA9IFBGKCd2ZXJzaW9uc1RhYmxlJykuZ2V0U2VsZWN0ZWRSb3dzQ291bnQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvdW50ICE9PSAyKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignY29tcGFyZVR3bycpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9ImNvbXBhcmVWZXJzaW9ucyJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0RmlsZXNTZWxlY3RlZEZvclJlc3RyaWN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgY291bnQgPSBQRignZmlsZXNUYWJsZScpLmdldFNlbGVjdGVkUm93c0NvdW50KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb3VudCA9PT0gMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbGVjdEZpbGVzRm9yUmVzdHJpY3QnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYWNjZXNzUG9wdXAnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RGaWxlc1NlbGVjdGVkRm9yVGFncygpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvdW50ID0gUEYoJ2ZpbGVzVGFibGUnKS5nZXRTZWxlY3RlZFJvd3NDb3VudCgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoY291bnQgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdzZWxlY3RGaWxlc0ZvckVkaXRUYWdzJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFRhZ3NDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdEZpbGVzU2VsZWN0ZWRGb3JEZWxldGUoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb3VudCA9IFBGKCdmaWxlc1RhYmxlJykuZ2V0U2VsZWN0ZWRSb3dzQ291bnQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvdW50ID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignc2VsZWN0RmlsZXNGb3JEZWxldGUnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZGVsZXRlU2VsZWN0ZWRGaWxlQ29uZmlybWF0aW9uJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RGaWxlc1NlbGVjdGVkRm9yRWRpdE1ldGFkYXRhKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgY291bnQgPSBQRignZmlsZXNUYWJsZScpLmdldFNlbGVjdGVkUm93c0NvdW50KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb3VudCA9PT0gMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IC8vZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEkgY29tbWVudGVkIG91dCB0aGUgY29kZSBiZWxvdzsgaWYgdGhlcmUncwogICAgICAgICAgICAgICAgICAgICAgICAvLyAxIG9yIG1vcmUgZmlsZSBzZWxlY3RlZCwgSSBkb24ndCB3YW50IHRoaXMKICAgICAgICAgICAgICAgICAgICAgICAgLy8gbWV0aG9kIHRvIGFjdGl2YXRlIHRoZSBwOnJlbW90ZUNvbW1hbmQgdGhhdAogICAgICAgICAgICAgICAgICAgICAgICAvLyBpc3N1ZXMgdGhlIHJlZGlyZWN0IHRvIHRoZSBlZGl0IHBhZ2UgKG9yCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGRvIGFueXRoaW5nIGVsc2UgZm9yIHRoYXQgbWF0dGVyKS4gRG9pbmcKICAgICAgICAgICAgICAgICAgICAgICAgLy8gaXQgdGhpcyB3YXkgd2FzLCBmb3Igc29tZSByZWFzb24sIGNhdXNpbmcKICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcyBwYWdlIHRvIHN0aWxsIHRyeSB0byByZW5kZXIgKD8/KSwgaW4KICAgICAgICAgICAgICAgICAgICAgICAgLy8gc29tZSBwYXJ0aWFsLCBoYWxmLWJha2VkIHN0YXRlIC0gd2l0aCBubwogICAgICAgICAgICAgICAgICAgICAgICAvLyB3b3JraW5nVmVyc2lvbiBwcmVzZW50LCBldGMuIC0gdGhhdCByZXN1bHRlZAogICAgICAgICAgICAgICAgICAgICAgICAvLyBpbiBzb21lIE5VTEwgcG9pbnRlcnMgaW4gdGhlIGxvZ3MuLi4gU28sCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGluc3RlYWQsIHRoZSByZWRpcmVjdCB3aWxsIGJlIGRvbmUgYnkgdGhlCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGRpcmVjdCBhY3Rpb249IGF0dHJpYnV0ZSBpbiB0aGUgb3JpZ2luYWwKICAgICAgICAgICAgICAgICAgICAgICAgLy8gY29tbWFuZEJ1dHRvbi4gLS0gTC5BLiA0LjIuMQogICAgICAgICAgICAgICAgICAgICAgICAvL29wZW5FZGl0RmlsZXNQYWdlQ29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgICAgICAvL30KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlVGVtcGxhdGUoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9InVwZGF0ZVRlbXBsYXRlIl0nKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiByZWdpc3RlckRhdGFzZXQoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9InJlZ2lzdGVyRGF0YXNldCJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tOZXdseVJlc3RyaWN0ZWQoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKCdpbnB1dFtpZCQ9InNob3dBY2Nlc3NQb3B1cCJdJykudmFsKCkgPT09ICd0cnVlJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2FjY2Vzc1BvcHVwJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnYnV0dG9uW2lkJD0iZGF0YXNldFNhdmUiXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlSGlkZGVuUmVhc29uKHRleHRBcmVhKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICQoJ2lucHV0W2lkJD0iaGlkZGVuUmVhc29uSW5wdXQiXScpLnZhbCh0ZXh0QXJlYS52YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3REZWFjY2Vzc2lvblZlcnNpb25TZWxlY3Rpb24odGVzdFZlcnNpb24pIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGRlYWNjZXNzaW9uVGV4dCA9ICQoJ2lucHV0W2lkJD0iaGlkZGVuUmVhc29uSW5wdXQiXScpLnZhbCgpOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdXJsRW50cnkgPSAkKCdpbnB1dFtpZCQ9ImZvcndhcmRVUkxGb3JEZWFjY2Vzc2lvbiJdJykudmFsKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIDsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHZhbGlkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRlc3RWZXJzaW9uID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgY291bnQgPSBQRigndmVyc2lvbkRlYWNjZXNzaW9uVGFibGUnKS5nZXRTZWxlY3RlZFJvd3NDb3VudCgpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWxpZGF0ZVVSTCh1cmxFbnRyeSkgPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2VudGVyRm9yd2FyZFVybCcpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpZiAodmFsaWQgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKCJzZWxlY3RbaWQkPSdyZWFzb25PcHRpb25zJ10gb3B0aW9uOnNlbGVjdGVkIikudmFsKCkgPT09ICc3JykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkZWFjY2Vzc2lvblRleHQgPT09ICcnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdlbnRlck90aGVyUmVhc29uJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGVhY2Nlc3Npb25UZXh0Lmxlbmd0aCA+PSAxMDAxKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3JlYXNvblRvb01hbnlDaGFyYWN0ZXJzJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWxpZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQoInNlbGVjdFtpZCQ9J3JlYXNvbk9wdGlvbnMnXSBvcHRpb246c2VsZWN0ZWQiKS52YWwoKSA9PT0gJzAnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignc2VsZWN0RGVhY2Nlc3Npb25SZWFzb24nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGVzdFZlcnNpb24gPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2RlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY291bnQgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbGVjdERlYWNjZXNzaW9uVmVyc2lvbicpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZGVhY2Nlc3Npb25Db25maXJtYXRpb24nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlVVJMKHRleHR2YWwpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRleHR2YWwgPT09ICcnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdXJscmVnZXggPSBuZXcgUmVnRXhwKCJeKGh0dHB8aHR0cHN8ZnRwKVw6Ly8oW2EtekEtWjAtOVwuXC1dKyhcOlthLXpBLVowLTlcLiYlJFwtXSspKkApKigoMjVbMC01XXwyWzAtNF1bMC05XXxbMC0xXXsxfVswLTldezJ9fFsxLTldezF9WzAtOV17MX18WzEtOV0pXC4oMjVbMC01XXwyWzAtNF1bMC05XXxbMC0xXXsxfVswLTldezJ9fFsxLTldezF9WzAtOV17MX18WzEtOV18MClcLigyNVswLTVdfDJbMC00XVswLTldfFswLTFdezF9WzAtOV17Mn18WzEtOV17MX1bMC05XXsxfXxbMS05XXwwKVwuKDI1WzAtNV18MlswLTRdWzAtOV18WzAtMV17MX1bMC05XXsyfXxbMS05XXsxfVswLTldezF9fFswLTldKXwoW2EtekEtWjAtOVwtXStcLikqW2EtekEtWjAtOVwtXStcLihjb218ZWR1fGdvdnxpbnR8bWlsfG5ldHxvcmd8Yml6fGFycGF8aW5mb3xuYW1lfHByb3xhZXJvfGNvb3B8bXVzZXVtfFthLXpBLVpdezJ9KSkoXDpbMC05XSspKigvKCR8W2EtekEtWjAtOVwuXCxcP1wnXFxcKyYlJCNcPX5fXC1dKykpKiQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHJlZ2V4LnRlc3QodGV4dHZhbCk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIG9wZW5Ecm9wYm94Q2hvb3NlcigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucyA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlcXVpcmVkLiBDYWxsZWQgd2hlbiBhIHVzZXIgc2VsZWN0cyBhbiBpdGVtIGluIHRoZSBDaG9vc2VyLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKGZpbGVzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUGFzcyB0aGUgSlNPTi1pemVkIG91dHB1dCBvZiB0aGUgQ2hvb3NlciB0byB0aGUgYmFja2luZyBiZWFuLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHZpYSBhIGhpZGRlbiBpbnB1dCBmaWVsZDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCdpbnB1dFtpZCQ9ImRyb3BCb3hTZWxlY3Rpb25JbnB1dCJdJykudmFsKEpTT04uc3RyaW5naWZ5KGZpbGVzKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9hbGVydChKU09OLnN0cmluZ2lmeShmaWxlcykpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRyaWdnZXIgdGhlIHVwbG9hZCBwcm9jZXNzaW5nIG1ldGhvZCBpbiB0aGUgYmFja2luZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGJlYW4sIHZpYSBhbiBpbnZpc2libGUgY29tbWFuZEJ1dHRvbjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCdidXR0b25baWQkPSJkcm9wQm94QnV0dG9uIl0nKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmtUeXBlOiAiZGlyZWN0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpc2VsZWN0OiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgICAgICBEcm9wYm94LmNob29zZShvcHRpb25zKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICA8L3NjcmlwdD4KICAgICAgICA8L2Rpdj4KCiAgICA8ZGl2IGlkPSJmb290ZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+PGRpdiBjbGFzcz0iY29sLXNtLTggc21hbGwiPgogICAgICAgICAgICAgICAgICAgIDxwPkNvcHlyaWdodCAmIzE2OTsgMjAxOCwgVGhlIFByZXNpZGVudCAmIzM4OyBGZWxsb3dzIG9mIEhhcnZhcmQgQ29sbGVnZcKgfMKgIDxhIGhyZWY9Imh0dHA6Ly9iZXN0LXByYWN0aWNlcy5kYXRhdmVyc2Uub3JnL2hhcnZhcmQtcG9saWNpZXMvaGFydmFyZC1wcml2YWN5LXBvbGljeS5odG1sIiB0YXJnZXQ9Il9ibGFuayI+UHJpdmFjeSBQb2xpY3k8L2E+CiAgICAgICAgICAgICAgICAgICAgPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTQgdGV4dC1yaWdodCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG93ZXJlZGJ5bG9nbyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlBvd2VyZWQgYnk8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9kYXRhdmVyc2Uub3JnLyIgdGl0bGU9IlRoZSBEYXRhdmVyc2UgUHJvamVjdCIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSIvcmVzb3VyY2VzL2ltYWdlcy9kYXRhdmVyc2Vwcm9qZWN0X2xvZ28ucG5nIiBhbHQ9IlRoZSBEYXRhdmVyc2UgUHJvamVjdCIgLz48L2E+PHNwYW4gY2xhc3M9InZlcnNpb24iPnYuIDQuOC42IGJ1aWxkIDE0Ni04NzRhOTQ0PC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+PHN0eWxlPgojZmVlZGJhY2tUYWIgewogICAgcG9zaXRpb246Zml4ZWQ7CiAgICBib3R0b206MDsKICAgIHJpZ2h0OjUwcHg7Cn0KI2ZlZWRiYWNrVGFiIGJ1dHRvbi5idG4tZmVlZGJhY2sgewogICAgbWFyZ2luLXJpZ2h0Ojg5cHg7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7Cn0KLmJ0bi1mZWVkYmFjayB7CiAgYmFja2dyb3VuZC1jb2xvcjogI0M1NUIyODsKICBib3JkZXItY29sb3I6ICNDNTVCMjg7CiAgY29sb3I6ICNmZmY7Cn0KLmJ0bi1mZWVkYmFjazpob3ZlciwKLmJ0bi1mZWVkYmFjazpmb2N1cywKLmJ0bi1mZWVkYmFjazphY3RpdmUsCi5idG4tZmVlZGJhY2suYWN0aXZlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjA1MTI0OwogIGJvcmRlci1jb2xvcjogIzliNDcxZjsKICBjb2xvcjogI2ZmZjsKfQouYnRuLWZlZWRiYWNrLmRpc2FibGVkOmhvdmVyLAouYnRuLWZlZWRiYWNrLmRpc2FibGVkOmZvY3VzLAouYnRuLWZlZWRiYWNrLmRpc2FibGVkOmFjdGl2ZSwKLmJ0bi1mZWVkYmFjay5kaXNhYmxlZC5hY3RpdmUsCi5idG4tZmVlZGJhY2tbZGlzYWJsZWRdOmhvdmVyLAouYnRuLWZlZWRiYWNrW2Rpc2FibGVkXTpmb2N1cywKLmJ0bi1mZWVkYmFja1tkaXNhYmxlZF06YWN0aXZlLAouYnRuLWZlZWRiYWNrW2Rpc2FibGVkXS5hY3RpdmUsCmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWZlZWRiYWNrOmhvdmVyLApmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1mZWVkYmFjazpmb2N1cywKZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZmVlZGJhY2s6YWN0aXZlLApmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1mZWVkYmFjay5hY3RpdmUgewogIGJhY2tncm91bmQtY29sb3I6ICNDNTVCMjg7CiAgYm9yZGVyLWNvbG9yOiAjQzU1QjI4Owp9CiNmZWVkYmFja1RhYkJvZHkgZGl2LnBhbmVsIHsKICAgIHdpZHRoOjE5MHB4OwogICAgbWFyZ2luOjA7CiAgICBiYWNrZ3JvdW5kOiNGOEY4Rjg7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowOwp9Cjwvc3R5bGU+Cgo8ZGl2IGlkPSJmZWVkYmFja1RhYiI+CiAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZmVlZGJhY2siIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNmZWVkYmFja1RhYkJvZHkiPgogICAgICAgIEZlZWRiYWNrCiAgICA8L2J1dHRvbj4KICAgIDxkaXYgaWQ9ImZlZWRiYWNrVGFiQm9keSIgY2xhc3M9ImNvbGxhcHNlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSB0ZXh0LWNlbnRlciI+CiAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtbGVmdCI+CiAgICAgICAgICAgICAgICAgIEhlbHAgaW1wcm92ZSBEYXRhdmVyc2U6IFZvbHVudGVlciBmb3Igb25saW5lIHVzYWJpbGl0eSByZXNlYXJjaCEKICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgPGEgY2xhc3M9ImJ0biBidG4tZmVlZGJhY2siIGhyZWY9Imh0dHBzOi8vZ29vLmdsL2Zvcm1zL3A3dXUzR2ZpV1lTbEpyc2kxIiByb2xlPSJidXR0b24iIHRhcmdldD0iX2JsYW5rIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjZmVlZGJhY2tUYWJCb2R5Ij4KICAgICAgICAgICAgICAgICAgTGVhcm4gTW9yZQogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9kaXY+CjxkaXYgaWQ9ImFqYXhTdGF0dXNQYW5lbCI+PGRpdiBpZD0iYWpheFN0YXR1c1BhbmVsX3N0YXJ0IiBzdHlsZT0iZGlzcGxheTpub25lIj48aW1nIHNyYz0iL3Jlc291cmNlcy9pbWFnZXMvYWpheC1sb2FkaW5nLmdpZjtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTIiIGFsdD0iTG9hZGluZyIgLz48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJhamF4U3RhdHVzUGFuZWxfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiQWpheFN0YXR1cyIsIndpZGdldF9hamF4U3RhdHVzUGFuZWwiLHtpZDoiYWpheFN0YXR1c1BhbmVsIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImNvbnRhY3REaWFsb2ciIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iY29udGFjdERpYWxvZ190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+Q29udGFjdCBIYXJ2YXJkIERhdGF2ZXJzZSBTdXBwb3J0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48ZGl2IGlkPSJqX2lkdDE3NjEiPgo8Zm9ybSBpZD0iZW1haWxGb3JtIiBuYW1lPSJlbWFpbEZvcm0iIG1ldGhvZD0icG9zdCIgYWN0aW9uPSIvZGF0YXNldC54aHRtbDtqc2Vzc2lvbmlkPTMzODFiOGE3MWNlMGM2NmQyOGFmZjEzZjFlZTI/cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMiIGNsYXNzPSJmb3JtLWhvcml6b250YWwiIGVuY3R5cGU9ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImVtYWlsRm9ybSIgdmFsdWU9ImVtYWlsRm9ybSIgLz4KCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1lc3NhZ2VUbyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPlRvPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJtZXNzYWdlVG8iIGNsYXNzPSJmb3JtLWNvbnRyb2wtc3RhdGljIj5IYXJ2YXJkIERhdGF2ZXJzZSBTdXBwb3J0PC9wPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0idXNlckVtYWlsIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+RnJvbSA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1hc3RlcmlzayB0ZXh0LWRhbmdlciIgdGl0bGU9IlJlcXVpcmVkIGZpZWxkIj48L3NwYW4+PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPjxpbnB1dCBpZD0iZW1haWxGb3JtOnVzZXJFbWFpbCIgbmFtZT0iZW1haWxGb3JtOnVzZXJFbWFpbCIgdHlwZT0idGV4dCIgdmFsdWU9IiIgc2l6ZT0iMzAiIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dCB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIGZvcm0tY29udHJvbCIgLz48c2NyaXB0IGlkPSJlbWFpbEZvcm06dXNlckVtYWlsX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0Iiwid2lkZ2V0X2VtYWlsRm9ybV91c2VyRW1haWwiLHtpZDoiZW1haWxGb3JtOnVzZXJFbWFpbCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1lc3NhZ2VTdWJqZWN0IiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+U3ViamVjdCA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1hc3RlcmlzayB0ZXh0LWRhbmdlciIgdGl0bGU9IlJlcXVpcmVkIGZpZWxkIj48L3NwYW4+PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+PGlucHV0IGlkPSJlbWFpbEZvcm06bWVzc2FnZVN1YmplY3QiIG5hbWU9ImVtYWlsRm9ybTptZXNzYWdlU3ViamVjdCIgdHlwZT0idGV4dCIgdmFsdWU9IiIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIiAvPjxzY3JpcHQgaWQ9ImVtYWlsRm9ybTptZXNzYWdlU3ViamVjdF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIklucHV0VGV4dCIsIndpZGdldF9lbWFpbEZvcm1fbWVzc2FnZVN1YmplY3QiLHtpZDoiZW1haWxGb3JtOm1lc3NhZ2VTdWJqZWN0In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+ICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9InVzZXJNZXNzYWdlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+TWVzc2FnZSA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1hc3RlcmlzayB0ZXh0LWRhbmdlciIgdGl0bGU9IlJlcXVpcmVkIGZpZWxkIj48L3NwYW4+PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+PHRleHRhcmVhIGlkPSJlbWFpbEZvcm06dXNlck1lc3NhZ2UiIG5hbWU9ImVtYWlsRm9ybTp1c2VyTWVzc2FnZSIgY29scz0iMjAiIHJvd3M9IjEwIiBtYXhsZW5ndGg9IjIxNDc0ODM2NDciIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dGFyZWEgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiPjwvdGV4dGFyZWE+PHNjcmlwdCBpZD0iZW1haWxGb3JtOnVzZXJNZXNzYWdlX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIklucHV0VGV4dGFyZWEiLCJ3aWRnZXRfZW1haWxGb3JtX3VzZXJNZXNzYWdlIix7aWQ6ImVtYWlsRm9ybTp1c2VyTWVzc2FnZSIsYXV0b1Jlc2l6ZTpmYWxzZX0pO30pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS1vZmZzZXQtMyBjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxzcGFuIGNsYXNzPSJoaWdobGlnaHRCb2xkIj5QbGVhc2UgZmlsbCB0aGlzIG91dCB0byBwcm92ZSB5b3UgYXJlIG5vdCBhIHJvYm90Ljwvc3Bhbj4gPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tYXN0ZXJpc2sgdGV4dC1kYW5nZXIiIHRpdGxlPSJSZXF1aXJlZCBmaWVsZCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+ICsgID0gPGlucHV0IGlkPSJlbWFpbEZvcm06bWVzc2FnZVN1bSIgbmFtZT0iZW1haWxGb3JtOm1lc3NhZ2VTdW0iIHR5cGU9InRleHQiIHNpemU9IjQiIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dCB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIiAvPjxzY3JpcHQgaWQ9ImVtYWlsRm9ybTptZXNzYWdlU3VtX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0Iiwid2lkZ2V0X2VtYWlsRm9ybV9tZXNzYWdlU3VtIix7aWQ6ImVtYWlsRm9ybTptZXNzYWdlU3VtIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGEgaWQ9ImVtYWlsRm9ybTpqX2lkdDE3NzkiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2VtYWlsRm9ybTpqX2lkdDE3NzkmcXVvdDssdTomcXVvdDtlbWFpbEZvcm0mcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe2lmIChhcmdzICZhbXA7JmFtcDsgIWFyZ3MudmFsaWRhdGlvbkZhaWxlZCkgUEYoJ2NvbnRhY3RGb3JtJykuaGlkZSgpOzt9LHBhOlt7bmFtZTomcXVvdDtET19WQUxJREFUSU9OJnF1b3Q7LHZhbHVlOiZxdW90O3RydWUmcXVvdDt9XSxmaTomcXVvdDtqX2lkdDE3NjEmcXVvdDt9KTtyZXR1cm4gZmFsc2U7Ij5TZW5kIE1lc3NhZ2U8L2E+CiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIG9uY2xpY2s9IlBGKCdjb250YWN0Rm9ybScpLmhpZGUoKSIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgdmFsdWU9IkNhbmNlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgIENhbmNlbAogICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgPC9kaXY+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iamF2YXguZmFjZXMuVmlld1N0YXRlIiBpZD0ial9pZDE6amF2YXguZmFjZXMuVmlld1N0YXRlOjAiIHZhbHVlPSItNzc4NTEyODg0OTMwMjY0NjgzNTotMjA1MDgyMjQ4NjM2OTUwNzc2IiBhdXRvY29tcGxldGU9Im9mZiIgLz4KPC9mb3JtPjwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImNvbnRhY3REaWFsb2dfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiY29udGFjdEZvcm0iLHtpZDoiY29udGFjdERpYWxvZyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9InN0YXR1c0luZm8iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0ic3RhdHVzSW5mb190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIG9uY2xpY2s9IlBGKCdzdGF0dXNJbmZvJykuaGlkZSgpIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB2YWx1ZT0iQ2xvc2UiPgogICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0ic3RhdHVzSW5mb19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzdGF0dXNJbmZvIix7aWQ6InN0YXR1c0luZm8iLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgZGVmZXI9ImRlZmVyIiBzcmM9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9icy9qcy9ib290c3RyYXAubWluLmpzLnhodG1sP3ZlcnNpb249NC44LjYiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2JzL2pzL2Jvb3RzdHJhcC1ob3Zlci1kcm9wZG93bi5taW4uanMueGh0bWw/dmVyc2lvbj00LjguNiI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvaWUtY29tcGF0LmpzLnhodG1sP3ZlcnNpb249NC44LjYiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2R2X3JlYmluZF9ib290c3RyYXBfdWkuanMueGh0bWw/dmVyc2lvbj00LjguNiI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvb3dsLmNhcm91c2VsLmpzLnhodG1sP3ZlcnNpb249NC44LjYiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2pxdWVyeS5tYXRjaEhlaWdodC5qcy54aHRtbD92ZXJzaW9uPTQuOC42Ij48L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgZGVmZXI9ImRlZmVyIiBzcmM9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9qcy9qcXVlcnkuc2hhcnJyZS5qcy54aHRtbD92ZXJzaW9uPTQuOC42Ij48L3NjcmlwdD4gIAogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2NsaXBib2FyZC5taW4uanMueGh0bWw/dmVyc2lvbj00LjguNiI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgLy88IVtDREFUQVsKICAgICAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgLy8gTmF2YmFyIFNlYXJjaCBUb2dnbGUKICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICcjbmF2YmFyLXNlYXJjaC10b2dnbGUnLCBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICAgICAgICAgICQodGhpcykucGFyZW50KCJsaSIpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAkKCJmb3JtLm5hdmJhci1mb3JtW3JvbGU9J3NlYXJjaCddIikuc2hvdygpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAkKCdib2R5JykuY2xpY2soZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoISQoZS50YXJnZXQpLmNsb3Nlc3QoImZvcm0ubmF2YmFyLWZvcm1bcm9sZT0nc2VhcmNoJ10iKS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgiZm9ybS5uYXZiYXItZm9ybVtyb2xlPSdzZWFyY2gnXSIpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgJCgiI25hdmJhci1zZWFyY2gtdG9nZ2xlIikucGFyZW50KCJsaSIpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgOwogICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgLy8gUmViaW5kIGJvb3RzdHJhcCBVSSBjb21wb25lbnRzCiAgICAgICAgICAgICAgICBiaW5kX2JzdWlfY29tcG9uZW50cygpOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAvL11dPgogICAgICAgIDwvc2NyaXB0PgogICAgPHNjcmlwdD4KICAgICAgICAoZnVuY3Rpb24oaSxzLG8sZyxyLGEsbSl7aVsnR29vZ2xlQW5hbHl0aWNzT2JqZWN0J109cjtpW3JdPWlbcl18fGZ1bmN0aW9uKCl7CiAgICAgICAgIChpW3JdLnE9aVtyXS5xfHxbXSkucHVzaChhcmd1bWVudHMpfSxpW3JdLmw9MSpuZXcgRGF0ZSgpO2E9cy5jcmVhdGVFbGVtZW50KG8pLAogICAgICAgICBtPXMuZ2V0RWxlbWVudHNCeVRhZ05hbWUobylbMF07YS5hc3luYz0xO2Euc3JjPWc7bS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLG0pCiAgICAgICAgIH0pKHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0JywnLy93d3cuZ29vZ2xlLWFuYWx5dGljcy5jb20vYW5hbHl0aWNzLmpzJywnZ2EnKTsKIAogICAgICAgICAgZ2EoJ2NyZWF0ZScsICJVQS02MTc1MzMzNC0xIiwgJ2F1dG8nKTsKCiAgICAgICAgICBnYSgnc2VuZCcsICdwYWdldmlldycsIHsKICAgICAgICAgICAgJ2hpdFR5cGUnOiAnc29jaWFsJywKICAgICAgICAgICAgJ3NvY2lhbE5ldHdvcmsnOiAnZmFjZWJvb2snLAogICAgICAgICAgICAnc29jaWFsQWN0aW9uJzogJ3NlbmQnLAogICAgICAgICAgICAnc29jaWFsVGFyZ2V0JzogJ2h0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1JywKICAgICAgICAgICAgJ3BhZ2UnOiAnL2RhdGFzZXQueGh0bWw/cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMnCiAgICAgICAgICB9LCB7CiAgICAgICAgICAgICdoaXRUeXBlJzogJ3NvY2lhbCcsCiAgICAgICAgICAgICdzb2NpYWxOZXR3b3JrJzogJ3R3aXR0ZXInLAogICAgICAgICAgICAnc29jaWFsQWN0aW9uJzogJ3R3ZWV0JywKICAgICAgICAgICAgJ3NvY2lhbFRhcmdldCc6ICdodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdScsCiAgICAgICAgICAgICdwYWdlJzogJy9kYXRhc2V0LnhodG1sP3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzJwogICAgICAgICAgfSk7CiAgICAgICAgCgk8L3NjcmlwdD48L2JvZHk+CjwvaHRtbD4= http_version: recorded_at: Mon, 21 May 2018 15:01:24 GMT recorded_with: VCR 3.0.3