PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IURPQ1RZUEUgaHRtbAogICAgIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iCiAgICAgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgeG1sOmxhbmc9ImVuIiBsYW5nPSJlbiI+CjxoZWFkPgoJPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9aXNvLTg4NTktMSIgLz4KCjwhLS0gCk9TQURMIC0gVGhlIE9wZW4gU291cmNlIEF1dG9tYXRpb24gRGV2ZWxvcG1lbnQgTGFiCgoJVGhpcyB3ZWJzaXRlIGlzIHBvd2VyZWQgYnkgVFlQTzMgLSBpbnNwaXJpbmcgcGVvcGxlIHRvIHNoYXJlIQoJVFlQTzMgaXMgYSBmcmVlIG9wZW4gc291cmNlIENvbnRlbnQgTWFuYWdlbWVudCBGcmFtZXdvcmsgaW5pdGlhbGx5IGNyZWF0ZWQgYnkgS2FzcGVyIFNrYWFyaG9qIGFuZCBsaWNlbnNlZCB1bmRlciBHTlUvR1BMLgoJVFlQTzMgaXMgY29weXJpZ2h0IDE5OTgtMjAwNiBvZiBLYXNwZXIgU2thYXJob2ouIEV4dGVuc2lvbnMgYXJlIGNvcHlyaWdodCBvZiB0aGVpciByZXNwZWN0aXZlIG93bmVycy4KCUluZm9ybWF0aW9uIGFuZCBjb250cmlidXRpb24gYXQgaHR0cDovL3R5cG8zLmNvbS8gYW5kIGh0dHA6Ly90eXBvMy5vcmcvCi0tPgoKCTxiYXNlIGhyZWY9Imh0dHA6Ly93d3cub3NhZGwub3JnLyIgLz4KCTxsaW5rIHJlbD0iU0hPUlRDVVQgSUNPTiIgaHJlZj0iZmlsZWFkbWluL2Zhdmljb24uaWNvIiAvPgoJPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0idHlwbzN0ZW1wL3N0eWxlc2hlZXRfZGU5NmYwNWNlNy5jc3MiIC8+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9ImZpbGVhZG1pbi9zY3JpcHRzL2Nvb2tpZXMuanMiPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9ImZpbGVhZG1pbi9zY3JpcHRzL2VmYV9mb250c2l6ZS5qcyI+PC9zY3JpcHQ+Cgo8bGluayBocmVmPSJmaWxlYWRtaW4vdGVtcGxhdGUvLi4vY3NzL2xheW91dF8zY29sX2ZpeGVkLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgLz4KPCEtLVtpZiBsdGUgSUUgN10+CjxsaW5rIGhyZWY9ImZpbGVhZG1pbi90ZW1wbGF0ZS8uLi9jc3MvZXhwbG9yZXIvaWVoYWNrc18zY29sX2ZpeGVkLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgLz4KPCFbZW5kaWZdLS0+CiAKCQkJCTxsaW5rIHJlbD0iYWx0ZXJuYXRlIiB0eXBlPSJhcHBsaWNhdGlvbi9yc3MreG1sIiB0aXRsZT0iUlNTIGZlZWQ6IE9TQURMIE5ld3MiIGhyZWY9Imh0dHA6Ly93d3cub3NhZGwub3JnLyIgLz4gCgkJCQk8bGluayByZWw9ImFsdGVybmF0ZSIgdHlwZT0iYXBwbGljYXRpb24vcnNzK3htbCIgdGl0bGU9IlJTUyBmZWVkOiBPU0FETCBMYXN0IENoYW5nZXMiIGhyZWY9Imh0dHA6Ly93d3cub3NhZGwub3JnLyIgLz48bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iT1NBREwgcHJvbW90ZXMgYW5kIHN1cHBvcnRzIHRoZSB1c2Ugb2YgT3BlbiBTb3VyY2Ugc29mdHdhcmUgaW4gdGhlIGF1dG9tYXRpb24gYW5kIG1hY2hpbmUgaW5kdXN0cnkuIiAvPgo8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0iUmVhbHRpbWUsTGludXgsUmVhbC10aW1lLFJlYWx0aW1lIExpbnV4LFJlYWwtdGltZSBMaW51eCxPcGVuIFNvdXJjZSxTb2Z0d2FyZSxPU1MsRk9TUyxLZXJuZWwsQXV0b21hdGlvbixDb29wZXJhdGl2ZSxNZW1iZXIsTWVtYmVyc2hpcCxBY2FkZW1pYyBNZW1iZXIsUHVyY2hhc2UgQ29tbXVuaXR5IiAvPgo8bWV0YSBuYW1lPSJyb2JvdHMiIGNvbnRlbnQ9ImluZGV4LGZvbGxvdyIgLz4KPG1ldGEgbmFtZT0iY29weXJpZ2h0IiBjb250ZW50PSJPcGVuIFNvdXJjZSBBdXRvbWF0aW9uIERldmVsb3BtZW50IExhYiwgKGMpMjAwNy0yMDA5LiBBbGwgcmlnaHRzIHJlc2VydmVkLiIgLz4KPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC1sYW5ndWFnZSIgY29udGVudD0iZW4iIC8+CjxsaW5rIHJldj0ibWFkZSIgaHJlZj0ibWFpbHRvOmluZm8gYXQgb3NhZGwub3JnIiAvPgo8bWV0YSBodHRwLWVxdWl2PSJyZXBseS10byIgY29udGVudD0iaW5mbyBhdCBvc2FkbC5vcmciIC8+CjxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iT3BlbiBTb3VyY2UgQXV0b21hdGlvbiBEZXZlbG9wbWVudCBMYWIgY29udHJpYnV0b3JzIiAvPgo8bWV0YSBuYW1lPSJyZXZpc2l0LWFmdGVyIiBjb250ZW50PSIxIGRheXMiIC8+CjxtZXRhIG5hbWU9IkRDLkRlc2NyaXB0aW9uIiBjb250ZW50PSJPU0FETCBwcm9tb3RlcyBhbmQgc3VwcG9ydHMgdGhlIHVzZSBvZiBPcGVuIFNvdXJjZSBzb2Z0d2FyZSBpbiB0aGUgYXV0b21hdGlvbiBhbmQgbWFjaGluZSBpbmR1c3RyeS4iIC8+CjxtZXRhIG5hbWU9IkRDLlN1YmplY3QiIGNvbnRlbnQ9IlJlYWx0aW1lLExpbnV4LFJlYWwtdGltZSxSZWFsdGltZSBMaW51eCxSZWFsLXRpbWUgTGludXgsT3BlbiBTb3VyY2UsU29mdHdhcmUsT1NTLEZPU1MsS2VybmVsLEF1dG9tYXRpb24sQ29vcGVyYXRpdmUsTWVtYmVyLE1lbWJlcnNoaXAsQWNhZGVtaWMgTWVtYmVyLFB1cmNoYXNlIENvbW11bml0eSIgLz4KPG1ldGEgbmFtZT0iREMuUmlnaHRzIiBjb250ZW50PSJPcGVuIFNvdXJjZSBBdXRvbWF0aW9uIERldmVsb3BtZW50IExhYiwgKGMpMjAwNy0yMDA5LiBBbGwgcmlnaHRzIHJlc2VydmVkLiIgLz4KPG1ldGEgbmFtZT0iREMuTGFuZ3VhZ2UiIHNjaGVtZT0iTklTT1ozOS41MCIgY29udGVudD0iZW4iIC8+CjxtZXRhIG5hbWU9IkRDLkNyZWF0b3IiIGNvbnRlbnQ9Ik9wZW4gU291cmNlIEF1dG9tYXRpb24gRGV2ZWxvcG1lbnQgTGFiIGNvbnRyaWJ1dG9ycyIgLz4KPGxpbmsgcmVsPSJzY2hlbWEuZGMiIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9tZXRhZGF0YS9kdWJsaW5fY29yZV9lbGVtZW50cyIgLz4KCgk8dGl0bGU+WW91IGNhbiB0dW5lIGEgcGlhbm8gLSBhbmQgeW91IGNhbiB0dW5hIExpbnV4IHN5c3RlbSwgdG9vITogT1NBREwgLSBPcGVuIFNvdXJjZSBBdXRvbWF0aW9uIERldmVsb3BtZW50IExhYiBlRzwvdGl0bGU+Cgk8bWV0YSBuYW1lPSJnZW5lcmF0b3IiIGNvbnRlbnQ9IlRZUE8zIDQuMSBDTVMiIC8+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJ0eXBvM3RlbXAvamF2YXNjcmlwdF9mNTJkMWEwOTRmLmpzIj48L3NjcmlwdD4KCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCS8qPCFbQ0RBVEFbKi8KPCEtLQoJZnVuY3Rpb24gb3BlblBpYyh1cmwsd2luTmFtZSx3aW5QYXJhbXMpCXsJLy8KCQl2YXIgdGhlV2luZG93ID0gd2luZG93Lm9wZW4odXJsLHdpbk5hbWUsd2luUGFyYW1zKTsKCQlpZiAodGhlV2luZG93KQl7dGhlV2luZG93LmZvY3VzKCk7fQoJfQoKLy8gLS0+CgkvKl1dPiovCjwvc2NyaXB0PgoKCjwvaGVhZD4KPGJvZHk+Cgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+aWYgKGVmYV9mb250U2l6ZSkgZWZhX2ZvbnRTaXplLmVmYUluaXQoKTs8L3NjcmlwdD4KPGRpdiBpZD0icGFnZV9tYXJnaW5zIj48IS0tIyMjcGFnZV9tYXJnaW5zIyMjIGJlZ2luIC0tPgo8ZGl2IGlkPSJwYWdlIiBjbGFzcz0iaG9sZF9mbG9hdHMiPjwhLS0jIyNwYWdlIyMjIGJlZ2luIC0tPgoKCTx0YWJsZSBjbGFzcz0idG9wdGFibGUiIGlkPSJ0b3B0YWJsZSI+CgkJPHRyPgoJCQk8dGQgY2xhc3M9InRvcGxlZnQiIGlkPSJ0b3BsZWZ0Ij48aW1nIHNyYz0iZmlsZWFkbWluL2RhbS9sb2dvcy9vc2FkbF9sb2dvLnBuZyIgd2lkdGg9IjE2MCIgaGVpZ2h0PSI3MCIgYm9yZGVyPSIwIiBhbHQ9IiIgdGl0bGU9IiIgLz48L3RkPgoJCQk8dGQgY2xhc3M9InRvcGNlbnRlciIgaWQ9InRvcGNlbnRlciI+T3BlbiBTb3VyY2UgQXV0b21hdGlvbiBEZXZlbG9wbWVudCBMYWI8L3RkPgoJCTwvdHI+Cgk8L3RhYmxlPgoKICAgICAgCiAgICAgIDxkaXYgaWQ9ImNvbDFfY29udGVudCIgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4KICAgIDwhLS0jIyNjb2wxIyMjIGVuZCAtLT48L2Rpdj4KPCEtLSAjY29sMTogLSBFbmRlIC0tPgoKPCEtLSAjY29sMjogendlaXRlIEZsYW90LVNwYWx0ZSBkZXMgSW5oYWx0c2JlcmVpY2hlcyAtLT4KICAgIDxkaXYgaWQ9ImNvbDIiPjwhLS0jIyNjb2wyIyMjIGJlZ2luIC0tPgogICAgCTwhLS1UWVBPM1NFQVJDSF9iZWdpbi0tPgogICAgICA8ZGl2IGlkPSJjb2wyX2NvbnRlbnQiIGNsYXNzPSJjbGVhcmZpeCI+PC9kaXY+Cgk8aHIgY2xhc3M9ImhpZGUiIC8+CgkKICAgICAgPCEtLVRZUE8zU0VBUkNIX2VuZC0tPgogICAgPCEtLSMjI2NvbDIjIyMgZW5kIC0tPjwvZGl2Pgo8IS0tICNjb2wyOiAtIEVuZGUgLS0+Cgo8YSBpZD0iY29udGVudCIgbmFtZT0iY29udGVudCI+PC9hPiA8IS0tIFNraXBsaW5rLUFua2VyOiBDb250ZW50IC0tPgo8IS0tICNjb2wzOiBTdGF0aXNjaGUgU3BhbHRlIGRlcyBJbmhhbHRzYmVyZWljaGVzIC0tPgogICAgPGRpdiBpZD0iY29sMyI+PCEtLSMjI2NvbDMjIyMgYmVnaW4gLS0+CiAgICAJPCEtLVRZUE8zU0VBUkNIX2JlZ2luLS0+CiAgICAgIDxkaXYgaWQ9ImNvbDNfY29udGVudCIgY2xhc3M9ImNsZWFyZml4Ij48IS0tIyMjY29sM19jb250ZW50IyMjIGJlZ2luIC0tPgoJCQkJCQkJCQkJCiAgICAgIAk8ZGl2IGlkPSJjb2wzX2lubmVuIiBjbGFzcz0iZmxvYXRib3giPjxhIGlkPSJjNTA4Ij48L2E+Cgo8ZGl2IGNsYXNzPSJuZXdzLXNpbmdsZS1pdGVtIj4KCgk8ZGl2IGNsYXNzPSJuZXdzLXNpbmdsZS10aW1lZGF0YSI+MjAwOC0wNy0yNyAxMjowMCBBZ2U6IDM1MSBEYXlzIDwvZGl2PgoJCTxoMj5Zb3UgY2FuIHR1bmUgYSBwaWFubyAtIGFuZCB5b3UgY2FuIHR1bmEgTGludXggc3lzdGVtLCB0b28hPC9oMj4KCQkgICAgCgkJPHAgY2xhc3M9Im5ld3Mtc2luZ2xlLWF1dGhvciI+Qnk6IENhcnN0ZW4gRW1kZSAoVXNlZCBieSBwZXJtaXNzaW9uKTwvcD4KCQk8aDM+TmV3IHZlcnNhdGlsZSB0b29scyBhcmUgaGVscGluZyB1cyB0byBtYW5hZ2UgcmVhbC10aW1lIGNoYWxsZW5nZXMgdW5kZXIgTGludXggKGJ1dCB5b3Ugc3RpbGwgY2FuJ3QgdHVuYSBmaXNoKS48L2gzPgoJCTxkaXYgY2xhc3M9Im5ld3Mtc2luZ2xlLWltZyI+PGltZyBzcmM9InVwbG9hZHMvcGljcy9zcGlrZS5naWYiIHdpZHRoPSIxNDQiIGhlaWdodD0iMTA3IiBib3JkZXI9IjAiIGFsdD0iIiB0aXRsZT0iIiAvPjxwIGNsYXNzPSJuZXdzLXNpbmdsZS1pbWdjYXB0aW9uIj5UaGUgIkN5Y2xpY3Rlc3RvU0NPUEUiIGluIGFjdGlvbjwvcD48L2Rpdj4KCQk8cCBjbGFzcz0iYm9keXRleHQiPkRvIHlvdSB3aXNoIHlvdSBoYWQgYSBidWlsdC1pbiBvc2NpbGxvc2NvcGUgdGhhdCBjb250aW51b3VzbHkgZGlzcGxheXMgdGhlIGxhdGVuY3kgb2YgeW91ciBzeXN0ZW0/IEhlcmUgaXMgb25lIC0gdGhhbmtzIHRvIEFybmFsZG8gQ2FydmFsaG8gZGUgTWVsbyB3aG8gbm90IG9ubHkgd3JvdGUgdGhlIDxzdHJvbmc+b3NjaWxsb3Njb3BlPC9zdHJvbmc+IGJ1dCBhbHNvIHRoZSBncmFwaGljYWwgcHJvY2VzcyBpbnNwZWN0aW9uIGFuZCBtb2RpZmljYXRpb24gdG9vbCA8c3Ryb25nPnR1bmE8L3N0cm9uZz4gdGhhdCBpcyBwYXJ0IG9mIHRoZSBzYW1lIHRvb2wgcGFja2FnZS4gSW4gYWRkaXRpb24sIHRoZXNlIHRvb2xzIGFyZSBub3Qgb25seSB2ZXJ5IHZlcnNhdGlsZSB0b29scyB0aGF0IGhlbHAgdXMgdG8gbWFuYWdlIHJlYWwtdGltZSBjaGFsbGVuZ2VzIC0gdGhleSBhbHNvIGFyZSBleGNlbGxlbnQgZXhhbXBsZXMgb2YgdGhlIHBvd2VyIGFuZCB0aGUgYmVhdXR5IG9mIHRoZSBQeXRob24gc2NyaXB0IGxhbmd1YWdlIGFuZCBpdHMgbGlicmFyaWVzLiA8YnIgLz4gDTwvcD4KPHAgY2xhc3M9ImJvZHl0ZXh0Ij5Ib3dldmVyLCBiZWZvcmUgd2UgY2FuIGluc3RhbGwgYW5kIHJ1biB0aGVzZSB0b29scywgd2UgbXVzdCBsZWFybiBhIGxpdHRsZSBiaXQgYWJvdXQgPHN0cm9uZz5jeWNsaWN0ZXN0PC9zdHJvbmc+IGFuZCBpdHMgY29tbWFuZCBsaW5lIGFyZ3VtZW50cywgc2luY2UgdGhpcyBpcyB3aGVyZSBvc2NpbGxvc2NvcGUgZ2V0cyBpdHMgZGF0YSBmcm9tLg08L3A+CjxoNT5DeWNsaWN0ZXN0PGJyIC8+PC9oNT4KPHAgY2xhc3M9ImJvZHl0ZXh0Ij5DeWNsaWN0ZXN0IHdhcyBpbml0aWFsbHkgd3JpdHRlbiBieSBUaG9tYXMgR2xlaXhuZXIgYXMgYW4gaW4taG91c2UgdG9vbCB0byBpbnZlc3RpZ2F0ZSBwb3NzaWJsZSByZWdyZXNzaW9ucyB3aGlsZSBkZXZlbG9waW5nIHRoZSBSVCBQcmVlbXB0IHBhdGNoZXMuIFRvZGF5LCBpdCBpcyB0aGUgc3RhdGUtb2YtdGhlLWFydCBtZWFzdXJlbWVudCB0b29sIHRvIGRldGVybWluZSB0aGUgaW50ZXJuYWwgd29yc3QtY2FzZSBsYXRlbmN5IG9mIGEgTGludXggcmVhbC10aW1lIHN5c3RlbS4gTm8gbmV3IHZlcnNpb24gb2YgdGhlIFJUIFByZWVtcHQgcGF0Y2hlcyBpcyBldmVyIHJlbGVhc2VkIHdpdGhvdXQgaGF2aW5nIHJ1biBjeWNsaWN0ZXN0IHN1Y2Nlc3NmdWxseSBvbiB0aGUgbmV3IGtlcm5lbC4gVGhlIGdpdCB0cmVlIHRoYXQgY29udGFpbnMgdGhlIGN5Y2xpY3Rlc3QgdG9vbCBjYW4gYmUgY2xvbmVkDTwvcD4KPHByZT5LRVJORUxHSVQ9Z2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvcHViL3NjbS9saW51eC9rZXJuZWwvZ2l0PGJyIC8+Z2l0IGNsb25lICRLRVJORUxHSVQvY2xya3dsbG1zL3J0LXRlc3RzLmdpdDwvcHJlPgo8cCBjbGFzcz0iYm9keXRleHQiPmJ1dCB0aGUgc29mdHdhcmUgaXMgYWxzbyBhdmFpbGFibGUgYXMgdGFyYmFsbC4gT24gYW4gUlBNIHBhY2thZ2Ugc3lzdGVtIHN1Y2ggYXMgUmVkaGF0IEVudGVycHJpc2UgTGludXggb3IgRmVkb3JhLCBzaW1wbHkgdHlwZQ08L3A+CjxwcmU+Y2QgcnQtdGVzdHM8YnIgLz5tYWtlIHJlbGVhc2U8YnIgLz5tdiBydC10ZXN0cy0qLnRhci5neiByZWxlYXNlczxiciAvPm1ha2UgcnBtPGJyIC8+cnBtIC1VdmggUlBNUy9pMzg2L3J0LXRlc3RzLTAqLmkzODYucnBtPC9wcmU+CjxwIGNsYXNzPSJib2R5dGV4dCI+dG8gYnVpbGQgYW5kIGluc3RhbGwgaXQuIE1hbmRhdG9yeSBhcmd1bWVudHMgb2YgY3ljbGljdGVzdCBhcmUgPHN0cm9uZz4tbjwvc3Ryb25nPiAodXNlIGNsb2NrX25hbm9zbGVlcCkgYW5kIDxzdHJvbmc+LXA5OTwvc3Ryb25nPiAoUlQgcHJpb3JpdHkpIG9uIGEgdW5pcHJvY2Vzc29yIGFuZCBhZGRpdGlvbmFsIDxzdHJvbmc+LWEgLXQ8L3N0cm9uZz4gKG9uZSB0aHJlYWQgcGVyIENQVSBlYWNoIG9uIGl0cyBvd24gcHJvY2Vzc29yKSBvbiBhIG11bHRpLXByb2Nlc3NvciBzeXN0ZW0uIElmIGluIGRvdWJ0LCB0aGUgPHN0cm9uZz4tbTwvc3Ryb25nPiBvcHRpb24gbWF5IGJlIHVzZWQgdG8gcHJldmVudCB0aGUgY3ljbGljdGVzdCBtZW1vcnkgZnJvbSBiZWluZyBwYWdlZCB0byB0aGUgc3dhcCBhcmVhLiBJbiBvcmRlciB0byBydW4gYXMgbWFueSBjb25zZWN1dGl2ZSB0aHJlYWRzIGFzIHBvc3NpYmxlIGFuZCB0byBhY2hpZXZlIHRoZSBoaWdoZXN0IHByb2JhYmlsaXR5IHRvIG1lZXQgYSBsYXRlbmN5LCB0aGUgdGhyZWFkIGludGVydmFsICg8c3Ryb25nPi1pPC9zdHJvbmc+IG9wdGlvbikgc2hvdWxkIGJlIGFib3V0IHR3aWNlIGFzIGxvbmcgYXMgdGhlIGV4cGVjdGVkIHdvcnN0LWNhc2UgbGF0ZW5jeSwgYW5kIHRoZSB0aHJlYWQgZGVsYXkgKDxzdHJvbmc+LWQ8L3N0cm9uZz4gb3B0aW9uKSBzaG91bGQgYmUgc2V0IHRvIHRoZSBpbnRlcnZhbCBkaXZpZGVkIGJ5IHRoZSBudW1iZXIgb2YgQ1BVcy4gSGVyZSBpcyBhbiBleGFtcGxlIG9mIGEgY3ljbGljdGVzdCBydW4gb24gYSBDb3JlIDIgRHVvLCA2NC1iaXQsIDIuNC1HSHogYm9hcmQ6PGJyIC8+DTwvcD4KPHByZT4jIGN5Y2xpY3Rlc3QgLWEgLXQgLW4gLXA5OSAtaTEwMCAtZDUwPGJyIC8+NTYwLjQ0IDU4Ni4xMSA2MDYuMTIgMjExLzExNjAgMzcyNzxiciAvPlQ6IDAgKDE4NjE3KSBQOjk5IEk6MTAwIEM6MTAxMTg0NjExMSBNaW46Jm5ic3A7IDIgQWN0OiZuYnNwOyA0IEF2ZzombmJzcDsgNSBNYXg6IDM5PGJyIC8+VDogMSAoMTg2MTgpIFA6OTggSToxNTAgQzogNzA4NjQxMDE5IE1pbjombmJzcDsgMiBBY3Q6Jm5ic3A7IDUgQXZnOiAxMSBNYXg6IDU3PC9wcmU+CjxwIGNsYXNzPSJib2R5dGV4dCI+VGhlIHRlc3Qgd2FzIHJ1bm5pbmcgb24gYSBsaW51eC0yLjYuMjQuNy1ydDE1IGtlcm5lbCBpbiBwYXJhbGxlbCB3aXRoIHJlcGVhdGVkIGxvb3BzIG9mICZxdW90O2hhY2tiZW5jaCAyNSZxdW90OywmcXVvdDtscyAtUmFsIC8mcXVvdDssIGFuZCBmbG9vZCBwaW5nIGZyb20gb3V0c2lkZS4gQWZ0ZXIgaGF2aW5nIGV4ZWN1dGVkIG1vcmUgdGhhbiBvbmUgYmlsbGlvbiBjeWNsaWN0ZXN0IGxvb3BzLCB0aGUgaW50ZXJuYWwgd29yc3QtY2FzZSBsYXRlbmN5IGlzIHN0aWxsIG9ubHkgMzkgtXMhPGJyIC8+DTwvcD4KPGg1PlR1bmE8YnIgLz48L2g1Pgo8cCBjbGFzcz0iYm9keXRleHQiPlRoZSB0dW5hIHRvb2wgaXMgZG93bmxvYWRlZCBmcm9tIHRoZSBnaXQgcmVwb3NpdG9yeSBhbmQgaW5zdGFsbGVkIHVzaW5nIHRoZSBjb21tYW5kIHNlcXVlbmNlICg8c3Ryb25nPnVwZGF0ZWQ8L3N0cm9uZz4gb24gRmVicnVhcnkgMiwgMjAwOSk6DTwvcD4KPHByZT5LRVJORUxHSVQ9Z2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvcHViL3NjbS9saW51eC9rZXJuZWwvZ2l0PGJyIC8+Z2l0IGNsb25lICRLRVJORUxHSVQvYWNtZS9weXRob24tbGludXgtcHJvY2ZzLmdpdDxiciAvPmNkIHB5dGhvbi1saW51eC1wcm9jZnMgPGJyIC8+bWFrZSBycG08YnIgLz5ycG0gLVV2aCBycG0vUlBNUy9ub2FyY2gvcHl0aG9uLWxpbnV4LXByb2Nmcy0qLm5vYXJjaC5ycG08YnIgLz5jZCAtPGJyIC8+PC9wcmU+CjxwcmU+Z2l0IGNsb25lICRLRVJORUxHSVQvYWNtZS90dW5hLmdpdDxiciAvPmNkIHR1bmE8YnIgLz5tYWtlIHJwbTxiciAvPnJwbSAtVXZoIHJwbS9SUE1TL25vYXJjaC90dW5hLSoubm9hcmNoLnJwbSBcPGJyIC8+ICAgICAgICAgcnBtL1JQTVMvbm9hcmNoL29zY2lsbG9zY29wZS0qLm5vYXJjaC5ycG08L3ByZT4KPHAgY2xhc3M9ImJvZHl0ZXh0Ij5TdGFydCB0dW5hIHNpbXBseSBieSBydW5uaW5nIGl0IGluIGFuIFggV2luZG93IGVudmlyb25tZW50LiBOb3csIHdoYXQgY2FuIHlvdSBnZXQgZnJvbSB0dW5hPyA8aW1nIHNyYz0iaHR0cDovL3d3dy5vc2FkbC5vcmcvZmlsZWFkbWluL25ld3NhdHRhY2htZW50cy90dW5hLmdpZiIgYWx0PSJTZWUgdHVuYSBpbiBhY3Rpb24iIHRpdGxlPSJTZWUgdHVuYSBpbiBhY3Rpb24iIHN0eWxlPSJwYWRkaW5nOiAxMnB4OyB3aWR0aDogMzAwcHg7IGhlaWdodDogOTlweDsgZmxvYXQ6IGxlZnQ7IiAvPjwvYT5GaXJzdCwgdGhlIG91dHB1dCBpcyB2ZXJ5IHNpbWlsYXIgdG8gdGhlIG91dHB1dCBvZiB0aGUgd2VsbC1rbm93biBjb21tYW5kIGxpbmUgdG9vbCA8c3Ryb25nPnRvcDwvc3Ryb25nPi4gSW4gYWRkaXRpb24sIHR1bmEgaGFzIGEgbXVjaCBlYXNpZXIgaW50ZXJmYWNlIHRvIGFycmFuZ2UgdGhlIGRpc3BsYXksIHRvIHNob3cgdGhyZWFkcyBldGMuIC0gPGltZyBzdHlsZT0icGFkZGluZzogMTJweDsgd2lkdGg6IDEyOHB4OyBoZWlnaHQ6IDk1cHg7IGZsb2F0OiByaWdodDsiIHNyYz0iaHR0cDovL3d3dy5vc2FkbC5vcmcvZmlsZWFkbWluL25ld3NhdHRhY2htZW50cy90dW5hLWNwdS1vcHRpb25zLmdpZiIgYWx0PSJ0dW5hJ3MgQ1Ugb3B0aW9ucyIgdGl0bGU9InR1bmEncyBDVSBvcHRpb25zIiAvPjwvYT5idXQgbW9zdCBpbXBvcnRhbnRseSwgaXQgbGV0cyB5b3UgbW9kaWZ5IG1hbnkgcHJvY2VzcyBzZXR0aW5ncyBzdWNoIGFzIHRoZSBzY2hlZHVsaW5nIHByaW9yaXR5IGFuZCBwb2xpY3kgKGNsaWNrIG9uIHRoZSByaWdodCBtb3VzZSBidXR0b24gd2hpbGUgdGhlIGN1cnNvciBpcyBhYm92ZSBvbmUgb2YgdGhlIHByb2Nlc3MgbGluZXMpLiBJdCBhbHNvIGhhcyBhIHNwZWNpYWwgbWVudSAoY2xpY2sgb24gdGhlIHJpZ2h0IG1vdXNlIGJ1dHRvbiB3aGlsZSB0aGUgY3Vyc29yIGlzIGFib3ZlIHRoZSBDUFUgVXNhZ2UgZnJhbWUpIHRvIGluY2x1ZGUgb3IgaXNvbGF0ZSB0aGUgYXZhaWxhYmxlIHByb2Nlc3NvcnMuPGJyIC8+DTwvcD4KPGg1Pk9zY2lsbG9zY29wZTxiciAvPjwvaDU+CjxwIGNsYXNzPSJib2R5dGV4dCI+RmluYWxseSwgaGVyZSBjb21lcyB0aGUgb3NjaWxsb3Njb3BlIHRvb2wuIEl0IHVzZXMgY3ljbGljdGVzdCdzIHNwZWNpYWwgPHN0cm9uZz4tdjwvc3Ryb25nPiBvcHRpb24gdGhhdCBjYXVzZXMgdGhlIGRhdGEgdG8gYmUgY29udGludW91c2x5IHdyaXR0ZW4gdG8gc3RhbmRhcmQgb3V0cHV0IHBhdGggc28gdGhleSBjYW4gYmUgZXZhbHVhdGVkIGJ5IGFub3RoZXIgcHJvZ3JhbSBjb25uZWN0ZWQgdmlhIHBpcGUuIEluIHRoaXMgY2FzZSwgd2UgY2FuIG9ubHkgcnVuIGEgc2luZ2xlIHRocmVhZCBhbmQsIHVuZm9ydHVuYXRlbHksIHdlIGNhbm5vdCB1c2UgdGhlIDxzdHJvbmc+LWk8L3N0cm9uZz4gb3B0aW9uIGV4cGxhaW5lZCBhYm92ZSwgc2luY2UgdGhlIG9zY2lsbG9zY29wZSBoYXMgb25seSBhIGxpbWl0ZWQgY2FwYWNpdHkgKHdpbGwgYmUgY292ZXJlZCBsYXRlcikuIFRvIGdldCBhIGZpcnN0IGltcHJlc3Npb24sIHJ1biBvc2NpbGxvc2NvcGUgd2l0aCB0aGUgZm9sbG93aW5nIGNvbW1hbmQ6DTwvcD4KPHByZT5jeWNsaWN0ZXN0IC10MSAtbiAtcDk5IC12IHwgb3NjaWxsb3Njb3BlICZndDsvZGV2L251bGw8YnIgLz48L3ByZT4KPHAgY2xhc3M9ImJvZHl0ZXh0Ij5Db29sLCBpc24ndCBpdD8gWW91IG1heSBldmVuIGluY3JlYXNlIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBvbiBzY3JlZW4gdXNpbmcgdGhlIDxzdHJvbmc+LXM8L3N0cm9uZz4gb3B0aW9uIHN1Y2ggYXMNPC9wPgo8cHJlPmN5Y2xpY3Rlc3QgLXQxIC1uIC1wOTkgLXYgfCBvc2NpbGxvc2NvcGUgLXMxMDAwICZndDsvZGV2L251bGw8L3ByZT4KPHAgY2xhc3M9ImJvZHl0ZXh0Ij48aW1nIHNyYz0iaHR0cDovL3d3dy5vc2FkbC5vcmcvZmlsZWFkbWluL25ld3NhdHRhY2htZW50cy9vc2NpbGxvc2NvcGUuZ2lmIiBhbHQ9IlRoZSBHVUkgb2YgdGhlIG9zY2lsbG9zY29wZSIgdGl0bGU9IlRoZSBHVUkgb2YgdGhlIG9zY2lsbG9zY29wZSIgc3R5bGU9InBhZGRpbmc6IDEycHg7IHdpZHRoOiAzMDBweDsgaGVpZ2h0OiAxODZweDsgZmxvYXQ6IGxlZnQ7IiAvPlVuZm9ydHVuYXRlbHksIHRoaXMgd2lsbCBub3QgY2FwdHVyZSBldmVyeSBwb3NzaWJsZSBsYXRlbmN5LCBzaW5jZSB0aGUgY3ljbGljdGVzdCB0aHJlYWQgb25seSBydW5zIG9uY2UgcGVyIG1pbGxpc2Vjb25kLiBJZiB3ZSBydW4gaXQgZmFzdGVyLCBmb3IgZXhhbXBsZSBieSBzcGVjaWZ5aW5nIDxzdHJvbmc+LWkxMDA8L3N0cm9uZz4sIG91ciBvc2NpbGxvc2NvcGUgd2lsbCBiZSB1bmFibGUgdG8gZm9sbG93LiBXZSBoYXZlLCB0aGVyZWZvcmUsIGltcGxlbWVudGVkIGN5Y2xpY3Rlc3QncyA8c3Ryb25nPi1vPC9zdHJvbmc+IG9wdGlvbiAob3NjaWxsb3Njb3BlIG1vZGUpLiBUaGlzIG9wdGlvbiBsZXRzIGN5Y2xpY3Rlc3QgcmVkdWNlIHRoZSBvdXRwdXQgYnkgdGhlIGdpdmVuIGZhY3RvciBhbmQgd3JpdGUgb25seSB0aGUgbWF4aW11bSB2YWx1ZSB0aGF0IG9jY3VycmVkIGR1cmluZyB0aGUgc3BlY2lmaWVkIHBlcmlvZCBvZiB0aW1lLiBUaGUgY29tbWFuZA08L3A+CjxwcmU+Y3ljbGljdGVzdCAtdDEgLW4gLXA5OSAtaTEwMCAtbzEwIC12IHwgb3NjaWxsb3Njb3BlIC1zMTAwMCAmZ3Q7L2Rldi9udWxsPC9wcmU+CjxwIGNsYXNzPSJib2R5dGV4dCI+d2lsbCB0aGVuIHByb2JhYmx5IGJlIGFibGUgdG8gcHJvdmlkZSBhIG11Y2ggYmV0dGVyIHBpY3R1cmUgb2YgdGhlIHdvcnN0LWNhc2UgbGF0ZW5jeSBvZiBhIGdpdmVuIHN5c3RlbSAtIGFzIGEgZGlzYWR2YW50YWdlLCBob3dldmVyLCB0aGUgc3RhdGlzdGljcyBnaXZlbiBpbiB0aGUgb3NjaWxsb3Njb3BlIGRpc3BsYXkgYXJlIGluY29ycmVjdDogVGhlIG51bWJlcnMgbm8gbG9uZ2VyIHJlZmxlY3QgdGhlIG9yaWdpbmFsIHJhdyBzYW1wbGVzIGJ1dCBhcmUgYmFzZWQgb24gcHJlcHJvY2Vzc2VkIHJlZHVjZWQgZGF0YS4gSG93ZXZlciwgc2luY2UgdGhpcyBpcyBpbiBhbnkgY2FzZSBhIG1vcmUgcGVzc2ltaXN0aWMgdmlldywgdGhlcmUgaXMgbm8gZGFuZ2VyIHRoYXQgd2UgdW5kZXJlc3RpbWF0ZSB0aGUgd29yc3QtY2FzZSBsYXRlbmN5IG9mIHRoZSBzeXN0ZW0uDTwvcD4KCQk8aHIgY2xhc3M9ImNsZWFyZXIiIC8+CjxwcmU+T25saW5lIEFydGljbGU6IGh0dHA6Ly93d3cub3NhZGwub3JnL1NpbmdsZS1WaWV3LjExMStNNWQ2ZDE1NTMxZjguMC5odG1sPC9wcmU+CgkJCQo8L2Rpdj4JCQo8L2Rpdj4KICAgICAgPCEtLSMjI2NvbDNfY29udGVudCMjIyBlbmQgLS0+PC9kaXY+CiAgICA8IS0tIyMjY29sMyMjIyBlbmQgLS0+PC9kaXY+CjwhLS0gI2NvbDM6IC0gRW5kZSAtLT4KCjwhLS0jIyNtYWluIyMjIGVuZCAtLT48L2Rpdj4KPCEtLSAjbWFpbjogLSBFbmRlIC0tPgoKPCEtLSAjRm9vdGVyOiBCZWdpbm4gRnXfemVpbGUgLS0+CjxkaXYgaWQ9ImZvb3RlciI+PCEtLSMjI2Zvb3RlciMjIyBiZWdpbiAtLT4KCTx0YWJsZSB3aWR0aD0iMTAwJSI+CgkJPHRyPgoJCSAgPHRkIGlkPSJmb290ZXJsZWZ0Ij4mbmJzcDs8L3RkPgoJCSAgPHRkIGlkPSJmb290ZXJjZW50ZXIiPiZuYnNwOzwvdGQ+CgkJICA8dGQgaWQ9ImZvb3RlcnJpZ2h0Ij4mbmJzcDs8L3RkPgoJCTwvdHI+CgkJPHRyPgoJCSAgPHRkIGlkPSJzdWJmb290ZXJsZWZ0Ij4mbmJzcDs8L3RkPgoJCSAgPHRkIGlkPSJsYXN0X21vZGlmaWVkIj5UaGlzIHBhZ2Ugd2FzIGxhc3QgbW9kaWZpZWQgb24gJm5ic3A7MjAwOC0wMS0xMSAtIDE2OjE1PC90ZD4KCQkgIDx0ZCBpZD0ic3ViZm9vdGVycmlnaHQiPiZuYnNwOzwvdGQ+CgkJPC90cj4KCTwvdGFibGU+Cgk8aHIgY2xhc3M9ImhpZGUiIC8+CjwhLS0jIyNmb290ZXIjIyMgZW5kIC0tPjwvZGl2Pgo8IS0tICNGb290ZXI6IEVuZGUgLS0+CjwhLS0jIyNwYWdlIyMjIGVuZCAtLT48L2Rpdj4KPCEtLSMjI3BhZ2VfbWFyZ2lucyMjIyBlbmQgLS0+PC9kaXY+Cgo8L2JvZHk+CjwvaHRtbD4K