relaton 0.4.0 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.gitignore +2 -1
- data/Gemfile.lock +10 -10
- data/lib/relaton/db.rb +10 -10
- data/lib/relaton/version.rb +1 -1
- data/relaton/cache/version +1 -1
- data/spec/relaton/db_cache_spec.rb +1 -1
- data/spec/relaton/relaton_spec.rb +1 -1
- data/spec/vcr_cassetes/fisp_140.yml +309 -309
- data/spec/vcr_cassetes/sp_800_38b.yml +24 -24
- metadata +3 -3
@@ -29,8 +29,8 @@ http_interactions:
|
|
29
29
|
Server:
|
30
30
|
- Microsoft-IIS/8.5
|
31
31
|
Set-Cookie:
|
32
|
-
- ASP.NET_SessionId=
|
33
|
-
- CMSCsrfCookie=
|
32
|
+
- ASP.NET_SessionId=oth2fzn2a52b5sxra1qfk1mz; path=/; secure; HttpOnly
|
33
|
+
- CMSCsrfCookie=SQmHly5IXl2AeHB9pF5IRGvbt/J6stsOd+JcOIaX; path=/; secure; HttpOnly
|
34
34
|
- CMSPreferredCulture=en-US; path=/; HttpOnly; Secure
|
35
35
|
X-Frame-Options:
|
36
36
|
- SAMEORIGIN
|
@@ -39,9 +39,9 @@ http_interactions:
|
|
39
39
|
X-Aspnet-Version:
|
40
40
|
- 4.0.30319
|
41
41
|
Date:
|
42
|
-
-
|
42
|
+
- Thu, 27 Jun 2019 16:36:15 GMT
|
43
43
|
Content-Length:
|
44
|
-
- '
|
44
|
+
- '132918'
|
45
45
|
Strict-Transport-Security:
|
46
46
|
- max-age=31536000
|
47
47
|
body:
|
@@ -86,8 +86,8 @@ http_interactions:
|
|
86
86
|
type=\"image/x-icon\" rel=\"icon\"/>\r\n</head>\r\n<body class=\"LTR Unknown
|
87
87
|
ENUS ContentBody\" >\r\n \r\n <form method=\"post\" action=\"/publications/search?keywords-lg=NIST+FIPS+140&status-lg=Final%2cWithdrawn\"
|
88
88
|
id=\"form\">\r\n<input type=\"hidden\" name=\"__CMSCsrfToken\" id=\"__CMSCsrfToken\"
|
89
|
-
value=\"
|
90
|
-
/>\r\n<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\"
|
89
|
+
value=\"udUTdqngHLOyashOdJaPNTIBYTyGozzHCRxa4oiMTvQa2yppFtff3OKxlISdstPWkFd4eeNxnPHZu3m9fxbbhucq0ISYG3ePXKpJPgkXwko=\"
|
90
|
+
/>\r\n<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\"lr13Ae8ewsCr0wyMMIVpDCHCyUJAEE57ztl/rDedu/sVDrrcVYFQMZvqV2PrNm7IrGegUZWQj6osd5FSbAofalLpmnGYSMYQ7zB87UUDi4N8QOobEMlByK5T6aPBAja/dJRFeu4eFTlZpMXUaH1fQAZorpbAoBtwJuw1T/wWoMv4ULo8Aipf/XoOmQAu3klXlnClrk4dr/nA/+8PHDMePphl+kDGUI035PyG65NTtD9z9vBZRy1wL4Z37cn8QvizxiNJtYr41M7ZLHGVRpStkSUaRiHEkmnGQlclqBDO500GXNrQRwC3uzw818YANvweWn/wPimq8zD/8Xils+HMh2IHoQU3x3i9JvjVoQzfc/DiHjjZrOvHFVCgkrEM4ibMBoIcAdGk9utB8J6zXIOGjQ==\"
|
91
91
|
/>\r\n\r\n<input type=\"hidden\" name=\"lng\" id=\"lng\" value=\"en-US\" />\r\n<script
|
92
92
|
type=\"text/javascript\">\r\n\t//<![CDATA[\n\r\nfunction PM_Postback(param)
|
93
93
|
{ if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080);
|
@@ -96,7 +96,7 @@ http_interactions:
|
|
96
96
|
{ if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080);
|
97
97
|
}if (window.CMSContentManager) { CMSContentManager.storeContentChangedStatus();
|
98
98
|
};WebForm_DoCallback('m$am',param,callback,ctx,null,true); }\n//]]>\r\n</script>\r\n<script
|
99
|
-
src=\"/ScriptResource.axd?d=uHIkleVeDJf4xS50Krz-yAlieOTPaRE8m_4JyEY6lgl-vOf9ExM-rMSxJ4O1LXHyufSgZybjgx0yESAZKWM_uJ3DelYaXYo2mZXXKnqWdw1NmivzXvnPjnIKhcpCTul4LJWE6w-lDlj5xDZgLKANicYwScCtdUIEj8slyCeyvLo1&t=
|
99
|
+
src=\"/ScriptResource.axd?d=uHIkleVeDJf4xS50Krz-yAlieOTPaRE8m_4JyEY6lgl-vOf9ExM-rMSxJ4O1LXHyufSgZybjgx0yESAZKWM_uJ3DelYaXYo2mZXXKnqWdw1NmivzXvnPjnIKhcpCTul4LJWE6w-lDlj5xDZgLKANicYwScCtdUIEj8slyCeyvLo1&t=ffffffffa580202a\"
|
100
100
|
type=\"text/javascript\"></script>\r\n<script type=\"text/javascript\">\r\n\t//<![CDATA[\n\r\nvar
|
101
101
|
CMS = CMS || {};\r\nCMS.Application = {\r\n \"language\": \"en\",\r\n \"imagesUrl\":
|
102
102
|
\"/CMSPages/GetResource.ashx?image=%5bImages.zip%5d%2f\",\r\n \"isDebuggingEnabled\":
|
@@ -924,9 +924,9 @@ http_interactions:
|
|
924
924
|
\ </div>\r\n</div>\r\n<div id=\"search-criteria-container\"></div>\r\n\r\n<div
|
925
925
|
class=\"row top-pagination-area\">\r\n\t<div class=\"col-lg-6 col-sm-12\">\r\n
|
926
926
|
\ <span id='showing-results-text' data-total-pages='46' data-first-record='1'
|
927
|
-
data-last-record='25' data-current-page='1' data-items-per-page='25' data-total-results='
|
927
|
+
data-last-record='25' data-current-page='1' data-items-per-page='25' data-total-results='1134'>Showing
|
928
928
|
<strong id='showing-results-first'>1</strong> through <strong id='showing-results-last'>25</strong>
|
929
|
-
of <strong id='showing-results-total'>
|
929
|
+
of <strong id='showing-results-total'>1134</strong> matching records.</span>\r\n\t</div>\r\n\t<div
|
930
930
|
class=\"col-lg-6 col-sm-12\">\r\n\t\t<span class=\"pull-right hidden-sm hidden-xs
|
931
931
|
hidden-xxs\">\r\n\t\t\t<span class='pagination-links' id='top-pagination-container'
|
932
932
|
data-total-pages='46' data-min-page='1' data-max-page='10' data-current-page='1'
|
@@ -961,7 +961,7 @@ http_interactions:
|
|
961
961
|
href=\"/publications/search?keywords-lg=NIST+FIPS+140&status-lg=Final%2cWithdrawn&page=46\"
|
962
962
|
aria-label=\"Last Page\" id=\"mobile-top-page-last\" data-last-page-number=\"46\">>></a></span>\r\n\t\t</p>\r\n\t</div>\r\n</div>\r\n<table
|
963
963
|
class=\"table table-striped table-condensed publications-table table-bordered\"
|
964
|
-
\r\n id=\"publications-results-table\" data-total-records=\"
|
964
|
+
\r\n id=\"publications-results-table\" data-total-records=\"1134\" data-page=\"1\"
|
965
965
|
\r\n data-first-record=\"1\" data-last-record=\"25\" data-ipp=\"25\">\r\n\t<thead>\r\n\t\t<tr>\r\n\t\t\t<th
|
966
966
|
nowrap class=\"hidden-sm hidden-xs hidden-xxs\">Series</th>\r\n\t\t\t<th nowrap
|
967
967
|
class=\"hidden-sm hidden-xs hidden-xxs\">Number</th>\r\n\t\t\t<th nowrap>\r\n\t\t\t\t<span
|
@@ -1040,38 +1040,38 @@ http_interactions:
|
|
1040
1040
|
id=\"pub-release-date-3\">\r\n\t\t\t\t 7/13/2007\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n
|
1041
1041
|
\ \r\n\t\t<tr id=\"result-4\">\r\n\t\t\t<td class=\"hidden-sm hidden-xs hidden-xxs\"
|
1042
1042
|
id=\"pub-series-4\">FIPS</td>\r\n\t\t\t<td class=\"hidden-sm hidden-xs hidden-xxs\"
|
1043
|
-
id=\"pub-number-4\"> 140
|
1044
|
-
|
1045
|
-
|
1046
|
-
|
1043
|
+
id=\"pub-number-4\"> 140</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div class=\"hidden-sm
|
1044
|
+
hidden-xs hidden-xxs\">\r\n <strong><a href=\"/publications/detail/fips/140/archive/1982-04-13\"
|
1045
|
+
id=\"pub-title-link-4\">General Security Requirements for Equipment Using
|
1046
|
+
the Data Encryption Standard</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1047
1047
|
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-4\">FIPS
|
1048
|
-
140
|
1049
|
-
class=\"mobile-pub-title\" id=\"pub-title-link-sm-4\">Security Requirements
|
1050
|
-
for
|
1051
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-4\">
|
1048
|
+
140 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/fips/140/archive/1982-04-13\"
|
1049
|
+
class=\"mobile-pub-title\" id=\"pub-title-link-sm-4\">General Security Requirements
|
1050
|
+
for Equipment Using the Data Encryption Standard</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1051
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-4\">4/13/1982</strong>\r\n
|
1052
1052
|
\ <br />\r\n Status: <span id=\"pub-status-sm-4\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1053
1053
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1054
|
-
<span id='download-values-4'
|
1055
|
-
|
1056
|
-
hidden-xs hidden-xxs\" id=\"pub-status-4\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1054
|
+
<span id='download-values-4'>None available</span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td
|
1055
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-status-4\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1057
1056
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-4\">\r\n\t\t\t\t
|
1058
|
-
|
1057
|
+
4/13/1982\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-5\">\r\n\t\t\t<td
|
1059
1058
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-5\">FIPS</td>\r\n\t\t\t<td
|
1060
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-5\"> 140</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1059
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-5\"> 140-1</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1061
1060
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1062
|
-
href=\"/publications/detail/fips/140/archive/
|
1063
|
-
|
1061
|
+
href=\"/publications/detail/fips/140/1/archive/1994-01-11\" id=\"pub-title-link-5\">Security
|
1062
|
+
Requirements for Cryptographic Modules</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1064
1063
|
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-5\">FIPS
|
1065
|
-
140 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/fips/140/archive/
|
1066
|
-
class=\"mobile-pub-title\" id=\"pub-title-link-sm-5\">
|
1067
|
-
for
|
1068
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-5\">
|
1064
|
+
140-1 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/fips/140/1/archive/1994-01-11\"
|
1065
|
+
class=\"mobile-pub-title\" id=\"pub-title-link-sm-5\">Security Requirements
|
1066
|
+
for Cryptographic Modules</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1067
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-5\">1/11/1994</strong>\r\n
|
1069
1068
|
\ <br />\r\n Status: <span id=\"pub-status-sm-5\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1070
1069
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1071
|
-
<span id='download-values-5'
|
1072
|
-
|
1070
|
+
<span id='download-values-5'><span id='download-value-5-0'><a href=\"/CSRC/media/Publications/fips/140/1/archive/1994-01-11/documents/fips1401.pdf\">FIPS
|
1071
|
+
140-1</a></span></span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td class=\"hidden-sm
|
1072
|
+
hidden-xs hidden-xxs\" id=\"pub-status-5\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1073
1073
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-5\">\r\n\t\t\t\t
|
1074
|
-
|
1074
|
+
1/11/1994\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-6\">\r\n\t\t\t<td
|
1075
1075
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-6\">ITL Bulletin</td>\r\n\t\t\t<td
|
1076
1076
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-6\"></td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1077
1077
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
@@ -1111,35 +1111,35 @@ http_interactions:
|
|
1111
1111
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-8\">FIPS</td>\r\n\t\t\t<td
|
1112
1112
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-8\"> 140-2</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1113
1113
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1114
|
-
href=\"/publications/detail/fips/140/2/archive/2001-
|
1114
|
+
href=\"/publications/detail/fips/140/2/archive/2001-05-25\" id=\"pub-title-link-8\">Security
|
1115
1115
|
Requirements for Cryptographic Modules</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1116
1116
|
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-8\">FIPS
|
1117
|
-
140-2 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/fips/140/2/archive/2001-
|
1117
|
+
140-2 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/fips/140/2/archive/2001-05-25\"
|
1118
1118
|
class=\"mobile-pub-title\" id=\"pub-title-link-sm-8\">Security Requirements
|
1119
1119
|
for Cryptographic Modules</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1120
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-8\">
|
1120
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-8\">5/25/2001</strong>\r\n
|
1121
1121
|
\ <br />\r\n Status: <span id=\"pub-status-sm-8\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1122
1122
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1123
1123
|
<span id='download-values-8'>None available</span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td
|
1124
1124
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-status-8\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1125
1125
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-8\">\r\n\t\t\t\t
|
1126
|
-
|
1126
|
+
5/25/2001\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-9\">\r\n\t\t\t<td
|
1127
1127
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-9\">FIPS</td>\r\n\t\t\t<td
|
1128
1128
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-9\"> 140-2</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1129
1129
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1130
|
-
href=\"/publications/detail/fips/140/2/archive/2001-
|
1130
|
+
href=\"/publications/detail/fips/140/2/archive/2001-10-10\" id=\"pub-title-link-9\">Security
|
1131
1131
|
Requirements for Cryptographic Modules</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1132
1132
|
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-9\">FIPS
|
1133
|
-
140-2 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/fips/140/2/archive/2001-
|
1133
|
+
140-2 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/fips/140/2/archive/2001-10-10\"
|
1134
1134
|
class=\"mobile-pub-title\" id=\"pub-title-link-sm-9\">Security Requirements
|
1135
1135
|
for Cryptographic Modules</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1136
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-9\">
|
1136
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-9\">10/10/2001</strong>\r\n
|
1137
1137
|
\ <br />\r\n Status: <span id=\"pub-status-sm-9\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1138
1138
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1139
1139
|
<span id='download-values-9'>None available</span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td
|
1140
1140
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-status-9\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1141
1141
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-9\">\r\n\t\t\t\t
|
1142
|
-
|
1142
|
+
10/10/2001\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-10\">\r\n\t\t\t<td
|
1143
1143
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-10\">ITL Bulletin</td>\r\n\t\t\t<td
|
1144
1144
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-10\"></td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1145
1145
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
@@ -1320,122 +1320,122 @@ http_interactions:
|
|
1320
1320
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-19\">\r\n\t\t\t\t
|
1321
1321
|
10/01/1995\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-20\">\r\n\t\t\t<td
|
1322
1322
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-20\">NISTIR</td>\r\n\t\t\t<td
|
1323
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-20\">
|
1323
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-20\"> 5693</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1324
1324
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1325
|
-
href=\"/publications/detail/nistir/
|
1326
|
-
Products List Volume 1 1995 no.
|
1327
|
-
SQL, Graphics, POSIX, Computer Security</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1325
|
+
href=\"/publications/detail/nistir/5693/archive/1995-07-01\" id=\"pub-title-link-20\">Validated
|
1326
|
+
Products List Volume 1 1995 no.3: Programming Languages, Database Language
|
1327
|
+
SQL, Graphics, POSIX, Computer Security, Product Data - IGES</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1328
1328
|
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-20\">NISTIR
|
1329
|
-
|
1329
|
+
5693 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/nistir/5693/archive/1995-07-01\"
|
1330
1330
|
class=\"mobile-pub-title\" id=\"pub-title-link-sm-20\">Validated Products
|
1331
|
-
List Volume 1 1995 no.
|
1332
|
-
POSIX, Computer Security</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1333
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-20\">
|
1331
|
+
List Volume 1 1995 no.3: Programming Languages, Database Language SQL, Graphics,
|
1332
|
+
POSIX, Computer Security, Product Data - IGES</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1333
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-20\">7/01/1995</strong>\r\n
|
1334
1334
|
\ <br />\r\n Status: <span id=\"pub-status-sm-20\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1335
1335
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1336
|
-
<span id='download-values-20'><span id='download-value-20-0'><a href=\"https://doi.org/10.6028/NIST.IR.
|
1337
|
-
|
1336
|
+
<span id='download-values-20'><span id='download-value-20-0'><a href=\"https://doi.org/10.6028/NIST.IR.5693v1\">NISTIR
|
1337
|
+
5693 (DOI)</a></span>; <span id='download-value-20-1'><a href=\"https://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir5693v1.pdf\">Local
|
1338
1338
|
Download</a></span></span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td class=\"hidden-sm
|
1339
1339
|
hidden-xs hidden-xxs\" id=\"pub-status-20\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1340
1340
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-20\">\r\n\t\t\t\t
|
1341
|
-
|
1342
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-21\">
|
1343
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-21\">
|
1341
|
+
7/01/1995\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-21\">\r\n\t\t\t<td
|
1342
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-21\">NISTIR</td>\r\n\t\t\t<td
|
1343
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-21\"> 5629</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1344
1344
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1345
|
-
href=\"/publications/detail/
|
1346
|
-
|
1347
|
-
|
1348
|
-
|
1349
|
-
|
1350
|
-
|
1351
|
-
|
1345
|
+
href=\"/publications/detail/nistir/5629/archive/1995-04-01\" id=\"pub-title-link-21\">Validated
|
1346
|
+
Products List Volume 1 1995 no.2: Programming Languages, Database Language
|
1347
|
+
SQL, Graphics, POSIX, Computer Security</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1348
|
+
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-21\">NISTIR
|
1349
|
+
5629 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/nistir/5629/archive/1995-04-01\"
|
1350
|
+
class=\"mobile-pub-title\" id=\"pub-title-link-sm-21\">Validated Products
|
1351
|
+
List Volume 1 1995 no.2: Programming Languages, Database Language SQL, Graphics,
|
1352
|
+
POSIX, Computer Security</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1353
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-21\">4/01/1995</strong>\r\n
|
1352
1354
|
\ <br />\r\n Status: <span id=\"pub-status-sm-21\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1353
1355
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1354
|
-
<span id='download-values-21'><span id='download-value-21-0'><a href=\"/
|
1355
|
-
|
1356
|
+
<span id='download-values-21'><span id='download-value-21-0'><a href=\"https://doi.org/10.6028/NIST.IR.5629v1\">NISTIR
|
1357
|
+
5629 (DOI)</a></span>; <span id='download-value-21-1'><a href=\"https://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir5629v1.pdf\">Local
|
1358
|
+
Download</a></span></span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td class=\"hidden-sm
|
1356
1359
|
hidden-xs hidden-xxs\" id=\"pub-status-21\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1357
1360
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-21\">\r\n\t\t\t\t
|
1358
|
-
|
1361
|
+
4/01/1995\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-22\">\r\n\t\t\t<td
|
1359
1362
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-22\">NISTIR</td>\r\n\t\t\t<td
|
1360
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-22\">
|
1363
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-22\"> 5585</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1361
1364
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1362
|
-
href=\"/publications/detail/nistir/
|
1363
|
-
Products List
|
1364
|
-
|
1365
|
+
href=\"/publications/detail/nistir/5585/archive/1995-01-01\" id=\"pub-title-link-22\">Validated
|
1366
|
+
Products List Volume 1 1995 no.1: Programming Languages, Database Language
|
1367
|
+
SQL, Graphics, POSIX, Computer Security</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1365
1368
|
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-22\">NISTIR
|
1366
|
-
|
1369
|
+
5585 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/nistir/5585/archive/1995-01-01\"
|
1367
1370
|
class=\"mobile-pub-title\" id=\"pub-title-link-sm-22\">Validated Products
|
1368
|
-
List
|
1371
|
+
List Volume 1 1995 no.1: Programming Languages, Database Language SQL, Graphics,
|
1369
1372
|
POSIX, Computer Security</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1370
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-22\">
|
1373
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-22\">1/01/1995</strong>\r\n
|
1371
1374
|
\ <br />\r\n Status: <span id=\"pub-status-sm-22\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1372
1375
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1373
|
-
<span id='download-values-22'><span id='download-value-22-0'><a href=\"https://doi.org/10.6028/NIST.IR.
|
1374
|
-
|
1376
|
+
<span id='download-values-22'><span id='download-value-22-0'><a href=\"https://doi.org/10.6028/NIST.IR.5585\">NISTIR
|
1377
|
+
5585 (DOI)</a></span>; <span id='download-value-22-1'><a href=\"https://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir5585.pdf\">Local
|
1375
1378
|
Download</a></span></span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td class=\"hidden-sm
|
1376
1379
|
hidden-xs hidden-xxs\" id=\"pub-status-22\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1377
1380
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-22\">\r\n\t\t\t\t
|
1378
|
-
|
1381
|
+
1/01/1995\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-23\">\r\n\t\t\t<td
|
1379
1382
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-23\">NISTIR</td>\r\n\t\t\t<td
|
1380
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-23\">
|
1383
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-23\"> 5510</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1381
1384
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1382
|
-
href=\"/publications/detail/nistir/
|
1383
|
-
Products List 1994 no.
|
1385
|
+
href=\"/publications/detail/nistir/5510/archive/1994-10-01\" id=\"pub-title-link-23\">Validated
|
1386
|
+
Products List 1994 no.4: Programming Languages, Database Language SQL, Graphics,
|
1384
1387
|
GOSIP, POSIX, Computer Security</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1385
1388
|
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-23\">NISTIR
|
1386
|
-
|
1389
|
+
5510 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/nistir/5510/archive/1994-10-01\"
|
1387
1390
|
class=\"mobile-pub-title\" id=\"pub-title-link-sm-23\">Validated Products
|
1388
|
-
List 1994 no.
|
1391
|
+
List 1994 no.4: Programming Languages, Database Language SQL, Graphics, GOSIP,
|
1389
1392
|
POSIX, Computer Security</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1390
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-23\">
|
1393
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-23\">10/01/1994</strong>\r\n
|
1391
1394
|
\ <br />\r\n Status: <span id=\"pub-status-sm-23\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1392
1395
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1393
|
-
<span id='download-values-23'><span id='download-value-23-0'><a href=\"https://doi.org/10.6028/NIST.IR.
|
1394
|
-
|
1396
|
+
<span id='download-values-23'><span id='download-value-23-0'><a href=\"https://doi.org/10.6028/NIST.IR.5510\">NISTIR
|
1397
|
+
5510 (DOI)</a></span>; <span id='download-value-23-1'><a href=\"https://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir5510.pdf\">Local
|
1395
1398
|
Download</a></span></span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td class=\"hidden-sm
|
1396
1399
|
hidden-xs hidden-xxs\" id=\"pub-status-23\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1397
1400
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-23\">\r\n\t\t\t\t
|
1398
|
-
|
1399
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-24\">
|
1400
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-24\">
|
1401
|
+
10/01/1994\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-24\">\r\n\t\t\t<td
|
1402
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-24\">FIPS</td>\r\n\t\t\t<td
|
1403
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-24\"> 188</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1401
1404
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1402
|
-
href=\"/publications/detail/
|
1403
|
-
|
1404
|
-
|
1405
|
-
|
1406
|
-
|
1407
|
-
|
1408
|
-
|
1409
|
-
POSIX, Computer Security</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1410
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-24\">1/01/1994</strong>\r\n
|
1405
|
+
href=\"/publications/detail/fips/188/archive/1994-09-06\" id=\"pub-title-link-24\">Standard
|
1406
|
+
Security Label for Information Transfer</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1407
|
+
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-24\">FIPS
|
1408
|
+
188 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/fips/188/archive/1994-09-06\"
|
1409
|
+
class=\"mobile-pub-title\" id=\"pub-title-link-sm-24\">Standard Security Label
|
1410
|
+
for Information Transfer</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1411
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-24\">9/06/1994</strong>\r\n
|
1411
1412
|
\ <br />\r\n Status: <span id=\"pub-status-sm-24\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1412
1413
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1413
|
-
<span id='download-values-24'><span id='download-value-24-0'><a href=\"
|
1414
|
-
|
1415
|
-
Download</a></span></span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td class=\"hidden-sm
|
1414
|
+
<span id='download-values-24'><span id='download-value-24-0'><a href=\"/CSRC/media/Publications/fips/188/archive/1994-09-06/documents/fips188.pdf\">FIPS
|
1415
|
+
188</a></span></span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td class=\"hidden-sm
|
1416
1416
|
hidden-xs hidden-xxs\" id=\"pub-status-24\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1417
1417
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-24\">\r\n\t\t\t\t
|
1418
|
-
|
1418
|
+
9/06/1994\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n \r\n\t\t<tr id=\"result-25\">\r\n\t\t\t<td
|
1419
1419
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-series-25\">NISTIR</td>\r\n\t\t\t<td
|
1420
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-25\">
|
1420
|
+
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-number-25\"> 5475</td>\r\n\t\t\t<td>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1421
1421
|
class=\"hidden-sm hidden-xs hidden-xxs\">\r\n <strong><a
|
1422
|
-
href=\"/publications/detail/nistir/
|
1423
|
-
Products List
|
1422
|
+
href=\"/publications/detail/nistir/5475/archive/1994-07-01\" id=\"pub-title-link-25\">Validated
|
1423
|
+
Products List 1994 no.3: Programming Languages, Database Language SQL, Graphics,
|
1424
1424
|
GOSIP, POSIX, Computer Security</a></strong>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div
|
1425
1425
|
class=\"hidden-md hidden-lg\">\r\n\t\t\t\t\t<strong><span id=\"pub-full-display-sm-25\">NISTIR
|
1426
|
-
|
1426
|
+
5475 (WITHDRAWN)</span><br />\r\n\t\t\t\t\t\t<a href=\"/publications/detail/nistir/5475/archive/1994-07-01\"
|
1427
1427
|
class=\"mobile-pub-title\" id=\"pub-title-link-sm-25\">Validated Products
|
1428
|
-
List
|
1428
|
+
List 1994 no.3: Programming Languages, Database Language SQL, Graphics, GOSIP,
|
1429
1429
|
POSIX, Computer Security</a>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t<div
|
1430
|
-
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-25\">
|
1430
|
+
class=\"hidden-md hidden-lg\">\r\n <strong id=\"pub-release-date-sm-25\">7/01/1994</strong>\r\n
|
1431
1431
|
\ <br />\r\n Status: <span id=\"pub-status-sm-25\">Withdrawn</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t\r\n\t\t\t\t\r\n
|
1432
1432
|
\ <div class=\"control-value-no-block\">\r\n Download:
|
1433
|
-
<span id='download-values-25'><span id='download-value-25-0'><a href=\"https://doi.org/10.6028/NIST.IR.
|
1434
|
-
|
1433
|
+
<span id='download-values-25'><span id='download-value-25-0'><a href=\"https://doi.org/10.6028/NIST.IR.5475\">NISTIR
|
1434
|
+
5475 (DOI)</a></span>; <span id='download-value-25-1'><a href=\"https://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir5475.pdf\">Local
|
1435
1435
|
Download</a></span></span>\r\n\t\t\t\t</div>\r\n\t\t\t</td>\r\n\t\t\t<td class=\"hidden-sm
|
1436
1436
|
hidden-xs hidden-xxs\" id=\"pub-status-25\">\r\n\t\t\t\tWithdrawn\r\n\t\t\t</td>\r\n\t\t\t<td
|
1437
1437
|
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-release-date-25\">\r\n\t\t\t\t
|
1438
|
-
|
1438
|
+
7/01/1994\r\n\t\t\t</td>\r\n\t\t\t\r\n\t\t</tr>\r\n\r\n\t</tbody>\r\n</table>\r\n<div
|
1439
1439
|
class=\"row bottom-pagination-area\">\r\n <p class=\"text-center\">\r\n <span
|
1440
1440
|
class='pagination-links' id='bottom-pagination-container' data-total-pages='46'
|
1441
1441
|
data-min-page='1' data-max-page='10' data-current-page='1' data-show-first='False'
|
@@ -1600,7 +1600,7 @@ http_interactions:
|
|
1600
1600
|
'en');\r\n document.getElementsByTagName('html')[0].setAttribute('xml:lang',
|
1601
1601
|
'en')\r\n})(); \r\n</script>\r\n\r\n \r\n </form>\r\n</body>\r\n</html>\r\n"
|
1602
1602
|
http_version:
|
1603
|
-
recorded_at:
|
1603
|
+
recorded_at: Thu, 27 Jun 2019 16:36:18 GMT
|
1604
1604
|
- request:
|
1605
1605
|
method: get
|
1606
1606
|
uri: https://csrc.nist.gov/publications/detail/fips/140/3/final
|
@@ -1632,8 +1632,8 @@ http_interactions:
|
|
1632
1632
|
Server:
|
1633
1633
|
- Microsoft-IIS/8.5
|
1634
1634
|
Set-Cookie:
|
1635
|
-
- ASP.NET_SessionId=
|
1636
|
-
- CMSCsrfCookie=
|
1635
|
+
- ASP.NET_SessionId=rbz0idustlkdp5kk44kxy0bz; path=/; secure; HttpOnly
|
1636
|
+
- CMSCsrfCookie=ap5Nees0wCLYl3ue0nnzObeXlD+GuzKCxTD/Dkn4; path=/; secure; HttpOnly
|
1637
1637
|
- CMSPreferredCulture=en-US; path=/; HttpOnly; Secure
|
1638
1638
|
X-Frame-Options:
|
1639
1639
|
- SAMEORIGIN
|
@@ -1642,7 +1642,7 @@ http_interactions:
|
|
1642
1642
|
X-Aspnet-Version:
|
1643
1643
|
- 4.0.30319
|
1644
1644
|
Date:
|
1645
|
-
-
|
1645
|
+
- Thu, 27 Jun 2019 16:36:17 GMT
|
1646
1646
|
Content-Length:
|
1647
1647
|
- '44828'
|
1648
1648
|
Strict-Transport-Security:
|
@@ -1650,12 +1650,12 @@ http_interactions:
|
|
1650
1650
|
body:
|
1651
1651
|
encoding: ASCII-8BIT
|
1652
1652
|
string: !binary |-
|
1653
|
-
PCFET0NUWVBFIGh0bWw+DQo8aHRtbCAgPg0KPGhlYWQgaWQ9ImhlYWQiPjx0aXRsZT4NCglGSVBTIDE0MC0zLCBTZWN1cml0eSBSZXF1aXJlbWVudHMgZm9yIENyeXB0b2dyYXBoaWMgTW9kdWxlcyB8IENTUkMNCjwvdGl0bGU+PG1ldGEgY2hhcnNldD0iVVRGLTgiIC8+IAo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIgLz4NCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtc3R5bGUtdHlwZSIgY29udGVudD0idGV4dC9jc3MiIC8+DQo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXNjcmlwdC10eXBlIiBjb250ZW50PSJ0ZXh0L2phdmFzY3JpcHQiIC8+DQo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCIgLz4NCg0KPGxpbmsgaHJlZj0iL1NjcmlwdHMvZm9udC1hd2Vzb21lL2Nzcy9mb250LWF3ZXNvbWUuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPg0KPGxpbmsgaHJlZj0iL0NTUkMvbWVkaWEvYm9vdHN0cmFwL2Nzcy9ib290c3RyYXAubWluLmNzcyIgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgLz4NCjxsaW5rIGhyZWY9Ii9DU1JDL21lZGlhL2Jvb3RzdHJhcC9jc3MvYm9vdHN0cmFwLXRoZW1lLm1pbi5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIC8+DQo8bGluayBocmVmPSIvU2NyaXB0cy9lb25hc2Rhbi1ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXIvYnVpbGQvY3NzL2Jvb3RzdHJhcC1kYXRldGltZXBpY2tlci5taW4uY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPg0KPGxpbmsgaHJlZj0iL0NTUkMvbWVkaWEvY3NzL25pc3QtZm9udHMuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPg0KPGxpbmsgaHJlZj0iL0NTUkMvbWVkaWEvY3NzL2NzcmMtc3R5bGUuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPg0KPGxpbmsgaHJlZj0iL0NTUkMvbWVkaWEvY3NzL21lZGlhLXJlc2l6ZS5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIC8+DQoNCg0KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iMTgweDE4MCIgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL2FwcGxlLXRvdWNoLWljb24ucG5nIiAvPg0KPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS9wbmciIGhyZWY9Ii9DU1JDL01lZGlhL2ltYWdlcy9mYXZpY29ucy9mYXZpY29uLTMyeDMyLnBuZyIgc2l6ZXM9IjMyeDMyIiAvPg0KPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS9wbmciIGhyZWY9Ii9DU1JDL01lZGlhL2ltYWdlcy9mYXZpY29ucy9mYXZpY29uLTE2eDE2LnBuZyIgc2l6ZXM9IjE2eDE2IiAvPg0KPGxpbmsgcmVsPSJtYW5pZmVzdCIgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL21hbmlmZXN0Lmpzb24iIC8+DQo8bGluayByZWw9Im1hc2staWNvbiIgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL3NhZmFyaS1waW5uZWQtdGFiLnN2ZyIgY29sb3I9IiMwMDAwMDAiIC8+DQo8bWV0YSBuYW1lPSJtc2FwcGxpY2F0aW9uLWNvbmZpZyIgY29udGVudD0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL2Jyb3dzZXJjb25maWcueG1sIiAvPg0KPG1ldGEgbmFtZT0idGhlbWUtY29sb3IiIGNvbnRlbnQ9IiMwMDAwMDAiIC8+DQoNCjxzY3JpcHQgc3JjPSIvU2NyaXB0cy9qcXVlcnkvZGlzdC9qcXVlcnkubWluLmpzIj48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvU2NyaXB0cy91bmRlcnNjb3JlL3VuZGVyc2NvcmUtbWluLmpzIj48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvU2NyaXB0cy9ib290c3RyYXAvZGlzdC9qcy9ib290c3RyYXAubWluLmpzIj48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvU2NyaXB0cy9tb21lbnQvbWluL21vbWVudC5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL1NjcmlwdHMvZW9uYXNkYW4tYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyL2J1aWxkL2pzL2Jvb3RzdHJhcC1kYXRldGltZXBpY2tlci5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL0NTUkMvbWVkaWEvanMvbWVnYW1lbnUuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL0NTUkMvbWVkaWEvanMvbWFpbi5qcyI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL0NTUkMvbWVkaWEvanMvZm9ybXMuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL0NTUkMvbWVkaWEvanMvZm9ybXMtdG9waWNzLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KPHNjcmlwdCBzcmM9Ii9DU1JDL21lZGlhL2pzL2Zvcm1zLWNvbnRyb2xGYW1pbGllcy5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvQ1NSQy9tZWRpYS9qcy9mb3Jtcy1zZWFyY2hDcml0ZXJpYS5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvQ1NSQy9tZWRpYS9qcy9uaXN0LWV4aXQtc2NyaXB0LmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KDQo8c2NyaXB0IGFzeW5jIHR5cGU9InRleHQvamF2YXNjcmlwdCIgaWQ9Il9mZWRfYW5fdWFfdGFnIiBzcmM9Imh0dHBzOi8vZGFwLmRpZ2l0YWxnb3YuZ292L1VuaXZlcnNhbC1GZWRlcmF0ZWQtQW5hbHl0aWNzLU1pbi5qcz9hZ2VuY3k9bmlzdCZzdWJhZ2VuY3k9Y3NyYyZwdWE9VUEtNjY2MTA2OTMtMTUmeXQ9dHJ1ZSZleHRzPXhzZCx4bWwsd2F2LG1wZyxtcGVnLGF2aSxydGYsd2VibSxvZ2csb2d2LG9nYSxtYXAsb3RmLGVvdCxzdmcsdHRmLHdvZmYiPjwvc2NyaXB0Pg0KDQo8c3R5bGUgaWQ9ImFudGlDbGlja2phY2siPmJvZHl7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fTwvc3R5bGU+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgaWQ9ImFudGlDbGlja2phY2tTY3JpcHQiPg0KICAgaWYgKHNlbGYgPT09IHRvcCkgew0KICAgICAgIHZhciBhbnRpQ2xpY2tqYWNrID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFudGlDbGlja2phY2siKTsNCiAgICAgICBhbnRpQ2xpY2tqYWNrLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYW50aUNsaWNramFjayk7DQogICB9IGVsc2Ugew0KICAgICAgIHRvcC5sb2NhdGlvbiA9IHNlbGYubG9jYXRpb247DQogICB9DQo8L3NjcmlwdD4NCiAKPGxpbmsgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL2Zhdmljb24uaWNvIiB0eXBlPSJpbWFnZS94LWljb24iIHJlbD0ic2hvcnRjdXQgaWNvbiIvPg0KPGxpbmsgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL2Zhdmljb24uaWNvIiB0eXBlPSJpbWFnZS94LWljb24iIHJlbD0iaWNvbiIvPg0KDQo8bWV0YSBkZXNjcmlwdGlvbj0iVGhlIHNlbGVjdGl2ZSBhcHBsaWNhdGlvbiBvZiB0ZWNobm9sb2dpY2FsIGFuZCByZWxhdGVkIHByb2NlZHVyYWwgc2FmZWd1YXJkcyBpcyBhbiBpbXBvcnRhbnQgcmVzcG9uc2liaWxpdHkgb2YgZXZlcnkgZmVkZXJhbCBvcmdhbml6YXRpb24gaW4gcHJvdmlkaW5nIGFkZXF1YXRlIHNlY3VyaXR5IGluIGl0cyBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcy7CoCDCoFRoaXMgc3RhbmRhcmQgaXMgYXBwbGljYWJsZSB0byBhbGwgZmVkZXJhbCBhZ2VuY2llcyB0aGF0IHVzZSBjcnlwdG9ncmFwaGljLWJhc2VkIHNlY3VyaXR5IHN5c3RlbXMgdG8gcHJvdGVjdCBzZW5zaXRpdmUgaW5mb3JtYXRpb24gaW4gY29tcHV0ZXIgYW5kIHRlbGVjb21tdW5pY2F0aW9uIHN5c3RlbXMgKGluY2x1ZGluZyB2b2ljZSBzeXN0ZW1zKSBhcyBkZWZpbmVkIGluIFNlY3Rpb24gNTEzMSBvZiB0aGUgSW5mb3JtYXRpb24gVGVjaG5vbG9neSBNYW5hZ2VtZW50IFJlZm9ybSBBY3Qgb2YgMTk5NiwgUHVibGljIExhdyAxMDQtMTA2IGFuZCB0aGUgRmVkZXJhbCBJbmZvcm1hdGlvbiBTZWN1cml0eSBNYW5hZ2VtZW50IEFjdCBvZiAyMDAyLCBQdWJsaWMgTGF3IDEwNy0zNDcuwqAgIFRoaXMgc3RhbmRhcmQgc2hhbGwgYmUgdXNlZCBpbiBkZXNpZ25pbmcgYW5kIGltcGxlbWVudGluZyBjcnlwdG9ncmFwaGljIG1vZHVsZXMgdGhhdCBmZWRlcmFsIGRlcGFydG1lbnRzIGFuZCBhZ2VuY2llcyBvcGVyYXRlIG9yIGFyZSBvcGVyYXRlZCBmb3IgdGhlbSB1bmRlciBjb250cmFjdC7CoCBUaGUgc3RhbmRhcmQgcHJvdmlkZXMgZm91ciBpbmNyZWFzaW5nLCBxdWFsaXRhdGl2ZSBsZXZlbHMgb2Ygc2VjdXJpdHkgaW50ZW5kZWQgdG8gY292ZXIgYSB3aWRlIHJhbmdlIG9mIHBvdGVudGlhbCBhcHBsaWNhdGlvbnMgYW5kIGVudmlyb25tZW50cy7CoCBUaGUgc2VjdXJpdHkgcmVxdWlyZW1lbnRzIGNvdmVyIGFyZWFzIHJlbGF0ZWQgdG8gdGhlIHNlY3VyZSBkZXNpZ24sIGltcGxlbWVudGF0aW9uIGFuZCBvcGVyYXRpb24gb2YgYSBjcnlwdG9ncmFwaGljIG1vZHVsZS7CoCBUaGVzZSBhcmVhcyBpbmNsdWRlIGNyeXB0b2dyYXBoaWMgbW9kdWxlIHNwZWNpZmljYXRpb247IGNyeXB0b2dyYXBoaWMgbW9kdWxlIGludGVyZmFjZXM7IHJvbGVzLCBzZXJ2aWNlcywgYW5kIGF1dGhlbnRpY2F0aW9uOyBzb2Z0d2FyZS9maXJtd2FyZSBzZWN1cml0eTsgb3BlcmF0aW5nIGVudmlyb25tZW50OyBwaHlzaWNhbCBzZWN1cml0eTsgbm9uLWludmFzaXZlIHNlY3VyaXR5OyBzZW5zaXRpdmUgc2VjdXJpdHkgcGFyYW1ldGVyIG1hbmFnZW1lbnQ7IHNlbGYtdGVzdHM7IGxpZmUtY3ljbGUgYXNzdXJhbmNlOyBhbmQgbWl0aWdhdGlvbiBvZiBvdGhlciBhdHRhY2tzLiIvPg0KPG1ldGEgbmFtZT0iZGN0ZXJtcy50aXRsZSIgY29udGVudD0iRmVkZXJhbCBJbmZvcm1hdGlvbiBQcm9jZXNzaW5nIFN0YW5kYXJkIChGSVBTKSAxNDAtMywgU2VjdXJpdHkgUmVxdWlyZW1lbnRzIGZvciBDcnlwdG9ncmFwaGljIE1vZHVsZXMiLz4NCjxtZXRhIG5hbWU9ImRjdGVybXMuZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRoZSBzZWxlY3RpdmUgYXBwbGljYXRpb24gb2YgdGVjaG5vbG9naWNhbCBhbmQgcmVsYXRlZCBwcm9jZWR1cmFsIHNhZmVndWFyZHMgaXMgYW4gaW1wb3J0YW50IHJlc3BvbnNpYmlsaXR5IG9mIGV2ZXJ5IGZlZGVyYWwgb3JnYW5pemF0aW9uIGluIHByb3ZpZGluZyBhZGVxdWF0ZSBzZWN1cml0eSBpbiBpdHMgY29tcHV0ZXIgYW5kIHRlbGVjb21tdW5pY2F0aW9uIHN5c3RlbXMuwqAgwqBUaGlzIHN0YW5kYXJkIGlzIGFwcGxpY2FibGUgdG8gYWxsIGZlZGVyYWwgYWdlbmNpZXMgdGhhdCB1c2UgY3J5cHRvZ3JhcGhpYy1iYXNlZCBzZWN1cml0eSBzeXN0ZW1zIHRvIHByb3RlY3Qgc2Vuc2l0aXZlIGluZm9ybWF0aW9uIGluIGNvbXB1dGVyIGFuZCB0ZWxlY29tbXVuaWNhdGlvbiBzeXN0ZW1zIChpbmNsdWRpbmcgdm9pY2Ugc3lzdGVtcykgYXMgZGVmaW5lZCBpbiBTZWN0aW9uIDUxMzEgb2YgdGhlIEluZm9ybWF0aW9uIFRlY2hub2xvZ3kgTWFuYWdlbWVudCBSZWZvcm0gQWN0IG9mIDE5OTYsIFB1YmxpYyBMYXcgMTA0LTEwNiBhbmQgdGhlIEZlZGVyYWwgSW5mb3JtYXRpb24gU2VjdXJpdHkgTWFuYWdlbWVudCBBY3Qgb2YgMjAwMiwgUHVibGljIExhdyAxMDctMzQ3LsKgICBUaGlzIHN0YW5kYXJkIHNoYWxsIGJlIHVzZWQgaW4gZGVzaWduaW5nIGFuZCBpbXBsZW1lbnRpbmcgY3J5cHRvZ3JhcGhpYyBtb2R1bGVzIHRoYXQgZmVkZXJhbCBkZXBhcnRtZW50cyBhbmQgYWdlbmNpZXMgb3BlcmF0ZSBvciBhcmUgb3BlcmF0ZWQgZm9yIHRoZW0gdW5kZXIgY29udHJhY3QuwqAgVGhlIHN0YW5kYXJkIHByb3ZpZGVzIGZvdXIgaW5jcmVhc2luZywgcXVhbGl0YXRpdmUgbGV2ZWxzIG9mIHNlY3VyaXR5IGludGVuZGVkIHRvIGNvdmVyIGEgd2lkZSByYW5nZSBvZiBwb3RlbnRpYWwgYXBwbGljYXRpb25zIGFuZCBlbnZpcm9ubWVudHMuwqAgVGhlIHNlY3VyaXR5IHJlcXVpcmVtZW50cyBjb3ZlciBhcmVhcyByZWxhdGVkIHRvIHRoZSBzZWN1cmUgZGVzaWduLCBpbXBsZW1lbnRhdGlvbiBhbmQgb3BlcmF0aW9uIG9mIGEgY3J5cHRvZ3JhcGhpYyBtb2R1bGUuwqAgVGhlc2UgYXJlYXMgaW5jbHVkZSBjcnlwdG9ncmFwaGljIG1vZHVsZSBzcGVjaWZpY2F0aW9uOyBjcnlwdG9ncmFwaGljIG1vZHVsZSBpbnRlcmZhY2VzOyByb2xlcywgc2VydmljZXMsIGFuZCBhdXRoZW50aWNhdGlvbjsgc29mdHdhcmUvZmlybXdhcmUgc2VjdXJpdHk7IG9wZXJhdGluZyBlbnZpcm9ubWVudDsgcGh5c2ljYWwgc2VjdXJpdHk7IG5vbi1pbnZhc2l2ZSBzZWN1cml0eTsgc2Vuc2l0aXZlIHNlY3VyaXR5IHBhcmFtZXRlciBtYW5hZ2VtZW50OyBzZWxmLXRlc3RzOyBsaWZlLWN5Y2xlIGFzc3VyYW5jZTsgYW5kIG1pdGlnYXRpb24gb2Ygb3RoZXIgYXR0YWNrcy4iLz4NCg0KPCEtLUF1dGhvcnMtLT4NCjxtZXRhIG5hbWU9ImRjdGVybXMuY3JlYXRvciIgY29udGVudD0iQXV0aG9yOiBOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5Ii8+DQoNCg0KPG1ldGEgbmFtZT0iZGN0ZXJtcy5kYXRlLmNyZWF0ZWQiIHNjaGVtZT0iSVNPODYwMSIgY29udGVudD0iMjAxOS0wMy0yMiIvPg0KPG1ldGEgbmFtZT0iZGN0ZXJtcy5pZGVudGlmaWVyIiBjb250ZW50PSJodHRwczovL2NvbnRlbnQuY3NyYy5lMWEubmlzdC5nb3YvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE0MC8zIi8+DQo8bWV0YSBuYW1lPSJkY3Rlcm1zLmxhbmd1YWdlIiBzY2hlbWU9IkRDVEVSTVMuUkZDMTc2NiIgY29udGVudD0iRU4tVVMiLz4NCg0KPCEtLUdvb2dsZSBTY2hvbGFyIEluZm8tLT4NCjxtZXRhIG5hbWU9ImNpdGF0aW9uX3RpdGxlIiBjb250ZW50PSJTZWN1cml0eSBSZXF1aXJlbWVudHMgZm9yIENyeXB0b2dyYXBoaWMgTW9kdWxlcyIgLz4NCjxtZXRhIG5hbWU9ImNpdGF0aW9uX3B1YmxpY2F0aW9uX2RhdGUiIGNvbnRlbnQ9IjIwMTkvMDMvMjIiIC8+DQo8bWV0YSBuYW1lPSJjaXRhdGlvbl9kb2kiIGNvbnRlbnQ9Imh0dHBzOi8vZG9pLm9yZy8xMC42MDI4L05JU1QuRklQUy4xNDAtMyIgLz4NCjxtZXRhIG5hbWU9ImNpdGF0aW9uX3RlY2huaWNhbF9yZXBvcnRfbnVtYmVyIiBjb250ZW50PSJGZWRlcmFsIEluZm9ybWF0aW9uIFByb2Nlc3NpbmcgU3RhbmRhcmQgKEZJUFMpIDE0MC0zIiAvPg0KPG1ldGEgbmFtZT0iY2l0YXRpb25fdGVjaG5pY2FsX3JlcG9ydF9pbnN0aXR1dGlvbiIgY29udGVudD0iVS5TLiBEZXBhcnRtZW50IG9mIENvbW1lcmNlIiAvPg0KDQoNCjxtZXRhIG5hbWU9ImNpdGF0aW9uX2tleXdvcmRzIiBjb250ZW50PSJjb21wdXRlciBzZWN1cml0eTsgdGVsZWNvbW11bmljYXRpb24gc2VjdXJpdHk7IHBoeXNpY2FsIHNlY3VyaXR5OyBzb2Z0d2FyZSBzZWN1cml0eTsgY3J5cHRvZ3JhcGh5OyBjcnlwdG9ncmFwaGljIG1vZHVsZXM7IEZlZGVyYWwgSW5mb3JtYXRpb24gUHJvY2Vzc2luZyBTdGFuZGFyZCAoRklQUyk7IElTTy9JRUMgMTk3OTA6MjAxMjsgSVNPL0lFQyAyNDc1OToyMDE0OyAiIC8+DQo8bWV0YSBuYW1lPSJjaXRhdGlvbl9sYW5ndWFnZSIgY29udGVudD0iZW4iIC8+DQo8bWV0YSBuYW1lPSJjaXRhdGlvbl9hYnN0cmFjdF9odG1sX3VybCIgY29udGVudD0iaHR0cHM6Ly9jc3JjLm5pc3QuZ292L3B1YmxpY2F0aW9ucy9kZXRhaWwvZmlwcy8xNDAvMy9maW5hbCIgLz4NCg0KDQo8IS0tR29vZ2xlIFNjaG9sYXIgQXV0aG9ycy0tPg0KPG1ldGEgbmFtZT0iY2l0YXRpb25fYXV0aG9yIiBjb250ZW50PSJOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5IiAvPg0KPCEtLSBGYWNlYm9vayBPcGVuR3JhcGggLS0+DQo8bWV0YSBuYW1lPSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IkNTUkMgfCBOSVNUIiAvPg0KPG1ldGEgbmFtZT0ib2c6dHlwZSIgY29udGVudD0iYXJ0aWNsZSIgLz4NCjxtZXRhIG5hbWU9Im9nOnVybCIgY29udGVudD0iaHR0cHM6Ly9jc3JjLm5pc3QuZ292L3B1YmxpY2F0aW9ucy9kZXRhaWwvZmlwcy8xNDAvMy9maW5hbCIgLz4NCjxtZXRhIG5hbWU9Im9nOnRpdGxlIiBjb250ZW50PSJGZWRlcmFsIEluZm9ybWF0aW9uIFByb2Nlc3NpbmcgU3RhbmRhcmQgKEZJUFMpIDE0MC0zLCBTZWN1cml0eSBSZXF1aXJlbWVudHMgZm9yIENyeXB0b2dyYXBoaWMgTW9kdWxlcyIgLz4NCjxtZXRhIG5hbWU9Im9nOmRlc2NyaXB0aW9uIiBjb250ZW50PSJUaGUgc2VsZWN0aXZlIGFwcGxpY2F0aW9uIG9mIHRlY2hub2xvZ2ljYWwgYW5kIHJlbGF0ZWQgcHJvY2VkdXJhbCBzYWZlZ3VhcmRzIGlzIGFuIGltcG9ydGFudCByZXNwb25zaWJpbGl0eSBvZiBldmVyeSBmZWRlcmFsIG9yZ2FuaXphdGlvbiBpbiBwcm92aWRpbmcgYWRlcXVhdGUgc2VjdXJpdHkgaW4gaXRzIGNvbXB1dGVyIGFuZCB0ZWxlY29tbXVuaWNhdGlvbiBzeXN0ZW1zLsKgIMKgVGhpcyBzdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIGFsbCBmZWRlcmFsIGFnZW5jaWVzIHRoYXQgdXNlIGNyeXB0b2dyYXBoaWMtYmFzZWQgc2VjdXJpdHkgc3lzdGVtcyB0byBwcm90ZWN0IHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiBpbiBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcyAoaW5jbHVkaW5nIHZvaWNlIHN5c3RlbXMpIGFzIGRlZmluZWQgaW4gU2VjdGlvbiA1MTMxIG9mIHRoZSBJbmZvcm1hdGlvbiBUZWNobm9sb2d5IE1hbmFnZW1lbnQgUmVmb3JtIEFjdCBvZiAxOTk2LCBQdWJsaWMgTGF3IDEwNC0xMDYgYW5kIHRoZSBGZWRlcmFsIEluZm9ybWF0aW9uIFNlY3VyaXR5IE1hbmFnZW1lbnQgQWN0IG9mIDIwMDIsIFB1YmxpYyBMYXcgMTA3LTM0Ny7CoCAgVGhpcyBzdGFuZGFyZCBzaGFsbCBiZSB1c2VkIGluIGRlc2lnbmluZyBhbmQgaW1wbGVtZW50aW5nIGNyeXB0b2dyYXBoaWMgbW9kdWxlcyB0aGF0IGZlZGVyYWwgZGVwYXJ0bWVudHMgYW5kIGFnZW5jaWVzIG9wZXJhdGUgb3IgYXJlIG9wZXJhdGVkIGZvciB0aGVtIHVuZGVyIGNvbnRyYWN0LsKgIFRoZSBzdGFuZGFyZCBwcm92aWRlcyBmb3VyIGluY3JlYXNpbmcsIHF1YWxpdGF0aXZlIGxldmVscyBvZiBzZWN1cml0eSBpbnRlbmRlZCB0byBjb3ZlciBhIHdpZGUgcmFuZ2Ugb2YgcG90ZW50aWFsIGFwcGxpY2F0aW9ucyBhbmQgZW52aXJvbm1lbnRzLsKgIFRoZSBzZWN1cml0eSByZXF1aXJlbWVudHMgY292ZXIgYXJlYXMgcmVsYXRlZCB0byB0aGUgc2VjdXJlIGRlc2lnbiwgaW1wbGVtZW50YXQuLi4iIC8+DQoNCjxtZXRhIG5hbWU9ImFydGljbGU6YXV0aG9yIiBjb250ZW50PSJOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5IiAvPjwvaGVhZD4NCjxib2R5IGNsYXNzPSJMVFIgVW5rbm93biBFTlVTIENvbnRlbnRCb2R5IiA+DQogICAgDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0IiBhY3Rpb249Ii9wdWJsaWNhdGlvbnMvZGV0YWlsL2ZpcHMvMTQwLzMvZmluYWwiIGlkPSJmb3JtIj4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Il9fQ01TQ3NyZlRva2VuIiBpZD0iX19DTVNDc3JmVG9rZW4iIHZhbHVlPSJ6cERqNGJnRUN1RjNLaTZSSzFvWGpFR05tVnF6V2t0b2RtdXphL0VteEI0cXlvU20rL1ZuMUZINlREeVIzWnNjYWpld1RDbFNsZVg3dVJtNC9CNHJtSEc3azZXYzVUUzJRY0lnaFVjTThVZz0iIC8+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJfX1ZJRVdTVEFURSIgaWQ9Il9fVklFV1NUQVRFIiB2YWx1ZT0iUGd0UHZWNjVGcFlUUVhBUEtuVHMzQ1cyOGlpQ1A1Y2thTUNjcjZROUxlK3NxSWYyYU5TSDBvWVVXOUhsQndxSTdNRjNTRHB5U0ZaQWZjUXFUb1hXYXlrSmNzOUI0U3FsWkNPU1FvT2poWDVDQXRoRnppSlRkYkVYeUZnKzNxalNJRmZEbmIwZXV3MDRmbllwZjg2dDBDVE8zYzE3b2tTZEZ5QzRZYmFIcEtSeVhScTVqcm5xZE03cURZaWp3ay93L2g1VmxRNklvMzNaS2lHd3NITHcvV2FCeWZORXR4bXo4dmdkM2ExSmRTNjJRSWsvYis2WWJOckQrSmZBZFBWN3JZRXNNa29JRjdSU0lSd3pBeTlETysxTldWRjdKckUvUDBYdDRDSk13M05ZeVNXZmt0cWgrenhubU5LVDRxbVNaVlJEbSs2QURWbVNGbDJUVlc1aWJ3PT0iIC8+DQoNCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImxuZyIgaWQ9ImxuZyIgdmFsdWU9ImVuLVVTIiAvPg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KCS8vPCFbQ0RBVEFbCg0KZnVuY3Rpb24gUE1fUG9zdGJhY2socGFyYW0pIHsgaWYgKHdpbmRvdy50b3AuSGlkZVNjcmVlbkxvY2tXYXJuaW5nQW5kU3luYykgeyB3aW5kb3cudG9wLkhpZGVTY3JlZW5Mb2NrV2FybmluZ0FuZFN5bmMoMTA4MCk7IH0gaWYod2luZG93LkNNU0NvbnRlbnRNYW5hZ2VyKSB7IENNU0NvbnRlbnRNYW5hZ2VyLmFsbG93U3VibWl0ID0gdHJ1ZTsgfTsgX19kb1Bvc3RCYWNrKCdtJGFtJyxwYXJhbSk7IH0NCmZ1bmN0aW9uIFBNX0NhbGxiYWNrKHBhcmFtLCBjYWxsYmFjaywgY3R4KSB7IGlmICh3aW5kb3cudG9wLkhpZGVTY3JlZW5Mb2NrV2FybmluZ0FuZFN5bmMpIHsgd2luZG93LnRvcC5IaWRlU2NyZWVuTG9ja1dhcm5pbmdBbmRTeW5jKDEwODApOyB9aWYgKHdpbmRvdy5DTVNDb250ZW50TWFuYWdlcikgeyBDTVNDb250ZW50TWFuYWdlci5zdG9yZUNvbnRlbnRDaGFuZ2VkU3RhdHVzKCk7IH07V2ViRm9ybV9Eb0NhbGxiYWNrKCdtJGFtJyxwYXJhbSxjYWxsYmFjayxjdHgsbnVsbCx0cnVlKTsgfQovL11dPg0KPC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL1NjcmlwdFJlc291cmNlLmF4ZD9kPXVISWtsZVZlREpmNHhTNTBLcnoteUFsaWVPVFBhUkU4bV80SnlFWTZsZ2wtdk9mOUV4TS1yTVN4SjRPMUxYSHl1ZlNnWnliamd4MHlFU0FaS1dNX3VKM0RlbFlhWFlvMm1aWFhLbnFXZHcxTm1pdnpYdm5Qam5JS2hjcENUdWw0TEpXRTZ3LWxEbGo1eERaZ0xLQU5pY1l3U2NDdGRVSUVqOHNseUNleXZMbzEmYW1wO3Q9ZmZmZmZmZmY5OTljMzE1OSIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCgkvLzwhW0NEQVRBWwoNCnZhciBDTVMgPSBDTVMgfHwge307DQpDTVMuQXBwbGljYXRpb24gPSB7DQogICJsYW5ndWFnZSI6ICJlbiIsDQogICJpbWFnZXNVcmwiOiAiL0NNU1BhZ2VzL0dldFJlc291cmNlLmFzaHg/aW1hZ2U9JTViSW1hZ2VzLnppcCU1ZCUyZiIsDQogICJpc0RlYnVnZ2luZ0VuYWJsZWQiOiBmYWxzZSwNCiAgImFwcGxpY2F0aW9uVXJsIjogIi8iLA0KICAiaXNEaWFsb2ciOiBmYWxzZSwNCiAgImlzUlRMIjogImZhbHNlIg0KfTsNCgovL11dPg0KPC9zY3JpcHQ+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJfX1ZJRVdTVEFURUdFTkVSQVRPUiIgaWQ9Il9fVklFV1NUQVRFR0VORVJBVE9SIiB2YWx1ZT0iQTUzNDMxODUiIC8+DQogICAgDQogICAgPGRpdiBpZD0iY3R4TSI+DQoNCjwvZGl2Pg0KICAgIDxkaXYgaWQ9ImFudGlDbGlja2phY2siIHN0eWxlPSJkaXNwbGF5OiBub25lIj4NCiAgICA8aDE+WW91IGFyZSB2aWV3aW5nIHRoaXMgcGFnZSBpbiBhbiB1bmF1dGhvcml6ZWQgZnJhbWUgd2luZG93LjwvaDE+DQogICAgPHA+VGhpcyBpcyBhIHBvdGVudGlhbCBzZWN1cml0eSBpc3N1ZSwgeW91IGFyZSBiZWluZyByZWRpcmVjdGVkIHRvIDxhIGhyZWY9Imh0dHBzOi8vY3NyYy5uaXN0LmdvdiI+aHR0cHM6Ly9jc3JjLm5pc3QuZ292PC9hPjwvcD4NCjwvZGl2Pg0KPG5hdiBpZD0ibmF2YmFyIiBjbGFzcz0ibmF2YmFyIj4NCiAgPGRpdiBpZD0ibmlzdC1tZW51LWNvbnRhaW5lciIgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICA8IS0tIEJyYW5kIC0tPg0KICAgIDxkaXYgY2xhc3M9ImNvbC14cy02IGNvbC1tZC00IG5hdmJhci1oZWFkZXIiPg0KICAgICAgPGEgY2xhc3M9Im5hdmJhci1icmFuZCIgaHJlZj0iaHR0cHM6Ly93d3cubmlzdC5nb3YiIHRhcmdldD0iX2JsYW5rIiBpZD0ibmF2YmFyLWJyYW5kLWltYWdlIj4NCiAgICAgICAgPGltZyBzcmM9Ii9DU1JDL01lZGlhL2ltYWdlcy9zdmcvbmlzdC1sb2dvLnN2ZyIgYWx0PSJOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5IiB3aWR0aD0iMTEwIiBoZWlnaHQ9IjMwIj4NCiAgICAgIDwvYT4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNiBjb2wtbWQtOCBuYXZiYXItbmlzdC1sb2dvIj4NCiAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1pbmxpbmUgaGlkZGVuLXNtIGhpZGRlbi14cyI+DQogICAgICAgICAgICA8bGFiZWwgZm9yPSJzZWFyY2gtY3NyYy1xdWVyeSIgY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj5TZWFyY2g8L2xhYmVsPg0KICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBpZD0ic2VhcmNoLWNzcmMtcXVlcnkiIG5hbWU9InNlYXJjaC1jc3JjLXF1ZXJ5IiB0eXBlPSJ0ZXh0IiBzaXplPSIxNSIgbWF4bGVuZ3RoPSIxMjgiIHBsYWNlaG9sZGVyPSJTZWFyY2ggQ1NSQyIvPg0KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJzZWFyY2gtY3NyYy1zdWJtaXQtYnRuIiBuYW1lPSJvcCIgY2xhc3M9ImZvcm0tc3VibWl0Ij4NCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPlNlYXJjaDwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtc2VhcmNoIj48L2k+DQogICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgPC9kaXY+DQogICAgICA8c3BhbiBpZD0ibnZkLW1lbnUtYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCI+DQogICAgICAgIDxhIGhyZWY9IiMiIGlkPSJudmQtbWVudS1idXR0b24tbGluayI+DQogICAgICAgICAgPHNwYW4gY2xhc3M9ImZhIGZhLWJhcnMiPjwvc3Bhbj4gDQogICAgICAgICAgPHNwYW4gaWQ9Im52ZC1tZW51LWZ1bGwtdGV4dCI+PHNwYW4gY2xhc3M9ImhpZGRlbi14eHMiPkNTUkMgPC9zcGFuPk1FTlU8L3NwYW4+DQogICAgICAgIDwvYT4NCiAgICAgIDwvc3Bhbj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgPC9kaXY+DQogICAgDQogICAgPGRpdiBjbGFzcz0iZm9ybS1pbmxpbmUgaGlkZGVuLW1kIGhpZGRlbi1sZyI+DQogICAgICAgIDxsYWJlbCBmb3I9InNlYXJjaC1jc3JjLXF1ZXJ5IiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPlNlYXJjaDwvbGFiZWw+DQogICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9Im9mZiIgY2xhc3M9ImZvcm0tY29udHJvbCIgaWQ9InNlYXJjaC1jc3JjLXF1ZXJ5LW1vYmlsZSIgbmFtZT0ic2VhcmNoLWNzcmMtcXVlcnkiIHR5cGU9InRleHQiIHNpemU9IjE1IiBtYXhsZW5ndGg9IjEyOCIgcGxhY2Vob2xkZXI9IlNlYXJjaCBDU1JDIi8+DQogICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0ic2VhcmNoLWNzcmMtc3VibWl0LWJ0bi1tb2JpbGUiIG5hbWU9Im9wIiBjbGFzcz0iZm9ybS1zdWJtaXQiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj5TZWFyY2g8L3NwYW4+DQogICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtc2VhcmNoIj48L2k+DQogICAgICAgIDwvYnV0dG9uPg0KICAgIDwvZGl2Pg0KPGRpdiBjbGFzcz0ibWFpbi1tZW51LXJvdyBjb250YWluZXIiPg0KICAgIDwhLS0gQ29sbGVjdCB0aGUgbmF2IGxpbmtzLCBmb3JtcywgYW5kIG90aGVyIGNvbnRlbnQgZm9yIHRvZ2dsaW5nIC0tPg0KICAgIDxkaXYgaWQ9Im1haW4tbWVudS1kcm9wIiBjbGFzcz0iY29sLWxnLTEyIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICA8dWw+DQogICAgICAgICAgICA8bGk+PGEgaHJlZj0iL3Byb2plY3RzIj5Qcm9qZWN0czwvYT48L2xpPg0KICAgICAgICAgICAgPGxpPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMiPg0KICAgICAgICAgICAgICAgICAgICBQdWJsaWNhdGlvbnMNCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImV4cGFuZGVyIGZhIGZhLXBsdXMiIGlkPSJtYWluLW1lbnUtcHVicy1leHBhbmRlciIgZGF0YS1leHBhbmRlci1uYW1lPSJwdWJsaWNhdGlvbnMiIGRhdGEtZXhwYW5kZWQ9ImZhbHNlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+RXhwYW5kIG9yIENvbGxhcHNlPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImRpc3BsYXk6IG5vbmU7IiBjbGFzcz0ic3ViLW1lbnUiIGRhdGEtZXhwYW5kZXItdHJpZ2dlcj0icHVibGljYXRpb25zIiBpZD0ibWFpbi1tZW51LXB1YnMtZXhwYW5kZWQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvZHJhZnQtcHVicyI+RHJhZnQgUHViczwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9maW5hbC1wdWJzIj5GaW5hbCBQdWJzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvcHVibGljYXRpb25zL2ZpcHMiPkZJUFM8L2E+PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvc3AiPlNwZWNpYWwgUHVibGljYXRpb25zIChTUDxzbWFsbD5zPC9zbWFsbD4pPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvbmlzdGlyIj5OSVNUSVI8c21hbGw+czwvc21hbGw+PC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvcHVibGljYXRpb25zL2l0bC1idWxsZXRpbiI+SVRMIEJ1bGxldGluczwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL3B1YmxpY2F0aW9ucy93aGl0ZS1wYXBlciI+V2hpdGUgUGFwZXJzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvam91cm5hbC1hcnRpY2xlIj5Kb3VybmFsIEFydGljbGVzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvcHVibGljYXRpb25zL2NvbmZlcmVuY2UtcGFwZXIiPkNvbmZlcmVuY2UgUGFwZXJzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvcHVibGljYXRpb25zL2Jvb2siPkJvb2tzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iL3RvcGljcyI+DQogICAgICAgICAgICAgICAgICAgIFRvcGljcw0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZXhwYW5kZXIgZmEgZmEtcGx1cyIgaWQ9Im1haW4tbWVudS10b3BpY3MtZXhwYW5kZXIiIGRhdGEtZXhwYW5kZXItbmFtZT0idG9waWNzIiBkYXRhLWV4cGFuZGVkPSJmYWxzZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPkV4cGFuZCBvciBDb2xsYXBzZTwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9InN1Yi1tZW51IiBkYXRhLWV4cGFuZGVyLXRyaWdnZXI9InRvcGljcyIgaWQ9Im1haW4tbWVudS10b3BpY3MtZXhwYW5kZWQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9Ub3BpY3MvU2VjdXJpdHktYW5kLVByaXZhY3kiPlNlY3VyaXR5ICZhbXAgUHJpdmFjeTwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL1RvcGljcy9BcHBsaWNhdGlvbnMiPkFwcGxpY2F0aW9uczwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvVG9waWNzL1RlY2hub2xvZ2llcyI+VGVjaG5vbG9naWVzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvVG9waWNzL1NlY3RvcnMiPlNlY3RvcnM8L2E+PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL1RvcGljcy9MYXdzLWFuZC1SZWd1bGF0aW9ucyI+TGF3cyAmYW1wOyBSZWd1bGF0aW9uczwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL1RvcGljcy9BY3Rpdml0aWVzLWFuZC1Qcm9kdWN0cyI+QWN0aXZpdGllcyAmYW1wOyBQcm9kdWN0czwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9uZXdzIj5OZXdzICZhbXA7IFVwZGF0ZXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZXZlbnRzIj5FdmVudHM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZ2xvc3NhcnkiPkdsb3NzYXJ5PC9hPjwvbGk+DQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iL2Fib3V0Ij4NCiAgICAgICAgICAgICAgICAgICAgQWJvdXQgQ1NSQw0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZXhwYW5kZXIgZmEgZmEtcGx1cyIgaWQ9Im1haW4tbWVudS1hYm91dC1leHBhbmRlciIgZGF0YS1leHBhbmRlci1uYW1lPSJhYm91dCIgZGF0YS1leHBhbmRlZD0iZmFsc2UiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj5FeHBhbmQgb3IgQ29sbGFwc2U8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJzdWItbWVudSIgZGF0YS1leHBhbmRlci10cmlnZ2VyPSJhYm91dCIgaWQ9Im1haW4tbWVudS1hYm91dC1leHBhbmRlZCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+Q29tcHV0ZXIgU2VjdXJpdHkgRGl2aXNpb248L3N0cm9uZz48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9Hcm91cHMvQ29tcHV0ZXItU2VjdXJpdHktRGl2aXNpb24vQ3J5cHRvZ3JhcGhpYy1UZWNobm9sb2d5Ij5DcnlwdG9ncmFwaGljIFRlY2hub2xvZ3k8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvR3JvdXBzL0NvbXB1dGVyLVNlY3VyaXR5LURpdmlzaW9uL1NlY3VyZS1TeXN0ZW1zLWFuZC1BcHBsaWNhdGlvbnMiPlNlY3VyZSBTeXN0ZW1zIGFuZCBBcHBsaWNhdGlvbnM8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvR3JvdXBzL0NvbXB1dGVyLVNlY3VyaXR5LURpdmlzaW9uL1NlY3VyaXR5LUNvbXBvbmVudHMtYW5kLU1lY2hhbmlzbXMiPlNlY3VyaXR5IENvbXBvbmVudHMgYW5kIE1lY2hhbmlzbXM8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvR3JvdXBzL0NvbXB1dGVyLVNlY3VyaXR5LURpdmlzaW9uL1NlY3VyaXR5LUVuZ2luZWVyaW5nLWFuZC1SaXNrLU1hbmFnZW1lbnQiPlNlY3VyaXR5IEVuZ2luZWVyaW5nIGFuZCBSaXNrIE1hbmFnZW1lbnQ8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvR3JvdXBzL0NvbXB1dGVyLVNlY3VyaXR5LURpdmlzaW9uL1NlY3VyaXR5LVRlc3RpbmctVmFsaWRhdGlvbi1hbmQtTWVhc3VyZW1lbnQiPlNlY3VyaXR5IFRlc3RpbmcsIFZhbGlkYXRpb24sIGFuZCBNZWFzdXJlbWVudDwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPkFwcGxpZWQgQ3liZXJzZWN1cml0eSBEaXZpc2lvbjwvc3Ryb25nPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL0dyb3Vwcy9BcHBsaWVkLUN5YmVyc2VjdXJpdHktRGl2aXNpb24vQ3liZXJzZWN1cml0eS1hbmQtUHJpdmFjeS1BcHBsaWNhdGlvbnMiPkN5YmVyc2VjdXJpdHkgYW5kIFByaXZhY3kgQXBwbGljYXRpb25zPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL0dyb3Vwcy9BcHBsaWVkLUN5YmVyc2VjdXJpdHktRGl2aXNpb24vTmF0aW9uYWwtQ3liZXJzZWN1cml0eS1DZW50ZXItb2YtRXhjZWxsZW5jZSI+TmF0aW9uYWwgQ3liZXJzZWN1cml0eSBDZW50ZXIgb2YgRXhjZWxsZW5jZSAoTkNDb0UpPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cubmlzdC5nb3YvbmljZS8iPk5hdGlvbmFsIEluaXRpYXRpdmUgZm9yIEN5YmVyc2VjdXJpdHkgRWR1Y2F0aW9uIChOSUNFKTwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9Hcm91cHMvQXBwbGllZC1DeWJlcnNlY3VyaXR5LURpdmlzaW9uL1RydXN0ZWQtSWRlbnRpdGllcy1Hcm91cCI+VHJ1c3RlZCBJZGVudGl0aWVzIEdyb3VwPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvY29udGFjdCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb250YWN0IFVzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2xpPg0KICAgICAgICA8L3VsPg0KICAgIDwvZGl2PjwhLS0gLyNtb2JpbGUtbmF2LWNvbnRhaW5lciAtLT4NCjwvZGl2Pg0KDQo8L25hdj4NCjxzZWN0aW9uIGlkPSJpdGwtaGVhZGVyIiBjbGFzcz0iaGFzLW1lbnUiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIgY29sLW1kLTgiPg0KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0iaGlkZGVuLXhzIGhpZGRlbi1zbSI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L2l0bCIgdGFyZ2V0PSJfYmxhbmsiIGlkPSJpdGwtaGVhZGVyLWxpbmsiPkluZm9ybWF0aW9uIFRlY2hub2xvZ3kgTGFib3JhdG9yeTwvYT4NCiAgICAgICAgICAgICAgICA8L2gyPg0KICAgICAgICAgICAgICAgIDxoMSBjbGFzcz0iaGlkZGVuLXhzIGhpZGRlbi1zbSI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii8iIGlkPSJjc3JjLWhlYWRlci1saW5rLWxnIj5Db21wdXRlciBTZWN1cml0eSBSZXNvdXJjZSBDZW50ZXI8L2E+DQogICAgICAgICAgICAgICAgPC9oMT4NCiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9ImhpZGRlbi14cyB0ZXh0LWNlbnRlciBoaWRkZW4tbWQgaGlkZGVuLWxnIiBpZD0iY3NyYy1oZWFkZXItbGluay1tZCI+Q29tcHV0ZXIgU2VjdXJpdHkgUmVzb3VyY2UgQ2VudGVyPC9oMT4NCiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9ImhpZGRlbi1zbSBoaWRkZW4tbWQgaGlkZGVuLWxnIHRleHQtY2VudGVyIiBpZD0iY3NyYy1oZWFkZXItbGluay1zbSI+Q29tcHV0ZXIgU2VjdXJpdHk8YnIgLz5SZXNvdXJjZSBDZW50ZXI8L2gxPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIgY29sLW1kLTQiPg0KICAgICAgICAgICAgICAgIDxhIGlkPSJsb2dvLWNzcmMiIGhyZWY9Ii8iIHN0eWxlPSJ3aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogY2VudGVyOyBkaXNwbGF5OiBibG9jazsiPjxpbWcgaWQ9ImltZy1sb2dvLWNzcmMic3JjPSIvQ1NSQy9NZWRpYS9pbWFnZXMvQ1NSQy13aGl0ZS0xMzQtMzgucG5nIiBhbHQ9IkNTUkMgTG9nbyIgY2xhc3M9ImNzcmMtaGVhZGVyLWxvZ28iPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCg0KPGRpdiBpZD0iYm9keS1zZWN0aW9uIiBjbGFzcz0iY29udGFpbmVyIj4NCg0KDQogIDxkaXYgY2xhc3M9InB1YmxpY2F0aW9ucy1kZXRhaWwiPg0KICAgIDxvbCBjbGFzcz0iYnJlYWRjcnVtYiI+PGEgaHJlZj0iL1B1YmxpY2F0aW9ucyIgY2xhc3M9IkNNU0JyZWFkQ3J1bWJzTGluayI+UHVibGljYXRpb25zPC9hPiA8c3BhbiBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiPjwvc3Bhbj4gPHNwYW4gIGNsYXNzPSJDTVNCcmVhZENydW1ic0N1cnJlbnRJdGVtIj5EZXRhaWw8L3NwYW4+DQo8L29sPiANCg0KDQoNCiAgICANCiAgICANCiAgICANCiAgICANCiAgICANCiAgICANCiAgICANCiAgICAgICAgPGgzIGlkPSJwdWItaGVhZGVyLWRpc3BsYXktY29udGFpbmVyIj4NCiAgICAgICAgICAgIDxzcGFuIGlkPSJwdWItaGVhZGVyLWZ1bGwtZGlzcGxheSI+RklQUyAxNDAtMzwvc3Bhbj4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgDQogICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtcGVuY2lsLXNxdWFyZSB0ZXh0LXdhcm5pbmciIGlkPSJwdWItaGVhZGVyLXBsYW5uaW5nLW5vdGUiIHRpdGxlPSJTZWUgUGxhbm5pbmcgTm90ZSBiZWxvdy4iPjwvaT4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2gzPg0KICAgIA0KICAgICAgICA8aDEgaWQ9InB1Yi10aXRsZSI+U2VjdXJpdHkgUmVxdWlyZW1lbnRzIGZvciBDcnlwdG9ncmFwaGljIE1vZHVsZXM8L2gxPg0KICAgICAgICANCiAgICAgICAgPGRpdiBjbGFzcz0icGFnZS1zb2NpYWwtYnV0dG9ucyI+DQogICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ic29jaWFsLWZhY2Vib29rIiBpZD0ic29jaWFsRmFjZWJvb2siPjxpIGNsYXNzPSJmYSBmYS1mYWNlYm9vayBmYS1mdyIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L2E+DQogICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ic29jaWFsLWdvb2dsZS1wbHVzIiBpZD0ic29jaWFsR29vZ2xlUGx1cyI+PGkgY2xhc3M9ImZhIGZhLWdvb2dsZS1wbHVzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvYT4NCiAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJzb2NpYWwtdHdpdHRlciIgaWQ9InNvY2lhbFR3aXR0ZXIiPjxpIGNsYXNzPSJmYSBmYS10d2l0dGVyIGZhLWZ3IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvYT4NCiAgICAgICAgPC9kaXY+DQogICAgDQogICAgICAgIDxwIGNsYXNzPSJoaWRkZW4tbGcgaGlkZGVuLW1kIj4NCiAgICAgICAgICAgICZuYnNwOyZuYnNwOyZuYnNwOw0KICAgICAgICAgICAgPGEgaHJlZj0iI3B1YnMtZG9jdW1lbnRhdGlvbiIgY2xhc3M9ImJ0biBidG4tbGcgYnRuLWluZm8iIGlkPSJwdWItdG9waWNzLWFuY2hvci1zbSI+RG9jdW1lbnRhdGlvbjwvYT4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgJm5ic3A7Jm5ic3A7Jm5ic3A7DQogICAgICAgICAgICA8YSBocmVmPSIjcHVicy10b3BpY3MiIGNsYXNzPSJidG4gYnRuLWxnIGJ0bi1pbmZvIiBpZD0icHViLXRvcGljcy1hbmNob3Itc20iPlRvcGljczwvYT4NCiAgICAgICAgICAgIA0KICAgICAgICA8L3A+DQogICAgDQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2ICBjbGFzcz0iY29sLW1kLTggY29sLXNtLTEyIHB1YmxpY2F0aW9uLXBhbmVsIj4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPkRhdGUgUHVibGlzaGVkOjwvc3Ryb25nPiA8c3BhbiBpZD0icHViLXJlbGVhc2UtZGF0ZSI+TWFyY2ggMjIsIDIwMTk8L3NwYW4+PGJyIC8+DQogICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5QbGFubmluZyBOb3RlICg8c3BhbiBpZD0ncHViLXBsYW5uaW5nLW5vdGUtZGF0ZSc+NS8xLzIwMTk8L3NwYW4+KTo8L3N0cm9uZz4gDQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYSBmYS1wZW5jaWwtc3F1YXJlIHRleHQtd2FybmluZyIgaWQ9J3B1Yi1wbGFubmluZy1ub3RlLWljb24nPjwvaT4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9J3B1Yi1wbGFubmluZy1ub3RlJz5TZWUgdGhlIDxhIGRhdGEtY3NyYy1saW5rPSJ0cnVlIiBkYXRhLW5vZGUtZ3VpZD0iY2IwMWFiMjgtMDIzMi00ZWQ5LWIzNjYtY2RlYTcyNGJiZGVhIiBocmVmPSIvcHJvamVjdHMvZmlwcy0xNDAtMy1kZXZlbG9wbWVudCI+RklQUyAxNDAtMyBEZXZlbG9wbWVudCBwcm9qZWN0PC9hPiBmb3IgaW5mb3JtYXRpb24gb24gdGhlIDxhIGRhdGEtY3NyYy1saW5rPSJ0cnVlIiBkYXRhLW5vZGUtZ3VpZD0iY2IwMWFiMjgtMDIzMi00ZWQ5LWIzNjYtY2RlYTcyNGJiZGVhIiBocmVmPSIvcHJvamVjdHMvZmlwcy0xNDAtMy1kZXZlbG9wbWVudCNzY2hlZHVsZSI+SW1wbGVtZW50YXRpb24gU2NoZWR1bGU8L2E+IGFuZCBkZXZlbG9wbWVudCBvZiBzdXBwb3J0aW5nIDxhIGRhdGEtY3NyYy1saW5rPSJ0cnVlIiBkYXRhLW5vZGUtZ3VpZD0iY2IwMWFiMjgtMDIzMi00ZWQ5LWIzNjYtY2RlYTcyNGJiZGVhIiBocmVmPSIvcHJvamVjdHMvZmlwcy0xNDAtMy1kZXZlbG9wbWVudCNzcDgwMC0xNDAiPlNQIDgwMC0xNDB4IGRvY3VtZW50czwvYT4uPC9zcGFuPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPHN0cm9uZz5TdXBlcnNlZGVzOjwvc3Ryb25nPiA8c3BhbiBpZD0icHViLXN1cGVyc2VkZXMtY29udGFpbmVyIiBkYXRhLXRvdGFsPSIxIj48YSBocmVmPScvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE0MC8yL2ZpbmFsJyBpZD0ncHViLXN1cGVyc2VkZXMtMCc+RklQUyAgMTQwLTIgKE1heSAyNSwgMjAwMSAoQ2hhbmdlIE5vdGljZSAyLCAxMi8zLzIwMDIpKTwvYT48L3NwYW4+PGJyIC8+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxoND5BdXRob3Iocyk8L2g0Pg0KICAgICAgICAgICAgICAgIDxwPjxzdHJvbmcgaWQ9InB1Yi1hdXRob3JzLWNvbnRhaW5lciIgZGF0YS10b3RhbD0iMSI+PHNwYW4gaWQ9J3B1Yi1hdXRob3ItMCc+TmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBhbmQgVGVjaG5vbG9neTwvc3Bhbj48L3N0cm9uZz48L3A+DQogICAgICAgICAgICAgICAgDQogICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgDQogICAgDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnMtY2FsbG91dCBicy1jYWxsb3V0LXN1Y2Nlc3MgcHViLWFic3RyYWN0LWNhbGxvdXQiPg0KICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9InB1YnMtYWJzdHJhY3QtaGVhZGVyIj5BYnN0cmFjdDwvaDQ+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhpZGRlbi1zbSBoaWRkZW4teHMgaGlkZGVuLXh4cyIgaWQ9InB1Yi1kZXRhaWwtYWJzdHJhY3QtaW5mbyI+PHA+VGhlIHNlbGVjdGl2ZSBhcHBsaWNhdGlvbiBvZiB0ZWNobm9sb2dpY2FsIGFuZCByZWxhdGVkIHByb2NlZHVyYWwgc2FmZWd1YXJkcyBpcyBhbiBpbXBvcnRhbnQgcmVzcG9uc2liaWxpdHkgb2YgZXZlcnkgZmVkZXJhbCBvcmdhbml6YXRpb24gaW4gcHJvdmlkaW5nIGFkZXF1YXRlIHNlY3VyaXR5IGluIGl0cyBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcy4mbmJzcDsgJm5ic3A7VGhpcyBzdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIGFsbCBmZWRlcmFsIGFnZW5jaWVzIHRoYXQgdXNlIGNyeXB0b2dyYXBoaWMtYmFzZWQgc2VjdXJpdHkgc3lzdGVtcyB0byBwcm90ZWN0IHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiBpbiBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcyAoaW5jbHVkaW5nIHZvaWNlIHN5c3RlbXMpIGFzIGRlZmluZWQgaW4gU2VjdGlvbiA1MTMxIG9mIHRoZSBJbmZvcm1hdGlvbiBUZWNobm9sb2d5IE1hbmFnZW1lbnQgUmVmb3JtIEFjdCBvZiAxOTk2LCBQdWJsaWMgTGF3IDEwNC0xMDYgYW5kIHRoZSBGZWRlcmFsIEluZm9ybWF0aW9uIFNlY3VyaXR5IE1hbmFnZW1lbnQgQWN0IG9mIDIwMDIsIFB1YmxpYyBMYXcgMTA3LTM0Ny4mbmJzcDs8L3A+DQoNCjxwPlRoaXMgc3RhbmRhcmQgc2hhbGwgYmUgdXNlZCBpbiBkZXNpZ25pbmcgYW5kIGltcGxlbWVudGluZyBjcnlwdG9ncmFwaGljIG1vZHVsZXMgdGhhdCBmZWRlcmFsIGRlcGFydG1lbnRzIGFuZCBhZ2VuY2llcyBvcGVyYXRlIG9yIGFyZSBvcGVyYXRlZCBmb3IgdGhlbSB1bmRlciBjb250cmFjdC4mbmJzcDsgVGhlIHN0YW5kYXJkIHByb3ZpZGVzIGZvdXIgaW5jcmVhc2luZywgcXVhbGl0YXRpdmUgbGV2ZWxzIG9mIHNlY3VyaXR5IGludGVuZGVkIHRvIGNvdmVyIGEgd2lkZSByYW5nZSBvZiBwb3RlbnRpYWwgYXBwbGljYXRpb25zIGFuZCBlbnZpcm9ubWVudHMuJm5ic3A7IFRoZSBzZWN1cml0eSByZXF1aXJlbWVudHMgY292ZXIgYXJlYXMgcmVsYXRlZCB0byB0aGUgc2VjdXJlIGRlc2lnbiwgaW1wbGVtZW50YXRpb24gYW5kIG9wZXJhdGlvbiBvZiBhIGNyeXB0b2dyYXBoaWMgbW9kdWxlLiZuYnNwOyBUaGVzZSBhcmVhcyBpbmNsdWRlIGNyeXB0b2dyYXBoaWMgbW9kdWxlIHNwZWNpZmljYXRpb247IGNyeXB0b2dyYXBoaWMgbW9kdWxlIGludGVyZmFjZXM7IHJvbGVzLCBzZXJ2aWNlcywgYW5kIGF1dGhlbnRpY2F0aW9uOyBzb2Z0d2FyZS9maXJtd2FyZSBzZWN1cml0eTsgb3BlcmF0aW5nIGVudmlyb25tZW50OyBwaHlzaWNhbCBzZWN1cml0eTsgbm9uLWludmFzaXZlIHNlY3VyaXR5OyBzZW5zaXRpdmUgc2VjdXJpdHkgcGFyYW1ldGVyIG1hbmFnZW1lbnQ7IHNlbGYtdGVzdHM7IGxpZmUtY3ljbGUgYXNzdXJhbmNlOyBhbmQgbWl0aWdhdGlvbiBvZiBvdGhlciBhdHRhY2tzLjwvcD48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGlkZGVuLWxnIGhpZGRlbi1tZCI+DQogICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InB1Yi1kZXRhaWwtYWJzdHJhY3QtbWluIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgc2VsZWN0aXZlIGFwcGxpY2F0aW9uIG9mIHRlY2hub2xvZ2ljYWwgYW5kIHJlbGF0ZWQgcHJvY2VkdXJhbCBzYWZlZ3VhcmRzIGlzIGFuIGltcG9ydGFudCByZXNwb25zaWJpbGl0eSBvZiBldmVyeSBmZWRlcmFsIG9yZ2FuaXphdGlvbiBpbiBwcm92aWRpbmcgYWRlcXVhdGUgc2VjdXJpdHkgaW4gaXRzIGNvbXB1dGVyIGFuZCB0ZWxlY29tbXVuaWNhdGlvbiBzeXN0ZW1zLsKgIMKgVGhpcyBzdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIGFsbCBmZWRlcmFsIGFnZW5jaWVzIHRoYXQgdXNlIGNyeXB0b2dyYXBoaWMuLi4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjcHVicy1hYnN0cmFjdC1oZWFkZXIiIGlkPSJwdWItZGV0YWlsLWFicy1zaG93Ij5TZWUgZnVsbCBhYnN0cmFjdDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0icHViLWRldGFpbC1hYnN0cmFjdC1hbGwiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHNlbGVjdGl2ZSBhcHBsaWNhdGlvbiBvZiB0ZWNobm9sb2dpY2FsIGFuZCByZWxhdGVkIHByb2NlZHVyYWwgc2FmZWd1YXJkcyBpcyBhbiBpbXBvcnRhbnQgcmVzcG9uc2liaWxpdHkgb2YgZXZlcnkgZmVkZXJhbCBvcmdhbml6YXRpb24gaW4gcHJvdmlkaW5nIGFkZXF1YXRlIHNlY3VyaXR5IGluIGl0cyBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcy4mbmJzcDsgJm5ic3A7VGhpcyBzdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIGFsbCBmZWRlcmFsIGFnZW5jaWVzIHRoYXQgdXNlIGNyeXB0b2dyYXBoaWMtYmFzZWQgc2VjdXJpdHkgc3lzdGVtcyB0byBwcm90ZWN0IHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiBpbiBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcyAoaW5jbHVkaW5nIHZvaWNlIHN5c3RlbXMpIGFzIGRlZmluZWQgaW4gU2VjdGlvbiA1MTMxIG9mIHRoZSBJbmZvcm1hdGlvbiBUZWNobm9sb2d5IE1hbmFnZW1lbnQgUmVmb3JtIEFjdCBvZiAxOTk2LCBQdWJsaWMgTGF3IDEwNC0xMDYgYW5kIHRoZSBGZWRlcmFsIEluZm9ybWF0aW9uIFNlY3VyaXR5IE1hbmFnZW1lbnQgQWN0IG9mIDIwMDIsIFB1YmxpYyBMYXcgMTA3LTM0Ny4mbmJzcDs8L3A+DQoNCjxwPlRoaXMgc3RhbmRhcmQgc2hhbGwgYmUgdXNlZCBpbiBkZXNpZ25pbmcgYW5kIGltcGxlbWVudGluZyBjcnlwdG9ncmFwaGljIG1vZHVsZXMgdGhhdCBmZWRlcmFsIGRlcGFydG1lbnRzIGFuZCBhZ2VuY2llcyBvcGVyYXRlIG9yIGFyZSBvcGVyYXRlZCBmb3IgdGhlbSB1bmRlciBjb250cmFjdC4mbmJzcDsgVGhlIHN0YW5kYXJkIHByb3ZpZGVzIGZvdXIgaW5jcmVhc2luZywgcXVhbGl0YXRpdmUgbGV2ZWxzIG9mIHNlY3VyaXR5IGludGVuZGVkIHRvIGNvdmVyIGEgd2lkZSByYW5nZSBvZiBwb3RlbnRpYWwgYXBwbGljYXRpb25zIGFuZCBlbnZpcm9ubWVudHMuJm5ic3A7IFRoZSBzZWN1cml0eSByZXF1aXJlbWVudHMgY292ZXIgYXJlYXMgcmVsYXRlZCB0byB0aGUgc2VjdXJlIGRlc2lnbiwgaW1wbGVtZW50YXRpb24gYW5kIG9wZXJhdGlvbiBvZiBhIGNyeXB0b2dyYXBoaWMgbW9kdWxlLiZuYnNwOyBUaGVzZSBhcmVhcyBpbmNsdWRlIGNyeXB0b2dyYXBoaWMgbW9kdWxlIHNwZWNpZmljYXRpb247IGNyeXB0b2dyYXBoaWMgbW9kdWxlIGludGVyZmFjZXM7IHJvbGVzLCBzZXJ2aWNlcywgYW5kIGF1dGhlbnRpY2F0aW9uOyBzb2Z0d2FyZS9maXJtd2FyZSBzZWN1cml0eTsgb3BlcmF0aW5nIGVudmlyb25tZW50OyBwaHlzaWNhbCBzZWN1cml0eTsgbm9uLWludmFzaXZlIHNlY3VyaXR5OyBzZW5zaXRpdmUgc2VjdXJpdHkgcGFyYW1ldGVyIG1hbmFnZW1lbnQ7IHNlbGYtdGVzdHM7IGxpZmUtY3ljbGUgYXNzdXJhbmNlOyBhbmQgbWl0aWdhdGlvbiBvZiBvdGhlciBhdHRhY2tzLjwvcD48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjcHVicy1hYnN0cmFjdC1oZWFkZXIiIGlkPSJwdWItZGV0YWlsLWFicy1oaWRlIj5IaWRlIGZ1bGwgYWJzdHJhY3Q8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGg0PktleXdvcmRzPC9oND4gPHNwYW4gaWQ9J3B1Yi1rZXl3b3Jkcy1jb250YWluZXInIGRhdGEtdG90YWw9JzknPjxzcGFuIGlkPSdwdWIta2V5d29yZC0wJz5jb21wdXRlciBzZWN1cml0eTwvc3Bhbj47IDxzcGFuIGlkPSdwdWIta2V5d29yZC0xJz50ZWxlY29tbXVuaWNhdGlvbiBzZWN1cml0eTwvc3Bhbj47IDxzcGFuIGlkPSdwdWIta2V5d29yZC0yJz5waHlzaWNhbCBzZWN1cml0eTwvc3Bhbj47IDxzcGFuIGlkPSdwdWIta2V5d29yZC0zJz5zb2Z0d2FyZSBzZWN1cml0eTwvc3Bhbj47IDxzcGFuIGlkPSdwdWIta2V5d29yZC00Jz5jcnlwdG9ncmFwaHk8L3NwYW4+OyA8c3BhbiBpZD0ncHViLWtleXdvcmQtNSc+Y3J5cHRvZ3JhcGhpYyBtb2R1bGVzPC9zcGFuPjsgPHNwYW4gaWQ9J3B1Yi1rZXl3b3JkLTYnPkZlZGVyYWwgSW5mb3JtYXRpb24gUHJvY2Vzc2luZyBTdGFuZGFyZCAoRklQUyk8L3NwYW4+OyA8c3BhbiBpZD0ncHViLWtleXdvcmQtNyc+SVNPL0lFQyAxOTc5MDoyMDEyPC9zcGFuPjsgPHNwYW4gaWQ9J3B1Yi1rZXl3b3JkLTgnPklTTy9JRUMgMjQ3NTk6MjAxNDwvc3Bhbj48L3NwYW4+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGg1PkNvbnRyb2wgRmFtaWxpZXM8L2g1Pg0KICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJwdWItY29udHJvbC1mYW0tY29udGFpbmVyIiBkYXRhLXRvdGFsPSIwIj5Ob25lIHNlbGVjdGVkPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8L3A+DQogICAgDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00IGNvbC1zbS0xMiI+DQogICAgDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnMtY2FsbG91dCBicy1jYWxsb3V0LXN1Y2Nlc3MiIGlkPSJwdWJzLWRvY3VtZW50YXRpb24iPg0KICAgICAgICAgICAgICAgICAgICA8aDQ+RG9jdW1lbnRhdGlvbjwvaDQ+DQogICAgDQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5QdWJsaWNhdGlvbjo8L3N0cm9uZz48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9kb2kub3JnLzEwLjYwMjgvTklTVC5GSVBTLjE0MC0zIiBkYXRhLWlkZW50aXR5PSJmaXJzdC1saW5rLWRpc3BsYXkiIGlkPSJwdWItZG9jLTAiPjxpIGNsYXNzPSdmYSBmYS1leHRlcm5hbC1saW5rJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPiAgRklQUyAxNDAtMyAoRE9JKTwvYT48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL252bHB1YnMubmlzdC5nb3YvbmlzdHB1YnMvRklQUy9OSVNULkZJUFMuMTQwLTMucGRmIiBkYXRhLWlkZW50aXR5PSJzZWNvbmQtbGluay1kaXNwbGF5IiBpZD0icHViLWRvYy0xIj48aSBjbGFzcz0iZmEgZmEtZmlsZS1wZGYtbyI+PC9pPiBMb2NhbCBEb3dubG9hZDwvYT48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgDQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5TdXBwbGVtZW50YWwgTWF0ZXJpYWw6PC9zdHJvbmc+PGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD0icHViLXN1cHAtY29udGFpbmVyIiBkYXRhLXRvdGFsPSIyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3Byb2plY3RzL2NtdnAiIGlkPSJwdWItc3VwcC1saW5rLTAiPjxpIGNsYXNzPSJmYSBmYS1maWxlIj48L2k+IENyeXB0b2dyYXBoaWMgTW9kdWxlIFZhbGlkYXRpb24gUHJvZ3JhbSAoQ01WUCkgKG90aGVyKTwvYT48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cubmlzdC5nb3YvbmV3cy1ldmVudHMvbmV3cy8yMDE5LzA0L25pc3QtbGlua3MtZmVkZXJhbC1lbmNyeXB0aW9uLXRlc3RpbmctaW50ZXJuYXRpb25hbC1zdGFuZGFyZC1maXJzdC10aW1lIiBpZD0icHViLXN1cHAtbGluay0xIj48aSBjbGFzcz0iZmEgZmEtZmlsZSI+PC9pPiBOSVNUIE5ld3MgQXJ0aWNsZSAob3RoZXIpPC9hPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+UmVsYXRlZCBOSVNUIFB1YmxpY2F0aW9uczo8L3N0cm9uZz48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJwdWItcmVsYXRlZC1jb250YWluZXIiIGRhdGEtdG90YWw9IjEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9kZXRhaWwvaXRsLWJ1bGxldGluLzIwMTkvMDUvZmlwcy0xNDAtMy1hZG9wdHMtaXNvL2llYy1zdGFuZGFyZHMvZmluYWwiIGlkPSJwdWItcmVsYXRlZC1saW5rLTAiPklUTCBCdWxsZXRpbiA8L2E+PGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICANCiAgICANCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5Eb2N1bWVudCBIaXN0b3J5Ojwvc3Ryb25nPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9InB1Yi1oaXN0b3J5LWNvbnRhaW5lciIgZGF0YS10b3RhbD0iMyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPScvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE0MC8zL2RyYWZ0JyBpZD0ncHViLWhpc3RvcnktbGluay0wJyBkYXRhLWN1cnJlbnQtZG9jdW1lbnQ9J2ZhbHNlJz5EcmFmdCBGSVBTICAxNDAtMyAoNy8xMy8wNyk8L2E+PGJyLz48YSBocmVmPScvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE0MC8zL2FyY2hpdmUvMjAwOS0xMi0xMScgaWQ9J3B1Yi1oaXN0b3J5LWxpbmstMScgZGF0YS1jdXJyZW50LWRvY3VtZW50PSdmYWxzZSc+RHJhZnQgRklQUyAgMTQwLTMgKDEyLzExLzA5KTwvYT48YnIvPjxzcGFuIGlkPSdwdWItaGlzdG9yeS1saW5rLTInIGRhdGEtY3VycmVudC1kb2N1bWVudD0ndHJ1ZSc+RklQUyAgMTQwLTMgKDMvMjIvMTkpPC9zcGFuPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgDQogICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJzLWNhbGxvdXQgYnMtY2FsbG91dC1kYW5nZXIiIGlkPSJwdWJzLXRvcGljcyI+DQogICAgICAgICAgICAgICAgICAgIDxoND5Ub3BpY3M8L2g0Pg0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD0icHViLWNhdGVnb3JpZXMtY29udGFpbmVyIiBkYXRhLXRvdGFsPSIyIj4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nIGlkPSJwdWItY2F0LTAiPlNlY3VyaXR5IGFuZCBQcml2YWN5PC9zdHJvbmc+PGJyIC8+PHNwYW4gaWQ9InB1Yi1jYXQtdG9wLWNvbnRhaW5lci0wIiBkYXRhLXRvdGFsPSIyIj48L3NwYW4+PGEgaHJlZj0nL1RvcGljcy9TZWN1cml0eS1hbmQtUHJpdmFjeS9jcnlwdG9ncmFwaHknIGlkPSdwdWItY2F0LXRvcC0wLTAnPmNyeXB0b2dyYXBoeTwvYT47IA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgaWQ9InB1Yi1jYXQtMSI+TGF3cyBhbmQgUmVndWxhdGlvbnM8L3N0cm9uZz48YnIgLz48c3BhbiBpZD0icHViLWNhdC10b3AtY29udGFpbmVyLTEiIGRhdGEtdG90YWw9IjIiPjwvc3Bhbj48YSBocmVmPScvVG9waWNzL0xhd3MtYW5kLVJlZ3VsYXRpb25zL2xhd3MvRS1Hb3YtQWN0JyBpZD0ncHViLWNhdC10b3AtMS0wJz5FLUdvdmVybm1lbnQgQWN0PC9hPjsgDQogICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgDQoNCg0KICA8L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9DU1JDL21lZGlhL2pzL3B1YmxpY2F0aW9ucy5qcyI+PC9zY3JpcHQ+DQoNCiAgPGRpdiBpZD0iZm9vdGVyLXB1c2hlciI+PC9kaXY+DQoNCjwvZGl2Pg0KDQo8Zm9vdGVyIGlkPSJmb290ZXIiPg0KPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCg0KICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJoaWRkZW4teHMiPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292IiB0aXRsZT0iTmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBhbmQgVGVjaG5vbG9neSIgcmVsPSJob21lIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImZvb3Rlci1uaXN0LWxvZ28iIGlkPSJmb290ZXItbmlzdC1sb2dvLWxpbmsiPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL0NTUkMvTWVkaWEvaW1hZ2VzL2xvZ29fcmV2LnBuZyIgYWx0PSJOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5IGxvZ28iIGlkPSJmb290ZXItbmlzdC1sb2dvIi8+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgPC9zcGFuPg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3cgZm9vdGVyLWNvbnRhY3QtY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIiIGlkPSJmb290ZXItYWRkcmVzcyI+DQogICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+SEVBRFFVQVJURVJTPC9zdHJvbmc+PGJyPg0KICAgICAgICAgICAgICAgICAgICAxMDAgQnVyZWF1IERyaXZlPGJyPg0KICAgICAgICAgICAgICAgICAgICBHYWl0aGVyc2J1cmcsIE1EIDIwODk5DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4NCiAgICAgICAgICAgIDx1bCBjbGFzcz0ic29jaWFsLWxpc3QgdGV4dC1yaWdodCIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyI+DQogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJmaWVsZC1pdGVtIHNlcnZpY2UtdHdpdHRlciBsaXN0LWhvcml6Ij4NCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9VU05JU1RHT1YiIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0ic29jaWFsLWJ0biBzb2NpYWwtYnRuLS1sYXJnZSBleHRsaW5rIGV4dCIgaWQ9ImZvb3Rlci1zb2NpYWwtdHdpdHRlci1saW5rIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZhIGZhLXR3aXR0ZXIgZmEtZnciPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+dHdpdHRlcjwvc3Bhbj48L2k+PHNwYW4gY2xhc3M9ImV4dCI+PHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj4gKGxpbmsgaXMgZXh0ZXJuYWwpPC9zcGFuPjwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImZpZWxkLWl0ZW0gc2VydmljZS1mYWNlYm9vayBsaXN0LWhvcml6Ij4NCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL1VTTklTVEdPViIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJzb2NpYWwtYnRuIHNvY2lhbC1idG4tLWxhcmdlIGV4dGxpbmsgZXh0IiBpZD0iZm9vdGVyLXNvY2lhbC1mYWNlYm9vay1saW5rIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZhIGZhLWZhY2Vib29rIGZhLWZ3Ij48c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPmZhY2Vib29rPC9zcGFuPjwvaT48c3BhbiBjbGFzcz0iZXh0Ij48c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPiAobGluayBpcyBleHRlcm5hbCk8L3NwYW4+PC9zcGFuPjwvYT4NCg0KICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJmaWVsZC1pdGVtIHNlcnZpY2UtbGlua2VkaW4gbGlzdC1ob3JpeiI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L25pc3QiIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0ic29jaWFsLWJ0biBzb2NpYWwtYnRuLS1sYXJnZSBleHRsaW5rIGV4dCIgaWQ9ImZvb3Rlci1zb2NpYWwtbGlua2VkaW4tbGluayI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYSBmYS1saW5rZWRpbiBmYS1mdyI+PHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj5saW5rZWRpbjwvc3Bhbj48L2k+PHNwYW4gY2xhc3M9ImV4dCI+PHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj4gKGxpbmsgaXMgZXh0ZXJuYWwpPC9zcGFuPjwvc3Bhbj48L2E+DQoNCiAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZmllbGQtaXRlbSBzZXJ2aWNlLXlvdXR1YmUgbGlzdC1ob3JpeiI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3VzZXIvVVNOSVNUR09WIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9InNvY2lhbC1idG4gc29jaWFsLWJ0bi0tbGFyZ2UgZXh0bGluayBleHQiIGlkPSJmb290ZXItc29jaWFsLXlvdXR1YmUtbGluayI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYSBmYS15b3V0dWJlIGZhLWZ3Ij48c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPnlvdXR1YmU8L3NwYW4+PC9pPjxzcGFuIGNsYXNzPSJleHQiPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+IChsaW5rIGlzIGV4dGVybmFsKTwvc3Bhbj48L3NwYW4+PC9hPg0KDQogICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImZpZWxkLWl0ZW0gc2VydmljZS1yc3MgbGlzdC1ob3JpeiI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L25ld3MtZXZlbnRzL25pc3QtcnNzLWZlZWRzIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9InNvY2lhbC1idG4gc29jaWFsLWJ0bi0tbGFyZ2UgZXh0bGluayIgaWQ9ImZvb3Rlci1zb2NpYWwtcnNzLWxpbmsiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtcnNzIGZhLWZ3Ij48c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPnJzczwvc3Bhbj48L2k+PC9hPg0KDQogICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImZpZWxkLWl0ZW0gc2VydmljZS1nb3ZkZWxpdmVyeSBsaXN0LWhvcml6IGxhc3QiPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3B1YmxpYy5nb3ZkZWxpdmVyeS5jb20vYWNjb3VudHMvVVNOSVNUL3N1YnNjcmliZXIvbmV3P3FzcD1VU05JU1RfMyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJzb2NpYWwtYnRuIHNvY2lhbC1idG4tLWxhcmdlIGV4dGxpbmsgZXh0IiB0aXRsZT0iU3Vic2NyaWJlIHRvIENTUkMgYW5kIHB1YmxpY2F0aW9uIHVwZGF0ZXMsIGFuZCBvdGhlciBOSVNUIGN5YmVyc2VjdXJpdHkgbmV3cyIgaWQ9ImZvb3Rlci1zb2NpYWwtZ292ZGVsaXZlcnktbGluayI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtZW52ZWxvcGUgZmEtZnciPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+Z292ZGVsaXZlcnk8L3NwYW4+PC9pPjxzcGFuIGNsYXNzPSJleHQiPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+IChsaW5rIGlzIGV4dGVybmFsKTwvc3Bhbj48L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICBXYW50IHVwZGF0ZXMgYWJvdXQgQ1NSQyBhbmQgb3VyIHB1YmxpY2F0aW9ucz8gDQogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9wdWJsaWMuZ292ZGVsaXZlcnkuY29tL2FjY291bnRzL1VTTklTVC9zdWJzY3JpYmVyL25ldz9xc3A9VVNOSVNUXzMiIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iYnRuIGJ0bi1sZyBidG4taW5mbyIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICMxMjY1OWMhaW1wb3J0YW50OyBib3JkZXItY29sb3I6ICMxMjY1OWMhaW1wb3J0YW50OyIgaWQ9ImZvb3Rlci1zdWJzY3JpYmUtbGluayI+U3Vic2NyaWJlPC9hPg0KICAgICAgICAgICAgPC9wPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJyb3cgaGlkZGVuLXNtIGhpZGRlbi1tZCBoaWRkZW4tbGciPg0KICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIiPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292IiB0aXRsZT0iTmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBhbmQgVGVjaG5vbG9neSIgcmVsPSJob21lIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImZvb3Rlci1uaXN0LWxvZ28iIGlkPSJmb290ZXItYm90dG9tLW5pc3QtbG9nby1saW5rIj4NCiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9DU1JDL01lZGlhL2ltYWdlcy9sb2dvX3Jldi5wbmciIGFsdD0iTmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBhbmQgVGVjaG5vbG9neSBsb2dvIiBpZD0iZm9vdGVyLWJvdHRvbS1uaXN0LWxvZ28iLz4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEyIj4NCiAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Im1haWx0bzp3ZWJtYXN0ZXItY3NyY0BuaXN0Lmdvdj9zdWJqZWN0PUNTUkMgSW5xdWlyeSIgaWQ9ImZvb3Rlci13ZWJtYXN0ZXItbGluayI+V2VibWFzdGVyPC9hPiB8IA0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9hYm91dC9jb250YWN0IiBpZD0iZm9vdGVyLWNvbnRhY3QtdXMtbGluayI+Q29udGFjdCBVczwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L2Fib3V0LW5pc3Qvb3VyLW9yZ2FuaXphdGlvbiIgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsiIGlkPSJmb290ZXItb3JnLWxpbmsiPk91ciBPdGhlciBPZmZpY2VzPC9hPg0KICAgICAgICAgICAgPC9wPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDxkaXYgaWQ9ImZvb3Rlci1uYXYtbWVudSIgY2xhc3M9InJvdyIgcm9sZT0ibmF2aWdhdGlvbiI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC04IGNvbC1zbS02IGNvbC14cy0xMiBjb2wteHhzLTEyIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTQiPg0KICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wcm9qZWN0cyI+UFJPSkVDVFM8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvcHVibGljYXRpb25zIj5QVUJMSUNBVElPTlM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvZHJhZnQtcHVicyI+RHJhZnQgUHViczwvYT48YnIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9maW5hbC1wdWJzIj5GaW5hbCBQdWJzPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvcHVibGljYXRpb25zL2ZpcHMiPkZJUFM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvc3AiPlNwZWNpYWwgUHVibGljYXRpb25zIChTUHMpPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvcHVibGljYXRpb25zL25pc3RpciI+TklTVElSczwvYT48YnIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9pdGwtYnVsbGV0aW4iPklUTCBCdWxsZXRpbnM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvd2hpdGUtcGFwZXIiPldoaXRlIFBhcGVyczwvYT48YnIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9qb3VybmFsLWFydGljbGUiPkpvdXJuYWwgQXJ0aWNsZXM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvY29uZmVyZW5jZS1wYXBlciI+Q29uZmVyZW5jZSBQYXBlcnM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvYm9vayI+Qm9va3M8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtNCI+DQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3RvcGljcyI+VE9QSUNTPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvVG9waWNzL1NlY3VyaXR5LWFuZC1Qcml2YWN5Ij5TZWN1cml0eSAmYW1wOyBQcml2YWN5PC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvVG9waWNzL0FwcGxpY2F0aW9ucyI+QXBwbGljYXRpb25zPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvVG9waWNzL1RlY2hub2xvZ2llcyI+VGVjaG5vbG9naWVzPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvVG9waWNzL1NlY3RvcnMiPlNlY3RvcnM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9Ub3BpY3MvTGF3cy1hbmQtUmVndWxhdGlvbnMiPkxhd3MgJmFtcDsgUmVndWxhdGlvbnM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9Ub3BpY3MvQWN0aXZpdGllcy1hbmQtUHJvZHVjdHMiPkFjdGl2aXRpZXMgJmFtcDsgUHJvZHVjdHM8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvbmV3cyI+TkVXUyAmYW1wOyBVUERBVEVTPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2V2ZW50cyI+RVZFTlRTPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2dsb3NzYXJ5Ij5HTE9TU0FSWTwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00Ij4NCiAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvYWJvdXQiPkFCT1VUIENTUkM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9hYm91dCI+Q29tcHV0ZXIgU2VjdXJpdHkgRGl2aXNpb248L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9hYm91dCI+QXBwbGllZCBDeWJlcnNlY3VyaXR5IERpdmlzaW9uPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvY29udGFjdCI+Q29udGFjdCBVczwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTQgY29sLXNtLTYgY29sLXhzLTEyIGNvbC14eHMtMTIiPg0KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwdWxsLXJpZ2h0IHRleHQtcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICA8cD48c3Ryb25nIGlkPSJmb290ZXItaW5mby1pdGwiPkluZm9ybWF0aW9uIFRlY2hub2xvZ3kgTGFib3JhdG9yeTxzcGFuIGNsYXNzPSJoaWRkZW4teHMiPiAoSVRMKTwvc3Bhbj48L3N0cm9uZz48L3A+DQogICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgaWQ9ImZvb3Rlci1pbmZvLWNzZCI+Q29tcHV0ZXIgU2VjdXJpdHkgRGl2aXNpb248c3BhbiBjbGFzcz0iaGlkZGVuLXhzIj4gKENTRCk8L3NwYW4+PC9zdHJvbmc+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9ImZvb3Rlci1pbmZvLWNzZC1waG9uZSI+VEVMOiAzMDEuOTc1Ljg0NDM8L3NwYW4+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgPHN0cm9uZyBpZD0iZm9vdGVyLWluZm8tYWNkIj5BcHBsaWVkIEN5YmVyc2VjdXJpdHkgRGl2aXNpb248c3BhbiBjbGFzcz0iaGlkZGVuLXhzIj4gKEFDRCk8L3NwYW4+PC9zdHJvbmc+DQogICAgICAgICAgICAgICAgICAgIDxiciAvPjxiciAvPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICBDb250YWN0IENTUkMgV2VibWFzdGVyOiA8YSBocmVmPSJtYWlsdG86d2VibWFzdGVyLWNzcmNAbmlzdC5nb3Y/c3ViamVjdD1DU1JDIElucXVpcnkiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IiAgaWQ9ImZvb3Rlci1pbmZvLXdlYm1hc3Rlci1saW5rIj53ZWJtYXN0ZXItY3NyY0BuaXN0LmdvdjwvYT4NCiAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTEyIGZvb3Rlci1ib3R0b20tbGlua3MtY29udGFpbmVyIiBpZD0iZm9vdGVyLWJvdHRvbS1saW5rcy1jb250YWluZXIiPg0KICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L3ByaXZhY3ktcG9saWN5Ij5Qcml2YWN5IFN0YXRlbWVudDwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5LXBvbGljeSNwcml2cG9saWN5Ij5Qcml2YWN5IFBvbGljeTwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5LXBvbGljeSNzZWNub3QiPlNlY3VyaXR5IE5vdGljZTwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5LXBvbGljeSNhY2Nlc3N0YXRlIj5BY2Nlc3NpYmlsaXR5IFN0YXRlbWVudDwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5Ij5OSVNUIFByaXZhY3kgUHJvZ3JhbTwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9uby1mZWFyLWFjdC1wb2xpY3kiPk5vIEZlYXIgQWN0IFBvbGljeTwvYT4NCiAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9kaXNjbGFpbWVyIj5EaXNjbGFpbWVyPC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L29mZmljZS1kaXJlY3Rvci9mcmVlZG9tLWluZm9ybWF0aW9uLWFjdCI+Rk9JQTwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9lbnZpcm9ubWVudGFsLXBvbGljeS1zdGF0ZW1lbnQiPkVudmlyb25tZW50YWwgUG9saWN5IFN0YXRlbWVudDwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5LXBvbGljeSNjb29raWUiPkNvb2tpZSBEaXNjbGFpbWVyPC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L3N1bW1hcnktcmVwb3J0LXNjaWVudGlmaWMtaW50ZWdyaXR5Ij5TY2llbnRpZmljIEludGVncml0eSBTdW1tYXJ5PC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L25pc3QtaW5mb3JtYXRpb24tcXVhbGl0eS1zdGFuZGFyZHMiPk5JU1QgSW5mb3JtYXRpb24gUXVhbGl0eSBTdGFuZGFyZHM8L2E+DQogICAgICAgICAgICA8L3A+DQogICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cudXNhLmdvdi9idXNpbmVzcyI+QnVzaW5lc3MgVVNBPC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmNvbW1lcmNlLmdvdi8iPkNvbW1lcmNlLmdvdjwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5oZWFsdGhjYXJlLmdvdi8iPkhlYWx0aGNhcmUuZ292PC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZS5nb3YvIj5TY2llbmNlLmdvdjwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwOi8vd3d3LnVzYS5nb3YvIj5VU0EuZ292PC9hPg0KICAgICAgICAgICAgPC9wPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KPC9mb290ZXI+DQoNCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAoZnVuY3Rpb24oKSB7DQogICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaHRtbCcpWzBdLnNldEF0dHJpYnV0ZSgnbGFuZycsICdlbicpOw0KICAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2h0bWwnKVswXS5zZXRBdHRyaWJ1dGUoJ3htbDpsYW5nJywgJ2VuJykNCn0pKCk7IA0KPC9zY3JpcHQ+DQoNCiAgICANCiAgICA8L2Zvcm0+DQo8L2JvZHk+DQo8L2h0bWw+DQo=
|
1653
|
+
PCFET0NUWVBFIGh0bWw+DQo8aHRtbCAgPg0KPGhlYWQgaWQ9ImhlYWQiPjx0aXRsZT4NCglGSVBTIDE0MC0zLCBTZWN1cml0eSBSZXF1aXJlbWVudHMgZm9yIENyeXB0b2dyYXBoaWMgTW9kdWxlcyB8IENTUkMNCjwvdGl0bGU+PG1ldGEgY2hhcnNldD0iVVRGLTgiIC8+IAo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIgLz4NCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtc3R5bGUtdHlwZSIgY29udGVudD0idGV4dC9jc3MiIC8+DQo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXNjcmlwdC10eXBlIiBjb250ZW50PSJ0ZXh0L2phdmFzY3JpcHQiIC8+DQo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCIgLz4NCg0KPGxpbmsgaHJlZj0iL1NjcmlwdHMvZm9udC1hd2Vzb21lL2Nzcy9mb250LWF3ZXNvbWUuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPg0KPGxpbmsgaHJlZj0iL0NTUkMvbWVkaWEvYm9vdHN0cmFwL2Nzcy9ib290c3RyYXAubWluLmNzcyIgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgLz4NCjxsaW5rIGhyZWY9Ii9DU1JDL21lZGlhL2Jvb3RzdHJhcC9jc3MvYm9vdHN0cmFwLXRoZW1lLm1pbi5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIC8+DQo8bGluayBocmVmPSIvU2NyaXB0cy9lb25hc2Rhbi1ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXIvYnVpbGQvY3NzL2Jvb3RzdHJhcC1kYXRldGltZXBpY2tlci5taW4uY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPg0KPGxpbmsgaHJlZj0iL0NTUkMvbWVkaWEvY3NzL25pc3QtZm9udHMuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPg0KPGxpbmsgaHJlZj0iL0NTUkMvbWVkaWEvY3NzL2NzcmMtc3R5bGUuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPg0KPGxpbmsgaHJlZj0iL0NTUkMvbWVkaWEvY3NzL21lZGlhLXJlc2l6ZS5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIC8+DQoNCg0KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iMTgweDE4MCIgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL2FwcGxlLXRvdWNoLWljb24ucG5nIiAvPg0KPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS9wbmciIGhyZWY9Ii9DU1JDL01lZGlhL2ltYWdlcy9mYXZpY29ucy9mYXZpY29uLTMyeDMyLnBuZyIgc2l6ZXM9IjMyeDMyIiAvPg0KPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS9wbmciIGhyZWY9Ii9DU1JDL01lZGlhL2ltYWdlcy9mYXZpY29ucy9mYXZpY29uLTE2eDE2LnBuZyIgc2l6ZXM9IjE2eDE2IiAvPg0KPGxpbmsgcmVsPSJtYW5pZmVzdCIgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL21hbmlmZXN0Lmpzb24iIC8+DQo8bGluayByZWw9Im1hc2staWNvbiIgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL3NhZmFyaS1waW5uZWQtdGFiLnN2ZyIgY29sb3I9IiMwMDAwMDAiIC8+DQo8bWV0YSBuYW1lPSJtc2FwcGxpY2F0aW9uLWNvbmZpZyIgY29udGVudD0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL2Jyb3dzZXJjb25maWcueG1sIiAvPg0KPG1ldGEgbmFtZT0idGhlbWUtY29sb3IiIGNvbnRlbnQ9IiMwMDAwMDAiIC8+DQoNCjxzY3JpcHQgc3JjPSIvU2NyaXB0cy9qcXVlcnkvZGlzdC9qcXVlcnkubWluLmpzIj48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvU2NyaXB0cy91bmRlcnNjb3JlL3VuZGVyc2NvcmUtbWluLmpzIj48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvU2NyaXB0cy9ib290c3RyYXAvZGlzdC9qcy9ib290c3RyYXAubWluLmpzIj48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvU2NyaXB0cy9tb21lbnQvbWluL21vbWVudC5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL1NjcmlwdHMvZW9uYXNkYW4tYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyL2J1aWxkL2pzL2Jvb3RzdHJhcC1kYXRldGltZXBpY2tlci5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL0NTUkMvbWVkaWEvanMvbWVnYW1lbnUuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL0NTUkMvbWVkaWEvanMvbWFpbi5qcyI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL0NTUkMvbWVkaWEvanMvZm9ybXMuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL0NTUkMvbWVkaWEvanMvZm9ybXMtdG9waWNzLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KPHNjcmlwdCBzcmM9Ii9DU1JDL21lZGlhL2pzL2Zvcm1zLWNvbnRyb2xGYW1pbGllcy5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvQ1NSQy9tZWRpYS9qcy9mb3Jtcy1zZWFyY2hDcml0ZXJpYS5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4NCjxzY3JpcHQgc3JjPSIvQ1NSQy9tZWRpYS9qcy9uaXN0LWV4aXQtc2NyaXB0LmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KDQo8c2NyaXB0IGFzeW5jIHR5cGU9InRleHQvamF2YXNjcmlwdCIgaWQ9Il9mZWRfYW5fdWFfdGFnIiBzcmM9Imh0dHBzOi8vZGFwLmRpZ2l0YWxnb3YuZ292L1VuaXZlcnNhbC1GZWRlcmF0ZWQtQW5hbHl0aWNzLU1pbi5qcz9hZ2VuY3k9bmlzdCZzdWJhZ2VuY3k9Y3NyYyZwdWE9VUEtNjY2MTA2OTMtMTUmeXQ9dHJ1ZSZleHRzPXhzZCx4bWwsd2F2LG1wZyxtcGVnLGF2aSxydGYsd2VibSxvZ2csb2d2LG9nYSxtYXAsb3RmLGVvdCxzdmcsdHRmLHdvZmYiPjwvc2NyaXB0Pg0KDQo8c3R5bGUgaWQ9ImFudGlDbGlja2phY2siPmJvZHl7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fTwvc3R5bGU+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgaWQ9ImFudGlDbGlja2phY2tTY3JpcHQiPg0KICAgaWYgKHNlbGYgPT09IHRvcCkgew0KICAgICAgIHZhciBhbnRpQ2xpY2tqYWNrID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFudGlDbGlja2phY2siKTsNCiAgICAgICBhbnRpQ2xpY2tqYWNrLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYW50aUNsaWNramFjayk7DQogICB9IGVsc2Ugew0KICAgICAgIHRvcC5sb2NhdGlvbiA9IHNlbGYubG9jYXRpb247DQogICB9DQo8L3NjcmlwdD4NCiAKPGxpbmsgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL2Zhdmljb24uaWNvIiB0eXBlPSJpbWFnZS94LWljb24iIHJlbD0ic2hvcnRjdXQgaWNvbiIvPg0KPGxpbmsgaHJlZj0iL0NTUkMvTWVkaWEvaW1hZ2VzL2Zhdmljb25zL2Zhdmljb24uaWNvIiB0eXBlPSJpbWFnZS94LWljb24iIHJlbD0iaWNvbiIvPg0KDQo8bWV0YSBkZXNjcmlwdGlvbj0iVGhlIHNlbGVjdGl2ZSBhcHBsaWNhdGlvbiBvZiB0ZWNobm9sb2dpY2FsIGFuZCByZWxhdGVkIHByb2NlZHVyYWwgc2FmZWd1YXJkcyBpcyBhbiBpbXBvcnRhbnQgcmVzcG9uc2liaWxpdHkgb2YgZXZlcnkgZmVkZXJhbCBvcmdhbml6YXRpb24gaW4gcHJvdmlkaW5nIGFkZXF1YXRlIHNlY3VyaXR5IGluIGl0cyBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcy7CoCDCoFRoaXMgc3RhbmRhcmQgaXMgYXBwbGljYWJsZSB0byBhbGwgZmVkZXJhbCBhZ2VuY2llcyB0aGF0IHVzZSBjcnlwdG9ncmFwaGljLWJhc2VkIHNlY3VyaXR5IHN5c3RlbXMgdG8gcHJvdGVjdCBzZW5zaXRpdmUgaW5mb3JtYXRpb24gaW4gY29tcHV0ZXIgYW5kIHRlbGVjb21tdW5pY2F0aW9uIHN5c3RlbXMgKGluY2x1ZGluZyB2b2ljZSBzeXN0ZW1zKSBhcyBkZWZpbmVkIGluIFNlY3Rpb24gNTEzMSBvZiB0aGUgSW5mb3JtYXRpb24gVGVjaG5vbG9neSBNYW5hZ2VtZW50IFJlZm9ybSBBY3Qgb2YgMTk5NiwgUHVibGljIExhdyAxMDQtMTA2IGFuZCB0aGUgRmVkZXJhbCBJbmZvcm1hdGlvbiBTZWN1cml0eSBNYW5hZ2VtZW50IEFjdCBvZiAyMDAyLCBQdWJsaWMgTGF3IDEwNy0zNDcuwqAgIFRoaXMgc3RhbmRhcmQgc2hhbGwgYmUgdXNlZCBpbiBkZXNpZ25pbmcgYW5kIGltcGxlbWVudGluZyBjcnlwdG9ncmFwaGljIG1vZHVsZXMgdGhhdCBmZWRlcmFsIGRlcGFydG1lbnRzIGFuZCBhZ2VuY2llcyBvcGVyYXRlIG9yIGFyZSBvcGVyYXRlZCBmb3IgdGhlbSB1bmRlciBjb250cmFjdC7CoCBUaGUgc3RhbmRhcmQgcHJvdmlkZXMgZm91ciBpbmNyZWFzaW5nLCBxdWFsaXRhdGl2ZSBsZXZlbHMgb2Ygc2VjdXJpdHkgaW50ZW5kZWQgdG8gY292ZXIgYSB3aWRlIHJhbmdlIG9mIHBvdGVudGlhbCBhcHBsaWNhdGlvbnMgYW5kIGVudmlyb25tZW50cy7CoCBUaGUgc2VjdXJpdHkgcmVxdWlyZW1lbnRzIGNvdmVyIGFyZWFzIHJlbGF0ZWQgdG8gdGhlIHNlY3VyZSBkZXNpZ24sIGltcGxlbWVudGF0aW9uIGFuZCBvcGVyYXRpb24gb2YgYSBjcnlwdG9ncmFwaGljIG1vZHVsZS7CoCBUaGVzZSBhcmVhcyBpbmNsdWRlIGNyeXB0b2dyYXBoaWMgbW9kdWxlIHNwZWNpZmljYXRpb247IGNyeXB0b2dyYXBoaWMgbW9kdWxlIGludGVyZmFjZXM7IHJvbGVzLCBzZXJ2aWNlcywgYW5kIGF1dGhlbnRpY2F0aW9uOyBzb2Z0d2FyZS9maXJtd2FyZSBzZWN1cml0eTsgb3BlcmF0aW5nIGVudmlyb25tZW50OyBwaHlzaWNhbCBzZWN1cml0eTsgbm9uLWludmFzaXZlIHNlY3VyaXR5OyBzZW5zaXRpdmUgc2VjdXJpdHkgcGFyYW1ldGVyIG1hbmFnZW1lbnQ7IHNlbGYtdGVzdHM7IGxpZmUtY3ljbGUgYXNzdXJhbmNlOyBhbmQgbWl0aWdhdGlvbiBvZiBvdGhlciBhdHRhY2tzLiIvPg0KPG1ldGEgbmFtZT0iZGN0ZXJtcy50aXRsZSIgY29udGVudD0iRmVkZXJhbCBJbmZvcm1hdGlvbiBQcm9jZXNzaW5nIFN0YW5kYXJkIChGSVBTKSAxNDAtMywgU2VjdXJpdHkgUmVxdWlyZW1lbnRzIGZvciBDcnlwdG9ncmFwaGljIE1vZHVsZXMiLz4NCjxtZXRhIG5hbWU9ImRjdGVybXMuZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRoZSBzZWxlY3RpdmUgYXBwbGljYXRpb24gb2YgdGVjaG5vbG9naWNhbCBhbmQgcmVsYXRlZCBwcm9jZWR1cmFsIHNhZmVndWFyZHMgaXMgYW4gaW1wb3J0YW50IHJlc3BvbnNpYmlsaXR5IG9mIGV2ZXJ5IGZlZGVyYWwgb3JnYW5pemF0aW9uIGluIHByb3ZpZGluZyBhZGVxdWF0ZSBzZWN1cml0eSBpbiBpdHMgY29tcHV0ZXIgYW5kIHRlbGVjb21tdW5pY2F0aW9uIHN5c3RlbXMuwqAgwqBUaGlzIHN0YW5kYXJkIGlzIGFwcGxpY2FibGUgdG8gYWxsIGZlZGVyYWwgYWdlbmNpZXMgdGhhdCB1c2UgY3J5cHRvZ3JhcGhpYy1iYXNlZCBzZWN1cml0eSBzeXN0ZW1zIHRvIHByb3RlY3Qgc2Vuc2l0aXZlIGluZm9ybWF0aW9uIGluIGNvbXB1dGVyIGFuZCB0ZWxlY29tbXVuaWNhdGlvbiBzeXN0ZW1zIChpbmNsdWRpbmcgdm9pY2Ugc3lzdGVtcykgYXMgZGVmaW5lZCBpbiBTZWN0aW9uIDUxMzEgb2YgdGhlIEluZm9ybWF0aW9uIFRlY2hub2xvZ3kgTWFuYWdlbWVudCBSZWZvcm0gQWN0IG9mIDE5OTYsIFB1YmxpYyBMYXcgMTA0LTEwNiBhbmQgdGhlIEZlZGVyYWwgSW5mb3JtYXRpb24gU2VjdXJpdHkgTWFuYWdlbWVudCBBY3Qgb2YgMjAwMiwgUHVibGljIExhdyAxMDctMzQ3LsKgICBUaGlzIHN0YW5kYXJkIHNoYWxsIGJlIHVzZWQgaW4gZGVzaWduaW5nIGFuZCBpbXBsZW1lbnRpbmcgY3J5cHRvZ3JhcGhpYyBtb2R1bGVzIHRoYXQgZmVkZXJhbCBkZXBhcnRtZW50cyBhbmQgYWdlbmNpZXMgb3BlcmF0ZSBvciBhcmUgb3BlcmF0ZWQgZm9yIHRoZW0gdW5kZXIgY29udHJhY3QuwqAgVGhlIHN0YW5kYXJkIHByb3ZpZGVzIGZvdXIgaW5jcmVhc2luZywgcXVhbGl0YXRpdmUgbGV2ZWxzIG9mIHNlY3VyaXR5IGludGVuZGVkIHRvIGNvdmVyIGEgd2lkZSByYW5nZSBvZiBwb3RlbnRpYWwgYXBwbGljYXRpb25zIGFuZCBlbnZpcm9ubWVudHMuwqAgVGhlIHNlY3VyaXR5IHJlcXVpcmVtZW50cyBjb3ZlciBhcmVhcyByZWxhdGVkIHRvIHRoZSBzZWN1cmUgZGVzaWduLCBpbXBsZW1lbnRhdGlvbiBhbmQgb3BlcmF0aW9uIG9mIGEgY3J5cHRvZ3JhcGhpYyBtb2R1bGUuwqAgVGhlc2UgYXJlYXMgaW5jbHVkZSBjcnlwdG9ncmFwaGljIG1vZHVsZSBzcGVjaWZpY2F0aW9uOyBjcnlwdG9ncmFwaGljIG1vZHVsZSBpbnRlcmZhY2VzOyByb2xlcywgc2VydmljZXMsIGFuZCBhdXRoZW50aWNhdGlvbjsgc29mdHdhcmUvZmlybXdhcmUgc2VjdXJpdHk7IG9wZXJhdGluZyBlbnZpcm9ubWVudDsgcGh5c2ljYWwgc2VjdXJpdHk7IG5vbi1pbnZhc2l2ZSBzZWN1cml0eTsgc2Vuc2l0aXZlIHNlY3VyaXR5IHBhcmFtZXRlciBtYW5hZ2VtZW50OyBzZWxmLXRlc3RzOyBsaWZlLWN5Y2xlIGFzc3VyYW5jZTsgYW5kIG1pdGlnYXRpb24gb2Ygb3RoZXIgYXR0YWNrcy4iLz4NCg0KPCEtLUF1dGhvcnMtLT4NCjxtZXRhIG5hbWU9ImRjdGVybXMuY3JlYXRvciIgY29udGVudD0iQXV0aG9yOiBOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5Ii8+DQoNCg0KPG1ldGEgbmFtZT0iZGN0ZXJtcy5kYXRlLmNyZWF0ZWQiIHNjaGVtZT0iSVNPODYwMSIgY29udGVudD0iMjAxOS0wMy0yMiIvPg0KPG1ldGEgbmFtZT0iZGN0ZXJtcy5pZGVudGlmaWVyIiBjb250ZW50PSJodHRwczovL2NvbnRlbnQuY3NyYy5lMWEubmlzdC5nb3YvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE0MC8zIi8+DQo8bWV0YSBuYW1lPSJkY3Rlcm1zLmxhbmd1YWdlIiBzY2hlbWU9IkRDVEVSTVMuUkZDMTc2NiIgY29udGVudD0iRU4tVVMiLz4NCg0KPCEtLUdvb2dsZSBTY2hvbGFyIEluZm8tLT4NCjxtZXRhIG5hbWU9ImNpdGF0aW9uX3RpdGxlIiBjb250ZW50PSJTZWN1cml0eSBSZXF1aXJlbWVudHMgZm9yIENyeXB0b2dyYXBoaWMgTW9kdWxlcyIgLz4NCjxtZXRhIG5hbWU9ImNpdGF0aW9uX3B1YmxpY2F0aW9uX2RhdGUiIGNvbnRlbnQ9IjIwMTkvMDMvMjIiIC8+DQo8bWV0YSBuYW1lPSJjaXRhdGlvbl9kb2kiIGNvbnRlbnQ9Imh0dHBzOi8vZG9pLm9yZy8xMC42MDI4L05JU1QuRklQUy4xNDAtMyIgLz4NCjxtZXRhIG5hbWU9ImNpdGF0aW9uX3RlY2huaWNhbF9yZXBvcnRfbnVtYmVyIiBjb250ZW50PSJGZWRlcmFsIEluZm9ybWF0aW9uIFByb2Nlc3NpbmcgU3RhbmRhcmQgKEZJUFMpIDE0MC0zIiAvPg0KPG1ldGEgbmFtZT0iY2l0YXRpb25fdGVjaG5pY2FsX3JlcG9ydF9pbnN0aXR1dGlvbiIgY29udGVudD0iVS5TLiBEZXBhcnRtZW50IG9mIENvbW1lcmNlIiAvPg0KDQoNCjxtZXRhIG5hbWU9ImNpdGF0aW9uX2tleXdvcmRzIiBjb250ZW50PSJjb21wdXRlciBzZWN1cml0eTsgdGVsZWNvbW11bmljYXRpb24gc2VjdXJpdHk7IHBoeXNpY2FsIHNlY3VyaXR5OyBzb2Z0d2FyZSBzZWN1cml0eTsgY3J5cHRvZ3JhcGh5OyBjcnlwdG9ncmFwaGljIG1vZHVsZXM7IEZlZGVyYWwgSW5mb3JtYXRpb24gUHJvY2Vzc2luZyBTdGFuZGFyZCAoRklQUyk7IElTTy9JRUMgMTk3OTA6MjAxMjsgSVNPL0lFQyAyNDc1OToyMDE0OyAiIC8+DQo8bWV0YSBuYW1lPSJjaXRhdGlvbl9sYW5ndWFnZSIgY29udGVudD0iZW4iIC8+DQo8bWV0YSBuYW1lPSJjaXRhdGlvbl9hYnN0cmFjdF9odG1sX3VybCIgY29udGVudD0iaHR0cHM6Ly9jc3JjLm5pc3QuZ292L3B1YmxpY2F0aW9ucy9kZXRhaWwvZmlwcy8xNDAvMy9maW5hbCIgLz4NCg0KDQo8IS0tR29vZ2xlIFNjaG9sYXIgQXV0aG9ycy0tPg0KPG1ldGEgbmFtZT0iY2l0YXRpb25fYXV0aG9yIiBjb250ZW50PSJOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5IiAvPg0KPCEtLSBGYWNlYm9vayBPcGVuR3JhcGggLS0+DQo8bWV0YSBuYW1lPSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IkNTUkMgfCBOSVNUIiAvPg0KPG1ldGEgbmFtZT0ib2c6dHlwZSIgY29udGVudD0iYXJ0aWNsZSIgLz4NCjxtZXRhIG5hbWU9Im9nOnVybCIgY29udGVudD0iaHR0cHM6Ly9jc3JjLm5pc3QuZ292L3B1YmxpY2F0aW9ucy9kZXRhaWwvZmlwcy8xNDAvMy9maW5hbCIgLz4NCjxtZXRhIG5hbWU9Im9nOnRpdGxlIiBjb250ZW50PSJGZWRlcmFsIEluZm9ybWF0aW9uIFByb2Nlc3NpbmcgU3RhbmRhcmQgKEZJUFMpIDE0MC0zLCBTZWN1cml0eSBSZXF1aXJlbWVudHMgZm9yIENyeXB0b2dyYXBoaWMgTW9kdWxlcyIgLz4NCjxtZXRhIG5hbWU9Im9nOmRlc2NyaXB0aW9uIiBjb250ZW50PSJUaGUgc2VsZWN0aXZlIGFwcGxpY2F0aW9uIG9mIHRlY2hub2xvZ2ljYWwgYW5kIHJlbGF0ZWQgcHJvY2VkdXJhbCBzYWZlZ3VhcmRzIGlzIGFuIGltcG9ydGFudCByZXNwb25zaWJpbGl0eSBvZiBldmVyeSBmZWRlcmFsIG9yZ2FuaXphdGlvbiBpbiBwcm92aWRpbmcgYWRlcXVhdGUgc2VjdXJpdHkgaW4gaXRzIGNvbXB1dGVyIGFuZCB0ZWxlY29tbXVuaWNhdGlvbiBzeXN0ZW1zLsKgIMKgVGhpcyBzdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIGFsbCBmZWRlcmFsIGFnZW5jaWVzIHRoYXQgdXNlIGNyeXB0b2dyYXBoaWMtYmFzZWQgc2VjdXJpdHkgc3lzdGVtcyB0byBwcm90ZWN0IHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiBpbiBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcyAoaW5jbHVkaW5nIHZvaWNlIHN5c3RlbXMpIGFzIGRlZmluZWQgaW4gU2VjdGlvbiA1MTMxIG9mIHRoZSBJbmZvcm1hdGlvbiBUZWNobm9sb2d5IE1hbmFnZW1lbnQgUmVmb3JtIEFjdCBvZiAxOTk2LCBQdWJsaWMgTGF3IDEwNC0xMDYgYW5kIHRoZSBGZWRlcmFsIEluZm9ybWF0aW9uIFNlY3VyaXR5IE1hbmFnZW1lbnQgQWN0IG9mIDIwMDIsIFB1YmxpYyBMYXcgMTA3LTM0Ny7CoCAgVGhpcyBzdGFuZGFyZCBzaGFsbCBiZSB1c2VkIGluIGRlc2lnbmluZyBhbmQgaW1wbGVtZW50aW5nIGNyeXB0b2dyYXBoaWMgbW9kdWxlcyB0aGF0IGZlZGVyYWwgZGVwYXJ0bWVudHMgYW5kIGFnZW5jaWVzIG9wZXJhdGUgb3IgYXJlIG9wZXJhdGVkIGZvciB0aGVtIHVuZGVyIGNvbnRyYWN0LsKgIFRoZSBzdGFuZGFyZCBwcm92aWRlcyBmb3VyIGluY3JlYXNpbmcsIHF1YWxpdGF0aXZlIGxldmVscyBvZiBzZWN1cml0eSBpbnRlbmRlZCB0byBjb3ZlciBhIHdpZGUgcmFuZ2Ugb2YgcG90ZW50aWFsIGFwcGxpY2F0aW9ucyBhbmQgZW52aXJvbm1lbnRzLsKgIFRoZSBzZWN1cml0eSByZXF1aXJlbWVudHMgY292ZXIgYXJlYXMgcmVsYXRlZCB0byB0aGUgc2VjdXJlIGRlc2lnbiwgaW1wbGVtZW50YXQuLi4iIC8+DQoNCjxtZXRhIG5hbWU9ImFydGljbGU6YXV0aG9yIiBjb250ZW50PSJOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5IiAvPjwvaGVhZD4NCjxib2R5IGNsYXNzPSJMVFIgVW5rbm93biBFTlVTIENvbnRlbnRCb2R5IiA+DQogICAgDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0IiBhY3Rpb249Ii9wdWJsaWNhdGlvbnMvZGV0YWlsL2ZpcHMvMTQwLzMvZmluYWwiIGlkPSJmb3JtIj4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Il9fQ01TQ3NyZlRva2VuIiBpZD0iX19DTVNDc3JmVG9rZW4iIHZhbHVlPSJKUjlXUkpkZWJ1dUNveFR5NDdRS25UK0RkbHVGajdWMFVnMndWWDNXTXI4KzBzSThlMFZvcWJGYWxEYi9yZFMwRi9jVnRqbXBRYmYweVAzNmRacjJFbVg1ZUdzMlRud0VRbTVZd3BpNEdUST0iIC8+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJfX1ZJRVdTVEFURSIgaWQ9Il9fVklFV1NUQVRFIiB2YWx1ZT0iUW1vM3pZcTI4VHhDamdMWDQvcHBjRlpUaUcvMml4cDdHS2F0emZ5VnV5TWRocTFFZ3BjQnUxbzZ4WjFsTVFjVXlyb1IxZVhNTnd4WCtMbkd2NkZFbGs3dmE2OXZhWXdpWll5WkExNlNHbHlqVEJNcTRSU3V2OEVNajFqZVY3b3ZTYzdWYXJBWVIrZFZQV09Qb1hGRG9HYW5DeXBidFZscFllWGJwZGMzdEVFd1AvVlYvT1lCWDhoaFBvYTZEN25zVTJqZ2gxT3ZWTlB5Zi9SN2huVThJT2hYdC9TRFVCQzA0Q2J0L1o3N3Raa1l1R3JuNU5udndCYkFTQ1V6aklVRGJ4VGh2M3cvNjlIZm12cng1aEdrVlR0NWtENXptYXVkUDJuY1JTdDJCMlZiN2RzSVM3eHRERkNocXdEVGoxcFdabHpMVHQ4VWlrTkp2ZnJNWk9waGZ3PT0iIC8+DQoNCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImxuZyIgaWQ9ImxuZyIgdmFsdWU9ImVuLVVTIiAvPg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KCS8vPCFbQ0RBVEFbCg0KZnVuY3Rpb24gUE1fUG9zdGJhY2socGFyYW0pIHsgaWYgKHdpbmRvdy50b3AuSGlkZVNjcmVlbkxvY2tXYXJuaW5nQW5kU3luYykgeyB3aW5kb3cudG9wLkhpZGVTY3JlZW5Mb2NrV2FybmluZ0FuZFN5bmMoMTA4MCk7IH0gaWYod2luZG93LkNNU0NvbnRlbnRNYW5hZ2VyKSB7IENNU0NvbnRlbnRNYW5hZ2VyLmFsbG93U3VibWl0ID0gdHJ1ZTsgfTsgX19kb1Bvc3RCYWNrKCdtJGFtJyxwYXJhbSk7IH0NCmZ1bmN0aW9uIFBNX0NhbGxiYWNrKHBhcmFtLCBjYWxsYmFjaywgY3R4KSB7IGlmICh3aW5kb3cudG9wLkhpZGVTY3JlZW5Mb2NrV2FybmluZ0FuZFN5bmMpIHsgd2luZG93LnRvcC5IaWRlU2NyZWVuTG9ja1dhcm5pbmdBbmRTeW5jKDEwODApOyB9aWYgKHdpbmRvdy5DTVNDb250ZW50TWFuYWdlcikgeyBDTVNDb250ZW50TWFuYWdlci5zdG9yZUNvbnRlbnRDaGFuZ2VkU3RhdHVzKCk7IH07V2ViRm9ybV9Eb0NhbGxiYWNrKCdtJGFtJyxwYXJhbSxjYWxsYmFjayxjdHgsbnVsbCx0cnVlKTsgfQovL11dPg0KPC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL1NjcmlwdFJlc291cmNlLmF4ZD9kPXVISWtsZVZlREpmNHhTNTBLcnoteUFsaWVPVFBhUkU4bV80SnlFWTZsZ2wtdk9mOUV4TS1yTVN4SjRPMUxYSHl1ZlNnWnliamd4MHlFU0FaS1dNX3VKM0RlbFlhWFlvMm1aWFhLbnFXZHcxTm1pdnpYdm5Qam5JS2hjcENUdWw0TEpXRTZ3LWxEbGo1eERaZ0xLQU5pY1l3U2NDdGRVSUVqOHNseUNleXZMbzEmYW1wO3Q9ZmZmZmZmZmZhNTgwMjAyYSIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCgkvLzwhW0NEQVRBWwoNCnZhciBDTVMgPSBDTVMgfHwge307DQpDTVMuQXBwbGljYXRpb24gPSB7DQogICJsYW5ndWFnZSI6ICJlbiIsDQogICJpbWFnZXNVcmwiOiAiL0NNU1BhZ2VzL0dldFJlc291cmNlLmFzaHg/aW1hZ2U9JTViSW1hZ2VzLnppcCU1ZCUyZiIsDQogICJpc0RlYnVnZ2luZ0VuYWJsZWQiOiBmYWxzZSwNCiAgImFwcGxpY2F0aW9uVXJsIjogIi8iLA0KICAiaXNEaWFsb2ciOiBmYWxzZSwNCiAgImlzUlRMIjogImZhbHNlIg0KfTsNCgovL11dPg0KPC9zY3JpcHQ+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJfX1ZJRVdTVEFURUdFTkVSQVRPUiIgaWQ9Il9fVklFV1NUQVRFR0VORVJBVE9SIiB2YWx1ZT0iQTUzNDMxODUiIC8+DQogICAgDQogICAgPGRpdiBpZD0iY3R4TSI+DQoNCjwvZGl2Pg0KICAgIDxkaXYgaWQ9ImFudGlDbGlja2phY2siIHN0eWxlPSJkaXNwbGF5OiBub25lIj4NCiAgICA8aDE+WW91IGFyZSB2aWV3aW5nIHRoaXMgcGFnZSBpbiBhbiB1bmF1dGhvcml6ZWQgZnJhbWUgd2luZG93LjwvaDE+DQogICAgPHA+VGhpcyBpcyBhIHBvdGVudGlhbCBzZWN1cml0eSBpc3N1ZSwgeW91IGFyZSBiZWluZyByZWRpcmVjdGVkIHRvIDxhIGhyZWY9Imh0dHBzOi8vY3NyYy5uaXN0LmdvdiI+aHR0cHM6Ly9jc3JjLm5pc3QuZ292PC9hPjwvcD4NCjwvZGl2Pg0KPG5hdiBpZD0ibmF2YmFyIiBjbGFzcz0ibmF2YmFyIj4NCiAgPGRpdiBpZD0ibmlzdC1tZW51LWNvbnRhaW5lciIgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICA8IS0tIEJyYW5kIC0tPg0KICAgIDxkaXYgY2xhc3M9ImNvbC14cy02IGNvbC1tZC00IG5hdmJhci1oZWFkZXIiPg0KICAgICAgPGEgY2xhc3M9Im5hdmJhci1icmFuZCIgaHJlZj0iaHR0cHM6Ly93d3cubmlzdC5nb3YiIHRhcmdldD0iX2JsYW5rIiBpZD0ibmF2YmFyLWJyYW5kLWltYWdlIj4NCiAgICAgICAgPGltZyBzcmM9Ii9DU1JDL01lZGlhL2ltYWdlcy9zdmcvbmlzdC1sb2dvLnN2ZyIgYWx0PSJOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5IiB3aWR0aD0iMTEwIiBoZWlnaHQ9IjMwIj4NCiAgICAgIDwvYT4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNiBjb2wtbWQtOCBuYXZiYXItbmlzdC1sb2dvIj4NCiAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1pbmxpbmUgaGlkZGVuLXNtIGhpZGRlbi14cyI+DQogICAgICAgICAgICA8bGFiZWwgZm9yPSJzZWFyY2gtY3NyYy1xdWVyeSIgY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj5TZWFyY2g8L2xhYmVsPg0KICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBpZD0ic2VhcmNoLWNzcmMtcXVlcnkiIG5hbWU9InNlYXJjaC1jc3JjLXF1ZXJ5IiB0eXBlPSJ0ZXh0IiBzaXplPSIxNSIgbWF4bGVuZ3RoPSIxMjgiIHBsYWNlaG9sZGVyPSJTZWFyY2ggQ1NSQyIvPg0KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJzZWFyY2gtY3NyYy1zdWJtaXQtYnRuIiBuYW1lPSJvcCIgY2xhc3M9ImZvcm0tc3VibWl0Ij4NCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPlNlYXJjaDwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtc2VhcmNoIj48L2k+DQogICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgPC9kaXY+DQogICAgICA8c3BhbiBpZD0ibnZkLW1lbnUtYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCI+DQogICAgICAgIDxhIGhyZWY9IiMiIGlkPSJudmQtbWVudS1idXR0b24tbGluayI+DQogICAgICAgICAgPHNwYW4gY2xhc3M9ImZhIGZhLWJhcnMiPjwvc3Bhbj4gDQogICAgICAgICAgPHNwYW4gaWQ9Im52ZC1tZW51LWZ1bGwtdGV4dCI+PHNwYW4gY2xhc3M9ImhpZGRlbi14eHMiPkNTUkMgPC9zcGFuPk1FTlU8L3NwYW4+DQogICAgICAgIDwvYT4NCiAgICAgIDwvc3Bhbj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgPC9kaXY+DQogICAgDQogICAgPGRpdiBjbGFzcz0iZm9ybS1pbmxpbmUgaGlkZGVuLW1kIGhpZGRlbi1sZyI+DQogICAgICAgIDxsYWJlbCBmb3I9InNlYXJjaC1jc3JjLXF1ZXJ5IiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPlNlYXJjaDwvbGFiZWw+DQogICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9Im9mZiIgY2xhc3M9ImZvcm0tY29udHJvbCIgaWQ9InNlYXJjaC1jc3JjLXF1ZXJ5LW1vYmlsZSIgbmFtZT0ic2VhcmNoLWNzcmMtcXVlcnkiIHR5cGU9InRleHQiIHNpemU9IjE1IiBtYXhsZW5ndGg9IjEyOCIgcGxhY2Vob2xkZXI9IlNlYXJjaCBDU1JDIi8+DQogICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0ic2VhcmNoLWNzcmMtc3VibWl0LWJ0bi1tb2JpbGUiIG5hbWU9Im9wIiBjbGFzcz0iZm9ybS1zdWJtaXQiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj5TZWFyY2g8L3NwYW4+DQogICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtc2VhcmNoIj48L2k+DQogICAgICAgIDwvYnV0dG9uPg0KICAgIDwvZGl2Pg0KPGRpdiBjbGFzcz0ibWFpbi1tZW51LXJvdyBjb250YWluZXIiPg0KICAgIDwhLS0gQ29sbGVjdCB0aGUgbmF2IGxpbmtzLCBmb3JtcywgYW5kIG90aGVyIGNvbnRlbnQgZm9yIHRvZ2dsaW5nIC0tPg0KICAgIDxkaXYgaWQ9Im1haW4tbWVudS1kcm9wIiBjbGFzcz0iY29sLWxnLTEyIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICA8dWw+DQogICAgICAgICAgICA8bGk+PGEgaHJlZj0iL3Byb2plY3RzIj5Qcm9qZWN0czwvYT48L2xpPg0KICAgICAgICAgICAgPGxpPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMiPg0KICAgICAgICAgICAgICAgICAgICBQdWJsaWNhdGlvbnMNCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImV4cGFuZGVyIGZhIGZhLXBsdXMiIGlkPSJtYWluLW1lbnUtcHVicy1leHBhbmRlciIgZGF0YS1leHBhbmRlci1uYW1lPSJwdWJsaWNhdGlvbnMiIGRhdGEtZXhwYW5kZWQ9ImZhbHNlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+RXhwYW5kIG9yIENvbGxhcHNlPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImRpc3BsYXk6IG5vbmU7IiBjbGFzcz0ic3ViLW1lbnUiIGRhdGEtZXhwYW5kZXItdHJpZ2dlcj0icHVibGljYXRpb25zIiBpZD0ibWFpbi1tZW51LXB1YnMtZXhwYW5kZWQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvZHJhZnQtcHVicyI+RHJhZnQgUHViczwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9maW5hbC1wdWJzIj5GaW5hbCBQdWJzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvcHVibGljYXRpb25zL2ZpcHMiPkZJUFM8L2E+PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvc3AiPlNwZWNpYWwgUHVibGljYXRpb25zIChTUDxzbWFsbD5zPC9zbWFsbD4pPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvbmlzdGlyIj5OSVNUSVI8c21hbGw+czwvc21hbGw+PC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvcHVibGljYXRpb25zL2l0bC1idWxsZXRpbiI+SVRMIEJ1bGxldGluczwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL3B1YmxpY2F0aW9ucy93aGl0ZS1wYXBlciI+V2hpdGUgUGFwZXJzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvam91cm5hbC1hcnRpY2xlIj5Kb3VybmFsIEFydGljbGVzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvcHVibGljYXRpb25zL2NvbmZlcmVuY2UtcGFwZXIiPkNvbmZlcmVuY2UgUGFwZXJzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvcHVibGljYXRpb25zL2Jvb2siPkJvb2tzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iL3RvcGljcyI+DQogICAgICAgICAgICAgICAgICAgIFRvcGljcw0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZXhwYW5kZXIgZmEgZmEtcGx1cyIgaWQ9Im1haW4tbWVudS10b3BpY3MtZXhwYW5kZXIiIGRhdGEtZXhwYW5kZXItbmFtZT0idG9waWNzIiBkYXRhLWV4cGFuZGVkPSJmYWxzZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPkV4cGFuZCBvciBDb2xsYXBzZTwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9InN1Yi1tZW51IiBkYXRhLWV4cGFuZGVyLXRyaWdnZXI9InRvcGljcyIgaWQ9Im1haW4tbWVudS10b3BpY3MtZXhwYW5kZWQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGhyZWY9Ii9Ub3BpY3MvU2VjdXJpdHktYW5kLVByaXZhY3kiPlNlY3VyaXR5ICZhbXAgUHJpdmFjeTwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL1RvcGljcy9BcHBsaWNhdGlvbnMiPkFwcGxpY2F0aW9uczwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvVG9waWNzL1RlY2hub2xvZ2llcyI+VGVjaG5vbG9naWVzPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBocmVmPSIvVG9waWNzL1NlY3RvcnMiPlNlY3RvcnM8L2E+PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL1RvcGljcy9MYXdzLWFuZC1SZWd1bGF0aW9ucyI+TGF3cyAmYW1wOyBSZWd1bGF0aW9uczwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaHJlZj0iL1RvcGljcy9BY3Rpdml0aWVzLWFuZC1Qcm9kdWN0cyI+QWN0aXZpdGllcyAmYW1wOyBQcm9kdWN0czwvYT48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9uZXdzIj5OZXdzICZhbXA7IFVwZGF0ZXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZXZlbnRzIj5FdmVudHM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZ2xvc3NhcnkiPkdsb3NzYXJ5PC9hPjwvbGk+DQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iL2Fib3V0Ij4NCiAgICAgICAgICAgICAgICAgICAgQWJvdXQgQ1NSQw0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZXhwYW5kZXIgZmEgZmEtcGx1cyIgaWQ9Im1haW4tbWVudS1hYm91dC1leHBhbmRlciIgZGF0YS1leHBhbmRlci1uYW1lPSJhYm91dCIgZGF0YS1leHBhbmRlZD0iZmFsc2UiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj5FeHBhbmQgb3IgQ29sbGFwc2U8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJzdWItbWVudSIgZGF0YS1leHBhbmRlci10cmlnZ2VyPSJhYm91dCIgaWQ9Im1haW4tbWVudS1hYm91dC1leHBhbmRlZCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+Q29tcHV0ZXIgU2VjdXJpdHkgRGl2aXNpb248L3N0cm9uZz48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9Hcm91cHMvQ29tcHV0ZXItU2VjdXJpdHktRGl2aXNpb24vQ3J5cHRvZ3JhcGhpYy1UZWNobm9sb2d5Ij5DcnlwdG9ncmFwaGljIFRlY2hub2xvZ3k8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvR3JvdXBzL0NvbXB1dGVyLVNlY3VyaXR5LURpdmlzaW9uL1NlY3VyZS1TeXN0ZW1zLWFuZC1BcHBsaWNhdGlvbnMiPlNlY3VyZSBTeXN0ZW1zIGFuZCBBcHBsaWNhdGlvbnM8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvR3JvdXBzL0NvbXB1dGVyLVNlY3VyaXR5LURpdmlzaW9uL1NlY3VyaXR5LUNvbXBvbmVudHMtYW5kLU1lY2hhbmlzbXMiPlNlY3VyaXR5IENvbXBvbmVudHMgYW5kIE1lY2hhbmlzbXM8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvR3JvdXBzL0NvbXB1dGVyLVNlY3VyaXR5LURpdmlzaW9uL1NlY3VyaXR5LUVuZ2luZWVyaW5nLWFuZC1SaXNrLU1hbmFnZW1lbnQiPlNlY3VyaXR5IEVuZ2luZWVyaW5nIGFuZCBSaXNrIE1hbmFnZW1lbnQ8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvR3JvdXBzL0NvbXB1dGVyLVNlY3VyaXR5LURpdmlzaW9uL1NlY3VyaXR5LVRlc3RpbmctVmFsaWRhdGlvbi1hbmQtTWVhc3VyZW1lbnQiPlNlY3VyaXR5IFRlc3RpbmcsIFZhbGlkYXRpb24sIGFuZCBNZWFzdXJlbWVudDwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPkFwcGxpZWQgQ3liZXJzZWN1cml0eSBEaXZpc2lvbjwvc3Ryb25nPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL0dyb3Vwcy9BcHBsaWVkLUN5YmVyc2VjdXJpdHktRGl2aXNpb24vQ3liZXJzZWN1cml0eS1hbmQtUHJpdmFjeS1BcHBsaWNhdGlvbnMiPkN5YmVyc2VjdXJpdHkgYW5kIFByaXZhY3kgQXBwbGljYXRpb25zPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL0dyb3Vwcy9BcHBsaWVkLUN5YmVyc2VjdXJpdHktRGl2aXNpb24vTmF0aW9uYWwtQ3liZXJzZWN1cml0eS1DZW50ZXItb2YtRXhjZWxsZW5jZSI+TmF0aW9uYWwgQ3liZXJzZWN1cml0eSBDZW50ZXIgb2YgRXhjZWxsZW5jZSAoTkNDb0UpPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cubmlzdC5nb3YvbmljZS8iPk5hdGlvbmFsIEluaXRpYXRpdmUgZm9yIEN5YmVyc2VjdXJpdHkgRWR1Y2F0aW9uIChOSUNFKTwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9Hcm91cHMvQXBwbGllZC1DeWJlcnNlY3VyaXR5LURpdmlzaW9uL1RydXN0ZWQtSWRlbnRpdGllcy1Hcm91cCI+VHJ1c3RlZCBJZGVudGl0aWVzIEdyb3VwPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvY29udGFjdCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb250YWN0IFVzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2xpPg0KICAgICAgICA8L3VsPg0KICAgIDwvZGl2PjwhLS0gLyNtb2JpbGUtbmF2LWNvbnRhaW5lciAtLT4NCjwvZGl2Pg0KDQo8L25hdj4NCjxzZWN0aW9uIGlkPSJpdGwtaGVhZGVyIiBjbGFzcz0iaGFzLW1lbnUiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIgY29sLW1kLTgiPg0KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0iaGlkZGVuLXhzIGhpZGRlbi1zbSI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L2l0bCIgdGFyZ2V0PSJfYmxhbmsiIGlkPSJpdGwtaGVhZGVyLWxpbmsiPkluZm9ybWF0aW9uIFRlY2hub2xvZ3kgTGFib3JhdG9yeTwvYT4NCiAgICAgICAgICAgICAgICA8L2gyPg0KICAgICAgICAgICAgICAgIDxoMSBjbGFzcz0iaGlkZGVuLXhzIGhpZGRlbi1zbSI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii8iIGlkPSJjc3JjLWhlYWRlci1saW5rLWxnIj5Db21wdXRlciBTZWN1cml0eSBSZXNvdXJjZSBDZW50ZXI8L2E+DQogICAgICAgICAgICAgICAgPC9oMT4NCiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9ImhpZGRlbi14cyB0ZXh0LWNlbnRlciBoaWRkZW4tbWQgaGlkZGVuLWxnIiBpZD0iY3NyYy1oZWFkZXItbGluay1tZCI+Q29tcHV0ZXIgU2VjdXJpdHkgUmVzb3VyY2UgQ2VudGVyPC9oMT4NCiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9ImhpZGRlbi1zbSBoaWRkZW4tbWQgaGlkZGVuLWxnIHRleHQtY2VudGVyIiBpZD0iY3NyYy1oZWFkZXItbGluay1zbSI+Q29tcHV0ZXIgU2VjdXJpdHk8YnIgLz5SZXNvdXJjZSBDZW50ZXI8L2gxPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIgY29sLW1kLTQiPg0KICAgICAgICAgICAgICAgIDxhIGlkPSJsb2dvLWNzcmMiIGhyZWY9Ii8iIHN0eWxlPSJ3aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogY2VudGVyOyBkaXNwbGF5OiBibG9jazsiPjxpbWcgaWQ9ImltZy1sb2dvLWNzcmMic3JjPSIvQ1NSQy9NZWRpYS9pbWFnZXMvQ1NSQy13aGl0ZS0xMzQtMzgucG5nIiBhbHQ9IkNTUkMgTG9nbyIgY2xhc3M9ImNzcmMtaGVhZGVyLWxvZ28iPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCg0KPGRpdiBpZD0iYm9keS1zZWN0aW9uIiBjbGFzcz0iY29udGFpbmVyIj4NCg0KDQogIDxkaXYgY2xhc3M9InB1YmxpY2F0aW9ucy1kZXRhaWwiPg0KICAgIDxvbCBjbGFzcz0iYnJlYWRjcnVtYiI+PGEgaHJlZj0iL1B1YmxpY2F0aW9ucyIgY2xhc3M9IkNNU0JyZWFkQ3J1bWJzTGluayI+UHVibGljYXRpb25zPC9hPiA8c3BhbiBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiPjwvc3Bhbj4gPHNwYW4gIGNsYXNzPSJDTVNCcmVhZENydW1ic0N1cnJlbnRJdGVtIj5EZXRhaWw8L3NwYW4+DQo8L29sPiANCg0KDQoNCiAgICANCiAgICANCiAgICANCiAgICANCiAgICANCiAgICANCiAgICANCiAgICAgICAgPGgzIGlkPSJwdWItaGVhZGVyLWRpc3BsYXktY29udGFpbmVyIj4NCiAgICAgICAgICAgIDxzcGFuIGlkPSJwdWItaGVhZGVyLWZ1bGwtZGlzcGxheSI+RklQUyAxNDAtMzwvc3Bhbj4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgDQogICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtcGVuY2lsLXNxdWFyZSB0ZXh0LXdhcm5pbmciIGlkPSJwdWItaGVhZGVyLXBsYW5uaW5nLW5vdGUiIHRpdGxlPSJTZWUgUGxhbm5pbmcgTm90ZSBiZWxvdy4iPjwvaT4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2gzPg0KICAgIA0KICAgICAgICA8aDEgaWQ9InB1Yi10aXRsZSI+U2VjdXJpdHkgUmVxdWlyZW1lbnRzIGZvciBDcnlwdG9ncmFwaGljIE1vZHVsZXM8L2gxPg0KICAgICAgICANCiAgICAgICAgPGRpdiBjbGFzcz0icGFnZS1zb2NpYWwtYnV0dG9ucyI+DQogICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ic29jaWFsLWZhY2Vib29rIiBpZD0ic29jaWFsRmFjZWJvb2siPjxpIGNsYXNzPSJmYSBmYS1mYWNlYm9vayBmYS1mdyIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L2E+DQogICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ic29jaWFsLWdvb2dsZS1wbHVzIiBpZD0ic29jaWFsR29vZ2xlUGx1cyI+PGkgY2xhc3M9ImZhIGZhLWdvb2dsZS1wbHVzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvYT4NCiAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJzb2NpYWwtdHdpdHRlciIgaWQ9InNvY2lhbFR3aXR0ZXIiPjxpIGNsYXNzPSJmYSBmYS10d2l0dGVyIGZhLWZ3IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvYT4NCiAgICAgICAgPC9kaXY+DQogICAgDQogICAgICAgIDxwIGNsYXNzPSJoaWRkZW4tbGcgaGlkZGVuLW1kIj4NCiAgICAgICAgICAgICZuYnNwOyZuYnNwOyZuYnNwOw0KICAgICAgICAgICAgPGEgaHJlZj0iI3B1YnMtZG9jdW1lbnRhdGlvbiIgY2xhc3M9ImJ0biBidG4tbGcgYnRuLWluZm8iIGlkPSJwdWItdG9waWNzLWFuY2hvci1zbSI+RG9jdW1lbnRhdGlvbjwvYT4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgJm5ic3A7Jm5ic3A7Jm5ic3A7DQogICAgICAgICAgICA8YSBocmVmPSIjcHVicy10b3BpY3MiIGNsYXNzPSJidG4gYnRuLWxnIGJ0bi1pbmZvIiBpZD0icHViLXRvcGljcy1hbmNob3Itc20iPlRvcGljczwvYT4NCiAgICAgICAgICAgIA0KICAgICAgICA8L3A+DQogICAgDQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2ICBjbGFzcz0iY29sLW1kLTggY29sLXNtLTEyIHB1YmxpY2F0aW9uLXBhbmVsIj4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPkRhdGUgUHVibGlzaGVkOjwvc3Ryb25nPiA8c3BhbiBpZD0icHViLXJlbGVhc2UtZGF0ZSI+TWFyY2ggMjIsIDIwMTk8L3NwYW4+PGJyIC8+DQogICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5QbGFubmluZyBOb3RlICg8c3BhbiBpZD0ncHViLXBsYW5uaW5nLW5vdGUtZGF0ZSc+NS8xLzIwMTk8L3NwYW4+KTo8L3N0cm9uZz4gDQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYSBmYS1wZW5jaWwtc3F1YXJlIHRleHQtd2FybmluZyIgaWQ9J3B1Yi1wbGFubmluZy1ub3RlLWljb24nPjwvaT4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9J3B1Yi1wbGFubmluZy1ub3RlJz5TZWUgdGhlIDxhIGRhdGEtY3NyYy1saW5rPSJ0cnVlIiBkYXRhLW5vZGUtZ3VpZD0iY2IwMWFiMjgtMDIzMi00ZWQ5LWIzNjYtY2RlYTcyNGJiZGVhIiBocmVmPSIvcHJvamVjdHMvZmlwcy0xNDAtMy1kZXZlbG9wbWVudCI+RklQUyAxNDAtMyBEZXZlbG9wbWVudCBwcm9qZWN0PC9hPiBmb3IgaW5mb3JtYXRpb24gb24gdGhlIDxhIGRhdGEtY3NyYy1saW5rPSJ0cnVlIiBkYXRhLW5vZGUtZ3VpZD0iY2IwMWFiMjgtMDIzMi00ZWQ5LWIzNjYtY2RlYTcyNGJiZGVhIiBocmVmPSIvcHJvamVjdHMvZmlwcy0xNDAtMy1kZXZlbG9wbWVudCNzY2hlZHVsZSI+SW1wbGVtZW50YXRpb24gU2NoZWR1bGU8L2E+IGFuZCBkZXZlbG9wbWVudCBvZiBzdXBwb3J0aW5nIDxhIGRhdGEtY3NyYy1saW5rPSJ0cnVlIiBkYXRhLW5vZGUtZ3VpZD0iY2IwMWFiMjgtMDIzMi00ZWQ5LWIzNjYtY2RlYTcyNGJiZGVhIiBocmVmPSIvcHJvamVjdHMvZmlwcy0xNDAtMy1kZXZlbG9wbWVudCNzcDgwMC0xNDAiPlNQIDgwMC0xNDB4IGRvY3VtZW50czwvYT4uPC9zcGFuPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPHN0cm9uZz5TdXBlcnNlZGVzOjwvc3Ryb25nPiA8c3BhbiBpZD0icHViLXN1cGVyc2VkZXMtY29udGFpbmVyIiBkYXRhLXRvdGFsPSIxIj48YSBocmVmPScvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE0MC8yL2ZpbmFsJyBpZD0ncHViLXN1cGVyc2VkZXMtMCc+RklQUyAgMTQwLTIgKE1heSAyNSwgMjAwMSAoQ2hhbmdlIE5vdGljZSAyLCAxMi8zLzIwMDIpKTwvYT48L3NwYW4+PGJyIC8+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxoND5BdXRob3Iocyk8L2g0Pg0KICAgICAgICAgICAgICAgIDxwPjxzdHJvbmcgaWQ9InB1Yi1hdXRob3JzLWNvbnRhaW5lciIgZGF0YS10b3RhbD0iMSI+PHNwYW4gaWQ9J3B1Yi1hdXRob3ItMCc+TmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBhbmQgVGVjaG5vbG9neTwvc3Bhbj48L3N0cm9uZz48L3A+DQogICAgICAgICAgICAgICAgDQogICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgDQogICAgDQogICAgICAgICAgICAgICAgDQogICAgDQogICAgDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnMtY2FsbG91dCBicy1jYWxsb3V0LXN1Y2Nlc3MgcHViLWFic3RyYWN0LWNhbGxvdXQiPg0KICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9InB1YnMtYWJzdHJhY3QtaGVhZGVyIj5BYnN0cmFjdDwvaDQ+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhpZGRlbi1zbSBoaWRkZW4teHMgaGlkZGVuLXh4cyIgaWQ9InB1Yi1kZXRhaWwtYWJzdHJhY3QtaW5mbyI+PHA+VGhlIHNlbGVjdGl2ZSBhcHBsaWNhdGlvbiBvZiB0ZWNobm9sb2dpY2FsIGFuZCByZWxhdGVkIHByb2NlZHVyYWwgc2FmZWd1YXJkcyBpcyBhbiBpbXBvcnRhbnQgcmVzcG9uc2liaWxpdHkgb2YgZXZlcnkgZmVkZXJhbCBvcmdhbml6YXRpb24gaW4gcHJvdmlkaW5nIGFkZXF1YXRlIHNlY3VyaXR5IGluIGl0cyBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcy4mbmJzcDsgJm5ic3A7VGhpcyBzdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIGFsbCBmZWRlcmFsIGFnZW5jaWVzIHRoYXQgdXNlIGNyeXB0b2dyYXBoaWMtYmFzZWQgc2VjdXJpdHkgc3lzdGVtcyB0byBwcm90ZWN0IHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiBpbiBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcyAoaW5jbHVkaW5nIHZvaWNlIHN5c3RlbXMpIGFzIGRlZmluZWQgaW4gU2VjdGlvbiA1MTMxIG9mIHRoZSBJbmZvcm1hdGlvbiBUZWNobm9sb2d5IE1hbmFnZW1lbnQgUmVmb3JtIEFjdCBvZiAxOTk2LCBQdWJsaWMgTGF3IDEwNC0xMDYgYW5kIHRoZSBGZWRlcmFsIEluZm9ybWF0aW9uIFNlY3VyaXR5IE1hbmFnZW1lbnQgQWN0IG9mIDIwMDIsIFB1YmxpYyBMYXcgMTA3LTM0Ny4mbmJzcDs8L3A+DQoNCjxwPlRoaXMgc3RhbmRhcmQgc2hhbGwgYmUgdXNlZCBpbiBkZXNpZ25pbmcgYW5kIGltcGxlbWVudGluZyBjcnlwdG9ncmFwaGljIG1vZHVsZXMgdGhhdCBmZWRlcmFsIGRlcGFydG1lbnRzIGFuZCBhZ2VuY2llcyBvcGVyYXRlIG9yIGFyZSBvcGVyYXRlZCBmb3IgdGhlbSB1bmRlciBjb250cmFjdC4mbmJzcDsgVGhlIHN0YW5kYXJkIHByb3ZpZGVzIGZvdXIgaW5jcmVhc2luZywgcXVhbGl0YXRpdmUgbGV2ZWxzIG9mIHNlY3VyaXR5IGludGVuZGVkIHRvIGNvdmVyIGEgd2lkZSByYW5nZSBvZiBwb3RlbnRpYWwgYXBwbGljYXRpb25zIGFuZCBlbnZpcm9ubWVudHMuJm5ic3A7IFRoZSBzZWN1cml0eSByZXF1aXJlbWVudHMgY292ZXIgYXJlYXMgcmVsYXRlZCB0byB0aGUgc2VjdXJlIGRlc2lnbiwgaW1wbGVtZW50YXRpb24gYW5kIG9wZXJhdGlvbiBvZiBhIGNyeXB0b2dyYXBoaWMgbW9kdWxlLiZuYnNwOyBUaGVzZSBhcmVhcyBpbmNsdWRlIGNyeXB0b2dyYXBoaWMgbW9kdWxlIHNwZWNpZmljYXRpb247IGNyeXB0b2dyYXBoaWMgbW9kdWxlIGludGVyZmFjZXM7IHJvbGVzLCBzZXJ2aWNlcywgYW5kIGF1dGhlbnRpY2F0aW9uOyBzb2Z0d2FyZS9maXJtd2FyZSBzZWN1cml0eTsgb3BlcmF0aW5nIGVudmlyb25tZW50OyBwaHlzaWNhbCBzZWN1cml0eTsgbm9uLWludmFzaXZlIHNlY3VyaXR5OyBzZW5zaXRpdmUgc2VjdXJpdHkgcGFyYW1ldGVyIG1hbmFnZW1lbnQ7IHNlbGYtdGVzdHM7IGxpZmUtY3ljbGUgYXNzdXJhbmNlOyBhbmQgbWl0aWdhdGlvbiBvZiBvdGhlciBhdHRhY2tzLjwvcD48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGlkZGVuLWxnIGhpZGRlbi1tZCI+DQogICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InB1Yi1kZXRhaWwtYWJzdHJhY3QtbWluIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgc2VsZWN0aXZlIGFwcGxpY2F0aW9uIG9mIHRlY2hub2xvZ2ljYWwgYW5kIHJlbGF0ZWQgcHJvY2VkdXJhbCBzYWZlZ3VhcmRzIGlzIGFuIGltcG9ydGFudCByZXNwb25zaWJpbGl0eSBvZiBldmVyeSBmZWRlcmFsIG9yZ2FuaXphdGlvbiBpbiBwcm92aWRpbmcgYWRlcXVhdGUgc2VjdXJpdHkgaW4gaXRzIGNvbXB1dGVyIGFuZCB0ZWxlY29tbXVuaWNhdGlvbiBzeXN0ZW1zLsKgIMKgVGhpcyBzdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIGFsbCBmZWRlcmFsIGFnZW5jaWVzIHRoYXQgdXNlIGNyeXB0b2dyYXBoaWMuLi4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjcHVicy1hYnN0cmFjdC1oZWFkZXIiIGlkPSJwdWItZGV0YWlsLWFicy1zaG93Ij5TZWUgZnVsbCBhYnN0cmFjdDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0icHViLWRldGFpbC1hYnN0cmFjdC1hbGwiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHNlbGVjdGl2ZSBhcHBsaWNhdGlvbiBvZiB0ZWNobm9sb2dpY2FsIGFuZCByZWxhdGVkIHByb2NlZHVyYWwgc2FmZWd1YXJkcyBpcyBhbiBpbXBvcnRhbnQgcmVzcG9uc2liaWxpdHkgb2YgZXZlcnkgZmVkZXJhbCBvcmdhbml6YXRpb24gaW4gcHJvdmlkaW5nIGFkZXF1YXRlIHNlY3VyaXR5IGluIGl0cyBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcy4mbmJzcDsgJm5ic3A7VGhpcyBzdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIGFsbCBmZWRlcmFsIGFnZW5jaWVzIHRoYXQgdXNlIGNyeXB0b2dyYXBoaWMtYmFzZWQgc2VjdXJpdHkgc3lzdGVtcyB0byBwcm90ZWN0IHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiBpbiBjb21wdXRlciBhbmQgdGVsZWNvbW11bmljYXRpb24gc3lzdGVtcyAoaW5jbHVkaW5nIHZvaWNlIHN5c3RlbXMpIGFzIGRlZmluZWQgaW4gU2VjdGlvbiA1MTMxIG9mIHRoZSBJbmZvcm1hdGlvbiBUZWNobm9sb2d5IE1hbmFnZW1lbnQgUmVmb3JtIEFjdCBvZiAxOTk2LCBQdWJsaWMgTGF3IDEwNC0xMDYgYW5kIHRoZSBGZWRlcmFsIEluZm9ybWF0aW9uIFNlY3VyaXR5IE1hbmFnZW1lbnQgQWN0IG9mIDIwMDIsIFB1YmxpYyBMYXcgMTA3LTM0Ny4mbmJzcDs8L3A+DQoNCjxwPlRoaXMgc3RhbmRhcmQgc2hhbGwgYmUgdXNlZCBpbiBkZXNpZ25pbmcgYW5kIGltcGxlbWVudGluZyBjcnlwdG9ncmFwaGljIG1vZHVsZXMgdGhhdCBmZWRlcmFsIGRlcGFydG1lbnRzIGFuZCBhZ2VuY2llcyBvcGVyYXRlIG9yIGFyZSBvcGVyYXRlZCBmb3IgdGhlbSB1bmRlciBjb250cmFjdC4mbmJzcDsgVGhlIHN0YW5kYXJkIHByb3ZpZGVzIGZvdXIgaW5jcmVhc2luZywgcXVhbGl0YXRpdmUgbGV2ZWxzIG9mIHNlY3VyaXR5IGludGVuZGVkIHRvIGNvdmVyIGEgd2lkZSByYW5nZSBvZiBwb3RlbnRpYWwgYXBwbGljYXRpb25zIGFuZCBlbnZpcm9ubWVudHMuJm5ic3A7IFRoZSBzZWN1cml0eSByZXF1aXJlbWVudHMgY292ZXIgYXJlYXMgcmVsYXRlZCB0byB0aGUgc2VjdXJlIGRlc2lnbiwgaW1wbGVtZW50YXRpb24gYW5kIG9wZXJhdGlvbiBvZiBhIGNyeXB0b2dyYXBoaWMgbW9kdWxlLiZuYnNwOyBUaGVzZSBhcmVhcyBpbmNsdWRlIGNyeXB0b2dyYXBoaWMgbW9kdWxlIHNwZWNpZmljYXRpb247IGNyeXB0b2dyYXBoaWMgbW9kdWxlIGludGVyZmFjZXM7IHJvbGVzLCBzZXJ2aWNlcywgYW5kIGF1dGhlbnRpY2F0aW9uOyBzb2Z0d2FyZS9maXJtd2FyZSBzZWN1cml0eTsgb3BlcmF0aW5nIGVudmlyb25tZW50OyBwaHlzaWNhbCBzZWN1cml0eTsgbm9uLWludmFzaXZlIHNlY3VyaXR5OyBzZW5zaXRpdmUgc2VjdXJpdHkgcGFyYW1ldGVyIG1hbmFnZW1lbnQ7IHNlbGYtdGVzdHM7IGxpZmUtY3ljbGUgYXNzdXJhbmNlOyBhbmQgbWl0aWdhdGlvbiBvZiBvdGhlciBhdHRhY2tzLjwvcD48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjcHVicy1hYnN0cmFjdC1oZWFkZXIiIGlkPSJwdWItZGV0YWlsLWFicy1oaWRlIj5IaWRlIGZ1bGwgYWJzdHJhY3Q8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGg0PktleXdvcmRzPC9oND4gPHNwYW4gaWQ9J3B1Yi1rZXl3b3Jkcy1jb250YWluZXInIGRhdGEtdG90YWw9JzknPjxzcGFuIGlkPSdwdWIta2V5d29yZC0wJz5jb21wdXRlciBzZWN1cml0eTwvc3Bhbj47IDxzcGFuIGlkPSdwdWIta2V5d29yZC0xJz50ZWxlY29tbXVuaWNhdGlvbiBzZWN1cml0eTwvc3Bhbj47IDxzcGFuIGlkPSdwdWIta2V5d29yZC0yJz5waHlzaWNhbCBzZWN1cml0eTwvc3Bhbj47IDxzcGFuIGlkPSdwdWIta2V5d29yZC0zJz5zb2Z0d2FyZSBzZWN1cml0eTwvc3Bhbj47IDxzcGFuIGlkPSdwdWIta2V5d29yZC00Jz5jcnlwdG9ncmFwaHk8L3NwYW4+OyA8c3BhbiBpZD0ncHViLWtleXdvcmQtNSc+Y3J5cHRvZ3JhcGhpYyBtb2R1bGVzPC9zcGFuPjsgPHNwYW4gaWQ9J3B1Yi1rZXl3b3JkLTYnPkZlZGVyYWwgSW5mb3JtYXRpb24gUHJvY2Vzc2luZyBTdGFuZGFyZCAoRklQUyk8L3NwYW4+OyA8c3BhbiBpZD0ncHViLWtleXdvcmQtNyc+SVNPL0lFQyAxOTc5MDoyMDEyPC9zcGFuPjsgPHNwYW4gaWQ9J3B1Yi1rZXl3b3JkLTgnPklTTy9JRUMgMjQ3NTk6MjAxNDwvc3Bhbj48L3NwYW4+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGg1PkNvbnRyb2wgRmFtaWxpZXM8L2g1Pg0KICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJwdWItY29udHJvbC1mYW0tY29udGFpbmVyIiBkYXRhLXRvdGFsPSIwIj5Ob25lIHNlbGVjdGVkPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8L3A+DQogICAgDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00IGNvbC1zbS0xMiI+DQogICAgDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnMtY2FsbG91dCBicy1jYWxsb3V0LXN1Y2Nlc3MiIGlkPSJwdWJzLWRvY3VtZW50YXRpb24iPg0KICAgICAgICAgICAgICAgICAgICA8aDQ+RG9jdW1lbnRhdGlvbjwvaDQ+DQogICAgDQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5QdWJsaWNhdGlvbjo8L3N0cm9uZz48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9kb2kub3JnLzEwLjYwMjgvTklTVC5GSVBTLjE0MC0zIiBkYXRhLWlkZW50aXR5PSJmaXJzdC1saW5rLWRpc3BsYXkiIGlkPSJwdWItZG9jLTAiPjxpIGNsYXNzPSdmYSBmYS1leHRlcm5hbC1saW5rJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPiAgRklQUyAxNDAtMyAoRE9JKTwvYT48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL252bHB1YnMubmlzdC5nb3YvbmlzdHB1YnMvRklQUy9OSVNULkZJUFMuMTQwLTMucGRmIiBkYXRhLWlkZW50aXR5PSJzZWNvbmQtbGluay1kaXNwbGF5IiBpZD0icHViLWRvYy0xIj48aSBjbGFzcz0iZmEgZmEtZmlsZS1wZGYtbyI+PC9pPiBMb2NhbCBEb3dubG9hZDwvYT48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgDQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5TdXBwbGVtZW50YWwgTWF0ZXJpYWw6PC9zdHJvbmc+PGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD0icHViLXN1cHAtY29udGFpbmVyIiBkYXRhLXRvdGFsPSIyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3Byb2plY3RzL2NtdnAiIGlkPSJwdWItc3VwcC1saW5rLTAiPjxpIGNsYXNzPSJmYSBmYS1maWxlIj48L2k+IENyeXB0b2dyYXBoaWMgTW9kdWxlIFZhbGlkYXRpb24gUHJvZ3JhbSAoQ01WUCkgKG90aGVyKTwvYT48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cubmlzdC5nb3YvbmV3cy1ldmVudHMvbmV3cy8yMDE5LzA0L25pc3QtbGlua3MtZmVkZXJhbC1lbmNyeXB0aW9uLXRlc3RpbmctaW50ZXJuYXRpb25hbC1zdGFuZGFyZC1maXJzdC10aW1lIiBpZD0icHViLXN1cHAtbGluay0xIj48aSBjbGFzcz0iZmEgZmEtZmlsZSI+PC9pPiBOSVNUIE5ld3MgQXJ0aWNsZSAob3RoZXIpPC9hPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+UmVsYXRlZCBOSVNUIFB1YmxpY2F0aW9uczo8L3N0cm9uZz48YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJwdWItcmVsYXRlZC1jb250YWluZXIiIGRhdGEtdG90YWw9IjEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9kZXRhaWwvaXRsLWJ1bGxldGluLzIwMTkvMDUvZmlwcy0xNDAtMy1hZG9wdHMtaXNvL2llYy1zdGFuZGFyZHMvZmluYWwiIGlkPSJwdWItcmVsYXRlZC1saW5rLTAiPklUTCBCdWxsZXRpbiA8L2E+PGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICANCiAgICANCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5Eb2N1bWVudCBIaXN0b3J5Ojwvc3Ryb25nPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9InB1Yi1oaXN0b3J5LWNvbnRhaW5lciIgZGF0YS10b3RhbD0iMyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPScvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE0MC8zL2RyYWZ0JyBpZD0ncHViLWhpc3RvcnktbGluay0wJyBkYXRhLWN1cnJlbnQtZG9jdW1lbnQ9J2ZhbHNlJz5EcmFmdCBGSVBTICAxNDAtMyAoNy8xMy8wNyk8L2E+PGJyLz48YSBocmVmPScvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE0MC8zL2FyY2hpdmUvMjAwOS0xMi0xMScgaWQ9J3B1Yi1oaXN0b3J5LWxpbmstMScgZGF0YS1jdXJyZW50LWRvY3VtZW50PSdmYWxzZSc+RHJhZnQgRklQUyAgMTQwLTMgKDEyLzExLzA5KTwvYT48YnIvPjxzcGFuIGlkPSdwdWItaGlzdG9yeS1saW5rLTInIGRhdGEtY3VycmVudC1kb2N1bWVudD0ndHJ1ZSc+RklQUyAgMTQwLTMgKDMvMjIvMTkpPC9zcGFuPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgDQogICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJzLWNhbGxvdXQgYnMtY2FsbG91dC1kYW5nZXIiIGlkPSJwdWJzLXRvcGljcyI+DQogICAgICAgICAgICAgICAgICAgIDxoND5Ub3BpY3M8L2g0Pg0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD0icHViLWNhdGVnb3JpZXMtY29udGFpbmVyIiBkYXRhLXRvdGFsPSIyIj4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nIGlkPSJwdWItY2F0LTAiPlNlY3VyaXR5IGFuZCBQcml2YWN5PC9zdHJvbmc+PGJyIC8+PHNwYW4gaWQ9InB1Yi1jYXQtdG9wLWNvbnRhaW5lci0wIiBkYXRhLXRvdGFsPSIyIj48L3NwYW4+PGEgaHJlZj0nL1RvcGljcy9TZWN1cml0eS1hbmQtUHJpdmFjeS9jcnlwdG9ncmFwaHknIGlkPSdwdWItY2F0LXRvcC0wLTAnPmNyeXB0b2dyYXBoeTwvYT47IA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgaWQ9InB1Yi1jYXQtMSI+TGF3cyBhbmQgUmVndWxhdGlvbnM8L3N0cm9uZz48YnIgLz48c3BhbiBpZD0icHViLWNhdC10b3AtY29udGFpbmVyLTEiIGRhdGEtdG90YWw9IjIiPjwvc3Bhbj48YSBocmVmPScvVG9waWNzL0xhd3MtYW5kLVJlZ3VsYXRpb25zL2xhd3MvRS1Hb3YtQWN0JyBpZD0ncHViLWNhdC10b3AtMS0wJz5FLUdvdmVybm1lbnQgQWN0PC9hPjsgDQogICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgDQogICAgDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgDQoNCg0KICA8L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9DU1JDL21lZGlhL2pzL3B1YmxpY2F0aW9ucy5qcyI+PC9zY3JpcHQ+DQoNCiAgPGRpdiBpZD0iZm9vdGVyLXB1c2hlciI+PC9kaXY+DQoNCjwvZGl2Pg0KDQo8Zm9vdGVyIGlkPSJmb290ZXIiPg0KPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCg0KICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJoaWRkZW4teHMiPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292IiB0aXRsZT0iTmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBhbmQgVGVjaG5vbG9neSIgcmVsPSJob21lIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImZvb3Rlci1uaXN0LWxvZ28iIGlkPSJmb290ZXItbmlzdC1sb2dvLWxpbmsiPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL0NTUkMvTWVkaWEvaW1hZ2VzL2xvZ29fcmV2LnBuZyIgYWx0PSJOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIGFuZCBUZWNobm9sb2d5IGxvZ28iIGlkPSJmb290ZXItbmlzdC1sb2dvIi8+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgPC9zcGFuPg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3cgZm9vdGVyLWNvbnRhY3QtY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIiIGlkPSJmb290ZXItYWRkcmVzcyI+DQogICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+SEVBRFFVQVJURVJTPC9zdHJvbmc+PGJyPg0KICAgICAgICAgICAgICAgICAgICAxMDAgQnVyZWF1IERyaXZlPGJyPg0KICAgICAgICAgICAgICAgICAgICBHYWl0aGVyc2J1cmcsIE1EIDIwODk5DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4NCiAgICAgICAgICAgIDx1bCBjbGFzcz0ic29jaWFsLWxpc3QgdGV4dC1yaWdodCIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyI+DQogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJmaWVsZC1pdGVtIHNlcnZpY2UtdHdpdHRlciBsaXN0LWhvcml6Ij4NCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9VU05JU1RHT1YiIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0ic29jaWFsLWJ0biBzb2NpYWwtYnRuLS1sYXJnZSBleHRsaW5rIGV4dCIgaWQ9ImZvb3Rlci1zb2NpYWwtdHdpdHRlci1saW5rIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZhIGZhLXR3aXR0ZXIgZmEtZnciPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+dHdpdHRlcjwvc3Bhbj48L2k+PHNwYW4gY2xhc3M9ImV4dCI+PHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj4gKGxpbmsgaXMgZXh0ZXJuYWwpPC9zcGFuPjwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImZpZWxkLWl0ZW0gc2VydmljZS1mYWNlYm9vayBsaXN0LWhvcml6Ij4NCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL1VTTklTVEdPViIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJzb2NpYWwtYnRuIHNvY2lhbC1idG4tLWxhcmdlIGV4dGxpbmsgZXh0IiBpZD0iZm9vdGVyLXNvY2lhbC1mYWNlYm9vay1saW5rIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZhIGZhLWZhY2Vib29rIGZhLWZ3Ij48c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPmZhY2Vib29rPC9zcGFuPjwvaT48c3BhbiBjbGFzcz0iZXh0Ij48c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPiAobGluayBpcyBleHRlcm5hbCk8L3NwYW4+PC9zcGFuPjwvYT4NCg0KICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJmaWVsZC1pdGVtIHNlcnZpY2UtbGlua2VkaW4gbGlzdC1ob3JpeiI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L25pc3QiIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0ic29jaWFsLWJ0biBzb2NpYWwtYnRuLS1sYXJnZSBleHRsaW5rIGV4dCIgaWQ9ImZvb3Rlci1zb2NpYWwtbGlua2VkaW4tbGluayI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYSBmYS1saW5rZWRpbiBmYS1mdyI+PHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj5saW5rZWRpbjwvc3Bhbj48L2k+PHNwYW4gY2xhc3M9ImV4dCI+PHNwYW4gY2xhc3M9ImVsZW1lbnQtaW52aXNpYmxlIj4gKGxpbmsgaXMgZXh0ZXJuYWwpPC9zcGFuPjwvc3Bhbj48L2E+DQoNCiAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZmllbGQtaXRlbSBzZXJ2aWNlLXlvdXR1YmUgbGlzdC1ob3JpeiI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3VzZXIvVVNOSVNUR09WIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9InNvY2lhbC1idG4gc29jaWFsLWJ0bi0tbGFyZ2UgZXh0bGluayBleHQiIGlkPSJmb290ZXItc29jaWFsLXlvdXR1YmUtbGluayI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYSBmYS15b3V0dWJlIGZhLWZ3Ij48c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPnlvdXR1YmU8L3NwYW4+PC9pPjxzcGFuIGNsYXNzPSJleHQiPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+IChsaW5rIGlzIGV4dGVybmFsKTwvc3Bhbj48L3NwYW4+PC9hPg0KDQogICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImZpZWxkLWl0ZW0gc2VydmljZS1yc3MgbGlzdC1ob3JpeiI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L25ld3MtZXZlbnRzL25pc3QtcnNzLWZlZWRzIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9InNvY2lhbC1idG4gc29jaWFsLWJ0bi0tbGFyZ2UgZXh0bGluayIgaWQ9ImZvb3Rlci1zb2NpYWwtcnNzLWxpbmsiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtcnNzIGZhLWZ3Ij48c3BhbiBjbGFzcz0iZWxlbWVudC1pbnZpc2libGUiPnJzczwvc3Bhbj48L2k+PC9hPg0KDQogICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImZpZWxkLWl0ZW0gc2VydmljZS1nb3ZkZWxpdmVyeSBsaXN0LWhvcml6IGxhc3QiPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3B1YmxpYy5nb3ZkZWxpdmVyeS5jb20vYWNjb3VudHMvVVNOSVNUL3N1YnNjcmliZXIvbmV3P3FzcD1VU05JU1RfMyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJzb2NpYWwtYnRuIHNvY2lhbC1idG4tLWxhcmdlIGV4dGxpbmsgZXh0IiB0aXRsZT0iU3Vic2NyaWJlIHRvIENTUkMgYW5kIHB1YmxpY2F0aW9uIHVwZGF0ZXMsIGFuZCBvdGhlciBOSVNUIGN5YmVyc2VjdXJpdHkgbmV3cyIgaWQ9ImZvb3Rlci1zb2NpYWwtZ292ZGVsaXZlcnktbGluayI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtZW52ZWxvcGUgZmEtZnciPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+Z292ZGVsaXZlcnk8L3NwYW4+PC9pPjxzcGFuIGNsYXNzPSJleHQiPjxzcGFuIGNsYXNzPSJlbGVtZW50LWludmlzaWJsZSI+IChsaW5rIGlzIGV4dGVybmFsKTwvc3Bhbj48L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICBXYW50IHVwZGF0ZXMgYWJvdXQgQ1NSQyBhbmQgb3VyIHB1YmxpY2F0aW9ucz8gDQogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9wdWJsaWMuZ292ZGVsaXZlcnkuY29tL2FjY291bnRzL1VTTklTVC9zdWJzY3JpYmVyL25ldz9xc3A9VVNOSVNUXzMiIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iYnRuIGJ0bi1sZyBidG4taW5mbyIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICMxMjY1OWMhaW1wb3J0YW50OyBib3JkZXItY29sb3I6ICMxMjY1OWMhaW1wb3J0YW50OyIgaWQ9ImZvb3Rlci1zdWJzY3JpYmUtbGluayI+U3Vic2NyaWJlPC9hPg0KICAgICAgICAgICAgPC9wPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJyb3cgaGlkZGVuLXNtIGhpZGRlbi1tZCBoaWRkZW4tbGciPg0KICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIiPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292IiB0aXRsZT0iTmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBhbmQgVGVjaG5vbG9neSIgcmVsPSJob21lIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImZvb3Rlci1uaXN0LWxvZ28iIGlkPSJmb290ZXItYm90dG9tLW5pc3QtbG9nby1saW5rIj4NCiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9DU1JDL01lZGlhL2ltYWdlcy9sb2dvX3Jldi5wbmciIGFsdD0iTmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBhbmQgVGVjaG5vbG9neSBsb2dvIiBpZD0iZm9vdGVyLWJvdHRvbS1uaXN0LWxvZ28iLz4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEyIj4NCiAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Im1haWx0bzp3ZWJtYXN0ZXItY3NyY0BuaXN0Lmdvdj9zdWJqZWN0PUNTUkMgSW5xdWlyeSIgaWQ9ImZvb3Rlci13ZWJtYXN0ZXItbGluayI+V2VibWFzdGVyPC9hPiB8IA0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9hYm91dC9jb250YWN0IiBpZD0iZm9vdGVyLWNvbnRhY3QtdXMtbGluayI+Q29udGFjdCBVczwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L2Fib3V0LW5pc3Qvb3VyLW9yZ2FuaXphdGlvbiIgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsiIGlkPSJmb290ZXItb3JnLWxpbmsiPk91ciBPdGhlciBPZmZpY2VzPC9hPg0KICAgICAgICAgICAgPC9wPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDxkaXYgaWQ9ImZvb3Rlci1uYXYtbWVudSIgY2xhc3M9InJvdyIgcm9sZT0ibmF2aWdhdGlvbiI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC04IGNvbC1zbS02IGNvbC14cy0xMiBjb2wteHhzLTEyIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTQiPg0KICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wcm9qZWN0cyI+UFJPSkVDVFM8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvcHVibGljYXRpb25zIj5QVUJMSUNBVElPTlM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvZHJhZnQtcHVicyI+RHJhZnQgUHViczwvYT48YnIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9maW5hbC1wdWJzIj5GaW5hbCBQdWJzPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvcHVibGljYXRpb25zL2ZpcHMiPkZJUFM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvc3AiPlNwZWNpYWwgUHVibGljYXRpb25zIChTUHMpPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvcHVibGljYXRpb25zL25pc3RpciI+TklTVElSczwvYT48YnIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9pdGwtYnVsbGV0aW4iPklUTCBCdWxsZXRpbnM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvd2hpdGUtcGFwZXIiPldoaXRlIFBhcGVyczwvYT48YnIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3B1YmxpY2F0aW9ucy9qb3VybmFsLWFydGljbGUiPkpvdXJuYWwgQXJ0aWNsZXM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvY29uZmVyZW5jZS1wYXBlciI+Q29uZmVyZW5jZSBQYXBlcnM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9wdWJsaWNhdGlvbnMvYm9vayI+Qm9va3M8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtNCI+DQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3RvcGljcyI+VE9QSUNTPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvVG9waWNzL1NlY3VyaXR5LWFuZC1Qcml2YWN5Ij5TZWN1cml0eSAmYW1wOyBQcml2YWN5PC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvVG9waWNzL0FwcGxpY2F0aW9ucyI+QXBwbGljYXRpb25zPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvVG9waWNzL1RlY2hub2xvZ2llcyI+VGVjaG5vbG9naWVzPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvVG9waWNzL1NlY3RvcnMiPlNlY3RvcnM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9Ub3BpY3MvTGF3cy1hbmQtUmVndWxhdGlvbnMiPkxhd3MgJmFtcDsgUmVndWxhdGlvbnM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9Ub3BpY3MvQWN0aXZpdGllcy1hbmQtUHJvZHVjdHMiPkFjdGl2aXRpZXMgJmFtcDsgUHJvZHVjdHM8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvbmV3cyI+TkVXUyAmYW1wOyBVUERBVEVTPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2V2ZW50cyI+RVZFTlRTPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2dsb3NzYXJ5Ij5HTE9TU0FSWTwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00Ij4NCiAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvYWJvdXQiPkFCT1VUIENTUkM8L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9hYm91dCI+Q29tcHV0ZXIgU2VjdXJpdHkgRGl2aXNpb248L2E+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9hYm91dCI+QXBwbGllZCBDeWJlcnNlY3VyaXR5IERpdmlzaW9uPC9hPjxici8+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvY29udGFjdCI+Q29udGFjdCBVczwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTQgY29sLXNtLTYgY29sLXhzLTEyIGNvbC14eHMtMTIiPg0KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwdWxsLXJpZ2h0IHRleHQtcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICA8cD48c3Ryb25nIGlkPSJmb290ZXItaW5mby1pdGwiPkluZm9ybWF0aW9uIFRlY2hub2xvZ3kgTGFib3JhdG9yeTxzcGFuIGNsYXNzPSJoaWRkZW4teHMiPiAoSVRMKTwvc3Bhbj48L3N0cm9uZz48L3A+DQogICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgaWQ9ImZvb3Rlci1pbmZvLWNzZCI+Q29tcHV0ZXIgU2VjdXJpdHkgRGl2aXNpb248c3BhbiBjbGFzcz0iaGlkZGVuLXhzIj4gKENTRCk8L3NwYW4+PC9zdHJvbmc+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9ImZvb3Rlci1pbmZvLWNzZC1waG9uZSI+VEVMOiAzMDEuOTc1Ljg0NDM8L3NwYW4+PGJyLz4NCiAgICAgICAgICAgICAgICAgICAgPHN0cm9uZyBpZD0iZm9vdGVyLWluZm8tYWNkIj5BcHBsaWVkIEN5YmVyc2VjdXJpdHkgRGl2aXNpb248c3BhbiBjbGFzcz0iaGlkZGVuLXhzIj4gKEFDRCk8L3NwYW4+PC9zdHJvbmc+DQogICAgICAgICAgICAgICAgICAgIDxiciAvPjxiciAvPjxiciAvPg0KICAgICAgICAgICAgICAgICAgICBDb250YWN0IENTUkMgV2VibWFzdGVyOiA8YSBocmVmPSJtYWlsdG86d2VibWFzdGVyLWNzcmNAbmlzdC5nb3Y/c3ViamVjdD1DU1JDIElucXVpcnkiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IiAgaWQ9ImZvb3Rlci1pbmZvLXdlYm1hc3Rlci1saW5rIj53ZWJtYXN0ZXItY3NyY0BuaXN0LmdvdjwvYT4NCiAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTEyIGZvb3Rlci1ib3R0b20tbGlua3MtY29udGFpbmVyIiBpZD0iZm9vdGVyLWJvdHRvbS1saW5rcy1jb250YWluZXIiPg0KICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L3ByaXZhY3ktcG9saWN5Ij5Qcml2YWN5IFN0YXRlbWVudDwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5LXBvbGljeSNwcml2cG9saWN5Ij5Qcml2YWN5IFBvbGljeTwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5LXBvbGljeSNzZWNub3QiPlNlY3VyaXR5IE5vdGljZTwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5LXBvbGljeSNhY2Nlc3N0YXRlIj5BY2Nlc3NpYmlsaXR5IFN0YXRlbWVudDwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5Ij5OSVNUIFByaXZhY3kgUHJvZ3JhbTwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9uby1mZWFyLWFjdC1wb2xpY3kiPk5vIEZlYXIgQWN0IFBvbGljeTwvYT4NCiAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9kaXNjbGFpbWVyIj5EaXNjbGFpbWVyPC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L29mZmljZS1kaXJlY3Rvci9mcmVlZG9tLWluZm9ybWF0aW9uLWFjdCI+Rk9JQTwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9lbnZpcm9ubWVudGFsLXBvbGljeS1zdGF0ZW1lbnQiPkVudmlyb25tZW50YWwgUG9saWN5IFN0YXRlbWVudDwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5uaXN0Lmdvdi9wcml2YWN5LXBvbGljeSNjb29raWUiPkNvb2tpZSBEaXNjbGFpbWVyPC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L3N1bW1hcnktcmVwb3J0LXNjaWVudGlmaWMtaW50ZWdyaXR5Ij5TY2llbnRpZmljIEludGVncml0eSBTdW1tYXJ5PC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm5pc3QuZ292L25pc3QtaW5mb3JtYXRpb24tcXVhbGl0eS1zdGFuZGFyZHMiPk5JU1QgSW5mb3JtYXRpb24gUXVhbGl0eSBTdGFuZGFyZHM8L2E+DQogICAgICAgICAgICA8L3A+DQogICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cudXNhLmdvdi9idXNpbmVzcyI+QnVzaW5lc3MgVVNBPC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmNvbW1lcmNlLmdvdi8iPkNvbW1lcmNlLmdvdjwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5oZWFsdGhjYXJlLmdvdi8iPkhlYWx0aGNhcmUuZ292PC9hPiB8DQogICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZS5nb3YvIj5TY2llbmNlLmdvdjwvYT4gfA0KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwOi8vd3d3LnVzYS5nb3YvIj5VU0EuZ292PC9hPg0KICAgICAgICAgICAgPC9wPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KPC9mb290ZXI+DQoNCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAoZnVuY3Rpb24oKSB7DQogICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaHRtbCcpWzBdLnNldEF0dHJpYnV0ZSgnbGFuZycsICdlbicpOw0KICAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2h0bWwnKVswXS5zZXRBdHRyaWJ1dGUoJ3htbDpsYW5nJywgJ2VuJykNCn0pKCk7IA0KPC9zY3JpcHQ+DQoNCiAgICANCiAgICA8L2Zvcm0+DQo8L2JvZHk+DQo8L2h0bWw+DQo=
|
1654
1654
|
http_version:
|
1655
|
-
recorded_at:
|
1655
|
+
recorded_at: Thu, 27 Jun 2019 16:36:20 GMT
|
1656
1656
|
- request:
|
1657
1657
|
method: get
|
1658
|
-
uri: https://csrc.nist.gov/publications/detail/fips/140/2/
|
1658
|
+
uri: https://csrc.nist.gov/publications/detail/fips/140/2/archive/2001-10-10
|
1659
1659
|
body:
|
1660
1660
|
encoding: US-ASCII
|
1661
1661
|
string: ''
|
@@ -1684,8 +1684,8 @@ http_interactions:
|
|
1684
1684
|
Server:
|
1685
1685
|
- Microsoft-IIS/8.5
|
1686
1686
|
Set-Cookie:
|
1687
|
-
- ASP.NET_SessionId=
|
1688
|
-
- CMSCsrfCookie
|
1687
|
+
- ASP.NET_SessionId=nrayka0u0fst3qt2ngel2kg2; path=/; secure; HttpOnly
|
1688
|
+
- CMSCsrfCookie=+e+pHG137hbvbEZOkRqTwNbofX7V9ggq+wAeUs0I; path=/; secure; HttpOnly
|
1689
1689
|
- CMSPreferredCulture=en-US; path=/; HttpOnly; Secure
|
1690
1690
|
X-Frame-Options:
|
1691
1691
|
- SAMEORIGIN
|
@@ -1694,9 +1694,9 @@ http_interactions:
|
|
1694
1694
|
X-Aspnet-Version:
|
1695
1695
|
- 4.0.30319
|
1696
1696
|
Date:
|
1697
|
-
-
|
1697
|
+
- Thu, 27 Jun 2019 16:36:17 GMT
|
1698
1698
|
Content-Length:
|
1699
|
-
- '
|
1699
|
+
- '39376'
|
1700
1700
|
Strict-Transport-Security:
|
1701
1701
|
- max-age=31536000
|
1702
1702
|
body:
|
@@ -1749,7 +1749,7 @@ http_interactions:
|
|
1749
1749
|
environment; cryptographic key management; electromagnetic interference/electromagnetic
|
1750
1750
|
compatibility (EMI/EMC); self-tests; design assurance; and mitigation of other
|
1751
1751
|
attacks.\"/>\r\n<meta name=\"dcterms.title\" content=\"Federal Information
|
1752
|
-
Processing Standard (FIPS) 140-2, Security Requirements for Cryptographic
|
1752
|
+
Processing Standard (FIPS) 140-2 (Withdrawn), Security Requirements for Cryptographic
|
1753
1753
|
Modules\"/>\r\n<meta name=\"dcterms.description\" content=\"This Federal Information
|
1754
1754
|
Processing Standard (140-2) specifies the security requirements that will
|
1755
1755
|
be satisfied by a cryptographic module, providing four increasing, qualitative
|
@@ -1761,39 +1761,38 @@ http_interactions:
|
|
1761
1761
|
compatibility (EMI/EMC); self-tests; design assurance; and mitigation of other
|
1762
1762
|
attacks.\"/>\r\n\r\n<!--Authors-->\r\n<meta name=\"dcterms.creator\" content=\"Author:
|
1763
1763
|
National Institute of Standards and Technology\"/>\r\n\r\n\r\n<meta name=\"dcterms.date.created\"
|
1764
|
-
scheme=\"ISO8601\" content=\"
|
1764
|
+
scheme=\"ISO8601\" content=\"2001-10-10\"/>\r\n<meta name=\"dcterms.identifier\"
|
1765
1765
|
content=\"https://content.csrc.e1a.nist.gov/publications/detail/fips/140/2\"/>\r\n<meta
|
1766
1766
|
name=\"dcterms.language\" scheme=\"DCTERMS.RFC1766\" content=\"EN-US\"/>\r\n\r\n<!--Google
|
1767
1767
|
Scholar Info-->\r\n<meta name=\"citation_title\" content=\"Security Requirements
|
1768
1768
|
for Cryptographic Modules\" />\r\n<meta name=\"citation_publication_date\"
|
1769
|
-
content=\"
|
1770
|
-
|
1771
|
-
|
1772
|
-
|
1773
|
-
|
1774
|
-
\" />\r\n<meta name=\"
|
1775
|
-
|
1776
|
-
|
1777
|
-
|
1778
|
-
content=\"
|
1779
|
-
name=\"og:url\" content=\"https://csrc.nist.gov/publications/detail/fips/140/2/final\"
|
1769
|
+
content=\"2001/10/10\" />\r\n\r\n<meta name=\"citation_technical_report_number\"
|
1770
|
+
content=\"Federal Information Processing Standard (FIPS) 140-2 (Withdrawn)\"
|
1771
|
+
/>\r\n<meta name=\"citation_technical_report_institution\" content=\"U.S.
|
1772
|
+
Department of Commerce\" />\r\n\r\n\r\n<meta name=\"citation_keywords\" content=\"computer
|
1773
|
+
security; cryptographic module; FIPS 140-2; validation; \" />\r\n<meta name=\"citation_language\"
|
1774
|
+
content=\"en\" />\r\n<meta name=\"citation_abstract_html_url\" content=\"https://csrc.nist.gov/publications/detail/fips/140/2/archive/2001-10-10\"
|
1775
|
+
/>\r\n\r\n\r\n<!--Google Scholar Authors-->\r\n<meta name=\"citation_author\"
|
1776
|
+
content=\"National Institute of Standards and Technology\" />\r\n<!-- Facebook
|
1777
|
+
OpenGraph -->\r\n<meta name=\"og:site_name\" content=\"CSRC | NIST\" />\r\n<meta
|
1778
|
+
name=\"og:type\" content=\"article\" />\r\n<meta name=\"og:url\" content=\"https://csrc.nist.gov/publications/detail/fips/140/2/archive/2001-10-10\"
|
1780
1779
|
/>\r\n<meta name=\"og:title\" content=\"Federal Information Processing Standard
|
1781
|
-
(FIPS) 140-2, Security Requirements for Cryptographic Modules\"
|
1782
|
-
name=\"og:description\" content=\"This Federal Information Processing
|
1783
|
-
(140-2) specifies the security requirements that will be satisfied
|
1784
|
-
module, providing four increasing, qualitative levels intended
|
1785
|
-
wide range of potential applications and environments. The areas
|
1786
|
-
related to the secure design and implementation of a cryptographic
|
1787
|
-
include specification; ports and interfaces; roles, services, and
|
1788
|
-
finite state model; physical security; operational environment;
|
1789
|
-
key management; electromagnetic interference/electromagnetic
|
1790
|
-
(EMI/EMC); self-tests; design assurance; and mitigation of other
|
1791
|
-
/>\r\n\r\n<meta name=\"article:author\" content=\"National Institute
|
1792
|
-
and Technology\" /></head>\r\n<body class=\"LTR Unknown ENUS
|
1793
|
-
>\r\n \r\n <form method=\"post\" action=\"/publications/detail/fips/140/2/
|
1780
|
+
(FIPS) 140-2 (Withdrawn), Security Requirements for Cryptographic Modules\"
|
1781
|
+
/>\r\n<meta name=\"og:description\" content=\"This Federal Information Processing
|
1782
|
+
Standard (140-2) specifies the security requirements that will be satisfied
|
1783
|
+
by a cryptographic module, providing four increasing, qualitative levels intended
|
1784
|
+
to cover a wide range of potential applications and environments. The areas
|
1785
|
+
covered, related to the secure design and implementation of a cryptographic
|
1786
|
+
module, include specification; ports and interfaces; roles, services, and
|
1787
|
+
authentication; finite state model; physical security; operational environment;
|
1788
|
+
cryptographic key management; electromagnetic interference/electromagnetic
|
1789
|
+
compatibility (EMI/EMC); self-tests; design assurance; and mitigation of other
|
1790
|
+
attacks.\" />\r\n\r\n<meta name=\"article:author\" content=\"National Institute
|
1791
|
+
of Standards and Technology\" /></head>\r\n<body class=\"LTR Unknown ENUS
|
1792
|
+
ContentBody\" >\r\n \r\n <form method=\"post\" action=\"/publications/detail/fips/140/2/archive/2001-10-10\"
|
1794
1793
|
id=\"form\">\r\n<input type=\"hidden\" name=\"__CMSCsrfToken\" id=\"__CMSCsrfToken\"
|
1795
|
-
value=\"
|
1796
|
-
/>\r\n<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\"
|
1794
|
+
value=\"7+B+Rxrg2WJW9s5L0m7iYcT0q8bQph39Y3aiW8LfOBjlgN58EKJeQynQQJe4INoaIsmyZGRngj/HwQVJ+cFWGwnkEMxoJ+Tru2HGFVxqnb4=\"
|
1795
|
+
/>\r\n<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\"E0/FRFoHfZe90MQrFw0+qeGJLH4Lyd73BVAVkySZpx+lR9uV/raCch+lKUu1nxRII5hzTj/rg1lNKJR/9dQofFHFsh8HqyfNzUe8C4CXBt23IUcSpe5Ev1p0GCV6PLtqatIwdOL+YStm+ppVxA7qtLx5aEETdix9rIwtNdjCnI8Dd2250TN/TMPA9IX2xg1H8/JxwwfIxZDhPahydsMRCEUNmCbZ4smDfuy3bMAiD1XdRYTkO08ZIuoFDmZLjyNF2/ivNCSQkT/7qORkYzq7nYu1TXr8+0yk2XCpEwJJxAQoSu49c0+T0wrVfVUSgN2p3iHBBGAVBMhFodIbogKn/Sde14UePY2LfKV2Xqvj470=\"
|
1797
1796
|
/>\r\n\r\n<input type=\"hidden\" name=\"lng\" id=\"lng\" value=\"en-US\" />\r\n<script
|
1798
1797
|
type=\"text/javascript\">\r\n\t//<![CDATA[\n\r\nfunction PM_Postback(param)
|
1799
1798
|
{ if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080);
|
@@ -1802,7 +1801,7 @@ http_interactions:
|
|
1802
1801
|
{ if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080);
|
1803
1802
|
}if (window.CMSContentManager) { CMSContentManager.storeContentChangedStatus();
|
1804
1803
|
};WebForm_DoCallback('m$am',param,callback,ctx,null,true); }\n//]]>\r\n</script>\r\n<script
|
1805
|
-
src=\"/ScriptResource.axd?d=uHIkleVeDJf4xS50Krz-yAlieOTPaRE8m_4JyEY6lgl-vOf9ExM-rMSxJ4O1LXHyufSgZybjgx0yESAZKWM_uJ3DelYaXYo2mZXXKnqWdw1NmivzXvnPjnIKhcpCTul4LJWE6w-lDlj5xDZgLKANicYwScCtdUIEj8slyCeyvLo1&t=
|
1804
|
+
src=\"/ScriptResource.axd?d=uHIkleVeDJf4xS50Krz-yAlieOTPaRE8m_4JyEY6lgl-vOf9ExM-rMSxJ4O1LXHyufSgZybjgx0yESAZKWM_uJ3DelYaXYo2mZXXKnqWdw1NmivzXvnPjnIKhcpCTul4LJWE6w-lDlj5xDZgLKANicYwScCtdUIEj8slyCeyvLo1&t=ffffffffa580202a\"
|
1806
1805
|
type=\"text/javascript\"></script>\r\n<script type=\"text/javascript\">\r\n\t//<![CDATA[\n\r\nvar
|
1807
1806
|
CMS = CMS || {};\r\nCMS.Application = {\r\n \"language\": \"en\",\r\n \"imagesUrl\":
|
1808
1807
|
\"/CMSPages/GetResource.ashx?image=%5bImages.zip%5d%2f\",\r\n \"isDebuggingEnabled\":
|
@@ -1932,49 +1931,44 @@ http_interactions:
|
|
1932
1931
|
<span class=\"fa fa-angle-right\"></span> <span class=\"CMSBreadCrumbsCurrentItem\">Detail</span>\r\n</ol>
|
1933
1932
|
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n <h3
|
1934
1933
|
id=\"pub-header-display-container\">\r\n <span id=\"pub-header-full-display\">FIPS
|
1935
|
-
140-2</span>\r\n \r\n
|
1936
|
-
|
1937
|
-
|
1938
|
-
id=\"pub-title\">Security Requirements for Cryptographic
|
1939
|
-
\
|
1940
|
-
href=\"#\" class=\"social-facebook\" id=\"socialFacebook\"><i
|
1941
|
-
fa-fw\" aria-hidden=\"true\"></i></a>\r\n <a
|
1942
|
-
|
1943
|
-
\
|
1944
|
-
class=\"fa fa-twitter fa-fw\"
|
1945
|
-
\
|
1946
|
-
\
|
1947
|
-
id=\"pub-topics-anchor-sm\">Documentation</a>\r\n
|
1948
|
-
\ <a href=\"#pubs-topics\"
|
1949
|
-
\
|
1950
|
-
\ class=\"
|
1951
|
-
\
|
1952
|
-
\
|
1953
|
-
id=\"pub-release-date\">May
|
1954
|
-
/>\r\n \r\n
|
1955
|
-
\
|
1956
|
-
\
|
1957
|
-
|
1958
|
-
|
1959
|
-
\ <span id='pub-planning-note'>Testing of cryptographic
|
1960
|
-
modules against FIPS 140-2 will end on September 22, 2021. See <a data-csrc-link=\"true\"
|
1961
|
-
data-node-guid=\"cb01ab28-0232-4ed9-b366-cdea724bbdea\" href=\"/projects/fips-140-3-development\">FIPS
|
1962
|
-
140-3 Development</a> for more details.</span><br />\r\n </p>\r\n
|
1934
|
+
140-2</span>\r\n \r\n <i class=\"fa fa-exclamation-triangle
|
1935
|
+
text-danger\" id=\"pub-header-withdrawn\" title=\"This publication has been
|
1936
|
+
withdrawn. See details below.\"></i>\r\n \r\n \r\n </h3>\r\n
|
1937
|
+
\ \r\n <h1 id=\"pub-title\">Security Requirements for Cryptographic
|
1938
|
+
Modules</h1>\r\n \r\n <div class=\"page-social-buttons\">\r\n
|
1939
|
+
\ <a href=\"#\" class=\"social-facebook\" id=\"socialFacebook\"><i
|
1940
|
+
class=\"fa fa-facebook fa-fw\" aria-hidden=\"true\"></i></a>\r\n <a
|
1941
|
+
href=\"#\" class=\"social-google-plus\" id=\"socialGooglePlus\"><i class=\"fa
|
1942
|
+
fa-google-plus\" aria-hidden=\"true\"></i></a>\r\n <a href=\"#\"
|
1943
|
+
class=\"social-twitter\" id=\"socialTwitter\"><i class=\"fa fa-twitter fa-fw\"
|
1944
|
+
aria-hidden=\"true\"></i></a>\r\n </div>\r\n \r\n <p class=\"hidden-lg
|
1945
|
+
hidden-md\">\r\n \r\n <a href=\"#pubs-documentation\"
|
1946
|
+
class=\"btn btn-lg btn-info\" id=\"pub-topics-anchor-sm\">Documentation</a>\r\n
|
1947
|
+
\ \r\n \r\n <a href=\"#pubs-topics\"
|
1948
|
+
class=\"btn btn-lg btn-info\" id=\"pub-topics-anchor-sm\">Topics</a>\r\n \r\n
|
1949
|
+
\ </p>\r\n \r\n <div class=\"row\">\r\n <div class=\"col-md-8
|
1950
|
+
col-sm-12 publication-panel\">\r\n \r\n \r\n
|
1951
|
+
\ \r\n <p>\r\n \r\n \r\n
|
1952
|
+
\ <strong>Date Published:</strong> <span id=\"pub-release-date\">May
|
1953
|
+
25, 2001 (Change Notice 1, 10/10/2001)</span><br />\r\n \r\n
|
1954
|
+
\ \r\n \r\n \r\n \r\n \r\n
|
1955
|
+
\ </p>\r\n \r\n <p><p><strong>Withdrawn:</strong>
|
1956
|
+
<span id='pub-withdrawn-info'>December 03, 2002 <i class='fa fa-exclamation-triangle
|
1957
|
+
text-danger' id='pub-withdrawn-icon'></i></p>\r\n \r\n \r\n
|
1963
1958
|
\ \r\n \r\n <p>\r\n \r\n
|
1964
1959
|
\ <strong>Superseded By:</strong> <span id=\"pub-superseded-container\"
|
1965
|
-
data-total=\"1\"><a href='/publications/detail/fips/140/
|
1966
|
-
\ 140-
|
1967
|
-
\
|
1968
|
-
data-total=\"1\"><a href='/publications/detail/fips/140/2/archive/2001-
|
1969
|
-
id='pub-supersedes-0'>FIPS 140-2 (May 25, 2001
|
1970
|
-
|
1971
|
-
\ <
|
1972
|
-
|
1973
|
-
|
1974
|
-
\ \r\n \r\n \r\n \r\n \r\n
|
1975
|
-
|
1976
|
-
\ <
|
1977
|
-
class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-detail-abstract-info\"><p>This
|
1960
|
+
data-total=\"1\"><a href='/publications/detail/fips/140/2/final' id='pub-superseded-by-0'>FIPS
|
1961
|
+
\ 140-2 (May 25, 2001 (Change Notice 2, 12/3/2002))</a></span><br />\r\n \r\n
|
1962
|
+
\ \r\n \r\n <strong>Supersedes:</strong> <span
|
1963
|
+
id=\"pub-supersedes-container\" data-total=\"1\"><a href='/publications/detail/fips/140/2/archive/2001-05-25'
|
1964
|
+
id='pub-supersedes-0'>FIPS 140-2 (May 25, 2001)</a></span><br />\r\n \r\n
|
1965
|
+
\ </p>\r\n \r\n \r\n <h4>Author(s)</h4>\r\n
|
1966
|
+
\ <p><strong id=\"pub-authors-container\" data-total=\"1\"><span
|
1967
|
+
id='pub-author-0'>National Institute of Standards and Technology</span></strong></p>\r\n
|
1968
|
+
\ \r\n \r\n \r\n \r\n \r\n \r\n \r\n
|
1969
|
+
\ \r\n \r\n \r\n \r\n \r\n <div class=\"bs-callout
|
1970
|
+
bs-callout-success pub-abstract-callout\">\r\n <h4 id=\"pubs-abstract-header\">Abstract</h4>\r\n
|
1971
|
+
\ <div class=\"hidden-sm hidden-xs hidden-xxs\" id=\"pub-detail-abstract-info\"><p>This
|
1978
1972
|
Federal Information Processing Standard (140-2) specifies the security requirements
|
1979
1973
|
that will be satisfied by a cryptographic module, providing four increasing,
|
1980
1974
|
qualitative levels intended to cover a wide range of potential applications
|
@@ -2004,47 +1998,26 @@ http_interactions:
|
|
2004
1998
|
attacks.</p><br />\r\n <a href=\"#pubs-abstract-header\"
|
2005
1999
|
id=\"pub-detail-abs-hide\">Hide full abstract</a>\r\n </div>\r\n
|
2006
2000
|
\ \r\n </div>\r\n <h4>Keywords</h4>
|
2007
|
-
<span id='pub-keywords-container' data-total='4'><span id='pub-keyword-0'>
|
2008
|
-
|
2009
|
-
|
2010
|
-
\ \r\n <h5>Control
|
2011
|
-
\
|
2012
|
-
data-total=\"3\">\r\n \r\n
|
2013
|
-
id=\"pub-control-fam-0\">Identification and
|
2014
|
-
\
|
2015
|
-
Protection</span>; \r\n
|
2016
|
-
id=\"pub-control-fam-2\">System
|
2017
|
-
\
|
2018
|
-
\
|
2019
|
-
class=\"bs-callout bs-callout-success\"
|
2001
|
+
<span id='pub-keywords-container' data-total='4'><span id='pub-keyword-0'>computer
|
2002
|
+
security</span>; <span id='pub-keyword-1'>cryptographic module</span>; <span
|
2003
|
+
id='pub-keyword-2'>FIPS 140-2</span>; <span id='pub-keyword-3'>validation</span></span>\r\n
|
2004
|
+
\ </div>\r\n \r\n <h5>Control
|
2005
|
+
Families</h5>\r\n <p>\r\n \r\n <span
|
2006
|
+
id=\"pub-control-fam-container\" data-total=\"3\">\r\n \r\n
|
2007
|
+
\ <span id=\"pub-control-fam-0\">Identification and
|
2008
|
+
Authentication</span>; \r\n \r\n <span
|
2009
|
+
id=\"pub-control-fam-1\">System and Communications Protection</span>; \r\n
|
2010
|
+
\ \r\n <span id=\"pub-control-fam-2\">System
|
2011
|
+
and Information Integrity</span>; \r\n </span>\r\n \r\n
|
2012
|
+
\ </p>\r\n \r\n </div>\r\n <div class=\"col-md-4
|
2013
|
+
col-sm-12\">\r\n \r\n <div class=\"bs-callout bs-callout-success\"
|
2014
|
+
id=\"pubs-documentation\">\r\n <h4>Documentation</h4>\r\n
|
2020
2015
|
\ \r\n <p>\r\n <strong>Publication:</strong><br
|
2021
|
-
/>\r\n \r\n <
|
2022
|
-
|
2023
|
-
|
2024
|
-
\ \r\n <a href=\"https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf\"
|
2025
|
-
data-identity=\"second-link-display\" id=\"pub-doc-1\"><i class=\"fa fa-file-pdf-o\"></i>
|
2026
|
-
Local Download</a><br />\r\n \r\n </p>\r\n
|
2027
|
-
\ \r\n <p>\r\n <strong>Supplemental
|
2016
|
+
/>\r\n \r\n <span id=\"pub-doc-none\">None
|
2017
|
+
available</span><br />\r\n \r\n \r\n
|
2018
|
+
\ </p>\r\n \r\n <p>\r\n <strong>Supplemental
|
2028
2019
|
Material:</strong><br />\r\n \r\n <span
|
2029
|
-
id=\"pub-supp-container\" data-total=\"
|
2030
|
-
\ <a href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips1402annexa.pdf\"
|
2031
|
-
id=\"pub-supp-link-0\"><i class=\"fa fa-file-pdf-o\"></i> Annex A: Approved
|
2032
|
-
Security Functions (pdf)</a><br />\r\n \r\n <a
|
2033
|
-
href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips1402annexb.pdf\"
|
2034
|
-
id=\"pub-supp-link-1\"><i class=\"fa fa-file-pdf-o\"></i> Annex B: Approved
|
2035
|
-
Protection Profiles (pdf)</a><br />\r\n \r\n <a
|
2036
|
-
href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips1402annexc.pdf\"
|
2037
|
-
id=\"pub-supp-link-2\"><i class=\"fa fa-file-pdf-o\"></i> Annex C: Approved
|
2038
|
-
Random Number Generators (pdf)</a><br />\r\n \r\n
|
2039
|
-
\ <a href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips1402annexd.pdf\"
|
2040
|
-
id=\"pub-supp-link-3\"><i class=\"fa fa-file-pdf-o\"></i> Annex D: Approved
|
2041
|
-
Key Establishment Techniques (pdf)</a><br />\r\n \r\n
|
2042
|
-
\ <a href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips140_2_chng2_20021203.epub\"
|
2043
|
-
id=\"pub-supp-link-4\"><i class=\"fa fa-file-text-o\"></i> FIPS 140-2 (EPUB)
|
2044
|
-
(txt)</a><br />\r\n \r\n <a
|
2045
|
-
href=\"/CSRC/media/Publications/fips/140/2/final/documents/140-1comments.pdf\"
|
2046
|
-
id=\"pub-supp-link-5\"><i class=\"fa fa-file-pdf-o\"></i> Comments on FIPS
|
2047
|
-
140-1 (Oct. 1998) (pdf)</a><br />\r\n </span>\r\n
|
2020
|
+
id=\"pub-supp-container\" data-total=\"0\">None available</span><br />\r\n
|
2048
2021
|
\ \r\n </p>\r\n \r\n
|
2049
2022
|
\ \r\n \r\n \r\n \r\n
|
2050
2023
|
\ \r\n \r\n </div>\r\n \r\n \r\n
|
@@ -2192,10 +2165,10 @@ http_interactions:
|
|
2192
2165
|
'en');\r\n document.getElementsByTagName('html')[0].setAttribute('xml:lang',
|
2193
2166
|
'en')\r\n})(); \r\n</script>\r\n\r\n \r\n </form>\r\n</body>\r\n</html>\r\n"
|
2194
2167
|
http_version:
|
2195
|
-
recorded_at:
|
2168
|
+
recorded_at: Thu, 27 Jun 2019 16:36:20 GMT
|
2196
2169
|
- request:
|
2197
2170
|
method: get
|
2198
|
-
uri: https://csrc.nist.gov/publications/detail/fips/140/2/
|
2171
|
+
uri: https://csrc.nist.gov/publications/detail/fips/140/2/final
|
2199
2172
|
body:
|
2200
2173
|
encoding: US-ASCII
|
2201
2174
|
string: ''
|
@@ -2224,8 +2197,8 @@ http_interactions:
|
|
2224
2197
|
Server:
|
2225
2198
|
- Microsoft-IIS/8.5
|
2226
2199
|
Set-Cookie:
|
2227
|
-
- ASP.NET_SessionId=
|
2228
|
-
- CMSCsrfCookie=
|
2200
|
+
- ASP.NET_SessionId=mq125wkvv3ypb0oc2xlfkhhn; path=/; secure; HttpOnly
|
2201
|
+
- CMSCsrfCookie=hRss88xx+FMqivtVWZmJpBLIdcD6/OIh5WC8Jbx8; path=/; secure; HttpOnly
|
2229
2202
|
- CMSPreferredCulture=en-US; path=/; HttpOnly; Secure
|
2230
2203
|
X-Frame-Options:
|
2231
2204
|
- SAMEORIGIN
|
@@ -2234,9 +2207,9 @@ http_interactions:
|
|
2234
2207
|
X-Aspnet-Version:
|
2235
2208
|
- 4.0.30319
|
2236
2209
|
Date:
|
2237
|
-
-
|
2210
|
+
- Thu, 27 Jun 2019 16:36:17 GMT
|
2238
2211
|
Content-Length:
|
2239
|
-
- '
|
2212
|
+
- '41636'
|
2240
2213
|
Strict-Transport-Security:
|
2241
2214
|
- max-age=31536000
|
2242
2215
|
body:
|
@@ -2289,7 +2262,7 @@ http_interactions:
|
|
2289
2262
|
environment; cryptographic key management; electromagnetic interference/electromagnetic
|
2290
2263
|
compatibility (EMI/EMC); self-tests; design assurance; and mitigation of other
|
2291
2264
|
attacks.\"/>\r\n<meta name=\"dcterms.title\" content=\"Federal Information
|
2292
|
-
Processing Standard (FIPS) 140-2
|
2265
|
+
Processing Standard (FIPS) 140-2, Security Requirements for Cryptographic
|
2293
2266
|
Modules\"/>\r\n<meta name=\"dcterms.description\" content=\"This Federal Information
|
2294
2267
|
Processing Standard (140-2) specifies the security requirements that will
|
2295
2268
|
be satisfied by a cryptographic module, providing four increasing, qualitative
|
@@ -2301,38 +2274,39 @@ http_interactions:
|
|
2301
2274
|
compatibility (EMI/EMC); self-tests; design assurance; and mitigation of other
|
2302
2275
|
attacks.\"/>\r\n\r\n<!--Authors-->\r\n<meta name=\"dcterms.creator\" content=\"Author:
|
2303
2276
|
National Institute of Standards and Technology\"/>\r\n\r\n\r\n<meta name=\"dcterms.date.created\"
|
2304
|
-
scheme=\"ISO8601\" content=\"
|
2277
|
+
scheme=\"ISO8601\" content=\"2002-12-03\"/>\r\n<meta name=\"dcterms.identifier\"
|
2305
2278
|
content=\"https://content.csrc.e1a.nist.gov/publications/detail/fips/140/2\"/>\r\n<meta
|
2306
2279
|
name=\"dcterms.language\" scheme=\"DCTERMS.RFC1766\" content=\"EN-US\"/>\r\n\r\n<!--Google
|
2307
2280
|
Scholar Info-->\r\n<meta name=\"citation_title\" content=\"Security Requirements
|
2308
2281
|
for Cryptographic Modules\" />\r\n<meta name=\"citation_publication_date\"
|
2309
|
-
content=\"
|
2310
|
-
content=\"Federal Information
|
2311
|
-
/>\r\n<meta name=\"citation_technical_report_institution\"
|
2312
|
-
Department of Commerce\" />\r\n\r\n\r\n<meta name=\"citation_keywords\"
|
2313
|
-
|
2314
|
-
|
2315
|
-
/>\r\n\r\n\r\n<!--Google
|
2316
|
-
content=\"National Institute
|
2317
|
-
OpenGraph -->\r\n<meta name=\"og:site_name\"
|
2318
|
-
|
2282
|
+
content=\"2002/12/03\" />\r\n<meta name=\"citation_doi\" content=\"https://doi.org/10.6028/NIST.FIPS.140-2\"
|
2283
|
+
/>\r\n<meta name=\"citation_technical_report_number\" content=\"Federal Information
|
2284
|
+
Processing Standard (FIPS) 140-2\" />\r\n<meta name=\"citation_technical_report_institution\"
|
2285
|
+
content=\"U.S. Department of Commerce\" />\r\n\r\n\r\n<meta name=\"citation_keywords\"
|
2286
|
+
content=\"cryptographic module; FIPS 140-2; computer security; validation;
|
2287
|
+
\" />\r\n<meta name=\"citation_language\" content=\"en\" />\r\n<meta name=\"citation_abstract_html_url\"
|
2288
|
+
content=\"https://csrc.nist.gov/publications/detail/fips/140/2/final\" />\r\n\r\n\r\n<!--Google
|
2289
|
+
Scholar Authors-->\r\n<meta name=\"citation_author\" content=\"National Institute
|
2290
|
+
of Standards and Technology\" />\r\n<!-- Facebook OpenGraph -->\r\n<meta name=\"og:site_name\"
|
2291
|
+
content=\"CSRC | NIST\" />\r\n<meta name=\"og:type\" content=\"article\" />\r\n<meta
|
2292
|
+
name=\"og:url\" content=\"https://csrc.nist.gov/publications/detail/fips/140/2/final\"
|
2319
2293
|
/>\r\n<meta name=\"og:title\" content=\"Federal Information Processing Standard
|
2320
|
-
(FIPS) 140-2
|
2321
|
-
|
2322
|
-
|
2323
|
-
|
2324
|
-
|
2325
|
-
|
2326
|
-
|
2327
|
-
|
2328
|
-
|
2329
|
-
|
2330
|
-
|
2331
|
-
|
2332
|
-
|
2294
|
+
(FIPS) 140-2, Security Requirements for Cryptographic Modules\" />\r\n<meta
|
2295
|
+
name=\"og:description\" content=\"This Federal Information Processing Standard
|
2296
|
+
(140-2) specifies the security requirements that will be satisfied by a cryptographic
|
2297
|
+
module, providing four increasing, qualitative levels intended to cover a
|
2298
|
+
wide range of potential applications and environments. The areas covered,
|
2299
|
+
related to the secure design and implementation of a cryptographic module,
|
2300
|
+
include specification; ports and interfaces; roles, services, and authentication;
|
2301
|
+
finite state model; physical security; operational environment; cryptographic
|
2302
|
+
key management; electromagnetic interference/electromagnetic compatibility
|
2303
|
+
(EMI/EMC); self-tests; design assurance; and mitigation of other attacks.\"
|
2304
|
+
/>\r\n\r\n<meta name=\"article:author\" content=\"National Institute of Standards
|
2305
|
+
and Technology\" /></head>\r\n<body class=\"LTR Unknown ENUS ContentBody\"
|
2306
|
+
>\r\n \r\n <form method=\"post\" action=\"/publications/detail/fips/140/2/final\"
|
2333
2307
|
id=\"form\">\r\n<input type=\"hidden\" name=\"__CMSCsrfToken\" id=\"__CMSCsrfToken\"
|
2334
|
-
value=\"
|
2335
|
-
/>\r\n<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\"
|
2308
|
+
value=\"UEV+VLx0KJNbmCQfcnqDhaYl1If9aswTOzRsuQ1Xb2iStb4LWxU1i2dT8kwOI6YeAeXZ4EDrfXyhjyZ4PtkW59A5BovIN/DkUfO/ih1nvP4=\"
|
2309
|
+
/>\r\n<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\"Kasuif5+5o8eIUwF+jhnug8isskK4Z8fP1+ruC8RIV7S5TqvgeMDpxj4DyajQnCE/jZp4aGMYVuy7f6BxAh4GPkNCLjZXTS2dHAX6j+qP81a+GV5iUnQW+9HTWeNld+odTZjEiavPUmvgccHZJNidUIGa5ItdGYGfz9nOnU4SG4dw9VRMN4IPMg9Qg9aMWa+MsCwPHt1jklDzyq/UHthTB9BlhV4vpMKxM/feIF62afH0ttWs8b2RCAuZC385+UWrgqCxGS6WLihuH97rPiBTBpfkN0WMIdlr4F7vJWwGPIpjIEiIg7O5Ec6LkBMqDnnF9ncikoXXoiM4hRWtNcmIw==\"
|
2336
2310
|
/>\r\n\r\n<input type=\"hidden\" name=\"lng\" id=\"lng\" value=\"en-US\" />\r\n<script
|
2337
2311
|
type=\"text/javascript\">\r\n\t//<![CDATA[\n\r\nfunction PM_Postback(param)
|
2338
2312
|
{ if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080);
|
@@ -2341,7 +2315,7 @@ http_interactions:
|
|
2341
2315
|
{ if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080);
|
2342
2316
|
}if (window.CMSContentManager) { CMSContentManager.storeContentChangedStatus();
|
2343
2317
|
};WebForm_DoCallback('m$am',param,callback,ctx,null,true); }\n//]]>\r\n</script>\r\n<script
|
2344
|
-
src=\"/ScriptResource.axd?d=uHIkleVeDJf4xS50Krz-yAlieOTPaRE8m_4JyEY6lgl-vOf9ExM-rMSxJ4O1LXHyufSgZybjgx0yESAZKWM_uJ3DelYaXYo2mZXXKnqWdw1NmivzXvnPjnIKhcpCTul4LJWE6w-lDlj5xDZgLKANicYwScCtdUIEj8slyCeyvLo1&t=
|
2318
|
+
src=\"/ScriptResource.axd?d=uHIkleVeDJf4xS50Krz-yAlieOTPaRE8m_4JyEY6lgl-vOf9ExM-rMSxJ4O1LXHyufSgZybjgx0yESAZKWM_uJ3DelYaXYo2mZXXKnqWdw1NmivzXvnPjnIKhcpCTul4LJWE6w-lDlj5xDZgLKANicYwScCtdUIEj8slyCeyvLo1&t=ffffffffa580202a\"
|
2345
2319
|
type=\"text/javascript\"></script>\r\n<script type=\"text/javascript\">\r\n\t//<![CDATA[\n\r\nvar
|
2346
2320
|
CMS = CMS || {};\r\nCMS.Application = {\r\n \"language\": \"en\",\r\n \"imagesUrl\":
|
2347
2321
|
\"/CMSPages/GetResource.ashx?image=%5bImages.zip%5d%2f\",\r\n \"isDebuggingEnabled\":
|
@@ -2471,37 +2445,42 @@ http_interactions:
|
|
2471
2445
|
<span class=\"fa fa-angle-right\"></span> <span class=\"CMSBreadCrumbsCurrentItem\">Detail</span>\r\n</ol>
|
2472
2446
|
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n <h3
|
2473
2447
|
id=\"pub-header-display-container\">\r\n <span id=\"pub-header-full-display\">FIPS
|
2474
|
-
140-2</span>\r\n \r\n <i class=\"fa
|
2475
|
-
text-
|
2476
|
-
|
2477
|
-
|
2478
|
-
|
2479
|
-
|
2480
|
-
|
2481
|
-
|
2482
|
-
|
2483
|
-
class=\"
|
2484
|
-
|
2485
|
-
|
2486
|
-
|
2487
|
-
\
|
2488
|
-
|
2489
|
-
\
|
2490
|
-
|
2491
|
-
\
|
2492
|
-
|
2493
|
-
|
2494
|
-
\ \r\n \r\n \r\n </p>\r\n \r\n
|
2495
|
-
\ <p><p><strong>Withdrawn:</strong> <span id='pub-withdrawn-info'>October
|
2496
|
-
10, 2001 <i class='fa fa-exclamation-triangle text-danger' id='pub-withdrawn-icon'></i></p>\r\n
|
2497
|
-
\ \r\n \r\n \r\n \r\n
|
2498
|
-
\ <p>\r\n \r\n <strong>Superseded
|
2499
|
-
By:</strong> <span id=\"pub-superseded-container\" data-total=\"1\"><a href='/publications/detail/fips/140/2/archive/2001-10-10'
|
2500
|
-
id='pub-superseded-by-0'>FIPS 140-2 (May 25, 2001 (Change Notice 1, 10/10/2001))</a></span><br
|
2501
|
-
/>\r\n \r\n \r\n \r\n <strong>Supersedes:</strong>
|
2502
|
-
<span id=\"pub-supersedes-container\" data-total=\"1\"><a href='/publications/detail/fips/140/1/archive/1994-01-11'
|
2503
|
-
id='pub-supersedes-0'>FIPS 140-1 (January 11, 1994)</a></span><br />\r\n
|
2448
|
+
140-2</span>\r\n \r\n \r\n <i class=\"fa
|
2449
|
+
fa-pencil-square text-warning\" id=\"pub-header-planning-note\" title=\"See
|
2450
|
+
Planning Note below.\"></i>\r\n \r\n </h3>\r\n \r\n <h1
|
2451
|
+
id=\"pub-title\">Security Requirements for Cryptographic Modules</h1>\r\n
|
2452
|
+
\ \r\n <div class=\"page-social-buttons\">\r\n <a
|
2453
|
+
href=\"#\" class=\"social-facebook\" id=\"socialFacebook\"><i class=\"fa fa-facebook
|
2454
|
+
fa-fw\" aria-hidden=\"true\"></i></a>\r\n <a href=\"#\" class=\"social-google-plus\"
|
2455
|
+
id=\"socialGooglePlus\"><i class=\"fa fa-google-plus\" aria-hidden=\"true\"></i></a>\r\n
|
2456
|
+
\ <a href=\"#\" class=\"social-twitter\" id=\"socialTwitter\"><i
|
2457
|
+
class=\"fa fa-twitter fa-fw\" aria-hidden=\"true\"></i></a>\r\n </div>\r\n
|
2458
|
+
\ \r\n <p class=\"hidden-lg hidden-md\">\r\n \r\n
|
2459
|
+
\ <a href=\"#pubs-documentation\" class=\"btn btn-lg btn-info\"
|
2460
|
+
id=\"pub-topics-anchor-sm\">Documentation</a>\r\n \r\n \r\n
|
2461
|
+
\ <a href=\"#pubs-topics\" class=\"btn btn-lg btn-info\" id=\"pub-topics-anchor-sm\">Topics</a>\r\n
|
2462
|
+
\ \r\n </p>\r\n \r\n <div class=\"row\">\r\n <div
|
2463
|
+
\ class=\"col-md-8 col-sm-12 publication-panel\">\r\n \r\n
|
2464
|
+
\ \r\n \r\n <p>\r\n \r\n
|
2465
|
+
\ \r\n <strong>Date Published:</strong> <span
|
2466
|
+
id=\"pub-release-date\">May 25, 2001 (Change Notice 2, 12/3/2002)</span><br
|
2467
|
+
/>\r\n \r\n \r\n \r\n \r\n \r\n
|
2504
2468
|
\ \r\n </p>\r\n \r\n \r\n
|
2469
|
+
\ \r\n \r\n \r\n <p>\r\n
|
2470
|
+
\ <strong>Planning Note (<span id='pub-planning-note-date'>3/22/2019</span>):</strong>
|
2471
|
+
\r\n <i class=\"fa fa-pencil-square text-warning\" id='pub-planning-note-icon'></i>\r\n
|
2472
|
+
\ <span id='pub-planning-note'>Testing of cryptographic
|
2473
|
+
modules against FIPS 140-2 will end on September 22, 2021. See <a data-csrc-link=\"true\"
|
2474
|
+
data-node-guid=\"cb01ab28-0232-4ed9-b366-cdea724bbdea\" href=\"/projects/fips-140-3-development\">FIPS
|
2475
|
+
140-3 Development</a> for more details.</span><br />\r\n </p>\r\n
|
2476
|
+
\ \r\n \r\n <p>\r\n \r\n
|
2477
|
+
\ <strong>Superseded By:</strong> <span id=\"pub-superseded-container\"
|
2478
|
+
data-total=\"1\"><a href='/publications/detail/fips/140/3/final' id='pub-superseded-by-0'>FIPS
|
2479
|
+
\ 140-3 (March 22, 2019)</a></span><br />\r\n \r\n \r\n
|
2480
|
+
\ \r\n <strong>Supersedes:</strong> <span id=\"pub-supersedes-container\"
|
2481
|
+
data-total=\"1\"><a href='/publications/detail/fips/140/2/archive/2001-10-10'
|
2482
|
+
id='pub-supersedes-0'>FIPS 140-2 (May 25, 2001 (Change Notice 1, 10/10/2001))</a></span><br
|
2483
|
+
/>\r\n \r\n </p>\r\n \r\n \r\n
|
2505
2484
|
\ <h4>Author(s)</h4>\r\n <p><strong id=\"pub-authors-container\"
|
2506
2485
|
data-total=\"1\"><span id='pub-author-0'>National Institute of Standards and
|
2507
2486
|
Technology</span></strong></p>\r\n \r\n \r\n \r\n \r\n
|
@@ -2538,26 +2517,47 @@ http_interactions:
|
|
2538
2517
|
attacks.</p><br />\r\n <a href=\"#pubs-abstract-header\"
|
2539
2518
|
id=\"pub-detail-abs-hide\">Hide full abstract</a>\r\n </div>\r\n
|
2540
2519
|
\ \r\n </div>\r\n <h4>Keywords</h4>
|
2541
|
-
<span id='pub-keywords-container' data-total='4'><span id='pub-keyword-0'>
|
2542
|
-
|
2543
|
-
|
2544
|
-
\ </
|
2545
|
-
|
2546
|
-
|
2547
|
-
|
2548
|
-
|
2549
|
-
|
2550
|
-
|
2551
|
-
|
2552
|
-
\
|
2553
|
-
|
2554
|
-
id=\"pubs-documentation\">\r\n <h4>Documentation</h4>\r\n
|
2520
|
+
<span id='pub-keywords-container' data-total='4'><span id='pub-keyword-0'>cryptographic
|
2521
|
+
module</span>; <span id='pub-keyword-1'>FIPS 140-2</span>; <span id='pub-keyword-2'>computer
|
2522
|
+
security</span>; <span id='pub-keyword-3'>validation</span></span>\r\n </div>\r\n
|
2523
|
+
\ \r\n <h5>Control Families</h5>\r\n <p>\r\n
|
2524
|
+
\ \r\n <span id=\"pub-control-fam-container\"
|
2525
|
+
data-total=\"3\">\r\n \r\n <span
|
2526
|
+
id=\"pub-control-fam-0\">Identification and Authentication</span>; \r\n \r\n
|
2527
|
+
\ <span id=\"pub-control-fam-1\">System and Communications
|
2528
|
+
Protection</span>; \r\n \r\n <span
|
2529
|
+
id=\"pub-control-fam-2\">System and Information Integrity</span>; \r\n </span>\r\n
|
2530
|
+
\ \r\n </p>\r\n \r\n </div>\r\n
|
2531
|
+
\ <div class=\"col-md-4 col-sm-12\">\r\n \r\n <div
|
2532
|
+
class=\"bs-callout bs-callout-success\" id=\"pubs-documentation\">\r\n <h4>Documentation</h4>\r\n
|
2555
2533
|
\ \r\n <p>\r\n <strong>Publication:</strong><br
|
2556
|
-
/>\r\n \r\n <
|
2557
|
-
|
2558
|
-
|
2534
|
+
/>\r\n \r\n <a href=\"https://doi.org/10.6028/NIST.FIPS.140-2\"
|
2535
|
+
data-identity=\"first-link-display\" id=\"pub-doc-0\"><i class='fa fa-external-link'
|
2536
|
+
aria-hidden='true'></i> FIPS 140-2 (DOI)</a><br />\r\n \r\n
|
2537
|
+
\ \r\n <a href=\"https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf\"
|
2538
|
+
data-identity=\"second-link-display\" id=\"pub-doc-1\"><i class=\"fa fa-file-pdf-o\"></i>
|
2539
|
+
Local Download</a><br />\r\n \r\n </p>\r\n
|
2540
|
+
\ \r\n <p>\r\n <strong>Supplemental
|
2559
2541
|
Material:</strong><br />\r\n \r\n <span
|
2560
|
-
id=\"pub-supp-container\" data-total=\"
|
2542
|
+
id=\"pub-supp-container\" data-total=\"6\">\r\n \r\n
|
2543
|
+
\ <a href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips1402annexa.pdf\"
|
2544
|
+
id=\"pub-supp-link-0\"><i class=\"fa fa-file-pdf-o\"></i> Annex A: Approved
|
2545
|
+
Security Functions (pdf)</a><br />\r\n \r\n <a
|
2546
|
+
href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips1402annexb.pdf\"
|
2547
|
+
id=\"pub-supp-link-1\"><i class=\"fa fa-file-pdf-o\"></i> Annex B: Approved
|
2548
|
+
Protection Profiles (pdf)</a><br />\r\n \r\n <a
|
2549
|
+
href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips1402annexc.pdf\"
|
2550
|
+
id=\"pub-supp-link-2\"><i class=\"fa fa-file-pdf-o\"></i> Annex C: Approved
|
2551
|
+
Random Number Generators (pdf)</a><br />\r\n \r\n
|
2552
|
+
\ <a href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips1402annexd.pdf\"
|
2553
|
+
id=\"pub-supp-link-3\"><i class=\"fa fa-file-pdf-o\"></i> Annex D: Approved
|
2554
|
+
Key Establishment Techniques (pdf)</a><br />\r\n \r\n
|
2555
|
+
\ <a href=\"/CSRC/media/Publications/fips/140/2/final/documents/fips140_2_chng2_20021203.epub\"
|
2556
|
+
id=\"pub-supp-link-4\"><i class=\"fa fa-file-text-o\"></i> FIPS 140-2 (EPUB)
|
2557
|
+
(txt)</a><br />\r\n \r\n <a
|
2558
|
+
href=\"/CSRC/media/Publications/fips/140/2/final/documents/140-1comments.pdf\"
|
2559
|
+
id=\"pub-supp-link-5\"><i class=\"fa fa-file-pdf-o\"></i> Comments on FIPS
|
2560
|
+
140-1 (Oct. 1998) (pdf)</a><br />\r\n </span>\r\n
|
2561
2561
|
\ \r\n </p>\r\n \r\n
|
2562
2562
|
\ \r\n \r\n \r\n \r\n
|
2563
2563
|
\ \r\n \r\n </div>\r\n \r\n \r\n
|
@@ -2705,5 +2705,5 @@ http_interactions:
|
|
2705
2705
|
'en');\r\n document.getElementsByTagName('html')[0].setAttribute('xml:lang',
|
2706
2706
|
'en')\r\n})(); \r\n</script>\r\n\r\n \r\n </form>\r\n</body>\r\n</html>\r\n"
|
2707
2707
|
http_version:
|
2708
|
-
recorded_at:
|
2708
|
+
recorded_at: Thu, 27 Jun 2019 16:36:20 GMT
|
2709
2709
|
recorded_with: VCR 5.0.0
|