PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSI+PHRpdGxlPlJpdmV0IEFwYWNoZSBEaXJlY3RpdmVzPC90aXRsZT48bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJyaXZldC5jc3MiPjxtZXRhIG5hbWU9ImdlbmVyYXRvciIgY29udGVudD0iRG9jQm9vayBYU0wgU3R5bGVzaGVldHMgVjEuNzYuMSI+PGxpbmsgcmVsPSJob21lIiBocmVmPSJpbmRleC5odG1sIiB0aXRsZT0iQXBhY2hlIFJpdmV0Ij48bGluayByZWw9InVwIiBocmVmPSJpbmRleC5odG1sIiB0aXRsZT0iQXBhY2hlIFJpdmV0Ij48bGluayByZWw9InByZXYiIGhyZWY9Imluc3RhbGxhdGlvbi5odG1sIiB0aXRsZT0iQXBhY2hlIFJpdmV0IEluc3RhbGxhdGlvbiI+PGxpbmsgcmVsPSJuZXh0IiBocmVmPSJjb21tYW5kcy5odG1sIiB0aXRsZT0iUml2ZXQgVGNsIENvbW1hbmRzIGFuZCBWYXJpYWJsZXMiPjwvaGVhZD48Ym9keSBiZ2NvbG9yPSJ3aGl0ZSIgdGV4dD0iYmxhY2siIGxpbms9IiMwMDAwRkYiIHZsaW5rPSIjODQwMDg0IiBhbGluaz0iIzAwMDBGRiI+PGRpdiBjbGFzcz0ibmF2aGVhZGVyIj48dGFibGUgd2lkdGg9IjEwMCUiIHN1bW1hcnk9Ik5hdmlnYXRpb24gaGVhZGVyIj48dHI+PHRoIGNvbHNwYW49IjMiIGFsaWduPSJjZW50ZXIiPlJpdmV0IEFwYWNoZSBEaXJlY3RpdmVzPC90aD48L3RyPjx0cj48dGQgd2lkdGg9IjIwJSIgYWxpZ249ImxlZnQiPjxhIGFjY2Vzc2tleT0icCIgaHJlZj0iaW5zdGFsbGF0aW9uLmh0bWwiPjxpbWcgc3JjPSJpbWFnZXMvcHJldi5wbmciIGFsdD0iUHJldiI+PC9hPqA8L3RkPjx0aCB3aWR0aD0iNjAlIiBhbGlnbj0iY2VudGVyIj6gPC90aD48dGQgd2lkdGg9IjIwJSIgYWxpZ249InJpZ2h0Ij6gPGEgYWNjZXNza2V5PSJuIiBocmVmPSJjb21tYW5kcy5odG1sIj48aW1nIHNyYz0iaW1hZ2VzL25leHQucG5nIiBhbHQ9Ik5leHQiPjwvYT48L3RkPjwvdHI+PC90YWJsZT48L2Rpdj48ZGl2IGNsYXNzPSJzZWN0aW9uIiB0aXRsZT0iUml2ZXQgQXBhY2hlIERpcmVjdGl2ZXMiPjxkaXYgY2xhc3M9InRpdGxlcGFnZSI+PGRpdj48ZGl2Pjxocj48aDIgY2xhc3M9InRpdGxlIiBzdHlsZT0iY2xlYXI6IGJvdGgiPjxhIG5hbWU9ImRpcmVjdGl2ZXMiPjwvYT5SaXZldCBBcGFjaGUgRGlyZWN0aXZlczwvaDI+PC9kaXY+PC9kaXY+PC9kaXY+PHAgc3R5bGU9IndpZHRoOjkwJSI+CiAgICAgIFRoZXNlIGRpcmVjdGl2ZXMgYXJlIHVzZWQgd2l0aGluIHRoZSBBcGFjaGUgaHR0cGQgc2VydmVyCiAgICAgIGNvbmZpZ3VyYXRpb24gZmlsZXMgdG8gbW9kaWZ5IEFwYWNoZSBSaXZldCdzIGJlaGF2aW9yLiAgVGhlaXIKICAgICAgcHJlY2VkZW5jZSBpcyBhcyBmb2xsb3dzOiA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz5SaXZldERpckNvbmY8L3N0cm9uZz48L3NwYW4+PC9zcGFuPiwKICAgICAgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImNvbW1hbmQiPjxzdHJvbmc+Uml2ZXRVc2VyQ29uZjwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+LAogICAgICA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz5SaXZldFNlcnZlckNvbmY8L3N0cm9uZz48L3NwYW4+PC9zcGFuPiwgbWVhbmluZyB0aGF0IERpckNvbmYgd2lsbAogICAgICBvdmVycmlkZSBVc2VyQ29uZiwgd2hpY2ggd2lsbCBpbiB0dXJuIG92ZXJyaWRlIFNlcnZlckNvbmYuCiAgICA8L3A+PGRpdiBjbGFzcz0idmFyaWFibGVsaXN0Ij48ZGw+PGR0PjxzcGFuIGNsYXNzPSJ0ZXJtIj4KCSAgPGRpdiBjbGFzcz0iY21kc3lub3BzaXMiIHN0eWxlPSJ3aWR0aDo4MCUiPjxkaXYgc3R5bGU9ImJhY2tncm91bmQ6I2NjY2NmZiA7IG1hcmdpbjoxZXggOyBwYWRkaW5nOi40ZXg7IHBhZGRpbmctbGVmdDogMC44ZXg7ICAgd29yZC1zcGFjaW5nOjFleCAiPjxzcGFuIHN0eWxlPSJmb250LXdlaWdodDpib2xkIDsgZm9udC1mYW1pbHk6bW9ub3NwYWNlIj5SaXZldFNlcnZlckNvbmY8L3NwYW4+ICAoPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5DYWNoZVNpemU8L3NwYW4+IHwgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5HbG9iYWxJbml0U2NyaXB0PC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+Q2hpbGRJbml0U2NyaXB0PC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+Q2hpbGRFeGl0U2NyaXB0PC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+QmVmb3JlU2NyaXB0PC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+QWZ0ZXJTY3JpcHQ8L3NwYW4+IHwgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5FcnJvclNjcmlwdDwvc3Bhbj4gfCA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPkFib3J0U2NyaXB0PC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+QWZ0ZXJFdmVyeVNjcmlwdDwvc3Bhbj4gfCA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPlVwbG9hZERpcmVjdG9yeTwvc3Bhbj4gfCA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPlVwbG9hZE1heFNpemU8L3NwYW4+IHwgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5VcGxvYWRGaWxlc1RvVmFyPC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+U2VwYXJhdGVWaXJ0dWFsSW50ZXJwczwvc3Bhbj4gfCA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPkhvbm9ySGVhZGVyT25seVJlcXVlc3RzPC9zcGFuPik8L2Rpdj48L2Rpdj4KCTwvc3Bhbj48L2R0PjxkZD48ZGl2IHN0eWxlPSJwYWRkaW5nOjQgOyBtYXJnaW4tdG9wOjMgOyAgbWFyZ2luLWJvdHRvbTozIDsgd2lkdGg6NzUlIj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjEuNWV4IDsgcGFkZGluZyAuNWV4Ij48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz5SaXZldFNlcnZlckNvbmY8L3N0cm9uZz48L3NwYW4+PC9zcGFuPiBzcGVjaWZpZXMgYSBnbG9iYWwKCSAgICBvcHRpb24gdGhhdCBpcyB2YWxpZCBmb3IgdGhlIHdob2xlIHNlcnZlci4gIElmIHlvdSBoYXZlIGEKCSAgICB2aXJ0dWFsIGhvc3QsIGluIHNvbWUgY2FzZXMsIHRoZSBvcHRpb24gc3BlY2lmaWVkIGluIHRoZQoJICAgIHZpcnR1YWxob3N0IHRha2VzIHByZWNlZGVuY2Ugb3ZlciB0aGUgJ2dsb2JhbCcgdmVyc2lvbi4KCSAgPC9kaXY+PGRpdiBjbGFzcz0idmFyaWFibGVsaXN0Ij48ZGw+PGR0PjxzcGFuIGNsYXNzPSJ0ZXJtIj4KCQk8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyIgc3R5bGU9IndpZHRoOjgwJSI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojY2NjY2ZmIDsgbWFyZ2luOjFleCA7IHBhZGRpbmc6LjRleDsgcGFkZGluZy1sZWZ0OiAwLjhleDsgICB3b3JkLXNwYWNpbmc6MWV4ICI+IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+Q2FjaGVTaXplPC9zcGFuPiAgPzxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+c2l6ZTwvY29kZT48L2VtPjwvc3Bhbj4/PC9kaXY+PC9kaXY+CgkgICAgICA8L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJICBTZXRzIHRoZSBzaXplIG9mIHRoZSBpbnRlcm5hbCBwYWdlIGNhY2hlLCB3aGVyZQoJCSAgPGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+c2l6ZTwvY29kZT48L2VtPiBpcwoJCSAgdGhlIG51bWJlciBvZiBieXRlLWNvbXBpbGVkIHBhZ2VzIHRvIGJlIGNhY2hlZCBmb3IKCQkgIGZ1dHVyZSB1c2UuICBEZWZhdWx0IGlzCgkJICA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlIj48c3BhbiBjbGFzcz0iY29tbWFuZCI+PHN0cm9uZz5NYXhSZXF1ZXN0c1BlckNoaWxkPC9zdHJvbmc+PC9zcGFuPjwvc3Bhbj4gLyA1LCBvciA1MCwKCQkgIGlmIDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPk1heFJlcXVlc3RzUGVyQ2hpbGQ8L3N0cm9uZz48L3NwYW4+PC9zcGFuPiBpcyAwLgoJCTwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCSAgVGhpcyBvcHRpb24gaXMgY29tcGxldGVseSBnbG9iYWwsIGV2ZW4gd2hlbiB1c2luZwoJCSAgc2VwYXJhdGUsIHBlci12aXJ0dWFsIGhvc3QgaW50ZXJwcmV0ZXJzLgoJCTwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIGNsYXNzPSJ0ZXJtIj4KCQk8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyIgc3R5bGU9IndpZHRoOjgwJSI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojY2NjY2ZmIDsgbWFyZ2luOjFleCA7IHBhZGRpbmc6LjRleDsgcGFkZGluZy1sZWZ0OiAwLjhleDsgICB3b3JkLXNwYWNpbmc6MWV4ICI+IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+R2xvYmFsSW5pdFNjcmlwdDwvc3Bhbj4gID88c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPjxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPnNjcmlwdDwvY29kZT48L2VtPjwvc3Bhbj4/PC9kaXY+PC9kaXY+CgkgICAgICA8L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJICBUY2wgc2NyaXB0IHRoYXQgaXMgcnVuIHdoZW4gZWFjaCBpbnRlcnByZXRlciBpcwoJCSAgaW5pdGlhbGl6ZWQuIDxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPnNjcmlwdDwvY29kZT48L2VtPgoJCSAgaXMgYW4gYWN0dWFsIFRjbCBzY3JpcHQsIHNvIHRvIHJ1biBhIGZpbGUsIHlvdSB3b3VsZAoJCSAgZG86CgoJCSAgPHByZSBzdHlsZT0iYmFja2dyb3VuZDojY2NjOyBtYXJnaW46IDJleDsgbWFyZ2luLXJpZ2h0OiAxMCU7ICAgICAgIHBhZGRpbmc6IDFleDsgYm9yZGVyOiBkYXNoZWQgYmxhY2sgMXB4IDsgd2hpdGUtc3BhY2U6IHByZTsgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOyBmb250LXNpemU6IDkwJTsiIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+Uml2ZXRTZXJ2ZXJDb25mIEdsb2JhbEluaXRTY3JpcHQgInNvdXJjZSAvdmFyL3d3dy9mb29iYXIudGNsIjwvcHJlPgoJCTwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCSAgVGhpcyBvcHRpb24gaXMgaWdub3JlZCBpbiB2aXJ0dWFsIGhvc3RzLgoJCTwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIGNsYXNzPSJ0ZXJtIj4KCQk8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyIgc3R5bGU9IndpZHRoOjgwJSI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojY2NjY2ZmIDsgbWFyZ2luOjFleCA7IHBhZGRpbmc6LjRleDsgcGFkZGluZy1sZWZ0OiAwLjhleDsgICB3b3JkLXNwYWNpbmc6MWV4ICI+IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+Q2hpbGRJbml0U2NyaXB0PC9zcGFuPiAgPzxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+c2NyaXB0PC9jb2RlPjwvZW0+PC9zcGFuPj88L2Rpdj48L2Rpdj4KCSAgICAgIDwvc3Bhbj48L2R0PjxkZD48ZGl2IHN0eWxlPSJwYWRkaW5nOjQgOyBtYXJnaW4tdG9wOjMgOyAgbWFyZ2luLWJvdHRvbTozIDsgd2lkdGg6NzUlIj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjEuNWV4IDsgcGFkZGluZyAuNWV4Ij4KCQkgIFNjcmlwdCB0byBiZSBldmFsdWF0ZWQgd2hlbiBlYWNoIEFwYWNoZSBjaGlsZAoJCSAgcHJvY2VzcyBpcyBpbml0aWFsaXplZC4gIFRoaXMgaXMgdGhlIHJlY29tbWVuZGVkCgkJICBwbGFjZSB0byBsb2FkIG1vZHVsZXMsIGNyZWF0ZSBnbG9iYWwgdmFyaWFibGVzLCBvcGVuCgkJICBjb25uZWN0aW9ucyB0byBvdGhlciBmYWNpbGl0aWVzIChzdWNoIGFzIGRhdGFiYXNlcykKCQkgIGFuZCBzbyBvbi4KCQk8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjEuNWV4IDsgcGFkZGluZyAuNWV4Ij4KCQkgIEluIHZpcnR1YWwgaG9zdHMsIHRoaXMgc2NyaXB0IGlzIHJ1biBpbiBhZGRpdGlvbiB0bwoJCSAgYW55IGdsb2JhbCBjaGlsZGluaXRzY3JpcHQuCgkJPC9kaXY+PC9kaXY+PC9kZD48ZHQ+PHNwYW4gY2xhc3M9InRlcm0iPgoJCTxkaXYgY2xhc3M9ImNtZHN5bm9wc2lzIiBzdHlsZT0id2lkdGg6ODAlIj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kOiNjY2NjZmYgOyBtYXJnaW46MWV4IDsgcGFkZGluZzouNGV4OyBwYWRkaW5nLWxlZnQ6IDAuOGV4OyAgIHdvcmQtc3BhY2luZzoxZXggIj4gPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5DaGlsZEV4aXRTY3JpcHQ8L3NwYW4+ICA/PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij48ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5zY3JpcHQ8L2NvZGU+PC9lbT48L3NwYW4+PzwvZGl2PjwvZGl2PgoJICAgICAgPC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCSAgU2NyaXB0IHRvIGJlIGV2YWx1YXRlZCB3aGVuIGVhY2ggQXBhY2hlIGNoaWxkCgkJICBwcm9jZXNzIGV4aXRzLiAgVGhpcyBpcyB0aGUgbG9naWNhbCBwbGFjZSB0byBjbGVhbgoJCSAgdXAgcmVzb3VyY2VzIGNyZWF0ZWQgaW4KCQkgIENoaWxkSW5pdFNjcmlwdCwgaWYgbmVjZXNzYXJ5LgoJCTwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCSAgSW4gdmlydHVhbCBob3N0cywgdGhpcyBzY3JpcHQgaXMgcnVuIGluIGFkZGl0aW9uIHRvCgkJICBhbnkgZ2xvYmFsIGNoaWxkZXhpdHNjcmlwdC4KCQk8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBjbGFzcz0idGVybSI+CgkJPGRpdiBjbGFzcz0iY21kc3lub3BzaXMiIHN0eWxlPSJ3aWR0aDo4MCUiPjxkaXYgc3R5bGU9ImJhY2tncm91bmQ6I2NjY2NmZiA7IG1hcmdpbjoxZXggOyBwYWRkaW5nOi40ZXg7IHBhZGRpbmctbGVmdDogMC44ZXg7ICAgd29yZC1zcGFjaW5nOjFleCAiPiA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPkJlZm9yZVNjcmlwdDwvc3Bhbj4gID88c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPjxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPnNjcmlwdDwvY29kZT48L2VtPjwvc3Bhbj4/PC9kaXY+PC9kaXY+CgkgICAgICA8L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJICBTY3JpcHQgdG8gYmUgZXZhbHVhdGVkIGJlZm9yZSBlYWNoIHNlcnZlciBwYXJzZWQKCQkgICgucnZ0KSBwYWdlLiAgVGhpcyBjYW4gYmUgdXNlZCB0byBjcmVhdGUgYSBzdGFuZGFyZAoJCSAgaGVhZGVyLCBmb3IgaW5zdGFuY2UuICBJdCBjb3VsZCBhbHNvIGJlIHVzZWQgdG8gbG9hZAoJCSAgY29kZSB0aGF0IHlvdSBuZWVkIGZvciBldmVyeSBwYWdlLCBpZiB5b3UgZG9uJ3Qgd2FudAoJCSAgdG8gcHV0IGl0IGluIGEgR2xvYmFsSW5pdFNjcmlwdAoJCSAgQ2hpbGRJbml0U2NyaXB0IHdoZW4geW91IGFyZSBmaXJzdAoJCSAgZGV2ZWxvcGluZyBhIHdlYiBzaXRlLgoJCSAgPGRpdiBjbGFzcz0ibm90ZSIgdGl0bGU9Ik5vdGUiIHN0eWxlPSJtYXJnaW4tbGVmdDogMC41aW47IG1hcmdpbi1yaWdodDogMC41aW47Ij48dGFibGUgYm9yZGVyPSIwIiBzdW1tYXJ5PSJOb3RlIj48dHI+PHRkIHJvd3NwYW49IjIiIGFsaWduPSJjZW50ZXIiIHZhbGlnbj0idG9wIiB3aWR0aD0iMjUiPjxpbWcgYWx0PSJbTm90ZV0iIHNyYz0iaW1hZ2VzL25vdGUucG5nIj48L3RkPjx0aCBhbGlnbj0ibGVmdCI+Tm90ZTwvdGg+PC90cj48dHI+PHRkIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCI+CgkJICAgIFRoaXMgY29kZSBpcyBldmFsdWF0ZWQgYXQgdGhlIGdsb2JhbCBsZXZlbCwgbm90CgkJICAgIGluc2lkZSB0aGUgcmVxdWVzdCBuYW1lc3BhY2Ugd2hlcmUgcGFnZXMgYXJlCgkJICAgIGV2YWx1YXRlZC4KCQkgIDwvdGQ+PC90cj48L3RhYmxlPjwvZGl2PgoJCTwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCSAgSW4gdmlydHVhbCBob3N0cywgdGhpcyBvcHRpb24gdGFrZXMgcHJlY2VkZW5jZSBvdmVyCgkJICB0aGUgZ2xvYmFsIHNldHRpbmcuCgkJPC9kaXY+PC9kaXY+PC9kZD48ZHQ+PHNwYW4gY2xhc3M9InRlcm0iPgoJCTxkaXYgY2xhc3M9ImNtZHN5bm9wc2lzIiBzdHlsZT0id2lkdGg6ODAlIj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kOiNjY2NjZmYgOyBtYXJnaW46MWV4IDsgcGFkZGluZzouNGV4OyBwYWRkaW5nLWxlZnQ6IDAuOGV4OyAgIHdvcmQtc3BhY2luZzoxZXggIj4gPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5BZnRlclNjcmlwdDwvc3Bhbj4gID88c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPjxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPnNjcmlwdDwvY29kZT48L2VtPjwvc3Bhbj4/PC9kaXY+PC9kaXY+CgkgICAgICA8L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJICBTY3JpcHQgdG8gYmUgY2FsbGVkIGFmdGVyIGVhY2ggc2VydmVyIHBhcnNlZCAoLnJ2dCkgcGFnZS4KCQk8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjEuNWV4IDsgcGFkZGluZyAuNWV4Ij4KCQkgIEluIHZpcnR1YWwgaG9zdHMsIHRoaXMgb3B0aW9uIHRha2VzIHByZWNlZGVuY2Ugb3ZlcgoJCSAgdGhlIGdsb2JhbCBzZXR0aW5nLgoJCTwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIGNsYXNzPSJ0ZXJtIj4KCQk8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyIgc3R5bGU9IndpZHRoOjgwJSI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojY2NjY2ZmIDsgbWFyZ2luOjFleCA7IHBhZGRpbmc6LjRleDsgcGFkZGluZy1sZWZ0OiAwLjhleDsgICB3b3JkLXNwYWNpbmc6MWV4ICI+IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+RXJyb3JTY3JpcHQ8L3NwYW4+ICA/PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij48ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5zY3JpcHQ8L2NvZGU+PC9lbT48L3NwYW4+PzwvZGl2PjwvZGl2PgoJICAgICAgPC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCSAgV2hlbiBSaXZldCBlbmNvdW50ZXJzIGFuIGVycm9yIGluIGEgc2NyaXB0LCBpdAoJCSAgY29uc3RydWN0cyBhbiBIVE1MIHBhZ2Ugd2l0aCBzb21lIGluZm9ybWF0aW9uIGFib3V0CgkJICB0aGUgZXJyb3IsIGFuZCB0aGUgc2NyaXB0IHRoYXQgd2FzIGJlaW5nCgkJICBldmFsdWF0ZWQuIElmIGFuIEVycm9yU2NyaXB0IGlzCgkJICBzcGVjaWZpZWQsIGl0IGlzIHBvc3NpYmxlIHRvIGNyZWF0ZSBjdXN0b20gZXJyb3IKCQkgIHBhZ2VzLiAgVGhpcyBtYXkgYmUgdXNlZnVsIGlmIHlvdSB3YW50IHRvIG1ha2Ugc3VyZQoJCSAgdGhhdCB1c2VycyBuZXZlciB2aWV3IHlvdXIgc291cmNlIGNvZGUuCgkJPC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJICBJbiB2aXJ0dWFsIGhvc3RzLCB0aGlzIG9wdGlvbiB0YWtlcyBwcmVjZWRlbmNlIG92ZXIKCQkgIHRoZSBnbG9iYWwgc2V0dGluZy4KCQk8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBjbGFzcz0idGVybSI+CgkJCQk8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyIgc3R5bGU9IndpZHRoOjgwJSI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojY2NjY2ZmIDsgbWFyZ2luOjFleCA7IHBhZGRpbmc6LjRleDsgcGFkZGluZy1sZWZ0OiAwLjhleDsgICB3b3JkLXNwYWNpbmc6MWV4ICI+IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+QWZ0ZXJFdmVyeVNjcmlwdDwvc3Bhbj4gID88c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPjxlbSBjbGFzcz0icmVwbGFjZWFibGUiPjxjb2RlPnNjcmlwdDwvY29kZT48L2VtPjwvc3Bhbj4/PC9kaXY+PC9kaXY+CgkgICAgICA8L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJCQkJQWZ0ZXJFdmVyeVNjcmlwdCBpcyBhIHNjcmlwdCB0aGF0IGlzIHRvCgkJCQkJYmUgcnVuIGFueXdheSBiZWZvcmUgcmVxdWVzdHMgcHJvY2Vzc2luZyBlbmRzLiBUaGlzIHNjcmlwdAoJCQkJCWlzIHRoZXJlZm9yZSBydW4gYm90aCB3aGVuIHRoZSBjb250ZW50IGdlbmVyYXRpb24gc2NyaXB0CgkJCQkJY29tcGxldGVzIHN1Y2Nlc3NmdWxseSBhbmQgd2hlbiBpdHMgZXhlY3V0aW9uIGlzIGludGVycnVwdGVkCgkJCQkJYnkgPGEgY2xhc3M9InhyZWYiIGhyZWY9ImFib3J0X3BhZ2UuaHRtbCIgdGl0bGU9ImFib3J0X3BhZ2UiPmFib3J0X3BhZ2U8L2E+LiBUaGUgY29kZSBpbiB0aGlzIHNjcmlwdAoJCQkJCWNhbiB0ZWxsIHdoZXRoZXIgd2UgYXJlIHJ1bm5pbmcgYWZ0ZXIgYW4gYWJvcnQgY29uZGl0aW9uCgkJCQkJb2NjdXJyZWQgYnkgcGFzc2luZyB0aGUgYXJndW1lbnQgID88c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPi1hYm9ydGluZzwvc3Bhbj4/IHRvCgkJCQkJPGEgY2xhc3M9InhyZWYiIGhyZWY9ImFib3J0X3BhZ2UuaHRtbCIgdGl0bGU9ImFib3J0X3BhZ2UiPmFib3J0X3BhZ2U8L2E+IHdoaWNoIGluIHR1cm4gcmV0dXJucyAxIGlmCgkJCQkJYWJvcnRfcGFnZSBoYWQgYmVlbiBjYWxsZWQgZWFybGllciBpbiB0aGUgcmVxdWVzdCBwcm9jZXNzaW5nLgoJCQkJPC9kaXY+PC9kaXY+PC9kZD48ZHQ+PHNwYW4gY2xhc3M9InRlcm0iPgoJCQkJPGRpdiBjbGFzcz0iY21kc3lub3BzaXMiIHN0eWxlPSJ3aWR0aDo4MCUiPjxkaXYgc3R5bGU9ImJhY2tncm91bmQ6I2NjY2NmZiA7IG1hcmdpbjoxZXggOyBwYWRkaW5nOi40ZXg7IHBhZGRpbmctbGVmdDogMC44ZXg7ICAgd29yZC1zcGFjaW5nOjFleCAiPiA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPkFib3J0U2NyaXB0PC9zcGFuPiAgPzxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+c2NyaXB0PC9jb2RlPjwvZW0+PC9zcGFuPj88L2Rpdj48L2Rpdj4KCQkJPC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCQkJCUV4ZWN1dGlvbiBvZiBhIGNvbnRlbnQgZ2VuZXJhdGluZyBzY3JpcHQgY2FuIGJlCgkJCQkJZG9uZSBieSBpbnZva2luZyA8YSBjbGFzcz0ieHJlZiIgaHJlZj0iYWJvcnRfcGFnZS5odG1sIiB0aXRsZT0iYWJvcnRfcGFnZSI+YWJvcnRfcGFnZTwvYT4uIFdoZW4gCgkJCQkJYW4gQWJvcnRTY3JpcHQgaXMgZGVmaW5lZCBmb3IgdGhlIHBhZ2UKCQkJCQliZWluZyBnZW5lcmF0ZWQsIGNvbnRyb2wgaXMgcGFzc2VkIHRvIGl0IGFzIGEgd2F5CgkJCQkJdG8gdW5kZXJ0YWtlIHNwZWNpZmljIGFjdGlvbiB0aGF0IG1pZ2h0IGJlIG5lY2Vzc2FyeQoJCQkJCXRvIGNhdGNoIHJlc291cmNlcyBsZWZ0IGRhbmdsaW5nIGJ5IHRoZSBzdWRkZW4gaW50ZXJydXB0aW9uLgkJCQkKCQkJCTwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIGNsYXNzPSJ0ZXJtIj4KCQk8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyIgc3R5bGU9IndpZHRoOjgwJSI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojY2NjY2ZmIDsgbWFyZ2luOjFleCA7IHBhZGRpbmc6LjRleDsgcGFkZGluZy1sZWZ0OiAwLjhleDsgICB3b3JkLXNwYWNpbmc6MWV4ICI+IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+VXBsb2FkRGlyZWN0b3J5PC9zcGFuPiAgPzxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+PGVtIGNsYXNzPSJyZXBsYWNlYWJsZSI+PGNvZGU+ZGlyZWN0b3J5PC9jb2RlPjwvZW0+PC9zcGFuPj88L2Rpdj48L2Rpdj4KCSAgICAgIDwvc3Bhbj48L2R0PjxkZD48ZGl2IHN0eWxlPSJwYWRkaW5nOjQgOyBtYXJnaW4tdG9wOjMgOyAgbWFyZ2luLWJvdHRvbTozIDsgd2lkdGg6NzUlIj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjEuNWV4IDsgcGFkZGluZyAuNWV4Ij5EaXJlY3RvcnkgdG8gcGxhY2UgdXBsb2FkZWQgZmlsZXMuPC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJICBJbiB2aXJ0dWFsIGhvc3RzLCB0aGlzIG9wdGlvbiB0YWtlcyBwcmVjZWRlbmNlIG92ZXIKCQkgIHRoZSBnbG9iYWwgc2V0dGluZy4KCQk8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBjbGFzcz0idGVybSI+CgkJPGRpdiBjbGFzcz0iY21kc3lub3BzaXMiIHN0eWxlPSJ3aWR0aDo4MCUiPjxkaXYgc3R5bGU9ImJhY2tncm91bmQ6I2NjY2NmZiA7IG1hcmdpbjoxZXggOyBwYWRkaW5nOi40ZXg7IHBhZGRpbmctbGVmdDogMC44ZXg7ICAgd29yZC1zcGFjaW5nOjFleCAiPiA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPlVwbG9hZE1heFNpemU8L3NwYW4+ICA/PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij48ZW0gY2xhc3M9InJlcGxhY2VhYmxlIj48Y29kZT5zaXplPC9jb2RlPjwvZW0+PC9zcGFuPj88L2Rpdj48L2Rpdj4KCSAgICAgIDwvc3Bhbj48L2R0PjxkZD48ZGl2IHN0eWxlPSJwYWRkaW5nOjQgOyBtYXJnaW4tdG9wOjMgOyAgbWFyZ2luLWJvdHRvbTozIDsgd2lkdGg6NzUlIj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjEuNWV4IDsgcGFkZGluZyAuNWV4Ij5NYXhpbXVtIHNpemUgZm9yIHVwbG9hZGVkIGZpbGVzLjwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCSAgSW4gdmlydHVhbCBob3N0cywgdGhpcyBvcHRpb24gdGFrZXMgcHJlY2VkZW5jZSBvdmVyCgkJICB0aGUgZ2xvYmFsIHNldHRpbmcuCgkJPC9kaXY+PC9kaXY+PC9kZD48ZHQ+PHNwYW4gY2xhc3M9InRlcm0iPgoJCTxkaXYgY2xhc3M9ImNtZHN5bm9wc2lzIiBzdHlsZT0id2lkdGg6ODAlIj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kOiNjY2NjZmYgOyBtYXJnaW46MWV4IDsgcGFkZGluZzouNGV4OyBwYWRkaW5nLWxlZnQ6IDAuOGV4OyAgIHdvcmQtc3BhY2luZzoxZXggIj4gPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5VcGxvYWRGaWxlc1RvVmFyPC9zcGFuPiAgKDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+eWVzPC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+bm88L3NwYW4+KTwvZGl2PjwvZGl2PgoJICAgICAgPC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJCSAgVGhpcyBvcHRpb24gY29udHJvbHMgd2hldGhlciBpdCBpcyBwb3NzaWJsZSB0bwoJCSAgdXBsb2FkIGZpbGVzIHRvIGEgVGNsIHZhcmlhYmxlLiAgSWYgeW91IGhhdmUgYSBzaXplCgkJICBsaW1pdCwgYW5kIGRvbid0IGhhdmUgdG8gZGVhbCB3aXRoIGxhcmdlIGZpbGVzLCB0aGlzCgkJICBtaWdodCBiZSBtb3JlIGNvbnZlbmllbnQgdGhhbiBzZW5kaW5nIHRoZSBkYXRhIHRvIGEKCQkgIGZpbGUgb24gZGlzay4KCQk8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBjbGFzcz0idGVybSI+CgkJPGRpdiBjbGFzcz0iY21kc3lub3BzaXMiIHN0eWxlPSJ3aWR0aDo4MCUiPjxkaXYgc3R5bGU9ImJhY2tncm91bmQ6I2NjY2NmZiA7IG1hcmdpbjoxZXggOyBwYWRkaW5nOi40ZXg7IHBhZGRpbmctbGVmdDogMC44ZXg7ICAgd29yZC1zcGFjaW5nOjFleCAiPiA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPlNlcGFyYXRlVmlydHVhbEludGVycHM8L3NwYW4+ICAoPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij55ZXM8L3NwYW4+IHwgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5ubzwvc3Bhbj4pPC9kaXY+PC9kaXY+CgkgICAgICA8L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJICBJZiBvbiwgUml2ZXQgd2lsbCBjcmVhdGUgYSBzZXBhcmF0ZSBUY2wgaW50ZXJwcmV0ZXIKCQkgIGZvciBlYWNoIEFwYWNoZSB2aXJ0dWFsIGhvc3QuICBUaGlzIGlzIHVzZWZ1bCBpbiBhbgoJCSAgSVNQIHR5cGUgc2l0dWF0aW9uIHdoZXJlIGl0IGlzIGRlc2lyYWJsZSB0byBzZXBhcmF0ZQoJCSAgY2xpZW50cyBpbnRvIHNlcGFyYXRlIGludGVycHJldGVycywgc28gdGhhdCB0aGV5CgkJICBkb24ndCBhY2NpZGVudGFsbHkgaW50ZXJmZXJlIHdpdGggb25lIGFub3RoZXIuCgkJPC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+VGhpcyBvcHRpb24gaXMsIGJ5IG5hdHVyZSwgb25seSBhdmFpbGFibGUgYXQgdGhlCgkJZ2xvYmFsIGxldmVsLjwvZGl2PjwvZGl2PjwvZGQ+PGR0PjxzcGFuIGNsYXNzPSJ0ZXJtIj4KCQk8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyIgc3R5bGU9IndpZHRoOjgwJSI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojY2NjY2ZmIDsgbWFyZ2luOjFleCA7IHBhZGRpbmc6LjRleDsgcGFkZGluZy1sZWZ0OiAwLjhleDsgICB3b3JkLXNwYWNpbmc6MWV4ICI+IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+SG9ub3JIZWFkZXJPbmx5UmVxdWVzdHM8L3NwYW4+ICAoPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij55ZXM8L3NwYW4+IHwgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5ubzwvc3Bhbj4pPC9kaXY+PC9kaXY+CgkgICAgICA8L3NwYW4+PC9kdD48ZGQ+PGRpdiBzdHlsZT0icGFkZGluZzo0IDsgbWFyZ2luLXRvcDozIDsgIG1hcmdpbi1ib3R0b206MyA7IHdpZHRoOjc1JSI+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxLjVleCA7IHBhZGRpbmcgLjVleCI+CgkJICBJZiBhIEhFQUQgcmVxdWVzdHMgaXMgaXNzdWVkIGJ5IHRoZSBjbGllbnQgUml2ZXQgZGV0ZWN0cwoJCSAgdGhpcyBjYXNlIGFuZCBzZW5kcyBiYWNrIHRvIHRoZSBjbGllbnQgYSBzdGFuZGFyZCBoZWFkZXIgCgkJICByZXNwb25zZS4gSWYgdGhlIHJlYWwgaGVhZGVyIGhhcyB0byBiZSBleGFtaW5lZCAoZS5nLiAKCQkgIGZvciBkZWJ1Z2dpbmcpIHlvdSBjYW4gdHVybiB0aGlzIG9wdGlvbnMgb24uIAoJCTwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPlRoaXMgb3B0aW9uIGlzLCBieSBuYXR1cmUsIG9ubHkgYXZhaWxhYmxlIGF0IHRoZSBnbG9iYWwgbGV2ZWw8L2Rpdj48L2Rpdj48L2RkPjwvZGw+PC9kaXY+PC9kaXY+PC9kZD48ZHQ+PHNwYW4gY2xhc3M9InRlcm0iPgoJICA8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyIgc3R5bGU9IndpZHRoOjgwJSI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojY2NjY2ZmIDsgbWFyZ2luOjFleCA7IHBhZGRpbmc6LjRleDsgcGFkZGluZy1sZWZ0OiAwLjhleDsgICB3b3JkLXNwYWNpbmc6MWV4ICI+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OmJvbGQgOyBmb250LWZhbWlseTptb25vc3BhY2UiPlJpdmV0RGlyQ29uZjwvc3Bhbj4gICg8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPkJlZm9yZVNjcmlwdDwvc3Bhbj4gfCA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPkFmdGVyU2NyaXB0PC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+RXJyb3JTY3JpcHQ8L3NwYW4+IHwgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5VcGxvYWREaXJlY3Rvcnk8L3NwYW4+KTwvZGl2PjwvZGl2PgoJPC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJICAgIFRoZXNlIG9wdGlvbnMgYXJlIHRoZSBzYW1lIGFzIGZvcgoJICAgIDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPlJpdmV0U2VydmVyQ29uZjwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+LCBleGNlcHQgdGhhdCB0aGV5IGFyZQoJICAgIG9ubHkgdmFsaWQgZm9yIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhleSBhcmUgc3BlY2lmaWVkLCBhbmQKCSAgICBpdHMgc3ViZGlyZWN0b3JpZXMuICBJdCBtYXkgYmUgc3BlY2lmaWVkIGluIDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPkRpcmVjdG9yeTwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+IAoJICAgIHNlY3Rpb25zLgoJICA8L2Rpdj48L2Rpdj48L2RkPjxkdD48c3BhbiBjbGFzcz0idGVybSI+CgkgIDxkaXYgY2xhc3M9ImNtZHN5bm9wc2lzIiBzdHlsZT0id2lkdGg6ODAlIj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kOiNjY2NjZmYgOyBtYXJnaW46MWV4IDsgcGFkZGluZzouNGV4OyBwYWRkaW5nLWxlZnQ6IDAuOGV4OyAgIHdvcmQtc3BhY2luZzoxZXggIj48c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZCA7IGZvbnQtZmFtaWx5Om1vbm9zcGFjZSI+Uml2ZXRVc2VyQ29uZjwvc3Bhbj4gICg8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPkJlZm9yZVNjcmlwdDwvc3Bhbj4gfCA8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlOyBmb250LXdlaWdodDogYm9sZDsiPkFmdGVyU2NyaXB0PC9zcGFuPiB8IDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2U7IGZvbnQtd2VpZ2h0OiBib2xkOyI+RXJyb3JTY3JpcHQ8L3NwYW4+IHwgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5VcGxvYWREaXJlY3Rvcnk8L3NwYW4+KTwvZGl2PjwvZGl2PgoJPC9zcGFuPjwvZHQ+PGRkPjxkaXYgc3R5bGU9InBhZGRpbmc6NCA7IG1hcmdpbi10b3A6MyA7ICBtYXJnaW4tYm90dG9tOjMgOyB3aWR0aDo3NSUiPjxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206MS41ZXggOyBwYWRkaW5nIC41ZXgiPgoJICAgIFRoZXNlIG9wdGlvbnMgYXJlIHRoZSBzYW1lIGFzIGZvcgoJICAgIDxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UiPjxzcGFuIGNsYXNzPSJjb21tYW5kIj48c3Ryb25nPlJpdmV0U2VydmVyQ29uZjwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+LCBleGNlcHQgdGhhdCB0aGV5IGFyZQoJICAgIG9ubHkgdmFsaWQgZm9yIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhleSBhcmUgc3BlY2lmaWVkLCBhbmQKCSAgICBpdHMgc3ViZGlyZWN0b3JpZXMuCgkgIDwvZGl2PjwvZGl2PjwvZGQ+PC9kbD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJuYXZmb290ZXIiPjxocj48dGFibGUgd2lkdGg9IjEwMCUiIHN1bW1hcnk9Ik5hdmlnYXRpb24gZm9vdGVyIj48dHI+PHRkIHdpZHRoPSI0MCUiIGFsaWduPSJsZWZ0Ij48YSBhY2Nlc3NrZXk9InAiIGhyZWY9Imluc3RhbGxhdGlvbi5odG1sIj48aW1nIHNyYz0iaW1hZ2VzL3ByZXYucG5nIiBhbHQ9IlByZXYiPjwvYT6gPC90ZD48dGQgd2lkdGg9IjIwJSIgYWxpZ249ImNlbnRlciI+oDwvdGQ+PHRkIHdpZHRoPSI0MCUiIGFsaWduPSJyaWdodCI+oDxhIGFjY2Vzc2tleT0ibiIgaHJlZj0iY29tbWFuZHMuaHRtbCI+PGltZyBzcmM9ImltYWdlcy9uZXh0LnBuZyIgYWx0PSJOZXh0Ij48L2E+PC90ZD48L3RyPjx0cj48dGQgd2lkdGg9IjQwJSIgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj5BcGFjaGUgUml2ZXQgSW5zdGFsbGF0aW9uoDwvdGQ+PHRkIHdpZHRoPSIyMCUiIGFsaWduPSJjZW50ZXIiPjxhIGFjY2Vzc2tleT0iaCIgaHJlZj0iaW5kZXguaHRtbCI+PGltZyBzcmM9ImltYWdlcy9ob21lLnBuZyIgYWx0PSJIb21lIj48L2E+PC90ZD48dGQgd2lkdGg9IjQwJSIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+oFJpdmV0IFRjbCBDb21tYW5kcyBhbmQgVmFyaWFibGVzPC90ZD48L3RyPjwvdGFibGU+PC9kaXY+PC9ib2R5PjwvaHRtbD4K