PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSI+PHRpdGxlPlJlc3BvbnNlIGRhdGEgaGFuZGxpbmc8L3RpdGxlPjxtZXRhIG5hbWU9ImdlbmVyYXRvciIgY29udGVudD0iRG9jQm9vayBYU0wgU3R5bGVzaGVldHMgVjEuNzUuMSI+PGxpbmsgcmVsPSJob21lIiBocmVmPSJpbmRleC5odG1sIiB0aXRsZT0iV2Vic2ggUmVmZXJlbmNlIDMuNi4wYjUiPjxsaW5rIHJlbD0idXAiIGhyZWY9ImluZGV4Lmh0bWwiIHRpdGxlPSJXZWJzaCBSZWZlcmVuY2UgMy42LjBiNSI+PGxpbmsgcmVsPSJwcmV2IiBocmVmPSJyZXF1ZXN0X2RhdGFfaGFuZGxpbmcuaHRtbCIgdGl0bGU9IlJlcXVlc3QgZGF0YSBoYW5kbGluZyI+PGxpbmsgcmVsPSJuZXh0IiBocmVmPSJsb2dnaW5nLmh0bWwiIHRpdGxlPSJMb2dnaW5nIj48L2hlYWQ+PGJvZHkgYmdjb2xvcj0id2hpdGUiIHRleHQ9ImJsYWNrIiBsaW5rPSIjMDAwMEZGIiB2bGluaz0iIzg0MDA4NCIgYWxpbms9IiMwMDAwRkYiPjxkaXYgY2xhc3M9Im5hdmhlYWRlciI+PHRhYmxlIHdpZHRoPSIxMDAlIiBzdW1tYXJ5PSJOYXZpZ2F0aW9uIGhlYWRlciI+PHRyPjx0aCBjb2xzcGFuPSIzIiBhbGlnbj0iY2VudGVyIj5SZXNwb25zZSBkYXRhIGhhbmRsaW5nPC90aD48L3RyPjx0cj48dGQgd2lkdGg9IjIwJSIgYWxpZ249ImxlZnQiPjxhIGFjY2Vzc2tleT0icCIgaHJlZj0icmVxdWVzdF9kYXRhX2hhbmRsaW5nLmh0bWwiPlByZXY8L2E+oDwvdGQ+PHRoIHdpZHRoPSI2MCUiIGFsaWduPSJjZW50ZXIiPqA8L3RoPjx0ZCB3aWR0aD0iMjAlIiBhbGlnbj0icmlnaHQiPqA8YSBhY2Nlc3NrZXk9Im4iIGhyZWY9ImxvZ2dpbmcuaHRtbCI+TmV4dDwvYT48L3RkPjwvdHI+PC90YWJsZT48aHI+PC9kaXY+PGRpdiBjbGFzcz0ic2VjdGlvbiIgdGl0bGU9IlJlc3BvbnNlIGRhdGEgaGFuZGxpbmciPjxkaXYgY2xhc3M9InRpdGxlcGFnZSI+PGRpdj48ZGl2PjxoMiBjbGFzcz0idGl0bGUiIHN0eWxlPSJjbGVhcjogYm90aCI+PGEgbmFtZT0icmVzcG9uc2VfZGF0YV9oYW5kbGluZyI+PC9hPlJlc3BvbnNlIGRhdGEgaGFuZGxpbmc8L2gyPjwvZGl2PjwvZGl2PjwvZGl2PjxwIHN0eWxlPSJ3aWR0aDo5MCUiPgogICAgICBXZWJzaCBjYW4gc2VuZCBvdXRwdXQgdG8gYW55IFRjbCBjaGFubmVsIGFuZCB0byBnbG9iYWwKICAgICAgdmFyaWFibGVzICg8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OnB1dDwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+KS4gT3B0aW9uYWxseSwgZGF0YSBpcwogICAgICBzY2FubmVkIGZvciBUY2wgY29kZSBiZWZvcmUgaXQgaXMgb3V0cHV0IHRvIGEgY2hhbm5lbAogICAgICAoPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpwdXR4PC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4pLiBXZWJzaCBtYW5hZ2VzCiAgICAgIDxzcGFuIGNsYXNzPSJlbXBoYXNpcyI+PGVtPnJlc3BvbnNlIG9iamVjdHM8L2VtPjwvc3Bhbj4gdGhhdCBhcmUgcmVsYXRlZCB0byBUY2wKICAgICAgY2hhbm5lbHMgYW5kIGFyZSBpZGVudGlmaWVkIHVzaW5nIHRoZSBuYW1lIG9mIHRoZSBjb3JyZXNwb25kaW5nCiAgICAgIFRjbCBjaGFubmVsLiBDb25maWd1cmF0aW9uIGlzIGFjaGlldmVkIHdpdGgKICAgICAgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpyZXNwb25zZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+LgogICAgPC9wPjxkaXYgY2xhc3M9InNlY3Rpb24iIHRpdGxlPSJ3ZWI6OnJlc3BvbnNlIj48ZGl2IGNsYXNzPSJ0aXRsZXBhZ2UiPjxkaXY+PGRpdj48aDMgY2xhc3M9InRpdGxlIj48YSBuYW1lPSJ3ZWI6OnJlc3BvbnNlIj48L2E+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpyZXNwb25zZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+PC9oMz48L2Rpdj48L2Rpdj48L2Rpdj48cCBzdHlsZT0id2lkdGg6OTAlIj4KCgoKCTwvcD48ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyI+PHNwYW4gc3R5bGU9ImJhY2tncm91bmQ6I2JiYmJmZiI+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OmJvbGQiPjxjb2RlIGNsYXNzPSJjb21tYW5kIj53ZWI6OnJlc3BvbnNlPC9jb2RlPjwvc3Bhbj4gPC9zcGFuPjwvZGl2PjxwIHN0eWxlPSJ3aWR0aDo5MCUiPgoJPC9wPjxkaXYgY2xhc3M9ImNtZHN5bm9wc2lzIj48c3BhbiBzdHlsZT0iYmFja2dyb3VuZDojYmJiYmZmIj48c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZCI+PGNvZGUgY2xhc3M9ImNvbW1hbmQiPndlYjo6cmVzcG9uc2U8L2NvZGU+PC9zcGFuPiAgPzxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPm9wdGlvbjwvY29kZT48L2VtPj88L3NwYW4+PC9kaXY+PHAgc3R5bGU9IndpZHRoOjkwJSI+Cgk8L3A+PGRpdiBjbGFzcz0iY21kc3lub3BzaXMiPjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kOiNiYmJiZmYiPjxzcGFuIHN0eWxlPSJmb250LXdlaWdodDpib2xkIj48Y29kZSBjbGFzcz0iY29tbWFuZCI+d2ViOjpyZXNwb25zZTwvY29kZT48L3NwYW4+ICA/PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+c3ViY29tbWFuZDwvY29kZT48L2VtPj8gPGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+YXJnczwvY29kZT48L2VtPjwvc3Bhbj48L2Rpdj48cCBzdHlsZT0id2lkdGg6OTAlIj4KCglTdWJjb21tYW5kcyBhcmUgPHR0Pi1zZWxlY3Q8L3R0PiwKCTx0dD4tc2V0PC90dD4sIDx0dD4tbGFwcGVuZDwvdHQ+LAoJPHR0Pi1uYW1lczwvdHQ+LCA8dHQ+LWNvdW50PC90dD4sCgk8dHQ+LXVuc2V0PC90dD4sIDx0dD4tcmVzZXQ8L3R0PiwgYW5kCgk8dHQ+LXJlc2V0YWxsPC90dD4gT3B0aW9ucyBhcmUKCTx0dD4tc2VuZGhlYWRlcjwvdHQ+LCA8dHQ+LWh0dHByZXNwb25zZTwvdHQ+LAoJYW5kIDx0dD4tYnl0ZXNzZW50PC90dD4uPC9wPjxwIHN0eWxlPSJ3aWR0aDo5MCUiPgoKCVNlbGVjdHMgdGhlIGRlZmF1bHQgcmVzcG9uc2Ugb2JqZWN0IGFuZCBzZXRzIGFuZCBhY2Nlc3NlcwoJcHJvcGVydGllcyBvZiB0aGUgcmVzcG9uc2Ugb2JqZWN0LCBhbmQgcmV0dXJucyB0aGUgbmFtZSBvZiB0aGUKCXJlc3BvbnNlIG9iamVjdC4KICAgICAgPC9wPjxwIHN0eWxlPSJ3aWR0aDo5MCUiPgoJPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PGRsPjxkdD48c3BhbiBzdHlsZT0iYmFja2dyb3VuZDojYmJiYmZmIj48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpyZXNwb25zZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L2R0PjxkZD48ZGl2IHN0eWxlPSJwYWRkaW5nOjQgOyBtYXJnaW4tdG9wOjMgOyAgbWFyZ2luLWJvdHRvbTozIDsgd2lkdGg6NzUlIj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjYiPgoJCVJldHVybnMgdGhlIG5hbWUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCByZXNwb25zZSBvYmplY3QuCgkgICAgICA8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBzdHlsZT0iYmFja2dyb3VuZDojYmJiYmZmIj48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpyZXNwb25zZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+CgkgICAgICA8dHQ+LXNlbGVjdDwvdHQ+CgkgICAgICA/PHNwYW4gY2xhc3M9Im9wdGlvbmFsIj48dHQ+IzwvdHQ+PC9zcGFuPj88ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5jaGFubmVsTmFtZTwvY29kZT48L2VtPgoJICAgIDwvc3Bhbj48L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbTo2Ij4KCQlTZWxlY3RzIDx0dD48ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5jaGFubmVsTmFtZTwvY29kZT48L2VtPjwvdHQ+CgkJYXMgbmV3IHJlc3BvbnNlCW9iamVjdC4gSWYgdGhlCgkJPHR0PjxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPmNoYW5uZWxOYW1lPC9jb2RlPjwvZW0+PC90dD4gaXMKCQlwcmVwZW5kZWQgYnkgYSA8dHQ+IzwvdHQ+LCBpdCByZWZlcnMgdG8gYSBnbG9iYWwgCiAgICAgICAgICAgICAgICB2YXJpYWJsZSBuYW1lZAoJCTx0dD48ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5jaGFubmVsTmFtZTwvY29kZT48L2VtPjwvdHQ+LgoJICAgICAgPC9kaXY+PC9kaXY+PC9kZD48ZHQ+PHNwYW4gc3R5bGU9ImJhY2tncm91bmQ6I2JiYmJmZiI+PHNwYW4gY2xhc3M9InRlcm0iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPndlYjo6cmVzcG9uc2U8L3N0cm9uZz48L3NwYW4+PC9zcGFuPgoJICAgICAgPHR0Pi1zZXQ8L3R0PiA8dHQ+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+a2V5PC9jb2RlPjwvZW0+PC90dD4KCSAgICAgID88c3BhbiBjbGFzcz0ib3B0aW9uYWwiPjx0dD48ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT52YWx1ZTwvY29kZT48L2VtPjwvdHQ+PC9zcGFuPj88L3NwYW4+PC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206NiI+CgkJU2V0cyBwcm9wZXJ0eSA8dHQ+a2V5PC90dD4gdG8KCQk8dHQ+dmFsdWU8L3R0Piwgb3IgcmV0dXJucyBjdXJyZW50IHZhbHVlIGlmCgkJPHR0PnZhbHVlPC90dD4gaXMgb21pdHRlZC4gIFRoZQoJCTx0dD5rZXlzPC90dD4gYXJlIG5hbWVzIG9mIEhUVFAgaGVhZGVyIGZpZWxkcwoJCShkbyBub3QgaW5jbHVkZSAnOicgYXQgdGhlIGVuZCBvZiB0aGUgaGVhZGVyIGZpZWxkCgkJbmFtZSkgYW5kIDx0dD52YWx1ZTwvdHQ+IHRoZSBjb3JyZXNwb25kaW5nCgkJdmFsdWUgb2YgdGhlIGZpZWxkIChsaWtlIENvbnRlbnQtVHlwZSkgYW5kIHRoZWlyCgkJdmFsdWVzIChsaWtlIHRleHQvaHRtbCkuPC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbTo2Ij4KCQlFeGFtcGxlOjwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206NiI+IDxjb2RlIGNsYXNzPSJsaXRlcmFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OnJlc3BvbnNlPC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4gLXNldCBDb250ZW50LVR5cGUgdGV4dC9wbGFpbjwvY29kZT4uCgkgICAgICA8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBzdHlsZT0iYmFja2dyb3VuZDojYmJiYmZmIj48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpyZXNwb25zZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+CgkgICAgICA8dHQ+LW5hbWVzPC90dD48L3NwYW4+PC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206NiI+CgkJUmV0dXJucyB0aGUgbGlzdCBvZiBrbm93biBrZXlzLgoJICAgICAgPC9kaXY+PC9kaXY+PC9kZD48ZHQ+PHNwYW4gc3R5bGU9ImJhY2tncm91bmQ6I2JiYmJmZiI+PHNwYW4gY2xhc3M9InRlcm0iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPndlYjo6cmVzcG9uc2U8L3N0cm9uZz48L3NwYW4+PC9zcGFuPgoJICAgICAgPHR0Pi1jb3VudDwvdHQ+IDx0dD48ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5rZXk8L2NvZGU+PC9lbT48L3R0Pjwvc3Bhbj48L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbTo2Ij4KCQlSZXR1cm5zIG51bWJlciBvZiBpdGVtcyBpbiBsaXN0IG9mIDx0dD5rZXk8L3R0Pi4KCSAgICAgIDwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kOiNiYmJiZmYiPjxzcGFuIGNsYXNzPSJ0ZXJtIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OnJlc3BvbnNlPC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4KCSAgICAgIDx0dD4tdW5zZXQ8L3R0PgoJICAgICAgPzxzcGFuIGNsYXNzPSJvcHRpb25hbCI+PHR0PjxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPmtleTwvY29kZT48L2VtPjwvdHQ+PC9zcGFuPj88L3NwYW4+PC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206NiI+CgkJRGVsZXRlcyB0aGUgdmFsdWUgb2YgPHR0PmtleTwvdHQ+LCBpZgoJCTx0dD5rZXk8L3R0PiBpcyBnaXZlbiwgb3IgYWxsIGtleXMuCgkgICAgICA8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBzdHlsZT0iYmFja2dyb3VuZDojYmJiYmZmIj48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpyZXNwb25zZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+CgkgICAgICA8dHQ+LXNlbmRoZWFkZXI8L3R0PgoJICAgICAgPzxzcGFuIGNsYXNzPSJvcHRpb25hbCI+PHR0PmJvb2xlYW48L3R0Pjwvc3Bhbj4/PC9zcGFuPjwvc3Bhbj48L2R0PjxkZD48ZGl2IHN0eWxlPSJwYWRkaW5nOjQgOyBtYXJnaW4tdG9wOjMgOyAgbWFyZ2luLWJvdHRvbTozIDsgd2lkdGg6NzUlIj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjYiPgoJCVNldHMgb3IgZ2V0cyB0aGUgc2VuZGhlYWRlciBmbGFnIHdoaWNoIGluZGljYXRlcyBhbmQgY29udHJvbHMKCQl3aGV0aGVyIHRoZSBIVFRQIGhlYWRlcnMgaGF2ZSBiZWVuIG9yIHNob3VsZCBiZSBzZW50LgoJCUl0IGlzIGluaXRpYWxseSBzZXQgdG8gMSBhbmQgc2V0IHRvIDAgYWZ0ZXIgdGhlIGZpcnN0CgkJY2FsbCBvZiA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OnB1dDwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+IG9yCgkJPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpwdXR4PC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4uIElmCgkJPHR0PmJvb2xlYW48L3R0PiBpcyBvbWl0dGVkLCByZXR1cm5zIHRoZQoJCWN1cnJlbnQgdmFsdWUuCgkgICAgICA8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBzdHlsZT0iYmFja2dyb3VuZDojYmJiYmZmIj48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpyZXNwb25zZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+CgkgICAgICA8dHQ+LWh0dHByZXNwb25zZTwvdHQ+CgkgICAgICA/PHNwYW4gY2xhc3M9Im9wdGlvbmFsIj48dHQ+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+dmFsdWU8L2NvZGU+PC9lbT48L3R0Pjwvc3Bhbj4/PC9zcGFuPjwvc3Bhbj48L2R0PjxkZD48ZGl2IHN0eWxlPSJwYWRkaW5nOjQgOyBtYXJnaW4tdG9wOjMgOyAgbWFyZ2luLWJvdHRvbTozIDsgd2lkdGg6NzUlIj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjYiPgoJCVNldHMgb3IgZ2V0cyB0aGUgSFRUUCByZXNwb25zZSBsaWtlICJIVFRQLzEuMCAyMDAKCQlPSyIgZm9yIHRoZSBnaXZlbiAob3IgZGVmYXVsdCkgY2hhbm5lbC4gSWYgbm8KCQk8dHQ+dmFsdWU8L3R0PiBnaXZlbiwgcmV0dXJucyB0aGUgdGhlIGN1cnJlbnQKCQlIVFRQIHJlc3BvbnNlIHNldC4gSW4gdGhlIGNhc2Ugb2YgdGhlIEFwYWNoZSBtb2R1bGUKCQltb2Rfd2Vic2gsIEFwYWNoZSByZXBsYWNlcyB0aGUgcHJvdG9jb2wKCQkiSFRUUC8/PyIgaW4gdGhlIHJlcG9uc2Ugd2l0aAoJCSJIVFRQLzEuMSIuCgkgICAgICA8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjYiPgoJCTxzcGFuIGNsYXNzPSJlbXBoYXNpcyI+PGVtPk5vdGU8L2VtPjwvc3Bhbj46IERlcGVuZGluZyBvbiB0aGUgQ0dJCgkJaW1wbGVtZW50YXRpb24gb2YgeW91ciB3ZWIKCQlzZXJ2ZXIsIHRoaXMgZG9lcyBub3QgYWx3YXlzIHdvcmsuIEEgd29ya2luZyBhbHRlcm5hdGl2ZSAKCQlmb3IgbmV3ZXIgdmVyc2lvbnMgb2YgQXBhY2hlIGlzIHRvIHNldCBhIFN0YXR1cyBoZWFkZXIgCgkJaW4gdGhlIHJlc3BvbnNlIGFzIGZvbGxvd3M6CgkgICAgICA8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjYiPiA8Y29kZSBjbGFzcz0ibGl0ZXJhbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpyZXNwb25zZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+IC1zZXQgU3RhdHVzICI0MDAgQmFkIFJlcXVlc3QiPC9jb2RlPi4KCSAgICAgIDwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kOiNiYmJiZmYiPjxzcGFuIGNsYXNzPSJ0ZXJtIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OnJlc3BvbnNlPC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4KCSAgICAgIDx0dD4tYnl0ZXNzZW50PC90dD48L3NwYW4+PC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206NiI+CgkJUmV0dXJucyB0aGUgbnVtYmVyIG9mIGJ5dGVzIHRoYXQgaGF2ZSBhbHJlYWR5IGJlZW4gc2VudCB0byB0aGlzCgkJY2hhbm5lbC4KCSAgICAgIDwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kOiNiYmJiZmYiPjxzcGFuIGNsYXNzPSJ0ZXJtIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OnJlc3BvbnNlPC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4KCSAgICAgIDx0dD4tcmVzZXQ8L3R0Pjwvc3Bhbj48L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbTo2Ij4KCQlSZXNldHMgdGhlICdzZW5kaGVhZGVyJyBmbGFnIGZvciB0aGUgY2hhbm5lbCB0byB0cnVlLAoJCXRoZSBIVFRQIHJlc3BvbnNlIHRvIHRoZSBkZWZhdWx0ICJIVFRQLz8/IDIwMAoJCU9LIiwgcmVtb3ZlcyBhbnkgSFRUUCBoZWFkZXJzIHNldCwgYW5kIHJlc2V0cyB0aGUKCQluYW1lcyBvZiB0aGUgcXVlcnkgc3RyaW5nIHBhcmFtZXRlcnMgZm9yIHRoZSB0aW1lc3RhbXAKCQlhbmQgdGhlIGNvbW1hbmQgdG8gdGhlaXIgZGVmYXVsdCB2YWx1ZXMgKCJ0IgoJCWFuZCAiY21kIiwgcmVzcGVjdGl2ZWx5KS4KCSAgICAgIDwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kOiNiYmJiZmYiPjxzcGFuIGNsYXNzPSJ0ZXJtIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OnJlc3BvbnNlPC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4KCSAgICAgIDx0dD4tcmVzZXRhbGw8L3R0Pjwvc3Bhbj48L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbTo2Ij4KCQlQZXJmb3JtcyBhIDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPndlYjo6cmVzcG9uc2UgLXJlc2V0PC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4gb24gYWxsCgkJcmVnaXN0ZXJlZCBjaGFubmVscy4KCSAgICAgIDwvZGl2PjwvZGl2PjwvZGQ+PC9kbD48L2Rpdj48cCBzdHlsZT0id2lkdGg6OTAlIj4KCTwvcD48ZGl2IGNsYXNzPSJleGFtcGxlIj48YSBuYW1lPSJpZDI3Mzc3MDUiPjwvYT48cCBjbGFzcz0idGl0bGUiPjxiPkV4YW1wbGWgMTAuoDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj53ZWI6OnJlc3BvbnNlPC9zcGFuPjwvc3Bhbj48L2I+PC9wPjxkaXYgY2xhc3M9ImV4YW1wbGUtY29udGVudHMiPjxwcmUgc3R5bGU9ImJhY2tncm91bmQ6I2JiZmZiYiA7IHdpZHRoOjc1JSIgY2xhc3M9InByb2dyYW1saXN0aW5nIj4KJSB3ZWI6OnJlc3BvbnNlCnN0ZG91dAolIHdlYjo6cmVzcG9uc2UgLXNlbGVjdCBzdGRlcnIKc3Rkb3V0CiUgd2ViOjpyZXNwb25zZQpzdGRlcnIKJSB3ZWI6OnJlc3BvbnNlIC1zZW5kaGVhZGVyCjEKJSB3ZWI6OnJlc3BvbnNlIC1uYW1lcwpDb250ZW50LVR5cGUgR2VuZXJhdG9yCiUgd2ViOjpyZXNwb25zZSBDb250ZW50LVR5cGUKdGV4dC9odG1sCiUgd2ViOjpyZXNwb25zZSAtYnl0ZXNzZW50CjAKJSB3ZWI6OnJlc3BvbnNlIC1zZXQgU2V0LUNvb2tpZSAibXkgY29va2llIHRoYXQgY29udGFpbnMgZGF0YSIKJSB3ZWI6OnB1dCAiSGVsbG8sIHdvcmxkXG4iCkNvbnRlbnQtVHlwZTogdGV4dC9odG1sClNldC1Db29raWU6IG15IGNvb2tpZSB0aGF0IGNvbnRhaW5zIGRhdGEKR2VuZXJhdG9yOiB3ZWJzaDMuNi4wCgpIZWxsbywgd29ybGQKJQkgIDwvcHJlPjwvZGl2PjwvZGl2PjxwIHN0eWxlPSJ3aWR0aDo5MCUiPjxiciBjbGFzcz0iZXhhbXBsZS1icmVhayI+CiAgICAgIDwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZWN0aW9uIiB0aXRsZT0id2ViOjpwdXQiPjxkaXYgY2xhc3M9InRpdGxlcGFnZSI+PGRpdj48ZGl2PjxoMyBjbGFzcz0idGl0bGUiPjxhIG5hbWU9IndlYjo6cHV0Ij48L2E+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpwdXQ8L3N0cm9uZz48L3NwYW4+PC9zcGFuPjwvaDM+PC9kaXY+PC9kaXY+PC9kaXY+PHAgc3R5bGU9IndpZHRoOjkwJSI+CgoJPC9wPjxkaXYgY2xhc3M9ImNtZHN5bm9wc2lzIj48c3BhbiBzdHlsZT0iYmFja2dyb3VuZDojYmJiYmZmIj48c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZCI+PGNvZGUgY2xhc3M9ImNvbW1hbmQiPndlYjo6cHV0PC9jb2RlPjwvc3Bhbj4gID8KCSAgICA/Iz8KCSAgICA8ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5jaGFubmVsPC9jb2RlPjwvZW0+CgkgID8gPGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+dGV4dDwvY29kZT48L2VtPjwvc3Bhbj48L2Rpdj48cCBzdHlsZT0id2lkdGg6OTAlIj4KCVNlbmRzIG91dHB1dCB0byBhIFRjbCBjaGFubmVsLiBObyBuZXdsaW5lIGlzIGFkZGVkIHRvCglvdXRwdXQuIElmCgk/PHNwYW4gY2xhc3M9Im9wdGlvbmFsIj48dHQ+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+Y2hhbm5lbDwvY29kZT48L2VtPjwvdHQ+PC9zcGFuPj8KCWlzIG9tbWl0dGVkLCBvdXRwdXQgaXMgc2VudCB0byB0aGUgY3VycmVudCBkZWZhdWx0CgljaGFubmVsLiBUaGUgZGVmYXVsdCBjaGFubmVsIGNhbiBiZSBjaGFuZ2VkIHdpdGgKCTxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPndlYjo6cmVzcG9uc2UgPHR0Pi1zZWxlY3Q8L3R0PgoJPzxzcGFuIGNsYXNzPSJvcHRpb25hbCI+PHR0PiM8L3R0Pjwvc3Bhbj4/PHR0PjxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPmNoYW5uZWw8L2NvZGU+PC9lbT48L3R0Pjwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+LgogICAgICAgIFRoZSBvcHRpb25hbCBoYXNoICgiIyIpIGRlbm90ZXMgdGhhdCBvdXRwdXQgc2hvdWxkIGJlCglzZW50IHRvIGEgZ2xvYmFsIHZhcmlhYmxlIG5hbWVkCgk8dHQ+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+Y2hhbm5lbDwvY29kZT48L2VtPjwvdHQ+IGluc3RlYWQgb2YKCWEgVGNsIGNoYW5uZWwuCiAgICAgIDwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZWN0aW9uIiB0aXRsZT0id2ViOjpwdXR4Ij48ZGl2IGNsYXNzPSJ0aXRsZXBhZ2UiPjxkaXY+PGRpdj48aDMgY2xhc3M9InRpdGxlIj48YSBuYW1lPSJ3ZWI6OnB1dHgiPjwvYT48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OnB1dHg8L3N0cm9uZz48L3NwYW4+PC9zcGFuPjwvaDM+PC9kaXY+PC9kaXY+PC9kaXY+PHAgc3R5bGU9IndpZHRoOjkwJSI+CgoJPC9wPjxkaXYgY2xhc3M9ImNtZHN5bm9wc2lzIj48c3BhbiBzdHlsZT0iYmFja2dyb3VuZDojYmJiYmZmIj48c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZCI+PGNvZGUgY2xhc3M9ImNvbW1hbmQiPndlYjo6cHV0eDwvY29kZT48L3NwYW4+ICA/CgkgICAgPyM/CgkgICAgPGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+Y2hhbm5lbDwvY29kZT48L2VtPgoJICA/IDxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPnRleHQ8L2NvZGU+PC9lbT48L3NwYW4+PC9kaXY+PHAgc3R5bGU9IndpZHRoOjkwJSI+CgoJV3JpdGVzIDx0dD50ZXh0PC90dD4gdG8gdGhlIHNwZWNpZmllZCBjaGFubmVsLiBDb2RlIGluCgljdXJseSBicmFja2V0cyBpcyBldmFsJ2QsIHVubGVzcyB0aGUgYnJhY2tldHMgYXJlIGVzY2FwZWQgYnkKCSJcIi4gVGhlc2UgbWFya3VwIGNoYXJhY3RlcnMgJ3suLi59JyBjYW4gYmUgY2hhbmdlZAoJdG8gJyZsdDs/IC4uLiA/Jmd0Oycgd2l0aCAKCSc8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz53ZWI6OmNvbmZpZyBwdXR4bWFya3VwIHRhZzwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+Jy4gVGhlIG9wdGlvbmFsIGhhc2gKCSgiIyIpIGRlbm90ZXMgdGhhdCBvdXRwdXQgc2hvdWxkIGJlIHNlbnQgdG8gYSBnbG9iYWwKCXZhcmlhYmxlIG5hbWVkIDx0dD48ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5jaGFubmVsPC9jb2RlPjwvZW0+PC90dD4KCWluc3RlYWQgb2YgYSBUY2wgY2hhbm5lbC4KICAgICAgPC9wPjwvZGl2PjxkaXYgY2xhc3M9InNlY3Rpb24iIHRpdGxlPSJ3ZWI6OnB1dHhmaWxlIj48ZGl2IGNsYXNzPSJ0aXRsZXBhZ2UiPjxkaXY+PGRpdj48aDMgY2xhc3M9InRpdGxlIj48YSBuYW1lPSJ3ZWI6OnB1dHhmaWxlIj48L2E+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+d2ViOjpwdXR4ZmlsZTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+PC9oMz48L2Rpdj48L2Rpdj48L2Rpdj48cCBzdHlsZT0id2lkdGg6OTAlIj4KCgk8L3A+PGRpdiBjbGFzcz0iY21kc3lub3BzaXMiPjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kOiNiYmJiZmYiPjxzcGFuIHN0eWxlPSJmb250LXdlaWdodDpib2xkIj48Y29kZSBjbGFzcz0iY29tbWFuZCI+d2ViOjpwdXR4ZmlsZTwvY29kZT48L3NwYW4+ICA/CgkgICAgPyM/CgkgICAgPGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+Y2hhbm5lbDwvY29kZT48L2VtPgoJICA/IDxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPmZpbGU8L2NvZGU+PC9lbT4gPzxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPm1zZzwvY29kZT48L2VtPj88L3NwYW4+PC9kaXY+PHAgc3R5bGU9IndpZHRoOjkwJSI+CglMaWtlIDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPndlYjo6cHV0eDwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+LCBidXQgdGFrZXMgaW5wdXQgZnJvbSBhIGZpbGUuCiAgICAgIDwvcD48cCBzdHlsZT0id2lkdGg6OTAlIj4KCVJldHVybnMgMCBvbiBzdWNjZXNzLCAxIG90aGVyd2lzZS4gSWYgYW4gZXJyb3Igb2NjdXJzLCBhbgoJZXJyb3IgbWVzc2FnZSBpcyB3cml0dGVuIHRvIDx0dD5tc2c8L3R0Pi4gSWYgb25seSB0d28KCWFyZ3VtZW50cyBhcmUgcGFzc2VkLCB0aGVuIDx0dD5jaGFubmVsPC90dD4gdGFrZXMKCXByZWNlZGVuY2UuIFRoZSBvcHRpb25hbCBoYXNoICgiIyIpIGRlbm90ZXMgdGhhdCBvdXRwdXQKCXNob3VsZCBiZSBzZW50IHRvIGEgZ2xvYmFsIHZhcmlhYmxlIG5hbWVkCgk8dHQ+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+Y2hhbm5lbDwvY29kZT48L2VtPjwvdHQ+IGluc3RlYWQKCW9mIGEgVGNsIGNoYW5uZWwuCiAgICAgIDwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJuYXZmb290ZXIiPjxocj48dGFibGUgd2lkdGg9IjEwMCUiIHN1bW1hcnk9Ik5hdmlnYXRpb24gZm9vdGVyIj48dHI+PHRkIHdpZHRoPSI0MCUiIGFsaWduPSJsZWZ0Ij48YSBhY2Nlc3NrZXk9InAiIGhyZWY9InJlcXVlc3RfZGF0YV9oYW5kbGluZy5odG1sIj5QcmV2PC9hPqA8L3RkPjx0ZCB3aWR0aD0iMjAlIiBhbGlnbj0iY2VudGVyIj6gPC90ZD48dGQgd2lkdGg9IjQwJSIgYWxpZ249InJpZ2h0Ij6gPGEgYWNjZXNza2V5PSJuIiBocmVmPSJsb2dnaW5nLmh0bWwiPk5leHQ8L2E+PC90ZD48L3RyPjx0cj48dGQgd2lkdGg9IjQwJSIgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj5SZXF1ZXN0IGRhdGEgaGFuZGxpbmegPC90ZD48dGQgd2lkdGg9IjIwJSIgYWxpZ249ImNlbnRlciI+PGEgYWNjZXNza2V5PSJoIiBocmVmPSJpbmRleC5odG1sIj5Ib21lPC9hPjwvdGQ+PHRkIHdpZHRoPSI0MCUiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPqBMb2dnaW5nPC90ZD48L3RyPjwvdGFibGU+PC9kaXY+PC9ib2R5PjwvaHRtbD4K